;***********************************************************************
; Windows NT OEMSETUP.INF for
;
; Intel EtherExpress PRO/100+ PCI Adapter
;
; Copyright© 1994-1997 Intel Corporation. All rights reserved.
;***********************************************************************
;
; ***************** Version 29 *****************
;
[Identification]
OptionType = NetAdapter
[PlatformsSupported]
ISA
EISA
MCA
PCI
"Jazz-Internal Bus"
[LanguagesSupported]
ENG
[Options]
E100BEXP
E100BPCI
E10PPCI
E100BRWA
[OptionsTextENG]
E100BEXP = "Intel EtherExpress PRO Adapter"
[FileConstants]
NDIS3Name = "E100B"
NDIS4Name = "E100BNT"
ExeName = "PROSET"
Sp1Name = "EP100DG"
Sp3Name = "SPDO3DG"
KddName = "PROKDD"
ProdHelp = "E100SET"
GenHelp = "557SET"
DllName = "EPRO100"
AftName = "IAFT"
Manufacturer = "Intel"
ProductSoftwareName = "E100B"
ProductSoftwareTitle = "Intel EtherExpress PRO Adapter"
ProductSoftwareImagePathNDIS3 = "%SystemRoot%\System32\drivers\e100b.sys"
ProductSoftwareImagePathNDIS4 = "%SystemRoot%\System32\drivers\e100bnt.sys"
NetRuleSoftwareType = "E100BSys ndisDriver E100BDriver"
NetRuleSoftwareBindForm = """E100BSys"" yes no container"
NetRuleSoftwareClass = {"E100BDriver basic"}
NetRuleSoftwareBindable = {"E100BDriver E100BAdapter non exclusive 100"}
ImagePathNDIS3 = "\SystemRoot\System32\drivers\e100b.sys"
ImagePathNDIS4 = "\SystemRoot\System32\drivers\e100bnt.sys"
Configure = "EPRO100_Configure"
Detect = "EPRO100_Detect"
Diagnose = "EPRO100_Diagnose"
DLL = "EPRO100.DLL"
RegistryKey = "EPRO100_GetRegistryKey"
Summary = "EPRO100_Resource_Summary"
AdapterDescription = "EPRO100_GetAdapterDescription"
InstallAnyway = "EPRO100_InstallAnyway"
DeviceExist = "EPRO100_DeviceExist"
GetExtendedFeatures = "EPRO100_GetExtendedFeatures"
Adapter = "Intel EtherExpress PRO Adapter"
Help = "E100SET.HLP"
ExeKeyName = $(!NTN_ServiceBase)"\PROSet"
ExeAdapterName = "EPRO100"
ExeParameters = "Parameters"
ProductHardwareName = "E100B"
ProductHardwareTitle = "Intel EtherExpress PRO Adapter"
ProductHardwareDescription = "Intel EtherExpress PRO Adapter"
NetRuleHardwareType = "E100B E100BAdapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass = {"E100BAdapter basic"}
ProductHardwareE100BEXPTitle = "Intel EtherExpress PRO Adapter"
ProductHardwareE100BEXPDescription = "Intel EtherExpress PRO Adapter"
FuncTitle = "Intel EtherExpress PRO Adapter Setup"
ProdSoftwareDescription = "Intel EtherExpress PRO Adapter Driver"
ProdHardwareDescription = $(ProductHardwareTitle)
Disk1 = "Intel EtherExpress PRO Adapter Driver Disk"
Path = "NT\"
BusNumber = "0,7,BusNumber,0,2,0,0,16,1"
BusType = "0,7,BusType,0,2,5,2,5,1"
BusTypeLocal = "0,7,BusTypeLocal,0,2,5,2,5,1"
Eid = "0,7,Eid,0,2,0,0,4294967295,1"
Enhanced = "1,4,Enhanced Mode,0,1,On,Off,On"
Fifo = "0,3,Fifo Depth,0,2,12,0,15,1"
ForceDpx = "1,4,Duplex Mode,0,1,Auto,Auto,Half,Full"
MediaType = "0,7,MediaType,0,2,1,1,1,1"
MsPciScan = "0,4,MsPciScan,0,2,1,0,1,1"
NumCoalesce = "1,7,Coalesce Buffers,0,2,8,1,32,1"
NumRfd = "1,7,Receive Buffers,0,2,32,1,1024,1"
NumTbd = "0,3,Transmit Buffer Descriptors,0,2,64,1,65535,1"
NumTbdPerTcb = "0,4,Transmit Buffers per Frame,0,2,12,1,16,1"
NumTcb = "1,7,Transmit Control Blocks,0,2,16,1,80,1"
Off = "1,3,Off Timer,0,2,2,1,65535,1"
On = "1,3,On Timer,0,2,32768,1,65535,1"
RxDmaCount = "0,4,RxDmaCount,0,2,0,0,63,1"
RxFifo = "0,4,Receive Fifo Depth,0,2,8,0,15,1"
SlotNumber = "0,7,SlotNumber,0,2,0,0,16,1"
Speed = "1,7,Network Speed,0,4,Auto,Auto,0,10Mbps,10,100Mbps,100"
Threshold = "0,7,Transmit Threshold,0,2,16,0,200,1"
TxDmaCount = "0,4,TxDmaCount,0,2,0,0,63,1"
TxFifo = "0,4,Transmit Fifo Depth,0,2,8,0,15,1"
UnderrunRetry = "0,4,UnderrunRetry,0,2,1,0,3,1"
PerfOptims = "0,4,PerfOptims,0,2,0,0,65535,1"
UcodeSW = "0,7,UcodeSW,0,2,1,0,1,1"
Adaptive_IFS = "1,7,Adaptive Inter-Frame Spacing,0,2,1,0,255,1"
Txmitwait = "0,7,Txmitwait,0,2,1,0,255,1"
OLD_1BYTE = 139
OLD_2BYTE = 98
NETCARD_ID = 25227
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
UtilityInf = "UTILITY.INF"
ParamInf = "NCPARAM.INF"
subroutineinf = "SUBROUTN.INF"
SoftwareType = "driver"
Exit_Code = 0
NetRuleSoftwareUse = $(SoftwareType)
NetEventDLL = "%SystemRoot%\System32\netevent.dll"
IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
ProductMajorVersion = "3"
ProductMinorVersion = "0"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
ATeamSoftwareType = "driver"
ProductATeamMajorVersion = "4"
ProductATeamMinorVersion = "0"
ProductATeamSoftwareTitle = "Intel Adapter Fault Tolerance NDIS Miniport Driver"
ProductATeamSoftwareDescription = "Intel Adapter Fault Tolerance NDIS Miniport Driver Description"
ProductATeamTransportTitle = "Intel Adapter Fault Tolerance Module"
ProductATeamTransportDescription = "A software module that provides the Intel Adapter Fault Tolerance capability to your EtherExpress adapter."
ProductATeamHardwareTitle = "Intel Adapter Fault Tolerance Team"
ProductATeamHardwareDescription = "A team of Intel EtherExpress PRO/100+ Adapters working together to provide high availability, fail safe network operation."
ProductATeamSoftwareImagePath = "\SystemRoot\System32\drivers\iaft.sys"
NetRuleATeamSoftwareReview = 1
ProductATeamSoftwareName = "iAFT"
NetRuleATeamSoftwareType = "iaftSys intermediateDriver"
NetRuleATeamSoftwareUse = $(SoftwareType)" none none"
NetRuleATeamSoftwareBindForm = """iaftSys"" yes no container"
NetRuleATeamSoftwareClass = { +
"intermediateDriver ndisDriver yes" +
}
NetRuleATeamSoftwareBindable = { +
"intermediateDriver virtualAdapter non exclusive 100", +
}
ProductATeamTransportName = "iAFTProtocol"
NetRuleATeamTransportType = "multispan intermediateTransport"
NetRuleATeamTransportUse = "transport none none"
NetRuleATeamTransportBindForm = "iAFTProtocol yes yes container"
NetRuleATeamTransportClass = { +
"intermediateTransport basic yes", +
}
NetRuleATeamTransportBindable = { +
"intermediateTransport ndisDriver non non 100", +
}
ProductATeamHardwareName = "iAFT"
NetRuleATeamHardwareType = "iAFT virtualAdapter"
NetRuleATeamHardwareClass = {"virtualAdapter basic"}
NetRuleATeamHardwareBindForm = " yes yes container"
ATeamTransportKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductATeamTransportName)"\CurrentVersion"
ATeamTransportParamKeyName = $(!NTN_ServiceBase)"\"$(ProductATeamTransportName)"\Parameters"
ProductATeamKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductATeamSoftwareName)"\CurrentVersion"
PROSetKeyName = $(!NTN_ServiceBase)"\PROSet"
PROSetAdapterName = "EPRO100"
PROSetParameters = "Parameters"
EE16_1BYTE = 139
EE16_2BYTE = 98
NETCARD_ID = 25227
[Files-Inf]
1, oemsetup.inf, SIZE=50000, RENAME=$(!UG_Filename)
[Files-N3NDIS3]
1, $(Path)$(NDIS3Name).SY_, SIZE=50000, RENAME=$(NDIS3Name).SYS
[Files-N3NDIS4]
1, $(Path)$(NDIS4Name).SY_, SIZE=50000, RENAME=$(NDIS4Name).SYS
1, $(Path)$(AftName).SY_, SIZE=50000, RENAME=$(AftName).SYS
[Files-Exe]
1, $(Path)$(ExeName).EX_, SIZE=50000, RENAME=$(ExeName).EXE
1, $(Path)$(ExeName).CP_, SIZE=50000, RENAME=$(ExeName).CPL
1, $(Path)$(Sp1Name).DL_, SIZE=50000, RENAME=$(Sp1Name).DLL
1, $(Path)$(ProdHelp).HL_, SIZE=50000, RENAME=$(ProdHelp).HLP
1, $(Path)$(GenHelp).HL_, SIZE=50000, RENAME=$(GenHelp).HLP
1, $(Path)$(DllName).DL_, SIZE=50000, RENAME=$(DllName).DLL
[Files-Exe-Drivers]
1, $(Path)$(Sp3Name).SY_, SIZE=50000, RENAME=$(Sp3Name).SYS
1, $(Path)$(KddName).SY_, SIZE=50000, RENAME=$(KddName).SYS
[ProductType]
STF_PRODUCT = Winnt
STF_PLATFORM = I386
[GeneralConstants]
from = ""
to = ""
ExitCodeOk = 0
ExitCodeCancel = 1
ExitCodeFatal = 2
KeyNull = ""
MAXIMUM_ALLOWED = 33554432
RegistryErrorIndex = NO_ERROR
KeyProduct = ""
KeyParameters = ""
TRUE = 1
FALSE = 0
NoTitle = 0
ExitState = "Active"
OldVersionExisted = $(FALSE)
DriverPath = $(!STF_NTPATH)\drivers
[FileConstantsENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cancel"
ProCancelMsg = "Windows NT Networking is not correctly installed. "+
"Are you sure you want to cancel copying files?"
ProCancelCap = "Network Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
FunctionTitle = $(FuncTitle)
ProductSoftwareDescription = $(ProdSoftwareDescription)
ProductHardwareDescription = $(ProdHardwareDescription)
ConnectionList = {}
ConnectionValues = {}
[date]
Now = {} ? $(!LIBHANDLE) GetSystemDate
[Source Media Descriptions]
1 = $(Disk1) , TAGFILE = d100disk
[Signature]
FileType = MICROSOFT_DRVLIB_FILE
[GetSignature]
read-syms Signature
return $(FileType)
[Identify]
read-syms Identification
set Status = STATUS_SUCCESSFUL
set Identifier = $(OptionType)
set Media = #("Source Media Descriptions", 1, 1)
Return $(Status) $(Identifier) $(Media)
[ReturnOptions]
set Status = STATUS_FAILED
set OptionList = {}
set OptionTextList = {}
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) in $(LanguageList)
ifstr(i) $($1) == ""
goto returnoptions
endif
set PlatformList = ^(PlatformsSupported, 1)
Ifcontains(i) $($1) in $(PlatformList)
goto returnoptions
else
set Status = STATUS_NOTSUPPORTED
goto finish_ReturnOptions
endif
else
set Status = STATUS_NOLANGUAGE
goto finish_ReturnOptions
endif
returnoptions = +
set OptionList = ^(Options, 1)
set OptionTextList = ^(OptionsText$($0), 1)
set Status = STATUS_SUCCESSFUL
finish_ReturnOptions = +
Return $(Status) $(OptionList) $(OptionTextList)
[InstallOption]
set Status = STATUS_FAILED
set Option = $($1)
set SrcDir = $($2)
set AddCopy = $($3)
set DoCopy = $($4)
set DoConfig = $($5)
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) NOT-IN $(LanguageList)
Return STATUS_NOLANGUAGE
endif
set-subst LF = "\n"
read-syms GeneralConstants
read-syms FileConstants
ifstr(i) $(!NTN_Origination) == "NCPA"
set Continue = "OK"
endif
read-syms FileConstants$(!STF_LANGUAGE)
detect date
set-title $(FunctionTitle)
set CurrentVersionValue = ""
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows NT\CurrentVersion" $(!REG_KEY_READ) KeyWinNT
ifstr(i) $(KeyWinNT) != ""
GetRegValue $(KeyWinNT) "CurrentVersion" CurrentVersionValue
CloseRegKey $(KeyWinNT)
endif
set m_WinNTVersion = *($(CurrentVersionValue),4)
set to = Begin
set from = Begin
ifcontains(i) $(m_WinNTVersion) in {"3.50", "3.51"}
Shell $(UtilityInf), GetBusTypeNum
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
Set PlatformList = ^(PlatformsSupported, 1)
Set MachineType = *($(PlatformList), $($R1))
else
Set MachineType = $(!STF_BUSTYPE)
endif
set CommonStatus = STATUS_SUCCESSFUL
EndWait
Begin = +
Set ActivateDetection = FALSE
Ifstr(i) $(!NTN_InstallMode) == deinstall
set StartLabel = removeadapter
else-Ifstr(i) $(!NTN_InstallMode) == Update
set StartLabel = UpgradeSoftware
else-Ifstr(i) $(!NTN_InstallMode) == bind
set StartLabel = bindingadapter
else-Ifstr(i) $(!NTN_InstallMode) == configure
set ActivateDetection = TRUE
set StartLabel = configureadapter
ifstr(i) $(MachineType) == "MCA"
Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
else
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_HARDWARE
endif
set Error = $($R0)
set from = end
set to = end
goto nonfatalinfo
endif
Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
set from = end
set to = end
goto nonfatalinfo
endif
else
set ActivateDetection = TRUE
set StartLabel = installadapter
set OEM_ABANDON_OPTIONS = {}
set OEM_ABANDON_SOFTWARE = FALSE
set OEM_ABANDON_ON = TRUE
endif
Set DetectedCard = FALSE
Ifstr(i) $(ActivateDetection) != TRUE
Goto $(StartLabel)
Endif
ifstr(i) $(MachineType) == "MCA"
goto CheckForMCA
endif
set IRQValue = *($(IRQList), 2)
set IOAddrValue = *($(IOAddrList), 1)
set IOReadyValue = *($(IOReadyList), 2)
set TransceiverValue = *($(TransceiverList), 4)
Ifstr(i) $(!STF_NCDETECT) == YES
Ifstr(i) $(!STF_NCOPTION) == $(Option)
Set DetectedCard = TRUE
Endif
Endif
Shell "" DebugConfiguration "After parameter querying"
Set from = $(fatal)
Set to = $(fatal)
Goto $(StartLabel)
installadapter = +
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
CloseRegKey $(KeyProduct)
ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
$(ProductVersion)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
goto end
else
Shell $(UtilityInf), CardExistedDlg
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) != "OK"
goto end
endif
set OldVersionExisted = $(TRUE)
endif
endif
ifcontains(i) $(m_WinNTVersion) in {"3.50", "3.51"}
Ifstr(i) $(DetectedCard) != TRUE
Goto adaptersetup
Endif
else
Goto adaptersetup
end
CheckForMCA = +
StartWait
Shell $(UtilityInf), MCAFindBus, $(EE16_1BYTE), $(EE16_2BYTE)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto CheckForISA
endif
ifstr $($R0) != "NO_ERROR"
goto CheckForISA
endif
ifstr(i) $($R1) == {}
set Error = $(CANNOT_FIND_ANY_CARD)
set CommonStatus = USER_CANCEL
set from = "end"
goto nonfatal
endif
set AdapterList = $($R1)
goto skipoptions
CheckForISA = +
Shell $(ParamInf) Param_QueryCard $(!STF_NCDETCARD)
EndWait
Ifstr(i) $($R0) != STATUS_SUCCESSFUL
Goto adaptersetup
Endif
Set DetectedParams = $($R1)
Shell $(ParamInf) Param_SetDefaults $(DetectedParams)
goto adaptersetup
configureadapter = +
ifstr(i) $(Option) == "ATEAMADAPTER"
Ifstr $(KeyProduct) == $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
goto fatalregistry
Endif
Endif
GetRegValue $(KeyProduct),"ServiceName", AdapterServiceKey
set AdapterServiceKey = *($(AdapterServiceKey),4)
LoadLibrary "Intel EtherExpress PRO Adapter Driver Disk" $(!STF_WINDOWSSYSPATH)\epro100.dll DllLibHandle
LibraryProcedure DllExitStr $(DllLibHandle) AftCM
FreeLibrary $(DllLibHandle)
ifstr(i) $(DllExitStr) == "nochange"
CloseRegKey $(AdapterServiceKey)
CloseRegKey $(KeyProduct)
set CommonStatus = STATUS_NO_EFFECT
goto successful
endif
Ifstr $(KeyProduct) == $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Debug-Output "Cannot find component product key"
goto fatalregistry
Endif
Endif
Debug-Output "INF: Shelling to FindService"
Shell $(UtilityInf) FindService, $(KeyProduct)
Ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "INF: FindService shell failure"
Goto ShellCodeError
Endif
Ifstr(i) $($R0) != NO_ERROR
Debug-Output "INF: FindService Shell error: "$($R0)
Goto fatalregistry
endif
Set KeyParameters = $($R2)
CloseRegKey $($R1)
Ifstr $(KeyParameters) == $(KeyNull)
set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Debug-Output "Cannot find component service"
goto fatalregistry
endif
set OldVersionExisted = $(TRUE)
set ValueName = ""
set ValueData = ""
set ValueStr = ""
set ValueList = {}
EnumRegValue $(KeyParameters) ValueList
ForListDo $(ValueList)
set ValueItem = $($)
set ValueName = *($(ValueItem),1)
set ValueData = *($(ValueItem),4)
Ifstr(i) $(ValueName) == "CheckTime"
set CheckTimeValue = $(ValueData)
else-ifstr(i) $(ValueName) == "DisableTime"
set DisableTimeValue = $(ValueData)
else-ifstr(i) $(ValueName) == "IdleTime"
set IdleTimeValue = $(ValueData)
else-ifstr(i) $(ValueName) == "ProbeTime"
set ProbeTimeValue = $(ValueData)
endif
EndForListDo
Shell $(ParamInf) Param_SaveValues
Set CurrParamSettings = $($R0)
goto writeparameters
endif
Ifstr $(KeyProduct) == $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
goto fatalregistry
Endif
Endif
GetRegValue $(KeyProduct),"ServiceName", AdapterServiceKey
set AdapterServiceKey = *($(AdapterServiceKey),4)
Shell $(UtilityInf) FindService, $(KeyProduct)
Ifint $($ShellCode) != $(!SHELL_CODE_OK)
Goto ShellCodeError
Endif
Ifstr(i) $($R0) != NO_ERROR
Goto fatalregistry
endif
Set KeyParameters = $($R2)
CloseRegKey $($R1)
Ifstr $(KeyParameters) == $(KeyNull)
set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
goto fatalregistry
endif
set OldVersionExisted = $(TRUE)
set ValueName = ""
set ValueData = ""
set ValueStr = ""
set ValueList = {}
ifstr(i) $(Option) == "E100BEXP"
goto RunProset
goto successful
RunProset = +
RunProgram ExitCode "" "" $(!STF_WINDOWSSYSPATH)\$(ExeName).EXE $(AdapterServiceKey)
Ifstr(i) $(!NTN_InstallMode) != configure
ifint $(ExitCode) == 20
set Option = "ATEAMADAPTER"
goto install_ateam
endif
ifint $(ExitCode) >= 2
set CommonStatus = STATUS_USERCANCEL
goto abandon
endif
else
ifint $(ExitCode) == 0
set CommonStatus = STATUS_NO_EFFECT
endif
ifint $(ExitCode) == 2
set CommonStatus = STATUS_NO_EFFECT
endif
ifint $(ExitCode) == 20
set Option = "ATEAMADAPTER"
goto install_ateam
endif
endif
goto successful
adaptersetup = +
Shell "" DebugConfiguration "before displaying dialog"
Shell "" DebugConfiguration "After List Translation"
Shell $(ParamInf) Param_ParameterConfidence
Ifstr(i) $($R0) != STATUS_SUCCESSFUL
Goto adapteroptions
Endif
Ifstr(i) $(DetectedCard) == TRUE
Ifstr(i) $(!STF_INSTALL_MODE) != CUSTOM
Goto adapterverify
Endif
Endif
adapteroptions = +
Set from = adapteroptions
adapterverify = +
ifcontains(i) $(m_WinNTVersion) not-in {"3.50", "3.51"}
Goto skipoptions
endif
Shell "" DebugConfiguration "after running dialog"
Ifstr(i) $(DetectedCard) != TRUE
Goto skipoptions
Endif
Shell $(ParamInf) Param_VerifyCard $(!STF_NCDETCARD)
Ifstr(i) $($R0) == STATUS_SUCCESSFUL
Goto skipoptions
Endif
Set from = adapteroptions
Set to = skipoptions
Shell $(UtilityInf),RegistryErrorString,VERIFY_WARNING
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
Goto Warning
install_ateam = +
ifcontains(i) $(m_WinNTVersion) in {"3.50", "3.51"}
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" "This feature requires Windows NT 4.0 and higher."
goto end
endif
set CheckTimeValue = 1000
set DisableTimeValue = 8000
set IdleTimeValue = 2000
set ProbeTimeValue = 1000
OpenRegKey $(!REG_H_LOCAL) "" $(ProductATeamKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
CloseRegKey $(KeyProduct)
Debug-Output "OEMSETUP.INF: AddSoftwareComponent: ATEAM Miniport"
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), $(ProductATeamSoftwareName), $(ProductATeamSoftwareName), +
$(ProductATeamSoftwareTitle), $(STF_CONTEXTINFNAME), $(ProductATeamSoftwareImagePath), +
"kernel", "NDIS", {}, "", $(NetEventDLL)
Set OEM_ABANDON_SOFTWARE = TRUE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
set KeyProduct = $($R1)
Set SoftNetRulesKey = $($R2)
CloseRegKey $($R3)
CloseRegKey $($R4)
CloseRegKey $($R5)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Registry error: add software components"
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
goto fatalregistry
endif
set NewValueList = { {SoftwareType, $(NoTitle), $(!REG_VT_SZ), $(ATeamSoftwareType)},+
{MajorVersion, $(NoTitle), $(!REG_VT_DWORD), $(ProductATeamMajorVersion)},+
{MinorVersion, $(NoTitle), $(!REG_VT_DWORD), $(ProductATeamMinorVersion)},+
{Title, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamSoftwareTitle)},+
{Description, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamSoftwareDescription)},+
{ServiceName, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamSoftwareName)},+
{InstallDate, $(NoTitle), $(!REG_VT_DWORD), *($(Now),1)} }
Shell $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error."
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Registry error: add value list."
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
goto fatalregistry
endif
set NewValueList = { {type, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamSoftwareType)},+
{use, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamSoftwareUse)}, +
{bindform, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamSoftwareBindForm)}, +
{class, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRuleATeamSoftwareClass)}, +
{bindable, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRuleATeamSoftwareBindable)}, +
{InfOption,$(NoTitle), $(!REG_VT_SZ), $(Option)} }
Shell $(UtilityInf), AddValueList, $(SoftNetRulesKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error."
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Resgitry error: add value list."
goto fatalregistry
endif
else
CloseRegKey $(KeyProduct)
endif
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductATeamTransportName)"\CurrentVersion" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
CloseRegKey $(KeyProduct)
Debug-Output "OEMSETUP.INF: AddSoftwareComponent: ATEAM Transport"
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), $(ProductATeamTransportName), $(ProductATeamTransportName), +
$(ProductATeamTransportTitle), $(STF_CONTEXTINFNAME), $(ProductATeamSoftwareImagePath), +
"transport", "Transport", {}, "", $(NetEventDLL)
Set OEM_ABANDON_SOFTWARE = TRUE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
set KeyProduct = $($R1)
Set SoftNetRulesKey = $($R2)
CloseRegKey $($R3)
CloseRegKey $($R4)
CloseRegKey $($R5)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Registry error: add software components"
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
goto fatalregistry
endif
set NewValueList = { {SoftwareType, $(NoTitle), $(!REG_VT_SZ), "transport" }, +
{MajorVersion, $(NoTitle), $(!REG_VT_DWORD), $(ProductATeamMajorVersion)},+
{MinorVersion, $(NoTitle), $(!REG_VT_DWORD), $(ProductATeamMinorVersion)},+
{Title, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamTransportTitle)},+
{Description, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamTransportDescription)},+
{ServiceName, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamTransportName)},+
{InstallDate, $(NoTitle), $(!REG_VT_DWORD), *($(Now),1)} +
{Review, $(NoTitle), $(!REG_VT_DWORD), 1 }, +
{OperationsSupport, $(NoTitle), $(!REG_VT_DWORD), 128} }
Shell $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error."
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Registry error: add value list."
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
goto fatalregistry
endif
set NewValueList = { {type, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamTransportType)},+
{use, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamTransportUse)}, +
{bindform, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamTransportBindForm)}, +
{class, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRuleATeamTransportClass)}, +
{bindable, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRuleATeamTransportBindable)}, +
{InfOption, $(NoTitle), $(!REG_VT_SZ), $(Option)}}
Shell $(UtilityInf), AddValueList, $(SoftNetRulesKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error."
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Resgitry error: add value list."
goto fatalregistry
endif
else
CloseRegKey $(KeyProduct)
endif
Debug-Output "OEMSETUP.INF: AddHardwareComponent ATEAM"
Shell $(UtilityInf), AddHardwareComponent, $(ProductATeamHardwareName),$(STF_CONTEXTINFNAME),$(ProductATeamKeyName)
set AftRegKeyName = $($R5)
ifint $($R4) != -1
Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
endif
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "Cannot add hardware component"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Registry error: add hardware component"
CloseRegKey $($R1)
CloseRegKey $($R2)
CloseRegKey $($R3)
goto fatalregistry
endif
set KeyParameters = $($R3)
set KeyAdapterRules = $($R2)
set AdapterNumber = $($R4)
set NewValueList = { {Manufacturer, $(NoTitle), $(!REG_VT_SZ), $(Manufacturer)},+
{Title, $(NoTitle), $(!REG_VT_SZ), "["$($R4)"] "$(ProductATeamHardwareTitle)},+
{Description, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamHardwareDescription)},+
{ProductName, $(NoTitle), $(!REG_VT_SZ), $(ProductATeamHardwareName)},+
{ServiceName, $(NoTitle), $(!REG_VT_SZ), $($R5)},+
{InstallDate, $(NoTitle), $(!REG_VT_DWORD),*($(Now),1)} }
Shell $(UtilityInf), AddValueList, $($R1), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
CloseRegKey $($R1)
set TempProdName = """"$(ProductATeamHardwareName)$(AdapterNumber)""""
set TempBindForm = $(TempProdName)$(NetRuleATeamHardwareBindForm)
set NewValueList = { {type, $(NoTitle), $(!REG_VT_SZ), $(NetRuleATeamHardwareType)},+
{bindform, $(NoTitle), $(!REG_VT_SZ), $(TempBindForm)}, +
{class, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRuleATeamHardwareClass)}, +
{InfOption, $(NoTitle), $(!REG_VT_SZ), $(Option)}}
Shell $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error."
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
Debug-Output "Resgitry error: add value list."
CloseRegKey $(KeyParameters)
CloseRegKey $(KeyAdapterRules)
goto fatalregistry
endif
CloseRegKey $(KeyAdapterRules)
Set TeamTypeValue = $(ProductSoftwareName)
Set NewValueList = {+
{CheckTime, $(NoTitle), $(!REG_VT_DWORD), $(CheckTimeValue)},+
{DisableTime, $(NoTitle), $(!REG_VT_DWORD), $(DisableTimeValue)},+
{IdleTime, $(NoTitle), $(!REG_VT_DWORD), $(IdleTimeValue)},+
{ProbeTime, $(NoTitle), $(!REG_VT_DWORD), $(ProbeTimeValue)},+
{TeamType, $(NoTitle), $(!REG_VT_SZ), $(TeamTypeValue)},+
}
Shell $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
LoadLibrary "Intel EtherExpress PRO Adapter Driver Disk" $(!STF_WINDOWSSYSPATH)\epro100.dll DllLibHandle
LibraryProcedure DllExitStr $(DllLibHandle) AftCM
FreeLibrary $(DllLibHandle)
goto writeparameters
skipoptions = +
ifstr(i) $(Option) == "ATEAMADAPTER"
goto install_ateam
endif
ifint $(OldVersionExisted) == $(TRUE)
ifstr(i) $(!NTN_InstallMode) == configure
goto writeparameters
endif
endif
StartWait
ifint $(OldVersionExisted) == $(FALSE)
ifstr(i) $(!NTN_InstallMode) == "install"
Ifstr(i) $(DoCopy) == "YES"
Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
Ifint $($ShellCode) != $(!SHELL_CODE_OK)
Goto ShellCodeError
Else-Ifstr(i) $($R0) == STATUS_FAILED
Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
Goto fatal
Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
Goto successful
Endif
Set SrcDir = $($R1)
Endif
install "Install-Option"
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
goto fatal
endif
endif
ifcontains(i) $(m_WinNTVersion) in {"3.50", "3.51"}
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
$(ProductSoftwareName), +
$(ProductSoftwareName), +
$(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
$(ProductSoftwareImagePathNDIS3), "kernel", "NDIS", {}, "",+
$(NetEventDLL)
else
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
$(ProductSoftwareName), +
$(ProductSoftwareName), +
$(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
$(ProductSoftwareImagePathNDIS4), "kernel", "NDIS", {}, "",+
$(NetEventDLL)
endif
Set OEM_ABANDON_SOFTWARE = TRUE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
set KeyProduct = $($R1)
Set SoftNetRulesKey = $($R2)
CloseRegKey $($R3)
CloseRegKey $($R4)
CloseRegKey $($R5)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
goto fatalregistry
endif
set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
{MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
{MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
{Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
Shell $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
goto fatalregistry
endif
set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
{use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
{bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
{class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
{bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
Shell $(UtilityInf), AddValueList, $(SoftNetRulesKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
EndWait
goto fatalregistry
endif
endif
set NTDetected = $(TRUE)
set Vendor = 32902
set CFID = 4649
ifcontains(i) $(m_WinNTVersion) in {"3.50", "3.51"}
Shell "", FindPciE100B
else
Shell $(UtilityInf), GetPCIInformation, $(Vendor) $(CFID)
endif
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R0) == {}
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "FATAL" "Setup was unable to detect an Intel EtherExpress PRO Adapter in your system. Install the adapter and try again."
goto setfailed
endif
set AdapterList = $($R0)
Shell "", FindOutdatedRegistryEntries
ifint $($R0) == -1
LoadLibrary "Intel EtherExpress PRO Adapter Driver Disk" $(!STF_WINDOWSSYSPATH)\epro100.dll DllLibHandle
LibraryProcedure DllExitStr $(DllLibHandle) AddSlots
FreeLibrary $(DllLibHandle)
endif
ForListDo $(AdapterList)
Set InstallCard = "YES"
ifint $(NTDetected) == $(TRUE)
set DetectedBusNum = *($($),1)
set DetectedSlotNum = *($($),2)
Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(DetectedBusNum), +
$(DetectedSlotNum), $(ProductHardware$(Option)Description), $(ProductHardwareName)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr $($R0) != "NO_ERROR"
set Error = $($R0)
goto fatal
endif
ifstr(i) $($R1) == "YES"
set InstallCard = "NO"
endif
endif
ifstr(i) $(InstallCard) == "NO"
set detmsg = "An "$(ProductHardwareTitle)" at PCI Bus "$(DetectedBusNum)" PCI Slot "$(DetectedSlotNum)" is already installed!"
goto det_bypass
else
Debug-Output "*** Installing E100B at $(DetectedBusNum):$(DetectedSlotNum)!"
Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
ifint $($R4) != -1
Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
endif
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
EndWait
CloseRegKey $($R1)
CloseRegKey $($R2)
CloseRegKey $($R3)
goto fatalregistry
endif
Set MyNetCardKey = $($R1)
Set MyNetRuleKey = $($R2)
Set MyParameterKey = $($R3)
set AdapterNumber = $($R4)
set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
{Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardware$(Option)Title)},+
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(Option)Description)},+
{ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
Shell $(UtilityInf), AddValueList, $(MyNetCardKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set BusNumber = $(DetectedBusNum)
set SlotNum = $(DetectedSlotNum)
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows NT\CurrentVersion" $(!REG_KEY_READ) KeyWinNT
ifstr(i) $(KeyWinNT) != ""
GetRegValue $(KeyWinNT) "CurrentVersion" CurrentVersionValue
endif
CloseRegKey $(KeyWinNT)
set m_WinNTVersion = *($(CurrentVersionValue),4)
Debug-Output "Setting PerfOpts Defaults 3.51"
Ifstr(i) $(!STF_PROCESSOR) == "I586"
Debug-Output "Found Pentium"
set myPerfOptimsValue = 2
else
Debug-Output "Found nonPentium"
set myPerfOptimsValue = 0
endif
ifcontains(i) $(m_WinNTVersion) not-in {"3.50", "3.51"}
Debug-Output "Setting PerfOpts for NT 4.X"
Ifstr(i) $(!STF_PROCESSOR) == "I586"
Debug-Output "Found Pentium"
set myPerfOptimsValue = 2
else
Debug-Output "Found nonPentium"
set myPerfOptimsValue = 0
endif
endif
Set NewValueList = {+
{Adaptive_IFS, $(NoTitle), $(!REG_VT_DWORD), 1}, +
{BusNumber, $(NoTitle), $(!REG_VT_DWORD), $(BusNumber)},+
{BusType, $(NoTitle), $(!REG_VT_DWORD), 5)},+
{BusTypeLocal, $(NoTitle), $(!REG_VT_DWORD), 5}, +
{ForceDpx, $(NoTitle), $(!REG_VT_DWORD), 0}, +
{MapRegisters, $(NoTitle), $(!REG_VT_DWORD), 64}, +
{MediaType, $(NoTitle), $(!REG_VT_DWORD), 1 },+
{MsPciScan, $(NoTitle), $(!REG_VT_DWORD), 1 },+
{NumCoalesce, $(NoTitle), $(!REG_VT_DWORD), 8}, +
{NumRfd, $(NoTitle), $(!REG_VT_DWORD), 16}, +
{NumTbdPerTcb, $(NoTitle), $(!REG_VT_DWORD), 12}, +
{NumTcb, $(NoTitle), $(!REG_VT_DWORD), 16}, +
{PerfOptims, $(NoTitle), $(!REG_VT_DWORD), $(myPerfOptimsValue)},+
{RxDmaCount, $(NoTitle), $(!REG_VT_DWORD), 0}, +
{RxFifo, $(NoTitle), $(!REG_VT_DWORD), 8}, +
{SlotNumber, $(NoTitle), $(!REG_VT_DWORD), $(SlotNum)},+
{Speed, $(NoTitle), $(!REG_VT_DWORD), 0}, +
{Threshold, $(NoTitle), $(!REG_VT_DWORD), 16}, +
{TxDmaCount, $(NoTitle), $(!REG_VT_DWORD), 0}, +
{TxFifo, $(NoTitle), $(!REG_VT_DWORD), 8}, +
{Txmitwait, $(NoTitle), $(!REG_VT_DWORD), 1}, +
{UcodeSW, $(NoTitle), $(!REG_VT_DWORD), 1}, +
{UnderrunRetry, $(NoTitle), $(!REG_VT_DWORD), 1}, +
}
Debug-Output "$(InfFile) $(Option): Set HardwareParameterKey = $(NewValueList)"
Shell $(UtilityInf), AddValueList, $(MyParameterKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
{bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
{class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
Debug-Output "$(InfFile) $(Option): HardwareRuleKey = $(NewValueList)"
Shell $(UtilityInf), AddValueList, $(MyNetRuleKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(MyNetCardKey)
CloseRegKey $(MyNetRuleKey)
endif
det_bypass = +
EndForListDo
goto writeparameters
writeparameters = +
ifstr(i) $(Option) == "ATEAMADAPTER"
Set NewValueList = {+
{CheckTime, $(NoTitle), $(!REG_VT_DWORD), $(CheckTimeValue)},+
{DisableTime, $(NoTitle), $(!REG_VT_DWORD), $(DisableTimeValue)},+
{IdleTime, $(NoTitle), $(!REG_VT_DWORD), $(IdleTimeValue)},+
{ProbeTime, $(NoTitle), $(!REG_VT_DWORD), $(ProbeTimeValue)},+
}
Shell $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
Shell $(UtilityInf),AddDefaultNetCardParameters,$(KeyParameters)
endif
CloseRegKey $(KeyParameters)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error."
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
Debug-Output "Registry error: Add value list"
goto fatalregistry
endif
goto successful
endif
Shell $(UtilityInf), GetBusTypeNum
set BusTypeNum = $($R1)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
Set IOAddrValue = *($(IOAddrValues), ~($(IOAddrList),$(IOAddrValue)))
Shell "" DebugConfiguration "Before Writing Parameters"
set NewValueList = {{Eid,$(NoTitle),$(!REG_VT_DWORD),0)}}
OpenRegKey $(!REG_H_LOCAL) "" $(PROSetKeyName)"\"Adapters $(MAXIMUM_ALLOWED) PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {$(PROSetKeyName)"\"Adapters,0,GenericClass} "" +
$(MAXIMUM_ALLOWED) "" PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" CreateRegAdapterFailed
goto fatalregistry
endif
endif
set NewValueList = {{$(PROSetAdapterName),$(NoTitle), $(!REG_VT_SZ), $(Adapter)}}
Shell $(UtilityInf), AddValueList, $(PROSetAdapterKey), $(NewValueList)
CloseRegKey $(PROSetAdapterKey)
OpenRegKey $(!REG_H_LOCAL) "" $(PROSetKeyName)"\"$(PROSetAdapterName) $(MAXIMUM_ALLOWED) PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {$(PROSetKeyName)"\"$(PROSetAdapterName),0,GenericClass} "" +
$(MAXIMUM_ALLOWED) "" PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" CreateRegEPRO10Failed
goto fatalregistry
endif
endif
set NewValueList = {{Configure,$(NoTitle),$(!REG_VT_SZ),$(Configure)},+
{Detect,$(NoTitle),$(!REG_VT_SZ),$(Detect)},+
{Diagnose,$(NoTitle),$(!REG_VT_SZ),$(Diagnose)},+
{DLL,$(NoTitle),$(!REG_VT_SZ),$(DLL)},+
{Help,$(NoTitle),$(!REG_VT_SZ),$(Help)},+
{RegistryKey,$(NoTitle),$(!REG_VT_SZ),$(RegistryKey)},+
{AdapterDescription,$(NoTitle),$(!REG_VT_SZ),$(AdapterDescription)},+
{InstallAnyway,$(NoTitle),$(!REG_VT_SZ),$(InstallAnyway)},+
{DeviceExist,$(NoTitle),$(!REG_VT_SZ),$(DeviceExist)},+
{GetExtendedFeatures,$(NoTitle),$(!REG_VT_SZ),$(GetExtendedFeatures)},+
{Summary,$(NoTitle),$(!REG_VT_SZ),$(Summary)}}
Shell $(UtilityInf), AddValueList, $(PROSetAdapterKey), $(NewValueList)
CloseRegKey $(PROSetAdapterKey)
OpenRegKey $(!REG_H_LOCAL) "" $(PROSetKeyName)"\"$(PROSetAdapterName)"\"$(PROSetParameters) $(MAXIMUM_ALLOWED) PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {$(PROSetKeyName)"\"$(PROSetAdapterName)"\"$(PROSetParameters),0,GenericClass} "" +
$(MAXIMUM_ALLOWED) "" PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" CreateRegEPRO10Failed
goto fatalregistry
endif
endif
set NewValueList = { +
{BusNumber,$(NoTitle),$(!REG_VT_SZ),$(BusNumber)}, +
{BusType,$(NoTitle),$(!REG_VT_SZ),$(BusType)}, +
{BusTypeLocal,$(NoTitle),$(!REG_VT_SZ),$(BusTypeLocal)}, +
{Eid,$(NoTitle),$(!REG_VT_SZ),$(Eid)}, +
{Fifo,$(NoTitle),$(!REG_VT_SZ),$(Fifo)}, +
{ForceDpx,$(NoTitle),$(!REG_VT_SZ),$(ForceDpx)}, +
{MapRegisters,$(NoTitle),$(!REG_VT_SZ),$(MapRegisters)}, +
{MediaType,$(NoTitle),$(!REG_VT_SZ),$(MediaType)}, +
{MsPciScan,$(NoTitle),$(!REG_VT_SZ),$(MsPciScan)}, +
{NumCoalesce,$(NoTitle),$(!REG_VT_SZ),$(NumCoalesce)}, +
{NumRfd,$(NoTitle),$(!REG_VT_SZ),$(NumRfd)}, +
{NumTbd,$(NoTitle),$(!REG_VT_SZ),$(NumTbd)}, +
{NumTbdPerTcb,$(NoTitle),$(!REG_VT_SZ),$(NumTbdPerTcb)}, +
{NumTcb,$(NoTitle),$(!REG_VT_SZ),$(NumTcb)}, +
{Off,$(NoTitle),$(!REG_VT_SZ),$(Off)}, +
{On,$(NoTitle),$(!REG_VT_SZ),$(On)}, +
{RxDmaCount,$(NoTitle),$(!REG_VT_SZ),$(RxDmaCount)}, +
{RxFifo,$(NoTitle),$(!REG_VT_SZ),$(RxFifo)}, +
{Slot,$(NoTitle),$(!REG_VT_SZ),$(Slot)}, +
{Speed,$(NoTitle),$(!REG_VT_SZ),$(Speed)}, +
{Threshold,$(NoTitle),$(!REG_VT_SZ),$(Threshold)}, +
{TxDmaCount,$(NoTitle),$(!REG_VT_SZ),$(TxDmaCount)}, +
{TxFifo,$(NoTitle),$(!REG_VT_SZ),$(TxFifo)}, +
{UnderrunRetry,$(NoTitle),$(!REG_VT_SZ),$(UnderrunRetry)}, +
{PerfOptims,$(NoTitle),$(!REG_VT_SZ),$(PerfOptims)}, +
{UcodeSW,$(NoTitle),$(!REG_VT_SZ),$(UcodeSW)}, +
{Adaptive_IFS,$(NoTitle),$(!REG_VT_SZ),$(Adaptive_IFS)}, +
{Txmitwait,$(NoTitle),$(!REG_VT_SZ),$(Txmitwait)}, +
}
Shell $(UtilityInf), AddValueList, $(PROSetAdapterKey), $(NewValueList)
CloseRegKey $(PROSetAdapterKey)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
EndWait
ifstr(i) $(!NTN_Origination) == "INSTALL"
ifstr(i) $(!STF_GUI_UNATTENDED) == YES
RunProgram DummyExitCode "" "" $(!STF_WINDOWSSYSPATH)\$(ExeName).EXE /BATCH $(AdapterServiceKey)
else
RunProgram DummyExitCode "" "" $(!STF_WINDOWSSYSPATH)\$(ExeName).EXE $(AdapterServiceKey)
endif
endif
Ifstr(i) $(!NTN_InstallMode) != configure
ifint $(ExitCode) >= 2
set CommonStatus = STATUS_USERCANCEL
goto abandon
endif
else
ifint $(ExitCode) == 0
set CommonStatus = STATUS_NO_EFFECT
endif
ifint $(ExitCode) == 2
set CommonStatus = STATUS_NO_EFFECT
endif
endif
goto successful
bindingadapter = +
ifstr(i) $(Option) == "ATEAMADAPTER"
debug-output "set Services\iAFTProtocol\type = 4"
OpenRegKey $(!REG_H_LOCAL) "" $(ServicesBaseName)"\"$(ProductATeamTransportName) $(MAXIMUM_ALLOWED) TransportKey
Ifstr $(TransportKey) == $(KeyNull)
debug-output "cannot open Services\iAFTProtocol\type "
else
Set NewValueList = {Type, $(NoTitle), $(!REG_VT_DWORD), 4 }
SetRegValue $(TransportKey) $(NewValueList)
CloseRegKey $(TransportKey)
endif
OpenRegKey $(!REG_H_LOCAL) "" $(ServicesBaseName)"\"$(ProductATeamSoftwareName)"\Linkage" $(MAXIMUM_ALLOWED) LinkageKey
Ifstr $(LinkageKey) == $(KeyNull)
debug-output "cannot open Services\iAFT\Linkage "
else
debug-output "Read iAFT linkage "
GetRegValue $(LinkageKey) "Bind" BindList
debug-output "BindList = "$(BindList)
set AdapterList = *($(BindList),4)
debug-output "AdapterList = "$(AdapterList)
CloseRegKey $(LinkageKey)
ForListDo $(AdapterList)
debug-output "Adapter = "$($)
Split-String $($), "\", Adapter
QueryListSize ListSize $(Adapter)
set mspaName = *($(Adapter),$(ListSize))
debug-output "MultiSpan Miniport Name ="$(mspaName)
EndForListDo
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\iAFTProtocol\Linkage" $(MAXIMUM_ALLOWED) LinkageKey
ifstr $(LinkageKey) != $(KeyNull)
GetRegValue $(LinkageKey) "Bind" BindList
debug-output "BindList = "$(BindList)
set AdapterList = *($(BindList),4)
debug-output "AdapterList = "$(AdapterList)
set CardNumber = 0
set NewBindList = {}
set NewBindDisableList = {}
ForListDo $(AdapterList)
debug-output "Adapter = "$($)
Split-String $($), "\", Adapter
QueryListSize ListSize $(Adapter)
set CardName = *($(Adapter),$(ListSize))
debug-output "CardName="$(CardName)
ifstr(i) $(CardName) == $(iAFTProtocolName)
debug-output "ERROR!!!!! bind to itself "
set NewBindDisableList = >($(NewBindDisableList), $($))
else
set NewBindList = >($(NewBindList), $($))
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(CardName)"\Parameters" $(MAXIMUM_ALLOWED) ParamKey
Ifstr $(ParamKey) == $(KeyNull)
debug-output "cannot open "$(CardName)"\Parameters"
else
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(CardName)"\Parameters\iAFTProtocol" $(MAXIMUM_ALLOWED) KeyiAFTProtocol
Ifstr $(KeyiAFTProtocol) == $(KeyNull)
debug-output "cannot open "$(CardName)"\Parameters\iAFTProtocol, CreateRegKey"
CreateRegKey $(ParamKey) { "iAFTProtocol" , 0, GenericClass } "" +
$(!REG_KEY_SET_VALUE) "" KeyiAFTProtocol
Ifstr $(KeyiAFTProtocol) == $(KeyNull)
debug-output "CreateRegKey ERROR!!"
Endif
else
debug-output "Key exist!!"
endif
debug-output "Connect="$(mspaName)" Number="$(CardNumber)
SetRegValue $(KeyiAFTProtocol) {"Connect",$(NoTitle),$(!REG_VT_SZ), $(mspaName)}
SetRegValue $(KeyiAFTProtocol) {"Number", $(NoTitle),$(!REG_VT_DWORD),$(CardNumber)}
set-add CardNumber = $(CardNumber) , 1
CloseRegKey $(KeyiAFTProtocol)
CloseRegKey $(ParamKey)
endif
endif
EndForListDo
CloseRegKey $(LinkageKey)
endif
endif
Shell "", PruneLoopbackBinding, "iAFTProtocol", "iAFT"
set AFTStartNum = 1
AFT_jmp = +
Shell $(UtilityInf), FindNextNetworkCard, "iAFT", $(AFTStartNum)
ifstr $($R0) != $(KeyNull)
GetRegValue $($R0) "ServiceName" ValueList
set AFTTargetService = *($(ValueList),4)
CloseRegKey $($R0)
set AFTStartNum = $($R1)
Shell "", EnableDisableBindings, "iVLANProtocol", "\Device\"$(AFTTargetService), "disable"
Shell "", EnableDisableBindings, "iAFTProtocol", "\Device\"$(AFTTargetService), "disable"
goto AFT_jmp
else
ifint $(AFTStartNum) != "10"
set-add AFTStartNum = $(AFTStartNum), 1
goto AFT_jmp
endif
endif
set AFTstartnum = "1"
BA_AFTjmp2 = +
Shell $(UtilityInf), FindNextNetworkCard, "e100b", $(AFTstartnum)
ifstr $($R0) != $(KeyNull)
GetRegValue $($R0) "ServiceName" ValueList
set BA_AFTTargetService = *($(ValueList),4)
CloseRegKey $($R0)
set AFTstartnum = $($R1)
Shell $(UtilityInf), FindService, $(BA_AFTTargetService), "adapter"
ifstr $($R0) != $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(BA_AFTTargetService)"\Parameters\iAFTProtocol" $(MAXIMUM_ALLOWED) BA_AFTProtoKeySvc
ifstr $(BA_AFTProtoKeySvc) != $(KeyNull)
Shell "", PruneEverything, $(BA_AFTTargetService)
Shell "", EnableDisableBindings, "iAFTProtocol", "\Device\"$(BA_AFTTargetService), "activate"
else
Shell "", EnableDisableBindings, "iAFTProtocol", "\Device\"$(BA_AFTTargetService), "disable"
endif
endif
goto BA_AFTjmp2
else
ifint $(AFTstartnum) != "10"
set-add AFTstartnum = $(AFTstartnum), 1
goto BA_AFTjmp2
endif
endif
endif
goto successful
removeadapter = +
Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), + $(ProductSoftwareName)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
else-ifstr(i) $(Option) == "ATEAMADAPTER"
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) RM_AFTVictimiAFTKey
Ifstr $(RM_AFTVictimiAFTKey) == $(KeyNull)
goto fatalregistry
endif
GetRegValue $(RM_AFTVictimiAFTKey), "ServiceName", RM_AFTVictimInfo
set RM_AFTVictim = *($(RM_AFTVictimInfo), 4)
CloseRegKey $(RM_AFTVictimiAFTKey)
set EnableBindings = "TRUE"
set rm_AFTstartnum = "1"
RM_AFTjmp2 = +
Shell $(UtilityInf), FindNextNetworkCard, "e100b", $(rm_AFTstartnum)
ifstr $($R0) != $(KeyNull)
GetRegValue $($R0) "ServiceName" ValueList
set RM_AFTTargetService = *($(ValueList),4)
CloseRegKey $($R0)
set rm_AFTstartnum = $($R1)
Shell $(UtilityInf), FindService, $(RM_AFTTargetService), "adapter"
ifstr $($R0) != $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(RM_AFTTargetService)"\Parameters\iAFTProtocol" $(MAXIMUM_ALLOWED) RM_AFTProtoKeySvc
ifstr $(RM_AFTProtoKeySvc) != $(KeyNull)
GetRegValue $(RM_AFTProtoKeySvc) "Connect" ValueList
set RM_AFTcurrent = *($(ValueList),4)
ifstr $(RM_AFTcurrent) == $(RM_AFTVictim)
ifstr(i) $(EnableBindings) == "TRUE"
set EnableBindings = "FALSE"
Shell $(UtilityInf), FindService, "NetBT", "protocol"
ifstr $($R0) != $(KeyNull)
Shell "", EnableDisableBindings, "LanmanWorkstation", "\Device\NetBT_"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "LanmanServer", "\Device\NetBT_"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "NetBIOS", "\Device\NetBT_"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "RemoteAccess", "\Device\NetBT_"$(RM_AFTTargetService), "activate"
endif
Shell $(UtilityInf), FindService, "Nbf", "protocol"
ifstr $($R0) != $(KeyNull)
Shell "", EnableDisableBindings, "LanmanWorkstation", "\Device\Nbf_"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "LanmanServer", "\Device\Nbf_"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "NetBIOS", "\Device\Nbf_"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "RemoteAccess", "\Device\Nbf_"$(RM_AFTTargetService), "activate"
endif
Shell "", EnableDisableBindings, "Nbf", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "NwlnkIpx", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "Tcpip", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "AppleTalk", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "NetBT", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "bh", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "DLC", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "Streams", "\Device\"$(RM_AFTTargetService), "activate"
Shell "", EnableDisableBindings, "iAFTProtocol", "\Device\"$(RM_AFTTargetService), "disable"
CloseRegKey $(RM_AFTProtoKeySvc)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(RM_AFTTargetService)"\Parameters\" $(MAXIMUM_ALLOWED) RM_AFTProtoKeySvc2
DeleteRegKey $(RM_AFTProtoKeySvc2) "iAFTProtocol"
CloseRegKey $(RM_AFTProtoKeySvc2)
endif
endif
endif
endif
goto RM_AFTjmp2
else
ifint $(rm_AFTstartnum) != "10"
set-add rm_AFTstartnum = $(rm_AFTstartnum), 1
goto RM_AFTjmp2
endif
endif
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), $(ProductATeamHardwareName), $(!NTN_RegBase)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\"$(ProductATeamSoftwareName) $(MAXIMUM_ALLOWED) Rm_AFTServiceKey
Ifstr $(Rm_AFTServiceKey) == $(KeyNull)
Debug-Output "RemoveService iAFTProtocol"
Shell $(UtilityInf), RemoveService,$(ProductATeamTransportName), "NO"
Debug-Output "RemoveSoftwareComponent iAFTProtocol"
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), $(ProductATeamTransportName)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
else
GetRegValue $(Rm_AFTServiceKey) "DeleteFlag" ValueList
ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
set RM_AFTflagpresent = *($(ValueList),4)
ifstr $(RM_AFTflagpresent) == "1"
Debug-Output "RemoveService iAFTProtocol"
Shell $(UtilityInf), RemoveService,$(ProductATeamTransportName), "NO"
Debug-Output "RemoveSoftwareComponent iAFTProtocol"
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), $(ProductATeamTransportName)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
endif
endif
endif
CloseRegKey $(Rm_AFTServiceKey)
goto end
else
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), $(ProductSoftwareName), $(!NTN_RegBase)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
endif
endif
endif
goto end
UpgradeSoftware = +
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set !UG_Filename = $($R0)
install "Install-Update"
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
goto fatal
endif
OpenRegKey $(!REG_H_LOCAL) "" $(PROSetKeyName)"\"Adapters $(MAXIMUM_ALLOWED) PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {$(PROSetKeyName)"\"Adapters,0,GenericClass} "" +
$(MAXIMUM_ALLOWED) "" PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" CreateRegAdapterFailed
goto fatalregistry
endif
endif
set NewValueList = {{$(PROSetAdapterName),$(NoTitle), $(!REG_VT_SZ), $(Adapter)}}
Shell $(UtilityInf), AddValueList, $(PROSetAdapterKey), $(NewValueList)
CloseRegKey $(PROSetAdapterKey)
OpenRegKey $(!REG_H_LOCAL) "" $(PROSetKeyName)"\"$(PROSetAdapterName) $(MAXIMUM_ALLOWED) PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {$(PROSetKeyName)"\"$(PROSetAdapterName),0,GenericClass} "" +
$(MAXIMUM_ALLOWED) "" PROSetAdapterKey
ifstr $(PROSetAdapterKey) == $(KeyNull)
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" CreateRegEPRO10Failed
goto fatalregistry
endif
endif
set NewValueList = {{Configure,$(NoTitle),$(!REG_VT_SZ),$(Configure)},+
{Detect,$(NoTitle),$(!REG_VT_SZ),$(Detect)},+
{Diagnose,$(NoTitle),$(!REG_VT_SZ),$(Diagnose)},+
{DLL,$(NoTitle),$(!REG_VT_SZ),$(DLL)},+
{Help,$(NoTitle),$(!REG_VT_SZ),$(Help)},+
{RegistryKey,$(NoTitle),$(!REG_VT_SZ),$(RegistryKey)},+
{AdapterDescription,$(NoTitle),$(!REG_VT_SZ),$(AdapterDescription)},+
{InstallAnyway,$(NoTitle),$(!REG_VT_SZ),$(InstallAnyway)},+
{DeviceExist,$(NoTitle),$(!REG_VT_SZ),$(DeviceExist)},+
{GetExtendedFeatures,$(NoTitle),$(!REG_VT_SZ),$(GetExtendedFeatures)},+
{Summary,$(NoTitle),$(!REG_VT_SZ),$(Summary)}}
Shell $(UtilityInf), AddValueList, $(PROSetAdapterKey), $(NewValueList)
CloseRegKey $(PROSetAdapterKey)
Shell "", FindOutdatedRegistryEntries
ifint $($R0) == -1
LoadLibrary "Intel EtherExpress PRO Adapter Driver Disk" $(!STF_WINDOWSSYSPATH)\epro100.dll DllLibHandle
LibraryProcedure DllExitStr $(DllLibHandle) AddSlots
FreeLibrary $(DllLibHandle)
endif
SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
CloseRegKey $(KeyProduct)
else
goto fatalregistry
endif
goto end
successful = +
goto end
abandon = +
ForListDo $(OEM_ABANDON_OPTIONS)
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
$(ProductSoftwareName), $($)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
EndForListDo
Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
$(ProductSoftwareName), FALSE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
endif
goto end
warning = +
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) == "OK"
goto $(to)
else-ifstr(i) $($R1) == "CANCEL"
goto $(from)
else
goto "end"
endif
nonfatalinfo = +
Set Severity = STATUS
Set CommonStatus = STATUS_USERCANCEL
goto nonfatalmsg
nonfatal = +
Set Severity = NONFATAL
goto nonfatalmsg
nonfatalmsg = +
ifstr(i) $(Error) == ""
Set Severity = NONFATAL
Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
endif
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) == "OK"
goto $(from)
else
goto "end"
endif
fatalregistry = +
Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
goto fatal
fataldetect = +
Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
Goto fatal
fatal = +
ifstr(i) $(Error) == ""
Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
endif
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
goto setfailed
ShellCodeError = +
set DlgType = "MessageBox"
set STF_MB_TITLE = "Error: "$(FunctionTitle)
set STF_MB_TEXT = "Shell Code Error"
set STF_MB_TYPE = 1
set STF_MB_ICON = 3
set STF_MB_DEF = 1
ui start "Error Message"
goto setfailed
setfailed = +
set CommonStatus = STATUS_FAILED
ifstr(i) $(OEM_ABANDON_ON) == TRUE
set OEM_ABANDON_ON = FALSE
goto abandon
endif
goto end
end = +
goto term
term = +
Return $(CommonStatus)
[BindingsReview]
set Option = $($1)
set SrcDir = $($2)
set AddCopy = $($3)
set DoCopy = $($4)
set DoConfig = $($5)
set Status = $($R0)
Return $(Status)
[DebugConfiguration]
return
[Install-Option]
set STF_OVERWRITE = VERIFYSOURCEOLDER
set STF_VITAL = ""
ifstr(i) $(AddCopy) == "YES"
ifcontains(i) $(m_WinNTVersion) not-in {"3.50", "3.51"}
AddSectionFilesToCopyList Files-N3NDIS4 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
else
AddSectionFilesToCopyList Files-N3NDIS3 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
endif
AddSectionFilesToCopyList Files-Exe $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Exe-Drivers $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
else
ifcontains(i) $(m_WinNTVersion) not-in {"3.50", "3.51"}
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(ExeName).EXE $(!STF_WINDOWSSYSPATH)\$(ExeName).EXE
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(Sp1Name).DLL $(!STF_WINDOWSSYSPATH)\$(Sp1Name).DLL
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(ProdHelp).HLP $(!STF_WINDOWSSYSPATH)\$(ProdHelp).HLP
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(GenHelp).HLP $(!STF_WINDOWSSYSPATH)\$(GenHelp).HLP
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(DllName).DLL $(!STF_WINDOWSSYSPATH)\$(DllName).DLL
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(Sp3Name).SYS $(!STF_WINDOWSSYSPATH)\DRIVERS\$(Sp3Name).SYS
LibraryProcedure STATUS,$(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\$(Path)$(KddName).SYS $(!STF_WINDOWSSYSPATH)\DRIVERS\$(KddName).SYS
endif
endif
Exit
[Install-Update]
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
ifcontains(i) $(m_WinNTVersion) not-in {"3.50", "3.51"}
AddSectionFilesToCopyList Files-N3NDIS4 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
else
AddSectionFilesToCopyList Files-N3NDIS3 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
endif
AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Exe $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Exe-Drivers $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
exit
[FindPciE100B]
read-syms GeneralConstants
read-syms FileConstants
set VendorID = 32902
set DeviceID = 4649
set MultiAdapter = "HARDWARE\Description\System\MultifunctionAdapter"
set InfoList = {}
OpenRegKey $(!REG_H_LOCAL) "" $(MultiAdapter) $(MAXIMUM_ALLOWED) KeyMultiAdapter
Ifstr $(KeyMultiAdapter) == $(KeyNull)
goto FindPciE100B_end
endif
EnumRegKey $(KeyMultiAdapter) BusList
set BusNum = 0
set index = 0
ForListDo $(BusList)
OpenRegKey $(!REG_H_LOCAL) "" $(MultiAdapter)"\"$(index) $(MAXIMUM_ALLOWED) KeyMultiAdapterBus
GetRegValue $(KeyMultiAdapterBus) "Identifier" IdentifierInfo
ifstr(i) *($(IdentifierInfo),4) == "PCI"
set function = 0
set device = 0
FindPciE100B_again = +
ifint $(device) < 32
LibraryProcedure Result, $(!LIBHANDLE), GetPciInformation, $(BusNum), $(device), $(function)
ifint *($(Result),1) == $(VendorID)
ifint *($(Result),2) == $(DeviceID)
set InfoList = >($(InfoList),{$(BusNum),$(device),0})
endif
endif
Set-add device = $(device),1
goto FindPciE100B_again
endif
set-add BusNum = $(BusNum),1
endif
set-add index = $(index),1
EndForListDo
CloseRegKey $(KeyMultiAdapter)
FindPciE100B_end = +
return $(InfoList)
[EnableDisableBindings]
read-syms GeneralConstants
read-syms FileConstants
set m_ServiceName = $($0)
set m_BindingString = $($1)
set m_Action = $($2)
ifstr(i) $(m_Action) == "disable"
set m_Linkage = "\Linkage"
else
set m_Linkage = "\Linkage\Disabled"
endif
Shell $(UtilityInf), FindService, $(m_ServiceName), "protocol"
ifstr $($R0) != $(KeyNull)
Set m_BindList = {}
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(m_ServiceName)$(m_Linkage) $(MAXIMUM_ALLOWED) m_KeySvc
GetRegValue $(m_KeySvc), "Bind", m_TempList
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
Set m_BindList = *($(m_TempList),4)
set m_found = "FALSE"
ForListDo $(m_BindList)
ifstr(i) $(m_found) == "FALSE"
ifstr(i) $($) == $(m_BindingString)
Shell $(UtilityInf), ToggleBinding, $(m_ServiceName), $(#), $(m_Action)
set m_found = "TRUE"
endif
endif
EndForListDo
Endif
CloseRegKey $(m_KeySvc)
endif
return
[FindOutdatedRegistryEntries]
read-syms GeneralConstants
read-syms FileConstants
set ReturnValue = 0
set scanstartnum = "1"
RegCheckjmp = +
Shell $(UtilityInf), FindNextNetworkCard, "e100b", $(scanstartnum)
ifstr $($R0) != $(KeyNull)
GetRegValue $($R0) "ServiceName" ValueList
set scanTargetService = *($(ValueList),4)
Debug-Output "scanTargetService: $(scanTargetService)"
CloseRegKey $($R0)
set scanstartnum = $($R1)
Shell $(UtilityInf), FindService, $(scanTargetService), "adapter"
ifstr $($R0) != $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(scanTargetService)"\Parameters" $(MAXIMUM_ALLOWED) scanProtoKeySvc
Ifstr $(scanProtoKeySvc) != $(KeyNull)
GetRegValue $(scanProtoKeySvc) "Eid" EidValue
Ifstr $(EidValue) != $(KeyNull)
GetRegValue $(scanProtoKeySvc) "SlotNumber" SlotValue
Ifstr $(SlotValue) == $(KeyNull)
set ReturnValue = -1
endif
endif
endif
endif
goto RegCheckjmp
else
ifint $(scanstartnum) != "10"
set-add scanstartnum = $(scanstartnum), 1
goto RegCheckjmp
endif
endif
return $(ReturnValue)
[PruneLoopbackBinding]
read-syms GeneralConstants
read-syms FileConstants
set ProtocolEdgeName = $($0)
set MiniportEdgeName = $($1)
startpruningloopback = +
Set BA_BindList = {}
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProtocolEdgeName)"\Linkage" $(MAXIMUM_ALLOWED) BA_KeySvc
GetRegValue $(BA_KeySvc), "Bind", TempValue
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
Set BA_BindList = *($(TempValue),4)
Endif
set BA_found = "FALSE"
ForListDo $(BA_BindList)
ifstr(i) $(BA_found) == "FALSE"
Split-String $($) "0123456789\" BA_TestItem
ifcontains(i) $(MiniportEdgeName) in $(BA_TestItem)
Shell $(UtilityInf), ToggleBinding, $(ProtocolEdgeName), $(#), "disable"
set BA_AFTfound = "TRUE"
endIf
endif
EndForListDo
CloseRegKey $(BA_KeySvc)
ifstr(i) $(BA_found) == "TRUE"
goto startpruningloopback
endif
return
[PruneEverything]
read-syms GeneralConstants
read-syms FileConstants
set ServiceToBePruned = $($0)
Debug-Output "INF: ServiceToBePruned : "$(ServiceToBePruned)
Shell $(UtilityInf), FindService, "NetBT", "protocol"
ifstr $($R0) != $(KeyNull)
Shell "", EnableDisableBindings, "LanmanWorkstation", "\Device\NetBT_"$(ServiceToBePruned), "disable"
Shell "", EnableDisableBindings, "LanmanServer", "\Device\NetBT_"$(ServiceToBePruned), "disable"
Shell "", EnableDisableBindings, "NetBIOS", "\Device\NetBT_"$(ServiceToBePruned), "disable"
Shell "", EnableDisableBindings, "RemoteAccess", "\Device\NetBT_"$(ServiceToBePruned), "disable"
endif
Shell $(UtilityInf), FindService, "Nbf", "protocol"
ifstr $($R0) != $(KeyNull)
Shell "", EnableDisableBindings, "LanmanWorkstation", "\Device\Nbf_"$(ServiceToBePruned), "disable"
Shell "", EnableDisableBindings, "LanmanServer", "\Device\Nbf_"$(ServiceToBePruned), "disable"
Shell "", EnableDisableBindings, "NetBIOS", "\Device\Nbf_"$(ServiceToBePruned), "disable"
Shell "", EnableDisableBindings, "RemoteAccess", "\Device\Nbf_"$(ServiceToBePruned), "disable"
endif
set ServicesStr = "SYSTEM\CurrentControlSet\Services"
OpenRegKey $(!REG_H_LOCAL) "" $(ServicesStr) $(MAXIMUM_ALLOWED) ServicesKey
Ifstr $(ServicesKey) == $(KeyNull)
goto FindPciE100SERVER_end
endif
EnumRegKey $(ServicesKey) ServicesList
ForListDo $(ServicesList)
set TempTargetService = *($($),1)
ifstr(i) $(TempTargetService) != "E100B"
set TargetServiceString = "SYSTEM\CurrentControlSet\Services\"$(TempTargetService)"\Linkage"
Debug-Output "INF: TargetServiceString: "$(TargetServiceString)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(TempTargetService)"\Linkage" $(MAXIMUM_ALLOWED) ServiceLinkageKey
GetRegValue $(ServiceLinkageKey), "Bind", TempValue
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
Set ServiceBindList = *($(TempValue),4)
ForListDo $(ServiceBindList)
Split-String $($) "\" TestItem
Debug-Output "INF: Test Item List: "$(TestItem)
ifcontains(i) $(ServiceToBePruned) in $(TestItem)
Debug-Output "INF: Disabling binding between: "$(ServiceToBePruned)" and "$(TempTargetService)
Shell "", EnableDisableBindings, $(TempTargetService), "\Device\"$(ServiceToBePruned), "disable"
endIf
EndForListDo
Endif
CloseRegKey $(ServiceLinkageKey)
endif
EndForListDo
return
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.