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

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

?? i16.asm

?? AMI 主板的BIOS源碼。
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
;	AL	07h							;
;	DS	0040h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;  register destroyed : AL						;
;-----------------------------------------------------------------------;
	extrn	flash_write_enable:near
ah_e0_7		proc	near
	call	flash_write_enable
	jmp	short ah_e0_exit
ah_e0_7		endp
;-----------------------------------------------------------------------;
;	AH_E0_8..FLASH SELECT						;
;  input :								;
;	AH	function# E0h						;
;	AL	08h							;
;	DS	0040h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;  register destroyed : AL						;
;-----------------------------------------------------------------------;
ah_e0_8		proc	near
	jmp	short ah_e0_exit
ah_e0_8		endp
;-----------------------------------------------------------------------;
;	AH_E0_9..FLASH DE-SELECT					;
;  input :								;
;	AH	function# E0h						;
;	AL	09h							;
;	DS	0040h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;  register destroyed : AL						;
;-----------------------------------------------------------------------;
ah_e0_9		proc	near
	jmp	short ah_e0_exit
ah_e0_9		endp
;-----------------------------------------------------------------------;
;	AH_E0_A..VERIFY ALLOCATED MEMORY				;
;  input :								;
;	AH	function# E0h						;
;	AL	0Ah							;
;	ES	specified memory segment				;
;	BX	memory size in number of paragraphs			;
;	DS	0040h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;  register destroyed : AL						;
;-----------------------------------------------------------------------;
ah_e0_a		proc	near
	jmp	short ah_e0_exit
ah_e0_a		endp
;-----------------------------------------------------------------------;
;	AH_E0_B..SAVE INTERNAL CACHE STATUS				;
;  input :								;
;	AH	function# E0h						;
;	AL	0Bh							;
;	ES:DI	pointer to start of buffer where internal cache		;
;		status will be saved					;
;	DS	0040h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;  register destroyed : AL						;
;-----------------------------------------------------------------------;
ah_e0_b		proc	near
	jmp	short ah_e0_exit
ah_e0_b		endp
;-----------------------------------------------------------------------;
;	AH_E0_C..RESTORE INTERNAL CACHE STATUS				;
;  input :								;
;	AH	function# E0h						;
;	AL	0Ch							;
;	ES:DI	pointer to start of buffer where internal cache		;
;		status will be restored					;
;	DS	0040h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;  register destroyed : AL						;
;-----------------------------------------------------------------------;
ah_e0_c		proc	near
	jmp	short ah_e0_exit
ah_e0_c		endp
;-----------------------------------------------------------------------;
;	AH_E0_FF..GENERATE CPU RESET 					;
;  input :								;
;	AH	function# E0h						;
;	AL	FFh							;
;	DS	0040h							;
;  output:								;
;	NONE								;
;  register destroyed : AX						;
;-----------------------------------------------------------------------;
        extern	StopUsbHostController(dummy_ret):near
	extrn	dummy_ret:near
	extrn	generate_hard_reset:near
ah_e0_ff	proc	near
	mov	ax,0c08eh
	call	cmos_data_out_x		; destroy CMOS checksum
	call	generate_hard_reset
;	call	StopUsbHostController	; disable USB host controller
;	call	empty_8042_input_buffer
;	mov	si,cs:word ptr [0fea8h]
;	mov	dx,cs:[si+0ch]		; DX = power-on CPU ID
;	db	0eah			; JMP FAR F000:FFF0
;	dw	0fff0h
;	dw	0f000h
ah_e0_ff	endp
;-----------------------------------------------------------------------;
;	AH_E0_10..GET FLASH INFO					;
;  input :								;
;	AH	function# E0h						;
;	AL	10h							;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;		BX = Version# in BCD					;
;		CX = #of Flash parts supported by BIOS (1-based)	;
;		DX = Index# of the Flash Part detected by BIOS (0-based);
;  register destroyed : AL BX CX DX					;
;-----------------------------------------------------------------------;
	extrn	flash_support_table:byte
	extrn	no_of_flash_supported:abs
ah_e0_10	proc	near
	mov	bx,0350h		; Ver# 3.50
	mov	cx,no_of_flash_supported
	mov	dx,cgroup:word ptr flash_support_table
	cmp	dx,0ffffh
	jz	ahe010_00		; BIOS did not install any flash part
	xor	dx,dx
