Quote:
Originally Posted by ninjabob7
[snip]
Edit: Okay, the chainloader method looks like it started booting, then the disk gave this message:
I/O Error: Insert another disk
The kernel=mbr initrd=.img method also failed. GRUB gave a message about not fitting the kernel in memory or something. Which is strange, since it should only be 512 bytes. (dd if=/dev/loop0 of=mbr.bin bs=512 count=1) Maybe I read it wrong and the initrd couldn't fit in memory. Should I gzip it?
|
OK, I fooled around a little more, and think I've hit a brick wall:
I grabbed a few old MSDOS boot disks and used
dd to copy them onto
/dev/hd4.
Then I set GRUB to do a
chainload (hd4)/floppy.img. (Just that single line, nothing else.)
And then I discovered (well, rediscovered -- I should have remembered) that the MSDOS boot loader
explicitly assumes that the boot sector is on a physical floppy drive, and includes code to load from that drive. (Actually, given that the loader was designed for a system without a hard drive, this was probably a reasonable thing to do.)
Anyhow, bottom line, I get the "Invalid boot disk" message after the boot sector is started by GRUB. (
That part worked fine!)
I did try a
map (hd4) (fd0), but (of course) the physical characteristics of hd4 and fd0 are too different for
that to work.
I'd guess the only way to get this to work would be to use the boot sector image of, say, an old "Windows 3.1" boot disk, but, frankly, I suspect that that might just be an exercise in futility.
There may be some way to us
dosbox to get this done, but, since you (
ninjabob7) don't actually need it, I'm going to think about other things for a while.