Zilog EZ80F916 User Manual
Page 42
![background image](https://www.manualsdir.com/files/771179/content/doc042.png)
eZ80
®
CPU
User Manual
UM007715-0415
Memory Mode Switching
33
Table 20. RETN Instruction
User Code
ADL
Mode
Assembled
Code
Operation
RETN
0
RETN
assembles to
ED 45
The starting program counter is {MBASE,
PC[15:0]}. Pop a 2-byte return address from
{MBASE, SPS} into PC[15:0]. The ADL mode bit
remains cleared to 0. The ending program counter
is {MBASE, PC[15:0]}. IEF1 IEF2.
RETN
1
RETN
assembles to
ED 45
The starting program counter is PC[23:0]. Pop a 3-
byte return address from SPL into PC[23:0]. The
ADL mode bit remains set to 1. The ending
program counter is PC[23:0]. IEF1 IEF2.
RETN.S
0
—
Because RETI.S is an invalid suffix, RETN.L must
be used in all mixed-memory mode applications.
IEF1 IEF2.
RETN.L
0
RETN.LIS
assembles to
49 ED 45
The starting program counter is {MBASE,
PC[15:0]}. Pop a byte from SPL into ADL to set
memory mode (03h = ADL, 02h = Z80).
if ADL mode {
Pop the upper byte of the return address from SPL
into PC[23:16].
Pop 2 LS bytes of the return address from {MBASE,
SPS} into PC[15:0]. The ending program counter is
PC[23:0].
}
else Z80 mode {
Pop a 2-byte return address from {MBASE,SPS}
into PC[15:0]. The ending program counter is
{MBASE, PC[15:0]}. IEF1 IEF2.
}
RETN.L
1
RETN.LIL
assembles to
5B ED 45
The starting program counter is PC[23:0]. Pop a
byte from SPL into ADL to set memory mode
(03h = ADL, 02h = Z80).
if ADL mode {
Pop 3-byte return address from SPL into PC[23:0].
The ending program counter is PC[23:0].
}
else Z80 mode {
Pop a 2-byte return address from SPL into PC[15:0].
The ending program counter is {MBASE,
PC[15:0]}. IEF1 IEF2.
}