diff options
author | JP Cimalando <jpcima@users.noreply.github.com> | 2018-06-19 16:12:27 +0200 |
---|---|---|
committer | JP Cimalando <jpcima@users.noreply.github.com> | 2018-06-19 16:25:36 +0200 |
commit | 3013fbb93b06e8d30b6b54c324340d6dccad7f3b (patch) | |
tree | 8ffbd8d896849ffd418bccf5d429f74e7f63c6d2 /src/adlmidi.cpp | |
parent | 70c83caace9911dc5d8b80c1653c96b073f88e4a (diff) | |
download | libADLMIDI-3013fbb93b06e8d30b6b54c324340d6dccad7f3b.tar.gz libADLMIDI-3013fbb93b06e8d30b6b54c324340d6dccad7f3b.tar.bz2 libADLMIDI-3013fbb93b06e8d30b6b54c324340d6dccad7f3b.zip |
get chip base on level with OPNMIDI
Diffstat (limited to 'src/adlmidi.cpp')
-rw-r--r-- | src/adlmidi.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/src/adlmidi.cpp b/src/adlmidi.cpp index a0c7d8a..9210b5b 100644 --- a/src/adlmidi.cpp +++ b/src/adlmidi.cpp @@ -511,11 +511,28 @@ ADLMIDI_EXPORT int adl_switchEmulator(struct ADL_MIDIPlayer *device, int emulato adl_reset(device); return 0; } - play->setErrorString("OPN2 MIDI: Unknown emulation core!"); + play->setErrorString("OPL3 MIDI: Unknown emulation core!"); } return -1; } + +ADLMIDI_EXPORT int adl_setRunAtPcmRate(ADL_MIDIPlayer *device, int enabled) +{ + if(device) + { + MIDIplay *play = reinterpret_cast<MIDIplay *>(device->adl_midiPlayer); + if(play) + { + play->m_setup.runAtPcmRate = (enabled != 0); + adl_reset(device); + return 0; + } + } + return -1; +} + + ADLMIDI_EXPORT const char *adl_linkedLibraryVersion() { #if !defined(ADLMIDI_ENABLE_HQ_RESAMPLER) @@ -574,7 +591,8 @@ ADLMIDI_EXPORT void adl_reset(struct ADL_MIDIPlayer *device) return; MIDIplay *play = reinterpret_cast<MIDIplay *>(device->adl_midiPlayer); play->m_setup.tick_skip_samples_delay = 0; - play->opl.Reset(play->m_setup.emulator, play->m_setup.PCM_RATE); + play->opl.runAtPcmRate = play->m_setup.runAtPcmRate; + play->opl.Reset(play->m_setup.emulator, play->m_setup.PCM_RATE, play); play->ch.clear(); play->ch.resize((size_t)play->opl.NumChannels); } |