How to boot/install from USB key ? - the historical thread - how it all began
#401
Posted 17 October 2007 - 04:04 PM
The TXT-mode install works great and so does the GUI. Problem is: When I try to boot after everything is done I'm missing hal.dll. :/
I'm guessing my boot.ini is messed up or something and that's why it can't find the file but I could be wrong. Downloading WinPE now to try and see if it is (Not using BartPE because it doesn't work, just decides to use 100% cpu and after waiting 10-15 minutes I got sick of waiting and killed the process).
Anyone have any other ideas? Would really appreciate some help.
#402
Posted 18 October 2007 - 11:21 AM
flasklax, on Oct 17 2007, 11:04 PM, said:
The TXT-mode install works great and so does the GUI. Problem is: When I try to boot after everything is done I'm missing hal.dll. :/
I'm guessing my boot.ini is messed up or something and that's why it can't find the file but I could be wrong. Downloading WinPE now to try and see if it is (Not using BartPE because it doesn't work, just decides to use 100% cpu and after waiting 10-15 minutes I got sick of waiting and killed the process).
Anyone have any other ideas? Would really appreciate some help.
Please read this post and the next few:
http://www.msfn.org/board/boot_install_USB...762#entry698762
I think you unplugged USB stick before first logon. Do not do that if you did. Stick MUST be left plugged until you COMPLETE your first logon, when 2 batch files are executed, fixing BOOT.INI and renaming back the 2 source folders+txtsetup.sif on stick.
If that's not the case please post your boot.ini on the destination hard drive. The problem is with it.
Another way- what's the name of 2 WINNT folders on stick after installation?
#403
Posted 18 October 2007 - 01:07 PM
Gave it another go with different sources and after that install was done, same thing there was no hal.dll and didn't remove stick. However my WIN.LS and BT folders disappeared...
Anyway, fixed it by getting WinPE on my USB-stick and changing my boot.ini-file.
After that everything worked out fine.
#404
Posted 18 October 2007 - 02:24 PM
Can you post some details:
1. What motherboard/model/BIOS version
2. What storage devices you have (SATA/IDE disks, DVD/CD, card readers, printer with card reader...)
3. In case of SATA disks how are they set up in BIOS? In SATA/ACPI/IDE/RAID mode...Where are IDE devices connected if you have such?
4. How do you choose to boot from USB? By going in BIOS and changing boot order or pressing F8/F12/something_else at boot and choosing USB or....
5. What entries did you have in BOOT.INI on destination hard drive, before you edited it? If don't remember there must be a backup file of BOOT.INI in your destination root.
Thanks.
This post has been edited by ilko_t: 18 October 2007 - 02:24 PM
#405
Posted 22 October 2007 - 03:35 AM
using TEE.BAT integrated for redirecting xcopy output towards usb_prep.log file and to Screen.
Thanks to jaclaz for the reference on how to make use of TEE.BAT
Update of Existing Bootable USB-stick having XP LocalSource Folders is possible now.
Also there is no need anymore to Format an Existing MultiBoot USB-stick having boot.ini Menu.
Total Commander Synchronize Dirs in Asymmetric mode is very usefull for Updating
the $WIN_NT$.~BT and $WIN_NT$.~BT Folders using a previously made (renamed) tempimage.img
which can be Mounted with the Mount_TempImage.cmd
Instead of the Copy of about 6000 files in 15 minutes to USB-stick,
one needs to copy may be only 150 files in the Asymmetric Synchronize Update.
Thanks to jaclaz for the routine for parsing the VDK.exe output to determine the Drive Letter
of the TEMPDRIVE, needed when an existing tempimage.img was mounted.
An Extended Help File was made with Most Frequently Encountered User ERRORS,
and further Description of the use of usb_prep5.cmd Program
and the Use of Total Commander to Update Existing Bootable USB-stick having XP LocalSource Folders.
The Attachment gives the usb_prep5.zip File
Regards,
wimb
Attached File(s)
-
usb_prep5.zip (119.46K)
Number of downloads: 181
This post has been edited by wimb: 22 October 2007 - 04:32 AM
#406
Posted 22 October 2007 - 05:50 AM
I believe it is hardware specific though.
I have a Corsair Flash Voyager 4gb usb stick.
One of its features is wear leveling.
http://www.corsair.com/_faq/FAQ_flash_driv...ar_leveling.pdf
After doing several reads and writes and modifications to the files on this usb stick, it somehow became unbootable.
Since the ntldr is geometry specific, and this drive moves data around for wear leveling, I belive its somehow related.
Solution, please make it possible to rewrite the mbr and extract the bootsector without having to format.
#407
Posted 22 October 2007 - 06:23 AM
effgee, on Oct 22 2007, 01:50 PM, said:
Since the ntldr is geometry specific, and this drive moves data around for wear leveling, I belive its somehow related.
Solution, please make it possible to rewrite the mbr and extract the bootsector without having to format.
ntldr is not geometry specific and it is unlikely that the NTLDR Bootsector of the USB-stick has changed.
You can use HDHacker to Save and Write the USB-stick Logical Drive bootsector
http://dimio.altervista.org/eng/
The files NTLDR, ntdetect.com, boot.ini and SETUPLDR.bs ( =Bootsector file for launching TXT Mode XP Setup)
are essential for booting. Check if they are still present on the USB-stick.
These files might be corrupt or there position on the stick might give the boot problem.
Tiny Hexer has an option Compare to check if the files are corrupt
http://www.mirkes.de...are/tinyhex.php
The position of files on the USB-stick can be analysed with WinHex using 1stSector column
http://www.x-ways.net/winhex/
wimb
#408
Posted 22 October 2007 - 08:21 AM
wimb, on Oct 22 2007, 02:23 PM, said:
http://www.x-ways.net/winhex/
Also, though rather difficult to get the hang of, FINDPART can be useful:
http://www.partition...m/utilities.htm
FINDPART CHSDIR <drive letter>
will give you the position of files.
jaclaz
#409
Posted 22 October 2007 - 07:50 PM
Guess I'll find out if "wear leveling" is an issue when it gets here.
By reading the doc though it doesn't look like it should be an issue.
The addressing of data is the same to the computer, it's the lookup table
in the stick itself that does the remapping and is supposed to be
transparent to the system.
It isn't doing this at an OS/FS level.
But we shall see.
This post has been edited by signal64: 22 October 2007 - 07:58 PM
#410
Posted 23 October 2007 - 02:26 AM
I have another question though, I noticed with the scripts there are a bunch of $OEM$ and registry files.
But I have noticed they do not copy (nor does my OEMinfo.ini and OEM.bmp)
There seems to be a discrepancy in which option in the winnt.sif that copies files from the $OEM$ folder.
Its supposed to be OEMPreinstall option - the one that breaks F6 compatibility.. but..
In fact I made a cd with Nlite to see what was going on, and it still didn't copy those files.
Very strange.
#411
Posted 23 October 2007 - 02:58 AM
effgee, on Oct 23 2007, 10:26 AM, said:
But I have noticed they do not copy (nor does my OEMinfo.ini and OEM.bmp)
There seems to be a discrepancy in which option in the winnt.sif that copies files from the $OEM$ folder.
Its supposed to be OEMPreinstall option - the one that breaks F6 compatibility.. but..
In fact I made a cd with Nlite to see what was going on, and it still didn't copy those files.
I think the winnt.sif file in your XPSOURCE\I386 folder contains an [Unattended] Section with OemPreinstall=Yes
which [Unattended] Section should be removed completely for making XP LocalSource for bootable USB-stick,
which will be nevertheless suitable for UNATTENDED INSTALL !!
When the [Unattended] Section is present, an empty $OEM$ folder wil be made in the $WIN_NT$.~LS folder.
I am using RyanVM Integrator and have not all the knowledge about what NLite is doing with $OEM$ folder.
May be ilko_t can comment on that.
If an EXISTING (empty) $OEM$ folder is detected in the $WIN_NT$.~LS folder of the TEMPDRIVE,
then the $OEM$ folder of usb_prep5 folder is not copied to the $WIN_NT$.~LS folder of the TEMPDRIVE.
This was introduced on request of ilko_t in relation to using NLite, see:
http://www.msfn.org/board/boot_install_USB...html&st=360
Anyway it is very good to check the composition of your $OEM$ folder in the $WIN_NT$.~LS folder of the TEMPDRIVE
before the FileCopy to USB-stick begins.
Help_usb_prep.txt
Quote
Change file winnt_sif.txt to your needs and COPY in XPSOURCE\I386 folder as file winnt.sif
Use for Preparing USB-stick Only winnt.sif file without an [Unattended] Section.
Edit 24-10:
The problem when an empty $OEM$ folder is detected in the $WIN_NT$.~LS folder of the TEMPDRIVE,
which blocks the copy of the $OEM$ folder from usb_prep5 folder, can be overcome by using in the usb_prep5.cmd
program a different markerfile e.g. CMDLINES.TXT in $OEM$ folder , instead of the $OEM$ folder itselves.
I will change that in the next version. That covers better the different cases.
Edit 25-10:
It is the posisition of the $OEM$ folder in the XPSOURCE which plays an interesting and important role.
If $OEM$ is located outside i386 folder in XPSOURCE , which is normal for an XP Setup CD,
then it is not used in making a LocalSource and [Unattended] Section with OemPreinstall=Yes
will generate an empty $OEM$ folder in the $WIN_NT$.~LS folder of the TEMPDRIVE.
But when $OEM$ is located inside i386 folder in XPSOURCE , then [Unattended] Section with OemPreinstall=Yes
will use this $OEM$ folder to generate a correct $OEM$ folder in the $WIN_NT$.~LS folder of the TEMPDRIVE.
However, the best way is to use $OEM$ folder from usb_prep5 folder and adapt it to your needs and keep it there.
Remove completely in winnt.sif file the [Unattended] Section with OemPreinstall=Yes
and place winnt.sif file in XPSOURCE\I386 folder. Then there is no problem at all
wimb
This post has been edited by wimb: 29 October 2007 - 08:49 AM
#412
Posted 23 October 2007 - 04:27 AM
signal64, on Oct 23 2007, 03:50 AM, said:
Guess I'll find out if "wear leveling" is an issue when it gets here.
By reading the doc though it doesn't look like it should be an issue.
The addressing of data is the same to the computer, it's the lookup table
in the stick itself that does the remapping and is supposed to be
transparent to the system.
It isn't doing this at an OS/FS level.
But we shall see.
Correct
In the famous "Dietmar's Thread" on 911CD, experiments proved that the best way to make sure that USB booting procedure is to start from a "wiped" drive, though noone was able to pinpoint the actual cause of the occasional failures.
However, there is no need to write 00's or (better) F6's to the whole device, but doing so for the first, say, 100 sectors, i.e 51200 bytes, should ensure that there are no "leftovers" that can cause problems to filesystem.
jaclaz
#413
Posted 25 October 2007 - 02:59 AM
1. The text mode copy took about an hour.
I bench'd the stick on the same system prior to the install and got 12MB reads.
While not great, it seems it shouldn't have been that slow on the copy.
I saw another reference here to larger sticks and fat32 being slow.
The total space being used on the stick now is 522MB so going to try to partition it as 700MB with FAT16 for grins.
2. The key doesn't show as C: during the partition portion of the setup.
Think this lead to the boot.ini issues that showed up after text mode install.
And yes, I'm making sure the boot selection of the stick is done in BIOS.
Stick was never removed.
What's also kind of odd is when the stick had a dos image on it, it did boot up as C:
System Info:
Abit NFM2 - BIOS 214
Single PATA with 2 partitions (30Gig primary active + 200Gig primary)
During text mode setup I deleted the 30Gig partition and selected it to install on.
When text mode finishes, reboot, and select GUI, I got an error that is a bit misleading. "missing <Windows root>\system32\hall.dll" due to boot.ini telling it to look at the other partition (which has NTFS on it).
I had to set the boot.ini GUI line to partition 2 (original had 1) on the stick for it to work. And of course it errored out trying to put a boot.ini on the hdisk after login. Had to manually put one on.
The resulting install did end up with a C:
So it looks like to setup I have 2 partitions but it's treating the second as C: and the first as D: which is weird (c: was partitioned first).
I'm backing up the D: partition and going to nuke both and try again.
So while off to somewhat of a rough start I have some things to try.
This post has been edited by signal64: 25 October 2007 - 03:07 AM
#414
Posted 25 October 2007 - 05:46 AM
signal64, on Oct 25 2007, 10:59 AM, said:
I saw another reference here to larger sticks and fat32 being slow.
The total space being used on the stick now is 522MB so going to try to partition it as 700MB with FAT16 for grins..
The Program asked you to do:
First Format to Make Bootable USB-stick with NTLDR Bootsector Using: PeToUSB.exe OR HP USB Disk Storage Format Tool Version 2.0.6 Settings PeToUSB: Enable Disk Format with LBA FAT16X
Did you use PeToUSB to Format the USB-stick with FAT16 ?
Quote
Quote
Quote
During text mode setup I deleted the 30Gig partition and selected it to install on.
When text mode finishes, reboot, and select GUI, I got an error that is a bit misleading. "missing <Windows root>\system32\hall.dll" due to boot.ini telling it to look at the other partition (which has NTFS on it).
You should NOT Delete the Active Partition having DriveLetter C:
Just Select the partition C: as the partition on which you are going to Install Windows XP,
and then Select Quick Format with NTFS FileSystem.
There is no need at all to Delete Partitions.
If you Delete and Create New partitions, you have to Finish with F3 and Boot from USB-stick again and
run 1. TXT Mode Setup again so that DriveLetters get their correct value, just as for a new harddisk
Help_usb_prep.txt
Quote
So in this case one boots twice in the TXT-mode Setup,
so that after the reboot drive letters get their correct value.
This post has been edited by wimb: 25 October 2007 - 07:33 AM
#415
Posted 25 October 2007 - 08:46 PM
wimb, on Oct 25 2007, 04:46 AM, said:
First Format to Make Bootable USB-stick with NTLDR Bootsector Using: PeToUSB.exe OR HP USB Disk Storage Format Tool Version 2.0.6 Settings PeToUSB: Enable Disk Format with LBA FAT16X
Did you use PeToUSB to Format the USB-stick with FAT16 ?
For whatever reason you can't use FAT16 on this 4GB stick (or the Corsair 4GB - it just arrived) using the HP USB Disk Disk Storage Format Tool. I had ignored the FAT16 requirement mentioned for PeToUSB as being needed for all and didn't see it as a requirement.
PeToUSB did format the sticks as FAT16.
Suggestion for a change to the wording to:
BEFORE YOU START - Make sure you have a FAT16 formated USB-stick using the HP USB Disk Storage Format Tool or PeToUSB. Make sure you use "Enable Disk Format with LBA FAT16X" when using PeToUSB.or something similar. It might make it even better to mention up front you can't use some 4GB with the HP Tool (and obviously larger sticks will need some extra work).
Quote
Ok - seemed to have missed that bit in the doc.
#416
Posted 25 October 2007 - 11:06 PM
FAT16 is for USB boot compatibility and sometimes speed. If FAT32 works for you, that's ok.
About slow speed- 1) check your USB speed settings in BIOS and 2) do some benchmarks with small files, the speed you mentioned is probably valid ONLY for large files. A few posts before (post #386) you will find link to a good program, it will tell you how fast your stick is with small files, like the most of source files are.
This post has been edited by ilko_t: 25 October 2007 - 11:06 PM
#417
Posted 26 October 2007 - 03:32 AM
This is even though USB 2.0 is enabled in BIOS so was wondering if that was the issue in this case.
I used bench32 for the speed test I mentioned earlier.
Here's the results on my victim Abit NFM2 system I'm testing the install with.
PQI 4GB:
http://img206.images...5/000001vb3.jpg
And for grins the Corsair 4GB Voyager GT:
http://img141.images...1/000002go1.jpg
Now that things are clearer I did a quick install with the Corsair (FAT16) and text mode took about 15min to copy.
I wasn't timing it closely as I was just seeing if it would work at this stage.
If anyone is interested I'll do some comparison testing (and timing things closely this time) with FAT32/FAT16 on these sticks with a 680i motherboard.
Need to load that puppy up again tomorrow.
This post has been edited by signal64: 26 October 2007 - 03:32 AM
#418
Posted 28 October 2007 - 08:37 PM
Finally got it working with USB hard drives.
Dummydisk.sys was remade, many many thanks to Anton Bassov, who responded to my emails and gave the hint what had to be changed in source code, despite being a single statement.
The new rdummy.sys worked fine loaded from txtsetup.sif
Without rdummy.sys:

With rdummy.sys:

Furthermore- Setup considers it as critical SCSI driver and adds it as service in the new installation starting at boot time. Every USB hard disk attached is seen as removable. This is not wanted, will be taken care of.
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\rdummy] "Type"=dword:00000001 "Start"=dword:00000000 "Group"="SCSI miniport" "ErrorControl"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\rdummy\Enum] "0"="Root\\LEGACY_RDUMMY00" "Count"=dword:00000001 "NextInstance"=dword:00000001
A little bug in the driver- if during Txt Setup when disks are detected and/or format or repartitioning performed, quit by pressing F3 causes BSOD, without any harms though. The driver doesn't have unload functionality, I believe that's why, may be Anton or anyone else familiar with this matter could add such.
If Setup is let to finish copying files and restart everything is fine, no BSODs, unattended install was performed without any glitches with XP SP2 source. Boot.ini and source folders are as with USB sticks.
Next days I'll add the necessary changes to the bat files, wimb already included an excellent help file so not much left to be done here.
A few more results:
Make small (15MB) image file, mount it as disk, copy boot files there ($win_nt$.~bt folder, setupldr.bin, ntdetect.com and txtsetup.sif in root), use Grub4Dos to mount it as fd0- no go, Setup starts, but cannot find biosinfo.inf in $win_nt$.~bt. Grub4Dos floppy is ignored, why it searches in $win_nt$.~bt? TXT Setup considers it as hard disk. Copy all files for ~BT folder to root- same result.
Mount it as non- existing HD- hd5. Same story, in previous tests I found that setup insist on having all boot files on first HD or complains about biosinfo.inf
setupldr.bin in 6 XP boot floppies differs from normal XP setupldr.bin. Using it didn't help, neither disk101 marker files.
I've tried also to speed up USB boot, moving usbstor.sys, disk.sys and all usb drivers to earlier stages, like in [BootBusExtenders], this didn't help. It seems like Setup loads all drivers, but actually starts them when "WINDOWS IS STARTING" is displayed. I've read similar statement in the past, no idea where it was.
Regards,
ilko
#419
Posted 29 October 2007 - 05:04 AM
ilko_t, on Oct 29 2007, 04:37 AM, said:
Finally got it working with USB hard drives.
Dummydisk.sys was remade, many many thanks to Anton Bassov, who responded to my emails and gave the hint what had to be changed in source code, despite being a single statement.
The new rdummy.sys worked fine loaded from txtsetup.sif
The Batch Program usb_prep6.cmd was further improved:
- More Help at Begin and End of the Program
- Delete of tempimage.img needs now User Approval
This is good in view of the possibility to use tempimage.img again for copy to USB-stick
- $OEM$ folder is now only copied if CMDLINES.TXT does not Exists already in LocalSource on TEMPDRIVE
The Attachment gives the new version in the usb_prep6.zip file
@ilko_t
Congratulations with the possibility to use USB hard drives in future versions.
I hope that you can use this new version of the Batch Program for
adding the necessary changes to the bat files for support of rdummy.sys
Regards,
wimb
Attached File(s)
-
usb_prep6.zip (121.27K)
Number of downloads: 302
This post has been edited by wimb: 29 October 2007 - 05:20 AM
#420
Posted 29 October 2007 - 06:02 AM
ilko_t said:
Make small (15MB) image file, mount it as disk, copy boot files there ($win_nt$.~bt folder, setupldr.bin, ntdetect.com and txtsetup.sif in root), use Grub4Dos to mount it as fd0- no go, Setup starts, but cannot find biosinfo.inf in $win_nt$.~bt. Grub4Dos floppy is ignored, why it searches in $win_nt$.~bt? TXT Setup considers it as hard disk. Copy all files for ~BT folder to root- same result.
Mount it as non- existing HD- hd5. Same story, in previous tests I found that setup insist on having all boot files on first HD or complains about biosinfo.inf
setupldr.bin in 6 XP boot floppies differs from normal XP setupldr.bin. Using it didn't help, neither disk101 marker files.
That's strange, I have small HD images of recovery console working allright, directly or from grub4dos, both "directly" and using the 2003 RAMDISK.SYS to boot them.
I have experimented with /minint, /CMDCONS and $win_nt$.~bt
(but this works with image mounted as HD0)
Some info is on this thread:
http://www.boot-land.net/forums/index.php?...=2692&st=10
Most probably it won't work on "FD" type of image, but maybe one can use once again the grub4dos mapping features to exchange drives?
Can you post a DIR /S>Setupdir.txt of your 15 Mb image?
I'll see if I can re-create it in a way that it works.
jaclaz



Help
This topic is locked
Back to top









