Changes

8,087 bytes added ,  15:08, 25 August 2022
Made it clearer what Type is for in ContentInfo
Line 1: Line 1:  
[[Category:Services]]
 
[[Category:Services]]
   −
= Application Manager services =
+
= Application Manager services "am:sys", "am:u", "am:net" =
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 8: Line 8:  
|-
 
|-
 
| 0x00010040
 
| 0x00010040
| [[AMNet:TitleIDListGetTotal|TitleIDListGetTotal]]
+
| [[AM:GetNumPrograms|GetNumPrograms]]
 
|-
 
|-
 
| 0x00020082
 
| 0x00020082
| [[AMNet:GetTitleIDList|GetTitleIDList]]
+
| [[AM:GetProgramList|GetProgramList]]
 
|-
 
|-
 
| 0x00030084
 
| 0x00030084
| [[AMNet:ListTitles|ListTitles]]
+
| [[AM:GetProgramInfos|GetProgramInfos]]
 +
|-
 +
| 0x000400C0
 +
| [[AM:DeleteUserProgram|DeleteUserProgram]]
 +
|-
 +
| 0x000500C0
 +
| [[AM:GetProductCode|GetProductCode]]
 +
|-
 +
| 0x000600C0
 +
| [[AM:GetStorageId|GetStorageId]]
 +
|-
 +
| 0x00070080
 +
| [[AM:DeleteTicket|DeleteTicket]]
 
|-
 
|-
 
| 0x00080000
 
| 0x00080000
| [[AMNet:TitleIDListGetTotal3|TitleIDListGetTotal3]]
+
| [[AM:GetNumTickets|GetNumTickets]]
 
|-
 
|-
 
| 0x00090082
 
| 0x00090082
| [[AMNet:GetTitleIDList3|GetTitleIDList3]]
+
| [[AM:GetTicketList|GetTicketList]]
 
|-
 
|-
 
| 0x000A0000
 
| 0x000A0000
| [[AMNet:GetDeviceID|GetDeviceID]] (Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x003C0000)
+
| [[AM:GetDeviceId|GetDeviceId]]
 +
|-
 +
| 0x000B0040
 +
| [[AM:GetNumImportTitleContexts|GetNumImportTitleContexts]]
 +
|-
 +
| 0x000C0082
 +
| [[AM:GetImportTitleContextList|GetImportTitleContextList]]
 
|-
 
|-
 
| 0x000D0084
 
| 0x000D0084
| [[AMNet:ListTitles2|ListTitles2]]
+
| [[AM:GetImportTitleContexts|GetImportTitleContexts]]
 +
|-
 +
| 0x000E00C0
 +
| [[AM:DeleteImportTitleContext|DeleteImportTitleContext]]
 +
|-
 +
| 0x000F00C0
 +
| [[AM:GetNumImportContentContexts|GetNumImportContentContexts]]
 +
|-
 +
| 0x00100102
 +
| [[AM:GetImportContentContextList|GetImportContentContextList]]
 +
|-
 +
| 0x00110104
 +
| [[AM:GetImportContentContexts|GetImportContentContexts]]
 +
|-
 +
| 0x00120102
 +
| [[AM:DeleteImportContentContexts|DeleteImportContentContexts]]
 +
|-
 +
| 0x00130040
 +
| [[AM:NeedsCleanup|NeedsCleanup]]
 
|-
 
|-
 
| 0x00140040
 
| 0x00140040
| [[AMNet:FinishInstallToMedia|FinishInstallToMedia]]
+
| [[AM:DoCleanup|DoCleanup]]
 +
|-
 +
| 0x00150040
 +
| [[AM:DeleteAllImportContexts|DeleteAllImportContexts]]
 +
|-
 +
| 0x00160000
 +
| [[AM:DeleteAllTemporaryPrograms|DeleteAllTemporaryPrograms]]
 +
|-
 +
| 0x00170044
 +
| [[AM:ImportTwlBackupLegacy|ImportTwlBackupLegacy]]
 
|-
 
|-
 
| 0x00180080
 
| 0x00180080
| This is a wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00470080. (unknown_u8, unknown_u8)
+
| [[AM:InitializeTitleDatabase|InitializeTitleDatabase]]
 
