Imported Upstream version 2.9.0
[debian/cc1111] / sim / ucsim / hc08.src / glob.cc
1 /*
2  * Simulator of microcontrollers (glob.cc)
3  *
4  * Copyright (C) 1999,99 Drotos Daniel, Talker Bt.
5  * 
6  * To contact author send email to drdani@mazsola.iit.uni-miskolc.hu
7  *
8  */
9
10 /* This file is part of microcontroller simulator: ucsim.
11
12 UCSIM is free software; you can redistribute it and/or modify
13 it under the terms of the GNU General Public License as published by
14 the Free Software Foundation; either version 2 of the License, or
15 (at your option) any later version.
16
17 UCSIM is distributed in the hope that it will be useful,
18 but WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 GNU General Public License for more details.
21
22 You should have received a copy of the GNU General Public License
23 along with UCSIM; see the file COPYING.  If not, write to the Free
24 Software Foundation, 59 Temple Place - Suite 330, Boston, MA
25 02111-1307, USA. */
26 /*@1@*/
27
28 #include <stdio.h>
29
30 #include "stypes.h"
31
32
33 /*
34 %d - direct addressing
35 %x - extended addressing
36 %p - pc relative addressing
37 %b - unsigned byte immediate addressing
38 %w - unsigned word immediate addressing
39 %s - signed byte immediate
40 %1 - unsigned byte index offset
41 %2 - unsigned word index offset
42 */
43
44 /*  uint  code, mask;  char  branch;  uchar length;  char  *mnemonic; */
45 struct dis_entry disass_hc08[]= {
46   { 0x0000, 0x00ff, 'R', 3, "brset #0,%d,%p" },
47   { 0x0001, 0x00ff, 'R', 3, "brclr #0,%d,%p" },
48   { 0x0002, 0x00ff, 'R', 3, "brset #1,%d,%p" },
49   { 0x0003, 0x00ff, 'R', 3, "brclr #1,%d,%p" },
50   { 0x0004, 0x00ff, 'R', 3, "brset #2,%d,%p" },
51   { 0x0005, 0x00ff, 'R', 3, "brclr #2,%d,%p" },
52   { 0x0006, 0x00ff, 'R', 3, "brset #3,%d,%p" },
53   { 0x0007, 0x00ff, 'R', 3, "brclr #3,%d,%p" },
54   { 0x0008, 0x00ff, 'R', 3, "brset #4,%d,%p" },
55   { 0x0009, 0x00ff, 'R', 3, "brclr #4,%d,%p" },
56   { 0x000a, 0x00ff, 'R', 3, "brset #5,%d,%p" },
57   { 0x000b, 0x00ff, 'R', 3, "brclr #5,%d,%p" },
58   { 0x000c, 0x00ff, 'R', 3, "brset #6,%d,%p" },
59   { 0x000d, 0x00ff, 'R', 3, "brclr #6,%d,%p" },
60   { 0x000e, 0x00ff, 'R', 3, "brset #7,%d,%p" },
61   { 0x000f, 0x00ff, 'R', 3, "brclr #7,%d,%p" },
62
63   { 0x0010, 0x00ff, ' ', 2, "bset #0,%d" },
64   { 0x0011, 0x00ff, ' ', 2, "bclr #0,%d" },
65   { 0x0012, 0x00ff, ' ', 2, "bset #1,%d" },
66   { 0x0013, 0x00ff, ' ', 2, "bclr #1,%d" },
67   { 0x0014, 0x00ff, ' ', 2, "bset #2,%d" },
68   { 0x0015, 0x00ff, ' ', 2, "bclr #2,%d" },
69   { 0x0016, 0x00ff, ' ', 2, "bset #3,%d" },
70   { 0x0017, 0x00ff, ' ', 2, "bclr #3,%d" },
71   { 0x0018, 0x00ff, ' ', 2, "bset #4,%d" },
72   { 0x0019, 0x00ff, ' ', 2, "bclr #4,%d" },
73   { 0x001a, 0x00ff, ' ', 2, "bset #5,%d" },
74   { 0x001b, 0x00ff, ' ', 2, "bclr #5,%d" },
75   { 0x001c, 0x00ff, ' ', 2, "bset #6,%d" },
76   { 0x001d, 0x00ff, ' ', 2, "bclr #6,%d" },
77   { 0x001e, 0x00ff, ' ', 2, "bset #7,%d" },
78   { 0x001f, 0x00ff, ' ', 2, "bclr #7,%d" },
79
80   { 0x0020, 0x00ff, 'R', 2, "bra %p" },
81   { 0x0021, 0x00ff, 'R', 2, "brn %p" },
82   { 0x0022, 0x00ff, 'R', 2, "bhi %p" },
83   { 0x0023, 0x00ff, 'R', 2, "bls %p" },
84   { 0x0024, 0x00ff, 'R', 2, "bcc %p" },
85   { 0x0025, 0x00ff, 'R', 2, "bcs %p" },
86   { 0x0026, 0x00ff, 'R', 2, "bne %p" },
87   { 0x0027, 0x00ff, 'R', 2, "beq %p" },
88   { 0x0028, 0x00ff, 'R', 2, "bhcc %p" },
89   { 0x0029, 0x00ff, 'R', 2, "bhcs %p" },
90   { 0x002a, 0x00ff, 'R', 2, "bpl %p" },
91   { 0x002b, 0x00ff, 'R', 2, "bmi %p" },
92   { 0x002c, 0x00ff, 'R', 2, "bmc %p" },
93   { 0x002d, 0x00ff, 'R', 2, "bms %p" },
94   { 0x002e, 0x00ff, 'R', 2, "bil %p" },
95   { 0x002f, 0x00ff, 'R', 2, "bih %p" },
96
97   { 0x0030, 0x00ff, ' ', 2, "neg %d" },
98   { 0x0031, 0x00ff, 'R', 3, "cbeq %d,%p" },
99   { 0x0033, 0x00ff, ' ', 2, "com %d" },
100   { 0x0034, 0x00ff, ' ', 2, "lsr %d" },
101   { 0x0035, 0x00ff, ' ', 2, "sthx %d" },
102   { 0x0036, 0x00ff, ' ', 2, "ror %d" },
103   { 0x0037, 0x00ff, ' ', 2, "asr %d" },
104   { 0x0038, 0x00ff, ' ', 2, "lsl %d" },
105   { 0x0039, 0x00ff, ' ', 2, "rol %d" },
106   { 0x003a, 0x00ff, ' ', 2, "dec %d" },
107   { 0x003b, 0x00ff, 'R', 3, "dbnz %d,%d" },
108   { 0x003c, 0x00ff, ' ', 2, "inc %d" },
109   { 0x003d, 0x00ff, ' ', 2, "tst %d" },
110   { 0x003f, 0x00ff, ' ', 2, "clr %d" },
111
112   { 0x0040, 0x00ff, ' ', 1, "nega" },
113   { 0x0041, 0x00ff, 'R', 3, "cbeqa %b,%p" },
114   { 0x0042, 0x00ff, ' ', 1, "mul" },
115   { 0x0043, 0x00ff, ' ', 1, "coma" },
116   { 0x0044, 0x00ff, ' ', 1, "lsra" },
117   { 0x0045, 0x00ff, ' ', 3, "ldhx %w" },
118   { 0x0046, 0x00ff, ' ', 1, "rora" },
119   { 0x0047, 0x00ff, ' ', 1, "asra" },
120   { 0x0048, 0x00ff, ' ', 1, "lsla" },
121   { 0x0049, 0x00ff, ' ', 1, "rola" },
122   { 0x004a, 0x00ff, ' ', 1, "deca" },
123   { 0x004b, 0x00ff, 'R', 2, "dbnza %p" },
124   { 0x004c, 0x00ff, ' ', 1, "inca" },
125   { 0x004d, 0x00ff, ' ', 1, "tsta" },
126   { 0x004e, 0x00ff, ' ', 3, "mov %d,%d" },
127   { 0x004f, 0x00ff, ' ', 1, "clra" },
128
129   { 0x0050, 0x00ff, ' ', 1, "negx" },
130   { 0x0051, 0x00ff, 'R', 3, "cbeqx %b,%p" },
131   { 0x0052, 0x00ff, ' ', 1, "div" },
132   { 0x0053, 0x00ff, ' ', 1, "comx" },
133   { 0x0054, 0x00ff, ' ', 1, "lsrx" },
134   { 0x0055, 0x00ff, ' ', 2, "ldhx %d" },
135   { 0x0056, 0x00ff, ' ', 1, "rorx" },
136   { 0x0057, 0x00ff, ' ', 1, "asrx" },
137   { 0x0058, 0x00ff, ' ', 1, "lslx" },
138   { 0x0059, 0x00ff, ' ', 1, "rolx" },
139   { 0x005a, 0x00ff, ' ', 1, "decx" },
140   { 0x005b, 0x00ff, 'R', 2, "dbnzx %p" },
141   { 0x005c, 0x00ff, ' ', 1, "incx" },
142   { 0x005d, 0x00ff, ' ', 1, "tstx" },
143   { 0x005e, 0x00ff, ' ', 3, "mov %d,x+" },
144   { 0x005f, 0x00ff, ' ', 1, "clrx" },
145
146   { 0x0060, 0x00ff, ' ', 2, "neg %1,x" },
147   { 0x0061, 0x00ff, 'R', 3, "cbeq %1,x+,%p" },
148   { 0x0062, 0x00ff, ' ', 1, "nsa" },
149   { 0x0063, 0x00ff, ' ', 2, "com %1,x" },
150   { 0x0064, 0x00ff, ' ', 2, "lsr %1,x" },
151   { 0x0065, 0x00ff, ' ', 3, "cphx %w" },
152   { 0x0066, 0x00ff, ' ', 2, "ror %1,x" },
153   { 0x0067, 0x00ff, ' ', 2, "asr %1,x" },
154   { 0x0068, 0x00ff, ' ', 2, "lsl %1,x" },
155   { 0x0069, 0x00ff, ' ', 2, "rol %1,x" },
156   { 0x006a, 0x00ff, ' ', 2, "dec %1,x" },
157   { 0x006b, 0x00ff, 'R', 2, "dbnz %1,x,%p" },
158   { 0x006c, 0x00ff, ' ', 2, "inc %1,x" },
159   { 0x006d, 0x00ff, ' ', 2, "tst %1,x" },
160   { 0x006e, 0x00ff, ' ', 3, "mov %b,%d" },
161   { 0x006f, 0x00ff, ' ', 2, "clr %1,x" },
162
163 /*
164   { 0x0070, 0x00ff, ' ', 2, "neg %b,sp" },
165   { 0x0071, 0x00ff, 'R', 3, "cbeq %b,sp,%d" },
166   { 0x0073, 0x00ff, ' ', 2, "com %b,sp" },
167   { 0x0074, 0x00ff, ' ', 2, "lsr %b,sp" },
168   { 0x0076, 0x00ff, ' ', 2, "ror %b,sp" },
169   { 0x0077, 0x00ff, ' ', 2, "asr %b,sp" },
170   { 0x0078, 0x00ff, ' ', 2, "lsl %b,sp" },
171   { 0x0079, 0x00ff, ' ', 2, "rol %b,sp" },
172   { 0x007a, 0x00ff, ' ', 2, "dec %b,sp" },
173   { 0x007b, 0x00ff, 'R', 2, "dbnz %b,sp,%d" },
174   { 0x007c, 0x00ff, ' ', 2, "inc %b,sp" },
175   { 0x007d, 0x00ff, ' ', 2, "tst %b,sp" },
176   { 0x007f, 0x00ff, ' ', 2, "clr %b,sp" },
177 */
178
179   { 0x0070, 0x00ff, ' ', 1, "neg ,x" },
180   { 0x0071, 0x00ff, 'R', 2, "cbeq ,x+,%p" },
181   { 0x0072, 0x00ff, ' ', 1, "daa" },
182   { 0x0073, 0x00ff, ' ', 1, "com ,x" },
183   { 0x0074, 0x00ff, ' ', 1, "lsr ,x" },
184   { 0x0075, 0x00ff, ' ', 2, "cphx %d" },
185   { 0x0076, 0x00ff, ' ', 1, "ror ,x" },
186   { 0x0077, 0x00ff, ' ', 1, "asr ,x" },
187   { 0x0078, 0x00ff, ' ', 1, "lsl ,x" },
188   { 0x0079, 0x00ff, ' ', 1, "rol ,x" },
189   { 0x007a, 0x00ff, ' ', 1, "dec ,x" },
190   { 0x007b, 0x00ff, 'R', 2, "dbnz ,x,%p" },
191   { 0x007c, 0x00ff, ' ', 1, "inc ,x" },
192   { 0x007d, 0x00ff, ' ', 1, "tst ,x" },
193   { 0x007e, 0x00ff, ' ', 2, "mov ,x+,%d" },
194   { 0x007f, 0x00ff, ' ', 1, "clr ,x" },
195
196   { 0x0080, 0x00ff, ' ', 1, "rti" },
197   { 0x0081, 0x00ff, ' ', 1, "rts" },
198   { 0x0083, 0x00ff, ' ', 1, "swi" },
199   { 0x0084, 0x00ff, ' ', 1, "tap" },
200   { 0x0085, 0x00ff, ' ', 1, "tpa" },
201   { 0x0086, 0x00ff, ' ', 1, "pula" },
202   { 0x0087, 0x00ff, ' ', 1, "psha" },
203   { 0x0088, 0x00ff, ' ', 1, "pulx" },
204   { 0x0089, 0x00ff, ' ', 1, "pshx" },
205   { 0x008a, 0x00ff, ' ', 1, "pulh" },
206   { 0x008b, 0x00ff, ' ', 1, "pshh" },
207   { 0x008c, 0x00ff, ' ', 1, "clrh" },
208   { 0x008e, 0x00ff, ' ', 1, "stop" },
209   { 0x008f, 0x00ff, ' ', 1, "wait" },
210
211   { 0x0090, 0x00ff, 'R', 2, "bge %p" },
212   { 0x0091, 0x00ff, 'R', 2, "blt %p" },
213   { 0x0092, 0x00ff, 'R', 2, "bgt %p" },
214   { 0x0093, 0x00ff, 'R', 2, "ble %p" },
215   { 0x0094, 0x00ff, ' ', 1, "txs" },
216   { 0x0095, 0x00ff, ' ', 1, "tsx" },
217   { 0x0097, 0x00ff, ' ', 1, "tax" },
218   { 0x0098, 0x00ff, ' ', 1, "clc" },
219   { 0x0099, 0x00ff, ' ', 1, "sec" },
220   { 0x009a, 0x00ff, ' ', 1, "cli" },
221   { 0x009b, 0x00ff, ' ', 1, "sei" },
222   { 0x009c, 0x00ff, ' ', 1, "rsp" },
223   { 0x009d, 0x00ff, ' ', 1, "nop" },
224   { 0x009f, 0x00ff, ' ', 1, "txa" },
225
226   { 0x00a0, 0x00ff, ' ', 2, "sub %b" },
227   { 0x00a1, 0x00ff, ' ', 2, "cmp %b" },
228   { 0x00a2, 0x00ff, ' ', 2, "sbc %b" },
229   { 0x00a3, 0x00ff, ' ', 2, "cpx %b" },
230   { 0x00a4, 0x00ff, ' ', 2, "and %b" },
231   { 0x00a5, 0x00ff, ' ', 2, "bit %b" },
232   { 0x00a6, 0x00ff, ' ', 2, "lda %b" },
233   { 0x00a7, 0x00ff, ' ', 2, "ais %s" },
234   { 0x00a8, 0x00ff, ' ', 2, "eor %b" },
235   { 0x00a9, 0x00ff, ' ', 2, "adc %b" },
236   { 0x00aa, 0x00ff, ' ', 2, "ora %b" },
237   { 0x00ab, 0x00ff, ' ', 2, "add %b" },
238   { 0x00ad, 0x00ff, 'R', 2, "bsr %d" },
239   { 0x00ae, 0x00ff, ' ', 2, "ldx %b" },
240   { 0x00af, 0x00ff, ' ', 2, "aix %s" },
241
242   { 0x00b0, 0x00ff, ' ', 2, "sub %d" },
243   { 0x00b1, 0x00ff, ' ', 2, "cmp %d" },
244   { 0x00b2, 0x00ff, ' ', 2, "sbc %d" },
245   { 0x00b3, 0x00ff, ' ', 2, "cpx %d" },
246   { 0x00b4, 0x00ff, ' ', 2, "and %d" },
247   { 0x00b5, 0x00ff, ' ', 2, "bit %d" },
248   { 0x00b6, 0x00ff, ' ', 2, "lda %d" },
249   { 0x00b7, 0x00ff, ' ', 2, "sta %d" },
250   { 0x00b8, 0x00ff, ' ', 2, "eor %d" },
251   { 0x00b9, 0x00ff, ' ', 2, "adc %d" },
252   { 0x00ba, 0x00ff, ' ', 2, "ora %d" },
253   { 0x00bb, 0x00ff, ' ', 2, "add %d" },
254   { 0x00bc, 0x00ff, 'A', 2, "jmp %d" },
255   { 0x00bd, 0x00ff, 'A', 2, "jsr %d" },
256   { 0x00be, 0x00ff, ' ', 2, "ldx %d" },
257   { 0x00bf, 0x00ff, ' ', 2, "stx %d" },
258
259   { 0x00c0, 0x00ff, ' ', 3, "sub %x" },
260   { 0x00c1, 0x00ff, ' ', 3, "cmp %x" },
261   { 0x00c2, 0x00ff, ' ', 3, "sbc %x" },
262   { 0x00c3, 0x00ff, ' ', 3, "cpx %x" },
263   { 0x00c4, 0x00ff, ' ', 3, "and %x" },
264   { 0x00c5, 0x00ff, ' ', 3, "bit %x" },
265   { 0x00c6, 0x00ff, ' ', 3, "lda %x" },
266   { 0x00c7, 0x00ff, ' ', 3, "sta %x" },
267   { 0x00c8, 0x00ff, ' ', 3, "eor %x" },
268   { 0x00c9, 0x00ff, ' ', 3, "adc %x" },
269   { 0x00ca, 0x00ff, ' ', 3, "ora %x" },
270   { 0x00cb, 0x00ff, ' ', 3, "add %x" },
271   { 0x00cc, 0x00ff, 'A', 3, "jmp %x" },
272   { 0x00cd, 0x00ff, 'A', 3, "jsr %x" },
273   { 0x00ce, 0x00ff, ' ', 3, "ldx %x" },
274   { 0x00cf, 0x00ff, ' ', 3, "stx %x" },
275
276   { 0x00d0, 0x00ff, ' ', 3, "sub %2,x" },
277   { 0x00d1, 0x00ff, ' ', 3, "cmp %2,x" },
278   { 0x00d2, 0x00ff, ' ', 3, "sbc %2,x" },
279   { 0x00d3, 0x00ff, ' ', 3, "cpx %2,x" },
280   { 0x00d4, 0x00ff, ' ', 3, "and %2,x" },
281   { 0x00d5, 0x00ff, ' ', 3, "bit %2,x" },
282   { 0x00d6, 0x00ff, ' ', 3, "lda %2,x" },
283   { 0x00d7, 0x00ff, ' ', 3, "sta %2,x" },
284   { 0x00d8, 0x00ff, ' ', 3, "eor %2,x" },
285   { 0x00d9, 0x00ff, ' ', 3, "adc %2,x" },
286   { 0x00da, 0x00ff, ' ', 3, "ora %2,x" },
287   { 0x00db, 0x00ff, ' ', 3, "add %2,x" },
288   { 0x00dc, 0x00ff, ' ', 3, "jmp %2,x" },
289   { 0x00dd, 0x00ff, ' ', 3, "jsr %2,x" },
290   { 0x00de, 0x00ff, ' ', 3, "ldx %2,x" },
291   { 0x00df, 0x00ff, ' ', 3, "stx %2,x" },
292
293   { 0x00e0, 0x00ff, ' ', 2, "sub %1,x" },
294   { 0x00e1, 0x00ff, ' ', 2, "cmp %1,x" },
295   { 0x00e2, 0x00ff, ' ', 2, "sbc %1,x" },
296   { 0x00e3, 0x00ff, ' ', 2, "cpx %1,x" },
297   { 0x00e4, 0x00ff, ' ', 2, "and %1,x" },
298   { 0x00e5, 0x00ff, ' ', 2, "bit %1,x" },
299   { 0x00e6, 0x00ff, ' ', 2, "lda %1,x" },
300   { 0x00e7, 0x00ff, ' ', 2, "sta %1,x" },
301   { 0x00e8, 0x00ff, ' ', 2, "eor %1,x" },
302   { 0x00e9, 0x00ff, ' ', 2, "adc %1,x" },
303   { 0x00ea, 0x00ff, ' ', 2, "ora %1,x" },
304   { 0x00eb, 0x00ff, ' ', 2, "add %1,x" },
305   { 0x00ec, 0x00ff, ' ', 2, "jmp %1,x" },
306   { 0x00ed, 0x00ff, ' ', 2, "jsr %1,x" },
307   { 0x00ee, 0x00ff, ' ', 2, "ldx %1,x" },
308   { 0x00ef, 0x00ff, ' ', 2, "stx %1,x" },
309
310   { 0x00f0, 0x00ff, ' ', 1, "sub ,x" },
311   { 0x00f1, 0x00ff, ' ', 1, "cmp ,x" },
312   { 0x00f2, 0x00ff, ' ', 1, "sbc ,x" },
313   { 0x00f3, 0x00ff, ' ', 1, "cpx ,x" },
314   { 0x00f4, 0x00ff, ' ', 1, "and ,x" },
315   { 0x00f5, 0x00ff, ' ', 1, "bit ,x" },
316   { 0x00f6, 0x00ff, ' ', 1, "lda ,x" },
317   { 0x00f7, 0x00ff, ' ', 1, "sta ,x" },
318   { 0x00f8, 0x00ff, ' ', 1, "eor ,x" },
319   { 0x00f9, 0x00ff, ' ', 1, "adc ,x" },
320   { 0x00fa, 0x00ff, ' ', 1, "ora ,x" },
321   { 0x00fb, 0x00ff, ' ', 1, "add ,x" },
322   { 0x00fc, 0x00ff, ' ', 1, "jmp ,x" },
323   { 0x00fd, 0x00ff, ' ', 1, "jsr ,x" },
324   { 0x00fe, 0x00ff, ' ', 1, "ldx ,x" },
325   { 0x00ff, 0x00ff, ' ', 1, "stx ,x" },
326
327   { 0, 0, 0, 0, NULL }
328 };
329
330
331 struct dis_entry disass_hc08_9e[]= {
332   { 0x0060, 0x00ff, ' ', 2, "neg %1,sp" },
333   { 0x0061, 0x00ff, 'R', 3, "cbeq %1,sp,%p" },
334   { 0x0063, 0x00ff, ' ', 2, "com %1,sp" },
335   { 0x0064, 0x00ff, ' ', 2, "lsr %1,sp" },
336   { 0x0066, 0x00ff, ' ', 2, "ror %1,sp" },
337   { 0x0067, 0x00ff, ' ', 2, "asr %1,sp" },
338   { 0x0068, 0x00ff, ' ', 2, "lsl %1,sp" },
339   { 0x0069, 0x00ff, ' ', 2, "rol %1,sp" },
340   { 0x006a, 0x00ff, ' ', 2, "dec %1,sp" },
341   { 0x006b, 0x00ff, 'R', 2, "dbnz %1,sp,%p" },
342   { 0x006c, 0x00ff, ' ', 2, "inc %1,sp" },
343   { 0x006d, 0x00ff, ' ', 2, "tst %1,sp" },
344   { 0x006f, 0x00ff, ' ', 2, "clr %1,sp" },
345
346   { 0x00d0, 0x00ff, ' ', 3, "sub %2,sp" },
347   { 0x00d1, 0x00ff, ' ', 3, "cmp %2,sp" },
348   { 0x00d2, 0x00ff, ' ', 3, "sbc %2,sp" },
349   { 0x00d3, 0x00ff, ' ', 3, "cpx %2,sp" },
350   { 0x00d4, 0x00ff, ' ', 3, "and %2,sp" },
351   { 0x00d5, 0x00ff, ' ', 3, "bit %2,sp" },
352   { 0x00d6, 0x00ff, ' ', 3, "lda %2,sp" },
353   { 0x00d7, 0x00ff, ' ', 3, "sta %2,sp" },
354   { 0x00d8, 0x00ff, ' ', 3, "eor %2,sp" },
355   { 0x00d9, 0x00ff, ' ', 3, "adc %2,sp" },
356   { 0x00da, 0x00ff, ' ', 3, "ora %2,sp" },
357   { 0x00db, 0x00ff, ' ', 3, "add %2,sp" },
358   { 0x00de, 0x00ff, ' ', 3, "ldx %2,sp" },
359   { 0x00df, 0x00ff, ' ', 3, "stx %2,sp" },
360
361   { 0x00e0, 0x00ff, ' ', 2, "sub %1,sp" },
362   { 0x00e1, 0x00ff, ' ', 2, "cmp %1,sp" },
363   { 0x00e2, 0x00ff, ' ', 2, "sbc %1,sp" },
364   { 0x00e3, 0x00ff, ' ', 2, "cpx %1,sp" },
365   { 0x00e4, 0x00ff, ' ', 2, "and %1,sp" },
366   { 0x00e5, 0x00ff, ' ', 2, "bit %1,sp" },
367   { 0x00e6, 0x00ff, ' ', 2, "lda %1,sp" },
368   { 0x00e7, 0x00ff, ' ', 2, "sta %1,sp" },
369   { 0x00e8, 0x00ff, ' ', 2, "eor %1,sp" },
370   { 0x00e9, 0x00ff, ' ', 2, "adc %1,sp" },
371   { 0x00ea, 0x00ff, ' ', 2, "ora %1,sp" },
372   { 0x00eb, 0x00ff, ' ', 2, "add %1,sp" },
373   { 0x00ee, 0x00ff, ' ', 2, "ldx %1,sp" },
374   { 0x00ef, 0x00ff, ' ', 2, "stx %1,sp" },
375
376   { 0, 0, 0, 0, NULL }
377 };
378
379
380 /* glob.cc */