186 Commits

Author SHA1 Message Date
Max Horn
b9a11ddb0b SCI: Move language related code from EngineState to SciEngine
svn-id: r48052
2010-02-13 17:46:44 +00:00
Max Horn
e45f0f309a SCI: Remove EngineState::_kernel, use SciEngine::_kernel instead
svn-id: r48050
2010-02-13 17:45:40 +00:00
Max Horn
9575cc08a2 SCI: Move GameFeatures from EngineState to SciEngine
svn-id: r48049
2010-02-13 17:44:58 +00:00
Max Horn
a82939c9be SCI: Get rid of EngineState::resMan
svn-id: r48048
2010-02-13 17:44:19 +00:00
Max Horn
721a57a661 SCI: Move Gui/Gfx related permanent objects from EngineState to SciEngine
svn-id: r48047
2010-02-13 17:43:31 +00:00
Max Horn
f86618f92b SCI: Add a 'SELECTOR' macro
svn-id: r47918
2010-02-05 22:55:18 +00:00
Filippos Karapetis
2fb37063a4 Placed all the game feature detection code in a separate class
svn-id: r47850
2010-02-03 11:02:43 +00:00
Max Horn
bb5e34a014 SCI: Get rid of EngineState::stack_segment
svn-id: r47833
2010-02-03 01:32:59 +00:00
Max Horn
4b19acf255 SCI: Use Common::List and Common::String to simplify breakpoint handling (untested)
svn-id: r47824
2010-02-02 22:52:41 +00:00
Martin Kiewitz
097b45db21 SCI: fix getLanguage - fixes gk1 german (day number blood writing at the start), thx to waltervn
svn-id: r47795
2010-02-01 13:27:20 +00:00
Matthew Hoops
12d983eaf4 Make EngineState::getLanguage() check from the resource manager as to what language it has loaded before checking from what ScummVM has set and make kDoAudio use EngineState::getLanguage()
svn-id: r47782
2010-01-31 22:14:35 +00:00
Walter van Niftrik
a92bb6193b SCI: Implement kMemorySegment().
svn-id: r47776
2010-01-31 19:47:54 +00:00
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
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