  Ŀ
  Ŀ
                                                                          
                  Yuvarlak Ke  "Super VGA Grafikleri"                  
                                                                          
  ٳ
   PS 25  Austos'95                                     Alex G. Pamir     
  




> Merhaba sevgili okuyucular,
 
  Son zamanlarda donanmn gelimesinden dolay nemi artan bir konu olan
  Super VGA grafikleri ve bunlarn kullanm bu ayn konusu.

> Super VGA bildiiniz (veya u anda rendiiniz) gibi stardart ilk 19 VGA
  grafik modundan (00h-13h) sonra gelen modlarn oluturduu yksek
  znrlkl grafik modlarnn oluturduu bir alan biz programclar iin.

  Standart grafik modlar en yksek 640x480 znrlkte 16 renk veya 320x200
  znrlkte 256 renk grnt verebilirken Super VGA modlar u anki
  teknolojiyle 1640x1280 gibi ultra znrlklerde 16 milyon renk
  salayabiliyorlar. Fakat programclar iin bu modlar kullanmann 2 byk
  sakncas vard imdiye kadar. Bunlardan biri bu grafik modlarnn ok yava
  olmas dieri ise her kart reticisinin kendine gre abuk modlar tanmlamas
  ve bir kart iin yazlan programn dierinde alamamasyd. Fakat
  teknolojinin gelimesiyle hz sorunu bu gnlerde ortadan kalkmak zere.
  Piyasaya grafik hzlandrc kartlar hakim olmu durumda. Standardizasyon
  problemi ise 1989 ylnda aralarnda byk VGA kart reticileri olan ATI,
  Chips & Technologies, Everex, Genoa, Intel, Phoenix Technologies, Orchid,
  Paradise, Video Seven gibi elebalar bulunan birok reticinin biraraya
  gelmesi ile oluturulan VESA (Video Electronic Standards Association)
  komitesince belirlenen standartlarla zld.

  Bu ay size bu VESA standartlarn anlatmaya balayacam. Bu standartlar
  kullanarak yazlan programlar VESA'y destekleyen her grafik kart ile
  alr. Vereceim rnekler sayesinde siz de bu modlarda grafik gsterebilen
  programlar yazabileceksiniz.

  Bir grafik kartnn VESA standartna sahip olabilmesi iki trldr. Ya
  kartn kendi BIOS'u zerinde bu standartlar programldr(yeni kartlardaki
  durum), ya da eski kartlarda olmayan bu zellikler AUTOEXEC.BAT'den yklenen
  bir TSR program sayesinde kartn BIOS'una kazandrlr. Programc iin
  asnda bu durum hi farketmez ama bilgi olsun diye syledim.

  Bir kartn VESA fonksiyonlar her iki durumda da (TSR veya BIOS) 10h no'lu
  grafik interrupt'nn 4Fh no'lu altfonksiyonuna yerlemitir. Bu fonksiyona
  da daha baka parametreler gndererek VESA altfonksiyonlarna ulalr.
  Normalde protokol udur:

    Interrupt 10h  Function 4Fh

       AH : 4Fh
       AL : VESA altfonksiyon no

    VESA altfonnksiyonlar unlardr:

      00h : Super VGA kartnn zelliklerini sorgulama
      01h : Belli bir VESA modunun zelliklerini sorgulama
      02h : Bir VESA modunu etkin hale getirme
      03h : u anki etkin modu sorgulama
      04h : Super VGA kartnn durumunu kaydetme/geri getirme
      05h : Video RAM'daki eriim penceresini sorgulama/etkin hale getirme


> 00h no'lu altfonksiyon arldnda AH ve AL'den baka iini dolduraca
  bir tampon bellein adresini ES:DI iftinde segment:offset olarak ister.
  Interrupt arldktan sonra bu bellek blgesi bilgilerle doludur. rnek
  programda bu blgenin yapsn bir C struct' olarak grebilirsiniz. Burada
  en nemli olan kartn destekledii modlarn numaralarnn (genllikle
  100h'den byk olur) bulunduu bellek adresini gsteren pointer'dr.

  Buradan teker teker kartn destekledii modlar alnr ve 01h no'lu fonksiyon
  aracl ile bu modlarn detayl zellikleri grenilir. Bunlar da yine C
  struct' biiminde rnek programda var.

                             o o o

> imdilik bu kadar. Daha oturup PC WORLD'deki yazm yazmam lazm. Tabii
  bunun iin de oyun oynamam gerekli. Beni affedin arkadalar ama i itir, ne
  yapalm! Gelecek ay VESA modlar konusunu bitiririz, ekrana pixel falan
  izen cici bir de rnek programmz olur. Fakat bu ay sadece ekran kartnz
  tanyan bir programla idare edin. Fakat bu programda da nemli birok nokta
  var o yzden iyi inceleyin. Grmek zere....




 