mga_outb
mga_outb(M_SEQ_INDEX, M_SEQ1);
mga_outb(M_SEQ_DATA, mga_inb(M_SEQ_DATA) | M_SEQ1_SCROFF);
mga_outb(M_MISC_REG, misc);
mga_outb(M_IEN, 0x00);
mga_outb(M_CACHEFLUSH, 0x00);
mga_outb(M_MISC_REG, selClk);
mga_outb(0x1C05, 0x00);
mga_outb(0x1C05, 0x80);
mga_outb(0x1C05, 0x40);
mga_outb(0x1C05, 0xC0);
mga_outb(M_GRAPHICS_INDEX, 6);
mga_outb(M_GRAPHICS_DATA, (mga_inb(M_GRAPHICS_DATA) & 3) | 4);
mga_outb(M_MISC_REG, 0x67);
mga_outb(M_SEQ_INDEX, 1);
mga_outb(M_SEQ_DATA, (mga_inb(M_SEQ_DATA) & ~0x20) | seq);
mga_outb(M_EXTVGA_INDEX, 1);
mga_outb(M_EXTVGA_DATA, (mga_inb(M_EXTVGA_DATA) & ~0x30) | crtc);
mga_outb(M_EXTVGA_INDEX, 0x03);
mga_outb(M_EXTVGA_DATA, orig | 0x80);
mga_outb(M_CACHEFLUSH, 0x00);
mga_outb(M_EXTVGA_INDEX, 0x03);
mga_outb(M_EXTVGA_DATA, orig);
mga_outb(M_EXTVGA_INDEX, extvga_reg);
mga_outb(M_DAC_REG, regno);
mga_outb(M_DAC_VAL, red);
mga_outb(M_DAC_VAL, green);
mga_outb(M_DAC_VAL, blue);
#define mga_readr(port,idx) (mga_outb((port),(idx)), mga_inb((port)+1))
mga_outb(M_RAMDAC_BASE+M_X_INDEX, reg);
mga_outb(M_ATTR_INDEX, 0);
mga_outb(M_MISC_REG, hw->MiscOutReg);
mga_outb(M_ATTR_INDEX, i);
mga_outb(M_ATTR_INDEX, hw->ATTR[i]);
mga_outb(M_PALETTE_MASK, 0xFF);
mga_outb(M_DAC_REG, 0x00);
mga_outb(M_DAC_VAL, hw->DACpal[i]);
mga_outb(M_ATTR_INDEX, 0x20);
mga_outb(M_RAMDAC_BASE+M_X_INDEX, reg);
mga_outb(M_RAMDAC_BASE+M_X_DATAREG, val);