Commit graph

373 commits

Author SHA1 Message Date
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
Matthew Hoops
07abe3d603 SCI: Add detection for Hoyle4 Mac
svn-id: r53397
2010-10-13 03:28:59 +00:00
Martin Kiewitz
54865f4837 SCI: dont replace save/restore in hoyle2 too
svn-id: r52636
2010-09-08 12:45:42 +00:00
Martin Kiewitz
3e4e741387 SCI: don't replace save/restore in hoyle1
fixes hoyle1 not starting anymore

svn-id: r52635
2010-09-08 12:42:00 +00:00
Filippos Karapetis
cb0e54034d SCI: Now distinguishing between native MT-32 MIDI from GM devices when checking
for the existence of after market GM patches

svn-id: r52620
2010-09-07 15:09:59 +00:00
Filippos Karapetis
d87fa1c890 SCI: Show a warning window regarding GM in some games.
Sierra has released a patch adding after market General MIDI support for 8 SCI1
games (LSL1, LSL5, Hoyle 3, SQ1, SQ4, Eco1 floppy, Longbow and Fairy Tales). If
the user has selected the General MIDI music driver in one of these games and
no associated MIDI patch is found, show an informational dialog on game startup
in order to inform the user to download Sierra's MIDI patch, together with some
short instructions.

svn-id: r52500
2010-09-02 21:50:00 +00:00
Martin Kiewitz
64313cd7f1 SCI: set master volume correctly
and merge it together with global volume, fixes bug #3053104)

svn-id: r52484
2010-09-01 19:20:17 +00:00
Martin Kiewitz
81eb3cfba1 SCI: disable dialog replacement for jones
fixes odd crash right at the start, although you can't save/restore in jones o_O (fixes bug #3057080)

svn-id: r52479
2010-09-01 09:48:00 +00:00
Martin Kiewitz
4ecb2b6047 SCI: renaming fb01-enable to "native_fb01"
svn-id: r52471
2010-08-31 11:51:43 +00:00
Martin Kiewitz
aae0d9284e SCI: renaming config-variables
"sci_dither" got removed, "undither" renamed to "sci_undither". Also changed logic for handling "sci_originalsaveload"

svn-id: r52469
2010-08-31 11:38:07 +00:00
Johannes Schickel
737b9bc632 SCI: Remove duplicate comment line.
svn-id: r52468
2010-08-31 11:27:01 +00:00
Martin Kiewitz
839945795e SCI: enable new kDoBresen/InitBresen
enable replacement of save/load dialogs per default
add config-var "sci_originalsaveload" for not replacing dialogs
add config-var "sci_dither" for enabling dithering in EGA games
new kDoBresen fix qfg2 walk against wall bug (#3053131) and hoyle3 unreadable dice bug (#3036922)

svn-id: r52467
2010-08-31 10:53:27 +00:00
Martin Kiewitz
ff7476d9f1 SCI: adding virtual lists for qfg-import rooms
now lists import files of all possible games, adds game title before that, removes game prefixes for all files

svn-id: r52441
2010-08-29 15:13:25 +00:00
Filippos Karapetis
3f1f894e8e SCI: Added proper handling of QFG exported character files.
Now, QFG2, 3 and 4 may read exported characters from all
other QFG games, like the originals did. Fixes bug
#3054692 - "QFG2/QFG3 Import issues".

svn-id: r52430
2010-08-29 00:17:56 +00:00
Filippos Karapetis
fa04c9dd38 SCI: Fixed bug #3054613, "QFG character saves, naming convention"
svn-id: r52419
2010-08-27 23:21:08 +00:00
Martin Kiewitz
a55dbc831d SCI: making loading from ScummVM menu work correctly
using a trick for indirectly calling GameObject::init and then restoring, fixes text color/font code issues, also removing all the hackery

svn-id: r52379
2010-08-25 10:38:09 +00:00
Martin Kiewitz
01a8fc604b SCI: replacing save dialog as well
experimental feature - enable by putting "scireplacedialog=true" inside scummvm section of scummvm.ini

LSL6 currently loses the ability to quicksave, when using the feature. Although i don't see it as a huge loss. That way it's now possible to save to up to 100 slots instead of just 20.

svn-id: r52345
2010-08-24 15:11:53 +00:00
Filippos Karapetis
cd61674010 SCI: Check for the existence of script 180 before accessing it.
Fixes the Longbow demo

svn-id: r52344
2010-08-24 14:58:29 +00:00
Martin Kiewitz
5fbe5f049b SCI: more work on replacing save dialog
also removing some previous code, because it wont work that way

svn-id: r52342
2010-08-24 14:40:18 +00:00
Martin Kiewitz
af6492fa45 SCI: some work on replacing save dialog
svn-id: r52341
2010-08-24 13:50:55 +00:00
Martin Kiewitz
10a1806f32 SCI: fixing const cast warning
making clone happy :D

svn-id: r52339
2010-08-24 13:37:24 +00:00
Martin Kiewitz
b192de5423 SCI: changing signature of kRestoreGame
and changing patch code accordingly

svn-id: r52320
2010-08-24 09:11:53 +00:00