/* Entry point */ extern "C" int Menu_Main(void) { //!******************************************************************* //! Initialize function pointers * //!******************************************************************* //! do OS (for acquire) and sockets first so we got logging InitOSFunctionPointers(); InitSocketFunctionPointers(); log_init("192.168.1.103"); log_print("Starting launcher\n"); InitFSFunctionPointers(); InitGX2FunctionPointers(); InitSysFunctionPointers(); InitVPadFunctionPointers(); InitPadScoreFunctionPointers(); InitAXFunctionPointers(); InitCurlFunctionPointers(); InstallExceptionHandler(); log_print("Function exports loaded\n"); //!******************************************************************* //! Initialize heap memory * //!******************************************************************* log_print("Initialize memory management\n"); memoryInitialize(); //!******************************************************************* //! Initialize FS * //!******************************************************************* log_printf("Mount SD partition\n"); mount_sd_fat("sd"); //!******************************************************************* //! Enter main application * //!******************************************************************* log_printf("Start main application\n"); Application::instance()->exec(); log_printf("Main application stopped\n"); Application::destroyInstance(); log_printf("Unmount SD\n"); unmount_sd_fat("sd"); log_printf("Release memory\n"); memoryRelease(); log_deinit(); return 0; }
static void fsdev_exit(void) { if (iosuhaxMount) { fatUnmount("sd:"); fatUnmount("usb:"); if (mcp_hook_fd >= 0) MCPHookClose(); else IOSUHAX_Close(); } else unmount_sd_fat("sd"); }
void DeInit_SD_USB() { DEBUG_FUNCTION_LINE("Called this function.\n"); if(gSDInitDone & WUPS_SDUSB_MOUNTED_FAKE) { DEBUG_FUNCTION_LINE("Unmounting fake\n"); unmount_fake(); gSDInitDone &= ~WUPS_SDUSB_MOUNTED_FAKE; } if(gSDInitDone & WUPS_SDUSB_MOUNTED_OS_SD) { DEBUG_FUNCTION_LINE("Unmounting OS SD\n"); unmount_sd_fat("sd"); gSDInitDone &= ~WUPS_SDUSB_MOUNTED_OS_SD; } if(gSDInitDone & WUPS_SD_MOUNTED_LIBFAT) { DEBUG_FUNCTION_LINE("Unmounting LIBFAT SD\n"); unmount_libfat("sd"); gSDInitDone &= ~WUPS_SD_MOUNTED_LIBFAT; } if(gSDInitDone & WUPS_USB_MOUNTED_LIBFAT) { DEBUG_FUNCTION_LINE("Unmounting LIBFAT USB\n"); unmount_libfat("usb"); gSDInitDone &= ~WUPS_USB_MOUNTED_LIBFAT; } if(gSDInitDone & WUPS_USB_MOUNTED_LIBNTFS) { DEBUG_FUNCTION_LINE("Unmounting LIBNTFS USB\n"); unmountAllNTFS(); gSDInitDone &= ~WUPS_USB_MOUNTED_LIBNTFS; } if(gSDInitDone & WUPS_SDUSB_LIBIOSU_LOADED) { DEBUG_FUNCTION_LINE("Calling IOSUHAX_Close\n"); IOSUHAX_Close(); gSDInitDone &= ~WUPS_SDUSB_LIBIOSU_LOADED; } deleteDevTabsNames(); if(gSDInitDone != WUPS_SDUSB_MOUNTED_NONE) { DEBUG_FUNCTION_LINE("WARNING. Some devices are still mounted.\n"); } DEBUG_FUNCTION_LINE("Function end.\n"); }
int main(int argc, char **argv) { #else int __entry_menu(int argc, char **argv) { InitFunctionPointers(); #endif #if 1 setup_os_exceptions(); #else InstallExceptionHandler(); #endif socket_lib_init(); #if defined(PC_DEVELOPMENT_IP_ADDRESS) && defined(PC_DEVELOPMENT_TCP_PORT) log_init(PC_DEVELOPMENT_IP_ADDRESS, PC_DEVELOPMENT_TCP_PORT); #endif devoptab_list[STD_OUT] = &dotab_stdout; devoptab_list[STD_ERR] = &dotab_stdout; memoryInitialize(); mount_sd_fat("sd"); VPADInit(); verbosity_enable(); DEBUG_VAR(argc); DEBUG_STR(argv[0]); DEBUG_STR(argv[1]); #if 0 int argc_ = 2; // char* argv_[] = {WIIU_SD_PATH "retroarch/retroarch.elf", WIIU_SD_PATH "rom.nes", NULL}; char* argv_[] = {WIIU_SD_PATH "retroarch/retroarch.elf", WIIU_SD_PATH "rom.sfc", NULL}; rarch_main(argc_, argv_, NULL); #else rarch_main(argc, argv, NULL); #endif // int frames = 0; do { unsigned sleep_ms = 0; int ret = runloop_iterate(&sleep_ms); if (ret == 1 && sleep_ms > 0) retro_sleep(sleep_ms); task_queue_ctl(TASK_QUEUE_CTL_WAIT, NULL); if (ret == -1) break; }while(1); // }while(frames++ < 300); main_exit(NULL); unmount_sd_fat("sd"); memoryRelease(); fflush(stdout); fflush(stderr); #if defined(PC_DEVELOPMENT_IP_ADDRESS) && defined(PC_DEVELOPMENT_TCP_PORT) log_deinit(); #endif return 0; }
/* Entry point */ extern "C" int Menu_Main(void) { //!******************************************************************* //! Initialize function pointers * //!******************************************************************* //! do OS (for acquire) and sockets first so we got logging InitOSFunctionPointers(); InitSocketFunctionPointers(); log_init(LOADIINE_LOGGER_IP); log_print("Starting Loadiine GX2 " LOADIINE_VERSION "\n"); InitFSFunctionPointers(); InitGX2FunctionPointers(); InitSysFunctionPointers(); InitVPadFunctionPointers(); InitPadScoreFunctionPointers(); InitAXFunctionPointers(); InitCurlFunctionPointers(); log_print("Function exports loaded\n"); //!******************************************************************* //! Initialize our kernel variables * //!******************************************************************* log_printf("Setup kernel variables\n"); SetupKernelCallback(); //!******************************************************************* //! Initialize heap memory * //!******************************************************************* log_print("Initialize memory management\n"); memoryInitialize(); //!******************************************************************* //! Initialize FS * //!******************************************************************* log_printf("Mount SD partition\n"); mount_sd_fat("sd"); //!******************************************************************* //! Patch Functions * //!******************************************************************* // We need to check if padcon should be enabled before hooking the functions log_printf("Load settings\n"); CSettings::instance()->Load(); int padmode = 0; switch(CSettings::getValueAsU8(CSettings::PadconMode)) { case PADCON_ENABLED: { padmode = 1; log_printf("Padcon enabled\n"); break; } default: break; } log_printf("Patch FS and loader functions\n"); PatchMethodHooks(padmode); //!******************************************************************* //! Setup exception handler * //!******************************************************************* log_printf("Setup exception handler\n"); setup_os_exceptions(); //!******************************************************************* //! Enter main application * //!******************************************************************* log_printf("Start main application\n"); Application::instance()->exec(); log_printf("Main application stopped\n"); Application::destroyInstance(); CSettings::instance()->Save(); CSettings::destroyInstance(); log_printf("Unmount SD\n"); unmount_sd_fat("sd"); log_printf("Release memory\n"); memoryRelease(); log_printf("Loadiine peace out...\n"); log_deinit(); return 0; }
/* Entry point */ extern "C" int Menu_Main(void) { //!******************************************************************* //! Initialize function pointers * //!******************************************************************* //! do OS (for acquire) and sockets first so we got logging InitOSFunctionPointers(); InitSocketFunctionPointers(); log_init(LOADIINE_LOGGER_IP); log_print("Starting Loadiine GX2 " LOADIINE_VERSION "\n"); InitFSFunctionPointers(); InitGX2FunctionPointers(); InitSysFunctionPointers(); InitVPadFunctionPointers(); InitPadScoreFunctionPointers(); InitAXFunctionPointers(); InitCurlFunctionPointers(); log_print("Function exports loaded\n"); //!******************************************************************* //! Initialize our kernel variables * //!******************************************************************* log_printf("Setup kernel variables\n"); SetupKernelCallback(); //!******************************************************************* //! Initialize heap memory * //!******************************************************************* log_print("Initialize memory management\n"); memoryInitialize(); //!******************************************************************* //! Initialize FS * //!******************************************************************* log_printf("Mount SD partition\n"); mount_sd_fat("sd"); //!******************************************************************* //! Patch Functions * //!******************************************************************* log_printf("Patch FS and loader functions\n"); PatchMethodHooks(); PatchSDK(); //!******************************************************************* //! Setup exception handler * //!******************************************************************* log_printf("Setup exception handler\n"); setup_os_exceptions(); //!******************************************************************* //! Enter main application * //!******************************************************************* log_printf("Start main application\n"); Application::instance()->exec(); log_printf("Main application stopped\n"); Application::destroyInstance(); log_printf("Unmount SD\n"); unmount_sd_fat("sd"); log_printf("Release memory\n"); memoryRelease(); log_printf("Loadiine peace out...\n"); log_deinit(); return 0; }
/* Entry point */ extern "C" int Menu_Main(void) { //!******************************************************************* //! Initialize function pointers * //!******************************************************************* //! do OS (for acquire) and sockets first so we got logging InitOSFunctionPointers(); InitSocketFunctionPointers(); log_init(LOADIINE_LOGGER_IP); log_print("Starting Loadiine GX2 " LOADIINE_VERSION "\n"); InitFSFunctionPointers(); InitGX2FunctionPointers(); InitSysFunctionPointers(); InitVPadFunctionPointers(); InitPadScoreFunctionPointers(); InitAXFunctionPointers(); InitCurlFunctionPointers(); InitAocFunctionPointers(); InitACPFunctionPointers(); log_printf("Function exports loaded\n"); //!******************************************************************* //! Initialize our kernel variables * //!******************************************************************* log_printf("Setup kernel variables\n"); SetupKernelCallback(); //!******************************************************************* //! Initialize heap memory * //!******************************************************************* log_print("Initialize memory management\n"); memoryInitialize(); //!******************************************************************* //! Initialize FS * //!******************************************************************* log_printf("Mount SD partition\n"); mount_sd_fat("sd"); //!******************************************************************* //! Read Configs for HID support * //!******************************************************************* if(gConfig_done == HID_INIT_DONE) { log_print("Reading config files from SD Card\n"); ConfigReader::getInstance(); //doing the magic automatically ConfigReader::destroyInstance(); log_print("Done with reading config files from SD Card\n"); gConfig_done = HID_SDCARD_READ; } //!******************************************************************* //! Patch Functions * //!******************************************************************* log_printf("Patch FS and loader functions\n"); ApplyPatches(); PatchSDK(); //!******************************************************************* //! Setup exception handler * //!******************************************************************* log_printf("Setup exception handler\n"); setup_os_exceptions(); //!******************************************************************* //! Enter main application * //!******************************************************************* log_printf("Start main application\n"); Application::instance()->exec(); log_printf("Main application stopped\n"); Application::destroyInstance(); log_printf("Unmount SD\n"); unmount_sd_fat("sd"); log_printf("Release memory\n"); memoryRelease(); log_printf("Loadiine peace out...\n"); //log_deinit(); return 0; }