|-
 
|-
 
| 0x00190040
 
| 0x00190040
| [[AM:ReloadDBS|ReloadDBS]]
+
| [[AM:QueryAvailableTitleDatabase|QueryAvailableTitleDatabase]]
 
|-
 
|-
 
| 0x001A00C0
 
| 0x001A00C0
| [[AM:GetDSiWareExportSize|GetDSiWareExportSize]]
+
| [[AM:CalcTwlBackupSize|CalcTwlBackupSize]]
 
|-
 
|-
 
| 0x001B0144
 
| 0x001B0144
| [[AM:ExportDSiWare|ExportDSiWare]]
+
| [[AM:ExportTwlBackup|ExportTwlBackup]]
 
|-
 
|-
 
| 0x001C0084
 
| 0x001C0084
| [[AM:ImportDSiWare|ImportDSiWare]]
+
| [[AM:ImportTwlBackup|ImportTwlBackup]]
 
|-
 
|-
 
| 0x001D0000
 
| 0x001D0000
| Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00510000.
+
| [[AM:DeleteAllTwlUserPrograms|DeleteAllTwlUserPrograms]]
 
|-
 
|-
| 0x001E....
+
| 0x001E00C8
| DSiWare related.
+
| [[AM:ReadTwlBackupInfo|ReadTwlBackupInfo]]
 +
|-
 +
| 0x001F0040
 +
| [[AM:DeleteAllExpiredUserPrograms|DeleteAllExpiredUserPrograms]]
 +
|-
 +
| 0x00200000
 +
| [[AM:GetTwlArchiveResourceInfo|GetTwlArchiveResourceInfo]]
 +
|-
 +
| 0x00210042
 +
| [[AM:GetPersonalizedTicketInfoList|GetPersonalizedTicketInfoList]]
 +
|-
 +
| 0x00220080
 +
| [[AM:DeleteAllImportContextsFiltered|DeleteAllImportContextsFiltered]]
 
|-
 
|-
 
| 0x00230080
 
| 0x00230080
| [[AMNet:TitleIDListGetTotal2|TitleIDListGetTotal2]]
+
| [[AM:GetNumImportTitleContextsFiltered|GetNumImportTitleContextsFiltered]]
 
|-
 
|-
 
| 0x002400C2
 
| 0x002400C2
| [[AMNet:GetTitleIDList2|GetTitleIDList2]]
+
| [[AM:GetImportTitleContextListFiltered|GetImportTitleContextListFiltered]]
 +
|-
 +
| 0x002500C0
 +
| [[AM:CheckContentRights|CheckContentRights]]
 +
|-
 +
| 0x00260044
 +
| [[AM:GetTicketLimitInfos|GetTicketLimitInfos]]
 +
|-
 +
| 0x00270044
 +
| [[AM:GetDemoLaunchInfos|GetDemoLaunchInfos]]
 +
|-
 +
| 0x00280108
 +
| [[AM:ReadTwlBackupInfoEx|ReadTwlBackupInfoEx]]
 +
|-
 +
| 0x00290082
 +
| [[AM:DeleteUserProgramsAtomically|DeleteUserProgramsAtomically]]
 +
|-
 +
| 0x002A00C0
 +
| [[AM:GetNumExistingContentInfos|GetNumExistingContentInfos]]
 +
|-
 +
| 0x002B0142
 +
| [[AM:ListExistingContentInfos|ListExistingContentInfos]]
 +
|-
 +
| 0x002C0084
 +
| [[AM:GetProgramInfosIgnorePlatform|GetProgramInfosIgnorePlatform]]
 +
|-
 +
| 0x002D00C0
 +
| [[AM:CheckContentRightsIgnorePlatform|CheckContentRightsIgnorePlatform]]
 
|}
 
|}
   −
The above commands are for am:sys, am:u, and am:net.
+
= Application Manager services "am:u" and "am:net" =
 
  −
== Application Manager services "am:u" and "am:net" ==
   
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 68: Line 150:  
|-
 
|-
 
| 0x04010080
 
| 0x04010080
| [[AM:InstallFIRM|InstallFIRM]]
+
| [[AM:UpdateFirmwareTo|UpdateFirmwareTo]]
 
