PM InstructionList
From SublabWiki
Contents |
Move
NOP = No Operation
| Hex | Mnemonic | Cycles |
|---|---|---|
| FF | NOP | 8 |
Flags Affected: None
MOV = Move Register
Flags Affected: None
Arithmetic
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 |
| CF 68 nn nn | ADD SP, #nnnn | 16 |
| CE 00 ss | ADD A, [X+#ss] | 16 |
| CE 01 ss | ADD A, [Y+#ss] | 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 |
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 |
| CF 6A nn nn | SUB SP, #nnnn | 16 |
| CE 10 ss | SUB A, [X+#ss] | 16 |
| CE 11 ss | SUB A, [Y+#ss] | 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 |
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 ss | ADC A, [X+#ss] | 16 |
| CE 09 ss | ADC A, [Y+#ss] | 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 ss | SBC A, [X+#ss] | 16 |
| CE 19 ss | SBC A, [Y+#ss] | 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 |
| CF 6C nn nn | CMP SP, #nnnn | 16 |
| DB nn nn | CMP [N+#nn], #nn | 16 |
| CE 30 ss | CMP A, [X+#ss] | 16 |
| CE 31 ss | CMP A, [Y+#ss] | 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 |
| CE BF nn | CMP N, #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 |
Flags Affected: All
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 X | 8 |
| 93 | INC Y | 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 X | 8 |
| 9B | DEC Y | 8 |
Flags Affected: Zero
NEG = Negate
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE A4 | NEG A | 12 |
| CE A5 | NEG B | 12 |
| CE A6 nn | NEG [N+#nn] | 20 |
| CE A7 | NEG [HL] | 16 |
Flags Affected: All
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
Logic
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 ss | AND A, [X+#ss] | 16 |
| CE 21 ss | AND A, [Y+#ss] | 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 ss | OR A, [X+#ss] | 16 |
| CE 29 ss | OR A, [Y+#ss] | 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 ss | XOR A, [X+#ss] | 16 |
| CE 39 ss | XOR A, [Y+#ss] | 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
NOT = Logical NOT
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE A0 | NOT A | 12 |
| CE A1 | NOT B | 12 |
| CE A2 nn | NOT [N+#nn] | 20 |
| CE A3 | NOT [HL] | 16 |
Flags Affected: Zero, Sign
Shift & Rotate
SHL = Shift Left
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE 84 | SHL A | 12 |
| CE 85 | SHL B | 12 |
| CE 86 nn | SHL [N+#nn] | 20 |
| CE 87 | SHL [HL] | 16 |
Flags Affected: Zero, Carry, Sign
SAL = Shift Arithmetic Left
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE 80 | SAL A | 12 |
| CE 81 | SAL B | 12 |
| CE 82 nn | 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 nn | SHR [N+#nn] | 20 |
| CE 8F | SHR [HL] | 16 |
Flags Affected: Zero, Carry, Sign
SAR = Shift Arithmetic Right
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE 88 | SAR A | 12 |
| CE 89 | SAR B | 12 |
| CE 8A nn | 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 nn | ROL [N+#nn] | 20 |
| CE 97 | ROL [HL] | 16 |
Flags Affected: Zero, Carry, Sign
ROLC = Rotate Left through Carry
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE 90 | ROLC A | 12 |
| CE 91 | ROLC B | 12 |
| CE 92 nn | 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 nn | ROR [N+#nn] | 20 |
| CE 9F | ROR [HL] | 16 |
Flags Affected: Zero, Carry, Sign
RORC = Rotate Right through Carry
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE 98 | RORC A | 12 |
| CE 99 | RORC B | 12 |
| CE 9A nn | RORC [N+#nn] | 20 |
| CE 9B | RORC [HL] | 16 |
Flags Affected: Zero, Carry, Sign
Swap & Expand
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 / UNPACK = 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
EX = Expand Register
| Hex | Mnemonic | Cycles |
|---|---|---|
| CE A8 | EX BA, A | 12 |
Flags Affected: None
Stack
PUSH = Push Register into Stack
| Hex | Mnemonic | Cycles | Regs stacked from top to bottom |
|---|---|---|---|
| A0 | PUSH BA | 16 | B, A |
| A1 | PUSH HL | 16 | H, L |
| A2 | PUSH X | 16 | X(Hi), X(Lo) |
| A3 | PUSH Y | 16 | Y(Hi), Y(Lo) |
| A4 | PUSH N | 12 | N |
| A5 | PUSH I | 12 | I |
| A6 | PUSHX | 16 | XI, YI |
| A7 | PUSH F | 12 | F |
| CF B0 | PUSH A | 12 | A |
| CF B1 | PUSH B | 12 | B |
| CF B2 | PUSH L | 12 | L |
| CF B3 | PUSH H | 12 | H |
| CF B8 | PUSHA | 48 | B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N |
| CF B9 | PUSHAX | 60 | B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N, I, XI, YI |
Flags Affected: None
POP = Pop Register from Stack
| Hex | Mnemonic | Cycles | Regs stacked from top to bottom |
|---|---|---|---|
| A8 | POP BA | 12 | B, A |
| A9 | POP HL | 12 | H, L |
| AA | POP X | 12 | X(Hi), X(Lo) |
| AB | POP Y | 12 | Y(Hi), Y(Lo) |
| AC | POP N | 8 | N |
| AD | POP I | 8 | I |
| AE | POPX | 12 | XI, YI |
| AF | POP F | 8 | F |
| CF B4 | POP A | 12 | A |
| CF B5 | POP B | 12 | B |
| CF B6 | POP L | 12 | L |
| CF B7 | POP H | 12 | H |
| CF BC | POPA | 32 | B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N |
| CF BD | POPAX | 40 | B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N, I, XI, YI |
Flags Affected: None
Branch
CALL = Call routine
| Hex | Mnemonic | Cycles,True | or False | Condition |
|---|---|---|---|---|
| E0 ss | CALLCB #ss*1 | 20 | 8 | Carry=1 |
| E1 ss | CALLNCB #ss*1 | 20 | 8 | Carry=0 |
| E2 ss | CALLZB #ss*1 | 20 | 8 | Zero=1 |
| E3 ss | CALLNZB #ss*1 | 20 | 8 | Zero=0 |
| E8 ss ss | CALLCW #ssss*1 | 24 | 12 | Carry=1 |
| E9 ss ss | CALLNCW #ssss*1 | 24 | 12 | Carry=0 |
| EA ss ss | CALLZW #ssss*1 | 24 | 12 | Zero=1 |
| EB ss ss | CALLNZW #ssss*1 | 24 | 12 | Zero=0 |
| F0 ss | CALLB #ss*1 | 20 | None | None |
| F2 ss ss | CALLW #ssss*1 | 24 | None | None |
| FB nn nn | CALL [#nnnn] | 20 | None | None |
| FC ss | CINT #nn | 20 | None | None |
| CE F0 ss | CALLL #ss | 24 | 12 | Overflow != Sign |
| CE F1 ss | CALLLE #ss | 24 | 12 | (Overflow != Sign) OR (Zero=1) |
| CE F2 ss | CALLG #ss | 24 | 12 | (Overflow == Sign) OR (Zero=0) |
| CE F3 ss | CALLGE #ss | 24 | 12 | Overflow == Sign |
| CE F4 ss | CALLO #ss | 24 | 12 | Overflow=1 |
| CE F5 ss | CALLNO #ss | 24 | 12 | Overflow=0 |
| CE F6 ss | CALLNS #ss | 24 | 12 | Sign=0 |
| CE F7 ss | CALLS #ss | 24 | 12 | Sign=1 |
| CE F8 ss | CALLNX0 #ss | 24 | 12 | ?? |
| CE F9 ss | CALLNX1 #ss | 24 | 12 | ?? |
| CE FA ss | CALLNX2 #ss | 24 | 12 | ?? |
| CE FB ss | CALLNX3 #ss | 24 | 12 | ?? |
| CE FC ss | CALLX0 #ss | 24 | 12 | ?? |
| CE FD ss | CALLX1 #ss | 24 | 12 | ?? |
| CE FE ss | CALLX2 #ss | 24 | 12 | ?? |
| CE FF ss | CALLX3 #ss | 24 | 12 | ?? |
*1: CALL, CALLC, CALLNC, CALLZ and CALLNZ can be used in the assembler to auto-detect the appropriate range.
Flags Affected: None
JMP = Jump to routine
| Hex | Mnemonic | Cycles | Condition |
|---|---|---|---|
| E4 ss | JCB #ss*1 | 8 | Carry=1 |
| E5 ss | JNCB #ss*1 | 8 | Carry=0 |
| E6 ss | JZB #ss*1 | 8 | Zero=1 |
| E7 ss | JNZB #ss*1 | 8 | Zero=0 |
| EC ss ss | JCW #ssss*1 | 12 | Carry=1 |
| ED ss ss | JNCW #ssss*1 | 12 | Carry=0 |
| EE ss ss | JZW #ssss*1 | 12 | Zero=1 |
| EF ss ss | JNZW #ssss*1 | 12 | Zero=0 |
| F1 ss | JMPB #ss*1 | 8 | None |
| F3 ss ss | JMPW #ssss*1 | 12 | None |
| F4 | JMP HL | 8 | None |
| F5 ss | JDBNZ #ss | 16 | B <> 0x00, decrement B before check |
| FD nn | JINT #nn | 8 | None |
| CE E0 ss | JL #ss | 12 | Overflow != Sign |
| CE E1 ss | JLE #ss | 12 | (Overflow != Sign) OR (Zero=1) |
| CE E2 ss | JG #ss | 12 | (Overflow == Sign) OR (Zero=0) |
| CE E3 ss | JGE #ss | 12 | Overflow == Sign |
| CE E4 ss | JO #ss | 12 | Overflow=1 |
| CE E5 ss | JNO #ss | 12 | Overflow=0 |
| CE E6 ss | JNS #ss | 12 | Sign=0 |
| CE E7 ss | JS #ss | 12 | Sign=1 |
| CE E8 ss | JNX0 #ss | 12 | ?? |
| CE E9 ss | JNX1 #ss | 12 | ?? |
| CE EA ss | JNX2 #ss | 12 | ?? |
| CE EB ss | JNX3 #ss | 12 | ?? |
| CE EC ss | JX0 #ss | 12 | ?? |
| CE ED ss | JX1 #ss | 12 | ?? |
| CE EE ss | JX2 #ss | 12 | ?? |
| CE EF ss | JX3 #ss | 12 | ?? |
*1: JMP, JC, JNC, JZ and JNZ can be used in the assembler to auto-detect the appropriate range.
Flags Affected (0xF5 - JDBNZ #ss): Zero
Flags Affected (Others): None
RET = Return from routine
| Hex | Mnemonic | Cycles |
|---|---|---|
| F8 | RET | 8 |
| F9 | RETI | 8 |
| FA | RETSKIP | 8 |
Flags Affected: None
System
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
