📄 e0post.asm
字号:
; []===========================================================[]
;
; NOTICE: THIS PROGRAM BELONGS TO AWARD SOFTWARE INTERNATIONAL(R)
; INC. IT IS CONSIDERED A TRADE SECRET AND IS NOT TO BE
; DIVULGED OR USED BY PARTIES WHO HAVE NOT RECEIVED
; WRITTEN AUTHORIZATION FROM THE OWNER.
;
; []===========================================================[]
;
; PAGE 60,132
; TITLE POST -- 386 ROM/BIOS POST
;----------------------------------------------------------------------------
;Rev Date Name Description
;---------------------------------------------------------------------------
;R185A 12/24/97 LAW Cann't show Halt_err_msg, If use full_screen_logo
;R184A 12/23/97 BAR Fixed GX86 update ESCD failed & warmboot hang up POST "C0"
; Flash type"MX28F2000TPC"
;R186 12/20/97 RCH Fixed system can not boot if AMD K6/3D CPU is plugged
; and UHCI/USB keyboard legacy is supported.
;R185 12/18/97 LAW change "EPA_LOGO_Use_Graphics" with "FULL_SCREEN_LOGO"
; switch to "Graphics_post" ,and show toget at same
; partnumber. This change cause POST display like
; followings:
; 1. Display power up screen with "full size LOGO" if
; graphic image is merged
; 2. Display EPA logo if no graphic image merged
; 3. The EPA logo can be created by 160x144x16 colors
; BitMap and don't need EPA2LOGO utility convertion
;R184 12/15/97 BAR Added check INTEL/TI 28F020 EEPROM
;R152E 12/11/97 KVN Fixed combined ROM to be destroy during warmboot if
; BIOS size is 2MB
;R98B 12/08/97 MIL Special testing memory for VGA share memory
;R167B 12/08/97 RIC Add a forever loop after PCI Reset routing to make system
; be stable. (VIA chip).
;R182A 12/08/97 DNL Clear ACPI memory size to fixed memory report error
;R183 11/28/97 JKY IF need SMI_HANDLER & USB routing move to XGROUP ,
; USB init hook call need use Xcall (TX support only).
;R182 11/27/97 DNL Added ACPI on/off option support
;R181 11/25/97 LAW added "EPA_LOGO_Use_Graphics" support to fixed some
; LCD VGA chipset problem at text mode show EPA logo
;R180 11/24/97 JKY Some MB using keyboard controller for notebook ,
; When External keyboard plug-in before power on ,
; PS2 mouse seek fail . patch the mistake so define
; "PS2_Mouse_force_seek" call hook to pmupost.asm
;R174B 11/21/97 KGN Change EPA LOGO defin PM_Support to EPA_LOGO_Switch
;R152D 11/17/97 KVN Remove POST_decompress code allocate behind E800h to
; avoid be clear if BIOS use E000h-E800h after POST_82S
;R179 11/15/97 RAY The routine POST_decompress do not turn off L1 cache
; if the image to be decompressed is not found. It
; causes the BIOS to in L1-ON mode after POST 14 if the
; EPA logo is not added.
;R178 11/14/97 BAR Support IMT 29F002T EEPROM
;R177 11/07/97 RAY The routines in CT_TABLE.ASM has been moved to
; XGROUP
;R176 11/06/97 KGN Add code for HPM Support
;R175 11/05/97 RCH Fixed KBC hang up while hot plugging PS2 mouse, also
; mask IRQ 12 if mouse not plugged.
;R167A 11/05/97 AVN Fixed SiS5598 PCI reset code.
;R174A 11/04/97 KGN Fix R174 coding lost command to show logo
;R110B 10/29/97 BAR Fixed WINBOND & AMD 2M EEPROM can't use same program.
; SST 2M detect ID code is same as WINBOND detect code
; ,after SST detect ID code also check WINBOND Manufacturer Code.
;R174 10/29/97 KGN Change EPA LOGO defin PM_Support to EPA_LOGO_Switch
;R173 10/27/97 KGN move defin LCD_CRT_OPTION to common.equ
;R172 10/24/97 TNY Add "OEM_Error_Special_Show1" definition for OEM
; special message.
;R169A 10/23/97 LAW some MB cann't init mouse too early so move code to 65s
;R171A 10/22/97 KVN Fixed R171 coding mistake that will cause drive A/B
; CMOS be clear if drive A or drive B is ItemDisable
;R171 10/17/97 KVN Force set HDD type of CMOS to SetupDef if HDD item
; status is ItemDisable
;R170 10/13/97 RCH Set default host clock to 66Mhz for Pentium II
; platform to prevent system hang while loading setup
; default with CMOS checksum failure.
;R169 10/13/97 LAW fixed some NS309 install OS/2 Warp 4.0 cann't found
; PS2Mouse
;R156C 10/09/97 RIC Fixed that OS/2 hang when BIOS define "ACPI_Support".
;R168 10/07/97 RCH Added boot from LAN option support
;R167 10/05/97 LAW Added VIA_PCI_RESET and SIS_5598_PCI_RESET when halt
; on post 05h
;R162A 10/02/97 KVN Fixed R162 code for choise fpinstal and mouse locate
; at XGROUP or EGROUP
;R166 10/01/97 TNY Set clock generator to be kernel.
;R165 09/18/97 MIL Added "Special_Patch_for_CH7001" define for customer
; (DAEWOO) use Gx86 M/B build in CH7001 TV Chip.
;R160A 09/12/97 LAW ifdef "NO_USE_KB" don't use "SPICAL_KB_TEST"
;R164 09/10/97 LAW added call Init_Ps2Mouse_Proc on post 5s for Ps2Mouse
; power on
;R163 08/28/97 DNL Do not call LCD function wile onboard VGA no work
;R162 08/28/97 KVN Fp_install has been moved to XGROUP
;R161 08/28/97 LAW Erase postcode 48h - KeyBoard command C9H because this
; command at AMI MegaKey is SWAP KB port/PS2Mouse port
; so Use SMC37xxx2 Superio some time KB hand up
;R160 08/28/97 LAW Use Winbond W839x7 serial Always add "SPECIAL_KB_TEST"
; because Winbond KBC some time not OK by Reset
;R159 08/27/97 LAW added "Superio_Early_Init" for some superio can Init
; at earlyio.asm
;R152C 08/14/97 KVN Fixed combine ROM over 64k size will be destroyed on
; POST decompress if BIOS is 2M.Because we put compressed
; code on 5000:0 and decomress to 4000:0 so if original
; size over 64k it will covered compressed code during
; decompress.Now we remove compressed code to 8000:0
;R158 08/11/97 JSN Added ALiM153x PCI_RESET when halt on post 05h
;R156B 08/08/97 DNL Fixed memphis ACPI driver no function problem
;R157 08/08/97 KEN Later PnP/ISA initialization to shorten the time in
; POST_11s.
;R156A 08/08/97 DNL Fixed ACPI Table setup failure problem
;R156 08/07/97 DNL Add ACPI Table size runtime assign function
;R155 08/07/97 LAW added "Special_KB_Test" for some KB decord test not OK
;R152B 08/05/97 KVN Fixed 2M BIOS combine ROM source data be destroied after
; POST_49S to solve ACPI table not establish to correct
;R152A 08/04/97 RCH Fixed system re-boot while press "del" key during
; decompress for ACPI code if 2Mbit BIOS is used.
;R154 08/04/97 RCH Fixed onboard SCSI/7880 can not work properly for
; 2Mbit BIOS.
;R153 07/28/97 MIL Added "Special_Patch_for_FUGU" define for customer
; use GPIO pin to control KEYLOCK status.
;R152 07/11/97 KVN POST runtime decompress code compact to subroutine
;R151 06/26/97 KEN No longer using the base memory for USB_SUPPORT.
;R150 06/25/97 RCH Replace "F000_CALL" with "call" for "F000_Shadow_W"
;R138A 06/24/97 TNY Add "PATCH_FOR_NEC_SDRAM_USE_CPU_RESET" for fix
; KB reset error some time.
;R149 06/23/97 RCH Added CMOS clear function by jumper setting
;R148 06/16/97 RCH Fixed system hang up if install DRAM over 512Mb and
; dual Penitum II CPUs are plugged.
;R147 06/13/97 KVN Support HDD_write_protect function by setup option
;R110A 06/10/97 AVN Some customer use WINBOND 2M eeprom will check sum fail
; because when do AMD detect code will destroy WINBOND
; struct, so put WINBOND detect code before AMD by define
; 'EARLY_WINBOND_DECODE'
; Suggest : The customer use WINBOND 2M EEPROM in primary
; choose.
;R98A 06/10/97 AVN Change Message Display.
;R146 06/10/97 RAY Some people do not want the beep sound if video is
; is not present. Define "NO_VIDEO_ABSENT_BEEP"
; in BIOS.CFG for this purpose
;R145 06/06/97 TNY Move some code to Xsegment to save E8 code space
;R144 06/05/97 TNY Added Init_Onboard_Sensor module.
;R142A 06/03/97 KVN Fixed full screen logo bmp data override external segment
; code so we move external code to 3A00h size 6000h bytes
; before decompress logo bmp data and move back later
;R143 05/30/97 pty Added code for RPB
;R142 05/29/97 KVN Added a new segment for store more BIOS code
;R111C 05/29/97 LAW Do PCI_RESET when halt on post 05h always
;R141 05/28/97 LAW Some VGA Card use 8000:0h - 8000:7fh memory. So if
; use 2M flash rom expand rom fist table harder data is
; empty
;R133A 05/27/97 TNY The bug is fixed by R93 of atorgs.asm.
;R140 05/26/97 DNL Add "Support_1_FDD" definition to save more space
;R139 04/23/97 LAW add AMITECH_OGO
;R137B 05/21/97 LAW added Earse EPALOGO_HIGH at bsetup.inc
;R123A 05/20/97 AVN Let MXIC 28F2000PPC reduce to alone in BIOS support.
;R138 05/16/97 RCH Force system to generate second CPU reset to fix NEC
; SDRAM sizing error ( always get one row only )
;R137A 05/15/97 LAW fixed some VGA card show EPALOGO error
;R137 05/13/97 LAW Move EpaLogo data and Award_Mark_Font use cbrom include.
; Befor the special EpaLogo must define "NOT_USE_CBROM_EPALOGO"
;R132A 05/13/97 TNY Fix coding error about display error when
; "NO_MEM_TEST_IF_QUICKPOST" defined.
;R136 05/13/97 RIC Fixed E8POST.ASM R266A lost some define.
;R135 05/07/97 RAX Patch if LCD panel graphic mode non expand then full
; screen logo small
;R134 05/07/97 DRS GIANTEC don't want beep when vga select "Absent" item
; It's special for GIANTEC
;R115B 05/05/97 LAW fixed swap KBC error when no connect Keyboard and no
; connect ps2 mouse
;R133 05/03/97 TNY Fix beeping voice to short when K6 CPU plugged.
;R132 05/02/97 RCH Added a switch to skip memory testing if user enable
; QuickPost in CMOS setup to speed up POST.
;R131 05/02/97 KGN Add No_Test_8254_Channel_2 Defin for ACC 2051 will Hang
;R130 04/29/97 JSN Added M6117_CPU define.
;R129 04/28/97 KEN Support USB always enabled at POST stage, and
; initialize USB before memory testing.
;R128 04/23/97 LAW add TMC_AS_LOGO
;R127 04/22/97 RAY Change the default year to 97 if CMOS invalid
;R100A 04/21/97 LAW Added SMC93x use GPIO11 to detect keylock
;R126 04/18/97 KVN Added MP table for dynamic to built into shadow
;R125 04/18/97 RAY Problem:
;
; S3 Virge VGA card manufactured by HsienTech failed
; to initialize when shut down from WIN95.
;
; Investigation:
;
; The failure is due to VGA BIOS checksum error. A
; few bytes are cleared to "0" when the WIN95 device
; driver is installed for the first time & ask the
; user to reboot the system. We change the on-card
; VGA BIOS from a mask ROM to a EPROM & the problem
; is fixed. This problem only happens to Hsien's
; VGA card on M/B with chipset does not support the
; PCI reset.
;
; Patch:
;
; Add switch: NO_CHECKSUM_VGA_BIOS to skip the
; checksum checking before we initialize the
; VGA BIOS and this is done only for Hsien's BIOS.
;
;R124 04/15/97 RAY Add switch: Temp_No_Flash_Support for Cyrix GX86,
; because in this moment, there still have problems
; supporting flash on this chip !
;R119A 04/15/97 RAY Do not turn off L1 cache for Cyrix GX chip
;R123 04/11/97 AVN Link MX28F2000PPC EEPROM into 2M EEPROM Group
;R122 04/10/97 KEN Just call Report_Usb_Keyboard if no AT keyboard
; attached, for USB kernal to record no AT keyboard.
;R121 04/08/97 KVN Fix "FULL_SCREEN_LOGO" function show single logo on
; screen center for any pattern and add set background
; color define on "CENTER_SHOW_LOGO" EQU XX (0 is black,
; 1 is blue, 2 is green ... etc.)
;R120A 04/08/97 RAX Remove -R120- fixed PS2 mouse can't work
;R115A 04/07/97 LAW fixed define "KBC_KBDMOUSE_SWAP" and only install mouse
; at secondary port haun in post 05h
;R120 04/02/97 DNL If system is notebook type ,do not check keyboard
;R119 04/01/97 KVN Added some code for Cyrix Gx86 & Cx5510 and VSA VGA
;R112A 03/27/97 AVN Fixed Onboard AHA7880 haun in init ROM, if 2M ROM
; support, because init AHA7880 need 64k space RAM at
; last, so must clear 4000h - 7fffh.
;R118 03/21/97 AVN Added MXIC 28F002TTC EEPROM support.
;R117 03/14/97 LAW Added "KCI_LOGO"
;R111B 03/14/97 LAW Added ALi51xx PCI_RESET when halt on post 05h
;R111A 03/12/97 LAW Added SMC37C93x PCI_RESET when halt on post 05h
;R116 03/12/97 KVN Add "No_Auto_Switch_to_Text" definition
;R115 03/10/97 RCH Added keyboard & mouse port swapping for super I/O
; SMC37C932. The switch is "KBC_KBDMOUSE_SWAP"
;R114 03/07/97 TNY Add "No_Show_Graphic_POST_MSG" definition.
;R113 03/07/97 AVN Added CSI CAT28F001P, MXIC 28F2000TPC EEPROM support.
;R112 03/03/97 KVN Added ACPI function support
;R111 03/03/97 LAW Fixed ITE8680/W83967AF/W83977AF/SMC37C67X with some
; power supply halt on post 05h
;R110 02/19/97 AVN Fixed AMD 29F002T EEPROM Auto Detect Fail.
;R103A 02/14/97 KVN Fixed no show full screen logo bug on 2M BIOS and you
; combine logo pattern at first area
;R109 02/04/97 LAW Add Tiger_Logo
;R104B 01/31/97 RCH Also fix AHA/2940 display "Memory Error" for P6 system
;R108 01/29/97 JKY Add code for save CMOS data to Flash ROM(SST only)
; by Advantech request (define CMOS_BACKUP_SUPPORT)
;R104A 01/27/96 RCH AHA/2940 display "Memory Error" while system warm
; booting
;R107 01/24/97 AVN Added CATALYST (CSI) CAT28F002T Support.
;R106 01/23/97 RAY Move PCI VGA related codes to PCIPOST.ASM
;R105 01/23/97 KVN Always hook INT10h ISR even none any display card on
; motherboard for display ASCII 7 to beep
;R104 01/22/97 KVN Don't clear 256K-640K RAM area for POST decompress
; after memory test(POST 31h)
;R84A 01/16/97 RCH Load 40Mhz as default for Pentium Pro and Klamath
; platforms cause system hang at POST 0BH for some
; specific DRAM type. Load 50Mhz to fix it.
;R103 01/15/97 KVN Remove P6 micro code to ROM driver pool from 0E000h
; POST location
;R102 01/10/97 LAW Added use ALi514x always define "DATE_ALARM_SUPPORT"
;R101 01/10/97 AVN Added 2M BIOS Support WINBOND W29C020 EEPROM.
; And Save Codes.
;R95B 01/07/97 AVN Fixed Mistake For INTEL 28F002 BX-T Updata ESCD Fail.
;R46A 12/31/96 RCH Modify memory high limit to support DRAM up to 1Gb
;R100 12/28/96 LAW Added SMC93x KEYLOCK USE GPIO pin control and display
; error message
;R99 12/21/96 TNY Add "No_Disable_PS2_Mouse_In_POST5" for QDI,
; QDI's M/B (with NS307) appears KB error sometimes.
;R98 12/20/96 LRY Special testing memory for VGA share memory
;R97 12/13/96 DNL Added notebook keyboard controller support
;R95A 12/12/96 AVN Fixed Full Screen Logo Failure for BIOS supporting
; flash type auto-detection
;R96 12/11/96 KEN Modification for non-Intel chipset's USB legacy support.
;R95 12/10/96 AVN Suppost Auto Detect EEPROM ID at POST 6 For 1M EEPROM
; By Define 'AUTO_CHK_1M_EEPROM'
;R94 12/10/96 RAY To detect CPU type for AMD & Intel in POST 9 instead
; of in POST 10. This is done to prevent some new CPU
; such as AMD K6 will hang up at POST_9' CYRIX_INIT.
;R93 12/10/96 LAW Some EPA_LOGO too long then warm boot auto detect HDD
; can be cover the logo ,so must define "ALWAYS_SHOW_CPU_TYPE"
;R89A 12/07/96 RAY Save codes for showing CPU P-Rating
; Also change the BIOS from showing 'PXXX CPU' to
; 'PXXX CPU Found' such that the screen doesn't looked
; so stupid !
;R92 12/05/96 RAY Enable Write Allocation for AMD K5 CPUs
;R91 12/05/96 DNL Do not check keylock error if system is notebook.
;R90 12/04/96 RAY Do not show P-rating in the current stage and will
; wait for AMD's further information.
;R89 12/03/96 RAY By AMD's request:
;
; Do not show the actual internal CPU clock for AMD
; & Cyrix CPU on screen by default.
;
; Add switch: DISP_MHZ_FOR_AMD_CYRIX to bypass the
; above default, i.e. always show internal clock
;
;R88 12/03/96 KVN Add F000h shadow read/writeable check
;R87 12/02/96 RAX Not report FDC error for notebook
;R86 12/02/96 RIC Add 'Special_DRAM_Test_Pattern' define for special
; DRAM patten test.
;R85 11/30/96 RAY Move all the CPU related code to CPUPOST.ASM for
; easy debugging
;R84 11/28/96 RAY Problem:
;
; Some BIOS hangs up at POST 0Bh when CMOS is cleared
;
; Fixed:
;
; Load pre-defined clock as 40MHz for 586 system and
; above so that the auto-table offset will be
; reasonable.
;
;R52F 11/28/96 LAW show NEW Super_KOREA_logo 136 * 126 "SEJIN"
;R56C 11/20/96 RAY Fix coding mistake of R56B which will cause PS2
; mouse not working
;R56B 11/19/96 LAW Call Cut_IRQ12 again beause of AUTO_IO.asm Call PRG
; _SUPER_IO_CHIP after Cut_IRQ12
;R83 11/15/96 TNY Some chip (ie:piix4) support date alarm, if the date
; alarm value is not zero cause IRQ8 failed. We should
; clear date alarm value at post.
; (option:DATE_ALARM_SUPPORT)
;R82 11/13/96 RCH Added a switch to improve 6x86 CPU cache hit rate for
; CCT386 testing. This switch can improve hit rate
; from 26% to 62% for 256Kb cache.
;R81 10/29/96 RAY Create a RTC default table if RTC time is invalid.
; This is to Fix setup screen mess up after clearing
; CMOS.
;R80 10/24/96 RCH Added L2 cache sizing & initialization for Klamath
; CPU.
;R76A 10/23/96 RAY Fixed coding mistake of R76, it cause year can not
; be saved in CMOS setup if the year over 1999.
;R79A 10/23/96 RCH Fixed 6x86 CPU can not display correct clock
;R79 10/22/96 RCH Support CPU clock over 255MHz for Klamath CPU.
;R78 10/17/96 KEN Fixed bug that BIOS report no keyboard error when
; no AT keyboard pluged, but USB keyboard present.
;R77 10/16/96 AVN Added 2M BIOS Support MXIC 28F2000PPC EEPROM.
; Define 'MXIC_28F2000PPC'
;R76 10/15/96 RAY Move the code in POST_11s which set the century as
; 20 & 19 to E8POST.ASM as a subroutine. This routine
; will be called from POST_11S & also from POST_99S
; in case the the RTC year is updated to 00h within
; the time range of POST 11 & 99.
;R75 10/11/96 RCH Kill unused external procedure & added NO_FAST_A20
; switch to save codes
;R70B 06/10/96 LAW Change PHILIPS_LOGO show time
;R74 10/07/96 RCH The APIC initial should be done before enabling USB
; legacy support
;R67A 10/07/96 RCH Fixed QAPLUS hang while warm booting with 512K L2
; cache and ISA VGA plugged.
;R73 09/26/96 RCH Added quick memory testing for P6 BIOS
;R72 09/25/96 RCH Rewrite some routine to get more space
;R71 09/25/96 RCH Skip some unused codes for P6 BIOS to get more space
;R70A 09/25/96 LAW Change PHILIPS_LOGO color
;R70 09/24/96 LAW Added "PHILIPS_LOGO" support
;R69 09/23/96 DNL Added codes for Notebook Power Management
;R68 09/23/96 AVN Added 2M BIOS Support INTEL 28F002BXT EEPROM.
;R67 09/21/96 RCH Speed up memory testing for warm boot and 0V resuming
;R65A 09/17/96 RCH Fixed system hang if no VGA card installed
;R52E 09/17/96 LAW Fixed Adaptec Use chr(10) & chr(11) So define "Super
; Korea_Logo" don't show it's two char.
;R66 09/11/96 RCH Should set mask bit of A35-A32 for P6 MTRRs
;R52D 09/09/96 LAW show Super_KOREA_logo 136 * 126
;R65 09/07/96 RCH Procedure REPORT_ERR_WSPKR is only used by POST, so
; put it in E-segment.
;R64 09/03/96 RCH Get boot sequence from BIOS data area instead of
; reading CMOS value
;R63 09/03/96 KEN Update USB structure to support USB device hot-plug.
;R56A 08/30/96 RCH This routine will be skipped if PS2_SELECTABLE defined
; and user choic "disable" for this item
;R62 08/30/96 DNL Fixed bug of keyboard have no function if PHOENIX KBC
; used
;R59B 08/30/96 AVN Fixed if PnP Use DALLAS NVM and Complier Fail, So
; Added 'FLASH_SUPPORT' Define For 2M Falsh Support.
;R52C 08/28/96 LAW Chang AWARD LOGO to ascii 1bh - 1fh
;R61 08/21/96 RCH Only keep one mirco-code in BIOS to pass INTEL's tests
;R60 08/21/96 LAW Add background color for mycomp ZET_EPA_LOGO
;R52B 08/21/96 LAW show 3 color & 128 * 112 big EPA_LOGO
;R59A 08/21/96 AVN Fix Include Mistake.
;R59 08/20/96 AVN Detect EEPROM Type at post 6, to support 2M EEPROM
; for save more code in F segment.
;R58 08/17/96 RCH POST code becomes abnormal if USB_SUPPORT is used.
;R57 08/16/96 KVN Fixed 2M bios with FULL_SCREEN_LOGO hang at 0c3h bug
;R56 08/16/96 RCH BIOS should enable Tri-state of IRQ 12 if no PS2
; mouse plugged for super I/O with built-in KBC,
; in order to release IRQ 12 for ISA or PCI
;R55 08/15/96 JSN Add Not_Init_Cyrix define for ALi M6117
;R52A 08/14/96 KVN Add bottom color 2 row support
;R30B 08/12/96 DNL Some chipset (Intel Mobil Triton) need to disable I/O
; decode rigister to disable COM & LPT port really
;R54 08/09/96 RAY Add auto COM & LPT support
;R53 08/09/96 TNY Add "Special_Patch_For_Abit_P6" for 2a69ha19.cfg
; Because their M/B hang at C1h when 16M unbalance
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -