summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/tms34010/tms34010.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/tms34010/tms34010.cpp')
-rw-r--r--src/devices/cpu/tms34010/tms34010.cpp18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/devices/cpu/tms34010/tms34010.cpp b/src/devices/cpu/tms34010/tms34010.cpp
index 1e3c099425c..3d9d1a20a30 100644
--- a/src/devices/cpu/tms34010/tms34010.cpp
+++ b/src/devices/cpu/tms34010/tms34010.cpp
@@ -228,14 +228,14 @@ inline void tms340x0_device::RESET_ST()
}
/* shortcuts for reading opcodes */
-uint32_t tms34010_device::ROPCODE()
+uint16_t tms34010_device::ROPCODE()
{
uint32_t pc = m_pc;
m_pc += 2 << 3;
return m_cache.read_word(pc);
}
-uint32_t tms34020_device::ROPCODE()
+uint16_t tms34020_device::ROPCODE()
{
uint32_t pc = m_pc;
m_pc += 2 << 3;
@@ -887,7 +887,7 @@ void tms340x0_device::execute_run()
uint16_t op;
m_ppc = m_pc;
op = ROPCODE();
- (this->*s_opcode_table[op >> 4])(op);
+ execute_op(op);
} while (m_icount > 0);
}
else
@@ -898,12 +898,22 @@ void tms340x0_device::execute_run()
m_ppc = m_pc;
debugger_instruction_hook(m_pc);
op = ROPCODE();
- (this->*s_opcode_table[op >> 4])(op);
+ execute_op(op);
} while (m_icount > 0);
}
m_executing = false;
}
+void tms34010_device::execute_op(uint16_t op)
+{
+ (this->*s_opcode_table[op >> 4])(op);
+}
+
+void tms34020_device::execute_op(uint16_t op)
+{
+ (this->*s_opcode_table[op >> 4])(op);
+}
+
/***************************************************************************