示例#1
0
        public VideoDataManager(VirtualCpu cpu)
        {
            _cpu = cpu;

            GL.CreateTextures(TextureTarget.Texture2D, 1, out TileTexture);
            GL.TextureStorage2D(TileTexture, 1, SizedInternalFormat.Rgba32f, 128, 128);

            GL.CreateTextures(TextureTarget.Texture2D, 1, out SpriteTexture);
            GL.TextureStorage2D(SpriteTexture, 1, SizedInternalFormat.Rgba32f, 128, 128);

            ReloadTileData();
            ReloadSpriteData();
        }
示例#2
0
        public static void Main(string[] args)
        {
            _cart = new Cartridge("Tetris");

            for (int i = 0; i < 100; i++)
            {
                _cpu = new VirtualCpu(_cart);
                TestLength(1000000);
            }

            Console.ReadLine();


            while (_running)
            {
                _cpu.Step();
                UpdateConsole();
            }
        }
示例#3
0
 public void Initialize()
 {
     _cpu = new VirtualCpu(new Cartridge());
 }
示例#4
0
 public static void CpuIsInState(this Assert assert, VirtualCpu cpu, ushort expectedPC, ulong expectedCycles, FlagRegister expectedFlagRegister = DefaultRegister)
 {
     Assert.AreEqual(expectedPC, cpu.PC);
     Assert.AreEqual(expectedCycles, cpu.MachineCycles);
     Assert.AreEqual(expectedFlagRegister, cpu.F);
 }