diff --git a/src/devices/cpu/tms9900/tms9995.h b/src/devices/cpu/tms9900/tms9995.h index dd9d914e985..76e0ab7ec1c 100644 --- a/src/devices/cpu/tms9900/tms9995.h +++ b/src/devices/cpu/tms9900/tms9995.h @@ -55,6 +55,7 @@ public: // For debugger access uint8_t debug_read_onchip_memory(offs_t addr) { return m_onchip_memory[addr & 0xff]; }; + void debug_write_onchip_memory(offs_t addr, uint8_t data) { m_onchip_memory[addr & 0xff] = data; }; bool is_onchip(offs_t addrb) { return (((addrb & 0xff00)==0xf000 && (addrb < 0xf0fc)) || ((addrb & 0xfffc)==0xfffc)) && !m_mp9537; } void set_overflow_interrupt( int enable ) { m_check_overflow = (enable!=0); } diff --git a/src/mame/drivers/geneve.cpp b/src/mame/drivers/geneve.cpp index f86282a5847..76d36356209 100644 --- a/src/mame/drivers/geneve.cpp +++ b/src/mame/drivers/geneve.cpp @@ -632,16 +632,15 @@ void geneve_state::memwrite(offs_t offset, uint8_t data) if (machine().side_effects_disabled()) { - // TODO: add method to tms9995 -// if (m_cpu->is_onchip(offset)) -// { -// m_cpu->debug_write_onchip_memory(offset, data); -// return; -// } + if (m_cpu->is_onchip(offset)) + { + m_cpu->debug_write_onchip_memory(offset, data); + return; + } // The debugger does not call setaddress, so we do it here // Also, the decode result is replaced by the debugger version - setaddress_debug(true, addr13, 0); + setaddress_debug(true, offset, 0); } // Video write (never by debugger)