Articulo de referencia

Adaptador de gráficos a color

El Color Graphics Adapter ( CGA ), originalmente también llamado Color/Graphics Adapter o IBM Color/Graphics Monitor Adapter , [ 1 ] presentado en 1981, fue la primera tarjeta g...

El Color Graphics Adapter ( CGA ), originalmente también llamado Color/Graphics Adapter o IBM Color/Graphics Monitor Adapter , [ 1 ] presentado en 1981, fue la primera tarjeta gráfica a color de IBM para el IBM PC y estableció un estándar de facto para la visualización de computadoras .

Diseño de hardware

La tarjeta gráfica IBM CGA original se construyó alrededor del controlador de pantalla Motorola 6845 , [ 2 ] venía con 16 kilobytes de memoria de video integrada y presentaba varios modos de gráficos y texto . La resolución de pantalla más alta de cualquier modo era de 640 × 200 y la profundidad de color más alta admitida era de 4 bits (16 colores).  

La tarjeta CGA podía conectarse a un monitor CRT de accionamiento directo mediante una interfaz RGBI digital de 4 bits ( TTL ) , como la pantalla a color IBM 5153 , o a un televisor o monitor de vídeo compuesto compatible con NTSC mediante un conector RCA . [ 3 ] El conector RCA solo proporcionaba vídeo de banda base, por lo que para conectar la tarjeta CGA a un televisor sin entrada de vídeo compuesto se requería un modulador de RF independiente . [ 1 ]

IBM produjo la pantalla a color para computadora personal 5153 para usar con la CGA, pero esta no estaba disponible en el lanzamiento [ 4 ] y no se lanzaría hasta marzo de 1983. [ 5 ]

Aunque IBM no disponía de una pantalla a color propia, los clientes podían usar la salida compuesta (con un modulador de RF si era necesario) o la salida de accionamiento directo con monitores de terceros compatibles con el formato RGBI y la frecuencia de escaneo. Algunas pantallas de terceros carecían de la entrada de intensidad, lo que reducía el número de colores disponibles a ocho, [ 4 ] y muchas también carecían del circuito exclusivo de IBM que convertía el color amarillo oscuro en marrón, por lo que cualquier software que utilizara el color marrón se mostraría incorrectamente.

Capacidades de salida

CGA ofrecía varios modos de vídeo. [ 6 ] [ 7 ] [ 8 ]

Modos gráficos:

  • 160 × 100 en 16 colores, elegidos de una paleta de 16 colores, utilizando una configuración específica del modo de texto de 80 × 25 .
    • Esto utilizaba 4 bits por píxel, con un uso total de memoria de (160  × 100  × 4)  / 8  = 8 kilobytes.
  • 320 × 200 en 4 colores, elegidos de 3 paletas fijas, con variantes de alta y baja intensidad, con el color 1 elegido de una paleta de 16 colores.
    • Esto utilizaba 2 bits por píxel, con un uso total de memoria de (320  × 200  × 2)  / 8  = 16 kilobytes.
  • 640 × 200 en 2 colores, uno negro y otro elegido de una paleta de 16 colores.
    • Esto utilizó 1 bit por píxel, con un uso total de memoria de (640  × 200)  / 8  = 16 kilobytes.

Algunos programas lograron una mayor profundidad de color al utilizar el color de los artefactos cuando se conectaban a un monitor compuesto.

Modos de texto:

  • 40 × 25 con fuente de 8 × 8 píxeles (resolución efectiva de 320 × 200 )
  • 80 × 25 con fuente de 8 × 8 píxeles (resolución efectiva de 640 × 200 )

IBM pretendía que CGA fuera compatible con un televisor doméstico. Los modos de texto de 40 × 25 y de gráficos de 320 × 200 se pueden usar con un televisor, y los modos de texto de 80 × 25 y de gráficos de 640 × 200 están pensados ​​para un monitor. [ 2 ]

Paleta de colores

CGA utiliza una gama de 16 colores RGBI de 4 bits , pero no todos los colores están disponibles en todo momento, dependiendo del modo gráfico que se utilice. En los modos de resolución media y alta, los colores se almacenan con una menor profundidad de bits y se seleccionan mediante índices de paleta fijos, en lugar de una selección directa de la paleta completa de 16 colores.

Cuando se utilizan cuatro bits (para el modo de baja resolución o para programar registros de color), se organizan según el modelo de color RGBI : [ ​​9 ]

  • Los tres bits inferiores representan los componentes de color rojo, verde y azul.
  • El cuarto bit "intensificador", cuando está activado, aumenta el brillo de los tres componentes de color (rojo, verde y azul). [ 10 ]

Estos cuatro bits de color son interpretados internamente por el monitor o convertidos a colores NTSC (véase más abajo).

Con un monitor RGBI

Cuando se utiliza un monitor de accionamiento directo, los cuatro bits de color se envían directamente al conector DE-9 situado en la parte posterior de la tarjeta.

Dentro del monitor, las cuatro señales se interpretan para controlar los cañones de color rojo, verde y azul. Con respecto al modelo de color RGBI descrito anteriormente, el monitor traduciría el número de color digital de cuatro bits a siete voltajes analógicos distintos en el rango de 0,0 a 1,0 para cada cañón. [ 11 ]

