summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/vsmile/rom.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/vsmile/rom.cpp')
-rw-r--r--src/devices/bus/vsmile/rom.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/devices/bus/vsmile/rom.cpp b/src/devices/bus/vsmile/rom.cpp
index 49740bc7f37..584a8cfe058 100644
--- a/src/devices/bus/vsmile/rom.cpp
+++ b/src/devices/bus/vsmile/rom.cpp
@@ -49,10 +49,12 @@ vsmile_rom_nvram_device::vsmile_rom_nvram_device(const machine_config &mconfig,
void vsmile_rom_device::device_start()
{
+ save_item(NAME(m_bank_offset));
}
void vsmile_rom_device::device_reset()
{
+ m_bank_offset = 0;
}
@@ -73,3 +75,12 @@ WRITE16_MEMBER(vsmile_rom_nvram_device::bank2_w)
if (!m_nvram.empty() && offset < m_nvram.size())
COMBINE_DATA(&m_nvram[offset]);
}
+
+/*-------------------------------------------------
+ CS2 bankswitching
+ -------------------------------------------------*/
+
+void vsmile_rom_device::set_cs2(bool cs2)
+{
+ m_bank_offset = cs2 ? 0x400000 : 0x000000;
+}