home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 April (Special) / Chip-Special_1997-04_cd.bin / number9 / i2nt201 / i2nt201.exe / OEMSETUP.INF < prev    next >
INI File  |  1996-04-04  |  18KB  |  398 lines

  1. [Identification]
  2.     OptionType = VIDEO
  3. [Identify]
  4.     read-syms Identification
  5.     set Status     = STATUS_SUCCESSFUL
  6.     set Identifier = $(OptionType)
  7.     set Media      = #("Source Media Descriptions", 1, 1)
  8.     Return $(Status) $(Identifier) $(Media)
  9. [ServicesEntry]
  10.     CurrentEntry = "" ? $(!LIBHANDLE) GetDevicemapValue Video \Device\Video0
  11. [SystemVariables]
  12.     STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir
  13.     STF_WINDOWSPATH = "" ? $(!LIBHANDLE) GetWindowsNtDir
  14. [MiniportDrivers]
  15.     n9i128v2    = n9i128v2   , !SERVICE_KERNEL_DRIVER, Video, !SERVICE_ERROR_NORMAL, {n9i128v2}                      , 0, "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\n9i128v2.sys", 7, 1, {}, noconfig
  16. [OpenGLDrivers]
  17. [ExternalInstallOption]
  18.     Set !G:DebugOutputControl = 0
  19.     set Exit_Code   = $(!SETUP_ERROR_GENERAL)
  20.     install LoadSetupLibrary
  21.     ifstr(i)      $(STF_LANGUAGE)  == ""
  22.         goto end
  23.     else-ifstr(i) $(OPTION)        == ""
  24.         goto end
  25.     else-ifstr(i) $(INITSRC)       == ""
  26.         goto end
  27.     else-ifstr(i) $(ADDCOPY)       == ""
  28.         goto end
  29.     else-ifstr(i) $(DOCOPY)        == ""
  30.         goto end
  31.     else-ifstr(i) $(DOCONFIG)      == ""
  32.         goto end
  33.     else-ifstr(i) $(DOINSTALL)     == ""
  34.         goto end
  35.     else-ifstr(i) $(INFFILE)       == ""
  36.         goto end
  37.     endif
  38.     LoadLibrary "x" $(!STF_CWDDIR)setupdll.dll !LIBHANDLE
  39.     set STF_CONTROLSET = CurrentControlSet
  40.     read-syms SystemVariables
  41.     detect    SystemVariables
  42.     shell $(INFFILE) InstallOption $(STF_LANGUAGE) $(OPTION) $(INITSRC) $(ADDCOPY) $(DOCOPY) $(DOCONFIG) $(DOINSTALL)
  43.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  44.         Debug-Output "Execing Configuring hardware failed"
  45.         goto end
  46.     endif
  47.     ifstr(i) $($R0) == STATUS_SUCCESSFUL
  48.         set Exit_Code = $(!SETUP_ERROR_SUCCESS)
  49.     else-ifstr(i) $($R0) == STATUS_USERCANCEL
  50.         set Exit_Code = $(!SETUP_ERROR_USERCANCEL)
  51.     endif
  52. end =+
  53.     install   FreeSetupLibrary
  54.     FreeLibrary $(!LIBHANDLE)
  55.     exit
  56. [InstallOption]
  57.     set Status       = STATUS_FAILED
  58.     set DrivesToFree = {}
  59.     set !Option   = $($1)
  60.     set SrcDir    = $($2)
  61.     set AddCopy   = $($3)
  62.     set DoCopy    = $($4)
  63.     set DoConfig  = $($5)
  64.     set DoInstall = $($6)
  65.     set LanguageList = ^(LanguagesSupported, 1)
  66.     Ifcontains(i) $($0) in $(LanguageList)
  67.     else
  68.         set Status = STATUS_NOLANGUAGE
  69.         goto finish_InstallOption
  70.     endif
  71.     read-syms Strings$($0)
  72.     ifstr(i) $(!Option) != "DETECT"
  73.         set OptionList = ^(Options, 0)
  74.         ifcontains $(!Option) in $(OptionList)
  75.         else
  76.             goto finish_InstallOption
  77.         endif
  78.         set OptionList = ""
  79.         set DriverEntry       =   #(Options, $(!Option), 1)
  80.         set MiniportDriver    =   #(MiniportDrivers, $(DriverEntry), 1)
  81.         set InstalledDisplays =   #(MiniportDrivers, $(DriverEntry), 5)
  82.         set OtherFiles        =   #(MiniportDrivers, $(DriverEntry), 10)
  83.     endif
  84.     read-syms ServicesEntry
  85.     detect    ServicesEntry
  86.     set DriversList        = ^(MiniportDrivers, 0)
  87.     set MiniportDriverList = ^(Files-DisplayMiniportDrivers, 0)
  88.     set DisplayDriverList  = ^(Files-DisplayDLLs, 0)
  89.     set OpenGLDriverList   = ^(OpenGLDrivers, 0)
  90. installtheoption = +
  91.     ifstr(i) $(AddCopy) == "YES"
  92.         ifstr(i) $(!Option) == "DETECT"
  93.             set DoActualCopy = YES
  94.         else
  95.             set DoActualCopy = NO
  96.             set FileToCheck = #(Files-DisplayMiniportDrivers, $(MiniportDriver), 2)
  97.             LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck)
  98.             ifstr(i) $(STATUS) == NO
  99.                 set DoActualCopy = YES
  100.                 goto addfiles
  101.             endif
  102.             ForListDo $(OtherFiles)
  103.                 ifcontains $($) in $(MiniportDriverList)
  104.                     set FileToCheck = #(Files-DisplayMiniportDrivers, $($), 2)
  105.                     LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck)
  106.                     ifstr(i) $(STATUS) == NO
  107.                         set DoActualCopy = YES
  108.                         goto addfiles
  109.                     endif
  110.                 endif
  111.             EndForListDo
  112.             ForListDo $(InstalledDisplays)
  113.                 ifcontains $($) in $(DisplayDriverList)
  114.                     set FileToCheck = #(Files-DisplayDLLs, $($), 2)
  115.                     LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\"$(FileToCheck)
  116.                     ifstr(i) $(STATUS) == NO
  117.                         set DoActualCopy = YES
  118.                         goto addfiles
  119.                     endif
  120.                     ifcontains $($) in $(OpenGLDriverList)
  121.                         set FileToCheck = #(Files-DisplayOpenGLDrivers, #(OpenGLDrivers, $($), 1), 2)
  122.                         LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\"$(FileToCheck)
  123.                         ifstr(i) $(STATUS) == NO
  124.                             set DoActualCopy = YES
  125.                             goto addfiles
  126.                         endif
  127.                     endif
  128.                 endif
  129.             EndForListDo
  130.         endif
  131. addfiles = +
  132.         ifstr(i) $(DoActualCopy) == NO
  133.             shell "subroutn.inf" DriversExist $($0) $(String1)
  134.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  135.                 Debug-Output "VIDEO.INF: shelling DriversExist failed"
  136.                 goto finish_InstallOption
  137.             endif
  138.             ifstr(i) $($R0) == STATUS_CURRENT
  139.             else-ifstr(i) $($R0) == STATUS_NEW
  140.                 set DoActualCopy = YES
  141.             else-ifstr(i) $($R0) == STATUS_USERCANCEL
  142.                 Debug-Output "VIDEO.INF: User cancelled video installation"
  143.                 goto finish_InstallOption
  144.             else
  145.                 Debug-Output "VIDEO.INF: Error reported in DriversExist routine in SUBROUTN.INF"
  146.                 goto finish_InstallOption
  147.             endif
  148.         endif
  149.         ifstr(i) $(DoActualCopy) == YES
  150. ;        This gets the path from which NT was installed.  We want to
  151. ;        stick with A:\ or whatever.
  152. ;           shell "registry.inf" GetNTSource
  153. ;           ifint $($ShellCode) != $(!SHELL_CODE_OK)
  154. ;           else-ifstr(i) $($R0) != STATUS_SUCCESSFUL
  155. ;           else
  156. ;               set SrcDir = $($R1)
  157. ;           endif
  158.             shell "subroutn.inf" DoAskSourceEx $(SrcDir) $(String2)
  159.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  160.                 Debug-Output "VIDEO.INF: shelling DoAskSourceEx failed"
  161.                 goto finish_InstallOption
  162.             endif
  163.             ifstr(i) $($R0) == STATUS_SUCCESSFUL
  164.                 set SrcDir = $($R1)
  165.                 ifstr(i) $($R2) != ""
  166.                     set DrivesToFree = >($(DrivesToFree), $($R2))
  167.                 endif
  168.             else
  169.                 Debug-Output "VIDEO.INF: User cancelled asking source."
  170.                 goto finish_InstallOption
  171.             endif
  172.             ifstr(i) $(!Option) != "DETECT"
  173.                 install Install-AddCopyOption
  174.             else
  175.                 install Install-AddAllCopy
  176.             endif
  177.             ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
  178.                 Debug-Output "VIDEO.INF: Adding video files to copy list failed"
  179.                 goto finish_InstallOption
  180.             endif
  181.         else
  182.             set DoCopy = NO
  183.         endif
  184.     endif
  185.     ifstr(i) $(DoCopy) == "YES"
  186.         read-syms ProgressCopy$($0)
  187.         install Install-DoCopyOption
  188.         ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
  189.             Debug-Output "Copying files failed"
  190.             goto finish_InstallOption
  191.         else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
  192.             set Status = STATUS_USERCANCEL
  193.             goto finish_InstallOption
  194.         endif
  195.     endif
  196.     ifstr(i) $(DoConfig) == "YES"
  197.         shell "registry.inf" CheckSetupModify
  198.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  199.             goto finish_InstallOption
  200.         endif
  201.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  202.             goto finish_InstallOption
  203.         endif
  204.         ForListDo $(DriversList)
  205.             ifstr(i) $(!Option) == "DETECT"
  206.                 set DriverEntry = $($)
  207.                 set DeviceDescription = ""
  208.                 set ErrorControl      = $(!SERVICE_ERROR_IGNORE)
  209.                 ifcontains #(MiniportDrivers, $(DriverEntry), 1) in $(MiniportDriverList)
  210.                     ifint #(MiniportDrivers, $(DriverEntry), 9) == 1
  211.                         set configDriver = YES
  212.                     else
  213.                         set configDriver = NO
  214.                     endif
  215.                 else
  216.                     set configDriver = NO
  217.                 endif
  218.             else
  219.                 set DeviceDescription = $(!Option)
  220.                 set ErrorControl      = $(#(MiniportDrivers, $(DriverEntry), 4))
  221.                 ifstr(i) $(DriverEntry) == $($)
  222.                     set configDriver = YES
  223.                 else
  224.                     set configDriver = NO
  225.                 endif
  226.             endif
  227.             ifstr(i) $(configDriver) == YES
  228.                 Debug-Output "configuring the miniport driver"
  229.                 set MiniportDriver    =   #(MiniportDrivers, $(DriverEntry), 1)
  230.                 set Type              = $(#(MiniportDrivers, $(DriverEntry), 2))
  231.                 set Group             =   #(MiniportDrivers, $(DriverEntry), 3)
  232.                 set InstalledDisplays =   #(MiniportDrivers, $(DriverEntry), 5)
  233.                 set VgaCompatible     =   #(MiniportDrivers, $(DriverEntry), 6)
  234.                 set EventMessageFile  =   #(MiniportDrivers, $(DriverEntry), 7)
  235.                 set TypesSupported    =   #(MiniportDrivers, $(DriverEntry), 8)
  236.                 set ServiceNode   = $(DriverEntry)
  237.                 set ServiceBinary = %SystemRoot%\System32\drivers\#(Files-DisplayMiniportDrivers, $(MiniportDriver), 2)
  238.                 set ServicesValues = { +
  239.                         {Type,           0, $(!REG_VT_DWORD),     $(Type)                  }, +
  240.                         {Group,          0, $(!REG_VT_SZ),        $(Group)                 }, +
  241.                         {ErrorControl,   0, $(!REG_VT_DWORD),     $(ErrorControl)          }, +
  242.                         {BinaryPathName, 0, $(!REG_VT_EXPAND_SZ), $(ServiceBinary)         }  +
  243.                         }
  244.                 ifstr(i) $(DoInstall) == "YES"
  245.                     set ServicesValues = >($(ServicesValues), +
  246.                             {Start,          0, $(!REG_VT_DWORD),     $(!SERVICE_SYSTEM_START) })
  247.                 else
  248.                     set ServicesValues = >($(ServicesValues), +
  249.                             {Start,          0, $(!REG_VT_DWORD),     $(!SERVICE_DISABLED)     })
  250.                 endif
  251.                 set !ParametersValues = { +
  252.                         {"Device Description",        0, $(!REG_VT_SZ),       $(DeviceDescription) }, +
  253.                         {InstalledDisplayDrivers,     0, $(!REG_VT_MULTI_SZ), $(InstalledDisplays) }, +
  254.                         {VgaCompatible,               0, $(!REG_VT_DWORD),    $(VgaCompatible)     }, +
  255.                         {DefaultSettings.BitsPerPel,  0, $(!REG_VT_DWORD),    0                    }, +
  256.                         {DefaultSettings.VRefresh,    0, $(!REG_VT_DWORD),    0                    }, +
  257.                         {DefaultSettings.Interlaced,  0, $(!REG_VT_DWORD),    0                    }, +
  258.                         {DefaultSettings.XResolution, 0, $(!REG_VT_DWORD),    0                    }, +
  259.                         {DefaultSettings.YResolution, 0, $(!REG_VT_DWORD),    0                    }  +
  260.                         }
  261.                 ifstr(i) $(!Option) != "DETECT"
  262.                     shell "" #(MiniportDrivers, $(DriverEntry), 11)
  263.                 endif
  264.                 set DeviceValues = {}
  265.                 set EventLogValues = { +
  266.                         {EventMessageFile, 0, $(!REG_VT_EXPAND_SZ), $(EventMessageFile) }, +
  267.                         {TypesSupported,   0, $(!REG_VT_DWORD),     $(TypesSupported)   }  +
  268.                         }
  269.                 shell "registry.inf"  MakeServicesEntry $(ServiceNode)       +
  270.                                                         $(ServicesValues)    +
  271.                                                         $(!ParametersValues) +
  272.                                                         $(DeviceValues)      +
  273.                                                         $(EventLogValues)    +
  274.                                                         Device0
  275.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  276.                     Debug-Output "Couldn't execute MakeServicesEntry in registry.inf"
  277.                     goto finish_InstallOption
  278.                 endif
  279.                 ifstr(i) $($R0) != STATUS_SUCCESSFUL
  280.                     Debug-Output "MakeServicesEntry failed for video"
  281.                     goto finish_InstallOption
  282.                 endif
  283.                 ForListDo $(InstalledDisplays)
  284.                     ifcontains $($) in $(OpenGLDriverList)
  285.                         set KeyPath = { +
  286.                                 {SOFTWARE,       0, $(MaskAllAccess)}, +
  287.                                 {Microsoft,      0, $(MaskAllAccess)}, +
  288.                                 {"Windows NT",   0, $(MaskAllAccess)}, +
  289.                                 {CurrentVersion, 0, $(MaskAllAccess)}, +
  290.                                 {OpenGLDrivers,  0, $(MaskAllAccess)}  +
  291.                                 }
  292.                         set KeyValue = { +
  293.                                 {$($), 0, $(!REG_VT_SZ), #(OpenGLDrivers, $($), 1) } +
  294.                                 }
  295.                         shell "registry.inf" CreateKey $(!REG_H_LOCAL) $(KeyPath) $(KeyValue)
  296.                         Debug-Output "just did an OGL section"
  297.                         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  298.                             Debug-Output "Couldn't execute CreateKey in registry.inf"
  299.                             goto endInstallOpenGLDriver
  300.                         endif
  301.                         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  302.                             Debug-Output "CreateKey failed for OGLDrivers"
  303.                             goto endInstallOpenGLDriver
  304.                         endif
  305.                         Debug-Output "VIDEO.INF: success installing an ogl entry"
  306.                     endif
  307.                 EndForListDo
  308.             endif
  309.         EndForListDo
  310.     endif
  311.     set Status = STATUS_SUCCESSFUL
  312. finish_InstallOption = +
  313.     ForListDo $(DrivesToFree)
  314.         LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE"
  315.     EndForListDo
  316.     Return $(Status)
  317. [Install-AddCopyOption]
  318.     Debug-Output "adding to copy list"
  319.     set STF_VITAL = ""
  320.     AddSectionKeyFileToCopyList   Files-DisplayMiniportDrivers   +
  321.                                   $(MiniportDriver)              +
  322.                                   $(SrcDir)                      +
  323.                                   $(!STF_WINDOWSSYSPATH)\drivers
  324.     ForListDo $(OtherFiles)
  325.         ifcontains $($) in $(MiniportDriverList)
  326.             Debug-Output "adding other files to copy list"
  327.             AddSectionKeyFileToCopyList   Files-DisplayMiniportDrivers   +
  328.                                           $($)                           +
  329.                                           $(SrcDir)                      +
  330.                                           $(!STF_WINDOWSSYSPATH)\drivers
  331.         endif
  332.     EndForListDo
  333.     ForListDo $(InstalledDisplays)
  334.         ifcontains $($) in $(DisplayDriverList)
  335.             Debug-Output "adding display driver to copy list"
  336.             AddSectionKeyFileToCopyList   Files-DisplayDLLs          +
  337.                                           $($)                       +
  338.                                           $(SrcDir)                  +
  339.                                           $(!STF_WINDOWSSYSPATH)
  340.             ifcontains $($) in $(OpenGLDriverList)
  341.                 Debug-Output "adding opengl driver to copy list"
  342.                 AddSectionKeyFileToCopyList   Files-DisplayOpenGLDrivers +
  343.                                               #(OpenGLDrivers, $($), 1)  +
  344.                                               $(SrcDir)                  +
  345.                                               $(!STF_WINDOWSSYSPATH)
  346.             endif
  347.         endif
  348.     EndForListDo
  349.     exit
  350. [Install-AddAllCopy]
  351.     Debug-Output "adding all drivers to copy list"
  352.     set STF_VITAL = ""
  353.     AddSectionFilesToCopyList  Files-DisplayMiniportDrivers   +
  354.                                $(SrcDir)                      +
  355.                                $(!STF_WINDOWSSYSPATH)\drivers
  356.     AddSectionFilesToCopyList  Files-DisplayDLLs            +
  357.                                $(SrcDir)                    +
  358.                                $(!STF_WINDOWSSYSPATH)
  359.     exit
  360. [Install-DoCopyOption]
  361.     CopyFilesInCopyList
  362.     exit
  363. [noconfig]
  364.     return
  365. [Source Media Descriptions]
  366.     1 = "Number 9 Installation DISK (VIDEO)"  , TAGFILE = #9i128v2.35
  367. ;[Signature]
  368. ;    FileType = MICROSOFT_FILE
  369. ;[GetSignature]
  370. ;    read-syms Signature
  371. ;    return $(FileType)
  372. ;[ProductType]
  373. ;STF_PRODUCT  = Winnt
  374. ;STF_PLATFORM = I386
  375. [Files-DisplayDLLs]
  376. n9i128v2 = 1,n9i128v2.dll, SIZE=999
  377. [Files-DisplayMiniportDrivers]
  378. n9i128v2 = 1,n9i128v2.sys , SIZE=999
  379. [LanguagesSupported]
  380.     ENG
  381. [Options]
  382.     "#9 Imagine 128 ver. 2"                        = n9i128v2
  383. [OptionsTextENG]
  384.     "#9 Imagine 128 ver. 2"                        = "#9 Imagine 128 ver. 2"
  385. [ProgressCopyENG]
  386.     ProCaption   = "#9 Imagine 128 ver. 2 Install"
  387.     ProCancel    = "Cancel"
  388.     ProCancelMsg = "The #9 Imagine 128 ver. 2 display driver is not completely "+
  389.                    "installed.  Are you sure you want "+
  390.                    "to cancel copying files?"
  391.     ProCancelCap = "Setup Message"
  392.     ProText1     = "Copying:"
  393.     ProText2     = "To:"
  394. [StringsENG]
  395.     String1 = "Display"
  396.     String2 = "Please enter the full path to the #9 Imagine 128 ver. 2 display "+
  397.               "driver files.  Then choose Continue."
  398.