// 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()); } } }
public void Capture(int frame) { if (!RewindActive) { return; } if (_rewindThread == null || frame % RewindFrequency != 0) { return; } _rewindThread.Capture(_statableCore.SaveStateBinary()); }
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()); }
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()); }