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

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

?? acpi1.asm

?? bios開發培訓涉及例子。可以給大家參考。請在dos下運行。用masm6.0編譯。
?? ASM
字號:

PRINTSTR    MACRO X
        push    dx
        push    ax
	LEA	DX,X
	MOV	AH,09H
	INT	21H
	pop     ax
	pop     dx
ENDM

  enableA20   macro   
                  push  ax
                  in   al,92h   
                  or   al,2   
                  out   92h,al
                  pop   ax   
                      endm   
  disableA20   macro   
                  push  ax
                  in   al,92h   
                  and   al,0fdh   
                  out   92h,al
                  pop   ax   
                        endm   
  


.model small
.586
.stack  100
.stack
.data

        buffer1         db      24 dup(?)
        error1          db      'an error occured!$'
        enters          db      10,13,'$'
        type1           db      'type: $'
        baseadd         db      'base address: $'
        length1         db      'length: $'     
        space1          db      '    $'  
        type4base       dd      0
  
        acpiaddr        dd      0      
        RSDTAddr        dd      0
        XSDTAddr        dd      0
        FADTAddr        dd      0
        MADTAddr        dd      0
        OEMBAddr        dd      0
        MCFGAddr        dd      0
        FACSAddr        dd      0
        DSDTAddr        dd      0
        string0         db      'RSDT base address: $'
        string1         db      'FADT base address: $'
        string2         db      'FACS base address: $'
        string3         db      'DSDT base address: $'
        string4         db      'MADT base address: $'
        string5         db      'OEMB base address: $'
        string6         db      'MCFG base address: $'
        string7         db      'XSDT base address: $'
        addr1           db      ' base address: $'
        type3s          db      '  type 3$'
        type4s          db      '  type 4$'
        
          
.code

.startup	
                push    ds
                pop     es
                lea     di,buffer1
                
                mov     eax,0e820h
                mov     ebx,0
                mov     ecx,24
                mov     edx,'SMAP'
                
loop1:          int     15h
                
                jc      error11
                push    ax
                printstr        type1
                mov     ax,[di+16]
                call    show_ax
                cmp     ax,04
                jz      keep4
                jmp     nexts

keep4:          mov     eax,[di]
                mov     type4base,eax
                          
nexts:          
                printstr        space1
                printstr        baseadd
                mov     ax,[di+2]
                call    show_ax
                mov     ax,[di+0]
                call    show_ax
                printstr        space1
                printstr        length1 
                mov     ax,[di+10]
                call    show_ax
                mov     ax,[di+8]
                call    show_ax
                printstr        enters
                cmp     ebx,0
                je      exit1
                mov     eax,0e820h
                mov     ecx,24
                mov     edx,'SMAP'
                jmp     loop1
                
                 
error11:        printstr        error1
                jmp     exit2
exit1:      

                enableA20       ;open a20   

                mov     ax,0f000h
                mov     es,ax        
                mov     si,0
check1:         mov     eax,es:[si]
                cmp     eax,' DSR'
                jnz     next1
                add     si,4
                mov     eax,es:[si]
                cmp     eax,' RTP'
                jz      next2
                add     si,4
                jmp     check1

next1:          add     si,8
                jmp     check1                
  

next2:          ;printstr        find1
                ;printstr        enters
                sub     si,4            ;offset of RSDP
                mov     ebx,es:[si+16]  ;ebx = RSDT address
                mov     RSDTAddr,ebx
                printstr        string0
                mov     eax,ebx
                call    show_eax
                cmp     eax,type4base
                jl      print33
                printstr        type4s
                jmp     toXSDT
print33:        printstr        type3s
toXSDT:         
                printstr        enters
                printstr        string7
                mov     eax,es:[si+24]  ;XSDT address
                call    show_eax
                
                cmp     eax,type4base
                jl      print34
                printstr        type4s
                jmp     toF
print34:        printstr        type3s
toF:           
                printstr        enters
                xor     ax,ax
                mov     es,ax
                mov     ebx,RSDTAddr            ;rsdt addr
                mov     esi,36
recal11:        mov     eax,es:[ebx+esi]        ;get address
                cmp     eax,0
                je      out1
                mov     ACPIaddr,eax
                mov     ecx,es:[eax]            ;get signature
                mov     eax,ecx                
                cmp     eax,'PCAF'
                je      keepFADT
prints:         call    show_eax_asc
                printstr addr1
                mov     eax,acpiaddr
                call    show_eax
                cmp     eax,type4base
                jl      type3_show
                printstr type4s
                jmp     space11
 
