diff options
author | Jamieson Christian | 2003-10-01 17:34:46 +0000 |
---|---|---|
committer | Jamieson Christian | 2003-10-01 17:34:46 +0000 |
commit | 91dc619adfc2136651f6afeed5fda9926c983f23 (patch) | |
tree | 9592683e69e45e19607063ee201433ae7a7ac55e /simon | |
parent | 57eb9654b79e088a3cac406fad9b3fedccf30f29 (diff) | |
download | scummvm-rg350-91dc619adfc2136651f6afeed5fda9926c983f23.tar.gz scummvm-rg350-91dc619adfc2136651f6afeed5fda9926c983f23.tar.bz2 scummvm-rg350-91dc619adfc2136651f6afeed5fda9926c983f23.zip |
Fix for Bug [812995] MT-32: wrong channel mapping
Implemented channel mask for Simon 1/2
when using --native-mt32.
svn-id: r10525
Diffstat (limited to 'simon')
-rw-r--r-- | simon/simon.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/simon/simon.cpp b/simon/simon.cpp index 5949e586b0..4a1e01b199 100644 --- a/simon/simon.cpp +++ b/simon/simon.cpp @@ -203,8 +203,6 @@ SimonEngine::SimonEngine(GameDetector *detector, OSystem *syst) : Engine(detector, syst), midi (syst) { OSystem::Property prop; - MidiDriver *driver = detector->createMidi(); - _vc_ptr = 0; _game_offsets_ptr = 0; @@ -476,8 +474,11 @@ SimonEngine::SimonEngine(GameDetector *detector, OSystem *syst) set_volume(detector->_sfx_volume); // Setup midi driver + MidiDriver *driver = detector->createMidi(); if (!driver) driver = MidiDriver_ADLIB_create(_mixer); + else if (detector->_native_mt32) + driver->property (MidiDriver::PROP_CHANNEL_MASK, 0x03FE); midi.mapMT32toGM (!(_game & GF_SIMON2) && !detector->_native_mt32); midi.set_driver(driver); |