diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs index c347ae9f43..65b08b99b6 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs @@ -1021,7 +1021,12 @@ namespace BizHawk.Client.EmuHawk TasView.SelectedRows.Count() == 1 && TasView.SelectedRows.Contains(Emulator.Frame) && !CurrentTasMovie.StartsFromSaveRam; - StartANewProjectFromSaveRamMenuItem.Visible = TasView.SelectedRows.Count() == 1 && SaveRamEmulator != null; + + StartANewProjectFromSaveRamMenuItem.Visible = + TasView.SelectedRows.Count() == 1 + && SaveRamEmulator != null + && !CurrentTasMovie.StartsFromSavestate; + StartFromNowSeparator.Visible =StartNewProjectFromNowMenuItem.Visible || StartANewProjectFromSaveRamMenuItem.Visible; RemoveMarkersContextMenuItem.Enabled = CurrentTasMovie.Markers.Any(m => TasView.SelectedRows.Contains(m.Frame)); // Disable the option to remove markers if no markers are selected (FCEUX does this). CancelSeekContextMenuItem.Enabled = GlobalWin.MainForm.PauseOnFrame.HasValue; @@ -1057,6 +1062,26 @@ namespace BizHawk.Client.EmuHawk } } + private void StartANewProjectFromSaveRamMenuItem_Click(object sender, EventArgs e) + { + if (TasView.SelectedRows.Count() == 1 && + !CurrentTasMovie.StartsFromSavestate && + SaveRamEmulator != null) + { + if (AskSaveChanges()) + { + int index = TasView.SelectedRows.First(); + GoToFrame(index); + + TasMovie newProject = CurrentTasMovie.ConvertToSaveRamAnchoredMovie( + SaveRamEmulator.CloneSaveRam()); + + GlobalWin.MainForm.PauseEmulator(); + LoadFile(new FileInfo(newProject.Filename)); + } + } + } + #endregion } } diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs index 48162df17c..07755e02ad 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs @@ -914,27 +914,6 @@ namespace BizHawk.Client.EmuHawk Settings.BranchMarkerSplitDistance = BranchesMarkersSplit.SplitterDistance; } - private void StartANewProjectFromSaveRamMenuItem_Click(object sender, EventArgs e) - { - if (TasView.SelectedRows.Count() == 1 && - !CurrentTasMovie.StartsFromSavestate && - !CurrentTasMovie.StartsFromSaveRam && - SaveRamEmulator != null) - { - if (AskSaveChanges()) - { - int index = TasView.SelectedRows.First(); - GoToFrame(index); - - TasMovie newProject = CurrentTasMovie.ConvertToSaveRamAnchoredMovie( - (byte[])SaveRamEmulator.CloneSaveRam()); - - GlobalWin.MainForm.PauseEmulator(); - LoadFile(new FileInfo(newProject.Filename)); - } - } - } - private void TasView_CellDropped(object sender, InputRoll.CellEventArgs e) { if (e.NewCell != null && e.NewCell.RowIndex.HasValue &&