Filesystem services: Difference between revisions

 
(7 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 275: Line 281:
|-
|-
| 640 || [4.0.0-7.0.1] IsSignedSystemPartitionOnSdCardValid
| 640 || [4.0.0-7.0.1] IsSignedSystemPartitionOnSdCardValid
|-
| 650 || [S2]
|-
|-
| 651 || [S2]
| 651 || [S2]
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]].


Web-applet loads the [[#FileSystemProxyType]] (which must be '''Manual''') from u32_table[inparam].
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 835: Line 843:


[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,602:
| 16 || [[#SetKeySeedPackage]]
| 16 || [[#SetKeySeedPackage]]
|-
|-
| 17 || [20.0.0+] SetLocalKeySeedPackage
| 17 || [20.0.0+] [[#SetLocalKeySeedPackage|SetLocalKeySeedPackage]]
|-
|-
| 32 || [[#OpenSaveDataExporter]]
| 32 || [[#OpenSaveDataExporter]]
Line 1,623: Line 1,634:
== 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,924: Line 1,940:


== OpenDevice ==
== OpenDevice ==
Returns an [[IStorageDevice]].
Returns an [[#IStorageDevice]].
 
== OpenStorage ==
== OpenStorage ==
Returns an [[IStorage]].
Returns an [[#IStorage]].


= IStorageDeviceOperator =
= IStorageDeviceOperator =
Line 1,976: Line 1,993:
= 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,026: Line 2,045:
|-
|-
| 0 || None
| 0 || None
|-
| 1 || [S2]
|-
|-
| 15 || All
| 15 || All