Jump to content

How to boot/install from USB key ?


Halfwalker

Recommended Posts

...The rewriting of the MBR on the stick only happens when a SATA drive is present, doesn't it?...
When non- native SATA controler (probably IDE too) is used and USB stick is listed first. Have a look at post #130

I will try the other suggestions.

ilko_t How can I determine the PID and VID ?
magicalsnap200705101226iw8.th.jpg

Regards,

ilko

edit: @wimb - you may select the lines 1 by 1 and use ctrl+c to copy-paste contents.

Edited by ilko_t
Link to comment
Share on other sites


@Ilko_t

another question, how did you load the SATA drivers?

I am using XP with BTS mass storage drivers pack slipstreamed, so it's via txtsetup.sif. I tried to change the order in txtsetup.sif, moving the Hardware VID&PID lines for USB mass storage and Sil3112 above then below anything else, hoping that SETUP reads the lines and scans for devices according to the order written in txtsetup.sif but that didn't change anything. Also tried to set mass storage drivers as described here, but to no avail too:

http://www.ngine.de/index.jsp?pageid=4176

As far as I remember I tried to swap order in these lines, everything was shoots in the darkness:

[DiskDriverMap]

abiosdsk = "%1!u! MB Micro Channel Disk"

atdisk = "%1!u! MB IDE/ESDI Disk"

disk = "%1!u! MB Disk %2!u! at Id %3!u! on bus %4!u! on %5"

and

[sCSI.Load]

........

I believe similar setup could be achieved in VMware, set 2 disks- 1 SCSI and 1 IDE and try to change the order SETUP detects them. Normally IDE goes first, SCSI second. If one could find how to swap them, same method could be used to set USB stick last.

I will try first what happens to the stick when SETUP finds NT MBR on it, instead of GRUB.

edit: interesting line in txtsetup.sif, not sure is it used only when upgrading :

[Directories.DeleteOnUpgrade]

1, Prefetch

2, ReinstallBackups

2, os2

1,"Driver Cache\i386"

2, CatRoot2

1, $NtServicePackUninstall$

1, ServicePackFiles

124, x86_comctl32_6.0.0.0_0000

124, x86_GdiPlus_1.0.0.0_0409

124, x86_Microsoft-Visual-CPlusPlus-Runtime-Libraries_6.0.0.0_0000

124, x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_no-public-key_6.0.0.0_x-ww_4d05e542

124, x86_Microsoft.Windows.Common-Controls_no-public-key_6.0.0.0_x-ww_cd4c0d12

124, x86_Microsoft.Windows.GdiPlus_no-public-key_1.0.0.0_x-ww_fad9507f

124, InstallTemp

Edited by ilko_t
Link to comment
Share on other sites

ilko_t How can I determine the PID and VID ?
magicalsnap200705101226iw8.th.jpg

I have used a Medion laptop MD6100 with SiS PCI IDE-controller:

PCI\VEN_1039&DEV_5513&SUBSYS_55131039&REV_00\3&61AAA01&0&15

with Hardware-id's:

PCI\VEN_1039&DEV_5513&SUBSYS_55131039&REV_00

PCI\VEN_1039&DEV_5513&SUBSYS_55131039

PCI\VEN_1039&DEV_5513&CC_010180

PCI\VEN_1039&DEV_5513&CC_0101

Thanks a lot also jaclaz for al the information on how to determine this value. :)

Regards, wimb

Edited by wimb
Link to comment
Share on other sites

:D :D :D

Mistery solved :)

When you have an IDE device attached, along with SATA disk, this breaks the order. IDE device could be CD/DVD or hard disk, and boot order on BIOS makes no difference. In this case the order SETUP enumerates devices is IDE-USB-SATA. If IDE device is disconnected or primary/secondary channel is disabled in BIOS order becomes SATA-USB.

On Gigabyte DS3P with Intel ICH8R (6 SATA ports) and JMicron 363 (2 SATA/1 IDE) if both controllers are in AHCI or RAID mode order is SATA1-SATA2-USB.

If Jmicron is in IDE mode this makes no difference, as its a separate controller, order is SATA1- SATA2- USB.

