Frontend .BIN archives
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.
Global offset |
Section offset |
Data (int32) |
Information |
---|---|---|---|
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 | |||
bgvideo | |||
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?) |
b4bghardedge | |||
0x1284 | 0x04 | 0x3 (3) | Texture count, Apt Data / constant file offsets The two unknown sections are skipped here |
0x128C | 0x0C | 0x40 | |
0x1290 | 0x10 | 0x240 | |
b4bggradient | |||
0x32BC4 | 0x04 | 0x6 (6) | |
0x32BCC | 0x0C | 0x40 | |
0x32BD0 | 0x10 | 0x3C0 | |
Repeat "Directory count" amount of times. | |||
Section 3 - "Apt Data" | |||
bgvideo | |||
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. | |||
b4bghardedge | |||
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" | |||
bgvideo/b4Components/b4CustomVideo | |||
More ambiguous data, 0 textures – skipped. | |||
b4bghardedge/bg03_03.tif | |||
0x16C0 | 0x200 | Texture name "1". (Follow Texture formats for more information) | |
b4bghardedge/bg03_02.tif | |||
0x11DC0 | 0x10900 | Texture name "2". | |
b4bghardedge/bg03_01.tif | |||
0x224C0 | 0x21000 | Texture name "3". | |
Ambiguous data aside, the texture names will always be the same as the file index number. |