aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/vm.cpp
AgeCommit message (Collapse)Author
2010-06-13Disabled two cases of findObjectByName() in SCI0 early gamesFilippos Karapetis
svn-id: r49639
2010-06-10camelCase changesFilippos Karapetis
svn-id: r49570
2010-06-10Resolved a FIXME with getSciLanguage(), by creating a separate setter. Also, ↵Filippos Karapetis
some camelCase changes svn-id: r49568
2010-06-10Use the SELECTOR() macro for readabilityFilippos Karapetis
svn-id: r49563
2010-06-10Moved all of the game init/run/exit logic inside the SciEngine classFilippos Karapetis
svn-id: r49559
2010-06-09Merged script_init_engine() and game_init() and cleaned up SciEngine::run() ↵Filippos Karapetis
a bit svn-id: r49537
2010-06-09Globals from script 0 are now initialized in script_init_engine(), and are ↵Filippos Karapetis
accessed from the relevant variables pointer. Removed direct reference to script 0 from the engine state svn-id: r49536
2010-06-09Merged restAdjust and restAdjustCur, as we don't save the restAdjust ↵Filippos Karapetis
modifier inside saved games (rightfully so). Also, the segment manager is now reset inside the main loop, when the game is restarted, not in game_exit() svn-id: r49533
2010-06-08CleanupFilippos Karapetis
svn-id: r49521
2010-06-08Merged the restarting_flags, script_abort_flag, and restoring members of the ↵Filippos Karapetis
EngineState class into one variable, abortScriptProcessing. The flag kept to signify a game restart has been placed in a boolean, gameWasRestarted svn-id: r49518
2010-06-08Merged _game_run() inside game_run(). Some cleanupFilippos Karapetis
svn-id: r49513
2010-06-07Fixed regression from commit #49465 - there are in fact two restAdjust ↵Filippos Karapetis
variables, the current and global one svn-id: r49486
2010-06-06Now that EngineState is not deleted when loading games, we can move some ↵Filippos Karapetis
more state-related variables to it, and remove several FIXME's about non-const global variables. Also, the entries in the data stack are now deleted when loading (fixes a memory leak - thanks to digitall for this). svn-id: r49465
2010-06-01Stop reconstructing the engine state when restoring, but reset it insteadFilippos Karapetis
svn-id: r49376
2010-05-31Fixed operator precedence warningFilippos Karapetis
svn-id: r49353
2010-05-31The code that loads saved game from the launcherFilippos Karapetis
can now load SCI2 saved games. Added an explanation why the injected call is necessary svn-id: r49349
2010-05-30Limit access to the _bufSize, _scriptSize and _heapSize members of the ↵Filippos Karapetis
Script class svn-id: r49327
2010-05-29Mass renaming of selector-related functions, and removed some defines which ↵Filippos Karapetis
were just cloaking functions with a different name - GET_SEL32 -> readSelector - GET_SEL32V -> readSelectorValue - PUT_SEL32 -> writeSelector - PUT_SEL32V -> writeSelectorValue Also, changed some selector-related function names and variables to CamelCase svn-id: r49317
2010-05-28Added some more info when severe script errors occurFilippos Karapetis
svn-id: r49293
2010-05-26SCI: Making various object and script related things constMax Horn
svn-id: r49246
2010-05-26FormattingFilippos Karapetis
svn-id: r49233
2010-05-26Added more info to the warning thrown when argc > 1 while modifying a ↵Filippos Karapetis
variable selector in send_selector() svn-id: r49232
2010-05-26After running some tests, it appears that modifying argc inside ↵Filippos Karapetis
send_selector() was a bad idea. Reverting the relevant code, and putting the warning back, with some extra comments svn-id: r49231
2010-05-26Silence a warning inside send_selector(): argc > 0 means "write selector". ↵Filippos Karapetis
Added code do make sure that argc is always either 0 or 1 when referencing variable selectors (this isn't strictly necessary, but better safe than sorry...). Some cleanup svn-id: r49230
2010-05-26More work on controlling access to members of the Object class:Filippos Karapetis
- Moved the code for initializing the object class, species and base object inside the Object class - Made propertyOffsetToId() a method of the Object class - Made relocateObject() a method of the Object class - The Object getVariable() method now returns a reference to the requested variable Only SegManager::reconstructScripts() is left needing direct access to the members of the Object class svn-id: r49228
2010-05-23Remove the unused SCI_GAME_WAS_RESTARTED_AT_LEAST_ONCE flagFilippos Karapetis
svn-id: r49161
2010-05-23Made shrink_execution_stack() a member of EngineStateFilippos Karapetis
svn-id: r49159
2010-05-23Cleaned up the game ID code:Filippos Karapetis
- The game ID is now obtained from ScummVM ID directly, not by converting Sierra's internal ID - Moved the code which reads the internal Sierra ID inside the resource manager - Moved the code which converts the internal Sierra ID to ScummVM's IDs together with the rest of the detection code svn-id: r49152
2010-05-19Removed the exportsAreWide variable from the segment manager and save games, ↵Filippos Karapetis
and moved validateExportFunc() in the Script class, thus resolving a TODO svn-id: r49093
2010-05-19Moved the breakpoint information inside the DebugState structFilippos Karapetis
svn-id: r49092
2010-05-18- Moved kernel_lookup_text inside the Kernel classFilippos Karapetis
- Added a pointer to the segment manager from within the Kernel class, thus simplifying the calls to it svn-id: r49076
2010-05-18- Moved determine_reg_type() and kernel_matches_signature() inside the ↵Filippos Karapetis
Kernel class, where they belong - Moved the kernel signature defines inside kernel.h - Removed some unused references to EngineState svn-id: r49075
2010-05-18Moved breakpointWasHit inside the DebugState struct, thus resolving a FIXMEFilippos Karapetis
svn-id: r49071
2010-05-18Add initial support for KQ6 Mac. Wrapper functions for read/writing to ↵Matthew Hoops
pointers are now used (found in util.*) for code that has different endianness in SCI1.1+ Mac games. Add support for Mac 'snd ' and 'CURS' resources. QFG1 Mac is not yet playable due to script compression. svn-id: r49070
2010-05-04Move DebugChannel related code to new headerMax Horn
svn-id: r48935
2010-04-27COMMON: Move DebugChannel stuff into a new DebugMan singletonMax Horn
svn-id: r48821
2010-03-10Silenced some harmless cppcheck warnings about unreachable code after a return.Torbjörn Andersson
In this case, it was always a break after a return in a switch case. There are similar cases which cppcheck didn't detect, and a couple of cases where we have a break after a continue in a switch case (where the continue refers to an outer loop), but I didn't touch those. Not yet, at least. svn-id: r48218
2010-02-13SCI: Remove EngineState::_kernel, use SciEngine::_kernel insteadMax Horn
svn-id: r48050
2010-02-13SCI: Move GameFeatures from EngineState to SciEngineMax Horn
svn-id: r48049
2010-02-13SCI: Get rid of EngineState::resManMax Horn
svn-id: r48048
2010-02-13SCI: Add global g_sci pointer to the active SciEngine instanceMax Horn
svn-id: r48046
2010-02-12SCI: Revert r47929 (bad idea, as we may run out of offsets). Instead, adapt ↵Walter van Niftrik
SCI32 list iteration code to store node successor before invoking. svn-id: r48036
2010-02-07SCI: Move bulk of op_callk code to new func callKernelFunc()Max Horn
svn-id: r47979
2010-02-07SCI: cleanup; try to unify var names when reading PMachine instructions a bitMax Horn
svn-id: r47978
2010-02-07SCI: Simplify yet another case of weird 'unsigned to signed' conversionMax Horn
svn-id: r47977
2010-02-07SCI: Get rid of GET_OP_ macrosMax Horn
svn-id: r47957
2010-02-07SCI: Add function readPMachineInstruction()Max Horn
svn-id: r47956
2010-02-06SCI: Run GC only when execution_stack_base is 0.Walter van Niftrik
svn-id: r47929
2010-02-03Placed all the game feature detection code in a separate classFilippos Karapetis
svn-id: r47850
2010-02-03SCI: Make add_exec_stack_entry & add_exec_stack_varselector static / privateMax Horn
svn-id: r47837