[Open-graphics] From PCI to VGA registers
Timothy Normand Miller
theosib at gmail.com
Wed Sep 5 11:58:20 EDT 2007
On 9/5/07, Dieter <netbsd at sopwith.solgatos.com> wrote:
> > In order to facilitate early boot access to a device some cards have a chunk
> > of ROM BIOS code on them. Typically this will be x86/pc machine code and/or
> > Forth OpenFirmware code. If you can't run this natively you have to either
> > emulate it (Xfree86 contains an x86 emulator for this purpose), or just build
> > the setup code into your system and ignore the rom.
>
> It is not clear to me how Xfree86 having an x86 emulator helps with early boot?
Not for boot, but for thunking to BIOS in order to do initialization
or make some call to VESA extensions. A good example of this would be
to initialize a secondary card for which we don't have sufficient docs
to handle ourselves.
>
> IIRC, some non-x86 machines have an x86 translator in firmware.
Yeah, I encounted from Alpha boxes like that, although we couldn't get
certain cards to work because the time, it only supported 16-bit x86
code.
> > For non-x86 systems we generally don't care about vga compatibility.
>
> How does the non-x86 firmware display console messages?
Graphically. For a Sun machine, you would provide Forth code routines
to handle things like painting characters, clearing areas, scrolling,
etc. You can implement them however you like, and the typical
approach is to use the native monitor resolution, ask for (or provide
yourself) a font of appropriate size, and render stuff using your
drawing engine.
--
Timothy Normand Miller
http://www.cse.ohio-state.edu/~millerti
Open Graphics Project
More information about the Open-graphics
mailing list