Page 1 of 1
x86 emulation for running BIOS
Posted: Wed Dec 12, 2007 8:13 am
by jal
Has anyone ever thought of using x86 emulation for running (video) BIOS? With x64, V86 has gone the way of the dodo, and I'd expect it to be useful to emulate a virtual x86 running in real mode, e.g. using parts of Dosbox. The only possible problems I could see is memory mapped I/O, as you'd want to restrict the BIOS to access to certain memory regions only (with in/out it's easier, since you know for sure that's device I/O).
JAL
Posted: Wed Dec 12, 2007 8:29 am
by AJ
Hi,
Funnily enough, I was thinking along very similar lines the other day. My thoughts were (as I am writing a 64 bit OS) to use some of the CPU's built in virtualisation mechanims to simulate v86 mode (rather than an emulator). You would copy the actual BDA and IVT from the real PC to the virtual PC and run in a managed real-mode.
As I am nowhere near this yet, I'm afraid that's as far as my thought processes had gone.
Cheers,
Adam
Posted: Wed Dec 12, 2007 8:31 am
by Solar
The OpenFirmware of the
Genesi Pegasos reportedly has a x86 BIOS emulator in order to initialize the Radeon gfx card on the (PPC) machine. Don't ask me about details, I only recently read it in a
forum post on amiga-news.de and don't know any more about it, but it does seem possible.
Posted: Thu Dec 13, 2007 6:20 am
by jal
Solar wrote:The OpenFirmware of the
Genesi Pegasos reportedly has a x86 BIOS emulator in order to initialize the Radeon gfx card on the (PPC) machine.
Some googling found me a couple of interesting links, starting with x86emu, which was licenced by SciTech as BSD/MIT, but SciTech seems to be out of business (their homepage dates 2006, with a message saying they are selling off their core business), and there's no download link to x86emu (see
here). Then I found
this on FreeVGA, the x86emu branch of xfree86 (not to be mistaken for the
Free VGA project, that has died about 10 years ago), and its inclusion in LinuxBIOS. So it seems there's already a lot available. However, searching the xfree86 pages on x86emu or FreeVGA brings up nothing.
EDIT: Some confusion on my part, FreeVGA is the name the authors of the quoted paper gave to their implementation of x86emu, x86emu is the name still used by xfree86.
JAL
Posted: Thu Dec 13, 2007 8:07 am
by Brynet-Inc
jal wrote:Solar wrote:The OpenFirmware of the
Genesi Pegasos reportedly has a x86 BIOS emulator in order to initialize the Radeon gfx card on the (PPC) machine.
Some googling found me a couple of interesting links, starting with x86emu, which was licenced by SciTech as BSD/MIT, but SciTech seems to be out of business (their homepage dates 2006, with a message saying they are selling off their core business), and there's no download link to x86emu (see
here). Then I found
this on FreeVGA, the x86emu branch of xfree86 (not to be mistaken for the
Free VGA project, that has died about 10 years ago), and its inclusion in LinuxBIOS. So it seems there's already a lot available. However, searching the xfree86 pages on x86emu or FreeVGA brings up nothing.
EDIT: Some confusion on my part, FreeVGA is the name the authors of the quoted paper gave to their implementation of x86emu, x86emu is the name still used by xfree86.
JAL
I haven't entirely read your post, But is this at all related?
http://www.scitechsoft.com/ftp/devel/obsolete/x86emu/
Posted: Fri Dec 14, 2007 2:37 am
by jal
Yes it is, I found it myself via the Scitech site (which also has a nice collection of TTF fonts btw :)) after posting. From the sources of xfree86, newer versions can be extracted I think.
JAL