diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/adlmidi.cpp | 10 | ||||
-rw-r--r-- | src/adlmidi_midiplay.cpp | 5 | ||||
-rw-r--r-- | src/adlmidi_private.hpp | 2 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/adlmidi.cpp b/src/adlmidi.cpp index 7c08287..2add51a 100644 --- a/src/adlmidi.cpp +++ b/src/adlmidi.cpp @@ -696,3 +696,13 @@ ADLMIDI_EXPORT int adl_atEnd(ADL_MIDIPlayer *device) return 1; return (int)player->atEnd; } + +ADLMIDI_EXPORT void adl_panic(ADL_MIDIPlayer *device) +{ + if(!device) + return; + MIDIplay *player = reinterpret_cast<MIDIplay *>(device->adl_midiPlayer); + if(!player) + return; + player->realTime_panic(); +} diff --git a/src/adlmidi_midiplay.cpp b/src/adlmidi_midiplay.cpp index 83517db..7b9a086 100644 --- a/src/adlmidi_midiplay.cpp +++ b/src/adlmidi_midiplay.cpp @@ -1346,6 +1346,11 @@ void MIDIplay::realTime_BankChange(uint8_t channel, uint16_t bank) Ch[channel].bank_msb = uint8_t((bank >> 8) & 0xFF); } +void MIDIplay::realTime_panic() +{ + Panic(); +} + void MIDIplay::NoteUpdate(uint16_t MidCh, MIDIplay::MIDIchannel::activenoteiterator i, diff --git a/src/adlmidi_private.hpp b/src/adlmidi_private.hpp index 58b4e10..27cfdb0 100644 --- a/src/adlmidi_private.hpp +++ b/src/adlmidi_private.hpp @@ -868,6 +868,8 @@ public: void realTime_BankChangeMSB(uint8_t channel, uint8_t msb); void realTime_BankChange(uint8_t channel, uint16_t bank); + void realTime_panic(); + private: enum { |