GNU GRUB 2 RISC OS Port

I have confirmation of it booting Linux on:

Booting on pre-RiscPC machines is not yet implemented.

If you know of any other systems it works on please yet me know. For system for which automatic detection is not yet implemented you will need to set the GRUB enviroment variable "grub_arm_linux_sysid" to the value required by Linux. Detection has been implemented for:

No installer has been written yet. Incompatable changes may be made.

Whilst GRUB is running, escape is remapped to Ctrl-Q

Compilers

GRUB will not build with any currently released RISC OS targeting compiler due to ELF and GNU AS being used. GCC 4 targeting arm-linux-gnu is known to work. GCC 3.2 or later should also work.

Binaries

These binaries only contain the RISC OS componments.

grub-1.91-teb3.zip (signature)
Built using the sources and patches below, though to patch 18.

Sources

I have a copy (signature) of grub (2) 1.91 (signature) avaiable for download, to which the patches below may be applied.

Patches

If building GRUB for RISC OS apply at least to patch 10. Patches should be applied in the order listed.

grub2-patch17.diff.gz (signature) (now in CVS)
Fix ls and grub_vsprintf.
grub2-patch11.diff.gz (signature) (now in CVS)
Fix incorrect use of file->offset in io/gzio.c.
grub2-patch-mg2.diff.gz (now in CVS)
Marco Gerards' parser changes
grub2-patch14c.diff.gz (signature)
64 bit disk address support, non - RISC OS bits.
grub2-patch12c.diff.gz (signature) (now in CVS)
Linux/ADFS partition support, non - RISC OS bits. (signature)
grub2-patch3c.diff.gz (signature) (partly in CVS)
Core RISC OS support, portabilty fixes, genmk.rb enhancment.
grub2-patch6c.diff.gz (signature)
Address space abstraction
grub2-patch10b.diff.gz (signature)
Linux/ARM loader, mininum Linux version: 2.4.18-rmk6 or 2.5.17. Please note that as this patch includes a header file from Linux, it is under the GNU GPL version 2 only.
grub2-patch18.diff.gz (signature)
Add grub-mkfs to bulid a FAT12 fs for installing to RISC OS, not finished. Requires patched mtools.

Screenshots

1 2