From 7c2b59243298f9e3d7a0b8dd4b1c2cb5d5799f25 Mon Sep 17 00:00:00 2001 From: hap Date: Mon, 1 May 2023 14:44:02 +0200 Subject: mn1400: add disassembler --- scripts/src/cpu.lua | 30 ++- src/devices/cpu/cops1/cops1d.cpp | 62 +++--- src/devices/cpu/cops1/cops1d.h | 16 +- src/devices/cpu/hmcs40/hmcs40d.cpp | 40 ++-- src/devices/cpu/hmcs40/hmcs40d.h | 2 +- src/devices/cpu/melps4/melps4d.cpp | 50 ++--- src/devices/cpu/melps4/melps4d.h | 33 ++- src/devices/cpu/mn1400/mn1400d.cpp | 113 ++++++++++ src/devices/cpu/mn1400/mn1400d.h | 47 ++++ src/devices/cpu/pps41/pps41d.cpp | 82 +++---- src/devices/cpu/pps41/pps41d.h | 24 +-- src/devices/cpu/rw5000/rw5000d.cpp | 260 +++++++++++----------- src/devices/cpu/rw5000/rw5000d.h | 16 +- src/devices/cpu/sm510/sm510d.cpp | 12 +- src/devices/cpu/tms1000/tms1k_dasm.cpp | 380 ++++++++++++++++----------------- src/devices/cpu/tms1000/tms1k_dasm.h | 26 +-- src/devices/cpu/ucom4/ucom4d.cpp | 59 ++--- src/devices/cpu/ucom4/ucom4d.h | 6 +- src/devices/sound/ymfm_mame.h | 2 +- src/mame/cinematronics/jack_v.cpp | 3 +- src/mame/handheld/hh_sm510.cpp | 1 + src/mame/handheld/hh_smc1k.cpp | 7 +- src/mame/handheld/hh_tms1k.cpp | 11 +- src/mame/misc/z80ne.cpp | 2 +- src/mame/tiger/k28.cpp | 4 +- src/mame/tiger/k28m2.cpp | 4 +- src/tools/unidasm.cpp | 2 + 27 files changed, 725 insertions(+), 569 deletions(-) create mode 100644 src/devices/cpu/mn1400/mn1400d.cpp create mode 100644 src/devices/cpu/mn1400/mn1400d.h diff --git a/scripts/src/cpu.lua b/scripts/src/cpu.lua index fc099343c24..66bf5aa2738 100644 --- a/scripts/src/cpu.lua +++ b/scripts/src/cpu.lua @@ -2266,6 +2266,26 @@ if opt_tool(CPUS, "RSP") then table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/rsp/rsp_dasm.h") end +-------------------------------------------------- +-- Matsushita (Panasonic) MN1400, disassembler only +--@src/devices/cpu/mn1400/mn1400d.h,CPUS["MN1400"] = true +-------------------------------------------------- + +if opt_tool(CPUS, "MN1400") then + table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/mn1400/mn1400d.cpp") + table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/mn1400/mn1400d.h") +end + +-------------------------------------------------- +-- Panafacom MN1610, disassembler only +--@src/devices/cpu/mn1610/mn1610d.h,CPUS["MN1610"] = true +-------------------------------------------------- + +if opt_tool(CPUS, "MN1610") then + table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/mn1610/mn1610d.cpp") + table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/mn1610/mn1610d.h") +end + -------------------------------------------------- -- Panasonic MN1880 --@src/devices/cpu/mn1880/mn1880.h,CPUS["MN1880"] = true @@ -3747,16 +3767,6 @@ if opt_tool(CPUS, "V620") then table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/v620/v620dasm.h") end --------------------------------------------------- --- Panafacom MN1610, disassembler only ---@src/devices/cpu/mn1610/mn1610d.h,CPUS["MN1610"] = true --------------------------------------------------- - -if opt_tool(CPUS, "MN1610") then - table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/mn1610/mn1610d.cpp") - table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/mn1610/mn1610d.h") -end - -------------------------------------------------- -- Altera Nios II --@src/devices/cpu/nios2/nios2.h,CPUS["NIOS2"] = true diff --git a/src/devices/cpu/cops1/cops1d.cpp b/src/devices/cpu/cops1/cops1d.cpp index d78a1e050d1..aa7622bd22f 100644 --- a/src/devices/cpu/cops1/cops1d.cpp +++ b/src/devices/cpu/cops1/cops1d.cpp @@ -96,7 +96,7 @@ offs_t cops1_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostrea u8 arg = params.r8(pc); len++; - if (instr == em_LG) + if (instr == mLG) { // bit 6 indicates GO or CALL if (~arg & 0x40) @@ -115,34 +115,34 @@ offs_t cops1_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostrea if (mask < 16) { // SM and RSM param is scrambled - if (instr >= em_SM1 && instr <= em_SM8) - param = instr - em_SM1; - else if (instr >= em_RSM1 && instr <= em_RSM8) - param = instr - em_RSM1; + if (instr >= mSM1 && instr <= mSM8) + param = instr - mSM1; + else if (instr >= mRSM1 && instr <= mRSM8) + param = instr - mRSM1; // memory bit opcodes are 1,2,4,8 - if (instr >= em_SM1 && instr <= em_TM) + if (instr >= mSM1 && instr <= mTM) param = 1 << param; // TF is 1,2,3,4 - else if (instr == em_TF) + else if (instr == mTF) param++; // EXC type instructions omit param if it's 0 - if (!(param == 0 && (instr == em_EXC || instr == em_EXCM || instr == em_EXCP || instr == em_MTA))) + if (!(param == 0 && (instr == mEXC || instr == mEXCM || instr == mEXCP || instr == mMTA))) util::stream_format(stream, "%d", param); } else { // exception for LG - if (instr == em_LG || instr == em_LGCALL) + if (instr == mLG || instr == mLGCALL) util::stream_format(stream, "$%02X,$%02X", param >> 6, param & 0x3f); // exception for LB/LBL - else if (instr == em_LB || instr == em_LBL) + else if (instr == mLB || instr == mLBL) { // LB x,10 is 0 by default - if (instr == em_LB && (param & 0xf) == 10) + if (instr == mLB && (param & 0xf) == 10) param &= 0x30; util::stream_format(stream, "%d,%d", param >> 4, param & 0xf); @@ -161,26 +161,26 @@ offs_t cops1_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostrea const u8 mm5799_disassembler::mm5799_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_HXBR, em_ADD, em_SC, em_TF, em_TIR, em_MTA, em_EXC, em_EXCM, em_EXCP, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, // 0 - em_DSPA, em_DSPS, em_AD, em_LBL, em_TF, em_TKB, em_MTA, em_EXC, em_EXCM, em_EXCP, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, // 1 - em_COMP, em_AXO, em_SUB, em_RSC, em_TF, em_BTD, em_MTA, em_EXC, em_EXCM, em_EXCP, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, // 2 - em_0TA, em_HXA, em_TAM, em_LDF, em_READ, em_TIN, em_MTA, em_EXC, em_EXCM, em_EXCP, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, // 3 - - em_RET, em_RETS, em_RSM8, em_BTA, em_TM, em_TM, em_TM, em_TM, em_RSM1, em_SM1, em_SM8, em_RSM4, em_RSM2, em_TC, em_SM2, em_SM4, // 4 - em_ATB, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, // 5 - em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, em_LG, // 6 - em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, em_LM, // 7 - - em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, // 8 - em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, // 9 - em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, // A - em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, em_CALL, // B - - em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, // C - em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, // D - em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, // E - em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO, em_GO // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mHXBR, mADD, mSC, mTF, mTIR, mMTA, mEXC, mEXCM, mEXCP, mLB, mLB, mLB, mLB, mLB, mLB, // 0 + mDSPA, mDSPS, mAD, mLBL, mTF, mTKB, mMTA, mEXC, mEXCM, mEXCP, mLB, mLB, mLB, mLB, mLB, mLB, // 1 + mCOMP, mAXO, mSUB, mRSC, mTF, mBTD, mMTA, mEXC, mEXCM, mEXCP, mLB, mLB, mLB, mLB, mLB, mLB, // 2 + m0TA, mHXA, mTAM, mLDF, mREAD, mTIN, mMTA, mEXC, mEXCM, mEXCP, mLB, mLB, mLB, mLB, mLB, mLB, // 3 + + mRET, mRETS, mRSM8, mBTA, mTM, mTM, mTM, mTM, mRSM1, mSM1, mSM8, mRSM4, mRSM2, mTC, mSM2, mSM4, // 4 + mATB, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, // 5 + mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, mLG, // 6 + mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, mLM, // 7 + + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // 8 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // 9 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // A + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // B + + mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, // C + mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, // D + mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, // E + mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO, mGO // F }; offs_t mm5799_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) diff --git a/src/devices/cpu/cops1/cops1d.h b/src/devices/cpu/cops1/cops1d.h index d0491d8f04d..ac48fb8853e 100644 --- a/src/devices/cpu/cops1/cops1d.h +++ b/src/devices/cpu/cops1/cops1d.h @@ -28,14 +28,14 @@ protected: // opcode mnemonics enum e_mnemonics { - em_ILL, - em_AD, em_ADD, em_SUB, em_COMP, em_0TA, em_ADX, em_HXA, em_TAM, em_SC, em_RSC, em_TC, - em_TIN, em_TF, em_TKB, em_TIR, - em_BTD, em_DSPA, em_DSPS, em_AXO, em_LDF, em_READ, - em_GO, em_CALL, em_RET, em_RETS, em_LG, em_LGCALL, em_NOP, - em_EXC, em_EXCM, em_EXCP, em_MTA, em_LM, - em_SM1, em_SM2, em_SM4, em_SM8, em_RSM1, em_RSM2, em_RSM4, em_RSM8, em_TM, - em_LB, em_LBL, em_ATB, em_BTA, em_HXBR + mILL, + mAD, mADD, mSUB, mCOMP, m0TA, mADX, mHXA, mTAM, mSC, mRSC, mTC, + mTIN, mTF, mTKB, mTIR, + mBTD, mDSPA, mDSPS, mAXO, mLDF, mREAD, + mGO, mCALL, mRET, mRETS, mLG, mLGCALL, mNOP, + mEXC, mEXCM, mEXCP, mMTA, mLM, + mSM1, mSM2, mSM4, mSM8, mRSM1, mRSM2, mRSM4, mRSM8, mTM, + mLB, mLBL, mATB, mBTA, mHXBR }; static const char *const s_name[]; diff --git a/src/devices/cpu/hmcs40/hmcs40d.cpp b/src/devices/cpu/hmcs40/hmcs40d.cpp index 1c37047dd66..c0918df2977 100644 --- a/src/devices/cpu/hmcs40/hmcs40d.cpp +++ b/src/devices/cpu/hmcs40/hmcs40d.cpp @@ -89,89 +89,89 @@ const u32 hmcs40_disassembler::s_flags[] = const u8 hmcs40_disassembler::hmcs40_mnemonic[0x400] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x000 */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x000 mNOP, mXSP, mXSP, mXSP, mSEM, mSEM, mSEM, mSEM, mLAM, mLAM, mLAM, mLAM, 0, 0, 0, 0, mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY,mLMIIY, mLBM, mLBM, mLBM, mLBM, mBLEM, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mAMC, 0, 0, 0, mAM, 0, 0, 0, 0, 0, 0, 0, mLTA, 0, 0, 0, - /* 0x040 */ + // 0x040 mLXA, 0, 0, 0, 0, mDAS, mDAA, 0, 0, 0, 0, 0, mREC, 0, 0, mSEC, mLYA, 0, 0, 0, mIY, 0, 0, 0, mAYY, 0, 0, 0, 0, 0, 0, 0, mLBA, 0, 0, 0, mIB, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, - /* 0x080 */ + // 0x080 mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mSED, 0, 0, 0, mTD, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mSEIF1,mSECF, mSEIF0,0, mSEIE, mSETF, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x0c0 */ + // 0x0c0 mLAR, mLAR, mLAR, mLAR, mLAR, mLAR, mLAR, mLAR, 0, 0, 0, 0, 0, 0, 0, 0, mSEDD, mSEDD, mSEDD, mSEDD, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mLBR, mLBR, mLBR, mLBR, mLBR, mLBR, mLBR, mLBR, 0, 0, 0, 0, 0, 0, 0, 0, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, mXAMR, -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x100 */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x100 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mLMAIY,mLMAIY,0, 0, mLMADY,mLMADY,0, 0, mLAY, 0, 0, 0, 0, 0, 0, 0, mOR, 0, 0, 0, mANEM, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x140 */ + // 0x140 mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLXI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLYI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLBI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, mLTI, - /* 0x180 */ + // 0x180 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mTIF1, mTI1, mTIF0, mTI0, 0, mTTF, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x1c0 */ + // 0x1c0 mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, mBR, -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x200 */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x200 mTM, mTM, mTM, mTM, mREM, mREM, mREM, mREM, mXMA, mXMA, mXMA, mXMA, 0, 0, 0, 0, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mMNEI, mXMB, mXMB, mXMB, mXMB, mROTR, mROTL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mSMC, 0, 0, 0, mALEM, 0, 0, 0, 0, 0, 0, 0, mLAT, 0, 0, 0, - /* 0x240 */ + // 0x240 mLASPX,0, 0, 0, mNEGA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mTC, mLASPY,0, 0, 0, mDY, 0, 0, 0, mSYY, 0, 0, 0, 0, 0, 0, 0, mLAB, 0, 0, 0, 0, 0, 0, mDB, 0, 0, 0, 0, 0, 0, 0, 0, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, mALEI, - /* 0x280 */ + // 0x280 mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mYNEI, mRED, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mREIF1,mRECF, mREIF0,0, mREIE, mRETF, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x2c0 */ + // 0x2c0 mLRA, mLRA, mLRA, mLRA, mLRA, mLRA, mLRA, mLRA, 0, 0, 0, 0, 0, 0, 0, 0, mREDD, mREDD, mREDD, mREDD, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mLRB, mLRB, mLRB, mLRB, mLRB, mLRB, mLRB, mLRB, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x300 */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x300 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mCOMB, 0, 0, 0, mBNEM, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x340 */ + // 0x340 mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mLPU, mTBR, mTBR, mTBR, mTBR, mTBR, mTBR, mTBR, mTBR, mP, mP, mP, mP, mP, mP, mP, mP, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x380 */ + // 0x380 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mRTNI, 0, 0, mRTN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - /* 0x3c0 */ + // 0x3c0 mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, diff --git a/src/devices/cpu/hmcs40/hmcs40d.h b/src/devices/cpu/hmcs40/hmcs40d.h index 0da5f51d3d9..fdd00fd32f1 100644 --- a/src/devices/cpu/hmcs40/hmcs40d.h +++ b/src/devices/cpu/hmcs40/hmcs40d.h @@ -50,4 +50,4 @@ private: u8 m_r2l[0x40]; }; -#endif +#endif // MAME_CPU_HMCS40_HMCS40D_H diff --git a/src/devices/cpu/melps4/melps4d.cpp b/src/devices/cpu/melps4/melps4d.cpp index aec4fc03656..5c40642bd6c 100644 --- a/src/devices/cpu/melps4/melps4d.cpp +++ b/src/devices/cpu/melps4/melps4d.cpp @@ -12,7 +12,7 @@ #include "emu.h" #include "melps4d.h" -const char *const melps4_disassembler::em_name[] = +const char *const melps4_disassembler::s_name[] = { "?", "TAB", "TBA", "TAY", "TYA", "TEAB", "TABE", "TEPA", "TXA", "TAX", @@ -28,7 +28,7 @@ const char *const melps4_disassembler::em_name[] = }; // number of bits per opcode parameter -const u8 melps4_disassembler::em_bits[] = +const u8 melps4_disassembler::s_bits[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -43,7 +43,7 @@ const u8 melps4_disassembler::em_bits[] = 0, 0, 0, 0, 0 }; -const u32 melps4_disassembler::em_flags[] = +const u32 melps4_disassembler::s_flags[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -64,19 +64,21 @@ const u32 melps4_disassembler::em_flags[] = const u8 melps4_disassembler::m58846_opmap[0xc0] = { -// 0 1 2 3 4 5 6 7 8 9 A B C D E F - em_NOP, em_BA, em_INY, em_DEY, em_DI, em_EI, em_RU, em_SU, 0, em_TABE, em_AM, em_OSE, em_TYA, 0, 0, em_CMA, // 0x - em_CLS, em_CLDS, 0, em_CLD, em_RD, em_SD, em_TEPA, em_OSPA, em_RL, em_RR, em_TEAB, em_OSAB, em_TBA, em_TAY, em_TAB, 0, // 1x - em_SZB, em_SZB, em_SZB, em_SZB, 0, 0, em_SEAM, 0, 0, 0, 0, em_SZD, 0, 0, 0, em_SZC, // 2x - em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, em_SEY, // 3x - em_LCPS, em_LCPS, 0, em_AMC, em_RT, em_RTS, em_RTI, 0, em_RC, em_SC, em_LZ, em_LZ, em_SB, em_SB, em_SB, em_SB, // 4x - 0, 0, 0, em_AMCS, em_IAS, em_IAS, 0, em_IAK, em_SZK, em_SZK, em_SZK, em_SZK, em_RB, em_RB, em_RB, em_RB, // 5x - em_XAM, em_XAM, em_XAM, em_XAM, em_TAM, em_TAM, em_TAM, em_TAM, em_XAMD, em_XAMD, em_XAMD, em_XAMD, em_XAMI, em_XAMI, em_XAMI, em_XAMI, // 6x - em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, em_SP, // 7x - 0, em_OFA, em_SNZ1, em_SNZ2, em_OGA, em_T2AB, em_TVA, 0, 0, 0, em_TAB2, 0, em_IAF, 0, 0, 0, // 8x - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 9x - em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, em_A, // Ax - em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA, em_LA // Bx +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mBA, mINY, mDEY, mDI, mEI, mRU, mSU, 0, mTABE, mAM, mOSE, mTYA, 0, 0, mCMA, // 0x + mCLS, mCLDS, 0, mCLD, mRD, mSD, mTEPA, mOSPA, mRL, mRR, mTEAB, mOSAB, mTBA, mTAY, mTAB, 0, // 1x + mSZB, mSZB, mSZB, mSZB, 0, 0, mSEAM, 0, 0, 0, 0, mSZD, 0, 0, 0, mSZC, // 2x + mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, mSEY, // 3x + + mLCPS, mLCPS, 0, mAMC, mRT, mRTS, mRTI, 0, mRC, mSC, mLZ, mLZ, mSB, mSB, mSB, mSB, // 4x + 0, 0, 0, mAMCS, mIAS, mIAS, 0, mIAK, mSZK, mSZK, mSZK, mSZK, mRB, mRB, mRB, mRB, // 5x + mXAM, mXAM, mXAM, mXAM, mTAM, mTAM, mTAM, mTAM, mXAMD, mXAMD, mXAMD, mXAMD, mXAMI, mXAMI, mXAMI, mXAMI, // 6x + mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, mSP, // 7x + + 0, mOFA, mSNZ1, mSNZ2, mOGA, mT2AB, mTVA, 0, 0, 0, mTAB2, 0, mIAF, 0, 0, 0, // 8x + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 9x + mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, mA, // Ax + mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA, mLA // Bx }; offs_t melps4_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -86,22 +88,22 @@ offs_t melps4_disassembler::disassemble(std::ostream &stream, offs_t pc, const d // get opcode u8 instr; if (op >= 0x180) - instr = em_B; + instr = mB; else if (op >= 0x100) - instr = em_BM; + instr = mBM; else if (op >= 0xc0) - instr = em_LXY; + instr = mLXY; else instr = m58846_opmap[op]; - u32 flags = em_flags[instr]; - util::stream_format(stream, "%-6s", em_name[instr]); + u32 flags = s_flags[instr]; + util::stream_format(stream, "%-6s", s_name[instr]); // get immediate param - u8 bits = em_bits[instr]; + u8 bits = s_bits[instr]; // special case for LXY x,y - if (instr == em_LXY) + if (instr == mLXY) { u8 x = op >> 4 & 3; u8 y = op & 0xf; @@ -111,7 +113,7 @@ offs_t melps4_disassembler::disassemble(std::ostream &stream, offs_t pc, const d { u8 param = op & ((1 << bits) - 1); - if (instr == em_A && param == 6) + if (instr == mA && param == 6) flags &= ~STEP_COND; if (bits > 4) diff --git a/src/devices/cpu/melps4/melps4d.h b/src/devices/cpu/melps4/melps4d.h index 7a62c9d0d33..b03a506a60e 100644 --- a/src/devices/cpu/melps4/melps4d.h +++ b/src/devices/cpu/melps4/melps4d.h @@ -4,9 +4,6 @@ Mitsubishi MELPS 4 MCU family disassembler - Not counting the extra opcodes for peripherals (eg. timers, A/D), - each MCU in the series has small differences in the opcode map. - */ #ifndef MAME_CPU_MELPS4_MELPS4D_H @@ -29,23 +26,23 @@ private: // opcode mnemonics enum e_mnemonics { - em_ILL, - em_TAB, em_TBA, em_TAY, em_TYA, em_TEAB, em_TABE, em_TEPA, em_TXA, em_TAX, - em_LXY, em_LZ, em_INY, em_DEY, em_LCPS, em_SADR, - em_TAM, em_XAM, em_XAMD, em_XAMI, - em_LA, em_AM, em_AMC, em_AMCS, em_A, em_SC, em_RC, em_SZC, em_CMA, em_RL, em_RR, - em_SB, em_RB, em_SZB, em_SEAM, em_SEY, - em_TLA, em_THA, em_TAJ, em_XAL, em_XAH, em_LC7, em_DEC, em_SHL, em_RHL, em_CPA, em_CPAS, em_CPAE, em_SZJ, - em_T1AB, em_TRAB, em_T2AB, em_TAB1, em_TABR, em_TAB2, em_TVA, em_TWA, em_SNZ1, em_SNZ2, - em_BA, em_SP, em_B, em_BM, em_RT, em_RTS, em_RTI, - em_CLD, em_CLS, em_CLDS, em_SD, em_RD, em_SZD, em_OSAB, em_OSPA, em_OSE, em_IAS, em_OFA, em_IAF, em_OGA, em_IAK, em_SZK, em_SU, em_RU, - em_EI, em_DI, em_INTH, em_INTL, em_NOP + mILL, + mTAB, mTBA, mTAY, mTYA, mTEAB, mTABE, mTEPA, mTXA, mTAX, + mLXY, mLZ, mINY, mDEY, mLCPS, mSADR, + mTAM, mXAM, mXAMD, mXAMI, + mLA, mAM, mAMC, mAMCS, mA, mSC, mRC, mSZC, mCMA, mRL, mRR, + mSB, mRB, mSZB, mSEAM, mSEY, + mTLA, mTHA, mTAJ, mXAL, mXAH, mLC7, mDEC, mSHL, mRHL, mCPA, mCPAS, mCPAE, mSZJ, + mT1AB, mTRAB, mT2AB, mTAB1, mTABR, mTAB2, mTVA, mTWA, mSNZ1, mSNZ2, + mBA, mSP, mB, mBM, mRT, mRTS, mRTI, + mCLD, mCLS, mCLDS, mSD, mRD, mSZD, mOSAB, mOSPA, mOSE, mIAS, mOFA, mIAF, mOGA, mIAK, mSZK, mSU, mRU, + mEI, mDI, mINTH, mINTL, mNOP }; - static const char *const em_name[]; - static const u8 em_bits[]; - static const u32 em_flags[]; + static const char *const s_name[]; + static const u8 s_bits[]; + static const u32 s_flags[]; static const u8 m58846_opmap[0xc0]; }; -#endif +#endif // MAME_CPU_MELPS4_MELPS4D_H diff --git a/src/devices/cpu/mn1400/mn1400d.cpp b/src/devices/cpu/mn1400/mn1400d.cpp new file mode 100644 index 00000000000..1d3bde6a04a --- /dev/null +++ b/src/devices/cpu/mn1400/mn1400d.cpp @@ -0,0 +1,113 @@ +// license:BSD-3-Clause +// copyright-holders:hap +/* + + Matsushita (Panasonic) MN1400 MCU family disassembler + +*/ + +#include "emu.h" +#include "mn1400d.h" + +const char *const mn1400_disassembler::s_mnemonics[] = +{ + "?", + "L", "LD", "LI", "LIC", "LDC", "ST", "STD", "STIC", "STDC", + "LX", "LY", "TAX", "TAY", "TYA", "TACU", "TACL", "TCAU", "TCAL", + "NOP", "AND", "ANDI", "OR", "XOR", "A", "AI", "CPL", "C", "CI", "CY", + "SL", "ICY", "DCY", "ICM", "DCM", "SM", "RM", "TB", + "INA", "INB", "OTD", "OTMD", "OTE", "OTIE", "RCO", "SCO", "CCO", + "RC", "RP", "SC", "SP", + "BS0", "BS1", "BS01", "BSN0", "BSN1", "BSN01", + "BP", "BC", "BZ", "BPC", "BPZ", "BCZ", "BPCZ", + "BNP", "BNC", "BNZ", "BNPC", "BNPZ", "BNCZ", "BNPCZ", + "JMP", "CAL", "RET", "EC", "DC" +}; + +// number of bits per opcode parameter +const u8 mn1400_disassembler::s_bits[] = +{ + 0, + 0, 2, 4, 0, 0, 0, 2, 0, 0, + 3, 4, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 4, 0, 0, 0, 4, 0, 0, 4, 4, + 0, 0, 0, 0, 0, 4, 4, 4, + 0, 0, 0, 0, 0, 4, 0, 0, 0, + 0, 0, 0, 0, + 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, + 11, 11, 0, 0, 0 +}; + +const u32 mn1400_disassembler::s_flags[] = +{ + 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, + 0, STEP_OVER, STEP_OUT, 0, 0 +}; + + +const u8 mn1400_disassembler::mn1400_mnemonic[0x100] = +{ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTAX, mTYA, mTAY, mAND, mOR, mXOR, mA, mCPL, mC, mST, mSTIC, mSTDC, mL, mLIC, mLDC, // 0 + mOTE, mOTMD, mOTD, mCCO, mINA, mINB, mRCO, mSCO, mTACL, mTACU, mTCAL, mTCAU, mDC, mEC, mSL, mRET, // 1 + mLD, mLD, mLD, mLD, mSTD, mSTD, mSTD, mSTD, mRC, mRP, mSC, mSP, mICY, mDCY, mICM, mDCM, // 2 + mLX, mLX, mLX, mLX, mLX, mLX, mLX, mLX, 0, 0, mBSN0, mBS0, mBSN1, mBS1, mBSN01,mBS01, // 3 + + mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, // 4 + mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, // 5 + mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, mLY, // 6 + mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, mANDI, // 7 + + mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, mAI, // 8 + mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, mCI, // 9 + mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, mCY, // A + mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, mSM, // B + + mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, mRM, // C + mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, mTB, // D + 0, 0, mBNZ, mBZ, mBNC, mBC, mBNCZ, mBCZ, mBNP, mBP, mBNPZ, mBPZ, mBNPC, mBPC, mBNPCZ,mBPCZ, // E + mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE, mOTIE // F +}; + + +offs_t mn1400_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) +{ + offs_t pos = pc; + u8 op = opcodes.r8(pos++); + u8 instr = mn1400_mnemonic[op]; + u8 bits = s_bits[instr]; + + util::stream_format(stream,"%-8s", s_mnemonics[instr]); + + // opcode parameter + if (bits != 0) + { + if (bits >= 8) + { + u16 param = opcodes.r8(pos++); + if (bits > 8) + param |= (op & ((1 << (bits - 8)) - 1)) << 8; + else + param |= pc & 0x700; + util::stream_format(stream, "$%03X", param); + } + else + { + u8 param = op & ((1 << bits) - 1); + util::stream_format(stream, "%d", param); + } + } + + return (pos - pc) | s_flags[instr] | SUPPORTED; +} diff --git a/src/devices/cpu/mn1400/mn1400d.h b/src/devices/cpu/mn1400/mn1400d.h new file mode 100644 index 00000000000..9e6fbb8fc60 --- /dev/null +++ b/src/devices/cpu/mn1400/mn1400d.h @@ -0,0 +1,47 @@ +// license:BSD-3-Clause +// copyright-holders:hap +/* + + Matsushita (Panasonic) MN1400 MCU family disassembler + +*/ + + +#ifndef MAME_CPU_MN1400_MN1400D_H +#define MAME_CPU_MN1400_MN1400D_H + +#pragma once + +class mn1400_disassembler : public util::disasm_interface +{ +public: + mn1400_disassembler() = default; + virtual ~mn1400_disassembler() = default; + + virtual u32 opcode_alignment() const override { return 1; } + + virtual offs_t disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) override; + +private: + enum e_mnemonics + { + mILL, + mL, mLD, mLI, mLIC, mLDC, mST, mSTD, mSTIC, mSTDC, + mLX, mLY, mTAX, mTAY, mTYA, mTACU, mTACL, mTCAU, mTCAL, + mNOP, mAND, mANDI, mOR, mXOR, mA, mAI, mCPL, mC, mCI, mCY, + mSL, mICY, mDCY, mICM, mDCM, mSM, mRM, mTB, + mINA, mINB, mOTD, mOTMD, mOTE, mOTIE, mRCO, mSCO, mCCO, + mRC, mRP, mSC, mSP, + mBS0, mBS1, mBS01, mBSN0, mBSN1, mBSN01, + mBP, mBC, mBZ, mBPC, mBPZ, mBCZ, mBPCZ, + mBNP, mBNC, mBNZ, mBNPC, mBNPZ, mBNCZ, mBNPCZ, + mJMP, mCAL, mRET, mEC, mDC + }; + + static const char *const s_mnemonics[]; + static const u8 s_bits[]; + static const u32 s_flags[]; + static const u8 mn1400_mnemonic[0x100]; +}; + +#endif // MAME_CPU_MN1400_MN1400D_H diff --git a/src/devices/cpu/pps41/pps41d.cpp b/src/devices/cpu/pps41/pps41d.cpp index ef2bfbba148..a4b91dd95cc 100644 --- a/src/devices/cpu/pps41/pps41d.cpp +++ b/src/devices/cpu/pps41/pps41d.cpp @@ -110,7 +110,7 @@ offs_t pps41_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostrea param ^= mask; // memory bit opcodes are 1,2,3,4 - if (instr == em_SB || instr == em_RB || instr == em_SKBF) + if (instr == mSB || instr == mRB || instr == mSKBF) param++; // disassemble it @@ -131,26 +131,26 @@ offs_t pps41_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostrea const u8 mm76_disassembler::mm76_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_SKNC, em_RT, em_RTSK, em_INT0L,em_INT1H,em_DIN1, em_DIN0, em_SKBF, em_SKBF, em_SKBF, em_SKBF, em_SC, em_RC, em_SEG1, em_SEG2, // 0 - em_SB, em_SB, em_SB, em_SB, em_RB, em_RB, em_RB, em_RB, em_OA, em_OB, em_IAM, em_IBM, em_EOB2, em_EOB2, em_EOB2, em_EOB2, // 1 - em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, // 2 - em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, // 3 - - em_AC, em_ACSK, em_A, em_ASK, em_LBA, em_COM, em_XAB, em_SKMEA,em_ILL, em_ILL, em_I1, em_I2C, em_LSA, em_IOS, em_XAS, em_ILL, // 4 - em_L, em_L, em_L, em_L, em_XNSK, em_XNSK, em_XNSK, em_XNSK, em_X, em_X, em_X, em_X, em_XDSK, em_XDSK, em_XDSK, em_XDSK, // 5 - em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, // 6 - em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, // 7 - - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // 8 - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // 9 - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // A - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // B - - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, // C - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, // D - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, // E - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mSKNC, mRT, mRTSK, mINT0L,mINT1H,mDIN1, mDIN0, mSKBF, mSKBF, mSKBF, mSKBF, mSC, mRC, mSEG1, mSEG2, // 0 + mSB, mSB, mSB, mSB, mRB, mRB, mRB, mRB, mOA, mOB, mIAM, mIBM, mEOB2, mEOB2, mEOB2, mEOB2, // 1 + mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, // 2 + mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, // 3 + + mAC, mACSK, mA, mASK, mLBA, mCOM, mXAB, mSKMEA,mILL, mILL, mI1, mI2C, mLSA, mIOS, mXAS, mILL, // 4 + mL, mL, mL, mL, mXNSK, mXNSK, mXNSK, mXNSK, mX, mX, mX, mX, mXDSK, mXDSK, mXDSK, mXDSK, // 5 + mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, // 6 + mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, // 7 + + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // 8 + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // 9 + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // A + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // B + + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, // C + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, // D + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, // E + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT // F }; offs_t mm76_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -163,26 +163,26 @@ offs_t mm76_disassembler::disassemble(std::ostream &stream, offs_t pc, const dat const u8 mm78_disassembler::mm78_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_SKISL,em_SKNC, em_INT0H,em_INT1L,em_RC, em_SC, em_SAG, em_EOB3, em_EOB3, em_EOB3, em_EOB3, em_EOB3, em_EOB3, em_EOB3, em_EOB3, // 0 - em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, em_LB, // 1 - em_SB, em_SB, em_SB, em_SB, em_RB, em_RB, em_RB, em_RB, em_SKBF, em_SKBF, em_SKBF, em_SKBF, em_TAB, em_IOS, em_RTSK, em_RT, // 2 - em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, em_TR, // 3 - - em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, em_LAI, // 4 - em_L, em_L, em_L, em_L, em_XNSK, em_XNSK, em_XNSK, em_XNSK, em_XDSK, em_XDSK, em_XDSK, em_XDSK, em_X, em_X, em_X, em_X, // 5 - em_I1SK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, em_AISK, // 6 - em_SOS, em_ROS, em_IX, em_OX, em_XAS, em_LXA, em_LBA, em_COM, em_I2C, em_XAX, em_XAB, em_IOA, em_AC, em_ACSK, em_A, em_SKMEA,// 7 - - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // 8 - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // 9 - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // A - em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, em_TM, // B - - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, // C - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, // D - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, // E - em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T, em_T // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mSKISL,mSKNC, mINT0H,mINT1L,mRC, mSC, mSAG, mEOB3, mEOB3, mEOB3, mEOB3, mEOB3, mEOB3, mEOB3, mEOB3, // 0 + mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, mLB, // 1 + mSB, mSB, mSB, mSB, mRB, mRB, mRB, mRB, mSKBF, mSKBF, mSKBF, mSKBF, mTAB, mIOS, mRTSK, mRT, // 2 + mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, mTR, // 3 + + mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, mLAI, // 4 + mL, mL, mL, mL, mXNSK, mXNSK, mXNSK, mXNSK, mXDSK, mXDSK, mXDSK, mXDSK, mX, mX, mX, mX, // 5 + mI1SK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, mAISK, // 6 + mSOS, mROS, mIX, mOX, mXAS, mLXA, mLBA, mCOM, mI2C, mXAX, mXAB, mIOA, mAC, mACSK, mA, mSKMEA,// 7 + + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // 8 + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // 9 + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // A + mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, mTM, // B + + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, // C + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, // D + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, // E + mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT, mT // F }; offs_t mm78_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) diff --git a/src/devices/cpu/pps41/pps41d.h b/src/devices/cpu/pps41/pps41d.h index 4697d30dd42..8075ef1f09b 100644 --- a/src/devices/cpu/pps41/pps41d.h +++ b/src/devices/cpu/pps41/pps41d.h @@ -29,20 +29,20 @@ protected: enum e_mnemonics { // MM76/shared - em_ILL /* 0! */, - em_XAB, em_LBA, em_LB, em_EOB2, - em_SB, em_RB, em_SKBF, - em_XAS, em_LSA, - em_L, em_X, em_XDSK, em_XNSK, - em_A, em_AC, em_ACSK, em_ASK, em_COM, em_RC, em_SC, em_SKNC, em_LAI, em_AISK, - em_RT, em_RTSK, em_T, em_NOP, em_TL, em_TM, em_TML, em_TR, - em_SKMEA, em_SKBEI, em_SKAEI, - em_SOS, em_ROS, em_SKISL, em_IBM, em_OB, em_IAM, em_OA, em_IOS, em_I1, em_I2C, em_INT1H, em_DIN1, em_INT0L, em_DIN0, em_SEG1, em_SEG2, + mILL /* 0! */, + mXAB, mLBA, mLB, mEOB2, + mSB, mRB, mSKBF, + mXAS, mLSA, + mL, mX, mXDSK, mXNSK, + mA, mAC, mACSK, mASK, mCOM, mRC, mSC, mSKNC, mLAI, mAISK, + mRT, mRTSK, mT, mNOP, mTL, mTM, mTML, mTR, + mSKMEA, mSKBEI, mSKAEI, + mSOS, mROS, mSKISL, mIBM, mOB, mIAM, mOA, mIOS, mI1, mI2C, mINT1H, mDIN1, mINT0L, mDIN0, mSEG1, mSEG2, // MM78 differences - em_INT0H, em_INT1L, em_SAG, em_EOB3, em_TAB, - em_I1SK, em_IX, em_OX, em_LXA, em_XAX, em_IOA, - em_TLB, em_TMLB + mINT0H, mINT1L, mSAG, mEOB3, mTAB, + mI1SK, mIX, mOX, mLXA, mXAX, mIOA, + mTLB, mTMLB }; static const char *const s_name[]; diff --git a/src/devices/cpu/rw5000/rw5000d.cpp b/src/devices/cpu/rw5000/rw5000d.cpp index a37530b5dbc..ab980f9c5d3 100644 --- a/src/devices/cpu/rw5000/rw5000d.cpp +++ b/src/devices/cpu/rw5000/rw5000d.cpp @@ -88,7 +88,7 @@ offs_t rw5000_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostre param = 1 << param; // TDIN 0 is 4 - if (instr == em_TDIN && param == 0) + if (instr == mTDIN && param == 0) param = 4; // disassemble it @@ -97,17 +97,17 @@ offs_t rw5000_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostre if (bits > 0) { // exceptions for opcodes with 2 params - if (instr >= em_EXC0 && instr <= em_EXCM) + if (instr >= mEXC0 && instr <= mEXCM) { switch (instr) { - case em_EXC0: util::stream_format(stream, "%d,0", param); break; - case em_EXCP: util::stream_format(stream, "%d,+1", param); break; - case em_EXCM: util::stream_format(stream, "%d,-1", param); break; + case mEXC0: util::stream_format(stream, "%d,0", param); break; + case mEXCP: util::stream_format(stream, "%d,+1", param); break; + case mEXCM: util::stream_format(stream, "%d,-1", param); break; default: break; } } - else if (instr == em_ADD) + else if (instr == mADD) { if (param & 1) flags |= STEP_COND; @@ -120,14 +120,14 @@ offs_t rw5000_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostre default: break; } } - else if (instr >= em_LB0 && instr <= em_LB11) + else if (instr >= mLB0 && instr <= mLB11) { - int param2 = (instr == em_LB0) ? 0 : (6 + instr - em_LB0); + int param2 = (instr == mLB0) ? 0 : (6 + instr - mLB0); util::stream_format(stream, "%d,%d", param, param2); } - else if (instr == em_TRA0 || instr == em_TRA1) + else if (instr == mTRA0 || instr == mTRA1) { - int param2 = (instr == em_TRA1) ? 1 : 0; + int param2 = (instr == mTRA1) ? 1 : 0; util::stream_format(stream, "%d,$%02X", param2, param); } else @@ -142,26 +142,26 @@ offs_t rw5000_common_disassembler::common_disasm(const u8 *lut_opmap, std::ostre const u8 a5000_disassembler::a5000_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_TC, 0, em_TKB, em_TDIN, em_TDIN, em_TDIN, em_TDIN, em_TM, em_TM, em_TM, em_TM, 0, 0, 0, 0, // 0 - em_SM, em_SM, em_SM, em_SM, em_RSM, em_RSM, em_RSM, em_RSM, em_RET, em_RET, em_RET, em_RET, 0, 0, 0, 0, // 1 - em_LB7, em_LB7, em_LB7, em_LB7, em_LB10, em_LB10, em_LB10, em_LB10, em_LB9, em_LB9, em_LB9, em_LB9, em_LB8, em_LB8, em_LB8, em_LB8, // 2 - em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, 0, em_RSC, 0, em_SC, em_LB0, em_LB0, em_LB0, em_LB0, // 3 - - em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, // 4 - em_LDA, em_LDA, em_LDA, em_LDA, em_EXCP, em_EXCP, em_EXCP, em_EXCP, em_EXC0, em_EXC0, em_EXC0, em_EXC0, em_EXCM, em_EXCM, em_EXCM, em_EXCM, // 5 - em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_READ, // 6 - em_ADD, em_ADD, em_ADD, em_ADD, em_KSEG, 0, em_MTD, em_ATB, em_COMP, em_COMP, em_COMP, em_COMP, em_TAM, em_TAM, em_TAM, em_TAM, // 7 - - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 8 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 9 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // A - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // B - - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // C - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // D - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // E - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTC, 0, mTKB, mTDIN, mTDIN, mTDIN, mTDIN, mTM, mTM, mTM, mTM, 0, 0, 0, 0, // 0 + mSM, mSM, mSM, mSM, mRSM, mRSM, mRSM, mRSM, mRET, mRET, mRET, mRET, 0, 0, 0, 0, // 1 + mLB7, mLB7, mLB7, mLB7, mLB10, mLB10, mLB10, mLB10, mLB9, mLB9, mLB9, mLB9, mLB8, mLB8, mLB8, mLB8, // 2 + mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, 0, mRSC, 0, mSC, mLB0, mLB0, mLB0, mLB0, // 3 + + mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 4 + mLDA, mLDA, mLDA, mLDA, mEXCP, mEXCP, mEXCP, mEXCP, mEXC0, mEXC0, mEXC0, mEXC0, mEXCM, mEXCM, mEXCM, mEXCM, // 5 + mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mREAD, // 6 + mADD, mADD, mADD, mADD, mKSEG, 0, mMTD, mATB, mCOMP, mCOMP, mCOMP, mCOMP, mTAM, mTAM, mTAM, mTAM, // 7 + + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 8 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 9 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // A + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // B + + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // C + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // D + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // E + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // F }; offs_t a5000_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -174,26 +174,26 @@ offs_t a5000_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 a5500_disassembler::a5500_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_TC, 0, em_TKB, em_TDIN, em_TDIN, em_TDIN, em_TDIN, em_TM, em_TM, em_TM, em_TM, em_SC, em_RSC, 0, 0, // 0 - em_SM, em_SM, em_SM, em_SM, em_RSM, em_RSM, em_RSM, em_RSM, em_RET, em_RET, em_RET, em_RET, em_LB11, em_LB11, em_LB11, em_LB11, // 1 - em_LB7, em_LB7, em_LB7, em_LB7, em_LB10, em_LB10, em_LB10, em_LB10, em_LB9, em_LB9, em_LB9, em_LB9, em_LB8, em_LB8, em_LB8, em_LB8, // 2 - em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_LB0, em_LB0, em_LB0, em_LB0, // 3 - - em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, // 4 - em_LDA, em_LDA, em_LDA, em_LDA, em_EXCP, em_EXCP, em_EXCP, em_EXCP, em_EXC0, em_EXC0, em_EXC0, em_EXC0, em_EXCM, em_EXCM, em_EXCM, em_EXCM, // 5 - em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_READ, // 6 - em_ADD, em_ADD, em_ADD, em_ADD, em_KSEG, 0, em_MTD, em_ATB, em_COMP, em_COMP, em_COMP, em_COMP, em_TAM, em_TAM, em_TAM, em_TAM, // 7 - - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 8 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 9 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // A - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // B - - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // C - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // D - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // E - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTC, 0, mTKB, mTDIN, mTDIN, mTDIN, mTDIN, mTM, mTM, mTM, mTM, mSC, mRSC, 0, 0, // 0 + mSM, mSM, mSM, mSM, mRSM, mRSM, mRSM, mRSM, mRET, mRET, mRET, mRET, mLB11, mLB11, mLB11, mLB11, // 1 + mLB7, mLB7, mLB7, mLB7, mLB10, mLB10, mLB10, mLB10, mLB9, mLB9, mLB9, mLB9, mLB8, mLB8, mLB8, mLB8, // 2 + mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mLB0, mLB0, mLB0, mLB0, // 3 + + mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 4 + mLDA, mLDA, mLDA, mLDA, mEXCP, mEXCP, mEXCP, mEXCP, mEXC0, mEXC0, mEXC0, mEXC0, mEXCM, mEXCM, mEXCM, mEXCM, // 5 + mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mREAD, // 6 + mADD, mADD, mADD, mADD, mKSEG, 0, mMTD, mATB, mCOMP, mCOMP, mCOMP, mCOMP, mTAM, mTAM, mTAM, mTAM, // 7 + + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 8 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 9 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // A + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // B + + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // C + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // D + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // E + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // F }; offs_t a5500_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -206,26 +206,26 @@ offs_t a5500_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 b5000_disassembler::b5000_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_TC, em_TKB, em_TKBS, em_TDIN, em_TDIN, em_TDIN, em_TDIN, em_TM, em_TM, em_TM, em_TM, 0, 0, 0, 0, // 0 - em_SM, em_SM, em_SM, em_SM, em_RSM, em_RSM, em_RSM, em_RSM, em_RET, em_RET, em_RET, em_RET, 0, 0, 0, 0, // 1 - em_LB7, em_LB7, em_LB7, em_LB7, em_LB10, em_LB10, em_LB10, em_LB10, em_LB9, em_LB9, em_LB9, em_LB9, em_LB8, em_LB8, em_LB8, em_LB8, // 2 - em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, 0, em_RSC, 0, em_SC, em_LB0, em_LB0, em_LB0, em_LB0, // 3 - - em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, // 4 - em_LDA, em_LDA, em_LDA, em_LDA, em_EXCP, em_EXCP, em_EXCP, em_EXCP, em_EXC0, em_EXC0, em_EXC0, em_EXC0, em_EXCM, em_EXCM, em_EXCM, em_EXCM, // 5 - em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_READ, // 6 - em_ADD, em_ADD, em_ADD, em_ADD, em_KSEG, 0, 0, em_ATB, em_COMP, em_COMP, em_COMP, em_COMP, em_TAM, em_TAM, em_TAM, em_TAM, // 7 - - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 8 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 9 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // A - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // B - - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // C - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // D - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // E - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTC, mTKB, mTKBS, mTDIN, mTDIN, mTDIN, mTDIN, mTM, mTM, mTM, mTM, 0, 0, 0, 0, // 0 + mSM, mSM, mSM, mSM, mRSM, mRSM, mRSM, mRSM, mRET, mRET, mRET, mRET, 0, 0, 0, 0, // 1 + mLB7, mLB7, mLB7, mLB7, mLB10, mLB10, mLB10, mLB10, mLB9, mLB9, mLB9, mLB9, mLB8, mLB8, mLB8, mLB8, // 2 + mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, 0, mRSC, 0, mSC, mLB0, mLB0, mLB0, mLB0, // 3 + + mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 4 + mLDA, mLDA, mLDA, mLDA, mEXCP, mEXCP, mEXCP, mEXCP, mEXC0, mEXC0, mEXC0, mEXC0, mEXCM, mEXCM, mEXCM, mEXCM, // 5 + mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mREAD, // 6 + mADD, mADD, mADD, mADD, mKSEG, 0, 0, mATB, mCOMP, mCOMP, mCOMP, mCOMP, mTAM, mTAM, mTAM, mTAM, // 7 + + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 8 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 9 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // A + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // B + + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // C + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // D + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // E + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // F }; offs_t b5000_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -238,26 +238,26 @@ offs_t b5000_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 b5500_disassembler::b5500_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_TC, em_TKB, em_TKBS, em_TDIN, em_TDIN, em_TDIN, em_TDIN, em_TM, em_TM, em_TM, em_TM, em_SC, em_RSC, 0, 0, // 0 - em_SM, em_SM, em_SM, em_SM, em_RSM, em_RSM, em_RSM, em_RSM, em_RET, em_RET, em_RET, em_RET, em_LB11, em_LB11, em_LB11, em_LB11, // 1 - em_LB7, em_LB7, em_LB7, em_LB7, em_LB10, em_LB10, em_LB10, em_LB10, em_LB9, em_LB9, em_LB9, em_LB9, em_LB8, em_LB8, em_LB8, em_LB8, // 2 - em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_LB0, em_LB0, em_LB0, em_LB0, // 3 - - em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, // 4 - em_LDA, em_LDA, em_LDA, em_LDA, em_EXCP, em_EXCP, em_EXCP, em_EXCP, em_EXC0, em_EXC0, em_EXC0, em_EXC0, em_EXCM, em_EXCM, em_EXCM, em_EXCM, // 5 - em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_READ, // 6 - em_ADD, em_ADD, em_ADD, em_ADD, em_KSEG, 0, 0, em_ATB, em_COMP, em_COMP, em_COMP, em_COMP, em_TAM, em_TAM, em_TAM, em_TAM, // 7 - - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 8 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 9 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // A - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // B - - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // C - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // D - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // E - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTC, mTKB, mTKBS, mTDIN, mTDIN, mTDIN, mTDIN, mTM, mTM, mTM, mTM, mSC, mRSC, 0, 0, // 0 + mSM, mSM, mSM, mSM, mRSM, mRSM, mRSM, mRSM, mRET, mRET, mRET, mRET, mLB11, mLB11, mLB11, mLB11, // 1 + mLB7, mLB7, mLB7, mLB7, mLB10, mLB10, mLB10, mLB10, mLB9, mLB9, mLB9, mLB9, mLB8, mLB8, mLB8, mLB8, // 2 + mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mLB0, mLB0, mLB0, mLB0, // 3 + + mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 4 + mLDA, mLDA, mLDA, mLDA, mEXCP, mEXCP, mEXCP, mEXCP, mEXC0, mEXC0, mEXC0, mEXC0, mEXCM, mEXCM, mEXCM, mEXCM, // 5 + mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mREAD, // 6 + mADD, mADD, mADD, mADD, mKSEG, 0, 0, mATB, mCOMP, mCOMP, mCOMP, mCOMP, mTAM, mTAM, mTAM, mTAM, // 7 + + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 8 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 9 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // A + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // B + + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // C + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // D + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // E + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // F }; offs_t b5500_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -270,26 +270,26 @@ offs_t b5500_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 b6000_disassembler::b6000_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_TC, em_TKB, em_TKBS, em_TDIN, em_TDIN, em_TDIN, em_TDIN, em_TM, em_TM, em_TM, em_TM, 0, 0, 0, 0, // 0 - em_SM, em_SM, em_SM, em_SM, em_RSM, em_RSM, em_RSM, em_RSM, em_RET, em_RET, em_RET, em_RET, 0, 0, 0, 0, // 1 - em_LB7, em_LB7, em_LB7, em_LB7, em_LB10, em_LB10, em_LB10, em_LB10, em_LB9, em_LB9, em_LB9, em_LB9, em_LB8, em_LB8, em_LB8, em_LB8, // 2 - em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, 0, em_RSC, 0, em_SC, em_LB0, em_LB0, em_LB0, em_LB0, // 3 - - em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, // 4 - em_LDA, em_LDA, em_LDA, em_LDA, em_EXCP, em_EXCP, em_EXCP, em_EXCP, em_EXC0, em_EXC0, em_EXC0, em_EXC0, em_EXCM, em_EXCM, em_EXCM, em_EXCM, // 5 - em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_READ, // 6 - em_ADD, em_ADD, em_ADD, em_ADD, em_KSEG, 0, em_ATBZ, em_ATB, em_COMP, em_COMP, em_COMP, em_COMP, em_TAM, em_TAM, em_TAM, em_TAM, // 7 - - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 8 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 9 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // A - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // B - - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // C - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // D - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // E - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTC, mTKB, mTKBS, mTDIN, mTDIN, mTDIN, mTDIN, mTM, mTM, mTM, mTM, 0, 0, 0, 0, // 0 + mSM, mSM, mSM, mSM, mRSM, mRSM, mRSM, mRSM, mRET, mRET, mRET, mRET, 0, 0, 0, 0, // 1 + mLB7, mLB7, mLB7, mLB7, mLB10, mLB10, mLB10, mLB10, mLB9, mLB9, mLB9, mLB9, mLB8, mLB8, mLB8, mLB8, // 2 + mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, 0, mRSC, 0, mSC, mLB0, mLB0, mLB0, mLB0, // 3 + + mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 4 + mLDA, mLDA, mLDA, mLDA, mEXCP, mEXCP, mEXCP, mEXCP, mEXC0, mEXC0, mEXC0, mEXC0, mEXCM, mEXCM, mEXCM, mEXCM, // 5 + mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mREAD, // 6 + mADD, mADD, mADD, mADD, mKSEG, 0, mATBZ, mATB, mCOMP, mCOMP, mCOMP, mCOMP, mTAM, mTAM, mTAM, mTAM, // 7 + + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 8 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 9 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // A + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // B + + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // C + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // D + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // E + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // F }; offs_t b6000_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) @@ -302,26 +302,26 @@ offs_t b6000_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 b6100_disassembler::b6100_opmap[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - em_NOP, em_TC, em_TKB, em_TKBS, em_TDIN, em_TDIN, em_TDIN, em_TDIN, em_TM, em_TM, em_TM, em_TM, em_SC, em_RSC, 0, 0, // 0 - em_SM, em_SM, em_SM, em_SM, em_RSM, em_RSM, em_RSM, em_RSM, em_RET, em_RET, em_RET, em_RET, em_LB11, em_LB11, em_LB11, em_LB11, // 1 - em_LB7, em_LB7, em_LB7, em_LB7, em_LB10, em_LB10, em_LB10, em_LB10, em_LB9, em_LB9, em_LB9, em_LB9, em_LB8, em_LB8, em_LB8, em_LB8, // 2 - em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_TL, em_LB0, em_LB0, em_LB0, em_LB0, // 3 - - em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, em_LAX, // 4 - em_LDA, em_LDA, em_LDA, em_LDA, em_EXCP, em_EXCP, em_EXCP, em_EXCP, em_EXC0, em_EXC0, em_EXC0, em_EXC0, em_EXCM, em_EXCM, em_EXCM, em_EXCM, // 5 - em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_ADX, em_READ, // 6 - em_ADD, em_ADD, em_ADD, em_ADD, em_KSEG, 0, em_ATBZ, em_ATB, em_COMP, em_COMP, em_COMP, em_COMP, em_TAM, em_TAM, em_TAM, em_TAM, // 7 - - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 8 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // 9 - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // A - em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, em_TRA0, // B - - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // C - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // D - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // E - em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, em_TRA1, // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mTC, mTKB, mTKBS, mTDIN, mTDIN, mTDIN, mTDIN, mTM, mTM, mTM, mTM, mSC, mRSC, 0, 0, // 0 + mSM, mSM, mSM, mSM, mRSM, mRSM, mRSM, mRSM, mRET, mRET, mRET, mRET, mLB11, mLB11, mLB11, mLB11, // 1 + mLB7, mLB7, mLB7, mLB7, mLB10, mLB10, mLB10, mLB10, mLB9, mLB9, mLB9, mLB9, mLB8, mLB8, mLB8, mLB8, // 2 + mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mTL, mLB0, mLB0, mLB0, mLB0, // 3 + + mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 4 + mLDA, mLDA, mLDA, mLDA, mEXCP, mEXCP, mEXCP, mEXCP, mEXC0, mEXC0, mEXC0, mEXC0, mEXCM, mEXCM, mEXCM, mEXCM, // 5 + mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mREAD, // 6 + mADD, mADD, mADD, mADD, mKSEG, 0, mATBZ, mATB, mCOMP, mCOMP, mCOMP, mCOMP, mTAM, mTAM, mTAM, mTAM, // 7 + + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 8 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // 9 + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // A + mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, mTRA0, // B + + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // C + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // D + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // E + mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, mTRA1, // F }; offs_t b6100_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer ¶ms) diff --git a/src/devices/cpu/rw5000/rw5000d.h b/src/devices/cpu/rw5000/rw5000d.h index 889c84853db..87e6cb3dca4 100644 --- a/src/devices/cpu/rw5000/rw5000d.h +++ b/src/devices/cpu/rw5000/rw5000d.h @@ -28,14 +28,14 @@ protected: // opcode mnemonics enum e_mnemonics { - em_ILL, - em_NOP, em_RSC, em_SC, em_TC, em_TAM, - em_LAX, em_ADX, em_COMP, em_ATB, em_ATBZ, - em_LDA, em_EXC0, em_EXCP, em_EXCM, em_ADD, - em_LB0, em_LB7, em_LB8, em_LB9, em_LB10, em_LB11, - em_RSM, em_SM, em_TM, - em_TL, em_TRA0, em_TRA1, em_RET, - em_TKB, em_TKBS, em_TDIN, em_READ, em_KSEG, em_MTD + mILL, + mNOP, mRSC, mSC, mTC, mTAM, + mLAX, mADX, mCOMP, mATB, mATBZ, + mLDA, mEXC0, mEXCP, mEXCM, mADD, + mLB0, mLB7, mLB8, mLB9, mLB10, mLB11, + mRSM, mSM, mTM, + mTL, mTRA0, mTRA1, mRET, + mTKB, mTKBS, mTDIN, mREAD, mKSEG, mMTD }; static const char *const s_name[]; diff --git a/src/devices/cpu/sm510/sm510d.cpp b/src/devices/cpu/sm510/sm510d.cpp index 9e02a4227ef..c02ddaed8fe 100644 --- a/src/devices/cpu/sm510/sm510d.cpp +++ b/src/devices/cpu/sm510/sm510d.cpp @@ -199,7 +199,7 @@ offs_t sm510_common_disassembler::common_disasm(const u8 *lut_mnemonic, const u8 const u8 sm510_disassembler::sm510_mnemonic[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F mSKIP, mATBP, mSBM, mATPL, mRM, mRM, mRM, mRM, mADD, mADD11,mCOMA, mEXBLA,mSM, mSM, mSM, mSM, // 0 mEXC, mEXC, mEXC, mEXC, mEXCI, mEXCI, mEXCI, mEXCI, mLDA, mLDA, mLDA, mLDA, mEXCD, mEXCD, mEXCD, mEXCD, // 1 mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 2 @@ -231,7 +231,7 @@ offs_t sm510_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 sm511_disassembler::sm511_mnemonic[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F mROT, mDTA, mSBM, mATPL, mRM, mRM, mRM, mRM, mADD, mADD11,mCOMA, mEXBLA,mSM, mSM, mSM, mSM, // 0 mEXC, mEXC, mEXC, mEXC, mEXCI, mEXCI, mEXCI, mEXCI, mLDA, mLDA, mLDA, mLDA, mEXCD, mEXCD, mEXCD, mEXCD, // 1 mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 2 @@ -273,7 +273,7 @@ offs_t sm511_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 sm500_disassembler::sm500_mnemonic[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F mSKIP, mATR, mEXKSA,mATBP, mRM, mRM, mRM, mRM, mADD, mADDC, mCOMA, mEXBLA,mSM, mSM, mSM, mSM, // 0 mEXC, mEXC, mEXC, mEXC, mEXCI, mEXCI, mEXCI, mEXCI, mLDA, mLDA, mLDA, mLDA, mEXCD, mEXCD, mEXCD, mEXCD, // 1 mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 2 @@ -315,7 +315,7 @@ offs_t sm500_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 sm5a_disassembler::sm5a_mnemonic[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F mSKIP, mATR, mSBM, mATBP, mRM, mRM, mRM, mRM, mADD, mADDC, mCOMA, mEXBLA,mSM, mSM, mSM, mSM, // 0 mEXC, mEXC, mEXC, mEXC, mEXCI, mEXCI, mEXCI, mEXCI, mLDA, mLDA, mLDA, mLDA, mEXCD, mEXCD, mEXCD, mEXCD, // 1 mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 2 @@ -357,7 +357,7 @@ offs_t sm5a_disassembler::disassemble(std::ostream &stream, offs_t pc, const dat const u8 sm530_disassembler::sm530_mnemonic[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F mSKIP, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, // 0 mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, mLAX, // 1 mLDA, mLDA, mLDA, mLDA, mEXC, mEXC, mEXC, mEXC, mEXCI, mEXCI, mEXCI, mEXCI, mEXCD, mEXCD, mEXCD, mEXCD, // 2 @@ -389,7 +389,7 @@ offs_t sm530_disassembler::disassemble(std::ostream &stream, offs_t pc, const da const u8 sm590_disassembler::sm590_mnemonic[0x100] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ +// 0 1 2 3 4 5 6 7 8 9 A B C D E F mNOP, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, mADX, // 0 mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, mTAX, // 1 mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, mLBLX, // 2 diff --git a/src/devices/cpu/tms1000/tms1k_dasm.cpp b/src/devices/cpu/tms1000/tms1k_dasm.cpp index 9ed183a778c..3aeb2d2bac9 100644 --- a/src/devices/cpu/tms1000/tms1k_dasm.cpp +++ b/src/devices/cpu/tms1000/tms1k_dasm.cpp @@ -137,222 +137,222 @@ const u8 tms1000_base_disassembler::s_bits[] = const u8 tms1000_disassembler::tms1000_mnemonic[256] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x00 */ - zCOMX, zAC0AC, zYNEA, zTAM, zTAMZA, zAC0AC, zAC0AC, zDAN, zTKA, zKNEZ, zTDO, zCLO, zRSTR, zSETR, zIA, zRETN, // 0 - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 1 - zTAMIY, zTMA, zTMY, zTYA, zTAY, zAMAAC, zMNEZ, zSAMAN, zIMAC, zALEM, zDMAN, zIYC, zDYN, zCPAIZ, zXMA, zCLA, // 2 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, zTBIT, zTBIT, zTBIT, zTBIT, zLDX2, zLDX2, zLDX2, zLDX2, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, // 7 - /* 0x80 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 8 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 9 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // A - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x00 + mCOMX, mAC0AC, mYNEA, mTAM, mTAMZA, mAC0AC, mAC0AC, mDAN, mTKA, mKNEZ, mTDO, mCLO, mRSTR, mSETR, mIA, mRETN, // 0 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 1 + mTAMIY, mTMA, mTMY, mTYA, mTAY, mAMAAC, mMNEZ, mSAMAN, mIMAC, mALEM, mDMAN, mIYC, mDYN, mCPAIZ, mXMA, mCLA, // 2 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, mTBIT, mTBIT, mTBIT, mTBIT, mLDX2, mLDX2, mLDX2, mLDX2, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, // 7 + // 0x80 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 8 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 9 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // A + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 tms1100_disassembler::tms1100_mnemonic[256] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x00 */ - zMNEA, zALEM, zYNEA, zXMA, zDYN, zIYC, zAMAAC, zDMAN, zTKA, zCOMX, zTDO, zCOMC, zRSTR, zSETR, zKNEZ, zRETN, // 0 - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 1 - zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAMZA, zTAM, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, // 2 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, zTBIT, zTBIT, zTBIT, zTBIT, zSAMAN, zCPAIZ, zIMAC, zMNEZ, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zCLA, // 7 - /* 0x80 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 8 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 9 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // A - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x00 + mMNEA, mALEM, mYNEA, mXMA, mDYN, mIYC, mAMAAC, mDMAN, mTKA, mCOMX, mTDO, mCOMC, mRSTR, mSETR, mKNEZ, mRETN, // 0 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 1 + mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAMZA, mTAM, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, // 2 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, mTBIT, mTBIT, mTBIT, mTBIT, mSAMAN, mCPAIZ, mIMAC, mMNEZ, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mCLA, // 7 + // 0x80 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 8 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 9 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // A + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 tms1400_disassembler::tms1400_mnemonic[256] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x00 */ - zMNEA, zALEM, zYNEA, zXMA, zDYN, zIYC, zAMAAC, zDMAN, zTKA, zCOMX, zTDO, zTPC, zRSTR, zSETR, zKNEZ, zRETN, // 0 - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 1 - zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAMZA, zTAM, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, // 2 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, zTBIT, zTBIT, zTBIT, zTBIT, zSAMAN, zCPAIZ, zIMAC, zMNEZ, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zCLA, // 7 - /* 0x80 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 8 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 9 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // A - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x00 + mMNEA, mALEM, mYNEA, mXMA, mDYN, mIYC, mAMAAC, mDMAN, mTKA, mCOMX, mTDO, mTPC, mRSTR, mSETR, mKNEZ, mRETN, // 0 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 1 + mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAMZA, mTAM, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, // 2 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, mTBIT, mTBIT, mTBIT, mTBIT, mSAMAN, mCPAIZ, mIMAC, mMNEZ, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mCLA, // 7 + // 0x80 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 8 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 9 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // A + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 tms2100_disassembler::tms2100_mnemonic[256] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x00 */ - zMNEA, zALEM, zYNEA, zXMA, zDYN, zIYC, zAMAAC, zDMAN, zTKA, zTAX, zTDO, zCOMC, zRSTR, zSETR, zTADM, zRETN, // 0 - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 1 - zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAC, zTAM, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, // 2 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, zTBIT, zTBIT, zTBIT, zTBIT, zSAMAN, zCPAIZ, zIMAC, zMNEZ, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zAC1AC, zAC1AC, zAC1AC, zTCA, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zTRA, zAC1AC, zAC1AC, zAC1AC, zCLA, // 7 - /* 0x80 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 8 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 9 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // A - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x00 + mMNEA, mALEM, mYNEA, mXMA, mDYN, mIYC, mAMAAC, mDMAN, mTKA, mTAX, mTDO, mCOMC, mRSTR, mSETR, mTADM, mRETN, // 0 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 1 + mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAC, mTAM, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, // 2 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, mTBIT, mTBIT, mTBIT, mTBIT, mSAMAN, mCPAIZ, mIMAC, mMNEZ, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mAC1AC, mAC1AC, mAC1AC, mTCA, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mTRA, mAC1AC, mAC1AC, mAC1AC, mCLA, // 7 + // 0x80 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 8 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 9 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // A + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 tms2400_disassembler::tms2400_mnemonic[256] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x00 */ - zMNEA, zALEM, zYNEA, zXMA, zDYN, zIYC, zAMAAC, zDMAN, zTKA, zTAX, zTDO, zTPC, zRSTR, zSETR, zTADM, zRETN, // 0 - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 1 - zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAC, zTAM, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, // 2 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, zTBIT, zTBIT, zTBIT, zTBIT, zSAMAN, zCPAIZ, zIMAC, zMNEZ, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zAC1AC, zAC1AC, zAC1AC, zTCA, zAC1AC, zCOMX, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zAC1AC, zTRA, zAC1AC, zTXA, zAC1AC, zCLA, // 7 - /* 0x80 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 8 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 9 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // A - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x00 + mMNEA, mALEM, mYNEA, mXMA, mDYN, mIYC, mAMAAC, mDMAN, mTKA, mTAX, mTDO, mTPC, mRSTR, mSETR, mTADM, mRETN, // 0 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 1 + mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAC, mTAM, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, // 2 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, mTBIT, mTBIT, mTBIT, mTBIT, mSAMAN, mCPAIZ, mIMAC, mMNEZ, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mAC1AC, mAC1AC, mAC1AC, mTCA, mAC1AC, mCOMX, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mAC1AC, mTRA, mAC1AC, mTXA, mAC1AC, mCLA, // 7 + // 0x80 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 8 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 9 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // A + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 smc1102_disassembler::smc1102_mnemonic[256] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x00 */ - zMNEA, zALEM, zYNEA, zXMA, zDYN, zIYC, zAMAAC, zDMAN, zTKA, zCOMX, zTASR, zCOMC, zRSTR, zSETR, zKNEZ, zRETN, // 0 - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 1 - zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAMZA, zTAM, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, zLDX3, // 2 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, zTBIT, zTBIT, zTBIT, zTBIT, zSAMAN, zCPAIZ, zIMAC, zMNEZ, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zAC1AC, zHALT, zTSG, zTSG, zINTEN, zINTDIS, zINTRTN, zAC1AC, zSELIN, zAC1AC, zAC1AC, zTMSET, zTSG, zTSG, zAC1AC, zCLA, // 7 - /* 0x80 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 8 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 9 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // A - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x00 + mMNEA, mALEM, mYNEA, mXMA, mDYN, mIYC, mAMAAC, mDMAN, mTKA, mCOMX, mTASR, mCOMC, mRSTR, mSETR, mKNEZ, mRETN, // 0 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 1 + mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAMZA, mTAM, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, mLDX3, // 2 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, mTBIT, mTBIT, mTBIT, mTBIT, mSAMAN, mCPAIZ, mIMAC, mMNEZ, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mAC1AC, mHALT, mTSG, mTSG, mINTEN, mINTDIS, mINTRTN, mAC1AC, mSELIN, mAC1AC, mAC1AC, mTMSET, mTSG, mTSG, mAC1AC, mCLA, // 7 + // 0x80 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 8 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 9 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // A + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 tms0980_disassembler::tms0980_mnemonic[512] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x000 */ - zCOMX, zALEM, zYNEA, zXMA, zDYN, zIYC, zCLA, zDMAN, zTKA, zMNEA, zTKM, 0, 0, zSETR, zKNEZ, 0, // 0 - zDMEA, zDNAA, zCCLA, zNDMEA, 0, zAMAAC, 0, 0, zCTMDYN, zXDA, 0, 0, 0, 0, 0, 0, // 1 - zTBIT, zTBIT, zTBIT, zTBIT, 0, 0, 0, 0, zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAMZA, zTAM, // 2 - zSAMAN, zCPAIZ, zIMAC, zMNEZ, 0, 0, 0, 0, zTCY, zYNEC, zTCMIY, zACACC, zACNAA, zTAMACS, zALEC, zYMCY, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, // 7 - /* 0x080 */ - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 8 - zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, // 9 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, 0, 0, 0, 0, 0, 0, 0, 0, // A - zTDO, zSAL, zCOMX8, zSBL, zREAC, zSEAC, zOFF, 0, 0, 0, 0, 0, 0, 0, 0, zRETN, // B - zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, // C - zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, // D - zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, // E - zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, // F - /* 0x100 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 0 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 1 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 2 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 3 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 4 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 5 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 6 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 7 - /* 0x180 */ - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // 8 - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // 9 - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // A - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x000 + mCOMX, mALEM, mYNEA, mXMA, mDYN, mIYC, mCLA, mDMAN, mTKA, mMNEA, mTKM, 0, 0, mSETR, mKNEZ, 0, // 0 + mDMEA, mDNAA, mCCLA, mNDMEA, 0, mAMAAC, 0, 0, mCTMDYN, mXDA, 0, 0, 0, 0, 0, 0, // 1 + mTBIT, mTBIT, mTBIT, mTBIT, 0, 0, 0, 0, mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAMZA, mTAM, // 2 + mSAMAN, mCPAIZ, mIMAC, mMNEZ, 0, 0, 0, 0, mTCY, mYNEC, mTCMIY, mACACC, mACNAA, mTAMACS, mALEC, mYMCY, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, // 7 + // 0x080 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 8 + mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, // 9 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, 0, 0, 0, 0, 0, 0, 0, 0, // A + mTDO, mSAL, mCOMX8, mSBL, mREAC, mSEAC, mOFF, 0, 0, 0, 0, 0, 0, 0, 0, mRETN, // B + mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, // C + mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, // D + mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, // E + mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, // F + // 0x100 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 0 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 1 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 2 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 3 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 4 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 5 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 6 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 7 + // 0x180 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // 8 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // 9 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // A + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; const u8 tp0320_disassembler::tp0320_mnemonic[512] = { -/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ - /* 0x000 */ - 0, zALEM, zYNEA, zXMA, zDYN, zIYC, zCLA, zDMAN, zTKA, zMNEA, zTKM, 0, 0, zSETR, zKNEZ, 0, // 0 - zDMEA, zDNAA, zCCLA, zNDMEA, 0, zAMAAC, 0, 0, zCTMDYN, zXDA, 0, 0, 0, 0, 0, 0, // 1 - zTBIT, zTBIT, zTBIT, zTBIT, 0, 0, 0, 0, zTAY, zTMA, zTMY, zTYA, zTAMDYN, zTAMIYC, zTAMZA, zTAM, // 2 - zSAMAN, zCPAIZ, zIMAC, zMNEZ, 0, 0, zRSTR, zYMCY, zTCY, zYNEC, zTCMIY, zACACC, zACNAA, zTAMACS, zALEC, 0, // 3 - zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, zTCY, // 4 - zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, zYNEC, // 5 - zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, zTCMIY, // 6 - zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, zACACC, // 7 - /* 0x080 */ - zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, zLDP, // 8 - zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, zLDX4, // 9 - zSBIT, zSBIT, zSBIT, zSBIT, zRBIT, zRBIT, zRBIT, zRBIT, 0, 0, 0, 0, 0, 0, 0, 0, // A - zTDO, zSAL, zCOMX8, zSBL, zREAC, zSEAC, zOFF, 0, 0, 0, 0, 0, 0, 0, 0, zRETN, // B - zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, zACNAA, // C - zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, zTAMACS, // D - zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, zALEC, // E - zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, zYMCY, // F - /* 0x100 */ - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 0 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 1 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 2 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 3 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 4 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 5 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 6 - zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, zBRANCH, // 7 - /* 0x180 */ - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // 8 - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // 9 - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // A - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // B - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // C - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // D - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, // E - zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL, zCALL // F +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + // 0x000 + 0, mALEM, mYNEA, mXMA, mDYN, mIYC, mCLA, mDMAN, mTKA, mMNEA, mTKM, 0, 0, mSETR, mKNEZ, 0, // 0 + mDMEA, mDNAA, mCCLA, mNDMEA, 0, mAMAAC, 0, 0, mCTMDYN, mXDA, 0, 0, 0, 0, 0, 0, // 1 + mTBIT, mTBIT, mTBIT, mTBIT, 0, 0, 0, 0, mTAY, mTMA, mTMY, mTYA, mTAMDYN, mTAMIYC, mTAMZA, mTAM, // 2 + mSAMAN, mCPAIZ, mIMAC, mMNEZ, 0, 0, mRSTR, mYMCY, mTCY, mYNEC, mTCMIY, mACACC, mACNAA, mTAMACS, mALEC, 0, // 3 + mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, mTCY, // 4 + mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, mYNEC, // 5 + mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, mTCMIY, // 6 + mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, mACACC, // 7 + // 0x080 + mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, mLDP, // 8 + mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, mLDX4, // 9 + mSBIT, mSBIT, mSBIT, mSBIT, mRBIT, mRBIT, mRBIT, mRBIT, 0, 0, 0, 0, 0, 0, 0, 0, // A + mTDO, mSAL, mCOMX8, mSBL, mREAC, mSEAC, mOFF, 0, 0, 0, 0, 0, 0, 0, 0, mRETN, // B + mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, mACNAA, // C + mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, mTAMACS, // D + mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, mALEC, // E + mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, mYMCY, // F + // 0x100 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 0 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 1 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 2 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 3 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 4 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 5 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 6 + mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, mBRANCH, // 7 + // 0x180 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // 8 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // 9 + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // A + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // B + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // C + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // D + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, // E + mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL, mCALL // F }; @@ -378,10 +378,10 @@ offs_t tms1000_base_disassembler::disassemble(std::ostream &stream, offs_t pc, c u16 op = m_opcode_9bits ? opcodes.r16(pc) & 0x1ff : opcodes.r8(pc); u16 instr = m_lut_mnemonic[op]; - if (instr == zAC0AC || instr == zAC1AC) + if (instr == mAC0AC || instr == mAC1AC) { // special case for AcAAC - u8 c = (i4_value[op & 0x0f] + ((instr == zAC1AC) ? 1 : 0)) & 0xf; + u8 c = (i4_value[op & 0x0f] + ((instr == mAC1AC) ? 1 : 0)) & 0xf; util::stream_format(stream, "A%dACC", c); } else diff --git a/src/devices/cpu/tms1000/tms1k_dasm.h b/src/devices/cpu/tms1000/tms1k_dasm.h index 8059251f66e..f2aa2aa8f96 100644 --- a/src/devices/cpu/tms1000/tms1k_dasm.h +++ b/src/devices/cpu/tms1000/tms1k_dasm.h @@ -27,18 +27,18 @@ public: protected: enum e_mnemonics { - zILL = 0, - zAC0AC, zAC1AC, zACACC, zACNAA, zALEC, zALEM, zAMAAC, zBRANCH, - zCALL, zCCLA, zCLA, zCLO, zCOMC, zCOMX, zCOMX8, zCPAIZ, zCTMDYN, - zDAN, zDMAN, zDMEA, zDNAA, zDYN, zHALT, - zIA, zIMAC, zINTDIS, zINTEN, zINTRTN, zIYC, - zKNEZ, zLDP, zLDX2, zLDX3, zLDX4, zMNEA, zMNEZ, - zNDMEA, zOFF, zRBIT, zREAC, zRETN, zRSTR, - zSAL, zSAMAN, zSBIT, zSBL, zSEAC, zSELIN, zSETR, - zTAC, zTADM, zTAM, zTAMACS, zTAMDYN, zTAMIY, zTAMIYC, zTAMZA, - zTASR, zTAX, zTAY, zTBIT, zTCA, zTCMIY, zTCY, zTDO, zTKA, - zTKM, zTMA, zTMSET, zTMY, zTPC, zTRA, zTSG, zTXA, zTYA, - zXDA, zXMA, zYMCY, zYNEA, zYNEC + mILL = 0, + mAC0AC, mAC1AC, mACACC, mACNAA, mALEC, mALEM, mAMAAC, mBRANCH, + mCALL, mCCLA, mCLA, mCLO, mCOMC, mCOMX, mCOMX8, mCPAIZ, mCTMDYN, + mDAN, mDMAN, mDMEA, mDNAA, mDYN, mHALT, + mIA, mIMAC, mINTDIS, mINTEN, mINTRTN, mIYC, + mKNEZ, mLDP, mLDX2, mLDX3, mLDX4, mMNEA, mMNEZ, + mNDMEA, mOFF, mRBIT, mREAC, mRETN, mRSTR, + mSAL, mSAMAN, mSBIT, mSBL, mSEAC, mSELIN, mSETR, + mTAC, mTADM, mTAM, mTAMACS, mTAMDYN, mTAMIY, mTAMIYC, mTAMZA, + mTASR, mTAX, mTAY, mTBIT, mTCA, mTCMIY, mTCY, mTDO, mTKA, + mTKM, mTMA, mTMSET, mTMY, mTPC, mTRA, mTSG, mTXA, mTYA, + mXDA, mXMA, mYMCY, mYNEA, mYNEC }; static const char *const s_mnemonic[]; @@ -142,4 +142,4 @@ private: static const u8 tp0320_mnemonic[512]; }; -#endif +#endif // MAME_CPU_TMS1000_TMS1K_DASM_H diff --git a/src/devices/cpu/ucom4/ucom4d.cpp b/src/devices/cpu/ucom4/ucom4d.cpp index 43488f82241..17505de32df 100644 --- a/src/devices/cpu/ucom4/ucom4d.cpp +++ b/src/devices/cpu/ucom4/ucom4d.cpp @@ -52,45 +52,26 @@ const u32 ucom4_disassembler::s_flags[] = const u8 ucom4_disassembler::ucom4_mnemonic[0x100] = { - /* 0x00 */ - mNOP, mDI, mS, mTIT, mTC, mTTM, mDAA, mTAL, - mAD, mADS, mDAS, mCLC, mCM, mINC, mOP, mDEC, - mCMA, mCIA, mTLA, mDED, mSTM, mLDI, mCLI, mCI, - mEXL, mADC, mXC, mSTC, 0, mINM, mOCD, mDEM, - /* 0x20 */ - mFBF, mFBF, mFBF, mFBF, mTAB, mTAB, mTAB, mTAB, - mX, mXM, mXM, mXM, mXD, mXMD, mXMD, mXMD, - mRAR, mEI, mIP, mIND, mCMB, mCMB, mCMB, mCMB, - mL, mLM, mLM, mLM, mXI, mXMI, mXMI, mXMI, - /* 0x40 */ - mIA, mJPA, mTAZ, mTAW, mOE, 0, mTLY, mTHX, - mRT, mRTS, mXAZ, mXAW, mXLS, mXHR, mXLY, mXHX, - mTPB, mTPB, mTPB, mTPB, mTPA, mTPA, mTPA, mTPA, - mTMB, mTMB, mTMB, mTMB, mFBT, mFBT, mFBT, mFBT, - /* 0x60 */ - mRPB, mRPB, mRPB, mRPB, mREB, mREB, mREB, mREB, - mRMB, mRMB, mRMB, mRMB, mRFB, mRFB, mRFB, mRFB, - mSPB, mSPB, mSPB, mSPB, mSEB, mSEB, mSEB, mSEB, - mSMB, mSMB, mSMB, mSMB, mSFB, mSFB, mSFB, mSFB, - /* 0x80 */ - mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, - mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, - mCLA, mLI, mLI, mLI, mLI, mLI, mLI, mLI, - mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, - /* 0xa0 */ - mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, - mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, - mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, - mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, - /* 0xc0 */ - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, - mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP +// 0 1 2 3 4 5 6 7 8 9 A B C D E F + mNOP, mDI, mS, mTIT, mTC, mTTM, mDAA, mTAL, mAD, mADS, mDAS, mCLC, mCM, mINC, mOP, mDEC, // 0 + mCMA, mCIA, mTLA, mDED, mSTM, mLDI, mCLI, mCI, mEXL, mADC, mXC, mSTC, 0, mINM, mOCD, mDEM, // 1 + mFBF, mFBF, mFBF, mFBF, mTAB, mTAB, mTAB, mTAB, mX, mXM, mXM, mXM, mXD, mXMD, mXMD, mXMD, // 2 + mRAR, mEI, mIP, mIND, mCMB, mCMB, mCMB, mCMB, mL, mLM, mLM, mLM, mXI, mXMI, mXMI, mXMI, // 3 + mIA, mJPA, mTAZ, mTAW, mOE, 0, mTLY, mTHX, mRT, mRTS, mXAZ, mXAW, mXLS, mXHR, mXLY, mXHX, // 4 + + mTPB, mTPB, mTPB, mTPB, mTPA, mTPA, mTPA, mTPA, mTMB, mTMB, mTMB, mTMB, mFBT, mFBT, mFBT, mFBT, // 5 + mRPB, mRPB, mRPB, mRPB, mREB, mREB, mREB, mREB, mRMB, mRMB, mRMB, mRMB, mRFB, mRFB, mRFB, mRFB, // 6 + mSPB, mSPB, mSPB, mSPB, mSEB, mSEB, mSEB, mSEB, mSMB, mSMB, mSMB, mSMB, mSFB, mSFB, mSFB, mSFB, // 7 + mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, mLDZ, // 8 + + mCLA, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, mLI, // 9 + mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mJMP, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, mCAL, // A + mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, mCZP, // B + + mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, // C + mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, // D + mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, // E + mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP, mJCP // F }; diff --git a/src/devices/cpu/ucom4/ucom4d.h b/src/devices/cpu/ucom4/ucom4d.h index 656c6f84f8f..73fe1155b69 100644 --- a/src/devices/cpu/ucom4/ucom4d.h +++ b/src/devices/cpu/ucom4/ucom4d.h @@ -7,8 +7,8 @@ */ -#ifndef MAME_CPU_UCOM4_UCOM4DASM_H -#define MAME_CPU_UCOM4_UCOM4DASM_H +#ifndef MAME_CPU_UCOM4_UCOM4D_H +#define MAME_CPU_UCOM4_UCOM4D_H #pragma once @@ -44,4 +44,4 @@ private: static const u8 ucom4_mnemonic[0x100]; }; -#endif +#endif // MAME_CPU_UCOM4_UCOM4D_H diff --git a/src/devices/sound/ymfm_mame.h b/src/devices/sound/ymfm_mame.h index d0161426619..14d5f00aa36 100644 --- a/src/devices/sound/ymfm_mame.h +++ b/src/devices/sound/ymfm_mame.h @@ -92,7 +92,7 @@ protected: } // the chip implementation calls this when the state of the IRQ signal has - // changed due to a status change; our responsibility is to respons as + // changed due to a status change; our responsibility is to response as // needed to the change in IRQ state, signaling any consumers virtual void ymfm_update_irq(bool asserted) override { diff --git a/src/mame/cinematronics/jack_v.cpp b/src/mame/cinematronics/jack_v.cpp index 3cb6ebfac22..96e160ebc18 100644 --- a/src/mame/cinematronics/jack_v.cpp +++ b/src/mame/cinematronics/jack_v.cpp @@ -27,7 +27,8 @@ void jack_state::jack_colorram_w(offs_t offset, uint8_t data) uint8_t jack_state::jack_flipscreen_r(offs_t offset) { - flip_screen_set(offset); + if (!machine().side_effects_disabled()) + flip_screen_set(offset); return 0; } diff --git a/src/mame/handheld/hh_sm510.cpp b/src/mame/handheld/hh_sm510.cpp index 90d72c61c28..725600c2b13 100644 --- a/src/mame/handheld/hh_sm510.cpp +++ b/src/mame/handheld/hh_sm510.cpp @@ -84,6 +84,7 @@ BD-62 ms SM512 Bomb Sweeper JB-63 ms SM511 Safe Buster MV-64 ms SM512 Gold Cliff ZL-65 ms SM512 Zelda +TR-66* ms SM512? Tetris Jr. (prototype) CJ-71* tt SM511? Donkey Kong Jr. CM-72 tt SM511 Mario's Cement Factory SM-73* tt SM511? Snoopy diff --git a/src/mame/handheld/hh_smc1k.cpp b/src/mame/handheld/hh_smc1k.cpp index 9d3b0e67776..6f8205fbd64 100644 --- a/src/mame/handheld/hh_smc1k.cpp +++ b/src/mame/handheld/hh_smc1k.cpp @@ -111,7 +111,7 @@ u8 hh_smc1k_state::read_inputs(int columns) INPUT_CHANGED_MEMBER(hh_smc1k_state::acl_button) { - // for when an input is directly tied to MCU INIT pin + // ACL button is directly tied to MCU INIT pin m_maincpu->set_input_line(INPUT_LINE_RESET, newval ? ASSERT_LINE : CLEAR_LINE); } @@ -179,10 +179,13 @@ static INPUT_PORTS_START( tkkongq ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP ) PORT_16WAY PORT_START("IN.1") // R1 - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_NAME("Set") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE2 ) PORT_NAME("Set") PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_NAME("Mode") PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Game B") PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Game A") + + PORT_START("ACL") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, tkkongq_state, acl_button, 0) PORT_NAME("ACL") INPUT_PORTS_END // config diff --git a/src/mame/handheld/hh_tms1k.cpp b/src/mame/handheld/hh_tms1k.cpp index d23ae53bbaa..72231481a40 100644 --- a/src/mame/handheld/hh_tms1k.cpp +++ b/src/mame/handheld/hh_tms1k.cpp @@ -11719,13 +11719,12 @@ ROM_END * TMS5110AN2L-1 speech chip, 16KB VSM CM62088N2L * CD40114BE (4x16 RAM, battery-backed) - There's also an older version (BHP_8338A2 PCB, M34137N2, CM62074). It can - be identified by the missing (unpopulated) language switch. + There's also an older version (BHP_8338A2 PCB, M34137N2, CM62074). It can be + identified by the missing (unpopulated) language switch. - It has a normal mechanical scale hidden from view, with a quadrature - encoder. In MAME, it's simulated with a dial control. Turn it left to - increase pressure, right to decrease. After around 0.5s of inactivity, - it will tell your 'weight'. + It has a normal mechanical scale hidden from view, with a quadrature encoder. + In MAME, it's simulated with a dial control. Turn it left to increase pressure, + right to decrease. After around 0.5s of inactivity, it will tell your 'weight'. *******************************************************************************/ diff --git a/src/mame/misc/z80ne.cpp b/src/mame/misc/z80ne.cpp index 0dfe79334aa..4694d636531 100644 --- a/src/mame/misc/z80ne.cpp +++ b/src/mame/misc/z80ne.cpp @@ -1265,7 +1265,7 @@ static INPUT_PORTS_START( z80net ) PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_K) PORT_CHAR('k') PORT_CHAR('K') PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_J) PORT_CHAR('j') PORT_CHAR('J') PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_H) PORT_CHAR('h') PORT_CHAR('H') - PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_G) PORT_CHAR('c') PORT_CHAR('G') + PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_G) PORT_CHAR('g') PORT_CHAR('G') PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_F) PORT_CHAR('f') PORT_CHAR('F') PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_D) PORT_CHAR('d') PORT_CHAR('D') PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_S) PORT_CHAR('s') PORT_CHAR('S') diff --git a/src/mame/tiger/k28.cpp b/src/mame/tiger/k28.cpp index 34285864277..c93a3232329 100644 --- a/src/mame/tiger/k28.cpp +++ b/src/mame/tiger/k28.cpp @@ -237,7 +237,7 @@ static INPUT_PORTS_START( k28 ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_COMMA) PORT_NAME("<") PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_I) PORT_CHAR('I') PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_S) PORT_CHAR('S') - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE) PORT_NAME("Erase/Clear") + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE) PORT_CHAR(127) PORT_NAME("Erase/Clear") PORT_START("IN.2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_HOME) PORT_NAME("Menu") @@ -247,7 +247,7 @@ static INPUT_PORTS_START( k28 ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_STOP) PORT_NAME(">") PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_J) PORT_CHAR('J') PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_T) PORT_CHAR('T') - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_NAME("Enter/Start") + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CHAR(13) PORT_NAME("Enter/Start") PORT_START("IN.3") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH) PORT_NAME("Prompt") diff --git a/src/mame/tiger/k28m2.cpp b/src/mame/tiger/k28m2.cpp index 4a02faad0ac..f8547de9751 100644 --- a/src/mame/tiger/k28m2.cpp +++ b/src/mame/tiger/k28m2.cpp @@ -271,7 +271,7 @@ static INPUT_PORTS_START( k28m2 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_Y) PORT_CHAR('Y') PORT_START("IN.7") // O7 - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE) PORT_NAME("Clear") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE) PORT_CHAR(127) PORT_NAME("Clear") PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_CHAR('H') PORT_NAME("H/8") PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_Q) PORT_CHAR('Q') PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_Z) PORT_CHAR('Z') @@ -280,7 +280,7 @@ static INPUT_PORTS_START( k28m2 ) PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_QUOTE) PORT_CHAR('\'') PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_I) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_CHAR('I') PORT_NAME("I/9") PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_R) PORT_CHAR('R') - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("Enter") + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_CHAR(13) PORT_NAME("Enter") INPUT_PORTS_END diff --git a/src/tools/unidasm.cpp b/src/tools/unidasm.cpp index e0382ea48c8..54b676df155 100644 --- a/src/tools/unidasm.cpp +++ b/src/tools/unidasm.cpp @@ -118,6 +118,7 @@ using util::BIT; #include "cpu/mips/mips3dsm.h" #include "cpu/mips/mips1dsm.h" #include "cpu/mk1/mk1dasm.h" +#include "cpu/mn1400/mn1400d.h" #include "cpu/mn1610/mn1610d.h" #include "cpu/mn1880/mn1880d.h" #include "cpu/mn10200/mn102dis.h" @@ -536,6 +537,7 @@ static const dasm_table_entry dasm_table[] = { "mm76", le, 0, []() -> util::disasm_interface * { return new mm76_disassembler; } }, { "mm78", le, 0, []() -> util::disasm_interface * { return new mm78_disassembler; } }, { "mn10200", le, 0, []() -> util::disasm_interface * { return new mn10200_disassembler; } }, + { "mn1400", le, 0, []() -> util::disasm_interface * { return new mn1400_disassembler; } }, { "mn1610", be, -1, []() -> util::disasm_interface * { return new mn1610_disassembler; } }, { "mn1613", be, -1, []() -> util::disasm_interface * { return new mn1613_disassembler; } }, { "mn1860", be, 0, []() -> util::disasm_interface * { return new mn1860_disassembler; } }, -- cgit v1.2.3