MCPcopy Create free account
hub / github.com/devkitPro/libctru / FSREG_GetProgramInfo

Function FSREG_GetProgramInfo

libctru/source/services/fsreg.c:66–85  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

64}
65
66Result FSREG_GetProgramInfo(ExHeader_Info *exheaderInfos, u32 maxNumEntries, u64 programHandle)
67{
68 u32 *cmdbuf = getThreadCommandBuffer();
69 u32 *staticbufs = getThreadStaticBuffers();
70
71 cmdbuf[0] = IPC_MakeHeader(0x403, 3, 0); // 0x40300C0
72 cmdbuf[1] = maxNumEntries;
73 cmdbuf[2] = (u32)programHandle;
74 cmdbuf[3] = (u32)(programHandle >> 32);
75
76 u32 staticbufscpy[2] = {staticbufs[0], staticbufs[1]};
77 staticbufs[0] = IPC_Desc_StaticBuffer(maxNumEntries * sizeof(ExHeader_Info), 0);
78 staticbufs[1] = (u32)exheaderInfos;
79
80 Result ret = svcSendSyncRequest(fsRegHandle);
81
82 staticbufs[0] = staticbufscpy[0];
83 staticbufs[1] = staticbufscpy[1];
84 return R_FAILED(ret) ? ret : cmdbuf[1];
85}
86
87Result FSREG_LoadProgram(u64 *programHandle, const FS_ProgramInfo *programInfo)
88{

Callers

nothing calls this directly

Calls 4

getThreadCommandBufferFunction · 0.85
getThreadStaticBuffersFunction · 0.85
IPC_MakeHeaderFunction · 0.85
IPC_Desc_StaticBufferFunction · 0.85

Tested by

no test coverage detected