aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_opl3.cpp
diff options
context:
space:
mode:
authorWohlstand <admin@wohlnet.ru>2025-03-29 23:11:07 +0300
committerWohlstand <admin@wohlnet.ru>2025-03-29 23:11:56 +0300
commita37298e7bed28752e8dcbe8e37e355fe47bf5e99 (patch)
treed97e76f8c1acfd43626f8d1a0496090c32ca4fd6 /src/adlmidi_opl3.cpp
parente92a4d7285197ab2868aa36f975d73ceee915bea (diff)
downloadlibADLMIDI-a37298e7bed28752e8dcbe8e37e355fe47bf5e99.tar.gz
libADLMIDI-a37298e7bed28752e8dcbe8e37e355fe47bf5e99.tar.bz2
libADLMIDI-a37298e7bed28752e8dcbe8e37e355fe47bf5e99.zip
Added support for LLE OPL2 and OPL3 emulators
Kept disabled by default because they are extremely heavy for ordinary processors.
Diffstat (limited to 'src/adlmidi_opl3.cpp')
-rw-r--r--src/adlmidi_opl3.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/adlmidi_opl3.cpp b/src/adlmidi_opl3.cpp
index 97760cf..be84203 100644
--- a/src/adlmidi_opl3.cpp
+++ b/src/adlmidi_opl3.cpp
@@ -74,6 +74,16 @@
# include "chips/ymfm_opl3.h"
# endif
+// Nuked OPL2 LLE emulator
+# ifdef ADLMIDI_ENABLE_OPL2_LLE_EMULATOR
+# include "chips/ym3812_lle.h"
+# endif
+
+// Nuked OPL3 LLE emulator
+# ifdef ADLMIDI_ENABLE_OPL3_LLE_EMULATOR
+# include "chips/ymf262_lle.h"
+# endif
+
// HW OPL Serial
# ifdef ADLMIDI_ENABLE_HW_SERIAL
# include "chips/opl_serial_port.h"
@@ -110,6 +120,14 @@ static const unsigned adl_emulatorSupport = 0
| (1u << ADLMIDI_EMU_YMFM_OPL2)
| (1u << ADLMIDI_EMU_YMFM_OPL3)
# endif
+
+# ifdef ADLMIDI_ENABLE_OPL2_LLE_EMULATOR
+ | (1u << ADLMIDI_EMU_NUKED_OPL2_LLE)
+# endif
+
+# ifdef ADLMIDI_ENABLE_OPL3_LLE_EMULATOR
+ | (1u << ADLMIDI_EMU_NUKED_OPL3_LLE)
+# endif
#endif
;
@@ -1892,6 +1910,16 @@ void OPL3::reset(int emulator, unsigned long PCM_RATE, void *audioTickHandler)
chip = new YmFmOPL3;
break;
#endif
+#ifdef ADLMIDI_ENABLE_OPL2_LLE_EMULATOR
+ case ADLMIDI_EMU_NUKED_OPL2_LLE:
+ chip = new Ym3812LLEOPL2;
+ break;
+#endif
+#ifdef ADLMIDI_ENABLE_OPL3_LLE_EMULATOR
+ case ADLMIDI_EMU_NUKED_OPL3_LLE:
+ chip = new Ymf262LLEOPL3;
+ break;
+#endif
}
#endif // ENABLE_HW_OPL_DOS