summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/pic16c62x
diff options
context:
space:
mode:
author Nathan Woods <npwoods@mess.org>2016-11-20 08:49:30 -0500
committer Nathan Woods <npwoods@mess.org>2016-11-20 08:49:30 -0500
commita29891d2e5b750e47a1237929c42fc2afdd8f094 (patch)
treea601af0a86b6076311a7af4494a7b66bb8d24667 /src/devices/cpu/pic16c62x
parent5eefcfdb684b94cbe41d41a7dcfd8b712bf86c6a (diff)
Changed disassembler infrastructure to not use char buffers internally
Diffstat (limited to 'src/devices/cpu/pic16c62x')
-rw-r--r--src/devices/cpu/pic16c62x/16c62xdsm.cpp12
-rw-r--r--src/devices/cpu/pic16c62x/pic16c62x.cpp4
-rw-r--r--src/devices/cpu/pic16c62x/pic16c62x.h2
3 files changed, 4 insertions, 14 deletions
diff --git a/src/devices/cpu/pic16c62x/16c62xdsm.cpp b/src/devices/cpu/pic16c62x/16c62xdsm.cpp
index 48854d9057a..f9fb88a88d1 100644
--- a/src/devices/cpu/pic16c62x/16c62xdsm.cpp
+++ b/src/devices/cpu/pic16c62x/16c62xdsm.cpp
@@ -160,7 +160,7 @@ static void InitDasm16C5x(void)
OpInizialized = 1;
}
-static offs_t internal_disasm_pic16c62x(cpu_device *device, std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, int options)
+CPU_DISASSEMBLE(pic16c62x)
{
int a, b, d, f, k; /* these can all be filled in by parsing an instruction */
int i;
@@ -261,13 +261,3 @@ static offs_t internal_disasm_pic16c62x(cpu_device *device, std::ostream &stream
}
return cnt | flags | DASMFLAG_SUPPORTED;
}
-
-
-CPU_DISASSEMBLE(pic16c62x)
-{
- std::ostringstream stream;
- offs_t result = internal_disasm_pic16c62x(device, stream, pc, oprom, opram, options);
- std::string stream_str = stream.str();
- strcpy(buffer, stream_str.c_str());
- return result;
-}
diff --git a/src/devices/cpu/pic16c62x/pic16c62x.cpp b/src/devices/cpu/pic16c62x/pic16c62x.cpp
index a3b3c270690..ceb12c33bb0 100644
--- a/src/devices/cpu/pic16c62x/pic16c62x.cpp
+++ b/src/devices/cpu/pic16c62x/pic16c62x.cpp
@@ -158,10 +158,10 @@ pic16c622a_device::pic16c622a_device(const machine_config &mconfig, const char *
}
-offs_t pic16c62x_device::disasm_disassemble(char *buffer, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
+offs_t pic16c62x_device::disasm_disassemble(std::ostream &stream, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options)
{
extern CPU_DISASSEMBLE( pic16c62x );
- return CPU_DISASSEMBLE_NAME(pic16c62x)(this, buffer, pc, oprom, opram, options);
+ return CPU_DISASSEMBLE_NAME(pic16c62x)(this, stream, pc, oprom, opram, options);
}
diff --git a/src/devices/cpu/pic16c62x/pic16c62x.h b/src/devices/cpu/pic16c62x/pic16c62x.h
index 7321296cc9d..0c2c19f41be 100644
--- a/src/devices/cpu/pic16c62x/pic16c62x.h
+++ b/src/devices/cpu/pic16c62x/pic16c62x.h
@@ -84,7 +84,7 @@ protected:
// device_disasm_interface overrides
virtual uint32_t disasm_min_opcode_bytes() const override { return 2; }
virtual uint32_t disasm_max_opcode_bytes() const override { return 2; }
- 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;