Applet Manager services: Difference between revisions
No edit summary |
|||
Line 556: | Line 556: | ||
| 13 || [4.0.0+] [[#CreateApplicationAndRequestToStartForQuest]] || | | 13 || [4.0.0+] [[#CreateApplicationAndRequestToStartForQuest]] || | ||
|- | |- | ||
| 14 || [7.0.0+] | | 14 || [7.0.0+] [[#CreateApplicationWithAttributeAndPushAndRequestToStartForQuest]] || | ||
|- | |- | ||
| 15 || [7.0.0+] CreateApplicationWithAttributeAndRequestToStartForQuest || | | 15 || [7.0.0+] [[#CreateApplicationWithAttributeAndRequestToStartForQuest]] || | ||
|- | |- | ||
| 20 || EnsureSaveData || | | 20 || EnsureSaveData || | ||
Line 651: | Line 651: | ||
==== CreateApplicationAndPushAndRequestToStartForQuest ==== | ==== CreateApplicationAndPushAndRequestToStartForQuest ==== | ||
Takes 2 input u32s (loaded from struct ApplicationAttributeForQuest), an input u64 titleID, and an input [[#IStorage]], no output. | Takes 2 input u32s (loaded from struct [[#ApplicationAttributeForQuest]]), an input u64 titleID, and an input [[#IStorage]], no output. | ||
==== CreateApplicationAndRequestToStart ==== | ==== CreateApplicationAndRequestToStart ==== | ||
Line 659: | Line 659: | ||
==== CreateApplicationAndRequestToStartForQuest ==== | ==== CreateApplicationAndRequestToStartForQuest ==== | ||
Takes 2 input u32s (loaded from struct ApplicationAttributeForQuest) and an input u64 titleID, no output. | Takes 2 input u32s (loaded from struct [[#ApplicationAttributeForQuest]]) and an input u64 titleID, no output. | ||
Same as [[#CreateApplicationAndPushAndRequestToStartForQuest]] except without the input storage, official sw uses this when no input storage is specified. | Same as [[#CreateApplicationAndPushAndRequestToStartForQuest]] except without the input storage, official sw uses this when no input storage is specified. | ||
==== CreateApplicationWithAttributeAndPushAndRequestToStartForQuest ==== | |||
Takes an input u64 titleID, a type-0x15 input buffer [[#ApplicationAttribute]], an input [[#IStorage]], no output. | |||
Same as [[#CreateApplicationAndPushAndRequestToStartForQuest]] except the entire attributes structure is directly specified via the input buffer. This command replaces [[#CreateApplicationAndPushAndRequestToStartForQuest]], official user-processes no longer use [[#CreateApplicationAndPushAndRequestToStartForQuest]]. | |||
==== CreateApplicationWithAttributeAndRequestToStartForQuest ==== | |||
Takes an input u64 titleID and a type-0x15 input buffer containing a [[#ApplicationAttribute]], no output. | |||
Same as [[#CreateApplicationAndRequestToStartForQuest]] except the entire attributes structure is directly specified via the input buffer. This command replaces [[#CreateApplicationAndRequestToStartForQuest]], official user-processes no longer use [[#CreateApplicationAndPushAndRequestToStartForQuest]]. | |||
==== GetDesiredLanguage ==== | ==== GetDesiredLanguage ==== | ||
Line 1,914: | Line 1,924: | ||
= AppletKind = | = AppletKind = | ||
This is 8-bytes. | This is 8-bytes. | ||
= ApplicationAttributeForQuest = | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x4 || See [[#ApplicationAttribute]]. | |||
|- | |||
| 0x4 || 0x4 || See [[#ApplicationAttribute]]. | |||
|- | |||
| 0x8 || 0x4 || See [[#ApplicationAttribute]]. | |||
|} | |||
This struct is "nn::applet::ApplicationAttributeForQuest". | |||
User-processes copy the first 0x8-bytes (0xC-bytes with [[#CreateApplicationWithAttributeAndPushAndRequestToStartForQuest]]/[[#CreateApplicationWithAttributeAndRequestToStartForQuest]]) to a [[#ApplicationAttribute]] with the rest of the struct being cleared, which is then passed to the actual cmd. | |||
= ApplicationAttribute = | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x4 || ? | |||
|- | |||
| 0x4 || 0x4 || ? | |||
|- | |||
| 0x8 || 0x4 || float. Must be in the range of 0.0f-1.0f. The default is 1.0f. | |||
|- | |||
| 0xC || 0x14 || ? | |||
|} | |||
This struct is "nn::am::ApplicationAttribute". | |||
= Notes = | = Notes = |