aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
AgeCommit message (Collapse)Author
2010-11-18SCI3: implement setInfoSelector() for SCI3, fixes infinite recursionLars Skovlund
svn-id: r54328
2010-11-18SCI3: Add proper support for the calle instructionLars Skovlund
svn-id: r54327
2010-11-18Fix operator precedence problemLars Skovlund
svn-id: r54324
2010-11-17SCI: Added hacks in kClone/kDisposeClone for SCI3Filippos Karapetis
svn-id: r54307
2010-11-17SCI: Call lookupArray() after allocateArray() when duplicating arraysFilippos Karapetis
This ensures that the pointer to the element that lookupArray() returned won't be invalidated in case the array is reallocated because of allocateArray() - same issue as in kClone() svn-id: r54306
2010-11-17SCI: Code formattingFilippos Karapetis
svn-id: r54305
2010-11-17SCI: Added sanity checks for SCI3 scripts bigger than 64KBFilippos Karapetis
- Extended the "verify_scripts" console command for SCI3 scripts - Added a check for such large scripts when scripts are loaded, with an error for now, till a mechanism to support such scripts with a 16-bit addressing scheme is in place (e.g. overlaying, or splitting scripts). Either way, such scripts should span over more than one segment svn-id: r54304
2010-11-17SCI3: Implement opcode to retrieve the info selector.Lars Skovlund
svn-id: r54303
2010-11-17SCI3: Handle script exports correctlyLars Skovlund
svn-id: r54302
2010-11-17SCI3: relocate operand of the lofsa opcodeLars Skovlund
svn-id: r54301
2010-11-17SCI: Fixed the speed in the intro of PQ2, version 1.002.011 (bug #3102071)Filippos Karapetis
In version 1.002.011, global 3, used for timing, is incorrectly initialized to 0, whereas it should be 6 (like in other versions). Initializing it to the correct value fixes the speed in the intro. This has been based on the patch for that version by NewRisingSun(NRS) / Belzorash svn-id: r54298
2010-11-17Adapt SCI property instructions (pToa etc.) to SCI3Lars Skovlund
svn-id: r54296
2010-11-17SCI1.1 and newer games always ignore move count. The "version" command works ↵Filippos Karapetis
now in SCI3 svn-id: r54295
2010-11-17SCI: lofsa/lofss functionality for SCI3Filippos Karapetis
- Updated detectLofsType() for SCI3 - Cleaned up op_lofsa and op_lofss and updated them for SCI3 svn-id: r54293
2010-11-17SCI: Added some SCI3 selector related informationFilippos Karapetis
- Added a TODO for the usage of the -info- selector in kClone and kDisposeClone in SCI3 scripts, as it's no longer used in SCI3 - Added information about which of the selectors are missing in SCI3. There are some more which are missing, but aren't used in SCI2-SCI3 anyway - Some styling svn-id: r54291
2010-11-17SCI: Make class table size OB1 workaround slightly more readableMax Horn
svn-id: r54290
2010-11-17SCI: Fixed the return values of Object::relocateSci3()Filippos Karapetis
svn-id: r54289
2010-11-17SCI: More work on SCI3, based on a patch by lskovlunFilippos Karapetis
- Added SCI3 equivalents for access to object selectors - Added SCI3 implementation of object relocation - Added SCI3 implementation of Script::initialiseClasses() svn-id: r54283
2010-11-17SCI: Some more work on SCI3, based on a patch by lskovlunFilippos Karapetis
- Added a SCI3 implementation of Script::load() - Added a SCI3 implementation of Script::initialiseClasses() - Removed some duplicate code svn-id: r54282
2010-11-17SCI: Added the SCI3 equivalent of initialiseObjects(), from a patch by lskovlunFilippos Karapetis
svn-id: r54281
2010-11-17SCI: Some restructuring. Added some SCI3 placeholders/stubsFilippos Karapetis
svn-id: r54280
2010-11-17SCI: The heap was a separate resource in SCI1.1 - SCI2.1 games only. It was ↵Filippos Karapetis
later merged into the script files again in SCI3 svn-id: r54279
2010-11-17SCI: Updated dissectScript() to handle synonym blocksFilippos Karapetis
svn-id: r54277
2010-11-17SCI: Unified the functionality and parameters of the disasm and disasm_addr ↵Filippos Karapetis
commands svn-id: r54276
2010-11-17SCI: Added the ability to display original script bytecode in the "disasm" ↵Filippos Karapetis
console command svn-id: r54275
2010-11-16SCI: Fix for bug #3110215 - "SQ4 German: endless flight on Estros"Filippos Karapetis
svn-id: r54272
2010-11-15SCI: Workaround for bug #3109299 "QFG1VGA: Crash when leaving area east of ↵David Turner
Antwerp" Extended current workarounds to cover QFG1VGA. svn-id: r54239
2010-11-13SCI: Fixup pathfinding start point when on polygon edge.Walter van Niftrik
We now also fixup the start point when it's on the edge of an obstacle. If the start point is also on the edge of the screen, the actor is now allowed to walk through that obstacle to find his way to clear territory. This is based on observation of SSCI behavior. svn-id: r54230
2010-11-13SCI: Fixed script bug #3108012 - "Hoyle1: Crash when changing Deal Speed in ↵Filippos Karapetis
Hearts" svn-id: r54226
2010-11-12Fixed signed/unsigned warningFilippos Karapetis
svn-id: r54217
2010-11-12SCI: Don't check for SCI2/SCI2.1 kernel types in SCI3 games. Filippos Karapetis
Patch by lskovlun svn-id: r54216
2010-11-11SCI: kSave case 0 is actually kSaveGame. Based on a patch by lskovlunFilippos Karapetis
svn-id: r54215
2010-11-11SCI2: Make robots return immediately for now, till they're implementedFilippos Karapetis
Based on a patch by lskovlun svn-id: r54214
2010-11-11SCI: Some video related changesFilippos Karapetis
- Now playVideo() is used when playing videos from the console (reducing code duplication) - Added support for 16bpp scaling in scale2x, so that the 16-bit color Duck videos are scaled correctly svn-id: r54210
2010-11-11SCI: Allow paths along the edge of the screen in kAvoidPath.Walter van Niftrik
Paths along the edge of the screen are now taken as a last resort. Fixes bugs #3047418 and #3059595. svn-id: r54199
2010-11-11SCI: Fixed bug #3104624 - "PQ3: Crash when loading saved game on the highway"Filippos Karapetis
svn-id: r54197
2010-11-10SCI: Some SCI3 changesFilippos Karapetis
- Extended the SCI2.1 kernel function signatures for SCI3, as they share the same kernel table - All the engine parts are now initialized in SCI3 games, apart from the VM svn-id: r54178
2010-11-10SCI: Updated the SCI2.1 kernel function table with the SCI3 changes/additionsFilippos Karapetis
svn-id: r54177
2010-11-09SCI: Removed the Shivers 2 hack from the segment manager (it isn't SCI)Filippos Karapetis
svn-id: r54174
2010-11-09SCI: Some slight work on SCI3Filippos Karapetis
- Enabled the SCI3 game entries for testing purposes - The resource manager is initialized fully now (with a slight hack) - Added a hack for the demo of Shivers 2 (which seemingly has no scripts or vocabularies) - The engine will stop before parsing any game scripts in SCI3 games, and opens the console for resource manager-related functionality svn-id: r54167
2010-11-09SCI: Temporarily disable the PrintDebug call, which is only partiallyLars Skovlund
implemented and insufficient for Shivers/Full. It is also unnecessary for normal play. svn-id: r54158
2010-11-09SCI: Add uninitialized temp workaround for ShiversLars Skovlund
svn-id: r54157
2010-11-09SCI: Fix error message in ShowMovie(), perhaps avoiding some confusion laterLars Skovlund
svn-id: r54156
2010-11-09SCI: Added comments for rev. 54150 and fixed a typoFilippos Karapetis
svn-id: r54153
2010-11-09treat pushSelf opcode with low bit set as pushSelf (in fangames only, ↵Lars Skovlund
currently). Fixes bug #3038686. (SCI Fanmade - Circus Quest: Crash when starting). svn-id: r54150
2010-11-08SCI/SCI2: Some slight changes to the graphics codeFilippos Karapetis
- Changed the SCI1 EGA games workaround in kGraphDrawLine() to match the ones in kGraphFillBoxAny() and kNewWindow, updating the relevant comments - Added some comments in kSetShowStyle() svn-id: r54142
2010-11-08Fix assertion failure in SCI0 saving codeLars Skovlund
svn-id: r54138
2010-11-08SCI: Bugfix for script workaroundsFilippos Karapetis
Get the English versions of objects and methods when checking for script workarounds, as the objects/methods could be translated. Fixes bug #3104623, "PQ3: Crash when click on City map" svn-id: r54134
2010-11-08SCI: Some changes regarding the string heap in saved gamesFilippos Karapetis
- Maintain the state of the string heap space in saved games - Merged SegManager::reconstructScripts() inside SegManager::saveLoadWithSerializer() - Disabled a now unnecessary script patch for the cipher puzzle in Castle of Dr. Brain, and performed some cleanup for another disabled patch - Removed direct access to the _baseObj variable of objects svn-id: r54133
2010-11-04SCI: Renamed findBlock() to findBlockSCI0()Filippos Karapetis
svn-id: r54077