Microsoft Compound Document: Difference between revisions
Jump to navigation
Jump to search
imported>WATTO No edit summary |
imported>Ikskoks No edit summary |
||
| (2 intermediate revisions by 2 users not shown) | |||
| Line 61: | Line 61: | ||
* [[Game Extractor|Game Extractor]]<br> | * [[Game Extractor|Game Extractor]]<br> | ||
[[Category:File Format]] | |||
Latest revision as of 15:39, 10 January 2021
TRL
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// DOCUMENT HEADER
- uint64 {8} - Header (208,207,17,224,161,177,26,225)
- byte {16} - Unique File ID (null)
- uint16 {2} - Revision Number (62)
- uint16 {2} - Version Number (3)
- uint16 {2} - Byte Order Mark ((byte)(254,255) = little endian)
- uint16 {2} - Sector Size (2^value) (9=512)
- uint16 {2} - Short Sector Size (2^value) (6=64)
- byte {10} - null
- uint32 {4} - Number Of Sectors in the sector allocation table (256)
- uint32 {4} - SID of the first sector in the directory stream (1)
- uint32 {4} - null
- uint32 {4} - Minimum size of a standard stream (4096) (streams smaller are short-streams)
- uint32 {4} - SID of the first sector of the short-sector allocation table (200)
- uint32 {4} - Number Of Sectors in the short-sector allocation table (37)
- uint32 {4} - SID of the first sector of the master allocation table
- uint32 {4} - Number Of Sectors in the master allocation table (2)
- byte {436} - First part of the master allocation table {
- // for each (109){
- uint32 {4} - SID
- }
- uint32 {4} - SID
- }
- // for each (109){
// for each file (128-bytes per entry)
- char {64} - Filename (null-terminated) (unicode text)
- uint16 {2} - Filename Length (including null)
- byte {1} - Entry Type (0=Empty, 1=Directory, 2=File, 5=Root Directory)
- byte {1} - Node Color (0=Red, 1=Black)
- uint32 {4} - DID of the left child node (-1 for no node)
- uint32 {4} - DID of the right child node (-1 for no node)
- uint32 {4} - DID of the root child node (-1 for no node)
- byte {16} - Unique ID (can be null)
- uint32 {4} - Flags
- uint64 {8} - Creation Timestamp
- uint64 {8} - Modification Timestamp
- uint32 {4} - SID of the first or short sector (File), SID of the first sector in short-stream (Root)
- uint32 {4} - File Length (File), Size of the short-stream container (Root)
- uint32 {4} - null
MultiEx BMS
Not written yet
Notes and Comments
- This is an instance of the Microsoft Compound Document format. It is a complicated format, and thus the Game Extractor support is quite poor/limited. You will also be able to find much better and complete documentation elsewhere (on the OpenOffice website?)