Filesystem services: Difference between revisions
No edit summary |
|||
| (15 intermediate revisions by 3 users not shown) | |||
| Line 133: | Line 133: | ||
|- | |- | ||
| 38 || [20.0.0+] DetachSdCard | | 38 || [20.0.0+] DetachSdCard | ||
|- | |||
| 39 || [21.0.0+] ShutdownStorage | |||
|- | |||
| 40 || [21.0.0+] FixSaveDataCertificate | |||
|- | |- | ||
| 51 || [[#OpenSaveDataFileSystem]] | | 51 || [[#OpenSaveDataFileSystem]] | ||
| Line 183: | Line 187: | ||
|- | |- | ||
| 87 || [11.0.0+] [[#OpenSaveDataTransferManagerForRepair]] | | 87 || [11.0.0+] [[#OpenSaveDataTransferManagerForRepair]] | ||
|- | |||
| 88 || [21.0.0+] OpenSaveDataTransferManagerForSaveDataRepairWithPolicy | |||
|- | |- | ||
| 100 || OpenImageDirectoryFileSystem | | 100 || OpenImageDirectoryFileSystem | ||
| Line 276: | Line 282: | ||
| 640 || [4.0.0-7.0.1] IsSignedSystemPartitionOnSdCardValid | | 640 || [4.0.0-7.0.1] IsSignedSystemPartitionOnSdCardValid | ||
|- | |- | ||
| 651 || [S2] | | 650 || [S2] RegisterTicketVersionKeys | ||
|- | |||
| 651 || [S2] RegisterCpDeviceUniqueKey | |||
|- | |- | ||
| 660 || [S2] | | 660 || [S2] GetProcessEnvironmentSource | ||
|- | |- | ||
| 700 || [5.0.0+] [[#OpenAccessFailureDetectionEventNotifier]] | | 700 || [5.0.0+] [[#OpenAccessFailureDetectionEventNotifier]] | ||
| Line 290: | Line 298: | ||
| 720 || [5.0.0+] AbandonAccessFailure | | 720 || [5.0.0+] AbandonAccessFailure | ||
|- | |- | ||
| 800 || [2.0.0+] GetAndClearErrorInfo | | 800 || [2.0.0+] [[#GetAndClearErrorInfo]] | ||
|- | |- | ||
| 810 || [7.0.0+] RegisterProgramIndexMapInfo | | 810 || [7.0.0+] RegisterProgramIndexMapInfo | ||
| Line 659: | Line 667: | ||
Takes an input [[#FileSystemProxyType]] and an input [[NCM_services#ProgramId|ProgramId]]. Returns an [[#IFileSystem]]. | Takes an input [[#FileSystemProxyType]] and an input [[NCM_services#ProgramId|ProgramId]]. Returns an [[#IFileSystem]]. | ||
The [[#FileSystemProxyType]] must be '''Manual'''. | |||
Note: web-applet strings refer to both this cmd and [[#OpenFileSystemWithId]] as "MountContent", but official nn_sf_sync symbols use "OpenXX" names. | Note: web-applet strings refer to both this cmd and [[#OpenFileSystemWithId]] as "MountContent", but official nn_sf_sync symbols use "OpenXX" names. | ||
| Line 761: | Line 769: | ||
== OpenSaveDataTransferManager == | == OpenSaveDataTransferManager == | ||
No input, returns an [[#ISaveDataTransferManager]]. | No input, returns an [[#ISaveDataTransferManager]]. | ||
[S2] Stubbed, just returns Result 0x177202. | |||
== OpenSaveDataTransferManagerVersion2 == | == OpenSaveDataTransferManagerVersion2 == | ||
| Line 835: | Line 845: | ||
[8.0.0+] Now takes an additional 8-bytes of input. | [8.0.0+] Now takes an additional 8-bytes of input. | ||
== GetAndClearErrorInfo == | |||
[21.0.0+] Now takes a type-0x1A output buffer and no longer returns 0x80-bytes of output. | |||
== SetSaveDataSize == | == SetSaveDataSize == | ||
| Line 1,591: | Line 1,604: | ||
| 16 || [[#SetKeySeedPackage]] | | 16 || [[#SetKeySeedPackage]] | ||
|- | |- | ||
| 17 || [20.0.0+] SetLocalKeySeedPackage | | 17 || [20.0.0+] [[#SetLocalKeySeedPackage|SetLocalKeySeedPackage]] | ||
|- | |- | ||
| 32 || [[#OpenSaveDataExporter]] | | 32 || [[#OpenSaveDataExporter]] | ||
| Line 1,623: | Line 1,636: | ||
== SetKeySeedPackage == | == SetKeySeedPackage == | ||
No input/output, takes a type-0x5 input buffer containing the '''KeySeedPackage'''. | No input/output, takes a type-0x5 input buffer containing the '''KeySeedPackage'''. | ||
== SetLocalKeySeedPackage == | |||
No input/output, takes a type-0x5 input buffer. | |||
This can only be used after [[#SetKeySeedPackage]], in certain conditions. | |||
== OpenSaveDataExporter == | == OpenSaveDataExporter == | ||
| Line 1,927: | Line 1,945: | ||
== OpenStorage == | == OpenStorage == | ||
Returns an [[IStorage]]. | Returns an [[#IStorage]]. | ||
= IStorageDeviceOperator = | = IStorageDeviceOperator = | ||
| Line 1,977: | Line 1,995: | ||
= FileSystemProxyType = | = FileSystemProxyType = | ||
This is "nn::fs::FileSystemProxyType". | This is "nn::fs::FileSystemProxyType". | ||
sdknso converts the input [[#ContentType|ContentType]] to a FileSystemProxyType, for use with the cmd input. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
| Line 2,027: | Line 2,047: | ||
|- | |- | ||
| 0 || None | | 0 || None | ||
|- | |||
| 1 || [S2] | |||
|- | |- | ||
| 15 || All | | 15 || All | ||
| Line 2,067: | Line 2,089: | ||
|- | |- | ||
| 101 || [3.0.0+] SafeMode | | 101 || [3.0.0+] SafeMode | ||
|- | |||
| 102 || [?+] ProperUser | |||
|} | |} | ||
| Line 2,290: | Line 2,314: | ||
| 33 || SystemProperPartition | | 33 || SystemProperPartition | ||
|- | |- | ||
| 34 || SignedSystemPartitionOnSafeMode | | 34 || [-?] SignedSystemPartitionOnSafeMode | ||
|- | |- | ||
| 35 || [16.0.0+] DeviceTreeBlob | | 35 || [16.0.0+] DeviceTreeBlob | ||
|- | |- | ||
| 36 || [16.0.0+] System0 | | 36 || [16.0.0+] System0 | ||
|- | |||
| 37 || System2 | |||
|- | |||
| 38 || [?+] System3 | |||
|- | |||
| 39 || [21.0.0+] UserProperPartition | |||
|} | |} | ||
System2 is not supported by FS, perhaps removed at some point? | |||
= SdCardSpeedMode = | = SdCardSpeedMode = | ||