diff --git a/src/BizHawk.Client.EmuHawk/MainForm.cs b/src/BizHawk.Client.EmuHawk/MainForm.cs index f9249cb0a1..db9eebe215 100644 --- a/src/BizHawk.Client.EmuHawk/MainForm.cs +++ b/src/BizHawk.Client.EmuHawk/MainForm.cs @@ -3116,15 +3116,8 @@ namespace BizHawk.Client.EmuHawk if (PauseOnFrame.Value == Emulator.Frame) { PauseEmulator(); - if (Tools.IsLoaded()) - { - Tools.TAStudio.StopSeeking(); - HoldFrameAdvance = false; - } - else - { - PauseOnFrame = null; - } + if (Tools.IsLoaded()) Tools.TAStudio.StopSeeking(); + else PauseOnFrame = null; } else if (Tools.IsLoaded() && Tools.TAStudio.LastPositionFrame == Emulator.Frame diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs index 76f6c1752d..cd5f4551f0 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs @@ -69,11 +69,11 @@ namespace BizHawk.Client.EmuHawk this.CutMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.toolStripSeparator8 = new BizHawk.WinForms.Controls.ToolStripSeparatorEx(); this.ClearFramesMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); - this.InsertFrameMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.DeleteFramesMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); + this.InsertFrameMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); + this.InsertNumFramesMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.CloneFramesMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.CloneFramesXTimesMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); - this.InsertNumFramesMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.toolStripSeparator6 = new BizHawk.WinForms.Controls.ToolStripSeparatorEx(); this.TruncateMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.ClearGreenzoneMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); @@ -89,7 +89,6 @@ namespace BizHawk.Client.EmuHawk this.AutosaveAsBackupFileMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.BackupPerFileSaveMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.toolStripSeparator9 = new BizHawk.WinForms.Controls.ToolStripSeparatorEx(); - this.AutoadjustInputMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.applyPatternToPaintedInputToolStripMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.onlyOnAutoFireColumnsToolStripMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.SingleClickAxisEditMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); @@ -176,11 +175,11 @@ namespace BizHawk.Client.EmuHawk this.cutToolStripMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.separateToolStripMenuItem = new BizHawk.WinForms.Controls.ToolStripSeparatorEx(); this.ClearContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); - this.InsertFrameContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.DeleteFramesContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); + this.InsertFrameContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); + this.InsertNumFramesContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.CloneContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.CloneXTimesContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); - this.InsertNumFramesContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.toolStripSeparator18 = new BizHawk.WinForms.Controls.ToolStripSeparatorEx(); this.TruncateContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); this.BranchContextMenuItem = new BizHawk.WinForms.Controls.ToolStripMenuItemEx(); @@ -431,15 +430,21 @@ namespace BizHawk.Client.EmuHawk this.ClearFramesMenuItem.Text = "Clear"; this.ClearFramesMenuItem.Click += new System.EventHandler(this.ClearFramesMenuItem_Click); // + // DeleteFramesMenuItem + // + this.DeleteFramesMenuItem.Text = "&Delete"; + this.DeleteFramesMenuItem.Click += new System.EventHandler(this.DeleteFramesMenuItem_Click); + // // InsertFrameMenuItem // this.InsertFrameMenuItem.Text = "&Insert"; this.InsertFrameMenuItem.Click += new System.EventHandler(this.InsertFrameMenuItem_Click); // - // DeleteFramesMenuItem + // InsertNumFramesMenuItem // - this.DeleteFramesMenuItem.Text = "&Delete"; - this.DeleteFramesMenuItem.Click += new System.EventHandler(this.DeleteFramesMenuItem_Click); + this.InsertNumFramesMenuItem.ShortcutKeyDisplayString = ""; + this.InsertNumFramesMenuItem.Text = "Insert # of Frames"; + this.InsertNumFramesMenuItem.Click += new System.EventHandler(this.InsertNumFramesMenuItem_Click); // // CloneFramesMenuItem // @@ -451,12 +456,6 @@ namespace BizHawk.Client.EmuHawk this.CloneFramesXTimesMenuItem.Text = "Clone # Times"; this.CloneFramesXTimesMenuItem.Click += new System.EventHandler(this.CloneFramesXTimesMenuItem_Click); // - // InsertNumFramesMenuItem - // - this.InsertNumFramesMenuItem.ShortcutKeyDisplayString = ""; - this.InsertNumFramesMenuItem.Text = "Insert # of Frames"; - this.InsertNumFramesMenuItem.Click += new System.EventHandler(this.InsertNumFramesMenuItem_Click); - // // TruncateMenuItem // this.TruncateMenuItem.Text = "&Truncate Movie"; @@ -483,7 +482,6 @@ namespace BizHawk.Client.EmuHawk this.autosaveToolStripMenuItem, this.BackupPerFileSaveMenuItem, this.toolStripSeparator9, - this.AutoadjustInputMenuItem, this.applyPatternToPaintedInputToolStripMenuItem, this.onlyOnAutoFireColumnsToolStripMenuItem, this.SingleClickAxisEditMenuItem, @@ -539,12 +537,6 @@ namespace BizHawk.Client.EmuHawk this.BackupPerFileSaveMenuItem.Text = "Backup Per File Save"; this.BackupPerFileSaveMenuItem.Click += new System.EventHandler(this.BackupPerFileSaveMenuItem_Click); // - // AutoadjustInputMenuItem - // - this.AutoadjustInputMenuItem.CheckOnClick = true; - this.AutoadjustInputMenuItem.Text = "Auto-adjust Input according to Lag"; - this.AutoadjustInputMenuItem.Click += new System.EventHandler(this.AutoadjustInputMenuItem_Click); - // // applyPatternToPaintedInputToolStripMenuItem // this.applyPatternToPaintedInputToolStripMenuItem.CheckOnClick = true; @@ -925,7 +917,7 @@ namespace BizHawk.Client.EmuHawk // MessageStatusLabel // this.MessageStatusLabel.Name = "MessageStatusLabel"; - this.MessageStatusLabel.Size = new System.Drawing.Size(103, 17); + this.MessageStatusLabel.Size = new System.Drawing.Size(110, 17); this.MessageStatusLabel.Text = "TAStudio engaged"; // // ProgressBar @@ -936,7 +928,7 @@ namespace BizHawk.Client.EmuHawk // toolStripStatusLabel2 // this.toolStripStatusLabel2.Name = "toolStripStatusLabel2"; - this.toolStripStatusLabel2.Size = new System.Drawing.Size(269, 17); + this.toolStripStatusLabel2.Size = new System.Drawing.Size(262, 17); this.toolStripStatusLabel2.Spring = true; // // SplicerStatusLabel @@ -995,7 +987,7 @@ namespace BizHawk.Client.EmuHawk this.StartNewProjectFromNowMenuItem, this.StartANewProjectFromSaveRamMenuItem}); this.RightClickMenu.Name = "RightClickMenu"; - this.RightClickMenu.Size = new System.Drawing.Size(253, 524); + this.RightClickMenu.Size = new System.Drawing.Size(275, 502); this.RightClickMenu.Opened += new System.EventHandler(this.RightClickMenu_Opened); // // SetMarkersContextMenuItem @@ -1062,15 +1054,20 @@ namespace BizHawk.Client.EmuHawk this.ClearContextMenuItem.Text = "Clear"; this.ClearContextMenuItem.Click += new System.EventHandler(this.ClearFramesMenuItem_Click); // + // DeleteFramesContextMenuItem + // + this.DeleteFramesContextMenuItem.Text = "Delete"; + this.DeleteFramesContextMenuItem.Click += new System.EventHandler(this.DeleteFramesMenuItem_Click); + // // InsertFrameContextMenuItem // this.InsertFrameContextMenuItem.Text = "Insert"; this.InsertFrameContextMenuItem.Click += new System.EventHandler(this.InsertFrameMenuItem_Click); // - // DeleteFramesContextMenuItem + // InsertNumFramesContextMenuItem // - this.DeleteFramesContextMenuItem.Text = "Delete"; - this.DeleteFramesContextMenuItem.Click += new System.EventHandler(this.DeleteFramesMenuItem_Click); + this.InsertNumFramesContextMenuItem.Text = "Insert # of Frames"; + this.InsertNumFramesContextMenuItem.Click += new System.EventHandler(this.InsertNumFramesMenuItem_Click); // // CloneContextMenuItem // @@ -1082,11 +1079,6 @@ namespace BizHawk.Client.EmuHawk this.CloneXTimesContextMenuItem.Text = "Clone # Times"; this.CloneXTimesContextMenuItem.Click += new System.EventHandler(this.CloneFramesXTimesMenuItem_Click); // - // InsertNumFramesContextMenuItem - // - this.InsertNumFramesContextMenuItem.Text = "Insert # of Frames"; - this.InsertNumFramesContextMenuItem.Click += new System.EventHandler(this.InsertNumFramesMenuItem_Click); - // // TruncateContextMenuItem // this.TruncateContextMenuItem.Text = "Truncate Movie"; @@ -1242,7 +1234,6 @@ namespace BizHawk.Client.EmuHawk private BizHawk.WinForms.Controls.ToolStripSeparatorEx toolStripSeparator10; private BizHawk.WinForms.Controls.ToolStripMenuItemEx aboutToolStripMenuItem; private BizHawk.WinForms.Controls.ToolStripMenuItemEx SetMaxUndoLevelsMenuItem; - private BizHawk.WinForms.Controls.ToolStripMenuItemEx AutoadjustInputMenuItem; private BizHawk.WinForms.Controls.ToolStripMenuItemEx UseInputKeysItem; private BizHawk.WinForms.Controls.ToolStripMenuItemEx BindMarkersToInputMenuItem; private BizHawk.WinForms.Controls.ToolStripMenuItemEx OldControlSchemeForBranchesMenuItem; diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs index 7b1f8f124b..9083965268 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs @@ -72,7 +72,7 @@ namespace BizHawk.Client.EmuHawk var refreshNeeded = false; if (Settings.AutoadjustInput) { - refreshNeeded = AutoAdjustInput(); + //refreshNeeded = AutoAdjustInput(); } CurrentTasMovie.TasSession.UpdateValues(Emulator.Frame, CurrentTasMovie.Branches.Current); diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs index ff490d1e0c..6e05848efc 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs @@ -901,9 +901,6 @@ namespace BizHawk.Client.EmuHawk } else { - // needed for AutoAdjustInput() when it removes was-lag frames - MainForm.HoldFrameAdvance = true; - GoToFrame(Emulator.Frame - notch); } } diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs index 7b43f1e89e..d0acfecc9a 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs @@ -768,7 +768,6 @@ namespace BizHawk.Client.EmuHawk LoadBranchOnDoubleclickMenuItem.Checked = Settings.LoadBranchOnDoubleClick; BindMarkersToInputMenuItem.Checked = CurrentTasMovie.BindMarkersToInput; CopyIncludesFrameNoMenuItem.Checked = Settings.CopyIncludesFrameNo; - AutoadjustInputMenuItem.Checked = Settings.AutoadjustInput; } private void SetMaxUndoLevelsMenuItem_Click(object sender, EventArgs e) @@ -803,9 +802,6 @@ namespace BizHawk.Client.EmuHawk private void CopyIncludesFrameNoMenuItem_Click(object sender, EventArgs e) => Settings.CopyIncludesFrameNo = !Settings.CopyIncludesFrameNo; - private void AutoadjustInputMenuItem_Click(object sender, EventArgs e) - => Settings.AutoadjustInput = !Settings.AutoadjustInput; - private void SetAutosaveIntervalMenuItem_Click(object sender, EventArgs e) { using var prompt = new InputPrompt diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs index 33c8fc717f..64fbff6637 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs @@ -1110,29 +1110,22 @@ namespace BizHawk.Client.EmuHawk { framesToRemove.Add(frame); } - else - { - break; - } } // Deleting this frame requires rewinding a frame. CurrentTasMovie.ChangeLog.AddInputBind(Emulator.Frame - 1, true, $"Bind Input; Delete {Emulator.Frame - 1}"); bool wasRecording = CurrentTasMovie.ChangeLog.IsRecording; CurrentTasMovie.ChangeLog.IsRecording = false; + CurrentTasMovie.RemoveFrames(framesToRemove); foreach (int f in framesToRemove) { CurrentTasMovie.LagLog.RemoveHistoryAt(f + 1); // Removes from WasLag } - CurrentTasMovie.ChangeLog.IsRecording = wasRecording; - CurrentTasMovie.LastPositionStable = true; + CurrentTasMovie.ChangeLog.IsRecording = wasRecording; GoToLastEmulatedFrameIfNecessary(Emulator.Frame - 1); - if (!MainForm.HoldFrameAdvance) - { - MainForm.PauseOnFrame = LastPositionFrame; - } + DoAutoRestore(); return true; }