lunes, 23 de abril de 2012

Los "frikis" que salvaron el código fuente del juego Prince Of Persia

Hace poco tiempo que, como ya contamos, apareció el código fuente del juego Prince Of Persia que se encontraba en paradero desconocido. Pues bien, esta noticia tiene una historia detrás y es la que sigue a continuación, disfrutadla.


Jordan Mechner, en el centro, toma una foto del código fuente de Prince of Persia mientras Jason Scott (izquierda) y Tony Diaz (derecha) miran. Foto: Dan Krauss/Wired



Tony Diaz, un conservacionista de Apple II llegado desde Oceanside, California, montó un "Frankenputer" en la oficina de la casa de Jordan Mechner. Foto: Dan Krauss/Wired

Tony Diaz reconstrulló la historia del ordenador Apple II de Jordan Mechner, leyendo la placa base como un medium lee la palma de la mano. Foto: Dan Krauss/Wired

Jordan Mechner juega a una copia del clon de Tetris "Quadris" por primera vez en décadas. Foto: Dan Krauss/Wired

Jordan Mechner ordena los discos de  de su juego Prince of Persia desde 1989. Foto: Dan Krauss/Wired

Mechner puso una réplica de la daga de los tiempos de la saga de Prince of Persia en el teclado antes de intentar recuperar el código fuente original. Foto: Dan Krauss/Wired

La última copia del código fuente de Prince of Persia en la unidad de disco de Tony Diaz antes del intento de recuperación.Foto: Dan Krauss/Wired

Success: Los ficheros del código fuente de Prince of Persia aparecieron en el monitor del Apple II. Foto: Dan Krauss/Wired

Jordan Mechner identifica los nombres de los archivos y las fechas en los discos del código fuente de Prince of Persia. Foto: Dan Krauss/Wired

Jordan Mechner en su casa de Los Angeles, "Todo el mundo que esté interesado en curiosear sobre el código de Prince of Persia podrá mirar en él, indagar y modificarlo" Foto: Dan Krauss/Wired


- Jordan Mechner lo guardó todo -

Jordan guardó toda la grabación de video que tomó en Octubre de 1985 a su hermano corriendo y saltando por su barrio, este material fue el utilizado para crear las animaciones del juego Prince Of Persia en su Apple II. Guardó todas las metículosas jornadas que había mantenido durante el proceso de producción del juego, documentado cada pequeño paso en la creación de este éxito.



Cuando estuvo trabajando en el juego "Prince of Persian: The Sands of Time" en 2002, los nuevos programadores querían añadir el clásico de Mechner en su actualización para Playstation 2 y para ello le pidieron el código fuente.

"No hay problema" - penso Mechener... - "Yo lo guardé todo."

El juego original para Apple II era un juego facil de encontrar en internet, pero el código fuente - el programa original que Mechner había escrito en su viejo Apple II - no había manera de encontrarlo. Mechner buscó por todos los sitios posibles y preguntó a todo el mundo por cuyas manos pasó el código en su día pero sin éxito. No aparecía.

Una década después, el padre de Mechner le mandó una caja con material antiguo que estaba "enterrado" en uno de sus armarios. Allí, entre pilas de ediciones Europeas de Prince Of Persia aun si desprecintar y cubiertos de polvo encontró unos disquetes en cuyas etiquetas se podía leer: "PRINCE OF PERSIA Source Code (Apple). @1989 Jornda Mechner (ORIGINAL)."

Discos encontrados pero... ¿Que pasaba con los datos?

Cuando Fox Mulder, agente de Expediente X, tenía un problema técnico, llamába a su grupo de frikis. Los pistoleros solitarios. Mechner seguió si ejemple y llamó a su propio escuadrón de frikis para que acuidieran a su propia casa un lunes de Abril por la mañana.


- Para ellos, es solo material viejo -