|-
 
|-
 
| 0x04020040
 
| 0x04020040
| [[AM:StartInstallCIADB0|StartInstallCIADB0]]
+
| [[AM:BeginImportProgram|BeginImportProgram]]
 
|-
 
|-
 
| 0x04030000
 
| 0x04030000
| [[AM:StartInstallCIADB1|StartInstallCIADB1]]
+
| [[AM:BeginImportProgramTemporarily|BeginImportProgramTemporarily]]
 
|-
 
|-
 
| 0x04040002
 
| 0x04040002
| [[AM:AbortCIAInstall|AbortCIAInstall]]
+
| [[AM:CancelImportProgram|CancelImportProgram]]
 
|-
 
|-
 
| 0x04050002
 
| 0x04050002
| [[AM:CloseCIAFinalizeInstall|CloseCIAFinalizeInstall]]
+
| [[AM:EndImportProgram|EndImportProgram]]
 
|-
 
|-
 
| 0x04060002
 
| 0x04060002
| [[AM:CloseCIA|CloseCIA]]
+
| [[AM:EndImportProgramWithoutCommit|EndImportProgramWithoutCommit]]
 
|-
 
|-
 
| 0x040700C2
 
| 0x040700C2
| [[AM:FinalizeTitlesInstall|FinalizeTitlesInstall]]
+
| [[AM:CommitImportPrograms|CommitImportPrograms]]
 
|-
 
|-
 
| 0x04080042
 
| 0x04080042
| This returns a [[AMNet:ListTitles|titlelist]] entry for a [[CIA]], using the specified file-handle. AM module reads data from the specified CIA file-handle for this. (entryptr*, [[CIA]] filehandle, mediatype)
+
| [[AM:GetProgramInfoFromCia|GetProgramInfoFromCia]]
 +
|-
 +
| 0x04090004
 +
| [[AM:GetSystemMenuDataFromCia|GetSystemMenuDataFromCia]]
 +
|-
 +
| 0x040A0002
 +
| [[AM:GetDependencyListFromCia|GetDependencyListFromCia]]
 
|-
 
|-
 
| 0x040B0002
 
| 0x040B0002
| For this command, AM module reads an u64 from the [[CIA]] using the specified file-handle? (u64* out, [[CIA]] filehandle)
+
| [[AM:GetTransferSizeFromCia|GetTransferSizeFromCia]]
 +
|-
 +
| 0x040C0002
 +
| [[AM:GetCoreVersionFromCia|GetCoreVersionFromCia]]
 +
|-
 +
| 0x040D0042
 +
| [[AM:GetRequiredSizeFromCia|GetRequiredSizeFromCia]]
 
|-
 
|-
 
| 0x040E00C2
 
| 0x040E00C2
| [[AM:InstallTitlesFinish|InstallTitlesFinish]]
+
| [[AM:CommitImportProgramsAndUpdateFirmwareAuto|CommitImportProgramsAndUpdateFirmwareAuto]]
 
|-
 
|-
 
| 0x040F0000
 
| 0x040F0000
| [[AM:InstallNATIVEFIRM|InstallNATIVEFIRM]]
+
| [[AM:UpdateFirmwareAuto|UpdateFirmwareAuto]]
 +
|-
 +
| 0x041000C0
 +
| [[AM:DeleteProgram|DeleteProgram]]
 +
|-
 +
| 0x04110044
 +
| [[AM:GetTwlProgramListForReboot|GetTwlProgramListForReboot]]
 
|-
 
|-
 
| 0x04120000
 
| 0x04120000
| [[AM:Initialize|Initialize]]
+
| [[AM:GetSystemUpdaterMutex|GetSystemUpdaterMutex]]
 +
|-
 +
| 0x04130002
 +
| [[AM:GetMetaSizeFromCia|GetMetaSizeFromCia]]
 +
|-
 +
| 0x04140044
 +
| [[AM:GetMetaDataFromCia|GetMetaDataFromCia]]
 +
|-
 +
| 0x04150080
 +
| [[AM:CheckDemoLaunchRights|CheckDemoLaunchRights]]
 +
|-
 +
