@Don_Adan, post #30
@teh_KaiN, post #31
@c64portal, post #11
for (int j = 1; j < 9; j++)
{
for (int i = 0; i < 32; i++)
{
nyb2 = 0x000;
custom.bplcon3 = nyb1 | nyb2;
UBYTE r = ((col[i] >> 16) & 0xFF) >>4 ;
UBYTE g = ((col[i] >> 8) & 0xFF) >>4 ;
UBYTE b = (col[i] & 0xFF) >>4 ;
custom.color[i] = r<<8 | g<<4 | b;
nyb2 = 0x200;
custom.bplcon3 = nyb1 | nyb2;
r = ((col[i] >> 16) & 0xFF) &0x0f ;
g = ((col[i] >> 8) & 0xFF) &0x0f ;
b = (col[i] & 0xFF) & 0x0f ;
custom.color[i] = r<<8 | g<<4 | b;
}
nyb1 = 0x2000*j;
}static UWORD __chip coplist[] =
{
COP_MOVE(DIWSTRT, 0x2c81),
COP_MOVE(DIWSTOP, 0x2cc1),
COP_MOVE(BPLCON0, 0x210),
COP_MOVE(FMODE, 0),
COP_MOVE(DDFSTRT, 0x0038),
COP_MOVE(DDFSTOP, 0x00d0),
COP_MOVE(BPL1MOD, 0),
COP_MOVE(BPL2MOD, 0),
COP_MOVE(BPL1PTH, 0),
COP_MOVE(BPL1PTL, 0),
COP_MOVE(BPL2PTH, 0),
COP_MOVE(BPL2PTL, 0),
COP_MOVE(BPL3PTH, 0),
COP_MOVE(BPL3PTL, 0),
COP_MOVE(BPL4PTH, 0),
COP_MOVE(BPL4PTL, 0),
COP_MOVE(BPL5PTH, 0),
COP_MOVE(BPL5PTL, 0),
COP_MOVE(BPL6PTH, 0),
COP_MOVE(BPL6PTL, 0),
COP_MOVE(BPL7PTH, 0),
COP_MOVE(BPL7PTL, 0),
COP_MOVE(BPL8PTH, 0),
COP_MOVE(BPL8PTL, 0),
COP_WAIT_END,
COP_WAIT_END
};ULONG addr;
int cop__bpl1pth_start = COP__BPL1PTH_START;
for (int i = 0; i < PLANES; i++)
{
addr = (ULONG)&(data[i * PLANE_SIZE]);
coplist[cop__bpl1pth_start] = (addr >> 16) & 0xffff;
coplist[cop__bpl1pth_start + 2] = addr & 0xffff;
cop__bpl1pth_start += 4; // next bitplane
}