Instruction Table Key
-
Opcode: A hexidecimal representation of the value that the mnemonic instruction represents.
-
Instruction: The mnemonic syntax of the instruction.
-
Clocks: The number of clock cycles it takes to complete this instruction. The numbers in parenthesis are a breakdown of the total clocks. The number of clocks instructions take follows a general patern. There are several Rabbit instructions that do not adhere to this pattern. Some instructions take more clocks and some have been enhanced to take fewer clocks.
Table 1: Typical Clocks Breakdown
| Each byte of the opcode. |
|
| Each data byte read. |
|
| Write to memory or external IO. |
|
| Write to internal IO. |
|
| Internal operation or computation. |
|
-
Operation: A symbolic representation of the operation performed.
ALTD, I/O and Flags Table Keys
Table 2: ALTD ("A" Column) Symbol Key
|
|
|
|
ALTD selects alternate flags |
|
|
|
|
ALTD selects alternate destination register |
|
|
|
|
ALTD operation is a special case |
Table 3: IOI and IOE ("I" Column) Symbol Key
|
|
|
IOI and IOE affect destination |
|
|
|
IOI and IOE affect source |
Table 4: Flag Register Key
|
|
|
|
|
Sign flag affected |
|
|
|
|
|
Sign flag not affected |
|
|
|
|
|
Zero flag affected |
|
|
|
|
|
Zero flag not affected |
|
|
|
|
|
LV flag contains logical check result |
|
|
|
|
|
LV flag set on arithmetic overflow result |
|
|
|
|
|
LV flag is cleared |
|
|
|
|
|
LV flag is affected |
|
|
|
|
|
Carry flag is affected |
|
|
|
|
|
Carry flag is not affected |
|
|
|
|
|
Carry flag is cleared |
|
|
|
|
|
Carry flag is set |
Document Symbols Key
Table 5: Symbols
|
|
Bit select (000 = bit 0, 001 = bit 1, 010 = bit 2, 011 = bit 3, 100 = bit 4, 101 = bit 5, 110 = bit 6, 111 = bit 7) |
|
|
Condition code select (00 = NZ, 01 = Z, 10 = NC, 11 = C) |
|
|
7-bit (signed) displacement. Expressed in two's complement. |
|
|
word register select-destination (00 = BC, 01 = DE, 10 = HL, 11 = SP) |
|
|
word register select-alternate(00 = BC', 01 = DE', 10 = HL') |
|
|
8-bit (signed) displacement added to PC |
|
|
condition code select (000 = NZ, 001 = Z, 010 = NC, 011 = C, 100 = LZ/NV, 101 = LO/V, 110 = P, 111 = M) |
|
|
the most significant bits(MSB) of a 16-bit constant |
|
|
16-bit constant |
|
|
8-bit constant or the least significant bits(LSB) of a 16-bit constant |
|
|
byte register select (000 = B, 001 = C, 010 = D, 011 = E, 100 = H, 101 = L, 111 = A) |
|
|
word register select-source ( 00 = BC, 01 = DE, 10 = HL, 11 = SP) |
|
|
Restart address select ( 010 = 0020h, 011 = 0030h, 100 = 0040h, 101 = 0050h, 111 = 0070h) |
|
|
an 8-bit constant to load into the XPC |
|
|
word register select ( 00 = BC, 01 = DE, 10 = IX, 11 = SP) |
|
|
word register select (00 = BC, 01 = DE, 10 = IY, 11 = SP) |
|
|
word register select (00 = BC, 01 = DE, 10 = HL, 11 = AF) |
Condition Codes
Table 6: Condition Code Description
|
|
Not Zero |
|
|
Zero |
|
|
No Carry (C=0) |
|
|
Carry (C=1) |
|
|
Positive |
|
|
Minus |
|
|
For logic operations, Logic Zero (all of the four most significant bits of the result are zero) |
|
|
For arithmentic operations, No Overflow |
|
|
For logic operations, Logic One (one or more of the four most significant bits of the result are one) |
|
|
For arithmentic operations, Overflow |