Changes

no edit summary
Line 1: Line 1:  +
=Application Manager Services PXI "pxi:am9"=
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
 
!  Command Header
 
!  Command Header
 +
!  Available since system version
 
!  Description
 
!  Description
 +
|-
 +
| 0x00010040
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTitleCount|GetTitleCount]]
 +
|-
 +
| 0x00020082
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTitleList|GetTitleList]]
 +
|-
 +
| 0x00030084
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTitleInfo|GetTitleInfo]]
 +
|-
 +
| 0x000400C0
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DeleteTitle|DeleteTitle]]
 +
|-
 +
| 0x000500C0
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTitleProductCode|GetTitleProductCode]]
 +
|-
 +
| 0x000600C0
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTitleExtDataId|GetTitleExtDataId]]
 +
|-
 +
| 0x00070080
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DeletePendingTitles|DeletePendingTitles]]
 +
|-
 +
| 0x00080080
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallFIRM|InstallFIRM]]
 +
|-
 +
| 0x00090000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTikBegin|InstallTikBegin]]
 +
|-
 +
| 0x000A0042
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTikWrite|InstallTikWrite]]
 +
|-
 +
| 0x000B0000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTikAbort|InstallTikAbort]]
 +
|-
 +
| 0x000C0000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTikFinish|InstallTikFinish]]
 +
|-
 +
| 0x000D0080
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DeleteTicket|DeleteTicket]]
 +
|-
 +
| 0x000E0000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTicketCount|GetTicketCount]]
 +
|-
 +
| 0x000F0082
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetTicketList|GetTicketList]]
 +
|-
 +
| 0x00100100
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTitleBegin|InstallTitleBegin]]
 +
|-
 +
| 0x00110000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTitleStop|InstallTitleStop]]
 +
|-
 +
| 0x001200C0
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTitleResume|InstallTitleResume]]
 +
|-
 +
| 0x00130000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTmdBegin|InstallTmdBegin]]
 
|-
 
|-
 
| 0x00140042
 
| 0x00140042
| [[AMPXI:WriteTmd|WriteTmd]] (writes only partial TMD)
+
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTmdWrite|InstallTmdWrite]]
 
|-
 
|-
| 0x00250000  
+
| 0x00150000
| GetContentCount (?)
+
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTmdAbort|InstallTmdAbort]]
 +
|-
 +
| 0x00160040
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTmdFinish|InstallTmdFinish]]
 +
|-
 +
| 0x00170040
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallContentBegin|InstallContentBegin]]
 +
|-
 +
| 0x00180042
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallContentWrite|InstallContentWrite]]
 +
|-
 +
| 0x00190000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallContentStop|InstallContentStop]]
 +
|-
 +
| 0x001A0000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallContentAbort|InstallContentAbort]]
 +
|-
 +
| 0x001B0040
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallContentResume|InstallContentResume]]
 +
|-
 +
| 0x001C0000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallContentFinish|InstallContentFinish]]
 +
|-
 +
| 0x001D0080
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetPendingTitleCount|GetPendingTitleCount]]
 +
|-
 +
| 0x001E00C2
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetPendingTitleList|GetPendingTitleList]]
 +
|-
 +
| 0x001F0084
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetPendingTitleInfo|GetPendingTitleInfo]]
 +
|-
 +
| 0x002000C0
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DeletePendingTitle|DeletePendingTitle]]
 +
|-
 +
| 0x002100C0
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetNumImportContentContexts|GetNumImportContentContexts]]
 +
|-
 +
| 0x00220102
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetImportContentContextList|GetImportContentContextList]]
 +
|-
 +
| 0x00230104
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetImportContentContexts|GetImportContentContexts]]
 +
|-
 +
| 0x00240102
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DeleteImportContentContexts|DeleteImportContentContexts]]
 +
|-
 +
| 0x00250000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetNumCurrentImportContentContexts|GetNumCurrentImportContentContexts]]
 
|-
 
|-
 
| 0x00260042
 
| 0x00260042
| GetContentIds (?)
+
| [[1.0.0-0]]
 +
| [[AMPXI:GetCurrentImportContentContextList|GetCurrentImportContentContextList]]
 
|-
 
