home *** CD-ROM | disk | FTP | other *** search
INI File | 1995-05-19 | 33.8 KB | 1,043 lines |
- ;--
- ;
- ; SMC.INF FOR Ethernet adapters
- ;
- ;--
-
- [Identification]
- OptionType = NetAdapter
- [PlatformsSupported]
- MCA
- ISA
- EISA
- "Jazz-Internal Bus"
- [Options]
- SMC8216
- SMC8013
- SMC8013WPA
- SMC8013EPA
-
- [CardInfo]
- SMCISA = 0, 0, smcisa, 0
- SMC8013WPA = 201, 97, wd8013wpa, 25033
- SMC8013EPA = 200, 97, wd8013epa, 25032
-
- [FileConstants]
- ParamInf = "NCPARAM.INF"
- UtilityInf = "UTILITY.INF"
- subroutineinf = "SUBROUTN.INF"
- SoftwareType = "driver"
- Exit_Code = 0
- NetEventDLL = "%SystemRoot%\System32\netevent.dll"
- IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
- CardList = ^(CardInfo,0)
- Card1ByteList = ^(CardInfo, 1)
- Card2ByteList = ^(CardInfo, 2)
- CardRuleList = ^(CardInfo, 3)
- CardIDList = ^(CardInfo, 4 )
- Card1Byte = *($(Card1ByteList), ~($(CardList), $(Option)))
- Card2Byte = *($(Card2ByteList), ~($(CardList), $(Option)))
- NETCARD_ID = *($(CardIDList), ~($(CardList), $(Option)))
- CardRule = *($(CardRuleList), ~($(CardList), $(Option)))
-
- MCAEthernetCards = { SMC8003EA, SMC8003WA, SMC8013EA, SMC8013WA, +
- SMC8013WPA, SMC8013EPA }
-
- ISAEthernetCards = { SMC8013, SMC8216, SMCISA }
-
-
- TokenRingCards = { WD8115TR }
- Manufacturer = "SMC"
- ProductMajorVersion = "1"
- ProductMinorVersion = "0"
- ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
- ProductSoftwareName = "SMC8000N"
- ProductSoftwareImagePath = "\SystemRoot\System32\drivers\smc8000n.sys"
- NetRuleSoftwareType = "smc8000nSys ndisDriver smc8000nDriver"
- NetRuleSoftwareUse = $(SoftwareType)
- NetRuleSoftwareBindForm = """Smc8000nDriver"" yes no container"
- NetRuleSoftwareClass = {"smc8000nDriver basic"}
- ProductHardwareName = $(Option)
- ;NetRuleHardwareType = "smcisa smcisaAdapter"
- NetRuleHardwareType = $(CardRule)" "$(CardRule)"Adapter"
- NetRuleHardwareTypeMCA = $(CardRule)" "$(CardRule)"Adapter"
- NetRuleHardwareBindForm = " yes yes container"
- ;NetRuleHardwareClass = {"smcisaAdapter basic"}
- NetRuleHardwareClass = {""$(CardRule)"Adapter basic"}
- NetRuleHardwareClassMCA = {""$(CardRule)"Adapter basic"}
- ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
- ParamKeyName = $(!NTN_ServiceBase)$(ProductHardwareName)"\Parameters"
- [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
- [date]
- Now = {} ? $(!LIBHANDLE) GetSystemDate
- [Identify]
- read-syms Identification
- set Status = STATUS_SUCCESSFUL
- set Identifier = $(OptionType)
- set Media = #("Source Media Descriptions", 3, 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 Option = $($1)
-
- ifstr $(Option) == SMC8216
-
- Debug-Output "OEMNADsmc.INF: in contains option is: "$($1)
-
- set Option = SMCISA
- endif
-
- ifstr $(Option) == SMC8013
-
- Debug-Output "OEMNADsmc.INF: in contains option is: "$($1)
-
-
- set Option = SMCISA
- endif
-
- Debug-Output "OEMNADsmc.INF: after contains option is: "$(Option)
-
-
- 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
- Debug-Output "OEMNADWD.INF: STF_CWDIR is: "$(!STF_CWDIR)
- Debug-Output "OEMNADWD.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
- set-subst LF = "\n"
- read-syms GeneralConstants
- read-syms FileConstants
- Shell $(UtilityInf), GetBindingInfo, "WD"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error: cannot get an error string."
- goto ShellCodeError
- endif
-
- Debug-Output "OEMNADsmc.INF: got binding info ok "
-
- set NetRuleSoftwareBindable = $($R1)
- read-syms DialogConstants$(!STF_LANGUAGE)
- ifstr(i) $(!NTN_Origination) == "NCPA"
- set Continue = $(OK)
- endif
- read-syms FileConstants$(!STF_LANGUAGE)
- detect date
- set-title $(FunctionTitle)
- set to = Begin
- set from = Begin
- 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 CommonStatus = STATUS_REBOOT
- set ActivateDetection = TRUE
- set StartLabel = configureadapter
- Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
- Debug-Output "Cannot configure the DEC 100 driver software."
- Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error: cannot get an error string."
- goto ShellCodeError
- endif
- set Error = $($R0)
- set from = end
- set to = end
- goto nonfatalinfo
- endif
- else
- set StartLabel = installadapter
- set OEM_ABANDON_OPTIONS = {}
- set OEM_ABANDON_SOFTWARE = FALSE
- set OEM_ABANDON_ON = TRUE
- set ActivateDetection = TRUE
- endif
-
- ifstr $(Option) != SMCISA
- goto skipdetection
- endif
-
- Debug-Output "OEMNADWD.INF: =================================================="
- Debug-Output "OEMNADWD.INF: STF_CWDIR is: "$(!STF_CWDIR)
- Debug-Output "OEMNADWD.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
- Debug-Output "OEMNADWD.INF: Option is: "$(Option)
- Debug-Output "OEMNADWD.INF: !STF_NCDETECT is: "$(!STF_NCDETECT)
- Debug-Output "OEMNADWD.INF: !STF_NCOPTION is: "$(!STF_NCOPTION)
- Debug-Output "OEMNADWD.INF: !STF_NCDETCARD is: "$(!STF_NCDETCARD)
- Debug-Output "OEMNADWD.INF: !STF_NCDETINFO is: "$(!STF_NCDETINFO)
- Debug-Output "OEMNADWD.INF: =================================================="
- Set DetectedCard = FALSE
-
- Ifstr(i) $(ActivateDetection) != TRUE
- Goto skipdetection
- Endif
- Set TypeList = {{IRQ,IRQ_List,IRQLevel},+
- {IOADDR, IOBaseAddressDecList, IOBaseValue},+
- {MEMADDR, WinBaseAddressDecList, WinBaseValue}}
- Debug-Output "OEMNADWD.INF: Calling Param_BuildTypeLists"
- Shell $(ParamInf) Param_BuildTypeLists $(Option) $(TypeList)
- Set Status = $($R0)
- ifstr(i) $(Status) != STATUS_SUCCESSFUL
- Goto fataldetect
- Endif
- Debug-Output "OEMNADWD.INF: Calling Param_SetDefaults"
- Shell $(ParamInf) Param_SetDefaults {}
- Shell $(ParamInf) HexListFromDecList $(IOBaseAddressDecList)
- Set IOBaseAddressHexList = $($R0)
- Shell $(ParamInf) HexListFromDecList $(WinBaseAddressDecList)
- Set WinBaseAddressHexList = $($R0)
- Ifstr(i) $(!STF_NCDETECT) == YES
- Ifstr(i) $(!STF_NCOPTION) == $(Option)
- Set DetectedCard = TRUE
- Debug-Output "OEMNADWD.INF: Setting DetectedCard to TRUE"
- Endif
- Endif
- skipdetection =+
- 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)
- Debug-Output "ShellCode error: cannot get an error string."
- goto ShellCodeError
- endif
- goto end
- else
- Shell $(UtilityInf), CardExistedDlg
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error: cannot get an error string."
- goto ShellCodeError
- endif
- ifstr(i) $($R1) != "OK"
- set CommonStatus = STATUS_USERCANCEL
- goto end
- endif
- set OldVersionExisted = $(TRUE)
- endif
- endif
-
- ;MCA
-
- Ifstr $(Option) != SMCISA
- Goto installproduct
- Endif
-
- Ifstr(i) $(DetectedCard) != TRUE
- Goto adaptersetup
- Endif
- StartWait
- Shell $(ParamInf) Param_QueryCard $(!STF_NCDETCARD)
- EndWait
- Ifstr(i) $($R0) != STATUS_SUCCESSFUL
- Goto adaptersetup
- Endif
- Set DetectedParams = $($R1)
- Debug-Output "OEMNADWD.INF: Calling Param_SetDefaults to merge detected params"
- Shell $(ParamInf) Param_SetDefaults $(DetectedParams)
- goto adapteroptions
- configureadapter = +
-
- ifstr $(Option) != SMCISA
- goto end
- 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) == "InterruptNumber"
- set IRQLevel = $(ValueData)
- else-Ifstr(i) $(ValueName) == "IOBaseAddress"
- set IOBaseValue = $(ValueData)
- else-Ifstr(i) $(ValueName) == "MemoryMappedBaseAddress"
- set WinBaseValue = $(ValueData)
- endif
- EndForListDo
- adaptersetup =+
- Shell $(ParamInf) Param_ParameterConfidence
- Ifstr(i) $($R0) != STATUS_SUCCESSFUL
- Debug-Output "OEMNADWD.INF: parameter confidence too low to bypass configuration"
- Goto adapteroptions
- Endif
- Ifstr(i) $(DetectedCard) == TRUE
- Ifstr(i) $(!STF_INSTALL_MODE) != CUSTOM
- Goto adapterverify
- Endif
- Endif
- goto adapteroptions
- adapteroptions = +
- set from = adapteroptions
- set WinBaseAddress = *($(WinBaseAddressHexList), ~($(WinBaseAddressDecList),+
- $(WinBaseValue)))
- set IOBaseAddress = *($(IOBaseAddressHexList), ~($(IOBaseAddressDecList),+
- $(IOBaseValue)))
- read-syms FileDependentDlg$(!STF_LANGUAGE)
- ui start "InputDlg"
- ifstr(i) $(DLGEVENT) == "CONTINUE"
- set IRQLevel = $(Combo1Out)
- set WinBaseAddress = $(Combo2Out)
- set IOBaseAddress = $(Combo3Out)
- ui pop 1
- else-ifstr(i) $(DLGEVENT) == "BACK"
- set CommonStatus = STATUS_USERCANCEL
- Debug-Output "Action: exit. Bye."
- ui pop 1
- goto end
- else
- ui pop 1
- Debug-Output "Action: unknown. Bye."
- goto end
- endif
- set WinBaseValue = *($(WinBaseAddressDecList), ~($(WinBaseAddressHexList),+
- $(WinBaseAddress)))
- set IOBaseValue = *($(IOBaseAddressDecList), ~($(IOBaseAddressHexList),+
- $(IOBaseAddress)))
- adapterverify =+
- Ifstr(i) $(DetectedCard) != TRUE
- Goto skipoptions
- Endif
- Debug-Output "OEMNADWD.INF: Calling Param_VerifyCard"
- Shell $(ParamInf) Param_VerifyCard $(!STF_NCDETCARD)
- Ifstr(i) $($R0) == STATUS_SUCCESSFUL
- Debug-Output "OEMNADWD.INF: Param_VerifyCard succeeded"
- Goto skipoptions
- Endif
- Set from = adapteroptions
- Set to = skipoptions
- Shell $(UtilityInf),RegistryErrorString,VERIFY_WARNING
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error: cannot get an error string."
- goto ShellCodeError
- endif
- set Error = $($R0)
- Goto Warning
-
- ;MCA
-
- installproduct = +
-
- StartWait
-
- Shell $(UtilityInf), MCAFindBus, $(Card1Byte), $(Card2Byte)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- ifstr $($R0) != "NO_ERROR"
- set Error = $($R0)
- goto fatal
- endif
- ifstr(i) $($R1) == {}
- set Error = $(CANNOT_FIND_ANY_CARD)
- set CommonStatus = STATUS_USERCANCEL
- set from = "end"
- goto nonfatal
- endif
- set AdapterList = $($R1)
-
- ; goto mcaincluded
-
- skipoptions = +
- ifint $(OldVersionExisted) == $(TRUE)
- ifstr(i) $(!NTN_InstallMode) == configure
- ifstr $(Option) == SMCISA
- goto writeparameters
- ;MCA
- else
- set Error = "Configure: Sorry, not yet implemented."
- goto fatal
- endif
- endif
- endif
-
- mcaincluded = +
- set AdapterList = $($R1)
- 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
- Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), +
- $(ProductSoftwareName), +
- $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
- $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
- $(NetEventDLL)
- Set OEM_ABANDON_SOFTWARE = TRUE
- 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 software components"
- CloseRegKey $($R1)
- CloseRegKey $($R2)
- CloseRegKey $($R3)
- CloseRegKey $($R4)
- CloseRegKey $($R5)
- goto fatalregistry
- endif
- Set SoftProductKey = $($R1)
- Set SoftNetRuleKey = $($R2)
- Set SoftServiceKey = $($R3)
- Set SoftParameterKey = $($R4)
- Set SoftLinkageKey = $($R5)
-
- Debug-Output "softlinkage #1 :"$($R5)
-
- 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, $(SoftProductKey), $(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 $(SoftProductKey)
- CloseRegKey $(SoftNetRuleKey)
- CloseRegKey $(SoftServiceKey)
- CloseRegKey $(SoftParameterKey)
- CloseRegKey $(SoftLinkageKey)
- 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, $(SoftNetRuleKey), $(NewValueList)
-
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error."
- goto ShellCodeError
- endif
- set RegistryErrorIndex = $($R0)
- CloseRegKey $(SoftProductKey)
- CloseRegKey $(SoftNetRuleKey)
- CloseRegKey $(SoftServiceKey)
- CloseRegKey $(SoftParameterKey)
- CloseRegKey $(SoftLinkageKey)
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- EndWait
- Debug-Output "Resgitry error: add value list."
- goto fatalregistry
- endif
- endif
-
- set BusNum = *($($),1)
-
- ;MCA
-
- ifstr $(Option) != SMCISA
- ForListDo $(AdapterList)
- set BusNum = *($($),1)
- set SlotNum = *($($),2)
- Debug-Output $(BusNum)
- Debug-Output $(SlotNum)
- Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(BusNum), +
- $(SlotNum), $(ProductHardwareDescriptionMCA), $(ProductHardwareName)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- ifstr $($R0) != "NO_ERROR"
- set Error = $($R0)
- goto fatal
- endif
- ifstr(i) $($R1) != "YES"
- Debug-Output " what is this : "$(R4)
- Debug-Output $($R4)
- 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 HardNetCardKey = $($R1)
- Set HardNetRuleKey = $($R2)
- Set HardParameterKey = $($R3)
- set AdapterNumber = $($R4)
- set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
- {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareTitleMCA)},+
- {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescriptionMCA)},+
- {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
- {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
- {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
- Shell $(UtilityInf), AddValueList, $(HardNetCardKey), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- Shell $(UtilityInf), GetBusTypeNum
- set BusTypeNum = $($R1)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error."
- goto ShellCodeError
- endif
- IfContains $(Option) in $(MCAEthernetCards)
- set CardMediaType = 1
- set NewValueList = {{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
- {McaPosId,$(NoTitle),$(!REG_VT_DWORD),$(NETCARD_ID)},+
- {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)},+
- {SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)},+
- {MediaType,$(NoTitle),$(!REG_VT_DWORD), $(CardMediaType)}}
- else
- set CardMediaType = 2
- set NewValueList = {{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
- {McaPosId,$(NoTitle),$(!REG_VT_DWORD),$(NETCARD_ID)},+
- {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)},+
- {SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)},+
- {MediaType,$(NoTitle),$(!REG_VT_DWORD), $(CardMediaType)},+
- {MaximumPacketSize,$(NoTitle),$(!REG_VT_DWORD), 8192}}
- endif
- Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
- set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
- set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareTypeMCA)},+
- {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
- {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClassMCA)}, +
- {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
- Shell $(UtilityInf), AddValueList, $(HardNetRuleKey), $(NewValueList)
- CloseRegKey $(HardNetCardKey)
- CloseRegKey $(HardNetRuleKey)
- CloseRegKey $(HardParameterKey)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- endif
- EndForListDo
- EndWait
- goto successful
- endif
-
- 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)
- 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"
- Debug-Output $(RegistryErrorIndex)
- 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)"] "$(ProductHardwareTitle)},+
- {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescription)},+
- {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
- {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 = """"$(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)
- 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)
- goto writeparameters
- writeparameters = +
- Shell $(UtilityInf), GetBusTypeNum
- set BusTypeNum = $($R1)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error."
- goto ShellCodeError
- endif
- IfContains $(Option) in $(ISAEthernetCards)
- set CardMediaType = 1
- set NewValueList = {+
- {InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(IRQLevel)},+
- {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
- {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)},+
- {IOBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(IOBaseValue)},+
- {MemoryMappedBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(WinBaseValue)},+
- {MediaType,$(NoTitle),$(!REG_VT_DWORD),$(CardMediaType)}+
- }
- else
- set CardMediaType = 2
- set NewValueList = {+
- {InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(IRQLevel)},+
- {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
- {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)},+
- {IOBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(IOBaseValue)},+
- {MemoryMappedBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(WinBaseValue)},+
- {MediaType,$(NoTitle),$(!REG_VT_DWORD),$(CardMediaType)},+
- {MaximumPacketSize,$(NoTitle),$(!REG_VT_DWORD),8192}+
- }
- endif
- Shell $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error."
- goto ShellCodeError
- endif
- set RegistryErrorIndex = $($R0)
- CloseRegKey $(KeyParameters)
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- Debug-Output "Registry error: Add value list"
- goto fatalregistry
- endif
- EndWait
- goto successful
- bindingadapter =+
- set Error = "Binding: Sorry, not yet implemented."
- goto fatal
- removeadapter = +
- Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
- Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
- $(ProductSoftwareName)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error"
- goto ShellCodeError
- endif
- set RegistryErrorIndex = $($R0)
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- goto fatalregistry
- endif
- else
- Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), $(!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
- endif
- goto end
- UpgradeSoftware = +
- ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
- OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
- Ifstr $(KeyProduct) != $(KeyNull)
- GetRegValue $(KeyProduct),"MajorVersion", VersionInfo
- set Version = *($(VersionInfo), 4)
- Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error"
- goto ShellCodeError
- endif
- set !UG_Filename = $($R0)
- ifstr(i) $(!UG_Filename) != ""
- install "Install-Update"
- ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
- goto fatal
- endif
- endif
- SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
- SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
- ifint $(Version) != $(ProductVersion)
- endif
- CloseRegKey $(KeyProduct)
- else
- goto fatalregistry
- endif
- else
- OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) +
- $(MAXIMUM_ALLOWED) NetworkCardKey
- Ifstr(i) $(NetworkCardKey) != $(KeyNull)
- GetRegValue $(NetworkCardKey),"ServiceName", ServiceNameInfo
- set ServiceName = *($(ServiceNameInfo), 4)
- OpenRegKey $(NetworkCardKey) "" "NetRules" +
- $(MAXIMUM_ALLOWED) NetRuleKey
- Ifstr(i) $(NetRuleKey) != $(KeyNull)
- else
- goto fatalregistry
- endif
- CloseRegKey $(NetRules)
- CloseRegKey $(NetworkCardKey)
- else
- goto fatalregistry
- endif
- OpenRegKey $(!REG_H_LOCAL) "" +
- $(!NTN_ServiceBase)"\"$(ServiceName) +
- $(MAXIMUM_ALLOWED) ServiceKey
- Ifstr(i) $(ServiceKey) != $(KeyNull)
- CloseRegKey $(ServiceKey)
- else
- goto fatalregistry
- endif
- endif
-
-
- ;
- ; All I want to do is copy a new driver over the old one
- ;
-
-
- install "Install-Update"
-
- ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
- goto fatal
- endif
-
- goto end
- successful = +
- goto end
- abandon = +
- ForListDo $(OEM_ABANDON_OPTIONS)
- Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), $($)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "ShellCode error"
- 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)
- Debug-Output "ShellCode error"
- 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 CommonStatus = STATUS_USERCANCEL
- Set Severity = STATUS
- 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)
- Debug-Output "ShellCode error: cannot get an error string."
- 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 = $(ShellCodeErrorTitle)
- set STF_MB_TEXT = $(ShellCodeErrorText)
- 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)
- [Install-Option]
- set STF_VITAL = ""
- ifstr(i) $(AddCopy) == "YES"
- AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
- endif
- ifstr(i) $(DoCopy) == "YES"
- set !STF_NCPA_FLUSH_COPYLIST = TRUE
- CopyFilesInCopyList
- endif
- ifstr(i) $(DoConfig) == "YES"
- endif
- Exit
- [Install-Update]
- set STF_VITAL = ""
- set STF_OVERWRITE = "VERIFYSOURCEOLDER"
- AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
- ; AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
- set !STF_NCPA_FLUSH_COPYLIST = TRUE
- CopyFilesInCopyList
- exit
- [Source Media Descriptions]
- ; 1 = "Windows NT Setup Disk #1" , TAGFILE = disk1
- ; 2 = "Windows NT Setup CD-ROM Disk" , TAGFILE = disk2
- 3 = "SMC SUPER DISK" , TAGFILE = DISK.ID
- [ProductType]
- STF_PRODUCT = Winnt
- STF_PLATFORM = I386
- [Files-Inf]
- 3,oemsetup.inf, SIZE=1000, RENAME=$(!UG_Filename)
- [Files-SMCISA]
- 3,SMC8000N.SYS , SIZE=36864
- [Files-SMC8003EA]
- 3,SMC8000N.SYS , SIZE=36864
- [Files-SMC8003WA]
- 3,SMC8000N.SYS , SIZE=36864
- [Files-SMC8013EPA]
- 3,SMC8000N.SYS , SIZE=36864
- [Files-SMC8013WPA]
- 3,SMC8000N.SYS , SIZE=36864
-
- [LanguagesSupported]
- ENG
- [OptionsTextENG]
- SMC8216 = "SMC EtherCard Elite Ultra "
- SMC8013 = "SMC EtherCard Plus Elite "
- SMC8013WPA = "SMC 8013WP/A EtherCard Plus Elite"
- SMC8013EPA = "SMC 8013EP/A EtherCard Plus Elite"
-
- [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 = "SMC Adapter Card Setup"
- ProductSoftwareDescription = "SMC EtherCard Family Driver"
- ProductHardwareDescription = "SMC EtherCard Plus Elite/Ultra Series Adapter"
- ProductHardwareDescriptionMCA = "SMC "$(Option)" EtherCard Plus Elite"
- ProductSoftwareTitle = "SMC EtherCard Plus Elite Ultra Series Driver"
- ProductHardwareTitle = "SMC ISA EtherCard Series "
- ;ProductHardwareTitleMCA = "SMC Micro Channel Adapter"
- ProductHardwareTitleMCA = $(Option)" EtherCard Plus Elite"
- ShellCodeErrorTitle = "Error: "$(FunctionTitle)
- ShellCodeErrorText = "Shell Code Error."
- [DialogConstantsENG]
- Help = "&Help"
- Exit = "Cancel"
- OK = "OK"
- HelpContext = ""
- Continue = "Continue"
- Cancel = "Cancel"
- [FileDependentDlgENG]
- Combo1Label = "&IRQ Level:"
- Combo2Label = "&Memory Base Address:"
- Combo3Label = "I/&O Port Address:"
- DlgType = "MultiCombo"
- DlgTemplate = "WD"
- Caption = $(FunctionTitle)
- Combo1List = $(IRQ_List)
- Combo1Out = $(IRQLevel)
- Combo2List = $(WinBaseAddressHexList)
- Combo2Out = $(WinBaseAddress)
- Combo3List = $(IOBaseAddressHexList)
- Combo3Out = $(IOBaseAddress)
- ComboListItemsIn = {Combo1List, Combo2List, Combo3List}
- ComboListItemsOut = {Combo1Out, Combo2Out, Combo3Out}
- EditTextIn = ""
- EditTextLim = ""
- NotifyFields = {NO, NO, NO}
- HelpContext = $(!IDH_DB_OEMNADWD_INS)
-
-
-