Commit Graph

16603 Commits

Author SHA1 Message Date
Martin Kiewitz
93b2336aa2 SCI: demo of fairy tales uses regular offTop
svn-id: r50168
2010-06-22 21:01:34 +00:00
Martin Kiewitz
a836f965f8 SCI: set offTop to 26 for mixed up fairy tales to fix all sorts of non-fully-removed windows
svn-id: r50166
2010-06-22 20:40:41 +00:00
Matthew Hoops
99807b8894 Fix uncompressed MIDI in T7G Mac.
svn-id: r50165
2010-06-22 19:39:30 +00:00
Jordi Vilalta Prat
33b991ee9d Groovie: Add support for the compressed MIDI files of T7G Mac.
svn-id: r50163
2010-06-22 19:21:05 +00:00
Martin Kiewitz
38cf6aa3e4 SCI: implemented kAssertPalette and a palvary fix for ::set, fixes erana's place in qfg1vga nighttime
svn-id: r50162
2010-06-22 19:01:43 +00:00
Filippos Karapetis
56bf0c0e63 Fixed kMergePoly after discussing with waltervn so that it correctly returns a pointer to an empty (for now) polygon array. This means that you can walk over enemy bodies after killing them in QFG1VGA, but at least it fixes the crashes after killing monsters
svn-id: r50160
2010-06-22 18:33:19 +00:00
Filippos Karapetis
3a394793b6 Fixed 2 crashes in QFG1VGA, when dying:
- Ignoring a non-game breaking script bug (modifying the "longSong" object with argc = 2)
- Don't pop the callk stack frame if the stack is empty - fixes a crash when restoring from the death screen

