Application Manager services “am:sys”, “am:u”, “am:net”
#
Application Manager services “am:u” and “am:net”
#
Application Manager service “am:app”
#
The only commands accessible with this service are listed under this
section.
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 network service “am:net”
#
File service
#
| Command Header | Available since system-version | Description |
|---|
| 0x0001…. | | Stubbed. After validating the translate-paramater headers, this just returns error 0xE0C046F8. |
| 0x040100C4 | | Control |
| 0x08010100 | | OpenSubFile |
| 0x080200C2 | | Read |
| 0x08030102 | | Write |
| 0x08040000 | | GetSize |
| 0x08050080 | | SetSize |
| 0x08060000 | | GetAttributes |
| 0x08070000 | | SetAttributes |
| 0x08080000 | | Close |
| 0x08090000 | | Flush |
| 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.
Types
#
TicketInfo
#
| Offset | Length | Description |
|---|
| 0x0 | 0x8 | Title ID |
| 0x8 | 0x8 | Ticket ID |
| 0x10 | 0x2 | Version |
| 0x12 | 0x2 | Padding |
| 0x14 | 0x4 | Size |
TitleInfo
#
| Offset | Length | Description |
|---|
| 0x0 | 0x8 | Title ID |
| 0x8 | 0x8 | Size |
| 0x10 | 0x2 | Version |
| 0x12 | 0x2 | Padding |
| 0x14 | 0x4 | Type |
ContentInfo
#
| Offset | Length | Description |
|---|
| 0x0 | 0x2 | Index |
| 0x2 | 0x2 | Content Type Flags from
TMD |
| 0x4 | 0x4 | Content ID |
| 0x8 | 0x8 | Size |
| 0x10 | 0x1 | Bit 0: Downloaded, Bit 1: Owned |
| 0x11 | 0x7 | Padding |
ImportTitleContext
#
| Offset | Length | Description |
|---|
| 0x0 | 0x8 | Title ID |
| 0x8 | 0x2 | Version |
| 0xA | 0x2 | State |
| 0xC | 0x4 | Type |
| 0x10 | 0x8 | Size |
ImportTitleContextState
#
| Value | Description |
|---|
| 0 | None |
| 1 | Waiting for import |
| 2 | Resumable |
| 3 | Waiting for commit |
| 4 | Already exists |
| 5 | Deleting |
| 6 | Needs cleanup |
ImportContentContext
#
| Offset | Length | Description |
|---|
| 0x0 | 0x4 | Content ID |
| 0x4 | 0x2 | Index |
| 0x6 | 0x2 | Type |
| 0x8 | 0x8 | Size |
| 0x10 | 0x8 | Current Install Offset |
TwlBackupInfo
#
| 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
#
See
this.
Category:Services