It appears that we never showed it, because it was shown only
in the release builds, and in the release builds we were removing
this flag.
This change introduces new message inviting users to report bugs,
it is shown always and could be disabled by the same
"enable_unsupported_game_warning" scummvm.ini key
I have checked against MSVC 2015 and the RISC OS GCC 4.7 compiler (whose
C++11 support is not fully complete), and it builds fine without this
compat code (added in 2020 in commit 830a239b04).
The old "C++11 readiness" tests on the wiki also report that the feature
is available on all our supported targets:
<https://wiki.scummvm.org/index.php?title=Compiling_ScummVM/C%2B%2B11_Readiness>
Now, when the launcher is in full screen, the game will also be in full
screen. However, when returning to the launcher, graphics are reset to
default with a setupGraphics() call. Thus, if the user hasn't selected
full screen display in the options, but only used alt-enter to change
the launcher to full screen, the launcher will return to window mode.
This reverts commit 741620e4bc.
This commit breaks several engines like scumm and sword1 because they
call quitEngine function without polling the event loop afterwards.
Purging the event loop after the engine has finished would solve this,
but the EVENT_QUIT message is supposed to be processed while the engine
is still running to let user confirm the quit action (if the setting is
enabled).
If some engine is using less that 256 colors, but in its graphics
there are references to higher colors (by whatever reasons), it may
stay unnoticed on platforms that reset newly allocated memory to 0,
e.g. Windows.
On other systems like Mac, it might lead to random graphics artefacts
difficult to reproduce, e.g. due to the uninited memory.
Also, when you return to launcher from an engine, our GUI is not setting
any palette, so even on Windows, the new engine will inherit whatever
palette was set.
This was caught in Loom Mac, which uses 16 colors. Text shadow was
suddenly white instead of black. Steps to reproduce: run samnmax,
load a saved game, return to launcher, run Loom Mac.
It was addressed in 43c3cc69c2, but
this change makes it generic.
It's been a long time problem that calling quitGame
doesn't result in shouldQuit returning true until
after event processing has been done. This has resulted
in engines doing various hacks such as manually doing
an event loop, or maintaining their own quit flag.
This helps resolve the problem by additionally adding
a _quitRequested flag that's set when quitGame is called,
and additionally checking for it in shouldQuit()
Changed the extended saves code so time is stored in milliseconds
instead of seconds. This fixes an issue where loading a save would
pass a playtime value of 1/1000 of the real playtime to the engine,
resulting in total playtime effectively being zeroed every time a
save is loaded.
Existing savefile compatibility is ignored since the value stored
inside old saves would be wrong for any savefile that has been
saved over more than once.
Presents the autosave with an empty autosave slot after a successful move, or when the Delete option is chosen.
Avoids potential renaming issues for engines which may not allow an existing save file to be renamed.