I know no-one has made a post in the last few days, but in case you haven't got it working I thought I'd chip in.
Is there a way to do something similar, but that works?...
I've never seen a Linux-based ISO work from being chainloaded, that tends to be a Windows/DOS thing. Instead, find where the kernel and initrd files are (usually linux
for the kernel, and initrd.gz
for initrd) and place them after the root (hd32)
title 1) Slax\n Slax Core 6.1.2
map /ubcd/custom/slax_ubcd.iso (0xff) || map --mem /ubcd/custom/slax_ubcd.iso (0xff)
kernel /boot/vmlinuz from=/ubcd/custom/slax_ubcd.iso ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4
However, a huge amount of Linux distros won't boot just with kernel and initrd locations, you have to pass boot parameters to them on kernel line. Different versions of Linux (ie Debian, Ubuntu, Knoppix) require different boot parameters, and stripped versions, such as the Debian version of GPartEd, sometimes require and support different parameters to the full versions. Slax has a little feature I like very much, that is the from=
parameter, that lets you pass the location of the ISO to the emulated ISO, as once loaded the "live" system cannot use the Grub4Dos mapping and so cannot locate additional files needed to boot properly. Not all Linux use this though, and some might use a different command for it (ie, boot_from=
If you search through this forum, the one at Boot-Land
and at 911CD
you should be able to find people who have already got working code posted for the systems you're using, should you struggle to get it working yourself.