However, if Jmicron is in AHCI or RAID and ICH8 is in native IDE mode order changes to IDE (ICH8R) - USB - SATA (Jmicron). 1 hard drive attached to both controllers and a DVDRW to the JMicron IDE port, DVD was never disconnected or disabled.

So if IDE device is attached to external controller such as JMicron, this doens't change the order SETUP finds devices, and USB goes last, if a native IDE is connected it always goes first, then USB, and last is SATA.

If only IDE hard disk and USB stick are connected (CD/DVD disconnected or primary/secondary channel disabled in BIOS) order is IDE disc- USB. This was confirmed on Abit AN7 too. If CD (secondary channel) is disabled order was SATA-USB, when IDE disc was connected order becomes IDE-USB-SATA

That should clear any further issues with device order, once we ensure that USB is not first we can carry on with installation.

Here is what I did to overcome signature problem in BOOT.INI and make the installation as universal as possible.

Stick is formated by PEtoUSB, copy NTDETECT.COM, NTLDR and BOOT.INI, which is:

BOOT.INI

[boot Loader]

Timeout=15

Default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS

[Operating Systems]

c:\grldr="Start GRUB"

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="GUI Setup" /FASTDETECT

If you are going to install on another partition/disk amend entries to reflect that.

Copy GRLDR to the root of stick and create

MENU.LST

color black/cyan yellow/cyan

timeout 15

default 0

title Phase 1 WinXP Text Mode Setup

chainloader (hd0,0)/ntldrstp

Create a folder BOOTFILES in root, and copy NTDETECT.COM, NTLDR and your custom BOOT.INI which will be copied on hard disk. Set them system, hidden and read-only in advance.

BOOT.INI

[boot loader]

timeout=15

default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Professional 0 1" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP Professional 0 2" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="XP Professional 0 3" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="XP Professional 1 1" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(1)partition(2)\WINDOWS="XP Professional 1 2" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(1)partition(3)\WINDOWS="XP Professional 1 3" /noexecute=optin /fastdetect

In $WIN_NT$.~LS make a new folder if you don't have already $OEM$ and create in it

CMDLINES.TXT

[COMMANDS]

"BOOT_REN.CMD"

In the same folder create

BOOT_REN.CMD

@echo off

SET TAGFILE=\BOOTFILES

FOR %%h IN (C D E F G H I J K L M N O P Q R S T U V W X Y) DO IF EXIST "%%h:%TAGFILE%" SET USBDRIVE=%%h:

xcopy %USBDRIVE%\bootfiles\*.* %SYSTEMDRIVE%\ /y /h /r /k

exit

Leave space between %SYSTEMDRIVE%\ and /y /h /r /k

WINNT.SIF

[data]

msdosinitiated="1"

floppyless="1"

AutoPartition="0"

UseSignatures="no"

InstallDir="\WINDOWS"

EulaComplete="1"

winntupgrade="no"

win9xupgrade="no"

Win32Ver="a280105"

uniqueid="C:\WINDOWS\NKH"

OriSrc="A:\i386"

OriTyp="5"

[unattended] section and oempreinstall=yes is not needed.

The rest is same as the first guide. This way GRUB mapping is not used, and once GUI setup is completed USB stick is no longer needed, we have brand new shining BOOT.INI along with all necessary boot files on the hard disk.

Edited by ilko_t
Link to comment
Share on other sites

Some help needed here:

I did a few attempts to resolve the long wait at T-1, used only write protection in MIGRATE.INF. No files are deleted during TXT part. I added these lines to BOOT_REN.CMD :

ECHO %TIME% > %SYSTEMDRIVE%\CMDLINES.LOG

ren %USBDRIVE%\$WIN_NT$.~BT WIN_NT.BT

ren %USBDRIVE%\$WIN_NT$.~LS WIN_NT.LS

and created UNDOREN.CMD, which is executed by [GUIRunOnce] in WINNT.SIF along with the relevant entries in TXTSETUP.SIF

UNDOREN.CMD

@echo off

SET TAGFILE=\BOOTFILES

FOR %%h IN (C D E F G H I J K L M N O P Q R S T U V W X Y) DO IF EXIST "%%h:%TAGFILE%" SET USBDRIVE=%%h:

