Commit Graph
1475 Commits
Author SHA1 Message Date
Filippos Karapetis b6f84d37b3 SCI: Fix showStyle check in palMorphFrameOut() - thanks snover 2016-02-20 23:28:41 +02:00
Martin Kiewitz dda637e7ac SCI32: kIsOnMe apply scaling + use mulru() thx snover 2016-02-20 16:15:01 +01:00
Martin Kiewitz ed251ea004 SCI32: kIsOnMe searches _visiblePlanes, not just _planes
Forgot to mention that in last commit
2016-02-20 15:47:53 +01:00
Martin Kiewitz 5425ff6e99 SCI32: Splitting up GfxFrameout::kernelIsOnMe() into 2 methods 2016-02-20 15:46:12 +01:00
Filippos Karapetis 62546273ca SCI: Document and disable the unverified code used in GK1 2016-02-20 15:30:40 +02:00
Filippos Karapetis d0ef09d17a SCI: Add a more detailed explanation about kernelSetZoomZone 2016-02-20 15:30:39 +02:00
Filippos Karapetis 5a99bef4f1 SCI: Document kernelSetZoomZone() 2016-02-20 15:30:39 +02:00
Filippos Karapetis 988d5a2051 SCI: Add a better explanation of the visibility code used in GK1 2016-02-20 14:26:55 +02:00
Filippos Karapetis b3b6de4fd0 SCI: Handle the "visible" object selector. Fixes the inventory in GK1 2016-02-20 13:57:11 +02:00
Filippos Karapetis 1dd7844c99 SCI: kernelSetZoomZone is a stub in Mac versions. Fixes bug #7040
Cursor handling is quite different in Mac SCI versions. Among other
changes, the screen where a zoom cursor was used in Freddy Pharkas
has been redesigned to work without such a cursor, and the relevant
zoom cursor call has been stubbed
2016-02-20 13:57:10 +02:00
Willem Jan Palenstijn 53ed7f6ac1 SCI: Rewrite Plane::mergeToRectList
The old one would continue reading from outerRect after it was deleted.
2016-02-20 12:26:54 +01:00
Martin Kiewitz 19283b94a9 SCI32: Some work on kIsOnMe
Plenty of hotspots seem to work now
Not fully done yet
2016-02-20 05:38:22 +01:00
Martin Kiewitz 5b528a5582 SCI32: Make upscaled games work (e.g. gk1 hires) 2016-02-19 16:57:21 +01:00
Colin Snover 1c4778d571 SCI: Minor cleanup
1. Reorder member initialisations to match class member order
2. Use #pragma mark instead of comments for annotating sections
3. Remove useless >=0 checks on unsigned types
2016-02-18 21:11:06 -06:00
Filippos Karapetis c1dacbe65d SCI: Use American English, like we do in other parts of ScummVM
This replaces "colour" to "color"
2016-02-19 02:50:16 +02:00
Filippos Karapetis 9aac0bdaaa SCI: Compare offsets in the Plane comparison operator
Fixes a crash in the first scene of Torin's Passage
2016-02-19 02:43:55 +02:00
Filippos Karapetis 52f11b1357 SCI: Use proper constification in overriden base class functions 2016-02-19 02:37:35 +02:00
Colin Snover 3e820ee9b3 SCI: Fix bad positioning of relatively positioned pic cels 2016-02-18 13:18:03 -06:00
Colin Snover 5a1fa5efa1 SCI: When rewriting lookup tables, also actually record what scale they are for 2016-02-18 13:18:03 -06:00
Colin Snover 03e3f2c68c SCI: Fix some rect off-by-ones 2016-02-18 13:18:03 -06:00
Colin Snover 3c9b930506 SCI: Add comments to plane code 2016-02-18 13:18:03 -06:00
Colin Snover 775c39102a SCI: Implement templated drawing subroutines 2016-02-18 13:18:02 -06:00
Colin Snover 20ccad80bf SCI: WIP GfxText32 code
This at least prevents SQ6 from crashing when going into the
introduction
2016-02-18 13:18:02 -06:00
Colin Snover 37539625d7 SCI: Fix palette equality check 2016-02-18 13:18:02 -06:00
Colin Snover 75ccabc325 SCI: Implement accurate renderer architecture for SCI32 2016-02-18 13:18:02 -06:00
Eugene Sandulenko 6c895643aa Merge pull request #667 from a-detiste/master
JANITORIAL: Typos detected with lintian & grep
2016-02-15 18:31:50 +01:00
Alexandre Detiste 6c298e964f JANITORIAL: Typos detected with lintian & grep 2016-02-15 18:27:02 +01:00
Eugene Sandulenko eaad4208c7 SCI: Proper initialization.
There is no guarantee of initialization order in the constructor
declaration, thus corss references are not a good idea.
2016-02-14 12:50:04 +01:00
Martin Kiewitz 209907d01e SCI: Screen pixel optimizations
Put things like putPixel() into screen.h, so that it can be inlined.
Also don't use look up tables for those methods anymore and instead
calculate offsets manually, because that should be faster.
2016-02-06 23:41:20 +01:00
Martin Kiewitz 1b7ed6a7cc SCI: Fix bits size calculation for upscaled hires
in screen class (calculating how many bytes are needed to
save a specified area of various screen maps)
2016-02-06 23:29:57 +01:00
Johannes Schickel 51d415733c SCI: Implement kernelSyncWithFramebuffer using copyFromScreen. 2016-02-06 22:50:53 +01:00
Johannes Schickel 74154f2101 SCI: Properly use pitch in GfxScreen::copyFromScreen. 2016-02-06 22:50:53 +01:00
Martin Kiewitz 7aeadba863 SCI: Removed ".data" from SciEvent
Was the ScummVM-system-Keycode, sometimes modified.
Changed Menu/Portrait/Controls32-code to use .character instead.
Cleaned up a bit of code in getScummVMEvent()
2016-02-02 11:33:40 +01:00
Martin Kiewitz c0bdbe1ca8 SCI: Fix control/Fx keys not working anymore
Was effectively caused by commit adding the keyboard driver bug
for SCI0/SCI01, although the bug is actually real and happens.

It seems Sierra did not check the key-modifier in kMenuSelect.
We do and that's why the code didn't recognize all sorts of
menu keys anymore.
We now isolate the lower byte before comparing.

I also noticed, that Sierra passed keyboard modifiers in mouse
events. This was probably done, so that owners of a 1-button
mouse were able to right-click. We do this now too.

Also added information about mouse modifiers in kGetEvent.

Moved the mouse modifier code into getScummVMEvent().

This should fix bug #7009.
2016-02-02 01:56:08 +01:00
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
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
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