On 25.02.2008 10:44, Stefan Reinauer wrote:
I do believe we should merge what we call ADLO as another loader into v3. Augusto Pedroza wrote a patch for that for GSoC iirc.
Just like we have ELF loading and lar segment loading and VSA loading now.
Maybe we could even use the VSA loader to run bochs bios, instead of ADLO? It's all 16bit lumber ;)
Then using BIOS compatibility would just mean putting a bochsbios.bin into the lar.
ADLO is so fragile because it was written in assembler (so no stack is needed?!?), reimplementing all the things we have in coreboot in C. So recognizing that it just another loader would simplify and stabilize things quite a bit.
Someone might say we can do this with libpayload or by adding a lot of chipset specific code to ADLO and rewrite it from scratch. Then we're at 2500 lines of code instead of 25 and we have a nasty multi-staging.
There is another possibility: Use the recently published official documents about the data expected by NTLDR and successors. While this does not help the *BSD use of ADLO, the Windows use of it could be scrapped and we'd probably end up with a lot less code than what ADLO is now.
Comments?
Regards, Carl-Daniel