ren %USBDRIVE%\WIN_NT.BT $WIN_NT$.~BT

ren %USBDRIVE%\WIN_NT.LS $WIN_NT$.~LS

exit

TXTSETUP.SIF and $WIN_NT$.~LS get deleted, $WIN_NT$.~BT - not :wacko:

Removed UNDOREN.CMD and can confirm WIN_NT.BT is on stick, properly renamed.

This means for me that either $WIN_NT$.~LS was deleted earlier, before T-1, or is in use or somehow protected and script cannot rename it on time.

Here is result of exact time when BOOT_REN.CMD is executed as logged in CMDLINES.LOG:

1:31:28.95

Here is part of SETUPLOG.TXT

05/15/2007 01:31:22.656,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5948,END_SECTION,DoRunonce
05/15/2007 01:31:22.656,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5957,BEGIN_SECTION,Configuring Setup
05/15/2007 01:31:23.046,d:\xpsprtm\base\ntsetup\syssetup\services.c,334,,MyChangeServiceConfig: LockingServiceDatabase for service Spooler
05/15/2007 01:31:23.062,d:\xpsprtm\base\ntsetup\syssetup\services.c,408,,MyChangeServiceConfig: Unlocked ServiceDatabase for service Spooler
05/15/2007 01:31:23.062,d:\xpsprtm\base\ntsetup\syssetup\printer.c,131,,StartSpooler: Just opened service Spooler
05/15/2007 01:31:23.062,d:\xpsprtm\base\ntsetup\syssetup\printer.c,134,,StartSpooler: Just started service Spooler, ret=0, error=1056
05/15/2007 01:31:23.062,d:\xpsprtm\base\ntsetup\syssetup\printer.c,253,,StartSpooler: Just closed service handler Spooler
05/15/2007 01:31:23.234,d:\xpsprtm\base\ntsetup\syssetup\services.c,334,,MyChangeServiceConfig: LockingServiceDatabase for service EventLog
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,408,,MyChangeServiceConfig: Unlocked ServiceDatabase for service EventLog
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,334,,MyChangeServiceConfig: LockingServiceDatabase for service ClipSrv
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,408,,MyChangeServiceConfig: Unlocked ServiceDatabase for service ClipSrv
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,334,,MyChangeServiceConfig: LockingServiceDatabase for service NetDDE
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,408,,MyChangeServiceConfig: Unlocked ServiceDatabase for service NetDDE
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,334,,MyChangeServiceConfig: LockingServiceDatabase for service NetDDEdsdm
05/15/2007 01:31:23.250,d:\xpsprtm\base\ntsetup\syssetup\services.c,408,,MyChangeServiceConfig: Unlocked ServiceDatabase for service NetDDEdsdm
05/15/2007 01:31:23.265,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3794,BEGIN_SECTION,Loading service pack (phase 4)
05/15/2007 01:31:23.265,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3796,END_SECTION,Loading service pack (phase 4)
05/15/2007 01:31:23.265,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3803,BEGIN_SECTION,Network setup handling Internet Server issues
05/15/2007 01:31:23.265,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3809,END_SECTION,Network setup handling Internet Server issues
05/15/2007 01:31:23.281,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3836,BEGIN_SECTION,Setting up virtual memory
05/15/2007 01:31:23.296,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,SetUpVirtualMemory: ENTER

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: C:\, spc=8, bps=512, freeclus=1042209, totalclus=1279167

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: C:\, FreeSpace = 04268888064

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: C:\ had 120586240 byte pagefile, new FreeSpace = 194507008

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: Free space on C:\ is 4186 MB

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: U:\, spc=64, bps=512, freeclus=48429, totalclus=62454

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: U:\, FreeSpace = 01586921472

[b]05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,BuildVolumeFreeSpaceList: Free space on U:\ is 1513 MB[/b]

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,SetUpVirtualMemory: loc 1

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,Setup configured the system to place a 1536 MB pagefile on drive C:.

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,Crashdump was enabled.

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,SetUpVirtualMemory: EXIT (1)

