Commit Graph
7940 Commits
Author SHA1 Message Date
Filippos Karapetis 87a3fcaf03 SCI: Fixed a typo
svn-id: r55159
2011-01-08 10:25:12 +00:00
Filippos Karapetis fc83afc5f2 SCI2.1: Added/documented some functionality used by Shivers 1
- Added kFileIO subop 17 (create save slot)
- Added information about a (probably debug) kernel function used in a puzzle, kCelInfo
- Added some information on two kSave subops
- Added 2 workarounds for uninitialized variables

svn-id: r55158
2011-01-08 10:23:27 +00:00
Filippos Karapetis 2b87eebdb0 SCI: Moved the handling of the op_line debug opcode inside readPMachineInstruction()
The handling has been moved inside readPMachineInstruction(), instead of run_vm(), as a
lot of parts of the code depend on this function handling all opcodes correctly (e.g. the
script dissassembler, the features class, find_callk etc)

svn-id: r55154
2011-01-07 20:24:49 +00:00
Filippos Karapetis 59d00fca17 SCI: Removed leftover end markers from the opcode formats array
svn-id: r55153
2011-01-07 19:31:19 +00:00
Filippos Karapetis 6b250f8c9b SCI2/2.1: Improvements to the find_callk debug function, and some kernel function updates
- Improved the find_callk function to properly find the end of script objects, by
monitoring jump calls
- Added three extra special calls to find_callk: find kernel function calls to dummy,
unused and unmapped kernel functions
- Updated several kernel function calls because of the above functionality
- The above functionality has also uncovered a VM bug in some SCI2/2.1 opcode - added 
a FIXME for it

svn-id: r55151
2011-01-07 18:25:38 +00:00
Filippos Karapetis 576efc526b SCI: The SCI2.1 SVGA version of MUMG is named "Mixed-Up Mother Goose Deluxe"
svn-id: r55139
2011-01-07 00:19:54 +00:00
Filippos Karapetis 1796e7afdd SCI2.1: Kernel function changes (after looking through all of the SCI2.1 games)
- Replaced the stub kWinDLL (unused), as well as the not fully implemented kPrintDebug
functions with empty function calls
- Marked several unused or debug kernel functions as stub
- Added some games where the rest of the unimplemented SCI2.1 kernel functions are used

svn-id: r55138
2011-01-07 00:12:18 +00:00
Filippos Karapetis 49f965a547 SCI2.1: Added a sanity check for VMD video positioning, for the demo of Lighthouse
svn-id: r55137
2011-01-07 00:07:33 +00:00
Filippos Karapetis a6994413ea SCI2.1: Show the kernel table used in the "version" console command
Transitive SCI2.1 games (e.g. QFG4CD and PQ4CD, as well as GK2 demo) used a SCI2 table,
with some added functions. If a SCI2.1 game is loaded, show what kernel table it uses

svn-id: r55136
2011-01-07 00:05:14 +00:00
Filippos Karapetis 2d5dc8c638 SCI: Cleanup
svn-id: r55123
2011-01-04 23:19:04 +00:00
Filippos Karapetis f2234f8ee3 SCI: Fixed part of bug #3150767 - "KQ5 French crash on startup, only partial English text"
This is a regression from r54510

