aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
AgeCommit message (Collapse)Author
2017-04-23SCI32: Fix crash when writing word to VIRTUALFILE_HANDLE_SCI32SAVEColin Snover
This happens in Phant2 when trying to delete a save game from the in-game save dialogue.
2017-04-23SCI32: Fix audio playback with monitored channel in SCI3Colin Snover
SCI3 changes the way that monitored channel works. In SCI2/2.1, when a channel is monitored, it is the only audible channel. In SCI3, monitored channels mix normally. This is very noticeable in LSL7, where music disappears totally during speech if the monitored channel is the only channel played back.
2017-04-23SCI32: Fix crash in Phant2 when clicking Help in the control panelColin Snover
2017-04-23SCI32: Fix slow fade of Phant2 interface barsColin Snover
2017-04-23SCI32: Remove TODO from relocateOffsetSci3Colin Snover
The field at +8 is for the MemID associated with a relocation.
2017-04-23SCI: Implement fallback detection for SCI3Colin Snover
2017-04-23SCI32: Undummy AvoidPath for SCI3Colin Snover
Used by LSL7.
2017-04-23SCI: Fix missing music in LSL7Colin Snover
2017-04-23SCI: Remove unused commented codeColin Snover
2017-04-23SCI32: Remove incomplete SCI3 detection warningColin Snover
Map format is the same as SCI2/2.1 and volume format is detected correctly as SCI3.
2017-04-23SCI32: Fix out-of-bounds reads of truncated uncompressed celsColin Snover
This happens e.g. on the About page in LSL7 because of an interpreter problem where bitmap handles are destroyed and then reused without a kFrameOut call to remove old screen items from the visible plane list before a kIsOnMe call that causes the engine to try to read from reused bitmap handles with different contents and dimensions. This replaces bad memory reads on the About page in LSL7 with an assertion failure, until the problem with the About page can be properly addressed.
2017-04-23SCI32: Activate SCI3 draw/erase list calculation algorithmColin Snover
This code branch, existing since at least SQ6 but apparently never used by any SCI2/2.1 game, is in fact the algorithm used by SCI3. This fixes (at least) doubled rendering of transparent surfaces like the background of the inventory window and conversation choices panel in LSL7.
2017-04-23SCI32: Fix bad draw rectangle size in Duck video playerColin Snover
This was causing uninitialised garbage data from the scale buffer to be drawn to the screen.
2017-04-23SCI32: Remove unused SegManager from DuckPlayerColin Snover
2017-04-23SCI32: Add Lighthouse workaroundColin Snover
2017-04-23SCI32: Add kPlayVMD subop 27 (SetPlane)Colin Snover
Used by RAMA, when playing a video at the Hub Camp computer at the beginning of the game (room 1004).
2017-04-23SCI32: Add workarounds for RAMAColin Snover
2017-04-23SCI32: Add workarounds for LighthouseColin Snover
2017-04-23SCI32: Put Lighthouse restart game in restart save slotColin Snover
2017-04-23SCI32: Fix call to kFileIOIsValidDirectory in RAMAColin Snover
2017-04-23SCI32: Fix missing break statementColin Snover
2017-04-23SCI32: Reset ScreenItem cel type when updating from a VM objectColin Snover
In Phant2, when going to email on Curtis's office computer, a screen item that contained a bitmap on the last frame was updated to contain a view on the next frame. This crashed the engine when it tried to reuse the old disposed bitmap instead of the new view because the cel type was never changed from kCelTypeMem to kCelTypeView.
2017-04-22SCI: Add alloc_list command to debuggerColin Snover
This command lists all resources that are currently loaded into memory, plus the number of locks that exist on each loaded resource.
2017-04-22SCI: Avoid crashing when disassembling a call with a bad objectColin Snover
lookupSelector will raise an error if the passed object ID is invalid.
2017-04-22SCI32: Disable brightness boost when black-lined video is disabledColin Snover
The boost is intended to compensate for the darkness caused by the black lines, so should not be applied when there are no black lines. This fixes too-bright videos in at least LSL7.
2017-04-22SCI32: Store handle to VMD bitmap separately from ScreenItemColin Snover
In at least RAMA, when using the pocket computer to view a mail and then pressing the "return" button, the ScreenItem containing the VMD will be destroyed before the VMD player is told to close the video, resulting in a use-after-free trying to access the bitmap ID through the deleted ScreenItem.
2017-04-22SCI32: Fix bad interpolation of Robot audio samplesColin Snover
Previously, this code was interpolating samples if the previous block had missing samples, instead of interpolating when samples are missing in the upcoming block of samples.
2017-04-22SCI32: Add and divide instead of performing two divisionsColin Snover
This should make things trivially faster, and matches more accurately how the original engine worked.
2017-04-22SCI: Improve message when crashing due to a bad selectorColin Snover
2017-04-22SCI32: Fix dumb typo in CelInfo32::toStringColin Snover
The typo was `if (kCelTypeColor)` instead of `if (type == kCelTypeColor)`. Changed to use a switch instead for improved clarity and code intelligence.
2017-04-22SCI: Display class names in disassemblyColin Snover
2017-04-22SCI: Remove #undef for a macro that does not existColin Snover
2017-04-22SCI32: Implement support for QFG4 autosaveColin Snover
2017-04-22SCI32: Add workarounds & patches for QFG4Colin Snover
2017-04-22SCI: Explicitly label slot 0 as the autosave slot in the ScummVM UIColin Snover
2017-04-22SCI: Fix whitespace errorsColin Snover
2017-04-22SCI: Fix typo in debug messageColin Snover
2017-04-22SCI32: Fix broken final step of 2.1mid+ pixel dissolveColin Snover
2017-04-22SCI32: Fix bad kPointSize implementationColin Snover
Fixes text scaling gone mad in Phant2.
2017-04-22SCI32: Fix kStringFormat signaturesColin Snover
2017-04-22SCI: Accept 32-bit values to reg_t::incOffsetColin Snover
This fixes bad variable relocation in Phant2 causing the game to crash when reading object names.
2017-04-22SCI32: Enable support for SCI2-2.1 games in release!Colin Snover
Some games are not moved to ADGF_TESTING yet because they have not been played through completely: * QFG4 * PQ:SWAT Some games are not moved to ADGF_TESTING yet because they are broken: * Chest (fails to read/parse its custom archive files) * Hoyle5 (Poker DLL needs to be reverse-engineered; main menu needs to be "fixed" for budget derivatives that only contain some of the games and used Windows shortcuts to bypass the menu) * MGDX (missing MIDI playback)
2017-04-22SCI32: Provide more detail in console when a save game fails checksColin Snover
2017-04-22SCI32: Make version 41 the first supported save game versionColin Snover
Save games created by earlier versions of ScummVM are prone to having subtle graphics problems or other corruption caused by incomplete save/load code.
2017-04-22SCI32: Add palette code for late SCI2.1mid+ gamesColin Snover
Sometime during SCI2.1mid, the palette manager was changed to save and restore the source palette, and to add in-game gamma correction. Previously, only the vary start and target palettes were saved, and gamma correction was only configurable in SSCI by editing RESOURCE.CFG.
2017-04-22SCI: Fix compilation when SCI32 is disabledColin Snover
2017-04-22SCI: Do not sync objects when saving gamesColin Snover
Commit 5de2668939a6735da2b3438b7c586fc185791ef8 silently changed behaviour from running this code only when restoring a game, to running all the time, in an apparent copy-paste error.
2017-04-22SCI: Improve comments in GuestAdditionsColin Snover
2017-04-22SCI32: Add workaround for SQ6 invalid read after a failed save game restoreColin Snover
2017-04-22SCI32: Fix infinite recursion when loading invalid save from launcherColin Snover