Filesystem services: Difference between revisions
Line 591: | Line 591: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! OperationType || | ! OperationType || Name || Mask || Used by | ||
|- | |- | ||
| 0x0 || | | 0x0 || CanInvalidateBisCache || 0x8000000000000080 || [[#InvalidateBisCache]] | ||
|- | |- | ||
| 0x1 || | | 0x1 || CanEraseMmc || 0x8000000000000080 || EraseMmc | ||
|- | |- | ||
| 0x2 || | | 0x2 || CanGetGameCardDeviceCertificate || 0x8000000000000010 || GetGameCardDeviceCertificate | ||
|- | |- | ||
| 0x3 || | | 0x3 || CanGetGameCardIdSet || 0x8000000000000010 || GetGameCardIdSet | ||
|- | |- | ||
| 0x4 || | | 0x4 || CanFinalizeGameCardDriver || 0x8000000000000200 || FinalizeGameCardDriver | ||
|- | |- | ||
| 0x5 || | | 0x5 || CanGetGameCardAsicInfo || 0x8000000000000200 || GetGameCardAsicInfo | ||
|- | |- | ||
| 0x6 || | | 0x6 || CanCreateSaveData || 0x8000000000002020 || [[#CreateSaveDataFileSystem]] | ||
|- | |- | ||
| 0x7 || | | 0x7 || CanDeleteSaveData || 0x8000000000000060 || [[#DeleteSaveDataFileSystem]], RegisterSaveDataFileSystemAtomicDeletion | ||
|- | |- | ||
| 0x8 || | | 0x8 || CanCreateSystemSaveData || 0x8000000000000028 || CreateSaveDataFileSystemBySystemSaveDataId | ||
|- | |- | ||
| 0x9 || | | 0x9 || CanCreateOthersSystemSaveData || 0x8000000000000020 || CreateSaveDataFileSystemBySystemSaveDataId | ||
|- | |- | ||
| 0xA || | | 0xA || CanDeleteSystemSaveData || 0x8000000000004028 || [[#DeleteSaveDataFileSystem]], RegisterSaveDataFileSystemAtomicDeletion | ||
|- | |- | ||
| 0xB || | | 0xB || CanOpenSaveDataInfoReader || 0x8000000000000060 || [[#OpenSaveDataInfoReaderBySaveDataSpaceId]], [[#OpenSaveDataInfoReader]] | ||
|- | |- | ||
| 0xC || | | 0xC || CanOpenSaveDataInfoReaderForSystem || 0x8000000000004020 || [[#OpenSaveDataInfoReaderBySaveDataSpaceId]], [[#OpenSaveDataInfoReader]] | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0xD) || || 0x8000000000020000 || | ||
|- | |- | ||
| | | 0xD || CanOpenSaveDataInfoReaderForInternal || 0x8000000000000040 || [[#OpenSaveDataInfoReaderWithFilter]] | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0xE) || || 0x8000000000000400 || | ||
|- | |- | ||
| | | 0xE || CanOpenSaveDataMetaFile || 0x8000000000020000 || OpenSaveDataMetaFile | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0xF) || || 0x8000000000004060 || | ||
|- | |- | ||
| | | 0xF || CanSetCurrentPosixTime || 0x8000000000000400 || SetCurrentPosixTime, SetCurrentPosixTimeWithTimeDifference | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0x10) || || 0x8000000000080000 || | ||
|- | |- | ||
| | | 0x10 || CanReadSaveDataFileSystemExtraData || 0x8000000000004060 || [[#ReadSaveDataFileSystemExtraData]] | ||
|- | |- | ||
| | | 0x11 || CanSetGlobalAccessLogMode || 0x8000000000080000 || [[#SetGlobalAccessLogMode]] | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0x12) || || Invalid || | ||
|- | |- | ||
| | | 0x12 || CanSetSpeedEmulationMode || 0x8000000000080000 || SetSpeedEmulationMode | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0x13) || || 0xC000000000800000 || | ||
|- | |- | ||
| | | 0x13 || || Invalid || | ||
|- | |- | ||
| | | ([1.0.0-5.1.0] 0x14) || || 0xC000000001000000 || | ||
|- | |- | ||
| | | 0x14 || CanFillBis || 0xC000000000800000 || CreatePaddingFile, DeleteAllPaddingFiles | ||
|- | |- | ||
| | | ([1.0.0-4.1.0] 0x15) || || 0xC000000002000000 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x15) || || 0x8000000001000060 || | ||
|- | |- | ||
| | | 0x15 || CanCorruptSaveData || 0xC000000001000000 || CorruptSaveDataFileSystem, CorruptSaveDataFileSystemBySaveDataSpaceId | ||
|- | |- | ||
| | | ([2.0.0-4.1.0] 0x16) || || 0x8000000004000000 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x16) || || 0x8000000000000060 || | ||
|- | |- | ||
| [ | | [2.0.0+] 0x16 || CanCorruptSystemSaveData || 0x8000000001000060 || CorruptSaveDataFileSystem, CorruptSaveDataFileSystemBySaveDataSpaceId | ||
|- | |- | ||
| | | ([2.0.0-4.1.0] 0x17) || || 0x8000000008000000 || | ||
|- | |- | ||
| [5 | | ([5.0.0-5.1.0] 0x17) || || 0xC000000002000000 || | ||
|- | |- | ||
| [ | | [2.0.0+] 0x17 || CanVerifySaveData || 0x8000000000000060 || [[#VerifySaveDataFileSystem]], VerifySaveDataFileSystemBySaveDataSpaceId | ||
|- | |- | ||
| | | ([2.0.0-4.1.0] 0x18) || || 0x8000000010000000 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x18) || || 0x8000000004000000 || | ||
|- | |- | ||
| [ | | [2.0.0+] 0x18 || CanDebugSaveData || 0xC000000002000000 || [[#CreateSaveDataFileSystem]], [[#OpenSaveDataFileSystem]], [[#SetSaveDataRootPath]] | ||
|- | |- | ||
| | | ([2.0.0-4.1.0] 0x19) || || 0x8000000000000800 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x19) || || 0x8000000008000000 || | ||
|- | |- | ||
| [ | | [2.0.0+] 0x19 || CanFormatSdCard || 0x8000000004000000 || FormatSdCardFileSystem | ||
|- | |- | ||
| | | ([2.0.0-4.1.0] 0x1A) || || 0x8000000000004020 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x1A) || || 0x8000000010000000 || | ||
|- | |- | ||
| [ | | [2.0.0+] 0x1A || CanGetRightsId || 0x8000000008000000 || GetRightsId, GetRightsIdAndKeyGenerationByPath, GetRightsIdByPath | ||
|- | |- | ||
| | | ([3.0.0-4.1.0] 0x1B) || || 0x8000000000002020 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x1B) || || 0x8000000000000800 || | ||
|- | |- | ||
| [ | | [3.0.0+] 0x1B || CanRegisterExternalKey || 0x8000000010000000 || RegisterExternalKey, UnregisterAllExternalKey | ||
|- | |- | ||
| [ | | ([3.0.0-4.1.0] 0x1C) || || 0x8000000000000028 || | ||
|- | |- | ||
| [ | | ([5.0.0-5.1.0] 0x1C) || || 0x8000000000004020 || | ||
|- | |- | ||
| [ | | [3.0.0+] 0x1C || CanSetEncryptionSeed || 0x8000000000000800 || [[#SetSdCardEncryptionSeed]] | ||
|- | |- | ||
| | | ([4.0.0-4.1.0] 0x1D) || || 0x8000000020000000 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x1D) || || 0x8000000000000000 || | ||
|- | |- | ||
| [ | | [4.0.0+] 0x1D || CanWriteSaveDataFileSystemExtraDataTimeStamp || 0x8000000000000020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | ||
|- | |- | ||
| | | ([4.0.0-4.1.0] 0x1E) || || 0x8000000040000000 || | ||
|- | |- | ||
| | | ([5.0.0-5.1.0] 0x1E) || || 0x8000000000002020 || | ||
|- | |- | ||
| [ | | [4.0.0+] 0x1E || CanWriteSaveDataFileSystemExtraDataFlags || 0x8000000000004020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | ||
|- | |- | ||
| [ | | ([4.0.0-4.1.0] 0x1F) || || 0x8000000000000000 || | ||
|- | |- | ||
| [ | | ([5.0.0-5.1.0] 0x1F) || || 0x8000000000000028 || | ||
|- | |- | ||
| [ | | [4.0.0+] 0x1F || CanWriteSaveDataFileSystemExtraDataCommitId || 0x8000000000000020 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | ||
|- | |- | ||
| [ | | ([4.0.0-4.1.0] 0x20) || || 0x8000000000000000 || | ||
|- | |- | ||
| [ | | ([5.0.0-5.1.0] 0x20) || || 0x8000000020000000 || | ||
|- | |- | ||
| [ | | [4.0.0+] 0x20 || CanWriteSaveDataFileSystemExtraDataAll || 0x8000000000000000 || WriteSaveDataFileSystemExtraData, WriteSaveDataFileSystemExtraDataWithMask | ||
|- | |- | ||
| [9.0.0+] 0x40 || 0x8000000800000000 || CanFindOwnSaveDataWithFilter || [[#FindSaveDataWithFilter]] | | ([5.0.0-5.1.0] 0x21) || || 0x8000000040000000 || | ||
|- | |||
| [5.0.0+] 0x21 || CanExtendSaveData || 0x8000000000002020 || ExtendSaveDataFileSystem | |||
|- | |||
| ([5.0.0-5.1.0] 0x22) || || 0x0000000080000002 || | |||
|- | |||
| [5.0.0+] 0x22 || CanExtendSystemSaveData || 0x8000000000000028 || ExtendSaveDataFileSystem | |||
|- | |||
| ([5.0.0-5.1.0] 0x23) || || 0x8000000000000000 || | |||
|- | |||
| ([6.0.0-9.2.0] 0x23) || || 0x8000000020000000 || | |||
|- | |||
| [5.0.0+] 0x23 || CanExtendOthersSystemSaveData || 0x8000000000000020 || ExtendSaveDataFileSystem | |||
|- | |||
| ([5.0.0-5.1.0] 0x24) || || 0x8000000000000000 || | |||
|- | |||
| ([6.0.0-9.2.0] 0x24) || || 0x8000000040000000 || | |||
|- | |||
| [5.0.0+] 0x24 || CanRegisterUpdatePartition || 0x8000000020000000 || RegisterUpdatePartition | |||
|- | |||
| ([5.0.0-5.1.0] 0x25) || || 0x8000000080200000 || | |||
|- | |||
| ([6.0.0-9.2.0] 0x25) || || 0x8000000200000000 || | |||
|- | |||
| [5.0.0+] 0x25 || CanOpenSaveDataTransferManager || 0x8000000040000000 || [[#OpenSaveDataTransferManager]] | |||
|- | |||
| ([5.0.0-5.1.0] 0x26) || || 0x8000000080000110 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x26) || || 0x8000000200002000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x26) || || 0x8000000200000000 || | |||
|- | |||
| [5.0.0+] 0x26 || CanOpenSaveDataTransferManagerVersion2 || 0x8000000200000000 || [[#OpenSaveDataTransferManagerVersion2]] | |||
|- | |||
| ([5.0.0-5.1.0] 0x27) || || 0x8000000000100008 || | |||
|- | |||
| ([6.0.0-7.0.1] 0x27) || || 0x8000000200002000 || | |||
|- | |||
| ([8.0.0-8.1.0] 0x27) || || 0x8000000240002000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x27) || || 0x8000000000000000 || | |||
|- | |||
| [5.0.0+] 0x27 || CanOpenSaveDataTransferManagerForSaveDataRepair || 0x8000000200000000 || OpenSaveDataTransferManagerForSaveDataRepair | |||
|- | |||
| ([5.0.0-5.1.0] 0x28) || || 0x8000000080010000 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x28) || || 0x8000000000000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x28) || || 0x8000000200002000 || | |||
|- | |||
| [5.0.0+] 0x28 || CanOpenSaveDataTransferManagerForSaveDataRepairTool || 0x8000000000000000 || OpenSaveDataTransferManagerForSaveDataRepair | |||
|- | |||
| ([5.0.0-5.1.0] 0x29) || || 0x0000000080000001 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x29) || || 0x8000000000000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x29) || || 0x8000000240002000 || | |||
|- | |||
| [5.0.0+] 0x29 || CanOpenOpenSaveDataTransferProhibiter || 0x8000000200002000 || [[#OpenSaveDataTransferProhibiter]] | |||
|- | |||
| ([5.0.0-5.1.0] 0x2A) || || 0x0000000080000001 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x2A) || || 0x8000000080200000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x2A) || || 0x8000000000000000 || | |||
|- | |||
| [5.0.0+] 0x2A || CanOpenSaveDataMover || 0x8000001000000000 || [[#OpenSaveDataMover]] | |||
|- | |||
| ([5.0.0-5.1.0] 0x2B) || || 0x0000000080000001 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x2B) || || 0x8000000080000110 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x2B) || || 0x8000000000000000 || | |||
|- | |||
| [5.0.0+] 0x2B || CanOpenBisWiper || 0x8000000000000800 || [[#OpenBisWiper]] | |||
|- | |||
| ([5.0.0-5.1.0] 0x2C) || || 0x0000000080000001 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x2C) || || 0x8000000000100008 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x2C) || || 0x8000000080200000 || | |||
|- | |||
| [5.0.0+] 0x2C || CanListAccessibleSaveDataOwnerId || 0x8000000240002000 || [[#ListAccessibleSaveDataOwnerId]] | |||
|- | |||
| ([5.0.0-5.1.0] 0x2D) || || 0x0000000080000001 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x2D) || || 0x8000000000010000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x2D) || || 0x8000000080000110 || | |||
|- | |||
| [5.0.0+] 0x2D || CanControlMmcPatrol || 0x8000000000000000 || SuspendMmcPatrol, ResumeMmcPatrol | |||
|- | |||
| ([5.0.0-5.1.0] 0x2E) || || 0x8000000040000000 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x2E) || || 0x8000000100000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x2E) || || 0x8000000000100008 || | |||
|- | |||
| [5.0.0+] 0x2E || CanOverrideSaveDataTransferTokenSignVerificationKey || 0x8000000000000000 || OverrideSaveDataTransferTokenSignVerificationKey | |||
|- | |||
| ([5.0.0-5.1.0] 0x2F) || || 0x8000000080200000 || | |||
|- | |||
| ([6.0.0-8.1.0] 0x2F) || || 0x8000000100000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x2F) || || 0x8000000000010000 || | |||
|- | |||
| [5.0.0+] 0x2F || CanOpenSdCardDetectionEventNotifier || 0x8000000080200000 || [[#OpenSdCardDetectionEventNotifier]] | |||
|- | |||
| ([5.1.0-6.0.0] 0x30) || || 0x8000000080080000 || | |||
|- | |||
| ([6.0.1-9.2.0] 0x30) || || 0x8000000100000000 || | |||
|- | |||
| [5.1.0+] 0x30 || CanOpenGameCardDetectionEventNotifier || 0x8000000080000110 || [[#OpenGameCardDetectionEventNotifier]] | |||
|- | |||
| ([6.0.0-9.2.0] 0x31) || || 0x8000000100000000 || | |||
|- | |||
| [6.0.0+] 0x31 || CanOpenSystemDataUpdateEventNotifier || 0x8000000000100008 || OpenSystemDataUpdateEventNotifier | |||
|- | |||
| ([6.0.0-9.2.0] 0x32) || || 0x8000000100000000 || | |||
|- | |||
| [6.0.0+] 0x32 || CanNotifySystemDataUpdateEvent || 0x8000000000010000 || NotifySystemDataUpdateEvent | |||
|- | |||
| ([6.0.0-8.1.0] 0x33) || || 0x8000000040000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x33) || || 0x8000000100000000 || | |||
|- | |||
| [6.0.0+] 0x33 || CanOpenAccessFailureDetectionEventNotifier || 0x8000000100000000 || [[#OpenAccessFailureDetectionEventNotifier]] | |||
|- | |||
| ([6.0.0-8.1.0] 0x34) || || 0x8000000200000020 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x34) || || 0x8000000100000000 || | |||
|- | |||
| [6.0.0+] 0x34 || CanGetAccessFailureDetectionEvent || 0x8000000100000000 || GetAccessFailureDetectionEvent | |||
|- | |||
| ([6.0.0-8.1.0] 0x35) || || 0x8000000000200000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x35) || || 0x8000000040000000 || | |||
|- | |||
| [6.0.0+] 0x35 || CanIsAccessFailureDetected || 0x8000000100000000 || IsAccessFailureDetected | |||
|- | |||
| ([6.0.0-8.1.0] 0x36) || || 0x4000000000000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x36) || || 0x8000000200000020 || | |||
|- | |||
| [6.0.0+] 0x36 || CanResolveAccessFailure || 0x8000000100000000 || ResolveAccessFailure | |||
|- | |||
| ([6.0.0-6.2.0] 0x37) || || 0x8000000000080000 || | |||
|- | |||
| ([7.0.0-8.1.0] 0x37) || || 0x8000000000000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x37) || || 0x8000000000200000 || | |||
|- | |||
| [6.0.0+] 0x37 || CanAbandonAccessFailure || 0x8000000100000000 || AbandonAccessFailure | |||
|- | |||
| ([6.0.0-6.2.0] 0x38) || || 0x8000000000000000 || | |||
|- | |||
| ([7.0.0-8.1.0] 0x38) || || 0x8000000400000000 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x38) || || 0x4000000000000000 || | |||
|- | |||
| [6.0.0+] 0x38 || CanQuerySaveDataInternalStorageTotalSize || 0x8000000040000000 || QuerySaveDataInternalStorageTotalSize | |||
|- | |||
| ([8.0.0-8.1.0] 0x39) || || 0x8000000000000010 || | |||
|- | |||
| ([9.0.0-9.2.0] 0x39) || || 0x8000000000000000 || | |||
|- | |||
| [8.0.0+] 0x39 || CanGetSaveDataCommitId || 0x8000000200000020 || [[#GetSaveDataCommitId]] | |||
|- | |||
| ([9.0.0-9.2.0] 0x3A) || || 0x8000000400000000 || | |||
|- | |||
| [9.0.0+] 0x3A || CanSetSdCardAccessibility || 0x8000000000200000 || SetSdCardAccessibility | |||
|- | |||
| ([9.0.0-9.2.0] 0x3B) || || 0x8000000000000010 || | |||
|- | |||
| [9.0.0+] 0x3B || CanSimulateDevice || 0x4000000000000000 || SimulateDeviceDetectionEvent, SetSimulationEvent, ClearSimulationEvent | |||
|- | |||
| ([9.0.0-9.2.0] 0x3C) || || 0x8000000800000000 || | |||
|- | |||
| [9.0.0+] 0x3C || CanCreateSaveDataWithHashSalt || 0x8000000000000000 || [[#CreateSaveDataFileSystem]], [[#CreateSaveDataFileSystemWithHashSalt]] | |||
|- | |||
| ([9.0.0-9.2.0] 0x3D) || || 0x8000000800000000 || | |||
|- | |||
| [9.0.0+] 0x3D || CanRegisterProgramIndexMapInfo || 0x8000000400000000 || RegisterProgramIndexMapInfo | |||
|- | |||
| ([9.0.0-9.2.0] 0x3E) || || 0x8000000800000000 || | |||
|- | |||
| [9.0.0+] 0x3E || CanChallengeCardExistence || 0x8000000000000010 || ChallengeCardExistence | |||
|- | |||
| ([9.0.0-9.2.0] 0x3F) || || 0x8000000800000000 || | |||
|- | |||
| [9.0.0+] 0x3F || CanCreateOwnSaveData || 0x8000000800000000 || [[#CreateSaveDataFileSystem]], CreateSaveDataFileSystemWithHashSalt | |||
|- | |||
| ([9.0.0-9.2.0] 0x40) || || 0x8000000800000000 || | |||
|- | |||
| [9.0.0+] 0x40 || CanReadOwnSaveDataFileSystemExtraData || 0x8000000800000000 || [[#ReadSaveDataFileSystemExtraData]] | |||
|- | |||
| [10.0.0+] 0x41 || CanExtendOwnSaveData || 0x8000000800000000 || ExtendSaveDataFileSystem | |||
|- | |||
| [10.0.0+] 0x42 || CanOpenOwnSaveDataTransferProhibiter || 0x8000000800000000 || [[#OpenSaveDataTransferProhibiter]] | |||
|- | |||
| [10.0.0+] 0x43 || CanFindOwnSaveDataWithFilter || 0x8000000800000000 || [[#FindSaveDataWithFilter]] | |||
|} | |} | ||