USB_MultiBoot.cmd - Install XP from USB


1. Introduction

The Batch Program USB_MultiBoot.cmd can prepare a Bootable USB-Stick, which can be used to Install XP from USB. Install from USB-Drive is of general use, it’s convenient and faster than installing from CD or DVD, but is limited to computers that are able to boot from USB, as determined by BIOS and Motherboard. Updating and Changing an USB-stick is also easier than preparing a new Bootable CD or DVD. Install XP from USB is very useful when the computer does not have a optical drive, like e.g. ASUS Eee subnotebook.

Preparing a Bootable USB-Drive with USB_MultiBoot.cmd Involves:

  • Format USB-stick like a Bootable Harddisk Drive with NTLDR BootSector using PeToUSB or HP USB Format Tool
  • Select from the Main Menu of USB_MultiBoot.cmd
    1. Give XP Setup Source Folder and give UserData for XP Setup
    2. Give USB-Drive Target
    3. Make Bootable USB-Drive with XP Setup Folders

Installing XP from USB requires a Reboot from USB-Drive and Select from Boot Menu: 1. Begin TXT Mode Setup Windows XP

USB_MultiBoot.cmd is Vista Compatible, but requires User Account Control OFF.
In this case a BOOTMGR type BootSector is made when Formatting the USB-Drive.
Such Bootsector is Detected and Auto Converted by BootSect.exe to NTLDR type Bootsector required for booting with boot.ini Menu. XP as OS is preferred for Speed of FileCopy to USB (10min instead of 30min for Vista OS)

The procedure for installing Windows XP from a bootable USB-stick was developed by ilko_t, jaclaz , cdob, porear and wimb at MSFN Forum

2. XP-Source Preparation (BEFORE YOU START)

Make sure that your XPSOURCE Folder is located on your Harddisk in a simple Path without SPACES. Copy the Contents of your Windows XP Setup CD to your XPSOURCE Folder on Harddisk.

Siginet’s RyanVM Integrator or nLite can be used to Integrate Windows UpdatePacks in the XP-Source.

Windows XP UpdatePacks and Addons:

Supports the use of BTS DriverPacks located in OEM Folder on USB-Drive

For installing XP on modern systems with SATA Drives it is needed to use DPsBase.exe for Integrating in your XPSOURCE BTS DriverPack Massstorage with TXT Mode Enabled. In that case a lot of Extra RAID SCSI and SATA Drivers (about 120 extra) are Integrated and will appear in the XP Setup BootFolder $WIN_NT$.~BT on USB-Drive and can prevent a lot of XP Installation Boot Problems. First use RyanVM Integrator and then use DPsBase to Improve your XP-Source. The program supplies a Customized presetup.cmd and changes the winnt.sif file for use of DriverPacks.

The Complete XP-Source is Copied by USB_MultiBoot.cmd to XP LocalSource Folder $WIN_NT$.~LS on USB-Drive Computation of Estimated XP Folder Size is used to prevent USB-stick overflow and includes $WIN_NT$.~BT + cmpnents + I386 + AMD64 + $OEM$ + OEM Folders.

Excluding LANG and WIN98X Folders from Copying to USB can be Selected from USB_MultiBoot.cmd Main Menu, which can reduce the XP-Source on USB-Drive by 135 MB. Reduction of the XP WINDOWS Folder can be achieved with nLite but do NOT select Operating System Options–>Manual Install and Upgrade for removal. If you do you will get BSOD, error 0x0000006F during Text mode Setup of Windows XP.

