<< Previous | Next >>

Chapter 3. Quick Reference Guide

This chapter contains an abbreviated description of each Rabbit instruction. The instruction nmemonics are listed alphabetically, each one linking to its full description. For instructions with identical nmemonics, the first entry is the information for the Rabbit 2000 and Rabbit 3000 instruction; the second entry is the Rabbit 4000 instruction.

Key

Instruction

Opcode byte 1

Opcode byte 2

Opcode byte 3

Opcode byte 4

Opcode byte 5

Opcode byte 6

Clock cycles

AD

IO

S

Z

PV

C

Operation

ADC A,(HL)
8E
5 (2,1,2)
fr
s
*
*
V
*
A = A + (HL) + CF
ADC A,(HL)
7F
8E
7 (2,2,1,2)
fr
s
*
*
V
*
A = A + (HL) + CF
ADC A,(IX+d)
DD
8E
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IX+d) + CF
ADC A,(IY+d)
FD
8E
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IY+d) + CF
ADC A,n
CE
----n---
4 (2,2)
fr
*
*
V
*
A = A + n + CF
ADC A,r
10001-r-
2
fr
*
*
V
*
A = A + r + CF
ADC A,r
7F
10001-r-
4 (2,2)
fr
*
*
V
*
A = A + r + CF
ADC HL,ss
ED
01ss1010
4 (2,2)
fr
*
*
V
*
HL = HL + ss + CF
ADD A,(HL)
86
5 (2,1,2)
fr
s
*
*
V
*
A = A + (HL)
ADD A,(HL)
7F
86
7 (2,2,1,2)
fr
s
*
*
V
*
A = A + (HL)
ADD A,(IX+d)
DD
86
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IX+d)
ADD A,(IY+d)
FD
86
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IY+d)
ADD A,n
C6
----n---
4 (2,2)
fr
*
*
V
*
A = A + n
ADD A,r
10000-r-
2
fr
*
*
V
*
A = A + r
ADD A,r
7F
10000-r-
4 (2,2)
fr
*
*
V
*
A = A + r
ADD HL,ss
00ss1001
2
fr
-
-
-
*
HL = HL + ss
ADD IX,xx
DD
00xx1001
4 (2,2)
-
-
-
*
IX = IX + xx
ADD IY,yy
FD
00yy1001
4 (2,2)
-
-
-
*
IY = IY + yy
ADD SP,d
27
----d---
4 (2,2)
-
-
-
*
SP = SP + d
ADD HL,JK
65
2
fr
-
-
-
*
HL = HL + JK
ADD JKHL,BCDE
ED
C6
4 (2,2)
fr
-
-
-
*
JKHL = JKHL + BCDE
76
2
-
-
-
-
alternate register destination for next instruction
AND (HL)
A6
5 (2,1,2)
fr
s
*
*
P
0
A = A & (HL)
AND (HL)
7F
A6
7 (2,2,1,2)
fr
s
*
*
P
0
A = A & (HL)
AND (IX+d)
DD
A6
----d---
9 (2,2,2,1,2)
fr
s
*
*
P
0
A = A & (IX+d)
AND (IY+d)
FD
A6
----d---
9 (2,2,2,1,2)
fr
s
*
*
P
0
A = A & (IY+d)
AND HL,DE
DC
2
fr
*
*
P
0
HL = HL & DE
AND IX,DE
DD
DC
4 (2,2)
*
*
P
0
IX = IX & DE
AND IY,DE
FD
DC
4 (2,2)
*
*
P
0
IY = IY & DE
AND JKHL,BCDE
ED
E6
4 (2,2)
fr
*
*
P
0
JKHL = JKHL & BCDE
AND n
E6
----n---
4 (2,2)
fr
*
*
P
0
A = A & n
AND r
10100-r-
2
fr
*
*
P
0
A = A & r
AND r
7F
10100-r-
4 (2,2)
fr
*
*
P
0
A = A & r
BIT b,(HL)
CB
01-b-110
7 (2,2,1,2)
fr
s
-
*
-
-
(HL) & bit
BIT b,(IX+d)
DD
CB
----d---
01-b-110
10 (2,2,2,2,2)
s
-
*
-
-
(IX+d) & bit
BIT b,(IY+d)
FD
CB
----d---
01-b-110
10 (2,2,2,2,2)
s
-
*
-
-
(IY+d) & bit
BIT b,r
CB
01-b--r-
4 (2,2)
fr
-
*
-
-
r & bit
BOOL HL
CC
2
fr
*
*
0
0
if (HL != 0) HL = 1
BOOL IX
DD
CC
4 (2,2)
*
*
0
0
if (IX != 0) IX = 1
BOOL IY
FD
CC
4 (2,2)
*
*
0
0
if (IY != 0) IY = 1
CALL mn
CD
----n---
----m---
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL; PC = mn; SP = SP-2
CALL (HL)
ED
EA
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL; PC = HL; SP = SP-2
CALL (IX)
DD
EA
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL; PC = IX; SP = SP-2
CALL (IY)
FD
EA
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL; PC = IY; SP = SP-2
CBM n
ED
00
----n---
15 (2,2,2,1,2,3,3)
d
-
-
-
-
tmp = [(HL) & ~n] | [a & n]; (HL) = tmp; (DE) = tmp (only (DE) affected by IOI or IOE)
3F
2
f
-
-
-
*
CF = ~CF
CLR HL
BF
2
r
-
-
-
-
HL = 0
CONVC pp
ED
00pp1110
8 (2,2,2,2)
-
-
-
-
convert pp to physical code address
CONVD pp
ED
00pp1111
8 (2,2,2,2)
-
-
-
-
convert pp to physical data address
ED
80
7+7i (2,2,2,(2,3,2)i,1)
-
-
*
-
(PY) = (PX); BC = BC-1; PY = PY+1; PX = PX+1; repeat while {BC != 0}
ED
88
7+7i (2,2,2,(2,3,2)i,1)
-
-
*
-
(PY) = (PX); BC = BC-1; PY = PY-1; PX = PX-1; repeat while {BC != 0}
CP (HL)
BE
5 (2,1,2)
f
s
*
*
V
*
A - (HL)
CP (HL)
7F
BE
7 (2,2,1,2)
f
s
*
*
V
*
A - (HL)
CP HL,d
48
----d---
4 (2,2)
f
*
*
V
*
HL - d (d sign-extened to 16 bits)
CP HL,DE
ED
48
4 (2,2)
f
*
*
V
*
HL - DE
CP (IX+d)
DD
BE
----d---
9 (2,2,2,1,2)
f
s
*
*
V
*
A - (IX+d)
CP (IY+d)
FD
BE
----d---
9 (2,2,2,1,2)
f
s
*
*
V
*
A - (IY+d)
CP JKHL,BCDE
ED
58
4 (2,2)
f
*
*
V
*
JKHL - BCDE
CP n
FE
----n---
4 (2,2)
f
*
*
V
*
A - n
CP r
10111-r-
2
f
*
*
V
*
A - r
CP r
7F
10111-r-
4 (2,2)
f
*
*
V
*
A - r
2F
2
r
-
-
-
-
A = ~A
DEC (HL)
35
8 (2,1,2,3)
f
b
*
*
V
*
(HL) = (HL) - 1
DEC (IX+d)
DD
35
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
*
(IX+d) = (IX+d) -1
DEC (IY+d)
FD
35
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
*
(IY+d) = (IY+d) -1
DEC IX
DD
2B
4 (2,2)
-
-
-
-
IX = IX - 1
DEC IY
FD
2B
4 (2,2)
-
-
-
-
IY = IY - 1
DEC r
00-r-101
2
fr
*
*
V
*
r = r - 1
DEC ss
00ss1011
2
r
-
-
-
-
ss = ss - 1
DJNZ label
10
--e-
5 (2,2,1)
r
-
-
-
-
B = B-1; if {B != 0} PC = PC + e
DWJNZ label
ED
10
-e-
7 (2,2,2,1)
r
-
-
-
-
BC = BC-1; if {BC != 0} PC = PC + e
EX AF,AF'
08
2
-
-
-
-
AF <-> AF'
EX BC,HL
B3
2
s
-
-
-
-
if (!ALTD) then BC <-> HL else BC <-> HL'
EX BC',HL
ED
74
4 (2,2)
s
-
-
-
-
if (!ALTD) then BC' <-> HL else BC' <-> HL'
EX DE,HL
EB
2
s
-
-
-
-
if (!ALTD) then DE <-> HL else DE <-> HL'
EX DE',HL
E3
2
s
-
-
-
-
if (!ALTD) then DE' <-> HL else DE' <-> HL'
EX JK,HL
B9
2
-
-
-
-
if (!ALTD) then JK <-> HL else JK <-> HL'
EX JK',HL
ED
7C
4 (2,2)
s
-
-
-
-
if (!ALTD) then JK' <-> HL else JK' <-> HL'
EX JKHL,BCDE
B4
2
-
-
-
-
JKHL <-> BCDE
EX (SP),HL
ED
54
15 (2,2,1,2,2,3,3)
r
-
-
-
-
H <-> (SP+1); L <-> (SP)
EX (SP),IX
DD
E3
15 (2,2,1,2,2,3,3)
-
-
-
-
IXH <-> (SP+1); IXL <-> (SP)
EX (SP),IY
FD
E3
15 (2,2,1,2,2,3,3)
-
-
-
-
IYH <-> (SP+1); IYL <-> (SP)
ED
D9
4 (2,2)
-
-
-
-
PW <-> PW'; PX <-> PX'; PY <-> PY'; PZ <-> PZ'
D9
2
-
-
-
-
BC <-> BC'; DE <-> DE'; HL <-> HL'
FLAG cc,HL
ED
110cc100
4 (2,2)
-
-
-
-
if (cc) then HL = 1 else HL = 0
ED
55
15 (2,2,2,3,3,3)
-
-
-
-
(SP - 1) = PChigh; (SP - 2) = PClow; (SP - 3) = SU; SP = SP - 3; PC = {IIR,011000000}; SU = {SU[5:0],00}
ED
12
4 (2,2)
r
-
-
-
-
A = inverse sbox(A)
5B
2
-
-
-
-
Performs `LD E,E''
But if (EDMR && SU[0]) then
the System Violation interrupt flag is set
INC (HL)
34
8 (2,1,2,3)
f
b
*
*
V
*
(HL) = (HL) + 1
INC (IX+d)
DD
34
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
*
(IX+d) = (IX+d) + 1
INC (IY+d)
FD
34
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
*
(IY+d) = (IY+d) + 1
INC IX
DD
23
4 (2,2)
-
-
-
-
IX = IX + 1
INC IY
FD
23
4 (2,2)
-
-
-
-
IY = IY + 1
INC r
00-r-100
2
fr
*
*
V
*
r = r + 1
INC ss
00ss0011
2
r
-
-
-
-
ss = ss + 1
DB
2
-
-
-
-
I/O external prefix
D3
2
-
-
-
-
I/O internal prefix
ED
46
4 (2,2)
-
-
-
-
IP = {IP[5:0], 00}
ED
56
4 (2,2)
-
-
-
-
IP = {IP[5:0], 01}
ED
4E
4 (2,2)
-
-
-
-
IP = {IP[5:0], 10}
ED
5E
4 (2,2)
-
-
-
-
IP = {IP[5:0], 11}
ED
5D
4 (2,2)
-
-
-
-
IP = {IP[1:0], IP[7:2]}
JP cx,mn
101cx010
----n---
----m---
7 (2,2,2,1)
-
-
-
-
if {cx} PC = mn
JP (HL)
E9
4 (2,2)
-
-
-
-
PC = HL
JP (IX)
DD
E9
6 (2,2,2)
-
-
-
-
PC = IX
JP (IY)
FD
E9
6 (2,2,2)
-
-
-
-
PC = IY
JP f,mn
11-f-010
----n---
----m---
7 (2,2,2,1)
-
-
-
-
if {f} PC = mn
JP mn
C3
----n---
----m---
7 (2,2,2,1)
-
-
-
-
PC = mn
JR cc,label
001cc000
--e-
5 (2,2,1)
-
-
-
-
if {cc} PC = PC + e
JR cx,label
101cx000
-e-
5 (2,2,1)
-
-
-
-
if {cx} PC = PC + e
JR label
18
--e-
5 (2,2,1)
-
-
-
-
PC = PC + e
JRE cc,label
ED
110cc011
-(ee)low-
-(ee)high-
9 (2,2,2,2,1)
-
-
-
-
if {cc} PC = PC + ee
JRE cx,label
ED
101cx011
-(ee)low-
-(ee)high-
9 (2,2,2,2,1)
-
-
-
-
if {cx} PC = PC + ee
JRE label
98
-(ee)low-
-(ee)high-
7 (2,2,2,1)
-
-
-
-
PC = PC + ee
LCALL xpc,mn
CF
----n---
----m---
--xpc---
19 (2,2,2,2,1,3,3,3,1)
-
-
-
-
(SP-1) = XPCl; (SP-2) = PCH; (SP-3) = PCL; XPCl = xpc; XPCh = 0; PC = mn; SP = SP-3
LD A,EIR
ED
57
4 (2,2)
r
*
*
-
-
A = EIR
LD A,IIR
ED
5F
4 (2,2)
r
*
*
-
-
A = IIR
LD A,HTR
ED
50
4 (2,2)
r
-
-
-
-
A = HTR
LD A,r
01111rna
2
r
-
-
-
-
A = r (only for r != A)
LD A,(BC)
0A
6 (2,2,2)
r
s
-
-
-
-
A = (BC)
LD A,(DE)
1A
6 (2,2,2)
r
s
-
-
-
-
A = (DE)
LD A,(IX+A)
DD
06
8 (2,2,2,2)
s
-
-
-
-
A = (IX+A)
LD A,(IY+A)
FD
06
8 (2,2,2,2)
s
-
-
-
-
A = (IY+A)
LD A,(ps+d)
10ps1101
----d---
7 (2,2,1,2)
r
-
-
-
-
A = (ps+d)
LD A,(ps+HL)
10ps1011
6 (2,2,2)
r
-
-
-
-
A = (ps+HL)
LD A,(mn)
3A
----n---
----m---
9 (2,2,2,1,2)
r
s
-
-
-
-
A = (mn)
LD A,XPC
ED
77
4 (2,2)
r
-
-
-
-
A = XPCl
LD BC,HL
91
2
r
-
-
-
-
BC = HL
LD BCDE,(HL)
DD
1A
14 (2,2,2,2,2,2,2)
r
-
-
-
-
E = (HL); D = (HL+1); C = (HL+2); B = (HL+3)
LD BCDE,(IX+d)
DD
CE
----d---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
E = (IX+d); D = (IX+d+1); C = (IX+d+2); B = (IX+d+3)
LD BCDE,(IY+d)
DD
DE
----d---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
E = (IY+d); D = (IY+d+1); C = (IY+d+2); B = (IY+d+3)
LD BCDE,(mn)
93
----n---
----m---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
E = (mn); D = (mn+1); C = (mn+2); B = (mn+3)
LD BCDE,(ps+d)
DD
00ps1110
----d---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
E = (ps+d); D = (ps+d+1); C = (ps+d+2); B = (ps+d+3)
LD BCDE,(ps+HL)
DD
00ps1100
14 (2,2,2,2,2,2,2)
r
-
-
-
-
E = (ps+HL); D = (ps+HL+1); C = (ps+HL+2); B = (ps+HL+3)
LD BCDE,(SP+HL)
DD
FE
14 (2,2,2,2,2,2,2)
r
-
-
-
-
E = (SP+HL); D = (SP+HL+1); C = (SP+HL+2); B = (SP+HL+3)
LD BCDE,(SP+n)
DD
EE
----n---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
E = (SP+n); D = (SP+n+1); C = (SP+n+2); B = (SP+n+3)
LD BCDE,n
A3
----n---
4 (2,2)
r
-
-
-
-
E = n; D = 0; C = 0; B = 0
LD BCDE,ps
DD
11ps1101
4 (2,2)
r
-
-
-
-
E = ps0; D = ps1; C = ps2; B = 00/FF
LD DE,HL
B1
2
r
-
-
-
-
DE = HL
LD HL,(ps+BC)
ED
00ps0110
10 (2,2,2,2,2)
r
-
-
-
-
L = (ps+BC); H = (ps+BC+1)
LD HL,(ps+d)
10ps0101
----d---
9 (2,2,1,2,2)
r
-
-
-
-
L = (ps+d); H = (ps+d+1)
LD HL,(SP+HL)
ED
FE
10 (2,2,2,2,2)
r
-
-
-
-
L = (SP+HL); H = (SP+HL+1)
LD HL,BC
81
2
r
-
-
-
-
HL = BC
LD HL,DE
A1
2
r
-
-
-
-
HL = DE
LD HL,LXPC
9F
2
r
-
-
-
-
HL = LXPC
LD HTR,A
ED
40
4 (2,2)
-
-
-
-
HTR = A
LD JK,(mn)
99
----n---
----m---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
K = (mn); J = (mn+1)
LD JK,mn
A9
----n---
----m---
6 (2,2,2)
r
-
-
-
-
K = n; J = m
LD JKHL,(HL)
FD
1A
14 (2,2,2,2,2,2,2)
r
-
-
-
-
L = (HL); H = (HL+1); K = (HL+2); J = (HL+3)
LD JKHL,(IX+d)
FD
CE
----d---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
L = (IX+d); H = (IX+d+1); K = (IX+d+2); J = (IX+d+3)
LD JKHL,(IY+d)
FD
DE
----d---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
L = (IY+d); H = (IY+d+1); K = (IY+d+2); J = (IY+d+3)
LD JKHL,(mn)
94
----n---
----m---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
L = (mn); H = (mn+1); K = (mn+2); J = (mn+3)
LD JKHL,(ps+d)
FD
00ps1110
----d---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
L = (ps+d); H = (ps+d+1); K = (ps+d+2); J = (ps+d+3)
LD JKHL,(ps+HL)
FD
00ps1100
14 (2,2,2,2,2,2,2)
r
-
-
-
-
L = (ps+HL); H = (ps+HL+1); K = (ps+HL+2); J = (ps+HL+3)
LD JKHL,(SP+HL)
FD
FE
14 (2,2,2,2,2,2,2)
r
-
-
-
-
L = (SP+HL); H = (SP+HL+1); K = (SP+HL+2); J = (SP+HL+3)
LD JKHL,(SP+n)
FD
EE
----n---
15 (2,2,2,1,2,2,2,2)
r
-
-
-
-
L = (SP+n); H = (SP+n+1); K = (SP+n+2); J = (SP+n+3)
LD JKHL,d
A4
----d---
4 (2,2)
r
-
-
-
-
L = d; H = 0; K = 0; J = 0
LD JKHL,ps
FD
11ps1101
4 (2,2)
r
-
-
-
-
L = ps0; H = ps1; K = ps2; J = 00/FF
LD (BC),A
02
7 (2,2,3)
d
-
-
-
-
(BC) = A
LD (DE),A
12
7 (2,2,3)
d
-
-
-
-
(DE) = A
LD (HL),n
36
----n---
7 (2,2,3)
d
-
-
-
-
(HL) = n
LD (HL),r
01110-r-
6 (2,1,3)
d
-
-
-
-
(HL) = r
LD (HL+d),HL
DD
F4
----d---
13 (2,2,2,1,3,3)
d
-
-
-
-
(HL+d) = L; (HL+d+1) = H
LD (IX+d),HL
F4
----d---
11 (2,2,1,3,3)
d
-
-
-
-
(IX+d) = L; (IX+d+1) = H
LD (IX+d),n
DD
36
----d---
----n---
11 (2,2,2,2,3)
d
-
-
-
-
(IX+d) = n
LD (IX+d),r
DD
01110-r-
----d---
10 (2,2,2,1,3)
d
-
-
-
-
(IX+d) = r
LD (IY+d),HL
FD
F4
----d---
13 (2,2,2,1,3,3)
d
-
-
-
-
(IY+d) = L; (IY+d+1) = H
LD (IY+d),n
FD
36
----d---
----n---
11 (2,2,2,2,3)
d
-
-
-
-
(IY+d) = n
LD (IY+d),r
FD
01110-r-
----d---
10 (2,2,2,1,3)
d
-
-
-
-
(Iy+d) = r
LD (mn),A
32
----n---
----m---
10 (2,2,2,1,3)
d
-
-
-
-
(mn) = A
LD (mn),HL
22
----n---
----m---
13 (2,2,2,1,3,3)
d
-
-
-
-
(mn) = L; (mn+1) = H
LD (mn),IX
DD
22
----n---
----m---
15 (2,2,2,2,1,3,3)
d
-
-
-
-
(mn) = IXL; (mn+1) = IXH
LD (mn),IY
FD
22
----n---
----m---
15 (2,2,2,2,1,3,3)
d
-
-
-
-
(mn) = IYL; (mn+1) = IYH
LD (mn),ss
ED
01ss0011
----n---
----m---
15 (2,2,2,2,1,3,3)
d
-
-
-
-
(mn) = ssl; (mn+1) = ssh
LD (HL),BCDE
DD
1B
18 (2,2,2,3,3,3,3)
-
-
-
-
(HL) = E; (HL+1) = D; (HL+2) = C; (HL+3) = B
LD (HL),JKHL
FD
1B
18 (2,2,2,3,3,3,3)
-
-
-
-
(HL) = L; (HL+1) = H; (HL+2) = K; (HL+3) = J
LD (IX+d),BCDE
DD
CF
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(IX+d) = E; (IX+d+1) = D; (IX+d+2) = C; (IX+d+3) = B
LD (IX+d),JKHL
FD
CF
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(IX+d) = L; (IX+d+1) = H; (IX+d+2) = K; (IX+d+3) = J
LD (IY+d),BCDE
DD
DF
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(IY+d) = E; (IY+d+1) = D; (IY+d+2) = C; (IY+d+3) = B
LD (IY+d),JKHL
FD
DF
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(IY+d) = L; (IY+d+1) = H; (IY+d+2) = K; (IY+d+3) = J
LD (mn),BCDE
83
----n---
----m---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(mn) = E; (mn+1) = D; (mn+2) = C; (mn+3) = B
LD (mn),JK
89
----n---
----m---
13 (2,2,2,1,3,3)
d
-
-
-
-
(mn) = K; (mn+1) = J
LD (mn),JKHL
84
----n---
----m---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(mn) = L; (mn+1) = H; (mn+2) = K; (mn+3) = J
LD (pd+BC),HL
ED
00pd0111
12 (2,2,2,3,3)
-
-
-
-
(pd+BC) = L; (pd+BC+1) = H
LD (pd+d),A
10pd1110
----d---
8 (2,2,1,3)
-
-
-
-
(pp+d) = A
LD (pd+d),BCDE
DD
00pd1111
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(pd+d) = E; (pd+d+1) = D; (pd+d+2) = C; (pd+d+3) = B
LD (pd+d),HL
10pd0110
----d---
11 (2,2,1,3,3)
-
-
-
-
(pd+d) = L; (pd+d+1) = H
LD (pd+d),JKHL
FD
00pd1111
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(pd+d) = L; (pd+d+1) = H; (pd+d+2) = K; (pd+d+3) = J
LD (pd+d),ps
6D
pspd1001
----d---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(pd+d) = ps0; (pd+d+1) = ps1; (pd+d+2) = ps2; (pd+d+3) = ps3
LD (pd+d),rr
6D
rrpd0001
----d---
13 (2,2,2,1,3,3)
-
-
-
-
(pd+d) = rrl; (pd+d+1) = rrh
LD (pd+HL),A
10pd1100
7 (2,2,3)
-
-
-
-
(pd+HL) = A
LD (pd+HL),BCDE
DD
00pd1101
18 (2,2,2,3,3,3,3)
-
-
-
-
(pd+HL) = E; (pd+HL+1) = D; (pd+HL+2) = C; (pd+HL+3) = B
LD (pd+HL),JKHL
FD
00pd1101
18 (2,2,2,3,3,3,3)
-
-
-
-
(pd+HL) = L; (pd+HL+1) = H; (pd+HL+2) = K; (pd+HL+3) = J
LD (pd+HL),ps
6D
pspd1011
18 (2,2,2,3,3,3,3)
-
-
-
-
(pd+HL) = ps0; (pd+HL+1) = ps1; (pd+HL+2) = ps2; (pd+HL+3) = ps3
LD (pd+HL),rr
6D
rrpd0011
12 (2,2,2,3,3)
-
-
-
-
(pd+HL) = rrl; (pd+HL+1) = rrh
LD (SP+n),HL
D4
----n---
11 (2,2,1,3,3)
-
-
-
-
(SP+n) = L; (SP+n+1) = H
LD (SP+n),IX
DD
D4
----n---
13 (2,2,2,1,3,3)
-
-
-
-
(SP+n) = IXL; (SP+n+1) = IXH
LD (SP+n),IY
FD
D4
----n---
13 (2,2,2,1,3,3)
-
-
-
-
(SP+n) = IYL; (SP+n+1) = IYH
LD dd,(mn)
ED
01dd1011
----n---
----m---
13 (2,2,2,2,1,2,2)
r
s
-
-
-
-
ddl = (mn); ddh = (mn+1)
LD dd',BC
ED
01dd1001
4 (2,2)
-
-
-
-
dd' = BC (dd': 00-BC', 01-DE', 10-HL')
LD dd',DE
ED
01dd0001
4 (2,2)
-
-
-
-
dd' = DE (dd': 00-BC', 01-DE', 10-HL')
LD dd,mn
00dd0001
----n---
----m---
6 (2,2,2)
r
-
-
-
-
dd = mn
LD HL,(mn)
2A
----n---
----m---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
L = (mn); H = (mn+1)
LD HL,(HL+d)
DD
E4
----d---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
L = (HL+d); H = (HL+d+1)
LD HL,(IX+d)
E4
----d---
9 (2,2,1,2,2)
r
s
-
-
-
-
L = (IX+d); H = (IX+d+1)
LD HL,(IY+d)
FD
E4
----d---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
L = (IY+d); H = (IY+d+1)
LD HL,(SP+n)
C4
----n---
9 (2,2,1,2,2)
r
-
-
-
-
L = (SP+n); H = (SP+n+1)
LD HL,IX
DD
7C
4 (2,2)
r
-
-
-
-
HL = IX
LD HL,IY
FD
7C
4 (2,2)
r
-
-
-
-
HL = IY
LD EIR,A
ED
47
4 (2,2)
-
-
-
-
I = A
LD IX,(mn)
DD
2A
----n---
----m---
13 (2,2,2,2,1,2,2)
s
-
-
-
-
IXL = (mn); IXH = (mn+1)
LD IX,(SP+n)
DD
C4
----n---
11 (2,2,2,1,2,2)
-
-
-
-
IXL = (SP+n); IXH = (SP+n+1)
LD IX,HL
DD
7D
4 (2,2)
-
-
-
-
IX = HL
LD IX,mn
DD
21
----n---
----m---
8 (2,2,2,2)
-
-
-
-
IX = mn
LD IY,(mn)
FD
2A
----n---
----m---
13 (2,2,2,2,1,2,2)
s
-
-
-
-
IYL = (mn); IYH = (mn+1)
LD IY,(SP+n)
FD
C4
----n---
11 (2,2,2,1,2,2)
-
-
-
-
IYL = (SP+n); IYH = (SP+n+1)
LD IY,HL
FD
7D
4 (2,2)
-
-
-
-
IY = HL
LD IY,mn
FD
21
----n---
----m---
8 (2,2,2,2)
-
-
-
-
IY = mn
LD pd,(ps+d)
6D
pdps1000
----d---
15 (2,2,2,1,2,2,2,2)
-
-
-
-
pd0 = (ps+d); pd1 = (ps+d+1); pd2 = (ps+d+2); pd3 = (ps+d+3)
LD pd,(ps+HL)
6D
pdps1010
14 (2,2,2,2,2,2,2)
-
-
-
-
pd0 = (ps+HL); pd1 = (ps+HL+1); pd2 = (ps+HL+2); pd3 = (ps+HL+3)
LD pd,(SP+n)
ED
00pd0100
----n---
15 (2,2,2,1,2,2,2,2)
-
-
-
-
pd0 = (SP+n); pd1 = (SP+n+1); pd2 = (SP+n+2); pd3 = (SP+n+3)
LD pd,(HTR+HL)
ED
00pd0001
14 (2,2,2,2,2,2,2)
-
-
-
-
pd0 = (HTR+HL); pd1 = (HTR+HL+1); pd2 = (HTR+HL+2); pd3 = (HTR+HL+3)
LD pd,BCDE
DD
10pd1101
4 (2,2)
-
-
-
-
pd0 = E; pd1 = D; pd2 = C
LD pd,JKHL
FD
10pd1101
4 (2,2)
-
-
-
-
pd0 - L; pd1 = H; pd2 = K
LD pd,klmn
ED
00pd1100
----n---
----m---
----l---
----k---
12 (2,2,2,2,2,2)
-
-
-
-
pd0 = n; pd1 = m; pd2 = l; pd3 = k
LD pd,ps+d
6D
pdps1100
----d---
6 (2,2,2)
-
-
-
-
pd = ps + d
LD pd,ps+HL
6D
pdps1110
4 (2,2)
-
-
-
-
pd = ps + HL
LD rr,(ps+d)
6D
rrps0000
----d---
11 (2,2,2,1,2,2)
r
-
-
-
-
rrl = (ps+d); rrh = (ps+d+1)
LD rr,(ps+HL)
6D
rrps0010
10 (2,2,2,2,2)
r
-
-
-
-
rrl = (ps+HL); rrh = (ps+HL+1)
LD r,(HL)
01-r-110
5 (2,1,2)
r
s
-
-
-
-
r = (HL)
LD r,(IX+d)
DD
01-r-110
----d---
9 (2,2,2,1,2)
r
s
-
-
-
-
r = (IX+d)
LD r,(IY+d)
FD
01-r-110
----d---
9 (2,2,2,1,2)
r
s
-
-
-
-
r = (IY+d)
LD IIR,A
ED
4F
4 (2,2)
-
-
-
-
R = A
LD r,n
00-r-110
----n---
4 (2,2)
r
-
-
-
-
r = n
LD r,g
01-r--r'
2
r
-
-
-
-
r = g
LD r,g
7F
01-r--r'
4 (2,2)
r
-
-
-
-
r = g
LD SP,HL
F9
2
-
-
-
-
SP = HL
LD SP,IX
DD
F9
4 (2,2)
-
-
-
-
SP = IX
LD SP,IY
FD
F9
4 (2,2)
-
-
-
-
SP = IY
LD (SP+HL),BCDE
DD
FF
18 (2,2,2,3,3,3,3)
-
-
-
-
(SP+HL) = E; (SP+HL+1) = D; (SP+HL+2) = C; (SP+HL+3) = B
LD (SP+HL),JKHL
FD
FF
18 (2,2,2,3,3,3,3)
-
-
-
-
(SP+HL) = L; (SP+HL+1) = H; (SP+HL+2) = K; (SP+HL+3) = J
LD (SP+n),BCDE
DD
EF
----n---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(SP+n) = E; (SP+n+1) = D; (SP+n+2) = C; (SP+n+3) = B
LD (SP+n),JKHL
FD
EF
----n---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(SP+n) = L; (SP+n+1) = H; (SP+n+2) = K; (SP+n+3) = J
LD (SP+n),ps
ED
00ps0101
----n---
19 (2,2,2,1,3,3,3,3)
-
-
-
-
(SP+n) = ps0; (SP+n+1) = ps1; (SP+n+2) = ps2; (SP+n+3) = ps3
LD XPC,A
ED
67
4 (2,2)
-
-
-
-
XPCl = A; XPCh = 0
LD LXPC,HL
97
2
-
-
-
-
XPCl = L; XPCh = H
ED
A8
10 (2,2,1,2,3)
d
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE-1; HL = HL-1
ED
B8
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE-1; HL = HL-1; repeat while {BC != 0}
ED
98
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
(DE) = (HL); BC = BC-1; HL = HL-1; repeat while {BC != 0}
LDF (lmn),A
8A
----n---
----m---
----l---
12 (2,2,2,2,1,3)
-
-
-
-
(lmn) = A
LDF (lmn),BCDE
DD
0B
----n---
----m---
----l---
23 (2,2,2,2,2,1,3,3,3,3)
-
-
-
-
(lmn) = E; (lmn+1) = D; (lmn+2) = C; (lmn+3) = B
LDF (lmn),HL
82
----n---
----m---
----l---
15 (2,2,2,2,1,3,3)
-
-
-
-
(lmn) = L; (lmn+1) = H
LDF (lmn),JKHL
FD
0B
----n---
----m---
----l---
23 (2,2,2,2,2,1,3,3,3,3)
-
-
-
-
(lmn) = L; (lmn+1) = H; (lmn+2) = K; (lmn+3) = J
LDF (lmn),ps
ED
00ps1001
----n---
----m---
----l---
23 (2,2,2,2,2,1,3,3,3,3)
-
-
-
-
(lmn) = ps0; (lmn+1) = ps1; (lmn+2) = ps2; (lmn+3) = ps3
LDF (lmn),rr
ED
00rr1011
----n---
----m---
----l---
17 (2,2,2,2,2,1,3,3)
-
-
-
-
(lmn) = rrl; (lmn+1) = rrh
LDF A,(lmn)
9A
----n---
----m---
----l---
11 (2,2,2,2,1,2)
r
-
-
-
-
A = (lmn)
LDF BCDE,(lmn)
DD
0A
----n---
----m---
----l---
19 (2,2,2,2,2,1,2,2,2,2)
-
-
-
-
E = (lmn); D = (lmn+1); C = (lmn+2); B = (lmn+3)
LDF HL,(lmn)
92
----n---
----m---
----l---
13 (2,2,2,2,1,2,2)
r
-
-
-
-
L = (lmn); H = (lmn+1)
LDF JKHL,(lmn)
FD
0A
----n---
----m---
----l---
19 (2,2,2,2,2,1,2,2,2,2)
r
-
-
-
-
L = (lmn); H = (lmn+1); K = (lmn+2); J = (lmn+3)
LDF pd,(lmn)
ED
00pd1000
----n---
----m---
----l---
19 (2,2,2,2,2,1,2,2,2,2)
r
-
-
-
-
pd0 = (lmn); pd1 = (lmn+1); pd2 = (lmn+2); pd3 = (lmn+3)
LDF rr,(lmn)
ED
00rr1010
----n---
----m---
----l---
15 (2,2,2,2,2,1,2,2)
r
-
-
-
-
rrl = (lmn); rrh = (lmn+1)
ED
A0
10 (2,2,1,2,3)
d
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE+1; HL = HL+1
ED
B0
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE+1; HL = HL+1; repeat while {BC != 0}
ED
90
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
(DE) = (HL); BC = BC-1; HL = HL+1; repeat while {BC != 0}
LDL pd,DE
DD
10pd1111
4 (2,2)
r
-
-
-
-
pd = {FFFF,DE}
LDL pd,HL
FD
10pd1111
4 (2,2)
r
-
-
-
-
pd = {FFFF,HL}
LDL pd,IX
DD
10pd1100
4 (2,2)
r
-
-
-
-
pd = {FFFF,IX}
LDL pd,IY
FD
10pd1100
4 (2,2)
r
-
-
-
-
pd = {FFFF,IY}
LDL pd,mn
ED
00pd1101
n
m
8 (2,2,2,2)
r
-
-
-
-
pd = {FFFF,mn}
LDL pd,(SP+n)
ED
00pd0011
n
11 (2,2,2,1,2,2)
r
-
-
-
-
pd0 = (SP+n); pd1= (SP+d+1); pd2=FF; pd3=FF
LDP (HL),HL
ED
64
12 (2,2,2,3,3)
-
-
-
-
(HL) = L; (HL+1) = H. (Addr[19:16] = A[3:0])
LDP (IX),HL
DD
64
12 (2,2,2,3,3)
-
-
-
-
(IX) = L; (IX+1) = H. (Addr[19:16] = A[3:0])
LDP (IY),HL
FD
64
12 (2,2,2,3,3)
-
-
-
-
(IY) = L; (IY+1) = H. (Addr[19:16] = A[3:0])
LDP (mn),HL
ED
65
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(mn) = L; (mn+1) = H. (Addr[19:16] = A[3:0])
LDP (mn),IX
DD
65
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(mn) = IXL; (mn+1) = IXH. (Addr[19:16] = A[3:0])
LDP (mn),IY
FD
65
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(mn) = IYL; (mn+1) = IYH. (Addr[19:16] = A[3:0])
LDP HL,(HL)
ED
6C
10 (2,2,2,2,2)
-
-
-
-
L = (HL); H = (HL+1). (Addr[19:16] = A[3:0])
LDP HL,(IX)
DD
6C
10 (2,2,2,2,2)
-
-
-
-
L = (IX); H = (IX+1). (Addr[19:16] = A[3:0])
LDP HL,(IY)
FD
6C
10 (2,2,2,2,2)
-
-
-
-
L = (IY); H = (IY+1). (Addr[19:16] = A[3:0])
LDP HL,(mn)
ED
6D
----n---
----m---
13 (2,2,2,2,1,2,2)
-
-
-
-
L = (mn); H = (mn+1). (Addr[19:16] = A[3:0])
LDP IX,(mn)
DD
6D
----n---
----m---
13 (2,2,2,2,1,2,2)
-
-
-
-
IXL = (mn); IXH = (mn+1). (Addr[19:16] = A[3:0])
LDP IY,(mn)
FD
6D
----n---
----m---
13 (2,2,2,2,1,2,2)
-
-
-
-
IYL = (mn); IYH = (mn+1). (Addr[19:16] = A[3:0])
LJP xpc,mn
C7
----n---
----m---
--xpc--
10 (2,2,2,2,2)
-
-
-
-
XPCl = xpc; XPCh = 0; PC = mn
LLCALL lxpc,mn
8F
----n---
----m---
---xpl---
---xph---
24 (2,2,2,2,2,1,3,3,3,3,1)
-
-
-
-
(SP-1) = XPCh; (SP-2) = XPCl; (SP-3) = PCH; (SP-4) = PCL; XPCl = xpl; XPCh = xph; PC = mn; SP = SP-4
LLJP cc,lxpc,mn
ED
110cc010
----n---
----m---
---xpl--
---xph--
14 (2,2,2,2,2,2,2)
-
-
-
-
if {cc} XPCl = xpl; XPCh = xph; PC = mn
LLJP cx,lxpc,mn
ED
101cx010
----n---
----m---
---xpl--
---xph--
14 (2,2,2,2,2,2,2)
-
-
-
-
if {cx} XPCl = xpl; XPCh = xph; PC = mn
LLJP lxpc,mn
87
----n---
----m---
---xpl---
---xph---
12 (2,2,2,2,2,2)
-
-
-
-
XPCl = xpl; XPCh = xph; PC = mn
ED
8B
14 (2,2,2,2,2,2,2)
-
-
-
-
PCL = (SP); PCH = (SP+1); XPCl = (SP+2); XPCh = (SP+4); SP = SP+4
ED
45
13 (2,2,1,2,2,2,2)
-
-
-
-
PCL = (SP); PCH = (SP+1); XPCl = (SP+2); XPCh = 0; SP = SP+3
ED
D8
6+7i (2,2,1,(2,3,2)i,1)
s
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE-1; repeat while {BC != 0}
ED
F8
6+7i (2,2,1,(2,3,2)i,1)
s
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE-1; HL = HL-1; repeat while {BC != 0}
ED
D0
6+7i (2,2,1,(2,3,2)i,1)
s
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE+1; repeat while {BC != 0}
ED
F0
6+7i (2,2,1,(2,3,2)i,1)
s
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE+1; HL = HL+1; repeat while {BC != 0}
F7
12 (2,10)
-
-
-
-
HL:BC = BC * DE
A7
12 (2,10)
-
-
-
-
HL:BC = BC * DE (unsigned)
ED
44
4 (2,2)
fr
*
*
V
*
A = 0 - A
NEG BCDE
DD
4D
4 (2,2)
*
*
V
*
BCDE = 0 - BCDE
NEG HL
4D
2
fr
*
*
V
*
HL = 0 - HL
NEG JKHL
FD
4D
4 (2,2)
*
*
V
*
JKHL = 0 - JKHL
00
2
-
-
-
-
No operation
OR (HL)
B6
5 (2,1,2)
fr
s
*
*
P
0
A = A | (HL)
OR (HL)
7F
B6
7 (2,2,1,2)
fr
s
*
*
P
0
A = A | (HL)
OR (IX+d)
DD
B6
----d---
9 (2,2,2,1,2)
fr
s
*
*
P
0
A = A | (IX+d)
OR (IY+d)
FD
B6
----d---
9 (2,2,2,1,2)
fr
s
*
*
P
0
A = A | (IY+d)
OR HL,DE
EC
2
fr
*
*
P
0
HL = HL | DE
OR IX,DE
DD
EC
4 (2,2)
*
*
P
0
IX = IX | DE
OR IY,DE
FD
EC
4 (2,2)
*
*
P
0
IY = IY | DE
OR JKHL,BCDE
ED
F6
4 (2,2)
fr
*
*
P
0
JKHL = JKHL | BCDE
OR n
F6
----n---
4 (2,2)
fr
*
*
P
0
A = A | n
OR r
10110-r-
2
fr
*
*
P
0
A = A | r
OR A
B7
2
fr
*
*
P
0
A = A | A
OR r
7F
10110-r-
4 (2,2)
fr
*
*
P
0
A = A | r
POP IP
ED
7E
7 (2,2,1,2)
-
-
-
-
IP = (SP); SP = SP+1
POP IX
DD
E1
9 (2,2,1,2,2)
-
-
-
-
IXL = (SP); IXH = (SP+1); SP = SP+2
POP IY
FD
E1
9 (2,2,1,2,2)
-
-
-
-
IYL = (SP); IYH = (SP+1); SP = SP+2
POP BCDE
DD
F1
13 (2,2,1,2,2,2,2)
r
-
-
-
-
E = (SP); D = (SP+1); C = (SP+2); B = (SP+3); SP = SP+4
POP JKHL
FD
F1
13 (2,2,1,2,2,2,2)
r
-
-
-
-
L = (SP); H = (SP+1); K = (SP+2); J = (SP+3); SP = SP+4
POP SU
ED
6E
7 (2,2,1,2)
-
-
-
-
SU = (SP); SP = SP+1
POP zz
11zz0001
7 (2,1,2,2)
r
-
-
-
-
zzl = (SP); zzh = (SP+1); SP = SP+2
POP pd
ED
11pd0001
13 (2,2,1,2,2,2,2)
r
-
-
-
-
pd0 = (SP); pd1 = (SP+1); pd2 = (SP+2); pd3 = (SP+3); SP = SP+4
PUSH IP
ED
76
9 (2,2,2,3)
-
-
-
-
(SP-1) = IP; SP = SP-1
PUSH IX
DD
E5
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = IXH; (SP-2) = IXL; SP = SP-2
PUSH IY
FD
E5
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = IYH; (SP-2) = IYL; SP = SP-2
PUSH BCDE
DD
F5
18 (2,2,2,3,3,3,3)
-
-
-
-
(SP-1) = B; (SP-2) = C; (SP-3) = D; (SP-4) = E; SP = SP-4
PUSH JKHL
FD
F5
18 (2,2,2,3,3,3,3)
-
-
-
-
(SP-1) = J; (SP-2) = K; (SP-3) = H; (SP-4) = L; SP = SP-4
PUSH mn
ED
A5
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(SP-1) = m; (SP-2) = n; SP = SP - 2
PUSH ps
ED
11ps0101
18 (2,2,2,3,3,3,3)
-
-
-
-
(SP-1) = ps3; (SP-2) = ps2; (SP-3) = ps1; (SP-4) = ps0; SP = SP-4
PUSH SU
ED
66
9 (2,2,2,3)
-
-
-
-
(SP-1) = SU; SP = SP-1
PUSH zz
11zz0101
10 (2,2,3,3)
-
-
-
-
(SP-1) = zzh; (SP-2) = zzl; SP = SP-2
ED
7F
4 (2,2)
-
-
-
*
CF = SU[0]
RES b,(HL)
CB
10-b-110
10 (2,2,1,2,3)
d
-
-
-
-
(HL) = (HL) & ~bit
RES b,(IX+d)
DD
CB
----d---
10-b-110
13 (2,2,2,2,2,3)
d
-
-
-
-
(IX+d) = (IX+d) & ~bit
RES b,(IY+d)
FD
CB
----d---
10-b-110
13 (2,2,2,2,2,3)
d
-
-
-
-
(IY+d) = (IY+d) & ~bit
RES b,r
CB
10-b--r-
4 (2,2)
r
-
-
-
-
r = r & ~bit
C9
8 (2,1,2,2,1)
-
-
-
-
PCL = (SP); PCH = (SP+1); SP = SP+2
RET f
11-f-000
2 8 (2,1,2,2,1)
-
-
-
-
if {f} PCL = (SP); PCH = (SP+1); SP = SP+2
ED
4D
12 (2,2,1,2,2,2,1)
-
-
-
-
IP = (SP); PCL = (SP+1); PCH = (SP+2); SP = SP+3
RL (HL)
CB
16
10 (2,2,1,2,3)
f
b
*
*
P
*
{CF,(HL)} = {(HL),CF}
RL (IX+d)
DD
CB
----d---
16
13 (2,2,2,2,2,3)
f
b
*
*
P
*
{CF,(IX+d)} = {(IX+d),CF}
RL (IY+d)
FD
CB
----d---
16
13 (2,2,2,2,2,3)
f
b
*
*
P
*
{CF,(IY+d)} = {(IY+d),CF}
RL DE
F3
2
fr
*
*
P
*
{CF,DE} = {DE,CF}
RL r
CB
00010-r-
4 (2,2)
fr
*
*
P
*
{CF,r} = {r,CF}
RL bb,BCDE
DD
011010bb
4 (2,2)
fr
*
*
P
*
{CF,BCDE} = {BCDE,CF}; bb=bb-1; repeat while bb!=0
RL bb,JKHL
FD
011010bb
4 (2,2)
fr
*
*
P
*
{CF,JKHL} = {JKHL,CF}; bb=bb-1; repeat while bb!=0
RL BC
62
2
fr
*
*
P
*
{CF,BC} = {BC,CF}
RL HL
42
2
fr
*
*
P
*
{CF,HL} = {HL,CF}
17
2
fr
-
-
-
*
{CF,A} = {A,CF}
RLB A,BCDE
DD
6F
4 (2,2)
-
-
-
-
{A, BCDE} = {BCDE, A}
RLB A,JKHL
FD
6F
4 (2,2)
-
-
-
-
{A, JKHL} = {JKHL, A}
RLC (HL)
CB
06
10 (2,2,1,2,3)
f
b
*
*
P
*
(HL) = {(HL)[6,0],(HL)[7]}; CF = (HL)[7]
RLC (IX+d)
DD
CB
----d---
06
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IX+d) = {(IX+d)[6,0],(IX+d)[7]}; CF = (IX+d)[7]
RLC (IY+d)
FD
CB
----d---
06
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IY+d) = {(IY+d)[6,0],(IY+d)[7]}; CF = (IY+d)[7]
RLC r
CB
00000-r-
4 (2,2)
fr
*
*
P
*
r = {r[6,0],r[7]}; CF = r[7]
RLC 8,BCDE
DD
4F
4 (2,2)
-
-
-
-
BCDE = {CDE, B}
RLC 8,JKHL
FD
4F
4 (2,2)
-
-
-
-
JKHL = {KHL, J}
RLC bb,BCDE
DD
010010bb
4 (2,2)
fr
*
*
P
*
BCDE = {BCDE[30,0],B[7]}; CF = B[7]; bb=bb-1; repeat while bb!=0
RLC bb,JKHL
FD
010010bb
4 (2,2)
fr
*
*
P
*
JKHL = {JKHL[30,0],J[7]}; CF = J[7]; bb=bb-1; repeat while bb!=0
RLC BC
60
2
fr
*
*
P
*
BC = {BC[14,0],B[7]}; CF = B[7]
RLC DE
50
2
fr
*
*
P
*
DE = {DE[14,0],D[7]}; CF = D[7]
07
2
fr
-
-
-
*
A = {A[6,0],A[7]}; CF = A[7]
RR (HL)
CB
1E
10 (2,2,1,2,3)
f
b
*
*
P
*
{(HL),CF} = {CF,(HL)}
RR (IX+d)
DD
CB
----d---
1E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
{(IX+d),CF} = {CF,(IX+d)}
RR (IY+d)
FD
CB
----d---
1E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
{(IY+d),CF} = {CF,(IY+d)}
RR BC
63
2
f
*
*
P
*
{BC,CF} = {CF,BC}
RR DE
FB
2
f
*
*
P
*
{DE,CF} = {CF,DE}
RR HL
FC
2
f
*
*
P
*
{HL,CF} = {CF,HL}
RR IX
DD
FC
4 (2,2)
f
*
*
P
*
{IX,CF} = {CF,IX}
RR IY
FD
FC
4 (2,2)
f
*
*
P
*
{IY,CF} = {CF,IY}
RR r
CB
00011-r-
4 (2,2)
fr
*
*
P
*
{r,CF} = {CF,r}
RR bb,BCDE
DD
011110bb
4 (2,2)
fr
*
*
P
*
{BCDE,CF} = {CF,BCDE}; bb=bb-1; repeat while bb!=0
RR bb,JKHL
FD
011110bb
4 (2,2)
fr
*
*
P
*
{JKHL,CF} = {CF,JKHL}; bb=bb-1; repeat while bb!=0
1F
2
fr
-
-
-
*
{A,CF} = {CF,A}
RRB A,BCDE
DD
7F
4 (2,2)
-
-
-
-
{A, BCDE} = {E, A, BCD}
RRB A,JKHL
FD
7F
4 (2,2)
-
-
-
-
{A, JKHL} = {L, A, JKH}
RRC (HL)
CB
0E
10 (2,2,1,2,3)
f
b
*
*
P
*
(HL) = {(HL)[0],(HL)[7,1]}; CF = (HL)[0]
RRC (IX+d)
DD
CB
----d---
0E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IX+d) = {(IX+d)[0],(IX+d)[7,1]}; CF = (IX+d)[0]
RRC (IY+d)
FD
CB
----d---
0E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IY+d) = {(IY+d)[0],(IY+d)[7,1]}; CF = (IY+d)[0]
RRC r
CB
00001-r-
4 (2,2)
fr
*
*
P
*
r = {r[0],r[7,1]}; CF = r[0]
RRC 8,BCDE
DD
5F
4 (2,2)
-
-
-
-
BCDE = {E, BCD}
RRC 8,JKHL
FD
5F
4 (2,2)
-
-
-
-
JKHL = {L, JKH}
RRC bb,BCDE
DD
010110bb
4 (2,2)
fr
*
*
P
*
BCDE = {B[7],BCDE[31,1]}; CF = E[0]; bb=bb-1; repeat while bb!=0
RRC bb,JKHL
FD
010110bb
4 (2,2)
fr
*
*
P
*
JKHL = {J[7],JKHL[31,1]}; CF = L[0]; bb=bb-1; repeat while bb!=0
RRC BC
61
2
fr
*
*
P
*
BC = {B[0],BC[15,1]}; CF = C[0]
RRC DE
51
2
fr
*
*
P
*
DE = {D[0],DE[15,1]}; CF = E[0]
0F
2
fr
-
-
-
*
A = {A[0],A[7,1]}; CF = A[0]
RST v
11-v-111
10 (2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL; SP = SP - 2; PC = {R, 0, v, 0000}
SBC A,(HL)
9E
5 (2,1,2)
fr
s
*
*
V
*
A = A - (HL) - CF
SBC A,(HL)
7F
9E
7 (2,2,1,2)
fr
s
*
*
V
*
A = A - (HL) - CF
SBC A,n
DE
----n---
4 (2,2)
fr
*
*
V
*
A = A - n - CF
SBC A,r
10011-r-
2
fr
*
*
V
*
A = A - r - CF
SBC A,r
7F
10011-r-
4 (2,2)
fr
*
*
V
*
A = A - r - CF
SBC HL,ss
ED
01ss0010
4 (2,2)
fr
*
*
V
*
HL = HL - ss - CF
SBC (IX+d)
DD
9E
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IX+d) - CF
SBC (IY+d)
FD
9E
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IY+d) - CF
ED
02
4 (2,2)
r
-
-
-
-
A = sbox(A)
37
2
f
-
-
-
1
CF = 1
SET b,(HL)
CB
11-b-110
10 (2,2,1,2,3)
b
-
-
-
-
(HL) = (HL) | bit
SET b,(IX+d)
DD
CB
----d---
11-b-110
13 (2,2,2,2,2,3)
b
-
-
-
-
(IX+d) = (IX+d) | bit
SET b,(IY+d)
FD
CB
----d---
11-b-110
13 (2,2,2,2,2,3)
b
-
-
-
-
(IY+d) = (IY+d) | bit
SET b,r
CB
11-b--r-
4 (2,2)
r
-
-
-
-
r = r | bit
ED
B1
n
m
12 (2,2,2,2,2,2)
-
-
-
-
SU={SU[1:0],SU[7:2]}; tmpl = (SP); tmph = (SP+1); SP = SP+2; if {tmp != mn} System Violation
ED
6F
4 (2,2)
-
-
-
-
SU = {SU[5:0], 01}
ED
BF
n
m
15 (2,2,2,2,1,3,3)
-
-
-
-
SU = {SU[7:2], 01}; (SP - 1) = m; (SP - 2) = n; SP = SP - 2
SLA (HL)
CB
26
10 (2,2,1,2,3)
f
b
*
*
P
*
(HL) = {(HL)[6,0],0}; CF = (HL)[7]
SLA (IX+d)
DD
CB
----d---
26
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IX+d) = {(IX+d)[6,0],0}; CF = (IX+d)[7]
SLA (IY+d)
FD
CB
----d---
26
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IY+d) = {(IY+d)[6,0],0}; CF = (IY+d)[7]
SLA r
CB
00100-r-
4 (2,2)
fr
*
*
P
*
r = {r[6,0],0}; CF = r[7]
SLA bb,BCDE
DD
100010bb
4 (2,2)
fr
*
*
P
*
BCDE = {BCDE[30,0],0}; CF = B[7]; bb=bb-1; repeat while bb!=0
SLA bb,JKHL
FD
100010bb
4 (2,2)
fr
*
*
P
*
JKHL = {JKHL[30,0],0}; CF = J[7]; bb=bb-1; repeat while bb!=0
SLL bb,BCDE
DD
101010bb
4 (2,2)
fr
*
*
P
*
BCDE = {BCDE[30,0],0}; CF = B[7]; bb=bb-1; repeat while bb!=0
SLL bb,JKHL
FD
101010bb
4 (2,2)
fr
*
*
P
*
JKHL = {JKHL[30,0],0}; CF = J[7]; bb=bb-1; repeat while bb!=0
SRA (HL)
CB
2E
10 (2,2,1,2,3)
f
b
*
*
P
*
(HL) = {(HL)[7],(HL)[7,1]}; CF = (HL)[0]
SRA (IX+d)
DD
CB
----d---
2E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IX+d) = {(IX+d)[7],(IX+d)[7,1]}; CF = (IX+d)[0]
SRA (IY+d)
FD
CB
----d---
2E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IY+d) = {(IY+d)[7],(IY+d)[7,1]}; CF = (IY+d)[0]
SRA r
CB
00101-r-
4 (2,2)
fr
*
*
P
*
r = {r[7],r[7,1]}; CF = r[0]
SRA bb,BCDE
DD
100110bb
4 (2,2)
fr
*
*
P
*
BCDE = {B[7],BCDE[31,1]}; CF = E[0]; bb=bb-1; repeat while bb!=0
SRA bb,JKHL
FD
100110bb
4 (2,2)
fr
*
*
P
*
JKHL = {J[7],JKHL[31,1]}; CF = L[0]; bb=bb-1; repeat while bb!=0
ED
83
12 (2,2,1,2,2,2,1)
-
-
-
-
SU = (SP); PCl = (SP+1); PCh = (SP+2); SP = SP+ 3
SRL bb,BCDE
DD
101110bb
4 (2,2)
fr
*
*
P
*
BCDE = {0,BCDE[31,1]}; CF = E[0]; bb=bb-1; repeat while bb!=0
SRL bb,JKHL
FD
101110bb
4 (2,2)
fr
*
*
P
*
JKHL = {0,JKHL[31,1]}; CF = L[0]; bb=bb-1; repeat while bb!=0
SRL (HL)
CB
3E
10 (2,2,1,2,3)
f
b
*
*
P
*
(HL) = {0,(HL)[7,1]}; CF = (HL)[0]
SRL (IX+d)
DD
CB
----d---
3E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IX+d) = {0,(IX+d)[7,1]}; CF = (IX+d)[0]
SRL (IY+d)
FD
CB
----d---
3E
13 (2,2,2,2,2,3)
f
b
*
*
P
*
(IY+d) = {0,(IY+d)[7,1]}; CF = (IY+d)[0]
SRL r
CB
00111-r-
4 (2,2)
fr
*
*
P
*
r = {0,r[7,1]}; CF = r[0]
SUB (HL)
96
5 (2,1,2)
fr
s
*
*
V
*
A = A - (HL)
SUB (HL)
7F
96
7 (2,2,1,2)
fr
s
*
*
V
*
A = A - (HL)
SUB (IX+d)
DD
96
----d---
9 ( 2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IX+d)
SUB (IY+d)
FD
96
----d---
9 ( 2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IY+d)
SUB HL,DE
55
2
fr
-
-
-
*
HL = HL - DE
SUB HL,JK
45
2
fr
-
-
-
*
HL = HL - JK
SUB JKHL,BCDE
ED
D6
4 (2,2)
fr
-
-
-
*
JKHL = JKHL - BCDE
SUB n
D6
----n---
4 (2,2)
fr
*
*
V
*
A = A - n
SUB r
10010-r-
2
fr
*
*
V
*
A = A - r
SUB r
7F
10010-r-
4 (2,2)
fr
*
*
V
*
A = A - r
ED
7D
4 (2,2)
-
-
-
-
SU = {SU[1:0], SU[7:2]}
ED
75
10 (2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL; SP = SP - 2; PC = {R, 01100000}
TEST BC
ED
4C
4 (2,2)
f
*
*
P
0
BC | 0
TEST BCDE
DD
5C
4 (2,2)
f
*
*
P
0
BCDE | 0
TEST HL
4C
2
f
*
*
P
0
HL | 0
TEST IX
DD
4C
4 (2,2)
f
*
*
P
0
IX | 0
TEST IY
FD
4C
4 (2,2)
f
*
*
P
0
IY | 0
TEST JKHL
FD
5C
4 (2,2)
f
*
*
P
0
JKHL | 0
ED
C0
8+8i (2,2,2,(2,2,3,1)i,2)
-
-
-
-
*
{CF:DE':(HL)} = (IX) + [(IY) * DE + DE' + CF]; BC = BC-1; IX = IX+1; IY = IY+1; HL = HL+1; repeat while BC !=0
ED
C8
8+8i (2,2,2,(2,2,3,1)i,2)
-
-
-
-
*
{CF:DE:(HL)} = (IX) - [(IY) * DE + DE' + CF]; BC = BC-1; IX = IX+1; IY = IY+1; HL = HL+1; repeat while BC !=0
XOR (HL)
AE
5 (2,1,2)
fr
s
*
*
P
0
A = [A & ~(HL)] | [~A & (HL)]
XOR (HL)
7F
AE
7 (2,2,1,2)
fr
s
*
*
P
0
A = [A & ~(HL)] | [~A & (HL)]
XOR HL,DE
54
2
fr
*
*
P
0
HL = HL ^ DE
XOR (IX+d)
DD
AE
----d---
9 (2,2,2,1,2)
fr
s
*
*
P
0
A = [A & ~(IX+d)] | [~A & (IX+d)]
XOR (IY+d)
FD
AE
----d---
9 (2,2,2,1,2)
fr
s
*
*
P
0
A = [A & ~(IY+d)] | [~A & (IY+d)]
XOR JKHL,BCDE
ED
EE
4 (2,2)
fr
*
*
P
0
JKHL = JKHL ^ BCDE
XOR n
EE
----n---
4 (2,2)
fr
*
*
P
0
A = [A & ~n] | [~A & n]
XOR r
10101-r-
2
fr
*
*
P
0
A = [A & ~r] | [~A & r]
XOR r
7F
10101-r-
4 (2,2)
fr
*
*
P
0
A = [A & ~r] | [~A & r]


<< Previous | Next >>