| 0x041600C0
 +
| [[AM:GetInternalTitleLocationInfo|GetInternalTitleLocationInfo]]
 +
|-
 +
| 0x041700C0
 +
| [[AM:PerpetuateAgbSaveData|PerpetuateAgbSaveData]]
 +
|-
 +
| 0x04180040
 +
| [[AM:BeginImportProgramForOverWrite|BeginImportProgramForOverWrite]]
 +
|-
 +
| 0x04190000
 +
| [[AM:BeginImportSystemProgram|BeginImportSystemProgram]]
 
|}
 
|}
 +
 +
= Application Manager service "am:app" =
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Command Header
 +
!  Description
 +
|-
 +
| 0x100100C0
 +
| [[AM:GetDLCContentInfoCount|GetDLCContentInfoCount]]
 +
|-
 +
| 0x10020104
 +
| [[AM:FindDLCContentInfos|FindDLCContentInfos]]
 +
|-
 +
| 0x10030142
 +
| [[AM:ListDLCContentInfos|ListDLCContentInfos]]
 +
|-
 +
| 0x10040102
 +
| [[AM:DeleteDLCContents|DeleteDLCContents]]
 +
|-
 +
| 0x10050084
 +
| [[AM:GetDLCTitleInfos|GetDLCTitleInfos]]
 +
|-
 +
| 0x10060080
 +
| [[AM:GetDLCOrLicenseNumTickets|GetDLCOrLicenseNumTickets]]
 +
|-
 +
| 0x10070102
 +
| [[AM:ListDLCOrLicenseTicketInfos|ListDLCOrLicenseTicketInfos]]
 +
|-
 +
| 0x100801C2
 +
| [[AM:GetDLCOrLicenseItemRights|GetDLCOrLicenseItemRights]]
 +
|-
 +
| 0x100900C0
 +
| [[AM:IsDLCTitleInUse|IsDLCTitleInUse]]
 +
|-
 +
| 0x100A0000
 +
| [[AM:ReloadSDTitleDatabase|ReloadSDTitleDatabase]]
 +
|-
 +
| 0x100B00C0
 +
| [[AM:GetNumDLCExistingContentInfos|GetNumDLCExistingContentInfos]]
 +
|-
 +
| 0x100C0142
 +
| [[AM:ListDLCExistingContentInfos|ListDLCExistingContentInfos]]
 +
|-
 +
| 0x100D0084
 +
| [[AM:GetPatchTitleInfos|GetPatchTitleInfos]]
 +
|}
 +
 +
The only commands accessible with this service are listed under this section.
    
= Application Manager service "am:sys" =
 
= Application Manager service "am:sys" =
 +
This service only has access to the 0x00XX* commands listed above, and the "am:app" commands.
    
= Application Manager service "am:u" =
 
= Application Manager service "am:u" =
  −
= Application Manager service "am:pipe" =
      
= Application Manager network service "am:net" =
 
= Application Manager network service "am:net" =
Line 117: Line 285:  
|-
 
|-
 
| 0x08010000
 
| 0x08010000
| [[AMNet:OpenTicket|OpenTicket]]
+
| [[AMNet:BeginImportTicket|BeginImportTicket]]
 
|-
 
|-
 
| 0x08020002
 
| 0x08020002
| [[AMNet:TicketAbortInstall|TicketAbortInstall]]
+
| [[AMNet:CancelImportTicket|CancelImportTicket]]
 
|-
 
|-
 
| 0x08030002
 
| 0x08030002
| [[AMNet:TicketFinalizeInstall|TicketFinalizeInstall]]
+
| [[AMNet:EndImportTicket|EndImportTicket]]
 
|-
 
|-
 
| 0x08040100
 
| 0x08040100
| [[AMNet:InstallTitleBegin|InstallTitleBegin]]
+
| [[AMNet:BeginImportTitle|BeginImportTitle]]
 
|-
 
|-
 
| 0x08050000
 
| 0x08050000
| [[AMNet:InstallTitleAbort|InstallTitleAbort]]
+
| [[AMNet:StopImportTitle|StopImportTitle]]
 
|-
 
|-
 
| 0x080600C0
 