ahe010_00:
	jmp	ah_e0_exit
ah_e0_10	endp
;-----------------------------------------------------------------------;
;	AH_E0_11..READ ROM BYTES					;
;  input :								;
;	AH	function# E0h						;
;	AL	11h							;
;		CX = #of bytes to be read				;
;		ES:DI = ptr to read buffer				;
;		DS:SI = ptr to start ROM address			;
;  output:								;
; 	CY 	Error							;
;	NC	Success							;
;		AL = 0FAH 						;
;		CX = #of bytes read					;
;  register destroyed : AL CX						;
;-----------------------------------------------------------------------;
	extrn	e000_read_rom_write_x:near
	extrn	f000_read_rom_write_x:near
	extrn	e000_read_ram_write_rom:near
	extrn	f000_read_ram_write_rom:near
ah_e0_11	proc	near
	pusha
	call	e000_read_rom_write_x
	call	f000_read_rom_write_x
	dec	cx
	rep	movsb
	movsb
	call	e000_read_ram_write_rom
	call	f000_read_ram_write_rom
	popa
	jmp	ah_e0_exit
ah_e0_11	endp
COMMENT ~
;-----------------------------------------------------------------------;
;			CYRIX Cx6x86 M1 Subroutines			;
;-----------------------------------------------------------------------;
;			OFF_CYRIX					;
;  this routine disbales WT_ALLOC bit (bit-0) in CCR5 in M1 cpu.	;
;  input :								;
;	none								;
;  output:								;
;	none								;
;  register destroyed : none						;
;-----------------------------------------------------------------------;
	extern	ReadCCR(dummy_ret):near
	extern	WriteCCR(dummy_ret):near
off_cyrix:
	pusha
	call	check_cyrix
	jnz	oc_00			; Cx6x86 not found
	call	unlock_ccr
	mov	al,0e9h
	call	ReadCCR
	and	ah,0feh			; bit-0 WT_ALLOC = 0
	call	WriteCCR
	call	lock_ccr
oc_00:
	popa
	ret
;-----------------------------------------------------------------------;
;			CHECK_CYRIX_M1					;
;  this routine checks whether current CPU is Cyrix M1.			;
;  input :								;
;	none								;
;  output:								;
;	zr	Cyrix M1						;
;	nz	not Cyrix M1						;
;  register destroyed : none						;
;-----------------------------------------------------------------------;
	extrn	get_processor_info:near
check_cyrix:
	pushad
	call	get_processor_info	; AX = function field
	and	ah,01100000b
	cmp	ah,00100000b		; ZR/NZ = Cx6x86 found/not found
	popad
	ret
;-----------------------------------------------------------------------;
;			UNLOCK_CCR					;
;  this routines locks/unlocks access to CCR registers in Cyrix M1.	;
;  input :								;
;	none								;
;  output:								;
;	zr	Cyrix M1						;
;	nz	not Cyrix M1						;
;  register destroyed : AX BX						;
;-----------------------------------------------------------------------;
unlock_ccr:
	mov	bl,10h
uc_00:
	mov	al,0c3h
	call	ReadCCR
	or	ah,bl
	and	ah,0feh
	call	WriteCCR
	ret
lock_ccr:
	mov	bl,00h
	jmp	short uc_00
~
;-----------------------------------------------------------------------;
;*****************************************************************;
;*****************************************************************;
;**								**;
;**	(C)Copyright 1985-1996, American Megatrends Inc.	**;
;**								**;
;**			All Rights Reserved.			**;
;**								**;
;**		6145-F, Northbelt Parkway, Norcross,		**;
;**								**;
;**		Georgia - 30071, USA. Phone-(770)-246-8600.	**;
;**								**;
;*****************************************************************;
;*****************************************************************;
;-----------------------------------------------------------------------;
IF	MKF_EXTRA_INT16_F0		; INT16 Func F0-F4 supported
	extrn	frequency_low:near
	extrn	frequency_high:near
	extrn	cache_off:near
	extrn	cache_on:near
special_int_16_table		label	word
	dw	offset cgroup:ah_f0	; set cpu speed
	dw	offset cgroup:ah_f1	; return cpu speed
	dw	offset cgroup:ah_invalid; invalid function
	dw	offset cgroup:ah_invalid; invalid function
	dw	offset cgroup:ah_f4	; external cache
