summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/cubeqcpu/cubeqcpu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/cubeqcpu/cubeqcpu.cpp')
-rw-r--r--src/devices/cpu/cubeqcpu/cubeqcpu.cpp28
1 files changed, 13 insertions, 15 deletions
diff --git a/src/devices/cpu/cubeqcpu/cubeqcpu.cpp b/src/devices/cpu/cubeqcpu/cubeqcpu.cpp
index 9c3652fd40e..f00ed3eefa0 100644
--- a/src/devices/cpu/cubeqcpu/cubeqcpu.cpp
+++ b/src/devices/cpu/cubeqcpu/cubeqcpu.cpp
@@ -16,6 +16,7 @@
#include "emu.h"
#include "debugger.h"
#include "cubeqcpu.h"
+#include "cubedasm.h"
/***************************************************************************
@@ -91,10 +92,9 @@ device_memory_interface::space_config_vector cquestsnd_cpu_device::memory_space_
}
-offs_t cquestsnd_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
+util::disasm_interface *cquestsnd_cpu_device::create_disassembler()
{
- extern CPU_DISASSEMBLE( cquestsnd );
- return CPU_DISASSEMBLE_NAME(cquestsnd)(this, stream, pc, oprom, opram, options);
+ return new cquestsnd_disassembler;
}
@@ -112,10 +112,9 @@ READ16_MEMBER( cquestrot_cpu_device::linedata_r )
}
-offs_t cquestrot_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
+util::disasm_interface *cquestrot_cpu_device::create_disassembler()
{
- extern CPU_DISASSEMBLE( cquestrot );
- return CPU_DISASSEMBLE_NAME(cquestrot)(this, stream, pc, oprom, opram, options);
+ return new cquestsnd_disassembler;
}
@@ -135,10 +134,9 @@ device_memory_interface::space_config_vector cquestlin_cpu_device::memory_space_
};
}
-offs_t cquestlin_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
+util::disasm_interface *cquestlin_cpu_device::create_disassembler()
{
- extern CPU_DISASSEMBLE( cquestlin );
- return CPU_DISASSEMBLE_NAME(cquestlin)(this, stream, pc, oprom, opram, options);
+ return new cquestlin_disassembler;
}
@@ -185,7 +183,7 @@ void cquestsnd_cpu_device::device_start()
m_sound_data = (uint16_t*)machine().root_device().memregion(m_sound_region_tag)->base();
m_program = &space(AS_PROGRAM);
- m_direct = &m_program->direct();
+ m_direct = m_program->direct<-3>();
memset(m_ram, 0, sizeof(m_ram));
m_q = 0;
@@ -264,7 +262,7 @@ void cquestrot_cpu_device::device_start()
m_linedata_w.resolve_safe();
m_program = &space(AS_PROGRAM);
- m_direct = &m_program->direct();
+ m_direct = m_program->direct<-3>();
memset(m_ram, 0, sizeof(m_ram));
m_q = 0;
@@ -395,7 +393,7 @@ void cquestlin_cpu_device::device_start()
m_linedata_r.resolve_safe(0);
m_program = &space(AS_PROGRAM);
- m_direct = &m_program->direct();
+ m_direct = m_program->direct<-3>();
memset(m_ram, 0, sizeof(m_ram));
m_q = 0;
@@ -544,7 +542,7 @@ void cquestsnd_cpu_device::execute_run()
do
{
/* Decode the instruction */
- uint64_t inst = m_direct->read_qword(SND_PC << 3);
+ uint64_t inst = m_direct->read_qword(SND_PC);
uint32_t inslow = inst & 0xffffffff;
uint32_t inshig = inst >> 32;
@@ -800,7 +798,7 @@ void cquestrot_cpu_device::execute_run()
do
{
/* Decode the instruction */
- uint64_t inst = m_direct->read_qword(ROT_PC << 3);
+ uint64_t inst = m_direct->read_qword(ROT_PC);
uint32_t inslow = inst & 0xffffffff;
uint32_t inshig = inst >> 32;
@@ -1220,7 +1218,7 @@ void cquestlin_cpu_device::execute_run()
int prog = (m_clkcnt & 3) ? BACKGROUND : FOREGROUND;
m_curpc = LINE_PC;
- uint64_t inst = m_direct->read_qword(LINE_PC << 3);
+ uint64_t inst = m_direct->read_qword(LINE_PC);
uint32_t inslow = inst & 0xffffffff;
uint32_t inshig = inst >> 32;