extern bool usb_open(void) { xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/chkreg.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule("flash0:/kd/mgr.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/npdrm.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/semawm.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/usbstor.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/usbstormgr.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/usbstorms.prx", 0, NULL), 0, NULL, 0, NULL); xrKernelStartModule(kuKernelLoadModule ("flash0:/kd/usbstorboot.prx", 0, NULL), 0, NULL, 0, NULL); if (xrUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0) != 0) return false; if (xrUsbStart(PSP_USBSTOR_DRIVERNAME, 0, 0) != 0) return false; if (xrUsbstorBootSetCapacity(0x800000) != 0) return false; is_usb_inited = true; return true; }
/** * mode: 0 - OFW mode, 1 - CFW mode */ void start_reboot(int mode) { int modid, ret; int delay = 0; char modpath[80]; sprintf(modpath, "rebootex.prx"); modid = kuKernelLoadModule(modpath, 0, 0); if (modid >= 0) { ret = sceKernelStartModule(modid, sizeof(mode), &mode, 0, NULL); if (ret < 0) { printf("start module error 0x%08x\n", ret); delay = 5000000; } } else { printf("load module error 0x%08x\n", modid); delay = 5000000; } cleanup_exit(); sceKernelDelayThread(delay); sceKernelExitGame(); }
/** * Loads and starts a module * @param path Path to module to be loaded and started */ void LoadStartModule(char *path) { SceUID mod; mod = kuKernelLoadModule(path, 0, NULL); mod = sceKernelStartModule(mod, 0, NULL, NULL, NULL); }
SceUID LPP_UtilsLoadStartModule(const char *filename) { SceUID r = kuKernelLoadModule(filename, 0, null); if(r <= 0) return 0; int status; int res = sceKernelStartModule(r, 0, null, &status, null); if(res < 0) { return 0; } return (r); }