Applet Manager services: Difference between revisions

(7 intermediate revisions by the same user not shown)
Line 113: Line 113:
| 31 || [2.0.0+] [[#GetWriterLockAccessorEx]] ||  
| 31 || [2.0.0+] [[#GetWriterLockAccessorEx]] ||  
|-
|-
| 100 || [6.0.0+] PopRequestLaunchApplicationForDebug ||
| 100 || [6.0.0+] [[#PopRequestLaunchApplicationForDebug]] ||
|-
|-
| 200 || [8.0.0+] [[#LaunchDevMenu]] ||
| 200 || [8.0.0+] [[#LaunchDevMenu]] ||
Line 142: Line 142:


The input value must be 0-3. 0 = HomeButton.
The input value must be 0-3. 0 = HomeButton.
==== PopRequestLaunchApplicationForDebug ====
Takes a type-0x6 output buffer containing an array of u128 userIDs, returns an output u64 titleID (<code>nn::ncm::ApplicationId</code>) and an output s32 '''total_userIDs'''.
The total entries in the userID buffer must be >= {total userIDs in state}.


==== LaunchDevMenu ====
==== LaunchDevMenu ====
Line 150: Line 155:
Uses [[NS_Services#IApplicationManagerInterface]] cmd99.
Uses [[NS_Services#IApplicationManagerInterface]] cmd99.


On success, official sw will enter an infinite loop with sleep-thread value 86400000000000.
This is used by [[qlaunch]]. On success, official sw will enter an infinite loop with sleep-thread value 86400000000000.


==== ILockAccessor ====
==== ILockAccessor ====
Line 361: Line 366:
===== GetApplicationControlProperty =====
===== GetApplicationControlProperty =====
No input, takes a type-0x6 output buffer.
No input, takes a type-0x6 output buffer.
The output buffer must be at least 0x4000-bytes. Returns an error when the [[#AppletId]] is 0x04, aka when the IApplicationAccessor is for a SystemApplication.


This gets the application [[NACP_Format|control.nacp]].
This gets the application [[NACP_Format|control.nacp]].
Line 807: Line 814:
==== BeginToObserveHidInputForDevelop ====
==== BeginToObserveHidInputForDevelop ====
No input/output.
No input/output.
Sets various state fields and signals an userspace-event.
Enables HID input for the OverlayApplet, without disabling input for the foreground applet.


== IApplicationProxy ==
== IApplicationProxy ==
Line 980: Line 991:
No input, returns an output u8 [[Filesystem_services#StorageId|StorageId]] and u8 [[Filesystem_services#StorageId|StorageId]].
No input, returns an output u8 [[Filesystem_services#StorageId|StorageId]] and u8 [[Filesystem_services#StorageId|StorageId]].


Just returns two u8s loaded from state.
This returns two u8s loaded from state, these are the same StorageIds from [[#ApplicationLaunchProperty]].


==== BeginBlockingHomeButtonShortAndLongPressed ====
==== BeginBlockingHomeButtonShortAndLongPressed ====
Line 1,155: Line 1,166:


Stubbed with an ILibraryAppletCreator from [[#CreateSelfLibraryAppletCreatorForDevelop]], just returns an error.
Stubbed with an ILibraryAppletCreator from [[#CreateSelfLibraryAppletCreatorForDevelop]], just returns an error.
Terminates all LibraryApplets which were created by the current applet (or by the Application when used from the [[#IApplicationAccessor]] cmd).


=== AreAnyLibraryAppletsLeft ===
=== AreAnyLibraryAppletsLeft ===
Line 1,160: Line 1,173:


Stubbed with an ILibraryAppletCreator from [[#CreateSelfLibraryAppletCreatorForDevelop]], just returns an error.
Stubbed with an ILibraryAppletCreator from [[#CreateSelfLibraryAppletCreatorForDevelop]], just returns an error.
Gets whether any LibraryApplets ([[#ILibraryAppletAccessor]]) which were created by the current applet are still open (or by the Application when used from the [[#IApplicationAccessor]] cmd).


=== CreateStorage ===
=== CreateStorage ===