Line 335: |
Line 335: |
| |} | | |} |
| | | |
| + | == Permissions == |
| + | Every time permissions are checked, the process registration [[#fsp-pr]] is loaded using the session processID. The permission data is populated with data from the [[NPDM]]. |
| + | |
| + | If the processID is <= 6 (which happens only for built-in sysmodules), it will use a hardcoded registration data. The default mask in this case is 0x8000000000000000. |
| + | |
| + | Note that the functions check whether or not at least one bit is set in the mask. This means that, you don't need to set 0xFFFFFFFFFFFFFFFF to get all permissions: it suffices to set 0x8000000000000000. |
| + | |
| + | If the code were to request an invalid input type, panic. But this never happens. |
| + | |
| + | The output values for [[#ReadWrite]] CanMountRegisteredUpdatePartition and [[#Call]] CanRegisterUpdatePartition are masked with the cached value of [[SMC#IsDebugMode|DebugMode]]. |
| + | |
| + | === ReadWrite === |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! AccessibilityType || Name || Mask || Permission || Used by |
| + | |- |
| + | | 0x0 || CanMountLogo || 0x8000000000000801 || R- || [[#OpenFileSystem]], [[#OpenFileSystemWithPatch]], [[#OpenFileSystemWithId]] |
| + | |- |
| + | | 0x1 || CanMountContentMeta || 0x8000000000000801 || R- || [[#OpenFileSystem]], [[#OpenFileSystemWithPatch]], [[#OpenFileSystemWithId]] |
| + | |- |
| + | | 0x2 || CanMountContentControl || 0x8000000000000801 || R- || [[#OpenFileSystem]], [[#OpenFileSystemWithPatch]], [[#OpenFileSystemWithId]] |
| + | |- |
| + | | 0x3 || CanMountContentManual || 0x8000000000000801 || R- || [[#OpenFileSystem]], [[#OpenFileSystemWithPatch]], [[#OpenFileSystemWithId]] |
| + | |- |
| + | | 0x4 || CanMountContentData || 0x8000000000000801 || R- || [[#OpenFileSystem]], [[#OpenFileSystemWithPatch]], [[#OpenFileSystemWithId]] |
| + | |- |
| + | | 0x5 || CanMountApplicationPackage || 0x8000000000000801 || R- || [[#OpenFileSystem]], [[#OpenFileSystemWithPatch]], [[#OpenFileSystemWithId]] |
| + | |- |
| + | | 0x6 || CanMountSaveDataStorage || 0x8000000000000000 || RW || |
| + | |- |
| + | | 0x7 || CanMountContentStorage || 0x8000000000000800 || RW || [[#OpenContentStorageFileSystem]] |
| + | |- |
| + | | 0x8 || CanMountImageAndVideoStorage ||0x8000000000001000 || RW || [[#OpenImageDirectoryFileSystem]] |
| + | |- |
| + | | 0x9 || CanMountCustomStorage0 || 0x8000000000000000 || RW || OpenCustomStorageFileSystem |
| + | |- |
| + | | 0xA || CanMountBisCalibrationFile || 0x8000000000000084 || RW || [[#OpenBisFileSystem]] |
| + | |- |
| + | | 0xB || CanMountBisSafeMode || 0x8000000000000080 || RW || [[#OpenBisFileSystem]] |
| + | |- |
| + | | 0xC || CanMountBisUser || 0x8000000000008080 || RW || [[#OpenBisFileSystem]] |
| + | |- |
| + | | 0xD || CanMountBisSystem || 0x8000000000008080 || RW || [[#OpenBisFileSystem]] |
| + | |- |
| + | | 0xE || CanMountBisSystemProperEncryption || 0x8000000000000080 || RW || [[#OpenBisFileSystem]] |
| + | |- |
| + | | 0xF || CanMountBisSystemProperPartition || 0x8000000000000080 || RW || [[#OpenBisFileSystem]] |
| + | |- |
| + | | 0x10 || CanMountSdCard || 0xC000000000200000 || RW || [[#OpenSdCardFileSystem]] |
| + | |- |
| + | | 0x11 || CanMountGameCard || 0x8000000000000010 || R- || [[#OpenGameCardFileSystem]] |
| + | |- |
| + | | 0x12 || CanMountDeviceSaveData || 0x8000000000040020 || RW || [[#OpenSaveDataFileSystem]] |
| + | |- |
| + | | 0x13 || CanMountSystemSaveData || 0x8000000000000028 || RW || [[#OpenSaveDataFileSystemBySystemSaveDataId]] |
| + | |- |
| + | | 0x14 || CanMountOthersSaveData || 0x8000000000000020 || RW || [[#OpenSaveDataFileSystem]] |
| + | |- |
| + | | 0x15 || CanMountOthersSystemSaveData || 0x8000000000000020 || RW || [[#OpenSaveDataFileSystemBySystemSaveDataId]] |
| + | |- |
| + | | 0x16 || CanOpenBisPartitionBootPartition1Root || 0x8000000000010082 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x17 || CanOpenBisPartitionBootPartition2Root || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x18 || CanOpenBisPartitionUserDataRoot || 0x8000000000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x19 || CanOpenBisPartitionBootConfigAndPackage2Part1 || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x1A || CanOpenBisPartitionBootConfigAndPackage2Part2 || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x1B || CanOpenBisPartitionBootConfigAndPackage2Part3 || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x1C || CanOpenBisPartitionBootConfigAndPackage2Part4 || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x1D || CanOpenBisPartitionBootConfigAndPackage2Part5 || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x1E || CanOpenBisPartitionBootConfigAndPackage2Part6 || 0x8000000000010080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x1F || CanOpenBisPartitionCalibrationBinary || 0x8000000000000084 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x20 || CanOpenBisPartitionCalibrationFile || 0x8000000000000084 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x21 || CanOpenBisPartitionSafeMode || 0x8000000000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x22 || CanOpenBisPartitionUser || 0x8000000000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x23 || CanOpenBisPartitionSystem || 0x8000000000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x24 || CanOpenBisPartitionSystemProperEncryption || 0x8000000000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x25 || CanOpenBisPartitionSystemProperPartition || 0x8000000000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | 0x26 || CanOpenBisPartitionDeviceTreeBlob || 0x8000002000000080 || RW || [[#OpenBisStorage]] |
| + | |- |
| + | | [3.0.0+] 0x27 || CanOpenSdCardStorage || 0xC000000000200000 || RW || |
| + | |- |
| + | | [3.0.0+] 0x28 || CanOpenGameCardStorage || 0x8000000000000100 || RW || [[#OpenGameCardStorage]], [[#EraseGameCard]] (bit1), [[#WriteToGameCard]] (bit1), [[#GetGameCardErrorInfo]] (bit1), [[#EraseAndWriteParamDirectly]] (bit1), [[#ReadParamDirectly]] (bit1), [[#ForceEraseGameCard]] (bit1) |
| + | |- |
| + | | [4.0.0+] 0x29 || CanMountSystemDataPrivate || 0x8000000000100008 || R- || [[#OpenFileSystem]], [[#OpenDataStorageByDataId]] |
| + | |- |
| + | | [5.0.0+] 0x2A || CanMountHost || 0xC000000000400000 || RW || [[#OpenHostFileSystem]] |
| + | |- |
| + | | [6.0.0+] 0x2B || CanMountRegisteredUpdatePartition || 0x8000000000010000 || R- || [[#OpenRegisteredUpdatePartition]] |
| + | |- |
| + | | [7.0.0+] 0x2C || CanOpenSaveDataInternalStorage || 0x8000000000000000 || RW || [[#OpenSaveDataInternalStorageFileSystem]] |
| + | |- |
| + | | [7.0.0+] 0x2D || CanMountTemporaryDirectory || 0xC000000000000000 || RW || |
| + | |- |
| + | | [11.0.0+] 0x2E || CanMountAllBaseFilesystem || 0x8000000000000000 || RW || OpenBaseFileSystem |
| + | |- |
| + | | [15.0.0+] 0x2F || CanNotMount || 0x0000000000000000 || -- || OpenCustomStorageFileSystem |
| + | |} |
| + | |
| + | === Call === |
| == Permissions == | | == Permissions == |
| Every time permissions are checked, the process registration [[#fsp-pr]] is loaded using the session processID. The permission data is populated with data from the [[NPDM]]. | | Every time permissions are checked, the process registration [[#fsp-pr]] is loaded using the session processID. The permission data is populated with data from the [[NPDM]]. |
Line 457: |
Line 571: |
| | 0x1 || CanEraseMmc || 0x8000000000000080 || EraseMmc | | | 0x1 || CanEraseMmc || 0x8000000000000080 || EraseMmc |
| |- | | |- |
− | | 0x2 || CanGetGameCardDeviceCertificate || 0x8000000000000010 || GetGameCardDeviceCertificate | + | | [20.0.0+] 0x2 || || 0x8000100000000080 || |
| + | |- |
| + | | [-19.0.0] 0x2 [20.0.0+] 0x3 || CanGetGameCardDeviceCertificate || 0x8000000000000010 || GetGameCardDeviceCertificate |
| + | |- |
| + | | [-19.0.0] 0x3 [20.0.0+] 0x4 || CanGetGameCardIdSet || 0x8000000000000010 || GetGameCardIdSet |
| + | |- |
| + | | [-19.0.0] 0x4 [20.0.0+] 0x5 || CanFinalizeGameCardDriver || 0x8000000000000200 || FinalizeGameCardDriver |
| + | |- |
| + | | [-19.0.0] 0x5 [20.0.0+] 0x6 || CanGetGameCardAsicInfo || 0x8000000000000200 || GetGameCardAsicInfo |
| + | |- |
| + | | [-19.0.0] 0x6 [20.0.0+] 0x7 || CanGetGameCardAsicCertificate || 0x8000000000000200 || GetGameCardAsicCertificate |
| + | |- |
| + | | [20.0.0+] 0x8 || || 0x8000100000000080 || |
| + | |- |
| + | | [20.0.0+] 0x9 || || 0x8000100000000080 || |
| + | |- |
| + | | [20.0.0+] 0xA || || 0x8000080000000000 || |
| + | |- |
| + | | [20.0.0+] 0xB || || 0x8000000000000010 || |
| + | |- |
| + | | [20.0.0+] 0xC || || 0x8000100000000080 || |
| + | |- |
| + | | [-19.0.0] 0x7 [20.0.0+] 0xD || CanCreateSaveData || 0x8000000000002020 || [[#CreateSaveDataFileSystem]] |
| + | |- |
| + | | [-19.0.0] 0x8 [20.0.0+] 0xE || CanDeleteSaveData || 0x8000000000000060 || [[#DeleteSaveDataFileSystem]], RegisterSaveDataFileSystemAtomicDeletion |
| + | |- |
| + | | [-19.0.0] 0x9 [20.0.0+] 0xF || CanCreateSystemSaveData || 0x8000000000000028 || CreateSaveDataFileSystemBySystemSaveDataId |
| + | |- |
| + | | [-19.0.0] 0xA [20.0.0+] 0x10 || CanCreateOthersSystemSaveData || 0x8000000000000020 || CreateSaveDataFileSystemBySystemSaveDataId |
| |- | | |- |
− | | 0x3 || CanGetGameCardIdSet || 0x8000000000000010 || GetGameCardIdSet | + | | [-19.0.0] 0xB [20.0.0+] 0x11 || CanDeleteSystemSaveData || 0x8000000000004028 || [[#DeleteSaveDataFileSystem]], RegisterSaveDataFileSystemAtomicDeletion |
| |- | | |- |
− | | 0x4 || CanFinalizeGameCardDriver || 0x8000000000000200 || FinalizeGameCardDriver | + | | [-19.0.0] 0xC [20.0.0+] 0x12 || CanOpenSaveDataInfoReader || 0x8000000000000060 || [[#OpenSaveDataInfoReaderBySaveDataSpaceId]], [[#OpenSaveDataInfoReader]] |
| |- | | |- |
− | | 0x5 || CanGetGameCardAsicInfo || 0x8000000000000200 || GetGameCardAsicInfo | + | | [-19.0.0] 0xD [20.0.0+] 0x13 || CanOpenSaveDataInfoReaderForSystem || 0x8000000000004020 || [[#OpenSaveDataInfoReaderBySaveDataSpaceId]], [[#OpenSaveDataInfoReader]] |
| |- | | |- |
− | | 0x6 || CanGetGameCardAsicCertificate || 0x8000000000000200 || GetGameCardAsicCertificate | + | | [-19.0.0] 0xE [20.0.0+] 0x14 || CanOpenSaveDataInfoReaderForInternal || 0x8000000000000040 || [[#OpenSaveDataInfoReaderWithFilter]] |
| |- | | |- |
− | | 0x7 || CanCreateSaveData || 0x8000000000002020 || [[#CreateSaveDataFileSystem]] | + | | [-19.0.0] 0xF [20.0.0+] 0x15 || CanOpenSaveDataMetaFile || 0x8000000000020000 || OpenSaveDataMetaFile |
| |- | | |- |
− | | 0x8 || CanDeleteSaveData || 0x8000000000000060 || [[#DeleteSaveDataFileSystem]], RegisterSaveDataFileSystemAtomicDeletion | + | | [-19.0.0] 0x10 [20.0.0+] 0x16 || CanSetCurrentPosixTime || 0x8000000000000400 || SetCurrentPosixTime, SetCurrentPosixTimeWithTimeDifference |
| |- | | |- |
− | | 0x9 || CanCreateSystemSaveData || 0x8000000000000028 || CreateSaveDataFileSystemBySystemSaveDataId | + | | [-19.0.0] 0x11 [20.0.0+] 0x17 || CanReadSaveDataFileSystemExtraData || 0x8000000000004060 || [[#ReadSaveDataFileSystemExtraData]] |
| |- | | |- |
− | | 0xA || CanCreateOthersSystemSaveData || 0x8000000000000020 || CreateSaveDataFileSystemBySystemSaveDataId | + | | [-19.0.0] 0x12 [20.0.0+] 0x18 || CanSetGlobalAccessLogMode || 0x8000000000080000 || [[#SetGlobalAccessLogMode]] |
| |- | | |- |
− | | 0xB || CanDeleteSystemSaveData || 0x8000000000004028 || [[#DeleteSaveDataFileSystem]], RegisterSaveDataFileSystemAtomicDeletion | + | | [-19.0.0] 0x13 [20.0.0+] 0x19 || CanSetSpeedEmulationMode || 0x8000000000080000 || SetSpeedEmulationMode |
| |- | | |- |
− | | 0xC || CanOpenSaveDataInfoReader || 0x8000000000000060 || [[#OpenSaveDataInfoReaderBySaveDataSpaceId]], [[#OpenSaveDataInfoReader]] | + | | [20.0.0+] 0x1A || || 0x8000000400080000 || |
| |- | | |- |
− | | 0xD || CanOpenSaveDataInfoReaderForSystem || 0x8000000000004020 || [[#OpenSaveDataInfoReaderBySaveDataSpaceId]], [[#OpenSaveDataInfoReader]] | + | | [20.0.0+] 0x1B || || 0x8000000400080000 || |
| |- | | |- |
− | | 0xE || CanOpenSaveDataInfoReaderForInternal || 0x8000000000000040 || [[#OpenSaveDataInfoReaderWithFilter]] | + | | [-19.0.0] 0x14 [20.0.0+] 0x1C || CanDebug || 0xC000000000000000 || |
| |- | | |- |
− | | 0xF || CanOpenSaveDataMetaFile || 0x8000000000020000 || OpenSaveDataMetaFile | + | | [-19.0.0] 0x15 [20.0.0+] 0x1D || CanFillBis || 0xC000000000800000 || CreatePaddingFile, DeleteAllPaddingFiles |
| |- | | |- |
− | | 0x10 || CanSetCurrentPosixTime || 0x8000000000000400 || SetCurrentPosixTime, SetCurrentPosixTimeWithTimeDifference | + | | [2.0.0-19.0.0] 0x16 [20.0.0+] 0x1E || CanCorruptSaveData || 0xC000000001000000 || CorruptSaveDataFileSystem, CorruptSaveDataFileSystemBySaveDataSpaceId |
| |- | | |- |
− | | 0x11 || CanReadSaveDataFileSystemExtraData || 0x8000000000004060 || [[#ReadSaveDataFileSystemExtraData]] | + | | [2.0.0-19.0.0] 0x17 [20.0.0+] 0x1F || CanCorruptSystemSaveData || 0x8000000001000060 || CorruptSaveDataFileSystem, CorruptSaveDataFileSystemBySaveDataSpaceId |
| |- | | |- |
− | | 0x12 || CanSetGlobalAccessLogMode || 0x8000000000080000 || [[#SetGlobalAccessLogMode]] | + | | [2.0.0-19.0.0] 0x18 [20.0.0+] 0x20 || CanVerifySaveData || 0x8000000000000060 || [[#VerifySaveDataFileSystem]], VerifySaveDataFileSystemBySaveDataSpaceId |
| |- | | |- |
− | | 0x13 || CanSetSpeedEmulationMode || 0x8000000000080000 || SetSpeedEmulationMode | + | | [2.0.0-19.0.0] 0x19 [20.0.0+] 0x21 || CanDebugSaveData || 0xC000000002000000 || [[#CreateSaveDataFileSystem]], [[#OpenSaveDataFileSystem]], [[#SetSaveDataRootPath]] |
| |- | | |- |
− | | 0x14 || CanDebug || 0xC000000000000000 || | + | | [2.0.0-19.0.0] 0x1A [20.0.0+] 0x22 || CanFormatSdCard || 0x8000000004000000 || FormatSdCardFileSystem |
| |- | | |- |
− | | 0x15 || CanFillBis || 0xC000000000800000 || CreatePaddingFile, DeleteAllPaddingFiles | + | | [3.0.0-19.0.0] 0x1B [20.0.0+] 0x23 || CanGetRightsId || 0x8000000008000000 || GetRightsId, GetRightsIdAndKeyGenerationByPath, GetRightsIdByPath |
| |- | | |- |
− | | [2.0.0+] 0x16 || CanCorruptSaveData || 0xC000000001000000 || CorruptSaveDataFileSystem, CorruptSaveDataFileSystemBySaveDataSpaceId | + | | [3.0.0-19.0.0] 0x1C [20.0.0+] 0x24 || CanRegisterExternalKey || 0x8000000010000000 || RegisterExternalKey, UnregisterAllExternalKey |
| |- | | |- |
− | | [2.0.0+] 0x17 || CanCorruptSystemSaveData || 0x8000000001000060 || CorruptSaveDataFileSystem, CorruptSaveDataFileSystemBySaveDataSpaceId | + | | [4.0.0-19.0.0] 0x1D [20.0.0+] 0x25 || CanSetEncryptionSeed || 0x8000000000000800 || [[#SetSdCardEncryptionSeed]] |
| |- | | |- |
− | | [2.0.0+] 0x18 || CanVerifySaveData || 0x8000000000000060 || [[#VerifySaveDataFileSystem]], VerifySaveDataFileSystemBySaveDataSpaceId | + | | [4.0.0-19.0.0] 0x1E [20.0.0+] 0x26 || CanWriteSaveDataFileSystemExtraDataTimeStamp || 0x8000000000000020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask |
| |- | | |- |
− | | [2.0.0+] 0x19 || CanDebugSaveData || 0xC000000002000000 || [[#CreateSaveDataFileSystem]], [[#OpenSaveDataFileSystem]], [[#SetSaveDataRootPath]] | + | | [4.0.0-19.0.0] 0x1F [20.0.0+] 0x27 || CanWriteSaveDataFileSystemExtraDataFlags || 0x8000000000004020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask |
| |- | | |- |
− | | [2.0.0+] 0x1A || CanFormatSdCard || 0x8000000004000000 || FormatSdCardFileSystem | + | | [4.0.0-19.0.0] 0x20 [20.0.0+] 0x28 || CanWriteSaveDataFileSystemExtraDataCommitId || 0x8000000000000020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask |
| |- | | |- |
− | | [3.0.0+] 0x1B || CanGetRightsId || 0x8000000008000000 || GetRightsId, GetRightsIdAndKeyGenerationByPath, GetRightsIdByPath | + | | [5.0.0-19.0.0] 0x21 [20.0.0+] 0x29 || CanWriteSaveDataFileSystemExtraDataAll || 0x8000000000000000 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask |
| |- | | |- |
− | | [3.0.0+] 0x1C || CanRegisterExternalKey || 0x8000000010000000 || RegisterExternalKey, UnregisterAllExternalKey | + | | [5.0.0-19.0.0] 0x22 [20.0.0+] 0x2A || CanExtendSaveData || 0x8000000000002020 || ExtendSaveDataFileSystem |
| |- | | |- |
− | | [4.0.0+] 0x1D || CanSetEncryptionSeed || 0x8000000000000800 || [[#SetSdCardEncryptionSeed]] | + | | [5.0.0-19.0.0] 0x23 [20.0.0+] 0x2B || CanExtendSystemSaveData || 0x8000000000000028 || ExtendSaveDataFileSystem |
| |- | | |- |
− | | [4.0.0+] 0x1E || CanWriteSaveDataFileSystemExtraDataTimeStamp || 0x8000000000000020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | + | | [5.0.0-19.0.0] 0x24 [20.0.0+] 0x2C || CanExtendOthersSystemSaveData || 0x8000000000000020 || ExtendSaveDataFileSystem |
| |- | | |- |
− | | [4.0.0+] 0x1F || CanWriteSaveDataFileSystemExtraDataFlags || 0x8000000000004020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | + | | [5.0.0-19.0.0] 0x25 [20.0.0+] 0x2D || CanRegisterUpdatePartition || 0x8000000020000000 || RegisterUpdatePartition |
| |- | | |- |
− | | [4.0.0+] 0x20 || CanWriteSaveDataFileSystemExtraDataCommitId || 0x8000000000000020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | + | | [5.0.0-19.0.0] 0x26 [20.0.0+] 0x2E || CanOpenSaveDataTransferManager || 0x8000000040000000 || [[#OpenSaveDataTransferManager]] |
| |- | | |- |
− | | [5.0.0+] 0x21 || CanWriteSaveDataFileSystemExtraDataAll || 0x8000000000000000 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | + | | [5.0.0-19.0.0] 0x27 [20.0.0+] 0x2F || CanOpenSaveDataTransferManagerVersion2 || 0x8000000200000000 || [[#OpenSaveDataTransferManagerVersion2]] |
| |- | | |- |
− | | [5.0.0+] 0x22 || CanExtendSaveData || 0x8000000000002020 || ExtendSaveDataFileSystem | + | | [5.0.0-19.0.0] 0x28 [20.0.0+] 0x30 || CanOpenSaveDataTransferManagerForSaveDataRepair || 0x8000000200000000 || OpenSaveDataTransferManagerForSaveDataRepair |
| |- | | |- |
− | | [5.0.0+] 0x23 || CanExtendSystemSaveData || 0x8000000000000028 || ExtendSaveDataFileSystem | + | | [5.0.0-19.0.0] 0x29 [20.0.0+] 0x31 || CanOpenSaveDataTransferManagerForSaveDataRepairTool || 0x8000000000000000 || OpenSaveDataTransferManagerForSaveDataRepair |
| |- | | |- |
− | | [5.0.0+] 0x24 || CanExtendOthersSystemSaveData || 0x8000000000000020 || ExtendSaveDataFileSystem | + | | [5.0.0-19.0.0] 0x2A [20.0.0+] 0x32 || CanOpenOpenSaveDataTransferProhibiter || 0x8000000200002000 || [[#OpenSaveDataTransferProhibiter]] |
| |- | | |- |
− | | [5.0.0+] 0x25 || CanRegisterUpdatePartition || 0x8000000020000000 || RegisterUpdatePartition | + | | [5.0.0-19.0.0] 0x2B [20.0.0+] 0x33 || CanOpenSaveDataMover || 0x8000001000000000 || [[#OpenSaveDataMover]] |
| |- | | |- |
− | | [5.0.0+] 0x26 || CanOpenSaveDataTransferManager || 0x8000000040000000 || [[#OpenSaveDataTransferManager]] | + | | [5.0.0-19.0.0] 0x2C [20.0.0+] 0x34 || CanOpenBisWiper || 0x8000000000000800 || [[#OpenBisWiper]] |
| |- | | |- |
− | | [5.0.0+] 0x27 || CanOpenSaveDataTransferManagerVersion2 || 0x8000000200000000 || [[#OpenSaveDataTransferManagerVersion2]] | + | | [5.0.0-19.0.0] 0x2D [20.0.0+] 0x35 || CanListAccessibleSaveDataOwnerId || 0x8000000240002000 || [[#ListAccessibleSaveDataOwnerId]] |
| |- | | |- |
− | | [5.0.0+] 0x28 || CanOpenSaveDataTransferManagerForSaveDataRepair || 0x8000000200000000 || OpenSaveDataTransferManagerForSaveDataRepair | + | | [5.0.0-19.0.0] 0x2E [20.0.0+] 0x36 || CanControlMmcPatrol || 0x8000000000000000 || SuspendMmcPatrol, ResumeMmcPatrol |
| |- | | |- |
− | | [5.0.0+] 0x29 || CanOpenSaveDataTransferManagerForSaveDataRepairTool || 0x8000000000000000 || OpenSaveDataTransferManagerForSaveDataRepair | + | | [5.0.0-19.0.0] 0x2F [20.0.0+] 0x37 || CanOverrideSaveDataTransferTokenSignVerificationKey || 0x8000000000000000 || OverrideSaveDataTransferTokenSignVerificationKey |
| |- | | |- |
− | | [5.0.0+] 0x2A || CanOpenOpenSaveDataTransferProhibiter || 0x8000000200002000 || [[#OpenSaveDataTransferProhibiter]] | + | | [5.1.0-19.0.0] 0x30 [20.0.0+] 0x38 || CanOpenSdCardDetectionEventNotifier || 0x8000000080200000 || [[#OpenSdCardDetectionEventNotifier]] |
| |- | | |- |
− | | [5.0.0+] 0x2B || CanOpenSaveDataMover || 0x8000001000000000 || [[#OpenSaveDataMover]] | + | | [20.0.0+] 0x39 || || 0x8000000000200000 || |
| |- | | |- |
− | | [5.0.0+] 0x2C || CanOpenBisWiper || 0x8000000000000800 || [[#OpenBisWiper]] | + | | [6.0.0-19.0.0] 0x31 [20.0.0+] 0x3A || CanOpenGameCardDetectionEventNotifier || 0x8000000080000110 || [[#OpenGameCardDetectionEventNotifier]] |
| |- | | |- |
− | | [5.0.0+] 0x2D || CanListAccessibleSaveDataOwnerId || 0x8000000240002000 || [[#ListAccessibleSaveDataOwnerId]] | + | | [20.0.0+] 0x3B || || 0x8000000080000110 || |
| |- | | |- |
− | | [5.0.0+] 0x2E || CanControlMmcPatrol || 0x8000000000000000 || SuspendMmcPatrol, ResumeMmcPatrol | + | | [6.0.0-19.0.0] 0x32 [20.0.0+] 0x3C || CanOpenSystemDataUpdateEventNotifier || 0x8000000000100008 || OpenSystemDataUpdateEventNotifier |
| |- | | |- |
− | | [5.0.0+] 0x2F || CanOverrideSaveDataTransferTokenSignVerificationKey || 0x8000000000000000 || OverrideSaveDataTransferTokenSignVerificationKey | + | | [6.0.0-19.0.0] 0x33 [20.0.0+] 0x3D || CanNotifySystemDataUpdateEvent || 0x8000000000010000 || NotifySystemDataUpdateEvent |
| |- | | |- |
− | | [5.1.0+] 0x30 || CanOpenSdCardDetectionEventNotifier || 0x8000000080200000 || [[#OpenSdCardDetectionEventNotifier]] | + | | [6.0.0-19.0.0] 0x34 [20.0.0+] 0x3E || CanOpenAccessFailureDetectionEventNotifier || 0x8000000100000000 || [[#OpenAccessFailureDetectionEventNotifier]] |
| |- | | |- |
− | | [6.0.0+] 0x31 || CanOpenGameCardDetectionEventNotifier || 0x8000000080000110 || [[#OpenGameCardDetectionEventNotifier]] | + | | [6.0.0-19.0.0] 0x35 [20.0.0+] 0x3F || CanGetAccessFailureDetectionEvent || 0x8000000100000000 || GetAccessFailureDetectionEvent |
| |- | | |- |
− | | [6.0.0+] 0x32 || CanOpenSystemDataUpdateEventNotifier || 0x8000000000100008 || OpenSystemDataUpdateEventNotifier | + | | [6.0.0-19.0.0] 0x36 [20.0.0+] 0x40 || CanIsAccessFailureDetected || 0x8000000100000000 || IsAccessFailureDetected |
| |- | | |- |
− | | [6.0.0+] 0x33 || CanNotifySystemDataUpdateEvent || 0x8000000000010000 || NotifySystemDataUpdateEvent | + | | [6.0.0-19.0.0] 0x37 [20.0.0+] 0x41 || CanResolveAccessFailure || 0x8000000100000000 || ResolveAccessFailure |
| |- | | |- |
− | | [6.0.0+] 0x34 || CanOpenAccessFailureDetectionEventNotifier || 0x8000000100000000 || [[#OpenAccessFailureDetectionEventNotifier]] | + | | [6.0.0-19.0.0] 0x38 [20.0.0+] 0x42 || CanAbandonAccessFailure || 0x8000000100000000 || AbandonAccessFailure |
| |- | | |- |
− | | [6.0.0+] 0x35 || CanGetAccessFailureDetectionEvent || 0x8000000100000000 || GetAccessFailureDetectionEvent | + | | [8.0.0-19.0.0] 0x39 [20.0.0+] 0x43 || CanQuerySaveDataInternalStorageTotalSize || 0x8000000040000000 || QuerySaveDataInternalStorageTotalSize |
| |- | | |- |
− | | [6.0.0+] 0x36 || CanIsAccessFailureDetected || 0x8000000100000000 || IsAccessFailureDetected | + | | [9.0.0-19.0.0] 0x3A [20.0.0+] 0x44 || CanGetSaveDataCommitId || 0x8000000200000020 || [[#GetSaveDataCommitId]] |
| |- | | |- |
− | | [6.0.0+] 0x37 || CanResolveAccessFailure || 0x8000000100000000 || ResolveAccessFailure | + | | [20.0.0+] 0x45 || || 0x8000000000200000 || |
| |- | | |- |
− | | [6.0.0+] 0x38 || CanAbandonAccessFailure || 0x8000000100000000 || AbandonAccessFailure | + | | [9.0.0-19.0.0] 0x3B [20.0.0+] 0x46 || CanSetSdCardAccessibility || 0x8000000000200000 || SetSdCardAccessibility |
| |- | | |- |
− | | [8.0.0+] 0x39 || CanQuerySaveDataInternalStorageTotalSize || 0x8000000040000000 || QuerySaveDataInternalStorageTotalSize | + | | [9.0.0-19.0.0] 0x3C [20.0.0+] 0x47 || CanSimulateDevice || 0x4000000000000000 || SimulateDeviceDetectionEvent, SetSimulationEvent, ClearSimulationEvent |
| |- | | |- |
− | | [9.0.0+] 0x3A || CanGetSaveDataCommitId || 0x8000000200000020 || [[#GetSaveDataCommitId]] | + | | [9.0.0-19.0.0] 0x3D [20.0.0+] 0x48 || CanCreateSaveDataWithHashSalt || 0x8000000000000000 || [[#CreateSaveDataFileSystem]], [[#CreateSaveDataFileSystemWithHashSalt]] |
| |- | | |- |
− | | [9.0.0+] 0x3B || CanSetSdCardAccessibility || 0x8000000000200000 || SetSdCardAccessibility | + | | [9.0.0-19.0.0] 0x3E [20.0.0+] 0x49 || CanRegisterProgramIndexMapInfo || 0x8000000400000000 || RegisterProgramIndexMapInfo |
| |- | | |- |
− | | [9.0.0+] 0x3C || CanSimulateDevice || 0x4000000000000000 || SimulateDeviceDetectionEvent, SetSimulationEvent, ClearSimulationEvent | + | | [9.0.0-19.0.0] 0x3F [20.0.0+] 0x4A || CanChallengeCardExistence || 0x8000000000000010 || ChallengeCardExistence |
| |- | | |- |
− | | [9.0.0+] 0x3D || CanCreateSaveDataWithHashSalt || 0x8000000000000000 || [[#CreateSaveDataFileSystem]], [[#CreateSaveDataFileSystemWithHashSalt]] | + | | [9.0.0-19.0.0] 0x40 [20.0.0+] 0x4B || CanCreateOwnSaveData || 0x8000000800000000 || [[#CreateSaveDataFileSystem]], CreateSaveDataFileSystemWithHashSalt |
| |- | | |- |
− | | [9.0.0+] 0x3E || CanRegisterProgramIndexMapInfo || 0x8000000400000000 || RegisterProgramIndexMapInfo | + | | [9.0.0-19.0.0] 0x41 [20.0.0+] 0x4C || CanDeleteOwnSaveData || 0x8000000800000000 || [[#DeleteSaveDataFileSystem]] |
| |- | | |- |
− | | [9.0.0+] 0x3F || CanChallengeCardExistence || 0x8000000000000010 || ChallengeCardExistence | + | | [10.0.0-19.0.0] 0x42 [20.0.0+] 0x4D || CanReadOwnSaveDataFileSystemExtraData || 0x8000000800000000 || [[#ReadSaveDataFileSystemExtraData]] |
| |- | | |- |
− | | [9.0.0+] 0x40 || CanCreateOwnSaveData || 0x8000000800000000 || [[#CreateSaveDataFileSystem]], CreateSaveDataFileSystemWithHashSalt | + | | [10.0.0-19.0.0] 0x43 [20.0.0+] 0x4E || CanExtendOwnSaveData || 0x8000000800000000 || ExtendSaveDataFileSystem |
| |- | | |- |
− | | [9.0.0+] 0x41 || CanDeleteOwnSaveData || 0x8000000800000000 || [[#DeleteSaveDataFileSystem]] | + | | [10.2.0-19.0.0] 0x44 [20.0.0+] 0x4F || CanOpenOwnSaveDataTransferProhibiter || 0x8000000800000000 || [[#OpenSaveDataTransferProhibiter]] |
| |- | | |- |
− | | [10.0.0+] 0x42 || CanReadOwnSaveDataFileSystemExtraData || 0x8000000800000000 || [[#ReadSaveDataFileSystemExtraData]] | + | | [11.0.0-19.0.0] 0x45 [20.0.0+] 0x50 || CanFindOwnSaveDataWithFilter || 0x8000000800000000 || [[#FindSaveDataWithFilter]] |
| |- | | |- |
− | | [10.0.0+] 0x43 || CanExtendOwnSaveData || 0x8000000800000000 || ExtendSaveDataFileSystem | + | | [13.0.0-19.0.0] 0x46 [20.0.0+] 0x51 || CanOpenSaveDataTransferManagerForRepair || 0x8000000000000020 || [[#OpenSaveDataTransferManagerForRepair]] |
| |- | | |- |
− | | [10.2.0+] 0x44 || CanOpenOwnSaveDataTransferProhibiter || 0x8000000800000000 || [[#OpenSaveDataTransferProhibiter]] | + | | [13.0.0-19.0.0] 0x47 [20.0.0+] 0x52 || CanSetDebugConfiguration || 0x8000000000000000 || SetDebugOption, UnsetDebugOption |
| |- | | |- |
− | | [11.0.0+] 0x45 || CanFindOwnSaveDataWithFilter || 0x8000000800000000 || [[#FindSaveDataWithFilter]] | + | | [15.0.0-19.0.0] 0x48 [20.0.0+] 0x53 || CanOpenDataStorageByPath || 0x8000000000000000 || OpenDataStorageByPath |
| |- | | |- |
− | | [13.0.0+] 0x46 || CanOpenSaveDataTransferManagerForRepair || 0x8000000000000020 || [[#OpenSaveDataTransferManagerForRepair]] | + | | [17.0.0-19.0.0] 0x49 [20.0.0+] 0x54|| CanNotifyErrorContextServiceReady || 0x8000004000000000 || NotifyErrorContextServiceReady |
| |- | | |- |
− | | [13.0.0+] 0x47 || CanSetDebugConfiguration || 0x8000000000000000 || SetDebugOption, UnsetDebugOption | + | | [17.0.0-19.0.0] 0x4A || CanGetProgramId || 0x8000000008000000 || GetProgramId, Removed in 20.0.0 |
| |- | | |- |
− | | [15.0.0+] 0x48 || CanOpenDataStorageByPath || 0x8000000000000000 || OpenDataStorageByPath | + | | [20.0.0+] 0x55 || || 0x8000000000000800 || |
| |- | | |- |
− | | [17.0.0+] 0x49 || CanNotifyErrorContextServiceReady || 0x8000004000000000 || NotifyErrorContextServiceReady | + | | [20.0.0+] 0x56 || || 0x8000000004000000 || |
| |- | | |- |
− | | [17.0.0+] 0x4A || CanGetProgramId || 0x8000000008000000 || GetProgramId | + | | [20.0.0+] 0x57 || || 0x8000000004000000 || |
| |} | | |} |
| | | |