[Scummvm-cvs-logs] scummvm master -> 0d887aa2459db04daddfd2a150f1d1ae4499091b

lordhoto lordhoto at gmail.com
Fri Aug 19 14:45:44 CEST 2011


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
0d887aa245 SCUMM: Fix AdLib output in (MI2/)Indy4 Amiga.


Commit: 0d887aa2459db04daddfd2a150f1d1ae4499091b
    https://github.com/scummvm/scummvm/commit/0d887aa2459db04daddfd2a150f1d1ae4499091b
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2011-08-19T05:39:35-07:00

Commit Message:
SCUMM: Fix AdLib output in (MI2/)Indy4 Amiga.

Indy4 Amiga features only ROL tracks, thus with
69adb13c2f3cadd4dac2bba8164aa0b8a9400abc the MIDI -> AdLib conversion was
broken. Fixed that now by allowing ROL tracks to be played on AdLib output for
Amiga games.

This probably also affected Monkey Island 2 Amiga, but I don't have it to test.

Changed paths:
    engines/scumm/sound.cpp



diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp
index 5aded50..d823520 100644
--- a/engines/scumm/sound.cpp
+++ b/engines/scumm/sound.cpp
@@ -1157,14 +1157,16 @@ int ScummEngine::readSoundResource(ResId idx) {
 			// only contains a ROL resource for sound id 60. Formerly we tried
 			// to play that via the AdLib or FM-Towns audio driver resulting
 			// in strange noises. Now we behave like the original did.
-			// We make an exception for priority 2 for the Mac output since
-			// we're doing GM -> AdLib conversion.
-			if ((_sound->_musicType == MDT_ADLIB || _sound->_musicType == MDT_TOWNS) && pri != 10 && pri != 2)
+			// We make an exception for Macintosh, which uses priority 2 for
+			// its sound resources, and Amiga games, which feature only ROL
+			// resources, since we are a doing Midi -> AdLib conversion for
+			// these.
+			if ((_sound->_musicType == MDT_ADLIB || _sound->_musicType == MDT_TOWNS) && pri != 10
+				&& pri != 2 && _game.platform != Common::kPlatformAmiga)
 				pri = -1;
 
 			debugC(DEBUG_RESOURCE, "    tag: %s, total_size=%d, pri=%d", tag2str(tag), size, pri);
 
-
 			if (pri > best_pri) {
 				best_pri = pri;
 				best_size = size;






More information about the Scummvm-git-logs mailing list