protected void InitializeAll() { try { InitializeLibRetro(); if (!LoadGame()) { return; } _synchronizationStrategy = new SynchronizationStrategy(_retroEmulator.TimingInfo.FPS, _settings.SynchronizationType); _soundOutput.SetSynchronizationStrategy(_synchronizationStrategy); InitializeSaveStateHandler(); _retroThread.IsInit = true; } catch (Exception ex) { Logger.Error("LibRetroFrontend: Error initialising Libretro core", ex); if (_retroEmulator != null) { _retroEmulator.Dispose(); _retroEmulator = null; } } }