|-
 
| 0x00270044
 
| 0x00270044
| GetContentInfoForIds (?)
+
| [[1.0.0-0]]
 +
| [[AMPXI:GetCurrentImportContentContexts|GetCurrentImportContentContexts]]
 +
|-
 +
| 0x00280000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTitleAbort|InstallTitleAbort]]
 +
|-
 +
| 0x00290000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTitleFinish|InstallTitleFinish]]
 +
|-
 +
| 0x002A00C2
 +
| [[1.0.0-0]]
 +
| [[AMPXI:CommitImportPrograms|CommitImportPrograms]]
 +
|-
 +
| 0x002B....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x002C....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x002D....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x002E....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x002F....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0030....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0031....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0032....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0033....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0034....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0035....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0036....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0037....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x0038....
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x00390146
 +
| [[1.0.0-0]]
 +
| [[AMPXI:Sign|Sign]]
 +
|-
 +
| 0x003A0146
 +
| [[1.0.0-0]]
 +
| Stubbed.
 +
|-
 +
| 0x003B0042
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetCTCert|GetCTCert]]
 +
|-
 +
| 0x003C0000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:GetDeviceID|GetDeviceID]]
 +
|-
 +
| 0x003D0108
 +
| [[1.0.0-0]]
 +
| [[AMPXI:SetCertificates|SetCertificates]]
 +
|-
 +
| 0x003E0042
 +
| [[1.0.0-0]]
 +
| [[AMPXI:SetCertificate|SetCertificate]]
 +
|-
 +
| 0x003F0040
 +
| [[1.0.0-0]]
 +
| [[AMPXI:IsImportDatabaseInitialized|IsImportDatabaseInitialized]]
 +
|-
 +
| 0x00400040
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DoCleanup|DoCleanup]]
 +
|-
 +
| 0x00410000
 +
| [[1.0.0-0]]
 +
| [[AMPXI:DeleteAllTemporaryPrograms|DeleteAllTemporaryPrograms]]
 +
|-
 +
| 0x00420142
 +
| [[1.0.0-0]]
 +
| [[AMPXI:InstallTitlesFinishFIRM|InstallTitlesFinishFIRM]]
 +
|-
 +
| 0x004301C8
 +
| [[2.0.0-2]]
 +
| [[AMPXI:VerifyDSiWareFooter|VerifyDSiWareFooter]]
 +
|-
 +
| 0x004400C4
 +
| [[2.0.0-2]]
 +
| This does basically nothing: after checking the two buffers' mem-ranges successfully(on failure it executes svcBreak like all other Process9 code for that), this just returns 0x0.
 +
|-
 +
| 0x00450108
 +
| [[2.0.0-2]]
 +
| [[AMPXI:DecryptDSiWareData|DecryptDSiWareData]]
 +
|-
 +
| 0x00460182
 +
| [[2.0.0-2]]
 +
| [[AMPXI:WriteTWLSavedata|WriteTWLSavedata]]
 +
|-
 +
| 0x00470080
 +
| [[2.0.0-2]]
 +
| [[AMPXI:InitializeTitleDatabase|InitializeTitleDatabase]]
 +
|-
 +
| 0x00480040
 +
| [[2.0.0-2]]
 +
| [[AMPXI:ReloadDBS|ReloadDBS]]
 +
|-
 +
| 0x00490080
 +
| [[2.0.0-2]]
 +
| [[AMPXI:GetNumTicketIds|GetNumTicketIds]]
 +
|-
 +
| 0x004A0102
 +
| [[2.0.0-2]]
 +
| [[AMPXI:GetTicketIdList|GetTicketIdList]]
 +
|-
 +
| 0x004B0100
 +
| [[2.0.0-2]]
 +
| [[AMPXI:DeleteTicketId|DeleteTicketId]]
 +
|-
 +
| 0x004C0042
 +
| [[2.0.0-2]]
 +
| [[AMPXI:GetPersonalizedTicketInfoList|GetPersonalizedTicketInfoList]]
 +
|-
 +
| 0x004D0144
 +
| [[2.0.0-2]]
 +
| [[AMPXI:ExportDSiWare|ExportDSiWare]]
 +
|-
 +
