Commit Graph
120 Commits
Author SHA1 Message Date
Kawa-oneechan 18716672bb SCI: Split out duplicated color remapping code 2019-06-23 23:46:38 +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 6790855916 SCI: Handle recursive view loop references
Fixes bug #10953 in FPFP
2019-05-01 14:53:23 +03:00
Kawa c22e8ebfd0 SCI: fix full view remap effect (#1432) 2018-12-03 22:31:23 +02:00
Kawa ca2209cb5f SCI: Add support for The Dating Pool (#1403) 2018-12-02 22:56:19 +02:00
D G Turner 09abcc5c2c SCI: Fix Fall Through Compiler Warnings. 2018-11-13 12:10:30 +00:00
Colin Snover a4eb6a5ca5 SCI: Remove old SCI32 view scaling code from SCI16 graphics code 2017-09-27 20:27:34 -05:00
Colin Snover 76806732e0 SCI: Remove Mac SCI32 code from SCI16 code 2017-09-24 22:56:58 -05:00
Martin Kiewitz 5c901afad5 SCI: LB2-Dual mode: Change "DUAL" button to "BOTH"
Now it says "BOTH", just what the button in SQ4 says as well.
2017-09-16 13:26:41 +02:00
Martin Kiewitz 1504f41706 SCI: KQ6-Dual mode: Change "DUAL" button to "BOTH"
Now those say "BOTH", just what the button in SQ4 says as well.
2017-09-16 00:34:15 +02:00
Willem Jan Palenstijn 388419c53c SCI: Ignore priority and transparency for KQ6 hi-res views
This fixes bug 9786. Thanks to m_kiewitz for verifying with disasm.
2017-05-15 22:03:25 +02:00
Colin Snover 532828c143 SCI: Remove old SCI32 check from SCI16 drawing code 2017-03-27 19:42:31 -05:00
Colin Snover 6600fb77ea SCI: Use containers in GfxView and remove some SCI32 code 2017-03-27 19:42:31 -05:00
Colin Snover 31daa956d6 SCI: Implement bounds-checked reads of game resources 2017-03-27 19:42:31 -05:00
Colin Snover 4e1a9be816 SCI32: Remove CoordAdjuster32, at least for the moment
This may come back in the future to deduplicate some gfx code,
but SCI32 had two different inlined ways of doing coordinate
conversions with different rounding methods, so CoordAdjuster32
didn't get used when the graphics system was rewritten.

At the moment, SCI32 code uses the mulru/mulinc methods from
helper.h for scaling up/down coordinates.
2016-08-19 15:23:10 -05:00
Filippos Karapetis 75527e3df5 SCI32: Remove getColorAtCoordinate()
The only calling code for this was removed in commit 3f2469c33e
2016-03-16 01:51:06 +02:00
Filippos Karapetis f450ca0ebf SCI: Split color remapping functionality into a separate class
Currently, only the SCI16 remapping functionality is implemented
(used in the QFG4 demo)
2016-03-08 20:36:03 +02:00
Martin Kiewitz 82165bb6f6 SCI: Improve kAnimate fastcast detection, Remove EQ1 hack
- Add "kAnimate fast cast state" to "version" debug command
- Make it possible for script patcher signatures to get fully
used outside of the regular script patcher
- Remove previous fastcast detections and replace them with
a signature heuristic
- Remove object name checking, when fastcast global is set
- Heuristic detects "fast cast" support incorrectly for multilingual
KQ5, but it seems the game never sets the global, so it won't
matter. KQ5 CD (also SCI1 late) has fastcast support.
- Remove hack in GfxView::draw
- Add lots of comments to ScriptPatcher class

This fixes EcoQuest 1 Floppy showing the anemone on top of the
message box (see bug #5170)
2016-02-23 20:17:18 +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
Filippos Karapetis 9783f0bbd9 SCI: Remove trailing whitespace 2014-10-28 16:17:06 +02:00
Filippos Karapetis 22aaf995ed SCI: Hopefully fix bug #6718 in LSL6 Polish
View flags are mainly used by LB2. The flag in the LSL6 view seems to
be garbage, so we ignore it
2014-10-18 16:03:50 +03:00
Johannes Schickel 8fc7d60feb SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Martin Kiewitz a4bde6dade SCI: injecting "dual" view into King's Quest 6 CD
for dual mode (text+speech at the same time)
2013-12-24 23:31:17 +01:00
Martin Kiewitz a72d7d3932 SCI: injecting "dual" view into Laura Bow 2 CD
for dual mode (text+speech at the same time)
2013-12-24 22:24:42 +01:00
Filippos Karapetis 537b1969bf SCI: Rewrite the color remapping code to support simultaneous effects
Fixes the torch in the full version of QFG4
2012-07-25 00:58:16 +03:00
Filippos Karapetis 6f35130204 SCI: More work on color remapping
More transparency/color mapping effects are now working (e.g. the
flashlight at the Gedde tomb in GK1, the rays of light at Schloss Ritter
in GK1, the torch in the QFG4 demo and the shadows in QFG4, PQ4 and KQ7)
2012-07-24 22:34:46 +03:00
Filippos Karapetis bd281928cb SCI: Initial implementation of kRemapColors(kRemapByPercent)
Fixes some graphics glitches in the QFG4 demo and the menus of QFG4, by
implementing one of the transparency effects used mainly in SCI32.
Many thanks to fuzzie for her debugging info on QFG4 demo and to wjp for
his great help on the dissassembly
2012-07-24 03:53:44 +03:00
Filippos Karapetis c424c22f19 SCI: Fix bug #3040625 - "SCI: ECOQUEST French/German: Speech balloon graphic glitch"
This bug is caused by the fact that the sprites in that scene and the
speech bubble share the same priority, so we compensate for that with a
workaround
2012-05-11 12:54:06 +03:00
Matthew Hoops ba798e250d SCI: Add support for slater mac 2011-11-16 17:56:12 -05:00
Filippos Karapetis 228c4fb286 SCI: Added a hack to fix bug #3035693 - "SCI: QFG3 demo: Rope swinging more heroic than ever" 2011-10-20 00:47:53 +03:00
Heather Douglass 084b2deccc SCI: Implementation of kCelInfo subop 4
kCelInfo subop 4 returns the pixel color at the
passed in x,y coordinates for the passed in view,
loop, cel.  Shivers uses this function for the
red door puzzle, room 23601 to determine what
blocks on the puzzle board are already occupied
by pieces.
2011-10-12 02:50:28 +03:00
Filippos Karapetis 43fb9d32b5 SCI: Code formatting 2011-09-26 20:02: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
Willem Jan Palenstijn 9e2c7f26d2 SCI: Treat all priorities above 15 as none
Before only 255 was treated this way. This fixes part of the broken
dialog boxes in Jones CD (bug #3297111) which use priority 254,
and matches Jones CD disassembly.
2011-06-12 20:25:46 +02:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Matthew Hoops 2a2c7f5bef SCI: Minor cleanup 2011-03-30 16:00:46 -04:00
Lars Skovlund 40d922206b SCI32: Support for views with 640x400 native resolution
(fixes Wolfgang closeup, room 720)
2011-03-30 21:30:51 +02:00
Matthew Hoops e1883a6cf4 SCI: Limit SCI32 view scaling to when we're actually scaling
Fixes bug #3253208
2011-03-29 10:56:19 -04:00
Matthew Hoops 2cbcc76789 SCI: Fix uncompressed SCI1.1 views
A regression from d2ad7898d9
2011-03-10 18:45:51 -05:00
md5 24df295328 SCI: Made some checks inside unditherBitmap() more understandable 2011-03-10 21:50:06 +02:00
md5 91d2d04f90 SCI: Some renaming related to the undithering code
Renamed some variables, functions and comments related to the
undithering code, to make them a bit easier to understand
2011-03-10 18:05:59 +02:00
md5 cd816b24d7 SCI: Whitespace fixes 2011-03-09 15:14:12 +02:00
md5 7e517b7808 SCI: Some cleanup and fixes to the view unpacking code
- Added comments for all the different view unpacking algorithms
- Merged the SCI1 VGA and SCI1.1 VGA unpacking code
- Fixed views in Longbow Amiga (the palette is still broken, though)
- Used memset()/memcpy() instead of looping through
- Fixed a regression of rev. d2ad789 (LSL1 Spanish, bug #3135872)
2011-03-09 15:06:42 +02:00
md5 4ddc66d68e SCI: Initial handling of the views in Longbow Amiga. Still not right 2011-03-07 13:23:52 +02:00
Matthew Hoops adfa5e1b86 SCI: Fix Mac SCI1.1 view decompression
A regression from d2ad7898d9
2011-03-06 12:46:01 -05:00
md5 d2ad7898d9 SCI: Merged the cel data unpacking code for views and pictures 2011-03-06 19:22:32 +02:00
md5 5b9677da72 SCI: Cleaned up some view type checks 2011-03-04 22:04:12 +02:00
md5 ef939772b3 SCI: Added support for 16/32 color view and picture patches
16 color patches (*.p16 and *.v16) are used in 16 color EGA SCI1 games
32 color patches (*.p32 and *.v32) are used in 32 color Amiga SCI1 games
Removed a workaround for SCI1 EGA (bug #3044500), as that bug has been
fixed already in the view patch. Thanks to waltervn for observing this.
2011-03-04 17:16:54 +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 ab256842e4 SCI: Added a TODO concerning the workaround for SQ1EGA, as we don't know if it happens in the original version 2011-02-26 18:47:23 +02:00