C
M
1
C
M
Bit Manipulation
DIR
Branch
REL
Read-Modify-Write
INH
Control
INH
Register/Memory
IX2
DIR
DIR
INH
IX1
SP1
IX
INH
IMM
DIR
EXT
SP2
IX1
SP1
IX
0
1
2
3
4
5
6
9E6
7
8
9
A
B
C
D
9ED
E
9EE
F
0
5
BRSET0
3
DIR
5
4
BSET0
2
DIR
4
3
BRA
REL
3
BRN
REL
3
BHI
REL
3
BLS
REL
3
BCC
REL
3
BCS
REL
3
BNE
REL
3
BEQ
REL
3
BHCC
2
2
4
NEG
2
DIR
5
1
NEGA
1
INH
4
1
NEGX
1
INH
4
4
NEG
2
IX1
5
5
NEG
SP1
6
CBEQ
4
3
3
NEG
1
IX
4
7
RTI
1
INH
4
3
BGE
2
REL
3
BLT
REL
3
BGT
REL
3
BLE
REL
2
TXS
INH
2
TSX
INH
2
SUB
2
IMM
2
3
SUB
2
DIR
3
4
SUB
3
EXT
4
4
SUB
3
IX2
4
5
SUB
4
SP2
5
3
SUB
2
IX1
3
4
SUB
3
SP1
4
2
SUB
1
IX
2
1
BRCLR0
3
DIR
BCLR0
2
DIR
4
2
CBEQ
3
DIR
CBEQA
3
IMM
5
CBEQX
3
IMM
7
DIV
INH
1
COMX
1
CBEQ
3 IX1+
SP1
CBEQ
2
IX+
2
RTS
1
INH
2
CMP
2
IMM
2
CMP
DIR
3
SBC
DIR
3
CPX
DIR
3
AND
DIR
3
BIT
DIR
3
LDA
DIR
3
STA
DIR
3
EOR
DIR
3
ADC
DIR
3
ORA
DIR
3
ADD
DIR
2
JMP
DIR
4
JSR
DIR
3
LDX
DIR
3
STX
DIR
2
CMP
3
EXT
4
CMP
3
IX2
4
CMP
4
SP2
5
CMP
2
IX1
3
CMP
SP1
4
SBC
SP1
4
CPX
SP1
4
AND
SP1
4
BIT
SP1
4
LDA
SP1
4
STA
SP1
4
EOR
SP1
4
ADC
SP1
4
ORA
SP1
4
ADD
SP1
3
CMP
1
IX
2
2
5
BRSET1
3
DIR
5
BSET1
2
DIR
4
2
MUL
1
INH
1
1
3
NSA
1
INH
4
DAA
1
INH
3
2
SBC
2
IMM
2
2
SBC
3
EXT
4
SBC
3
IX2
4
SBC
4
SP2
5
SBC
2
IX1
3
3
SBC
1
IX
2
3
BRCLR1
3
DIR
BCLR1
2
DIR
4
2
4
COM
2
DIR
4
COMA
1
INH
1
INH
1
COM
IX1
2
5
COM
SP1
5
LSR
SP1
3
COM
1
IX
3
9
SWI
INH
2
TAP
INH
1
TPA
INH
2
PULA
INH
2
PSHA
INH
1
2
CPX
2
IMM
2
2
CPX
3
EXT
4
CPX
3
IX2
4
CPX
4
SP2
5
CPX
2
IX1
3
3
CPX
1
IX
2
4
5
BRSET2
3
DIR
5
BSET2
2
DIR
4
2
LSR
2
DIR
4
LSRA
1
INH
3
LSRX
1
INH
4
4
LSR
IX1
3
CPHX
IMM
4
ROR
IX1
4
ASR
IX1
4
LSL
IX1
4
ROL
IX1
4
DEC
IX1
5
DBNZ
IX1
4
INC
IX1
3
TST
IX1
4
MOV
IMD
3
CLR
IX1
2
3
LSR
1
IX
4
1
1
AND
IMM
2
BIT
IMM
2
LDA
IMM
2
AIS
IMM
2
EOR
IMM
2
ADC
IMM
2
ORA
IMM
2
ADD
IMM
2
2
AND
3
EXT
4
BIT
EXT
4
LDA
EXT
4
STA
EXT
4
EOR
EXT
4
ADC
EXT
4
ORA
EXT
4
ADD
EXT
3
JMP
EXT
5
JSR
EXT
4
LDX
EXT
4
STX
EXT
AND
3
IX2
4
AND
4
SP2
5
BIT
SP2
5
LDA
SP2
5
STA
SP2
5
EOR
SP2
5
ADC
SP2
5
ORA
SP2
5
ADD
SP2
AND
IX1
3
BIT
IX1
3
LDA
IX1
3
STA
IX1
3
EOR
IX1
3
ADC
IX1
3
ORA
IX1
3
ADD
IX1
3
JMP
IX1
5
JSR
IX1
3
LDX
IX1
3
STX
IX1
2
3
AND
1
IX
2
5
BRCLR2
3
DIR
BCLR2
2
DIR
4
2
STHX
2
DIR
4
LDHX
3
IMM
1
LDHX
2
DIR
1
3
CPHX
2
DIR
3
1
1
2
2
3
BIT
3
IX2
4
4
2
3
BIT
1
IX
2
6
5
BRSET3
3
DIR
5
BSET3
2
DIR
4
2
ROR
2
DIR
4
RORA
1
INH
1
RORX
1
INH
1
2
5
ROR
SP1
5
ASR
SP1
5
LSL
SP1
5
ROL
SP1
5
DEC
SP1
6
DBNZ
SP1
5
INC
SP1
4
TST
SP1
3
ROR
1
IX
3
1
2
2
3
LDA
3
IX2
4
4
2
3
LDA
1
IX
2
7
BRCLR3
3
DIR
BCLR3
2
DIR
4
2
ASR
2
DIR
4
ASRA
1
INH
1
ASRX
1
INH
1
2
3
ASR
1
IX
3
1
1
TAX
1
INH
1
2
2
3
STA
3
IX2
4
4
2
3
STA
1
IX
2
8
5
BRSET4
3
DIR
5
BSET4
2
DIR
4
REL
3
LSL
2
DIR
4
LSLA
1
INH
1
LSLX
1
INH
1
2
3
LSL
1
IX
3
2
PULX
1
INH
2
CLC
1
INH
1
2
2
3
EOR
3
IX2
4
4
2
3
EOR
1
IX
2
9
BRCLR4
3
DIR
BCLR4
2
DIR
4
BHCS
REL
3
BPL
REL
3
BMI
REL
3
BMC
REL
3
BMS
REL
3
BIL
REL
3
BIH
REL
2
ROL
2
DIR
4
ROLA
1
INH
1
ROLX
1
INH
1
2
3
ROL
1
IX
3
PSHX
1
INH
2
SEC
1
INH
2
CLI
INH
2
SEI
INH
1
RSP
INH
1
NOP
INH
2
2
3
ADC
3
IX2
4
4
2
3
ADC
1
IX
2
A
5
BRSET5
3
DIR
5
BSET5
2
DIR
4
2
DEC
2
DIR
5
DECA
1
INH
3
DECX
1
INH
3
2
3
DEC
1
IX
4
PULH
1
INH
2
1
2
2
3
ORA
3
IX2
4
4
2
3
ORA
1
IX
2
B
BRCLR5
3
DIR
BCLR5
2
DIR
4
2
DBNZ
3
DIR
4
DBNZA
2
INH
1
DBNZX
2
INH
1
3
4
DBNZ
2
IX
3
PSHH
1
INH
1
1
2
2
3
ADD
3
IX2
4
4
2
3
ADD
1
IX
2
C
5
BRSET6
3
DIR
5
BSET6
2
DIR
4
2
INC
2
DIR
3
INCA
1
INH
1
INCX
1
INH
1
2
3
INC
1
IX
2
CLRH
1
INH
1
2
3
JMP
3
IX2
6
2
JMP
1
IX
4
D
BRCLR6
3
DIR
BCLR6
2
DIR
4
2
TST
2
DIR
TSTA
1
INH
5
TSTX
INH
4
MOV
2 DIX+
1
2
3
TST
1
IX
4
1
4
BSR
2
REL
2
LDX
IMM
2
AIX
IMM
2
3
JSR
3
IX2
4
2
JSR
1
IX
2
E
5
BRSET7
3
DIR
5
BSET7
2
DIR
4
2
MOV
3
DD
1
3
MOV
2 IX+D
1
STOP
1
INH
1
*
2
2
3
LDX
3
IX2
4
5
LDX
4
SP2
5
2
4
LDX
SP1
4
STX
SP1
3
LDX
1
IX
2
F
BRCLR7
3
DIR
BCLR7
2
DIR
2
3
CLR
2
DIR
CLRA
1
INH
1
CLRX
1
INH
2
4
CLR
SP1
3
2
CLR
1
IX
WAIT
1
INH
1
TXA
1
INH
2
2
3
STX
3
IX2
STX
4
SP2
2
3
STX
1
IX
INH Inherent
IMM Immediate
DIR Direct
EXT Extended
DD
Direct-Direct
IX+D Indexed-Direct
*
Pre-byte for stack pointer indexed instructions
REL Relative
IX
Indexed, No Offset
IX1
Indexed, 8-Bit Offset
IX2
Indexed, 16-Bit Offset
IMD Immediate-Direct
DIX+ Direct-Indexed
SP1 Stack Pointer, 8-Bit Offset
SP2 Stack Pointer, 16-Bit Offset
IX+
Indexed, No Offset with
Post Increment
IX1+ Indexed, 1-Byte Offset with
Post Increment
0
High Byte of Opcode in Hexadecimal
Low Byte of Opcode in Hexadecimal
0
5
BRSET0
3
DIR
Cycles
Opcode Mnemonic
Number of Bytes / Addressing Mode
Table 10 Opcode Map
MSB
LSB
MSB
LSB
1