Developpez.com - Rubrique Assembleur

Le Club des Développeurs et IT Pro

Code source assembleur à télécharger

Le programme de l'ordinateur de guidage d'Apollo 11

Le 2018-04-07 15:34:09, par forum, Robot Forum
Bonjour,

Je vous propose un nouvel élément à télécharger : Code source de l'ordinateur de guidage d'Apollo11

Le 20 juillet 1969, le sol de notre satellite naturel a été foulé pour la première fois par deux humains, Neil Armstrong et Buzz Aldrin. Ce fut l'apothéose d'une course effrénée à la conquête spatiale entre les États-Unis d'Amérique et l'Union Soviétique. Le vaisseau spatial utilisé lors de cette mission historique fut Apollo 11, propulsé par une fusée Saturn V depuis le Centre Spatial Kennedy. Le premier pas fut retransmis par les télévisions du monde entier, ainsi que de nombreuses images du séjour d'un peu plus de 21 heures des deux hommes sur le sol lunaire.

Le projet d'envoi d'astronautes sur la Lune fut un exploit non seulement humain, mais aussi technologique. Ainsi, le vaisseau était équipé d'un ordinateur de guidage, AGC (Apollo Guidance Computer), dont le processeur était l'un des tout premiers à être composé de circuits intégrés. Il possédait également une mémoire morte de 72 Kb, contenant les programmes, et une mémoire vîve de travail de 4 Kb - il pesait toutefois plus de 30 kg.



L'AGC permit une mise en orbite parfaite du vaisseau autour de la Lune, la séparation du module lunaire et l'alunissage (un peu chaotique mais finalement couronné de succès), le redécollage du module lunaire et son réarrimage au module de commande, et finalement le retour des astronautes dans l'océan Pacifique après 195 heures de mission.

En 2009, pour commémorer les 40 ans de la mission, une partie du code source du programme de guidage du vaisseau Apollo 11 fut publiée. Cette fois, c'est son entièreté que l'on peut trouver sur GitHub : COLOSSUS, le programme du module de commande, et LUMINARY, celui du module lunaire. Le logiciel de l'AGC fut conçu au MIT (Massachussets Institute of Technology), sous la houlette de Margaret Hamilton.

Ce qui est amusant, c'est que vous pouvez remonter d'eventuels bugs que vous trouveriez dans le programme (certains ont d'ailleurs été dénichés récemment !), et même faire des suggestions d'améliorations !



Qu'en pensez-vous ?
  Discussion forum
8 commentaires
  • chrtophe
    Responsable Systèmes
    Je pense que c'est du spécifique

    Le point remarquable est que c'est le 1er ordinateur qui utilise des circuits intégrés.
  • Kannagi
    Expert éminent sénior
    Le code reste incompréhensible dans les grandes ligne (sauf pour quelque mnémonique) vu qu'il y'a aucune doc sur l'assembleur utilisé , ni sur le fonctionnement de celui ci et comme j'ai pas de boule de cristal

    Je sais que Ariane 5 utilisé le M68020 (le 'même' que l'Atari ST , Amiga , Mega Drive , Neo Geo etc etc ) , cela aurait était plus cool d'avoir ce genre de code source sous la main
  • cihinel
    Futur Membre du Club
    Super !
    Mes seules connaissance en assembleur, le 6510 du commodore 64, mais les missions Apollo et leurs petits ordinateurs de 74 kB, quel exploit ! Quelle grande époque, j'étais toute petite et mon père me racontait tout ce rêve !.
    Merci à vous, j'ai téléchargé et lu avec émerveillement quelques lignes.

    Drôle, le programme 19 se nomme STAR TRKR !!!

    Tordant les commentaires de ligne :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    		CAF	CODE500		# ASTRONAUT:	PLEASE CRANK THE
    		TC	BANKCALL	#		SILLY THING AROUND
    
    		CAF	V06N43*		# ASTRONAUT:  NOW LOOK WHERE YOU ENDED UP
    
    		TC	BANKCALL	# TEMPORARY, I HOPE HOPE HOPE
    		CADR	STOPRATE	# TEMPORARY, I HOPE HOPE HOPE
  • Code Rom
    Membre habitué
    Super merci d'avoir mis ça en téléchargement c'est sympa

    ps : "Dernière modification par Alcatîz ; 07/04/2018 à 15h12. Motif: orthographe " et bim , pourtant je fais attention mais bon pas mon fort l'orthographe c'est comme ça ^^
  • Envoyé par Kannagi
    Le code reste incompréhensible dans les grandes ligne (sauf pour quelque mnémonique) vu qu'il y'a aucune doc sur l'assembleur utilisé , ni sur le fonctionnement de celui ci et comme j'ai pas de boule de cristal

    Je sais que Ariane 5 utilisé le M68020 (le 'même' que l'Atari ST , Amiga , Mega Drive , Neo Geo etc etc ) , cela aurait était plus cool d'avoir ce genre de code source sous la main
    C'est mieux que ça pour Ariane 5 puisque le code de la case à équipements est écrit en Ada. Qu'importe alors le processeur Motorola ou pas.
  • jdddeschamps
    Membre régulier
    Je ne le trouve pas sur github...
  • jdddeschamps
    Membre régulier