Adam Agnew agnew@cs.umd.edu writes:
On Fri, 8 Aug 2003, SONE Takeshi wrote:
I guess, in this direction of development, you will most certainly have to implement more legacy BIOS services (realmode INTxx).
And, once SCSI BIOS worked, you automatically get INT13 (disk services) because SCSI BIOS hooks it. You already have INT10 (video services) by external VGA BIOS. Also you already have IDE and floppy drivers to implement your own INT13.
OTOH, loading first sector of first drive into 0x7c00 and jumping into it is an easy task, because you already have pieces of code to support it (realmode switching, bounce buffer, etc.)
So, will you add a few more legacy services to run LILO and bzImage directly from LinuxBIOS? Even more services to boot Windows? What do you think?
No one really wants LinuxBIOS to support legacy BIOS services. However, the need for them keeps creeping in (I believe Ron plans to add int15 to have better support for some vga roms). In the meantime, with a little hacking you can probably get LinuxBIOS working with Bochs BIOS to do the same job. Please see freebios/util/ADLO, it currently works for booting Windows 2000 on SiS630 boards with LinuxBIOS and you probably only need to make a few changes in loader.S to get it to work on your board too.
Given that Bochs BIOS aka ADLO works. That is solution for supporting binary only x86 options roms.
Nothing I have seen requires these things to be up terribly early, and without source we can't bring them up early anyway.
Other directions similar directions are OpenBIOS for Open firmware support. And at some point we might even do EFI support.
However none of this will get into the core of LinuxBIOS, they will all be separate ELF loadable components like etherboot.
The project will still work on them, but they are not components of the core.
To grow beyond a certain point support it is required to support legacy hardware, and hardware without open source drivers. But by no means do we want to encourage that kind of hardware.
The really fun prospect is to put general option ROM support into ADLO and have Etherboot as an Option ROM implementing the network boot support.
Legacy services are expedient.
Eric