aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/vm.cpp
AgeCommit message (Collapse)Author
2009-11-14Removed sfx/misc.hFilippos Karapetis
svn-id: r45885
2009-11-04- Changed the segment manager to be a static part of the engine, and stopped ↵Filippos Karapetis
deleting and recreating it when restoring games - Merged game_exit(), script_free_vm_memory() and script_free_engine() - Cleanup svn-id: r45666
2009-10-30SCI: validate_variable fixed and now using bool instead of int (fixes pq3 ↵Martin Kiewitz
demo crash on my computer) svn-id: r45543
2009-10-22CleanupFilippos Karapetis
svn-id: r45323
2009-10-21Removed the accidental inclusion of deprecated code for LSL5 - this has been ↵Filippos Karapetis
superseded by commit 45297 svn-id: r45311
2009-10-21- Removed kShow() and the related code it uses - it's a debugging function, ↵Filippos Karapetis
and we have the same functionality in the debug console - Merged the view signal flags from kernel.h and gui_animate.h, and named them appropriately. Also, updated the notes next to them, cause some were incorrectly marked as not used in our engine - Added a note about a hack used in the old GUI in the view signal flags - Moved the control state flags inside gui_helpers.h svn-id: r45310
2009-10-21SCI: Fix warning, and reformat a multi-line commentMax Horn
svn-id: r45303
2009-10-21Fixed the bug where ego would not walk properly after he's swapped in LSL5 ↵Filippos Karapetis
(from Larry to Patti and vice versa) svn-id: r45297
2009-10-18SCI: Rename game_obj to _gameObjMax Horn
svn-id: r45235
2009-10-15SCI: pointer_add -> error changed to warning b/c iceman does it. Just ↵Martin Kiewitz
ignoring it doesnt seem to have any effect on the game svn-id: r45123
2009-10-14SCI: Improve cmdSend slightly. It's still broken, thoughWillem Jan Palenstijn
svn-id: r45097
2009-10-14SCI: Fix build with VM_DEBUG_SEND enabledWillem Jan Palenstijn
svn-id: r45096
2009-10-14SCI: removed speed throttler (cause of kAnimate change)Martin Kiewitz
svn-id: r45094
2009-10-14SCI: Rename some vars (cleaning up what seems to have been caused by a blind ↵Max Horn
global search & replace) svn-id: r45060
2009-10-13SCI: Merge some sfx related global funcs into SfxState.Max Horn
This allows us to get rid of "static SfxPlayer *s_player". svn-id: r45038
2009-10-12Reverted the Common::String::printf() related commits, as the function works ↵Filippos Karapetis
fine now under MSVC svn-id: r44982
2009-10-12Fixed a warning message under MSVC... seems like Common::String::printf does ↵Filippos Karapetis
not work correctly when used on an empty string svn-id: r44972
2009-10-11More work on the Object classFilippos Karapetis
svn-id: r44921
2009-10-11SCI: change remove script FIXME warning into commentMartin Kiewitz
svn-id: r44901
2009-10-10Started rewriting the Object struct into a classFilippos Karapetis
svn-id: r44878
2009-10-09SCI/newgui: calling process_sound_events now directly within kAnimate(), ↵Martin Kiewitz
fixes hanging scripts (e.g. sq3 exiting pod, kq1 getting killed) svn-id: r44843
2009-10-04SCI: Rename EngineState::segMan to _segManMax Horn
svn-id: r44629
2009-10-02Fix cppcheck issue reported by salty-horseWillem Jan Palenstijn
svn-id: r44541
2009-10-02SCI: Use String::printf instead of temporary bufferWillem Jan Palenstijn
svn-id: r44532
2009-10-02SCI: Make NULL_REG & SIGNAL_REG const; change validate_property so that its ↵Max Horn
callers cannot modify NULL_REG accidentally anymore svn-id: r44531
2009-10-01Removed the STRICT_SEND, STRICT_READ and ASSERT_ARITHMETIC definesFilippos Karapetis
svn-id: r44519
2009-10-01- Removed the toggle for "weak" validations, as there are cases where they ↵Filippos Karapetis
fail (e.g. in Longbow), so there is no point in having strict validations - Removed the invalid toggle from kernel signatures - we now never error out on invalid object references, but throw a warning instead - Simplified determine_reg_type() svn-id: r44511
2009-10-01SCI: Remove outdated debugging hack.Willem Jan Palenstijn
In the past, a negative selector value was used to identify a callk stack frame. Currently a type of EXEC_STACK_TYPE_KERNEL already does that. svn-id: r44510
2009-09-30Fixed the warning message shown when dummy functions are invokedFilippos Karapetis
svn-id: r44506
2009-09-30Added a new special reg_t, SIGNAL_REG, for signaling when an error occurs ↵Filippos Karapetis
(usually), or to signal success in some special occasions svn-id: r44505
2009-09-30Fix code formatting (esp. 'if(' -> 'if (' etc., but also indention and other ↵Max Horn
things) svn-id: r44495
2009-09-30SCI: Replace magic '-42' by an enumMax Horn
svn-id: r44492
2009-09-30SCI: Add callk stackframe directly in run_vmWillem Jan Palenstijn
svn-id: r44473
2009-09-29- Changed the unimplemented debug SCI kernel functions (InspectObj, ↵Filippos Karapetis
ShowSends, ShowObjs, ShowFree, StackUsage and Profiler) to be dummy functions - we have our own debugger, and don't use these functions for debugging - Removed the function number parameter from all kernel functions, as it's no longer needed, and removed the FAKE_FUNCT_NR hack - Removed kUnknown() and kStub() - Dummy/unknown kernel functions are no longer invoked, and a warning is shown instead, with the paremeters passed to them Note: there is an evil hack used for debugging scripts in invoke_selector(), which probably no longer works now svn-id: r44461
2009-09-28SCI: Remove unsafe unmarkDeleted function.Willem Jan Palenstijn
It did not undo all effects of a script being deleted (specifically its superclasses remain unlocked), causing an inconsistent state. Also removed EcoQuest CD hack that worked around a specific instance of this problem. svn-id: r44449
2009-09-27SCI: change segment offsets in reg segments to be in half reg_t.Willem Jan Palenstijn
This makes offsets in raw and reg segments consistent, which fixes string addressing in savegame dialogs. svn-id: r44396
2009-09-23- Moved the SCI version in a global variableFilippos Karapetis
- Changed all the SCI version checks to use getSciVersion() - Also made getSciVersionDesc a global function (removes some ugly accessing of the SCI engine) The fallback detector should work correctly now svn-id: r44269
2009-09-22- Merged scriptObjInit0() and scriptObjInit11()Filippos Karapetis
- Replaced some cases where getSciVersion() is used with _resMan->sciVersion(), as getSciVersion() will fail with the fallback detector (as the engine is not initialized). Object property accessors still crash currently, when used with the fallback detector svn-id: r44261
2009-09-21SCI: cleanupMax Horn
svn-id: r44241
2009-09-21SCI: Replace IntMapper Script::_objIndices and Common::Array ↵Max Horn
Script::_objects by a HashMap -- goodbye, class IntMapper svn-id: r44240
2009-09-17SCI: Add EngineState::_kernel member for convenienceMax Horn
svn-id: r44173
2009-09-17SCI: Move CallsStruct into vm.cpp, the only place it is being usedMax Horn
svn-id: r44172
2009-09-17SCI: Move some selector related function into a new file selector.cppMax Horn
svn-id: r44171
2009-09-17SCI: Add a global getSciVersion() function and make use of itMax Horn
svn-id: r44170
2009-09-17SCI: Rename selector_map_t -> SelectorCache and _selectorMap -> _selectorCacheMax Horn
svn-id: r44152
2009-09-17SCI: Move parts of struct ScriptState into a new struct DebugStateMax Horn
svn-id: r44151
2009-09-17SCI: cleanupMax Horn
svn-id: r44150
2009-09-17Made script_lookup_export() a method of SegManagerFilippos Karapetis
svn-id: r44140
2009-09-17Changed the way object selectors are accessed, by removing the relevant ↵Filippos Karapetis
defines and adding appropriate methods to the Object structure svn-id: r44138
2009-09-17SCI: Change SegmentId from int to uint16; consistently use segment 0 to ↵Max Horn
indicate an invalid segment svn-id: r44131