⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gpm.dat

📁 AMI 主板的BIOS源码。
💻 DAT
📖 第 1 页 / 共 2 页
字号:
;-----------------------------------------------;
;	 BIOS POWER MANAGEMENT DATA AREA	;
;	   USED BY GREEN PC CORE BIOS		;
;	THE DATA AREA IS IN EQUATE FORM		;
;		     GPM.DAT			;
;-----------------------------------------------;
;*****************************************************************;
;*****************************************************************;
;**								**;
;**	(C)Copyright 1985-1996, American Megatrends Inc.	**;
;**								**;
;**			All Rights Reserved.			**;
;**								**;
;**		6145-F, Northbelt Parkway, Norcross,		**;
;**								**;
;**		Georgia - 30071, USA. Phone-(770)-246-8600.	**;
;**								**;
;*****************************************************************;
;*****************************************************************;
;*****************************************************************;
;-----------------------------------------------;
;	     DECLARE FIXED ORG HERE		;
;	THIS 'ORG' SHOULD NOT BE CHANGED	;
;   smi_seg:0d000h thru 0faffh (2b00h bytes)	;
;	available for usage as data area	;
; NOTE :					;
;	As this cseg data area are in equate	;
;	form, initialise this data area during	;
;	SMRAM initialization.			; 
;-----------------------------------------------;

dseg_data_area_begin	equ	0d000h		; 0d000h THRU 0faffh (02b00H BYTES)

;-----------------------------------------------;
;*****************************************************************;
;*****************************************************************;
;**								**;
;**	(C)Copyright 1985-1996, American Megatrends Inc.	**;
;**								**;
;**			All Rights Reserved.			**;
;**								**;
;**		6145-F, Northbelt Parkway, Norcross,		**;
;**								**;
;**		Georgia - 30071, USA. Phone-(770)-246-8600.	**;
;**								**;
;*****************************************************************;
;*****************************************************************;
;-----------------------------------------------;
;    DATA AREA FOR SUPPORTING DIFFERENT CPUS	;
;-----------------------------------------------;

misc_proc_info		equ	dseg_data_area_begin	; 1 BYTE..miscellaneous processor info
							; bit 0 1...numeric co-processor present
							; bit 1 reserved
							; bit 7-2 reserved

misc_proc_smi_info	equ	misc_proc_info + 01	; 1 BYTE..miscellaneous processor SMI info
							; bit 0 0..64KB or greater SMRAM
							;	1..32KB SMRAM
							; bit 1 RESERVED...USED INTERNALLY DURING SMI POST FOR SMBASE RELOCATION INFO
							; b3 b2 ... SMI type
							;  0  0 ... INTEL type SMI
							;  0  1 ... CYRIX type SMI
							;  1  0 ... AMD type SMI
							;  1  1 ... reserved
							; bit 4 0..single CPU board
							;	1..dual/multiple CPU board
							; bit 5 0..SMI based power management
							;	1..IRQ based power management
							; bit 6 0..Non-SMI CPU
							;	1..SMI capable CPU
							; bit 7 RESERVED...USED INTERNALLY DURING SMI POST FOR SMI POST STATUS

no_of_sec_cpu_present	equ	misc_proc_smi_info + 01	; 1 BYTE..# of CPU present on the board

bios_detected_cpu_mfr	equ	no_of_sec_cpu_present + 01; 1 WORD..CPU manufacturer (as detected by CORE BIOS)
							; bit 0 1 INTEL
							; bit 1 1 CYRIX
							; bit 2 1 AMD
							; bit 3 1 IBM
							; bit 4 1 TI (TEXAS INSTRUMENTS)
							; bit 5 1 UMC
							; bit 15-6 reserved

cpu_vendor	equ	bios_detected_cpu_mfr + 02	; 1 WORD..CPU manufacturer (as seen by PM BIOS)
							; bit 0 1 INTEL
							; bit 1 1 CYRIX
							; bit 2 1 AMD
							; bit 3 1 IBM
							; bit 4 1 TI (TEXAS INSTRUMENTS)
							; bit 5 1 UMC
							; bit 15-6 reserved

cpu_name_dseg	equ	cpu_vendor + 02			; 1 WORD..CPU model # as returned by desktop core bios
							; for different CPU vendor

;-----------------------------------------------;
;	SMI_IDT_DESCRIPTOR FOR P54C CPU		;
;-----------------------------------------------;

smi_idt_descriptor	equ	cpu_name_dseg +02	; 8 BYTES...IDT

;-----------------------------------------------;
;	  CPU STATE DUMP SAVE DATA AREA		;
;	  It is a structure of 9 DWORDs		;
;-----------------------------------------------;

;struc_cpu_gen_purpose_reg	struc

reg_eax		equ	00h			; 1 DWORD...EAX
reg_ebx		equ	reg_eax + 04		; 1 DWORD...EBX
reg_ecx		equ	reg_ebx + 04		; 1 DWORD...ECX
reg_edx		equ	reg_ecx + 04		; 1 DWORD...EDX
reg_esi		equ	reg_edx + 04		; 1 DWORD...ESI
reg_edi		equ	reg_esi + 04		; 1 DWORD...EDI
reg_ebp		equ	reg_edi + 04		; 1 DWORD...EBP
reg_eflags	equ	reg_ebp + 04		; 1 DWORD...EFLAGS
reg_cr0		equ	reg_eflags + 04		; 1 DWORD...CR0

;struc_cpu_gen_purpose_reg	ends

;-----------------------------------------------;

cpu_gen_purpose_reg_entry	equ	smi_idt_descriptor + 08; 9 DWORD..(36 bytes)

;-----------------------------------------------;

;struc_cpu_spl_reg_save	struc

reg_cr1		equ	000h			; 1 DWORD...CR1 (RESERVED)
reg_cr2		equ	reg_cr1 + 04		; 1 DWORD...CR2
reg_cr3		equ	reg_cr2 + 04		; 1 DWORD...CR3
reg_dr0		equ	reg_cr3 + 04		; 1 DWORD...DR0
reg_dr1		equ	reg_dr0 + 04		; 1 DWORD...DR1
reg_dr2		equ	reg_dr1 + 04		; 1 DWORD...DR2
reg_dr3		equ	reg_dr2 + 04		; 1 DWORD...DR3
reg_dr4		equ	reg_dr3 + 04		; 1 DWORD...DR4 (RESERVED)
reg_dr5		equ	reg_dr4 + 04		; 1 DWORD...DR5 (RESERVED)
reg_dr6		equ	reg_dr5 + 04		; 1 DWORD...DR6
reg_tr3		equ	reg_dr6 + 04		; 1 DWORD...TR3 (CACHE TEST REG...DO NOT SAVE/RESTORE)
reg_tr4		equ	reg_tr3 + 04		; 1 DWORD...TR4 (CACHE TEST REG...DO NOT SAVE/RESTORE)
reg_tr5		equ	reg_tr4 + 04		; 1 DWORD...TR5 (CACHE TEST REG...DO NOT SAVE/RESTORE...NOT READABLE)
reg_tr6		equ	reg_tr5 + 04		; 1 DWORD...TR6
reg_tr7		equ	reg_tr6 + 04		; 1 DWORD...TR7

;struc_cpu_spl_reg_save	ends

;-----------------------------------------------;

cpu_spl_reg_save	equ	cpu_gen_purpose_reg_entry + 36; 15 DWORD..(60 bytes)SIZE struc_cpu_spl_reg_save dup (?)

;-----------------------------------------------;

cpu_dump_save_area	equ	cpu_spl_reg_save + 60; 512 BYTES...CPU DUMP save area
fpu_state_save_area	equ	cpu_dump_save_area + 512; 128 BYTES...FPU DUMP save area

;-----------------------------------------------;
;	  RTC DATE/TIME SAVE DATA AREA		;
;-----------------------------------------------;

suspend_date	equ	fpu_state_save_area + 128; 1 DWORD...save suspend date
suspend_time	equ	suspend_date +04	; 1 DWORD...save suspend time

;-----------------------------------------------;
;      IDE DRIVE POWER MANAGEMENT DATA AREA	;
;-----------------------------------------------;

;struc_hdd_x_info	struc

hdd_misc_control_info		equ	0	; 1 BYTE...control environment information
						; bits 3-0 IRQ level
						; bit 4 1 means drive is available
						; bit 5 reserved
						; bit 6 0/1 primary/secondary controller
						; bit 7 0/1 master/slave drive
