public GBA(ushort[] display) { this.cpu = new ARM7TDMI(this, this.EventQueue); this.IO = this.cpu.IO; this.mem = this.cpu.mem; this.bus = this.cpu.bus; this.apu = new APU(this.cpu, this.EventQueue); this.ppu = new PPU(this, display, this.IO); this.mem.Init(this.ppu); this.IO.Init(this.ppu, this.bus); this.IO.Layout(this.cpu, this.apu); // this.mem.UseNormattsBIOS(); this.display = display; #if THREADED_RENDERING this.RenderThread = new Thread(() => ppu.Mainloop()); #endif }