Enhanced Graphics Adapter Explained

Enhanced Graphics Adapter
Created:[1]
Architecture:Motorola 6845
Chips and Technologies 82C431, 82C432, 82C433, 82C434
Entry:IBM EGA card, Chips and Technologies, ATI EGA Wonder
Midrange:ATI EGA Wonder 800
Highend:ATI EGA Wonder 800+
Predecessor:Monochrome Display Adapter, Color Graphics Adapter
Successor:IBM 8514, Video Graphics Array

The Enhanced Graphics Adapter (EGA) is an IBM PC graphics adapter and de facto computer display standard from 1984 that superseded the CGA standard introduced with the original IBM PC, and was itself superseded by the VGA standard in 1987. In addition to the original EGA card manufactured by IBM, many compatible third-party cards were manufactured, and EGA graphics modes continued to be supported by VGA and later standards.

History

EGA was introduced in October 1984 by IBM,[2] [3] shortly after its new PC/AT. The EGA could be installed in previously released IBM PCs, but required a ROM upgrade on the mainboard.[4]

Chips and Technologies' first product, announced in September 1985, was a four-chip EGA chipset that handled the functions of 19 of IBM's proprietary chips on the original Enhanced Graphics Adapter. By that November's COMDEX, more than a half dozen companies had announced EGA-compatible boards based on C&T's chipset.[5] The first EGA-compatible board was Vega in December 1985, released by Video Seven and using C&T's chipset.[6] The Vega was half the width of the original IBM EGA board.[7]

Between 1984 and 1987, several third-party manufacturers produced compatible cards, such as the Autoswitch EGA[8] or Genoa Systems' Super EGA chipset.[9] Later cards supporting an extended version of the VGA were similarly named Super VGA.

The EGA standard was made obsolete in 1987 by the introduction of MCGA and VGA with the PS/2 computer line.[10]

Adoption

Commercial software began supporting EGA soon after its introduction, with The Ancient Art of War, released in 1984.[11] Microsoft Flight Simulator v2.12,[12] [13] Jet,[14] Silent Service,[15] and Cyrus,[16] all released in 1985, offered EGA support, along with Windows 1.0. Sierra's King's Quest III, released in 1986, was one of the earliest mainstream PC games to use it.

By 1987, EGA support was commonplace.[17] Most software made up to 1991 could run in EGA, although the vast majority of commercial games used with 16 colors for backward compatibility with CGA and Tandy, and to support users who did not own an enhanced EGA monitor. 350-line modes were mostly used by freeware/shareware games and application software, although SimCity is a notable example of a commercial game that runs in with 16 colors mode.[18] Modern adventure games, like The Crimson Diamond, use freeware tools like the Adventure Game Studio to create games with EGA-style color palettes but with modern features.[19]

Hardware design

The original IBM EGA was an 8-bit PC ISA card with 64 KB of onboard RAM. An optional daughter-board (the Graphics Memory Expansion Card) provided a minimum of 64 KB additional RAM, and up to 192 KB if fully populated with the Graphics Memory Module Kit.[20] Without these upgrades, the card would be limited to four colors in 640 × 350 mode.[21]

Output was via direct-drive RGB,[22] as with the CGA, but no composite video output was included.[23] MDA and CGA monitors could be driven, as well as newly released enhanced color monitors for use specifically with EGA.[24]

EGA-specific monitors used a dual-sync design which could switch from the 15.7 kHz of 200-line modes to 21.8 kHz for 350-line modes.

Many EGA cards have DIP switches on the back of the card to select the monitor type. If CGA is selected, the card will operate in 200-line mode and use 8×8 characters in text mode. If EGA is selected, the card will operate in 350-line mode and use 8×14 text.

Some third-party cards using the EGA specification were sold with the full 128 KB of RAM from the factory, while others included as much as 256 KB to enable multiple graphics pages, multiple text-mode character sets, and large scrolling displays. A few third-party cards, such as the ATI Technologies EGA Wonder, built on the EGA standard to additionally offer features such as extended graphics modes as high as and automatic monitor type detection.[25]

Capabilities

