Source Code
![]() |
These source-code files were from the printout at the MIT Museum, with many thanks
to Deborah Douglas, the Museum's Curator of Science and Technology, for releasing
it to us. The printout was digitally photographed by Paul Fjeld. A team of
volunteers transcribed the source code manually from these images or, where
appropriate, modified already-transcribed but similar source Colossus 249 (Apollo 9)
source code to agree with the images from the printout. Note that the page images
presented online are of reduced quality, and that higher-quality images
are available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 055 OF AGC PROGRAM COMANCHE BY NASA 2021113-051 10:28 APR. 1,1969Note that the date is the date of the printout, not the date of the program revision. |
001186,000002: ## Copyright: Public domain.
001187,000003: ## Filename: TAGS_FOR_RELATIVE_SETLOC.agc
001188,000004: ## Purpose: Part of the source code for Colossus 2A, AKA Comanche 055.
001189,000005: ## It is part of the source code for the Command Module's (CM)
001190,000006: ## Apollo Guidance Computer (AGC), for Apollo 11.
001191,000007: ## Assembler: yaYUL
001192,000008: ## Contact: Ron Burkey <info@sandroid.org>.
001193,000009: ## Website: www.ibiblio.org/apollo.
001194,000010: ## Mod history: 2009-05-05 RSB Adapted from the Colossus249/ file of the
001195,000011: ## same name, using Comanche055 page images.
001196,000012: ## 2009-05-20 RSB Corrected R32 -> R31.
001197,000013: ##
001198,000014: ## This source code has been transcribed or otherwise adapted from digitized
001199,000015: ## images of a hardcopy from the MIT Museum. The digitization was performed
001200,000016: ## by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many
001201,000017: ## thanks to both. The images (with suitable reduction in storage size and
001202,000018: ## consequent reduction in image quality as well) are available online at
001203,000019: ## www.ibiblio.org/apollo. If for some reason you find that the images are
001204,000020: ## illegible, contact me at info@sandroid.org about getting access to the
001205,000021: ## (much) higher-quality images which Paul actually created.
001206,000022: ##
001207,000023: ## Notations on the hardcopy document read, in part:
001208,000024: ##
001209,000025: ## Assemble revision 055 of AGC program Comanche by NASA
001210,000026: ## 2021113-051. 10:28 APR. 1, 1969
001211,000027: ##
001212,000028: ## This AGC program shall also be referred to as
001213,000029: ## Colossus 2A
001214,000030:
![]() |
Page 27 |
001216,000032: # TAGS FOR RELATIVE SETLOC AND BLANK BANK CARDS
001217,000033:
001218,000034: ??????? FIXED MEMORY 120000 - 167777
001219,000035: ??????? COUNT BANKSUM
001220,000036:
001221,000037: # MODULE 1 CONTAINS BANKS 0 THROUGH 5
001222,000038:
001223,000039: 4000 BLOCK 02
001224,000040: 4000 FFTAG1 EQUALS
001225,000041: 4000 FFTAG2 EQUALS
001226,000042: 4000 FFTAG3 EQUALS
001227,000043: 4000 FFTAG4 EQUALS
001228,000044: 4000 FFTAG7 EQUALS
001229,000045: 4000 FFTAG8 EQUALS
001230,000046: 4000 FFTAG9 EQUALS
001231,000047: 4000 FFTAG10 EQUALS
001232,000048: 4000 FFTAG12 EQUALS
001233,000049: 4000 P30SUBS EQUALS
001234,000050: 4000 STOPRAT EQUALS
001235,000051: 4000 P23S EQUALS
001236,000052: 4000 BNKSUM 02
001237,000053:
001238,000054: 6000 BLOCK 03
001239,000055: 6000 FFTAG5 EQUALS
001240,000056: 6000 FFTAG6 EQUALS
001241,000057: 6000 DAPS9 EQUALS
001242,000058: 6000 FFTAG13 EQUALS
001243,000059: 6000 BNKSUM 03
001244,000060:
001245,000061: 00,2000 BANK 00
001246,000062: 00,2000 DLAYJOB EQUALS
001247,000063: 00,2000 BNKSUM 00
001248,000064:
001249,000065: 01,2000 BANK 01
001250,000066: 01,2000 RESTART EQUALS
001251,000067: 01,2000 BNKSUM 01
001252,000068:
001253,000069: 04,2000 BANK 4
001254,000070: 04,2000 VERB37 EQUALS
001255,000071: 04,2000 CONICS1 EQUALS
001256,000072: 04,2000 PINBALL4 EQUALS
001257,000073: 04,2000 CSI/CDH1 EQUALS
001258,000074: 04,2000 INTPRET2 EQUALS
001259,000075: 04,2000 IMUCAL1 EQUALS
001260,000076:
![]() |
Page 28 |
001262,000078:
001263,000079: 04,2000 STBLEORB EQUALS
001264,000080: 04,2000 E/PROG EQUALS
001265,000081: 04,2000 MIDDGIM EQUALS
001266,000082:
001267,000083: 04,2000 BNKSUM 04
001268,000084:
001269,000085: 05,2000 BANK 5
001270,000086: 05,2000 FRANDRES EQUALS
001271,000087: 05,2000 DOWNTELM EQUALS
001272,000088: 05,2000 DAPMASS EQUALS
001273,000089: 05,2000 CDHTAG EQUALS
001274,000090: 05,2000 BNKSUM 05
001275,000091:
001276,000092: # MODULE 2 CONTAINS BANKS 6 THROUGH 13
001277,000093:
001278,000094: 06,2000 BANK 6
001279,000095: 06,2000 IMUCOMP EQUALS
001280,000096: 06,2000 T4RUP EQUALS
001281,000097: 06,2000 IMUCAL2 EQUALS
001282,000098: 06,2000 CSIPROG EQUALS
001283,000099: 06,2000 BNKSUM 06
001284,000100:
001285,000101: 07,2000 BANK 7
001286,000102: 07,2000 SXTMARKE EQUALS
001287,000103: 07,2000 R02 EQUALS
001288,000104: 07,2000 MODESW EQUALS
001289,000105: 07,2000 XANG EQUALS
001290,000106: 07,2000 KEYRUPT EQUALS
001291,000107: 07,2000 CSIPROG6 EQUALS
001292,000108: 07,2000 BNKSUM 07
001293,000109:
001294,000110: 10,2000 BANK 10
001295,000111: 10,2000 DISPLAYS EQUALS
001296,000112: 10,2000 PHASETAB EQUALS
001297,000113: 10,2000 COMGEOM2 EQUALS
001298,000114: 10,2000 SXTMARK1 EQUALS
001299,000115: 10,2000 P60S4 EQUALS
001300,000116: 10,2000 OPTDRV EQUALS
001301,000117: 10,2000 CSIPROG8 EQUALS
001302,000118: 10,2000 BNKSUM 10
001303,000119:
001304,000120: 11,2000 BANK 11
001305,000121: 11,2000 ORBITAL EQUALS
001306,000122: 11,2000 ORBITAL1 EQUALS # CONSTANTS
001307,000123:
![]() |
Page 29 |
001309,000125:
001310,000126: 11,2000 INTVEL EQUALS
001311,000127: 11,2000 S52/2 EQUALS
001312,000128: 11,2000 CSIPROG5 EQUALS
001313,000129: 11,2000 INTINIT1 EQUALS
001314,000130: 11,2000 BNKSUM 11
001315,000131:
001316,000132: 12,2000 BANK 12
001317,000133: 12,2000 CONICS EQUALS
001318,000134: 12,2000 CSIPROG2 EQUALS
001319,000135: 12,2000 CSI/CDH2 EQUALS
001320,000136: 12,2000 MODCHG2 EQUALS
001321,000137: 12,2000 BNKSUM 12
001322,000138:
001323,000139: 13,2000 BANK 13
001324,000140: 13,2000 P76LOC EQUALS
001325,000141: 13,2000 LATLONG EQUALS
001326,000142: 13,2000 INTINIT EQUALS
001327,000143: 13,2000 SR52/1 EQUALS
001328,000144: 13,2000 ORBITAL2 EQUALS
001329,000145: 13,2000 CDHTAGS EQUALS
001330,000146: 13,2000 E/PROG1 EQUALS
001331,000147: 13,2000 MODCHG3 EQUALS
001332,000148: 13,2000 BNKSUM 13
001333,000149:
001334,000150: # MODULE 3 CONTAINS BANKS 14 THROUGH 21
001335,000151:
001336,000152: 14,2000 BANK 14
001337,000153: 14,2000 STARTAB EQUALS
001338,000154: 14,2000 RT53 EQUALS
001339,000155: 14,2000 P50S1 EQUALS
001340,000156: 14,2000 MEASINC2 EQUALS
001341,000157: 14,2000 CSI/CDH3 EQUALS
001342,000158: 14,2000 BNKSUM 14
001343,000159:
001344,000160: 15,2000 BANK 15
001345,000161: 15,2000 P50S EQUALS
001346,000162: 15,2000 ETRYDAP EQUALS
001347,000163: 15,2000 S52/3 EQUALS
001348,000164: 15,2000 BNKSUM 15
001349,000165:
001350,000166: 16,2000 BANK 16
001351,000167: 16,2000 P40S1 EQUALS
001352,000168:
![]() |
Page 30 |
001354,000170:
001355,000171: 16,2000 DAPROLL EQUALS
001356,000172: 16,2000 P50S2 EQUALS
001357,000173: 16,2000 P23S1 EQUALS
001358,000174: 16,2000 RTE2 EQUALS
001359,000175: 16,2000 BNKSUM 16
001360,000176:
001361,000177: 17,2000 BANK 17
001362,000178: 17,2000 DAPS4 EQUALS
001363,000179: 17,2000 DAPS5 EQUALS
001364,000180: 17,2000 DAPS7 EQUALS
001365,000181: 17,2000 P50S3 EQUALS
001366,000182: 17,2000 BNKSUM 17
001367,000183:
001368,000184: 20,2000 BANK 20
001369,000185: 20,2000 DAPS6 EQUALS
001370,000186: 20,2000 DAPS1 EQUALS
001371,000187: 20,2000 DAPS2 EQUALS
001372,000188: 20,2000 MANUSTUF EQUALS
001373,000189: 20,2000 R36CM EQUALS
001374,000190: 20,2000 VAC5LOC EQUALS
001375,000191: 20,2000 BNKSUM 20
001376,000192:
001377,000193: 21,2000 BANK 21
001378,000194: 21,2000 DAPS3 EQUALS
001379,000195: 21,2000 MYSUBS EQUALS
001380,000196: 21,2000 KALCMON3 EQUALS
001381,000197: 21,2000 BNKSUM 21
001382,000198:
001383,000199: # MODULE 4 CONTAINS BANKS 22 THROUGH 27
001384,000200:
001385,000201: 22,2000 BANK 22
001386,000202: 22,2000 RTBCODES EQUALS
001387,000203: 22,2000 RTBCODE1 EQUALS
001388,000204: 22,2000 DAPS8 EQUALS
001389,000205: 22,2000 APOPERI EQUALS
001390,000206: 22,2000 P40S5 EQUALS
001391,000207: 22,2000 KALCMON2 EQUALS
001392,000208: 22,2000 KALCMON1 EQUALS
001393,000209: 22,2000 CSIPROG3 EQUALS
001394,000210: 22,2000 BNKSUM 22
001395,000211:
![]() |
Page 31 |
001397,000213:
001398,000214: 23,2000 BANK 23
001399,000215: 23,2000 P20S2 EQUALS
001400,000216: 23,2000 INFLIGHT EQUALS
001401,000217: 23,2000 COMGEOM1 EQUALS
001402,000218: 23,2000 POWFLITE EQUALS
001403,000219: 23,2000 POWFLIT1 EQUALS
001404,000220: 23,2000 RENDGUID EQUALS
001405,000221: 23,2000 POWFLIT2 EQUALS
001406,000222: 23,2000 R30LOC EQUALS
001407,000223: 23,2000 P11FOUR EQUALS
001408,000224: 23,2000 CSIPROG4 EQUALS
001409,000225: 23,2000 BNKSUM 23
001410,000226:
001411,000227: 24,2000 BANK 24
001412,000228: 24,2000 LOADDAP EQUALS
001413,000229: 24,2000 P40S EQUALS
001414,000230: 24,2000 CSIPROG7 EQUALS
001415,000231: 24,2000 BNKSUM 24
001416,000232:
001417,000233: 25,2000 BANK 25
001418,000234: 25,2000 REENTRY EQUALS
001419,000235: 25,2000 CDHTAG1 EQUALS
001420,000236: 25,2000 BNKSUM 25
001421,000237:
001422,000238: 26,2000 BANK 26
001423,000239: 26,2000 INTPRET1 EQUALS
001424,000240: 26,2000 REENTRY1 EQUALS
001425,000241: 26,2000 P60S EQUALS
001426,000242: 26,2000 P60S1 EQUALS
001427,000243: 26,2000 P60S2 EQUALS
001428,000244: 26,2000 P60S3 EQUALS
001429,000245: 26,2000 PLANTIN EQUALS # LUNAR ROT
001430,000246: 26,2000 EPHEM EQUALS
001431,000247: 26,2000 P05P06 EQUALS
001432,000248: 26,2000 26P50S EQUALS
001433,000249: 26,2000 BNKSUM 26
001434,000250:
001435,000251: 27,2000 BANK 27
001436,000252: 27,2000 TOF-FF EQUALS
001437,000253: 27,2000 TOF-FF1 EQUALS
001438,000254: 27,2000 MANUVER EQUALS
001439,000255: 27,2000 MANUVER1 EQUALS
001440,000256:
![]() |
Page 32 |
001442,000258:
001443,000259: 27,2000 VECPT EQUALS
001444,000260: 27,2000 UPDATE1 EQUALS
001445,000261: 27,2000 UPDATE2 EQUALS
001446,000262: 27,2000 R22S1 EQUALS
001447,000263: 27,2000 P60S5 EQUALS
001448,000264: 27,2000 P40S2 EQUALS
001449,000265: 27,2000 BNKSUM 27
001450,000266:
001451,000267: # MODULE 5 CONTAINS BANKS 30 THROUGH 35
001452,000268:
001453,000269: 30,2000 BANK 30
001454,000270: 30,2000 IMUSUPER EQUALS
001455,000271: 30,2000 LOWSUPER EQUALS
001456,000272: 30,2000 FCSTART EQUALS # STANDARD LOCATION FOR THIS. (FOR EXTV8)
001457,000273: 30,2000 LOPC EQUALS
001458,000274: 30,2000 P20S1 EQUALS
001459,000275: 30,2000 P20S6 EQUALS
001460,000276: 30,2000 P40S3 EQUALS
001461,000277: 30,2000 R35A EQUALS
001462,000278: 30,2000 BNKSUM 30
001463,000279:
001464,000280: 31,2000 BANK 31
001465,000281: 31,2000 R35 EQUALS
001466,000282: 31,2000 RT23 EQUALS
001467,000283: 31,2000 P30S1A EQUALS
001468,000284: 31,2000 R34 EQUALS
001469,000285: 31,2000 CDHTAG2 EQUALS
001470,000286: 31,2000 CSIPROG9 EQUALS
001471,000287: 31,2000 R31 EQUALS
001472,000288: 31,2000 P22S EQUALS
001473,000289: 31,2000 RTE3 EQUALS
001474,000290: 31,2000 BNKSUM 31
001475,000291:
001476,000292: 32,2000 BANK 32
001477,000293: 32,2000 MSGSCAN1 EQUALS
001478,000294: 32,2000 RTE EQUALS
001479,000295: 32,2000 DELRSPL1 EQUALS
001480,000296: 32,2000 IMUCAL3 EQUALS
001481,000297: 32,2000 BNKSUM 32
001482,000298:
001483,000299: 33,2000 BANK 33
001484,000300: 33,2000 TESTLEAD EQUALS
001485,000301:
![]() |
Page 33 |
001487,000303:
001488,000304: 33,2000 IMUCAL EQUALS
001489,000305: 33,2000 BNKSUM 33
001490,000306:
001491,000307: 34,2000 BANK 34
001492,000308: 34,2000 P11ONE EQUALS
001493,000309: 34,2000 P20S3 EQUALS
001494,000310: 34,2000 P20S4 EQUALS
001495,000311: 34,2000 RTECON EQUALS
001496,000312: 34,2000 BNKSUM 34
001497,000313:
001498,000314: 35,2000 BANK 35
001499,000315: 35,2000 RTECON1 EQUALS
001500,000316: 35,2000 CSI/CDH EQUALS
001501,000317: 35,2000 P30S1 EQUALS
001502,000318: 35,2000 P30S EQUALS
001503,000319: 35,2000 P17S1 EQUALS
001504,000320: 35,2000 MEASINC3 EQUALS
001505,000321: 35,2000 INTINIT2 EQUALS
001506,000322: 35,2000 BNKSUM 35
001507,000323:
001508,000324: # MODULE 6 CONTAINS BANKS 36 THROUGH 43
001509,000325:
001510,000326: 36,2000 BANK 36
001511,000327: 36,2000 MEASINC EQUALS
001512,000328: 36,2000 MEASINC1 EQUALS
001513,000329: 36,2000 P17S EQUALS
001514,000330: 36,2000 RTE1 EQUALS
001515,000331: 36,2000 S3435LOC EQUALS
001516,000332: 36,2000 BNKSUM 36
001517,000333:
001518,000334: 37,2000 BANK 37
001519,000335: 37,2000 P20S EQUALS
001520,000336: 37,2000 BODYATT EQUALS
001521,000337: 37,2000 RENDEZ EQUALS
001522,000338: 37,2000 SERVICES EQUALS
001523,000339: 37,2000 P11TWO EQUALS
001524,000340: 37,2000 CDHTAG3 EQUALS
001525,000341: 37,2000 BNKSUM 37
001526,000342:
001527,000343: 40,2000 BANK 40
001528,000344: 40,2000 PINSUPER EQUALS
001529,000345:
![]() |
Page 34 |
001531,000347:
001532,000348: 40,2000 SELFSUPR EQUALS
001533,000349: 40,2000 PINBALL1 EQUALS
001534,000350: 40,2000 R36CM1 EQUALS
001535,000351: 40,2000 BNKSUM 40
001536,000352:
001537,000353: 41,2000 BANK 41
001538,000354: 41,2000 PINBALL2 EQUALS
001539,000355: 41,2000 R36LM EQUALS
001540,000356: 41,2000 BNKSUM 41
001541,000357:
001542,000358: 42,2000 BANK 42
001543,000359: 42,2000 SBAND EQUALS
001544,000360: 42,2000 PINBALL3 EQUALS
001545,000361: 42,2000 EXTVBS EQUALS
001546,000362: 42,2000 R36LM1 EQUALS
001547,000363: 42,2000 BNKSUM 42
001548,000364:
001549,000365: 43,2000 BANK 43
001550,000366: 43,2000 SELFCHEC EQUALS
001551,000367: 43,2000 EXTVERBS EQUALS
001552,000368: 43,2000 BNKSUM 43
001553,000369:
001554,000370: 43,2000 26,3334 HI6ZEROS EQUALS ZEROVECS # ZERO VECTOR ALWAYS IN HIGH MEMORY
001555,000371: 43,2000 04,3565 LO6ZEROS EQUALS ZEROVEC # ZERO VECTOR ALWAYS IN LOW MEMORY
001556,000372: 43,2000 26,3332 HIDPHALF EQUALS UNITX
001557,000373: 43,2000 04,3563 LODPHALF EQUALS XUNIT
001558,000374: 43,2000 26,3324 HIDP1/4 EQUALS DP1/4TH
001559,000375: 43,2000 04,3611 LODP1/4 EQUALS D1/4 # 2DEC .25
001560,000376: 43,2000 26,3332 HIUNITX EQUALS UNITX
001561,000377: 43,2000 26,3330 HIUNITY EQUALS UNITY
001562,000378: 43,2000 26,3326 HIUNITZ EQUALS UNITZ
001563,000379: 43,2000 04,3563 LOUNITX EQUALS XUNIT # 2DEC .5
001564,000380: 43,2000 04,3561 LOUNITY EQUALS YUNIT # 2DEC 0
001565,000381: 43,2000 04,3557 LOUNITZ EQUALS ZUNIT # 2DEC 0
001566,000382: 43,2000 11,3763 3/4LOWDP EQUALS 3/4 # 2DEC 3.0 B-2
001567,000383:
001568,000384: 43,2000 30,2000 SBANK= LOWSUPER
001569,000385:
001570,000386: # ROPE-SPECIFIC ASSIGNS OBVIATING NEED TO CHECK COMPUTER FLAG IN DETERMINING(?) INTEGRATION AREA ENTRIES.
001571,000387:
001572,000388: 43,2000 13,3105 OTHPREC EQUALS LEMPREC
001573,000389: 43,2000 13,2760 ATOPOTH EQUALS ATOPLEM
001574,000390: 43,2000 13,2705 ATOPTHIS EQUALS ATOPCSM
001575,000391: 43,2000 0000173 MOONTHIS EQUALS CMOONFLG
001576,000392:
![]() |
Page 35 |
001578,000394:
001579,000395: 43,2000 0000174 MOONOTH EQUALS LMOONFLG
001580,000396: 43,2000 13,2720 MOVATHIS EQUALS MOVEACSM
001581,000397: 43,2000 31,2032 STATEST EQUALS V83CALL # * TEMPORARY
001582,000398: 43,2000 13,3071 THISPREC EQUALS CSMPREC
001583,000399: 43,2000 26,3332 THISAXIS = UNITX
001584,000400: 43,2000 5054 ERASID EQUALS LOW10 # DOWNLINK ERASABLE DUMP ID
001585,000401: 43,2000 6214 DELAYNUM EQUALS THREE
001586,000402:
001587,000403: # ********************************************************************************************************
001588,000404:
001589,000405: # THE FOLLOWING ECADRS ARE DEFINED TO FACILITATE EBANK SWITCHING. THEY ALSO MAKE IT EASIER FOR
001590,000406: # ERASABLE CONTROL TO REARRANGE ERASABLE MEMORY WITHOUT DISRUPTING THE PROGRAMS WHICH SET EBANKS.
001591,000407: # PRIOR TO ROPE RELEASE FIXED MEMORY CAN BE SAVED BY SETTING EACH EBXXXX =EBANKX (X=4,5,6,7). EBANKX OF COURSE
001592,000408: # WILL BE THE BANK WHERE THE ERASABLES REFERENCED IN EBXXXX WILL BE STORED.
001593,000409:
001594,000410: 07,2000 BANK 7
001595,000411: 07,2000 E7,1674 EBANK= MARKDOWN
001596,000412: 07,2000 03674 EBMARKDO ECADR MARKDOWN
001597,000413: 07,2001 E7,1725 EBANK= MRKBUF1
001598,000414: 07,2001 03725 EBMRKBUF ECADR MRKBUF1
001599,000415:
001600,000416: 24,2000 BANK 24
001601,000417: 24,2000 E7,1431 EBANK= DVCNTR
001602,000418: 24,2000 03431 EBDVCNTR ECADR DVCNTR
001603,000419: 24,2001 E7,1672 EBANK= P40TMP
001604,000420: 24,2001 03672 EBP40TMP ECADR P40TMP
001605,000421:
001606,000422: 34,2000 BANK 34
001607,000423: 34,2000 E7,1431 EBANK= DVCNTR
001608,000424: 34,2000 03431 EBDVCNT ECADR DVCNTR
001609,000425: 34,2001 E5,1426 EBANK= QPLACES
001610,000426: 34,2001 02426 EBQPLACE ECADR QPLACES
001611,000427:
001612,000428: 37,2000 BANK 37
001613,000429: 37,2000 1231 EBANK= RN1
001614,000430: 37,2000 01231 EBRN1 ECADR RN1
001615,000431:
001616,000432: # ******************************************************************************************************
001617,000433:
![]() |
Page 36 |
001619,000435:
001620,000436: # *** END OF MAIN PROGRAM ***
001621,000437:
End of include-file TAGS_FOR_RELATIVE_SETLOC.agc. Parent file is MAIN.agc