VGA (Video Graphics Array) is a standard analog computer display, miniature D-pin 15-pin connector, first released by IBM in 1988 at 640×480 resolution.
VGA was the latest graphics standard offered by IBM to which most PC clone manufacturers comply, making it the minimum level supported by all Graphics Hardware before installing a particular device today. For example, the Microsoft Windows screen appears while the machine is running in VGA mode, so this screen always appears with low resolution and color depth.
It officially replaced IBM’s standard XGA, but it replaced many different extensions made by manufacturers known collectively as Super VGA.
In 1987, IBM introduced Display Hardware, known as VGA. Installed on IBM PS/2 computer series. While the PC is only marginally successful and will not soon provide a big market for IBM, VGA has become universal for many different PC manufacturers.
Although its true meaning is the Video Graphics Array, it is recognized as the Video Graphics Adapter because most of the different adapter types are compatible.
Despite the fact that it is still used on most computers, new species have become increasingly older.
Officially, it was replaced by XGA made by IBM. However, other companies started to create their own types, and therefore the updated version of IBM was replaced long before its release.
As you know, a VGA connector is a three-row 15-pin DE-15. It has four versions: Original, DDC2, the oldest and least flexible DE-9 and a Mini-VGA used for laptops.
The common 15-pin connector found on most Video cards, Computer Monitors and other devices are almost universally called HD-15. HD separates from connectors with the same density factor, but are only 2-row pins. However, this connector is often called the wrong DB-15 or HDB-15.
VGA connectors and associated cables are almost always used to carry only DDC2 digital clock and data video signals, as well as analog RGBHV components. In the case of size limitation, sometimes a mini-port may be available instead of the full-size VGA connector.
Since it was implemented as a single Chip from the beginning, EGA, called “Array”, was used instead of “adapter” because Motorola 6845 and MDA replaced the dozens of discrete logic chips covering the total length of the CGA and ISA card.
This also allows it to be placed directly on the PC motherboard with minimal hassle. The first IBM PS/2 models were equipped with VGA on the motherboard. VGA features are as follows:
256 KB Video RAM
Modes: 16 colors and 256 colors
262144 color palette values (6 bits for red, green and blue)
Selectable 25.2 MHz or 28.3 main clock
720 horizontal pixels maximum
480 lines maximum
Refresh rate up to 70 Hz
Blank vertical cut (Not all cards support)
Flat mode: maximum of 16 colors
Packed pixel mode: 256-color mode (13-hour mode)
Some bitmap operations
Support split screen
0.7 V peak to peak
75-ohm impedance (9.3mA – 6.5mW)
It supports all addressable point modes and alphanumeric text modes. Standard graphics modes:
640×480 in 16 colors
640×350 in 16 colors
320×200 in 16 colors
320×200 in 256 colors
Besides the standard modes, it can be configured to emulate any of its previous modes (EGA, CGA, and MDA).
Standard Text Modes
In standard alphanumeric text modes, and 80 × 25 or 40 × 25 text cell is used. Each cell can choose from 16 colors available for its foreground and 8 colors for the background; All 8 background colors are allowed without High-Density Bits. Each character can also flash and all those set to flash will flash together.
The vibration option for the entire screen can be changed with the ability to select the background color for each of the cells, from all 16 colors. All these options are the same as the CGA adapter offered by IBM.
Adapters usually support black and white and color text modes, but Monochrome mode is rarely used. They do this in almost all modern adapters in black and white, with gray text on a black background in color mode.
Monochrome monitors are primarily sold for text applications, but in most color modes it works properly with at least one VGA adapter.
Sometimes the faulty connection between a modern monitor and a Video Card causes the card to detect the monitor in monochrome, so the BIOS and initial boot order appear in Grayscale.
Usually, this detection is overloaded and the monitor turns color after the video card drivers are loaded. In color text mode, each character on the screen is actually represented by two Bytes.
The smallest is the real character for the current character set, and the top character or byte attribute is a bit field used to select different video attributes such as color, flickering, character set. This co-byte scheme is one of the features that VGA ultimately inherits from CGA.
The VGA color system is compatible with EGA and CGA adapters and adds another level of configuration on top. CGA was able to display up to 16 colors, and EGA expanded this by allowing each of the 16 colors to be selected from a 64 color palette.
VGA extends the capabilities of this system further by upgrading the EGA palette from 64 inputs to 256 inputs. In addition to the 8 “blank” inputs set in black, two blocks of more than 64 colors were gradually added with darker tones.
In addition to widening the palette, a random color value can be assigned to each of the 256 inputs via DAC VGA. The EGA BIOS allowed only 2 bits per channel to represent each input, while VGA allowed 6 bits to represent the density of each of the three primers (red, blue and green).
This achieved a total of 63 different levels of red, green and blue intensity, resulting in 262144 possible colors and 256 assignments to the palette. This method reminds how different pallet systems are combined by enabling new pallet systems to be used in EGA and CGA graphics modes.
For example, to set the colored text to very dark red in text mode, the text must be set to one of the CGA colors. This color is then matched to the individual EGA palette, in the case of CGA color 7, the EGA input is mapped to 42.
VGA DAC should be configured to change its 42 colors to dark red, and everything that appears in gray light (CGA 7 color) on the screen immediately turns to dark red. This feature is generally used in 256-color DOS games.
Supported CGA and EGA modes allow 16 colors to be displayed simultaneously, while other VGA modes such as the commonly used 13-hour mode allowed all 256 palette inputs to be displayed on the screen at the same time, in which 256 colors from the current 262144 colors can be displayed.
VGA Video memory is mapped to PC memory through a window between the 0xA000 and 0xC000 segments in the real-mode address space. Usually, these segments are:
0xA000 (64 KB) for EGA/VGA graphics modes
0xB000 (32 KB) for monochrome in text mode
0xB800 CGA modes supported for text mode color and graphics (32 KB)
Due to the use of different address assignments for different modes, it is possible to attach a monochrome display adapter and a color adapter such as VGA, EGA or CGA to the same machine.
In the early 1980s, this was used to display Lotus 1-2-3 spreadsheets in the high-resolution text on an MDA screen and associated graphics in low-resolution CGA on one screen at the same time.
Many programmers also use this service with a monochrome card that shows debug information when working in graphics mode on a program on another card. Various debuggers such as Borland Turbo Debugger, D86 (by J. Alan Cox) and Microsoft’s CodeView can run in dual monitor setup.
Either Turbo Debugger or CodeView can be used to debug in Windows. There are also DOS device drivers such as ox.sys, which implements a serial interface for simulation on the MDA screen, for example, it allows the user to receive debug error messages from Windows versions without using a real serial terminal.
It is also possible to use the “MONO MODE” command in DOS Command Prompt to direct output to the monochrome screen. In the absence of a Monochrome Display Adapter, additional address memory 0xB000 – 0xB7FF can be used for other programs, this memory can be used for programs that can be loaded into high memory.
An undocumented but popular technique has been dubbed Mode X (produced by Michael Abrash) to enable programming techniques and graphic resolutions that are not in the Mode 13h standard.
This was done by dividing 256 KB VGA memory into four planes, which will make all 256 KB VGA RAM available in 256-color color modes. Some graphics processes had extra compensation for complexity and performance loss, but in some cases, they were reduced more quickly by other processes:
Filling polygons with one color can be speeded up due to the ability to set four Pixels with a single write to the hardware.
The video adapter can help copy video RAM zones, which is sometimes faster than doing it with the slow CPU and VGA interface.
Several higher resolution modes are possible: in 16 colors, up to 704×528, 736×552, 768×576 and 800×600.
Software such as ColoRIX also supported many combinations of 256, 320 and 360-pixel columns, and 256 color modes using 200, 240, 256, 400 and 480 lines. However, 320×240 is the most known and most commonly used, because it is the typical 4: 3 image format with square pixel resolution.
Using multiple video pages on the hardware allows the developer to double buffering in all 16-color VGA modes, it was not possible to use the 13-hour mode.
Sometimes, the monitor’s refresh rate had to be reduced and eye strain increased to accommodate these modes. They are also incompatible with some older monitors that cause display problems such as missing image detail, flickering, vertical and horizontal scrolling, and lack of synchronization due to the model being tried.
For this reason, most VGA settings used in commercial products are limited to monitor safe combinations such as 320×240, 320×400 and 360×480.