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