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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? gfx.inc

?? 將bmf在DOS下顯示出來(lái)
?? INC
字號(hào):
{$IFNDEF gfx}
{$DEFINE gfx}
{$I SYST.INC}
var
  ScrWidth:dword;
  ScrHeight:dword;
  VRAMSIZE:dword;
  vram:dword;
type
  string12=string[12];
const
  gfx_MODE:string12='640x400x8';
  vga_VRAM=$000A0000;
  vbe_VESA=ord('V') or ord('E') shl 8 or ord('S') shl 16 or ord('A') shl 24;
  vbe_VBE2:dword=ord('V') or ord('B') shl 8 or ord('E') shl 16 or ord('2') shl 24;
  vbe_SUPPORTED=$11; {*$13}
type
  TVESAInfo=record
    VBESignature       :dword;
    VBEVersion         :word;
    OemStringPtr       :dword;
    Capabilities       :dword;
    VideoModePtr       :dword;
    TotalMemory        :word;
    OEMSoftwareRev     :word;
    OEMVendorNamePtr   :dword;
    OEMProductNamePtr  :dword;
    OEMProductRevPtr   :dword;
    Reserved           :array[0..221] of byte;
    OEMData            :array[0..255] of byte;
  end;  {TVESAInfo}
  TVESAModeInfo=record
    ModeAttributes     :word;
    WinAAttributes     :byte;
    WinBAttributes     :byte;
    WinGranularity     :word;
    WinSize            :word;
    WinASegment        :word;
    WinBSegment        :word;
    WinFuncPtr         :pointer;
    bytesPerScanLine   :word;
    XResolution        :word;
    YResolution        :word;
    XCharSize          :byte;
    YCharSize          :byte;
    NumberOfPlanes     :byte;
    BitsPerPixel       :byte;
    NumberOfBanks      :byte;
    MemoryModel        :byte;
    BankSize           :byte;
    NumberOfImagePages :byte;
    Reserved           :byte;
    RedMaskSize        :byte;
    RedFieldPosition   :byte;
    GreenMaskSize      :byte;
    GreenFieldPosition :byte;
    BlueMaskSize       :byte;
    BlueFieldPosition  :byte;
    RsvdMaskSize       :byte;
    RsvdFieldPosition  :byte;
    DirectColorModeInfo:byte;
    PhysBasePtr        :dword;
    OffScreenMemOffset :dword;
    OffScreenMemSize   :word;
    Reserved2          :array[0..205] of byte;
  end;  {TVESAModeInfo}

procedure WaitForTrace; assembler;
asm
 mov  dx,03DAh
@1:
 in   al,dx
 test al,8
 jnz  @1
@2:
 in   al,dx
 test al,8
 jz   @2
end;  {WaitForTrace}

PROCEDURE WaitFlicks(n:longint);
var i:longint;
begin
  for i:=1 to n do WaitForTrace;
end;  {WaitFlicks}

function  modeByRes(mode:string12):word;
var
  i:longint;
  VESAModeInfo:TVESAModeInfo;
  regs:TRmRegs;
begin
  result:=0;
  if copy(mode,1,1)='#' then begin
    result:=strToInt(copy(mode,2,255));
    exit;
  end;
  for i:=$100 to $1FF do begin
    with regs do begin
      fillchar(buf_16,0,sizeof(VESAModeInfo));
      ES:=buf_16;
      AX:=$4F01;
      DI:=$0000;
      CX:=i;
    end;
    RealModeInt($10,regs);
    move(pointer(buf_32)^,VESAModeInfo,sizeof(VESAModeInfo));
    if (regs.AX=$004F) and (VESAModeInfo.ModeAttributes and vbe_SUPPORTED=vbe_SUPPORTED) and (VESAModeInfo.PhysBasePtr<>0) then
      if intToStr(VESAModeInfo.XResolution)+'x'+intToStr(VESAModeInfo.YResolution)+'x'+intToStr(VESAModeInfo.BitsPerPixel)=mode then begin
        result:=i;
        break;
      end;
  end;
end;  {modeByRes}

