VGA - disabling character blinking
Posted: Sun Apr 17, 2016 12:05 pm
In VGA text mode, 8th bit of attribute byte has two meanings. In real mode, it is possible to toggle between them via Int 0x10/AX=1003h.
I try to do it in protected mode, so no BIOS is available. I think it should be possible to do it via Mode Control register (0x3C0/0x10). I tried to do it, but it resulted in black screen. Here's my code:
Did someone have this problem before? What am I really doing with this code? Am I misinterpreting the documentation? Can someone help me?
I try to do it in protected mode, so no BIOS is available. I think it should be possible to do it via Mode Control register (0x3C0/0x10). I tried to do it, but it resulted in black screen. Here's my code:
Code: Select all
inb(0x3DA); // to index state
outb(0x3C0, 0x10); // register index
// if I stop at this point or beyond then black screen
uint8_t value = inb(0x3C1);
inb(0x3DA);
outb(0x3C0, 0x10);
outb(0x3C0, value & 0xF7); // disable 4th bit (numbering from 1) to go to 16 background colors