Fatal services: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
 Add full interface name (imported from SwIPC)  | 
				 →fatal:p:  official command name  | 
				||
| (8 intermediate revisions by 4 users not shown) | |||
| Line 6: | Line 6: | ||
! Cmd || Name  | ! Cmd || Name  | ||
|-  | |-  | ||
| 0 ||  | | 0 || ThrowFatal  | ||
|-  | |-  | ||
| 1 ||  | | 1 || ThrowFatalWithPolicy  | ||
|-  | |-  | ||
| 2 || [[#  | | 2 || [[#ThrowFatalWithCpuContext]]  | ||
|}  | |}  | ||
==   | == ThrowFatalWithCpuContext ==  | ||
Takes an input u64 errorcode and an unknown u64(TID maybe?). It also takes a type-0x15 error buffer and a pid-descriptor. The error buffer contains a stack trace.    | Takes an input u64 errorcode and an unknown u64(TID maybe?). It also takes a type-0x15 error buffer and a pid-descriptor. The error buffer contains a stack trace.    | ||
The stack trace address count is stored at errorbuffer+0x240 and the addresses are stored at errorbuffer+0x130+i*8 where i = 0->address count  | The stack trace address count is stored at errorbuffer+0x240 and the addresses are stored at errorbuffer+0x130+i*8 where i = 0->address count  | ||
= fatal:p =  | = fatal:p =  | ||
This is "nn::fatalsrv::IPrivateService".  | |||
{| class="wikitable" border="1"  | |||
|-  | |||
! Cmd || Name  | |||
|-  | |||
| 0 || GetFatalEvent  | |||
|-  | |||
| 10 || [14.0.0+]  GetFatalContext  | |||
|}  | |||
== FatalType ==  | |||
{| class="wikitable" border="1"  | |||
|-  | |||
! Value || Name  | |||
|-  | |||
| 0 || ErrorReportAndErrorScreen  | |||
|-  | |||
| 1 || ErrorReport  | |||
|-  | |||
| 2 || [3.0.0+] ErrorScreen  | |||
|}  | |||
[[Category:Services]]  | |||
Latest revision as of 07:06, 18 April 2022
fatal:u
This is "nn::fatalsrv::IService".
| Cmd | Name | 
|---|---|
| 0 | ThrowFatal | 
| 1 | ThrowFatalWithPolicy | 
| 2 | #ThrowFatalWithCpuContext | 
ThrowFatalWithCpuContext
Takes an input u64 errorcode and an unknown u64(TID maybe?). It also takes a type-0x15 error buffer and a pid-descriptor. The error buffer contains a stack trace. The stack trace address count is stored at errorbuffer+0x240 and the addresses are stored at errorbuffer+0x130+i*8 where i = 0->address count
fatal:p
This is "nn::fatalsrv::IPrivateService".
| Cmd | Name | 
|---|---|
| 0 | GetFatalEvent | 
| 10 | [14.0.0+] GetFatalContext | 
FatalType
| Value | Name | 
|---|---|
| 0 | ErrorReportAndErrorScreen | 
| 1 | ErrorReport | 
| 2 | [3.0.0+] ErrorScreen |