aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
AgeCommit message (Collapse)Author
2016-08-19SCI32: Fix limited data range comparison warningColin Snover
On at least DC platform, the ShowStyleType enum is fit to a 4-bit data size, so the 16-bit input value needs to be checked for validity *before* it is cast to a 4-bit ShowStyleType.
2016-08-19SCI32: Remove unused ResourceManager from GfxFrameoutColin Snover
2016-08-19SCI32: Bug fixes to PQ:SWAT script bugs and kList callsColin Snover
2016-08-19SCI: Avoid attempts to use exe/txt/dll files as patchesColin Snover
Fixes some false warnings when games try to read in non-patch files with names that start with A/B/S/T.
2016-08-19SCI32: Enable multi-disc audio resourcesColin Snover
Phant1, PQ:SWAT, GK2, and Phant2 all have different audio maps and audio volumes on each CD. In order to make this work within ScummVM, where CDs are never swapped, each RESOURCE.AUD for these games must be renamed to RESAUD.00x and each RESOURCE.SFX renamed to RESSFX.00x.
2016-08-19SCI32: Partially implement kCDColin Snover
2016-08-19SCI32: Increase maximum line width for graphicsColin Snover
Torin renders pics that are wider than 1024px; SCI3 bumps the maximum line width to 4k.
2016-08-19SCI32: Add kPlayVMDGetStatus kernel callColin Snover
Used by Lighthouse.
2016-08-19SCI: Remove references to SCI32 features from SCI16 video playerColin Snover
2016-08-19SCI32: Remove CoordAdjuster32, at least for the momentColin Snover
This may come back in the future to deduplicate some gfx code, but SCI32 had two different inlined ways of doing coordinate conversions with different rounding methods, so CoordAdjuster32 didn't get used when the graphics system was rewritten. At the moment, SCI32 code uses the mulru/mulinc methods from helper.h for scaling up/down coordinates.
2016-08-19SCI32: Fix kGlobalToLocal and kLocalToGlobalColin Snover
Fixes (at least) the native SCI save dialogs.
2016-08-19SCI32: Implement kRobotColin Snover
2016-08-19SCI32: Split kPlatform for SCI32Colin Snover
2016-08-19SCI32: Add kSetNowSeen variant for older SCI32 gamesColin Snover
KQ7 2.00b, PQ:SWAT, Phant1, GK2, and Torin are all verified as using the 'ignore' variant; SQ6 and QFG4CD are verified as using the 'fail' variant. MGDX and Shivers could not be checked as they have only Phar Lap Win16 executables, so took a guess based on their release dates.
2016-08-19SCI32: Add some bounds checking, const-correctness, and errors to CelObjColin Snover
2016-08-19SCI32: Address TODO in seg_manager.hColin Snover
2016-08-19SCI32: Implement kShakeScreen for SCI32Colin Snover
2016-08-19SCI32: Clean up Cursor32 includesColin Snover
2016-08-19SCI32: Hide cursors in 24bpp video playback modeColin Snover
Drawing the cursor in this mode will result in a read overflow as it is 8bpp.
2016-08-19SCI32: Fix signature of kSetNowSeenColin Snover
2016-08-19SCI32: Remove GfxScreen from SCI32Colin Snover
2016-08-19SCI32: Fix commentColin Snover
2016-08-19SCI32: Allow pixel doubling of some cursors to improve usabilityColin Snover
2016-08-19SCI32: Implement SCI32 cursor supportColin Snover
2016-08-19SCI32: Remove GfxScreen from GfxFrameoutColin Snover
Only cursor remains to be updated to go through GfxFrameout, and then we can let GfxScreen go back to being SCI16-only.
2016-08-15SCI: Add comment that GK1 on Mac is on floppies and not CD.Martin Kiewitz
2016-08-15SCI: Add comments about GK1 on Mac being hi-res onlyMartin Kiewitz
2016-08-15SCI: Move GUI-options to sci.hMartin Kiewitz
2016-08-15SCI: Improve "force hires graphics"-option reading codeMartin Kiewitz
We originally used hardcoded gameIDs and checked for CD-version. Now the game option itself is checked for. When it's available for the currently detected game, the option is read, otherwise it defaults to false (same behavior as before).
2016-08-13SCI32: Fix cast warningsColin Snover
2016-08-13SCI: Fix sign comparison warningColin Snover
2016-08-13SCI: Fix pointer invalidation caused by array storage movesColin Snover
When objects are added to a SegmentObjTable, it may cause the internal storage for the table to expand and move to a new region of memory. When this happens, all pointers to objects held by a SegmentObjTable of the same type would be invalidated, due to an implementation detail that should not be exposed. To prevent this, objects are now allocated separately on the heap, so even if the table's storage moves due to insertions, the objects owned by the table will not, so references remain valid for the lifetime of the object.
2016-08-13SCI: Fix pseudo mouse in various SCI1 games like e.g. Larry5Martin Kiewitz
Pseudo mouse was functionality in SCI1+ games, that allowed the user to control the mouse via keyboard cursor keys. This new class only worked, when a tiny difference inside the keyboard driver happened on kMapKeyToDir calls. We previously tried to enable this behavior depending on cursor type, but this didn't work correctly (Larry 5 for example was not detected as such, but had PseudoMouse support).
2016-08-12SCI32: Fix crash when multiple nodes are deleted during kListEachElementDoColin Snover
This happens in e.g. Phant1, when walking from dining, to reception, to up the stairs.
2016-08-12SCI32: Clean up Video32 includesColin Snover
2016-08-12SCI32: Fix KQ7 1.51 video backgroundColin Snover
2016-08-12SCI32: Fix crash when kShowMovie is called but the video cannot be foundColin Snover
2016-08-12SCI32: Fix KQ7 1.51 basic video playbackColin Snover
There is still a problem where the background is white instead of black; this is caused by the palette of the video using entry 0 as white. This seems to have worked out OK in SSCI because the video was not actually played back inside the engine itself, so didn't interfere with the palette of the engine. ScummVM has no such separation, so the palette of the video interferes with the palette of the blank background pic, turning it white.
2016-08-12SCI32: Additional Video32 documentationColin Snover
2016-08-12SCI32: Implement kShowMovieColin Snover
2016-08-11SCI32: Temporarily revert kShowMovie due to buildbot failuresColin Snover
Revert "SCI32: Fix KQ7 1.51 video background" This reverts commit c8affb54cca259f37522216bad739be085bf9caa. Revert "SCI32: Fix crash when kShowMovie is called but the video cannot be found" This reverts commit 93b06f4a9e08de281ee7eb9c780ceac147c3fb23. Revert "SCI32: Fix KQ7 1.51 basic video playback" This reverts commit cdab24aa07c18ad4a25a1659f7fca15cca5e358e. Revert "SCI32: Additional Video32 documentation" This reverts commit 4ff0924e57a9bc9101ee0799a967fe3373dd2574. Revert "SCI32: Implement kShowMovie" This reverts commit 13297c19298c5ad73c9e996c5c31ca91de124911.
2016-08-11SCI32: Fix KQ7 1.51 video backgroundColin Snover
2016-08-11SCI32: Fix crash when kShowMovie is called but the video cannot be foundColin Snover
2016-08-11SCI32: Fix KQ7 1.51 basic video playbackColin Snover
There is still a problem where the background is white instead of black; this is caused by the palette of the video using entry 0 as white. This seems to have worked out OK in SSCI because the video was not actually played back inside the engine itself, so didn't interfere with the palette of the engine. ScummVM has no such separation, so the palette of the video interferes with the palette of the blank background pic, turning it white.
2016-08-11SCI32: Additional Video32 documentationColin Snover
2016-08-11SCI32: Implement kShowMovieColin Snover
2016-08-11SCI32: Fix GfxFrameout::_isHiRes flag to be accurate for all gamesColin Snover
2016-08-11Merge pull request #798 from wjp/torin_savingFilippos Karapetis
SCI32: Support Torin's autosave system
2016-08-11SCI32: Don't use autosave.cat in TorinWillem Jan Palenstijn
2016-08-09SCI: Fix sq4 workaround room 391, fixes bug #7179Martin Kiewitz
doCatalog::mode does not exist, the method is actually doCatalog::changeState This issue has been in there since the workaround was added through commit 20b1d80d598e6f741e28c9a85d186e463d111816