I think I figured it out. I/m using the MC9S12A32, which doesn't have a separate data sheet. I'm relying on the data sheet for the MC9A12DJ64, which is subtitled "Covers also MC9S12D64, MC9S12A64, MC9S12D32, MC9S12A32". It says that all of these versions have 4K of RAM. However, I just noticed that the Selector Guide agrees with PE in saying that the A32 and D32 have only 2K of RAM. I've rarely needed even close to 2K of RAM for these applications, so the difference did not show up in my programs.
So, Processor Expert is right, and the data sheet is wrong.
Following up, that data sheet is dated 2004. Now, if you search for MC9S12A32 (here at freescale.com, that is), you end up with the data sheet for the DP512, which doesn't even pretend to cover the A32.
While we're on the subject of memory allocation in PE, you have to assign the start address on the Properties tab, and the start address again, along with the memory size on the Build tab. Why? I understand assigning the start address, and, for split FLASH, enabling/disabling/relocating the second block, but why does the start address have to be entered twice, and why is the size adjustable at all? This is PE v.2.92; I also have 2.99 for the 56F8300E. It does everything on the Build tab, so maybe it's been fixed.
Thanks for your help. I think I have it all under control now.
Gary Olmstead
Toucan Technology
Ventura CA