mirror of
https://github.com/holub/mame
synced 2025-04-22 00:11:58 +03:00
Fixed crash of dcat16 at start
This commit is contained in:
parent
fb911eb6be
commit
c2f698a95f
@ -297,12 +297,15 @@ void md_cons_state::machine_start()
|
||||
|
||||
void md_cons_state::install_cartslot()
|
||||
{
|
||||
// for now m_cartslot is only in MD and not 32x and SegaCD
|
||||
m_maincpu->space(AS_PROGRAM).install_read_handler(0x000000, 0x7fffff, read16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::read)));
|
||||
m_maincpu->space(AS_PROGRAM).install_write_handler(0x000000, 0x7fffff, write16s_delegate(*m_cart, FUNC(base_md_cart_slot_device::write)));
|
||||
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa13000, 0xa130ff, read16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::read_a13)), write16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::write_a13)));
|
||||
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa15000, 0xa150ff, read16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::read_a15)), write16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::write_a15)));
|
||||
// m_maincpu->space(AS_PROGRAM).install_write_handler(0xa14000, 0xa14003, write16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::write_tmss_bank)));
|
||||
if (m_cart)
|
||||
{
|
||||
// for now m_cartslot is only in MD and not 32x and SegaCD
|
||||
m_maincpu->space(AS_PROGRAM).install_read_handler(0x000000, 0x7fffff, read16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::read)));
|
||||
m_maincpu->space(AS_PROGRAM).install_write_handler(0x000000, 0x7fffff, write16s_delegate(*m_cart, FUNC(base_md_cart_slot_device::write)));
|
||||
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa13000, 0xa130ff, read16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::read_a13)), write16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::write_a13)));
|
||||
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa15000, 0xa150ff, read16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::read_a15)), write16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::write_a15)));
|
||||
// m_maincpu->space(AS_PROGRAM).install_write_handler(0xa14000, 0xa14003, write16sm_delegate(*m_cart, FUNC(base_md_cart_slot_device::write_tmss_bank)));
|
||||
}
|
||||
}
|
||||
|
||||
uint16_t md_cons_state::tmss_r(offs_t offset)
|
||||
@ -342,7 +345,7 @@ void md_cons_slot_state::machine_start()
|
||||
md_cons_state::machine_start();
|
||||
|
||||
// the SVP introduces some kind of DMA 'lag', which we have to compensate for, this is obvious even on gfx DMAd from ROM (the Speedometer)
|
||||
if (m_cart->get_type() == SEGA_SVP)
|
||||
if (m_cart && (m_cart->get_type() == SEGA_SVP))
|
||||
m_vdp->set_dma_delay(2);
|
||||
|
||||
if (m_tmss)
|
||||
|
Loading…
Reference in New Issue
Block a user