[syslinux] USB question
Josh Lehan
jlehan at scyld.com
Wed Apr 12 16:34:16 PDT 2006
Rich Mahn wrote:
> The BIOS on my laptop does not support booting from USB.
> I would like to be able to have my Windows XP on a partition
> on a USB disk drive and be able to run from the USB disk using
> perhaps a CD or floppy to bootstrap the system.
> My questions:
> 1). Is there a way to use syslinux and friends to do this?
> 2). If not, is there some other boot loader that may work?
> 3). Is there any hope at all?
>
> Rich
I have also wanted to do this.
Googling "usb boot floppy", I see lots of disks that will boot into some
flavor of MS-DOS and load USB drivers, giving you drive letter access to
some USB devices and filesystems, but this won't be of any help to
actually boot.
I wonder if some COMBOOT program could be made, executable from SYSLINUX
(or DOS directly), that would search for all USB devices and then
chain-boot to them.
I know that chain-booting from a floppy has been done for at least
CD-ROM drives, for old BIOS's that do not understand how to boot from CD:
http://btmgr.webframe.org/
I also rolled something together myself, for chain-booting from a floppy
(or CD) to a network card. It uses SYSLINUX to boot the floppy and
detect the PCI card, then loads Etherboot to do a PXE boot over the network:
ftp://ftp.scyld.com/private/jlehan/pxe-on-a-disk.html
However, I know of nothing that will do this for USB-based devices. It
would be a great thing if some guru could write a COMBOOT program to
detect USB devices. Then, it could be plugged into the above boot
mechanisms, and we'd all be able to boot USB from any computer whose
BIOS was capable of booting from a floppy (e.g. all of them)!
This would be tricky, though: the program would have to scan the PCI bus
for USB controllers, support at least 3 different controller *HCI
standards, then dig through the USB hierarchy, discovering hubs as
needed, in order to reach USB devices behind hubs. Once the device has
been found, then it still needs to be commanded, and there's USB
floppies, USB hard drives, USB ZIP drives, and various flavors of USB
memory sticks and such! By the time you had USB booting all sorted out,
you would have written about half of an operating system. And then,
someone would demand you also support FireWire :)
So, anybody want to take on the project of getting USB booting working...?
Josh
More information about the Syslinux
mailing list