[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