|
|
(11 intermediate revisions by 6 users not shown) |
Line 11: |
Line 11: |
| | Transaction (usually 0) | | | Transaction (usually 0) |
| |- | | |- |
− | | 2 | + | | 2-3 |
− | | Archive handle lower word
| + | | u64, Archive Handle |
− | |-
| |
− | | 3
| |
− | | Archive handle upper word | |
| |- | | |- |
| | 4 | | | 4 |
− | | LowPath.Type | + | | [[Filesystem_services#PathType|Path Type]] |
| |- | | |- |
| | 5 | | | 5 |
− | | LowPath.Size | + | | Path Size (including null-terminator) |
| |- | | |- |
| | 6 | | | 6 |
− | | OpenFlags | + | | [[Filesystem_services#OpenFlags|Open Flags]] |
| |- | | |- |
| | 7 | | | 7 |
− | | Attributes (usually 0) | + | | [[Filesystem_services#Attributes|Attributes]] (usually 0) |
| |- | | |- |
| | 8 | | | 8 |
− | | (LowPath.Size<<14) <nowiki>|</nowiki> 2 | + | | (PathSize << 14) <nowiki>|</nowiki> 2 |
| |- | | |- |
| | 9 | | | 9 |
− | | LowPath.Data pointer | + | | Path Data Pointer |
| |} | | |} |
| | | |
Line 46: |
Line 43: |
| |- | | |- |
| | 1 | | | 1 |
− | | Resultcode | + | | Result code |
− | |-
| |
− | | 3
| |
− | | File handle
| |
− | |}
| |
− | | |
− | =OpenFlags=
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Bit
| |
− | ! Description
| |
− | |-
| |
− | | 0
| |
− | | Read
| |
− | |-
| |
− | | 1
| |
− | | Write
| |
| |- | | |- |
| | 2 | | | 2 |
− | | Create | + | | Move handle descriptor (0x10) |
− | |}
| |
− | | |
− | = Attributes =
| |
− | {| class="wikitable" border="1"
| |
| |- | | |- |
− | ! Flag
| + | | 3 |
− | ! Description
| + | | File client session handle |
− | |-
| |
− | | 0x00000001
| |
− | | Is Read-Only
| |
− | |-
| |
− | | 0x00000100
| |
− | | Is Archive
| |
− | |-
| |
− | | 0x00010000
| |
− | | Is Hidden
| |
− | |-
| |
− | | 0x01000000
| |
− | | Is Directory
| |
− | |}
| |
− | | |
− | =LowPath=
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! 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 ====
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Index word
| |
− | ! Description
| |
− | |-
| |
− | | 0
| |
− | | [[Mediatypes|Mediatype]] (must be zero for NAND)
| |
− | |-
| |
− | | 1
| |
− | | saveid
| |
− | |}
| |
− | The file/directory lowpath is a text lowpath in the [[Savegames|savegame]] filesystem.
| |
− | | |
− | ==== FSPXI ====
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! 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 cleartext savegame image.
| |
− | | |
− | === UserSaveDataForCheck Archive Path Data Format ===
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! 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 [[Savegames|savegame]] filesystem.
| |
− | | |
− | === ExtSaveData Archive Path Data Format ===
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! 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 cleartext extdata image to mount.
| |