Gert Hulselmans
2010-Mar-11 02:24 UTC
[syslinux] Recovery console doesn't work in chain.c32 3.85 or 3.86-pre1
The Windows recovery console doesn't work with chain.c32 3.85 or 3.86-pre1. COM32 chain.c32 APPEND cmldr=/cmldr Initially reported by cdob at: http://www.boot-land.net/forums/index.php?showtopic=10487#entry94001 It did work fine with the: "chain.c32: Handle nonlinear logical partitions" patch. The following patch broke the recovery console hack: chain.c32: add option to set hidden sectors; load boot sector for NTLDR http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=033fb123375ce6af905dcb2408fa0df74960e066 You can download a small image: http://ubcd.stopspazzing.com/downloads/cmdcons.img.gz You can test it in qemu: $ qemu -boot c -hda cmdcons.img syslinux.cfg file: UI menu.c32 LABEL 1 MENU LABEL Recovery console (RC) original patch (working) COM32 chain_g.c32 APPEND cmldr=/cmldr LABEL 2 MENU LABEL Recovery console (for fixing chain.c32 3.86-pre1) COM32 chain.c32 APPEND cmldr=/cmldr LABEL 3 MENU LABEL Boot Grub4dos (grldr) like RC and display contents of 0000:7C03 COM32 chain.c32 APPEND cmldr=/grldr When you boot grub4dos from the menu, you can read the memory address to which the "cmdcons" string should be written: For the 'Read contents at 0x7C03', grub4dos returns: Booting Read contents at 0x7C03 Address 0x7c03: Value 0xd08ed88e Address 0x7c07: Value 0x897c00bc - Gert Hulselmans
Shao Miller
2010-Mar-11 03:07 UTC
[syslinux] Recovery console doesn't work in chain.c32 3.85 or3.86-pre1
Gert Hulselmans wrote:> > The Windows recovery console doesn't work with chain.c32 3.85 or > 3.86-pre1. > > COM32 chain.c32 > APPEND cmldr=/cmldr > > ... >The patch is: LABEL cmdcons COM32 chain.c32 APPEND hd0 1 cmldr=/cmldr If you don't specify a partition (which are counted from 1 onwards), you are somehow hoping to patch "cmdcons" into the MBR, versus the partition's boot-sector. - Shao Miller