Need For Speed: Most Wanted BIN: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
imported>Mr.Mouse
imported>Mr.Mouse
Line 105: Line 105:


=== Supported Programs ===  
=== Supported Programs ===  
 
* [[MultiEx Commander]]
* [[Game Extractor|Game Extractor]]<br>
* [[Game Extractor|Game Extractor]]<br>

Revision as of 13:02, 1 January 2006

BIN


Format Specifications

// ARCHIVE HEADER

uint16 {2}   - null
uint16 {2}   - Unknown
uint32 {4}   - Archive Length [+8]
uint32 {4}   - null
uint32 {4}   - Number Of Nulls (48)
byte {48}    - null
uint16 {2}   - null
uint16 {2}   - Unknown
uint32 {4}   - Directory Length?
uint16 {2}   - Number Of Directories (1)
uint16 {2}   - Unknown


// for each directory
uint32 {4}   - Directory Offset [+80]
uint32 {4}   - Directory Name Length (not including nulls)
byte {28}    - Directory Name (null terminated)
byte {64}    - Filename
uint32 {4}   - Unknown
byte {24}    - null


// DIRECTORIES

// for each directory
uint16 {2}   - Unknown (2)
uint16 {2}   - Unknown
uint32 {4}   - Length of the Next FOR Loop (ie numFiles*8)


// for each file
uint32 {4}   - Hash?
uint32 {4}   - null


uint16 {2}   - Unknown (2)
uint16 {2}   - Unknown
uint32 {4}   - Length of the Next FOR Loop (ie numFiles*24)


// for each file
uint32 {4}   - Hash?
uint32 {4}   - File Offset
uint32 {4}   - File Length
uint32 {4}   - Unknown (263324)
uint32 {4}   - Padding Multiple? (256)
uint32 {4}   - null


// FILE DATA

// for each file
byte {X}     - File Data

MultiEx BMS

ImpType Standard ;
Get VarType Long 0 ;
Get RemainingSize Long 0 ;
Get U1 Long 0 ;
Get RelOff1 Long 0 ;
SavePos COff 0 ;
Math COff += RelOff1 ;
GoTo COff 0 ;
Get VarType Long 0 ;
Get ResInfoSize Long 0 ;
Get VarType Long 0 ;
Get HeaderSize Long 0 ;
SavePos COff 0 ;
Get U2 Long 0 ;
GetDString BINName 28 0 ;
GetDString OriName 64 0 ;
Set FP String . ;
Get OriSize Long 0 ;
Math COff += HeaderSize ;
GoTo COff 0 ;
Get VarType Long 0 ;
Get TableSize Long 0 ;
SavePos COff 0 ;
Math COff += TableSize ;
GoTo COff 0 ;
Get VarType Long 0 ;
Get ResInfoSize Long 0 ;
Set FileNum Long ResInfoSize ;
Math FileNum /= 24 ;
For T = 1 To FileNum ;
Get VarType Long 0 ;
SavePos FOO 0 ;
Get FO Long 0 ;
SavePos FSO 0 ;
Get FS Long 0 ;
Get UCS Long 0 ;
Get U3 Long 0 ;
Get U4 Long 0 ;
Set Name String OriName ;
String Name += FP ;
String Name += T ;
Log Name FO FS FOO FSO ;
Next T ;



Supported Programs