Annotation of ntddk/src/setup/inf/other.inf, revision 1.1

1.1     ! root        1: ;--------------------------------------
        !             2: ; HARDWARE OPTION CLASSES WE UNDERSTAND
        !             3: ;--------------------------------------
        !             4: 
        !             5: [Options]
        !             6:     ;
        !             7:     Computer            = cpt
        !             8:     Video               = vio
        !             9:     Pointer             = ptr
        !            10:     Keyboard            = kbd
        !            11:     Layout              = lay
        !            12:     Language            = lng
        !            13:     Printer             = prn
        !            14:     Scsi                = scs
        !            15:     Tape                = tap
        !            16:     Sound               = snd
        !            17:     Driver              = drv
        !            18:     NetAdapter          = nad
        !            19:     NetDriver           = ndr
        !            20:     NetTransport        = nxp
        !            21:     NetService          = nsv
        !            22:     Network             = nwk
        !            23:     NetProvider         = npr
        !            24: 
        !            25: 
        !            26: [OemOptionFiles]
        !            27:     OemFiles = {} ? $(!LIBHANDLE) FindFileInstances $(!STF_WINDOWSSYSPATH)"\oem"$(Abb)"*.inf"
        !            28: 
        !            29: ;-----------------------------------------------------------------------
        !            30: ;
        !            31: ; ROUTINE:      ReturnOemOptions
        !            32: ;
        !            33: ; DESCRIPTION:  This routine finds out if an OEM file representing
        !            34: ;               the option exists in the windows sytem directory
        !            35: ;               and returns the options represented in the INF.
        !            36: ;
        !            37: ; INPUTS:       $0: Language to use
        !            38: ;               $1: Option Type (Computer|Video|...)
        !            39: ;
        !            40: ; OUTPUTS:      $R0: STATUS:   STATUS_SUCCESSFUL |
        !            41: ;                              STATUS_FAILED
        !            42: ;
        !            43: ;               $R1: OemOptionList: This is of form:
        !            44: ;                                   { {Oemfile1, Option1List, Option1TextList},
        !            45: ;                                     {Oemfile2, Option2List, Option2TextList},
        !            46: ;                                     ...
        !            47: ;                                   }
        !            48: ;
        !            49: ;
        !            50: ;------------------------------------------------------------------------
        !            51: 
        !            52: [ReturnOemOptions]
        !            53:     ;
        !            54:     ; Initialize
        !            55:     ;
        !            56:     set Status         = STATUS_FAILED
        !            57:     set OemOptionList  = {}
        !            58: 
        !            59:     set Abb = #(Options, $($1), 1)
        !            60:     read-syms OemOptionFiles
        !            61:     detect OemOptionFiles
        !            62: 
        !            63:     ForListDo $(OemFiles)
        !            64:         set OemFileName = $(!STF_WINDOWSSYSPATH)"\"$($)
        !            65:         set Found = FALSE
        !            66:         shell "", GetOptionsFromINF $($0) $($1) $(OemFileName)
        !            67:         ifstr(i) $($R0) == STATUS_SUCCESSFUL
        !            68:             ForListDo $(OemOptionList)
        !            69:                 ifstr(i) *($($), 2) == $($R1)
        !            70:                     set Found = TRUE
        !            71:                 endif
        !            72:             EndForListDo
        !            73:             ifstr(i) $(Found) == FALSE
        !            74:                 set OemOptionList = >($(OemOptionList), {$($), $($R1), $($R2)})
        !            75:             endif
        !            76:         endif
        !            77:     EndForListDo
        !            78:     set Status = STATUS_SUCCESSFUL
        !            79: 
        !            80: finish_GetCurrentOemOptions = +
        !            81:     Return $(Status) $(OemOptionList)
        !            82: 
        !            83: 
        !            84: 
        !            85: ;-----------------------------------------------------------------------
        !            86: ;
        !            87: ; ROUTINE:      GetOptionsFromINF
        !            88: ;
        !            89: ; DESCRIPTION:  This routine checks to see if the specified file exists
        !            90: ;               and if it is of the right type and gets option info from
        !            91: ;               the INF.
        !            92: ;
        !            93: ; INPUTS:       $0:  Language To use
        !            94: ;               $1:  OptionType
        !            95: ;               $2:  OptionFileName
        !            96: ;
        !            97: ; OUTPUTS:      $R0: STATUS:   STATUS_SUCCESSFUL  |
        !            98: ;                              STATUS_INFNOTFOUND |
        !            99: ;                              STATUS_FAILED
        !           100: ;
        !           101: ;               $R1: OptionList
        !           102: ;               $R2: OPtionTextList
        !           103: ;
        !           104: ;------------------------------------------------------------------------
        !           105: 
        !           106: [GetOptionsFromINF]
        !           107: 
        !           108:     ;
        !           109:     ; Initialize
        !           110:     ;
        !           111: 
        !           112:     set Status         = STATUS_FAILED
        !           113:     set OptionList     = {}
        !           114:     set OptionTextList = {}
        !           115: 
        !           116: 
        !           117:     set FileToCheck = $($2)
        !           118:     install Install-SeeIfFileIsPresent
        !           119:     ifstr(i) $(STATUS) != "YES"
        !           120:         set Status = STATUS_INFNOTFOUND
        !           121:         goto finish_GetOptionsFromINF
        !           122:     endif
        !           123: 
        !           124:     ;
        !           125:     ; Check that the INF represents the option we are looking for
        !           126:     ;
        !           127:     shell $($2) Identify
        !           128:     ifstr(i) $($R0) == "STATUS_SUCCESSFUL"
        !           129:         ifstr(i) $($R1) == $($1)
        !           130:             shell $($2) ReturnOptions $($0) $(!STF_BUSTYPE)
        !           131:             ifstr(i) $($R0) == STATUS_SUCCESSFUL
        !           132:                  set  OptionList     = $($R1)
        !           133:                  set  OptionTextList = $($R2)
        !           134:                  set  Status         = STATUS_SUCCESSFUL
        !           135:                  goto finish_GetOptionsFromINF
        !           136:             endif
        !           137:         endif
        !           138:     endif
        !           139: 
        !           140: finish_GetOptionsFromINF = +
        !           141:     Return $(Status) $(OptionList) $(OptionTextList)
        !           142: 
        !           143: 
        !           144: ;-----------------------------------------------------------------------
        !           145: ;
        !           146: ; ROUTINE:      GetNewOEMOption
        !           147: ;
        !           148: ; DESCRIPTION:  This routine prompts the user for a new OEM file, presents
        !           149: ;               the options supported and if the user chooses one of these
        !           150: ;               copies over the INF to the windows system directory.
        !           151: ;
        !           152: ; INPUTS:       $0:  Language to use
        !           153: ;               $1:  OemOptionList
        !           154: ;               $2:  OptionType
        !           155: ;               $3:  OptDisketteSource
        !           156: ;
        !           157: ; OUTPUTS:      $R0: STATUS:   STATUS_SUCCESSFUL |
        !           158: ;                              STATUS_USERCANCEL |
        !           159: ;                              STATUS_FAILED     |
        !           160: ;
        !           161: ;               $R1: NewOemOptionList
        !           162: ;               $R2: OemOptionChosen
        !           163: ;               $R3: OemOptionChosenText
        !           164: ;               $R4: OEMINFSource
        !           165: ;
        !           166: ;------------------------------------------------------------------------
        !           167: 
        !           168: [GetNewOEMOption]
        !           169:     ;
        !           170:     set Status            = STATUS_FAILED
        !           171: 
        !           172:     set Option            = $($2)
        !           173:     set OptDisketteSrc    = $($3)
        !           174:     set OptDiskette       = #(OptionDiskettes$($0), $($2), 1)
        !           175:     set InfName1          = "OEMSETUP.INF"
        !           176:     set InfName2          = "OEMSETNT.INF"
        !           177: 
        !           178:     set Abb = #(Options, $(Option), 1)
        !           179: 
        !           180:     set NewOemOptionList  = $($1)
        !           181:     set OptionChosen      = ""
        !           182:     set OptionChosenText  = ""
        !           183: 
        !           184:     ;
        !           185:     ; Prompt the user for the diskette containing the INF
        !           186:     ;
        !           187: 
        !           188: ask_dodiskette = +
        !           189:     ;
        !           190:     ;  Reset the INF name to the standard default
        !           191:     ;
        !           192:     set InfName = $(InfName1)
        !           193: 
        !           194:     shell "" DoDiskette $($0) $(OptDiskette) $(OptDisketteSrc)
        !           195:     set Status = STATUS_FAILED
        !           196: 
        !           197:     ifstr(i) $($R0) == STATUS_USERCANCEL
        !           198:         set Status = STATUS_USERCANCEL
        !           199:         goto finish_GetOEMOption
        !           200:     else-ifstr(i) $($R0) == STATUS_FAILED
        !           201:         goto finish_GetOEMOption
        !           202:     endif
        !           203: 
        !           204:     set OptDisketteSrc = $($R1)
        !           205: 
        !           206:     ;
        !           207:     ; Check that the Diskette contains an INF we are looking for
        !           208:     ;
        !           209: ask_inf_retry = +
        !           210:     FlushInf $(InfName)
        !           211:     LibraryProcedure FileToCheck, $(!LIBHANDLE), AppendBackSlash $(OptDisketteSrc)
        !           212:     set FileToCheck = $(FileToCheck)$(InfName)
        !           213:     install Install-SeeIfFileIsPresent
        !           214:     set OemSetupFilePath = $(FileToCheck)
        !           215:     set NfError = 1
        !           216: 
        !           217:     ifstr(i) $(STATUS) == YES
        !           218:         set NfError = 2
        !           219:         ;
        !           220:         ; Check that the INF represents the option we are looking for
        !           221:         ;
        !           222:         shell $(OemSetupFilePath) Identify
        !           223:         ifstr(i) $($R0) == "STATUS_SUCCESSFUL"
        !           224:             ifstr(i) $($R1) == $(Option)
        !           225:                 shell $(OemSetupFilePath) ReturnOptions $($0) $(!STF_BUSTYPE)
        !           226:                 ifstr(i) $($R0) == STATUS_SUCCESSFUL
        !           227:                      set OemList     = $($R1)
        !           228:                      set OemTextList = $($R2)
        !           229:                      goto asksingleselection
        !           230:                 endif
        !           231:             endif
        !           232:         endif
        !           233:     endif
        !           234:     ;
        !           235:     ;  The file isn't in NT format; try the alternate name.
        !           236:     ;
        !           237:     ifstr(i) $(InfName) == $(InfName1)
        !           238:         Set InfName = $(InfName2)
        !           239:         goto ask_inf_retry
        !           240:     endif
        !           241: 
        !           242:     read-syms NonFatalError$(NfError)$($0)
        !           243:     shell "subroutn.inf" SetupMessage $($0) "NONFATAL" $(NonFatal)
        !           244:     goto ask_dodiskette
        !           245: 
        !           246:     ;
        !           247:     ; Present the OEM options to the user. Let the user select.  If
        !           248:     ; the user selects to cancel, don't change anything, just return
        !           249:     ;
        !           250: 
        !           251: asksingleselection = +
        !           252:     shell "" DoSingleOption $(OemList) $(OemTextList) $(OptDiskette)
        !           253:     ifstr(i) $($R0) == STATUS_FAILED
        !           254:         set Status = STATUS_FAILED
        !           255:         goto finish_GetOEMOption
        !           256:     else-ifstr(i) $($R0) == STATUS_USERCANCEL
        !           257:         set Status = STATUS_USERCANCEL
        !           258:         goto finish_GetOEMOption
        !           259:     endif
        !           260: 
        !           261:     set OptionChosen     = $($R1)
        !           262:     set OptionChosenText = $($R2)
        !           263: 
        !           264:     ;
        !           265:     ; Determine the file name to use to copy over.  First see if the INF
        !           266:     ; is a duplicate
        !           267:     ;
        !           268: 
        !           269:     set Duplicate = FALSE
        !           270:     ForListDo $($1)
        !           271:         ifstr(i) *($($), 2) == $(OemList)
        !           272:             set OemFileName = *($($), 1)
        !           273:             set Duplicate = TRUE
        !           274:             FlushInf $(OemFileName)
        !           275:             goto copyinf
        !           276:         endif
        !           277:     EndForListDo
        !           278: 
        !           279:     ;
        !           280:     ; Not a duplicate, we need to copy it under a unique name.
        !           281:     ;
        !           282: 
        !           283:     set Num = 0
        !           284: nextinf = +
        !           285:     ifint $(Num) < 99
        !           286:         set OemFileName = "oem"$(Abb)$(Num)".inf"
        !           287:         set FileToCheck = $(!STF_WINDOWSSYSPATH)"\"$(OemFileName)
        !           288:         install Install-SeeIfFileIsPresent
        !           289:         ifstr(i) $(STATUS) == "YES"
        !           290:             set-add Num = $(Num) 1
        !           291:             goto nextinf
        !           292:         else
        !           293:             goto copyinf
        !           294:         endif
        !           295:     endif
        !           296:     goto finish_GetOEMOption
        !           297: 
        !           298: copyinf = +
        !           299:     ;
        !           300:     ; copy the INF over to the windows system directory
        !           301:     ;
        !           302:     set OemSrc = $(OemSetupFilePath)
        !           303:     set OemDst = $(!STF_WINDOWSSYSPATH)"\"$(OemFileName)
        !           304:     install Install-OemINF
        !           305: 
        !           306: 
        !           307:     ;
        !           308:     ; form the new oem option list
        !           309:     ;
        !           310:     ifstr(i) $(Duplicate) == TRUE
        !           311:     else
        !           312:         set NewOemOptionList = >($(NewOemOptionList), {$(OemFileName), $(OemList), $(OemTextList)})
        !           313:     endif
        !           314:     set Status = STATUS_SUCCESSFUL
        !           315: 
        !           316: finish_GetOEMOption = +
        !           317:     FlushInf $(InfName)
        !           318:     Return $(Status) $(NewOemOptionList) $(OptionChosen) $(OptionChosenText) $(OptDisketteSrc)
        !           319: 
        !           320: ;-----------------------------------------------------------------------
        !           321: ;
        !           322: ; ROUTINE:      GetNewOEMMultiOption
        !           323: ;
        !           324: ; DESCRIPTION:  This routine prompts the user for a new OEM file, presents
        !           325: ;               the options supported and if the user chooses one of these
        !           326: ;               copies over the INF to the windows system directory.
        !           327: ;
        !           328: ; INPUTS:       $0:  Language to use
        !           329: ;               $1:  OemOptionList
        !           330: ;               $2:  OptionTypeList;   e.g.,  { NetService, NetTransport }
        !           331: ;               $3:  OptDisketteSource
        !           332: ;
        !           333: ; OUTPUTS:      $R0: STATUS:   STATUS_SUCCESSFUL |
        !           334: ;                              STATUS_USERCANCEL |
        !           335: ;                              STATUS_FAILED     |
        !           336: ;
        !           337: ;               $R1: NewOemOptionList
        !           338: ;               $R2: OemOptionChosen
        !           339: ;               $R3: OemOptionChosenText
        !           340: ;               $R4: OEMINFSource
        !           341: ;
        !           342: ;------------------------------------------------------------------------
        !           343: 
        !           344: [GetNewOEMMultiOption]
        !           345: 
        !           346:     Debug-Output $(STF_CONTEXTINFNAME)": GetNewOEMMultiOption called"
        !           347: 
        !           348:     set Status            = STATUS_FAILED
        !           349: 
        !           350:     set OptionType        = ""
        !           351:     set OptionTypeList    = $($2)
        !           352:     set OptDisketteSrc    = $($3)
        !           353:     set InfName1          = "OEMSETUP.INF"
        !           354:     set InfName2          = "OEMSETNT.INF"
        !           355: 
        !           356:     read-syms OptionDisketteMulti$($0)
        !           357: 
        !           358:     Set TypeNames = ^(Options,0)
        !           359:     Set TypeAbbs  = ^(Options,1)
        !           360: 
        !           361:     set NewOemOptionList  = $($1)
        !           362:     set OptionChosen      = ""
        !           363:     set OptionChosenText  = ""
        !           364: 
        !           365:     ;
        !           366:     ; Prompt the user for the diskette containing the INF
        !           367:     ;
        !           368: 
        !           369: m_ask_dodiskette = +
        !           370:     Debug-Output $(STF_CONTEXTINFNAME)": GetNewOEMMultiOption shelling DoDiskette"
        !           371: 
        !           372:     ;
        !           373:     ;  Reset the INF name to the standard default
        !           374:     ;
        !           375:     set InfName = $(InfName1)
        !           376: 
        !           377:     shell "" DoDiskette $($0) $(OptDiskette) $(OptDisketteSrc)
        !           378:     set Status = STATUS_FAILED
        !           379: 
        !           380:     ifstr(i) $($R0) == STATUS_USERCANCEL
        !           381:         set Status = STATUS_USERCANCEL
        !           382:         goto m_finish_GetOEMOption
        !           383:     else-ifstr(i) $($R0) == STATUS_FAILED
        !           384:         goto m_finish_GetOEMOption
        !           385:     endif
        !           386: 
        !           387:     set OptDisketteSrc = $($R1)
        !           388: 
        !           389:     ;
        !           390:     ; Check that the Diskette contains an INF we are looking for
        !           391:     ;
        !           392: 
        !           393: m_ask_inf_retry = +
        !           394:     FlushInf $(InfName)
        !           395:     LibraryProcedure FileToCheck, $(!LIBHANDLE), AppendBackSlash $(OptDisketteSrc)
        !           396:     set FileToCheck = $(FileToCheck)$(InfName)
        !           397:     install Install-SeeIfFileIsPresent
        !           398:     set OemSetupFilePath = $(FileToCheck)
        !           399:     set NfError = 1
        !           400: 
        !           401:     ifstr(i) $(STATUS) == YES
        !           402:         set NfError = 2
        !           403:         ;
        !           404:         ; Check that the INF represents the option we are looking for
        !           405:         ;
        !           406:         shell $(OemSetupFilePath) Identify
        !           407:         ifstr(i) $($R0) == "STATUS_SUCCESSFUL"
        !           408:             ifcontains(i) $($R1) in $(OptionTypeList)
        !           409:                 Set OptionType = $($R1)
        !           410:                 shell $(OemSetupFilePath) ReturnOptions $($0) $(!STF_BUSTYPE)
        !           411:                 ifstr(i) $($R0) == STATUS_SUCCESSFUL
        !           412:                      set OemList     = $($R1)
        !           413:                      set OemTextList = $($R2)
        !           414:                      goto m_asksingleselection
        !           415:                 endif
        !           416:             endif
        !           417:         endif
        !           418:     endif
        !           419:     ;
        !           420:     ;  The file wasn't found or isn't in NT format; try the alternate name.
        !           421:     ;
        !           422:     ifstr(i) $(InfName) == $(InfName1)
        !           423:         Set InfName = $(InfName2)
        !           424:         goto m_ask_inf_retry
        !           425:     endif
        !           426: 
        !           427:     read-syms NonFatalError$(NfError)$($0)
        !           428:     shell "subroutn.inf" SetupMessage $($0) "NONFATAL" $(NonFatal)
        !           429:     goto m_ask_dodiskette
        !           430: 
        !           431:     ;
        !           432:     ; Present the OEM options to the user. Let the user select.  If
        !           433:     ; the user selects to cancel, don't change anything, just return
        !           434:     ;
        !           435: 
        !           436: m_asksingleselection = +
        !           437:     shell "" DoSingleOption $(OemList) $(OemTextList) $(OptDiskette)
        !           438:     ifstr(i) $($R0) == STATUS_FAILED
        !           439:         set Status = STATUS_FAILED
        !           440:         goto m_finish_GetOEMOption
        !           441:     else-ifstr(i) $($R0) == STATUS_USERCANCEL
        !           442:         set Status = STATUS_USERCANCEL
        !           443:         goto m_finish_GetOEMOption
        !           444:     endif
        !           445: 
        !           446:     set OptionChosen     = $($R1)
        !           447:     set OptionChosenText = $($R2)
        !           448: 
        !           449:     ;
        !           450:     ; Determine the file name to use to copy over.  First see if the INF
        !           451:     ; is a duplicate
        !           452:     ;
        !           453: 
        !           454:     set Duplicate = FALSE
        !           455:     ForListDo $($1)
        !           456:         ifstr(i) *($($), 2) == $(OemList)
        !           457:             set OemFileName = *($($), 1)
        !           458:             set Duplicate = TRUE
        !           459:             FlushInf $(OemFileName)
        !           460:             goto m_copyinf
        !           461:         endif
        !           462:     EndForListDo
        !           463: 
        !           464:     ;
        !           465:     ; Not a duplicate, we need to copy it under a unique name.
        !           466:     ;
        !           467: 
        !           468:     set Num = 0
        !           469:     Set Abb = *($(TypeAbbs),~($(TypeNames),$(OptionType)))
        !           470: 
        !           471: m_nextinf = +
        !           472:     ifint $(Num) < 99
        !           473:         set OemFileName = "oem"$(Abb)$(Num)".inf"
        !           474:         Debug-Output "OTHER.INF: Checking winsyspath for "$(OemFileName)
        !           475: 
        !           476:         set FileToCheck = $(!STF_WINDOWSSYSPATH)"\"$(OemFileName)
        !           477:         install Install-SeeIfFileIsPresent
        !           478:         ifstr(i) $(STATUS) == "YES"
        !           479:             set-add Num = $(Num) 1
        !           480:             goto m_nextinf
        !           481:         else
        !           482:             goto m_copyinf
        !           483:         endif
        !           484:     endif
        !           485:     goto m_finish_GetOEMOption
        !           486: 
        !           487: m_copyinf = +
        !           488:     ;
        !           489:     ; copy the INF over to the windows system directory
        !           490:     ;
        !           491:     set OemSrc = $(OemSetupFilePath)
        !           492:     set OemDst = $(!STF_WINDOWSSYSPATH)"\"$(OemFileName)
        !           493:     install Install-OemINF
        !           494:     ;
        !           495:     ; form the new oem option list
        !           496:     ;
        !           497:     ifstr(i) $(Duplicate) == TRUE
        !           498:     else
        !           499:         set NewOemOptionList = >($(NewOemOptionList), {$(OemFileName), $(OemList), $(OemTextList)})
        !           500:     endif
        !           501:     set Status = STATUS_SUCCESSFUL
        !           502: 
        !           503: m_finish_GetOEMOption = +
        !           504:     FlushInf $(InfName)
        !           505:     Return $(Status) $(NewOemOptionList) $(OptionChosen) $(OptionChosenText) $(OptDisketteSrc)
        !           506: 
        !           507: ;-----------------------------------------------------------------------
        !           508: ;
        !           509: ; ROUTINE:      DoDiskette
        !           510: ;
        !           511: ; DESCRIPTION:  This routine prompts the OEM for the source of the OEM
        !           512: ;               Diskette
        !           513: ;
        !           514: ; INPUTS:       $0:  Language
        !           515: ;               $1:  OemDiskette
        !           516: ;               $2:  OemDisketteSrc
        !           517: ;
        !           518: ; OUTPUTS:      $R0: STATUS:   STATUS_SUCCESSFUL |
        !           519: ;                              STATUS_USERCANCEL |
        !           520: ;                              STATUS_FAILED
        !           521: ;
        !           522: ;               $R1: Diskette Src
        !           523: ;
        !           524: ;------------------------------------------------------------------------
        !           525: 
        !           526: 
        !           527: [DoDiskette]
        !           528:     ;
        !           529:     ;
        !           530:     set Status         = STATUS_FAILED
        !           531:     set OemDiskette    = $($1)
        !           532:     set OemDisketteSrc = $($2)
        !           533: 
        !           534:     Debug-Output $(STF_CONTEXTINFNAME)": DoDiskette called"
        !           535: 
        !           536:     read-syms DisketteDlg$($0)
        !           537:     ui start "Diskette"
        !           538:     ifstr(i) $(DLGEVENT) == "CONTINUE"
        !           539:         set OemDisketteSrc = $(EditTextOut)
        !           540:         ui pop 1
        !           541:         set Status = STATUS_SUCCESSFUL
        !           542:         goto finish_dodiskette
        !           543:     else-ifstr(i) $(DLGEVENT) == "BACK"
        !           544:         ui pop 1
        !           545:         set Status = STATUS_USERCANCEL
        !           546:         goto finish_dodiskette
        !           547:     else
        !           548:         ui pop 1
        !           549:         goto finish_dodiskette
        !           550:     endif
        !           551: 
        !           552: finish_dodiskette = +
        !           553:     Return $(Status) $(OemDisketteSrc)
        !           554: 
        !           555: ;-----------------------------------------------------------------------
        !           556: ;
        !           557: ; ROUTINE:      DoSingleOption
        !           558: ;
        !           559: ; DESCRIPTION:  This routine presents the OEM Options to the user to
        !           560: ;               get a selectiom
        !           561: ;
        !           562: ; INPUTS:       $0:  OptionList
        !           563: ;               $1:  OptionTextList
        !           564: ;               $2:  OptionTypeText
        !           565: ;
        !           566: ; OUTPUTS:      $R0: STATUS:   STATUS_SUCCESSFUL |
        !           567: ;                              STATUS_USERCANCEL |
        !           568: ;                              STATUS_FAILED
        !           569: ;
        !           570: ;               $R1: OptionChosen
        !           571: ;               $R2: OptionChosenText
        !           572: ;
        !           573: ;------------------------------------------------------------------------
        !           574: 
        !           575: 
        !           576: [DoSingleOption]
        !           577: 
        !           578:     set Status              = STATUS_FAILED
        !           579:     set OemOptionChosen     = ""
        !           580:     set OemOptionChosenText = ""
        !           581:     set OemOptionList       = $($0)
        !           582:     set OemOptionTextList   = $($1)
        !           583:     set OemOptionTypeText   = $($2)
        !           584: 
        !           585:     read-syms OemSingleOptionDlg$(!STF_LANGUAGE)
        !           586:     ui start "Diskette"
        !           587:     ifstr(i) $(DLGEVENT) == "CONTINUE"
        !           588: 
        !           589:         ui pop 1
        !           590:         ifstr(i) $(ListItemsOut) == ""
        !           591:             set Status = STATUS_USERCANCEL
        !           592:         else
        !           593:             set OemOptionChosenText = $(ListItemsOut)
        !           594:             set OemOptionChosen = *($($0), ~($(ListItemsIn), $(ListItemsOut)))
        !           595:             set Status = STATUS_SUCCESSFUL
        !           596:         endif
        !           597: 
        !           598:         goto finish_dosingleoption
        !           599: 
        !           600:     else-ifstr(i) $(DLGEVENT) == "BACK"
        !           601:         ui pop 1
        !           602:         set Status = STATUS_USERCANCEL
        !           603:         goto finish_dosingleoption
        !           604:     else
        !           605:         ui pop 1
        !           606:         set Status = STATUS_FAILED
        !           607:         goto finish_dosingleoption
        !           608: 
        !           609:     endif
        !           610: 
        !           611: finish_dosingleoption = +
        !           612:     Return $(Status) $(OemOptionChosen) $(OemOptionChosenText)
        !           613: 
        !           614: 
        !           615: 
        !           616: 
        !           617: 
        !           618: [Install-SeeIfFileIsPresent]
        !           619: LibraryProcedure STATUS,$(!LIBHANDLE), CheckFileExistance $(FileToCheck)
        !           620: exit
        !           621: 
        !           622: 
        !           623: 
        !           624: 
        !           625: [Install-OemINF]
        !           626: LibraryProcedure STATUS,$(!LIBHANDLE), CopySingleFile $(OemSrc) $(OemDst)
        !           627: exit
        !           628: 
        !           629: 
        !           630: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.