special_int_16_table_end	label	word
;-----------------------------------------------------------------------;
;	AH_F0..SET CPU SPEED						;
;  input :								;
;	AH	function# F0h						;
;	AL	speed							;
;		00 low speed						;
;		01 low speed						;
;		02 high speed						;
;		03-FF..RESERVED (no action will taken if used)		;
;	DS	0040h							;
;  output:								;
;	none								;
;  register usage..all registers must be saved except SI		;
;-----------------------------------------------------------------------;
ah_f0	proc	near
	cmp	al,02h			; high speed ?
	ja	ahf0_00			; invalid speed..no action
	mov	si,offset cgroup:frequency_high
	jz	ahf0_01			; high speed
	mov	si,offset cgroup:frequency_low
ahf0_01:
	push	cx
	call	si			; change speed
	pop	cx
	mov	ah,0f0h			; set ah not changed
ahf0_00:
ah_invalid::
	ret
ah_f0	endp
;-----------------------------------------------------------------------;
;	AH_F1..RETURN CPU SPEED						;
;  input :								;
;	AH	function# F1h						;
;	DS	0040h							;
;  output:								;
;	AL	speed							;
;		00 low speed						;
;		01 low speed						;
;		02 high speed						;
;  register usage..all registers must be saved except SI		;
;-----------------------------------------------------------------------;
ah_f1	proc	near
	mov	al,00h			; return code for low speed
	test	ds:byte ptr [0016h],00100000b; bit-5 = 0/1..high/low speed
	jnz	ahf1_00			; low speed
	mov	al,02h			; return code for high speed
ahf1_00:
	ret
ah_f1	endp
;-----------------------------------------------------------------------;
;	AH_F4..CACHE							;
;  input :								;
;	AH	function# F1h						;
;	AL	subfunction#						;
;	DS	0040h							;
;  output:								;
;  register usage..all registers (except return registers) must be	;
;		   saved except SI					;
;-----------------------------------------------------------------------;
ah_f4	proc	near
	or	al,al			; subfunc# 00h ?
	jz	ahf4_00			; yes..
	mov	si,offset cgroup:cache_off
	cmp	al,02h			; subfunc# 02h ?
	ja	ahf4_03			; invalid subfunction
	jz	ahf4_02			; subfunc# 02h
	mov	si,offset cgroup:cache_on
ahf4_02:
	push	cx
	call	si			; enable/disable external cache
	or	ch,ch			; cache operation done ?
	pop	cx
	jmp	short ahf4_03
ahf4_00:
;-----------------------------------------------------------------------;
;  subfunction# 00h..return cache controller status			;
;     Input		: AH = function# F4h				;
;			  AL = 00h					;
;     Output		: 						;
;			  AL = cache controller status			;
;			  CX = cache size in KBytes			;
;			  DH = cache write technology			;
;			  DL = cache type				;
;     Register Destroyed: AX CX DX if successful			;
;			  NONE if status can not be determined		;
;-----------------------------------------------------------------------;
	mov	al,33h			; cmos reg 33h..enable NMI
	call	cmos_data_in_x
	test	al,00000001b		; bit-0 = 0/1..cache bad/good
	jnz	ahf4_06			; external cache present
;  external cache not present..check for internal cache..
	smsw	ax
	or	ah,ah
	mov	al,00h			; return code for cache not present
	jnz	ahf4_05			; 386/286 cpu..no internal cache
ahf4_06:
	mov	al,01h			; return code for cache enabled
	test	ds:byte ptr [0016h],00010000b; bit-4 = 0/1..cache dis/en abled
	jnz	ahf4_05			; cache enabled
	mov	al,02h			; return code for cache disabled
ahf4_05:
	call	get_cache_informn	; get cache information
ahf4_03:
	mov	ah,0f4h			; ah remain same as this routine is called
	ret
ah_f4	endp
;-----------------------------------------------------------------------;
;			GET_CACHE_INFORMN				;
;  this routine returns the external cache information.			;
;  input :								;
;	DS	0040h							;
;  	stack	available						;
;  output:								;
;	cx	cache size						;
;		bit 15	= 0/1..cache size information valid/invalid	;
;		bit 14-0= cache size in KBytes				;
;	dh	cache write technology					;
;		bit 7	= 0/1..cache write technology informn valid/invalid
;		bit 6-1 = RESERVED (set to 0)				;
;		bit 0	= 0..write-through cache			;
;			  1..write-back    cache			;
;	dl	cache type						;
;		bit 7	= 0/1..cache type information valid/invalid	;
;		bit 6-1 = RESERVED (set to 0)				;
;		bit 0	= 0..direct mapped cache			;
;			  1..2-way set associative cache		;
;  register usage -- DO NOT DESTROY ANY REGISTER except CX DX		;
;-----------------------------------------------------------------------;
get_cache_informn	proc	near
;  this routine has to return information of cache size in CX, of cache write
;  technology in DH, of cache type in DL..
;  DO NOT DESTROY ANY REGISTER EXCEPT CX, DX
;  let us take some examples:
;  example 1.	NONE OF THE INFORMATION IS AVAILABLE
;		in this case return value of CX = 8000h, DX = 8080h
;  example 2.	64KB CACHE, CACHE WRITE AND CACHE TYPE INFORMATION IS
;		NOT AVAILABLE
;		in this case return value of CX = 0040h, DX = 8080h
;  example 3.	WRITE-BACK CACHE, CACHE SIZE AND CACHE TYPE INFORMATION IS
;		NOT AVAILABLE
;		in this case return value of CX = 8000h, DX = 0180h
;  example 4.	2-WAY SET ASSOCIATIVE CACHE, CACHE SIZE AND CACHE WRITE
;		INFORMATION IS NOT AVAILABLE
;		in this case return value of CX = 8000h, DX = 8001h
;  example 5.	512KB, WRITE-THROUGH, DIRECT-MAPPED CACHE
;		in this case return value of CX = 0200h, DX = 0000h

	mov	cx,8000h		; cache size informn invalid
	mov	dx,8080h		; cache write, cache type informn invalid
	ret
get_cache_informn	endp
;-----------------------------------------------------------------------;
ENDIF
;-----------------------------------------------------------------------;
	public	_I16_ENDS