| 0x080600C0
| [[AMNet:InstallTitleResume|InstallTitleResume]]
+
| [[AMNet:ResumeImportTitle|ResumeImportTitle]]
 
|-
 
|-
 
| 0x08070000
 
| 0x08070000
| [[AMNet:InstallTitleAbortTMD|InstallTitleAbortTMD]]
+
| [[AMNet:CancelImportTitle|CancelImportTitle]]
 
|-
 
|-
 
| 0x08080000
 
| 0x08080000
| [[AMNet:InstallTitleFinish|InstallTitleFinish]]
+
| [[AMNet:EndImportTitle|EndImportTitle]]
 +
|-
 +
| 0x080900C2
 +
| [[AMNet:CommitImportTitles|CommitImportTitles]]
 
|-
 
|-
 
| 0x080A0000
 
| 0x080A0000
| [[AMNet:OpenTMD|OpenTMD]]
+
| [[AMNet:BeginImportTmd|BeginImportTmd]]
 
|-
 
|-
 
| 0x080B0002
 
| 0x080B0002
| [[AMNet:TMDAbortInstall|TMDAbortInstall]]
+
| [[AMNet:CancelImportTmd|CancelImportTmd]]
 
|-
 
|-
 
| 0x080C0042
 
| 0x080C0042
| [[AMNet:TMDFinalizeInstall|TMDFinalizeInstall]]
+
| [[AMNet:EndImportTmd|EndImportTmd]]
 +
|-
 +
| 0x080D0042
 +
| [[AMNet:CreateImportContentContexts|CreateImportContentContexts]]
 
|-
 
|-
 
| 0x080E0040
 
| 0x080E0040
| [[AMNet:OpenContentEncrypted|OpenContentCreate]]
+
| [[AMNet:BeginImportContent|BeginImportContent]]
 
|-
 
|-
 
| 0x080F0002
 
| 0x080F0002
| [[AMNet:ContentAbortInstall|ContentAbortInstall]]
+
| [[AMNet:StopImportContent|StopImportContent]]
 
|-
 
|-
 
| 0x08100040
 
| 0x08100040
| [[AMNet:OpenContentDisc|OpenContentResume]]
+
| [[AMNet:ResumeImportContent|ResumeImportContent]]
 +
|-
 +
| 0x08110002
 +
| [[AMNet:CancelImportContent|CancelImportContent]]
 
|-
 
|-
 
| 0x08120002
 
| 0x08120002
| [[AMNet:ContentFinalizeInstall|ContentFinalizeInstall]]
+
| [[AMNet:EndImportContent|EndImportContent]]
 
|-
 
|-
 
| 0x08130000
 
| 0x08130000
| [[AMNet:GetTotalContents|GetTotalContents]]
+
| [[AMNet:GetNumCurrentImportContentContexts|GetNumCurrentImportContentContexts]]
 
|-
 
|-
 
| 0x08140042
 
| 0x08140042
| [[AMNet:GetContentIndexes|GetContentIndexes]]
+
| [[AMNet:GetCurrentImportContentContextList|GetCurrentImportContentContextList]]
 
|-
 
|-
 
| 0x08150044
 
| 0x08150044
| [[AMNet:GetContentsInfo|GetContentsInfo]]
+
| [[AMNet:GetCurrentImportContentContexts|GetCurrentImportContentContexts]]
 +
|-
 +
| 0x08160146
 +
| [[AMNet:Sign|Sign]]
 +
|-
 +
| 0x08170146
 +
| [[AMNet:Verify|Verify]]
 +
|-
 +
| 0x08180042
 +
| [[AMNet:GetDeviceCert|GetDeviceCert]]
 
|-
 
|-
 
| 0x08190108
 
| 0x08190108
| Used for installing .ctx?(Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x003D0108)
+
| [[AMNet:ImportCertificates|ImportCertificates]]
 +
|-
 +
| 0x081A0042
 +
| [[AMNet:ImportCertificate|ImportCertificate]]
 
|-
 
|-
 
| 0x081B00C2
 
| 0x081B00C2
| [[AMNet:InstallTitlesFinish|InstallTitlesFinish]]
+
| [[AMNet:CommitImportTitlesAndUpdateFirmwareAuto|CommitImportTitlesAndUpdateFirmwareAuto]]
 +
|-
 +
| 0x081C0100
 +
| [[AMNet:DeleteTicketId|DeleteTicketId]]
 +
|-
 +
| 0x081D0080
 +
| [[AMNet:GetNumTicketIds|GetNumTicketIds]]
 +
|-
 +
| 0x081E0102
 +
| [[AMNet:GetTicketIdList|GetTicketIdList]]
 +
|-
 +
| 0x081F0080
 +
| [[AMNet:GetNumTicketsOfProgram|GetNumTicketsOfProgram]]
 +
|-
 +
| 0x08200102
 +
| [[AMNet:ListTicketInfos|ListTicketInfos]]
 +
|-
 +
| 0x08210142
 +
| [[AMNet:ExportLicenseTicket|ExportLicenseTicket]]
 +
|-
 +
| 0x08220000
 +
| [[AMNet:GetNumCurrentContentInfos|GetNumCurrentContentInfos]]
 +
|-
 +
| 0x08230044
 +
| [[AMNet:FindCurrentContentInfos|FindCurrentContentInfos]]
 +
|-
 +
| 0x08240082
 +
| [[AMNet:ListCurrentContentInfos|ListCurrentContentInfos]]
 +
|-
 +
| 0x08250102
 +
| [[AMNet:CalculateContextRequiredSize|CalculateContextRequiredSize]]
 +
|-
 +
| 0x08260042
 +
| [[AMNet:UpdateImportContentContexts|UpdateImportContentContexts]]
 +
|-
 +
| 0x08270000
 +
| [[AMNet:DeleteAllDemoLaunchInfos|DeleteAllDemoLaunchInfos]]
 +
|-
 +
| 0x082800C0
 +
| [[AMNet:BeginImportTitleForOverWrite|BeginImportTitleForOverWrite]]
 +
|-
 +
| 0x08290184
 +
| [[AMNet:ExportTicketWrapped|ExportTicketWrapped]]
 
|}
 
|}
   Line 181: Line 412:  
|-
 
|-
 
!  Command Header
 
!  Command Header
 +
!  Available since system-version
 
!  Description
 
!  Description
 
|-
 
|-
 +
| 0x0001....
 +
|
 +
| Stubbed. After validating the translate-paramater headers, this just returns error 0xE0C046F8.
 +
|-
 +
| 0x040100C4
 +
|
 +
| [[AMFile:Control|Control]]
 +
|-
 +
| 0x08010100
 +
|
 +
| [[AMFile:OpenSubFile|OpenSubFile]]
 
|-
 
|-
 
| 0x080200C2
 
| 0x080200C2
 +
|
 
| [[AMFile:Read|Read]]
 
| [[AMFile:Read|Read]]
 
|-
 
|-
 
| 0x08030102
 
| 0x08030102
 +
|
 
| [[AMFile:Write|Write]]
 
| [[AMFile:Write|Write]]
 
|-
 
|-
 
| 0x08040000
 
| 0x08040000
 +
|
 
| [[AMFile:GetSize|GetSize]]
 
| [[AMFile:GetSize|GetSize]]
 
|-
 
|-
 
| 0x08050080
 
| 0x08050080
 +
|
 
| [[AMFile:SetSize|SetSize]]
 
| [[AMFile:SetSize|SetSize]]
 +
|-
 +
| 0x08060000
 +
|
 +
| [[AMFile:GetAttributes|GetAttributes]]
 +
|-
 +
| 0x08070000
 +
|
 +
| [[AMFile:SetAttributes|SetAttributes]]
 
|-
 
|-
 
| 0x08080000
 
| 0x08080000
 +
|
 
| [[AMFile:Close|Close]]
 
| [[AMFile:Close|Close]]
 +
|-
 +
| 0x08090000
 +
|
 +
| [[AMFile:Flush|Flush]]
 +
|-
 +
| 0x080A0000
 +
|
 +
| This just returns 0.
 +
|-
 +
| 0x080B0000
 +
|
 +
| This just returns 0.
 +
|-
 +
| 0x080C0000
 +
|
 +
| This just returns 0.
 +
