Beat Down XAF: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
imported>WATTO
No edit summary
imported>Ikskoks
No edit summary
 
(5 intermediate revisions by 3 users not shown)
Line 34: Line 34:
: byte {X}&nbsp;&nbsp;&nbsp;&nbsp; - File Data <br>  
: byte {X}&nbsp;&nbsp;&nbsp;&nbsp; - File Data <br>  
: byte {0-2047}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - null Padding to a multiple of 2048 bytes <br>  
: byte {0-2047}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - null Padding to a multiple of 2048 bytes <br>  
</b></tt>
</b></tt><br>


=== MultiEx BMS ===  
=== MultiEx BMS ===  


Not written yet<br><br>
<pre>ImpType Standard ;
<br>
IDString 0 XAF ;
Set TEMP Long 40 ;
GoTo TEMP 0 ;
Get FILENUM Long 0 ;
Set FNAMEX Long FILENUM ;
Math FNAMEX *= 8 ;
Math FNAMEX += 64 ;
Set TEMP Long 64 ;
GoTo TEMP 0 ;
For F = 1 To FILENUM ;
SavePos FOFFSETX 0 ;
Get FOFFSET Long 0 ;
SavePos FSIZEX 0 ;
Get FSIZE Long 0 ;
SavePos NEXTFILE 0 ;
GoTo FNAMEX 0 ;
GetDString FNAME 260 0 ;
SavePos FNAMEX 0 ;
GoTo NEXTFILE 0 ;
Log FNAME FOFFSET FSIZE FOFFSETX FSIZEX ;
Next F ;</pre><br>
=== Supported Programs ===  
=== Supported Programs ===  


* [[Game Extractor|Game Extractor]]<br>
* [[Game Extractor|Game Extractor]]<br>
* [[MultiEx Commander|MultiEx Commander]]<br>
[[Category:BMS]]
[[Category:File Format]]

Latest revision as of 13:47, 3 January 2021

Choose archive extension:

XAF


Format Specifications

char {4}     - Header ("XAF" + null)
uint32 {4}   - Max Filename Length (256)
char {28}    - Description (XPEC Entertainment Inc. 2003)
uint32 {4}   - null
uint32 {4}   - Number Of Files
uint32 {4}   - Number Of Files [+1]
uint32 {4}   - Archive Size
byte {12}    - null

// for each file

uint32 {4}   - File Offset
uint32 {4}   - File Length


// for each file

char {256}   - Filename (null-terminated)
uint32 {4}   - null


byte {X}     - null Padding to a multiple of 2048 bytes

// for each file

byte {X}     - File Data
byte {0-2047}      - null Padding to a multiple of 2048 bytes


MultiEx BMS

ImpType Standard ;
IDString 0 XAF ;
Set TEMP Long 40 ;
GoTo TEMP 0 ;
Get FILENUM Long 0 ;
Set FNAMEX Long FILENUM ;
Math FNAMEX *= 8 ;
Math FNAMEX += 64 ;
Set TEMP Long 64 ;
GoTo TEMP 0 ;
For F = 1 To FILENUM ;
SavePos FOFFSETX 0 ;
Get FOFFSET Long 0 ;
SavePos FSIZEX 0 ;
Get FSIZE Long 0 ;
SavePos NEXTFILE 0 ;
GoTo FNAMEX 0 ;
GetDString FNAME 260 0 ;
SavePos FNAMEX 0 ;
GoTo NEXTFILE 0 ;
Log FNAME FOFFSET FSIZE FOFFSETX FSIZEX ;
Next F ;


Supported Programs