Age | Commit message (Collapse) | Author |
|
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
|
|
svn-id: r40687
|
|
svn-id: r40683
|
|
svn-id: r40597
|
|
entries in the process. Also, added a sanity check for invalid game entries
svn-id: r40596
|
|
SCI1.1 games.
svn-id: r40575
|
|
- Moved the version defines outside of versions.h
svn-id: r40559
|
|
feature flags (not used yet)
- Removed the version verification functions (they were only used for two specific cases, but the SCI executable reader is able to detect the exact SCI game version anyway, so there is no point in having these)
- Removed the empty GameFlags structure and replaced it with a 32-bit integer instead
svn-id: r40524
|
|
svn-id: r40515
|
|
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
|
|
Common::Array<CodeBlock>
svn-id: r40433
|
|
svn-id: r40431
|
|
svn-id: r40376
|
|
svn-id: r40375
|
|
svn-id: r40374
|