[Scummvm-cvs-logs] SF.net SVN: scummvm: [20720] scummvm/trunk/engines/scumm

kirben at users.sourceforge.net kirben at users.sourceforge.net
Wed Feb 15 22:01:11 CET 2006


Revision: 20720
Author:   kirben
Date:     2006-02-15 22:00:46 -0800 (Wed, 15 Feb 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm?rev=20720&view=rev

Log Message:
-----------
Only DOS & Macintosh versions of HE60/61 games require XMIDI support

Modified Paths:
--------------
    scummvm/trunk/engines/scumm/scumm.cpp
    scummvm/trunk/engines/scumm/sound.cpp
Modified: scummvm/trunk/engines/scumm/scumm.cpp
===================================================================
--- scummvm/trunk/engines/scumm/scumm.cpp	2006-02-16 05:55:44 UTC (rev 20719)
+++ scummvm/trunk/engines/scumm/scumm.cpp	2006-02-16 06:00:46 UTC (rev 20720)
@@ -2318,15 +2318,15 @@
 		_musicEngine = new Player_V2A(this);
 	} else if ((_platform == Common::kPlatformAmiga) && (_version == 3)) {
 		_musicEngine = new Player_V3A(this);
-	} else if ((_platform == Common::kPlatformAmiga) && (_version < 5)) {
+	} else if ((_platform == Common::kPlatformAmiga) && (_version <= 4)) {
 		_musicEngine = NULL;
 	} else if (_gameId == GID_MANIAC && (_version == 1)) {
 		_musicEngine = new Player_V1(this, midiDriver != MD_PCSPK);
 	} else if (_version <= 2) {
 		_musicEngine = new Player_V2(this, midiDriver != MD_PCSPK);
-	} else if ((_musicType == MDT_PCSPK) && ((_version > 2) && (_version < 5))) {
+	} else if ((_musicType == MDT_PCSPK) && ((_version > 2) && (_version <= 4))) {
 		_musicEngine = new Player_V2(this, midiDriver != MD_PCSPK);
-	} else if (_version > 2 && _heversion <= 61) {
+	} else if (_version >= 3 && _heversion <= 61 && _platform != Common::kPlatform3DO) {
 		MidiDriver *nativeMidiDriver = 0;
 		MidiDriver *adlibMidiDriver = 0;
 

Modified: scummvm/trunk/engines/scumm/sound.cpp
===================================================================
--- scummvm/trunk/engines/scumm/sound.cpp	2006-02-16 05:55:44 UTC (rev 20719)
+++ scummvm/trunk/engines/scumm/sound.cpp	2006-02-16 06:00:46 UTC (rev 20720)
@@ -732,14 +732,14 @@
 		}
 	} else if (_vm->_heversion >= 60) {
 		if (sound == -2) {
-			return !isSfxFinished();
+			return _vm->_mixer->getSoundID(_heSoundChannels[0]);
 		} else if (sound == -1) {
-			// getSoundStatus(), with a -1, will return the
-			// ID number of the first active music it finds.
-			if (_currentMusic)
-				return (_vm->_mixer->isSoundIDActive(_currentMusic) ? _currentMusic : 0);
-			else if (_vm->_imuse)
-				return (_vm->_imuse->getSoundStatus(sound));
+			if (_vm->_platform == Common::kPlatform3DO) {
+				return _vm->_mixer->isSoundIDActive(_currentMusic);
+			} else {
+				if (_vm->_imuse)
+					return _vm->_imuse->getSoundStatus(_currentMusic);
+			}
 		}
 	}
 
@@ -825,12 +825,9 @@
 		}
 	} else if (_vm->_heversion >= 60) {
 		if (sound == -2) {
+			sound = _heChannel[0].sound;
 		} else if (sound == -1) {
-			// Stop current music
-			if (_currentMusic)
-				_vm->_mixer->stopID(_currentMusic);
-			else if (_vm->_imuse)
-				_vm->_imuse->stopSound(_vm->_imuse->getSoundStatus(-1));
+			sound = _currentMusic;
 		}
 	}
 







More information about the Scummvm-git-logs mailing list