Slipstreamed Bootable Install CD w/3rd Party Drivers

Z

zeb7k

How To Create a Slipstreamed Bootable W2k Install CD w/3rd Party
Storage Drivers

After much prayer and fasting I was able to create a W2K install CD
with
integrated SP4 and Promise Fasttrak 376 drivers for my WD360 Raptor
SATA
hard drive on an Asus A7V8X. The CD will actually boot, recognize the
SATA drive and install W2K without having to F6 to a floppy drive.

(Please tell me, what is this "floppy drive" you speak of?)

This seems like a special case but I believe it could be followed with
success in many other situations. No guarantees.

When I scoured the web for how to accomplish this I found two
approaches.
Only when I combined the two did it finally work. See the following
articles for what I'm talking about. A thanks to Oli and George.

http://www.willowhayes.co.uk/windows2000/index.htm

message on google groups:
group: microsoft.public.windowsxp.setup_deployment
subject: Edit txtsetup.sif?
from: George S Ellis

The following steps are exactly what I did.

1. Resources needed.
a. A working system with EZCD Creator 6 Basic installed. The system
must have a BIOS that allows booting from CD's (El Torito
support).

If you don't have EZCD Creator 6 installed you need CD software
capable of writing a CD with these specs:

load segment: 07C0
number of loaded sectors: 4
no emulation

I read somewhere that if you're using Nero these additional
parameters
need to be in effect.

iso level 2, mode 1
character set: iso 9660
joliet (checked)
iso exceptions:
allow pathdepth of more than 8 directories
allow more than 255 characters in path
do not add the ";1" ISO file version extension

b. A W2k installation CD. (My CD has SP1 integrated from the
factory.)
c. About 250M of temp disk space for the distribution. About 160M
of disk
space for the expanded service pack. More if you want to add
extra
files of your own to the CD.
d. W2K service pack 4.
e. One blank CD-R or CD-RW disk. (CD-RW recommended until you get
it
right!)
f. The 3rd party driver files. (If they are zipped you'll need
a way to unzip them.) The ones I'm using here are for the
Promise Fasttrack 376 Controller, which does RAID and SATA.
g. Any other files you wish to include on the left over free space
on the CD. There should be at least 400M of free space on a 74
min CDR
that you can do what you want with.
h. A W2K boot sector. (w2kboot.bin) The one I'm using is free from
www.bink.nu, but I think there may be more around. This is key
to
making your new CD bootable.

