diff --git a/src/BizHawk.Client.EmuHawk/MainForm.Events.cs b/src/BizHawk.Client.EmuHawk/MainForm.Events.cs index f1a7bbda46..b63e698446 100644 --- a/src/BizHawk.Client.EmuHawk/MainForm.Events.cs +++ b/src/BizHawk.Client.EmuHawk/MainForm.Events.cs @@ -950,7 +950,12 @@ namespace BizHawk.Client.EmuHawk private void RewindOptionsMenuItem_Click(object sender, EventArgs e) { if (!Emulator.HasSavestates()) return; - using RewindConfig form = new(Config, CreateRewinder, () => this.Rewinder, Emulator.AsStatable()); + using RewindConfig form = new( + Config, + PlatformFrameRates.GetFrameRate(Emulator.SystemId, Emulator.HasRegions() && Emulator.AsRegionable().Region is DisplayType.PAL), // why isn't there a helper for this + Emulator.AsStatable(), + CreateRewinder, + () => this.Rewinder); if (this.ShowDialogWithTempMute(form).IsOk()) AddOnScreenMessage("Rewind and State settings saved"); } diff --git a/src/BizHawk.Client.EmuHawk/config/RewindConfig.cs b/src/BizHawk.Client.EmuHawk/config/RewindConfig.cs index b8764c9868..cf292a9760 100755 --- a/src/BizHawk.Client.EmuHawk/config/RewindConfig.cs +++ b/src/BizHawk.Client.EmuHawk/config/RewindConfig.cs @@ -12,15 +12,23 @@ namespace BizHawk.Client.EmuHawk private readonly Config _config; + private readonly double _framerate; + private readonly Action _recreateRewinder; private readonly Func _getRewinder; private readonly IStatable _statableCore; - public RewindConfig(Config config, Action recreateRewinder, Func getRewinder, IStatable statableCore) + public RewindConfig( + Config config, + double framerate, + IStatable statableCore, + Action recreateRewinder, + Func getRewinder) { _config = config; + _framerate = framerate; _recreateRewinder = recreateRewinder; _getRewinder = getRewinder; _statableCore = statableCore; @@ -150,7 +158,7 @@ namespace BizHawk.Client.EmuHawk estFrames = bufferSize / (double) _avgStateSize; } ApproxFramesLabel.Text = $"{estFrames:n0} frames"; - EstTimeLabel.Text = $"{estFrames / 3600.0:n} minutes"; + EstTimeLabel.Text = $"{estFrames / _framerate / 60.0:n} minutes"; } private void BufferSizeUpDown_ValueChanged(object sender, EventArgs e)