using System.Drawing; namespace BizHawk.Emulation.Cores.Computers.Commodore64 { // vic pal static public class MOS6569 { static int cycles = 63; static int scanwidth = cycles * 8; static int lines = 312; static int vblankstart = 0x12C % lines; static int vblankend = 0x00F % lines; static int hblankoffset = 20; static int hblankstart = (0x17C + hblankoffset) % scanwidth; static int hblankend = (0x1E0 + hblankoffset) % scanwidth; static int[] timing = Vic.TimingBuilder_XRaster(0x194, 0x1F8, scanwidth, -1, -1); static int[] fetch = Vic.TimingBuilder_Fetch(timing, 0x164); static int[] ba = Vic.TimingBuilder_BA(fetch); static int[] act = Vic.TimingBuilder_Act(timing, 0x004, 0x14C, hblankstart, hblankend); static int[][] pipeline = new int[][] { timing, fetch, ba, act }; static public Vic Create() { return new Vic( cycles, lines, pipeline, 17734472 / 18, hblankstart, hblankend, vblankstart, vblankend ); } } }