aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/detection.cpp
AgeCommit message (Collapse)Author
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
2009-08-26Further work on the fallback detector: added several demosFilippos Karapetis
svn-id: r43756
2009-08-26Added code to distinguish between the demo and full versions of fairytalesFilippos Karapetis
svn-id: r43752
2009-08-26Started working on distinguishing the Sierra game demos. Also added a note ↵Filippos Karapetis
about a potential problem with language detection with some SCI games svn-id: r43751
2009-08-26WordingFilippos Karapetis
svn-id: r43750
2009-08-26Added automatic detection of the game language to the fallback detectorFilippos Karapetis
svn-id: r43749
2009-08-25- Finished automatic detection of the game platform in the fallback detectorFilippos Karapetis
- Added detection for GK1 to the fallback detector - Removed the rest of the executable reading code, as it's no longer used svn-id: r43746
2009-08-25- Split SCI_VERSION_32 into SCI_VERSION_2, SCI_VERSION_2_1, and ↵Matthew Hoops
SCI_VERSION_3 (each version has a different kernel table). - Improve map detection. - Fix SCI32 object and script initialization (Torin's Passage and GK1 scripts now start up, and probably most SCI2/2.1 games). - Add SCI2 and SCI2.1 kernel tables. svn-id: r43742
2009-08-25Fixed detection for GK1 demo when SCI32 is not enabledFilippos Karapetis
svn-id: r43727
2009-08-25Silenced warnings (thanks wjp)Filippos Karapetis
svn-id: r43725
2009-08-25- Simplified the parameters of some functionsFilippos Karapetis
- Replaced some EngineState parameters - The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions - Plugged 2 leaks in the fallback detector - Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency svn-id: r43722
2009-08-24Show if a game is using EGA graphics or not in the detected entryFilippos Karapetis
svn-id: r43699
2009-08-24More work on the fallback detector: added detection of CD games and ↵Filippos Karapetis
prevented a crash when detecting a SCI32 game if SCI32 isn't compiled in svn-id: r43698
2009-08-24- Removed the code which reads the SCI version string from the game ↵Filippos Karapetis
executable in the fallback detector. We no longer use the actual SCI version string, and we can auto-detect a lot of features from the game resources now. The EXE version string was only used to display the detected SCI version in the console, which isn't very useful to us anymore. - Added detection for PC and Amiga versions based on the game's detected view types. Still need to do detection for Mac and Atari ST versions svn-id: r43683
2009-08-24Move detection tables to separate file.Eugene Sandulenko
svn-id: r43682
2009-08-23- Added more mappings from Sierra's internal IDs to our own ones. Hopefully, ↵Filippos Karapetis
all SCI0-SCI11 games can now be detected correctly from the fallback detector - Simplified some checks for old script types svn-id: r43678
2009-08-21Fix use of default directories in SCI detection code. So far all our ↵Johannes Schickel
detection code was based on FSNode, but since SCI seems to call engine internal code for detection which operates via File, there was the need to use File::addDefaultDirectory to have it working. The problem here is that the default directories are not reset after game detection, since the caller code assumes it's all done via FSNode. A simple change to use SearchMan, which is used internally by File, to add the default directory and removing it later on in the SCI detection code fixed the issue. Of course that is still slightly of a HACK, but it is much nicer than to rewrite engine internal code to use FSNode, just to be usable for game detection. I added a possible solution to remove the HACK as sourcecode comment. svn-id: r43613
2009-08-20Add detection for the QFG2 demo.Matthew Hoops
svn-id: r43565
2009-08-18Started rewriting the SCI engine to use FSNode instead of file names. This ↵Filippos Karapetis
is the proper solution for removing the hack in the fallback detector, but it still needs work. Also, reduced the things needed to be initialized a bit, so that the detection is a bit faster svn-id: r43510
2009-08-18Mapped some Sierra internal IDs to our own ones, and added a note about a ↵Filippos Karapetis
hack currently used in the fallback detector svn-id: r43509
2009-08-18- Added game ID detection to the fallback detector. We still need to map ↵Filippos Karapetis
some of Sierra's internal IDs to our own ones - The class table is now created in the segment manager constructor svn-id: r43504