We use HCS12 controller in 80-pin package (DG128).
External RAM memory chip is 64 Kb. I set controller to Normal Expanded Wide mode. In IAR compiler to access the external RAM I use pointer to window 0x8000 - 0xBFFF such as:
unsigned char *mem_arr;
mem_arr = (unsigned char *) 0x8000;
Before reading/writing array mem_arr I set PPAGE register to value 0.
Then use mem_arr[ X ] = Y, or Y = mem_arr[X] controller sucessfully perform read/write operation. (We also see ECLK, PORT A, PORT B,
PORTE signals). So I can addressing 16K of my external RAM. I think, setting PPAGE to 1 (or other number less then 0x38) can access to other (next) 16K. But I stay in my previous 16K external memory range.
Changing PPAGE value does'not affect any address signals (PORT A, PORT B), so I see only 0x8000 - 0xBFFF address on my RAM chip's pins. But I want use all address (0x0 - 0xFFFF ) of my 64K RAM chip. I also try to use BDM to access external RAM but there is the same situation :(