keepFADT:       push	eax
		mov     eax,acpiaddr
                mov     FADTAddr,eax
		pop	eax
                jmp     prints                
                
                
type3_show:     printstr        type3s
space11:        printstr        enters
                add     esi,4
                jmp     recal11                
                
out1:
   ;=======  get FADT,FACS,DSDT address
          ;printstr        find2
                ;printstr        enters
                mov     eax,FADTAddr
                mov     esi,36
                mov     ebx,dword ptr es:[eax+esi]
                mov     FACSAddr,ebx
                mov     esi,40
                mov     ebx,dword ptr es:[eax+esi]
                mov     DSDTAddr,ebx
        ;=======  show address info
                printstr        string2
                mov     eax,FACSAddr
                call    show_eax
                cmp     eax,type4base
                jl      print31
                printstr        type4s
                jmp     next6
print31:        printstr        type3s
next6:          printstr        enters
 
                printstr        string3
                mov     eax,DSDTAddr
                call    show_eax
                cmp     eax,type4base
                jl      print32
                printstr        type4s
                jmp     next7
print32:        printstr        type3s
next7:          printstr        enters
                               
                  
exit2:
.exit



show_eax_asc    proc

                push    dx
                push    eax
                mov     dh,ah
                mov     dl,al
                mov     ah,2
                int     21h             ;show al
                mov     dl,dh
                int     21h             ;show ah
                pop     eax
                shr     eax,16
                mov     dh,ah
                mov     dl,al                
                mov     ah,2
                int     21h             ;high 
                mov     dl,dh
                int     21h             ;high 
                pop     dx
                ret
show_eax_asc    endp







show_ax         proc 
                push    ax
                mov     al,ah
                call    show_al
                pop     ax
                call    show_al
                ret
show_ax         endp   

show_eax        proc
                push    eax
                shr     eax,16
                call    show_ax
                pop     eax
                call    show_ax
                ret
show_eax        endp                
                	
show_al         proc    
                push    ax
                push    dx
                mov     dh,al
                and     al,0f0h
                shr     al,4
                add     al,30h
                cmp     al,3ah
                jb      doing
                add     al,7
doing:          mov     dl,al
                mov     ah,2
                int     21h                                   
	
	        mov     al,dh
                and     al,0fh
                add     al,30h
                cmp     al,3ah
                jb      doing1
                add     al,7
doing1:         mov     dl,al
                mov     ah,2
                int     21h  	
                pop     dx
                pop     ax
                ret
