Arcanum: Difference between revisions
Jump to navigation
Jump to search
imported>Mr.Mouse mNo edit summary |
imported>Ikskoks No edit summary |
||
| (6 intermediate revisions by 2 users not shown) | |||
| Line 56: | Line 56: | ||
// Resources have a name (FN), are located at FO have a compressed size of FS, and an uncompressed size of OS | // Resources have a name (FN), are located at FO, | ||
// have a compressed size of FS, and an uncompressed size of OS | |||
** End Repeated entry (TE) | ** End Repeated entry (TE) | ||
| Line 62: | Line 64: | ||
// MexCom - Recreation complete | // MexCom - Recreation complete | ||
</pre> | </pre> | ||
=== MultiEx BMS === | === MultiEx BMS === | ||
| Line 101: | Line 102: | ||
<!-- Insert comments here --> | <!-- Insert comments here --> | ||
The format | The format specifications were taken from "reverse engineering" of MultiEx BMS. | ||
Read with care. | Read with care. | ||
=== Supported by Programs === | === Supported by Programs === | ||
<!-- Insert programs that open the format here --> | <!-- Insert programs that open the format here --> | ||
* [[MultiEx_Commander|MultiEx Commander]] | * [[MultiEx_Commander|MultiEx Commander]] | ||
[[Category:File Format]] | |||
Latest revision as of 01:34, 3 January 2021
Choose archive extension:
DAT
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// MexCom - Recreation of Arcanum .DAT
// ----------------------------
// Format Specification
// COMPRESSION: ZLIB
(ArchSize) AS
$$ CALCULATE AS - 4
==>AS
uint32{4} TS
$$ CALCULATE AS - TS
==>AS
uint32{4} FSP
==>FSP
uint32{4} FA
** Start Repeated entry (TE) {FA}
uint32{4} SS
char{} Filename of resource (FN)
#DECLARE FSP = CURRENT FILE POINTER
$$ CALCULATE FSP + 8
==>FSP
#DECLARE OSO = CURRENT FILE POINTER
uint32{4} OS
#DECLARE FSO = CURRENT FILE POINTER
uint32{4} FS
#DECLARE FOO = CURRENT FILE POINTER
uint32{4} Offset of resource (FO)
// Resources have a name (FN), are located at FO,
// have a compressed size of FS, and an uncompressed size of OS
** End Repeated entry (TE)
// ----------------------------
// MexCom - Recreation complete
MultiEx BMS
ImpType Standard ; ComType ZLib1 ; Get AS ASize 0 ; Math AS -= 4 ; GoTo AS 0 ; Get TS Long 0 ; Math AS -= TS ; GoTo AS 0 ; SavePos TailOffOff 0 ; Get FSP Long 0 ; GoTo FSP 0 ; Get FA Long 0 ; For TE = 1 To FA ; Get SS Long 0 ; Get FN String 0 ; SavePos FSP 0 ; Math FSP += 8 ; GoTo FSP 0 ; SavePos OSO 0 ; Get OS Long 0 ; SavePos FSO 0 ; Get FS Long 0 ; SavePos FOO 0 ; Get FO Long 0 ; CLog FN FO FS FOO FSO OS OSO ; Next TE ;
Notes and Comments
The format specifications were taken from "reverse engineering" of MultiEx BMS. Read with care.