aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/game.cpp
AgeCommit message (Collapse)Author
2010-05-30Fixed findGameObject() for SCI11 gamesFilippos Karapetis
svn-id: r49326
2010-05-29Removed the hack inside findGameObject(), and replaced it with code from the ↵Filippos Karapetis
segment manager, till we find out why the segment is sometimes off by 1 (note that findGameObject() works fine for finding the game ID itself) svn-id: r49310
2010-05-29Added a method to the resource manager, to limit the places where script ↵Filippos Karapetis
exports are accessed, since for SCI11 and newer exports can be functions and objects (first step in removing scriptRelocateExportsSci11(), which is a gross hack and it fails in QFG1VGA) svn-id: r49308
2010-05-23Cleaned up the game ID code:Filippos Karapetis
- The game ID is now obtained from ScummVM ID directly, not by converting Sierra's internal ID - Moved the code which reads the internal Sierra ID inside the resource manager - Moved the code which converts the internal Sierra ID to ScummVM's IDs together with the rest of the detection code svn-id: r49152
2010-05-19Removed the exportsAreWide variable from the segment manager and save games, ↵Filippos Karapetis
and moved validateExportFunc() in the Script class, thus resolving a TODO svn-id: r49093
2010-05-19Moved the breakpoint information inside the DebugState structFilippos Karapetis
svn-id: r49092
2010-05-18- Moved determine_reg_type() and kernel_matches_signature() inside the ↵Filippos Karapetis
Kernel class, where they belong - Moved the kernel signature defines inside kernel.h - Removed some unused references to EngineState svn-id: r49075
2010-02-17SCI: Remove hack in convertSierraGameId which caused a memory leakMax Horn
svn-id: r48083
2010-02-15SCI: Remove sound/audio.h include from engine/state.hMax Horn
svn-id: r48063
2010-02-14Moved the reference to AudioPlayer inside SciEngine (as it doesn't have a ↵Filippos Karapetis
state, per se, and is static) svn-id: r48059
2010-02-13SCI: Move language related code from EngineState to SciEngineMax Horn
svn-id: r48052
2010-02-13SCI: Move GameFeatures from EngineState to SciEngineMax Horn
svn-id: r48049
2010-02-13SCI: Get rid of EngineState::resManMax Horn
svn-id: r48048
2010-02-13SCI: Move Gui/Gfx related permanent objects from EngineState to SciEngineMax Horn
svn-id: r48047
2010-02-03Placed all the game feature detection code in a separate classFilippos Karapetis
svn-id: r47850
2010-02-03SCI: Get rid of EngineState::stack_segmentMax Horn
svn-id: r47833
2010-02-02SCI: Use Common::List and Common::String to simplify breakpoint handling ↵Max Horn
(untested) svn-id: r47824
2010-02-01SCI: implemented reset for GfxMenu, not recreating object anymoreMartin Kiewitz
svn-id: r47793
2010-01-31Fixed endless looping in Longbow, when the after market GM patches are usedFilippos Karapetis
svn-id: r47731
2010-01-29SCI: added new SciGui32 class, Gfx class needs some work though and ↵Martin Kiewitz
hopefully i didnt overlook some kernel function that is also used by sci32. now using plane left/top svn-id: r47679
2010-01-23- Moved all of the parser-related variables inside the Vocabulary classFilippos Karapetis
- 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-16The GM patches from Sierra's GM utility can now also be processed with their ↵Filippos Karapetis
original names. Thus, the user can just extract the patches from Sierra's GM utility in the extras folder, and it's not necessary to rename each individual file to "4.pat" and place it inside the associated game (works with the games that Sierra's GM patch updates, i.e. LSL1, LSL5, Hoyle3, SQ1, SQ4, Eco1, Longbow and Fairy tales) svn-id: r47318
2010-01-05Renamed /gui to /graphics and /sfx to /sound, to better illustrate their purposeFilippos Karapetis
svn-id: r47007
2010-01-05SCI: Removed the old graphics codeFilippos Karapetis
svn-id: r47005
2010-01-04Fallback detector:Filippos Karapetis
- Added detection for SCI2 games (GK1, PQ4, QFG4) - Rewrote the way demos are detected - Games are no longer distinguished from the existence of certain files svn-id: r46970
2009-12-28SCI/new sound code:Filippos Karapetis
- Made the SciMusic class private, and added wrapper functions for invoking specific methods of SciMusic from outside the SoundCommandParser class - Many SCI games keep creating and destroying sound effects constantly (i.e. many times per second). Therefore, another scheme has been devised, which replaces the mutex that was in place. Whenever a sound command is run which operates on a specific object in the play list, we disallow onTimer() from kicking in. This isn't ideal, but it does stop random deadlocks because of locked mutexes without any noticeable side effects svn-id: r46681
2009-12-27SCI/new music code:Filippos Karapetis
- Switched to Common::StackLock for mutexes - Renamed Music::stopAll() -> Music::clearPlayList() - Implemented a better Music::stopAll method, which stops all sounds with proper signals, instead of destroying them - Renamed the SCI0 command cmdGetPlayNext -> cmdStopAllSounds and implemented it svn-id: r46665
2009-12-27Renamed gameName -> gameId, to keep the same vocabulary everywhereFilippos Karapetis
svn-id: r46635
2009-12-26Some more work on the new music codeFilippos Karapetis
svn-id: r46569
2009-12-25SCI/newmusic: added filter support for kq4early and adlibMartin Kiewitz
svn-id: r46563
2009-12-19- Started wrapping the current sound code around appropriate definesFilippos Karapetis
- Introduced a new resource type, SoundResource, used in the new music code svn-id: r46421
2009-12-19Fix segfault when quitting. static const Common::String's shouldn't be used.Matthew Hoops
svn-id: r46416
2009-11-23SCI: Reduce header interdependencyMax Horn
svn-id: r46118
2009-11-20Fixed game restarting regressionFilippos Karapetis
svn-id: r46026
2009-11-12The menu bar code is no longer used in the new graphics code, and the menu ↵Filippos Karapetis
state is no longer stored in saved games svn-id: r45854
2009-11-11SCI/newgui: call menuReset() on game_init(), fixes double menu in pq2Martin Kiewitz
svn-id: r45843
2009-11-04Removed unused variables and placed some more old code inside INCLUDE_OLDGFX ↵Filippos Karapetis
defines svn-id: r45668
2009-11-04- Changed the segment manager to be a static part of the engine, and stopped ↵Filippos Karapetis
deleting and recreating it when restoring games - Merged game_exit(), script_free_vm_memory() and script_free_engine() - Cleanup svn-id: r45666
2009-11-04priority_first and priority_last are not used by the new drawing code, thus ↵Filippos Karapetis
the new code didn't handle priority changes by kGraph() svn-id: r45658
2009-10-30- Removed status_bar_foreground and status_bar_background variables from the ↵Filippos Karapetis
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-30Remove unused includes when INCLUDE_OLDGFX is not set. Implemented the full ↵Filippos Karapetis
screen updates that the current menu code is doing using new graphics functions (still unfinished). Some cleanup. svn-id: r45536
2009-10-28Wrapped some more oldgui-specific code around INCLUDE_OLDGFX safeguardsFilippos Karapetis
svn-id: r45492
2009-10-28Wording. Added warnings for unimplemented menu-related functions in the new ↵Filippos Karapetis
GUI code svn-id: r45489
2009-10-28Added detection for pq1, cnick-lslcasino and cnick-longbow to the fallback ↵Filippos Karapetis
detector. Simplified the code which distinguishes between demo and full versions. Some cleanup svn-id: r45488
2009-10-28Enclose all of the old graphics code within the INCLUDE_OLDGFX safeguard ↵Filippos Karapetis
(defined in sci.h) svn-id: r45459
2009-10-26Added proper detection and handling of transitive SCI1-SCI1.1 games, like ↵Filippos Karapetis
PQ1 VGA. These used SCI1 resources and compression with a SCI1.1 kernel (thanks to waltervn's observations) svn-id: r45420
2009-10-25- Removed graphics options code from the old GUI. Almost all of them are not ↵Filippos Karapetis
supposed to be modified by the user (e.g. the way lines and brushes are drawn), and we can implement any of them again if needed in the new GUI (but they shouldn't really be needed). - Added a config option to disable dithering in the new GUI if requested, called "undither", which is set to true by default and can be changed to false if needed per game - The per-resource palette code has been removed for now, to be replaced by regular hashmaps (once the FreeSCI scifx reading code has been converted) svn-id: r45378
2009-10-25CleanupFilippos Karapetis
svn-id: r45366
2009-10-22Fixed a crash when selecting menu itemsFilippos Karapetis
svn-id: r45334
2009-10-18SCI: Rename game_obj to _gameObjMax Horn
svn-id: r45235