EasyManua.ls Logo

Rabbit 2000 - Page 40

Rabbit 2000
120 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
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

Other manuals for Rabbit 2000