Martin Kiewitz
25cb3092f4
SCI: added comment to vm-workaround table
...
svn-id: r50347
2010-06-26 21:57:13 +00:00
Martin Kiewitz
9a0e2e9c46
SCI: add another unint temp workaround for kq5 - when playing harp for the harpies
...
svn-id: r50334
2010-06-26 17:37:28 +00:00
Martin Kiewitz
61295bcc4e
SCI: pseudo-adding workaround for kq5 room 25 witch forest
...
svn-id: r50332
2010-06-26 16:54:09 +00:00
Martin Kiewitz
79b5e7d77e
SCI: fixing stupid torturegit conflict merge
...
svn-id: r50329
2010-06-26 16:21:28 +00:00
Willem Jan Palenstijn
691323f16e
Fix format string warning
...
svn-id: r50325
2010-06-26 15:55:40 +00:00
Martin Kiewitz
a4f139c4d2
SCI: adding more comment for export workaround (sq1)
...
svn-id: r50318
2010-06-26 12:20:40 +00:00
Martin Kiewitz
cb5d9f6af5
SCI: added workaround for island of dr. brain elements puzzle
...
svn-id: r50317
2010-06-26 12:04:15 +00:00
Martin Kiewitz
258494f036
SCI: adding capability to resolve local calls as well for valgrind-sci, adding another workaround for a script bug in sq1 (this time export 1 gets called locally)
...
svn-id: r50308
2010-06-26 08:29:55 +00:00
Martin Kiewitz
56d9acad90
SCI: implementing workaround for issue in room 58 sq1 (operation lt, doing comparsion against pointer)
...
svn-id: r50294
2010-06-25 22:48:55 +00:00
Martin Kiewitz
fc4fa25ec4
SCI: adding capability for detecting export-calls into valgrind-sci, adding workaround for export 1 of script 703 in sq1 (gets called from various objects)
...
svn-id: r50292
2010-06-25 22:34:53 +00:00
Florian Kagerer
b96c0a1f07
SCI: fix typo
...
svn-id: r50291
2010-06-25 21:04:22 +00:00
Florian Kagerer
c35e350531
AUDIO: get rid of MDT_PREFER_MIDI since it should be sufficient to either select MDT_PREFER_MT32 or MDT_PREFER_GM
...
svn-id: r50288
2010-06-25 20:51:57 +00:00
Martin Kiewitz
683d54a746
SCI: adding workaround for uninitialized read in sq1
...
svn-id: r50287
2010-06-25 20:46:08 +00:00
Martin Kiewitz
69694f3619
SCI: changing workaround results for opcodes from signal_reg to make_reg(0, 1)
...
svn-id: r50278
2010-06-25 17:59:48 +00:00
Filippos Karapetis
aedc77f0bd
When loading a game, stop all running VMs recursively, and also stop 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-25 17:25:00 +00:00
Filippos Karapetis
b6d1b3bc0b
Do not allow the VM to run on non-existent scripts (which shouldn't be happening anymore)
...
svn-id: r50276
2010-06-25 17:13:47 +00:00
Filippos Karapetis
ab19e87414
Removed all of the non-validating code - there's no real point in removing script validations
...
svn-id: r50275
2010-06-25 16:54:03 +00:00
Max Horn
6ee82a2027
SCI: Introduce SciGameId enum
...
svn-id: r50273
2010-06-25 16:16:29 +00:00
Martin Kiewitz
8ff6a709fb
SCI: when writing to a temp, check for segment 0xFFFF and remove it. This fixes a false-positive uninitialized read error in room 44 sq1
...
svn-id: r50269
2010-06-25 16:04:37 +00:00
Filippos Karapetis
e55686590e
Removed the checking of parameters again (it's wrong, as it happens after, instead of before) and restored the workaround for SQ1 in op_add again
...
svn-id: r50268
2010-06-25 15:28:24 +00:00
Martin Kiewitz
2b43c3a668
SCI: changes to the op GT workaround
...
svn-id: r50266
2010-06-25 14:50:27 +00:00
Filippos Karapetis
494a7fa8ab
Extended validate_read_var to check for parameters too, and fixed the uninitialized variable in SQ1 there
...
svn-id: r50263
2010-06-25 12:43:43 +00:00
Filippos Karapetis
279da6ac48
Added workarounds for two issues which appear when throwing the water at Orat in SQ1, room 28
...
svn-id: r50262
2010-06-25 12:15:36 +00:00
Martin Kiewitz
06a65d5c33
SCI: better initialize temp variables with FFFF:0 instead. foreign lsl3 uses kFileIO(readraw) and then kReadNumber directly. In that case we would produce many warnings because no terminating 0 is found
...
svn-id: r50235
2010-06-24 21:32:29 +00:00
Martin Kiewitz
e8d31ccc07
SCI: fixing the tortoisegit commit disaster :P
...
svn-id: r50231
2010-06-24 20:10:51 +00:00
Martin Kiewitz
b0fde0a1f6
SCI: removing debug warning to show processes opcodes, accidentaly commited
...
svn-id: r50230
2010-06-24 20:03:32 +00:00
Martin Kiewitz
381a862d61
SCI: partly reverting r50208, iceman has script code (fred::canBeHere) that asks for property 380. sierra also returned a zero when going out of bounds (see gregs engine object.cpp, ::getPropertyN - fixes iceman, lsl3 and probably more
...
svn-id: r50229
2010-06-24 20:01:31 +00:00
Filippos Karapetis
42ca630f46
Fixed the LSL3 binoculars scene again, by fixing the invalid varselector reference
...
svn-id: r50227
2010-06-24 18:48:50 +00:00
Martin Kiewitz
346c3a3230
SCI: added uninitialized workaround for sq4cd
...
svn-id: r50226
2010-06-24 18:17:36 +00:00
Matthew Hoops
7edbcc26f7
Cleanup uninitialized read workaround(s).
...
svn-id: r50225
2010-06-24 17:48:15 +00:00
Martin Kiewitz
b8e2e8e5dd
SCI: added uninitialized read for room 720 in lsl1
...
svn-id: r50222
2010-06-24 17:10:26 +00:00
Filippos Karapetis
6a811a8ae6
Added more information concerning the Dr. Brain uninitialized read
...
svn-id: r50219
2010-06-24 13:45:31 +00:00
Martin Kiewitz
4b2661c06a
SCI: removing warning for known uninitialized reads
...
svn-id: r50217
2010-06-24 13:38:24 +00:00
Martin Kiewitz
a268d3462b
SCI: change fix for island to make it work
...
svn-id: r50216
2010-06-24 13:30:20 +00:00
Martin Kiewitz
3fcb833148
SCI: fixed workaround table from r50214 to have a valid terminator, also added another fix for pharkas
...
svn-id: r50215
2010-06-24 13:20:21 +00:00
Martin Kiewitz
e45ffc68a3
SCI: created a workaround table for uninitialized reads, removing old commented out workarounds for pharkas and laura bow 2
...
svn-id: r50214
2010-06-24 13:17:45 +00:00
Martin Kiewitz
898c9165d9
SCI: added currently known object/methodnames in comments for uninitialized reads
...
svn-id: r50213
2010-06-24 12:32:41 +00:00
Martin Kiewitz
e5f22da051
SCI: added objectname and method name printed out when uninitialized temps are read
...
svn-id: r50212
2010-06-24 12:25:47 +00:00
Martin Kiewitz
f93ca1e424
SCI: implement detection for uninitialized temp variable reads and implement direct fixes for them, i couldnt figure out a valid replacement for island, pharkas and laurabow2 work that way. this should also get changed to a replacement table
...
svn-id: r50211
2010-06-24 11:54:33 +00:00
Filippos Karapetis
afffcec96e
Turned two hacks inside validate_property() into errors till we find out where and why they occur (they shouldn't occur).
...
Also turned an error inside send_selector() when argc > 1 into a warning - these are usually script bugs and aren't fatal
svn-id: r50208
2010-06-24 11:29:26 +00:00
Filippos Karapetis
bbb29e2650
Fixed script 140 in the Island of Dr. Brain by adding a workaround for it inside op_link
...
svn-id: r50203
2010-06-24 07:54:02 +00:00
Filippos Karapetis
3a394793b6
Fixed 2 crashes in QFG1VGA, when dying:
...
- Ignoring a non-game breaking script bug (modifying the "longSong" object with argc = 2)
- Don't pop the callk stack frame if the stack is empty - fixes a crash when restoring from the death screen
svn-id: r50157
2010-06-22 18:25:15 +00:00
Filippos Karapetis
97dd94019c
When loading or restarting, stop script processing if the game is being loaded or is restarting and the stack position has changed (it's always changed when loading) - fixes the case where the VM is trying to parse an invalid script
...
svn-id: r50121
2010-06-21 20:17:59 +00:00
Matthew Hoops
9ecbffe11a
Add a workaround for a MUMG script bug, MUMG now works again.
...
svn-id: r50117
2010-06-21 15:51:04 +00:00
Filippos Karapetis
874eeb2370
Added hints inside validate_arithmetic(), together with some code useful for debugging. Some cleanup
...
svn-id: r50020
2010-06-18 14:48:39 +00:00
Filippos Karapetis
db70d66e4a
Strict mode: Changed several warnings due to logic bugs into errors. If an error pops up from these ones, please add the game where it occurred and the steps to reproduce the error before turning it into a warning
...
svn-id: r49973
2010-06-17 23:50:28 +00:00
Max Horn
78cd1aa145
SCI: Remove hack related to compiled kernel signatures.
...
Also change some things to comply to our code formatting conventions.
svn-id: r49967
2010-06-17 23:13:54 +00:00
Filippos Karapetis
701d69d6e2
Don't show warnings for a known script bug in SQ4CD with the Sq4GlobalNarrator object
...
svn-id: r49950
2010-06-17 20:52:53 +00:00
Filippos Karapetis
01d53a6216
Disabled two cases of findObjectByName() in SCI0 early games
...
svn-id: r49639
2010-06-13 22:01:10 +00:00
Filippos Karapetis
711f679b7f
camelCase changes
...
svn-id: r49570
2010-06-10 11:43:20 +00:00