Application Manager Services: Difference between revisions
TimmSkiller (talk | contribs) m GetNumExistingContentInfos -> AM:GetNumDLCExistingContentInfos |
m Add am:pipe anchor |
||
(16 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__TOC__ | |||
{{Anchor|AM}} | |||
= Application Manager services "am:sys", "am:u", "am:net" = | = Application Manager services "am:sys", "am:u", "am:net" = | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 131: | Line 131: | ||
|- | |- | ||
| 0x002A00C0 | | 0x002A00C0 | ||
| [[AM: | | [[AM:GetNumExistingContentInfos|GetNumExistingContentInfos]] | ||
|- | |- | ||
| 0x002B0142 | | 0x002B0142 | ||
| [[AM: | | [[AM:ListExistingContentInfos|ListExistingContentInfos]] | ||
|- | |- | ||
| 0x002C0084 | | 0x002C0084 | ||
Line 225: | Line 225: | ||
|} | |} | ||
{{Anchor|AMAPP}}{{Anchor|am:app}} | |||
= Application Manager service "am:app" = | = Application Manager service "am:app" = | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 241: | Line 242: | ||
|- | |- | ||
| 0x10040102 | | 0x10040102 | ||
| [[AM: | | [[AM:DeleteDLCContents|DeleteDLCContents]] | ||
|- | |- | ||
| 0x10050084 | | 0x10050084 | ||
Line 250: | Line 251: | ||
|- | |- | ||
| 0x10070102 | | 0x10070102 | ||
| [[AM: | | [[AM:ListDLCOrLicenseTicketInfos|ListDLCOrLicenseTicketInfos]] | ||
|- | |- | ||
| 0x100801C2 | | 0x100801C2 | ||
Line 256: | Line 257: | ||
|- | |- | ||
| 0x100900C0 | | 0x100900C0 | ||
| [[AM: | | [[AM:IsDLCTitleInUse|IsDLCTitleInUse]] | ||
|- | |- | ||
| 0x100A0000 | | 0x100A0000 | ||
| [[AM: | | [[AM:ReloadSDTitleDatabase|ReloadSDTitleDatabase]] | ||
|- | |- | ||
| 0x100B00C0 | | 0x100B00C0 | ||
Line 265: | Line 266: | ||
|- | |- | ||
| 0x100C0142 | | 0x100C0142 | ||
| [[AM: | | [[AM:ListDLCExistingContentInfos|ListDLCExistingContentInfos]] | ||
|- | |- | ||
| 0x100D0084 | | 0x100D0084 | ||
Line 273: | Line 274: | ||
The only commands accessible with this service are listed under this section. | The only commands accessible with this service are listed under this section. | ||
{{Anchor|AMSYS}}{{Anchor|am:sys}} | |||
= 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. | This service only has access to the 0x00XX* commands listed above, and the "am:app" commands. | ||
{{Anchor|AMU}}{{Anchor|am:u}} | |||
= Application Manager service "am:u" = | = Application Manager service "am:u" = | ||
{{Anchor|AMNET}}{{Anchor|am:net}} | |||
= Application Manager network service "am:net" = | = Application Manager network service "am:net" = | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 381: | Line 385: | ||
|- | |- | ||
| 0x08210142 | | 0x08210142 | ||
| [[AMNet: | | [[AMNet:ExportLicenseTicket|ExportLicenseTicket]] | ||
|- | |- | ||
| 0x08220000 | | 0x08220000 | ||
Line 419: | Line 423: | ||
| Stubbed. After validating the translate-paramater headers, this just returns error 0xE0C046F8. | | Stubbed. After validating the translate-paramater headers, this just returns error 0xE0C046F8. | ||
|- | |- | ||
| | | 0x040100C4 | ||
| | | | ||
| | | [[AMFile:Control|Control]] | ||
|- | |- | ||
| 0x08010100 | | 0x08010100 | ||
| | | | ||
| | | [[AMFile:OpenSubFile|OpenSubFile]] | ||
|- | |- | ||
| 0x080200C2 | | 0x080200C2 | ||
Line 445: | Line 449: | ||
| 0x08060000 | | 0x08060000 | ||
| | | | ||
| | | [[AMFile:GetAttributes|GetAttributes]] | ||
|- | |- | ||
| 0x08070000 | | 0x08070000 | ||
| | | | ||
| | | [[AMFile:SetAttributes|SetAttributes]] | ||
|- | |- | ||
| 0x08080000 | | 0x08080000 | ||
Line 457: | Line 461: | ||
| 0x08090000 | | 0x08090000 | ||
| | | | ||
| | | [[AMFile:Flush|Flush]] | ||
|- | |- | ||
| 0x080A0000 | | 0x080A0000 | ||
Line 476: | Line 480: | ||
For handling each command that's actually implemented, the AM cmdhandler function calls a vtable funcptr. | For handling each command that's actually implemented, the AM cmdhandler function calls a vtable funcptr. | ||
{{Anchor|am:pipe}} | |||
The private port for this seems to be referred to as "am:pipe", even though the "am:pipe" string isn't actually used. | The private port for this seems to be referred to as "am:pipe", even though the "am:pipe" string isn't actually used. | ||
Line 548: | Line 553: | ||
| 0x2 | | 0x2 | ||
| 0x2 | | 0x2 | ||
| Type | | [[Title_metadata#Content_Type_flags|Content Type Flags]] from [[Title_metadata|TMD]] | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
Line 649: | Line 654: | ||
| 0x8 | | 0x8 | ||
| Current Install Offset | | 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]]. | ||
[[Category:Services]] |