Age | Commit message (Collapse) | Author |
|
OSYSTEM: Use void buffers for screen/overlay/mouse buffers and proper pitch values for overlay code
|
|
|
|
|
|
It's finally nighttime in the first murder scene in PQ4
|
|
Since scripts can be larger than 64KB, and getBufSize() returns a 32-bit
integer, adapt variables that store script sizes accordingly
|
|
No functionality change has been made with this commit. This avoids
setting and getting the reg_t members directly, and is the basis of any
future work on large SCI3 scripts (larger than 64KB)
|
|
|
|
|
|
The caller offset is never actually used inside the function
|
|
|
|
Thanks to DrMcCoy for reporting them
|
|
This reverts commit 577d7e41c9ca2c498dc85e41c373fbdca8d2ed41.
|
|
Merge the init() and load() Script methods and reset the script when
necessary
|
|
These are needed for future handling of large SCI3 script files
|
|
|
|
This is needed for upcoming changes to the Script class
|
|
This will be needed in the future to load large SCI3 scripts
|
|
|
|
|
|
|
|
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
|