ZXHawk: 128k/+2 High-port contention now reporting properly in fusetest
This commit is contained in:
parent
7ced9fdc6a
commit
faec0fb0e5
|
@ -297,7 +297,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
||||||
|
|
||||||
case MachineType.ZXSpectrum128:
|
case MachineType.ZXSpectrum128:
|
||||||
case MachineType.ZXSpectrum128Plus2:
|
case MachineType.ZXSpectrum128Plus2:
|
||||||
if ((lastPortAddr & 0xc000) == 0x4000)
|
if ((lastPortAddr & 0xc000) == 0x4000 || (lastPortAddr & 0xc000) == 0xc000 && _machine.ContendedBankPaged())
|
||||||
highByte407f = true;
|
highByte407f = true;
|
||||||
|
|
||||||
if (highByte407f)
|
if (highByte407f)
|
||||||
|
|
|
@ -161,6 +161,13 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
||||||
/// <param name="addr"></param>
|
/// <param name="addr"></param>
|
||||||
public abstract bool IsContended(ushort addr);
|
public abstract bool IsContended(ushort addr);
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns TRUE if there is a contended bank paged in
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public abstract bool ContendedBankPaged();
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Helper Methods
|
#region Helper Methods
|
||||||
|
|
|
@ -232,6 +232,24 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns TRUE if there is a contended bank paged in
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public override bool ContendedBankPaged()
|
||||||
|
{
|
||||||
|
switch (RAMPaged)
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
case 3:
|
||||||
|
case 5:
|
||||||
|
case 7:
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// ULA reads the memory at the specified address
|
/// ULA reads the memory at the specified address
|
||||||
/// (No memory contention)
|
/// (No memory contention)
|
||||||
|
|
|
@ -425,6 +425,24 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns TRUE if there is a contended bank paged in
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public override bool ContendedBankPaged()
|
||||||
|
{
|
||||||
|
switch (RAMPaged)
|
||||||
|
{
|
||||||
|
case 4:
|
||||||
|
case 5:
|
||||||
|
case 6:
|
||||||
|
case 7:
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// ULA reads the memory at the specified address
|
/// ULA reads the memory at the specified address
|
||||||
/// (No memory contention)
|
/// (No memory contention)
|
||||||
|
|
|
@ -426,6 +426,24 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns TRUE if there is a contended bank paged in
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public override bool ContendedBankPaged()
|
||||||
|
{
|
||||||
|
switch (RAMPaged)
|
||||||
|
{
|
||||||
|
case 4:
|
||||||
|
case 5:
|
||||||
|
case 6:
|
||||||
|
case 7:
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// ULA reads the memory at the specified address
|
/// ULA reads the memory at the specified address
|
||||||
/// (No memory contention)
|
/// (No memory contention)
|
||||||
|
|
|
@ -123,6 +123,15 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns TRUE if there is a contended bank paged in
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public override bool ContendedBankPaged()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sets up the ROM
|
/// Sets up the ROM
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
Loading…
Reference in New Issue