aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/seg_manager.cpp
AgeCommit message (Collapse)Author
2014-08-08SCI: Show the address segment when trying to free hunks from an invalidFilippos Karapetis
address
2014-02-18SCI: Make GPL headers consistent in themselves.Johannes Schickel
2013-12-04SCI: script patcher is now a separate classMartin Kiewitz
2013-10-30SCI: Fix script bug #3615119 - "SCI: Crazy Nick Laura Bow - Uninitialized ↵Filippos Karapetis
read error 2"
2013-05-01SCI: Fix some non-initialized variables in SegManager - CID 1003116Filippos Karapetis
2012-09-26JANITORIAL: Remove trailing whitespaces.Johannes Schickel
Powered by: git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-07-03SCI: Remove an unnecessary warning and related FIXME commentsFilippos Karapetis
It's perfectly normal behavior to have locals with a smaller segment ID than the ID of their respective script, e.g. when scripts are uninstantiated and then instantiated again
2012-07-02SCI: Add a hack for a bug in the script handling codeFilippos Karapetis
When resetting the segment manager, sometimes the locals block for a script is placed in a segment smaller than the script itself. This shouldn't be happening, but it isn't fatal, however it should be resolved in a proper manner
2012-06-18SCI: Add setter/getter methods to reg_t'sFilippos Karapetis
No functionality change has been made with this commit. This avoids setting and getting the reg_t members directly, and is the basis of any future work on large SCI3 scripts (larger than 64KB)
2012-06-15SCI: Change getClassAddress() to only require the caller segmentFilippos Karapetis
The caller offset is never actually used inside the function
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-02-15JANITORIAL: Fix missing whitespace in pointer castTarek Soliman
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g' This seems to have caught some params as well which is not undesirable IMO. It also caught some strings containing this which is undesirable so I excluded them manually. (engines/sci/engine/kernel_tables.h)
2011-11-11SCI: Fix styleWillem Jan Palenstijn
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-08-08SCI: Remove dead codeMax Horn
2011-05-25ALL: initialise -> initializeMatthew Hoops
2011-05-25ALL: behaviour -> behaviorMatthew Hoops
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-03-14SCI: Got rid of VERIFY() and removed some newlines in error messagesmd5
2011-03-10SCI: Don't try to uninstantiate scripts marked as deletedmd5
Trying to delete a script marked as deleted should do nothing. Hoyle 3 tried to uninstantiate scripts more than once, and we incorrectly decreased the reference count of associated scripts more than once, thereby killing them. This properly fixes bug #3038837 (removed the hack for it). Many many thanks to wjp for his help on this :)
2011-03-09SCI: Removed unnecessary parameter from deallocate()md5
2011-03-04SCI: Use BE string handling for Mac games.Walter van Niftrik
2011-03-04SCI: Fixed a issue with signed characters in setChar()md5
This was visible in the password of LSL5 Amiga. Thanks to waltervn for finding this
2011-02-28SCI: Moved hunk pointer handling to the GC, and removed some related workaroundsmd5
SCI scripts can contain stale pointers, which are used later on. We now delete the contents of hunk entries without invalidating the relevant pointers and let the GC clear the references. Many thanks to waltervn and wjp for all their work and help on this.
2011-02-09SCI: Do not try to dereference object name when it's not a pointer.Walter van Niftrik
Stops flood of warnings in some Mac titles. svn-id: r55849
2011-02-03SCI: Properly reset the array/string segment idsMatthew Hoops
svn-id: r55749
2010-12-15SCI: Slight cleanupFilippos Karapetis
svn-id: r54925
2010-12-07SCI: Removed the system strings code and replaced it with a much more ↵Filippos Karapetis
simplified version, thus greatly simplifying handling of system strings svn-id: r54805
2010-11-28SCI: Fixed bug #3034471 - "SCI, Castlebrain/Amiga: Invisible text in word ↵Filippos Karapetis
search" Fixed some endianness issues in Amiga versions, thanks to wjp. Amiga versions expect a BE VM, thus we adjust accordingly in the places where memory is accessed directly (i.e. kStrAt, kMemory and all places that set/get characters from memory) svn-id: r54521
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-02SCI: Remove any use of printfMax Horn
svn-id: r54037
2010-09-13SCI: Changed the script protection code to be a hack for Hoyle 3 onlyFilippos Karapetis
This shouldn't be happening normally, but apparently it does, which would indicate a potential issue with the object locking code svn-id: r52703
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-09-04SCI: Janitorial - fixed spaces and typosFilippos Karapetis
svn-id: r52527
2010-08-01SCI: removing pirated sq4 version from detectionMartin Kiewitz
"fixes" bug #3037800 fixing warning in seg_manager svn-id: r51576
2010-08-01SCI: Ignoring non-critical script bug in QFG1VGA, when closing any ↵Filippos Karapetis
conversation dialog with esc (doesn't affect gameplay in any manner) svn-id: r51572
2010-07-22SCI: Fixed the crash in LSL2, room 42 (when arriving at the island). ↵Filippos Karapetis
kAnimate may refer to unfrozen objects which have been deleted, thus handle that case accordingly. svn-id: r51152
2010-07-02Add checks for null reference to strncpy() and strlen() - happens for ↵Filippos Karapetis
example when trying to talk to inanimate objects in KQ6 svn-id: r50596
2010-07-02getString() on a NULL pointer is an empty string (verified in SCI2.1)Filippos Karapetis
svn-id: r50591
2010-07-01Only print the ambiguous object notice in findObjectByName if we didn't ↵Matthew Hoops
specify an index. svn-id: r50584
2010-07-01SCI: Make SegManager::_heap privateMax Horn
svn-id: r50552
2010-07-01SCI: Add SegManager::getSystemString() methodMax Horn
svn-id: r50550
2010-07-01SCI: Rename some variables to match our naming conventionsMax Horn
svn-id: r50549