Age | Commit message (Collapse) | Author |
|
|
|
Shivers uses extra special hardcoded save files together with the normal
ones that are used to store slot names and spot descriptions. The scheme
is a bit odd, and since the names of the extra save files are hardcoded,
this scheme is problematic to use. We skip the creation of these files
altogether and use virtual files instead, which means that the
(broken) spot descriptions won't be visible next to each save
description. This isn't a major issue for now, and it's left as a future
TODO to implement this feature in a cleaner way, and not with extra save
files. This scheme fixes the slot descriptions in the loading screen.
Also, kCD(1) has been implemented, which fixes loading of the save
states themselves
|
|
This puts them in the order that they are defined in the kernel tables
|
|
Thanks to LePhilousophe for testing and providing a patch
|
|
Thanks to LePhilousophe for playing and providing the workaround
|
|
|
|
They are essentially the same (with the exception of the return values),
so unifying them reduces code duplication
|
|
|
|
This way, there is a clear separation of the actual SCI kernel file
functions and the file classes and wrappers of ScummVM
|
|
|
|
Phantasmagoria's scripts keep polling for the existence of the savegame
index file and request to read and write it using the same parameters
when opening it. The index file is closed and reopened for every save
slot, which is slow and can be much slower on non-desktop devices.
Also, the game scripts request seeking in writable streams and request
to expand the existing index file.
To provide this functionality and to reduce constant slow file opening
and closing, this virtual class has been introduced
|
|
|
|
|
|
This is used by Torin's Passage (e.g. when trying to open the menu).
Based on a slightly modified patch by LePhilousophe
|
|
Based on a patch by LePhilousophe
|
|
Fixes one of the bugs in the savegame selection screen in Phantasmagoria
|
|
|
|
Formerly the GMM, AGI and SCI duplicated the logic for USE_SAVEGAME_TIMESTAMP.
Now I added a method to SaveLoadChooser instead, which takes care of this. This
might not be the best placement of such a functionality, thus I added a TODO
which talks about moving it to a better place.
|
|
This reduces the code duplication in all client code, which formerly duplicated
the querying of the plugin, game id etc. and now simply calls the newly added
method runModalWithCurrentTarget() on a SaveLoadChooser object.
|
|
We already pass the title and process button name to the constructor of
SaveLoadChooser and then do not offer any way of changing it, thus changing
the edit mode of the chooser is kind of pointless and was never actually used.
Instead we pass the mode on SaveLoadChooser construction now.
|
|
Thanks to LePhilousophe for his feedback and observations on this
|
|
|
|
This is used in LSL6 hires and SQ6. This initial implementation is hackish
and only works in SQ6 (nothing is shown in LSL6)
|
|
|
|
|
|
|
|
This is used to change directories in the save/load dialog (unused by us)
|
|
This fixes the sluggish game speed in Phantasmagoria (DOS/Windows)
|
|
Avoid overwriting the target buffer with junk when no data has been read
|
|
This is a function used to implement vibration in the floppy version of
QFG4 for exotic force feedback mice, such as the Logitech Cyberman
|
|
The patched script 33 in the NRS patch attempts to perform kAbs() on an
object. Return a dummy value instead. Fixes bugs #3528416 and #3528542
|
|
|
|
|
|
|
|
|
|
|
|
Thanks to TMM for details on reproducing this
|
|
|
|
This is based on two kernel functions, kMakeSaveCatName and
kMakeSaveFileName
|
|
Fixes the inventory in GK1
|
|
Fall back to the DOS soundtracks in Windows CD versions if the user picks
a non-General MIDI music device, as the Windows tracks only contain MIDI
music
|
|
Return a fake value instead of leaving random values in the accumulator
|
|
This occurs while Roger is trying to move around the Pilot Droid in
Ulence Flats.
|
|
This bad call can be made in all rooms in Ulence Flats, after getting the
Pilot Droid. Properly fixes script bug #3513207
|
|
This is used to set default settings for all custom game options when an
engine starts
|
|
The associated call contains too few parameters, thus it shouldn't be made
at all
|
|
|
|
This occurs while Roger is trying to move around the Pilot Droid in
various narrow cases.
|
|
The relevant code wasn't added in the newer commits - this was an
oversight from my part
|
|
|