El código fuente del Apollo disponible en Google Code
Como parte de la conmemoración de los 40 años de la llegada del hombre a la Luna, se ha publicado el código fuente de los programas del Módulo de Comandos y Módulo Lunar utilizados en el Apollo.
Se trata de código que se transcribió desde copias impresas que fueron digitalizadas y se encuentran disponibles en PDF. El código transcrito ahora se encuentra en los repositorios de Google Code y se puede ejecutar sobre Virtual AGC (Apollo Guidance Computer), un emulador del AGC que se muestra en el video y que puede correr sobre Linux, MacOSX y Windows entre otros.
El código fuente se trata de un lenguaje muy cercano al código de máquina que se interpretaba en el AGC. Por restricciones de memoria no convenía escribir el código directamente en lenguaje ensamblador o assembly del AGC, por lo que se creó un interprete que funcionaba un poco más lento pero cumplía con las condiciones especiales de estas máquinas. Algunas gracias del código interpretado es que contenía instrucciones para manejar vectores y funciones trigonométricas, algo muy importante en aplicaciones de este tipo.
El código se grababa como firmware y sólo se podían hacer pequeñas modificaciones en caliente. Es notable el hecho de que estas modificaciones no solo se podían recibir desde la tierra, sino que los astronautas también estaban capacitados para meter su propio código en caso de ser necesario.
Aquellos que entiendan código assembly de procesadores antiguos como el MOS6502 (Atari, Commodore, Apple) o Z80 (Spectrum, MSX) no tendrán problemas en entender el del Apollo. Increíblemente el lenguaje interpretado es el que necesita un poco más de habilidad.
Aunque no lo lleguen a ejecutar en sus computadores, es bastante interesante ver cómo se programaban estas máquinas, sobre todo considerando qué tan crítico era la calidad del código. Aún así, se pueden encontrar segmentos que los astronautas no hubieran querido ver:
TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE
CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE
TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
Links:
- Apollo 11 mission’s 40th Anniversary: One large step for open source code… (blog de Google Code)
- Virtual AGC and AGS emulation (proyecto en Google Code)
- The Apollo Guidance Computer A Kinder, Gentler Introduction (Virtual AGC Home page)
8 cámaras clásicas de Kodak, ahora que dejará d...
Alemania dice que no firmará ACTA (al menos por...
México: Sujeto intentó subastar un bebé en Merc...
10 regalos geek para tu media naranja en este D...
2012: IPv6, odisea en el (ciber)espacio
España ya no está en los planes de Netflix
Argentina: Google deberá indemnizar a un empres...
Futurología: Google lanzará su propio sistema d...
35 Comentarios
El código fuente del Apollo disponible en Google Code
y dale con que las gallinas tienen tetas!.
ResponderFue un fraude y nunca fueron a la luna. Lo del codigo de programacion puede ser cierto, pero el resto de la historia fue un montaje.
según www.google.com (according to www.google.com)
Responder"hoax":
1. engaño
2. truco
3. mistificación
4. pega
5. filfa
señor Catrín, escoja por favor. (Mr. Catrin, choose please)
se la dejaron brillosita a Mr. Franco!, tanta cosa que se hacia antes con tan poco computo gran articulo
ResponderRealmente toda una proeza de los ingenieros de aquella epoca...tenian todo pensado.. vean la pelicula APOLLO 13 ahi se muestra la capacidad de los ingenieros y como resolvieron el famoso !Houston, tenemos un problema¡ (Houston, we have a problem here)
Respondercomo le puedo quitar una voz molesta a la computadora apol porfavor ayudenme es urgente
ResponderDeja tu Comentario