OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [opcodes/] [rx-decode.c] - Blame information for rev 132

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 18 khays
#line 1 "rx-decode.opc"
2
/* -*- c -*- */
3
#include <stdio.h>
4
#include <stdlib.h>
5
#include <string.h>
6
 
7
#include "config.h"
8
#include "ansidecl.h"
9
#include "opcode/rx.h"
10
 
11
#define RX_OPCODE_BIG_ENDIAN 0
12
 
13
typedef struct
14
{
15
  RX_Opcode_Decoded * rx;
16
  int (* getbyte)(void *);
17
  void * ptr;
18
  unsigned char * op;
19
} LocalData;
20
 
21
static int trace = 0;
22
 
23
#define BSIZE 0
24
#define WSIZE 1
25
#define LSIZE 2
26
 
27
/* These are for when the upper bits are "don't care" or "undefined".  */
28
static int bwl[] =
29
{
30
  RX_Byte,
31
  RX_Word,
32
  RX_Long
33
};
34
 
35
static int sbwl[] =
36
{
37
  RX_SByte,
38
  RX_SWord,
39
  RX_Long
40
};
41
 
42
static int ubwl[] =
43
{
44
  RX_UByte,
45
  RX_UWord,
46
  RX_Long
47
};
48
 
49
static int memex[] =
50
{
51
  RX_SByte,
52
  RX_SWord,
53
  RX_Long,
54
  RX_UWord
55
};
56
 
57
#define ID(x) rx->id = RXO_##x
58
#define OP(n,t,r,a) (rx->op[n].type = t, \
59
                     rx->op[n].reg = r,      \
60
                     rx->op[n].addend = a )
61
#define OPs(n,t,r,a,s) (OP (n,t,r,a), \
62
                        rx->op[n].size = s )
63
 
64
/* This is for the BWL and BW bitfields.  */
65
static int SCALE[] = { 1, 2, 4 };
66
/* This is for the prefix size enum.  */
67
static int PSCALE[] = { 4, 1, 1, 1, 2, 2, 2, 3, 4 };
68
 
69
static int flagmap[] = {0, 1, 2, 3, 0, 0, 0, 0,
70
                       16, 17, 0, 0, 0, 0, 0, 0 };
71
 
72
static int dsp3map[] = { 8, 9, 10, 3, 4, 5, 6, 7 };
73
 
74
/*
75
 *C     a constant (immediate) c
76
 *R     A register
77
 *I     Register indirect, no offset
78
 *Is    Register indirect, with offset
79
 *D     standard displacement: type (r,[r],dsp8,dsp16 code), register, BWL code
80
 *P     standard displacement: type (r,[r]), reg, assumes UByte
81
 *Pm    memex displacement: type (r,[r]), reg, memex code
82
 *cc    condition code.  */
83
 
84
#define DC(c)       OP (0, RX_Operand_Immediate, 0, c)
85
#define DR(r)       OP (0, RX_Operand_Register,  r, 0)
86
#define DI(r,a)     OP (0, RX_Operand_Indirect,  r, a)
87
#define DIs(r,a,s)  OP (0, RX_Operand_Indirect,  r, (a) * SCALE[s])
88
#define DD(t,r,s)   rx_disp (0, t, r, bwl[s], ld);
89
#define DF(r)       OP (0, RX_Operand_Flag,  flagmap[r], 0)
90
 
91
#define SC(i)       OP (1, RX_Operand_Immediate, 0, i)
92
#define SR(r)       OP (1, RX_Operand_Register,  r, 0)
93
#define SRR(r)      OP (1, RX_Operand_TwoReg,  r, 0)
94
#define SI(r,a)     OP (1, RX_Operand_Indirect,  r, a)
95
#define SIs(r,a,s)  OP (1, RX_Operand_Indirect,  r, (a) * SCALE[s])
96
#define SD(t,r,s)   rx_disp (1, t, r, bwl[s], ld);
97
#define SP(t,r)     rx_disp (1, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 1);
98
#define SPm(t,r,m)  rx_disp (1, t, r, memex[m], ld); rx->op[1].size = memex[m];
99
#define Scc(cc)     OP (1, RX_Operand_Condition,  cc, 0)
100
 
101
#define S2C(i)      OP (2, RX_Operand_Immediate, 0, i)
102
#define S2R(r)      OP (2, RX_Operand_Register,  r, 0)
103
#define S2I(r,a)    OP (2, RX_Operand_Indirect,  r, a)
104
#define S2Is(r,a,s) OP (2, RX_Operand_Indirect,  r, (a) * SCALE[s])
105
#define S2D(t,r,s)  rx_disp (2, t, r, bwl[s], ld);
106
#define S2P(t,r)    rx_disp (2, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 2);
107
#define S2Pm(t,r,m) rx_disp (2, t, r, memex[m], ld); rx->op[2].size = memex[m];
108
#define S2cc(cc)    OP (2, RX_Operand_Condition,  cc, 0)
109
 
110
#define BWL(sz)     rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = bwl[sz]
111
#define sBWL(sz)    rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = sbwl[sz]
112
#define uBWL(sz)    rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = ubwl[sz]
113
#define P(t, n)     rx->op[n].size = (t!=3) ? RX_UByte : RX_Long;
114
 
115
#define F(f) store_flags(rx, f)
116
 
117
#define AU ATTRIBUTE_UNUSED
118
#define GETBYTE() (ld->op [ld->rx->n_bytes++] = ld->getbyte (ld->ptr))
119
 
120
#define SYNTAX(x) rx->syntax = x
121
 
122
#define UNSUPPORTED() \
123
  rx->syntax = "*unknown*"
124
 
125
#define IMM(sf)   immediate (sf, 0, ld)
126
#define IMMex(sf) immediate (sf, 1, ld)
127
 
128
static int
129
immediate (int sfield, int ex, LocalData * ld)
130
{
131
  unsigned long i = 0, j;
132
 
133
  switch (sfield)
134
    {
135
#define B ((unsigned long) GETBYTE())
136
    case 0:
137
#if RX_OPCODE_BIG_ENDIAN
138
      i  = B;
139
      if (ex && (i & 0x80))
140
        i -= 0x100;
141
      i <<= 24;
142
      i |= B << 16;
143
      i |= B << 8;
144
      i |= B;
145
#else
146
      i = B;
147
      i |= B << 8;
148
      i |= B << 16;
149
      j = B;
150
      if (ex && (j & 0x80))
151
        j -= 0x100;
152
      i |= j << 24;
153
#endif
154
      break;
155
    case 3:
156
#if RX_OPCODE_BIG_ENDIAN
157
      i  = B << 16;
158
      i |= B << 8;
159
      i |= B;
160
#else
161
      i  = B;
162
      i |= B << 8;
163
      i |= B << 16;
164
#endif
165
      if (ex && (i & 0x800000))
166
        i -= 0x1000000;
167
      break;
168
    case 2:
169
#if RX_OPCODE_BIG_ENDIAN
170
      i |= B << 8;
171
      i |= B;
172
#else
173
      i |= B;
174
      i |= B << 8;
175
#endif
176
      if (ex && (i & 0x8000))
177
        i -= 0x10000;
178
      break;
179
    case 1:
180
      i |= B;
181
      if (ex && (i & 0x80))
182
        i -= 0x100;
183
      break;
184
    default:
185
      abort();
186
    }
187
  return i;
188
}
189
 
190
static void
191
rx_disp (int n, int type, int reg, int size, LocalData * ld)
192
{
193
  int disp;
194
 
195
  ld->rx->op[n].reg = reg;
196
  switch (type)
197
    {
198
    case 3:
199
      ld->rx->op[n].type = RX_Operand_Register;
200
      break;
201
    case 0:
202
      ld->rx->op[n].type = RX_Operand_Indirect;
203
      ld->rx->op[n].addend = 0;
204
      break;
205
    case 1:
206
      ld->rx->op[n].type = RX_Operand_Indirect;
207
      disp = GETBYTE ();
208
      ld->rx->op[n].addend = disp * PSCALE[size];
209
      break;
210
    case 2:
211
      ld->rx->op[n].type = RX_Operand_Indirect;
212
      disp = GETBYTE ();
213
#if RX_OPCODE_BIG_ENDIAN
214
      disp = disp * 256 + GETBYTE ();
215
#else
216
      disp = disp + GETBYTE () * 256;
217
#endif
218
      ld->rx->op[n].addend = disp * PSCALE[size];
219
      break;
220
    default:
221
      abort ();
222
    }
223
}
224
 
225
#define xO 8
226
#define xS 4
227
#define xZ 2
228
#define xC 1
229
 
230
#define F_____ 
231
#define F___ZC rx->flags_0 = rx->flags_s = xZ|xC;
232
#define F__SZ_ rx->flags_0 = rx->flags_s = xS|xZ;
233
#define F__SZC rx->flags_0 = rx->flags_s = xS|xZ|xC;
234
#define F_0SZC rx->flags_0 = xO|xS|xZ|xC; rx->flags_s = xS|xZ|xC;
235
#define F_O___ rx->flags_0 = rx->flags_s = xO;
236
#define F_OS__ rx->flags_0 = rx->flags_s = xO|xS;
237
#define F_OSZ_ rx->flags_0 = rx->flags_s = xO|xS|xZ;
238
#define F_OSZC rx->flags_0 = rx->flags_s = xO|xS|xZ|xC;
239
 
240
int
241
rx_decode_opcode (unsigned long pc AU,
242
                  RX_Opcode_Decoded * rx,
243
                  int (* getbyte)(void *),
244
                  void * ptr)
245
{
246
  LocalData lds, * ld = &lds;
247
  unsigned char op[20] = {0};
248
 
249
  lds.rx = rx;
250
  lds.getbyte = getbyte;
251
  lds.ptr = ptr;
252
  lds.op = op;
253
 
254
  memset (rx, 0, sizeof (*rx));
255
  BWL(LSIZE);
256
 
257
 
258
/*----------------------------------------------------------------------*/
259
/* MOV                                                                  */
260
 
261
  GETBYTE ();
262
  switch (op[0] & 0xff)
263
  {
264
    case 0x00:
265
        {
266
          /** 0000 0000                 brk */
267
          if (trace)
268
            {
269
              printf ("\033[33m%s\033[0m  %02x\n",
270
                     "/** 0000 0000                     brk */",
271
                     op[0]);
272
            }
273
          SYNTAX("brk");
274
#line 943 "rx-decode.opc"
275
          ID(brk);
276
 
277
        }
278
      break;
279
    case 0x01:
280
        {
281
          /** 0000 0001                 dbt */
282
          if (trace)
283
            {
284
              printf ("\033[33m%s\033[0m  %02x\n",
285
                     "/** 0000 0001                     dbt */",
286
                     op[0]);
287
            }
288
          SYNTAX("dbt");
289
#line 946 "rx-decode.opc"
290
          ID(dbt);
291
 
292
        }
293
      break;
294
    case 0x02:
295
        {
296
          /** 0000 0010                 rts */
297
          if (trace)
298
            {
299
              printf ("\033[33m%s\033[0m  %02x\n",
300
                     "/** 0000 0010                     rts */",
301
                     op[0]);
302
            }
303
          SYNTAX("rts");
304
#line 732 "rx-decode.opc"
305
          ID(rts);
306
 
307
        /*----------------------------------------------------------------------*/
308
        /* NOP                                                          */
309
 
310
        }
311
      break;
312
    case 0x03:
313
        {
314
          /** 0000 0011                 nop */
315
          if (trace)
316
            {
317
              printf ("\033[33m%s\033[0m  %02x\n",
318
                     "/** 0000 0011                     nop */",
319
                     op[0]);
320
            }
321
          SYNTAX("nop");
322
#line 738 "rx-decode.opc"
323
          ID(nop);
324
 
325
        /*----------------------------------------------------------------------*/
326
        /* STRING FUNCTIONS                                                     */
327
 
328
        }
329
      break;
330
    case 0x04:
331
        {
332
          /** 0000 0100                 bra.a   %a0 */
333
          if (trace)
334
            {
335
              printf ("\033[33m%s\033[0m  %02x\n",
336
                     "/** 0000 0100                     bra.a   %a0 */",
337
                     op[0]);
338
            }
339
          SYNTAX("bra.a %a0");
340
#line 710 "rx-decode.opc"
341
          ID(branch); DC(pc + IMMex(3));
342
 
343
        }
344
      break;
345
    case 0x05:
346
        {
347
          /** 0000 0101                 bsr.a   %a0 */
348
          if (trace)
349
            {
350
              printf ("\033[33m%s\033[0m  %02x\n",
351
                     "/** 0000 0101                     bsr.a   %a0 */",
352
                     op[0]);
353
            }
354
          SYNTAX("bsr.a %a0");
355
#line 726 "rx-decode.opc"
356
          ID(jsr); DC(pc + IMMex(3));
357
 
358
        }
359
      break;
360
    case 0x06:
361
        GETBYTE ();
362
        switch (op[1] & 0xff)
363
        {
364
          case 0x00:
365
              GETBYTE ();
366
              switch (op[2] & 0x00)
367
              {
368
                case 0x00:
369
                  op_semantics_1:
370
                    {
371
                      /** 0000 0110 mx00 00ss rsrc rdst                 sub     %2%S2, %1 */
372
#line 506 "rx-decode.opc"
373
                      int mx AU = (op[1] >> 6) & 0x03;
374
#line 506 "rx-decode.opc"
375
                      int ss AU = op[1] & 0x03;
376
#line 506 "rx-decode.opc"
377
                      int rsrc AU = (op[2] >> 4) & 0x0f;
378
#line 506 "rx-decode.opc"
379
                      int rdst AU = op[2] & 0x0f;
380
                      if (trace)
381
                        {
382
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
383
                                 "/** 0000 0110 mx00 00ss rsrc rdst                     sub     %2%S2, %1 */",
384
                                 op[0], op[1], op[2]);
385
                          printf ("  mx = 0x%x,", mx);
386
                          printf ("  ss = 0x%x,", ss);
387
                          printf ("  rsrc = 0x%x,", rsrc);
388
                          printf ("  rdst = 0x%x\n", rdst);
389
                        }
390
                      SYNTAX("sub       %2%S2, %1");
391
#line 506 "rx-decode.opc"
392
                      ID(sub); S2Pm(ss, rsrc, mx); SR(rdst); DR(rdst); F_OSZC;
393
 
394
                    }
395
                  break;
396
              }
397
            break;
398
          case 0x01:
399
              GETBYTE ();
400
              switch (op[2] & 0x00)
401
              {
402
                case 0x00:
403
                  goto op_semantics_1;
404
                  break;
405
              }
406
            break;
407
          case 0x02:
408
              GETBYTE ();
409
              switch (op[2] & 0x00)
410
              {
411
                case 0x00:
412
                  goto op_semantics_1;
413
                  break;
414
              }
415
            break;
416
          case 0x03:
417
              GETBYTE ();
418
              switch (op[2] & 0x00)
419
              {
420
                case 0x00:
421
                  goto op_semantics_1;
422
                  break;
423
              }
424
            break;
425
          case 0x04:
426
              GETBYTE ();
427
              switch (op[2] & 0x00)
428
              {
429
                case 0x00:
430
                  op_semantics_2:
431
                    {
432
                      /** 0000 0110 mx00 01ss rsrc rdst         cmp     %2%S2, %1 */
433
#line 494 "rx-decode.opc"
434
                      int mx AU = (op[1] >> 6) & 0x03;
435
#line 494 "rx-decode.opc"
436
                      int ss AU = op[1] & 0x03;
437
#line 494 "rx-decode.opc"
438
                      int rsrc AU = (op[2] >> 4) & 0x0f;
439
#line 494 "rx-decode.opc"
440
                      int rdst AU = op[2] & 0x0f;
441
                      if (trace)
442
                        {
443
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
444
                                 "/** 0000 0110 mx00 01ss rsrc rdst             cmp     %2%S2, %1 */",
445
                                 op[0], op[1], op[2]);
446
                          printf ("  mx = 0x%x,", mx);
447
                          printf ("  ss = 0x%x,", ss);
448
                          printf ("  rsrc = 0x%x,", rsrc);
449
                          printf ("  rdst = 0x%x\n", rdst);
450
                        }
451
                      SYNTAX("cmp       %2%S2, %1");
452
#line 494 "rx-decode.opc"
453
                      ID(sub); S2Pm(ss, rsrc, mx); SR(rdst); F_OSZC;
454
 
455
                    /*----------------------------------------------------------------------*/
456
                    /* SUB                                                                      */
457
 
458
                    }
459
                  break;
460
              }
461
            break;
462
          case 0x05:
463
              GETBYTE ();
464
              switch (op[2] & 0x00)
465
              {
466
                case 0x00:
467
                  goto op_semantics_2;
468
                  break;
469
              }
470
            break;
471
          case 0x06:
472
              GETBYTE ();
473
              switch (op[2] & 0x00)
474
              {
475
                case 0x00:
476
                  goto op_semantics_2;
477
                  break;
478
              }
479
            break;
480
          case 0x07:
481
              GETBYTE ();
482
              switch (op[2] & 0x00)
483
              {
484
                case 0x00:
485
                  goto op_semantics_2;
486
                  break;
487
              }
488
            break;
489
          case 0x08:
490
              GETBYTE ();
491
              switch (op[2] & 0x00)
492
              {
493
                case 0x00:
494
                  op_semantics_3:
495
                    {
496
                      /** 0000 0110 mx00 10ss rsrc rdst add     %1%S1, %0 */
497
#line 470 "rx-decode.opc"
498
                      int mx AU = (op[1] >> 6) & 0x03;
499
#line 470 "rx-decode.opc"
500
                      int ss AU = op[1] & 0x03;
501
#line 470 "rx-decode.opc"
502
                      int rsrc AU = (op[2] >> 4) & 0x0f;
503
#line 470 "rx-decode.opc"
504
                      int rdst AU = op[2] & 0x0f;
505
                      if (trace)
506
                        {
507
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
508
                                 "/** 0000 0110 mx00 10ss rsrc rdst     add     %1%S1, %0 */",
509
                                 op[0], op[1], op[2]);
510
                          printf ("  mx = 0x%x,", mx);
511
                          printf ("  ss = 0x%x,", ss);
512
                          printf ("  rsrc = 0x%x,", rsrc);
513
                          printf ("  rdst = 0x%x\n", rdst);
514
                        }
515
                      SYNTAX("add       %1%S1, %0");
516
#line 470 "rx-decode.opc"
517
                      ID(add); SPm(ss, rsrc, mx); DR(rdst); F_OSZC;
518
 
519
                    }
520
                  break;
521
              }
522
            break;
523
          case 0x09:
524
              GETBYTE ();
525
              switch (op[2] & 0x00)
526
              {
527
                case 0x00:
528
                  goto op_semantics_3;
529
                  break;
530
              }
531
            break;
532
          case 0x0a:
533
              GETBYTE ();
534
              switch (op[2] & 0x00)
535
              {
536
                case 0x00:
537
                  goto op_semantics_3;
538
                  break;
539
              }
540
            break;
541
          case 0x0b:
542
              GETBYTE ();
543
              switch (op[2] & 0x00)
544
              {
545
                case 0x00:
546
                  goto op_semantics_3;
547
                  break;
548
              }
549
            break;
550
          case 0x0c:
551
              GETBYTE ();
552
              switch (op[2] & 0x00)
553
              {
554
                case 0x00:
555
                  op_semantics_4:
556
                    {
557
                      /** 0000 0110 mx00 11ss rsrc rdst mul     %1%S1, %0 */
558
#line 575 "rx-decode.opc"
559
                      int mx AU = (op[1] >> 6) & 0x03;
560
#line 575 "rx-decode.opc"
561
                      int ss AU = op[1] & 0x03;
562
#line 575 "rx-decode.opc"
563
                      int rsrc AU = (op[2] >> 4) & 0x0f;
564
#line 575 "rx-decode.opc"
565
                      int rdst AU = op[2] & 0x0f;
566
                      if (trace)
567
                        {
568
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
569
                                 "/** 0000 0110 mx00 11ss rsrc rdst     mul     %1%S1, %0 */",
570
                                 op[0], op[1], op[2]);
571
                          printf ("  mx = 0x%x,", mx);
572
                          printf ("  ss = 0x%x,", ss);
573
                          printf ("  rsrc = 0x%x,", rsrc);
574
                          printf ("  rdst = 0x%x\n", rdst);
575
                        }
576
                      SYNTAX("mul       %1%S1, %0");
577
#line 575 "rx-decode.opc"
578
                      ID(mul); SPm(ss, rsrc, mx); DR(rdst); F_____;
579
 
580
                    }
581
                  break;
582
              }
583
            break;
584
          case 0x0d:
585
              GETBYTE ();
586
              switch (op[2] & 0x00)
587
              {
588
                case 0x00:
589
                  goto op_semantics_4;
590
                  break;
591
              }
592
            break;
593
          case 0x0e:
594
              GETBYTE ();
595
              switch (op[2] & 0x00)
596
              {
597
                case 0x00:
598
                  goto op_semantics_4;
599
                  break;
600
              }
601
            break;
602
          case 0x0f:
603
              GETBYTE ();
604
              switch (op[2] & 0x00)
605
              {
606
                case 0x00:
607
                  goto op_semantics_4;
608
                  break;
609
              }
610
            break;
611
          case 0x10:
612
              GETBYTE ();
613
              switch (op[2] & 0x00)
614
              {
615
                case 0x00:
616
                  op_semantics_5:
617
                    {
618
                      /** 0000 0110 mx01 00ss rsrc rdst and     %1%S1, %0 */
619
#line 383 "rx-decode.opc"
620
                      int mx AU = (op[1] >> 6) & 0x03;
621
#line 383 "rx-decode.opc"
622
                      int ss AU = op[1] & 0x03;
623
#line 383 "rx-decode.opc"
624
                      int rsrc AU = (op[2] >> 4) & 0x0f;
625
#line 383 "rx-decode.opc"
626
                      int rdst AU = op[2] & 0x0f;
627
                      if (trace)
628
                        {
629
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
630
                                 "/** 0000 0110 mx01 00ss rsrc rdst     and     %1%S1, %0 */",
631
                                 op[0], op[1], op[2]);
632
                          printf ("  mx = 0x%x,", mx);
633
                          printf ("  ss = 0x%x,", ss);
634
                          printf ("  rsrc = 0x%x,", rsrc);
635
                          printf ("  rdst = 0x%x\n", rdst);
636
                        }
637
                      SYNTAX("and       %1%S1, %0");
638
#line 383 "rx-decode.opc"
639
                      ID(and); SPm(ss, rsrc, mx); DR(rdst); F__SZ_;
640
 
641
                    }
642
                  break;
643
              }
644
            break;
645
          case 0x11:
646
              GETBYTE ();
647
              switch (op[2] & 0x00)
648
              {
649
                case 0x00:
650
                  goto op_semantics_5;
651
                  break;
652
              }
653
            break;
654
          case 0x12:
655
              GETBYTE ();
656
              switch (op[2] & 0x00)
657
              {
658
                case 0x00:
659
                  goto op_semantics_5;
660
                  break;
661
              }
662
            break;
663
          case 0x13:
664
              GETBYTE ();
665
              switch (op[2] & 0x00)
666
              {
667
                case 0x00:
668
                  goto op_semantics_5;
669
                  break;
670
              }
671
            break;
672
          case 0x14:
673
              GETBYTE ();
674
              switch (op[2] & 0x00)
675
              {
676
                case 0x00:
677
                  op_semantics_6:
678
                    {
679
                      /** 0000 0110 mx01 01ss rsrc rdst                 or      %1%S1, %0 */
680
#line 401 "rx-decode.opc"
681
                      int mx AU = (op[1] >> 6) & 0x03;
682
#line 401 "rx-decode.opc"
683
                      int ss AU = op[1] & 0x03;
684
#line 401 "rx-decode.opc"
685
                      int rsrc AU = (op[2] >> 4) & 0x0f;
686
#line 401 "rx-decode.opc"
687
                      int rdst AU = op[2] & 0x0f;
688
                      if (trace)
689
                        {
690
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
691
                                 "/** 0000 0110 mx01 01ss rsrc rdst                     or      %1%S1, %0 */",
692
                                 op[0], op[1], op[2]);
693
                          printf ("  mx = 0x%x,", mx);
694
                          printf ("  ss = 0x%x,", ss);
695
                          printf ("  rsrc = 0x%x,", rsrc);
696
                          printf ("  rdst = 0x%x\n", rdst);
697
                        }
698
                      SYNTAX("or        %1%S1, %0");
699
#line 401 "rx-decode.opc"
700
                      ID(or); SPm(ss, rsrc, mx); DR(rdst); F__SZ_;
701
 
702
                    }
703
                  break;
704
              }
705
            break;
706
          case 0x15:
707
              GETBYTE ();
708
              switch (op[2] & 0x00)
709
              {
710
                case 0x00:
711
                  goto op_semantics_6;
712
                  break;
713
              }
714
            break;
715
          case 0x16:
716
              GETBYTE ();
717
              switch (op[2] & 0x00)
718
              {
719
                case 0x00:
720
                  goto op_semantics_6;
721
                  break;
722
              }
723
            break;
724
          case 0x17:
725
              GETBYTE ();
726
              switch (op[2] & 0x00)
727
              {
728
                case 0x00:
729
                  goto op_semantics_6;
730
                  break;
731
              }
732
            break;
733
          case 0x20:
734
              GETBYTE ();
735
              switch (op[2] & 0xff)
736
              {
737
                case 0x00:
738
                    GETBYTE ();
739
                    switch (op[3] & 0x00)
740
                    {
741
                      case 0x00:
742
                        op_semantics_7:
743
                          {
744
                            /** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb     %1%S1, %0 */
745
#line 519 "rx-decode.opc"
746
                            int mx AU = (op[1] >> 6) & 0x03;
747
#line 519 "rx-decode.opc"
748
                            int sp AU = op[1] & 0x03;
749
#line 519 "rx-decode.opc"
750
                            int rsrc AU = (op[3] >> 4) & 0x0f;
751
#line 519 "rx-decode.opc"
752
                            int rdst AU = op[3] & 0x0f;
753
                            if (trace)
754
                              {
755
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
756
                                       "/** 0000 0110 mx10 00sp 0000 0000 rsrc rdst     sbb     %1%S1, %0 */",
757
                                       op[0], op[1], op[2], op[3]);
758
                                printf ("  mx = 0x%x,", mx);
759
                                printf ("  sp = 0x%x,", sp);
760
                                printf ("  rsrc = 0x%x,", rsrc);
761
                                printf ("  rdst = 0x%x\n", rdst);
762
                              }
763
                            SYNTAX("sbb %1%S1, %0");
764
#line 519 "rx-decode.opc"
765
                            ID(sbb); SPm(sp, rsrc, mx); DR(rdst); F_OSZC;
766
 
767
                          /*----------------------------------------------------------------------*/
768
                          /* ABS                                                                        */
769
 
770
                          }
771
                        break;
772
                    }
773
                  break;
774
                case 0x04:
775
                    GETBYTE ();
776
                    switch (op[3] & 0x00)
777
                    {
778
                      case 0x00:
779
                        op_semantics_8:
780
                          {
781
                            /** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max     %1%S1, %0 */
782
#line 548 "rx-decode.opc"
783
                            int mx AU = (op[1] >> 6) & 0x03;
784
#line 548 "rx-decode.opc"
785
                            int ss AU = op[1] & 0x03;
786
#line 548 "rx-decode.opc"
787
                            int rsrc AU = (op[3] >> 4) & 0x0f;
788
#line 548 "rx-decode.opc"
789
                            int rdst AU = op[3] & 0x0f;
790
                            if (trace)
791
                              {
792
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
793
                                       "/** 0000 0110 mx10 00ss 0000 0100 rsrc rdst     max     %1%S1, %0 */",
794
                                       op[0], op[1], op[2], op[3]);
795
                                printf ("  mx = 0x%x,", mx);
796
                                printf ("  ss = 0x%x,", ss);
797
                                printf ("  rsrc = 0x%x,", rsrc);
798
                                printf ("  rdst = 0x%x\n", rdst);
799
                              }
800
                            SYNTAX("max %1%S1, %0");
801
#line 548 "rx-decode.opc"
802
                            ID(max); SPm(ss, rsrc, mx); DR(rdst);
803
 
804
                          /*----------------------------------------------------------------------*/
805
                          /* MIN                                                                        */
806
 
807
                          }
808
                        break;
809
                    }
810
                  break;
811
                case 0x05:
812
                    GETBYTE ();
813
                    switch (op[3] & 0x00)
814
                    {
815
                      case 0x00:
816
                        op_semantics_9:
817
                          {
818
                            /** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min     %1%S1, %0 */
819
#line 560 "rx-decode.opc"
820
                            int mx AU = (op[1] >> 6) & 0x03;
821
#line 560 "rx-decode.opc"
822
                            int ss AU = op[1] & 0x03;
823
#line 560 "rx-decode.opc"
824
                            int rsrc AU = (op[3] >> 4) & 0x0f;
825
#line 560 "rx-decode.opc"
826
                            int rdst AU = op[3] & 0x0f;
827
                            if (trace)
828
                              {
829
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
830
                                       "/** 0000 0110 mx10 00ss 0000 0101 rsrc rdst     min     %1%S1, %0 */",
831
                                       op[0], op[1], op[2], op[3]);
832
                                printf ("  mx = 0x%x,", mx);
833
                                printf ("  ss = 0x%x,", ss);
834
                                printf ("  rsrc = 0x%x,", rsrc);
835
                                printf ("  rdst = 0x%x\n", rdst);
836
                              }
837
                            SYNTAX("min %1%S1, %0");
838
#line 560 "rx-decode.opc"
839
                            ID(min); SPm(ss, rsrc, mx); DR(rdst);
840
 
841
                          /*----------------------------------------------------------------------*/
842
                          /* MUL                                                                        */
843
 
844
                          }
845
                        break;
846
                    }
847
                  break;
848
                case 0x06:
849
                    GETBYTE ();
850
                    switch (op[3] & 0x00)
851
                    {
852
                      case 0x00:
853
                        op_semantics_10:
854
                          {
855
                            /** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul    %1%S1, %0 */
856
#line 590 "rx-decode.opc"
857
                            int mx AU = (op[1] >> 6) & 0x03;
858
#line 590 "rx-decode.opc"
859
                            int ss AU = op[1] & 0x03;
860
#line 590 "rx-decode.opc"
861
                            int rsrc AU = (op[3] >> 4) & 0x0f;
862
#line 590 "rx-decode.opc"
863
                            int rdst AU = op[3] & 0x0f;
864
                            if (trace)
865
                              {
866
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
867
                                       "/** 0000 0110 mx10 00ss 0000 0110 rsrc rdst     emul    %1%S1, %0 */",
868
                                       op[0], op[1], op[2], op[3]);
869
                                printf ("  mx = 0x%x,", mx);
870
                                printf ("  ss = 0x%x,", ss);
871
                                printf ("  rsrc = 0x%x,", rsrc);
872
                                printf ("  rdst = 0x%x\n", rdst);
873
                              }
874
                            SYNTAX("emul        %1%S1, %0");
875
#line 590 "rx-decode.opc"
876
                            ID(emul); SPm(ss, rsrc, mx); DR(rdst);
877
 
878
                          /*----------------------------------------------------------------------*/
879
                          /* EMULU                                                                      */
880
 
881
                          }
882
                        break;
883
                    }
884
                  break;
885
                case 0x07:
886
                    GETBYTE ();
887
                    switch (op[3] & 0x00)
888
                    {
889
                      case 0x00:
890
                        op_semantics_11:
891
                          {
892
                            /** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu   %1%S1, %0 */
893
#line 602 "rx-decode.opc"
894
                            int mx AU = (op[1] >> 6) & 0x03;
895
#line 602 "rx-decode.opc"
896
                            int ss AU = op[1] & 0x03;
897
#line 602 "rx-decode.opc"
898
                            int rsrc AU = (op[3] >> 4) & 0x0f;
899
#line 602 "rx-decode.opc"
900
                            int rdst AU = op[3] & 0x0f;
901
                            if (trace)
902
                              {
903
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
904
                                       "/** 0000 0110 mx10 00ss 0000 0111 rsrc rdst     emulu   %1%S1, %0 */",
905
                                       op[0], op[1], op[2], op[3]);
906
                                printf ("  mx = 0x%x,", mx);
907
                                printf ("  ss = 0x%x,", ss);
908
                                printf ("  rsrc = 0x%x,", rsrc);
909
                                printf ("  rdst = 0x%x\n", rdst);
910
                              }
911
                            SYNTAX("emulu       %1%S1, %0");
912
#line 602 "rx-decode.opc"
913
                            ID(emulu); SPm(ss, rsrc, mx); DR(rdst);
914
 
915
                          /*----------------------------------------------------------------------*/
916
                          /* DIV                                                                        */
917
 
918
                          }
919
                        break;
920
                    }
921
                  break;
922
                case 0x08:
923
                    GETBYTE ();
924
                    switch (op[3] & 0x00)
925
                    {
926
                      case 0x00:
927
                        op_semantics_12:
928
                          {
929
                            /** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div     %1%S1, %0 */
930
#line 614 "rx-decode.opc"
931
                            int mx AU = (op[1] >> 6) & 0x03;
932
#line 614 "rx-decode.opc"
933
                            int ss AU = op[1] & 0x03;
934
#line 614 "rx-decode.opc"
935
                            int rsrc AU = (op[3] >> 4) & 0x0f;
936
#line 614 "rx-decode.opc"
937
                            int rdst AU = op[3] & 0x0f;
938
                            if (trace)
939
                              {
940
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
941
                                       "/** 0000 0110 mx10 00ss 0000 1000 rsrc rdst     div     %1%S1, %0 */",
942
                                       op[0], op[1], op[2], op[3]);
943
                                printf ("  mx = 0x%x,", mx);
944
                                printf ("  ss = 0x%x,", ss);
945
                                printf ("  rsrc = 0x%x,", rsrc);
946
                                printf ("  rdst = 0x%x\n", rdst);
947
                              }
948
                            SYNTAX("div %1%S1, %0");
949
#line 614 "rx-decode.opc"
950
                            ID(div); SPm(ss, rsrc, mx); DR(rdst); F_O___;
951
 
952
                          /*----------------------------------------------------------------------*/
953
                          /* DIVU                                                                       */
954
 
955
                          }
956
                        break;
957
                    }
958
                  break;
959
                case 0x09:
960
                    GETBYTE ();
961
                    switch (op[3] & 0x00)
962
                    {
963
                      case 0x00:
964
                        op_semantics_13:
965
                          {
966
                            /** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu    %1%S1, %0 */
967
#line 626 "rx-decode.opc"
968
                            int mx AU = (op[1] >> 6) & 0x03;
969
#line 626 "rx-decode.opc"
970
                            int ss AU = op[1] & 0x03;
971
#line 626 "rx-decode.opc"
972
                            int rsrc AU = (op[3] >> 4) & 0x0f;
973
#line 626 "rx-decode.opc"
974
                            int rdst AU = op[3] & 0x0f;
975
                            if (trace)
976
                              {
977
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
978
                                       "/** 0000 0110 mx10 00ss 0000 1001 rsrc rdst     divu    %1%S1, %0 */",
979
                                       op[0], op[1], op[2], op[3]);
980
                                printf ("  mx = 0x%x,", mx);
981
                                printf ("  ss = 0x%x,", ss);
982
                                printf ("  rsrc = 0x%x,", rsrc);
983
                                printf ("  rdst = 0x%x\n", rdst);
984
                              }
985
                            SYNTAX("divu        %1%S1, %0");
986
#line 626 "rx-decode.opc"
987
                            ID(divu); SPm(ss, rsrc, mx); DR(rdst); F_O___;
988
 
989
                          /*----------------------------------------------------------------------*/
990
                          /* SHIFT                                                              */
991
 
992
                          }
993
                        break;
994
                    }
995
                  break;
996
                case 0x0c:
997
                    GETBYTE ();
998
                    switch (op[3] & 0x00)
999
                    {
1000
                      case 0x00:
1001
                        op_semantics_14:
1002
                          {
1003
                            /** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst     %1%S1, %2 */
1004
#line 437 "rx-decode.opc"
1005
                            int mx AU = (op[1] >> 6) & 0x03;
1006
#line 437 "rx-decode.opc"
1007
                            int ss AU = op[1] & 0x03;
1008
#line 437 "rx-decode.opc"
1009
                            int rsrc AU = (op[3] >> 4) & 0x0f;
1010
#line 437 "rx-decode.opc"
1011
                            int rdst AU = op[3] & 0x0f;
1012
                            if (trace)
1013
                              {
1014
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
1015
                                       "/** 0000 0110 mx10 00ss 0000 1100 rsrc rdst     tst     %1%S1, %2 */",
1016
                                       op[0], op[1], op[2], op[3]);
1017
                                printf ("  mx = 0x%x,", mx);
1018
                                printf ("  ss = 0x%x,", ss);
1019
                                printf ("  rsrc = 0x%x,", rsrc);
1020
                                printf ("  rdst = 0x%x\n", rdst);
1021
                              }
1022
                            SYNTAX("tst %1%S1, %2");
1023
#line 437 "rx-decode.opc"
1024
                            ID(and); SPm(ss, rsrc, mx); S2R(rdst); F__SZ_;
1025
 
1026
                          /*----------------------------------------------------------------------*/
1027
                          /* NEG                                                                        */
1028
 
1029
                          }
1030
                        break;
1031
                    }
1032
                  break;
1033
                case 0x0d:
1034
                    GETBYTE ();
1035
                    switch (op[3] & 0x00)
1036
                    {
1037
                      case 0x00:
1038
                        op_semantics_15:
1039
                          {
1040
                            /** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor     %1%S1, %0 */
1041
#line 416 "rx-decode.opc"
1042
                            int mx AU = (op[1] >> 6) & 0x03;
1043
#line 416 "rx-decode.opc"
1044
                            int ss AU = op[1] & 0x03;
1045
#line 416 "rx-decode.opc"
1046
                            int rsrc AU = (op[3] >> 4) & 0x0f;
1047
#line 416 "rx-decode.opc"
1048
                            int rdst AU = op[3] & 0x0f;
1049
                            if (trace)
1050
                              {
1051
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
1052
                                       "/** 0000 0110 mx10 00ss 0000 1101 rsrc rdst     xor     %1%S1, %0 */",
1053
                                       op[0], op[1], op[2], op[3]);
1054
                                printf ("  mx = 0x%x,", mx);
1055
                                printf ("  ss = 0x%x,", ss);
1056
                                printf ("  rsrc = 0x%x,", rsrc);
1057
                                printf ("  rdst = 0x%x\n", rdst);
1058
                              }
1059
                            SYNTAX("xor %1%S1, %0");
1060
#line 416 "rx-decode.opc"
1061
                            ID(xor); SPm(ss, rsrc, mx); DR(rdst); F__SZ_;
1062
 
1063
                          /*----------------------------------------------------------------------*/
1064
                          /* NOT                                                                        */
1065
 
1066
                          }
1067
                        break;
1068
                    }
1069
                  break;
1070
                case 0x10:
1071
                    GETBYTE ();
1072
                    switch (op[3] & 0x00)
1073
                    {
1074
                      case 0x00:
1075
                        op_semantics_16:
1076
                          {
1077
                            /** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg    %1%S1, %0 */
1078
#line 350 "rx-decode.opc"
1079
                            int mx AU = (op[1] >> 6) & 0x03;
1080
#line 350 "rx-decode.opc"
1081
                            int ss AU = op[1] & 0x03;
1082
#line 350 "rx-decode.opc"
1083
                            int rsrc AU = (op[3] >> 4) & 0x0f;
1084
#line 350 "rx-decode.opc"
1085
                            int rdst AU = op[3] & 0x0f;
1086
                            if (trace)
1087
                              {
1088
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
1089
                                       "/** 0000 0110 mx10 00ss 0001 0000 rsrc rdst     xchg    %1%S1, %0 */",
1090
                                       op[0], op[1], op[2], op[3]);
1091
                                printf ("  mx = 0x%x,", mx);
1092
                                printf ("  ss = 0x%x,", ss);
1093
                                printf ("  rsrc = 0x%x,", rsrc);
1094
                                printf ("  rdst = 0x%x\n", rdst);
1095
                              }
1096
                            SYNTAX("xchg        %1%S1, %0");
1097
#line 350 "rx-decode.opc"
1098
                            ID(xchg); DR(rdst); SPm(ss, rsrc, mx);
1099
 
1100
                          /*----------------------------------------------------------------------*/
1101
                          /* STZ/STNZ                                                           */
1102
 
1103
                          }
1104
                        break;
1105
                    }
1106
                  break;
1107
                case 0x11:
1108
                    GETBYTE ();
1109
                    switch (op[3] & 0x00)
1110
                    {
1111
                      case 0x00:
1112
                        op_semantics_17:
1113
                          {
1114
                            /** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof    %1%S1, %0 */
1115
#line 855 "rx-decode.opc"
1116
                            int mx AU = (op[1] >> 6) & 0x03;
1117
#line 855 "rx-decode.opc"
1118
                            int sd AU = op[1] & 0x03;
1119
#line 855 "rx-decode.opc"
1120
                            int rsrc AU = (op[3] >> 4) & 0x0f;
1121
#line 855 "rx-decode.opc"
1122
                            int rdst AU = op[3] & 0x0f;
1123
                            if (trace)
1124
                              {
1125
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
1126
                                       "/** 0000 0110 mx10 00sd 0001 0001 rsrc rdst     itof    %1%S1, %0 */",
1127
                                       op[0], op[1], op[2], op[3]);
1128
                                printf ("  mx = 0x%x,", mx);
1129
                                printf ("  sd = 0x%x,", sd);
1130
                                printf ("  rsrc = 0x%x,", rsrc);
1131
                                printf ("  rdst = 0x%x\n", rdst);
1132
                              }
1133
                            SYNTAX("itof        %1%S1, %0");
1134
#line 855 "rx-decode.opc"
1135
                            ID(itof); DR (rdst); SPm(sd, rsrc, mx); F__SZ_;
1136
 
1137
                          /*----------------------------------------------------------------------*/
1138
                          /* BIT OPS                                                            */
1139
 
1140
                          }
1141
                        break;
1142
                    }
1143
                  break;
1144
                default: UNSUPPORTED(); break;
1145
              }
1146
            break;
1147
          case 0x21:
1148
              GETBYTE ();
1149
              switch (op[2] & 0xff)
1150
              {
1151
                case 0x00:
1152
                    GETBYTE ();
1153
                    switch (op[3] & 0x00)
1154
                    {
1155
                      case 0x00:
1156
                        goto op_semantics_7;
1157
                        break;
1158
                    }
1159
                  break;
1160
                case 0x04:
1161
                    GETBYTE ();
1162
                    switch (op[3] & 0x00)
1163
                    {
1164
                      case 0x00:
1165
                        goto op_semantics_8;
1166
                        break;
1167
                    }
1168
                  break;
1169
                case 0x05:
1170
                    GETBYTE ();
1171
                    switch (op[3] & 0x00)
1172
                    {
1173
                      case 0x00:
1174
                        goto op_semantics_9;
1175
                        break;
1176
                    }
1177
                  break;
1178
                case 0x06:
1179
                    GETBYTE ();
1180
                    switch (op[3] & 0x00)
1181
                    {
1182
                      case 0x00:
1183
                        goto op_semantics_10;
1184
                        break;
1185
                    }
1186
                  break;
1187
                case 0x07:
1188
                    GETBYTE ();
1189
                    switch (op[3] & 0x00)
1190
                    {
1191
                      case 0x00:
1192
                        goto op_semantics_11;
1193
                        break;
1194
                    }
1195
                  break;
1196
                case 0x08:
1197
                    GETBYTE ();
1198
                    switch (op[3] & 0x00)
1199
                    {
1200
                      case 0x00:
1201
                        goto op_semantics_12;
1202
                        break;
1203
                    }
1204
                  break;
1205
                case 0x09:
1206
                    GETBYTE ();
1207
                    switch (op[3] & 0x00)
1208
                    {
1209
                      case 0x00:
1210
                        goto op_semantics_13;
1211
                        break;
1212
                    }
1213
                  break;
1214
                case 0x0c:
1215
                    GETBYTE ();
1216
                    switch (op[3] & 0x00)
1217
                    {
1218
                      case 0x00:
1219
                        goto op_semantics_14;
1220
                        break;
1221
                    }
1222
                  break;
1223
                case 0x0d:
1224
                    GETBYTE ();
1225
                    switch (op[3] & 0x00)
1226
                    {
1227
                      case 0x00:
1228
                        goto op_semantics_15;
1229
                        break;
1230
                    }
1231
                  break;
1232
                case 0x10:
1233
                    GETBYTE ();
1234
                    switch (op[3] & 0x00)
1235
                    {
1236
                      case 0x00:
1237
                        goto op_semantics_16;
1238
                        break;
1239
                    }
1240
                  break;
1241
                case 0x11:
1242
                    GETBYTE ();
1243
                    switch (op[3] & 0x00)
1244
                    {
1245
                      case 0x00:
1246
                        goto op_semantics_17;
1247
                        break;
1248
                    }
1249
                  break;
1250
                default: UNSUPPORTED(); break;
1251
              }
1252
            break;
1253
          case 0x22:
1254
              GETBYTE ();
1255
              switch (op[2] & 0xff)
1256
              {
1257
                case 0x00:
1258
                    GETBYTE ();
1259
                    switch (op[3] & 0x00)
1260
                    {
1261
                      case 0x00:
1262
                        goto op_semantics_7;
1263
                        break;
1264
                    }
1265
                  break;
1266
                case 0x04:
1267
                    GETBYTE ();
1268
                    switch (op[3] & 0x00)
1269
                    {
1270
                      case 0x00:
1271
                        goto op_semantics_8;
1272
                        break;
1273
                    }
1274
                  break;
1275
                case 0x05:
1276
                    GETBYTE ();
1277
                    switch (op[3] & 0x00)
1278
                    {
1279
                      case 0x00:
1280
                        goto op_semantics_9;
1281
                        break;
1282
                    }
1283
                  break;
1284
                case 0x06:
1285
                    GETBYTE ();
1286
                    switch (op[3] & 0x00)
1287
                    {
1288
                      case 0x00:
1289
                        goto op_semantics_10;
1290
                        break;
1291
                    }
1292
                  break;
1293
                case 0x07:
1294
                    GETBYTE ();
1295
                    switch (op[3] & 0x00)
1296
                    {
1297
                      case 0x00:
1298
                        goto op_semantics_11;
1299
                        break;
1300
                    }
1301
                  break;
1302
                case 0x08:
1303
                    GETBYTE ();
1304
                    switch (op[3] & 0x00)
1305
                    {
1306
                      case 0x00:
1307
                        goto op_semantics_12;
1308
                        break;
1309
                    }
1310
                  break;
1311
                case 0x09:
1312
                    GETBYTE ();
1313
                    switch (op[3] & 0x00)
1314
                    {
1315
                      case 0x00:
1316
                        goto op_semantics_13;
1317
                        break;
1318
                    }
1319
                  break;
1320
                case 0x0c:
1321
                    GETBYTE ();
1322
                    switch (op[3] & 0x00)
1323
                    {
1324
                      case 0x00:
1325
                        goto op_semantics_14;
1326
                        break;
1327
                    }
1328
                  break;
1329
                case 0x0d:
1330
                    GETBYTE ();
1331
                    switch (op[3] & 0x00)
1332
                    {
1333
                      case 0x00:
1334
                        goto op_semantics_15;
1335
                        break;
1336
                    }
1337
                  break;
1338
                case 0x10:
1339
                    GETBYTE ();
1340
                    switch (op[3] & 0x00)
1341
                    {
1342
                      case 0x00:
1343
                        goto op_semantics_16;
1344
                        break;
1345
                    }
1346
                  break;
1347
                case 0x11:
1348
                    GETBYTE ();
1349
                    switch (op[3] & 0x00)
1350
                    {
1351
                      case 0x00:
1352
                        goto op_semantics_17;
1353
                        break;
1354
                    }
1355
                  break;
1356
                default: UNSUPPORTED(); break;
1357
              }
1358
            break;
1359
          case 0x23:
1360
              GETBYTE ();
1361
              switch (op[2] & 0xff)
1362
              {
1363
                case 0x00:
1364
                    GETBYTE ();
1365
                    switch (op[3] & 0x00)
1366
                    {
1367
                      case 0x00:
1368
                        goto op_semantics_7;
1369
                        break;
1370
                    }
1371
                  break;
1372
                case 0x04:
1373
                    GETBYTE ();
1374
                    switch (op[3] & 0x00)
1375
                    {
1376
                      case 0x00:
1377
                        goto op_semantics_8;
1378
                        break;
1379
                    }
1380
                  break;
1381
                case 0x05:
1382
                    GETBYTE ();
1383
                    switch (op[3] & 0x00)
1384
                    {
1385
                      case 0x00:
1386
                        goto op_semantics_9;
1387
                        break;
1388
                    }
1389
                  break;
1390
                case 0x06:
1391
                    GETBYTE ();
1392
                    switch (op[3] & 0x00)
1393
                    {
1394
                      case 0x00:
1395
                        goto op_semantics_10;
1396
                        break;
1397
                    }
1398
                  break;
1399
                case 0x07:
1400
                    GETBYTE ();
1401
                    switch (op[3] & 0x00)
1402
                    {
1403
                      case 0x00:
1404
                        goto op_semantics_11;
1405
                        break;
1406
                    }
1407
                  break;
1408
                case 0x08:
1409
                    GETBYTE ();
1410
                    switch (op[3] & 0x00)
1411
                    {
1412
                      case 0x00:
1413
                        goto op_semantics_12;
1414
                        break;
1415
                    }
1416
                  break;
1417
                case 0x09:
1418
                    GETBYTE ();
1419
                    switch (op[3] & 0x00)
1420
                    {
1421
                      case 0x00:
1422
                        goto op_semantics_13;
1423
                        break;
1424
                    }
1425
                  break;
1426
                case 0x0c:
1427
                    GETBYTE ();
1428
                    switch (op[3] & 0x00)
1429
                    {
1430
                      case 0x00:
1431
                        goto op_semantics_14;
1432
                        break;
1433
                    }
1434
                  break;
1435
                case 0x0d:
1436
                    GETBYTE ();
1437
                    switch (op[3] & 0x00)
1438
                    {
1439
                      case 0x00:
1440
                        goto op_semantics_15;
1441
                        break;
1442
                    }
1443
                  break;
1444
                case 0x10:
1445
                    GETBYTE ();
1446
                    switch (op[3] & 0x00)
1447
                    {
1448
                      case 0x00:
1449
                        goto op_semantics_16;
1450
                        break;
1451
                    }
1452
                  break;
1453
                case 0x11:
1454
                    GETBYTE ();
1455
                    switch (op[3] & 0x00)
1456
                    {
1457
                      case 0x00:
1458
                        goto op_semantics_17;
1459
                        break;
1460
                    }
1461
                  break;
1462
                default: UNSUPPORTED(); break;
1463
              }
1464
            break;
1465
          case 0x40:
1466
              GETBYTE ();
1467
              switch (op[2] & 0x00)
1468
              {
1469
                case 0x00:
1470
                  goto op_semantics_1;
1471
                  break;
1472
              }
1473
            break;
1474
          case 0x41:
1475
              GETBYTE ();
1476
              switch (op[2] & 0x00)
1477
              {
1478
                case 0x00:
1479
                  goto op_semantics_1;
1480
                  break;
1481
              }
1482
            break;
1483
          case 0x42:
1484
              GETBYTE ();
1485
              switch (op[2] & 0x00)
1486
              {
1487
                case 0x00:
1488
                  goto op_semantics_1;
1489
                  break;
1490
              }
1491
            break;
1492
          case 0x43:
1493
              GETBYTE ();
1494
              switch (op[2] & 0x00)
1495
              {
1496
                case 0x00:
1497
                  goto op_semantics_1;
1498
                  break;
1499
              }
1500
            break;
1501
          case 0x44:
1502
              GETBYTE ();
1503
              switch (op[2] & 0x00)
1504
              {
1505
                case 0x00:
1506
                  goto op_semantics_2;
1507
                  break;
1508
              }
1509
            break;
1510
          case 0x45:
1511
              GETBYTE ();
1512
              switch (op[2] & 0x00)
1513
              {
1514
                case 0x00:
1515
                  goto op_semantics_2;
1516
                  break;
1517
              }
1518
            break;
1519
          case 0x46:
1520
              GETBYTE ();
1521
              switch (op[2] & 0x00)
1522
              {
1523
                case 0x00:
1524
                  goto op_semantics_2;
1525
                  break;
1526
              }
1527
            break;
1528
          case 0x47:
1529
              GETBYTE ();
1530
              switch (op[2] & 0x00)
1531
              {
1532
                case 0x00:
1533
                  goto op_semantics_2;
1534
                  break;
1535
              }
1536
            break;
1537
          case 0x48:
1538
              GETBYTE ();
1539
              switch (op[2] & 0x00)
1540
              {
1541
                case 0x00:
1542
                  goto op_semantics_3;
1543
                  break;
1544
              }
1545
            break;
1546
          case 0x49:
1547
              GETBYTE ();
1548
              switch (op[2] & 0x00)
1549
              {
1550
                case 0x00:
1551
                  goto op_semantics_3;
1552
                  break;
1553
              }
1554
            break;
1555
          case 0x4a:
1556
              GETBYTE ();
1557
              switch (op[2] & 0x00)
1558
              {
1559
                case 0x00:
1560
                  goto op_semantics_3;
1561
                  break;
1562
              }
1563
            break;
1564
          case 0x4b:
1565
              GETBYTE ();
1566
              switch (op[2] & 0x00)
1567
              {
1568
                case 0x00:
1569
                  goto op_semantics_3;
1570
                  break;
1571
              }
1572
            break;
1573
          case 0x4c:
1574
              GETBYTE ();
1575
              switch (op[2] & 0x00)
1576
              {
1577
                case 0x00:
1578
                  goto op_semantics_4;
1579
                  break;
1580
              }
1581
            break;
1582
          case 0x4d:
1583
              GETBYTE ();
1584
              switch (op[2] & 0x00)
1585
              {
1586
                case 0x00:
1587
                  goto op_semantics_4;
1588
                  break;
1589
              }
1590
            break;
1591
          case 0x4e:
1592
              GETBYTE ();
1593
              switch (op[2] & 0x00)
1594
              {
1595
                case 0x00:
1596
                  goto op_semantics_4;
1597
                  break;
1598
              }
1599
            break;
1600
          case 0x4f:
1601
              GETBYTE ();
1602
              switch (op[2] & 0x00)
1603
              {
1604
                case 0x00:
1605
                  goto op_semantics_4;
1606
                  break;
1607
              }
1608
            break;
1609
          case 0x50:
1610
              GETBYTE ();
1611
              switch (op[2] & 0x00)
1612
              {
1613
                case 0x00:
1614
                  goto op_semantics_5;
1615
                  break;
1616
              }
1617
            break;
1618
          case 0x51:
1619
              GETBYTE ();
1620
              switch (op[2] & 0x00)
1621
              {
1622
                case 0x00:
1623
                  goto op_semantics_5;
1624
                  break;
1625
              }
1626
            break;
1627
          case 0x52:
1628
              GETBYTE ();
1629
              switch (op[2] & 0x00)
1630
              {
1631
                case 0x00:
1632
                  goto op_semantics_5;
1633
                  break;
1634
              }
1635
            break;
1636
          case 0x53:
1637
              GETBYTE ();
1638
              switch (op[2] & 0x00)
1639
              {
1640
                case 0x00:
1641
                  goto op_semantics_5;
1642
                  break;
1643
              }
1644
            break;
1645
          case 0x54:
1646
              GETBYTE ();
1647
              switch (op[2] & 0x00)
1648
              {
1649
                case 0x00:
1650
                  goto op_semantics_6;
1651
                  break;
1652
              }
1653
            break;
1654
          case 0x55:
1655
              GETBYTE ();
1656
              switch (op[2] & 0x00)
1657
              {
1658
                case 0x00:
1659
                  goto op_semantics_6;
1660
                  break;
1661
              }
1662
            break;
1663
          case 0x56:
1664
              GETBYTE ();
1665
              switch (op[2] & 0x00)
1666
              {
1667
                case 0x00:
1668
                  goto op_semantics_6;
1669
                  break;
1670
              }
1671
            break;
1672
          case 0x57:
1673
              GETBYTE ();
1674
              switch (op[2] & 0x00)
1675
              {
1676
                case 0x00:
1677
                  goto op_semantics_6;
1678
                  break;
1679
              }
1680
            break;
1681
          case 0x60:
1682
              GETBYTE ();
1683
              switch (op[2] & 0xff)
1684
              {
1685
                case 0x00:
1686
                    GETBYTE ();
1687
                    switch (op[3] & 0x00)
1688
                    {
1689
                      case 0x00:
1690
                        goto op_semantics_7;
1691
                        break;
1692
                    }
1693
                  break;
1694
                case 0x04:
1695
                    GETBYTE ();
1696
                    switch (op[3] & 0x00)
1697
                    {
1698
                      case 0x00:
1699
                        goto op_semantics_8;
1700
                        break;
1701
                    }
1702
                  break;
1703
                case 0x05:
1704
                    GETBYTE ();
1705
                    switch (op[3] & 0x00)
1706
                    {
1707
                      case 0x00:
1708
                        goto op_semantics_9;
1709
                        break;
1710
                    }
1711
                  break;
1712
                case 0x06:
1713
                    GETBYTE ();
1714
                    switch (op[3] & 0x00)
1715
                    {
1716
                      case 0x00:
1717
                        goto op_semantics_10;
1718
                        break;
1719
                    }
1720
                  break;
1721
                case 0x07:
1722
                    GETBYTE ();
1723
                    switch (op[3] & 0x00)
1724
                    {
1725
                      case 0x00:
1726
                        goto op_semantics_11;
1727
                        break;
1728
                    }
1729
                  break;
1730
                case 0x08:
1731
                    GETBYTE ();
1732
                    switch (op[3] & 0x00)
1733
                    {
1734
                      case 0x00:
1735
                        goto op_semantics_12;
1736
                        break;
1737
                    }
1738
                  break;
1739
                case 0x09:
1740
                    GETBYTE ();
1741
                    switch (op[3] & 0x00)
1742
                    {
1743
                      case 0x00:
1744
                        goto op_semantics_13;
1745
                        break;
1746
                    }
1747
                  break;
1748
                case 0x0c:
1749
                    GETBYTE ();
1750
                    switch (op[3] & 0x00)
1751
                    {
1752
                      case 0x00:
1753
                        goto op_semantics_14;
1754
                        break;
1755
                    }
1756
                  break;
1757
                case 0x0d:
1758
                    GETBYTE ();
1759
                    switch (op[3] & 0x00)
1760
                    {
1761
                      case 0x00:
1762
                        goto op_semantics_15;
1763
                        break;
1764
                    }
1765
                  break;
1766
                case 0x10:
1767
                    GETBYTE ();
1768
                    switch (op[3] & 0x00)
1769
                    {
1770
                      case 0x00:
1771
                        goto op_semantics_16;
1772
                        break;
1773
                    }
1774
                  break;
1775
                case 0x11:
1776
                    GETBYTE ();
1777
                    switch (op[3] & 0x00)
1778
                    {
1779
                      case 0x00:
1780
                        goto op_semantics_17;
1781
                        break;
1782
                    }
1783
                  break;
1784
                default: UNSUPPORTED(); break;
1785
              }
1786
            break;
1787
          case 0x61:
1788
              GETBYTE ();
1789
              switch (op[2] & 0xff)
1790
              {
1791
                case 0x00:
1792
                    GETBYTE ();
1793
                    switch (op[3] & 0x00)
1794
                    {
1795
                      case 0x00:
1796
                        goto op_semantics_7;
1797
                        break;
1798
                    }
1799
                  break;
1800
                case 0x04:
1801
                    GETBYTE ();
1802
                    switch (op[3] & 0x00)
1803
                    {
1804
                      case 0x00:
1805
                        goto op_semantics_8;
1806
                        break;
1807
                    }
1808
                  break;
1809
                case 0x05:
1810
                    GETBYTE ();
1811
                    switch (op[3] & 0x00)
1812
                    {
1813
                      case 0x00:
1814
                        goto op_semantics_9;
1815
                        break;
1816
                    }
1817
                  break;
1818
                case 0x06:
1819
                    GETBYTE ();
1820
                    switch (op[3] & 0x00)
1821
                    {
1822
                      case 0x00:
1823
                        goto op_semantics_10;
1824
                        break;
1825
                    }
1826
                  break;
1827
                case 0x07:
1828
                    GETBYTE ();
1829
                    switch (op[3] & 0x00)
1830
                    {
1831
                      case 0x00:
1832
                        goto op_semantics_11;
1833
                        break;
1834
                    }
1835
                  break;
1836
                case 0x08:
1837
                    GETBYTE ();
1838
                    switch (op[3] & 0x00)
1839
                    {
1840
                      case 0x00:
1841
                        goto op_semantics_12;
1842
                        break;
1843
                    }
1844
                  break;
1845
                case 0x09:
1846
                    GETBYTE ();
1847
                    switch (op[3] & 0x00)
1848
                    {
1849
                      case 0x00:
1850
                        goto op_semantics_13;
1851
                        break;
1852
                    }
1853
                  break;
1854
                case 0x0c:
1855
                    GETBYTE ();
1856
                    switch (op[3] & 0x00)
1857
                    {
1858
                      case 0x00:
1859
                        goto op_semantics_14;
1860
                        break;
1861
                    }
1862
                  break;
1863
                case 0x0d:
1864
                    GETBYTE ();
1865
                    switch (op[3] & 0x00)
1866
                    {
1867
                      case 0x00:
1868
                        goto op_semantics_15;
1869
                        break;
1870
                    }
1871
                  break;
1872
                case 0x10:
1873
                    GETBYTE ();
1874
                    switch (op[3] & 0x00)
1875
                    {
1876
                      case 0x00:
1877
                        goto op_semantics_16;
1878
                        break;
1879
                    }
1880
                  break;
1881
                case 0x11:
1882
                    GETBYTE ();
1883
                    switch (op[3] & 0x00)
1884
                    {
1885
                      case 0x00:
1886
                        goto op_semantics_17;
1887
                        break;
1888
                    }
1889
                  break;
1890
                default: UNSUPPORTED(); break;
1891
              }
1892
            break;
1893
          case 0x62:
1894
              GETBYTE ();
1895
              switch (op[2] & 0xff)
1896
              {
1897
                case 0x00:
1898
                    GETBYTE ();
1899
                    switch (op[3] & 0x00)
1900
                    {
1901
                      case 0x00:
1902
                        goto op_semantics_7;
1903
                        break;
1904
                    }
1905
                  break;
1906
                case 0x04:
1907
                    GETBYTE ();
1908
                    switch (op[3] & 0x00)
1909
                    {
1910
                      case 0x00:
1911
                        goto op_semantics_8;
1912
                        break;
1913
                    }
1914
                  break;
1915
                case 0x05:
1916
                    GETBYTE ();
1917
                    switch (op[3] & 0x00)
1918
                    {
1919
                      case 0x00:
1920
                        goto op_semantics_9;
1921
                        break;
1922
                    }
1923
                  break;
1924
                case 0x06:
1925
                    GETBYTE ();
1926
                    switch (op[3] & 0x00)
1927
                    {
1928
                      case 0x00:
1929
                        goto op_semantics_10;
1930
                        break;
1931
                    }
1932
                  break;
1933
                case 0x07:
1934
                    GETBYTE ();
1935
                    switch (op[3] & 0x00)
1936
                    {
1937
                      case 0x00:
1938
                        goto op_semantics_11;
1939
                        break;
1940
                    }
1941
                  break;
1942
                case 0x08:
1943
                    GETBYTE ();
1944
                    switch (op[3] & 0x00)
1945
                    {
1946
                      case 0x00:
1947
                        goto op_semantics_12;
1948
                        break;
1949
                    }
1950
                  break;
1951
                case 0x09:
1952
                    GETBYTE ();
1953
                    switch (op[3] & 0x00)
1954
                    {
1955
                      case 0x00:
1956
                        goto op_semantics_13;
1957
                        break;
1958
                    }
1959
                  break;
1960
                case 0x0c:
1961
                    GETBYTE ();
1962
                    switch (op[3] & 0x00)
1963
                    {
1964
                      case 0x00:
1965
                        goto op_semantics_14;
1966
                        break;
1967
                    }
1968
                  break;
1969
                case 0x0d:
1970
                    GETBYTE ();
1971
                    switch (op[3] & 0x00)
1972
                    {
1973
                      case 0x00:
1974
                        goto op_semantics_15;
1975
                        break;
1976
                    }
1977
                  break;
1978
                case 0x10:
1979
                    GETBYTE ();
1980
                    switch (op[3] & 0x00)
1981
                    {
1982
                      case 0x00:
1983
                        goto op_semantics_16;
1984
                        break;
1985
                    }
1986
                  break;
1987
                case 0x11:
1988
                    GETBYTE ();
1989
                    switch (op[3] & 0x00)
1990
                    {
1991
                      case 0x00:
1992
                        goto op_semantics_17;
1993
                        break;
1994
                    }
1995
                  break;
1996
                default: UNSUPPORTED(); break;
1997
              }
1998
            break;
1999
          case 0x63:
2000
              GETBYTE ();
2001
              switch (op[2] & 0xff)
2002
              {
2003
                case 0x00:
2004
                    GETBYTE ();
2005
                    switch (op[3] & 0x00)
2006
                    {
2007
                      case 0x00:
2008
                        goto op_semantics_7;
2009
                        break;
2010
                    }
2011
                  break;
2012
                case 0x04:
2013
                    GETBYTE ();
2014
                    switch (op[3] & 0x00)
2015
                    {
2016
                      case 0x00:
2017
                        goto op_semantics_8;
2018
                        break;
2019
                    }
2020
                  break;
2021
                case 0x05:
2022
                    GETBYTE ();
2023
                    switch (op[3] & 0x00)
2024
                    {
2025
                      case 0x00:
2026
                        goto op_semantics_9;
2027
                        break;
2028
                    }
2029
                  break;
2030
                case 0x06:
2031
                    GETBYTE ();
2032
                    switch (op[3] & 0x00)
2033
                    {
2034
                      case 0x00:
2035
                        goto op_semantics_10;
2036
                        break;
2037
                    }
2038
                  break;
2039
                case 0x07:
2040
                    GETBYTE ();
2041
                    switch (op[3] & 0x00)
2042
                    {
2043
                      case 0x00:
2044
                        goto op_semantics_11;
2045
                        break;
2046
                    }
2047
                  break;
2048
                case 0x08:
2049
                    GETBYTE ();
2050
                    switch (op[3] & 0x00)
2051
                    {
2052
                      case 0x00:
2053
                        goto op_semantics_12;
2054
                        break;
2055
                    }
2056
                  break;
2057
                case 0x09:
2058
                    GETBYTE ();
2059
                    switch (op[3] & 0x00)
2060
                    {
2061
                      case 0x00:
2062
                        goto op_semantics_13;
2063
                        break;
2064
                    }
2065
                  break;
2066
                case 0x0c:
2067
                    GETBYTE ();
2068
                    switch (op[3] & 0x00)
2069
                    {
2070
                      case 0x00:
2071
                        goto op_semantics_14;
2072
                        break;
2073
                    }
2074
                  break;
2075
                case 0x0d:
2076
                    GETBYTE ();
2077
                    switch (op[3] & 0x00)
2078
                    {
2079
                      case 0x00:
2080
                        goto op_semantics_15;
2081
                        break;
2082
                    }
2083
                  break;
2084
                case 0x10:
2085
                    GETBYTE ();
2086
                    switch (op[3] & 0x00)
2087
                    {
2088
                      case 0x00:
2089
                        goto op_semantics_16;
2090
                        break;
2091
                    }
2092
                  break;
2093
                case 0x11:
2094
                    GETBYTE ();
2095
                    switch (op[3] & 0x00)
2096
                    {
2097
                      case 0x00:
2098
                        goto op_semantics_17;
2099
                        break;
2100
                    }
2101
                  break;
2102
                default: UNSUPPORTED(); break;
2103
              }
2104
            break;
2105
          case 0x80:
2106
              GETBYTE ();
2107
              switch (op[2] & 0x00)
2108
              {
2109
                case 0x00:
2110
                  goto op_semantics_1;
2111
                  break;
2112
              }
2113
            break;
2114
          case 0x81:
2115
              GETBYTE ();
2116
              switch (op[2] & 0x00)
2117
              {
2118
                case 0x00:
2119
                  goto op_semantics_1;
2120
                  break;
2121
              }
2122
            break;
2123
          case 0x82:
2124
              GETBYTE ();
2125
              switch (op[2] & 0x00)
2126
              {
2127
                case 0x00:
2128
                  goto op_semantics_1;
2129
                  break;
2130
              }
2131
            break;
2132
          case 0x83:
2133
              GETBYTE ();
2134
              switch (op[2] & 0x00)
2135
              {
2136
                case 0x00:
2137
                  goto op_semantics_1;
2138
                  break;
2139
              }
2140
            break;
2141
          case 0x84:
2142
              GETBYTE ();
2143
              switch (op[2] & 0x00)
2144
              {
2145
                case 0x00:
2146
                  goto op_semantics_2;
2147
                  break;
2148
              }
2149
            break;
2150
          case 0x85:
2151
              GETBYTE ();
2152
              switch (op[2] & 0x00)
2153
              {
2154
                case 0x00:
2155
                  goto op_semantics_2;
2156
                  break;
2157
              }
2158
            break;
2159
          case 0x86:
2160
              GETBYTE ();
2161
              switch (op[2] & 0x00)
2162
              {
2163
                case 0x00:
2164
                  goto op_semantics_2;
2165
                  break;
2166
              }
2167
            break;
2168
          case 0x87:
2169
              GETBYTE ();
2170
              switch (op[2] & 0x00)
2171
              {
2172
                case 0x00:
2173
                  goto op_semantics_2;
2174
                  break;
2175
              }
2176
            break;
2177
          case 0x88:
2178
              GETBYTE ();
2179
              switch (op[2] & 0x00)
2180
              {
2181
                case 0x00:
2182
                  goto op_semantics_3;
2183
                  break;
2184
              }
2185
            break;
2186
          case 0x89:
2187
              GETBYTE ();
2188
              switch (op[2] & 0x00)
2189
              {
2190
                case 0x00:
2191
                  goto op_semantics_3;
2192
                  break;
2193
              }
2194
            break;
2195
          case 0x8a:
2196
              GETBYTE ();
2197
              switch (op[2] & 0x00)
2198
              {
2199
                case 0x00:
2200
                  goto op_semantics_3;
2201
                  break;
2202
              }
2203
            break;
2204
          case 0x8b:
2205
              GETBYTE ();
2206
              switch (op[2] & 0x00)
2207
              {
2208
                case 0x00:
2209
                  goto op_semantics_3;
2210
                  break;
2211
              }
2212
            break;
2213
          case 0x8c:
2214
              GETBYTE ();
2215
              switch (op[2] & 0x00)
2216
              {
2217
                case 0x00:
2218
                  goto op_semantics_4;
2219
                  break;
2220
              }
2221
            break;
2222
          case 0x8d:
2223
              GETBYTE ();
2224
              switch (op[2] & 0x00)
2225
              {
2226
                case 0x00:
2227
                  goto op_semantics_4;
2228
                  break;
2229
              }
2230
            break;
2231
          case 0x8e:
2232
              GETBYTE ();
2233
              switch (op[2] & 0x00)
2234
              {
2235
                case 0x00:
2236
                  goto op_semantics_4;
2237
                  break;
2238
              }
2239
            break;
2240
          case 0x8f:
2241
              GETBYTE ();
2242
              switch (op[2] & 0x00)
2243
              {
2244
                case 0x00:
2245
                  goto op_semantics_4;
2246
                  break;
2247
              }
2248
            break;
2249
          case 0x90:
2250
              GETBYTE ();
2251
              switch (op[2] & 0x00)
2252
              {
2253
                case 0x00:
2254
                  goto op_semantics_5;
2255
                  break;
2256
              }
2257
            break;
2258
          case 0x91:
2259
              GETBYTE ();
2260
              switch (op[2] & 0x00)
2261
              {
2262
                case 0x00:
2263
                  goto op_semantics_5;
2264
                  break;
2265
              }
2266
            break;
2267
          case 0x92:
2268
              GETBYTE ();
2269
              switch (op[2] & 0x00)
2270
              {
2271
                case 0x00:
2272
                  goto op_semantics_5;
2273
                  break;
2274
              }
2275
            break;
2276
          case 0x93:
2277
              GETBYTE ();
2278
              switch (op[2] & 0x00)
2279
              {
2280
                case 0x00:
2281
                  goto op_semantics_5;
2282
                  break;
2283
              }
2284
            break;
2285
          case 0x94:
2286
              GETBYTE ();
2287
              switch (op[2] & 0x00)
2288
              {
2289
                case 0x00:
2290
                  goto op_semantics_6;
2291
                  break;
2292
              }
2293
            break;
2294
          case 0x95:
2295
              GETBYTE ();
2296
              switch (op[2] & 0x00)
2297
              {
2298
                case 0x00:
2299
                  goto op_semantics_6;
2300
                  break;
2301
              }
2302
            break;
2303
          case 0x96:
2304
              GETBYTE ();
2305
              switch (op[2] & 0x00)
2306
              {
2307
                case 0x00:
2308
                  goto op_semantics_6;
2309
                  break;
2310
              }
2311
            break;
2312
          case 0x97:
2313
              GETBYTE ();
2314
              switch (op[2] & 0x00)
2315
              {
2316
                case 0x00:
2317
                  goto op_semantics_6;
2318
                  break;
2319
              }
2320
            break;
2321
          case 0xa0:
2322
              GETBYTE ();
2323
              switch (op[2] & 0xff)
2324
              {
2325
                case 0x00:
2326
                    GETBYTE ();
2327
                    switch (op[3] & 0x00)
2328
                    {
2329
                      case 0x00:
2330
                        goto op_semantics_7;
2331
                        break;
2332
                    }
2333
                  break;
2334
                case 0x02:
2335
                    GETBYTE ();
2336
                    switch (op[3] & 0x00)
2337
                    {
2338
                      case 0x00:
2339
                        op_semantics_18:
2340
                          {
2341
                            /** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc     %1%S1, %0 */
2342
#line 458 "rx-decode.opc"
2343
                            int ss AU = op[1] & 0x03;
2344
#line 458 "rx-decode.opc"
2345
                            int rsrc AU = (op[3] >> 4) & 0x0f;
2346
#line 458 "rx-decode.opc"
2347
                            int rdst AU = op[3] & 0x0f;
2348
                            if (trace)
2349
                              {
2350
                                printf ("\033[33m%s\033[0m  %02x %02x %02x %02x\n",
2351
                                       "/** 0000 0110 1010 00ss 0000 0010 rsrc rdst     adc     %1%S1, %0 */",
2352
                                       op[0], op[1], op[2], op[3]);
2353
                                printf ("  ss = 0x%x,", ss);
2354
                                printf ("  rsrc = 0x%x,", rsrc);
2355
                                printf ("  rdst = 0x%x\n", rdst);
2356
                              }
2357
                            SYNTAX("adc %1%S1, %0");
2358
#line 458 "rx-decode.opc"
2359
                            ID(adc); SPm(ss, rsrc, 2); DR(rdst); F_OSZC;
2360
 
2361
                          /*----------------------------------------------------------------------*/
2362
                          /* ADD                                                                        */
2363
 
2364
                          }
2365
                        break;
2366
                    }
2367
                  break;
2368
                case 0x04:
2369
                    GETBYTE ();
2370
                    switch (op[3] & 0x00)
2371
                    {
2372
                      case 0x00:
2373
                        goto op_semantics_8;
2374
                        break;
2375
                    }
2376
                  break;
2377
                case 0x05:
2378
                    GETBYTE ();
2379
                    switch (op[3] & 0x00)
2380
                    {
2381
                      case 0x00:
2382
                        goto op_semantics_9;
2383
                        break;
2384
                    }
2385
                  break;
2386
                case 0x06:
2387
                    GETBYTE ();
2388
                    switch (op[3] & 0x00)
2389
                    {
2390
                      case 0x00:
2391
                        goto op_semantics_10;
2392
                        break;
2393
                    }
2394
                  break;
2395
                case 0x07:
2396
                    GETBYTE ();
2397
                    switch (op[3] & 0x00)
2398
                    {
2399
                      case 0x00:
2400
                        goto op_semantics_11;
2401
                        break;
2402
                    }
2403
                  break;
2404
                case 0x08:
2405
                    GETBYTE ();
2406
                    switch (op[3] & 0x00)
2407
                    {
2408
                      case 0x00:
2409
                        goto op_semantics_12;
2410
                        break;
2411
                    }
2412
                  break;
2413
                case 0x09:
2414
                    GETBYTE ();
2415
                    switch (op[3] & 0x00)
2416
                    {
2417
                      case 0x00:
2418
                        goto op_semantics_13;
2419
                        break;
2420
                    }
2421
                  break;
2422
                case 0x0c:
2423
                    GETBYTE ();
2424
                    switch (op[3] & 0x00)
2425
                    {
2426
                      case 0x00:
2427
                        goto op_semantics_14;
2428
                        break;
2429
                    }
2430
                  break;
2431
                case 0x0d:
2432
                    GETBYTE ();
2433
                    switch (op[3] & 0x00)
2434
                    {
2435
                      case 0x00:
2436
                        goto op_semantics_15;
2437
                        break;
2438
                    }
2439
                  break;
2440
                case 0x10:
2441
                    GETBYTE ();
2442
                    switch (op[3] & 0x00)
2443
                    {
2444
                      case 0x00:
2445
                        goto op_semantics_16;
2446
                        break;
2447
                    }
2448
                  break;
2449
                case 0x11:
2450
                    GETBYTE ();
2451
                    switch (op[3] & 0x00)
2452
                    {
2453
                      case 0x00:
2454
                        goto op_semantics_17;
2455
                        break;
2456
                    }
2457
                  break;
2458
                default: UNSUPPORTED(); break;
2459
              }
2460
            break;
2461
          case 0xa1:
2462
              GETBYTE ();
2463
              switch (op[2] & 0xff)
2464
              {
2465
                case 0x00:
2466
                    GETBYTE ();
2467
                    switch (op[3] & 0x00)
2468
                    {
2469
                      case 0x00:
2470
                        goto op_semantics_7;
2471
                        break;
2472
                    }
2473
                  break;
2474
                case 0x02:
2475
                    GETBYTE ();
2476
                    switch (op[3] & 0x00)
2477
                    {
2478
                      case 0x00:
2479
                        goto op_semantics_18;
2480
                        break;
2481
                    }
2482
                  break;
2483
                case 0x04:
2484
                    GETBYTE ();
2485
                    switch (op[3] & 0x00)
2486
                    {
2487
                      case 0x00:
2488
                        goto op_semantics_8;
2489
                        break;
2490
                    }
2491
                  break;
2492
                case 0x05:
2493
                    GETBYTE ();
2494
                    switch (op[3] & 0x00)
2495
                    {
2496
                      case 0x00:
2497
                        goto op_semantics_9;
2498
                        break;
2499
                    }
2500
                  break;
2501
                case 0x06:
2502
                    GETBYTE ();
2503
                    switch (op[3] & 0x00)
2504
                    {
2505
                      case 0x00:
2506
                        goto op_semantics_10;
2507
                        break;
2508
                    }
2509
                  break;
2510
                case 0x07:
2511
                    GETBYTE ();
2512
                    switch (op[3] & 0x00)
2513
                    {
2514
                      case 0x00:
2515
                        goto op_semantics_11;
2516
                        break;
2517
                    }
2518
                  break;
2519
                case 0x08:
2520
                    GETBYTE ();
2521
                    switch (op[3] & 0x00)
2522
                    {
2523
                      case 0x00:
2524
                        goto op_semantics_12;
2525
                        break;
2526
                    }
2527
                  break;
2528
                case 0x09:
2529
                    GETBYTE ();
2530
                    switch (op[3] & 0x00)
2531
                    {
2532
                      case 0x00:
2533
                        goto op_semantics_13;
2534
                        break;
2535
                    }
2536
                  break;
2537
                case 0x0c:
2538
                    GETBYTE ();
2539
                    switch (op[3] & 0x00)
2540
                    {
2541
                      case 0x00:
2542
                        goto op_semantics_14;
2543
                        break;
2544
                    }
2545
                  break;
2546
                case 0x0d:
2547
                    GETBYTE ();
2548
                    switch (op[3] & 0x00)
2549
                    {
2550
                      case 0x00:
2551
                        goto op_semantics_15;
2552
                        break;
2553
                    }
2554
                  break;
2555
                case 0x10:
2556
                    GETBYTE ();
2557
                    switch (op[3] & 0x00)
2558
                    {
2559
                      case 0x00:
2560
                        goto op_semantics_16;
2561
                        break;
2562
                    }
2563
                  break;
2564
                case 0x11:
2565
                    GETBYTE ();
2566
                    switch (op[3] & 0x00)
2567
                    {
2568
                      case 0x00:
2569
                        goto op_semantics_17;
2570
                        break;
2571
                    }
2572
                  break;
2573
                default: UNSUPPORTED(); break;
2574
              }
2575
            break;
2576
          case 0xa2:
2577
              GETBYTE ();
2578
              switch (op[2] & 0xff)
2579
              {
2580
                case 0x00:
2581
                    GETBYTE ();
2582
                    switch (op[3] & 0x00)
2583
                    {
2584
                      case 0x00:
2585
                        goto op_semantics_7;
2586
                        break;
2587
                    }
2588
                  break;
2589
                case 0x02:
2590
                    GETBYTE ();
2591
                    switch (op[3] & 0x00)
2592
                    {
2593
                      case 0x00:
2594
                        goto op_semantics_18;
2595
                        break;
2596
                    }
2597
                  break;
2598
                case 0x04:
2599
                    GETBYTE ();
2600
                    switch (op[3] & 0x00)
2601
                    {
2602
                      case 0x00:
2603
                        goto op_semantics_8;
2604
                        break;
2605
                    }
2606
                  break;
2607
                case 0x05:
2608
                    GETBYTE ();
2609
                    switch (op[3] & 0x00)
2610
                    {
2611
                      case 0x00:
2612
                        goto op_semantics_9;
2613
                        break;
2614
                    }
2615
                  break;
2616
                case 0x06:
2617
                    GETBYTE ();
2618
                    switch (op[3] & 0x00)
2619
                    {
2620
                      case 0x00:
2621
                        goto op_semantics_10;
2622
                        break;
2623
                    }
2624
                  break;
2625
                case 0x07:
2626
                    GETBYTE ();
2627
                    switch (op[3] & 0x00)
2628
                    {
2629
                      case 0x00:
2630
                        goto op_semantics_11;
2631
                        break;
2632
                    }
2633
                  break;
2634
                case 0x08:
2635
                    GETBYTE ();
2636
                    switch (op[3] & 0x00)
2637
                    {
2638
                      case 0x00:
2639
                        goto op_semantics_12;
2640
                        break;
2641
                    }
2642
                  break;
2643
                case 0x09:
2644
                    GETBYTE ();
2645
                    switch (op[3] & 0x00)
2646
                    {
2647
                      case 0x00:
2648
                        goto op_semantics_13;
2649
                        break;
2650
                    }
2651
                  break;
2652
                case 0x0c:
2653
                    GETBYTE ();
2654
                    switch (op[3] & 0x00)
2655
                    {
2656
                      case 0x00:
2657
                        goto op_semantics_14;
2658
                        break;
2659
                    }
2660
                  break;
2661
                case 0x0d:
2662
                    GETBYTE ();
2663
                    switch (op[3] & 0x00)
2664
                    {
2665
                      case 0x00:
2666
                        goto op_semantics_15;
2667
                        break;
2668
                    }
2669
                  break;
2670
                case 0x10:
2671
                    GETBYTE ();
2672
                    switch (op[3] & 0x00)
2673
                    {
2674
                      case 0x00:
2675
                        goto op_semantics_16;
2676
                        break;
2677
                    }
2678
                  break;
2679
                case 0x11:
2680
                    GETBYTE ();
2681
                    switch (op[3] & 0x00)
2682
                    {
2683
                      case 0x00:
2684
                        goto op_semantics_17;
2685
                        break;
2686
                    }
2687
                  break;
2688
                default: UNSUPPORTED(); break;
2689
              }
2690
            break;
2691
          case 0xa3:
2692
              GETBYTE ();
2693
              switch (op[2] & 0xff)
2694
              {
2695
                case 0x00:
2696
                    GETBYTE ();
2697
                    switch (op[3] & 0x00)
2698
                    {
2699
                      case 0x00:
2700
                        goto op_semantics_7;
2701
                        break;
2702
                    }
2703
                  break;
2704
                case 0x02:
2705
                    GETBYTE ();
2706
                    switch (op[3] & 0x00)
2707
                    {
2708
                      case 0x00:
2709
                        goto op_semantics_18;
2710
                        break;
2711
                    }
2712
                  break;
2713
                case 0x04:
2714
                    GETBYTE ();
2715
                    switch (op[3] & 0x00)
2716
                    {
2717
                      case 0x00:
2718
                        goto op_semantics_8;
2719
                        break;
2720
                    }
2721
                  break;
2722
                case 0x05:
2723
                    GETBYTE ();
2724
                    switch (op[3] & 0x00)
2725
                    {
2726
                      case 0x00:
2727
                        goto op_semantics_9;
2728
                        break;
2729
                    }
2730
                  break;
2731
                case 0x06:
2732
                    GETBYTE ();
2733
                    switch (op[3] & 0x00)
2734
                    {
2735
                      case 0x00:
2736
                        goto op_semantics_10;
2737
                        break;
2738
                    }
2739
                  break;
2740
                case 0x07:
2741
                    GETBYTE ();
2742
                    switch (op[3] & 0x00)
2743
                    {
2744
                      case 0x00:
2745
                        goto op_semantics_11;
2746
                        break;
2747
                    }
2748
                  break;
2749
                case 0x08:
2750
                    GETBYTE ();
2751
                    switch (op[3] & 0x00)
2752
                    {
2753
                      case 0x00:
2754
                        goto op_semantics_12;
2755
                        break;
2756
                    }
2757
                  break;
2758
                case 0x09:
2759
                    GETBYTE ();
2760
                    switch (op[3] & 0x00)
2761
                    {
2762
                      case 0x00:
2763
                        goto op_semantics_13;
2764
                        break;
2765
                    }
2766
                  break;
2767
                case 0x0c:
2768
                    GETBYTE ();
2769
                    switch (op[3] & 0x00)
2770
                    {
2771
                      case 0x00:
2772
                        goto op_semantics_14;
2773
                        break;
2774
                    }
2775
                  break;
2776
                case 0x0d:
2777
                    GETBYTE ();
2778
                    switch (op[3] & 0x00)
2779
                    {
2780
                      case 0x00:
2781
                        goto op_semantics_15;
2782
                        break;
2783
                    }
2784
                  break;
2785
                case 0x10:
2786
                    GETBYTE ();
2787
                    switch (op[3] & 0x00)
2788
                    {
2789
                      case 0x00:
2790
                        goto op_semantics_16;
2791
                        break;
2792
                    }
2793
                  break;
2794
                case 0x11:
2795
                    GETBYTE ();
2796
                    switch (op[3] & 0x00)
2797
                    {
2798
                      case 0x00:
2799
                        goto op_semantics_17;
2800
                        break;
2801
                    }
2802
                  break;
2803
                default: UNSUPPORTED(); break;
2804
              }
2805
            break;
2806
          case 0xc0:
2807
              GETBYTE ();
2808
              switch (op[2] & 0x00)
2809
              {
2810
                case 0x00:
2811
                  goto op_semantics_1;
2812
                  break;
2813
              }
2814
            break;
2815
          case 0xc1:
2816
              GETBYTE ();
2817
              switch (op[2] & 0x00)
2818
              {
2819
                case 0x00:
2820
                  goto op_semantics_1;
2821
                  break;
2822
              }
2823
            break;
2824
          case 0xc2:
2825
              GETBYTE ();
2826
              switch (op[2] & 0x00)
2827
              {
2828
                case 0x00:
2829
                  goto op_semantics_1;
2830
                  break;
2831
              }
2832
            break;
2833
          case 0xc3:
2834
              GETBYTE ();
2835
              switch (op[2] & 0x00)
2836
              {
2837
                case 0x00:
2838
                  goto op_semantics_1;
2839
                  break;
2840
              }
2841
            break;
2842
          case 0xc4:
2843
              GETBYTE ();
2844
              switch (op[2] & 0x00)
2845
              {
2846
                case 0x00:
2847
                  goto op_semantics_2;
2848
                  break;
2849
              }
2850
            break;
2851
          case 0xc5:
2852
              GETBYTE ();
2853
              switch (op[2] & 0x00)
2854
              {
2855
                case 0x00:
2856
                  goto op_semantics_2;
2857
                  break;
2858
              }
2859
            break;
2860
          case 0xc6:
2861
              GETBYTE ();
2862
              switch (op[2] & 0x00)
2863
              {
2864
                case 0x00:
2865
                  goto op_semantics_2;
2866
                  break;
2867
              }
2868
            break;
2869
          case 0xc7:
2870
              GETBYTE ();
2871
              switch (op[2] & 0x00)
2872
              {
2873
                case 0x00:
2874
                  goto op_semantics_2;
2875
                  break;
2876
              }
2877
            break;
2878
          case 0xc8:
2879
              GETBYTE ();
2880
              switch (op[2] & 0x00)
2881
              {
2882
                case 0x00:
2883
                  goto op_semantics_3;
2884
                  break;
2885
              }
2886
            break;
2887
          case 0xc9:
2888
              GETBYTE ();
2889
              switch (op[2] & 0x00)
2890
              {
2891
                case 0x00:
2892
                  goto op_semantics_3;
2893
                  break;
2894
              }
2895
            break;
2896
          case 0xca:
2897
              GETBYTE ();
2898
              switch (op[2] & 0x00)
2899
              {
2900
                case 0x00:
2901
                  goto op_semantics_3;
2902
                  break;
2903
              }
2904
            break;
2905
          case 0xcb:
2906
              GETBYTE ();
2907
              switch (op[2] & 0x00)
2908
              {
2909
                case 0x00:
2910
                  goto op_semantics_3;
2911
                  break;
2912
              }
2913
            break;
2914
          case 0xcc:
2915
              GETBYTE ();
2916
              switch (op[2] & 0x00)
2917
              {
2918
                case 0x00:
2919
                  goto op_semantics_4;
2920
                  break;
2921
              }
2922
            break;
2923
          case 0xcd:
2924
              GETBYTE ();
2925
              switch (op[2] & 0x00)
2926
              {
2927
                case 0x00:
2928
                  goto op_semantics_4;
2929
                  break;
2930
              }
2931
            break;
2932
          case 0xce:
2933
              GETBYTE ();
2934
              switch (op[2] & 0x00)
2935
              {
2936
                case 0x00:
2937
                  goto op_semantics_4;
2938
                  break;
2939
              }
2940
            break;
2941
          case 0xcf:
2942
              GETBYTE ();
2943
              switch (op[2] & 0x00)
2944
              {
2945
                case 0x00:
2946
                  goto op_semantics_4;
2947
                  break;
2948
              }
2949
            break;
2950
          case 0xd0:
2951
              GETBYTE ();
2952
              switch (op[2] & 0x00)
2953
              {
2954
                case 0x00:
2955
                  goto op_semantics_5;
2956
                  break;
2957
              }
2958
            break;
2959
          case 0xd1:
2960
              GETBYTE ();
2961
              switch (op[2] & 0x00)
2962
              {
2963
                case 0x00:
2964
                  goto op_semantics_5;
2965
                  break;
2966
              }
2967
            break;
2968
          case 0xd2:
2969
              GETBYTE ();
2970
              switch (op[2] & 0x00)
2971
              {
2972
                case 0x00:
2973
                  goto op_semantics_5;
2974
                  break;
2975
              }
2976
            break;
2977
          case 0xd3:
2978
              GETBYTE ();
2979
              switch (op[2] & 0x00)
2980
              {
2981
                case 0x00:
2982
                  goto op_semantics_5;
2983
                  break;
2984
              }
2985
            break;
2986
          case 0xd4:
2987
              GETBYTE ();
2988
              switch (op[2] & 0x00)
2989
              {
2990
                case 0x00:
2991
                  goto op_semantics_6;
2992
                  break;
2993
              }
2994
            break;
2995
          case 0xd5:
2996
              GETBYTE ();
2997
              switch (op[2] & 0x00)
2998
              {
2999
                case 0x00:
3000
                  goto op_semantics_6;
3001
                  break;
3002
              }
3003
            break;
3004
          case 0xd6:
3005
              GETBYTE ();
3006
              switch (op[2] & 0x00)
3007
              {
3008
                case 0x00:
3009
                  goto op_semantics_6;
3010
                  break;
3011
              }
3012
            break;
3013
          case 0xd7:
3014
              GETBYTE ();
3015
              switch (op[2] & 0x00)
3016
              {
3017
                case 0x00:
3018
                  goto op_semantics_6;
3019
                  break;
3020
              }
3021
            break;
3022
          case 0xe0:
3023
              GETBYTE ();
3024
              switch (op[2] & 0xff)
3025
              {
3026
                case 0x00:
3027
                    GETBYTE ();
3028
                    switch (op[3] & 0x00)
3029
                    {
3030
                      case 0x00:
3031
                        goto op_semantics_7;
3032
                        break;
3033
                    }
3034
                  break;
3035
                case 0x04:
3036
                    GETBYTE ();
3037
                    switch (op[3] & 0x00)
3038
                    {
3039
                      case 0x00:
3040
                        goto op_semantics_8;
3041
                        break;
3042
                    }
3043
                  break;
3044
                case 0x05:
3045
                    GETBYTE ();
3046
                    switch (op[3] & 0x00)
3047
                    {
3048
                      case 0x00:
3049
                        goto op_semantics_9;
3050
                        break;
3051
                    }
3052
                  break;
3053
                case 0x06:
3054
                    GETBYTE ();
3055
                    switch (op[3] & 0x00)
3056
                    {
3057
                      case 0x00:
3058
                        goto op_semantics_10;
3059
                        break;
3060
                    }
3061
                  break;
3062
                case 0x07:
3063
                    GETBYTE ();
3064
                    switch (op[3] & 0x00)
3065
                    {
3066
                      case 0x00:
3067
                        goto op_semantics_11;
3068
                        break;
3069
                    }
3070
                  break;
3071
                case 0x08:
3072
                    GETBYTE ();
3073
                    switch (op[3] & 0x00)
3074
                    {
3075
                      case 0x00:
3076
                        goto op_semantics_12;
3077
                        break;
3078
                    }
3079
                  break;
3080
                case 0x09:
3081
                    GETBYTE ();
3082
                    switch (op[3] & 0x00)
3083
                    {
3084
                      case 0x00:
3085
                        goto op_semantics_13;
3086
                        break;
3087
                    }
3088
                  break;
3089
                case 0x0c:
3090
                    GETBYTE ();
3091
                    switch (op[3] & 0x00)
3092
                    {
3093
                      case 0x00:
3094
                        goto op_semantics_14;
3095
                        break;
3096
                    }
3097
                  break;
3098
                case 0x0d:
3099
                    GETBYTE ();
3100
                    switch (op[3] & 0x00)
3101
                    {
3102
                      case 0x00:
3103
                        goto op_semantics_15;
3104
                        break;
3105
                    }
3106
                  break;
3107
                case 0x10:
3108
                    GETBYTE ();
3109
                    switch (op[3] & 0x00)
3110
                    {
3111
                      case 0x00:
3112
                        goto op_semantics_16;
3113
                        break;
3114
                    }
3115
                  break;
3116
                case 0x11:
3117
                    GETBYTE ();
3118
                    switch (op[3] & 0x00)
3119
                    {
3120
                      case 0x00:
3121
                        goto op_semantics_17;
3122
                        break;
3123
                    }
3124
                  break;
3125
                default: UNSUPPORTED(); break;
3126
              }
3127
            break;
3128
          case 0xe1:
3129
              GETBYTE ();
3130
              switch (op[2] & 0xff)
3131
              {
3132
                case 0x00:
3133
                    GETBYTE ();
3134
                    switch (op[3] & 0x00)
3135
                    {
3136
                      case 0x00:
3137
                        goto op_semantics_7;
3138
                        break;
3139
                    }
3140
                  break;
3141
                case 0x04:
3142
                    GETBYTE ();
3143
                    switch (op[3] & 0x00)
3144
                    {
3145
                      case 0x00:
3146
                        goto op_semantics_8;
3147
                        break;
3148
                    }
3149
                  break;
3150
                case 0x05:
3151
                    GETBYTE ();
3152
                    switch (op[3] & 0x00)
3153
                    {
3154
                      case 0x00:
3155
                        goto op_semantics_9;
3156
                        break;
3157
                    }
3158
                  break;
3159
                case 0x06:
3160
                    GETBYTE ();
3161
                    switch (op[3] & 0x00)
3162
                    {
3163
                      case 0x00:
3164
                        goto op_semantics_10;
3165
                        break;
3166
                    }
3167
                  break;
3168
                case 0x07:
3169
                    GETBYTE ();
3170
                    switch (op[3] & 0x00)
3171
                    {
3172
                      case 0x00:
3173
                        goto op_semantics_11;
3174
                        break;
3175
                    }
3176
                  break;
3177
                case 0x08:
3178
                    GETBYTE ();
3179
                    switch (op[3] & 0x00)
3180
                    {
3181
                      case 0x00:
3182
                        goto op_semantics_12;
3183
                        break;
3184
                    }
3185
                  break;
3186
                case 0x09:
3187
                    GETBYTE ();
3188
                    switch (op[3] & 0x00)
3189
                    {
3190
                      case 0x00:
3191
                        goto op_semantics_13;
3192
                        break;
3193
                    }
3194
                  break;
3195
                case 0x0c:
3196
                    GETBYTE ();
3197
                    switch (op[3] & 0x00)
3198
                    {
3199
                      case 0x00:
3200
                        goto op_semantics_14;
3201
                        break;
3202
                    }
3203
                  break;
3204
                case 0x0d:
3205
                    GETBYTE ();
3206
                    switch (op[3] & 0x00)
3207
                    {
3208
                      case 0x00:
3209
                        goto op_semantics_15;
3210
                        break;
3211
                    }
3212
                  break;
3213
                case 0x10:
3214
                    GETBYTE ();
3215
                    switch (op[3] & 0x00)
3216
                    {
3217
                      case 0x00:
3218
                        goto op_semantics_16;
3219
                        break;
3220
                    }
3221
                  break;
3222
                case 0x11:
3223
                    GETBYTE ();
3224
                    switch (op[3] & 0x00)
3225
                    {
3226
                      case 0x00:
3227
                        goto op_semantics_17;
3228
                        break;
3229
                    }
3230
                  break;
3231
                default: UNSUPPORTED(); break;
3232
              }
3233
            break;
3234
          case 0xe2:
3235
              GETBYTE ();
3236
              switch (op[2] & 0xff)
3237
              {
3238
                case 0x00:
3239
                    GETBYTE ();
3240
                    switch (op[3] & 0x00)
3241
                    {
3242
                      case 0x00:
3243
                        goto op_semantics_7;
3244
                        break;
3245
                    }
3246
                  break;
3247
                case 0x04:
3248
                    GETBYTE ();
3249
                    switch (op[3] & 0x00)
3250
                    {
3251
                      case 0x00:
3252
                        goto op_semantics_8;
3253
                        break;
3254
                    }
3255
                  break;
3256
                case 0x05:
3257
                    GETBYTE ();
3258
                    switch (op[3] & 0x00)
3259
                    {
3260
                      case 0x00:
3261
                        goto op_semantics_9;
3262
                        break;
3263
                    }
3264
                  break;
3265
                case 0x06:
3266
                    GETBYTE ();
3267
                    switch (op[3] & 0x00)
3268
                    {
3269
                      case 0x00:
3270
                        goto op_semantics_10;
3271
                        break;
3272
                    }
3273
                  break;
3274
                case 0x07:
3275
                    GETBYTE ();
3276
                    switch (op[3] & 0x00)
3277
                    {
3278
                      case 0x00:
3279
                        goto op_semantics_11;
3280
                        break;
3281
                    }
3282
                  break;
3283
                case 0x08:
3284
                    GETBYTE ();
3285
                    switch (op[3] & 0x00)
3286
                    {
3287
                      case 0x00:
3288
                        goto op_semantics_12;
3289
                        break;
3290
                    }
3291
                  break;
3292
                case 0x09:
3293
                    GETBYTE ();
3294
                    switch (op[3] & 0x00)
3295
                    {
3296
                      case 0x00:
3297
                        goto op_semantics_13;
3298
                        break;
3299
                    }
3300
                  break;
3301
                case 0x0c:
3302
                    GETBYTE ();
3303
                    switch (op[3] & 0x00)
3304
                    {
3305
                      case 0x00:
3306
                        goto op_semantics_14;
3307
                        break;
3308
                    }
3309
                  break;
3310
                case 0x0d:
3311
                    GETBYTE ();
3312
                    switch (op[3] & 0x00)
3313
                    {
3314
                      case 0x00:
3315
                        goto op_semantics_15;
3316
                        break;
3317
                    }
3318
                  break;
3319
                case 0x10:
3320
                    GETBYTE ();
3321
                    switch (op[3] & 0x00)
3322
                    {
3323
                      case 0x00:
3324
                        goto op_semantics_16;
3325
                        break;
3326
                    }
3327
                  break;
3328
                case 0x11:
3329
                    GETBYTE ();
3330
                    switch (op[3] & 0x00)
3331
                    {
3332
                      case 0x00:
3333
                        goto op_semantics_17;
3334
                        break;
3335
                    }
3336
                  break;
3337
                default: UNSUPPORTED(); break;
3338
              }
3339
            break;
3340
          case 0xe3:
3341
              GETBYTE ();
3342
              switch (op[2] & 0xff)
3343
              {
3344
                case 0x00:
3345
                    GETBYTE ();
3346
                    switch (op[3] & 0x00)
3347
                    {
3348
                      case 0x00:
3349
                        goto op_semantics_7;
3350
                        break;
3351
                    }
3352
                  break;
3353
                case 0x04:
3354
                    GETBYTE ();
3355
                    switch (op[3] & 0x00)
3356
                    {
3357
                      case 0x00:
3358
                        goto op_semantics_8;
3359
                        break;
3360
                    }
3361
                  break;
3362
                case 0x05:
3363
                    GETBYTE ();
3364
                    switch (op[3] & 0x00)
3365
                    {
3366
                      case 0x00:
3367
                        goto op_semantics_9;
3368
                        break;
3369
                    }
3370
                  break;
3371
                case 0x06:
3372
                    GETBYTE ();
3373
                    switch (op[3] & 0x00)
3374
                    {
3375
                      case 0x00:
3376
                        goto op_semantics_10;
3377
                        break;
3378
                    }
3379
                  break;
3380
                case 0x07:
3381
                    GETBYTE ();
3382
                    switch (op[3] & 0x00)
3383
                    {
3384
                      case 0x00:
3385
                        goto op_semantics_11;
3386
                        break;
3387
                    }
3388
                  break;
3389
                case 0x08:
3390
                    GETBYTE ();
3391
                    switch (op[3] & 0x00)
3392
                    {
3393
                      case 0x00:
3394
                        goto op_semantics_12;
3395
                        break;
3396
                    }
3397
                  break;
3398
                case 0x09:
3399
                    GETBYTE ();
3400
                    switch (op[3] & 0x00)
3401
                    {
3402
                      case 0x00:
3403
                        goto op_semantics_13;
3404
                        break;
3405
                    }
3406
                  break;
3407
                case 0x0c:
3408
                    GETBYTE ();
3409
                    switch (op[3] & 0x00)
3410
                    {
3411
                      case 0x00:
3412
                        goto op_semantics_14;
3413
                        break;
3414
                    }
3415
                  break;
3416
                case 0x0d:
3417
                    GETBYTE ();
3418
                    switch (op[3] & 0x00)
3419
                    {
3420
                      case 0x00:
3421
                        goto op_semantics_15;
3422
                        break;
3423
                    }
3424
                  break;
3425
                case 0x10:
3426
                    GETBYTE ();
3427
                    switch (op[3] & 0x00)
3428
                    {
3429
                      case 0x00:
3430
                        goto op_semantics_16;
3431
                        break;
3432
                    }
3433
                  break;
3434
                case 0x11:
3435
                    GETBYTE ();
3436
                    switch (op[3] & 0x00)
3437
                    {
3438
                      case 0x00:
3439
                        goto op_semantics_17;
3440
                        break;
3441
                    }
3442
                  break;
3443
                default: UNSUPPORTED(); break;
3444
              }
3445
            break;
3446
          default: UNSUPPORTED(); break;
3447
        }
3448
      break;
3449
    case 0x08:
3450
    case 0x09:
3451
    case 0x0a:
3452
    case 0x0b:
3453
    case 0x0c:
3454
    case 0x0d:
3455
    case 0x0e:
3456
    case 0x0f:
3457
        {
3458
          /** 0000 1dsp                 bra.s   %a0 */
3459
#line 701 "rx-decode.opc"
3460
          int dsp AU = op[0] & 0x07;
3461
          if (trace)
3462
            {
3463
              printf ("\033[33m%s\033[0m  %02x\n",
3464
                     "/** 0000 1dsp                     bra.s   %a0 */",
3465
                     op[0]);
3466
              printf ("  dsp = 0x%x\n", dsp);
3467
            }
3468
          SYNTAX("bra.s %a0");
3469
#line 701 "rx-decode.opc"
3470
          ID(branch); DC(pc + dsp3map[dsp]);
3471
 
3472
        }
3473
      break;
3474
    case 0x10:
3475
    case 0x11:
3476
    case 0x12:
3477
    case 0x13:
3478
    case 0x14:
3479
    case 0x15:
3480
    case 0x16:
3481
    case 0x17:
3482
    case 0x18:
3483
    case 0x19:
3484
    case 0x1a:
3485
    case 0x1b:
3486
    case 0x1c:
3487
    case 0x1d:
3488
    case 0x1e:
3489
    case 0x1f:
3490
        {
3491
          /** 0001 n dsp                        b%1.s   %a0 */
3492
#line 691 "rx-decode.opc"
3493
          int n AU = (op[0] >> 3) & 0x01;
3494
#line 691 "rx-decode.opc"
3495
          int dsp AU = op[0] & 0x07;
3496
          if (trace)
3497
            {
3498
              printf ("\033[33m%s\033[0m  %02x\n",
3499
                     "/** 0001 n dsp                    b%1.s   %a0 */",
3500
                     op[0]);
3501
              printf ("  n = 0x%x,", n);
3502
              printf ("  dsp = 0x%x\n", dsp);
3503
            }
3504
          SYNTAX("b%1.s %a0");
3505
#line 691 "rx-decode.opc"
3506
          ID(branch); Scc(n); DC(pc + dsp3map[dsp]);
3507
 
3508
        }
3509
      break;
3510
    case 0x20:
3511
    case 0x21:
3512
    case 0x22:
3513
    case 0x23:
3514
    case 0x24:
3515
    case 0x25:
3516
    case 0x26:
3517
    case 0x27:
3518
    case 0x28:
3519
    case 0x29:
3520
    case 0x2a:
3521
    case 0x2b:
3522
    case 0x2c:
3523
    case 0x2d:
3524
    case 0x2f:
3525
        {
3526
          /** 0010 cond                 b%1.b   %a0 */
3527
#line 694 "rx-decode.opc"
3528
          int cond AU = op[0] & 0x0f;
3529
          if (trace)
3530
            {
3531
              printf ("\033[33m%s\033[0m  %02x\n",
3532
                     "/** 0010 cond                     b%1.b   %a0 */",
3533
                     op[0]);
3534
              printf ("  cond = 0x%x\n", cond);
3535
            }
3536
          SYNTAX("b%1.b %a0");
3537
#line 694 "rx-decode.opc"
3538
          ID(branch); Scc(cond); DC(pc + IMMex (1));
3539
 
3540
        }
3541
      break;
3542
    case 0x2e:
3543
        {
3544
          /** 0010 1110                 bra.b   %a0 */
3545
          if (trace)
3546
            {
3547
              printf ("\033[33m%s\033[0m  %02x\n",
3548
                     "/** 0010 1110                     bra.b   %a0 */",
3549
                     op[0]);
3550
            }
3551
          SYNTAX("bra.b %a0");
3552
#line 704 "rx-decode.opc"
3553
          ID(branch); DC(pc + IMMex(1));
3554
 
3555
        }
3556
      break;
3557
    case 0x38:
3558
        {
3559
          /** 0011 1000                 bra.w   %a0 */
3560
          if (trace)
3561
            {
3562
              printf ("\033[33m%s\033[0m  %02x\n",
3563
                     "/** 0011 1000                     bra.w   %a0 */",
3564
                     op[0]);
3565
            }
3566
          SYNTAX("bra.w %a0");
3567
#line 707 "rx-decode.opc"
3568
          ID(branch); DC(pc + IMMex(2));
3569
 
3570
        }
3571
      break;
3572
    case 0x39:
3573
        {
3574
          /** 0011 1001                 bsr.w   %a0 */
3575
          if (trace)
3576
            {
3577
              printf ("\033[33m%s\033[0m  %02x\n",
3578
                     "/** 0011 1001                     bsr.w   %a0 */",
3579
                     op[0]);
3580
            }
3581
          SYNTAX("bsr.w %a0");
3582
#line 723 "rx-decode.opc"
3583
          ID(jsr); DC(pc + IMMex(2));
3584
 
3585
        }
3586
      break;
3587
    case 0x3a:
3588
    case 0x3b:
3589
        {
3590
          /** 0011 101c                 b%1.w   %a0 */
3591
#line 697 "rx-decode.opc"
3592
          int c AU = op[0] & 0x01;
3593
          if (trace)
3594
            {
3595
              printf ("\033[33m%s\033[0m  %02x\n",
3596
                     "/** 0011 101c                     b%1.w   %a0 */",
3597
                     op[0]);
3598
              printf ("  c = 0x%x\n", c);
3599
            }
3600
          SYNTAX("b%1.w %a0");
3601
#line 697 "rx-decode.opc"
3602
          ID(branch); Scc(c); DC(pc + IMMex (2));
3603
 
3604
 
3605
        }
3606
      break;
3607
    case 0x3c:
3608
        GETBYTE ();
3609
        switch (op[1] & 0x00)
3610
        {
3611
          case 0x00:
3612
            op_semantics_19:
3613
              {
3614
                /** 0011 11sz d dst sppp                mov%s   #%1, %0 */
3615
#line 271 "rx-decode.opc"
3616
                int sz AU = op[0] & 0x03;
3617
#line 271 "rx-decode.opc"
3618
                int d AU = (op[1] >> 7) & 0x01;
3619
#line 271 "rx-decode.opc"
3620
                int dst AU = (op[1] >> 4) & 0x07;
3621
#line 271 "rx-decode.opc"
3622
                int sppp AU = op[1] & 0x0f;
3623
                if (trace)
3624
                  {
3625
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3626
                           "/** 0011 11sz d dst sppp            mov%s   #%1, %0 */",
3627
                           op[0], op[1]);
3628
                    printf ("  sz = 0x%x,", sz);
3629
                    printf ("  d = 0x%x,", d);
3630
                    printf ("  dst = 0x%x,", dst);
3631
                    printf ("  sppp = 0x%x\n", sppp);
3632
                  }
3633
                SYNTAX("mov%s   #%1, %0");
3634
#line 271 "rx-decode.opc"
3635
                ID(mov); sBWL (sz); DIs(dst, d*16+sppp, sz); SC(IMM(1)); F_____;
3636
 
3637
              }
3638
            break;
3639
        }
3640
      break;
3641
    case 0x3d:
3642
        GETBYTE ();
3643
        switch (op[1] & 0x00)
3644
        {
3645
          case 0x00:
3646
            goto op_semantics_19;
3647
            break;
3648
        }
3649
      break;
3650
    case 0x3e:
3651
        GETBYTE ();
3652
        switch (op[1] & 0x00)
3653
        {
3654
          case 0x00:
3655
            goto op_semantics_19;
3656
            break;
3657
        }
3658
      break;
3659
    case 0x3f:
3660
        GETBYTE ();
3661
        switch (op[1] & 0x00)
3662
        {
3663
          case 0x00:
3664
              {
3665
                /** 0011 1111 rega regb         rtsd    #%1, %2-%0 */
3666
#line 368 "rx-decode.opc"
3667
                int rega AU = (op[1] >> 4) & 0x0f;
3668
#line 368 "rx-decode.opc"
3669
                int regb AU = op[1] & 0x0f;
3670
                if (trace)
3671
                  {
3672
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3673
                           "/** 0011 1111 rega regb             rtsd    #%1, %2-%0 */",
3674
                           op[0], op[1]);
3675
                    printf ("  rega = 0x%x,", rega);
3676
                    printf ("  regb = 0x%x\n", regb);
3677
                  }
3678
                SYNTAX("rtsd    #%1, %2-%0");
3679
#line 368 "rx-decode.opc"
3680
                ID(rtsd); SC(IMM(1) * 4); S2R(rega); DR(regb);
3681
 
3682
              /*----------------------------------------------------------------------*/
3683
              /* AND                                                                    */
3684
 
3685
              }
3686
            break;
3687
        }
3688
      break;
3689
    case 0x40:
3690
        GETBYTE ();
3691
        switch (op[1] & 0x00)
3692
        {
3693
          case 0x00:
3694
            op_semantics_20:
3695
              {
3696
                /** 0100 00ss rsrc rdst                 sub     %2%S2, %1 */
3697
#line 503 "rx-decode.opc"
3698
                int ss AU = op[0] & 0x03;
3699
#line 503 "rx-decode.opc"
3700
                int rsrc AU = (op[1] >> 4) & 0x0f;
3701
#line 503 "rx-decode.opc"
3702
                int rdst AU = op[1] & 0x0f;
3703
                if (trace)
3704
                  {
3705
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3706
                           "/** 0100 00ss rsrc rdst                     sub     %2%S2, %1 */",
3707
                           op[0], op[1]);
3708
                    printf ("  ss = 0x%x,", ss);
3709
                    printf ("  rsrc = 0x%x,", rsrc);
3710
                    printf ("  rdst = 0x%x\n", rdst);
3711
                  }
3712
                SYNTAX("sub     %2%S2, %1");
3713
#line 503 "rx-decode.opc"
3714
                ID(sub); S2P(ss, rsrc); SR(rdst); DR(rdst); F_OSZC;
3715
 
3716
              }
3717
            break;
3718
        }
3719
      break;
3720
    case 0x41:
3721
        GETBYTE ();
3722
        switch (op[1] & 0x00)
3723
        {
3724
          case 0x00:
3725
            goto op_semantics_20;
3726
            break;
3727
        }
3728
      break;
3729
    case 0x42:
3730
        GETBYTE ();
3731
        switch (op[1] & 0x00)
3732
        {
3733
          case 0x00:
3734
            goto op_semantics_20;
3735
            break;
3736
        }
3737
      break;
3738
    case 0x43:
3739
        GETBYTE ();
3740
        switch (op[1] & 0x00)
3741
        {
3742
          case 0x00:
3743
            goto op_semantics_20;
3744
            break;
3745
        }
3746
      break;
3747
    case 0x44:
3748
        GETBYTE ();
3749
        switch (op[1] & 0x00)
3750
        {
3751
          case 0x00:
3752
            op_semantics_21:
3753
              {
3754
                /** 0100 01ss rsrc rdst         cmp     %2%S2, %1 */
3755
#line 491 "rx-decode.opc"
3756
                int ss AU = op[0] & 0x03;
3757
#line 491 "rx-decode.opc"
3758
                int rsrc AU = (op[1] >> 4) & 0x0f;
3759
#line 491 "rx-decode.opc"
3760
                int rdst AU = op[1] & 0x0f;
3761
                if (trace)
3762
                  {
3763
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3764
                           "/** 0100 01ss rsrc rdst             cmp     %2%S2, %1 */",
3765
                           op[0], op[1]);
3766
                    printf ("  ss = 0x%x,", ss);
3767
                    printf ("  rsrc = 0x%x,", rsrc);
3768
                    printf ("  rdst = 0x%x\n", rdst);
3769
                  }
3770
                SYNTAX("cmp     %2%S2, %1");
3771
#line 491 "rx-decode.opc"
3772
                ID(sub); S2P(ss, rsrc); SR(rdst); F_OSZC;
3773
 
3774
              }
3775
            break;
3776
        }
3777
      break;
3778
    case 0x45:
3779
        GETBYTE ();
3780
        switch (op[1] & 0x00)
3781
        {
3782
          case 0x00:
3783
            goto op_semantics_21;
3784
            break;
3785
        }
3786
      break;
3787
    case 0x46:
3788
        GETBYTE ();
3789
        switch (op[1] & 0x00)
3790
        {
3791
          case 0x00:
3792
            goto op_semantics_21;
3793
            break;
3794
        }
3795
      break;
3796
    case 0x47:
3797
        GETBYTE ();
3798
        switch (op[1] & 0x00)
3799
        {
3800
          case 0x00:
3801
            goto op_semantics_21;
3802
            break;
3803
        }
3804
      break;
3805
    case 0x48:
3806
        GETBYTE ();
3807
        switch (op[1] & 0x00)
3808
        {
3809
          case 0x00:
3810
            op_semantics_22:
3811
              {
3812
                /** 0100 10ss rsrc rdst                 add     %1%S1, %0 */
3813
#line 467 "rx-decode.opc"
3814
                int ss AU = op[0] & 0x03;
3815
#line 467 "rx-decode.opc"
3816
                int rsrc AU = (op[1] >> 4) & 0x0f;
3817
#line 467 "rx-decode.opc"
3818
                int rdst AU = op[1] & 0x0f;
3819
                if (trace)
3820
                  {
3821
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3822
                           "/** 0100 10ss rsrc rdst                     add     %1%S1, %0 */",
3823
                           op[0], op[1]);
3824
                    printf ("  ss = 0x%x,", ss);
3825
                    printf ("  rsrc = 0x%x,", rsrc);
3826
                    printf ("  rdst = 0x%x\n", rdst);
3827
                  }
3828
                SYNTAX("add     %1%S1, %0");
3829
#line 467 "rx-decode.opc"
3830
                ID(add); SP(ss, rsrc); DR(rdst); F_OSZC;
3831
 
3832
              }
3833
            break;
3834
        }
3835
      break;
3836
    case 0x49:
3837
        GETBYTE ();
3838
        switch (op[1] & 0x00)
3839
        {
3840
          case 0x00:
3841
            goto op_semantics_22;
3842
            break;
3843
        }
3844
      break;
3845
    case 0x4a:
3846
        GETBYTE ();
3847
        switch (op[1] & 0x00)
3848
        {
3849
          case 0x00:
3850
            goto op_semantics_22;
3851
            break;
3852
        }
3853
      break;
3854
    case 0x4b:
3855
        GETBYTE ();
3856
        switch (op[1] & 0x00)
3857
        {
3858
          case 0x00:
3859
            goto op_semantics_22;
3860
            break;
3861
        }
3862
      break;
3863
    case 0x4c:
3864
        GETBYTE ();
3865
        switch (op[1] & 0x00)
3866
        {
3867
          case 0x00:
3868
            op_semantics_23:
3869
              {
3870
                /** 0100 11ss rsrc rdst                 mul     %1%S1, %0 */
3871
#line 572 "rx-decode.opc"
3872
                int ss AU = op[0] & 0x03;
3873
#line 572 "rx-decode.opc"
3874
                int rsrc AU = (op[1] >> 4) & 0x0f;
3875
#line 572 "rx-decode.opc"
3876
                int rdst AU = op[1] & 0x0f;
3877
                if (trace)
3878
                  {
3879
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3880
                           "/** 0100 11ss rsrc rdst                     mul     %1%S1, %0 */",
3881
                           op[0], op[1]);
3882
                    printf ("  ss = 0x%x,", ss);
3883
                    printf ("  rsrc = 0x%x,", rsrc);
3884
                    printf ("  rdst = 0x%x\n", rdst);
3885
                  }
3886
                SYNTAX("mul     %1%S1, %0");
3887
#line 572 "rx-decode.opc"
3888
                ID(mul); SP(ss, rsrc); DR(rdst); F_____;
3889
 
3890
              }
3891
            break;
3892
        }
3893
      break;
3894
    case 0x4d:
3895
        GETBYTE ();
3896
        switch (op[1] & 0x00)
3897
        {
3898
          case 0x00:
3899
            goto op_semantics_23;
3900
            break;
3901
        }
3902
      break;
3903
    case 0x4e:
3904
        GETBYTE ();
3905
        switch (op[1] & 0x00)
3906
        {
3907
          case 0x00:
3908
            goto op_semantics_23;
3909
            break;
3910
        }
3911
      break;
3912
    case 0x4f:
3913
        GETBYTE ();
3914
        switch (op[1] & 0x00)
3915
        {
3916
          case 0x00:
3917
            goto op_semantics_23;
3918
            break;
3919
        }
3920
      break;
3921
    case 0x50:
3922
        GETBYTE ();
3923
        switch (op[1] & 0x00)
3924
        {
3925
          case 0x00:
3926
            op_semantics_24:
3927
              {
3928
                /** 0101 00ss rsrc rdst                 and     %1%S1, %0 */
3929
#line 380 "rx-decode.opc"
3930
                int ss AU = op[0] & 0x03;
3931
#line 380 "rx-decode.opc"
3932
                int rsrc AU = (op[1] >> 4) & 0x0f;
3933
#line 380 "rx-decode.opc"
3934
                int rdst AU = op[1] & 0x0f;
3935
                if (trace)
3936
                  {
3937
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3938
                           "/** 0101 00ss rsrc rdst                     and     %1%S1, %0 */",
3939
                           op[0], op[1]);
3940
                    printf ("  ss = 0x%x,", ss);
3941
                    printf ("  rsrc = 0x%x,", rsrc);
3942
                    printf ("  rdst = 0x%x\n", rdst);
3943
                  }
3944
                SYNTAX("and     %1%S1, %0");
3945
#line 380 "rx-decode.opc"
3946
                ID(and); SP(ss, rsrc); DR(rdst); F__SZ_;
3947
 
3948
              }
3949
            break;
3950
        }
3951
      break;
3952
    case 0x51:
3953
        GETBYTE ();
3954
        switch (op[1] & 0x00)
3955
        {
3956
          case 0x00:
3957
            goto op_semantics_24;
3958
            break;
3959
        }
3960
      break;
3961
    case 0x52:
3962
        GETBYTE ();
3963
        switch (op[1] & 0x00)
3964
        {
3965
          case 0x00:
3966
            goto op_semantics_24;
3967
            break;
3968
        }
3969
      break;
3970
    case 0x53:
3971
        GETBYTE ();
3972
        switch (op[1] & 0x00)
3973
        {
3974
          case 0x00:
3975
            goto op_semantics_24;
3976
            break;
3977
        }
3978
      break;
3979
    case 0x54:
3980
        GETBYTE ();
3981
        switch (op[1] & 0x00)
3982
        {
3983
          case 0x00:
3984
            op_semantics_25:
3985
              {
3986
                /** 0101 01ss rsrc rdst                 or      %1%S1, %0 */
3987
#line 398 "rx-decode.opc"
3988
                int ss AU = op[0] & 0x03;
3989
#line 398 "rx-decode.opc"
3990
                int rsrc AU = (op[1] >> 4) & 0x0f;
3991
#line 398 "rx-decode.opc"
3992
                int rdst AU = op[1] & 0x0f;
3993
                if (trace)
3994
                  {
3995
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
3996
                           "/** 0101 01ss rsrc rdst                     or      %1%S1, %0 */",
3997
                           op[0], op[1]);
3998
                    printf ("  ss = 0x%x,", ss);
3999
                    printf ("  rsrc = 0x%x,", rsrc);
4000
                    printf ("  rdst = 0x%x\n", rdst);
4001
                  }
4002
                SYNTAX("or      %1%S1, %0");
4003
#line 398 "rx-decode.opc"
4004
                ID(or); SP(ss, rsrc); DR(rdst); F__SZ_;
4005
 
4006
              }
4007
            break;
4008
        }
4009
      break;
4010
    case 0x55:
4011
        GETBYTE ();
4012
        switch (op[1] & 0x00)
4013
        {
4014
          case 0x00:
4015
            goto op_semantics_25;
4016
            break;
4017
        }
4018
      break;
4019
    case 0x56:
4020
        GETBYTE ();
4021
        switch (op[1] & 0x00)
4022
        {
4023
          case 0x00:
4024
            goto op_semantics_25;
4025
            break;
4026
        }
4027
      break;
4028
    case 0x57:
4029
        GETBYTE ();
4030
        switch (op[1] & 0x00)
4031
        {
4032
          case 0x00:
4033
            goto op_semantics_25;
4034
            break;
4035
        }
4036
      break;
4037
    case 0x58:
4038
        GETBYTE ();
4039
        switch (op[1] & 0x00)
4040
        {
4041
          case 0x00:
4042
            op_semantics_26:
4043
              {
4044
                /** 0101 1 s ss rsrc rdst       movu%s  %1, %0 */
4045
#line 319 "rx-decode.opc"
4046
                int s AU = (op[0] >> 2) & 0x01;
4047
#line 319 "rx-decode.opc"
4048
                int ss AU = op[0] & 0x03;
4049
#line 319 "rx-decode.opc"
4050
                int rsrc AU = (op[1] >> 4) & 0x0f;
4051
#line 319 "rx-decode.opc"
4052
                int rdst AU = op[1] & 0x0f;
4053
                if (trace)
4054
                  {
4055
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4056
                           "/** 0101 1 s ss rsrc rdst   movu%s  %1, %0 */",
4057
                           op[0], op[1]);
4058
                    printf ("  s = 0x%x,", s);
4059
                    printf ("  ss = 0x%x,", ss);
4060
                    printf ("  rsrc = 0x%x,", rsrc);
4061
                    printf ("  rdst = 0x%x\n", rdst);
4062
                  }
4063
                SYNTAX("movu%s  %1, %0");
4064
#line 319 "rx-decode.opc"
4065
                ID(mov); uBWL(s); SD(ss, rsrc, s); DR(rdst); F_____;
4066
 
4067
              }
4068
            break;
4069
        }
4070
      break;
4071
    case 0x59:
4072
        GETBYTE ();
4073
        switch (op[1] & 0x00)
4074
        {
4075
          case 0x00:
4076
            goto op_semantics_26;
4077
            break;
4078
        }
4079
      break;
4080
    case 0x5a:
4081
        GETBYTE ();
4082
        switch (op[1] & 0x00)
4083
        {
4084
          case 0x00:
4085
            goto op_semantics_26;
4086
            break;
4087
        }
4088
      break;
4089
    case 0x5b:
4090
        GETBYTE ();
4091
        switch (op[1] & 0x00)
4092
        {
4093
          case 0x00:
4094
            goto op_semantics_26;
4095
            break;
4096
        }
4097
      break;
4098
    case 0x5c:
4099
        GETBYTE ();
4100
        switch (op[1] & 0x00)
4101
        {
4102
          case 0x00:
4103
            goto op_semantics_26;
4104
            break;
4105
        }
4106
      break;
4107
    case 0x5d:
4108
        GETBYTE ();
4109
        switch (op[1] & 0x00)
4110
        {
4111
          case 0x00:
4112
            goto op_semantics_26;
4113
            break;
4114
        }
4115
      break;
4116
    case 0x5e:
4117
        GETBYTE ();
4118
        switch (op[1] & 0x00)
4119
        {
4120
          case 0x00:
4121
            goto op_semantics_26;
4122
            break;
4123
        }
4124
      break;
4125
    case 0x5f:
4126
        GETBYTE ();
4127
        switch (op[1] & 0x00)
4128
        {
4129
          case 0x00:
4130
            goto op_semantics_26;
4131
            break;
4132
        }
4133
      break;
4134
    case 0x60:
4135
        GETBYTE ();
4136
        switch (op[1] & 0x00)
4137
        {
4138
          case 0x00:
4139
              {
4140
                /** 0110 0000 immm rdst                 sub     #%2, %0 */
4141
#line 500 "rx-decode.opc"
4142
                int immm AU = (op[1] >> 4) & 0x0f;
4143
#line 500 "rx-decode.opc"
4144
                int rdst AU = op[1] & 0x0f;
4145
                if (trace)
4146
                  {
4147
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4148
                           "/** 0110 0000 immm rdst                     sub     #%2, %0 */",
4149
                           op[0], op[1]);
4150
                    printf ("  immm = 0x%x,", immm);
4151
                    printf ("  rdst = 0x%x\n", rdst);
4152
                  }
4153
                SYNTAX("sub     #%2, %0");
4154
#line 500 "rx-decode.opc"
4155
                ID(sub); S2C(immm); SR(rdst); DR(rdst); F_OSZC;
4156
 
4157
              }
4158
            break;
4159
        }
4160
      break;
4161
    case 0x61:
4162
        GETBYTE ();
4163
        switch (op[1] & 0x00)
4164
        {
4165
          case 0x00:
4166
              {
4167
                /** 0110 0001 immm rdst                 cmp     #%2, %1 */
4168
#line 482 "rx-decode.opc"
4169
                int immm AU = (op[1] >> 4) & 0x0f;
4170
#line 482 "rx-decode.opc"
4171
                int rdst AU = op[1] & 0x0f;
4172
                if (trace)
4173
                  {
4174
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4175
                           "/** 0110 0001 immm rdst                     cmp     #%2, %1 */",
4176
                           op[0], op[1]);
4177
                    printf ("  immm = 0x%x,", immm);
4178
                    printf ("  rdst = 0x%x\n", rdst);
4179
                  }
4180
                SYNTAX("cmp     #%2, %1");
4181
#line 482 "rx-decode.opc"
4182
                ID(sub); S2C(immm); SR(rdst); F_OSZC;
4183
 
4184
              }
4185
            break;
4186
        }
4187
      break;
4188
    case 0x62:
4189
        GETBYTE ();
4190
        switch (op[1] & 0x00)
4191
        {
4192
          case 0x00:
4193
              {
4194
                /** 0110 0010 immm rdst                 add     #%1, %0 */
4195
#line 464 "rx-decode.opc"
4196
                int immm AU = (op[1] >> 4) & 0x0f;
4197
#line 464 "rx-decode.opc"
4198
                int rdst AU = op[1] & 0x0f;
4199
                if (trace)
4200
                  {
4201
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4202
                           "/** 0110 0010 immm rdst                     add     #%1, %0 */",
4203
                           op[0], op[1]);
4204
                    printf ("  immm = 0x%x,", immm);
4205
                    printf ("  rdst = 0x%x\n", rdst);
4206
                  }
4207
                SYNTAX("add     #%1, %0");
4208
#line 464 "rx-decode.opc"
4209
                ID(add); SC(immm); DR(rdst); F_OSZC;
4210
 
4211
              }
4212
            break;
4213
        }
4214
      break;
4215
    case 0x63:
4216
        GETBYTE ();
4217
        switch (op[1] & 0x00)
4218
        {
4219
          case 0x00:
4220
              {
4221
                /** 0110 0011 immm rdst                 mul     #%1, %0 */
4222
#line 566 "rx-decode.opc"
4223
                int immm AU = (op[1] >> 4) & 0x0f;
4224
#line 566 "rx-decode.opc"
4225
                int rdst AU = op[1] & 0x0f;
4226
                if (trace)
4227
                  {
4228
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4229
                           "/** 0110 0011 immm rdst                     mul     #%1, %0 */",
4230
                           op[0], op[1]);
4231
                    printf ("  immm = 0x%x,", immm);
4232
                    printf ("  rdst = 0x%x\n", rdst);
4233
                  }
4234
                SYNTAX("mul     #%1, %0");
4235
#line 566 "rx-decode.opc"
4236
                ID(mul); DR(rdst); SC(immm); F_____;
4237
 
4238
              }
4239
            break;
4240
        }
4241
      break;
4242
    case 0x64:
4243
        GETBYTE ();
4244
        switch (op[1] & 0x00)
4245
        {
4246
          case 0x00:
4247
              {
4248
                /** 0110 0100 immm rdst                 and     #%1, %0 */
4249
#line 374 "rx-decode.opc"
4250
                int immm AU = (op[1] >> 4) & 0x0f;
4251
#line 374 "rx-decode.opc"
4252
                int rdst AU = op[1] & 0x0f;
4253
                if (trace)
4254
                  {
4255
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4256
                           "/** 0110 0100 immm rdst                     and     #%1, %0 */",
4257
                           op[0], op[1]);
4258
                    printf ("  immm = 0x%x,", immm);
4259
                    printf ("  rdst = 0x%x\n", rdst);
4260
                  }
4261
                SYNTAX("and     #%1, %0");
4262
#line 374 "rx-decode.opc"
4263
                ID(and); SC(immm); DR(rdst); F__SZ_;
4264
 
4265
              }
4266
            break;
4267
        }
4268
      break;
4269
    case 0x65:
4270
        GETBYTE ();
4271
        switch (op[1] & 0x00)
4272
        {
4273
          case 0x00:
4274
              {
4275
                /** 0110 0101 immm rdst                 or      #%1, %0 */
4276
#line 392 "rx-decode.opc"
4277
                int immm AU = (op[1] >> 4) & 0x0f;
4278
#line 392 "rx-decode.opc"
4279
                int rdst AU = op[1] & 0x0f;
4280
                if (trace)
4281
                  {
4282
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4283
                           "/** 0110 0101 immm rdst                     or      #%1, %0 */",
4284
                           op[0], op[1]);
4285
                    printf ("  immm = 0x%x,", immm);
4286
                    printf ("  rdst = 0x%x\n", rdst);
4287
                  }
4288
                SYNTAX("or      #%1, %0");
4289
#line 392 "rx-decode.opc"
4290
                ID(or); SC(immm); DR(rdst); F__SZ_;
4291
 
4292
              }
4293
            break;
4294
        }
4295
      break;
4296
    case 0x66:
4297
        GETBYTE ();
4298
        switch (op[1] & 0x00)
4299
        {
4300
          case 0x00:
4301
              {
4302
                /** 0110 0110 immm rdst         mov%s   #%1, %0 */
4303
#line 268 "rx-decode.opc"
4304
                int immm AU = (op[1] >> 4) & 0x0f;
4305
#line 268 "rx-decode.opc"
4306
                int rdst AU = op[1] & 0x0f;
4307
                if (trace)
4308
                  {
4309
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4310
                           "/** 0110 0110 immm rdst             mov%s   #%1, %0 */",
4311
                           op[0], op[1]);
4312
                    printf ("  immm = 0x%x,", immm);
4313
                    printf ("  rdst = 0x%x\n", rdst);
4314
                  }
4315
                SYNTAX("mov%s   #%1, %0");
4316
#line 268 "rx-decode.opc"
4317
                ID(mov); DR(rdst); SC(immm); F_____;
4318
 
4319
              }
4320
            break;
4321
        }
4322
      break;
4323
    case 0x67:
4324
        {
4325
          /** 0110 0111                 rtsd    #%1 */
4326
          if (trace)
4327
            {
4328
              printf ("\033[33m%s\033[0m  %02x\n",
4329
                     "/** 0110 0111                     rtsd    #%1 */",
4330
                     op[0]);
4331
            }
4332
          SYNTAX("rtsd  #%1");
4333
#line 365 "rx-decode.opc"
4334
          ID(rtsd); SC(IMM(1) * 4);
4335
 
4336
        }
4337
      break;
4338
    case 0x68:
4339
        GETBYTE ();
4340
        switch (op[1] & 0x00)
4341
        {
4342
          case 0x00:
4343
            op_semantics_27:
4344
              {
4345
                /** 0110 100i mmmm rdst                 shlr    #%2, %0 */
4346
#line 652 "rx-decode.opc"
4347
                int i AU = op[0] & 0x01;
4348
#line 652 "rx-decode.opc"
4349
                int mmmm AU = (op[1] >> 4) & 0x0f;
4350
#line 652 "rx-decode.opc"
4351
                int rdst AU = op[1] & 0x0f;
4352
                if (trace)
4353
                  {
4354
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4355
                           "/** 0110 100i mmmm rdst                     shlr    #%2, %0 */",
4356
                           op[0], op[1]);
4357
                    printf ("  i = 0x%x,", i);
4358
                    printf ("  mmmm = 0x%x,", mmmm);
4359
                    printf ("  rdst = 0x%x\n", rdst);
4360
                  }
4361
                SYNTAX("shlr    #%2, %0");
4362
#line 652 "rx-decode.opc"
4363
                ID(shlr); S2C(i*16+mmmm); SR(rdst); DR(rdst); F__SZC;
4364
 
4365
              }
4366
            break;
4367
        }
4368
      break;
4369
    case 0x69:
4370
        GETBYTE ();
4371
        switch (op[1] & 0x00)
4372
        {
4373
          case 0x00:
4374
            goto op_semantics_27;
4375
            break;
4376
        }
4377
      break;
4378
    case 0x6a:
4379
        GETBYTE ();
4380
        switch (op[1] & 0x00)
4381
        {
4382
          case 0x00:
4383
            op_semantics_28:
4384
              {
4385
                /** 0110 101i mmmm rdst                 shar    #%2, %0 */
4386
#line 642 "rx-decode.opc"
4387
                int i AU = op[0] & 0x01;
4388
#line 642 "rx-decode.opc"
4389
                int mmmm AU = (op[1] >> 4) & 0x0f;
4390
#line 642 "rx-decode.opc"
4391
                int rdst AU = op[1] & 0x0f;
4392
                if (trace)
4393
                  {
4394
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4395
                           "/** 0110 101i mmmm rdst                     shar    #%2, %0 */",
4396
                           op[0], op[1]);
4397
                    printf ("  i = 0x%x,", i);
4398
                    printf ("  mmmm = 0x%x,", mmmm);
4399
                    printf ("  rdst = 0x%x\n", rdst);
4400
                  }
4401
                SYNTAX("shar    #%2, %0");
4402
#line 642 "rx-decode.opc"
4403
                ID(shar); S2C(i*16+mmmm); SR(rdst); DR(rdst); F_0SZC;
4404
 
4405
              }
4406
            break;
4407
        }
4408
      break;
4409
    case 0x6b:
4410
        GETBYTE ();
4411
        switch (op[1] & 0x00)
4412
        {
4413
          case 0x00:
4414
            goto op_semantics_28;
4415
            break;
4416
        }
4417
      break;
4418
    case 0x6c:
4419
        GETBYTE ();
4420
        switch (op[1] & 0x00)
4421
        {
4422
          case 0x00:
4423
            op_semantics_29:
4424
              {
4425
                /** 0110 110i mmmm rdst                 shll    #%2, %0 */
4426
#line 632 "rx-decode.opc"
4427
                int i AU = op[0] & 0x01;
4428
#line 632 "rx-decode.opc"
4429
                int mmmm AU = (op[1] >> 4) & 0x0f;
4430
#line 632 "rx-decode.opc"
4431
                int rdst AU = op[1] & 0x0f;
4432
                if (trace)
4433
                  {
4434
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4435
                           "/** 0110 110i mmmm rdst                     shll    #%2, %0 */",
4436
                           op[0], op[1]);
4437
                    printf ("  i = 0x%x,", i);
4438
                    printf ("  mmmm = 0x%x,", mmmm);
4439
                    printf ("  rdst = 0x%x\n", rdst);
4440
                  }
4441
                SYNTAX("shll    #%2, %0");
4442
#line 632 "rx-decode.opc"
4443
                ID(shll); S2C(i*16+mmmm); SR(rdst); DR(rdst); F_OSZC;
4444
 
4445
              }
4446
            break;
4447
        }
4448
      break;
4449
    case 0x6d:
4450
        GETBYTE ();
4451
        switch (op[1] & 0x00)
4452
        {
4453
          case 0x00:
4454
            goto op_semantics_29;
4455
            break;
4456
        }
4457
      break;
4458
    case 0x6e:
4459
        GETBYTE ();
4460
        switch (op[1] & 0x00)
4461
        {
4462
          case 0x00:
4463
              {
4464
                /** 0110 1110 dsta dstb         pushm   %1-%2 */
4465
#line 332 "rx-decode.opc"
4466
                int dsta AU = (op[1] >> 4) & 0x0f;
4467
#line 332 "rx-decode.opc"
4468
                int dstb AU = op[1] & 0x0f;
4469
                if (trace)
4470
                  {
4471
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4472
                           "/** 0110 1110 dsta dstb             pushm   %1-%2 */",
4473
                           op[0], op[1]);
4474
                    printf ("  dsta = 0x%x,", dsta);
4475
                    printf ("  dstb = 0x%x\n", dstb);
4476
                  }
4477
                SYNTAX("pushm   %1-%2");
4478
#line 332 "rx-decode.opc"
4479
                ID(pushm); SR(dsta); S2R(dstb); F_____;
4480
 
4481
              }
4482
            break;
4483
        }
4484
      break;
4485
    case 0x6f:
4486
        GETBYTE ();
4487
        switch (op[1] & 0x00)
4488
        {
4489
          case 0x00:
4490
              {
4491
                /** 0110 1111 dsta dstb         popm    %1-%2 */
4492
#line 329 "rx-decode.opc"
4493
                int dsta AU = (op[1] >> 4) & 0x0f;
4494
#line 329 "rx-decode.opc"
4495
                int dstb AU = op[1] & 0x0f;
4496
                if (trace)
4497
                  {
4498
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4499
                           "/** 0110 1111 dsta dstb             popm    %1-%2 */",
4500
                           op[0], op[1]);
4501
                    printf ("  dsta = 0x%x,", dsta);
4502
                    printf ("  dstb = 0x%x\n", dstb);
4503
                  }
4504
                SYNTAX("popm    %1-%2");
4505
#line 329 "rx-decode.opc"
4506
                ID(popm); SR(dsta); S2R(dstb); F_____;
4507
 
4508
              }
4509
            break;
4510
        }
4511
      break;
4512
    case 0x70:
4513
        GETBYTE ();
4514
        switch (op[1] & 0x00)
4515
        {
4516
          case 0x00:
4517
            op_semantics_30:
4518
              {
4519
                /** 0111 00im rsrc rdst                 add     #%1, %2, %0 */
4520
#line 473 "rx-decode.opc"
4521
                int im AU = op[0] & 0x03;
4522
#line 473 "rx-decode.opc"
4523
                int rsrc AU = (op[1] >> 4) & 0x0f;
4524
#line 473 "rx-decode.opc"
4525
                int rdst AU = op[1] & 0x0f;
4526
                if (trace)
4527
                  {
4528
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4529
                           "/** 0111 00im rsrc rdst                     add     #%1, %2, %0 */",
4530
                           op[0], op[1]);
4531
                    printf ("  im = 0x%x,", im);
4532
                    printf ("  rsrc = 0x%x,", rsrc);
4533
                    printf ("  rdst = 0x%x\n", rdst);
4534
                  }
4535
                SYNTAX("add     #%1, %2, %0");
4536
#line 473 "rx-decode.opc"
4537
                ID(add); SC(IMMex(im)); S2R(rsrc); DR(rdst); F_OSZC;
4538
 
4539
              }
4540
            break;
4541
        }
4542
      break;
4543
    case 0x71:
4544
        GETBYTE ();
4545
        switch (op[1] & 0x00)
4546
        {
4547
          case 0x00:
4548
            goto op_semantics_30;
4549
            break;
4550
        }
4551
      break;
4552
    case 0x72:
4553
        GETBYTE ();
4554
        switch (op[1] & 0x00)
4555
        {
4556
          case 0x00:
4557
            goto op_semantics_30;
4558
            break;
4559
        }
4560
      break;
4561
    case 0x73:
4562
        GETBYTE ();
4563
        switch (op[1] & 0x00)
4564
        {
4565
          case 0x00:
4566
            goto op_semantics_30;
4567
            break;
4568
        }
4569
      break;
4570
    case 0x74:
4571
        GETBYTE ();
4572
        switch (op[1] & 0xf0)
4573
        {
4574
          case 0x00:
4575
            op_semantics_31:
4576
              {
4577
                /** 0111 01im 0000 rsrc         cmp     #%2, %1%S1 */
4578
#line 485 "rx-decode.opc"
4579
                int im AU = op[0] & 0x03;
4580
#line 485 "rx-decode.opc"
4581
                int rsrc AU = op[1] & 0x0f;
4582
                if (trace)
4583
                  {
4584
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4585
                           "/** 0111 01im 0000 rsrc             cmp     #%2, %1%S1 */",
4586
                           op[0], op[1]);
4587
                    printf ("  im = 0x%x,", im);
4588
                    printf ("  rsrc = 0x%x\n", rsrc);
4589
                  }
4590
                SYNTAX("cmp     #%2, %1%S1");
4591
#line 485 "rx-decode.opc"
4592
                ID(sub); SR(rsrc); S2C(IMMex(im)); F_OSZC;
4593
 
4594
              }
4595
            break;
4596
          case 0x10:
4597
            op_semantics_32:
4598
              {
4599
                /** 0111 01im 0001rdst                  mul     #%1, %0 */
4600
#line 569 "rx-decode.opc"
4601
                int im AU = op[0] & 0x03;
4602
#line 569 "rx-decode.opc"
4603
                int rdst AU = op[1] & 0x0f;
4604
                if (trace)
4605
                  {
4606
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4607
                           "/** 0111 01im 0001rdst                      mul     #%1, %0 */",
4608
                           op[0], op[1]);
4609
                    printf ("  im = 0x%x,", im);
4610
                    printf ("  rdst = 0x%x\n", rdst);
4611
                  }
4612
                SYNTAX("mul     #%1, %0");
4613
#line 569 "rx-decode.opc"
4614
                ID(mul); DR(rdst); SC(IMMex(im)); F_____;
4615
 
4616
              }
4617
            break;
4618
          case 0x20:
4619
            op_semantics_33:
4620
              {
4621
                /** 0111 01im 0010 rdst                 and     #%1, %0 */
4622
#line 377 "rx-decode.opc"
4623
                int im AU = op[0] & 0x03;
4624
#line 377 "rx-decode.opc"
4625
                int rdst AU = op[1] & 0x0f;
4626
                if (trace)
4627
                  {
4628
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4629
                           "/** 0111 01im 0010 rdst                     and     #%1, %0 */",
4630
                           op[0], op[1]);
4631
                    printf ("  im = 0x%x,", im);
4632
                    printf ("  rdst = 0x%x\n", rdst);
4633
                  }
4634
                SYNTAX("and     #%1, %0");
4635
#line 377 "rx-decode.opc"
4636
                ID(and); SC(IMMex(im)); DR(rdst); F__SZ_;
4637
 
4638
              }
4639
            break;
4640
          case 0x30:
4641
            op_semantics_34:
4642
              {
4643
                /** 0111 01im 0011 rdst                 or      #%1, %0 */
4644
#line 395 "rx-decode.opc"
4645
                int im AU = op[0] & 0x03;
4646
#line 395 "rx-decode.opc"
4647
                int rdst AU = op[1] & 0x0f;
4648
                if (trace)
4649
                  {
4650
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4651
                           "/** 0111 01im 0011 rdst                     or      #%1, %0 */",
4652
                           op[0], op[1]);
4653
                    printf ("  im = 0x%x,", im);
4654
                    printf ("  rdst = 0x%x\n", rdst);
4655
                  }
4656
                SYNTAX("or      #%1, %0");
4657
#line 395 "rx-decode.opc"
4658
                ID(or); SC(IMMex(im)); DR(rdst); F__SZ_;
4659
 
4660
              }
4661
            break;
4662
          default: UNSUPPORTED(); break;
4663
        }
4664
      break;
4665
    case 0x75:
4666
        GETBYTE ();
4667
        switch (op[1] & 0xff)
4668
        {
4669
          case 0x00:
4670
          case 0x01:
4671
          case 0x02:
4672
          case 0x03:
4673
          case 0x04:
4674
          case 0x05:
4675
          case 0x06:
4676
          case 0x07:
4677
          case 0x08:
4678
          case 0x09:
4679
          case 0x0a:
4680
          case 0x0b:
4681
          case 0x0c:
4682
          case 0x0d:
4683
          case 0x0e:
4684
          case 0x0f:
4685
            goto op_semantics_31;
4686
            break;
4687
          case 0x10:
4688
          case 0x11:
4689
          case 0x12:
4690
          case 0x13:
4691
          case 0x14:
4692
          case 0x15:
4693
          case 0x16:
4694
          case 0x17:
4695
          case 0x18:
4696
          case 0x19:
4697
          case 0x1a:
4698
          case 0x1b:
4699
          case 0x1c:
4700
          case 0x1d:
4701
          case 0x1e:
4702
          case 0x1f:
4703
            goto op_semantics_32;
4704
            break;
4705
          case 0x20:
4706
          case 0x21:
4707
          case 0x22:
4708
          case 0x23:
4709
          case 0x24:
4710
          case 0x25:
4711
          case 0x26:
4712
          case 0x27:
4713
          case 0x28:
4714
          case 0x29:
4715
          case 0x2a:
4716
          case 0x2b:
4717
          case 0x2c:
4718
          case 0x2d:
4719
          case 0x2e:
4720
          case 0x2f:
4721
            goto op_semantics_33;
4722
            break;
4723
          case 0x30:
4724
          case 0x31:
4725
          case 0x32:
4726
          case 0x33:
4727
          case 0x34:
4728
          case 0x35:
4729
          case 0x36:
4730
          case 0x37:
4731
          case 0x38:
4732
          case 0x39:
4733
          case 0x3a:
4734
          case 0x3b:
4735
          case 0x3c:
4736
          case 0x3d:
4737
          case 0x3e:
4738
          case 0x3f:
4739
            goto op_semantics_34;
4740
            break;
4741
          case 0x40:
4742
          case 0x41:
4743
          case 0x42:
4744
          case 0x43:
4745
          case 0x44:
4746
          case 0x45:
4747
          case 0x46:
4748
          case 0x47:
4749
          case 0x48:
4750
          case 0x49:
4751
          case 0x4a:
4752
          case 0x4b:
4753
          case 0x4c:
4754
          case 0x4d:
4755
          case 0x4e:
4756
          case 0x4f:
4757
              {
4758
                /** 0111 0101 0100 rdst         mov%s   #%1, %0 */
4759
#line 262 "rx-decode.opc"
4760
                int rdst AU = op[1] & 0x0f;
4761
                if (trace)
4762
                  {
4763
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4764
                           "/** 0111 0101 0100 rdst             mov%s   #%1, %0 */",
4765
                           op[0], op[1]);
4766
                    printf ("  rdst = 0x%x\n", rdst);
4767
                  }
4768
                SYNTAX("mov%s   #%1, %0");
4769
#line 262 "rx-decode.opc"
4770
                ID(mov); DR(rdst); SC(IMM (1)); F_____;
4771
 
4772
              }
4773
            break;
4774
          case 0x50:
4775
          case 0x51:
4776
          case 0x52:
4777
          case 0x53:
4778
          case 0x54:
4779
          case 0x55:
4780
          case 0x56:
4781
          case 0x57:
4782
          case 0x58:
4783
          case 0x59:
4784
          case 0x5a:
4785
          case 0x5b:
4786
          case 0x5c:
4787
          case 0x5d:
4788
          case 0x5e:
4789
          case 0x5f:
4790
              {
4791
                /** 0111 0101 0101 rsrc                 cmp     #%2, %1 */
4792
#line 488 "rx-decode.opc"
4793
                int rsrc AU = op[1] & 0x0f;
4794
                if (trace)
4795
                  {
4796
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4797
                           "/** 0111 0101 0101 rsrc                     cmp     #%2, %1 */",
4798
                           op[0], op[1]);
4799
                    printf ("  rsrc = 0x%x\n", rsrc);
4800
                  }
4801
                SYNTAX("cmp     #%2, %1");
4802
#line 488 "rx-decode.opc"
4803
                ID(sub); SR(rsrc); S2C(IMM(1)); F_OSZC;
4804
 
4805
              }
4806
            break;
4807
          case 0x60:
4808
              {
4809
                /** 0111 0101 0110 0000         int #%1 */
4810
                if (trace)
4811
                  {
4812
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4813
                           "/** 0111 0101 0110 0000             int #%1 */",
4814
                           op[0], op[1]);
4815
                  }
4816
                SYNTAX("int #%1");
4817
#line 949 "rx-decode.opc"
4818
                ID(int); SC(IMM(1));
4819
 
4820
              }
4821
            break;
4822
          case 0x70:
4823
              GETBYTE ();
4824
              switch (op[2] & 0xf0)
4825
              {
4826
                case 0x00:
4827
                    {
4828
                      /** 0111 0101 0111 0000 0000 immm mvtipl  #%1 */
4829
#line 916 "rx-decode.opc"
4830
                      int immm AU = op[2] & 0x0f;
4831
                      if (trace)
4832
                        {
4833
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
4834
                                 "/** 0111 0101 0111 0000 0000 immm     mvtipl  #%1 */",
4835
                                 op[0], op[1], op[2]);
4836
                          printf ("  immm = 0x%x\n", immm);
4837
                        }
4838
                      SYNTAX("mvtipl    #%1");
4839
#line 916 "rx-decode.opc"
4840
                      ID(mvtipl); SC(immm);
4841
 
4842
                    }
4843
                  break;
4844
                default: UNSUPPORTED(); break;
4845
              }
4846
            break;
4847
          default: UNSUPPORTED(); break;
4848
        }
4849
      break;
4850
    case 0x76:
4851
        GETBYTE ();
4852
        switch (op[1] & 0xf0)
4853
        {
4854
          case 0x00:
4855
            goto op_semantics_31;
4856
            break;
4857
          case 0x10:
4858
            goto op_semantics_32;
4859
            break;
4860
          case 0x20:
4861
            goto op_semantics_33;
4862
            break;
4863
          case 0x30:
4864
            goto op_semantics_34;
4865
            break;
4866
          default: UNSUPPORTED(); break;
4867
        }
4868
      break;
4869
    case 0x77:
4870
        GETBYTE ();
4871
        switch (op[1] & 0xf0)
4872
        {
4873
          case 0x00:
4874
            goto op_semantics_31;
4875
            break;
4876
          case 0x10:
4877
            goto op_semantics_32;
4878
            break;
4879
          case 0x20:
4880
            goto op_semantics_33;
4881
            break;
4882
          case 0x30:
4883
            goto op_semantics_34;
4884
            break;
4885
          default: UNSUPPORTED(); break;
4886
        }
4887
      break;
4888
    case 0x78:
4889
        GETBYTE ();
4890
        switch (op[1] & 0x00)
4891
        {
4892
          case 0x00:
4893
            op_semantics_35:
4894
              {
4895
                /** 0111 100b ittt rdst                 bset    #%1, %0 */
4896
#line 867 "rx-decode.opc"
4897
                int b AU = op[0] & 0x01;
4898
#line 867 "rx-decode.opc"
4899
                int ittt AU = (op[1] >> 4) & 0x0f;
4900
#line 867 "rx-decode.opc"
4901
                int rdst AU = op[1] & 0x0f;
4902
                if (trace)
4903
                  {
4904
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4905
                           "/** 0111 100b ittt rdst                     bset    #%1, %0 */",
4906
                           op[0], op[1]);
4907
                    printf ("  b = 0x%x,", b);
4908
                    printf ("  ittt = 0x%x,", ittt);
4909
                    printf ("  rdst = 0x%x\n", rdst);
4910
                  }
4911
                SYNTAX("bset    #%1, %0");
4912
#line 867 "rx-decode.opc"
4913
                ID(bset); BWL(LSIZE); SC(b*16+ittt); DR(rdst); F_____;
4914
 
4915
 
4916
              }
4917
            break;
4918
        }
4919
      break;
4920
    case 0x79:
4921
        GETBYTE ();
4922
        switch (op[1] & 0x00)
4923
        {
4924
          case 0x00:
4925
            goto op_semantics_35;
4926
            break;
4927
        }
4928
      break;
4929
    case 0x7a:
4930
        GETBYTE ();
4931
        switch (op[1] & 0x00)
4932
        {
4933
          case 0x00:
4934
            op_semantics_36:
4935
              {
4936
                /** 0111 101b ittt rdst                 bclr    #%1, %0 */
4937
#line 877 "rx-decode.opc"
4938
                int b AU = op[0] & 0x01;
4939
#line 877 "rx-decode.opc"
4940
                int ittt AU = (op[1] >> 4) & 0x0f;
4941
#line 877 "rx-decode.opc"
4942
                int rdst AU = op[1] & 0x0f;
4943
                if (trace)
4944
                  {
4945
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4946
                           "/** 0111 101b ittt rdst                     bclr    #%1, %0 */",
4947
                           op[0], op[1]);
4948
                    printf ("  b = 0x%x,", b);
4949
                    printf ("  ittt = 0x%x,", ittt);
4950
                    printf ("  rdst = 0x%x\n", rdst);
4951
                  }
4952
                SYNTAX("bclr    #%1, %0");
4953
#line 877 "rx-decode.opc"
4954
                ID(bclr); BWL(LSIZE); SC(b*16+ittt); DR(rdst); F_____;
4955
 
4956
 
4957
              }
4958
            break;
4959
        }
4960
      break;
4961
    case 0x7b:
4962
        GETBYTE ();
4963
        switch (op[1] & 0x00)
4964
        {
4965
          case 0x00:
4966
            goto op_semantics_36;
4967
            break;
4968
        }
4969
      break;
4970
    case 0x7c:
4971
        GETBYTE ();
4972
        switch (op[1] & 0x00)
4973
        {
4974
          case 0x00:
4975
            op_semantics_37:
4976
              {
4977
                /** 0111 110b ittt rdst                 btst    #%2, %1 */
4978
#line 887 "rx-decode.opc"
4979
                int b AU = op[0] & 0x01;
4980
#line 887 "rx-decode.opc"
4981
                int ittt AU = (op[1] >> 4) & 0x0f;
4982
#line 887 "rx-decode.opc"
4983
                int rdst AU = op[1] & 0x0f;
4984
                if (trace)
4985
                  {
4986
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
4987
                           "/** 0111 110b ittt rdst                     btst    #%2, %1 */",
4988
                           op[0], op[1]);
4989
                    printf ("  b = 0x%x,", b);
4990
                    printf ("  ittt = 0x%x,", ittt);
4991
                    printf ("  rdst = 0x%x\n", rdst);
4992
                  }
4993
                SYNTAX("btst    #%2, %1");
4994
#line 887 "rx-decode.opc"
4995
                ID(btst); BWL(LSIZE); S2C(b*16+ittt); SR(rdst); F___ZC;
4996
 
4997
 
4998
              }
4999
            break;
5000
        }
5001
      break;
5002
    case 0x7d:
5003
        GETBYTE ();
5004
        switch (op[1] & 0x00)
5005
        {
5006
          case 0x00:
5007
            goto op_semantics_37;
5008
            break;
5009
        }
5010
      break;
5011
    case 0x7e:
5012
        GETBYTE ();
5013
        switch (op[1] & 0xf0)
5014
        {
5015
          case 0x00:
5016
              {
5017
                /** 0111 1110 0000 rdst                 not     %0 */
5018
#line 422 "rx-decode.opc"
5019
                int rdst AU = op[1] & 0x0f;
5020
                if (trace)
5021
                  {
5022
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5023
                           "/** 0111 1110 0000 rdst                     not     %0 */",
5024
                           op[0], op[1]);
5025
                    printf ("  rdst = 0x%x\n", rdst);
5026
                  }
5027
                SYNTAX("not     %0");
5028
#line 422 "rx-decode.opc"
5029
                ID(xor); DR(rdst); SR(rdst); S2C(~0); F__SZ_;
5030
 
5031
              }
5032
            break;
5033
          case 0x10:
5034
              {
5035
                /** 0111 1110 0001 rdst                 neg     %0 */
5036
#line 443 "rx-decode.opc"
5037
                int rdst AU = op[1] & 0x0f;
5038
                if (trace)
5039
                  {
5040
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5041
                           "/** 0111 1110 0001 rdst                     neg     %0 */",
5042
                           op[0], op[1]);
5043
                    printf ("  rdst = 0x%x\n", rdst);
5044
                  }
5045
                SYNTAX("neg     %0");
5046
#line 443 "rx-decode.opc"
5047
                ID(sub); DR(rdst); SC(0); S2R(rdst); F_OSZC;
5048
 
5049
              }
5050
            break;
5051
          case 0x20:
5052
              {
5053
                /** 0111 1110 0010 rdst                 abs     %0 */
5054
#line 525 "rx-decode.opc"
5055
                int rdst AU = op[1] & 0x0f;
5056
                if (trace)
5057
                  {
5058
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5059
                           "/** 0111 1110 0010 rdst                     abs     %0 */",
5060
                           op[0], op[1]);
5061
                    printf ("  rdst = 0x%x\n", rdst);
5062
                  }
5063
                SYNTAX("abs     %0");
5064
#line 525 "rx-decode.opc"
5065
                ID(abs); DR(rdst); SR(rdst); F_OSZ_;
5066
 
5067
              }
5068
            break;
5069
          case 0x30:
5070
              {
5071
                /** 0111 1110 0011 rdst         sat     %0 */
5072
#line 807 "rx-decode.opc"
5073
                int rdst AU = op[1] & 0x0f;
5074
                if (trace)
5075
                  {
5076
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5077
                           "/** 0111 1110 0011 rdst             sat     %0 */",
5078
                           op[0], op[1]);
5079
                    printf ("  rdst = 0x%x\n", rdst);
5080
                  }
5081
                SYNTAX("sat     %0");
5082
#line 807 "rx-decode.opc"
5083
                ID(sat); DR (rdst);
5084
 
5085
              }
5086
            break;
5087
          case 0x40:
5088
              {
5089
                /** 0111 1110 0100 rdst                 rorc    %0 */
5090
#line 667 "rx-decode.opc"
5091
                int rdst AU = op[1] & 0x0f;
5092
                if (trace)
5093
                  {
5094
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5095
                           "/** 0111 1110 0100 rdst                     rorc    %0 */",
5096
                           op[0], op[1]);
5097
                    printf ("  rdst = 0x%x\n", rdst);
5098
                  }
5099
                SYNTAX("rorc    %0");
5100
#line 667 "rx-decode.opc"
5101
                ID(rorc); DR(rdst); F__SZC;
5102
 
5103
              }
5104
            break;
5105
          case 0x50:
5106
              {
5107
                /** 0111 1110 0101 rdst                 rolc    %0 */
5108
#line 664 "rx-decode.opc"
5109
                int rdst AU = op[1] & 0x0f;
5110
                if (trace)
5111
                  {
5112
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5113
                           "/** 0111 1110 0101 rdst                     rolc    %0 */",
5114
                           op[0], op[1]);
5115
                    printf ("  rdst = 0x%x\n", rdst);
5116
                  }
5117
                SYNTAX("rolc    %0");
5118
#line 664 "rx-decode.opc"
5119
                ID(rolc); DR(rdst); F__SZC;
5120
 
5121
              }
5122
            break;
5123
          case 0x80:
5124
          case 0x90:
5125
          case 0xa0:
5126
              {
5127
                /** 0111 1110 10sz rsrc         push%s  %1 */
5128
#line 338 "rx-decode.opc"
5129
                int sz AU = (op[1] >> 4) & 0x03;
5130
#line 338 "rx-decode.opc"
5131
                int rsrc AU = op[1] & 0x0f;
5132
                if (trace)
5133
                  {
5134
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5135
                           "/** 0111 1110 10sz rsrc             push%s  %1 */",
5136
                           op[0], op[1]);
5137
                    printf ("  sz = 0x%x,", sz);
5138
                    printf ("  rsrc = 0x%x\n", rsrc);
5139
                  }
5140
                SYNTAX("push%s  %1");
5141
#line 338 "rx-decode.opc"
5142
                ID(mov); BWL(sz); OP(0, RX_Operand_Predec, 0, 0); SR(rsrc); F_____;
5143
 
5144
              }
5145
            break;
5146
          case 0xb0:
5147
              {
5148
                /** 0111 1110 1011 rdst         pop     %0 */
5149
#line 335 "rx-decode.opc"
5150
                int rdst AU = op[1] & 0x0f;
5151
                if (trace)
5152
                  {
5153
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5154
                           "/** 0111 1110 1011 rdst             pop     %0 */",
5155
                           op[0], op[1]);
5156
                    printf ("  rdst = 0x%x\n", rdst);
5157
                  }
5158
                SYNTAX("pop     %0");
5159
#line 335 "rx-decode.opc"
5160
                ID(mov); OP(1, RX_Operand_Postinc, 0, 0); DR(rdst); F_____;
5161
 
5162
              }
5163
            break;
5164
          case 0xc0:
5165
          case 0xd0:
5166
              {
5167
                /** 0111 1110 110 crsrc                 pushc   %1 */
5168
#line 922 "rx-decode.opc"
5169
                int crsrc AU = op[1] & 0x1f;
5170
                if (trace)
5171
                  {
5172
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5173
                           "/** 0111 1110 110 crsrc                     pushc   %1 */",
5174
                           op[0], op[1]);
5175
                    printf ("  crsrc = 0x%x\n", crsrc);
5176
                  }
5177
                SYNTAX("pushc   %1");
5178
#line 922 "rx-decode.opc"
5179
                ID(mov); OP(0, RX_Operand_Predec, 0, 0); SR(crsrc + 16);
5180
 
5181
              }
5182
            break;
5183
          case 0xe0:
5184
          case 0xf0:
5185
              {
5186
                /** 0111 1110 111 crdst                 popc    %0 */
5187
#line 919 "rx-decode.opc"
5188
                int crdst AU = op[1] & 0x1f;
5189
                if (trace)
5190
                  {
5191
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5192
                           "/** 0111 1110 111 crdst                     popc    %0 */",
5193
                           op[0], op[1]);
5194
                    printf ("  crdst = 0x%x\n", crdst);
5195
                  }
5196
                SYNTAX("popc    %0");
5197
#line 919 "rx-decode.opc"
5198
                ID(mov); OP(1, RX_Operand_Postinc, 0, 0); DR(crdst + 16);
5199
 
5200
              }
5201
            break;
5202
          default: UNSUPPORTED(); break;
5203
        }
5204
      break;
5205
    case 0x7f:
5206
        GETBYTE ();
5207
        switch (op[1] & 0xff)
5208
        {
5209
          case 0x00:
5210
          case 0x01:
5211
          case 0x02:
5212
          case 0x03:
5213
          case 0x04:
5214
          case 0x05:
5215
          case 0x06:
5216
          case 0x07:
5217
          case 0x08:
5218
          case 0x09:
5219
          case 0x0a:
5220
          case 0x0b:
5221
          case 0x0c:
5222
          case 0x0d:
5223
          case 0x0e:
5224
          case 0x0f:
5225
              {
5226
                /** 0111 1111 0000 rsrc         jmp     %0 */
5227
#line 717 "rx-decode.opc"
5228
                int rsrc AU = op[1] & 0x0f;
5229
                if (trace)
5230
                  {
5231
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5232
                           "/** 0111 1111 0000 rsrc             jmp     %0 */",
5233
                           op[0], op[1]);
5234
                    printf ("  rsrc = 0x%x\n", rsrc);
5235
                  }
5236
                SYNTAX("jmp     %0");
5237
#line 717 "rx-decode.opc"
5238
                ID(branch); DR(rsrc);
5239
 
5240
              }
5241
            break;
5242
          case 0x10:
5243
          case 0x11:
5244
          case 0x12:
5245
          case 0x13:
5246
          case 0x14:
5247
          case 0x15:
5248
          case 0x16:
5249
          case 0x17:
5250
          case 0x18:
5251
          case 0x19:
5252
          case 0x1a:
5253
          case 0x1b:
5254
          case 0x1c:
5255
          case 0x1d:
5256
          case 0x1e:
5257
          case 0x1f:
5258
              {
5259
                /** 0111 1111 0001 rsrc         jsr     %0 */
5260
#line 720 "rx-decode.opc"
5261
                int rsrc AU = op[1] & 0x0f;
5262
                if (trace)
5263
                  {
5264
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5265
                           "/** 0111 1111 0001 rsrc             jsr     %0 */",
5266
                           op[0], op[1]);
5267
                    printf ("  rsrc = 0x%x\n", rsrc);
5268
                  }
5269
                SYNTAX("jsr     %0");
5270
#line 720 "rx-decode.opc"
5271
                ID(jsr); DR(rsrc);
5272
 
5273
              }
5274
            break;
5275
          case 0x40:
5276
          case 0x41:
5277
          case 0x42:
5278
          case 0x43:
5279
          case 0x44:
5280
          case 0x45:
5281
          case 0x46:
5282
          case 0x47:
5283
          case 0x48:
5284
          case 0x49:
5285
          case 0x4a:
5286
          case 0x4b:
5287
          case 0x4c:
5288
          case 0x4d:
5289
          case 0x4e:
5290
          case 0x4f:
5291
              {
5292
                /** 0111 1111 0100 rsrc         bra.l   %0 */
5293
#line 713 "rx-decode.opc"
5294
                int rsrc AU = op[1] & 0x0f;
5295
                if (trace)
5296
                  {
5297
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5298
                           "/** 0111 1111 0100 rsrc             bra.l   %0 */",
5299
                           op[0], op[1]);
5300
                    printf ("  rsrc = 0x%x\n", rsrc);
5301
                  }
5302
                SYNTAX("bra.l   %0");
5303
#line 713 "rx-decode.opc"
5304
                ID(branchrel); DR(rsrc);
5305
 
5306
 
5307
              }
5308
            break;
5309
          case 0x50:
5310
          case 0x51:
5311
          case 0x52:
5312
          case 0x53:
5313
          case 0x54:
5314
          case 0x55:
5315
          case 0x56:
5316
          case 0x57:
5317
          case 0x58:
5318
          case 0x59:
5319
          case 0x5a:
5320
          case 0x5b:
5321
          case 0x5c:
5322
          case 0x5d:
5323
          case 0x5e:
5324
          case 0x5f:
5325
              {
5326
                /** 0111 1111 0101 rsrc         bsr.l   %0 */
5327
#line 729 "rx-decode.opc"
5328
                int rsrc AU = op[1] & 0x0f;
5329
                if (trace)
5330
                  {
5331
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5332
                           "/** 0111 1111 0101 rsrc             bsr.l   %0 */",
5333
                           op[0], op[1]);
5334
                    printf ("  rsrc = 0x%x\n", rsrc);
5335
                  }
5336
                SYNTAX("bsr.l   %0");
5337
#line 729 "rx-decode.opc"
5338
                ID(jsrrel); DR(rsrc);
5339
 
5340
              }
5341
            break;
5342
          case 0x80:
5343
          case 0x81:
5344
          case 0x82:
5345
              {
5346
                /** 0111 1111 1000 00sz         suntil%s */
5347
#line 753 "rx-decode.opc"
5348
                int sz AU = op[1] & 0x03;
5349
                if (trace)
5350
                  {
5351
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5352
                           "/** 0111 1111 1000 00sz             suntil%s */",
5353
                           op[0], op[1]);
5354
                    printf ("  sz = 0x%x\n", sz);
5355
                  }
5356
                SYNTAX("suntil%s");
5357
#line 753 "rx-decode.opc"
5358
                ID(suntil); BWL(sz); F___ZC;
5359
 
5360
              }
5361
            break;
5362
          case 0x83:
5363
              {
5364
                /** 0111 1111 1000 0011         scmpu */
5365
                if (trace)
5366
                  {
5367
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5368
                           "/** 0111 1111 1000 0011             scmpu */",
5369
                           op[0], op[1]);
5370
                  }
5371
                SYNTAX("scmpu");
5372
#line 744 "rx-decode.opc"
5373
                ID(scmpu); F___ZC;
5374
 
5375
              }
5376
            break;
5377
          case 0x84:
5378
          case 0x85:
5379
          case 0x86:
5380
              {
5381
                /** 0111 1111 1000 01sz         swhile%s */
5382
#line 756 "rx-decode.opc"
5383
                int sz AU = op[1] & 0x03;
5384
                if (trace)
5385
                  {
5386
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5387
                           "/** 0111 1111 1000 01sz             swhile%s */",
5388
                           op[0], op[1]);
5389
                    printf ("  sz = 0x%x\n", sz);
5390
                  }
5391
                SYNTAX("swhile%s");
5392
#line 756 "rx-decode.opc"
5393
                ID(swhile); BWL(sz); F___ZC;
5394
 
5395
              }
5396
            break;
5397
          case 0x87:
5398
              {
5399
                /** 0111 1111 1000 0111         smovu */
5400
                if (trace)
5401
                  {
5402
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5403
                           "/** 0111 1111 1000 0111             smovu */",
5404
                           op[0], op[1]);
5405
                  }
5406
                SYNTAX("smovu");
5407
#line 747 "rx-decode.opc"
5408
                ID(smovu);
5409
 
5410
              }
5411
            break;
5412
          case 0x88:
5413
          case 0x89:
5414
          case 0x8a:
5415
              {
5416
                /** 0111 1111 1000 10sz         sstr%s */
5417
#line 762 "rx-decode.opc"
5418
                int sz AU = op[1] & 0x03;
5419
                if (trace)
5420
                  {
5421
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5422
                           "/** 0111 1111 1000 10sz             sstr%s */",
5423
                           op[0], op[1]);
5424
                    printf ("  sz = 0x%x\n", sz);
5425
                  }
5426
                SYNTAX("sstr%s");
5427
#line 762 "rx-decode.opc"
5428
                ID(sstr); BWL(sz);
5429
 
5430
              /*----------------------------------------------------------------------*/
5431
              /* RMPA                                                                   */
5432
 
5433
              }
5434
            break;
5435
          case 0x8b:
5436
              {
5437
                /** 0111 1111 1000 1011         smovb */
5438
                if (trace)
5439
                  {
5440
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5441
                           "/** 0111 1111 1000 1011             smovb */",
5442
                           op[0], op[1]);
5443
                  }
5444
                SYNTAX("smovb");
5445
#line 750 "rx-decode.opc"
5446
                ID(smovb);
5447
 
5448
              }
5449
            break;
5450
          case 0x8c:
5451
          case 0x8d:
5452
          case 0x8e:
5453
              {
5454
                /** 0111 1111 1000 11sz         rmpa%s */
5455
#line 768 "rx-decode.opc"
5456
                int sz AU = op[1] & 0x03;
5457
                if (trace)
5458
                  {
5459
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5460
                           "/** 0111 1111 1000 11sz             rmpa%s */",
5461
                           op[0], op[1]);
5462
                    printf ("  sz = 0x%x\n", sz);
5463
                  }
5464
                SYNTAX("rmpa%s");
5465
#line 768 "rx-decode.opc"
5466
                ID(rmpa); BWL(sz); F_OS__;
5467
 
5468
              /*----------------------------------------------------------------------*/
5469
              /* HI/LO stuff                                                            */
5470
 
5471
              }
5472
            break;
5473
          case 0x8f:
5474
              {
5475
                /** 0111 1111 1000 1111         smovf */
5476
                if (trace)
5477
                  {
5478
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5479
                           "/** 0111 1111 1000 1111             smovf */",
5480
                           op[0], op[1]);
5481
                  }
5482
                SYNTAX("smovf");
5483
#line 759 "rx-decode.opc"
5484
                ID(smovf);
5485
 
5486
              }
5487
            break;
5488
          case 0x93:
5489
              {
5490
                /** 0111 1111 1001 0011         satr */
5491
                if (trace)
5492
                  {
5493
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5494
                           "/** 0111 1111 1001 0011             satr */",
5495
                           op[0], op[1]);
5496
                  }
5497
                SYNTAX("satr");
5498
#line 810 "rx-decode.opc"
5499
                ID(satr);
5500
 
5501
              /*----------------------------------------------------------------------*/
5502
              /* FLOAT                                                          */
5503
 
5504
              }
5505
            break;
5506
          case 0x94:
5507
              {
5508
                /** 0111 1111 1001 0100         rtfi */
5509
                if (trace)
5510
                  {
5511
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5512
                           "/** 0111 1111 1001 0100             rtfi */",
5513
                           op[0], op[1]);
5514
                  }
5515
                SYNTAX("rtfi");
5516
#line 937 "rx-decode.opc"
5517
                ID(rtfi);
5518
 
5519
              }
5520
            break;
5521
          case 0x95:
5522
              {
5523
                /** 0111 1111 1001 0101         rte */
5524
                if (trace)
5525
                  {
5526
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5527
                           "/** 0111 1111 1001 0101             rte */",
5528
                           op[0], op[1]);
5529
                  }
5530
                SYNTAX("rte");
5531
#line 940 "rx-decode.opc"
5532
                ID(rte);
5533
 
5534
              }
5535
            break;
5536
          case 0x96:
5537
              {
5538
                /** 0111 1111 1001 0110         wait */
5539
                if (trace)
5540
                  {
5541
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5542
                           "/** 0111 1111 1001 0110             wait */",
5543
                           op[0], op[1]);
5544
                  }
5545
                SYNTAX("wait");
5546
#line 952 "rx-decode.opc"
5547
                ID(wait);
5548
 
5549
              /*----------------------------------------------------------------------*/
5550
              /* SCcnd                                                          */
5551
 
5552
              }
5553
            break;
5554
          case 0xa0:
5555
          case 0xa1:
5556
          case 0xa2:
5557
          case 0xa3:
5558
          case 0xa4:
5559
          case 0xa5:
5560
          case 0xa6:
5561
          case 0xa7:
5562
          case 0xa8:
5563
          case 0xa9:
5564
          case 0xaa:
5565
          case 0xab:
5566
          case 0xac:
5567
          case 0xad:
5568
          case 0xae:
5569
          case 0xaf:
5570
              {
5571
                /** 0111 1111 1010 rdst                 setpsw  %0 */
5572
#line 913 "rx-decode.opc"
5573
                int rdst AU = op[1] & 0x0f;
5574
                if (trace)
5575
                  {
5576
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5577
                           "/** 0111 1111 1010 rdst                     setpsw  %0 */",
5578
                           op[0], op[1]);
5579
                    printf ("  rdst = 0x%x\n", rdst);
5580
                  }
5581
                SYNTAX("setpsw  %0");
5582
#line 913 "rx-decode.opc"
5583
                ID(setpsw); DF(rdst);
5584
 
5585
              }
5586
            break;
5587
          case 0xb0:
5588
          case 0xb1:
5589
          case 0xb2:
5590
          case 0xb3:
5591
          case 0xb4:
5592
          case 0xb5:
5593
          case 0xb6:
5594
          case 0xb7:
5595
          case 0xb8:
5596
          case 0xb9:
5597
          case 0xba:
5598
          case 0xbb:
5599
          case 0xbc:
5600
          case 0xbd:
5601
          case 0xbe:
5602
          case 0xbf:
5603
              {
5604
                /** 0111 1111 1011 rdst                 clrpsw  %0 */
5605
#line 910 "rx-decode.opc"
5606
                int rdst AU = op[1] & 0x0f;
5607
                if (trace)
5608
                  {
5609
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5610
                           "/** 0111 1111 1011 rdst                     clrpsw  %0 */",
5611
                           op[0], op[1]);
5612
                    printf ("  rdst = 0x%x\n", rdst);
5613
                  }
5614
                SYNTAX("clrpsw  %0");
5615
#line 910 "rx-decode.opc"
5616
                ID(clrpsw); DF(rdst);
5617
 
5618
              }
5619
            break;
5620
          default: UNSUPPORTED(); break;
5621
        }
5622
      break;
5623
    case 0x80:
5624
        GETBYTE ();
5625
        switch (op[1] & 0x00)
5626
        {
5627
          case 0x00:
5628
            op_semantics_38:
5629
              {
5630
                /** 10sz 0dsp a dst b src       mov%s   %1, %0 */
5631
#line 296 "rx-decode.opc"
5632
                int sz AU = (op[0] >> 4) & 0x03;
5633
#line 296 "rx-decode.opc"
5634
                int dsp AU = op[0] & 0x07;
5635
#line 296 "rx-decode.opc"
5636
                int a AU = (op[1] >> 7) & 0x01;
5637
#line 296 "rx-decode.opc"
5638
                int dst AU = (op[1] >> 4) & 0x07;
5639
#line 296 "rx-decode.opc"
5640
                int b AU = (op[1] >> 3) & 0x01;
5641
#line 296 "rx-decode.opc"
5642
                int src AU = op[1] & 0x07;
5643
                if (trace)
5644
                  {
5645
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5646
                           "/** 10sz 0dsp a dst b src   mov%s   %1, %0 */",
5647
                           op[0], op[1]);
5648
                    printf ("  sz = 0x%x,", sz);
5649
                    printf ("  dsp = 0x%x,", dsp);
5650
                    printf ("  a = 0x%x,", a);
5651
                    printf ("  dst = 0x%x,", dst);
5652
                    printf ("  b = 0x%x,", b);
5653
                    printf ("  src = 0x%x\n", src);
5654
                  }
5655
                SYNTAX("mov%s   %1, %0");
5656
#line 296 "rx-decode.opc"
5657
                ID(mov); sBWL(sz); DIs(dst, dsp*4+a*2+b, sz); SR(src); F_____;
5658
 
5659
              }
5660
            break;
5661
        }
5662
      break;
5663
    case 0x81:
5664
        GETBYTE ();
5665
        switch (op[1] & 0x00)
5666
        {
5667
          case 0x00:
5668
            goto op_semantics_38;
5669
            break;
5670
        }
5671
      break;
5672
    case 0x82:
5673
        GETBYTE ();
5674
        switch (op[1] & 0x00)
5675
        {
5676
          case 0x00:
5677
            goto op_semantics_38;
5678
            break;
5679
        }
5680
      break;
5681
    case 0x83:
5682
        GETBYTE ();
5683
        switch (op[1] & 0x00)
5684
        {
5685
          case 0x00:
5686
            goto op_semantics_38;
5687
            break;
5688
        }
5689
      break;
5690
    case 0x84:
5691
        GETBYTE ();
5692
        switch (op[1] & 0x00)
5693
        {
5694
          case 0x00:
5695
            goto op_semantics_38;
5696
            break;
5697
        }
5698
      break;
5699
    case 0x85:
5700
        GETBYTE ();
5701
        switch (op[1] & 0x00)
5702
        {
5703
          case 0x00:
5704
            goto op_semantics_38;
5705
            break;
5706
        }
5707
      break;
5708
    case 0x86:
5709
        GETBYTE ();
5710
        switch (op[1] & 0x00)
5711
        {
5712
          case 0x00:
5713
            goto op_semantics_38;
5714
            break;
5715
        }
5716
      break;
5717
    case 0x87:
5718
        GETBYTE ();
5719
        switch (op[1] & 0x00)
5720
        {
5721
          case 0x00:
5722
            goto op_semantics_38;
5723
            break;
5724
        }
5725
      break;
5726
    case 0x88:
5727
        GETBYTE ();
5728
        switch (op[1] & 0x00)
5729
        {
5730
          case 0x00:
5731
            op_semantics_39:
5732
              {
5733
                /** 10sz 1dsp a src b dst       mov%s   %1, %0 */
5734
#line 293 "rx-decode.opc"
5735
                int sz AU = (op[0] >> 4) & 0x03;
5736
#line 293 "rx-decode.opc"
5737
                int dsp AU = op[0] & 0x07;
5738
#line 293 "rx-decode.opc"
5739
                int a AU = (op[1] >> 7) & 0x01;
5740
#line 293 "rx-decode.opc"
5741
                int src AU = (op[1] >> 4) & 0x07;
5742
#line 293 "rx-decode.opc"
5743
                int b AU = (op[1] >> 3) & 0x01;
5744
#line 293 "rx-decode.opc"
5745
                int dst AU = op[1] & 0x07;
5746
                if (trace)
5747
                  {
5748
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
5749
                           "/** 10sz 1dsp a src b dst   mov%s   %1, %0 */",
5750
                           op[0], op[1]);
5751
                    printf ("  sz = 0x%x,", sz);
5752
                    printf ("  dsp = 0x%x,", dsp);
5753
                    printf ("  a = 0x%x,", a);
5754
                    printf ("  src = 0x%x,", src);
5755
                    printf ("  b = 0x%x,", b);
5756
                    printf ("  dst = 0x%x\n", dst);
5757
                  }
5758
                SYNTAX("mov%s   %1, %0");
5759
#line 293 "rx-decode.opc"
5760
                ID(mov); sBWL(sz); DR(dst); SIs(src, dsp*4+a*2+b, sz); F_____;
5761
 
5762
              }
5763
            break;
5764
        }
5765
      break;
5766
    case 0x89:
5767
        GETBYTE ();
5768
        switch (op[1] & 0x00)
5769
        {
5770
          case 0x00:
5771
            goto op_semantics_39;
5772
            break;
5773
        }
5774
      break;
5775
    case 0x8a:
5776
        GETBYTE ();
5777
        switch (op[1] & 0x00)
5778
        {
5779
          case 0x00:
5780
            goto op_semantics_39;
5781
            break;
5782
        }
5783
      break;
5784
    case 0x8b:
5785
        GETBYTE ();
5786
        switch (op[1] & 0x00)
5787
        {
5788
          case 0x00:
5789
            goto op_semantics_39;
5790
            break;
5791
        }
5792
      break;
5793
    case 0x8c:
5794
        GETBYTE ();
5795
        switch (op[1] & 0x00)
5796
        {
5797
          case 0x00:
5798
            goto op_semantics_39;
5799
            break;
5800
        }
5801
      break;
5802
    case 0x8d:
5803
        GETBYTE ();
5804
        switch (op[1] & 0x00)
5805
        {
5806
          case 0x00:
5807
            goto op_semantics_39;
5808
            break;
5809
        }
5810
      break;
5811
    case 0x8e:
5812
        GETBYTE ();
5813
        switch (op[1] & 0x00)
5814
        {
5815
          case 0x00:
5816
            goto op_semantics_39;
5817
            break;
5818
        }
5819
      break;
5820
    case 0x8f:
5821
        GETBYTE ();
5822
        switch (op[1] & 0x00)
5823
        {
5824
          case 0x00:
5825
            goto op_semantics_39;
5826
            break;
5827
        }
5828
      break;
5829
    case 0x90:
5830
        GETBYTE ();
5831
        switch (op[1] & 0x00)
5832
        {
5833
          case 0x00:
5834
            goto op_semantics_38;
5835
            break;
5836
        }
5837
      break;
5838
    case 0x91:
5839
        GETBYTE ();
5840
        switch (op[1] & 0x00)
5841
        {
5842
          case 0x00:
5843
            goto op_semantics_38;
5844
            break;
5845
        }
5846
      break;
5847
    case 0x92:
5848
        GETBYTE ();
5849
        switch (op[1] & 0x00)
5850
        {
5851
          case 0x00:
5852
            goto op_semantics_38;
5853
            break;
5854
        }
5855
      break;
5856
    case 0x93:
5857
        GETBYTE ();
5858
        switch (op[1] & 0x00)
5859
        {
5860
          case 0x00:
5861
            goto op_semantics_38;
5862
            break;
5863
        }
5864
      break;
5865
    case 0x94:
5866
        GETBYTE ();
5867
        switch (op[1] & 0x00)
5868
        {
5869
          case 0x00:
5870
            goto op_semantics_38;
5871
            break;
5872
        }
5873
      break;
5874
    case 0x95:
5875
        GETBYTE ();
5876
        switch (op[1] & 0x00)
5877
        {
5878
          case 0x00:
5879
            goto op_semantics_38;
5880
            break;
5881
        }
5882
      break;
5883
    case 0x96:
5884
        GETBYTE ();
5885
        switch (op[1] & 0x00)
5886
        {
5887
          case 0x00:
5888
            goto op_semantics_38;
5889
            break;
5890
        }
5891
      break;
5892
    case 0x97:
5893
        GETBYTE ();
5894
        switch (op[1] & 0x00)
5895
        {
5896
          case 0x00:
5897
            goto op_semantics_38;
5898
            break;
5899
        }
5900
      break;
5901
    case 0x98:
5902
        GETBYTE ();
5903
        switch (op[1] & 0x00)
5904
        {
5905
          case 0x00:
5906
            goto op_semantics_39;
5907
            break;
5908
        }
5909
      break;
5910
    case 0x99:
5911
        GETBYTE ();
5912
        switch (op[1] & 0x00)
5913
        {
5914
          case 0x00:
5915
            goto op_semantics_39;
5916
            break;
5917
        }
5918
      break;
5919
    case 0x9a:
5920
        GETBYTE ();
5921
        switch (op[1] & 0x00)
5922
        {
5923
          case 0x00:
5924
            goto op_semantics_39;
5925
            break;
5926
        }
5927
      break;
5928
    case 0x9b:
5929
        GETBYTE ();
5930
        switch (op[1] & 0x00)
5931
        {
5932
          case 0x00:
5933
            goto op_semantics_39;
5934
            break;
5935
        }
5936
      break;
5937
    case 0x9c:
5938
        GETBYTE ();
5939
        switch (op[1] & 0x00)
5940
        {
5941
          case 0x00:
5942
            goto op_semantics_39;
5943
            break;
5944
        }
5945
      break;
5946
    case 0x9d:
5947
        GETBYTE ();
5948
        switch (op[1] & 0x00)
5949
        {
5950
          case 0x00:
5951
            goto op_semantics_39;
5952
            break;
5953
        }
5954
      break;
5955
    case 0x9e:
5956
        GETBYTE ();
5957
        switch (op[1] & 0x00)
5958
        {
5959
          case 0x00:
5960
            goto op_semantics_39;
5961
            break;
5962
        }
5963
      break;
5964
    case 0x9f:
5965
        GETBYTE ();
5966
        switch (op[1] & 0x00)
5967
        {
5968
          case 0x00:
5969
            goto op_semantics_39;
5970
            break;
5971
        }
5972
      break;
5973
    case 0xa0:
5974
        GETBYTE ();
5975
        switch (op[1] & 0x00)
5976
        {
5977
          case 0x00:
5978
            goto op_semantics_38;
5979
            break;
5980
        }
5981
      break;
5982
    case 0xa1:
5983
        GETBYTE ();
5984
        switch (op[1] & 0x00)
5985
        {
5986
          case 0x00:
5987
            goto op_semantics_38;
5988
            break;
5989
        }
5990
      break;
5991
    case 0xa2:
5992
        GETBYTE ();
5993
        switch (op[1] & 0x00)
5994
        {
5995
          case 0x00:
5996
            goto op_semantics_38;
5997
            break;
5998
        }
5999
      break;
6000
    case 0xa3:
6001
        GETBYTE ();
6002
        switch (op[1] & 0x00)
6003
        {
6004
          case 0x00:
6005
            goto op_semantics_38;
6006
            break;
6007
        }
6008
      break;
6009
    case 0xa4:
6010
        GETBYTE ();
6011
        switch (op[1] & 0x00)
6012
        {
6013
          case 0x00:
6014
            goto op_semantics_38;
6015
            break;
6016
        }
6017
      break;
6018
    case 0xa5:
6019
        GETBYTE ();
6020
        switch (op[1] & 0x00)
6021
        {
6022
          case 0x00:
6023
            goto op_semantics_38;
6024
            break;
6025
        }
6026
      break;
6027
    case 0xa6:
6028
        GETBYTE ();
6029
        switch (op[1] & 0x00)
6030
        {
6031
          case 0x00:
6032
            goto op_semantics_38;
6033
            break;
6034
        }
6035
      break;
6036
    case 0xa7:
6037
        GETBYTE ();
6038
        switch (op[1] & 0x00)
6039
        {
6040
          case 0x00:
6041
            goto op_semantics_38;
6042
            break;
6043
        }
6044
      break;
6045
    case 0xa8:
6046
        GETBYTE ();
6047
        switch (op[1] & 0x00)
6048
        {
6049
          case 0x00:
6050
            goto op_semantics_39;
6051
            break;
6052
        }
6053
      break;
6054
    case 0xa9:
6055
        GETBYTE ();
6056
        switch (op[1] & 0x00)
6057
        {
6058
          case 0x00:
6059
            goto op_semantics_39;
6060
            break;
6061
        }
6062
      break;
6063
    case 0xaa:
6064
        GETBYTE ();
6065
        switch (op[1] & 0x00)
6066
        {
6067
          case 0x00:
6068
            goto op_semantics_39;
6069
            break;
6070
        }
6071
      break;
6072
    case 0xab:
6073
        GETBYTE ();
6074
        switch (op[1] & 0x00)
6075
        {
6076
          case 0x00:
6077
            goto op_semantics_39;
6078
            break;
6079
        }
6080
      break;
6081
    case 0xac:
6082
        GETBYTE ();
6083
        switch (op[1] & 0x00)
6084
        {
6085
          case 0x00:
6086
            goto op_semantics_39;
6087
            break;
6088
        }
6089
      break;
6090
    case 0xad:
6091
        GETBYTE ();
6092
        switch (op[1] & 0x00)
6093
        {
6094
          case 0x00:
6095
            goto op_semantics_39;
6096
            break;
6097
        }
6098
      break;
6099
    case 0xae:
6100
        GETBYTE ();
6101
        switch (op[1] & 0x00)
6102
        {
6103
          case 0x00:
6104
            goto op_semantics_39;
6105
            break;
6106
        }
6107
      break;
6108
    case 0xaf:
6109
        GETBYTE ();
6110
        switch (op[1] & 0x00)
6111
        {
6112
          case 0x00:
6113
            goto op_semantics_39;
6114
            break;
6115
        }
6116
      break;
6117
    case 0xb0:
6118
        GETBYTE ();
6119
        switch (op[1] & 0x00)
6120
        {
6121
          case 0x00:
6122
            op_semantics_40:
6123
              {
6124
                /** 1011 w dsp a src b dst      movu%s  %1, %0 */
6125
#line 316 "rx-decode.opc"
6126
                int w AU = (op[0] >> 3) & 0x01;
6127
#line 316 "rx-decode.opc"
6128
                int dsp AU = op[0] & 0x07;
6129
#line 316 "rx-decode.opc"
6130
                int a AU = (op[1] >> 7) & 0x01;
6131
#line 316 "rx-decode.opc"
6132
                int src AU = (op[1] >> 4) & 0x07;
6133
#line 316 "rx-decode.opc"
6134
                int b AU = (op[1] >> 3) & 0x01;
6135
#line 316 "rx-decode.opc"
6136
                int dst AU = op[1] & 0x07;
6137
                if (trace)
6138
                  {
6139
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6140
                           "/** 1011 w dsp a src b dst  movu%s  %1, %0 */",
6141
                           op[0], op[1]);
6142
                    printf ("  w = 0x%x,", w);
6143
                    printf ("  dsp = 0x%x,", dsp);
6144
                    printf ("  a = 0x%x,", a);
6145
                    printf ("  src = 0x%x,", src);
6146
                    printf ("  b = 0x%x,", b);
6147
                    printf ("  dst = 0x%x\n", dst);
6148
                  }
6149
                SYNTAX("movu%s  %1, %0");
6150
#line 316 "rx-decode.opc"
6151
                ID(mov); uBWL(w); DR(dst); SIs(src, dsp*4+a*2+b, w); F_____;
6152
 
6153
              }
6154
            break;
6155
        }
6156
      break;
6157
    case 0xb1:
6158
        GETBYTE ();
6159
        switch (op[1] & 0x00)
6160
        {
6161
          case 0x00:
6162
            goto op_semantics_40;
6163
            break;
6164
        }
6165
      break;
6166
    case 0xb2:
6167
        GETBYTE ();
6168
        switch (op[1] & 0x00)
6169
        {
6170
          case 0x00:
6171
            goto op_semantics_40;
6172
            break;
6173
        }
6174
      break;
6175
    case 0xb3:
6176
        GETBYTE ();
6177
        switch (op[1] & 0x00)
6178
        {
6179
          case 0x00:
6180
            goto op_semantics_40;
6181
            break;
6182
        }
6183
      break;
6184
    case 0xb4:
6185
        GETBYTE ();
6186
        switch (op[1] & 0x00)
6187
        {
6188
          case 0x00:
6189
            goto op_semantics_40;
6190
            break;
6191
        }
6192
      break;
6193
    case 0xb5:
6194
        GETBYTE ();
6195
        switch (op[1] & 0x00)
6196
        {
6197
          case 0x00:
6198
            goto op_semantics_40;
6199
            break;
6200
        }
6201
      break;
6202
    case 0xb6:
6203
        GETBYTE ();
6204
        switch (op[1] & 0x00)
6205
        {
6206
          case 0x00:
6207
            goto op_semantics_40;
6208
            break;
6209
        }
6210
      break;
6211
    case 0xb7:
6212
        GETBYTE ();
6213
        switch (op[1] & 0x00)
6214
        {
6215
          case 0x00:
6216
            goto op_semantics_40;
6217
            break;
6218
        }
6219
      break;
6220
    case 0xb8:
6221
        GETBYTE ();
6222
        switch (op[1] & 0x00)
6223
        {
6224
          case 0x00:
6225
            goto op_semantics_40;
6226
            break;
6227
        }
6228
      break;
6229
    case 0xb9:
6230
        GETBYTE ();
6231
        switch (op[1] & 0x00)
6232
        {
6233
          case 0x00:
6234
            goto op_semantics_40;
6235
            break;
6236
        }
6237
      break;
6238
    case 0xba:
6239
        GETBYTE ();
6240
        switch (op[1] & 0x00)
6241
        {
6242
          case 0x00:
6243
            goto op_semantics_40;
6244
            break;
6245
        }
6246
      break;
6247
    case 0xbb:
6248
        GETBYTE ();
6249
        switch (op[1] & 0x00)
6250
        {
6251
          case 0x00:
6252
            goto op_semantics_40;
6253
            break;
6254
        }
6255
      break;
6256
    case 0xbc:
6257
        GETBYTE ();
6258
        switch (op[1] & 0x00)
6259
        {
6260
          case 0x00:
6261
            goto op_semantics_40;
6262
            break;
6263
        }
6264
      break;
6265
    case 0xbd:
6266
        GETBYTE ();
6267
        switch (op[1] & 0x00)
6268
        {
6269
          case 0x00:
6270
            goto op_semantics_40;
6271
            break;
6272
        }
6273
      break;
6274
    case 0xbe:
6275
        GETBYTE ();
6276
        switch (op[1] & 0x00)
6277
        {
6278
          case 0x00:
6279
            goto op_semantics_40;
6280
            break;
6281
        }
6282
      break;
6283
    case 0xbf:
6284
        GETBYTE ();
6285
        switch (op[1] & 0x00)
6286
        {
6287
          case 0x00:
6288
            goto op_semantics_40;
6289
            break;
6290
        }
6291
      break;
6292
    case 0xc0:
6293
        GETBYTE ();
6294
        switch (op[1] & 0x00)
6295
        {
6296
          case 0x00:
6297
            op_semantics_41:
6298
              {
6299
                /** 11sz sd ss rsrc rdst        mov%s   %1, %0 */
6300
#line 274 "rx-decode.opc"
6301
                int sz AU = (op[0] >> 4) & 0x03;
6302
#line 274 "rx-decode.opc"
6303
                int sd AU = (op[0] >> 2) & 0x03;
6304
#line 274 "rx-decode.opc"
6305
                int ss AU = op[0] & 0x03;
6306
#line 274 "rx-decode.opc"
6307
                int rsrc AU = (op[1] >> 4) & 0x0f;
6308
#line 274 "rx-decode.opc"
6309
                int rdst AU = op[1] & 0x0f;
6310
                if (trace)
6311
                  {
6312
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6313
                           "/** 11sz sd ss rsrc rdst    mov%s   %1, %0 */",
6314
                           op[0], op[1]);
6315
                    printf ("  sz = 0x%x,", sz);
6316
                    printf ("  sd = 0x%x,", sd);
6317
                    printf ("  ss = 0x%x,", ss);
6318
                    printf ("  rsrc = 0x%x,", rsrc);
6319
                    printf ("  rdst = 0x%x\n", rdst);
6320
                  }
6321
                SYNTAX("mov%s   %1, %0");
6322
#line 274 "rx-decode.opc"
6323
                if (ss == 3 && sz == 2 && rsrc == 0 && rdst == 0)
6324
                  {
6325
                    ID(nop2);
6326
                    rx->syntax = "nop";
6327
                  }
6328
                else
6329
                  {
6330
                    ID(mov); sBWL(sz); F_____;
6331
                    if ((ss == 3) && (sd != 3))
6332
                {
6333
                  SD(ss, rdst, sz); DD(sd, rsrc, sz);
6334
                }
6335
                    else
6336
                {
6337
                  SD(ss, rsrc, sz); DD(sd, rdst, sz);
6338
                }
6339
                  }
6340
 
6341
              }
6342
            break;
6343
        }
6344
      break;
6345
    case 0xc1:
6346
        GETBYTE ();
6347
        switch (op[1] & 0x00)
6348
        {
6349
          case 0x00:
6350
            goto op_semantics_41;
6351
            break;
6352
        }
6353
      break;
6354
    case 0xc2:
6355
        GETBYTE ();
6356
        switch (op[1] & 0x00)
6357
        {
6358
          case 0x00:
6359
            goto op_semantics_41;
6360
            break;
6361
        }
6362
      break;
6363
    case 0xc3:
6364
        GETBYTE ();
6365
        switch (op[1] & 0x00)
6366
        {
6367
          case 0x00:
6368
            goto op_semantics_41;
6369
            break;
6370
        }
6371
      break;
6372
    case 0xc4:
6373
        GETBYTE ();
6374
        switch (op[1] & 0x00)
6375
        {
6376
          case 0x00:
6377
            goto op_semantics_41;
6378
            break;
6379
        }
6380
      break;
6381
    case 0xc5:
6382
        GETBYTE ();
6383
        switch (op[1] & 0x00)
6384
        {
6385
          case 0x00:
6386
            goto op_semantics_41;
6387
            break;
6388
        }
6389
      break;
6390
    case 0xc6:
6391
        GETBYTE ();
6392
        switch (op[1] & 0x00)
6393
        {
6394
          case 0x00:
6395
            goto op_semantics_41;
6396
            break;
6397
        }
6398
      break;
6399
    case 0xc7:
6400
        GETBYTE ();
6401
        switch (op[1] & 0x00)
6402
        {
6403
          case 0x00:
6404
            goto op_semantics_41;
6405
            break;
6406
        }
6407
      break;
6408
    case 0xc8:
6409
        GETBYTE ();
6410
        switch (op[1] & 0x00)
6411
        {
6412
          case 0x00:
6413
            goto op_semantics_41;
6414
            break;
6415
        }
6416
      break;
6417
    case 0xc9:
6418
        GETBYTE ();
6419
        switch (op[1] & 0x00)
6420
        {
6421
          case 0x00:
6422
            goto op_semantics_41;
6423
            break;
6424
        }
6425
      break;
6426
    case 0xca:
6427
        GETBYTE ();
6428
        switch (op[1] & 0x00)
6429
        {
6430
          case 0x00:
6431
            goto op_semantics_41;
6432
            break;
6433
        }
6434
      break;
6435
    case 0xcb:
6436
        GETBYTE ();
6437
        switch (op[1] & 0x00)
6438
        {
6439
          case 0x00:
6440
            goto op_semantics_41;
6441
            break;
6442
        }
6443
      break;
6444
    case 0xcc:
6445
        GETBYTE ();
6446
        switch (op[1] & 0x00)
6447
        {
6448
          case 0x00:
6449
            goto op_semantics_41;
6450
            break;
6451
        }
6452
      break;
6453
    case 0xcd:
6454
        GETBYTE ();
6455
        switch (op[1] & 0x00)
6456
        {
6457
          case 0x00:
6458
            goto op_semantics_41;
6459
            break;
6460
        }
6461
      break;
6462
    case 0xce:
6463
        GETBYTE ();
6464
        switch (op[1] & 0x00)
6465
        {
6466
          case 0x00:
6467
            goto op_semantics_41;
6468
            break;
6469
        }
6470
      break;
6471
    case 0xcf:
6472
        GETBYTE ();
6473
        switch (op[1] & 0x00)
6474
        {
6475
          case 0x00:
6476
            goto op_semantics_41;
6477
            break;
6478
        }
6479
      break;
6480
    case 0xd0:
6481
        GETBYTE ();
6482
        switch (op[1] & 0x00)
6483
        {
6484
          case 0x00:
6485
            goto op_semantics_41;
6486
            break;
6487
        }
6488
      break;
6489
    case 0xd1:
6490
        GETBYTE ();
6491
        switch (op[1] & 0x00)
6492
        {
6493
          case 0x00:
6494
            goto op_semantics_41;
6495
            break;
6496
        }
6497
      break;
6498
    case 0xd2:
6499
        GETBYTE ();
6500
        switch (op[1] & 0x00)
6501
        {
6502
          case 0x00:
6503
            goto op_semantics_41;
6504
            break;
6505
        }
6506
      break;
6507
    case 0xd3:
6508
        GETBYTE ();
6509
        switch (op[1] & 0x00)
6510
        {
6511
          case 0x00:
6512
            goto op_semantics_41;
6513
            break;
6514
        }
6515
      break;
6516
    case 0xd4:
6517
        GETBYTE ();
6518
        switch (op[1] & 0x00)
6519
        {
6520
          case 0x00:
6521
            goto op_semantics_41;
6522
            break;
6523
        }
6524
      break;
6525
    case 0xd5:
6526
        GETBYTE ();
6527
        switch (op[1] & 0x00)
6528
        {
6529
          case 0x00:
6530
            goto op_semantics_41;
6531
            break;
6532
        }
6533
      break;
6534
    case 0xd6:
6535
        GETBYTE ();
6536
        switch (op[1] & 0x00)
6537
        {
6538
          case 0x00:
6539
            goto op_semantics_41;
6540
            break;
6541
        }
6542
      break;
6543
    case 0xd7:
6544
        GETBYTE ();
6545
        switch (op[1] & 0x00)
6546
        {
6547
          case 0x00:
6548
            goto op_semantics_41;
6549
            break;
6550
        }
6551
      break;
6552
    case 0xd8:
6553
        GETBYTE ();
6554
        switch (op[1] & 0x00)
6555
        {
6556
          case 0x00:
6557
            goto op_semantics_41;
6558
            break;
6559
        }
6560
      break;
6561
    case 0xd9:
6562
        GETBYTE ();
6563
        switch (op[1] & 0x00)
6564
        {
6565
          case 0x00:
6566
            goto op_semantics_41;
6567
            break;
6568
        }
6569
      break;
6570
    case 0xda:
6571
        GETBYTE ();
6572
        switch (op[1] & 0x00)
6573
        {
6574
          case 0x00:
6575
            goto op_semantics_41;
6576
            break;
6577
        }
6578
      break;
6579
    case 0xdb:
6580
        GETBYTE ();
6581
        switch (op[1] & 0x00)
6582
        {
6583
          case 0x00:
6584
            goto op_semantics_41;
6585
            break;
6586
        }
6587
      break;
6588
    case 0xdc:
6589
        GETBYTE ();
6590
        switch (op[1] & 0x00)
6591
        {
6592
          case 0x00:
6593
            goto op_semantics_41;
6594
            break;
6595
        }
6596
      break;
6597
    case 0xdd:
6598
        GETBYTE ();
6599
        switch (op[1] & 0x00)
6600
        {
6601
          case 0x00:
6602
            goto op_semantics_41;
6603
            break;
6604
        }
6605
      break;
6606
    case 0xde:
6607
        GETBYTE ();
6608
        switch (op[1] & 0x00)
6609
        {
6610
          case 0x00:
6611
            goto op_semantics_41;
6612
            break;
6613
        }
6614
      break;
6615
    case 0xdf:
6616
        GETBYTE ();
6617
        switch (op[1] & 0x00)
6618
        {
6619
          case 0x00:
6620
            goto op_semantics_41;
6621
            break;
6622
        }
6623
      break;
6624
    case 0xe0:
6625
        GETBYTE ();
6626
        switch (op[1] & 0x00)
6627
        {
6628
          case 0x00:
6629
            goto op_semantics_41;
6630
            break;
6631
        }
6632
      break;
6633
    case 0xe1:
6634
        GETBYTE ();
6635
        switch (op[1] & 0x00)
6636
        {
6637
          case 0x00:
6638
            goto op_semantics_41;
6639
            break;
6640
        }
6641
      break;
6642
    case 0xe2:
6643
        GETBYTE ();
6644
        switch (op[1] & 0x00)
6645
        {
6646
          case 0x00:
6647
            goto op_semantics_41;
6648
            break;
6649
        }
6650
      break;
6651
    case 0xe3:
6652
        GETBYTE ();
6653
        switch (op[1] & 0x00)
6654
        {
6655
          case 0x00:
6656
            goto op_semantics_41;
6657
            break;
6658
        }
6659
      break;
6660
    case 0xe4:
6661
        GETBYTE ();
6662
        switch (op[1] & 0x00)
6663
        {
6664
          case 0x00:
6665
            goto op_semantics_41;
6666
            break;
6667
        }
6668
      break;
6669
    case 0xe5:
6670
        GETBYTE ();
6671
        switch (op[1] & 0x00)
6672
        {
6673
          case 0x00:
6674
            goto op_semantics_41;
6675
            break;
6676
        }
6677
      break;
6678
    case 0xe6:
6679
        GETBYTE ();
6680
        switch (op[1] & 0x00)
6681
        {
6682
          case 0x00:
6683
            goto op_semantics_41;
6684
            break;
6685
        }
6686
      break;
6687
    case 0xe7:
6688
        GETBYTE ();
6689
        switch (op[1] & 0x00)
6690
        {
6691
          case 0x00:
6692
            goto op_semantics_41;
6693
            break;
6694
        }
6695
      break;
6696
    case 0xe8:
6697
        GETBYTE ();
6698
        switch (op[1] & 0x00)
6699
        {
6700
          case 0x00:
6701
            goto op_semantics_41;
6702
            break;
6703
        }
6704
      break;
6705
    case 0xe9:
6706
        GETBYTE ();
6707
        switch (op[1] & 0x00)
6708
        {
6709
          case 0x00:
6710
            goto op_semantics_41;
6711
            break;
6712
        }
6713
      break;
6714
    case 0xea:
6715
        GETBYTE ();
6716
        switch (op[1] & 0x00)
6717
        {
6718
          case 0x00:
6719
            goto op_semantics_41;
6720
            break;
6721
        }
6722
      break;
6723
    case 0xeb:
6724
        GETBYTE ();
6725
        switch (op[1] & 0x00)
6726
        {
6727
          case 0x00:
6728
            goto op_semantics_41;
6729
            break;
6730
        }
6731
      break;
6732
    case 0xec:
6733
        GETBYTE ();
6734
        switch (op[1] & 0x00)
6735
        {
6736
          case 0x00:
6737
            goto op_semantics_41;
6738
            break;
6739
        }
6740
      break;
6741
    case 0xed:
6742
        GETBYTE ();
6743
        switch (op[1] & 0x00)
6744
        {
6745
          case 0x00:
6746
            goto op_semantics_41;
6747
            break;
6748
        }
6749
      break;
6750
    case 0xee:
6751
        GETBYTE ();
6752
        switch (op[1] & 0x00)
6753
        {
6754
          case 0x00:
6755
            goto op_semantics_41;
6756
            break;
6757
        }
6758
      break;
6759
    case 0xef:
6760
        GETBYTE ();
6761
        switch (op[1] & 0x00)
6762
        {
6763
          case 0x00:
6764
            goto op_semantics_41;
6765
            break;
6766
        }
6767
      break;
6768
    case 0xf0:
6769
        GETBYTE ();
6770
        switch (op[1] & 0x08)
6771
        {
6772
          case 0x00:
6773
            op_semantics_42:
6774
              {
6775
                /** 1111 00sd rdst 0bit                 bset    #%1, %0%S0 */
6776
#line 861 "rx-decode.opc"
6777
                int sd AU = op[0] & 0x03;
6778
#line 861 "rx-decode.opc"
6779
                int rdst AU = (op[1] >> 4) & 0x0f;
6780
#line 861 "rx-decode.opc"
6781
                int bit AU = op[1] & 0x07;
6782
                if (trace)
6783
                  {
6784
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6785
                           "/** 1111 00sd rdst 0bit                     bset    #%1, %0%S0 */",
6786
                           op[0], op[1]);
6787
                    printf ("  sd = 0x%x,", sd);
6788
                    printf ("  rdst = 0x%x,", rdst);
6789
                    printf ("  bit = 0x%x\n", bit);
6790
                  }
6791
                SYNTAX("bset    #%1, %0%S0");
6792
#line 861 "rx-decode.opc"
6793
                ID(bset); BWL(BSIZE); SC(bit); DD(sd, rdst, BSIZE); F_____;
6794
 
6795
              }
6796
            break;
6797
          case 0x08:
6798
            op_semantics_43:
6799
              {
6800
                /** 1111 00sd rdst 1bit                 bclr    #%1, %0%S0 */
6801
#line 871 "rx-decode.opc"
6802
                int sd AU = op[0] & 0x03;
6803
#line 871 "rx-decode.opc"
6804
                int rdst AU = (op[1] >> 4) & 0x0f;
6805
#line 871 "rx-decode.opc"
6806
                int bit AU = op[1] & 0x07;
6807
                if (trace)
6808
                  {
6809
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6810
                           "/** 1111 00sd rdst 1bit                     bclr    #%1, %0%S0 */",
6811
                           op[0], op[1]);
6812
                    printf ("  sd = 0x%x,", sd);
6813
                    printf ("  rdst = 0x%x,", rdst);
6814
                    printf ("  bit = 0x%x\n", bit);
6815
                  }
6816
                SYNTAX("bclr    #%1, %0%S0");
6817
#line 871 "rx-decode.opc"
6818
                ID(bclr); BWL(BSIZE); SC(bit); DD(sd, rdst, BSIZE); F_____;
6819
 
6820
              }
6821
            break;
6822
        }
6823
      break;
6824
    case 0xf1:
6825
        GETBYTE ();
6826
        switch (op[1] & 0x08)
6827
        {
6828
          case 0x00:
6829
            goto op_semantics_42;
6830
            break;
6831
          case 0x08:
6832
            goto op_semantics_43;
6833
            break;
6834
        }
6835
      break;
6836
    case 0xf2:
6837
        GETBYTE ();
6838
        switch (op[1] & 0x08)
6839
        {
6840
          case 0x00:
6841
            goto op_semantics_42;
6842
            break;
6843
          case 0x08:
6844
            goto op_semantics_43;
6845
            break;
6846
        }
6847
      break;
6848
    case 0xf3:
6849
        GETBYTE ();
6850
        switch (op[1] & 0x08)
6851
        {
6852
          case 0x00:
6853
            goto op_semantics_42;
6854
            break;
6855
          case 0x08:
6856
            goto op_semantics_43;
6857
            break;
6858
        }
6859
      break;
6860
    case 0xf4:
6861
        GETBYTE ();
6862
        switch (op[1] & 0x0c)
6863
        {
6864
          case 0x00:
6865
          case 0x04:
6866
            op_semantics_44:
6867
              {
6868
                /** 1111 01sd rdst 0bit                 btst    #%2, %1%S1 */
6869
#line 881 "rx-decode.opc"
6870
                int sd AU = op[0] & 0x03;
6871
#line 881 "rx-decode.opc"
6872
                int rdst AU = (op[1] >> 4) & 0x0f;
6873
#line 881 "rx-decode.opc"
6874
                int bit AU = op[1] & 0x07;
6875
                if (trace)
6876
                  {
6877
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6878
                           "/** 1111 01sd rdst 0bit                     btst    #%2, %1%S1 */",
6879
                           op[0], op[1]);
6880
                    printf ("  sd = 0x%x,", sd);
6881
                    printf ("  rdst = 0x%x,", rdst);
6882
                    printf ("  bit = 0x%x\n", bit);
6883
                  }
6884
                SYNTAX("btst    #%2, %1%S1");
6885
#line 881 "rx-decode.opc"
6886
                ID(btst); BWL(BSIZE); S2C(bit); SD(sd, rdst, BSIZE); F___ZC;
6887
 
6888
              }
6889
            break;
6890
          case 0x08:
6891
            op_semantics_45:
6892
              {
6893
                /** 1111 01ss rsrc 10sz         push%s  %1 */
6894
#line 341 "rx-decode.opc"
6895
                int ss AU = op[0] & 0x03;
6896
#line 341 "rx-decode.opc"
6897
                int rsrc AU = (op[1] >> 4) & 0x0f;
6898
#line 341 "rx-decode.opc"
6899
                int sz AU = op[1] & 0x03;
6900
                if (trace)
6901
                  {
6902
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6903
                           "/** 1111 01ss rsrc 10sz             push%s  %1 */",
6904
                           op[0], op[1]);
6905
                    printf ("  ss = 0x%x,", ss);
6906
                    printf ("  rsrc = 0x%x,", rsrc);
6907
                    printf ("  sz = 0x%x\n", sz);
6908
                  }
6909
                SYNTAX("push%s  %1");
6910
#line 341 "rx-decode.opc"
6911
                ID(mov); BWL(sz); OP(0, RX_Operand_Predec, 0, 0); SD(ss, rsrc, sz); F_____;
6912
 
6913
              /*----------------------------------------------------------------------*/
6914
              /* XCHG                                                                   */
6915
 
6916
              }
6917
            break;
6918
          default: UNSUPPORTED(); break;
6919
        }
6920
      break;
6921
    case 0xf5:
6922
        GETBYTE ();
6923
        switch (op[1] & 0x0c)
6924
        {
6925
          case 0x00:
6926
          case 0x04:
6927
            goto op_semantics_44;
6928
            break;
6929
          case 0x08:
6930
            goto op_semantics_45;
6931
            break;
6932
          default: UNSUPPORTED(); break;
6933
        }
6934
      break;
6935
    case 0xf6:
6936
        GETBYTE ();
6937
        switch (op[1] & 0x0c)
6938
        {
6939
          case 0x00:
6940
          case 0x04:
6941
            goto op_semantics_44;
6942
            break;
6943
          case 0x08:
6944
            goto op_semantics_45;
6945
            break;
6946
          default: UNSUPPORTED(); break;
6947
        }
6948
      break;
6949
    case 0xf7:
6950
        GETBYTE ();
6951
        switch (op[1] & 0x0c)
6952
        {
6953
          case 0x00:
6954
          case 0x04:
6955
            goto op_semantics_44;
6956
            break;
6957
          case 0x08:
6958
            goto op_semantics_45;
6959
            break;
6960
          default: UNSUPPORTED(); break;
6961
        }
6962
      break;
6963
    case 0xf8:
6964
        GETBYTE ();
6965
        switch (op[1] & 0x00)
6966
        {
6967
          case 0x00:
6968
            op_semantics_46:
6969
              {
6970
                /** 1111 10sd rdst im sz        mov%s   #%1, %0 */
6971
#line 265 "rx-decode.opc"
6972
                int sd AU = op[0] & 0x03;
6973
#line 265 "rx-decode.opc"
6974
                int rdst AU = (op[1] >> 4) & 0x0f;
6975
#line 265 "rx-decode.opc"
6976
                int im AU = (op[1] >> 2) & 0x03;
6977
#line 265 "rx-decode.opc"
6978
                int sz AU = op[1] & 0x03;
6979
                if (trace)
6980
                  {
6981
                    printf ("\033[33m%s\033[0m  %02x %02x\n",
6982
                           "/** 1111 10sd rdst im sz    mov%s   #%1, %0 */",
6983
                           op[0], op[1]);
6984
                    printf ("  sd = 0x%x,", sd);
6985
                    printf ("  rdst = 0x%x,", rdst);
6986
                    printf ("  im = 0x%x,", im);
6987
                    printf ("  sz = 0x%x\n", sz);
6988
                  }
6989
                SYNTAX("mov%s   #%1, %0");
6990
#line 265 "rx-decode.opc"
6991
                ID(mov); sBWL (sz); DD(sd, rdst, sz); SC(IMMex(im)); F_____;
6992
 
6993
              }
6994
            break;
6995
        }
6996
      break;
6997
    case 0xf9:
6998
        GETBYTE ();
6999
        switch (op[1] & 0x00)
7000
        {
7001
          case 0x00:
7002
            goto op_semantics_46;
7003
            break;
7004
        }
7005
      break;
7006
    case 0xfa:
7007
        GETBYTE ();
7008
        switch (op[1] & 0x00)
7009
        {
7010
          case 0x00:
7011
            goto op_semantics_46;
7012
            break;
7013
        }
7014
      break;
7015
    case 0xfb:
7016
        GETBYTE ();
7017
        switch (op[1] & 0x00)
7018
        {
7019
          case 0x00:
7020
            goto op_semantics_46;
7021
            break;
7022
        }
7023
      break;
7024
    case 0xfc:
7025
        GETBYTE ();
7026
        switch (op[1] & 0xff)
7027
        {
7028
          case 0x03:
7029
              GETBYTE ();
7030
              switch (op[2] & 0x00)
7031
              {
7032
                case 0x00:
7033
                    {
7034
                      /** 1111 1100 0000 0011 rsrc rdst sbb     %1, %0 */
7035
#line 515 "rx-decode.opc"
7036
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7037
#line 515 "rx-decode.opc"
7038
                      int rdst AU = op[2] & 0x0f;
7039
                      if (trace)
7040
                        {
7041
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7042
                                 "/** 1111 1100 0000 0011 rsrc rdst     sbb     %1, %0 */",
7043
                                 op[0], op[1], op[2]);
7044
                          printf ("  rsrc = 0x%x,", rsrc);
7045
                          printf ("  rdst = 0x%x\n", rdst);
7046
                        }
7047
                      SYNTAX("sbb       %1, %0");
7048
#line 515 "rx-decode.opc"
7049
                      ID(sbb); SR (rsrc); DR(rdst); F_OSZC;
7050
 
7051
                      /* FIXME: only supports .L */
7052
                    }
7053
                  break;
7054
              }
7055
            break;
7056
          case 0x07:
7057
              GETBYTE ();
7058
              switch (op[2] & 0x00)
7059
              {
7060
                case 0x00:
7061
                    {
7062
                      /** 1111 1100 0000 0111 rsrc rdst neg     %2, %0 */
7063
#line 446 "rx-decode.opc"
7064
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7065
#line 446 "rx-decode.opc"
7066
                      int rdst AU = op[2] & 0x0f;
7067
                      if (trace)
7068
                        {
7069
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7070
                                 "/** 1111 1100 0000 0111 rsrc rdst     neg     %2, %0 */",
7071
                                 op[0], op[1], op[2]);
7072
                          printf ("  rsrc = 0x%x,", rsrc);
7073
                          printf ("  rdst = 0x%x\n", rdst);
7074
                        }
7075
                      SYNTAX("neg       %2, %0");
7076
#line 446 "rx-decode.opc"
7077
                      ID(sub); DR(rdst); SC(0); S2R(rsrc); F_OSZC;
7078
 
7079
                    /*----------------------------------------------------------------------*/
7080
                    /* ADC                                                                      */
7081
 
7082
                    }
7083
                  break;
7084
              }
7085
            break;
7086
          case 0x0b:
7087
              GETBYTE ();
7088
              switch (op[2] & 0x00)
7089
              {
7090
                case 0x00:
7091
                    {
7092
                      /** 1111 1100 0000 1011 rsrc rdst adc     %1, %0 */
7093
#line 455 "rx-decode.opc"
7094
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7095
#line 455 "rx-decode.opc"
7096
                      int rdst AU = op[2] & 0x0f;
7097
                      if (trace)
7098
                        {
7099
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7100
                                 "/** 1111 1100 0000 1011 rsrc rdst     adc     %1, %0 */",
7101
                                 op[0], op[1], op[2]);
7102
                          printf ("  rsrc = 0x%x,", rsrc);
7103
                          printf ("  rdst = 0x%x\n", rdst);
7104
                        }
7105
                      SYNTAX("adc       %1, %0");
7106
#line 455 "rx-decode.opc"
7107
                      ID(adc); SR(rsrc); DR(rdst); F_OSZC;
7108
 
7109
                    }
7110
                  break;
7111
              }
7112
            break;
7113
          case 0x0f:
7114
              GETBYTE ();
7115
              switch (op[2] & 0x00)
7116
              {
7117
                case 0x00:
7118
                    {
7119
                      /** 1111 1100 0000 1111 rsrc rdst abs     %1, %0 */
7120
#line 528 "rx-decode.opc"
7121
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7122
#line 528 "rx-decode.opc"
7123
                      int rdst AU = op[2] & 0x0f;
7124
                      if (trace)
7125
                        {
7126
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7127
                                 "/** 1111 1100 0000 1111 rsrc rdst     abs     %1, %0 */",
7128
                                 op[0], op[1], op[2]);
7129
                          printf ("  rsrc = 0x%x,", rsrc);
7130
                          printf ("  rdst = 0x%x\n", rdst);
7131
                        }
7132
                      SYNTAX("abs       %1, %0");
7133
#line 528 "rx-decode.opc"
7134
                      ID(abs); DR(rdst); SR(rsrc); F_OSZ_;
7135
 
7136
                    /*----------------------------------------------------------------------*/
7137
                    /* MAX                                                                      */
7138
 
7139
                    }
7140
                  break;
7141
              }
7142
            break;
7143
          case 0x10:
7144
              GETBYTE ();
7145
              switch (op[2] & 0x00)
7146
              {
7147
                case 0x00:
7148
                  op_semantics_47:
7149
                    {
7150
                      /** 1111 1100 0001 00ss rsrc rdst max     %1%S1, %0 */
7151
#line 537 "rx-decode.opc"
7152
                      int ss AU = op[1] & 0x03;
7153
#line 537 "rx-decode.opc"
7154
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7155
#line 537 "rx-decode.opc"
7156
                      int rdst AU = op[2] & 0x0f;
7157
                      if (trace)
7158
                        {
7159
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7160
                                 "/** 1111 1100 0001 00ss rsrc rdst     max     %1%S1, %0 */",
7161
                                 op[0], op[1], op[2]);
7162
                          printf ("  ss = 0x%x,", ss);
7163
                          printf ("  rsrc = 0x%x,", rsrc);
7164
                          printf ("  rdst = 0x%x\n", rdst);
7165
                        }
7166
                      SYNTAX("max       %1%S1, %0");
7167
#line 537 "rx-decode.opc"
7168
                      if (ss == 3 && rsrc == 0 && rdst == 0)
7169
                        {
7170
                          ID(nop3);
7171
                          rx->syntax = "nop";
7172
                        }
7173
                      else
7174
                        {
7175
                          ID(max); SP(ss, rsrc); DR(rdst);
7176
                        }
7177
 
7178
                    }
7179
                  break;
7180
              }
7181
            break;
7182
          case 0x11:
7183
              GETBYTE ();
7184
              switch (op[2] & 0x00)
7185
              {
7186
                case 0x00:
7187
                  goto op_semantics_47;
7188
                  break;
7189
              }
7190
            break;
7191
          case 0x12:
7192
              GETBYTE ();
7193
              switch (op[2] & 0x00)
7194
              {
7195
                case 0x00:
7196
                  goto op_semantics_47;
7197
                  break;
7198
              }
7199
            break;
7200
          case 0x13:
7201
              GETBYTE ();
7202
              switch (op[2] & 0x00)
7203
              {
7204
                case 0x00:
7205
                  goto op_semantics_47;
7206
                  break;
7207
              }
7208
            break;
7209
          case 0x14:
7210
              GETBYTE ();
7211
              switch (op[2] & 0x00)
7212
              {
7213
                case 0x00:
7214
                  op_semantics_48:
7215
                    {
7216
                      /** 1111 1100 0001 01ss rsrc rdst min     %1%S1, %0 */
7217
#line 557 "rx-decode.opc"
7218
                      int ss AU = op[1] & 0x03;
7219
#line 557 "rx-decode.opc"
7220
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7221
#line 557 "rx-decode.opc"
7222
                      int rdst AU = op[2] & 0x0f;
7223
                      if (trace)
7224
                        {
7225
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7226
                                 "/** 1111 1100 0001 01ss rsrc rdst     min     %1%S1, %0 */",
7227
                                 op[0], op[1], op[2]);
7228
                          printf ("  ss = 0x%x,", ss);
7229
                          printf ("  rsrc = 0x%x,", rsrc);
7230
                          printf ("  rdst = 0x%x\n", rdst);
7231
                        }
7232
                      SYNTAX("min       %1%S1, %0");
7233
#line 557 "rx-decode.opc"
7234
                      ID(min); SP(ss, rsrc); DR(rdst);
7235
 
7236
                    }
7237
                  break;
7238
              }
7239
            break;
7240
          case 0x15:
7241
              GETBYTE ();
7242
              switch (op[2] & 0x00)
7243
              {
7244
                case 0x00:
7245
                  goto op_semantics_48;
7246
                  break;
7247
              }
7248
            break;
7249
          case 0x16:
7250
              GETBYTE ();
7251
              switch (op[2] & 0x00)
7252
              {
7253
                case 0x00:
7254
                  goto op_semantics_48;
7255
                  break;
7256
              }
7257
            break;
7258
          case 0x17:
7259
              GETBYTE ();
7260
              switch (op[2] & 0x00)
7261
              {
7262
                case 0x00:
7263
                  goto op_semantics_48;
7264
                  break;
7265
              }
7266
            break;
7267
          case 0x18:
7268
              GETBYTE ();
7269
              switch (op[2] & 0x00)
7270
              {
7271
                case 0x00:
7272
                  op_semantics_49:
7273
                    {
7274
                      /** 1111 1100 0001 10ss rsrc rdst emul    %1%S1, %0 */
7275
#line 587 "rx-decode.opc"
7276
                      int ss AU = op[1] & 0x03;
7277
#line 587 "rx-decode.opc"
7278
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7279
#line 587 "rx-decode.opc"
7280
                      int rdst AU = op[2] & 0x0f;
7281
                      if (trace)
7282
                        {
7283
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7284
                                 "/** 1111 1100 0001 10ss rsrc rdst     emul    %1%S1, %0 */",
7285
                                 op[0], op[1], op[2]);
7286
                          printf ("  ss = 0x%x,", ss);
7287
                          printf ("  rsrc = 0x%x,", rsrc);
7288
                          printf ("  rdst = 0x%x\n", rdst);
7289
                        }
7290
                      SYNTAX("emul      %1%S1, %0");
7291
#line 587 "rx-decode.opc"
7292
                      ID(emul); SP(ss, rsrc); DR(rdst);
7293
 
7294
                    }
7295
                  break;
7296
              }
7297
            break;
7298
          case 0x19:
7299
              GETBYTE ();
7300
              switch (op[2] & 0x00)
7301
              {
7302
                case 0x00:
7303
                  goto op_semantics_49;
7304
                  break;
7305
              }
7306
            break;
7307
          case 0x1a:
7308
              GETBYTE ();
7309
              switch (op[2] & 0x00)
7310
              {
7311
                case 0x00:
7312
                  goto op_semantics_49;
7313
                  break;
7314
              }
7315
            break;
7316
          case 0x1b:
7317
              GETBYTE ();
7318
              switch (op[2] & 0x00)
7319
              {
7320
                case 0x00:
7321
                  goto op_semantics_49;
7322
                  break;
7323
              }
7324
            break;
7325
          case 0x1c:
7326
              GETBYTE ();
7327
              switch (op[2] & 0x00)
7328
              {
7329
                case 0x00:
7330
                  op_semantics_50:
7331
                    {
7332
                      /** 1111 1100 0001 11ss rsrc rdst emulu   %1%S1, %0 */
7333
#line 599 "rx-decode.opc"
7334
                      int ss AU = op[1] & 0x03;
7335
#line 599 "rx-decode.opc"
7336
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7337
#line 599 "rx-decode.opc"
7338
                      int rdst AU = op[2] & 0x0f;
7339
                      if (trace)
7340
                        {
7341
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7342
                                 "/** 1111 1100 0001 11ss rsrc rdst     emulu   %1%S1, %0 */",
7343
                                 op[0], op[1], op[2]);
7344
                          printf ("  ss = 0x%x,", ss);
7345
                          printf ("  rsrc = 0x%x,", rsrc);
7346
                          printf ("  rdst = 0x%x\n", rdst);
7347
                        }
7348
                      SYNTAX("emulu     %1%S1, %0");
7349
#line 599 "rx-decode.opc"
7350
                      ID(emulu); SP(ss, rsrc); DR(rdst);
7351
 
7352
                    }
7353
                  break;
7354
              }
7355
            break;
7356
          case 0x1d:
7357
              GETBYTE ();
7358
              switch (op[2] & 0x00)
7359
              {
7360
                case 0x00:
7361
                  goto op_semantics_50;
7362
                  break;
7363
              }
7364
            break;
7365
          case 0x1e:
7366
              GETBYTE ();
7367
              switch (op[2] & 0x00)
7368
              {
7369
                case 0x00:
7370
                  goto op_semantics_50;
7371
                  break;
7372
              }
7373
            break;
7374
          case 0x1f:
7375
              GETBYTE ();
7376
              switch (op[2] & 0x00)
7377
              {
7378
                case 0x00:
7379
                  goto op_semantics_50;
7380
                  break;
7381
              }
7382
            break;
7383
          case 0x20:
7384
              GETBYTE ();
7385
              switch (op[2] & 0x00)
7386
              {
7387
                case 0x00:
7388
                  op_semantics_51:
7389
                    {
7390
                      /** 1111 1100 0010 00ss rsrc rdst div     %1%S1, %0 */
7391
#line 611 "rx-decode.opc"
7392
                      int ss AU = op[1] & 0x03;
7393
#line 611 "rx-decode.opc"
7394
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7395
#line 611 "rx-decode.opc"
7396
                      int rdst AU = op[2] & 0x0f;
7397
                      if (trace)
7398
                        {
7399
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7400
                                 "/** 1111 1100 0010 00ss rsrc rdst     div     %1%S1, %0 */",
7401
                                 op[0], op[1], op[2]);
7402
                          printf ("  ss = 0x%x,", ss);
7403
                          printf ("  rsrc = 0x%x,", rsrc);
7404
                          printf ("  rdst = 0x%x\n", rdst);
7405
                        }
7406
                      SYNTAX("div       %1%S1, %0");
7407
#line 611 "rx-decode.opc"
7408
                      ID(div); SP(ss, rsrc); DR(rdst); F_O___;
7409
 
7410
                    }
7411
                  break;
7412
              }
7413
            break;
7414
          case 0x21:
7415
              GETBYTE ();
7416
              switch (op[2] & 0x00)
7417
              {
7418
                case 0x00:
7419
                  goto op_semantics_51;
7420
                  break;
7421
              }
7422
            break;
7423
          case 0x22:
7424
              GETBYTE ();
7425
              switch (op[2] & 0x00)
7426
              {
7427
                case 0x00:
7428
                  goto op_semantics_51;
7429
                  break;
7430
              }
7431
            break;
7432
          case 0x23:
7433
              GETBYTE ();
7434
              switch (op[2] & 0x00)
7435
              {
7436
                case 0x00:
7437
                  goto op_semantics_51;
7438
                  break;
7439
              }
7440
            break;
7441
          case 0x24:
7442
              GETBYTE ();
7443
              switch (op[2] & 0x00)
7444
              {
7445
                case 0x00:
7446
                  op_semantics_52:
7447
                    {
7448
                      /** 1111 1100 0010 01ss rsrc rdst divu    %1%S1, %0 */
7449
#line 623 "rx-decode.opc"
7450
                      int ss AU = op[1] & 0x03;
7451
#line 623 "rx-decode.opc"
7452
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7453
#line 623 "rx-decode.opc"
7454
                      int rdst AU = op[2] & 0x0f;
7455
                      if (trace)
7456
                        {
7457
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7458
                                 "/** 1111 1100 0010 01ss rsrc rdst     divu    %1%S1, %0 */",
7459
                                 op[0], op[1], op[2]);
7460
                          printf ("  ss = 0x%x,", ss);
7461
                          printf ("  rsrc = 0x%x,", rsrc);
7462
                          printf ("  rdst = 0x%x\n", rdst);
7463
                        }
7464
                      SYNTAX("divu      %1%S1, %0");
7465
#line 623 "rx-decode.opc"
7466
                      ID(divu); SP(ss, rsrc); DR(rdst); F_O___;
7467
 
7468
                    }
7469
                  break;
7470
              }
7471
            break;
7472
          case 0x25:
7473
              GETBYTE ();
7474
              switch (op[2] & 0x00)
7475
              {
7476
                case 0x00:
7477
                  goto op_semantics_52;
7478
                  break;
7479
              }
7480
            break;
7481
          case 0x26:
7482
              GETBYTE ();
7483
              switch (op[2] & 0x00)
7484
              {
7485
                case 0x00:
7486
                  goto op_semantics_52;
7487
                  break;
7488
              }
7489
            break;
7490
          case 0x27:
7491
              GETBYTE ();
7492
              switch (op[2] & 0x00)
7493
              {
7494
                case 0x00:
7495
                  goto op_semantics_52;
7496
                  break;
7497
              }
7498
            break;
7499
          case 0x30:
7500
              GETBYTE ();
7501
              switch (op[2] & 0x00)
7502
              {
7503
                case 0x00:
7504
                  op_semantics_53:
7505
                    {
7506
                      /** 1111 1100 0011 00ss rsrc rdst tst     %1%S1, %2 */
7507
#line 434 "rx-decode.opc"
7508
                      int ss AU = op[1] & 0x03;
7509
#line 434 "rx-decode.opc"
7510
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7511
#line 434 "rx-decode.opc"
7512
                      int rdst AU = op[2] & 0x0f;
7513
                      if (trace)
7514
                        {
7515
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7516
                                 "/** 1111 1100 0011 00ss rsrc rdst     tst     %1%S1, %2 */",
7517
                                 op[0], op[1], op[2]);
7518
                          printf ("  ss = 0x%x,", ss);
7519
                          printf ("  rsrc = 0x%x,", rsrc);
7520
                          printf ("  rdst = 0x%x\n", rdst);
7521
                        }
7522
                      SYNTAX("tst       %1%S1, %2");
7523
#line 434 "rx-decode.opc"
7524
                      ID(and); SP(ss, rsrc); S2R(rdst); F__SZ_;
7525
 
7526
                    }
7527
                  break;
7528
              }
7529
            break;
7530
          case 0x31:
7531
              GETBYTE ();
7532
              switch (op[2] & 0x00)
7533
              {
7534
                case 0x00:
7535
                  goto op_semantics_53;
7536
                  break;
7537
              }
7538
            break;
7539
          case 0x32:
7540
              GETBYTE ();
7541
              switch (op[2] & 0x00)
7542
              {
7543
                case 0x00:
7544
                  goto op_semantics_53;
7545
                  break;
7546
              }
7547
            break;
7548
          case 0x33:
7549
              GETBYTE ();
7550
              switch (op[2] & 0x00)
7551
              {
7552
                case 0x00:
7553
                  goto op_semantics_53;
7554
                  break;
7555
              }
7556
            break;
7557
          case 0x34:
7558
              GETBYTE ();
7559
              switch (op[2] & 0x00)
7560
              {
7561
                case 0x00:
7562
                  op_semantics_54:
7563
                    {
7564
                      /** 1111 1100 0011 01ss rsrc rdst xor     %1%S1, %0 */
7565
#line 413 "rx-decode.opc"
7566
                      int ss AU = op[1] & 0x03;
7567
#line 413 "rx-decode.opc"
7568
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7569
#line 413 "rx-decode.opc"
7570
                      int rdst AU = op[2] & 0x0f;
7571
                      if (trace)
7572
                        {
7573
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7574
                                 "/** 1111 1100 0011 01ss rsrc rdst     xor     %1%S1, %0 */",
7575
                                 op[0], op[1], op[2]);
7576
                          printf ("  ss = 0x%x,", ss);
7577
                          printf ("  rsrc = 0x%x,", rsrc);
7578
                          printf ("  rdst = 0x%x\n", rdst);
7579
                        }
7580
                      SYNTAX("xor       %1%S1, %0");
7581
#line 413 "rx-decode.opc"
7582
                      ID(xor); SP(ss, rsrc); DR(rdst); F__SZ_;
7583
 
7584
                    }
7585
                  break;
7586
              }
7587
            break;
7588
          case 0x35:
7589
              GETBYTE ();
7590
              switch (op[2] & 0x00)
7591
              {
7592
                case 0x00:
7593
                  goto op_semantics_54;
7594
                  break;
7595
              }
7596
            break;
7597
          case 0x36:
7598
              GETBYTE ();
7599
              switch (op[2] & 0x00)
7600
              {
7601
                case 0x00:
7602
                  goto op_semantics_54;
7603
                  break;
7604
              }
7605
            break;
7606
          case 0x37:
7607
              GETBYTE ();
7608
              switch (op[2] & 0x00)
7609
              {
7610
                case 0x00:
7611
                  goto op_semantics_54;
7612
                  break;
7613
              }
7614
            break;
7615
          case 0x3b:
7616
              GETBYTE ();
7617
              switch (op[2] & 0x00)
7618
              {
7619
                case 0x00:
7620
                    {
7621
                      /** 1111 1100 0011 1011 rsrc rdst not     %1, %0 */
7622
#line 425 "rx-decode.opc"
7623
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7624
#line 425 "rx-decode.opc"
7625
                      int rdst AU = op[2] & 0x0f;
7626
                      if (trace)
7627
                        {
7628
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7629
                                 "/** 1111 1100 0011 1011 rsrc rdst     not     %1, %0 */",
7630
                                 op[0], op[1], op[2]);
7631
                          printf ("  rsrc = 0x%x,", rsrc);
7632
                          printf ("  rdst = 0x%x\n", rdst);
7633
                        }
7634
                      SYNTAX("not       %1, %0");
7635
#line 425 "rx-decode.opc"
7636
                      ID(xor); DR(rdst); SR(rsrc); S2C(~0); F__SZ_;
7637
 
7638
                    /*----------------------------------------------------------------------*/
7639
                    /* TST                                                                      */
7640
 
7641
                    }
7642
                  break;
7643
              }
7644
            break;
7645
          case 0x40:
7646
              GETBYTE ();
7647
              switch (op[2] & 0x00)
7648
              {
7649
                case 0x00:
7650
                  op_semantics_55:
7651
                    {
7652
                      /** 1111 1100 0100 00ss rsrc rdst xchg    %1%S1, %0 */
7653
#line 347 "rx-decode.opc"
7654
                      int ss AU = op[1] & 0x03;
7655
#line 347 "rx-decode.opc"
7656
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7657
#line 347 "rx-decode.opc"
7658
                      int rdst AU = op[2] & 0x0f;
7659
                      if (trace)
7660
                        {
7661
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7662
                                 "/** 1111 1100 0100 00ss rsrc rdst     xchg    %1%S1, %0 */",
7663
                                 op[0], op[1], op[2]);
7664
                          printf ("  ss = 0x%x,", ss);
7665
                          printf ("  rsrc = 0x%x,", rsrc);
7666
                          printf ("  rdst = 0x%x\n", rdst);
7667
                        }
7668
                      SYNTAX("xchg      %1%S1, %0");
7669
#line 347 "rx-decode.opc"
7670
                      ID(xchg); DR(rdst); SP(ss, rsrc);
7671
 
7672
                    }
7673
                  break;
7674
              }
7675
            break;
7676
          case 0x41:
7677
              GETBYTE ();
7678
              switch (op[2] & 0x00)
7679
              {
7680
                case 0x00:
7681
                  goto op_semantics_55;
7682
                  break;
7683
              }
7684
            break;
7685
          case 0x42:
7686
              GETBYTE ();
7687
              switch (op[2] & 0x00)
7688
              {
7689
                case 0x00:
7690
                  goto op_semantics_55;
7691
                  break;
7692
              }
7693
            break;
7694
          case 0x43:
7695
              GETBYTE ();
7696
              switch (op[2] & 0x00)
7697
              {
7698
                case 0x00:
7699
                  goto op_semantics_55;
7700
                  break;
7701
              }
7702
            break;
7703
          case 0x44:
7704
              GETBYTE ();
7705
              switch (op[2] & 0x00)
7706
              {
7707
                case 0x00:
7708
                  op_semantics_56:
7709
                    {
7710
                      /** 1111 1100 0100 01sd rsrc rdst itof    %1%S1, %0 */
7711
#line 852 "rx-decode.opc"
7712
                      int sd AU = op[1] & 0x03;
7713
#line 852 "rx-decode.opc"
7714
                      int rsrc AU = (op[2] >> 4) & 0x0f;
7715
#line 852 "rx-decode.opc"
7716
                      int rdst AU = op[2] & 0x0f;
7717
                      if (trace)
7718
                        {
7719
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7720
                                 "/** 1111 1100 0100 01sd rsrc rdst     itof    %1%S1, %0 */",
7721
                                 op[0], op[1], op[2]);
7722
                          printf ("  sd = 0x%x,", sd);
7723
                          printf ("  rsrc = 0x%x,", rsrc);
7724
                          printf ("  rdst = 0x%x\n", rdst);
7725
                        }
7726
                      SYNTAX("itof      %1%S1, %0");
7727
#line 852 "rx-decode.opc"
7728
                      ID(itof); DR (rdst); SP(sd, rsrc); F__SZ_;
7729
 
7730
                    }
7731
                  break;
7732
              }
7733
            break;
7734
          case 0x45:
7735
              GETBYTE ();
7736
              switch (op[2] & 0x00)
7737
              {
7738
                case 0x00:
7739
                  goto op_semantics_56;
7740
                  break;
7741
              }
7742
            break;
7743
          case 0x46:
7744
              GETBYTE ();
7745
              switch (op[2] & 0x00)
7746
              {
7747
                case 0x00:
7748
                  goto op_semantics_56;
7749
                  break;
7750
              }
7751
            break;
7752
          case 0x47:
7753
              GETBYTE ();
7754
              switch (op[2] & 0x00)
7755
              {
7756
                case 0x00:
7757
                  goto op_semantics_56;
7758
                  break;
7759
              }
7760
            break;
7761
          case 0x60:
7762
              GETBYTE ();
7763
              switch (op[2] & 0x00)
7764
              {
7765
                case 0x00:
7766
                  op_semantics_57:
7767
                    {
7768
                      /** 1111 1100 0110 00sd rdst rsrc bset    %1, %0%S0 */
7769
#line 864 "rx-decode.opc"
7770
                      int sd AU = op[1] & 0x03;
7771
#line 864 "rx-decode.opc"
7772
                      int rdst AU = (op[2] >> 4) & 0x0f;
7773
#line 864 "rx-decode.opc"
7774
                      int rsrc AU = op[2] & 0x0f;
7775
                      if (trace)
7776
                        {
7777
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7778
                                 "/** 1111 1100 0110 00sd rdst rsrc     bset    %1, %0%S0 */",
7779
                                 op[0], op[1], op[2]);
7780
                          printf ("  sd = 0x%x,", sd);
7781
                          printf ("  rdst = 0x%x,", rdst);
7782
                          printf ("  rsrc = 0x%x\n", rsrc);
7783
                        }
7784
                      SYNTAX("bset      %1, %0%S0");
7785
#line 864 "rx-decode.opc"
7786
                      ID(bset); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); F_____;
7787
 
7788
                    }
7789
                  break;
7790
              }
7791
            break;
7792
          case 0x61:
7793
              GETBYTE ();
7794
              switch (op[2] & 0x00)
7795
              {
7796
                case 0x00:
7797
                  goto op_semantics_57;
7798
                  break;
7799
              }
7800
            break;
7801
          case 0x62:
7802
              GETBYTE ();
7803
              switch (op[2] & 0x00)
7804
              {
7805
                case 0x00:
7806
                  goto op_semantics_57;
7807
                  break;
7808
              }
7809
            break;
7810
          case 0x63:
7811
              GETBYTE ();
7812
              switch (op[2] & 0x00)
7813
              {
7814
                case 0x00:
7815
                  goto op_semantics_57;
7816
                  break;
7817
              }
7818
            break;
7819
          case 0x64:
7820
              GETBYTE ();
7821
              switch (op[2] & 0x00)
7822
              {
7823
                case 0x00:
7824
                  op_semantics_58:
7825
                    {
7826
                      /** 1111 1100 0110 01sd rdst rsrc bclr    %1, %0%S0 */
7827
#line 874 "rx-decode.opc"
7828
                      int sd AU = op[1] & 0x03;
7829
#line 874 "rx-decode.opc"
7830
                      int rdst AU = (op[2] >> 4) & 0x0f;
7831
#line 874 "rx-decode.opc"
7832
                      int rsrc AU = op[2] & 0x0f;
7833
                      if (trace)
7834
                        {
7835
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7836
                                 "/** 1111 1100 0110 01sd rdst rsrc     bclr    %1, %0%S0 */",
7837
                                 op[0], op[1], op[2]);
7838
                          printf ("  sd = 0x%x,", sd);
7839
                          printf ("  rdst = 0x%x,", rdst);
7840
                          printf ("  rsrc = 0x%x\n", rsrc);
7841
                        }
7842
                      SYNTAX("bclr      %1, %0%S0");
7843
#line 874 "rx-decode.opc"
7844
                      ID(bclr); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); F_____;
7845
 
7846
                    }
7847
                  break;
7848
              }
7849
            break;
7850
          case 0x65:
7851
              GETBYTE ();
7852
              switch (op[2] & 0x00)
7853
              {
7854
                case 0x00:
7855
                  goto op_semantics_58;
7856
                  break;
7857
              }
7858
            break;
7859
          case 0x66:
7860
              GETBYTE ();
7861
              switch (op[2] & 0x00)
7862
              {
7863
                case 0x00:
7864
                  goto op_semantics_58;
7865
                  break;
7866
              }
7867
            break;
7868
          case 0x67:
7869
              GETBYTE ();
7870
              switch (op[2] & 0x00)
7871
              {
7872
                case 0x00:
7873
                  goto op_semantics_58;
7874
                  break;
7875
              }
7876
            break;
7877
          case 0x68:
7878
              GETBYTE ();
7879
              switch (op[2] & 0x00)
7880
              {
7881
                case 0x00:
7882
                  op_semantics_59:
7883
                    {
7884
                      /** 1111 1100 0110 10sd rdst rsrc btst    %2, %1%S1 */
7885
#line 884 "rx-decode.opc"
7886
                      int sd AU = op[1] & 0x03;
7887
#line 884 "rx-decode.opc"
7888
                      int rdst AU = (op[2] >> 4) & 0x0f;
7889
#line 884 "rx-decode.opc"
7890
                      int rsrc AU = op[2] & 0x0f;
7891
                      if (trace)
7892
                        {
7893
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7894
                                 "/** 1111 1100 0110 10sd rdst rsrc     btst    %2, %1%S1 */",
7895
                                 op[0], op[1], op[2]);
7896
                          printf ("  sd = 0x%x,", sd);
7897
                          printf ("  rdst = 0x%x,", rdst);
7898
                          printf ("  rsrc = 0x%x\n", rsrc);
7899
                        }
7900
                      SYNTAX("btst      %2, %1%S1");
7901
#line 884 "rx-decode.opc"
7902
                      ID(btst); BWL(BSIZE); S2R(rsrc); SD(sd, rdst, BSIZE); F___ZC;
7903
 
7904
                    }
7905
                  break;
7906
              }
7907
            break;
7908
          case 0x69:
7909
              GETBYTE ();
7910
              switch (op[2] & 0x00)
7911
              {
7912
                case 0x00:
7913
                  goto op_semantics_59;
7914
                  break;
7915
              }
7916
            break;
7917
          case 0x6a:
7918
              GETBYTE ();
7919
              switch (op[2] & 0x00)
7920
              {
7921
                case 0x00:
7922
                  goto op_semantics_59;
7923
                  break;
7924
              }
7925
            break;
7926
          case 0x6b:
7927
              GETBYTE ();
7928
              switch (op[2] & 0x00)
7929
              {
7930
                case 0x00:
7931
                  goto op_semantics_59;
7932
                  break;
7933
              }
7934
            break;
7935
          case 0x6c:
7936
              GETBYTE ();
7937
              switch (op[2] & 0x00)
7938
              {
7939
                case 0x00:
7940
                  op_semantics_60:
7941
                    {
7942
                      /** 1111 1100 0110 11sd rdst rsrc bnot    %1, %0%S0 */
7943
#line 894 "rx-decode.opc"
7944
                      int sd AU = op[1] & 0x03;
7945
#line 894 "rx-decode.opc"
7946
                      int rdst AU = (op[2] >> 4) & 0x0f;
7947
#line 894 "rx-decode.opc"
7948
                      int rsrc AU = op[2] & 0x0f;
7949
                      if (trace)
7950
                        {
7951
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
7952
                                 "/** 1111 1100 0110 11sd rdst rsrc     bnot    %1, %0%S0 */",
7953
                                 op[0], op[1], op[2]);
7954
                          printf ("  sd = 0x%x,", sd);
7955
                          printf ("  rdst = 0x%x,", rdst);
7956
                          printf ("  rsrc = 0x%x\n", rsrc);
7957
                        }
7958
                      SYNTAX("bnot      %1, %0%S0");
7959
#line 894 "rx-decode.opc"
7960
                      ID(bnot); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE);
7961
 
7962
                    }
7963
                  break;
7964
              }
7965
            break;
7966
          case 0x6d:
7967
              GETBYTE ();
7968
              switch (op[2] & 0x00)
7969
              {
7970
                case 0x00:
7971
                  goto op_semantics_60;
7972
                  break;
7973
              }
7974
            break;
7975
          case 0x6e:
7976
              GETBYTE ();
7977
              switch (op[2] & 0x00)
7978
              {
7979
                case 0x00:
7980
                  goto op_semantics_60;
7981
                  break;
7982
              }
7983
            break;
7984
          case 0x6f:
7985
              GETBYTE ();
7986
              switch (op[2] & 0x00)
7987
              {
7988
                case 0x00:
7989
                  goto op_semantics_60;
7990
                  break;
7991
              }
7992
            break;
7993
          case 0x80:
7994
              GETBYTE ();
7995
              switch (op[2] & 0x00)
7996
              {
7997
                case 0x00:
7998
                  op_semantics_61:
7999
                    {
8000
                      /** 1111 1100 1000 00sd rsrc rdst fsub    %1%S1, %0 */
8001
#line 831 "rx-decode.opc"
8002
                      int sd AU = op[1] & 0x03;
8003
#line 831 "rx-decode.opc"
8004
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8005
#line 831 "rx-decode.opc"
8006
                      int rdst AU = op[2] & 0x0f;
8007
                      if (trace)
8008
                        {
8009
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8010
                                 "/** 1111 1100 1000 00sd rsrc rdst     fsub    %1%S1, %0 */",
8011
                                 op[0], op[1], op[2]);
8012
                          printf ("  sd = 0x%x,", sd);
8013
                          printf ("  rsrc = 0x%x,", rsrc);
8014
                          printf ("  rdst = 0x%x\n", rdst);
8015
                        }
8016
                      SYNTAX("fsub      %1%S1, %0");
8017
#line 831 "rx-decode.opc"
8018
                      ID(fsub); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8019
 
8020
                    }
8021
                  break;
8022
              }
8023
            break;
8024
          case 0x81:
8025
              GETBYTE ();
8026
              switch (op[2] & 0x00)
8027
              {
8028
                case 0x00:
8029
                  goto op_semantics_61;
8030
                  break;
8031
              }
8032
            break;
8033
          case 0x82:
8034
              GETBYTE ();
8035
              switch (op[2] & 0x00)
8036
              {
8037
                case 0x00:
8038
                  goto op_semantics_61;
8039
                  break;
8040
              }
8041
            break;
8042
          case 0x83:
8043
              GETBYTE ();
8044
              switch (op[2] & 0x00)
8045
              {
8046
                case 0x00:
8047
                  goto op_semantics_61;
8048
                  break;
8049
              }
8050
            break;
8051
          case 0x84:
8052
              GETBYTE ();
8053
              switch (op[2] & 0x00)
8054
              {
8055
                case 0x00:
8056
                  op_semantics_62:
8057
                    {
8058
                      /** 1111 1100 1000 01sd rsrc rdst fcmp    %1%S1, %0 */
8059
#line 825 "rx-decode.opc"
8060
                      int sd AU = op[1] & 0x03;
8061
#line 825 "rx-decode.opc"
8062
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8063
#line 825 "rx-decode.opc"
8064
                      int rdst AU = op[2] & 0x0f;
8065
                      if (trace)
8066
                        {
8067
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8068
                                 "/** 1111 1100 1000 01sd rsrc rdst     fcmp    %1%S1, %0 */",
8069
                                 op[0], op[1], op[2]);
8070
                          printf ("  sd = 0x%x,", sd);
8071
                          printf ("  rsrc = 0x%x,", rsrc);
8072
                          printf ("  rdst = 0x%x\n", rdst);
8073
                        }
8074
                      SYNTAX("fcmp      %1%S1, %0");
8075
#line 825 "rx-decode.opc"
8076
                      ID(fcmp); DR(rdst); SD(sd, rsrc, LSIZE); F_OSZ_;
8077
 
8078
                    }
8079
                  break;
8080
              }
8081
            break;
8082
          case 0x85:
8083
              GETBYTE ();
8084
              switch (op[2] & 0x00)
8085
              {
8086
                case 0x00:
8087
                  goto op_semantics_62;
8088
                  break;
8089
              }
8090
            break;
8091
          case 0x86:
8092
              GETBYTE ();
8093
              switch (op[2] & 0x00)
8094
              {
8095
                case 0x00:
8096
                  goto op_semantics_62;
8097
                  break;
8098
              }
8099
            break;
8100
          case 0x87:
8101
              GETBYTE ();
8102
              switch (op[2] & 0x00)
8103
              {
8104
                case 0x00:
8105
                  goto op_semantics_62;
8106
                  break;
8107
              }
8108
            break;
8109
          case 0x88:
8110
              GETBYTE ();
8111
              switch (op[2] & 0x00)
8112
              {
8113
                case 0x00:
8114
                  op_semantics_63:
8115
                    {
8116
                      /** 1111 1100 1000 10sd rsrc rdst fadd    %1%S1, %0 */
8117
#line 819 "rx-decode.opc"
8118
                      int sd AU = op[1] & 0x03;
8119
#line 819 "rx-decode.opc"
8120
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8121
#line 819 "rx-decode.opc"
8122
                      int rdst AU = op[2] & 0x0f;
8123
                      if (trace)
8124
                        {
8125
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8126
                                 "/** 1111 1100 1000 10sd rsrc rdst     fadd    %1%S1, %0 */",
8127
                                 op[0], op[1], op[2]);
8128
                          printf ("  sd = 0x%x,", sd);
8129
                          printf ("  rsrc = 0x%x,", rsrc);
8130
                          printf ("  rdst = 0x%x\n", rdst);
8131
                        }
8132
                      SYNTAX("fadd      %1%S1, %0");
8133
#line 819 "rx-decode.opc"
8134
                      ID(fadd); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8135
 
8136
                    }
8137
                  break;
8138
              }
8139
            break;
8140
          case 0x89:
8141
              GETBYTE ();
8142
              switch (op[2] & 0x00)
8143
              {
8144
                case 0x00:
8145
                  goto op_semantics_63;
8146
                  break;
8147
              }
8148
            break;
8149
          case 0x8a:
8150
              GETBYTE ();
8151
              switch (op[2] & 0x00)
8152
              {
8153
                case 0x00:
8154
                  goto op_semantics_63;
8155
                  break;
8156
              }
8157
            break;
8158
          case 0x8b:
8159
              GETBYTE ();
8160
              switch (op[2] & 0x00)
8161
              {
8162
                case 0x00:
8163
                  goto op_semantics_63;
8164
                  break;
8165
              }
8166
            break;
8167
          case 0x8c:
8168
              GETBYTE ();
8169
              switch (op[2] & 0x00)
8170
              {
8171
                case 0x00:
8172
                  op_semantics_64:
8173
                    {
8174
                      /** 1111 1100 1000 11sd rsrc rdst fmul    %1%S1, %0 */
8175
#line 840 "rx-decode.opc"
8176
                      int sd AU = op[1] & 0x03;
8177
#line 840 "rx-decode.opc"
8178
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8179
#line 840 "rx-decode.opc"
8180
                      int rdst AU = op[2] & 0x0f;
8181
                      if (trace)
8182
                        {
8183
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8184
                                 "/** 1111 1100 1000 11sd rsrc rdst     fmul    %1%S1, %0 */",
8185
                                 op[0], op[1], op[2]);
8186
                          printf ("  sd = 0x%x,", sd);
8187
                          printf ("  rsrc = 0x%x,", rsrc);
8188
                          printf ("  rdst = 0x%x\n", rdst);
8189
                        }
8190
                      SYNTAX("fmul      %1%S1, %0");
8191
#line 840 "rx-decode.opc"
8192
                      ID(fmul); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8193
 
8194
                    }
8195
                  break;
8196
              }
8197
            break;
8198
          case 0x8d:
8199
              GETBYTE ();
8200
              switch (op[2] & 0x00)
8201
              {
8202
                case 0x00:
8203
                  goto op_semantics_64;
8204
                  break;
8205
              }
8206
            break;
8207
          case 0x8e:
8208
              GETBYTE ();
8209
              switch (op[2] & 0x00)
8210
              {
8211
                case 0x00:
8212
                  goto op_semantics_64;
8213
                  break;
8214
              }
8215
            break;
8216
          case 0x8f:
8217
              GETBYTE ();
8218
              switch (op[2] & 0x00)
8219
              {
8220
                case 0x00:
8221
                  goto op_semantics_64;
8222
                  break;
8223
              }
8224
            break;
8225
          case 0x90:
8226
              GETBYTE ();
8227
              switch (op[2] & 0x00)
8228
              {
8229
                case 0x00:
8230
                  op_semantics_65:
8231
                    {
8232
                      /** 1111 1100 1001 00sd rsrc rdst fdiv    %1%S1, %0 */
8233
#line 846 "rx-decode.opc"
8234
                      int sd AU = op[1] & 0x03;
8235
#line 846 "rx-decode.opc"
8236
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8237
#line 846 "rx-decode.opc"
8238
                      int rdst AU = op[2] & 0x0f;
8239
                      if (trace)
8240
                        {
8241
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8242
                                 "/** 1111 1100 1001 00sd rsrc rdst     fdiv    %1%S1, %0 */",
8243
                                 op[0], op[1], op[2]);
8244
                          printf ("  sd = 0x%x,", sd);
8245
                          printf ("  rsrc = 0x%x,", rsrc);
8246
                          printf ("  rdst = 0x%x\n", rdst);
8247
                        }
8248
                      SYNTAX("fdiv      %1%S1, %0");
8249
#line 846 "rx-decode.opc"
8250
                      ID(fdiv); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8251
 
8252
                    }
8253
                  break;
8254
              }
8255
            break;
8256
          case 0x91:
8257
              GETBYTE ();
8258
              switch (op[2] & 0x00)
8259
              {
8260
                case 0x00:
8261
                  goto op_semantics_65;
8262
                  break;
8263
              }
8264
            break;
8265
          case 0x92:
8266
              GETBYTE ();
8267
              switch (op[2] & 0x00)
8268
              {
8269
                case 0x00:
8270
                  goto op_semantics_65;
8271
                  break;
8272
              }
8273
            break;
8274
          case 0x93:
8275
              GETBYTE ();
8276
              switch (op[2] & 0x00)
8277
              {
8278
                case 0x00:
8279
                  goto op_semantics_65;
8280
                  break;
8281
              }
8282
            break;
8283
          case 0x94:
8284
              GETBYTE ();
8285
              switch (op[2] & 0x00)
8286
              {
8287
                case 0x00:
8288
                  op_semantics_66:
8289
                    {
8290
                      /** 1111 1100 1001 01sd rsrc rdst ftoi    %1%S1, %0 */
8291
#line 834 "rx-decode.opc"
8292
                      int sd AU = op[1] & 0x03;
8293
#line 834 "rx-decode.opc"
8294
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8295
#line 834 "rx-decode.opc"
8296
                      int rdst AU = op[2] & 0x0f;
8297
                      if (trace)
8298
                        {
8299
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8300
                                 "/** 1111 1100 1001 01sd rsrc rdst     ftoi    %1%S1, %0 */",
8301
                                 op[0], op[1], op[2]);
8302
                          printf ("  sd = 0x%x,", sd);
8303
                          printf ("  rsrc = 0x%x,", rsrc);
8304
                          printf ("  rdst = 0x%x\n", rdst);
8305
                        }
8306
                      SYNTAX("ftoi      %1%S1, %0");
8307
#line 834 "rx-decode.opc"
8308
                      ID(ftoi); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8309
 
8310
                    }
8311
                  break;
8312
              }
8313
            break;
8314
          case 0x95:
8315
              GETBYTE ();
8316
              switch (op[2] & 0x00)
8317
              {
8318
                case 0x00:
8319
                  goto op_semantics_66;
8320
                  break;
8321
              }
8322
            break;
8323
          case 0x96:
8324
              GETBYTE ();
8325
              switch (op[2] & 0x00)
8326
              {
8327
                case 0x00:
8328
                  goto op_semantics_66;
8329
                  break;
8330
              }
8331
            break;
8332
          case 0x97:
8333
              GETBYTE ();
8334
              switch (op[2] & 0x00)
8335
              {
8336
                case 0x00:
8337
                  goto op_semantics_66;
8338
                  break;
8339
              }
8340
            break;
8341
          case 0x98:
8342
              GETBYTE ();
8343
              switch (op[2] & 0x00)
8344
              {
8345
                case 0x00:
8346
                  op_semantics_67:
8347
                    {
8348
                      /** 1111 1100 1001 10sd rsrc rdst round   %1%S1, %0 */
8349
#line 849 "rx-decode.opc"
8350
                      int sd AU = op[1] & 0x03;
8351
#line 849 "rx-decode.opc"
8352
                      int rsrc AU = (op[2] >> 4) & 0x0f;
8353
#line 849 "rx-decode.opc"
8354
                      int rdst AU = op[2] & 0x0f;
8355
                      if (trace)
8356
                        {
8357
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8358
                                 "/** 1111 1100 1001 10sd rsrc rdst     round   %1%S1, %0 */",
8359
                                 op[0], op[1], op[2]);
8360
                          printf ("  sd = 0x%x,", sd);
8361
                          printf ("  rsrc = 0x%x,", rsrc);
8362
                          printf ("  rdst = 0x%x\n", rdst);
8363
                        }
8364
                      SYNTAX("round     %1%S1, %0");
8365
#line 849 "rx-decode.opc"
8366
                      ID(round); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8367
 
8368
                    }
8369
                  break;
8370
              }
8371
            break;
8372
          case 0x99:
8373
              GETBYTE ();
8374
              switch (op[2] & 0x00)
8375
              {
8376
                case 0x00:
8377
                  goto op_semantics_67;
8378
                  break;
8379
              }
8380
            break;
8381
          case 0x9a:
8382
              GETBYTE ();
8383
              switch (op[2] & 0x00)
8384
              {
8385
                case 0x00:
8386
                  goto op_semantics_67;
8387
                  break;
8388
              }
8389
            break;
8390
          case 0x9b:
8391
              GETBYTE ();
8392
              switch (op[2] & 0x00)
8393
              {
8394
                case 0x00:
8395
                  goto op_semantics_67;
8396
                  break;
8397
              }
8398
            break;
8399
          case 0xd0:
8400
              GETBYTE ();
8401
              switch (op[2] & 0x00)
8402
              {
8403
                case 0x00:
8404
                  op_semantics_68:
8405
                    {
8406
                      /** 1111 1100 1101 sz sd rdst cond        sc%1%s  %0 */
8407
#line 958 "rx-decode.opc"
8408
                      int sz AU = (op[1] >> 2) & 0x03;
8409
#line 958 "rx-decode.opc"
8410
                      int sd AU = op[1] & 0x03;
8411
#line 958 "rx-decode.opc"
8412
                      int rdst AU = (op[2] >> 4) & 0x0f;
8413
#line 958 "rx-decode.opc"
8414
                      int cond AU = op[2] & 0x0f;
8415
                      if (trace)
8416
                        {
8417
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8418
                                 "/** 1111 1100 1101 sz sd rdst cond    sc%1%s  %0 */",
8419
                                 op[0], op[1], op[2]);
8420
                          printf ("  sz = 0x%x,", sz);
8421
                          printf ("  sd = 0x%x,", sd);
8422
                          printf ("  rdst = 0x%x,", rdst);
8423
                          printf ("  cond = 0x%x\n", cond);
8424
                        }
8425
                      SYNTAX("sc%1%s    %0");
8426
#line 958 "rx-decode.opc"
8427
                      ID(sccnd); BWL(sz); DD (sd, rdst, sz); Scc(cond);
8428
 
8429
                    }
8430
                  break;
8431
              }
8432
            break;
8433
          case 0xd1:
8434
              GETBYTE ();
8435
              switch (op[2] & 0x00)
8436
              {
8437
                case 0x00:
8438
                  goto op_semantics_68;
8439
                  break;
8440
              }
8441
            break;
8442
          case 0xd2:
8443
              GETBYTE ();
8444
              switch (op[2] & 0x00)
8445
              {
8446
                case 0x00:
8447
                  goto op_semantics_68;
8448
                  break;
8449
              }
8450
            break;
8451
          case 0xd3:
8452
              GETBYTE ();
8453
              switch (op[2] & 0x00)
8454
              {
8455
                case 0x00:
8456
                  goto op_semantics_68;
8457
                  break;
8458
              }
8459
            break;
8460
          case 0xd4:
8461
              GETBYTE ();
8462
              switch (op[2] & 0x00)
8463
              {
8464
                case 0x00:
8465
                  goto op_semantics_68;
8466
                  break;
8467
              }
8468
            break;
8469
          case 0xd5:
8470
              GETBYTE ();
8471
              switch (op[2] & 0x00)
8472
              {
8473
                case 0x00:
8474
                  goto op_semantics_68;
8475
                  break;
8476
              }
8477
            break;
8478
          case 0xd6:
8479
              GETBYTE ();
8480
              switch (op[2] & 0x00)
8481
              {
8482
                case 0x00:
8483
                  goto op_semantics_68;
8484
                  break;
8485
              }
8486
            break;
8487
          case 0xd7:
8488
              GETBYTE ();
8489
              switch (op[2] & 0x00)
8490
              {
8491
                case 0x00:
8492
                  goto op_semantics_68;
8493
                  break;
8494
              }
8495
            break;
8496
          case 0xd8:
8497
              GETBYTE ();
8498
              switch (op[2] & 0x00)
8499
              {
8500
                case 0x00:
8501
                  goto op_semantics_68;
8502
                  break;
8503
              }
8504
            break;
8505
          case 0xd9:
8506
              GETBYTE ();
8507
              switch (op[2] & 0x00)
8508
              {
8509
                case 0x00:
8510
                  goto op_semantics_68;
8511
                  break;
8512
              }
8513
            break;
8514
          case 0xda:
8515
              GETBYTE ();
8516
              switch (op[2] & 0x00)
8517
              {
8518
                case 0x00:
8519
                  goto op_semantics_68;
8520
                  break;
8521
              }
8522
            break;
8523
          case 0xdb:
8524
              GETBYTE ();
8525
              switch (op[2] & 0x00)
8526
              {
8527
                case 0x00:
8528
                  goto op_semantics_68;
8529
                  break;
8530
              }
8531
            break;
8532
          case 0xe0:
8533
              GETBYTE ();
8534
              switch (op[2] & 0x0f)
8535
              {
8536
                case 0x00:
8537
                case 0x01:
8538
                case 0x02:
8539
                case 0x03:
8540
                case 0x04:
8541
                case 0x05:
8542
                case 0x06:
8543
                case 0x07:
8544
                case 0x08:
8545
                case 0x09:
8546
                case 0x0a:
8547
                case 0x0b:
8548
                case 0x0c:
8549
                case 0x0d:
8550
                case 0x0e:
8551
                  op_semantics_69:
8552
                    {
8553
                      /** 1111 1100 111bit sd rdst cond bm%2    #%1, %0%S0 */
8554
#line 901 "rx-decode.opc"
8555
                      int bit AU = (op[1] >> 2) & 0x07;
8556
#line 901 "rx-decode.opc"
8557
                      int sd AU = op[1] & 0x03;
8558
#line 901 "rx-decode.opc"
8559
                      int rdst AU = (op[2] >> 4) & 0x0f;
8560
#line 901 "rx-decode.opc"
8561
                      int cond AU = op[2] & 0x0f;
8562
                      if (trace)
8563
                        {
8564
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8565
                                 "/** 1111 1100 111bit sd rdst cond     bm%2    #%1, %0%S0 */",
8566
                                 op[0], op[1], op[2]);
8567
                          printf ("  bit = 0x%x,", bit);
8568
                          printf ("  sd = 0x%x,", sd);
8569
                          printf ("  rdst = 0x%x,", rdst);
8570
                          printf ("  cond = 0x%x\n", cond);
8571
                        }
8572
                      SYNTAX("bm%2      #%1, %0%S0");
8573
#line 901 "rx-decode.opc"
8574
                      ID(bmcc); BWL(BSIZE); S2cc(cond); SC(bit); DD(sd, rdst, BSIZE);
8575
 
8576
                    }
8577
                  break;
8578
                case 0x0f:
8579
                  op_semantics_70:
8580
                    {
8581
                      /** 1111 1100 111bit sd rdst 1111 bnot    #%1, %0%S0 */
8582
#line 891 "rx-decode.opc"
8583
                      int bit AU = (op[1] >> 2) & 0x07;
8584
#line 891 "rx-decode.opc"
8585
                      int sd AU = op[1] & 0x03;
8586
#line 891 "rx-decode.opc"
8587
                      int rdst AU = (op[2] >> 4) & 0x0f;
8588
                      if (trace)
8589
                        {
8590
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
8591
                                 "/** 1111 1100 111bit sd rdst 1111     bnot    #%1, %0%S0 */",
8592
                                 op[0], op[1], op[2]);
8593
                          printf ("  bit = 0x%x,", bit);
8594
                          printf ("  sd = 0x%x,", sd);
8595
                          printf ("  rdst = 0x%x\n", rdst);
8596
                        }
8597
                      SYNTAX("bnot      #%1, %0%S0");
8598
#line 891 "rx-decode.opc"
8599
                      ID(bnot); BWL(BSIZE); SC(bit); DD(sd, rdst, BSIZE);
8600
 
8601
                    }
8602
                  break;
8603
              }
8604
            break;
8605
          case 0xe1:
8606
              GETBYTE ();
8607
              switch (op[2] & 0x0f)
8608
              {
8609
                case 0x00:
8610
                case 0x01:
8611
                case 0x02:
8612
                case 0x03:
8613
                case 0x04:
8614
                case 0x05:
8615
                case 0x06:
8616
                case 0x07:
8617
                case 0x08:
8618
                case 0x09:
8619
                case 0x0a:
8620
                case 0x0b:
8621
                case 0x0c:
8622
                case 0x0d:
8623
                case 0x0e:
8624
                  goto op_semantics_69;
8625
                  break;
8626
                case 0x0f:
8627
                  goto op_semantics_70;
8628
                  break;
8629
              }
8630
            break;
8631
          case 0xe2:
8632
              GETBYTE ();
8633
              switch (op[2] & 0x0f)
8634
              {
8635
                case 0x00:
8636
                case 0x01:
8637
                case 0x02:
8638
                case 0x03:
8639
                case 0x04:
8640
                case 0x05:
8641
                case 0x06:
8642
                case 0x07:
8643
                case 0x08:
8644
                case 0x09:
8645
                case 0x0a:
8646
                case 0x0b:
8647
                case 0x0c:
8648
                case 0x0d:
8649
                case 0x0e:
8650
                  goto op_semantics_69;
8651
                  break;
8652
                case 0x0f:
8653
                  goto op_semantics_70;
8654
                  break;
8655
              }
8656
            break;
8657
          case 0xe3:
8658
              GETBYTE ();
8659
              switch (op[2] & 0x0f)
8660
              {
8661
                case 0x00:
8662
                case 0x01:
8663
                case 0x02:
8664
                case 0x03:
8665
                case 0x04:
8666
                case 0x05:
8667
                case 0x06:
8668
                case 0x07:
8669
                case 0x08:
8670
                case 0x09:
8671
                case 0x0a:
8672
                case 0x0b:
8673
                case 0x0c:
8674
                case 0x0d:
8675
                case 0x0e:
8676
                  goto op_semantics_69;
8677
                  break;
8678
                case 0x0f:
8679
                  goto op_semantics_70;
8680
                  break;
8681
              }
8682
            break;
8683
          case 0xe4:
8684
              GETBYTE ();
8685
              switch (op[2] & 0x0f)
8686
              {
8687
                case 0x00:
8688
                case 0x01:
8689
                case 0x02:
8690
                case 0x03:
8691
                case 0x04:
8692
                case 0x05:
8693
                case 0x06:
8694
                case 0x07:
8695
                case 0x08:
8696
                case 0x09:
8697
                case 0x0a:
8698
                case 0x0b:
8699
                case 0x0c:
8700
                case 0x0d:
8701
                case 0x0e:
8702
                  goto op_semantics_69;
8703
                  break;
8704
                case 0x0f:
8705
                  goto op_semantics_70;
8706
                  break;
8707
              }
8708
            break;
8709
          case 0xe5:
8710
              GETBYTE ();
8711
              switch (op[2] & 0x0f)
8712
              {
8713
                case 0x00:
8714
                case 0x01:
8715
                case 0x02:
8716
                case 0x03:
8717
                case 0x04:
8718
                case 0x05:
8719
                case 0x06:
8720
                case 0x07:
8721
                case 0x08:
8722
                case 0x09:
8723
                case 0x0a:
8724
                case 0x0b:
8725
                case 0x0c:
8726
                case 0x0d:
8727
                case 0x0e:
8728
                  goto op_semantics_69;
8729
                  break;
8730
                case 0x0f:
8731
                  goto op_semantics_70;
8732
                  break;
8733
              }
8734
            break;
8735
          case 0xe6:
8736
              GETBYTE ();
8737
              switch (op[2] & 0x0f)
8738
              {
8739
                case 0x00:
8740
                case 0x01:
8741
                case 0x02:
8742
                case 0x03:
8743
                case 0x04:
8744
                case 0x05:
8745
                case 0x06:
8746
                case 0x07:
8747
                case 0x08:
8748
                case 0x09:
8749
                case 0x0a:
8750
                case 0x0b:
8751
                case 0x0c:
8752
                case 0x0d:
8753
                case 0x0e:
8754
                  goto op_semantics_69;
8755
                  break;
8756
                case 0x0f:
8757
                  goto op_semantics_70;
8758
                  break;
8759
              }
8760
            break;
8761
          case 0xe7:
8762
              GETBYTE ();
8763
              switch (op[2] & 0x0f)
8764
              {
8765
                case 0x00:
8766
                case 0x01:
8767
                case 0x02:
8768
                case 0x03:
8769
                case 0x04:
8770
                case 0x05:
8771
                case 0x06:
8772
                case 0x07:
8773
                case 0x08:
8774
                case 0x09:
8775
                case 0x0a:
8776
                case 0x0b:
8777
                case 0x0c:
8778
                case 0x0d:
8779
                case 0x0e:
8780
                  goto op_semantics_69;
8781
                  break;
8782
                case 0x0f:
8783
                  goto op_semantics_70;
8784
                  break;
8785
              }
8786
            break;
8787
          case 0xe8:
8788
              GETBYTE ();
8789
              switch (op[2] & 0x0f)
8790
              {
8791
                case 0x00:
8792
                case 0x01:
8793
                case 0x02:
8794
                case 0x03:
8795
                case 0x04:
8796
                case 0x05:
8797
                case 0x06:
8798
                case 0x07:
8799
                case 0x08:
8800
                case 0x09:
8801
                case 0x0a:
8802
                case 0x0b:
8803
                case 0x0c:
8804
                case 0x0d:
8805
                case 0x0e:
8806
                  goto op_semantics_69;
8807
                  break;
8808
                case 0x0f:
8809
                  goto op_semantics_70;
8810
                  break;
8811
              }
8812
            break;
8813
          case 0xe9:
8814
              GETBYTE ();
8815
              switch (op[2] & 0x0f)
8816
              {
8817
                case 0x00:
8818
                case 0x01:
8819
                case 0x02:
8820
                case 0x03:
8821
                case 0x04:
8822
                case 0x05:
8823
                case 0x06:
8824
                case 0x07:
8825
                case 0x08:
8826
                case 0x09:
8827
                case 0x0a:
8828
                case 0x0b:
8829
                case 0x0c:
8830
                case 0x0d:
8831
                case 0x0e:
8832
                  goto op_semantics_69;
8833
                  break;
8834
                case 0x0f:
8835
                  goto op_semantics_70;
8836
                  break;
8837
              }
8838
            break;
8839
          case 0xea:
8840
              GETBYTE ();
8841
              switch (op[2] & 0x0f)
8842
              {
8843
                case 0x00:
8844
                case 0x01:
8845
                case 0x02:
8846
                case 0x03:
8847
                case 0x04:
8848
                case 0x05:
8849
                case 0x06:
8850
                case 0x07:
8851
                case 0x08:
8852
                case 0x09:
8853
                case 0x0a:
8854
                case 0x0b:
8855
                case 0x0c:
8856
                case 0x0d:
8857
                case 0x0e:
8858
                  goto op_semantics_69;
8859
                  break;
8860
                case 0x0f:
8861
                  goto op_semantics_70;
8862
                  break;
8863
              }
8864
            break;
8865
          case 0xeb:
8866
              GETBYTE ();
8867
              switch (op[2] & 0x0f)
8868
              {
8869
                case 0x00:
8870
                case 0x01:
8871
                case 0x02:
8872
                case 0x03:
8873
                case 0x04:
8874
                case 0x05:
8875
                case 0x06:
8876
                case 0x07:
8877
                case 0x08:
8878
                case 0x09:
8879
                case 0x0a:
8880
                case 0x0b:
8881
                case 0x0c:
8882
                case 0x0d:
8883
                case 0x0e:
8884
                  goto op_semantics_69;
8885
                  break;
8886
                case 0x0f:
8887
                  goto op_semantics_70;
8888
                  break;
8889
              }
8890
            break;
8891
          case 0xec:
8892
              GETBYTE ();
8893
              switch (op[2] & 0x0f)
8894
              {
8895
                case 0x00:
8896
                case 0x01:
8897
                case 0x02:
8898
                case 0x03:
8899
                case 0x04:
8900
                case 0x05:
8901
                case 0x06:
8902
                case 0x07:
8903
                case 0x08:
8904
                case 0x09:
8905
                case 0x0a:
8906
                case 0x0b:
8907
                case 0x0c:
8908
                case 0x0d:
8909
                case 0x0e:
8910
                  goto op_semantics_69;
8911
                  break;
8912
                case 0x0f:
8913
                  goto op_semantics_70;
8914
                  break;
8915
              }
8916
            break;
8917
          case 0xed:
8918
              GETBYTE ();
8919
              switch (op[2] & 0x0f)
8920
              {
8921
                case 0x00:
8922
                case 0x01:
8923
                case 0x02:
8924
                case 0x03:
8925
                case 0x04:
8926
                case 0x05:
8927
                case 0x06:
8928
                case 0x07:
8929
                case 0x08:
8930
                case 0x09:
8931
                case 0x0a:
8932
                case 0x0b:
8933
                case 0x0c:
8934
                case 0x0d:
8935
                case 0x0e:
8936
                  goto op_semantics_69;
8937
                  break;
8938
                case 0x0f:
8939
                  goto op_semantics_70;
8940
                  break;
8941
              }
8942
            break;
8943
          case 0xee:
8944
              GETBYTE ();
8945
              switch (op[2] & 0x0f)
8946
              {
8947
                case 0x00:
8948
                case 0x01:
8949
                case 0x02:
8950
                case 0x03:
8951
                case 0x04:
8952
                case 0x05:
8953
                case 0x06:
8954
                case 0x07:
8955
                case 0x08:
8956
                case 0x09:
8957
                case 0x0a:
8958
                case 0x0b:
8959
                case 0x0c:
8960
                case 0x0d:
8961
                case 0x0e:
8962
                  goto op_semantics_69;
8963
                  break;
8964
                case 0x0f:
8965
                  goto op_semantics_70;
8966
                  break;
8967
              }
8968
            break;
8969
          case 0xef:
8970
              GETBYTE ();
8971
              switch (op[2] & 0x0f)
8972
              {
8973
                case 0x00:
8974
                case 0x01:
8975
                case 0x02:
8976
                case 0x03:
8977
                case 0x04:
8978
                case 0x05:
8979
                case 0x06:
8980
                case 0x07:
8981
                case 0x08:
8982
                case 0x09:
8983
                case 0x0a:
8984
                case 0x0b:
8985
                case 0x0c:
8986
                case 0x0d:
8987
                case 0x0e:
8988
                  goto op_semantics_69;
8989
                  break;
8990
                case 0x0f:
8991
                  goto op_semantics_70;
8992
                  break;
8993
              }
8994
            break;
8995
          case 0xf0:
8996
              GETBYTE ();
8997
              switch (op[2] & 0x0f)
8998
              {
8999
                case 0x00:
9000
                case 0x01:
9001
                case 0x02:
9002
                case 0x03:
9003
                case 0x04:
9004
                case 0x05:
9005
                case 0x06:
9006
                case 0x07:
9007
                case 0x08:
9008
                case 0x09:
9009
                case 0x0a:
9010
                case 0x0b:
9011
                case 0x0c:
9012
                case 0x0d:
9013
                case 0x0e:
9014
                  goto op_semantics_69;
9015
                  break;
9016
                case 0x0f:
9017
                  goto op_semantics_70;
9018
                  break;
9019
              }
9020
            break;
9021
          case 0xf1:
9022
              GETBYTE ();
9023
              switch (op[2] & 0x0f)
9024
              {
9025
                case 0x00:
9026
                case 0x01:
9027
                case 0x02:
9028
                case 0x03:
9029
                case 0x04:
9030
                case 0x05:
9031
                case 0x06:
9032
                case 0x07:
9033
                case 0x08:
9034
                case 0x09:
9035
                case 0x0a:
9036
                case 0x0b:
9037
                case 0x0c:
9038
                case 0x0d:
9039
                case 0x0e:
9040
                  goto op_semantics_69;
9041
                  break;
9042
                case 0x0f:
9043
                  goto op_semantics_70;
9044
                  break;
9045
              }
9046
            break;
9047
          case 0xf2:
9048
              GETBYTE ();
9049
              switch (op[2] & 0x0f)
9050
              {
9051
                case 0x00:
9052
                case 0x01:
9053
                case 0x02:
9054
                case 0x03:
9055
                case 0x04:
9056
                case 0x05:
9057
                case 0x06:
9058
                case 0x07:
9059
                case 0x08:
9060
                case 0x09:
9061
                case 0x0a:
9062
                case 0x0b:
9063
                case 0x0c:
9064
                case 0x0d:
9065
                case 0x0e:
9066
                  goto op_semantics_69;
9067
                  break;
9068
                case 0x0f:
9069
                  goto op_semantics_70;
9070
                  break;
9071
              }
9072
            break;
9073
          case 0xf3:
9074
              GETBYTE ();
9075
              switch (op[2] & 0x0f)
9076
              {
9077
                case 0x00:
9078
                case 0x01:
9079
                case 0x02:
9080
                case 0x03:
9081
                case 0x04:
9082
                case 0x05:
9083
                case 0x06:
9084
                case 0x07:
9085
                case 0x08:
9086
                case 0x09:
9087
                case 0x0a:
9088
                case 0x0b:
9089
                case 0x0c:
9090
                case 0x0d:
9091
                case 0x0e:
9092
                  goto op_semantics_69;
9093
                  break;
9094
                case 0x0f:
9095
                  goto op_semantics_70;
9096
                  break;
9097
              }
9098
            break;
9099
          case 0xf4:
9100
              GETBYTE ();
9101
              switch (op[2] & 0x0f)
9102
              {
9103
                case 0x00:
9104
                case 0x01:
9105
                case 0x02:
9106
                case 0x03:
9107
                case 0x04:
9108
                case 0x05:
9109
                case 0x06:
9110
                case 0x07:
9111
                case 0x08:
9112
                case 0x09:
9113
                case 0x0a:
9114
                case 0x0b:
9115
                case 0x0c:
9116
                case 0x0d:
9117
                case 0x0e:
9118
                  goto op_semantics_69;
9119
                  break;
9120
                case 0x0f:
9121
                  goto op_semantics_70;
9122
                  break;
9123
              }
9124
            break;
9125
          case 0xf5:
9126
              GETBYTE ();
9127
              switch (op[2] & 0x0f)
9128
              {
9129
                case 0x00:
9130
                case 0x01:
9131
                case 0x02:
9132
                case 0x03:
9133
                case 0x04:
9134
                case 0x05:
9135
                case 0x06:
9136
                case 0x07:
9137
                case 0x08:
9138
                case 0x09:
9139
                case 0x0a:
9140
                case 0x0b:
9141
                case 0x0c:
9142
                case 0x0d:
9143
                case 0x0e:
9144
                  goto op_semantics_69;
9145
                  break;
9146
                case 0x0f:
9147
                  goto op_semantics_70;
9148
                  break;
9149
              }
9150
            break;
9151
          case 0xf6:
9152
              GETBYTE ();
9153
              switch (op[2] & 0x0f)
9154
              {
9155
                case 0x00:
9156
                case 0x01:
9157
                case 0x02:
9158
                case 0x03:
9159
                case 0x04:
9160
                case 0x05:
9161
                case 0x06:
9162
                case 0x07:
9163
                case 0x08:
9164
                case 0x09:
9165
                case 0x0a:
9166
                case 0x0b:
9167
                case 0x0c:
9168
                case 0x0d:
9169
                case 0x0e:
9170
                  goto op_semantics_69;
9171
                  break;
9172
                case 0x0f:
9173
                  goto op_semantics_70;
9174
                  break;
9175
              }
9176
            break;
9177
          case 0xf7:
9178
              GETBYTE ();
9179
              switch (op[2] & 0x0f)
9180
              {
9181
                case 0x00:
9182
                case 0x01:
9183
                case 0x02:
9184
                case 0x03:
9185
                case 0x04:
9186
                case 0x05:
9187
                case 0x06:
9188
                case 0x07:
9189
                case 0x08:
9190
                case 0x09:
9191
                case 0x0a:
9192
                case 0x0b:
9193
                case 0x0c:
9194
                case 0x0d:
9195
                case 0x0e:
9196
                  goto op_semantics_69;
9197
                  break;
9198
                case 0x0f:
9199
                  goto op_semantics_70;
9200
                  break;
9201
              }
9202
            break;
9203
          case 0xf8:
9204
              GETBYTE ();
9205
              switch (op[2] & 0x0f)
9206
              {
9207
                case 0x00:
9208
                case 0x01:
9209
                case 0x02:
9210
                case 0x03:
9211
                case 0x04:
9212
                case 0x05:
9213
                case 0x06:
9214
                case 0x07:
9215
                case 0x08:
9216
                case 0x09:
9217
                case 0x0a:
9218
                case 0x0b:
9219
                case 0x0c:
9220
                case 0x0d:
9221
                case 0x0e:
9222
                  goto op_semantics_69;
9223
                  break;
9224
                case 0x0f:
9225
                  goto op_semantics_70;
9226
                  break;
9227
              }
9228
            break;
9229
          case 0xf9:
9230
              GETBYTE ();
9231
              switch (op[2] & 0x0f)
9232
              {
9233
                case 0x00:
9234
                case 0x01:
9235
                case 0x02:
9236
                case 0x03:
9237
                case 0x04:
9238
                case 0x05:
9239
                case 0x06:
9240
                case 0x07:
9241
                case 0x08:
9242
                case 0x09:
9243
                case 0x0a:
9244
                case 0x0b:
9245
                case 0x0c:
9246
                case 0x0d:
9247
                case 0x0e:
9248
                  goto op_semantics_69;
9249
                  break;
9250
                case 0x0f:
9251
                  goto op_semantics_70;
9252
                  break;
9253
              }
9254
            break;
9255
          case 0xfa:
9256
              GETBYTE ();
9257
              switch (op[2] & 0x0f)
9258
              {
9259
                case 0x00:
9260
                case 0x01:
9261
                case 0x02:
9262
                case 0x03:
9263
                case 0x04:
9264
                case 0x05:
9265
                case 0x06:
9266
                case 0x07:
9267
                case 0x08:
9268
                case 0x09:
9269
                case 0x0a:
9270
                case 0x0b:
9271
                case 0x0c:
9272
                case 0x0d:
9273
                case 0x0e:
9274
                  goto op_semantics_69;
9275
                  break;
9276
                case 0x0f:
9277
                  goto op_semantics_70;
9278
                  break;
9279
              }
9280
            break;
9281
          case 0xfb:
9282
              GETBYTE ();
9283
              switch (op[2] & 0x0f)
9284
              {
9285
                case 0x00:
9286
                case 0x01:
9287
                case 0x02:
9288
                case 0x03:
9289
                case 0x04:
9290
                case 0x05:
9291
                case 0x06:
9292
                case 0x07:
9293
                case 0x08:
9294
                case 0x09:
9295
                case 0x0a:
9296
                case 0x0b:
9297
                case 0x0c:
9298
                case 0x0d:
9299
                case 0x0e:
9300
                  goto op_semantics_69;
9301
                  break;
9302
                case 0x0f:
9303
                  goto op_semantics_70;
9304
                  break;
9305
              }
9306
            break;
9307
          case 0xfc:
9308
              GETBYTE ();
9309
              switch (op[2] & 0x0f)
9310
              {
9311
                case 0x00:
9312
                case 0x01:
9313
                case 0x02:
9314
                case 0x03:
9315
                case 0x04:
9316
                case 0x05:
9317
                case 0x06:
9318
                case 0x07:
9319
                case 0x08:
9320
                case 0x09:
9321
                case 0x0a:
9322
                case 0x0b:
9323
                case 0x0c:
9324
                case 0x0d:
9325
                case 0x0e:
9326
                  goto op_semantics_69;
9327
                  break;
9328
                case 0x0f:
9329
                  goto op_semantics_70;
9330
                  break;
9331
              }
9332
            break;
9333
          case 0xfd:
9334
              GETBYTE ();
9335
              switch (op[2] & 0x0f)
9336
              {
9337
                case 0x00:
9338
                case 0x01:
9339
                case 0x02:
9340
                case 0x03:
9341
                case 0x04:
9342
                case 0x05:
9343
                case 0x06:
9344
                case 0x07:
9345
                case 0x08:
9346
                case 0x09:
9347
                case 0x0a:
9348
                case 0x0b:
9349
                case 0x0c:
9350
                case 0x0d:
9351
                case 0x0e:
9352
                  goto op_semantics_69;
9353
                  break;
9354
                case 0x0f:
9355
                  goto op_semantics_70;
9356
                  break;
9357
              }
9358
            break;
9359
          case 0xfe:
9360
              GETBYTE ();
9361
              switch (op[2] & 0x0f)
9362
              {
9363
                case 0x00:
9364
                case 0x01:
9365
                case 0x02:
9366
                case 0x03:
9367
                case 0x04:
9368
                case 0x05:
9369
                case 0x06:
9370
                case 0x07:
9371
                case 0x08:
9372
                case 0x09:
9373
                case 0x0a:
9374
                case 0x0b:
9375
                case 0x0c:
9376
                case 0x0d:
9377
                case 0x0e:
9378
                  goto op_semantics_69;
9379
                  break;
9380
                case 0x0f:
9381
                  goto op_semantics_70;
9382
                  break;
9383
              }
9384
            break;
9385
          case 0xff:
9386
              GETBYTE ();
9387
              switch (op[2] & 0x0f)
9388
              {
9389
                case 0x00:
9390
                case 0x01:
9391
                case 0x02:
9392
                case 0x03:
9393
                case 0x04:
9394
                case 0x05:
9395
                case 0x06:
9396
                case 0x07:
9397
                case 0x08:
9398
                case 0x09:
9399
                case 0x0a:
9400
                case 0x0b:
9401
                case 0x0c:
9402
                case 0x0d:
9403
                case 0x0e:
9404
                  goto op_semantics_69;
9405
                  break;
9406
                case 0x0f:
9407
                  goto op_semantics_70;
9408
                  break;
9409
              }
9410
            break;
9411
          default: UNSUPPORTED(); break;
9412
        }
9413
      break;
9414
    case 0xfd:
9415
        GETBYTE ();
9416
        switch (op[1] & 0xff)
9417
        {
9418
          case 0x00:
9419
              GETBYTE ();
9420
              switch (op[2] & 0x00)
9421
              {
9422
                case 0x00:
9423
                    {
9424
                      /** 1111 1101 0000 0000 srca srcb mulhi   %1, %2 */
9425
#line 774 "rx-decode.opc"
9426
                      int srca AU = (op[2] >> 4) & 0x0f;
9427
#line 774 "rx-decode.opc"
9428
                      int srcb AU = op[2] & 0x0f;
9429
                      if (trace)
9430
                        {
9431
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9432
                                 "/** 1111 1101 0000 0000 srca srcb     mulhi   %1, %2 */",
9433
                                 op[0], op[1], op[2]);
9434
                          printf ("  srca = 0x%x,", srca);
9435
                          printf ("  srcb = 0x%x\n", srcb);
9436
                        }
9437
                      SYNTAX("mulhi     %1, %2");
9438
#line 774 "rx-decode.opc"
9439
                      ID(mulhi); SR(srca); S2R(srcb); F_____;
9440
 
9441
                    }
9442
                  break;
9443
              }
9444
            break;
9445
          case 0x01:
9446
              GETBYTE ();
9447
              switch (op[2] & 0x00)
9448
              {
9449
                case 0x00:
9450
                    {
9451
                      /** 1111 1101 0000 0001 srca srcb mullo   %1, %2 */
9452
#line 777 "rx-decode.opc"
9453
                      int srca AU = (op[2] >> 4) & 0x0f;
9454
#line 777 "rx-decode.opc"
9455
                      int srcb AU = op[2] & 0x0f;
9456
                      if (trace)
9457
                        {
9458
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9459
                                 "/** 1111 1101 0000 0001 srca srcb     mullo   %1, %2 */",
9460
                                 op[0], op[1], op[2]);
9461
                          printf ("  srca = 0x%x,", srca);
9462
                          printf ("  srcb = 0x%x\n", srcb);
9463
                        }
9464
                      SYNTAX("mullo     %1, %2");
9465
#line 777 "rx-decode.opc"
9466
                      ID(mullo); SR(srca); S2R(srcb); F_____;
9467
 
9468
                    }
9469
                  break;
9470
              }
9471
            break;
9472
          case 0x04:
9473
              GETBYTE ();
9474
              switch (op[2] & 0x00)
9475
              {
9476
                case 0x00:
9477
                    {
9478
                      /** 1111 1101 0000 0100 srca srcb machi   %1, %2 */
9479
#line 780 "rx-decode.opc"
9480
                      int srca AU = (op[2] >> 4) & 0x0f;
9481
#line 780 "rx-decode.opc"
9482
                      int srcb AU = op[2] & 0x0f;
9483
                      if (trace)
9484
                        {
9485
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9486
                                 "/** 1111 1101 0000 0100 srca srcb     machi   %1, %2 */",
9487
                                 op[0], op[1], op[2]);
9488
                          printf ("  srca = 0x%x,", srca);
9489
                          printf ("  srcb = 0x%x\n", srcb);
9490
                        }
9491
                      SYNTAX("machi     %1, %2");
9492
#line 780 "rx-decode.opc"
9493
                      ID(machi); SR(srca); S2R(srcb); F_____;
9494
 
9495
                    }
9496
                  break;
9497
              }
9498
            break;
9499
          case 0x05:
9500
              GETBYTE ();
9501
              switch (op[2] & 0x00)
9502
              {
9503
                case 0x00:
9504
                    {
9505
                      /** 1111 1101 0000 0101 srca srcb maclo   %1, %2 */
9506
#line 783 "rx-decode.opc"
9507
                      int srca AU = (op[2] >> 4) & 0x0f;
9508
#line 783 "rx-decode.opc"
9509
                      int srcb AU = op[2] & 0x0f;
9510
                      if (trace)
9511
                        {
9512
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9513
                                 "/** 1111 1101 0000 0101 srca srcb     maclo   %1, %2 */",
9514
                                 op[0], op[1], op[2]);
9515
                          printf ("  srca = 0x%x,", srca);
9516
                          printf ("  srcb = 0x%x\n", srcb);
9517
                        }
9518
                      SYNTAX("maclo     %1, %2");
9519
#line 783 "rx-decode.opc"
9520
                      ID(maclo); SR(srca); S2R(srcb); F_____;
9521
 
9522
                    }
9523
                  break;
9524
              }
9525
            break;
9526
          case 0x17:
9527
              GETBYTE ();
9528
              switch (op[2] & 0xf0)
9529
              {
9530
                case 0x00:
9531
                    {
9532
                      /** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */
9533
#line 786 "rx-decode.opc"
9534
                      int rsrc AU = op[2] & 0x0f;
9535
                      if (trace)
9536
                        {
9537
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9538
                                 "/** 1111 1101 0001 0111 0000 rsrc     mvtachi %1 */",
9539
                                 op[0], op[1], op[2]);
9540
                          printf ("  rsrc = 0x%x\n", rsrc);
9541
                        }
9542
                      SYNTAX("mvtachi   %1");
9543
#line 786 "rx-decode.opc"
9544
                      ID(mvtachi); SR(rsrc); F_____;
9545
 
9546
                    }
9547
                  break;
9548
                case 0x10:
9549
                    {
9550
                      /** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */
9551
#line 789 "rx-decode.opc"
9552
                      int rsrc AU = op[2] & 0x0f;
9553
                      if (trace)
9554
                        {
9555
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9556
                                 "/** 1111 1101 0001 0111 0001 rsrc     mvtaclo %1 */",
9557
                                 op[0], op[1], op[2]);
9558
                          printf ("  rsrc = 0x%x\n", rsrc);
9559
                        }
9560
                      SYNTAX("mvtaclo   %1");
9561
#line 789 "rx-decode.opc"
9562
                      ID(mvtaclo); SR(rsrc); F_____;
9563
 
9564
                    }
9565
                  break;
9566
                default: UNSUPPORTED(); break;
9567
              }
9568
            break;
9569
          case 0x18:
9570
              GETBYTE ();
9571
              switch (op[2] & 0xef)
9572
              {
9573
                case 0x00:
9574
                    {
9575
                      /** 1111 1101 0001 1000 000i 0000 racw    #%1 */
9576
#line 801 "rx-decode.opc"
9577
                      int i AU = (op[2] >> 4) & 0x01;
9578
                      if (trace)
9579
                        {
9580
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9581
                                 "/** 1111 1101 0001 1000 000i 0000     racw    #%1 */",
9582
                                 op[0], op[1], op[2]);
9583
                          printf ("  i = 0x%x\n", i);
9584
                        }
9585
                      SYNTAX("racw      #%1");
9586
#line 801 "rx-decode.opc"
9587
                      ID(racw); SC(i+1); F_____;
9588
 
9589
                    /*----------------------------------------------------------------------*/
9590
                    /* SAT                                                                      */
9591
 
9592
                    }
9593
                  break;
9594
                default: UNSUPPORTED(); break;
9595
              }
9596
            break;
9597
          case 0x1f:
9598
              GETBYTE ();
9599
              switch (op[2] & 0xf0)
9600
              {
9601
                case 0x00:
9602
                    {
9603
                      /** 1111 1101 0001 1111 0000 rdst mvfachi %0 */
9604
#line 792 "rx-decode.opc"
9605
                      int rdst AU = op[2] & 0x0f;
9606
                      if (trace)
9607
                        {
9608
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9609
                                 "/** 1111 1101 0001 1111 0000 rdst     mvfachi %0 */",
9610
                                 op[0], op[1], op[2]);
9611
                          printf ("  rdst = 0x%x\n", rdst);
9612
                        }
9613
                      SYNTAX("mvfachi   %0");
9614
#line 792 "rx-decode.opc"
9615
                      ID(mvfachi); DR(rdst); F_____;
9616
 
9617
                    }
9618
                  break;
9619
                case 0x10:
9620
                    {
9621
                      /** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */
9622
#line 798 "rx-decode.opc"
9623
                      int rdst AU = op[2] & 0x0f;
9624
                      if (trace)
9625
                        {
9626
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9627
                                 "/** 1111 1101 0001 1111 0001 rdst     mvfaclo %0 */",
9628
                                 op[0], op[1], op[2]);
9629
                          printf ("  rdst = 0x%x\n", rdst);
9630
                        }
9631
                      SYNTAX("mvfaclo   %0");
9632
#line 798 "rx-decode.opc"
9633
                      ID(mvfaclo); DR(rdst); F_____;
9634
 
9635
                    }
9636
                  break;
9637
                case 0x20:
9638
                    {
9639
                      /** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */
9640
#line 795 "rx-decode.opc"
9641
                      int rdst AU = op[2] & 0x0f;
9642
                      if (trace)
9643
                        {
9644
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9645
                                 "/** 1111 1101 0001 1111 0010 rdst     mvfacmi %0 */",
9646
                                 op[0], op[1], op[2]);
9647
                          printf ("  rdst = 0x%x\n", rdst);
9648
                        }
9649
                      SYNTAX("mvfacmi   %0");
9650
#line 795 "rx-decode.opc"
9651
                      ID(mvfacmi); DR(rdst); F_____;
9652
 
9653
                    }
9654
                  break;
9655
                default: UNSUPPORTED(); break;
9656
              }
9657
            break;
9658
          case 0x20:
9659
              GETBYTE ();
9660
              switch (op[2] & 0x00)
9661
              {
9662
                case 0x00:
9663
                  op_semantics_71:
9664
                    {
9665
                      /** 1111 1101 0010 0p sz rdst rsrc        mov%s   %1, %0 */
9666
#line 308 "rx-decode.opc"
9667
                      int p AU = (op[1] >> 2) & 0x01;
9668
#line 308 "rx-decode.opc"
9669
                      int sz AU = op[1] & 0x03;
9670
#line 308 "rx-decode.opc"
9671
                      int rdst AU = (op[2] >> 4) & 0x0f;
9672
#line 308 "rx-decode.opc"
9673
                      int rsrc AU = op[2] & 0x0f;
9674
                      if (trace)
9675
                        {
9676
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9677
                                 "/** 1111 1101 0010 0p sz rdst rsrc    mov%s   %1, %0 */",
9678
                                 op[0], op[1], op[2]);
9679
                          printf ("  p = 0x%x,", p);
9680
                          printf ("  sz = 0x%x,", sz);
9681
                          printf ("  rdst = 0x%x,", rdst);
9682
                          printf ("  rsrc = 0x%x\n", rsrc);
9683
                        }
9684
                      SYNTAX("mov%s     %1, %0");
9685
#line 308 "rx-decode.opc"
9686
                      ID(mov); sBWL (sz); SR(rsrc); F_____;
9687
                      OP(0, p ? RX_Operand_Predec : RX_Operand_Postinc, rdst, 0);
9688
 
9689
                    }
9690
                  break;
9691
              }
9692
            break;
9693
          case 0x21:
9694
              GETBYTE ();
9695
              switch (op[2] & 0x00)
9696
              {
9697
                case 0x00:
9698
                  goto op_semantics_71;
9699
                  break;
9700
              }
9701
            break;
9702
          case 0x22:
9703
              GETBYTE ();
9704
              switch (op[2] & 0x00)
9705
              {
9706
                case 0x00:
9707
                  goto op_semantics_71;
9708
                  break;
9709
              }
9710
            break;
9711
          case 0x24:
9712
              GETBYTE ();
9713
              switch (op[2] & 0x00)
9714
              {
9715
                case 0x00:
9716
                  goto op_semantics_71;
9717
                  break;
9718
              }
9719
            break;
9720
          case 0x25:
9721
              GETBYTE ();
9722
              switch (op[2] & 0x00)
9723
              {
9724
                case 0x00:
9725
                  goto op_semantics_71;
9726
                  break;
9727
              }
9728
            break;
9729
          case 0x26:
9730
              GETBYTE ();
9731
              switch (op[2] & 0x00)
9732
              {
9733
                case 0x00:
9734
                  goto op_semantics_71;
9735
                  break;
9736
              }
9737
            break;
9738
          case 0x28:
9739
              GETBYTE ();
9740
              switch (op[2] & 0x00)
9741
              {
9742
                case 0x00:
9743
                  op_semantics_72:
9744
                    {
9745
                      /** 1111 1101 0010 1p sz rsrc rdst        mov%s   %1, %0 */
9746
#line 312 "rx-decode.opc"
9747
                      int p AU = (op[1] >> 2) & 0x01;
9748
#line 312 "rx-decode.opc"
9749
                      int sz AU = op[1] & 0x03;
9750
#line 312 "rx-decode.opc"
9751
                      int rsrc AU = (op[2] >> 4) & 0x0f;
9752
#line 312 "rx-decode.opc"
9753
                      int rdst AU = op[2] & 0x0f;
9754
                      if (trace)
9755
                        {
9756
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9757
                                 "/** 1111 1101 0010 1p sz rsrc rdst    mov%s   %1, %0 */",
9758
                                 op[0], op[1], op[2]);
9759
                          printf ("  p = 0x%x,", p);
9760
                          printf ("  sz = 0x%x,", sz);
9761
                          printf ("  rsrc = 0x%x,", rsrc);
9762
                          printf ("  rdst = 0x%x\n", rdst);
9763
                        }
9764
                      SYNTAX("mov%s     %1, %0");
9765
#line 312 "rx-decode.opc"
9766
                      ID(mov); sBWL (sz); DR(rdst); F_____;
9767
                      OP(1, p ? RX_Operand_Predec : RX_Operand_Postinc, rsrc, 0);
9768
 
9769
                    }
9770
                  break;
9771
              }
9772
            break;
9773
          case 0x29:
9774
              GETBYTE ();
9775
              switch (op[2] & 0x00)
9776
              {
9777
                case 0x00:
9778
                  goto op_semantics_72;
9779
                  break;
9780
              }
9781
            break;
9782
          case 0x2a:
9783
              GETBYTE ();
9784
              switch (op[2] & 0x00)
9785
              {
9786
                case 0x00:
9787
                  goto op_semantics_72;
9788
                  break;
9789
              }
9790
            break;
9791
          case 0x2c:
9792
              GETBYTE ();
9793
              switch (op[2] & 0x00)
9794
              {
9795
                case 0x00:
9796
                  goto op_semantics_72;
9797
                  break;
9798
              }
9799
            break;
9800
          case 0x2d:
9801
              GETBYTE ();
9802
              switch (op[2] & 0x00)
9803
              {
9804
                case 0x00:
9805
                  goto op_semantics_72;
9806
                  break;
9807
              }
9808
            break;
9809
          case 0x2e:
9810
              GETBYTE ();
9811
              switch (op[2] & 0x00)
9812
              {
9813
                case 0x00:
9814
                  goto op_semantics_72;
9815
                  break;
9816
              }
9817
            break;
9818
          case 0x38:
9819
              GETBYTE ();
9820
              switch (op[2] & 0x00)
9821
              {
9822
                case 0x00:
9823
                  op_semantics_73:
9824
                    {
9825
                      /** 1111 1101 0011 1p sz rsrc rdst        movu%s  %1, %0 */
9826
#line 322 "rx-decode.opc"
9827
                      int p AU = (op[1] >> 2) & 0x01;
9828
#line 322 "rx-decode.opc"
9829
                      int sz AU = op[1] & 0x03;
9830
#line 322 "rx-decode.opc"
9831
                      int rsrc AU = (op[2] >> 4) & 0x0f;
9832
#line 322 "rx-decode.opc"
9833
                      int rdst AU = op[2] & 0x0f;
9834
                      if (trace)
9835
                        {
9836
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9837
                                 "/** 1111 1101 0011 1p sz rsrc rdst    movu%s  %1, %0 */",
9838
                                 op[0], op[1], op[2]);
9839
                          printf ("  p = 0x%x,", p);
9840
                          printf ("  sz = 0x%x,", sz);
9841
                          printf ("  rsrc = 0x%x,", rsrc);
9842
                          printf ("  rdst = 0x%x\n", rdst);
9843
                        }
9844
                      SYNTAX("movu%s    %1, %0");
9845
#line 322 "rx-decode.opc"
9846
                      ID(mov); uBWL (sz); DR(rdst); F_____;
9847
                       OP(1, p ? RX_Operand_Predec : RX_Operand_Postinc, rsrc, 0);
9848
 
9849
                    /*----------------------------------------------------------------------*/
9850
                    /* PUSH/POP                                                         */
9851
 
9852
                    }
9853
                  break;
9854
              }
9855
            break;
9856
          case 0x39:
9857
              GETBYTE ();
9858
              switch (op[2] & 0x00)
9859
              {
9860
                case 0x00:
9861
                  goto op_semantics_73;
9862
                  break;
9863
              }
9864
            break;
9865
          case 0x3a:
9866
              GETBYTE ();
9867
              switch (op[2] & 0x00)
9868
              {
9869
                case 0x00:
9870
                  goto op_semantics_73;
9871
                  break;
9872
              }
9873
            break;
9874
          case 0x3c:
9875
              GETBYTE ();
9876
              switch (op[2] & 0x00)
9877
              {
9878
                case 0x00:
9879
                  goto op_semantics_73;
9880
                  break;
9881
              }
9882
            break;
9883
          case 0x3d:
9884
              GETBYTE ();
9885
              switch (op[2] & 0x00)
9886
              {
9887
                case 0x00:
9888
                  goto op_semantics_73;
9889
                  break;
9890
              }
9891
            break;
9892
          case 0x3e:
9893
              GETBYTE ();
9894
              switch (op[2] & 0x00)
9895
              {
9896
                case 0x00:
9897
                  goto op_semantics_73;
9898
                  break;
9899
              }
9900
            break;
9901
          case 0x60:
9902
              GETBYTE ();
9903
              switch (op[2] & 0x00)
9904
              {
9905
                case 0x00:
9906
                    {
9907
                      /** 1111 1101 0110 0000 rsrc rdst shlr    %2, %0 */
9908
#line 655 "rx-decode.opc"
9909
                      int rsrc AU = (op[2] >> 4) & 0x0f;
9910
#line 655 "rx-decode.opc"
9911
                      int rdst AU = op[2] & 0x0f;
9912
                      if (trace)
9913
                        {
9914
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9915
                                 "/** 1111 1101 0110 0000 rsrc rdst     shlr    %2, %0 */",
9916
                                 op[0], op[1], op[2]);
9917
                          printf ("  rsrc = 0x%x,", rsrc);
9918
                          printf ("  rdst = 0x%x\n", rdst);
9919
                        }
9920
                      SYNTAX("shlr      %2, %0");
9921
#line 655 "rx-decode.opc"
9922
                      ID(shlr); S2R(rsrc); SR(rdst); DR(rdst); F__SZC;
9923
 
9924
                    }
9925
                  break;
9926
              }
9927
            break;
9928
          case 0x61:
9929
              GETBYTE ();
9930
              switch (op[2] & 0x00)
9931
              {
9932
                case 0x00:
9933
                    {
9934
                      /** 1111 1101 0110 0001 rsrc rdst shar    %2, %0 */
9935
#line 645 "rx-decode.opc"
9936
                      int rsrc AU = (op[2] >> 4) & 0x0f;
9937
#line 645 "rx-decode.opc"
9938
                      int rdst AU = op[2] & 0x0f;
9939
                      if (trace)
9940
                        {
9941
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9942
                                 "/** 1111 1101 0110 0001 rsrc rdst     shar    %2, %0 */",
9943
                                 op[0], op[1], op[2]);
9944
                          printf ("  rsrc = 0x%x,", rsrc);
9945
                          printf ("  rdst = 0x%x\n", rdst);
9946
                        }
9947
                      SYNTAX("shar      %2, %0");
9948
#line 645 "rx-decode.opc"
9949
                      ID(shar); S2R(rsrc); SR(rdst); DR(rdst); F_0SZC;
9950
 
9951
                    }
9952
                  break;
9953
              }
9954
            break;
9955
          case 0x62:
9956
              GETBYTE ();
9957
              switch (op[2] & 0x00)
9958
              {
9959
                case 0x00:
9960
                    {
9961
                      /** 1111 1101 0110 0010 rsrc rdst shll    %2, %0 */
9962
#line 635 "rx-decode.opc"
9963
                      int rsrc AU = (op[2] >> 4) & 0x0f;
9964
#line 635 "rx-decode.opc"
9965
                      int rdst AU = op[2] & 0x0f;
9966
                      if (trace)
9967
                        {
9968
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9969
                                 "/** 1111 1101 0110 0010 rsrc rdst     shll    %2, %0 */",
9970
                                 op[0], op[1], op[2]);
9971
                          printf ("  rsrc = 0x%x,", rsrc);
9972
                          printf ("  rdst = 0x%x\n", rdst);
9973
                        }
9974
                      SYNTAX("shll      %2, %0");
9975
#line 635 "rx-decode.opc"
9976
                      ID(shll); S2R(rsrc); SR(rdst); DR(rdst); F_OSZC;
9977
 
9978
                    }
9979
                  break;
9980
              }
9981
            break;
9982
          case 0x64:
9983
              GETBYTE ();
9984
              switch (op[2] & 0x00)
9985
              {
9986
                case 0x00:
9987
                    {
9988
                      /** 1111 1101 0110 0100 rsrc rdst rotr    %1, %0 */
9989
#line 679 "rx-decode.opc"
9990
                      int rsrc AU = (op[2] >> 4) & 0x0f;
9991
#line 679 "rx-decode.opc"
9992
                      int rdst AU = op[2] & 0x0f;
9993
                      if (trace)
9994
                        {
9995
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
9996
                                 "/** 1111 1101 0110 0100 rsrc rdst     rotr    %1, %0 */",
9997
                                 op[0], op[1], op[2]);
9998
                          printf ("  rsrc = 0x%x,", rsrc);
9999
                          printf ("  rdst = 0x%x\n", rdst);
10000
                        }
10001
                      SYNTAX("rotr      %1, %0");
10002
#line 679 "rx-decode.opc"
10003
                      ID(rotr); SR(rsrc); DR(rdst); F__SZC;
10004
 
10005
                    }
10006
                  break;
10007
              }
10008
            break;
10009
          case 0x65:
10010
              GETBYTE ();
10011
              switch (op[2] & 0x00)
10012
              {
10013
                case 0x00:
10014
                    {
10015
                      /** 1111 1101 0110 0101 rsrc rdst revw    %1, %0 */
10016
#line 682 "rx-decode.opc"
10017
                      int rsrc AU = (op[2] >> 4) & 0x0f;
10018
#line 682 "rx-decode.opc"
10019
                      int rdst AU = op[2] & 0x0f;
10020
                      if (trace)
10021
                        {
10022
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10023
                                 "/** 1111 1101 0110 0101 rsrc rdst     revw    %1, %0 */",
10024
                                 op[0], op[1], op[2]);
10025
                          printf ("  rsrc = 0x%x,", rsrc);
10026
                          printf ("  rdst = 0x%x\n", rdst);
10027
                        }
10028
                      SYNTAX("revw      %1, %0");
10029
#line 682 "rx-decode.opc"
10030
                      ID(revw); SR(rsrc); DR(rdst);
10031
 
10032
                    }
10033
                  break;
10034
              }
10035
            break;
10036
          case 0x66:
10037
              GETBYTE ();
10038
              switch (op[2] & 0x00)
10039
              {
10040
                case 0x00:
10041
                    {
10042
                      /** 1111 1101 0110 0110 rsrc rdst rotl    %1, %0 */
10043
#line 673 "rx-decode.opc"
10044
                      int rsrc AU = (op[2] >> 4) & 0x0f;
10045
#line 673 "rx-decode.opc"
10046
                      int rdst AU = op[2] & 0x0f;
10047
                      if (trace)
10048
                        {
10049
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10050
                                 "/** 1111 1101 0110 0110 rsrc rdst     rotl    %1, %0 */",
10051
                                 op[0], op[1], op[2]);
10052
                          printf ("  rsrc = 0x%x,", rsrc);
10053
                          printf ("  rdst = 0x%x\n", rdst);
10054
                        }
10055
                      SYNTAX("rotl      %1, %0");
10056
#line 673 "rx-decode.opc"
10057
                      ID(rotl); SR(rsrc); DR(rdst); F__SZC;
10058
 
10059
                    }
10060
                  break;
10061
              }
10062
            break;
10063
          case 0x67:
10064
              GETBYTE ();
10065
              switch (op[2] & 0x00)
10066
              {
10067
                case 0x00:
10068
                    {
10069
                      /** 1111 1101 0110 0111 rsrc rdst revl    %1, %0 */
10070
#line 685 "rx-decode.opc"
10071
                      int rsrc AU = (op[2] >> 4) & 0x0f;
10072
#line 685 "rx-decode.opc"
10073
                      int rdst AU = op[2] & 0x0f;
10074
                      if (trace)
10075
                        {
10076
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10077
                                 "/** 1111 1101 0110 0111 rsrc rdst     revl    %1, %0 */",
10078
                                 op[0], op[1], op[2]);
10079
                          printf ("  rsrc = 0x%x,", rsrc);
10080
                          printf ("  rdst = 0x%x\n", rdst);
10081
                        }
10082
                      SYNTAX("revl      %1, %0");
10083
#line 685 "rx-decode.opc"
10084
                      ID(revl); SR(rsrc); DR(rdst);
10085
 
10086
                    /*----------------------------------------------------------------------*/
10087
                    /* BRANCH                                                           */
10088
 
10089
                    }
10090
                  break;
10091
              }
10092
            break;
10093
          case 0x68:
10094
              GETBYTE ();
10095
              switch (op[2] & 0x00)
10096
              {
10097
                case 0x00:
10098
                  op_semantics_74:
10099
                    {
10100
                      /** 1111 1101 0110 100c rsrc rdst mvtc    %1, %0 */
10101
#line 928 "rx-decode.opc"
10102
                      int c AU = op[1] & 0x01;
10103
#line 928 "rx-decode.opc"
10104
                      int rsrc AU = (op[2] >> 4) & 0x0f;
10105
#line 928 "rx-decode.opc"
10106
                      int rdst AU = op[2] & 0x0f;
10107
                      if (trace)
10108
                        {
10109
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10110
                                 "/** 1111 1101 0110 100c rsrc rdst     mvtc    %1, %0 */",
10111
                                 op[0], op[1], op[2]);
10112
                          printf ("  c = 0x%x,", c);
10113
                          printf ("  rsrc = 0x%x,", rsrc);
10114
                          printf ("  rdst = 0x%x\n", rdst);
10115
                        }
10116
                      SYNTAX("mvtc      %1, %0");
10117
#line 928 "rx-decode.opc"
10118
                      ID(mov); SR(rsrc); DR(c*16+rdst + 16);
10119
 
10120
                    }
10121
                  break;
10122
              }
10123
            break;
10124
          case 0x69:
10125
              GETBYTE ();
10126
              switch (op[2] & 0x00)
10127
              {
10128
                case 0x00:
10129
                  goto op_semantics_74;
10130
                  break;
10131
              }
10132
            break;
10133
          case 0x6a:
10134
              GETBYTE ();
10135
              switch (op[2] & 0x00)
10136
              {
10137
                case 0x00:
10138
                  op_semantics_75:
10139
                    {
10140
                      /** 1111 1101 0110 101s rsrc rdst mvfc    %1, %0 */
10141
#line 931 "rx-decode.opc"
10142
                      int s AU = op[1] & 0x01;
10143
#line 931 "rx-decode.opc"
10144
                      int rsrc AU = (op[2] >> 4) & 0x0f;
10145
#line 931 "rx-decode.opc"
10146
                      int rdst AU = op[2] & 0x0f;
10147
                      if (trace)
10148
                        {
10149
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10150
                                 "/** 1111 1101 0110 101s rsrc rdst     mvfc    %1, %0 */",
10151
                                 op[0], op[1], op[2]);
10152
                          printf ("  s = 0x%x,", s);
10153
                          printf ("  rsrc = 0x%x,", rsrc);
10154
                          printf ("  rdst = 0x%x\n", rdst);
10155
                        }
10156
                      SYNTAX("mvfc      %1, %0");
10157
#line 931 "rx-decode.opc"
10158
                      ID(mov); SR((s*16+rsrc) + 16); DR(rdst);
10159
 
10160
                    /*----------------------------------------------------------------------*/
10161
                    /* INTERRUPTS                                                               */
10162
 
10163
                    }
10164
                  break;
10165
              }
10166
            break;
10167
          case 0x6b:
10168
              GETBYTE ();
10169
              switch (op[2] & 0x00)
10170
              {
10171
                case 0x00:
10172
                  goto op_semantics_75;
10173
                  break;
10174
              }
10175
            break;
10176
          case 0x6c:
10177
              GETBYTE ();
10178
              switch (op[2] & 0x00)
10179
              {
10180
                case 0x00:
10181
                  op_semantics_76:
10182
                    {
10183
                      /** 1111 1101 0110 110i mmmm rdst rotr    #%1, %0 */
10184
#line 676 "rx-decode.opc"
10185
                      int i AU = op[1] & 0x01;
10186
#line 676 "rx-decode.opc"
10187
                      int mmmm AU = (op[2] >> 4) & 0x0f;
10188
#line 676 "rx-decode.opc"
10189
                      int rdst AU = op[2] & 0x0f;
10190
                      if (trace)
10191
                        {
10192
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10193
                                 "/** 1111 1101 0110 110i mmmm rdst     rotr    #%1, %0 */",
10194
                                 op[0], op[1], op[2]);
10195
                          printf ("  i = 0x%x,", i);
10196
                          printf ("  mmmm = 0x%x,", mmmm);
10197
                          printf ("  rdst = 0x%x\n", rdst);
10198
                        }
10199
                      SYNTAX("rotr      #%1, %0");
10200
#line 676 "rx-decode.opc"
10201
                      ID(rotr); SC(i*16+mmmm); DR(rdst); F__SZC;
10202
 
10203
                    }
10204
                  break;
10205
              }
10206
            break;
10207
          case 0x6d:
10208
              GETBYTE ();
10209
              switch (op[2] & 0x00)
10210
              {
10211
                case 0x00:
10212
                  goto op_semantics_76;
10213
                  break;
10214
              }
10215
            break;
10216
          case 0x6e:
10217
              GETBYTE ();
10218
              switch (op[2] & 0x00)
10219
              {
10220
                case 0x00:
10221
                  op_semantics_77:
10222
                    {
10223
                      /** 1111 1101 0110 111i mmmm rdst rotl    #%1, %0 */
10224
#line 670 "rx-decode.opc"
10225
                      int i AU = op[1] & 0x01;
10226
#line 670 "rx-decode.opc"
10227
                      int mmmm AU = (op[2] >> 4) & 0x0f;
10228
#line 670 "rx-decode.opc"
10229
                      int rdst AU = op[2] & 0x0f;
10230
                      if (trace)
10231
                        {
10232
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10233
                                 "/** 1111 1101 0110 111i mmmm rdst     rotl    #%1, %0 */",
10234
                                 op[0], op[1], op[2]);
10235
                          printf ("  i = 0x%x,", i);
10236
                          printf ("  mmmm = 0x%x,", mmmm);
10237
                          printf ("  rdst = 0x%x\n", rdst);
10238
                        }
10239
                      SYNTAX("rotl      #%1, %0");
10240
#line 670 "rx-decode.opc"
10241
                      ID(rotl); SC(i*16+mmmm); DR(rdst); F__SZC;
10242
 
10243
                    }
10244
                  break;
10245
              }
10246
            break;
10247
          case 0x6f:
10248
              GETBYTE ();
10249
              switch (op[2] & 0x00)
10250
              {
10251
                case 0x00:
10252
                  goto op_semantics_77;
10253
                  break;
10254
              }
10255
            break;
10256
          case 0x70:
10257
              GETBYTE ();
10258
              switch (op[2] & 0xf0)
10259
              {
10260
                case 0x20:
10261
                  op_semantics_78:
10262
                    {
10263
                      /** 1111 1101 0111 im00 0010rdst  adc     #%1, %0 */
10264
#line 452 "rx-decode.opc"
10265
                      int im AU = (op[1] >> 2) & 0x03;
10266
#line 452 "rx-decode.opc"
10267
                      int rdst AU = op[2] & 0x0f;
10268
                      if (trace)
10269
                        {
10270
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10271
                                 "/** 1111 1101 0111 im00 0010rdst      adc     #%1, %0 */",
10272
                                 op[0], op[1], op[2]);
10273
                          printf ("  im = 0x%x,", im);
10274
                          printf ("  rdst = 0x%x\n", rdst);
10275
                        }
10276
                      SYNTAX("adc       #%1, %0");
10277
#line 452 "rx-decode.opc"
10278
                      ID(adc); SC(IMMex(im)); DR(rdst); F_OSZC;
10279
 
10280
                    }
10281
                  break;
10282
                case 0x40:
10283
                  op_semantics_79:
10284
                    {
10285
                      /** 1111 1101 0111 im00 0100rdst  max     #%1, %0 */
10286
#line 534 "rx-decode.opc"
10287
                      int im AU = (op[1] >> 2) & 0x03;
10288
#line 534 "rx-decode.opc"
10289
                      int rdst AU = op[2] & 0x0f;
10290
                      if (trace)
10291
                        {
10292
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10293
                                 "/** 1111 1101 0111 im00 0100rdst      max     #%1, %0 */",
10294
                                 op[0], op[1], op[2]);
10295
                          printf ("  im = 0x%x,", im);
10296
                          printf ("  rdst = 0x%x\n", rdst);
10297
                        }
10298
                      SYNTAX("max       #%1, %0");
10299
#line 534 "rx-decode.opc"
10300
                      ID(max); DR(rdst); SC(IMMex(im));
10301
 
10302
                    }
10303
                  break;
10304
                case 0x50:
10305
                  op_semantics_80:
10306
                    {
10307
                      /** 1111 1101 0111 im00 0101rdst  min     #%1, %0 */
10308
#line 554 "rx-decode.opc"
10309
                      int im AU = (op[1] >> 2) & 0x03;
10310
#line 554 "rx-decode.opc"
10311
                      int rdst AU = op[2] & 0x0f;
10312
                      if (trace)
10313
                        {
10314
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10315
                                 "/** 1111 1101 0111 im00 0101rdst      min     #%1, %0 */",
10316
                                 op[0], op[1], op[2]);
10317
                          printf ("  im = 0x%x,", im);
10318
                          printf ("  rdst = 0x%x\n", rdst);
10319
                        }
10320
                      SYNTAX("min       #%1, %0");
10321
#line 554 "rx-decode.opc"
10322
                      ID(min); DR(rdst); SC(IMMex(im));
10323
 
10324
                    }
10325
                  break;
10326
                case 0x60:
10327
                  op_semantics_81:
10328
                    {
10329
                      /** 1111 1101 0111 im00 0110rdst  emul    #%1, %0 */
10330
#line 584 "rx-decode.opc"
10331
                      int im AU = (op[1] >> 2) & 0x03;
10332
#line 584 "rx-decode.opc"
10333
                      int rdst AU = op[2] & 0x0f;
10334
                      if (trace)
10335
                        {
10336
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10337
                                 "/** 1111 1101 0111 im00 0110rdst      emul    #%1, %0 */",
10338
                                 op[0], op[1], op[2]);
10339
                          printf ("  im = 0x%x,", im);
10340
                          printf ("  rdst = 0x%x\n", rdst);
10341
                        }
10342
                      SYNTAX("emul      #%1, %0");
10343
#line 584 "rx-decode.opc"
10344
                      ID(emul); DR(rdst); SC(IMMex(im));
10345
 
10346
                    }
10347
                  break;
10348
                case 0x70:
10349
                  op_semantics_82:
10350
                    {
10351
                      /** 1111 1101 0111 im00 0111rdst  emulu   #%1, %0 */
10352
#line 596 "rx-decode.opc"
10353
                      int im AU = (op[1] >> 2) & 0x03;
10354
#line 596 "rx-decode.opc"
10355
                      int rdst AU = op[2] & 0x0f;
10356
                      if (trace)
10357
                        {
10358
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10359
                                 "/** 1111 1101 0111 im00 0111rdst      emulu   #%1, %0 */",
10360
                                 op[0], op[1], op[2]);
10361
                          printf ("  im = 0x%x,", im);
10362
                          printf ("  rdst = 0x%x\n", rdst);
10363
                        }
10364
                      SYNTAX("emulu     #%1, %0");
10365
#line 596 "rx-decode.opc"
10366
                      ID(emulu); DR(rdst); SC(IMMex(im));
10367
 
10368
                    }
10369
                  break;
10370
                case 0x80:
10371
                  op_semantics_83:
10372
                    {
10373
                      /** 1111 1101 0111 im00 1000rdst  div     #%1, %0 */
10374
#line 608 "rx-decode.opc"
10375
                      int im AU = (op[1] >> 2) & 0x03;
10376
#line 608 "rx-decode.opc"
10377
                      int rdst AU = op[2] & 0x0f;
10378
                      if (trace)
10379
                        {
10380
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10381
                                 "/** 1111 1101 0111 im00 1000rdst      div     #%1, %0 */",
10382
                                 op[0], op[1], op[2]);
10383
                          printf ("  im = 0x%x,", im);
10384
                          printf ("  rdst = 0x%x\n", rdst);
10385
                        }
10386
                      SYNTAX("div       #%1, %0");
10387
#line 608 "rx-decode.opc"
10388
                      ID(div); DR(rdst); SC(IMMex(im)); F_O___;
10389
 
10390
                    }
10391
                  break;
10392
                case 0x90:
10393
                  op_semantics_84:
10394
                    {
10395
                      /** 1111 1101 0111 im00 1001rdst  divu    #%1, %0 */
10396
#line 620 "rx-decode.opc"
10397
                      int im AU = (op[1] >> 2) & 0x03;
10398
#line 620 "rx-decode.opc"
10399
                      int rdst AU = op[2] & 0x0f;
10400
                      if (trace)
10401
                        {
10402
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10403
                                 "/** 1111 1101 0111 im00 1001rdst      divu    #%1, %0 */",
10404
                                 op[0], op[1], op[2]);
10405
                          printf ("  im = 0x%x,", im);
10406
                          printf ("  rdst = 0x%x\n", rdst);
10407
                        }
10408
                      SYNTAX("divu      #%1, %0");
10409
#line 620 "rx-decode.opc"
10410
                      ID(divu); DR(rdst); SC(IMMex(im)); F_O___;
10411
 
10412
                    }
10413
                  break;
10414
                case 0xc0:
10415
                  op_semantics_85:
10416
                    {
10417
                      /** 1111 1101 0111 im00 1100rdst  tst     #%1, %2 */
10418
#line 431 "rx-decode.opc"
10419
                      int im AU = (op[1] >> 2) & 0x03;
10420
#line 431 "rx-decode.opc"
10421
                      int rdst AU = op[2] & 0x0f;
10422
                      if (trace)
10423
                        {
10424
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10425
                                 "/** 1111 1101 0111 im00 1100rdst      tst     #%1, %2 */",
10426
                                 op[0], op[1], op[2]);
10427
                          printf ("  im = 0x%x,", im);
10428
                          printf ("  rdst = 0x%x\n", rdst);
10429
                        }
10430
                      SYNTAX("tst       #%1, %2");
10431
#line 431 "rx-decode.opc"
10432
                      ID(and); SC(IMMex(im)); S2R(rdst); F__SZ_;
10433
 
10434
                    }
10435
                  break;
10436
                case 0xd0:
10437
                  op_semantics_86:
10438
                    {
10439
                      /** 1111 1101 0111 im00 1101rdst  xor     #%1, %0 */
10440
#line 410 "rx-decode.opc"
10441
                      int im AU = (op[1] >> 2) & 0x03;
10442
#line 410 "rx-decode.opc"
10443
                      int rdst AU = op[2] & 0x0f;
10444
                      if (trace)
10445
                        {
10446
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10447
                                 "/** 1111 1101 0111 im00 1101rdst      xor     #%1, %0 */",
10448
                                 op[0], op[1], op[2]);
10449
                          printf ("  im = 0x%x,", im);
10450
                          printf ("  rdst = 0x%x\n", rdst);
10451
                        }
10452
                      SYNTAX("xor       #%1, %0");
10453
#line 410 "rx-decode.opc"
10454
                      ID(xor); SC(IMMex(im)); DR(rdst); F__SZ_;
10455
 
10456
                    }
10457
                  break;
10458
                case 0xe0:
10459
                  op_semantics_87:
10460
                    {
10461
                      /** 1111 1101 0111 im00 1110rdst  stz     #%1, %0 */
10462
#line 356 "rx-decode.opc"
10463
                      int im AU = (op[1] >> 2) & 0x03;
10464
#line 356 "rx-decode.opc"
10465
                      int rdst AU = op[2] & 0x0f;
10466
                      if (trace)
10467
                        {
10468
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10469
                                 "/** 1111 1101 0111 im00 1110rdst      stz     #%1, %0 */",
10470
                                 op[0], op[1], op[2]);
10471
                          printf ("  im = 0x%x,", im);
10472
                          printf ("  rdst = 0x%x\n", rdst);
10473
                        }
10474
                      SYNTAX("stz       #%1, %0");
10475
#line 356 "rx-decode.opc"
10476
                      ID(stcc); SC(IMMex(im)); DR(rdst); S2cc(RXC_z);
10477
 
10478
                    }
10479
                  break;
10480
                case 0xf0:
10481
                  op_semantics_88:
10482
                    {
10483
                      /** 1111 1101 0111 im00 1111rdst  stnz    #%1, %0 */
10484
#line 359 "rx-decode.opc"
10485
                      int im AU = (op[1] >> 2) & 0x03;
10486
#line 359 "rx-decode.opc"
10487
                      int rdst AU = op[2] & 0x0f;
10488
                      if (trace)
10489
                        {
10490
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10491
                                 "/** 1111 1101 0111 im00 1111rdst      stnz    #%1, %0 */",
10492
                                 op[0], op[1], op[2]);
10493
                          printf ("  im = 0x%x,", im);
10494
                          printf ("  rdst = 0x%x\n", rdst);
10495
                        }
10496
                      SYNTAX("stnz      #%1, %0");
10497
#line 359 "rx-decode.opc"
10498
                      ID(stcc); SC(IMMex(im)); DR(rdst); S2cc(RXC_nz);
10499
 
10500
                    /*----------------------------------------------------------------------*/
10501
                    /* RTSD                                                                     */
10502
 
10503
                    }
10504
                  break;
10505
                default: UNSUPPORTED(); break;
10506
              }
10507
            break;
10508
          case 0x72:
10509
              GETBYTE ();
10510
              switch (op[2] & 0xf0)
10511
              {
10512
                case 0x00:
10513
                    {
10514
                      /** 1111 1101 0111 0010 0000 rdst fsub    #%1, %0 */
10515
#line 828 "rx-decode.opc"
10516
                      int rdst AU = op[2] & 0x0f;
10517
                      if (trace)
10518
                        {
10519
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10520
                                 "/** 1111 1101 0111 0010 0000 rdst     fsub    #%1, %0 */",
10521
                                 op[0], op[1], op[2]);
10522
                          printf ("  rdst = 0x%x\n", rdst);
10523
                        }
10524
                      SYNTAX("fsub      #%1, %0");
10525
#line 828 "rx-decode.opc"
10526
                      ID(fsub); DR(rdst); SC(IMM(0)); F__SZ_;
10527
 
10528
                    }
10529
                  break;
10530
                case 0x10:
10531
                    {
10532
                      /** 1111 1101 0111 0010 0001 rdst fcmp    #%1, %0 */
10533
#line 822 "rx-decode.opc"
10534
                      int rdst AU = op[2] & 0x0f;
10535
                      if (trace)
10536
                        {
10537
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10538
                                 "/** 1111 1101 0111 0010 0001 rdst     fcmp    #%1, %0 */",
10539
                                 op[0], op[1], op[2]);
10540
                          printf ("  rdst = 0x%x\n", rdst);
10541
                        }
10542
                      SYNTAX("fcmp      #%1, %0");
10543
#line 822 "rx-decode.opc"
10544
                      ID(fcmp); DR(rdst); SC(IMM(0)); F_OSZ_;
10545
 
10546
                    }
10547
                  break;
10548
                case 0x20:
10549
                    {
10550
                      /** 1111 1101 0111 0010 0010 rdst fadd    #%1, %0 */
10551
#line 816 "rx-decode.opc"
10552
                      int rdst AU = op[2] & 0x0f;
10553
                      if (trace)
10554
                        {
10555
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10556
                                 "/** 1111 1101 0111 0010 0010 rdst     fadd    #%1, %0 */",
10557
                                 op[0], op[1], op[2]);
10558
                          printf ("  rdst = 0x%x\n", rdst);
10559
                        }
10560
                      SYNTAX("fadd      #%1, %0");
10561
#line 816 "rx-decode.opc"
10562
                      ID(fadd); DR(rdst); SC(IMM(0)); F__SZ_;
10563
 
10564
                    }
10565
                  break;
10566
                case 0x30:
10567
                    {
10568
                      /** 1111 1101 0111 0010 0011 rdst fmul    #%1, %0 */
10569
#line 837 "rx-decode.opc"
10570
                      int rdst AU = op[2] & 0x0f;
10571
                      if (trace)
10572
                        {
10573
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10574
                                 "/** 1111 1101 0111 0010 0011 rdst     fmul    #%1, %0 */",
10575
                                 op[0], op[1], op[2]);
10576
                          printf ("  rdst = 0x%x\n", rdst);
10577
                        }
10578
                      SYNTAX("fmul      #%1, %0");
10579
#line 837 "rx-decode.opc"
10580
                      ID(fmul); DR(rdst); SC(IMM(0)); F__SZ_;
10581
 
10582
                    }
10583
                  break;
10584
                case 0x40:
10585
                    {
10586
                      /** 1111 1101 0111 0010 0100 rdst fdiv    #%1, %0 */
10587
#line 843 "rx-decode.opc"
10588
                      int rdst AU = op[2] & 0x0f;
10589
                      if (trace)
10590
                        {
10591
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10592
                                 "/** 1111 1101 0111 0010 0100 rdst     fdiv    #%1, %0 */",
10593
                                 op[0], op[1], op[2]);
10594
                          printf ("  rdst = 0x%x\n", rdst);
10595
                        }
10596
                      SYNTAX("fdiv      #%1, %0");
10597
#line 843 "rx-decode.opc"
10598
                      ID(fdiv); DR(rdst); SC(IMM(0)); F__SZ_;
10599
 
10600
                    }
10601
                  break;
10602
                default: UNSUPPORTED(); break;
10603
              }
10604
            break;
10605
          case 0x73:
10606
              GETBYTE ();
10607
              switch (op[2] & 0xe0)
10608
              {
10609
                case 0x00:
10610
                  op_semantics_89:
10611
                    {
10612
                      /** 1111 1101 0111 im11 000crdst  mvtc    #%1, %0 */
10613
#line 925 "rx-decode.opc"
10614
                      int im AU = (op[1] >> 2) & 0x03;
10615
#line 925 "rx-decode.opc"
10616
                      int crdst AU = op[2] & 0x1f;
10617
                      if (trace)
10618
                        {
10619
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10620
                                 "/** 1111 1101 0111 im11 000crdst      mvtc    #%1, %0 */",
10621
                                 op[0], op[1], op[2]);
10622
                          printf ("  im = 0x%x,", im);
10623
                          printf ("  crdst = 0x%x\n", crdst);
10624
                        }
10625
                      SYNTAX("mvtc      #%1, %0");
10626
#line 925 "rx-decode.opc"
10627
                      ID(mov); SC(IMMex(im)); DR(crdst + 16);
10628
 
10629
                    }
10630
                  break;
10631
                default: UNSUPPORTED(); break;
10632
              }
10633
            break;
10634
          case 0x74:
10635
              GETBYTE ();
10636
              switch (op[2] & 0xf0)
10637
              {
10638
                case 0x20:
10639
                  goto op_semantics_78;
10640
                  break;
10641
                case 0x40:
10642
                  goto op_semantics_79;
10643
                  break;
10644
                case 0x50:
10645
                  goto op_semantics_80;
10646
                  break;
10647
                case 0x60:
10648
                  goto op_semantics_81;
10649
                  break;
10650
                case 0x70:
10651
                  goto op_semantics_82;
10652
                  break;
10653
                case 0x80:
10654
                  goto op_semantics_83;
10655
                  break;
10656
                case 0x90:
10657
                  goto op_semantics_84;
10658
                  break;
10659
                case 0xc0:
10660
                  goto op_semantics_85;
10661
                  break;
10662
                case 0xd0:
10663
                  goto op_semantics_86;
10664
                  break;
10665
                case 0xe0:
10666
                  goto op_semantics_87;
10667
                  break;
10668
                case 0xf0:
10669
                  goto op_semantics_88;
10670
                  break;
10671
                default: UNSUPPORTED(); break;
10672
              }
10673
            break;
10674
          case 0x77:
10675
              GETBYTE ();
10676
              switch (op[2] & 0xe0)
10677
              {
10678
                case 0x00:
10679
                  goto op_semantics_89;
10680
                  break;
10681
                default: UNSUPPORTED(); break;
10682
              }
10683
            break;
10684
          case 0x78:
10685
              GETBYTE ();
10686
              switch (op[2] & 0xf0)
10687
              {
10688
                case 0x20:
10689
                  goto op_semantics_78;
10690
                  break;
10691
                case 0x40:
10692
                  goto op_semantics_79;
10693
                  break;
10694
                case 0x50:
10695
                  goto op_semantics_80;
10696
                  break;
10697
                case 0x60:
10698
                  goto op_semantics_81;
10699
                  break;
10700
                case 0x70:
10701
                  goto op_semantics_82;
10702
                  break;
10703
                case 0x80:
10704
                  goto op_semantics_83;
10705
                  break;
10706
                case 0x90:
10707
                  goto op_semantics_84;
10708
                  break;
10709
                case 0xc0:
10710
                  goto op_semantics_85;
10711
                  break;
10712
                case 0xd0:
10713
                  goto op_semantics_86;
10714
                  break;
10715
                case 0xe0:
10716
                  goto op_semantics_87;
10717
                  break;
10718
                case 0xf0:
10719
                  goto op_semantics_88;
10720
                  break;
10721
                default: UNSUPPORTED(); break;
10722
              }
10723
            break;
10724
          case 0x7b:
10725
              GETBYTE ();
10726
              switch (op[2] & 0xe0)
10727
              {
10728
                case 0x00:
10729
                  goto op_semantics_89;
10730
                  break;
10731
                default: UNSUPPORTED(); break;
10732
              }
10733
            break;
10734
          case 0x7c:
10735
              GETBYTE ();
10736
              switch (op[2] & 0xf0)
10737
              {
10738
                case 0x20:
10739
                  goto op_semantics_78;
10740
                  break;
10741
                case 0x40:
10742
                  goto op_semantics_79;
10743
                  break;
10744
                case 0x50:
10745
                  goto op_semantics_80;
10746
                  break;
10747
                case 0x60:
10748
                  goto op_semantics_81;
10749
                  break;
10750
                case 0x70:
10751
                  goto op_semantics_82;
10752
                  break;
10753
                case 0x80:
10754
                  goto op_semantics_83;
10755
                  break;
10756
                case 0x90:
10757
                  goto op_semantics_84;
10758
                  break;
10759
                case 0xc0:
10760
                  goto op_semantics_85;
10761
                  break;
10762
                case 0xd0:
10763
                  goto op_semantics_86;
10764
                  break;
10765
                case 0xe0:
10766
                  goto op_semantics_87;
10767
                  break;
10768
                case 0xf0:
10769
                  goto op_semantics_88;
10770
                  break;
10771
                default: UNSUPPORTED(); break;
10772
              }
10773
            break;
10774
          case 0x7f:
10775
              GETBYTE ();
10776
              switch (op[2] & 0xe0)
10777
              {
10778
                case 0x00:
10779
                  goto op_semantics_89;
10780
                  break;
10781
                default: UNSUPPORTED(); break;
10782
              }
10783
            break;
10784
          case 0x80:
10785
              GETBYTE ();
10786
              switch (op[2] & 0x00)
10787
              {
10788
                case 0x00:
10789
                  op_semantics_90:
10790
                    {
10791
                      /** 1111 1101 100immmm rsrc rdst  shlr    #%2, %1, %0 */
10792
#line 658 "rx-decode.opc"
10793
                      int immmm AU = op[1] & 0x1f;
10794
#line 658 "rx-decode.opc"
10795
                      int rsrc AU = (op[2] >> 4) & 0x0f;
10796
#line 658 "rx-decode.opc"
10797
                      int rdst AU = op[2] & 0x0f;
10798
                      if (trace)
10799
                        {
10800
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
10801
                                 "/** 1111 1101 100immmm rsrc rdst      shlr    #%2, %1, %0 */",
10802
                                 op[0], op[1], op[2]);
10803
                          printf ("  immmm = 0x%x,", immmm);
10804
                          printf ("  rsrc = 0x%x,", rsrc);
10805
                          printf ("  rdst = 0x%x\n", rdst);
10806
                        }
10807
                      SYNTAX("shlr      #%2, %1, %0");
10808
#line 658 "rx-decode.opc"
10809
                      ID(shlr); S2C(immmm); SR(rsrc); DR(rdst); F__SZC;
10810
 
10811
                    /*----------------------------------------------------------------------*/
10812
                    /* ROTATE                                                           */
10813
 
10814
                    }
10815
                  break;
10816
              }
10817
            break;
10818
          case 0x81:
10819
              GETBYTE ();
10820
              switch (op[2] & 0x00)
10821
              {
10822
                case 0x00:
10823
                  goto op_semantics_90;
10824
                  break;
10825
              }
10826
            break;
10827
          case 0x82:
10828
              GETBYTE ();
10829
              switch (op[2] & 0x00)
10830
              {
10831
                case 0x00:
10832
                  goto op_semantics_90;
10833
                  break;
10834
              }
10835
            break;
10836
          case 0x83:
10837
              GETBYTE ();
10838
              switch (op[2] & 0x00)
10839
              {
10840
                case 0x00:
10841
                  goto op_semantics_90;
10842
                  break;
10843
              }
10844
            break;
10845
          case 0x84:
10846
              GETBYTE ();
10847
              switch (op[2] & 0x00)
10848
              {
10849
                case 0x00:
10850
                  goto op_semantics_90;
10851
                  break;
10852
              }
10853
            break;
10854
          case 0x85:
10855
              GETBYTE ();
10856
              switch (op[2] & 0x00)
10857
              {
10858
                case 0x00:
10859
                  goto op_semantics_90;
10860
                  break;
10861
              }
10862
            break;
10863
          case 0x86:
10864
              GETBYTE ();
10865
              switch (op[2] & 0x00)
10866
              {
10867
                case 0x00:
10868
                  goto op_semantics_90;
10869
                  break;
10870
              }
10871
            break;
10872
          case 0x87:
10873
              GETBYTE ();
10874
              switch (op[2] & 0x00)
10875
              {
10876
                case 0x00:
10877
                  goto op_semantics_90;
10878
                  break;
10879
              }
10880
            break;
10881
          case 0x88:
10882
              GETBYTE ();
10883
              switch (op[2] & 0x00)
10884
              {
10885
                case 0x00:
10886
                  goto op_semantics_90;
10887
                  break;
10888
              }
10889
            break;
10890
          case 0x89:
10891
              GETBYTE ();
10892
              switch (op[2] & 0x00)
10893
              {
10894
                case 0x00:
10895
                  goto op_semantics_90;
10896
                  break;
10897
              }
10898
            break;
10899
          case 0x8a:
10900
              GETBYTE ();
10901
              switch (op[2] & 0x00)
10902
              {
10903
                case 0x00:
10904
                  goto op_semantics_90;
10905
                  break;
10906
              }
10907
            break;
10908
          case 0x8b:
10909
              GETBYTE ();
10910
              switch (op[2] & 0x00)
10911
              {
10912
                case 0x00:
10913
                  goto op_semantics_90;
10914
                  break;
10915
              }
10916
            break;
10917
          case 0x8c:
10918
              GETBYTE ();
10919
              switch (op[2] & 0x00)
10920
              {
10921
                case 0x00:
10922
                  goto op_semantics_90;
10923
                  break;
10924
              }
10925
            break;
10926
          case 0x8d:
10927
              GETBYTE ();
10928
              switch (op[2] & 0x00)
10929
              {
10930
                case 0x00:
10931
                  goto op_semantics_90;
10932
                  break;
10933
              }
10934
            break;
10935
          case 0x8e:
10936
              GETBYTE ();
10937
              switch (op[2] & 0x00)
10938
              {
10939
                case 0x00:
10940
                  goto op_semantics_90;
10941
                  break;
10942
              }
10943
            break;
10944
          case 0x8f:
10945
              GETBYTE ();
10946
              switch (op[2] & 0x00)
10947
              {
10948
                case 0x00:
10949
                  goto op_semantics_90;
10950
                  break;
10951
              }
10952
            break;
10953
          case 0x90:
10954
              GETBYTE ();
10955
              switch (op[2] & 0x00)
10956
              {
10957
                case 0x00:
10958
                  goto op_semantics_90;
10959
                  break;
10960
              }
10961
            break;
10962
          case 0x91:
10963
              GETBYTE ();
10964
              switch (op[2] & 0x00)
10965
              {
10966
                case 0x00:
10967
                  goto op_semantics_90;
10968
                  break;
10969
              }
10970
            break;
10971
          case 0x92:
10972
              GETBYTE ();
10973
              switch (op[2] & 0x00)
10974
              {
10975
                case 0x00:
10976
                  goto op_semantics_90;
10977
                  break;
10978
              }
10979
            break;
10980
          case 0x93:
10981
              GETBYTE ();
10982
              switch (op[2] & 0x00)
10983
              {
10984
                case 0x00:
10985
                  goto op_semantics_90;
10986
                  break;
10987
              }
10988
            break;
10989
          case 0x94:
10990
              GETBYTE ();
10991
              switch (op[2] & 0x00)
10992
              {
10993
                case 0x00:
10994
                  goto op_semantics_90;
10995
                  break;
10996
              }
10997
            break;
10998
          case 0x95:
10999
              GETBYTE ();
11000
              switch (op[2] & 0x00)
11001
              {
11002
                case 0x00:
11003
                  goto op_semantics_90;
11004
                  break;
11005
              }
11006
            break;
11007
          case 0x96:
11008
              GETBYTE ();
11009
              switch (op[2] & 0x00)
11010
              {
11011
                case 0x00:
11012
                  goto op_semantics_90;
11013
                  break;
11014
              }
11015
            break;
11016
          case 0x97:
11017
              GETBYTE ();
11018
              switch (op[2] & 0x00)
11019
              {
11020
                case 0x00:
11021
                  goto op_semantics_90;
11022
                  break;
11023
              }
11024
            break;
11025
          case 0x98:
11026
              GETBYTE ();
11027
              switch (op[2] & 0x00)
11028
              {
11029
                case 0x00:
11030
                  goto op_semantics_90;
11031
                  break;
11032
              }
11033
            break;
11034
          case 0x99:
11035
              GETBYTE ();
11036
              switch (op[2] & 0x00)
11037
              {
11038
                case 0x00:
11039
                  goto op_semantics_90;
11040
                  break;
11041
              }
11042
            break;
11043
          case 0x9a:
11044
              GETBYTE ();
11045
              switch (op[2] & 0x00)
11046
              {
11047
                case 0x00:
11048
                  goto op_semantics_90;
11049
                  break;
11050
              }
11051
            break;
11052
          case 0x9b:
11053
              GETBYTE ();
11054
              switch (op[2] & 0x00)
11055
              {
11056
                case 0x00:
11057
                  goto op_semantics_90;
11058
                  break;
11059
              }
11060
            break;
11061
          case 0x9c:
11062
              GETBYTE ();
11063
              switch (op[2] & 0x00)
11064
              {
11065
                case 0x00:
11066
                  goto op_semantics_90;
11067
                  break;
11068
              }
11069
            break;
11070
          case 0x9d:
11071
              GETBYTE ();
11072
              switch (op[2] & 0x00)
11073
              {
11074
                case 0x00:
11075
                  goto op_semantics_90;
11076
                  break;
11077
              }
11078
            break;
11079
          case 0x9e:
11080
              GETBYTE ();
11081
              switch (op[2] & 0x00)
11082
              {
11083
                case 0x00:
11084
                  goto op_semantics_90;
11085
                  break;
11086
              }
11087
            break;
11088
          case 0x9f:
11089
              GETBYTE ();
11090
              switch (op[2] & 0x00)
11091
              {
11092
                case 0x00:
11093
                  goto op_semantics_90;
11094
                  break;
11095
              }
11096
            break;
11097
          case 0xa0:
11098
              GETBYTE ();
11099
              switch (op[2] & 0x00)
11100
              {
11101
                case 0x00:
11102
                  op_semantics_91:
11103
                    {
11104
                      /** 1111 1101 101immmm rsrc rdst  shar    #%2, %1, %0 */
11105
#line 648 "rx-decode.opc"
11106
                      int immmm AU = op[1] & 0x1f;
11107
#line 648 "rx-decode.opc"
11108
                      int rsrc AU = (op[2] >> 4) & 0x0f;
11109
#line 648 "rx-decode.opc"
11110
                      int rdst AU = op[2] & 0x0f;
11111
                      if (trace)
11112
                        {
11113
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
11114
                                 "/** 1111 1101 101immmm rsrc rdst      shar    #%2, %1, %0 */",
11115
                                 op[0], op[1], op[2]);
11116
                          printf ("  immmm = 0x%x,", immmm);
11117
                          printf ("  rsrc = 0x%x,", rsrc);
11118
                          printf ("  rdst = 0x%x\n", rdst);
11119
                        }
11120
                      SYNTAX("shar      #%2, %1, %0");
11121
#line 648 "rx-decode.opc"
11122
                      ID(shar); S2C(immmm); SR(rsrc); DR(rdst); F_0SZC;
11123
 
11124
 
11125
                    }
11126
                  break;
11127
              }
11128
            break;
11129
          case 0xa1:
11130
              GETBYTE ();
11131
              switch (op[2] & 0x00)
11132
              {
11133
                case 0x00:
11134
                  goto op_semantics_91;
11135
                  break;
11136
              }
11137
            break;
11138
          case 0xa2:
11139
              GETBYTE ();
11140
              switch (op[2] & 0x00)
11141
              {
11142
                case 0x00:
11143
                  goto op_semantics_91;
11144
                  break;
11145
              }
11146
            break;
11147
          case 0xa3:
11148
              GETBYTE ();
11149
              switch (op[2] & 0x00)
11150
              {
11151
                case 0x00:
11152
                  goto op_semantics_91;
11153
                  break;
11154
              }
11155
            break;
11156
          case 0xa4:
11157
              GETBYTE ();
11158
              switch (op[2] & 0x00)
11159
              {
11160
                case 0x00:
11161
                  goto op_semantics_91;
11162
                  break;
11163
              }
11164
            break;
11165
          case 0xa5:
11166
              GETBYTE ();
11167
              switch (op[2] & 0x00)
11168
              {
11169
                case 0x00:
11170
                  goto op_semantics_91;
11171
                  break;
11172
              }
11173
            break;
11174
          case 0xa6:
11175
              GETBYTE ();
11176
              switch (op[2] & 0x00)
11177
              {
11178
                case 0x00:
11179
                  goto op_semantics_91;
11180
                  break;
11181
              }
11182
            break;
11183
          case 0xa7:
11184
              GETBYTE ();
11185
              switch (op[2] & 0x00)
11186
              {
11187
                case 0x00:
11188
                  goto op_semantics_91;
11189
                  break;
11190
              }
11191
            break;
11192
          case 0xa8:
11193
              GETBYTE ();
11194
              switch (op[2] & 0x00)
11195
              {
11196
                case 0x00:
11197
                  goto op_semantics_91;
11198
                  break;
11199
              }
11200
            break;
11201
          case 0xa9:
11202
              GETBYTE ();
11203
              switch (op[2] & 0x00)
11204
              {
11205
                case 0x00:
11206
                  goto op_semantics_91;
11207
                  break;
11208
              }
11209
            break;
11210
          case 0xaa:
11211
              GETBYTE ();
11212
              switch (op[2] & 0x00)
11213
              {
11214
                case 0x00:
11215
                  goto op_semantics_91;
11216
                  break;
11217
              }
11218
            break;
11219
          case 0xab:
11220
              GETBYTE ();
11221
              switch (op[2] & 0x00)
11222
              {
11223
                case 0x00:
11224
                  goto op_semantics_91;
11225
                  break;
11226
              }
11227
            break;
11228
          case 0xac:
11229
              GETBYTE ();
11230
              switch (op[2] & 0x00)
11231
              {
11232
                case 0x00:
11233
                  goto op_semantics_91;
11234
                  break;
11235
              }
11236
            break;
11237
          case 0xad:
11238
              GETBYTE ();
11239
              switch (op[2] & 0x00)
11240
              {
11241
                case 0x00:
11242
                  goto op_semantics_91;
11243
                  break;
11244
              }
11245
            break;
11246
          case 0xae:
11247
              GETBYTE ();
11248
              switch (op[2] & 0x00)
11249
              {
11250
                case 0x00:
11251
                  goto op_semantics_91;
11252
                  break;
11253
              }
11254
            break;
11255
          case 0xaf:
11256
              GETBYTE ();
11257
              switch (op[2] & 0x00)
11258
              {
11259
                case 0x00:
11260
                  goto op_semantics_91;
11261
                  break;
11262
              }
11263
            break;
11264
          case 0xb0:
11265
              GETBYTE ();
11266
              switch (op[2] & 0x00)
11267
              {
11268
                case 0x00:
11269
                  goto op_semantics_91;
11270
                  break;
11271
              }
11272
            break;
11273
          case 0xb1:
11274
              GETBYTE ();
11275
              switch (op[2] & 0x00)
11276
              {
11277
                case 0x00:
11278
                  goto op_semantics_91;
11279
                  break;
11280
              }
11281
            break;
11282
          case 0xb2:
11283
              GETBYTE ();
11284
              switch (op[2] & 0x00)
11285
              {
11286
                case 0x00:
11287
                  goto op_semantics_91;
11288
                  break;
11289
              }
11290
            break;
11291
          case 0xb3:
11292
              GETBYTE ();
11293
              switch (op[2] & 0x00)
11294
              {
11295
                case 0x00:
11296
                  goto op_semantics_91;
11297
                  break;
11298
              }
11299
            break;
11300
          case 0xb4:
11301
              GETBYTE ();
11302
              switch (op[2] & 0x00)
11303
              {
11304
                case 0x00:
11305
                  goto op_semantics_91;
11306
                  break;
11307
              }
11308
            break;
11309
          case 0xb5:
11310
              GETBYTE ();
11311
              switch (op[2] & 0x00)
11312
              {
11313
                case 0x00:
11314
                  goto op_semantics_91;
11315
                  break;
11316
              }
11317
            break;
11318
          case 0xb6:
11319
              GETBYTE ();
11320
              switch (op[2] & 0x00)
11321
              {
11322
                case 0x00:
11323
                  goto op_semantics_91;
11324
                  break;
11325
              }
11326
            break;
11327
          case 0xb7:
11328
              GETBYTE ();
11329
              switch (op[2] & 0x00)
11330
              {
11331
                case 0x00:
11332
                  goto op_semantics_91;
11333
                  break;
11334
              }
11335
            break;
11336
          case 0xb8:
11337
              GETBYTE ();
11338
              switch (op[2] & 0x00)
11339
              {
11340
                case 0x00:
11341
                  goto op_semantics_91;
11342
                  break;
11343
              }
11344
            break;
11345
          case 0xb9:
11346
              GETBYTE ();
11347
              switch (op[2] & 0x00)
11348
              {
11349
                case 0x00:
11350
                  goto op_semantics_91;
11351
                  break;
11352
              }
11353
            break;
11354
          case 0xba:
11355
              GETBYTE ();
11356
              switch (op[2] & 0x00)
11357
              {
11358
                case 0x00:
11359
                  goto op_semantics_91;
11360
                  break;
11361
              }
11362
            break;
11363
          case 0xbb:
11364
              GETBYTE ();
11365
              switch (op[2] & 0x00)
11366
              {
11367
                case 0x00:
11368
                  goto op_semantics_91;
11369
                  break;
11370
              }
11371
            break;
11372
          case 0xbc:
11373
              GETBYTE ();
11374
              switch (op[2] & 0x00)
11375
              {
11376
                case 0x00:
11377
                  goto op_semantics_91;
11378
                  break;
11379
              }
11380
            break;
11381
          case 0xbd:
11382
              GETBYTE ();
11383
              switch (op[2] & 0x00)
11384
              {
11385
                case 0x00:
11386
                  goto op_semantics_91;
11387
                  break;
11388
              }
11389
            break;
11390
          case 0xbe:
11391
              GETBYTE ();
11392
              switch (op[2] & 0x00)
11393
              {
11394
                case 0x00:
11395
                  goto op_semantics_91;
11396
                  break;
11397
              }
11398
            break;
11399
          case 0xbf:
11400
              GETBYTE ();
11401
              switch (op[2] & 0x00)
11402
              {
11403
                case 0x00:
11404
                  goto op_semantics_91;
11405
                  break;
11406
              }
11407
            break;
11408
          case 0xc0:
11409
              GETBYTE ();
11410
              switch (op[2] & 0x00)
11411
              {
11412
                case 0x00:
11413
                  op_semantics_92:
11414
                    {
11415
                      /** 1111 1101 110immmm rsrc rdst  shll    #%2, %1, %0 */
11416
#line 638 "rx-decode.opc"
11417
                      int immmm AU = op[1] & 0x1f;
11418
#line 638 "rx-decode.opc"
11419
                      int rsrc AU = (op[2] >> 4) & 0x0f;
11420
#line 638 "rx-decode.opc"
11421
                      int rdst AU = op[2] & 0x0f;
11422
                      if (trace)
11423
                        {
11424
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
11425
                                 "/** 1111 1101 110immmm rsrc rdst      shll    #%2, %1, %0 */",
11426
                                 op[0], op[1], op[2]);
11427
                          printf ("  immmm = 0x%x,", immmm);
11428
                          printf ("  rsrc = 0x%x,", rsrc);
11429
                          printf ("  rdst = 0x%x\n", rdst);
11430
                        }
11431
                      SYNTAX("shll      #%2, %1, %0");
11432
#line 638 "rx-decode.opc"
11433
                      ID(shll); S2C(immmm); SR(rsrc); DR(rdst); F_OSZC;
11434
 
11435
 
11436
                    }
11437
                  break;
11438
              }
11439
            break;
11440
          case 0xc1:
11441
              GETBYTE ();
11442
              switch (op[2] & 0x00)
11443
              {
11444
                case 0x00:
11445
                  goto op_semantics_92;
11446
                  break;
11447
              }
11448
            break;
11449
          case 0xc2:
11450
              GETBYTE ();
11451
              switch (op[2] & 0x00)
11452
              {
11453
                case 0x00:
11454
                  goto op_semantics_92;
11455
                  break;
11456
              }
11457
            break;
11458
          case 0xc3:
11459
              GETBYTE ();
11460
              switch (op[2] & 0x00)
11461
              {
11462
                case 0x00:
11463
                  goto op_semantics_92;
11464
                  break;
11465
              }
11466
            break;
11467
          case 0xc4:
11468
              GETBYTE ();
11469
              switch (op[2] & 0x00)
11470
              {
11471
                case 0x00:
11472
                  goto op_semantics_92;
11473
                  break;
11474
              }
11475
            break;
11476
          case 0xc5:
11477
              GETBYTE ();
11478
              switch (op[2] & 0x00)
11479
              {
11480
                case 0x00:
11481
                  goto op_semantics_92;
11482
                  break;
11483
              }
11484
            break;
11485
          case 0xc6:
11486
              GETBYTE ();
11487
              switch (op[2] & 0x00)
11488
              {
11489
                case 0x00:
11490
                  goto op_semantics_92;
11491
                  break;
11492
              }
11493
            break;
11494
          case 0xc7:
11495
              GETBYTE ();
11496
              switch (op[2] & 0x00)
11497
              {
11498
                case 0x00:
11499
                  goto op_semantics_92;
11500
                  break;
11501
              }
11502
            break;
11503
          case 0xc8:
11504
              GETBYTE ();
11505
              switch (op[2] & 0x00)
11506
              {
11507
                case 0x00:
11508
                  goto op_semantics_92;
11509
                  break;
11510
              }
11511
            break;
11512
          case 0xc9:
11513
              GETBYTE ();
11514
              switch (op[2] & 0x00)
11515
              {
11516
                case 0x00:
11517
                  goto op_semantics_92;
11518
                  break;
11519
              }
11520
            break;
11521
          case 0xca:
11522
              GETBYTE ();
11523
              switch (op[2] & 0x00)
11524
              {
11525
                case 0x00:
11526
                  goto op_semantics_92;
11527
                  break;
11528
              }
11529
            break;
11530
          case 0xcb:
11531
              GETBYTE ();
11532
              switch (op[2] & 0x00)
11533
              {
11534
                case 0x00:
11535
                  goto op_semantics_92;
11536
                  break;
11537
              }
11538
            break;
11539
          case 0xcc:
11540
              GETBYTE ();
11541
              switch (op[2] & 0x00)
11542
              {
11543
                case 0x00:
11544
                  goto op_semantics_92;
11545
                  break;
11546
              }
11547
            break;
11548
          case 0xcd:
11549
              GETBYTE ();
11550
              switch (op[2] & 0x00)
11551
              {
11552
                case 0x00:
11553
                  goto op_semantics_92;
11554
                  break;
11555
              }
11556
            break;
11557
          case 0xce:
11558
              GETBYTE ();
11559
              switch (op[2] & 0x00)
11560
              {
11561
                case 0x00:
11562
                  goto op_semantics_92;
11563
                  break;
11564
              }
11565
            break;
11566
          case 0xcf:
11567
              GETBYTE ();
11568
              switch (op[2] & 0x00)
11569
              {
11570
                case 0x00:
11571
                  goto op_semantics_92;
11572
                  break;
11573
              }
11574
            break;
11575
          case 0xd0:
11576
              GETBYTE ();
11577
              switch (op[2] & 0x00)
11578
              {
11579
                case 0x00:
11580
                  goto op_semantics_92;
11581
                  break;
11582
              }
11583
            break;
11584
          case 0xd1:
11585
              GETBYTE ();
11586
              switch (op[2] & 0x00)
11587
              {
11588
                case 0x00:
11589
                  goto op_semantics_92;
11590
                  break;
11591
              }
11592
            break;
11593
          case 0xd2:
11594
              GETBYTE ();
11595
              switch (op[2] & 0x00)
11596
              {
11597
                case 0x00:
11598
                  goto op_semantics_92;
11599
                  break;
11600
              }
11601
            break;
11602
          case 0xd3:
11603
              GETBYTE ();
11604
              switch (op[2] & 0x00)
11605
              {
11606
                case 0x00:
11607
                  goto op_semantics_92;
11608
                  break;
11609
              }
11610
            break;
11611
          case 0xd4:
11612
              GETBYTE ();
11613
              switch (op[2] & 0x00)
11614
              {
11615
                case 0x00:
11616
                  goto op_semantics_92;
11617
                  break;
11618
              }
11619
            break;
11620
          case 0xd5:
11621
              GETBYTE ();
11622
              switch (op[2] & 0x00)
11623
              {
11624
                case 0x00:
11625
                  goto op_semantics_92;
11626
                  break;
11627
              }
11628
            break;
11629
          case 0xd6:
11630
              GETBYTE ();
11631
              switch (op[2] & 0x00)
11632
              {
11633
                case 0x00:
11634
                  goto op_semantics_92;
11635
                  break;
11636
              }
11637
            break;
11638
          case 0xd7:
11639
              GETBYTE ();
11640
              switch (op[2] & 0x00)
11641
              {
11642
                case 0x00:
11643
                  goto op_semantics_92;
11644
                  break;
11645
              }
11646
            break;
11647
          case 0xd8:
11648
              GETBYTE ();
11649
              switch (op[2] & 0x00)
11650
              {
11651
                case 0x00:
11652
                  goto op_semantics_92;
11653
                  break;
11654
              }
11655
            break;
11656
          case 0xd9:
11657
              GETBYTE ();
11658
              switch (op[2] & 0x00)
11659
              {
11660
                case 0x00:
11661
                  goto op_semantics_92;
11662
                  break;
11663
              }
11664
            break;
11665
          case 0xda:
11666
              GETBYTE ();
11667
              switch (op[2] & 0x00)
11668
              {
11669
                case 0x00:
11670
                  goto op_semantics_92;
11671
                  break;
11672
              }
11673
            break;
11674
          case 0xdb:
11675
              GETBYTE ();
11676
              switch (op[2] & 0x00)
11677
              {
11678
                case 0x00:
11679
                  goto op_semantics_92;
11680
                  break;
11681
              }
11682
            break;
11683
          case 0xdc:
11684
              GETBYTE ();
11685
              switch (op[2] & 0x00)
11686
              {
11687
                case 0x00:
11688
                  goto op_semantics_92;
11689
                  break;
11690
              }
11691
            break;
11692
          case 0xdd:
11693
              GETBYTE ();
11694
              switch (op[2] & 0x00)
11695
              {
11696
                case 0x00:
11697
                  goto op_semantics_92;
11698
                  break;
11699
              }
11700
            break;
11701
          case 0xde:
11702
              GETBYTE ();
11703
              switch (op[2] & 0x00)
11704
              {
11705
                case 0x00:
11706
                  goto op_semantics_92;
11707
                  break;
11708
              }
11709
            break;
11710
          case 0xdf:
11711
              GETBYTE ();
11712
              switch (op[2] & 0x00)
11713
              {
11714
                case 0x00:
11715
                  goto op_semantics_92;
11716
                  break;
11717
              }
11718
            break;
11719
          case 0xe0:
11720
              GETBYTE ();
11721
              switch (op[2] & 0xf0)
11722
              {
11723
                case 0x00:
11724
                case 0x10:
11725
                case 0x20:
11726
                case 0x30:
11727
                case 0x40:
11728
                case 0x50:
11729
                case 0x60:
11730
                case 0x70:
11731
                case 0x80:
11732
                case 0x90:
11733
                case 0xa0:
11734
                case 0xb0:
11735
                case 0xc0:
11736
                case 0xd0:
11737
                case 0xe0:
11738
                  op_semantics_93:
11739
                    {
11740
                      /** 1111 1101 111 bittt cond rdst bm%2    #%1, %0%S0 */
11741
#line 904 "rx-decode.opc"
11742
                      int bittt AU = op[1] & 0x1f;
11743
#line 904 "rx-decode.opc"
11744
                      int cond AU = (op[2] >> 4) & 0x0f;
11745
#line 904 "rx-decode.opc"
11746
                      int rdst AU = op[2] & 0x0f;
11747
                      if (trace)
11748
                        {
11749
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
11750
                                 "/** 1111 1101 111 bittt cond rdst     bm%2    #%1, %0%S0 */",
11751
                                 op[0], op[1], op[2]);
11752
                          printf ("  bittt = 0x%x,", bittt);
11753
                          printf ("  cond = 0x%x,", cond);
11754
                          printf ("  rdst = 0x%x\n", rdst);
11755
                        }
11756
                      SYNTAX("bm%2      #%1, %0%S0");
11757
#line 904 "rx-decode.opc"
11758
                      ID(bmcc); BWL(LSIZE); S2cc(cond); SC(bittt); DR(rdst);
11759
 
11760
                    /*----------------------------------------------------------------------*/
11761
                    /* CONTROL REGISTERS                                                        */
11762
 
11763
                    }
11764
                  break;
11765
                case 0xf0:
11766
                  op_semantics_94:
11767
                    {
11768
                      /** 1111 1101 111bittt 1111 rdst  bnot    #%1, %0 */
11769
#line 897 "rx-decode.opc"
11770
                      int bittt AU = op[1] & 0x1f;
11771
#line 897 "rx-decode.opc"
11772
                      int rdst AU = op[2] & 0x0f;
11773
                      if (trace)
11774
                        {
11775
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
11776
                                 "/** 1111 1101 111bittt 1111 rdst      bnot    #%1, %0 */",
11777
                                 op[0], op[1], op[2]);
11778
                          printf ("  bittt = 0x%x,", bittt);
11779
                          printf ("  rdst = 0x%x\n", rdst);
11780
                        }
11781
                      SYNTAX("bnot      #%1, %0");
11782
#line 897 "rx-decode.opc"
11783
                      ID(bnot); BWL(LSIZE); SC(bittt); DR(rdst);
11784
 
11785
 
11786
                    }
11787
                  break;
11788
              }
11789
            break;
11790
          case 0xe1:
11791
              GETBYTE ();
11792
              switch (op[2] & 0xf0)
11793
              {
11794
                case 0x00:
11795
                case 0x10:
11796
                case 0x20:
11797
                case 0x30:
11798
                case 0x40:
11799
                case 0x50:
11800
                case 0x60:
11801
                case 0x70:
11802
                case 0x80:
11803
                case 0x90:
11804
                case 0xa0:
11805
                case 0xb0:
11806
                case 0xc0:
11807
                case 0xd0:
11808
                case 0xe0:
11809
                  goto op_semantics_93;
11810
                  break;
11811
                case 0xf0:
11812
                  goto op_semantics_94;
11813
                  break;
11814
              }
11815
            break;
11816
          case 0xe2:
11817
              GETBYTE ();
11818
              switch (op[2] & 0xf0)
11819
              {
11820
                case 0x00:
11821
                case 0x10:
11822
                case 0x20:
11823
                case 0x30:
11824
                case 0x40:
11825
                case 0x50:
11826
                case 0x60:
11827
                case 0x70:
11828
                case 0x80:
11829
                case 0x90:
11830
                case 0xa0:
11831
                case 0xb0:
11832
                case 0xc0:
11833
                case 0xd0:
11834
                case 0xe0:
11835
                  goto op_semantics_93;
11836
                  break;
11837
                case 0xf0:
11838
                  goto op_semantics_94;
11839
                  break;
11840
              }
11841
            break;
11842
          case 0xe3:
11843
              GETBYTE ();
11844
              switch (op[2] & 0xf0)
11845
              {
11846
                case 0x00:
11847
                case 0x10:
11848
                case 0x20:
11849
                case 0x30:
11850
                case 0x40:
11851
                case 0x50:
11852
                case 0x60:
11853
                case 0x70:
11854
                case 0x80:
11855
                case 0x90:
11856
                case 0xa0:
11857
                case 0xb0:
11858
                case 0xc0:
11859
                case 0xd0:
11860
                case 0xe0:
11861
                  goto op_semantics_93;
11862
                  break;
11863
                case 0xf0:
11864
                  goto op_semantics_94;
11865
                  break;
11866
              }
11867
            break;
11868
          case 0xe4:
11869
              GETBYTE ();
11870
              switch (op[2] & 0xf0)
11871
              {
11872
                case 0x00:
11873
                case 0x10:
11874
                case 0x20:
11875
                case 0x30:
11876
                case 0x40:
11877
                case 0x50:
11878
                case 0x60:
11879
                case 0x70:
11880
                case 0x80:
11881
                case 0x90:
11882
                case 0xa0:
11883
                case 0xb0:
11884
                case 0xc0:
11885
                case 0xd0:
11886
                case 0xe0:
11887
                  goto op_semantics_93;
11888
                  break;
11889
                case 0xf0:
11890
                  goto op_semantics_94;
11891
                  break;
11892
              }
11893
            break;
11894
          case 0xe5:
11895
              GETBYTE ();
11896
              switch (op[2] & 0xf0)
11897
              {
11898
                case 0x00:
11899
                case 0x10:
11900
                case 0x20:
11901
                case 0x30:
11902
                case 0x40:
11903
                case 0x50:
11904
                case 0x60:
11905
                case 0x70:
11906
                case 0x80:
11907
                case 0x90:
11908
                case 0xa0:
11909
                case 0xb0:
11910
                case 0xc0:
11911
                case 0xd0:
11912
                case 0xe0:
11913
                  goto op_semantics_93;
11914
                  break;
11915
                case 0xf0:
11916
                  goto op_semantics_94;
11917
                  break;
11918
              }
11919
            break;
11920
          case 0xe6:
11921
              GETBYTE ();
11922
              switch (op[2] & 0xf0)
11923
              {
11924
                case 0x00:
11925
                case 0x10:
11926
                case 0x20:
11927
                case 0x30:
11928
                case 0x40:
11929
                case 0x50:
11930
                case 0x60:
11931
                case 0x70:
11932
                case 0x80:
11933
                case 0x90:
11934
                case 0xa0:
11935
                case 0xb0:
11936
                case 0xc0:
11937
                case 0xd0:
11938
                case 0xe0:
11939
                  goto op_semantics_93;
11940
                  break;
11941
                case 0xf0:
11942
                  goto op_semantics_94;
11943
                  break;
11944
              }
11945
            break;
11946
          case 0xe7:
11947
              GETBYTE ();
11948
              switch (op[2] & 0xf0)
11949
              {
11950
                case 0x00:
11951
                case 0x10:
11952
                case 0x20:
11953
                case 0x30:
11954
                case 0x40:
11955
                case 0x50:
11956
                case 0x60:
11957
                case 0x70:
11958
                case 0x80:
11959
                case 0x90:
11960
                case 0xa0:
11961
                case 0xb0:
11962
                case 0xc0:
11963
                case 0xd0:
11964
                case 0xe0:
11965
                  goto op_semantics_93;
11966
                  break;
11967
                case 0xf0:
11968
                  goto op_semantics_94;
11969
                  break;
11970
              }
11971
            break;
11972
          case 0xe8:
11973
              GETBYTE ();
11974
              switch (op[2] & 0xf0)
11975
              {
11976
                case 0x00:
11977
                case 0x10:
11978
                case 0x20:
11979
                case 0x30:
11980
                case 0x40:
11981
                case 0x50:
11982
                case 0x60:
11983
                case 0x70:
11984
                case 0x80:
11985
                case 0x90:
11986
                case 0xa0:
11987
                case 0xb0:
11988
                case 0xc0:
11989
                case 0xd0:
11990
                case 0xe0:
11991
                  goto op_semantics_93;
11992
                  break;
11993
                case 0xf0:
11994
                  goto op_semantics_94;
11995
                  break;
11996
              }
11997
            break;
11998
          case 0xe9:
11999
              GETBYTE ();
12000
              switch (op[2] & 0xf0)
12001
              {
12002
                case 0x00:
12003
                case 0x10:
12004
                case 0x20:
12005
                case 0x30:
12006
                case 0x40:
12007
                case 0x50:
12008
                case 0x60:
12009
                case 0x70:
12010
                case 0x80:
12011
                case 0x90:
12012
                case 0xa0:
12013
                case 0xb0:
12014
                case 0xc0:
12015
                case 0xd0:
12016
                case 0xe0:
12017
                  goto op_semantics_93;
12018
                  break;
12019
                case 0xf0:
12020
                  goto op_semantics_94;
12021
                  break;
12022
              }
12023
            break;
12024
          case 0xea:
12025
              GETBYTE ();
12026
              switch (op[2] & 0xf0)
12027
              {
12028
                case 0x00:
12029
                case 0x10:
12030
                case 0x20:
12031
                case 0x30:
12032
                case 0x40:
12033
                case 0x50:
12034
                case 0x60:
12035
                case 0x70:
12036
                case 0x80:
12037
                case 0x90:
12038
                case 0xa0:
12039
                case 0xb0:
12040
                case 0xc0:
12041
                case 0xd0:
12042
                case 0xe0:
12043
                  goto op_semantics_93;
12044
                  break;
12045
                case 0xf0:
12046
                  goto op_semantics_94;
12047
                  break;
12048
              }
12049
            break;
12050
          case 0xeb:
12051
              GETBYTE ();
12052
              switch (op[2] & 0xf0)
12053
              {
12054
                case 0x00:
12055
                case 0x10:
12056
                case 0x20:
12057
                case 0x30:
12058
                case 0x40:
12059
                case 0x50:
12060
                case 0x60:
12061
                case 0x70:
12062
                case 0x80:
12063
                case 0x90:
12064
                case 0xa0:
12065
                case 0xb0:
12066
                case 0xc0:
12067
                case 0xd0:
12068
                case 0xe0:
12069
                  goto op_semantics_93;
12070
                  break;
12071
                case 0xf0:
12072
                  goto op_semantics_94;
12073
                  break;
12074
              }
12075
            break;
12076
          case 0xec:
12077
              GETBYTE ();
12078
              switch (op[2] & 0xf0)
12079
              {
12080
                case 0x00:
12081
                case 0x10:
12082
                case 0x20:
12083
                case 0x30:
12084
                case 0x40:
12085
                case 0x50:
12086
                case 0x60:
12087
                case 0x70:
12088
                case 0x80:
12089
                case 0x90:
12090
                case 0xa0:
12091
                case 0xb0:
12092
                case 0xc0:
12093
                case 0xd0:
12094
                case 0xe0:
12095
                  goto op_semantics_93;
12096
                  break;
12097
                case 0xf0:
12098
                  goto op_semantics_94;
12099
                  break;
12100
              }
12101
            break;
12102
          case 0xed:
12103
              GETBYTE ();
12104
              switch (op[2] & 0xf0)
12105
              {
12106
                case 0x00:
12107
                case 0x10:
12108
                case 0x20:
12109
                case 0x30:
12110
                case 0x40:
12111
                case 0x50:
12112
                case 0x60:
12113
                case 0x70:
12114
                case 0x80:
12115
                case 0x90:
12116
                case 0xa0:
12117
                case 0xb0:
12118
                case 0xc0:
12119
                case 0xd0:
12120
                case 0xe0:
12121
                  goto op_semantics_93;
12122
                  break;
12123
                case 0xf0:
12124
                  goto op_semantics_94;
12125
                  break;
12126
              }
12127
            break;
12128
          case 0xee:
12129
              GETBYTE ();
12130
              switch (op[2] & 0xf0)
12131
              {
12132
                case 0x00:
12133
                case 0x10:
12134
                case 0x20:
12135
                case 0x30:
12136
                case 0x40:
12137
                case 0x50:
12138
                case 0x60:
12139
                case 0x70:
12140
                case 0x80:
12141
                case 0x90:
12142
                case 0xa0:
12143
                case 0xb0:
12144
                case 0xc0:
12145
                case 0xd0:
12146
                case 0xe0:
12147
                  goto op_semantics_93;
12148
                  break;
12149
                case 0xf0:
12150
                  goto op_semantics_94;
12151
                  break;
12152
              }
12153
            break;
12154
          case 0xef:
12155
              GETBYTE ();
12156
              switch (op[2] & 0xf0)
12157
              {
12158
                case 0x00:
12159
                case 0x10:
12160
                case 0x20:
12161
                case 0x30:
12162
                case 0x40:
12163
                case 0x50:
12164
                case 0x60:
12165
                case 0x70:
12166
                case 0x80:
12167
                case 0x90:
12168
                case 0xa0:
12169
                case 0xb0:
12170
                case 0xc0:
12171
                case 0xd0:
12172
                case 0xe0:
12173
                  goto op_semantics_93;
12174
                  break;
12175
                case 0xf0:
12176
                  goto op_semantics_94;
12177
                  break;
12178
              }
12179
            break;
12180
          case 0xf0:
12181
              GETBYTE ();
12182
              switch (op[2] & 0xf0)
12183
              {
12184
                case 0x00:
12185
                case 0x10:
12186
                case 0x20:
12187
                case 0x30:
12188
                case 0x40:
12189
                case 0x50:
12190
                case 0x60:
12191
                case 0x70:
12192
                case 0x80:
12193
                case 0x90:
12194
                case 0xa0:
12195
                case 0xb0:
12196
                case 0xc0:
12197
                case 0xd0:
12198
                case 0xe0:
12199
                  goto op_semantics_93;
12200
                  break;
12201
                case 0xf0:
12202
                  goto op_semantics_94;
12203
                  break;
12204
              }
12205
            break;
12206
          case 0xf1:
12207
              GETBYTE ();
12208
              switch (op[2] & 0xf0)
12209
              {
12210
                case 0x00:
12211
                case 0x10:
12212
                case 0x20:
12213
                case 0x30:
12214
                case 0x40:
12215
                case 0x50:
12216
                case 0x60:
12217
                case 0x70:
12218
                case 0x80:
12219
                case 0x90:
12220
                case 0xa0:
12221
                case 0xb0:
12222
                case 0xc0:
12223
                case 0xd0:
12224
                case 0xe0:
12225
                  goto op_semantics_93;
12226
                  break;
12227
                case 0xf0:
12228
                  goto op_semantics_94;
12229
                  break;
12230
              }
12231
            break;
12232
          case 0xf2:
12233
              GETBYTE ();
12234
              switch (op[2] & 0xf0)
12235
              {
12236
                case 0x00:
12237
                case 0x10:
12238
                case 0x20:
12239
                case 0x30:
12240
                case 0x40:
12241
                case 0x50:
12242
                case 0x60:
12243
                case 0x70:
12244
                case 0x80:
12245
                case 0x90:
12246
                case 0xa0:
12247
                case 0xb0:
12248
                case 0xc0:
12249
                case 0xd0:
12250
                case 0xe0:
12251
                  goto op_semantics_93;
12252
                  break;
12253
                case 0xf0:
12254
                  goto op_semantics_94;
12255
                  break;
12256
              }
12257
            break;
12258
          case 0xf3:
12259
              GETBYTE ();
12260
              switch (op[2] & 0xf0)
12261
              {
12262
                case 0x00:
12263
                case 0x10:
12264
                case 0x20:
12265
                case 0x30:
12266
                case 0x40:
12267
                case 0x50:
12268
                case 0x60:
12269
                case 0x70:
12270
                case 0x80:
12271
                case 0x90:
12272
                case 0xa0:
12273
                case 0xb0:
12274
                case 0xc0:
12275
                case 0xd0:
12276
                case 0xe0:
12277
                  goto op_semantics_93;
12278
                  break;
12279
                case 0xf0:
12280
                  goto op_semantics_94;
12281
                  break;
12282
              }
12283
            break;
12284
          case 0xf4:
12285
              GETBYTE ();
12286
              switch (op[2] & 0xf0)
12287
              {
12288
                case 0x00:
12289
                case 0x10:
12290
                case 0x20:
12291
                case 0x30:
12292
                case 0x40:
12293
                case 0x50:
12294
                case 0x60:
12295
                case 0x70:
12296
                case 0x80:
12297
                case 0x90:
12298
                case 0xa0:
12299
                case 0xb0:
12300
                case 0xc0:
12301
                case 0xd0:
12302
                case 0xe0:
12303
                  goto op_semantics_93;
12304
                  break;
12305
                case 0xf0:
12306
                  goto op_semantics_94;
12307
                  break;
12308
              }
12309
            break;
12310
          case 0xf5:
12311
              GETBYTE ();
12312
              switch (op[2] & 0xf0)
12313
              {
12314
                case 0x00:
12315
                case 0x10:
12316
                case 0x20:
12317
                case 0x30:
12318
                case 0x40:
12319
                case 0x50:
12320
                case 0x60:
12321
                case 0x70:
12322
                case 0x80:
12323
                case 0x90:
12324
                case 0xa0:
12325
                case 0xb0:
12326
                case 0xc0:
12327
                case 0xd0:
12328
                case 0xe0:
12329
                  goto op_semantics_93;
12330
                  break;
12331
                case 0xf0:
12332
                  goto op_semantics_94;
12333
                  break;
12334
              }
12335
            break;
12336
          case 0xf6:
12337
              GETBYTE ();
12338
              switch (op[2] & 0xf0)
12339
              {
12340
                case 0x00:
12341
                case 0x10:
12342
                case 0x20:
12343
                case 0x30:
12344
                case 0x40:
12345
                case 0x50:
12346
                case 0x60:
12347
                case 0x70:
12348
                case 0x80:
12349
                case 0x90:
12350
                case 0xa0:
12351
                case 0xb0:
12352
                case 0xc0:
12353
                case 0xd0:
12354
                case 0xe0:
12355
                  goto op_semantics_93;
12356
                  break;
12357
                case 0xf0:
12358
                  goto op_semantics_94;
12359
                  break;
12360
              }
12361
            break;
12362
          case 0xf7:
12363
              GETBYTE ();
12364
              switch (op[2] & 0xf0)
12365
              {
12366
                case 0x00:
12367
                case 0x10:
12368
                case 0x20:
12369
                case 0x30:
12370
                case 0x40:
12371
                case 0x50:
12372
                case 0x60:
12373
                case 0x70:
12374
                case 0x80:
12375
                case 0x90:
12376
                case 0xa0:
12377
                case 0xb0:
12378
                case 0xc0:
12379
                case 0xd0:
12380
                case 0xe0:
12381
                  goto op_semantics_93;
12382
                  break;
12383
                case 0xf0:
12384
                  goto op_semantics_94;
12385
                  break;
12386
              }
12387
            break;
12388
          case 0xf8:
12389
              GETBYTE ();
12390
              switch (op[2] & 0xf0)
12391
              {
12392
                case 0x00:
12393
                case 0x10:
12394
                case 0x20:
12395
                case 0x30:
12396
                case 0x40:
12397
                case 0x50:
12398
                case 0x60:
12399
                case 0x70:
12400
                case 0x80:
12401
                case 0x90:
12402
                case 0xa0:
12403
                case 0xb0:
12404
                case 0xc0:
12405
                case 0xd0:
12406
                case 0xe0:
12407
                  goto op_semantics_93;
12408
                  break;
12409
                case 0xf0:
12410
                  goto op_semantics_94;
12411
                  break;
12412
              }
12413
            break;
12414
          case 0xf9:
12415
              GETBYTE ();
12416
              switch (op[2] & 0xf0)
12417
              {
12418
                case 0x00:
12419
                case 0x10:
12420
                case 0x20:
12421
                case 0x30:
12422
                case 0x40:
12423
                case 0x50:
12424
                case 0x60:
12425
                case 0x70:
12426
                case 0x80:
12427
                case 0x90:
12428
                case 0xa0:
12429
                case 0xb0:
12430
                case 0xc0:
12431
                case 0xd0:
12432
                case 0xe0:
12433
                  goto op_semantics_93;
12434
                  break;
12435
                case 0xf0:
12436
                  goto op_semantics_94;
12437
                  break;
12438
              }
12439
            break;
12440
          case 0xfa:
12441
              GETBYTE ();
12442
              switch (op[2] & 0xf0)
12443
              {
12444
                case 0x00:
12445
                case 0x10:
12446
                case 0x20:
12447
                case 0x30:
12448
                case 0x40:
12449
                case 0x50:
12450
                case 0x60:
12451
                case 0x70:
12452
                case 0x80:
12453
                case 0x90:
12454
                case 0xa0:
12455
                case 0xb0:
12456
                case 0xc0:
12457
                case 0xd0:
12458
                case 0xe0:
12459
                  goto op_semantics_93;
12460
                  break;
12461
                case 0xf0:
12462
                  goto op_semantics_94;
12463
                  break;
12464
              }
12465
            break;
12466
          case 0xfb:
12467
              GETBYTE ();
12468
              switch (op[2] & 0xf0)
12469
              {
12470
                case 0x00:
12471
                case 0x10:
12472
                case 0x20:
12473
                case 0x30:
12474
                case 0x40:
12475
                case 0x50:
12476
                case 0x60:
12477
                case 0x70:
12478
                case 0x80:
12479
                case 0x90:
12480
                case 0xa0:
12481
                case 0xb0:
12482
                case 0xc0:
12483
                case 0xd0:
12484
                case 0xe0:
12485
                  goto op_semantics_93;
12486
                  break;
12487
                case 0xf0:
12488
                  goto op_semantics_94;
12489
                  break;
12490
              }
12491
            break;
12492
          case 0xfc:
12493
              GETBYTE ();
12494
              switch (op[2] & 0xf0)
12495
              {
12496
                case 0x00:
12497
                case 0x10:
12498
                case 0x20:
12499
                case 0x30:
12500
                case 0x40:
12501
                case 0x50:
12502
                case 0x60:
12503
                case 0x70:
12504
                case 0x80:
12505
                case 0x90:
12506
                case 0xa0:
12507
                case 0xb0:
12508
                case 0xc0:
12509
                case 0xd0:
12510
                case 0xe0:
12511
                  goto op_semantics_93;
12512
                  break;
12513
                case 0xf0:
12514
                  goto op_semantics_94;
12515
                  break;
12516
              }
12517
            break;
12518
          case 0xfd:
12519
              GETBYTE ();
12520
              switch (op[2] & 0xf0)
12521
              {
12522
                case 0x00:
12523
                case 0x10:
12524
                case 0x20:
12525
                case 0x30:
12526
                case 0x40:
12527
                case 0x50:
12528
                case 0x60:
12529
                case 0x70:
12530
                case 0x80:
12531
                case 0x90:
12532
                case 0xa0:
12533
                case 0xb0:
12534
                case 0xc0:
12535
                case 0xd0:
12536
                case 0xe0:
12537
                  goto op_semantics_93;
12538
                  break;
12539
                case 0xf0:
12540
                  goto op_semantics_94;
12541
                  break;
12542
              }
12543
            break;
12544
          case 0xfe:
12545
              GETBYTE ();
12546
              switch (op[2] & 0xf0)
12547
              {
12548
                case 0x00:
12549
                case 0x10:
12550
                case 0x20:
12551
                case 0x30:
12552
                case 0x40:
12553
                case 0x50:
12554
                case 0x60:
12555
                case 0x70:
12556
                case 0x80:
12557
                case 0x90:
12558
                case 0xa0:
12559
                case 0xb0:
12560
                case 0xc0:
12561
                case 0xd0:
12562
                case 0xe0:
12563
                  goto op_semantics_93;
12564
                  break;
12565
                case 0xf0:
12566
                  goto op_semantics_94;
12567
                  break;
12568
              }
12569
            break;
12570
          case 0xff:
12571
              GETBYTE ();
12572
              switch (op[2] & 0xf0)
12573
              {
12574
                case 0x00:
12575
                case 0x10:
12576
                case 0x20:
12577
                case 0x30:
12578
                case 0x40:
12579
                case 0x50:
12580
                case 0x60:
12581
                case 0x70:
12582
                case 0x80:
12583
                case 0x90:
12584
                case 0xa0:
12585
                case 0xb0:
12586
                case 0xc0:
12587
                case 0xd0:
12588
                case 0xe0:
12589
                  goto op_semantics_93;
12590
                  break;
12591
                case 0xf0:
12592
                  goto op_semantics_94;
12593
                  break;
12594
              }
12595
            break;
12596
          default: UNSUPPORTED(); break;
12597
        }
12598
      break;
12599
    case 0xfe:
12600
        GETBYTE ();
12601
        switch (op[1] & 0xff)
12602
        {
12603
          case 0x00:
12604
              GETBYTE ();
12605
              switch (op[2] & 0x00)
12606
              {
12607
                case 0x00:
12608
                  op_semantics_95:
12609
                    {
12610
                      /** 1111 1110 00sz isrc bsrc rdst mov%s   %0, [%1, %2] */
12611
#line 302 "rx-decode.opc"
12612
                      int sz AU = (op[1] >> 4) & 0x03;
12613
#line 302 "rx-decode.opc"
12614
                      int isrc AU = op[1] & 0x0f;
12615
#line 302 "rx-decode.opc"
12616
                      int bsrc AU = (op[2] >> 4) & 0x0f;
12617
#line 302 "rx-decode.opc"
12618
                      int rdst AU = op[2] & 0x0f;
12619
                      if (trace)
12620
                        {
12621
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
12622
                                 "/** 1111 1110 00sz isrc bsrc rdst     mov%s   %0, [%1, %2] */",
12623
                                 op[0], op[1], op[2]);
12624
                          printf ("  sz = 0x%x,", sz);
12625
                          printf ("  isrc = 0x%x,", isrc);
12626
                          printf ("  bsrc = 0x%x,", bsrc);
12627
                          printf ("  rdst = 0x%x\n", rdst);
12628
                        }
12629
                      SYNTAX("mov%s     %0, [%1, %2]");
12630
#line 302 "rx-decode.opc"
12631
                      ID(movbir); sBWL(sz); DR(rdst); SRR(isrc); S2R(bsrc); F_____;
12632
 
12633
                    }
12634
                  break;
12635
              }
12636
            break;
12637
          case 0x01:
12638
              GETBYTE ();
12639
              switch (op[2] & 0x00)
12640
              {
12641
                case 0x00:
12642
                  goto op_semantics_95;
12643
                  break;
12644
              }
12645
            break;
12646
          case 0x02:
12647
              GETBYTE ();
12648
              switch (op[2] & 0x00)
12649
              {
12650
                case 0x00:
12651
                  goto op_semantics_95;
12652
                  break;
12653
              }
12654
            break;
12655
          case 0x03:
12656
              GETBYTE ();
12657
              switch (op[2] & 0x00)
12658
              {
12659
                case 0x00:
12660
                  goto op_semantics_95;
12661
                  break;
12662
              }
12663
            break;
12664
          case 0x04:
12665
              GETBYTE ();
12666
              switch (op[2] & 0x00)
12667
              {
12668
                case 0x00:
12669
                  goto op_semantics_95;
12670
                  break;
12671
              }
12672
            break;
12673
          case 0x05:
12674
              GETBYTE ();
12675
              switch (op[2] & 0x00)
12676
              {
12677
                case 0x00:
12678
                  goto op_semantics_95;
12679
                  break;
12680
              }
12681
            break;
12682
          case 0x06:
12683
              GETBYTE ();
12684
              switch (op[2] & 0x00)
12685
              {
12686
                case 0x00:
12687
                  goto op_semantics_95;
12688
                  break;
12689
              }
12690
            break;
12691
          case 0x07:
12692
              GETBYTE ();
12693
              switch (op[2] & 0x00)
12694
              {
12695
                case 0x00:
12696
                  goto op_semantics_95;
12697
                  break;
12698
              }
12699
            break;
12700
          case 0x08:
12701
              GETBYTE ();
12702
              switch (op[2] & 0x00)
12703
              {
12704
                case 0x00:
12705
                  goto op_semantics_95;
12706
                  break;
12707
              }
12708
            break;
12709
          case 0x09:
12710
              GETBYTE ();
12711
              switch (op[2] & 0x00)
12712
              {
12713
                case 0x00:
12714
                  goto op_semantics_95;
12715
                  break;
12716
              }
12717
            break;
12718
          case 0x0a:
12719
              GETBYTE ();
12720
              switch (op[2] & 0x00)
12721
              {
12722
                case 0x00:
12723
                  goto op_semantics_95;
12724
                  break;
12725
              }
12726
            break;
12727
          case 0x0b:
12728
              GETBYTE ();
12729
              switch (op[2] & 0x00)
12730
              {
12731
                case 0x00:
12732
                  goto op_semantics_95;
12733
                  break;
12734
              }
12735
            break;
12736
          case 0x0c:
12737
              GETBYTE ();
12738
              switch (op[2] & 0x00)
12739
              {
12740
                case 0x00:
12741
                  goto op_semantics_95;
12742
                  break;
12743
              }
12744
            break;
12745
          case 0x0d:
12746
              GETBYTE ();
12747
              switch (op[2] & 0x00)
12748
              {
12749
                case 0x00:
12750
                  goto op_semantics_95;
12751
                  break;
12752
              }
12753
            break;
12754
          case 0x0e:
12755
              GETBYTE ();
12756
              switch (op[2] & 0x00)
12757
              {
12758
                case 0x00:
12759
                  goto op_semantics_95;
12760
                  break;
12761
              }
12762
            break;
12763
          case 0x0f:
12764
              GETBYTE ();
12765
              switch (op[2] & 0x00)
12766
              {
12767
                case 0x00:
12768
                  goto op_semantics_95;
12769
                  break;
12770
              }
12771
            break;
12772
          case 0x10:
12773
              GETBYTE ();
12774
              switch (op[2] & 0x00)
12775
              {
12776
                case 0x00:
12777
                  goto op_semantics_95;
12778
                  break;
12779
              }
12780
            break;
12781
          case 0x11:
12782
              GETBYTE ();
12783
              switch (op[2] & 0x00)
12784
              {
12785
                case 0x00:
12786
                  goto op_semantics_95;
12787
                  break;
12788
              }
12789
            break;
12790
          case 0x12:
12791
              GETBYTE ();
12792
              switch (op[2] & 0x00)
12793
              {
12794
                case 0x00:
12795
                  goto op_semantics_95;
12796
                  break;
12797
              }
12798
            break;
12799
          case 0x13:
12800
              GETBYTE ();
12801
              switch (op[2] & 0x00)
12802
              {
12803
                case 0x00:
12804
                  goto op_semantics_95;
12805
                  break;
12806
              }
12807
            break;
12808
          case 0x14:
12809
              GETBYTE ();
12810
              switch (op[2] & 0x00)
12811
              {
12812
                case 0x00:
12813
                  goto op_semantics_95;
12814
                  break;
12815
              }
12816
            break;
12817
          case 0x15:
12818
              GETBYTE ();
12819
              switch (op[2] & 0x00)
12820
              {
12821
                case 0x00:
12822
                  goto op_semantics_95;
12823
                  break;
12824
              }
12825
            break;
12826
          case 0x16:
12827
              GETBYTE ();
12828
              switch (op[2] & 0x00)
12829
              {
12830
                case 0x00:
12831
                  goto op_semantics_95;
12832
                  break;
12833
              }
12834
            break;
12835
          case 0x17:
12836
              GETBYTE ();
12837
              switch (op[2] & 0x00)
12838
              {
12839
                case 0x00:
12840
                  goto op_semantics_95;
12841
                  break;
12842
              }
12843
            break;
12844
          case 0x18:
12845
              GETBYTE ();
12846
              switch (op[2] & 0x00)
12847
              {
12848
                case 0x00:
12849
                  goto op_semantics_95;
12850
                  break;
12851
              }
12852
            break;
12853
          case 0x19:
12854
              GETBYTE ();
12855
              switch (op[2] & 0x00)
12856
              {
12857
                case 0x00:
12858
                  goto op_semantics_95;
12859
                  break;
12860
              }
12861
            break;
12862
          case 0x1a:
12863
              GETBYTE ();
12864
              switch (op[2] & 0x00)
12865
              {
12866
                case 0x00:
12867
                  goto op_semantics_95;
12868
                  break;
12869
              }
12870
            break;
12871
          case 0x1b:
12872
              GETBYTE ();
12873
              switch (op[2] & 0x00)
12874
              {
12875
                case 0x00:
12876
                  goto op_semantics_95;
12877
                  break;
12878
              }
12879
            break;
12880
          case 0x1c:
12881
              GETBYTE ();
12882
              switch (op[2] & 0x00)
12883
              {
12884
                case 0x00:
12885
                  goto op_semantics_95;
12886
                  break;
12887
              }
12888
            break;
12889
          case 0x1d:
12890
              GETBYTE ();
12891
              switch (op[2] & 0x00)
12892
              {
12893
                case 0x00:
12894
                  goto op_semantics_95;
12895
                  break;
12896
              }
12897
            break;
12898
          case 0x1e:
12899
              GETBYTE ();
12900
              switch (op[2] & 0x00)
12901
              {
12902
                case 0x00:
12903
                  goto op_semantics_95;
12904
                  break;
12905
              }
12906
            break;
12907
          case 0x1f:
12908
              GETBYTE ();
12909
              switch (op[2] & 0x00)
12910
              {
12911
                case 0x00:
12912
                  goto op_semantics_95;
12913
                  break;
12914
              }
12915
            break;
12916
          case 0x20:
12917
              GETBYTE ();
12918
              switch (op[2] & 0x00)
12919
              {
12920
                case 0x00:
12921
                  goto op_semantics_95;
12922
                  break;
12923
              }
12924
            break;
12925
          case 0x21:
12926
              GETBYTE ();
12927
              switch (op[2] & 0x00)
12928
              {
12929
                case 0x00:
12930
                  goto op_semantics_95;
12931
                  break;
12932
              }
12933
            break;
12934
          case 0x22:
12935
              GETBYTE ();
12936
              switch (op[2] & 0x00)
12937
              {
12938
                case 0x00:
12939
                  goto op_semantics_95;
12940
                  break;
12941
              }
12942
            break;
12943
          case 0x23:
12944
              GETBYTE ();
12945
              switch (op[2] & 0x00)
12946
              {
12947
                case 0x00:
12948
                  goto op_semantics_95;
12949
                  break;
12950
              }
12951
            break;
12952
          case 0x24:
12953
              GETBYTE ();
12954
              switch (op[2] & 0x00)
12955
              {
12956
                case 0x00:
12957
                  goto op_semantics_95;
12958
                  break;
12959
              }
12960
            break;
12961
          case 0x25:
12962
              GETBYTE ();
12963
              switch (op[2] & 0x00)
12964
              {
12965
                case 0x00:
12966
                  goto op_semantics_95;
12967
                  break;
12968
              }
12969
            break;
12970
          case 0x26:
12971
              GETBYTE ();
12972
              switch (op[2] & 0x00)
12973
              {
12974
                case 0x00:
12975
                  goto op_semantics_95;
12976
                  break;
12977
              }
12978
            break;
12979
          case 0x27:
12980
              GETBYTE ();
12981
              switch (op[2] & 0x00)
12982
              {
12983
                case 0x00:
12984
                  goto op_semantics_95;
12985
                  break;
12986
              }
12987
            break;
12988
          case 0x28:
12989
              GETBYTE ();
12990
              switch (op[2] & 0x00)
12991
              {
12992
                case 0x00:
12993
                  goto op_semantics_95;
12994
                  break;
12995
              }
12996
            break;
12997
          case 0x29:
12998
              GETBYTE ();
12999
              switch (op[2] & 0x00)
13000
              {
13001
                case 0x00:
13002
                  goto op_semantics_95;
13003
                  break;
13004
              }
13005
            break;
13006
          case 0x2a:
13007
              GETBYTE ();
13008
              switch (op[2] & 0x00)
13009
              {
13010
                case 0x00:
13011
                  goto op_semantics_95;
13012
                  break;
13013
              }
13014
            break;
13015
          case 0x2b:
13016
              GETBYTE ();
13017
              switch (op[2] & 0x00)
13018
              {
13019
                case 0x00:
13020
                  goto op_semantics_95;
13021
                  break;
13022
              }
13023
            break;
13024
          case 0x2c:
13025
              GETBYTE ();
13026
              switch (op[2] & 0x00)
13027
              {
13028
                case 0x00:
13029
                  goto op_semantics_95;
13030
                  break;
13031
              }
13032
            break;
13033
          case 0x2d:
13034
              GETBYTE ();
13035
              switch (op[2] & 0x00)
13036
              {
13037
                case 0x00:
13038
                  goto op_semantics_95;
13039
                  break;
13040
              }
13041
            break;
13042
          case 0x2e:
13043
              GETBYTE ();
13044
              switch (op[2] & 0x00)
13045
              {
13046
                case 0x00:
13047
                  goto op_semantics_95;
13048
                  break;
13049
              }
13050
            break;
13051
          case 0x2f:
13052
              GETBYTE ();
13053
              switch (op[2] & 0x00)
13054
              {
13055
                case 0x00:
13056
                  goto op_semantics_95;
13057
                  break;
13058
              }
13059
            break;
13060
          case 0x40:
13061
              GETBYTE ();
13062
              switch (op[2] & 0x00)
13063
              {
13064
                case 0x00:
13065
                  op_semantics_96:
13066
                    {
13067
                      /** 1111 1110 01sz isrc bsrc rdst mov%s   [%1, %2], %0 */
13068
#line 299 "rx-decode.opc"
13069
                      int sz AU = (op[1] >> 4) & 0x03;
13070
#line 299 "rx-decode.opc"
13071
                      int isrc AU = op[1] & 0x0f;
13072
#line 299 "rx-decode.opc"
13073
                      int bsrc AU = (op[2] >> 4) & 0x0f;
13074
#line 299 "rx-decode.opc"
13075
                      int rdst AU = op[2] & 0x0f;
13076
                      if (trace)
13077
                        {
13078
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
13079
                                 "/** 1111 1110 01sz isrc bsrc rdst     mov%s   [%1, %2], %0 */",
13080
                                 op[0], op[1], op[2]);
13081
                          printf ("  sz = 0x%x,", sz);
13082
                          printf ("  isrc = 0x%x,", isrc);
13083
                          printf ("  bsrc = 0x%x,", bsrc);
13084
                          printf ("  rdst = 0x%x\n", rdst);
13085
                        }
13086
                      SYNTAX("mov%s     [%1, %2], %0");
13087
#line 299 "rx-decode.opc"
13088
                      ID(movbi); sBWL(sz); DR(rdst); SRR(isrc); S2R(bsrc); F_____;
13089
 
13090
                    }
13091
                  break;
13092
              }
13093
            break;
13094
          case 0x41:
13095
              GETBYTE ();
13096
              switch (op[2] & 0x00)
13097
              {
13098
                case 0x00:
13099
                  goto op_semantics_96;
13100
                  break;
13101
              }
13102
            break;
13103
          case 0x42:
13104
              GETBYTE ();
13105
              switch (op[2] & 0x00)
13106
              {
13107
                case 0x00:
13108
                  goto op_semantics_96;
13109
                  break;
13110
              }
13111
            break;
13112
          case 0x43:
13113
              GETBYTE ();
13114
              switch (op[2] & 0x00)
13115
              {
13116
                case 0x00:
13117
                  goto op_semantics_96;
13118
                  break;
13119
              }
13120
            break;
13121
          case 0x44:
13122
              GETBYTE ();
13123
              switch (op[2] & 0x00)
13124
              {
13125
                case 0x00:
13126
                  goto op_semantics_96;
13127
                  break;
13128
              }
13129
            break;
13130
          case 0x45:
13131
              GETBYTE ();
13132
              switch (op[2] & 0x00)
13133
              {
13134
                case 0x00:
13135
                  goto op_semantics_96;
13136
                  break;
13137
              }
13138
            break;
13139
          case 0x46:
13140
              GETBYTE ();
13141
              switch (op[2] & 0x00)
13142
              {
13143
                case 0x00:
13144
                  goto op_semantics_96;
13145
                  break;
13146
              }
13147
            break;
13148
          case 0x47:
13149
              GETBYTE ();
13150
              switch (op[2] & 0x00)
13151
              {
13152
                case 0x00:
13153
                  goto op_semantics_96;
13154
                  break;
13155
              }
13156
            break;
13157
          case 0x48:
13158
              GETBYTE ();
13159
              switch (op[2] & 0x00)
13160
              {
13161
                case 0x00:
13162
                  goto op_semantics_96;
13163
                  break;
13164
              }
13165
            break;
13166
          case 0x49:
13167
              GETBYTE ();
13168
              switch (op[2] & 0x00)
13169
              {
13170
                case 0x00:
13171
                  goto op_semantics_96;
13172
                  break;
13173
              }
13174
            break;
13175
          case 0x4a:
13176
              GETBYTE ();
13177
              switch (op[2] & 0x00)
13178
              {
13179
                case 0x00:
13180
                  goto op_semantics_96;
13181
                  break;
13182
              }
13183
            break;
13184
          case 0x4b:
13185
              GETBYTE ();
13186
              switch (op[2] & 0x00)
13187
              {
13188
                case 0x00:
13189
                  goto op_semantics_96;
13190
                  break;
13191
              }
13192
            break;
13193
          case 0x4c:
13194
              GETBYTE ();
13195
              switch (op[2] & 0x00)
13196
              {
13197
                case 0x00:
13198
                  goto op_semantics_96;
13199
                  break;
13200
              }
13201
            break;
13202
          case 0x4d:
13203
              GETBYTE ();
13204
              switch (op[2] & 0x00)
13205
              {
13206
                case 0x00:
13207
                  goto op_semantics_96;
13208
                  break;
13209
              }
13210
            break;
13211
          case 0x4e:
13212
              GETBYTE ();
13213
              switch (op[2] & 0x00)
13214
              {
13215
                case 0x00:
13216
                  goto op_semantics_96;
13217
                  break;
13218
              }
13219
            break;
13220
          case 0x4f:
13221
              GETBYTE ();
13222
              switch (op[2] & 0x00)
13223
              {
13224
                case 0x00:
13225
                  goto op_semantics_96;
13226
                  break;
13227
              }
13228
            break;
13229
          case 0x50:
13230
              GETBYTE ();
13231
              switch (op[2] & 0x00)
13232
              {
13233
                case 0x00:
13234
                  goto op_semantics_96;
13235
                  break;
13236
              }
13237
            break;
13238
          case 0x51:
13239
              GETBYTE ();
13240
              switch (op[2] & 0x00)
13241
              {
13242
                case 0x00:
13243
                  goto op_semantics_96;
13244
                  break;
13245
              }
13246
            break;
13247
          case 0x52:
13248
              GETBYTE ();
13249
              switch (op[2] & 0x00)
13250
              {
13251
                case 0x00:
13252
                  goto op_semantics_96;
13253
                  break;
13254
              }
13255
            break;
13256
          case 0x53:
13257
              GETBYTE ();
13258
              switch (op[2] & 0x00)
13259
              {
13260
                case 0x00:
13261
                  goto op_semantics_96;
13262
                  break;
13263
              }
13264
            break;
13265
          case 0x54:
13266
              GETBYTE ();
13267
              switch (op[2] & 0x00)
13268
              {
13269
                case 0x00:
13270
                  goto op_semantics_96;
13271
                  break;
13272
              }
13273
            break;
13274
          case 0x55:
13275
              GETBYTE ();
13276
              switch (op[2] & 0x00)
13277
              {
13278
                case 0x00:
13279
                  goto op_semantics_96;
13280
                  break;
13281
              }
13282
            break;
13283
          case 0x56:
13284
              GETBYTE ();
13285
              switch (op[2] & 0x00)
13286
              {
13287
                case 0x00:
13288
                  goto op_semantics_96;
13289
                  break;
13290
              }
13291
            break;
13292
          case 0x57:
13293
              GETBYTE ();
13294
              switch (op[2] & 0x00)
13295
              {
13296
                case 0x00:
13297
                  goto op_semantics_96;
13298
                  break;
13299
              }
13300
            break;
13301
          case 0x58:
13302
              GETBYTE ();
13303
              switch (op[2] & 0x00)
13304
              {
13305
                case 0x00:
13306
                  goto op_semantics_96;
13307
                  break;
13308
              }
13309
            break;
13310
          case 0x59:
13311
              GETBYTE ();
13312
              switch (op[2] & 0x00)
13313
              {
13314
                case 0x00:
13315
                  goto op_semantics_96;
13316
                  break;
13317
              }
13318
            break;
13319
          case 0x5a:
13320
              GETBYTE ();
13321
              switch (op[2] & 0x00)
13322
              {
13323
                case 0x00:
13324
                  goto op_semantics_96;
13325
                  break;
13326
              }
13327
            break;
13328
          case 0x5b:
13329
              GETBYTE ();
13330
              switch (op[2] & 0x00)
13331
              {
13332
                case 0x00:
13333
                  goto op_semantics_96;
13334
                  break;
13335
              }
13336
            break;
13337
          case 0x5c:
13338
              GETBYTE ();
13339
              switch (op[2] & 0x00)
13340
              {
13341
                case 0x00:
13342
                  goto op_semantics_96;
13343
                  break;
13344
              }
13345
            break;
13346
          case 0x5d:
13347
              GETBYTE ();
13348
              switch (op[2] & 0x00)
13349
              {
13350
                case 0x00:
13351
                  goto op_semantics_96;
13352
                  break;
13353
              }
13354
            break;
13355
          case 0x5e:
13356
              GETBYTE ();
13357
              switch (op[2] & 0x00)
13358
              {
13359
                case 0x00:
13360
                  goto op_semantics_96;
13361
                  break;
13362
              }
13363
            break;
13364
          case 0x5f:
13365
              GETBYTE ();
13366
              switch (op[2] & 0x00)
13367
              {
13368
                case 0x00:
13369
                  goto op_semantics_96;
13370
                  break;
13371
              }
13372
            break;
13373
          case 0x60:
13374
              GETBYTE ();
13375
              switch (op[2] & 0x00)
13376
              {
13377
                case 0x00:
13378
                  goto op_semantics_96;
13379
                  break;
13380
              }
13381
            break;
13382
          case 0x61:
13383
              GETBYTE ();
13384
              switch (op[2] & 0x00)
13385
              {
13386
                case 0x00:
13387
                  goto op_semantics_96;
13388
                  break;
13389
              }
13390
            break;
13391
          case 0x62:
13392
              GETBYTE ();
13393
              switch (op[2] & 0x00)
13394
              {
13395
                case 0x00:
13396
                  goto op_semantics_96;
13397
                  break;
13398
              }
13399
            break;
13400
          case 0x63:
13401
              GETBYTE ();
13402
              switch (op[2] & 0x00)
13403
              {
13404
                case 0x00:
13405
                  goto op_semantics_96;
13406
                  break;
13407
              }
13408
            break;
13409
          case 0x64:
13410
              GETBYTE ();
13411
              switch (op[2] & 0x00)
13412
              {
13413
                case 0x00:
13414
                  goto op_semantics_96;
13415
                  break;
13416
              }
13417
            break;
13418
          case 0x65:
13419
              GETBYTE ();
13420
              switch (op[2] & 0x00)
13421
              {
13422
                case 0x00:
13423
                  goto op_semantics_96;
13424
                  break;
13425
              }
13426
            break;
13427
          case 0x66:
13428
              GETBYTE ();
13429
              switch (op[2] & 0x00)
13430
              {
13431
                case 0x00:
13432
                  goto op_semantics_96;
13433
                  break;
13434
              }
13435
            break;
13436
          case 0x67:
13437
              GETBYTE ();
13438
              switch (op[2] & 0x00)
13439
              {
13440
                case 0x00:
13441
                  goto op_semantics_96;
13442
                  break;
13443
              }
13444
            break;
13445
          case 0x68:
13446
              GETBYTE ();
13447
              switch (op[2] & 0x00)
13448
              {
13449
                case 0x00:
13450
                  goto op_semantics_96;
13451
                  break;
13452
              }
13453
            break;
13454
          case 0x69:
13455
              GETBYTE ();
13456
              switch (op[2] & 0x00)
13457
              {
13458
                case 0x00:
13459
                  goto op_semantics_96;
13460
                  break;
13461
              }
13462
            break;
13463
          case 0x6a:
13464
              GETBYTE ();
13465
              switch (op[2] & 0x00)
13466
              {
13467
                case 0x00:
13468
                  goto op_semantics_96;
13469
                  break;
13470
              }
13471
            break;
13472
          case 0x6b:
13473
              GETBYTE ();
13474
              switch (op[2] & 0x00)
13475
              {
13476
                case 0x00:
13477
                  goto op_semantics_96;
13478
                  break;
13479
              }
13480
            break;
13481
          case 0x6c:
13482
              GETBYTE ();
13483
              switch (op[2] & 0x00)
13484
              {
13485
                case 0x00:
13486
                  goto op_semantics_96;
13487
                  break;
13488
              }
13489
            break;
13490
          case 0x6d:
13491
              GETBYTE ();
13492
              switch (op[2] & 0x00)
13493
              {
13494
                case 0x00:
13495
                  goto op_semantics_96;
13496
                  break;
13497
              }
13498
            break;
13499
          case 0x6e:
13500
              GETBYTE ();
13501
              switch (op[2] & 0x00)
13502
              {
13503
                case 0x00:
13504
                  goto op_semantics_96;
13505
                  break;
13506
              }
13507
            break;
13508
          case 0x6f:
13509
              GETBYTE ();
13510
              switch (op[2] & 0x00)
13511
              {
13512
                case 0x00:
13513
                  goto op_semantics_96;
13514
                  break;
13515
              }
13516
            break;
13517
          case 0xc0:
13518
              GETBYTE ();
13519
              switch (op[2] & 0x00)
13520
              {
13521
                case 0x00:
13522
                  op_semantics_97:
13523
                    {
13524
                      /** 1111 1110 11sz isrc bsrc rdst movu%s  [%1, %2], %0 */
13525
#line 305 "rx-decode.opc"
13526
                      int sz AU = (op[1] >> 4) & 0x03;
13527
#line 305 "rx-decode.opc"
13528
                      int isrc AU = op[1] & 0x0f;
13529
#line 305 "rx-decode.opc"
13530
                      int bsrc AU = (op[2] >> 4) & 0x0f;
13531
#line 305 "rx-decode.opc"
13532
                      int rdst AU = op[2] & 0x0f;
13533
                      if (trace)
13534
                        {
13535
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
13536
                                 "/** 1111 1110 11sz isrc bsrc rdst     movu%s  [%1, %2], %0 */",
13537
                                 op[0], op[1], op[2]);
13538
                          printf ("  sz = 0x%x,", sz);
13539
                          printf ("  isrc = 0x%x,", isrc);
13540
                          printf ("  bsrc = 0x%x,", bsrc);
13541
                          printf ("  rdst = 0x%x\n", rdst);
13542
                        }
13543
                      SYNTAX("movu%s    [%1, %2], %0");
13544
#line 305 "rx-decode.opc"
13545
                      ID(movbi); uBWL(sz); DR(rdst); SRR(isrc); S2R(bsrc); F_____;
13546
 
13547
                    }
13548
                  break;
13549
              }
13550
            break;
13551
          case 0xc1:
13552
              GETBYTE ();
13553
              switch (op[2] & 0x00)
13554
              {
13555
                case 0x00:
13556
                  goto op_semantics_97;
13557
                  break;
13558
              }
13559
            break;
13560
          case 0xc2:
13561
              GETBYTE ();
13562
              switch (op[2] & 0x00)
13563
              {
13564
                case 0x00:
13565
                  goto op_semantics_97;
13566
                  break;
13567
              }
13568
            break;
13569
          case 0xc3:
13570
              GETBYTE ();
13571
              switch (op[2] & 0x00)
13572
              {
13573
                case 0x00:
13574
                  goto op_semantics_97;
13575
                  break;
13576
              }
13577
            break;
13578
          case 0xc4:
13579
              GETBYTE ();
13580
              switch (op[2] & 0x00)
13581
              {
13582
                case 0x00:
13583
                  goto op_semantics_97;
13584
                  break;
13585
              }
13586
            break;
13587
          case 0xc5:
13588
              GETBYTE ();
13589
              switch (op[2] & 0x00)
13590
              {
13591
                case 0x00:
13592
                  goto op_semantics_97;
13593
                  break;
13594
              }
13595
            break;
13596
          case 0xc6:
13597
              GETBYTE ();
13598
              switch (op[2] & 0x00)
13599
              {
13600
                case 0x00:
13601
                  goto op_semantics_97;
13602
                  break;
13603
              }
13604
            break;
13605
          case 0xc7:
13606
              GETBYTE ();
13607
              switch (op[2] & 0x00)
13608
              {
13609
                case 0x00:
13610
                  goto op_semantics_97;
13611
                  break;
13612
              }
13613
            break;
13614
          case 0xc8:
13615
              GETBYTE ();
13616
              switch (op[2] & 0x00)
13617
              {
13618
                case 0x00:
13619
                  goto op_semantics_97;
13620
                  break;
13621
              }
13622
            break;
13623
          case 0xc9:
13624
              GETBYTE ();
13625
              switch (op[2] & 0x00)
13626
              {
13627
                case 0x00:
13628
                  goto op_semantics_97;
13629
                  break;
13630
              }
13631
            break;
13632
          case 0xca:
13633
              GETBYTE ();
13634
              switch (op[2] & 0x00)
13635
              {
13636
                case 0x00:
13637
                  goto op_semantics_97;
13638
                  break;
13639
              }
13640
            break;
13641
          case 0xcb:
13642
              GETBYTE ();
13643
              switch (op[2] & 0x00)
13644
              {
13645
                case 0x00:
13646
                  goto op_semantics_97;
13647
                  break;
13648
              }
13649
            break;
13650
          case 0xcc:
13651
              GETBYTE ();
13652
              switch (op[2] & 0x00)
13653
              {
13654
                case 0x00:
13655
                  goto op_semantics_97;
13656
                  break;
13657
              }
13658
            break;
13659
          case 0xcd:
13660
              GETBYTE ();
13661
              switch (op[2] & 0x00)
13662
              {
13663
                case 0x00:
13664
                  goto op_semantics_97;
13665
                  break;
13666
              }
13667
            break;
13668
          case 0xce:
13669
              GETBYTE ();
13670
              switch (op[2] & 0x00)
13671
              {
13672
                case 0x00:
13673
                  goto op_semantics_97;
13674
                  break;
13675
              }
13676
            break;
13677
          case 0xcf:
13678
              GETBYTE ();
13679
              switch (op[2] & 0x00)
13680
              {
13681
                case 0x00:
13682
                  goto op_semantics_97;
13683
                  break;
13684
              }
13685
            break;
13686
          case 0xd0:
13687
              GETBYTE ();
13688
              switch (op[2] & 0x00)
13689
              {
13690
                case 0x00:
13691
                  goto op_semantics_97;
13692
                  break;
13693
              }
13694
            break;
13695
          case 0xd1:
13696
              GETBYTE ();
13697
              switch (op[2] & 0x00)
13698
              {
13699
                case 0x00:
13700
                  goto op_semantics_97;
13701
                  break;
13702
              }
13703
            break;
13704
          case 0xd2:
13705
              GETBYTE ();
13706
              switch (op[2] & 0x00)
13707
              {
13708
                case 0x00:
13709
                  goto op_semantics_97;
13710
                  break;
13711
              }
13712
            break;
13713
          case 0xd3:
13714
              GETBYTE ();
13715
              switch (op[2] & 0x00)
13716
              {
13717
                case 0x00:
13718
                  goto op_semantics_97;
13719
                  break;
13720
              }
13721
            break;
13722
          case 0xd4:
13723
              GETBYTE ();
13724
              switch (op[2] & 0x00)
13725
              {
13726
                case 0x00:
13727
                  goto op_semantics_97;
13728
                  break;
13729
              }
13730
            break;
13731
          case 0xd5:
13732
              GETBYTE ();
13733
              switch (op[2] & 0x00)
13734
              {
13735
                case 0x00:
13736
                  goto op_semantics_97;
13737
                  break;
13738
              }
13739
            break;
13740
          case 0xd6:
13741
              GETBYTE ();
13742
              switch (op[2] & 0x00)
13743
              {
13744
                case 0x00:
13745
                  goto op_semantics_97;
13746
                  break;
13747
              }
13748
            break;
13749
          case 0xd7:
13750
              GETBYTE ();
13751
              switch (op[2] & 0x00)
13752
              {
13753
                case 0x00:
13754
                  goto op_semantics_97;
13755
                  break;
13756
              }
13757
            break;
13758
          case 0xd8:
13759
              GETBYTE ();
13760
              switch (op[2] & 0x00)
13761
              {
13762
                case 0x00:
13763
                  goto op_semantics_97;
13764
                  break;
13765
              }
13766
            break;
13767
          case 0xd9:
13768
              GETBYTE ();
13769
              switch (op[2] & 0x00)
13770
              {
13771
                case 0x00:
13772
                  goto op_semantics_97;
13773
                  break;
13774
              }
13775
            break;
13776
          case 0xda:
13777
              GETBYTE ();
13778
              switch (op[2] & 0x00)
13779
              {
13780
                case 0x00:
13781
                  goto op_semantics_97;
13782
                  break;
13783
              }
13784
            break;
13785
          case 0xdb:
13786
              GETBYTE ();
13787
              switch (op[2] & 0x00)
13788
              {
13789
                case 0x00:
13790
                  goto op_semantics_97;
13791
                  break;
13792
              }
13793
            break;
13794
          case 0xdc:
13795
              GETBYTE ();
13796
              switch (op[2] & 0x00)
13797
              {
13798
                case 0x00:
13799
                  goto op_semantics_97;
13800
                  break;
13801
              }
13802
            break;
13803
          case 0xdd:
13804
              GETBYTE ();
13805
              switch (op[2] & 0x00)
13806
              {
13807
                case 0x00:
13808
                  goto op_semantics_97;
13809
                  break;
13810
              }
13811
            break;
13812
          case 0xde:
13813
              GETBYTE ();
13814
              switch (op[2] & 0x00)
13815
              {
13816
                case 0x00:
13817
                  goto op_semantics_97;
13818
                  break;
13819
              }
13820
            break;
13821
          case 0xdf:
13822
              GETBYTE ();
13823
              switch (op[2] & 0x00)
13824
              {
13825
                case 0x00:
13826
                  goto op_semantics_97;
13827
                  break;
13828
              }
13829
            break;
13830
          case 0xe0:
13831
              GETBYTE ();
13832
              switch (op[2] & 0x00)
13833
              {
13834
                case 0x00:
13835
                  goto op_semantics_97;
13836
                  break;
13837
              }
13838
            break;
13839
          case 0xe1:
13840
              GETBYTE ();
13841
              switch (op[2] & 0x00)
13842
              {
13843
                case 0x00:
13844
                  goto op_semantics_97;
13845
                  break;
13846
              }
13847
            break;
13848
          case 0xe2:
13849
              GETBYTE ();
13850
              switch (op[2] & 0x00)
13851
              {
13852
                case 0x00:
13853
                  goto op_semantics_97;
13854
                  break;
13855
              }
13856
            break;
13857
          case 0xe3:
13858
              GETBYTE ();
13859
              switch (op[2] & 0x00)
13860
              {
13861
                case 0x00:
13862
                  goto op_semantics_97;
13863
                  break;
13864
              }
13865
            break;
13866
          case 0xe4:
13867
              GETBYTE ();
13868
              switch (op[2] & 0x00)
13869
              {
13870
                case 0x00:
13871
                  goto op_semantics_97;
13872
                  break;
13873
              }
13874
            break;
13875
          case 0xe5:
13876
              GETBYTE ();
13877
              switch (op[2] & 0x00)
13878
              {
13879
                case 0x00:
13880
                  goto op_semantics_97;
13881
                  break;
13882
              }
13883
            break;
13884
          case 0xe6:
13885
              GETBYTE ();
13886
              switch (op[2] & 0x00)
13887
              {
13888
                case 0x00:
13889
                  goto op_semantics_97;
13890
                  break;
13891
              }
13892
            break;
13893
          case 0xe7:
13894
              GETBYTE ();
13895
              switch (op[2] & 0x00)
13896
              {
13897
                case 0x00:
13898
                  goto op_semantics_97;
13899
                  break;
13900
              }
13901
            break;
13902
          case 0xe8:
13903
              GETBYTE ();
13904
              switch (op[2] & 0x00)
13905
              {
13906
                case 0x00:
13907
                  goto op_semantics_97;
13908
                  break;
13909
              }
13910
            break;
13911
          case 0xe9:
13912
              GETBYTE ();
13913
              switch (op[2] & 0x00)
13914
              {
13915
                case 0x00:
13916
                  goto op_semantics_97;
13917
                  break;
13918
              }
13919
            break;
13920
          case 0xea:
13921
              GETBYTE ();
13922
              switch (op[2] & 0x00)
13923
              {
13924
                case 0x00:
13925
                  goto op_semantics_97;
13926
                  break;
13927
              }
13928
            break;
13929
          case 0xeb:
13930
              GETBYTE ();
13931
              switch (op[2] & 0x00)
13932
              {
13933
                case 0x00:
13934
                  goto op_semantics_97;
13935
                  break;
13936
              }
13937
            break;
13938
          case 0xec:
13939
              GETBYTE ();
13940
              switch (op[2] & 0x00)
13941
              {
13942
                case 0x00:
13943
                  goto op_semantics_97;
13944
                  break;
13945
              }
13946
            break;
13947
          case 0xed:
13948
              GETBYTE ();
13949
              switch (op[2] & 0x00)
13950
              {
13951
                case 0x00:
13952
                  goto op_semantics_97;
13953
                  break;
13954
              }
13955
            break;
13956
          case 0xee:
13957
              GETBYTE ();
13958
              switch (op[2] & 0x00)
13959
              {
13960
                case 0x00:
13961
                  goto op_semantics_97;
13962
                  break;
13963
              }
13964
            break;
13965
          case 0xef:
13966
              GETBYTE ();
13967
              switch (op[2] & 0x00)
13968
              {
13969
                case 0x00:
13970
                  goto op_semantics_97;
13971
                  break;
13972
              }
13973
            break;
13974
          default: UNSUPPORTED(); break;
13975
        }
13976
      break;
13977
    case 0xff:
13978
        GETBYTE ();
13979
        switch (op[1] & 0xff)
13980
        {
13981
          case 0x00:
13982
              GETBYTE ();
13983
              switch (op[2] & 0x00)
13984
              {
13985
                case 0x00:
13986
                  op_semantics_98:
13987
                    {
13988
                      /** 1111 1111 0000 rdst srca srcb sub     %2, %1, %0 */
13989
#line 509 "rx-decode.opc"
13990
                      int rdst AU = op[1] & 0x0f;
13991
#line 509 "rx-decode.opc"
13992
                      int srca AU = (op[2] >> 4) & 0x0f;
13993
#line 509 "rx-decode.opc"
13994
                      int srcb AU = op[2] & 0x0f;
13995
                      if (trace)
13996
                        {
13997
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
13998
                                 "/** 1111 1111 0000 rdst srca srcb     sub     %2, %1, %0 */",
13999
                                 op[0], op[1], op[2]);
14000
                          printf ("  rdst = 0x%x,", rdst);
14001
                          printf ("  srca = 0x%x,", srca);
14002
                          printf ("  srcb = 0x%x\n", srcb);
14003
                        }
14004
                      SYNTAX("sub       %2, %1, %0");
14005
#line 509 "rx-decode.opc"
14006
                      ID(sub); DR(rdst); SR(srcb); S2R(srca); F_OSZC;
14007
 
14008
                    /*----------------------------------------------------------------------*/
14009
                    /* SBB                                                                      */
14010
 
14011
                    }
14012
                  break;
14013
              }
14014
            break;
14015
          case 0x01:
14016
              GETBYTE ();
14017
              switch (op[2] & 0x00)
14018
              {
14019
                case 0x00:
14020
                  goto op_semantics_98;
14021
                  break;
14022
              }
14023
            break;
14024
          case 0x02:
14025
              GETBYTE ();
14026
              switch (op[2] & 0x00)
14027
              {
14028
                case 0x00:
14029
                  goto op_semantics_98;
14030
                  break;
14031
              }
14032
            break;
14033
          case 0x03:
14034
              GETBYTE ();
14035
              switch (op[2] & 0x00)
14036
              {
14037
                case 0x00:
14038
                  goto op_semantics_98;
14039
                  break;
14040
              }
14041
            break;
14042
          case 0x04:
14043
              GETBYTE ();
14044
              switch (op[2] & 0x00)
14045
              {
14046
                case 0x00:
14047
                  goto op_semantics_98;
14048
                  break;
14049
              }
14050
            break;
14051
          case 0x05:
14052
              GETBYTE ();
14053
              switch (op[2] & 0x00)
14054
              {
14055
                case 0x00:
14056
                  goto op_semantics_98;
14057
                  break;
14058
              }
14059
            break;
14060
          case 0x06:
14061
              GETBYTE ();
14062
              switch (op[2] & 0x00)
14063
              {
14064
                case 0x00:
14065
                  goto op_semantics_98;
14066
                  break;
14067
              }
14068
            break;
14069
          case 0x07:
14070
              GETBYTE ();
14071
              switch (op[2] & 0x00)
14072
              {
14073
                case 0x00:
14074
                  goto op_semantics_98;
14075
                  break;
14076
              }
14077
            break;
14078
          case 0x08:
14079
              GETBYTE ();
14080
              switch (op[2] & 0x00)
14081
              {
14082
                case 0x00:
14083
                  goto op_semantics_98;
14084
                  break;
14085
              }
14086
            break;
14087
          case 0x09:
14088
              GETBYTE ();
14089
              switch (op[2] & 0x00)
14090
              {
14091
                case 0x00:
14092
                  goto op_semantics_98;
14093
                  break;
14094
              }
14095
            break;
14096
          case 0x0a:
14097
              GETBYTE ();
14098
              switch (op[2] & 0x00)
14099
              {
14100
                case 0x00:
14101
                  goto op_semantics_98;
14102
                  break;
14103
              }
14104
            break;
14105
          case 0x0b:
14106
              GETBYTE ();
14107
              switch (op[2] & 0x00)
14108
              {
14109
                case 0x00:
14110
                  goto op_semantics_98;
14111
                  break;
14112
              }
14113
            break;
14114
          case 0x0c:
14115
              GETBYTE ();
14116
              switch (op[2] & 0x00)
14117
              {
14118
                case 0x00:
14119
                  goto op_semantics_98;
14120
                  break;
14121
              }
14122
            break;
14123
          case 0x0d:
14124
              GETBYTE ();
14125
              switch (op[2] & 0x00)
14126
              {
14127
                case 0x00:
14128
                  goto op_semantics_98;
14129
                  break;
14130
              }
14131
            break;
14132
          case 0x0e:
14133
              GETBYTE ();
14134
              switch (op[2] & 0x00)
14135
              {
14136
                case 0x00:
14137
                  goto op_semantics_98;
14138
                  break;
14139
              }
14140
            break;
14141
          case 0x0f:
14142
              GETBYTE ();
14143
              switch (op[2] & 0x00)
14144
              {
14145
                case 0x00:
14146
                  goto op_semantics_98;
14147
                  break;
14148
              }
14149
            break;
14150
          case 0x20:
14151
              GETBYTE ();
14152
              switch (op[2] & 0x00)
14153
              {
14154
                case 0x00:
14155
                  op_semantics_99:
14156
                    {
14157
                      /** 1111 1111 0010 rdst srca srcb add     %2, %1, %0 */
14158
#line 476 "rx-decode.opc"
14159
                      int rdst AU = op[1] & 0x0f;
14160
#line 476 "rx-decode.opc"
14161
                      int srca AU = (op[2] >> 4) & 0x0f;
14162
#line 476 "rx-decode.opc"
14163
                      int srcb AU = op[2] & 0x0f;
14164
                      if (trace)
14165
                        {
14166
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
14167
                                 "/** 1111 1111 0010 rdst srca srcb     add     %2, %1, %0 */",
14168
                                 op[0], op[1], op[2]);
14169
                          printf ("  rdst = 0x%x,", rdst);
14170
                          printf ("  srca = 0x%x,", srca);
14171
                          printf ("  srcb = 0x%x\n", srcb);
14172
                        }
14173
                      SYNTAX("add       %2, %1, %0");
14174
#line 476 "rx-decode.opc"
14175
                      ID(add); DR(rdst); SR(srcb); S2R(srca); F_OSZC;
14176
 
14177
                    /*----------------------------------------------------------------------*/
14178
                    /* CMP                                                                      */
14179
 
14180
                    }
14181
                  break;
14182
              }
14183
            break;
14184
          case 0x21:
14185
              GETBYTE ();
14186
              switch (op[2] & 0x00)
14187
              {
14188
                case 0x00:
14189
                  goto op_semantics_99;
14190
                  break;
14191
              }
14192
            break;
14193
          case 0x22:
14194
              GETBYTE ();
14195
              switch (op[2] & 0x00)
14196
              {
14197
                case 0x00:
14198
                  goto op_semantics_99;
14199
                  break;
14200
              }
14201
            break;
14202
          case 0x23:
14203
              GETBYTE ();
14204
              switch (op[2] & 0x00)
14205
              {
14206
                case 0x00:
14207
                  goto op_semantics_99;
14208
                  break;
14209
              }
14210
            break;
14211
          case 0x24:
14212
              GETBYTE ();
14213
              switch (op[2] & 0x00)
14214
              {
14215
                case 0x00:
14216
                  goto op_semantics_99;
14217
                  break;
14218
              }
14219
            break;
14220
          case 0x25:
14221
              GETBYTE ();
14222
              switch (op[2] & 0x00)
14223
              {
14224
                case 0x00:
14225
                  goto op_semantics_99;
14226
                  break;
14227
              }
14228
            break;
14229
          case 0x26:
14230
              GETBYTE ();
14231
              switch (op[2] & 0x00)
14232
              {
14233
                case 0x00:
14234
                  goto op_semantics_99;
14235
                  break;
14236
              }
14237
            break;
14238
          case 0x27:
14239
              GETBYTE ();
14240
              switch (op[2] & 0x00)
14241
              {
14242
                case 0x00:
14243
                  goto op_semantics_99;
14244
                  break;
14245
              }
14246
            break;
14247
          case 0x28:
14248
              GETBYTE ();
14249
              switch (op[2] & 0x00)
14250
              {
14251
                case 0x00:
14252
                  goto op_semantics_99;
14253
                  break;
14254
              }
14255
            break;
14256
          case 0x29:
14257
              GETBYTE ();
14258
              switch (op[2] & 0x00)
14259
              {
14260
                case 0x00:
14261
                  goto op_semantics_99;
14262
                  break;
14263
              }
14264
            break;
14265
          case 0x2a:
14266
              GETBYTE ();
14267
              switch (op[2] & 0x00)
14268
              {
14269
                case 0x00:
14270
                  goto op_semantics_99;
14271
                  break;
14272
              }
14273
            break;
14274
          case 0x2b:
14275
              GETBYTE ();
14276
              switch (op[2] & 0x00)
14277
              {
14278
                case 0x00:
14279
                  goto op_semantics_99;
14280
                  break;
14281
              }
14282
            break;
14283
          case 0x2c:
14284
              GETBYTE ();
14285
              switch (op[2] & 0x00)
14286
              {
14287
                case 0x00:
14288
                  goto op_semantics_99;
14289
                  break;
14290
              }
14291
            break;
14292
          case 0x2d:
14293
              GETBYTE ();
14294
              switch (op[2] & 0x00)
14295
              {
14296
                case 0x00:
14297
                  goto op_semantics_99;
14298
                  break;
14299
              }
14300
            break;
14301
          case 0x2e:
14302
              GETBYTE ();
14303
              switch (op[2] & 0x00)
14304
              {
14305
                case 0x00:
14306
                  goto op_semantics_99;
14307
                  break;
14308
              }
14309
            break;
14310
          case 0x2f:
14311
              GETBYTE ();
14312
              switch (op[2] & 0x00)
14313
              {
14314
                case 0x00:
14315
                  goto op_semantics_99;
14316
                  break;
14317
              }
14318
            break;
14319
          case 0x30:
14320
              GETBYTE ();
14321
              switch (op[2] & 0x00)
14322
              {
14323
                case 0x00:
14324
                  op_semantics_100:
14325
                    {
14326
                      /** 1111 1111 0011 rdst srca srcb mul     %2, %1, %0 */
14327
#line 578 "rx-decode.opc"
14328
                      int rdst AU = op[1] & 0x0f;
14329
#line 578 "rx-decode.opc"
14330
                      int srca AU = (op[2] >> 4) & 0x0f;
14331
#line 578 "rx-decode.opc"
14332
                      int srcb AU = op[2] & 0x0f;
14333
                      if (trace)
14334
                        {
14335
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
14336
                                 "/** 1111 1111 0011 rdst srca srcb     mul     %2, %1, %0 */",
14337
                                 op[0], op[1], op[2]);
14338
                          printf ("  rdst = 0x%x,", rdst);
14339
                          printf ("  srca = 0x%x,", srca);
14340
                          printf ("  srcb = 0x%x\n", srcb);
14341
                        }
14342
                      SYNTAX("mul       %2, %1, %0");
14343
#line 578 "rx-decode.opc"
14344
                      ID(mul); DR(rdst); SR(srcb); S2R(srca); F_____;
14345
 
14346
                    /*----------------------------------------------------------------------*/
14347
                    /* EMUL                                                                     */
14348
 
14349
                    }
14350
                  break;
14351
              }
14352
            break;
14353
          case 0x31:
14354
              GETBYTE ();
14355
              switch (op[2] & 0x00)
14356
              {
14357
                case 0x00:
14358
                  goto op_semantics_100;
14359
                  break;
14360
              }
14361
            break;
14362
          case 0x32:
14363
              GETBYTE ();
14364
              switch (op[2] & 0x00)
14365
              {
14366
                case 0x00:
14367
                  goto op_semantics_100;
14368
                  break;
14369
              }
14370
            break;
14371
          case 0x33:
14372
              GETBYTE ();
14373
              switch (op[2] & 0x00)
14374
              {
14375
                case 0x00:
14376
                  goto op_semantics_100;
14377
                  break;
14378
              }
14379
            break;
14380
          case 0x34:
14381
              GETBYTE ();
14382
              switch (op[2] & 0x00)
14383
              {
14384
                case 0x00:
14385
                  goto op_semantics_100;
14386
                  break;
14387
              }
14388
            break;
14389
          case 0x35:
14390
              GETBYTE ();
14391
              switch (op[2] & 0x00)
14392
              {
14393
                case 0x00:
14394
                  goto op_semantics_100;
14395
                  break;
14396
              }
14397
            break;
14398
          case 0x36:
14399
              GETBYTE ();
14400
              switch (op[2] & 0x00)
14401
              {
14402
                case 0x00:
14403
                  goto op_semantics_100;
14404
                  break;
14405
              }
14406
            break;
14407
          case 0x37:
14408
              GETBYTE ();
14409
              switch (op[2] & 0x00)
14410
              {
14411
                case 0x00:
14412
                  goto op_semantics_100;
14413
                  break;
14414
              }
14415
            break;
14416
          case 0x38:
14417
              GETBYTE ();
14418
              switch (op[2] & 0x00)
14419
              {
14420
                case 0x00:
14421
                  goto op_semantics_100;
14422
                  break;
14423
              }
14424
            break;
14425
          case 0x39:
14426
              GETBYTE ();
14427
              switch (op[2] & 0x00)
14428
              {
14429
                case 0x00:
14430
                  goto op_semantics_100;
14431
                  break;
14432
              }
14433
            break;
14434
          case 0x3a:
14435
              GETBYTE ();
14436
              switch (op[2] & 0x00)
14437
              {
14438
                case 0x00:
14439
                  goto op_semantics_100;
14440
                  break;
14441
              }
14442
            break;
14443
          case 0x3b:
14444
              GETBYTE ();
14445
              switch (op[2] & 0x00)
14446
              {
14447
                case 0x00:
14448
                  goto op_semantics_100;
14449
                  break;
14450
              }
14451
            break;
14452
          case 0x3c:
14453
              GETBYTE ();
14454
              switch (op[2] & 0x00)
14455
              {
14456
                case 0x00:
14457
                  goto op_semantics_100;
14458
                  break;
14459
              }
14460
            break;
14461
          case 0x3d:
14462
              GETBYTE ();
14463
              switch (op[2] & 0x00)
14464
              {
14465
                case 0x00:
14466
                  goto op_semantics_100;
14467
                  break;
14468
              }
14469
            break;
14470
          case 0x3e:
14471
              GETBYTE ();
14472
              switch (op[2] & 0x00)
14473
              {
14474
                case 0x00:
14475
                  goto op_semantics_100;
14476
                  break;
14477
              }
14478
            break;
14479
          case 0x3f:
14480
              GETBYTE ();
14481
              switch (op[2] & 0x00)
14482
              {
14483
                case 0x00:
14484
                  goto op_semantics_100;
14485
                  break;
14486
              }
14487
            break;
14488
          case 0x40:
14489
              GETBYTE ();
14490
              switch (op[2] & 0x00)
14491
              {
14492
                case 0x00:
14493
                  op_semantics_101:
14494
                    {
14495
                      /** 1111 1111 0100 rdst srca srcb and     %2, %1, %0 */
14496
#line 386 "rx-decode.opc"
14497
                      int rdst AU = op[1] & 0x0f;
14498
#line 386 "rx-decode.opc"
14499
                      int srca AU = (op[2] >> 4) & 0x0f;
14500
#line 386 "rx-decode.opc"
14501
                      int srcb AU = op[2] & 0x0f;
14502
                      if (trace)
14503
                        {
14504
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
14505
                                 "/** 1111 1111 0100 rdst srca srcb     and     %2, %1, %0 */",
14506
                                 op[0], op[1], op[2]);
14507
                          printf ("  rdst = 0x%x,", rdst);
14508
                          printf ("  srca = 0x%x,", srca);
14509
                          printf ("  srcb = 0x%x\n", srcb);
14510
                        }
14511
                      SYNTAX("and       %2, %1, %0");
14512
#line 386 "rx-decode.opc"
14513
                      ID(and); DR(rdst); SR(srcb); S2R(srca); F__SZ_;
14514
 
14515
                    /*----------------------------------------------------------------------*/
14516
                    /* OR                                                                       */
14517
 
14518
                    }
14519
                  break;
14520
              }
14521
            break;
14522
          case 0x41:
14523
              GETBYTE ();
14524
              switch (op[2] & 0x00)
14525
              {
14526
                case 0x00:
14527
                  goto op_semantics_101;
14528
                  break;
14529
              }
14530
            break;
14531
          case 0x42:
14532
              GETBYTE ();
14533
              switch (op[2] & 0x00)
14534
              {
14535
                case 0x00:
14536
                  goto op_semantics_101;
14537
                  break;
14538
              }
14539
            break;
14540
          case 0x43:
14541
              GETBYTE ();
14542
              switch (op[2] & 0x00)
14543
              {
14544
                case 0x00:
14545
                  goto op_semantics_101;
14546
                  break;
14547
              }
14548
            break;
14549
          case 0x44:
14550
              GETBYTE ();
14551
              switch (op[2] & 0x00)
14552
              {
14553
                case 0x00:
14554
                  goto op_semantics_101;
14555
                  break;
14556
              }
14557
            break;
14558
          case 0x45:
14559
              GETBYTE ();
14560
              switch (op[2] & 0x00)
14561
              {
14562
                case 0x00:
14563
                  goto op_semantics_101;
14564
                  break;
14565
              }
14566
            break;
14567
          case 0x46:
14568
              GETBYTE ();
14569
              switch (op[2] & 0x00)
14570
              {
14571
                case 0x00:
14572
                  goto op_semantics_101;
14573
                  break;
14574
              }
14575
            break;
14576
          case 0x47:
14577
              GETBYTE ();
14578
              switch (op[2] & 0x00)
14579
              {
14580
                case 0x00:
14581
                  goto op_semantics_101;
14582
                  break;
14583
              }
14584
            break;
14585
          case 0x48:
14586
              GETBYTE ();
14587
              switch (op[2] & 0x00)
14588
              {
14589
                case 0x00:
14590
                  goto op_semantics_101;
14591
                  break;
14592
              }
14593
            break;
14594
          case 0x49:
14595
              GETBYTE ();
14596
              switch (op[2] & 0x00)
14597
              {
14598
                case 0x00:
14599
                  goto op_semantics_101;
14600
                  break;
14601
              }
14602
            break;
14603
          case 0x4a:
14604
              GETBYTE ();
14605
              switch (op[2] & 0x00)
14606
              {
14607
                case 0x00:
14608
                  goto op_semantics_101;
14609
                  break;
14610
              }
14611
            break;
14612
          case 0x4b:
14613
              GETBYTE ();
14614
              switch (op[2] & 0x00)
14615
              {
14616
                case 0x00:
14617
                  goto op_semantics_101;
14618
                  break;
14619
              }
14620
            break;
14621
          case 0x4c:
14622
              GETBYTE ();
14623
              switch (op[2] & 0x00)
14624
              {
14625
                case 0x00:
14626
                  goto op_semantics_101;
14627
                  break;
14628
              }
14629
            break;
14630
          case 0x4d:
14631
              GETBYTE ();
14632
              switch (op[2] & 0x00)
14633
              {
14634
                case 0x00:
14635
                  goto op_semantics_101;
14636
                  break;
14637
              }
14638
            break;
14639
          case 0x4e:
14640
              GETBYTE ();
14641
              switch (op[2] & 0x00)
14642
              {
14643
                case 0x00:
14644
                  goto op_semantics_101;
14645
                  break;
14646
              }
14647
            break;
14648
          case 0x4f:
14649
              GETBYTE ();
14650
              switch (op[2] & 0x00)
14651
              {
14652
                case 0x00:
14653
                  goto op_semantics_101;
14654
                  break;
14655
              }
14656
            break;
14657
          case 0x50:
14658
              GETBYTE ();
14659
              switch (op[2] & 0x00)
14660
              {
14661
                case 0x00:
14662
                  op_semantics_102:
14663
                    {
14664
                      /** 1111 1111 0101 rdst srca srcb or      %2, %1, %0 */
14665
#line 404 "rx-decode.opc"
14666
                      int rdst AU = op[1] & 0x0f;
14667
#line 404 "rx-decode.opc"
14668
                      int srca AU = (op[2] >> 4) & 0x0f;
14669
#line 404 "rx-decode.opc"
14670
                      int srcb AU = op[2] & 0x0f;
14671
                      if (trace)
14672
                        {
14673
                          printf ("\033[33m%s\033[0m  %02x %02x %02x\n",
14674
                                 "/** 1111 1111 0101 rdst srca srcb     or      %2, %1, %0 */",
14675
                                 op[0], op[1], op[2]);
14676
                          printf ("  rdst = 0x%x,", rdst);
14677
                          printf ("  srca = 0x%x,", srca);
14678
                          printf ("  srcb = 0x%x\n", srcb);
14679
                        }
14680
                      SYNTAX("or        %2, %1, %0");
14681
#line 404 "rx-decode.opc"
14682
                      ID(or); DR(rdst); SR(srcb); S2R(srca); F__SZ_;
14683
 
14684
                    /*----------------------------------------------------------------------*/
14685
                    /* XOR                                                                      */
14686
 
14687
                    }
14688
                  break;
14689
              }
14690
            break;
14691
          case 0x51:
14692
              GETBYTE ();
14693
              switch (op[2] & 0x00)
14694
              {
14695
                case 0x00:
14696
                  goto op_semantics_102;
14697
                  break;
14698
              }
14699
            break;
14700
          case 0x52:
14701
              GETBYTE ();
14702
              switch (op[2] & 0x00)
14703
              {
14704
                case 0x00:
14705
                  goto op_semantics_102;
14706
                  break;
14707
              }
14708
            break;
14709
          case 0x53:
14710
              GETBYTE ();
14711
              switch (op[2] & 0x00)
14712
              {
14713
                case 0x00:
14714
                  goto op_semantics_102;
14715
                  break;
14716
              }
14717
            break;
14718
          case 0x54:
14719
              GETBYTE ();
14720
              switch (op[2] & 0x00)
14721
              {
14722
                case 0x00:
14723
                  goto op_semantics_102;
14724
                  break;
14725
              }
14726
            break;
14727
          case 0x55:
14728
              GETBYTE ();
14729
              switch (op[2] & 0x00)
14730
              {
14731
                case 0x00:
14732
                  goto op_semantics_102;
14733
                  break;
14734
              }
14735
            break;
14736
          case 0x56:
14737
              GETBYTE ();
14738
              switch (op[2] & 0x00)
14739
              {
14740
                case 0x00:
14741
                  goto op_semantics_102;
14742
                  break;
14743
              }
14744
            break;
14745
          case 0x57:
14746
              GETBYTE ();
14747
              switch (op[2] & 0x00)
14748
              {
14749
                case 0x00:
14750
                  goto op_semantics_102;
14751
                  break;
14752
              }
14753
            break;
14754
          case 0x58:
14755
              GETBYTE ();
14756
              switch (op[2] & 0x00)
14757
              {
14758
                case 0x00:
14759
                  goto op_semantics_102;
14760
                  break;
14761
              }
14762
            break;
14763
          case 0x59:
14764
              GETBYTE ();
14765
              switch (op[2] & 0x00)
14766
              {
14767
                case 0x00:
14768
                  goto op_semantics_102;
14769
                  break;
14770
              }
14771
            break;
14772
          case 0x5a:
14773
              GETBYTE ();
14774
              switch (op[2] & 0x00)
14775
              {
14776
                case 0x00:
14777
                  goto op_semantics_102;
14778
                  break;
14779
              }
14780
            break;
14781
          case 0x5b:
14782
              GETBYTE ();
14783
              switch (op[2] & 0x00)
14784
              {
14785
                case 0x00:
14786
                  goto op_semantics_102;
14787
                  break;
14788
              }
14789
            break;
14790
          case 0x5c:
14791
              GETBYTE ();
14792
              switch (op[2] & 0x00)
14793
              {
14794
                case 0x00:
14795
                  goto op_semantics_102;
14796
                  break;
14797
              }
14798
            break;
14799
          case 0x5d:
14800
              GETBYTE ();
14801
              switch (op[2] & 0x00)
14802
              {
14803
                case 0x00:
14804
                  goto op_semantics_102;
14805
                  break;
14806
              }
14807
            break;
14808
          case 0x5e:
14809
              GETBYTE ();
14810
              switch (op[2] & 0x00)
14811
              {
14812
                case 0x00:
14813
                  goto op_semantics_102;
14814
                  break;
14815
              }
14816
            break;
14817
          case 0x5f:
14818
              GETBYTE ();
14819
              switch (op[2] & 0x00)
14820
              {
14821
                case 0x00:
14822
                  goto op_semantics_102;
14823
                  break;
14824
              }
14825
            break;
14826
          default: UNSUPPORTED(); break;
14827
        }
14828
      break;
14829
    default: UNSUPPORTED(); break;
14830
  }
14831
#line 961 "rx-decode.opc"
14832
 
14833
  return rx->n_bytes;
14834
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.