Filesystem services: Difference between revisions

 
(14 intermediate revisions by 4 users not shown)
Line 282: Line 282:
| 640 || [4.0.0-7.0.1] IsSignedSystemPartitionOnSdCardValid
| 640 || [4.0.0-7.0.1] IsSignedSystemPartitionOnSdCardValid
|-
|-
| 650 || [S2]
| 650 || [S2] RegisterTicketVersionKeys
|-
|-
| 651 || [S2]
| 651 || [S2] RegisterCpDeviceUniqueKey
|-
|-
| 660 || [S2]
| 660 || [S2] GetProcessEnvironmentSource
|-
|-
| 700 || [5.0.0+] [[#OpenAccessFailureDetectionEventNotifier]]
| 700 || [5.0.0+] [[#OpenAccessFailureDetectionEventNotifier]]
Line 310: Line 310:
| 1002 || [[#SetSaveDataRootPath]]
| 1002 || [[#SetSaveDataRootPath]]
|-
|-
| 1003 || DisableAutoSaveDataCreation
| 1003 || [1.0.0-21.2.0] DisableAutoSaveDataCreation
|-
|-
| 1004 || [[#SetGlobalAccessLogMode]]
| 1004 || [[#SetGlobalAccessLogMode]]
Line 407: Line 407:
| 0xF || CanMountBisSystemProperPartition || 0x8000000000000080 || RW || [[#OpenBisFileSystem]]
| 0xF || CanMountBisSystemProperPartition || 0x8000000000000080 || RW || [[#OpenBisFileSystem]]
|-
|-
| 0x10 || CanMountSdCard || 0xC000000000200000 || RW || [[#OpenSdCardFileSystem]]
| [21.0.0+] 0x10 || || 0x8000000000008080 || || [[#OpenBisFileSystem]]
|-
|-
| 0x11 || CanMountGameCard || 0x8000000000000010 || R- || [[#OpenGameCardFileSystem]]
| [-20.5.0] 0x10 [21.0.0+] 0x11 || CanMountSdCard || 0xC000000000200000 || RW || [[#OpenSdCardFileSystem]]
|-
|-
| 0x12 || CanMountDeviceSaveData || 0x8000000000040020 || RW || [[#OpenSaveDataFileSystem]]
| [-20.5.0] 0x11 [21.0.0+] 0x12 || CanMountGameCard || 0x8000000000000010 || R- || [[#OpenGameCardFileSystem]]
|-
|-
| 0x13 || CanMountSystemSaveData || 0x8000000000000028 || RW || [[#OpenSaveDataFileSystemBySystemSaveDataId]]
| [-20.5.0] 0x12 [21.0.0+] 0x13 || CanMountDeviceSaveData || 0x8000000000040020 || RW || [[#OpenSaveDataFileSystem]]
|-
|-
| 0x14 || CanMountOthersSaveData || 0x8000000000000020 || RW || [[#OpenSaveDataFileSystem]]
| [-20.5.0] 0x13 [21.0.0+] 0x14 || CanMountSystemSaveData || 0x8000000000000028 || RW || [[#OpenSaveDataFileSystemBySystemSaveDataId]]
|-
|-
| 0x15 || CanMountOthersSystemSaveData || 0x8000000000000020 || RW || [[#OpenSaveDataFileSystemBySystemSaveDataId]]
| [-20.5.0] 0x14 [21.0.0+] 0x15 || CanMountOthersSaveData || 0x8000000000000020 || RW || [[#OpenSaveDataFileSystem]]
|-
|-
| 0x16 || CanOpenBisPartitionBootPartition1Root || 0x8000000000010082 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x15 [21.0.0+] 0x16 || CanMountOthersSystemSaveData || 0x8000000000000020 || RW || [[#OpenSaveDataFileSystemBySystemSaveDataId]]
|-
|-
| 0x17 || CanOpenBisPartitionBootPartition2Root || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x16 [21.0.0+] 0x17 || CanOpenBisPartitionBootPartition1Root || 0x8000000000010082 || RW || [[#OpenBisStorage]]
|-
|-
| 0x18 || CanOpenBisPartitionUserDataRoot || 0x8000000000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x17 [21.0.0+] 0x18 || CanOpenBisPartitionBootPartition2Root || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x19 || CanOpenBisPartitionBootConfigAndPackage2Part1 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x18 [21.0.0+] 0x19 || CanOpenBisPartitionUserDataRoot || 0x8000000000000080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x1A || CanOpenBisPartitionBootConfigAndPackage2Part2 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x19 [21.0.0+] 0x1A || CanOpenBisPartitionBootConfigAndPackage2Part1 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x1B || CanOpenBisPartitionBootConfigAndPackage2Part3 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x1A [21.0.0+] 0x1B || CanOpenBisPartitionBootConfigAndPackage2Part2 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x1C || CanOpenBisPartitionBootConfigAndPackage2Part4 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x1B [21.0.0+] 0x1C || CanOpenBisPartitionBootConfigAndPackage2Part3 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x1D || CanOpenBisPartitionBootConfigAndPackage2Part5 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x1C [21.0.0+] 0x1D || CanOpenBisPartitionBootConfigAndPackage2Part4 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x1E || CanOpenBisPartitionBootConfigAndPackage2Part6 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x1D [21.0.0+] 0x1E || CanOpenBisPartitionBootConfigAndPackage2Part5 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x1F || CanOpenBisPartitionCalibrationBinary || 0x8000000000000084 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x1E [21.0.0+] 0x1F || CanOpenBisPartitionBootConfigAndPackage2Part6 || 0x8000000000010080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x20 || CanOpenBisPartitionCalibrationFile || 0x8000000000000084 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x1F [21.0.0+] 0x20 || CanOpenBisPartitionCalibrationBinary || 0x8000000000000084 || RW || [[#OpenBisStorage]]
|-
|-
| 0x21 || CanOpenBisPartitionSafeMode || 0x8000000000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x20 [21.0.0+] 0x21 || CanOpenBisPartitionCalibrationFile || 0x8000000000000084 || RW || [[#OpenBisStorage]]
|-
|-
| 0x22 || CanOpenBisPartitionUser || 0x8000000000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x21 [21.0.0+] 0x22 || CanOpenBisPartitionSafeMode || 0x8000000000000080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x23 || CanOpenBisPartitionSystem || 0x8000000000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x22 [21.0.0+] 0x23 || CanOpenBisPartitionUser || 0x8000000000000080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x24 || CanOpenBisPartitionSystemProperEncryption || 0x8000000000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x23 [21.0.0+] 0x24 || CanOpenBisPartitionSystem || 0x8000000000000080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x25 || CanOpenBisPartitionSystemProperPartition || 0x8000000000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x24 [21.0.0+] 0x25 || CanOpenBisPartitionSystemProperEncryption || 0x8000000000000080 || RW || [[#OpenBisStorage]]
|-
|-
| 0x26 || CanOpenBisPartitionDeviceTreeBlob || 0x8000002000000080 || RW || [[#OpenBisStorage]]
| [-20.5.0] 0x25 [21.0.0+] 0x26 || CanOpenBisPartitionSystemProperPartition || 0x8000000000000080 || RW || [[#OpenBisStorage]]
|-
|-
| [3.0.0+] 0x27 || CanOpenSdCardStorage || 0xC000000000200000 || RW ||  
| [-20.5.0] 0x26 [21.0.0+] 0x27 || CanOpenBisPartitionDeviceTreeBlob || 0x8000002000000080 || RW || [[#OpenBisStorage]]
|-
|-
| [3.0.0+] 0x28 || CanOpenGameCardStorage || 0x8000000000000100 || RW || [[#OpenGameCardStorage]], [[#EraseGameCard]] (bit1), [[#WriteToGameCard]] (bit1), [[#GetGameCardErrorInfo]] (bit1), [[#EraseAndWriteParamDirectly]] (bit1), [[#ReadParamDirectly]] (bit1), [[#ForceEraseGameCard]] (bit1)
| [3.0.0-20.5.0] 0x27 [21.0.0+] 0x28 || CanOpenSdCardStorage || 0xC000000000200000 || RW ||  
|-
|-
| [4.0.0+] 0x29 || CanMountSystemDataPrivate || 0x8000000000100008 || R- || [[#OpenFileSystem]], [[#OpenDataStorageByDataId]]
| [3.0.0-20.5.0] 0x28 [21.0.0+] 0x29 || CanOpenGameCardStorage || 0x8000000000000100 || RW || [[#OpenGameCardStorage]], [[#EraseGameCard]] (bit1), [[#WriteToGameCardDirectly]] (bit1), [[#GetGameCardErrorInfo]] (bit1), [[#EraseAndWriteParamDirectly]] (bit1), [[#ReadParamDirectly]] (bit1), [[#ForceEraseGameCard]] (bit1)
|-
|-
| [5.0.0+] 0x2A || CanMountHost || 0xC000000000400000 || RW || [[#OpenHostFileSystem]]
| [4.0.0-20.5.0] 0x29 [21.0.0+] 0x2A || CanMountSystemDataPrivate || 0x8000000000100008 || R- || [[#OpenFileSystem]], [[#OpenDataStorageByDataId]]
|-
|-
| [6.0.0+] 0x2B || CanMountRegisteredUpdatePartition || 0x8000000000010000 || R- || [[#OpenRegisteredUpdatePartition]]
| [21.0.0+] 0x2B || || 0x8000200000000000 || || [[#OpenFileSystem]], [[#OpenDataStorageByDataId]]
|-
|-
| [7.0.0+] 0x2C || CanOpenSaveDataInternalStorage || [-19.0.0] 0x8000000000000000 [20.0.0+] 0x8000000000000020 || RW || [[#OpenSaveDataInternalStorageFileSystem]]
| [5.0.0-20.5.0] 0x2A [21.0.0+] 0x2C || CanMountHost || 0xC000000000400000 || RW || [[#OpenHostFileSystem]]
|-
|-
| [7.0.0+] 0x2D || CanMountTemporaryDirectory || 0xC000000000000000 || RW ||  
| [6.0.0-20.5.0] 0x2B [21.0.0+] 0x2D || CanMountRegisteredUpdatePartition || 0x8000000000010000 || R- || [[#OpenRegisteredUpdatePartition]]
|-
|-
| [11.0.0+] 0x2E || CanMountAllBaseFilesystem || 0x8000000000000000 || RW || OpenBaseFileSystem
| [7.0.0-20.5.0] 0x2C [21.0.0+] 0x2E || CanOpenSaveDataInternalStorage || [-19.0.0] 0x8000000000000000 [20.0.0+] 0x8000000000000020 || RW || [[#OpenSaveDataInternalStorageFileSystem]]
|-
|-
| [15.0.0+] 0x2F || CanNotMount || 0x0000000000000000 || -- || OpenCustomStorageFileSystem
| [7.0.0-20.5.0] 0x2D [21.0.0+] 0x2F || CanMountTemporaryDirectory || 0xC000000000000000 || RW || [11.0.0+] OpenBaseFileSystem, [12.0.0+] FormatBaseFileSystem
|-
| [11.0.0-20.5.0] 0x2E [21.0.0+] 0x30 || CanMountAllBaseFilesystem || 0x8000000000000000 || RW || OpenBaseFileSystem, [12.0.0+] FormatBaseFileSystem
|-
| [15.0.0-20.5.0] 0x2F [21.0.0+] 0x31 || CanNotMount || 0x0000000000000000 || -- || OpenCustomStorageFileSystem
|}
|}


Line 769: Line 773:
== OpenSaveDataTransferManager ==
== OpenSaveDataTransferManager ==
No input, returns an [[#ISaveDataTransferManager]].
No input, returns an [[#ISaveDataTransferManager]].
[S2] Stubbed, just returns Result 0x177202.


== OpenSaveDataTransferManagerVersion2 ==
== OpenSaveDataTransferManagerVersion2 ==
Line 2,087: Line 2,093:
|-
|-
| 101 || [3.0.0+] SafeMode
| 101 || [3.0.0+] SafeMode
|-
| 102 || [?+] ProperUser
|}
|}


Line 2,310: Line 2,318:
| 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 =