El color 6 se trata de forma especial; normalmente, el color 6 se convertiría en amarillo oscuro , como se ve a la derecha, pero para lograr un tono marrón más agradable, un circuito especial en la mayoría de los monitores RGBI, comenzando con la pantalla a color IBM 5153, [ 12 ] hace una excepción para el color 6 y cambia su matiz de amarillo oscuro a marrón reduciendo la amplitud de la señal verde analógica. La cantidad exacta de reducción variaba entre los modelos de monitor: la pantalla a color original IBM 5153 Personal Computer reduce la amplitud de la señal verde en aproximadamente un tercio, [ 13 ] mientras que la pantalla a color mejorada IBM 5154 convierte internamente todos los números de color RGBI de 4 bits a números de color ECD de 6 bits, [ 9 ] lo que equivale a reducir a la mitad la amplitud de la señal verde. Los monitores Tandy CM-2, [ 14 ] CM-4 [ 15 ] y CM-11 [ 16 ] proporcionan un potenciómetro etiquetado como "BROWN ADJ." para ajustar la cantidad de reducción de la señal verde.

Esta paleta "RGBI con tonos marrones modificados" se mantuvo como la paleta predeterminada de los estándares gráficos de PC posteriores, como EGA y VGA , que pueden seleccionar colores de gamas mucho más amplias, pero que por defecto utilizan estos hasta que se reprograman.

Las tarjetas de video/monitores posteriores en modos de emulación CGA aproximarían los colores con la siguiente fórmula:

rojo := 2/3×( colorNúmero & 4)/4 + 1/3×( colorNúmero & 8)/8 verde := 2/3×( colorNúmero & 2)/2 + 1/3×( colorNúmero & 8)/8 azul := 2/3×( colorNúmero & 1)/1 + 1/3×( colorNúmero & 8)/8 si (color == 6) verde := verde * 2/3

lo que produce la paleta CGA canónica: [ 11 ]

Nota: Los valores hexadecimales de color mostrados son equivalentes RGB de 8 bits; internamente, CGA es RGBI de 4 bits.

Con un monitor/televisor de color compuesto

Los 16 colores de CGA al usar la salida NTSC (revisión de tarjeta posterior a 1983)

Para la salida compuesta, estos números de color de cuatro bits son codificados por el hardware integrado de la CGA en una señal compatible con NTSC que se envía al conector de salida RCA de la tarjeta. Por razones de costo, esto no se realiza mediante un convertidor RGB a YIQ como lo exige el estándar NTSC, sino mediante una serie de biestables y líneas de retardo. [ 17 ] [ 18 ]

En consecuencia, los tonos que se ven carecen de pureza; en particular, tanto el cian como el amarillo tienen un tinte verdoso, y el color 6 vuelve a verse amarillo oscuro en lugar de marrón. [ 19 ]

Las luminancias relativas de los colores producidos por el circuito generador de color compuesto difieren entre las revisiones de CGA: son idénticas para los colores 1-6 y 9-14 con los primeros CGA producidos hasta 1983, [ 20 ] y son diferentes para los CGA posteriores debido a la adición de resistencias adicionales. [ 21 ]

Modos de texto estándar

CGA ofrece cuatro modos de texto BIOS ( Modos 0 a 3 , denominados alfanuméricos o modos A/N en la documentación de IBM). En estos modos, no es posible acceder directamente a los píxeles individuales de la pantalla. En su lugar, la pantalla se divide en una cuadrícula de celdas de caracteres, cada una de las cuales muestra un carácter definido en una de las dos fuentes de mapa de bits, "normal" y "delgada", incluidas en la ROM de la tarjeta. Las fuentes son fijas y no se pueden modificar ni seleccionar mediante software, solo mediante un puente en la propia placa.

Las fuentes se almacenan como mapas de bits con una profundidad de color de 1 bit, donde un "1" representa el carácter y un "0" el fondo. Estos colores se pueden seleccionar de forma independiente para cada carácter en pantalla, a partir de la paleta completa de 16 colores CGA. El conjunto de caracteres se define en la página de código de hardware 437 .

Los datos del mapa de bits de la fuente solo están disponibles para la tarjeta gráfica; la CPU no puede leerlos. En los modos gráficos, la salida de texto de la BIOS funciona copiando el texto bit a bit desde la ROM de la fuente a la memoria de vídeo.

Modo 40  ×  25

Los modos BIOS 0 y 1 son ambos modos de texto de 40 columnas por 25 filas, donde cada carácter es un patrón de 8 × 8 puntos. La resolución efectiva de pantalla en este modo es de 320 × 200 píxeles (una relación de aspecto de píxeles de 1:1,2). La tarjeta dispone de suficiente memoria de vídeo para ocho páginas de texto diferentes en este modo.

La diferencia entre estos dos modos solo se aprecia en un monitor compuesto, donde el modo 0 desactiva la ráfaga de color, mostrando todo el texto en escala de grises. El modo 1 activa la ráfaga de color, permitiendo la visualización del color. Los modos 0 y 1 son funcionalmente idénticos en monitores RGB y en adaptadores posteriores que emulan CGA sin admitir la salida de color compuesto.

Modo 80  × 25 

Los modos BIOS 2 y 3 seleccionan modos de texto de 80 columnas por 25 filas, donde cada carácter sigue siendo un patrón de puntos de 8 × 8 , pero se muestra a una velocidad de escaneo mayor. La resolución de pantalla efectiva de este modo es de 640 × 200 píxeles. En este modo, la tarjeta dispone de suficiente memoria de vídeo para cuatro páginas de texto diferentes.

