OEMSETUP.INF Driver File Contents (SP136T.zip)

;
; PCMCIA 10_100M+56K LANMODEM Card (LAN) INF file for Windows NT
;
; (C) Copyright 1999-2000. PCMCIA Technology Inc. All rights reserved

[Identification]
	OptionType = NetAdapter
[PlatformsSupported]
	ISA
	EISA
	PCMCIA
	"Jazz-Internal Bus"
	PCI
[Options]
	LANMODEM
[FileConstants]
UtilityInf      = "UTILITY.INF"
ParamInf        = "NCPARAM.INF"
subroutineinf   = "SUBROUTN.INF"
SoftwareType    = "driver"
Exit_Code       = 0
NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
Manufacturer    = "PCMCIA"
ProductMajorVersion     = "1"
ProductMinorVersion     = "05"
ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
ProductSoftwareName     = "MFLANDIS"
ProductSoftwareImagePath = "\SystemRoot\System32\drivers\MFLANDIS.sys"
NetRuleSoftwareType     = "MFLANDISSys ndisDriver MFLANDISDriver"
NetRuleSoftwareUse      = $(SoftwareType)
NetRuleSoftwareBindForm = """MFLANDISSys"" yes no container"
NetRuleSoftwareClass    = {"MFLANDISDriver basic"}
NetRuleSoftwareBindable = {"MFLANDISDriver MFLANDISAdapter non exclusive 100"}
ProductHardwareName     = "MFLANDIS"
NetRuleHardwareType     = "MFLANDIS MFLANDISAdapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass    = {"MFLANDISAdapter basic"}
ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
PcmciaKeyName   = $(!NTN_ServiceBase)"\Pcmcia\DataBase"
CardWizardKeyName   = $(!NTN_ServiceBase)"\resman\MacDataBase"
VersionKeyName  = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion"
;DialogDllName   = "MFLANDIS.dll"

;********************* LAN Device resource list BEGIN
LanIRQList         = ^(LanIRQChoices, 1)
LanIRQValues       = ^(LanIRQChoices, 2)
LanIOBaseList      = ^(LanIOBaseChoices,1)
LanIOBaseValues    = ^(LanIOBaseChoices,2)
ConnectionTypeList = ^(ConnectionTypeChoices, 1)
ConnectionTypeValues = ^(ConnectionTypeChoices, 2)

MemBaseList        = ^(MemBaseChoices, 1)
MemBaseValues      = ^(MemBaseChoices, 2)

;********************* Modem Device resource list BEGIN ********
ModemIOBaseList    = ^(ModemIOBaseChoices, 1)
ModemIOBaseValues  = ^(ModemIOBaseChoices, 2)
ModemIRQList       = ^(ModemIRQChoices, 1)
ModemIRQValues     = ^(ModemIRQChoices, 2)
ComPortList        = ^(ComPortChoices, 1)
ComPortValues      = ^(ComPortChoices, 2)

[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", 1, 1)
	Return $(Status) $(Identifier) $(Media)
[ReturnOptions]
	set Status        = STATUS_FAILED
	set OptionList     = {}
	set OptionTextList = {}
	set LanguageList = ^(LanguagesSupported, 1)
	Ifcontains(i) $($0) in $(LanguageList)
		ifstr(i) $($1) == ""
		   goto returnoptions
		endif
		set PlatformList = ^(PlatformsSupported, 1)
		Ifcontains(i) $($1) in $(PlatformList)
		   goto returnoptions
		else
		   set Status = STATUS_NOTSUPPORTED
		   goto finish_ReturnOptions
		endif
	else
		set Status = STATUS_NOLANGUAGE
		goto finish_ReturnOptions
	endif
returnoptions = +
	set OptionList     = ^(Options, 1)
	set OptionTextList = ^(OptionsText$($0), 1)
	set Status         = STATUS_SUCCESSFUL
finish_ReturnOptions = +
	Return $(Status) $(OptionList) $(OptionTextList)
[InstallOption]
	Set !G:DebugOutputControl = 1
	set Option   = $($1)
	set SrcDir   = $($2)
	set AddCopy  = $($3)
	set DoCopy   = $($4)
	set DoConfig = $($5)
	set LanguageList = ^(LanguagesSupported, 1)
	Ifcontains(i) $($0) NOT-IN $(LanguageList)
		Return STATUS_NOLANGUAGE
	endif
	set-subst LF = "\n"
	read-syms GeneralConstants
	read-syms FileConstants
	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 = +
;; Irving +
;; Determine the PCMCIA status
	set CurrentVersionValue = ""
	OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows Nt\CurrentVersion" $(!REG_KEY_READ) CurVerKey
	Ifstr(i) $(CurVerKey) != ""
		GetRegValue $(CurVerKey) "CurrentVersion" CurVerValue
		CloseRegKey $(CurVerKey)
	Endif

	set DirectEnable = TRUE
	ifstr(i) (*($(CurVerValue),4)) == "(4.0)"
		OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Enum\Root\LEGACY_PCMCIA\0000" $(!REG_KEY_READ) PCMCIAKey
		Ifstr(i) $(PCMCIAKey) != ""
			GetRegValue $(PCMCIAKey) "StatusFlags" PCMCIAFlag
			CloseRegKey $(PCMCIAKey)
			set PCMCIAStatusFlag = *($(PCMCIAFlag), 4)
			Ifint $(PCMCIAStatusFlag) == 8
				set DirectEnable = FALSE
			endif
		Endif
	endif
;; Irving - 
	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 PCMCIA 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

;---------------------------------------------------------------------
; Set default values
;
;       LAN IRQ = 5
;       LAN I/O = 300
;       Mem Addr. = D4000
;       Modem I/O = 3E8
;       Modem IRQ = 3
;       Modem = COM 3
;---------------------------------------------------------------------
	set LanIRQValue      = *($(LanIRQValues), 4)
	set LanIOBaseValue   = *($(LanIOBaseValues), 1)
	set ConnectionTypeValue = *($(ConnectionTypeValues), 1)
	set MemBaseValue     = *($(MemBaseValues), 2)
	set ModemIOBaseValue = *($(ModemIOBaseValues), 2)
	set ModemIRQValue    = *($(ModemIRQValues), 2)
	set ComPortValue     = *($(ComPortValues), 2)

	Set DetectedCard = FALSE
	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, $(ProductSoftware$(Option)Title),+
			   $(ProductVersion)
		   ifint $($ShellCode) != $(!SHELL_CODE_OK)
			   Debug-Output "ShellCode error: cannot get an error string."
			   goto ShellCodeError
		   endif
		   goto end
		else
		   Set Error = "Windows NT 3.51 only supports one PCMCIA Network Adapter of the same model in the machine at once!!"
		   goto fatal
		endif
	endif
;    install "Install-Hlp"                   // WHL
;        install "Install-Dll"
	goto adapteroptions
;---------------------------------------------------------------------
configureadapter = +
	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 LanIRQValueIndex = $(ValueData)
		else-ifstr(i) $(ValueName) == "ComIRQ"
			set ModemIRQValueIndex = $(ValueData)
		else-ifstr(i) $(ValueName) == "ConnectionType"
			set ConnectionTypeValueIndex = $(ValueData)
		else-Ifstr(i) $(ValueName) == "PCCARDAttributeMemoryAddress"
			set MemBaseValueIndex  = $(ValueData)
		else-ifstr(i) $(ValueName) == "IoBaseAddress_1"
			set LanIOBaseValueIndex = $(ValueData)
		else-ifstr(i) $(ValueName) == "IoBaseAddress"
			set ModemIOBaseValueIndex = $(ValueData)
		else-ifstr(i) $(ValueName) == "ComPort"
			set ComPortValueIndex = $(ValueData)
		else-ifstr(i) $(ValueName) == "NetworkAddress"
			set NetworkAddress = $(ValueData)
		endif
	EndForListDo
;---------------------------------------------------------------------
adapteroptions = +
	set LanIRQValue = *($(LanIRQList), ~($(LanIRQValues),$(LanIRQValueIndex)))
	ifstr(i) $(LanIRQValue) == ""
		set LanIRQValue = *($(LanIRQList), 4)
	endif
	set LanIOBaseValue = *($(LanIOBaseList), ~($(LanIOBaseValues),$(LanIOBaseValueIndex)))
	ifstr(i) $(LanIOBaseValue) == ""
		set LanIOBaseValue = *($(LanIOBaseList), 1)
	endif
	set ConnectionTypeValue = *($(ConnectionTypeList), ~($(ConnectionTypeValues),$(ConnectionTypeValueIndex)))
	ifstr(i) $(ConnectionTypeValue) == ""
		set ConnectionTypeValue = *($(ConnectionTypeList), 1)
	endif

	Debug-Output "Original Configuration:"
	Debug-Output "LanIRQValue = "$(LanIRQValue)
	Debug-Output "LanIOBaseValue = "$(LanIOBaseValue)
	Debug-Output "ConnectionTypeValue = "$(ConnectionTypeValue)

	set from = adapteroptions
;---------------------------------------------------------------------

;; Irving, Select proper Dialog box
		read-syms FileDependentDlgAuto$(!STF_LANGUAGE)
;; Irving

;    SetHelpFile $(!STF_WINDOWSSYSPATH)"\"$(OptionHelpFile) $(MinHelpId) $(MaxHelpId) $(Help$(Option)Id)    
	ui start "InputDlg"
;        FreeLibrary $(inlib)
	ifstr(i) $(DLGEVENT) == "CONTINUE"
		set LanIRQValueIndex      = $(Combo1Out)
		set LanIOBaseValueIndex   = $(Combo2Out)
		set ConnectionTypeValueIndex     = $(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 LanIRQValue = *($(LanIRQValues), ~($(LanIRQList),$(LanIRQValueIndex)))
	set LanIOBaseValue = *($(LanIOBaseValues), ~($(LanIOBaseList),$(LanIOBaseValueIndex)))
	set ConnectionTypeValue = *($(ConnectionTypeValues), ~($(ConnectionTypeList),$(ConnectionTypeValueIndex)))

skipoptions =+
	ifint $(OldVersionExisted) == $(TRUE)
		ifstr(i) $(!NTN_InstallMode) == configure
			goto writeparameters
		endif
	endif
	StartWait
	ifint $(OldVersionExisted) == $(FALSE)
		ifstr(i) $(!NTN_InstallMode) == "install"
			Ifstr(i) $(DoCopy) == "YES"
				Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
				Ifint $($ShellCode) != $(!SHELL_CODE_OK)
					Goto ShellCodeError
				Else-Ifstr(i) $($R0) == STATUS_FAILED
					Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
					ifint $($ShellCode) != $(!SHELL_CODE_OK)
						goto ShellCodeError
					endif
					set Error = $($R0)
					Goto fatal
				Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
					Goto successful
				Endif
				Set SrcDir = $($R1)
			Endif
			install "Install-Option"
			ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
				Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
				ifint $($ShellCode) != $(!SHELL_CODE_OK)
					goto ShellCodeError
				endif
				set Error = $($R0)
				goto fatal
			endif
		endif

;**************************************
; Add the card to the PCMCIA Database
;**************************************
		OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaKeyName) $(MAXIMUM_ALLOWED) KeyPcmcia
		Ifstr $(KeyPcmcia) != $(KeyNull)
			OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaKeyName)"\PCMCIA" $(MAXIMUM_ALLOWED) KeyPCMCIA
			Ifstr $(KeyPCMCIA) != $(KeyNull)
				; OEM_VENDOR_SORT_NAME Reg Entry exists check if LANMODEM exists
				OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaKeyName)"\PCMCIA\10/100M+56K Multifunction Card" $(MAXIMUM_ALLOWED) KeyLANMODEM
				Ifstr $(KeyLANMODEM) != $(KeyNull)
					DeleteRegTree $(KeyPCMCIA) "10/100M+56K Multifunction Card"
				endif
			else
				; PCMCIA key does not exist, create it
				CreateRegKey $(KeyPcmcia) {"PCMCIA", 0 , "" } "" $(MAXIMUM_ALLOWED) "" KeyPCMCIA
			endif

			CreateRegKey $(KeyPCMCIA) {"10/100M+56K Multifunction Card" , 0 , ""} "" $(MAXIMUM_ALLOWED) "" KeyLANMODEM
			SetRegValue $(KeyLANMODEM) {Driver,$(NoTitle),$(!REG_VT_SZ),MFLANDIS}
			CloseRegKey $(KeyPcmcia)
			CloseRegKey $(KeyPCMCIA)
			CloseRegKey $(KeyLANMODEM)
		endif
;***************************************

		Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
			$(ProductSoftwareName), +
			$(ProductSoftwareName), +
			$(ProductSoftware$(Option)Title), $(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)
		set KeyProduct      = $($R1)
		Set SoftNetRulesKey = $($R2)
		CloseRegKey $($R3)
		CloseRegKey $($R4)
		CloseRegKey $($R5)
		Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
			EndWait
			Debug-Output "Registry error: add software components"
			CloseRegKey $(KeyProduct)
			CloseRegKey $(SoftNetRulesKey)
			goto fatalregistry
		endif
		set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
				    {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
				    {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
				    {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftware$(Option)Title)},+
				    {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftware$(Option)Description)},+
				    {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
				    {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
		Shell  $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
		ifint $($ShellCode) != $(!SHELL_CODE_OK)
			Debug-Output "ShellCode error."
			goto ShellCodeError
		endif
		set RegistryErrorIndex = $($R0)
		Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
			EndWait
			Debug-Output "Registry error: add value list."
			CloseRegKey $(KeyProduct)
			CloseRegKey $(SoftNetRulesKey)
			goto fatalregistry
		endif
		set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
				    {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
				    {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
				    {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
				    {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
				    {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
		Shell  $(UtilityInf), AddValueList, $(SoftNetRulesKey), $(NewValueList)
		ifint $($ShellCode) != $(!SHELL_CODE_OK)
			Debug-Output "ShellCode error."
			goto ShellCodeError
		endif
		set RegistryErrorIndex = $($R0)
		CloseRegKey $(KeyProduct)
		CloseRegKey $(SoftNetRulesKey)
		Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
			EndWait
			Debug-Output "Resgitry error: add value list."
			goto fatalregistry
		endif
	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"
		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)"] "$(ProductHardware$(Option)Title)},+
			    {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(Option)Description)},+
			    {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
			    {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
			    {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
	Shell  $(UtilityInf), AddValueList, $($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 = +
	Debug-Output "Write Parameters"
	Ifstr(i) $(DirectEnable) == FALSE
		; follow the ComPort setting
		set ModemIOBaseValue = *($(ModemIOBaseValues), ~($(ComPortValues),$(ComPortValue)))
		set PCMCIAValue = 1
	else
		set PCMCIAValue = 0
	endif
	set NewValueList = {{InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(LanIRQValue)},+
			    {BusType,$(NoTitle),$(!REG_VT_DWORD),1},+
			    {BusNumber,$(NoTitle),$(!REG_VT_DWORD),0},+
;                      {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
;                      {CardType,$(NoTitle),$(!REG_VT_DWORD),1},+
			    {PCCARDAttributeMemoryAddress,$(NoTitle),$(!REG_VT_DWORD),$(MemBaseValue)},+
			    {PCCARDAttributeMemorySize,$(NoTitle),$(!REG_VT_DWORD),1024},+
			    {PCCARDAttributeMemoryOffset,$(NoTitle),$(!REG_VT_DWORD),0},+
			    {IoBaseAddress_1,$(NoTitle),$(!REG_VT_DWORD),$(LanIOBaseValue)},+
			    {IoBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(ModemIOBaseValue)},+
			    {ConnectionType,$(NoTitle),$(!REG_VT_DWORD),$(ConnectionTypeValue)},+
			    {IoLength_1,$(NoTitle),$(!REG_VT_DWORD),32)},+
			    {IoLength,$(NoTitle),$(!REG_VT_DWORD),8)},+
			    {ComIRQ,$(NoTitle),$(!REG_VT_DWORD),$(ModemIRQValue)},+
			    {ComPort, $(NoTitle),$(!REG_VT_DWORD),$(ComPortValue)},+
			    {Pcmcia,$(NoTitle),$(!REG_VT_DWORD),$(PCMCIAValue)},+
			    {NetworkAddress, $(NoTitle),$(!REG_VT_SZ), $(NetworkAddress)},+
			    {ModemFunction,$(NoTitle),$(!REG_VT_DWORD),1}}
	Shell  $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
	CloseRegKey $(KeyParameters)
	ifint $($ShellCode) != $(!SHELL_CODE_OK)
		Debug-Output "ShellCode error."
		goto ShellCodeError
	endif
	set RegistryErrorIndex = $($R0)
	Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
		Debug-Output "Registry error: Add value list"
		goto fatalregistry
	endif
	EndWait

;; Irving +
;; If CardWizard is there add MACDataBase
	OpenRegKey $(!REG_H_LOCAL) "" $(CardWizardKeyName) $(MAXIMUM_ALLOWED) KeyCardWizard
	Ifstr $(KeyCardWizard) != $(KeyNull)
		OpenRegKey $(!REG_H_LOCAL) "" $(CardWizardKeyName)"\PCMCIA" $(MAXIMUM_ALLOWED) KeyCWPCMCIA
		Ifstr $(KeyCWPCMCIA) != $(KeyNull)
			; OEM_VENDOR_SORT_NAME Reg Entry exists check if LANMODEM exists
			OpenRegKey $(!REG_H_LOCAL) "" $(CardWizardKeyName)"\PCMCIA\10/100M+56K Multifunction Card" $(MAXIMUM_ALLOWED) KeyCWLANMODEM
			Ifstr $(KeyCWLANMODEM) == $(KeyNull)
				CreateRegKey $(KeyCWPCMCIA) {"10/100M+56K Multifunction Card" , 0 , ""} "" $(MAXIMUM_ALLOWED) "" KeyCWLANMODEM
			endif
		else
			; PCMCIA key does not exist, create it
			CreateRegKey $(KeyCardWizard) {"PCMCIA", 0 , "" } "" $(MAXIMUM_ALLOWED) "" KeyCWPCMCIA
			CreateRegKey $(KeyCWPCMCIA) {"10/100M+56K Multifunction Card" , 0 , ""} "" $(MAXIMUM_ALLOWED) "" KeyCWLANMODEM
		endif

		; convert version number from string to decimal
		Split-String "1.10" "." VersionList
		set     Multiplyer  = 256
		set-mul MajorNumber = *($(VersionList), 1), $(Multiplyer)
		set     MinorNumber = *($(VersionList), 3)
		set-add VersionNumber = $(MajorNumber), $(MinorNumber)

		SetRegValue $(KeyCWLANMODEM) {"MacDriverHandle",$(NoTitle),$(!REG_VT_DWORD),0}
		SetRegValue $(KeyCWLANMODEM) {"MacDriverName",$(NoTitle),$(!REG_VT_SZ),"MFLANDIS"}
		SetRegValue $(KeyCWLANMODEM) {"MacDriverState",$(NoTitle),$(!REG_VT_DWORD),1}
		SetRegValue $(KeyCWLANMODEM) {"MacDriverVersion",$(NoTitle),$(!REG_VT_DWORD),$(VersionNumber)}
		SetRegValue $(KeyCWLANMODEM) {"MacSwapCapability",$(NoTitle),$(!REG_VT_DWORD),2}

		CloseRegKey $(KeyCardWizard)
		CloseRegKey $(KeyCWPCMCIA)
		CloseRegKey $(KeyCWLANMODEM)
	endif
;; Irving -

	Ifstr(i) $(DirectEnable) == FALSE
		goto skipSerialSetting
	endif

	OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\Serial\Parameters\ComboSerial" $(MAXIMUM_ALLOWED) ComboSerialHandle
	Ifstr $(ComboSerialHandle) == $(KeyNull)
		OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\Serial\Parameters" $(MAXIMUM_ALLOWED) SerialKey
		CreateRegKey $(SerialKey) {"ComboSerial",0,GenericClass} "" $(MAXIMUM_ALLOWED) "" ComboSerialHandle
		CloseRegKey $(SerialKey)
	endif
	set NewValueList = {{DosDevices,       $(NoTitle),$(!REG_VT_SZ),     "COM"$(ComPortValue)},+
			    {ForceFifoEnable,  $(NoTitle),$(!REG_VT_DWORD),   1},+
			    {Interrupt,        $(NoTitle),$(!REG_VT_DWORD),   $(ModemIRQValue)},+
			    {PortAddress,      $(NoTitle),$(!REG_VT_DWORD),   $(ModemIOBaseValue)}}
	Shell  $(UtilityInf), AddValueList, $(ComboSerialHandle), $(NewValueList)
	CloseRegKey $(NewSerialHandle)

	OpenRegKey $(!REG_H_LOCAL) "" "HARDWARE\DEVICEMAP\SERIALCOMM" $(MAXIMUM_ALLOWED) ComboSerialHandle
	Ifstr $(ComboSerialHandle) == $(KeyNull)
		OpenRegKey $(!REG_H_LOCAL) "" "HARDWARE\DEVICEMAP" $(MAXIMUM_ALLOWED) SerialKey
		CreateRegKey $(SerialKey) {"SERIALCOMM",0,GenericClass} "" $(MAXIMUM_ALLOWED) "" ComboSerialHandle
		CloseRegKey $(SerialKey)
	endif
	SetRegValue $(ComboSerialHandle) {"ComboSerial",$(NoTitle),$(!REG_VT_SZ),"COM"$(ComPortValue)}
	CloseRegKey $(ComboSerialHandle)

	OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports" $(MAXIMUM_ALLOWED) ComboSerialHandle
	Ifstr $(ComboSerialHandle) == $(KeyNull)
		OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows NT\CurrentVersion" $(MAXIMUM_ALLOWED) SerialKey
		CreateRegKey $(SerialKey) {"Ports",0,GenericClass} "" $(MAXIMUM_ALLOWED) "" ComboSerialHandle
		CloseRegKey $(SerialKey)
	endif
	SetRegValue $(ComboSerialHandle) {"COM"$(ComPortValue)":",$(NoTitle),$(!REG_VT_SZ), "9600,n,8,1"}
	CloseRegKey $(ComboSerialHandle)

skipSerialSetting = +
	ifint $($ShellCode) != $(!SHELL_CODE_OK)
		Debug-Output "<DBG> ShellCode error."
		goto ShellCodeError
	endif

	set RegistryErrorIndex = $($R0)

	Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
		Debug-Output "<DBG> Registry error: Add value list"
		goto fatalregistry
	endif

	EndWait

	goto successful

bindingadapter =+
	set Error = "Binding: Sorry, not yet implemented."
	goto fatal
removeadapter = +
	Debug-Output "Remove Adapter"
	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

		Ifstr(i) $(DirectEnable) == TRUE
			OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\Serial\Parameters" $(MAXIMUM_ALLOWED) SerialHandle
			DeleteRegTree $(SerialHandle) "ComboSerial"
			CloseRegKey $(SerialHandle)
		endif

	endif

	OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaKeyName) $(MAXIMUM_ALLOWED) KeyPcmcia
	Ifstr $(KeyPcmcia) != $(KeyNull)
		OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaKeyName)"\PCMCIA" $(MAXIMUM_ALLOWED) KeyPCMCIA
		Ifstr $(KeyPCMCIA) != $(KeyNull)
			OpenRegKey $(!REG_H_LOCAL) "" $(PcmciaKeyName)"\PCMCIA\10/100M+56K Multifunction Card" $(MAXIMUM_ALLOWED) KeyLANMODEM
			Ifstr $(KeyLANMODEM) != $(KeyNull)
				DeleteRegTree $(KeyPCMCIA) "10/100M+56K Multifunction Card"
			endif
			CloseRegKey $(KeyPCMCIA)
			CloseRegKey $(KeyPcmcia)
		endif
	endif
	goto end

UpgradeSoftware = +
	Debug-Output "Upgrate Software"
	OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
	Ifstr $(KeyProduct) != $(KeyNull)
		install "Install-Update"
		ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
			goto fatal
		endif
		SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
		SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
		CloseRegKey $(KeyProduct)
	else
		goto fatalregistry
	endif
	goto end

successful = +
	goto end

abandon = +
	Debug-Output "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-Hlp]
;   set STF_VITAL = ""
;   AddSectionFilesToCopyList Files-Hlp $(SrcDir) $(!STF_WINDOWSSYSPATH)
;   set !STF_NCPA_FLUSH_COPYLIST = TRUE
;   CopyFilesInCopyList
;   Exit
;[Install-Dll]
;   set STF_VITAL = ""
;   AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
;   set !STF_NCPA_FLUSH_COPYLIST = TRUE
;   CopyFilesInCopyList
;   Exit
[Install-Option]
	Debug-Output "Install-Option"
	set STF_VITAL = ""
;    ifstr(i) $(AddCopy) == "YES"
;    AddSectionFilesToCopyList Files-Hlp $(SrcDir) $(!STF_WINDOWSSYSPATH)
		AddSectionFilesToCopyList Files-LANMODEM  $(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]
   Debug-Output "Install-Update"
   set STF_VITAL        = ""
   set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
;  AddSectionFilesToCopyList Files-Hlp $(SrcDir) $(!STF_WINDOWSSYSPATH)
   AddSectionFilesToCopyList Files-LANMODEM $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
   exit
[Source Media Descriptions]
	 1 = "PCMCIA 10_100M+56K LANMODEM Card Driver Diskette"
[ProductType]
STF_PRODUCT  = Winnt
STF_PLATFORM = I386

[Files-Inf]
1,oemsetnt.inf,    SIZE=1000,     RENAME=$(!UG_Filename)

[Files-LANMODEM]
1,MFLANDIS.SYS , SIZE=25000
;1,MDM5622.INF, SIZE=50000, DESTINATION=$(!STF_WINDOWSPATH)\INF

;[Files-Dll]
;1, MFLANDIS.dll , SIZE=3000

[LanguagesSupported]
	ENG

[OptionsTextENG]
	LANMODEM = "PCMCIA 10_100M+56K LANMODEM Card (LAN)"

[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:"
ProductSoftwareLANMODEMDescription = "PCMCIA 10_100M+56K LANMODEM Card (LAN) Driver"
ProductSoftwareLANMODEMTitle       = "PCMCIA 10_100M+56K LANMODEM Card (LAN) Driver"
ProductHardwareLANMODEMDescription = "PCMCIA 10_100M+56K LANMODEM Card (LAN)"
ProductHardwareLANMODEMTitle       = "PCMCIA 10_100M+56K LANMODEM Card (LAN)"
FunctionTitle1   = "PCMCIA 10_100M+56K LANMODEM Card (LAN) Setup"
ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
ShellCodeErrorText      = "Shell Code Error."
[DialogConstantsENG]
Help        = "&Help"
Exit        = "Cancel"
OK          = "OK"
HelpContext = ""
Continue    = "Continue"
Cancel      = "Cancel"


[FileDependentDlgAutoENG]
Combo1Label = "&IRQ Level:"
Combo2Label = "I/O &Port Address:"
Combo3Label = "&Connection Type:"
DlgType = "MultiCombo"
DlgTemplate = "WD"
Caption =  $(FunctionTitle)
Combo1List = $(LanIRQList)
Combo1Out  = $(LanIRQValue)
Combo2List = $(LanIOBaseList)
Combo2Out  = $(LanIOBaseValue)
Combo3List = $(ConnectionTypeList)
Combo3Out  = $(ConnectionTypeValue)
ComboListItemsIn  = {Combo1List, Combo2List, Combo3List}
ComboListItemsOut = {Combo1Out, Combo2Out, Combo3Out}
EditTextIn = ""
EditTextLim = ""
CBOptionsGreyed = {}
NotifyFields = {NO, NO, NO}
HelpContext = ""

[LanIOBaseChoices]
LanIO_1 = "0x300", 768
LanIO_2 = "0x320", 800
LanIO_3 = "0x340", 832
LanIO_4 = "0x360", 864
LanIO_5 = "0x240", 576
LanIO_6 = "0x280", 640

[LanIRQChoices]
LanIRQ_1 = "2",2
LanIRQ_2 = "3",3
LanIRQ_3 = "4",4
LanIRQ_4 = "5",5
LanIRQ_5 = "7",7
LanIRQ_6 = "9",9
LanIRQ_7 = "10",10
LanIRQ_8 = "11",11
LanIRQ_9 = "12",12
LanIRQ_10= "15",15

[ConnectionTypeChoices]
ConnectionType_0 = "AutoSense", 0
ConnectionType_1 = "100 Mbps",  8
ConnectionType_2 = "100 Mbps Full_Duplex", 9
ConnectionType_3 = "10 Mbps",   2
ConnectionType_4 = "10 Mbps Full_Duplex",  3

[MemBaseChoices]
Mem_1 = "0xD0000",851968
Mem_2 = "0xD4000",868352
Mem_3 = "0xD8000",884736
Mem_4 = "0xDC000",901120

[ComPortChoices]
CP_1 = "COM2", 2
CP_2 = "COM3", 3
CP_3 = "COM4", 4

[ModemIOBaseChoices]
ModemIO_1 = "0x2F8",760
ModemIO_2 = "0x3E8",1000
ModemIO_3 = "0x2E8",744

[ModemIRQChoices]
ModemIRQ_1 = "2",2
ModemIRQ_2 = "3",3
ModemIRQ_3 = "4",4
ModemIRQ_4 = "5",5
ModemIRQ_5 = "7",7
ModemIRQ_6 = "9",9
ModemIRQ_7 = "10",10
ModemIRQ_8 = "11",11
ModemIRQ_9 = "12",12
ModemIRQ_10= "15",15

Download Driver Pack

How To Update Drivers Manually

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.

server: web5, load: 0.82