| 0x004E00C0
 +
| [[2.0.0-2]]
 +
| [[AMPXI:BeginInstallDSiWareExport|BeginInstallDSiWareExport]]
 +
|-
 +
| 0x004F00C0
 +
| [[2.0.0-2]]
 +
| [[AMPXI:GetDSiWareExportSize|GetDSiWareExportSize]]
 +
|-
 +
| 0x00500044
 +
| [[2.0.0-2]]
 +
| [[AMPXI:GetTwlProgramListForReboot|GetTwlProgramListForReboot]]
 +
|-
 +
| 0x00510000
 +
| [[2.0.0-2]]
 +
| [[AMPXI:DeleteAllTwlUserPrograms|DeleteAllTwlUserPrograms]]
 +
|-
 +
| 0x00520040
 +
| [[2.0.0-2]]
 +
| [[AMPXI:DeleteAllExpiredUserPrograms|DeleteAllExpiredUserPrograms]]
 +
|-
 +
| 0x00530084
 +
| [[2.0.0-2]]
 +
| [[AMPXI:ValidateDSiWareMovableSedHash|ValidateDSiWareMovableSedHash]]
 +
|-
 +
| 0x00540000
 +
| [[2.0.0-2]]
 +
| [[AMPXI:GetTWLPartitionInfo|GetTWLPartitionInfo]]
 +
|-
 +
| 0x005500C4
 +
| [[2.0.0-2]]
 +
| [[AMPXI:ValidateDSiWareSectionMAC|ValidateDSiWareSectionMAC]]
 +
|-
 +
| 0x005600C0
 +
| [[2.0.0-2]]
 +
| [[AMPXI:CheckContentRights|CheckContentRights]]
 
|-
 
|-
| 0x00170040
+
| 0x00570042
| BeginContentInstallForId
+
| [[4.0.0-7]]
 +
| [[AMPXI:CreateImportContentContexts|CreateImportContentContexts]]
 +
|-
 +
| 0x005800C0
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetNumContentInfos|GetNumContentInfos]]
 +
|-
 +
| 0x00590104
 +
| [[4.0.0-7]]
 +
| [[AMPXI:FindContentInfos|FindContentInfos]]
 +
|-
 +
| 0x005A0142
 +
| [[4.0.0-7]]
 +
| [[AMPXI:ListContentInfos|ListContentInfos]]
 +
|-
 +
| 0x005B0000
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetNumCurrentContentInfos|GetNumCurrentContentInfos]]
 +
|-
 +
| 0x005C0044
 +
| [[4.0.0-7]]
 +
| [[AMPXI:FindCurrentContentInfos|FindCurrentContentInfos]]
 +
|-
 +
| 0x005D0082
 +
| [[4.0.0-7]]
 +
| [[AMPXI:ListCurrentContentInfos|ListCurrentContentInfos]]
 +
|-
 +
| 0x005E0102
 +
| [[4.0.0-7]]
 +
| [[AMPXI:DeleteContents|DeleteContents]]
 +
|-
 +
| 0x005F0080
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetNumTicketsOfProgram|GetNumTicketsOfProgram]]
 +
|-
 +
| 0x00600102
 +
| [[4.0.0-7]]
 +
| [[AMPXI:ListDataTitleTicketInfos|ListDataTitleTicketInfos]]
 +
|-
 +
| 0x00610142
 +
| [[4.0.0-7]]
 +
| [[AMPXI:ExportLicenseTicket|ExportLicenseTicket]]
 +
|-
 +
| 0x00620044
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetTicketLimitInfos|GetTicketLimitInfos]]
 +
|-
 +
| 0x00630042
 +
| [[4.0.0-7]]
 +
| [[AMPXI:UpdateImportContentContexts|UpdateImportContentContexts]]
 +
|-
 +
| 0x006400C0
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetInternalTitleLocationInfo|GetInternalTitleLocationInfo]]
 +
|-
 +
| 0x006500C0
 +
| [[4.0.0-7]]
 +
| [[AMPXI:MigrateAGBtoSAV|MigrateAGBtoSAV]]
 +
|-
 +
| 0x0066....
 +
| [[4.0.0-7]]
 +
| Stubbed starting with [[4.0.0-7]].
 +
|-
 +
| 0x00670082
 +
| [[4.0.0-7]]
 +
| [[AMPXI:DeleteProgramsAtomically|DeleteProgramsAtomically]]
 +
|-
 +
| 0x006801C2
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetItemRights|GetItemRights]]
 +
|-
 +
| 0x006900C0
 +
| [[4.0.0-7]]
 +
| [[AMPXI:IsDataTitleInUse|IsDataTitleInUse]]
 +
|-
 +
| 0x006A00C0
 +
| [[4.0.0-7]]
 +
| [[AMPXI:GetNumExistingContentInfos|GetNumExistingContentInfos]]
 +
|-
 +
| 0x006B0142
 +
| [[4.0.0-7]]
 +
| [[AMPXI:ListExistingContentInfos|ListExistingContentInfos]]
 +
|-
 +
| 0x006C00C0
 +
| [[5.0.0-11]]
 +
| [[AMPXI:InstallTitleBeginForOverwrite|InstallTitleBeginForOverwrite]]
 +
|-
 +
| 0x006D0184
 +
| [[11.8.0-41]]
 +
| [[AMPXI:ExportTicketWrapped|ExportTicketWrapped]]
 +
|}
 +
 
 +
=Errors=
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Error-code
 +
!  Description
 +
|-
 +
| 0xC8A0802B
 +
| This indicates the the [[Title_Database|dbs]] image(.db) does not exist, or opening the .db file failed.
 +
|-
 +
| 0xC8E083FC
 +
| This error indicates that the title is already installed, with the same title-version as the title being installed?
 +
|-
 +
| 0xD8E08027
 +
| Invalid title-version, or the title-version of the title being installed is older than the currently installed title-version.
 +
|-
 +
| 0xD8A08004
 +
| Wrong installation state.
 +
|-
 +
| 0xD8E08020
 +
| CIA file is empty.
 +
|-
 +
| 0xD8E08025
 +
| Invalid NCCH. returned from InstallContentFinish
 +
|-
 +
| 0xD8A08029
 +
| Error-type 1
 +
|-
 +
| 0xD8E08065
 +
| Error-type -1
 +
|-
 +
| 0xD8E08065+1 / 0xD8E08066
 +
| Error-type -2
 +
|-
 +
| 0xD8E08065+2 / 0xD8E08067
 +
| Error-type -3. Returned when a CIA header is invalid.
 +
|-
 +
| 0xD8E08065+3 / 0xD8E08068
 +
| Error-type -4
 +
|-
 +
| 0xD8E08065+4 / 0xD8E08069
 +
| Error-type -5
 +
|-
 +
| 0xD8E08065+5 / 0xD8E0806A
 +
| Error-type -6. Returned when a function returns error -2011: signature or hash check for cert(TMD/TIK/cert-chain, ...) failed.
 +
|-
 +
| 0xD8E08065+6 / 0xD8E0806B
 +
| Error-type -7
 +
|-
 +
| 0xD8E08065+7 / 0xD8E0806C
 +
| Error-type -8
 +
|-
 +
| 0xD8E08065+8 / 0xD8E0806D
 +
| Error-type -9
 +
|-
 +
| 0xD8E08065+9 / 0xD8E0806E
 +
| Error-type -10
 +
|-
 +
| 0xD8E08065+10 / 0xD8E0806F
 +
| Error-type -11
 +
|-
 +
| 0xD8E08065+11 / 0xD8E08070
 +
| Error-type -12
 +
|-
 +
| 0xD8E08065+12 / 0xD8E08071
 +
| Error-type -13
 +
|-
 +
| 0xD8E08065+13 / 0xD8E08072
 +
| Error-type -14
 
|-
 
|-
| 0x00180042
+
| 0xD8A083FA
| WriteContentInstallData
+
| Invalid titleID(?) / the specified title(s) don't exist.
 
|-
 
|-
| 0x001C0000
+
| 0xE0E0802C
| FinishContentInstall
+
| AM module returns this error when the system-title bit is set for the input CTR/TWL titleID-high, for [[AM:DeleteApplicationTitle]].
 
|}
 
|}
186

edits