SCUMM TODO - Shrink MD5 size

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

Post Reply
mrugiero
Posts: 3
Joined: Mon Nov 14, 2011 9:30 pm

SCUMM TODO - Shrink MD5 size

Post by mrugiero »

Hi, I've been looking at the SCUMM engine ToDo list, and there is an item which seems almost trivial to solve.
The approach I propose (and I volunteer myself to provide the patches after the data is gathered) is to temporarily add two or three extra lines on the game detection, so they compute the MD5 with the first 5000 bytes, the first 80KB and then prints in a file named "MD5 computed with 1MB".log a line with the MD5 computed with 5000 bytes and another line with the MD5 computed with 80KB. What would this be for? To gather the new checksums, so I can later update the tables with the new values, after checking if there are or not any collisions with 5000 bytes. If there are collisions, I'll update the tables with the 80KB checksums. Users would only need to run the detection for their games and submit the newly created files. The location should probably be the one where the game is, or maybe a specified directory within SCUMMVM configuration files, something like "~/.config/scummvm/md5_checksums/".
What do you think? I'd like this to be my first contribution because, well, it seems really easy to achieve.
User avatar
Raziel
ScummVM Porter
Posts: 1541
Joined: Tue Oct 25, 2005 8:27 am
Location: a dying planet
Contact:

Post by Raziel »

I'd advise you to come to IRC

chat.freenode.net - #scummvm

and talk to the devs about your proposition directly.

Forums are slow :-)
User avatar
clone2727
Retired
Posts: 1611
Joined: Fri Jun 09, 2006 8:23 pm
Location: NJ, USA

Post by clone2727 »

I don't think you understand how untrivial it is to track down all those variants.
User avatar
md5
ScummVM Developer
Posts: 2250
Joined: Thu Nov 03, 2005 9:31 pm
Location: Athens, Greece

Post by md5 »

As clone2727 said, it's a major pain to track down all these variants, so it's probably a very difficult task. On the other hand, it could be viable to hardcode the detection size in each detection entry, and detection entries can be updated progressively without breaking compatibility
Post Reply