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

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

?? flash_bios.asm

?? FLASH BIOS擦寫工具
?? ASM
字號:
NEWIODELAY MACRO   
    OUT 0EBH,AL   
ENDM   
  .model SMALL                                                                                                     
  .data       
  MCH = 0    -   0   
  ICH = 31   -   0   
  TSC_ID EQU (00   SHL   3)   
  PIIX_ID EQU (ICH   SHL   3)   
  DATA8042 EQU 60h   
  CTRL8042 EQU 61h   
  STAT8042 EQU 64h   
  IBF_8042 EQU 00000010b   
  OBF_8042 EQU 00000001b   
  A20_ON EQU 0DFh   
  A20_OFF EQU 0DDh   
  ;   Global   Descriptor   Table   Register   
  GDTR DW 8*2 ;   Limit   
  GDT_OFFSET DW 0   
  GDT_SEGMENT DW 0   
    
  GDT DW 0 ;   Linit   
  DW 0 ;   Base   
  DB 0 ;   Hibase   
  DB 0 ;   Access   
  DB 0 ;   Hilimit   
  DB 0 ;   Msbase   
    
  DATA_DT DW 0FFFFh ;   Limit   
  DW 0 ;   Base   Data   Segment   Point   
  DB 0 ;   Hibase   
  DB 93h ;   Access   
  DB 8Fh ;   Hilimit   (4GB)   
  DB 0 ;   Msbase   
  DATA_INDEX = ((OFFSET   DATA_DT   -   OFFSET   GDT)/8)   SHL   3   
                            
  .CODE                                                                                                                                                             
  .STACK     200H                                                               
  .386p     
  .startup   
  call Ct_ROM_Write_Enable         ;set   bios   rom   write   enable   
    
  call Use_32bit_Address                       ;enter   protected   mode   &   exit   
    
  call SST_49LF002_Write_Enable         ;set   rom   block   write   enable   
    
  mov edi,0ffff0000h   
  mov ds,di   
  mov es,di   
  call         Erase_Entire_Chip   
                            
  .exit   
  SST_49LF002_Write_Enable Proc   
  call JEDEC_Series_Reset   
  ;call Use_32bit_Address ;enter   protect   mode   &   exit   
  mov al,0   
                    mov esi,   0ffbf8002H ;set   rom   block   write   enable   
  mov bl,ds:[esi]   
  mov ds:[esi],   al   
  nop   
                    mov esi,   0ffbf0002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  mov esi,   0ffbe8002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  mov esi,   0ffbe0002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  mov esi,   0ffbd8002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  mov esi,   0ffbd0002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  mov esi,   0ffbc8002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  mov esi,   0ffbc0002H ;set   rom   block   write   enable   
  mov ds:[esi],   al   
  nop   
  call JEDEC_Series_Reset   
    
  clc   
  ret   
  SST_49LF002_Write_Enable endp   
  JEDEC_Series_Reset:   
  mov byte   ptr   es:[edi+5555h],   0AAh   
  mov byte   ptr   es:[edi+2AAAh],   055h   
  mov byte   ptr   es:[edi+5555h],   0F0h   
  mov byte   ptr   es:[edi],   0FFh   
  Call         delay_Wait     ;   wait   10   ms   until   tww   expires   
    
  ret   
  Erase_Entire_Chip               proc         near   
    
                  mov           es:byte   ptr   [edi+5555h],   0AAh ;   issue   6-byte   chip   
                  mov           es:byte   ptr   [edi+2AAAh],   055h ;     erase   command   sequence   
                  mov           es:byte   ptr   [edi+5555h],   080h   
                  mov           es:byte   ptr   [edi+5555h],   0AAh   
                  mov           es:byte   ptr   [edi+2AAAh],   055h   
                  mov           es:byte   ptr   [edi+5555h],   10h   
  mov cx,333*100   
                  call         Delay_wait                   ;   insert   delay   =   100ms   
    
                  ret   
    
  Erase_Entire_Chip               endp   
  ;-------------------------------------------------------------   
  Check_Toggle_Ready             proc         near   
    
                  push         ax ;   save   register   
  mov           al,ds:[edi+0fff0h]       ;   read   a   byte   form   the   chip   
                  and           al,40h ;   mask   out   the   TOGGLE   bit   (DQ6)   
    
  CTR_Tog2:   
      mov           ah,ds:[edi+0fff0h];   read   the   same   byte   from   the   chip   again   
                  and           ah,   40h ;   mask   out   the   TOGGLE   bit   (DQ6)   
                  cmp           al,   ah ;   is   DQ6   still   toggling?   
                  je             CTR_Tog3 ;   No,   then   the   write   operation   is   done   
                  xchg         ah,   al ;   YES,   then   continue   checking...   
                  jmp           short   CTR_Tog2   
    
  CTR_Tog3:   
                  pop           ax ;   restore   register   
    
                  ret   
    
  Check_Toggle_Ready             endp   
  Enter_Protect_Mode proc near   
  cli   
  mov al,A20_On ;R31   
  call Switch_A20 ;R31   
  xor eax,eax   
  mov ax,@data   
  mov ds,ax   
  shl eax,4   
  add eax,offset   GDT   
  mov dword   ptr   ds:GDT_OFFSET,eax   
  lgdt fword   ptr   ds:GDTR   
  mov eax,CR0   
  or al,1   
  mov CR0,eax   
  jmp short   $+2   
  mov ax,DATA_INDEX   
  mov ds,ax   
  mov es,ax   
  ret   
  Enter_Protect_Mode endp   
  ;-----------------------------------------------------------   
  Switch_A20 proc near   
  pusha   
  cmp al,A20_ON   
  jne Not_Enable_A20   
  push ax   
  mov al,02h   
  out 092h,al   
  pop ax   
  Not_Enable_A20:   
  shl eax,16 ;Save   al   
  call Buffer_8042_Full   
    
  jnz short   Switch_A20_Fail   
    
  mov al,0d1h   
  out STAT8042,al   
    
  call Buffer_8042_Full   
  jnz short   Switch_A20_Fail   
    
  shr eax,16 ;Load   al   
  out DATA8042,al   
    
  call Buffer_8042_Full   
  jnz short   Switch_A20_Fail   
    
  mov cx,4   
  Wait_A20_Switch:   
  NEWIODELAY   
  loop Wait_A20_Switch   
  clc   
  jmp short   Switch_A20_Success   
    
  Switch_A20_Fail:   
  stc   
  Switch_A20_Success:   
  popa   
  ret   
  Switch_A20 endp   
  ;-----------------------------------------------------------   
  Buffer_8042_Full                 proc         near                           
  push         cx   
  xor           cx,cx   
  @@:   
  in             al,STAT8042   
  NEWIODELAY   
  and           al,IBF_8042 ;Input   buffer   full?   
  loopnz     @B   
  pop           cx   
  ret   
  Buffer_8042_Full                 endp   
    
  Leave_Protect_Mode proc near   
  mov eax,CR0   
  and al,not   1   
  mov CR0,eax   
  jmp short   $+2   
  ret   
  Leave_Protect_Mode endp   
  ;-----------------------------------------------------------   
  Use_32bit_Address proc   
  push es   
  call Enter_Protect_Mode ;use   4G   high   address     
  call Leave_Protect_Mode   
  pop es   
  ret   
  Use_32bit_Address endp   
  ;-----------------------------------------------------------   
  Delay_Wait             proc           ;in   cx=t       delay   t*33(us)   
  Delay_wait_0:   
  in al,61h   
  test al,010h   
  jnz Delay_wait_0   
  Delay_wait_1:   
  in al,61h   
  test al,010h   
  jz Delay_wait_1   
    
  loop         Delay_wait_0   
  ret   
  Delay_Wait             endp   
  ;----------------------------------------------------   
  Ct_ROM_Write_Enable proc near;   
  pushad   
  mov cx,(PIIX_ID   shl   8)+4eh     ;cx   =0f84eh   
  call Get_Ct ;get   PCI   register   [8000f84e]   
  or al,01H ;flash   write   enabled   
  call Set_Ct ;set   PCI   register   [8000f84e]   
  popad   
  RET   
  Ct_ROM_Write_Enable endp   
  ;------------------------------------------------------------   
  GET_CT PROC NEAR   
  GET_PCI:   
  CONFIG_ADDR EQU 0cf8h   
  mov ax,8000H ;enable   PCI   config.   
  shl eax,16   
  mov ax,cx   
  and al,NOT   03h ;32   bit   access   for   PCI   
  mov dx,CONFIG_ADDR ;index   is   0cf8h   
  out dx,eax   
  add dl,4 ;start   from   0cfch   
  mov al,cl   
  and al,03h   
  add dl,al     ;byte   index   to   read   
  in al,dx   
  ret   
  GET_CT ENDP   
  ;-----------------------------------------------------------------------   
  SET_CT PROC NEAR   
  SET_PCI:   
  xchg ax,cx   
  shl ecx,16 ;save   value   
  xchg ax,cx ;restore   cx   
  mov ax,8000H ;enable   PCI   config.   
  shl eax,16   
  mov ax,cx   
  and al,NOT   03h ;32   bit   access   for   PCI   
  mov dx,CONFIG_ADDR ;index   is   0cf8h   
  out dx,eax   
  add dl,4 ;start   from   0cfch   
  mov al,cl   
  and al,03h   
  add dl,al     ;byte   index   to   read   
  shr ecx,16 ;restore   value   
  mov ax,cx   
  out dx,al   
  ret   
  SET_CT ENDP   
  ;-------------------------------------------------------------   
  end   

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡在线观看av| 日本一区二区三区dvd视频在线| 日韩午夜av电影| 亚洲色图视频网| 国产一二三精品| 欧美日韩国产片| 亚洲丝袜另类动漫二区| 精品亚洲porn| 正在播放亚洲一区| 亚洲免费在线播放| 成人午夜免费视频| 久久久久久久久99精品| 久久精品72免费观看| 欧美日韩精品三区| 一片黄亚洲嫩模| 91在线精品一区二区| 国产香蕉久久精品综合网| 看电影不卡的网站| 日韩一二三区不卡| 日韩激情中文字幕| 欧美日韩高清在线播放| 一区二区不卡在线播放 | 91精彩视频在线观看| 国产亚洲一二三区| 狠狠久久亚洲欧美| 日韩精品一区二区三区在线| 日韩av不卡在线观看| 在线播放视频一区| 天天影视网天天综合色在线播放| 欧美日韩国产综合一区二区三区 | 精品国产乱码久久久久久蜜臀| 日韩高清欧美激情| 在线综合+亚洲+欧美中文字幕| 午夜精品一区二区三区免费视频 | 国产999精品久久久久久| 亚洲精品一区二区在线观看| 狠狠久久亚洲欧美| 欧美激情在线一区二区三区| 国产精品一区二区男女羞羞无遮挡 | 一区二区不卡在线播放| 欧美影视一区在线| 日韩二区在线观看| 精品久久五月天| 成人在线视频一区二区| 亚洲欧洲日韩在线| 一本一本大道香蕉久在线精品| 亚洲成人资源网| 日韩欧美国产一区二区三区| 国产精品一区二区视频| 日韩毛片视频在线看| 欧美少妇性性性| 久久99精品久久久| 中文字幕成人网| 欧美亚洲国产一区二区三区 | 亚洲精品成人天堂一二三| 欧美伊人久久久久久久久影院| 偷窥国产亚洲免费视频| 2024国产精品| 色综合咪咪久久| 蜜桃av噜噜一区| 亚洲国产高清不卡| 欧美日韩久久久久久| 国产尤物一区二区| 亚洲欧美成人一区二区三区| 91精品免费观看| 成人aa视频在线观看| 亚洲不卡在线观看| 久久理论电影网| 欧美主播一区二区三区| 经典一区二区三区| 一区二区三区在线视频观看| 精品三级在线看| 91视视频在线观看入口直接观看www| 石原莉奈一区二区三区在线观看| 国产视频一区在线播放| 欧美日韩一区小说| 成人国产在线观看| 美脚の诱脚舐め脚责91| 亚洲精品综合在线| 久久免费看少妇高潮| 欧美性大战久久久久久久蜜臀| 国产大陆精品国产| 蜜桃精品视频在线| 一区二区欧美在线观看| 国产午夜亚洲精品午夜鲁丝片| 欧美日本高清视频在线观看| 成人福利电影精品一区二区在线观看| 婷婷开心激情综合| 亚洲色图欧美在线| 精品成人一区二区| 8v天堂国产在线一区二区| 91首页免费视频| 成人高清视频免费观看| 激情图区综合网| 亚洲va欧美va人人爽午夜| 亚洲色图欧美偷拍| 国产精品视频在线看| 26uuu久久天堂性欧美| 欧美美女视频在线观看| 色天使久久综合网天天| 成人免费看视频| 国产一区二区三区在线观看免费视频| 日韩国产欧美一区二区三区| 一区二区三区在线播| 最新日韩在线视频| 国产欧美精品一区二区色综合 | 国产一区二区主播在线| 全国精品久久少妇| 亚洲福利电影网| 亚洲国产一区在线观看| 亚洲欧美日韩国产手机在线| 国产精品传媒在线| 国产精品久久久爽爽爽麻豆色哟哟| 2023国产一二三区日本精品2022| 欧美一级高清片在线观看| 欧美一区二区三区影视| 欧美久久一二区| 337p亚洲精品色噜噜| 日韩免费观看高清完整版| 欧美一区二区免费视频| 日韩欧美国产午夜精品| 精品久久久久久久久久久院品网| 日韩一区二区三区三四区视频在线观看| 欧美另类z0zxhd电影| 91精品国产综合久久精品app| 欧美午夜电影一区| 这里只有精品99re| 亚洲精品一区二区三区精华液| 欧美tickling挠脚心丨vk| 精品国产91洋老外米糕| 国产清纯在线一区二区www| 国产精品第四页| 午夜a成v人精品| 久久成人羞羞网站| 成人免费视频一区| 色诱视频网站一区| 欧美二区三区91| 亚洲精品一区二区三区影院| 国产精品乱码一区二三区小蝌蚪| 亚洲视频一区二区在线观看| 亚洲成人激情社区| 国产在线精品视频| 99国产精品久久久久| 欧美日韩国产精品自在自线| 2023国产精品| 一区二区三区日韩精品视频| 日本女优在线视频一区二区 | 日本成人超碰在线观看| 国产精一品亚洲二区在线视频| 91欧美激情一区二区三区成人| 在线播放视频一区| 欧美国产成人精品| 午夜激情久久久| 国产精品中文有码| 欧美巨大另类极品videosbest | 一区二区国产盗摄色噜噜| 经典一区二区三区| 欧美视频在线播放| 久久久www成人免费无遮挡大片| 亚洲精品老司机| 国产精品一区一区| 欧美久久久久久蜜桃| 国产欧美日韩精品在线| 日本sm残虐另类| 色婷婷久久综合| 国产无遮挡一区二区三区毛片日本| 一区二区国产视频| 成人av资源站| 精品国产成人系列| 日韩综合在线视频| 99免费精品视频| 久久婷婷成人综合色| 五月天一区二区| 91丝袜美女网| 国产欧美日韩视频在线观看| 久久精品理论片| 色综合久久精品| 日本一区二区三区电影| 久草这里只有精品视频| 欧美视频三区在线播放| 1024成人网| www.一区二区| 欧美激情一区二区三区| 国内精品在线播放| 日韩一区二区免费视频| 亚洲国产成人av网| 欧美综合欧美视频| 亚洲精品亚洲人成人网在线播放| 福利视频网站一区二区三区| 精品国产乱码久久久久久影片| 日产欧产美韩系列久久99| 欧美日韩亚洲国产综合| 亚洲精选视频免费看| 色综合天天综合狠狠| 成人欧美一区二区三区视频网页| 国产99久久久国产精品| 精品国产百合女同互慰| 国内成人免费视频| 精品国产凹凸成av人导航| 精品制服美女丁香|