EGA produces a display of up to 16 colors (using a fixed palette, or one selected from a gamut of 64 colors (6-bit RGB), depending on mode) at several resolutions up to 640 × 350 pixels, as well as two monochrome modes at higher resolutions. EGA cards include a ROM to extend the system BIOS for additional graphics functions, and a custom CRT controller (CRTC).

The IBM EGA CRTC supports all of the modes of the IBM MDA and CGA adapters through specific mode options,[26] but it is not fully register-compatible with the Motorola MC6845 used in those cards, so software that directly programs the registers to select modes may produce different results on the EGA.[27]

Supported resolutions are 320 × 200 and 640 × 200 (on a CGA or EGA monitor[28]), 720 × 350 and 640 × 350 (on an MDA monitor) and 320 × 350 and 640 × 350 (on an EGA monitor). EGA scans at 21.8 kHz when 350-line modes are used and 15.7 kHz when 200-line modes are used.

In the 640 × 350 high-resolution mode, which requires an enhanced EGA monitor, 16 colors can be selected from a palette comprising all combinations of two bits per pixel for red, green and blue. This is four levels of intensity for each primary color and 64 colors overall. The 640 × 200 and 320 × 200 graphics modes provide backward compatibility with CGA software and monitors, but they can use the entire sixteen-color CGA palette simultaneously, instead of the smaller four-color palettes that the actual CGA is limited to in those modes.

EGA's 16-color graphic modes use bit planes and mask registers[29] together with CPU bitwise operations[30] for accelerated graphics. The same techniques went on to be used in the VGA.

Modes

EGA supports:

Text modes:

Extended graphics modes of third-party boards:

Color palette

With the EGA, all 16 CGA colors can be used simultaneously, and each can be mapped in from a larger palette of 64 colors (two bits each for red, green and blue). The CGA's alternate brown color is included in the larger palette, so it can be used without any additional display hardware. The later VGA standard built on this by mapping each of the 64 colors in from a larger, customizable, palette of 256.

Standard EGA monitors do not support use of the extended color palette in 200-line modes, because the monitor cannot distinguish between being connected to a CGA card or being connected to an EGA card outputting a 200-line mode. EGA redefines some pins of the connector to carry the extended color information. If the monitor were connected to a CGA card, these pins would not carry valid color information, and the screen might be garbled if the monitor were to interpret them as such. For this reason, standard EGA monitors will use the CGA pin assignment in 200-line modes, so the monitor can also be used with a CGA card.

Some EGA monitors are switchable, meaning that they can be set up to use the full palette even in 200-line modes, often through a mechanical switch. Only a few commercial games were released with support for the extended color palette in or (including the DOS version of Super Off Road).[31] [32]

When selecting a color from the EGA palette, two bits are used for the red, green and blue channels to signal values of 0, 1, 2 or 3. For instance, to select the color magenta, the red and blue values would be medium intensity (2, or 10 in binary) and the green value would be off (0).

The table below displays an example palette matching the standard 16 CGA colors, with their representations in rgbRGB binary (internal card bit order), where the lowercase letters are the low-intensity bits, and uppercase letters are high-intensity bits. Decimal and hexadecimal values (converted to equivalent 24-bit sRGB web colors) are also shown.

Default EGA 16-color palette, matching CGA colors
IndexDefault palette numberDefault palette colorrgbRGBHexadecimal
00 Black 000000
  1. 000000
11 Blue 000001
  1. 0000AA
22 Green 000010
  1. 00AA00
33 Cyan 000011
  1. 00AAAA
44 Red 000100
  1. AA0000
55 Magenta 000101
  1. AA00AA
206 Brown 010100
  1. AA5500
77 White / light gray 000111
  1. AAAAAA
568 Dark gray / bright black 111000
  1. 555555
579 Bright Blue 111001
  1. 5555FF
5810 Bright green 111010
  1. 55FF55
5911 Bright cyan 111011
  1. 55FFFF
6012 Bright red 111100
  1. FF5555
6113 Bright magenta 111101
  1. FF55FF
6214 Bright yellow 111110
  1. FFFF55
6315 Bright white 111111
  1. FFFFFF

The following images illustrate the full EGA palette in detail.

Specifications

EGA uses a female nine-pin D-subminiature (DE-9) connector for output, identical to the CGA connector. The signal standard and pinout is backward-compatible with CGA, allowing EGA monitors to be used on CGA cards and conversely.

