aboutsummaryrefslogtreecommitdiff
path: root/vgasrc
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2009-05-07 22:00:25 -0400
committerKevin O'Connor <kevin@koconnor.net>2009-05-07 22:00:25 -0400
commitd9fc0a09f744fe9aec3de8e51c1c8cf393d735c0 (patch)
treeefdbc09b6323ff2a637aeb6d510c2887ef4f8326 /vgasrc
parent6a71970423347a9a8845ccc1797a98f304223517 (diff)
downloadseabios-hppa-d9fc0a09f744fe9aec3de8e51c1c8cf393d735c0.zip
seabios-hppa-d9fc0a09f744fe9aec3de8e51c1c8cf393d735c0.tar.gz
seabios-hppa-d9fc0a09f744fe9aec3de8e51c1c8cf393d735c0.tar.bz2
Cleanup vga inb/outb port usages.
Use symbolic names for ports. Use VGAREG_ACTL_WRITE_DATA instead of VGAREG_ACTL_ADDRESS when writing a value to the register.
Diffstat (limited to 'vgasrc')
-rw-r--r--vgasrc/clext.c40
-rw-r--r--vgasrc/vga.c22
2 files changed, 32 insertions, 30 deletions
diff --git a/vgasrc/clext.c b/vgasrc/clext.c
index 4be70c1..32584ee 100644
--- a/vgasrc/clext.c
+++ b/vgasrc/clext.c
@@ -317,25 +317,27 @@ cirrus_switch_mode_setregs(u16 *data, u16 port)
static u16
cirrus_get_crtc()
{
- return 0x3b4 + ((inb(0x3cc) & 1) << 5);
+ if (inb(VGAREG_READ_MISC_OUTPUT) & 1)
+ return VGAREG_VGA_CRTC_ADDRESS;
+ return VGAREG_MDA_CRTC_ADDRESS;
}
static void
cirrus_switch_mode(struct cirrus_mode_s *table)
{
// Unlock cirrus special
- outw(0x1206, 0x3c4);
- cirrus_switch_mode_setregs(GET_GLOBAL(table->seq), 0x3c4);
- cirrus_switch_mode_setregs(GET_GLOBAL(table->graph), 0x3ce);
+ outw(0x1206, VGAREG_SEQU_ADDRESS);
+ cirrus_switch_mode_setregs(GET_GLOBAL(table->seq), VGAREG_SEQU_ADDRESS);
+ cirrus_switch_mode_setregs(GET_GLOBAL(table->graph), VGAREG_GRDC_ADDRESS);
cirrus_switch_mode_setregs(GET_GLOBAL(table->crtc), cirrus_get_crtc());
- outb(0x00, 0x3c6);
- inb(0x3c6);
- inb(0x3c6);
- inb(0x3c6);
- inb(0x3c6);
- outb(GET_GLOBAL(table->hidden_dac), 0x3c6);
- outb(0xff, 0x3c6);
+ outb(0x00, VGAREG_PEL_MASK);
+ inb(VGAREG_PEL_MASK);
+ inb(VGAREG_PEL_MASK);
+ inb(VGAREG_PEL_MASK);
+ inb(VGAREG_PEL_MASK);
+ outb(GET_GLOBAL(table->hidden_dac), VGAREG_PEL_MASK);
+ outb(0xff, VGAREG_PEL_MASK);
u8 vesacolortype = GET_GLOBAL(table->vesacolortype);
u8 v = biosfn_get_single_palette_reg(0x10) & 0xfe;
@@ -364,8 +366,8 @@ cirrus_set_video_mode(u8 mode)
static int
cirrus_check()
{
- outw(0x9206, 0x3c4);
- return inb(0x3c5) == 0x12;
+ outw(0x9206, VGAREG_SEQU_ADDRESS);
+ return inb(VGAREG_SEQU_DATA) == 0x12;
}
void
@@ -377,12 +379,12 @@ cirrus_init()
dprintf(1, "cirrus init 2\n");
// memory setup
- outb(0x0f, 0x3c4);
- u8 v = inb(0x3c5);
- outb(((v & 0x18) << 8) | 0x0a, 0x3c4);
+ outb(0x0f, VGAREG_SEQU_ADDRESS);
+ u8 v = inb(VGAREG_SEQU_DATA);
+ outb(((v & 0x18) << 8) | 0x0a, VGAREG_SEQU_ADDRESS);
// set vga mode
- outw(0x0007, 0x3c4);
+ outw(0x0007, VGAREG_SEQU_ADDRESS);
// reset bitblt
- outw(0x0431, 0x3ce);
- outw(0x0031, 0x3ce);
+ outw(0x0431, VGAREG_GRDC_ADDRESS);
+ outw(0x0031, VGAREG_GRDC_ADDRESS);
}
diff --git a/vgasrc/vga.c b/vgasrc/vga.c
index 9fc7afd..516bbc3 100644
--- a/vgasrc/vga.c
+++ b/vgasrc/vga.c
@@ -961,7 +961,7 @@ biosfn_set_border_color(struct bregs *regs)
u8 al = regs->bl & 0x0f;
if (al & 0x08)
al += 0x08;
- outb(al, VGAREG_ACTL_ADDRESS);
+ outb(al, VGAREG_ACTL_WRITE_DATA);
u8 bl = regs->bl & 0x10;
int i;
@@ -971,7 +971,7 @@ biosfn_set_border_color(struct bregs *regs)
al = inb(VGAREG_ACTL_READ_DATA);
al &= 0xef;
al |= bl;
- outb(al, VGAREG_ACTL_ADDRESS);
+ outb(al, VGAREG_ACTL_WRITE_DATA);
}
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -988,7 +988,7 @@ biosfn_set_palette(struct bregs *regs)
u8 al = inb(VGAREG_ACTL_READ_DATA);
al &= 0xfe;
al |= bl;
- outb(al, VGAREG_ACTL_ADDRESS);
+ outb(al, VGAREG_ACTL_WRITE_DATA);
}
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -1234,7 +1234,7 @@ biosfn_set_overscan_border_color(struct bregs *regs)
{
inb(VGAREG_ACTL_RESET);
outb(0x11, VGAREG_ACTL_ADDRESS);
- outb(regs->bh, VGAREG_ACTL_ADDRESS);
+ outb(regs->bh, VGAREG_ACTL_WRITE_DATA);
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -1249,11 +1249,11 @@ biosfn_set_all_palette_reg(struct bregs *regs)
for (i = 0; i < 0x10; i++) {
outb(i, VGAREG_ACTL_ADDRESS);
u8 val = GET_FARVAR(regs->es, *data);
- outb(val, VGAREG_ACTL_ADDRESS);
+ outb(val, VGAREG_ACTL_WRITE_DATA);
data++;
}
outb(0x11, VGAREG_ACTL_ADDRESS);
- outb(GET_FARVAR(regs->es, *data), VGAREG_ACTL_ADDRESS);
+ outb(GET_FARVAR(regs->es, *data), VGAREG_ACTL_WRITE_DATA);
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -1264,7 +1264,7 @@ biosfn_toggle_intensity(struct bregs *regs)
inb(VGAREG_ACTL_RESET);
outb(0x10, VGAREG_ACTL_ADDRESS);
u8 val = (inb(VGAREG_ACTL_READ_DATA) & 0x7f) | ((regs->bl & 0x01) << 3);
- outb(val, VGAREG_ACTL_ADDRESS);
+ outb(val, VGAREG_ACTL_WRITE_DATA);
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -1274,7 +1274,7 @@ biosfn_set_single_palette_reg(u8 reg, u8 val)
{
inb(VGAREG_ACTL_RESET);
outb(reg, VGAREG_ACTL_ADDRESS);
- outb(val, VGAREG_ACTL_ADDRESS);
+ outb(val, VGAREG_ACTL_WRITE_DATA);
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -1357,7 +1357,7 @@ biosfn_select_video_dac_color_page(struct bregs *regs)
u8 val = inb(VGAREG_ACTL_READ_DATA);
if (!(regs->bl & 0x01)) {
val = (val & 0x7f) | (regs->bh << 7);
- outb(val, VGAREG_ACTL_ADDRESS);
+ outb(val, VGAREG_ACTL_WRITE_DATA);
outb(0x20, VGAREG_ACTL_ADDRESS);
return;
}
@@ -1367,7 +1367,7 @@ biosfn_select_video_dac_color_page(struct bregs *regs)
if (!(val & 0x80))
bh <<= 2;
bh &= 0x0f;
- outb(bh, VGAREG_ACTL_ADDRESS);
+ outb(bh, VGAREG_ACTL_WRITE_DATA);
outb(0x20, VGAREG_ACTL_ADDRESS);
}
@@ -1950,7 +1950,7 @@ biosfn_restore_video_state(u16 CX, u16 ES, u16 BX)
}
// select crtc base address
v = inb(VGAREG_READ_MISC_OUTPUT) & ~0x01;
- if (crtc_addr == 0x3d4)
+ if (crtc_addr == VGAREG_VGA_CRTC_ADDRESS)
v |= 0x01;
outb(v, VGAREG_WRITE_MISC_OUTPUT);