Max Horn
4ffec28103
SCI: Move selector stuff to new header; reorder k_argc & k_argp param of invoke_selector
...
svn-id: r47665
2010-01-29 11:03:54 +00:00
Filippos Karapetis
493350e905
SCI2.1: Added a dummy function for kRobot (with some info on its parameters), assigned IsOnMe to OnMe (needs verification, but seems to be correct) and changed kSave(8) to return nonzero. The menu of the Phantasmagoria demo is now shown, together with its creepy music :)
...
svn-id: r47648
2010-01-28 19:57:14 +00:00
Martin Kiewitz
90712388f8
SCI: added workaround for laura bow 2 game menu (same issue as in pharkas)...sigh
...
svn-id: r47611
2010-01-27 21:33:51 +00:00
Martin Kiewitz
155660c443
SCI: changed the pharkas workaround to also cover pharkas-floppy demo
...
svn-id: r47606
2010-01-27 19:28:13 +00:00
Matthew Hoops
12569a5f32
Only reshow the cursor after playing a video if it was originally showing beforehand. This fixes the GK1 demo menu.
...
svn-id: r47602
2010-01-27 16:54:58 +00:00
Martin Kiewitz
e0d05a482c
SCI: changed flags (uint16) to force (bool) for set/merge palette methods
...
svn-id: r47578
2010-01-26 22:45:52 +00:00
Walter van Niftrik
473d8b7c2f
SCI: Add string support for odd-offset pointers into reg_t-based segments.
...
svn-id: r47572
2010-01-26 19:51:08 +00:00
Martin Kiewitz
fd5e26806e
SCI: dont fix line color for amiga 32 color
...
svn-id: r47561
2010-01-25 20:46:09 +00:00
Martin Kiewitz
ba7eb79074
SCI: removed EGA mapping for amiga games, cause changing K_GRAPH_GET_COLORS_NR to support amiga also fixes it - also fixes other odd issues like the ones in kq5 and castle of dr. brain/sq1 (thx. to waltervn for finding this out)
...
svn-id: r47560
2010-01-25 20:44:13 +00:00
Walter van Niftrik
e7e9006122
SCI: Fix list control scrolling in Jones EGA and VGA.
...
svn-id: r47511
2010-01-24 18:57:23 +00:00
Filippos Karapetis
5b4fcfdbcb
Added some skeleton code for kPalVary()
...
svn-id: r47485
2010-01-23 21:33:24 +00:00
Martin Kiewitz
e99adedac2
SCI: separate fix function for kDrawControl rects
...
svn-id: r47462
2010-01-23 11:00:24 +00:00
Martin Kiewitz
81e85b3186
SCI: dont swap coordinates on rects when both are "wrong", will fix button placement and gfx corruption when challenging jones (caused by duplicate buttons having lower right 0, 0) - function needs some more work
...
svn-id: r47446
2010-01-22 23:02:33 +00:00
Martin Kiewitz
fa80444a12
SCI: restoring r47412, we were right all along but this "hack" was done on the sierra sci interpreter for jones ega/vga only (talkie NOT included). So this restore does it game specific now, causing no regressions anywhere else. We detect jones/talkie as "jones" as well, may cause regressions for talkie
...
svn-id: r47445
2010-01-22 22:34:14 +00:00
Martin Kiewitz
4500910b49
SCI: reverting r47412, change was incorrect and also resulted in broken animations inside text boxes in kq5. jones also uses hardcoded -1 priority for control icons.
...
svn-id: r47444
2010-01-22 19:25:48 +00:00
Martin Kiewitz
e85d2a023d
SCI: control icons now use objects priority selector instead of hardcoded priority 255. fixes jones speech bubbles
...
svn-id: r47412
2010-01-20 21:59:12 +00:00
Martin Kiewitz
49d3ba06bf
SCI: kDrawCel workaround documented and not temporary anymore
...
svn-id: r47409
2010-01-20 19:45:42 +00:00
Martin Kiewitz
0b2453aed8
SCI: workaround for game menu/quit menu in freddy pharkas till vm issue is resolved
...
svn-id: r47407
2010-01-20 17:56:00 +00:00
Martin Kiewitz
e7c1a34b3f
SCI: Remove upper 4 bits when drawing lines on EGA games (fixes window colors in kq1 and others)
...
svn-id: r47385
2010-01-19 17:45:14 +00:00
Martin Kiewitz
67f22f83d8
SCI: kDisposeWindow - use reanimate when argc == 1 (fixes iceman window removal)
...
svn-id: r47341
2010-01-17 13:07:50 +00:00
Martin Kiewitz
0d81207e68
SCI: adjust kNewWindow to support argc==15 (on mac according [md5])
...
svn-id: r47308
2010-01-15 15:37:40 +00:00
Martin Kiewitz
69c1de90e4
SCI: another change to reanimate behaviour of kDisposeWindow
...
svn-id: r47300
2010-01-14 20:56:46 +00:00
Martin Kiewitz
f1696ce7ef
SCI: change on reanimate kDisposeWindow behaviour, fixes sq5 window removal
...
svn-id: r47299
2010-01-14 20:53:37 +00:00
Filippos Karapetis
33db6acd7f
Changed all kGraph calls which handle rectangles to use kGraphCreateRect(). Also, changed kGraphCreateRect() to return a rect, rather than update a rect pointer
...
svn-id: r47253
2010-01-11 16:28:46 +00:00
Filippos Karapetis
6d53dfe917
Some portrait-related changes, to be used when portrait loading/unloading is done. Also, added a comment on where the class is used
...
svn-id: r47251
2010-01-11 14:12:52 +00:00
Filippos Karapetis
6a07bbd5f4
Moved all the cache limits inside helpers.h and removed an obsolete TODO
...
svn-id: r47250
2010-01-11 12:23:04 +00:00
Filippos Karapetis
8c4e0de67d
Hide the mouse cursor while a video is being played
...
svn-id: r47240
2010-01-11 09:28:00 +00:00
Martin Kiewitz
d2d740af2a
SCI: fixed typo when getting resourceId on kPortrait call - fixes resource not found in kq6 within pawn shop
...
svn-id: r47223
2010-01-10 11:33:10 +00:00
Martin Kiewitz
231e122c63
SCI: updateBox now also supports hires mode
...
svn-id: r47219
2010-01-10 09:42:55 +00:00
Martin Kiewitz
da09ee6732
SCI: switching to hires kDrawCel when 8th parameter is passed, fixed kDrawCel port adjust - fixes kq6 hires inventory
...
svn-id: r47217
2010-01-10 08:55:19 +00:00
Martin Kiewitz
140b22a374
SCI: implement crazy hack that fixes coordinates of some cel placements. I'm not sure if thats what sierra sci actually does or if we get coordinates 0,0 due some error somewhere. Fixes portrait window placement in kq6 - strangely they are still not at the correct height perhaps related to not adjusting "correctly" (whatever this means in this ugly mess that hires was implemented) inside BitsSave()
...
svn-id: r47140
2010-01-07 20:29:48 +00:00
Martin Kiewitz
9577a45cdd
SCI: fixed save/restorebits within screen class for displayscreen case, fixes kq6 menu bar
...
svn-id: r47125
2010-01-07 15:50:58 +00:00
Martin Kiewitz
7f358e3bbd
SCI: changed kernel signature for kDrawCel, enabled upscaled hires savebox code ("crashed" before because afterwards kDrawCel will get the handle from the savebox call)
...
svn-id: r47121
2010-01-07 15:25:03 +00:00
Martin Kiewitz
edc7fcf121
SCI: sync displayScreen with framebuffer after successful video playback (fixes background vanishing in mainmenu of gk1demo)
...
svn-id: r47089
2010-01-06 18:59:39 +00:00
Filippos Karapetis
254850aa23
- Some work on kLocalToGlobal and kGlobalToLocal for SCI2+
...
- Removed the custom types MemoryHandle, LoopNo, CelNo (cause we ended up having code like LoopNo loopNo = ...)
- Improved the sanity checks in frameOut()
svn-id: r47087
2010-01-06 17:25:54 +00:00
Filippos Karapetis
d99aa0f126
More renaming
...
svn-id: r47009
2010-01-05 01:37:57 +00:00
Filippos Karapetis
84cd8d2dc7
Renamed /gui to /graphics and /sfx to /sound, to better illustrate their purpose
...
svn-id: r47007
2010-01-05 01:22:16 +00:00
Filippos Karapetis
f66d5a7f53
SCI: Removed the old graphics code
...
svn-id: r47005
2010-01-05 00:54:53 +00:00
Martin Kiewitz
01eb329be2
SCI: kPalette / animate adjustments to behave more like sierra sci, also doesnt crash in island of brain anymore
...
svn-id: r46975
2010-01-04 16:44:58 +00:00
Filippos Karapetis
5560f93c2a
SCI/new sound code: update sound cues when kGetEvent() is called, instead of kAnimate(), fixes music fading in LSL3
...
svn-id: r46973
2010-01-04 16:16:58 +00:00
Filippos Karapetis
74ae4ecc48
Added a comment for the reason updateSci0Cues() is called within kAnimate()
...
svn-id: r46833
2010-01-01 15:35:27 +00:00
Filippos Karapetis
afc4bc1295
SCI/new music code:
...
- Resolved a deadlock with the mixer, and added appropriate mutexes (a result of the fact that SCI mixes MIDI and digital audio in the same list)
- Fixed sound playing when loading games, by properly resetting the MIDI driver
- Reverted savegame version to 14 - the changes in versions 15 and 16 don't have any effect on the currently enabled old music code, and the new music code is disabled by default, and is still prone to changes
- Now saving/loading signal, loop and hold for each sound, as well as reverb
- Added stub code for setting reverb and channel hold
- The signal, loop and hold values of each song are cached, like in SSCI and like what happens in Greg's SCI implementation. This allows a clear separation of the engine code from the rest of the engine. Reverted commits 46792 and 46797
- Removed duplicate song list accessing code
- Song cues are now updated in kAnimate for SCI0, like the old music code does, to compensate for the fact that SCI0 didn't poll for music changes via cmdUpdateCues, like what SCI01 and newer do
- Cleanup
svn-id: r46812
2010-01-01 06:41:52 +00:00
Filippos Karapetis
bcc33871c1
The wrapper for the VMD decoder is only used in the SCI engine for SCI32 games, so moved it inside the engine, instead of common code. Added support for VMD video playing from the "play_video" console command
...
svn-id: r46737
2009-12-30 10:09:48 +00:00
Filippos Karapetis
fabe51c129
Renamed gameName -> gameId, to keep the same vocabulary everywhere
...
svn-id: r46635
2009-12-27 12:54:03 +00:00
Filippos Karapetis
69fa167902
SCI32: The view related functions pass a view object as parameter, and the engine should deduce the parameters it needs from that object. Added stub view functions based on that fact. Also, added a sanity check in kCelHigh and kCelWide
...
svn-id: r46527
2009-12-24 13:50:50 +00:00
Matthew Hoops
ef79d7f017
SCI32:
...
- Fully implement kArray and kIsHiRes and mostly implement kString (printf and atoi subfunctions still missing).
- Add a dummy SciGui class for SCI32 to bypass the views. Gabriel Knight 1 will now play the Sierra logo music and the main menu music.
- Some other minor SCI32 changes.
svn-id: r46462
2009-12-21 14:32:54 +00:00
Filippos Karapetis
2a3cbcbc57
Fixed text controls when subtitles are enabled in multilingual SCI01 games
...
svn-id: r46461
2009-12-21 14:06:47 +00:00
Filippos Karapetis
0c1b646c7f
- Started wrapping the current sound code around appropriate defines
...
- Introduced a new resource type, SoundResource, used in the new music code
svn-id: r46421
2009-12-19 16:19:53 +00:00
Martin Kiewitz
df422c0894
SCI: Fix kSetCursor (Sci1.1) to behave like Sierra Sci (fixes cursor hiding/showing in kq6)
...
svn-id: r46224
2009-11-30 19:34:45 +00:00
Filippos Karapetis
ece0444f9c
Changed some comments back to DOxygen (inline) style and removed some more dead code
...
svn-id: r46029
2009-11-20 22:41:17 +00:00