La casa de Jordan Mechner está cercana a la base de las colinas de Hollywood en una de esas calles de los Ángeles tan frondosas y bien cuidadas que nunca hubieras pensado que el grimoso Boulervard de Hollywood estaba a unos pocos bloques de distancia.

Un pickup blanco aparcó en la calle, dentro estaba el coleccionista de ordenadores antiguos Tony Diaz. Él condujo 80 millas desde Oceanside (California) para ayudar a Mechner a recuperar sus viejos disquetes por sus tesoros perdidos. De la cama de su pickup, descargó una caja después de otra con sus antiguos ordenadores Apple II, unidades de disco y cables. Trajo todo lo que pudiera hacer falta o ser necesario. Si esos discos tenían información, él iba a sacarla.

El metal en la parte superios de algunos de los equipos estaba desgastado y oxidado. Pero Diaz sabía lo que estaba haciendo; el hombre que podía destripar un disco de Apple II y recuperarlo en menos de una hora. Parte de su equipamiento no tiene muy buena pinta, pero gracias a su experiencia todo funciona correctamente después de todos estos años.

Jason Scott, un archivista de "The Internet Archive", voló desde Nueva York con un lector de discos KryoFlux, una parte del popular kit con software para realizar imágenes de los antiguos datos almacenados en discos magnéticos.

Los diseñadores de juegos clásicos no siempre se dan cuenta de que están sentados sobre un tesoro. La meta de Scott es ayudarles a resolver esto y salvar su trabajo pionero de la podredumbre.

" Para ellos, es solo material viejo" - Dice Scott - "Tu les ayudas a darse cuenta de su valor" - Organizaciones como la de la Universidad de Stanford, la biblioteca del congreso y el fuerte Museo del Juego tiene departamentos dedicados a la preservación del Software. La presencia de Scott subraya esta misión para rescatar los viejos juegos y materiales de producción de sus polvorientas tumbas magnéticas.

Mechner, Scott y Diaz sacaron los equipos de la pickup por la parte trasera de la casa de Mechner. Ubicada en el patio trasero se encuentra una pequeña casa de invitados. Como cualquier buen escritor de Hollywood (además de trabajar con juegos, actualmente Mechner escribe novelas gráficas y guiones), había convertido su casa de invitados en una oficina. Dentro, había un sofá de cuero para atender a sus clientes rodeado de estantes llenos de guiones y premios.

El espacio de trabajo de Mechner se situaba en una esquina, un ordenado escritorio con un gran monitor de Apple. En la pared cercana, alguien había escrito "No se siente frente al ordenador pensado en que hacer a continuación"

Diaz comenzó a configurar sus equipos en una mesa de madera. Empezó a montar sus carcasas de plástico beige de sus ordendores Apple II, de las unidades de disco y de sus monitores en una impresionante pila de antigua tecnología.

La meta del escuadrón friki no era simplemente conseguir que los viejos discos de Mechner funcionasen. La misión era sacar de esa tumba magnético el viejo código y publicarlo en internet. Es por lo que que ellos necesitaban el equipamiento de Diaz y no les valía con un simple antiguo Apple II, Diaz había conectado sus ordenadores mediante una red Ethernet. A parte, conectó a la red un moderno portátil para servir como receptáculo de los que fueran los tesoros que pretendían desenterrar.

Antes de que el grupo se enfrentara a la gran prueba sobre los discos del código fuente del Prince of Persia, comenzaron con un ligero calentamiento. Mechner tenía otra caja de zapatos llena de discos que él quería recuperar. Las etiquetas en esos discos sugerían que contenían los primeros trabajos de Mechner que no habían visto la luz en décadas.

