diff options
author | 2020-10-24 21:47:13 +1100 | |
---|---|---|
committer | 2020-10-24 21:47:13 +1100 | |
commit | 3122672bde0deb37a38cc1e9867e33d39326588d (patch) | |
tree | e1f351cbd00292fc1c296c5b9c25f690e7e21e10 | |
parent | d48db16bac912ecd1bf61dce18784b13fa58d555 (diff) |
bus/a2bus: Make Grappler+ cnxx writes select low ROM bank for completeness.
-rw-r--r-- | src/devices/bus/a2bus/grapplerplus.cpp | 10 | ||||
-rw-r--r-- | src/devices/bus/a2bus/grapplerplus.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/devices/bus/a2bus/grapplerplus.cpp b/src/devices/bus/a2bus/grapplerplus.cpp index 8de41067385..99e0f69f78f 100644 --- a/src/devices/bus/a2bus/grapplerplus.cpp +++ b/src/devices/bus/a2bus/grapplerplus.cpp @@ -191,6 +191,16 @@ u8 a2bus_grapplerplus_device::read_cnxx(u8 offset) } +void a2bus_grapplerplus_device::write_cnxx(u8 offset, u8 data) +{ + LOG("Write Cn%02X=%02X (bus conflict)\n", offset, data); + + if (m_rom_bank) + LOG("Select low ROM bank\n"); + m_rom_bank = 0x0000U; +} + + u8 a2bus_grapplerplus_device::read_c800(u16 offset) { return m_rom[(offset & 0x07ffU) | m_rom_bank]; diff --git a/src/devices/bus/a2bus/grapplerplus.h b/src/devices/bus/a2bus/grapplerplus.h index ec8bd938492..1060dc11c4f 100644 --- a/src/devices/bus/a2bus/grapplerplus.h +++ b/src/devices/bus/a2bus/grapplerplus.h @@ -47,6 +47,7 @@ public: virtual u8 read_c0nx(u8 offset) override; virtual void write_c0nx(u8 offset, u8 data) override; virtual u8 read_cnxx(u8 offset) override; + virtual void write_cnxx(u8 offset, u8 data) override; virtual u8 read_c800(u16 offset) override; protected: |