Commit graph

123 commits

Author SHA1 Message Date
Matthew Hoops
d883b6215f Detect whether to use the modified SCI2 or SCI2.1 kernel table based on the kDoSound call used in Sound::play(), which fixes at least my version of KQ7 - probably others. The kernel table initialization now occurs after the script signatures are adjusted as we need it adjusted before checking through Sound::play for the kDoSound call.
svn-id: r47645
2010-01-28 18:57:31 +00:00
Filippos Karapetis
75ae56b0d4 Improved kSetCursor() semantics detection
svn-id: r47624
2010-01-28 02:15:15 +00:00
Filippos Karapetis
dfafec6486 Fixed kSetCursor semantics detection for KQ5 Amiga, by making a hack for KQ5 CD specific to that version only
svn-id: r47557
2010-01-25 17:30:59 +00:00
Johannes Schickel
aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Filippos Karapetis
722233fd0d - Moved all of the parser-related variables inside the Vocabulary class
- Moved the kSetSynonyms() function inside kscripts (as it's for script synonyms, not parser word synonyms)
- The parser vocabulary is now only initialized for SCI0 and SCI01 games, which had a parser

svn-id: r47483
2010-01-23 19:10:56 +00:00
Filippos Karapetis
f007435b82 sfx_init_flags is not used in the new sound code
svn-id: r47464
2010-01-23 12:10:31 +00:00
Martin Kiewitz
3e44180e47 SCI: speed throttler changed, now gets triggered by kAnimate, removed initial no-delay, i'm still getting animation now in iceman and sq3, slow palette animation in longbow fixed
svn-id: r47343
2010-01-17 18:41:28 +00:00
Filippos Karapetis
a637f50862 Silenced warnings ("this" isn't defined on object instantiation, and commented out some unused variables)
svn-id: r47237
2010-01-10 21:13:38 +00:00
Matthew Hoops
e87cc86665 Fix walking in SCI32. Gabriel now will walk and DrMcCoy can now hear his precious 'Gabriel is a lout' line :P
svn-id: r47011
2010-01-05 01:51:09 +00:00
Filippos Karapetis
f66d5a7f53 SCI: Removed the old graphics code
svn-id: r47005
2010-01-05 00:54:53 +00:00
Filippos Karapetis
c0aad0508c Renamed SCI_VERSION_AUTODETECT to SCI_VERSION_NONE to signify its actual purpose
svn-id: r46959
2010-01-03 22:50:39 +00:00
Filippos Karapetis
2f23eb99ee The "room" command can now set the current room number, too (more straightforward than changing global var 13)
svn-id: r46925
2010-01-03 15:08:26 +00:00
Filippos Karapetis
21c6bbc588 Fixed graphics functions detection in an old version of SQ3 - my initial thought to rely on the presence of the shiftParser selector was wrong
svn-id: r46580
2009-12-26 13:35:17 +00:00
Filippos Karapetis
113c0941ae - Introduced a new version in the sound version detection routine, as SCI0 early games had different sound than SCI0 late ones
- Changed sound-related debug output from printf's into debugC calls

svn-id: r46560
2009-12-25 18:15:16 +00:00
Max Horn
5df86e4ccc SCI: Paranoia tweak for EngineState::autoDetectFeature
svn-id: r46306
2009-12-09 12:32:47 +00:00
Filippos Karapetis
09f7df09e6 Added a sanity check to the setCursor detection
svn-id: r46087
2009-11-22 15:22:23 +00:00
Filippos Karapetis
054dd568a4 Check which DoSound method is actually invoked from Sound::play, to remove a hack for Jones CD. Added code to handle games which don't actually call SetCursor inside Game::setCursor (like KQ5CD)
svn-id: r46086
2009-11-22 15:06:32 +00:00
Filippos Karapetis
bada077c26 Removed duplicate code and simplified some feature detection
svn-id: r46038
2009-11-21 15:41:01 +00:00
Filippos Karapetis
fd116847bd Fixed sound detection for Jones CD
svn-id: r46030
2009-11-20 23:37:56 +00:00
Filippos Karapetis
10fbefcd60 Simplified the doSound detection a bit
svn-id: r46028
2009-11-20 22:39:57 +00:00
Filippos Karapetis
cf1d7f9259 - Removed the non-static selectors "overlay" and "setCursor" from the list of static selectors and introduced a new method for discovering the relevant features when selectors are missing - currently used for determining the graphics functions and setCursor types
- Simplified setCursor detection a bit

svn-id: r46012
2009-11-20 16:39:31 +00:00
Filippos Karapetis
662fc11d67 Check the overridden game object when performing setCursor detection, which properly fixes KQ5CD (thanks waltervn)
svn-id: r46009
2009-11-20 15:16:03 +00:00
Filippos Karapetis
94c8f77faa Added a game-specific workaround for setCursor detection in KQ5CD: the code for the setCursor selector has not been rewritten yet to use cursor views (it's the same as lsl3 and sq3, for example), but the game does use cursor views
svn-id: r46008
2009-11-20 14:51:15 +00:00
Filippos Karapetis
551ca5f2c0 Changed the lofs detection to iterate through all the methods of the Game object again, instead of a specific selector - fixes Jones
svn-id: r46006
2009-11-20 14:17:47 +00:00
Filippos Karapetis
893a8bb808 Some corrections for the lofs autodetection - SQ4 floppy works again
svn-id: r46002
2009-11-20 10:29:42 +00:00
Filippos Karapetis
2f6ded8727 Shifted some code around
svn-id: r46001
2009-11-20 08:55:35 +00:00
Filippos Karapetis
81d3a24cce - Rewrote the lofs parameter type auto-detection code
- Renamed dissectSelector -> autodetectFeature

svn-id: r46000
2009-11-20 08:52:32 +00:00
Filippos Karapetis
f1036e47ad - Simplified the different feature detection types, removed some duplicate code and merged the feature detection code which relies on selectors
- Replaced the function checksum calculations to make it more apparent what the feature detections do
- Removed the now obsolete (and unused) firstRetOffset function

svn-id: r45995
2009-11-19 23:05:12 +00:00
Filippos Karapetis
fbfafb576e Started objectifying kDoSound()
svn-id: r45862
2009-11-12 15:24:11 +00:00
Filippos Karapetis
226f0bd23d The menu bar code is no longer used in the new graphics code, and the menu state is no longer stored in saved games
svn-id: r45854
2009-11-12 09:24:46 +00:00
Filippos Karapetis
5daca46946 Removed unused variables and placed some more old code inside INCLUDE_OLDGFX defines
svn-id: r45668
2009-11-04 15:32:25 +00:00
Filippos Karapetis
c8fbac1517 - Changed the segment manager to be a static part of the engine, and stopped deleting and recreating it when restoring games
- Merged game_exit(), script_free_vm_memory() and script_free_engine()
- Cleanup

svn-id: r45666
2009-11-04 14:22:17 +00:00
Filippos Karapetis
12e3375f3b Removed the reference to SciGuiCursor from EngineState
svn-id: r45660
2009-11-04 12:19:05 +00:00
Filippos Karapetis
f755311114 priority_first and priority_last are not used by the new drawing code, thus the new code didn't handle priority changes by kGraph()
svn-id: r45658
2009-11-04 11:52:11 +00:00
Filippos Karapetis
7d00c4a7f1 Moved the audio CD handling code inside the AudioPlayer class. Some cleanup
svn-id: r45656
2009-11-04 11:22:46 +00:00
Filippos Karapetis
597524b255 Moved most of the code for playing sound effects and speech into a separate class
svn-id: r45653
2009-11-04 09:36:18 +00:00
Filippos Karapetis
57266a7cba - Removed status_bar_foreground and status_bar_background variables from the engine state
- Implemented clearMenuBar() in the new graphics code
- Removed the "status_bar" command, which was used to set custom colors for the status bar

svn-id: r45538
2009-10-30 14:39:26 +00:00
Filippos Karapetis
21323a8d12 Wrapped some more oldgui-specific code around INCLUDE_OLDGFX safeguards
svn-id: r45492
2009-10-28 22:01:42 +00:00
Filippos Karapetis
04ab6bc9fc Enclose all of the old graphics code within the INCLUDE_OLDGFX safeguard (defined in sci.h)
svn-id: r45459
2009-10-28 13:20:30 +00:00
Matthew Hoops
55e0efeb8f Add support for CD Audio in Jones in the Fast Lane CD and KQ6 CD.
svn-id: r45367
2009-10-25 03:26:20 +00:00
Max Horn
9e64255bd1 SCI: Rename game_obj to _gameObj
svn-id: r45235
2009-10-18 19:43:27 +00:00
Max Horn
f3ab3051d8 SCI: Make the implicit segMan param to GET_SEL32(V) and PUT_SEL32(V) explicit
svn-id: r45234
2009-10-18 19:42:56 +00:00
Martin Kiewitz
2ada85b6cc SCI: kAnimate now delays the first few calls less, otherwise sq3 will remove details graphicwise. Walter please check, if this creates a regression with lsl3.
svn-id: r45173
2009-10-16 18:46:18 +00:00
Martin Kiewitz
a7e6f50ede SCI: removed speed throttler (cause of kAnimate change)
svn-id: r45094
2009-10-14 21:48:52 +00:00
Filippos Karapetis
0f995c02f3 Fixed a bug in the graphics function detection code, and corrected the location of the static "overlay" selector in SCI0 games. Fixes the demo of lsl3
svn-id: r45010
2009-10-13 09:33:57 +00:00
Filippos Karapetis
d6f5d93dbf Started rewriting the Object struct into a class
svn-id: r44878
2009-10-10 15:58:51 +00:00
Walter van Niftrik
6c1cac3956 SCI: kMessage() rewrite
svn-id: r44860
2009-10-10 02:16:23 +00:00
Filippos Karapetis
9bb73a8457 Removed the unused _flags variable from EngineState
svn-id: r44857
2009-10-09 23:53:37 +00:00
Filippos Karapetis
14f8d50a62 Moved actor movement detection in state.cpp, together with the other detections and rewrote it to work in a similar fashion to the other detections
svn-id: r44836
2009-10-09 17:41:59 +00:00
Filippos Karapetis
53b1ff79a3 Oops...
svn-id: r44830
2009-10-09 16:21:37 +00:00