Ok, here we go. I started this topic because I was trying to turn a two boot to USB process to install XP from ISO into a One boot to USB if need be and through some helpful post I have managed to do so. Also didn't want to load the whole ISO to ram for small ram machines
This is what I started with in my menu.lst
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP Home Setup Part 1 from %USBRoot%nDec 11
password --md5 $1$A$hzYlFap3SLNNQ/tA7c3.S.
find --set-root --devices=h /laddsbootusb.tag
map --mem (md)0x800+4 (99)
checkrange 0x80 read 0x8280 && map (hd1) (hd0)
checkrange 0x80 read 0x8280 && map (hd0) (hd1)
map /XP/HOME.ISO (222)
map /XP/firadisk.img (fd0)
map /XP/firadisk.img (fd1)
map --harddrives=1
map --hook
write (99) [FiraDisk]nStartOptions=cdrom,vmem=find:/XP/HOME.ISO;floppy,vmem=find:/XP/firadisk.img;n0
rootnoverify (222)
chainloader
and you had to follow a reboot to USB for part two (didn't like this part)
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP Home Setup Part 2 from %USBRoot%nDec 11
password --md5 $1$A$hzYlFap3SLNNQ/tA7c3.S.
find --set-root --devices=h /laddsbootusb.tag
map --mem (md)0x800+4 (99)
# map (hd1) (hd0)
# map (hd0) (hd1)
checkrange 0x80 read 0x8280 && map (hd0) (hd1)
checkrange 0x80 read 0x8280 && map (hd1) (hd0)
map --hook
write (99) [FiraDisk]nStartOptions=cdrom,vmem=find:/XP/HOME.ISO;n0
root (hd0,0)
chainloader /ntldr
chainloader (hd0)+
well not anymore. I needed a one boot process because of time and I wanted to eliminate confusion for my other techs without having to make sure USB was booted a second time or set all the g4d defaults to boot the second choice and so on. I looked at all links that was available to me and I put them all together to make one project.
First I want to say winsetupfromusb (Thanks ilko_t) is my favorite and the easiest in my opinion and can be found here
http://www.msfn.org/...omusb-with-gui/I just wanted a backup option and this method I came up with using Firadisk is the second choice for me.
First I am going to use XP Home as my example but works for Pro and MCE
Second, you DO NOT have to change Paths or ISO names from the default ones in cdob, XP_INST.IMA or setup.cmd. Just setup the root of your USB and folder names and ISO names as listed on the post at MSFN from the link at number 2 below. I like to use certain ISO names and folders becasue it keeps the confussion down for me as I have three job titles at my company and things get crazy sometimes.
1. I am using a SP3 Disc with all DP and Dec updates slipstream with RyanVM update tool
2. I download the XP_INST.IMA from here (Thanks cdob)
http://www.msfn.org/...aded-iso-image/ (expand.exe SETUP.EX_ setupORG.exe explained on first page and is required)
3.Changed the name of the XP_INST.IMA to HOME.IMA and mounted the IMA with imdisk
http://www.ltr-data.se/opencode.html/4.Changed the name of the path and ISO file in the ISOimage.ini and it looks like this XPISOHOME.ISO
5.Changed everything in the setup/setup.cmd to match the paths (not needed if path is set in the ISOimage.ini) but just in case
set reassign=
if not exist c: set reassign=true
if exist c:XPISOHOME.ISO set reassign=true
if exist c:XP2003*.ISO set reassign=true
if defined reassign if /I %SystemDrive%.==C:. set reassign=
and here
SET ISOfile=
set ISO_file_search=XPISOHOME.ISO
if exist ISOimage.ini for /f "eol=;" %%a in (ISOimage.ini) do if not %%a.==. set ISO_file_search=%%
and here
rem ISO file added to another ISO image
if not exist V:I386TXTSETUP.SIF if exist V:XPISOHOME.ISO (
(echo. &echo mount ISOfile V:XPISOHOME.ISO) >>presetup.log
set device_ImDisk=deviceImDisk1
imdisk.exe -a -t file -f V:XPISOHOME.ISO -o ro -m W:
echo.>>presetup.log
dir W: >> presetup.log
echo.>>presetup.log
6.Updated the Firadisk driver from here that's in the mounted IMA in a folder called firadisk
http://reboot.pro/8804/7.Updated the imdisk drivers from the mounted IMA in a folder called imdisk file
http://www.ltr-data.se/opencode.html/8.Saved the changed mounted IMA file
9.Created folders on my g4d USB Stick /XP/ISO and /XP/Floppy (using the new g4d 12-30-11)
http://code.google.c.../downloads/list10.Copied my HOME.IMA (also created PRO.IMA and MCE2005.IMA the same way) to /XP/Floppy and my XP ISO to /XP/ISO
11. Created a new folder in my BOOTWS folder (winsetupfromusb to check HD number) called FULLISO and copied my modded ?.lst file into.
http://reboot.pro/12449/This is what my 4.lst in my /BOOTWS/FULLISO folder looks like (pretty much 2 thorugh 8 will be the same execpt the checkrange numbers and the HD numbers..I am using 4.lst as example because my PC has 3 internal HD)
set List4=4.lst
echo %List4%
echo %USBRoot%
echo %Offset%
echo %XPISO%
echo %Image%
pause --wait=10 Making Sure Paths Exist...Hit Enter Key At AnyTime
map --mem (md)0x800+4 (99)
checkrange 0x80 read 0x8280 && map (hd0) (hd3)
checkrange 0x80 read 0x8280 && map (hd1) (hd0)
checkrange 0x80 read 0x8280 && map (hd2) (hd1)
checkrange 0x80 read 0x8280 && map (hd3) (hd2)
map %USBRoot%/XP/Floppy/%Image% (fd0)
map %USBRoot%/XP/Floppy/%Image% (fd1)
map --e820cycles=3
map --hook
write (99) [FiraDisk]nStartOptions=cdrom,vmem=find:/XP/ISO/%XPISO%;floppy,vmem=find:/XP/Floppy/%Image%;n0
rootnoverify (222)
chainloader (222)/I386/SETUPLDR.BIN
This part may or may not be needed and can be =3 or =0
map --e820cycles=3
Use in my testing to eliminate in case of the black cursor of death
If you notice I set the same variables for the ISO name and IMAGE name so my Home, Pro, and MCE2005 could all use just one /BOOTWS/FULLISO folder and this is my working xpiso.lst which I load from my menu.lst
##USB XP Menu 2
if exist %USBRoot%/Menu/Splash/xp.xpm.gz set BG=%USBRoot%/Menu/Splash/xpiso.xpm.gz
splashimage %BG%
title !USE PARTITION WIZARD FIRST! THIS IS THE FULL ISO INSTALL. SLOWER
root()
title
root
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP Home SP3 Install From ISO From %USBRoot%nDec 11 With Most DriversnThis Is A Little Slower Method
password --md5 $1$A$hzYlFap3SLNNQ/tA7c3.S.
find --set-root --devices=h /laddsbootusb.tag
clear
set /p /u Answer=ARE YOU SURE YOU WANT TO INSTALL XP HOME SP3...Y or N :
if /i "%Answer%"=="n" echo Back To Main Menu! && configfile %USBRoot%/Menu/xpiso.lst
set Offset=%USBRoot%/BOOTWS/FULLISO
set XPISO=HOME.ISO
set Image=HOME.IMA
clear
if not exist %USBRoot%/XP/ISO/HOME.ISO echo Can Not Find XP Home. Please Contact Superman && pause --wait=10 Going Back To Main Menu && configfile %USBRoot%/menu.lst
clear
echo Installing XP HOME From %USBRoot%/XP/ISO/%XPISO%
echo Loading Files From %Offset%
clear
map --unmap=0:0xff
map --unhook
map %USBRoot%/XP/ISO/%XPISO% (222)
clear
#checkrange 0x00,0x01 read 0x8280 && configfile %Offset%/fd.lst
checkrange 8 calc *0x475 & 222 && configfile %Offset%/8.lst
checkrange 7 calc *0x475 & 222 && configfile %Offset%/7.lst
checkrange 6 calc *0x475 & 222 && configfile %Offset%/6.lst
checkrange 5 calc *0x475 & 222 && configfile %Offset%/5.lst
checkrange 4 calc *0x475 & 222 && configfile %Offset%/4.lst
checkrange 3 calc *0x475 & 222 && configfile %Offset%/3.lst
checkrange 2 calc *0x475 & 222 && configfile %Offset%/2.lst
#checkrange 1 calc *0x475 & 222 && configfile %Offset%/1.lst
boot
title
root
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP MCE SP3 Install From ISO From %USBRoot%nDec 11 With Most DriversnThis Is A Little Slower Method
password --md5 $1$A$hzYlFap3SLNNQ/tA7c3.S.
find --set-root --devices=h /laddsbootusb.tag
clear
set /p /u Answer=ARE YOU SURE YOU WANT TO INSTALL XP MCE SP3...Y or N :
if /i "%Answer%"=="n" echo Back To Main Menu! && configfile %USBRoot%/Menu/xpiso.lst
set Offset=%USBRoot%/BOOTWS/FULLISO
set XPISO=MCE2005.ISO
set Image=MCE2005.IMA
clear
if not exist %USBRoot%/XP/ISO/MCE2005.ISO echo Can Not Find XP MCE2005. Please Contact Superman && pause --wait=10 Going Back To Main Menu && configfile %USBRoot%/menu.lst
clear
echo Installing XP MCE2005 From %USBRoot%/XP/ISO/%XPISO%
echo Loading Files From %Offset%
clear
map --unmap=0:0xff
map --unhook
map %USBRoot%/XP/ISO/%XPISO% (222)
clear
#checkrange 0x00,0x01 read 0x8280 && configfile %Offset%/fd.lst
checkrange 8 calc *0x475 & 222 && configfile %Offset%/8.lst
checkrange 7 calc *0x475 & 222 && configfile %Offset%/7.lst
checkrange 6 calc *0x475 & 222 && configfile %Offset%/6.lst
checkrange 5 calc *0x475 & 222 && configfile %Offset%/5.lst
checkrange 4 calc *0x475 & 222 && configfile %Offset%/4.lst
checkrange 3 calc *0x475 & 222 && configfile %Offset%/3.lst
checkrange 2 calc *0x475 & 222 && configfile %Offset%/2.lst
#checkrange 1 calc *0x475 & 222 && configfile %Offset%/1.lst
boot
title
root
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP PRO SP3 Install From ISO From %USBRoot%nDec 11 With Most DriversnThis Is A Little Slower Method
password --md5 $1$A$hzYlFap3SLNNQ/tA7c3.S.
find --set-root --devices=h /laddsbootusb.tag
clear
set /p /u Answer=ARE YOU SURE YOU WANT TO INSTALL XP PRO SP3...Y or N :
if /i "%Answer%"=="n" echo Back To Main Menu! && configfile %USBRoot%/Menu/xpiso.lst
set Offset=%USBRoot%/BOOTWS/FULLISO
set XPISO=PRO.ISO
set Image=PRO.IMA
clear
if not exist %USBRoot%/XP/ISO/PRO.ISO echo Can Not Find XP PRO. Please Contact Superman && pause --wait=10 Going Back To Main Menu && configfile %USBRoot%/menu.lst
clear
echo Installing XP PRO From %USBRoot%/XP/ISO/%XPISO%
echo Loading Files From %Offset%
clear
map --unmap=0:0xff
map --unhook
map %USBRoot%/XP/ISO/%XPISO% (222)
clear
#checkrange 0x00,0x01 read 0x8280 && configfile %Offset%/fd.lst
checkrange 8 calc *0x475 & 222 && configfile %Offset%/8.lst
checkrange 7 calc *0x475 & 222 && configfile %Offset%/7.lst
checkrange 6 calc *0x475 & 222 && configfile %Offset%/6.lst
checkrange 5 calc *0x475 & 222 && configfile %Offset%/5.lst
checkrange 4 calc *0x475 & 222 && configfile %Offset%/4.lst
checkrange 3 calc *0x475 & 222 && configfile %Offset%/3.lst
checkrange 2 calc *0x475 & 222 && configfile %Offset%/2.lst
#checkrange 1 calc *0x475 & 222 && configfile %Offset%/1.lst
boot
title
root
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP PRO CORP SP3 Install From ISO From %USBRoot%nDec 11 With Most DriversnThis Is A Little Slower Method
password --md5 $1$0$NtEZSDZZ3Hjh6lV5xYzmT/
find --set-root --devices=h /laddsbootusb.tag
clear
set /p /u Answer=ARE YOU SURE YOU WANT TO INSTALL XP HOME SP3...Y or N :
if /i "%Answer%"=="n" echo Back To Main Menu! && configfile %USBRoot%/Menu/xpiso.lst
set Offset=%USBRoot%/BOOTWS/PROCORP
set XPISO=PROCORP.ISO
set Image=PROCORP.IMA
clear
if not exist %USBRoot%/XP/ISO/PROCORP.ISO echo Can Not Find XP PRO CORP. Please Contact Superman && pause --wait=10 Going Back To Main Menu && configfile %USBRoot%/menu.lst
clear
echo Installing XP PRO From %USBRoot%/XP/ISO/%XPISO%
echo Loading Files From %Offset%
clear
map --unmap=0:0xff
map --unhook
map %USBRoot%/XP/ISO/%XPISO% (222)
clear
#checkrange 0x00,0x01 read 0x8280 && configfile %Offset%/fd.lst
checkrange 8 calc *0x475 & 222 && configfile %Offset%/8.lst
checkrange 7 calc *0x475 & 222 && configfile %Offset%/7.lst
checkrange 6 calc *0x475 & 222 && configfile %Offset%/6.lst
checkrange 5 calc *0x475 & 222 && configfile %Offset%/5.lst
checkrange 4 calc *0x475 & 222 && configfile %Offset%/4.lst
checkrange 3 calc *0x475 & 222 && configfile %Offset%/3.lst
checkrange 2 calc *0x475 & 222 && configfile %Offset%/2.lst
#checkrange 1 calc *0x475 & 222 && configfile %Offset%/1.lst
boot
title
root
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] Back To Main Menu
find --set-root --devices=h /laddsbootusb.tag
clear
set Boot=%USBRoot%/grldr
if not exist %Boot% echo Can Not Find grldr on Root . Please Contact Superman! && pause --wait=10 Going Back To Main Menu...Hit Enter At AnyTime && configfile %USBRoot%/menu.lst
echo Loading grldr Menu From %Boot%
chainloader %Boot%
I have tested this on 3 machines plus. One that stood out was an old P3 machine with 128 ram. I install XP ISO using the method I am posting here with one boot from USB, installed slow but installed none the less. Tested on ranges of machines from P3 to Dual Core, memory ranging from 128mb to 4 gig and some machines had 1 internal hard drive and some had 4. All three versions install fine with this method.
I am also using winnt.sif for each version
;HOME
;
[Data]
AutoPartition="0"
MsDosInitiated="0"
UnattendedInstall ="Yes"
AutomaticUpdates="No"
[Unattended]
UnattendMode="FullUnattended"
OEMSkipEula ="YES"
WaitForReboot="No"
UnattendSwitch="Yes"
AutoActivate="No"
OemPreinstall="Yes"
DriverSigningPolicy="Ignore"
NonDriverSigningPolicy="Ignore"
[Display]
BitsPerPel=32
Xresolution=1024
Yresolution=768
AutoConfirm=1
[GuiUnattended]
DetachedProgram ="CMD.EXE"
Arguments="/Q /C FOR %I IN (C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO (IF EXIST %I:WINSETUPOEMOEMAUTO.EXE (START %I:WINSETUPOEMOEMAUTO.EXE) ELSE (FOR /D %J IN (%I:*) DO (IF EXIST %J%WINSETUPOEMOEMAUTO.EXE (START %J%WINSETUPOEMOEMAUTO.EXE))))"
AdminPassword=*
EncryptedAdminPassword="NO"
OEMSkipRegional=1
TimeZone=35
OemSkipWelcome=1
AutoLogon="Yes"
[UserData]
ProductKey=
FullName="Owner"
OrgName="Home"
ComputerName=*
[TapiLocation]
CountryCode=1
AreaCode=434
Dialing="Tone"
[Identification]
JoinWorkgroup="WORKGROUP"
[Networking]
InstallDefaultComponents="Yes"
and a DriverPack presetup.cmd. If I am busy and I am installing XP from ISO this is very useful as I don't need to have USB set to boot in Bios and I can just boot my default HD boot command with a timeout if the computer does boot to USB and my unattended install is not broken. My default menu.lst
##USB Menu AIO
timeout 15
color white/blue
write 0x8274 0x2001
title Boot From Hard Drive (Windows Vista/7 or Xp)nBoot Into Main OS Drive
checkrange 0x80 read 0x8280 && map () (hd1)
checkrange 0x80 read 0x8280 && map (hd1) ()
checkrange 0x80 read 0x8280 && map --hook
rootnoverify (hd0,0)
chainloader +1 || chainloader /ntldr
So now if you use this method, you can get rid of the second part install from your menu.lst as listed below
iftitle [find --set-root --devices=h /laddsbootusb.tag && call set USBRoot=%@root^%] XP Home Setup Part 2 from %USBRoot%nDec 11
password --md5 $1$A$hzYlFap3SLNNQ/tA7c3.S.
find --set-root --devices=h /laddsbootusb.tag
map --mem (md)0x800+4 (99)
# map (hd1) (hd0)
# map (hd0) (hd1)
checkrange 0x80 read 0x8280 && map (hd0) (hd1)
checkrange 0x80 read 0x8280 && map (hd1) (hd0)
map --hook
write (99) [FiraDisk]nStartOptions=cdrom,vmem=find:/XP/HOME.ISO;n0
root (hd0,0)
chainloader /ntldr
chainloader (hd0)+1
I have not got any errors about driver signing for Firadisk. USB Drive still has to be left in so install will finish but the key here is that a second USB boot IS NOT NEEDED.
Wanted to say thanks, cdob, ilko_t, WonKo the Sane and steve6375
Now you can use the ask, choose iso method in your menu.lst from here
http://www.rmprepusb.tk/ #43
This way you would only have one XP Install menu entry and set your variable according to your %Answer%
steve6375 was workng on something to write to the ISOimage.ini on the fly to change the ISO name accordingly (Is this still being worked on?)
Have not tested this on 64bit XP as to I have been loading XP for 10 years and I have never loaded a 64bit version and I have never seen a customer with a 64bit version.
To sum it up. I use complex menu entries and the BOOTWS method because I work on a range of computers but most computers have 1 internal hard drive so I am going to give you a simple menu.lst example below. You don't need the first boot to HD entry, ( I use it as a out of the room or doing something when computer reboots and I ain't looking kinda thing and forgot the PC was set to boot to USB)
timeout 15
color white/blue
write 0x8274 0x2001
title Boot From Hard Drive (Windows Vista/7 or Xp)nBoot Into Main OS Drive
checkrange 0x80 read 0x8280 && map () (hd1)
checkrange 0x80 read 0x8280 && map (hd1) ()
checkrange 0x80 read 0x8280 && map --hook
rootnoverify (hd0,0)
chainloader +1 || chainloader /ntldr
title
root
title XP Home Install From ISO With 1 USB BootnWorks With Low Ram also
find --set-root /whatereverhere
map --mem (md)0x800+4 (99)
checkrange 0x80 read 0x8280 && map (hd1) (hd0)
checkrange 0x80 read 0x8280 && map (hd0) (hd1)
set XPISO=HOME.ISO
set Image=HOME.IMA
map /%XPISO% (222)
map /%Image% (fd0)
map /%Image% (fd1)
map --hook
write (99) [FiraDisk]nStartOptions=cdrom,vmem=find:/%XPISO%;floppy,vmem=find:/%Image%;n0
rootnoverify (222)
chainloader
You can also map --mem the IMA file
map --mem /%Image% (fd0)
map --mem /%Image% (fd1)
And there you have it
UPDATETo clear this up. Nothing special has to be done to the XP ISO or added to the XP ISO. You can use a plain XP or a modded XP. All the files required to make this happen goes on the USB Stick or Drive.