|}
 +
 +
This is similar to [[Filesystem_services#File_service|FSFile]].
 +
 +
For handling each command that's actually implemented, the AM cmdhandler function calls a vtable funcptr.
 +
 +
The private port for this seems to be referred to as "am:pipe", even though the "am:pipe" string isn't actually used.
 +
 +
=Types=
 +
==TicketInfo==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x8
 +
| Title ID
 +
|-
 +
| 0x8
 +
| 0x8
 +
| Ticket ID
 +
|-
 +
| 0x10
 +
| 0x2
 +
| Version
 +
|-
 +
| 0x12
 +
| 0x2
 +
| Padding
 +
|-
 +
| 0x14
 +
| 0x4
 +
| Size
 
|}
 
|}
   −
These are identical to [[Filesystem_services#File_service|FSFile]].
+
==TitleInfo==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x8
 +
| Title ID
 +
|-
 +
| 0x8
 +
| 0x8
 +
| Size
 +
|-
 +
| 0x10
 +
| 0x2
 +
| Version
 +
|-
 +
| 0x12
 +
| 0x2
 +
| Padding
 +
|-
 +
| 0x14
 +
| 0x4
 +
| Type
 +
|}
 +
 
 +
==ContentInfo==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x2
 +
| Index
 +
|-
 +
| 0x2
 +
| 0x2
 +
| [[Title_metadata#Content_Type_flags|Content Type Flags]] from [[Title_metadata|TMD]]
 +
|-
 +
| 0x4
 +
| 0x4
 +
| Content ID
 +
|-
 +
| 0x8
 +
| 0x8
 +
| Size
 +
|-
 +
| 0x10
 +
| 0x1
 +
| Bit 0: Downloaded, Bit 1: Owned
 +
|-
 +
| 0x11
 +
| 0x7
 +
| Padding
 +
|}
 +
 
 +
==ImportTitleContext==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x8
 +
| Title ID
 +
|-
 +
| 0x8
 +
| 0x2
 +
| Version
 +
|-
 +
| 0xA
 +
| 0x2
 +
| State
 +
|-
 +
| 0xC
 +
| 0x4
 +
| Type
 +
|-
 +
| 0x10
 +
| 0x8
 +
| Size
 +
|}
 +
 
 +
===ImportTitleContextState===
 +
{| class="wikitable" border="1"
 +
|-
 +
! Value
 +
! Description
 +
|-
 +
| 0
 +
| None
 +
|-
 +
| 1
 +
| Waiting for import
 +
|-
 +
| 2
 +
| Resumable
 +
|-
 +
| 3
 +
| Waiting for commit
 +
|-
 +
| 4
 +
| Already exists
 +
|-
 +
| 5
 +
| Deleting
 +
|-
 +
| 6
 +
| Needs cleanup
 +
|}
 +
 
 +
==ImportContentContext==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x4
 +
| Content ID
 +
|-
 +
| 0x4
 +
| 0x2
 +
| Index
 +
|-
 +
| 0x6
 +
| 0x2
 +
| Type
 +
|-
 +
| 0x8
 +
| 0x8
 +
| Size
 +
|-
 +
| 0x10
 +
| 0x8
 +
| Current Install Offset
 +
|}
 +
 
 +
==TwlBackupInfo==
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Length
 +
! Description
 +
|-
 +
| 0x0
 +
| 0x8
 +
| Title ID
 +
|-
 +
| 0x8
 +
| 0x2
 +
| Group ID
 +
|-
 +
| 0xA
 +
| 0x2
 +
| Title Version
 +
|-
 +
| 0xC
 +
| 0x4
 +
| public.sav size
 +
|-
 +
| 0x10
 +
| 0x4
 +
| private.sav size
 +
|-
 +
| 0x14
 +
| 0x4
 +
| Unused, padding.
 +
|-
 +
| 0x18
 +
| 0x8
 +
| u64, required space in bytes for installation (aligned to 0x4000, used to show amount of blocks in system settings)
 +
|-
 +
|}
    
=Errors=
 
=Errors=
 
See [[Application_Manager_Services_PXI|this]].
 
See [[Application_Manager_Services_PXI|this]].
186

edits