Primero, Diaz testeó un par de discos menos críticos para asegurarse de que su equipamiento y configuración trabajaba con normalidad. El ejecutaba un software llamado Locksmith 6.0, una utilidad antigua usada para la duplicación de discos protegidos. El primer par de discos no estaban en las mejores condiciones. Los escaneos son visualizados en en monitor en texto ASCII. Los puntos representaban sectores escaneados correctamente. Los números indicaban sectores que llevaban un rato para ser leídos. La letra D representaba un pedazo de datos que se había perdido en el tiempo. había unas cuantas D. Los resultados no eran muy esperanzadores.

Mechner comenzó a sacar discos de su vieja caja de zapatos, había sido reforzada con cinta transparente para mantener el peso de los discos. La parte superior de los discos superaba el borde la caja por lo que era imposible poner una tapa sobre ellos. Los discos estaban cubiertos de polvo cuando los encontró. Mechner dijo a Diaz que no se preocupara por el polvo. "Yo he cogido discos que estaban completamente llenos de errores porque habían estado con humedad y tenían moho por encima. Él describió el proceso de limpieza de un viejo disco magnético. Había que sacarlo de su estuche, ponerlo debajo de un grifo y lavarlo con jabón. Este proceso hizó temblar a Jason Scott, proteccionista de software "Estás en tu derecho" dijo.

Una copia de Apple DOS 3.3 se realizó en momento "Estamos preparados para algo que nunca se había léido antes" dijo Mechner "Comencemos con Quadris"

El nombre del juegos sonó como una versión de un universo alternativo de un familiar título clásico de PC. Resulta que es casi exáctamente lo que es. Después del graduado de Mechner en Yale, donde creó su primer juego, Karateka, fue a trabajar a la desarrolladora de juegos Broderbund. Durante los primeros meses con la compañía una submisión llego a considerarse... un juego llamado Tetris.

"Este disco fue un virus para la compañia" Dijo Mechner, "Todos los programadores, todo el mundo tenía adicción por este juego. Dejamos de trabajar en nuestros propios proyectos por lo que podíamos batirnos unos a los otros en las puntuaciones de Tetris."

A pesar de todo esto, Broderbund pasó del Tetris. Seguramente, pensó el jefe, nuestros programadores empollones comprendían el juego, pero el público general no querrá jugar a él.

"Ellos tenían que devolver los discos, y todos nosotros teníamos que destruir nuestas copias de tetris" dijo Mechner. "No hubiera sido ético mantenerlos" pero todos en la compalía estaban tan enganchados con Tetris que al programador Roland Gustafsson le llevó un día realizar ingeniería inversa al juego, llamándo al clon no autorizado Quadris.

La unidad de disco del Appelo II tartamudeaba y chirriaba. El software cargaba y se copiaba al disco de Diaz. "¿Quieres verlo correr?" preguntó. Todo el mundo asintió con la cabeza.

Mechner cogió un teclado, seleccionó el nivel principiante y comenzó. Los bloques comenzaron a caer en la pantalla, pero el no recordaba que tecla rotaba y cual las dejaba caer. Mechner pacientemente buscó las teclas, presionando una cada vez. Cuando presionó determinada tecla el sucedáneo de Tetris desapareció de la pantalla reemplazado por un aburrido programa.

Diaz fue el primero que se imaginó lo que había pasado "Encontraste la tecla del jefe", dijo. "Esta hace parecer que estas trabajando en vez de jugando" Gustafsson, como muchos programadores de juegos en su día, había incluído un botón de pánico que llenaba la pantalla con algo que pareciera trabajo. Solo en casa de que el jefe caminara por los alrededores durante una partida a Quadris. "Simpático" dijo Mechner.

Habiendo obtenido con seguridad los datos de Quadris, Tony Diaz dio el disco a Jason Scott. Una lectura magnética completa del disco garantizará que no hay nada más en él, datos eliminadosde otro proyecto perdido.

"Somos como Indiana Jones" dijo Mechner "Solamente llegamos a la tumba, agarramos el Idolo y salimos corriendo con él. ¡Nosotros hemos conseguido el Idolo dorado!"


- Una piedra preciosa -

