Commit graph

79 commits

Author SHA1 Message Date
Colin Snover
617497d094 SCI: Fix UB shifting negative integers 2017-11-19 12:48:14 -06:00
Colin Snover
9a8070da3c SCI: Do some clean-up of event handling system
Convert macros and vars to enums, rename keyboard events in
preparation for adding key up events, clean up unnecessary nested
conditionals, add TODOs for potential future work.
2017-09-27 20:27:33 -05:00
Colin Snover
58c83dcd14 COMMON: Make SpanOwner copy assignment make a copy of the owned Span
To move data from one SpanOwner to another, use `moveFrom`.
Thanks @waltervn for pointing out the problem.
2017-06-08 10:45:55 -05:00
Filippos Karapetis
03c1b3307c SCI: Remove a leftover SCI32 hack 2017-05-27 13:32:02 +03:00
Colin Snover
31daa956d6 SCI: Implement bounds-checked reads of game resources 2017-03-27 19:42:31 -05: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
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
Martin Kiewitz
4ebca03534 SCI: Make cursor workaround work properly on OpenPandora
Other platforms, that support analog stick + touch screen at the
same time, are possibly also affected.

Cursor workarounds exist for qfg1vga, qfg3, lsl5 and Island of
Dr. Brain. Those sometimes worked and sometimes didn't on
at least OpenPandora and should be fixed now.
2016-03-05 21:28:09 +01:00
Filippos Karapetis
d0ef09d17a SCI: Add a more detailed explanation about kernelSetZoomZone 2016-02-20 15:30:39 +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
Martin Kiewitz
72e6a9eeab SCI: some more work on 480x300 mac support 2014-11-09 12:54:41 +01:00
Johannes Schickel
8fc7d60feb SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Filippos Karapetis
012a5ef040 SCI: Fix a non-initialized variable in GfxCursor - CID 1003112 2013-05-01 01:51:12 +03:00
Filippos Karapetis
d840aa4dec SCI: Change wording for the cursor position workarounds 2013-04-28 23:31:10 +03:00
Filippos Karapetis
46ebf37ec9 SCI: Change wording for bug/further info references 2013-04-27 14:04:27 +03:00
Matthew Hoops
8a50d87445 SCI: Fix potential memory leak with Mac cursor's hotspot 2013-04-16 11:14:04 -04:00
Matthew Hoops
6c1b019056 SCI: Fix mac cursor memory leak 2013-04-16 11:09:30 -04:00
Johannes Schickel
7b646e5c62 SCI: Get rid of casts on CursorManager::replaceCursor calls. 2012-06-16 03:28:43 +02:00
Filippos Karapetis
24e57808aa SCI: Add a hack to fix the cursor colors in Longbow (bug #3489101) 2012-04-29 20:45:14 +03:00
Filippos Karapetis
d801186185 SCI: Fix cursor coordinates for SCI01. Fixes a crash in KQ1 (bug #3503932) 2012-03-25 19:22:31 +03:00
Filippos Karapetis
7e4c5dce4a SCI: Add a new configuration option for SQ4 CD, "silver_cursors"
This allows the user to choose the alternate set of silver mouse cursors
that is available in the game resources of the game, instead of the
original golden ones
2012-03-07 23:20:50 +02:00
Filippos Karapetis
c87657f066 SCI: Added some sanity checks by digitall
- Limit the LB1 cursor workaround to LB1 only (so that fanmade games
aren't affected)
- Error our when bad cursor hotspots are found
2012-02-17 21:54:50 +02:00
Filippos Karapetis
b21f956790 SCI: Fix and cleanup the monochrome cursor code
This makes the code like FreeSCI again, which is the correct way to fix
bug #3487088.
2012-02-17 21:09:59 +02:00
Filippos Karapetis
c48ad37244 SCI: Fix bug #3487088 - "SCI: LB1: Missing Wait cursor" 2012-02-17 10:53:42 +02:00
Filippos Karapetis
fbb51fcd88 SCI: Fix bug #3487092: "SCI: LB1: Magnifying glass cursor is grey" 2012-02-13 04:03:05 +02:00
Filippos Karapetis
7708a4ddbb SCI: Added some hacks related to new functionality in Phantasmagoria 2
The game will now start (but won't do anything exciting - it'll display
its main menu, which doesn't work yet)
2011-10-18 03:10:19 +03:00
Willem Jan Palenstijn
7b71e9842e SCI: Fix Island of Dr. Brain copyprot pause menu on touch devices
Patch from m_kiewitz.
2011-09-05 12:14:17 +02:00
Willem Jan Palenstijn
09def52554 SCI: Fix QFG3 run/walk/sleep menu on touch devices
The analysis and fix are from m_kiewitz.
2011-09-03 10:26:25 +02:00
Matthew Hoops
eea482fa43 ALL: behaviour -> behavior 2011-05-25 10:50:46 -04:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Matthew Hoops
0f0ae4576e SCI: Use new MacCursor code instead of convertCrsrCursor() 2011-05-05 19:27:28 -04:00
Walter van Niftrik
952d1a084c SCI: Implement Mac iconbar event handling. 2011-03-09 21:05:19 +01:00
Matthew Hoops
e815102659 Merge branch 'pe_exe' of https://github.com/clone2727/scummvm into clone2727-pe_exe 2011-03-07 17:07:59 -05:00
Matthew Hoops
6582b77f1c SCUMM: Use the new WinCursor code in SCUMM HE
Also, updated the MacResManager cursor code to reflect the SCUMM resource extractor code changes
2011-03-06 19:57:18 -05:00
Matthew Hoops
df1a800d01 SCI: Fix KQ6 Mac inventory cursors 2011-03-06 18:36:45 -05:00
Johannes Schickel
bba430eebc SCI: Adapt to setPalette/grabPalette RGBA->RGB change. 2011-02-14 17:08:33 +01:00
Matthew Hoops
80347e9630 SCI: Don't fallback to views in SCI1.1+ Mac games
svn-id: r55871
2011-02-10 15:56:35 +00:00
Matthew Hoops
85f8dc5dee SCI: Add detection for Freddy Pharkas Mac
svn-id: r55828
2011-02-08 15:03:23 +00:00
Matthew Hoops
46404940b5 SCI: Improve Mac SCI1.1+ cursor support
The scripts can pass a list of view id's from the DOS version that get remapped to CURS/crsr id's. GK1 cursors now work and Phantasmagoria uses the correct ones.

svn-id: r55791
2011-02-06 00:05:27 +00:00
Filippos Karapetis
d3b14e1445 SCI: Implemented FR #3101338: "King's Quest 6 Windows Mouse Icons"
Added an option to use the original Windows cursors in the Windows version of KQ6
Also, added an update on how the Mac cursors are handled (perhaps the handling is
the same)

svn-id: r54495
2010-11-26 12:37:24 +00:00
Max Horn
3534cff8ef ALL: Fix indention (whitespaces -> tabs)
svn-id: r53738
2010-10-23 15:46:50 +00:00
Filippos Karapetis
744a1829ac SCI: Added a check for magnifier cursor multipliers
Sierra SCI only allowed multipliers 1, 2 and 4, and errored out on unexpected
values, thus we do the same

svn-id: r53072
2010-10-08 13:33:54 +00:00
Martin Kiewitz
6dcf366b7d SCI: fixing mag cursor as far as possible
added TODO for real proper implementation
at least the alignment and content shown is now correct

svn-id: r53071
2010-10-08 12:41:03 +00:00
Filippos Karapetis
cacfefa699 SCI: bugfix for magnifier cursors
When deleting the resources related to magnifier cursors, zero them out
as well. Fixes crash when exiting a game after using a magnifier cursor

svn-id: r53054
2010-10-07 20:00:32 +00:00
Filippos Karapetis
c8fd37c9f0 SCI: Some fixes for zoom cursors
- Now the cursor buffer is initialized outside the mouse movement code, thus saving
a memcpy there
- Plugged some memory leaks
- Removed an obsolete check

svn-id: r53028
2010-10-05 10:30:26 +00:00
Martin Kiewitz
04a8ff06a2 SCI: fixing crash in mag cursor code for pharkas
svn-id: r53014
2010-10-04 09:23:06 +00:00
Filippos Karapetis
165432ad19 SCI: Several corrections for magnifier cursors
svn-id: r53010
2010-10-04 06:05:34 +00:00
Filippos Karapetis
27745c2143 SCI: Added missing initialization of _zoomBitmap
svn-id: r53007
2010-10-03 23:55:28 +00:00
Filippos Karapetis
ce8a2fbbbc SCI: Added support for SCI1.1+ magnifier cursors (bug #3034973).
These are special cursors which zoom parts of a view dynamically. Examples
are Freddy Pharkas, when reading the prescription with the whiskey and LB2,
when using the magnifying glass on the Rosetta Stone

svn-id: r53003
2010-10-03 22:41:35 +00:00
Martin Kiewitz
fa7c6a9969 SCI: adding workaround for platform-specific
incompatibility with some sierra games. Some games open a new menu, set mouse cursor within that menu and expect the mouse cursor to be in there and will close it, if it's outside. In case of Wiimote/touch interfaces this logic won't work of course. Fixes island of dr. brain and QfG1VGA on Wii and touch-interface platforms

svn-id: r52474
2010-08-31 15:50:46 +00:00