On Tue, 12 Aug 2003, Stefan Reinauer wrote:
Emulation and ADLO go hand in hand I think. There are 2 different problems to be addressed:
I'm not so sure. The emulation code supports the INT functions needed for vga setup. I would actually be inclined to dump ADLO rombios.c completely and replace it with real C code.
ADLO is a great proof-of-concept but after walking the code I find too much assembly in there, most of it not needed.
It's the bochs heritage.
If you look at the x86 emulator in the freebios tree, you can see it supports emulation and in addition provides (in normal C, not bcc) 32-bit functions for vga calls to the bios.
- x86 realmode code execution.
- legacy api emulation/implementation (pcibios, etc)
- LinuxBIOS1 on x86 supports 1) directly and does 2 with an emulation (pcibios.c)
I'm not sure I agree with your definitions.
Emulation means (to me) emulating an x86 via software instruction decoding and execution.
the pcibios code is not doing emulation -- it is supporting pcibios functions, albeit in 32-bit mode.
While the x86emu will fit in with etherboot, it won't fit in with a linux kernel.
ron