Application Manager Services

Application Manager services "am:sys", "am:u", "am:net"Edit

Command Header Description
0x00010040 GetNumPrograms
0x00020082 GetProgramList
0x00030084 GetProgramInfos
0x000400C0 DeleteUserProgram
0x000500C0 GetProductCode
0x000600C0 GetStorageId
0x00070080 DeleteTicket
0x00080000 GetNumTickets
0x00090082 GetTicketList
0x000A0000 GetDeviceId
0x000B0040 GetNumImportTitleContexts
0x000C0082 GetImportTitleContextList
0x000D0084 GetImportTitleContexts
0x000E00C0 DeleteImportTitleContext
0x000F00C0 GetNumImportContentContexts
0x00100102 GetImportContentContextList
0x00110104 GetImportContentContexts
0x00120102 DeleteImportContentContexts
0x00130040 NeedsCleanup
0x00140040 DoCleanup
0x00150040 DeleteAllImportContexts
0x00160000 DeleteAllTemporaryPrograms
0x00170044 ImportTwlBackupLegacy
0x00180080 InitializeTitleDatabase
0x00190040 QueryAvailableTitleDatabase
0x001A00C0 CalcTwlBackupSize
0x001B0144 ExportTwlBackup
0x001C0084 ImportTwlBackup
0x001D0000 DeleteAllTwlUserPrograms
0x001E00C8 ReadTwlBackupInfo
0x001F0040 DeleteAllExpiredUserPrograms
0x00200000 GetTwlArchiveResourceInfo
0x00210042 GetPersonalizedTicketInfoList
0x00220080 DeleteAllImportContextsFiltered
0x00230080 GetNumImportTitleContextsFiltered
0x002400C2 GetImportTitleContextListFiltered
0x002500C0 CheckContentRights
0x00260044 GetTicketLimitInfos
0x00270044 GetDemoLaunchInfos
0x00280108 ReadTwlBackupInfoEx
0x00290082 DeleteUserProgramsAtomically
0x002A00C0 GetNumExistingContentInfosSystem
0x002B0142 ListExistingContentInfosSystem
0x002C0084 GetProgramInfosIgnorePlatform
0x002D00C0 CheckContentRightsIgnorePlatform

Application Manager services "am:u" and "am:net"Edit

Application Manager service "am:app"Edit

Command Header Description
0x100100C0 GetDLCContentInfoCount
0x10020104 FindDLCContentInfos
0x10030142 ListDLCContentInfos
0x10040102 DeleteContents
0x10050084 GetDLCTitleInfos
0x10060080 GetNumDataTitleTickets
0x10070102 ListDataTitleTicketInfos
0x100801C2 GetItemRights
0x100900C0 IsDataTitleInUse
0x100A0000 IsExternalTitleDatabaseInitialized
0x100B00C0 GetNumExistingContentInfos
0x100C0142 ListExistingContentInfos
0x100D0084 GetPatchTitleInfos

The only commands accessible with this service are listed under this section.

Application Manager service "am:sys"Edit

This service only has access to the 0x00XX* commands listed above, and the "am:app" commands.

Application Manager service "am:u"Edit

Application Manager network service "am:net"Edit

File serviceEdit

Command Header Available since system-version Description
0x0001.... Stubbed. After validating the translate-paramater headers, this just returns error 0xE0C046F8.
0x0401.... ?
0x08010100 ?
0x080200C2 Read
0x08030102 Write
0x08040000 GetSize
0x08050080 SetSize
0x08060000 ?
0x08070000 ?
0x08080000 Close
0x08090000 ?
0x080A0000 This just returns 0.
0x080B0000 This just returns 0.
0x080C0000 This just returns 0.

This is similar to 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.

TypesEdit

TicketInfoEdit

Offset Length Description
0x0 0x8 Title ID
0x8 0x8 Ticket ID
0x10 0x2 Version
0x12 0x2 Padding
0x14 0x4 Size

TitleInfoEdit

Offset Length Description
0x0 0x8 Title ID
0x8 0x8 Size
0x10 0x2 Version
0x12 0x2 Padding
0x14 0x4 Type

ContentInfoEdit

Offset Length Description
0x0 0x2 Index
0x2 0x2 Type
0x4 0x4 Content ID
0x8 0x8 Size
0x10 0x1 Bit 0: Downloaded, Bit 1: Owned
0x11 0x7 Padding

ImportTitleContextEdit

Offset Length Description
0x0 0x8 Title ID
0x8 0x2 Version
0xA 0x2 State
0xC 0x4 Type
0x10 0x8 Size

ImportTitleContextStateEdit

Value Description
0 None
1 Waiting for import
2 Resumable
3 Waiting for commit
4 Already exists
5 Deleting
6 Needs cleanup

ImportContentContextEdit

Offset Length Description
0x0 0x4 Content ID
0x4 0x2 Index
0x6 0x2 Type
0x8 0x8 Size
0x10 0x8 Current Install Offset

ErrorsEdit

See this.