diff --git a/src/mame/drivers/jpmmps.c b/src/mame/drivers/jpmmps.c index 462ef030d98..ea50f9c27ee 100644 --- a/src/mame/drivers/jpmmps.c +++ b/src/mame/drivers/jpmmps.c @@ -45,6 +45,8 @@ public: { } UINT8 m_sound_buffer; UINT8 m_psg_latch; + virtual void machine_reset(); + protected: // devices @@ -228,6 +230,12 @@ static TMS9995_CONFIG( cpuconf95 ) NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt }; +void jpmmps_state::machine_reset() +{ + // Disable auto wait state generation by raising the READY line on reset + static_cast(machine().device("maincpu"))->set_ready(ASSERT_LINE); +} + static MACHINE_CONFIG_START( jpmmps, jpmmps_state ) /* basic machine hardware */ diff --git a/src/mame/drivers/jpms80.c b/src/mame/drivers/jpms80.c index 5b53dd7875d..4e0f9ae19b6 100644 --- a/src/mame/drivers/jpms80.c +++ b/src/mame/drivers/jpms80.c @@ -33,6 +33,7 @@ public: : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu") { } + virtual void machine_reset(); protected: @@ -88,6 +89,12 @@ static const tms9902_interface tms9902_config = DEVCB_NULL /* called for setting interface parameters and line states */ }; +void jpms80_state::machine_reset() +{ + // Disable auto wait state generation by raising the READY line on reset + static_cast(machine().device("maincpu"))->set_ready(ASSERT_LINE); +} + static TMS9995_CONFIG( cpuconf95 ) { DEVCB_NULL, // external op diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c index 8f7c28b0970..1d4789ea681 100644 --- a/src/mame/drivers/looping.c +++ b/src/mame/drivers/looping.c @@ -145,6 +145,7 @@ public: DECLARE_DRIVER_INIT(looping); TILE_GET_INFO_MEMBER(get_tile_info); virtual void machine_start(); + virtual void machine_reset(); virtual void video_start(); virtual void palette_init(); UINT32 screen_update_looping(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -333,7 +334,11 @@ void looping_state::machine_start() save_item(NAME(m_sound)); } - +void looping_state::machine_reset() +{ + // Disable auto wait state generation by raising the READY line on reset + static_cast(machine().device("maincpu"))->set_ready(ASSERT_LINE); +} /************************************* * diff --git a/src/mame/drivers/nsm.c b/src/mame/drivers/nsm.c index f40aaa1bef9..928ecd6c853 100644 --- a/src/mame/drivers/nsm.c +++ b/src/mame/drivers/nsm.c @@ -121,6 +121,8 @@ static TMS9995_CONFIG( cpuconf95 ) void nsm_state::machine_reset() { + // Disable auto wait state generation by raising the READY line on reset + static_cast(machine().device("maincpu"))->set_ready(ASSERT_LINE); } static MACHINE_CONFIG_START( nsm, nsm_state ) diff --git a/src/mame/drivers/nsmpoker.c b/src/mame/drivers/nsmpoker.c index 62f9e6bdc79..9d9b0d6374e 100644 --- a/src/mame/drivers/nsmpoker.c +++ b/src/mame/drivers/nsmpoker.c @@ -83,6 +83,7 @@ public: TILE_GET_INFO_MEMBER(get_bg_tile_info); virtual void video_start(); virtual void palette_init(); + virtual void machine_reset(); UINT32 screen_update_nsmpoker(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(nsmpoker_interrupt); required_device m_maincpu; @@ -403,6 +404,12 @@ static TMS9995_CONFIG( cpuconf95 ) NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt }; +void nsmpoker_state::machine_reset() +{ + // Disable auto wait state generation by raising the READY line on reset + static_cast(machine().device("maincpu"))->set_ready(ASSERT_LINE); +} + /************************* * Machine Drivers * *************************/