Exclusif : le code source d’Apollo 11 !

Il est hallucinant d’imaginer qu’ils sont partis sur la Lune avec une si petite puissance de calcul et… si peu de lignes de code.

Pour rappel, l’ordinateur de bord faisait 14ko !!! Ce qui provoqua d’ailleurs une erreur 1202 lors de l’alunissage pour cause de trop plein d’informations (l’ordinateur ne pouvait pas gérer deux radars en même temps).

Le code source en entier est ici.

Extrait :

# Copyright:    Public domain.
# Filename:     CM_BODY_ATTITUDE.s
# Purpose:      Part of the source code for Comanche, build 055. It
#               is part of the source code for the Command Module’s
#               (CM) Apollo Guidance Computer (AGC), Apollo 11.
# Assembler:    yaYUL
# Reference:    pp. 883-889
# Contact:      Ron Burkey <info@sandroid.org>
# Website:      http://www.ibiblio.org/apollo.
# Mod history:  2009-05-12 RSB    Adapted from Colossus249 file of the same
#                name and Comanche 055 page images.
#
# The contents of the « Comanche055″ files, in general, are transcribed
# from scanned documents.
#
#       Assemble revision 055 of AGC program Comanche by NASA
#       2021113-051.  April 1, 1969.
#
#       This AGC program shall also be referred to as Colossus 2A
#
#       Prepared by
#                       Massachussets Institute of Technology
#                       75 Cambridge Parkway
#                       Cambridge, Massachusetts
#
#       under NASA contract NAS 9-4065.
#
# Refer directly to the online document mentioned above for further
# information.  Please report any errors to info@sandroid.org.

# Page 883
BANK    35

SETLOC    BODYATT
BANK

COUNT    37/CMBAT

# PDL 12D – 15D SAFE.

# VALUE OF GIMBAL AND BODY ANGLES VALID AT PIP TIME ARE SAVED DURING  READACCS.

EBANK=    RTINIT        # LET INTERPRETER SET EB

CM/POSE        TC    INTPRET        # COME HERE VIA AVEGEXIT.

SETPD    VLOAD
0
VN        # KVSCALE = (12800/ .3048) /2VS
VXSC    PDVL
-KVSCALE    # KVSCALE = .81491944
UNITW        # FULL UNIT VECTOR
VXV    VXSC        # VREL = V – WE*R
UNITR
KWE
VAD    STADR
STORE    -VREL        # SAVE FOR ENTRY GUIDANCE.    REF COORDS

UNIT    LXA,1
36D        # ABVAL( -VREL) TO X1
STORE    UXA/2        # -UVREL            REF COORDS

VXV    VCOMP
UNITR        # .5 UNIT            REF COORDS
UNIT    SSP        # THE FOLLOWING IS TO PROVIDE A STABLE
S1        # UN FOR THE END OF THE TERMINAL PHASE.
SPVQUIT        DEC    .019405        # 1000/ 2 VS
TIX,1    VLOAD        # IF V-VQUIT POS, BRANCH.
CM/POSE2    # SAME UYA IN OLDUYA
OLDUYA        # OTHERWISE CONTINUE TO USE OLDUYA
CM/POSE2    STORE    UYA/2        #                REF COORDS

STORE    OLDUYA        # RESTORE, OR SAVE AS CASE MAY BE.

VXV    VCOMP
UXA/2        # FINISH OBTAINING TRAJECTORY TRIAD.
VSL1
STORE    UZA/2        #                REF COORDS

6 Responses sur “Exclusif : le code source d’Apollo 11 !”

  1. Louis dit:
    juillet 24th, 2009 at 11 h 05 min

    Arf c’est de l’assembleur :-)

    Bravo aux gars qui codaient avec ça à l’époque (c’est vraiment immonde à programmer ce genre de trucs).

  2. jmplanche dit:
    juillet 24th, 2009 at 12 h 44 min

    Et tu serais surpris de savoir la puissance de calcul de l’ordinateur de bord d’un Concorde … 0 Mhz, 0 RAM.
    (en fait, il y a eu ensuite une HP 41CV qui a ensuite été rajouté, surtout pour aider aux calculs de consommation ;-)
    Mais à l’époque, il y avait de « vrais » pilotes, pas des gars perdus quand une panne informatique arrive. (d’ailleurs la note de 3 syndicats d’Air-France est TRES intéressante et prépare une belle grève à la rentrée si cela continue comme ça)
    Ce qui n’empêche que malgré certains soucis, c’était le plus bel avion au monde …

  3. Louis dit:
    juillet 24th, 2009 at 14 h 31 min

    @jmplanche : Tu es sûr que c’étaient eux qui faisaient les calculs ? C’était pas le mécanicien naviguant qui les faisaient ?

  4. DAM dit:
    juillet 24th, 2009 at 16 h 59 min

    @jmplanche : aaahhhh le Concorde… mon regret : n’avoir jamais volé dedans. Le plus bel oiseau de l’aéronautique nous ait donné.

  5. stan dit:
    juillet 24th, 2009 at 17 h 52 min

    vu que j’ai les vertiges dans n’importe quel avion (Caroline si tu nous écoutes)
    je vous le laisse … le concorde

  6. keeg dit:
    juillet 31st, 2009 at 4 h 17 min

    C’est flippant. Quand on voit le nombre de ligne de code qu’il nous faut nous pour faire des bricoles^^

Laissez une réponse

Bad Behavior has blocked 3553 access attempts in the last 7 days.

© Copyright 2012 Stan&Dam, le blog techno-entertainment
Moteur par WordPress | Valid CSS | XHTML Sur des décors de : styleshout | Colourisé et Customisé par: STAN