Difference between revisions of "Reporting unknown MD5 checksums"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Slight update to include the gnuwin32 tools)
(linkify, fixing)
Line 4: Line 4:
* The easiest way would be to check the ScummVM console window, which will report the unknown MD5s you got. If you can't see the console window, you can redirect ScummVM's output to a text file, by running ScummVM as follows:
* The easiest way would be to check the ScummVM console window, which will report the unknown MD5s you got. If you can't see the console window, you can redirect ScummVM's output to a text file, by running ScummVM as follows:
  scummvm > file.txt
  scummvm > file.txt
* If for some reason you can't see ScummVM's window or don't get any output in the text file, you need to follow a bit harder process. The MD5 based detection in ScummVM uses the first bytes of each file to determine its MD5 checksum. This is necessary to speed up the detection process and to avoid having to calculate the MD5 checksums of large files, which would make game detection very slow.
* If for some reason you can not see ScummVM's window or do not get any output in the text file, you need to follow an a bit harder process. The MD5-based detection in ScummVM uses the first bytes of each file to determine its MD5 checksum. This is necessary to speed up the detection process and to avoid having to calculate the MD5 checksums of large files, which would make game detection very slow.
Each engine in ScummVM uses a different number of bytes to calculate their MD5 checksums.  
Each engine in ScummVM uses a different number of bytes to calculate their MD5 checksums.  


Number of bytes in each engine, to compute an MD5 hash:<br>
Number of bytes in each engine, to compute an MD5 hash:<br />
''AGI, AGOS, Cine, Cruise, Drascula, Gob, Parallaction, Saga'' - '''5000''' bytes<br>
''[[AGI]], [[AGOS]], [[Cine]], [[CruisE]], [[Drascula]], [[Gob]], [[Parallaction]], [[SAGA]]'' - '''5000''' bytes<br />
''Igor, Lure'' - '''1024''' bytes<br>
''[[Igor]], [[Lure]]'' - '''1024''' bytes<br />
''Kyra, Scumm'' - '''1024 * 1024''' bytes<br>
''[[Kyra]], [[SCUMM]]'' - '''1024 * 1024''' bytes<br />
''Touche'' - '''4096''' bytes<br>
''[[Touche]]'' - '''4096''' bytes<br />


queen, Sky, Sword1, Sword2 use a different detection
[[Queen]], [[Sky]], [[Sword1]], [[Sword2]] use a different detection.




Line 25: Line 25:
   md5deep -p size file | find /i "offset 0-size"
   md5deep -p size file | find /i "offset 0-size"


Where ''size'' depends of the engine, as described above
Where ''size'' depends on the engine, as described above.




Alternatively, you can download the [http://gnuwin32.sourceforge.net/packages/coreutils.htm gnuwin32 coreutils] and run the *nix command above. You'll need head.exe, md5sum.exe and the 2 libraries from the dependency package
Alternatively, you can download the [http://gnuwin32.sourceforge.net/packages/coreutils.htm gnuwin32 coreutils] and run the *nix command above. You will need head.exe, md5sum.exe and the two libraries from the dependency package.




After you get the MD5 sums of the game files, you can report them by using our [[http://sourceforge.net/tracker/?group_id=37116&atid=418820 bug tracker]]. It's much preferred over a post in the forums
After you get the MD5 sums of the game files, you can report them by using our [http://sourceforge.net/tracker/?group_id=37116&atid=418820 bug tracker]. It is much preferred over a post in the forums.

Revision as of 21:34, 23 June 2008

This page contains instructions on what to do if you got a version of a game that the ScummVM team is not aware of (perhaps a rare version, or a less known one, or perhaps an unknown non-English version). In such cases, here's what you can do to get your version supported under ScummVM:

To get the MD5 sums:

  • The easiest way would be to check the ScummVM console window, which will report the unknown MD5s you got. If you can't see the console window, you can redirect ScummVM's output to a text file, by running ScummVM as follows:
scummvm > file.txt
  • If for some reason you can not see ScummVM's window or do not get any output in the text file, you need to follow an a bit harder process. The MD5-based detection in ScummVM uses the first bytes of each file to determine its MD5 checksum. This is necessary to speed up the detection process and to avoid having to calculate the MD5 checksums of large files, which would make game detection very slow.

Each engine in ScummVM uses a different number of bytes to calculate their MD5 checksums.

Number of bytes in each engine, to compute an MD5 hash:
AGI, AGOS, Cine, CruisE, Drascula, Gob, Parallaction, SAGA - 5000 bytes
Igor, Lure - 1024 bytes
Kyra, SCUMM - 1024 * 1024 bytes
Touche - 4096 bytes

Queen, Sky, Sword1, Sword2 use a different detection.


To get the correct MD5 checksum, run the following:

Under *nix:

 head -c size file | md5sum

Under Windows, download md5deep and run it like this:

 md5deep -p size file | find /i "offset 0-size"

Where size depends on the engine, as described above.


Alternatively, you can download the gnuwin32 coreutils and run the *nix command above. You will need head.exe, md5sum.exe and the two libraries from the dependency package.


After you get the MD5 sums of the game files, you can report them by using our bug tracker. It is much preferred over a post in the forums.