aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-06-19 22:53:45 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-06-19 22:53:45 +0300
commit105c5db749836ff25c03ae7abf3b2348ecb72c86 (patch)
tree4ab583ebdc831a4ea40082dc921475d95819545b /src
parent942e7a571a87b8e5322513addc550fdca2a8a99c (diff)
downloadlibADLMIDI-105c5db749836ff25c03ae7abf3b2348ecb72c86.tar.gz
libADLMIDI-105c5db749836ff25c03ae7abf3b2348ecb72c86.tar.bz2
libADLMIDI-105c5db749836ff25c03ae7abf3b2348ecb72c86.zip
Apply same DJGPP build fix
as here https://github.com/Wohlstand/libADLMIDI/commit/96f407668feb79b883e294d1ce3f7fc5bbf823ed [ :warning: A conflict with "poly-portamento2" is possible!!! :warning:. Need to me resolve it on receiving the push ]
Diffstat (limited to 'src')
-rw-r--r--src/adlmidi_opl3.cpp17
-rw-r--r--src/adlmidi_private.hpp4
2 files changed, 11 insertions, 10 deletions
diff --git a/src/adlmidi_opl3.cpp b/src/adlmidi_opl3.cpp
index 3de70e3..49e2e76 100644
--- a/src/adlmidi_opl3.cpp
+++ b/src/adlmidi_opl3.cpp
@@ -486,18 +486,22 @@ void OPL3::ClearChips()
void OPL3::Reset(int emulator, unsigned long PCM_RATE, void *audioTickHandler)
{
- #ifndef ADLMIDI_HW_OPL
+#ifndef ADLMIDI_HW_OPL
ClearChips();
- #endif
+#else
(void)emulator;
(void)PCM_RATE;
+#endif
+#if !defined(ADLMIDI_AUDIO_TICK_HANDLER)
+ (void)audioTickHandler;
+#endif
ins.clear();
pit.clear();
regBD.clear();
- #ifndef ADLMIDI_HW_OPL
+#ifndef ADLMIDI_HW_OPL
cardsOP2.resize(NumCards, AdlMIDI_SPtr<OPLChipBase>());
- #endif
+#endif
NumChannels = NumCards * 23;
ins.resize(NumChannels, adl[adlDefaultNumber]);
@@ -521,9 +525,8 @@ void OPL3::Reset(int emulator, unsigned long PCM_RATE, void *audioTickHandler)
for(size_t i = 0; i < NumCards; ++i)
{
- OPLChipBase *chip;
-
#ifndef ADLMIDI_HW_OPL
+ OPLChipBase *chip;
switch(emulator)
{
default:
@@ -546,7 +549,9 @@ void OPL3::Reset(int emulator, unsigned long PCM_RATE, void *audioTickHandler)
chip->setRate((uint32_t)PCM_RATE);
if(runAtPcmRate)
chip->setRunningAtPcmRate(true);
+# if defined(ADLMIDI_AUDIO_TICK_HANDLER)
chip->setAudioTickHandlerInstance(audioTickHandler);
+# endif
#endif // ADLMIDI_HW_OPL
for(unsigned a = 0; a < 18; ++a) Poke(i, 0xB0 + Channels[a], 0x00);
diff --git a/src/adlmidi_private.hpp b/src/adlmidi_private.hpp
index 0614c7b..0e63b5a 100644
--- a/src/adlmidi_private.hpp
+++ b/src/adlmidi_private.hpp
@@ -1258,10 +1258,6 @@ struct FourChars
};
*/
-#if !defined(ADLMIDI_AUDIO_TICK_HANDLER)
-#error The audio tick handler must be enabled!
-#endif
-
extern void adl_audioTickHandler(void *instance, uint32_t chipId, uint32_t rate);
extern int adlRefreshNumCards(ADL_MIDIPlayer *device);