diff --git a/controller_patcher.c b/controller_patcher.c index 3c89119..91888c7 100644 --- a/controller_patcher.c +++ b/controller_patcher.c @@ -5,6 +5,8 @@ #include "controller_patcher.h" #include "dynamic_libs/os_functions.h" #include "dynamic_libs/sys_functions.h" +#include "dynamic_libs/syshid_functions.h" +#include "dynamic_libs/socket_functions.h" #include "cp_retain_vars.h" #include "utils/logger.h" @@ -14,6 +16,9 @@ void setConfigValue(u8 * dest, u8 first, u8 second){ } void init_config_controller(){ + InitOSFunctionPointers(); + InitSysHIDFunctionPointers(); + InitVPadFunctionPointers(); if(!config_done){ config_done = 1; memset(config_controller,CONTROLLER_PATCHER_INVALIDVALUE,sizeof(config_controller)); // Init / Invalid everything @@ -257,6 +262,15 @@ void init_config_controller(){ }else{ log_print("Config already done!\n"); } + + if(!gHIDSetupDone){ + HIDSetup(); + gHIDSetupDone = 1; + } + + if(!gHIDAttached){ + HIDAddClient(&gHIDClient, my_attach_cb); + } } void deinit_config_controller(){