/// <summary> /// Starts execution of mupen64plus /// Does not return until the emulator stops /// </summary> private void ExecuteEmulator() { emulator_running = true; var cb = new StartupCallback(() => m64pStartupComplete.Set()); m64pCoreDoCommandPtr(m64p_command.M64CMD_EXECUTE, 0, Marshal.GetFunctionPointerForDelegate(cb)); emulator_running = false; cb.GetType(); }
public static StartupCallback Startup() { if (mLogger.RegisterCount == 0) { throw new CustomException("必须订阅日志:App.RegistLog,否则一些提示无法显示!"); } StartupCallback callback = new StartupCallback(); mBootstrap.OnStartupFinished = callback.OnFinished; mBootstrap.Startup(); return(callback); }