diff --git a/BizHawk.Client.Common/movie/tasproj/TasMovie.Editing.cs b/BizHawk.Client.Common/movie/tasproj/TasMovie.Editing.cs index ee7091c47b..4c9e4e372a 100644 --- a/BizHawk.Client.Common/movie/tasproj/TasMovie.Editing.cs +++ b/BizHawk.Client.Common/movie/tasproj/TasMovie.Editing.cs @@ -13,7 +13,11 @@ namespace BizHawk.Client.Common { base.RecordFrame(frame, source); - LagLog.RemoveRange(frame, LagLog.Count - frame); + if (frame < LagLog.Count) + { + LagLog.RemoveRange(frame, LagLog.Count - frame); + } + LagLog.Add(Global.Emulator.IsLagFrame); StateManager.Invalidate(frame); diff --git a/BizHawk.Client.EmuHawk/MainForm.Movie.cs b/BizHawk.Client.EmuHawk/MainForm.Movie.cs index b3706dbb88..fd0404b71f 100644 --- a/BizHawk.Client.EmuHawk/MainForm.Movie.cs +++ b/BizHawk.Client.EmuHawk/MainForm.Movie.cs @@ -10,7 +10,7 @@ namespace BizHawk.Client.EmuHawk { partial class MainForm { - public void StartNewMovie(IMovie movie, bool record, bool fromTastudio = false) //TasStudio flag is a hack for now + public void StartNewMovie(IMovie movie, bool record) { if (movie.SystemID != Global.Emulator.SystemId) { @@ -20,7 +20,7 @@ namespace BizHawk.Client.EmuHawk //If a movie is already loaded, save it before starting a new movie - if (!fromTastudio && Global.MovieSession.Movie.IsActive) + if (Global.MovieSession.Movie.IsActive) { Global.MovieSession.Movie.Save(); } @@ -80,10 +80,7 @@ namespace BizHawk.Client.EmuHawk this._syncSettingsHack = null; } - if (!fromTastudio) - { - Global.Config.RecentMovies.Add(movie.Filename); - } + Global.Config.RecentMovies.Add(movie.Filename); if (Global.MovieSession.Movie.StartsFromSavestate) { @@ -93,26 +90,18 @@ namespace BizHawk.Client.EmuHawk Global.Emulator.LoadStateBinary(new BinaryReader(new MemoryStream(Global.MovieSession.Movie.BinarySavestate, false))); } - if (!fromTastudio) + if (record) { - if (record) - { - Global.MovieSession.Movie.StartNewRecording(); - Global.MovieSession.ReadOnly = false; - } - else - { - Global.MovieSession.Movie.StartNewPlayback(); - } + Global.MovieSession.Movie.StartNewRecording(); + Global.MovieSession.ReadOnly = false; + } + else + { + Global.MovieSession.Movie.StartNewPlayback(); } SetMainformMovieInfo(); - if (!fromTastudio) - { - GlobalWin.Tools.Restart(); - } - GlobalWin.Tools.Restart(); GlobalWin.DisplayManager.NeedsToPaint = true; } diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs index d1a280ff14..d914cf6c82 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs @@ -212,17 +212,17 @@ namespace BizHawk.Client.EmuHawk } SetUpColumns(); - //LoadConfigSettings(); + LoadConfigSettings(); } private void EngageTasStudio(TasMovie newMovie = null) { GlobalWin.OSD.AddMessage("TAStudio engaged"); Global.MovieSession.Movie = newMovie ?? new TasMovie(); - + _tas = Global.MovieSession.Movie as TasMovie; _tas.StartNewRecording(); - GlobalWin.MainForm.StartNewMovie(_tas, true, true); + GlobalWin.MainForm.StartNewMovie(_tas, record: true); } private void StartNewSession() @@ -231,7 +231,7 @@ namespace BizHawk.Client.EmuHawk { GlobalWin.OSD.AddMessage("new TAStudio session started"); _tas.StartNewRecording(); - GlobalWin.MainForm.StartNewMovie(_tas, true, true); + GlobalWin.MainForm.StartNewMovie(_tas, record: true); TasView.ItemCount = _tas.InputLogLength; } }