Age | Commit message (Collapse) | Author |
|
Script::_objects by a HashMap -- goodbye, class IntMapper
svn-id: r44240
|
|
svn-id: r44173
|
|
svn-id: r44172
|
|
svn-id: r44171
|
|
svn-id: r44170
|
|
svn-id: r44152
|
|
svn-id: r44151
|
|
svn-id: r44150
|
|
svn-id: r44140
|
|
defines and adding appropriate methods to the Object structure
svn-id: r44138
|
|
indicate an invalid segment
svn-id: r44131
|
|
svn-id: r44130
|
|
svn-id: r44127
|
|
svn-id: r44126
|
|
BREAKPOINT() was used to an error
svn-id: r44041
|
|
getObjectName, respectively)
- Renamed alloc_List -> allocateList, alloc_Node->allocateNode, alloc_hunk_entry->allocateHunkEntry, free_hunk_entry->freeHunkEntry, for consistency
svn-id: r44039
|
|
svn-id: r43999
|
|
Add new methods init, allocateObject and getObject to class Script, and use them instead of directly accessing Script::obj_indices. Replace RAW_GET_CLASS_INDEX with Script::getObject()
svn-id: r43987
|
|
svn-id: r43984
|
|
- 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
|
|
svn-id: r43980
|
|
svn-id: r43978
|
|
getresourceManager -> getResourceManger
resourceManager -> resMan
segmentManager ->segMan
svn-id: r43908
|
|
svn-id: r43872
|
|
svn-id: r43824
|
|
initializing some problematic scripts in certain demos (e.g. the EcoQuest 1 demo), and fixed the return values of script_instantiate_sci0() in the process
svn-id: r43759
|
|
svn-id: r43754
|
|
- Made some version comparisons for old SCI0 versions easier to read
- Removed the GET_SEL32SV macro
svn-id: r43729
|
|
svn-id: r43725
|
|
- 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
|
|
several "invalid selector" VM crashes caused by duplicate classes.
svn-id: r43680
|
|
all SCI0-SCI11 games can now be detected correctly from the fallback detector
- Simplified some checks for old script types
svn-id: r43678
|
|
svn-id: r43571
|
|
some of Sierra's internal IDs to our own ones
- The class table is now created in the segment manager constructor
svn-id: r43504
|
|
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
|
|
svn-id: r43289
|
|
svn-id: r43218
|
|
svn-id: r42609
|
|
svn-id: r42599
|
|
svn-id: r42587
|
|
static data, which never changes during a game)
svn-id: r42398
|
|
svn-id: r42371
|
|
- Enabled the parts where disassemble() is called
svn-id: r42263
|
|
- Renamed struct DebugState to ScriptState and r_amp_rest to restAdjust inside EngineState. Changed restAdjust to be a uint16 (actually it is a uint16, but it was being casted back and forth from an unsigned integer, so this clears up its type and size)
- Moved the script state variables from inside the run_vm() into the ScriptState struct, so that they can be accessed by the console commands and the script debugger all the time, and removed the weird isValid code
svn-id: r42260
|
|
removed game flag GF_SCI0_OLD
svn-id: r42211
|
|
(essentially, lofss and lofsa both load an offset, with lofsa loading it in the accumulator and lofss in the stack). lofss is rarely used in SCI1.1 games, which explains why no lofss-related crashes have been observed in SCI1.1
svn-id: r42209
|
|
svn-id: r42167
|
|
detected now. Removed the GF_SCI1_LOFSABSOLUTE game flag
svn-id: r42118
|
|
svn-id: r42079
|
|
- When an error occurs, manipulate the execution stack before error() opens the console inside getDebugger(), like FreeSCI did. Added another method for obtaining the SCI console for use by the engine itself.
svn-id: r42062
|