summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/mcs48/mcs48.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/mcs48/mcs48.cpp')
-rw-r--r--src/devices/cpu/mcs48/mcs48.cpp26
1 files changed, 12 insertions, 14 deletions
diff --git a/src/devices/cpu/mcs48/mcs48.cpp b/src/devices/cpu/mcs48/mcs48.cpp
index eba06d7a156..de499c23ac2 100644
--- a/src/devices/cpu/mcs48/mcs48.cpp
+++ b/src/devices/cpu/mcs48/mcs48.cpp
@@ -8,12 +8,12 @@
- T0 output clock
- get rid of i/o addressmap, use devcb for mcu pins
- add CMOS devices, 1 new opcode (01 HALT)
- - make timer update cleaner:
- timer is updated on S4 while I/O happens on S5
- due to very bad coding, Kaypro 10 keyboard depends on being able to see T=0 before interrupt is taken
- right now this is implemented with a hack in the mov_a_t handler
- in theory it should also be possible to see the timer flag before the interrupt is taken
- mov_t_a should also update the T register after it's incremented
+ - make timer update cleaner:
+ timer is updated on S4 while I/O happens on S5
+ due to very bad coding, Kaypro 10 keyboard depends on being able to see T=0 before interrupt is taken
+ right now this is implemented with a hack in the mov_a_t handler
+ in theory it should also be possible to see the timer flag before the interrupt is taken
+ mov_t_a should also update the T register after it's incremented
*/
/***************************************************************************
@@ -85,6 +85,7 @@
#include "emu.h"
#include "debugger.h"
#include "mcs48.h"
+#include "mcs48dsm.h"
/***************************************************************************
@@ -329,17 +330,14 @@ device_memory_interface::space_config_vector mcs48_cpu_device::memory_space_conf
};
}
-offs_t mcs48_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
+util::disasm_interface *mcs48_cpu_device::create_disassembler()
{
- extern CPU_DISASSEMBLE( mcs48 );
- return CPU_DISASSEMBLE_NAME(mcs48)(this, stream, pc, oprom, opram, options);
+ return new mcs48_disassembler(false);
}
-
-offs_t upi41_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
+util::disasm_interface *upi41_cpu_device::create_disassembler()
{
- extern CPU_DISASSEMBLE( upi41 );
- return CPU_DISASSEMBLE_NAME(upi41)(this, stream, pc, oprom, opram, options);
+ return new mcs48_disassembler(true);
}
/***************************************************************************
@@ -975,7 +973,7 @@ void mcs48_cpu_device::device_start()
m_ea = (m_int_rom_size ? 0 : 1);
m_program = &space(AS_PROGRAM);
- m_direct = &m_program->direct();
+ m_direct = m_program->direct<0>();
m_data = &space(AS_DATA);
m_io = &space(AS_IO);