Video Graphics Array

Video Graphics Array (short: VGA ) is a computer graphics standard, the specific combinations of image resolution and number of colors ( color bit depth) as well as repeat.

VGA was, in contrast to his predecessors, EGA and CGA, beginning as a one-inch - processor for easy integration designed to motherboards and thus not planned as a separate "adapter". An immediate precursor was the Multi -Color Graphics Array ( MCGA ) called onboard graphics of the IBM PS / 2 Model 30 This was only equipped with 64 KB of video memory, which, although the most popular games in 256 -color mode allowed ( which is therefore often was also called " MCGA mode " ), but the typical VGA video resolution of 640 × 480 pixels monochrome only could represent (1 bit per pixel). Also, the MCGA lacked compatibility with the EGA card.

Since all modern graphics cards are still compatible with IBM VGA, use modern operating systems nor the VGA graphics mode, such as during installation or if not installed the graphics card suitable driver.

  • 2.1 Flexibility of the VGA connector
  • 3.1 Color Palettes
  • 3.2 Text Mode
  • 3.3 video BIOS
  • 4.1 Development
  • 4.2 Today's importance

Features a VGA-compatible graphics card

Basic skills

  • (at least) 256 KB internal memory
  • Write registers can be read back ( the EGA card lacked this property, which made a back up of the state of the graphics card impossible)
  • Supports all standard CGA and EGA graphics and text modes
  • Graphics mode 640 × 480 pixels with 2 or 16 colors
  • Graphics mode 320 × 200 pixels with 4, 16 or 256 colors
  • All ( max. 256 ) Colors selectable from a color palette of 23 × 6 = 262144 colors
  • Video resolution up to 720 × 400 in text mode,
  • ROM fonts in code page 437 with 8, 14 and 16 pixel rows per character, 8 and 9 pixel columns per character.
  • User-definable fonts with 256 or 512 characters and 1 to 32 pixels per line characters

Hardware level

  • VGA connection over analog RGB signal components (unlike EGA, similar to the PGC), which allows ( depending on the card or signal source) in principle, the representation of an infinite number of colors and intermediate gradations in conjunction with a small amount of circuitry on a CRT monitor. However, the image quality is strongly influenced by circuit design and component quality of the card and the subsequent transfer cable to the picture tube dependent.

Resolution

Frequently used graphics modes are:

  • 320 × 200 pixels, 256 colors (8 bit, 64 kB linear, very popular for games)
  • 320 × 200 pixels, 16 colors (4 bits)
  • 640 × 200 pixels, 16 colors
  • 640 × 350 pixels, 16 colors (see Enhanced Graphics Adapter ( EGA ) )
  • 640 × 480 pixels, 16 colors ( square pixels, 1 bit per pixel color tarpaulin, 4 plan for 16 colors)

As text modes mainly 80 × 25 characters (16 lines of pixels per character) and 80 × 50 characters are used (8 pixel rows per character), both with an underlying image resolution of 720 × 400 pixels.

Flexibility of the VGA connector

The image resolution and parameters of image output via the classic VGA port can be set quite free. Nevertheless, TV tube devices can not in principle on a standard VGA card operate (no CSync = requires additional electronics, some other level = requires additional electronics, no interlaced = only 240 .. 288 lines representation possible)

However, suitable for traditional analog VGA CRT monitors are the following variants:

  • Pixel frequency: 28.322 MHz or 25.175 MHz. halved.
  • Line frequency: 31.4688 kHz is the default value. Exactly 80 % of the line time is used for image display.
  • Full-screen display.
  • 70.08 frames / s visible at most 400 visible lines or 59.94 frames / s with a maximum of 480 lines The number of visible lines can be reduced to 350 rows. The monitor has been transmitted by the change in the polarity of the sync signals ( hsync - vsync ). Used for EGA simulation.
  • Another way to reduce the resolution is to double the display of lines - from 480 lines are 240 or 400 lines, 200 lines. Used for CGA simulation.
  • This can be halved to 320 or 360 pixels.
  • In 256 color mode, the pixel clock is also always halved.
  • 64K x 32 bit, extended map 128 K x 32 bit
  • Graphing Read all 8 cycles of a 32 bit word. Modes with up to 16 colors generate from 8 pixels. 256-color modes 4 pixels.
  • In text modes is a second access for reading out the character representation to do so.

