S1C88 InstructionSet
I'm too tired today to check everything, I'll continue tomorrow.
Contents
- 1 NOP = No Operation
- 2 MOV = Move Register
- 3 ADD = Addition
- 4 SUB = Subtraction
- 5 ADC = Addition with Carry
- 6 SBC = Subtraction with Carry
- 7 CMP = Compare
- 8 TST = Test Bits
- 9 AND = Logical AND
- 10 OR = Logical Inclusive-OR
- 11 XOR = Logical Exclusive-OR
- 12 INC = Increase Register by 1
- 13 DEC = Decrease Register by 1
- 14 PUSH = Push Register into Stack
- 15 POP = Pop Register from Stack
- 16 XCHG = Exchange Registers
- 17 PACK = Pack and Unpack Nibbles
- 18 SWAP = Swap Low and High Nibbles
- 19 CALL = Call routine
- 20 JMP = Jump routine (Branch routine)
- 21 RET = Return from routine
- 22 SHL = Shift Left
- 23 SAL = Shift Alternative Left
- 24 SHR = Shift Right
- 25 SAR = Shift Alternative Right
- 26 ROL = Rotate Left
- 27 ROLC = Rotate Left though Carry
- 28 ROR = Rotate Right
- 29 RORC = Rotate Right though Carry
- 30 NOT = Logical NOT
- 31 NEG = Negate
- 32 EX = Expand Register
- 33 HALT = Halt CPU
- 34 STOP = Stop CPU
- 35 MUL = Multiply
- 36 DIV = Divide
NOP = No Operation
Hex | Mnemonic | Cycles |
---|---|---|
FF | NOP | 8 |
Flags Affected: None
MOV = Move Register
Hex | Mnemonic | Cycles |
---|---|---|
40 | MOV A, A | 4 |
41 | MOV A, B | 4 |
42 | MOV A, L | 4 |
43 | MOV A, H | 4 |
44 nn | MOV A, [N+#nn] | 12 |
45 | MOV A, [HL] | 8 |
46 | MOV A, [X] | 8 |
47 | MOV A, [Y] | 8 |
48 | MOV B, A | 4 |
49 | MOV B, B | 4 |
4A | MOV B, L | 4 |
4B | MOV B, H | 4 |
4C nn | MOV B, [N+#nn] | 12 |
4D | MOV B, [HL] | 8 |
4E | MOV B, [X] | 8 |
4F | MOV B, [Y] | 8 |
50 | MOV L, A | 4 |
51 | MOV L, B | 4 |
52 | MOV L, L | 4 |
53 | MOV L, H | 4 |
54 nn | MOV L, [N+#nn] | 12 |
55 | MOV L, [HL] | 8 |
56 | MOV L, [X] | 8 |
57 | MOV L, [Y] | 8 |
58 | MOV H, A | 4 |
59 | MOV H, B | 4 |
5A | MOV H, L | 4 |
5B | MOV H, H | 4 |
5C nn | MOV H, [N+#nn] | 12 |
5D | MOV H, [HL] | 8 |
5E | MOV H, [X] | 8 |
5F | MOV H, [Y] | 8 |
60 | MOV [X], A | 8 |
61 | MOV [X], B | 8 |
62 | MOV [X], L | 8 |
63 | MOV [X], H | 8 |
64 nn | MOV [X], [N+#nn] | 16 |
65 | MOV [X], [HL] | 12 |
66 | MOV [X], [X] | 12 |
67 | MOV [X], [Y] | 12 |
68 | MOV [HL], A | 8 |
69 | MOV [HL], B | 8 |
6A | MOV [HL], L | 8 |
6B | MOV [HL], H | 8 |
6C nn | MOV [HL], [N+#nn] | 16 |
6D | MOV [HL], [HL] | 12 |
6E | MOV [HL], [X] | 12 |
6F | MOV [HL], [Y] | 12 |
70 | MOV [Y], A | 8 |
71 | MOV [Y], B | 8 |
72 | MOV [Y], L | 8 |
73 | MOV [Y], H | 8 |
74 nn | MOV [Y], [N+#nn] | 16 |
75 | MOV [Y], [HL] | 12 |
76 | MOV [Y], [X] | 12 |
77 | MOV [Y], [Y] | 12 |
78 nn | MOV [N+#nn], A | 12 |
79 nn | MOV [N+#nn], B | 12 |
7A nn | MOV [N+#nn], L | 12 |
7B nn | MOV [N+#nn], H | 12 |
7D nn | MOV [N+#nn], [HL] | 16 |
7E nn | MOV [N+#nn], [X] | 16 |
7F nn | MOV [N+#nn], [Y] | 16 |
9F nn | MOV F, #nn | 12 |
B0 nn | MOV A, #nn | 8 |
B1 nn | MOV B, #nn | 8 |
B2 nn | MOV L, #nn | 8 |
B3 nn | MOV H, #nn | 8 |
B4 nn | MOV N, #nn | 8 |
B5 nn | MOV [HL], #nn | 12 |
B6 nn | MOV [X], #nn | 12 |
B7 nn | MOV [Y], #nn | 12 |
DD nn nn | MOV [N+#nn], #nn | 16 |
CE 40 nn | MOV A, [X+#nn] | 16 |
CE 41 nn | MOV A, [Y+#nn] | 16 |
CE 42 | MOV A, [X+L] | 16 |
CE 43 | MOV A, [Y+L] | 16 |
CE 48 nn | MOV B, [X+#nn] | 16 |
CE 49 nn | MOV B, [Y+#nn] | 16 |
CE 4A | MOV B, [X+L] | 16 |
CE 4B | MOV B, [Y+L] | 16 |
CE 50 nn | MOV L, [X+#nn] | 16 |
CE 51 nn | MOV L, [Y+#nn] | 16 |
CE 52 | MOV L, [X+L] | 16 |
CE 53 | MOV L, [Y+L] | 16 |
CE 58 nn | MOV H, [X+#nn] | 16 |
CE 59 nn | MOV H, [Y+#nn] | 16 |
CE 5A | MOV H, [X+L] | 16 |
CE 5B | MOV H, [Y+L] | 16 |
CE 44 nn | MOV [X+#nn], A | 16 |
CE 45 nn | MOV [Y+#nn], A | 16 |
CE 46 | MOV [X+L], A | 16 |
CE 47 | MOV [Y+L], A | 16 |
CE 4C nn | MOV [X+#nn], B | 16 |
CE 4D nn | MOV [Y+#nn], B | 16 |
CE 4E | MOV [X+L], B | 16 |
CE 4F | MOV [Y+L], B | 16 |
CE 54 nn | MOV [X+#nn], L | 16 |
CE 55 nn | MOV [Y+#nn], L | 16 |
CE 56 | MOV [X+L], L | 16 |
CE 57 | MOV [Y+L], L | 16 |
CE 5C nn | MOV [X+#nn], H | 16 |
CE 5D nn | MOV [Y+#nn], H | 16 |
CE 5E | MOV [X+L], H | 16 |
CE 5F | MOV [Y+L], H | 16 |
CE 60 nn | MOV [HL], [X+#nn] | 20 |
CE 61 nn | MOV [HL], [Y+#nn] | 20 |
CE 62 | MOV [HL], [X+L] | 20 |
CE 63 | MOV [HL], [Y+L] | 20 |
CE 68 nn | MOV [X], [X+#nn] | 20 |
CE 69 nn | MOV [X], [Y+#nn] | 20 |
CE 6A | MOV [X], [X+L] | 20 |
CE 6B | MOV [X], [Y+L] | 20 |
CE 78 nn | MOV [Y], [X+#nn] | 20 |
CE 79 nn | MOV [Y], [Y+#nn] | 20 |
CE 7A | MOV [Y], [X+L] | 20 |
CE 7B | MOV [Y], [Y+L] | 20 |
B8 nn nn | MOV BA, [#nnnn] | 20 |
B9 nn nn | MOV HL, [#nnnn] | 20 |
BA nn nn | MOV X, [#nnnn] | 20 |
BB nn nn | MOV Y, [#nnnn] | 20 |
BC nn nn | MOV [#nnnn], BA | 20 |
BD nn nn | MOV [#nnnn], HL | 20 |
BE nn nn | MOV [#nnnn], X | 20 |
BF nn nn | MOV [#nnnn], Y | 20 |
C4 nn nn | MOV BA, #nnnn | 12 |
C5 nn nn | MOV HL, #nnnn | 12 |
C6 nn nn | MOV X, #nnnn | 12 |
C7 nn nn | MOV Y, #nnnn | 12 |
CF 6E nn nn | MOV SP, #nnnn | 16 |
CE C0 | MOV A, N | 8 |
CE C1 | MOV A, F | 8 |
CE C8 | MOV A, V | 8 |
CE C9 | MOV A, I | 8 |
CE CA | MOV A, XI | 8 |
CE CB | MOV A, YI | 8 |
CE C2 | MOV N, A | 8 |
CE C3 | MOV F, A | 12 |
CE CC | MOV U, A | 12 |
CE CD | MOV I, A | 8 |
CE CE | MOV XI, A | 8 |
CE CF | MOV YI, A | 8 |
CE C4 nn | MOV U, #nn | 16 |
CE C5 nn | MOV I, #nn | 12 |
CE C6 nn | MOV XI, #nn | 12 |
CE C7 nn | MOV YI, #nn | 12 |
CE D0 nn nn | MOV A, [#nnnn] | 20 |
CE D1 nn nn | MOV B, [#nnnn] | 20 |
CE D2 nn nn | MOV L, [#nnnn] | 20 |
CE D3 nn nn | MOV H, [#nnnn] | 20 |
CE D4 nn nn | MOV [#nnnn], A | 20 |
CE D5 nn nn | MOV [#nnnn], B | 20 |
CE D6 nn nn | MOV [#nnnn], L | 20 |
CE D7 nn nn | MOV [#nnnn], H | 20 |
CF 70 nn | MOV BA, [SP+#nn] | 24 |
CF 71 nn | MOV HL, [SP+#nn] | 24 |
CF 72 nn | MOV X, [SP+#nn] | 24 |
CF 73 nn | MOV Y, [SP+#nn] | 24 |
CF 74 nn | MOV [SP+#nn], BA | 24 |
CF 75 nn | MOV [SP+#nn], HL | 24 |
CF 76 nn | MOV [SP+#nn], X | 24 |
CF 77 nn | MOV [SP+#nn], Y | 24 |
CF 78 nn nn | MOV SP, [#nnnn] | 24 |
CF 7C nn nn | MOV [#nnnn], SP | 24 |
CF C0 | MOV BA, [HL] | 20 |
CF C1 | MOV HL, [HL] | 20 |
CF C2 | MOV X, [HL] | 20 |
CF C3 | MOV Y, [HL] | 20 |
CF D0 | MOV BA, [X] | 20 |
CF D1 | MOV HL, [X] | 20 |
CF D2 | MOV X, [X] | 20 |
CF D3 | MOV Y, [X] | 20 |
CF D8 | MOV BA, [Y] | 20 |
CF D9 | MOV HL, [Y] | 20 |
CF DA | MOV X, [Y] | 20 |
CF DB | MOV Y, [Y] | 20 |
CF C4 | MOV [HL], BA | 20 |
CF C5 | MOV [HL], HL | 20 |
CF C6 | MOV [HL], X | 20 |
CF C7 | MOV [HL], Y | 20 |
CF D4 | MOV [X], BA | 20 |
CF D5 | MOV [X], HL | 20 |
CF D6 | MOV [X], X | 20 |
CF D7 | MOV [X], Y | 20 |
CF DC | MOV [Y], BA | 20 |
CF DD | MOV [Y], HL | 20 |
CF DE | MOV [Y], X | 20 |
CF DF | MOV [Y], Y | 20 |
CF E0 | MOV BA, BA | 8 |
CF E1 | MOV BA, HL | 8 |
CF E2 | MOV BA, X | 8 |
CF E3 | MOV BA, Y | 8 |
CF E4 | MOV HL, BA | 8 |
CF E5 | MOV HL, HL | 8 |
CF E6 | MOV HL, X | 8 |
CF E7 | MOV HL, Y | 8 |
CF E8 | MOV X, BA | 8 |
CF E9 | MOV X, HL | 8 |
CF EA | MOV X, X | 8 |
CF EB | MOV X, Y | 8 |
CF EC | MOV Y, BA | 8 |
CF ED | MOV Y, HL | 8 |
CF EE | MOV Y, X | 8 |
CF EF | MOV Y, Y | 8 |
CF F0 | MOV SP, BA | 8 |
CF F1 | MOV SP, HL | 8 |
CF F2 | MOV SP, X | 8 |
CF F3 | MOV SP, Y | 8 |
CF F4 | MOV HL, SP | 8 |
CF F5 | MOV HL, PC | 8 |
CF F8 | MOV BA, SP | 8 |
CF F9 | MOV BA, PC | 8 |
CF FA | MOV X, SP | 8 |
CF FE | MOV Y, SP | 8 |
Flags Affected: None
ADD = Addition
Hex | Mnemonic | Cycles |
---|---|---|
00 | ADD A, A | 8 |
01 | ADD A, B | 8 |
02 nn | ADD A, #nn | 8 |
03 | ADD A, [HL] | 8 |
04 nn | ADD A, [N+#nn] | 12 |
05 nn nn | ADD A, [#nnnn] | 16 |
06 | ADD A, [X] | 8 |
07 | ADD A, [Y] | 8 |
C0 nn nn | ADD BA, #nnnn | 12 |
C1 nn nn | ADD HL, #nnnn | 12 |
C2 nn nn | ADD X, #nnnn | 12 |
C3 nn nn | ADD Y, #nnnn | 12 |
CE 00 nn | ADD A, [X+#nn] | 16 |
CE 01 nn | ADD A, [Y+#nn] | 16 |
CE 02 | ADD A, [X+L] | 16 |
CE 03 | ADD A, [Y+L] | 16 |
CE 04 | ADD [HL], A | 16 |
CE 05 nn | ADD [HL], #nn | 20 |
CE 06 | ADD [HL], [X] | 20 |
CE 07 | ADD [HL], [Y] | 20 |
CF 00 | ADD BA, BA | 16 |
CF 01 | ADD BA, HL | 16 |
CF 02 | ADD BA, X | 16 |
CF 03 | ADD BA, Y | 16 |
CF 20 | ADD HL, BA | 16 |
CF 21 | ADD HL, HL | 16 |
CF 22 | ADD HL, X | 16 |
CF 23 | ADD HL, Y | 16 |
CF 40 | ADD X, BA | 16 |
CF 41 | ADD X, HL | 16 |
CF 42 | ADD Y, BA | 16 |
CF 43 | ADD Y, HL | 16 |
CF 44 | ADD SP, BA | 16 |
CF 45 | ADD SP, HL | 16 |
CF 68 nn nn | ADD SP, #nnnn | 16 |
Flags Affected: All
SUB = Subtraction
Hex | Mnemonic | Cycles |
---|---|---|
10 | SUB A, A | 8 |
11 | SUB A, B | 8 |
12 nn | SUB A, #nn | 8 |
13 | SUB A, [HL] | 8 |
14 nn | SUB A, [N+#nn] | 12 |
15 nn nn | SUB A, [#nnnn] | 16 |
16 | SUB A, [X] | 8 |
17 | SUB A, [Y] | 8 |
D0 nn nn | SUB BA, #nnnn | 12 |
D1 nn nn | SUB HL, #nnnn | 12 |
D2 nn nn | SUB X, #nnnn | 12 |
D3 nn nn | SUB Y, #nnnn | 12 |
CE 10 nn | SUB A, [X+#nn] | 16 |
CE 11 nn | SUB A, [Y+#nn] | 16 |
CE 12 | SUB A, [X+L] | 16 |
CE 13 | SUB A, [Y+L] | 16 |
CE 14 | SUB [HL], A | 16 |
CE 15 nn | SUB [HL], #nn | 20 |
CE 16 | SUB [HL], [X] | 20 |
CE 17 | SUB [HL], [Y] | 20 |
CF 08 | SUB BA, BA | 16 |
CF 09 | SUB BA, HL | 16 |
CF 0A | SUB BA, X | 16 |
CF 0B | SUB BA, Y | 16 |
CF 28 | SUB HL, BA | 16 |
CF 29 | SUB HL, HL | 16 |
CF 2A | SUB HL, X | 16 |
CF 2B | SUB HL, Y | 16 |
CF 48 | SUB X, BA | 16 |
CF 49 | SUB X, HL | 16 |
CF 4A | SUB Y, BA | 16 |
CF 4B | SUB Y, HL | 16 |
CF 4C | SUB SP, BA | 16 |
CF 4D | SUB SP, HL | 16 |
CF 6A nn nn | SUB SP, #nnnn | 16 |
Flags Affected: All
ADC = Addition with Carry
Hex | Mnemonic | Cycles |
---|---|---|
08 | ADC A, A | 8 |
09 | ADC A, B | 8 |
0A nn | ADC A, #nn | 8 |
0B | ADC A, [HL] | 8 |
0C nn | ADC A, [N+#nn] | 12 |
0D nn nn | ADC A, [#nnnn] | 16 |
0E | ADC A, [X] | 8 |
0F | ADC A, [Y] | 8 |
CE 08 nn | ADC A, [X+#nn] | 16 |
CE 09 nn | ADC A, [Y+#nn] | 16 |
CE 0A | ADC A, [X+L] | 16 |
CE 0B | ADC A, [Y+L] | 16 |
CE 0C | ADC [HL], A | 16 |
CE 0D nn | ADC [HL], #nn | 20 |
CE 0E | ADC [HL], [X] | 20 |
CE 0F | ADC [HL], [Y] | 20 |
CF 04 | ADC BA, BA | 16 |
CF 05 | ADC BA, HL | 16 |
CF 06 | ADC BA, X | 16 |
CF 07 | ADC BA, Y | 16 |
CF 24 | ADC HL, BA | 16 |
CF 25 | ADC HL, HL | 16 |
CF 26 | ADC HL, X | 16 |
CF 27 | ADC HL, Y | 16 |
CF 60 nn nn | ADC BA, #nnnn | 16 |
CF 61 nn nn | ADC HL, #nnnn | 16 |
Flags Affected: All
SBC = Subtraction with Carry
Hex | Mnemonic | Cycles |
---|---|---|
18 | SBC A, A | 8 |
19 | SBC A, B | 8 |
1A nn | SBC A, #nn | 8 |
1B | SBC A, [HL] | 8 |
1C nn | SBC A, [N+#nn] | 12 |
1D nn nn | SBC A, [#nnnn] | 16 |
1E | SBC A, [X] | 8 |
1F | SBC A, [Y] | 8 |
CE 18 nn | SBC A, [X+#nn] | 16 |
CE 19 nn | SBC A, [Y+#nn] | 16 |
CE 1A | SBC A, [X+L] | 16 |
CE 1B | SBC A, [Y+L] | 16 |
CE 1C | SBC [HL], A | 16 |
CE 1D nn | SBC [HL], #nn | 20 |
CE 1E | SBC [HL], [X] | 20 |
CE 1F | SBC [HL], [Y] | 20 |
CF 0C | SBC BA, BA | 16 |
CF 0D | SBC BA, HL | 16 |
CF 0E | SBC BA, X | 16 |
CF 0F | SBC BA, Y | 16 |
CF 2C | SBC HL, BA | 16 |
CF 2D | SBC HL, HL | 16 |
CF 2E | SBC HL, X | 16 |
CF 2F | SBC HL, Y | 16 |
CF 62 nn nn | SBC BA, #nnnn | 16 |
CF 63 nn nn | SBC HL, #nnnn | 16 |
Flags Affected: All
CMP = Compare
Hex | Mnemonic | Cycles |
---|---|---|
30 | CMP A, A | 8 |
31 | CMP A, B | 8 |
32 nn | CMP A, #nn | 8 |
33 | CMP A, [HL] | 8 |
34 nn | CMP A, [N+#nn] | 12 |
35 nn nn | CMP A, [#nnnn] | 16 |
36 | CMP A, [X] | 8 |
37 | CMP A, [Y] | 8 |
D4 nn nn | CMP BA, #nnnn | 12 |
D5 nn nn | CMP HL, #nnnn | 12 |
D6 nn nn | CMP X, #nnnn | 12 |
D7 nn nn | CMP Y, #nnnn | 12 |
DB nn nn | CMP [N+#nn], #nn | 16 |
CE 30 nn | CMP A, [X+#nn] | 16 |
CE 31 nn | CMP A, [Y+#nn] | 16 |
CE 32 | CMP A, [X+L] | 16 |
CE 33 | CMP A, [Y+L] | 16 |
CE 34 | CMP [HL], A | 16 |
CE 35 nn | CMP [HL], #nn | 20 |
CE 36 | CMP [HL], [X] | 20 |
CE 37 | CMP [HL], [Y] | 20 |
CE BC nn | CMP B, #nn | 12 |
CE BD nn | CMP L, #nn | 12 |
CE BE nn | CMP H, #nn | 12 |
CF 18 | CMP BA, BA | 16 |
CF 19 | CMP BA, HL | 16 |
CF 1A | CMP BA, X | 16 |
CF 1B | CMP BA, Y | 16 |
CF 38 | CMP HL, BA | 16 |
CF 39 | CMP HL, HL | 16 |
CF 3A | CMP HL, X | 16 |
CF 3B | CMP HL, Y | 16 |
CF 5C | CMP SP, BA | 16 |
CF 5D | CMP SP, HL | 16 |
CF 6C nn nn | CMP SP, #nnnn | 16 |
Flags Affected: All
TST = Test Bits
Hex | Mnemonic | Cycles |
---|---|---|
94 | TST A, B | 8 |
95 nn | TST [HL], #nn | 12 |
96 nn | TST A, #nn | 8 |
97 nn | TST B, #nn | 8 |
DC nn nn | TST [N+#nn], #nn | 16 |
Flags Affected: Zero, Sign
AND = Logical AND
Hex | Mnemonic | Cycles |
---|---|---|
20 | AND A, A | 8 |
21 | AND A, B | 8 |
22 nn | AND A, #nn | 8 |
23 | AND A, [HL] | 8 |
24 nn | AND A, [N+#nn] | 12 |
25 nn nn | AND A, [#nnnn] | 16 |
26 | AND A, [X] | 8 |
27 | AND A, [Y] | 8 |
9C nn | AND F, #nn | 12 |
CE B0 nn | AND B, #nn | 12 |
CE B1 nn | AND L, #nn | 12 |
CE B2 nn | AND H, #nn | 12 |
D8 nn nn | AND [N+#nn], #nn | 20 |
CE 20 nn | AND A, [X+#nn] | 16 |
CE 21 nn | AND A, [Y+#nn] | 16 |
CE 22 | AND A, [X+L] | 16 |
CE 23 | AND A, [Y+L] | 16 |
CE 24 | AND [HL], A | 16 |
CE 25 nn | AND [HL], #nn | 20 |
CE 26 | AND [HL], [X] | 20 |
CE 27 | AND [HL], [Y] | 20 |
Flags Affected: Zero, Sign
OR = Logical Inclusive-OR
Hex | Mnemonic | Cycles |
---|---|---|
28 | OR A, A | 8 |
29 | OR A, B | 8 |
2A nn | OR A, #nn | 8 |
2B | OR A, [HL] | 8 |
2C nn | OR A, [N+#nn] | 12 |
2D nn nn | OR A, [#nnnn] | 16 |
2E | OR A, [X] | 8 |
2F | OR A, [Y] | 8 |
9D nn | OR F, #nn | 12 |
CE B4 nn | OR B, #nn | 12 |
CE B5 nn | OR L, #nn | 12 |
CE B6 nn | OR H, #nn | 12 |
D9 nn nn | OR [N+#nn], #nn | 20 |
CE 28 nn | OR A, [X+#nn] | 16 |
CE 29 nn | OR A, [Y+#nn] | 16 |
CE 2A | OR A, [X+L] | 16 |
CE 2B | OR A, [Y+L] | 16 |
CE 2C | OR [HL], A | 16 |
CE 2D nn | OR [HL], #nn | 20 |
CE 2E | OR [HL], [X] | 20 |
CE 2F | OR [HL], [Y] | 20 |
Flags Affected: Zero, Sign
XOR = Logical Exclusive-OR
Hex | Mnemonic | Cycles |
---|---|---|
38 | XOR A, A | 8 |
39 | XOR A, B | 8 |
3A nn | XOR A, #nn | 8 |
3B | XOR A, [HL] | 8 |
3C nn | XOR A, [N+#nn] | 12 |
3D nn nn | XOR A, [#nnnn] | 16 |
3E | XOR A, [X] | 8 |
3F | XOR A, [Y] | 8 |
9E nn | XOR F, #nn | 12 |
CE B8 nn | XOR B, #nn | 12 |
CE B9 nn | XOR L, #nn | 12 |
CE BA nn | XOR H, #nn | 12 |
DA nn nn | XOR [N+#nn], #nn | 20 |
CE 38 nn | XOR A, [X+#nn] | 16 |
CE 39 nn | XOR A, [Y+#nn] | 16 |
CE 3A | XOR A, [X+L] | 16 |
CE 3B | XOR A, [Y+L] | 16 |
CE 3C | XOR [HL], A | 16 |
CE 3D nn | XOR [HL], #nn | 20 |
CE 3E | XOR [HL], [X] | 20 |
CE 3F | XOR [HL], [Y] | 20 |
Flags Affected: Zero, Sign
INC = Increase Register by 1
Hex | Mnemonic | Cycles |
---|---|---|
80 | INC A | 8 |
81 | INC B | 8 |
82 | INC L | 8 |
83 | INC H | 8 |
84 | INC N | 8 |
85 nn | INC [N+#nn] | 16 |
86 | INC [HL] | 12 |
87 | INC SP | 8 |
90 | INC BA | 8 |
91 | INC HL | 8 |
92 | INC X1 | 8 |
93 | INC X2 | 8 |
Flags Affected: Zero
DEC = Decrease Register by 1
Hex | Mnemonic | Cycles |
---|---|---|
88 | DEC A | 8 |
89 | DEC B | 8 |
8A | DEC L | 8 |
8B | DEC H | 8 |
8C | DEC N | 8 |
8D nn | DEC [N+#nn] | 16 |
8E | DEC [HL] | 12 |
8F | DEC SP | 8 |
98 | DEC BA | 8 |
99 | DEC HL | 8 |
9A | DEC X1 | 8 |
9B | DEC X2 | 8 |
Flags Affected: Zero
PUSH = Push Register into Stack
Hex | Mnemonic | Cycles |
---|---|---|
A0 | PUSH BA | 16 |
A1 | PUSH HL | 16 |
A2 | PUSH X | 16 |
A3 | PUSH Y | 16 |
A4 | PUSH N | 12 |
A5 | PUSH I | 12 |
A6 | PUSHX | 16 |
A7 | PUSH F | 12 |
CF B0 | PUSH A | 12 |
CF B1 | PUSH B | 12 |
CF B2 | PUSH L | 12 |
CF B3 | PUSH H | 12 |
CF B8 | PUSHA | 48 |
CF B9 | PUSHAX | 60 |
Flags Affected: None
POP = Pop Register from Stack
Hex | Mnemonic | Cycles |
---|---|---|
A8 | POP BA | 12 |
A9 | POP HL | 12 |
AA | POP X | 12 |
AB | POP Y | 12 |
AC | POP N | 8 |
AD | POP I | 8 |
AE | POPX | 12 |
AF | POP F | 8 |
CF B4 | POP A | 12 |
CF B5 | POP B | 12 |
CF B6 | POP L | 12 |
CF B7 | POP H | 12 |
CF BC | POPA | 32 |
CF BD | POPAX | 40 |
Flags Affected: None
XCHG = Exchange Registers
Hex | Mnemonic | Cycles |
---|---|---|
C8 | XCHG BA, HL | 12 |
C9 | XCHG BA, X | 12 |
CA | XCHG BA, Y | 12 |
CB | XCHG BA, SP | 12 |
CC | XCHG A, B | 8 |
CD | XCHG A, [HL] | 12 |
Flags Affected: None
PACK = Pack and Unpack Nibbles
Hex | Mnemonic | Cycles |
---|---|---|
DE | PACK | 8 |
DF | UNPACK | 8 |
Flags Affected: None
SWAP = Swap Low and High Nibbles
Hex | Mnemonic | Cycles |
---|---|---|
F6 | SWAP A | 8 |
F7 | SWAP [HL] | 12 |
Flags Affected: None
CALL = Call routine
Hex | Mnemonic | Cycles |
---|---|---|
E0 nn | CALLBC #nn | 20 / 8 (Not met) |
E1 nn | CALLBNC #nn | 20 / 8 (Not met) |
E2 nn | CALLBZ #nn | 20 / 8 (Not met) |
E3 nn | CALLBNZ #nn | 20 / 8 (Not met) |
E8 nn nn | CALLWC #nnnn | 24 / 12 (Not met) |
E9 nn nn | CALLWNC #nnnn | 24 / 12 (Not met) |
EA nn nn | CALLWZ #nnnn | 24 / 12 (Not met) |
EB nn nn | CALLWNZ #nnnn | 24 / 12 (Not met) |
F0 nn | CALLB #nn | 20 |
F2 nn nn | CALLW #nnnn | 24 |
FB nn nn | CALL [#nnnn] | 20 |
FC nn | CINT #nn | 20 |
CE F0 nn | CALLBL #nn | 24 / 12 (Not met) |
CE F1 nn | CALLBLE #nn | 24 / 12 (Not met) |
CE F2 nn | CALLBG #nn | 24 / 12 (Not met) |
CE F3 nn | CALLBGE #nn | 24 / 12 (Not met) |
CE F4 nn | CALLBO #nn | 24 / 12 (Not met) |
CE F5 nn | CALLBNO #nn | 24 / 12 (Not met) |
CE F6 nn | CALLBP #nn | 24 / 12 (Not met) |
CE F7 nn | CALLBNP #nn | 24 / 12 (Not met) |
CE F8 nn | CALLBNX0 #nn | 24 / 12 (Not met) |
CE F9 nn | CALLBNX1 #nn | 24 / 12 (Not met) |
CE FA nn | CALLBNX2 #nn | 24 / 12 (Not met) |
CE FB nn | CALLBNX3 #nn | 24 / 12 (Not met) |
CE FC nn | CALLBX0 #nn | 24 / 12 (Not met) |
CE FD nn | CALLBX1 #nn | 24 / 12 (Not met) |
CE FE nn | CALLBX2 #nn | 24 / 12 (Not met) |
CE FF nn | CALLBX3 #nn | 24 / 12 (Not met) |
Flags Affected: None
JMP = Jump routine (Branch routine)
Hex | Mnemonic | Cycles |
---|---|---|
E4 nn | JBC #nn | 8 |
E5 nn | JBNC #nn | 8 |
E6 nn | JBZ #nn | 8 |
E7 nn | JBNZ #nn | 8 |
EC nn nn | JWC #nnnn | 12 |
ED nn nn | JWNC #nnnn | 12 |
EE nn nn | JWZ #nnnn | 12 |
EF nn nn | JWNZ #nnnn | 12 |
F1 nn | JMPB #nn | 8 |
F3 nn nn | JMPW #nnnn | 12 |
F4 | JMP HL | 8 |
F5 nn | JDBNZ #nn | 16 |
FD nn | JINT #nn | 8 |
CE E0 nn | JBL #nn | 12 |
CE E1 nn | JBLE #nn | 12 |
CE E2 nn | JBG #nn | 12 |
CE E3 nn | JBGE #nn | 12 |
CE E4 nn | JBO #nn | 12 |
CE E5 nn | JBNO #nn | 12 |
CE E6 nn | JBP #nn | 12 |
CE E7 nn | JBNP #nn | 12 |
CE E8 nn | JBNX0 #nn | 12 |
CE E9 nn | JBNX1 #nn | 12 |
CE EA nn | JBNX2 #nn | 12 |
CE EB nn | JBNX3 #nn | 12 |
CE EC nn | JBX0 #nn | 12 |
CE ED nn | JBX1 #nn | 12 |
CE EE nn | JBX2 #nn | 12 |
CE EF nn | JBX3 #nn | 12 |
Flags Affected: None
RET = Return from routine
Hex | Mnemonic | Cycles |
---|---|---|
F8 | RET | 8 |
F9 | RETI | 8 |
FA | RETSKIP | 8 |
Flags Affected: None
SHL = Shift Left
Hex | Mnemonic | Cycles |
---|---|---|
CE 84 | SHL A | 12 |
CE 85 | SHL B | 12 |
CE 86 | SHL [N+#nn] | 20 |
CE 87 | SHL [HL] | 16 |
Flags Affected: Zero, Carry, Sign
SAL = Shift Alternative Left
Hex | Mnemonic | Cycles |
---|---|---|
CE 80 | SAL A | 12 |
CE 81 | SAL B | 12 |
CE 82 | SAL [N+#nn] | 20 |
CE 83 | SAL [HL] | 16 |
Flags Affected: All
SHR = Shift Right
Hex | Mnemonic | Cycles |
---|---|---|
CE 8C | SHR A | 12 |
CE 8D | SHR B | 12 |
CE 8E | SHR [N+#nn] | 20 |
CE 8F | SHR [HL] | 16 |
Flags Affected: Zero, Carry, Sign
SAR = Shift Alternative Right
Hex | Mnemonic | Cycles |
---|---|---|
CE 88 | SAR A | 12 |
CE 89 | SAR B | 12 |
CE 8A | SAR [N+#nn] | 20 |
CE 8B | SAR [HL] | 16 |
Flags Affected: All
ROL = Rotate Left
Hex | Mnemonic | Cycles |
---|---|---|
CE 94 | ROL A | 12 |
CE 95 | ROL B | 12 |
CE 96 | ROL [N+#nn] | 20 |
CE 97 | ROL [HL] | 16 |
Flags Affected: Zero, Carry, Sign
ROLC = Rotate Left though Carry
Hex | Mnemonic | Cycles |
---|---|---|
CE 90 | ROLC A | 12 |
CE 91 | ROLC B | 12 |
CE 92 | ROLC [N+#nn] | 20 |
CE 93 | ROLC [HL] | 16 |
Flags Affected: Zero, Carry, Sign
ROR = Rotate Right
Hex | Mnemonic | Cycles |
---|---|---|
CE 9C | ROR A | 12 |
CE 9D | ROR B | 12 |
CE 9E | ROR [N+#nn] | 20 |
CE 9F | ROR [HL] | 16 |
Flags Affected: Zero, Carry, Sign
RORC = Rotate Right though Carry
Hex | Mnemonic | Cycles |
---|---|---|
CE 98 | RORC A | 12 |
CE 99 | RORC B | 12 |
CE 9A | RORC [N+#nn] | 20 |
CE 9B | RORC [HL] | 16 |
Flags Affected: Zero, Carry, Sign
NOT = Logical NOT
Hex | Mnemonic | Cycles |
---|---|---|
CE A0 | NOT A | 12 |
CE A1 | NOT B | 12 |
CE A2 | NOT [N+#nn] | 20 |
CE A3 | NOT [HL] | 16 |
Flags Affected: Zero, Sign
NEG = Negate
Hex | Mnemonic | Cycles |
---|---|---|
CE A4 | NEG A | 12 |
CE A5 | NEG B | 12 |
CE A6 | NEG [N+#nn] | 20 |
CE A7 | NEG [HL] | 16 |
Flags Affected: All
EX = Expand Register
Hex | Mnemonic | Cycles |
---|---|---|
CE A8 | EX BA, A | 12 |
Flags Affected: None
HALT = Halt CPU
Hex | Mnemonic | Cycles |
---|---|---|
CE AE | HALT | 8 |
Flags Affected: None
STOP = Stop CPU
Hex | Mnemonic | Cycles |
---|---|---|
CE AF | STOP | 8 |
Flags Affected: None
MUL = Multiply
Hex | Mnemonic | Cycles |
---|---|---|
CE D8 | MUL L, A | 48 |
Flags Affected: All
DIV = Divide
Hex | Mnemonic | Cycles |
---|---|---|
CE D9 | DIV HL, A | 52 |
Flags Affected: All
Note: Can throw Division by Zero