Rizin
unix-like reverse engineering framework and cli tools
insn_props.inc
Go to the documentation of this file.
1 
2 // These temporary defines keep the following table short and handy.
3 #define NOG M680X_GRP_INVALID
4 #define NOR M680X_REG_INVALID
5 
6 static const insn_props g_insn_props[] = {
7  { NOG, uuuu, NOR, NOR, false, false }, // INVLD
8  { NOG, rmmm, M680X_REG_B, M680X_REG_A, true, false }, // ABA
9  { NOG, rmmm, M680X_REG_B, M680X_REG_X, false, false }, // ABX
10  { NOG, rmmm, M680X_REG_B, M680X_REG_Y, false, false }, // ABY
11  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ADC
12  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ADCA
13  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ADCB
14  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ADCD
15  { NOG, rmmm, NOR, NOR, true, false }, // ADCR
16  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ADD
17  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ADDA
18  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ADDB
19  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ADDD
20  { NOG, mrrr, M680X_REG_E, NOR, true, false }, // ADDE
21  { NOG, mrrr, M680X_REG_F, NOR, true, false }, // ADDF
22  { NOG, rmmm, NOR, NOR, true, false }, // ADDR
23  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // ADDW
24  { NOG, rmmm, NOR, NOR, true, false }, // AIM
25  { NOG, mrrr, M680X_REG_S, NOR, false, false }, // AIS
26  { NOG, mrrr, M680X_REG_HX, NOR, false, false }, // AIX
27  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // AND
28  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ANDA
29  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ANDB
30  { NOG, mrrr, M680X_REG_CC, NOR, true, false }, // ANDCC
31  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ANDD
32  { NOG, rmmm, NOR, NOR, true, false }, // ANDR
33  { NOG, mrrr, NOR, NOR, true, false }, // ASL
34  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ASLA
35  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ASLB
36  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ASLD
37  { NOG, mrrr, NOR, NOR, true, false }, // ASR
38  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ASRA
39  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ASRB
40  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ASRD
41  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // ASRX
42  { NOG, mrrr, NOR, NOR, false, false }, // BAND
43  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BCC
44  { NOG, mrrr, NOR, NOR, true, false }, // BCLR
45  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BCS
46  { NOG, mrrr, NOR, NOR, false, false }, // BEOR
47  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BEQ
48  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BGE
49  { NOG, uuuu, NOR, NOR, false, false }, // BGND
50  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BGT
51  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BHCC
52  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BHCS
53  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BHI
54  { NOG, mrrr, NOR, NOR, false, false }, // BIAND
55  { NOG, mrrr, NOR, NOR, false, false }, // BIEOR
56  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BIH
57  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BIL
58  { NOG, mrrr, NOR, NOR, false, false }, // BIOR
59  { NOG, rrrr, M680X_REG_A, NOR, true, false }, // BIT
60  { NOG, rrrr, M680X_REG_A, NOR, true, false }, // BITA
61  { NOG, rrrr, M680X_REG_B, NOR, true, false }, // BITB
62  { NOG, rrrr, M680X_REG_D, NOR, true, false }, // BITD
63  { NOG, rrrr, M680X_REG_MD, NOR, true, false }, // BITMD
64  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BLE
65  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BLS
66  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BLT
67  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BMC
68  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BMI
69  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BMS
70  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BNE
71  { NOG, mrrr, NOR, NOR, false, false }, // BOR
72  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BPL
73  { M680X_GRP_JUMP, rruu, NOR, NOR, false, false }, // BRCLR
74  { M680X_GRP_JUMP, rruu, NOR, NOR, false, false }, // BRSET
75  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BRA
76  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BRN never branches
77  { NOG, mrrr, NOR, NOR, true, false }, // BSET
78  { M680X_GRP_CALL, uuuu, NOR, NOR, false, true }, // BSR
79  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BVC
80  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // BVS
81  { M680X_GRP_CALL, uuuu, NOR, NOR, false, true }, // CALL
82  { NOG, rrrr, M680X_REG_B, M680X_REG_A, true, false }, // CBA
83  { M680X_GRP_JUMP, rruu, M680X_REG_A, NOR, false, false }, // CBEQ
84  { M680X_GRP_JUMP, rruu, M680X_REG_A, NOR, false, false }, // CBEQA
85  { M680X_GRP_JUMP, rruu, M680X_REG_X, NOR, false, false }, // CBEQX
86  { NOG, uuuu, NOR, NOR, true, false }, // CLC
87  { NOG, uuuu, NOR, NOR, true, false }, // CLI
88  { NOG, wrrr, NOR, NOR, true, false }, // CLR
89  { NOG, wrrr, M680X_REG_A, NOR, true, false }, // CLRA
90  { NOG, wrrr, M680X_REG_B, NOR, true, false }, // CLRB
91  { NOG, wrrr, M680X_REG_D, NOR, true, false }, // CLRD
92  { NOG, wrrr, M680X_REG_E, NOR, true, false }, // CLRE
93  { NOG, wrrr, M680X_REG_F, NOR, true, false }, // CLRF
94  { NOG, wrrr, M680X_REG_H, NOR, true, false }, // CLRH
95  { NOG, wrrr, M680X_REG_W, NOR, true, false }, // CLRW
96  { NOG, wrrr, M680X_REG_X, NOR, true, false }, // CLRX
97  { NOG, uuuu, NOR, NOR, true, false }, // CLV
98  { NOG, rrrr, M680X_REG_A, NOR, true, false }, // CMP
99  { NOG, rrrr, M680X_REG_A, NOR, true, false }, // CMPA
100  { NOG, rrrr, M680X_REG_B, NOR, true, false }, // CMPB
101  { NOG, rrrr, M680X_REG_D, NOR, true, false }, // CMPD
102  { NOG, rrrr, M680X_REG_E, NOR, true, false }, // CMPE
103  { NOG, rrrr, M680X_REG_F, NOR, true, false }, // CMPF
104  { NOG, rrrr, NOR, NOR, true, false }, // CMPR
105  { NOG, rrrr, M680X_REG_S, NOR, true, false }, // CMPS
106  { NOG, rrrr, M680X_REG_U, NOR, true, false }, // CMPU
107  { NOG, rrrr, M680X_REG_W, NOR, true, false }, // CMPW
108  { NOG, rrrr, M680X_REG_X, NOR, true, false }, // CMPX
109  { NOG, rrrr, M680X_REG_Y, NOR, true, false }, // CMPY
110  { NOG, mrrr, NOR, NOR, true, false }, // COM
111  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // COMA
112  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // COMB
113  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // COMD
114  { NOG, mrrr, M680X_REG_E, NOR, true, false }, // COME
115  { NOG, mrrr, M680X_REG_F, NOR, true, false }, // COMF
116  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // COMW
117  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // COMX
118  { NOG, rrrr, M680X_REG_D, NOR, true, false }, // CPD
119  { NOG, rrrr, M680X_REG_HX, NOR, true, false }, // CPHX
120  { NOG, rrrr, M680X_REG_S, NOR, true, false }, // CPS
121  { NOG, rrrr, M680X_REG_X, NOR, true, false }, // CPX
122  { NOG, rrrr, M680X_REG_Y, NOR, true, false }, // CPY
123  { NOG, mrrr, NOR, NOR, true, true }, // CWAI
124  { NOG, mrrr, NOR, NOR, true, true }, // DAA
125  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // DBEQ
126  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // DBNE
127  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // DBNZ
128  { M680X_GRP_JUMP, muuu, M680X_REG_A, NOR, false, false }, // DBNZA
129  { M680X_GRP_JUMP, muuu, M680X_REG_X, NOR, false, false }, // DBNZX
130  { NOG, mrrr, NOR, NOR, true, false }, // DEC
131  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // DECA
132  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // DECB
133  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // DECD
134  { NOG, mrrr, M680X_REG_E, NOR, true, false }, // DECE
135  { NOG, mrrr, M680X_REG_F, NOR, true, false }, // DECF
136  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // DECW
137  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // DECX
138  { NOG, mrrr, M680X_REG_S, NOR, false, false }, // DES
139  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // DEX
140  { NOG, mrrr, M680X_REG_Y, NOR, true, false }, // DEY
141  { NOG, mmrr, NOR, NOR, true, true }, // DIV
142  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // DIVD
143  { NOG, mrrr, M680X_REG_Q, NOR, true, false }, // DIVQ
144  { NOG, mmrr, NOR, NOR, true, true }, // EDIV
145  { NOG, mmrr, NOR, NOR, true, true }, // EDIVS
146  { NOG, rmmm, NOR, NOR, true, false }, // EIM
147  { NOG, mrrr, NOR, NOR, true, true }, // EMACS
148  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // EMAXD
149  { NOG, mrrr, NOR, NOR, true, true }, // EMAXM
150  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // EMIND
151  { NOG, mrrr, NOR, NOR, true, true }, // EMINM
152  { NOG, mmrr, NOR, NOR, true, true }, // EMUL
153  { NOG, mmrr, NOR, NOR, true, true }, // EMULS
154  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // EOR
155  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // EORA
156  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // EORB
157  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // EORD
158  { NOG, rmmm, NOR, NOR, true, false }, // EORR
159  { NOG, rmmm, NOR, NOR, true, true }, // ETBL
160  { NOG, mmmm, NOR, NOR, false, false }, // EXG
161  { NOG, mmmm, NOR, NOR, true, true }, // FDIV
162  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // IBEQ
163  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // IBNE
164  { NOG, mmmm, NOR, NOR, true, true }, // IDIV
165  { NOG, mmmm, NOR, NOR, true, true }, // IDIVS
166  { NOG, uuuu, NOR, NOR, false, false }, // ILLGL
167  { NOG, mrrr, NOR, NOR, true, false }, // INC
168  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // INCA
169  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // INCB
170  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // INCD
171  { NOG, mrrr, M680X_REG_E, NOR, true, false }, // INCE
172  { NOG, mrrr, M680X_REG_F, NOR, true, false }, // INCF
173  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // INCW
174  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // INCX
175  { NOG, mrrr, M680X_REG_S, NOR, false, false }, // INS
176  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // INX
177  { NOG, mrrr, M680X_REG_Y, NOR, true, false }, // INY
178  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // JMP
179  { M680X_GRP_CALL, uuuu, NOR, NOR, false, true }, // JSR
180  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBCC
181  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBCS
182  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBEQ
183  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBGE
184  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBGT
185  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBHI
186  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBLE
187  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBLS
188  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBLT
189  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBMI
190  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBNE
191  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBPL
192  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBRA
193  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBRN never branches
194  { M680X_GRP_CALL, uuuu, NOR, NOR, false, true }, // LBSR
195  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBVC
196  { M680X_GRP_JUMP, uuuu, NOR, NOR, false, false }, // LBVS
197  { NOG, wrrr, M680X_REG_A, NOR, true, false }, // LDA
198  { NOG, wrrr, M680X_REG_A, NOR, true, false }, // LDAA
199  { NOG, wrrr, M680X_REG_B, NOR, true, false }, // LDAB
200  { NOG, wrrr, M680X_REG_B, NOR, true, false }, // LDB
201  { NOG, mrrr, NOR, NOR, false, false }, // LDBT
202  { NOG, wrrr, M680X_REG_D, NOR, true, false }, // LDD
203  { NOG, wrrr, M680X_REG_E, NOR, true, false }, // LDE
204  { NOG, wrrr, M680X_REG_F, NOR, true, false }, // LDF
205  { NOG, wrrr, M680X_REG_HX, NOR, true, false }, // LDHX
206  { NOG, mrrr, M680X_REG_MD, NOR, false, false }, // LDMD
207  { NOG, wrrr, M680X_REG_Q, NOR, true, false }, // LDQ
208  { NOG, wrrr, M680X_REG_S, NOR, true, false }, // LDS
209  { NOG, wrrr, M680X_REG_U, NOR, true, false }, // LDU
210  { NOG, wrrr, M680X_REG_W, NOR, true, false }, // LDW
211  { NOG, wrrr, M680X_REG_X, NOR, true, false }, // LDX
212  { NOG, wrrr, M680X_REG_Y, NOR, true, false }, // LDY
213  { NOG, wrrr, M680X_REG_S, NOR, false, false }, // LEAS
214  { NOG, wrrr, M680X_REG_U, NOR, false, false }, // LEAU
215  { NOG, wrrr, M680X_REG_X, NOR, false, false }, // LEAX
216  { NOG, wrrr, M680X_REG_Y, NOR, false, false }, // LEAY
217  { NOG, mrrr, NOR, NOR, true, false }, // LSL
218  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // LSLA
219  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // LSLB
220  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // LSLD
221  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // LSLX
222  { NOG, mrrr, NOR, NOR, true, false }, // LSR
223  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // LSRA
224  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // LSRB
225  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // LSRD
226  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // LSRW
227  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // LSRX
228  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // MAXA
229  { NOG, mrrr, NOR, NOR, true, true }, // MAXM
230  { NOG, mmrr, NOR, NOR, true, true }, // MEM
231  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // MINA
232  { NOG, mrrr, NOR, NOR, true, true }, // MINM
233  { NOG, rwww, NOR, NOR, true, false }, // MOV
234  { NOG, rwww, NOR, NOR, false, false }, // MOVB
235  { NOG, rwww, NOR, NOR, false, false }, // MOVW
236  { NOG, mmmm, NOR, NOR, true, true }, // MUL
237  { NOG, mwrr, M680X_REG_D, NOR, true, true }, // MULD
238  { NOG, mrrr, NOR, NOR, true, false }, // NEG
239  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // NEGA
240  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // NEGB
241  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // NEGD
242  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // NEGX
243  { NOG, uuuu, NOR, NOR, false, false }, // NOP
244  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // NSA
245  { NOG, rmmm, NOR, NOR, true, false }, // OIM
246  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ORA
247  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ORAA
248  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ORAB
249  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ORB
250  { NOG, mrrr, M680X_REG_CC, NOR, true, false }, // ORCC
251  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ORD
252  { NOG, rmmm, NOR, NOR, true, false }, // ORR
253  { NOG, rmmm, M680X_REG_A, NOR, false, true }, // PSHA
254  { NOG, rmmm, M680X_REG_B, NOR, false, true }, // PSHB
255  { NOG, rmmm, M680X_REG_CC, NOR, false, true }, // PSHC
256  { NOG, rmmm, M680X_REG_D, NOR, false, true }, // PSHD
257  { NOG, rmmm, M680X_REG_H, NOR, false, true }, // PSHH
258  { NOG, mrrr, M680X_REG_S, NOR, false, false }, // PSHS
259  { NOG, mrrr, M680X_REG_S, M680X_REG_W, false, false }, // PSHSW
260  { NOG, mrrr, M680X_REG_U, NOR, false, false }, // PSHU
261  { NOG, mrrr, M680X_REG_U, M680X_REG_W, false, false }, // PSHUW
262  { NOG, rmmm, M680X_REG_X, NOR, false, true }, // PSHX
263  { NOG, rmmm, M680X_REG_Y, NOR, false, true }, // PSHY
264  { NOG, wmmm, M680X_REG_A, NOR, false, true }, // PULA
265  { NOG, wmmm, M680X_REG_B, NOR, false, true }, // PULB
266  { NOG, wmmm, M680X_REG_CC, NOR, false, true }, // PULC
267  { NOG, wmmm, M680X_REG_D, NOR, false, true }, // PULD
268  { NOG, wmmm, M680X_REG_H, NOR, false, true }, // PULH
269  { NOG, mwww, M680X_REG_S, NOR, false, false }, // PULS
270  { NOG, mwww, M680X_REG_S, M680X_REG_W, false, false }, // PULSW
271  { NOG, mwww, M680X_REG_U, NOR, false, false }, // PULU
272  { NOG, mwww, M680X_REG_U, M680X_REG_W, false, false }, // PULUW
273  { NOG, wmmm, M680X_REG_X, NOR, false, true }, // PULX
274  { NOG, wmmm, M680X_REG_Y, NOR, false, true }, // PULY
275  { NOG, mmrr, NOR, NOR, true, true }, // REV
276  { NOG, mmmm, NOR, NOR, true, true }, // REVW
277  { NOG, mrrr, NOR, NOR, true, false }, // ROL
278  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // ROLA
279  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // ROLB
280  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // ROLD
281  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // ROLW
282  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // ROLX
283  { NOG, mrrr, NOR, NOR, true, false }, // ROR
284  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // RORA
285  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // RORB
286  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // RORD
287  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // RORW
288  { NOG, mrrr, M680X_REG_X, NOR, true, false }, // RORX
289  { NOG, wrrr, M680X_REG_S, NOR, false, false }, // RSP
290  { M680X_GRP_RET, mwww, NOR, NOR, false, true }, // RTC
291  { M680X_GRP_IRET, mwww, NOR, NOR, false, true }, // RTI
292  { M680X_GRP_RET, mwww, NOR, NOR, false, true }, // RTS
293  { NOG, rmmm, M680X_REG_B, M680X_REG_A, true, false }, // SBA
294  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // SBC
295  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // SBCA
296  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // SBCB
297  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // SBCD
298  { NOG, rmmm, NOR, NOR, true, false }, // SBCR
299  { NOG, uuuu, NOR, NOR, true, false }, // SEC
300  { NOG, uuuu, NOR, NOR, true, false }, // SEI
301  { NOG, uuuu, NOR, NOR, true, false }, // SEV
302  { NOG, wrrr, NOR, NOR, true, true }, // SEX
303  { NOG, rwww, M680X_REG_W, NOR, true, true }, // SEXW
304  { NOG, uuuu, NOR, NOR, false, false }, // SLP
305  { NOG, rwww, M680X_REG_A, NOR, true, false }, // STA
306  { NOG, rwww, M680X_REG_A, NOR, true, false }, // STAA
307  { NOG, rwww, M680X_REG_B, NOR, true, false }, // STAB
308  { NOG, rwww, M680X_REG_B, NOR, true, false }, // STB
309  { NOG, rrrm, NOR, NOR, false, false }, // STBT
310  { NOG, rwww, M680X_REG_D, NOR, true, false }, // STD
311  { NOG, rwww, M680X_REG_E, NOR, true, false }, // STE
312  { NOG, rwww, M680X_REG_F, NOR, true, false }, // STF
313  { NOG, uuuu, NOR, NOR, false, false }, // STOP
314  { NOG, rwww, M680X_REG_HX, NOR, true, false }, // STHX
315  { NOG, rwww, M680X_REG_Q, NOR, true, false }, // STQ
316  { NOG, rwww, M680X_REG_S, NOR, true, false }, // STS
317  { NOG, rwww, M680X_REG_U, NOR, true, false }, // STU
318  { NOG, rwww, M680X_REG_W, NOR, true, false }, // STW
319  { NOG, rwww, M680X_REG_X, NOR, true, false }, // STX
320  { NOG, rwww, M680X_REG_Y, NOR, true, false }, // STY
321  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // SUB
322  { NOG, mrrr, M680X_REG_A, NOR, true, false }, // SUBA
323  { NOG, mrrr, M680X_REG_B, NOR, true, false }, // SUBB
324  { NOG, mrrr, M680X_REG_D, NOR, true, false }, // SUBD
325  { NOG, mrrr, M680X_REG_E, NOR, true, false }, // SUBE
326  { NOG, mrrr, M680X_REG_F, NOR, true, false }, // SUBF
327  { NOG, rmmm, NOR, NOR, true, false }, // SUBR
328  { NOG, mrrr, M680X_REG_W, NOR, true, false }, // SUBW
329  { M680X_GRP_INT, mmrr, NOR, NOR, true, true }, // SWI
330  { M680X_GRP_INT, mmrr, NOR, NOR, true, true }, // SWI2
331  { M680X_GRP_INT, mmrr, NOR, NOR, true, true }, // SWI3
332  { NOG, uuuu, NOR, NOR, false, false }, // SYNC
333  { NOG, rwww, M680X_REG_A, M680X_REG_B, true, false }, // TAB
334  { NOG, rwww, M680X_REG_A, M680X_REG_CC, false, false }, // TAP
335  { NOG, rwww, M680X_REG_A, M680X_REG_X, false, false }, // TAX
336  { NOG, rwww, M680X_REG_B, M680X_REG_A, true, false }, // TBA
337  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // TBEQ
338  { NOG, rmmm, NOR, NOR, true, true }, // TBL
339  { M680X_GRP_JUMP, muuu, NOR, NOR, false, false }, // TBNE
340  { NOG, uuuu, NOR, NOR, false, false }, // TEST
341  { NOG, rwww, NOR, NOR, false, false }, // TFM
342  { NOG, rwww, NOR, NOR, false, false }, // TFR
343  { NOG, rrrr, NOR, NOR, true, false }, // TIM
344  { NOG, rwww, M680X_REG_CC, M680X_REG_A, false, false }, // TPA
345  { NOG, rrrr, NOR, NOR, true, false }, // TST
346  { NOG, rrrr, M680X_REG_A, NOR, true, false }, // TSTA
347  { NOG, rrrr, M680X_REG_B, NOR, true, false }, // TSTB
348  { NOG, rrrr, M680X_REG_D, NOR, true, false }, // TSTD
349  { NOG, rrrr, M680X_REG_E, NOR, true, false }, // TSTE
350  { NOG, rrrr, M680X_REG_F, NOR, true, false }, // TSTF
351  { NOG, rrrr, M680X_REG_W, NOR, true, false }, // TSTW
352  { NOG, rrrr, M680X_REG_X, NOR, true, false }, // TSTX
353  { NOG, rwww, M680X_REG_S, M680X_REG_HX, false, false }, // TSX
354  { NOG, rwww, M680X_REG_S, M680X_REG_Y, false, false }, // TSY
355  { NOG, rwww, M680X_REG_X, M680X_REG_A, false, false }, // TXA
356  { NOG, rwww, M680X_REG_HX, M680X_REG_S, false, false }, // TXS
357  { NOG, rwww, M680X_REG_Y, M680X_REG_S, false, false }, // TYS
358  { NOG, mrrr, NOR, NOR, true, true }, // WAI
359  { NOG, uuuu, NOR, NOR, true, false }, // WAIT
360  { NOG, uuuu, NOR, NOR, true, true }, // WAV
361  { NOG, uuuu, NOR, NOR, true, true }, // WAVR
362  { NOG, mmmm, M680X_REG_D, M680X_REG_X, false, false }, // XGDX
363  { NOG, mmmm, M680X_REG_D, M680X_REG_Y, false, false }, // XGDY
364 };
365 #undef NOR
366 #undef NOG
367 
@ M680X_REG_W
HD6309.
Definition: m680x.h:30
@ M680X_REG_B
M6800/1/2/3/9, HD6301/9.
Definition: m680x.h:24
@ M680X_REG_MD
M6309.
Definition: m680x.h:34
@ M680X_REG_F
HD6309.
Definition: m680x.h:26
@ M680X_REG_H
M6808.
Definition: m680x.h:37
@ M680X_REG_CC
M6800/1/2/3/9, M6301/9.
Definition: m680x.h:32
@ M680X_REG_X
M6800/1/2/3/9, M6301/9.
Definition: m680x.h:38
@ M680X_REG_E
HD6309.
Definition: m680x.h:25
@ M680X_REG_Q
M6309.
Definition: m680x.h:44
@ M680X_REG_HX
M6808.
Definition: m680x.h:36
@ M680X_REG_S
M6809/M6309.
Definition: m680x.h:40
@ M680X_REG_A
M6800/1/2/3/9, HD6301/9.
Definition: m680x.h:23
@ M680X_REG_Y
M6809/M6309.
Definition: m680x.h:39
@ M680X_REG_D
M6801/3/9, HD6301/9.
Definition: m680x.h:29
@ M680X_REG_U
M6809/M6309.
Definition: m680x.h:41
@ M680X_GRP_IRET
= CS_GRP_IRET
Definition: m680x.h:145
@ M680X_GRP_RET
= CS_GRP_RET
Definition: m680x.h:141
@ M680X_GRP_INT
= CS_GRP_INT
Definition: m680x.h:143
@ M680X_GRP_JUMP
= CS_GRP_INVALID
Definition: m680x.h:137
@ M680X_GRP_CALL
= CS_GRP_CALL
Definition: m680x.h:139
#define NOR
Definition: rsp_idec.c:214