Al igual que con los modos de texto de 40 columnas, el Modo 2 desactiva la ráfaga de color en la señal compuesta y el Modo 3 la activa.

color del modo texto

Cada celda de carácter almacena cuatro bits para el color de primer plano y el color de fondo. Sin embargo, en la configuración predeterminada de la tarjeta, el cuarto bit del color de fondo no determina la intensidad, sino el atributo de parpadeo de la celda. Todos los caracteres en pantalla con este bit activado parpadearán periódicamente, lo que significa que su color de primer plano cambiará al color de fondo, haciendo que el carácter se vuelva invisible. Todos los caracteres parpadean al unísono.

Al configurar un registro de hardware, se puede desactivar la función de parpadeo, lo que permite volver a usar colores de fondo de alta intensidad.

Todos los caracteres parpadeantes en la pantalla parpadean de forma sincronizada. El efecto de parpadeo está activado por defecto y el efecto de fondo de alta intensidad está desactivado; desactivar el parpadeo es la única forma de elegir libremente los últimos ocho índices de color (8-15) para el color de fondo.

Cabe destacar que los lenguajes de programación GW-BASIC y Microsoft QBASIC incluidos en MS-DOS admitían todos los modos de texto de la CGA con control total del color, pero no proporcionaban un método estándar a través del lenguaje BASIC para cambiar la CGA del modo de parpadeo al modo de 16 colores de fondo. Sin embargo, esto aún era posible programando directamente los registros de hardware mediante la instrucción OUT del lenguaje BASIC.

Captura de pantalla animada de la pantalla de inicio del software Animation Creation para IBM PC de 1983. El bucle muestra las primeras animaciones en modo texto, que utilizan bloques de caracteres de la página de códigos 437 y cambios rápidos de color de fondo dentro de los búferes de memoria de vídeo CGA.

Un ejemplo comercial temprano de software que opera dentro de estos parámetros específicos de modo de texto a color es Animation Creation , un paquete de entretenimiento y utilidades publicado por IBM en 1983. [ 22 ] Al operar dentro del entorno IBM BASICA , el programa evitó los primeros cuellos de botella de CPU y bus al manipular directamente la memoria de video en modo de texto en lugar de depender del renderizado a nivel de píxel. Utilizó los 95 caracteres de texto estándar de la ROM de fuente de hardware junto con 160 caracteres especiales (seleccionables en bancos de seis a la vez), que los usuarios podían alinear horizontal y verticalmente para construir objetos pseudográficos más grandes.

Debido a que cada celda de carácter admitía de forma nativa la selección independiente de entre los 8 colores de primer plano y los 8 de fondo predeterminados, se podían crear efectos visuales complejos directamente dentro de los búferes de pantalla de texto. Para lograr la animación, el software se basaba en la reproducción secuencial de múltiples búferes de pantalla en caché, lo que permitía a los usuarios animar hasta ocho pantallas de caracteres de 24×40 o cuatro pantallas de caracteres de 24×80. El software también incluía una función para replicar elementos de fondo estáticos en fotogramas secuenciales sin volver a introducir datos, y los archivos de animación resultantes se guardaban directamente en el disquete . [ 22 ]

Modos gráficos estándar

CGA ofrece modos gráficos en tres resoluciones: 160 × 100 , 320 × 200 y 640 × 200. En todos los modos, cada píxel de la pantalla se puede configurar directamente, pero la profundidad de color en los modos superiores no permite seleccionar libremente entre la paleta completa de 16 colores.

320  ×  200

En los modos de resolución media de 320 × 200 ( modos 4 y 5 ), cada píxel consta de dos bits que seleccionan colores de una paleta de cuatro colores. En el modo 4, hay dos paletas, y en el modo 5, una sola.

Mediante la programación de los registros de hardware se pueden realizar varias selecciones. Primero, la paleta de colores seleccionada. Segundo, la intensidad, que se define para toda la pantalla, no para cada píxel. Tercero, el color 0 (el color de fondo) puede configurarse con cualquiera de los 16 colores disponibles.

El modo gráfico específico de la BIOS influye en las paletas de colores disponibles. El modo 4 de la BIOS ofrece dos paletas: verde/rojo/marrón y cian/magenta/blanco.

Al igual que los modos de texto 0 y 2, el modo 5 desactiva la ráfaga de color para que los colores aparezcan en escala de grises en un monitor compuesto. Sin embargo, a diferencia de los modos de texto, esto también afecta a los colores que se muestran en un monitor RGBI, modificándolos a la paleta cian/rojo/blanco que se muestra arriba. Esta paleta no está documentada por IBM, pero se utilizó en algunos programas.

640  ×  200

En el modo de alta resolución de 640 × 200 ( Modo 6 ), cada píxel es un bit, lo que proporciona dos colores que se pueden elegir de la paleta de 16 colores mediante la programación de los registros de hardware.

En este modo, la imagen de vídeo se almacena como un mapa de bits simple, donde un bit por píxel define el color como de primer plano o de fondo. Por defecto, los colores son negro y blanco brillante, pero el color de primer plano se puede cambiar a cualquier valor de la paleta CGA de 16 colores. En una tarjeta IBM CGA original, el color de fondo no se puede cambiar del negro.

