Previous 199869 Revisions Next

r33974 Saturday 20th December, 2014 at 00:28:57 UTC by Robbbert
(MESS) fixed crash with no cart for 3 drivers (nw)
- gameking, svision, advision
- only affects my build
- See forum post for details
[src/mess/drivers]gameking.c svision.c
[src/mess/machine]advision.c

trunk/src/mess/drivers/gameking.c
r242485r242486
121121   astring region_tag;
122122   m_cart_rom = memregion(region_tag.cpy(m_cart->tag()).cat(GENERIC_ROM_REGION_TAG));
123123
124   if (!m_cart_rom) printf("No Rom\n");
124   if (!m_cart_rom)
125   {
126      printf("No Rom\n");
127      return;
128   }
125129
126130   m_bank4000 = membank("bank4000");
127131   m_bank8000 = membank("bank8000");
trunk/src/mess/drivers/svision.c
r242485r242486
475475   m_bank1 = membank("bank1");
476476   m_bank2 = membank("bank2");
477477   // bank1 is set to the first bank
478   m_bank1->set_base(m_cart_rom->base());
479   // bank2 is set to the last bank
480   m_bank2->set_base(m_cart_rom->base() + (num_banks - 1) * 0x4000);
478   // do not crash if no cart
479   if (num_banks)
480   {
481      m_bank1->set_base(m_cart_rom->base());
482      // bank2 is set to the last bank
483      m_bank2->set_base(m_cart_rom->base() + (num_banks - 1) * 0x4000);
484   }
481485}
482486
483487void svision_state::machine_reset()
trunk/src/mess/machine/advision.c
r242485r242486
7676   m_rambank = (data & 0x03) << 8;
7777
7878   m_maincpu->set_input_line(MCS48_INPUT_EA, m_ea_bank ? ASSERT_LINE : CLEAR_LINE);
79   m_bank1->set_entry(m_ea_bank);
79   if (m_cart_rom)
80      m_bank1->set_entry(m_ea_bank);
8081}
8182
8283/* External RAM */


Previous 199869 Revisions Next


© 1997-2024 The MAME Team