Fatal services: Difference between revisions
Jump to navigation
Jump to search
Created page with "= fatal:u = {| class="wikitable" border="1" |- ! Cmd || Name |- | 0 || |- | 1 || |- | 2 || |} = fatal:p =" |
No edit summary |
||
| (11 intermediate revisions by 6 users not shown) | |||
| Line 1: | Line 1: | ||
= fatal:u = | = fatal:u = | ||
This is "nn::fatalsrv::IService". | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || ThrowFatal | ||
|- | |- | ||
| 1 || | | 1 || ThrowFatalWithPolicy | ||
|- | |- | ||
| 2 || | | 2 || [[#ThrowFatalWithCpuContext]] | ||
|- | |||
| 3 || [21.0.0+] | |||
|} | |} | ||
== 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 = | = 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 22:33, 11 November 2025
fatal:u
This is "nn::fatalsrv::IService".
| Cmd | Name |
|---|---|
| 0 | ThrowFatal |
| 1 | ThrowFatalWithPolicy |
| 2 | #ThrowFatalWithCpuContext |
| 3 | [21.0.0+] |
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 |