Commit Graph

16483 Commits

Author SHA1 Message Date
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
Filippos Karapetis
4785e1fd3f Renamed some variables
svn-id: r50284
2010-06-25 19:09:19 +00:00
Florian Kagerer
6561b93f1e KYRA: fixed typo
svn-id: r50283
2010-06-25 19:06:10 +00:00
Florian Kagerer
e34d7342f5 KYRA: implement new gui option flags
svn-id: r50282
2010-06-25 18:57:50 +00:00
Florian Kagerer
3962f8ba59 AUDIO: some fixes in the audio device code (no sound option, new GUIO flags)
svn-id: r50281
2010-06-25 18:47:52 +00:00
Matthew Hoops
be8a596668 Add support for the third inventory case in Riven: you have the two journals but not the trap book (happens at the end of the game).
svn-id: r50280
2010-06-25 18:20:31 +00:00
Filippos Karapetis
784f52a677 Removed the getHunkPointer error - it's valid SCI behavior (e.g. when 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-25 17:59:49 +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
Martin Kiewitz
b188fc14a2 SCI: only send new volume to currently mapped channels, fixes assert in sq1 because setVolume is called on an object that's currently not playing. added fixme
svn-id: r50274
2010-06-25 16:43:09 +00:00
Max Horn
6ee82a2027 SCI: Introduce SciGameId enum
svn-id: r50273
2010-06-25 16:16:29 +00:00
Max Horn
23d384e6b8 SCI: Remove SciEngine::getFlags()
svn-id: r50272
2010-06-25 16:12:38 +00:00
Max Horn
1e9977a725 SCI: Restrict some 'error' exceptions to the places they occur; cleanup
svn-id: r50271
2010-06-25 16:11:00 +00:00
Max Horn
7d4d58bab4 SCUMM: Set some more detection file sizes
svn-id: r50270
2010-06-25 16:08:34 +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
Filippos Karapetis
159958fbe2 Some more info on kText(), removed dead code
svn-id: r50267
2010-06-25 15:06:00 +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
df37aff357 Added the SCI2.1 kText kernel function (subop 0, kTextSize for now)
svn-id: r50265
2010-06-25 14:50:10 +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
c6b0a5e896 SCI: detect, if SCI1.1 game is merging or copying palette instead of using gameIds. Also prints method used, when using debug command "version"
svn-id: r50261
2010-06-25 10:04:31 +00:00
Filippos Karapetis
550209d1e6 Removed the game ID check for embedded priority in icon controls, and replaced it with a check for priority existence
svn-id: r50260
2010-06-25 09:57:37 +00:00
Johannes Schickel
1e29dc3641 Fixed use of uninitialized variable.
svn-id: r50250
2010-06-24 22:55:44 +00:00
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