private void DisplayState(MegadriveState state)
        {
            Console.WriteLine($"A0=${state.ReadAReg(0x0):X8} A1=${state.ReadAReg(0x1):X8}");
            Console.WriteLine($"A2=${state.ReadAReg(0x2):X8} A3=${state.ReadAReg(0x3):X8}");
            Console.WriteLine($"A4=${state.ReadAReg(0x4):X8} A5=${state.ReadAReg(0x5):X8}");
            Console.WriteLine($"A6=${state.ReadAReg(0x6):X8} A7=${state.ReadAReg(0x7):X8}");
            Console.WriteLine($"D0=${state.ReadDReg(0x0):X8} D1=${state.ReadDReg(0x1):X8}");
            Console.WriteLine($"D2=${state.ReadDReg(0x2):X8} D3=${state.ReadDReg(0x3):X8}");
            Console.WriteLine($"D4=${state.ReadDReg(0x4):X8} D5=${state.ReadDReg(0x5):X8}");
            Console.WriteLine($"D6=${state.ReadDReg(0x6):X8} D7=${state.ReadDReg(0x7):X8}");
            Console.WriteLine($"PC=${state.PC:X8} SR=${state.SR:X8}");

            Console.WriteLine();
        }