Empieza (para mí) el congreso con un recuerdo de hacks de
otro tiempo: la consola Atari 2600.
La descripción de hardware y la manera de programar nos lleva
a las épocas de los “verdaderos programadores” que hacían programas con 128
bytes de RAM y 4k de ROM. Y cuando se les agotaba, se inventaron los bancos de
RAM o ROM que se iban cambiando a base de escribir en un registro. Supongo que
de aquí a la memoria virtual no había más que un paso… :-)
Pero en realidad eso es lo más sencillo, cuando Sven Olli ha pasado a contar cómo se dibujaba la pantalla es cuando se empieza
a percibir la verdadera habilidad de los programadores: la señal de TV no se obtiene de un banco de
RAM para toda la imagen (demasiado cara en aquel momento, Sven ha citado que 1k de RAM
valía lo que 1G hoy), sino que se genera a partir de la descripción de dos medias líneas, a base de un patrón de fondo y cinco “sprites”: dos jugadores, dos
misiles y una pelota (lo indispensable para programar un juego de pong y un
juego de combate de tanques).
Para dibujar la pantalla, hay que ir cambiando lo que hay en cada línea a
medida que el haz va dibujando la imagen la pantalla… ¡contando los ciclos de
cada instrucción! (bueno, también hay instrucciones que te ayudan a
sincronizarte con el borde izquierdo de la pantalla o con un temporizador). Y por si fuera poco, si se quiere que la mitad izquierda sea diferente de la derecha o su imagen especular, hay que cambiar el contenido de la línea sobre la marcha...
La verdad es que con estos requisitos, parece mentira que se hayan podido desarrollar versiones de Donkey Kong o El Imperio Contraataca, o el detalle que podemos ver esta foto de la presentación.
No hay comentarios:
Publicar un comentario