Commit Graph
560 Commits
Author SHA1 Message Date
Filippos Karapetis 3184aac398 SCI: Moved all the workaround tables in a separate file, to keep them apart from the actual code
svn-id: r51088
2010-07-21 14:18:26 +00:00
Martin Kiewitz 51258a723c SCI: adding lsl6hires uninit workaround
svn-id: r51087
2010-07-21 13:52:41 +00:00
Filippos Karapetis d53e5fbfb7 SCI: Removed the restoring parameter of the run_vm() function
svn-id: r51076
2010-07-20 23:15:07 +00:00
Martin Kiewitz 2a47f573dd SCI: some sci32 fixes
kOnMe, kLocal2Global, kGlobal2Local now hires capable, hotspots seem to work in lsl6 and sq6, although pressing on start in sq6 doesn't work yet, you need to click on the rightmost/bottom area

svn-id: r51074
2010-07-20 21:22:39 +00:00
Martin Kiewitz 8e24b7930c SCI: adding lsl6hires uninit workaround
svn-id: r51072
2010-07-20 20:17:23 +00:00
Martin Kiewitz 70ed9dfc70 SCI: tiny comment change
svn-id: r51069
2010-07-20 18:00:45 +00:00
Martin Kiewitz a0ce89d2e9 SCI: clean up workaround tables/code
svn-id: r51068
2010-07-20 17:58:04 +00:00
Martin Kiewitz ef69fb1af5 SCI: adding uninit workarounds for cnick games
longbow and king's quest
KQ has the same issues as hoyle 3

svn-id: r51063
2010-07-20 14:27:30 +00:00
Martin Kiewitz 6ebcb53265 SCI: fix regression of r51060
svn-id: r51062
2010-07-20 12:50:13 +00:00
Martin Kiewitz 0b3f816c8b SCI: change the workaround-types
0 is now don't call
1 is do call
2 is don't call and fake acc

makes more sense

svn-id: r51060
2010-07-20 11:45:06 +00:00
Martin Kiewitz 5b4ce3831c SCI: adding 2 uninit workarounds for hoyle1
svn-id: r51036
2010-07-19 19:14:37 +00:00
Martin Kiewitz b48045662d SCI: fix ult to work for pq2 japanese
pq2 japanese compares pointers to 2000 to find out if its a resourceid or a pointer

svn-id: r51023
2010-07-19 10:19:13 +00:00
Martin Kiewitz e4271b0bb0 SCI: fix warning
svn-id: r51010
2010-07-18 20:36:19 +00:00
Martin Kiewitz b23dd848ed SCI: make the left-over opcodes more verbose
...and add ability to easily add workarounds
remove ACC_ARITHMETIC_L and POP()

svn-id: r51005
2010-07-18 18:57:28 +00:00
Martin Kiewitz d06603f151 SCI: make bnot/mod/mul more verbose
...and add abitility to easily add workarounds

svn-id: r51003
2010-07-18 18:26:00 +00:00
Martin Kiewitz a2ea3381fe SCI: ipToa/ipTos/dpTos more verbose
...and adding ability to add workarounds easily

svn-id: r50999
2010-07-18 18:01:52 +00:00
Martin Kiewitz f249642733 SCI: making int/uint comparsions more verbose
replacing int/uint comparsion opcode with new code that also displays much more information in case of errors and also add possibility to easily add workarounds

svn-id: r50997
2010-07-18 17:18:56 +00:00
Martin Kiewitz 4595b8818a SCI: adding room numbers to all workarounds
svn-id: r50990
2010-07-18 13:08:47 +00:00
Martin Kiewitz 98f0b06fe3 SCI: adding workaround for script bug in lsl6 when looking through tile
svn-id: r50987
2010-07-18 12:25:40 +00:00
Martin Kiewitz 59bb9f8fe8 SCI: added uninitialized workarounds for hoyle 3
svn-id: r50978
2010-07-18 04:56:16 +00:00
Martin Kiewitz 88dfa3142f SCI: adding uninitialized workaround for gk1
svn-id: r50969
2010-07-17 21:13:37 +00:00
Martin Kiewitz fb206fb7c0 SCI: added uninitialized workaround for lsl3
svn-id: r50965
2010-07-17 18:51:54 +00:00
Max Horn 1d4c82885d DEBUGGER: Simplify how our console debugger works / is used
* Remove _isAttached member var and isAttached method
* Engines now always call the onFrame method; whether it does
  something is decided by the debugger class resp. its subclasses
* Make detach() protected instead of private, so that subclasses
  can invoke it
* Remove _detach_now member var (call detach() instead).
* Rename _frame_countdown to _frameCountdown and properly
  document it.
* Add more doxygen comments
* Cleanup

