Previous 199869 Revisions Next

r33753 Monday 8th December, 2014 at 23:38:13 UTC by David Haywood
4003b9ba has a jump to the cartridge area (nw)
[src/emu/cpu/arcompact]arcompactdasm.c

trunk/src/emu/cpu/arcompact/arcompactdasm.c
r242264r242265
3030
3131#define LIMM_REG 62
3232
33#define GET_LIMM_32 \
34   limm = oprom[6] | (oprom[7] << 8); \
35   limm |= (oprom[4] << 16) | (oprom[5] << 24); \
36
3337int arcompact_handle04_00_dasm(DASM_OPS_32);
3438int arcompact_handle04_01_dasm(DASM_OPS_32);
3539int arcompact_handle04_02_dasm(DASM_OPS_32);
r242264r242265
225229int arcompact_handle04_2f_3f_3e_dasm(DASM_OPS_32);
226230int arcompact_handle04_2f_3f_3f_dasm(DASM_OPS_32);
227231
232int arcompact_handle05_00_dasm(DASM_OPS_32);
233int arcompact_handle05_01_dasm(DASM_OPS_32);
234int arcompact_handle05_02_dasm(DASM_OPS_32);
235int arcompact_handle05_03_dasm(DASM_OPS_32);
236int arcompact_handle05_04_dasm(DASM_OPS_32);
237int arcompact_handle05_05_dasm(DASM_OPS_32);
238int arcompact_handle05_06_dasm(DASM_OPS_32);
239int arcompact_handle05_07_dasm(DASM_OPS_32);
240int arcompact_handle05_08_dasm(DASM_OPS_32);
241int arcompact_handle05_09_dasm(DASM_OPS_32);
242int arcompact_handle05_0a_dasm(DASM_OPS_32);
243int arcompact_handle05_0b_dasm(DASM_OPS_32);
244int arcompact_handle05_0c_dasm(DASM_OPS_32);
245int arcompact_handle05_0d_dasm(DASM_OPS_32);
246int arcompact_handle05_0e_dasm(DASM_OPS_32);
247int arcompact_handle05_0f_dasm(DASM_OPS_32);
248int arcompact_handle05_10_dasm(DASM_OPS_32);
249int arcompact_handle05_11_dasm(DASM_OPS_32);
250int arcompact_handle05_12_dasm(DASM_OPS_32);
251int arcompact_handle05_13_dasm(DASM_OPS_32);
252int arcompact_handle05_14_dasm(DASM_OPS_32);
253int arcompact_handle05_15_dasm(DASM_OPS_32);
254int arcompact_handle05_16_dasm(DASM_OPS_32);
255int arcompact_handle05_17_dasm(DASM_OPS_32);
256int arcompact_handle05_18_dasm(DASM_OPS_32);
257int arcompact_handle05_19_dasm(DASM_OPS_32);
258int arcompact_handle05_1a_dasm(DASM_OPS_32);
259int arcompact_handle05_1b_dasm(DASM_OPS_32);
260int arcompact_handle05_1c_dasm(DASM_OPS_32);
261int arcompact_handle05_1d_dasm(DASM_OPS_32);
262int arcompact_handle05_1e_dasm(DASM_OPS_32);
263int arcompact_handle05_1f_dasm(DASM_OPS_32);
264int arcompact_handle05_20_dasm(DASM_OPS_32);
265int arcompact_handle05_21_dasm(DASM_OPS_32);
266int arcompact_handle05_22_dasm(DASM_OPS_32);
267int arcompact_handle05_23_dasm(DASM_OPS_32);
268int arcompact_handle05_24_dasm(DASM_OPS_32);
269int arcompact_handle05_25_dasm(DASM_OPS_32);
270int arcompact_handle05_26_dasm(DASM_OPS_32);
271int arcompact_handle05_27_dasm(DASM_OPS_32);
272int arcompact_handle05_28_dasm(DASM_OPS_32);
273int arcompact_handle05_29_dasm(DASM_OPS_32);
274int arcompact_handle05_2a_dasm(DASM_OPS_32);
275int arcompact_handle05_2b_dasm(DASM_OPS_32);
276int arcompact_handle05_2c_dasm(DASM_OPS_32);
277int arcompact_handle05_2d_dasm(DASM_OPS_32);
278int arcompact_handle05_2e_dasm(DASM_OPS_32);
279int arcompact_handle05_2f_dasm(DASM_OPS_32);
280int arcompact_handle05_30_dasm(DASM_OPS_32);
281int arcompact_handle05_31_dasm(DASM_OPS_32);
282int arcompact_handle05_32_dasm(DASM_OPS_32);
283int arcompact_handle05_33_dasm(DASM_OPS_32);
284int arcompact_handle05_34_dasm(DASM_OPS_32);
285int arcompact_handle05_35_dasm(DASM_OPS_32);
286int arcompact_handle05_36_dasm(DASM_OPS_32);
287int arcompact_handle05_37_dasm(DASM_OPS_32);
288int arcompact_handle05_38_dasm(DASM_OPS_32);
289int arcompact_handle05_39_dasm(DASM_OPS_32);
290int arcompact_handle05_3a_dasm(DASM_OPS_32);
291int arcompact_handle05_3b_dasm(DASM_OPS_32);
292int arcompact_handle05_3c_dasm(DASM_OPS_32);
293int arcompact_handle05_3d_dasm(DASM_OPS_32);
294int arcompact_handle05_3e_dasm(DASM_OPS_32);
295int arcompact_handle05_3f_dasm(DASM_OPS_32);
296
297
298
299
228300int arcompact_handle0e_00_dasm(DASM_OPS_16);
229301int arcompact_handle0e_01_dasm(DASM_OPS_16);
230302int arcompact_handle0e_02_dasm(DASM_OPS_16);
r242264r242265
405477   /* 17 */ "0x17 <illegal>",
406478   /* 18 */ "ASL_S (multiple)",
407479   /* 19 */ "LSR_S (multiple)",
408   /* 1a */ "ASR_S (multiple)",
409   /* 1b */ "ASL_S (single)",
410   /* 1c */ "LSR_S (single)",
411   /* 1d */ "ASR_S (single)",
412   /* 1e */ "TRAP (not a5?)",
413   /* 1f */ "BRK_S" // 0x7fff only?
480/* 1a */ "ASR_S (multiple)",
481/* 1b */ "ASL_S (single)",
482/* 1c */ "LSR_S (single)",
483/* 1d */ "ASR_S (single)",
484/* 1e */ "TRAP (not a5?)",
485/* 1f */ "BRK_S" // 0x7fff only?
414486};
415487
416488static const char *table0f_00[0x8] =
r242264r242265
445517   if (op & 0x00010000)
446518   { // Branch Unconditionally Far
447519      // 00000 ssssssssss 1  SSSSSSSSSS N R TTTT
448      INT32 address =   (op & 0x07fe0000) >> 17;
449      address |=        ((op & 0x0000ffc0) >> 6) << 10;
450      address |=        ((op & 0x0000000f) >> 0) << 20;
451      if (address & 0x800000) address = -(address&0x7fffff);   
520      INT32 address = (op & 0x07fe0000) >> 17;
521      address |= ((op & 0x0000ffc0) >> 6) << 10;
522      address |= ((op & 0x0000000f) >> 0) << 20;
523      if (address & 0x800000) address = -(address & 0x7fffff);
452524
453      print("B %08x (%08x)", pc + (address *2) + 2, op & ~0xffffffcf );
525      print("B %08x (%08x)", pc + (address * 2) + 2, op & ~0xffffffcf);
454526   }
455527   else
456528   { // Branch Conditionally
457529      // 00000 ssssssssss 0 SSSSSSSSSS N QQQQQ
458      INT32 address =   (op & 0x07fe0000) >> 17;
459      address |=        ((op & 0x0000ffc0) >> 6) << 10;
460      if (address & 0x800000) address = -(address&0x7fffff);   
530      INT32 address = (op & 0x07fe0000) >> 17;
531      address |= ((op & 0x0000ffc0) >> 6) << 10;
532      if (address & 0x800000) address = -(address & 0x7fffff);
461533
462534      UINT8 condition = op & 0x0000001f;
463535
464      print("B(%s) %08x (%08x)", conditions[condition], pc + (address *2) + 2, op & ~0xffffffdf );
536      print("B(%s) %08x (%08x)", conditions[condition], pc + (address * 2) + 2, op & ~0xffffffdf);
465537   }
466538   return 4;
467539}
468540
469541int arcompact_handle01_dasm(DASM_OPS_32)
470542{
543   int size = 4;
544
471545   if (op & 0x00010000)
472546   {
473547      if (op & 0x00000010)
474548      { // Branch on Compare / Bit Test - Register-Immediate
475549         // 00001 bbb sssssss 1 S BBB UUUUUU N 1 iiii
476550         UINT8 subinstr = op & 0x0000000f;
477         INT32 address =    (op & 0x00fe0000) >> 17;
478         address |=        ((op & 0x00008000) >> 15) << 7;
479         if (address & 0x80) address = -(address&0x7f);   
551         INT32 address = (op & 0x00fe0000) >> 17;
552         address |= ((op & 0x00008000) >> 15) << 7;
553         if (address & 0x80) address = -(address & 0x7f);
480554
481                 
482         print("%s (reg-imm) %08x (%08x)", table01_01_0x[subinstr], pc + (address *2) + 4, op & ~0xf8fe800f);
483555
556         print("%s (reg-imm) %08x (%08x)", table01_01_0x[subinstr], pc + (address * 2) + 4, op & ~0xf8fe800f);
484557
558
485559      }
486560      else
487561      {
488562         // Branch on Compare / Bit Test - Register-Register
489563         // 00001 bbb sssssss 1 S BBB CCCCCC N 0 iiii
490564         UINT8 subinstr = op & 0x0000000f;
491         INT32 address =    (op & 0x00fe0000) >> 17;
492         address |=        ((op & 0x00008000) >> 15) << 7;
493         if (address & 0x80) address = -(address&0x7f);   
565         INT32 address = (op & 0x00fe0000) >> 17;
566         address |= ((op & 0x00008000) >> 15) << 7;
567         if (address & 0x80) address = -(address & 0x7f);
494568
495         print("%s (reg-reg) %08x (%08x)", table01_01_0x[subinstr], pc + (address *2) + 4, op & ~0xf8fe800f);
569         int c = (op & 0x00000fc0)>> 6;
570         int b = (op & 0x07000000) >> 24;
571         b |=   ((op & 0x00007000) >> 12) << 3;
496572
573         op &= ~0x07007fe0;
574
575         if ((b != LIMM_REG) && (c != LIMM_REG))
576         {
577            print("%s (reg-reg) (r%d) (r%d) %08x (%08x)", table01_01_0x[subinstr], b, c, pc + (address * 2) + 4, op & ~0xf8fe800f);
578         }
579         else
580         {
581            UINT32 limm;
582            GET_LIMM_32;
583            size = 8;
584
585            if ((b == LIMM_REG) && (c != LIMM_REG))
586            {
587               print("%s (reg-reg) (%08x) (r%d) %08x (%08x)", table01_01_0x[subinstr], limm, c, pc + (address * 2) + 4, op & ~0xf8fe800f);
588            }
589            else if ((c == LIMM_REG) && (b != LIMM_REG))
590            {
591               print("%s (reg-reg) (r%d) (%08x) %08x (%08x)", table01_01_0x[subinstr], b, limm, pc + (address * 2) + 4, op & ~0xf8fe800f);
592            }
593            else
594            {
595               // b and c are LIMM? invalid??
596               print("%s (reg-reg) (%08x) (%08x) (illegal?) %08x (%08x)", table01_01_0x[subinstr], limm, limm, pc + (address * 2) + 4, op & ~0xf8fe800f);
597
598            }
599         }
600
497601      }
498602
499603   }
r242264r242265
523627      }
524628
525629   }
526   return 4;
630   return size;
527631}
528632
529633int arcompact_handle02_dasm(DASM_OPS_32)
r242264r242265
683787int arcompact_handle04_1e_dasm(DASM_OPS_32)  { print("<illegal 0x04_1e> (%08x)", op); return 4;}
684788int arcompact_handle04_1f_dasm(DASM_OPS_32)  { print("<illegal 0x04_1f> (%08x)", op); return 4;}
685789
686#define GET_LIMM_32 \
687   limm = oprom[6] | (oprom[7] << 8); \
688   limm |= (oprom[4] << 16) | (oprom[5] << 24); \
689790
791
690792int arcompact_handle04_20_dasm(DASM_OPS_32)
691793{
692794   // todo, other bits (in none long immediate mode at least)
r242264r242265
10441146
10451147
10461148
1047
1149// this is an Extension ALU group, maybe optional on some CPUs?
10481150int arcompact_handle05_dasm(DASM_OPS_32)
10491151{
1050   print("op a,b,c (05 ARC ext) (%08x)", op );
1051   return 4;
1152   int size = 4;
1153   UINT8 subinstr = (op & 0x003f0000) >> 16;
1154   op &= ~0x003f0000;
1155
1156   switch (subinstr)
1157   {
1158      case 0x00: size = arcompact_handle05_00_dasm(DASM_PARAMS); break; // ASL
1159      case 0x01: size = arcompact_handle05_01_dasm(DASM_PARAMS); break; // LSR
1160      case 0x02: size = arcompact_handle05_02_dasm(DASM_PARAMS); break; // ASR
1161      case 0x03: size = arcompact_handle05_03_dasm(DASM_PARAMS); break; // ROR
1162      case 0x04: size = arcompact_handle05_04_dasm(DASM_PARAMS); break; // MUL64
1163      case 0x05: size = arcompact_handle05_05_dasm(DASM_PARAMS); break; // MULU64
1164      case 0x06: size = arcompact_handle05_06_dasm(DASM_PARAMS); break; // ADDS
1165      case 0x07: size = arcompact_handle05_07_dasm(DASM_PARAMS); break; // SUBS
1166      case 0x08: size = arcompact_handle05_08_dasm(DASM_PARAMS); break; // DIVAW
1167      case 0x09: size = arcompact_handle05_09_dasm(DASM_PARAMS); break; // illegal
1168      case 0x0a: size = arcompact_handle05_0a_dasm(DASM_PARAMS); break; // ASLS
1169      case 0x0b: size = arcompact_handle05_0b_dasm(DASM_PARAMS); break; // ASRS
1170      case 0x0c: size = arcompact_handle05_0c_dasm(DASM_PARAMS); break; // illegal
1171      case 0x0d: size = arcompact_handle05_0d_dasm(DASM_PARAMS); break; // illegal
1172      case 0x0e: size = arcompact_handle05_0e_dasm(DASM_PARAMS); break; // illegal
1173      case 0x0f: size = arcompact_handle05_0f_dasm(DASM_PARAMS); break; // illegal
1174      case 0x10: size = arcompact_handle05_10_dasm(DASM_PARAMS); break; // illegal
1175      case 0x11: size = arcompact_handle05_11_dasm(DASM_PARAMS); break; // illegal
1176      case 0x12: size = arcompact_handle05_12_dasm(DASM_PARAMS); break; // illegal
1177      case 0x13: size = arcompact_handle05_13_dasm(DASM_PARAMS); break; // illegal
1178      case 0x14: size = arcompact_handle05_14_dasm(DASM_PARAMS); break; // illegal
1179      case 0x15: size = arcompact_handle05_15_dasm(DASM_PARAMS); break; // illegal
1180      case 0x16: size = arcompact_handle05_16_dasm(DASM_PARAMS); break; // illegal
1181      case 0x17: size = arcompact_handle05_17_dasm(DASM_PARAMS); break; // illegal
1182      case 0x18: size = arcompact_handle05_18_dasm(DASM_PARAMS); break; // illegal
1183      case 0x19: size = arcompact_handle05_19_dasm(DASM_PARAMS); break; // illegal
1184      case 0x1a: size = arcompact_handle05_1a_dasm(DASM_PARAMS); break; // illegal
1185      case 0x1b: size = arcompact_handle05_1b_dasm(DASM_PARAMS); break; // illegal
1186      case 0x1c: size = arcompact_handle05_1c_dasm(DASM_PARAMS); break; // illegal
1187      case 0x1d: size = arcompact_handle05_1d_dasm(DASM_PARAMS); break; // illegal
1188      case 0x1e: size = arcompact_handle05_1e_dasm(DASM_PARAMS); break; // illegal
1189      case 0x1f: size = arcompact_handle05_1f_dasm(DASM_PARAMS); break; // illegal
1190      case 0x20: size = arcompact_handle05_20_dasm(DASM_PARAMS); break; // illegal
1191      case 0x21: size = arcompact_handle05_21_dasm(DASM_PARAMS); break; // illegal
1192      case 0x22: size = arcompact_handle05_22_dasm(DASM_PARAMS); break; // illegal
1193      case 0x23: size = arcompact_handle05_23_dasm(DASM_PARAMS); break; // illegal
1194      case 0x24: size = arcompact_handle05_24_dasm(DASM_PARAMS); break; // illegal
1195      case 0x25: size = arcompact_handle05_25_dasm(DASM_PARAMS); break; // illegal
1196      case 0x26: size = arcompact_handle05_26_dasm(DASM_PARAMS); break; // illegal
1197      case 0x27: size = arcompact_handle05_27_dasm(DASM_PARAMS); break; // illegal
1198      case 0x28: size = arcompact_handle05_28_dasm(DASM_PARAMS); break; // ADDSDW
1199      case 0x29: size = arcompact_handle05_29_dasm(DASM_PARAMS); break; // SUBSDW
1200      case 0x2a: size = arcompact_handle05_2a_dasm(DASM_PARAMS); break; // illegal
1201      case 0x2b: size = arcompact_handle05_2b_dasm(DASM_PARAMS); break; // illegal
1202      case 0x2c: size = arcompact_handle05_2c_dasm(DASM_PARAMS); break; // illegal
1203      case 0x2d: size = arcompact_handle05_2d_dasm(DASM_PARAMS); break; // illegal
1204      case 0x2e: size = arcompact_handle05_2e_dasm(DASM_PARAMS); break; // illegal
1205      case 0x2f: size = arcompact_handle05_2f_dasm(DASM_PARAMS); break; // SOPs
1206      case 0x30: size = arcompact_handle05_30_dasm(DASM_PARAMS); break; // illegal
1207      case 0x31: size = arcompact_handle05_31_dasm(DASM_PARAMS); break; // illegal
1208      case 0x32: size = arcompact_handle05_32_dasm(DASM_PARAMS); break; // illegal
1209      case 0x33: size = arcompact_handle05_33_dasm(DASM_PARAMS); break; // illegal
1210      case 0x34: size = arcompact_handle05_34_dasm(DASM_PARAMS); break; // illegal
1211      case 0x35: size = arcompact_handle05_35_dasm(DASM_PARAMS); break; // illegal
1212      case 0x36: size = arcompact_handle05_36_dasm(DASM_PARAMS); break; // illegal
1213      case 0x37: size = arcompact_handle05_37_dasm(DASM_PARAMS); break; // illegal
1214      case 0x38: size = arcompact_handle05_38_dasm(DASM_PARAMS); break; // illegal
1215      case 0x39: size = arcompact_handle05_39_dasm(DASM_PARAMS); break; // illegal
1216      case 0x3a: size = arcompact_handle05_3a_dasm(DASM_PARAMS); break; // illegal
1217      case 0x3b: size = arcompact_handle05_3b_dasm(DASM_PARAMS); break; // illegal
1218      case 0x3c: size = arcompact_handle05_3c_dasm(DASM_PARAMS); break; // illegal
1219      case 0x3d: size = arcompact_handle05_3d_dasm(DASM_PARAMS); break; // illegal
1220      case 0x3e: size = arcompact_handle05_3e_dasm(DASM_PARAMS); break; // illegal
1221      case 0x3f: size = arcompact_handle05_3f_dasm(DASM_PARAMS); break; // illegal
1222   }
1223
1224   return size;
10521225}
10531226
1227int arcompact_handle05_00_dasm(DASM_OPS_32)  { print("ASL a <- b asl c (%08x)", op); return 4;}
1228int arcompact_handle05_01_dasm(DASM_OPS_32)  { print("LSR a <- b lsr c (%08x)", op); return 4;}
1229int arcompact_handle05_02_dasm(DASM_OPS_32)  { print("ASR a <- b asr c (%08x)", op); return 4;}
1230int arcompact_handle05_03_dasm(DASM_OPS_32)  { print("ROR a <- b ror c (%08x)", op); return 4;}
1231int arcompact_handle05_04_dasm(DASM_OPS_32)  { print("MUL64 mulres <- b * c (%08x)", op); return 4;}
1232int arcompact_handle05_05_dasm(DASM_OPS_32)  { print("MULU64 mulres <- b * c (%08x)", op); return 4;}
1233int arcompact_handle05_06_dasm(DASM_OPS_32)  { print("ADDS a <- sat32 (b + c) (%08x)", op); return 4;}
1234int arcompact_handle05_07_dasm(DASM_OPS_32)  { print("SUBS a <- sat32 (b + c) (%08x)", op); return 4;}
1235int arcompact_handle05_08_dasm(DASM_OPS_32)  { print("DIVAW (%08x)", op); return 4;}
1236int arcompact_handle05_09_dasm(DASM_OPS_32)  { print("<illegal 0x05_09> (%08x)", op); return 4;}
1237int arcompact_handle05_0a_dasm(DASM_OPS_32)  { print("ASLS a <- sat32 (b << c) (%08x)", op); return 4;}
1238int arcompact_handle05_0b_dasm(DASM_OPS_32)  { print("ASRS a ,- sat32 (b >> c) (%08x)", op); return 4;}
1239int arcompact_handle05_0c_dasm(DASM_OPS_32)  { print("<illegal 0x05_0c> (%08x)", op); return 4;}
1240int arcompact_handle05_0d_dasm(DASM_OPS_32)  { print("<illegal 0x05_0d> (%08x)", op); return 4;}
1241int arcompact_handle05_0e_dasm(DASM_OPS_32)  { print("<illegal 0x05_0e> (%08x)", op); return 4;}
1242int arcompact_handle05_0f_dasm(DASM_OPS_32)  { print("<illegal 0x05_0f> (%08x)", op); return 4;}
1243int arcompact_handle05_10_dasm(DASM_OPS_32)  { print("<illegal 0x05_10> (%08x)", op); return 4;}
1244int arcompact_handle05_11_dasm(DASM_OPS_32)  { print("<illegal 0x05_11> (%08x)", op); return 4;}
1245int arcompact_handle05_12_dasm(DASM_OPS_32)  { print("<illegal 0x05_12> (%08x)", op); return 4;}
1246int arcompact_handle05_13_dasm(DASM_OPS_32)  { print("<illegal 0x05_13> (%08x)", op); return 4;}
1247int arcompact_handle05_14_dasm(DASM_OPS_32)  { print("<illegal 0x05_14> (%08x)", op); return 4;}
1248int arcompact_handle05_15_dasm(DASM_OPS_32)  { print("<illegal 0x05_15> (%08x)", op); return 4;}
1249int arcompact_handle05_16_dasm(DASM_OPS_32)  { print("<illegal 0x05_16> (%08x)", op); return 4;}
1250int arcompact_handle05_17_dasm(DASM_OPS_32)  { print("<illegal 0x05_17> (%08x)", op); return 4;}
1251int arcompact_handle05_18_dasm(DASM_OPS_32)  { print("<illegal 0x05_18> (%08x)", op); return 4;}
1252int arcompact_handle05_19_dasm(DASM_OPS_32)  { print("<illegal 0x05_19> (%08x)", op); return 4;}
1253int arcompact_handle05_1a_dasm(DASM_OPS_32)  { print("<illegal 0x05_1a> (%08x)", op); return 4;}
1254int arcompact_handle05_1b_dasm(DASM_OPS_32)  { print("<illegal 0x05_1b> (%08x)", op); return 4;}
1255int arcompact_handle05_1c_dasm(DASM_OPS_32)  { print("<illegal 0x05_1c> (%08x)", op); return 4;}
1256int arcompact_handle05_1d_dasm(DASM_OPS_32)  { print("<illegal 0x05_1d> (%08x)", op); return 4;}
1257int arcompact_handle05_1e_dasm(DASM_OPS_32)  { print("<illegal 0x05_1e> (%08x)", op); return 4;}
1258int arcompact_handle05_1f_dasm(DASM_OPS_32)  { print("<illegal 0x05_1f> (%08x)", op); return 4;}
1259int arcompact_handle05_20_dasm(DASM_OPS_32)  { print("<illegal 0x05_20> (%08x)", op); return 4;}
1260int arcompact_handle05_21_dasm(DASM_OPS_32)  { print("<illegal 0x05_21> (%08x)", op); return 4;}
1261int arcompact_handle05_22_dasm(DASM_OPS_32)  { print("<illegal 0x05_22> (%08x)", op); return 4;}
1262int arcompact_handle05_23_dasm(DASM_OPS_32)  { print("<illegal 0x05_23> (%08x)", op); return 4;}
1263int arcompact_handle05_24_dasm(DASM_OPS_32)  { print("<illegal 0x05_24> (%08x)", op); return 4;}
1264int arcompact_handle05_25_dasm(DASM_OPS_32)  { print("<illegal 0x05_25> (%08x)", op); return 4;}
1265int arcompact_handle05_26_dasm(DASM_OPS_32)  { print("<illegal 0x05_26> (%08x)", op); return 4;}
1266int arcompact_handle05_27_dasm(DASM_OPS_32)  { print("<illegal 0x05_27> (%08x)", op); return 4;}
1267int arcompact_handle05_28_dasm(DASM_OPS_32)  { print("ADDSDW (%08x)", op); return 4;}
1268int arcompact_handle05_29_dasm(DASM_OPS_32)  { print("SUBSDW (%08x)", op); return 4;}
1269int arcompact_handle05_2a_dasm(DASM_OPS_32)  { print("<illegal 0x05_2a> (%08x)", op); return 4;}
1270int arcompact_handle05_2b_dasm(DASM_OPS_32)  { print("<illegal 0x05_2b> (%08x)", op); return 4;}
1271int arcompact_handle05_2c_dasm(DASM_OPS_32)  { print("<illegal 0x05_2c> (%08x)", op); return 4;}
1272int arcompact_handle05_2d_dasm(DASM_OPS_32)  { print("<illegal 0x05_2d> (%08x)", op); return 4;}
1273int arcompact_handle05_2e_dasm(DASM_OPS_32)  { print("<illegal 0x05_2e> (%08x)", op); return 4;}
1274int arcompact_handle05_2f_dasm(DASM_OPS_32)  { print("SOP (another table) (%08x)", op); return 4;}
1275int arcompact_handle05_30_dasm(DASM_OPS_32)  { print("<illegal 0x05_30> (%08x)", op); return 4;}
1276int arcompact_handle05_31_dasm(DASM_OPS_32)  { print("<illegal 0x05_31> (%08x)", op); return 4;}
1277int arcompact_handle05_32_dasm(DASM_OPS_32)  { print("<illegal 0x05_32> (%08x)", op); return 4;}
1278int arcompact_handle05_33_dasm(DASM_OPS_32)  { print("<illegal 0x05_33> (%08x)", op); return 4;}
1279int arcompact_handle05_34_dasm(DASM_OPS_32)  { print("<illegal 0x05_34> (%08x)", op); return 4;}
1280int arcompact_handle05_35_dasm(DASM_OPS_32)  { print("<illegal 0x05_35> (%08x)", op); return 4;}
1281int arcompact_handle05_36_dasm(DASM_OPS_32)  { print("<illegal 0x05_36> (%08x)", op); return 4;}
1282int arcompact_handle05_37_dasm(DASM_OPS_32)  { print("<illegal 0x05_37> (%08x)", op); return 4;}
1283int arcompact_handle05_38_dasm(DASM_OPS_32)  { print("<illegal 0x05_38> (%08x)", op); return 4;}
1284int arcompact_handle05_39_dasm(DASM_OPS_32)  { print("<illegal 0x05_39> (%08x)", op); return 4;}
1285int arcompact_handle05_3a_dasm(DASM_OPS_32)  { print("<illegal 0x05_3a> (%08x)", op); return 4;}
1286int arcompact_handle05_3b_dasm(DASM_OPS_32)  { print("<illegal 0x05_3b> (%08x)", op); return 4;}
1287int arcompact_handle05_3c_dasm(DASM_OPS_32)  { print("<illegal 0x05_3c> (%08x)", op); return 4;}
1288int arcompact_handle05_3d_dasm(DASM_OPS_32)  { print("<illegal 0x05_3d> (%08x)", op); return 4;}
1289int arcompact_handle05_3e_dasm(DASM_OPS_32)  { print("<illegal 0x05_3e> (%08x)", op); return 4;}
1290int arcompact_handle05_3f_dasm(DASM_OPS_32)  { print("<illegal 0x05_3f> (%08x)", op); return 4;}
1291
1292
1293
10541294int arcompact_handle06_dasm(DASM_OPS_32)
10551295{
10561296   print("op a,b,c (06 ARC ext) (%08x)", op );


Previous 199869 Revisions Next


© 1997-2024 The MAME Team