The progress of the VGA connector was the analog transmission of the signal to the monitor. That is, we overcame the shortcoming of the CGA connection or EGA port, the ( at SW: 3 or 4 gray levels ) in principle only 16 or 64 colors could transfer. VGA connections could theoretically any display many colors, standard VGA cards have used 262144 of them.

It was not until a decade later, the analog transmission has emerged as a shortcoming. For TFT displays with individually controllable pixels leads at high resolutions (at least at 1600x1200 pixels ) to blur and restlessness ( moire ) in the image. The successors are called DVI -D, HDMI and DisplayPort. HDMI is an evolution of DVI; HDMI signals are backward-compatible with DVI.

Compatibility with MDA, CGA and EGA cards

VGA was largely backward compatible to all previous IBM graphics cards for PCs; when accessed through the BIOS compatibility was very high, but even in direct register programming, most programs have continued to function. Specifically, the user no longer between color capability (CGA, EGA ) and high quality text ( MDA) had to choose. For both VGA monochrome ( usually white ) and color monitors were offered from the start.

Color Palettes

CGA offered 16 fixed colors. EGA kept the CGA compatibility and still allowed 64 colors in all modes by the 16 color numbers of the CGA were interpreted as a pointer to a so-called range, a table with 16 entries; the entries of the palette then contained the EGA color numbers in the range 0 to 63 at the start of the system there color numbers were entered, which offered the same color impression as the 16 CGA colors; Programs, who knew the EGA standard, but the entries could change. Thus, while were still only 16 colors can be displayed simultaneously, but out of a total of 64 colors.

VGA graphics cards support 262,144 possible colors. For VGA cards, the mentioned range with 16 entries also exists - the values ​​contained in the range 0 to 63 are in contrast to EGA but not directly as a color numbers, but again as a pointer to the first 64 entries of another table interpreted. These VGA color palette has now 256 entries in the range of 0 to 262143rd Again, at the start in the first 64 entries such VGA colors added that the 64 EGA colors visually identical but of programs that know VGA, changed can. By this two-step process all VGA colors can be displayed in the CGA and EGA -compatible modes of VGA, but still only 16 of them simultaneously. In the 256- color graphics mode, the data in the display memory are, however, directly interpreted as a pointer to the 256 entry table and the 16- entries table is not used.

Some CGA -compatible modes VGA even used a three-level range, as well as the CGA card in these modes had already used one, but not freely selectable range of 2 or 4 out of 16 colors.

Text mode

VGA graphics cards provide the text mode with 720 pixels per line is, as has been the MDA card, but unlike CGA and EGA, use the 640 points. Each of the 80 characters per line was widened compared to CGA / EGA by one pixel to 9 pixels, so that the character spacing and hence the readability increases. As in the character memory but still only eight columns were stored, the 9 pixels was either left blank or generated by repeating the 8 pixels. The decision is made according to the number of character codes - the characters 0xC0 to 0xDF containing in codepage 437 block graphic characters with connection to the right, use the repeat of the 8th pixel in the other, the 9th column is always empty. A result, the typical vertical stripes with some programs (such as Turbo Pascal version 6 ) that fill the background with gray characters result. For the use of other code pages that contain the positions 0xC0 to 0xDF ordinary printing characters, the repetition of the 8 pixel can also be switched off completely ( this option was in the MDA, the code page was immutable set to the 437, not yet ).

As with the EGA card, bit 3 of the attribute byte controls the selection of two character sets. Thus, it is possible with custom fonts to represent up to 512 different characters at once in text mode.

