Outlive DAT: Difference between revisions
Jump to navigation
Jump to search
imported>WATTO No edit summary |
imported>Ikskoks m (Ikskoks moved page Outlive to Outlive DAT) |
||
| (7 intermediate revisions by 2 users not shown) | |||
| Line 24: | Line 24: | ||
=== MultiEx BMS Script === | === MultiEx BMS Script === | ||
<pre>Get FILECNTL Long 0 ; | |||
SavePos FILEJMP 0 ; | |||
SavePos FILESTART 0 ; | |||
GoTo EOF 0 ; | |||
SavePos TAILOFF 0 ; | |||
Set DUMMYL Long FILECNTL ; | |||
Math DUMMYL *= 36 ; | |||
Math DUMMYL += 4 ; | |||
Math FILECNTL -= 1 ; | |||
Do ; | |||
GoTo FILESTART 0 ; | |||
GetDString FILENAME 32 0 ; | |||
Get FILEOFF Long 0 ; | |||
SavePos FILESTART 0 ; | |||
Set FILEJMP Long FILESTART ; | |||
Math FILEJMP += 32 ; | |||
GoTo FILEJMP 0 ; | |||
Get FILESIZE Long 0 ; | |||
Math FILESIZE -= FILEOFF ; | |||
Log FILENAME FILEOFF FILESIZE 0 0 ; | |||
Math EXTRCNT += 1 ; | |||
While EXTRCNT <> FILECNTL ; | |||
GoTo FILESTART 0 ; | |||
GetDString FILENAME 32 0 ; | |||
Get FILEOFF Long 0 ; | |||
Set FILESIZE Long TAILOFF ; | |||
Math FILESIZE -= FILEOFF ; | |||
Log FILENAME FILEOFF FILESIZE 0 0 ; | |||
</pre> | |||
=== Compatible Programs === | === Compatible Programs === | ||
* [[MultiEx Commander|MultiEx Commander]] | |||
* [[Game Extractor|Game Extractor]]<br> | * [[Game Extractor|Game Extractor]]<br> | ||
[[Category:File Format]] | |||
Latest revision as of 22:42, 16 January 2021
Choose archive extension:
DAT
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
uint32 {4} - Number Of Files
// for each file
- char {32} - Filename
- uint32 {4} - File Offset
byte {X} - File Data
MultiEx BMS Script
Get FILECNTL Long 0 ; SavePos FILEJMP 0 ; SavePos FILESTART 0 ; GoTo EOF 0 ; SavePos TAILOFF 0 ; Set DUMMYL Long FILECNTL ; Math DUMMYL *= 36 ; Math DUMMYL += 4 ; Math FILECNTL -= 1 ; Do ; GoTo FILESTART 0 ; GetDString FILENAME 32 0 ; Get FILEOFF Long 0 ; SavePos FILESTART 0 ; Set FILEJMP Long FILESTART ; Math FILEJMP += 32 ; GoTo FILEJMP 0 ; Get FILESIZE Long 0 ; Math FILESIZE -= FILEOFF ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; GoTo FILESTART 0 ; GetDString FILENAME 32 0 ; Get FILEOFF Long 0 ; Set FILESIZE Long TAILOFF ; Math FILESIZE -= FILEOFF ; Log FILENAME FILEOFF FILESIZE 0 0 ;