Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


delicatepc

Booting BOOTMGR from syslinux/UBCD?

Recommended Posts

*SOLVED*

Simple guide on how to add Windows Vista Recovery Environment and other WIM files to the UBCD menu prompt.

(pending verification) Note: If you have a USB stick with U3 software (sandisk have these) you will need to remove the U3 software (requires a special tool from U3/Sandisk to remove, not a simple format). Credit to Edge_013 for bringing this to my attention.

Add following entry to whichever menu file you want the option to show up in (in my its under main.cfg)

LABEL -
MENU LABEL Whatever you Like
COM32 /boot/syslinux/chain.c32
APPEND boot ntldr=/BOOTMGR

Transfer over all the contents of a Windows Vista based install CD/DVD (or the VistaRE CD). All files/folders from here should be in CAPS.

Use a updated version of syslinux and chain.c32 (both can be found at syslinux package) as the ones in UBCD 5.0b12 are out of date and do not work.

Use the following script to edit the BCD file which is found on the USB stick in BOOT\BCD (think of this file as the menu listing for the Windows BOOTMGR)

Rem BCD (boot configuration data) editor for multiple vista pe 

REM THIS IS THE ORIGINAL BCD FILE EXTRACTED FROM ANY VISTA WINPE / VISTA DVD (I USED VISTA INSTALLATION)
set BCD-File="c:\bcd 1\BCD"

REM SET THE NAME FOR THE VISTA PE HERE
set pename="Your PE Name"

REM SET THE NAME FOR THE WIM.FILE HERE WITH PATH
set filena=[boot]\sources\yourwimfile.wim

for /f "eol=r tokens=1-2" %%a in ('bcdedit /store %BCD-File% /ENUM all') do set rdo=%%b


for /f "tokens=1-7" %%a in ('Bcdedit /store %BCD-File% /copy {default} /d %pename%') do set guid1=%%g
bcdedit /store %BCD-File% /set %guid1:~0,38% DEVICE ramdisk=%filena%,%rdo%
bcdedit /store %BCD-File% /set %guid1:~0,38% OSDEVICE ramdisk=%filena%,%rdo%

bcdedit /store %BCD-File% /ENUM

Basically what should now happen is:

UBCD loads.

You select Windows boot option from menu.

Chain.c32 loads BOOTMGR.

BOOTMGR references BCD file and either loads the single entry or shows a menu for multiple entries.

Select the entry you want and it loads the WIM file from SOURCES folder.

That should be it - this is tested and working on syslinux 3.82.

Credit goes to Jotnar (for BCD edit script link) and BJ-Kaiser from MSFN forums (for proper code to load BOOTMGR from syslinux menu)

Original POST:

I am trying to boot the Windows Vista Recovery environment and its associated WIMs from UBCD (syslinux). I know if i can boot the BOOTMGR it would look for the BCD file and then give me a listing of WIMs to choose from that I have already added.

However I cannot seem to get syslinux to boot BOOTMGR file.

My menu item looks like so:

LABEL -
MENU LABEL Vista RE
KERNEL PE2.bss
APPEND -

I have used ubcd4win.bss and tried to hex edit the ntldr to bootmgr however it doesnt seem to changing anything. Does anyone have a valid working pe2.bss or can explain the proper way to hex edit it to load the bootmgr? When i select the Vista RE option in UBCD it simply blinks the screen for a second and then goes back to UBCD (almost not noticeable).

Any help appreciated.

dpc

Edited by delicatepc

Share this post


Link to post
Share on other sites

you want to look into using the "chain.c32" module. it allows you to chainload ntldr bootloaders from syslinux. (bootmgr is a ntldr style bootloader too)

I can give you the exact configuration statement tomorrow when I am at work.

Share this post


Link to post
Share on other sites

LABEL winpe
COM32 /boot/chain.c32
APPEND boot ntldr=/bootmgr

thats how it works for me. chain.c32 is part of the syslinux distribution.

Share this post


Link to post
Share on other sites

I have tried all of the following:

LABEL -
MENU LABEL WinPE
COM32 /boot/syslinux/chain.c32
APPEND boot ntldr=/BOOTMGR

LABEL -
MENU LABEL WinPE (PE2.BSS)
COM32 /boot/syslinux/chain.c32
APPEND boot ntldr=/PE2.BSS

LABEL -
MENU LABEL WinPE (PE1.BIN)
COM32 /boot/syslinux/chain.c32
APPEND boot ntldr=/PE1.BIN

LABEL -
MENU LABEL WinPE (noslash)
COM32 /boot/syslinux/chain.c32
APPEND boot ntldr=BOOTMGR

In my case chain.c32 is located in f:\boot\syslinux\chain32.c32. I have copied chain.c32 to /boot/ and tried that method but all of the above fail with:

Cannot read Master Boot Record.

Note: A second before it displays that error you can hear the floppy drive attempting to read/check if disk in drive. It sounds like it looks for Master boot Record from all devices.

Attached is image of root of USB stick.

post-247841-1245336657_thumb.jpg

Edited by delicatepc

Share this post


Link to post
Share on other sites
LABEL winpe
COM32 /boot/chain.c32
APPEND boot ntldr=/bootmgr

thats how it works for me. chain.c32 is part of the syslinux distribution.

Can you send me a sample of your whole usb stick that boots it? I wouldnt mind recreating it on my end. Maybe i am missing something completely stupid here.

dpc

Share this post


Link to post
Share on other sites

do you use a recent version of chain.c32?

can not say my setup doesnt do that, but I have no floppy in the PCs, so I can't really tell.

Share this post


Link to post
Share on other sites

I'm at home now, so I cant tell you which version it was or copy it from the USB stick (which is lying around at work).

