Line 8: |
Line 8: |
| |- | | |- |
| | 0x00010040 | | | 0x00010040 |
− | | [[AM:GetTitleCount|GetTitleCount]] | + | | [[AM:GetNumPrograms|GetNumPrograms]] |
| |- | | |- |
| | 0x00020082 | | | 0x00020082 |
− | | [[AM:GetTitleList|GetTitleList]] | + | | [[AM:GetProgramList|GetProgramList]] |
| |- | | |- |
| | 0x00030084 | | | 0x00030084 |
− | | [[AM:GetTitleInfo|GetTitleInfo]] | + | | [[AM:GetProgramInfos|GetProgramInfos]] |
| |- | | |- |
| | 0x000400C0 | | | 0x000400C0 |
− | | [[AM:DeleteApplicationTitle|DeleteApplicationTitle]] | + | | [[AM:DeleteUserProgram|DeleteUserProgram]] |
| |- | | |- |
| | 0x000500C0 | | | 0x000500C0 |
− | | [[AM:GetTitleProductCode|GetTitleProductCode]] | + | | [[AM:GetProductCode|GetProductCode]] |
| |- | | |- |
| | 0x000600C0 | | | 0x000600C0 |
− | | [[AM:GetTitleExtDataId|GetTitleExtDataId]] | + | | [[AM:GetStorageId|GetStorageId]] |
| |- | | |- |
| | 0x00070080 | | | 0x00070080 |
Line 29: |
Line 29: |
| |- | | |- |
| | 0x00080000 | | | 0x00080000 |
− | | [[AM:GetTicketCount|GetTicketCount]] | + | | [[AM:GetNumTickets|GetNumTickets]] |
| |- | | |- |
| | 0x00090082 | | | 0x00090082 |
Line 35: |
Line 35: |
| |- | | |- |
| | 0x000A0000 | | | 0x000A0000 |
− | | [[AM:GetDeviceID|GetDeviceID]] | + | | [[AM:GetDeviceId|GetDeviceId]] |
| |- | | |- |
| | 0x000B0040 | | | 0x000B0040 |
− | |? | + | | [[AM:GetNumImportTitleContexts|GetNumImportTitleContexts]] |
| |- | | |- |
| | 0x000C0082 | | | 0x000C0082 |
− | |? | + | | [[AM:GetImportTitleContextList|GetImportTitleContextList]] |
| |- | | |- |
| | 0x000D0084 | | | 0x000D0084 |
− | | [[AM:GetPendingTitleInfo|GetPendingTitleInfo]] | + | | [[AM:GetImportTitleContexts|GetImportTitleContexts]] |
| |- | | |- |
| | 0x000E00C0 | | | 0x000E00C0 |
− | | [[AM:DeletePendingTitle|DeletePendingTitle]] | + | | [[AM:DeleteImportTitleContext|DeleteImportTitleContext]] |
| |- | | |- |
| | 0x000F00C0 | | | 0x000F00C0 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x002100C0 | + | | [[AM:GetNumImportContentContexts|GetNumImportContentContexts]] |
| |- | | |- |
| | 0x00100102 | | | 0x00100102 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00220102 | + | | [[AM:GetImportContentContextList|GetImportContentContextList]] |
| |- | | |- |
| | 0x00110104 | | | 0x00110104 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00230104 | + | | [[AM:GetImportContentContexts|GetImportContentContexts]] |
| |- | | |- |
| | 0x00120102 | | | 0x00120102 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00240102 | + | | [[AM:DeleteImportContentContexts|DeleteImportContentContexts]] |
| |- | | |- |
| | 0x00130040 | | | 0x00130040 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x003F0040 | + | | [[AM:NeedsCleanup|NeedsCleanup]] |
| |- | | |- |
| | 0x00140040 | | | 0x00140040 |
− | | [[AM:FinalizePendingTitles|FinalizePendingTitles]] | + | | [[AM:DoCleanup|DoCleanup]] |
| |- | | |- |
| | 0x00150040 | | | 0x00150040 |
− | | [[AM:DeleteAllPendingTitles|DeleteAllPendingTitles]] | + | | [[AM:DeleteAllImportContexts|DeleteAllImportContexts]] |
| |- | | |- |
| | 0x00160000 | | | 0x00160000 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00410000 | + | | [[AM:DeleteAllTemporaryPrograms|DeleteAllTemporaryPrograms]] |
| |- | | |- |
| | 0x00170044 | | | 0x00170044 |
− | |? | + | | [[AM:ImportTwlBackupLegacy|ImportTwlBackupLegacy]] |
| |- | | |- |
| | 0x00180080 | | | 0x00180080 |
Line 80: |
Line 80: |
| |- | | |- |
| | 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]] |
| |- | | |- |
| | 0x001E00C8 | | | 0x001E00C8 |
− | | DSiWare related. | + | | [[AM:ReadTwlBackupInfo|ReadTwlBackupInfo]] |
| |- | | |- |
| | 0x001F0040 | | | 0x001F0040 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00520040 | + | | [[AM:DeleteAllExpiredUserPrograms|DeleteAllExpiredUserPrograms]] |
| |- | | |- |
| | 0x00200000 | | | 0x00200000 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00540000 | + | | [[AM:GetTwlArchiveResourceInfo|GetTwlArchiveResourceInfo]] |
| |- | | |- |
| | 0x00210042 | | | 0x00210042 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x004C0042 | + | | [[AM:GetPersonalizedTicketInfoList|GetPersonalizedTicketInfoList]] |
| |- | | |- |
| | 0x00220080 | | | 0x00220080 |
− | |[[AM:DeletePendingTitles|DeletePendingTitles]] | + | | [[AM:DeleteAllImportContextsFiltered|DeleteAllImportContextsFiltered]] |
| |- | | |- |
| | 0x00230080 | | | 0x00230080 |
− | | [[AM:GetPendingTitleCount|GetPendingTitleCount]] | + | | [[AM:GetNumImportTitleContextsFiltered|GetNumImportTitleContextsFiltered]] |
| |- | | |- |
| | 0x002400C2 | | | 0x002400C2 |
− | | [[AM:GetPendingTitleList|GetPendingTitleList]] | + | | [[AM:GetImportTitleContextListFiltered|GetImportTitleContextListFiltered]] |
| |- | | |- |
| | 0x002500C0 | | | 0x002500C0 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x005600C0 | + | | [[AM:CheckContentRights|CheckContentRights]] |
| |- | | |- |
| | 0x00260044 | | | 0x00260044 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00620044 | + | | [[AM:GetTicketLimitInfos|GetTicketLimitInfos]] |
| |- | | |- |
| | 0x00270044 | | | 0x00270044 |
− | |? | + | | [[AM:GetDemoLaunchInfos|GetDemoLaunchInfos]] |
| |- | | |- |
| | 0x00280108 | | | 0x00280108 |
− | |? | + | | [[AM:ReadTwlBackupInfoEx|ReadTwlBackupInfoEx]] |
| |- | | |- |
| | 0x00290082 | | | 0x00290082 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00670082 | + | | [[AM:DeleteUserProgramsAtomically|DeleteUserProgramsAtomically]] |
| |- | | |- |
| | 0x002A00C0 | | | 0x002A00C0 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006A00C0 | + | | [[AM:GetNumExistingContentInfos|GetNumExistingContentInfos]] |
| |- | | |- |
| | 0x002B0142 | | | 0x002B0142 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006B0142 | + | | [[AM:ListExistingContentInfos|ListExistingContentInfos]] |
| |- | | |- |
| | 0x002C0084 | | | 0x002C0084 |
− | |? | + | | [[AM:GetProgramInfosIgnorePlatform|GetProgramInfosIgnorePlatform]] |
| |- | | |- |
| | 0x002D00C0 | | | 0x002D00C0 |
− | |? | + | | [[AM:CheckContentRightsIgnorePlatform|CheckContentRightsIgnorePlatform]] |
| |} | | |} |
| | | |
Line 150: |
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 |
− | | [[AM:GetCiaFileInfo|GetCiaFileInfo]] | + | | [[AM:GetProgramInfoFromCia|GetProgramInfoFromCia]] |
| |- | | |- |
| | 0x04090004 | | | 0x04090004 |
− | |? | + | | [[AM:GetSystemMenuDataFromCia|GetSystemMenuDataFromCia]] |
| |- | | |- |
| | 0x040A0002 | | | 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 | | | 0x040C0002 |
− | |? | + | | [[AM:GetCoreVersionFromCia|GetCoreVersionFromCia]] |
| |- | | |- |
| | 0x040D0042 | | | 0x040D0042 |
− | |? | + | | [[AM:GetRequiredSizeFromCia|GetRequiredSizeFromCia]] |
| |- | | |- |
| | 0x040E00C2 | | | 0x040E00C2 |
− | | [[AM:InstallTitlesFinish|InstallTitlesFinish]] | + | | [[AM:CommitImportProgramsAndUpdateFirmwareAuto|CommitImportProgramsAndUpdateFirmwareAuto]] |
| |- | | |- |
| | 0x040F0000 | | | 0x040F0000 |
− | | [[AM:InstallNATIVEFIRM|InstallNATIVEFIRM]] | + | | [[AM:UpdateFirmwareAuto|UpdateFirmwareAuto]] |
| |- | | |- |
| | 0x041000C0 | | | 0x041000C0 |
− | | [[AM:DeleteTitle|DeleteTitle]] | + | | [[AM:DeleteProgram|DeleteProgram]] |
| |- | | |- |
| | 0x04110044 | | | 0x04110044 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00500044 | + | | [[AM:GetTwlProgramListForReboot|GetTwlProgramListForReboot]] |
| |- | | |- |
| | 0x04120000 | | | 0x04120000 |
− | | [[AM:Initialize|Initialize]] | + | | [[AM:GetSystemUpdaterMutex|GetSystemUpdaterMutex]] |
| |- | | |- |
| | 0x04130002 | | | 0x04130002 |
− | |? | + | | [[AM:GetMetaSizeFromCia|GetMetaSizeFromCia]] |
| |- | | |- |
| | 0x04140044 | | | 0x04140044 |
− | |? | + | | [[AM:GetMetaDataFromCia|GetMetaDataFromCia]] |
| |- | | |- |
| | 0x04150080 | | | 0x04150080 |
− | |? | + | | [[AM:CheckDemoLaunchRights|CheckDemoLaunchRights]] |
| |- | | |- |
| | 0x041600C0 | | | 0x041600C0 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006400C0 | + | | [[AM:GetInternalTitleLocationInfo|GetInternalTitleLocationInfo]] |
| |- | | |- |
| | 0x041700C0 | | | 0x041700C0 |
− | | [[AM:MigrateAGBtoSAV|MigrateAGBtoSAV]] | + | | [[AM:PerpetuateAgbSaveData|PerpetuateAgbSaveData]] |
| |- | | |- |
| | 0x04180040 | | | 0x04180040 |
− | |? | + | | [[AM:BeginImportProgramForOverWrite|BeginImportProgramForOverWrite]] |
| |- | | |- |
| | 0x04190000 | | | 0x04190000 |
− | |? | + | | [[AM:BeginImportSystemProgram|BeginImportSystemProgram]] |
| |} | | |} |
| | | |
Line 232: |
Line 232: |
| |- | | |- |
| | 0x100100C0 | | | 0x100100C0 |
− | | GetNumContentInfos | + | | [[AM:GetDLCContentInfoCount|GetDLCContentInfoCount]] |
| |- | | |- |
| | 0x10020104 | | | 0x10020104 |
− | | ApplicationControl::FindContentInfos | + | | [[AM:FindDLCContentInfos|FindDLCContentInfos]] |
| |- | | |- |
| | 0x10030142 | | | 0x10030142 |
− | | ApplicationControl::ListContentInfos | + | | [[AM:ListDLCContentInfos|ListDLCContentInfos]] |
| |- | | |- |
| | 0x10040102 | | | 0x10040102 |
− | | ApplicationControl::DeleteContents | + | | [[AM:DeleteDLCContents|DeleteDLCContents]] |
| |- | | |- |
| | 0x10050084 | | | 0x10050084 |
− | | GetDataTitleInfos | + | | [[AM:GetDLCTitleInfos|GetDLCTitleInfos]] |
| |- | | |- |
| | 0x10060080 | | | 0x10060080 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x005F0080 | + | | [[AM:GetDLCOrLicenseNumTickets|GetDLCOrLicenseNumTickets]] |
| |- | | |- |
| | 0x10070102 | | | 0x10070102 |
− | | ApplicationControl::ListDataTitleTicketInfos | + | | [[AM:ListDLCOrLicenseTicketInfos|ListDLCOrLicenseTicketInfos]] |
| |- | | |- |
| | 0x100801C2 | | | 0x100801C2 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006801C2 | + | | [[AM:GetDLCOrLicenseItemRights|GetDLCOrLicenseItemRights]] |
| |- | | |- |
| | 0x100900C0 | | | 0x100900C0 |
− | | IsDataTitleInUse | + | | [[AM:IsDLCTitleInUse|IsDLCTitleInUse]] |
| |- | | |- |
| | 0x100A0000 | | | 0x100A0000 |
− | | IsExternalTitleDatabaseInitialized | + | | [[AM:ReloadSDTitleDatabase|ReloadSDTitleDatabase]] |
| |- | | |- |
| | 0x100B00C0 | | | 0x100B00C0 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006A00C0 | + | | [[AM:GetNumDLCExistingContentInfos|GetNumDLCExistingContentInfos]] |
| |- | | |- |
| | 0x100C0142 | | | 0x100C0142 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006B0142 | + | | [[AM:ListDLCExistingContentInfos|ListDLCExistingContentInfos]] |
| |- | | |- |
| | 0x100D0084 | | | 0x100D0084 |
− | | GetDemoDataTitleInfos | + | | [[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 284: |
Line 285: |
| |- | | |- |
| | 0x08010000 | | | 0x08010000 |
− | | [[AMNet:InstallTicketBegin|InstallTicketBegin]] | + | | [[AMNet:BeginImportTicket|BeginImportTicket]] |
| |- | | |- |
| | 0x08020002 | | | 0x08020002 |
− | | [[AMNet:InstallTicketAbort|InstallTicketAbort]] | + | | [[AMNet:CancelImportTicket|CancelImportTicket]] |
| |- | | |- |
| | 0x08030002 | | | 0x08030002 |
− | | [[AMNet:InstallTicketFinalize|InstallTicketFinalize]] | + | | [[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 | | | 0x080900C2 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x002A00C2 | + | | [[AMNet:CommitImportTitles|CommitImportTitles]] |
| |- | | |- |
| | 0x080A0000 | | | 0x080A0000 |
− | | [[AMNet:InstallTmdBegin|InstallTmdBegin]] | + | | [[AMNet:BeginImportTmd|BeginImportTmd]] |
| |- | | |- |
| | 0x080B0002 | | | 0x080B0002 |
− | | [[AMNet:InstallTmdAbort|InstallTmdAbort]] | + | | [[AMNet:CancelImportTmd|CancelImportTmd]] |
| |- | | |- |
| | 0x080C0042 | | | 0x080C0042 |
− | | [[AMNet:InstallTmdFinalize|InstallTmdFinalize]] | + | | [[AMNet:EndImportTmd|EndImportTmd]] |
| |- | | |- |
| | 0x080D0042 | | | 0x080D0042 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00570042 | + | | [[AMNet:CreateImportContentContexts|CreateImportContentContexts]] |
| |- | | |- |
| | 0x080E0040 | | | 0x080E0040 |
− | | [[AMNet:InstallContentBegin|InstallContentBegin]] | + | | [[AMNet:BeginImportContent|BeginImportContent]] |
| |- | | |- |
| | 0x080F0002 | | | 0x080F0002 |
− | | [[AMNet:InstallContentAbort|InstallContentAbort]] | + | | [[AMNet:StopImportContent|StopImportContent]] |
| |- | | |- |
| | 0x08100040 | | | 0x08100040 |
− | | [[AMNet:InstallContentResume|InstallContentResume]] | + | | [[AMNet:ResumeImportContent|ResumeImportContent]] |
| |- | | |- |
| | 0x08110002 | | | 0x08110002 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x001A0000? | + | | [[AMNet:CancelImportContent|CancelImportContent]] |
| |- | | |- |
| | 0x08120002 | | | 0x08120002 |
− | | [[AMNet:InstallContentFinalize|InstallContentFinalize]] | + | | [[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 | | | 0x08160146 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00390146 | + | | [[AMNet:Sign|Sign]] |
| |- | | |- |
| | 0x08170146 | | | 0x08170146 |
− | | Stubbed; returns 0xF8C083F4 | + | | [[AMNet:Verify|Verify]] |
| |- | | |- |
| | 0x08180042 | | | 0x08180042 |
− | | [[AMNet:GetCTCert|GetCTCert]] | + | | [[AMNet:GetDeviceCert|GetDeviceCert]] |
| |- | | |- |
| | 0x08190108 | | | 0x08190108 |
− | | [[AMNet:SetCertificates|SetCertificates]] | + | | [[AMNet:ImportCertificates|ImportCertificates]] |
| |- | | |- |
| | 0x081A0042 | | | 0x081A0042 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x003E0042 | + | | [[AMNet:ImportCertificate|ImportCertificate]] |
| |- | | |- |
| | 0x081B00C2 | | | 0x081B00C2 |
− | | [[AMNet:InstallTitlesFinish|InstallTitlesFinish]] | + | | [[AMNet:CommitImportTitlesAndUpdateFirmwareAuto|CommitImportTitlesAndUpdateFirmwareAuto]] |
| |- | | |- |
| | 0x081C0100 | | | 0x081C0100 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x004B0100 | + | | [[AMNet:DeleteTicketId|DeleteTicketId]] |
| |- | | |- |
| | 0x081D0080 | | | 0x081D0080 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00490080 | + | | [[AMNet:GetNumTicketIds|GetNumTicketIds]] |
| |- | | |- |
| | 0x081E0102 | | | 0x081E0102 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x004A0102 | + | | [[AMNet:GetTicketIdList|GetTicketIdList]] |
| |- | | |- |
| | 0x081F0080 | | | 0x081F0080 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x005F0080 | + | | [[AMNet:GetNumTicketsOfProgram|GetNumTicketsOfProgram]] |
| |- | | |- |
| | 0x08200102 | | | 0x08200102 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00600102 | + | | [[AMNet:ListTicketInfos|ListTicketInfos]] |
| |- | | |- |
| | 0x08210142 | | | 0x08210142 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00610142 | + | | [[AMNet:ExportLicenseTicket|ExportLicenseTicket]] |
| |- | | |- |
| | 0x08220000 | | | 0x08220000 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x005B0000 | + | | [[AMNet:GetNumCurrentContentInfos|GetNumCurrentContentInfos]] |
| |- | | |- |
| | 0x08230044 | | | 0x08230044 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x005C0044 | + | | [[AMNet:FindCurrentContentInfos|FindCurrentContentInfos]] |
| |- | | |- |
| | 0x08240082 | | | 0x08240082 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x005D0082 | + | | [[AMNet:ListCurrentContentInfos|ListCurrentContentInfos]] |
| |- | | |- |
| | 0x08250102 | | | 0x08250102 |
− | |? | + | | [[AMNet:CalculateContextRequiredSize|CalculateContextRequiredSize]] |
| |- | | |- |
| | 0x08260042 | | | 0x08260042 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x00630042 | + | | [[AMNet:UpdateImportContentContexts|UpdateImportContentContexts]] |
| |- | | |- |
| | 0x08270000 | | | 0x08270000 |
− | |? | + | | [[AMNet:DeleteAllDemoLaunchInfos|DeleteAllDemoLaunchInfos]] |
| |- | | |- |
| | 0x082800C0 | | | 0x082800C0 |
− | | Wrapper for [[Application_Manager_Services_PXI|AMPXI]] command 0x006C00C0 | + | | [[AMNet:BeginImportTitleForOverWrite|BeginImportTitleForOverWrite]] |
| + | |- |
| + | | 0x08290184 |
| + | | [[AMNet:ExportTicketWrapped|ExportTicketWrapped]] |
| |} | | |} |
| | | |
Line 408: |
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. |
| |} | | |} |
| | | |
− | These are identical to [[Filesystem_services#File_service|FSFile]].
| + | 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 |
| + | |} |
| + | |
| + | ==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]]. |