DatChecker -- RCT2 Object File Checker v1.00
Brought to you by Humble Programmer (humble_programmer@yahoo.com)    ,,,^..^,,,

===========
== Usage ==
===========

Double click on the icon to start the application.  Enter the directory of 
your RCT2 ObjData folder in the edit box at the top, or click on the '...'
button and select any folder that contains *.DAT files.  Once the folder is
selected, click on the "Check" button to examine all the *.DAT files therein.

Each file will be displayed with the following information:

Status:          Green flag (OK) or Red flag (ERROR)
Author:          Blank (RCT2), 'W' (Wacky Worlds), '*' (Custom), or '?' for
                 objects with an invalid type
File:            .DAT file name
Object:          Internal object name (usually same as the file name)
Type:            Type of object
Size:            Size of the (uncompressed) object data in bytes
CRC:             Internal data CRC of the object

In addition, you can double-click on any object (or click the right mouse
button and select "Properties" to display the following information about
any object:

File size:       Size of the file in bytes
File created:    Date the file was first created/installed
File modified:   Date the file was last changed
MD5 hash:        A 'fingerprint' that uniquely identifies the object data.

================
== Known Bugs ==
================

None.

==================
== Unknown Bugs ==
==================

Probably.  If you find one, send me the object file that caused it and I'll
try to fix it.

==============
== Mini-FAQ ==
==============

Q:	Why do I need this utility?

A:	When RCT2 loads a corrupt or invalid object file, it exits with an
error...but doesn't tell you which *.DAT file caused it.  This utility will
make sure all your .DAT files are OK, and will identify any with bad CRCs
or corrupt data.  In addition, it will also identify all custom objects so
that they can be removed from your ObjData folder.

Q:	Can I use it to find duplicate objects?

A: Yes: sort the display by CRC, and any files with the same CRC are likely
to be duplicates.  To find duplicate objects with different names, bring up 
the object properties to see a 128-bit MD5 hash value of the object's un-
compressed data.  Since it does NOT include the object name, two or more
objects with identical data--but different names--will all have the same MD5 
'fingerprint'.

Q:	I found a bug...can you fix it?

A:	Yes, but only if you can describe the problem well enough for me to re-
create it.  At the very least, I'll need the .DAT file that caused the error.  
You don't need to go into great detail about your computer, but knowing which 
version of Windows you're using would help.  This utility was tested on XP and 
2000, but your mileage may vary.

Q:	Can DatChecker display the graphics for an object?

A:	Not yet.  The reception of the RCT2 community to RCTSGM was lukewarm
at best, and I left some of the more complex features out of DatChecker until
I got more feedback on it.  If anyone has C/C++ code to convert the internal
graphics data to a BITMAP format, that would help tremendously...

Q:	Is DatChecker shareware?

A:	No...it's freeware.  Although it contains no proprietary or commercial 
code, but be sure to read the About box!

Q:	So DatChecker is really free?

A:	Yup.  Besides, any money I could make from selling it wouldn't even 
begin to cover the legal expenses of being sued by Infogrames for the rather
blatant copyright infringement(s).

Q:	Who are you?

A:	I am a professional developer and manage a small group of programmers that
are part of a larger corporate project.  I am an American, and have been alive
for at least 40 years, a C/C++ programmer for 25 years, happily married for 
nearly 15 years, a father for over 10 years, and been living in Europe for 
almost 5 years.

Cheers!
	Humble Programmer
	humble_programmer@yahoo.com
	,,,^..^,,,
