42 lines
1.0 KiB
C#
42 lines
1.0 KiB
C#
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
|
|
);
|
|
}
|
|
}
|
|
}
|