svn-id: r55122
2011-01-04 23:11:19 +00:00
Filippos Karapetis 34ae92033c SCI: Moved the "SCI" bit to the extras field, to preserve the original naming of the games
svn-id: r55119
2011-01-04 19:46:18 +00:00
Filippos Karapetis 9fe6540dd9 SCI: Corrected game description for LSL1 (thanks Raziel)
svn-id: r55118
2011-01-04 19:23:05 +00:00
Filippos Karapetis d050b811bb SCI: Slight cleanup to the garbage collector
svn-id: r55116
2011-01-04 12:29:23 +00:00
Filippos Karapetis 77a1915377 SCI: Some changes to the naming scheme of some games
- For remakes like KQ1, KQ4 and LSL1, the "SCI remake" bit has been moved to the game
description (as it's part of the description, not the extras)
- The "VGA" bit has been removed from the extras. Only the "EGA" bit remains for EGA
versions, to distinguish them from their VGA counterparts, when they exist

svn-id: r55115
2011-01-04 09:09:56 +00:00
Filippos Karapetis 32d7e687ee SCI: debugC calls no longer require a debug level of 2 to show output
svn-id: r55086
2011-01-01 12:48:12 +00:00
Filippos Karapetis d44a105e7f SCI: Disable continuous list checking by default
svn-id: r55085
2011-01-01 12:43:09 +00:00
Filippos Karapetis e48b07e3bd SCI: Added workaround for script bug #3148418 - "QFG2: Script Error On last screen"
svn-id: r55075
2010-12-31 11:32:19 +00:00
Filippos Karapetis 7bc1ff065b SCI: Fixed script bug #3038870 - "SCI Fanmade - Demo Quest: ScummVM hangs with typo" and
removed a related FIXME

svn-id: r55056
2010-12-28 21:05:30 +00:00
Filippos Karapetis 1528a3d904 SCI: A more efficient solution for bug #3037874 (SCI high CPU usage), which will hopefully
not clash with the speed throttler. This is a more proper fix for bug #3058865, and a
partial fix for bug #3127824

svn-id: r55046
2010-12-26 15:28:02 +00:00
Matthew Hoops 1bbe49dba9 SCI: Silence a gcc warning
svn-id: r55043
2010-12-26 14:56:51 +00:00
Filippos Karapetis bc9442d6d8 SCI: Fixed bug #3059860 - "LB2CD: Glitch in Act 6 coroner answer buttons"
svn-id: r55034
2010-12-24 15:53:06 +00:00
Filippos Karapetis 5e5410f891 SCI: Only sync the synonyms vocabulary if the game actually has one (thanks wjp)
svn-id: r55033
2010-12-24 14:56:04 +00:00
Filippos Karapetis 9af30a2546 SCI: Now saving/loading the list of synonyms (set by kSetSynonyms), like SSCI did
This is a more correct way of fixing bug #3037618 than in rev #55017.
- Changed replaceant/replacement to be uint16's (they're very small positive
values, usually smaller than 4096)
- Changed SynonymList to an Array (so that it can be saved/loaded)
- Removed the PQ2 script patch to Game::replay()
- Added savegame history