function  vga_Supported:boolean;
var r:TRmRegs;
begin
  ClearRmRegs(r);
  r.AX:=$1A00;
  RealModeInt($10,r);
  result:=(r.AL=$1A) and ((r.BL=7) or (r.BL=8));
end;  {VGASupported}

procedure vga_Open;
var r:TRmRegs;
begin
  if actGFX then exit;
  bioswriteln('Opening graphics..');
  bioswriteln('Detecting VGA..');
  if not vga_Supported then die(errVGANotSupported);
  ClearRmRegs(r);
  r.AX:=$0013;
  RealModeInt($10,r);
  waitflicks(18);
  vram:=vga_VRAM;
  ScrWidth:=320;
  ScrHeight:=200;
  VRAMSIZE:=ScrWidth*ScrHeight;
  actGFX:=true;
end;  {vga_Open}

procedure vga_Close;
begin
  if actGFX=false then exit;
  SetText;
  bioswriteln('Closing graphics..');
  if (vram<>vga_VRAM) and (vram<>0) then FreePhysicalMap(vram);
  actGFX:=false;
end;  {vga_Close}

procedure vbe_Open;
var
  VESAInfo:TVESAInfo;
  VESAModeInfo:TVESAModeInfo;
  regs:TRmRegs;
  vbe_MODE:dword;
begin
  if actGFX then exit;
  bioswriteln('Opening graphics..');
  bioswriteln('Detecting VBE..');
  ClearRmRegs(regs);
  with regs do begin
    dword(ptr(buf_16)^):=vbe_VBE2;
    AX:=$4F00;
    ES:=buf_16;
  end;
  RealModeInt($10,regs); waitflicks(10);
  Move(Pointer(buf_32)^,VESAInfo,sizeof(VESAInfo));
  if (regs.AX<>$004F) or (VESAInfo.VBESignature<>vbe_VESA) then
    die(errVBENotDetected);
  bioswriteln('VESA BIOS EXTENSION Detected');
  bioswriteln('VBE version: '+inttostr(Hi(VESAInfo.VBEVersion))+'.'+inttostr(Lo(VESAInfo.VBEVersion)));
  if VESAInfo.VBEVersion<$0200 then die(errVBE20Needed);
  bioswriteln('Total video memory: '+inttostr(VESAInfo.TotalMemory*64)+' KB');
  if VESAInfo.TotalMemory<$0010 then
    die(errVBECardMemory);
  bioswriteln('Trying to get further information about mode '+gfx_MODE+'..');
  vbe_MODE:=modeByRes(gfx_MODE);
  if vbe_MODE=0 then die(errVBEModeNotSupported);
  ClearRmRegs(regs);
  with regs do begin
    ES:=buf_16;
    AX:=$4F01;
    DI:=$0000;
    CX:=vbe_MODE;
  end;
  RealModeInt($10,regs); waitflicks(10);
  move(pointer(buf_32)^,VESAModeInfo,sizeof(VESAModeInfo));
  if (regs.AX<>$004F) or (VESAModeInfo.ModeAttributes and vbe_SUPPORTED<>vbe_SUPPORTED) or (VESAModeInfo.PhysBasePtr=0) then
    die(errVBEModeNotSupported);
  ScrWidth:=VESAModeInfo.XResolution;
  ScrHeight:=VESAModeInfo.YResolution;
  VRAMSIZE:=((VESAModeInfo.BitsPerPixel+7) shr 3*ScrWidth*ScrHeight+1023) shr 10 shl 10;
  bioswriteln('Resolution: '+inttostr(ScrWidth)+'x'+inttostr(ScrHeight)+'x'+inttostr(VESAModeInfo.BitsPerPixel));
  bioswriteln('Physical videoram address: '+hex(VESAModeInfo.PhysBasePtr));
  bioswriteln('Trying to map physical VRAM to linear..');
  vram:=MapPhysicalToLinear(VESAModeInfo.PhysBasePtr,VRAMSIZE);
  if vram=0 then die(errDPMI800) else actGFX:=true;
  bioswriteln('If you are under Windows, switch to fullscreen.'#13#10
  +'Press Enter to continue or any other key to quit.');
  if readkey<>#13 then die(255);
  ClearRmRegs(regs);
  with regs do begin
    AX:=$4F02;
    BX:=$4000 or vbe_MODE;
  end;
  RealModeInt($10,regs); waitflicks(18);
  if regs.AX<>$004F then die(errVBEModeSet);