05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3844,END_SECTION,Setting up virtual memory
05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3855,BEGIN_SECTION,Processing [RunPrograms] section
05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3857,END_SECTION,Processing [RunPrograms] section
05/15/2007 01:31:28.859,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,2622,,Power scheme: desktop.
05/15/2007 01:31:28.875,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,2626,,SetActivePwrScheme succeeded.
05/15/2007 01:31:29.140,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,The external program boot_ren.cmd returned exit code 0.

05/15/2007 01:31:29.187,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,The external program rundll32 advpack.dll,LaunchINFSection nLite.inf,U returned exit code 0.

05/15/2007 01:31:29.187,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3915,BEGIN_SECTION,Saving hives
05/15/2007 01:31:29.203,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3929,END_SECTION,Saving hives
05/15/2007 01:31:29.203,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3958,BEGIN_SECTION,Copying optional directories
05/15/2007 01:31:29.203,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,3963,END_SECTION,Copying optional directories
05/15/2007 01:31:29.203,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5959,END_SECTION,Configuring Setup
05/15/2007 01:31:29.218,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5964,BEGIN_SECTION,Configuring Common
05/15/2007 01:31:29.218,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,4231,BEGIN_SECTION,Generating security templates
05/15/2007 01:31:38.906,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,4233,END_SECTION,Generating security templates
05/15/2007 01:31:38.906,d:\xpsprtm\base\ntsetup\syssetup\copy.c,627,,SETUP: Marked file perfmon.msc read-only
05/15/2007 01:31:38.921,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5966,END_SECTION,Configuring Common
05/15/2007 01:31:38.937,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6065,BEGIN_SECTION,Fix the security on <All Users\Application Data\Microsoft\Windows NT>
05/15/2007 01:31:38.937,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,Setup invoked the external program shmgrate.exe Fix-HTML-Help.

05/15/2007 01:31:38.937,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6067,END_SECTION,Fix the security on <All Users\Application Data\Microsoft\Windows NT>
05/15/2007 01:31:38.937,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6072,BEGIN_SECTION,Migrating exception packages
05/15/2007 01:31:38.937,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6074,END_SECTION,Migrating exception packages
05/15/2007 01:31:38.953,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6090,BEGIN_SECTION,Running SFC
05/15/2007 01:31:39.000,d:\xpsprtm\base\ntsetup\syssetup\registry.c,1551,BEGIN_SECTION,DeleteCurrentProductIdInRegistry
05/15/2007 01:31:39.015,d:\xpsprtm\base\ntsetup\syssetup\registry.c,1564,END_SECTION,DeleteCurrentProductIdInRegistry
05/15/2007 01:31:39.015,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6216,BEGIN_SECTION,Saving repair info
05/15/2007 01:31:42.734,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6218,END_SECTION,Saving repair info
05/15/2007 01:31:42.734,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6227,BEGIN_SECTION,Removing Temporary Files
05/15/2007 01:31:42.750,d:\xpsprtm\base\ntsetup\syssetup\utils.cpp,18,,Setup: Activationrequired
05/15/2007 01:31:42.843,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,4904,,Setup: (Information) activation icons removed

05/15/2007 01:31:42.859,d:\xpsprtm\base\ntsetup\syssetup\cmdline.c,228,,SETUP: SpSetupLoadParameter was unable to find DynamicUpdateAdditionalPostGuiDrivers.
05/15/2007 01:32:04.421,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5416,BEGIN_SECTION,Setting up Crash Recovery
05/15/2007 01:32:04.437,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,5420,END_SECTION,Setting up Crash Recovery
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6245,END_SECTION,Removing Temporary Files
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6252,,SETUP: CallSceSetupRootSecurity completed
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6269,,SETUP: Changing registry quota from 111848106 to 55924053...
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6274,,SETUP: ... succeeded
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\services.c,496,,SetupStartService: Sending StartService to <Eventlog>

05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\services.c,498,,SetupStartService: Sent StartService to <Eventlog>

