diff --git a/BizHawk.MultiClient/config/PathManager.cs b/BizHawk.MultiClient/config/PathManager.cs index 73557046f9..7db70651d8 100644 --- a/BizHawk.MultiClient/config/PathManager.cs +++ b/BizHawk.MultiClient/config/PathManager.cs @@ -282,6 +282,9 @@ namespace BizHawk.MultiClient public static string SaveRamPath(GameInfo game) { string name = FilesystemSafeName(game); + if (Global.MainForm.MovieActive()) + name += "." + Path.GetFileNameWithoutExtension(Global.MovieSession.Movie.Filename); + switch (game.System) { case "SMS": return Path.Combine(MakeAbsolutePath(Global.Config.PathSMSSaveRAM, "SMS"), name + ".SaveRAM"); diff --git a/BizHawk.MultiClient/movie/Movie.cs b/BizHawk.MultiClient/movie/Movie.cs index b6e48c8a46..01023d74a8 100644 --- a/BizHawk.MultiClient/movie/Movie.cs +++ b/BizHawk.MultiClient/movie/Movie.cs @@ -80,9 +80,16 @@ namespace BizHawk.MultiClient Mode = MOVIEMODE.INACTIVE; } + public void ClearSaveRAM() + { + var file = new FileInfo(PathManager.SaveRamPath(Global.Game)); + if (file.Exists) file.Delete(); + } + public void StartNewRecording() { StartNewRecording(true); } public void StartNewRecording(bool truncate) { + ClearSaveRAM(); Mode = MOVIEMODE.RECORD; if (Global.Config.EnableBackupMovies && MakeBackup && Log.Length() > 0) { @@ -94,6 +101,7 @@ namespace BizHawk.MultiClient public void StartPlayback() { + ClearSaveRAM(); Mode = MOVIEMODE.PLAY; }