Goal: - examine a variety of bootloaders, but ONLY look at their 446-byte first stage - find one that is fairly well-used and mature - however, have it be able to be modified so it LOOKS ONLY FOR THE PARTITION WE SPECIFY - to specify a partition, we must be able to hard-code a value in it somehow - once it finds the partition we want to to find, it chainloads the VBR ==== GRUB Legacy ==== You can download its source from here: http://packages.debian.org/squeeze/grub-legacy It has several embedded variables: http://www.gnu.org/software/grub/manual/legacy/grub.html#Embedded-data These are defined in 'stage1/stage1.S': stage1_version boot_drive force_lba stage2_address stage2_sector stage2_segment Various discussions of 'stage2_sector': http://www.phrack.org/issues.html?issue=63&id=10 http://thestarman.pcministry.com/asm/mbr/GRUB.htm http://www.gnu.org/software/grub/manual/legacy/Bootstrap-tricks.html Where does 'stage2_sector' normally get set? util/grub-install.in ==== Grub4DOS ==== grldr.mbr looks for a file called 'grldr'. This name can be changed: http://diddy.boot-land.net/grub4dos/files/grldrmbr.htm ==== Lilo ==== Lilo's 446-byte bootloader looks for a partition with an *active* flag set.