Le code source d’Apollo 11 est dispo

Le code source d’Apollo 11, qui a permis l’alunissage historique de 1969, a été principalement dirigé par Margarette Hamilton, pionnière de l’ingénierie logicielle. Composé d’environ 130 000 lignes (en assembleur) et truffé de commentaires humoristiques, ce programme tournait sur un ordinateur extrêmement limité dont la mémoire était littéralement tissée à la main par des ouvrières :winking_face_with_tongue:. Bien qu’il soit disponible dans le domaine public sur GitHub depuis des années, il continue d’être analysé, notamment par des intelligences artificielles qui y redécouvrent des anomalies déjà identifiées par les ingénieurs d’époque. Cette architecture robuste a prouvé son efficacité en gérant des surcharges critiques grâce à une priorisation rigoureuse des tâches lors de la descente lunaire.

[!Note]
Pour ceux qui ont fait un peu d’assembleur dans leur jeunesse, comme moi, ça va leur parler !

# RESTRICTIONS:
#	1/ACCS MUST BE CALLED BY BANKCALL
#	EBANK IS SET TO 6, BUT NOT RESTORED.
# Page 1486

		BANK	20
		SETLOC	DAPS3
		BANK

		COUNT*	$$/DAPAO

		EBANK=	AOSQ

# ENTRY IS THROUGH 1/ACCJOB OR 1/ACCSET WHEN 1/ACCS IS TO BE DONE AS A SEPARATE NOVAC JOB.
# IT IS POSSIBLE FOR MORE THAN ONE OF THESE JOBS TO BE SET UP CONCURRENTLY.  HOWEVER, SINCE THERE IS NO CHECK OF
# NEWJOB, A SECOND MANIFESTATION CANNOT BE STARTED UNTIL THE FIRST IS COMPLETED.

1/ACCSET	CAF	ZERO		# ENTRY FROM FRESH START/RESTART CODING.
		TS	AOSQ		#	NULL THE OFFSET ESTIMATES FOR 1/ACCS.
		TS	AOSR
		TS	ALPHAQ		#	NULL THE OFFSET ESTIMATES FOR DOWNLIST
		TS	ALPHAR

1/ACCJOB	TC	BANKCALL	# 1/ACCS ASSUMES ENTRY VIA BANKCALL.
		CADR	1/ACCS 	+2	# SKIP EBANK SETTING.

		TC	ENDOFJOB

1/ACCS		CA	EBANK6		# ***** EBANK SET BUT NOT RESTORED *****
		TS	EBANK

		TC	MAKECADR	# SAVE RETURN SO THAT BUF2 MAY BE USED
		TS	ACCRETRN