Difference between revisions of "PFS0 (File Format)"

From Deep Sea Knowledge
Jump to navigation Jump to search
(Created the page)
 
m (Padding)
 
(One intermediate revision by the same user not shown)
Line 17: Line 17:
 
| 0x10 || FileEntryTable[] || Array of file entry tables (see below)
 
| 0x10 || FileEntryTable[] || Array of file entry tables (see below)
 
|-
 
|-
| N/A || string[] || Array of null-terminated filename strings
+
| N/A || string[] || Array of null-terminated filename strings, padded to 0x20
 
|-
 
|-
 
| N/A || byte[] || Actual file data
 
| N/A || byte[] || Actual file data
Line 36: Line 36:
 
| 0x14 || UInt32 || Padding, all-zeroes
 
| 0x14 || UInt32 || Padding, all-zeroes
 
|}
 
|}
 +
 +
[[Category:File formats]]

Latest revision as of 06:02, 14 November 2018

The PFS0 (Partition FS) format is used within NCAs, and is a Switch-exclusive format.

Header

Offset Type Description
0x0 UInt32 The "PFS0" magic (0x30534650 in LE)
0x4 UInt32 Number of files within the PFS
0x8 UInt32 Size of the string table
0xC UInt32 Padding, all-zeroes
0x10 FileEntryTable[] Array of file entry tables (see below)
N/A string[] Array of null-terminated filename strings, padded to 0x20
N/A byte[] Actual file data

File entry table

Offset Type Description
0x0 UInt64 Offset of file in PFS
0x8 UInt64 Size of file
0x10 UInt32 Offset of name in string table
0x14 UInt32 Padding, all-zeroes