6563 Commits

Author SHA1 Message Date
Martin Kiewitz
9f43193730 SCI32: PQ4 seems to support high resolution too 2016-01-22 02:30:13 +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
0017cfa06c SCI: Fix SCI32 hires detection making PQ4 unusably slow 2016-01-20 20:06:45 -06:00
Colin Snover
5b6b20f421 SCI: Fix SCI32 kPalVary subops 1, 4, 5, 7, 8, 9 using wrong indexes 2016-01-20 16:12:56 -06:00
Filippos Karapetis
f2e80ffc7f SCI: Do not map SetScroll twice 2016-01-15 21:34:42 +02:00
Johannes Schickel
71b665b617 SCI: Indent comment properly. 2016-01-15 15:50:38 +01:00
Lars Skovlund
9e672dab60 SCI3: Add comment re new function 2016-01-15 03:14:34 +01:00
Filippos Karapetis
2a4b04f3b2 SCI: Add an initial implementation of kStringTrim
Thanks to lskovlun for his help
2016-01-15 03:25:40 +02:00
Filippos Karapetis
a5a531ec9f SCI: Use the actual segment in the segment manager for SCI3 games 2016-01-15 02:48:37 +02:00
Filippos Karapetis
87de93e5f1 SCI: Add a hack in music init for MUMG Deluxe, so that it starts 2016-01-15 02:47:22 +02:00
Filippos Karapetis
fbc9fe03c0 SCI: Allow null references to kStringGetData, for Torin's Passage
Added a TODO for rhis, for now
2016-01-15 02:46:35 +02:00
Filippos Karapetis
1d2abb4c9e SCI: Fix usage of override functions and silence a warning 2016-01-15 01:53:12 +02:00
Filippos Karapetis
d44c150d16 Merge pull request #649 from csnover/sci32-kPalette
SCI32: kPalVary, kPalette fade support, kPalette findColor support, improvements to game time management
2016-01-15 01:33:24 +02:00
Colin Snover
40f6d74d97 SCI: Minor clean-ups to comments and null pointer values 2016-01-14 17:21:05 -06:00
Colin Snover
8224d32122 SCI: Implement SCI32 kPalette findColor and matchColor
It seems that findColor is used only by kPalette, and matchColor is
used only by Remap.
2016-01-14 17:21:05 -06:00
Martin Kiewitz
6269075ad6 SCI: fix kernelCoordinateToPriority
do not check _priorityTop. Sierra never did it (I checked all sorts
of SCI versions, kq4 early, kq5, kq6, etc.) and checking it will
cause at least a priority issue in lsl2 in room 54 (airplane that
is taking off will be drawn using priority 1 instead of 0)
2016-01-14 23:37:13 +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
Colin Snover
fb891e4c08 SCI: Implement SCI32 kPalVary and kPalette setFade
This also fixes kPalCycle signatures to be more accurate.
2016-01-14 16:13:22 -06:00
Colin Snover
f1cf07eded SCI: Add kPalMorph stub 2016-01-14 16:13:22 -06:00
Colin Snover
dc42a86f7e SCI: Fix bad spacing in kernel tables 2016-01-14 16:13:22 -06:00
Willem Jan Palenstijn
22796e559f SCI: Fix compilation when SCI32 is disabled
Thanks bSr43
2016-01-10 12:38:10 +01:00
Filippos Karapetis
28b91136cd SCI: Fix the math in applyFade(), and simplify setFade() 2016-01-08 17:16:09 +02:00
Filippos Karapetis
65f54c227f SCI: *Really* fix the logic in applyFade()
Thanks wjp
2016-01-08 15:58:10 +02:00
Filippos Karapetis
04f372f004 SCI: Fix the logic in applyFade()
Note that this is still unused, as it is normally called from
kSetShowStyle()
2016-01-08 15:55:24 +02:00
Filippos Karapetis
e4e7f1825d SCI: Renamed one more function name to conform to our guidelines 2016-01-08 15:43:59 +02:00
Filippos Karapetis
8c6b5168a1 SCI: Make GfxPalette32 conform to out formatting guidelines
We do not prepend underscores to private class functions
2016-01-08 15:40:05 +02:00
Filippos Karapetis
a65ff0e56e SCI: SCI32 palette cyclers are disjoint, so use a single palette copy 2016-01-08 15:35:19 +02:00
Filippos Karapetis
c6e083bcf4 SCI: Simplify the SCI32 palette cycling code 2016-01-08 15:19:04 +02:00
Filippos Karapetis
0434617018 SCI: Initialize kString properly for SCI2 games
SIG_UNTIL_SCI21MID did not account for SCI2 games. Fixes GK1 DOS
2016-01-08 11:37:13 +02:00
Filippos Karapetis
a119108835 SCI: Fix compilation 2016-01-08 11:09:29 +02:00
Filippos Karapetis
7379e531c7 Merge pull request #644 from csnover/sci32-kPalCycle
SCI32: palette management (full kPalCycle, partial kSetPalStyleRange and kPalFade)
2016-01-08 10:58:03 +02:00
Colin Snover
275db1f7f2 SCI: Remove unused member property _palCycleToColor 2016-01-07 16:35:09 -06:00
Colin Snover
8a1d48fc03 SCI32: Add kFrameOut stub code 2016-01-07 16:35:09 -06:00
Colin Snover
70d89b3e39 SCI32: Add kSetPalStyleRange stub code 2016-01-07 16:35:09 -06:00
Colin Snover
aeee621e44 SCI32: Add initial support for palette cycling (kPalCycle) and fading (kPalFade)
Graphics palette code was rewritten between SCI1 and SCI2, so
SCI32 palette engine code has been moved to a separate GfxPalette32
class.
2016-01-07 16:35:09 -06:00
Martin Kiewitz
7b1df2174d SCI: fix compatibility issue in kFileIO
Allow 0xFFFF as invalid file handle again for kFileIO calls
Fan game "Dating Pool" opens a non-existant file at the start
and tries to read it, even though it shouldn't do the latter.
The sciAudio adjustments changed our behavior to error() out in
such a case. This commit changes it back to our old behavior to
only print out a warning.
2016-01-05 19:44:45 +01:00
Martin Kiewitz
0b5a09f836 SCI32: fix kString calling from within kArray
(didn't work since the introduction of kString signatures and the
kString split-up)
2016-01-04 14:58:02 +01:00
Martin Kiewitz
453afd7bbc SCI: kGetEvent modifiers bug was fixed in SCI1
- SCI1 EGA QfG2 keyboard driver resets AH

