Enhanced Graphics Adapter
| Company type | Computer hardware standard |
|---|---|
| Industry | Computer graphics |
| Predecessor | Color Graphics Adapter (CGA) |
| Founded | 1984 |
| Successor | Video Graphics Array (VGA) |
Area served | IBM PC compatible computers |
| Products | Graphics cards, display adapters |
The Enhanced Graphics Adapter (EGA) is a graphics card compatible with the IBM PC and served as the de facto computer display standard starting in 1984, succeeding the earlier CGA standard introduced with the original IBM PC. This technology was later overtaken by the VGA standard in 1987. Alongside IBM’s official EGA card, numerous third-party manufacturers produced compatible adapters, with EGA display modes also supported by VGA and subsequent graphics standards.
History
IBM launched the EGA in October 1984, shortly after releasing the PC/AT. Although designed for the new PC/AT, it could also be installed on earlier IBM PC models, provided the mainboard's ROM was updated.
In September 1985, Chips and Technologies introduced its inaugural product: a four-chip EGA chipset that integrated the functions of 19 proprietary IBM chips. By the time of November’s COMDEX, more than six companies had announced EGA-compatible boards based on C&T’s chipset. The first of these was Vega, released by Video Seven in December 1985, notable for being only half as long as IBM’s original EGA board.
From 1984 through 1987, multiple manufacturers offered compatible cards such as the Autoswitch EGA and Genoa Systems’ Super EGA chipset. Later iterations that supported extended VGA capabilities were marketed as Super VGA.
The introduction of MCGA and VGA standards alongside IBM’s PS/2 line in 1987 rendered the EGA standard obsolete.
Adoption
By 1985, InfoWorld had identified EGA as the "next graphics standard," though it reported "sluggish sales" attributed to its high price and limited software support. The publication suggested that EGA's complexity delayed widespread adoption by software developers. Nevertheless, commercial software began incorporating EGA support soon after its launch in 1984, including titles such as The Ancient Art of War, Microsoft Flight Simulator v2.12, Jet, Silent Service, and Cyrus, all available by 1985, along with Windows 1.0. Sierra's King's Quest III (1986) was among the early mainstream PC games to utilize EGA graphics.
The emergence of clone boards in late 1985 helped reduce the cost of EGA hardware. By 1987, support for EGA had become widespread. Most software released through 1991 accommodated EGA; however, many commercial games continued using modes with 16 colors to maintain backward compatibility with CGA and Tandy systems, catering to users lacking enhanced EGA monitors. Higher-resolution modes featuring 350 lines were predominantly employed by freeware/shareware and productivity applications; notable exceptions included titles like SimCity, which operated in a similar mode with 16 colors. Contemporary adventure games such as The Crimson Diamond utilize freeware platforms like Adventure Game Studio to produce titles featuring EGA-style color palettes alongside modern functionalities.
Hardware architecture
The initial IBM EGA was designed as an 8-bit PC ISA expansion card, equipped with 64 KB of onboard RAM. An optional add-on, the Graphics Memory Expansion Card daughterboard, could increase memory by at least 64 KB, with further expansion up to 192 KB achievable through the Graphics Memory Module Kit. Without these enhancements, the card’s color display was confined to four colors when operating in the 640 × 350 resolution mode.
Video output was delivered via direct-drive RGB, akin to CGA, but it lacked composite video output capabilities. The card supported not only MDA and CGA monitors but also specialized enhanced color monitors engineered specifically for EGA.
Monitors tailored for EGA employed a dual-sync mechanism, alternating between 15.7 kHz for 200-line display modes and 21.8 kHz for 350-line modes.[1]
Numerous EGA cards incorporated DIP switches to select the monitor type: CGA mode operated at a 200-line resolution with text characters sized 8×8 pixels, whereas EGA mode utilized a 350-line resolution with 8×14 pixel text characters.
Third-party manufacturers frequently supplied their EGA cards with either the full 128 KB of RAM or expanded memory up to 256 KB, enabling support for multiple graphics pages, extensive text-mode character sets, and large scrolling displays. Certain models, such as the ATI Technologies EGA Wonder, enhanced standard features by offering higher graphics resolutions and automatic detection of connected monitors.
Functional features
EGA provides the capability to display up to 16 colors chosen from a fixed palette or from a selectable range of 64 colors (6-bit RGB), supporting screen resolutions as high as 640 × 350 pixels along with two additional monochrome modes featuring higher resolutions. The EGA cards include onboard ROM that expands system BIOS graphics functions and are built around a dedicated CRT controller (CRTC) customized for their operation.
The IBM EGA CRTC supports all IBM MDA and CGA adapter modes through specific configuration options but is not entirely register-compatible with the Motorola MC6845, which can lead to discrepancies in software that directly manipulates these registers.
Available resolutions span from 320 × 200 and 640 × 200 (compatible with CGA or EGA monitors), to 720 × 350 and 640 × 350 (for MDA monitors), as well as 320 × 350 and 640 × 350 on dedicated EGA monitors. The scanning frequency is set at 21.8 kHz for modes with 350 lines and at 15.7 kHz for those with 200 lines, both maintaining a vertical refresh rate of 60 Hz.
In its advanced high-resolution mode of 640 × 350, which requires an EGA-specific monitor, up to sixteen colors can be selected from a palette consisting of sixty-four hues, generated by combining two bits per pixel across red, green, and blue components. Cards equipped solely with 64 KB of video RAM restrict color selection to four per pixel. The modes at 640 × 200 and 320 × 200 maintain backward compatibility with existing CGA software and hardware while allowing utilization of the entire sixteen-color CGA palette simultaneously—exceeding the typical four-color limitation found in those modes on standard CGA systems.
EGA’s sixteen-color graphics modes employ bit planes along with masking registers, combined with CPU-based bitwise operations to accelerate graphics rendering—a method subsequently adopted by the later VGA.
Modes
EGA provides support for the following display configurations:
- 16 colors selected from a 64-color palette with 6-bit depth, featuring a pixel aspect ratio of 1:1.37.
- 2 color mode, maintaining the same pixel aspect ratio of 1:1.37.
- 16 colors with a pixel aspect ratio altered to 1:2.4.
- 16 colors with a pixel aspect ratio adjusted to 1:1.2.
Text display options include:
- Using an 8×14 pixel font, resulting in an effective resolution of .
- Utilizing an 8×8 pixel font, yielding an effective resolution of .
- Employing an 8×16 pixel font, providing an effective resolution of .
- Applying a 9×16 pixel font, with an effective resolution of .
Additional graphics modes are available through third-party expansion boards, such as:
Color palette
EGA allows all 16 CGA colors to be displayed simultaneously, each color derived from a larger set of 64 possible hues (with two bits allocated per red, green, and blue channels). This includes the CGA’s alternate brown shade without requiring extra hardware. Later VGA technology expanded this capability by enabling selection from a customizable palette containing 256 colors.
Standard EGA monitors are unable to fully utilize the extended palette in 200-line modes because certain pins are shared with CGA compatibility signals, limiting complete color differentiation. However, some switchable EGA monitors can access the entire palette in these modes via manual switches. A limited number of commercial titles, like the DOS edition of Super Off Road, made use of the extended palette in either or modes.
Colors are chosen by assigning two bits per RGB channel, allowing intensity levels ranging from 0 to 3. For instance, magenta is created by combining medium intensity red and blue (level 2) while green remains off (level 0).
The table below illustrates the default EGA 16-color palette aligned with CGA colors, including binary rgbRGB values and their corresponding hexadecimal web color codes.
| Index | Palette number | Color name | rgbRGB binary | Hex code |
|---|---|---|---|---|
| 0 | 0 | Black | 000000 | #000000 |
| 1 | 1 | Blue | 000001 | #0000AA |
| 2 | 2 | Green | 000010 | #00AA00 |
| 3 | 3 | Cyan | 000011 | #00AAAA |
| 4 | 4 | Red | 000100 | #AA0000 |
| 5 | 5 | Magenta | 000101 | #AA00AA |
| 20 | 6 | Brown | 010100 | #AA5500 |
| 7 | 7 | White / light gray | 000111 | #AAAAAA |
| 56 | 8 | Dark gray / bright black | 111000 | #555555 |
| 57 | 9 | Bright Blue | 111001 | #5555FF |
| 58 | 10 | Bright green | 111010 | #55FF55 |
| 59 | 11 | Bright cyan | 111011 | #55FFFF |
| 60 | 12 | Bright red | 111100 | #FF5555 |
| 61 | 13 | Bright magenta | 111101 | #FF55FF |
| 62 | 14 | Bright yellow | 111110 | #FFFF55 |
| 63 | 15 | Bright white | 111111 | #FFFFFF |
Specifications
EGA utilizes a female nine-pin D-subminiature (DE-9) connector for output, which is the same type used by CGA. Its signaling standard and pin configuration maintain backward compatibility with CGA, enabling EGA displays to operate with CGA cards and vice versa.
Within EGA modes, pins 2, 6, and 7 transmit the secondary RGB signals unique to EGA. When running 200-line CGA modes, the EGA card remains fully compatible with IBM CGA monitors; however, compatibility with non-IBM monitors varied.
Certain third-party monitors internally connected pin two to ground, potentially causing a short circuit of the EGA’s secondary red signal to ground, which could damage the card. Other third-party displays treated pin two solely as a ground connection, rendering them incompatible with EGA.
An EGA monitor can function when connected to a CGA adapter; however, if not configured for CGA mode, the secondary red signal is grounded and the secondary blue signal left unconnected. This results in inaccurate color rendering and may produce a bluish tint.
The IBM 5154 EGA monitor incorporates a dedicated IBM 5153 CGA compatibility mode that automatically switches to the CGA pinout upon detecting CGA sync signals, thereby preventing these color issues.
| Pin | Signal Name | Function in EGA Modes | Function in CGA-Compatible Modes |
|---|---|---|---|
| 1 | GND | Ground reference | Ground reference |
| 2 | SR | Secondary Red (Intensity) | Ground connection |
| 3 | PR | Primary Red | Red signal |
| 4 | PG | Primary Green | Green signal |
| 5 | PB | Primary Blue | Blue signal |
| 6 | SG | Secondary Green (Intensity) | Intensity signal |
| 7 | SB | Secondary Blue (Intensity) | Reserved |
| 8 | H | Horizontal sync pulse | Horizontal sync pulse |
| 9 | V | Vertical sync pulse | Vertical sync pulse |
The original IBM EGA card features a feature connector (blue connector J4), which provides access to two RCA connector outputs at the rear along with various analog and digital signals configurable through the adapter.
Moreover, the initial card design incorporated an interface for a light pen device.
Memory mapping
In text modes supporting color and CGA graphics, video memory is mapped into a 16 KB segment starting at B8000h. For monochrome text modes compatible with MDA, video memory occupies a 16 KB block beginning at B0000h. These allocations preserve backward compatibility.
EGA’s enhanced modes utilize video memory starting at address A0000h with a capacity of 64 KB. The distinct base addresses for color versus monochrome modes enable simultaneous operation of an EGA card alongside either a monochrome display adapter or CGA within the same system.
Unlike the interleaved memory layout of CGA and Hercules graphics modes, EGA employs planar graphics modes. Video memory is divided into four separate "planes" (except in the 640×350×2 mode which uses a single plane), each plane representing one bit per pixel within the RGBI color space. The final pixel color is determined by combining bits across these planes.
Plane sizes differ depending on the selected mode:
| Mode description | Plane memory size |
|---|---|
| Modes with 200 lines, and 640×350×2-bit mode |
8 KB per plane |
| 640×350 mode using 64 KB RAM | 16 KB per plane |
| 640×350 mode using 128 KB RAM | 32 KB per plane |
All four planes are located within segment A000 in CPU address space and are accessible via bank switching; only one plane can be read by the CPU at any given moment. Programmers have the ability to select individual planes for writing or write simultaneously to multiple planes. In read mode 1, all four planes are read concurrently and compared against programmed "Color Compare" data, producing a byte output on the I/O bus that reflects the comparison result.
See also
- (Japanese Enhanced Graphics Adapter for AX systems)
- Video card
- Graphics display resolution
- Graphics processing unit
- List of display connectors
- 6-bit RGB section in monochrome and RGB color formats
- EGA section in 16-bit computer color palettes
- Professional Graphics Controller
- Hercules InColor Card
- VGA compatible text mode—EGA modes are included as a subset with comparable characteristics
- List of defunct graphics chips and card manufacturers
References
External links
- ↑ Cite error: Invalid
<ref>tag; no text was provided for refs named:3