summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/mcs51/mcs51dasm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/mcs51/mcs51dasm.cpp')
-rw-r--r--src/devices/cpu/mcs51/mcs51dasm.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/devices/cpu/mcs51/mcs51dasm.cpp b/src/devices/cpu/mcs51/mcs51dasm.cpp
index fce9b90208f..2b857f74307 100644
--- a/src/devices/cpu/mcs51/mcs51dasm.cpp
+++ b/src/devices/cpu/mcs51/mcs51dasm.cpp
@@ -293,16 +293,14 @@ std::string mcs51_disassembler::get_bit_address( uint8_t arg ) const
}
}
-offs_t mcs51_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer &params)
+offs_t mcs51_disassembler::disassemble_op(std::ostream &stream, unsigned PC, offs_t pc, const data_buffer &opcodes, const data_buffer &params, uint8_t op)
{
uint32_t flags = 0;
- unsigned PC = pc;
std::string sym, sym2;
- uint8_t op, data;
+ uint8_t data;
uint16_t addr;
int8_t rel;
- op = opcodes.r8(PC++);
switch( op )
{
//NOP
@@ -1109,6 +1107,13 @@ offs_t mcs51_disassembler::disassemble(std::ostream &stream, offs_t pc, const da
return (PC - pc) | flags | SUPPORTED;
}
+offs_t mcs51_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer &params)
+{
+ unsigned PC = pc;
+ uint8_t op = opcodes.r8(PC++);
+ return disassemble_op(stream, PC, pc, opcodes, params, op);
+}
+
i8051_disassembler::i8051_disassembler() : mcs51_disassembler(default_names)
{
}