Este modo desactiva la señal de ráfaga de color compuesta de forma predeterminada. La BIOS no ofrece la opción de activar la ráfaga de color en el modo 640  ×  200, y el usuario debe escribir directamente en el registro de control de modo para habilitarla.

Más modos gráficos y ajustes

Existen diversas funciones, tanto oficiales como no oficiales, que pueden aprovecharse para lograr efectos especiales.

  • En el modo gráfico de 320 × 200 , el color de fondo (que también afecta al color del borde), que por defecto es negro al inicializar el modo, se puede cambiar a cualquiera de los otros 15 colores de la paleta CGA. Esto permite cierta variación, así como efectos de parpadeo, ya que el color de fondo se puede cambiar sin tener que redibujar la pantalla (es decir, sin modificar el contenido de la memoria de vídeo).
  • En el modo de texto, el color del borde (que se muestra fuera del área de visualización normal e incluye el área de sobreexploración ) se puede cambiar del negro predeterminado a cualquiera de los otros 15  colores.
  • Mediante una sincronización precisa, es posible cambiar a otra paleta mientras se emite el vídeo, lo que permite utilizar cualquiera de las seis paletas por línea de exploración. Un ejemplo de esto es California Games , [ 23 ] cuando se ejecuta en un  8088 estándar de 4,77 MHz. Ejecutarlo en un ordenador más rápido no produce el efecto, ya que el método que los programadores utilizaron para cambiar de paleta en ubicaciones predeterminadas es extremadamente sensible a la velocidad de la máquina. Lo mismo se puede hacer con el color de fondo, como se utiliza para crear el río y la carretera en Frogger . [ 24 ] Otro ejemplo documentado de la técnica es en la versión de Atarisoft de Jungle Hunt para PC.
  • Se pueden obtener colores adicionales mediante tramado .
  • Al usar la paleta 0 con baja intensidad y el azul oscuro como color de fondo, se obtienen los tres colores primarios RGB , además del marrón.

Algunos de estos ajustes anteriores se pueden combinar. Se pueden encontrar ejemplos en varios juegos. [ 25 ]

160  ×  100 Modo de 16 colores

Un único "píxel" grande en modo 160 × 100. Se trata de las dos filas superiores de la mitad del carácter 221. Nótese los ocho píxeles no cuadrados que lo componen y la relación de aspecto de 1:1,2.
Pantalla de título de PakuPaku, un clon de Pac-Man que utiliza el modo 160 × 100

Técnicamente, este modo no es un modo gráfico, sino una modificación del modo de texto de 80 × 25. [ 26 ] El registro de altura de celda de caracteres se modifica para mostrar solo dos líneas por celda de carácter en lugar de las ocho líneas habituales. Esto cuadruplica el número de filas de texto mostradas, de 25 a 100. Estos caracteres de texto "comprimidos" no son caracteres completos. El sistema solo muestra sus dos líneas superiores de píxeles (ocho cada una) antes de pasar a la siguiente fila.

El carácter 221 del conjunto de caracteres CGA consiste en un recuadro que ocupa toda la mitad izquierda de la matriz de caracteres. (El carácter 222 consiste en un recuadro que ocupa toda la mitad derecha).

Dado que a cada carácter se le pueden asignar distintos colores de primer plano y de fondo, se puede colorear (por ejemplo) de azul a la izquierda (color de primer plano) y de rojo brillante a la derecha (color de fondo). Esto se puede invertir intercambiando los colores de primer plano y de fondo.

Utilizando los caracteres 221 o 222, cada mitad de cada celda de carácter truncada puede tratarse como un píxel individual, lo que permite disponer de 160 píxeles horizontales por línea. De este modo, es posible obtener 160 × 100 píxeles a 16  colores, con una relación de aspecto de píxel de 1:1,2.

Aunque es una forma indirecta de lograr una pantalla gráfica de 16 colores, funciona bastante bien y el modo incluso se menciona (aunque no se explica) en la documentación oficial de hardware de IBM. [ 27 ] Este modo se utilizó ya en 1983 en el juego Moon Bugs . [ 28 ] [ 29 ] [ 30 ]

Se puede lograr mayor detalle en este modo utilizando otros caracteres, combinando el arte ASCII con la técnica antes mencionada. Macrocom, Inc. exploró esto en dos juegos: Icon: Quest for the Ring (lanzado en 1984) y The Seven Spirits of Ra (lanzado en 1987). [ 30 ] [ 31 ] [ 32 ]

La misma técnica de reducción de la altura de las celdas de texto también se puede utilizar con el modo de texto de 40 × 25 , lo que da como resultado una resolución de 80 × 100 y una relación de aspecto de píxeles de ~1,67:1.

Salida compuesta

El uso de la salida compuesta en lugar de un monitor RGBI produjo un vídeo de menor calidad, debido a la separación inferior de NTSC entre luminancia y crominancia. [ 33 ] Esto es especialmente problemático con texto de 80 columnas: [ 34 ]

Texto de 80 columnas en RGB (izquierda) frente a monitor compuesto (derecha)

Por este motivo, cada uno de los modos de texto y gráficos tiene un modo duplicado que desactiva la ráfaga de color compuesta , lo que da como resultado una imagen en blanco y negro, pero también elimina la dispersión de color para producir una imagen más nítida. En los monitores RGBI, las dos versiones de cada modo suelen ser idénticas, con la excepción del modo gráfico de 320 × 200 , donde la versión "monocromática" produce una tercera paleta.

