;***********************************************************************
;
; OEMSETUP.INF-farallonized 7/14/99
;
; SMSC 91C90 network card and driver SETUP INF file.
;
;
; Copyright (c) 1993 DWB Associates Inc. All Rights Reserved
;
;
; 22 November 1994 D. Ebert BaseBand Technologies.
; Updates for NT 3.5.
; 13 January 1995 D. Ebert BaseBand Technologies.
; Updates for FEAST.
; 10 August 1995 D. Ebert BaseBand Technologies.
; Updates for PCMCIA.
;
; 13 Sep 1996 John (Yong Jiang), Yi
; Updates for NT 4.0
;
; Apr. 22, 1997 Shawn X.D. Meng Elisa Research Inc.
; Added new feature about Early Transmit, Flow Control
; and Duplex. Modified for MII Management about speed
; choice.
;
; May 8, 1998 J. Cao ERI.
; Change installation file name and
; some display strings
;
;***********************************************************************
;***********************************************************************
;
; ifdef AltName
;
; ELISA_CardManufacturer AND ELISA_CardKeyName NEED TO BE MODIFIED ACCORDING TO
; ELISA CARD TUPLE
; Example.
;
; 1.In PcmciaKeysSMCM section
; CardManufacturer = "ELISA_CardManufacturer"
; CardKeyName = "ELISA_CardKeyName"
;
; 2.In Options section
; If SMCM is to be changed ELISA, Use ELISA replace SMCM in all of Sections.
;
; 3.In SetUpPcmcia section.
; Changed CreateRegKey to be ELISA_CardManufacturer and SetRegValue to be
; ELISA of Options section.
;
; endif
;
;***********************************************************************
[Identification]
OptionType = NetAdapter
[PlatformsSupported]
ISA
PCMCIA
[LanguagesSupported]
ENG
[Options]
SMC91C94
[OptionsTextENG]
SMC91C94 = "Farallon Ethernet PC Card (PN595a) Adapter"
[Source Media Descriptions]
1 = "SMSC LAN9000 Driver Install Diskette"
[Files-SMC9000]
1,frln595a.sys, SIZE=40000
[Files-Dll]
1,lan9000.dll, SIZE=40000
1,lan9000.hlp, SIZE=40000
;[Files-smcncdet]
; 1, lanncdet.dll, SIZE=40000
[Files-Inf]
1, oemsetup.inf, SIZE=40000, RENAME=$(!UG_Filename)
[date]
Now = {} ? $(!LIBHANDLE) GetSystemDate
[FileConstants]
UtilityInf = "UTILITY.INF"
ParamInf = "NCPARAM.INF"
SubroutnInf = "SUBROUTN.INF"
NetEventDLL = "%SystemRoot%\System32\netevent.dll;%SystemRoot%\System32\Drivers\frln595a.sys"
[RegistryConstantsSMC9000]
SoftwareType = "driver"
Manufacturer = "SMC"
ProductMajorVersion = "3"
ProductMinorVersion = "5"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
ProductSoftwareName = "Smc9000"
ProductSoftwareTitle = "Smsc9000 Adapter Driver"
ProductSoftwareImagePath = "\SystemRoot\System32\drivers\lan9000.sys"
NetRuleSoftwareType = "smc9000Sys ndisDriver smc9000Driver"
NetRuleSoftwareUse = $(SoftwareType)
NetRuleSoftwareBindForm = """Smc9000Sys"" yes no container"
NetRuleSoftwareClass = {"smc9000Driver basic"}
NetRuleSoftwareBindable = {"smc9000Driver smc9000Adapter non exclusive 100"}
ProductHardwareName = "Smc9000"
ProductHardwareTitle = "SMSC 9000 Adapter"
NetRuleHardwareType = "smc9000 smc9000Adapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass = {"smc9000Adapter basic"}
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
ProductSoftwareDescription = "LAN9000 Ethernet Adapter Driver"
ProductHardwareDescription = "LAN9000 Ethernet Adapter"
[RegistryConstantsSMC91C94]
SoftwareType = "driver"
Manufacturer = "Farallon"
ProductMajorVersion = "3"
ProductMinorVersion = "5"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
ProductSoftwareName = "frln595a"
ProductSoftwareTitle = "Farallon Ethernet PC Card (PN595a) Driver"
ProductSoftwareImagePath = "\SystemRoot\System32\drivers\frln595a.sys"
NetRuleSoftwareType = "smc9000Sys ndisDriver smc9000Driver"
NetRuleSoftwareUse = $(SoftwareType)
NetRuleSoftwareBindForm = """Smc9000Sys"" yes no container"
NetRuleSoftwareClass = {"smc9000Driver basic"}
NetRuleSoftwareBindable = {"smc9000Driver smc91C94Adapter non exclusive 100"}
ProductHardwareName = "frln595a"
ProductHardwareTitle = "Farallon Ethernet PC Card (PN595a) Adapter"
NetRuleHardwareType = "smc91C94 smc91C94Adapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass = {"smc91C94Adapter basic"}
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
ProductSoftwareDescription = "Farallon Ethernet PC Card (PN595a) Driver"
ProductHardwareDescription = "Farallon Ethernet PC Card (PN595a) Adapter"
[RegistryConstantsSMC91C100]
SoftwareType = "driver"
Manufacturer = "SMC"
ProductMajorVersion = "3"
ProductMinorVersion = "5"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
ProductSoftwareName = "Smc91C100"
ProductSoftwareTitle = "Smsc91C100 Adapter Driver"
ProductSoftwareImagePath = "\SystemRoot\System32\drivers\lan9000.sys"
NetRuleSoftwareType = "smc9000Sys ndisDriver smc91C100Driver"
NetRuleSoftwareUse = $(SoftwareType)
NetRuleSoftwareBindForm = """Smc9000Sys"" yes no container"
NetRuleSoftwareClass = {"smc91C100Driver basic"}
NetRuleSoftwareBindable = {"smc91C100Driver smc91C100Adapter non exclusive 100"}
ProductHardwareName = "Smc91C100"
ProductHardwareTitle = "SMSC 91C100 Adapter"
NetRuleHardwareType = "smc91C100 smc91C100Adapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass = {"smc91C100Adapter basic"}
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
ProductSoftwareDescription = "SMSC 91C100 Fast Ethernet Adapter Driver"
ProductHardwareDescription = "SMSC 91C100 Fast Ethernet Adapter"
[GeneralConstants]
KeyNull = ""
MAXIMUM_ALLOWED = 33554432
KeyProduct = ""
KeyParameters = ""
PcmciaKey = ""
SmcPcmciaKey = ""
Smc91c94Key = ""
NoTitle = 0
OldVersionExisted = FALSE
DriverPath = $(!STF_NTPATH)\drivers
[PcmciaKeys]
CardManufacturer = "Farallon"
CardKeyName = "Farallon Enet"
PcmciaPath = $(!NTN_ServiceBase)"\Pcmcia\DataBase"
SmcPcmciaPath = $(!NTN_ServiceBase)"\Pcmcia\DataBase\"$(CardManufacturer)
Smc91c94Path = $(!NTN_ServiceBase)"\Pcmcia\DataBase\"$(CardManufacturer)"\"$(CardKeyName)
[FileConstantsENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cancel"
ProCancelMsg = "The "$(Option)" Adapter is not correctly installed. "+
"Are you sure you want to cancel copying files?"
ProCancelCap = "Network Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
FunctionTitle = $(Option)" Ethernet Adapter Card Setup"
[SmcIrqsSMC9000]
IRQ0 = "2",2
IRQ1 = "3",3
IRQ2 = "9",9
IRQ3 = "10",10
IRQ4 = "11",11
[SmcIrqsSMC91C100]
IRQ1 = "3",3
IRQ2 = "9",9
IRQ3 = "10",10
IRQ4 = "11",11
[SmcIrqsSMC91C94]
IRQ1 = "3",3
IRQ2 = "4",4
IRQ3 = "5",5
IRQ4 = "6",6
IRQ5 = "7",7
IRQ6 = "9",9
IRQ7 = "10",10
IRQ8 = "11",11
IRQ9 = "12",12
IRQ10 = "13",13
IRQ11 = "14",14
IRQ12 = "15",15
[SmcIoBase]
Base1 = "0x200",0x0200
Base2 = "0x220",0x0220
Base3 = "0x240",0x0240
Base4 = "0x260",0x0260
Base5 = "0x280",0x0280
Base6 = "0x2A0",0x02A0
Base7 = "0x2C0",0x02C0
Base8 = "0x2E0",0x02E0
Base9 = "0x300",0x0300
Base10 = "0x320",0x0320
Base11 = "0x340",0x0340
Base12 = "0x360",0x0360
Base13 = "0x380",0x0380
Base14 = "0x3A0",0x03A0
Base15 = "0x3C0",0x03C0
Base16 = "0x3E0",0x03E0
[SmcMedia]
Media1 = "AutoDetect"
Media2 = "10BaseT"
Media3 = "BNC"
Media4 = "AUI"
[SmcSpeed]
Speed0 = "100", 100
Speed1 = "10", 0
Speed2 = "Default", 254
Speed3 = "Auto-Negotiation", 255
[SmcDuplex]
Duplex0 = "HALF"
Duplex1 = "FULL"
Duplex2 = "Default"
Duplex3 = "Auto-Negotiation"
[HexDigits]
Hex0 = 0
Hex1 = 1
Hex2 = 2
Hex3 = 3
Hex4 = 4
Hex5 = 5
Hex6 = 6
Hex7 = 7
Hex8 = 8
Hex9 = 9
HexA = A
HexB = B
HexC = C
HexD = D
HexE = E
HexF = F
;;John++
[AttributeMemChoices]
Add_1 = "0xD8000",884736
Add_2 = "0xC0000",786432
Add_3 = "0xC4000",802816
Add_4 = "0xC8000",819200
Add_5 = "0xCC000",835584
Add_6 = "0xD0000",851968
Add_7 = "0xD4000",868352
Add_8 = "0xDC000",901120
;;John--
[DialogConstantsENG]
Help = "&Help"
Exit = "&Cancel"
OK = "&OK"
Advance = "Ad&vance"
ContextSMC9000 = 30100
ContextSMC91C100 = 30101
ContextMedia = 30102
ContextSMC91C94 = 30103
ContextAdvance = 30104 ;;J.C.
HelpContext = $(Context$(Option))
Continue = "Con&tinue"
Cancel = "&Cancel"
BadAddr1 = "Network Address must be 12 hexadecimal digits"
BadAddr2 = "Network Address contains invalid hexadecimal digit: "
BadAddr3 = "Network Address invalid, group bit must be 0"
[FileDependentDlgENG]
DlgType = "RadioCombination"
DlgTemplate = $(Option)
CaptionSMC9000 = "LAN9000 Ethernet Adapter Card Setup"
CaptionSMC91C94 = "Farallon Ethernet PC Card (pn595a) Adapter Setup"
CaptionSMC91C100 = "SMSC 91C100 Fast Ethernet Adapter Card Setup"
CaptionAdvance = "Ethernet Adapter Card Advance Setup"
Caption = $(Caption$(Option))
Combo1Label = "&IRQ Level:"
Combo2Label = "I/O &Base:"
Combo3Label = "&Media Type:"
Label3 = "&Network Address:"
; AdapterSpeed = "&Adapter Speed"
;;John++
Check1Label = "&WatchDog Timer Enable:"
Combo7Label = "&Attribute Mem:"
;;John--
;
; Add content about the new features.
;
Combo5Label = "&Duplex Mode:"
Combo4Label = "&Adapter Speed:"
Check2Label = "&Early Transmit Enable:"
Check3Label = "&Flow Control Enable:"
SpeedList = ^(SmcSpeed, 1)
DuplexList = ^(SmcDuplex, 1)
Combo5List = $(DuplexList)
Combo5Out = $(Duplex)
Combo4List = $(SpeedList)
Combo4Out = $(SpeedValue)
;
; End of adding.
;
IrqList = ^(SmcIrqs$(Option), 1)
IoBaseList = ^(SmcIoBase, 1)
MediaList = ^(SmcMedia, 1)
MediaTypeValue = 0
Combo1List = $(IrqList)
Combo1Out = $(IRQLevel)
Combo2List = $(IoBaseList)
Combo2Out = $(IOBaseAddress)
Combo3List = $(MediaList)
Combo3Out = $(Media)
;;John++
AttributeMemList = ^(AttributeMemChoices, 1)
Combo7List = $(AttributeMemList)
Combo7Out = *($(AttributeMemList), 7)
;;John--
ComboListInSMC9000 = {Combo1List, Combo2List, Combo3List, Combo4List, Combo5List, Combo7List}
ComboListOutSMC9000 = {Combo1Out, Combo2Out, Combo3Out, Combo4Out, Combo5Out, Combo7Out}
ComboListInSMC91C94 = {Combo1List, Combo2List, Combo3List, Combo7List, Combo5List}
ComboListOutSMC91C94 = {Combo1Out, Combo2Out, Combo3Out, Combo7Out, Combo5Out}
ComboListInSMC91C100 = {Combo1List, Combo2List, Combo3List, Combo4List, Combo5List, Combo7List}
ComboListOutSMC91C100= {Combo1Out, Combo2Out, Combo3Out, Combo4Out, Combo5Out, Combo7Out}
ComboListItemsIn = $(ComboListIn$(Option))
ComboListItemsOut = $(ComboListOut$(Option))
CBOptionsGreyed = {}
RCCtlFocusOn = 403
[Identify]
read-syms Identification
shell "" DebugControl
set Status = STATUS_SUCCESSFUL
set Identifier = $(OptionType)
set Media = #("Source Media Descriptions", 1, 1)
Return $(Status) $(Identifier) $(Media)
[ReturnOptions]
shell "" DebugControl
set OptionList = ^(Options, 1)
set OptionTextList = ^(OptionsText$($0), 1)
set Status = STATUS_SUCCESSFUL
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) in $(LanguageList)
ifstr(i) $($0) == ""
set Status = STATUS_NOLANGUAGE
goto ExitReturnOptions
endif
else
set Status = STATUS_NOLANGUAGE
goto ExitReturnOptions
endif
set PlatformList = ^(PlatformsSupported, 1)
Ifcontains(i) $($1) NOT-IN $(PlatformList)
ifstr(i) $($1) != ""
set Status = STATUS_NOTSUPPORTED
endif
endif
ExitReturnOptions = +
Return $(Status) $(OptionList) $(OptionTextList)
[InstallOption]
set Option = $($1)
set SrcDir = $($2)
set AddCopy = $($3)
set DoCopy = $($4)
set DoConfig = $($5)
read-syms GeneralConstants
read-syms FileConstants
read-syms FileDependentDlg$(!STF_LANGUAGE)
read-syms DialogConstants$(!STF_LANGUAGE)
read-syms FileConstants$(!STF_LANGUAGE)
shell "" DebugControl
StartWait
read-syms RegistryConstants$(Option)
set LanguageList = ^(LanguagesSupported, 1)
Ifstr(i) $(!NTN_InstallMode) == deinstall
set SubFunction = RemoveAdapter
else-Ifstr(i) $(!NTN_InstallMode) == install
set SubFunction = InstallAdapter
else-Ifstr(i) $(!NTN_InstallMode) == update
set SubFunction = UpgradeSoftware
else-Ifstr(i) $(!NTN_InstallMode) == configure
set SubFunction = ConfigureAdapter
else
set SubFunction = NoWay
endif
Shell "" $(SubFunction)
EndWait
return $($R0)
[InstallAdapter]
read-syms GeneralConstants
read-syms FileConstants
detect date
set CurrentTime = *($(Now),1)
set SrcDir = $(!p:SrcDir)
set Option = $(!p:Option)
set DoCopy = $(!p:DoCopy)
set AddCopy = $(!p:AddCopy)
set KeyProduct = $(KeyNull)
set DoSetup = TRUE
read-syms RegistryConstants$(Option)
Debug-Output "STC_NCDETECT = "$(!STF_NCDETECT)
Debug-Output "STF_NCDETCARD = "$(!STF_NCDETCARD)
Debug-Output "STF_NCOPTION = "$(!STF_NCOPTION)
Set DetectedCard = FALSE
Ifstr(i) $(!STF_NCDETECT) == YES
Ifstr(i) $(!STF_NCOPTION) == $(Option)
Set DetectedCard = TRUE
Endif
Endif
Debug-Output "SpeedValue = "$(SpeedValue)
IfStr(i) $(DetectedCard) == FALSE
Shell "" PrepareDetectionDll "lanncdet.dll"
Set Status = $($R0)
Endif
IfStr(i) $(Option) == "smc91c94"
Set PCMCIA = 1
Else
Set PCMCIA = 0
EndIf
Set MediaTypeValue = 0
ifstr(i) $(Option) == "smc9000"
Set TypeList = {{IRQ,IRQ_List,IRQLevel},+
{IOADDR, IOBaseAddressDecList, IOBaseValue},+
{TRANSCEIVER, MediaList, MediaTypeValue}}
else-ifstr(i) $(Option) == "smc91c94"
Set TypeList = {{IRQ,IRQ_List,IRQLevel},+
{IOADDR, IOBaseAddressDecList, IOBaseValue},+
{TRANSCEIVER, MediaList, MediaTypeValue}}
else
Set TypeList = {{IRQ,IRQ_List,IRQLevel},+
{IOADDR, IOBaseAddressDecList, IOBaseValue},+
{TRANSCEIVER, MediaList, MediaTypeValue}}
; {SPEED, SpeedList, SpeedValue}}
endif
Shell $(ParamInf) Param_BuildTypeLists $(Option) $(TypeList)
Set Status = $($R0)
ifstr(i) $(Status) != STATUS_SUCCESSFUL
Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
Shell "" FatalError $($R0)
Return STATUS_FAILED
Endif
Shell $(ParamInf) Param_SetDefaults {}
Debug-Output "SpeedValue2 = "$(SpeedValue)
set OldVersionExisted = FALSE
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
CloseRegKey $(KeyProduct)
ifstr(i) $(!NTN_RegBase) == $(ProductKeyName)
Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle), +
$(ProductVersion)
ifstr(i) $($R1) != "OK"
Return STATUS_FAILED
endif
else
Shell $(UtilityInf), CardExistedDlg
ifstr(i) $($R1) != "OK"
Return STATUS_FAILED
endif
set OldVersionExisted = TRUE
endif
endif
IfStr(i) $(DetectedCard) == TRUE
shell $(ParamInf) Param_QueryCard $(!STF_NCDETCARD)
ifstr(i) $($R0) == STATUS_SUCCESSFUL
set DetectedParams = $($R1)
shell $(ParamInf) Param_SetDefaults $(DetectedParams)
else
Debug-Output "Param_QueryCard Failed, status = "$($R0)
endif
endif
IfStr(i) $(DoSetup) == TRUE
set NetworkAddress = ""
ifint $(MediaTypeValue) == 0
set MediaValue = "AutoDetect"
else
set MediaValue = "10BaseT"
endif
set ReceiveTimer = 0
set Duplex = "Auto-Negotiation"
set SpeedValue = "Auto-Negotiation"
set FlowControl = 0
set EarlyTransmit = 0
; set DLLPATH = ""
set DLLPATH = $(SrcDir)
ifstr(i) $(DoCopy) == "YES"
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
CloseRegKey $(KeyProduct)
set DLLPATH = $(!STF_CWDDIR)
else
set BuiltIn = "YES"
ifstr(i) $(!NTN_Origination) == "NCPA"
Set BuiltIn = "NO"
endif
Shell $(UtilityInf) DoAskSource $(!STF_CWDDIR) $(SrcDir) $(BuiltIn)
set DLLPATH = $($R1)
set SrcDir = $($R1)
endif
endif
dowind =+
set AttributeMem = 0
install "Install-Dll"
Shell "" AdapterSetup
IfStr(i) $($R0) != TRUE
Return STATUS_USERCANCEL
endif
ifstr(i) $(MediaValue) == "AutoDetect"
set MediaTypeValue = 0
else-ifstr(i) $(MediaValue) == "10BaseT"
set MediaTypeValue = 1
else-ifstr(i) $(MediaValue) == "BNC"
set MediaTypeValue = 1
else-ifstr(i) $(MediaValue) == "AUI"
set MediaTypeValue = 1
endif
Shell $(ParamInf) Param_SaveValues
Set NewParamSettings = $($R0)
Debug-Output "Calling Verify NewParamSettings"
Shell $(ParamInf) Param_VerifyResources $(NewParamSettings)
Ifstr(i) $($R0) != STATUS_SUCCESSFUL
Debug-Output "Parameter Verify Failed"
endif
IfStr(i) $(OldVersionExisted) == FALSE
Shell "" SetCopy $(DoCopy) $(AddCopy) $(SrcDir) "Install-Option"
IfStr(i) $($R0) == TRUE
Shell "" SetSoftware $(CurrentTime)
IfStr(i) $($R0) != TRUE
Return STATUS_FAILED
endif
endif
endif
Shell "" SetHardware $(CurrentTime)
IfStr(i) $($R0) == TRUE
Shell "" WriteParameters
endif
endif
IfStr(i) $($R0) == TRUE
Return STATUS_SUCCESSFUL
else
Return STATUS_FAILED
endif
[ConfigureAdapter]
set Option = $(!p:Option)
read-syms GeneralConstants
read-syms FileConstants
read-syms FileDependentDlg$(!STF_LANGUAGE)
set DLLPATH = $(!STF_CWDDIR)
read-syms RegistryConstants$(Option)
ifstr(i) $(!NTN_RegBase) == $(ProductKeyName)
Shell $(UtilityInf) RegistryErrorString CANNOT_CONFIGURE_SOFTWARE
Shell "" ShellError $($R0)
Return STATUS_FAILED
endif
Set DetectedCard = FALSE
Set TypeList = {{IRQ,IRQ_List,IRQLevel},+
{IOADDR, IOBaseAddressDecList, IOBaseValue},+
{TRANSCEIVER, MediaList, MediaTypeValue}}
Shell $(ParamInf) Param_BuildTypeLists $(Option) $(TypeList)
ifstr(i) $($R0) != STATUS_SUCCESSFUL
Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
Shell "" FatalError $($R0)
Return STATUS_FAILED
Endif
Ifstr(i) $(!STF_NCDETECT) == YES
Ifstr(i) $(!STF_NCOPTION) == $(Option)
Set DetectedCard = TRUE
Endif
Endif
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
Shell $(UtilityInf) RegistryErrorString CANNOT_FIND_COMPONENT_SERVICE
Shell "" ShellError $($R0)
Return STATUS_FAILED
endif
Shell $(UtilityInf) FindService, $(KeyProduct)
Ifstr(i) $($R0) != NO_ERROR
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return STATUS_FAILED
endif
Set !KeyParameters = $($R2)
CloseRegKey $($R1)
Ifstr $(!KeyParameters) == $(KeyNull)
Shell $(UtilityInf) RegistryErrorString CANNOT_FIND_COMPONENT_SERVICE
Shell "" FatalError $($R0)
Return STATUS_FAILED
endif
set ValueName = ""
set ValueData = ""
set ValueStr = ""
set ValueList = {}
EnumRegValue $(!KeyParameters) ValueList
set NetworkAddress = ""
set PCMCIA = 0
ForListDo $(ValueList)
set ValueItem = $($)
set ValueName = *($(ValueItem),1)
set ValueData = *($(ValueItem),4)
Ifstr(i) $(ValueName) == "Transceiver"
set MediaValue = $(ValueData)
else-ifstr(i) $(ValueName) == "Interrupt"
set IRQLevel = $(ValueData)
else-ifstr(i) $(ValueName) == "IoBase"
set IOBaseValue = $(ValueData)
else-ifstr(i) $(ValueName) == "Speed"
set SpeedValue = $(ValueData)
Debug-Output "SpeedValue3 = "$(SpeedValue)
else-ifstr(i) $(ValueName) == "NetworkAddress"
set NetworkAddress = $(ValueData)
else-ifstr(i) $(ValueName) == "PCMCIA"
set PCMCIA = $(ValueData)
else-ifstr(i) $(ValueName) == "ReceiveTimer"
set ReceiveTimer = $(ValueData)
else-ifstr(i) $(ValueName) == "PCCARDAttributeMemoryAddress"
set AttributeMem = $(ValueData)
else-ifstr(i) $(ValueName) == "EarlyTransmit"
set EarlyTransmit = $(ValueData)
else-ifstr(i) $(ValueName) == "Duplex"
set Duplex = $(ValueData)
else-ifstr(i) $(ValueName) == "FlowControl"
set FlowControl = $(ValueData)
endif
EndForListDo
ifstr(i) $(MediaValue) == "AutoDetect"
set MediaTypeValue = 0
else-ifstr(i) $(MediaValue) == "10BaseT"
set MediaTypeValue = 1
else-ifstr(i) $(MediaValue) == "BNC"
set MediaTypeValue = 1
else-ifstr(i) $(MediaValue) == "AUI"
set MediaTypeValue = 1
endif
Shell $(ParamInf) Param_SaveValues
set CurrParamSettings = $($R0)
winagn =+
Shell "" AdapterSetup
IfStr(i) $($R0) != TRUE
Return STATUS_USERCANCEL
endif
ifstr(i) $(MediaValue) == "AutoDetect"
set MediaTypeValue = 0
else-ifstr(i) $(MediaValue) == "10BaseT"
set MediaTypeValue = 1
else-ifstr(i) $(MediaValue) == "BNC"
set MediaTypeValue = 1
else-ifstr(i) $(MediaValue) == "AUI"
set MediaTypeValue = 1
endif
Shell $(ParamInf) Param_SaveValues
Set NewParamSettings = $($R0)
Ifstr(i) $(CurrParamSettings) == {}
Set DiffParamSettings = $(NewParamSettings)
Else
Shell $(ParamInf) Param_DiffValues $(CurrParamSettings)
Set DiffParamSettings = $($R0)
Endif
Debug-Output "Calling Verify DiffParamSettings"
Shell $(ParamInf) Param_VerifyResources $(DiffParamSettings)
Ifstr(i) $($R0) != STATUS_SUCCESSFUL
Debug-Output "Parameter Verify Failed"
Shell $(UtilityInf),RegistryErrorString,VERIFY_WARNING
Shell "" VerifyError $($R0)
ifstr(i) $($R0) != "OK"
goto winagn
endif
endif
Shell "" WriteParameters
IfStr(i) $($R0) == TRUE
Return STATUS_SUCCESSFUL
else
Debug-Output "Configure Adapter Failed"
Return STATUS_FAILED
endif
[NoWay]
read-syms GeneralConstants
Shell "" ShellError "NoWay"
Return STATUS_FAILED
[RemoveAdapter]
read-syms GeneralConstants
read-syms FileConstants
set Option = $(!p:Option)
read-syms RegistryConstants$(Option)
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
$(ProductSoftwareName), $(!NTN_RegBase)
ifstr(i) $($R0) != NO_ERROR
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return STATUS_FAILURE
endif
Return STATUS_SUCCESSFUL
[UpgradeSoftware]
Debug-Output "Trace Message 004"
read-syms GeneralConstants
set SrcDir = $(!p:SrcDir)
set Option = $(!p:Option)
read-syms RegistryConstants$(Option)
ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
Return STATUS_FAILED
endif
set DoCopy = YES
set AddCopy = YES
Shell "" SetCopy $(DoCopy) $(AddCopy) $(SrcDir) "Install-Update"
SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
CloseRegKey $(KeyProduct)
else
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) NetworkCardKey
Ifstr(i) $(NetworkCardKey) == $(KeyNull)
Return STATUS_FAILED
endif
GetRegValue $(NetworkCardKey),"ServiceName", ServiceNameInfo
set ServiceName = *($(ServiceNameInfo), 4)
OpenRegKey $(NetworkCardKey) "" "NetRules" $(MAXIMUM_ALLOWED) NetRuleKey
Ifstr(i) $(NetRuleKey) == $(KeyNull)
Return STATUS_FAILED
endif
CloseRegKey $(NetRules)
CloseRegKey $(NetworkCardKey)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ServiceName) $(MAXIMUM_ALLOWED) ServiceKey
Ifstr(i) $(ServiceKey) == $(KeyNull)
Return STATUS_FAILED
endif
CloseRegKey $(ServiceKey)
endif
Return STATUS_SUCCESSFUL
[AdapterSetup]
set Option = $(!p:Option)
read-syms FileDependentDlg$(!STF_LANGUAGE)
read-syms DialogConstants$(!STF_LANGUAGE)
read-syms FileConstants$(!STF_LANGUAGE)
read-syms GeneralConstants
read-syms FileConstants
read-syms RegistryConstants$(Option)
set Combo1Out = $(!p:IRQLevel)
set-dectohex Combo2Out = $(!p:IOBaseValue)
set MediaValue = $(!p:MediaValue)
set NetworkAddress = $(!p:NetworkAddress)
set DLLPATH = $(!p:DLLPATH)
set-dectohex Combo7Out = $(!p:AttributeMem)
set Combo4Out = $(!p:SpeedValue)
set Combo5Out = $(!p:Duplex)
Debug-Output "SpeedValue4 = "$(Combo4Out)
ifstr(i) $(DLLPATH) != ""
Split-String $(DLLPATH) "\" TempList
QueryListSize ListSize $(TempList)
ifstr(i) *($(TempList), $(ListSize)) != "\"
set DLLPATH = $(DLLPATH)"\"
endif
endif
SetHelpFile $(DLLPATH)lan9000.hlp 30100 30105
set AdapterStatus = FALSE
set Combo3Out = $(MediaValue)
set EditTextIn = {$(NetworkAddress)}
set NotifyFields = {NO, NO, NO}
set EditTextLim = {12}
set EditFocusOn = ""
ifstr(i) $(Option) == "smc91c100"
Debug-Output "SpeedValue5 = "$(!p:SpeedValue)
set SpeedValue = $(!p:SpeedValue)
else
ifint $(!p:ReceiveTimer) == 1
set CheckItemsIn = { "ON" }
else
set CheckItemsIn = { "OFF" }
endif
endif
Debug-Output "DLLPATH = "$(DLLPATH)"lan9000.dll"
loadlibrary "LAN9000 Install Diskette" $(DLLPATH)lan9000.dll DllHandle
RetryDialog =+
Debug-Output "ComboListItemsIn = "$(ComboListItemsIn)
EndWait
Debug-Output "DllHandle = "$(DllHandle)
ui start "InputDlg" $(DllHandle)
Debug-Output "Wait2"
StartWait
Debug-Output "Wait3"
set NewNetworkAddress = *($(EditTextOut), 1)
ifstr(i) $(DLGEVENT) == "FREEBUTTON1"
set OldTemplate = $(DlgTemplate)
set DlgTemplate = ADVANCE
set OldCaption = $(Caption)
set Caption = $(CaptionAdvance)
;;J.C.++
set OldContext = $(HelpContext)
set HelpContext = $(ContextAdvance)
;;J.C.--
set OldCheckItemsIn = $(CheckItemsIn)
set OldComboList = $(ComboListItemsIn)
set OldComboListIn = $(ComboListItemsIn)
ifint $(!p:EarlyTransmit) == 1
set Check2In = "ON"
else
set Check2In = "OFF"
endif
ifint $(!p:FlowControl) == 1
set Check3In = "ON"
else
set Check3In = "OFF"
endif
set Combo5Out = $(!p:Duplex)
set CheckItemsIn = { $(Check2In), $(Check3In) }
EndWait
ui start "Inputdlg" $(DllHandle)
startWait
ui pop 1
set DlgTemplate = $(OldTemplate)
set Caption = $(OldCaption)
set CheckItemsIn = $(OldCheckItemsIn)
set ComboListItemsIn = $(OldComboListIn)
set HelpContext = $(OldContext) ;;J.C.
ifstr(i) $(DLGEVENT) == "CONTINUE"
set Check2Out = *($(CheckItemsOut), 1)
set Check3Out = *($(CheckItemsOut), 2)
ifstr(i) $(Check2Out) == "ON"
set !p:EarlyTransmit = 1
else
set !p:EarlyTransmit = 0
endif
ifstr(i) $(Check3Out) == "ON"
set !p:FlowControl = 1
else
set !p:FlowControl = 0
endif
set !p:Duplex = $(Combo5Out)
endif
goto RetryDialog
endif
ifstr(i) $(DLGEVENT) == "CONTINUE"
ifstr(i) $(Option) != "SMC91C100"
set AdapterStatus = TRUE
endif
ifstr(i) $(NewNetworkAddress) != ""
Split-String $(NewNetworkAddress), "0123456789ABCDEFabcdef", TempList
set HexList = ^(HexDigits, 1)
QueryListSize ListSize $(TempList)
ifint $(ListSize) == 12
set Index1 = 1
set Loop = 1
else
Shell "" WarnError $(BadAddr1)
goto RetryDialog
endif
NetAddrLoop =+
set Temp1 = *($(TempList), $(Index1))
ifcontains(i) $(Temp1) not-in $(HexList)
Shell "" WarnError $(BadAddr2)$(Temp1)
goto RetryDialog
endif
ifint $(Index1) == 2
ifcontains(i) $(Temp1) in { 1,3,5,7,9,b,d,f }
Shell "" WarnError $(BadAddr3)
goto RetryDialog
endif
endif
set-add Index1 = $(Index1), 1
set-add Loop = $(Loop), 1
ifint $(Loop) < 13
goto NetAddrLoop
endif
endif
endif
set-hextodec !p:IOBaseValue = $(Combo2Out)
set !p:IRQLevel = $(Combo1Out)
set !p:NetworkAddress = $(NewNetworkAddress)
set !p:SpeedValue = $(Combo4Out)
set-hextodec !p:AttributeMem = $(Combo7Out)
ui pop 1
ifstr(i) $(DLGEVENT) == "CONTINUE"
ifstr(i) $(Option) == "SMC91C100"
Debug-Output "Media Type Start"
set OldTemplate = $(DlgTemplate)
set DlgTemplate = MEDIA
set OldContext = $(HelpContext)
set HelpContext = $(ContextMedia)
set Combo3Out = $(MediaValue)
EndWait
ui start "InputDlg" $(DllHandle)
StartWait
ui pop 1
set DlgTemplate = $(OldTemplate)
set HelpContext = $(OldContext)
ifstr(i) $(DLGEVENT) == "CONTINUE"
set AdapterStatus = TRUE
set Combo4Out = $(!p:SpeedValue)
set MediaValue = $(Combo3Out)
else
set-dectohex Combo2Out = $(!p:IOBaseValue)
set Combo1Out = $(!p:IRQLevel)
set Combo4Out = $(!p:SpeedValue)
Debug-Output "Media Type Cancel"
goto RetryDialog
endif
endif
endif
ifstr(i) $(DLGEVENT) == "CONTINUE"
IfStr(i) $(!STF_NCDETINFO) == {}
Set !p:BusType = 1
Set !p:BusNumber = 0
Else
Set !p:BusType = *($(!STF_NCDETINFO),5)
Set !p:BusNumber = *($(!STF_NCDETINFO),6)
EndIf
Endif
ifstr(i) $(Option) == "smc9000"
set !p:MediaValue = $(Combo3Out)
else-ifstr(i) $(Option) == "smc91c94"
set !p:MediaValue = $(Combo3Out)
set-hextodec !p:AttributeMem = $(Combo7Out)
else
set !p:MediaValue = $(MediaValue)
Debug-Output "SpeedValue6 = "$(Combo4Out)
set !p:SpeedValue = $(Combo4Out)
; ifint $(Radio1) == 1
; set !p:SpeedValue = 100
; else
; set !p:SpeedValue = 10
; endif
endif
endif
Debug-Output "CheckItemsOut Status = "$(CheckItemsOut)
set Check = *($(CheckItemsOut), 1)
ifstr(i) $(Check) == "ON"
set !p:ReceiveTimer = 1
Debug-Output "**Check Status = ON"
else
set !p:ReceiveTimer = 0
Debug-Output "**Check Status = OFF"
endif
freelibrary $(DllHandle)
Debug-Output "AdapterStatus = "$(AdapterStatus)
return $(AdapterStatus)
[SetCopy]
Debug-Output "Trace Message 001"
read-syms GeneralConstants
read-syms FileConstants
read-syms FileConstants$(!STF_LANGUAGE)
set DoCopy = $($0)
set AddCopy = $($1)
set SrcDir = $($2)
set InstallSection = $($3)
set Needcopy = FALSE
Ifstr(i) $(DoCopy) == "YES"
set NeedCopy = TRUE
else-ifstr(i) $(AddCopy) == "YES"
set NeedCopy = TRUE
else
Return TRUE
endif
set BuiltIn = "YES"
ifstr(i) $(!NTN_Origination) == "NCPA"
set BuiltIn = "NO"
endif
Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) $(BuiltIn)
Ifstr(i) $($R0) == STATUS_FAILED
Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
Shell "" FatalError $($R0)
Return FALSE
Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
Return FALSE
Endif
Set SrcDir = $($R1)
install $(InstallSection)
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
Shell "" FatalError $($R0)
Return FALSE
endif
Return TRUE
[SetSoftware]
Debug-Output "Trace Message 002"
read-syms GeneralConstants
read-syms FileConstants
read-syms date
set Option = $(!p:Option)
read-syms RegistryConstants$(Option)
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
$(ProductSoftwareName), +
$(ProductSoftwareName), +
$(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
$(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
$(NetEventDLL)
Ifstr(i) $($R0) != NO_ERROR
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
endif
;
; At this point:
; $R1 contains the product version key handle;
; $R2 contains the NetRules subkey handle;
; $R3 contains the new Services key handle; and
; $R4 contains the Parameters key
; $R5 contains the Linkage Key
;
set KeyProduct = $($R1)
Set SoftNetRulesKey = $($R2)
CloseRegKey $($R3)
CloseRegKey $($R4)
CloseRegKey $($R5)
Ifstr(i) $($R0) != NO_ERROR
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
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),$($0)}}
Shell $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
Ifstr(i) $($R0) != NO_ERROR
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
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)
CloseRegKey $(KeyProduct)
CloseRegKey $(SoftNetRulesKey)
Ifstr(i) $($R0) != NO_ERROR
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
endif
return TRUE
[SetHardware]
Debug-Output "Trace Message 003"
read-syms GeneralConstants
read-syms FileConstants
read-syms date
set Option = $(!p:Option)
read-syms RegistryConstants$(Option)
Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
Ifstr(i) $($R0) != NO_ERROR
CloseRegKey $($R1)
CloseRegKey $($R2)
CloseRegKey $($R3)
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
endif
;
; At this point:
; $R1 Registry key variable for HARDWARE\Netcard\(n)
; $R2 Registry key variable for HARDWARE\Netcard\(n)\\NetRules
; $R3 Registry key handle for <service>\Parameters key
; $R4 Adapter number assigned to adapter
; $R5 Service name generated by combining svc name with adapter number
;
set !KeyParameters = $($R3)
set KeyAdapterRules = $($R2)
set AdapterNumber = $($R4)
set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
{Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareTitle)},+
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescription)},+
{ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),$($0)}}
Shell $(UtilityInf), AddValueList, $($R1), $(NewValueList)
Ifstr(i) $($R0) != NO_ERROR
CloseRegKey $($R1)
CloseRegKey $($R2)
CloseRegKey $($R3)
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
endif
CloseRegKey $($R1)
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)}}
Shell $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
Ifstr(i) $($R0) != NO_ERROR
CloseRegKey $(!KeyParameters)
CloseRegKey $(KeyAdapterRules)
Shell $(UtilityInf) RegistryErrorString $($R0)
Shell "" ShellError $($R0)
Return FALSE
endif
CloseRegKey $(KeyAdapterRules)
return TRUE
[WriteParameters]
Debug-Output "Trace Message 005"
read-syms FileConstants
read-syms GeneralConstants
set Option = $(!p:Option)
read-syms RegistryConstants$(Option)
set Base = $(!p:IOBaseValue)
set Irq = $(!p:IRQLevel)
set Media = $(!p:MediaValue)
set NetworkAddress = $(!p:NetworkAddress)
set BusType = $(!p:BusType)
set BusNumber = $(!p:BusNumber)
set SpeedValue = $(!p:SpeedValue)
set ReceiveTimer = $(!p:ReceiveTimer)
set PCMCIA = $(!p:PCMCIA)
set AttributeMemValue = $(!p:AttributeMem)
set EarlyTransmit = $(!p:EarlyTransmit)
set FlowControl = $(!p:FlowControl)
set Duplex = $(!p:Duplex)
Debug-Output "SpeedValue7 = "$(SpeedValue)
ifint $(BusType) == 8
set PCMCIA = 1
set BusType = 1
endif
Set NewValueList = {{BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusType)},+
{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
{MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
{BusNumber,$(NoTitle),$(!REG_VT_DWORD),0},+
{Transceiver,$(NoTitle),$(!REG_VT_SZ),$(Media)},+
{Interrupt,$(NoTitle),$(!REG_VT_DWORD),$(Irq)},+
{IoBase,$(NoTitle),$(!REG_VT_DWORD),$(Base)},+
{Speed,$(NoTitle),$(!REG_VT_SZ),$(SpeedValue)},+
{ReceiveTimer,$(NoTitle),$(!REG_VT_DWORD),$(ReceiveTimer)},+
{EarlyTransmit,$(NoTitle),$(!REG_VT_DWORD),$(EarlyTransmit)},+
{FlowControl,$(NoTitle),$(!REG_VT_DWORD),$(FlowControl)},+
{Duplex,$(NoTitle),$(!REG_VT_SZ),$(Duplex)},+
{NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(NetworkAddress)}}
Shell $(UtilityInf), AddValueList, $(!KeyParameters), $(NewValueList)
Set Status = $($R0)
IfInt $(PCMCIA) == 1
Set NewValueList = {{Pcmcia,$(NoTitle),$(!REG_VT_DWORD),1},+
{PCCARDAttributeMemoryAddress,$(NoTitle),$(!REG_VT_DWORD),$(!p:AttributeMem)},+
{PCCARDAttributeMemorySize,$(NoTitle),$(!REG_VT_DWORD),4096},+
{InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(Irq)},+
{IoBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(Base)}}
Shell $(UtilityInf), AddValueList, $(!KeyParameters), $(NewValueList)
Set Status = $($R0)
Shell "" SetUpPcmcia
else
DeleteRegValue $(!KeyParameters) "Pcmcia"
DeleteRegValue $(!KeyParameters) "IoBaseAddress"
DeleteRegValue $(!KeyParameters) "InterruptNumber"
endif
CloseRegKey $(!KeyParameters)
Ifstr(i) $(Status) != NO_ERROR
Shell $(UtilityInf) RegistryErrorString $(Status)
Shell "" ShellError $($R0)
Return FALSE
endif
Return TRUE
[ShellError]
Debug-Output "Trace Message 006"
read-syms DialogConstants$(!STF_LANGUAGE)
read-syms FileConstants$(!STF_LANGUAGE)
set DlgType = "MessageBox"
set STF_MB_TITLE = $(FunctionTitle)
set STF_MB_TEXT = $($0)
set STF_MB_TYPE = 1
set STF_MB_ICON = 3
set STF_MB_DEF = 1
ifstr(i) $(STF_MB_TEXT) == ""
set STF_MB_TEXT = "Unknown Error"
endif
ui start "Error Message"
Return
[Install-Option]
Debug-Output "Trace Message 007"
set STF_VITAL = ""
ifstr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-SMC9000 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
endif
Exit
[Install-Update]
Debug-Output "Trace Message 008"
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
AddSectionFilesToCopyList Files-SMC9000 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
; AddSectionFilesToCopyList Files-lanncdet $(SrcDir) $(!STF_WINDOWSSYSPATH)
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
exit
;[Install-Dll]
; set STF_VITAL = ""
; AddSectionFilesToCopyList Files-SMC9000 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
; AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
; AddSectionFilesToCopyList Files-lanncdet $(SrcDir) $(!STF_WINDOWSSYSPATH)
; set !STF_NCPA_FLUSH_COPYLIST = TRUE
; CopyFilesInCopyList
; Exit
[Install-Detection-Dll]
Debug-Output "Trace Message 009"
LibraryProcedure STATUS,$(!LIBHANDLE), CopySingleFile $(SrcDir)"\lanncdet.dll" $(!STF_WINDOWSSYSPATH)"\lanncdet.dll"
exit
[PrepareDetectionDll]
Debug-Output "Trace Message 010"
read-syms GeneralConstants
read-syms FileConstants
read-syms FileConstants$(!STF_LANGUAGE)
Set NewDllName = $($0)
set SrcDir = $(!p:SrcDir)
Set Status = STATUS_FAILED
Set DllValueName = "NetcardDlls"
ifstr(i) $(SrcDir) != ""
Split-String $(SrcDir) "\" TempList
QueryListSize ListSize $(TempList)
ifstr(i) *($(TempList), $(ListSize)) != "\"
set SrcDir = $(SrcDir)"\"
endif
endif
OpenRegKey $(!REG_H_LOCAL) "" "System\Setup" $(MAXIMUM_ALLOWED) KeySetup
Ifstr(i) $(KeySetup) == $(KeyNull)
Debug-Output "System\Setup key is NULL"
Goto PDD_Return
Endif
Set DllFound = 0
GetRegValue $(KeySetup) $(DllValueName) DllNamesValue
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "LastError != Success"
Shell $(UtilityInf),RegistryErrorString,$(RegLastError)
Shell "" FatalError $($R0)
Goto PDD_Return
Endif
Set DllNames = *($(DllNamesValue),4)
Debug-Output "DllNames = "$(DllNames)
ForListDo $(DllNames)
Ifstr(i) $($) == $(NewDllName)
Set DllFound = 1
Endif
EndForListDo
;;xxxx++
Ifint $(DllFound) == 0
;;xxxx--
Set DllNames = >($(DllNames),$(NewDllName))
Set ValueInfo = {$(DllValueName), $(NoTitle), $(!REG_VT_MULTI_SZ), $(DllNames)}
SetRegValue $(KeySetup) $(ValueInfo)
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
Shell "" SetCopy "YES" $(AddCopy) $(SrcDir) "Install-Detection-Dll"
Shell $(ParamInf) Param_ControlDetection DTEND
Shell $(ParamInf) Param_ControlDetection DTSTART
Set Status = STATUS_SUCCESSFUL
Else
Shell $(UtilityInf),RegistryErrorString,$(RegLastError)
Shell "" FatalError $($R0)
Endif
;;xxxx++
Else
set Status = STATUS_SUCCESSFUL
Endif
;;xxxx--
CloseRegKey $(KeySetup)
PDD_Return = +
Debug-Output "Status from PrepareDetectionDll = "$(Status)
Return $(Status)
[FatalError]
Debug-Output "Trace Message 011"
read-syms FileConstants
ifstr(i) $($0) == ""
set Message = "Unknown Error"
else
set Message = $($0)
endif
Shell $(SubroutnInf) SetupMessage $(!STF_LANGUAGE) FATAL $(Message)
Return
[VerifyError]
Debug-Output "Trace Message 012"
read-syms FileConstants
ifstr(i) $($0) == ""
set Message = "Unknown Error"
else
set Message = $($0)
endif
Shell $(SubroutnInf) SetupMessage $(!STF_LANGUAGE) WARNING $(Message)
Return $($R1)
[WarnError]
Debug-Output "Trace Message 013"
read-syms FileConstants
ifstr(i) $($0) == ""
set Message = "Unknown Error"
else
set Message = $($0)
endif
Shell $(SubroutnInf) SetupMessage $(!STF_LANGUAGE) NONFATAL $(Message)
Return
[DebugControl]
Debug-Output "Trace Message 014"
set !DebugOutputControl = 1
return
[SetUpPcmcia]
Debug-Output "Trace Message 015"
Read-Syms GeneralConstants
Read-Syms PcmciaKeys
Debug-Output "Opening PCMCIA DataBase"
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaPath) $(MAXIMUM_ALLOWED) PcmciaKey
IfStr(i) $(PcmciaKey) == $(KeyNull)
Debug-Output "Failed to open "$(PcmciaPath)
Shell "" FatalError "Cannot Open PCMCIA Registry DataBase!"
Return FALSE
EndIf
Debug-Output "Opening SMSC Key"
OpenRegKey $(!REG_H_LOCAL) "" $(SmcPcmciaPath) $(MAXIMUM_ALLOWED) SmcPcmciaKey
IfStr(i) $(SmcPcmciaKey) == $(KeyNull)
Debug-Output "Open failed - creating key"
CreateRegKey $(PcmciaKey) {"Farallon", 0, 0 } "" $(MAXIMUM_ALLOWED) "" SmcPcmciaKey
IfStr(i) $(SmcPcmciaKey) == $(KeyNull)
Debug-Output "Failed to create SMSC key"
Shell "" FatalError "Cannot Create SMC Key in Registry DataBase PCMCIA!"
CloseRegKey $(PcmciaKey)
Return FALSE
EndIf
EndIf
Debug-Output "Opening SMSC 91c94 key = "$(Smc91c94Path)
OpenRegKey $(!REG_H_LOCAL) "" $(Smc91c94Path) $(MAXIMUM_ALLOWED) Smc91c94Key
IfStr(i) $(Smc91c94Key) == $(KeyNull)
Debug-Output "Open failed - creating key"
CreateRegKey $(SmcPcmciaKey) {$(CardKeyName), 0, 0 } "" $(MAXIMUM_ALLOWED) "" Smc91c94Key
IfStr(i) $(Smc91c94Key) == $(KeyNull)
Shell "" FatalError "Cannot Create SMC 91C94 Key in Registry DataBase PCMCIA!"
CloseRegKey $(SmcPcmciaKey)
CloseRegKey $(PcmciaKey)
Return FALSE
EndIf
EndIf
Debug-Output "Writing Driver Keyword"
SetRegValue $(Smc91c94Key) {Driver, 0, $(!REG_VT_SZ), "frln595a"}
CloseRegKey $(Smc91c94Key)
CloseRegKey $(SmcPcmciaKey)
CloseRegKey $(PcmciaKey)
Debug-Output "All done with SetUpPcmcia"
return TRUE
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.