From 78c44ee88a23ce53ea9d0e96ac74feb6ec249171 Mon Sep 17 00:00:00 2001 From: Robbbert Date: Mon, 18 Apr 2022 00:56:32 +1000 Subject: exl100: fixed loading of the 6 swlist items of size 32256. --- src/mame/drivers/exelv.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mame/drivers/exelv.cpp b/src/mame/drivers/exelv.cpp index dd2ce70c958..d4cd96d57c0 100644 --- a/src/mame/drivers/exelv.cpp +++ b/src/mame/drivers/exelv.cpp @@ -115,6 +115,7 @@ private: uint8_t m_tms7041_portb = 0; uint8_t m_tms7041_portc = 0; uint8_t m_tms7041_portd = 0; + uint32_t m_rom_size = 0; /* mailbox data */ uint8_t m_wx318 = 0; /* data of 74ls374 labeled wx318 */ @@ -382,8 +383,13 @@ void exelv_state::tms7041_portd_w(uint8_t data) */ uint8_t exelv_state::rom_r(offs_t offset) { - if (m_cart && m_cart->exists()) - return m_cart->read_rom(offset + 0x200); + if (m_rom_size) + { + if (m_rom_size == 0x7e00) + return m_cart->read_rom(offset); + else + return m_cart->read_rom(offset + 0x200); + } return 0; } @@ -464,8 +470,13 @@ MACHINE_START_MEMBER( exelv_state, exl100) save_item(NAME(m_tms7041_portb)); save_item(NAME(m_tms7041_portc)); save_item(NAME(m_tms7041_portd)); + save_item(NAME(m_rom_size)); save_item(NAME(m_wx318)); save_item(NAME(m_wx319)); + + m_rom_size = 0; + if (m_cart && m_cart->exists()) + m_rom_size = m_cart->get_rom_size(); } MACHINE_START_MEMBER( exelv_state, exeltel) -- cgit v1.2.3