Colores de artefactos extendidos

Los programadores descubrieron que este fallo podía convertirse en una ventaja, ya que los distintos patrones de puntos de alta resolución se transformaban en áreas uniformes de colores sólidos, lo que permitía mostrar colores de artefactos completamente nuevos . Esta técnica podía utilizarse tanto con el modo gráfico estándar de cuatro colores de 320 × 200 como con el de color sobre negro de 640 × 200 .

Operación interna

Los colores directos son los 16 colores habituales descritos anteriormente en "La paleta de colores CGA".

Los colores artefacto se observan porque el decodificador de croma NTSC del monitor compuesto interpreta erróneamente parte de la información de luminancia como color. Al colocar cuidadosamente los píxeles en patrones apropiados, un programador puede producir artefactos de color cruzado específicos que generen un nuevo color deseado; ya sea a partir de píxeles puramente blancos y negros en el modo 640 × 200 , o como resultado de una combinación de colores directos y artefactos en el modo 320 × 200 , como se ve en las siguientes imágenes:

De este modo, con la posibilidad de elegir entre el modo de 320 × 200 y el de 640 × 200 , la elección entre las dos paletas y un color que se puede seleccionar libremente (el fondo en el modo de 320 × 200 y el primer plano en el modo de 640 × 200 ), es posible utilizar muchos conjuntos diferentes de colores de artefactos, lo que da como resultado una gama total de más de 100  colores.

1024 colores en modo compuesto
1024 colores en modo compuesto

Demostraciones posteriores realizadas por entusiastas han aumentado el número máximo de colores que la CGA puede mostrar simultáneamente a 1024. [ 35 ] [ 36 ] Esta técnica implica un ajuste del modo de texto que cuadruplica el número de filas de texto. Ciertos caracteres ASCII, como U y ‼, se utilizan para producir los patrones necesarios, lo que da como resultado imágenes sin tramado con una resolución efectiva de 80 × 100 en un monitor compuesto. [ 35 ]

Durante la salida de cada línea se producen 160 ciclos del reloj de color NTSC, por lo que en el modo de 40 columnas cada píxel ocupa medio ciclo y en el modo de 80 columnas cada píxel utiliza un cuarto de ciclo. Limitando la visualización de caracteres a las dos o tres líneas de exploración superiores y aprovechando la disposición de píxeles en ciertos caracteres de la página de códigos 437 , es posible mostrar hasta 1024 colores. [ 35 ] Esta técnica se utilizó en la demo 8088 MPH . [ 36 ]

Disponibilidad y advertencias

La variante de 320 × 200 de esta técnica (véase más arriba) es como se ve el modo gráfico estándar compatible con la BIOS en un monitor compuesto a color. Sin embargo, la variante de 640 × 200 requiere modificar un bit (desactivar la ráfaga de color) directamente en los registros de hardware de la CGA. Por lo tanto, se la suele denominar un "modo" independiente.

Al depender completamente del proceso de codificación/descodificación NTSC, la representación de artefactos de color compuesto no está disponible en un monitor RGBI, ni tampoco es emulada por adaptadores gráficos EGA, VGA o contemporáneos.

El moderno emulador de PC para juegos DOSBox admite el modo CGA, que puede emular los artefactos de color de un monitor compuesto. Admite tanto el modo compuesto de 640 × 200 como la variante más compleja de 320 × 200 .

Resolución y uso

La creación de artefactos en la composición, ya sea de forma intencionada o como un efecto no deseado, reduce la resolución horizontal efectiva a un máximo de 160 píxeles, o incluso más en el caso de texto negro sobre blanco o blanco sobre negro, sin modificar la resolución vertical. La visualización de vídeo compuesto resultante con colores "artificiales" se describe a veces como un "modo" de 160 × 200  / 16 colores, aunque técnicamente se trataba de una técnica que utilizaba un modo estándar.

La baja resolución de este método de artefactos de color compuesto hizo que se utilizara casi exclusivamente en videojuegos. Muchos títulos importantes ofrecían gráficos optimizados para monitores de color compuesto. Ultima II , el primer juego de la saga adaptado a IBM PC, utilizaba gráficos compuestos CGA. King's Quest I también ofrecía gráficos de 16 colores en PC, PCjr y Tandy 1000, pero incluía un «modo RGB» en la pantalla de título que solo utilizaba el modo gráfico CGA estándar, limitado a 4 colores.

Limitaciones, errores y erratas

La sincronización de vídeo en la CGA la proporciona el controlador de vídeo Motorola 6845. Este circuito integrado fue diseñado originalmente solo para pantallas alfanuméricas (de texto) basadas en caracteres y puede direccionar un máximo de 128 filas de caracteres.

Para implementar modos gráficos con 200 líneas de exploración en la CGA, el MC6845 se programa con 100 filas de caracteres por imagen y dos líneas de exploración por fila de caracteres. Dado que la dirección de memoria de vídeo que emite el MC6845 es idéntica para cada línea de exploración dentro de una fila de caracteres, la CGA debe usar la salida de "dirección de fila" del MC6845 (es decir, la línea de exploración dentro de la fila de caracteres) como un bit de dirección adicional para obtener los datos rasterizados de la memoria de vídeo. [ 37 ]

