Open main menu

Difference between revisions of "Auto detection"

8 bytes removed ,  17:09, 3 March 2006
m
Changed section levels
m (Changed section levels)
Line 1: Line 1:
=== Introduction ===
== Introduction ==
This page talks about auto detection of games in ScummVM. It's mostly written from the perspective of the SCUMM engine, but a lot said here should hold true for arbitrary engines.
This page talks about auto detection of games in ScummVM. It's mostly written from the perspective of the SCUMM engine, but a lot said here should hold true for arbitrary engines.






=== Detection vs. Instantiation ===
== Detection vs. Instantiation ==
Insight: 'detect' and 'create' are extremly similar. The main difference is in their precise input and output; what happens internally, is actually very similar.
Insight: 'detect' and 'create' are extremly similar. The main difference is in their precise input and output; what happens internally, is actually very similar.


Line 18: Line 18:




=== Detection in the SCUMM engine ===
== Detection in the SCUMM engine ==
What was said in the previous section can be used to improve the SCUMM detection code.  
What was said in the previous section can be used to improve the SCUMM detection code.  
To this end, we have to restructure and unify some of our current data sets. Right now, we use MD5 checksums in the SCUMM engine for two different purposes:
To this end, we have to restructure and unify some of our current data sets. Right now, we use MD5 checksums in the SCUMM engine for two different purposes:
Line 55: Line 55:
In addition, of course the filename itself carries valuable information. One can narrow down the SCUMM version, and in the case of newer games, also may deduce the gameid from the filename. And sometimes even the platform and/or language. We currently do not take full advantage of this.
In addition, of course the filename itself carries valuable information. One can narrow down the SCUMM version, and in the case of newer games, also may deduce the gameid from the filename. And sometimes even the platform and/or language. We currently do not take full advantage of this.


=== Standardized descriptions ===
== Standardized descriptions ==
The following isn't quite about auto detection, but about a related subject: How to canonically construct a game description string from the following information tuple:
The following isn't quite about auto detection, but about a related subject: How to canonically construct a game description string from the following information tuple:
   (NAME, PLATFORM, LANGUAGE, EXTRA)
   (NAME, PLATFORM, LANGUAGE, EXTRA)
1,079

edits