Module Mapping Control (MMC)
MC9S12T64Revision 1.1.1
136
Module Mapping Control (MMC)
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
C ALL and Return
from C all
Instructions
CALL and RTC are uninterruptable instructions that automate page
switching in the program expansion window. CALL is similar to a JSR
instruction, but the subroutine that is called can be located anywhere in
the normal 64K byte address space or on any page of program
expansion memory. CALL calculates and stacks a return address,
stacks the current PPAGE value, and writes a new instruction-supplied
value to PPAGE. The PPAGE value controls which of the 64 possible
pages is visible through the 16K byte expansion window in the 64K byte
memory map. Execution then begins at the address of the called
subroutine.
NOTE:
The PPAGE register is not writable in Normal and Emulation modes.
During the execution of a CALL instruction, the CPU:
Writes the old PPAGE value into an internal temporary register
and writes the new instruction-supplied PPAGE value into the
PPAGE register.
Calculates the address of the next instruction after the CALL
instruction (the return address), and pushes this 16-bit value onto
the stack.
Pushes the old PPAGE value onto the stack.
Calculates the effective address of the subroutine, refills the
queue, and begins execution at the new address on the selected
page of the expansion window.
This sequence is uninterruptable; there is no need to inhibit interrupts
during CALL execution. A CALL can be performed from any address in
memory to any other address.
The PPAGE value supplied by the instruction is part of the effective
address. For all addressing mode variations except indexed-indirect
$8000 - $BFFF
$C000 - $FFFF
n/a
0
Table 28 64K Byte Physical Flash/ROM Allocated (Continued)
Address Space
ROMHM
ECS
F
Freescale Semiconductor, Inc.
n
.