예제 #1
0
        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;
                }
            }
        }