boot.c is a complete mess geared to only load elf files (and hack a.out into some sembelance of an elf file wrt text/data/bss).
I want to add LE, PE and COFF to its executable loading, but this requires huge changes in boot.c (i get TONNES!! of email from ppl about booting homebrew kernels written with DJGPP, etc and windows PE files) What I propose is a kind of driver drop-in, eg: struct EXEC_DRV { int (*init_drv)(void); int (*uninit_drv)(void); void (*validate_exec)(....); void (*load_image)(....); int (*unload_image)(....); }; (i have not really given the above much thought yet;) I'd like to abstract as much out as possible from boot.c and make it generic, so we can config on build which exec drivers to include at compile time etc This would give us the ability to drop in new formats at will with minimal overhead and changes to the core of grub. much as (i assume) the VFS layer did for file systems, we really need something for executable files. since loading windows PE files is not like loading ELF files, but COFF files might be massaged into an AOUT kludge, I'd rather go native loading. it might even let us nativly load NTLDR, etc without chainloading the windows bootsector? (i havenot investigated this yet). basically i'm sick of requests for a bootloader that loads PE and COFF files, so I want to hack on grub without forking it. is anyone else working on anything like this? i thought i'd hack on boot.c and split it all out and once its all up to par, submit it back for review at the end.. (wont be for a while since i'm off back home to australia for xmas for 2 weeks then its back to work in london nose to the grind...) if anyones interested... etc. thoughts, musings, heart palpitations, screams of anguish?? ja ne. -Stu 'Mad Aussie in London' George - Dark Fiber <[EMAIL PROTECTED]> Write Your Own OS [FAQ] http://www.mega-tokyo.com/os 3x3 Eyes Fanfiction Homeroom / Sazan Aizu http://www.mega-tokyo.com/pai Roguelike News II http://www.mega-tokyo.com/rlnews Sarien Sierra AGI Emulator http://www.mega-tokyo.com/sarien _______________________________________________________ _______________________________________________ Bug-grub mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-grub