aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/seg_manager.cpp
AgeCommit message (Collapse)Author
2009-09-06SCI: Cleanup for some SegManager internalsMax Horn
- rename segGet and getSegment to getScriptSegment; the two can be distinguished by the parameter count. - rename type SCRIPT_GET to ScriptLoadType to conform with our code formatting conventions - rename get_class_address to getClassAddress - some cleanup svn-id: r43981
2009-09-04Fixing signed/unsigned comparison warningSven Hesse
svn-id: r43937
2009-09-04Moved some functions inside the SegManager class, and renamed alloc_clone() ↵Filippos Karapetis
to allocateClone() svn-id: r43935
2009-09-02Some renaming:Filippos Karapetis
getresourceManager -> getResourceManger resourceManager -> resMan segmentManager ->segMan svn-id: r43908
2009-08-25- Split SCI_VERSION_32 into SCI_VERSION_2, SCI_VERSION_2_1, and ↵Matthew Hoops
SCI_VERSION_3 (each version has a different kernel table). - Improve map detection. - Fix SCI32 object and script initialization (Torin's Passage and GK1 scripts now start up, and probably most SCI2/2.1 games). - Add SCI2 and SCI2.1 kernel tables. svn-id: r43742
2009-08-25- Replaced more cases of EngineState parametersFilippos Karapetis
- Made some version comparisons for old SCI0 versions easier to read - Removed the GET_SEL32SV macro svn-id: r43729
2009-08-25- Simplified the parameters of some functionsFilippos Karapetis
- Replaced some EngineState parameters - The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions - Plugged 2 leaks in the fallback detector - Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency svn-id: r43722
2009-08-24SCI: Read class table from vocab resource instead of scanning. This fixesWalter van Niftrik
several "invalid selector" VM crashes caused by duplicate classes. svn-id: r43680
2009-08-23- Added more mappings from Sierra's internal IDs to our own ones. Hopefully, ↵Filippos Karapetis
all SCI0-SCI11 games can now be detected correctly from the fallback detector - Simplified some checks for old script types svn-id: r43678
2009-08-20remove \n's from error() callsJoost Peters
svn-id: r43571
2009-08-18- Added game ID detection to the fallback detector. We still need to map ↵Filippos Karapetis
some of Sierra's internal IDs to our own ones - The class table is now created in the segment manager constructor svn-id: r43504
2009-08-17- Simplified some functions to accept only the parts of the EngineState they ↵Filippos Karapetis
need as parameters, instead of the whole EngineState - Moved the class table in the Segment manager - it's the only class using it directly - Removed the sci11 flag from save games (we already know this, we don't need to store it) - Moved script_get_segment() and get_class_address() inside the segment manager class - Removed the script_locate_by_segment wrapper - Simplified script_lookup_export() a lot by removing some paranoia checks - Added some WIP code for automatically determining the game id in the fallback detector (still not working) - General cleanup svn-id: r43458
2009-07-28SCI: Avoid using perror (it's not portable)Max Horn
svn-id: r42866
2009-07-11Moved the kernel and the vocabulary outside of the engine state (they're ↵Filippos Karapetis
static data, which never changes during a game) svn-id: r42398
2009-07-07Added auto-detection for games with older headers for script blocks, and ↵Filippos Karapetis
removed game flag GF_SCI0_OLD svn-id: r42211
2009-07-06Replaced sciprintf() calls with printf, DebugPrintf, warning and error callsFilippos Karapetis
svn-id: r42167
2009-06-18PatchMax Horn
svn-id: r41647
2009-06-07SCI: Moved resource36 handling into resource manager.Walter van Niftrik
svn-id: r41349
2009-06-04SCI: Renamed EngineState::flags and version to _flags and _version ↵Max Horn
(following our conventions); also slightly changed the EngineState constructor to init _version & _flags, and used this to make them constant svn-id: r41177
2009-06-04SCI: Moved MemObject code into a separate source fileMax Horn
svn-id: r41166
2009-05-31Removed script_error_flag and script_debug_flag, which were used to error ↵Filippos Karapetis
out if something went wrong and open the debugger console. Changed all the places where they were used to error() out instead, as ScummVM's debugger console can open on error() svn-id: r41073
2009-05-31The error() and warning() functions add ! and newline automatically. (I didn'tTorbjörn Andersson
look at debug() and debugC(), since I'm really bored with this now. :-) svn-id: r41061
2009-05-30Removed/replaced BREAKPOINTFilippos Karapetis
svn-id: r41025
2009-05-29SCI: Converted several fprintf(stderr) calls to warning/error (the remaining ↵Max Horn
fprintf calls should probably be replaced by suitable debug/debugC/debugN invocations) svn-id: r40993
2009-05-23Turned some errors into warnings, as they occur in KQ5CDFilippos Karapetis
svn-id: r40804
2009-05-21Removed the PREG, PSTK, IS_NULL_REG and REG_EQ definesFilippos Karapetis
svn-id: r40767
2009-05-20removed trailing whitespacesMax Horn
svn-id: r40742
2009-05-19SCI: Introduce a new subclass StringFrag of MemObject (does nothing right ↵Max Horn
now); switched MemObject to subclass Common::Serializable svn-id: r40714
2009-05-18SCI: Removed ENTRY_IS_VALID macroMax Horn
svn-id: r40690
2009-05-18SCI: Tweaks, cleanupMax Horn
svn-id: r40688
2009-05-18SCI: Fixed Table::initTable to invoke _table.clear()Max Horn
svn-id: r40687
2009-05-18SCI: Changed SegManager to not pre-allocate _heap entries (leave the memory ↵Max Horn
management to Common::Array) svn-id: r40686
2009-05-18SCI: Removed the unused member SegManager::gc_mark_bits; changed some int ↵Max Horn
params to SegmentId svn-id: r40685
2009-05-18SCI: Replaced SegManager::getHeap() by Script::getHeap()Max Horn
svn-id: r40683
2009-05-15SCI: Got rid of SEG_ID/SCRIPT_IDMax Horn
svn-id: r40599
2009-05-15SCI: Added SegManager::getScriptIfLoaded() methodMax Horn
svn-id: r40598
2009-05-15SCI: Turned several script related SegManager methods into Script methodsMax Horn
svn-id: r40597
2009-05-15Simplified SCI versions to be SCI version generations, and fixed some game ↵Filippos Karapetis
entries in the process. Also, added a sanity check for invalid game entries svn-id: r40596
2009-05-14SCI: A provisional fix for the "invalid selector" problem in KQ6 and otherWalter van Niftrik
SCI1.1 games. svn-id: r40575
2009-05-14Started using game-specific flags and removed/replaced some SCI version ↵Filippos Karapetis
checks with flags. - The SCI0 new script header and the angles check have been replaced by the GF_SCI0_OLD flag - The SCI0 new drawpic parameter and the new priority check have been replaced by the GF_SCI0_OLDGFXFUNCS flag - Removed the code which retries to use the newer script header in SCI0 games if the detected one is wrong, as that case should be covered by the GF_SCI0_OLD flag - Removed the leftover min_version and max_version variables from gamestate - Cleaned up kGetTime() a bit svn-id: r40552
2009-05-12SCI: Changed object / script local vars storage to use a Common::ArrayMax Horn
svn-id: r40515
2009-05-12SCI: Removed sci_memory.h/.cppMax Horn
svn-id: r40514
2009-05-12SCI: Fixed a valgrind warning.Walter van Niftrik
svn-id: r40492
2009-05-11SCI: Simplified the Table class, by making it use an Common::Array ↵Max Horn
internally. Increased savegame version, breaking compatibility to the previous one -- sorry for that, but some of my previous changes accidentally messed up the table syncing, resulting in messed up savegames anyway; these breakages should be fixed with this commit svn-id: r40453
2009-05-10SCI: Replaced Cplain odeBlock array in class Script by a ↵Max Horn
Common::Array<CodeBlock> svn-id: r40433
2009-05-10SCI: Changed object list in Script instances to use Common:::ArrayMax Horn
svn-id: r40431
2009-05-08SCI: Got rid of last traces of class SegInterfaceMax Horn
svn-id: r40377
2009-05-08SCI: Moved findCanonicAddress from SegInterface to MemObjectMax Horn
svn-id: r40376
2009-05-08SCI: Moved freeAtAddress from SegInterface to MemObjectMax Horn
svn-id: r40375
2009-05-08SCI: Renamed dstack_t -> DataStack; removed obsolete KF_OLD constantMax Horn
svn-id: r40374