show_al		endp
              
                
end
	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久国产综合精品色伊| 日韩一区二区在线看| 亚洲天堂a在线| 亚洲线精品一区二区三区八戒| 樱花草国产18久久久久| 蜜臀久久久久久久| 成人av在线看| 日韩免费观看高清完整版 | 捆绑调教一区二区三区| 成人涩涩免费视频| 日韩写真欧美这视频| 亚洲欧美日韩国产综合| 国产一区欧美二区| 欧美喷水一区二区| 亚洲日本青草视频在线怡红院| 久久国产精品99精品国产 | 久久99精品久久久久婷婷| 91蜜桃在线免费视频| 久久久噜噜噜久久人人看| 丝袜亚洲另类欧美| 91国内精品野花午夜精品| 久久欧美中文字幕| 美女视频网站久久| 欧美美女网站色| 亚洲精品国产视频| 波多野结衣一区二区三区| 久久综合成人精品亚洲另类欧美| 一区二区三区中文在线观看| 成人深夜在线观看| 国产欧美视频在线观看| 美国三级日本三级久久99| 884aa四虎影成人精品一区| 有码一区二区三区| 色婷婷亚洲婷婷| 亚洲欧洲韩国日本视频| 国产成人午夜高潮毛片| www日韩大片| 国产一区二区影院| 日韩欧美在线123| 蜜桃传媒麻豆第一区在线观看| 欧美狂野另类xxxxoooo| 亚洲国产欧美日韩另类综合| 欧美性色黄大片| 亚洲永久免费视频| 欧美色倩网站大全免费| 亚洲成人动漫在线观看| 欧美日韩国产三级| 日韩电影在线观看网站| 日韩欧美不卡在线观看视频| 久久精品999| 国产肉丝袜一区二区| 高清不卡在线观看| 亚洲猫色日本管| 欧美日韩国产综合一区二区 | 国产一区在线观看麻豆| 久久精品网站免费观看| 成人福利视频网站| 一区二区三区中文在线观看| 欧美久久久久免费| 经典三级视频一区| 国产精品免费视频一区| 在线亚洲+欧美+日本专区| 亚洲国产成人av| 欧美va亚洲va香蕉在线| 高清不卡一区二区在线| 亚洲黄色尤物视频| 日韩午夜电影在线观看| 国产99久久久久久免费看农村| 中文字幕一区二区视频| 欧美日本在线一区| 国产精品一区专区| 亚洲乱码中文字幕| 欧美一区二区三区在线观看视频| 国产一级精品在线| 亚洲精品国产第一综合99久久 | 91论坛在线播放| 性做久久久久久久免费看| 久久蜜桃av一区二区天堂| av男人天堂一区| 青青国产91久久久久久| 中文字幕视频一区| 91精品久久久久久久99蜜桃 | 欧美大尺度电影在线| 成人深夜福利app| 全国精品久久少妇| 国产精品乱人伦| 欧美一区二区三区日韩视频| 99久久99久久综合| 精品在线你懂的| 亚洲成年人网站在线观看| 久久精品人人做| 欧美电影一区二区| 91丝袜国产在线播放| 狠狠色综合色综合网络| 亚洲一区二区偷拍精品| 中文子幕无线码一区tr| 欧美久久免费观看| 一本一道波多野结衣一区二区| 国内精品免费**视频| 亚洲成a人v欧美综合天堂| 国产精品麻豆一区二区| 欧美tickling挠脚心丨vk| 欧亚洲嫩模精品一区三区| 国产黄色91视频| 美女看a上一区| 视频在线观看一区| 一级特黄大欧美久久久| 国产精品国产自产拍在线| 久久男人中文字幕资源站| 欧美区一区二区三区| 欧美中文字幕一区二区三区亚洲 | 亚洲v日本v欧美v久久精品| 亚洲视频一区在线观看| 中文字幕国产精品一区二区| 久久综合九色综合欧美98| 91精品国产综合久久久久久久 | 亚洲欧美乱综合| 亚洲三级在线免费观看| 中文字幕乱码日本亚洲一区二区| 精品日韩99亚洲| 日韩一区二区三区在线观看 | 制服丝袜在线91| 欧美卡1卡2卡| 欧美一区二区三区不卡| 69堂成人精品免费视频| 欧美精品v日韩精品v韩国精品v| 欧美伊人久久久久久久久影院| 91猫先生在线| 在线亚洲欧美专区二区| 欧美日韩在线播| 正在播放亚洲一区| 日韩你懂的在线观看| 精品国产一区a| 亚洲精品一区二区三区99| 久久综合久色欧美综合狠狠| 久久久久久久久蜜桃| 中文字幕精品一区| 亚洲欧美精品午睡沙发| 亚洲一区二区三区在线播放| 亚洲成人7777| 韩国一区二区三区| 国产99久久久国产精品潘金| av亚洲精华国产精华| 欧美视频在线观看一区| 欧美一区二区三区精品| 亚洲精品一区二区三区影院| 中文字幕日韩精品一区| 亚洲午夜一区二区| 久久精品国产一区二区三区免费看| 久久国产精品无码网站| 国产成人免费xxxxxxxx| 一本大道综合伊人精品热热| 欧美久久久影院| 国产免费久久精品| 一区二区成人在线视频| 久久不见久久见免费视频7| 国产成人免费视| 欧美视频日韩视频在线观看| 精品不卡在线视频| 亚洲精品国产无套在线观| 蜜臀国产一区二区三区在线播放 | 精品久久久久久最新网址| 国产精品视频一区二区三区不卡| 一区二区三区电影在线播| 久久精品国内一区二区三区| 91小视频免费观看| 日韩情涩欧美日韩视频| 樱花草国产18久久久久| 美女网站色91| 在线亚洲高清视频| 久久久午夜精品| 亚洲成av人片在线观看| 国产传媒日韩欧美成人| 欧美日韩高清在线播放| 国产精品青草久久| 奇米一区二区三区| 色婷婷久久综合| 国产女人18毛片水真多成人如厕| 亚洲超碰精品一区二区| 不卡av免费在线观看| 精品国产亚洲一区二区三区在线观看| 伊人色综合久久天天| 国产91精品一区二区麻豆网站| 777久久久精品| 亚洲一区二区三区自拍| 91性感美女视频| 国产欧美视频一区二区三区| 奇米影视7777精品一区二区| 精品视频一区二区三区免费| 亚洲欧美在线视频| 成人一区二区三区中文字幕| 精品噜噜噜噜久久久久久久久试看| 亚洲综合999| 色婷婷久久久综合中文字幕| 国产精品理论在线观看| 国产一区二区精品久久91| 制服丝袜中文字幕一区| 视频在线在亚洲| 9191成人精品久久| 亚洲成人av电影在线|