DAT Format (Highway Hunter)
Format type | Archive |
---|---|
Max files | 3,855 |
File Allocation Table (FAT) | Beginning + Embedded |
Filenames? | Yes, 8.3 chars |
Metadata? | None |
Supports compression? | No |
Supports encryption? | No |
Supports subdirectories? | No |
Hidden data? | Yes |
Games |
The Highway Hunter DAT Format is used by Highway Hunter for storing most of the game data files.
File format
Signature
There is no signature, so the only known way of detecting whether a file is in this format or not is to carefully parse the header and FAT and ensure the values make sense, e.g. the FAT length is less than all the file offsets, no file offset goes past the end of the file, all filenames end with a terminating NULL, the last FAT entry is all NULLs, etc.
File header
Data type | Name | Description |
---|---|---|
UINT16LE | lenFAT | Length of FAT, in bytes |
As each FAT entry is 17 bytes long, dividing lenFAT by 17 will reveal the number of file entries in the archive. The last FAT entry is always empty, so remember to subtract one from this value to obtain the actual number of files.
File entry
The following structure is repeated once for each file entry.
Data type | Name | Description |
---|---|---|
UINT32LE | offset | Offset of first byte of file data, relative to the start of the archive |
char[13] | filename | Filename in 8.3 format, all lowercase, padded with 0x00 bytes to 13 chars (last char is always 0x00) |
The very last file entry is always empty (offset is zero and the filename is 13 nulls.)
File data
The file data follows the FAT, at the offsets given. At each offset, the file data is stored as follows:
Data type | Name | Description |
---|---|---|
UINT32LE | length | Length of the file content, in bytes |
BYTE[length] | content | File data, length bytes long |
Tools
The following tools are able to work with files in this format.
Name | Platform | Extract files? | Decompress on extract? | Create new? | Modify? | Compress on insert? | Access hidden data? | Edit metadata? | Notes |
---|---|---|---|---|---|---|---|---|---|
Camoto | Linux/Windows | Yes | N/A | Yes | Yes | N/A | N/A | N/A |
Credits
This file format was reverse engineered by Malvineous. If you find this information helpful in a project you're working on, please give credit where credit is due. (A link back to this wiki would be nice too!)