end;  {vbe_Open}

procedure vbe_Close;
begin
  if actGFX=false then exit;
  SetText;
  bioswriteln('Closing graphics..');
  bioswriteln('Freeing virtual VRAM at '+hex(vram)+'..');
  FreePhysicalMap(vram);
  actGFX:=false;
end;  {vbe_Close}

function atLine(y:longint):pointer; assembler; {not range-checked!}
asm
  cmp  svga,false
  jz   @vbe
  mov  eax,y
  shl  eax,8
  mov  ebx,eax
  shr  ebx,1
  shr  ebx,1
  add  eax,ebx
  jmp  @finish
@vbe:
  mov  eax,y
  mul  ScrWidth
@finish:
  add  eax,vram
end;  {atLine}

function at(x,y:longint):pointer; assembler; {not range-checked!}
asm
  cmp  svga,false
  jz   @vbe
  mov  eax,vram
  mov  ebx,y
  shl  ebx,8
  add  eax,ebx
  shr  ebx,1
  shr  ebx,1
  add  eax,ebx
  jmp  @finish
@vbe:
  mov  eax,y
  mul  ScrWidth
  add  eax,vram
@finish:
  add  eax,x
end;  {at}

{$ENDIF}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级爆毛片| 久久国产精品99精品国产| 国产精品久久99| 国产网站一区二区三区| 国产亚洲一二三区| 欧美经典一区二区| 国产精品午夜在线观看| 中文av一区二区| 中文字幕中文乱码欧美一区二区 | 免费看精品久久片| 青青草国产成人99久久| 免费不卡在线视频| 国内精品写真在线观看| 国产电影精品久久禁18| 成人国产免费视频| 91啪在线观看| 在线不卡中文字幕| 欧美成人福利视频| 中文字幕精品在线不卡| 亚洲视频每日更新| 亚洲成a人片综合在线| 丝袜亚洲另类欧美| 国产一区二区0| 99精品视频在线播放观看| 欧美视频中文一区二区三区在线观看| 欧美日韩精品是欧美日韩精品| 在线不卡免费欧美| 久久夜色精品国产欧美乱极品| 中文在线一区二区 | 色悠久久久久综合欧美99| 欧美自拍丝袜亚洲| 精品久久久久久久久久久久久久久久久 | 日韩精品在线一区| 国产日韩欧美在线一区| 亚洲视频每日更新| 日本午夜一区二区| 成人18视频在线播放| 欧美日韩精品综合在线| 欧美精品一区二区三区四区| 亚洲欧洲无码一区二区三区| 亚洲gay无套男同| 国产一区二区主播在线| 色婷婷综合久久久中文一区二区 | 91精品在线观看入口| 国产三级精品视频| 亚洲v日本v欧美v久久精品| 激情综合网激情| 色综合久久天天综合网| 日韩美女视频一区二区在线观看| 国产精品网站在线播放| 亚洲成人综合在线| 粉嫩久久99精品久久久久久夜| 欧美午夜影院一区| 久久久久青草大香线综合精品| 日韩理论片在线| 激情小说欧美图片| 欧美亚日韩国产aⅴ精品中极品| 26uuu精品一区二区| 亚洲mv在线观看| 99久久国产综合色|国产精品| 7777精品伊人久久久大香线蕉| 中文字幕乱码日本亚洲一区二区| 午夜成人免费电影| 色综合一区二区三区| 久久色在线视频| 日韩精品久久久久久| 91丝袜美腿高跟国产极品老师| 日韩亚洲欧美高清| 亚洲午夜久久久久久久久电影网| 国产成人综合网站| 日韩精品一区二区三区蜜臀 | 91精品1区2区| 国产午夜精品美女毛片视频| 蜜桃在线一区二区三区| 欧美色成人综合| 综合分类小说区另类春色亚洲小说欧美| 蜜臀av一区二区在线免费观看| 在线中文字幕一区二区| 中文字幕一区二区视频| 国产成人夜色高潮福利影视| 91精品国产全国免费观看| 夜夜爽夜夜爽精品视频| 久久亚洲精华国产精华液 | 成人午夜又粗又硬又大| 欧美成人a在线| 奇米888四色在线精品| 欧美日韩国产色站一区二区三区| 亚洲欧美成aⅴ人在线观看| 粉嫩一区二区三区在线看| 2024国产精品| 国内精品久久久久影院薰衣草| 欧美一区二区三区色| 五月天一区二区三区| 欧美美女黄视频| 亚洲成人自拍网| 欧美日韩日日骚| 亚洲一本大道在线| 欧美日韩免费电影| 日精品一区二区| 欧美二区在线观看| 蜜臀av一级做a爰片久久| 91.成人天堂一区| 美日韩一区二区| 日韩精品一区二区在线观看| 精一区二区三区| 精品福利av导航| 国产夫妻精品视频| 国产精品久久网站| 91老师国产黑色丝袜在线| 亚洲女同ⅹxx女同tv| 一本一道久久a久久精品综合蜜臀| 综合久久国产九一剧情麻豆| 色香蕉成人二区免费| 亚洲成人精品影院| 欧美一区二区免费| 国产一区二区久久| 中文字幕高清不卡| 色94色欧美sute亚洲13| 亚洲成av人片在线| 欧美电视剧在线看免费| 国产超碰在线一区| 一区二区在线观看av| 欧美日韩国产美| 精品一区二区三区在线视频| 国产欧美一区二区三区沐欲| 99久久精品国产观看| 性感美女极品91精品| 精品国产伦一区二区三区观看体验| 国产成人在线看| 亚洲精品你懂的| 777亚洲妇女| 国产麻豆精品视频| 1024国产精品| 欧美日本免费一区二区三区| 国产中文一区二区三区| 国产精品区一区二区三区| 在线观看网站黄不卡| 久久国产免费看| 最新中文字幕一区二区三区| 欧美片网站yy| 国产精品77777竹菊影视小说| 综合在线观看色| 欧美一区二区三区在线观看| 国产99久久久久久免费看农村| 一区二区三区四区五区视频在线观看| 欧美一区二区成人| 99视频超级精品| 免费观看日韩av| 日韩毛片高清在线播放| 日韩午夜三级在线| 91老司机福利 在线| 激情深爱一区二区| 亚洲精品成人天堂一二三| 日韩一区二区麻豆国产| 99久久精品国产一区二区三区 | 国产精选一区二区三区| 一区二区视频免费在线观看| 精品精品欲导航| 欧美视频精品在线观看| 成人涩涩免费视频| 日韩电影在线免费| 亚洲欧美偷拍卡通变态| 久久这里只有精品6| 欧美日韩国产片| 91美女福利视频| 国产一区二区日韩精品| 日韩黄色在线观看| 亚洲精品视频在线看| 国产亚洲精品免费| 欧美一级一区二区| 欧美亚州韩日在线看免费版国语版| 国产 欧美在线| 韩国视频一区二区| 首页国产欧美日韩丝袜| 一区二区三区欧美| 国产精品国产精品国产专区不蜜| 欧美精品一区二区三区一线天视频| 欧美日韩免费高清一区色橹橹| 99久久免费精品高清特色大片| 国产美女av一区二区三区| 男女性色大片免费观看一区二区| 亚洲人精品午夜| 中文字幕欧美激情一区| 久久先锋影音av| 欧美一级二级在线观看| 欧美日韩大陆一区二区| 色狠狠一区二区| 91视频xxxx| www.av精品| 不卡欧美aaaaa| 成人av网址在线观看| 国产成人精品一区二区三区网站观看| 麻豆成人久久精品二区三区红| 亚洲尤物在线视频观看| 樱花草国产18久久久久| 中文字幕日韩精品一区| 国产精品狼人久久影院观看方式| 久久影音资源网| 国产亚洲精品免费| 国产日本欧洲亚洲|