On 2019-4-10 1:20, Ady Ady via Syslinux wrote:>>> Test #2: if you unplug the USB and reboot the system, can you >>> successfully boot directly to the HDD's OS? >>> >> Yes. The only HDD, NTFS, WindowsXP native boot loader ntldr. > > > Let me rephrase my question. It was/is clear that you used to be able > to boot Windows when the first boot device was the HDD. Then you used > the USB as first boot device. My question is, whether now (after you > have been "playing" with this USB device) you can still repeat the > former successful boot when using the HDD alone, as it used to be. > Maybe this is also the intention of your answer, but I would like to > be sure we are both referring to the same thing / scenario / case. > So, can you (still)?Yes. Whether with or without USB device plugged in, BIOS can boot to Windows on fixed HD . I set boot preference to USB first, so with USB plugged in, I press F12 to change BIOS boot order. Or I can set boot preference to fixed HD first, both OK.> > > The failure of "localboot 0x80" directive is not very helpful in this > case, since we don't even know how exactly this BIOS is recognizing > the local HDD. There is some chance that "localboot 0x81" (not "80") > might work successfully, but I wouldn't bet on it. >I tried this, it worked! And I tried localboot 0x80 again, it worked this time! I cannot make sure what has changed since last try. Anyway, localboot 0x80|0x81, or 0x00, or 0x any digit, or localboot only without numbers, will show two line quickly: Booting from local disk... Boot error Then jump to fixed HD's boot.ini menu and boot normally.> > Please try (and please, use the 'append' directive): > > label hd1_1_swap com32 chain.c32 # Boot to first partition of ... # > There are space characters, before and after the partition number. > append hd1 1 swap > > If that fails too, try: > > label hd1_swap com32 chain.c32 # Boot to first partition of ... # > There is a space character after the disk number. append hd1 swap >Both succeeded smoothly, without any error message. I tried "hd0 swap", yet it is same to "hd0", so it is not swapping 0 and 1 as I think. I also tried not using 'append' directive. It works too. Would you please explain the difference of one-line directive and using extra 'append' line? I'll reply with DOS part in another sub-thread. -- Regards, Lu Wei IM: xmpp:luweitest at riotcat.org PGP: 0xA12FEF7592CCE1EA
> On 2019-4-10 1:20, Ady Ady via Syslinux wrote: > >>> Test #2: if you unplug the USB and reboot the system, can you > >>> successfully boot directly to the HDD's OS? > >>> > >> Yes. The only HDD, NTFS, WindowsXP native boot loader ntldr. > > > > > > Let me rephrase my question. It was/is clear that you used to be able > > to boot Windows when the first boot device was the HDD. Then you used > > the USB as first boot device. My question is, whether now (after you > > have been "playing" with this USB device) you can still repeat the > > former successful boot when using the HDD alone, as it used to be. > > Maybe this is also the intention of your answer, but I would like to > > be sure we are both referring to the same thing / scenario / case. > > So, can you (still)? > > Yes. Whether with or without USB device plugged in, BIOS can boot to > Windows on fixed HD . I set boot preference to USB first, so with USB > plugged in, I press F12 to change BIOS boot order. Or I can set boot > preference to fixed HD first, both OK. > > > > > > The failure of "localboot 0x80" directive is not very helpful in this > > case, since we don't even know how exactly this BIOS is recognizing > > the local HDD. There is some chance that "localboot 0x81" (not "80") > > might work successfully, but I wouldn't bet on it. > > > I tried this, it worked! And I tried localboot 0x80 again, it worked > this time! I cannot make sure what has changed since last try. Anyway, > localboot 0x80|0x81, or 0x00, or 0x any digit, or localboot only > without numbers, will show two line quickly: > Booting from local disk... > Boot error > Then jump to fixed HD's boot.ini menu and boot normally.I'm glad it is working for you. OTOH, having the same exact behavior when using different LOCALBOOT options _could_ be an indication of a bug (and if that's the case, it would not be the first sign of a bug in LOCALBOOT).> > Please try (and please, use the 'append' directive): > > > > label hd1_1_swap com32 chain.c32 # Boot to first partition of ... # > > There are space characters, before and after the partition number. > > append hd1 1 swap > > > > If that fails too, try: > > > > label hd1_swap com32 chain.c32 # Boot to first partition of ... # > > There is a space character after the disk number. append hd1 swap > > > Both succeeded smoothly, without any error message. I tried "hd0 swap", > yet it is same to "hd0", so it is not swapping 0 and 1 as I think. > > I also tried not using 'append' directive. It works too. Would you > please explain the difference of one-line directive and using extra > 'append' line?I was just trying to be thorough when troubleshooting. Using the most normal/expected/complete syntax is one way of narrowing down potential side-effects of some other problem. For instance, so-called "kernel-like" directives (such as "com32") have their own "fallback" behaviors and peculiarities, and when troubleshooting some situation (like yours) I wouldn't want to "invite" more variables/troubles than what we already have. At any rate, both LOCALBOOT and chain.c32 are working as you expected/wanted for your case now. Regards, Ady.
On 2019-4-12 2:48, Ady Ady via Syslinux wrote:>> I tried this, it worked! And I tried localboot 0x80 again, it worked >> this time! I cannot make sure what has changed since last try. Anyway, >> localboot 0x80|0x81, or 0x00, or 0x any digit, or localboot only >> without numbers, will show two line quickly: >> Booting from local disk... >> Boot error >> Then jump to fixed HD's boot.ini menu and boot normally. > > > I'm glad it is working for you. OTOH, having the same exact behavior when using > different LOCALBOOT options _could_ be an indication of a bug (and if that's > the case, it would not be the first sign of a bug in LOCALBOOT). >I think I have found the cause of showing "Boot error" then jumping to boot fixed HD: It must have to do with "syslinux -r" (Fall back to the next device on boot failure) option. I may have not used that option before, and added it when trying. So LOCALBOOT did fail and only chainloading with "swap" works. Another thing about LOCALBOOT: I find in the minimal syslinux environment (no modules path \syslinux copied), "localboot" command will show "file not found" error, but ".localboot" (begin with dot) could run, though failed too. And I find there is localboot.c32 in \syslinux in full environment. So I infer that syslinux, like DOS, has internal command and external command, and "localboot" is special that it is both internal and external. It also explains the dot appeared at the beginning when I press TAB in syslinux boot menu. -- Regards, Lu Wei IM: xmpp:luweitest at riotcat.org PGP: 0xA12FEF7592CCE1EA