Include 3rd party controller drivers using unattended install

1 June 2002 by Snakefoot | Comment » | Trackback Off
When installing Windows NT on a drive connected to a 3rd party controller, which Windows NT doesn't recognize, then one have to press F6 and supply drivers on a floppy unless wanting a BSOD with INACCESSIBLE_BOOT_DEVICE.

The easy way of creating a custom install cd with 3rd party drivers is to use the utility NLite (Requires .NET to use)

One can manually slipstream the driver on the installation cd, so Windows NT will automatically recognize the controller without having to press F6 and use a floppy disk:
  1. Create a directory $OEM$ under the i368 directory:

    <Drive>\i386\$OEM$

  2. Create a directory Textmode under the $OEM$ directory:

    <Drive>\i386\$OEM$\Textmode

  3. Copy only the needed drivers for the specific operating system to the Textmode directory. All the files should be placed in the Textmode directory, there should not be created any sub directories below the Textmode directory.

    Txtsetup.oem (Required)
    Driver.sys
    Driver.inf
    Driver.cat

  4. Edit the file <Drive>\i386\$OEM$\Textmode\TXTSETUP.OEM and find the [disks] section. Ex.:

    [disks]
    d1 = "Windows 2000 Driver Set v1.00", \w2kdsk1, \win2000\ultra160\

    Update the path (\win2000\ultra160) so it points to current directory (<Drive>\i386\$OEM$\Textmode) instead of referencing floppy drives or sub directories.

    If installing on a FAT / FAT32 partition then replace the path with period "."

    [disks]
    d1 = "Windows 2000 Driver Set v1.00", \w2kdsk1, .

    If installing on a NTFS partition then replace the path with slash "\"

    [disks]
    d1 = "Windows 2000 Driver Set v1.00", \w2kdsk1, \

    All references to other Operating Systems inside the TXTSETUP.OEM should be removed. Example of an Original and Modified image of the TXTSETUP.OEM for a Promise Fasttrak to install on NTFS in WinXP. Credits spc.org.nc
  5. Edit the file <Drive>\i386\Unattend.txt, and create a [MassStorageDrivers] section:

    [MassStorageDrivers]
    "string that identifies the controller in the [scsi] section of TXTSETUP.OEM" = "OEM".

    Ex. :

    [MassStorageDrivers]
    "Adaptec Ultra160 Family PCI SCSI Controller (29160, 39160, etc.)" = "OEM"

  6. If intending to use the onboard IDE controller during installation, Edit the file <Drive>\i386\Unattend.txt, and add this line to the [MassStorageDrivers] section:

    "IDE CD-ROM (ATAPI 1.2)/PCI IDE Controller" = "RETAIL"

    If the line is not added a BSOD will appear during install with INACCESSIBLE_BOOT_DEVICE. This error comes because the controller which the device(HDD/CD-ROM/DVD) is attached to is not recognized. Therefore requiring one to give it a driver for the controller.Ex. :

    [MassStorageDrivers]
    "Adaptec Ultra160 Family PCI SCSI Controller (29160, 39160, etc.)" = "OEM"
    "IDE CD-ROM (ATAPI 1.2)/PCI IDE Controller" = "RETAIL"

  7. Edit the file <Drive>\i386\Unattend.txt, and create a [OEMBootFiles] section. List the driver filenames copied to the Textmode folder:

    [OEMBootFiles]
    Driver.sys
    Driver.inf
    Driver.cat
    Txtsetup.oem

  8. Edit the file <Drive>\i386\Unattend.txt, and set the following option in the [Unattended] section:

    [Unattended]
    OemPreinstall=Yes
    OemSkipEula=Yes

  9. Launch the installation with the created unattend file:

    WINNT /U:<Drive>\i386\Unattend.txt /S:<Drive>\i386

    Note if doing the install from DOS then load SMARTDRV before launching the install, or else the initial file copying in textmode will be extremely slow.
Note one can rename the Unattend.txt as Winnt.sif and place it in the i386 directory, and it will use make the unattended install automatically. Another way is to place the Winnt.sif on a floppy disk and insert it before starting the install from the Install-CD.

Related Unattended Windows Guide

More Info MS KB Q288344
More Info MS KB Q155197
More Info MS KB Q166028
More Info MS KB Q254078
More Info MS KB Q255771
More Info MS KB Q314479
More Info MS KB Q816299

Credits jsifaq.com

Updated: 16 January 2010

Comments:

