
          Ŀ
            VESA.H            (C) 1997 by GyikSoft
          

 Konstansok:
 ===========

  pl.:  VESAMODE_640x480x256
                  ^   ^   ^ szinek szma  (16/256/32K/64K/16M/TXT)
                      Y-felbonts
                   X-felbonts
  egyb opcik:
    VESAMODE_LFB=4000H    ; LINEAR FRAMEBUFFER (LFB) bekapcsolsa
    VESAMODE_NOCLS=8000H  ; Nem trli a kpernyt


 Fggvnyek:
 ===========

 VESA_GETVESAINFO  - ltalnos VESA informcik lekrdezse
 ~~~~~~~~~~~~~~~~
 Def.:  #VESA_GETVESAINFO=BIOS 4F00H
 Elkszletetek:
     ES:DI->puffer, mrete: 512 byte
 Be: -
 Ki: pufferben az anyag

 VESA_GETMODEINFO  - egy VESA videmd adatainak lekrdezse
 ~~~~~~~~~~~~~~~~
 Def.:  #VESA_GETMODEINFO(CX)=BIOS 4F01H
 Elkszletetek:
     ES:DI->puffer, mrete: 256 byte
 Be: VESA-md szma, vagy elzleg CX-be kell tenni
 Ki: pufferben az anyag

 Megj: a mdnl nem szabad megadni az LFB-t! (mert akkor hibval tr vissza)

 VESA_SETMODE(BX)  - VESA videmd belltsa
 ~~~~~~~~~~~~~~~~
 Def.: #VESA_SETMODE(BX)=BIOS 4F02H
 Be: VESA-md szma, vagy elzleg BX-be kell tenni
 Ki: -

 VESA_GETMODE  - aktulis videmd lekrdezse
 ~~~~~~~~~~~~
 Def.: #VESA_GETMODE:BX=BIOS 4F03H
 Be: -
 Ki: aktulis videmd

 VESA_ERROR  - hiba lekrdezse
 ~~~~~~~~~~
 Def.: #VESA_ERROR:(AX<>4FH)=
 Be: -
 Ki: TRUE ha hiba trtnt.

 Pl.: IF VESA_ERROR THEN QUIT



 Egy plda rutin, ami bekapcsol 640x480x256 LFB mdot, hibakezelssel:
 =====================================================================

ES=DS//DI->//VAR PUFFER:DB*256//VESA_GETMODEINFO(VESAMODE_640x480x256)
IF VESA_ERROR OR NOT WPT PUFFER[0]&7 THEN
  @: WRITELN'Your VGA-card doesn''t supports VESA 2.0 or LFB, try UNIVBE!'
  =>QUIT
ENDIF
EAX:=DPT PUFFER[28H]//VAR LFB_CIM=EAX               ; Linear framebuffer cme!
VESA_SETMODE(VESAMODE_640x480x256+VESAMODE_LFB)
IF VESA_ERROR THEN @






