SVC: Difference between revisions
Add result code documentation for svcSetHeapSize. |
Add documentation for Signal/Clear Event. |
||
Line 44: | Line 44: | ||
| 0x10 || [[#svcGetCurrentProcessorNumber]] || None || W0/X0=cpuid | | 0x10 || [[#svcGetCurrentProcessorNumber]] || None || W0/X0=cpuid | ||
|- | |- | ||
| 0x11 || svcSignalEvent || W0=wevent_handle || W0=result | | 0x11 || [[#svcSignalEvent]] || W0=wevent_handle || W0=result | ||
|- | |- | ||
| 0x12 || svcClearEvent || W0=wevent_or_revent_handle || W0=result | | 0x12 || [[#svcClearEvent]] || W0=wevent_or_revent_handle || W0=result | ||
|- | |- | ||
| 0x13 || [[#svcMapSharedMemory]] || W0=shmem_handle, X1=addr, X2=size, W3=perm || W0=result | | 0x13 || [[#svcMapSharedMemory]] || W0=shmem_handle, X1=addr, X2=size, W3=perm || W0=result | ||
Line 695: | Line 695: | ||
Cpu-id is an integer in the range 0-3. | Cpu-id is an integer in the range 0-3. | ||
== svcSignalEvent == | |||
<div style="display: inline-block;"> | |||
{| class="wikitable" border="1" | |||
|- | |||
! Argument || Type || Name | |||
|- | |||
| (In) W0 || Handle<WritableEvent> || Event | |||
|- | |||
| (Out) X0 || [[#Result]] || Result | |||
|} | |||
</div> | |||
'''Description:''' Puts the given event in the signaled state. | |||
Will wake up any thread currently waiting on this event. Can potentially trigger a reschedule. | |||
Any calls to [[#svcWaitSynchronization]] on this handle will return immediately, until the event's signaled state is reset. | |||
=== Result codes === | |||
'''0x0:''' Success. Event is now in signaled state. | |||
'''0xE401:''' Invalid handle. The handle either does not exist, or is not a WritableEvent. | |||
== svcClearEvent == | |||
<div style="display: inline-block;"> | |||
{| class="wikitable" border="1" | |||
|- | |||
! Argument || Type || Name | |||
|- | |||
| (In) W0 || Handle<WritableEvent or ReadableEvent> || Event | |||
|- | |||
| (Out) X0 || [[#Result]] || Result | |||
|} | |||
</div> | |||
'''Description:''' Takes the given event out of the signaled state. | |||
=== Result codes === | |||
'''0x0:''' Success, the event is now in the not-signaled state. | |||
'''0xE401:''' Invalid handle. The handle either does not exist, or is not a ReadableEvent nor a WritableEvent. | |||
'''0xFA01:''' The handle was not in a signaled state. | |||
== svcMapSharedMemory == | == svcMapSharedMemory == |