Run Ahead: Disable movies/netplay menus when enabled
+ Auto-disable runahead when playing NSF files
This commit is contained in:
parent
19b93dc343
commit
5b0c208984
3 changed files with 7 additions and 7 deletions
|
@ -761,7 +761,7 @@ void Console::Run()
|
|||
try {
|
||||
while(true) {
|
||||
stringstream runAheadState;
|
||||
bool useRunAhead = _settings->GetRunAheadFrames() > 0 && !_debugger && !_rewindManager->IsRewinding() && _settings->GetEmulationSpeed() > 0 && _settings->GetEmulationSpeed() <= 100;
|
||||
bool useRunAhead = _settings->GetRunAheadFrames() > 0 && !_debugger && !IsNsf() && !_rewindManager->IsRewinding() && _settings->GetEmulationSpeed() > 0 && _settings->GetEmulationSpeed() <= 100;
|
||||
if(useRunAhead) {
|
||||
RunFrameWithRunAhead(runAheadState);
|
||||
} else {
|
||||
|
|
|
@ -23,7 +23,7 @@ Set any speed value below to 0 to make Mesen run as fast as possible.
|
|||
|
||||
**Run Ahead**: Run ahead allows the reduction of input lag by the number of frames specified. CPU requirements increase proportionally with the number of run ahead frames specified.
|
||||
|
||||
* Run ahead is currently not compatible with movies or netplay.
|
||||
* Run ahead is currently not compatible with movies or netplay - the movies and netplay menus will be disabled if runahead is turned on.
|
||||
* **Note for speedrunners:** Using features such as run ahead to reduce lag typically counts as cheating for the purposes of speed running.
|
||||
|
||||
## Advanced Options ##
|
||||
|
|
|
@ -1141,6 +1141,7 @@ namespace Mesen.GUI.Forms
|
|||
this.BeginInvoke((MethodInvoker)(() => this.UpdateMenus()));
|
||||
} else {
|
||||
bool running = _emuThread != null;
|
||||
bool runAheadEnabled = ConfigManager.Config.EmulationInfo.RunAheadFrames > 0;
|
||||
|
||||
panelInfo.Visible = !running;
|
||||
|
||||
|
@ -1259,11 +1260,10 @@ namespace Mesen.GUI.Forms
|
|||
mnuInstallHdPack.Enabled = running;
|
||||
mnuHdPackEditor.Enabled = !netPlay && running;
|
||||
|
||||
mnuNetPlay.Enabled = !InteropEmu.IsNsf();
|
||||
if(running && InteropEmu.IsNsf()) {
|
||||
mnuPowerCycle.Enabled = false;
|
||||
mnuMovies.Enabled = mnuPlayMovie.Enabled = mnuStopMovie.Enabled = mnuRecordMovie.Enabled = false;
|
||||
}
|
||||
mnuNetPlay.Enabled = !InteropEmu.IsNsf() && !runAheadEnabled;
|
||||
|
||||
bool enableMovies = (!running || !InteropEmu.IsNsf()) && !runAheadEnabled;
|
||||
mnuMovies.Enabled = mnuPlayMovie.Enabled = mnuStopMovie.Enabled = mnuRecordMovie.Enabled = enableMovies;
|
||||
|
||||
mnuRegionAuto.Checked = ConfigManager.Config.Region == NesModel.Auto;
|
||||
mnuRegionNtsc.Checked = ConfigManager.Config.Region == NesModel.NTSC;
|
||||
|
|
Loading…
Add table
Reference in a new issue