ENG_REG8
#define CRTCR(A) (ENG_REG8(RG8_CRTCIND) = (ENCRTCX_##A), ENG_REG8(RG8_CRTCDAT))
#define CRTC2R(A) (ENG_REG8(RG8_CRTC2IND) = (ENCRTCX_##A), ENG_REG8(RG8_CRTC2DAT))
#define ATBW(A,B)(ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTRINDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTRDATW) = (B))
#define ATBR(A) (ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTRINDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTRDATR))
#define ATB2W(A,B)(ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTR2INDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTR2DATW) = (B))
#define ATB2R(A) (ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTR2INDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTR2DATR))
#define SEQR(A) (ENG_REG8(RG8_SEQIND) = (ENSEQX_##A), ENG_REG8(RG8_SEQDAT))
#define GRPHR(A) (ENG_REG8(RG8_GRPHIND) = (ENGRPHX_##A), ENG_REG8(RG8_GRPHDAT))
#define CRTCR(A) (ENG_REG8(RG8_CRTCIND) = (ENCRTCX_##A), ENG_REG8(RG8_CRTCDAT))
#define CRTC2R(A) (ENG_REG8(RG8_CRTC2IND) = (ENCRTCX_##A), ENG_REG8(RG8_CRTC2DAT))
#define ATBW(A,B)(ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTRINDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTRDATW) = (B))
#define ATBR(A) (ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTRINDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTRDATR))
#define ATB2W(A,B)(ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTR2INDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTR2DATW) = (B))
#define ATB2R(A) (ENG_REG8(RG8_INSTAT1), ENG_REG8(RG8_ATTR2INDW) = ((ENATBX_##A) | 0x20), ENG_REG8(RG8_ATTR2DATR))
#define SEQR(A) (ENG_REG8(RG8_SEQIND) = (ENSEQX_##A), ENG_REG8(RG8_SEQDAT))
#define GRPHR(A) (ENG_REG8(RG8_GRPHIND) = (ENGRPHX_##A), ENG_REG8(RG8_GRPHDAT))
temp = ENG_REG8(RG8_MISCR);
ENG_REG8(RG8_MISCW) = temp;
LOG(2,(", MISC reg readback: $%02x\n", ENG_REG8(RG8_MISCR)));
temp = ENG_REG8(RG8_MISCR);
ENG_REG8(RG8_MISCW) = temp;
LOG(2,(", MISC reg readback: $%02x\n", ENG_REG8(RG8_MISCR)));
ENG_REG8(RG8_PALINDW) = 0x00;
ENG_REG8(RG8_PALDATA) = r[i];
ENG_REG8(RG8_PALDATA) = g[i];
ENG_REG8(RG8_PALDATA) = b[i];
if (ENG_REG8(RG8_PALINDW) != 0x00)
ENG_REG8(RG8_PALINDR) = 0x00;
R = ENG_REG8(RG8_PALDATA);
G = ENG_REG8(RG8_PALDATA);
B = ENG_REG8(RG8_PALDATA);
ENG_REG8(RG8_PALMASK) = 0xff;
LOG(2,("DAC: PAL pixrdmsk readback $%02x\n", ENG_REG8(RG8_PALMASK)));
ENG_REG8(RG8_PAL2INDW) = 0x00;
ENG_REG8(RG8_PAL2DATA) = r[i];
ENG_REG8(RG8_PAL2DATA) = g[i];
ENG_REG8(RG8_PAL2DATA) = b[i];
if (ENG_REG8(RG8_PAL2INDW) != 0x00)
ENG_REG8(RG8_PAL2INDR) = 0x00;
R = ENG_REG8(RG8_PAL2DATA);
G = ENG_REG8(RG8_PAL2DATA);
B = ENG_REG8(RG8_PAL2DATA);
ENG_REG8(RG8_PAL2MASK) = 0xff;
LOG(2,("DAC2: PAL pixrdmsk readback $%02x\n", ENG_REG8(RG8_PAL2MASK)));
ENG_REG8(RG8_MISCW) = 0xcb;
ENG_REG8(reg) = index;
byte = ENG_REG8(reg + 1);
ENG_REG8(reg) = index;
byte = ENG_REG8(reg + 1);
ENG_REG8(reg2) = index;
byte = ENG_REG8(reg2 + 1);
ENG_REG8(reg2 + 1) = byte;
ENG_REG8(reg) = byte;
byte = ENG_REG8(reg);
ENG_REG8(reg) = byte;
ENG_REG8(reg) = index;
byte = ENG_REG8(reg + 1);
ENG_REG8(reg) = index;
byte = ENG_REG8(reg + 1);
ENG_REG8(reg + 1) = byte;
ENG_REG8(reg) = index;
byte = ENG_REG8(reg + 1);
ENG_REG8(RG8_MISCW) = 0xcb;
ENG_REG8(RG8_VSE2) = 0x01;
ENG_REG8(RG8_MISCW) = 0xcb;
ENG_REG8(RG8_VSE2) = 0x01;
byte = ENG_REG8(reg);
ENG_REG8(reg) = byte;
ENG_REG8(reg) = index;
byte = ENG_REG8(reg + 1);
ENG_REG8(reg + 1) = byte;
temp = ENG_REG8(RG8_MISCR);
ENG_REG8(RG8_MISCW) = temp;
LOG(2,(", MISC reg readback: $%02x\n", ENG_REG8(RG8_MISCR)));
temp = ENG_REG8(RG8_MISCR);
ENG_REG8(RG8_MISCW) = temp;
LOG(2,(", MISC reg readback: $%02x\n", ENG_REG8(RG8_MISCR)));
ENG_REG8(RG8_PALINDW) = 0x00;
ENG_REG8(RG8_PALDATA) = r[i];
ENG_REG8(RG8_PALDATA) = g[i];
ENG_REG8(RG8_PALDATA) = b[i];
if (ENG_REG8(RG8_PALINDW) != 0x00)
ENG_REG8(RG8_PALINDR) = 0x00;
R = ENG_REG8(RG8_PALDATA);
G = ENG_REG8(RG8_PALDATA);
B = ENG_REG8(RG8_PALDATA);
ENG_REG8(RG8_MISCW) = 0xcf;
ENG_REG8(RG8_PALMASK) = 0xff;
LOG(2,("DAC: PAL pixrdmsk readback $%02x\n", ENG_REG8(RG8_PALMASK)));
ENG_REG8(RG8_PAL2INDW) = 0x00;
ENG_REG8(RG8_PAL2DATA) = r[i];
ENG_REG8(RG8_PAL2DATA) = g[i];
ENG_REG8(RG8_PAL2DATA) = b[i];
if (ENG_REG8(RG8_PAL2INDW) != 0x00)
ENG_REG8(RG8_PAL2INDR) = 0x00;
R = ENG_REG8(RG8_PAL2DATA);
G = ENG_REG8(RG8_PAL2DATA);
B = ENG_REG8(RG8_PAL2DATA);
ENG_REG8(RG8_PAL2MASK) = 0xff;
LOG(2,("DAC2: PAL pixrdmsk readback $%02x\n", ENG_REG8(RG8_PAL2MASK)));
ENG_REG8(RG8_MISCW) = (((ENG_REG8(RG8_MISCR)) & 0x0c) | 0xc3);