[Scummvm-cvs-logs] SF.net SVN: scummvm: [25483] scummvm/trunk/engines/scumm/scumm.cpp
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Sun Feb 11 04:01:28 CET 2007
Revision: 25483
http://scummvm.svn.sourceforge.net/scummvm/?rev=25483&view=rev
Author: fingolfin
Date: 2007-02-10 19:01:28 -0800 (Sat, 10 Feb 2007)
Log Message:
-----------
Patch #1186858 (GM/GS/MT-32 Init Patch) -- slightly adapted to apply to current SVN
Modified Paths:
--------------
scummvm/trunk/engines/scumm/scumm.cpp
Modified: scummvm/trunk/engines/scumm/scumm.cpp
===================================================================
--- scummvm/trunk/engines/scumm/scumm.cpp 2007-02-11 02:47:02 UTC (rev 25482)
+++ scummvm/trunk/engines/scumm/scumm.cpp 2007-02-11 03:01:28 UTC (rev 25483)
@@ -1518,8 +1518,8 @@
break;
}
- // FIXME: MD_TOWNS should not be _midi_native in the first place!! iMuse code needs to be restructured.
- if ((_game.id == GID_TENTACLE) || (_game.id == GID_SAMNMAX) || (midiDriver == MD_TOWNS))
+ // DOTT + SAM use General MIDI, so they shouldn't use GS settings
+ if ((_game.id == GID_TENTACLE) || (_game.id == GID_SAMNMAX))
_enable_gs = false;
else
_enable_gs = ConfMan.getBool("enable_gs");
@@ -1577,8 +1577,12 @@
_imuse->property(IMuse::PROP_GAME_ID, _game.id);
if (ConfMan.hasKey("tempo"))
_imuse->property(IMuse::PROP_TEMPO_BASE, ConfMan.getInt("tempo"));
- _imuse->property(IMuse::PROP_NATIVE_MT32, _native_mt32);
- _imuse->property(IMuse::PROP_GS, _enable_gs);
+ // YM2162 driver can't handle midi->getPercussionChannel(), NULL shouldn't init MT-32/GM/GS
+ if ((midi != MDT_TOWNS) && (midi != MDT_NONE)) {
+ _imuse->property(IMuse::PROP_NATIVE_MT32, _native_mt32);
+ if (midiDriver != MD_MT32) // MT-32 Emulation shouldn't be GM/GS initialized
+ _imuse->property(IMuse::PROP_GS, _enable_gs);
+ }
if (_game.heversion >= 60 || midi == MDT_TOWNS) {
_imuse->property(IMuse::PROP_LIMIT_PLAYERS, 1);
_imuse->property(IMuse::PROP_RECYCLE_PLAYERS, 1);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list