In the original commit I forgot to mention:
- thanks to lskovlun for figuring out that bit 9 is checked/set
- thanks to wjp for checking SCI32
2016-01-03 18:32:25 +01:00
Martin Kiewitz
f9459656f5 SCI: implement kGetEvent modifiers DOS bug
Will fix darts minigame in the fan game "Betrayed Alliance"
This bug in the original interpreter/keyboard driver seems to have
been fixed in SCI32.
2016-01-03 18:09:06 +01:00
Martin Kiewitz
4a63352462 SCI: sciAudio support for .wav + .aiff files 2016-01-03 00:27:42 +01:00
Martin Kiewitz
30b554d694 SCI: sciSound: check compression type 2016-01-03 00:07:05 +01:00
Martin Kiewitz
4892bd8066 SCI: fix sciAudio not doing loops correctly 2016-01-02 22:43:27 +01:00
Martin Kiewitz
9d5ee9cba0 SCI: fix sciAudio support on some platforms
The old code expected sciAudio FOpen calls to fail, because they
contained a directory name. On AmigaOS those calls succeeded.
Because of that at least on AmigaOS, sciAudio support didn't
work at all.

We now detect sciAudio FOpen calls and return a proper virtual file
handle. This should fix it on all platforms.

Also moved the SCI32 virtual save file handle from 200 to 32100.
2016-01-02 21:50:35 +01:00
Ori Avtalion
85fa44c32d JANITORIAL: Remove #includes of list_intern.h 2016-01-02 15:32:38 +02:00
Martin Kiewitz
63b66b23aa SCI32: version detection - don't remove const
don't remove const during cast
2015-12-29 02:35:07 +01: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
Lars Skovlund
54acbdccc6 SCI: Fix obsolete comment 2015-12-28 10:28:27 +01:00
Lars Skovlund
9a3084d320 SCI: Fix when more than 10 font codes are used 2015-12-28 05:50:26 +01:00
Johannes Schickel
d2d700e086 SCI: Remove superflous default value registration for extra GUI options. 2015-12-28 00:14:11 +01:00
Martin Kiewitz
b0587f6af8 SCI32: add code for torin+sq6 audio+subtitles mode
also add comments about other SCI32 games
set global 90 only for lsl6 sci1.1
2015-12-22 01:53:19 +01:00