aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/script.h
AgeCommit message (Collapse)Author
2012-06-26SCI: Rename a parameter in validateExportFunc()Filippos Karapetis
This ensures that it won't be confused with a function with the same name
2012-06-23SCI: Change the program counter (PC) to be a 32-bit variableFilippos Karapetis
This is needed for future support of large SCI3 scripts. The program counter is isolated and does not interfere with other parts of the VM, plus it does not get stored in saved games, so it's pretty straightforward to convert
2012-06-23SCI: Clean up validateExportFunc() and related functionsFilippos Karapetis
Also renamed some SCI3 related code to indicate when it's SCI3 specific
2012-06-15SCI: Replace RAW_IS_OBJECT with a methodFilippos Karapetis
2012-06-15Revert "SCI: Change Script::getObject() to accept a reg_t"Filippos Karapetis
This reverts commit 577d7e41c9ca2c498dc85e41c373fbdca8d2ed41.
2012-06-15SCI: Further cleanup of the script codeFilippos Karapetis
Merge the init() and load() Script methods and reset the script when necessary
2012-06-15SCI: Change Script::getObject() to accept a reg_tFilippos Karapetis
This is needed for upcoming changes to the Script class
2012-06-14SCI: Change the script buffer size to be a size_t as wellFilippos Karapetis
This will be needed in the future to load large SCI3 scripts
2011-11-11SCI: Fix const castWillem Jan Palenstijn
2011-11-05SCI: Updated Script::getObjectMap()Filippos Karapetis
It now returns a reference to the object list instead of copying it
2011-11-05SCI: Made the object map hashmap of the Script class privateFilippos Karapetis
2011-11-05SCI: Made more fields of the Script class private. Some cleanup.Filippos Karapetis
2011-05-25ALL: initialise -> initializeMatthew Hoops
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2010-11-27SCI: Fixed bug #3034713 - "ICEMAN Demo: Fails to find base object"Filippos Karapetis
This could happen because objects in scripts can be in the wrong order. Same thing happens in the French and German version of KQ5 (bug #3035396). Removed the scriptObjRemove() method, which is in fact a hack. svn-id: r54510
2010-11-18SCI3: Add proper support for the calle instructionLars Skovlund
svn-id: r54327
2010-11-17SCI3: relocate operand of the lofsa opcodeLars Skovlund
svn-id: r54301
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-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
2010-09-13SCI: Proper fix for bug #3038837 - "HOYLE3: EGA/VGA Crashes" and some cleanupFilippos Karapetis
System scripts (i.e. 0 and 900-999) are now protected and never destroyed during a game svn-id: r52702
2010-08-06SCI: Split the new script patch code in a separate fileFilippos Karapetis
svn-id: r51810
2010-08-06SCI: Added support for scripts that have more than one export table. Fixes ↵Filippos Karapetis
bug #3039785 - "Conquests of Camelot: Crash in Glastonbury Tor" svn-id: r51805
2010-08-06SCI: adding script patchingMartin Kiewitz
including a patch for hoyle 4 and commenting out the workaround code inside kDisposeWindow svn-id: r51795
2010-08-06SCI: some work on the script patcherMartin Kiewitz
signature matching is working (added hoyle 4 signature) svn-id: r51787
2010-06-28SCI: Clarify docs of GC related SegmentObj methodsMax Horn
svn-id: r50440
2010-06-28SCI: get rid of Script::allocateObjectMax Horn
svn-id: r50438
2010-06-28SCI: Revise GC interface: use Common::Array<reg_t> instead of callbacksMax Horn
This means a little bit more overhead but makes the code much more readable and understandable. svn-id: r50429
2010-06-28SCI: Make Script member vars private; add const qualifiersMax Horn
Only three Script members remain public (for now) svn-id: r50428
2010-06-27CleanupFilippos Karapetis
svn-id: r50404
2010-06-27Made the script initialization/uninitialization methods part of the segment ↵Filippos Karapetis
manager svn-id: r50402
2010-06-27SCI: Made the code for initializing script classes, objects and locals part ↵Filippos Karapetis
of the Script class svn-id: r50398
2010-06-27SCI: Moved all the script-related code inside script.cpp/.h, and all script ↵Filippos Karapetis
opcode-related code inside vm.cpp/.h svn-id: r50396
2010-06-15Removed the now unused EngineState parameter of ↵Filippos Karapetis
script_adjust_opcode_formats(), as well as an obsolete TODO svn-id: r49684
2010-02-02SCI: Use Common::List and Common::String to simplify breakpoint handling ↵Max Horn
(untested) svn-id: r47824
2010-01-28SCI: Add debug opcodesWalter van Niftrik
svn-id: r47646
2010-01-28Changed run_vm() to use the sci_opcodes enum, and fixed several wrong ↵Filippos Karapetis
opcodes inside that enum svn-id: r47642
2009-08-30SCI: Add lofs detection.Walter van Niftrik
svn-id: r43824
2009-08-16SCI: Stage 1 of the game detection overhaul. The end goal is to autodetectWalter van Niftrik
as much as possible. All SCI_VERSION_* information was removed from detection.cpp (much of it was incorrect anyway). svn-id: r43449
2009-07-07Removed unused defineFilippos Karapetis
svn-id: r42200
2009-05-31- Further objectification of the SCI vocabulary functionsFilippos Karapetis
- Rewrote the sci_opcodes enum so that it's easier to read - Made the engine error out if data is sent to an invalid selector (which is a fatal condition) svn-id: r41069
2009-05-31More objectification of the Vocabulary functionsFilippos Karapetis
svn-id: r41057
2009-05-30Started objectifying the vocabulary functions (WIP)Filippos Karapetis
svn-id: r41051
2009-05-14SCI: Changed sci_obj_* enum value names to uppercase, in accordance with our ↵Max Horn
code formatting conventions svn-id: r40578
2009-05-12Removed some unused codeFilippos Karapetis
svn-id: r40486
2009-04-20SCI: Renamed global array 'formats' to the slightly more descriptive ↵Max Horn
g_opcode_formats svn-id: r40031
2009-02-28Turned ResourceManager into a class, along with all related functionsGreg Frieger
svn-id: r38978
2009-02-28SCI: Renamed some kernel types and general cleanupJordi Vilalta Prat
svn-id: r38961