aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
AgeCommit message (Collapse)Author
2010-06-28SCI: Fix DEBUG_GC mode and permanently enable itMax Horn
svn-id: r50430
2010-06-28SCI: Revise GC interface: use Common::Array<reg_t> instead of callbacksMax Horn
This means a little bit more overhead but makes the code much more readable and understandable. svn-id: r50429
2010-06-28SCI: Make Script member vars private; add const qualifiersMax Horn
Only three Script members remain public (for now) svn-id: r50428
2010-06-28SCI: Change warning back to error in Script::initialiseObjectsSci0Max Horn
Instead of turning the error into a warning globally, we now have code which ignores the error in Script 202 of KQ5 French, but will keep reporting if it turns up in other places. svn-id: r50427
2010-06-28SCI: More formatting cleanupMax Horn
svn-id: r50426
2010-06-28SCI: cleanupMax Horn
svn-id: r50419
2010-06-28SCI: added uninit workaround for lsl3 - when accessing set volume menu the ↵Martin Kiewitz
first time sound got muted before (because a uninitialized temp was used to do it, would have been 's' in sierra sci) svn-id: r50416
2010-06-28SCI: show arguments on selector invoke breakpoint even when VM_DEBUG_SEND is ↵Martin Kiewitz
not used, but in a compressed fashion svn-id: r50410
2010-06-27SCI: Removed the hack for loading games from the launcher from run_vm(). ↵Filippos Karapetis
This is now done on startup. This should fix loading from the launcher for LSL6 svn-id: r50406
2010-06-27CleanupFilippos Karapetis
svn-id: r50404
2010-06-27Cleanup, remove unused/obsolete codeFilippos Karapetis
svn-id: r50403
2010-06-27Made the script initialization/uninitialization methods part of the segment ↵Filippos Karapetis
manager svn-id: r50402
2010-06-27SCI: Made the code for initializing script classes, objects and locals part ↵Filippos Karapetis
of the Script class svn-id: r50398
2010-06-27SCI: Moved all the script-related code inside script.cpp/.h, and all script ↵Filippos Karapetis
opcode-related code inside vm.cpp/.h svn-id: r50396
2010-06-27SCI: Separated the code for initializing script classes from the code for ↵Filippos Karapetis
initializing script objects svn-id: r50390
2010-06-27SCI: added new command "p" / "stepover" to execute one command, but skip ↵Martin Kiewitz
send/calls processing. single-step is now "trace" (alias "s" and "t"), stepping till ret is "step_ret" (alias "pret"), removed unused kDebugSeek svn-id: r50388
2010-06-27SCI: fixing regression from one of the mergesMartin Kiewitz
svn-id: r50387
2010-06-27SCI: now showing kernel call name when argument signature check failsMartin Kiewitz
svn-id: r50380
2010-06-27Turned the error when failing to locate an invalid object back to a warning ↵Filippos Karapetis
(KQ5 French has an invalid object in script 202) svn-id: r50379
2010-06-27SCI: better solution for the lsl6 uninit issue, we now go through all the ↵Martin Kiewitz
parents till we find a working workaround - we can use Narrator::startText that way inside the workaround table svn-id: r50374
2010-06-27SCI: adding uninit workaround for lsl6 (Narrator::startText)Martin Kiewitz
svn-id: r50373
2010-06-27CleanupFilippos Karapetis
svn-id: r50359
2010-06-26Removed the misleading getHeap() function (only valid for SCI0-SCI1), plus ↵Filippos Karapetis
removed some unused defines svn-id: r50358
2010-06-26Moved script_instantiate_sci0() inside the segment manager, and renamed it ↵Filippos Karapetis
to scriptInitialiseObjectsSci0() svn-id: r50357
2010-06-26Shuffled some functions around. Also, the filename in kResCheck can never be ↵Filippos Karapetis
bigger than 9 characters, when dealing with VMD videos svn-id: r50355
2010-06-26Added a workaround for broken script 377 in Castle of Dr. Brain, room 320. ↵Filippos Karapetis
It constantly tries to free the saved area rectangle (underbits) underneath the popup window svn-id: r50352
2010-06-26Zero out the memory pointer of a hunk when freeing itFilippos Karapetis
svn-id: r50351
2010-06-26SCI: added comment to vm-workaround tableMartin Kiewitz
svn-id: r50347
2010-06-26SCI: add another unint temp workaround for kq5 - when playing harp for the ↵Martin Kiewitz
harpies svn-id: r50334
2010-06-26SCI: pseudo-adding workaround for kq5 room 25 witch forestMartin Kiewitz
svn-id: r50332
2010-06-26SCI: fixing stupid torturegit conflict mergeMartin Kiewitz
svn-id: r50329
2010-06-26Fix format string warningWillem Jan Palenstijn
svn-id: r50325
2010-06-26SCI: adding more comment for export workaround (sq1)Martin Kiewitz
svn-id: r50318
2010-06-26SCI: added workaround for island of dr. brain elements puzzleMartin Kiewitz
svn-id: r50317
2010-06-26SCI: making hack inside kAbs hoyle1 specific, added fixmeMartin Kiewitz
svn-id: r50309
2010-06-26SCI: adding capability to resolve local calls as well for valgrind-sci, ↵Martin Kiewitz
adding another workaround for a script bug in sq1 (this time export 1 gets called locally) svn-id: r50308
2010-06-25SCI: implementing workaround for issue in room 58 sq1 (operation lt, doing ↵Martin Kiewitz
comparsion against pointer) svn-id: r50294
2010-06-25SCI: adding capability for detecting export-calls into valgrind-sci, adding ↵Martin Kiewitz
workaround for export 1 of script 703 in sq1 (gets called from various objects) svn-id: r50292
2010-06-25SCI: fix typoFlorian Kagerer
svn-id: r50291
2010-06-25AUDIO: get rid of MDT_PREFER_MIDI since it should be sufficient to either ↵Florian Kagerer
select MDT_PREFER_MT32 or MDT_PREFER_GM svn-id: r50288
2010-06-25SCI: adding workaround for uninitialized read in sq1Martin Kiewitz
svn-id: r50287
2010-06-25Renamed some variablesFilippos Karapetis
svn-id: r50284
2010-06-25Removed the getHunkPointer error - it's valid SCI behavior (e.g. when ↵Filippos Karapetis
loading/quitting sometimes, since hunks are not saved). We check for valid hunk pointers anyway, so there's no reason for the warning/error svn-id: r50279
2010-06-25SCI: changing workaround results for opcodes from signal_reg to make_reg(0, 1)Martin Kiewitz
svn-id: r50278
2010-06-25When loading a game, stop all running VMs recursively, and also stop ↵Filippos Karapetis
kAnimate's current recursion. This fixes the invalid execution stack frame in SQ1, when loading from the death screen after dying from the acid drops in Kerona. This should also fix the invalid hunk pointers, thus the warning about invalid hunk pointers has been turned into an error, as it shouldn't occur anymore svn-id: r50277
2010-06-25Do not allow the VM to run on non-existent scripts (which shouldn't be ↵Filippos Karapetis
happening anymore) svn-id: r50276
2010-06-25Removed all of the non-validating code - there's no real point in removing ↵Filippos Karapetis
script validations svn-id: r50275
2010-06-25SCI: Introduce SciGameId enumMax Horn
svn-id: r50273
2010-06-25SCI: Restrict some 'error' exceptions to the places they occur; cleanupMax Horn
svn-id: r50271
2010-06-25SCI: when writing to a temp, check for segment 0xFFFF and remove it. This ↵Martin Kiewitz
fixes a false-positive uninitialized read error in room 44 sq1 svn-id: r50269