El adaptador de gráficos mejorado ( EGA ) es un adaptador de gráficos para PC IBM [2] [3] y un estándar de pantalla de computadora de facto de 1984 que reemplazó al estándar CGA introducido con la PC IBM original , y fue reemplazado por el estándar VGA en 1987. Además de la tarjeta EGA original fabricada por IBM , se fabricaron muchas tarjetas de terceros compatibles y los modos de gráficos EGA continuaron siendo compatibles con VGA y estándares posteriores.
EGA fue introducido en octubre de 1984 por IBM, [2] [3] poco después de su nuevo PC/AT . El EGA se podía instalar en PC IBM lanzadas anteriormente, pero requería una actualización de ROM en la placa base . [4]
El primer producto de Chips and Technologies , anunciado en septiembre de 1985, fue un conjunto de chips EGA de cuatro chips que manejaba las funciones de 19 de los chips patentados de IBM en el adaptador de gráficos mejorado original. En el COMDEX de noviembre de ese año , más de media docena de empresas habían anunciado placas compatibles con EGA basadas en el chipset de C&T. [5] La primera placa compatible con EGA fue Vega en diciembre de 1985, lanzada por Video Seven y que utilizaba el chipset de C&T. [6] : 34 La Vega tenía la mitad del ancho de la placa IBM EGA original. [7]
Entre 1984 y 1987, varios fabricantes produjeron tarjetas compatibles , como el Autoswitch EGA [8] o el chipset Super EGA de Genoa Systems . [9] Las tarjetas posteriores que admitían una versión extendida de VGA recibieron el nombre similar de Super VGA .
El estándar EGA quedó obsoleto en 1987 con la introducción de MCGA y VGA con la línea de computadoras PS/2 . [10]
El software comercial comenzó a soportar EGA poco después de su introducción, con The Ancient Art of War , lanzado en 1984. [11] Microsoft Flight Simulator v2.12 , [12] [13] Jet , [14] Silent Service , [15] y Cyrus , [16] todos lanzados en 1985, ofrecían soporte EGA, junto con Windows 1.0 . Sierra's King's Quest III , lanzado en 1986, fue uno de los primeros juegos de PC convencionales en utilizarlo.
En 1987, el apoyo de EGA era algo común. [17] La mayor parte del software creado hasta 1991 podía ejecutarse en EGA, aunque la gran mayoría de los juegos comerciales usaban 320 × 200 con 16 colores para compatibilidad con CGA y Tandy , y para ayudar a los usuarios que no poseían un monitor EGA mejorado. Los modos de 350 líneas fueron utilizados principalmente por juegos y aplicaciones de software freeware/shareware, aunque SimCity es un ejemplo notable de un juego comercial que se ejecuta en 640 × 350 con modo de 16 colores. [18] [19]
La IBM EGA original era una tarjeta ISA para PC de 8 bits con 64 KB de RAM integrada . Una placa secundaria opcional (la tarjeta de expansión de memoria gráfica ) proporcionaba un mínimo de 64 KB de RAM adicional y hasta 192 KB si estaba completamente ocupada con el kit del módulo de memoria gráfica . [20] Sin estas actualizaciones, la tarjeta estaría limitada a cuatro colores en modo 640 × 350. [21]
La salida se realizó a través de RGB de accionamiento directo , [22] como con el CGA, pero no se incluyó salida de video compuesto . [23] Se podrían controlar monitores MDA y CGA, así como monitores de color mejorados recientemente lanzados para usar específicamente con EGA. [24]
Los monitores específicos de EGA utilizaban un diseño de sincronización dual que podía cambiar de 15,7 kHz de los modos de 200 líneas a 21,8 kHz para los modos de 350 líneas. [24]
Muchas tarjetas EGA tienen interruptores DIP en la parte posterior de la tarjeta para seleccionar el tipo de monitor. Si se selecciona CGA, la tarjeta funcionará en modo de 200 líneas y utilizará caracteres de 8×8 en modo de texto . Si se selecciona EGA, la tarjeta funcionará en modo de 350 líneas y utilizará texto de 8×14.
Algunas tarjetas de terceros que usaban la especificación EGA se vendieron con 128 KB de RAM completos de fábrica, mientras que otras incluían hasta 256 KB para permitir múltiples páginas gráficas, múltiples conjuntos de caracteres en modo texto y grandes pantallas de desplazamiento . [8] Algunas tarjetas de terceros, como ATI Technologies EGA Wonder , se basaron en el estándar EGA para ofrecer funciones adicionales como modos de gráficos extendidos de hasta 800 × 560 y detección automática del tipo de monitor. [25]
EGA produce una visualización de hasta 16 colores (utilizando una paleta fija , o una seleccionada entre una gama de 64 colores (RGB de 6 bits) , según el modo) en varias resoluciones de hasta 640 × 350 píxeles, así como dos monocromos. modos a resoluciones más altas. Las tarjetas EGA incluyen una ROM para ampliar el BIOS del sistema para funciones gráficas adicionales y un controlador CRT personalizado (CRTC) . [26]
IBM EGA CRTC admite todos los modos de los adaptadores IBM MDA y CGA a través de opciones de modo específicas, [26] pero no es totalmente compatible con los registros con el Motorola MC6845 utilizado en esas tarjetas, por lo que el software que programa directamente los registros para seleccionar Los modos pueden producir resultados diferentes en el EGA. [27]
Las resoluciones admitidas son 320 × 200 y 640 × 200 (en un monitor CGA o EGA [28] ), 720 × 350 y 640 × 350 (en un monitor MDA) y 320 × 350 y 640 × 350 (en un monitor EGA). EGA escanea a 21,8 kHz cuando se utilizan modos de 350 líneas y a 15,7 kHz cuando se utilizan modos de 200 líneas. [24]
En el modo de alta resolución de 640 × 350, que requiere un monitor EGA mejorado, se pueden seleccionar 16 colores de una paleta que comprende todas las combinaciones de dos bits por píxel para rojo, verde y azul. Se trata de cuatro niveles de intensidad para cada color primario y 64 colores en total. Los modos de gráficos 640 × 200 y 320 × 200 brindan compatibilidad con el software y los monitores CGA, pero pueden usar toda la paleta CGA de dieciséis colores simultáneamente, en lugar de las paletas más pequeñas de cuatro colores a las que el CGA real está limitado en esos modos. . [28]
Los modos gráficos de 16 colores de EGA utilizan planos de bits y registros de máscara [29] junto con operaciones bit a bit de la CPU [30] para gráficos acelerados . Las mismas técnicas se utilizaron en el VGA .
EGA apoya:
Modos de texto:
Modos de gráficos extendidos de tableros de terceros: [ cita necesaria ]
Con EGA, los 16 colores CGA se pueden usar simultáneamente y cada uno se puede asignar desde una paleta más grande de 64 colores (dos bits cada uno para rojo, verde y azul). El color marrón alternativo del CGA se incluye en la paleta más grande, por lo que se puede utilizar sin ningún hardware de pantalla adicional. El último estándar VGA se basó en esto asignando cada uno de los 64 colores de una paleta más grande y personalizable de 256.
Los monitores EGA estándar no admiten el uso de la paleta de colores extendida en modos de 200 líneas, porque el monitor no puede distinguir entre estar conectado a una tarjeta CGA o estar conectado a una tarjeta EGA que emite un modo de 200 líneas. EGA redefine algunos pines del conector para llevar la información de color extendida. Si el monitor estuviera conectado a una tarjeta CGA, estos pines no llevarían información de color válida y la pantalla podría verse confusa si el monitor los interpretara como tal. Por este motivo, los monitores EGA estándar utilizarán la asignación de pines CGA en modos de 200 líneas, por lo que el monitor también se puede utilizar con una tarjeta CGA. [ cita necesaria ]
Algunos monitores EGA son conmutables , lo que significa que se pueden configurar para utilizar la paleta completa incluso en modos de 200 líneas, a menudo mediante un interruptor mecánico. Sólo se lanzaron unos pocos juegos comerciales con soporte para la paleta de colores extendida en 320 × 200 o 640 × 200 (incluida la versión para DOS de Super Off Road ). [31] [32]
Al seleccionar un color de la paleta EGA, se utilizan dos bits para los canales rojo, verde y azul para señalar valores de 0, 1, 2 o 3. Por ejemplo, para seleccionar el color magenta, los valores rojo y azul serían medios. intensidad (2 o 10 en binario) y el valor verde estaría apagado (0).
La siguiente tabla muestra una paleta de ejemplo que coincide con los 16 colores CGA estándar, con sus representaciones en binario rgbRGB (orden de bits interno de la tarjeta), donde las letras minúsculas son los bits de baja intensidad y las letras mayúsculas son bits de alta intensidad. También se muestran los valores decimales y hexadecimales (convertidos a colores web sRGB de 24 bits equivalentes).
Las siguientes imágenes ilustran en detalle la paleta EGA completa.
EGA utiliza un conector D-subminiatura ( DE-9 ) hembra de nueve pines para salida, idéntico al conector CGA. El estándar de señal y la configuración de pines son compatibles con versiones anteriores de CGA, lo que permite utilizar monitores EGA en tarjetas CGA y viceversa.
Cuando se opera en modos EGA, los pines 2, 6 y 7 se reutilizan para las señales RGB secundarias de EGA (consulte la tabla de distribución de pines a continuación). Cuando se opera en modos CGA de 200 líneas, la tarjeta EGA es totalmente compatible con un monitor IBM CGA estándar; sin embargo, los monitores de terceros tenían compatibilidad variable. [ cita necesaria ]
Los monitores de terceros a veces conectaban el pin dos a tierra internamente. Cuando se conecta a una tarjeta EGA, esto pone en cortocircuito la salida roja secundaria del EGA a tierra y puede dañar la tarjeta. Además, algunos monitores estaban conectados con el pin dos como única tierra y no funcionan con el EGA. [ cita necesaria ]
Por el contrario, un monitor EGA debería funcionar con un adaptador CGA, pero si no está configurado en modo CGA, la señal roja secundaria estará conectada a tierra (siempre cero) y la azul secundaria flotará (desconectada), lo que provocará toda la señal de alta intensidad. los colores, excepto el marrón, se mostrarán incorrectamente y todos los colores tendrán potencialmente un tinte azul variable debido al estado indeterminado del azul secundario desconectado. [ cita necesaria ]
El monitor IBM 5154 EGA tiene un modo especial de compatibilidad IBM 5153 CGA cuando opera con señales de sincronización CGA y cambia automáticamente al pinout CGA para evitar todos los problemas mencionados cuando opera en este modo. [33]
La tarjeta IBM EGA original incluye un conector de funciones (conector azul J4, vea la primera foto en esta página), que brinda acceso a dos conectores RCA en la parte posterior de la tarjeta, además de varias señales analógicas y digitales para las que se puede configurar el adaptador EGA. usar. [34]
La tarjeta original también tenía una interfaz de lápiz óptico . [35]
Para los modos de texto en color y gráficos CGA, la memoria de video se asigna a 16 KB de direcciones que comienzan en la dirección B8000h, y en modo de texto monocromático (compatible con MDA), la memoria de video ocupa 16 KB a partir de B0000h. Estas asignaciones de direcciones son para compatibilidad con versiones anteriores.
Para modos nuevos para EGA, la memoria de video comienza en la dirección A0000h y ocupa 64 KB. Las diferentes direcciones base para los modos color versus monocromático hacen posible que un EGA se use simultáneamente con una tarjeta gráfica monocromática en la misma computadora, o que un EGA en modo texto MDA se use simultáneamente con una CGA en la misma computadora.
Los modos de gráficos nativos de EGA son planos , a diferencia de los modos intercalados CGA y Hercules . La memoria de vídeo se divide en cuatro "planos" (excepto 640 × 350 × 2, que tiene dos planos), uno para cada componente del espacio de color RGBI. Cada píxel está representado por un bit en cada plano. Si un bit en el plano rojo está activado, pero ninguno de los bits equivalentes en las otras páginas lo está, aparecerá un píxel rojo en esa ubicación en la pantalla. Si todos los demás bits de ese píxel en particular también estuvieran activados, se volvería blanco, y así sucesivamente.
Los aviones son de diferentes tamaños según el modo:
Todos los planos residen en el segmento A000 en el espacio de direcciones de la CPU. Están conmutados por banco y sólo se puede leer un plano a la vez en el bus de la CPU; sin embargo, el programador puede configurar los registros de control en la tarjeta para seleccionar en qué planos se escribe y escribir en varios a la vez. Una excepción es el modo de lectura 1, en el que los cuatro planos se leen y se comparan con los datos programados de "Comparación de colores", y en el bus de E/S se puede leer un byte que indica el resultado de la comparación de los cuatro planos.