Menú principal

Mostrando entradas con la etiqueta Karateka. Mostrar todas las entradas
Mostrando entradas con la etiqueta Karateka. Mostrar todas las entradas

sábado, 12 de enero de 2019

Posiblemente el mejor "huevo de pascua" de la historia se encuentra en el juego para Apple II "Karateka"

Vamos a empezar este nuevo año con más anécdotas y curiosidades de Apple apostando fuerte, ya que es un poco arriesgado afirmar que este sea el mejor huevo de pascua de la historia de la informática, pero al final del artículo el lector o lectora podrá decidir si es o no el mejor de todos. Ya sabemos qué es un huevo de pascua, incluso dedicamos hace tiempo un artículo a los de Mac además de contar en este otro el primero de ellos. Pero hoy vamos a hablar hoy de uno especialmente genial, ubicado en uno de los mejores juegos para el Apple II llamado Karateka .

Karateka es un juego de artes marciales creado por el genial Jordan Mechner, el cual también programó otra joya llamada Príncipe de Persia (hacemos un inciso, si te gustan las historias retro de programadores, no puedes perderte los dos libros de Jordan Mechner sobre como creó Principe de Persia y Karateka donde documenta casi paso por paso todo el proceso). Karateka es un típico juego de lucha donde nos enfrentamos a diferentes oponentes usando las artes marciales. Pero lo que marcaba la diferencia con otros juegos similares de la época, era la gran fluidez y animación de los movimientos de los personajes (que luego perfeccionaría en el Príncipe de Persia, recordando que se ejecutaba en un Apple II con sus limitaciones técnicas de la época.

Figura 1. Cara de un disco de 5"1/4 con la copia "normal" del juego, dándole la vuelta se ejecutaba el huevo de pascua. Fuente.

Este juego se distribuía, como casi todos por aquel entonces, en discos de 5"1/4. Si eres tan viejuno como el que escribe estas líneas, recordarás que estos discos tenían dos caras, era posible darle la vuelta y acceder a más información en la cara "B". Karateka se distribuía en uno de estos discos pero sólo la cara principal donde estaba el juego tenía una pegatina identificándola. Si por accidente (o de forma premeditada) se introducía la cara del disco no etiquetado en la unidad, el juego se ejecutaba totalmente del revés. Era perfectamente posible jugar al juego completo con los personajes y el paisaje boca abajo. Simplemente genial. Incluso hubo gente que llamó al servicio de atención al cliente de la compañía Broderbund diciendo que este se veía al revés.  En el siguiente vídeo se puede apreciar la ejecución del huevo de pascua en un Apple IIe:




A Mechner se le ocurrió la idea mientras estaba intentando programar un sistema de anti-copia para Karateka. Cambiando los valores de algunas tablas de bits comprobó que no era complicado hacer una versión "invertida" y copiarla en la otra cara del disco. Hay que recordar también que la unidad de disco de los Apple II y Apple IIe no tenían dos cabezales (algo que más tarde se impondría en este tipo de lectores) que permitieran leer las dos caras sin tener que darle la vuelta físicamente.

Lamentablemente, hoy día con el soporte digital, los discos de todo tipo prácticamente han desaparecido y este tipo de huevos de pascua "físicos" son imposibles de volver a poner en práctica. Entonces, ¿crees o no que este es el mejor huevo de pascua de la historia? ;)

sábado, 27 de octubre de 2018

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 280x192 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 140x192 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.

Entrada destacada

Proteger tu cuenta de Google y de Gmail con Latch Cloud TOTP #Latch #Gmail #Google

La semana pasada se liberó la nueva versión de Latch y nuestro compañero Chema Alonso hizo un repaso de todo ello en su artículo Latch...

Otras historias relacionadas

Entradas populares