FS:OpenArchive
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 | Requires binary Lowpath |
---|---|---|---|---|
0x00000003 | Application RomFS | Yes | No | No |
0x00000004 | SaveData (the saveID/mediatype for this is loaded from data originally from the user process' exheader) | Yes | No | No |
0x00000006 | ExtSaveData | Yes | No | Yes |
0x00000007 | Shared ExtSaveData | Yes | No | Yes |
0x00000008 | SystemSaveData | Yes | No | Yes |
0x00000009 | SDMC | Yes | Yes | No |
0x0000000A | SDMC Write-Only | Yes | No | No |
0x12345678 | ExtSaveData for BOSS | Yes | No | Yes |
0x12345679 | CARD SPI FS | Yes | Yes | No |
0x1234567B | ExtSaveData, and ExtSaveData for BOSS | No | Yes | Yes |
0x1234567C | SystemSaveData | No | Yes | Yes |
0x1234567D | NAND RW | Yes | Yes | No |
0x1234567E | NAND RO | Yes | Yes | No |
0x1234567F | NAND RO Write FS | No | Yes | No |
0x2345678A | User/GameCard SaveData (for check), and other uses (FS can only mount the latter) (lo hi mediatype reserved) | Yes | Yes | Yes |
0x2345678B | ? | No | No | Yes |
0x2345678C | ? | No | No | Yes |
0x2345678D | ? | No | No | No |
0x2345678E | SaveData, ExeFS, and RomFS (For fs:LDR, only ExeFS) | Yes | Yes | Yes |
0x567890AB | NAND CTR FS | No | Yes | No |
0x567890AC | TWL PHOTO | Yes | Yes | No |
0x567890AD | ? | No | Yes | No |
0x567890AE | NAND TWL FS | Yes | Yes | No |
0x567890AF | NAND W FS | Yes | Yes | No |
0x567890B0 | ? | No | Yes | No |
0x567890B1 | Gamecard SaveData (for check). This is a wrapper for UserSaveDataForCheck: the OpenArchive code for that is called with archive-lowpath TID=0/mediatype=2(gamecard). | Yes | No | No |
0x567890B2 | UserSaveData (for check). This is the same as the regular SaveData archive, except with this the savedata ID and mediatype is loaded from the input archive lowpath. | Yes | No | Yes |
0x567890B4 | ? SaveData from Demo Version of Retail Game | Yes | No | No |
Archives listed as not requiring a binary lowpath, use lowpath type empty.
Archives CTR NAND, NAND RO Write FS, TWL NAND, NAND W FS, and CARD SPI FS require the corresponding process exheader access control mount flag to be set, in the exheader for any of the currently running ARM11 processes, for FSPXI. The access rights checked by FS module for archive mounting with fs:USER, are stored in the process' exheader accessinfo.
The CARDSPI archive allows access to the gamecard CARD1 raw savedata flash(aka "cardspi:/" in Process9), the file lowpath must be WCHAR "/". The "NAND W FS" archive allows access to the raw NAND image(aka "wnand:/" in Process9), the file lowpath must be WCHAR "/".