home *** CD-ROM | disk | FTP | other *** search
INI File | 1996-09-23 | 17.9 KB | 471 lines |
- ;;/*++
- ;;
- ;;Copyright: (c) 1996, Intel Corporation
- ;;
- ;;File Name: oemsetup.inf
- ;;
- ;;Abstract: Device Information File (INF) for the PIIX Bus Master IDE
- ;; device driver for Windows NT* 3.5x and 4.x.
- ;;
- ;;Environment: Windows NT* 3.5x, 4.x
- ;;
- ;;Notes:
- ;;
- ;;Items in file:
- ;;
- ;;Revision History:
- ;; 07 Jun, 1996 Created the file.
- ;; 30 Aug, 1996 Added checks to make the file compatible 3.5x and 4.x.
- ;;--*/
- [Identification]
- OptionType = SCSI
- [MiniportDrivers]
- piixide = !SERVICE_KERNEL_DRIVER, "SCSI Miniport", !SERVICE_ERROR_NORMAL, 25, %SystemRoot%\System32\IoLogMsg.dll , 7
- [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)
- goto returnoptions
- else
- set Status = STATUS_NOLANGUAGE
- goto finish_ReturnOptions
- endif
- returnoptions = +
- set OptionList = ^(Options, 0)
- set OptionTextList = ^(OptionsText$($0), 1)
- set Status = STATUS_SUCCESSFUL
- finish_ReturnOptions = +
- Return $(Status) $(OptionList) $(OptionTextList)
- [InstallOption]
- set Status = STATUS_FAILED
- set DrivesToFree = {}
- set Option = $($1)
- set SrcDir = $($2)
- set AddCopy = $($3)
- set DoCopy = $($4)
- set DoConfig = $($5)
- set LanguageList = ^(LanguagesSupported, 1)
- Ifcontains(i) $($0) in $(LanguageList)
- else
- set Status = STATUS_NOLANGUAGE
- goto finish_InstallOption
- endif
- read-syms Strings$($0)
- set OptionList = ^(Options, 0)
- ifcontains $(Option) in $(OptionList)
- else
- Debug-Output "OEMSETUP.INF: SCSI option is not supported."
- goto finish_InstallOption
- endif
- set OptionList = ""
- set MiniportDriver = #(Options, $(Option), 1)
- set Type = $(#(MiniportDrivers, $(MiniportDriver), 1))
- set Group = #(MiniportDrivers, $(MiniportDriver), 2)
- set ErrorControl = $(#(MiniportDrivers, $(MiniportDriver), 3))
- set Tag = #(MiniportDrivers, $(MiniportDriver), 4)
- set EventMessageFile = #(MiniportDrivers, $(MiniportDriver), 5)
- set TypesSupported = #(MiniportDrivers, $(MiniportDriver), 6)
- set Start = $(!SERVICE_BOOT_START)
- installtheoption = +
- ifstr(i) $(AddCopy) == "YES"
- set DoActualCopy = NO
- set FileToCheck = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
- LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck)
- ifstr(i) $(STATUS) == NO
- set DoActualCopy = YES
- endif
- ifstr(i) $(DoActualCopy) == NO
- shell "subroutn.inf" DriversExist $($0) $(String1)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "OEMSETUP.INF: shelling DriversExist failed"
- goto finish_InstallOption
- endif
- ifstr(i) $($R0) == STATUS_CURRENT
- else-ifstr(i) $($R0) == STATUS_NEW
- set DoActualCopy = YES
- else-ifstr(i) $($R0) == STATUS_USERCANCEL
- Debug-Output "OEMSETUP.INF: User cancelled SCSI installation"
- goto finish_InstallOption
- else
- Debug-Output "OEMSETUP.INF: Error reported in DriversExist routine in SUBROUTN.INF"
- goto finish_InstallOption
- endif
- endif
- ifstr(i) $(DoActualCopy) == YES
- shell "subroutn.inf" DoAskSourceEx $(SrcDir) $(String2)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "OEMSETUP.INF: shelling DoAskSourceEx failed"
- goto finish_InstallOption
- endif
- ifstr(i) $($R0) == STATUS_SUCCESSFUL
- set SrcDir = $($R1)
- ifstr(i) $($R2) != ""
- set DrivesToFree = >($(DrivesToFree), $($R2))
- endif
- else
- Debug-Output "OEMSETUP.INF: User cancelled asking source."
- goto finish_InstallOption
- endif
- install Install-AddCopyOption
- ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
- Debug-Output "Adding SCSI files to copy list failed"
- goto finish_InstallOption
- endif
- else
- set DoCopy = NO
- endif
- endif
- ifstr(i) $(DoCopy) == "YES"
- read-syms ProgressCopy$($0)
- install Install-DoCopyOption
- ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
- Debug-Output "Copying files failed"
- goto finish_InstallOption
- else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
- set Status = STATUS_USERCANCEL
- goto finish_InstallOption
- endif
- endif
- ifstr(i) $(DoConfig) == "YES"
- shell "registry.inf" CheckSetupModify
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto finish_InstallOption
- endif
- ifstr(i) $($R0) != STATUS_SUCCESSFUL
- goto finish_InstallOption
- endif
- set ServiceNode = $(MiniportDriver)
- set ServiceBinary = System32\drivers\#(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
- set ServicesValues = { +
- {Type, 0, $(!REG_VT_DWORD), $(Type) }, +
- {Start, 0, $(!REG_VT_DWORD), $(Start) }, +
- {Group, 0, $(!REG_VT_SZ), $(Group) }, +
- {ErrorControl, 0, $(!REG_VT_DWORD), $(ErrorControl) }, +
- {Tag, 0, $(!REG_VT_DWORD), $(Tag) }, +
- {BinaryPathName, 0, $(!REG_VT_EXPAND_SZ), $(ServiceBinary) } +
- }
- ;*****************
- ;* PIIXIDE BEGIN *
- ;*****************
- set ParametersValues = { +
- {UseLbaMode, 0, $(!REG_VT_DWORD), 4294967295} +
- {UseMultiBlock, 0, $(!REG_VT_DWORD), 4294967295} +
- {PrimaryMasterMode, 0, $(!REG_VT_DWORD), 4294967295} +
- {PrimarySlaveMode, 0, $(!REG_VT_DWORD), 4294967295} +
- {SecondaryMasterMode, 0, $(!REG_VT_DWORD), 4294967295} +
- {SecondarySlaveMode, 0, $(!REG_VT_DWORD), 4294967295} +
- }
- ;*****************
- ;* PIIXIDE END *
- ;*****************
-
- set DeviceValues = {}
- set EventLogValues = { +
- {EventMessageFile, 0, $(!REG_VT_EXPAND_SZ), $(EventMessageFile) }, +
- {TypesSupported, 0, $(!REG_VT_DWORD), $(TypesSupported) } +
- }
- shell "registry.inf" MakeServicesEntry $(ServiceNode) +
- $(ServicesValues) +
- $(ParametersValues) +
-
- $(DeviceValues) +
- $(EventLogValues) +
- Parameters
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "Couldn't execute MakeServicesEntry in registry.inf"
- goto finish_InstallOption
- endif
- ifstr(i) $($R0) != STATUS_SUCCESSFUL
- Debug-Output "MakeServicesEntry failed for SCSI"
- goto finish_InstallOption
- endif
- ; now check for version of NT
- ;
- set NT_REL = "NT_40"
- ; now look in HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion and check for 4.0/3.5X
- set NTReleaseKey = "SOFTWARE\Microsoft\Windows NT\CurrentVersion"
- OpenRegKey $(!REG_H_LOCAL) "" $(NTReleaseKey) $(!REG_KEY_QUERY_VALUE) CurVerHandle
-
- ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
- shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS "couldn't open registry key handle"
- endif
- GetRegValue $(CurVerHandle) CurrentVersion VersionValue
- ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
- shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS "couldn't get key value"
- endif
-
- set NTOutput = *($(VersionValue),4)
-
-
- ifstr(i) $(NTOutput) == "4.0"
- shell "registry.inf" ModifyServicesEntry disk $(!SERVICE_BOOT_START)
- ; shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS $(NTOutput)
- else-ifstr(i) $(NTOutput) == "3.51"
- shell "registry.inf" ModifyServicesEntry scsidisk $(!SERVICE_BOOT_START)
- ; shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS $(NTOutput)
- else-ifstr(i) $(NTOutput) == "3.50"
- shell "registry.inf" ModifyServicesEntry scsidisk $(!SERVICE_BOOT_START)
- ; shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS $(NTOutput)
- else
- shell "registry.inf" ModifyServicesEntry disk $(!SERVICE_BOOT_START)
- ; shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS $(NTOutput)
- endif
-
-
-
- ;*****************
- ;* PIIXIDE BEGIN *
- ;*****************
- shell "registry.inf" GetServicesEntryStart "ATDISK"
- ifstr(i) $($R0) != "STATUS_SUCCESSFUL"
- set Status = STATUS_SUCCESSFUL
- goto finish_InstallOption
- endif
-
- shell "registry.inf" RemoveServicesEntry "ATDISK"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "OEMSETUP.INF: Failed to shell RemoveServicesEntry"
- goto finish_InstallOption
- endif
- ifstr(i) $($R0) != STATUS_SUCCESSFUL
- Debug-Output "OEMSETUP.INF: Failed to disable services entry"
- goto finish_InstallOption
- endif
-
- shell "registry.inf" GetServicesEntryStart "ATAPI"
- ifstr(i) $($R0) != "STATUS_SUCCESSFUL"
- set Status = STATUS_SUCCESSFUL
- goto finish_InstallOption
- endif
-
- shell "registry.inf" RemoveServicesEntry "ATAPI"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "OEMSETUP.INF: Failed to shell RemoveServicesEntry"
- goto finish_InstallOption
- endif
- ifstr(i) $($R0) != STATUS_SUCCESSFUL
- Debug-Output "OEMSETUP.INF: Failed to disable services entry"
- goto finish_InstallOption
- endif
- ;*****************
- ;* PIIXIDE END *
- ;*****************
- endif
- set Status = STATUS_SUCCESSFUL
- finish_InstallOption = +
- ForListDo $(DrivesToFree)
- LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE"
- EndForListDo
- Return $(Status)
- [Install-AddCopyOption]
- AddSectionKeyFileToCopyList Files-ScsiMiniportDrivers +
- $(MiniportDriver) +
- $(SrcDir) +
- $(!STF_WINDOWSSYSPATH)\drivers
- exit
- [Install-DoCopyOption]
- CopyFilesInCopyList
- exit
- [DeInstallOption]
- set Status = STATUS_FAILED
- set Option = $($1)
- set LanguageList = ^(LanguagesSupported, 1)
- Ifcontains(i) $($0) in $(LanguageList)
- else
- set Status = STATUS_NOLANGUAGE
- goto finish_DeInstallOption
- endif
- read-syms Strings$($0)
- set OptionList = ^(Options, 0)
- ifcontains $(Option) in $(OptionList)
- else
- goto finish_DeInstallOption
- endif
- set OptionList = ""
- set MiniportDriver = #(Options, $(Option), 1)
- set MiniportFile = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
- set FilePath = $(!STF_WINDOWSSYSPATH)"\drivers\"$(MiniportFile)
- LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
- ifstr(i) $(STATUS) == "NO"
- set Status = STATUS_SUCCESSFUL
- goto finish_DeInstallOption
- endif
- shell "registry.inf" GetServicesEntryStart $(MiniportDriver)
- ifstr(i) $($R0) != "STATUS_SUCCESSFUL"
- set Status = STATUS_SUCCESSFUL
- goto finish_DeInstallOption
- endif
- do_removal =+
- shell "registry.inf" RemoveServicesEntry $(MiniportDriver)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Debug-Output "OEMSETUP.INF: Failed to shell RemoveServicesEntry"
- goto finish_DeInstallOption
- endif
- ifstr(i) $($R0) != STATUS_SUCCESSFUL
- Debug-Output "OEMSETUP.INF: Failed to disable services entry"
- goto finish_DeInstallOption
- endif
- set Status = STATUS_SUCCESSFUL
- ;*****************
- ;* PIIXIDE BEGIN *
- ;*****************
- ;
- ; Determine the current driver configuration: depending on the configuration
- ; re-enable the appropiate default driver.
- ;
- shell "" GetParameterValue $(MiniportDriver) "AtapiOnPrimary"
- set AtapiOnPrimary = $($R1)
-
- shell "" GetParameterValue $(MiniportDriver) "AtapiOnSecondary"
- set AtapiOnSecondary = $($R1)
-
- ;
- ; turn on Atdisk and/or Atapi again
- ; values of AtapiOnPrimary and AtapiOnSecondary:
- ; 0 - only disk, no atapi
- ; 1 - atapi exists
- ; others - no any disk and atapi
- ;
-
- ifint $(AtapiOnPrimary) == "0"
- shell "registry.inf" ModifyServicesEntry "Atdisk" $(!SERVICE_BOOT_START)
- ifint $(AtapiOnSecondary) == "1"
- shell "registry.inf" ModifyServicesEntry "Atapi" $(!SERVICE_BOOT_START)
- endif
- goto finish_DeInstallOption
- endif
-
- ifint $(AtapiOnPrimary) == "1"
- shell "registry.inf" ModifyServicesEntry "Atapi" $(!SERVICE_BOOT_START)
- ifint $(AtapiOnSecondary) == "0"
- shell "registry.inf" ModifyServicesEntry "Atdisk" $(!SERVICE_BOOT_START)
- endif
- goto finish_DeInstallOption
- endif
-
- ifint $(AtapiOnSecondary) == "0"
- shell "registry.inf" ModifyServicesEntry "Atdisk" $(!SERVICE_BOOT_START)
- goto finish_DeInstallOption
- endif
-
- ifint $(AtapiOnSecondary) == "1"
- shell "registry.inf" ModifyServicesEntry "Atapi" $(!SERVICE_BOOT_START)
- goto finish_DeInstallOption
- endif
- ;*****************
- ;* PIIXIDE END *
- ;*****************
-
- finish_DeInstallOption =+
- return $(Status)
-
- ;*****************
- ;* PIIXIDE END *
- ;*****************
- [GetParameterValue]
- set Status = STATUS_FAILED
- set ParameterValue = ""
-
- ;read-syms RegistryConstants
-
- Debug-Output "Get driver parameter value: "$($0)", "$($1)
-
- set KeyName = "system\"$(!STF_CONTROLSET)"\services\"$($0)\"Parameters"
- OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(!REG_KEY_READ) KeyHandle
-
- ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
- Debug-Output "Couldn't open key for read access"
- goto finish_GetParameterValue
- endif
-
- GetRegValue $(KeyHandle) $($1) ParameterValueList
- ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
- Debug-Output "Couldn't read parameter value"
- CloseRegKey $(KeyHandle)
- goto finish_GetParameterValue
- endif
-
- CloseRegKey $(KeyHandle)
-
- set ParameterValue = *($(ParameterValueList), 4)
- set Status = STATUS_SUCCESSFUL
-
- finish_GetParameterValue = +
- Return $(Status) $(ParameterValue)
- ;*****************
- ;* PIIXIDE END *
- ;*****************
-
- [GetInstalledOptions]
- set Status = STATUS_FAILED
- set InstalledOptions = {}
- set InstalledOptionsText = {}
- set LanguageList = ^(LanguagesSupported, 1)
- Ifcontains(i) $($0) in $(LanguageList)
- else
- set Status = STATUS_NOLANGUAGE
- goto finish_GetInstalledOptions
- endif
- set OptionList = ^(Options, 0)
- ForListDo $(OptionList)
- set MiniportDriver = #(Options, $($), 1)
- set MiniportFile = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
- set FilePath = $(!STF_WINDOWSSYSPATH)"\drivers\"$(MiniportFile)
- LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
- ifstr(i) $(STATUS) == "YES"
- shell "registry.inf" GetServicesEntryStart $(MiniportDriver)
- ifint $($ShellCode) == $(!SHELL_CODE_OK)
- ifstr(i) $($R0) == STATUS_SUCCESSFUL
- ifstr(i) $($R1) != $(!SERVICE_DISABLED)
- set OptionText = #(OptionsText$($0), $($), 1)
- set InstalledOptions = >($(InstalledOptions), $($))
- set InstalledOptionsText = >($(InstalledOptionsText), $(OptionText))
- endif
- endif
- endif
- endif
- EndForListDo
- set Status = STATUS_SUCCESSFUL
- finish_GetInstalledOptions =+
- Return $(Status) $(InstalledOptions) $(InstalledOptionsText)
- [Source Media Descriptions]
- 1 = "" , TAGFILE = disk1.nt
- [Signature]
- FileType = MICROSOFT_FILE
- [GetSignature]
- read-syms Signature
- return $(FileType)
- [ProductType]
- STF_PRODUCT = Winnt
- STF_PLATFORM = I386
- [Files-ScsiMiniportDrivers]
- piixide = 1, PIIXIDE.SYS , SIZE=999
- [LanguagesSupported]
- ENG
- [OptionsTextENG]
- "PIIXIDE" = "Intel PIIX PCI Bus Master IDE Controller"
- [Options]
- "PIIXIDE" = piixide
- [ProgressCopyENG]
- ProCaption = "Windows NT Setup"
- ProCancel = "Cancel"
- ProCancelMsg = "Windows NT is not correctly installed. Are you sure you want "+
- "to cancel copying files?"
- ProCancelCap = "Setup Message"
- ProText1 = "Copying:"
- ProText2 = "To:"
- [StringsENG]
- String1 = "SCSI Adapter"
- String2 = "Setup needs to copy SCSI driver files."$(!LF)$(!LF)+
- "Setup will look for the files in the location specified below. If you want "+
- "Setup to look in a different place, type the new location. When the location "+
- "is correct, click Continue."
-