This also fixes a palette glitch when trying to interrupt during
a fade. (The old image would flash before the room changed. It's
possible other such glitches still exist here, but if so they're
much less obvious than that one was.)
This cleans up the save/load code and resolves multiple issues with the
original save/load screen.
Save game timestamps and thumbnails are now implemented, together with
the ability to load a game from the launcher.
F7 is now mapped to the ScummVM load dialog, and F10 to the save dialog
(if the user has selected to use the ScummVM save screen).
This is a situation that would occur when a user copies drscula save
files from one device to another, without copying the corresponding
index, or copies the index without all corresponding save files.
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
This bug is "DRASCULA-IT: Crash/graphic glitch at castle towers".
The crash was due to width and height values being passed to
copyBackground() being invalid due to out of bounds read from
the factor_red array. This adds debugging statements and fixes
the crash by clipping accesses to the maximum index of factor_red.
This doesn't however fix the observed GFX glitch, but stops it being
a segfault.
Now the confirm quit screen still updates the room and allows mouse movement.
For me that removes the feeling that ScummVM locked up when I pressed escape.
This allows quitting ScummVM in only a minimal time when a converstion is
running instead of waiting for it to finish. It is still not instant but much
better.
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
This also removes the dependency of engines on the event recorder header
and API, and will make it easier to RandomSources that are not properly
registered.
This unifies the engine names in MetaEngine::getName() and the
credits. In particular drop "Engine" or "engine" from the names when
it was present and use expanded names in credits when the
MetaEngine uses it (e.g. "Beneath a Steel Sky" instead of "BASS").
The surface returned by OSystem::lockScreen() can have a pitch which
differs from w * bytesPerPixel, so modify the code to take this into
account. Fixes FMV problems on Dreamcast.