Seguridad

Así es como Steve Wozniak consiguió obtener colores en el Apple II … el cual era monocromo

Nos encanta hablar de Steve Wozniak y del Apple II, ya que nos ofrece una perspectiva perfecta de un hacker y su obra maestra. Este ordenador salió al mercado en 1977 y una de sus características que le aportaba una gran ventaja sobre sus competidores de la época, era la posibilidad de ofrecer colores en la pantalla de cualquier televisor. Hasta aquí todo normal pero hay un pequeño detalle a destacar: el Apple II era monocromo y no tenía ningún chip dedicado a la salida de vídeo proporcionara una salida en color.

Después de cuatro días con sus respectivas noches de maratón programando y diseñando la circuitería del Breakout para Atari, Wozniak llegó a una de sus mejores ideas con la cual pudieron ofrecer al mercado un ordenador a color, el Apple II a un precio razonable (cualquier modelo a color de la época costaba miles de dólares). Y además lo conseguiría utilizando un sólo chip de sólo 1 dólar de coste. El único problema era que estaba limitado a televisores NTSC, no funcionaba con PAL o SECAM, usando estos monitores la señal que se mostraba era siempre en B/W.
Figura 1. Esquema del funcionamiento del sistema de video del Apple II. Fuente.
Entonces ¿cómo lo hizo? pues resumiendo mucho, Wozniak sacó ventaja de una característica muy peculiar del estándar de televisión NTSC. Si repetía algunas porciones de la señal digital saliente (negra o blanca) por defecto de la salida de video monocromo y la inyectaba en la señal «colorburst» o NTSC, era posible conseguir patrones de pixeles con diferentes colores. Antes hemos comentado que el Apple II era monocromo y en concreto tenía una resolución de 280×192 pixeles. Cada uno de estos pixeles es un 1 o un 0 y Wozniak encontró que agrupando esta señales en bloques tipo 00, 01, 10, 11 podría conseguir colores como negro, púrpura, verde y blanco respectivamente. Pero además, ajustando los valores de tiempo (timing) de la señal podía conseguir dos colores adicionales más: azul (01) y naraja (10). Eso sí, esta técnica hacía que la resolución final en modo gráfico fuera sólo de 140×192 pixeles, pero al menos era en color (el cual se le llamó modo HGR).

Figura 2. Karateka y Ms Pacman, usando el banco 1 de colores y ambos bancos, respectivamente. Fuente.

Esto no fue un inconveniente para que se desarrollaran juegos tan espectaculares utilizando esta resolución. Era posible conseguir en HGR dos tipos de bancos de colores, el primero tenía los colores negro, azul, naranja y blanco y el segundo sólo los colores púrpura y verde. Así que había dos bancos disponibles de colores pero además era posible utilizar ambos. Por ejemplo clásico juego Karateka que utilizaba el primer banco o Ms PacMan de Atari, el cual usaba todos, es decir, ambos bancos de colores. Un hack de un hacker en toda regla que permitió poner las bases de, posiblemente, la compañía de ordenadores más conocidas del mundo. En este artículo de la Wikipedia se explica a fondo el detalle técnico de su funcionamiento.

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.