summaryrefslogtreecommitdiff
path: root/native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs
diff options
context:
space:
mode:
Diffstat (limited to 'native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs')
-rw-r--r--native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs19
1 files changed, 14 insertions, 5 deletions
diff --git a/native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs b/native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs
index d21e810..8483050 100644
--- a/native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs
+++ b/native/Noddybox.Emulation.EightBit.Z80.Test/TestMachine.cs
@@ -35,8 +35,9 @@ namespace Noddybox.Emulation.EightBit.Z80.Test
{
Console.ForegroundColor = pen;
Console.BackgroundColor = paper;
- Console.WriteLine(format, p);
+ Console.Write(format, p);
Console.ResetColor();
+ Console.WriteLine();
}
private Queue<Register16> Decode(string i)
@@ -69,7 +70,10 @@ namespace Noddybox.Emulation.EightBit.Z80.Test
byte IDevice.Read(ushort device)
{
// Output(ConsoleColor.Green, ConsoleColor.DarkGray, "Reading 00 from device {1:X4}", device);
- return 0;
+
+ Register16 r = new Register16(device);
+
+ return r.high;
}
void IDevice.Write(ushort device, byte value)
@@ -77,9 +81,9 @@ namespace Noddybox.Emulation.EightBit.Z80.Test
// Output(ConsoleColor.Red, ConsoleColor.DarkGray, "Writing {0:X2} to device {1:X4}", value, device);
}
- public bool Run(string name, Queue<string> input, Queue<string> expected)
+ public bool Run(string name, Queue<string> input, Queue<string> expected, bool stop)
{
- Output(ConsoleColor.Black, ConsoleColor.White, "Running test {0}", name);
+ Output(ConsoleColor.Black, ConsoleColor.White, "Running test {0}{1}", name, stop ? " - STOPPING FOR DEBUG THIS PASS" : String.Empty);
Queue<Register16> line = Decode(input.Dequeue());
Register16 r = line.Dequeue();
@@ -132,11 +136,16 @@ namespace Noddybox.Emulation.EightBit.Z80.Test
{
string a, b, c;
start = disassembler.Disassemble(start, out a, out b, out c);
- Output(ConsoleColor.Yellow, ConsoleColor.Blue, "{0}: {1}", a, b);
+ Output(ConsoleColor.Yellow, ConsoleColor.Blue, "{0}: {1,-20} ; {2}", a, b, c);
}
}
}
+ if (stop)
+ {
+ Debugger.Break();
+ }
+
while (clock.Ticks < cyclesToRun)
{
z80.Step();