NES - start an APU softreset function, and clear sequencer_irq, and 0x4015. Still a lot of work to be done for this, but passes nes apu reset tests: 4015_cleared, irq_flag_cleared
This commit is contained in:
parent
7b86f66353
commit
836415455a
|
@ -87,7 +87,6 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
||||||
|
|
||||||
public bool IsLenCntNonZero() { return len_cnt > 0; }
|
public bool IsLenCntNonZero() { return len_cnt > 0; }
|
||||||
|
|
||||||
|
|
||||||
public void WriteReg(int addr, byte val)
|
public void WriteReg(int addr, byte val)
|
||||||
{
|
{
|
||||||
//Console.WriteLine("write pulse {0:X} {1:X}", addr, val);
|
//Console.WriteLine("write pulse {0:X} {1:X}", addr, val);
|
||||||
|
@ -822,6 +821,13 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
||||||
noise.clock_env();
|
noise.clock_env();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void NESSoftReset()
|
||||||
|
{
|
||||||
|
//need to study what happens to apu and stuff..
|
||||||
|
sequencer_irq = false;
|
||||||
|
_WriteReg(0x4015, 0);
|
||||||
|
}
|
||||||
|
|
||||||
public void WriteReg(int addr, byte val)
|
public void WriteReg(int addr, byte val)
|
||||||
{
|
{
|
||||||
pending_reg = addr;
|
pending_reg = addr;
|
||||||
|
|
|
@ -73,6 +73,7 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
||||||
if (resetSignal)
|
if (resetSignal)
|
||||||
{
|
{
|
||||||
cpu.NESSoftReset();
|
cpu.NESSoftReset();
|
||||||
|
apu.NESSoftReset();
|
||||||
//need to study what happens to ppu and apu and stuff..
|
//need to study what happens to ppu and apu and stuff..
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue