亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pcifb.asm

?? AMI 主板的BIOS源碼。
?? ASM
字號:
	page	,132
	title .	VUMA / SMBA Shared Frame Buffer POST Functions
;*****************************************************************;
;*****************************************************************;
;**                                                             **;
;**      (C)Copyright 1985-1995, American Megatrends, Inc.      **;
;**                                                             **;
;**                     All Rights Reserved.                    **;
;**                                                             **;
;**           6145-F Northbelt Pkwy, Norcross, GA 30071         **;
;**                                                             **;
;**                     Phone (770)-263-8181                    **;
;**                                                             **;
;*****************************************************************;
;*****************************************************************;
;---------------------------------------;

	include	rt.equ

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

	public	FrameBufAdjustSize
	public	FrameBufEnableDisableBoot

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

	extern	SmbaVgaBusDevFuncNumber(DummySmbaVgaBDFNumber):word

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

; VUMA Option ROM Signature Structure
;------------------------------------------------------------------------------
VumaRomSig		struc
VumaSignature		db 6 dup (?)	;Contains ASCII "_VUMA_" signature
MajorVersion		dw ?		;Major version number
MinorVersion		dw ?		;Minor version number
MinMemorySize		dw ?		;Minimum frame buffer size in KB
SupportedBanks		dw ?		;Bitmap of memory banks supported
SupportedDram		dw ?		;See VUMA_MEM_TYPE_???? constants below
VumaRomSig		ends

VUMA_MEM_TYPE_FAST_PAGE		equ 1	;Bit 0: If set, supports fast fage mode DRAM
VUMA_MEM_TYPE_EDO		equ 2	;Bit 1: If set, supports EDO DRAM
VUMA_MEM_TYPE_SYNC_DRAM		equ 4	;Bit 2: If set, supports synchronous DRAM
VUMA_MEM_TYPE_PN_EDO		equ 8	;Bit 3: If set, supports PN EDO DRAM (burst EDO)

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


cgroup	group	_text
_text 	segment word public 'CODE'
	assume	cs:cgroup
.386

public DummySmbaVgaBDFNumber
DummySmbaVgaBDFNumber	label word
	db	0FFh, 0FFh

;---------------------------------------;
; FrameBufAdjustSize                    ;
;---------------------------------------;--------------------------------------;
; This function is called just before giving control to the C000 VGA option    ;
; ROM.  The following things are done by this function:                        ;
;                                                                              ;
; 1. If SMBA support is active, get memory size from CMOS and goto step 8      ;
; 2. Scan option ROM for _VUMA_ signature, if not found, set frame buf size to ;
;    zero goto step number 8                                                   ;
; 3. Get minimum memory size field from option ROM                             ;
; 4. Get bus/dev/func number from CMOS, if does not match VGA device, then     ;
;    update CMOS with device's bus/dev/func number and minimum memory size     ;
; 5. Get current memory size from CMOS, update CMOS with minimum if too small  ;
; 6. Call chipset hook to get chipset's supported memory bank bitmap           ;
; 7. Make sure chipset's bank support and VGA device's bank support are        ;
;    compatible, if not, then set memory size to zero                          ;
; 8. Call chipset hook to set shared frame buffer size and bank connection     ;
;                                                                              ;
; Input: AL = Device/Function number device that owns the option ROM           ;
;                Bits 7-3: PCI device number                                   ;
;                Bits 2-0: Function number within the device                   ;
;        AH = Bus number of device that owns the option ROM                    ;
;       EBP = Segment/offset of ROM about to get control (example C0000003h)   ;
;                                                                              ;
; Output: Nothing                                                              ;
;                                                                              ;
; Destroys: Nothing                                                            ;
;------------------------------------------------------------------------------;
FrameBufAdjustSize	proc near
	pusha
	push	ds

	cmp	ebp, 0C0000003h
	jne	AdjustSizeDone		;Br if not initing VGA option ROM

; If SMBA is active, then set minimum memory size to 0 (no minimum)
; and skip to reading memory size value from CMOS.

	push	ax
	mov	ah, RT_FB_GET_CMOS_DATA
	CALL_RT_FUNCTION		;DX=Mem Size, CH=Flags
	pop	ax

	test	ch, 80h
	jnz	SmbaNotActive		;Br if SMBA interface is not active

	cmp	ax, cs:SmbaVgaBusDevFuncNumber
	je	@f			;Br if using on board SMBA VGA
	xor	dx, dx			;Set SMAB size to 0 for off board VGA
@@:
	xor	ax, ax			;Bank bitmap = 0 (use SMBA bank)
	jmp	short AdjustSizeSetSize	;Memory size is in DX

SmbaNotActive:

; Search for _VUMA_ signature in the option ROM.  If not found set current
; memory size to zero in CMOS and skip to programming the chipset.

	push	ebp			;Set DS = upper word of EBP (ROM segment)
	pop	ds
	pop	ds

	mov	si, 2
	mov	cl, byte ptr [si]	;CL = size of option ROM / 512
	shl	cx, 9			;CX = size of option ROM in bytes

AdjustSizeSearchSig:
	cmp	dword ptr [si], '_VUM'
	je	AdjustSizeFoundSig1	;Br if found first part of _VUMA_ signature
AdjustSizeSearchNext:
	inc	si
	loop	AdjustSizeSearchSig
	jmp	short AdjustSizeToZero

AdjustSizeFoundSig1:
	cmp	word ptr [si+4], 'A_'
	jne	AdjustSizeSearchNext	;Br if entire signature is not present

; The _VUMA_ signature was found.
; Read CMOS to get the current VUMA memory size.  Compare this size against
; the minimum memory size needed by the VUMA device and update CMOS if needed.

	mov	ah, RT_FB_GET_CMOS_DATA
	CALL_RT_FUNCTION		;DX=Mem Size/64k, CH=Flags

	mov	bx, (VumaRomSig ptr [si]).MinMemorySize  ;BX = min memory size/64k
	cmp	dx, bx
	jae	AdjustSizeOk		;Br if current mem size is ok

	mov	dx, bx			;BX = min memory size/64k
	mov	ah, RT_FB_SET_CMOS_DATA
	CALL_RT_FUNCTION		;Update CMOS with new minimum mem size

AdjustSizeOk:

; Frame buffer data in CMOS has been completely validated and fixed if needed.
; Call chipset hook to get chipset's supported memory bank bitmap and validate
; the bank bitmap with the VGA device's bank bitmap.  If they are not compatible
; then set the memory size to 0.  Otherwise call a chipset hook to set the
; current frame buffer memory size and bank.
; DX = current memory size, DS:SI = ptr to VumaRomSig struc

	mov	ah, RT_FB_GET_SUP_BANKS
	CALL_RT_FUNCTION		;AX = banks supported by chipset
	and	ax, (VumaRomSig ptr [si]).SupportedBanks
	jz	AdjustSizeToZero	;Br if chipset and VUMA device's banks
					;   aren't compatible
AdjustSizeSetSize:
	mov	bx, ax			;BX = memory bank bitmap
	mov	ah, RT_FB_SET_SIZE
	CALL_RT_FUNCTION		;Sets size of shared frame buffer memory
					;If error, there is nothing to do
	mov	ah, RT_FB_MAKE_INVISIBLE
	CALL_RT_FUNCTION		;Set frame buffer to visible/invisible

	;Need to set memory hole overlap here if SMBA.........................

AdjustSizeDone:
	pop	ds
	popa
	ret

AdjustSizeToZero:
	xor	dx, dx			;Set memory size to 0
	xor	ch, ch			;CH=Flags
	mov	ah, RT_FB_SET_CMOS_DATA
	CALL_RT_FUNCTION		;Set VUMA/SMBA to not installed
	xor	ax, ax			;Set bank bitmap to all disabled
	jmp	short	AdjustSizeSetSize

FrameBufAdjustSize	endp


;---------------------------------------;
; FrameBufEnableDisableBoot             ;
;---------------------------------------;--------------------------------------;
; This function is called after C800 option ROM control to set the state of    ;
; the shared frame buffer at boot time.  This function should make the shared  ;
; frame buffer area either visible or invisible to the CPU according to the    ;
; current setting stored in CMOS.                                              ;
;                                                                              ;
; Input: Nothing                                                               ;
;                                                                              ;
; Output: Nothing                                                              ;
;                                                                              ;
; Destroys: Nothing                                                            ;
;------------------------------------------------------------------------------;
FrameBufEnableDisableBoot	proc near
;;;;	pusha
;;;;
;;;;	mov	cl, 0			;Get primary VUMA/SMBA entry from CMOS
;;;;	mov	ah, RT_FB_GET_CMOS_DATA
;;;;	CALL_RT_FUNCTION		;DX=Mem Size, CH=Flags
;;;;
;;;;	mov	ah, RT_FB_MAKE_VISIBLE
;;;;	test	ch, 0
;;;;	jnz	@f			;Br if frame buffer should be enabled
;;;;	mov	ah, RT_FB_MAKE_INVISIBLE
;;;;@@:	CALL_RT_FUNCTION		;Set frame buffer to visible/invisible
;;;;
;;;;	popa
	ret
FrameBufEnableDisableBoot	endp



_text	ends
	end
;*****************************************************************;
;*****************************************************************;
;**                                                             **;
;**      (C)Copyright 1985-1995, American Megatrends, Inc.      **;
;**                                                             **;
;**                     All Rights Reserved.                    **;
;**                                                             **;
;**           6145-F Northbelt Pkwy, Norcross, GA 30071         **;
;**                                                             **;
;**                     Phone (770)-263-8181                    **;
;**                                                             **;
;*****************************************************************;
;*****************************************************************;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成av人影院在线观看网| 国产91丝袜在线播放0| 韩国v欧美v日本v亚洲v| 99re热视频这里只精品| 日韩欧美在线不卡| 亚洲美女屁股眼交| 粉嫩一区二区三区性色av| 欧美一区二区三区性视频| 夜夜精品浪潮av一区二区三区| 国产尤物一区二区| 欧美一三区三区四区免费在线看| 综合久久国产九一剧情麻豆| 国产精华液一区二区三区| 日韩一区国产二区欧美三区| 亚洲国产成人tv| 91在线国产福利| 国产精品免费av| 国产一区二区精品久久99| 精品视频一区三区九区| 亚洲蜜臀av乱码久久精品蜜桃| 丁香激情综合五月| 久久免费的精品国产v∧| 奇米精品一区二区三区四区| 欧美日韩www| 五月综合激情日本mⅴ| 欧美在线色视频| 一区二区三区成人| 欧美性大战xxxxx久久久| 亚洲色欲色欲www| 91原创在线视频| 最新高清无码专区| 色综合久久天天| 亚洲精品国久久99热| 欧洲日韩一区二区三区| 亚洲精品高清在线观看| 色狠狠色狠狠综合| 夜夜爽夜夜爽精品视频| 欧美性一级生活| 日韩专区在线视频| 日韩午夜激情免费电影| 久久国内精品视频| 久久久99久久| 97se狠狠狠综合亚洲狠狠| 亚洲欧美日韩中文字幕一区二区三区| 99久久精品国产一区| 亚洲情趣在线观看| 欧美日韩精品三区| 久久精品理论片| 久久久蜜桃精品| 波多野结衣中文一区| 亚洲精选视频在线| 欧美日韩一区精品| 美女www一区二区| 国产欧美日韩亚州综合| 色综合天天综合色综合av| 亚洲电影你懂得| 欧美一区三区二区| 亚洲图片欧美色图| 色综合欧美在线视频区| 制服丝袜中文字幕一区| 蜜臀av国产精品久久久久 | 国产精品 日产精品 欧美精品| 色先锋aa成人| 18成人在线观看| 亚洲国产毛片aaaaa无费看| 欧美视频一区二区在线观看| 男人的天堂久久精品| 久久一区二区三区四区| 91一区二区在线| 日韩国产精品大片| 国产日韩av一区| 欧美色精品在线视频| 日韩视频一区二区在线观看| 国产91精品在线观看| 成人污污视频在线观看| 国产精品成人免费在线| 3d动漫精品啪啪一区二区竹菊| 国产毛片精品视频| 香蕉成人伊视频在线观看| 国产亚洲一区二区三区四区 | 久久亚洲私人国产精品va媚药| 不卡的av中国片| 久久电影网电视剧免费观看| 日本一区二区久久| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲小说欧美激情另类| 亚洲国产日韩在线一区模特| av在线免费不卡| 亚洲私人影院在线观看| 久久www免费人成看片高清| 亚洲一区中文在线| 国产999精品久久| 手机精品视频在线观看| 中国av一区二区三区| 91精品国产91综合久久蜜臀| 94-欧美-setu| 极品少妇xxxx偷拍精品少妇| 亚洲午夜av在线| 亚洲欧美色图小说| 日本一区二区三区高清不卡| 精品国产a毛片| 欧美一区二区在线不卡| 欧美三级日韩三级国产三级| 一本一本久久a久久精品综合麻豆| 国产精品一区二区三区乱码| 九九**精品视频免费播放| 天堂久久久久va久久久久| 中文字幕在线不卡一区二区三区| 五月天精品一区二区三区| 欧美日韩国产美女| 在线亚洲一区二区| 91美女在线视频| 成人动漫一区二区在线| 国产成人精品午夜视频免费 | 91污片在线观看| 成人h动漫精品一区二| 激情综合网最新| 久久99九九99精品| 国产精品综合一区二区三区| 精品一区二区三区在线播放视频| 久久精品国产第一区二区三区| 捆绑调教一区二区三区| 黑人巨大精品欧美一区| 精品一区二区日韩| 国产精品99久久久久久宅男| 国产福利一区二区三区| 成人动漫一区二区| 一本久久综合亚洲鲁鲁五月天| 91一区二区三区在线观看| 欧美午夜精品一区二区三区| 欧美裸体bbwbbwbbw| 日韩午夜激情视频| 亚洲色图视频免费播放| 亚洲精选免费视频| 91极品美女在线| 国产精品一二三区| 国产白丝精品91爽爽久久| www.日韩精品| 欧美午夜一区二区| 欧美一区二区三区日韩| 日韩欧美一二三| 中文一区一区三区高中清不卡| 国产精品天美传媒沈樵| 亚洲自拍欧美精品| 午夜视黄欧洲亚洲| 国产一区二区久久| 色吊一区二区三区| 欧美大尺度电影在线| 国产精品素人视频| 亚洲国产综合91精品麻豆| 国产裸体歌舞团一区二区| 99这里都是精品| 91精品欧美久久久久久动漫| 国产欧美综合色| 午夜私人影院久久久久| 国产福利精品一区二区| 欧美视频中文字幕| 久久久久久久久99精品| 亚洲午夜在线电影| 亚洲福利一区二区三区| 日韩高清欧美激情| 国产精品一区在线观看乱码| 一本色道久久综合精品竹菊| 欧美日本一区二区三区四区| 欧美国产精品一区| 日韩av电影一区| 91日韩在线专区| 久久中文娱乐网| 亚洲成人av在线电影| 成人少妇影院yyyy| 日韩欧美成人激情| 午夜欧美2019年伦理| 成人av资源站| 久久亚洲一区二区三区明星换脸| 亚洲一区二区三区在线播放 | 亚洲国产欧美在线人成| 成人免费视频视频在线观看免费| 欧美色大人视频| 国产精品久久久久久久久快鸭| 久久97超碰国产精品超碰| 欧美午夜理伦三级在线观看| 国产精品区一区二区三区| 久久av中文字幕片| 日韩无一区二区| 石原莉奈在线亚洲三区| 在线视频综合导航| 亚洲少妇中出一区| 91麻豆免费在线观看| 国产精品麻豆一区二区| 国产超碰在线一区| 久久欧美一区二区| 国产精品资源网| 色综合欧美在线| 国产久卡久卡久卡久卡视频精品| 亚洲国产日日夜夜| 日韩精品一二区| 欧美性色黄大片| 亚洲国产欧美在线| 欧美日韩在线综合| 日日夜夜精品视频免费|