[Scummvm-git-logs] scummvm master -> d8f9aa886f35a15548149cc7e45f3e2a7fa09aec

AndywinXp noreply at scummvm.org
Sun Sep 1 16:13:56 UTC 2024


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:
d8f9aa886f SCUMM: MI1 (AMIGA): Fix EGA renderer setting being discarded


Commit: d8f9aa886f35a15548149cc7e45f3e2a7fa09aec
    https://github.com/scummvm/scummvm/commit/d8f9aa886f35a15548149cc7e45f3e2a7fa09aec
Author: AndywinXp (andywinxp at gmail.com)
Date: 2024-09-01T18:13:51+02:00

Commit Message:
SCUMM: MI1 (AMIGA): Fix EGA renderer setting being discarded

This was most definitely done on purpose to limit the range
of "damage" :-) an user could do when selecting non-trivial
render modes for non-trivial versions of the games.

But there is an actual use for the EGA renderer setting on MI1 Amiga,
as there were two versions of the executable back in the day:
- One which had the EGA palette for actors (believe me, it exists,
  I have seen it with my own eyes on an actual Amiga 500 :-) )
- One which had a more pale palette, which is the most known
  version.

This fixes and closes #7455:
"MI1 Amiga: choose actor palette"

Changed paths:
    engines/scumm/scumm.cpp


diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index 44e52457447..891a57fe2a0 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -309,8 +309,23 @@ ScummEngine::ScummEngine(OSystem *syst, const DetectorResult &dr)
 
 	case Common::kRenderCGA:
 	case Common::kRenderEGA:
-		if ((_game.version >= 4 && !(_game.features & GF_16COLOR) && !_supportsEGADithering)
-			|| (_game.features & GF_OLD256) || (_game.platform != Common::kPlatformDOS && !_supportsEGADithering))
+		// An actual use case for letting users change the render mode on Monkey Island 1 (Amiga):
+		// between revisions and localizations there were two variants of the executable:
+		// 
+		// - One which used the EGA palette for actors, resulting in
+		//   characters having the usual "sunburnt" effect; as an example,
+		//   one of the italian versions shipped with this executable.
+		// 
+		// - One which used a custom paler palette for actors, which might
+		//   be how most of the people experienced the game.
+		//
+		// Let's allow the user to change at least this setting...
+		// The default is the Amiga renderer, i.e. the second option.
+		if (_game.id == GID_MONKEY_VGA && _renderMode == Common::kRenderEGA && _game.platform == Common::kPlatformAmiga)
+			break;
+
+		if ((_game.version >= 4 && !(_game.features & GF_16COLOR) && !_supportsEGADithering) ||
+			(_game.features & GF_OLD256) || (_game.platform != Common::kPlatformDOS && !_supportsEGADithering))
 			_renderMode = Common::kRenderDefault;
 		break;
 




More information about the Scummvm-git-logs mailing list