Chapter 10 Appendices
145
Instruction Set
MN101C00 SERIES INSTRUCTION SET
Group Mnemonic Operation Affected Flag
VFNF CF ZF
Code
SizeCycle
Re-
peat Machine Code
Notes
Page
1234567891011Expand
TBNZ (abs8)bp,label
if(mem8(abs8)bp=1),PC+8+d11(label)+H→PC
008
126
127
127
129
129
130
130
131
6/7 0001 1bp. <abs 8..> <d11 .... ...H0011
if(mem8(abs8)bp=0),PC+8→PC
TBNZ (io8)bp,label
if(mem8(io)bp=1),PC+8+d11(label)+H→PC
0086/7 0101 1bp. <io8 ...> <d11 .... ...H0011
if(mem8(io)bp=0),PC+8→PC
TBNZ (abs16)bp,
label
∗2
∗2
∗2
if(mem8(abs16)bp=1),PC+10+d11(label)+H→PC
0010 7/8 1111 1bp. <abs 16.. .... ...> <d11 .... ...H0011
if(mem8(abs16)bp=0),PC+10→PC
JSR (An)
JSR
SP-3→SP,(PC+3).bp7~0→mem8(SP)
––––37 0001 00A10010
(PC+3).bp15
~
8→mem8(SP+1)
(PC+3).H→mem8(SP+2).bp7,
0→mem8(SP+2).bp6~2,
(PC+3).bp17~16→mem8(SP+2).bp1~0
0→PC.bp17~16
An→PC.bp15~0,0→PC.H
JSR label
SP-3→SP,(PC+5).bp7~0→mem8(SP)
––––56 0001 000H <d12 .... ...>
(PC+5).bp15
~
8→mem8(SP+1)
(PC+5).H→mem8(SP+2).bp7,
0→mem8(SP+2).bp6~2,
(PC+5).bp17~16→mem8(SP+2).bp1~0
PC+5+d12(label)+H→PC
JSR label
SP-3→SP,(PC+6).bp7~0→mem8(SP)
––––67 0001 001H <d16 .... .... ...>
(PC+6).bp15
~
8→mem8(SP+1)
(PC+6).H→mem8(SP+2).bp7,
0→mem8(SP+2).bp6~2,
(PC+6).bp17~16→mem8(SP+2).bp1~0
PC+6+d16(label)+H→PC
JSR label
∗3
∗4
∗5
SP-3→SP,(PC+7).bp7~0→mem8(SP)
––––78 1001 1aaH <abs 18.b p15 0..>0011
(PC+7).bp15
~
8→mem8(SP+1)
(PC+7).H→mem8(SP+2).bp7,
0→mem8(SP+2).bp6~2,
(PC+7).bp17~16→mem8(SP+2).bp1~0
abs18(label)+H→PC
JSRV (tbl4)
SP-3→SP,(PC+3).bp7~0→mem8(SP)
––––39 1111 1110 <t4>
(PC+3).bp15~8→mem8(SP+1)
(PC+3).H→mem8(SP+2).bp7
(PC+3).bp17~16→mem8(SP+2).bp1~0
mem8(x'004080+tbl4<<2)→PC.bp7~0
mem8(x'004080+tbl4<<2+1)→PC.bp15
~
8
mem8(x'004080+tbl4<<2+2).bp7→PC.H
mem8(x'004080+tbl4<<2+2).bp1~0→
PC.bp17
~
16
∗2 d11 sign extended∗4 d16 sign extended∗5 aa=abs18.17 16123
123
124
124
125
125
126
TBZ (abs16)bp,label
TBZ
if(mem8(abs16)bp=0),PC+9+d7(label)+H→PC
0097/8 1110 0bp. <abs 16.. .... ...> <d7. ...H0011
if(mem8(abs16)bp=1),PC+9→PC
TBZ (io8)bp,label
if(mem8(IOTOP+io8)bp=0),PC+8+d11(label)+H→PC
0086/7 0100 1bp. <io8 ...> <d11 .... ...H0011
if(mem8(IOTOP+io8)bp=1),PC+8→PC
TBZ (abs16)bp,label
if(mem8(abs16)bp=0),PC+10+d11(label)+H→PC
0010 7/8 1110 1bp. <abs 16.. .... ...> <d11 .... ...H0011
if(mem8(abs16)bp=1),PC+10→PC
TBNZ (abs8)bp,label
TBNZ
if(mem8(abs8)bp=1),PC+7+d7(label)+H
→
PC
0076/7 0001 0bp. <abs 8..> <d7. ...H0011
if(mem8(abs8)bp=0),PC+7→PC
TBNZ (io8)bp,label
if(mem8(io)bp=1),PC+7+d7(label)+H→PC
0076/7 0101 0bp. <io8 ...> <d7. ...H0011
if(mem8(io)bp=0),PC+7→PC
TBNZ (abs16)bp,label
∗1
∗2
∗2
∗1
∗1
∗1
if(mem8(abs16)bp=1),PC+9+d7(label)+H→PC
0097/8 1111 0bp. <abs 16.. .... ...> <d7. ...H0011
if(mem8(abs16)bp=0),PC+9→PC
JMP
(An)
JMP
0→PC.17~16,An PC.15~0,0→PC.H
––––34 0001 00A00010
JMP
label
abs18(label)+H→PC ––––75 1001 0aaH <abs 18.b p15 0..>0011
128
128
132
NOP
NOP PC+2→PC ––––21 0000 0000
∗1 d7 sign extendedTBZ (io8)bp,label
if(mem8(IOTOP+io8)bp=0),PC+7+d7(label)+H→PC
0076/7 0100 0bp. <io8 ...> <d7. ...H0011
if(mem8(IOTOP+io8)bp=1),PC+7→PC
∗1
∗5
0→mem8(SP+2).bp6~2,
∗3 d12 sign extendedNote: "Page" refers to the corresponding page in the Instruction Manual.