MKISOPTS="-r -N -L -d -D -J" TODAY=`date '+%Y-%m-%d'` ISOFILE="../wincombo.iso"
mkisofs $MKISOPTS \ -V "W98+Office2k" \ -A "MS Win98, Office2000 & IE6. Created on $TODAY" \ -o $ISOFILE \ -b Boot/TECHW0RM.IMG -c Boot/boot.cat .
dir $ISOFILE
md ~/briefcase/wincombo/isolinux
cat <<EOF > isolinux.cfg PROMPT 1 DISPLAY /isolinux/menu.txt DEFAULT 2 TIMEOUT 100 EOF ls Boot/*.img | cat -n | awk '{printf "LABEL "$1"\n KERNEL /isolinux/memdisk\n APPEND initrd="$2"\n\n"}' >> !$ $ cat !$ PROMPT 1 DISPLAY /isolinux/menu.txt DEFAULT 2 TIMEOUT 100 LABEL 1 KERNEL /isolinux/memdisk APPEND initrd=Boot/TechW0rm.img LABEL 2 KERNEL /isolinux/memdisk APPEND initrd=Boot/win98se.img -- The 'KERNEL' has to appear under every LABEL! ls Boot/*.img | cat -n | sed "s/$t/) /; s|Boot/|Boot |; s/\.img$//" > menu.txt $ cat !$ 1) Boot TechW0rm 2) Boot win98se
The problem of the following approach is that using 1 or 2 doesn't work when booted.
cat <<EOF > isolinux.cfg PROMPT 1 TIMEOUT 100 KERNEL /isolinux/memdisk DEFAULT win98se EOF for ff in Boot/*.img; do printf "LABEL $(fname $ff)\n\tAPPEND initrd=$ff\n\n"; done >> !$ $ cat !$ PROMPT 1 TIMEOUT 100 KERNEL /isolinux/memdisk DEFAULT win98se LABEL TechW0rm APPEND initrd=Boot/TechW0rm.img LABEL win98se APPEND initrd=Boot/win98se.img
MKISOPTS="-r -N -L -d -D -J" TODAY=`date '+%Y-%m-%d'` ISOFILE="../wincombo.iso" mkisofs $MKISOPTS -f \ -V "W98+Office2k" \ -A "MS Win98, Office2000 & IE6. Created on $TODAY" \ -o $ISOFILE \ -b isolinux/isolinux.bin -c isolinux/boot.cat \ -no-emul-boot -boot-load-size 4 -boot-info-table . dir $ISOFILE
-f Follow symbolic links when generating the filesystem. When this option is not in use, symbolic links will be entered using Rock Ridge if enabled, otherwise the file will be ignored.