Source Code
These source-code files are part of a reconstructed copy of Corona 261, the
final, flown release of the Block I Command Module (CM) Apollo Guidance Computer
(AGC) software for the AS-202 mission.
They have been created via disassembly of binary dumps of the original core rope memory modules actually flown on the mission, part numbers 1003733-171, 1003733-241, 1003733-191, 1003733-211, 1003733-221, and 1003733-241. The source code for the Apollo 4 and 6 software, Solarium 55, was used as a starting point, since it was directly derived from Corona and (at least in theory) only minimally modified. Since only binary dumps (rather than listings) of Corona are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing. |
014023,000002: ## Copyright: Public domain.
014024,000003: ## Filename: MEASUREMENT_INCORPORATION.agc
014025,000004: ## Purpose: A section of Corona revision 261.
014026,000005: ## It is part of the source code for the Apollo Guidance Computer
014027,000006: ## (AGC) for AS-202. No original listings of this software are
014028,000007: ## available; instead, this file was created via disassembly of
014029,000008: ## the core rope modules actually flown on the mission.
014030,000009: ## Assembler: yaYUL
014031,000010: ## Contact: Ron Burkey <info@sandroid.org>.
014032,000011: ## Website: www.ibiblio.org/apollo/index.html
014033,000012: ## Mod history: 2023-06-19 MAS Created.
014034,000013:
014035,000014: ## MAS 2023: This log section is a part of the MIDCOURSE NAVIGATION GAME, which
014036,000015: ## appears to be a very early implementation of P22, P29, and possibly some other
014037,000016: ## navigation programs. It was deleted in Solarium, and its documentation that
014038,000017: ## mentions it is nearly nonexistent outside of some MIT status reports (from
014039,000018: ## which the name of this log section is taken). Reverse-engineering it is a work
014040,000019: ## in progress; all labels and comments are modern guesses. Double-# comments
014041,000020: ## are annotations to aid in reverse engineering. Any labels that have not yet
014042,000021: ## been given modern names are given placeholders with the pattern UBB,SSSS,
014043,000022: ## where BB,SSSS is the full bank and address of the label.
014044,000023:
014045,000024: 23,7507 BANK 23
014046,000025:
014047,000026: 23,7507 73575 INCORP1 LXA,1 1
014048,000027: 23,7510 67452 SXA,1 MXV
014049,000028: 23,7511 00070 FIXLOC
014050,000029: 23,7512 00124 PUSHLOC
014051,000030: 23,7513 01221 BVECTOR
014052,000031: 23,7514 01562 W
014053,000032:
014054,000033: 23,7515 52775 MXV 1
014055,000034: 23,7516 45442 ITA VAD
014056,000035: 23,7517 01227 BVECTOR +6
014057,000036: 23,7520 01626 W +36D
014058,000037: 23,7521 01304 INCORPEX
014059,000038:
014060,000039: 23,7522 52776 MXV 0
014061,000040: 23,7523 01221 BVECTOR
014062,000041: 23,7524 01604 W +18D
014063,000042:
014064,000043: 23,7525 52775 MXV 1
014065,000044: 23,7526 50776 VAD
014066,000045: 23,7527 01227 BVECTOR +6
014067,000046: 23,7530 01650 W +54D
014068,000047:
014069,000048: 23,7531 47575 NOLOD 1
014070,000049: 23,7532 67142 VSQ DAD
014071,000050: 23,7533 01275 VARIANCE
014072,000051:
014073,000052: 23,7534 67175 VSQ 1
014074,000053: 23,7535 70776 DAD
014075,000054: 23,7536 00001 0
014076,000055:
014077,000056: 23,7537 47572 NOLOD 4
014078,000057: 23,7540 55653 DMPR SQRT
014079,000058: 23,7541 70676 DAD TSLC
014080,000059: 23,7542 62531 INCR,2 SXA,2
014081,000060: 23,7543 74506 AXT,2 BDDV
014082,000061: 23,7544 01275 VARIANCE
014083,000062: 23,7545 00015 12D
014084,000063: 23,7546 00050 X2
014085,000064: 23,7547 77776 -2
014086,000065: 23,7550 01306 NORMGAM
014087,000066: 23,7551 00111 72D
014088,000067: 23,7552 06303 DP1/4
014089,000068:
014090,000069: 23,7553 57774 TSLC 2
014091,000070: 23,7554 54515 AST,2 INCR,1
014092,000071: 23,7555 61776 BDDV
014093,000072: 23,7556 00015 12D
014094,000073: 23,7557 00047 X1
014095,000074: 23,7560 00045 36D
014096,000075: 23,7561 00002 1
014097,000076: 23,7562 01277 DELTAQ
014098,000077:
014099,000078: 23,7563 75175 INCOR2 VMOVE 1
014100,000079: 23,7564 51376 VXM*
014101,000080: 23,7565 00001 0
014102,000081: 23,7566 03564 W +72D,2
014103,000082:
014104,000083: 23,7567 75175 VMOVE 1
014105,000084: 23,7570 51242 VXM* VAD
014106,000085: 23,7571 00007 6
014107,000086: 23,7572 03630 W +90D,2
014108,000087:
014109,000088: 23,7573 47574 NOLOD 2
014110,000089: 23,7574 75620 VXSC VSLT*
014111,000090: 23,7575 50422 TIX,2 VSLT
014112,000091: 23,7576 00021 16D
014113,000092: 23,7577 00001 0,1
014114,000093: 23,7600 07747 INCOR3
014115,000094: 23,7601 00003 2
014116,000095: 23,7602 33161 STORE DELVEL
014117,000096:
014118,000097: 23,7603 51176 DSQ 0
014119,000098: 23,7604 01161 DELVEL
014120,000099:
014121,000100: 23,7605 51175 DSQ 1
014122,000101: 23,7606 70776 DAD
014123,000102: 23,7607 01163 DELVEL +2
014124,000103:
014125,000104: 23,7610 51175 DSQ 1
014126,000105: 23,7611 70653 DAD SQRT
014127,000106: 23,7612 01165 DELVEL +4
014128,000107: 23,7613 77777 -
014129,000108: 23,7614 32621 STORE DSPTEM1 +2
014130,000109:
014131,000110: 23,7615 77576 EXIT 0
014132,000111:
014133,000112: 23,7616 05654 TC BANKCALL
014134,000113: 23,7617 51265 CADR U24,7265
014135,000114:
014136,000115: 23,7620 72776 INCORP2 STZ 0
014137,000116: 23,7621 00123 OVFIND
014138,000117:
014139,000118: 23,7622 44775 VSLT 1
014140,000119: 23,7623 50746 VAD BOV
014141,000120: 23,7624 01161 DELVEL
014142,000121: 23,7625 00011 8D
014143,000122: 23,7626 01010 NUV
014144,000123: 23,7627 07711 INCORECT
014145,000124: 23,7630 33123 STORE NEWNUV
014146,000125:
014147,000126: 23,7631 44775 VSLT 1
014148,000127: 23,7632 50746 VAD BOV
014149,000128: 23,7633 01153 DELR
014150,000129: 23,7634 00013 10D
014151,000130: 23,7635 01002 DELTAV
014152,000131: 23,7636 07711 INCORECT
014153,000132: 23,7637 33115 STORE NEWDLTAV
014154,000133:
014155,000134: 23,7640 75574 FAZA AXT,1 2
014156,000135: 23,7641 55561 AST,1 AXT,2
014157,000136: 23,7642 75776 VXSC
014158,000137: 23,7643 00045 36D
014159,000138: 23,7644 00007 6
014160,000139: 23,7645 00001 0
014161,000140: 23,7646 00023 18D
014162,000141: 23,7647 00017 14D
014163,000142: 23,7650 32023 STORE 18D
014164,000143:
014165,000144: 23,7651 75776 VXSC 0
014166,000145: 23,7652 00031 24D
014167,000146: 23,7653 00017 14D
014168,000147: 23,7654 32031 STORE 24D
014169,000148:
014170,000149: 23,7655 46173 FAZB COMP* 3
014171,000150: 23,7656 75721 VXSC XCHX,2
014172,000151: 23,7657 44321 VSLT* XCHX,2
014173,000152: 23,7660 50376 VAD*
014174,000153: 23,7661 00002 0,2
014175,000154: 23,7662 00023 18D
014176,000155: 23,7663 01306 NORMGAM
014177,000156: 23,7664 00002 0,2
014178,000157: 23,7665 01306 NORMGAM
014179,000158: 23,7666 03453 W +36D,1
014180,000159: 23,7667 37453 STORE W +36D,1
014181,000160:
014182,000161: 23,7670 46173 COMP* 3
014183,000162: 23,7671 75721 VXSC XCHX,2
014184,000163: 23,7672 44321 VSLT* XCHX,2
014185,000164: 23,7673 62440 INCR,2 VAD*
014186,000165: 23,7674 00002 0,2
014187,000166: 23,7675 00031 24D
014188,000167: 23,7676 01306 NORMGAM
014189,000168: 23,7677 00002 0,2
014190,000169: 23,7700 01306 NORMGAM
014191,000170: 23,7701 77776 -2
014192,000171: 23,7702 03563 W +72D,1
014193,000172: 23,7703 37563 STORE W +72D,1
014194,000173:
014195,000174: 23,7704 51576 TIX,1 0
014196,000175: 23,7705 07656 FAZB
014197,000176:
014198,000177: 23,7706 44576 ITCI 0
014199,000178: 23,7707 01304 INCORPEX
014200,000179:
014201,000180: 23,7710 45775 INCORECT VSRT 1
014202,000181: 23,7711 50642 VAD VAD
014203,000182: 23,7712 01002 DELTAV
014204,000183: 23,7713 00013 10D
014205,000184: 23,7714 01016 REFRCV
014206,000185: 23,7715 01153 DELR
014207,000186: 23,7716 33101 STORE RRECT
014208,000187:
014209,000188: 23,7717 47576 NOLOD 0
014210,000189: 23,7720 33131 STORE RCV
014211,000190:
014212,000191: 23,7721 45775 VSRT 1
014213,000192: 23,7722 50642 VAD VAD
014214,000193: 23,7723 01010 NUV
014215,000194: 23,7724 00011 8D
014216,000195: 23,7725 01024 REFVCV
014217,000196: 23,7726 01161 DELVEL
014218,000197: 23,7727 33107 STORE VRECT
014219,000198:
014220,000199: 23,7730 47576 NOLOD 0
014221,000200: 23,7731 33137 STORE VCV
014222,000201:
014223,000202: 23,7732 45176 DMOVE 0
014224,000203: 23,7733 07246 DPZERO
014225,000204: 23,7734 33145 STORE TC
014226,000205:
014227,000206: 23,7735 47576 NOLOD 0
014228,000207: 23,7736 33151 STORE XKEP
014229,000208:
014230,000209: 23,7737 75176 VMOVE 0
014231,000210: 23,7740 15575 ZEROVEC
014232,000211: 23,7741 33115 STORE TDELTAV
014233,000212:
014234,000213: 23,7742 47576 NOLOD 0
014235,000214: 23,7743 33123 STORE TNUV
014236,000215:
014237,000216: 23,7744 76776 ITC 0
014238,000217: 23,7745 07641 FAZA
014239,000218:
014240,000219: 23,7746 47576 INCOR3 NOLOD 0
014241,000220: 23,7747 33153 STORE DELR
014242,000221:
014243,000222: 23,7750 47575 NOLOD 1
014244,000223: 23,7751 71116 ABVAL TSLT
014245,000224: 23,7752 00002 1
014246,000225: 23,7753 32617 STORE DSPTEM1
014247,000226: 23,7754 76776 ITC 0
014248,000227: 23,7755 07564 INCOR2
End of include-file MEASUREMENT_INCORPORATION.agc. Parent file is MAIN.agc