Use IPC helpers for cfgu

This commit is contained in:
Lectem 2015-09-09 14:34:53 -04:00
parent 383acf6575
commit 375f5e497d

View File

@ -3,6 +3,7 @@
#include <3ds/svc.h>
#include <3ds/srv.h>
#include <3ds/services/cfgu.h>
#include <3ds/ipc.h>
static Handle CFGU_handle = 0;
@ -24,7 +25,7 @@ Result CFGU_SecureInfoGetRegion(u8* region)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00020000;
cmdbuf[0] = IPC_MakeHeader(0x2,0,0); // 0x20000
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -38,7 +39,7 @@ Result CFGU_GenHashConsoleUnique(u32 appIDSalt, u64* hash)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00030040;
cmdbuf[0] = IPC_MakeHeader(0x3,1,0); // 0x30040
cmdbuf[1] = appIDSalt;
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -54,7 +55,7 @@ Result CFGU_GetRegionCanadaUSA(u8* value)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00040000;
cmdbuf[0] = IPC_MakeHeader(0x4,0,0); // 0x40000
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -68,7 +69,7 @@ Result CFGU_GetSystemModel(u8* model)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00050000;
cmdbuf[0] = IPC_MakeHeader(0x5,0,0); // 0x50000
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -82,7 +83,7 @@ Result CFGU_GetModelNintendo2DS(u8* value)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00060000;
cmdbuf[0] = IPC_MakeHeader(0x6,0,0); // 0x60000
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -96,7 +97,7 @@ Result CFGU_GetCountryCodeString(u16 code, u16* string)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00090040;
cmdbuf[0] = IPC_MakeHeader(0x9,1,0); // 0x90040
cmdbuf[1] = (u32)code;
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -111,7 +112,7 @@ Result CFGU_GetCountryCodeID(u16 string, u16* code)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x000A0040;
cmdbuf[0] = IPC_MakeHeader(0xA,1,0); // 0xA0040
cmdbuf[1] = (u32)string;
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;
@ -128,10 +129,10 @@ Result CFGU_GetConfigInfoBlk2(u32 size, u32 blkID, u8* outData)
Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = 0x00010082;
cmdbuf[0] = IPC_MakeHeader(0x1,2,2); // 0x10082
cmdbuf[1] = size;
cmdbuf[2] = blkID;
cmdbuf[3] = (size<<4)|12;
cmdbuf[3] = IPC_Desc_Buffer(size,IPC_BUFFER_W);
cmdbuf[4] = (u32)outData;
if((ret = svcSendSyncRequest(CFGU_handle))!=0)return ret;