this is mostly a hack, but fixes loading a rom when a movie is still running
This commit is contained in:
parent
fb8d322146
commit
43d9f77fd6
|
@ -2377,7 +2377,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
LoadRom(CurrentlyOpenRom);
|
StopMovieThenLoadRom(CurrentlyOpenRom);
|
||||||
}
|
}
|
||||||
|
|
||||||
string errorMsg;
|
string errorMsg;
|
||||||
|
@ -2399,7 +2399,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
LoadRom(filePaths[0]);
|
StopMovieThenLoadRom(filePaths[0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -158,7 +158,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
{
|
{
|
||||||
if (Global.MovieSession.Movie.IsActive)
|
if (Global.MovieSession.Movie.IsActive)
|
||||||
{
|
{
|
||||||
LoadRom(CurrentlyOpenRom);
|
StopMovieThenLoadRom(CurrentlyOpenRom);
|
||||||
if (Global.MovieSession.Movie.StartsFromSavestate)
|
if (Global.MovieSession.Movie.StartsFromSavestate)
|
||||||
{
|
{
|
||||||
// TODO: why does this code exist twice??
|
// TODO: why does this code exist twice??
|
||||||
|
|
|
@ -262,7 +262,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
if (cmdRom != null)
|
if (cmdRom != null)
|
||||||
{
|
{
|
||||||
// Commandline should always override auto-load
|
// Commandline should always override auto-load
|
||||||
LoadRom(cmdRom);
|
StopMovieThenLoadRom(cmdRom);
|
||||||
if (Global.Game == null)
|
if (Global.Game == null)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Failed to load " + cmdRom + " specified on commandline");
|
MessageBox.Show("Failed to load " + cmdRom + " specified on commandline");
|
||||||
|
@ -818,7 +818,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
|
|
||||||
public void RebootCore()
|
public void RebootCore()
|
||||||
{
|
{
|
||||||
LoadRom(CurrentlyOpenRom);
|
StopMovieThenLoadRom(CurrentlyOpenRom);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PauseEmulator()
|
public void PauseEmulator()
|
||||||
|
@ -1569,7 +1569,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
|
|
||||||
private void LoadRomFromRecent(string rom)
|
private void LoadRomFromRecent(string rom)
|
||||||
{
|
{
|
||||||
if (!LoadRom(rom))
|
if (!StopMovieThenLoadRom(rom))
|
||||||
{
|
{
|
||||||
Global.Config.RecentRoms.HandleLoadError(rom);
|
Global.Config.RecentRoms.HandleLoadError(rom);
|
||||||
}
|
}
|
||||||
|
@ -1830,7 +1830,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
var file = new FileInfo(ofd.FileName);
|
var file = new FileInfo(ofd.FileName);
|
||||||
Global.Config.LastRomPath = file.DirectoryName;
|
Global.Config.LastRomPath = file.DirectoryName;
|
||||||
_lastOpenRomFilter = ofd.FilterIndex;
|
_lastOpenRomFilter = ofd.FilterIndex;
|
||||||
LoadRom(file.FullName);
|
StopMovieThenLoadRom(file.FullName);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void CoreSyncSettings(object sender, RomLoader.SettingsLoadArgs e)
|
private void CoreSyncSettings(object sender, RomLoader.SettingsLoadArgs e)
|
||||||
|
@ -3061,6 +3061,17 @@ namespace BizHawk.Client.EmuHawk
|
||||||
return platformChooser.PlatformChoice;
|
return platformChooser.PlatformChoice;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: a better name for this method, but this is the one that should be called, in general
|
||||||
|
public bool StopMovieThenLoadRom(string path, bool? deterministicemulation = null)
|
||||||
|
{
|
||||||
|
if (Global.MovieSession.Movie.IsActive)
|
||||||
|
{
|
||||||
|
Global.MovieSession.Movie.Stop();
|
||||||
|
}
|
||||||
|
|
||||||
|
return LoadRom(path, deterministicemulation);
|
||||||
|
}
|
||||||
|
|
||||||
// Still needs a good bit of refactoring
|
// Still needs a good bit of refactoring
|
||||||
public bool LoadRom(string path, bool? deterministicemulation = null)
|
public bool LoadRom(string path, bool? deterministicemulation = null)
|
||||||
{
|
{
|
||||||
|
|
|
@ -233,7 +233,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
|
|
||||||
void this_StartupNextInstance(object sender, StartupNextInstanceEventArgs e)
|
void this_StartupNextInstance(object sender, StartupNextInstanceEventArgs e)
|
||||||
{
|
{
|
||||||
(MainForm as MainForm).LoadRom(e.CommandLine[0]);
|
(MainForm as MainForm).StopMovieThenLoadRom(e.CommandLine[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void OnCreateMainForm()
|
protected override void OnCreateMainForm()
|
||||||
|
|
|
@ -169,7 +169,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
|
|
||||||
DialogResult = DialogResult.OK;
|
DialogResult = DialogResult.OK;
|
||||||
Close();
|
Close();
|
||||||
GlobalWin.MainForm.LoadRom(textBoxOutputDir.Text);
|
GlobalWin.MainForm.StopMovieThenLoadRom(textBoxOutputDir.Text);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -140,7 +140,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
)]
|
)]
|
||||||
public static void OpenRom(string path)
|
public static void OpenRom(string path)
|
||||||
{
|
{
|
||||||
GlobalWin.MainForm.LoadRom(path);
|
GlobalWin.MainForm.StopMovieThenLoadRom(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
[LuaMethodAttributes(
|
[LuaMethodAttributes(
|
||||||
|
|
Loading…
Reference in New Issue