42 lines
1.0 KiB
C#
42 lines
1.0 KiB
C#
using System.Drawing;
|
|
|
|
namespace BizHawk.Emulation.Cores.Computers.Commodore64
|
|
{
|
|
// vic ntsc
|
|
static public class MOS6567
|
|
{
|
|
static int cycles = 65;
|
|
static int scanwidth = cycles * 8;
|
|
static int lines = 263;
|
|
static int vblankstart = 0x00D % lines;
|
|
static int vblankend = 0x018 % lines;
|
|
static int hblankoffset = 20;
|
|
static int hblankstart = (0x18C + hblankoffset) % scanwidth;
|
|
static int hblankend = (0x1F0 + hblankoffset) % scanwidth;
|
|
|
|
static int[] timing = Vic.TimingBuilder_XRaster(0x19C, 0x200, scanwidth, 0x18C, 8);
|
|
static int[] fetch = Vic.TimingBuilder_Fetch(timing, 0x174);
|
|
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,
|
|
14318181 / 14,
|
|
hblankstart, hblankend,
|
|
vblankstart, vblankend
|
|
);
|
|
}
|
|
}
|
|
}
|