Commit Graph
179 Commits
Author SHA1 Message Date
Le Philousophe 96103179af SCI: Fix build when SCI32 isn't enabled 2019-07-08 10:15:09 +03:00
Filippos Karapetis 49a6346966 SCI32: Add stub for the Hoyle 5 Poker game logic 2019-07-07 22:26:03 +03:00
Kawa 9aadb27267 SCI: Add some more SCI11+ features
Also gate them behind the presence of a 184.VOC resource instead of GID_CATDATE. This should not matter with regards to the remap effects -- the 2015 and 2016 demos had none, and the first that did has an unknown release status. Only the 2017 demo would fall, which would be easily fixed by dropping in a valid 184.VOC patch file.
2019-06-23 01:46:53 +03:00
sluicebox 0008fab4f5 SCI: Fix Mac icon bar crash on restart (KQ6, FPFP)
Add support for reinitializing the mac icon bar when restarting.
Restarting runs the game's init script which calls KPlatform again.
Prior to this, restarting these games would fail an assertion.
2019-03-25 11:42:54 +02:00
Lars Skovlund b94ef3dab0 SCI: Rename kRestartGame to kRestartGame16 2019-01-05 22:25:31 +02:00
Kawa ca2209cb5f SCI: Add support for The Dating Pool (#1403) 2018-12-02 22:56:19 +02:00
Filippos Karapetis ef841f615e SCI32: Always start in the Bridge room in Hoyle 5 Bridge
It's the only game included, so there's no point showing the game
selection menu in this case. This follows the behavior of the original
2018-10-23 01:32:26 +03:00
Filippos Karapetis 16aab5b281 SCI32: Add handling for config settings used in Hoyle 5 2018-08-21 03:36:06 +03:00
Filippos Karapetis 89785ea804 SCI32: Add stub for kWinDLL - used in Hoyle 5 2018-08-21 03:36:06 +03:00
Colin Snover 743082ac8c SCI32: Disable all SCI32 Mac code
This code is currently untestable and is almost certainly at least
partly based on guesswork & not actual reverse-engineering (as was
the case for all other pre-2015 SCI32 code), so future developers
interested in adding SCI32 Mac support should use it only as an
intermediate reference rather than as known good code.
2017-09-24 22:56:59 -05:00
Colin Snover b0b1e89abe SCI32: Hide warning about CD-ROM speed setting in kGetSierraProfileInt
In the DOS interpreters, this function is a no-op. Lighthouse calls
it regardless of platform, so dummy it out for non-Windows
platforms. This is not known to address any particular issue, and
is really just to eliminate the warning about an unknown
configuration setting when starting Lighthouse in a manner that is
compatible with the original interpreter.
2017-09-19 19:54:29 -05:00
Colin Snover f200cc110f SCI32: Send correct color depth to Phant2
This is not known to fix any particular issue, but the game does
set some flags internally if it's running in 256-color Windows,
which is possibly undesirable since we do run 16-bit videos
regardless.
2017-09-09 23:29:57 -05:00
Torbjörn Andersson 70a2ca8b7d JANITORIAL: Silence more GCC 7 warnings
All these fall through were marked as deliberate, so again I've only
changed the comment to silence GCC.
2017-08-06 13:30:51 +02:00
Colin Snover f88bcb3ee9 SCI32: Add deflang (default language) kGetConfig key for MGDX 2017-07-24 19:36:32 -05:00
Colin Snover 03ba3e41f9 SCI32: Return CD speed in kPlatform
This fixes missing playback of some videos in Rama, like the
background video that plays when selecting an email at the
computer at the start of the game.
2017-05-31 22:03:13 -05:00
Colin Snover 63a87ac1f7 SCI32: Fix return value of kWebConnect
On macOS, the return code from OSystem::openUrl was the opposite
of what it was supposed to be; it is now fixed, so this caller
needs to be fixed too.
2017-05-21 19:37:42 -05:00
Colin Snover 14a521a211 SCI32: Fix kPlatform operation for SCI2 through SCI2.1early
Fixes Trac#9795.
2017-05-20 21:14:18 -05:00
Colin Snover 3b34f17fb3 SCI32: Add kWebConnect and kWinExec
Used by Phant2.
2017-03-30 19:46:27 -05:00
Colin Snover 02540b8d38 SCI32: Add support for kPrintDebug 2016-09-29 19:39:16 -05:00
Filippos Karapetis f238ed18ec SCI: Fix compilation when SCI32 is not enabled 2016-08-23 01:48:06 +03:00
Filippos Karapetis ba8d6f6c03 SCI32: Move the SCI32 Mac cursor handling code into GfxCursor32
This was left in the SCI16 code in commit 80d9182554
2016-08-22 19:56:06 +03:00
Filippos Karapetis 39307d1f4d SCI: Return the correct platform in kPlatform for Mac versions 2016-08-22 19:48:56 +03:00
Colin Snover 7da359755d SCI32: Split kPlatform for SCI32 2016-08-19 13:57:40 -05:00
Colin Snover ef2c44bf1f SCI32: Implement kShowMovie 2016-08-12 09:28:46 -05:00
Colin Snover 31f344079f SCI32: Temporarily revert kShowMovie due to buildbot failures
Revert "SCI32: Fix KQ7 1.51 video background"

This reverts commit c8affb54cc.

Revert "SCI32: Fix crash when kShowMovie is called but the video cannot be found"

This reverts commit 93b06f4a9e.

Revert "SCI32: Fix KQ7 1.51 basic video playback"

This reverts commit cdab24aa07.

Revert "SCI32: Additional Video32 documentation"

This reverts commit 4ff0924e57.

Revert "SCI32: Implement kShowMovie"

This reverts commit 13297c1929.
2016-08-11 21:43:57 -05:00
Colin Snover 13297c1929 SCI32: Implement kShowMovie 2016-08-11 20:50:33 -05:00
Omer Mor 7c19e26610 SCI: Add detection to the Hoyle 5 family of games
Added games are:
  Hoyle Classic Games
  Hoyle Bridge
  Hoyle Children's Collection
  Hoyle Solitaire (CD and Hard Drive versions)

Additionaly, kGetConfig was modified to support two settings used by
these games: "laptop" and "jumpto".
2016-07-25 22:44:11 +03:00
Colin Snover 593560e876 SCI32: Add detection for Hoyle 5 demo 2016-07-11 13:02:27 -05:00
Willem Jan Palenstijn 08f1727b08 SCI: Improve kernel subfunction logging
ExecStack now stores the kernel call number as well as the subfunction.
This allows kStub and backtraces to log the actual subfunction called.

The kernel call number in ExecStack used to be stored in the
debugSelector field. It now has its own field, to avoid confusion.
2016-07-02 21:25:53 +02:00
Omer Mor 36c7e7d252 SCI: Fixed KGetTime with SYSDATE subop in SCI0-LATE.
SSCI implementation of the SYSDATE subop of the GetTime kernel function was
changed between SCI0-LATE and SCI01: The base year used was changed from 1920 to
1980.
This subop is used in "Codename: Iceman" (Say "ask for date" to a passing girl
on the beach).

The Atari ST version of "Codename: Iceman" use the 1980 base year.
The Amiga version of "Codename: Iceman" appears to return the time instead of
date, with 0 for the YEAR part.
2016-06-27 08:16:58 +03:00
Martin Kiewitz 050ec1ef31 SCI: Make kMemory behavior like original SCI
We added 1 to the size as a workaround, but it's not really a
workaround, because original SCI allocated at least 2 bytes more.
They also made sure the size is even. We now do the same.
2016-02-08 21:12:37 +01:00
Martin Kiewitz 0aa9924df1 SCI: add user option for high resolution graphics
Instead of choosing Windows as platform, users can now also simply
click this option for Gabriel Knight 1 + King's Quest 6
Defaults to high resolution graphics
2016-01-22 02:01:28 +01:00
Colin Snover 76bd2eeb2e SCI: Use tick-based timing more consistently
This means tick-based times are saved to save games, as in SCI32
engine, instead of seconds, which are not accurate enough. It
also means places in SCI engine that need to access game ticks
should do so through g_sci instead of g_system or g_engine.
2016-01-14 16:13:22 -06:00
Martin Kiewitz 0dd760724e SCI32: split up SCI2.1 into EARLY/MIDDLE/LATE
- Detection works via signatures (couldn't find a better way)
- new kString subcalls were introduced SCI2.1 LATE
- kString now has signatures and is split via subcall table
- kString fix, so that KQ7 doesn't crash, when starting a chapter
- Sci2StringFunctionType removed, because no longer needed
2015-12-29 01:44:11 +01:00
Martin Kiewitz 058fc2327f SCI: fix kGetTime, fixes bug #6605
current year part wasn't calculated properly
2014-06-01 19:58:23 +02:00
Johannes Schickel 8fc7d60feb SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Filippos Karapetis 5a47afea9e SCI: Move kGetWindowsOption together with the other misc kernel functions 2012-07-03 18:11:41 +03:00
Filippos Karapetis 2b50824133 SCI: Add setter/getter methods to reg_t's
No functionality change has been made with this commit. This avoids
setting and getting the reg_t members directly, and is the basis of any
future work on large SCI3 scripts (larger than 64KB)
2012-06-18 05:24:06 +03:00
Filippos Karapetis 0a3fb38bc7 SCI: Add handling of two more configuration settings for LSL7 2012-06-14 12:20:37 +03:00
Filippos Karapetis 93024c073b SCI: Handle the torindebug config setting for Torin's Passage French
Thanks to LePhilousophe for testing and providing a patch
2012-06-13 12:27:02 +03:00
Filippos Karapetis 15306bc554 SCI: Return the default value for unknown configuration settings
Based on a patch by LePhilousophe
2012-06-11 21:17:19 +03:00
Filippos Karapetis ca3ea849d8 SCI: Update information on kGetSierraProfileInt
Thanks to LePhilousophe for his feedback and observations on this
2012-06-09 16:29:14 +03:00
Lars Skovlund c1dd3d5c29 SCI32: Implement GetConfig("language") 2012-06-02 18:50:46 +02:00
Lars Skovlund 403b646c13 SCI32: Case-insensitive configuration getters 2012-05-30 18:43:39 +02:00
Filippos Karapetis 5af1ccbac6 SCI: Implement kGetConfig and kGetSierraProfileInt
This fixes the sluggish game speed in Phantasmagoria (DOS/Windows)
2012-05-26 16:41:11 +03:00
Filippos Karapetis 3bffb8e3f7 SCI: Fixed timer bug #3127824 - "SCI: speed problem - Castle of Dr Brain" 2011-09-24 01:32:13 +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
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
md5 6c4f09c058 SCI: Silenced the warning for kMacPlatform(1)
This warning produces a lot of spam in the console (e.g. it pops up
whenever the icon bar is opened in Dr. Brain Mac), thus it has been
silenced
2011-04-15 11:20:05 +03:00
md5 9adae61df3 SCI: Error out when kMemorySegment() is requested to save more than 256 bytes 2011-03-28 02:23:57 +03:00