[Identification]
OptionType = NetAdapter
[PlatformsSupported]
ISA
EISA
PCMCIA
[LanguagesSupported]
ENG
[Options]
PCMFAST
[OptionsTextENG]
PCMFAST = "Fast Ethernet PCCard"
[Source Media Descriptions]
1 = "Fast Ethernet PCCard Device Driver Diskette"
[Files-PCMFAST]
1,pcmfast.sys, SIZE=40000
[Files-Dll]
1,pcmfast.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"
SoftwareType = "driver"
NetEventDLL = "%SystemRoot%\System32\netevent.dll;%SystemRoot%\System32\Drivers\Pcmfast.Sys"
Manufacturer = "ARGOSY"
ProductMajorVersion = "3"
ProductMinorVersion = "51"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
ProductSoftwareName = "Pcmfast"
ProductSoftwareImagePath = "\SystemRoot\System32\drivers\pcmfast.sys"
NetRuleSoftwareType = "pcmfastSys ndisDriver pcmfastDriver"
NetRuleSoftwareUse = $(SoftwareType)
NetRuleSoftwareBindForm = """PcmfastSys"" yes no container"
NetRuleSoftwareClass = {"pcmfastDriver basic"}
NetRuleSoftwareBindable = {"pcmfastDriver pcmfastAdapter non exclusive 100"}
ProductHardwareName = "Pcmfast"
NetRuleHardwareType = "pcmfast pcmfastAdapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass = {"pcmfastAdapter basic"}
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
ProductSoftwareDescription = "Fast Ethernet Driver"
ProductSoftwareTitle = "Fast Ethernet Driver"
ProductHardwareDescription = "Fast Ethernet PCCard"
ProductHardwareTitle = "Fast Ethernet PCCard"
[PcmciaKeys]
CardManufacturer = "PCMCIA"
CardKeyName = "Fast Ethernet PCCard"
PcmciaPath = $(!NTN_ServiceBase)"\Pcmcia\DataBase"
PcmciaManufacturePath = $(!NTN_ServiceBase)"\Pcmcia\DataBase\"$(CardManufacturer)
PcmciaProductPath = $(!NTN_ServiceBase)"\Pcmcia\DataBase\"$(CardManufacturer)"\"$(CardKeyName)
PcmciaRMKeyName = $(!NTN_ServiceBase)"\resman"
PcmciaRMDBKeyName = $(!NTN_ServiceBase)"\resman\MacDataBase"
[GeneralConstants]
KeyNull = ""
MAXIMUM_ALLOWED = 33554432
KeyProduct = ""
KeyParameters = ""
PcmciaKey = ""
PcmciaManufactureKey = ""
PcmciaProductKey = ""
NoTitle = 0
OldVersionExisted = FALSE
DriverPath = $(!STF_NTPATH)\drivers
[FileConstantsENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cancel"
ProCancelMsg = "The Fast Ethernet PCCard is not correctly installed."+
"Are you sure you want to cancel copying files?"
ProCancelCap = "Network Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
FunctionTitle = "Fast Ethernet PCCard Setup"
[IRQChoices]
IRQ0 = "3",3
IRQ1 = "4",4
IRQ2 = "5",5
IRQ3 = "7",7
IRQ4 = "9",9
IRQ5 = "10",10
IRQ6 = "11",11
IRQ7 = "12",12
IRQ8 = "15",15
[IOBaseAddrChoices]
Base0 = "0x300",0x0300
Base1 = "0x320",0x0320
Base2 = "0x340",0x0340
Base3 = "0x360",0x0360
[MediaChoices]
Media0 = "AutoDetect"
Media1 = "10BaseT"
Media2 = "BNC"
Media3 = "AUI"
[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
[DialogConstantsENG]
Help = "&Help"
Exit = "Cancel"
OK = "OK"
HelpContext = ""
Continue = "Continue"
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 = "PCMFAST"
Caption = "Fast Ethernet PCCard Setup"
Combo1Label = "&IRQ Level:"
Combo2Label = "I/O &Base:"
Combo3Label = "&Media Type:"
Label3 = "&Network Address:"
Check1Label = "&WatchDog Timer Enable:"
IrqList = ^(IRQChoices, 1)
IoBaseList = ^(IOBaseAddrChoices, 1)
MediaList = ^(MediaChoices, 1)
MediaTypeValue = 0
Combo1List = $(IrqList)
Combo1Out = $(IRQLevel)
Combo2List = $(IoBaseList)
Combo2Out = $(IOBaseAddress)
Combo3List = $(MediaList)
Combo3Out = $(Media)
ComboListItemsIn = {Combo1List, Combo2List, Combo3List}
ComboListItemsOut = {Combo1Out, Combo2Out, Combo3Out}
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
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
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) $(DoSetup) == TRUE
set NetworkAddress = ""
ifint $(MediaTypeValue) == 0
set MediaValue = "AutoDetect"
else
set MediaValue = "10BaseT"
endif
set ReceiveTimer = 0
set DLLPATH = ""
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 =+
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
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)
ifstr(i) $(!NTN_RegBase) == $(ProductKeyName)
Shell $(UtilityInf) RegistryErrorString CANNOT_CONFIGURE_SOFTWARE
Shell "" ShellError $($R0)
Return STATUS_FAILED
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 = ""
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)
else-ifstr(i) $(ValueName) == "NetworkAddress"
set NetworkAddress = $(ValueData)
else-ifstr(i) $(ValueName) == "ReceiveTimer"
set ReceiveTimer = $(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
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 "" WriteParameters
IfStr(i) $($R0) == TRUE
Return STATUS_SUCCESSFUL
else
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)
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]
read-syms GeneralConstants
read-syms FileConstants
set SrcDir = $(!p:SrcDir)
set Option = $(!p: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
set Combo1Out = $(!p:IRQLevel)
set-dectohex Combo2Out = $(!p:IOBaseValue)
set MediaValue = $(!p:MediaValue)
set NetworkAddress = $(!p:NetworkAddress)
set DLLPATH = $(!p:DLLPATH)
ifstr(i) $(DLLPATH) != ""
Split-String $(DLLPATH) "\" TempList
QueryListSize ListSize $(TempList)
ifstr(i) *($(TempList), $(ListSize)) != "\"
set DLLPATH = $(DLLPATH)"\"
endif
endif
set AdapterStatus = FALSE
;; set Combo3Out = $(MediaValue)
set EditTextIn = {$(NetworkAddress)}
set NotifyFields = {NO, NO, NO}
set EditTextLim = {12}
set EditFocusOn = ""
ifint $(!p:ReceiveTimer) == 1
set CheckItemsIn = { "ON" }
else
set CheckItemsIn = { "OFF" }
endif
loadlibrary "Fast Ethernet PCCard Device Driver Diskette" $(DLLPATH)pcmfast.dll DllHandle
RetryDialog =+
EndWait
ui start "InputDlg" $(DllHandle)
StartWait
set NewNetworkAddress = *($(EditTextOut), 1)
ifstr(i) $(DLGEVENT) == "CONTINUE"
set AdapterStatus = TRUE
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)
ui pop 1
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
;; set !p:MediaValue = $(Combo3Out)
set Check = *($(CheckItemsOut), 1)
ifstr(i) $(Check) == "ON"
set !p:ReceiveTimer = 1
else
set !p:ReceiveTimer = 0
endif
freelibrary $(DllHandle)
return $(AdapterStatus)
[SetCopy]
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]
read-syms GeneralConstants
read-syms FileConstants
read-syms date
set Option = $(!p: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]
read-syms GeneralConstants
read-syms FileConstants
read-syms date
set Option = $(!p: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]
read-syms FileConstants
read-syms GeneralConstants
set Option = $(!p: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)
ifint $(BusType) == 8
set BusType = 1
endif
Set NewValueList = {{BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusType)},+
{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
{MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
{Transceiver,$(NoTitle),$(!REG_VT_SZ),$(Media)},+
{Interrupt,$(NoTitle),$(!REG_VT_DWORD),$(Irq)},+
{IoBase,$(NoTitle),$(!REG_VT_DWORD),$(Base)},+
{Speed,$(NoTitle),$(!REG_VT_DWORD),100},+
{ReceiveTimer,$(NoTitle),$(!REG_VT_DWORD),$(ReceiveTimer)},+
{NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(NetworkAddress)},+
{Pcmcia,$(NoTitle),$(!REG_VT_DWORD),1},+
{InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(Irq)},+
{IoBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(Base)}, +
{IOLength,$(NoTitle),$(!REG_VT_DWORD),15}}
Shell $(UtilityInf), AddValueList, $(!KeyParameters), $(NewValueList)
Set Status = $($R0)
Shell "" SetUpPcmcia
CloseRegKey $(!KeyParameters)
Ifstr(i) $(Status) != NO_ERROR
Shell $(UtilityInf) RegistryErrorString $(Status)
Shell "" ShellError $($R0)
Return FALSE
endif
Return TRUE
[ShellError]
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]
set STF_VITAL = ""
ifstr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-PCMFAST $(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]
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
AddSectionFilesToCopyList Files-PCMFAST $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
exit
[Install-Dll]
set STF_VITAL = ""
AddSectionFilesToCopyList Files-PCMFAST $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
Exit
[FatalError]
read-syms FileConstants
ifstr(i) $($0) == ""
set Message = "Unknown Error"
else
set Message = $($0)
endif
Shell $(SubroutnInf) SetupMessage $(!STF_LANGUAGE) FATAL $(Message)
Return
[VerifyError]
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]
read-syms FileConstants
ifstr(i) $($0) == ""
set Message = "Unknown Error"
else
set Message = $($0)
endif
Shell $(SubroutnInf) SetupMessage $(!STF_LANGUAGE) NONFATAL $(Message)
Return
[DebugControl]
set !DebugOutputControl = 1
return
[SetUpPcmcia]
Read-Syms FileConstants
Read-Syms PcmciaKeys
Read-Syms GeneralConstants
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 PCMCIA Manufacture Key"
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaManufacturePath) $(MAXIMUM_ALLOWED) PcmciaManufactureKey
IfStr(i) $(PcmciaManufactureKey) == $(KeyNull)
Debug-Output "Open failed - creating key"
CreateRegKey $(PcmciaKey) {$(CardManufacturer), 0, 0 } "" $(MAXIMUM_ALLOWED) "" PcmciaManufactureKey
IfStr(i) $(PcmciaManufactureKey) == $(KeyNull)
Debug-Output "Failed to create PCMCIA Manufacture key"
Shell "" FatalError "Cannot Create Manufacture Key in Registry DataBase PCMCIA!"
CloseRegKey $(PcmciaKey)
Return FALSE
EndIf
EndIf
Debug-Output "Opening PCMCIA Product Key = "$(PcmciaProductPath)
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaProductPath) $(MAXIMUM_ALLOWED) PcmciaProductKey
IfStr(i) $(PcmciaProductKey) == $(KeyNull)
Debug-Output "Open failed - creating key"
CreateRegKey $(PcmciaManufactureKey) {$(CardKeyName), 0, 0 } "" $(MAXIMUM_ALLOWED) "" PcmciaProductKey
IfStr(i) $(PcmciaProductKey) == $(KeyNull)
Shell "" FatalError "Cannot Create PCMCIA Product Key in Registry DataBase PCMCIA!"
CloseRegKey $(PcmciaManufactureKey)
CloseRegKey $(PcmciaKey)
Return FALSE
EndIf
EndIf
Debug-Output "Writing Driver Keyword"
SetRegValue $(PcmciaProductKey) {Driver, 0, $(!REG_VT_SZ), $(ProductSoftwareName)}
CloseRegKey $(PcmciaProductKey)
CloseRegKey $(PcmciaManufactureKey)
CloseRegKey $(PcmciaKey)
Debug-Output "Opening CardWizard Resource Manager"
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaRMKeyName) $(MAXIMUM_ALLOWED) PcmciaRMKey
ifstr $(PcmciaRMKey) == $(NULL)
Debug-Output "Systemsoft CardWizard service not present"
else
set SystemsoftPresent = $(TRUE)
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaRMDBKeyName) $(MAXIMUM_ALLOWED) PcmciaRMDBKey
ifstr $(PcmciaRMDBKey) == $(NULL)
debug-output "Adding "$(PcmciaRMDBKeyName)
CreateRegKey $(PcmciaRMKey) {"MacDataBase" , 0, 0} "" $(MAXIMUM_ALLOWED) "" PcmciaRMDBKey
CloseRegKey PcmciaRMDBKey
endif
CloseRegKey $(PcmciaRMKey)
endif
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaRMDBKeyName) $(MAXIMUM_ALLOWED) PcmciaRMDBKey
ifstr $(PcmciaRMDBKey) == $(NULL)
Debug-Output "Systemsoft CardWizard service not present"
else
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaRMDBKeyName)"\"$(CardManufacturer) $(MAXIMUM_ALLOWED) PcmciaManufactureKey
ifstr $(PcmciaManufactureKey) == $(NULL)
debug-output "Adding "$(PcmciaRMDBKeyName)"\"$(CardManufacturer)
CreateRegKey $(PcmciaRMDBKey) {$(CardManufacturer), 0, 0} "" $(MAXIMUM_ALLOWED) "" PcmciaManufactureKey
else
debug-output "Manufacture sub key already exist"
endif
OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaRMDBKeyName)"\"$(CardManufacturer)"\"$(CardKeyName) $(MAXIMUM_ALLOWED) PcmciaProductKey
ifstr $(PcmciaProductKey) == $(NULL)
debug-output "Adding "$(PcmciaRMDBKeyName)"\"$(CardManufacturer)"\"$(CardKeyName)
CreateRegKey $(PcmciaManufactureKey) {$(CardKeyName), 0, 0} "" $(MAXIMUM_ALLOWED) "" PcmciaProductKey
SetRegValue $(PcmciaProductKey) {MacDriverHandle, 0, $(!REG_VT_DWORD),0}
SetRegValue $(PcmciaProductKey) {MacDriverName,0,$(!REG_VT_SZ),$(ProductSoftwareName)}
SetRegValue $(PcmciaProductKey) {MacDriverState,0,$(!REG_VT_DWORD),1}
SetRegValue $(PcmciaProductKey) {MacDriverVersion,0,$(!REG_VT_DWORD),$(ProductMajorVersion)$(ProductMinorVersion)}
SetRegValue $(PcmciaProductKey) {MacSwapCapability,0,$(!REG_VT_DWORD),2}
else
debug-output "Device sub key already exist"
GetRegValue $(PcmciaProductKey),+"MacDriverName",GetData
ifstr *($(GetData),7) != $(ProductSoftwareName)
SetRegValue $(PcmciaProductKey) {MacDriverHandle, 0, $(!REG_VT_DWORD),0}
SetRegValue $(PcmciaProductKey) {MacDriverName,0,$(!REG_VT_SZ),$(ProductSoftwareName)}
SetRegValue $(PcmciaProductKey) {MacDriverState,0,$(!REG_VT_DWORD),1}
SetRegValue $(PcmciaProductKey) {MacDriverVersion,0,$(!REG_VT_DWORD),$(ProductMajorVersion)$(ProductMinorVersion)}
SetRegValue $(PcmciaProductKey) {MacSwapCapability,0,$(!REG_VT_DWORD),2}
endif
endif
CloseRegKey $(PcmciaProductKey)
CloseRegKey $(PcmciaManufactureKey)
CloseRegKey $(PcmciaRMDBKey)
endif
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.