diff options
-rw-r--r-- | src/mame/drivers/specpls3.cpp | 6 | ||||
-rw-r--r-- | src/mame/includes/specpls3.h | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/mame/drivers/specpls3.cpp b/src/mame/drivers/specpls3.cpp index a65c8faf458..8ba3b923c0a 100644 --- a/src/mame/drivers/specpls3.cpp +++ b/src/mame/drivers/specpls3.cpp @@ -371,6 +371,12 @@ static void specpls3_floppies(device_slot_interface &device) device.option_add("3ssdd", FLOPPY_3_SSDD); } +bool specpls3_state::is_contended(offs_t offset) { + u8 bank = m_bank_ram[3]->entry(); + return spectrum_state::is_contended(offset) + || ((offset >= 0xc000 && offset <= 0xffff) && (bank & 4)); // Memory banks 4,5,6 and 7 are contended +} + /* F4 Character Displayer */ static const gfx_layout spectrum_charlayout = { diff --git a/src/mame/includes/specpls3.h b/src/mame/includes/specpls3.h index 4d412196ea8..1391f68a92b 100644 --- a/src/mame/includes/specpls3.h +++ b/src/mame/includes/specpls3.h @@ -34,6 +34,7 @@ protected: virtual void machine_start() override; virtual void machine_reset() override; virtual void plus3_update_memory() override; + virtual bool is_contended(offs_t offset) override; private: void rom_w(offs_t offset, uint8_t data); |