Source Code
These source-code files are part of a reconstructed copy of Comanche 45, the
second release, though not the final mission release, of the Apollo 10
Command Module (CM) Apollo Guidance Computer (AGC) software. Comanche 45 was
preceded by Comanche 44 and followed by Comanche 45/2 (the flown release). The reconstruction
is believed to be exactly accurate, but in the absence of an actual Apollo-era
listing of Comanche 45, some explanation of the reconstruction process is needed
to insure confidence in that accuracy.
The starting point was the source code of Comanche 44 (itself previously accurately reconstructed). Comanche 44 source code was then modified by incorporating changes known from contemporary documentation to have been made between revisions 44 and 45. The now-reconstructed Comanche 45 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 tend to match those in the Comanche 55, the most-similar revision of Comanche for which we have access to an actual non-reconstructed hardcopy; the source code would likely have different page numbers in a contemporary Comanche 45 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 44. Here's a guide to the Apollo documentation referenced in 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. |
000020,000002: ## Copyright: Public domain.
000021,000003: ## Filename: CONTRACT_AND_APPROVALS.agc
000022,000004: ## Purpose: A section of Comanche revision 045.
000023,000005: ## It is part of the reconstructed source code for the
000024,000006: ## second release of the flight software for the Command
000025,000007: ## Module's (CM) Apollo Guidance Computer (AGC) for Apollo 10.
000026,000008: ## The code has been recreated from a copy of Comanche 055. It
000027,000009: ## has been adapted such that the resulting bugger words
000028,000010: ## exactly match those specified for Comanche 45 in NASA drawing
000029,000011: ## 2021153D, which gives relatively high confidence that the
000030,000012: ## reconstruction is correct.
000031,000013: ## Assembler: yaYUL
000032,000014: ## Contact: Ron Burkey <info@sandroid.org>.
000033,000015: ## Website: www.ibiblio.org/apollo/index.html
000034,000016: ## Mod history: 2020-12-06 MAS Created from Comanche 44.
000035,000017: ## 2020-12-24 RSB Added justifying annotations related to
000036,000018: ## Mike's reconstruction.
000037,000019:
Page 1 |
000039,000021:
Reconstruction: We don't know of any surviving specific contemporary documentation supporting the material in this log section, absent an Apollo-era assembly listing of it. The section contains only comments and no executable code. We have simply modeled the Comanche 45 version of it on the corresponding log section of Comanche 44, but have changed a handful of items in ways that seem sensible to us. The annotations below thus provide our common-sense reasoning on the matter, rather than justification from contemporary documentation. |
000048,000030:
000049,000031: # ************************************************************************
000050,000032: # * *
000051,000033: # * THIS AGC PROGRAM SHALL ALSO BE REFERRED TO AS: *
000052,000034: # * *
000053,000035: # * *
000054,000036: # * COLOSSUS 2 *
000055,000037: # * *
000056,000038: # * *
000057,000039: # * THIS PROGRAM IS INTENDED FOR USE IN THE CM AS SPECIFIED *
000058,000040: # * IN REPORT R-577. THIS PROGRAM WAS PREPARED UNDER DSR *
000059,000041: # * PROJECT 55-23870, SPONSORED BY THE MANNED SPACECRAFT *
000060,000042: # * CENTER OF THE NATIONAL AERONAUTICS AND SPACE *
000061,000043: # * ADMINISTRATION THROUGH CONTRACT NAS 9-4065 WITH THE *
000062,000044: # * INSTRUMENTATION LABORATORY, MASSACHUSETTS INSTITUTE OF *
000063,000045: # * TECHNOLOGY, CAMBRIDGE, MASS. *
000064,000046: # * *
000065,000047: # ************************************************************************
000066,000048:
Reconstruction: The signature names and titles below are not
actually known for certain. Because Comanche 44 through 45 were separated by
less than 2 months in time (see below), we assume that personnel turnover
in that limited period of time would be unlikely. Hence we have retained the
same names and titles for Comanche 44 as for Comanche 45. Also, these are
the same names and titles as appear in Comanche 55.
On the other hand, the DATE fields below are more speculative, and are very likely to be wrong but unlikely to be too wrong. In the previous reconstruction of Comanche 44, it was concluded as a rule of thumb that the signoff dates listed in the CONTRACT AND APPROVALS section should precede the date of release of the software to manufacturing by about 3 weeks. To determine the date of release to manufacturing, the best information we're aware of comes from MIT's Role in Project Apollo, Final Report, Table 4-II, where we find the Comanche 45 was released in March 1969, and that Comanche 44 was released in February 1969. This is a bit non-specific, but if we interpret Comanche 45's release date as March 15 and subtract 3 weeks, we tentatively arrive at a signoff date of February 21. That happened to be a Friday in 1969. |
000089,000071: # SUBMITTED: MARGARET H. HAMILTON DATE: 21 FEB 69
000090,000072: # M.H.HAMILTON, COLOSSUS PROGRAMMING LEADER
000091,000073: # APOLLO GUIDANCE AND NAVIGATION
000092,000074:
000093,000075: # APPROVED: DANIEL J. LICKLY DATE: 21 FEB 69
000094,000076: # D.J.LICKLY, DIRECTOR, MISSION PROGRAM DEVELOPMENT
000095,000077: # APOLLO GUIDANCE AND NAVIGATION PROGRAM
000096,000078:
000097,000079: # APPROVED: FRED H. MARTIN DATE: 21 FEB 69
000098,000080: # FRED H. MARTIN, COLOSSUS PROJECT MANGER
000099,000081: # APOLLO GUIDANCE AND NAVIGATION PROGRAM
000100,000082:
000101,000083: # APPROVED: NORMAN E. SEARS DATE: 21 FEB 69
000102,000084: # N.E. SEARS, DIRECTOR, MISSION DEVELOPMENT
000103,000085: # APOLLO GUIDANCE AND NAVIGATION PROGRAM
000104,000086:
000105,000087: # APPROVED: RICHARD H. BATTIN DATE: 21 FEB 69
000106,000088: # R.H. BATTIN, DIRECTOR, MISSION DEVELOPMENT
000107,000089: # APOLLO GUIDANCE AND NAVIGATION PROGRAM
000108,000090:
000109,000091: # APPROVED: DAVID G. HOAG DATE: 21 FEB 69
000110,000092: # D.G. HOAG, DIRECTOR
000111,000093: # APOLLO GUIDANCE AND NAVIGATION PROGRAM
000112,000094:
000113,000095: # APPROVED: RALPH R. RAGAN DATE: 21 FEB 69
000114,000096: # R.R. RAGAN, DEPUTY DIRECTOR
000115,000097: # INSTRUMENTATION LABORATORY
000116,000098:
End of include-file CONTRACT_AND_APPROVALS.agc. Parent file is MAIN.agc