Fix for Bug [812995] MT-32: wrong channel mapping

Implemented channel mask for Simon 1/2
when using --native-mt32.

svn-id: r10525
This commit is contained in:
Jamieson Christian 2003-10-01 17:34:46 +00:00
parent 57eb9654b7
commit 91dc619adf

View File

@ -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);