summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/v60/optable.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/cpu/v60/optable.c')
-rw-r--r--src/emu/cpu/v60/optable.c259
1 files changed, 259 insertions, 0 deletions
diff --git a/src/emu/cpu/v60/optable.c b/src/emu/cpu/v60/optable.c
new file mode 100644
index 00000000000..96e9aed416e
--- /dev/null
+++ b/src/emu/cpu/v60/optable.c
@@ -0,0 +1,259 @@
+static UINT32 (*const OpCodeTable[256])(void) =
+{
+ /* 0x00 */ opHALT,
+ /* 0x01 */ opLDTASK,
+ /* 0x02 */ opSTPR,
+ /* 0x03 */ opUNHANDLED,
+ /* 0x04 */ opUNHANDLED,
+ /* 0x05 */ opUNHANDLED,
+ /* 0x06 */ opUNHANDLED,
+ /* 0x07 */ opUNHANDLED,
+ /* 0x08 */ opRVBIT,
+ /* 0x09 */ opMOVB,
+ /* 0x0a */ opMOVSBH,
+ /* 0x0b */ opMOVZBH,
+ /* 0x0c */ opMOVSBW,
+ /* 0x0d */ opMOVZBW,
+ /* 0x0e */ opUNHANDLED,
+ /* 0x0f */ opUNHANDLED,
+ /* 0x10 */ opCLRTLBA,
+ /* 0x11 */ opUNHANDLED,
+ /* 0x12 */ opLDPR,
+ /* 0x13 */ opUPDPSWW,
+ /* 0x14 */ opUNHANDLED,
+ /* 0x15 */ opUNHANDLED,
+ /* 0x16 */ opUNHANDLED,
+ /* 0x17 */ opUNHANDLED,
+ /* 0x18 */ opUNHANDLED,
+ /* 0x19 */ opMOVTHB,
+ /* 0x1a */ opUNHANDLED,
+ /* 0x1b */ opMOVH,
+ /* 0x1c */ opMOVSHW,
+ /* 0x1d */ opMOVZHW,
+ /* 0x1e */ opUNHANDLED,
+ /* 0x1f */ opUNHANDLED,
+ /* 0x20 */ opINB,
+ /* 0x21 */ opOUTB,
+ /* 0x22 */ opINH,
+ /* 0x23 */ opOUTH,
+ /* 0x24 */ opINW,
+ /* 0x25 */ opOUTW,
+ /* 0x26 */ opUNHANDLED,
+ /* 0x27 */ opUNHANDLED,
+ /* 0x28 */ opUNHANDLED,
+ /* 0x29 */ opMOVTWB,
+ /* 0x2a */ opUNHANDLED,
+ /* 0x2b */ opMOVTWH,
+ /* 0x2c */ opRVBYT,
+ /* 0x2d */ opMOVW,
+ /* 0x2e */ opUNHANDLED,
+ /* 0x2f */ opUNHANDLED,
+ /* 0x30 */ opUNHANDLED,
+ /* 0x31 */ opUNHANDLED,
+ /* 0x32 */ opUNHANDLED,
+ /* 0x33 */ opUNHANDLED,
+ /* 0x34 */ opUNHANDLED,
+ /* 0x35 */ opUNHANDLED,
+ /* 0x36 */ opUNHANDLED,
+ /* 0x37 */ opUNHANDLED,
+ /* 0x38 */ opNOTB,
+ /* 0x39 */ opNEGB,
+ /* 0x3a */ opNOTH,
+ /* 0x3b */ opNEGH,
+ /* 0x3c */ opNOTW,
+ /* 0x3d */ opNEGW,
+ /* 0x3e */ opUNHANDLED,
+ /* 0x3f */ opMOVD,
+ /* 0x40 */ opMOVEAB,
+ /* 0x41 */ opXCHB,
+ /* 0x42 */ opMOVEAH,
+ /* 0x43 */ opXCHH,
+ /* 0x44 */ opMOVEAW,
+ /* 0x45 */ opXCHW,
+ /* 0x46 */ opUNHANDLED,
+ /* 0x47 */ opSETF,
+ /* 0x48 */ opBSR,
+ /* 0x49 */ opCALL,
+ /* 0x4a */ opUPDPSWH,
+ /* 0x4b */ opCHLVL,
+ /* 0x4c */ opUNHANDLED,
+ /* 0x4d */ opCHKAR,
+ /* 0x4e */ opCHKAW,
+ /* 0x4f */ opCHKAE,
+ /* 0x50 */ opREMB,
+ /* 0x51 */ opREMUB,
+ /* 0x52 */ opREMH,
+ /* 0x53 */ opREMUH,
+ /* 0x54 */ opREMW,
+ /* 0x55 */ opREMUW,
+ /* 0x56 */ opUNHANDLED,
+ /* 0x57 */ opUNHANDLED,
+ /* 0x58 */ op58,
+ /* 0x59 */ op59,
+ /* 0x5a */ op5A,
+ /* 0x5b */ op5B,
+ /* 0x5c */ op5C,
+ /* 0x5d */ op5D,
+ /* 0x5e */ opUNHANDLED,
+ /* 0x5f */ op5F,
+ /* 0x60 */ opBV8,
+ /* 0x61 */ opBNV8,
+ /* 0x62 */ opBL8,
+ /* 0x63 */ opBNL8,
+ /* 0x64 */ opBE8,
+ /* 0x65 */ opBNE8,
+ /* 0x66 */ opBNH8,
+ /* 0x67 */ opBH8,
+ /* 0x68 */ opBN8,
+ /* 0x69 */ opBP8,
+ /* 0x6a */ opBR8,
+ /* 0x6b */ opUNHANDLED,
+ /* 0x6C */ opBLT8,
+ /* 0x6c */ opBGE8,
+ /* 0x6e */ opBLE8,
+ /* 0x6f */ opBGT8,
+ /* 0x70 */ opBV16,
+ /* 0x71 */ opBNV16,
+ /* 0x72 */ opBL16,
+ /* 0x73 */ opBNL16,
+ /* 0x74 */ opBE16,
+ /* 0x75 */ opBNE16,
+ /* 0x76 */ opBNH16,
+ /* 0x77 */ opBH16,
+ /* 0x78 */ opBN16,
+ /* 0x79 */ opBP16,
+ /* 0x7a */ opBR16,
+ /* 0x7b */ opUNHANDLED,
+ /* 0x7c */ opBLT16,
+ /* 0x7d */ opBGE16,
+ /* 0x7e */ opBLE16,
+ /* 0x7f */ opBGT16,
+ /* 0x80 */ opADDB,
+ /* 0x81 */ opMULB,
+ /* 0x82 */ opADDH,
+ /* 0x83 */ opMULH,
+ /* 0x84 */ opADDW,
+ /* 0x85 */ opMULW,
+ /* 0x86 */ opMULX,
+ /* 0x87 */ opTEST1,
+ /* 0x88 */ opORB,
+ /* 0x89 */ opROTB,
+ /* 0x8a */ opORH,
+ /* 0x8b */ opROTH,
+ /* 0x8c */ opORW,
+ /* 0x8d */ opROTW,
+ /* 0x8e */ opUNHANDLED,
+ /* 0x8f */ opUNHANDLED,
+ /* 0x90 */ opADDCB,
+ /* 0x91 */ opMULUB,
+ /* 0x92 */ opADDCH,
+ /* 0x93 */ opMULUH,
+ /* 0x94 */ opADDCW,
+ /* 0x95 */ opMULUW,
+ /* 0x96 */ opMULUX,
+ /* 0x97 */ opSET1,
+ /* 0x98 */ opSUBCB,
+ /* 0x99 */ opROTCB,
+ /* 0x9a */ opSUBCH,
+ /* 0x9b */ opROTCH,
+ /* 0x9c */ opSUBCW,
+ /* 0x9d */ opROTCW,
+ /* 0x9e */ opUNHANDLED,
+ /* 0x9f */ opUNHANDLED,
+ /* 0xa0 */ opANDB,
+ /* 0xa1 */ opDIVB,
+ /* 0xa2 */ opANDH,
+ /* 0xa3 */ opDIVH,
+ /* 0xa4 */ opANDW,
+ /* 0xa5 */ opDIVW,
+ /* 0xa6 */ opDIVX,
+ /* 0xa7 */ opCLR1,
+ /* 0xa8 */ opSUBB,
+ /* 0xa9 */ opSHLB,
+ /* 0xaa */ opSUBH,
+ /* 0xab */ opSHLH,
+ /* 0xac */ opSUBW,
+ /* 0xad */ opSHLW,
+ /* 0xae */ opUNHANDLED,
+ /* 0xaf */ opUNHANDLED,
+ /* 0xb0 */ opXORB,
+ /* 0xb1 */ opDIVUB,
+ /* 0xb2 */ opXORH,
+ /* 0xb3 */ opDIVUH,
+ /* 0xb4 */ opXORW,
+ /* 0xb5 */ opDIVUW,
+ /* 0xb6 */ opDIVUX,
+ /* 0xb7 */ opNOT1,
+ /* 0xb8 */ opCMPB,
+ /* 0xb9 */ opSHAB,
+ /* 0xba */ opCMPH,
+ /* 0xbb */ opSHAH,
+ /* 0xbc */ opCMPW,
+ /* 0xbd */ opSHAW,
+ /* 0xbe */ opUNHANDLED,
+ /* 0xbf */ opUNHANDLED,
+ /* 0xc0 */ opUNHANDLED,
+ /* 0xc1 */ opUNHANDLED,
+ /* 0xc2 */ opUNHANDLED,
+ /* 0xc3 */ opUNHANDLED,
+ /* 0xc4 */ opUNHANDLED,
+ /* 0xc5 */ opUNHANDLED,
+ /* 0xc6 */ opC6,
+ /* 0xc7 */ opC7,
+ /* 0xc8 */ opBRK,
+ /* 0xc9 */ opBRKV,
+ /* 0xca */ opRSR,
+ /* 0xcb */ opTRAPFL,
+ /* 0xcc */ opDISPOSE,
+ /* 0xcd */ opNOP,
+ /* 0xce */ opUNHANDLED,
+ /* 0xcf */ opUNHANDLED,
+ /* 0xd0 */ opDECB_0,
+ /* 0xd1 */ opDECB_1,
+ /* 0xd2 */ opDECH_0,
+ /* 0xd3 */ opDECH_1,
+ /* 0xd4 */ opDECW_0,
+ /* 0xd5 */ opDECW_1,
+ /* 0xd6 */ opJMP_0,
+ /* 0xd7 */ opJMP_1,
+ /* 0xd8 */ opINCB_0,
+ /* 0xd9 */ opINCB_1,
+ /* 0xda */ opINCH_0,
+ /* 0xdb */ opINCH_1,
+ /* 0xdc */ opINCW_0,
+ /* 0xdd */ opINCW_1,
+ /* 0xde */ opPREPARE_0,
+ /* 0xdf */ opPREPARE_1,
+ /* 0xe0 */ opTASI_0,
+ /* 0xe1 */ opTASI_1,
+ /* 0xe2 */ opRET_0,
+ /* 0xe3 */ opRET_1,
+ /* 0xe4 */ opPOPM_0,
+ /* 0xe5 */ opPOPM_1,
+ /* 0xe6 */ opPOP_0,
+ /* 0xe7 */ opPOP_1,
+ /* 0xe8 */ opJSR_0,
+ /* 0xe9 */ opJSR_1,
+ /* 0xea */ opRETIU_0,
+ /* 0xeb */ opRETIU_1,
+ /* 0xec */ opPUSHM_0,
+ /* 0xed */ opPUSHM_1,
+ /* 0xee */ opPUSH_0,
+ /* 0xef */ opPUSH_1,
+ /* 0xf0 */ opTESTB_0,
+ /* 0xf1 */ opTESTB_1,
+ /* 0xf2 */ opTESTH_0,
+ /* 0xf3 */ opTESTH_1,
+ /* 0xf4 */ opTESTW_0,
+ /* 0xf5 */ opTESTW_1,
+ /* 0xf6 */ opGETPSW_0,
+ /* 0xf7 */ opGETPSW_1,
+ /* 0xf8 */ opTRAP_0,
+ /* 0xf9 */ opTRAP_1,
+ /* 0xfa */ opRETIS_0,
+ /* 0xfb */ opRETIS_1,
+ /* 0xfc */ opSTTASK_0,
+ /* 0xfd */ opSTTASK_1,
+ /* 0xfe */ opCLRTLB_0,
+ /* 0xff */ opCLRTLB_1,
+};