Commit Graph

38782 Commits

Author SHA1 Message Date
Martin Kiewitz
aa3bfe5489 SCI: doing the exact opposite of r50236 code-wise now, as it was meant to be
svn-id: r50237
2010-06-24 21:46:57 +00:00
Martin Kiewitz
f014c9ed7e SCI: ignore segment 0xFFFF in segmanager getchar, when offset > 1 - so we dont write a warning, if the scripts use some uninitialized temp variable as terminator
svn-id: r50236
2010-06-24 21:42:08 +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
Willem Jan Palenstijn
a03afd1898 SCI: Make kStrAt clear segment when writing characters
This is necessary since the uninitialized value detection from r50211,
and is analogous to seg_manager.cpp's setChar.
(Triggered in LSL3 age verification.)

svn-id: r50234
2010-06-24 21:09:38 +00:00
Martin Kiewitz
35b5da7e0f SCI: reverting r50232, didnt make sense. thx @ wjp for noticing
svn-id: r50233
2010-06-24 20:52:35 +00:00
Martin Kiewitz
893429d092 SCI: correctly put NUL inside SegManager::strncpy() even when using n = 0xFFFFFFFFU
svn-id: r50232
2010-06-24 20:40:57 +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
Martin Kiewitz
00e88f15e3 SCI: arg5 is map for graph(updateBox), added comment
svn-id: r50221
2010-06-24 17:02:55 +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
Filippos Karapetis
59c908e97d Changed a warning which seems like regular SCI behavior into a debugC
svn-id: r50218
2010-06-24 13:44:27 +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
Martin Kiewitz
0722d96a3e SCI: fix kTextSize to not crash when destination has an invalid rect in it
svn-id: r50210
2010-06-24 11:52:08 +00:00
Arnaud Boutonné
9a3ef9b8e1 Initialize properly paramCount in gob1. This fixes several valgrind errors, and the unknown opcodes are now skipped as expected. (related to bug #3018918, only partially solved)
svn-id: r50209
2010-06-24 11:50:25 +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
0fb5429318 Initialize the stack with 'S' or 's' characters, like SSCI does (ultimately, we should not change the stack again like we do in op_link - this is what Sierra is doing). Some cleanup
svn-id: r50207
2010-06-24 09:52:08 +00:00
Paul Gilbert
aa0c86e755 Bugfix for correctly decoding 2-bit encoded depth surfaces
svn-id: r50206
2010-06-24 08:17:46 +00:00
Paul Gilbert
cd8bec1ae2 Corrected rendering of sprites into a scene background
svn-id: r50205
2010-06-24 08:16:40 +00:00
Paul Gilbert
70e9df9566 Corrected incorrect variable name change
svn-id: r50204
2010-06-24 08:15:31 +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
f65c4f9886 Changed an error in LocalVariables::dereference() back to a warning, as it occurs in 2 places during the intro of LB2 (called from kMemory(peek))
svn-id: r50202
2010-06-24 07:32:34 +00:00
Matthew Hoops
7c9cbf75c0 Implement the rest of xvalvecontrol for the boiler puzzle in Riven, initialize a variable for the boiler platform switch.
svn-id: r50200
2010-06-24 05:31:07 +00:00
Matthew Hoops
3838197ac1 Silence gcc warnings.
svn-id: r50197
2010-06-24 01:29:46 +00:00
Martin Kiewitz
51ba34df0e SCI: we extended the showBits() rect all the way depending on where the object moved, fixed - fixes kq6cd flickering coin and pq1 flickering locker issue
svn-id: r50190
2010-06-23 20:13:33 +00:00
Filippos Karapetis
6d1f2d1d26 Fixed memory fragmentation warnings in Crazy Nick's games
svn-id: r50188
2010-06-23 17:30:18 +00:00
Martin Kiewitz
72ee20bc4d SCI: cnick-laurabow & cnick-kq are called with -Nw 0 0...
svn-id: r50187
2010-06-23 17:05:54 +00:00
Martin Kiewitz
e7634ee147 SCI: it seems that all cnick games are using the inbetween interpreter
svn-id: r50186
2010-06-23 16:58:42 +00:00
Martin Kiewitz
e39f2ae1c1 SCI: adding cnick-longbow to inbetween sci1.1 in GfxPalette
svn-id: r50185
2010-06-23 16:53:56 +00:00
Martin Kiewitz
496905dcc3 SCI: dont write palette in reorderView() if there is no palette :P
svn-id: r50184
2010-06-23 16:49:03 +00:00
Filippos Karapetis
0a102981f0 Moved the SelectorCache struct inside selector.h, where it belongs, and fixed some header dependencies in the process
svn-id: r50183
2010-06-23 15:23:37 +00:00
Filippos Karapetis
db6c7a3dee Removed a hack with SCI1.1 static selectors, and set them properly. This fixes scaling in the demo of QFG3
svn-id: r50182
2010-06-23 15:08:23 +00:00
Martin Kiewitz
c1d3fd670c SCI: global scaling implemented (hopefully, i'm not sure if it works 100% :P) thx to waltervn for telling me the vocab 994 stuff used for disassembly
svn-id: r50181
2010-06-23 14:06:31 +00:00
Martin Kiewitz
eeba2812c1 SCI: adding some more global scaling code, adding vanishingY and vanishingX as selectors
svn-id: r50180
2010-06-23 13:42:09 +00:00
Martin Kiewitz
3bc011357b SCI: some initial work on global scaling
svn-id: r50179
2010-06-23 12:58:14 +00:00
Martin Kiewitz
f0145e6dcd SCI: implementing boundary checking for GfxPalette::createFromData(), sq5 has a broken picture 0 resource, which would result in either crash or at least bad read from memory depending on whats read there
svn-id: r50178
2010-06-23 11:47:14 +00:00
Filippos Karapetis
3cdd841192 Made a warning more verbose
svn-id: r50177
2010-06-23 11:32:36 +00:00
Paul Gilbert
fedc060605 Corrected newly added palette conversion warning
svn-id: r50176
2010-06-23 11:28:53 +00:00
Filippos Karapetis
3569b49662 Changed some asserts to warnings
svn-id: r50175
2010-06-23 11:22:44 +00:00
Paul Gilbert
717005bf25 Rewrote the MADS animation frame decoder to better guard against invalid data causing memory overruns
svn-id: r50174
2010-06-23 10:11:01 +00:00