From 6caef2579a1490f05d28bcede731cbdd45fc5c65 Mon Sep 17 00:00:00 2001 From: Olivier Galibert Date: Wed, 5 Jul 2017 11:44:49 +0200 Subject: dvdisasm: Overhaul [O. Galibert] Disassemblers are now independant classes. Not only the code is cleaner, but unidasm has access to all the cpu cores again. The interface to the disassembly method has changed from byte buffers to objects that give a result to read methods. This also adds support for lfsr and/or paged PCs. --- src/devices/cpu/ie15/ie15.cpp | 29 ++++------------------------- 1 file changed, 4 insertions(+), 25 deletions(-) (limited to 'src/devices/cpu/ie15/ie15.cpp') diff --git a/src/devices/cpu/ie15/ie15.cpp b/src/devices/cpu/ie15/ie15.cpp index e09d99c51a8..dd070e7f711 100644 --- a/src/devices/cpu/ie15/ie15.cpp +++ b/src/devices/cpu/ie15/ie15.cpp @@ -2,6 +2,7 @@ // copyright-holders:Sergey Svishchev #include "emu.h" #include "ie15.h" +#include "ie15dasm.h" #include "debugger.h" @@ -149,34 +150,12 @@ void ie15_cpu_device::state_string_export(const device_state_entry &entry, std:: } //------------------------------------------------- -// disasm_min_opcode_bytes - return the length -// of the shortest instruction, in bytes +// create_disassembler //------------------------------------------------- -uint32_t ie15_cpu_device::disasm_min_opcode_bytes() const +util::disasm_interface *ie15_cpu_device::create_disassembler() { - return 1; -} - -//------------------------------------------------- -// disasm_max_opcode_bytes - return the length -// of the longest instruction, in bytes -//------------------------------------------------- - -uint32_t ie15_cpu_device::disasm_max_opcode_bytes() const -{ - return 2; -} - -//------------------------------------------------- -// disasm_disassemble - call the disassembly -// helper function -//------------------------------------------------- - -offs_t ie15_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) -{ - extern CPU_DISASSEMBLE( ie15 ); - return CPU_DISASSEMBLE_NAME(ie15)(nullptr, stream, pc, oprom, opram, 0); + return new ie15_disassembler; } //************************************************************************** -- cgit v1.2.3-70-g09d2