Midnight Club 2 DAT: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
imported>Alf
(→‎DAT: Filenames using 6bit encoded characters)
imported>WATTO
mNo edit summary
Line 45: Line 45:
=== Notes and Comments ===  
=== Notes and Comments ===  


* If the header is DAVE, files can be compressed (same format as used in Midnight Club 1, [[Midtown Madness 2]] and Smuggler's Run).<br>
* If the header is DAVE, files can be compressed<br>
* If the header is Dave, the filenames use 6 bit encoding, and the files can be compressed<br>
* If the header is Dave, the filenames use 6 bit encoding, and the files can be compressed<br>
* 6 bit encoded strings use this array: <tt>"+ #$()-./?0123456789_abcdefghijklmnopqrstuvwxyz~"</tt> ('+' == NULL)<br>
* 6 bit encoded strings use this array: <tt>"+ #$()-./?0123456789_abcdefghijklmnopqrstuvwxyz~"</tt> ('+' == NULL)<br>
=== Other Games ===
* Midnight Club 1 *.dat
* Midnight Club 2 *.dat
* Midtown Madness 2 *.ar
* Smugglers Run *.???


=== Supported Programs ===  
=== Supported Programs ===  

Revision as of 10:48, 28 December 2005

Choose archive extension:

DAT


Format Specifications

// ARCHIVE HEADER

char {4}     - Header ("Dave" or "DAVE")
uint32 {4}   - Number Of Files?
uint32 {4}   - Filename Directory Offset [+2048] (ie relative to the start of the Directory)
uint32 {4}   - First File Data Offset [+2048+FilenameDirOffset] (ie relative to the start of the FilenameDir)
byte {2032}  - null Padding to offset 2048


// DIRECTORY

// for each file
uint32 {4}   - Filename Offset (relative to the start of the filename directory)
uint32 {4}   - File Offset
uint32 {4}   - Decompressed File Length
uint32 {4}   - Compressed File Length


byte {0-2047}      - null Padding to a multiple of 2048 bytes


// FILENAME DIRECTORY

// for each file
char {X}     - Filename
byte {1}     - null Filename Terminator


// FILE DATA

// for each file
byte {X}     - File Data
byte {0-2047}      - null Padding to a multiple of 2048 bytes

MultiEx BMS

Not written yet

Notes and Comments

  • If the header is DAVE, files can be compressed
  • If the header is Dave, the filenames use 6 bit encoding, and the files can be compressed
  • 6 bit encoded strings use this array: "+ #$()-./?0123456789_abcdefghijklmnopqrstuvwxyz~" ('+' == NULL)


Other Games

  • Midnight Club 1 *.dat
  • Midnight Club 2 *.dat
  • Midtown Madness 2 *.ar
  • Smugglers Run *.???

Supported Programs