From 35496174d0d98bef0860ca7643c18c0ce9a40568 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Wed, 27 Mar 2019 19:00:23 +0100 Subject: audio/snk6502.cpp: fixed MT07266 (nw) --- src/mame/audio/snk6502.cpp | 3 +++ src/mame/audio/snk6502.h | 1 + 2 files changed, 4 insertions(+) diff --git a/src/mame/audio/snk6502.cpp b/src/mame/audio/snk6502.cpp index 091186b79a2..94e647db077 100644 --- a/src/mame/audio/snk6502.cpp +++ b/src/mame/audio/snk6502.cpp @@ -995,7 +995,10 @@ WRITE8_MEMBER(sasuke_sound_device::sound_w) m_samples->start(3, 3); if (BIT(data & ~m_last_port1, 7)) + { + m_custom->reset_offset(0); // TODO: why is this the only game that needs this when unmuting? m_custom->unmute_channel(0); + } else if (BIT(~data & m_last_port1, 7)) m_custom->mute_channel(0); diff --git a/src/mame/audio/snk6502.h b/src/mame/audio/snk6502.h index b237e7249a6..354fca29081 100644 --- a/src/mame/audio/snk6502.h +++ b/src/mame/audio/snk6502.h @@ -27,6 +27,7 @@ public: void mute_channel(int channel); void unmute_channel(int channel); void set_sound0_stop_on_rollover(int value) { m_sound0_stop_on_rollover = value; } + void reset_offset(int channel) { m_tone_channels[channel].offset = 0; } void speech_w(uint8_t data, const uint16_t *table, int start); -- cgit v1.2.3