[Scummvm-cvs-logs] SF.net SVN: scummvm:[35347] scummvm/trunk/engines/kyra/sound_midi.cpp

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Sun Dec 14 01:23:46 CET 2008


Revision: 35347
          http://scummvm.svn.sourceforge.net/scummvm/?rev=35347&view=rev
Author:   lordhoto
Date:     2008-12-14 00:23:46 +0000 (Sun, 14 Dec 2008)

Log Message:
-----------
Added code to initialize MT-32 properly for Lands of Lore.

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/sound_midi.cpp

Modified: scummvm/trunk/engines/kyra/sound_midi.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sound_midi.cpp	2008-12-13 21:08:13 UTC (rev 35346)
+++ scummvm/trunk/engines/kyra/sound_midi.cpp	2008-12-14 00:23:46 UTC (rev 35347)
@@ -503,13 +503,29 @@
 	_output->setTimerCallback(this, SoundMidiPC::onTimer);
 
 	if (_nativeMT32) {
+		const char *midiFile = 0;
+		const char *pakFile = 0;
 		if (_vm->gameFlags().gameID == GI_KYRA1) {
-			loadSoundFile("INTRO");
+			midiFile = "INTRO";
 		} else if (_vm->gameFlags().gameID == GI_KYRA2) {
-			_vm->resource()->loadPakFile("AUDIO.PAK");
-			loadSoundFile("HOF_SYX");
+			midiFile = "HOF_SYX";
+			pakFile = "AUDIO.PAK";
+		} else if (_vm->gameFlags().gameID == GI_LOL) {
+			midiFile = "LOREINTR";
+
+			if (_vm->gameFlags().isTalkie)
+				pakFile = "ENG/STARTUP.PAK";
+			else
+				pakFile = "STARTUP.PAK";
 		}
 	
+		if (!midiFile)
+			return true;
+
+		if (pakFile)
+			_vm->resource()->loadPakFile(pakFile);
+
+		loadSoundFile(midiFile);
 		playTrack(0);
 
 		Common::Event event;
@@ -519,8 +535,8 @@
 			_vm->_system->delayMillis(10);
 		}
 
-		if (_vm->gameFlags().gameID == GI_KYRA2)
-			_vm->resource()->unloadPakFile("AUDIO.PAK");
+		if (pakFile)
+			_vm->resource()->unloadPakFile(pakFile);
 	}
 
 	return true;


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