aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Robbins <contact@andrewrobbins.info>2018-12-29 00:40:00 -0500
committerAndrew Robbins <contact@andrewrobbins.info>2018-12-29 00:50:47 -0500
commit9f5d89440e5219d9aef61461cc3ac6a90baccc9c (patch)
treec4f4750fb0fd678d17bf858e308deb78169e67a9
parentdacd26cb9014cd70dc6ddd73f692f4a08ac3db9f (diff)
downloadlibrebootfr-9f5d89440e5219d9aef61461cc3ac6a90baccc9c.tar.gz
librebootfr-9f5d89440e5219d9aef61461cc3ac6a90baccc9c.zip
Copy correct number of bytes for floppy BPB
The Bios Parameter Block (BPB) is 51 bytes, not 52. As-is, the first byte of executable code from the floppy image boot record is copied along with the BPB to boot.img; this extra byte isn't harmful to leave in since execution begins at offset 0x63+2 rather than 0x3C+2, but is a little messy.
-rwxr-xr-xprojects/grub/grub-helper2
1 files changed, 1 insertions, 1 deletions
diff --git a/projects/grub/grub-helper b/projects/grub/grub-helper
index 3a74095f..ce874070 100755
--- a/projects/grub/grub-helper
+++ b/projects/grub/grub-helper
@@ -278,7 +278,7 @@ grub_floppy_image_make_bootable() {
local oem_name='\x4C\x49\x42\x52\x45\x20\x20\x20'
# write $floppyimg Bios Parameter Block to $bootimg first
- dd if="$floppyimg" of="$bootimg" bs=1 skip=11 seek=11 count=52 conv=notrunc
+ dd if="$floppyimg" of="$bootimg" bs=1 skip=11 seek=11 count=51 conv=notrunc
dd if=<(printf "$oem_name") of="$bootimg" bs=1 seek=3 conv=notrunc
dd if=/dev/zero of="$floppyimg" count=1 conv=notrunc
dd if="$bootimg" of="$floppyimg" conv=notrunc