summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/dsp32/dsp32dis.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/dsp32/dsp32dis.cpp')
-rw-r--r--src/devices/cpu/dsp32/dsp32dis.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/devices/cpu/dsp32/dsp32dis.cpp b/src/devices/cpu/dsp32/dsp32dis.cpp
index 8748b2b55ab..1fc0d225a70 100644
--- a/src/devices/cpu/dsp32/dsp32dis.cpp
+++ b/src/devices/cpu/dsp32/dsp32dis.cpp
@@ -354,6 +354,8 @@ offs_t dsp32c_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
flags = STEP_OUT;
util::stream_format(stream, "if (%s) goto %s", condtable[C], rH);
}
+ if (C > 1)
+ flags |= STEP_COND;
}
break;
}
@@ -440,10 +442,10 @@ offs_t dsp32c_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
const char *rS2 = regname[(op >> 0) & 0x1f];
const char *s = sizesuffix[(op >> 31) & 1];
uint8_t threeop = (op >> 11) & 1;
- char condbuf[40] = { 0 };
+ std::string condbuf;
if ((op >> 10) & 1)
- sprintf(condbuf, "if (%s) ", condtable[(op >> 12) & 15]);
+ condbuf = "if (" + std::string(condtable[(op >> 12) & 15]) + ") ";
switch ((op >> 21) & 15)
{