Changes

1,032 bytes added ,  09:57, 20 September 2019
Add documentation for svcResetSignal
Line 807: Line 807:     
Closing all handles automatically causes the bit0 in [[#MemoryAttribute]] to clear, and the permission to reset.
 
Closing all handles automatically causes the bit0 in [[#MemoryAttribute]] to clear, and the permission to reset.
 +
 +
== svcResetSignal ==
 +
 +
<div style="display: inline-block;">
 +
{| class="wikitable" border="1"
 +
|-
 +
! Argument || Type || Name
 +
|-
 +
| (In) W0 || Handle<ReadableEvent> or Handle<Process> || Handle
 +
|-
 +
| (Out) W0 || [[#Result]] || Ret
 +
|}
 +
</div>
 +
 +
Resets the signal on the given handle, ensuring future calls to [[#svcWaitSynchronization]] on this handle will sleep until the handle is signaled again. If the handle is a ReadableEvent, this is equivalent to calling svcClearEvent() on the handle.
 +
 +
If the handle is a Process, it will clear the signaled state (which is set when the process changes [[#ProcessState]]. Once the process enters the Exited state, calling svcResetSignal on the process will no longer have an effect (the process is permanently signaled), and the syscall will return 0xFA01.
 +
 +
=== Result codes ===
 +
 +
'''0x0:''' Success. The signal was reset.
 +
 +
'''0xE401:''' The handle is invalid or of the wrong type.
 +
 +
'''0xFA01:''' The handle was not signaled, or the process is in exited state, causing it to be permanently signaled.
    
== svcWaitSynchronization ==
 
== svcWaitSynchronization ==
151

edits