Yet More CTT

9 August 2004

List/Verify Release Info

List/verify IPF/IPX release information. If processing an IPX file, all the data can be retrieved, if IPF missing the data is calculated.

  -l -lc <listfile> <searchpattern1...N>

Create a list using all the files found that match the search patterns. Filenames are listed as well for convenience - no need to look them up in release lists.

  -lv <listfile> <searchpattern1...N>

Verify all files against a list file, which reports on the following:

  • Invalid files
  • Duplicate list entries/files
  • Stray list entries: Entries that are present in the file list, but have no matching file counterparts
  • CRC mismatch: An entry that matches a file, however any of the CRC‘s are different
  • Stray files: Valid files that are present in the search paths given, but have no file list entry.

One trivial use:

ctt -lc list.txt rel\*.ipx
ctt -lv list.txt rel\*.ipf

This first creates a list file based on the data stored in IPX’s, then it verifies IPF files are the same, that is, checking whether any inconsistency exists between IPX and associated IPF files, but note that running on IPF files takes a lot more time than on IPX’s.

This can also be used to synchronise releases.


Massive optimisation of file type detection was done in CTT, while being careful not to break future compatibility. This was done so new chunks can be introduced to any IPF file type without breaking it. If a chunk type with RAW or IPF track data is encountered, it is definitely not an IPX file so processing can continue accordingly.

Also, a cosmetic change; if a file list is detected as bad, further operation are aborted, and no summary is given since it will be useless anyway.