Fixes negative displacements being scaled to the wrong value, causing
views to be drawn at the wrong location.
Example: LB2 floppy Act 3 room 430 scaled O'Riley's x displacement
to -2 instead of -1, placing him one pixel too far to the left.
Confirmed in disassembly that this calculation is a signed divide
and not an unsigned shift.
Fixes the pigeon flight in Pepper's Adventures in Time.
The pigeon view is scaled down to one pixel but the scaling code was
incorrectly producing an empty table for certain inputs. Other scaling
inaccuracies were identified and fixed too.
Fixes bug #15222
This closes ticket #6712:
"SCUMM/HE: SPYFOX3 - Text drawing
glitch in "Radioactive Trash Collector""
HE100 (and a very late version of HE99) uses different
flags for drawBox color modes. Incidentally, the target
color (light gray) used for the background on which
text is rendered managed to trigger a different mode,
hence the text never being removed.
Fixes out of bounds memory access when closing a window that overlaps
with the menu bar at the top of the screen. This crashed at least some
release builds, including Windows release 2.8.1.
Mixed-Up Mother Goose is the only game known to draw a text window over
the menu bar. When I recently added support for this, I missed that the
code for closing the window needed to be updated too:
bc8550ce02
Fixes bug #15241
Big thanks to @hugoarpin for reporting this and testing the fix.
Simultaneous MIDI players aren't supported by the backend.
MIDI sound effects are deactivated for now, till this
functionality is implemented properly with a single instance
* MTROPOLIS: add fallback palette to MovieElement blitting
Without a palette, there would be assertions and nullptr segfaults
in Graphics::ManagedSurface::blitFromInner.
Observed in MindGym and The Day The World Broke
The palette content is not correct yet. Mind Gym renders the video
with the wrong colors.
* MTROPOLIS: use global palette as fallback for MovieElement
Whenever _screenTop is non-zero the edges of GUI elements
will glitch during SMUSH movies. This happens on the originals
as well (the ending movies for DIG and COMI), but to a less extent.
Fixes the main issue of #15026:
"SCUMM: DIG: Color depth issues & artifacting
in some shots in SMUSH videos".
Verified from FT, DIG and COMI disassemblies.