Commit Graph
394 Commits
Author SHA1 Message Date
Willem Jan Palenstijn 0192d2f2de SCI: Fix restarting SCI engine with different SCI version 2011-11-29 18:34:34 +01:00
Filippos Karapetis 9caacac724 SCI: More work on kEditText 2011-10-30 21:42:33 +02:00
Filippos Karapetis 4f69967773 SCI: Added a new debug flag, "DebugMode" for SCI32 games
This is used to enable the embedded debugger in several SCI32 games
(PQ4, QFG4, GK1, GK2, KQ7, SQ6 and LSL7)
2011-10-29 18:32:52 +03:00
Filippos Karapetis 4ac2940bc5 SCI: Added skeleton code for kEditText (still not working) 2011-10-28 22:20:33 +03:00
Filippos Karapetis ac559b0212 SCI: Renamed GfxControls to GfxControls16 2011-10-26 01:54:27 +03:00
Filippos Karapetis 935eaa175b SCI: Move the palette merging checking code inside the GfxPalette class 2011-10-19 23:52:51 +03:00
Filippos Karapetis 41cc1932d2 SCI32: Added an initial skeleton structure for the SCI2 text drawing code
This includes kCreateTextBitmap, and moves all of the text drawing code
into the new GfxText32 class
2011-09-03 14:51:51 +03:00
Filippos Karapetis 7432cc4dd9 SCI: Fixed bug #3325512: "EcoQuest 1: Audio settings are not saved" 2011-06-25 12:43:32 +03:00
Max Horn 88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Lars Skovlund cb990e68a1 SCI: Fix access to variables (gc_interval etc.) from the console 2011-05-27 17:34:43 +02:00
Max Horn 4cbe4ede66 COMMON: Registers RandomSources in constructor with the event recorder
This also removes the dependency of engines on the event recorder header
and API, and will make it easier to RandomSources that are not properly
registered.
2011-05-17 12:17:26 +02:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Max Horn 76cf7bc907 SCI: Slight cleanup to undithering code 2011-05-09 14:41:49 +02:00
md5 4133945850 SCI: Renamed restAdjust to r_rest (like r_acc and r_prev) 2011-03-28 02:23:58 +03:00
md5 3ee4830b2e SCI: Don't patch the save/load dialogs in Shivers
Shivers uses a custom save/load system, so we can't replace its dialogs
2011-03-09 23:45:42 +02:00
Walter van Niftrik f96e93047a SCI: Use BE string handling for Mac games. 2011-03-04 21:12:00 +01:00
md5 bc992d77de SCI: Enable fade transitions for SCI1 EGA games 2011-03-04 22:04:11 +02:00
md5 08af1d9d3f SCI: Don't patch save/restore dialogs in Phantasmagoria
That game has its own custom made save/load system
2011-03-04 01:42:53 +02:00
md5 1bdc6db980 SCI21: Now replacing save/restore dialogs in SCI2.1 and newer games 2011-03-04 00:25:23 +02:00
md5 1aed9a1f34 SCI: Applied save/load dialog patching to all SCI0-SCI2.1 early games
Games that have the newer SCI2.1 kernel functions (i.e. kSave instead of
kSaveGame/kRestoreGame) aren't supported yet
2011-03-03 19:31:47 +02:00
md5 4d33923436 SCI: Cleanup of the save/load dialog patching code and the lofs type detection code 2011-02-28 00:15:47 +02:00
md5 72f65b3946 SCI: Renamed SCI_VERSION_1_EGA to SCI_VERSION_1_EGA_ONLY
This renaming allows us to better distinguish that this version is for games
that only had an EGA version, and avoid confusion with newer SCI1 game releases
with EGA graphics (e.g. KQ5 EGA). The only game with this SCI version is QFG2,
a SCI1 EGA game with a parser. Also, added some games for each SCI version.
2011-02-27 16:48:53 +02:00
md5 ff597ec048 SCI: Added support for patching save/load dialogs in SCI2 games 2011-02-22 01:51:50 +02:00
Matthew Hoops 266806d892 SCI: Fix Mac icon bar palettes
The Mac icon bar uses a palette from the executable and keeps those entries in the palette constantly.

In addition, we're now performing gamma correction on the Mac-based colors so that they are in the same gamma as SCI. The color matching now works with this and using the same color finding as the Mac Palette Manager.
2011-02-17 13:38:23 -05:00
Matthew Hoops 85f8dc5dee SCI: Add detection for Freddy Pharkas Mac
svn-id: r55828
2011-02-08 15:03:23 +00:00
Filippos Karapetis 6f9ac84f77 SCI: Converted the robot decoder into a regular video decoder, and decoupled it from the
SciEngine class

- Robot videos are now shown in frameOut(), like they should, and kRobot(sync) is only
used for syncing with the game scripts
- Hooked video playing into the "play_video" console command

svn-id: r55801
2011-02-07 12:24:09 +00:00
Matthew Hoops 0bf787736c SCI: Fix Mac SCI32 subdirectories
svn-id: r55783
2011-02-05 08:27:33 +00:00
Matthew Hoops 4c0af01d6a SCI: Disable the special QFG1 Mac icon bar
The original interpreter completely ignores it in favor of the regular one.

svn-id: r55748
2011-02-03 02:26:57 +00:00
Filippos Karapetis a6e9fe69c3 SCI: Set the printLang and parseLang selectors again when restarting, if necessary.
This sets the language again correctly to the language selected in the launcher when
restarting multilingual games.

svn-id: r55561
2011-01-27 10:49:11 +00:00
Filippos Karapetis 89087b18c7 SCI21: Allow the game scripts to sync robot videos, like in SSCI. Also, references of the SciEngine class to itself via g_sci have been removed
svn-id: r55422
2011-01-22 13:01:10 +00:00
Filippos Karapetis f891323f1f SCI: Fixed typo
svn-id: r55022
2010-12-23 12:54:47 +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 c76422412d SCI: Compensate for buggy KQ5CD saved games (before r54510)
svn-id: r54513
2010-11-27 18:46:12 +00:00
Filippos Karapetis d3b14e1445 SCI: Implemented FR #3101338: "King's Quest 6 Windows Mouse Icons"
Added an option to use the original Windows cursors in the Windows version of KQ6
Also, added an update on how the Mac cursors are handled (perhaps the handling is
the same)

svn-id: r54495
2010-11-26 12:37:24 +00:00
Filippos Karapetis 394daa5704 SCI: Added engine method isCD()
svn-id: r54475
2010-11-25 14:19:02 +00:00
Filippos Karapetis 3b07056a47 SCI: Moved the Object class in a separate file
svn-id: r54361
2010-11-19 08:18:24 +00:00
Filippos Karapetis c003032b4c SCI: Allow SCI3 game scripts to run
SCI3 scripts do start up now, however they stop quite early, as there is still
missing functionality which prevents them from running fully. This will be useful
for debugging, though

svn-id: r54292
2010-11-17 14:08:13 +00:00
Filippos Karapetis ebee22a934 SCI: Added the "DUK" video folder to the Search manager
The DUK folder contains all of the recently supported Duck videos in
Phantasmagoria 2. play_video works now with the videos of Phantasmagoria
2 :)

svn-id: r54208
2010-11-11 18:42:22 +00:00
Filippos Karapetis 7dec2bd6a8 SCI: Some SCI3 changes
- Extended the SCI2.1 kernel function signatures for SCI3, as they share 
the same kernel table
- All the engine parts are now initialized in SCI3 games, apart from the VM

svn-id: r54178
2010-11-10 01:08:17 +00:00
Filippos Karapetis 1a85ce8e03 SCI: Some slight work on SCI3
- Enabled the SCI3 game entries for testing purposes
- The resource manager is initialized fully now (with a slight hack)
- Added a hack for the demo of Shivers 2 (which seemingly has no
scripts or vocabularies)
- The engine will stop before parsing any game scripts in SCI3 games,
and opens the console for resource manager-related functionality

svn-id: r54167
2010-11-09 19:37:42 +00:00
Filippos Karapetis 2416cbf75b COMMON/GUI/SCI: Changes to the EGA dithering checkbox
- Changed the new dithering checkbox to be more generic (i.e. relevant for all engines that may support such a feature in the future)
- Changed the checkbox to be unchecked by default. As discussed on -devel, game enhancements in ScummVM should be off by default, and opt-in
- Changed the option from "sci_undither" to "disable_dithering"
- Changed theme version style to X.Y.Z and bumped it to 0.8.2

svn-id: r54090
2010-11-05 10:53:37 +00:00
Filippos Karapetis 5bab2d570b SCI: Set undither to on by default again, like it was.
From our current stance, this is a game enhancement, and should be on by default, like the rest of the game enhancements (AGI mouse, save/load replacement etc)

svn-id: r54070
2010-11-04 19:19:07 +00:00
Filippos Karapetis 1dac4fbd55 SCI/SCUMMVM: Added an option to enable the dithering removal algorithm (so called "undithering") in the graphics options tab. The algorithm is now disabled by default, after popular demand. In retrospect, we really shouldn't have made it default, in order to preserve the authenticity of the graphics in early SCI EGA games, and allow the user to opt in and enable the option if needed. Unfortunately, the lack of an easy way to modify the option made it hard to do so.
svn-id: r54066
2010-11-04 15:58:53 +00:00
Max Horn e27b05ef35 COMMON: Rename String::printf() to String::format()
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.

The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.

svn-id: r54004
2010-11-01 16:02:28 +00:00
Filippos Karapetis dca3c8d8bf SCI: Play time related changes
- Added support for savegame play time
- Removed obsolete variables for calculating the play time (EngineState::gameStartTime and Console::_enterTime)
- Renamed some variables to camelCase

svn-id: r53974
2010-10-31 01:45:24 +00:00
Filippos Karapetis ef7cc2d506 SCI: Fixed detection of fan made script patches for LSL1
svn-id: r53940
2010-10-30 11:07:44 +00:00
Johannes Schickel 6aec3882a4 SCI: Remove unused variable + some formatting fixes.
svn-id: r53921
2010-10-29 16:28:22 +00:00
Filippos Karapetis 5cfb461b5b SCI: Added detection of some fan made script patches.
When such a script patch is found, a dialog pops up at the beginning
of the game, asking the user to remove it. The issues that these
script patches fix have already been fixed in ScummVM, thus these
patches aren't necessary, plus they can lead to crashes, freezes, buggy
behavior and/or unexpected errors, thus it is better if they aren't
used at all, if possible

svn-id: r53920
2010-10-29 10:58:54 +00:00
Filippos Karapetis e85f43877a SCI: Proper pausing/resuming of MIDI music in SciEngine::pauseEngineIntern(), Console::preEnter() and Console::postEnter() and added a sanity check in SciEngine::getDebugger()
svn-id: r53886
2010-10-27 19:22:37 +00:00