36
Rabbit 2000/3000 Microprocessor
Description
These instructions are implemented for the Rabbit and are not available for the Z180.
•
IOI:
The IOI prefix allows the use of existing memory access instructions as internal I/O
instructions. When prefixed, a 16-bit memory instruction accesses the I/O space at the address
specified by the lower byte of the 16-bit address. With IOI, the upper byte of a 16-bit address is
ignored since internal I/O peripherals are mapped within the first 256-bytes of the I/O address
space. Writes to internal I/O registers require two clocks rather than the three required for mem-
ory write operations.
•
IOE:
The IOE prefix allows the use of existing memory access instructions as external I/O
instructions. Unlike internal I/O peripherals, external I/O devices can be mapped within 8K of
the available 64K address space. Therefore, prefixed 16-bit memory access instructions can be
used more appropriately for external I/O operations. By default, writes are inhibited for external
I/O operations and fifteen wait states are added for I/O accesses.
WARNING: If an I/O prefixed instruction is immediately followed by one of these 12 special one byte
memory access instructions, a bug in the Rabbit 2000 causes I/O access to occur instead of memory access:
This bug can be avoided by putting a
NOP
instruction between an I/O instruction and any of the aforemen-
tioned instructions. Dynamic C versions 6.57 and later will automatically compensate for the bug. And the
Rabbit 3000 eliminated it.
Examples
The following instruction loads the contents of the Accumulator into the internal I/O register at address loca-
tion 030h:
IOI
LD (030h), A
These next instructions read a word from external I/O address 0A002:
LD
IX, 0A000h
IOE
LD HL, (IX+2)
IOE
IOI
Opcode
Instruction
Clocks
Operation
DD
IOE
2
I /O external prefix
D3
IOI
2
I /O internal prefix
Flags
ALTD
I/O
S
Z
L/V
C
F
R
SP
S
D
-
-
-
-
ADC A,(HL)
ADD A,(HL)
AND (HL)
CP (HL)
OR (HL)
SBC A,(HL)
SUB (HL)
XOR (HL)
DEC (HL)
INC (HL)
LD r,(HL)
LD (HL),r
Summary of Contents for 2000
Page 2: ...ii Rabbit 2000 3000 Microprocessor...
Page 4: ...iv Rabbit 2000 Microprocessor...
Page 16: ...12 Rabbit 2000 3000 Microprocessor...
Page 112: ...108 Rabbit 2000 3000 Microprocessor...
Page 120: ...ii Rabbit 2000 3000 Microprocessor...