Difference between revisions of "S1C88 InstructionSet"

From SublabWiki
Jump to: navigation, search
(RET takes 16 cycles)
 
(114 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= Move =
+
= 8-bit arithmetic and logic operation =
 +
== '''ADD''': Addition ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="12" | [[S1C88_ADD|ADD]]
 +
| A,A
 +
|  0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,B
 +
|  1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,#nn
 +
|  2,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[HL]
 +
|  3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[BR:ll]
 +
|  4,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[hhll]
 +
|  5,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX]
 +
|  6
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY]
 +
|  7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX+dd]
 +
| CE, 0,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY+dd]
 +
| CE, 1,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX+L]
 +
| CE, 2
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY+L]
 +
| CE, 3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| rowspan="4" | [[S1C88_ADD|ADD]]
 +
| [HL],A
 +
| CE, 4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| [HL],#nn
 +
| CE, 5,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| [HL],[IX]
 +
| CE, 6
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| [HL],[IY]
 +
| CE, 7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|}
  
== NOP = No Operation ==
+
== '''ADC''': Addition with carry ==
 
+
{| class="wikitable sortable"
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" colspan="2" | Mnemonic
!Hex
+
! rowspan="2" | Machine Code
!Mnemonic
+
! rowspan="2" | Operation
!Cycles
+
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="12" | [[S1C88_ADC|ADC]]
 +
| A,A
 +
|  8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,B
 +
|  9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,#nn
 +
|  A,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[HL]
 +
|  B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[BR:ll]
 +
|  C,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[hhll]
 +
|  D,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX]
 +
|  E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY]
 +
|  F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX+dd]
 +
| CE, 8,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY+dd]
 +
| CE, 9,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX+L]
 +
| CE, A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY+L]
 +
| CE, B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| rowspan="4" | [[S1C88_ADC|ADC]]
 +
| [HL],A
 +
| CE, C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| [HL],#nn
 +
| CE, D,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| [HL],[IX]
 +
| CE, E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| [HL],[IY]
 +
| CE, F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|FF
 
|[[PM_Opc_NOP|NOP]]
 
|8
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
== '''SUB''': Subtraction ==
 
+
{| class="wikitable sortable"
== MOV = Move Register ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
[[PM_Opc_MOV8|8 Bit Opcode overview]]
+
! rowspan="2" | Operation
 
+
! rowspan="2" | Cycles
[[PM_Opc_MOV16|16 Bit Opcode overview]]
+
! rowspan="2" | Bytes
 
+
! colspan="8" | SC
{| border="1" style="text-align:left" class="sortable"
+
|-
!Hex
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
!Mnemonic
+
|-
!Cycles
+
| rowspan="12" | [[S1C88_SUB|SUB]]
 +
| A,A
 +
| 10
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,B
 +
| 11
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,#nn
 +
| 12,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[HL]
 +
| 13
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[BR:ll]
 +
| 14,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[hhll]
 +
| 15,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX]
 +
| 16
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY]
 +
| 17
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX+dd]
 +
| CE,10,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY+dd]
 +
| CE,11,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IX+L]
 +
| CE,12
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| A,[IY+L]
 +
| CE,13
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|40
+
| rowspan="4" | [[S1C88_SUB|SUB]]
|[[PM_Opc_MOV8|MOV A, A]]
+
| [HL],A
|4
+
| CE,14
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|41
+
| [HL],#nn
|[[PM_Opc_MOV8|MOV A, B]]
+
| CE,15,nn
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|42
+
| [HL],[IX]
|[[PM_Opc_MOV8|MOV A, L]]
+
| CE,16
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|43
+
| [HL],[IY]
|[[PM_Opc_MOV8|MOV A, H]]
+
| CE,17
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 +
|}
 +
 
 +
