Source Code
These source-code files are part of a reconstructed copy of Comanche 45/2 (AKA Manche45 revision 2),
the final, flown mission release of the Apollo 10 Command Module (CM) Apollo Guidance
Computer (AGC) software. Comanche 45/2 was preceded by Comanche 44 and Comanche 45. The
reconstruction is believed to be exactly accurate, but in the absence of an actual Apollo-era
listing of Comanche 45/2, some explanation of the reconstruction process is needed
to insure confidence in that accuracy.
The starting point was the source code of Comanche 45 (itself previously accurately reconstructed). Comanche 45 source code was then modified by incorporating changes known from contemporary documentation to have been made between revisions 45 and 45/2. The now-reconstructed Comanche 45/2 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:
|
005356,000002: ## Copyright: Public domain.
005357,000003: ## Filename: INTERRUPT_LEAD_INS.agc
005358,000004: ## Purpose: A section of Manche45 revision 2.
005359,000005: ## It is part of the reconstructed source code for the
005360,000006: ## final, flown release of the flight software for the Command
005361,000007: ## Module's (CM) Apollo Guidance Computer (AGC) for Apollo 10.
005362,000008: ## The code has been recreated from a copy of Comanche 055. It
005363,000009: ## has been adapted such that the resulting bugger words
005364,000010: ## exactly match those specified for Manche 45/2 in NASA drawing
005365,000011: ## 2021153D, which gives relatively high confidence that the
005366,000012: ## reconstruction is correct.
005367,000013: ## Assembler: yaYUL
005368,000014: ## Contact: Ron Burkey <info@sandroid.org>.
005369,000015: ## Website: www.ibiblio.org/apollo/index.html
005370,000016: ## Mod history: 2020-12-24 MAS Created from Comanche 45.
005371,000017:
Page 131 |
005373,000019: 4000 SETLOC 4000
005374,000020:
005375,000021: 4000 COUNT 02/RUPTS
005376,000022:
005377,000023: 4000 00004 INHINT # GO
005378,000024: 4001 34054 CAF GOBB
005379,000025: 4002 56006 XCH BBANK
005380,000026: 4003 12526 TCF GOPROG
005381,000027:
005382,000028: 4004 52011 DXCH ARUPT # T6RUPT
005383,000029: 4005 00006 EXTEND
005384,000030: 4006 31311 DCA T6LOC
005385,000031: 4007 52006 DTCB
005386,000032:
005387,000033: 4010 52011 DXCH ARUPT # T5RUPT
005388,000034: 4011 40030 CS TIME5
005389,000035: 4012 65036 AD .5SEC
005390,000036: 4013 14065 TCF T5RUPT
005391,000037:
005392,000038: 4014 52011 DXCH ARUPT # T3RUPT
005393,000039: 4015 34055 CAF T3RPTBB
005394,000040: 4016 56006 XCH BBANK
005395,000041: 4017 13416 TCF T3RUPT
005396,000042:
005397,000043: 4020 52011 DXCH ARUPT # T4RUPT
005398,000044: 4021 34063 CAF T4RPTBB
005399,000045: 4022 56006 XCH BBANK
005400,000046: 4023 12000 TCF T4RUPT
005401,000047:
005402,000048: 4024 52011 DXCH ARUPT # KEYRUPT1
005403,000049: 4025 34056 CAF KEYRPTBB
005404,000050: 4026 56006 XCH BBANK
005405,000051: 4027 13673 TCF KEYRUPT1
005406,000052:
005407,000053: 4030 52011 DXCH ARUPT # KEYRUPT2
005408,000054: 4031 34057 CAF MKRUPTBB
005409,000055: 4032 56006 XCH BBANK
005410,000056: 4033 12104 TCF MARKRUPT
005411,000057:
005412,000058: 4034 52011 DXCH ARUPT # UPRUPT
005413,000059: 4035 34056 CAF UPRPTBB
005414,000060: 4036 56006 XCH BBANK
005415,000061: 4037 13716 TCF UPRUPT
005416,000062:
005417,000063: 4040 52011 DXCH ARUPT # DOWNRUPT
005418,000064: 4041 34060 CAF DWNRPTBB
005419,000065: 4042 56006 XCH BBANK
005420,000066: 4043 13521 TCF DODOWNTM
005421,000067:
005422,000068: 4044 52011 DXCH ARUPT # RADAR RUPT
Page 132 |
005424,000070: 4045 34061 CAF RDRPTBB
005425,000071: 4046 56006 XCH BBANK
005426,000072: 4047 12504 TCF VHFREAD
005427,000073:
005428,000074: 4050 52011 DXCH ARUPT # HAND CONTROL RUPT
005429,000075: 4051 34062 CAF HCRUPTBB
005430,000076: 4052 56006 XCH BBANK
005431,000077: 4053 15336 TCF RESUME +3 # NOT USED
005432,000078:
005433,000079: 4054 E3,1400 EBANK= LST1 # RESTART USES E0,E3
005434,000080: 4054 12063 GOBB BBCON GOPROG
005435,000081:
005436,000082: 4055 E3,1400 EBANK= LST1
005437,000083: 4055 02063 T3RPTBB BBCON T3RUPT
005438,000084:
005439,000085: 4056 0073 EBANK= KEYTEMP1
005440,000086: 4056 16060 KEYRPTBB BBCON KEYRUPT1
005441,000087:
005442,000088: 4057 E7,1725 EBANK= MRKBUF1
005443,000089: 4057 16067 MKRUPTBB BBCON MARKRUPT
005444,000090:
005445,000091: 4060 4056 UPRPTBB = KEYRPTBB
005446,000092:
005447,000093: 4060 0340 EBANK= DNTMBUFF
005448,000094: 4060 12060 DWNRPTBB BBCON DODOWNTM
005449,000095:
005450,000096: 4061 E7,1603 EBANK= DATATEST
005451,000097: 4061 56067 RDRPTBB BBCON VHFREAD
005452,000098:
005453,000099: 4062 0025 EBANK= TIME1
005454,000100: 4062 04060 HCRUPTBB BBCON RESUME # NOT USED
005455,000101:
005456,000102: 4063 1302 EBANK= DSRUPTSW
005457,000103: 4063 14062 T4RPTBB BBCON T4RUPT
005458,000104:
005459,000105: 4064 0025 EBANK= TIME1
005460,000106: 4064 04060 T5RPTBB BBCON T5RUPT
005461,000107:
005462,000108: 4065 00006 T5RUPT EXTEND
005463,000109: 4066 65337 BZMF NOQBRSM
005464,000110: 4067 00006 EXTEND
005465,000111: 4070 31313 DCA T5LOC
005466,000112: 4071 52006 DTCB
005467,000113:
005468,000114:
005469,000115:
End of include-file INTERRUPT_LEAD_INS.agc. Parent file is MAIN.agc