_I16_ENDS	label	byte		; marks end of module
;---------------------------------------;
_text	ends
	end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久精品国产网站| 欧美一区二区三区人| 欧美特级限制片免费在线观看| 91精品欧美久久久久久动漫| 国产精品免费网站在线观看| 日本最新不卡在线| av中文字幕一区| 精品福利一区二区三区| 一区二区三区在线视频观看58| 黄色资源网久久资源365| 欧美在线播放高清精品| 国产精品网曝门| 精品一区二区三区在线观看| 欧美专区在线观看一区| 国产精品久久久久aaaa| 国产精品18久久久久| 日韩一区二区在线免费观看| 亚洲小说春色综合另类电影| 99久久精品国产麻豆演员表| 中文字幕免费不卡| 久久国产精品99精品国产| 欧美日本在线视频| 亚洲午夜久久久久中文字幕久| 波多野结衣亚洲| 国产女人aaa级久久久级 | 欧美在线不卡一区| 中文在线一区二区| 国产盗摄女厕一区二区三区| 欧美大片日本大片免费观看| 婷婷成人激情在线网| 欧美在线免费播放| 亚洲大型综合色站| 欧美日韩一级二级| 日韩专区一卡二卡| 欧美一区二区精品在线| 偷拍与自拍一区| 91精品国产一区二区三区蜜臀 | 中文字幕免费观看一区| 成人免费视频视频| 国产精品国产三级国产aⅴ原创| 成人app网站| 亚洲欧美乱综合| 在线视频国产一区| 香蕉加勒比综合久久 | 色狠狠av一区二区三区| 亚洲少妇30p| 欧美偷拍一区二区| 天堂精品中文字幕在线| 日韩免费电影网站| 国产大陆a不卡| 国产精品久久久久久久岛一牛影视| 99热国产精品| 亚洲成年人网站在线观看| 91精品国产综合久久精品麻豆 | 一区二区三区四区av| 精品视频一区三区九区| 麻豆久久一区二区| 国产色产综合色产在线视频| 成人禁用看黄a在线| 亚洲综合精品久久| 日韩亚洲欧美在线| 成人开心网精品视频| 亚洲一区在线观看视频| 精品美女在线播放| 91免费精品国自产拍在线不卡| 亚洲午夜久久久| 国产无一区二区| 欧美天天综合网| 国产盗摄视频一区二区三区| 一区二区激情视频| 精品福利一二区| 欧美亚洲动漫另类| 国产一区二区日韩精品| 亚洲免费在线播放| xfplay精品久久| 欧美午夜精品一区二区蜜桃| 国产精品自产自拍| 午夜亚洲福利老司机| 国产精品色一区二区三区| 精品视频免费在线| 国产suv精品一区二区三区| 亚洲自拍偷拍欧美| 日本一区二区动态图| 91精品国产美女浴室洗澡无遮挡| 波波电影院一区二区三区| 日本人妖一区二区| 一区二区三区影院| 中文字幕免费不卡| 日韩免费高清视频| 欧美久久久久久久久久| 91亚洲精华国产精华精华液| 国产在线精品一区二区不卡了| 亚洲一区二区四区蜜桃| 国产精品久久久一本精品| 欧美成人性战久久| 91成人国产精品| av动漫一区二区| 夫妻av一区二区| 极品美女销魂一区二区三区免费 | 欧美日韩精品欧美日韩精品一| 风间由美中文字幕在线看视频国产欧美| 青草国产精品久久久久久| 亚洲精品高清视频在线观看| 国产精品国产三级国产aⅴ入口| 欧美精品一区视频| 日韩一级视频免费观看在线| 欧美人与禽zozo性伦| 在线免费观看日韩欧美| 97精品国产97久久久久久久久久久久 | 欧美精品自拍偷拍| 欧美专区日韩专区| 在线中文字幕一区二区| 91福利国产精品| 精品视频免费在线| 欧美日韩不卡视频| 欧美一区二区在线观看| 51精品久久久久久久蜜臀| 欧美日韩高清影院| 欧美一区二视频| 精品久久一二三区| 国产色综合一区| 亚洲欧洲国产专区| 一区二区三区日韩在线观看| 国产精品麻豆网站| 亚洲蜜臀av乱码久久精品| 亚洲一区二区中文在线| 日韩中文字幕麻豆| 另类小说欧美激情| 国产精品一区二区91| 成人午夜精品一区二区三区| 99久久婷婷国产| 色8久久精品久久久久久蜜| 欧美中文字幕不卡| 69精品人人人人| 久久奇米777| 亚洲欧美视频一区| 天天免费综合色| 国产一区二区不卡| 97精品久久久午夜一区二区三区 | 韩国成人福利片在线播放| 国产精品综合二区| 91捆绑美女网站| 欧美精品在线视频| 久久久久99精品一区| 亚洲欧美乱综合| 久久精品久久99精品久久| 国产精品 欧美精品| 欧美性videosxxxxx| 精品乱码亚洲一区二区不卡| 中文字幕在线一区二区三区| 天堂在线亚洲视频| 高清beeg欧美| 欧美军同video69gay| 国产欧美精品一区二区色综合 | 国产成人午夜精品影院观看视频| 91麻豆国产香蕉久久精品| 91精品国模一区二区三区| 国产精品美女久久久久aⅴ | 99久久伊人精品| 日韩免费视频线观看| 亚洲男人的天堂网| 狠狠久久亚洲欧美| 欧洲av在线精品| 国产精品乱码人人做人人爱| 琪琪久久久久日韩精品| 成人黄色网址在线观看| 日韩视频一区二区三区在线播放| 亚洲免费大片在线观看| 国产一区二区三区蝌蚪| 欧美三级中文字幕| 国产精品第五页| 国产一区不卡精品| 91精品国产美女浴室洗澡无遮挡| 亚洲欧美日韩国产综合| 国产精品一区二区久激情瑜伽| 欧美一区二区视频在线观看2022 | 99国产精品99久久久久久| 精品国产伦理网| 男男gaygay亚洲| 91国内精品野花午夜精品| 国产片一区二区| 国内精品久久久久影院薰衣草| 3d动漫精品啪啪| 亚洲一二三四区| 97精品超碰一区二区三区| 国产欧美精品国产国产专区| 美女久久久精品| 日韩欧美国产综合| 日本美女一区二区三区视频| 欧美偷拍一区二区| 夜夜嗨av一区二区三区网页| 99r国产精品| 亚洲精品视频在线观看网站| 波多野结衣视频一区| 中文字幕五月欧美| www.亚洲人| 国产精品国产馆在线真实露脸| 国产iv一区二区三区| 日本一二三不卡| 99久久精品情趣|