Age | Commit message (Collapse) | Author |
|
Not all SCI2.1late/SCI3 function signatures are fully known yet,
but all subops are now represented in the kernel tables.
|
|
This implementation is not 100% engine accurate, but it is
more accurate than what was there, and hopefully the differences
between this and the engine code are merely cosmetic.
The known (intentional) differences are:
1. Uses ScummVM rects inside the engine code, converting to/from
SCI rects on the kernel edges and when scaling
2. Fewer side effects when performing operations that *should*
have been pure from the start (like text dimension calculation).
Still not side-effect-free, but at least things like colours
and alignment do not need to be reset every time a measurement
is taken, unlike in the actual engine.
Editor controls and some other kBitmap code are temporarily
disabled as a result of changes to GfxText32 until they can be
updated to be engine-accurate.
|
|
|
|
Signatures in subops table are correct for length but unknown
types are marked as . instead of the correct type.
|
|
|
|
This also fixes kPalCycle signatures to be more accurate.
|
|
|
|
SCI32: palette management (full kPalCycle, partial kSetPalStyleRange and kPalFade)
|
|
|
|
(didn't work since the introduction of kString signatures and the
kString split-up)
|
|
- Detection works via signatures (couldn't find a better way)
- new kString subcalls were introduced SCI2.1 LATE
- kString now has signatures and is split via subcall table
- kString fix, so that KQ7 doesn't crash, when starting a chapter
- Sci2StringFunctionType removed, because no longer needed
|
|
dump parameter list to debugger as well
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Added a stub for kSetScroll, which sets the target picture immediately
for now
- Added an initial stub of kPalCycle (doesn't work correctly yet)
- Adjusted the signatures of kUpdateLine and kDeleteLine for LSL6
- Unmapped kSetHotRectangles again, with updated information on how it
is used in Phantasmagoria
|
|
|
|
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
|
|
|
|
This fixes the sluggish game speed in Phantasmagoria (DOS/Windows)
|
|
This is based on two kernel functions, kMakeSaveCatName and
kMakeSaveFileName
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
|
|
|
|
This ensures that these selectors will be detected regardless of the game
ID, when they're missing
|
|
svn-id: r55755
|
|
svn-id: r55754
|
|
- Added a stub and some info about the (large) kScrollWindow kernel call
- Added info about kMovePlaneItems
svn-id: r55163
|
|
- Added a stub for kSetLanguage, used in MUMG Deluxe - this needs support at the resource
manager level
- Made kGetSierraProfileInt a stub function (it's used in the Windows version of
Phantasmagoria 1 to override the video speed setting obtained from kGetConfig)
svn-id: r55161
|
|
svn-id: r55160
|
|
- Added kFileIO subop 17 (create save slot)
- Added information about a (probably debug) kernel function used in a puzzle, kCelInfo
- Added some information on two kSave subops
- Added 2 workarounds for uninitialized variables
svn-id: r55158
|
|
- Replaced the stub kWinDLL (unused), as well as the not fully implemented kPrintDebug
functions with empty function calls
- Marked several unused or debug kernel functions as stub
- Added some games where the rest of the unimplemented SCI2.1 kernel functions are used
svn-id: r55138
|
|
- "Invalid" SCI reverb values (127) are properly handled now
- SCI kDoSound(reverb) sets the global reverb (renamed it accordingly)
- kDoSound(reverb) can also return the current reverb if no parameter is sent
svn-id: r54457
|
|
svn-id: r54369
|
|
This command can be used to find the object methods (including their
corresponding objects and owner scripts) that call a specific kernel
call. This shall aid us track all the spots where a particular kernel
function is called from, therefore it'll be a bit easier to find
examples where unimplemented kernel functions are called
svn-id: r53646
|
|
svn-id: r52764
|
|
svn-id: r52733
|
|
svn-id: r52665
|
|
and map kOnMe for SCI2 to kIsOnMe, remove commented out hacks. fix signatures for those 2 functions, added TODO - someone should fix the SCI32 signatures
svn-id: r52664
|
|
- Added the kernel names for all unimplemented kernel debug functions, and mapped
them all to kDummy, so that the kernel tables are correct and all kernel
functions are mapped (useful for debugging)
- Added a stub for kWinHelp (normally opens an external Windows help file), with
an appropriate dialog
- Added a stub for kWinDLL, which currently errors out on purpose (this needs to
be investigated, as it loads and uses external Windows DLLs)
- Readded kListIndexOf in kList (the signature was wrong when the previous commit
was made)
svn-id: r52660
|