It appears that any CD / hard disk image that loads an OS that uses it's own drivers to access the filesystem fails. You can load Linux-based images with some options if the kernel supports it through the /iso-scan flag, but that's not my aim here..
e.g., I can load up FalconFour's UBCD 4.61, but if I try to load up Mini XP, that will BSOD, despite the fact that I can successfully boot it from an actual CD.
Now, F4UBCD uses GRUB4DOS to load the Mini XP image, so it can work, it just doesn't...
I can boot the DOS utilites part by doing:
map --mem (hd0,1)/F4UBCD.iso (0xFF)
map --hook
map --mem (0xFF)/F4UBCD/Images/hbdos13.gz (fd0)
map --rehook
rootnoverify (fd0)
chainloader +1 (fd0)
boot
But if I do this with the XP CD image (that F4UBCD normally uses GRUB4DOS to load from itself), it crashes.
(Using the boot ISO feature from EasyBCD won't even load the DOS image; it can't find it).
How would I go about making an image loaded into memory indistinguishable from an actual CD? It's in the "drive", the drive is an "optical" drive, it's read-only, don't touch it, Windows, you have the drivers, just read from it and leave it be; and that memory is reserved, you can't use it, just pretend it's not there.
This approach should make it possible to load anything that can load from a CD / DVD drive, as a hard disk image, no matter what OS is on the disk. Bonus, since it's been loaded fully into the memory, you can manipulate the disk that the image is on (e.g., re-size the partition from a GParted image), and not have it locked out.
EDIT: The F4UBCD command for loading Mini XP is:
chainloader /HBCD/XPLOADER.BIN
However, when I:
map --mem (hd0,1)/F4UBCD.iso (0xFF)
map --hook
root (0xFF)
chainloader (0xFF)/HBCD/XPLOADER.BIN
boot
I get the BSOD, same as when I
map --mem (hd0,1)/F4UBCD.iso (0xFF)
map --hook
root (0xFF)
chainloader (0xFF)
boot
And then use the F4UBCD menu to boot Mini XP
e.g., I can load up FalconFour's UBCD 4.61, but if I try to load up Mini XP, that will BSOD, despite the fact that I can successfully boot it from an actual CD.
Now, F4UBCD uses GRUB4DOS to load the Mini XP image, so it can work, it just doesn't...
I can boot the DOS utilites part by doing:
map --mem (hd0,1)/F4UBCD.iso (0xFF)
map --hook
map --mem (0xFF)/F4UBCD/Images/hbdos13.gz (fd0)
map --rehook
rootnoverify (fd0)
chainloader +1 (fd0)
boot
But if I do this with the XP CD image (that F4UBCD normally uses GRUB4DOS to load from itself), it crashes.
(Using the boot ISO feature from EasyBCD won't even load the DOS image; it can't find it).
How would I go about making an image loaded into memory indistinguishable from an actual CD? It's in the "drive", the drive is an "optical" drive, it's read-only, don't touch it, Windows, you have the drivers, just read from it and leave it be; and that memory is reserved, you can't use it, just pretend it's not there.
This approach should make it possible to load anything that can load from a CD / DVD drive, as a hard disk image, no matter what OS is on the disk. Bonus, since it's been loaded fully into the memory, you can manipulate the disk that the image is on (e.g., re-size the partition from a GParted image), and not have it locked out.
EDIT: The F4UBCD command for loading Mini XP is:
chainloader /HBCD/XPLOADER.BIN
However, when I:
map --mem (hd0,1)/F4UBCD.iso (0xFF)
map --hook
root (0xFF)
chainloader (0xFF)/HBCD/XPLOADER.BIN
boot
I get the BSOD, same as when I
map --mem (hd0,1)/F4UBCD.iso (0xFF)
map --hook
root (0xFF)
chainloader (0xFF)
boot
And then use the F4UBCD menu to boot Mini XP
Last edited: