Page 1 of 1
How much do you support VGA?
Posted: Sun Sep 04, 2011 2:06 am
by RaffoPazzo
Do you guys support VGA by BIOS call or do you go on your way implementing VGA driver?
Why do you do it that way?
Do you support all VGA features or Just the text mode to have (early) console leaving GUI to graphics card?
Re: How much do you support VGA?
Posted: Sun Sep 04, 2011 3:22 am
by Combuster
If you use BIOS calls, it's just as easy to support VBE instead of VGA, and you get mostly superior results with that. The thing with VGA is that it is the simplest device to write a graphics driver for, both in terms of relative simplicity and in terms of available documentation and prior art. Therefore you are not likely to see a VGA implementation that depends on BIOS calls.
I have an operational graphics driver for VGA for both 4bpp and 8bpp modes including palette support, but there's still a lot of work to do in the graphics subsystem before all the features can be practically used (among which there are things that emulators really don't like). Especially if there's also another a dozen of other drivers to maintain.
Re: How much do you support VGA?
Posted: Sun Sep 04, 2011 6:15 am
by Chandra
Normally, it is desirable to invoke BIOS calls, in the early stage of the OS development. For the time being, you can stick with the BIOS calls but for long run you will definately be looking for a major graphics driver or some such. So my personal recommendation here would be to write the basic VGA driver at the very least. Once done, you can then jump to VESA driver. VESA 2 and lower implement BIOS calls so you don't have to do much with the driver. So you may prefer to write the driver for VESA 3 as well. Furthermore, you can try writing drivers for specific graphic cards, but that's certainly going to cost you a lot of work.
Cheers!
Re: How much do you support VGA?
Posted: Mon Sep 05, 2011 9:19 am
by jal
Chandra wrote:Normally, it is desirable to invoke BIOS calls, in the early stage of the OS development.
That depends a bit on what you're doing. I use GRUB, and hence start in protected mode, so directly accessing the (text mode) video memory is much easier than going through the BIOS.
JAL