diff options
author | 2020-11-03 19:45:27 +1300 | |
---|---|---|
committer | 2020-11-03 19:45:27 +1300 | |
commit | a028db4e8c99a606c6c755872b90564e9e4fc9ab (patch) | |
tree | f452cd1bad565da5553c9a3d96d33314b5074da7 | |
parent | d6bed0e154d229cb0da3805b957457f7e22cbdf0 (diff) |
gimix: fix crash when using 128kB RAM or more
-rw-r--r-- | src/mame/drivers/gimix.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/mame/drivers/gimix.cpp b/src/mame/drivers/gimix.cpp index 5b4f0f72267..c3fdc7e3661 100644 --- a/src/mame/drivers/gimix.cpp +++ b/src/mame/drivers/gimix.cpp @@ -83,6 +83,8 @@ public: , m_rombank1(*this, "rombank1") , m_rombank2(*this, "rombank2") , m_fixedrombank(*this, "fixedrombank") + , m_lowerram(*this, "lower_ram") + , m_upperram(*this, "upper_ram") , m_dma_dip(*this, "dma_s2") {} @@ -152,6 +154,8 @@ private: required_memory_bank m_rombank1; required_memory_bank m_rombank2; required_memory_bank m_fixedrombank; + required_memory_bank m_lowerram; + memory_bank_creator m_upperram; required_ioport m_dma_dip; }; @@ -494,9 +498,9 @@ void gimix_state::machine_reset() m_floppy1_ready = false; m_floppy2_ready = false; m_floppy3_ready = false; - membank("lower_ram")->set_base(m_ram->pointer()); + m_lowerram->set_base(m_ram->pointer()); if(m_ram->size() > 65536) - membank("upper_ram")->set_base(m_ram->pointer()+0x10000); + m_upperram->set_base(m_ram->pointer()+0x10000); // initialise FDC clock based on DIP Switch S2-9 (5.25"/8" drive select) if(m_dma_dip->read() & 0x00000100) @@ -520,7 +524,7 @@ void gimix_state::machine_start() { for (int bank = 0; bank < 16; bank++) { - m_bank[bank]->space(AS_PROGRAM).install_readwrite_bank(0x10000,m_ram->size()-1,membank("upper_ram")); + m_bank[bank]->space(AS_PROGRAM).install_readwrite_bank(0x10000,m_ram->size()-1,m_upperram); } } m_floppy0->get_device()->set_rpm(300); |