public NES(Cartridge gameCartridge, Joypad joypad) { var ppuBus = new PpuBus(gameCartridge.CharacterRom, gameCartridge.GameMirroring); _ppu = new Ppu(ppuBus, new NmiTrigger(() => _cpu.NMI())); var cpuBus = new CpuBus(gameCartridge.ProgramRom, _ppu, joypad, new DMA(PerformDma), () => _cpu.MasterClockCycles); _cpu = new Cpu(cpuBus); }
public CPUforHelloWorld() { var rom = Resources.ResourceManager.GetObject("sample1"); var cartridge = new Cartridge(new MemoryStream((byte[])rom)); var ram = new RAM(0x0800); ppu = new PPU(cartridge); var bus = new CpuBus(ram, ppu, cartridge); cpu = new CPU(bus); }