diff options
Diffstat (limited to 'src/mame/machine/decocpu6.cpp')
-rw-r--r-- | src/mame/machine/decocpu6.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/mame/machine/decocpu6.cpp b/src/mame/machine/decocpu6.cpp index 3d855e2864d..9e068e73adb 100644 --- a/src/mame/machine/decocpu6.cpp +++ b/src/mame/machine/decocpu6.cpp @@ -35,3 +35,18 @@ uint8_t deco_cpu6_device::mi_decrypt::read_sync(uint16_t adr) else return direct->read_byte(adr); } + +util::disasm_interface *deco_cpu6_device::create_disassembler() +{ + return new disassembler; +} + +u32 deco_cpu6_device::disassembler::interface_flags() const +{ + return SPLIT_DECRYPTION; +} + +u8 deco_cpu6_device::disassembler::decrypt8(u8 value, offs_t pc, bool opcode) const +{ + return opcode && (pc & 1) ? BITSWAP8(value,6,4,7,5,3,2,1,0) : value; +} |