Log services: Difference between revisions

From Nintendo Switch Brew
Jump to navigation Jump to search
Created page with "= lm = {| class="wikitable" border="1" |- ! Cmd || Name |- | 0 || |- | 1 || |- | 2 || |- | 3 || |- | 4 || |- |} == Cmd0 == Unknown, domain related? == Cmd1 == Returns..."
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= lm =
= lm =
This is "nn::lm::ILogService".


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 5: Line 6:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 ||  
| 0 || [[#OpenLogger]]
|}
 
== OpenLogger ==
 
Takes an input u64 value representing a process ID and returns an [[#ILogger]] instance.
 
== ILogger ==
This is "nn::lm::ILogger".
 
{| class="wikitable" border="1"
|-
|-
| 1 ||  
! Cmd || Name
|-
|-
| 2 ||
| 0 || [[#Log]]
|-
| 3 ||
|-
| 4 ||  
|-
|-
| 1 || [3.0.0+] [[#SetDestination]]
|}
|}


== Cmd0 ==
== Log ==
Unknown, domain related?


== Cmd1 ==
Takes an input buffer containing the message to log.
Returns a session handle.
Will always return successfully.


== Cmd2 ==
== SetDestination ==
Returns a session handle.


== Cmd3 ==
Takes an input u32 mask value indicating the logging destinations to send incoming log messages to. The mask entries are as follows:
Returns an output u16.


== Cmd4 ==
Similar to cmd2.
= Domain =
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name
! Value || Description
|-
| 1 || TMA
|-
| 2 || UART
|-
| 4 || UART when sleeping
|-
|-
| 0 ||  
| 0xFFFF || Log to all destinations
|}
|}


= ILogService =
= lm:get =
This is "nn::lm::ILogGetter".
 
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name
! Cmd || Name
|-
|-
| 0 ||  
| 0 || StartLogging
|}
 
= ILogger =
{| class="wikitable" border="1"
|-
|-
! Cmd || Name
| 1 || StopLogging
|-
|-
| 0 ||  
| 2 || GetLog
|}
|}
This service doesn't normally exist on retail.
[[Category:Services]]

Revision as of 02:57, 13 August 2019

lm

This is "nn::lm::ILogService".

Cmd Name
0 #OpenLogger

OpenLogger

Takes an input u64 value representing a process ID and returns an #ILogger instance.

ILogger

This is "nn::lm::ILogger".

Cmd Name
0 #Log
1 [3.0.0+] #SetDestination

Log

Takes an input buffer containing the message to log. Will always return successfully.

SetDestination

Takes an input u32 mask value indicating the logging destinations to send incoming log messages to. The mask entries are as follows:

Value Description
1 TMA
2 UART
4 UART when sleeping
0xFFFF Log to all destinations

lm:get

This is "nn::lm::ILogGetter".

Cmd Name
0 StartLogging
1 StopLogging
2 GetLog

This service doesn't normally exist on retail.