Esto implica que, a menos que el tamaño de los datos de trama de una sola línea de exploración sea una potencia de dos, los datos de trama no se pueden almacenar de forma continua en la memoria de vídeo. En su lugar, los modos gráficos de la CGA almacenan las líneas de exploración pares de forma contigua en la memoria, seguidas de un segundo bloque de líneas de exploración impares que comienza en la posición 8192 de la memoria de vídeo. Esta disposición genera una sobrecarga adicional en los modos gráficos para el software que manipula la memoria de vídeo.

Aunque el controlador de vídeo MC6845 puede proporcionar la sincronización para vídeo entrelazado , los circuitos del CGA alinean las señales de sincronización de tal forma que el escaneo siempre es progresivo. Por consiguiente, es imposible duplicar la resolución vertical a 400 líneas de escaneo utilizando un monitor estándar de 15  kHz.

El mayor ancho de banda utilizado por el modo de texto de 80 columnas provoca la aparición de líneas horizontales cortas aleatorias en la pantalla (conocidas como "nieve") si un programa escribe directamente en la memoria de vídeo durante el dibujo de la pantalla. La BIOS evita el problema accediendo a la memoria solo durante el retrazado horizontal o desactivando temporalmente la salida durante el desplazamiento. Aunque esto provoca que la pantalla parpadee, IBM decidió que era mejor que la nieve. [ 2 ] El problema de la "nieve" no se produce en ningún otro adaptador de vídeo ni en la mayoría de los clones CGA.

En el modo de texto de 80 columnas, la frecuencia del reloj de píxeles se duplica y todas las señales de sincronización se emiten durante el doble de ciclos de reloj para que duren su duración adecuada. El circuito de señal de ráfaga de color de la salida compuesta es una excepción: debido a que sigue emitiendo el mismo número de ciclos, ahora a la frecuencia de reloj duplicada, la señal de ráfaga de color producida es demasiado corta para la mayoría de los monitores, lo que produce un color nulo o inestable. Por lo tanto, la documentación de IBM enumera el modo de texto de 80 columnas como una "característica" solo para monitores compuestos RGBI y en blanco y negro. [ 38 ] Aún se puede lograr un color estable configurando el color del borde en marrón, que casualmente produce una fase idéntica a la señal de ráfaga de color correcta y sirve como sustituto de ella.

Soporte para dos cabezas

La CGA se lanzó junto con la IBM MDA y puede instalarse junto con la MDA en el mismo ordenador. Un comando incluido en PC DOS permite alternar la salida de vídeo entre las tarjetas CGA y MDA. [ 39 ] Algunos programas, como Lotus 1-2-3 [ 40 ] y AutoCAD, admiten el uso simultáneo de ambas pantallas.

Compatibilidad con lápiz óptico

El encabezado del lápiz óptico CGA
El encabezado del lápiz óptico CGA

La tarjeta IBM CGA proporcionaba un conector vertical de 6 pines para conectar un lápiz óptico , una característica que compartía con las primeras versiones del Adaptador de Pantalla Monocromática y el posterior Adaptador de Gráficos Mejorado . La funcionalidad del lápiz óptico era gestionada principalmente por el microcontrolador Motorola 6845. Cuando un lápiz conectado detectaba la luz de un fósforo brillante durante el barrido de la pantalla del tubo de rayos catódicos (CRT ), se enviaba una señal al MC6845, que hacía que este almacenara la dirección de memoria actual. La tarjeta CGA, por lo demás, solo proporcionaba un medio básico para configurar y restablecer el estado del almacenamiento, así como para leer el estado del almacenamiento y el de un interruptor o botón físico.

La dirección almacenada podía leerse mediante dos registros dedicados internos del MC6845, a partir de los cuales se podía obtener la posición aproximada del lápiz sobre la pantalla. El BIOS del IBM PC proporcionaba una rutina de servicio de interrupción , la función 04h de INT 10H , que podía utilizarse para devolver la posición calculada del lápiz óptico [ 41 ] .

Varias empresas fabricaron lápices ópticos para el IBM PC, con la notable excepción de la propia IBM. La adopción inicial pudo haberse visto perjudicada por la incompatibilidad con el fósforo P39 de larga persistencia utilizado en el monitor 5151 [ 42 ] .

La compatibilidad con lápiz óptico de la CGA sufría de una baja resolución efectiva, ya que hasta 16 píxeles (en modo gráfico de alta resolución) podían corresponder a una única dirección almacenada. Por lo tanto, para un control preciso del lápiz óptico era necesario conectar tanto el lápiz como la CGA a una tarjeta de interfaz dedicada para lápiz óptico [ 43 ] .

El lápiz óptico CGA también sufrió de un soporte de software limitado. Algunos títulos notables para PC con soporte para lápiz óptico CGA incluyen Sargon III y Micrografx PC-Draw [ 44 ] [ 45 ] .

Soporte de software

La CGA fue ampliamente compatible con software para PC hasta principios de la década de 1990. Algunos de los programas que eran compatibles con la placa eran:

Adaptadores de la competencia

En enero de 1982, BYTE describió la salida de CGA como "muy buena, ligeramente mejor que los gráficos en color de los microordenadores existentes". [ 4 ] PC Magazine no estuvo de acuerdo, informando en junio de 1983 que "la pantalla monocromática de IBM es absolutamente hermosa para texto y maravillosamente cómoda para la vista, pero está limitada a gráficos de caracteres simples. La calidad del texto en las pantallas conectadas al adaptador de color/gráficos... es, en el mejor de los casos, de calidad media y propicia la fatiga visual a largo plazo". [ 47 ]