05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\welcome.c,934,END_SECTION,Copying Files Page
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6294,END_SECTION,FinishThread
05/15/2007 01:32:08.234,d:\xpsprtm\base\ntsetup\syssetup\welcome.c,1096,BEGIN_SECTION,Finish Page
05/15/2007 01:32:08.250,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6640,END_SECTION,Wizard
05/15/2007 01:32:08.250,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6644,BEGIN_SECTION,Recovery
05/15/2007 01:32:08.250,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6648,END_SECTION,Recovery
05/15/2007 01:32:08.250,d:\xpsprtm\base\ntsetup\syssetup\syssetup.c,6650,BEGIN_SECTION,Shutdown
[b]05/15/2007 01:32:08.250,d:\xpsprtm\base\ntsetup\syssetup\log.c,133,,GUI mode Setup has finished.[/b]

Note that at 01:31:28.859 SETUP reports free space on stick as its supposed to be if no files were deleted. Either that's incorrect or $WIN_NT$.~LS is deleted after 01:31:28.859 (about T-12- T-8). Or as I think folder is in use and cannot be renamed on time. May be one can spot something in the log.

Also, the idea to remove stick during T-1 to avoid long wait seems not so good, I can see SETUP is still doing something else at that stage, apart form deleting temp files.

Any ideas how to proceed further?

@Jaclaz - if you are still interested the attached files contains MBR and bootsector saved by HDhacker when formated by PEtoUSB and rewritten by TEXT mode SETUP.

@wimp - The IDs you have are for SIS IDE, and I can't see them in generic XP SP2 CD TXTSETUP.SIF HIDs, that means for me probably that yours are splipstreamed in your CD, SISIDE.SYS, which is later renamed and copied as NTBOOTDD.SYS. Can you search in your TXTSETUP.SIF on the CD for VEN_1039&DEV_5513 and give all results here?

XP_from_USB.zip

Edited by ilko_t
Link to comment
Share on other sites

@wimp - The IDs you have are for SIS IDE, and I can't see them in generic XP SP2 CD TXTSETUP.SIF HIDs, that means for me probably that yours are splipstreamed in your CD, SISIDE.SYS, which is later renamed and copied as NTBOOTDD.SYS. Can you search in your TXTSETUP.SIF on the CD for VEN_1039&DEV_5513 and give all results here?

My setup files are slipstreamed with RVM Integrator.

A search for VEN_1039&DEV_5513 in the TXTSETUP.SIF for my slipstreamed and my generic XP SP2 CD

gives the same result: the entry is not found.

The entry can be found in the pcidevs.txt file http://members.datafast.net.au/dft0802/downloads/pcidevs.txt

Your solutions for the SATA problem and the boot.ini issue are very interesting. :)

I will let you know the test results for my case as soon as possible.

Link to comment
Share on other sites

Mistery solved :)

Here is what I did to overcome signature problem in BOOT.INI and make the installation as universal as possible.

Stick is formated by PE2USB, copy NTDETECT.COM, NTLDR and BOOT.INI, which is:

I have used and tested the new procedure to overcome the boot.ini issue.

I have used the HP USB Disk Format tool instead of PE2USB ( Did you mean PeToUsb ? )

because PE2USB did not remove the MBR installed GRUB4DOS.

Create a folder BOOTFILES in root, and copy NTDETECT.COM, NTLDR and your custom BOOT.INI which will be copied on hard disk. Set them system, hidden and read-only in advance.

Why are NTDETECT.COM and NTLDR copied by BOOT_REN.CMD from BOOTFILES to SYSTEMDRIVE ?

They will be present there already.

I came through the Windows Setup procedure, but obtained a boot.ini with two entries as given below:

BOOT.INI on Laptop produced by WinXP Setup

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

Interesting is that the earlier NTBOOTDD.SYS file is absent in this case !

And there is no signature( ... ) ... entry anymore in boot.ini.

The default entry does not work: Windows won't start due to disc geometry problem.

But the second ( normal) entry works fine.

So the new procedure is not yet perfect, but works for me,

and it remains confusing for me how and when this boot.ini was made ...

Because according to the BOOT_REN.CMD , I would expect something else appearing.

Edited by wimb
Link to comment
Share on other sites

Did you mean PeToUsb
Sorry, yes, I will edit the long post.
Why are NTDETECT.COM and NTLDR copied by BOOT_REN.CMD from BOOTFILES to SYSTEMDRIVE ?
In a few cases I noticed that they are not written there, but may be SETUP tried to put them on stick or skipped because saw them on stick. That way we are sure everything needed to boot is in place.
I came through the Windows Setup procedure, but obtained a boot.ini with two entries as given below:...
rdisk(1) is because no mapping is made via GRUB, that was the reason we used map (hd0) (hd1) in the previous guide. It also won't add signature, because no mapping is made and SETUP sees the disks as they are.

