HOME

TheInfoList



OR:

VESA BIOS Extensions (VBE) is a
VESA VESA (), formally known as Video Electronics Standards Association, is an American technical standards organization for computer display standards. The organization was incorporated in California in July 1989To retrieve the information, searc ...
standard, currently at version 3, that defines the interface that can be used by software to access compliant video boards at high resolutions and bit depths. This is opposed to the "traditional" int 10h
BIOS In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the b ...
calls, which are limited to resolutions of 640×480
pixel In digital imaging, a pixel (abbreviated px), pel, or picture element is the smallest addressable element in a raster image, or the smallest point in an all points addressable display device. In most digital display devices, pixels are the ...
s with 16 color (4-bit) depth or less. VBE is made available through the video card's BIOS, which installs during
boot up In computing, booting is the process of starting a computer as initiated via hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its main memory, so s ...
some
interrupt In digital computers, an interrupt (sometimes referred to as a trap) is a request for the processor to ''interrupt'' currently executing code (when permitted), so that the event can be processed in a timely manner. If the request is accepted, ...
vectors that point to itself. Most newer cards implement the more capable VBE 3.0 standard. Older versions of VBE provide only a
real mode Real mode, also called real address mode, is an operating mode of all x86-compatible CPUs. The mode gets its name from the fact that addresses in real mode always correspond to real locations in memory. Real mode is characterized by a 20- bit ...
interface, which cannot be used without a significant performance penalty from within
protected mode In computing, protected mode, also called protected virtual address mode, is an operational mode of x86-compatible central processing units (CPUs). It allows system software to use features such as virtual memory, paging and safe multi-taskin ...
operating systems. Consequently, the VBE standard has almost never been used for writing a video card's drivers; each vendor has thus had to invent a
proprietary protocol In telecommunications, a proprietary protocol is a communications protocol owned by a single organization or individual. Intellectual property rights and enforcement Ownership by a single organization gives the owner the ability to place restric ...
for communicating with its own video card. Despite this, it is common that a driver
thunk In computer programming, a thunk is a subroutine used to inject a calculation into another subroutine. Thunks are primarily used to delay a calculation until its result is needed, or to insert operations at the beginning or end of the other sub ...
out to the real mode interrupt in order to initialize screen modes and gain direct access to a card's linear frame buffer, because these tasks would otherwise require handling many hundreds of proprietary variations that exist from card to card. In EFI 1.x systems, the INT 10H and the VESA BIOS Extensions (VBE) are replaced by the EFI UGA protocol. In widely used
UEFI UEFI (Unified Extensible Firmware Interface) is a set of specifications written by the UEFI Forum. They define the architecture of the platform firmware used for booting and its interface for interaction with the operating system. Examples ...
2.x systems, the INT 10H and the VBE are replaced by the UEFI GOP.


Standards


Early VBE

VBE 1.0 (VS891001) was defined in 1989. VBE 1.1 (VS900602) was defined in 1990. VBE 1.2 (VS911022) was defined in 1991. These versions of VBE require real mode to work. VBE defines several new functions called through INT 10H. The function numbering start with AX=4F00, or (AH=4F, AL=00), for ''Function 00h''. 00h to 05h were defined in VBE 1.0, 06h and 07h in 1.1, and 08h in 1.2.


VESA BIOS Extensions (VBE core) 2.0 (November 1994)

This standard provides the primary functionality of the VESA BIOS Extensions. It allows applications to determine the capabilities of the
graphics card A graphics card (also called a video card, display card, graphics adapter, VGA card/VGA, video adapter, display adapter, or mistakenly GPU) is an expansion card which generates a feed of output images to a display device, such as a computer mo ...
and provides the ability to set the display modes that are found. VBE 2.0 adds some new features above the prior VBE 1.2 standard including linear
framebuffer A framebuffer (frame buffer, or sometimes framestore) is a portion of random-access memory (RAM) containing a bitmap that drives a video display. It is a memory buffer containing data representing all the pixels in a complete video frame. Mode ...
access and
protected mode In computing, protected mode, also called protected virtual address mode, is an operational mode of x86-compatible central processing units (CPUs). It allows system software to use features such as virtual memory, paging and safe multi-taskin ...
banking. Some of the VBE Core 2.0 features include: ; Linear framebuffer access: Enables direct framebuffer access in protected mode as one large area of memory instead of less efficient smaller chunks. ; Protected mode banking: Allows access to the framebuffer from protected mode without "thunking" down to
real mode Real mode, also called real address mode, is an operating mode of all x86-compatible CPUs. The mode gets its name from the fact that addresses in real mode always correspond to real locations in memory. Real mode is characterized by a 20- bit ...
. This is implemented using a new ''Function 0Ah''. ; Super VGA page flipping: Allows higher performance animation to provide for smooth animation for computer games and other high performance graphics programs. ; Super VGA virtual screens: Allows software to set up virtual
display resolution The display resolution or display modes of a digital television, computer monitor or display device is the number of distinct pixels in each dimension that can be displayed. It can be an ambiguous term especially as the displayed resolution ...
s, larger than the actual displayed resolution, and smoothly scroll or pan around the larger image. ; High Color and TrueColor modes: Industry standard 16-bit and 24-bit graphics modes for resolutions from 320×200 up to ×.


VESA BIOS Extensions (VBE core) 3.0 (September 1998)

A superset of the VBE 2.0 standard. This standard adds refresh rate control, facilities for stereo glasses, improved multi-buffering and other functions to the VBE 2.0 standard. ; Triple buffering: Allows high speed applications to perform multi-buffering with less screen flickering and without having to wait for the graphics controller. ; Refresh rate control using GTF timings: This allows applications and operating system utilities to change the refresh rate in a standard way on all VBE 3.0 graphics controllers. Important for stereo applications, since when stereo is enabled, the user's effective refresh rate is cut in half. ; Stereo page flipping: When viewing an application using stereo
glasses Glasses, also known as eyeglasses or spectacles, are vision eyewear, with lenses (clear or tinted) mounted in a frame that holds them in front of a person's eyes, typically utilizing a bridge over the nose and hinged arms (known as temples ...
, software needs to page flip twice as often as normal, because it needs to generate separate images for each eye. This new feature allows stereo compatible software to display properly. ; Hardware stereo sync: Allows stereo software to determine if there is a connector for stereo glasses on the user's graphics card. A new "Protected Mode Entry Point" was added as an alternative to ''Function 0Ah''.


VBE/accelerator functions (VBE/AF) (August 1996)

VBE/AF provides a low-level, standard interface to common acceleration functions available on most hardware. Some of the functions defined in the standard are access to hardware cursors, Bit Block Transfers (Bit Blt), off screen sprites, hardware panning, drawing and other functions. It is defined to work under 32-bit protected mode.


Supplemental specifications

Supplemental specifications provides device independent interface between application software and Super VGA hardware. Function numbers are assigned by VESA Software Standards Committee (SSC).


Power management extensions (PM)

DPMS is a hardware standard that allows graphics cards to communicate with DPMS-compliant
monitor Monitor or monitor may refer to: Places * Monitor, Alberta * Monitor, Indiana, town in the United States * Monitor, Kentucky * Monitor, Oregon, unincorporated community in the United States * Monitor, Washington * Monitor, Logan County, West ...
s via a special signaling system that can be used with existing graphics controllers and monitor cables. This signaling system allows the graphics card to tell the monitor to go into a number of different power management or power saving states, which effectively allow the monitor to turn itself off when it is not in use.


Flat panel interface extensions (FP)

Allows access to special features in flat panel controllers.


Audio interface extensions (AI)

Provides standard to audio services. Currently (version 1.00), the VBE/AI specification defines three device classes: WAVE, MIDI, and VOLUME. Device types not covered: ; CDROM control: which is covered by the Microsoft's CD-ROM Extensions. ; Effects processors: This class of device will be expanded in future version of the VBE/AI specification.


OEM extensions

Provides standard entry to vendor-specific extensions.


Display Data Channel (DDC)

The Display Data Channel or DDC is a digital connection between a
computer display A computer monitor is an output device that displays information in pictorial or textual form. A discrete monitor comprises a visual display, support electronics, power supply, housing, electrical connectors, and external user controls. The ...
and a graphics adapter that allows the display to communicate its specifications to the adapter. The standard was created by
VESA VESA (), formally known as Video Electronics Standards Association, is an American technical standards organization for computer display standards. The organization was incorporated in California in July 1989To retrieve the information, searc ...
.


Serial Control Interface (SCI)

Provides hardware independent means for operating system and application to read and write data over
I²C I2C (Inter-Integrated Circuit, ), alternatively known as I2C or IIC, is a synchronous, multi-controller/multi-target (master/slave), packet switched, single-ended, serial communication bus invented in 1982 by Philips Semiconductors. It is wid ...
serial control interface.


VBE mode numbers

Although mode number is a 16-bit value, the optional VBE mode numbers are 14 bits wide. Bit 15 is used by VGA BIOS as a flag to clear or preserve display memory. VBE defined mode numbers as follows: Starting in VBE/Core 2.0, VESA no longer defines new VESA mode numbers and no longer requires a device to implement the old numbers. To properly detect information of a screen mode, use ''Function 01h - Return VBE Mode Information''. Mode 81FFh is a special video mode designed to preserve current memory contents and give access to the entire video memory.


Modes defined by VESA