svn-id: r55032
2010-12-24 14:47:47 +00:00
Lars Skovlund a03a3fd411 Fix code formatting
svn-id: r55026
2010-12-23 14:05:16 +00:00
Lars Skovlund 5b2071487f SCI: Unbreak script loading on big-endian machines. Thanks to [md5] and wjp.
svn-id: r55025
2010-12-23 14:03:58 +00:00
Filippos Karapetis 401a8c355d SCI: Some initial work on the sound of robot videos (doesn't work yet, seems to be a problem with the encoding of the customized SOL audio files in robot videos)
svn-id: r55023
2010-12-23 13:11:10 +00:00
Filippos Karapetis f891323f1f SCI: Fixed typo
svn-id: r55022
2010-12-23 12:54:47 +00:00
Filippos Karapetis 8e26ae0f92 SCI: Fixed bug #3037618 - "PQ2 : Restoring in Scuba Van causes Parser Issues"
svn-id: r55017
2010-12-22 22:18:21 +00:00
Filippos Karapetis 1d98bf484e SCI: Also reset flags when resetting the video state
svn-id: r55007
2010-12-22 14:19:38 +00:00
Filippos Karapetis f922c29002 SCI: Limit the speech/subtitle settings sync to SCI1.1 CD games only. Earlier
versions (like SCI1, e.g. KQ5CD and Jones CD) didn't have such settings

svn-id: r55006
2010-12-22 14:04:39 +00:00
Filippos Karapetis a5db890260 SCI: Sync in-game speech/subtitle options with the ones from the ScummVM GUI.
- Obtain speech/subtitle options from the ScummVM GUI and set them in CD games.
- Also, set simultaneous speech and subtitles in games that support them
(currently SQ4 CD and Freddy Pharkas CD). There is no GUI option for setting
simultaneous speech and subtitles in Freddy Pharkas CD, so this is the only
current way of achieving this (unless the text speed slider inside the Freddy
Pharkas options window is repurposed - but that will require extensive changes)

svn-id: r55005
2010-12-22 13:58:28 +00:00
Filippos Karapetis 166f3f2dfd SCI2+: Set pictureCels to 0 after deleting them
svn-id: r55004
2010-12-22 13:52:25 +00:00
Filippos Karapetis 430dc10c49 SCI: VMD video related changes
- VMD videos are now properly started from the associated play subop of the 
kPlayVMD kernel call, and are now properly positioned on screen, and doubled
only if the games require them to be
- Added an enum for VMD video flags

svn-id: r55003
2010-12-22 13:51:35 +00:00
Filippos Karapetis 5a3ed29a4b SCI: Changed the check for NULL values inside kArray(Cpy) to only ignore such values in SCI3
svn-id: r55002
2010-12-22 13:17:19 +00:00
Filippos Karapetis 42dc70bb83 - SCI: Added code to free the _baseVars value in SCI3 as well. Both free() operations
have been commented out for now, as MSVC complains about heap corruption in SCI3 games
- Code formatting fixes

svn-id: r54991
2010-12-21 21:18:25 +00:00
Filippos Karapetis 7680ed0be7 Added back the null check in kArray(cpy): it happens in SCI3
svn-id: r54990
2010-12-21 20:54:33 +00:00
Lars Skovlund 7b0760f1bc Make Object::_baseMethod a Common::Array. This is intended to clean up
the Object class, and it also plugs a leak.

svn-id: r54986
2010-12-21 15:36:27 +00:00
Lars Skovlund f1cd95e462 Simplify SCI3 relocation code, also making it correct.
svn-id: r54985
2010-12-21 15:34:02 +00:00
Filippos Karapetis 3a14a7760e SCI: Fixed bug #3092115 - "ECOQUEST2: Initial text not cleared during ecorder intro"
svn-id: r54984
2010-12-21 15:31:59 +00:00
Filippos Karapetis 75649f8903 SCI: Reset the portrait bitmap to the "closed mouth" state, when skipping dialogs
in the Windows version of KQ6

svn-id: r54983
2010-12-21 07:53:34 +00:00
Filippos Karapetis 26dfb6affa SCI: Fixed bug #3041153 - "SCI Fanmade Games: Message window glitch"
The left window dimension adjustment (rev #48772) has been moved from
GfxPorts::setOrigin() into GfxPorts::addWindow(), as the updated dimension is
later used when filling the contents of the window (apparent in some fan made
games)

svn-id: r54976
2010-12-20 15:30:31 +00:00
Filippos Karapetis 4b836d611f SCI: Fixed bug #3037945 - "PQ3 : Graphical Glitch with White Mercedes on Freeway"
svn-id: r54975
2010-12-20 12:21:18 +00:00
Filippos Karapetis d3340b0d0c SCI: Commented out unused signal flags
svn-id: r54974
2010-12-20 12:19:28 +00:00
Filippos Karapetis 91bee3e7b0 SCI: Added another English version of QFG3 (bug #3125559)
svn-id: r54962
2010-12-19 15:48:51 +00:00
Matthew Hoops 1ead0d8436 VIDEO: Make VideoDecoder::getPalette() return a const byte pointer
svn-id: r54928
2010-12-16 01:41:11 +00:00
Matthew Hoops 375f32fbe9 VIDEO: Make VideoDecoder::decodeNextFrame() return a const Surface pointer
svn-id: r54927
2010-12-16 01:35:13 +00:00
Filippos Karapetis aa15235858 SCI: Slight cleanup
svn-id: r54925
2010-12-15 23:35:21 +00:00
David Turner 58b7295193 SCI: Fixed View Cel RLE Decoding when RLE Code 0x40 is used (Corrects Bug #3135872 "LSL1VGA: "Pause Game" problem")
In the copy case, the runLength can be up to 127, not 64 i.e. the LSB of the RLE code forms part of the runLength.

svn-id: r54924
2010-12-15 22:36:55 +00:00
David Turner f2205a5a01 SCI: Close Memory Leaks in SCI Resource Loading, reported by Valgrind.
svn-id: r54916
2010-12-14 23:30:22 +00:00