The working line rdisk(0) I beleive is a copy of the one on the USB stick, I have no idea when SETUP adds it, but I noticed the same behavior. If mapping was used on my last test it was ending with signature and disk couldn't be booted with that signature, no idea why it worked before. That's why I decided to be brutal and replace the whole BOOT.INI as this would resolve all issues with it.

Your BOOT.INI was not copied, I believe CMDLINES was not set up properly, or switches in WINNT.SIF were missing. I am going to repeat all this step by step to make sure I haven't missed anything when was writing the post.

Thanks for your time :)

edit: Are you sure that CMDLINES.TXT and BOOT_REN.CMD were placed in the right subfolder \$WIN_NT$.~LS\$OEM$ ?

edit2: Ahh, silly me :) I missed to copy the tag. Post edited.

CMDLINES.TXT

[COMMANDS]

"BOOT_REN.CMD"

Edited by ilko_t
Link to comment
Share on other sites

CMDLINES.TXT
[COMMANDS]

"BOOT_REN.CMD"

Adding the missing [COMMANDS] tag, solved the problem ! :thumbup

Everything is working now as expected.

@ilko_t - Since you have solved also the SATA problem, it seems we are ready for really using the

bootable USB-stick as a device for installing Windows XP on the harddisk of any computer,

provided the BIOS supports booting from USB-stick.

@ilko_t and @jaclaz :

I am trying now to make a MultiBoot USB-stick with:

1. Unattended Install of Windows XP on Harddisk with Updates and DriverPacks Integrated

http://www.ryanvm.net/forum/index.php?sid=...490d2bd5184b68a and

http://unattended.msfn.org/unattended.xp/ and http://driverpacks.net/DriverPacks/overview.php

2. Booting from DOS, with Ghost for System Backup and System Restore

http://www.911cd.net/forums//index.php?sho...=19621&st=7

3. Adding WPI for Automatic Install of Additional Programs http://wpiw.net/

4. Unattended Install of Office 2003 with Updates Integrated http://www.siginetsoftware.com/forum/

5. Adding WinTools running direct from USB-stick using nu2menu http://www.dirk-loss.de/win-tools.htm

For BartPE it seems that booting from USB-stick is too slow (20 minutes) to be interesting,

as compared to BartPE booting in 2 minutes from DVD. http://www.nu2.nu/pebuilder/

Or do you have a solution for making BartPE boot faster from a USB-stick ?

It is a great solution, Thanks a lot for everything :D

Edited by wimb
Link to comment
Share on other sites

Hi wimb, I am glad it worked fine :) Sorry about the messy post of mine :blushing:

I beleive this topic, as well as Grub4Dos README.TXT will give you the ideas how to launch Ghost.

About the slow boot- it's because your motherboard supports USB1.1 boot only, once control is passed to a USB2 driver it operates at it's full speed. Bart PE loads much more before USB2 driver is loaded (may be driver could made to load earlier?) than XP Setup.

My laptop Dell Inspiron 6000 supports USB2 boot and believe me XP setup loads in a flash, no more than 10-12 secs. I can't read the names of the drivers being loaded, whereas on the Gygabyte DS3P and Abit AN7 motherboards it's much much slower. Bart PE loads at horrible speed too on them.

Once USB driver takes control it's fast again.

I have written recently to Gigabyte support about that, in the first few responses they had no idea what I was talking about, once we made it clear no more responses :(... for now. I also phoned tech. support in UK and the guy got the idea, but only adviced me to unplug all other USB devices and not to use front ports, no difference at all. Next to call is support in Taiwan :)

Update of BIOSes didn't do any change, for now.

I have just started a new topic in 911cd.net about that, you may keep an eye what is going on :

http://www.911cd.net/forums//index.php?showtopic=19731

Hopefully we will collect some useful database.

Regards,

ilko

Link to comment
Share on other sites

