home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1999 Extra
/
Chip_Extra_1999.iso
/
chip
/
gratis
/
seagate
/
drivers
/
I386
/
oemsetup.inf
< prev
next >
Wrap
INI File
|
1998-10-21
|
23KB
|
600 lines
;-----------------------------------------------------------------------
; OPTION TYPE
; -----------
; This identifies the Option type we are dealing with. The different
; possible types are:
;
; COMPUTER, VIDEO, POINTER, KEYBOARD, LAYOUT, SCSI, TAPE, PRINTER, ...
;-----------------------------------------------------------------------
[Identification]
OptionType = TAPE
;-----------------------------------------------------------------------
; LANGUAGES SUPPORTED
; -------------------
;
; The languages supported by the INF, For every language supported
; we need to have a separate text section for every displayable text
; section.
;
;-----------------------------------------------------------------------
[LanguagesSupported]
ENG
;-----------------------------------------------------------------------
; OPTION LIST
; -----------
; This section lists the Option key names. These keys are locale
; independent and used to represent the option in a locale independent
; manner.
;
;-----------------------------------------------------------------------
[Options]
4MMDAT---SEAGATE = 4mmdat--SESFT
ARCHQIC--SEAGATE = archqic-SESFT
DLTTAPE--SEAGATE = dlttape-SESFT
EXABMQIC-SEAGATE = exabmqicSESFT
EXABYTE1-SEAGATE = exabyte1SESFT
EXABYTE2-SEAGATE = exabyte2SESFT
SONYSDX--SEAGATE = sonysdx-SESFT
TANDMQIC-SEAGATE = tandmqicSESFT
TANDQIC--SEAGATE = tandqic-SESFT
TRATAPI--SEAGATE = tratapi-SESFT
TRSCSI---SEAGATE = trscsi--SESFT
WANGQIC--SEAGATE = wangqic-SESFT
WANGQIC2-SEAGATE = wangqic2SESFT
SCSIOPTICAL = SCSIOptical
SCSIOPTICALF = SCSIOpticalF
;-----------------------------------------------------------------------
; OPTION TEXT SECTION
; -------------------
; These are text strings used to identify the option to the user. There
; are separate sections for each language supported. The format of the
; section name is "OptionsText" concatenated with the Language represented
; by the section.
;
;-----------------------------------------------------------------------
[OptionsTextENG]
4MMDAT---SEAGATE = "Seagate 4mmdat (4mm DAT drives, all except Sony)"
ARCHQIC--SEAGATE = "Seagate archqic (Conner/Archive QIC SCSI drives, all)"
DLTTAPE--SEAGATE = "Seagate dlttape (Quantum/DEC/Cipher DLT SCSI drives, all)"
EXABMQIC-SEAGATE = "Seagate exabmqic (Exabyte mini data cartridge SCSI drives)"
EXABYTE1-SEAGATE = "Seagate exabyte1 (Exabyte 8xxx SCSI-1 drives, all)"
EXABYTE2-SEAGATE = "Seagate exabyte2 (Exabyte 8xxx SCSI-2 drives, all)"
SONYSDX--SEAGATE = "Seagate sonysdx (Sony 4mm DAT and 8mm drives)"
TANDMQIC-SEAGATE = "Seagate tandmqic (Tandberg Data mini data cartridge SCSI drives)"
TANDQIC--SEAGATE = "Seagate tandqic (Tandberg Data QIC SCSI drives, all)"
TRATAPI--SEAGATE = "Seagate tratapi (Mini data cartridge ATAPI drives)"
TRSCSI---SEAGATE = "Seagate trscsi (Mini data cartridge SCSI drives)"
WANGQIC--SEAGATE = "Seagate wangqic (WANGTEK QIC SCSI-1 drives, all)"
WANGQIC2-SEAGATE = "Seagate wangqic2 (WANGTEK 9500 QIC SCSI-2 drive)"
SCSIOPTICAL = "Seagate optical (tape emulation) driver"
SCSIOPTICALF = "Seagate optical (tape emulation w/FAT) driver"
;-----------------------------------------------------------------------------------------
; TAPE CLASS DRIVERS:
;
; Order of the information:
;
; Class driver = Type, Group, ErrorControl, Dependencies, EventMessageFile, TypesSupported, Start
;
; NOTE: \ in the dependency list means that the dependency is on a group.
;-----------------------------------------------------------------------------------------
[ClassDrivers]
4mmdat--SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\4mmdat.sys" , 7, !SERVICE_SYSTEM_START
archqic-SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\archqic.sys" , 7, !SERVICE_SYSTEM_START
dlttape-SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\dlttape.sys" , 7, !SERVICE_SYSTEM_START
exabmqicSESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\exabmqic.sys", 7, !SERVICE_SYSTEM_START
exabyte1SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\exabyte1.sys", 7, !SERVICE_SYSTEM_START
exabyte2SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\exabyte2.sys", 7, !SERVICE_SYSTEM_START
sonysdx-SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\sonysdx.sys" , 7, !SERVICE_SYSTEM_START
tandmqicSESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\tandmqic.sys", 7, !SERVICE_SYSTEM_START
tandqic-SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\tandqic.sys" , 7, !SERVICE_SYSTEM_START
tratapi-SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\tratapi.sys" , 7, !SERVICE_SYSTEM_START
trscsi--SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\trscsi.sys", 7, !SERVICE_SYSTEM_START
wangqic-SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\wangqic.sys" , 7, !SERVICE_SYSTEM_START
wangqic2SESFT = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\wangqic2.sys", 7, !SERVICE_SYSTEM_START
SCSIOptical = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\scsiopt.sys" , 7, !SERVICE_SYSTEM_START
SCSIOpticalF = !SERVICE_KERNEL_DRIVER, "SCSI Class" , !SERVICE_ERROR_NORMAL, "\SCSI Miniport", "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\scsioptf.sys" , 7, !SERVICE_SYSTEM_START
;---------------------------------------------------------------------------
; 1. Identify
;
; DESCRIPTION: To verify that this INF deals with the same type of options
; as we are choosing currently.
;
; INPUT: None
;
; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL
; $($R1): Option Type (COMPUTER ...)
; $($R2): Diskette description
;---------------------------------------------------------------------------
[Identify]
;
;
read-syms Identification
set Status = STATUS_SUCCESSFUL
set Identifier = $(OptionType)
set Media = #("Source Media Descriptions", 1, 1)
Return $(Status) $(Identifier) $(Media)
;------------------------------------------------------------------------
; 2. ReturnOptions:
;
; DESCRIPTION: To return the option list supported by this INF and the
; localised text list representing the options.
;
;
; INPUT: $($0): Language used. ( ENG | FRN | ... )
;
; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL |
; STATUS_NOLANGUAGE
; STATUS_FAILED
;
; $($R1): Option List
; $($R2): Option Text List
;------------------------------------------------------------------------
[ReturnOptions]
;
;
set Status = STATUS_FAILED
set OptionList = {}
set OptionTextList = {}
;
; Check if the language requested is supported
;
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) in $(LanguageList)
goto returnoptions
else
set Status = STATUS_NOLANGUAGE
goto finish_ReturnOptions
endif
;
; form a list of all the options and another of the text representing
;
returnoptions = +
set OptionList = ^(Options, 0)
set OptionTextList = ^(OptionsText$($0), 1)
set Status = STATUS_SUCCESSFUL
finish_ReturnOptions = +
Return $(Status) $(OptionList) $(OptionTextList)
;------------------------------------------------------------------------
; 3. InstallOption:
;
; FUNCTION: To copy files representing Options
; To configure the installed option
; To update the registry for the installed option
;
; INPUT: $($0): Language to use
; $($1): OptionID to install
; $($2): SourceDirectory
; $($3): AddCopy (YES | NO)
; $($4): DoCopy (YES | NO)
; $($5): DoConfig (YES | NO)
;
; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL |
; STATUS_NOLANGUAGE |
; STATUS_USERCANCEL |
; STATUS_FAILED
;------------------------------------------------------------------------
[InstallOption]
;
; Set default values for
;
set Status = STATUS_FAILED
set DrivesToFree = {}
;
; Check if NONE or UNKNOWN
;
ifstr(i) $($1) == NONE
set Status = STATUS_SUCCESSFUL
goto finish_InstallOption
else-ifstr(i) $($1) == UNKNOWN
set Status = STATUS_SUCCESSFUL
goto finish_InstallOption
endif
;
; extract parameters
;
set Option = $($1)
set SrcDir = $($2)
set AddCopy = $($3)
set DoCopy = $($4)
set DoConfig = $($5)
;
; Check if the language requested is supported
;
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) in $(LanguageList)
else
set Status = STATUS_NOLANGUAGE
goto finish_InstallOption
endif
read-syms Strings$($0)
;
; check to see if Option is supported.
;
set OptionList = ^(Options, 0)
ifcontains $(Option) in $(OptionList)
else
goto finish_InstallOption
endif
set OptionList = ""
;
; Option has been defined already
;
set ClassDriver = #(Options, $(Option), 1)
set Type = $(#(ClassDrivers, $(ClassDriver), 1))
set Group = #(ClassDrivers, $(ClassDriver), 2)
set ErrorControl = $(#(ClassDrivers, $(ClassDriver), 3))
set Dependencies = #(ClassDrivers, $(ClassDriver), 4)
set EventMessageFile = #(ClassDrivers, $(ClassDriver), 5)
set TypesSupported = #(ClassDrivers, $(ClassDriver), 6)
set Start = $(#(ClassDrivers, $(ClassDriver), 7))
installtheoption = +
;
; Code to add files to copy list
;
ifstr(i) $(AddCopy) == "YES"
set DoActualCopy = NO
set FileToCheck = #(Files-TapeClassDrivers, $(ClassDriver), 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 "TAPE.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 "TAPE.INF: User cancelled Tape installation"
goto finish_InstallOption
else
Debug-Output "TAPE.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 "TAPE.INF: shelling DoAskSource failed"
goto finish_InstallOption
endif
ifstr(i) $($R0) == STATUS_SUCCESSFUL
set SrcDir = $($R1)
ifstr(i) $($R2) != ""
set DrivesToFree = >($(DrivesToFree), $($R2))
endif
else
Debug-Output "TAPE.INF: User cancelled asking source."
goto finish_InstallOption
endif
install Install-AddCopyOption
ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
Debug-Output "Adding mouse 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"
;
; first run a privilege check on modifying the setup node
;
shell "registry.inf" CheckSetupModify
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto finish_InstallOption
endif
ifstr(i) $($R0) != STATUS_SUCCESSFUL
goto finish_InstallOption
endif
;
; then make a new tape entry, the entry is created automatically
; enabled
;
set ServiceNode = $(ClassDriver)
set ServiceBinary = %SystemRoot%\System32\drivers\#(Files-TapeClassDrivers, $(ClassDriver), 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) }, +
{Dependencies, 0, $(!REG_VT_MULTI_SZ), {$(Dependencies)} }, +
{BinaryPathName, 0, $(!REG_VT_EXPAND_SZ), $(ServiceBinary) } +
}
set ParametersValues = ""
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 tape"
goto finish_InstallOption
endif
endif
set Status = STATUS_SUCCESSFUL
finish_InstallOption = +
ForListDo $(DrivesToFree)
LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE"
EndForListDo
Return $(Status)
[Install-AddCopyOption]
;
; Add the files to the copy list
;
AddSectionKeyFileToCopyList Files-TapeClassDrivers +
$(ClassDriver) +
$(SrcDir) +
$(!STF_WINDOWSSYSPATH)\drivers
exit
[Install-DoCopyOption]
;
; Copy files in the copy list
;
CopyFilesInCopyList
exit
;-------------------------------------------------------------------------
; 4. DeInstallOption:
;
; FUNCTION: To remove files representing Option
; To remove the registry entry corresponding to the Option
;
; INPUT: $($0): Language to use
; $($1): OptionID to install
;
; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL |
; STATUS_NOLANGUAGE |
; STATUS_USERCANCEL |
; STATUS_FAILED
;-------------------------------------------------------------------------
[DeInstallOption]
;
; Set default values for
;
set Status = STATUS_FAILED
;
; extract parameters
;
set Option = $($1)
;
; Check if the language requested is supported
;
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) in $(LanguageList)
else
set Status = STATUS_NOLANGUAGE
goto finish_DeInstallOption
endif
read-syms Strings$($0)
;
; check to see if Option is supported.
;
set OptionList = ^(Options, 0)
ifcontains $(Option) in $(OptionList)
else
goto finish_DeInstallOption
endif
set OptionList = ""
;
; fetch details about option
;
set ClassDriver = #(Options, $(Option), 1)
set ClassFile = #(Files-TapeClassDrivers, $(ClassDriver), 2)
set FilePath = $(!STF_WINDOWSSYSPATH)"\drivers\"$(ClassFile)
;
; disable the registry entry
;
shell "registry.inf" RemoveServicesEntry $(ClassDriver)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "TAPE.INF: Failed to shell RemoveServicesEntry"
goto finish_DeInstallOption
endif
ifstr(i) $($R0) != STATUS_SUCCESSFUL
Debug-Output "TAPE.INF: Failed to disable services entry"
goto finish_DeInstallOption
endif
;
; we won't remove the file because we can only do so during the next boot.
; if the user chooses to reinstall the same driver during this boot
; he will still end up deleting the driver on next boot. if the file
; should be deleted a warning should be put up saying that the user should
; not try to reinstall the driver during this boot
;
; AddFileToDeleteList $(FilePath)
set Status = STATUS_SUCCESSFUL
finish_DeInstallOption =+
return $(Status)
;-------------------------------------------------------------------------
; 5. GetInstalledOptions:
;
; FUNCTION: To find out the list of options which are installed
;
; INPUT: $($0): Language to Use
;
; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL |
; STATUS_FAILED
;
; $($R1): List of options installed
; $($R2): Option installed Text List
;-------------------------------------------------------------------------
[GetInstalledOptions]
set Status = STATUS_FAILED
set InstalledOptions = {}
set InstalledOptionsText = {}
;
; Check if the language requested is supported
;
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 ClassDriver = #(Options, $($), 1)
set ClassFile = #(Files-TapeClassDrivers, $(ClassDriver), 2)
set FilePath = $(!STF_WINDOWSSYSPATH)"\drivers\"$(ClassFile)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
ifstr(i) $(STATUS) == "YES"
shell "registry.inf" GetServicesEntryStart $(ClassDriver)
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)
;**************************************************************************
; PROGRESS GUAGE VARIABLES
;**************************************************************************
[ProgressCopyENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cancel"
ProCancelMsg = "Windows NT is not correcly installed. Are you sure you want "+
"to cancel copying files?"
ProCancelCap = "Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
[StringsENG]
String1 = "Tape Device"
String2 = "Please enter the full path to the OEM Tape Device "+
"files. Then choose Continue."
[Source Media Descriptions]
1 = "OEM DISK (TAPE)" , TAGFILE = disk1
[Files-TapeClassDrivers]
4mmdat--SESFT = 1, 4mmdat.sys, SIZE=999
archqic-SESFT = 1, archqic.sys, SIZE=999
dlttape-SESFT = 1, dlttape.sys, SIZE=999
exabmqicSESFT = 1, exabmqic.sys, SIZE=999
exabyte1SESFT = 1, exabyte1.sys, SIZE=999
exabyte2SESFT = 1, exabyte2.sys, SIZE=999
sonysdx-SESFT = 1, sonysdx.sys, SIZE=999
tandmqicSESFT = 1, tandmqic.sys, SIZE=999
tandqic-SESFT = 1, tandqic.sys, SIZE=999
tratapi-SESFT = 1, tratapi.sys, SIZE=999
trscsi--SESFT = 1, trscsi.sys, SIZE=999
wangqic-SESFT = 1, wangqic.sys, SIZE=999
wangqic2SESFT = 1, wangqic2.sys, SIZE=999
SCSIOptical = 1, scsiopt.sys, SIZE=999
SCSIOpticalF = 1, scsioptf.sys, SIZE=999