]> Chaos Git - corbenik/ctrulib.git/commitdiff
svc : svc_createMemoryBlock
authorsmea <smealum@gmail.com>
Tue, 28 Jan 2014 22:50:51 +0000 (23:50 +0100)
committersmea <smealum@gmail.com>
Tue, 28 Jan 2014 22:50:51 +0000 (23:50 +0100)
libctru/include/ctr/svc.h
libctru/source/svc.s

index 574ffe9be5e3da097cbf20897ecccd0262cd0852..30e9b572d31dd7e2bd274da94da2261286e65d28 100644 (file)
@@ -9,6 +9,7 @@
        Result svc_controlMemory(u32* outaddr, u32 addr0, u32 addr1, u32 size, u32 operation, u32 permissions); //(outaddr is usually the same as the input addr0)
        Result svc_createEvent(Handle* event, u8 resettype);
        Result svc_clearEvent(Handle handle);
+       Result svc_createMemoryBlock(Handle* memblock, u32 addr, u32 size, u32 mypermission, u32 otherpermission);
        Result svc_mapMemoryBlock(Handle memblock, u32 addr, u32 mypermissions, u32 otherpermission);
        Result svc_waitSynchronization1(Handle handle, s64 nanoseconds);
        Result svc_waitSynchronizationN(s32* out, Handle* handles, s32 handlecount, bool waitAll, s64 nanoseconds);
index 0c974ab6c0a4075f6143bfff0550aaa4565c3d7a..fdc5739cb4b3fe16db1e37a788288b013347d0a8 100644 (file)
@@ -56,6 +56,16 @@ svc_clearEvent:
        svc 0x19
        bx lr
 
+.global svc_createMemoryBlock
+.type svc_createMemoryBlock, %function
+svc_createMemoryBlock:
+       str r0, [sp, #-4]!
+       ldr r0, [sp, #4]
+       svc 0x1E
+       ldr r2, [sp], #4
+       str r1, [r2]
+       bx lr
+
 .global svc_mapMemoryBlock
 .type svc_mapMemoryBlock, %function
 svc_mapMemoryBlock: