6 static Handle iru_sharedmem_handle=0;
7 static u32 *iru_sharedmem = NULL;
8 static u32 iru_sharedmem_size = 0;
15 cmdbuf[0] = 0x00010000;
28 cmdbuf[0] = 0x00020000;
41 cmdbuf[0] = 0x00030042;
43 cmdbuf[2] = (size<<4) | 10;
57 cmdbuf[0] = 0x00040000;
70 cmdbuf[0] = 0x000500C2;
71 cmdbuf[1] = iru_sharedmem_size;
75 cmdbuf[5] = iru_sharedmem_handle;
88 cmdbuf[0] = 0x00060000;
93 *transfercount = cmdbuf[2];
103 cmdbuf[0] = 0x00090040;
104 cmdbuf[1] = (
u32)value;
117 cmdbuf[0] = 0x000A0000;
122 *out = (
u8)cmdbuf[2];
132 cmdbuf[0] = 0x000B0040;
146 cmdbuf[0] = 0x000C0000;
160 if(iru_handle)
return 0;
163 if(ret!=0)
return ret;
166 if(ret!=0)
return ret;
169 if(ret!=0)
return ret;
171 iru_sharedmem = sharedmem_addr;
172 iru_sharedmem_size = sharedmem_size;
181 if(iru_handle==0)
return 0;
184 if(ret!=0)
return ret;
190 iru_sharedmem_handle = 0;
205 if(ret!=0)
return ret;
219 if(ret!=0)
return ret;
224 if(ret!=0)
return ret;
226 if(buf)memcpy(buf, iru_sharedmem, size);
s32 svcCloseHandle(Handle handle)
Result srvGetServiceHandle(Handle *out, const char *name)
Result irucmd_WaitRecvTransfer(u32 *transfercount)
Result irucmd_StartRecvTransfer(u32 size, u8 flag)
Result irucmd_StartSendTransfer(u8 *buf, u32 size)
u32 * getThreadCommandBuffer(void)
Result IRU_SendData(u8 *buf, u32 size, u32 wait)
Result IRU_GetIRLEDRecvState(u32 *out)
Result IRU_RecvData(u8 *buf, u32 size, u8 flag, u32 *transfercount, u32 wait)
Result IRU_GetBitRate(u8 *out)
Result irucmd_Initialize()
Result IRU_Initialize(u32 *sharedmem_addr, u32 sharedmem_size)
Handle IRU_GetServHandle()
s32 svcSendSyncRequest(Handle session)
Result IRU_SetBitRate(u8 value)
Result irucmd_WaitSendTransfer()
Result IRU_SetIRLEDState(u32 value)
s32 svcCreateMemoryBlock(Handle *memblock, u32 addr, u32 size, MemPerm my_perm, MemPerm other_perm)