Turns out using lambdas to control pins is lovely and correct, but terribly slow. Back to a more traditional method.

This commit is contained in:
Adrian Conlon
2025-03-24 20:18:04 +00:00
parent d4dc99b454
commit 3d6b549c76
12 changed files with 184 additions and 326 deletions

View File

@@ -15,7 +15,6 @@ namespace EightBit
public override void PokeWord(ushort address, Register16 value)
{
ArgumentNullException.ThrowIfNull(value);
this.Bus.Poke(address, value.Low);
this.Bus.Poke(++address, value.High);
}
@@ -52,14 +51,12 @@ namespace EightBit
protected override void PushWord(Register16 value)
{
ArgumentNullException.ThrowIfNull(value);
this.Push(value.High);
this.Push(value.Low);
}
protected override void SetWord(Register16 value)
{
ArgumentNullException.ThrowIfNull(value);
this.MemoryWrite(value.Low);
++this.Bus.Address.Word;
this.MemoryWrite(value.High);
@@ -67,7 +64,6 @@ namespace EightBit
protected override void SetWordPaged(Register16 value)
{
ArgumentNullException.ThrowIfNull(value);
this.MemoryWrite(value.Low);
++this.Bus.Address.Low;
this.MemoryWrite(value.High);