Difference between revisions of "Filesystem services PXI"

From 3dbrew
Jump to navigation Jump to search
Line 1: Line 1:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
!  Command Header
+
!  Command Header, prior to [[3.0.0-5]]
 +
!  Command Header, starting with [[3.0.0-5]]
 
!  Available since system version
 
!  Available since system version
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0x000101C2
 
| 0x000101C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| OpenFile
 
| OpenFile
 
|-
 
|-
 
| 0x00020142
 
| 0x00020142
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| DeleteFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
| DeleteFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00030244
 
| 0x00030244
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| RenameFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, secondarchivehandlelo, secondarchivehandlehi, secondpathtype, secondpathsize, pathptrsize, pathptr, secondpathptrsize, secondpathptr)
 
| RenameFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, secondarchivehandlelo, secondarchivehandlehi, secondpathtype, secondpathsize, pathptrsize, pathptr, secondpathptrsize, secondpathptr)
 
|-
 
|-
 
| 0x00040142
 
| 0x00040142
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| DeleteDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
| DeleteDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00050202
 
| 0x00050202
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CreateFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, unknown_u32, unknown_lo, unknown_hi, pathptrsize, pathptr)  
 
| CreateFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, unknown_u32, unknown_lo, unknown_hi, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00060182
 
| 0x00060182
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CreateDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, unknown_u32, pathptrsize, pathptr)  
 
| CreateDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, unknown_u32, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00070244
 
| 0x00070244
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| RenameDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, secondarchivehandlelo, secondarchivehandlehi, secondpathtype, secondpathsize, pathptrsize, pathptr, secondpathptrsize, secondpathptr)
 
| RenameDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, secondarchivehandlelo, secondarchivehandlehi, secondpathtype, secondpathsize, pathptrsize, pathptr, secondpathptrsize, secondpathptr)
 
|-
 
|-
 
| 0x00080102
 
| 0x00080102
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| OpenDirectory (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
 
| OpenDirectory (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
 
|-
 
|-
 
| 0x00090142
 
| 0x00090142
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| ReadFile
 
| ReadFile
 
|-
 
|-
 
| 0x000A00C2
 
| 0x000A00C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CalculateFileHashSHA256
 
| CalculateFileHashSHA256
 
|-
 
|-
 
| 0x000B0182
 
| 0x000B0182
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| WriteFile
 
| WriteFile
 
|-
 
|-
 
| 0x000C0104
 
| 0x000C0104
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| [[FSPXI:CalcSavegameMAC|CalcSavegameMAC]]
 
| [[FSPXI:CalcSavegameMAC|CalcSavegameMAC]]
 
|-
 
|-
 
| 0x000D0080
 
| 0x000D0080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetFileSize
 
| GetFileSize
 
|-
 
|-
 
| 0x000E0100
 
| 0x000E0100
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| SetFileSize (sizelo, sizehi, filehandlelo, filehandlehi)
 
| SetFileSize (sizelo, sizehi, filehandlelo, filehandlehi)
 
|-
 
|-
 
| 0x000F0080
 
| 0x000F0080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CloseFile (filehandlelo, filehandlehi)
 
| CloseFile (filehandlelo, filehandlehi)
 
|-
 
|-
 
| 0x001000C2
 
| 0x001000C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| ReadDirectory (dirhandlelo, dirhandlehi, count, ptrsize, ptr)
 
| ReadDirectory (dirhandlelo, dirhandlehi, count, ptrsize, ptr)
 
|-
 
|-
 
| 0x00110080
 
| 0x00110080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CloseDirectory (dirhandlelo, dirhandlehi)
 
| CloseDirectory (dirhandlelo, dirhandlehi)
 
|-
 
|-
 
| 0x001200C2
 
| 0x001200C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| [[FSPXI:OpenArchive|OpenArchive]]
 
| [[FSPXI:OpenArchive|OpenArchive]]
 
|-
 
|-
 
| 0x00130102
 
| 0x00130102
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CreateExtSaveData? (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
| CreateExtSaveData? (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00140102
 
| 0x00140102
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
| (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00150102
 
| 0x00150102
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
| (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)  
 
|-
 
|-
 
| 0x00160080
 
| 0x00160080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CloseArchive (archivehandlelo, archivehandlehi)
 
| CloseArchive (archivehandlelo, archivehandlehi)
 
|-
 
|-
 
| 0x00170080
 
| 0x00170080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| ReopenArchive? (archivehandlelo, archivehandlehi)
 
| ReopenArchive? (archivehandlelo, archivehandlehi)
 
|-
 
|-
 
| 0x00180000
 
| 0x00180000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetCardType
 
| GetCardType
 
|-
 
|-
 
| 0x00190000
 
| 0x00190000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSdmcArchiveResource
 
| GetSdmcArchiveResource
 
|-
 
|-
 
| 0x001A0000
 
| 0x001A0000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetNandArchiveResource
 
| GetNandArchiveResource
 
|-
 
|-
 
| 0x001B0000
 
| 0x001B0000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSdmcFatFsError
 
| GetSdmcFatFsError
 
|-
 
|-
 
| 0x001C0000
 
| 0x001C0000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSdmcDetected
 
| GetSdmcDetected
 
|-
 
|-
 
| 0x001D0000
 
| 0x001D0000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSdmcWritable
 
| GetSdmcWritable
 
|-
 
|-
 
| 0x001E0042
 
| 0x001E0042
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| [[FSPXI:GetSdmcCid|GetSdmcCid]]
 
| [[FSPXI:GetSdmcCid|GetSdmcCid]]
 
|-
 
|-
 
| 0x001F0042
 
| 0x001F0042
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| [[FSPXI:GetNandCid|GetNandCid]]
 
| [[FSPXI:GetNandCid|GetNandCid]]
 
|-
 
|-
 
| 0x00200000
 
| 0x00200000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSdmcSpeedInfo
 
| GetSdmcSpeedInfo
 
|-
 
|-
 
| 0x00210000
 
| 0x00210000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetNandSpeedInfo
 
| GetNandSpeedInfo
 
|-
 
|-
 
| 0x00220042
 
| 0x00220042
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSdmcLog
 
| GetSdmcLog
 
|-
 
|-
 
| 0x00230042
 
| 0x00230042
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetNandLog
 
| GetNandLog
 
|-
 
|-
 
| 0x00240000
 
| 0x00240000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| ClearSdmcLog
 
| ClearSdmcLog
 
|-
 
|-
 
| 0x00250000
 
| 0x00250000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| ClearNandLog
 
| ClearNandLog
 
|-
 
|-
 
| 0x00260000
 
| 0x00260000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetCardSlotInserted
 
| GetCardSlotInserted
 
|-
 
|-
 
| 0x00270000
 
| 0x00270000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardSlotPowerOn
 
| CardSlotPowerOn
 
|-
 
|-
 
| 0x00280000
 
| 0x00280000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardSlotPowerOff
 
| CardSlotPowerOff
 
|-
 
|-
 
| 0x00290000
 
| 0x00290000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardSlotGetIfPowerStatus
 
| CardSlotGetIfPowerStatus
 
|-
 
|-
 
| 0x002A0040
 
| 0x002A0040
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectCommand (These CardNor commands are used for accessing the raw gamecard savegame?)
 
| CardNorDirectCommand (These CardNor commands are used for accessing the raw gamecard savegame?)
 
|-
 
|-
 
| 0x002B0080
 
| 0x002B0080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectCommandWithAddress
 
| CardNorDirectCommandWithAddress
 
|-
 
|-
 
| 0x002C0082
 
| 0x002C0082
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectRead
 
| CardNorDirectRead
 
|-
 
|-
 
| 0x002D00C2
 
| 0x002D00C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectReadWithAddress
 
| CardNorDirectReadWithAddress
 
|-
 
|-
 
| 0x002E0082
 
| 0x002E0082
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectWrite
 
| CardNorDirectWrite
 
|-
 
|-
 
| 0x002F00C2
 
| 0x002F00C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectWriteWithAddress
 
| CardNorDirectWriteWithAddress
 
|-
 
|-
 
| 0x003000C2
 
| 0x003000C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectRead4IO
 
| CardNorDirectRead4IO
 
|-
 
|-
 
| 0x00310082
 
| 0x00310082
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectCpuWriteWithoutVerify
 
| CardNorDirectCpuWriteWithoutVerify
 
|-
 
|-
 
| 0x00320040
 
| 0x00320040
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CardNorDirectSectorEraseWithoutVerify
 
| CardNorDirectSectorEraseWithoutVerify
 
|-
 
|-
 
| 0x00330080
 
| 0x00330080
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetProductInfo
 
| GetProductInfo
 
|-
 
|-
 
| 0x00340040
 
| 0x00340040
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| SetCardSpiBaudrate
 
| SetCardSpiBaudrate
 
|-
 
|-
 
| 0x00350040
 
| 0x00350040
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| SetCardSpiBusMode
 
| SetCardSpiBusMode
 
|-
 
|-
 
| 0x00360040
 
| 0x00360040
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| SendInitializeInfo
 
| SendInitializeInfo
 
|-
 
|-
 
| 0x00370140
 
| 0x00370140
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CreateExtSaveData
 
| CreateExtSaveData
 
|-
 
|-
 
| 0x003800C0
 
| 0x003800C0
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| DeleteExtSaveData
 
| DeleteExtSaveData
 
|-
 
|-
 
| 0x00390082
 
| 0x00390082
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| EnumerateExtSaveData
 
| EnumerateExtSaveData
 
|-
 
|-
 
| 0x003A0100
 
| 0x003A0100
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetSpecialContentIndex
 
| GetSpecialContentIndex
 
|-
 
|-
 
| 0x003B00C2
 
| 0x003B00C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetLegacyRomHeader
 
| GetLegacyRomHeader
 
|-
 
|-
 
| 0x003C00C2
 
| 0x003C00C2
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| GetLegacyBannerData
 
| GetLegacyBannerData
 
|-
 
|-
 
| 0x003F0000
 
| 0x003F0000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| [[FSPXI:DeleteSdmcRoot|DeleteSdmcRoot]]
 
| [[FSPXI:DeleteSdmcRoot|DeleteSdmcRoot]]
 
|-
 
|-
 
| 0x00400040
 
| 0x00400040
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| DeleteAllExtSaveDataOnNand
 
| DeleteAllExtSaveDataOnNand
 
|-
 
|-
 
| 0x00410000
 
| 0x00410000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| [[FSPXI:InitializeCtrFilesystem|InitializeCtrFilesystem]]
 
| [[FSPXI:InitializeCtrFilesystem|InitializeCtrFilesystem]]
 
|-
 
|-
 
| 0x00420000
 
| 0x00420000
 +
|
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
 
| CreateSeed
 
| CreateSeed
 
|-
 
|-
 
| 0x00430042
 
| 0x00430042
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| [[FSPXI:GetSdmcCtrRootPath|GetSdmcCtrRootPath]]
 
| [[FSPXI:GetSdmcCtrRootPath|GetSdmcCtrRootPath]]
 
|-
 
|-
 
| 0x00440040
 
| 0x00440040
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| GetArchiveResource
 
| GetArchiveResource
 
|-
 
|-
 
| 0x00450002
 
| 0x00450002
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| [[FSPXI:ExportIntegrityVerificationSeed|ExportIntegrityVerificationSeed]]
 
| [[FSPXI:ExportIntegrityVerificationSeed|ExportIntegrityVerificationSeed]]
 
|-
 
|-
 
| 0x00460002
 
| 0x00460002
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| [[FSPXI:ImportIntegrityVerificationSeed|ImportIntegrityVerificationSeed]]
 
| [[FSPXI:ImportIntegrityVerificationSeed|ImportIntegrityVerificationSeed]]
 
|-
 
|-
 
| 0x00470082
 
| 0x00470082
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| EnumerateSharedExtSaveData
 
| EnumerateSharedExtSaveData
 
|-
 
|-
 
| 0x00480102
 
| 0x00480102
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| GetLegacySubBannerData
 
| GetLegacySubBannerData
 
|-
 
|-
 
| 0x00490042
 
| 0x00490042
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| Initialize (?)
 
| Initialize (?)
 
|-
 
|-
 
| 0x004A00C2
 
| 0x004A00C2
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| OpenSpecialFile? (archivehandlelo, archivehandlehi, size, ptrsize_mul2, ptr)
 
| OpenSpecialFile? (archivehandlelo, archivehandlehi, size, ptrsize_mul2, ptr)
 
|-
 
|-
 
| 0x004B0102
 
| 0x004B0102
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| ReadSpecialFile
 
| ReadSpecialFile
 +
|-
 +
|
 +
| 0x004B0000
 +
| [[3.0.0-5]]
 +
| [[FSPXI:GetMovableSedHashedKeyYRandomData|GetMovableSedHashedKeyYRandomData]]
 
|-
 
|-
 
| 0x004C0040
 
| 0x004C0040
 +
|
 
| [[2.0.0-2]]
 
| [[2.0.0-2]]
 
| GetSpecialFileSize
 
| GetSpecialFileSize
 
|-
 
|-
 +
|
 
| 0x004D01C4
 
| 0x004D01C4
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| This is a wrapper for ReadFile. If the first ReadFile call fails, this calls ReadFile again then executes hash-related code.
 
| This is a wrapper for ReadFile. If the first ReadFile call fails, this calls ReadFile again then executes hash-related code.
 
|-
 
|-
 +
|
 
| 0x004E0204
 
| 0x004E0204
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| This is a wrapper for WriteFile, this is similar to command 0x004D01C4.
 
| This is a wrapper for WriteFile, this is similar to command 0x004D01C4.
 
|-
 
|-
 +
|
 
| 0x004F....
 
| 0x004F....
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| (unknown_u64)
 
| (unknown_u64)
 
|-
 
|-
 +
|
 
| 0x00500000
 
| 0x00500000
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| Stubbed, this only returns value 0.
 
| Stubbed, this only returns value 0.
 
|-
 
|-
 +
|
 
| 0x0051....
 
| 0x0051....
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| (unknown_u8)
 
| (unknown_u8)
 
|-
 
|-
 +
|
 
| 0x00520042
 
| 0x00520042
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| (outbuffersize, outbufferptr)
 
| (outbuffersize, outbufferptr)
 
|-
 
|-
 +
|
 
| 0x00530000
 
| 0x00530000
 
| [[3.0.0-5]]
 
| [[3.0.0-5]]
 
| Unknown, stubbed with [[4.0.0-7]].
 
| Unknown, stubbed with [[4.0.0-7]].
 
|-
 
|-
 +
|
 
| 0x0054....
 
| 0x0054....
 
| [[4.0.0-7]]
 
| [[4.0.0-7]]
 
| Stubbed with [[4.0.0-7]].
 
| Stubbed with [[4.0.0-7]].
 
|-
 
|-
 +
|
 
| 0x00550082
 
| 0x00550082
 
| [[4.0.0-7]]
 
| [[4.0.0-7]]

Revision as of 18:02, 9 October 2013

Command Header, prior to 3.0.0-5 Command Header, starting with 3.0.0-5 Available since system version Description
0x000101C2 1.0.0-0 OpenFile
0x00020142 1.0.0-0 DeleteFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
0x00030244 1.0.0-0 RenameFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, secondarchivehandlelo, secondarchivehandlehi, secondpathtype, secondpathsize, pathptrsize, pathptr, secondpathptrsize, secondpathptr)
0x00040142 1.0.0-0 DeleteDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
0x00050202 1.0.0-0 CreateFile? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, unknown_u32, unknown_lo, unknown_hi, pathptrsize, pathptr)
0x00060182 1.0.0-0 CreateDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, unknown_u32, pathptrsize, pathptr)
0x00070244 1.0.0-0 RenameDirectory? (unknown_u32, archivehandlelo, archivehandlehi, pathtype, pathsize, secondarchivehandlelo, secondarchivehandlehi, secondpathtype, secondpathsize, pathptrsize, pathptr, secondpathptrsize, secondpathptr)
0x00080102 1.0.0-0 OpenDirectory (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
0x00090142 1.0.0-0 ReadFile
0x000A00C2 1.0.0-0 CalculateFileHashSHA256
0x000B0182 1.0.0-0 WriteFile
0x000C0104 1.0.0-0 CalcSavegameMAC
0x000D0080 1.0.0-0 GetFileSize
0x000E0100 1.0.0-0 SetFileSize (sizelo, sizehi, filehandlelo, filehandlehi)
0x000F0080 1.0.0-0 CloseFile (filehandlelo, filehandlehi)
0x001000C2 1.0.0-0 ReadDirectory (dirhandlelo, dirhandlehi, count, ptrsize, ptr)
0x00110080 1.0.0-0 CloseDirectory (dirhandlelo, dirhandlehi)
0x001200C2 1.0.0-0 OpenArchive
0x00130102 1.0.0-0 CreateExtSaveData? (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
0x00140102 1.0.0-0 (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
0x00150102 1.0.0-0 (archivehandlelo, archivehandlehi, pathtype, pathsize, pathptrsize, pathptr)
0x00160080 1.0.0-0 CloseArchive (archivehandlelo, archivehandlehi)
0x00170080 1.0.0-0 ReopenArchive? (archivehandlelo, archivehandlehi)
0x00180000 1.0.0-0 GetCardType
0x00190000 1.0.0-0 GetSdmcArchiveResource
0x001A0000 1.0.0-0 GetNandArchiveResource
0x001B0000 1.0.0-0 GetSdmcFatFsError
0x001C0000 1.0.0-0 GetSdmcDetected
0x001D0000 1.0.0-0 GetSdmcWritable
0x001E0042 1.0.0-0 GetSdmcCid
0x001F0042 1.0.0-0 GetNandCid
0x00200000 1.0.0-0 GetSdmcSpeedInfo
0x00210000 1.0.0-0 GetNandSpeedInfo
0x00220042 1.0.0-0 GetSdmcLog
0x00230042 1.0.0-0 GetNandLog
0x00240000 1.0.0-0 ClearSdmcLog
0x00250000 1.0.0-0 ClearNandLog
0x00260000 1.0.0-0 GetCardSlotInserted
0x00270000 1.0.0-0 CardSlotPowerOn
0x00280000 1.0.0-0 CardSlotPowerOff
0x00290000 1.0.0-0 CardSlotGetIfPowerStatus
0x002A0040 1.0.0-0 CardNorDirectCommand (These CardNor commands are used for accessing the raw gamecard savegame?)
0x002B0080 1.0.0-0 CardNorDirectCommandWithAddress
0x002C0082 1.0.0-0 CardNorDirectRead
0x002D00C2 1.0.0-0 CardNorDirectReadWithAddress
0x002E0082 1.0.0-0 CardNorDirectWrite
0x002F00C2 1.0.0-0 CardNorDirectWriteWithAddress
0x003000C2 1.0.0-0 CardNorDirectRead4IO
0x00310082 1.0.0-0 CardNorDirectCpuWriteWithoutVerify
0x00320040 1.0.0-0 CardNorDirectSectorEraseWithoutVerify
0x00330080 1.0.0-0 GetProductInfo
0x00340040 1.0.0-0 SetCardSpiBaudrate
0x00350040 1.0.0-0 SetCardSpiBusMode
0x00360040 1.0.0-0 SendInitializeInfo
0x00370140 1.0.0-0 CreateExtSaveData
0x003800C0 1.0.0-0 DeleteExtSaveData
0x00390082 1.0.0-0 EnumerateExtSaveData
0x003A0100 1.0.0-0 GetSpecialContentIndex
0x003B00C2 1.0.0-0 GetLegacyRomHeader
0x003C00C2 1.0.0-0 GetLegacyBannerData
0x003F0000 1.0.0-0 DeleteSdmcRoot
0x00400040 1.0.0-0 DeleteAllExtSaveDataOnNand
0x00410000 1.0.0-0 InitializeCtrFilesystem
0x00420000 1.0.0-0 CreateSeed
0x00430042 2.0.0-2 GetSdmcCtrRootPath
0x00440040 2.0.0-2 GetArchiveResource
0x00450002 2.0.0-2 ExportIntegrityVerificationSeed
0x00460002 2.0.0-2 ImportIntegrityVerificationSeed
0x00470082 2.0.0-2 EnumerateSharedExtSaveData
0x00480102 2.0.0-2 GetLegacySubBannerData
0x00490042 2.0.0-2 Initialize (?)
0x004A00C2 2.0.0-2 OpenSpecialFile? (archivehandlelo, archivehandlehi, size, ptrsize_mul2, ptr)
0x004B0102 2.0.0-2 ReadSpecialFile
0x004B0000 3.0.0-5 GetMovableSedHashedKeyYRandomData
0x004C0040 2.0.0-2 GetSpecialFileSize
0x004D01C4 3.0.0-5 This is a wrapper for ReadFile. If the first ReadFile call fails, this calls ReadFile again then executes hash-related code.
0x004E0204 3.0.0-5 This is a wrapper for WriteFile, this is similar to command 0x004D01C4.
0x004F.... 3.0.0-5 (unknown_u64)
0x00500000 3.0.0-5 Stubbed, this only returns value 0.
0x0051.... 3.0.0-5 (unknown_u8)
0x00520042 3.0.0-5 (outbuffersize, outbufferptr)
0x00530000 3.0.0-5 Unknown, stubbed with 4.0.0-7.
0x0054.... 4.0.0-7 Stubbed with 4.0.0-7.
0x00550082 4.0.0-7 (outbuffersize, u8 mediatype, outbufferptr)

Errors

Error-code Description
0xC8804478 File doesn't exist / failed to open file