2. Copy the entire \I386 from the W2K install CD to a staging area on
a partition with enough space. (For this example I'm using T:\I386)
Copy all the files in the root directory of the CD to T:\.
Copy the entire \Support directory as well. (I like to have the
\Support
directory although it's not necessary for solving our problem here.)

3. Extract the files from the service pack.

w2ksp4.exe -x

W2ksp4.exe is the name I gave the service pack file I downloaded
from
Microsoft. The above command will prompt for a work directory. For
this
example use X:\SP4.

Slipstream the distribution directory with this command:

X:\SP4\i386\update\update -s:t:\

Delete the T:\I386\win9xmig, T:\I386\win9xupg T:\I386\winntupg, and
T:\LANG
directories. (I did this out of personal preference, but again,
keeping
them probably won't result in failure.)

X:\SP4 can be deleted now to free up disk space, but
better to keep it around until success.

4. Create a directory structure on T:

T:\$OEM$\$$\ExtraDrivers

Your 3rd party driver package should look something like mine:

txtsetup.oem
fasttx2k.cat
fasttx2k.inf
fasttx2k.sys
fasttx2k

Copy all of the above files to T:\$OEM$\$$\ExtraDrivers. Copy
the
fasttx2k.sys to a second location as well-- T:\I386.

5. This is my WINNT.SIF in its entirety. This should be put in
T:\I386. It's OK to leave UNATTEND.TXT in T:\I386 as it is.

; WINNT.SIF - This file is used similarly to UNATTEND.TXT. When
; this file is placed in the \I386 directory of the CDROM and the
system
; is booted from CDROM, the installation routines take their answers
from
; here. I believe UNATTEND.TXT is used only when the install of W2K
is
; started from a command line. For an explanation of each of the
following
; settings and more see UNATTEND.DOC in the DEPLOY.CAB of in
; \I386\SUPPORT\TOOLS of your W2K CDROM.

[Unattended]
ExtendOEMPartition = 0
DriverSigningPolicy = Ignore
Filesystem = LeaveAlone
NTUpgrade = No
OemPnPDriversPath = "Mama\ExtraDrivers"
OemPreinstall = Yes
OemSkipEULA = Yes
Repartition = No
TargetPath = Mama
Unattendmode = ReadOnly
Win9xUpgrade = No

[GuiUnattended]
AutoLogon = Yes
AutoLogonCount = 3
OEMSkipRegional=1
OEMSkipWelcome=1
TimeZone = "035"

[UserData]
FullName = "Harold Z Hatfield"
OrgName = "Bovine Enema Specialties, Inc"

[Display]
BitsPerPel = 16
VRefresh = 70
XResolution = 800
YResolution = 600

[TapiLocation]
AreaCode = "828"
CountryCode = 1
Dialing = Tone

[SystemFileProtection]
SFCShowProgress = 1

[Components]
freecell = off
media_clips = off
minesweeper = off
mswordpad = off
pinball = off
solitaire = off

[Data]
AutoPartition = 0
MsDosInitiated = 0
UnattednedInstall = Yes
; UseBIOSToBoot = 1

[Networking]
InstallDefaultComponents = YES

[Identification]
JoinWorkgroup = Workgroup

6. Here are all of the modifications to T:\I386\TXTSETUP.SIF.

[SourceDisksFiles]
: : :
aic78u2.sys = 1,,,,,,3_,4,1
aic78xx.sys = 1,,,,,,3_,4,1
fasttx2k.sys = 1,,,,,,3_,4,1
aleabanr.gif = 1,,,,,,,,3,3
: : :
: : :

[HardwareIdsDatabase]
: : :
PCI\VEN_9004&DEV_3860 = "aic78xx"
PCI\VEN_105A&DEV_3319 = "fasttx2k"
PCI\VEN_105A&DEV_3376 = "fasttx2k"
PCI\VEN_105A&DEV_6629 = "fasttx2k"
PCI\VEN_105A&DEV_3371 = "fasttx2k"
PCI\VEN_1022&DEV_2020 = "amsint"
: : :
: : :

[Map.SCSI]
: : :
(No modifications.)
: : :
: : :

[SCSI.Load]
: : :
aic78xx = aic78xx.sys,4
fasttx2k = fasttx2k.sys,4
dac960nt = dac960nt.sys,4
: : :
: : :

[SCSI]
: : :
aic78xx = "Adaptec AHA-294X/AHA-394X/AIC-78XX SCSI Controller"
fasttx2k = "Promise FastTrak 376 Controller"
aic78u2 = "Adaptec AHA-294XU2/AIC-7890 SCSI Controller"
: : :
: : :

(End of TXTSETUP.INF)

The tags or whatever they are under [HardwareIDsDatabase] can be
deduced from your driver package. See the .INF and .OEM files
that were zipped with your driver and just follow the pattern.

7. Master the CD. Assuming you're using EZCDC 6...

a. Start "Disc Creator Classic".
b. File/New Project/Bootable Disc.
c. Select "No Emulation". Click advanced. Set the load segment to
0x07C0 if it is not already. Set the sector count to 4. Browse
for the boot sector file described in step 0h (w2kboot.bin).
A BOOTCAT.BIN file will be added automatically to the project.
Not sure what this is but leave it there.
d. Add the T:\I386, T:\SUPPORT directories, any W2K files in the
root of T: including all of the CDROM*.* files. (Although I
didn't do the following, you should be able to: add any extra
files of
your choosing to the CD --up to the allowable space.)
e. Specify a disk label, else you get an ugly EZCDC generated serial

number.
f. File/Record Disk.

8. Enter your BIOS setup and set the CD drive as the 1st in the boot
order, the target hard drive as 2nd in the boot order. Restart your
machine, boot from the CDROM, and the install should begin. Watch
for the name of the new driver in the status line of the blue
install
screen. Seeing it is good indication that it has been loaded and
that it will be recognized in the next step.

9. The install will soon present a partition table asking you where to
install Windows. On my system I have to scroll down because it
detected
the many partitions on my IDE drive. Follow the directions to
create and install to a partition on the SATA drive.

10.Windows boots a few more times during the install. At one point
it will ask for a machine name and admin password. At another
you have to enter the serial number of the CD. The real moment
of truth comes at the final boot into the new system. This is the
boot right after you see the progress bars for "saving settings...",

"cleaning up temp files..." etc. Many times here I received a BSOD
with the dreaded "INACCESSIBLE_BOOT_DEVICE" message. If this
happens recheck what you did for this whole procedure.

11. Keep the modifications to the setup files someplace safe. You
don't
want to go thru this ordeal again.


Notes:

Other methods I found on Usenet to accomplish this goal described
modifications to any or all of HIVESYS.INF, DRVINDEX.INF,
UNATTEND.TXT,
DOSNET.INF. These were very time consuming and were the subject of
much experimentation on my part, but in the end, I found I didn't
need
to touch any of these. This is not to say that they didn't really
work for that particular person/hardware/software.

One approach suggested to mod only the WINNT.SIF, but I found that
without TXTSETUP.SIF, my drive would fail to be recognized from the
very
beginning.

With the method I presented here, I tried to trim out as much fat
as I could. However, there are all sorts of settings in WINNT.SIF
that are not relevant to this problem. I left them in so you could
get a full real-world example. There are several settings you could

probably add to make installation even more hands-off, and many
settings
that are just my personal preference.

Warning: The WINNT.SIF specifies MAMA as the "WINDIR" on the target
drive.
I've run for years using a dir other than WINNT without problem, but
if you
want to be conventional change the TargetPath to WINNT, then change
OEMPnPDriversPath accordingly.

My CDRW drive is a run-of-the-mill IDE Hitachi/LG CDRW. My
mainboard is
an Asus A7V8X.

Sometimes driver loading order makes a difference. You can see the
driver loading order if you edit your boot.ini to contain the /sos
option.
In my particular case fasttx2k.sys loads just after atapi.sys but
just
before scsiport.sys.

PLEASE READ. As a late note, I've found out that the attack
described
here does not create a CD capable of running a W2K install from a
command
prompt. In other words, if you had the CD in the drive of a working

system and tried to install from the command prompt with the winnt
or winnt32 commands, it would fail. This functionality is not
important
to me so I didn't pursue a solution. It complained it was missing
fasttx2k.sys.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top