Dune: Difference between revisions
Jump to navigation
Jump to search
imported>WATTO No edit summary |
imported>Mr.Mouse mNo edit summary |
||
| Line 2: | Line 2: | ||
Choose archive extension: | Choose archive extension: | ||
== DAT == | |||
* ''' Format Type ''': Archive <br> | |||
* ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br> | |||
=== Format Specifications === | |||
<pre>// MexCom - Recreation of D:\Code\All Official MexFormats\Dune\dat.bms | |||
// THIS IS AN AUTOMATED SPECIFICATION | |||
// READ WITH CARE | |||
// ---------------------------- | |||
// LEGEND | |||
// ---------------------------- | |||
// ==> (Jump to offset) | |||
// #DECLARE (Set variable to value) | |||
// $$ CALCULATE (Calculate a new value) | |||
// ** (Section that repeats itself on condition) | |||
// // (Comment) | |||
// uint32{4} (Unsigned 32-bit value, 4 bytes) | |||
// uint16{2} (Unsigned 16-bit value, 2 bytes) | |||
// ubyte{1} (Unsigned 8-bit value, 1 byte) | |||
// char{n} (String value, n bytes in length | |||
// ---------------------------- | |||
// Format Specification | |||
uint16{2} FileNum | |||
** Start Repeated entry (T) {FileNum} | |||
char{16} Filename of resource (FN) | |||
#DECLARE SIZEOFF = CURRENT OFFSET | |||
uint32{4} SIZE | |||
#DECLARE OFFOFF = CURRENT OFFSET | |||
uint32{4} OFF | |||
ubyte{1} DUM | |||
// Resources have a name (FN), are located at OFF and have a size of SIZE | |||
** End Repeated entry (T) | |||
// ---------------------------- | |||
// MexCom - Recreation complete | |||
</pre> | |||
=== MultiEx BMS Script === | |||
<pre>Get FileNum Int 0 ; | |||
For T = 1 To FileNum ; | |||
GetDString FN 16 0 ; | |||
SavePos SIZEOFF 0 ; | |||
Get SIZE Long 0 ; | |||
SavePos OFFOFF 0 ; | |||
Get OFF Long 0 ; | |||
Get DUM Byte 0 ; | |||
Log FN OFF SIZE OFFOFF SIZEOFF ; | |||
Next T ; | |||
</pre> | |||
=== Notes and Comments === | |||
The files in the directory are in a different order to the files in the archive. eg. File 1 in the directory may be File 482 in the archive.<br><br> | |||
=== Compatible Programs === | |||
* [[Game Extractor|Game Extractor]]<br> | |||
== DUN == | == DUN == | ||
Revision as of 18:58, 22 May 2005
Choose archive extension:
DAT
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// MexCom - Recreation of D:\Code\All Official MexFormats\Dune\dat.bms
// THIS IS AN AUTOMATED SPECIFICATION
// READ WITH CARE
// ----------------------------
// LEGEND
// ----------------------------
// ==> (Jump to offset)
// #DECLARE (Set variable to value)
// $$ CALCULATE (Calculate a new value)
// ** (Section that repeats itself on condition)
// // (Comment)
// uint32{4} (Unsigned 32-bit value, 4 bytes)
// uint16{2} (Unsigned 16-bit value, 2 bytes)
// ubyte{1} (Unsigned 8-bit value, 1 byte)
// char{n} (String value, n bytes in length
// ----------------------------
// Format Specification
uint16{2} FileNum
** Start Repeated entry (T) {FileNum}
char{16} Filename of resource (FN)
#DECLARE SIZEOFF = CURRENT OFFSET
uint32{4} SIZE
#DECLARE OFFOFF = CURRENT OFFSET
uint32{4} OFF
ubyte{1} DUM
// Resources have a name (FN), are located at OFF and have a size of SIZE
** End Repeated entry (T)
// ----------------------------
// MexCom - Recreation complete
MultiEx BMS Script
Get FileNum Int 0 ; For T = 1 To FileNum ; GetDString FN 16 0 ; SavePos SIZEOFF 0 ; Get SIZE Long 0 ; SavePos OFFOFF 0 ; Get OFF Long 0 ; Get DUM Byte 0 ; Log FN OFF SIZE OFFOFF SIZEOFF ; Next T ;
Notes and Comments
The files in the directory are in a different order to the files in the archive. eg. File 1 in the directory may be File 482 in the archive.
Compatible Programs
DUN
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
byte {4} - Header? (114 16 234 244)
uint32 {4} - null
uint32 {4} - Directory Offset
uint32 {4} - Number Of Files
byte {X} - File Data
// Directory
- // for each file
- char {X} - Filename (some starting with "..\" or "R:\")
- byte {1} - Filename Terminator (10)
- uint32 {4} - File Offset
- uint32 {4} - File Length
- char {X} - Filename (some starting with "..\" or "R:\")
MultiEx BMS Script
Not written yet
Notes and Comments
The files in the directory are in a different order to the files in the archive. eg. File 1 in the directory may be File 482 in the archive.