SVC: Difference between revisions
No edit summary |
No edit summary |
||
Line 79: | Line 79: | ||
| 0x25 || svcGetThreadId || W1=thread_handle || W0=result, X1=out | | 0x25 || svcGetThreadId || W1=thread_handle || W0=result, X1=out | ||
|- | |- | ||
| 0x26 || [[#svcBreak]] || X0=break_reason,X1,X2=info || | | 0x26 || [[#svcBreak]] || X0=break_reason,X1,X2=info || W0=result = 0 | ||
|- | |- | ||
| 0x27 || svcOutputDebugString || X0=str, X1=size || W0=result | | 0x27 || svcOutputDebugString || X0=str, X1=size || W0=result | ||
Line 713: | Line 713: | ||
| (In) X2 || u64 || Info | | (In) X2 || u64 || Info | ||
|- | |- | ||
| (Out) | | (Out) W0 || Result || 0 (Success) | ||
|} | |} | ||
</div> | </div> | ||
When used on retail where inx0 bit31 is clear, the system will throw a [[Error_codes|fatal-error]]. Otherwise when bit31 is set, it will return 0 and notify the debugger? | [1.0.0] When used on retail where inx0 bit31 is clear, the system will throw a [[Error_codes|fatal-error]]. Otherwise when bit31 is set, it will return 0 and notify the debugger? | ||
[Maybe 2.0.0+] If the process is attached, report the Break event. Otherwise, if bit31 in reason isn't set, perform crash reporting (see Exception Handling section below). When Break returns, it returns 0 and TPIDR_EL0 is set to 1. | |||
== svcGetInfo == | == svcGetInfo == |