summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/pic16c62x/16c62xdsm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/pic16c62x/16c62xdsm.cpp')
-rw-r--r--src/devices/cpu/pic16c62x/16c62xdsm.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/devices/cpu/pic16c62x/16c62xdsm.cpp b/src/devices/cpu/pic16c62x/16c62xdsm.cpp
index 1e088fbb05c..7efee8c30b7 100644
--- a/src/devices/cpu/pic16c62x/16c62xdsm.cpp
+++ b/src/devices/cpu/pic16c62x/16c62xdsm.cpp
@@ -1,5 +1,5 @@
// license:BSD-3-Clause
-// copyright-holders:Tony La Porta
+// copyright-holders:Tony La Porta, Samuele Zannoli
/**************************************************************************\
* Microchip PIC16C62X Emulator *
* *
@@ -92,9 +92,8 @@ pic16c62x_disassembler::pic16c62x_disassembler()
const char *const *ops;
u16 mask, bits;
int bit;
- int i;
- ops = PIC16C62xFormats; i = 0;
+ ops = PIC16C62xFormats;
while (*ops)
{
p = *ops;
@@ -126,9 +125,7 @@ pic16c62x_disassembler::pic16c62x_disassembler()
Op.emplace_back(mask, bits, *p, ops[0], ops[1]);
ops += 2;
- i++;
}
-
}
offs_t pic16c62x_disassembler::disassemble(std::ostream &stream, offs_t pc, const data_buffer &opcodes, const data_buffer &params)
@@ -202,6 +199,8 @@ offs_t pic16c62x_disassembler::disassemble(std::ostream &stream, offs_t pc, cons
flags = STEP_OVER;
else if (!strncmp(cp, "ret", 3))
flags = STEP_OUT;
+ else if (!strncmp(cp, "btfs", 4) || !strncmp(cp + 2, "cfsz", 4))
+ flags = STEP_COND;
while (*cp)
{