3. Making a Bootable USB-Drive with USB_MultiBoot.cmd

  • Remove all other Removable Drives, like USB Backup Harddisks and Memory Cards
  • Use USB-sticks with High Read/Write Speeds of about 15 MB/sec
  • Unpack to your Harddisk in a simple Path without SPACES.
  • Launch USB_MultiBoot.cmd and Display the Format Menu
  • Format the USB-Drive with FAT or NTFS. Note: FAT32 is very SLOW for installing XP

    • P) - PeToUSB - FAT Format - Max 2 GB
      To Format USB-Drive : Enable Disk Format with LBA FAT16X
      Do NOT Select “Enable File Copy” of BartPE File Copy Options.
      FAT Format Supports Direct Booting with MS-DOS using MULTI_CONTENT
      Installing XP from USB takes 30 minutes - Buffalo FireStix 2 GB

    • H) - HP USB Disk Storage Format Tool V2.0.6 - NTFS Format - use X_CONTENT
      NTFS Format Supports DOS Boot Floppy Images via GRUB4DOS Menu
      Installing XP from USB takes 16 minutes - Corsair Flash Voyager 4 GB
      Do NOT use the HP Tool for USB-Harddisks having more than 1 Partition
      WARNING - HP Tool Formats whole Disk - Second Partition is Lost

    • N) - No Format - Use USB-Drive with FAT or NTFS formatted by Windows XP
      Or Update Existing Bootable USB-Drive having NTLDR Bootsector

  • For USB-Harddisk use Main Menu Option 0) to Change from USB-stick to USB-Harddisk.
    Because this makes use of rdummy.sys and is essential for using USB-Harddisk.
    rdummy.sys makes Fixed USB-Harddisk seen in XP Setup as Removable Device.

  • Select from the Main Menu of USB_MultiBoot.cmd

    1. Give XP Setup Source Folder and give UserData for XP Setup
    2. Give USB-Drive Target
    3. Make Bootable USB-Drive with XP Setup Folders

4. XP Setup Parameters in winnt.sif file and $OEM$ folder

Display and Edit of the 8 required parameters for Unattended Setup allows you to give your ProductKey and TimeZone used in the Current_winnt.sif and copies your winnt.sif file. The Current_winnt.sif file is auto adjusted for the Installation of XP from USB and then copied by USB_MultiBoot.cmd to $WIN_NT$.~BT folder on USB-Drive.

The file useraccounts.cmd with UserName is made in the $OEM$ Folder copied to $WIN_NT$.~LS folder on USB-Drive. CMDLINES.TXT is used for making UserAccounts and install of Registry Tweaks at T-12 Info see:

For the Option Edit UserData for XP Setup we have:

  • A. Unattended Install - UserName = YourName
    in winnt.sif file - unattendswitch=”Yes” - UserName is used Automatically
    useraccounts.cmd with UserName is created in $OEM$ Folder copied to USB-drive

  • B. Semi-Unattended Install - UserName = None
    in winnt.sif file - unattendswitch=”No” - UserNames are given Manually at Windows Welcome Screens
    useraccounts.cmd is Renamed to Inactive txt file in $OEM$ Folder copied to USB-drive

  • C. Undefined Install - UserName = Unknown
    No Changes are made in winnt.sif file or $OEM$ folder

In all cases Selecting Cancel keeps given Settings for winnt.sif file and $OEM$ folder Unchanged

Selecting Unattended Install in the Editor instead of Cancel will enable to skip the Welcome Screens by automatic adding the unattendswitch=”Yes” Setting to the [Data] Section of the Current_winnt.sif file. The UserName given at Edit Screen 8 will not be used in the case of XPSOURCE made by nLite.

OEM or nLite winnt.sif file is detected in XPSOURCE and Auto Changed for the Installation of XP from USB.<> In that case All Setup Parameters come from XPSOURCE and therefore Empty $OEM$_X Folder is Selected.

Windows XP file SETUPLDR.BIN is Renamed to XPSTP according to the 5-letter limit requirement for making NTFS BootSector Files using MakeBS3.cmd of jaclaz

In the Attended Install all Setup Parameters are given Manually during the GUI Mode of Setup Windows XP.
For each XP Source the Program Supports to launch Unattended or Attended Setup.
For Attended Setup a second SetupLoader XATSP is made, where winnt.sif is Patched as winat.sif using gsar.exe. So the extra Setup Option does not take extra space from the USB-stick.
Attended Install is always available as Extra Option in the boot.ini Menu.

