bios.bat
来自「惠普公司bios完整源代码大机密!」· Batch 代码 · 共 185 行
BAT
185 行
@echo off
::----------------------------------------------------------------------------
::Rev Date Name Description
::----------------------------------------------------------------------------
::R06 10/19/99 RAY Problem:
::
:: Under certain situations, system hang up during
:: the compilation of chipset dependent files due to
:: big file size & complicated file structure.
::
:: Solution:
::
:: It is hard to force all chipset dependent files
:: to use the new ML 6.x to compile. Give option
:: to each BIOS to select the compiler for themselves.
::
:: Implementation:
::
:: BIOS.BAT issues a call to a chipset dependent batch
:: file (CHIP_MAK.BAT) file which create signature
:: files for the .MAK file to choose between MASM 5.x
:: or ML 6.x in the following manner:
::
:: CHIP_MAK.BAT
:: ------------
::
:: echo 1>aflash.ml
::
:: BIOS.MAK
:: --------
::
:: !IF EXIST (AFLASH.ASM)
:: aflash.obj: aflash.asm bios.cfg
:: !IF EXIST (AFLASH.ML)
:: ml /Zm /c aflash.asm
:: !ENDIF
:: !ENDIF
::
:: This CHIP_MAK.BAT should be saved in
:: H:\BIOS\600\CHIPSET\6AXXX
::
::R04A 10/14/99 RAY For the change of R04, if the system date is wrong
:: ,e.g. 1980, the "nmake asx.mak" will go into a infinitte
:: loop.
:: Thus we check for a temporary file created by ASX.MAK
:: to determine whether to invoke "GETASL R" or not.
::
::R05 10/12/99 RAY The existance of CKCMOS.MAP is a condition to decide
:: whether to invoke "CKCMOS /F" in order to save more
:: build time.
::
::R04 10/12/99 RAY Invoke 2 new *.MAK files: ASX.MAK & DSDT.MAK
::
:: ASX.MAK - to generate *.ASL from *.ASX
:: DSDT.MAK - to generate *.AML from *.ASL
::
:: This is added to prevent every time we invoke BIOS.BAT
:: we have to wait "GETASL R" to go through all *.ASX
:: files.
::
::R02 06/28/99 DRS Added OEM.MAK file for special compiler request
:: You can keep your special OEM.MAK in your own
:: directory of chipset part number (Ref 6A69M\M3\M3F)
::R01 06/24/98 KVN Added a switch to avoid system hang while make BIOS
:: like full screen logo.
if "%1"=="" goto :noinput
:yesinput
if "%1"=="%_last%" goto :mklast
set _last=%1
goto :mknew
:noinput
if "%_last%"=="" goto :error
goto :mklast
:mknew
echo.
echo About to build the entire BIOS...
echo.
touch bios.cfg
goto :mkbios
:mklast
echo.
echo Making the same version as last build
:mkbios
echo.
echo Building %_last%.BIN
echo.
::R04A ::R04 getasl R
::R04A ::R04 - starts
::R04A if not exist *.asl GETASL R
::R04A nmake /I /NOLOGO /C ASX.MAK
::R04A nmake /NOLOGO /C DSDT.MAK
::R04A if errorlevel 1 goto :end
::R04A ::R04 - ends
::R04A - starts
::========================
if exist _GETASL del _GETASL
if exist *.asl goto :AslExist
GETASL R
goto :Dsdt
:AslExist
::========================
nmake /I /NOLOGO /C ASX.MAK
if exist _GETASL GETASL R
if exist _GETASL del _GETASL
::========================
:Dsdt
nmake /NOLOGO /C DSDT.MAK
if errorlevel 1 goto :end
::R04A - ends
::R02 -start
if exist OEM.MAK nmake "NAME=%_last%" /M /nologo /f OEM.MAK
::R02 -end
::R01 nmake "NAME=%_last%" /nologo /f bios.mak
::R06 nmake "NAME=%_last%" /M /nologo /f bios.mak
::R06 - starts
if exist chippost.ml del chippost.ml
if exist aflash.ml del aflash.ml
if exist pmu.ml del pmu.ml
if exist pmupost.ml del pmupost.ml
if exist pnpchip.ml del pnpchip.ml
if exist chip_mak.bat call chip_mak.bat
nmake "NAME=%_last%" /M /nologo /f bios.mak
if exist chippost.ml del chippost.ml
if exist aflash.ml del aflash.ml
if exist pmu.ml del pmu.ml
if exist pmupost.ml del pmupost.ml
if exist pnpchip.ml del pnpchip.ml
::R06 - ends
if errorlevel 1 goto :end
::R03A if exist awardeyt.rom cbrom6 /ygroup awardeyt.rom ;R03
::R03A - start
if exist awardeyt.rom cbrom /ygroup awardeyt.rom
::R03A - end
echo.
::R01 if exist BuildFnt.mak nmake "NAME=%_last%" /nologo /f BuildFnt.mak
if exist BuildFnt.mak nmake "NAME=%_last%" /M /nologo /f BuildFnt.mak
if errorlevel 1 goto :end
::R01 if exist AddFont.mak nmake "NAME=%_last%" /nologo /f AddFont.mak
if exist AddFont.mak nmake "NAME=%_last%" /M /nologo /f AddFont.mak
if errorlevel 1 goto :end
if exist AddRom.bat call AddRom.bat
if exist %_last%.sav autocfg %_last%.sav %_last%.bin
::R05 - starts
if not exist CKCMOS.MAP CKCMOS /F
::R05 - ends
::R05 CKCMOS /F
echo.
goto :end
:error
echo.
echo Error! No previous version to build. Use SETTYPE.BAT
echo or type full part number
echo.
echo Example (1):
echo.
echo settype 6a69k000
echo bios
echo.
echo Example (2):
echo.
echo bios 6a69k000
echo.
goto :end
:end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?