Commit Graph

290 Commits

Author SHA1 Message Date
Colin Snover
d935ea80c3 SCI32: Correct RAMA detection table entries
There seems to be no difference between DOS and Windows versions
of the game from what I could see in the game code (it checks
platform but only seems to just set a global which is never used),
and from what I could tell online they are all DOS/Windows hybrids,
so just simplify life and make them all DOS platform versions.
2017-09-24 22:56:58 -05:00
Colin Snover
d36d01b82c SCI32: Add Lighthouse Glider demo to detection table 2017-09-19 19:54:29 -05:00
Colin Snover
d9ad1a3ce5 SCI32: Promote Lighthouse demos to ADGF_TESTING 2017-09-19 19:54:29 -05:00
Colin Snover
2ee7354852 SCI32: Blacklist pirated GOG.com + German GK2
Fixes Trac#9744.
2017-09-15 15:06:46 -05:00
Colin Snover
88420970b7 SCI32: Fix PQ:SWAT platform 2017-09-14 00:30:57 -05:00
Colin Snover
421a2defcb SCI32: Drop platform from game ID for games that are Windows-only 2017-09-14 00:30:57 -05:00
Colin Snover
3eb12dcfeb SCI32: Remove ADGF_CD from games that have no non-CD version
@sev- had asked why these flags were added a while ago (I had been
instructed this was the right thing to do when I asked in the past)
and ever since then it has been bugging me more and more that they
are there, since they serve zero purpose except to make the game ID
longer. In the past, it may have been the case that the SCI16 &
SCI32 code mixing meant that SCI32 games needed the CD flag for
things like managing subtitles, but at this point the only use of
the CD flag within the SCI32 engine is for the few games that
actually have different CD and non-CD versions. So these flags are
gone now.
2017-09-14 00:30:57 -05:00
Colin Snover
f11b0a4ff5 SCI32: Toggle Phant2 content censoring from game options
To enable the optional content censoring mode, Phant2 looks
for a RESDUK.PAT file, which is normally placed by the game's
installer if the user chose to enable censorship. If the file
exists, the game reads an unlock password out of the file and
asks the user to enter the password when starting a new game to
create an uncensored game, or to click a "less intense" button
to start the game with censoring. The censorship state of the
game is then persisted in the save game file, and installations
with the RESDUK.PAT file need to enter the password again in
order to restore any of the uncensored saves.

Since we do not have an installer that can enable this feature,
add a game option toggle to enable/disable censoring (for the
releases that have the optional censorship mode) instead so the
censored content feature is available for anyone that wants to use
it. This flag is restored from ScummVM whenever a save game is
loaded, so it can be toggled on or off at any point without
needing a separate save game, unlike in the original interpreter.
2017-09-08 16:03:24 -05:00
Colin Snover
6571111efc SCI32: Detect KQ7 2.00b using platform-specific files
The GOG.com release is missing the AVIs used for the intro &
ending animations in Windows. I'm unaware of any substantive
differences between the DOS and Windows versions otherwise, so
just not allowing Windows to be selected as a platform when the
video files are missing seems like it should be fine. (Same thing
in the opposite direction for a case where the DOS Robot files
are missing, though I don't know of a specific case where that is
a thing with KQ7 2.00b.)
2017-09-08 16:02:32 -05:00
Colin Snover
439a026844 SCI32: Fix Lighthouse GUIOs 2017-09-03 20:58:08 -05:00
Colin Snover
08a717530d SCI32: Correct LSL7 demo GUIOs 2017-09-03 20:58:08 -05:00
Colin Snover
ed0d0413b0 SCI32: Allow changing SFX/speech volume in GK2
Originally, changing the SFX volume from ScummVM was disabled
because the game itself only allowed adjustment of music volume,
so adjusting the SFX volume would indirectly affect the music
volume. On reflection, allowing the adjustment of SFX volume even
though this also changes the music volume seems preferable to not
allowing any adjustment of the SFX/speech volumes.
2017-08-26 18:09:47 -05:00
Colin Snover
1cb265f8da SCI32: Add ADGF_CD flag to Phant2 detection entries 2017-07-30 21:22:55 -05:00
Colin Snover
8043715e28 SCI32: Promote Phant2 to ADGF_TESTING 2017-07-30 21:04:51 -05:00
Colin Snover
d2b26b2c21 SCI32: Update Phant2 GUIOs to reflect game features 2017-07-30 19:10:50 -05:00
Colin Snover
ad8be1e506 SCI32: Promote MGDX to ADGF_TESTING 2017-07-24 19:36:39 -05:00
Colin Snover
5ab010e15f SCI32: Fix MGDX platform in detection tables 2017-07-24 19:36:37 -05:00
Colin Snover
9d62caa684 SCI32: Promote LSL7 to ADGF_TESTING 2017-07-17 23:56:22 -05:00
Colin Snover
09ef11a8cb SCI32: Remove ENABLE_SCI3_GAMES ifdef, now that they are supported 2017-07-17 22:42:18 -05:00
Colin Snover
6edb991bf9 SCI32: Add detection entry for Phantasmagoria FR 1.100.000
Fixes Trac#9910.
2017-07-13 23:24:37 -05:00
Tarek Soliman
b0ecbc945f SCI: Fix detected name for lsl6-cd 2017-07-09 20:13:16 -05:00
Colin Snover
3f0e061eaa SCI32: Refactor DuckPlayer to use common video playback code
This lets DuckPlayer support configurable black-lined video and
configurable high-quality scaling.
2017-07-06 19:12:39 -05:00
Colin Snover
f15f9e3b7c SCI32: Refactor Video32 code to reduce code & feature duplication 2017-07-06 19:12:39 -05:00
Colin Snover
71256a0d3c SCI32: Improve playback quality of SEQ videos 2017-07-06 19:12:39 -05:00
Colin Snover
7057f232d7 SCI32: Improve kPlayVMD rendering
1. Added a new game option for linear interpolation when scaling
   overlay-mode video in ScummVM builds with USE_RGB_COLOR;