En un comentario retrospectivo, Next Generation también adoptó una postura negativa sobre la CGA, afirmando: "Incluso para la época (principios de la década de 1980), estos gráficos eran terribles, palidecían en comparación con otras máquinas de color disponibles en el mercado". [ 48 ]

CGA tenía varios competidores:

Otras alternativas:

La tarjeta CGA fue sucedida en el mercado de consumo por la tarjeta Enhanced Graphics Adapter (EGA) de IBM , que admite la mayoría de los modos de CGA y añade una resolución adicional ( 640 × 350 ), así como una paleta de 16 colores seleccionables por software de un total de 64, tanto en modo texto como en modo gráfico.

Presupuesto

Conector DE-9 para monitor RGBI

Conector DE-9 visible al mirar la parte posterior de un PC.

El adaptador gráfico a color utiliza un conector DE-9 estándar para la transmisión directa de vídeo (a un monitor RGBI). El conector de la tarjeta es hembra y el del cable del monitor es macho.

Conector RCA para monitor o televisor de vídeo compuesto

Parte posterior de una placa adaptadora de vídeo CGA, con el conector de salida compuesta RCA visible a la derecha.

El adaptador de gráficos a color utiliza un conector RCA estándar para la conexión a un televisor o monitor de vídeo compuesto compatible con NTSC . [ 3 ] El conector de la tarjeta es hembra y el del cable del monitor es macho.

Véase también