5. Installing XP from USB

  • Remove all other Removable Drives, like USB Backup Harddisks and Memory Cards
    This will enable that your Computer Harddisk in XP Setup gets DriveLetter C

  • Boot with the USB-Drive plugged in and Press [Delete] key or F2 to Enter BIOS Setup
    Your BIOS may use a different key for starting BIOS Setup.

  • Change BIOS Boot Priority Settings: (your USB device is listed as Harddisk)
    Make First Boot Device Type is Harddisk and give your USB device the First Priority of Harddisks

  • Boot from USB-Drive and Select 1. Begin TXT Mode Setup Windows XP
    Use Only C: Drive of Computer Harddisk as Partition for Installing Windows XP and then Select Quick Format with NTFS FileSystem, XP Install is Automatic

    NEVER UNPLUG USB-Drive Until After First Logon of Windows XP

  • New Harddisk and Creating Partitions after Booting from USB-Drive:
    Direct after Deleting and Creating New partitions, Quit XP Setup with F3 OR Switch OFF your Computer and Boot in any case from USB-Drive again and Run 1. TXT Mode Setup again so that DriveLetters get their Correct Value So in this case one Boots ** TWICE ** in the TXT-mode Setup XP

  • USB_MultiBoot.cmd can make USB-stick to be seen in XP Setup as Boot Drive U:
    In this preferred case the driveletters of Harddisk Partitions and Optical Drives will get there desired normal value. Otherwise the USB-stick will get Drive Letter D: and other drives will get shifted drive letters.
    The same shifting of drive letters occurs for Installing from USB-Harddisk, for which it is not possible to make it seen as Boot Drive U: by changing migrate.inf After First Logon there is only 1 USB-Harddisk partition visible as a Removable Drive. After Reboot for Second Logon then all partitions of USB-Harddisk will become visible as Fixed Local Drives and the highest partition number of USB-Harddisk will get DriveLetter D: This reversal and use of DriveLetters might be unwanted and consequently the use of USB-stick for XP Setup is Preferred

    Install of Windows XP from bootable USB-Drive next to WINDOWS on the same or on a different partition of the harddisk, is possible by proper manually adjustment in advance of the BOOT.INI file on the USB-Drive.
    Adjust BOOT.INI on USB-Drive: (Or Select Correct boot.ini Using Option B in Menu Screen)
    For Install on the Second Partition, change partition(1) in partition(2)
    For Install Next to WINDOWS, change WINDOWS to what will be used as Install FolderName, e.g. WINDOWS.51
    Windows Install Folder Name required according to MS-DOS 8.3 format.
    So these non-standard installs are still possible, but require only small changes in the BOOT.INI on the USB-Drive in advance. Otherwise an ERROR Message for Setup of WINDOWS XP: WINDOWS\system32\hal.dll file missing will orccur on Reboot for GUI Mode.

hal.dll ERROR for Install of XP from USB

In case of hal.dll Error on Reboot for GUI-mode of XP Setup:
The Error means only that in GUI mode the Windows folder is NOT found on the default location which is normally partition(1) of your internal harddisk and would need in boot.ini Menu to Select rdisk(1)partition(1)

The error can be due to a Hidden First Partition (case of HP Computer) so that you Install on partition(2)

For your Netbook it can be that you Install on partition(3). In that case you Select in GUI-mode and on Start of XP the line in boot.ini Menu with HD 1 - Part 3

It is also recommended to remove any Additional USB-drive like USB Backup Harddisk or External Cardreader since these extra USB-drives may interfere in Harddisk numbering and can cause then also the hal.dll Error.

In TXT-mode of XP Setup, where you Select the partition on which you are going to Install, you must count the partition number and use this in your boot.ini Menu on your USB-stick on Reboot for GUI-mode of XP Setup and for Start of XP.