When operating in EGA modes, pins 2, 6 and 7 are repurposed for EGA's secondary RGB signals (see pinout table below). When operating in 200-line CGA modes, the EGA card is fully backward compatible with a standard IBM CGA monitor; however, third-party monitors had varying compatibility.

Third-party monitors sometimes connected pin two to ground internally. When connected to an EGA card, this shorts the EGA's secondary red output to ground and can damage the card. Also, some monitors were wired with pin two as their sole ground, and these will not work with the EGA.

Conversely, an EGA monitor should work with a CGA adapter, but if it is not set to CGA mode, the secondary red signal will be grounded (always zero), and the secondary blue will be floating (unconnected), causing all high-intensity colors except brown to display incorrectly, and all colors to potentially have a variable blue tint due to the indeterminate state of the unconnected secondary blue.

The IBM 5154 EGA monitor has a special IBM 5153 CGA compatibility mode when operating with CGA sync signals and automatically changes to the CGA pinout to avoid all of the mentioned problems when operating in this mode.[33]

EGA DE-9 connector pin signals
PinNameEGA modesCGA compatible modes
1GNDGroundGround
2SRSecondary Red (Intensity)Ground
3PRPrimary RedRed
4PGPrimary GreenGreen
5PBPrimary BlueBlue
6SGSecondary Green (Intensity)Intensity
7SBSecondary Blue (Intensity)Reserved
8HHorizontal syncHorizontal sync
9VVertical syncVertical sync
The original IBM EGA card includes a feature connector (blue connector J4, see first photo on this page), providing access to two RCA connectors at the back of card, in addition to several analog and digital signals that the EGA adaptor can be configured to use.[34]

A light pen interface was also present on the original card.[35]

Memory mapping

For color text and CGA graphics modes, video memory is mapped to 16 KB of addresses beginning at address B8000h, and in monochrome (MDA-compatible) text mode, video memory occupies 16 KB beginning at B0000h. These address mappings are for backward compatibility.

For modes new to the EGA, the video memory begins at address A0000h and occupies 64 KB. The different base addresses for color vs. monochrome modes makes it possible for an EGA to be used simultaneously with a monochrome graphics card in the same computer, or for an EGA in MDA text mode to be used simultaneously with a CGA in the same computer.

EGA's native graphics modes are planar, as opposed to the interleaved CGA and Hercules modes. Video memory is divided into four "planes" (except  × 2, which has two planes), one for each component of the RGBI color space. Each pixel is represented by one bit in each plane. If a bit in the red plane is on, but none of the equivalent bits in the other pages are, a red pixel will appear in that location on screen. If all the other bits for that particular pixel were also on, it would become white, and so forth.

Planes are different sizes depending on the mode:

EGA video plane sizes! Mode! Plane size
200-line modes,
 × 2 mode
8 KB
with 64 KB RAM16 KB
with 128 KB RAM32 KB
All planes reside at segment A000 in the CPU's address space. They are bank-switched, and only one plane can be read on the CPU bus at once; however, the programmer may set the control registers on the card to select which planes are written to and write to several at once. An exception is read mode 1, in which all four planes are read and compared with programmed "Color Compare" data, and a byte indicating the result of comparing all four planes can be read on the I/O bus.

See also

References

External links

Notes and References

  1. Web site: IBM Enhanced Graphics Adapter, IBM Graphics Memory Expansion Card, and IBM Graphics Memory Module . 10 September 1984 .
  2. High-Resolution Standard Is Latest Step in DOS Graphics Evolution, InfoWorld, June 26, 1989, p. 48.
  3. News Briefs, Big Blue Turns Colors, InfoWorld, October 8, 1984.
  4. Book: IBM EGA Installation Instructions . 1984 . 1 . 2020-08-15 . 2022-02-11 . https://web.archive.org/web/20220211184437/https://ibm.retropc.se/ibm_ega/IBM%20EGA%20-%20Installation%20Instructions.pdf . dead .
  5. https://books.google.com/books?id=a91QXlvTPHAC&pg=PA140 The Enhanced Graphics Standard Comes of Age
  6. Bermant . Charles . February 11, 1986 . EGA Standard Evolves for PC Graphics Users . PC Magazine . Ziff-Davis . 5 . 3 . 33–34 . Google Books . February 20, 2024 . February 20, 2024 . https://web.archive.org/web/20240220094029/https://books.google.com/books?id=yCeTeDMBhg8C&pg=PA34 . live .
  7. Clark . Don . April 23, 1987 . IBM Signals a New Race for Video-7 . The San Francisco Chronicle . 33 . ProQuest.
  8. News: Kallenbach . Rolf . July 28, 1986 . Paradise EGA Makes Switching Automatic . 53 . InfoWorld .
  9. News: Brownstein . Mark . February 23, 1987 . Genoa Systems Ready to Ship $449 Half-Size Graphics Card . 16 . InfoWorld .
  10. Scott Mueller, Upgrading and Repairing PCs, Tenth Edition, Que, 1998, 0-7897-1636-4, page 515.
  11. Web site: The Ancient Art of War for DOS (1984) . 2022-12-10 . MobyGames.
  12. Web site: Microsoft Flight Simulator (v2.0) for PC Booter (1984) . MobyGames.
  13. News: Dudek . Virginia . July 23, 1985 . PC Update . 53 . PC Magazine .
  14. Web site: Jet for DOS (1985) . 2022-12-10 . MobyGames.
  15. Web site: Silent Service for DOS (1985) . 2022-12-10 . MobyGames.
  16. Web site: Cyrus for DOS (1985) . 2022-12-10 . MobyGames.
  17. News: Hummel . Robert . June 23, 1987 . Get the full EGA color spectrum . 311 . PC Magazine .
  18. Web site: Edwards . Benj . 2019-06-10 . EGA Turns 35: 10 Iconic EGA Games of Yesteryear . 2022-12-09 . PCMag Australia . en-au.
  19. Web site: Extension . Time . 2024-06-21 . "I Have No Interest In 3D Games" - Meet The Devs Keeping EGA Alive In The Modern Day . 2024-08-19 . Time Extension . en-GB.
  20. Book: IBM EGA Installation Instructions . 9, 10, 11 . 2020-08-15 . 2022-02-11 . https://web.archive.org/web/20220211184437/https://ibm.retropc.se/ibm_ega/IBM%20EGA%20-%20Installation%20Instructions.pdf . dead .
  21. Book: IBM Enhanced Graphics Adapter manual . 7.
  22. Book: IBM Enhanced Graphics Adapter manual . 83.
  23. Hart . Glenn A. . December 25, 1984 . IBM Sets a New Standard . PC Magazine . Ziff-Davis Publishing . 3 . 25 . 173.
  24. Book: IBM Enhanced Graphics Adapter manual . 5, 6, 7.
  25. News: August 17, 1987 . EGA Wonder Any Software. Any Monitor. Any Time. 800x560 640x480 . 41 . InfoWorld .
  26. Book: IBM Enhanced Graphics Adapter manual . 1, 81.
  27. Book: IBM Enhanced Graphics Adapter manual . 75.
  28. Book: IBM Enhanced Graphics Adapter manual . 5, 6, 7.
  29. http://support.microsoft.com/KB/45699 Complete Instructions to BLOAD and BSAVE EGA and VGA Screens
  30. Book: Abrash, Michael . Graphics Programming Black Book . Michael Abrash . 2001 . . 1-57610-174-6 . 1342 . Chapter 43: Bit-plane animation . http://www.phatcode.net/res/224/files/html/ch43/43-01.html . February 6, 2017 . registration .
  31. Web site: swarmik . November 2018 . EGA 64-color 320x200 mode on switchable monitors . 2022-12-09 . Tumblr.
  32. Web site: RetroArchivesFr . 2018-12-16 . Ivan "Ironman" Stewart's Super Off Road . 2022-12-09 . Retro Archives . fr-FR.
  33. IBM Options and Adapters, Volume 1, "Enhanced Color Display", page 4: "When operating in Mode 1, the display maps the 4 input bits into 16 of the possible 64 colors as shown in the following chart." August 2, 1984.
  34. Book: IBM Enhanced Graphics Adapter . IBM . August 2, 1984 . 76–78.
  35. Book: IBM Enhanced Graphics Adapter . IBM . August 2, 1984 . 84.