s32 svcCreateEvent(Handle* event, u8 reset_type);
s32 svcSignalEvent(Handle handle);
s32 svcClearEvent(Handle handle);
+s32 svcCreateTimer(Handle* timer, u8 reset_type);
+s32 svcSetTimer(Handle timer, s64 initial, s64 interval);
+s32 svcCancelTimer(Handle timer);
+s32 svcClearTimer(Handle timer);
s32 svcCreateMemoryBlock(Handle* memblock, u32 addr, u32 size, MemPerm my_perm, MemPerm other_perm);
s32 svcMapMemoryBlock(Handle memblock, u32 addr, MemPerm my_perm, MemPerm other_perm);
s32 svcUnmapMemoryBlock(Handle memblock, u32 addr);
svcClearEvent:
svc 0x19
bx lr
+
+.global svcCreateTimer
+.type svcCreateTimer, %function
+svcCreateTimer:
+ str r0, [sp,#-4]!
+ svc 0x1A
+ ldr r2, [sp], #4
+ str r1, [r2]
+ bx lr
+
+.global svcSetTimer
+.type svcSetTimer, %function
+svcSetTimer:
+ svc 0x1B
+ bx lr
+
+.global svcCancelTimer
+.type svcCancelTimer, %function
+svcCancelTimer:
+ svc 0x1C
+ bx lr
+
+.global svcClearTimer
+.type svcClearTimer, %function
+svcClearTimer:
+ svc 0x1D
+ bx lr
.global svcCreateMemoryBlock
.type svcCreateMemoryBlock, %function