diff options
-rw-r--r-- | queen/queen.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/queen/queen.cpp b/queen/queen.cpp index 41491a12ed..d573a85c2c 100644 --- a/queen/queen.cpp +++ b/queen/queen.cpp @@ -44,6 +44,8 @@ #include "queen/talk.h" #include "queen/walk.h" +#include "sound/mididrv.h" + extern uint16 _debugLevel; #ifdef _WIN32_WCE @@ -165,7 +167,14 @@ void QueenEngine::initialise(void) { _graphics = new Graphics(this); _input = new Input(_resource->getLanguage(), _system); _logic = new Logic(this); - _music = new Music(GameDetector::createMidi(GameDetector::detectMusicDriver(MDT_NATIVE)), this); + + int midiDriver = GameDetector::detectMusicDriver(MDT_NATIVE | MDT_ADLIB | MDT_PREFER_NATIVE); + if (midiDriver == MD_ADLIB) { + warning("Adlib music not supported, please use native MIDI if possible"); + midiDriver = MD_NULL; + } + + _music = new Music(GameDetector::createMidi(midiDriver), this); _sound = Sound::giveSound(_mixer, this, _resource->compression()); _walk = new Walk(this); _timer->installTimerProc(&timerHandler, 1000000 / 50, this); //call 50 times per second |