Fortunately regular vga cards are not very important to me,
actually, I am
really most interested in integrated chipsets, such as the stpc
and the via
apollo ple133 northbridge, both of which are legacy VGA register compatible.
In this case, when the chips really ARE VGA compatible, of course you can program the neccessary registers with appropriate values and get the expected results. You could try this for all graphics chips, just for fun. With a little luck it will work better than we expect.
You will want to dump the VGA registers on a running system, and of course you're interested in 0x3c0, 0-0x14@0x3c0:0x3c0, 0x3c3, 0-4@0x3c4:0x3c5, 0x3c6-0x3c9, 0-8@0x3ce:0x3cf and 0-0x14@0x3d4:0x3d5.
Thanks, I have done a fair amount of vga register progamming with the stpc, and have the scars to prove it.
For the other comments....
I think fb vga is okay as well, but, I need some kind of vga up very early in the boot process for my application. I believe the fb enable in linuxbios is a vga bios call (not sure about this, someone correct me if I have that wrong), so this code is not helpful for integrated chipsets. Text vga is also a little simpler to interface from rom.
The reason for vga, BTW, is that some embedded products require a screen for user setup or diagnosis. It is a major support hassle to try and talk a non-technical user through hooking up a serial console to their Windows machine. A web browser interface is the next best thing, for the non-technical user, but if they have network problems the sure thing is to hook up a vga monitor. Anyone can do that, these days, even your Aunt Millie.
So I think the bottom line to my Q's is that any vga register code I contribute for the stpc (or the ple133) might be useful for other integrated chipsets, to the extent they have legacy register compatibility, but is unlikely to be useful for much of anything else.
Thanks to all for the helpful replies.
-Steve