The built-in character generator supports user-defined character sets that can be from 1 to 32 pixels high. While the usual custom character sets use the common character sizes of 8 × 8, 8 × 14 or 8 × 16 pixels, are also smaller fonts that would allow some 5 pixels high mark up to 96 character lines, but they are hardly legible.

With 1 or 2 pixels high " writings" can be in text mode ( pseudo) achieve graphical effects which have been however, rarely used in the heyday of graphic gimmicks under DOS, since in the text mode, there are only 16 colors available and the 256 - color graphics modes enabled clearly better effects.

Video BIOS

Like the EGA cards also use VGA cards own video BIOS to make the VGA and EGA graphics capabilities of the adapter for user programs available, without having to perform complicated register programming itself. This is necessary because the system BIOS of a PC usually only MDA and CGA supported. As with SCSI controllers and network adapters with Boot ROM is the machine code in the space reserved for additional card address space of the processor 640-960 kibibyte, the so-called conventional memory appears. Here, the programs can then access the VGA ( and EGA ) routines of the graphics card. Partly also graphics routines of the system BIOS will be redirected to custom code the graphics card to ensure compatibility with older programs.

History

Development

Today's graphic cards for IBM-compatible PCs are often at least partially compatible with VGA. From 1981 to about 1990, IBM set the standards of this architecture, as well as for video cards. Due to the capabilities and architecture of his time most popular operating system DOS ( requires only text mode, no multitasking capability) it was then necessary, therefore, that peripherals and expansion cards had to be physically compatible with the respective current industry standard, as the software the expansion card or peripheral component programmed directly. Over time, however, the problem arose that the color depths and resolutions and their control were defined only up to the standard VGA. With the onset of triumph of the PC in the late 1980s the number of manufacturers for PC graphics solutions on the market rose sharply, and the price of graphics cards fell. IBM lost its market and standardization of power. To stand out from the competition began, many manufacturers (eg Genoa Systems, Trident Microsystems, Hercules, and more. ), The VGA standard with their own developments (or VGA BIOS extensions) to expand. Thus provided with the time, most graphics cards the opportunity to resolutions up to 1024 × 768 or higher in high or true color display. Also first features have been implemented to speed it up with the advent of graphical user interfaces such as Windows, such as drawing and filling rectangles and surfaces in hardware by the graphics card. However, all these extended, beyond VGA functions were not standardized and differ in part depending on the graphics card. Therefore, it was first necessary any software that would use these functions, their own graphics card driver to bring (Example: MS Flight Simulator 5.0). For critical applications such as Windows 3.1, partly AutoCAD, but were also provided by the graphics chip manufacturer driver. Especially with cheap non-standard graphics cards but this was not always the case, and therefore the software under DOS usually limited to VGA.

Games to 1995 are therefore mostly available on the 320 × 200 × 8 VGA mode restricted (Mode 13h). Examples are 1 Doom, Wolfenstein 3D or Worms. To this day, is often the VGA driver, the only available if there is no hardware-specific display driver has been installed yet.

In order to unify higher resolutions and their programming, the early 1990s were normalized by the VESA resolutions up to 1280 × 960 in 256 colors and their BIOS APIs. This VESA extensions were then also rapidly taken up by the graphics chip manufacturers and entered into the VGA BIOSes. The VESA extensions appeared in several versions, has upgraded to version 3.0. The VGA BIOS chips were mostly implemented as ROM, so that can not be the graphics cards themselves upgrading to a new VESA BIOS version. Through the use of TSR programs, which to some extent serve as " VESA wrapper", can be under new DOS VESA extensions use on systems which have incompatible graphics card via a correspondingly powerful, but at the required VESA version. These TSRs provide the VESA extension routines are available and translate them for the graphics card. In addition to vendor-specific wrappers are also Universalwrapper as UNIVESA.EXE or UNIVBE.EXE. These were often used to retrofit the VESA enhancements in version 2.0 on systems that only support their graphics cards VESA 1.0. Only in the mid 1990s, that are compatible with the VESA extensions graphics cards had prevailed to the extent that they have been increasingly supported by the game manufacturers. It was also with the appearance of the first Pentium processors in the mass market enough computing power available in order to achieve a smooth graphics representation in complex DOS games like Wing Commander 3 or The Need for Speed ​​in the VESA modes, even with wrapper can. In the shareware scene, however, was for some time on the mode 13h (320 × 200, 256 colors) set, because a screen almost exactly 64 KB needed. This is common in many low-cost real-mode compilers such as Turbo Pascal, the maximum allowable size for memory data structures; Mode 13h screen pages are therefore relatively easy to handle in such compilers. Despite the VESA extensions a standard VGA driver is supported on Windows today established as long as no vendor-specific driver is available, in contrast for example to Linux and BSD.