Referencias

  1. 1 2 Manual de IBM CGA (PDF) . pág.  1.
  2. 1 2 3 Bradley, David J. (septiembre de 1990). "La creación del IBM PC" . BYTE . págs. 414–420 . Recuperado el 2 de abril de 2016 . 
  3. 1 2 A. Kumar (2002). Enciclopedia de gestión de hardware informático . Anmol Publications. pág. 1050. ISBN  978-81-261-1030-8.
  4. 1 2 3 Williams, Gregg (enero de 1982). "Una mirada más cercana a la computadora personal IBM" . BYTE . pág. 36. Recuperado el 19 de octubre de 2013 . 
  5. International Business Machines Corporation (4 de febrero de 1983). Carta de anuncio número 183-002 - IBM COLOR DISPLAY, 5153 .
  6. Manual de IBM CGA (PDF) . pág. 2. 
  7. Elliott, John. "Notas sobre el adaptador de gráficos en color" . Página principal de John Elliott . Consultado el 17 de mayo de 2026 .
  8. Leonard, Jim. "Vídeo de referencia del probador de compatibilidad de CGA" . Consultado el 14 de octubre de 2020 .
  9. 1 2 3 Biblioteca de referencia de hardware de computadoras personales IBM: Pantalla en color mejorada de IBM (PDF) . pág. 4. 
  10. El color marrón, representado por R=1, G=1, B=0, I=0, es una excepción; mientras que una interpretación directa de estos valores de bits lo convertiría en amarillo oscuro, la intensidad del componente verde se reduce para producir marrón, solo para este valor de 4 bits . Consulte esta página para obtener más detalles. Esta interpretación especial de RGBI para el marrón se realiza en el monitor; el monitor IBM 5153 diseñado para la CGA la realiza, pero algunos monitores de terceros de la época no.
  11. 1 2 "La paleta CGA real y la salida de color de la IBM 5153" . VileR. 11 de junio de 2022. Recuperado el 18 de mayo de 2024 .
  12. International Business Machines Corporation (1983): Manual de referencia técnica del ordenador personal IBM XT, páginas D-42 a D-43.
  13. "Representación más precisa de la salida de color del IBM 5153 | Foros de la Vintage Computer Federation" . Forum.vcfed.org. Diciembre de 2021. Consultado el 21 de marzo de 2022 .
  14. Manual de servicio del monitor a color Tandy CM-2. pág. 48. 
  15. Manual de servicio del monitor a color Tandy CM-4 . pág. 41. 
  16. Datos de servicio técnico de Sams&Company ComputerFacts: Magnavox® Modelo 7BM613074G - Monitor Radio Shack® Modelo CM11 . 1988. pág. 11. 
  17. Dean et al. (1984): Generación de señales de color de vídeo compuesto a partir de señales de color digitales. Patente estadounidense n.º 4.442.428
  18. International Business Machines Corporation (1983): Manual de referencia técnica del ordenador personal IBM XT, página D-40.
  19. VileR (15 de abril de 2015). "CGA en 1024 colores: un nuevo modo: la guía ilustrada" . Consultado el 17 de octubre de 2020. ... Paleta CGA, tal como la renderiza la salida compuesta de una tarjeta antigua ("de estilo antiguo").
  20. Ordenador personal IBM (PDF) (Referencia técnica). Biblioteca de referencia de hardware de ordenadores personales IBM ( edición revisada). Abril de 1983. pág. D-50.  
  21. Adaptador de monitor de color/gráficos de IBM (PDF) (Referencia técnica). Opciones y adaptadores de IBM. pág. 32. 
  22. 1 2 "Creación de animación" . PixelatedArcade . Consultado el 8 de junio de 2026 .
  23. "Capturas de pantalla de juegos de California para DOS" . MobyGames . Archivado del original el 11 de agosto de 2022.
  24. "Capturas de pantalla de Frogger (1983)" . MobyGames .
  25. "Modos de vídeo compatibles : CGA (ajustado)" . MobyGames . 
  26. Adaptador de monitor de color/gráficos de IBM (PDF) . 6361509. IBM. págs. 9, 20 a través de la Biblioteca de referencia de hardware de computadoras personales de IBM. 
  27. "ibm :: pc :: cards :: Technical Reference Options and Adapters Volume 2 Apr84" . The Internet Archive . Abril de 1984. pág. 50. Consultado el 9 de enero de 2020 .    
  28. "Capturas de pantalla de Moon Bugs (1983)" . MobyGames . Consultado el 6 de enero de 2023 .
  29. Windmill Software (1983), Moon Bugs , consultado el 6 de enero de 2023
  30. 1 2 "CGA en 1024 colores: un nuevo modo: la guía ilustrada" . int10h.org . Consultado el 6 de enero de 2023 .
  31. "Icon: Quest for the Ring para DOS (1984)" . MobyGames . Consultado el 6 de enero de 2023 .
  32. "Los siete espíritus de Ra para DOS (1987)" . MobyGames . Consultado el 6 de enero de 2023 .
  33. Analog Devices. "Codificador RGB a NTSC/PAL de bajo costo con puerto de trampa de luminancia" (PDF) . pág. 14. Consultado el 18 de octubre de 2020. Surge un problema básico cuando la señal de luminancia... contiene componentes de frecuencia que caen dentro de la banda de croma. 
  34. Analog Devices. "Codificador RGB a NTSC/PAL de bajo costo con puerto de trampa de luminancia" (PDF) . pág. 15. Consultado el 18 de octubre de 2020. Las transiciones bruscas de negro a blanco... contienen componentes de frecuencia..., y las de la banda de croma crean crominancia cruzada. 
  35. 1 2 3 VileR (2015-04-15). "8088 MPH: CGA en 1024 colores: un nuevo modo: la guía ilustrada" . int10h.org . Consultado el 15 de octubre de 2022 .
  36. 1 2 "1K colores en CGA: Cómo se hace" . Blog de Reenigne . 8 de abril de 2015. Consultado el 27 de abril de 2018 .
  37. Adaptador de gráficos mejorado de IBM (PDF) (Referencia técnica). Opciones y adaptadores de IBM. 2 de agosto de 1984. pág. 41. 
  38. Adaptador de monitor de color/gráficos de IBM (PDF) (Referencia técnica). Opciones y adaptadores de IBM. pág. 7. 
  39. Elliott, John. "Funcionamiento de doble cabezal en PC antiguas" . Página web de John Elliott . Consultado el 16 de agosto de 2020 .
  40. Derfler, Frank J. Jr. (marzo de 1983). "Un programa en el que puedes confiar" . PC Magazine . Vol. 1, n.º 10, pág. 187. Consultado el 21 de octubre de 2013 .   
  41. "INT 10h de la lista de interrupciones de Ralf Brown" .
  42. Opciones y adaptadores: Adaptador de impresora y pantalla monocromática de IBM (PDF) . IBM. Enero de 1984. pág. 1. Consultado el 29 de marzo de 2026 . 
  43. Rose, Philip FH; Wiswell, Phil ( 12 de enero de 1987). "Lápices de luz para dibujar en pantalla" . PC Magazine . Vol. 6, n.º 1, págs. 105-111 . Consultado el 30 de marzo de 2026 .   
  44. ^ Spracklen, Dan; Spracklen, Kathe (1984). Manual Sargón III . Software Hayden . Consultado el 30 de marzo de 2026 .
  45. "PC-Draw: La herramienta de dibujo universal" . PC Magazine (Anuncio). Micrografx. Agosto de 1983. Consultado el 30 de marzo de 2026 .
  46. "Instalación manual del controlador de pantalla CGA" .
  47. Fastie, Will (junio de 1983). "El PC gráfico" . PC Magazine .
  48. "Léxico de la próxima generación de 1996 de la A a la Z". Next Generation . N.° 15. Imagine Media . Marzo de 1996. pág. 31.  
  49. Curran, Lawrence J.; Shuford, Richard S. (noviembre de 1983). "Estridge de IBM" . BYTE . págs. 88–97 . Recuperado el 19 de marzo de 2016 . 
  50. Stark, Craig L. (1984-10-02). "Paradise Graphics Card: It's Easier Being Green" . PC Magazine . p. 59 . Consultado el 25 de octubre de 2013 . 
Notas
  • Guía de referencia de vídeo CGA compatible con IBM PC : incluye detalles técnicos.
  • Calibración del monitor CGA : información técnica sobre la decodificación y calibración del color del monitor IBM 5153.
  • Biblioteca de hardware de ordenadores personales de IBM: Referencia técnica (Edición revisada, 1983)
  • Este artículo se basó originalmente en material del Diccionario en línea gratuito de informática .
  • Notas sobre el adaptador de gráficos a color
  • Juegos con gráficos CGA en Wayback Machine (archivado el 18/06/2006)
  • Capturas de pantalla representativas de juegos de CGA en Wayback Machine (archivadas el 23/07/2012).
  • Hilo de discusión fácil de usar sobre el uso de CGA en Wayback Machine (archivado el 14 de agosto de 2014)