Returning to launcher via ScummVM popup menu would retain the values of _systemVars
This would cause relaunching the game (after returning back to launcher) to have wrong value for eg. pastIntro, thus allowing "Save" from the ScummVM popup menu during the intro sequence.
Slot 0 is reserved for autosave but ScummVM in-game would allow saving on it
This was causing segmentation fault (_selectedGame would overflow and also saveGameTexts would be indexed with a -1 index
There's still some specific code remaining to keep the way the
existing autosave is handled the same, even though it now saves
it to slot 0, rather than with a .asd extension
This commit adds a workaround to unlock existing fullscreen images in
the intro of Beneath a Steel Sky.
The original engine clips the whole intro to 320x192 (the common game
format) even though some images exist as 320x200 in the game data files.
This workaround whitelists all images which actually are 320x200px and
displays them as must have originally been intended.
Fixes Trac#7559.
This flag is removed for a few reasons:
* Engines universally set this flag to true for widths > 320,
which made it redundant everywhere;
* This flag functioned primarily as a "force 1x scaler" flag,
since its behaviour was almost completely undocumented and users
would need to figure out that they'd need an explicit non-default
scaler set to get a scaler to operate at widths > 320;
* (Most importantly) engines should not be in the business of
deciding how the backend may choose to render its virtual screen.
The choice of rendering behaviour belongs to the user, and the
backend, in that order.
A nearby future commit restores the default1x scaler behaviour in
the SDL backend code for the moment, but in the future it is my
hope that there will be a better configuration UI to allow users
to specify how they want scaling to work for high resolutions.
on most platforms timers are implemented using threads. never ever make
gfx updates from another thread other than the main one. seriously.
replace the whole timer crap in sky with timestamp based updates.
this fixes crashes when OpenGL is enabled (android included).
needs more testing.
* Remove _isAttached member var and isAttached method
* Engines now always call the onFrame method; whether it does
something is decided by the debugger class resp. its subclasses
* Make detach() protected instead of private, so that subclasses
can invoke it
* Remove _detach_now member var (call detach() instead).
* Rename _frame_countdown to _frameCountdown and properly
document it.
* Add more doxygen comments
* Cleanup
svn-id: r50963
These functions are only used internally be Engine subclasses, and
by moving them to a separate header we can reduce indirect header
dependencies.
svn-id: r48934
The original game's delay was 4 50hz ticks = 80ms (1000 / 50 * 4).
Changing gameSpeed to match this makes it run at exactly the same speed as in dosbox.
svn-id: r36318