[Scummvm-git-logs] scummvm master -> 8ce385849d8a3433b93470d92c8ff544b21f1f88
sev-
noreply at scummvm.org
Tue Jul 14 22:46:08 UTC 2026
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
8ce385849d DIRECTOR: Reverse ink on colour bitmaps behaves like BackgndTrans
Commit: 8ce385849d8a3433b93470d92c8ff544b21f1f88
https://github.com/scummvm/scummvm/commit/8ce385849d8a3433b93470d92c8ff544b21f1f88
Author: Lariaa (30549703+Lariaa at users.noreply.github.com)
Date: 2026-07-15T00:46:05+02:00
Commit Message:
DIRECTOR: Reverse ink on colour bitmaps behaves like BackgndTrans
Reverse ink was implemented as a raw palette-index XOR (*dst ^= src), which
is only meaningful for 1-bit images. On >= 8-bit colour bitmaps XOR-ing
palette indices is meaningless and produces garbage.
In Loewenzahn 1 (loewe1) the Bauwagen "RegenbogenKartoffel" film loop uses
Reverse ink to recolour the potato-king wall picture; it rendered as
colourful noise.
Changed paths:
engines/director/graphics.cpp
diff --git a/engines/director/graphics.cpp b/engines/director/graphics.cpp
index a22212b98be..f97d6b234c9 100644
--- a/engines/director/graphics.cpp
+++ b/engines/director/graphics.cpp
@@ -453,7 +453,11 @@ void InkPrimitives<T>::drawPoint(int x, int y, uint32 src, void *data) {
// Originally designed for 1-bit mode so that
// black pixels would appear white on a black
// background.
- *dst ^= src;
+ if (p->oneBitImage || p->ms || p->applyColor) {
+ *dst ^= src;
+ } else {
+ *dst = (src == p->backColor) ? *dst : src;
+ }
} else {
// In 32-bit mode, this is the opposite??
*dst ^= ~(src);
More information about the Scummvm-git-logs
mailing list