Difference between revisions of "Glue services"

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 4: Line 4:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Cmd || Name
+
! Cmd || Name || Notes
 
|-
 
|-
| 0 || GetApplicationLaunchProperty
+
| 0 || GetApplicationLaunchProperty || Takes an input u64 ProcessId, returns an [[#ApplicationLaunchProperty]]
 
|-
 
|-
| 1 || GetApplicationLaunchPropertyWithApplicationId
+
| 1 || GetApplicationLaunchPropertyWithApplicationId || Takes an input u64 TitleId, returns an [[#ApplicationLaunchProperty]]
 
|-
 
|-
| 2 || GetApplicationControlProperty
+
| 2 || GetApplicationControlProperty || Takes an input u64 ProcessId, returns a type-0x16 buffer filled with the contents of [[NACP_Format|control.nacp]]
 
|-
 
|-
| 3 || GetApplicationControlPropertyWithApplicationId
+
| 3 || GetApplicationControlPropertyWithApplicationId || Takes an input u64 TitleId, returns a type-0x16 buffer filled with the contents of [[NACP_Format|control.nacp]]
 
|}
 
|}
 
== GetApplicationControlPropertyWithApplicationId ==
 
 
Takes in a title id and a type-0x16 buffer. This is filled with the contents of control.nacp for that application.
 
  
 
= arp:w =
 
= arp:w =
Line 24: Line 20:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Cmd || Name
+
! Cmd || Name || Notes
 
|-
 
|-
| 0 || AcquireRegistrar
+
| 0 || AcquireRegistrar || Returns an [[#IRegistrar]]
 
|-
 
|-
| 1 || DeleteProperties
+
| 1 || DeleteProperties || Takes an input u64 unknown
 
|}
 
|}
  
Line 36: Line 32:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Cmd || Name
+
! Cmd || Name || Notes
|-
 
| 0 || Issue
 
|-
 
| 1 || SetApplicationLaunchProperty
 
|-
 
| 2 || SetApplicationControlProperty
 
|}
 
 
 
=== Launch Property Format ===
 
 
 
{| class="wikitable" border="1"
 
|-
 
! Offset
 
! Size
 
! Description
 
|-
 
| 0x0
 
| 0x8
 
| Title ID
 
|-
 
| 0x8
 
| 0x4
 
| Version
 
 
|-
 
|-
| 0xC
+
| 0 || Issue || Takes an input u64 unknown
| 0x1
 
| Base Game Storage ID
 
 
|-
 
|-
| 0xD
+
| 1 || SetApplicationLaunchProperty || Takes an input [[#ApplicationLaunchProperty]]
| 0x1
 
| Update Storage ID
 
 
|-
 
|-
| 0xE
+
| 2 || SetApplicationControlProperty || Takes an input type-0x15 buffer filled with the contents of [[NACP_Format|control.nacp]]
| 0x2
 
| Padding
 
 
|}
 
|}
  
Line 128: Line 95:
 
| 5 || [3.0.0+] SetIsUsingSleepUnsupportedDevices
 
| 5 || [3.0.0+] SetIsUsingSleepUnsupportedDevices
 
|-
 
|-
 +
|}
 +
 +
= ApplicationLaunchProperty =
 +
 +
Total size is 0x10-bytes.
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x00
 +
| 0x08
 +
| Title ID
 +
|-
 +
| 0x08
 +
| 0x04
 +
| Version
 +
|-
 +
| 0x0C
 +
| 0x01
 +
| Base Game [[Filesystem_services#StorageId|Storage Id]]
 +
|-
 +
| 0x0D
 +
| 0x01
 +
| Update [[Filesystem_services#StorageId|Storage Id]]
 +
|-
 +
| 0x0E
 +
| 0x02
 +
| Padding
 
|}
 
|}
  
 
[[Category:Services]]
 
[[Category:Services]]

Revision as of 00:20, 14 June 2019

arp:r

This is "nn::arp::detail::IReader".

Cmd Name Notes
0 GetApplicationLaunchProperty Takes an input u64 ProcessId, returns an #ApplicationLaunchProperty
1 GetApplicationLaunchPropertyWithApplicationId Takes an input u64 TitleId, returns an #ApplicationLaunchProperty
2 GetApplicationControlProperty Takes an input u64 ProcessId, returns a type-0x16 buffer filled with the contents of control.nacp
3 GetApplicationControlPropertyWithApplicationId Takes an input u64 TitleId, returns a type-0x16 buffer filled with the contents of control.nacp

arp:w

This is "nn::arp::detail::IWriter".

Cmd Name Notes
0 AcquireRegistrar Returns an #IRegistrar
1 DeleteProperties Takes an input u64 unknown

IRegistrar

This is "nn::arp::detail::IRegistrar".

Cmd Name Notes
0 Issue Takes an input u64 unknown
1 SetApplicationLaunchProperty Takes an input #ApplicationLaunchProperty
2 SetApplicationControlProperty Takes an input type-0x15 buffer filled with the contents of control.nacp

bgtc:t

This is "nn::bgtc::ITaskService".

Cmd Name
1 NotifyTaskStarting
2 NotifyTaskFinished
3 GetTriggerEvent
4 IsInHalfAwake
5 NotifyClientName
6 [3.0.0+] IsInFullAwake
11 ScheduleTask
12 GetScheduledTaskInterval
13 UnscheduleTask
14 GetScheduleEvent
15 SchedulePeriodicTask
101 [3.0.0+] GetOperationMode
102 [3.0.0+] WillDisconnectNetworkWhenEnteringSleep
103 [3.0.0+] WillStayHalfAwakeInsteadSleep

bgtc:sc

This is "nn::bgtc::IStateControlService".

Cmd Name
1 GetState
2 GetStateChangedEvent
3 NotifyEnteringHalfAwake
4 NotifyLeavingHalfAwake
5 [3.0.0+] SetIsUsingSleepUnsupportedDevices

ApplicationLaunchProperty

Total size is 0x10-bytes.

Offset Size Description
0x00 0x08 Title ID
0x08 0x04 Version
0x0C 0x01 Base Game Storage Id
0x0D 0x01 Update Storage Id
0x0E 0x02 Padding