== '''SBC''': Subtraction with carry ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|44 nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV A, [N+#nn]]]
 
|12
 
 
|-
 
|-
|45
+
| rowspan="12" | [[S1C88_SBC|SBC]]
|[[PM_Opc_MOV8|MOV A, [HL]]]
+
| A,A
|8
+
| 18
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|46
+
| A,B
|[[PM_Opc_MOV8|MOV A, [X]]]
+
| 19
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|47
+
| A,#nn
|[[PM_Opc_MOV8|MOV A, [Y]]]
+
| 1A,nn
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|48
+
| A,[HL]
|[[PM_Opc_MOV8|MOV B, A]]
+
| 1B
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|49
+
| A,[BR:ll]
|[[PM_Opc_MOV8|MOV B, B]]
+
| 1C,ll
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|4A
+
| A,[hhll]
|[[PM_Opc_MOV8|MOV B, L]]
+
| 1D,ll,hh
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|4B
+
| A,[IX]
|[[PM_Opc_MOV8|MOV B, H]]
+
| 1E
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|4C nn
+
| A,[IY]
|[[PM_Opc_MOV8|MOV B, [N+#nn]]]
+
| 1F
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|4D
+
| A,[IX+dd]
|[[PM_Opc_MOV8|MOV B, [HL]]]
+
| CE,18,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|4E
+
| A,[IY+dd]
|[[PM_Opc_MOV8|MOV B, [X]]]
+
| CE,19,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|4F
+
| A,[IX+L]
|[[PM_Opc_MOV8|MOV B, [Y]]]
+
| CE,1A
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|50
+
| A,[IY+L]
|[[PM_Opc_MOV8|MOV L, A]]
+
| CE,1B
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|51
+
| rowspan="4" | [[S1C88_SBC|SBC]]
|[[PM_Opc_MOV8|MOV L, B]]
+
| [HL],A
|4
+
| CE,1C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|52
+
| [HL],#nn
|[[PM_Opc_MOV8|MOV L, L]]
+
| CE,1D,nn
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|53
+
| [HL],[IX]
|[[PM_Opc_MOV8|MOV L, H]]
+
| CE,1E
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|54 nn
+
| [HL],[IY]
|[[PM_Opc_MOV8|MOV L, [N+#nn]]]
+
| CE,1F
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|55
+
|}
|[[PM_Opc_MOV8|MOV L, [HL]]]
+
 
|8
+
 
 +
 
 +
== '''AND''': Logical product ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|56
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV L, [X]]]
 
|8
 
 
|-
 
|-
|57
+
| rowspan="12" | [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV L, [Y]]]
+
| A,A
|8
+
| 20
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|58
+
| A,B
|[[PM_Opc_MOV8|MOV H, A]]
+
| 21
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|59
+
| A,#nn
|[[PM_Opc_MOV8|MOV H, B]]
+
| 22,nn
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|5A
+
| A,[HL]
|[[PM_Opc_MOV8|MOV H, L]]
+
| 23
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|5B
+
| A,[BR:ll]
|[[PM_Opc_MOV8|MOV H, H]]
+
| 24,ll
|4
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|5C nn
+
| A,[hhll]
|[[PM_Opc_MOV8|MOV H, [N+#nn]]]
+
| 25,ll,hh
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|5D
+
| A,[IX]
|[[PM_Opc_MOV8|MOV H, [HL]]]
+
| 26
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|5E
+
| A,[IY]
|[[PM_Opc_MOV8|MOV H, [X]]]
+
| 27
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|5F
+
| A,[IX+dd]
|[[PM_Opc_MOV8|MOV H, [Y]]]
+
| CE,20,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|60
+
| A,[IY+dd]
|[[PM_Opc_MOV8|MOV [X], A]]
+
| CE,21,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|61
+
| A,[IX+L]
|[[PM_Opc_MOV8|MOV [X], B]]
+
| CE,22
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|62
+
| A,[IY+L]
|[[PM_Opc_MOV8|MOV [X], L]]
+
| CE,23
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|63
+
| [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV [X], H]]
+
| B,#nn
|8
+
| CE,B0,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|64 nn
+
| [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV [X], [N+#nn]]]
+
| H,#nn
|16
+
| CE,B2,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|65
+
| [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV [X], [HL]]]
+
| [BR:ll],#nn
|12
+
| D8,ll,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|66
+
| rowspan="4" | [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV [X], [X]]]
+
| [HL],A
|12
+
| CE,24
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|67
+
| [HL],#nn
|[[PM_Opc_MOV8|MOV [X], [Y]]]
+
| CE,25,nn
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|68
+
| [HL],[IX]
|[[PM_Opc_MOV8|MOV [HL], A]]
+
| CE,26
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|69
+
| [HL],[IY]
|[[PM_Opc_MOV8|MOV [HL], B]]
+
| CE,27
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|6A
+
| [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV [HL], L]]
+
| L,#nn
|8
+
| CE,B1,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↓ || – || – || ↓
 
|-
 
|-
|6B
+
| [[S1C88_AND|AND]]
|[[PM_Opc_MOV8|MOV [HL], H]]
+
| SC,#nn
|8
+
| 9C,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| ↓ || ↓ || ↓ || ↓ || ↓ || ↓ || ↓ || ↓
 
|-
 
|-
|6C nn
+
|}
|[[PM_Opc_MOV8|MOV [HL], [N+#nn]]]
+
 
|16
+
== '''OR''': Logical sum ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|6D
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV [HL], [HL]]]
 
|12
 
 
|-
 
|-
|6E
+
| rowspan="12" | [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV [HL], [X]]]
+
| A,A
|12
+
| 28
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|6F
+
| A,B
|[[PM_Opc_MOV8|MOV [HL], [Y]]]
+
| 29
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|70
+
| A,#nn
|[[PM_Opc_MOV8|MOV [Y], A]]
+
| 2A,nn
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|71
+
| A,[HL]
|[[PM_Opc_MOV8|MOV [Y], B]]
+
| 2B
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|72
+
| A,[BR:ll]
|[[PM_Opc_MOV8|MOV [Y], L]]
+
| 2C,ll
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|73
+
| A,[hhll]
|[[PM_Opc_MOV8|MOV [Y], H]]
+
| 2D,ll,hh
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|74 nn
+
| A,[IX]
|[[PM_Opc_MOV8|MOV [Y], [N+#nn]]]
+
| 2E
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|75
+
| A,[IY]
|[[PM_Opc_MOV8|MOV [Y], [HL]]]
+
| 2F
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|76
+
| A,[IX+dd]
|[[PM_Opc_MOV8|MOV [Y], [X]]]
+
| CE,28,dd
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|77
+
| A,[IY+dd]
|[[PM_Opc_MOV8|MOV [Y], [Y]]]
+
| CE,29,dd
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|78 nn
+
| A,[IX+L]
|[[PM_Opc_MOV8|MOV [N+#nn], A]]
+
| CE,2A
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|79 nn
+
| A,[IY+L]
|[[PM_Opc_MOV8|MOV [N+#nn], B]]
+
| CE,2B
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|7A nn
+
| [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV [N+#nn], L]]
+
| B,#nn
|12
+
| CE,B4,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|7B nn
+
| [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV [N+#nn], H]]
+
| H,#nn
|12
+
| CE,B6,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|7D nn
+
| [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV [N+#nn], [HL]]]
+
| [BR:ll],#nn
|16
+
| D9,ll,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|7E nn
+
| rowspan="4" | [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV [N+#nn], [X]]]
+
| [HL],A
|16
+
| CE,2C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|7F nn
+
| [HL],#nn
|[[PM_Opc_MOV8|MOV [N+#nn], [Y]]]
+
| CE,2D,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|9F nn
+
| [HL],[IX]
|[[PM_Opc_MOV8|MOV F, #nn]]
+
| CE,2E
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|B0 nn
+
| [HL],[IY]
|[[PM_Opc_MOV8|MOV A, #nn]]
+
| CE,2F
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|B1 nn
+
| [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV B, #nn]]
+
| L,#nn
|8
+
| CE,B5,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↑ || – || – || ↑
 
|-
 
|-
|B2 nn
+
| [[S1C88_OR|OR]]
|[[PM_Opc_MOV8|MOV L, #nn]]
+
| SC,#nn
|8
+
| 9D,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| ↑ || ↑ || ↑ || ↑ || ↑ || ↑ || ↑ || ↑
 
|-
 
|-
|B3 nn
+
|}
|[[PM_Opc_MOV8|MOV H, #nn]]
+
 
|8
+
== '''XOR''': Exclusive OR ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|B4 nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV N, #nn]]
 
|8
 
 
|-
 
|-
|B5 nn
+
| rowspan="12" | [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV [HL], #nn]]
+
| A,A
|12
+
| 38
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|B6 nn
+
| A,B
|[[PM_Opc_MOV8|MOV [X], #nn]]
+
| 39
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|B7 nn
+
| A,#nn
|[[PM_Opc_MOV8|MOV [Y], #nn]]
+
| 3A,nn
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|DD nn nn
+
| A,[HL]
|[[PM_Opc_MOV8|MOV [N+#nn], #nn]]
+
| 3B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE C4 nn
+
| A,[BR:ll]
|[[PM_Opc_MOV8|MOV U, #nn]]
+
| 3C,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE C5 nn
+
| A,[hhll]
|[[PM_Opc_MOV8|MOV I, #nn]]
+
| 3D,ll,hh
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE C6 nn
+
| A,[IX]
|[[PM_Opc_MOV8|MOV XI, #nn]]
+
| 3E
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE C7 nn
+
| A,[IY]
|[[PM_Opc_MOV8|MOV YI, #nn]]
+
| 3F
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 40 ss
+
| A,[IX+dd]
|[[PM_Opc_MOV8|MOV A, [X+#ss]]]
+
| CE,38,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 41 ss
+
| A,[IY+dd]
|[[PM_Opc_MOV8|MOV A, [Y+#ss]]]
+
| CE,39,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 42
+
| A,[IX+L]
|[[PM_Opc_MOV8|MOV A, [X+L]]]
+
| CE,3A
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 43
+
| A,[IY+L]
|[[PM_Opc_MOV8|MOV A, [Y+L]]]
+
| CE,3B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 48 ss
+
| [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV B, [X+#ss]]]
+
| B,#nn
|16
+
| CE,B8,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 49 ss
+
| [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV B, [Y+#ss]]]
+
| H,#nn
|16
+
| CE,BA,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 4A
+
| [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV B, [X+L]]]
+
| [BR:ll],#nn
|16
+
| DA,ll,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 4B
+
| rowspan="4" | [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV B, [Y+L]]]
+
| [HL],A
|16
+
| CE,3C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 50 ss
+
| [HL],#nn
|[[PM_Opc_MOV8|MOV L, [X+#ss]]]
+
| CE,3D,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 51 ss
+
| [HL],[IX]
|[[PM_Opc_MOV8|MOV L, [Y+#ss]]]
+
| CE,3E
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 52
+
| [HL],[IY]
|[[PM_Opc_MOV8|MOV L, [X+L]]]
+
| CE,3F
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 53
+
| [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV L, [Y+L]]]
+
| L,#nn
|16
+
| CE,B9,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 58 ss
+
| [[S1C88_XOR|XOR]]
|[[PM_Opc_MOV8|MOV H, [X+#ss]]]
+
| SC,#nn
|16
+
| 9E,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 59 ss
+
|}
|[[PM_Opc_MOV8|MOV H, [Y+#ss]]]
+
 
|16
+
== '''CP''': Comparison ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE 5A
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV H, [X+L]]]
 
|16
 
 
|-
 
|-
|CE 5B
+
| rowspan="12" | [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV H, [Y+L]]]
+
| A,A
|16
+
| 30
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 44 ss
+
| A,B
|[[PM_Opc_MOV8|MOV [X+#ss], A]]
+
| 31
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 45 ss
+
| A,#nn
|[[PM_Opc_MOV8|MOV [Y+#ss], A]]
+
| 32,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 46
+
| A,[HL]
|[[PM_Opc_MOV8|MOV [X+L], A]]
+
| 33
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 47
+
| A,[BR:ll]
|[[PM_Opc_MOV8|MOV [Y+L], A]]
+
| 34,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 4C ss
+
| A,[hhll]
|[[PM_Opc_MOV8|MOV [X+#ss], B]]
+
| 35,ll,hh
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 4D ss
+
| A,[IX]
|[[PM_Opc_MOV8|MOV [Y+#ss], B]]
+
| 36
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 4E
+
| A,[IY]
|[[PM_Opc_MOV8|MOV [X+L], B]]
+
| 37
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 4F
+
| A,[IX+dd]
|[[PM_Opc_MOV8|MOV [Y+L], B]]
+
| CE,30,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 54 ss
+
| A,[IY+dd]
|[[PM_Opc_MOV8|MOV [X+#ss], L]]
+
| CE,31,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 55 ss
+
| A,[IX+L]
|[[PM_Opc_MOV8|MOV [Y+#ss], L]]
+
| CE,32
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 56
+
| A,[IY+L]
|[[PM_Opc_MOV8|MOV [X+L], L]]
+
| CE,33
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 57
+
| [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV [Y+L], L]]
+
| B,#nn
|16
+
| CE,BC,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 5C ss
+
| [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV [X+#ss], H]]
+
| H,#nn
|16
+
| CE,BE,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 5D ss
+
| [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV [Y+#ss], H]]
+
| BR,#hh
|16
+
| CE,BF,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 5E
+
| [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV [X+L], H]]
+
| [BR:ll],#nn
|16
+
| DB,ll,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 5F
+
| rowspan="4" | [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV [Y+L], H]]
+
| [HL],A
|16
+
| CE,34
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 60 ss
+
| [HL],#nn
|[[PM_Opc_MOV8|MOV [HL], [X+#ss]]]
+
| CE,35,nn
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 61 ss
+
| [HL],[IX]
|[[PM_Opc_MOV8|MOV [HL], [Y+#ss]]]
+
| CE,36
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 62
+
| [HL],[IY]
|[[PM_Opc_MOV8|MOV [HL], [X+L]]]
+
| CE,37
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 63
+
| [[S1C88_CP|CP]]
|[[PM_Opc_MOV8|MOV [HL], [Y+L]]]
+
| L,#nn
|20
+
| CE,BD,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 68 ss
+
|}
|[[PM_Opc_MOV8|MOV [X], [X+#ss]]]
+
 
|20
+
== '''BIT''': Bit test ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE 69 ss
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV [X], [Y+#ss]]]
 
|20
 
 
|-
 
|-
|CE 6A
+
| rowspan="2" | [[S1C88_BIT|BIT]]
|[[PM_Opc_MOV8|MOV [X], [X+L]]]
+
| A,B
|20
+
| 94
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 6B
+
| A,#nn
|[[PM_Opc_MOV8|MOV [X], [Y+L]]]
+
| 96,nn
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 78 ss
+
| [[S1C88_BIT|BIT]]
|[[PM_Opc_MOV8|MOV [Y], [X+#ss]]]
+
| B,#nn
|20
+
| 97,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 79 ss
+
| [[S1C88_BIT|BIT]]
|[[PM_Opc_MOV8|MOV [Y], [Y+#ss]]]
+
| [HL],#nn
|20
+
| 95,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 7A
+
| [[S1C88_BIT|BIT]]
|[[PM_Opc_MOV8|MOV [Y], [X+L]]]
+
| [BR:ll],#nn
|20
+
| DC,ll,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE 7B
+
|}
|[[PM_Opc_MOV8|MOV [Y], [Y+L]]]
+
 
|20
+
== '''INC''': 1 increment ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|B8 nn nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV16|MOV BA, [#nnnn]]]
 
|20
 
 
|-
 
|-
|B9 nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV HL, [#nnnn]]]
+
| A
|20
+
| 80
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|BA nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV X, [#nnnn]]]
+
| B
|20
+
| 81
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|BB nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV Y, [#nnnn]]]
+
| H
|20
+
| 83
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CF 78 nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV SP, [#nnnn]]]
+
| [BR:ll]
|24
+
| 85,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|BC nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV [#nnnn], BA]]
+
| [HL]
|20
+
| 86
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|BD nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV [#nnnn], HL]]
+
| L
|20
+
| 82
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|BE nn nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_MOV16|MOV [#nnnn], X]]
+
| BR
|20
+
| 84
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|BF nn nn
+
|}
|[[PM_Opc_MOV16|MOV [#nnnn], Y]]
+
 
|20
+
== '''DEC''': 1 decrement ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CF 7C nn nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV16|MOV [#nnnn], SP]]
 
|24
 
 
|-
 
|-
|C4 nn nn
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV16|MOV BA, #nnnn]]
+
| A
|12
+
| 88
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|C5 nn nn
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV16|MOV HL, #nnnn]]
+
| B
|12
+
| 89
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|C6 nn nn
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV16|MOV X, #nnnn]]
+
| H
|12
+
| 8B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|C7 nn nn
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV16|MOV Y, #nnnn]]
+
| [BR:ll]
|12
+
| 8D,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CF 6E nn nn
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV16|MOV SP, #nnnn]]
+
| [HL]
|16
+
| 8E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE C0
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV8|MOV A, N]]
+
| L
|8
+
| 8A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE C1
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_MOV8|MOV A, F]]
+
| BR
|8
+
| 8C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE C8
+
|}
|[[PM_Opc_MOV8|MOV A, V]]
+
 
|8
+
== '''MLT''': Multiplication ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE C9
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV A, I]]
 
|8
 
 
|-
 
|-
|CE CA
+
| [[S1C88_MLT|MLT]]
|[[PM_Opc_MOV8|MOV A, XI]]
+
|  
|8
+
| CE,D8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || 0 || 0 || ↕
 
|-
 
|-
|CE CB
+
|}
|[[PM_Opc_MOV8|MOV A, YI]]
+
 
|8
+
== '''DIV''': Division ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE C2
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV N, A]]
 
|8
 
 
|-
 
|-
|CE C3
+
| [[S1C88_DIV|DIV]]
|[[PM_Opc_MOV8|MOV F, A]]
+
|  
|12
+
| CE,D9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || 0 || ↕
 
|-
 
|-
|CE CC
+
|}
|[[PM_Opc_MOV8|MOV U, A]]
+
 
|12
+
== '''CPL''': Complement of 1 ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE CD
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV I, A]]
 
|8
 
 
|-
 
|-
|CE CE
+
| [[S1C88_CPL|CPL]]
|[[PM_Opc_MOV8|MOV XI, A]]
+
| A
|8
+
| CE,A0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE CF
+
| [[S1C88_CPL|CPL]]
|[[PM_Opc_MOV8|MOV YI, A]]
+
| B
|8
+
| CE,A1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE D0 nn nn
+
| [[S1C88_CPL|CPL]]
|[[PM_Opc_MOV8|MOV A, [#nnnn]]]
+
| [HL]
|20
+
| CE,A3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE D1 nn nn
+
| [[S1C88_CPL|CPL]]
|[[PM_Opc_MOV8|MOV B, [#nnnn]]]
+
| [BR:ll]
|20
+
| CE,A2,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || – || ↕
 
|-
 
|-
|CE D2 nn nn
+
|}
|[[PM_Opc_MOV8|MOV L, [#nnnn]]]
+
 
|20
+
== '''NEG''': Complement of 2 ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE D3 nn nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV8|MOV H, [#nnnn]]]
 
|20
 
 
|-
 
|-
|CE D4 nn nn
+
| [[S1C88_NEG|NEG]]
|[[PM_Opc_MOV8|MOV [#nnnn], A]]
+
| A
|20
+
| CE,A4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE D5 nn nn
+
| [[S1C88_NEG|NEG]]
|[[PM_Opc_MOV8|MOV [#nnnn], B]]
+
| B
|20
+
| CE,A5
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE D6 nn nn
+
| [[S1C88_NEG|NEG]]
|[[PM_Opc_MOV8|MOV [#nnnn], L]]
+
| [HL]
|20
+
| CE,A7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE D7 nn nn
+
| [[S1C88_NEG|NEG]]
|[[PM_Opc_MOV8|MOV [#nnnn], H]]
+
| [BR:ll]
|20
+
| CE,A6,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || ★ || ★ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CF 70 ss
+
|}
|[[PM_Opc_MOV16|MOV BA, [SP+#ss]]]
+
 
|24
+
= 8-bit transfer =
 +
== '''LD''': Load ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CF 71 ss
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_MOV16|MOV HL, [SP+#ss]]]
 
|24
 
 
|-
 
|-
|CF 72 ss
+
| rowspan="11" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV X, [SP+#ss]]]
+
| IY,[hhll]
|24
+
| BB,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 73 ss
+
| IY,#mmnn
|[[PM_Opc_MOV16|MOV Y, [SP+#ss]]]
+
| C7,nn,mm
|24
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 74 ss
+
| IY,[SP+dd]
|[[PM_Opc_MOV16|MOV [SP+#ss], BA]]
+
| CE,73,dd
|24
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 75 ss
+
| IY,[HL]
|[[PM_Opc_MOV16|MOV [SP+#ss], HL]]
+
| CE,C3
|24
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 76 ss
+
| IY,[IX]
|[[PM_Opc_MOV16|MOV [SP+#ss], X]]
+
| CE,D3
|24
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 77 ss
+
| IY,[IY]
|[[PM_Opc_MOV16|MOV [SP+#ss], Y]]
+
| CE,DB
|24
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C0
+
| IY,BA
|[[PM_Opc_MOV16|MOV BA, [HL]]]
+
| CE,EC
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C1
+
| IY,HL
|[[PM_Opc_MOV16|MOV HL, [HL]]]
+
| CE,ED
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C2
+
| IY,IX
|[[PM_Opc_MOV16|MOV X, [HL]]]
+
| CE,EE
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C3
+
| IY,IY
|[[PM_Opc_MOV16|MOV Y, [HL]]]
+
| CE,EF
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D0
+
| IY,SP
|[[PM_Opc_MOV16|MOV BA, [X]]]
+
| CE,FE
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D1
+
| rowspan="6" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV HL, [X]]]
+
| SP,#mmnn
|20
+
| CE,6E,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D2
+
| SP,[hhll]
|[[PM_Opc_MOV16|MOV X, [X]]]
+
| CE,78,ll,hh
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D3
+
| SP,BA
|[[PM_Opc_MOV16|MOV Y, [X]]]
+
| CE,F0
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D8
+
| SP,HL
|[[PM_Opc_MOV16|MOV BA, [Y]]]
+
| CE,F1
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D9
+
| SP,IX
|[[PM_Opc_MOV16|MOV HL, [Y]]]
+
| CE,F2
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF DA
+
| SP,IY
|[[PM_Opc_MOV16|MOV X, [Y]]]
+
| CE,F3
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF DB
+
| rowspan="12" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV Y, [Y]]]
+
| BA,[hhll]
|20
+
| B8,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C4
+
| BA,#mmnn
|[[PM_Opc_MOV16|MOV [HL], BA]]
+
| C4,nn,mm
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C5
+
| BA,[SP+dd]
|[[PM_Opc_MOV16|MOV [HL], HL]]
+
| CE,70,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C6
+
| BA,[HL]
|[[PM_Opc_MOV16|MOV [HL], X]]
+
| CE,C0
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF C7
+
| BA,[IX]
|[[PM_Opc_MOV16|MOV [HL], Y]]
+
| CE,D0
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D4
+
| BA,[IY]
|[[PM_Opc_MOV16|MOV [X], BA]]
+
| CE,D8
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D5
+
| BA,BA
|[[PM_Opc_MOV16|MOV [X], HL]]
+
| CE,E0
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D6
+
| BA,HL
|[[PM_Opc_MOV16|MOV [X], X]]
+
| CE,E1
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF D7
+
| BA,IX
|[[PM_Opc_MOV16|MOV [X], Y]]
+
| CE,E2
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF DC
+
| BA,IY
|[[PM_Opc_MOV16|MOV [Y], BA]]
+
| CE,E3
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF DD
+
| BA,SP
|[[PM_Opc_MOV16|MOV [Y], HL]]
+
| CE,F8
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF DE
+
| BA,PC
|[[PM_Opc_MOV16|MOV [Y], X]]
+
| CE,F9
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF DF
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV [Y], Y]]
+
| BR,#hh
|20
+
| B4,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E0
+
| BR,A
|[[PM_Opc_MOV16|MOV BA, BA]]
+
| CE,C2
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E1
+
| rowspan="4" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV BA, HL]]
+
| [IX+L],A
|8
+
| CE,46
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E2
+
| [IX+L],B
|[[PM_Opc_MOV16|MOV BA, X]]
+
| CE,4E
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E3
+
| [IX+L],L
|[[PM_Opc_MOV16|MOV BA, Y]]
+
| CE,56
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E4
+
| [IX+L],H
|[[PM_Opc_MOV16|MOV HL, BA]]
+
| CE,5E
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E5
+
| rowspan="12" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV HL, HL]]
+
| HL,[hhll]
|8
+
| B9,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E6
+
| HL,#mmnn
|[[PM_Opc_MOV16|MOV HL, X]]
+
| C5,nn,mm
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E7
+
| HL,[SP+dd]
|[[PM_Opc_MOV16|MOV HL, Y]]
+
| CE,71,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E8
+
| HL,[HL]
|[[PM_Opc_MOV16|MOV X, BA]]
+
| CE,C1
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF E9
+
| HL,[IX]
|[[PM_Opc_MOV16|MOV X, HL]]
+
| CE,D1
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF EA
+
| HL,[IY]
|[[PM_Opc_MOV16|MOV X, X]]
+
| CE,D9
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF EB
+
| HL,BA
|[[PM_Opc_MOV16|MOV X, Y]]
+
| CE,E4
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF EC
+
| HL,HL
|[[PM_Opc_MOV16|MOV Y, BA]]
+
| CE,E5
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF ED
+
| HL,IX
|[[PM_Opc_MOV16|MOV Y, HL]]
+
| CE,E6
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF EE
+
| HL,IY
|[[PM_Opc_MOV16|MOV Y, X]]
+
| CE,E7
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF EF
+
| HL,SP
|[[PM_Opc_MOV16|MOV Y, Y]]
+
| CE,F4
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F0
+
| HL,PC
|[[PM_Opc_MOV16|MOV SP, BA]]
+
| CE,F5
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F1
+
| rowspan="4" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV SP, HL]]
+
| [IY+L],A
|8
+
| CE,47
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F2
+
| [IY+L],B
|[[PM_Opc_MOV16|MOV SP, X]]
+
| CE,4F
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F3
+
| [IY+L],L
|[[PM_Opc_MOV16|MOV SP, Y]]
+
| CE,57
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F4
+
| [IY+L],H
|[[PM_Opc_MOV16|MOV HL, SP]]
+
| CE,5F
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F5
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV HL, PC]]
+
| YP,#pp
|8
+
| CE,C7,pp
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F8
+
| YP,A
|[[PM_Opc_MOV16|MOV BA, SP]]
+
| CE,CF
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF F9
+
| rowspan="17" | [[S1C88_LD|LD]]
|[[PM_Opc_MOV16|MOV BA, PC]]
+
| [IY],A
|8
+
| 70
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF FA
+
| [IY],B
|[[PM_Opc_MOV16|MOV X, SP]]
+
| 71
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF FE
+
| [IY],L
|[[PM_Opc_MOV16|MOV Y, SP]]
+
| 72
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|}
+
| [IY],H
 
+
| 73
'''Flags Affected:''' None
+
| ?PSEUDOCODE
 
+
| ?CYCLES
= Arithmetic =
+
| 1
 
+
| – || – ||  – ||  – ||  – ||  – ||  – || –
== ADD = Addition ==
 
 
 
[[PM_Opc_ADD8|8 Bit Opcode overview]]
 
 
 
[[PM_Opc_ADD16|16 Bit Opcode overview]]
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|00
+
| [IY],[BR:ll]
|[[PM_Opc_ADD8|ADD A, A]]
+
| 74,ll
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|01
+
| [IY],[HL]
|[[PM_Opc_ADD8|ADD A, B]]
+
| 75
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|02 nn
+
| [IY],[IX]
|[[PM_Opc_ADD8|ADD A, #nn]]
+
| 76
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|03
+
| [IY],[IY]
|[[PM_Opc_ADD8|ADD A, [HL]]]
+
| 77
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|04 nn
+
| [IY],#nn
|[[PM_Opc_ADD8|ADD A, [N+#nn]]]
+
| B7,nn
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|05 nn nn
+
| [IY],[IX+dd]
|[[PM_Opc_ADD8|ADD A, [#nnnn]]]
+
| CE,78,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|06
+
| [IY],[IY+dd]
|[[PM_Opc_ADD8|ADD A, [X]]]
+
| CE,79,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|07
+
| [IY],[IX+L]
|[[PM_Opc_ADD8|ADD A, [Y]]]
+
| CE,7A
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|C0 nn nn
+
| [IY],[IY+L]
|[[PM_Opc_ADD16|ADD BA, #nnnn]]
+
| CE,7B
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|C1 nn nn
+
| [IY],BA
|[[PM_Opc_ADD16|ADD HL, #nnnn]]
+
| CE,DC
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|C2 nn nn
+
| [IY],HL
|[[PM_Opc_ADD16|ADD X, #nnnn]]
+
| CE,DD
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|C3 nn nn
+
| [IY],IX
|[[PM_Opc_ADD16|ADD Y, #nnnn]]
+
| CE,DE
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 68 nn nn
+
| [IY],IY
|[[PM_Opc_ADD16|ADD SP, #nnnn]]
+
| CE,DF
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 00 ss
+
| rowspan="8" | [[S1C88_LD|LD]]
|[[PM_Opc_ADD8|ADD A, [X+#ss]]]
+
| [BR:ll],A
|16
+
| 78,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 01 ss
+
| [BR:ll],B
|[[PM_Opc_ADD8|ADD A, [Y+#ss]]]
+
| 79,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 02
+
| [BR:ll],L
|[[PM_Opc_ADD8|ADD A, [X+L]]]
+
| 7A,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 03
+
| [BR:ll],H
|[[PM_Opc_ADD8|ADD A, [Y+L]]]
+
| 7B,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 04
+
| [BR:ll],[HL]
|[[PM_Opc_ADD8|ADD [HL], A]]
+
| 7D,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 05 nn
+
| [BR:ll],[IX]
|[[PM_Opc_ADD8|ADD [HL], #nn]]
+
| 7E,ll
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 06
+
| [BR:ll],[IY]
|[[PM_Opc_ADD8|ADD [HL], [X]]]
+
| 7F,ll
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 07
+
| [BR:ll],#nn
|[[PM_Opc_ADD8|ADD [HL], [Y]]]
+
| DD,ll,nn
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 00
+
| rowspan="4" | [[S1C88_LD|LD]]
|[[PM_Opc_ADD16|ADD BA, BA]]
+
| [SP+dd],BA
|16
+
| CE,74,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 01
+
| [SP+dd],HL
|[[PM_Opc_ADD16|ADD BA, HL]]
+
| CE,75,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 02
+
| [SP+dd],IX
|[[PM_Opc_ADD16|ADD BA, X]]
+
| CE,76,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 03
+
| [SP+dd],IY
|[[PM_Opc_ADD16|ADD BA, Y]]
+
| CE,77,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 20
+
| rowspan="4" | [[S1C88_LD|LD]]
|[[PM_Opc_ADD16|ADD HL, BA]]
+
| [IY+dd],A
|16
+
| CE,45,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 21
+
| [IY+dd],B
|[[PM_Opc_ADD16|ADD HL, HL]]
+
| CE,4D,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 22
+
| [IY+dd],L
|[[PM_Opc_ADD16|ADD HL, X]]
+
| CE,55,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 23
+
| [IY+dd],H
|[[PM_Opc_ADD16|ADD HL, Y]]
+
| CE,5D,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 40
+
| rowspan="20" | [[S1C88_LD|LD]]
|[[PM_Opc_ADD16|ADD X, BA]]
+
| A,A
|16
+
| 40
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 41
+
| A,B
|[[PM_Opc_ADD16|ADD X, HL]]
+
| 41
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 42
+
| A,L
|[[PM_Opc_ADD16|ADD Y, BA]]
+
| 42
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 43
+
| A,H
|[[PM_Opc_ADD16|ADD Y, HL]]
+
| 43
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 44
+
| A,[BR:ll]
|[[PM_Opc_ADD16|ADD SP, BA]]
+
| 44,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 45
+
| A,[HL]
|[[PM_Opc_ADD16|ADD SP, HL]]
+
| 45
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 1
'''Flags Affected:''' All
+
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
 
== SUB = Subtraction ==
 
 
 
[[PM_Opc_SUB8|8 Bit Opcode overview]]
 
 
 
[[PM_Opc_SUB16|16 Bit Opcode overview]]
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|10
+
| A,[IX]
|[[PM_Opc_SUB8|SUB A, A]]
+
| 46
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|11
+
| A,[IY]
|[[PM_Opc_SUB8|SUB A, B]]
+
| 47
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|12 nn
+
| A,#nn
|[[PM_Opc_SUB8|SUB A, #nn]]
+
| B0,nn
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|13
+
| A,[IX+dd]
|[[PM_Opc_SUB8|SUB A, [HL]]]
+
| CE,40,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|14 nn
+
| A,[IY+dd]
|[[PM_Opc_SUB8|SUB A, [N+#nn]]]
+
| CE,41,dd
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|15 nn nn
+
| A,[IX+L]
|[[PM_Opc_SUB8|SUB A, [#nnnn]]]
+
| CE,42
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|16
+
| A,[IY+L]
|[[PM_Opc_SUB8|SUB A, [X]]]
+
| CE,43
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|17
+
| A,BR
|[[PM_Opc_SUB8|SUB A, [Y]]]
+
| CE,C0
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D0 nn nn
+
| A,SC
|[[PM_Opc_SUB16|SUB BA, #nnnn]]
+
| CE,C1
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D1 nn nn
+
| A,NB
|[[PM_Opc_SUB16|SUB HL, #nnnn]]
+
| CE,C8
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D2 nn nn
+
| A,EP
|[[PM_Opc_SUB16|SUB X, #nnnn]]
+
| CE,C9
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D3 nn nn
+
| A,XP
|[[PM_Opc_SUB16|SUB Y, #nnnn]]
+
| CE,CA
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 6A nn nn
+
| A,YP
|[[PM_Opc_SUB16|SUB SP, #nnnn]]
+
| CE,CB
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 10 ss
+
| A,[hhll]
|[[PM_Opc_SUB8|SUB A, [X+#ss]]]
+
| CE,D0,ll,hh
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 11 ss
+
| rowspan="11" | [[S1C88_LD|LD]]
|[[PM_Opc_SUB8|SUB A, [Y+#ss]]]
+
| IX,[hhll]
|16
+
| BA,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 12
+
| IX,#mmnn
|[[PM_Opc_SUB8|SUB A, [X+L]]]
+
| C6,nn,mm
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 13
+
| IX,[SP+dd]
|[[PM_Opc_SUB8|SUB A, [Y+L]]]
+
| CE,72,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 14
+
| IX,[HL]
|[[PM_Opc_SUB8|SUB [HL], A]]
+
| CE,C2
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 15 nn
+
| IX,[IX]
|[[PM_Opc_SUB8|SUB [HL], #nn]]
+
| CE,D2
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 16
+
| IX,[IY]
|[[PM_Opc_SUB8|SUB [HL], [X]]]
+
| CE,DA
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 17
+
| IX,BA
|[[PM_Opc_SUB8|SUB [HL], [Y]]]
+
| CE,E8
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 08
+
| IX,HL
|[[PM_Opc_SUB16|SUB BA, BA]]
+
| CE,E9
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 09
+
| IX,IX
|[[PM_Opc_SUB16|SUB BA, HL]]
+
| CE,EA
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 0A
+
| IX,IY
|[[PM_Opc_SUB16|SUB BA, X]]
+
| CE,EB
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 0B
+
| IX,SP
|[[PM_Opc_SUB16|SUB BA, Y]]
+
| CE,FA
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 28
+
| rowspan="14" | [[S1C88_LD|LD]]
|[[PM_Opc_SUB16|SUB HL, BA]]
+
| B,A
|16
+
| 48
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 29
+
| B,B
|[[PM_Opc_SUB16|SUB HL, HL]]
+
| 49
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 2A
+
| B,L
|[[PM_Opc_SUB16|SUB HL, X]]
+
| 4A
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 2B
+
| B,H
|[[PM_Opc_SUB16|SUB HL, Y]]
+
| 4B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 48
+
| B,[BR:ll]
|[[PM_Opc_SUB16|SUB X, BA]]
+
| 4C,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 49
+
| B,[HL]
|[[PM_Opc_SUB16|SUB X, HL]]
+
| 4D
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 4A
+
| B,[IX]
|[[PM_Opc_SUB16|SUB Y, BA]]
+
| 4E
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 4B
+
| B,[IY]
|[[PM_Opc_SUB16|SUB Y, HL]]
+
| 4F
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 4C
+
| B,#nn
|[[PM_Opc_SUB16|SUB SP, BA]]
+
| B1,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 4D
+
| B,[IX+dd]
|[[PM_Opc_SUB16|SUB SP, HL]]
+
| CE,48,dd
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 3
'''Flags Affected:''' All
+
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
 
== ADC = Addition with Carry ==
 
 
 
[[PM_Opc_ADC8|8 Bit Opcode overview]]
 
 
 
[[PM_Opc_ADC16|16 Bit Opcode overview]]
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|08
+
| B,[IY+dd]
|[[PM_Opc_ADC8|ADC A, A]]
+
| CE,49,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|09
+
| B,[IX+L]
|[[PM_Opc_ADC8|ADC A, B]]
+
| CE,4A
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|0A nn
+
| B,[IY+L]
|[[PM_Opc_ADC8|ADC A, #nn]]
+
| CE,4B
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|0B
+
| B,[hhll]
|[[PM_Opc_ADC8|ADC A, [HL]]]
+
| CE,D1,ll,hh
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|0C nn
+
| rowspan="14" | [[S1C88_LD|LD]]
|[[PM_Opc_ADC8|ADC A, [N+#nn]]]
+
| H,A
|12
+
| 58
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|0D nn nn
+
| H,B
|[[PM_Opc_ADC8|ADC A, [#nnnn]]]
+
| 59
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|0E
+
| H,L
|[[PM_Opc_ADC8|ADC A, [X]]]
+
| 5A
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|0F
+
| H,H
|[[PM_Opc_ADC8|ADC A, [Y]]]
+
| 5B
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 08 ss
+
| H,[BR:ll]
|[[PM_Opc_ADC8|ADC A, [X+#ss]]]
+
| 5C,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 09 ss
+
| H,[HL]
|[[PM_Opc_ADC8|ADC A, [Y+#ss]]]
+
| 5D
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 0A
+
| H,[IX]
|[[PM_Opc_ADC8|ADC A, [X+L]]]
+
| 5E
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 0B
+
| H,[IY]
|[[PM_Opc_ADC8|ADC A, [Y+L]]]
+
| 5F
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 0C
+
| H,#nn
|[[PM_Opc_ADC8|ADC [HL], A]]
+
| B3,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 0D nn
+
| H,[IX+dd]
|[[PM_Opc_ADC8|ADC [HL], #nn]]
+
| CE,58,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 0E
+
| H,[IY+dd]
|[[PM_Opc_ADC8|ADC [HL], [X]]]
+
| CE,59,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 0F
+
| H,[IX+L]
|[[PM_Opc_ADC8|ADC [HL], [Y]]]
+
| CE,5A
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 04
+
| H,[IY+L]
|[[PM_Opc_ADC16|ADC BA, BA]]
+
| CE,5B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 05
+
| H,[hhll]
|[[PM_Opc_ADC16|ADC BA, HL]]
+
| CE,D3,ll,hh
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 06
+
| rowspan="17" | [[S1C88_LD|LD]]
|[[PM_Opc_ADC16|ADC BA, X]]
+
| [HL],A
|16
+
| 68
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 07
+
| [HL],B
|[[PM_Opc_ADC16|ADC BA, Y]]
+
| 69
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 24
+
| [HL],L
|[[PM_Opc_ADC16|ADC HL, BA]]
+
| 6A
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 25
+
| [HL],H
|[[PM_Opc_ADC16|ADC HL, HL]]
+
| 6B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 26
+
| [HL],[BR:ll]
|[[PM_Opc_ADC16|ADC HL, X]]
+
| 6C,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 27
+
| [HL],[HL]
|[[PM_Opc_ADC16|ADC HL, Y]]
+
| 6D
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 60 nn nn
+
| [HL],[IX]
|[[PM_Opc_ADC16|ADC BA, #nnnn]]
+
| 6E
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 61 nn nn
+
| [HL],[IY]
|[[PM_Opc_ADC16|ADC HL, #nnnn]]
+
| 6F
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 1
'''Flags Affected:''' All
+
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
 
== SBC = Subtraction with Carry ==
 
 
 
[[PM_Opc_SBC8|8 Bit Opcode overview]]
 
 
 
[[PM_Opc_SBC16|16 Bit Opcode overview]]
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|18
+
| [HL],#nn
|[[PM_Opc_SBC8|SBC A, A]]
+
| B5,nn
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|19
+
| [HL],[IX+dd]
|[[PM_Opc_SBC8|SBC A, B]]
+
| CE,60,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|1A nn
+
| [HL],[IY+dd]
|[[PM_Opc_SBC8|SBC A, #nn]]
+
| CE,61,dd
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|1B
+
| [HL],[IX+L]
|[[PM_Opc_SBC8|SBC A, [HL]]]
+
| CE,62
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|1C nn
+
| [HL],[IY+L]
|[[PM_Opc_SBC8|SBC A, [N+#nn]]]
+
| CE,63
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|1D nn nn
+
| [HL],BA
|[[PM_Opc_SBC8|SBC A, [#nnnn]]]
+
| CE,C4
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|1E
+
| [HL],HL
|[[PM_Opc_SBC8|SBC A, [X]]]
+
| CE,C5
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|1F
+
| [HL],IX
|[[PM_Opc_SBC8|SBC A, [Y]]]
+
| CE,C6
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 18 ss
+
| [HL],IY
|[[PM_Opc_SBC8|SBC A, [X+#ss]]]
+
| CE,C7
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 19 ss
+
| rowspan="14" | [[S1C88_LD|LD]]
|[[PM_Opc_SBC8|SBC A, [Y+#ss]]]
+
| L,A
|16
+
| 50
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 1A
+
| L,B
|[[PM_Opc_SBC8|SBC A, [X+L]]]
+
| 51
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 1B
+
| L,L
|[[PM_Opc_SBC8|SBC A, [Y+L]]]
+
| 52
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 1C
+
| L,H
|[[PM_Opc_SBC8|SBC [HL], A]]
+
| 53
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 1D nn
+
| L,[BR:ll]
|[[PM_Opc_SBC8|SBC [HL], #nn]]
+
| 54,ll
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 1E
+
| L,[HL]
|[[PM_Opc_SBC8|SBC [HL], [X]]]
+
| 55
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 1F
+
| L,[IX]
|[[PM_Opc_SBC8|SBC [HL], [Y]]]
+
| 56
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 0C
+
| L,[IY]
|[[PM_Opc_SBC16|SBC BA, BA]]
+
| 57
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 0D
+
| L,#nn
|[[PM_Opc_SBC16|SBC BA, HL]]
+
| B2,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 0E
+
| L,[IX+dd]
|[[PM_Opc_SBC16|SBC BA, X]]
+
| CE,50,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 0F
+
| L,[IY+dd]
|[[PM_Opc_SBC16|SBC BA, Y]]
+
| CE,51,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 2C
+
| L,[IX+L]
|[[PM_Opc_SBC16|SBC HL, BA]]
+
| CE,52
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 2D
+
| L,[IY+L]
|[[PM_Opc_SBC16|SBC HL, HL]]
+
| CE,53
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 2E
+
| L,[hhll]
|[[PM_Opc_SBC16|SBC HL, X]]
+
| CE,D2,ll,hh
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 2F
+
| rowspan="9" | [[S1C88_LD|LD]]
|[[PM_Opc_SBC16|SBC HL, Y]]
+
| [hhll],BA
|16
+
| BC,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 62 nn nn
+
| [hhll],HL
|[[PM_Opc_SBC16|SBC BA, #nnnn]]
+
| BD,ll,hh
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 63 nn nn
+
| [hhll],IX
|[[PM_Opc_SBC16|SBC HL, #nnnn]]
+
| BE,ll,hh
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 3
'''Flags Affected:''' All
+
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
 
== CMP = Compare ==
 
 
 
[[PM_Opc_CMP8|8 Bit Opcode overview]]
 
 
 
[[PM_Opc_CMP16|16 Bit Opcode overview]]
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|30
+
| [hhll],IY
|[[PM_Opc_CMP8|CMP A, A]]
+
| BF,ll,hh
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|31
+
| [hhll],A
|[[PM_Opc_CMP8|CMP A, B]]
+
| CE,D4,ll,hh
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|32 nn
+
| [hhll],B
|[[PM_Opc_CMP8|CMP A, #nn]]
+
| CE,D5,ll,hh
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|33
+
| [hhll],L
|[[PM_Opc_CMP8|CMP A, [HL]]]
+
| CE,D6,ll,hh
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|34 nn
+
| [hhll],H
|[[PM_Opc_CMP8|CMP A, [N+#nn]]]
+
| CE,D7,ll,hh
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|35 nn nn
+
| [hhll],SP
|[[PM_Opc_CMP8|CMP A, [#nnnn]]]
+
| CE,7C,ll,hh
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|36
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_CMP8|CMP A, [X]]]
+
| XP,#pp
|8
+
| CE,C6,pp
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|37
+
| XP,A
|[[PM_Opc_CMP8|CMP A, [Y]]]
+
| CE,CE
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D4 nn nn
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_CMP16|CMP BA, #nnnn]]
+
| EP,#pp
|12
+
| CE,C5,pp
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D5 nn nn
+
| EP,A
|[[PM_Opc_CMP16|CMP HL, #nnnn]]
+
| CE,CD
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D6 nn nn
+
| rowspan="17" | [[S1C88_LD|LD]]
|[[PM_Opc_CMP16|CMP X, #nnnn]]
+
| [IX],A
|12
+
| 60
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|D7 nn nn
+
| [IX],B
|[[PM_Opc_CMP16|CMP Y, #nnnn]]
+
| 61
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 6C nn nn
+
| [IX],L
|[[PM_Opc_CMP16|CMP SP, #nnnn]]
+
| 62
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|DB nn nn
+
| [IX],H
|[[PM_Opc_CMP8|CMP [N+#nn], #nn]]
+
| 63
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 30 ss
+
| [IX],[BR:ll]
|[[PM_Opc_CMP8|CMP A, [X+#ss]]]
+
| 64,ll
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 31 ss
+
| [IX],[HL]
|[[PM_Opc_CMP8|CMP A, [Y+#ss]]]
+
| 65
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 32
+
| [IX],[IX]
|[[PM_Opc_CMP8|CMP A, [X+L]]]
+
| 66
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 33
+
| [IX],[IY]
|[[PM_Opc_CMP8|CMP A, [Y+L]]]
+
| 67
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 34
+
| [IX],#nn
|[[PM_Opc_CMP8|CMP [HL], A]]
+
| B6,nn
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 35 nn
+
| [IX],[IX+dd]
|[[PM_Opc_CMP8|CMP [HL], #nn]]
+
| CE,68,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 36
+
| [IX],[IY+dd]
|[[PM_Opc_CMP8|CMP [HL], [X]]]
+
| CE,69,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE 37
+
| [IX],[IX+L]
|[[PM_Opc_CMP8|CMP [HL], [Y]]]
+
| CE,6A
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE BC nn
+
| [IX],[IY+L]
|[[PM_Opc_CMP8|CMP B, #nn]]
+
| CE,6B
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE BD nn
+
| [IX],BA
|[[PM_Opc_CMP8|CMP L, #nn]]
+
| CE,D4
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE BE nn
+
| [IX],HL
|[[PM_Opc_CMP8|CMP H, #nn]]
+
| CE,D5
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CE BF nn
+
| [IX],IX
|[[PM_Opc_CMP8|CMP N, #nn]]
+
| CE,D6
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 18
+
| [IX],IY
|[[PM_Opc_CMP16|CMP BA, BA]]
+
| CE,D7
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 19
+
| rowspan="4" | [[S1C88_LD|LD]]
|[[PM_Opc_CMP16|CMP BA, HL]]
+
| [IX+dd],A
|16
+
| CE,44,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 1A
+
| [IX+dd],B
|[[PM_Opc_CMP16|CMP BA, X]]
+
| CE,4C,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 1B
+
| [IX+dd],L
|[[PM_Opc_CMP16|CMP BA, Y]]
+
| CE,54,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 38
+
| [IX+dd],H
|[[PM_Opc_CMP16|CMP HL, BA]]
+
| CE,5C,dd
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 39
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_CMP16|CMP HL, HL]]
+
| SC,#nn
|16
+
| 9F,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CF 3A
+
| SC,A
|[[PM_Opc_CMP16|CMP HL, X]]
+
| CE,C3
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CF 3B
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_CMP16|CMP HL, Y]]
+
| NB,#bb
|16
+
| CE,C4,bb
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 5C
+
| NB,A
|[[PM_Opc_CMP16|CMP SP, BA]]
+
| CE,CC
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 
|-
 
|-
|CF 5D
 
|[[PM_Opc_CMP16|CMP SP, HL]]
 
|16
 
 
|}
 
|}
  
'''Flags Affected:''' All
+
== '''EX''': Byte exchange ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="2" | [[S1C88_EX|EX]]
 +
| A,B
 +
| CC
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 +
|-
 +
| A,[HL]
 +
| CD
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 +
|}
  
== INC = Increase Register by 1 ==
+
== '''SWAP''': Nibble exchange ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_SWAP|SWAP]]
 +
| A
 +
| F6
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 +
|-
 +
| [[S1C88_SWAP|SWAP]]
 +
| [HL]
 +
| F7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – ||  – ||  – ||  – ||  – ||  – || –
 +
|-
 +
|}
  
{| border="1" style="text-align:left" class="sortable"
+
= Rotate/shift =
!Hex
+
== '''RL''': Rotate to left ==
!Mnemonic
+
{| class="wikitable sortable"
!Cycles
+
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|80
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_INC|INC A]]
 
|8
 
 
|-
 
|-
|81
+
| [[S1C88_RL|RL]]
|[[PM_Opc_INC|INC B]]
+
| A
|8
+
| CE,90
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|82
+
| [[S1C88_RL|RL]]
|[[PM_Opc_INC|INC L]]
+
| B
|8
+
| CE,91
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|83
+
| [[S1C88_RL|RL]]
|[[PM_Opc_INC|INC H]]
+
| [HL]
|8
+
| CE,93
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|84
+
| [[S1C88_RL|RL]]
|[[PM_Opc_INC|INC N]]
+
| [BR:ll]
|8
+
| CE,92,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|85 nn
+
|}
|[[PM_Opc_INC|INC [N+#nn]]]
+
 
|16
+
== '''RLC''': Rotate to left with carry ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|86
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_INC|INC [HL]]]
 
|12
 
 
|-
 
|-
|87
+
| [[S1C88_RLC|RLC]]
|[[PM_Opc_INC|INC SP]]
+
| A
|8
+
| CE,94
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|90
+
| [[S1C88_RLC|RLC]]
|[[PM_Opc_INC|INC BA]]
+
| B
|8
+
| CE,95
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|91
+
| [[S1C88_RLC|RLC]]
|[[PM_Opc_INC|INC HL]]
+
| [HL]
|8
+
| CE,97
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|92
+
| [[S1C88_RLC|RLC]]
|[[PM_Opc_INC|INC X]]
+
| [BR:ll]
|8
+
| CE,96,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|93
 
|[[PM_Opc_INC|INC Y]]
 
|8
 
 
|}
 
|}
  
'''Flags Affected:''' Zero
+
== '''RR''': Rotate to right ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_RR|RR]]
 +
| A
 +
| CE,98
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
| [[S1C88_RR|RR]]
 +
| B
 +
| CE,99
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
| [[S1C88_RR|RR]]
 +
| [HL]
 +
| CE,9B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
| [[S1C88_RR|RR]]
 +
| [BR:ll]
 +
| CE,9A,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
|}
  
== DEC = Decrease Register by 1 ==
+
== '''RRC''': Rotate to right with carry ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_RRC|RRC]]
 +
| A
 +
| CE,9C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
| [[S1C88_RRC|RRC]]
 +
| B
 +
| CE,9D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
| [[S1C88_RRC|RRC]]
 +
| [HL]
 +
| CE,9F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
| [[S1C88_RRC|RRC]]
 +
| [BR:ll]
 +
| CE,9E,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 +
|-
 +
|}
  
{| border="1" style="text-align:left" class="sortable"
+
== '''SLA''': Arithmetic shift to left ==
!Hex
+
{| class="wikitable sortable"
!Mnemonic
+
! rowspan="2" colspan="2" | Mnemonic
!Cycles
+
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|88
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_DEC|DEC A]]
 
|8
 
 
|-
 
|-
|89
+
| [[S1C88_SLA|SLA]]
|[[PM_Opc_DEC|DEC B]]
+
| A
|8
+
| CE,80
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|8A
+
| [[S1C88_SLA|SLA]]
|[[PM_Opc_DEC|DEC L]]
+
| B
|8
+
| CE,81
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|8B
+
| [[S1C88_SLA|SLA]]
|[[PM_Opc_DEC|DEC H]]
+
| [HL]
|8
+
| CE,83
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|8C
+
| [[S1C88_SLA|SLA]]
|[[PM_Opc_DEC|DEC N]]
+
| [BR:ll]
|8
+
| CE,82,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|8D nn
+
|}
|[[PM_Opc_DEC|DEC [N+#nn]]]
+
 
|16
+
== '''SLL''': Logical shift to left ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|8E
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_DEC|DEC [HL]]]
 
|12
 
 
|-
 
|-
|8F
+
| [[S1C88_SLL|SLL]]
|[[PM_Opc_DEC|DEC SP]]
+
| A
|8
+
| CE,84
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|98
+
| [[S1C88_SLL|SLL]]
|[[PM_Opc_DEC|DEC BA]]
+
| B
|8
+
| CE,85
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|99
+
| [[S1C88_SLL|SLL]]
|[[PM_Opc_DEC|DEC HL]]
+
| [HL]
|8
+
| CE,87
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|9A
+
| [[S1C88_SLL|SLL]]
|[[PM_Opc_DEC|DEC X]]
+
| [BR:ll]
|8
+
| CE,86,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || – || ↕ || ↕
 
|-
 
|-
|9B
 
|[[PM_Opc_DEC|DEC Y]]
 
|8
 
 
|}
 
|}
  
'''Flags Affected:''' Zero
+
== '''SRA''': Arithmetic shift to right ==
 
+
{| class="wikitable sortable"
== NEG = Negate ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Operation
!Hex
+
! rowspan="2" | Cycles
!Mnemonic
+
! rowspan="2" | Bytes
!Cycles
+
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_SRA|SRA]]
 +
| A
 +
| CE,88
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || 0 || ↕ || ↕
 
|-
 
|-
|CE A4
+
| [[S1C88_SRA|SRA]]
|[[PM_Opc_NEG|NEG A]]
+
| B
|12
+
| CE,89
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || 0 || ↕ || ↕
 
|-
 
|-
|CE A5
+
| [[S1C88_SRA|SRA]]
|[[PM_Opc_NEG|NEG B]]
+
| [HL]
|12
+
| CE,8B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || 0 || ↕ || ↕
 
|-
 
|-
|CE A6 nn
+
| [[S1C88_SRA|SRA]]
|[[PM_Opc_NEG|NEG [N+#nn]]]
+
| [BR:ll]
|20
+
| CE,8A,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || 0 || ↕ || ↕
 
|-
 
|-
|CE A7
 
|[[PM_Opc_NEG|NEG [HL]]]
 
|16
 
 
|}
 
|}
  
'''Flags Affected:''' All
+
== '''SRL''': Logical shift to right ==
 
+
{| class="wikitable sortable"
== MUL = Multiply ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Operation
!Hex
+
! rowspan="2" | Cycles
!Mnemonic
+
! rowspan="2" | Bytes
!Cycles
+
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_SRL|SRL]]
 +
| A
 +
| CE,8C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || 0 || – || ↕ || ↕
 +
|-
 +
| [[S1C88_SRL|SRL]]
 +
| B
 +
| CE,8D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || 0 || – || ↕ || ↕
 +
|-
 +
| [[S1C88_SRL|SRL]]
 +
| [HL]
 +
| CE,8F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || 0 || – || ↕ || ↕
 +
|-
 +
| [[S1C88_SRL|SRL]]
 +
| [BR:ll]
 +
| CE,8E,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || 0 || – || ↕ || ↕
 
|-
 
|-
|CE D8
 
|[[PM_Opc_MUL|MUL L, A]]
 
|48
 
 
|}
 
|}
  
'''Flags Affected:''' All
+
= Auxiliary operation =
 
+
== '''PACK''': Pack ==
== DIV = Divide ==
+
{| class="wikitable sortable"
 
+
! rowspan="2" colspan="2" | Mnemonic
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Machine Code
!Hex
+
! rowspan="2" | Operation
!Mnemonic
+
! rowspan="2" | Cycles
!Cycles
+
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_PACK|PACK]]
 +
|
 +
| DE
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE D9
 
|[[PM_Opc_DIV|DIV HL, A]]
 
|52
 
 
|}
 
|}
  
'''Flags Affected:''' All
+
== '''UPCK''': Unpack ==
 
+
{| class="wikitable sortable"
'''Note:''' Can throw Division by Zero
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
= Logic =
+
! rowspan="2" | Operation
 
+
! rowspan="2" | Cycles
== TST = Test Bits ==
+
! rowspan="2" | Bytes
 
+
! colspan="8" | SC
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|94
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_TST|TST A, B]]
 
|8
 
 
|-
 
|-
|95 nn
+
| [[S1C88_UPCK|UPCK]]
|[[PM_Opc_TST|TST [HL], #nn]]
+
|  
|12
+
| DF
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|96 nn
+
|}
|[[PM_Opc_TST|TST A, #nn]]
+
 
|8
+
== '''SEP''': Code extension ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|97 nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_TST|TST B, #nn]]
+
|-
|8
+
| [[S1C88_SEP|SEP]]
 +
|  
 +
| CE,A8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|DC nn nn
 
|[[PM_Opc_TST|TST [N+#nn], #nn]]
 
|16
 
 
|}
 
|}
  
'''Flags Affected:''' Zero, Sign
+
= 16-bit arithmetic operation =
 
+
== '''ADD''': Addition ==
== AND = Logical AND ==
+
{| class="wikitable sortable"
 
+
! rowspan="2" colspan="2" | Mnemonic
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Machine Code
!Hex
+
! rowspan="2" | Operation
!Mnemonic
+
! rowspan="2" | Cycles
!Cycles
+
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|20
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_AND|AND A, A]]
 
|8
 
 
|-
 
|-
|21
+
| rowspan="3" | [[S1C88_ADD|ADD]]
|[[PM_Opc_AND|AND A, B]]
+
| IX,#mmnn
|8
+
| C2,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|22 nn
+
| IX,BA
|[[PM_Opc_AND|AND A, #nn]]
+
| CE,40
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|23
+
| IX,HL
|[[PM_Opc_AND|AND A, [HL]]]
+
| CE,41
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|24 nn
+
| rowspan="5" | [[S1C88_ADD|ADD]]
|[[PM_Opc_AND|AND A, [N+#nn]]]
+
| BA,#mmnn
|12
+
| C0,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|25 nn nn
+
| BA,BA
|[[PM_Opc_AND|AND A, [#nnnn]]]
+
| CE, 0
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|26
+
| BA,HL
|[[PM_Opc_AND|AND A, [X]]]
+
| CE, 1
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|27
+
| BA,IX
|[[PM_Opc_AND|AND A, [Y]]]
+
| CE, 2
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|9C nn
+
| BA,IY
|[[PM_Opc_AND|AND F, #nn]]
+
| CE, 3
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B0 nn
+
| rowspan="3" | [[S1C88_ADD|ADD]]
|[[PM_Opc_AND|AND B, #nn]]
+
| SP,BA
|12
+
| CE,44
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B1 nn
+
| SP,HL
|[[PM_Opc_AND|AND L, #nn]]
+
| CE,45
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B2 nn
+
| SP,#mmnn
|[[PM_Opc_AND|AND H, #nn]]
+
| CE,68,nn,mm
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|D8 nn nn
+
| rowspan="3" | [[S1C88_ADD|ADD]]
|[[PM_Opc_AND|AND [N+#nn], #nn]]
+
| IY,#mmnn
|20
+
| C3,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 20 ss
+
| IY,BA
|[[PM_Opc_AND|AND A, [X+#ss]]]
+
| CE,42
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 21 ss
+
| IY,HL
|[[PM_Opc_AND|AND A, [Y+#ss]]]
+
| CE,43
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 22
+
| rowspan="5" | [[S1C88_ADD|ADD]]
|[[PM_Opc_AND|AND A, [X+L]]]
+
| HL,#mmnn
|16
+
| C1,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 23
+
| HL,BA
|[[PM_Opc_AND|AND A, [Y+L]]]
+
| CE,20
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 24
+
| HL,HL
|[[PM_Opc_AND|AND [HL], A]]
+
| CE,21
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 25 nn
+
| HL,IX
|[[PM_Opc_AND|AND [HL], #nn]]
+
| CE,22
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 26
+
| HL,IY
|[[PM_Opc_AND|AND [HL], [X]]]
+
| CE,23
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 27
 
|[[PM_Opc_AND|AND [HL], [Y]]]
 
|20
 
 
|}
 
|}
  
'''Flags Affected:''' Zero, Sign
+
== '''ADC''': Addition with carry ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="5" | [[S1C88_ADC|ADC]]
 +
| BA,BA
 +
| CE, 4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,HL
 +
| CE, 5
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,IX
 +
| CE, 6
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,IY
 +
| CE, 7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,#mmnn
 +
| CE,60,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| rowspan="5" | [[S1C88_ADC|ADC]]
 +
| HL,BA
 +
| CE,24
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| HL,HL
 +
| CE,25
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| HL,IX
 +
| CE,26
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| HL,IY
 +
| CE,27
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| HL,#mmnn
 +
| CE,61,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
|}
  
== OR = Logical Inclusive-OR ==
+
== '''SUB''': Subtraction ==
 
+
{| class="wikitable sortable"
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" colspan="2" | Mnemonic
!Hex
+
! rowspan="2" | Machine Code
!Mnemonic
+
! rowspan="2" | Operation
!Cycles
+
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|28
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_OR|OR A, A]]
 
|8
 
 
|-
 
|-
|29
+
| rowspan="3" | [[S1C88_SUB|SUB]]
|[[PM_Opc_OR|OR A, B]]
+
| IX,#mmnn
|8
+
| D2,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|2A nn
+
| IX,BA
|[[PM_Opc_OR|OR A, #nn]]
+
| CE,48
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|2B
+
| IX,HL
|[[PM_Opc_OR|OR A, [HL]]]
+
| CE,49
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|2C nn
+
| rowspan="5" | [[S1C88_SUB|SUB]]
|[[PM_Opc_OR|OR A, [N+#nn]]]
+
| BA,#mmnn
|12
+
| D0,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|2D nn nn
+
| BA,BA
|[[PM_Opc_OR|OR A, [#nnnn]]]
+
| CE, 8
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|2E
+
| BA,HL
|[[PM_Opc_OR|OR A, [X]]]
+
| CE, 9
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|2F
+
| BA,IX
|[[PM_Opc_OR|OR A, [Y]]]
+
| CE, A
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|9D nn
+
| BA,IY
|[[PM_Opc_OR|OR F, #nn]]
+
| CE, B
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B4 nn
+
| rowspan="3" | [[S1C88_SUB|SUB]]
|[[PM_Opc_OR|OR B, #nn]]
+
| SP,BA
|12
+
| CE,4C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B5 nn
+
| SP,HL
|[[PM_Opc_OR|OR L, #nn]]
+
| CE,4D
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B6 nn
+
| SP,#mmnn
|[[PM_Opc_OR|OR H, #nn]]
+
| CE,6A,nn,mm
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|D9 nn nn
+
| rowspan="3" | [[S1C88_SUB|SUB]]
|[[PM_Opc_OR|OR [N+#nn], #nn]]
+
| IY,#mmnn
|20
+
| D3,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 28 ss
+
| IY,BA
|[[PM_Opc_OR|OR A, [X+#ss]]]
+
| CE,4A
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 29 ss
+
| IY,HL
|[[PM_Opc_OR|OR A, [Y+#ss]]]
+
| CE,4B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 2A
+
| rowspan="5" | [[S1C88_SUB|SUB]]
|[[PM_Opc_OR|OR A, [X+L]]]
+
| HL,#mmnn
|16
+
| D1,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 2B
+
| HL,BA
|[[PM_Opc_OR|OR A, [Y+L]]]
+
| CE,28
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 2C
+
| HL,HL
|[[PM_Opc_OR|OR [HL], A]]
+
| CE,29
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 2D nn
+
| HL,IX
|[[PM_Opc_OR|OR [HL], #nn]]
+
| CE,2A
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 2E
+
| HL,IY
|[[PM_Opc_OR|OR [HL], [X]]]
+
| CE,2B
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 2F
 
|[[PM_Opc_OR|OR [HL], [Y]]]
 
|20
 
 
|}
 
|}
  
'''Flags Affected:''' Zero, Sign
+
== '''SBC''': Subtraction with carry ==
 
+
{| class="wikitable sortable"
== XOR = Logical Exclusive-OR ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Operation
!Hex
+
! rowspan="2" | Cycles
!Mnemonic
+
! rowspan="2" | Bytes
!Cycles
+
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="5" | [[S1C88_SBC|SBC]]
 +
| BA,BA
 +
| CE, C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,HL
 +
| CE, D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,IX
 +
| CE, E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,IY
 +
| CE, F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| BA,#mmnn
 +
| CE,62,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| rowspan="5" | [[S1C88_SBC|SBC]]
 +
| HL,BA
 +
| CE,2C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 +
|-
 +
| HL,HL
 +
| CE,2D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|38
+
| HL,IX
|[[PM_Opc_XOR|XOR A, A]]
+
| CE,2E
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|39
+
| HL,IY
|[[PM_Opc_XOR|XOR A, B]]
+
| CE,2F
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|3A nn
+
| HL,#mmnn
|[[PM_Opc_XOR|XOR A, #nn]]
+
| CE,63,nn,mm
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|3B
+
|}
|[[PM_Opc_XOR|XOR A, [HL]]]
+
 
|8
+
== '''CP''': Comparison ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|3C nn
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_XOR|XOR A, [N+#nn]]]
 
|12
 
 
|-
 
|-
|3D nn nn
+
| [[S1C88_CP|CP]]
|[[PM_Opc_XOR|XOR A, [#nnnn]]]
+
| IX,#mmnn
|16
+
| D6,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|3E
+
| rowspan="5" | [[S1C88_CP|CP]]
|[[PM_Opc_XOR|XOR A, [X]]]
+
| BA,#mmnn
|8
+
| D4,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|3F
+
| BA,BA
|[[PM_Opc_XOR|XOR A, [Y]]]
+
| CE,18
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|9E nn
+
| BA,HL
|[[PM_Opc_XOR|XOR F, #nn]]
+
| CE,19
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B8 nn
+
| BA,IX
|[[PM_Opc_XOR|XOR B, #nn]]
+
| CE,1A
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE B9 nn
+
| BA,IY
|[[PM_Opc_XOR|XOR L, #nn]]
+
| CE,1B
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE BA nn
+
| [[S1C88_CP|CP]]
|[[PM_Opc_XOR|XOR H, #nn]]
+
| IY,#mmnn
|12
+
| D7,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|DA nn nn
+
| rowspan="5" | [[S1C88_CP|CP]]
|[[PM_Opc_XOR|XOR [N+#nn], #nn]]
+
| HL,#mmnn
|20
+
| D5,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 38 ss
+
| HL,BA
|[[PM_Opc_XOR|XOR A, [X+#ss]]]
+
| CE,38
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 39 ss
+
| HL,HL
|[[PM_Opc_XOR|XOR A, [Y+#ss]]]
+
| CE,39
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 3A
+
| HL,IX
|[[PM_Opc_XOR|XOR A, [X+L]]]
+
| CE,3A
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 3B
+
| HL,IY
|[[PM_Opc_XOR|XOR A, [Y+L]]]
+
| CE,3B
|16
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 3C
+
| rowspan="3" | [[S1C88_CP|CP]]
|[[PM_Opc_XOR|XOR [HL], A]]
+
| SP,BA
|16
+
| CE,5C
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 3D nn
+
| SP,HL
|[[PM_Opc_XOR|XOR [HL], #nn]]
+
| CE,5D
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 3E
+
| SP,#mmnn
|[[PM_Opc_XOR|XOR [HL], [X]]]
+
| CE,6C,nn,mm
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CE 3F
 
|[[PM_Opc_XOR|XOR [HL], [Y]]]
 
|20
 
 
|}
 
|}
  
'''Flags Affected:''' Zero, Sign
+
== '''INC''': 1 increment ==
 
+
{| class="wikitable sortable"
== NOT = Logical NOT ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Operation
!Hex
+
! rowspan="2" | Cycles
!Mnemonic
+
! rowspan="2" | Bytes
!Cycles
+
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_INC|INC]]
 +
| IX
 +
| 92
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 +
|-
 +
| [[S1C88_INC|INC]]
 +
| BA
 +
| 90
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE A0
+
| [[S1C88_INC|INC]]
|[[PM_Opc_NOT|NOT A]]
+
| HL
|12
+
| 91
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE A1
+
| [[S1C88_INC|INC]]
|[[PM_Opc_NOT|NOT B]]
+
| IY
|12
+
| 93
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE A2 nn
+
| [[S1C88_INC|INC]]
|[[PM_Opc_NOT|NOT [N+#nn]]]
+
| SP
|20
+
| 87
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE A3
 
|[[PM_Opc_NOT|NOT [HL]]]
 
|16
 
 
|}
 
|}
  
'''Flags Affected:''' Zero, Sign
+
== '''DEC''': 1 decrement ==
 
+
{| class="wikitable sortable"
= Shift & Rotate =
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
== SHL = Shift Left ==
+
! rowspan="2" | Operation
 
+
! rowspan="2" | Cycles
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Bytes
!Hex
+
! colspan="8" | SC
!Mnemonic
+
|-
!Cycles
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_DEC|DEC]]
 +
| IX
 +
| 9A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 +
|-
 +
| [[S1C88_DEC|DEC]]
 +
| BA
 +
| 98
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE 84
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_SHL|SHL A]]
+
| HL
|12
+
| 99
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE 85
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_SHL|SHL B]]
+
| IY
|12
+
| 9B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE 86 nn
+
| [[S1C88_DEC|DEC]]
|[[PM_Opc_SHL|SHL [N+#nn]]]
+
| SP
|20
+
| 8F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || ↕
 
|-
 
|-
|CE 87
 
|[[PM_Opc_SHL|SHL [HL]]]
 
|16
 
 
|}
 
|}
  
'''Flags Affected:''' Zero, Carry, Sign
+
= 16-bit transfer =
 
+
== '''LD''': Load ==
== SAL = Shift Arithmetic Left ==
+
{| class="wikitable sortable"
 
+
! rowspan="2" colspan="2" | Mnemonic
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Machine Code
!Hex
+
! rowspan="2" | Operation
!Mnemonic
+
! rowspan="2" | Cycles
!Cycles
+
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="11" | [[S1C88_LD|LD]]
 +
| IY,[hhll]
 +
| BB,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,#mmnn
 +
| C7,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,[SP+dd]
 +
| CE,73,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,[HL]
 +
| CE,C3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,[IX]
 +
| CE,D3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,[IY]
 +
| CE,DB
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,BA
 +
| CE,EC
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,HL
 +
| CE,ED
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,IX
 +
| CE,EE
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,IY
 +
| CE,EF
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IY,SP
 +
| CE,FE
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="6" | [[S1C88_LD|LD]]
 +
| SP,#mmnn
 +
| CE,6E,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| SP,[hhll]
 +
| CE,78,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| SP,BA
 +
| CE,F0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| SP,HL
 +
| CE,F1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| SP,IX
 +
| CE,F2
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| SP,IY
 +
| CE,F3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="12" | [[S1C88_LD|LD]]
 +
| BA,[hhll]
 +
| B8,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,#mmnn
 +
| C4,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,[SP+dd]
 +
| CE,70,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,[HL]
 +
| CE,C0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,[IX]
 +
| CE,D0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,[IY]
 +
| CE,D8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,BA
 +
| CE,E0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,HL
 +
| CE,E1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,IX
 +
| CE,E2
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,IY
 +
| CE,E3
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,SP
 +
| CE,F8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BA,PC
 +
| CE,F9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="2" | [[S1C88_LD|LD]]
 +
| BR,#hh
 +
| B4,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| BR,A
 +
| CE,C2
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="4" | [[S1C88_LD|LD]]
 +
| [IX+L],A
 +
| CE,46
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IX+L],B
 +
| CE,4E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IX+L],L
 +
| CE,56
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IX+L],H
 +
| CE,5E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="12" | [[S1C88_LD|LD]]
 +
| HL,[hhll]
 +
| B9,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,#mmnn
 +
| C5,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,[SP+dd]
 +
| CE,71,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,[HL]
 +
| CE,C1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,[IX]
 +
| CE,D1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,[IY]
 +
| CE,D9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,BA
 +
| CE,E4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,HL
 +
| CE,E5
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,IX
 +
| CE,E6
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,IY
 +
| CE,E7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,SP
 +
| CE,F4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| HL,PC
 +
| CE,F5
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="4" | [[S1C88_LD|LD]]
 +
| [IY+L],A
 +
| CE,47
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY+L],B
 +
| CE,4F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY+L],L
 +
| CE,57
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY+L],H
 +
| CE,5F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="2" | [[S1C88_LD|LD]]
 +
| YP,#pp
 +
| CE,C7,pp
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| YP,A
 +
| CE,CF
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="17" | [[S1C88_LD|LD]]
 +
| [IY],A
 +
| 70
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],B
 +
| 71
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],L
 +
| 72
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],H
 +
| 73
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[BR:ll]
 +
| 74,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[HL]
 +
| 75
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[IX]
 +
| 76
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[IY]
 +
| 77
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],#nn
 +
| B7,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[IX+dd]
 +
| CE,78,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[IY+dd]
 +
| CE,79,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[IX+L]
 +
| CE,7A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],[IY+L]
 +
| CE,7B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],BA
 +
| CE,DC
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],HL
 +
| CE,DD
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],IX
 +
| CE,DE
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY],IY
 +
| CE,DF
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="8" | [[S1C88_LD|LD]]
 +
| [BR:ll],A
 +
| 78,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],B
 +
| 79,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],L
 +
| 7A,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],H
 +
| 7B,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],[HL]
 +
| 7D,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],[IX]
 +
| 7E,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],[IY]
 +
| 7F,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [BR:ll],#nn
 +
| DD,ll,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="4" | [[S1C88_LD|LD]]
 +
| [SP+dd],BA
 +
| CE,74,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [SP+dd],HL
 +
| CE,75,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [SP+dd],IX
 +
| CE,76,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [SP+dd],IY
 +
| CE,77,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="4" | [[S1C88_LD|LD]]
 +
| [IY+dd],A
 +
| CE,45,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY+dd],B
 +
| CE,4D,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY+dd],L
 +
| CE,55,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [IY+dd],H
 +
| CE,5D,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="20" | [[S1C88_LD|LD]]
 +
| A,A
 +
| 40
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,B
 +
| 41
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,L
 +
| 42
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,H
 +
| 43
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[BR:ll]
 +
| 44,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[HL]
 +
| 45
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[IX]
 +
| 46
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[IY]
 +
| 47
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,#nn
 +
| B0,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[IX+dd]
 +
| CE,40,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[IY+dd]
 +
| CE,41,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[IX+L]
 +
| CE,42
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[IY+L]
 +
| CE,43
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,BR
 +
| CE,C0
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,SC
 +
| CE,C1
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,NB
 +
| CE,C8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,EP
 +
| CE,C9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,XP
 +
| CE,CA
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,YP
 +
| CE,CB
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| A,[hhll]
 +
| CE,D0,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="11" | [[S1C88_LD|LD]]
 +
| IX,[hhll]
 +
| BA,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,#mmnn
 +
| C6,nn,mm
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,[SP+dd]
 +
| CE,72,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,[HL]
 +
| CE,C2
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,[IX]
 +
| CE,D2
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,[IY]
 +
| CE,DA
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,BA
 +
| CE,E8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,HL
 +
| CE,E9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,IX
 +
| CE,EA
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,IY
 +
| CE,EB
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| IX,SP
 +
| CE,FA
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="14" | [[S1C88_LD|LD]]
 +
| B,A
 +
| 48
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,B
 +
| 49
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,L
 +
| 4A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,H
 +
| 4B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[BR:ll]
 +
| 4C,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[HL]
 +
| 4D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[IX]
 +
| 4E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[IY]
 +
| 4F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,#nn
 +
| B1,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[IX+dd]
 +
| CE,48,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[IY+dd]
 +
| CE,49,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[IX+L]
 +
| CE,4A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[IY+L]
 +
| CE,4B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| B,[hhll]
 +
| CE,D1,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="14" | [[S1C88_LD|LD]]
 +
| H,A
 +
| 58
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,B
 +
| 59
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,L
 +
| 5A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,H
 +
| 5B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[BR:ll]
 +
| 5C,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[HL]
 +
| 5D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[IX]
 +
| 5E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[IY]
 +
| 5F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,#nn
 +
| B3,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[IX+dd]
 +
| CE,58,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[IY+dd]
 +
| CE,59,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[IX+L]
 +
| CE,5A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[IY+L]
 +
| CE,5B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| H,[hhll]
 +
| CE,D3,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="17" | [[S1C88_LD|LD]]
 +
| [HL],A
 +
| 68
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],B
 +
| 69
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],L
 +
| 6A
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],H
 +
| 6B
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[BR:ll]
 +
| 6C,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[HL]
 +
| 6D
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[IX]
 +
| 6E
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[IY]
 +
| 6F
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],#nn
 +
| B5,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[IX+dd]
 +
| CE,60,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[IY+dd]
 +
| CE,61,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[IX+L]
 +
| CE,62
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],[IY+L]
 +
| CE,63
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],BA
 +
| CE,C4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],HL
 +
| CE,C5
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],IX
 +
| CE,C6
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [HL],IY
 +
| CE,C7
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="14" | [[S1C88_LD|LD]]
 +
| L,A
 +
| 50
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,B
 +
| 51
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,L
 +
| 52
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,H
 +
| 53
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[BR:ll]
 +
| 54,ll
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[HL]
 +
| 55
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[IX]
 +
| 56
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[IY]
 +
| 57
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,#nn
 +
| B2,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[IX+dd]
 +
| CE,50,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[IY+dd]
 +
| CE,51,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[IX+L]
 +
| CE,52
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[IY+L]
 +
| CE,53
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| L,[hhll]
 +
| CE,D2,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| rowspan="9" | [[S1C88_LD|LD]]
 +
| [hhll],BA
 +
| BC,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [hhll],HL
 +
| BD,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [hhll],IX
 +
| BE,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [hhll],IY
 +
| BF,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 +
|-
 +
| [hhll],A
 +
| CE,D4,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 80
+
| [hhll],B
|[[PM_Opc_SAL|SAL A]]
+
| CE,D5,ll,hh
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 81
+
| [hhll],L
|[[PM_Opc_SAL|SAL B]]
+
| CE,D6,ll,hh
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 82 nn
+
| [hhll],H
|[[PM_Opc_SAL|SAL [N+#nn]]]
+
| CE,D7,ll,hh
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 4
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 83
+
| [hhll],SP
|[[PM_Opc_SAL|SAL [HL]]]
+
| CE,7C,ll,hh
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 4
'''Flags Affected:''' All
+
| – || – || – || – || – || – || – || –
 
 
== SHR = Shift Right ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|CE 8C
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_SHR|SHR A]]
+
| XP,#pp
|12
+
| CE,C6,pp
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 8D
+
| XP,A
|[[PM_Opc_SHR|SHR B]]
+
| CE,CE
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 8E nn
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_SHR|SHR [N+#nn]]]
+
| EP,#pp
|20
+
| CE,C5,pp
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 8F
+
| EP,A
|[[PM_Opc_SHR|SHR [HL]]]
+
| CE,CD
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 2
'''Flags Affected:''' Zero, Carry, Sign
+
| – || – || – || – || – || – || – || –
 
 
== SAR = Shift Arithmetic Right ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|CE 88
+
| rowspan="17" | [[S1C88_LD|LD]]
|[[PM_Opc_SAR|SAR A]]
+
| [IX],A
|12
+
| 60
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 89
+
| [IX],B
|[[PM_Opc_SAR|SAR B]]
+
| 61
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 8A nn
+
| [IX],L
|[[PM_Opc_SAR|SAR [N+#nn]]]
+
| 62
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 8B
+
| [IX],H
|[[PM_Opc_SAR|SAR [HL]]]
+
| 63
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 1
'''Flags Affected:''' All
+
| – || – || – || – || – || – || – || –
 
 
== ROL = Rotate Left ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|CE 94
+
| [IX],[BR:ll]
|[[PM_Opc_ROL|ROL A]]
+
| 64,ll
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 95
+
| [IX],[HL]
|[[PM_Opc_ROL|ROL B]]
+
| 65
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 96 nn
+
| [IX],[IX]
|[[PM_Opc_ROL|ROL [N+#nn]]]
+
| 66
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 97
+
| [IX],[IY]
|[[PM_Opc_ROL|ROL [HL]]]
+
| 67
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 1
'''Flags Affected:''' Zero, Carry, Sign
+
| – || – || – || – || – || – || – || –
 
 
== ROLC = Rotate Left through Carry ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|CE 90
+
| [IX],#nn
|[[PM_Opc_ROLC|ROLC A]]
+
| B6,nn
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 91
+
| [IX],[IX+dd]
|[[PM_Opc_ROLC|ROLC B]]
+
| CE,68,dd
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 92 nn
+
| [IX],[IY+dd]
|[[PM_Opc_ROLC|ROLC [N+#nn]]]
+
| CE,69,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 93
+
| [IX],[IX+L]
|[[PM_Opc_ROLC|ROLC [HL]]]
+
| CE,6A
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 2
'''Flags Affected:''' Zero, Carry, Sign
+
| – || – || – || – || – || – || – || –
 
 
== ROR = Rotate Right ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|CE 9C
+
| [IX],[IY+L]
|[[PM_Opc_ROR|ROR A]]
+
| CE,6B
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 9D
+
| [IX],BA
|[[PM_Opc_ROR|ROR B]]
+
| CE,D4
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 9E nn
+
| [IX],HL
|[[PM_Opc_ROR|ROR [N+#nn]]]
+
| CE,D5
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 9F
+
| [IX],IX
|[[PM_Opc_ROR|ROR [HL]]]
+
| CE,D6
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 2
'''Flags Affected:''' Zero, Carry, Sign
+
| – || – || – || – || – || – || – || –
 
 
== RORC = Rotate Right through Carry ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|CE 98
+
| [IX],IY
|[[PM_Opc_RORC|RORC A]]
+
| CE,D7
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 99
+
| rowspan="4" | [[S1C88_LD|LD]]
|[[PM_Opc_RORC|RORC B]]
+
| [IX+dd],A
|12
+
| CE,44,dd
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 9A nn
+
| [IX+dd],B
|[[PM_Opc_RORC|RORC [N+#nn]]]
+
| CE,4C,dd
|20
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CE 9B
+
| [IX+dd],L
|[[PM_Opc_RORC|RORC [HL]]]
+
| CE,54,dd
|16
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 3
'''Flags Affected:''' Zero, Carry, Sign
+
| – || – || – || – || – || – || – || –
 
 
= Swap & Expand =
 
 
 
== XCHG = Exchange Registers ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|C8
+
| [IX+dd],H
|[[PM_Opc_XCHG|XCHG BA, HL]]
+
| CE,5C,dd
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|C9
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_XCHG|XCHG BA, X]]
+
| SC,#nn
|12
+
| 9F,nn
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CA
+
| SC,A
|[[PM_Opc_XCHG|XCHG BA, Y]]
+
| CE,C3
|12
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CB
+
| rowspan="2" | [[S1C88_LD|LD]]
|[[PM_Opc_XCHG|XCHG BA, SP]]
+
| NB,#bb
|12
+
| CE,C4,bb
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CC
+
| NB,A
|[[PM_Opc_XCHG|XCHG A, B]]
+
| CE,CC
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CD
 
|[[PM_Opc_XCHG|XCHG A, [HL]]]
 
|12
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
== '''EX''': Byte exchange ==
 
+
{| class="wikitable sortable"
== PACK / UNPACK = Pack and Unpack Nibbles ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Operation
!Hex
+
! rowspan="2" | Cycles
!Mnemonic
+
! rowspan="2" | Bytes
!Cycles
+
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| rowspan="4" | [[S1C88_EX|EX]]
 +
| BA,HL
 +
| C8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|DE
+
| BA,IX
|[[PM_Opc_PACK|PACK]]
+
| C9
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|DF
+
| BA,IY
|[[PM_Opc_UNPACK|UNPACK]]
+
| CA
|8
+
| ?PSEUDOCODE
|}
+
| ?CYCLES
 
+
| 1
'''Flags Affected:''' None
+
| – || – || – || – || – || – || – || –
 
 
== SWAP = Swap Low and High Nibbles ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
 
|-
 
|-
|F6
+
| BA,SP
|[[PM_Opc_SWAP|SWAP A]]
+
| CB
|8
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|F7
 
|[[PM_Opc_SWAP|SWAP [HL]]]
 
|12
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
= Stack Control =
 
+
== '''PUSH''': Push ==
== EX = Expand Register ==
+
{| class="wikitable sortable"
 
+
! rowspan="2" colspan="2" | Mnemonic
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Machine Code
!Hex
+
! rowspan="2" | Operation
!Mnemonic
+
! rowspan="2" | Cycles
!Cycles
+
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 
|-
 
|-
|CE A8
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_EX|EX BA, A]]
+
| IY
|12
+
| A3
|}
+
| ?PSEUDOCODE
 
+
| ?CYCLES
'''Flags Affected:''' None
+
| 1
 
+
| – || – || – || – || – || – || – || –
= Stack =
 
 
 
== PUSH = Push Register into Stack ==
 
 
 
{| border="1" style="text-align:left" class="sortable"
 
!Hex
 
!Mnemonic
 
!Cycles
 
!Regs stacked from top to bottom
 
 
|-
 
|-
|A0
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH BA]]
+
| IX
|16
+
| A2
|B, A
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A1
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH HL]]
+
| ALL
|16
+
| CE,B8
|H, L
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A2
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH X]]
+
| B
|16
+
| CE,B1
|X(Hi), X(Lo)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A3
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH Y]]
+
| BA
|16
+
| A0
|Y(Hi), Y(Lo)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A4
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH N]]
+
| IP
|12
+
| A6
|N
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A5
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH I]]
+
| ALE
|12
+
| CE,B9
|I
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A6
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSHX]]
+
| L
|16
+
| CE,B2
|XI, YI
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A7
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH F]]
+
| HL
|12
+
| A1
|F
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B0
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH A]]
+
| A
|12
+
| CE,B0
|A
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B1
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH B]]
+
| BR
|12
+
| A4
|B
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B2
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH L]]
+
| H
|12
+
| CE,B3
|L
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B3
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSH H]]
+
| SC
|12
+
| A7
|H
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B8
+
| [[S1C88_PUSH|PUSH]]
|[[PM_Opc_PUSH|PUSHA]]
+
| EP
|48
+
| A5
|B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B9
 
|[[PM_Opc_PUSH|PUSHAX]]
 
|60
 
|B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N, I, XI, YI
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
== '''POP''': Pop ==
 
+
{| class="wikitable sortable"
== POP = Pop Register from Stack ==
+
! rowspan="2" colspan="2" | Mnemonic
 
+
! rowspan="2" | Machine Code
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Operation
!Hex
+
! rowspan="2" | Cycles
!Mnemonic
+
! rowspan="2" | Bytes
!Cycles
+
! colspan="8" | SC
!Regs stacked from top to bottom
+
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_POP|POP]]
 +
| IY
 +
| AB
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A8
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP BA]]
+
| IX
|12
+
| AA
|B, A
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|A9
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP HL]]
+
| ALL
|12
+
| CE,BC
|H, L
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|AA
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP X]]
+
| B
|12
+
| CE,B5
|X(Hi), X(Lo)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|AB
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP Y]]
+
| BA
|12
+
| A8
|Y(Hi), Y(Lo)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|AC
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP N]]
+
| IP
|8
+
| AE
|N
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|AD
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP I]]
+
| ALE
|8
+
| CE,BD
|I
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|AE
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POPX]]
+
| L
|12
+
| CE,B6
|XI, YI
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|AF
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP F]]
+
| HL
|8
+
| A9
|F
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B4
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP A]]
+
| A
|12
+
| CE,B4
|A
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B5
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP B]]
+
| BR
|12
+
| AC
|B
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B6
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP L]]
+
| H
|12
+
| CE,B7
|L
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF B7
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POP H]]
+
| SC
|12
+
| AF
|H
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕ || ↕
 
|-
 
|-
|CF BC
+
| [[S1C88_POP|POP]]
|[[PM_Opc_POP|POPA]]
+
| EP
|32
+
| AD
|B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|CF BD
 
|[[PM_Opc_POP|POPAX]]
 
|40
 
|B, A, H, L, X(Hi:Lo), Y(Hi:Lo), N, I, XI, YI
 
 
|}
 
|}
 
'''Flags Affected:''' None
 
  
 
= Branch =
 
= Branch =
 
+
== '''JRS''': Relative short jump ==
== CALL = Call routine ==
+
{| class="wikitable sortable"
 
+
! rowspan="2" colspan="2" | Mnemonic
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" | Machine Code
!Hex
+
! rowspan="2" | Operation
!Mnemonic
+
! rowspan="2" | Cycles
!Cycles,True
+
! rowspan="2" | Bytes
!or False
+
! colspan="8" | SC
!Condition
+
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_JRS|JRS]]
 +
| F0,rr
 +
| CE,E8,rr
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| – || – || – || – || – || – || – || –
 
|-
 
|-
|E0 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLCB #ss]]<SUP>*1</SUP>
+
| F1,rr
|20
+
| CE,E9,rr
|8
+
| ?PSEUDOCODE
|Carry=1
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E1 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLNCB #ss]]<SUP>*1</SUP>
+
| C,rr
|20
+
| E4,rr
|8
+
| ?PSEUDOCODE
|Carry=0
+
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E2 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLZB #ss]]<SUP>*1</SUP>
+
| LE,rr
|20
+
| CE,E1,rr
|8
+
| ?PSEUDOCODE
|Zero=1
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E3 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLNZB #ss]]<SUP>*1</SUP>
+
| GE,rr
|20
+
| CE,E3,rr
|8
+
| ?PSEUDOCODE
|Zero=0
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E8 ss ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLCW #ssss]]<SUP>*1</SUP>
+
| rr
|24
+
| F1,rr
|12
+
| ?PSEUDOCODE
|Carry=1
+
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E9 ss ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLNCW #ssss]]<SUP>*1</SUP>
+
| NC,rr
|24
+
| E5,rr
|12
+
| ?PSEUDOCODE
|Carry=0
+
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|EA ss ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLZW #ssss]]<SUP>*1</SUP>
+
| M,rr
|24
+
| CE,E7,rr
|12
+
| ?PSEUDOCODE
|Zero=1
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|EB ss ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLNZW #ssss]]<SUP>*1</SUP>
+
| LT,rr
|24
+
| CE,E0,rr
|12
+
| ?PSEUDOCODE
|Zero=0
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|F0 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLB #ss]]<SUP>*1</SUP>
+
| F3,rr
|20
+
| CE,EB,rr
|None
+
| ?PSEUDOCODE
|None
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|F2 ss ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLW #ssss]]<SUP>*1</SUP>
+
| P,rr
|24
+
| CE,E6,rr
|None
+
| ?PSEUDOCODE
|None
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|FB nn nn
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALL [#nnnn]]]
+
| NZ,rr
|20
+
| E7,rr
|None
+
| ?PSEUDOCODE
|None
+
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|FC ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CINT #nn]]
+
| GT,rr
|20
+
| CE,E2,rr
|None
+
| ?PSEUDOCODE
|None
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F0 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLL #ss]]
+
| NF3,rr
|24
+
| CE,EF,rr
|12
+
| ?PSEUDOCODE
|(Overflow=1) != (Sign=1)
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F1 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLLE #ss]]
+
| NF2,rr
|24
+
| CE,EE,rr
|12
+
| ?PSEUDOCODE
|((Overflow=0) != (Sign=0)) OR (Zero=1)
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F2 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLG #ss]]
+
| NF1,rr
|24
+
| CE,ED,rr
|12
+
| ?PSEUDOCODE
|((Overflow=1) == (Sign=1)) AND (Zero=0)
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F3 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLGE #ss]]
+
| V,rr
|24
+
| CE,E4,rr
|12
+
| ?PSEUDOCODE
|(Overflow=0) == (Sign=0)
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F4 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLO #ss]]
+
| F2,rr
|24
+
| CE,EA,rr
|12
+
| ?PSEUDOCODE
|Overflow=1
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F5 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLNO #ss]]
+
| Z,rr
|24
+
| E6,rr
|12
+
| ?PSEUDOCODE
|Overflow=0
+
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F6 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLNS #ss]]
+
| NF0,rr
|24
+
| CE,EC,rr
|12
+
| ?PSEUDOCODE
|Sign=0
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F7 ss
+
| [[S1C88_JRS|JRS]]
|[[PM_Opc_CALL|CALLS #ss]]
+
| NV,rr
|24
+
| CE,E5,rr
|12
+
| ?PSEUDOCODE
|Sign=1
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE F8 ss
+
|}
|[[PM_Opc_CALL|CALLNX0 #ss]]
+
 
|24
+
== '''JRL''': Relative long jump ==
|12
+
{| class="wikitable sortable"
|??
+
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE F9 ss
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_CALL|CALLNX1 #ss]]
 
|24
 
|12
 
|??
 
 
|-
 
|-
|CE FA ss
+
| [[S1C88_JRL|JRL]]
|[[PM_Opc_CALL|CALLNX2 #ss]]
+
| C,qqrr
|24
+
| EC,rr,qq
|12
+
| ?PSEUDOCODE
|??
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE FB ss
+
| [[S1C88_JRL|JRL]]
|[[PM_Opc_CALL|CALLNX3 #ss]]
+
| NC,qqrr
|24
+
| ED,rr,qq
|12
+
| ?PSEUDOCODE
|??
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE FC ss
+
| [[S1C88_JRL|JRL]]
|[[PM_Opc_CALL|CALLX0 #ss]]
+
| Z,qqrr
|24
+
| EE,rr,qq
|12
+
| ?PSEUDOCODE
|??
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE FD ss
+
| [[S1C88_JRL|JRL]]
|[[PM_Opc_CALL|CALLX1 #ss]]
+
| NZ,qqrr
|24
+
| EF,rr,qq
|12
+
| ?PSEUDOCODE
|??
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE FE ss
+
| [[S1C88_JRL|JRL]]
|[[PM_Opc_CALL|CALLX2 #ss]]
+
| qqrr
|24
+
| F3,rr,qq
|12
+
| ?PSEUDOCODE
|??
+
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE FF ss
 
|[[PM_Opc_CALL|CALLX3 #ss]]
 
|24
 
|12
 
|??
 
 
|}
 
|}
  
'''*1''': CALL, CALLC, CALLNC, CALLZ and CALLNZ can be used in the assembler to auto-detect the appropriate range.
+
== '''JP''': Indirect jump ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_JP|JP]]
 +
| [kk]
 +
| FD,kk
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
| [[S1C88_JP|JP]]
 +
| HL
 +
| F4
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
'''Flags Affected:''' None
+
== '''DJR''': Loop ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_DJR|DJR]]
 +
| NZ,rr
 +
| F5,rr
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &#8597;
 +
|-
 +
|}
  
== JMP = Jump to routine ==
+
== '''CARS''': Relative short call ==
 
+
{| class="wikitable sortable"
{| border="1" style="text-align:left" class="sortable"
+
! rowspan="2" colspan="2" | Mnemonic
!Hex
+
! rowspan="2" | Machine Code
!Mnemonic
+
! rowspan="2" | Operation
!Cycles
+
! rowspan="2" | Cycles
!Condition
+
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 
|-
 
|-
|E4 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JCB #ss]]<SUP>*1</SUP>
+
| F0,rr
|8
+
| CE,F8,rr
|Carry=1
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E5 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JNCB #ss]]<SUP>*1</SUP>
+
| F1,rr
|8
+
| CE,F9,rr
|Carry=0
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E6 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JZB #ss]]<SUP>*1</SUP>
+
| C,rr
|8
+
| E0,rr
|Zero=1
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|E7 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JNZB #ss]]<SUP>*1</SUP>
+
| LE,rr
|8
+
| CE,F1,rr
|Zero=0
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|EC ss ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JCW #ssss]]<SUP>*1</SUP>
+
| GE,rr
|12
+
| CE,F3,rr
|Carry=1
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|ED ss ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JNCW #ssss]]<SUP>*1</SUP>
+
| rr
|12
+
| F0,rr
|Carry=0
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|EE ss ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JZW #ssss]]<SUP>*1</SUP>
+
| NC,rr
|12
+
| E1,rr
|Zero=1
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|EF ss ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JNZW #ssss]]<SUP>*1</SUP>
+
| M,rr
|12
+
| CE,F7,rr
|Zero=0
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|F1 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JMPB #ss]]<SUP>*1</SUP>
+
| LT,rr
|8
+
| CE,F0,rr
|None
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|F3 ss ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JMPW #ssss]]<SUP>*1</SUP>
+
| F3,rr
|12
+
| CE,FB,rr
|None
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|F4
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JMP HL]]
+
| P,rr
|8
+
| CE,F6,rr
|None
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|F5 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JDBNZ #ss]]
+
| NZ,rr
|16
+
| E3,rr
|B <> 0x00, decrement B before check
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|FD nn
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JINT #nn]]
+
| GT,rr
|8
+
| CE,F2,rr
|None
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E0 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JL #ss]]
+
| NF3,rr
|12
+
| CE,FF,rr
|(Overflow=1) != (Sign=1)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E1 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JLE #ss]]
+
| NF2,rr
|12
+
| CE,FE,rr
|((Overflow=0) != (Sign=0)) OR (Zero=1)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E2 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JG #ss]]
+
| NF1,rr
|12
+
| CE,FD,rr
|((Overflow=1) == (Sign=1)) AND (Zero=0)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E3 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JGE #ss]]
+
| V,rr
|12
+
| CE,F4,rr
|(Overflow=0) == (Sign=0)
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E4 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JO #ss]]
+
| F2,rr
|12
+
| CE,FA,rr
|Overflow=1
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E5 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JNO #ss]]
+
| Z,rr
|12
+
| E2,rr
|Overflow=0
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E6 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JNS #ss]]
+
| NF0,rr
|12
+
| CE,FC,rr
|Sign=0
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E7 ss
+
| [[S1C88_CARS|CARS]]
|[[PM_Opc_JMP|JS #ss]]
+
| NV,rr
|12
+
| CE,F5,rr
|Sign=1
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE E8 ss
+
|}
|[[PM_Opc_JMP|JNX0 #ss]]
+
 
|12
+
== '''CARL''': Relative long call ==
|??
+
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|CE E9 ss
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_JMP|JNX1 #ss]]
 
|12
 
|??
 
 
|-
 
|-
|CE EA ss
+
| [[S1C88_CARL|CARL]]
|[[PM_Opc_JMP|JNX2 #ss]]
+
| C,qqrr
|12
+
| E8,rr,qq
|??
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE EB ss
+
| [[S1C88_CARL|CARL]]
|[[PM_Opc_JMP|JNX3 #ss]]
+
| NC,qqrr
|12
+
| E9,rr,qq
|??
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE EC ss
+
| [[S1C88_CARL|CARL]]
|[[PM_Opc_JMP|JX0 #ss]]
+
| Z,qqrr
|12
+
| EA,rr,qq
|??
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE ED ss
+
| [[S1C88_CARL|CARL]]
|[[PM_Opc_JMP|JX1 #ss]]
+
| NZ,qqrr
|12
+
| EB,rr,qq
|??
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE EE ss
+
| [[S1C88_CARL|CARL]]
|[[PM_Opc_JMP|JX2 #ss]]
+
| qqrr
|12
+
| F2,rr,qq
|??
+
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|CE EF ss
 
|[[PM_Opc_JMP|JX3 #ss]]
 
|12
 
|??
 
 
|}
 
|}
  
'''*1''': JMP, JC, JNC, JZ and JNZ can be used in the assembler to auto-detect the appropriate range.
+
== '''CALL''': Indirect call ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_CALL|CALL]]
 +
| [hhll]
 +
| FB,ll,hh
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 3
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
'''Flags Affected (0xF5 - JDBNZ #ss):''' Zero
+
== '''RET''': Return ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_RET|RET]]
 +
|
 +
| F8
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
'''Flags Affected (Others):''' None
+
== '''RETE''': Exception processing return ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_RETE|RETE]]
 +
|
 +
| F9
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
== RET = Return from routine ==
+
== '''RETS''': Return and skip ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_RETS|RETS]]
 +
|
 +
| FA
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
{| border="1" style="text-align:left" class="sortable"
+
== '''INT''': Software interrupt ==
!Hex
+
{| class="wikitable sortable"
!Mnemonic
+
! rowspan="2" colspan="2" | Mnemonic
!Cycles
+
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 
|-
 
|-
|F8
+
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
|[[PM_Opc_RET|RET]]
 
|16
 
 
|-
 
|-
|F9
+
| [[S1C88_INT|INT]]
|[[PM_Opc_RET|RETI]]
+
| [kk]
|16
+
| FC,kk
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 
|-
 
|-
|FA
 
|[[PM_Opc_RET|RETSKIP]]
 
|16
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
= System Control =
 +
== '''NOP''': No operation ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_NOP|NOP]]
 +
|
 +
| FF
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 1
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
= System =
+
== '''HALT''': Shifts to HALT status ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_HALT|HALT]]
 +
|
 +
| CE,AE
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
== HALT = Halt CPU ==
+
== '''SLP''': Shifts to SLEEP status ==
 +
{| class="wikitable sortable"
 +
! rowspan="2" colspan="2" | Mnemonic
 +
! rowspan="2" | Machine Code
 +
! rowspan="2" | Operation
 +
! rowspan="2" | Cycles
 +
! rowspan="2" | Bytes
 +
! colspan="8" | SC
 +
|-
 +
! I1 !! I0 !! U !! D !! N !! V !! C !! Z
 +
|-
 +
| [[S1C88_SLP|SLP]]
 +
|
 +
| CE,AF
 +
| ?PSEUDOCODE
 +
| ?CYCLES
 +
| 2
 +
| &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash; || &ndash;
 +
|-
 +
|}
  
{| border="1" style="text-align:left" class="sortable"
+
= Operation Code Map =
!Hex
+
== 1st operation code ==
!Mnemonic
+
{| class="wikitable"
!Cycles
+
|
 +
| x0
 +
| x1
 +
| x2
 +
| x3
 +
| x4
 +
| x5
 +
| x6
 +
| x7
 +
| x8
 +
| x9
 +
| xA
 +
| xB
 +
| xC
 +
| xD
 +
| xE
 +
| xF
 +
|-
 +
| 0x
 +
| [[S1C88_ADD|ADD]] A,A
 +
| [[S1C88_ADD|ADD]] A,B
 +
| [[S1C88_ADD|ADD]] A,#nn
 +
| [[S1C88_ADD|ADD]] A,[HL]
 +
| [[S1C88_ADD|ADD]] A,[BR:ll]
 +
| [[S1C88_ADD|ADD]] A,[hhll]
 +
| [[S1C88_ADD|ADD]] A,[IX]
 +
| [[S1C88_ADD|ADD]] A,[IY]
 +
| [[S1C88_ADC|ADC]] A,A
 +
| [[S1C88_ADC|ADC]] A,B
 +
| [[S1C88_ADC|ADC]] A,#nn
 +
| [[S1C88_ADC|ADC]] A,[HL]
 +
| [[S1C88_ADC|ADC]] A,[BR:ll]
 +
| [[S1C88_ADC|ADC]] A,[hhll]
 +
| [[S1C88_ADC|ADC]] A,[IX]
 +
| [[S1C88_ADC|ADC]] A,[IY]
 +
|-
 +
| 1x
 +
| [[S1C88_SUB|SUB]] A,A
 +
| [[S1C88_SUB|SUB]] A,B
 +
| [[S1C88_SUB|SUB]] A,#nn
 +
| [[S1C88_SUB|SUB]] A,[HL]
 +
| [[S1C88_SUB|SUB]] A,[BR:ll]
 +
| [[S1C88_SUB|SUB]] A,[hhll]
 +
| [[S1C88_SUB|SUB]] A,[IX]
 +
| [[S1C88_SUB|SUB]] A,[IY]
 +
| [[S1C88_SBC|SBC]] A,A
 +
| [[S1C88_SBC|SBC]] A,B
 +
| [[S1C88_SBC|SBC]] A,#nn
 +
| [[S1C88_SBC|SBC]] A,[HL]
 +
| [[S1C88_SBC|SBC]] A,[BR:ll]
 +
| [[S1C88_SBC|SBC]] A,[hhll]
 +
| [[S1C88_SBC|SBC]] A,[IX]
 +
| [[S1C88_SBC|SBC]] A,[IY]
 +
|-
 +
| 2x
 +
| [[S1C88_AND|AND]] A,A
 +
| [[S1C88_AND|AND]] A,B
 +
| [[S1C88_AND|AND]] A,#nn
 +
| [[S1C88_AND|AND]] A,[HL]
 +
| [[S1C88_AND|AND]] A,[BR:ll]
 +
| [[S1C88_AND|AND]] A,[hhll]
 +
| [[S1C88_AND|AND]] A,[IX]
 +
| [[S1C88_AND|AND]] A,[IY]
 +
| [[S1C88_OR|OR]] A,A
 +
| [[S1C88_OR|OR]] A,B
 +
| [[S1C88_OR|OR]] A,#nn
 +
| [[S1C88_OR|OR]] A,[HL]
 +
| [[S1C88_OR|OR]] A,[BR:ll]
 +
| [[S1C88_OR|OR]] A,[hhll]
 +
| [[S1C88_OR|OR]] A,[IX]
 +
| [[S1C88_OR|OR]] A,[IY]
 +
|-
 +
| 3x
 +
| [[S1C88_CP|CP]] A,A
 +
| [[S1C88_CP|CP]] A,B
 +
| [[S1C88_CP|CP]] A,#nn
 +
| [[S1C88_CP|CP]] A,[HL]
 +
| [[S1C88_CP|CP]] A,[BR:ll]
 +
| [[S1C88_CP|CP]] A,[hhll]
 +
| [[S1C88_CP|CP]] A,[IX]
 +
| [[S1C88_CP|CP]] A,[IY]
 +
| [[S1C88_XOR|XOR]] A,A
 +
| [[S1C88_XOR|XOR]] A,B
 +
| [[S1C88_XOR|XOR]] A,#nn
 +
| [[S1C88_XOR|XOR]] A,[HL]
 +
| [[S1C88_XOR|XOR]] A,[BR:ll]
 +
| [[S1C88_XOR|XOR]] A,[hhll]
 +
| [[S1C88_XOR|XOR]] A,[IX]
 +
| [[S1C88_XOR|XOR]] A,[IY]
 +
|-
 +
| 4x
 +
| [[S1C88_LD|LD]] A,A
 +
| [[S1C88_LD|LD]] A,B
 +
| [[S1C88_LD|LD]] A,L
 +
| [[S1C88_LD|LD]] A,H
 +
| [[S1C88_LD|LD]] A,[BR:ll]
 +
| [[S1C88_LD|LD]] A,[HL]
 +
| [[S1C88_LD|LD]] A,[IX]
 +
| [[S1C88_LD|LD]] A,[IY]
 +
| [[S1C88_LD|LD]] B,A
 +
| [[S1C88_LD|LD]] B,B
 +
| [[S1C88_LD|LD]] B,L
 +
| [[S1C88_LD|LD]] B,H
 +
| [[S1C88_LD|LD]] B,[BR:ll]
 +
| [[S1C88_LD|LD]] B,[HL]
 +
| [[S1C88_LD|LD]] B,[IX]
 +
| [[S1C88_LD|LD]] B,[IY]
 +
|-
 +
| 5x
 +
| [[S1C88_LD|LD]] L,A
 +
| [[S1C88_LD|LD]] L,B
 +
| [[S1C88_LD|LD]] L,L
 +
| [[S1C88_LD|LD]] L,H
 +
| [[S1C88_LD|LD]] L,[BR:ll]
 +
| [[S1C88_LD|LD]] L,[HL]
 +
| [[S1C88_LD|LD]] L,[IX]
 +
| [[S1C88_LD|LD]] L,[IY]
 +
| [[S1C88_LD|LD]] H,A
 +
| [[S1C88_LD|LD]] H,B
 +
| [[S1C88_LD|LD]] H,L
 +
| [[S1C88_LD|LD]] H,H
 +
| [[S1C88_LD|LD]] H,[BR:ll]
 +
| [[S1C88_LD|LD]] H,[HL]
 +
| [[S1C88_LD|LD]] H,[IX]
 +
| [[S1C88_LD|LD]] H,[IY]
 +
|-
 +
| 6x
 +
| [[S1C88_LD|LD]] [IX],A
 +
| [[S1C88_LD|LD]] [IX],B
 +
| [[S1C88_LD|LD]] [IX],L
 +
| [[S1C88_LD|LD]] [IX],H
 +
| [[S1C88_LD|LD]] [IX],[BR:ll]
 +
| [[S1C88_LD|LD]] [IX],[HL]
 +
| [[S1C88_LD|LD]] [IX],[IX]
 +
| [[S1C88_LD|LD]] [IX],[IY]
 +
| [[S1C88_LD|LD]] [HL],A
 +
| [[S1C88_LD|LD]] [HL],B
 +
| [[S1C88_LD|LD]] [HL],L
 +
| [[S1C88_LD|LD]] [HL],H
 +
| [[S1C88_LD|LD]] [HL],[BR:ll]
 +
| [[S1C88_LD|LD]] [HL],[HL]
 +
| [[S1C88_LD|LD]] [HL],[IX]
 +
| [[S1C88_LD|LD]] [HL],[IY]
 +
|-
 +
| 7x
 +
| [[S1C88_LD|LD]] [IY],A
 +
| [[S1C88_LD|LD]] [IY],B
 +
| [[S1C88_LD|LD]] [IY],L
 +
| [[S1C88_LD|LD]] [IY],H
 +
| [[S1C88_LD|LD]] [IY],[BR:ll]
 +
| [[S1C88_LD|LD]] [IY],[HL]
 +
| [[S1C88_LD|LD]] [IY],[IX]
 +
| [[S1C88_LD|LD]] [IY],[IY]
 +
| [[S1C88_LD|LD]] [BR:ll],A
 +
| [[S1C88_LD|LD]] [BR:ll],B
 +
| [[S1C88_LD|LD]] [BR:ll],L
 +
| [[S1C88_LD|LD]] [BR:ll],H
 +
|
 +
| [[S1C88_LD|LD]] [BR:ll],[HL]
 +
| [[S1C88_LD|LD]] [BR:ll],[IX]
 +
| [[S1C88_LD|LD]] [BR:ll],[IY]
 +
|-
 +
| 8x
 +
| [[S1C88_INC|INC]] A
 +
| [[S1C88_INC|INC]] B
 +
| [[S1C88_INC|INC]] L
 +
| [[S1C88_INC|INC]] H
 +
| [[S1C88_INC|INC]] BR
 +
| [[S1C88_INC|INC]] [BR:ll]
 +
| [[S1C88_INC|INC]] [HL]
 +
| [[S1C88_INC|INC]] SP
 +
| [[S1C88_DEC|DEC]] A
 +
| [[S1C88_DEC|DEC]] B
 +
| [[S1C88_DEC|DEC]] L
 +
| [[S1C88_DEC|DEC]] H
 +
| [[S1C88_DEC|DEC]] BR
 +
| [[S1C88_DEC|DEC]] [BR:ll]
 +
| [[S1C88_DEC|DEC]] [HL]
 +
| [[S1C88_DEC|DEC]] SP
 +
|-
 +
| 9x
 +
| [[S1C88_INC|INC]] BA
 +
| [[S1C88_INC|INC]] HL
 +
| [[S1C88_INC|INC]] IX
 +
| [[S1C88_INC|INC]] IY
 +
| [[S1C88_BIT|BIT]] A,B
 +
| [[S1C88_BIT|BIT]] [HL],#nn
 +
| [[S1C88_BIT|BIT]] A,#nn
 +
| [[S1C88_BIT|BIT]] B,#nn
 +
| [[S1C88_DEC|DEC]] BA
 +
| [[S1C88_DEC|DEC]] HL
 +
| [[S1C88_DEC|DEC]] IX
 +
| [[S1C88_DEC|DEC]] IY
 +
| [[S1C88_AND|AND]] SC,#nn
 +
| [[S1C88_OR|OR]] SC,#nn
 +
| [[S1C88_XOR|XOR]] SC,#nn
 +
| [[S1C88_LD|LD]] SC,#nn
 +
|-
 +
| Ax
 +
| [[S1C88_PUSH|PUSH]] BA
 +
| [[S1C88_PUSH|PUSH]] HL
 +
| [[S1C88_PUSH|PUSH]] IX
 +
| [[S1C88_PUSH|PUSH]] IY
 +
| [[S1C88_PUSH|PUSH]] BR
 +
| [[S1C88_PUSH|PUSH]] EP
 +
| [[S1C88_PUSH|PUSH]] IP
 +
| [[S1C88_PUSH|PUSH]] SC
 +
| [[S1C88_POP|POP]] BA
 +
| [[S1C88_POP|POP]] HL
 +
| [[S1C88_POP|POP]] IX
 +
| [[S1C88_POP|POP]] IY
 +
| [[S1C88_POP|POP]] BR
 +
| [[S1C88_POP|POP]] EP
 +
| [[S1C88_POP|POP]] IP
 +
| [[S1C88_POP|POP]] SC
 +
|-
 +
| Bx
 +
| [[S1C88_LD|LD]] A,#nn
 +
| [[S1C88_LD|LD]] B,#nn
 +
| [[S1C88_LD|LD]] L,#nn
 +
| [[S1C88_LD|LD]] H,#nn
 +
| [[S1C88_LD|LD]] BR,#hh
 +
| [[S1C88_LD|LD]] [HL],#nn
 +
| [[S1C88_LD|LD]] [IX],#nn
 +
| [[S1C88_LD|LD]] [IY],#nn
 +
| [[S1C88_LD|LD]] BA,[hhll]
 +
| [[S1C88_LD|LD]] HL,[hhll]
 +
| [[S1C88_LD|LD]] IX,[hhll]
 +
| [[S1C88_LD|LD]] IY,[hhll]
 +
| [[S1C88_LD|LD]] [hhll],BA
 +
| [[S1C88_LD|LD]] [hhll],HL
 +
| [[S1C88_LD|LD]] [hhll],IX
 +
| [[S1C88_LD|LD]] [hhll],IY
 +
|-
 +
| Cx
 +
| [[S1C88_ADD|ADD]] BA,#mmnn
 +
| [[S1C88_ADD|ADD]] HL,#mmnn
 +
| [[S1C88_ADD|ADD]] IX,#mmnn
 +
| [[S1C88_ADD|ADD]] IY,#mmnn
 +
| [[S1C88_LD|LD]] BA,#mmnn
 +
| [[S1C88_LD|LD]] HL,#mmnn
 +
| [[S1C88_LD|LD]] IX,#mmnn
 +
| [[S1C88_LD|LD]] IY,#mmnn
 +
| [[S1C88_EX|EX]] BA,HL
 +
| [[S1C88_EX|EX]] BA,IX
 +
| [[S1C88_EX|EX]] BA,IY
 +
| [[S1C88_EX|EX]] BA,SP
 +
| [[S1C88_EX|EX]] A,B
 +
| [[S1C88_EX|EX]] A,[HL]
 +
| Expansion Code
 +
| Expansion Code
 +
|-
 +
| Dx
 +
| [[S1C88_SUB|SUB]] BA,#mmnn
 +
| [[S1C88_SUB|SUB]] HL,#mmnn
 +
| [[S1C88_SUB|SUB]] IX,#mmnn
 +
| [[S1C88_SUB|SUB]] IY,#mmnn
 +
| [[S1C88_CP|CP]] BA,#mmnn
 +
| [[S1C88_CP|CP]] HL,#mmnn
 +
| [[S1C88_CP|CP]] IX,#mmnn
 +
| [[S1C88_CP|CP]] IY,#mmnn
 +
| [[S1C88_AND|AND]] [BR:ll],#nn
 +
| [[S1C88_OR|OR]] [BR:ll],#nn
 +
| [[S1C88_XOR|XOR]] [BR:ll],#nn
 +
| [[S1C88_CP|CP]] [BR:ll],#nn
 +
| [[S1C88_BIT|BIT]] [BR:ll],#nn
 +
| [[S1C88_LD|LD]] [BR:ll],#nn
 +
| [[S1C88_PACK|PACK]]
 +
| [[S1C88_UPCK|UPCK]]
 +
|-
 +
| Ex
 +
| [[S1C88_CARS|CARS]] C,rr
 +
| [[S1C88_CARS|CARS]] NC,rr
 +
| [[S1C88_CARS|CARS]] Z,rr
 +
| [[S1C88_CARS|CARS]] NZ,rr
 +
| [[S1C88_JRS|JRS]] C,rr
 +
| [[S1C88_JRS|JRS]] NC,rr
 +
| [[S1C88_JRS|JRS]] Z,rr
 +
| [[S1C88_JRS|JRS]] NZ,rr
 +
| [[S1C88_CARL|CARL]] C,qqrr
 +
| [[S1C88_CARL|CARL]] NC,qqrr
 +
| [[S1C88_CARL|CARL]] Z,qqrr
 +
| [[S1C88_CARL|CARL]] NZ,qqrr
 +
| [[S1C88_JRL|JRL]] C,qqrr
 +
| [[S1C88_JRL|JRL]] NC,qqrr
 +
| [[S1C88_JRL|JRL]] Z,qqrr
 +
| [[S1C88_JRL|JRL]] NZ,qqrr
 +
|-
 +
| Fx
 +
| [[S1C88_CARS|CARS]] rr
 +
| [[S1C88_JRS|JRS]] rr
 +
| [[S1C88_CARL|CARL]] qqrr
 +
| [[S1C88_JRL|JRL]] qqrr
 +
| [[S1C88_JP|JP]] HL
 +
| [[S1C88_DJR|DJR]] NZ,rr
 +
| [[S1C88_SWAP|SWAP]] A
 +
| [[S1C88_SWAP|SWAP]] [HL]
 +
| [[S1C88_RET|RET]]
 +
| [[S1C88_RETE|RETE]]
 +
| [[S1C88_RETS|RETS]]
 +
| [[S1C88_CALL|CALL]] [hhll]
 +
| [[S1C88_INT|INT]] [kk]
 +
| [[S1C88_JP|JP]] [kk]
 +
|
 +
| [[S1C88_NOP|NOP]]
 
|-
 
|-
|CE AE
 
|[[PM_Opc_HALT|HALT]]
 
|8
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
== 2nd operation code (1st operation code = CE) ==
 +
{| class="wikitable"
 +
|
 +
| x0
 +
| x1
 +
| x2
 +
| x3
 +
| x4
 +
| x5
 +
| x6
 +
| x7
 +
| x8
 +
| x9
 +
| xA
 +
| xB
 +
| xC
 +
| xD
 +
| xE
 +
| xF
 +
|-
 +
| 0x
 +
| [[S1C88_ADD|ADD]] A,[IX+dd]
 +
| [[S1C88_ADD|ADD]] A,[IY+dd]
 +
| [[S1C88_ADD|ADD]] A,[IX+L]
 +
| [[S1C88_ADD|ADD]] A,[IY+L]
 +
| [[S1C88_ADD|ADD]] [HL],A
 +
| [[S1C88_ADD|ADD]] [HL],#nn
 +
| [[S1C88_ADD|ADD]] [HL],[IX]
 +
| [[S1C88_ADD|ADD]] [HL],[IY]
 +
| [[S1C88_ADC|ADC]] A,[IX+dd]
 +
| [[S1C88_ADC|ADC]] A,[IY+dd]
 +
| [[S1C88_ADC|ADC]] A,[IX+L]
 +
| [[S1C88_ADC|ADC]] A,[IY+L]
 +
| [[S1C88_ADC|ADC]] [HL],A
 +
| [[S1C88_ADC|ADC]] [HL],#nn
 +
| [[S1C88_ADC|ADC]] [HL],[IX]
 +
| [[S1C88_ADC|ADC]] [HL],[IY]
 +
|-
 +
| 1x
 +
| [[S1C88_SUB|SUB]] A,[IX+dd]
 +
| [[S1C88_SUB|SUB]] A,[IY+dd]
 +
| [[S1C88_SUB|SUB]] A,[IX+L]
 +
| [[S1C88_SUB|SUB]] A,[IY+L]
 +
| [[S1C88_SUB|SUB]] [HL],A
 +
| [[S1C88_SUB|SUB]] [HL],#nn
 +
| [[S1C88_SUB|SUB]] [HL],[IX]
 +
| [[S1C88_SUB|SUB]] [HL],[IY]
 +
| [[S1C88_SBC|SBC]] A,[IX+dd]
 +
| [[S1C88_SBC|SBC]] A,[IY+dd]
 +
| [[S1C88_SBC|SBC]] A,[IX+L]
 +
| [[S1C88_SBC|SBC]] A,[IY+L]
 +
| [[S1C88_SBC|SBC]] [HL],A
 +
| [[S1C88_SBC|SBC]] [HL],#nn
 +
| [[S1C88_SBC|SBC]] [HL],[IX]
 +
| [[S1C88_SBC|SBC]] [HL],[IY]
 +
|-
 +
| 2x
 +
| [[S1C88_AND|AND]] A,[IX+dd]
 +
| [[S1C88_AND|AND]] A,[IY+dd]
 +
| [[S1C88_AND|AND]] A,[IX+L]
 +
| [[S1C88_AND|AND]] A,[IY+L]
 +
| [[S1C88_AND|AND]] [HL],A
 +
| [[S1C88_AND|AND]] [HL],#nn
 +
| [[S1C88_AND|AND]] [HL],[IX]
 +
| [[S1C88_AND|AND]] [HL],[IY]
 +
| [[S1C88_OR|OR]] A,[IX+dd]
 +
| [[S1C88_OR|OR]] A,[IY+dd]
 +
| [[S1C88_OR|OR]] A,[IX+L]
 +
| [[S1C88_OR|OR]] A,[IY+L]
 +
| [[S1C88_OR|OR]] [HL],A
 +
| [[S1C88_OR|OR]] [HL],#nn
 +
| [[S1C88_OR|OR]] [HL],[IX]
 +
| [[S1C88_OR|OR]] [HL],[IY]
 +
|-
 +
| 3x
 +
| [[S1C88_CP|CP]] A,[IX+dd]
 +
| [[S1C88_CP|CP]] A,[IY+dd]
 +
| [[S1C88_CP|CP]] A,[IX+L]
 +
| [[S1C88_CP|CP]] A,[IY+L]
 +
| [[S1C88_CP|CP]] [HL],A
 +
| [[S1C88_CP|CP]] [HL],#nn
 +
| [[S1C88_CP|CP]] [HL],[IX]
 +
| [[S1C88_CP|CP]] [HL],[IY]
 +
| [[S1C88_XOR|XOR]] A,[IX+dd]
 +
| [[S1C88_XOR|XOR]] A,[IY+dd]
 +
| [[S1C88_XOR|XOR]] A,[IX+L]
 +
| [[S1C88_XOR|XOR]] A,[IY+L]
 +
| [[S1C88_XOR|XOR]] [HL],A
 +
| [[S1C88_XOR|XOR]] [HL],#nn
 +
| [[S1C88_XOR|XOR]] [HL],[IX]
 +
| [[S1C88_XOR|XOR]] [HL],[IY]
 +
|-
 +
| 4x
 +
| [[S1C88_LD|LD]] A,[IX+dd]
 +
| [[S1C88_LD|LD]] A,[IY+dd]
 +
| [[S1C88_LD|LD]] A,[IX+L]
 +
| [[S1C88_LD|LD]] A,[IY+L]
 +
| [[S1C88_LD|LD]] [IX+dd],A
 +
| [[S1C88_LD|LD]] [IY+dd],A
 +
| [[S1C88_LD|LD]] [IX+L],A
 +
| [[S1C88_LD|LD]] [IY+L],A
 +
| [[S1C88_LD|LD]] B,[IX+dd]
 +
| [[S1C88_LD|LD]] B,[IY+dd]
 +
| [[S1C88_LD|LD]] B,[IX+L]
 +
| [[S1C88_LD|LD]] B,[IY+L]
 +
| [[S1C88_LD|LD]] [IX+dd],B
 +
| [[S1C88_LD|LD]] [IY+dd],B
 +
| [[S1C88_LD|LD]] [IX+L],B
 +
| [[S1C88_LD|LD]] [IY+L],B
 +
|-
 +
| 5x
 +
| [[S1C88_LD|LD]] L,[IX+dd]
 +
| [[S1C88_LD|LD]] L,[IY+dd]
 +
| [[S1C88_LD|LD]] L,[IX+L]
 +
| [[S1C88_LD|LD]] L,[IY+L]
 +
| [[S1C88_LD|LD]] [IX+dd],L
 +
| [[S1C88_LD|LD]] [IY+dd],L
 +
| [[S1C88_LD|LD]] [IX+L],L
 +
| [[S1C88_LD|LD]] [IY+L],L
 +
| [[S1C88_LD|LD]] H,[IX+dd]
 +
| [[S1C88_LD|LD]] H,[IY+dd]
 +
| [[S1C88_LD|LD]] H,[IX+L]
 +
| [[S1C88_LD|LD]] H,[IY+L]
 +
| [[S1C88_LD|LD]] [IX+dd],H
 +
| [[S1C88_LD|LD]] [IY+dd],H
 +
| [[S1C88_LD|LD]] [IX+L],H
 +
| [[S1C88_LD|LD]] [IY+L],H
 +
|-
 +
| 6x
 +
| [[S1C88_LD|LD]] [HL],[IX+dd]
 +
| [[S1C88_LD|LD]] [HL],[IY+dd]
 +
| [[S1C88_LD|LD]] [HL],[IX+L]
 +
| [[S1C88_LD|LD]] [HL],[IY+L]
 +
 +
 +
 +
 +
| [[S1C88_LD|LD]] [IX],[IX+dd]
 +
| [[S1C88_LD|LD]] [IX],[IY+dd]
 +
| [[S1C88_LD|LD]] [IX],[IX+L]
 +
| [[S1C88_LD|LD]] [IX],[IY+L]
 +
 +
 +
 +
 +
|-
 +
| 7x
 +
 +
 +
 +
 +
 +
 +
 +
 +
| [[S1C88_LD|LD]] [IY],[IX+dd]
 +
| [[S1C88_LD|LD]] [IY],[IY+dd]
 +
| [[S1C88_LD|LD]] [IY],[IX+L]
 +
| [[S1C88_LD|LD]] [IY],[IY+L]
 +
 +
 +
 +
 +
|-
 +
| 8x
 +
| [[S1C88_SLA|SLA]] A
 +
| [[S1C88_SLA|SLA]] B
 +
| [[S1C88_SLA|SLA]] [BR:ll]
 +
| [[S1C88_SLA|SLA]] [HL]
 +
| [[S1C88_SLL|SLL]] A
 +
| [[S1C88_SLL|SLL]] B
 +
| [[S1C88_SLL|SLL]] [BR:ll]
 +
| [[S1C88_SLL|SLL]] [HL]
 +
| [[S1C88_SRA|SRA]] A
 +
| [[S1C88_SRA|SRA]] B
 +
| [[S1C88_SRA|SRA]] [BR:ll]
 +
| [[S1C88_SRA|SRA]] [HL]
 +
| [[S1C88_SRL|SRL]] A
 +
| [[S1C88_SRL|SRL]] B
 +
| [[S1C88_SRL|SRL]] [BR:ll]
 +
| [[S1C88_SRL|SRL]] [HL]
 +
|-
 +
| 9x
 +
| [[S1C88_RL|RL]] A
 +
| [[S1C88_RL|RL]] B
 +
| [[S1C88_RL|RL]] [BR:ll]
 +
| [[S1C88_RL|RL]] [HL]
 +
| [[S1C88_RLC|RLC]] A
 +
| [[S1C88_RLC|RLC]] B
 +
| [[S1C88_RLC|RLC]] [BR:ll]
 +
| [[S1C88_RLC|RLC]] [HL]
 +
| [[S1C88_RR|RR]] A
 +
| [[S1C88_RR|RR]] B
 +
| [[S1C88_RR|RR]] [BR:ll]
 +
| [[S1C88_RR|RR]] [HL]
 +
| [[S1C88_RRC|RRC]] A
 +
| [[S1C88_RRC|RRC]] B
 +
| [[S1C88_RRC|RRC]] [BR:ll]
 +
| [[S1C88_RRC|RRC]] [HL]
 +
|-
 +
| Ax
 +
| [[S1C88_CPL|CPL]] A
 +
| [[S1C88_CPL|CPL]] B
 +
| [[S1C88_CPL|CPL]] [BR:ll]
 +
| [[S1C88_CPL|CPL]] [HL]
 +
| [[S1C88_NEG|NEG]] A
 +
| [[S1C88_NEG|NEG]] B
 +
| [[S1C88_NEG|NEG]] [BR:ll]
 +
| [[S1C88_NEG|NEG]] [HL]
 +
| [[S1C88_SEP|SEP]]
 +
 +
 +
 +
 +
 +
| [[S1C88_HALT|HALT]]
 +
| [[S1C88_SLP|SLP]]
 +
|-
 +
| Bx
 +
| [[S1C88_AND|AND]] B,#nn
 +
| [[S1C88_AND|AND]] L,#nn
 +
| [[S1C88_AND|AND]] H,#nn
 +
|
 +
| [[S1C88_OR|OR]] B,#nn
 +
| [[S1C88_OR|OR]] L,#nn
 +
| [[S1C88_OR|OR]] H,#nn
 +
|
 +
| [[S1C88_XOR|XOR]] B,#nn
 +
| [[S1C88_XOR|XOR]] L,#nn
 +
| [[S1C88_XOR|XOR]] H,#nn
 +
 +
| [[S1C88_CP|CP]] B,#nn
 +
| [[S1C88_CP|CP]] L,#nn
 +
| [[S1C88_CP|CP]] H,#nn
 +
| [[S1C88_CP|CP]] BR,#hh
 +
|-
 +
| Cx
 +
| [[S1C88_LD|LD]] A,BR
 +
| [[S1C88_LD|LD]] A,SC
 +
| [[S1C88_LD|LD]] BR,A
 +
| [[S1C88_LD|LD]] SC,A
 +
| [[S1C88_LD|LD]] NB,#bb
 +
| [[S1C88_LD|LD]] EP,#pp
 +
| [[S1C88_LD|LD]] XP,#pp
 +
| [[S1C88_LD|LD]] YP,#pp
 +
| [[S1C88_LD|LD]] A,NB
 +
| [[S1C88_LD|LD]] A,EP
 +
| [[S1C88_LD|LD]] A,XP
 +
| [[S1C88_LD|LD]] A,YP
 +
| [[S1C88_LD|LD]] NB,A
 +
| [[S1C88_LD|LD]] EP,A
 +
| [[S1C88_LD|LD]] XP,A
 +
| [[S1C88_LD|LD]] YP,A
 +
|-
 +
| Dx
 +
| [[S1C88_LD|LD]] A,[hhll]
 +
| [[S1C88_LD|LD]] B,[hhll]
 +
| [[S1C88_LD|LD]] L,[hhll]
 +
| [[S1C88_LD|LD]] H,[hhll]
 +
| [[S1C88_LD|LD]] [hhll],A
 +
| [[S1C88_LD|LD]] [hhll],B
 +
| [[S1C88_LD|LD]] [hhll],L
 +
| [[S1C88_LD|LD]] [hhll],H
 +
| [[S1C88_MLT|MLT]]
 +
| [[S1C88_DIV|DIV]]
 +
 +
 +
 +
 +
 +
 +
|-
 +
| Ex
 +
| [[S1C88_JRS|JRS]] LT,rr
 +
| [[S1C88_JRS|JRS]] LE,rr
 +
| [[S1C88_JRS|JRS]] GT,rr
 +
| [[S1C88_JRS|JRS]] GE,rr
 +
| [[S1C88_JRS|JRS]] V,rr
 +
| [[S1C88_JRS|JRS]] NV,rr
 +
| [[S1C88_JRS|JRS]] P,rr
 +
| [[S1C88_JRS|JRS]] M,rr
 +
| [[S1C88_JRS|JRS]] F0,rr
 +
| [[S1C88_JRS|JRS]] F1,rr
 +
| [[S1C88_JRS|JRS]] F2,rr
 +
| [[S1C88_JRS|JRS]] F3,rr
 +
| [[S1C88_JRS|JRS]] NF0,rr
 +
| [[S1C88_JRS|JRS]] NF1,rr
 +
| [[S1C88_JRS|JRS]] NF2,rr
 +
| [[S1C88_JRS|JRS]] NF3,rr
 +
|-
 +
| Fx
 +
| [[S1C88_CARS|CARS]] LT,rr
 +
| [[S1C88_CARS|CARS]] LE,rr
 +
| [[S1C88_CARS|CARS]] GT,rr
 +
| [[S1C88_CARS|CARS]] GE,rr
 +
| [[S1C88_CARS|CARS]] V,rr
 +
| [[S1C88_CARS|CARS]] NV,rr
 +
| [[S1C88_CARS|CARS]] P,rr
 +
| [[S1C88_CARS|CARS]] M,rr
 +
| [[S1C88_CARS|CARS]] F0,rr
 +
| [[S1C88_CARS|CARS]] F1,rr
 +
| [[S1C88_CARS|CARS]] F2,rr
 +
| [[S1C88_CARS|CARS]] F3,rr
 +
| [[S1C88_CARS|CARS]] NF0,rr
 +
| [[S1C88_CARS|CARS]] NF1,rr
 +
| [[S1C88_CARS|CARS]] NF2,rr
 +
| [[S1C88_CARS|CARS]] NF3,rr
 +
|-
 +
|}
  
== STOP = Stop CPU ==
+
== 3nd operation code (1st operation code = CF) ==
 
+
{| class="wikitable"
{| border="1" style="text-align:left" class="sortable"
+
|
!Hex
+
| x0
!Mnemonic
+
| x1
!Cycles
+
| x2
 +
| x3
 +
| x4
 +
| x5
 +
| x6
 +
| x7
 +
| x8
 +
| x9
 +
| xA
 +
| xB
 +
| xC
 +
| xD
 +
| xE
 +
| xF
 +
|-
 +
| 0x
 +
| [[S1C88_ADD|ADD]] BA,BA
 +
| [[S1C88_ADD|ADD]] BA,HL
 +
| [[S1C88_ADD|ADD]] BA,IX
 +
| [[S1C88_ADD|ADD]] BA,IY
 +
| [[S1C88_ADC|ADC]] BA,BA
 +
| [[S1C88_ADC|ADC]] BA,HL
 +
| [[S1C88_ADC|ADC]] BA,IX
 +
| [[S1C88_ADC|ADC]] BA,IY
 +
| [[S1C88_SUB|SUB]] BA,BA
 +
| [[S1C88_SUB|SUB]] BA,HL
 +
| [[S1C88_SUB|SUB]] BA,IX
 +
| [[S1C88_SUB|SUB]] BA,IY
 +
| [[S1C88_SBC|SBC]] BA,BA
 +
| [[S1C88_SBC|SBC]] BA,HL
 +
| [[S1C88_SBC|SBC]] BA,IX
 +
| [[S1C88_SBC|SBC]] BA,IY
 +
|-
 +
| 1x
 +
 +
 +
 +
 +
 +
 +
 +
 +
| [[S1C88_CP|CP]] BA,BA
 +
| [[S1C88_CP|CP]] BA,HL
 +
| [[S1C88_CP|CP]] BA,IX
 +
| [[S1C88_CP|CP]] BA,IY
 +
 +
 +
 +
 +
|-
 +
| 2x
 +
| [[S1C88_ADD|ADD]] HL,BA
 +
| [[S1C88_ADD|ADD]] HL,HL
 +
| [[S1C88_ADD|ADD]] HL,IX
 +
| [[S1C88_ADD|ADD]] HL,IY
 +
| [[S1C88_ADC|ADC]] HL,BA
 +
| [[S1C88_ADC|ADC]] HL,HL
 +
| [[S1C88_ADC|ADC]] HL,IX
 +
| [[S1C88_ADC|ADC]] HL,IY
 +
| [[S1C88_SUB|SUB]] HL,BA
 +
| [[S1C88_SUB|SUB]] HL,HL
 +
| [[S1C88_SUB|SUB]] HL,IX
 +
| [[S1C88_SUB|SUB]] HL,IY
 +
| [[S1C88_SBC|SBC]] HL,BA
 +
| [[S1C88_SBC|SBC]] HL,HL
 +
| [[S1C88_SBC|SBC]] HL,IX
 +
| [[S1C88_SBC|SBC]] HL,IY
 +
|-
 +
| 3x
 +
 +
 +
 +
 +
 +
 +
 +
 +
| [[S1C88_CP|CP]] HL,BA
 +
| [[S1C88_CP|CP]] HL,HL
 +
| [[S1C88_CP|CP]] HL,IX
 +
| [[S1C88_CP|CP]] HL,IY
 +
 +
 +
 +
 +
|-
 +
| 4x
 +
| [[S1C88_ADD|ADD]] IX,BA
 +
| [[S1C88_ADD|ADD]] IX,HL
 +
| [[S1C88_ADD|ADD]] IY,BA
 +
| [[S1C88_ADD|ADD]] IY,HL
 +
| [[S1C88_ADD|ADD]] SP,BA
 +
| [[S1C88_ADD|ADD]] SP,HL
 +
 +
 +
| [[S1C88_SUB|SUB]] IX,BA
 +
| [[S1C88_SUB|SUB]] IX,HL
 +
| [[S1C88_SUB|SUB]] IY,BA
 +
| [[S1C88_SUB|SUB]] IY,HL
 +
| [[S1C88_SUB|SUB]] SP,BA
 +
| [[S1C88_SUB|SUB]] SP,HL
 +
 +
 +
|-
 +
| 5x
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
| [[S1C88_CP|CP]] SP,BA
 +
| [[S1C88_CP|CP]] SP,HL
 +
 +
 +
|-
 +
| 6x
 +
| [[S1C88_ADC|ADC]] BA,#mmnn
 +
| [[S1C88_ADC|ADC]] HL,#mmnn
 +
| [[S1C88_SBC|SBC]] BA,#mmnn
 +
| [[S1C88_SBC|SBC]] HL,#mmnn
 +
 +
 +
 +
 +
| [[S1C88_ADD|ADD]] SP,#mmnn
 +
 +
| [[S1C88_SUB|SUB]] SP,#mmnn
 +
 +
| [[S1C88_CP|CP]] SP,#mmnn
 +
 +
| [[S1C88_LD|LD]] SP,#mmnn
 +
 +
|-
 +
| 7x
 +
| [[S1C88_LD|LD]] BA,[SP+dd]
 +
| [[S1C88_LD|LD]] HL,[SP+dd]
 +
| [[S1C88_LD|LD]] IX,[SP+dd]
 +
| [[S1C88_LD|LD]] IY,[SP+dd]
 +
| [[S1C88_LD|LD]] [SP+dd],BA
 +
| [[S1C88_LD|LD]] [SP+dd],HL
 +
| [[S1C88_LD|LD]] [SP+dd],IX
 +
| [[S1C88_LD|LD]] [SP+dd],IY
 +
| [[S1C88_LD|LD]] SP,[hhll]
 +
 +
 +
 +
| [[S1C88_LD|LD]] [hhll],SP
 +
 +
 +
 +
|-
 +
| 8x
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
|-
 +
| 9x
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
|-
 +
| Ax
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
|-
 +
| Bx
 +
| [[S1C88_PUSH|PUSH]] A
 +
| [[S1C88_PUSH|PUSH]] B
 +
| [[S1C88_PUSH|PUSH]] L
 +
| [[S1C88_PUSH|PUSH]] H
 +
| [[S1C88_POP|POP]] A
 +
| [[S1C88_POP|POP]] B
 +
| [[S1C88_POP|POP]] L
 +
| [[S1C88_POP|POP]] H
 +
| [[S1C88_PUSH|PUSH]] ALL
 +
| [[S1C88_PUSH|PUSH]] ALE
 +
 +
 +
| [[S1C88_POP|POP]] ALL
 +
| [[S1C88_POP|POP]] ALE
 +
 +
 +
|-
 +
| Cx
 +
| [[S1C88_LD|LD]] BA,[HL]
 +
| [[S1C88_LD|LD]] HL,[HL]
 +
| [[S1C88_LD|LD]] IX,[HL]
 +
| [[S1C88_LD|LD]] IY,[HL]
 +
| [[S1C88_LD|LD]] [HL],BA
 +
| [[S1C88_LD|LD]] [HL],HL
 +
| [[S1C88_LD|LD]] [HL],IX
 +
| [[S1C88_LD|LD]] [HL],IY
 +
 +
 +
 +
 +
 +
 +
 +
 +
|-
 +
| Dx
 +
| [[S1C88_LD|LD]] BA,[IX]
 +
| [[S1C88_LD|LD]] HL,[IX]
 +
| [[S1C88_LD|LD]] IX,[IX]
 +
| [[S1C88_LD|LD]] IY,[IX]
 +
| [[S1C88_LD|LD]] [IX],BA
 +
| [[S1C88_LD|LD]] [IX],HL
 +
| [[S1C88_LD|LD]] [IX],IX
 +
| [[S1C88_LD|LD]] [IX],IY
 +
| [[S1C88_LD|LD]] BA,[IY]
 +
| [[S1C88_LD|LD]] HL,[IY]
 +
| [[S1C88_LD|LD]] IX,[IY]
 +
| [[S1C88_LD|LD]] IY,[IY]
 +
| [[S1C88_LD|LD]] [IY],BA
 +
| [[S1C88_LD|LD]] [IY],HL
 +
| [[S1C88_LD|LD]] [IY],IX
 +
| [[S1C88_LD|LD]] [IY],IY
 +
|-
 +
| Ex
 +
| [[S1C88_LD|LD]] BA,BA
 +
| [[S1C88_LD|LD]] BA,HL
 +
| [[S1C88_LD|LD]] BA,IX
 +
| [[S1C88_LD|LD]] BA,IY
 +
| [[S1C88_LD|LD]] HL,BA
 +
| [[S1C88_LD|LD]] HL,HL
 +
| [[S1C88_LD|LD]] HL,IX
 +
| [[S1C88_LD|LD]] HL,IY
 +
| [[S1C88_LD|LD]] IX,BA
 +
| [[S1C88_LD|LD]] IX,HL
 +
| [[S1C88_LD|LD]] IX,IX
 +
| [[S1C88_LD|LD]] IX,IY
 +
| [[S1C88_LD|LD]] IY,BA
 +
| [[S1C88_LD|LD]] IY,HL
 +
| [[S1C88_LD|LD]] IY,IX
 +
| [[S1C88_LD|LD]] IY,IY
 +
|-
 +
| Fx
 +
| [[S1C88_LD|LD]] SP,BA
 +
| [[S1C88_LD|LD]] SP,HL
 +
| [[S1C88_LD|LD]] SP,IX
 +
| [[S1C88_LD|LD]] SP,IY
 +
| [[S1C88_LD|LD]] HL,SP
 +
| [[S1C88_LD|LD]] HL,PC
 +
 +
 +
| [[S1C88_LD|LD]] BA,SP
 +
| [[S1C88_LD|LD]] BA,PC
 +
| [[S1C88_LD|LD]] IX,SP
 +
 +
 +
 +
| [[S1C88_LD|LD]] IY,SP
 +
 
|-
 
|-
|CE AF
 
|[[PM_Opc_STOP|STOP]]
 
|8
 
 
|}
 
|}
  
'''Flags Affected:''' None
+
= Illegal Instructions =
 +
 
 +
'''NOTE: This document is now out of date, as should be updated to the new mnemonic and register naming'''
 +
 
 +
The entire opcode table has been evaluated on Pokemon Mini units and new and exotic illegal opcodes have been found.
 +
 
 +
These opcodes are not officially supported (they are not used by commercial games and not even found in the Pokemon Channel emulator) and can produce random results or crashes in some cases.
 +
The illegal opcodes have been documented on [[Talk:PM_InstructionList|this page's Discussion page]].
 +
''' THIS PAGE IS IN PROCESS '''

Latest revision as of 18:45, 13 July 2015

Contents

8-bit arithmetic and logic operation

ADD: Addition

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
ADD A,A 0  ?PSEUDOCODE  ?CYCLES 1
A,B 1  ?PSEUDOCODE  ?CYCLES 1
A,#nn 2,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 3  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 4,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 5,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 6  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 7  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE, 0,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE, 1,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE, 2  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE, 3  ?PSEUDOCODE  ?CYCLES 2
ADD [HL],A CE, 4  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE, 5,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE, 6  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE, 7  ?PSEUDOCODE  ?CYCLES 2

ADC: Addition with carry

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
ADC A,A 8  ?PSEUDOCODE  ?CYCLES 1
A,B 9  ?PSEUDOCODE  ?CYCLES 1
A,#nn A,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] B  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] C,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] D,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] E  ?PSEUDOCODE  ?CYCLES 1
A,[IY] F  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE, 8,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE, 9,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE, A  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE, B  ?PSEUDOCODE  ?CYCLES 2
ADC [HL],A CE, C  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE, D,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE, E  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE, F  ?PSEUDOCODE  ?CYCLES 2

SUB: Subtraction

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SUB A,A 10  ?PSEUDOCODE  ?CYCLES 1
A,B 11  ?PSEUDOCODE  ?CYCLES 1
A,#nn 12,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 13  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 14,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 15,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 16  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 17  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE,10,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,11,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,12  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,13  ?PSEUDOCODE  ?CYCLES 2
SUB [HL],A CE,14  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE,15,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE,16  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE,17  ?PSEUDOCODE  ?CYCLES 2

SBC: Subtraction with carry

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SBC A,A 18  ?PSEUDOCODE  ?CYCLES 1
A,B 19  ?PSEUDOCODE  ?CYCLES 1
A,#nn 1A,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 1B  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 1C,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 1D,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 1E  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 1F  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE,18,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,19,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,1A  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,1B  ?PSEUDOCODE  ?CYCLES 2
SBC [HL],A CE,1C  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE,1D,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE,1E  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE,1F  ?PSEUDOCODE  ?CYCLES 2


AND: Logical product

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
AND A,A 20  ?PSEUDOCODE  ?CYCLES 1
A,B 21  ?PSEUDOCODE  ?CYCLES 1
A,#nn 22,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 23  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 24,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 25,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 26  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 27  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE,20,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,21,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,22  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,23  ?PSEUDOCODE  ?CYCLES 2
AND B,#nn CE,B0,nn  ?PSEUDOCODE  ?CYCLES 3
AND H,#nn CE,B2,nn  ?PSEUDOCODE  ?CYCLES 3
AND [BR:ll],#nn D8,ll,nn  ?PSEUDOCODE  ?CYCLES 3
AND [HL],A CE,24  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE,25,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE,26  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE,27  ?PSEUDOCODE  ?CYCLES 2
AND L,#nn CE,B1,nn  ?PSEUDOCODE  ?CYCLES 3
AND SC,#nn 9C,nn  ?PSEUDOCODE  ?CYCLES 2

OR: Logical sum

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
OR A,A 28  ?PSEUDOCODE  ?CYCLES 1
A,B 29  ?PSEUDOCODE  ?CYCLES 1
A,#nn 2A,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 2B  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 2C,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 2D,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 2E  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 2F  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE,28,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,29,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,2A  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,2B  ?PSEUDOCODE  ?CYCLES 2
OR B,#nn CE,B4,nn  ?PSEUDOCODE  ?CYCLES 3
OR H,#nn CE,B6,nn  ?PSEUDOCODE  ?CYCLES 3
OR [BR:ll],#nn D9,ll,nn  ?PSEUDOCODE  ?CYCLES 3
OR [HL],A CE,2C  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE,2D,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE,2E  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE,2F  ?PSEUDOCODE  ?CYCLES 2
OR L,#nn CE,B5,nn  ?PSEUDOCODE  ?CYCLES 3
OR SC,#nn 9D,nn  ?PSEUDOCODE  ?CYCLES 2

XOR: Exclusive OR

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
XOR A,A 38  ?PSEUDOCODE  ?CYCLES 1
A,B 39  ?PSEUDOCODE  ?CYCLES 1
A,#nn 3A,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 3B  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 3C,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 3D,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 3E  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 3F  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE,38,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,39,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,3A  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,3B  ?PSEUDOCODE  ?CYCLES 2
XOR B,#nn CE,B8,nn  ?PSEUDOCODE  ?CYCLES 3
XOR H,#nn CE,BA,nn  ?PSEUDOCODE  ?CYCLES 3
XOR [BR:ll],#nn DA,ll,nn  ?PSEUDOCODE  ?CYCLES 3
XOR [HL],A CE,3C  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE,3D,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE,3E  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE,3F  ?PSEUDOCODE  ?CYCLES 2
XOR L,#nn CE,B9,nn  ?PSEUDOCODE  ?CYCLES 3
XOR SC,#nn 9E,nn  ?PSEUDOCODE  ?CYCLES 2

CP: Comparison

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
CP A,A 30  ?PSEUDOCODE  ?CYCLES 1
A,B 31  ?PSEUDOCODE  ?CYCLES 1
A,#nn 32,nn  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 33  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 34,ll  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] 35,ll,hh  ?PSEUDOCODE  ?CYCLES 3
A,[IX] 36  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 37  ?PSEUDOCODE  ?CYCLES 1
A,[IX+dd] CE,30,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,31,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,32  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,33  ?PSEUDOCODE  ?CYCLES 2
CP B,#nn CE,BC,nn  ?PSEUDOCODE  ?CYCLES 3
CP H,#nn CE,BE,nn  ?PSEUDOCODE  ?CYCLES 3
CP BR,#hh CE,BF,hh  ?PSEUDOCODE  ?CYCLES 3
CP [BR:ll],#nn DB,ll,nn  ?PSEUDOCODE  ?CYCLES 3
CP [HL],A CE,34  ?PSEUDOCODE  ?CYCLES 2
[HL],#nn CE,35,nn  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX] CE,36  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY] CE,37  ?PSEUDOCODE  ?CYCLES 2
CP L,#nn CE,BD,nn  ?PSEUDOCODE  ?CYCLES 3

BIT: Bit test

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
BIT A,B 94  ?PSEUDOCODE  ?CYCLES 1
A,#nn 96,nn  ?PSEUDOCODE  ?CYCLES 2
BIT B,#nn 97,nn  ?PSEUDOCODE  ?CYCLES 2
BIT [HL],#nn 95,nn  ?PSEUDOCODE  ?CYCLES 2
BIT [BR:ll],#nn DC,ll,nn  ?PSEUDOCODE  ?CYCLES 3

INC: 1 increment

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
INC A 80  ?PSEUDOCODE  ?CYCLES 1
INC B 81  ?PSEUDOCODE  ?CYCLES 1
INC H 83  ?PSEUDOCODE  ?CYCLES 1
INC [BR:ll] 85,ll  ?PSEUDOCODE  ?CYCLES 2
INC [HL] 86  ?PSEUDOCODE  ?CYCLES 1
INC L 82  ?PSEUDOCODE  ?CYCLES 1
INC BR 84  ?PSEUDOCODE  ?CYCLES 1

DEC: 1 decrement

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
DEC A 88  ?PSEUDOCODE  ?CYCLES 1
DEC B 89  ?PSEUDOCODE  ?CYCLES 1
DEC H 8B  ?PSEUDOCODE  ?CYCLES 1
DEC [BR:ll] 8D,ll  ?PSEUDOCODE  ?CYCLES 2
DEC [HL] 8E  ?PSEUDOCODE  ?CYCLES 1
DEC L 8A  ?PSEUDOCODE  ?CYCLES 1
DEC BR 8C  ?PSEUDOCODE  ?CYCLES 1

MLT: Multiplication

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
MLT CE,D8  ?PSEUDOCODE  ?CYCLES 2 0 0

DIV: Division

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
DIV CE,D9  ?PSEUDOCODE  ?CYCLES 2 0

CPL: Complement of 1

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
CPL A CE,A0  ?PSEUDOCODE  ?CYCLES 2
CPL B CE,A1  ?PSEUDOCODE  ?CYCLES 2
CPL [HL] CE,A3  ?PSEUDOCODE  ?CYCLES 2
CPL [BR:ll] CE,A2,ll  ?PSEUDOCODE  ?CYCLES 3

NEG: Complement of 2

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
NEG A CE,A4  ?PSEUDOCODE  ?CYCLES 2
NEG B CE,A5  ?PSEUDOCODE  ?CYCLES 2
NEG [HL] CE,A7  ?PSEUDOCODE  ?CYCLES 2
NEG [BR:ll] CE,A6,ll  ?PSEUDOCODE  ?CYCLES 3

8-bit transfer

LD: Load

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
LD IY,[hhll] BB,ll,hh  ?PSEUDOCODE  ?CYCLES 3
IY,#mmnn C7,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IY,[SP+dd] CE,73,dd  ?PSEUDOCODE  ?CYCLES 3
IY,[HL] CE,C3  ?PSEUDOCODE  ?CYCLES 2
IY,[IX] CE,D3  ?PSEUDOCODE  ?CYCLES 2
IY,[IY] CE,DB  ?PSEUDOCODE  ?CYCLES 2
IY,BA CE,EC  ?PSEUDOCODE  ?CYCLES 2
IY,HL CE,ED  ?PSEUDOCODE  ?CYCLES 2
IY,IX CE,EE  ?PSEUDOCODE  ?CYCLES 2
IY,IY CE,EF  ?PSEUDOCODE  ?CYCLES 2
IY,SP CE,FE  ?PSEUDOCODE  ?CYCLES 2
LD SP,#mmnn CE,6E,nn,mm  ?PSEUDOCODE  ?CYCLES 4
SP,[hhll] CE,78,ll,hh  ?PSEUDOCODE  ?CYCLES 4
SP,BA CE,F0  ?PSEUDOCODE  ?CYCLES 2
SP,HL CE,F1  ?PSEUDOCODE  ?CYCLES 2
SP,IX CE,F2  ?PSEUDOCODE  ?CYCLES 2
SP,IY CE,F3  ?PSEUDOCODE  ?CYCLES 2
LD BA,[hhll] B8,ll,hh  ?PSEUDOCODE  ?CYCLES 3
BA,#mmnn C4,nn,mm  ?PSEUDOCODE  ?CYCLES 3
BA,[SP+dd] CE,70,dd  ?PSEUDOCODE  ?CYCLES 3
BA,[HL] CE,C0  ?PSEUDOCODE  ?CYCLES 2
BA,[IX] CE,D0  ?PSEUDOCODE  ?CYCLES 2
BA,[IY] CE,D8  ?PSEUDOCODE  ?CYCLES 2
BA,BA CE,E0  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE,E1  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE,E2  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE,E3  ?PSEUDOCODE  ?CYCLES 2
BA,SP CE,F8  ?PSEUDOCODE  ?CYCLES 2
BA,PC CE,F9  ?PSEUDOCODE  ?CYCLES 2
LD BR,#hh B4,hh  ?PSEUDOCODE  ?CYCLES 2
BR,A CE,C2  ?PSEUDOCODE  ?CYCLES 2
LD [IX+L],A CE,46  ?PSEUDOCODE  ?CYCLES 2
[IX+L],B CE,4E  ?PSEUDOCODE  ?CYCLES 2
[IX+L],L CE,56  ?PSEUDOCODE  ?CYCLES 2
[IX+L],H CE,5E  ?PSEUDOCODE  ?CYCLES 2
LD HL,[hhll] B9,ll,hh  ?PSEUDOCODE  ?CYCLES 3
HL,#mmnn C5,nn,mm  ?PSEUDOCODE  ?CYCLES 3
HL,[SP+dd] CE,71,dd  ?PSEUDOCODE  ?CYCLES 3
HL,[HL] CE,C1  ?PSEUDOCODE  ?CYCLES 2
HL,[IX] CE,D1  ?PSEUDOCODE  ?CYCLES 2
HL,[IY] CE,D9  ?PSEUDOCODE  ?CYCLES 2
HL,BA CE,E4  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,E5  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,E6  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,E7  ?PSEUDOCODE  ?CYCLES 2
HL,SP CE,F4  ?PSEUDOCODE  ?CYCLES 2
HL,PC CE,F5  ?PSEUDOCODE  ?CYCLES 2
LD [IY+L],A CE,47  ?PSEUDOCODE  ?CYCLES 2
[IY+L],B CE,4F  ?PSEUDOCODE  ?CYCLES 2
[IY+L],L CE,57  ?PSEUDOCODE  ?CYCLES 2
[IY+L],H CE,5F  ?PSEUDOCODE  ?CYCLES 2
LD YP,#pp CE,C7,pp  ?PSEUDOCODE  ?CYCLES 3
YP,A CE,CF  ?PSEUDOCODE  ?CYCLES 2
LD [IY],A 70  ?PSEUDOCODE  ?CYCLES 1
[IY],B 71  ?PSEUDOCODE  ?CYCLES 1
[IY],L 72  ?PSEUDOCODE  ?CYCLES 1
[IY],H 73  ?PSEUDOCODE  ?CYCLES 1
[IY],[BR:ll] 74,ll  ?PSEUDOCODE  ?CYCLES 2
[IY],[HL] 75  ?PSEUDOCODE  ?CYCLES 1
[IY],[IX] 76  ?PSEUDOCODE  ?CYCLES 1
[IY],[IY] 77  ?PSEUDOCODE  ?CYCLES 1
[IY],#nn B7,nn  ?PSEUDOCODE  ?CYCLES 2
[IY],[IX+dd] CE,78,dd  ?PSEUDOCODE  ?CYCLES 3
[IY],[IY+dd] CE,79,dd  ?PSEUDOCODE  ?CYCLES 3
[IY],[IX+L] CE,7A  ?PSEUDOCODE  ?CYCLES 2
[IY],[IY+L] CE,7B  ?PSEUDOCODE  ?CYCLES 2
[IY],BA CE,DC  ?PSEUDOCODE  ?CYCLES 2
[IY],HL CE,DD  ?PSEUDOCODE  ?CYCLES 2
[IY],IX CE,DE  ?PSEUDOCODE  ?CYCLES 2
[IY],IY CE,DF  ?PSEUDOCODE  ?CYCLES 2
LD [BR:ll],A 78,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],B 79,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],L 7A,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],H 7B,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],[HL] 7D,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],[IX] 7E,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],[IY] 7F,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],#nn DD,ll,nn  ?PSEUDOCODE  ?CYCLES 3
LD [SP+dd],BA CE,74,dd  ?PSEUDOCODE  ?CYCLES 3
[SP+dd],HL CE,75,dd  ?PSEUDOCODE  ?CYCLES 3
[SP+dd],IX CE,76,dd  ?PSEUDOCODE  ?CYCLES 3
[SP+dd],IY CE,77,dd  ?PSEUDOCODE  ?CYCLES 3
LD [IY+dd],A CE,45,dd  ?PSEUDOCODE  ?CYCLES 3
[IY+dd],B CE,4D,dd  ?PSEUDOCODE  ?CYCLES 3
[IY+dd],L CE,55,dd  ?PSEUDOCODE  ?CYCLES 3
[IY+dd],H CE,5D,dd  ?PSEUDOCODE  ?CYCLES 3
LD A,A 40  ?PSEUDOCODE  ?CYCLES 1
A,B 41  ?PSEUDOCODE  ?CYCLES 1
A,L 42  ?PSEUDOCODE  ?CYCLES 1
A,H 43  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 44,ll  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 45  ?PSEUDOCODE  ?CYCLES 1
A,[IX] 46  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 47  ?PSEUDOCODE  ?CYCLES 1
A,#nn B0,nn  ?PSEUDOCODE  ?CYCLES 2
A,[IX+dd] CE,40,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,41,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,42  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,43  ?PSEUDOCODE  ?CYCLES 2
A,BR CE,C0  ?PSEUDOCODE  ?CYCLES 2
A,SC CE,C1  ?PSEUDOCODE  ?CYCLES 2
A,NB CE,C8  ?PSEUDOCODE  ?CYCLES 2
A,EP CE,C9  ?PSEUDOCODE  ?CYCLES 2
A,XP CE,CA  ?PSEUDOCODE  ?CYCLES 2
A,YP CE,CB  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] CE,D0,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD IX,[hhll] BA,ll,hh  ?PSEUDOCODE  ?CYCLES 3
IX,#mmnn C6,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IX,[SP+dd] CE,72,dd  ?PSEUDOCODE  ?CYCLES 3
IX,[HL] CE,C2  ?PSEUDOCODE  ?CYCLES 2
IX,[IX] CE,D2  ?PSEUDOCODE  ?CYCLES 2
IX,[IY] CE,DA  ?PSEUDOCODE  ?CYCLES 2
IX,BA CE,E8  ?PSEUDOCODE  ?CYCLES 2
IX,HL CE,E9  ?PSEUDOCODE  ?CYCLES 2
IX,IX CE,EA  ?PSEUDOCODE  ?CYCLES 2
IX,IY CE,EB  ?PSEUDOCODE  ?CYCLES 2
IX,SP CE,FA  ?PSEUDOCODE  ?CYCLES 2
LD B,A 48  ?PSEUDOCODE  ?CYCLES 1
B,B 49  ?PSEUDOCODE  ?CYCLES 1
B,L 4A  ?PSEUDOCODE  ?CYCLES 1
B,H 4B  ?PSEUDOCODE  ?CYCLES 1
B,[BR:ll] 4C,ll  ?PSEUDOCODE  ?CYCLES 2
B,[HL] 4D  ?PSEUDOCODE  ?CYCLES 1
B,[IX] 4E  ?PSEUDOCODE  ?CYCLES 1
B,[IY] 4F  ?PSEUDOCODE  ?CYCLES 1
B,#nn B1,nn  ?PSEUDOCODE  ?CYCLES 2
B,[IX+dd] CE,48,dd  ?PSEUDOCODE  ?CYCLES 3
B,[IY+dd] CE,49,dd  ?PSEUDOCODE  ?CYCLES 3
B,[IX+L] CE,4A  ?PSEUDOCODE  ?CYCLES 2
B,[IY+L] CE,4B  ?PSEUDOCODE  ?CYCLES 2
B,[hhll] CE,D1,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD H,A 58  ?PSEUDOCODE  ?CYCLES 1
H,B 59  ?PSEUDOCODE  ?CYCLES 1
H,L 5A  ?PSEUDOCODE  ?CYCLES 1
H,H 5B  ?PSEUDOCODE  ?CYCLES 1
H,[BR:ll] 5C,ll  ?PSEUDOCODE  ?CYCLES 2
H,[HL] 5D  ?PSEUDOCODE  ?CYCLES 1
H,[IX] 5E  ?PSEUDOCODE  ?CYCLES 1
H,[IY] 5F  ?PSEUDOCODE  ?CYCLES 1
H,#nn B3,nn  ?PSEUDOCODE  ?CYCLES 2
H,[IX+dd] CE,58,dd  ?PSEUDOCODE  ?CYCLES 3
H,[IY+dd] CE,59,dd  ?PSEUDOCODE  ?CYCLES 3
H,[IX+L] CE,5A  ?PSEUDOCODE  ?CYCLES 2
H,[IY+L] CE,5B  ?PSEUDOCODE  ?CYCLES 2
H,[hhll] CE,D3,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD [HL],A 68  ?PSEUDOCODE  ?CYCLES 1
[HL],B 69  ?PSEUDOCODE  ?CYCLES 1
[HL],L 6A  ?PSEUDOCODE  ?CYCLES 1
[HL],H 6B  ?PSEUDOCODE  ?CYCLES 1
[HL],[BR:ll] 6C,ll  ?PSEUDOCODE  ?CYCLES 2
[HL],[HL] 6D  ?PSEUDOCODE  ?CYCLES 1
[HL],[IX] 6E  ?PSEUDOCODE  ?CYCLES 1
[HL],[IY] 6F  ?PSEUDOCODE  ?CYCLES 1
[HL],#nn B5,nn  ?PSEUDOCODE  ?CYCLES 2
[HL],[IX+dd] CE,60,dd  ?PSEUDOCODE  ?CYCLES 3
[HL],[IY+dd] CE,61,dd  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX+L] CE,62  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY+L] CE,63  ?PSEUDOCODE  ?CYCLES 2
[HL],BA CE,C4  ?PSEUDOCODE  ?CYCLES 2
[HL],HL CE,C5  ?PSEUDOCODE  ?CYCLES 2
[HL],IX CE,C6  ?PSEUDOCODE  ?CYCLES 2
[HL],IY CE,C7  ?PSEUDOCODE  ?CYCLES 2
LD L,A 50  ?PSEUDOCODE  ?CYCLES 1
L,B 51  ?PSEUDOCODE  ?CYCLES 1
L,L 52  ?PSEUDOCODE  ?CYCLES 1
L,H 53  ?PSEUDOCODE  ?CYCLES 1
L,[BR:ll] 54,ll  ?PSEUDOCODE  ?CYCLES 2
L,[HL] 55  ?PSEUDOCODE  ?CYCLES 1
L,[IX] 56  ?PSEUDOCODE  ?CYCLES 1
L,[IY] 57  ?PSEUDOCODE  ?CYCLES 1
L,#nn B2,nn  ?PSEUDOCODE  ?CYCLES 2
L,[IX+dd] CE,50,dd  ?PSEUDOCODE  ?CYCLES 3
L,[IY+dd] CE,51,dd  ?PSEUDOCODE  ?CYCLES 3
L,[IX+L] CE,52  ?PSEUDOCODE  ?CYCLES 2
L,[IY+L] CE,53  ?PSEUDOCODE  ?CYCLES 2
L,[hhll] CE,D2,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD [hhll],BA BC,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],HL BD,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],IX BE,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],IY BF,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],A CE,D4,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],B CE,D5,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],L CE,D6,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],H CE,D7,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],SP CE,7C,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD XP,#pp CE,C6,pp  ?PSEUDOCODE  ?CYCLES 3
XP,A CE,CE  ?PSEUDOCODE  ?CYCLES 2
LD EP,#pp CE,C5,pp  ?PSEUDOCODE  ?CYCLES 3
EP,A CE,CD  ?PSEUDOCODE  ?CYCLES 2
LD [IX],A 60  ?PSEUDOCODE  ?CYCLES 1
[IX],B 61  ?PSEUDOCODE  ?CYCLES 1
[IX],L 62  ?PSEUDOCODE  ?CYCLES 1
[IX],H 63  ?PSEUDOCODE  ?CYCLES 1
[IX],[BR:ll] 64,ll  ?PSEUDOCODE  ?CYCLES 2
[IX],[HL] 65  ?PSEUDOCODE  ?CYCLES 1
[IX],[IX] 66  ?PSEUDOCODE  ?CYCLES 1
[IX],[IY] 67  ?PSEUDOCODE  ?CYCLES 1
[IX],#nn B6,nn  ?PSEUDOCODE  ?CYCLES 2
[IX],[IX+dd] CE,68,dd  ?PSEUDOCODE  ?CYCLES 3
[IX],[IY+dd] CE,69,dd  ?PSEUDOCODE  ?CYCLES 3
[IX],[IX+L] CE,6A  ?PSEUDOCODE  ?CYCLES 2
[IX],[IY+L] CE,6B  ?PSEUDOCODE  ?CYCLES 2
[IX],BA CE,D4  ?PSEUDOCODE  ?CYCLES 2
[IX],HL CE,D5  ?PSEUDOCODE  ?CYCLES 2
[IX],IX CE,D6  ?PSEUDOCODE  ?CYCLES 2
[IX],IY CE,D7  ?PSEUDOCODE  ?CYCLES 2
LD [IX+dd],A CE,44,dd  ?PSEUDOCODE  ?CYCLES 3
[IX+dd],B CE,4C,dd  ?PSEUDOCODE  ?CYCLES 3
[IX+dd],L CE,54,dd  ?PSEUDOCODE  ?CYCLES 3
[IX+dd],H CE,5C,dd  ?PSEUDOCODE  ?CYCLES 3
LD SC,#nn 9F,nn  ?PSEUDOCODE  ?CYCLES 2
SC,A CE,C3  ?PSEUDOCODE  ?CYCLES 2
LD NB,#bb CE,C4,bb  ?PSEUDOCODE  ?CYCLES 3
NB,A CE,CC  ?PSEUDOCODE  ?CYCLES 2

EX: Byte exchange

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
EX A,B CC  ?PSEUDOCODE  ?CYCLES 1
A,[HL] CD  ?PSEUDOCODE  ?CYCLES 1

SWAP: Nibble exchange

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SWAP A F6  ?PSEUDOCODE  ?CYCLES 1
SWAP [HL] F7  ?PSEUDOCODE  ?CYCLES 1

Rotate/shift

RL: Rotate to left

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RL A CE,90  ?PSEUDOCODE  ?CYCLES 2
RL B CE,91  ?PSEUDOCODE  ?CYCLES 2
RL [HL] CE,93  ?PSEUDOCODE  ?CYCLES 2
RL [BR:ll] CE,92,ll  ?PSEUDOCODE  ?CYCLES 3

RLC: Rotate to left with carry

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RLC A CE,94  ?PSEUDOCODE  ?CYCLES 2
RLC B CE,95  ?PSEUDOCODE  ?CYCLES 2
RLC [HL] CE,97  ?PSEUDOCODE  ?CYCLES 2
RLC [BR:ll] CE,96,ll  ?PSEUDOCODE  ?CYCLES 3

RR: Rotate to right

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RR A CE,98  ?PSEUDOCODE  ?CYCLES 2
RR B CE,99  ?PSEUDOCODE  ?CYCLES 2
RR [HL] CE,9B  ?PSEUDOCODE  ?CYCLES 2
RR [BR:ll] CE,9A,ll  ?PSEUDOCODE  ?CYCLES 3

RRC: Rotate to right with carry

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RRC A CE,9C  ?PSEUDOCODE  ?CYCLES 2
RRC B CE,9D  ?PSEUDOCODE  ?CYCLES 2
RRC [HL] CE,9F  ?PSEUDOCODE  ?CYCLES 2
RRC [BR:ll] CE,9E,ll  ?PSEUDOCODE  ?CYCLES 3

SLA: Arithmetic shift to left

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SLA A CE,80  ?PSEUDOCODE  ?CYCLES 2
SLA B CE,81  ?PSEUDOCODE  ?CYCLES 2
SLA [HL] CE,83  ?PSEUDOCODE  ?CYCLES 2
SLA [BR:ll] CE,82,ll  ?PSEUDOCODE  ?CYCLES 3

SLL: Logical shift to left

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SLL A CE,84  ?PSEUDOCODE  ?CYCLES 2
SLL B CE,85  ?PSEUDOCODE  ?CYCLES 2
SLL [HL] CE,87  ?PSEUDOCODE  ?CYCLES 2
SLL [BR:ll] CE,86,ll  ?PSEUDOCODE  ?CYCLES 3

SRA: Arithmetic shift to right

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SRA A CE,88  ?PSEUDOCODE  ?CYCLES 2 0
SRA B CE,89  ?PSEUDOCODE  ?CYCLES 2 0
SRA [HL] CE,8B  ?PSEUDOCODE  ?CYCLES 2 0
SRA [BR:ll] CE,8A,ll  ?PSEUDOCODE  ?CYCLES 3 0

SRL: Logical shift to right

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SRL A CE,8C  ?PSEUDOCODE  ?CYCLES 2 0
SRL B CE,8D  ?PSEUDOCODE  ?CYCLES 2 0
SRL [HL] CE,8F  ?PSEUDOCODE  ?CYCLES 2 0
SRL [BR:ll] CE,8E,ll  ?PSEUDOCODE  ?CYCLES 3 0

Auxiliary operation

PACK: Pack

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
PACK DE  ?PSEUDOCODE  ?CYCLES 1

UPCK: Unpack

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
UPCK DF  ?PSEUDOCODE  ?CYCLES 1

SEP: Code extension

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SEP CE,A8  ?PSEUDOCODE  ?CYCLES 2

16-bit arithmetic operation

ADD: Addition

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
ADD IX,#mmnn C2,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IX,BA CE,40  ?PSEUDOCODE  ?CYCLES 2
IX,HL CE,41  ?PSEUDOCODE  ?CYCLES 2
ADD BA,#mmnn C0,nn,mm  ?PSEUDOCODE  ?CYCLES 3
BA,BA CE, 0  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE, 1  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE, 2  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE, 3  ?PSEUDOCODE  ?CYCLES 2
ADD SP,BA CE,44  ?PSEUDOCODE  ?CYCLES 2
SP,HL CE,45  ?PSEUDOCODE  ?CYCLES 2
SP,#mmnn CE,68,nn,mm  ?PSEUDOCODE  ?CYCLES 4
ADD IY,#mmnn C3,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IY,BA CE,42  ?PSEUDOCODE  ?CYCLES 2
IY,HL CE,43  ?PSEUDOCODE  ?CYCLES 2
ADD HL,#mmnn C1,nn,mm  ?PSEUDOCODE  ?CYCLES 3
HL,BA CE,20  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,21  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,22  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,23  ?PSEUDOCODE  ?CYCLES 2

ADC: Addition with carry

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
ADC BA,BA CE, 4  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE, 5  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE, 6  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE, 7  ?PSEUDOCODE  ?CYCLES 2
BA,#mmnn CE,60,nn,mm  ?PSEUDOCODE  ?CYCLES 4
ADC HL,BA CE,24  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,25  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,26  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,27  ?PSEUDOCODE  ?CYCLES 2
HL,#mmnn CE,61,nn,mm  ?PSEUDOCODE  ?CYCLES 4

SUB: Subtraction

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SUB IX,#mmnn D2,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IX,BA CE,48  ?PSEUDOCODE  ?CYCLES 2
IX,HL CE,49  ?PSEUDOCODE  ?CYCLES 2
SUB BA,#mmnn D0,nn,mm  ?PSEUDOCODE  ?CYCLES 3
BA,BA CE, 8  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE, 9  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE, A  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE, B  ?PSEUDOCODE  ?CYCLES 2
SUB SP,BA CE,4C  ?PSEUDOCODE  ?CYCLES 2
SP,HL CE,4D  ?PSEUDOCODE  ?CYCLES 2
SP,#mmnn CE,6A,nn,mm  ?PSEUDOCODE  ?CYCLES 4
SUB IY,#mmnn D3,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IY,BA CE,4A  ?PSEUDOCODE  ?CYCLES 2
IY,HL CE,4B  ?PSEUDOCODE  ?CYCLES 2
SUB HL,#mmnn D1,nn,mm  ?PSEUDOCODE  ?CYCLES 3
HL,BA CE,28  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,29  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,2A  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,2B  ?PSEUDOCODE  ?CYCLES 2

SBC: Subtraction with carry

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SBC BA,BA CE, C  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE, D  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE, E  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE, F  ?PSEUDOCODE  ?CYCLES 2
BA,#mmnn CE,62,nn,mm  ?PSEUDOCODE  ?CYCLES 4
SBC HL,BA CE,2C  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,2D  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,2E  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,2F  ?PSEUDOCODE  ?CYCLES 2
HL,#mmnn CE,63,nn,mm  ?PSEUDOCODE  ?CYCLES 4

CP: Comparison

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
CP IX,#mmnn D6,nn,mm  ?PSEUDOCODE  ?CYCLES 3
CP BA,#mmnn D4,nn,mm  ?PSEUDOCODE  ?CYCLES 3
BA,BA CE,18  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE,19  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE,1A  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE,1B  ?PSEUDOCODE  ?CYCLES 2
CP IY,#mmnn D7,nn,mm  ?PSEUDOCODE  ?CYCLES 3
CP HL,#mmnn D5,nn,mm  ?PSEUDOCODE  ?CYCLES 3
HL,BA CE,38  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,39  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,3A  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,3B  ?PSEUDOCODE  ?CYCLES 2
CP SP,BA CE,5C  ?PSEUDOCODE  ?CYCLES 2
SP,HL CE,5D  ?PSEUDOCODE  ?CYCLES 2
SP,#mmnn CE,6C,nn,mm  ?PSEUDOCODE  ?CYCLES 4

INC: 1 increment

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
INC IX 92  ?PSEUDOCODE  ?CYCLES 1
INC BA 90  ?PSEUDOCODE  ?CYCLES 1
INC HL 91  ?PSEUDOCODE  ?CYCLES 1
INC IY 93  ?PSEUDOCODE  ?CYCLES 1
INC SP 87  ?PSEUDOCODE  ?CYCLES 1

DEC: 1 decrement

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
DEC IX 9A  ?PSEUDOCODE  ?CYCLES 1
DEC BA 98  ?PSEUDOCODE  ?CYCLES 1
DEC HL 99  ?PSEUDOCODE  ?CYCLES 1
DEC IY 9B  ?PSEUDOCODE  ?CYCLES 1
DEC SP 8F  ?PSEUDOCODE  ?CYCLES 1

16-bit transfer

LD: Load

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
LD IY,[hhll] BB,ll,hh  ?PSEUDOCODE  ?CYCLES 3
IY,#mmnn C7,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IY,[SP+dd] CE,73,dd  ?PSEUDOCODE  ?CYCLES 3
IY,[HL] CE,C3  ?PSEUDOCODE  ?CYCLES 2
IY,[IX] CE,D3  ?PSEUDOCODE  ?CYCLES 2
IY,[IY] CE,DB  ?PSEUDOCODE  ?CYCLES 2
IY,BA CE,EC  ?PSEUDOCODE  ?CYCLES 2
IY,HL CE,ED  ?PSEUDOCODE  ?CYCLES 2
IY,IX CE,EE  ?PSEUDOCODE  ?CYCLES 2
IY,IY CE,EF  ?PSEUDOCODE  ?CYCLES 2
IY,SP CE,FE  ?PSEUDOCODE  ?CYCLES 2
LD SP,#mmnn CE,6E,nn,mm  ?PSEUDOCODE  ?CYCLES 4
SP,[hhll] CE,78,ll,hh  ?PSEUDOCODE  ?CYCLES 4
SP,BA CE,F0  ?PSEUDOCODE  ?CYCLES 2
SP,HL CE,F1  ?PSEUDOCODE  ?CYCLES 2
SP,IX CE,F2  ?PSEUDOCODE  ?CYCLES 2
SP,IY CE,F3  ?PSEUDOCODE  ?CYCLES 2
LD BA,[hhll] B8,ll,hh  ?PSEUDOCODE  ?CYCLES 3
BA,#mmnn C4,nn,mm  ?PSEUDOCODE  ?CYCLES 3
BA,[SP+dd] CE,70,dd  ?PSEUDOCODE  ?CYCLES 3
BA,[HL] CE,C0  ?PSEUDOCODE  ?CYCLES 2
BA,[IX] CE,D0  ?PSEUDOCODE  ?CYCLES 2
BA,[IY] CE,D8  ?PSEUDOCODE  ?CYCLES 2
BA,BA CE,E0  ?PSEUDOCODE  ?CYCLES 2
BA,HL CE,E1  ?PSEUDOCODE  ?CYCLES 2
BA,IX CE,E2  ?PSEUDOCODE  ?CYCLES 2
BA,IY CE,E3  ?PSEUDOCODE  ?CYCLES 2
BA,SP CE,F8  ?PSEUDOCODE  ?CYCLES 2
BA,PC CE,F9  ?PSEUDOCODE  ?CYCLES 2
LD BR,#hh B4,hh  ?PSEUDOCODE  ?CYCLES 2
BR,A CE,C2  ?PSEUDOCODE  ?CYCLES 2
LD [IX+L],A CE,46  ?PSEUDOCODE  ?CYCLES 2
[IX+L],B CE,4E  ?PSEUDOCODE  ?CYCLES 2
[IX+L],L CE,56  ?PSEUDOCODE  ?CYCLES 2
[IX+L],H CE,5E  ?PSEUDOCODE  ?CYCLES 2
LD HL,[hhll] B9,ll,hh  ?PSEUDOCODE  ?CYCLES 3
HL,#mmnn C5,nn,mm  ?PSEUDOCODE  ?CYCLES 3
HL,[SP+dd] CE,71,dd  ?PSEUDOCODE  ?CYCLES 3
HL,[HL] CE,C1  ?PSEUDOCODE  ?CYCLES 2
HL,[IX] CE,D1  ?PSEUDOCODE  ?CYCLES 2
HL,[IY] CE,D9  ?PSEUDOCODE  ?CYCLES 2
HL,BA CE,E4  ?PSEUDOCODE  ?CYCLES 2
HL,HL CE,E5  ?PSEUDOCODE  ?CYCLES 2
HL,IX CE,E6  ?PSEUDOCODE  ?CYCLES 2
HL,IY CE,E7  ?PSEUDOCODE  ?CYCLES 2
HL,SP CE,F4  ?PSEUDOCODE  ?CYCLES 2
HL,PC CE,F5  ?PSEUDOCODE  ?CYCLES 2
LD [IY+L],A CE,47  ?PSEUDOCODE  ?CYCLES 2
[IY+L],B CE,4F  ?PSEUDOCODE  ?CYCLES 2
[IY+L],L CE,57  ?PSEUDOCODE  ?CYCLES 2
[IY+L],H CE,5F  ?PSEUDOCODE  ?CYCLES 2
LD YP,#pp CE,C7,pp  ?PSEUDOCODE  ?CYCLES 3
YP,A CE,CF  ?PSEUDOCODE  ?CYCLES 2
LD [IY],A 70  ?PSEUDOCODE  ?CYCLES 1
[IY],B 71  ?PSEUDOCODE  ?CYCLES 1
[IY],L 72  ?PSEUDOCODE  ?CYCLES 1
[IY],H 73  ?PSEUDOCODE  ?CYCLES 1
[IY],[BR:ll] 74,ll  ?PSEUDOCODE  ?CYCLES 2
[IY],[HL] 75  ?PSEUDOCODE  ?CYCLES 1
[IY],[IX] 76  ?PSEUDOCODE  ?CYCLES 1
[IY],[IY] 77  ?PSEUDOCODE  ?CYCLES 1
[IY],#nn B7,nn  ?PSEUDOCODE  ?CYCLES 2
[IY],[IX+dd] CE,78,dd  ?PSEUDOCODE  ?CYCLES 3
[IY],[IY+dd] CE,79,dd  ?PSEUDOCODE  ?CYCLES 3
[IY],[IX+L] CE,7A  ?PSEUDOCODE  ?CYCLES 2
[IY],[IY+L] CE,7B  ?PSEUDOCODE  ?CYCLES 2
[IY],BA CE,DC  ?PSEUDOCODE  ?CYCLES 2
[IY],HL CE,DD  ?PSEUDOCODE  ?CYCLES 2
[IY],IX CE,DE  ?PSEUDOCODE  ?CYCLES 2
[IY],IY CE,DF  ?PSEUDOCODE  ?CYCLES 2
LD [BR:ll],A 78,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],B 79,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],L 7A,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],H 7B,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],[HL] 7D,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],[IX] 7E,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],[IY] 7F,ll  ?PSEUDOCODE  ?CYCLES 2
[BR:ll],#nn DD,ll,nn  ?PSEUDOCODE  ?CYCLES 3
LD [SP+dd],BA CE,74,dd  ?PSEUDOCODE  ?CYCLES 3
[SP+dd],HL CE,75,dd  ?PSEUDOCODE  ?CYCLES 3
[SP+dd],IX CE,76,dd  ?PSEUDOCODE  ?CYCLES 3
[SP+dd],IY CE,77,dd  ?PSEUDOCODE  ?CYCLES 3
LD [IY+dd],A CE,45,dd  ?PSEUDOCODE  ?CYCLES 3
[IY+dd],B CE,4D,dd  ?PSEUDOCODE  ?CYCLES 3
[IY+dd],L CE,55,dd  ?PSEUDOCODE  ?CYCLES 3
[IY+dd],H CE,5D,dd  ?PSEUDOCODE  ?CYCLES 3
LD A,A 40  ?PSEUDOCODE  ?CYCLES 1
A,B 41  ?PSEUDOCODE  ?CYCLES 1
A,L 42  ?PSEUDOCODE  ?CYCLES 1
A,H 43  ?PSEUDOCODE  ?CYCLES 1
A,[BR:ll] 44,ll  ?PSEUDOCODE  ?CYCLES 2
A,[HL] 45  ?PSEUDOCODE  ?CYCLES 1
A,[IX] 46  ?PSEUDOCODE  ?CYCLES 1
A,[IY] 47  ?PSEUDOCODE  ?CYCLES 1
A,#nn B0,nn  ?PSEUDOCODE  ?CYCLES 2
A,[IX+dd] CE,40,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IY+dd] CE,41,dd  ?PSEUDOCODE  ?CYCLES 3
A,[IX+L] CE,42  ?PSEUDOCODE  ?CYCLES 2
A,[IY+L] CE,43  ?PSEUDOCODE  ?CYCLES 2
A,BR CE,C0  ?PSEUDOCODE  ?CYCLES 2
A,SC CE,C1  ?PSEUDOCODE  ?CYCLES 2
A,NB CE,C8  ?PSEUDOCODE  ?CYCLES 2
A,EP CE,C9  ?PSEUDOCODE  ?CYCLES 2
A,XP CE,CA  ?PSEUDOCODE  ?CYCLES 2
A,YP CE,CB  ?PSEUDOCODE  ?CYCLES 2
A,[hhll] CE,D0,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD IX,[hhll] BA,ll,hh  ?PSEUDOCODE  ?CYCLES 3
IX,#mmnn C6,nn,mm  ?PSEUDOCODE  ?CYCLES 3
IX,[SP+dd] CE,72,dd  ?PSEUDOCODE  ?CYCLES 3
IX,[HL] CE,C2  ?PSEUDOCODE  ?CYCLES 2
IX,[IX] CE,D2  ?PSEUDOCODE  ?CYCLES 2
IX,[IY] CE,DA  ?PSEUDOCODE  ?CYCLES 2
IX,BA CE,E8  ?PSEUDOCODE  ?CYCLES 2
IX,HL CE,E9  ?PSEUDOCODE  ?CYCLES 2
IX,IX CE,EA  ?PSEUDOCODE  ?CYCLES 2
IX,IY CE,EB  ?PSEUDOCODE  ?CYCLES 2
IX,SP CE,FA  ?PSEUDOCODE  ?CYCLES 2
LD B,A 48  ?PSEUDOCODE  ?CYCLES 1
B,B 49  ?PSEUDOCODE  ?CYCLES 1
B,L 4A  ?PSEUDOCODE  ?CYCLES 1
B,H 4B  ?PSEUDOCODE  ?CYCLES 1
B,[BR:ll] 4C,ll  ?PSEUDOCODE  ?CYCLES 2
B,[HL] 4D  ?PSEUDOCODE  ?CYCLES 1
B,[IX] 4E  ?PSEUDOCODE  ?CYCLES 1
B,[IY] 4F  ?PSEUDOCODE  ?CYCLES 1
B,#nn B1,nn  ?PSEUDOCODE  ?CYCLES 2
B,[IX+dd] CE,48,dd  ?PSEUDOCODE  ?CYCLES 3
B,[IY+dd] CE,49,dd  ?PSEUDOCODE  ?CYCLES 3
B,[IX+L] CE,4A  ?PSEUDOCODE  ?CYCLES 2
B,[IY+L] CE,4B  ?PSEUDOCODE  ?CYCLES 2
B,[hhll] CE,D1,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD H,A 58  ?PSEUDOCODE  ?CYCLES 1
H,B 59  ?PSEUDOCODE  ?CYCLES 1
H,L 5A  ?PSEUDOCODE  ?CYCLES 1
H,H 5B  ?PSEUDOCODE  ?CYCLES 1
H,[BR:ll] 5C,ll  ?PSEUDOCODE  ?CYCLES 2
H,[HL] 5D  ?PSEUDOCODE  ?CYCLES 1
H,[IX] 5E  ?PSEUDOCODE  ?CYCLES 1
H,[IY] 5F  ?PSEUDOCODE  ?CYCLES 1
H,#nn B3,nn  ?PSEUDOCODE  ?CYCLES 2
H,[IX+dd] CE,58,dd  ?PSEUDOCODE  ?CYCLES 3
H,[IY+dd] CE,59,dd  ?PSEUDOCODE  ?CYCLES 3
H,[IX+L] CE,5A  ?PSEUDOCODE  ?CYCLES 2
H,[IY+L] CE,5B  ?PSEUDOCODE  ?CYCLES 2
H,[hhll] CE,D3,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD [HL],A 68  ?PSEUDOCODE  ?CYCLES 1
[HL],B 69  ?PSEUDOCODE  ?CYCLES 1
[HL],L 6A  ?PSEUDOCODE  ?CYCLES 1
[HL],H 6B  ?PSEUDOCODE  ?CYCLES 1
[HL],[BR:ll] 6C,ll  ?PSEUDOCODE  ?CYCLES 2
[HL],[HL] 6D  ?PSEUDOCODE  ?CYCLES 1
[HL],[IX] 6E  ?PSEUDOCODE  ?CYCLES 1
[HL],[IY] 6F  ?PSEUDOCODE  ?CYCLES 1
[HL],#nn B5,nn  ?PSEUDOCODE  ?CYCLES 2
[HL],[IX+dd] CE,60,dd  ?PSEUDOCODE  ?CYCLES 3
[HL],[IY+dd] CE,61,dd  ?PSEUDOCODE  ?CYCLES 3
[HL],[IX+L] CE,62  ?PSEUDOCODE  ?CYCLES 2
[HL],[IY+L] CE,63  ?PSEUDOCODE  ?CYCLES 2
[HL],BA CE,C4  ?PSEUDOCODE  ?CYCLES 2
[HL],HL CE,C5  ?PSEUDOCODE  ?CYCLES 2
[HL],IX CE,C6  ?PSEUDOCODE  ?CYCLES 2
[HL],IY CE,C7  ?PSEUDOCODE  ?CYCLES 2
LD L,A 50  ?PSEUDOCODE  ?CYCLES 1
L,B 51  ?PSEUDOCODE  ?CYCLES 1
L,L 52  ?PSEUDOCODE  ?CYCLES 1
L,H 53  ?PSEUDOCODE  ?CYCLES 1
L,[BR:ll] 54,ll  ?PSEUDOCODE  ?CYCLES 2
L,[HL] 55  ?PSEUDOCODE  ?CYCLES 1
L,[IX] 56  ?PSEUDOCODE  ?CYCLES 1
L,[IY] 57  ?PSEUDOCODE  ?CYCLES 1
L,#nn B2,nn  ?PSEUDOCODE  ?CYCLES 2
L,[IX+dd] CE,50,dd  ?PSEUDOCODE  ?CYCLES 3
L,[IY+dd] CE,51,dd  ?PSEUDOCODE  ?CYCLES 3
L,[IX+L] CE,52  ?PSEUDOCODE  ?CYCLES 2
L,[IY+L] CE,53  ?PSEUDOCODE  ?CYCLES 2
L,[hhll] CE,D2,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD [hhll],BA BC,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],HL BD,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],IX BE,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],IY BF,ll,hh  ?PSEUDOCODE  ?CYCLES 3
[hhll],A CE,D4,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],B CE,D5,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],L CE,D6,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],H CE,D7,ll,hh  ?PSEUDOCODE  ?CYCLES 4
[hhll],SP CE,7C,ll,hh  ?PSEUDOCODE  ?CYCLES 4
LD XP,#pp CE,C6,pp  ?PSEUDOCODE  ?CYCLES 3
XP,A CE,CE  ?PSEUDOCODE  ?CYCLES 2
LD EP,#pp CE,C5,pp  ?PSEUDOCODE  ?CYCLES 3
EP,A CE,CD  ?PSEUDOCODE  ?CYCLES 2
LD [IX],A 60  ?PSEUDOCODE  ?CYCLES 1
[IX],B 61  ?PSEUDOCODE  ?CYCLES 1
[IX],L 62  ?PSEUDOCODE  ?CYCLES 1
[IX],H 63  ?PSEUDOCODE  ?CYCLES 1
[IX],[BR:ll] 64,ll  ?PSEUDOCODE  ?CYCLES 2
[IX],[HL] 65  ?PSEUDOCODE  ?CYCLES 1
[IX],[IX] 66  ?PSEUDOCODE  ?CYCLES 1
[IX],[IY] 67  ?PSEUDOCODE  ?CYCLES 1
[IX],#nn B6,nn  ?PSEUDOCODE  ?CYCLES 2
[IX],[IX+dd] CE,68,dd  ?PSEUDOCODE  ?CYCLES 3
[IX],[IY+dd] CE,69,dd  ?PSEUDOCODE  ?CYCLES 3
[IX],[IX+L] CE,6A  ?PSEUDOCODE  ?CYCLES 2
[IX],[IY+L] CE,6B  ?PSEUDOCODE  ?CYCLES 2
[IX],BA CE,D4  ?PSEUDOCODE  ?CYCLES 2
[IX],HL CE,D5  ?PSEUDOCODE  ?CYCLES 2
[IX],IX CE,D6  ?PSEUDOCODE  ?CYCLES 2
[IX],IY CE,D7  ?PSEUDOCODE  ?CYCLES 2
LD [IX+dd],A CE,44,dd  ?PSEUDOCODE  ?CYCLES 3
[IX+dd],B CE,4C,dd  ?PSEUDOCODE  ?CYCLES 3
[IX+dd],L CE,54,dd  ?PSEUDOCODE  ?CYCLES 3
[IX+dd],H CE,5C,dd  ?PSEUDOCODE  ?CYCLES 3
LD SC,#nn 9F,nn  ?PSEUDOCODE  ?CYCLES 2
SC,A CE,C3  ?PSEUDOCODE  ?CYCLES 2
LD NB,#bb CE,C4,bb  ?PSEUDOCODE  ?CYCLES 3
NB,A CE,CC  ?PSEUDOCODE  ?CYCLES 2

EX: Byte exchange

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
EX BA,HL C8  ?PSEUDOCODE  ?CYCLES 1
BA,IX C9  ?PSEUDOCODE  ?CYCLES 1
BA,IY CA  ?PSEUDOCODE  ?CYCLES 1
BA,SP CB  ?PSEUDOCODE  ?CYCLES 1

Stack Control

PUSH: Push

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
PUSH IY A3  ?PSEUDOCODE  ?CYCLES 1
PUSH IX A2  ?PSEUDOCODE  ?CYCLES 1
PUSH ALL CE,B8  ?PSEUDOCODE  ?CYCLES 2
PUSH B CE,B1  ?PSEUDOCODE  ?CYCLES 2
PUSH BA A0  ?PSEUDOCODE  ?CYCLES 1
PUSH IP A6  ?PSEUDOCODE  ?CYCLES 1
PUSH ALE CE,B9  ?PSEUDOCODE  ?CYCLES 2
PUSH L CE,B2  ?PSEUDOCODE  ?CYCLES 2
PUSH HL A1  ?PSEUDOCODE  ?CYCLES 1
PUSH A CE,B0  ?PSEUDOCODE  ?CYCLES 2
PUSH BR A4  ?PSEUDOCODE  ?CYCLES 1
PUSH H CE,B3  ?PSEUDOCODE  ?CYCLES 2
PUSH SC A7  ?PSEUDOCODE  ?CYCLES 1
PUSH EP A5  ?PSEUDOCODE  ?CYCLES 1

POP: Pop

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
POP IY AB  ?PSEUDOCODE  ?CYCLES 1
POP IX AA  ?PSEUDOCODE  ?CYCLES 1
POP ALL CE,BC  ?PSEUDOCODE  ?CYCLES 2
POP B CE,B5  ?PSEUDOCODE  ?CYCLES 2
POP BA A8  ?PSEUDOCODE  ?CYCLES 1
POP IP AE  ?PSEUDOCODE  ?CYCLES 1
POP ALE CE,BD  ?PSEUDOCODE  ?CYCLES 2
POP L CE,B6  ?PSEUDOCODE  ?CYCLES 2
POP HL A9  ?PSEUDOCODE  ?CYCLES 1
POP A CE,B4  ?PSEUDOCODE  ?CYCLES 2
POP BR AC  ?PSEUDOCODE  ?CYCLES 1
POP H CE,B7  ?PSEUDOCODE  ?CYCLES 2
POP SC AF  ?PSEUDOCODE  ?CYCLES 1
POP EP AD  ?PSEUDOCODE  ?CYCLES 1

Branch

JRS: Relative short jump

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
JRS F0,rr CE,E8,rr  ?PSEUDOCODE  ?CYCLES 3
JRS F1,rr CE,E9,rr  ?PSEUDOCODE  ?CYCLES 3
JRS C,rr E4,rr  ?PSEUDOCODE  ?CYCLES 2
JRS LE,rr CE,E1,rr  ?PSEUDOCODE  ?CYCLES 3
JRS GE,rr CE,E3,rr  ?PSEUDOCODE  ?CYCLES 3
JRS rr F1,rr  ?PSEUDOCODE  ?CYCLES 2
JRS NC,rr E5,rr  ?PSEUDOCODE  ?CYCLES 2
JRS M,rr CE,E7,rr  ?PSEUDOCODE  ?CYCLES 3
JRS LT,rr CE,E0,rr  ?PSEUDOCODE  ?CYCLES 3
JRS F3,rr CE,EB,rr  ?PSEUDOCODE  ?CYCLES 3
JRS P,rr CE,E6,rr  ?PSEUDOCODE  ?CYCLES 3
JRS NZ,rr E7,rr  ?PSEUDOCODE  ?CYCLES 2
JRS GT,rr CE,E2,rr  ?PSEUDOCODE  ?CYCLES 3
JRS NF3,rr CE,EF,rr  ?PSEUDOCODE  ?CYCLES 3
JRS NF2,rr CE,EE,rr  ?PSEUDOCODE  ?CYCLES 3
JRS NF1,rr CE,ED,rr  ?PSEUDOCODE  ?CYCLES 3
JRS V,rr CE,E4,rr  ?PSEUDOCODE  ?CYCLES 3
JRS F2,rr CE,EA,rr  ?PSEUDOCODE  ?CYCLES 3
JRS Z,rr E6,rr  ?PSEUDOCODE  ?CYCLES 2
JRS NF0,rr CE,EC,rr  ?PSEUDOCODE  ?CYCLES 3
JRS NV,rr CE,E5,rr  ?PSEUDOCODE  ?CYCLES 3

JRL: Relative long jump

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
JRL C,qqrr EC,rr,qq  ?PSEUDOCODE  ?CYCLES 3
JRL NC,qqrr ED,rr,qq  ?PSEUDOCODE  ?CYCLES 3
JRL Z,qqrr EE,rr,qq  ?PSEUDOCODE  ?CYCLES 3
JRL NZ,qqrr EF,rr,qq  ?PSEUDOCODE  ?CYCLES 3
JRL qqrr F3,rr,qq  ?PSEUDOCODE  ?CYCLES 3

JP: Indirect jump

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
JP [kk] FD,kk  ?PSEUDOCODE  ?CYCLES 2
JP HL F4  ?PSEUDOCODE  ?CYCLES 1

DJR: Loop

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
DJR NZ,rr F5,rr  ?PSEUDOCODE  ?CYCLES 2

CARS: Relative short call

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
CARS F0,rr CE,F8,rr  ?PSEUDOCODE  ?CYCLES 3
CARS F1,rr CE,F9,rr  ?PSEUDOCODE  ?CYCLES 3
CARS C,rr E0,rr  ?PSEUDOCODE  ?CYCLES 2
CARS LE,rr CE,F1,rr  ?PSEUDOCODE  ?CYCLES 3
CARS GE,rr CE,F3,rr  ?PSEUDOCODE  ?CYCLES 3
CARS rr F0,rr  ?PSEUDOCODE  ?CYCLES 2
CARS NC,rr E1,rr  ?PSEUDOCODE  ?CYCLES 2
CARS M,rr CE,F7,rr  ?PSEUDOCODE  ?CYCLES 3
CARS LT,rr CE,F0,rr  ?PSEUDOCODE  ?CYCLES 3
CARS F3,rr CE,FB,rr  ?PSEUDOCODE  ?CYCLES 3
CARS P,rr CE,F6,rr  ?PSEUDOCODE  ?CYCLES 3
CARS NZ,rr E3,rr  ?PSEUDOCODE  ?CYCLES 2
CARS GT,rr CE,F2,rr  ?PSEUDOCODE  ?CYCLES 3
CARS NF3,rr CE,FF,rr  ?PSEUDOCODE  ?CYCLES 3
CARS NF2,rr CE,FE,rr  ?PSEUDOCODE  ?CYCLES 3
CARS NF1,rr CE,FD,rr  ?PSEUDOCODE  ?CYCLES 3
CARS V,rr CE,F4,rr  ?PSEUDOCODE  ?CYCLES 3
CARS F2,rr CE,FA,rr  ?PSEUDOCODE  ?CYCLES 3
CARS Z,rr E2,rr  ?PSEUDOCODE  ?CYCLES 2
CARS NF0,rr CE,FC,rr  ?PSEUDOCODE  ?CYCLES 3
CARS NV,rr CE,F5,rr  ?PSEUDOCODE  ?CYCLES 3

CARL: Relative long call

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
CARL C,qqrr E8,rr,qq  ?PSEUDOCODE  ?CYCLES 3
CARL NC,qqrr E9,rr,qq  ?PSEUDOCODE  ?CYCLES 3
CARL Z,qqrr EA,rr,qq  ?PSEUDOCODE  ?CYCLES 3
CARL NZ,qqrr EB,rr,qq  ?PSEUDOCODE  ?CYCLES 3
CARL qqrr F2,rr,qq  ?PSEUDOCODE  ?CYCLES 3

CALL: Indirect call

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
CALL [hhll] FB,ll,hh  ?PSEUDOCODE  ?CYCLES 3

RET: Return

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RET F8  ?PSEUDOCODE  ?CYCLES 1

RETE: Exception processing return

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RETE F9  ?PSEUDOCODE  ?CYCLES 1

RETS: Return and skip

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
RETS FA  ?PSEUDOCODE  ?CYCLES 1

INT: Software interrupt

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
INT [kk] FC,kk  ?PSEUDOCODE  ?CYCLES 2

System Control

NOP: No operation

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
NOP FF  ?PSEUDOCODE  ?CYCLES 1

HALT: Shifts to HALT status

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
HALT CE,AE  ?PSEUDOCODE  ?CYCLES 2

SLP: Shifts to SLEEP status

Mnemonic Machine Code Operation Cycles Bytes SC
I1 I0 U D N V C Z
SLP CE,AF  ?PSEUDOCODE  ?CYCLES 2

Operation Code Map

1st operation code

x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
0x ADD A,A ADD A,B ADD A,#nn ADD A,[HL] ADD A,[BR:ll] ADD A,[hhll] ADD A,[IX] ADD A,[IY] ADC A,A ADC A,B ADC A,#nn ADC A,[HL] ADC A,[BR:ll] ADC A,[hhll] ADC A,[IX] ADC A,[IY]
1x SUB A,A SUB A,B SUB A,#nn SUB A,[HL] SUB A,[BR:ll] SUB A,[hhll] SUB A,[IX] SUB A,[IY] SBC A,A SBC A,B SBC A,#nn SBC A,[HL] SBC A,[BR:ll] SBC A,[hhll] SBC A,[IX] SBC A,[IY]
2x AND A,A AND A,B AND A,#nn AND A,[HL] AND A,[BR:ll] AND A,[hhll] AND A,[IX] AND A,[IY] OR A,A OR A,B OR A,#nn OR A,[HL] OR A,[BR:ll] OR A,[hhll] OR A,[IX] OR A,[IY]
3x CP A,A CP A,B CP A,#nn CP A,[HL] CP A,[BR:ll] CP A,[hhll] CP A,[IX] CP A,[IY] XOR A,A XOR A,B XOR A,#nn XOR A,[HL] XOR A,[BR:ll] XOR A,[hhll] XOR A,[IX] XOR A,[IY]
4x LD A,A LD A,B LD A,L LD A,H LD A,[BR:ll] LD A,[HL] LD A,[IX] LD A,[IY] LD B,A LD B,B LD B,L LD B,H LD B,[BR:ll] LD B,[HL] LD B,[IX] LD B,[IY]
5x LD L,A LD L,B LD L,L LD L,H LD L,[BR:ll] LD L,[HL] LD L,[IX] LD L,[IY] LD H,A LD H,B LD H,L LD H,H LD H,[BR:ll] LD H,[HL] LD H,[IX] LD H,[IY]
6x LD [IX],A LD [IX],B LD [IX],L LD [IX],H LD [IX],[BR:ll] LD [IX],[HL] LD [IX],[IX] LD [IX],[IY] LD [HL],A LD [HL],B LD [HL],L LD [HL],H LD [HL],[BR:ll] LD [HL],[HL] LD [HL],[IX] LD [HL],[IY]
7x LD [IY],A LD [IY],B LD [IY],L LD [IY],H LD [IY],[BR:ll] LD [IY],[HL] LD [IY],[IX] LD [IY],[IY] LD [BR:ll],A LD [BR:ll],B LD [BR:ll],L LD [BR:ll],H LD [BR:ll],[HL] LD [BR:ll],[IX] LD [BR:ll],[IY]
8x INC A INC B INC L INC H INC BR INC [BR:ll] INC [HL] INC SP DEC A DEC B DEC L DEC H DEC BR DEC [BR:ll] DEC [HL] DEC SP
9x INC BA INC HL INC IX INC IY BIT A,B BIT [HL],#nn BIT A,#nn BIT B,#nn DEC BA DEC HL DEC IX DEC IY AND SC,#nn OR SC,#nn XOR SC,#nn LD SC,#nn
Ax PUSH BA PUSH HL PUSH IX PUSH IY PUSH BR PUSH EP PUSH IP PUSH SC POP BA POP HL POP IX POP IY POP BR POP EP POP IP POP SC
Bx LD A,#nn LD B,#nn LD L,#nn LD H,#nn LD BR,#hh LD [HL],#nn LD [IX],#nn LD [IY],#nn LD BA,[hhll] LD HL,[hhll] LD IX,[hhll] LD IY,[hhll] LD [hhll],BA LD [hhll],HL LD [hhll],IX LD [hhll],IY
Cx ADD BA,#mmnn ADD HL,#mmnn ADD IX,#mmnn ADD IY,#mmnn LD BA,#mmnn LD HL,#mmnn LD IX,#mmnn LD IY,#mmnn EX BA,HL EX BA,IX EX BA,IY EX BA,SP EX A,B EX A,[HL] Expansion Code Expansion Code
Dx SUB BA,#mmnn SUB HL,#mmnn SUB IX,#mmnn SUB IY,#mmnn CP BA,#mmnn CP HL,#mmnn CP IX,#mmnn CP IY,#mmnn AND [BR:ll],#nn OR [BR:ll],#nn XOR [BR:ll],#nn CP [BR:ll],#nn BIT [BR:ll],#nn LD [BR:ll],#nn PACK UPCK
Ex CARS C,rr CARS NC,rr CARS Z,rr CARS NZ,rr JRS C,rr JRS NC,rr JRS Z,rr JRS NZ,rr CARL C,qqrr CARL NC,qqrr CARL Z,qqrr CARL NZ,qqrr JRL C,qqrr JRL NC,qqrr JRL Z,qqrr JRL NZ,qqrr
Fx CARS rr JRS rr CARL qqrr JRL qqrr JP HL DJR NZ,rr SWAP A SWAP [HL] RET RETE RETS CALL [hhll] INT [kk] JP [kk] NOP

2nd operation code (1st operation code = CE)

x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
0x ADD A,[IX+dd] ADD A,[IY+dd] ADD A,[IX+L] ADD A,[IY+L] ADD [HL],A ADD [HL],#nn ADD [HL],[IX] ADD [HL],[IY] ADC A,[IX+dd] ADC A,[IY+dd] ADC A,[IX+L] ADC A,[IY+L] ADC [HL],A ADC [HL],#nn ADC [HL],[IX] ADC [HL],[IY]
1x SUB A,[IX+dd] SUB A,[IY+dd] SUB A,[IX+L] SUB A,[IY+L] SUB [HL],A SUB [HL],#nn SUB [HL],[IX] SUB [HL],[IY] SBC A,[IX+dd] SBC A,[IY+dd] SBC A,[IX+L] SBC A,[IY+L] SBC [HL],A SBC [HL],#nn SBC [HL],[IX] SBC [HL],[IY]
2x AND A,[IX+dd] AND A,[IY+dd] AND A,[IX+L] AND A,[IY+L] AND [HL],A AND [HL],#nn AND [HL],[IX] AND [HL],[IY] OR A,[IX+dd] OR A,[IY+dd] OR A,[IX+L] OR A,[IY+L] OR [HL],A OR [HL],#nn OR [HL],[IX] OR [HL],[IY]
3x CP A,[IX+dd] CP A,[IY+dd] CP A,[IX+L] CP A,[IY+L] CP [HL],A CP [HL],#nn CP [HL],[IX] CP [HL],[IY] XOR A,[IX+dd] XOR A,[IY+dd] XOR A,[IX+L] XOR A,[IY+L] XOR [HL],A XOR [HL],#nn XOR [HL],[IX] XOR [HL],[IY]
4x LD A,[IX+dd] LD A,[IY+dd] LD A,[IX+L] LD A,[IY+L] LD [IX+dd],A LD [IY+dd],A LD [IX+L],A LD [IY+L],A LD B,[IX+dd] LD B,[IY+dd] LD B,[IX+L] LD B,[IY+L] LD [IX+dd],B LD [IY+dd],B LD [IX+L],B LD [IY+L],B
5x LD L,[IX+dd] LD L,[IY+dd] LD L,[IX+L] LD L,[IY+L] LD [IX+dd],L LD [IY+dd],L LD [IX+L],L LD [IY+L],L LD H,[IX+dd] LD H,[IY+dd] LD H,[IX+L] LD H,[IY+L] LD [IX+dd],H LD [IY+dd],H LD [IX+L],H LD [IY+L],H
6x LD [HL],[IX+dd] LD [HL],[IY+dd] LD [HL],[IX+L] LD [HL],[IY+L] LD [IX],[IX+dd] LD [IX],[IY+dd] LD [IX],[IX+L] LD [IX],[IY+L]
7x LD [IY],[IX+dd] LD [IY],[IY+dd] LD [IY],[IX+L] LD [IY],[IY+L]
8x SLA A SLA B SLA [BR:ll] SLA [HL] SLL A SLL B SLL [BR:ll] SLL [HL] SRA A SRA B SRA [BR:ll] SRA [HL] SRL A SRL B SRL [BR:ll] SRL [HL]
9x RL A RL B RL [BR:ll] RL [HL] RLC A RLC B RLC [BR:ll] RLC [HL] RR A RR B RR [BR:ll] RR [HL] RRC A RRC B RRC [BR:ll] RRC [HL]
Ax CPL A CPL B CPL [BR:ll] CPL [HL] NEG A NEG B NEG [BR:ll] NEG [HL] SEP HALT SLP
Bx AND B,#nn AND L,#nn AND H,#nn OR B,#nn OR L,#nn OR H,#nn XOR B,#nn XOR L,#nn XOR H,#nn CP B,#nn CP L,#nn CP H,#nn CP BR,#hh
Cx LD A,BR LD A,SC LD BR,A LD SC,A LD NB,#bb LD EP,#pp LD XP,#pp LD YP,#pp LD A,NB LD A,EP LD A,XP LD A,YP LD NB,A LD EP,A LD XP,A LD YP,A
Dx LD A,[hhll] LD B,[hhll] LD L,[hhll] LD H,[hhll] LD [hhll],A LD [hhll],B LD [hhll],L LD [hhll],H MLT DIV
Ex JRS LT,rr JRS LE,rr JRS GT,rr JRS GE,rr JRS V,rr JRS NV,rr JRS P,rr JRS M,rr JRS F0,rr JRS F1,rr JRS F2,rr JRS F3,rr JRS NF0,rr JRS NF1,rr JRS NF2,rr JRS NF3,rr
Fx CARS LT,rr CARS LE,rr CARS GT,rr CARS GE,rr CARS V,rr CARS NV,rr CARS P,rr CARS M,rr CARS F0,rr CARS F1,rr CARS F2,rr CARS F3,rr CARS NF0,rr CARS NF1,rr CARS NF2,rr CARS NF3,rr

3nd operation code (1st operation code = CF)

x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
0x ADD BA,BA ADD BA,HL ADD BA,IX ADD BA,IY ADC BA,BA ADC BA,HL ADC BA,IX ADC BA,IY SUB BA,BA SUB BA,HL SUB BA,IX SUB BA,IY SBC BA,BA SBC BA,HL SBC BA,IX SBC BA,IY
1x CP BA,BA CP BA,HL CP BA,IX CP BA,IY
2x ADD HL,BA ADD HL,HL ADD HL,IX ADD HL,IY ADC HL,BA ADC HL,HL ADC HL,IX ADC HL,IY SUB HL,BA SUB HL,HL SUB HL,IX SUB HL,IY SBC HL,BA SBC HL,HL SBC HL,IX SBC HL,IY
3x CP HL,BA CP HL,HL CP HL,IX CP HL,IY
4x ADD IX,BA ADD IX,HL ADD IY,BA ADD IY,HL ADD SP,BA ADD SP,HL SUB IX,BA SUB IX,HL SUB IY,BA SUB IY,HL SUB SP,BA SUB SP,HL
5x CP SP,BA CP SP,HL
6x ADC BA,#mmnn ADC HL,#mmnn SBC BA,#mmnn SBC HL,#mmnn ADD SP,#mmnn SUB SP,#mmnn CP SP,#mmnn LD SP,#mmnn
7x LD BA,[SP+dd] LD HL,[SP+dd] LD IX,[SP+dd] LD IY,[SP+dd] LD [SP+dd],BA LD [SP+dd],HL LD [SP+dd],IX LD [SP+dd],IY LD SP,[hhll] LD [hhll],SP
8x
9x
Ax
Bx PUSH A PUSH B PUSH L PUSH H POP A POP B POP L POP H PUSH ALL PUSH ALE POP ALL POP ALE
Cx LD BA,[HL] LD HL,[HL] LD IX,[HL] LD IY,[HL] LD [HL],BA LD [HL],HL LD [HL],IX LD [HL],IY
Dx LD BA,[IX] LD HL,[IX] LD IX,[IX] LD IY,[IX] LD [IX],BA LD [IX],HL LD [IX],IX LD [IX],IY LD BA,[IY] LD HL,[IY] LD IX,[IY] LD IY,[IY] LD [IY],BA LD [IY],HL LD [IY],IX LD [IY],IY
Ex LD BA,BA LD BA,HL LD BA,IX LD BA,IY LD HL,BA LD HL,HL LD HL,IX LD HL,IY LD IX,BA LD IX,HL LD IX,IX LD IX,IY LD IY,BA LD IY,HL LD IY,IX LD IY,IY
Fx LD SP,BA LD SP,HL LD SP,IX LD SP,IY LD HL,SP LD HL,PC LD BA,SP LD BA,PC LD IX,SP LD IY,SP

Illegal Instructions

NOTE: This document is now out of date, as should be updated to the new mnemonic and register naming

The entire opcode table has been evaluated on Pokemon Mini units and new and exotic illegal opcodes have been found.

These opcodes are not officially supported (they are not used by commercial games and not even found in the Pokemon Channel emulator) and can produce random results or crashes in some cases. The illegal opcodes have been documented on this page's Discussion page. THIS PAGE IS IN PROCESS