Annotation of ntddk/src/setup/inf/layout/oemsetup.inf, revision 1.1

1.1     ! root        1: ;-----------------------------------------------------------------------
        !             2: ; OPTION TYPE
        !             3: ; -----------
        !             4: ; This identifies the Option type we are dealing with.  The different
        !             5: ; possible types are:
        !             6: ;
        !             7: ; COMPUTER, VIDEO, POINTER, KEYBOARD, LAYOUT, SCSI, PRINTER, ...
        !             8: ;-----------------------------------------------------------------------
        !             9: 
        !            10: [Identification]
        !            11:     OptionType = LAYOUT
        !            12: 
        !            13: ;-----------------------------------------------------------------------
        !            14: ; LANGUAGES SUPPORTED
        !            15: ; -------------------
        !            16: ;
        !            17: ; The languages supported by the OEM INF, For every language supported
        !            18: ; we need to have a separate text section for every displayable text
        !            19: ; section.
        !            20: ;
        !            21: ;-----------------------------------------------------------------------
        !            22: 
        !            23: [LanguagesSupported]
        !            24:     ENG
        !            25: 
        !            26: ;-----------------------------------------------------------------------
        !            27: ; OPTION LIST
        !            28: ; -----------
        !            29: ; This section lists the OEM Option key names.  These keys are locale
        !            30: ; independent and used to represent the option in a locale independent
        !            31: ; manner.
        !            32: ;
        !            33: ;-----------------------------------------------------------------------
        !            34: 
        !            35: [Options]
        !            36:     00000809 = kbduk.dll   ; UK English
        !            37: 
        !            38: 
        !            39: 
        !            40: ;-----------------------------------------------------------------------
        !            41: ; OPTION TEXT SECTION
        !            42: ; -------------------
        !            43: ; These are text strings used to identify the option to the user.  There
        !            44: ; are separate sections for each language supported.  The format of the
        !            45: ; section name is "OptionsText" concatenated with the Language represented
        !            46: ; by the section.
        !            47: ;
        !            48: ;-----------------------------------------------------------------------
        !            49: 
        !            50: [OptionsTextENG]
        !            51:     00000809 = "OEM UK English Keyboard Layout"
        !            52: 
        !            53: 
        !            54: [StringsENG]
        !            55:     String1 = "Setup couldn't install the chosen keyboard layout."
        !            56: 
        !            57: ;---------------------------------------------------------------------------
        !            58: ; 1. Identify
        !            59: ;
        !            60: ; DESCRIPTION:   To verify that this INF deals with the same type of options
        !            61: ;                as we are choosing currently.
        !            62: ;
        !            63: ; INPUT:         None
        !            64: ;
        !            65: ; OUTPUT:        $($R0): STATUS: STATUS_SUCCESSFUL
        !            66: ;                $($R1): Option Type (COMPUTER ...)
        !            67: ;                $($R2): Diskette description
        !            68: ;---------------------------------------------------------------------------
        !            69: 
        !            70: [Identify]
        !            71:     ;
        !            72:     ;
        !            73:     read-syms Identification
        !            74: 
        !            75:     set Status     = STATUS_SUCCESSFUL
        !            76:     set Identifier = $(OptionType)
        !            77:     set Media      = #("Source Media Descriptions", 1, 1)
        !            78: 
        !            79:     Return $(Status) $(Identifier) $(Media)
        !            80: 
        !            81: 
        !            82: 
        !            83: ;------------------------------------------------------------------------
        !            84: ; 2. ReturnOptions:
        !            85: ;
        !            86: ; DESCRIPTION:   To return the option list supported by this INF and the
        !            87: ;                localised text list representing the options.
        !            88: ;
        !            89: ;
        !            90: ; INPUT:         $($0):  Language used. ( ENG | FRN | ... )
        !            91: ;
        !            92: ; OUTPUT:        $($R0): STATUS: STATUS_SUCCESSFUL |
        !            93: ;                                STATUS_NOLANGUAGE
        !            94: ;                                STATUS_FAILED
        !            95: ;
        !            96: ;                $($R1): Option List
        !            97: ;                $($R2): Option Text List
        !            98: ;------------------------------------------------------------------------
        !            99: 
        !           100: [ReturnOptions]
        !           101:     ;
        !           102:     ;
        !           103:     set Status        = STATUS_FAILED
        !           104:     set OptionList     = {}
        !           105:     set OptionTextList = {}
        !           106: 
        !           107:     ;
        !           108:     ; Check if the language requested is supported
        !           109:     ;
        !           110:     set LanguageList = ^(LanguagesSupported, 1)
        !           111:     Ifcontains(i) $($0) in $(LanguageList)
        !           112:         goto returnoptions
        !           113:     else
        !           114:         set Status = STATUS_NOLANGUAGE
        !           115:         goto finish_ReturnOptions
        !           116:     endif
        !           117: 
        !           118:     ;
        !           119:     ; form a list of all the options and another of the text representing
        !           120:     ;
        !           121: 
        !           122: returnoptions = +
        !           123:     set OptionList     = ^(Options, 0)
        !           124:     set OptionTextList = ^(OptionsText$($0), 1)
        !           125:     set Status         = STATUS_SUCCESSFUL
        !           126: 
        !           127: finish_ReturnOptions = +
        !           128:     Return $(Status) $(OptionList) $(OptionTextList)
        !           129: 
        !           130: 
        !           131: 
        !           132: ;***************************************
        !           133: ; INTERNAL INSTALL ENTRY POINT FROM INF
        !           134: ;***************************************
        !           135: ;
        !           136: ; 3. InstallOption:
        !           137: ;
        !           138: ; FUNCTION:  To copy files representing OEM Options
        !           139: ;            To configure the installed option
        !           140: ;            To update the registry for the installed option
        !           141: ;
        !           142: ; INPUT:     $($0):  Language to use
        !           143: ;            $($1):  OptionID to install
        !           144: ;            $($2):  SourceDirectory
        !           145: ;            $($4):  AddCopy  (YES | NO)
        !           146: ;            $($5):  DoCopy   (YES | NO)
        !           147: ;            $($6):  DoConfig (YES | NO)
        !           148: ;
        !           149: ; OUTPUT:    $($R0): STATUS: STATUS_SUCCESSFUL |
        !           150: ;                            STATUS_NOLANGUAGE |
        !           151: ;                            STATUS_USERCANCEL |
        !           152: ;                            STATUS_FAILED
        !           153: ;
        !           154: 
        !           155: [InstallOption]
        !           156: 
        !           157:     ;
        !           158:     ; Set default values for
        !           159:     ;
        !           160:     set Status   = STATUS_FAILED
        !           161: 
        !           162:     ;
        !           163:     ; extract parameters
        !           164:     ;
        !           165:     set Option   = $($1)
        !           166:     set SrcDir   = $($2)
        !           167:     set AddCopy  = $($3)
        !           168:     set DoCopy   = $($4)
        !           169:     set DoConfig = $($5)
        !           170: 
        !           171:     ;
        !           172:     ; Check if the language requested is supported
        !           173:     ;
        !           174:     set LanguageList = ^(LanguagesSupported, 1)
        !           175:     Ifcontains(i) $($0) in $(LanguageList)
        !           176:     else
        !           177:         set Status = STATUS_NOLANGUAGE
        !           178:         goto finish_InstallOption
        !           179:     endif
        !           180:     read-syms Strings$($0)
        !           181: 
        !           182:     ;
        !           183:     ; check to see if Option is supported.
        !           184:     ;
        !           185: 
        !           186:     set OptionList = ^(Options, 0)
        !           187:     ifcontains $(Option) in $(OptionList)
        !           188:     else
        !           189:         goto finish_InstallOption
        !           190:     endif
        !           191:     set OptionList = ""
        !           192: 
        !           193: 
        !           194:     set OptionFile = #(Options, $(Option), 1)
        !           195: 
        !           196: installtheoption = +
        !           197:     ;
        !           198:     ; Code to add files to copy list
        !           199:     ;
        !           200: 
        !           201:     ifstr(i) $(AddCopy) == "YES"
        !           202:         install Install-AddCopyOption
        !           203:         ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
        !           204:             Debug-Output "Adding video files to copy list failed"
        !           205:             goto finish_InstallOption
        !           206:         endif
        !           207:     endif
        !           208: 
        !           209:     ifstr(i) $(DoCopy) == "YES"
        !           210:         read-syms ProgressCopy$($0)
        !           211:         install Install-DoCopyOption
        !           212:         ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
        !           213:             Debug-Output "Copying files failed"
        !           214:             goto finish_InstallOption
        !           215:         else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
        !           216:             set Status = STATUS_USERCANCEL
        !           217:             goto finish_InstallOption
        !           218:         endif
        !           219:     endif
        !           220: 
        !           221:     ifstr(i) $(DoConfig) == "YES"
        !           222:         shell "registry.inf"  MakeLayoutEntry $(Option) $(OptionFile)
        !           223: 
        !           224:         ifint $($ShellCode) != $(!SHELL_CODE_OK)
        !           225:             Debug-Output "Couldn't execute MakeLayoutEntry in registry.inf"
        !           226:             shell "subroutn.inf" SetupMessage $($0) "FATAL" $(String2)
        !           227:             goto finish_InstallOption
        !           228:         endif
        !           229: 
        !           230:         ifstr(i) $($R0) != STATUS_SUCCESSFUL
        !           231:             Debug-Output "MakeLayoutEntry failed"
        !           232:             shell "subroutn.inf" SetupMessage $($0) "FATAL" $(String2)
        !           233:             goto finish_InstallOption
        !           234:         endif
        !           235:     endif
        !           236: 
        !           237:     set Status = STATUS_SUCCESSFUL
        !           238: 
        !           239: finish_InstallOption = +
        !           240:     Return $(Status)
        !           241: 
        !           242: 
        !           243: 
        !           244: [Install-AddCopyOption]
        !           245: 
        !           246:     set STF_VITAL = ""
        !           247:     ;
        !           248:     ; Add the files to the copy list
        !           249:     ;
        !           250:     AddSectionKeyFileToCopyList   Files-Layout               +
        !           251:                                   $(Option)                  +
        !           252:                                   $(SrcDir)                  +
        !           253:                                   $(!STF_WINDOWSSYSPATH)
        !           254:     exit
        !           255: 
        !           256: 
        !           257: [Install-DoCopyOption]
        !           258: 
        !           259:     ;
        !           260:     ; Copy files in the copy list
        !           261:     ;
        !           262:     CopyFilesInCopyList
        !           263:     exit
        !           264: 
        !           265: ;**************************************************************************
        !           266: ; PROGRESS GUAGE VARIABLES
        !           267: ;**************************************************************************
        !           268: 
        !           269: [ProgressCopyENG]
        !           270:     ProCaption   = "Windows NT Setup"
        !           271:     ProCancel    = "Cancel"
        !           272:     ProCancelMsg = "Windows NT is not correcly installed.  Are you sure you want "+
        !           273:                    "to cancel copying files?"
        !           274:     ProCancelCap = "Setup Message"
        !           275:     ProText1     = "Copying:"
        !           276:     ProText2     = "To:"
        !           277: 
        !           278: 
        !           279: ;***************************************************************
        !           280: ; EXTERNAL INSTALL ENTRY POINT FROM CONTROL PANEL
        !           281: ;***************************************************************
        !           282: 
        !           283: ;
        !           284: 
        !           285: ;
        !           286: ; 4. ExternalInstallOption:
        !           287: ;
        !           288: ; FUNCTION:  To copy files representing OEM Options
        !           289: ;            To configure the installed option
        !           290: ;            To update the registry for the installed option
        !           291: ;
        !           292: ; INPUT:     /t STF_LANGUAGE = Language to use   (ENG)
        !           293: ;            /t OPTION       = Option to install (eg. 0010209)
        !           294: ;            /t ADDCOPY      = YES | NO
        !           295: ;            /t DOCOPY       = YES | NO
        !           296: ;            /t DOCONFIG     = YES | NO
        !           297: ;
        !           298: ; OUTPUT:    Exit code from process = 0 if okay
        !           299: ;            Anything else --> Error
        !           300: ;
        !           301: 
        !           302: 
        !           303: [ExternalInstallOption]
        !           304:     ;
        !           305:     ; set this to a non-zero value if you want to see debug-output statements
        !           306:     ; under ntsd
        !           307:     ;
        !           308:     Set !G:DebugOutputControl = 0
        !           309:     ;
        !           310:     ; Set up global variables needed by install option
        !           311:     ;
        !           312:     set Exit_Code = $(!SETUP_ERROR_GENERAL)
        !           313:     set DrivesToFree = {}
        !           314:     install LoadSetupLibrary
        !           315: 
        !           316:     ; check externally passed parameters
        !           317: 
        !           318:     ifstr(i)      $(STF_LANGUAGE)  == ""
        !           319:         goto end
        !           320:     else-ifstr(i) $(OPTION)        == ""
        !           321:         goto end
        !           322:     else-ifstr(i) $(ADDCOPY)       == ""
        !           323:         goto end
        !           324:     else-ifstr(i) $(DOCOPY)        == ""
        !           325:         goto end
        !           326:     else-ifstr(i) $(DOCONFIG)      == ""
        !           327:         goto end
        !           328:     endif
        !           329: 
        !           330: 
        !           331:     read-syms UiVars
        !           332:     detect    UiVars
        !           333: 
        !           334:     set STF_SRCDIR = A:\
        !           335:     shell "registry.inf" GetNTSource
        !           336:     ifint $($ShellCode) != $(!SHELL_CODE_OK)
        !           337:     else-ifstr(i) $($R0) != STATUS_SUCCESSFUL
        !           338:     else
        !           339:         set STF_SRCDIR = $($R1)
        !           340:     endif
        !           341: 
        !           342:     ;
        !           343:     ; ask for the setup sources
        !           344:     ;
        !           345:     shell "subroutn.inf" DoAskSource $(STF_SRCDIR)
        !           346:     ifint $($ShellCode) != $(!SHELL_CODE_OK)
        !           347:         Debug-Output "shelling DoAskSource failed"
        !           348:         goto end
        !           349:     endif
        !           350:     ifstr(i) $($R0) == STATUS_SUCCESSFUL
        !           351:         set STF_SRCDIR = $($R1)
        !           352:         ifstr(i) $($R2) != ""
        !           353:             set DrivesToFree = >($(DrivesToFree), $($R2))
        !           354:         endif
        !           355:     else
        !           356:         goto end
        !           357:     endif
        !           358: 
        !           359:     ;
        !           360:     shell "" InstallOption $(STF_LANGUAGE) $(OPTION) $(STF_SRCDIR) $(ADDCOPY) $(DOCOPY) $(DOCONFIG)
        !           361:     ifint $($ShellCode) != $(!SHELL_CODE_OK)
        !           362:         Debug-Output "Execing Configuring hardware options failed"
        !           363:         goto end
        !           364:     endif
        !           365:     ifstr(i) $($R0) == STATUS_SUCCESSFUL
        !           366:         set Exit_Code = $(!SETUP_ERROR_SUCCESS)
        !           367:     else-ifstr(i) $($R0) == STATUS_USERCANCEL
        !           368:         set Exit_Code = $(!SETUP_ERROR_USERCANCEL)
        !           369:     endif
        !           370: 
        !           371: end =+
        !           372:     ForListDo $(DrivesToFree)
        !           373:         LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE"
        !           374:     EndForListDo
        !           375: 
        !           376:     install   FreeSetupLibrary
        !           377:     exit
        !           378: 
        !           379: [LoadSetupLibrary]
        !           380:     LoadLibrary "x" $(!STF_CWDDIR)setupdll.dll !LIBHANDLE
        !           381:     exit
        !           382: 
        !           383: [FreeSetupLibrary]
        !           384:     FreeLibrary $(!LIBHANDLE)
        !           385:     exit
        !           386: 
        !           387: [UiVars]
        !           388: 
        !           389:     STF_CONTROLSET     = CurrentControlSet
        !           390:     STF_WINDOWSPATH    = "" ? $(!LIBHANDLE) GetWindowsNtDir
        !           391:     STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir
        !           392: 
        !           393: [Source Media Descriptions]
        !           394:     1  = "OEM DISK (LAYOUT)"  , TAGFILE = laytag
        !           395: 
        !           396: [ProductType]
        !           397: STF_PRODUCT  = Winnt
        !           398: STF_PLATFORM = Mips
        !           399: 
        !           400: [Files-Layout]
        !           401: 00000809 = 1,kbduk.dll , SIZE=999

unix.superglobalmegacorp.com

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