[Scummvm-git-logs] scummvm master -> 5d8cc4fd750b574d260bfa979fe298c58f70e003

bluegr noreply at scummvm.org
Sat May 14 06:48:18 UTC 2022


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:
5d8cc4fd75 SCUMM: Fix MM NES dark rooms colors on strict-alignment archs


Commit: 5d8cc4fd750b574d260bfa979fe298c58f70e003
    https://github.com/scummvm/scummvm/commit/5d8cc4fd750b574d260bfa979fe298c58f70e003
Author: Donovan Watteau (contrib at dwatteau.fr)
Date: 2022-05-14T09:48:15+03:00

Commit Message:
SCUMM: Fix MM NES dark rooms colors on strict-alignment archs

Fix the missing case for SCUMM_NEED_ALIGNMENT archs in previous
commit 985ccfa8dff9560af7f38a41368f82879684d55d.

Changed paths:
    NEWS.md
    engines/scumm/gfx.cpp


diff --git a/NEWS.md b/NEWS.md
index e35590e72d7..214acaaecb4 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -84,6 +84,8 @@ For a more comprehensive changelog of the latest experimental code, see:
      of The Secret of Monkey Island.
    - Fixed Full Throttle distorted graphics when Ben runs past the Corley
      Motors entrance.
+   - Fixed incorrect dark rooms colors in MM NES on strict-alignment ports such
+     as Dreamcast, Apple silicon and various handheld devices.
 
  Sherlock:
    - Fixed slowdown in Serrated Scalpel intro when playing the game from a small
diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index c3633121eb6..cf0ab5c0cb1 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -1256,10 +1256,13 @@ static void copy8Col(byte *dst, int dstPitch, const byte *src, int height, uint8
 static void clear8Col(byte *dst, int dstPitch, int height, uint8 bitDepth) {
 	do {
 #if defined(SCUMM_NEED_ALIGNMENT)
-		memset(dst, 0, 8 * bitDepth);
+		if (g_scumm->_game.platform == Common::kPlatformNES)
+			memset(dst, 0x1d, 8 * bitDepth);
+		else
+			memset(dst, 0, 8 * bitDepth);
 #else
 		if (g_scumm->_game.platform == Common::kPlatformNES) {
-			memset(dst, 0x1d, 8);
+			memset(dst, 0x1d, 8 * bitDepth);
 		} else {
 			((uint32*)dst)[0] = 0;
 			((uint32*)dst)[1] = 0;




More information about the Scummvm-git-logs mailing list