]> Chaos Git - corbenik/ctrulib.git/commitdiff
Use IPC helpers for cfgnor
authorLectem <lectem@gmail.com>
Wed, 9 Sep 2015 18:31:45 +0000 (14:31 -0400)
committerLectem <lectem@gmail.com>
Sat, 3 Oct 2015 10:56:22 +0000 (06:56 -0400)
libctru/source/services/cfgnor.c

index e467655209a5edc162ed5c592158321d4514529f..c21c830b79376881adf48fd6e613dcbb2dd9bea4 100644 (file)
@@ -3,6 +3,7 @@
 #include <3ds/svc.h>
 #include <3ds/srv.h>
 #include <3ds/services/cfgnor.h>
+#include <3ds/ipc.h>
 
 Handle CFGNOR_handle = 0;
 
@@ -14,7 +15,7 @@ Result CFGNOR_Initialize(u8 value)
        ret = srvGetServiceHandle(&CFGNOR_handle, "cfg:nor");
        if(ret!=0)return ret;
 
-       cmdbuf[0] = 0x00010040;
+       cmdbuf[0] = IPC_MakeHeader(0x1,1,0); // 0x10040
        cmdbuf[1] = (u32)value;
 
        if((ret = svcSendSyncRequest(CFGNOR_handle))!=0)return ret;
@@ -28,7 +29,7 @@ Result CFGNOR_Shutdown()
        Result ret = 0;
        u32 *cmdbuf = getThreadCommandBuffer();
 
-       cmdbuf[0] = 0x00020000;
+       cmdbuf[0] = IPC_MakeHeader(0x2,0,0); // 0x20000
 
        if((ret = svcSendSyncRequest(CFGNOR_handle))!=0)return ret;
        ret = (Result)cmdbuf[1];
@@ -44,10 +45,10 @@ Result CFGNOR_ReadData(u32 offset, u32 *buf, u32 size)
        Result ret = 0;
        u32 *cmdbuf = getThreadCommandBuffer();
 
-       cmdbuf[0] = 0x00050082;
+       cmdbuf[0] = IPC_MakeHeader(0x5,2,2); // 0x50082
        cmdbuf[1] = offset;
        cmdbuf[2] = size;
-       cmdbuf[3] = (size<<4) | 12;
+       cmdbuf[3] = IPC_Desc_Buffer(size,IPC_BUFFER_W);
        cmdbuf[4] = (u32)buf;
 
        if((ret = svcSendSyncRequest(CFGNOR_handle))!=0)return ret;
@@ -61,10 +62,10 @@ Result CFGNOR_WriteData(u32 offset, u32 *buf, u32 size)
        u32 ret = 0;
        u32 *cmdbuf = getThreadCommandBuffer();
 
-       cmdbuf[0] = 0x00060082;
+       cmdbuf[0] = IPC_MakeHeader(0x6,2,2); // 0x60082
        cmdbuf[1] = offset;
        cmdbuf[2] = size;
-       cmdbuf[3] = (size<<4) | 10;
+       cmdbuf[3] = IPC_Desc_Buffer(size,IPC_BUFFER_R);
        cmdbuf[4] = (u32)buf;
 
        if((ret = svcSendSyncRequest(CFGNOR_handle))!=0)return ret;