This allows an initial/default configuration file to be specified via the command line. This allows a default settings file to be bundled and loaded even if it's installed to a read-only location, such as Program Files on Windows, and allows the written config file to be deleted without losing the custom defaults.
Place file named 'scummvm=autorun' next to the ScummVM.
If the file is empty, scummvm will run in autodetect mode, basically
as './scummvm -p . --auto-detect'.
If the file is not empty, then command line parameters will be read
from it one per line. Empty lines and lines starting from '#' are ignored.
If the user supplies more parameters at the command line, those
will also be used and will override the parameters from the autorun file.
Rename scummvm executable into 'scummvm-auto*' and it is equivalent
of 'scummvm -p . --auto-run'. All additional arguments on the command
line are also processed and override the automatic arguments.
This new mode is functionally identical to playback mode, however
a new recording file is used to track the actual output of ScummVM.
This feature can be used to update a suite of existing recordings after
a renderer or a timing change.
Fixes GUI events leaking into engines at startup. This caused
Phantasmagoria 1 to skip its introduction if the game was started from
the ScummVM GUI with a keyboard (Enter) but not with a mouse because
the key-down event started the engine and the key-up event remained
in the queue.
This also purges and mouse events since we happen to already have a
purgeMouseEvents() method. We may want to also clear joystick inputs,
or possibly the entire event queue, but that can be done after the
upcoming release. For now, the known bug is fixed.
When not displaying the GUI, plugins are not unloaded.
This can cause problems on AmigaOS where plugins must be unloaded before
exiting. Else, some plugins with global destructors cause crashes being
destroyed too late.
OSystem now just returns a nullptr if there is no text to speech manager instance
(because none is compiled into the binary, or the system doesn't provide support
for it). This removed the need for the engine authors to add scummvm osystem compile
time options checks into their engine code