X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FModules%2FDisplay%2FVGA%2Fvgaregs.c;fp=KernelLand%2FModules%2FDisplay%2FVGA%2Fvgaregs.c;h=c2be21f600d6ad20108f252fb280ef035bce7001;hb=e47f509e07718893b837826f981085829cf16c84;hp=0000000000000000000000000000000000000000;hpb=360759548d22ab37cc08104aa809bf1be211a960;p=tpg%2Facess2.git diff --git a/KernelLand/Modules/Display/VGA/vgaregs.c b/KernelLand/Modules/Display/VGA/vgaregs.c new file mode 100644 index 00000000..c2be21f6 --- /dev/null +++ b/KernelLand/Modules/Display/VGA/vgaregs.c @@ -0,0 +1,57 @@ +/* + * Acess2 VGA Driver + * - By John Hodge (thePowersGang) + */ + + +// === CODE === +void VGA_WriteAttr(Uint8 Index, Uint8 Data) +{ + Index &= 0x1F; + SHORTLOCK(&glVGA_Attr); + inb(0x3DA); + outb(0x3C0, Index); + outb(0x3C0, Data); + SHORTREL(&glVGA_Attr); +} + +Uint8 VGA_ReadAttr(Uint8 Index) +{ + Uint8 ret; + SHORTLOCK(&glVGA_Attr); + inb(0x3DA); + outb(0x3C0, Index); + ret = inb(0x3C1); + SHORTREL(&glVGA_Attr); + return ret; +} + +void VGA_WriteSeq(Uint8 Index, Uint8 Data) +{ + outb(0x3C4, Index); + outb(0x3C5, Data); +} +Uint8 VGA_ReadSeq(Uint8 Index) +{ + outb(0x3C4, Index); + return inb(0x3C5); +} +void VGA_WriteGraph(Uint8 Index, Uint8 Data) +{ + outb(0x3CE, Index); + outb(0x3CF, Data); +} +Uint8 VGA_ReadGraph(Uint8 Index) +{ + outb(0x3CE, Index); + return inb(0x3CF); +} + +void VGA_WriteMiscOut(Uint8 Data) +{ + outb(0x3C2, Data); +} +Uint8 VGA_ReadMiscOut(void) +{ + return inb(0x3CC); +}