About the slow boot- it's because your motherboard supports USB1.1 boot only, once control is passed to a USB2 driver it operates at it's full speed. Bart PE loads much more before USB2 driver is loaded (may be driver could made to load earlier?) than XP Setup.

Maybe Bart Lagerweij can make the USB2 driver being earlier effective in booting BartPE.

I have just registered in the CD forum, and will ask him there if this is possible.

I will also present there the relevant data of my motherboard and BIOS.

The motherboard of my Medion MD6100 laptop is equipped with:

BIOS Version PTLTD - 6040000

PhoenixBIOS 4.0 Release 6.0

Ver 1.00PARTTBL

BIOS Date 01/26/03

It supports apparently from the slow (30 minutes) booting of BartPE only USB 1.1 boot.

I have used a Apacer HT203 - 1 GB USB-stick which is very fast and

allows to install Windows XP from bootable USB-stick in only 30 minutes.

So I think in the GUI mode of the setup that USB2.0 is already effective.

In Windows XP the laptop supports USB 2.0

My MultiBoot USB-stick is ready and supports now also DOS with Ghost, and booting with BartPE.

Everything works fine except for the slow booting of BartPE. :)

Link to comment
Share on other sites

When the new type of boot.ini with the 6 entries is present on the harddisk,

then after booting from the USB-stick, an option to Repair an existing Windows installation ( the 1 1 )

becomes available ( it is the second time when an option R is presented ).

I never use such a repair option, but when you select this option R to repair an existing installation,

the Windows repair takes place as expected, but with an unwanted effect on the USB-stick !

The result is that $WIN_NT$.~BT and $WIN_NT$.~LS folders are deleted and txtsetup.sif in the root directory

of the USB-stick is deleted as well !

Moreover, cmdlines.txt is apparently not executed,

so that the boot.ini ends up with the starting default entry: harddisk 1, partition 1.

After removing the USB-stick and Restart, Windows is not able to start from this default harddisk 1, partition 1 option.

But one can select to start from the harddisk 0, partition 1 so that Windows will start.

It seems that the Write protection of the USB-stick with hiveOEM.inf is not used in this case.

Maybe there is a solution to overcome this problem: Adding hiveOEM.inf in txtsetup.sif for the Repair case ?

When in boot.ini only a single entry with booting from harddisk 0 partition 1 is present,

then the Repair option is not presented, so that the unwanted deletion of the Windows setup files on the

USB-stick wil not take place.

Edited by wimb
Link to comment
Share on other sites

It seems your post at the CD Forum has been removed ...
I can see it, it's the first post in USB booting subforum:

http://www.911cd.net/forums//index.php?showforum=37

I am still in touch with Gigabyte, surprisingly they are investigating this further :) Copy of their last reply:

We also try to use Bart PE to create a USB boot drive. Test on Gigabyte GA-965P-DS3P and Asus P5B-VM motherboard, both motherboards are need take 5 minutes to boot.

Before we start to test, we already set first boot is USB flash memory, and press start button. When system boot in to Microsoft main menu press stopwatch to stop.

Gigabyte motherboard GA-965P-DS3P is taking 6mins and 17 sec, ASUS P5B is taking 6mins and 12 sec.

According to our experience the USB port under DOS mode is run USB 1.1, that’s why the time takes so long.

Regards,

GBT TECH

Well, DOS and Bart PE... at least they are trying, hopefully some progress could be achieved.
When the new type of boot.ini with the 6 entries is present on the harddisk,

then after booting from the USB-stick, an option to Repair an existing Windows installation ( the 1 1 )

becomes available ( it is the second time when an option R is presented ).

I never use such a repair option, but when you select this option R to repair an existing installation,

the Windows repair takes place as expected, but with an unwanted effect on the USB-stick !

The result is that $WIN_NT$.~BT and $WIN_NT$.~LS folders are deleted and txtsetup.sif in the root directory

of the USB-stick is deleted as well !

...

That's interesting result, but I believe normal, actually we have never tried so far to use the repair option when SETUP uses different approach. The way now USB write-protect is implemented by MIGRATE.INF and oemHIVES.inf applies only for new installations only. Further investigation will be needed how to fix it, thanks for bringing this up :) Edited by ilko_t
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...