int main() { getSrvHandle(&srvHandle); aptInit(); gspGpuInit(); Handle hidHandle; Handle hidMemHandle; srv_getServiceHandle(srvHandle, &hidHandle, "hid:USER"); HIDUSER_GetInfo(hidHandle, &hidMemHandle); svc_mapMemoryBlock(hidMemHandle, 0x10000000, 0x1, 0x10000000); HIDUSER_Init(hidHandle); while(1) { u32 PAD=((u32*)0x10000000)[7]; renderEffect(); swapBuffers(); copyBuffer(); u32 regData=PAD|0x01000000; GSPGPU_WriteHWRegs(gspGpuHandle, 0x202A04, (u8*)®Data, 4); svc_sleepThread(1000000000); } svc_exitProcess(); return 0; }
void hidInit(u32* sharedMem) { if(!sharedMem)sharedMem=(u32*)HID_SHAREDMEM_DEFAULT; srv_getServiceHandle(NULL, &hidHandle, "hid:USER"); HIDUSER_GetInfo(NULL, &hidMemHandle); hidSharedMem=sharedMem; svc_mapMemoryBlock(hidMemHandle, (u32)hidSharedMem, 0x1, 0x10000000); HIDUSER_Init(NULL); }