;=============================================================================
;
; XPEED ADSL NIC Driver Installation Kit,for A2, WindowsNT4.0
;
; Copyright (c) 1999, XPEED Inc.
;=============================================================================
[IntstallOptions]
Install_ADSL_MAPI = "NO"
Install_AMGM_PROT = "NO"
[Identification]
OptionType = NetAdapter
[PlatformsSupported]
PCI
[Options]
X400MP
;***********************************************************************
;
;***********************************************************************
[AdslModeChoicesX400MP]
AdslMode_0 = "T1.413 Issue2", 1
AdslMode_1 = "G.Dmt", 2
AdslMode_2 = "G.Lite", 8
[FileConstants]
UtilityInf = "UTILITY.INF"
subroutineinf = "SUBROUTN.INF"
SoftwareType = "driver"
Exit_Code = 0
NetEventDLL = "%SystemRoot%\System32\netevent.dll"
IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
Manufacturer = "XPEED"
VendorID = 5233 ;; 1471 (ITeX vendor ID)
ProductSoftwareX400MPName = "X400MP"
ProductSoftwareX400MPTitle = "Xpeed 400 ADSL PCI Adapter"
ProductSoftwareX400MPImagePath = "\SystemRoot\System32\drivers\X400MP.sys"
NetRuleSoftwareX400MPType = "X400MPSys ndisDriver X400MPDriver"
NetRuleSoftwareX400MPUse = $(SoftwareType)
NetRuleSoftwareX400MPBindForm = """X400MPSys"" yes no container"
NetRuleSoftwareX400MPClass = {"X400MPDriver basic"}
NetRuleSoftwareSWX400MPBindable = {"X400MPDriver X400MPAdapter non exclusive 100"}
ProductX400MPMajorVersion = "1"
ProductX400MPMinorVersion = "13"
ProductX400MPVersion = $(ProductX400MPMajorVersion)"."$(ProductX400MPMinorVersion)
OptionHelpFile = "XPEEDADSL.hlp"
ProductHardwareX400MPName = "X400MP"
ProductHardwareX400MPTitle = "Xpeed 400 ADSL PCI Adapter - RFC 1483"
NetRuleHardwareX400MPType = "X400MP X400MPAdapter"
NetRuleHardwareX400MPClass = {"X400MPAdapter basic"}
AdapterX400MPType = 5 ;; PCI board
HelpX400MPId = 20
X400MPCFID = 392 ;; 0x0188
ProductKeyX400MPName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareX400MPName)"\CurrentVersion"
ParamKeyX400MPName = $(!NTN_ServiceBase)"\"$(ProductHardwareX400MPName)"\Parameters"
NetRuleHardwareBindForm = " yes yes container"
VersionKeyName = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion"
TrayIconExe = "XPDIAG.EXE"
OsVersion = 100
AdslModeValue = 1
[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
NT350VersionConstant = "3.50"
NT310VersionConstant = "3.10"
NT400VersionConstant = "4.0"
DefaultVpi ="0"
DefaultVci ="35"
DefaultTxCellQueueLength = "10000"
DefaultRxCellQueueLength = "10000"
MinVpi ="0"
MaxVpi ="255"
MinVci ="0"
MaxVci ="65535"
UpdateMsg ="Setup need to reinstall ADSL Mapi application"
DefaultTxCellQueueLength = "10000"
DefaultRxCellQueueLength = "10000"
DefaultFraming ="0"
DefaultAtuC_VendorID ="0"
DefaultIncTxPower ="0"
DefaultBoardConf ="1"
; Alan Added
DefaultProtocol ="1"
DefaultVpiBert ="0"
DefaultVciBert ="21"
DefaultQoS ="0"
DefaultPCR ="1811"
DefaultSCR ="905"
DefaultMBS ="448"
DefaultAVR ="905"
DefaultMinRate ="1358"
DialogDllName = "xpmp.dll"
[date]
Now = {} ? $(!LIBHANDLE) GetSystemDate
[Identify]
read-syms Identification
set Status = STATUS_SUCCESSFUL
set Identifier = $(OptionType)
set SourceMedia = #("Source Media Descriptions", 1, 1)
Return $(Status) $(Identifier) $(SourceMedia)
[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 CurrLang = $($0)
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"
set-subst DQ = "\42"
read-syms GeneralConstants
read-syms FileConstants
read-syms IntstallOptions
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 $(Function$(Option)Title)
set to = Begin
set from = Begin
set CommonStatus = STATUS_SUCCESSFUL
EndWait
Begin = +
;*********** add this to check correct platform supported********
ifstr(i) $(!STF_PLATFORM) == "Alpha"
set CommonStatus = STATUS_USERCANCEL
goto end
else-ifstr(i) $(!STF_PLATFORM) == "Alpha_AXP"
set CommonStatus = STATUS_USERCANCEL
goto end
endif
;Get NT OS Version
OpenRegKey $(!REG_H_LOCAL) "" $(VersionKeyName) $(MAXIMUM_ALLOWED) KeyVersion
GetRegValue $(KeyVersion),"CurrentVersion",VersionStruct
CloseRegKey $(KeyVersion)
Set NTVersion = *($(VersionStruct),4)
set Help_Directory = "WINNT"
Ifstr(i) $(NTVersion) == $(NT400VersionConstant)
Debug-Output "$(InfFile) :$(NTVersion) = $(NT400VersionConstant) "
else
set Error = "This version of Windows NT is not support by this product"
goto fatal
endif
;****************************************************************
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
Ifstr(i) $(ProductKey$(Option)Name) == $(!NTN_RegBase)
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
set from = end
set to = end
goto nonfatalinfo
else
set StartLabel = configureadapter
endif
else
set StartLabel = installadapter
set OEM_ABANDON_OPTIONS = {}
set OEM_ABANDON_SOFTWARE = FALSE
set OEM_ABANDON_ON = TRUE
endif
set from = $(fatal)
set to = $(fatal)
goto $(StartLabel)
installadapter = +
Debug-Output $(InfName)": Entering InstallAdapter"
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKey$(Option)Name) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
CloseRegKey $(KeyProduct)
ifstr(i) !(NTN_RegBase) == $(ProductKey$(Option)Name)
Shell $(UtilityInf), VerExistedDlg, $(ProductSoftware$(Option)Title),+
$(Product$(Option)Version)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
goto end
else
Shell $(UtilityInf), CardExistedDlg
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) != "OK"
set CommonStatus = STATUS_USERCANCEL
goto end
endif
set OldVersionExisted = $(TRUE)
endif
Endif
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)
;install "Install-Hlp"
endif
Goto installproduct
configureadapter = +
Debug-Output "$(InfFile) : Configureadapter"
Debug-Output $(InfName)": Configure Adapter "$(!NTN_RegBase)
IfStr $(KeyProduct) == $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
IfStr $(KeyProduct) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Debug-Output $(InfName)": Cannot find component product key"
GoTo FatalRegistry
EndIf
EndIf
Debug-Output $(InfName)": Shelling to FindService"
Shell $(UtilityInf) FindService, $(KeyProduct)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": FindService shell failure"
GoTo ShellCodeError
EndIf
IfStr(i) $($R0) != NO_ERROR
Debug-Output $(InfName)": FindService Shell error: "$($R0)
GoTo FatalRegistry
EndIf
Set KeyParameters = $($R2)
CloseRegKey $($R1)
IfStr $(KeyParameters) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Debug-Output $(InfName)": Cannot find component service"
GoTo FatalRegistry
EndIf
Set OldVersionExisted = $(TRUE)
Debug-Output $(InfName)": Refreshing Dialog parameters"
Debug-Output $(InfName)": AdapterNumber set to "$(AdapterNumber)
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) == "modemOpMode"
set AdslModeIndex = $(ValueData)
else-ifstr(i) $(ValueName) == "VPI"
set VPI = $(ValueData)
else-ifstr(i) $(ValueName) == "VCI"
set VCI = $(ValueData)
endif
EndForListDo
set AdslModeValue = *($(AdslModeList), ~($(AdslModeValues),$(AdslModeIndex)))
ifstr(i) $(AdslModeValue) == ""
set AdslModeValue = *($(AdslModeList), 1)
endif
Shell $(ParamInf) Param_SaveValues
Set CurrParamSettings = $($R0)
Debug-Output $(InfName)": Displaying dialog in configureadapter."
debug-output "Vpi ="$(VPI)
debug-output "Vci ="$(VCI)
debug-output "AdslModeValue = "$(AdslModeValue)
debug-output "AdslModeIndex = "$(AdslModeIndex)
; set EditTextIn = {$(VpiValue), $(VciValue)}
restart =+
LoadLibrary "x" $(DialogDllName) hLib
read-syms FileDependentDlg$(!STF_LANGUAGE)
ui start "InputDlg" $(hLib)
set ExitButton = $(ButtonPressed)
Debug-Output " ButtonPressed "$(ButtonPressed)
Debug-Output " DLGEVENT "$(DLGEVENT)
FreeLibrary $(hLib)
ifstr(i) $(DLGEVENT) == "CONTINUE"
set AdslModeIndex = $(Combo1Out)
set VPI = *($(EditTextOut),1)
set VCI = *($(EditTextOut),2)
debug-output "get Vpi ="$(VPI)
debug-output "get Vci ="$(VCI)
debug-output "AdslModeIndex = "$(AdslModeValue)
ui pop 1
else-ifstr(i) $(DLGEVENT) == "BACK"
set CommonStatus = STATUS_USERCANCEL
debug-output "cancel"
ui pop 1
goto end
else
ui pop 1
set CommonStatus = STATUS_USERCANCEL
debug-output "other"
goto end
endif
ifint $(VPI) > 256
shell $(subroutineinf) SetupMessage $(!STF_LANGUAGE) NONFATAL "VPI value must be between 0 and 256."
goto restart
endif
ifint $(VPI) < 0
shell $(subroutineinf) SetupMessage $(!STF_LANGUAGE) NONFATAL "VPI value must be between 0 and 256."
goto restart
endif
ifint $(VCI) < 0
shell $(subroutineinf) SetupMessage $(!STF_LANGUAGE) NONFATAL "VCI value must be between 0 and 65535."
goto restart
endif
ifint $(VCI) > 65535
shell $(subroutineinf) SetupMessage $(!STF_LANGUAGE) NONFATAL "VCI value must be between 0 and 65535."
goto restart
endif
set AdslModeValue = *($(AdslModeValues), ~($(AdslModeList),$(AdslModeIndex)))
ifstr(i) $(!NTN_InstallMode) == configure
goto updateparameters
endif
installproduct =+
Debug-Output $(InfName)": Entering Installproduct"
StartWait
set DeviceID = $($(Option)CFID)
Shell $(UtilityInf), GetPCIInformation, $(VendorID) $(DeviceID)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R0) == {}
set Error = $(CANNOT_FIND_ANY_CARD)
set CommonStatus = USER_CANCEL
set from = end
goto nonfatal
endif
set AdapterList = $($R0)
ifint $(OldVersionExisted) == $(FALSE)
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
Debug-Output "$(InfFile) : AddSoftwareComponent"
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
$(ProductSoftware$(Option)Name), +
$(ProductSoftware$(Option)Name), +
$(ProductSoftware$(Option)Title), $(STF_CONTEXTINFNAME), +
$(ProductSoftware$(Option)ImagePath), "kernel", "NDIS", {}, "",+
$(NetEventDLL)
Set OEM_ABANDON_SOFTWARE = TRUE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
EndWait
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)
set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
{MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(Product$(Option)MajorVersion)},+
{MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(Product$(Option)MinorVersion)},+
{Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftware$(Option)Title)},+
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftware$(Option)Description)},+
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftware$(Option)Name)},+
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
Shell $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
EndWait
CloseRegKey $(SoftProductKey)
CloseRegKey $(SoftNetRuleKey)
CloseRegKey $(SoftServiceKey)
CloseRegKey $(SoftParameterKey)
CloseRegKey $(SoftLinkageKey)
goto fatalregistry
endif
set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftware$(Option)Type)},+
{use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftware$(Option)Use)}, +
{bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftware$(Option)BindForm)}, +
{class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftware$(Option)Class)}, +
{bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareSW$(Option)Bindable)}, +
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
Shell $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
CloseRegKey $(SoftProductKey)
CloseRegKey $(SoftNetRuleKey)
CloseRegKey $(SoftServiceKey)
CloseRegKey $(SoftParameterKey)
CloseRegKey $(SoftLinkageKey)
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
EndWait
goto fatalregistry
endif
endif
;ForListDo $(AdapterList)
;set BusNum = *($($),1)
;set DeviceNum = *($($),2)
;set FunctionNum = *($($),3)
;Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(BusNum), +
; $(DeviceNum), $(ProductHardware$(Option)Description), $(ProductHardware$(Option)Name) "YES"
; ifint $($ShellCode) != $(!SHELL_CODE_OK)
; goto ShellCodeError
; endif
; ifstr $($R0) != "NO_ERROR"
; set Error = $($R0)
; goto fatal
; endif
; ifstr(i) $($R1) != "YES"
StartWait
Shell $(UtilityInf), AddHardwareComponent, $(ProductHardware$(Option)Name),$(STF_CONTEXTINFNAME),$(ProductKey$(Option)Name)
ifint $($R4) != -1
Debug-Output "$(InfFile) : got adapter number "$($R4)
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)
Debug-Output "$(InfFile) : Set adapter number"
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),$(ProductHardware$(Option)Name)},+
{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
set BusTypeNum = 5
set NewValueList = {{AdapterType,$(NoTitle),$(!REG_VT_DWORD),$(Adapter$(Option)Type)},+
{MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
{OsVersion,$(NoTitle),$(!REG_VT_DWORD),$(OsVersion)},+
{modemOpMode,$(NoTitle),$(!REG_VT_DWORD),$(AdslModeValue)},+
{TxCellQueueLength,$(NoTitle),$(!REG_VT_DWORD),$(DefaultTxCellQueueLength)},+
{RxCellQueueLength,$(NoTitle),$(!REG_VT_DWORD),$(DefaultRxCellQueueLength)},+
{Protocol,$(NoTitle),$(!REG_VT_DWORD),$(DefaultProtocol)},+
{Vpi_BERT,$(NoTitle),$(!REG_VT_DWORD),$(DefaultVpiBert)},+
{Vci_BERT,$(NoTitle),$(!REG_VT_DWORD),$(DefaultVciBert)},+
{Framing,$(NoTitle),$(!REG_VT_DWORD),$(DefaultFraming)},+
{QoS,$(NoTitle),$(!REG_VT_DWORD),$(DefaultQoS)},+
{PCR,$(NoTitle),$(!REG_VT_DWORD),$(DefaultPCR)},+
{SCR,$(NoTitle),$(!REG_VT_DWORD),$(DefaultSCR)},+
{MBS,$(NoTitle),$(!REG_VT_DWORD),$(DefaultMBS)},+
{AVR,$(NoTitle),$(!REG_VT_DWORD),$(DefaultAVR)},+
{MinRate,$(NoTitle),$(!REG_VT_DWORD),$(DefaultMinRate)},+
{BoardConf,$(NoTitle),$(!REG_VT_DWORD),$(DefaultBoardConf)},+
{IncTxPower,$(NoTitle),$(!REG_VT_DWORD),$(DefaultIncTxPower)},+
{AtuC_VendorID,$(NoTitle),$(!REG_VT_DWORD),$(DefaultAtuC_VendorID)},+
{BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)}}
Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set NewValueList = {{Vpi,$(NoTitle),$(!REG_VT_DWORD),$(DefaultVpi)}, +
{Vci,$(NoTitle),$(!REG_VT_DWORD),$(DefaultVci)},+
{TxCellQueueLength,$(NoTitle),$(!REG_VT_DWORD),$(DefaultTxCellQueueLength)},+
{RxCellQueueLength,$(NoTitle),$(!REG_VT_DWORD),$(DefaultRxCellQueueLength)}}
Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set TempProdName = """"$(ProductHardware$(Option)Name)$(AdapterNumber)""""
set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardware$(Option)Type)},+
{bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
{class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardware$(Option)Class)}, +
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
Shell $(UtilityInf), AddValueList, $(HardNetRuleKey), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(HardNetCardKey)
CloseRegKey $(HardNetRuleKey)
set NewValueList = {{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
{SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(DeviceNum)},+
{FunctionNumber,$(NoTitle),$(!REG_VT_DWORD),$(FunctionNum)}}
Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
CloseRegKey $(HardParameterKey)
ifstr $(Install_AMGM_PROT) == "YES"
Shell "", DiagRegistry
install "Install-AMGM"
Shell $(!STF_WINDOWSSYSPATH)\nt40amgm.inf, InstallOption, $(CurrLang),+
"amgm" ,$(SrcDir), YES, YES, YES, NO
endif
ifstr $(Install_ADSL_MAPI) == "YES"
install "Install-MAPI"
RunProgram ExitCode "XPEED ADSL Network Modem Drivers Disk(Disk 1)" "" $(!STF_WINDOWSPATH)\DMAPI.exe
AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\DMAPI.exe
AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\MAPI$(Option)IC.exe
endif
EndWait
;endif ;;;ifstr(i) $($R1) != "YES"
;Run XpDiag automatically on startup
Debug-Output $(InfName)": Entering XpDiag AutoInstall config"
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" +
$(!REG_KEY_ALL_ACCESS) KeyNt
set TrayIconList = {XP400EXE,$(NoTitle),$(!REG_VT_SZ),$(TrayIconExe)" -d0"}
SetRegValue $(KeyNt) $(TrayIconList)
CloseRegKey $(KeyNt)
install "Install-Exe"
install "Install-Hlp"
Debug-Output $(InfName)": Exiting the XpDiag AutoInstall config"
;End of Xpdiag routine
TermProcess =+
;EndForListDo
EndWait
goto successful
updateparameters =+
set HardParameterKey = $($R3)
set NewValueList = {{Vpi,$(NoTitle),$(!REG_VT_DWORD),$(VPI)}, +
{modemOpMode,$(NoTitle),$(!REG_VT_DWORD),$(AdslModeValue)},+
{Vci,$(NoTitle),$(!REG_VT_DWORD),$(VCI)}}
Shell $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(KeyParameters)
goto successful
bindingadapter =+
set Error = "Binding: Sorry, not yet implemented."
goto fatal
removeadapter = +
StartWait
;XpDiag specific
Debug-Output $(InfName)": Entering XpDiag AutoInstall config"
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" +
$(!REG_KEY_ALL_ACCESS) KeyNt
DeleteRegValue $(KeyNt) "XP400EXE"
CloseRegKey $(KeyNt)
;End of XpDiag specific
;Remove shortcut automatically on reboot. This is needed for foreign language PCs
Debug-Output $(InfName)": Entering Uninstall shortcut"
RunProgram ExitCode "Xpeed RAS Install Directory" "" $(!STF_WINDOWSSYSPATH)\XPRMV400.EXE
Debug-Output $(InfName)": Exiting the Uninstall shortcut"
;End of XpRasSetup routine
; remove files
AddfileToDeleteList $(!STF_WINDOWSSYSPATH)"\XPDIAG.exe"
AddfileToDeleteList $(!STF_WINDOWSSYSPATH)"\XPDIAG.cnt"
AddfileToDeleteList $(!STF_WINDOWSSYSPATH)"\XPDIAG.hlp"
AddfileToDeleteList $(!STF_WINDOWSSYSPATH)"\XPMP.dll"
AddfileToDeleteList $(!STF_WINDOWSSYSPATH)"\DRIVERS\X400MP.sys"
AddfileToDeleteList $(!STF_WINDOWSPATH)"\XpCustom.ini"
ifstr $(Install_AMGM_PROT) == "YES"
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\amgm" $(!REG_KEY_READ) KeyAmgm
ifstr $(KeyAmgm) != ""
Shell $(!STF_WINDOWSSYSPATH)\nt40amgm.inf, InstallOption, $(CurrLang),"amgm" ,$(SrcDir), YES, YES, YES, -inf
CloseRegKey $(KeyAmgm)
endif
endif
ifstr $(Install_ADSL_MAPI) == "YES"
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MapiApp" +
$(MAXIMUM_ALLOWED) KeyUninstall
Ifstr $(KeyUninstall) != $(KeyNull)
GetRegValue $(KeyUninstall),"UninstallString",UnistStringValue
CloseRegKey $(KeyUninstall)
RunProgram ExitCode "XPEED MAPI Install Directory" "" $(!STF_WINDOWSPATH)\Isuninst.exe *($(UnistStringValue),4)
else
CloseRegKey $(KeyUninstall)
endif
endif
Ifstr(i) $(ProductKey$(Option)Name) == $(!NTN_RegBase)
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
$(ProductSoftware$(Option)Name)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
else
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
$(ProductSoftware$(Option)Name), $(!NTN_RegBase)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
endif
EndWait
goto end
UpgradeSoftware = +
StartWait
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKey$(Option)Name) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set !UG_Filename = $($R0)
install "Install-Update"
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
goto fatal
endif
SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(Product$(Option)MajorVersion)}
SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(Product$(Option)MinorVersion)}
CloseRegKey $(KeyProduct)
; ifstr $(Install_AMGM_PROT) == "YES"
; Shell "", DiagRegistry
; install "Install-AMGM"
; Shell $(!STF_WINDOWSSYSPATH)\nt40amgm.inf, InstallOption, $(CurrLang),+
; "amgm" ,$(SrcDir), YES, YES, YES, NO
; endif
ifstr $(Install_ADSL_MAPI) == "YES"
set DlgType = "MessageBox"
set STF_MB_TITLE = "ADSL Software Update"
set STF_MB_TEXT = $(UpdateMsg)
set STF_MB_TYPE = 1
set STF_MB_ICON = 2
set STF_MB_DEF = 1
ui start "update Message"
install "Install-MAPI"
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MapiApp" +
$(MAXIMUM_ALLOWED) KeyUninstall
Ifstr $(KeyUninstall) != $(KeyNull)
GetRegValue $(KeyUninstall),"UninstallString",UnistStringValue
CloseRegKey $(KeyUninstall)
RunProgram ExitCode "XPEED MAPI Install Directory" "" $(!STF_WINDOWSPATH)\Isuninst.exe *($(UnistStringValue),4)
else
CloseRegKey $(KeyUninstall)
endif
RunProgram ExitCode "XPEED ADSL Network Modem Drivers Disk(Disk 1)" "" $(!STF_WINDOWSPATH)\DMAPI.exe
AddFileToDeleteList $(!STF_WINDOWSPATH)\DMAPI.exe
AddFileToDeleteList $(!STF_WINDOWSPATH)\MAPI$(Option)IC.exe
endif
else
goto fatalregistry
endif
EndWait
goto end
successful = +
goto end
abandon = +
ForListDo $(OEM_ABANDON_OPTIONS)
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
$(ProductSoftware$(Option)Name), $($)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
EndForListDo
Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
$(ProductSoftware$(Option)Name), FALSE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
endif
goto end
warning = +
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) == "OK"
goto $(to)
else-ifstr(i) $($R1) == "CANCEL"
goto $(from)
else
goto "end"
endif
nonfatalinfo = +
Set 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
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
AddSectionFilesToCopyList Files-XpCustom $(SrcDir) $(!STF_WINDOWSPATH)
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
endif
Exit
[Install-AMGM]
set STF_VITAL = ""
ifstr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-AMGMInf $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-AMGMSys $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
endif
Exit
[Install-MAPI]
set STF_VITAL = ""
ifstr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-MAPI$(Option) $(SrcDir) $(!STF_WINDOWSPATH)
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
endif
Exit
[Install-Exe]
set STF_VITAL = ""
ifstr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-Xpdiag $(SrcDir) $(!STF_WINDOWSSYSPATH)
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
endif
Exit
[Install-Hlp]
set STF_VITAL = ""
AddSectionFilesToCopyList Files-Hlp1 $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Hlp2 $(SrcDir) $(!STF_WINDOWSSYSPATH)
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
Exit
[Install-Update]
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
; AddSectionFilesToCopyList Files-Hlp $(SrcDir) $(!STF_WINDOWSSYSPATH)
; AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Xpdiag $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Hlp1 $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Hlp2 $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-XpCustom $(SrcDir) $(!STF_WINDOWSPATH)
ifstr $(Install_AMGM_PROT) == "YES"
AddSectionFilesToCopyList Files-AMGMInf $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-AMGMSys $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
endif
ifstr $(Install_ADSL_MAPI) == "YES"
AddSectionFilesToCopyList Files-MAPI$(Option) $(SrcDir) $(!STF_WINDOWSPATH)
endif
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
exit
[Source Media Descriptions]
1 = "Xpeed 400 ADSL PCI Adapter Drivers Disk"
[ProductType]
STF_PRODUCT = Winnt
STF_PLATFORM = I386
STF_PLATFORM = Alpha
[Files-Inf]
1,oemsetup.inf, SIZE=37900, RENAME=$(!UG_Filename)
[Files-X400MP]
1,X400MP.SYS , SIZE=300000, OVERWRITE=ALWAYS , RENAME=X400MP.SYS
;***********************************************************************
;
;***********************************************************************
[Files-AMGMInf]
1,nt40amgm.inf, SIZE=15770, OVERWRITE=ALWAYS
;***********************************************************************
;
;***********************************************************************
[Files-Xpdiag]
1,XPDIAG.exe , SIZE=99999, RENAME=XPDIAG.exe
1,XPMP.dll, SIZE=2000, RENAME=XPMP.dll
1,XPRMV400.exe, SIZE=1000,RENAME=XPRMV400.exe
;***********************************************************************
;
;***********************************************************************
[Files-XpCustom]
1,XPCUSTOM.ini, SIZE=1000,RENAME=XPCUSTOM.ini
;***********************************************************************
;
;***********************************************************************
[Files-Hlp1]
1,XPDIAG.hlp , SIZE=999, RENAME=XPDIAG.hlp
;***********************************************************************
;
;***********************************************************************
[Files-Hlp2]
1,XPDIAG.cnt , SIZE=999, RENAME=XPDIAG.cnt
[LanguagesSupported]
ENG
[OptionsTextENG]
X400MP = "Xpeed 400 ADSL PCI Adapter - RFC 1483"
[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:"
ProductSoftwareX400MPDescription = "Xpeed 400 ADSL PCI Adapter - RFC 1483"
FunctionX400MPTitle = "Xpeed 400 ADSL Adapter - Setup"
ProductHardwareX400MPDescription = "Xpeed 400 ADSL PCI Adapter - RFC 1483"
AdslModeList = ^(AdslModeChoices$(Option), 1)
AdslModeValues = ^(AdslModeChoices$(Option), 2)
NoList = ^(NoChoices, 1)
NoValues = ^(NoChoices, 2)
ShellCodeErrorTitle = "Error: "$(Function$(Option)Title)
ShellCodeErrorText = "Shell Code Error."
CANNOT_FIND_ANY_CARD = "Network card is not present in the system"
[DialogConstantsENG]
Help = "&Help"
Exit = "Cancel"
OK = "OK"
HelpContext = ""
Continue = "Continue"
Cancel = "Cancel"
[FileDependentDlgENG]
DlgText = "Choose the proper parameters for the "+
"ADSL network interface card, or"+
"use default values.$(LF)"+
"Vpi/Vci:Assigned by ISP (0-65535)$(LF)"+
"Transmit/Receive Cellqueue Length:Increase to prevent data loss.Decrease to save memory usage"
DlgTemplate = "XPMP"
DlgType = "RadioCombination"
Caption = $(Function$(Option)Title)
Combo1Label = "ADSL Protocol:"
Combo1List = $(AdslModeList)
Combo1Out = $(AdslModeValue)
ComboListItemsIn = {Combo1List}
ComboListItemsOut = {Combo1Out}
EditTextLim = {3, 5}
EditTextIn = {$(VPI),$(VCI)}
Edit1Label = "VPI:"
Edit2Label = "VCI:"
;CBOptionsGreyed = {}
MinHelpId = 10
MaxHelpId = 1140
[VpiMessageDlgENG]
DlgType = "MessageBox"
STF_MB_TITLE = "Vpi Value Error"
STF_MB_TEXT = "Vpi must be within 0 to 255"
STF_MB_TYPE = 1 ; display OK button
STF_MB_ICON = 5 ; ! icon
STF_MB_DEF = 1 ; default button is Retry
[VciMessageDlgENG]
DlgType = "MessageBox"
STF_MB_TITLE = "Vci Value Error"
STF_MB_TEXT = "Vci must be within 0 to 65535"
STF_MB_TYPE = 1 ; display OK button
STF_MB_ICON = 5 ; ! icon
STF_MB_DEF = 1 ; default button is Retry
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.