forbid rom domain for mame

This commit is contained in:
feos 2019-12-23 00:12:43 +03:00
parent d375b1c2e0
commit 47f77b42e9
1 changed files with 23 additions and 14 deletions

View File

@ -148,14 +148,21 @@ namespace BizHawk.Client.EmuHawk
public void Restart() public void Restart()
{ {
_rom = GetRomBytes(); using (var file = new HawkFile(MainForm.CurrentlyOpenRom.Split('*').Last()))
_romDomain = new MemoryDomainByteArray("File on Disk", MemoryDomain.Endian.Little, _rom, true, 1);
if (_domain.Name == _romDomain.Name)
{ {
_domain = _romDomain; if (!file.IsArchive)
{
_rom = GetRomBytes();
_romDomain = new MemoryDomainByteArray("File on Disk", MemoryDomain.Endian.Little, _rom, true, 1);
if (_domain.Name == _romDomain.Name)
{
_domain = _romDomain;
}
}
} }
else if (MemoryDomains.Any(x => x.Name == _domain.Name))
if (MemoryDomains.Any(x => x.Name == _domain.Name))
{ {
_domain = MemoryDomains[_domain.Name]; _domain = MemoryDomains[_domain.Name];
} }
@ -1531,17 +1538,19 @@ namespace BizHawk.Client.EmuHawk
MemoryDomains.MenuItems(SetMemoryDomain, _domain.Name) MemoryDomains.MenuItems(SetMemoryDomain, _domain.Name)
.ToArray()); .ToArray());
if (_romDomain != null)
var romMenuItem = new ToolStripMenuItem
{ {
Text = _romDomain.Name, var romMenuItem = new ToolStripMenuItem
Checked = _domain.Name == _romDomain.Name {
}; Text = _romDomain.Name,
Checked = _domain.Name == _romDomain.Name
};
MemoryDomainsMenuItem.DropDownItems.Add(new ToolStripSeparator()); MemoryDomainsMenuItem.DropDownItems.Add(new ToolStripSeparator());
MemoryDomainsMenuItem.DropDownItems.Add(romMenuItem); MemoryDomainsMenuItem.DropDownItems.Add(romMenuItem);
romMenuItem.Click += (o, ev) => SetMemoryDomain(_romDomain.Name); romMenuItem.Click += (o, ev) => SetMemoryDomain(_romDomain.Name);
}
} }
private void DataSizeByteMenuItem_Click(object sender, EventArgs e) private void DataSizeByteMenuItem_Click(object sender, EventArgs e)