Mechner siguió entregando discos a Diaz, y más Idolos dorados siguieron apareciendo. Mechner usaba discos antiguos y los reescribía como datos nuevos. Uno de ellos fue usado para contener parte del juegos Tome Zone, una aventura de Roberta Williams en los inicios de Sierra On-Line. Ahora el contiene la única copia de unos de los primeros juegos. "Este es una piedra preciosa" dijo Mechner, "Este es el otro juego, a parte de Prince of Persia, que pensé que había perdido completamente" No solo el código fuente, en este caso, sino el juego completo. "Recuerdo dedicar un año a programarlo" dijo " pero no tenía prueba de que todavía existiera"

Diaz puso el disco en su máquina del tiempo, y preguntó a Mechner como quería etiquetarlo. "Asteroids" dijo Mechner.

Cuando era un joven programador, Jordan Mechner estaba decidido a crear algo comercial. Él miraba a los juegos más vendidos para Apple II y vio que un clon del juego arcade Space Invaders lo estaba haciendo particularmente bien. Asi que preparó una versión del éxito de Atari Asteroids. pero durante el tiempo que tardó su versión en estar preparada, las desarrolladoras de juegos comenzaron a saturarse de copias descaradas y él abandonó el proyecto.


- Los gráficos no se están renderizando correctamente -

La restauración de Asteroids no fue tan bien como el renacimiento de Quadris. Cuando Diaz cargó el juego, Mechner notó que los gráficos no se estaban renderizando correctamente. Las rocas espaciales aparecían mal formadas. ¿Había un error en el código original? ¿Es la configuración de la máquina de Diaz diferente a la antigua Apple II de Mechner? ¿O es que el disco no se ha mantenido bien durante este tiempo?

La versión de Asteroids de Mechner había sido salvada, pero necesitaba una restauración.

Finalmente, es la hora de afrontar el mayor de todos los Idolos de oro, el viejo disco etiquetado como "PRINCE OF PERSIA source code (Aplle)." Diaz insertó el disco. "No tengo un buen fieeling sobre esto" Dijo Mechner.

El ordenador de Diaz dio un feliz mensaje: No errors. "Ahi está nuestra copia" Dijo. "Ahora, veamos lo que hay en el disco"

Los dedos de Diaz, uno de ellos adornado por un gran anillo, bailaron sobre las letras beige del antiguo Apple II. Leyó los nombres de los directorios en el disco, parando en "Códigos fuente y etiquetas".

"Okay" dijo Mechner, mirando los nombres de archivo y las fechas. "Esto significa algo para mi. Esas fechas son correctas. Y esos son, de hecho, los nombres de los archivos."

"Esto es el 99 por ciento de lo que estabamos esperando" dijo, "si esto hubiera sido ilegible nos habríamos desanimado y lo habríamos perdido para siempre"

Con el código fuente salvado, ¿que era lo siguiente? Mechner lo sabía: Mostrarlo al mundo

"Estos significa que todo el mundo ahí fuera que esté interesado sobre el código fuente de Prince of Persia podrá verlo" "Ellos podrán investigar en él y modificarlo"

"Tan pronto como estés a gusto con ello, yo lo subiré" Dijo Jason Scott.

"Esta noche" respodió Mechner sin dudas.

Pero el día es joven aun y hay un montón de cajas con discos viejos todavía que hay que copiar y escanear en busca de más secretos ocultos. El equipo voluntario de expertos de Mechner permanecieron a su disposición y el pensó en usarlo. Estuvo durante horas hasta que el trabajo fue realizado. Los hijos de Mechner esperaban en la casa principal. Guiones invitan a ser escritos y nuevos juegos a ser creados, pero por ahora, Mechner no necesita señales de motivación que le estimulen para ser productivo.

"No puedo pensar en nada más divertido que hacer que esto" dijo, y abrió otra vieja caja.


Fuente: Wired


No hay comentarios:

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...