Beginning with the VBE 2.0 standard, no new modes will be defined by VESA, and old modes are no longer mandatory. The use of defined modes should be considered deprecated: modern video cards may or may not use these mode numbers (even though most do for backward compatibility), and modern software should not use them. The correct way for software to discover available display modes is to obtain a list of modes (using "Function 00h - Return VBE Controller Information") and then to check each mode (using "Function 01h: Return VBE Mode Information") until it finds the mode/s it requires. Modes 264–268 are text modes. 264 (0108h) is 80 columns × 60 rows (80×60), 265 (0109h) is 132×25, 266 (010Ah) is 132×43, 267 (010Bh) is 132×50 and 268 (010Ch) is 132×60.


Other commonly available graphics modes

The table below combines the modes defined by VESA (the values denoted in black) along with modes commonly used, but which may not work on all graphics cards as they are not defined by any standard ().


Mode detection

A few tools have been written to detect VBE modes available on a system. They generally work by invoking ''Function 01h'', which is more reliable than assuming a table of extented modes as it's part of the device's self-documentation. * hwinfo is the hardware detection tool used in SuSE Linux and in some other
Linux distribution A Linux distribution (often abbreviated as distro) is an operating system made from a software collection that includes the Linux kernel and, often, a package management system. Linux users usually obtain their operating system by downloading one ...
s. Running hwinfo --framebuffer reports graphics information, including VESA modes on a "Mode" line. * mdt is a Linux or
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
tool that uses VESA BIOS functions to read monitor data. * The Linux Real Mode Interface (LRMI) has a program that prints out VESA info. *
SciTech Software SciTech Software, Inc. was a privately held software company based in Chico, California. Founded by Kendall Bennett in 1996, SciTech Software, Inc. developed many popular graphics Graphics () are visual perception, visual images or designs ...
had a unrelated for DOS that dates back to 1994. * The x86 "PC" version GNU GRUB 2 has a command for printing out available video modes and for trying a specific mode. They use a built-in table instead of ''Function 01h''. For other platforms, including x86 EFI, they are replaced by the more generic and .


Linux video mode numbers

The
Linux kernel The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
allows the user to select the VESA mode at boot time by passing a code in memory to the kernel. The LILO boot loader passes this code based on a "vga" parameter in its configuration file. It takes the form 'vga=XXX', where XXX is the decimal value, or 'vga=0xHHH', where HHH is the hexadecimal value. However, the 'vga=' boot loader parameter does not directly accept VESA video mode numbers; rather, the Linux video mode number is the VESA number plus 512 (in the case of the decimal representation) or plus 0x200 (in the case of the hexadecimal representation). For example, the defined VESA value of 257 (0x101), representing 640x480 and 256 colours, has an equivalent Linux video mode value of 769 (0x301).See the kernel documentation i
Documentation/svga.txt
an
Documentation/fb/vesafb.txt
As indicated earlier, the VESA standard defines a limited set of modes; in particular, none above × are covered and, instead, their implementation is completely optional for graphics adapter manufacturers. As vendors are free to utilize whatever additional values they please, this means that, in the table below, the modes (and expressed in decimal form) may not apply to your graphics adapter! 1:
32-bit In computer architecture, 32-bit computing refers to computer systems with a processor, memory, and other major system components that operate on data in 32- bit units. Compared to smaller bit widths, 32-bit computers can perform large calculati ...
is really (8:8:8:8), but the final 8-bit number is an "empty" alpha channel. It is otherwise equal to 24-bit color. Many GPUs use 32-bit color mode instead of 24-bit mode merely for faster video memory access through 32-bit memory alignment.
vga= also appears to select ×800 (8-bit) for various laptops' displays.
vga= is ×


Modes available in Parallels

The VESA BIOS emulation in the Parallels virtual machine has a different set of non-standard VESA modes. As of build 3214, LRMI vbetest reveals these modes:


See also

*
nouveau (software) nouveau () is a free and open-source graphics device driver for Nvidia video cards and the Tegra family of SoCs written by independent software engineers, with minor help from Nvidia employees. The project's goal is to create an open source ...
*
UniVBE UniVBE (short for ''Universal VESA BIOS Extensions'') is a software driver that allows DOS applications written to the VESA BIOS standard to run on almost any display device made in the last 15 years or so. The UniVBE driver was written by SciTe ...


References


Further reading


VESA Super VGA BIOS Extension 1.0
(Standard # VS891001) 1 October 1989
VESA BIOS Extension 1.2

VESA BIOS Extension 2.0

VESA BIOS Extension 3.0

Dr. Dobb's Examining the VESA VBE 2.0 Specification

How To Use Super VGA (VESA 1.x Non-Linear)
* *
VESA BIOS interface


External links


SuperVGA/VESA programmer's notes

List of VESA VBE 2.0/3.0 implementing chipsets

Capture VBE mode info vbespy source package

How to use vbespy source package

The VBETOOL
- an (meanwhile archived) application for executing video card BIOS code {{DEFAULTSORT:Vesa Bios Extensions BIOS
BIOS In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the b ...