svn-id: r50963
2010-07-17 18:38:42 +00:00
Martin Kiewitz 8c31dd7e85 SCI: added gameid for send() sq4 workaround
svn-id: r50961
2010-07-17 13:32:11 +00:00
Martin Kiewitz 60363b8a53 SCI: adding uninitialized workaround for lsl1 when playing at the casino
svn-id: r50938
2010-07-16 14:16:47 +00:00
Martin Kiewitz a694c5ddcf SCI: adding workaround for qfg1vga script bug (div on object) which occurs when entering inn
svn-id: r50892
2010-07-14 19:12:31 +00:00
Martin Kiewitz f456b7cfa2 SCI: separating qfg1ega and qfg1vga gameids
svn-id: r50881
2010-07-14 11:53:12 +00:00
Filippos Karapetis 20e672e34d Typos
svn-id: r50862
2010-07-14 02:02:03 +00:00
Martin Kiewitz 15f5cc43ef SCI: uninitialized workaround for qfg2 when accessing inventory
svn-id: r50854
2010-07-13 20:42:42 +00:00
Max Horn 03c0faa5d7 SCI: Move breakpoint checks into SciEngine methods
svn-id: r50837
2010-07-12 23:21:03 +00:00
Max Horn 1d3a0f6dec SCI: Turn global object g_debugState into SciEngine member var
svn-id: r50836
2010-07-12 23:20:33 +00:00
Martin Kiewitz 6ff4dd2d91 SCI: changing how savegame ids are handled internally. Using range 0-999 so that scripts are able to signal us to create new slots, using range 1000-1999 for official slots. fixes lsl6 quicksave overwriting wrong save slots
svn-id: r50831
2010-07-12 22:26:48 +00:00
Martin Kiewitz ad098addd2 SCI: adding uninitialized workaround for lsl6
svn-id: r50819
2010-07-12 11:20:42 +00:00
Martin Kiewitz c1e954bdad SCI: add workaround for lsl6 restore issue (needs to get further investigated), hunk segment is used but hunk segment isn't existant at that point when restoring the game
svn-id: r50814
2010-07-12 09:24:18 +00:00
Martin Kiewitz 101498e770 SCI: adding 3 uninitialized temp workarounds for kq6 - found and created by Ceriand, thanx
svn-id: r50813
2010-07-12 08:59:43 +00:00
Martin Kiewitz 4c9ad98dfe SCI: returning 0 when parameter reads go out-of-bounds, onto the stack and hit an uninitialized temp, fixes pq2 .490
svn-id: r50812
2010-07-12 08:38:30 +00:00
Martin Kiewitz 219a6627c2 SCI: changing uninitialized workaround for lsl6 narrator
svn-id: r50804
2010-07-11 18:51:28 +00:00
Martin Kiewitz df6ead5f93 SCI: calling speed throttler as well from kPalette(setIntensity) if needed - fixes kq6 intro
svn-id: r50794
2010-07-10 22:27:28 +00:00
Martin Kiewitz 09fd47236d SCI: adding to execstack only right before executing kernel call, otherwise it wouldnt be possible to skip over sub-function kernel calls via workarounds
svn-id: r50792
2010-07-10 20:50:52 +00:00
Martin Kiewitz 5c2489f153 SCI: removing hoyle workaround from kAbs & signature and adding it into workaround table
svn-id: r50790
2010-07-10 19:58:25 +00:00
Martin Kiewitz 790e9b0351 SCI: added signatures for kGraph, removed isDummy boolean from KernelFunction
svn-id: r50786
2010-07-10 18:21:09 +00:00
Martin Kiewitz 0cd97ca5c5 SCI: improve error message on subcall signature mismatch
svn-id: r50774
2010-07-09 21:51:20 +00:00
Martin Kiewitz af479a20ae SCI: adding workaround support for kernel subcalls, cleanup
svn-id: r50770
2010-07-09 21:33:12 +00:00
Martin Kiewitz d27e4a475b SCI: removing origName from KernelFunction struct, adding debugCalls boolean for later use
svn-id: r50769
2010-07-09 21:10:14 +00:00
Martin Kiewitz ba776fb293 SCI: implemented subsignatures for kDoSound
svn-id: r50755
2010-07-09 12:06:41 +00:00
Martin Kiewitz 7e05d6e62b SCI: part of subfunction signature&mapping implemented, little cleanup
svn-id: r50750
2010-07-08 21:22:59 +00:00
Filippos Karapetis 0c411d66ce SCI: Simplified op_div and op_mod, removed some variables and removed the pointless OBJ_PROPERTY wrapper
svn-id: r50719
2010-07-06 07:42:25 +00:00
Filippos Karapetis 6219ffe52f SCI: Removed the unused line number parameter from validate_variable() and related functions
svn-id: r50654
2010-07-04 21:31:09 +00:00
Filippos Karapetis 7d64f3e343 SCI: Added a short description for all opcodes, so that it's easier to understand what they do without cross referencing the wiki, and removed some obsolete and unused code
svn-id: r50645
2010-07-04 14:55:28 +00:00
Filippos Karapetis 21450f1a2e Added a workaround for an unitialized variable in GK2
svn-id: r50580
2010-07-01 22:56:02 +00:00