[grub] switch to the more compatible Grub 2.00-22

* Also enable Old BIOS fixes with Syslinux, Grub installation and fix related UI issues
* Also add a check to confirm that Grub SBR will fit
This commit is contained in:
Pete Batard 2014-11-18 23:49:29 +00:00
parent b3947fc026
commit 8b47e95eb5
7 changed files with 96 additions and 60 deletions

View file

@ -1,10 +1,12 @@
grldr.mbr was compiled on Linux Debian 7.7.0 x64, using gcc-multilib 4.7.2,
from https://github.com/chenall/grub4dos/commit/8549aae.
This directory contains the Grub4DOS boot records that are used by Rufus
Note that, for convenience reasons, the first 512 bytes from this grldr.mbr are
*not* the ones that Rufus processes when writing the actual MBR (first 512 bytes).
Instead, the byte array from src/ms-sys/inc/mbr_grub.h (whose content is identical)
is what Rufus uses. If you have modified this file, and the MBR section is
altered, be mindful that you also need to update the array in mbr_grub.h.
* grldr.mbr was compiled on Linux Debian 7.7.0 x64, using gcc-multilib 4.7.2, from
https://github.com/chenall/grub4dos/commit/8549aae.
For details, see src/format.c.
* Note that, for convenience reasons, the first 512 bytes from this grldr.mbr are
*not* the ones that Rufus processes when writing the actual MBR (first 512 bytes).
Instead, the byte array from src/ms-sys/inc/mbr_grub.h (whose content is identical)
is what Rufus uses. If you have modified this file, and the MBR section is altered,
be mindful that you also need to update the array in mbr_grub.h.
* For details, see src/format.c, src/msys/br.c and src/msys/inc/mbr_grub.h.

Binary file not shown.

View file

@ -1,16 +1,25 @@
boot.img and core.img were compiled from git://git.savannah.gnu.org/grub.git,
commit 72ec399ad8d6348b6c74ea63d80c79784c8b84ae, on a Debian 7.7.0 x64 system.
This was done following the guide from:
http://pete.akeo.ie/2014/05/compiling-and-installing-grub2-for.html.
This directory contains the Grub 2.0 boot records that are used by Rufus
boot.img has been modified to nop the jump @ 0x66 as per grub2's setup.c comments:
* boot.img was compiled from git://git.savannah.gnu.org/grub.git at commit:
72ec399ad8d6348b6c74ea63d80c79784c8b84ae.
/* If DEST_DRIVE is a hard disk, enable the workaround, which is
for buggy BIOSes which don't pass boot drive correctly. Instead,
they pass 0x00 or 0x01 even when booted from 0x80. */
Note that, for convenience reasons, the content of boot.img is *not* the one that
Rufus processes when writing the MBR.
Instead, the byte array from src/ms-sys/inc/mbr_grub2.h (whose content is identical)
is what Rufus uses. If you modify these files, be mindful that you may also need
to update the array in mbr_grub2.h.
* core.img was compiled from grub 2.00-22 using the tarballs found at
https://launchpad.net/ubuntu/+source/grub2/2.00-22.
The use of the 2.00-22 source is done for compatibility reasons.
* This was done on a Debian 7.7.0 x64 system using gcc-multilib 4.7.2, following
the guide from http://pete.akeo.ie/2014/05/compiling-and-installing-grub2-for.html
Note that exFAT was not included in core.img in order to keep it under 31.5 KB.
* boot.img has been modified to nop the jump @ 0x66 as per grub2's setup.c comments:
/* If DEST_DRIVE is a hard disk, enable the workaround, which is
for buggy BIOSes which don't pass boot drive correctly. Instead,
they pass 0x00 or 0x01 even when booted from 0x80. */
* Note that, for convenience reasons, the content of boot.img is *not* the one that
Rufus processes when writing the MBR.
Instead, the byte array from src/ms-sys/inc/mbr_grub2.h (whose content is identical)
is what Rufus uses. If you modify these files, be mindful that you may also need
to update the array in mbr_grub2.h.
* For details, see src/format.c, src/msys/br.c and src/msys/inc/mbr_grub2.h.