aboutsummaryrefslogtreecommitdiff
path: root/queen/queen.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2004-10-22 23:44:08 +0000
committerEugene Sandulenko2004-10-22 23:44:08 +0000
commit2c76a8e024565f8e35745f5b15ff1e63b8963805 (patch)
treeb86db26ea4aa14f8f3ed0c7c4e69b57c7a4f80ec /queen/queen.cpp
parentc8495dbf23b88cd5a1bcfc8aea7d2ba37096bd90 (diff)
downloadscummvm-rg350-2c76a8e024565f8e35745f5b15ff1e63b8963805.tar.gz
scummvm-rg350-2c76a8e024565f8e35745f5b15ff1e63b8963805.tar.bz2
scummvm-rg350-2c76a8e024565f8e35745f5b15ff1e63b8963805.zip
Support MT-32 emu.
svn-id: r15657
Diffstat (limited to 'queen/queen.cpp')
-rw-r--r--queen/queen.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/queen/queen.cpp b/queen/queen.cpp
index 79b63ed241..038755043e 100644
--- a/queen/queen.cpp
+++ b/queen/queen.cpp
@@ -347,14 +347,18 @@ void QueenEngine::initialise(void) {
_logic = new LogicGame(this);
}
- MidiDriver *driver = GameDetector::createMidi(GameDetector::detectMusicDriver(MDT_NATIVE | MDT_ADLIB | MDT_PREFER_NATIVE));
+ int midiDriver = GameDetector::detectMusicDriver(MDT_NATIVE | MDT_ADLIB | MDT_PREFER_NATIVE);
+ MidiDriver *driver = GameDetector::createMidi(midiDriver);
if (!driver)
driver = MidiDriver_ADLIB_create(_mixer);
- else if (ConfMan.getBool("native_mt32"))
+ else if (ConfMan.getBool("native_mt32") || (midiDriver == MD_MT32))
driver->property(MidiDriver::PROP_CHANNEL_MASK, 0x03FE);
_music = new Music(driver, this);
- _music->hasNativeMT32(ConfMan.getBool("native_mt32"));
+ _music->hasNativeMT32(ConfMan.getBool("native_mt32") || (midiDriver == MD_MT32));
+
+ if (midiDriver == MD_MT32)
+ _music->setPassThrough(true);
_sound = Sound::giveSound(_mixer, this, _resource->compression());
_walk = new Walk(this);