In the second half of the 1990s, put Windows 95 and 98 through increasingly. Windows 95 and its successors offer with DirectX and OpenGL operating system interfaces that enable applications to be able to address defined functions of graphics cards. Windows are there standardized function calls immediately to the graphics driver on, which converts them into commands for the graphics card. Thus, most of the features of a graphics card from Windows for all types of programs are uniformly responsive. A compatible to a certain standard hardware graphics BIOS is in principle not necessary under Windows. A direct programming of the graphics card as DOS under Windows is not possible anyway, because Windows is multitasking and for the user interface itself does not require the graphics card. To avoid possible conflicts by simultaneous accesses from different programs, hardware access therefore run on Windows basically coordinated through the operating system and its device driver. The DirectX drivers enable in contrast to the video BIOS complex functions and speak the chip usually directly via its registers. The upgrade of functions is greatly facilitated by the abandonment of the routines of quite rigid VGA Grafikbios. DirectX drivers enable in contrast to the video BIOS complex functions. The control of the graphics card is mainly through the Windows driver. The more elaborate graphics programming is simplified because the abstraction level is higher and, for example, an essential part of the representation of a virtual world, in contrast to earlier can be adopted by graphics driver and graphics card. This opens up numerous opportunities to accelerate the graphic representation by certain circuits in the graphics chip. The platform portability is facilitated by the high degree of abstraction. However, this also increases the complexity of the graphics chip and the graphics driver. The comparatively simple graphics chips, which so far more than some acceleration features for graphical user interfaces possessed (eg filling of rectangles, drawing lines by the hardware ), were three-dimensional with the wide availability of Windows 95 ff and Direct3D to highly complex graphics processor with capabilities to accelerate the representation worlds developed. Numerous well-known graphics chip manufacturers in the 1990s, could not keep pace with this development and have disappeared from the market.

Due to the high age of the VGA standard and the associated limitations of the design, it is a concern of different manufacturers such as Intel or ATI to replace the VGA standard by the UGA (Universal Graphics Adapter ). After all, the VGA card in the mid 1980s for the ISA bus has been developed, which is just a difficulty for modern operating systems, since VGA thus the achievements of the protected memory model ( protected mode ) is incompatible.

The stated aim of the promoters of UGA is to raise the graphical minimum performance of 640 × 480 × 4 to 800 × 600 × 32 to simplify the memory model of the graphics card ( through 32 -bit access and the abolition of the pallets and the text-mode ) and to provide a platform- independent access to the graphics card via EFI driver available. Critical, platform-dependent code should be reduced. EFI drivers are not a substitute for operating system - specific drivers, with EFI and UGA is the access to the graphics card but be adapted to the operating system design.

According to the plans of AMD, Intel, LG and other computer and screen manufacturers, should no longer be made ​​to the VGA as well as the LVDS port by the year 2015. In its place, the digital outputs DisplayPort or HDMI to be installed.

Today's meaning

Regardless of the original variety of resolutions is " VGA resolution " today, such as specifications for displays or smart phones, mostly for the resolution of 640 × 480 pixels, while most higher pixel depth or color resolution is used (up to 32 bits), originally were not available.

From the VGA resolution of 640 × 480 pixels, further formats are derived for example from PDAs. A listing can be found under graphics mode # image resolution.

560242
de