From add55f65c5727bfab338be16e6548f9af8756048 Mon Sep 17 00:00:00 2001 From: Wohlstand Date: Thu, 3 Sep 2020 00:46:53 +0300 Subject: Fixed an incorrect logic of CC121 Issue #227 --- src/adlmidi_sequencer.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/adlmidi_sequencer.cpp') diff --git a/src/adlmidi_sequencer.cpp b/src/adlmidi_sequencer.cpp index e6de2b3..bf3d86c 100644 --- a/src/adlmidi_sequencer.cpp +++ b/src/adlmidi_sequencer.cpp @@ -103,6 +103,13 @@ static size_t rtCurrentDevice(void *userdata, size_t track) MIDIplay *context = reinterpret_cast(userdata); return context->realTime_currentDevice(track); } + +static void rtSongBegin(void *userdata) +{ + MIDIplay *context = reinterpret_cast(userdata); + return context->realTime_ResetState(); +} + /* NonStandard calls End */ @@ -131,6 +138,9 @@ void MIDIplay::initSequencerInterface() seq->rt_rawOPL = rtRawOPL; seq->rt_deviceSwitch = rtDeviceSwitch; seq->rt_currentDevice = rtCurrentDevice; + + seq->onSongStart = rtSongBegin; + seq->onSongStart_userData = this; /* NonStandard calls End */ m_sequencer->setInterface(seq); -- cgit v1.2.3