Age | Commit message (Collapse) | Author |
|
svn-id: r44152
|
|
svn-id: r44151
|
|
svn-id: r44140
|
|
defines and adding appropriate methods to the Object structure
svn-id: r44138
|
|
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
|
|
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: r43982
|
|
- 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
|
|
getresourceManager -> getResourceManger
resourceManager -> resMan
segmentManager ->segMan
svn-id: r43908
|
|
game-specific workarounds are tested against ScummVM IDs
- Added detection for the EcoQuest 1 demo in the fallback detector
- Partially reverted my previous "fix" for EcoQuest 1 CD, and turned it into a script-specific hack for that game, for now
- Added handling of kDisposeScript calls made with 2 parameters, e.g. in KQ5CD and others (still untested, haven't found a test case)
svn-id: r43887
|
|
svn-id: r43824
|
|
svn-id: r43812
|
|
quick access selector array
- Added the "motionCue" and "egoMoveSpeed" selectors to the selector array, to limit the places where findSelector() is used only in debugging functions
- Reordered the selector initialization in mapSelectors(), so that their order matches the order found in vocab.997
svn-id: r43779
|
|
svn-id: r43776
|
|
- Made some version comparisons for old SCI0 versions easier to read
- Removed the GET_SEL32SV macro
svn-id: r43729
|
|
- 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
|
|
all SCI0-SCI11 games can now be detected correctly from the fallback detector
- Simplified some checks for old script types
svn-id: r43678
|
|
some of Sierra's internal IDs to our own ones
- The class table is now created in the segment manager constructor
svn-id: r43504
|
|
I touched (and probably others I luckily didn't touch) seem to assume that files including them will supply needed types. That looks like a major issue in SCI. Someone with knowledge of the SCI code should look into this and cleanup the includes of *all* SCI headers.
svn-id: r43459
|
|
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: r42599
|
|
static data, which never changes during a game)
svn-id: r42398
|
|
- 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
|
|
which are only used for auto-detection from the convenience selector map and placed feature auto-detection in a separate function. Also, now the automatically detected graphics resources are shown in the console.
svn-id: r42212
|
|
removed game flag GF_SCI0_OLD
svn-id: r42211
|
|
- Auto-detected features are now printed in the console (to ease debugging)
svn-id: r42132
|
|
detected now. Removed the GF_SCI1_LOFSABSOLUTE game flag
svn-id: r42118
|
|
constructed from the hardcoded function table, depending on the SCI version used
- SCI0 games using older graphics functions are now detected by the presence of the "curAngle" selector
- SCI0 games using a SCI1 table (like KQ1 demo version and full version) are detected by the presence of the "sightAngle" selector (as no SCI0 game seems to have it)
svn-id: r42095
|
|
of the "setVol" selector. Removed game flag GF_SCI1_NEWDOSOUND
svn-id: r42087
|
|
svn-id: r41833
|
|
svn-id: r41647
|
|
Storing them as reg_t* could cause the pointers to become invalid
when they pointed into CloneTable since CloneTable can be re-allocated.
svn-id: r41220
|
|
svn-id: r41198
|
|
(following our conventions); also slightly changed the EngineState constructor to init _version & _flags, and used this to make them constant
svn-id: r41177
|
|
svn-id: r41166
|
|
svn-id: r41165
|
|
moved any 'extern' decls of them into a new header file
svn-id: r41163
|
|
inside the Kernel class and moved gfxw_find_port inside the GfxVisual struct
svn-id: r41125
|
|
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
|
|
- 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
|
|
svn-id: r41057
|
|
- Turned all SCIkwarn and SCIkdebug functions to ScummVM's debugC function
- Placed some debug code in appropriate defines: DEBUG_PARSER, DEBUG_AVOIDPATH and DEBUG_SOUND
- Removed the "debuglog" command and the "script_checkloads_flag" and "sci_debug_flags" variables
svn-id: r41033
|
|
by changing the executionStack implementation to a list.
svn-id: r40971
|
|
svn-id: r40732
|
|
svn-id: r40720
|
|
now); switched MemObject to subclass Common::Serializable
svn-id: r40714
|
|
code should be even stricter in detecting invalid VM stack access (and some bugs when loading saves might be fixed now...)
svn-id: r40694
|
|
svn-id: r40690
|