To solve your hal.dll Error you need to change the boot.ini file on your USB-stick. It can be handy to make a boot.ini with multiple entries like this:

[Boot Loader]
[Operating Systems]
C:\btsec\"1. Begin TXT Mode Setup Windows XP, Never unplug USB-Drive Until Logon"
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Continue GUI Setup + Start XP from HD 0 - Part 1" /FASTDETECT
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Continue GUI Setup + Start XP from HD 1 - Part 1" /FASTDETECT
multi(0)disk(0)rdisk(1)partition(2)\WINDOWS="Continue GUI Setup + Start XP from HD 1 - Part 2" /FASTDETECT
multi(0)disk(0)rdisk(1)partition(3)\WINDOWS="Continue GUI Setup + Start XP from HD 1 - Part 3" /FASTDETECT
multi(0)disk(0)rdisk(2)partition(1)\WINDOWS="Continue GUI Setup + Start XP from HD 2 - Part 1" /FASTDETECT

Partition Numbering starts with 1
Harddisk Numbering starts with 0

On booting from USB-stick it will count in the arcpath as rdisk(0) and your Internal Harddisk will then normally be rdisk(1)

As alternative you can try:
Install from USB AFTER Booting with PE
In this way you are insensitive to the hal.dll Error. Moreover, after booting with LiveXP into PE environment you are able to use Disk Manager and can see what is the partitioning of your harddisk and see which is the Active Partition e.g. the partition from which the computer will try to boot. Also you can make then appropriate changes using Disk Manager or Acronis Disk Director available in LiveXP

6. Post-Install of Drivers and Programs

The Folder usb_cfg_extra provides a script for Windows Post-Install Wizard (WPI) - WPI is very handy for the Automatic Install of Programs after Install of XP from USB.

In WPI script there is the option to run SFC /purgecache which deletes the dll cache by deleting the files in Folder C:\WINDOWS\system32\dllcache. This is a very simple way to reduce the WINDOWS Folder Size by 360 MB. The Result is a XP WINDOWS Folder Size on Harddisk of only 785 MB inclusive all Updates.

Advanced Use of USB_MultiBoot.cmd for making MultiBoot USB-Drives

7. Adding Extra Sources for Booting with BartPE, UBCD4WIN, Windows PE 2.0 and Vista Setup

BartPE -
UBCD4Win -
can be added to USB-Drive by Selecting BartPE Source Folder in the Main Menu. Remove with Cancel.

The Folder usb_cfg_extra provides scripts for BartPE Menu

Install of Vista from USB is supported and launched via GRUB4DOS Menu…6.html&st=2
For Vista Install from USB, Remove on first Restart your USB-stick.

Overflow Control is used by measuring DiskSize, FreeSize, XP-Source and Extra Source Folders using ASP Drive Object and Visual Basic Scripting.

8. Multiple XP Install from USB and Multiple PE (BartPE and UBCD4Win) Booting from USB

Multiple XP Install from USB is Supported (max 9 sources)…SB-t114543.html
Run USB_MultiBoot.cmd again using New XP Source and Empty XX_CONTENT Source Folder

Multiple PE (BartPE and UBCD4Win) from USB is supported using Multi_Partition USB-Drives. Multi-Partition an USB-stick after using INSTALL_DUMMY.cmd from makebt Folder. When dummy.sys is Installed in your OS, then USB-sticks are seen as Fixed Local Harddisks. In that case you can make Multiple Partition USB-sticks with NTFS format, allowing to combine BartPE and UBCD4WIN or different Vista Versions x86 and x64.….html&st=11…20089&st=24
Run USB_MultiBoot.cmd again using New BartPE Source and using Empty XX_CONTENT Source Folder and No Copy of XP Source.

Attached Files




Guide boot.ini - U-XP-SET

FAQs - USB-MultiBoot - IMG-XP

MBR-Backup - Make-PE3