Request
Index Word
|
Description
|
0
|
Header code [0x080201C2]
|
1
|
Transaction (usually 0)
|
2
|
Archive handle lower word
|
3
|
Archive handle upper word
|
4
|
LowPath.Type
|
5
|
LowPath.Size
|
6
|
OpenFlags
|
7
|
Attributes (usually 0)
|
8
|
(LowPath.Size<<14) | 2
|
9
|
LowPath.Data pointer
|
Response
Index Word
|
Description
|
0
|
Header code
|
1
|
Resultcode
|
3
|
File handle
|
OpenFlags
Bit
|
Description
|
0
|
Read
|
1
|
Write
|
2
|
Create
|
Attributes
Flag
|
Description
|
0x00000001
|
Is Read-Only
|
0x00000100
|
Is Archive
|
0x00010000
|
Is Hidden
|
0x01000000
|
Is Directory
|
LowPath
Type
|
Description
|
0 (INVALID)
|
Specifies an invalid path.
|
1 (EMPTY)
|
Specifies an empty path.
|
2 (BINARY)
|
Specifies a binary path, which is non-text based.
|
3 (CHAR)
|
Specifies a text based path with a 8-bit byte per character.
|
4 (WCHAR)
|
Specifies a text based path with a 16-bit short per character.
|
Binary LowPath
The format of the data that a binary LowPath points to is custom per archive.
SystemSaveData Archive Path Data Format
FS
Index word
|
Description
|
0
|
Mediatype (must be zero for NAND)
|
1
|
saveid
|
The file/directory lowpath is a text lowpath in the savegame filesystem.
FSPXI
Index word
|
Description
|
0
|
This u8 is always zero?
|
The file lowpath is a binary lowpath containing the u64 saveid, however the high word of the saveid is always zero. The mounted file is the savegame image.
UserSaveDataForCheck Archive Path Data Format
Index word
|
Description
|
0
|
Mediatype (must be non-zero)
|
1
|
Lower word saveid
|
2
|
Upper word saveid
|
The file/directory lowpath for this FS archive is a text path in the savegame filesystem.
ExtSaveData Archive Path Data Format
Index word
|
Description
|
0
|
Mediatype
|
1
|
Lower word saveid
|
2
|
Upper word saveid
|
For FS, the file/directory lowpath is a text path in the extdata filesystem. For FSPXI, the file lowpath is a text path relative to the "/extdata/<ExtdataIDHigh>/<ExtdataIDLow>" directory on SD/NAND, for the extdata image to mount.