Showdown -Legends of Wrestling DR: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks No edit summary |
imported>Ikskoks m (Ikskoks moved page Showdown -Legends of Wrestling to Showdown -Legends of Wrestling DR) |
| (2 intermediate revisions by the same user not shown) | |
(No difference)
| |
Latest revision as of 11:55, 21 January 2021
Choose archive extension:
DR
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// MexCom - Recreation of \showdown\dr.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
#DECLARE CP = CURRENT OFFSET
==> End Of File
#DECLARE END = CURRENT OFFSET
==>CP
** DO
uint32{4} Width
uint32{4} Heigth
$$ CALCULATE FileSize * Width
uint32{4} Unknown
uint32{4} NameSize
char{} IDName
char{} FileName
// Resources have a name (FileName), are located at Offset and have a size of FileSize
$$ CALCULATE CP + FileSize
==>CP
** WHILE CP < END
// ----------------------------
// MexCom - Recreation complete
MultiEx BMS
SavePos CP 0 ; GoTo EOF 0 ; SavePos END 0 ; GoTo CP 0 ; Do ; Set Offset Long CP ; Get Width Long 0 ; Get Heigth Long 0 ; Set FileSize Long Heigth ; Math FileSize *= Width ; Get Unknown Long 0 ; Get NameSize Long 0 ; Get IDName String 0 ; Get FileName String 0 ; Log FileName Offset FileSize 0 0 ; Math CP += FileSize ; GoTo CP 0 ; While CP < END ;
Notes and Comments
The BMS script assumes all resources in the archives are padded according to a certain width and heigth (saved at the beginning of the file). They have a header that includes their own name.