diff options
author | 2016-11-20 08:49:30 -0500 | |
---|---|---|
committer | 2016-11-20 08:49:30 -0500 | |
commit | a29891d2e5b750e47a1237929c42fc2afdd8f094 (patch) | |
tree | a601af0a86b6076311a7af4494a7b66bb8d24667 /src/devices/cpu/minx | |
parent | 5eefcfdb684b94cbe41d41a7dcfd8b712bf86c6a (diff) |
Changed disassembler infrastructure to not use char buffers internally
Diffstat (limited to 'src/devices/cpu/minx')
-rw-r--r-- | src/devices/cpu/minx/minx.cpp | 4 | ||||
-rw-r--r-- | src/devices/cpu/minx/minx.h | 2 | ||||
-rw-r--r-- | src/devices/cpu/minx/minxd.cpp | 12 |
3 files changed, 4 insertions, 14 deletions
diff --git a/src/devices/cpu/minx/minx.cpp b/src/devices/cpu/minx/minx.cpp index 4ec4a344371..307cf8d73c7 100644 --- a/src/devices/cpu/minx/minx.cpp +++ b/src/devices/cpu/minx/minx.cpp @@ -228,8 +228,8 @@ void minx_cpu_device::execute_set_input(int inputnum, int state) } -offs_t minx_cpu_device::disasm_disassemble(char *buffer, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) +offs_t minx_cpu_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) { extern CPU_DISASSEMBLE( minx ); - return CPU_DISASSEMBLE_NAME(minx)(this, buffer, pc, oprom, opram, options); + return CPU_DISASSEMBLE_NAME(minx)(this, stream, pc, oprom, opram, options); } diff --git a/src/devices/cpu/minx/minx.h b/src/devices/cpu/minx/minx.h index ca0c18692ff..8ab7ce18a06 100644 --- a/src/devices/cpu/minx/minx.h +++ b/src/devices/cpu/minx/minx.h @@ -41,7 +41,7 @@ protected: // device_disasm_interface overrides virtual uint32_t disasm_min_opcode_bytes() const override { return 1; } virtual uint32_t disasm_max_opcode_bytes() const override { return 5; } - virtual offs_t disasm_disassemble(char *buffer, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) override; + virtual offs_t disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) override; private: address_space_config m_program_config; diff --git a/src/devices/cpu/minx/minxd.cpp b/src/devices/cpu/minx/minxd.cpp index 8005d1ecc9f..0e3b9d5b090 100644 --- a/src/devices/cpu/minx/minxd.cpp +++ b/src/devices/cpu/minx/minxd.cpp @@ -420,7 +420,7 @@ case M_HL: util::stream_format(stream, "%c[HL]", fill); break; \ case OP: util::stream_format(stream, "%c$%02X", fill, op); break; \ case OP1: util::stream_format(stream, "%c$%02X", fill, op1); break; -static offs_t internal_disasm_minx(cpu_device *device, std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, int options) +CPU_DISASSEMBLE(minx) { const minxdasm *instr; uint8_t op, op1; @@ -462,13 +462,3 @@ static offs_t internal_disasm_minx(cpu_device *device, std::ostream &stream, off } return pos | s_flags[instr->mnemonic] | DASMFLAG_SUPPORTED; } - - -CPU_DISASSEMBLE(minx) -{ - std::ostringstream stream; - offs_t result = internal_disasm_minx(device, stream, pc, oprom, opram, options); - std::string stream_str = stream.str(); - strcpy(buffer, stream_str.c_str()); - return result; -} |