From a1a735b678051d8d973df8ef14944c597d0e3e07 Mon Sep 17 00:00:00 2001 From: Matt Montag Date: Sun, 2 Jun 2019 13:47:09 -0700 Subject: Update emulators enabled check Add all emulators to the preprocessor directive that ensures at least one is enabled. --- src/adlmidi_opl3.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/adlmidi_opl3.cpp b/src/adlmidi_opl3.cpp index a7bffc3..0df9d4d 100644 --- a/src/adlmidi_opl3.cpp +++ b/src/adlmidi_opl3.cpp @@ -29,7 +29,10 @@ #ifdef ADLMIDI_HW_OPL static const unsigned OPLBase = 0x388; #else -# if defined(ADLMIDI_DISABLE_NUKED_EMULATOR) && defined(ADLMIDI_DISABLE_DOSBOX_EMULATOR) +# if defined(ADLMIDI_DISABLE_NUKED_EMULATOR) && \ + defined(ADLMIDI_DISABLE_DOSBOX_EMULATOR) && \ + defined(ADLMIDI_DISABLE_OPAL_EMULATOR) && \ + defined(ADLMIDI_DISABLE_JAVA_EMULATOR) # error "No emulators enabled. You must enable at least one emulator to use this library!" # endif -- cgit v1.2.3 From b56ef6bb0e42f9417b65242142cfa02a38e781e6 Mon Sep 17 00:00:00 2001 From: Vitaly Novichkov Date: Wed, 5 Jun 2019 20:50:10 +0300 Subject: Add Emscripten as tested platform --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 7b259ec..521bafa 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ Library is based on the ADLMIDI, a MIDI player for Linux and Windows with OPL3 e * DJGPP GCC 7.2 cross compiler from Linux to MS-DOS 32-bit * OpenBSD * Haiku +* Emscripten # Key features * OPL3 emulation with four-operator mode support -- cgit v1.2.3 From 35c7fd9d8320a9d97723591eb6ee48974f6be528 Mon Sep 17 00:00:00 2001 From: JP Cimalando Date: Mon, 1 Jul 2019 17:55:12 +0200 Subject: dosbox: thread-safe global initialization --- src/chips/dosbox/dbopl.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/chips/dosbox/dbopl.cpp b/src/chips/dosbox/dbopl.cpp index d1ab82f..5b4bf53 100644 --- a/src/chips/dosbox/dbopl.cpp +++ b/src/chips/dosbox/dbopl.cpp @@ -1507,11 +1507,15 @@ void Chip::Setup( Bit32u rate ) { } } -static bool doneTables = false; +static volatile bool doneTables = false; +static Mutex mutexTables; + void InitTables( void ) { if ( doneTables ) return; - doneTables = true; + MutexHolder lock( mutexTables ); + if ( doneTables ) + return; #if ( DBOPL_WAVE == WAVE_HANDLER ) || ( DBOPL_WAVE == WAVE_TABLELOG ) //Exponential volume table, same as the real adlib for ( int i = 0; i < 256; i++ ) { @@ -1661,6 +1665,7 @@ void InitTables( void ) { } } #endif + doneTables = true; } Bit32u Handler::WriteAddr( Bit32u port, Bit8u val ) { -- cgit v1.2.3 From 84bd1e141a67745d6c06e179d62f5b17cef99e31 Mon Sep 17 00:00:00 2001 From: Vitaly Novichkov Date: Mon, 1 Jul 2019 19:38:49 +0300 Subject: Changed macOS image for Travis-CI --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 3dc4494..01af559 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,7 +22,7 @@ matrix: - libvlc-dev - libvlccore-dev - os: osx - osx_image: xcode9.4 + osx_image: xcode10.2 compiler: clang++ addons: homebrew: -- cgit v1.2.3