aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/detection.cpp
AgeCommit message (Collapse)Author
2010-06-25SCI: Introduce SciGameId enumMax Horn
svn-id: r50273
2010-06-15SCI: Revise how ResourceManager is instantiated.Max Horn
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-15AdvancedDetector: Add new parameter directoryGlobs.Eugene Sandulenko
Without this parameter mass detection gave tons of false alarms. Use globbing for narrowing down the depth search. svn-id: r49788
2010-06-15- Swapped the return value of gamestate_save (false = failed, true = succeeded)Filippos Karapetis
- Removed some duplicate code inside Console::cmdSaveGame() svn-id: r49688
2010-06-14Extended advancedDetector with depth parameter.Eugene Sandulenko
Now AD can search nested directories. By default it is turned off, but there is new parameter to ADParameters struct. Usually value of 2 is good enough for all purposes. svn-id: r49653
2010-06-10Resolved a FIXME with getSciLanguage(), by creating a separate setter. Also, ↵Filippos Karapetis
some camelCase changes svn-id: r49568
2010-06-10Moved all of the game init/run/exit logic inside the SciEngine classFilippos Karapetis
svn-id: r49559
2010-06-05Replaced a leftover Common::File::exists() call in the fallback detectorFilippos Karapetis
svn-id: r49443
2010-06-05Rewrote the remaining parts of the ResourceManager class to work with file ↵Filippos Karapetis
streams, thus removing the SCI_detection hack in the fallback detector svn-id: r49438
2010-06-02If we can't find the game object or game ID in fallback detection, break out ↵Matthew Hoops
instead of assuming the script is there. Fixes a segfault when detecting an LSCI game. svn-id: r49389
2010-06-01Fixed the detection of SCI2.1 games in the fallback detectorFilippos Karapetis
svn-id: r49382
2010-05-23SCI: Enabled saving from the ScummVM menu againFilippos Karapetis
svn-id: r49164
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-22CleanupFilippos Karapetis
svn-id: r49143
2010-05-22Rewrote and simplified the game ID detector. It now properly works with ↵Filippos Karapetis
SCI0-SCI2.1 games svn-id: r49142
2010-05-21Removed the reliance on the segment manager from the fallback detector, for ↵Filippos Karapetis
SCI0-SCI1 games (it still doesn't work with SCI1.1 and newer games, though) svn-id: r49126
2010-05-21Some further work on the fallback detector, reducing the reliance on the ↵Filippos Karapetis
segment manager svn-id: r49125
2010-05-19Slight bugfix in the object iteration inside getSierraGameId()Filippos Karapetis
svn-id: r49110
2010-05-19Added a new method to the resource manager, to help determine if we got a ↵Filippos Karapetis
SCI1.1 Mac game. Started rewriting the fallback detector so that it doesn't rely on the segment manager to find the internal game ID svn-id: r49102
2010-05-10Add support for loading SCI games from Mac resource forks. The games ↵Matthew Hoops
themselves do not work yet as some (not all) of the data is in BE order instead of LE. They currently error out because it thinks the relocation block is outside of the script. svn-id: r48998
2010-03-18COMMON: Get rid of Common::StringListMax Horn
svn-id: r48287
2010-02-17SCI: Reduce header interdependenciesMax Horn
svn-id: r48086
2010-02-17SCI: Cleanup resource.hMax Horn
svn-id: r48084
2010-02-17SCI: Remove hack in convertSierraGameId which caused a memory leakMax Horn
svn-id: r48083
2010-01-31Fix warning format arguments. (Passing a Common::String ins't that much of a ↵Johannes Schickel
good idea) svn-id: r47743
2010-01-31- Fixed saving from the GMMFilippos Karapetis
- Grouped game IDs per SCI generation svn-id: r47742
2010-01-31Removed duplicate code. Some cleanupFilippos Karapetis
svn-id: r47735
2010-01-27Improve support for the SCI2.1/SCI3 file naming scheme. Multiple maps can be ↵Matthew Hoops
used and have to be matched up with their volume counterparts. Adding detection for the Phantasmagoria Demo too. svn-id: r47588
2010-01-25Strip trailing spaces/tabs.Johannes Schickel
svn-id: r47541
2010-01-21SCI: Saved games can now be loaded from ScummVM's launcherFilippos Karapetis
svn-id: r47423
2010-01-17SCI: fixed detection to not crash when adding sierras pinball creep, also ↵Martin Kiewitz
changed detection so that we dont "accept" games that use unknown view resources (otherwise pinball creep will get detected as SCI) svn-id: r47348
2010-01-06SCI: search for %J in text resources to identify japanese games, switch to ↵Martin Kiewitz
upscaled hires when japanese games are started, removed TODO svn-id: r47088
2010-01-06Removed a hack from the fallback detector, used to distinguish some demos ↵Filippos Karapetis
from their full versions svn-id: r47086
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-27Renamed gameName -> gameId, to keep the same vocabulary everywhereFilippos Karapetis
svn-id: r46635
2009-10-13SCI: Don't end warning() format strings with a newline or a period (a ↵Max Horn
newline and an exclamation mark are automatically added) svn-id: r45049
2009-10-11Fixed a warning, ironically inside a warning().Torbjörn Andersson
svn-id: r44931
2009-10-11Implemented some advanced savegame functionality - loading and deleting ↵Filippos Karapetis
savegames from the GMM is now possible, and new saved games will also have thumbnails. Saving from the GMM creates corrupted saved games, so it has been disabled for now svn-id: r44930
2009-10-09Removed the now unused GF_SCI0_OLDGETTIME flag and simplified all of the ↵Filippos Karapetis
game entries in the detector svn-id: r44856
2009-09-24Add "demo" to the extras field of the fallback detector for demosFilippos Karapetis
svn-id: r44291
2009-09-23- Moved the SCI version in a global variableFilippos Karapetis
- Changed all the SCI version checks to use getSciVersion() - Also made getSciVersionDesc a global function (removes some ugly accessing of the SCI engine) The fallback detector should work correctly now svn-id: r44269
2009-09-17Made script_lookup_export() a method of SegManagerFilippos Karapetis
svn-id: r44140
2009-09-12- Made obj_get and obj_get_name methods of SegManager (getObject and ↵Filippos Karapetis
getObjectName, respectively) - Renamed alloc_List -> allocateList, alloc_Node->allocateNode, alloc_hunk_entry->allocateHunkEntry, free_hunk_entry->freeHunkEntry, for consistency svn-id: r44039
2009-09-06SCI: Rename resManager -> resMan; segManager -> segManMax Horn
svn-id: r43980
2009-09-02Some renaming:Filippos Karapetis
getresourceManager -> getResourceManger resourceManager -> resMan segmentManager ->segMan svn-id: r43908
2009-09-01- Reverted the *vga targets back to *sci, and used the extras field again ↵Filippos Karapetis
for VGA remakes - The extras field is now filled by the fallback detector for VGA games svn-id: r43893
2009-09-01- Added MD5's for the 5 different Crazy Nick's collectionsFilippos Karapetis
- Added the MD5's of the French versions of GK2 and SQ6 (bug reports #2846842 and #2846515) - Added a different game id for QFG1 VGA (SCI1.1), to distinguish it from the older EGA version (SCI0) and added detection for the VGA version in the fallback detector - Changed some VGA SCI game IDs: lsl1sci -> lsl1vga, pq1sci -> pq1vga, sq1sci -> sq1vga, to distinguish SCI VGA remakes from SCI EGA remakes (like with QFG1VGA) svn-id: r43891
2009-09-01- Moved the Sierra game ID conversion code inside game.cpp, so that any ↵Filippos Karapetis
game-specific workarounds are tested against ScummVM IDs - Added detection for the EcoQuest 1 demo in the fallback detector - Partially reverted my previous "fix" for EcoQuest 1 CD, and turned it into a script-specific hack for that game, for now - Added handling of kDisposeScript calls made with 2 parameters, e.g. in KQ5CD and others (still untested, haven't found a test case) svn-id: r43887
2009-09-01SCI: Turned convertSierraGameId partially into a tableMax Horn
svn-id: r43883
2009-09-01Coding best practice: Whenever possible, pass objects by reference instead ↵Max Horn
of by value. Also make variables or data table which are only used locally "static". svn-id: r43882