示例#1
0
        // TOOD: this should not be parameterless?! It is only possible due to passing a static context in
        public void CaptureRewindState()
        {
            if (!IsRewindEnabledAtAll)
            {
                return;
            }

            if (Global.Emulator.HasSavestates())
            {
                if (_rewindImpossible)
                {
                    return;
                }

                if (_lastState == null)
                {
                    DoRewindSettings();
                }

                // log a frame
                if (_lastState != null && Global.Emulator.Frame % _rewindFrequency == 0)
                {
                    _rewindThread.Capture(Global.Emulator.AsStatable().SaveStateBinary());
                }
            }
        }
示例#2
0
        public void Capture(int frame)
        {
            if (!RewindActive)
            {
                return;
            }

            if (_rewindThread == null || frame % RewindFrequency != 0)
            {
                return;
            }

            _rewindThread.Capture(_statableCore.SaveStateBinary());
        }
示例#3
0
        public void Capture()
        {
            if (!RewindActive)
            {
                return;
            }

            if (_rewindThread == null)
            {
                Initialize();
            }

            if (_rewindThread == null || Global.Emulator.Frame % RewindFrequency != 0)
            {
                return;
            }

            _rewindThread.Capture(Global.Emulator.AsStatable().SaveStateBinary());
        }
示例#4
0
        public void Capture()
        {
            if (!IsRewindEnabledAtAll || !Global.Emulator.HasSavestates())
            {
                return;
            }

            if (_rewindThread == null)
            {
                Initialize();
            }

            if (_rewindThread == null || Global.Emulator.Frame % _rewindFrequency != 0)
            {
                return;
            }

            _rewindThread.Capture(Global.Emulator.AsStatable().SaveStateBinary());
        }