📄 bdg_3364.bsf
字号:
; TITLE BMP.bsf - BMP Scrip File for Video BIOS
;==============================================================================
; Advance Graphics ROM BIOS
;------------------------------------------------------------------------------
; Copyright (c) Intel Corporation (2000 - 2003).
;
; INTEL MAKES NO WARRANTY OF ANY KIND REGARDING THE CODE. THIS CODE IS
; LICENSED ON AN "AS IS" BASIS AND INTEL WILL NOT PROVIDE ANY SUPPORT,
; ASSISTANCE, INSTALLATION, TRAINING OR OTHER SERVICES.
; INTEL DOES NOT PROVIDE ANY UPDATES, ENHANCEMENTS OR EXTENSIONS.
; INTEL SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY,
; NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY OTHER
; WARRANTY.
;
; Intel disclaims all liability, including liability for infringement of
; any proprietary rights, relating to use of the code. No license, express
; or implied, by estoppel or otherwise, to any intellectual property rights
; is granted herein.
;
; File Description:
; This file is the script file use by the BMP utility which will allow
; OEM's to edit data and select features on a binary file.
;
;------------------------------------------------------------------------------
;==============================================================================
; Header - Start of BMP Structure Definition
;------------------------------------------------------------------------------
StructDef
Find "BIOS_DATA_BLOCK "
; The following block will determine the reference
; pointer for all table pointer variables.
Find_Ptr_Ref "BIOS_DATA_BLOCK" ; Reference to beginning of VB VBT data
$BDB_Ver 2 bytes ; BIOS Data Block version number (decimal, e.g.201 = 02.01)
$BDB_Header_Size 2 bytes ; BIOS Data Block Header size
$BDB_Size 2 bytes ; BIOS Data Block size
;==============================================================================
; Block 254 - Signon Strings and Other General Data
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
$Bmp_BIOS_Size 2 bytes
$BIOS_Type 1 byte ; BIOS Type:
; = 0, DESKTOP
; = 1, MOBILE
$RelStage 1 byte ; Release status
$Chipset 1 byte ; = 0 - Almador
; = 1 - Brookdale-G
; = 2 - Montara-G
; = 3 - Springdale-G
; = 4 - Grantsdale-G
; = 5 - Alviso
; = 6 - Copper River
$Integrated_LVDS 1 bit ; Integrated LVDS Support:
; 1 = Yes
; 0 = None
$Integrated_TV 1 bit ; Integrated TV Support:
; 1 = Yes
; 0 = None
SKIP 6 bits
SKIP 4 bytes ; Skip build number string
; Signon and copyright strings
$Signon 155 bytes ; Signon string
SKIP 61 bytes ; Copyright string
; General Byte Definitions
$bmp_BIOS_CS 2 bytes ; BIOS code segment
$bmp_DOS_Boot_Mode 1 byte ; Mode number to set when DOS is boot
$bmp_BW_Percent 1 byte ; Set percentage of total memory BW
SKIP 1 byte ; Popup Memory Size
$bmp_Resize_PCI_BIOS 1 byte ; BIOS size granularity in 0.5 KB
SKIP 1 byte ; Is the CRT already switched to DDC2
;==============================================================================
; Block 1 - General Bit Definitions
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
; bmp_Bits_1
$Enable_Panel_Fitting 2 bits ; Enable / Disable panel fitting
$Flexaim_Support 1 bit ; Enable / Disable Flex-aim support
$Msg_Enable 1 bit ; Disable signon and copyright
$Cls_After_Signon 3 bits ; Clear screen after display message and pause
$bmp_DVO_A_Color_Flip 1 bit ; Flat color flip
ALIGN
; bmp_Bits_2
$Download_Ext_VBT 1 bit ; Download external VBT flag
$Enable_SSC 1 bit ; Enable/Disable SSC
$SSC_Freq 1 bit ; SSC Frequency
$Enable_LFPOn_Override 1 bit ; Enable/Disable LFP ON Override
$Disable_SSC_DDT 1 bit ; Disable SSC in Dual Display Twin
SKIP 3 bits
ALIGN
; bmp_Bits_3
$Disable_Smooth_Vision 1 bit ; Disable smooth vision
$Single_DVI_I 1 bit ; Single DVI-I connector for CRT and DVI display
SKIP 6 bit
ALIGN
$bmp_Legacy_Monitor_Detect 1 bit ; Use legacy monitor detect algorithm
SKIP 7 bits
ALIGN
;==============================================================================
; Block 254 - PRD Boot Algorithm Table
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
SKIP 32 bytes ; Skip PRD boot algorithm table
;==============================================================================
; Block 2 - General Data Definitions
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
; bmp_DDC_GPIO_Pins
$CRT_DDC_GMBUS_Pin 1 byte ; CRT DDC GMBUS pin pair
; bmp_DPMS_Bits
$DPMS_ACPI_Bit 1 bit ; Apply ACPI DPMS CRT Power States
$Skip_Boot_CRT_Detect 1 bit ; Disable/Enable skip boot CRT detect
$DPMS_AIM_Bit 1 bit ; Apply DPMS to AIM devices
SKIP 5 bits
ALIGN
; bmp_Boot_Dev_Bits
$Boot_Display 2 bytes ; Boot display type
$size_ChildStruc 1 byte
; Internal TV Data structure
#IF $Integrated_TV == 1 ; $Integrated_TV == TRUE
SKIP 33 bytes ; Skip TV data structure
#ENDIF ; $Integrated_TV == TRUE
; Internal LVDS Data structure
#IF $Integrated_LVDS == 1 ; $Integrated_LVDS == TRUE
SKIP 19 bytes ; Skip data structure
$LFP_DDC_GMBUS_Pin 1 byte ; LFP DDC GMBUS pin pair
SKIP 13 bytes
#ENDIF ; $Integrated_LVDS == TRUE
SKIP 33 bytes ; Skip device data structure
SKIP 33 bytes ; Skip device data structure
SKIP 33 bytes ; Skip device data structure
SKIP 33 bytes ; Skip device data structure
#IF $Chipset == 0 ; $Chipset == ALMADOR
SKIP 33 bytes ; Skip device data structure
#ENDIF ; $Chipset == ALMADOR
#IF $BIOS_Type == 1 ; $BIOS_Type == MOBILE
;==============================================================================
; Block 3 - Original Display Toggle List
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
$bmp_Display_Detect 1 byte ; Display must be attached or not
#ENDIF ; $BIOS_Type == MOBILE
#IF $Chipset == 0 ; $Chipset == ALMADOR
; BMP - Display Device Select
; Bit 15:8 = Pipe B display device select:
; Bit 15 = LFP2
; Bit 14 = EFP2
; Bit 13 = TV2
; Bit 12 = CRT2
; Bit 11 = LFP
; Bit 10 = EFP
; Bit 9 = TV
; Bit 8 = CRT
; Bit 7:0 = Pipe A display device select:
; Bit 7 = LFP2
; Bit 6 = EFP2
; Bit 5 = TV2
; Bit 4 = CRT2
; Bit 3 = LFP
; Bit 2 = EFP
; Bit 1 = TV
; Bit 0 = CRT
SKIP 2 bytes ; SKIP toggle list size
$bmp_Display_List1 2 bytes
$bmp_Display_List2 2 bytes
$bmp_Display_List3 2 bytes
$bmp_Display_List4 2 bytes
$bmp_Display_List5 2 bytes
$bmp_Display_List6 2 bytes
$bmp_Display_List7 2 bytes
$bmp_Display_List8 2 bytes
$bmp_Display_List9 2 bytes
$bmp_Display_List10 2 bytes
$bmp_Display_List11 2 bytes
$bmp_Display_List12 2 bytes
#ENDIF ; $Chipset == ALMADOR
;==============================================================================
; Block 4 - Mode Support Bit Definitions
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
SKIP 28 bytes ; Mode List
;==============================================================================
; Block 254 - Hook Defintions
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
#IF $BIOS_Type == 1 ; $BIOS_Type == MOBILE
$H31_POST_End_Hook 1 byte ; POST end hook int vector
$H33_After_Mode_Set 1 byte ; After mode set hook
$H35_Bootup_Display 1 byte ; Bootup display hook
$H38_Before_Mode_Set 1 byte ; Before mode set hook
$H45_VESA_DDC_Hook 1 byte ; VESA DDC hook interrupt vector
$H46_VESA_PM_Hook 1 byte ; VESA PM hook interrupt vector
$H47_Notify_Display_Sw 1 byte ; Notify display switch hook
$H48_After_VESA_PM 1 byte ; After VESA PM hook
$H14_Update_Display 1 byte ; Update Expansion/Display State Hook
$H14_Get_Misc_Status 1 byte ; Get Miscellaneous Status Hook
$H36_Boot_TV_Format 1 byte ; Boot TV to NTSC/PAL
$H34_Set_LFP_Fitting 1 byte ; Set panel fitting flags
$H40_Set_Panel_Type 1 byte ; Set panel fitting flags
#ELSE ; $BIOS_Type == MOBILE
$H35_Bootup_Display 1 byte ; Bootup display hook
$H36_Boot_TV_Format 1 byte ; Boot TV to NTSC/PAL
$H34_Set_LFP_Fitting 1 byte ; Set panel fitting flags
$H40_Set_Panel_Type 1 byte ; Set panel fitting flags
#ENDIF ; $BIOS_Type == MOBILE
#IF ($Chipset == 0) || ($Chipset == 2) ; ($Chipset == Almador) and ($Chipset == MT-G)
; SMI Call back defintions.
$S13_After_VESA_PM 1 byte ; After VESA PM Callback
SKIP 12 bytes ; Reserved
#ENDIF ; ($Chipset == Almador) or ($Chipset == MT-G)
; BMP - Pointer tables
$Dev_Boot_Table_Ptr 2 bytes ; Start at BMP Boot table
$Dev_Boot_Table_Size 2 bytes
$Dev_Boot_Table, $Dev_Boot_Table_Ptr, $Dev_Boot_Table_Size, Offset 0 byte
#IF $BIOS_Type == 1 ; $BIOS_Type == MOBILE
$Dev_Removed_Table_Ptr 2 bytes ; Start at BMP Remove configurations table
$Dev_Removed_Table_Size 2 bytes
$Dev_Removed_Table, $Dev_Removed_Table_Ptr, $Dev_Removed_Table_Size, Offset 0 byte
#ENDIF ; $BIOS_Type == MOBILE
$MMIO_Boot_Table_Ptr 2 bytes ; Start at BMP Boot table
$MMIO_Boot_Table_Size 2 bytes
$MMIO_Boot_Table, $MMIO_Boot_Table_Ptr, $MMIO_Boot_Table_Size, Offset 0 byte
$SWF_IO_Table_Ptr 2 bytes
$SWF_IO_Table_Size 2 bytes
$SWF_IO_Table, $SWF_IO_Table_Ptr, $SWF_IO_Table_Size, Offset 3 bytes
$SWF_MMIO_Table_Ptr 2 bytes
$SWF_MMIO_Table_Size 2 bytes
$SWF_MMIO_Table, $SWF_MMIO_Table_Ptr, $SWF_MMIO_Table_Size, Offset 3 bytes
#IF $Chipset == 0 ; $Chipset == ALMADOR
$Clock_Table_Ptr 2 bytes
$Clock_Table_Size 2 bytes
$Clock_Table, $Clock_Table_Ptr, $Clock_Table_Size, Offset 0 byte
#ENDIF ; $Chipset == ALMADOR
$Mode_Rem_Table_Ptr 2 bytes ; Start at BMP Boot table
$Mode_Rem_Table_Size 2 bytes
$Mode_Rem_Table, $Mode_Rem_Table_Ptr, $Mode_Rem_Table_Size, Offset 0 byte
#IF $BIOS_Type == 1 ; $BIOS_Type == MOBILE
$Toggle_List1_Ptr 2 bytes ; Start at BMP Boot table
$Toggle_List1_Size 2 bytes
$Toggle_List1, $Toggle_List1_Ptr, $Toggle_List1_Size, Offset 0 byte
$Toggle_List2_Ptr 2 bytes ; Start at BMP Boot table
$Toggle_List2_Size 2 bytes
$Toggle_List2, $Toggle_List2_Ptr, $Toggle_List2_Size, Offset 0 byte
$Toggle_List3_Ptr 2 bytes ; Start at BMP Boot table
$Toggle_List3_Size 2 bytes
$Toggle_List3, $Toggle_List3_Ptr, $Toggle_List3_Size, Offset 0 byte
$Toggle_List4_Ptr 2 bytes ; Start at BMP Boot table
$Toggle_List4_Size 2 bytes
$Toggle_List4, $Toggle_List4_Ptr, $Toggle_List4_Size, Offset 0 byte
#ENDIF ; $BIOS_Type == MOBILE
#IF $Chipset == 0 || $Chipset == 2 ; $Chipset == ALMADOR or MT_G
$GenMode_Tbls 2 bytes
$GenMode_Tbls_Col, $GenMode_Tbls, 3 bytes, Offset 0 bytes
$GenMode_Tbls_Misc, $GenMode_Tbls, 1 bytes, Offset 5 bytes
$GenMode_Tbls_Clk_60, $GenMode_Tbls, 4 bytes, Offset 6 bytes
$GenMode_Tbls_Time_60, $GenMode_Tbls, 24 bytes, Offset 10 bytes
$GenMode_Tbls_Clk_75, $GenMode_Tbls, 4 bytes, Offset 34 bytes
$GenMode_Tbls_Time_75, $GenMode_Tbls, 24 bytes, Offset 38 bytes
$GenMode_Tbls_Clk_85, $GenMode_Tbls, 4 bytes, Offset 62 bytes
$GenMode_Tbls_Time_85, $GenMode_Tbls, 24 bytes, Offset 66 bytes
#ENDIF ; $Chipset == 0 || $Chipset == 2
#IF $Chipset == 4 || $Chipset == 5 ; $Chipset == GD_G or ALV
$wa_EFP_Polarity_Ptr 2 bytes
$wa_EFP_Polarity_Size 2 bytes
$wa_EFP_Polarity, $wa_EFP_Polarity_Ptr, $wa_EFP_Polarity_Size, Offset 0 bytes
#ENDIF ; $Chipset == 4 || $Chipset == 5
#IF $Chipset == 0 || $Chipset == 2 ; $Chipset == ALMADOR or MT_G
;==============================================================================
; Block 5 - Generic Mode Data Used by Driver (OEM Customizable Mode)
;------------------------------------------------------------------------------
SKIP 3 bytes ; Skip block ID and size
$Generic_Mode_Flags 1 byte
SKIP 1 byte ; Reserved
$Generic_Mode_X 2 bytes
$Generic_Mode_Y 2 bytes
$Generic_Mode_Color 1 byte
$Generic_RRate1 1 byte
$Generic_RRate2 1 byte
$Generic_RRate3 1 byte
SKIP 1 byte ; Reserved
$Generic_Mode_TextCol 1 byte
$Generic_Mode_TextRow 1 byte
$Generic_Mode_FontHeight 1 byte
$Generic_Mode_PageSize 2 bytes
$Generic_Mode_MiscReg 1 byte
SKIP 84 bytes ; Skip rest of data
#ENDIF ; $Chipset == 0 || $Chipset == 2
;==============================================================================
; Block 6 - Extended MMIO Register tables
;------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -