Hi,
[Version detection]
> This is accomplished through a lookup table, based on the size of the
> sciv.exe/sierra.exe file. So far, it's unique.
OK, this ought to help quite a bit with the current situation. However,
the Amiga/MacOS etc. versions probably have their interpreter named
differently, so we can't use this for identification there.
> So far I have thirteen different interpreter versions in the table for
> SCI0 games, I'm sure a few more can be added later on.
Whatever we do, it might be a good idea to print out whatever we use for
identifying the interpreter version later on, so that people will have an
easy time extending the table or reporting the changes.
> (We could alternatively do a checksum/size on the resource.000/001 file
> instead. Comments?)
IIRC, resource.001 is present in all games, except perhaps for (potential)
fan-made ones. Running a CRC on it would have the advantage of not
requiring people to keep their old binaries around.
I still think checking for [01]\.00[01]\.[0-9]{3} in the interpreter
binary would be preferrable as a first pass when trying to auto-detect, at
least for SCI0- particularly because it'd relieve us of the need to keep a
mapping table...
llap,
Christoph