It also seems to be easier to load the kernel from the hard drive, instead of loading a kernel from the flash, then having that kernel load the kernel from the hard drive. If I can load the kernel from the hard drive, then how do I get the kernel to the hard drive. Does it need its own partition. Maybe I could make a small raw partition at the beginning of the drive, and the rest of the root file system on another partition behind the raw one. Any thoughts? John
This is what I do, using a CF instead of an HDD. You need to skip over the partition table, which is hardcoded in /src/rom/ide_fill_inbuf.c at 0x7e00 (63 * 512). I had to set this to 32*512 for my CF. I also had to fumble with the hard coded delays a bit too. You can make a small partition for the kernel and a larger one for the rootfs, so the kernel is just cat'ed or dd'ed raw to /dev/hda1 for example, and the rootfs is in /dev/hda2.
I'd be happy to provide other details as I have booted from both floppy, ide0, and from ide2 with rootfs on ide0. But all of this requires a little massaging of the codebase.
-Steve