2. Implemented SCI2.1-variant of the VMD player renderer (fixes
   Trac#9857), which bypasses the engine's normal rendering
   pipeline;
3. Improved accuracy of the SCI3-variant of the VMD player by
   writing HunkPalettes into the VMD's CelObjMem instead of
   submitting palettes directly to GfxPalette32.
2017-07-06 19:12:38 -05:00
Colin Snover
8cb35442c0 SCI32: Improve kShowMovieWin (AVI) rendering
1. Added a new game option for linear interpolation when scaling
   video in ScummVM builds with USE_RGB_COLOR;
2. 8bpp videos that put black in a palette index other than 0
   (KQ7) should now always render correctly without the earlier
   game-specific workarounds which did not work very well;
3. Data from game scripts regarding video size and position are
   now ignored, since games always just try to show videos in the
   middle of the screen, but frequently get this a little bit
   wrong, causing either bad aspect ratios or off-center videos;
4. Builds without USE_RGB_COLOR support will not crash when
   attempting to play >8bpp AVIs, like those from KQ7 2.00b.

Fixes Trac#9843, Trac#9762.
2017-07-06 19:12:38 -05:00
Colin Snover
02a7f331b1 SCI32: Remove Windows platform from GK1 German
This entry was added by a batch change operation in
f7a72c897a, but the German version
of GK1 does not support Windows.
2017-06-18 21:42:59 -05:00
Bastien Bouclet
1e64ef48e0 SCI32: Add detection for PQ4, French CD version 2017-06-13 06:06:39 +02:00
Colin Snover
d6ff67e3c4 SCI32: Fix detection and loading of localized resources in Torin
Italian still needs to be fixed, but nobody seems to have access
to this version at the moment.

Fixes Trac#9772.
2017-06-10 20:32:22 -05:00
Colin Snover
8e933b79ec SCI32: Add Spanish Windows KQ7 to detection table
(The DOS version was already listed.)
2017-05-06 20:58:06 -05:00
Martin Kiewitz
c057f00eab SCI32: Fix comment about Phantasmagoria 2 changes between EN+DE/FR 2017-05-04 22:17:03 +02:00
Colin Snover
db17478d1a SCI32: Add Italian KQ7 detection entry
Fixes Trac#9739.
2017-05-03 16:05:50 -05:00
Martin Kiewitz
73b6f4dc40 SCI32: Fix Japanese Phantasmagoria 2 detection entry 2017-05-03 22:40:15 +02:00
Martin Kiewitz
afa2c7bd2b SCI32: Add Japanese Phantasmagoria 2 detection data
Also add a bit of info to the German detection entry of
Phantasmagoria 2. Also add URL to censorship information on our wiki.
2017-05-03 21:45:04 +02:00
Bastien Bouclet
e25d472aa9 SCI32: Add detecton for KQ7 1.65c French 2017-05-03 18:53:55 +02:00
Colin Snover
ffdfa317f1 SCI32: Add detection entry for French Shivers
Fixes Trac#9742.
2017-05-02 20:35:07 -05:00
Colin Snover
b208c82494 SCI32: Add support for Shivers interactive demo
Closes Trac#9745.
2017-05-01 12:31:21 -05:00
Colin Snover
6da5a175cb SCI32: Add detection for KQ7 German 1.65c
Closes Trac#9738.
2017-05-01 12:30:57 -05:00
Martin Kiewitz
0560a1d041 SCI32: add detection for GK2 German 2017-04-30 18:46:44 +02:00
Colin Snover
75c6b1fd3b SCI32: Promote GK2 and Torin demos to AGDF_TESTING 2017-04-29 14:30:09 -05:00
Colin Snover
9527139deb SCI32: Enable support for SCI2-2.1 games in release!
Some games are not moved to ADGF_TESTING yet because they have
not been played through completely:

* QFG4
* PQ:SWAT

Some games are not moved to ADGF_TESTING yet because they are
broken:

* Chest (fails to read/parse its custom archive files)
* Hoyle5 (Poker DLL needs to be reverse-engineered; main menu
  needs to be "fixed" for budget derivatives that only contain
  some of the games and used Windows shortcuts to bypass the menu)
* MGDX (missing MIDI playback)
2017-04-22 15:42:16 -05:00
Colin Snover
6f75bed90c SCI32: Remove original save/load option from games without ScummVM save integration 2017-04-22 13:01:35 -05:00
Colin Snover
3303a88139 SCI: Improve audio volume & settings sync code
This patch includes enhancements to the ScummVM integration with
SCI engine, with particular focus on SCI32 support.

1. Fixes audio volumes syncing erroneously to ScummVM in games
   that modify the audio volume without user action (e.g. SCI1.1
   talkies that reduce music volume during speech playback). Now,
   volumes will only be synchronised when the user interacts with
   the game's audio settings. This mechanism works by looking for
   a known volume control object in the stack, and only syncing
   when the control object is present. (Ports and planes were
   researched and found unreliable.)

2. Fixes audio syncing in SCI32 games that do not set game
   volumes through kDoSoundMasterVolume/kDoAudioVolume, like GK1,
   GK2, Phant1, and Torin.

3. Fixes speech/subtitles syncing in SCI32 games that do not use
   global 90, like LSL6hires.

4. Fixes in-game volume controls in SCI32 games reflecting
   outdated audio volumes when a change is made during the game
   from the ScummVM launcher.

5. Fixes SCI32 games that would restore volumes from save games
   or reset volumes on startup, which caused game volumes to be
   out-of-sync with ScummVM when started.

6. ScummVM integration code for audio sync has been abstracted
   into a new GuestAdditions class. This keeps the ScummVM-
   specific code all in one place, with only small hooks into the
   engine code. ScummVM integrated save/load code should probably
   also go here in the future.

Fixes Trac#9700.
2017-04-21 19:00:27 -05:00
Bastien Bouclet
c81a61eefe SIC32: Add RAMA French checksums 2017-02-26 07:07:50 +01:00
Bastien Bouclet
e9d87117ba SCI32: Add Phantasmagoria 2 French checksums 2017-02-26 07:07:30 +01:00
Bastien Bouclet
d991986944 SCI32: Add Lighthouse French checksums 2017-02-26 07:06:53 +01:00
Tarek Soliman
25614c60c8 SCI: Add more version info to SQ4 detection entry 2017-01-17 16:09:31 -06:00
Colin Snover
4a930d0368 SCI32: Fix GUIOs for all SCI2-2.1late games 2017-01-09 19:34:54 -06:00
Colin Snover
c01b5fe619 SCI32: Mark non-interactive Lighthouse demo as non-interactive 2017-01-09 19:34:54 -06:00
Colin Snover
3be2025a5e SCI32: Remove invalid GUIO options from GK2 2017-01-02 17:02:31 -06:00