Creport: Difference between revisions
Created page with "Creport takes a string containing a pid (?) formatted in base10. This is launched by NS. Then it uses the svcDebugActiveProcess to start a debug-sessi..." |
No edit summary |
||
Line 15: | Line 15: | ||
Then depending on exception type it stores: | Then depending on exception type it stores: | ||
<code>UNDEFINED_INSTRUCTION (0)</code>: Always (u64) 0. | * <code>UNDEFINED_INSTRUCTION (0)</code>: Always (u64) 0. | ||
<code>PREFETCH_ABORT (1)</code>: Always (u64) 0. | * <code>PREFETCH_ABORT (1)</code>: Always (u64) 0. | ||
<code>DATA_ABORT (2)</code>: (u64) Fault register. | * <code>DATA_ABORT (2)</code>: (u64) Fault register. | ||
<code>UNALIGNED_ACCESS (3)</code>: (u64) Fault register. | * <code>UNALIGNED_ACCESS (3)</code>: (u64) Fault register. | ||
<code>UNDEFINED_SYSCALL (8)</code>: (u64) Syscall id. | * <code>UNDEFINED_SYSCALL (8)</code>: (u64) Syscall id. | ||
<code>? (9)</code>: Always (u64) 0. | * <code>? (9)</code>: Always (u64) 0. | ||
For all exceptions, it then adds more data from svcGetDebugThreadParam/svcGetDebugThreadContext. This reads the flag from <code>ATTACH_PROCESS</code> to determine whether to read 0x10 bytes using svcReadDebugProcessMemory. | For all exceptions, it then adds more data from svcGetDebugThreadParam/svcGetDebugThreadContext. This reads the flag from <code>ATTACH_PROCESS</code> to determine whether to read 0x10 bytes using svcReadDebugProcessMemory. |