svn-id: r50157
2010-06-22 18:25:15 +00:00
Martin Kiewitz
079e5c3135 SCI: fixed typo
svn-id: r50154
2010-06-22 17:13:44 +00:00
Martin Kiewitz
9ca43423b4 SCI: kPalVary(SetTarget) implemented
svn-id: r50153
2010-06-22 17:05:00 +00:00
Max Horn
5b24d39cdd SCUMM: Specify various file sizes of detection files
svn-id: r50151
2010-06-22 16:10:16 +00:00
Max Horn
33347e12bd SCUMM: Add a debug message to detectGames() to help find filesizes of detection files
svn-id: r50150
2010-06-22 16:09:50 +00:00
Max Horn
90a1d7c609 SCUMM: Add Japanese FOA CD version from tracker #3017219
svn-id: r50149
2010-06-22 16:09:27 +00:00
Martin Kiewitz
3c4bfa6cac SCI: removing unneeded capacity uint from r50143
svn-id: r50147
2010-06-22 15:45:59 +00:00
Martin Kiewitz
66c286d096 SCI: kPalVary(setTarget) now triggers an error
svn-id: r50146
2010-06-22 15:33:46 +00:00
Matthew Hoops
bb9f556c36 Add support for the QFG3 demo audio map and audio resources. Based on a patch by Walter.
svn-id: r50144
2010-06-22 15:18:55 +00:00
Martin Kiewitz
a82ca9de5c SCI: change midi queue to Common::Array and make it resize itself if needed instead of error()
svn-id: r50143
2010-06-22 15:05:09 +00:00
Filippos Karapetis
c28fa2cf19 Reverted the code which handles objects without a base object when loading, for now. This possibly indicates an issue related to the garbage collector
svn-id: r50142
2010-06-22 15:03:19 +00:00
Filippos Karapetis
5855cd7127 The volume subop of kDoAudio returns the previous volume in SCI2.1, but not in earlier versions
svn-id: r50141
2010-06-22 15:01:45 +00:00
Matthew Hoops
019657fcd6 Fully implement xvga1300_carriage, the gallow's carriage is now fully usable.
svn-id: r50139
2010-06-22 14:03:55 +00:00
Filippos Karapetis
53b82298e8 Stop saving the buffer, script and heap sizes of each script in saved games
svn-id: r50137
2010-06-22 08:57:25 +00:00
Matthew Hoops
e3b3641db2 Finish implementation of the jspit elevator logic.
svn-id: r50136
2010-06-22 05:10:43 +00:00
Matthew Hoops
727841ef91 In SCI32, kDoAudio subop 10 is no longer CD audio. Just stub it off for now.
svn-id: r50134
2010-06-21 22:58:33 +00:00
Martin Kiewitz
b5dffc5aa3 SCI: fades already send out commands directly
svn-id: r50131
2010-06-21 22:15:33 +00:00
Martin Kiewitz
1041067a0c SCI: instead of queueing inside midiparser, we are queueing now globally in SciMusic, also some little cleanup
svn-id: r50130
2010-06-21 22:07:03 +00:00
Max Horn
bbad3f333a Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
2010-06-21 21:36:36 +00:00
Max Horn
49448af6cb AGI: Turn some more AGI static functions into AgiEngine methods
svn-id: r50127
2010-06-21 21:34:06 +00:00
Max Horn
c7a9865a73 AGI: Change a static var to member var AgiEngine::_lastTickTimer
svn-id: r50126
2010-06-21 21:33:45 +00:00
Max Horn
e7da62763e AGI: Turn timerHack and curLogic into AgiEngine members; get rid of some #defines
svn-id: r50125
2010-06-21 21:33:22 +00:00
Max Horn
df569a6c82 AGI: Change AGI commands/opcodes to member methods
svn-id: r50124
2010-06-21 21:32:56 +00:00
Filippos Karapetis
9d5d9e13ae Fixed the demo of Hoyle 4 by adding two selectors it needs "syncTime" and "syncCue". Usually, games that need them are CD talkie versions which have a selector vocabulary, but Hoyle 4 is an exception
svn-id: r50122
2010-06-21 21:25:13 +00:00
Filippos Karapetis
97dd94019c When loading or restarting, stop script processing if the game is being loaded or is restarting and the stack position has changed (it's always changed when loading) - fixes the case where the VM is trying to parse an invalid script
svn-id: r50121
2010-06-21 20:17:59 +00:00
Torbjörn Andersson
38b172e8e5 Fixed some Cppcheck warnings. (There are plenty left, if anyone's wondering.)
svn-id: r50120
2010-06-21 19:32:25 +00:00
Matthew Hoops
0ab7a16e45 Fix the Hoyle 4 (Hoyle Classic) demo's top offset. It currently errors out later from lacking a selector (static selector problem).
svn-id: r50118
2010-06-21 19:07:41 +00:00
Matthew Hoops
9ecbffe11a Add a workaround for a MUMG script bug, MUMG now works again.
svn-id: r50117
2010-06-21 15:51:04 +00:00
Martin Kiewitz
4a4fcb19dd SCI: added fixme about r50110/r50073
svn-id: r50115
2010-06-21 15:05:48 +00:00
Matthew Hoops
faef4ab349 Check against the signature of Groovie v2 cursors with MKID_BE, makes it easier to see what it's doing.
svn-id: r50114
2010-06-21 14:44:18 +00:00
Martin Kiewitz
cfcf53bec0 SCI: fix regression of r50073, allNotesOff() now directly sends to driver again. If we send to queue, queue will never actually get processed and even if it was, the channels wouldnt be mapped anymore anyway
svn-id: r50110
2010-06-21 10:51:14 +00:00
Martin Kiewitz
8fce660090 SCI: also set throttle trigger on kPalette(animate)
svn-id: r50109
2010-06-21 10:40:48 +00:00
Martin Kiewitz
98196b8af6 SCI: GfxPalette::kernelSetIntensity() now also triggers throttler - somewhat "fixes" lb2cd when selecting play game
svn-id: r50108
2010-06-21 10:14:04 +00:00
Matthew Hoops
473ae1c11e Cleaner fix for the QFG4 demo audio map problem.
svn-id: r50104
2010-06-20 23:41:54 +00:00
Matthew Hoops
72534afea9 Ignore the broken 65535x.map file in the QFG4 demo, mistakenly picked up when checking for patches. Audio now works there.
svn-id: r50102
2010-06-20 22:30:20 +00:00
Martin Kiewitz
7694993bef SCI: fixed typo
svn-id: r50101
2010-06-20 21:14:46 +00:00
Martin Kiewitz
6f195ae5a4 SCI: implemented kPalVary(changeTicks)
svn-id: r50100
2010-06-20 21:12:15 +00:00
Martin Kiewitz
4a83b2c5f6 SCI: properly implement kPalVary functionality within kDrawPic and transitions, so pharkas finally works w/o palette corruption
svn-id: r50099
2010-06-20 20:52:31 +00:00
Martin Kiewitz
66b9eaac34 SCI: adding timestamp update for frameout, fixes gk1 windows main menu
svn-id: r50094
2010-06-20 20:09:07 +00:00
Martin Kiewitz
3a9217dd5a SCI: disable palvary when reverse is fully done - fixes palette getting stuck in pharkas (the broken palette in there is actually not caused by palvary, it was just overwritten before by view palette updates and those dont occur when palvary is active)
svn-id: r50093
2010-06-20 20:05:00 +00:00
Martin Kiewitz
a22e294ca6 SCI: displaying debug warning again for kPalVary(init)
svn-id: r50092
2010-06-20 19:39:08 +00:00
Martin Kiewitz
d37a25cfee SCI: cleanup of SciPalette
svn-id: r50091
2010-06-20 19:18:33 +00:00
Martin Kiewitz
05e2bbcc33 SCI: dont display string set by kSetQuitStr
svn-id: r50090
2010-06-20 18:22:49 +00:00
Martin Kiewitz
3c6639eb86 SCI: implemented kPalVary(reverse) for pharkas, although there is a bug somewhere, not working 100%
svn-id: r50089
2010-06-20 18:20:05 +00:00
Matthew Hoops
ff785325ad Sort planes in kFrameOut by priority and keep plane/item priority separate as they represent two different things. Fixes various SCI32 graphical glitches. Most (all?) remaining glitches are because we don't yet handle kSignalFixedPriority.
svn-id: r50087
2010-06-20 17:17:46 +00:00
Martin Kiewitz
bb1358ae3b SCI: adding info about kPalVary(8) being SCI32 exclusive
svn-id: r50086
2010-06-20 17:14:58 +00:00
Martin Kiewitz
7ecff0a300 SCI: implementing kPalVary(2)
svn-id: r50085
2010-06-20 17:08:39 +00:00
Martin Kiewitz
e8262d989e SCI: adding code for kPalVary ticks == 0 case, fixes pharkas
svn-id: r50084
2010-06-20 16:48:52 +00:00
Martin Kiewitz
8fcb14d235 SCI: adding kPalVary update call to kFrameout - it's getting morning now in gabriel knight 1
svn-id: r50083
2010-06-20 16:36:34 +00:00
Martin Kiewitz
b016c16300 SCI: some kPalVary support - intro of island dr. brain works fine now
svn-id: r50082
2010-06-20 16:31:24 +00:00
Martin Kiewitz
7ce739f51b SCI: kPalVary - cleanup and some more code
svn-id: r50081
2010-06-20 15:01:31 +00:00
Martin Kiewitz
15ae4d8f59 SCI: fix r50078, we need to update timestamp for inbetween SCI1.1 games, but not on kPortrait palette changes
svn-id: r50079
2010-06-20 13:38:24 +00:00
Martin Kiewitz
d2a3f59bfb SCI: update timestamp like before for inbetween SCI1.1 games
svn-id: r50078
2010-06-20 13:30:40 +00:00
Martin Kiewitz
30f6e7824b SCI: update sys palette timestamp only on kDrawPic in SCI1.1, fixes intro of island of dr. brain
svn-id: r50077
2010-06-20 13:25:08 +00:00
Martin Kiewitz
871c9bddde SCI: removing unneeded parameters inside SciPalette, cleanup of SciPalette
svn-id: r50076
2010-06-20 13:15:45 +00:00
Martin Kiewitz
daf1429ca2 SCI: implementing reading of parameters for kPalVary(init) for argc 4 and argc 5
svn-id: r50075
2010-06-20 12:38:08 +00:00
Martin Kiewitz
36ca2ce421 SCI: some cleanup for kPalVary
svn-id: r50074
2010-06-20 12:21:57 +00:00
Martin Kiewitz
81f64c9e3e SCI: storing all manual midi commands now and actually sending them to driver during onTimer() - fixes mt32 emulation crashing during lsl5 piano scene
svn-id: r50073
2010-06-20 10:25:46 +00:00
Torbjörn Andersson
41990883bf Don't go into "menu input mode" unless the game currently allows the menus to
be displayed. I hope this is the correct fix to keep Police Quest 1 from
hanging if you press Escape while reading the newspaper in the briefing room.

svn-id: r50072
2010-06-20 09:51:11 +00:00
Paul Gilbert
110e03c87b Removed unused variables
svn-id: r50071
2010-06-20 07:06:22 +00:00
Paul Gilbert
fcdb7807a4 Implemented explicit transparency index support - the previous hardcoded index of 0 wasn't correct, since some sprites need that index
svn-id: r50070
2010-06-20 07:04:58 +00:00
Paul Gilbert
d6cd656f15 Added support for the alternate encoding for depth surfaces
svn-id: r50069
2010-06-20 05:25:34 +00:00
Martin Kiewitz
87132bd411 SCI: changing error to warning in ResMan::detectViewType()
svn-id: r50067
2010-06-19 22:14:15 +00:00
Martin Kiewitz
b0a36849da SCI: locking _mutex inside SciMusic::sendMidiCommand(MusicEntry *pSnd, uint32 cmd)
svn-id: r50065
2010-06-19 21:15:58 +00:00
Martin Kiewitz
ef67a37b54 SCI: fixing last uninitialized variable issue in MidiParser_SCI (hopefully)
svn-id: r50063
2010-06-19 20:37:53 +00:00
Martin Kiewitz
f3b8a5927d SCI: fixing another uninitialized variable usage issue - also limiting reset velocity to used channels only, same is true for setting voice count
svn-id: r50062
2010-06-19 20:23:55 +00:00
Martin Kiewitz
089f5bba14 SCI: stopping scripts from sending to unused channels manually (fixes sq1vga)
svn-id: r50060
2010-06-19 20:00:32 +00:00
Martin Kiewitz
24459b5842 SCI: reverting r50058 - we can't actually send to the channels at that time, because we do not own the channels at that point
svn-id: r50059
2010-06-19 19:47:22 +00:00
Martin Kiewitz
a845e8b859 SCI: move setVolume down inside loadMusic so that it actually affects the used channels
svn-id: r50058
2010-06-19 19:39:36 +00:00
Martin Kiewitz
447f127013 SCI: fixing uninitialized usage in MidiParser_SCI
svn-id: r50057
2010-06-19 19:16:42 +00:00
Martin Kiewitz
ed50ecd62d SCI: make channel remapping stop using channel 0 for mt32 - fixes playback accordingly (like lsl1 at the start)
svn-id: r50056
2010-06-19 19:06:58 +00:00
Martin Kiewitz
996bd693e0 SCI: resume when unable to locate base objects - fixes loading some saved games
svn-id: r50055
2010-06-19 19:04:35 +00:00
Martin Kiewitz
ab4e02422c SCI: free channels for channel remapping on stop and pause, instead of dispose - fixes qfg3 demo going out of channels
svn-id: r50054
2010-06-19 17:43:13 +00:00
Martin Kiewitz
26e4e0e345 SCI: cleanup view decompression code
svn-id: r50053
2010-06-19 17:12:17 +00:00
Max Horn
32668b553f AGI: Get rid of GID_SQ0
svn-id: r50049
2010-06-19 11:08:41 +00:00
Max Horn
0c93154eb9 AGI: Fix detection of AGI Tetris and Caitlyn's Destiny
svn-id: r50048
2010-06-19 11:08:16 +00:00
Martin Kiewitz
710f0257eb SCI: replacing the keyboard size check for direction type detection with checking for script 933 (pseudoMouse) instead - this is better because its working multiplatform
svn-id: r50047
2010-06-19 10:57:01 +00:00
Martin Kiewitz
101218c1b6 SCI: added TODO for keyboard driver size check, maybe this whole stuff isn't needed at all
svn-id: r50046
2010-06-19 10:28:41 +00:00
Martin Kiewitz
a7fa0649df SCI: implemented checking of keyboard driver in case of SCI1EGA/EARLY, also renamed SCI_EVENT_JOYSTICK to SCI_EVENT_DIRECTION
svn-id: r50045
2010-06-19 09:46:04 +00:00
Nicola Mettifogo
5328abe2f0 Cleanup.
Got rid of the legacy "location.part" string handling in BRA.

svn-id: r50042
2010-06-19 04:51:31 +00:00
Nicola Mettifogo
96d4ae0fcc Cleanup some more state when switching part in BRA.
svn-id: r50041
2010-06-19 04:51:14 +00:00
Nicola Mettifogo
de7de460e8 Use the new _nextPart member switching part from the menu in BRA.
svn-id: r50040
2010-06-19 04:51:00 +00:00
Nicola Mettifogo
d7a165b9f2 Implemented PART command for BRA, largely based on patch #3005434 by fuzzie.
svn-id: r50039
2010-06-19 04:50:44 +00:00
Nicola Mettifogo
5b3075bd65 Guarded the command execution suspension for NS demo (this was due in r38662 - see bug #2619824).
svn-id: r50038
2010-06-19 02:51:03 +00:00
Nicola Mettifogo
61c40e2bd4 Save the context of a suspended list before resuming the execution, so that it can safely be suspended again. Patch 3004652 by fuzzie.
svn-id: r50037
2010-06-19 02:50:46 +00:00
Walter van Niftrik
f4b700c4c4 SCI: AdLib: add dummy instruments when there are only 48 in the patch
svn-id: r50035
2010-06-19 01:16:25 +00:00
Martin Kiewitz
25c86e8b03 SCI: set resulting type to keyboard+joystick for sci1middle+ in kMapKeyToDir - fixes keyboard controlling of mouse in all sorts of games - although this is not 100% done, the change actually happened inbetween sci1early, added fixme
svn-id: r50034
2010-06-18 22:16:05 +00:00
Max Horn
da28fde4c6 AGI: Change some #defines to enums
svn-id: r50033
2010-06-18 22:07:32 +00:00
Max Horn
7a8b8c88ae AGI: cleanup
svn-id: r50032
2010-06-18 22:06:56 +00:00
Max Horn
e5fcbc0c3a AGI: Fix serguei1/serguei2/sqx detection
svn-id: r50031
2010-06-18 22:06:31 +00:00
Max Horn
75b7b54fe1 SCI: Add mac SQ1 & SQ3
svn-id: r50030
2010-06-18 22:06:13 +00:00
Martin Kiewitz
602b32175a SCI: fixing detection of vga sci11 views for ega games (original change in r50025)
svn-id: r50028
2010-06-18 18:55:17 +00:00
Martin Kiewitz
8c8ce14164 SCI: not using views coming from patch files anymore for detecting view type
svn-id: r50027
2010-06-18 18:49:06 +00:00
Martin Kiewitz
3197dfc033 SCI: added more description about changes in r50025
svn-id: r50026
2010-06-18 17:53:35 +00:00
Martin Kiewitz
636ef64c68 SCI: making vga views work in ega games :P
svn-id: r50025
2010-06-18 17:40:13 +00:00
Filippos Karapetis
6f7f6572c4 Fixed invalid memory read in LSL6 hires - kRobot(1) returns an integer
svn-id: r50024
2010-06-18 17:34:34 +00:00
Martin Kiewitz
8a8480c0ca SCI: fix typo when setting EGA palette
svn-id: r50023
2010-06-18 17:20:09 +00:00
Filippos Karapetis
680f7c897a Fixed a problem in kAnimate which occurred when a list was modified by a call (e.g. in KQ1 demo, PQ2)
svn-id: r50022
2010-06-18 15:40:18 +00:00
Filippos Karapetis
5d378574a4 Fixed show_instruments to ignore instruments in Sierra's special MIDI channel 15, and updated the comment regarding PQ2 accordingly (it only has 2 incorrect instruments)
svn-id: r50021
2010-06-18 15:18:14 +00:00
Filippos Karapetis
874eeb2370 Added hints inside validate_arithmetic(), together with some code useful for debugging. Some cleanup
svn-id: r50020
2010-06-18 14:48:39 +00:00
Filippos Karapetis
b152f6d68f Added an explanation about the invalid instruments used when using the Adlib driver in PQ2
svn-id: r50019
2010-06-18 14:36:22 +00:00
Martin Kiewitz
562f8a9463 SCI: implementing fading for sci1 only for used channels of the object, fixes lsl1 music issues when going right at the start
svn-id: r50018
2010-06-18 13:36:29 +00:00
Martin Kiewitz
661a170c86 SCI: change error() inside adlib driver ::setPatch() to warning() again, fixing pq2
svn-id: r50017
2010-06-18 13:05:08 +00:00
Martin Kiewitz
919c348c5a SCI: pseudo-implemented 0x72 and 0x73 for kDisplay used by longbow-demo, although sierra sci doesn't support them at all
svn-id: r50016
2010-06-18 13:02:48 +00:00
Filippos Karapetis
543610d4d4 Don't throw a warning when we can't find hires content
svn-id: r50015
2010-06-18 12:15:33 +00:00
Lars Skovlund
8ade66ba13 SCI: Unbreak diskdump console command, maybe others
svn-id: r50014
2010-06-18 10:49:26 +00:00
Max Horn
5a95c2a652 SCI: Doxygenify some comments
svn-id: r50013
2010-06-18 09:37:25 +00:00
Max Horn
bb528d894c SCI: Rewrap some overlong comments
svn-id: r50012
2010-06-18 09:37:06 +00:00
Martin Kiewitz
8493edf082 SCI: changing error to warning inside detectHires() for gk1 to work again...
svn-id: r50008
2010-06-18 06:47:16 +00:00
Martin Kiewitz
08ff57cc97 SCI: partially revert r49983 - all of those are not implemented in sierra sci or not even pseudo-valid in there. all of those seem to be script bugs
svn-id: r50007
2010-06-18 05:55:27 +00:00
Martin Kiewitz
8f655615d7 SCI: reverting #49978, it worked correctly. the new values contain the full height/width of the picture (may be much larger cause of scrollable areas) and we actually don't want that. the values before and now contain the height/width of the on-screen picture size - although this may contain 0, 0 for low-res games, but that's fine then
svn-id: r50006
2010-06-18 05:40:12 +00:00
Filippos Karapetis
cccfed3ba3 Cleanup
svn-id: r50004
2010-06-18 02:30:19 +00:00
Filippos Karapetis
98944b8171 Added information regarding a FIXME
svn-id: r50002
2010-06-18 02:29:20 +00:00
Matthew Hoops
8bd71a6ab2 Cleanup; add a TODO.
svn-id: r50000
2010-06-18 02:29:04 +00:00
Matthew Hoops
492f748a4b Add a comment on the unknown switch command argument.
svn-id: r49999
2010-06-18 02:28:58 +00:00
Filippos Karapetis
773f3bf145 Changed another warning into an error. Cleanup
svn-id: r49995
2010-06-18 02:23:30 +00:00
Filippos Karapetis
0eee4e79bf Changed an assert into a warning with a FIXME (happens in SQ1)
svn-id: r49994
2010-06-18 02:16:00 +00:00
Filippos Karapetis
31930b6d09 Error out on unimplemented kDeviceInfo() calls
svn-id: r49993
2010-06-18 02:09:12 +00:00
Filippos Karapetis
01cb1cf011 Turned more warnings into errors, some cleanup
svn-id: r49990
2010-06-18 02:03:28 +00:00
Filippos Karapetis
8f761de15f Added a new subop of kPalVary (PQ4)
svn-id: r49987
2010-06-18 01:48:56 +00:00
Filippos Karapetis
2d61dd8608 Fixed invalid memory access in SQ6
svn-id: r49986
2010-06-18 01:38:08 +00:00
Filippos Karapetis
7a22e491e3 Marked the KQ1 demo workaround as a workaround
svn-id: r49985
2010-06-18 01:29:07 +00:00
Filippos Karapetis
30ea5f3ad2 Added a workaround for the KQ1 demo (looks like a script bug)
svn-id: r49984
2010-06-18 01:27:25 +00:00
Filippos Karapetis
ac4659b92a Added several unimplemented kDisplay subops, as well as a new sound command, found in the demo of Longbow
svn-id: r49983
2010-06-18 01:11:00 +00:00
Walter van Niftrik
b453d139d4 SCI: (Temporary?) workaround for firmware bug in common USB-MIDI cables.
svn-id: r49982
2010-06-18 01:09:40 +00:00
Filippos Karapetis
d2a9fdae26 Added stubs for kPalVary, subops 2 and 5 (XMAS '92, QFG4 demo)
svn-id: r49981
2010-06-18 00:59:10 +00:00
Filippos Karapetis
949493d141 Fixed invalid memory read in GK1CD
svn-id: r49980
2010-06-18 00:49:55 +00:00
Filippos Karapetis
880e07250e Added warning about unhandled kGraph subop 1 (GK1CD)
svn-id: r49979
2010-06-18 00:37:56 +00:00
Filippos Karapetis
660ae052c8 Fixed a bug in detectHires(), so that it actually works
svn-id: r49978
2010-06-18 00:36:20 +00:00
Filippos Karapetis
39e77edbb7 Process kAddAfter with 4 parameters (Torin's Passage)
svn-id: r49976
2010-06-18 00:05:41 +00:00
Filippos Karapetis
6946167f34 Strict mode: error out on unhandled subops, to note if they actually exist and where they're used
svn-id: r49975
2010-06-17 23:53:30 +00:00
Filippos Karapetis
c9c9a21a08 Renamed error -> errorNum to avoid name clashes with error()
svn-id: r49974
2010-06-17 23:52:17 +00:00
Filippos Karapetis
db70d66e4a Strict mode: Changed several warnings due to logic bugs into errors. If an error pops up from these ones, please add the game where it occurred and the steps to reproduce the error before turning it into a warning
svn-id: r49973
2010-06-17 23:50:28 +00:00
Filippos Karapetis
9c1ec81d76 Strict mode: Turned several severe errors (almost all detection related) into errors, instead of warnings
svn-id: r49972
2010-06-17 23:45:38 +00:00
Lars Skovlund
f977faaf9f SCI: Fix a few errors in PlayVMD comment.
svn-id: r49971
2010-06-17 23:44:01 +00:00
Filippos Karapetis
50c3a087e3 Reduced header dependency
svn-id: r49970
2010-06-17 23:20:39 +00:00
Max Horn
b474a72d18 SCI: Remove incorrect gameid check
svn-id: r49969
2010-06-17 23:14:57 +00:00
Max Horn
359be0c066 SCI: Change SciEngine's 'char *getGameID()' to 'Common::String getGameId()'
svn-id: r49968
2010-06-17 23:14:34 +00:00
Max Horn
78cd1aa145 SCI: Remove hack related to compiled kernel signatures.
Also change some things to comply to our code formatting conventions.

svn-id: r49967
2010-06-17 23:13:54 +00:00
Max Horn
cfcbdf8656 SCI: Remove selector_name function, some cleanup
svn-id: r49966
2010-06-17 23:13:30 +00:00
Max Horn
337711d321 SCI: Get rid of duplicate _system member in SciEngine
svn-id: r49965
2010-06-17 23:12:59 +00:00
Max Horn
69fb703246 SCI: cleanup scancode rows code
svn-id: r49964
2010-06-17 23:12:38 +00:00
Max Horn
2556ea192c SCI: Turn _modifierStates into member of class EventManager
svn-id: r49963
2010-06-17 23:12:17 +00:00
Max Horn
06997c0da6 SCI: Update FIXME in SegmentManager
* Turn one FIXME into a simple comment
* Rewrap comment to 80 columns
* Turn several warnings into errors

svn-id: r49962
2010-06-17 23:11:56 +00:00
Max Horn
fabba55e6d SCI: cleanup
svn-id: r49961
2010-06-17 23:11:34 +00:00
Max Horn
a2bcf9ac31 SCI: Rename sciEvent to SciEvent
svn-id: r49960
2010-06-17 23:11:12 +00:00
Max Horn
8e07a1e167 SCI: Moved the event code a little bit around.
* Move sleep() from EventManager to SciEngine
* Rename EventManager methods: get -> getSciEvent, and
  getFromScummVM -> getScummVMEvent
* Make scancode_rows static const
* Turn altify & numlockify from EventManager methods into static
  functions (and comment out the currently unused numlockify)

svn-id: r49959
2010-06-17 23:10:37 +00:00
Lars Skovlund
37434d86ae SCI: PlayVMD(1): Hmmm. Don't print gammaBoost etc if they aren't used
svn-id: r49953
2010-06-17 22:08:07 +00:00
Lars Skovlund
d1964ec18b Add additional documentation and code to PlayVMD(1) describing the
myriad parameters settable here, and dump actual parameters passed

svn-id: r49952
2010-06-17 22:05:28 +00:00
Matthew Hoops
82c36b6b26 Only do video scaling when required (hopefully fixes SQ6). Adapt the scaling code to normal SCI videos as well.
svn-id: r49951
2010-06-17 21:00:45 +00:00
Filippos Karapetis
701d69d6e2 Don't show warnings for a known script bug in SQ4CD with the Sq4GlobalNarrator object
svn-id: r49950
2010-06-17 20:52:53 +00:00
Filippos Karapetis
c8dfa255a3 Fixed the selector console command (don't change the selector name to lowercase...)
svn-id: r49949
2010-06-17 20:49:33 +00:00
Martin Kiewitz
27741ee970 SCI: dont subtract offTop on wmgrPort when using old gfx functions - fixes about window in pq2
svn-id: r49947
2010-06-17 19:42:34 +00:00
Matthew Hoops
1cb4f703f1 Fix the QFG4 Demo: kStrSplit has been replaced with kRemapColors.
svn-id: r49939
2010-06-17 18:30:11 +00:00
Martin Kiewitz
5daa17473b SCI: applying forceRealMerge change to pq1 and qfg3 demo as well (see r49936) for now
svn-id: r49938
2010-06-17 16:36:01 +00:00
Martin Kiewitz
7bb48adda7 SCI: slightly change comment from r49936
svn-id: r49937
2010-06-17 16:09:06 +00:00
Martin Kiewitz
00ac852dc8 SCI: implement workaround for laura bow 2 demo, because that interpreter uses the old real palette merging from sci1 - some views contain a palette that has all colors marked as being used, which would overwrite sysPalette with blacks
svn-id: r49936
2010-06-17 16:06:01 +00:00
Torbjörn Andersson
1bbb9d7bd2 Fixed cppcheck warning.
svn-id: r49935
2010-06-17 15:46:01 +00:00
Matthew Hoops
f403d0f806 Don't translate both x and y of the rect in kOnMe if only one of the variables is negative. Fixes the GKEgo hotspot outside of the Madame Cazanoux's house.
svn-id: r49933
2010-06-17 15:02:18 +00:00
Filippos Karapetis
4e7b98db0c Removed a now obsolete FIXME (spotted by Fingolfin)
svn-id: r49932
2010-06-17 14:06:12 +00:00
Filippos Karapetis
36d92b4566 Fixed kLoad and kUnload (the resource type was incorrect)
svn-id: r49931
2010-06-17 14:05:05 +00:00
Travis Howell
45b23601e7 Add detection of original directory structure for Touche.
svn-id: r49929
2010-06-17 13:42:02 +00:00
Filippos Karapetis
0e365131ac Fixed wPlayAudio, and added some documentation on the 3 new kDoAudio subops. Digital sounds in Pharkas work again
svn-id: r49928
2010-06-17 12:29:58 +00:00
Filippos Karapetis
cf86b44793 M4/MADS: Some slight tweaks to the animation message chunks
svn-id: r49927
2010-06-17 12:13:27 +00:00
Martin Kiewitz
423029c027 SCI: implemented channel muting for sci1, finally fixes lsl5 paino scene with patti
svn-id: r49926
2010-06-17 11:54:54 +00:00
Martin Kiewitz
3a8e11767d SCI: decreasing channel given to us on cmdSendMidi by one, so mute command now matches the right channel. sierra sci also decreased by one (their channel is 1-based)
svn-id: r49924
2010-06-17 11:05:39 +00:00
Filippos Karapetis
81fe1aa19e Added some more information on some of the calls of kPlayVMD
svn-id: r49923
2010-06-17 08:55:08 +00:00
Martin Kiewitz
705d3c2d85 SCI: fixes regressions of r49905 (thx to digitall) - first we now find out what channels are used in sci0 as well, we are doing straight mapping for sci0 though - this fixes music in sci0 games, also fixing crash in sq1vga because of using null pMidiParser
svn-id: r49922
2010-06-17 08:41:04 +00:00
Filippos Karapetis
25496abe1b Added 2x scaling for VMD videos, for bugtesting (temporarily in SCI itself). It's currently not optimized much, but since the VMD decoder code will be revamped, we don't really care about performance at this point
svn-id: r49921
2010-06-17 07:53:57 +00:00
Filippos Karapetis
894ba682cd Moved kMulDiv together with the rest of the math functions, and kPlayVMD together with the rest of the video playing functions
svn-id: r49920
2010-06-17 07:26:06 +00:00
Torbjörn Andersson
f10b1a23f8 Fixed a few cppcheck errors.
svn-id: r49919
2010-06-17 05:40:48 +00:00
Matthew Hoops
39276e82db Fix another valgrind warning, thanks to digitall for spotting.
svn-id: r49918
2010-06-17 03:57:38 +00:00
Matthew Hoops
6ee4bf06ad Fix a valgrind warning in GfxCursor. Thanks to digitall for finding it.
svn-id: r49917
2010-06-17 03:53:13 +00:00
Matthew Hoops
2cba994bb4 Only hide/show cursor when playing a VMD if it was visible in the first place.
svn-id: r49914
2010-06-17 00:20:40 +00:00
Filippos Karapetis
a7b76c04d9 Added handling of VMD video files in kResCheck, fixes video playing in GK2
svn-id: r49913
2010-06-17 00:07:03 +00:00
Filippos Karapetis
18dc295a33 Hooked the VMD player in kPlayVMD. The VMD videos in the demo of Phantasmagoria 1 are shown now (e.g. the intro and the chapter beginning)
svn-id: r49912
2010-06-16 23:30:22 +00:00
Filippos Karapetis
93890a49c1 Added back the functionality to skip videos
svn-id: r49911
2010-06-16 23:28:20 +00:00
Filippos Karapetis
fa0011f512 Added a sanity check inside kMulDiv
svn-id: r49910
2010-06-16 21:59:21 +00:00
Filippos Karapetis
20d8de27ba Implemented the SCI2.1 kMulDiv kernel function. Walking in Torin's Passage is done correctly now, without leaving trails
svn-id: r49909
2010-06-16 21:56:39 +00:00
Filippos Karapetis
9b6f71d7cf Added handling for the SCI2.1 kPalette(1) call. The graphics in Torin's Passage are shown with the correct colors now
svn-id: r49908
2010-06-16 21:44:33 +00:00
Martin Kiewitz
289b668099 SCI: dont seek during init of music but on play, fixes assert when restoring saves caused by r49905 - because channel remapping isn't done at that point
svn-id: r49907
2010-06-16 21:23:47 +00:00
Martin Kiewitz
02c3397ddf SCI: fix debug command "show_instruments", got broken by r49905 on purpose
svn-id: r49906
2010-06-16 21:07:26 +00:00
Martin Kiewitz
af65de6e1a SCI: implement channel remapping for SCI1
svn-id: r49905
2010-06-16 21:02:58 +00:00
Max Horn
e7275161f4 SCI: Avoid using g_sci in resman (as it might not yet be inited)
svn-id: r49897
2010-06-16 00:24:16 +00:00
Max Horn
444a6b5976 Workaround bug #3003643 (MI1EGA German: Credit text incorrect)
svn-id: r49895
2010-06-15 23:12:34 +00:00
Martin Kiewitz
fea248ae2f SCI: make umlauts work in kFrameout for sci32
svn-id: r49890
2010-06-15 20:23:25 +00:00
Filippos Karapetis
9938661ffa Surface is a struct, not a class
svn-id: r49883
2010-06-15 18:36:05 +00:00
Torbjörn Andersson
93df097f39 Added the same quit/restart test to print() as we have in so many other places.
This makes it easier to quit the game during the text box in the King's Quest 3
into, and probably other places as well.

svn-id: r49881
2010-06-15 18:17:51 +00:00
Martin Kiewitz
c9ba23f2b4 SCI: only set mouse position, when cursor is visible (fixes non-stop, but escapeable mouse position setting to 0, 0 in eco quest 1 floppy during intro)
svn-id: r49874
2010-06-15 17:41:33 +00:00
Willem Jan Palenstijn
7c7054dbd1 Remove unnecessary svn:executable properties
svn-id: r49870
2010-06-15 17:14:38 +00:00
Martin Kiewitz
831e626ccd SDL: only change mouse cursor, when mouse is currently within our window, also enable mouse position changing again for SCI
svn-id: r49866
2010-06-15 16:58:03 +00:00
Matthew Hoops
cf38303497 Don't disable kPalVary for SCI32, the semantics have remained the same.
svn-id: r49865
2010-06-15 16:56:23 +00:00
Max Horn
b8d9cf2773 SCI: Pass resman to scanSource() methods
svn-id: r49863
2010-06-15 16:50:10 +00:00
Filippos Karapetis
90408a59cc Don't adjust the object's coordinates if the object does not belong to a plane in kIsOnMe(). It's now possible to start the interactive part of the Phantasmagoria 1 demo
svn-id: r49862
2010-06-15 16:36:09 +00:00
Martin Kiewitz
b25aba1d1e SCI: SciGui/SciGui32 gone for good...
svn-id: r49860
2010-06-15 15:44:24 +00:00
Filippos Karapetis
e94e91222c Fixed comments
svn-id: r49858
2010-06-15 15:02:52 +00:00
Filippos Karapetis
ab558b45d2 Fixed detective Mosely's hotspot in GK1 (day 1)
svn-id: r49857
2010-06-15 14:55:52 +00:00
Martin Kiewitz
ddb5a769a2 SCI: reset _gfxText16 for sci32, fixes gk1
svn-id: r49856
2010-06-15 13:52:06 +00:00
Matthew Hoops
45fe9a469e Fix wave patches.
svn-id: r49855
2010-06-15 13:45:12 +00:00
Martin Kiewitz
ba2de6dfa4 SCI: putting SciGui::init into SciEngine, removing it from SciGui(32)
svn-id: r49854
2010-06-15 13:34:40 +00:00
Martin Kiewitz
af5346e7ab SCI: calling wait() directly and removing it from SciGui
svn-id: r49853
2010-06-15 13:14:23 +00:00
Martin Kiewitz
891b568fde SCI: move textSize and textFonts and textColors inside gfxText16
svn-id: r49851
2010-06-15 13:01:07 +00:00
Max Horn
604f855889 SCUMM: Fix composeFileHashMap
svn-id: r49850
2010-06-15 12:36:04 +00:00
Max Horn
f387025e9b SCI: Add FIXME regarding audio specific code in Resource(Source)
svn-id: r49849
2010-06-15 12:35:39 +00:00
Max Horn
e4153ffa38 SCI: Add Resource::getNumber method
svn-id: r49848
2010-06-15 12:35:17 +00:00
Max Horn
f936443252 SCI: Saner and simpler conversion from msecs to ticks
svn-id: r49846
2010-06-15 12:34:33 +00:00
Max Horn
e62169c383 AGI: Specify bug reference for workaround
svn-id: r49845
2010-06-15 12:34:12 +00:00
Max Horn
d570e10b77 Modify makeAIFFStream to match the other sound decoder factories
svn-id: r49844
2010-06-15 12:33:54 +00:00
Max Horn
651e2760a3 Fix spelling, cleanup
svn-id: r49843
2010-06-15 12:33:20 +00:00
Max Horn
7a5ce0eddd SCI: Make Resource::_id protected
svn-id: r49842
2010-06-15 12:31:37 +00:00
Max Horn
2b24a1a2ad SCI: OOpify class ResourceId
svn-id: r49841
2010-06-15 12:31:16 +00:00
Max Horn
68eeef8f1a SCI: Add ResourceManager::getVolVersion()
svn-id: r49840
2010-06-15 12:21:29 +00:00
Martin Kiewitz
db4533533a SCI: fix changes from r49806
svn-id: r49839
2010-06-15 12:21:26 +00:00
Max Horn
96f1e29300 cleanup
svn-id: r49837
2010-06-15 12:20:24 +00:00
Max Horn
79c9be5d96 Reduce header dependencies
svn-id: r49836
2010-06-15 12:20:03 +00:00
Max Horn
583a966d8c SCI: Move decompress & readResourceInfo to Resource; more cleanup
svn-id: r49835
2010-06-15 12:19:39 +00:00
Max Horn
4392cdaee1 SCI: cleanup
svn-id: r49834
2010-06-15 12:19:14 +00:00
Max Horn
335e17af01 SCI: Move several methods from ResourceManager to Resource
svn-id: r49833
2010-06-15 12:18:57 +00:00
Max Horn
63d9cfb3bf SCI: Add ResourceManager::updateResource(); change some code to use addResource()
svn-id: r49832
2010-06-15 12:18:31 +00:00
Max Horn
b9a3a9c12d SCI: Move _associatedMap to VolumeResourceSource and make it const
svn-id: r49831
2010-06-15 12:18:07 +00:00
Max Horn
6667a71027 SCI: Move _audioCompression(Type|OffsetMapping) to AudioVolumeResourceSource
svn-id: r49830
2010-06-15 12:17:47 +00:00
Max Horn
1a0201f7e9 SCI: cleanup
svn-id: r49829
2010-06-15 12:17:25 +00:00
Max Horn
6248daccfc SCI: Get rid of ugly resMan params to ResourceSource methods
We might want to add a ResourceSource::_resMan member, but for
now I am not adding one on purpose; many more things might still
move between ResourceSource and ResourceManager, so we should
wait till the refactoring is complete.

svn-id: r49828
2010-06-15 12:17:05 +00:00
Max Horn
88663c9186 SCI: Merge ResourceManager::checkIfAudioVolumeIsCompressed into AudioVolumeResourceSource constructor
svn-id: r49827
2010-06-15 12:16:42 +00:00
Max Horn
348953c067 SCI: Make ResourceSource::_resourceFile const
svn-id: r49826
2010-06-15 12:16:17 +00:00
Max Horn
824dd44ddf SCI: Revise how ResourceManager is instantiated.
This should allow for better error handling. Also, it
means that g_sci->getResMan() returns a valid value much sooner,
allowing me to simplify some code.

Also added a note about potentially replacing Common::FSList usage
by Common::Archive (and FSNode by Archive/ArchiveMember ?). This
might be a way to unify the addAppropriateSources variants again.

svn-id: r49825
2010-06-15 12:15:52 +00:00
Max Horn
713e61acba SCI: Doxygen fixes
svn-id: r49824
2010-06-15 12:15:27 +00:00
Max Horn
4020500640 SCI: Rename ResourceSource members to follow _camelCase convention
svn-id: r49823
2010-06-15 12:15:05 +00:00
Max Horn
07b896802b SCI: Pass volume number to ResourceSource subclass constructors; make ResourceSource::volume_number const
svn-id: r49822
2010-06-15 12:14:39 +00:00
Max Horn
bb1336ca41 SCI: Add loadResource impls for WaveResourceSource and AudioVolumeResourceSource
svn-id: r49821
2010-06-15 12:14:15 +00:00
Max Horn
d032e6481b SCI: Add loadResource impls to MacResourceForkResourceSource and PatchResourceSource; move _macResMan to MacResourceForkResourceSource
svn-id: r49820
2010-06-15 12:13:52 +00:00
Max Horn
d4f16962d0 SCI: Move code from ResourceManager::loadResource to ResourceSource::loadResource
svn-id: r49819
2010-06-15 12:13:29 +00:00
Max Horn
d0f59edd96 SCI: Rename ResourceSource::resourceFile to _resourceFile
svn-id: r49818
2010-06-15 12:13:07 +00:00
Max Horn
d15e09fdc2 SCI: Merge MacResourceForkResourceSource::scanSource and ResourceManager::readMacResourceFork
svn-id: r49817
2010-06-15 12:12:44 +00:00
Max Horn
055ee6ab5b SCI: Add virtual method ResourceSource::scanSource
svn-id: r49816
2010-06-15 12:12:21 +00:00
Max Horn
89cf6f7cb1 SCI: Change ResourceManager::getVolume() to use new classes
* Add new ResourceSource::findVolume() virtual method
* Rename ResourceManager::getVolume() to findVolume(),
  and change it to use the new ResourceSource method
* Add some TODO comments pointing to further OOPification
  possibilities

svn-id: r49815
2010-06-15 12:11:56 +00:00
Max Horn
8c06425ee3 SCI: Remove 'map' param from addSource, and let AudioVolumeResourceSource subclass VolumeResourceSource
svn-id: r49814
2010-06-15 12:11:30 +00:00
Max Horn
17a5112162 SCI: Convert code to use ResourceSource subclasses
svn-id: r49813
2010-06-15 12:11:04 +00:00
Max Horn
24a295f4a3 SCI: Add ResourceSource subclasses, one for each type
svn-id: r49812
2010-06-15 12:10:41 +00:00
Max Horn
793c04f43b SCI: Changed some 'const char *' to Common::String
svn-id: r49811
2010-06-15 12:10:18 +00:00
Max Horn
dea38106f8 SCI: Change ResourceSource to a class, further OOPify it.
In particular, renamed location_name to _name and made it const and
protected. Thus it cannot be changed after creation, and only read
access is now possible, via a getter method.

svn-id: r49810
2010-06-15 12:09:51 +00:00
Max Horn
98e1f1a193 SCI: Only use MacResManager if needed; start to OOPify ResourceSource
svn-id: r49809
2010-06-15 12:09:30 +00:00
Max Horn
e32f3d5a43 SCI: cleanup
svn-id: r49808
2010-06-15 12:09:03 +00:00
Max Horn
69bfbdfa04 SCI: Move ResourceSource to new header resource_intern.h
svn-id: r49807
2010-06-15 12:08:40 +00:00