diff options
| author | 2018-04-23 03:48:42 +1000 | |
|---|---|---|
| committer | 2018-04-23 03:48:57 +1000 | |
| commit | 3306c9fb4d2165a07afc47f6d80f41afa8bca95c (patch) | |
| tree | a8ee1784cd7226afdb0deb3b89c40278d8772070 | |
| parent | ab71d889fbeb200a675de792ea7ab0588107c09a (diff) | |
neogeo.cpp: re-add boost interleave on audio command write - fixes glitches in s1945p (nw)
| -rw-r--r-- | src/mame/drivers/neogeo.cpp | 10 | ||||
| -rw-r--r-- | src/mame/includes/neogeo.h | 1 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/mame/drivers/neogeo.cpp b/src/mame/drivers/neogeo.cpp index 8ccbc7145b2..bb6fe18d205 100644 --- a/src/mame/drivers/neogeo.cpp +++ b/src/mame/drivers/neogeo.cpp @@ -946,6 +946,14 @@ WRITE8_MEMBER(mvs_state::io_control_w) } +WRITE8_MEMBER(neogeo_base_state::audio_command_w) +{ + // glitches in s1945p without the boost_interleave here + m_soundlatch->write(space, offset, data, mem_mask); + machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(50)); +} + + /************************************* * * Unmapped memory access @@ -1665,7 +1673,7 @@ READ16_MEMBER(neogeo_base_state::banked_vectors_r) void neogeo_base_state::base_main_map(address_map &map) { - map(0x320000, 0x320000).mirror(0x01fffe).w(m_soundlatch, FUNC(generic_latch_8_device::write)); + map(0x320000, 0x320000).mirror(0x01fffe).w(this, FUNC(neogeo_base_state::audio_command_w)); map(0x360000, 0x37ffff).r(this, FUNC(neogeo_base_state::unmapped_r)); map(0x380000, 0x3800ff).mirror(0x01ff00).w(this, FUNC(neogeo_base_state::io_control_w)).umask16(0x00ff); map(0x3a0000, 0x3a001f).mirror(0x01ffe0).r(this, FUNC(neogeo_base_state::unmapped_r)); diff --git a/src/mame/includes/neogeo.h b/src/mame/includes/neogeo.h index 430b55008e8..ab3d35d8073 100644 --- a/src/mame/includes/neogeo.h +++ b/src/mame/includes/neogeo.h @@ -84,6 +84,7 @@ protected: uint32_t screen_update_neogeo(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); virtual DECLARE_WRITE8_MEMBER(io_control_w); + DECLARE_WRITE8_MEMBER(audio_command_w); DECLARE_WRITE_LINE_MEMBER(set_use_cart_vectors); DECLARE_WRITE_LINE_MEMBER(set_use_cart_audio); DECLARE_READ16_MEMBER(banked_vectors_r); |
