• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
6static 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
368