From 9d1006c7a3503cd603a9266e6ae589fe8c090d83 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Wed, 10 Nov 2010 14:28:45 +0000 Subject: SCI3: Some changes - Placed the SCI3 version detection in the proper place - Some new types of SCI3 MT-32 patches (e.g. in the Lighthouse SCI3 demo) are ignored, for now svn-id: r54188 --- engines/sci/sound/drivers/midi.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'engines/sci/sound') diff --git a/engines/sci/sound/drivers/midi.cpp b/engines/sci/sound/drivers/midi.cpp index 6611753420..a8f20dc0e2 100644 --- a/engines/sci/sound/drivers/midi.cpp +++ b/engines/sci/sound/drivers/midi.cpp @@ -893,10 +893,16 @@ int MidiPlayer_Midi::open(ResourceManager *resMan) { res = resMan->findResource(ResourceId(kResourceTypePatch, 1), 0); if (res) { - if (!isMt32GmPatch(res->data, res->size)) + if (!isMt32GmPatch(res->data, res->size)) { mapMt32ToGm(res->data, res->size); - else - error("MT-32 patch has wrong type"); + } else { + if (getSciVersion() <= SCI_VERSION_2_1) { + error("MT-32 patch has wrong type"); + } else { + // Happens in the SCI3 interactive demo of Lighthouse + warning("TODO: Ignoring new SCI3 type of MT-32 patch for now (size = %d)", res->size); + } + } } else { // No MT-32 patch present, try to read from MT32.DRV Common::File f; -- cgit v1.2.3