Comment by Aneil - 12 June 2003 @ 22:53 Reply

I need to Include 3rd party controller drivers using unattended install but I do not know the hardware I may end up getting. I have no problem building a library on the boot cd \i386\$OEM$.

I do not want to change the the txtsetup and the unattended file every time I go to a machine. I would like to just build the libary for the systems I have and be able to use the single cd build to install on all hardware that I have the SCSI drives for.

Hope someone can help.

Comment by snakefoot - 13 June 2003 @ 2:08 Reply

Aneil
I need to Include 3rd party controller drivers using unattended install but I do not know the hardware I may end up getting. I have no problem building a library on the boot cd \i386\$OEM$.

I do not want to change the the txtsetup and the unattended file every time I go to a machine. I would like to just build the libary for the systems I have and be able to use the single cd build to install on all hardware that I have the SCSI drives for.

I haven’t tried this myself but an idea could be to combine the TXTSETUP.OEM’s of the different SCSI drivers into a single one, so it contains the hardwareids of all the SCSI devices.

A similar thing can be seen in the tip where one adds an extra scsi driver to the Recovery Console.

Comment by Aneil - 13 June 2003 @ 7:11 Reply

Well, when are you going to try it? When you do let me know :-).

Thanks

Comment by sean - 4 December 2003 @ 12:18 Reply

i’ve tried doing this w/ FAsttrak MB lite 133 controller, but winxp cannot find the device at all!

i’ve tried so many times, wasted so many cds, if anyone could catch what i’m doing wrong, i’d appreciate it very much!

here’s my txtsetup.oem file located in cd:\i386\$OEM$\textmode

[Disks]
d1 = “Promise FastTrak Series Driver Diskette”,\fasttrak,\

[Defaults]
scsi = FastTrak133_xp2

[scsi]
FastTrak133_xp2 = “WinXP Promise MBFastTrak133 Lite ™ Controller”, FastTrak

[Files.scsi.FastTrak133_xp2]
driver = d1, Fasttrak.sys, Fasttrak
inf = d1, Fasttrak.inf

[HardwareIds.scsi.FastTrak133_xp2]
id=”PCI\VEN_105A&DEV_5275″, “Fasttrak”

[Config.Fasttrak]
value = “”, Tag, REG_DWORD, 1

and here’s part of my UNATTEND.txt file that i’ve modified, located in cd:\i386\

[Unattended]
Unattendmode = FullUnattended
TargetPath = *
Filesystem = LeaveAlone
OemPreinstall=Yes
OemSkipEula=Yes

[OEMBootFiles]
FASTTRAK.sys
FASTTRAK.inf
FASTTRAK.cat
Txtsetup.oem

[MassStorageDrivers]
“WinXP Promise MBFastTrak133 Lite ™ Controller” = “OEM”
“IDE CD-ROM (ATAPI 1.2)/PCI IDE Controller” = “RETAIL”

and last, here’s part of my winnt.sif file

well.. i didn’t modify any of parts in this file.. but here’s part

[Unattended]
UnattendMode=FullUnattended
OemSkipEula=Yes
OemPreinstall=Yes
TargetPath=\WINDOWS
DriverSigningPolicy=Ignore
OemPnPDriversPath = “driver\intelCSA_LAN”

can anyone see what i’m doing wrong?? .. i really can’t tell why it’s not recognizing..

lmk tia!!

Comment by snakefoot - 5 December 2003 @ 2:23 Reply

sean
i’ve tried so many times, wasted so many cds, if anyone could catch what i’m doing wrong, i’d appreciate it very much!

I guess you have tried to use F6 and a floppy disk, just to make sure that WinXP is able to detect your Fasttrak133 Controller in a normal install.

Remember that one have to start an unattended installation, unless overwritting the winnt.sif with the contents of unattend.txt.

I see you have chosen MBFastTrak133 (RAID-1 Mirroring), are you sure you are not using SBFastTrak133 (RAID-0 Stripping) ?

Also if you have a HDD attached to your Standard IDE Controller, then you can place the WinXP Install Files (With your unattend file) and do the install from there while testing. You could also consider getting hold of a CD-RW.

Comment by BlahBlah - 9 June 2004 @ 17:22 Reply

the setup as posted on the board didnt work for me

\i386\$oem$\$1\$win_nt$.~ls\

i suggest trying to use this line somewhere in the setup
im gonna try this tomorow (its late now)

Leave a comment


NB! Use the Forum for computer help and off-topic questions.

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>