<< Previous | Index | Next >>

7. Quick Reference Table

Key

Instruction

Opcode byte 1

Opcode byte 2

Opcode byte 3

Opcode byte 4

Clock cycles

A

I

S

Z

LV

C

Operation

N/M/P

ADC A,(HL)
10001110
5 (2,1,2)
fr
s
*
*
V
*
A = A + (HL) + CF
ADC A,(IX+d)
11011101
10001110
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IX+d) + CF
ADC A,(IY+d)
11111101
10001110
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IY+d) + CF
ADC A,n
11001110
----n---
4 (2,2)
fr
*
*
V
*
A = A + n + CF
ADC A,r
10001-r-
2
fr
*
*
V
*
A = A + r + CF
ADC HL,ss
11101101
01ss1010
4 (2,2)
fr
*
*
V
*
HL = HL + ss + CF
ADD A,(HL)
10000110
5 (2,1,2)
fr
s
*
*
V
*
A = A + (HL)
ADD A,(IX+d)
11011101
10000110
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IX+d)
ADD A,(IY+d)
11111101
10000110
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A + (IY+d)
ADD A,n
11000110
----n---
4 (2,2)
fr
*
*
V
*
A = A + n
ADD A,r
10000-r-
2
fr
*
*
V
*
A = A + r
ADD HL,ss
00ss1001
2
fr
-
-
-
*
HL = HL + ss
ADD IX,xx
11011101
00xx1001
4 (2,2)
f
-
-
-
*
IX = IX + xx
ADD IY,yy
11111101
00yy1001
4 (2,2)
f
-
-
-
*
IY = IY + yy
ADD SP,d
00100111
----d---
4 (2,2)
f
-
-
-
*
SP = SP + d
N
01110110
2
-
-
-
-
alternate register destination
for next instruction
N
AND (HL)
10100110
5 (2,1,2)
fr
s
*
*
L
0
A = A & (HL)
AND (IX+d)
11011101
10100110
----d---
9 (2,2,2,1,2)
fr
s
*
*
L
0
A = A & (IX+d)
AND (IY+d)
11111101
10100110
----d---
9 (2,2,2,1,2)
fr
s
*
*
L
0
A = A & (IY+d)
AND HL,DE
11011100
2
fr
*
*
L
0
HL = HL & DE
N
AND IX,DE
11011101
11011100
4 (2,2)
f
*
*
L
0
IX = IX & DE
N
AND IY,DE
11111101
11011100
4 (2,2)
f
*
*
L
0
IY = IY & DE
N
11100110
----n---
4 (2,2)
fr
*
*
L
0
A = A & n
10100-r-
2
fr
*
*
L
0
A = A & r
BIT b,(HL)
11001011
01-b-110
7 (2,2,1,2)
f
s
-
*
-
-
(HL) & bit
P
BIT b,(IX+d)
11011101
11001011
----d---
01-b-110
10 (2,2,2,2,2)
f
s
-
*
-
-
(IX+d) & bit
BIT b,(IY+d)
11111101
11001011
----d---
01-b-110
10 (2,2,2,2,2)
f
s
-
*
-
-
(IY+d) & bit
BIT b,r
11001011
01-b--r-
4 (2,2)
f
-
*
-
-
r & bit
11001100
2
fr
*
*
0
0
if (HL != 0) HL = 1
N
11011101
11001100
4 (2,2)
f
*
*
0
0
if (IX != 0) IX = 1
N
11111101
11001100
4 (2,2)
f
*
*
0
0
if (IY != 0) IY = 1
N
11001101
----n---
----m---
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL;
PC = mn; SP = SP-2
00111111
2
f
-
-
-
*
CF = ~CF
CP (HL)
10111110
5 (2,1,2)
f
s
*
*
V
*
A - (HL)
CP (IX+d)
11011101
10111110
----d---
9 (2,2,2,1,2)
f
s
*
*
V
*
A - (IX+d)
CP (IY+d)
11111101
10111110
----d---
9 (2,2,2,1,2)
f
s
*
*
V
*
A - (IY+d)
CP n
11111110
----n---
4 (2,2)
f
*
*
V
*
A - n
CP r
10111-r-
2
f
*
*
V
*
A - r
00101111
2
r
-
-
-
-
A = ~A
DEC (HL)
00110101
8 (2,1,2,3)
f
b
*
*
V
-
(HL) = (HL) - 1
DEC (IX+d)
11011101
00110101
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
-
(IX+d) = (IX+d) -1
DEC (IY+d)
11111101
00110101
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
-
(IY+d) = (IY+d) -1
DEC IX
11011101
00101011
4 (2,2)
-
-
-
-
IX = IX - 1
DEC IY
11111101
00101011
4 (2,2)
-
-
-
-
IY = IY - 1
00-r-101
2
fr
*
*
V
-
r = r - 1
DEC ss
00ss1011
2
r
-
-
-
-
ss = ss - 1
00010000
--(e-2)-
5 (2,2,1)
r
-
-
-
-
B = B-1; if {B != 0} PC = PC + e
EX (SP),HL
11101101
01010100
15 (2,2,1,2,2,3,3)
r
-
-
-
-
H <-> (SP+1); L <-> (SP)
M
EX (SP),IX
11011101
11100011
15 (2,2,1,2,2,3,3)
-
-
-
-
IXH <-> (SP+1); IXL <-> (SP)
EX (SP),IY
11111101
11100011
15 (2,2,1,2,2,3,3)
-
-
-
-
IYH <-> (SP+1); IYL <-> (SP)
EX AF,AF'
00001000
2
-
-
-
-
AF <-> AF'
EX DE,HL
11101011
2
s
-
-
-
-
if (!ALTD) then DE <-> HL else DE <-> HL'
N
EX DE',HL
11100011
2
s
-
-
-
-
if (!ALTD) then DE' <-> HL else DE' <-> HL'
11011001
2
-
-
-
-
BC <-> BC'; DE <-> DE'; HL <-> HL'
01011011
2
-
-
-
-
E = E, but if (EDMR && SU[0])
then System Violation interrupt flag is set
INC (HL)
00110100
8 (2,1,2,3)
f
b
*
*
V
-
(HL) = (HL) + 1
INC (IX+d)
11011101
00110100
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
-
(IX+d) = (IX+d) + 1
INC (IY+d)
11111101
00110100
----d---
12 (2,2,2,1,2,3)
f
b
*
*
V
-
(IY+d) = (IY+d) + 1
INC IX
11011101
00100011
4 (2,2)
-
-
-
-
IX = IX + 1
INC IY
11111101
00100011
4 (2,2)
-
-
-
-
IY = IY + 1
00-r-100
2
fr
*
*
V
-
r = r + 1
INC ss
00ss0011
2
r
-
-
-
-
ss = ss + 1
11011011
2
-
-
-
-
I/O external prefix
N
11010011
2
-
-
-
-
I/O internal prefix
N
11101101
01000110
4 (2,2)
-
-
-
-
IP = {IP[5:0], 00}
NP
11101101
01010110
4 (2,2)
-
-
-
-
IP = {IP[5:0], 01}
NP
11101101
01001110
4 (2,2)
-
-
-
-
IP = {IP[5:0], 10}
NP
11101101
01011110
4 (2,2)
-
-
-
-
IP = {IP[5:0], 11}
NP
11101101
01011101
4 (2,2)
-
-
-
-
IP = {IP[1:0], IP[7:2]}
NP
JP (HL)
11101001
4 (2,2)
-
-
-
-
PC = HL
JP (IX)
11011101
11101001
6 (2,2,2)
-
-
-
-
PC = IX
JP (IY)
11111101
11101001
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
11000011
----n---
----m---
7 (2,2,2,1)
-
-
-
-
PC = mn
JR cc,e
001cc000
--(e-2)-
5 (2,2,1)
-
-
-
-
if {cc} PC = PC + e
JR e
00011000
--(e-2)-
5 (2,2,1)
-
-
-
-
PC = PC + e
LCALL x,mn
11001111
----n---
----m---
---x----
19 (2,2,2,2,1,3,3,3,1)
-
-
-
-
(SP-1) = PCL; (SP-2) = PCH; (SP-3) = XPC; XPC = x; PC = mn; SP = SP-3
N
LD (BC),A
00000010
7 (2,2,3)
d
-
-
-
-
(BC) = A
LD (DE),A
00010010
7 (2,2,3)
d
-
-
-
-
(DE) = A
LD (HL),n
00110110
----n---
7 (2,2,3)
d
-
-
-
-
(HL) = n
LD (HL),r
01110-r-
6 (2,1,3)
d
-
-
-
-
(HL) = r
LD (HL+d),HL
11011101
11110100
----d---
13 (2,2,2,1,3,3)
d
-
-
-
-
(HL+d) = L; (HL+d+1) = H
N
LD (IX+d),HL
11110100
----d---
11 (2,2,1,3,3)
d
-
-
-
-
(IX+d) = L; (IX+d+1) = H
N
LD (IX+d),n
11011101
00110110
----d---
----n---
11 (2,2,2,2,3)
d
-
-
-
-
(IX+d) = n
LD (IX+d),r
11011101
01110-r-
----d---
10 (2,2,2,1,3)
d
-
-
-
-
(IX+d) = r
LD (IY+d),HL
11111101
11110100
----d---
13 (2,2,2,1,3,3)
d
-
-
-
-
(IY+d) = L; (IY+d+1) = H
N
LD (IY+d),n
11111101
00110110
----d---
----n---
11 (2,2,2,2,3)
d
-
-
-
-
(IY+d) = n
LD (IY+d),r
11111101
01110-r-
----d---
10 (2,2,2,1,3)
d
-
-
-
-
(Iy+d) = r
LD (mn),A
00110010
----n---
----m---
10 (2,2,2,1,3)
d
-
-
-
-
(mn) = A
LD (mn),HL
00100010
----n---
----m---
13 (2,2,2,1,3,3)
d
-
-
-
-
(mn) = L; (mn+1) = H
LD (mn),IX
11011101
00100010
----n---
----m---
15 (2,2,2,2,1,3,3)
d
-
-
-
-
(mn) = IXL; (mn+1) = IXH
LD (mn),IY
11111101
00100010
----n---
----m---
15 (2,2,2,2,1,3,3)
d
-
-
-
-
(mn) = IYL; (mn+1) = IYH
LD (mn),ss
11101101
01ss0011
----n---
----m---
15 (2,2,2,2,1,3,3)
d
-
-
-
-
(mn) = ssl; (mn+1) = ssh
LD (SP+n),HL
11010100
----n---
11 (2,2,1,3,3)
-
-
-
-
(SP+n) = L; (SP+n+1) = H
N
LD (SP+n),IX
11011101
11010100
----n---
13 (2,2,2,1,3,3)
-
-
-
-
(SP+n) = IXL; (SP+n+1) = IXH
N
LD (SP+n),IY
11111101
11010100
----n---
13 (2,2,2,1,3,3)
-
-
-
-
(SP+n) = IYL; (SP+n+1) = IYH
N
LD A,(BC)
00001010
6 (2,2,2)
r
s
-
-
-
-
A = (BC)
LD A,(DE)
00011010
6 (2,2,2)
r
s
-
-
-
-
A = (DE)
LD A,(mn)
00111010
----n---
----m---
9 (2,2,2,1,2)
r
s
-
-
-
-
A = (mn)
LD A,EIR
11101101
01010111
4 (2,2)
fr
*
*
-
-
A = EIR
LD A,IIR
11101101
01011111
4 (2,2)
fr
*
*
-
-
A = IIR
LD A,XPC
11101101
01110111
4 (2,2)
r
-
-
-
-
A = XPC
N
LD dd,(mn)
11101101
01dd1011
----n---
----m---
13 (2,2,2,2,1,2,2)
r
s
-
-
-
-
ddl = (mn); ddh = (mn+1)
LD dd',BC
11101101
01dd1001
4 (2,2)
-
-
-
-
dd' = BC (dd': 00-BC', 01-DE', 10-HL')
N
LD dd',DE
11101101
01dd0001
4 (2,2)
-
-
-
-
dd' = DE (dd': 00-BC', 01-DE', 10-HL')
N
LD dd,mn
00dd0001
----n---
----m---
6 (2,2,2)
r
-
-
-
-
dd = mn
LD EIR,A
11101101
01000111
4 (2,2)
-
-
-
-
EIR = A
LD IIR,A
11101101
01001111
4 (2,2)
-
-
-
-
IIR = A
LD HL,(mn)
00101010
----n---
----m---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
L = (mn); H = (mn+1)
LD HL,(HL+d)
11011101
11100100
----d---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
L = (HL+d); H = (HL+d+1)
N
LD HL,(IX+d)
11100100
----d---
9 (2,2,1,2,2)
r
s
-
-
-
-
L = (IX+d); H = (IX+d+1)
N
LD HL,(IY+d)
11111101
11100100
----d---
11 (2,2,2,1,2,2)
r
s
-
-
-
-
L = (IY+d); H = (IY+d+1)
N
LD HL,(SP+n)
11000100
----n---
9 (2,2,1,2,2)
r
-
-
-
-
L = (SP+n); H = (SP+n+1)
N
LD HL,IX
11011101
01111100
4 (2,2)
r
-
-
-
-
HL = IX
N
LD HL,IY
11111101
01111100
4 (2,2)
r
-
-
-
-
HL = IY
N
LD IX,(mn)
11011101
00101010
----n---
----m---
13 (2,2,2,2,1,2,2)
s
-
-
-
-
IXL = (mn); IXH = (mn+1)
LD IX,(SP+n)
11011101
11000100
----n---
11 (2,2,2,1,2,2)
-
-
-
-
IXL = (SP+n); IXH = (SP+n+1)
N
LD IX,HL
11011101
01111101
4 (2,2)
-
-
-
-
IX = HL
N
LD IX,mn
11011101
00100001
----n---
----m---
8 (2,2,2,2)
-
-
-
-
IX = mn
LD IY,(mn)
11111101
00101010
----n---
----m---
13 (2,2,2,2,1,2,2)
s
-
-
-
-
IYL = (mn); IYH = (mn+1)
LD IY,(SP+n)
11111101
11000100
----n---
11 (2,2,2,1,2,2)
-
-
-
-
IYL = (SP+n); IYH = (SP+n+1)
N
LD IY,HL
11111101
01111101
4 (2,2)
-
-
-
-
IY = HL
N
LD IY,mn
11111101
00100001
----n---
----m---
8 (2,2,2,2)
-
-
-
-
IY = mn
LD r,(HL)
01-r-110
5 (2,1,2)
r
s
-
-
-
-
r = (HL)
LD r,(IX+d)
11011101
01-r-110
----d---
9 (2,2,2,1,2)
r
s
-
-
-
-
r = (IX+d)
LD r,(IY+d)
11111101
01-r-110
----d---
9 (2,2,2,1,2)
r
s
-
-
-
-
r = (IY+d)
LD XPC,A
11101101
01100111
4 (2,2)
-
-
-
-
XPC = A
NP
LD r,n
00-r-110
----n---
4 (2,2)
r
-
-
-
-
r = n
LD r,g
01-r--g
2
r
-
-
-
-
r = g
LD SP,HL
11111001
2
-
-
-
-
SP = HL
P
LD SP,IX
11011101
11111001
4 (2,2)
-
-
-
-
SP = IX
P
LD SP,IY
11111101
11111001
4 (2,2)
-
-
-
-
SP = IY
P
11101101
10101000
10 (2,2,1,2,3)
d
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE-1; HL = HL-1
11101101
10111000
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
repeat: (DE) = (HL); BC = BC-1; DE = DE-1; HL = HL-1 until {BC==0}
11101101
10011000
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
(DE) = (HL); BC = BC-1; HL = HL-1;
repeat while BC != 0
11101101
10100000
10 (2,2,1,2,3)
d
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE+1; HL = HL+1
11101101
10110000
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
repeat: (DE) = (HL); BC = BC-1; DE = DE+1; HL = HL+1 until {BC == 0}
11101101
10010000
6+7i (2,2,1,(2,3,2)i,1)
d
-
-
*
-
(DE) = (HL); BC = BC-1; HL = HL+1;
repeat while BC != 0
LDP (HL),HL
11101101
01100100
12 (2,2,2,3,3)
-
-
-
-
(HL) = L; (HL+1) = H. (Addr[19:16] = A[3:0])
N
LDP (IX),HL
11011101
01100100
12 (2,2,2,3,3)
-
-
-
-
(IX) = L; (IX+1) = H. (Addr[19:16] = A[3:0])
N
LDP (IY),HL
11111101
01100100
12 (2,2,2,3,3)
-
-
-
-
(IY) = L; (IY+1) = H. (Addr[19:16] = A[3:0])
N
LDP (mn),HL
11101101
01100101
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(mn) = L; (mn+1) = H. (Addr[19:16] = A[3:0])
N
LDP (mn),IX
11011101
01100101
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(mn) = IXL; (mn+1) = IXH. (Addr[19:16] = A[3:0])
N
LDP (mn),IY
11111101
01100101
----n---
----m---
15 (2,2,2,2,1,3,3)
-
-
-
-
(mn) = IYL; (mn+1) = IYH. (Addr[19:16] = A[3:0])
N
LDP HL,(HL)
11101101
01101100
10 (2,2,2,2,2)
-
-
-
-
L = (HL); H = (HL+1). (Addr[19:16] = A[3:0])
N
LDP HL,(IX)
11011101
01101100
10 (2,2,2,2,2)
-
-
-
-
L = (IX); H = (IX+1). (Addr[19:16] = A[3:0])
N
LDP HL,(IY)
11111101
01101100
10 (2,2,2,2,2)
-
-
-
-
L = (IY); H = (IY+1). (Addr[19:16] = A[3:0])
N
LDP HL,(mn)
11101101
01101101
----n---
----m---
13 (2,2,2,2,1,2,2)
-
-
-
-
L = (mn); H = (mn+1). (Addr[19:16] = A[3:0])
N
LDP IX,(mn)
11011101
01101101
----n---
----m---
13 (2,2,2,2,1,2,2)
-
-
-
-
IXL = (mn); IXH = (mn+1). (Addr[19:16] = A[3:0])
N
LDP IY,(mn)
11111101
01101101
----n---
----m---
13 (2,2,2,2,1,2,2)
-
-
-
-
IYL = (mn); IYH = (mn+1). (Addr[19:16] = A[3:0])
N
LJP x,mn
11000111
----n---
----m---
---x----
10 (2,2,2,2,2)
-
-
-
-
XPC = x; PC = mn
N
11101101
01000101
13 (2,2,1,2,2,2,2)
-
-
-
-
PCL = (SP); PCH = (SP+1); XPC = (SP+2); SP = SP+3
N
11101101
11111000
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
11101101
11011000
6+7i (2,2,1,(2,3,2)i,1)
s
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE-1;
repeat while BC != 0
11101101
11010000
6+7i (2,2,1,(2,3,2)i,1)
s
-
-
*
-
(DE) = (HL); BC = BC-1; DE = DE+1;
repeat while BC != 0
11101101
11110000
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
11110111
12 (2,10)
-
-
-
-
HL:BC = BC * DE
N
11101101
01000100
4 (2,2)
fr
*
*
V
*
A = 0 - A
00000000
2
-
-
-
-
No operation
OR (HL)
10110110
5 (2,1,2)
fr
s
*
*
L
0
A = A | (HL)
OR (IX+d)
11011101
10110110
----d---
9 (2,2,2,1,2)
fr
s
*
*
L
0
A = A | (IX+d)
OR (IY+d)
11111101
10110110
----d---
9 (2,2,2,1,2)
fr
s
*
*
L
0
A = A | (IY+d)
OR HL,DE
11101100
2
fr
*
*
L
0
HL = HL | DE
N
OR IX,DE
11011101
11101100
4 (2,2)
f
*
*
L
0
IX = IX | DE
N
OR IY,DE
11111101
11101100
4 (2,2)
f
*
*
L
0
IY = IY | DE
N
OR n
11110110
----n---
4 (2,2)
fr
*
*
L
0
A = A | n
OR r
10110-r-
2
fr
*
*
L
0
A = A | r
POP IP
11101101
01111110
7 (2,2,1,2)
-
-
-
-
IP = (SP); SP = SP+1
NP
POP IX
11011101
11100001
9 (2,2,1,2,2)
-
-
-
-
IXL = (SP); IXH = (SP+1); SP = SP+2
POP IY
11111101
11100001
9 (2,2,1,2,2)
-
-
-
-
IYL = (SP); IYH = (SP+1); SP = SP+2
POP SU
11101101
01101110
9 (2,2,2,3)
-
-
-
-
SU = (SP); SP = SP+1
P
POP zz
11zz0001
7 (2,1,2,2)
r
-
-
-
-
zzl = (SP); zzh = (SP+1); SP = SP+2
11101101
01110110
9 (2,2,2,3)
-
-
-
-
(SP-1) = IP; SP = SP-1
N
11011101
11100101
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = IXH; (SP-2) = IXL; SP = SP-2
11111101
11100101
12 (2,2,2,3,3)
-
-
-
-
(SP-1) = IYH; (SP-2) = IYL; SP = SP-2
11101101
01100110
9 (2,2,2,3)
-
-
-
-
(SP-1) = SU; SP = SP-1
P
11zz0101
10 (2,2,3,3)
-
-
-
-
(SP-1) = zzh; (SP-2) = zzl; SP = SP-2
11101101
01111111
4 (2,2)
-
-
-
·
CF = SU[0]
P
RES b,(HL)
11001011
10-b-110
10 (2,2,1,2,3)
d
-
-
-
-
(HL) = (HL) & ~bit
RES b,(IX+d)
11011101
11001011
----d---
10-b-110
13 (2,2,2,2,2,3)
d
-
-
-
-
(IX+d) = (IX+d) & ~bit
RES b,(IY+d)
11111101
11001011
----d---
10-b-110
13 (2,2,2,2,2,3)
d
-
-
-
-
(IY+d) = (IY+d) & ~bit
RES b,r
11001011
10-b--r-
4 (2,2)
r
-
-
-
-
r = r & ~bit
11001001
8 (2,1,2,2,1)
-
-
-
-
PCL = (SP); PCH = (SP+1); SP = SP+2
11-f-000
2
8 (2,1,2,2,1)
-
-
-
-
if {f} PCL = (SP); PCH = (SP+1);
SP = SP+2
11101101
01001101
12 (2,2,1,2,2,2,1)
-
-
-
-
IP = (SP); PCL = (SP+1);
PCH = (SP+2); SP = SP+3
NP
RL (HL)
11001011
00010110
10 (2,2,1,2,3)
f
b
*
*
L
*
{CY,(HL)} = {(HL),CY}
RL (IX+d)
11011101
11001011
----d---
00010110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
{CY,(IX+d)} = {(IX+d),CY}
RL (IY+d)
11111101
11001011
----d---
00010110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
{CY,(IY+d)} = {(IY+d),CY}
RL DE
11110011
2
fr
*
*
L
*
{CY,DE} = {DE,CY}
N
RL r
11001011
00010-r-
4 (2,2)
fr
*
*
L
*
{CY,r} = {r,CY}
00010111
2
fr
-
-
-
*
{CY,A} = {A,CY}
RLC (HL)
11001011
00000110
10 (2,2,1,2,3)
f
b
*
*
L
*
(HL) = {(HL)[6,0],(HL)[7]}; CY = (HL)[7]
RLC (IX+d)
11011101
11001011
----d---
00000110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IX+d) = {(IX+d)[6,0],(IX+d)[7]};
CY = (IX+d)[7]
RLC (IY+d)
11111101
11001011
----d---
00000110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IY+d) = {(IY+d)[6,0],(IY+d)[7]};
CY = (IY+d)[7]
11001011
00000-r-
4 (2,2)
fr
*
*
L
*
r = {r[6,0],r[7]}; CY = r[7]
00000111
2
fr
-
-
-
*
A = {A[6,0],A[7]}; CY = A[7]
RR (HL)
11001011
00011110
10 (2,2,1,2,3)
f
b
*
*
L
*
{(HL),CY} = {CY,(HL)}
RR (IX+d)
11011101
11001011
----d---
00011110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
{(IX+d),CY} = {CY,(IX+d)}
RR (IY+d)
11111101
11001011
----d---
00011110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
{(IY+d),CY} = {CY,(IY+d)}
RR DE
11111011
2
fr
*
*
L
*
{DE,CY} = {CY,DE}
N
RR HL
11111100
2
fr
*
*
L
*
{HL,CY} = {CY,HL}
N
RR IX
11011101
11111100
4 (2,2)
f
*
*
L
*
{IX,CY} = {CY,IX}
N
RR IY
11111101
11111100
4 (2,2)
f
*
*
L
*
{IY,CY} = {CY,IY}
N
RR r
11001011
00011-r-
4 (2,2)
fr
*
*
L
*
{r,CY} = {CY,r}
00011111
2
fr
-
-
-
*
{A,CY} = {CY,A}
RRC (HL)
11001011
00001110
10 (2,2,1,2,3)
f
b
*
*
L
*
(HL) = {(HL)[0],(HL)[7,1]}; CY = (HL)[0]
RRC (IX+d)
11011101
11001011
----d---
00001110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IX+d) = {(IX+d)[0],(IX+d)[7,1]};
CY = (IX+d)[0]
RRC (IY+d)
11111101
11001011
----d---
00001110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IY+d) = {(IY+d)[0],(IY+d)[7,1]};
CY = (IY+d)[0]
11001011
00001-r-
4 (2,2)
fr
*
*
L
*
r = {r[0],r[7,1]}; CY = r[0]
00001111
2
fr
-
-
-
*
A = {A[0],A[7,1]}; CY = A[0]
11-v-111
8 (2,2,2,2)
-
-
-
-
(SP-1) = PCH; (SP-2) = PCL;
SP = SP - 2; PC = {R, 0, v, 0000}
SBC A,(HL)
11011101
10011110
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IX+d) - CY
SBC (IX+d)
11111101
10011110
----d---
9 (2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IY+d) - CY
SBC (IY+d)
10011110
5 (2,1,2)
fr
s
*
*
V
*
A = A - (HL) - CY
SBC A,n
11011110
----n---
4 (2,2)
fr
*
*
V
*
A = A - n - CY
SBC A,r
10011-r-
2
fr
*
*
V
*
A = A - r - CY
SBC HL,ss
11101101
01ss0010
4 (2,2)
fr
*
*
V
*
HL = HL - ss - CF
00110111
2
f
-
-
-
1
CF = 1
SET b,(HL)
11001011
11-b-110
10 (2,2,1,2,3)
b
-
-
-
-
(HL) = (HL) | bit
SET b,(IX+d)
11011101
11001011
----d---
11-b-110
13 (2,2,2,2,2,3)
b
-
-
-
-
(IX+d) = (IX+d) | bit
SET b,(IY+d)
11111101
11001011
----d---
11-b-110
13 (2,2,2,2,2,3)
b
-
-
-
-
(IY+d) = (IY+d) | bit
SET b,r
11001011
11-b--r-
4 (2,2)
r
-
-
-
-
r = r | bit
11101101
01101111
4 (2,2)
-
-
-
-
SU = {SU[5:0], 0x01}
P
SLA (HL)
11001011
00100110
10 (2,2,1,2,3)
f
b
*
*
L
*
(HL) = {(HL)[6,0],0}; CY = (HL)[7]
SLA (IX+d)
11011101
11001011
----d---
00100110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IX+d) = {(IX+d)[6,0],0}; CY = (IX+d)[7]
SLA (IY+d)
11111101
11001011
----d---
00100110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IY+d) = {(IY+d)[6,0],0}; CY = (IY+d)[7]
11001011
00100-r-
4 (2,2)
fr
*
*
L
*
r = {r[6,0],0}; CY = r[7]
SRA (HL)
11001011
00101110
10 (2,2,1,2,3)
f
b
*
*
L
*
(HL) = {(HL)[7],(HL)[7,1]}; CY = (HL)[0]
SRA (IX+d)
11011101
11001011
----d---
00101110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IX+d) = {(IX+d)[7],(IX+d)[7,1]}; CY = (IX+d)[0]
SRA (IY+d)
11111101
11001011
----d---
00101110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IY+d) = {(IY+d)[7],(IY+d)[7,1]}; CY = (IY+d)[0]
11001011
00101-r-
4 (2,2)
fr
*
*
L
*
r = {r[7],r[7,1]}; CY = r[0]
SRL (HL)
11001011
00111110
10 (2,2,1,2,3)
f
b
*
*
L
*
(HL) = {0,(HL)[7,1]}; CY = (HL)[0]
SRL (IX+d)
11011101
11001011
----d---
00111110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IX+d) = {0,(IX+d)[7,1]}; CY = (IX+d)[0]
SRL (IY+d)
11111101
11001011
----d---
00111110
13 (2,2,2,2,2,3)
f
b
*
*
L
*
(IY+d) = {0,(IY+d)[7,1]}; CY = (IY+d)[0]
11001011
00111-r-
4 (2,2)
fr
*
*
L
*
r = {0,r[7,1]}; CY = r[0]
SUB (HL)
10010110
5 (2,1,2)
fr
s
*
*
V
*
A = A - (HL)
SUB (IX+d)
11011101
10010110
----d---
9 ( 2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IX+d)
SUB (IY+d)
11111101
10010110
----d---
9 ( 2,2,2,1,2)
fr
s
*
*
V
*
A = A - (IY+d)
11010110
----n---
4 (2,2)
fr
*
*
V
*
A = A - n
10010-r-
2
fr
*
*
V
*
A = A - r
11101101
01111101
4 (2,2)
-
-
-
-
SU = {SU[1:0],SU[7:2]}
P
11101101
01110101
10 (2,2,3,3)
-
-
-
-
SP = SP-2; PC = {R,v}
where v = SYSCALL offset
11101101
11000000
8+8i (2,2,2,(2,2,3,1)i,2)
-
-
-
*
{CY:DE':(HL)} = (IX) + [(IY)*DE+DE'+CY]; BC = BC-1; IX = IX+1; IY = IY+1; HL = HL+1; repeat while BC != 0
11101101
11001000
8+8i (2,2,2,(2,2,3,1)i,2)
-
-
-
*
{CY:DE':(HL)} = (IX) - [(IY)*DE+DE'+CY]; BC = BC-1; IX = IX+1; IY = IY+1; HL = HL+1; repeat while BC != 0
XOR (HL)
10101110
5 (2,1,2)
fr
s
*
*
L
0
A = [A & ~(HL)] | [~A & (HL)]
XOR (IX+d)
11011101
10101110
----d---
9 (2,2,2,1,2)
fr
s
*
*
L
0
A = [A & ~(IX+d)] | [~A & (IX+d)]
XOR (IY+d)
11111101
10101110
----d---
9 (2,2,2,1,2)
fr
s
*
*
L
0
A = [A & ~(IY+d)] | [~A & (IY+d)]
11101110
----n---
4 (2,2)
fr
*
*
L
0
A = [A & ~n] | [~A & n]
10101-r-
2
fr
*
*
L
0
A = [A & ~r] | [~A & r]


<< Previous | Index | Next >>
Z-World, Inc.
www.zworld.com
Phone: 1.530.757.3737
Fax: 1.530.757.3792
Rabbit Semiconductor
www.rabbitsemiconductor.com
Phone: 1.530.757.8400
Fax: 1.530.757.8402