FS:OpenArchive: Difference between revisions
Jump to navigation
Jump to search
| Line 118: | Line 118: | ||
| 0x1234567F | | 0x1234567F | ||
| ? | | ? | ||
| | | No | ||
| Yes | | Yes | ||
|- | |- | ||
| 0x2345678A | | 0x2345678A | ||
| User/GameCard SaveData (for check) | | User/GameCard SaveData (for check), and other uses (FS can only mount the latter) | ||
| | | Yes | ||
| Yes | | Yes | ||
|- | |- | ||
| Line 142: | Line 142: | ||
|- | |- | ||
| 0x2345678E | | 0x2345678E | ||
| SaveData, ExeFS, and RomFS ( | | SaveData, ExeFS, and RomFS (For [[Filesystem_services|FS]], only ExeFS) | ||
| Yes | | Yes | ||
| Yes | | Yes | ||
| Line 148: | Line 148: | ||
| 0x567890AB | | 0x567890AB | ||
| NAND CTR FS | | NAND CTR FS | ||
| | | No | ||
| Yes | | Yes | ||
|- | |- | ||
| Line 158: | Line 158: | ||
| 0x567890AD | | 0x567890AD | ||
| ? | | ? | ||
| | | No | ||
| Yes | | Yes | ||
|- | |- | ||
Revision as of 16:55, 11 August 2012
Request
| Index Word | Description |
|---|---|
| 0 | Header code [0x080C00C2] |
| 1 | Archive idcode |
| 2 | LowPath.Type |
| 3 | LowPath.Size |
| 4 | (LowPath.Size<<14) | 2 |
| 5 | LowPath.Data pointer |
Response
| Index Word | Description |
|---|---|
| 0 | Header code |
| 1 | Resultcode |
| 2 | Archive handle lower word |
| 3 | Archive handle upper word |
Archive idcodes
| Idcode | Description | Accessible via FS | Accessible via FSPXI |
|---|---|---|---|
| 0x00000003 | Application RomFS | Yes | No |
| 0x00000004 | SaveData | Yes | No |
| 0x00000006 | ExtSaveData | Yes | No |
| 0x00000007 | Shared ExtSaveData | Yes | No |
| 0x00000008 | SystemSaveData | Yes | No |
| 0x00000009 | SDMC | Yes | Yes |
| 0x0000000A | SDMC Write-Only | Yes | No |
| 0x12345678 | ExtSaveData for BOSS | Yes | No |
| 0x12345679 | ? | Yes | Yes |
| 0x1234567B | ExtSaveData, and ExtSaveData for BOSS | No | Yes |
| 0x1234567C | SystemSaveData | No | Yes |
| 0x1234567D | NAND RW | Yes | Yes |
| 0x1234567E | NAND RO | Yes | Yes |
| 0x1234567F | ? | No | Yes |
| 0x2345678A | User/GameCard SaveData (for check), and other uses (FS can only mount the latter) | Yes | Yes |
| 0x2345678B | ? | No | Yes |
| 0x2345678C | ? | No | Yes |
| 0x2345678D | ? | No | Yes |
| 0x2345678E | SaveData, ExeFS, and RomFS (For FS, only ExeFS) | Yes | Yes |
| 0x567890AB | NAND CTR FS | No | Yes |
| 0x567890AC | TWL PHOTO | Yes | Yes |
| 0x567890AD | ? | No | Yes |
| 0x567890AE | NAND TWL FS | Yes | Yes |
| 0x567890AF | ? | Yes | Yes |
| 0x567890B0 | ? | No | Yes |
| 0x567890B1 | Gamecard SaveData (for check) | Yes | No |
| 0x567890B2 | UserSaveData (for check) | Yes | No |
Archives 0x1234567F, 0x567890AE, 0x567890AF, and 0x12345679 require the corresponding application exheader access control mount flag to be set. The access rights checked by FS module for archive mounting with fs:USER, are stored in the process' exheader accessinfo.
Archive LowPath.Data format
Each archive has a separate LowPath format, some archives' LowPath are unused which are not listed here.
| Archive | LowPath.Data format |
|---|---|
| (Shared)ExtSaveData(BOSS) | +0 u8 mediatype, +4 u64 ExtdataID |
| SystemSaveData | +0 u8 mediatype, +4 u32 savedataid |
| UserSaveDataForCheck | +0 u8 mediatype, +4 u64 savedataid |
SystemSaveData mediatype must always be NAND. UserSaveDataForCheck mediatype must not be NAND.
Mediatypes
| Type | Description |
|---|---|
| 0 | NAND |
| 1 | SD |
| 2 | Gamecard |