Syslinux Usb Multiboot Using Syslinux to boot UBCD4Win
#1
Posted 07 November 2009 - 01:30 AM
#2
Posted 07 November 2009 - 03:04 AM
Chainload the file setupldr.bin.
LABEL UBCD4Win MENU LABEL Launch "The Ultimate Boot CD for Windows" COM32 chain.c32 APPEND ntldr=/minint/SETUPLDR.BIN TEXT HELP Runs a pre-installed Windows environment, loaded with diagnostic tools. ENDTEXT
#3
Posted 07 November 2009 - 09:12 AM
Here's what the command returns to the console:
Booting... CHAINLOAD Failed! boot:
Here's what I did to create the bootable USB drive:
1) Format using HP Format Tool - Full Format; Fat32
2) Copied all the built files over from the "BartPE" folder to the UFD using Windows Explorer
3) Ran the command: syslinux -ma f:
4) Copied the most recent chain.c32 from the syslinux folder to the UFD/syslinux folder
5) Changed the syslinux.cfg to result in booting UBCD4WIN (Fails every time to boot UBCD4WIN)
This post has been edited by wgjhstt247: 07 November 2009 - 09:26 AM
#4
Posted 07 November 2009 - 11:54 AM
wgjhstt247, on 07 November 2009 - 09:12 AM, said:
Minint does work. Rename I386 and copy ntdetect.com to root directory.
Try a old syslinux 3.75
LABEL UBCD4Win MENU LABEL Launch "The Ultimate Boot CD for Windows - chain.c32" KERNEL chain.c32 APPEND hd0 1 ntldr=/minint/SETUPLDR.BIN TEXT HELP Runs a pre-installed Windows environment, loaded with diagnostic tools. ENDTEXT
#5
Posted 07 November 2009 - 04:28 PM
cdob, on 07 November 2009 - 10:54 AM, said:
wgjhstt247, on 07 November 2009 - 09:12 AM, said:
Minint does work. Rename I386 and copy ntdetect.com to root directory.
Try a old syslinux 3.75
LABEL UBCD4Win MENU LABEL Launch "The Ultimate Boot CD for Windows - chain.c32" KERNEL chain.c32 APPEND hd0 1 ntldr=/minint/SETUPLDR.BIN TEXT HELP Runs a pre-installed Windows environment, loaded with diagnostic tools. ENDTEXT
So here's what I did. I let UBUSB.exe copy the files to the UFD, and it made the changes you suggested automatically. I installed the older version of syslinux using "syslinux -ma -d syslinux f:" Then I booted the UFD to the syslinux menu and it states that it "cannot read the Master Boot record" when booted with "chain.c32 ntldr=/minint/SETUPLDR.BIN." Using the command you mentioned above, it just resets back to the main syslinux menu by booting, "chain.c32 hd0 1 ntldr=/minint/SETUPLDR.BIN" Thank you so much for helping me in advance. I appreciate all the help you've given me so far.
This is my first time ever working with the bootsector and mbr in a low-level way. I don't necessarily understand how it works, but I'd like to learn more. I'd like to learn how to hex edit the bootsector and mbr, but there is nowhere (that I've found so far) that will show me how to do this. All I can see are the hex numbers and ASCII text in my hex editor.
#6
Posted 08 November 2009 - 01:34 AM
1) Build UBCD4WIN on Windows XP. If you build in Vista, you need to get a copy of "EMPTYREGDB.DAT" and put it in the i386 folder.
2) Format UFD using the HP Format Tool.
2) Copied files over to UFD from "BartPE" folder using UBUSB (Copy files and format MBR, no need for anything else)
a) you can do this manually by copying in Windows Explorer. Change "i386" folder to "minint". Copy "setupldr.bin" to the root of the UFD, rename it to "ntldr". Copy "ntdetect.com" to the root of the UFD.
3) Download Syslinux. Important!! -> Copy cat.c32, chain.c32, menu.c32, reboot.c32, and vesamenu.c32 from the syslinux you downloaded to the UFD's "syslinux" folder. Run "syslinux -d syslinux x:" or "syslinux -ma -d syslinux x:" where "x" is the drive letter of your UFD.
4) Edit "syslinux.cfg" in the syslinux folder on the UFD. Edit the Ultimate boot cd entry to this:
LABEL UBCD4Win MENU LABEL Launch "The Ultimate Boot CD for Windows" COM32 chain.c32 APPEND hd0 1 ntldr=/ntldr TEXT HELP Runs a pre-installed Windows environment, loaded with diagnostic tools. ENDTEXT
5) Test it using USUSB's "Test USB" button.
Thanks again for all your help!!!
This post has been edited by wgjhstt247: 08 November 2009 - 01:45 AM
#8
Posted 08 November 2009 - 11:35 AM
cdob, on 08 November 2009 - 02:42 AM, said:
A renamed setupldr.bin is not the best solution.
Can you try 'chain.c32 ntldr=/minint/SETUPLDR.BIN' too?
Yes, that works too now. But I have to put in the hd0 1 to make it work with my version of syslinux. So the full command looks like this: "chain.c32 hd0 1 ntldr=/minint/setupldr.bin" So is this suppose to make it more compatible? Or why is it not the best solution to rename to ntldr and put it in the root?
#9
Posted 08 November 2009 - 12:07 PM
cdob, on 08 November 2009 - 02:42 AM, said:
A renamed setupldr.bin is not the best solution.
Can you try 'chain.c32 ntldr=/minint/SETUPLDR.BIN' too?
I renamed ntldr, and gtldr in the root directory. It works without them just as you said. However, now I'm having issues loading the recovery console portion of UBCD4WIN. The command I use is this: "chain.c32 hd0 1 ntldr=/CMDCONS/SETUPLDR.BIN" and it loads the normal UBCD4WIN just as "chain.c32 hd0 1 ntldr=/minint/setupldr.bin" does. Also, How do I get rid of the multiple menu entries (It has the same menu about 5 or more times)?
#10
Posted 08 November 2009 - 04:25 PM
Quote
#11
Posted 08 November 2009 - 05:49 PM
wgjhstt247, on 08 November 2009 - 12:07 PM, said:
That's nice.
Quote
To break the defaults, change different files setupldr.bin.
Hexedit setupldr.bin, rename cmdcons to cmdcOFF and minint to minOFF.
#12
Posted 08 November 2009 - 11:09 PM
cdob, on 08 November 2009 - 04:49 PM, said:
Do you mean hexedit the ASCI text in the file (ie. find where cmdcons in the file is at and rename it in the file)? Or do you mean something completely different? If so, please guide me through it. Thanks!