GRAF:AFS AFS: Difference between revisions
imported>Mr.Mouse m (AFS AFS moved to GRAF:AFS AFS) |
imported>Dinoguy1000 No edit summary |
||
| Line 1: | Line 1: | ||
{{GRAFPageHeader}} | |||
== AFS == | |||
{{GRAFPageMisc|date_posted=20:39, December 11, 2005}} | |||
=== Format Specifications === | |||
{{GRAFPageFormat|1=char {4} - Header {{Purple|(AFS + null)}}<br> | |||
uint32 {4} - Number Of Files | |||
{{Blue| // for each file }} | |||
: uint32 {4} - Offset | |||
: uint32 {4} - Length | |||
uint32 {4} - Filename Directory Offset<br> | |||
byte {X} - File Data | |||
uint32 {4} | |||
{{Blue| // Filename Directory }} | |||
: {{Blue| // for each file }} | |||
:: char {32} - Filename {{Purple|(null)}} | |||
:: uint32 {4} - File Type ID | |||
:: uint16 {2} - {{Unknown}} | |||
:: uint16 {2} - {{Unknown}} | |||
byte {X} | :: uint16 {2} - {{Unknown}} | ||
:: uint16 {2} - {{Unknown}} | |||
:: uint32 {4} - Junk {{Green|(matches each value in the directory, including offsets and sizes, in order)}}}} | |||
: | |||
:: char {32} | === Notes and Comments === | ||
:: uint32 {4} | Each file, and the directory, are padded to multiples of 2048 bytes using null bytes. So, the first file will start at offset 2048, or 4096, etc, and similarly with the next files. | ||
:: uint16 {2} | |||
:: uint16 {2} | Some games (for example Grandia 2) don't have a filename directory (all entries are zero); however, the rest of the format is the same. | ||
:: uint16 {2} | |||
:: uint16 {2} | |||
:: uint32 {4} | |||
=== MultiEx BMS Script === | === MultiEx BMS Script === | ||
<bms ext="afs" games="'50 Cent: Bulletproof','DragonBall Z: Budokai 3','Leisure Suit Larry: Manga Cum Laude','Mortal Kombat Shaolin Monks','Phantasy Star Online','Pro Evolution Soccer 5','Silent Hill 3'" platforms="'PS2','PS2','PC','PS2','PC','PC','PC'" version="1.0" author="Mr.Mouse" verbose="no" silence="no">IDString 0 AFS ; | <bms ext="afs" games="'50 Cent: Bulletproof','DragonBall Z: Budokai 3','Leisure Suit Larry: Manga Cum Laude','Mortal Kombat Shaolin Monks','Phantasy Star Online','Pro Evolution Soccer 5','Silent Hill 3'" platforms="'PS2','PS2','PC','PS2','PC','PC','PC'" version="1.0" author="Mr.Mouse" verbose="no" silence="no">IDString 0 AFS ; | ||
ImpType Standard ; | ImpType Standard ; | ||
| Line 43: | Line 42: | ||
Log "" FO FS FOO FSO ; | Log "" FO FS FOO FSO ; | ||
Next T ; | Next T ; | ||
</bms | </bms> | ||
=== | === Supported by Programs === | ||
* {{ProgramSupportMexcom}} | |||
* {{ProgramSupportGameExtracter}} | |||
=== | === Links === | ||
None | |||
* [[ | === Games === | ||
* [[ | * [[50 Cent: Bulletproof (PS2)]] [[AFS|*.afs]] | ||
* [[DragonBall Z: Budokai 3 (PS2)]] [[AFS|*.afs]] | |||
* [[Grandia 2]] [[AFS|*.afs]] | |||
* [[Grandia 2 (Dreamcast)]] [[AFS|*.afs]] | |||
* [[House of the Dead 3]] [[AFS|*.afs]] | |||
* [[Leisure Suit Larry: Manga Cum Laude]] [[AFS|*.afs]] | |||
* [[Mortal Kombat Shaolin Monks (PS2)]] [[AFS|*.afs]] | |||
* [[Phantasy Star Online (XBox)]] [[AFS|*.afs]] | |||
* [[Pro Evolution Soccer 5]] [[AFS|*.afs]] | |||
* [[Silent Hill 3]] [[AFS|*.afs]] | |||
{{GRAFPageFooter}} | |||
[[Category:Platform PC|AFS AFS]] [[Category:Platform Dreamcast|AFS AFS]] [[Category:Platform PS2|AFS AFS]] [[Category:Platform XBox|AFS AFS]] [[Category:Complete Almost Done|AFS AFS]] [[Category:Format Common|AFS AFS]] [[Category:CE None|AFS AFS]] | |||
Revision as of 04:35, 11 December 2006
Back to index | Edit this page
AFS
- Format type: Archive
- Endianness: Little-endian
Format Specifications
uint32 {4} - Number Of Files
// for each file
- uint32 {4} - Offset
- uint32 {4} - Length
uint32 {4} - Filename Directory Offset
byte {X} - File Data
// Filename Directory
- // for each file
- char {32} - Filename (null)
- uint32 {4} - File Type ID
- uint16 {2} - Unknown
- uint16 {2} - Unknown
- uint16 {2} - Unknown
- uint16 {2} - Unknown
- uint32 {4} - Junk (matches each value in the directory, including offsets and sizes, in order)
Notes and Comments
Each file, and the directory, are padded to multiples of 2048 bytes using null bytes. So, the first file will start at offset 2048, or 4096, etc, and similarly with the next files.
Some games (for example Grandia 2) don't have a filename directory (all entries are zero); however, the rest of the format is the same.
MultiEx BMS Script
<bms ext="afs" games="'50 Cent: Bulletproof','DragonBall Z: Budokai 3','Leisure Suit Larry: Manga Cum Laude','Mortal Kombat Shaolin Monks','Phantasy Star Online','Pro Evolution Soccer 5','Silent Hill 3'" platforms="'PS2','PS2','PC','PS2','PC','PC','PC'" version="1.0" author="Mr.Mouse" verbose="no" silence="no">IDString 0 AFS ; ImpType Standard ; Get D Byte 0 ; Get FileNum Long 0 ; For T = 1 To FileNum ; SavePos FOO 0 ; Get FO Long 0 ; SavePos FSO 0 ; Get FS Long 0 ; Log "" FO FS FOO FSO ; Next T ; </bms>
Supported by Programs
Links
None
Games
- 50 Cent: Bulletproof (PS2) *.afs
- DragonBall Z: Budokai 3 (PS2) *.afs
- Grandia 2 *.afs
- Grandia 2 (Dreamcast) *.afs
- House of the Dead 3 *.afs
- Leisure Suit Larry: Manga Cum Laude *.afs
- Mortal Kombat Shaolin Monks (PS2) *.afs
- Phantasy Star Online (XBox) *.afs
- Pro Evolution Soccer 5 *.afs
- Silent Hill 3 *.afs