X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=vgasrc%2Fgeodevga.c;h=d326eda021fdc941819cdbde217c34b09599e8c6;hb=69b01cbdb3a1644dc9a8a56e5564339f91b789ab;hp=7735fdca628a2b872cf26a04b08ea128c9428358;hpb=24ddd8678cacab4268e8cd8209f30e3e69f12852;p=seabios.git diff --git a/vgasrc/geodevga.c b/vgasrc/geodevga.c index 7735fdc..d326eda 100644 --- a/vgasrc/geodevga.c +++ b/vgasrc/geodevga.c @@ -12,7 +12,7 @@ #include "biosvar.h" // GET_BDA #include "vgabios.h" // VGAREG_* #include "util.h" // memset -#include "stdvga.h" // VGAREG_VGA_CRTC_ADDRESS +#include "stdvga.h" // stdvga_crtc_write /**************************************************************** @@ -110,33 +110,28 @@ static int legacyio_check(void) ****************************************************************/ static void crtce_lock(void) { - outb(EXTENDED_REGISTER_LOCK , VGAREG_VGA_CRTC_ADDRESS); - outb(CRTCE_LOCK, VGAREG_VGA_CRTC_DATA); + stdvga_crtc_write(VGAREG_VGA_CRTC_ADDRESS, EXTENDED_REGISTER_LOCK + , CRTCE_LOCK); } static void crtce_unlock(void) { - outb(EXTENDED_REGISTER_LOCK , VGAREG_VGA_CRTC_ADDRESS); - outb(CRTCE_UNLOCK, VGAREG_VGA_CRTC_DATA); + stdvga_crtc_write(VGAREG_VGA_CRTC_ADDRESS, EXTENDED_REGISTER_LOCK + , CRTCE_UNLOCK); } static u8 crtce_read(u8 reg) { - u8 val; - crtce_unlock(); - outb(reg , VGAREG_VGA_CRTC_ADDRESS); - val = inb(VGAREG_VGA_CRTC_DATA); + u8 val = stdvga_crtc_read(VGAREG_VGA_CRTC_ADDRESS, reg); crtce_lock(); - return val; } static void crtce_write(u8 reg, u8 val) { crtce_unlock(); - outb(reg , VGAREG_VGA_CRTC_ADDRESS); - outb(val, VGAREG_VGA_CRTC_DATA); + stdvga_crtc_write(VGAREG_VGA_CRTC_ADDRESS, reg, val); crtce_lock(); } @@ -365,12 +360,8 @@ int geodevga_init(void) int i; for (i=0; icrtc_regs, crtc); + if (crtc) + stdvga_override_crtc(i, crtc); } ret |= vp_setup();