Source Code
These source-code files are part of a reconstructed copy of Comanche 51, the
initial release (though not the final mission release) of the Apollo 11
Command Module (CM) Apollo Guidance Computer (AGC) software. The flown, final
release was Comanche 55. The reconstruction is believed to be exactly accurate,
but in the absence of an actual Apollo-era listing of Comanche 51, some
explanation of the reconstruction process is needed to insure confidence in
that accuracy.
The starting point was the source code of Comanche 55, whose original source code is available. Comanche 55 source code was then modified by undoing changes known to have been made between revisions 51 and 55. The most-significant steps involved reverting changes related to the R-2 lunar potential model, the details of which were known from the previous, separate, independent reconstruction of the Apollo 10 Lunar Module software Luminary 69/2. The now-reconstructed Comanche 51 source code was verified by assembling it and checking that the assembled code had the expected known-correct memory-bank checksums. Note that page numbers in the reconstructed code match those on the Comanche 55 or Luminary 69 printouts, although the source code would likely have different page numbers in a contemporary Comanche 51 listing. Annotations that were not present in the contemporary source code have been added to the reconstructed code to justify each change relative to Comanche 55. Here's a guide to some of the Apollo documentation relevant to those annotations:
Comments expected to have been present in the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC Project's GitHub repository. |
051394,000002: ## Copyright: Public domain.
051395,000003: ## Filename: SINGLE_PRECISION_SUBROUTINES.agc
051396,000004: ## Purpose: A section of Comanche revision 051.
051397,000005: ## It is part of the reconstructed source code for the
051398,000006: ## original release of the flight software for the Command
051399,000007: ## Module's (CM) Apollo Guidance Computer (AGC) for Apollo 11.
051400,000008: ## The code has been recreated from a copy of Comanche 055. It
051401,000009: ## has been adapted such that the resulting bugger words
051402,000010: ## exactly match those specified for Comanche 51 in NASA drawing
051403,000011: ## 2021153D, which gives relatively high confidence that the
051404,000012: ## reconstruction is correct.
051405,000013: ## Reference: p. 1207
051406,000014: ## Assembler: yaYUL
051407,000015: ## Contact: Ron Burkey <info@sandroid.org>.
051408,000016: ## Website: www.ibiblio.org/apollo/index.html
051409,000017: ## Mod history: 2019-07-30 MAS Created from Comanche 55.
051410,000018:
Page 1207 |
051412,000020: 5074 BLOCK 02
051413,000021:
051414,000022: # SINGLE PRECISION SINE AND COSINE
051415,000023:
051416,000024: 5074 COUNT 02/INTER
051417,000025:
051418,000026: 5074 65002 SPCOS AD HALF # ARGUMENTS SCALED AT PI
051419,000027: 5075 55075 SPSIN TS TEMK
051420,000028: 5076 15100 TCF SPT
051421,000029: 5077 41075 CS TEMK
051422,000030: 5100 60000 SPT DOUBLE
051423,000031: 5101 55075 TS TEMK
051424,000032: 5102 15113 TCF POLLEY
051425,000033: 5103 57075 XCH TEMK
051426,000034: 5104 51075 INDEX TEMK
051427,000035: 5105 65000 AD LIMITS
051428,000036: 5106 40000 COM
051429,000037: 5107 61075 AD TEMK
051430,000038: 5110 55075 TS TEMK
051431,000039: 5111 15113 TCF POLLEY
051432,000040: 5112 15131 TCF ARG90
051433,000041: 5113 00006 POLLEY EXTEND
051434,000042: 5114 71075 MP TEMK
051435,000043: 5115 55076 TS SQ
051436,000044: 5116 00006 EXTEND
051437,000045: 5117 75047 MP C5/2
051438,000046: 5120 67706 AD C3/2
051439,000047: 5121 00006 EXTEND
051440,000048: 5122 71076 MP SQ
051441,000049: 5123 67666 AD C1/2
051442,000050: 5124 00006 EXTEND
051443,000051: 5125 71075 MP TEMK
051444,000052: 5126 20001 DDOUBL
051445,000053: 5127 55075 TS TEMK
051446,000054: 5130 00002 TC Q
051447,000055: 5131 50000 ARG90 INDEX A
051448,000056: 5132 45000 CS LIMITS
051449,000057: 5133 00002 TC Q # RESULT SCALED AT 1
051450,000058:
051451,000059: # SPROOT WAS DELETED IN REV 51 OF MASTER. ASS. CONT. HAS CARDS.
051452,000060:
051453,000061:
051454,000062:
051455,000063:
End of include-file SINGLE_PRECISION_SUBROUTINES.agc. Parent file is MAIN.agc