Frontend .BIN archives

From Burnout Wiki
To do:
See if this can somehow be written in a way that it doesn't reference one specific file. (Although that may not really be easy)

This documentation applies to the .bin files located in the FE directory, present in Burnout Revenge (PS2, Xbox, Xbox 360) and Burnout Dominator (PS2). The PSP version of Dominator skips the first section.

The table below uses FEMAIN.BIN from the retail release of Revenge as an example for noting offsets. Prepare yourselves, as there's quite a jumble of offsets in here. Each section denotes where the offsets reset and count from 0, as if it's an entirely different file.

Section 1 - Header
0x08 0x08 0x82 (130) Directory count
0x0C 0x0C 0x40 Directory listing offset
Go to the directory listing offset.
0x40 0x40 0x248 Offset to directory information offsets
0x44 0x44 0x250
0x48 0x48 0x258
Repeat "Directory count" amount of times. Go to the directory information offset.
0x248 0x248 0x658 Directory name offset
0x24C 0x24C 0xCC0 Directory data offset
0x250 0x250 0x660 Directory name / data offsets
0x254 0x254 0x1280
0x258 0x258 0x66D
0x25C 0x25C 0x32BC0
Repeat "Directory count" amount of times.
Section 2 - Directory
0xCC4 0x04 0x0 (0) Texture count
0xCC8 0x08 0x5A8 ??? (Something size related?)
0xCCC 0x0C 0x40 "Apt Data" section offset
0xCD0 0x10 0x3C0 "Apt constant file" section offset
0xC14 0x14 0x260 ??? (Something size related?)
0x1284 0x04 0x3 (3) Texture count, Apt Data / constant file offsets
The two unknown sections are skipped here
0x128C 0x0C 0x40
0x1290 0x10 0x240
0x32BC4 0x04 0x6 (6)
0x32BCC 0x0C 0x40
0x32BD0 0x10 0x3C0
Repeat "Directory count" amount of times.
Section 3 - "Apt Data"
0xD0C 0x0C 0x1C Subdirectory name offset (Not followed by a 0x01)
0xD10 0x10 0x38 Filename offset (Followed by a 0x01)
0xD14 0x14 0x1 (1) File index number
The rest is rather ambiguous, metadata things and such.
0x12CC 0x0C 0x1C Filename offsets / file index numbers
0x12D0 0x10 0x1 (1)
0x12D4 0x14 0x58
0x12D8 0x18 0x3 (2)
0x12DC 0x1C 0x64
0x12E0 0x20 0x3 (3)
The filenames and indexes repeat a couple times, likely due to other additional info in Apt Data.
Section 4 - "Apt constant file"
More ambiguous data, 0 textures – skipped.
0x16C0 0x200 Texture name "1". (Follow Texture formats for more information)
0x11DC0 0x10900 Texture name "2".
0x224C0 0x21000 Texture name "3".
Ambiguous data aside, the texture names will always be the same as the file index number.