My best guess is that the version of chain.c32 is not much older than maybe 4 or 8 weeks. If I were you I'd just get me the latest syslinux distribution package (v3.82) and work with that.

Share this post


Link to post
Share on other sites

IT WORKS!!!!!!

Problem was UBCD 5.0b12 has out of date syslinux and chain.c32. Updated syslinux by running the syslinux f: and then update chain.c32 and now its able to success boot the bootmgr.

Thank you bjkaiser!

Share this post


Link to post
Share on other sites

One or two versions back they (the syslinux developers) rewrote the chain.c32 module. Thats probably why UBCD had one that didn't work (the older one).

Share this post


Link to post
Share on other sites

I'm having a problem getting the BCD file to load using the following code

LABEL winpe
COM32 /boot/chain.c32
APPEND boot ntldr=/bootmgr

and running UBCD off of my flash drive. However if I create an ISO then the BCD file will load and show me my menu options. When trying to load from my flash drive I will get the following error:

File: \boot\bcd

Status: 0xc0000225

Info: An error occurred while attempting to read the boot configuration data

Any ideas why I get this error when loading from a flash drive only?

Share this post


Link to post
Share on other sites

DPC,

I am using the syslinux.exe and chain.c32 files from Syslinux version 3.83 and I have tried both a 2GB and 4GB flash drive so I don't think its the drive since everything else on my Goldstick works. I did use the BCDedit script from the thread http://www.ultimatebootcd.com/forums/viewt...&highlight= to modify the BCD file and this is what the files looks like:

Windows Boot Manager
--------------------
identifier {bootmgr}
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {default}
displayorder {f1a99199-7605-11de-b392-0013729b5f06}
{f6b870d9-7605-11de-b392-0013729b5f06}
{default}
{eaee3f11-7605-11de-b392-0013729b5f06}
toolsdisplayorder {memdiag}
timeout 30

Windows Boot Loader
-------------------
identifier {f1a99199-7605-11de-b392-0013729b5f06}
device ramdisk=[boot]\sources\win7-re-x86.wim,{7619dcc8-fafe-11
d9-b411-000476eba25f}
path \windows\system32\boot\winload.exe
description Win 7 RE and ERD Commander x86
locale en-US
inherit {bootloadersettings}
osdevice ramdisk=[boot]\sources\win7-re-x86.wim,{7619dcc8-fafe-11
d9-b411-000476eba25f}
systemroot \windows
detecthal Yes
winpe Yes
ems Yes

Windows Boot Loader
-------------------
identifier {f6b870d9-7605-11de-b392-0013729b5f06}
device ramdisk=[boot]\sources\win7-re-x64.wim,{7619dcc8-fafe-11
d9-b411-000476eba25f}
path \windows\system32\boot\winload.exe
description Win 7 RE and ERD Commander x64
locale en-US
inherit {bootloadersettings}
osdevice ramdisk=[boot]\sources\win7-re-x64.wim,{7619dcc8-fafe-11
d9-b411-000476eba25f}
systemroot \windows
detecthal Yes
winpe Yes
ems Yes

Windows Boot Loader
-------------------
identifier {default}
device ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411
-000476eba25f}
path \windows\system32\boot\winload.exe
description Windows Vista Recovery Environment X86
locale en-US
inherit {bootloadersettings}
osdevice ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411
-000476eba25f}
systemroot \windows
detecthal Yes
winpe Yes
ems Yes

Windows Boot Loader
-------------------
identifier {eaee3f11-7605-11de-b392-0013729b5f06}
device ramdisk=[boot]\sources\vista-re-x64.wim,{7619dcc8-fafe-1
1d9-b411-000476eba25f}
path \windows\system32\boot\winload.exe
description Windows Vista Recovery Environment X64
locale en-US
inherit {bootloadersettings}
osdevice ramdisk=[boot]\sources\vista-re-x64.wim,{7619dcc8-fafe-1
1d9-b411-000476eba25f}
systemroot \windows
detecthal Yes
winpe Yes
ems Yes

Share this post


Link to post
Share on other sites

Two things.

1. Can you upload a stripped version of your build? Should be able to fit into 5mb remove all the apps just need the syslinux menu, bcd, bootmgr files etc.?

2. Create a working iso (with update syslinux.exe), burn it, test to make sure it works, and then run (cdrive)\ubcd\tools\win32\ubcd2usb.cmd (cddrive) (usbdrive).... like this "ubcd2usb d: f:" where d: is where my files are located and F: is my usb stick.

Ive seen this same issue on my own during testing (several times actually) and it always was a stupid small thing I missed and never thought of posting about once i fixed it.

by the way is there a mismatch between your windows bootmgr files (ie you are using the files all from the same source like windows vista x86?). I think i encountered this issue when attempting use Win7 bootmgr and win vista other files (or something along those lines).

dpc

Share this post


Link to post
Share on other sites

DPC,

It will only allow me to upload 200MB and I can't get the Iso to be that small. I've basically taken goldstick v1.4.1 (if you are who I think you are you'll know what that means) updated the Chain.c32, memdisk, syslinux.exe with v3.83 because v3.82 wasn't working either. The Bootmgr file I haven't touched, but the BCD file I have edited to look like what I posted previously.

Here's a rundown of what my flashdrive directory when I view the files:

Boot - contains EN-US, Fonts, Isolinux, Syslinux folders and Boot.sdi, bootsect.exe, ETFSBoot.com, Memtest.exe and BCD files

EFI - contains another BCD file and Fonts folder (not sure what this folder is for)

Sources - contains my .WIM files that BCD looks to

Tools - Contains Syslinux.exe and Goldstick.cmd files

UBCD - contains Menus, images for applications that I use

BOOTMGR

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...