- VESA BIOS Extensions
-
Die VESA BIOS Extension (VBE) ist ein Standard der Video Electronics Standards Association (VESA) für Grafikkarten in IBM-kompatiblen Personalcomputer (PCs).
Sie sind eine üblicherweise im Grafikkarten-BIOS implementierte Programmierschnittstelle (API) die den Programmen Interrupts zur Verfügung stellt, um damit Aktionen wie das Setzen oder Abfragen von Videomodi durchzuführen sowie weitere von der Hardware unterstützte Funktionen anzusprechen. Heutige Pendants wie etwa DirectX und OpenGL sind hingegen auf Betriebssystemebene implementiert.
Primär war die VESA BIOS Extension für 16-Bit-Applikationen unter DOS gedacht. Der Framebuffer kann allerdings auch von 32-Bit-DPMI-Programmen verwendet werden. Mit der Einführung der VBE 2.0 war es somit möglich, Grafikmodi in mit 16 Bit Farbtiefe (65.536 Farben) mit Auflösungen bis zu 1.600x1.200 zu verwenden, ohne gezielt programminterne Unterscheidungen zur verwendeten Grafikhardware zu implementieren. Unter DOS gab es vorher keine standardisierte Schnittstelle für Grafik, die über den VGA-Standard hinausging.
Die aktuelle Version des Standards ist 3.0, welcher Abwärtskompatibel zur vorherigen Spezifikation 2.0 ist. Er wird von den meisten modernen nVidia-Grafikkarten unterstützt, wird allerdings heute (2007) kaum noch von Anwendungssoftware verwendet, da heutzutage die Hardware von der Anwendung nicht mehr direkt angesprochen wird (s.u.). Bereits seinerzeit wurden die mit dem Standard 3.0 eingeführten Neuerungen gegenüber dem Standard 2.0 nicht verwendet, da mit dem Standard 2.0 bereits alle wesentlichen Funktionen zur Verfügung stehen. Die wesentliche Neuerung war der sog. Protected Mode Entry Point, der aber in modernen Systemen aus designtechnischen Gründen (es müsste Wechsel in 20 Bit Protected Mode stattfinden) nicht genutzt wird. Zudem werden in Desktop-Systemen wie Microsoft Windows und Linux von der Grafikkarte unabhängige APIs verwendet, die dann entsprechende Funktionalität über herstellerspezifische Treiber mit wohldefinierten Schnittstellen umsetzen. Ferner werden insbes. bei Laptops aufgrund der dortigen besonderen Displaygrößen einige der Modi mit WXGA-Auflösungen überschrieben.
Die meisten MS-DOS-basierten Spiele zwischen etwa 1993 und 1997 verwendeten die schnellen 16-Bit-Modi mit niedriger Auflösung wie etwa 320×200 oder 320×240, später 640×480. Da jedoch nicht alle Grafikkarten bei Einführung dieses Standards entsprechende Funktionalität im BIOS der Karten implementierten, gab es universelle Zusatzprogramme (etwa UniVBE, später Scitech Display Doctor) wie auch hardwarespezifische Zusatzprogramme (etwa S3VBE Core 2.0 für S3-Grafikkarten oder TLIVESA für Tseng Labs-Grafikkarten), die entsprechende Unterstützung anboten. Erst hiermit war es dann in entsprechenden Fällen möglich, dass die Modi genutzt werden konnten.
Der Standard spielt heute jedoch noch unter Linux eine Rolle: Sind Open-Source-Grafikkartentreiber für bestimmte Grafikkarten nicht verfügbar, so können nur durch Verwendung eines Treibers, der die hier beschriebene Funktionalität nutzt, Auflösungen von mehr als 640×480 Pixel bei mehr als 256 Farben verwendet werden.
Entsprechender Standard spielt jedoch nur für die 2D-Darstellung eine Rolle. Standards zur 3D-Beschleunigung werden dadurch nicht abgedeckt bzw. definiert.
Liste der Modi
Modus
(hexadezimal)Auflösung
(Pixel×Pixel)Farbtiefe
(Bit)0x100 640×400 8 0x101 640×480 8 0x102 800×600 4 0x103 800×600 8 0x104 1.024×768 4 0x105 1.024×768 8 0x106 1.280×1.024 4 0x107 1.280×1.024 8 0x108 80×60 (Text) 4 0x109 132×25 (Text) 4 0x10A 132×43 (Text) 4 0x10B 132×50 (Text) 4 0x10C 132×60 (Text) 4 0x10D 320×200 15 0x10E 320×200 16 0x10F 320×200 24 Modus
(hexadezimal)Auflösung
(Pixel×Pixel)Farbtiefe
(Bit)0x110 640×480 15 0x111 640×480 16 0x112 640×480 24 0x113 800×600 15 0x114 800×600 16 0x115 800×600 24 0x116 1.024×768 15 0x117 1.024×768 16 0x118 1.024×768 24 0x119 1.280×1.024 15 0x11A 1.280×1.024 16 0x11B 1.280×1.024 24 0x11C 1.600×1.200 8 0x11D 1.600×1.200 15 0x11E 1.600×1.200 16 0x11F 1.600×1.200 24 Mit n Bit lassen sich 2n verschiedene Farben darstellen. Diese können hierbei aus einer Palette von 224 = 16.777.216 möglichen, verschiedenen Farben gewählt werden (siehe dazu: RGB-Farbraum).
Siehe auch
Weblinks
- VESA Webseite
- VESA BIOS Extension Standard 3 (PDF; 272 KB)
- Liste von Grafikchips, die VESA VBE 3.0 unterstützen (englisch)
Wikimedia Foundation.