hdd_standby_imm_cmd_save	equ	hdd_misc_control_info + 01   ; 1 BYTE...standby immediate command to be used with the drive
hdd_standby_cmd_save		equ	hdd_standby_imm_cmd_save + 01; 1 BYTE...standby command to be used with the drive
hdd_idle_imm_cmd_save		equ	hdd_standby_cmd_save + 01    ; 1 BYTE...idle immediate command to be used with the drive
hdd_idle_cmd_save		equ	hdd_idle_imm_cmd_save + 01   ; 1 BYTE...idle command to be used with the drive

;struc_hdd_x_info	ends

;-----------------------------------------------;

struc_hdd_x_info_size	equ	5		; SIZE of struc_hdd_x_info

hdd_0_control_struc	equ	suspend_time + 04		; 5 BYTES...for drv 0 of primary cntlr
hdd_1_control_struc     equ     hdd_0_control_struc + 05	; 5 BYTES...for drv 1 of primary cntlr
hdd_2_control_struc     equ     hdd_1_control_struc + 05	; 5 BYTES...for drv 0 of secondary cntlr
hdd_3_control_struc     equ     hdd_2_control_struc + 05	; 5 BYTES...for drv 1 of secondary cntlr

;-----------------------------------------------;
;	  EXTENDED GET DRIVE PARAMETERS		;
;	        SUPPORT DATA AREA		;
;-----------------------------------------------;

;struc_ext_drv_param	struc

ms_info_size		equ	000h			; 1 WORD...information size
ms_flags		equ	ms_info_size + 02	; 1 WORD...flags
ms_cylinders		equ	ms_flags + 02		; 1 DWORD...no. of cylinders on disk
ms_heads		equ	ms_cylinders + 04	; 1 DWORD...no. of heads per cylinder
ms_sec_per_track	equ	ms_heads + 04		; 1 DWORD...no. of sectors per track
ms_sectors		equ	ms_sec_per_track + 04	; 1 QWORD...no. of sectors on requested disk
ms_sector_size		equ	ms_sectors + 08		; 1 WORD...no. of bytes per sector
wd_extended_table	equ	ms_sector_size + 02	; 1 DWORD...pointer to configuration parameter

;struc_ext_drv_param	ends

;-----------------------------------------------;

struc_ext_drv_param_size	equ	30		; SIZE of struc_ext_drv_param

ext_drv_param	equ	hdd_3_control_struc + 05	; 30 BYTES...extended drive parameter save data area

;-----------------------------------------------;

;struc_wd_extended_table	struc

wd_ide_base_addr	equ	000h			; 1 WORD...I/O port base address
wd_ide_control_port_addr equ	wd_ide_base_addr + 02	; 1 WORD...control port address
wd_hdd_misc_info_00	equ	wd_ide_control_port_addr + 02 ; 1 BYTE...bits 3-0 reserved
							; bit 4 0/1 master/slave drive
							; bit 5 reserved
							; bit 6 1 LBA enabled
							; bit 7 reserved
wd_reserved_00		equ	wd_hdd_misc_info_00 + 01; 1 BYTE...reserved
wd_irq			equ	wd_reserved_00 + 01	; 1 BYTE...IRQ used
							; bits 3-0 IRQ
							; bits 7-4 reserved
wd_multi_sec_block_size	equ	wd_irq + 01		; 1 BYTE...sector count for multi-sector transfer
wd_dma_info	equ	wd_multi_sec_block_size + 01	; 1 BYTE...bits 3-0 DMA channel
							; bits 7-4 DMA type
wd_pio_type		equ	wd_dma_info + 01	; 1 BYTE...bits 3-0 PIO type
							; bits 7-4 reserved
wd_hdd_misc_info_01	equ	wd_pio_type + 01	; 1 WORD...miscellaneous information
							; bit 0 1 fast PIO accessing enabled
							; bit 1 1 DMA accessing enabled
							; bit 2 1 block PIO accessing enabled
							; bit 3 1 CHS translation enabled
							; bit 4 1 LBA translation enabled
							; bit 5 1 removable media
							; bit 6 1 CDROM
							; bit 7 1 32 bit transfer mode
							; bit 15-8 reserved
wd_reserved_01		equ	wd_hdd_misc_info_01 + 02; 1 WORD...reserved
wd_ext_rev_level	equ	wd_reserved_01 + 02	; 1 BYTE...current revision level of this extension

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -