Source Code

These source-code files are part of a reconstructed copy of Luminary 173, the second (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance Computer (AGC) software.

The reconstruction began with reconstructed source code for Luminary 178. Changes between revision 173 and 178 were backed out, as described by Luminary memo 167 (revision 1). The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 173 listing would be different.

Comments from 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.

016552,000002:                                                                                                  ## Copyright:   Public domain.
016553,000003:                                                                                                  ## Filename:    IMU_PERFORMANCE_TESTS_4.agc
016554,000004:                                                                                                  ## Purpose:     A section of Luminary revision 173.
016555,000005:                                                                                                  ##              It is part of the reconstructed source code for the second
016556,000006:                                                                                                  ##              (unflown) release of the flight software for the Lunar
016557,000007:                                                                                                  ##              Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
016558,000008:                                                                                                  ##              The code has been recreated from a reconstructed copy of
016559,000009:                                                                                                  ##              Luminary 178, as well as Luminary memo 167 (revision 1).
016560,000010:                                                                                                  ##              It has been adapted such that the resulting bugger words
016561,000011:                                                                                                  ##              exactly match those specified for Luminary 173 in NASA
016562,000012:                                                                                                  ##              drawing 2021152N, which gives relatively high confidence
016563,000013:                                                                                                  ##              that the reconstruction is correct.
016564,000014:                                                                                                  ## Reference:   pp. 387-394
016565,000015:                                                                                                  ## Assembler:   yaYUL
016566,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
016567,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
016568,000018:                                                                                                  ## Mod history: 2019-09-18 MAS  Created from Luminary 178.
016569,000019: 

Page 387

016571,000021:                                                                                                  #  PROGRAM-IMU PERFORMANCE TESTS 4
016572,000022:                                                                                                  #  DATE-NOV 15,1966
016573,000023:                                                                                                  #  BY- GEORGE SCHMIDT IL7-146 EXT 1126
016574,000024:                                                                                                  #  MOD NO-ZERO
016575,000025: 
016576,000026: 
016577,000027:                                                                                                  #  FUNCTIONAL DESCRIPTION
016578,000028: 
016579,000029:                                                                                                  #  THIS SECTION CONSISTS OF THE FILTER FOR THE GYRO DRIFT TESTS. NO COMPASS
016580,000030:                                                                                                  #  IS DONE IN LEM. FOR A DESCRIPTION OF THE FILTER SEE E-1973. THIS
016581,000031:                                                                                                  #  SECTION IS ENTERED FROM IMU 2. IT RETURNS THERE AT END OF TEST.
016582,000032: 
016583,000033:                                                                                                  #  EARTHR,OGC ZERO,ERTHRVSE
016584,000034: 
016585,000035:                                                                                                  #  NORMAL EXIT
016586,000036: 
016587,000037:                                                                                                  #  LENGTHOT GOES TO ZERO-RETURN TO IMU PERF TESTS 2 CONTROL
016588,000038: 
016589,000039:                                                                                                  #  ALARMS
016590,000040: 
016591,000041:                                                                                                  #  1600 OVERFLOW IN DRIFT TEST
016592,000042:                                                                                                  #  1601    BAD IMU MODING IN ANY ROUTINE THAT USES IMUSTALL
016593,000043:                                                                                                  #  OUTPUT
016594,000044: 
016595,000045:                                                                                                  #  FLASHING DISPLAY OF RESULTS-CONTROLLED IN IMU PERF TESTS 2
016596,000046: 
016597,000047:                                                                                                  #  DEBRIS
016598,000048: 
016599,000049:                                                                                                  #  ALL CENTRALS-ALL OF EBANK XSM
016600,000050: 

Page 388

016602,000052: 33,2117                                           BANK     33                                    
016603,000053: 37,2000                                           SETLOC   IMU4                                  
016604,000054: 37,2000                                           BANK                                           
016605,000055: 37,2500                                           COUNT*   $$/P07                                
016606,000056: 
016607,000057: 37,2500  E5,1642                                  EBANK=   XSM                                   
016608,000058: 
016609,000059: 
016610,000060: 37,2500           00004        ESTIMS             INHINT                                         
016611,000061: 37,2501           31572                           CAE      1SECXT                                
016612,000062: 37,2502           05204                           TC       TWIDDLE                               
016613,000063: 37,2503  E5,1642                                  EBANK=   XSM                                   
016614,000064: 37,2503           02536                           ADRES    ALLOOP                                
016615,000065: 37,2504           34755                           CAF      ZERO                                  #  ZERO THE PIPAS
016616,000066: 37,2505           54037                           TS       PIPAX                                 
016617,000067: 37,2506           54040                           TS       PIPAY                                 
016618,000068: 37,2507           54041                           TS       PIPAZ                                 
016619,000069: 37,2510           00003                           RELINT                                         
016620,000070: 37,2511           33075                           CA       77DECML                               
016621,000071: 37,2512           55571                           TS       ZERONDX                               
016622,000072: 37,2513           33076                           CA       ALXXXZ                                
016623,000073: 37,2514           02367                           TC       ZEROING                               
016624,000074: 37,2515           06042                           TC       INTPRET                               
016625,000075: 37,2516           77735                           SLOAD                                          
016626,000076: 37,2517           37057                                    SCHZEROS                              
016627,000077: 37,2520           25477                           STOVL    GCOMPSW    -1                         
016628,000078: 37,2521           37070                                    INTVAL     +2                         
016629,000079: 37,2522           26445                           STOVL    ALX1S                                 
016630,000080: 37,2523           37057                                    SCHZEROS                              
016631,000081: 37,2524           00325                           STORE    DELVX                                 
016632,000082: 37,2525           01472                           STORE    GCOMP                                 
016633,000083: 37,2526           77735                           SLOAD                                          
016634,000084: 37,2527           02441                                    TORQNDX                               
016635,000085: 37,2530           50076                           DCOMP    BMN                                   
016636,000086: 37,2531           76534                                    VERTSKIP                              
016637,000087: 37,2532           77624                           CALL                                           
016638,000088: 37,2533           76401                                    ERTHRVSE                              
016639,000089: 37,2534           77776        VERTSKIP           EXIT                                           
016640,000090: 37,2535           03035                           TC       SLEEPIE    +1                         
016641,000091: 

Page 389

016643,000093: 37,2536           31576        ALLOOP             CA       OVFLOWCK                              
016644,000094: 37,2537           00006                           EXTEND                                         
016645,000095: 37,2540           12542                           BZF      +2                                    
016646,000096: 37,2541           05272                           TC       TASKOVER                              
016647,000097: 37,2542           11530                           CCS      ALTIM                                 
016648,000098: 37,2543           30000                           CA       A                                     #  SHOULD NEVER HIT THIS LOCATION
016649,000099: 37,2544           55531                           TS       ALTIMS                                
016650,000100: 37,2545           40000                           CS       A                                     
016651,000101: 37,2546           55530                           TS       ALTIM                                 
016652,000102: 37,2547           44753                           CS       ONE                                   
016653,000103: 37,2550           61562                           AD       GEOCOMPS                              
016654,000104: 37,2551           00006                           EXTEND                                         
016655,000105: 37,2552           12556                           BZF      +4                                    
016656,000106: 37,2553           31412                           CA       LENGTHOT                              
016657,000107: 37,2554           00006                           EXTEND                                         
016658,000108: 37,2555           62562                           BZMF     +5                                    
016659,000109: 37,2556           31572                           CAE      1SECXT                                
016660,000110: 37,2557           05204                           TC       TWIDDLE                               
016661,000111: 37,2560  E5,1642                                  EBANK=   XSM                                   
016662,000112: 37,2560           02536                           ADRES    ALLOOP                                
016663,000113: 37,2561           34755                           CAF      ZERO                                  
016664,000114: 37,2562           56037                           XCH      PIPAX                                 
016665,000115: 37,2563           54324                           TS       DELVX                                 
016666,000116: 37,2564           34755                           CAF      ZERO                                  
016667,000117: 37,2565           56040                           XCH      PIPAY                                 
016668,000118: 37,2566           54326                           TS       DELVY                                 
016669,000119: 37,2567           34755                           CAF      ZERO                                  
016670,000120: 37,2570           56041                           XCH      PIPAZ                                 
016671,000121: 37,2571           54330                           TS       DELVZ                                 
016672,000122: 37,2572           34736        SPECSTS            CAF      PRIO20                                
016673,000123: 37,2573           05105                           TC       FINDVAC                               
016674,000124: 37,2574  E5,1642                                  EBANK=   XSM                                   
016675,000125: 37,2574           02577 76065                     2CADR    ALFLT                                 #  START THE JOB
016676,000126: 
016677,000127: 37,2576           05272                           TC       TASKOVER                              
016678,000128: 

Page 390

016680,000130: 37,2577           11562        ALFLT              CCS      GEOCOMPS                              
016681,000131: 37,2600           02602                           TC       +2                                    
016682,000132: 37,2601           02604                           TC       NORMLOP                               
016683,000133: 37,2602           04616                           TC       BANKCALL                              
016684,000134: 37,2603           15271                           CADR     1/PIPA                                
016685,000135: 37,2604           06042        NORMLOP            TC       INTPRET                               
016686,000136: 37,2605           77745                           DLOAD                                          
016687,000137: 37,2606           37066                                    INTVAL                                
016688,000138: 37,2607           24051                           STOVL    S1                                    
016689,000139: 37,2610           00325                                    DELVX                                 
016690,000140: 37,2611           76505                           VXM      VSL1                                  
016691,000141: 37,2612           02643                                    XSM                                   
016692,000142: 37,2613           57545                           DLOAD    DCOMP                                 
016693,000143: 37,2614           00160                                    MPAC       +3                         
016694,000144: 37,2615           16523                           STODL    DPIPAY                                
016695,000145: 37,2616           00162                                    MPAC       +5                         
016696,000146: 37,2617           02527                           STORE    DPIPAZ                                
016697,000147: 
016698,000148: 37,2620           76001                           SETPD    AXT,1                                 
016699,000149: 37,2621           00001                                    0                                     
016700,000150: 37,2622           00010                                    8D                                    
016701,000151: 37,2623           57535                           SLOAD    DCOMP                                 
016702,000152: 37,2624           02563                                    GEOCOMPS                              
016703,000153: 37,2625           77640                           BMN                                            
016704,000154: 37,2626           76772                                    PERFERAS                              
016705,000155: 37,2627           50135        ALCGKK             SLOAD    BMN                                   
016706,000156: 37,2630           02532                                    ALTIMS                                
016707,000157: 37,2631           76644                                    ALFLT3                                
016708,000158: 37,2632           72174        ALKCG              AXT,2    LXA,1                                 #  LOADS SLOPES AND TIME CONSTANTS AT RQST
016709,000159: 37,2633           00014                                    12D                                   
016710,000160: 37,2634           02444                                    ALX1S                                 
016711,000161: 37,2635           62143        ALKCG2             DLOAD*   INCR,1                                
016712,000162: 37,2636           02243                                    ALFDK      +144D,1                    
016713,000163: 37,2637           77775                           DEC      -2         B-14                       
016714,000164: 37,2640           12545                           STORE    ALDK       +10D,2                     
016715,000165: 37,2641           66104                           TIX,2    SXA,1                                 
016716,000166: 37,2642           76635                                    ALKCG2                                
016717,000167: 37,2643           02444                                    ALX1S                                 
016718,000168: 
016719,000169: 37,2644           77770        ALFLT3             AXT,1                                          
016720,000170: 37,2645           00010                                    8D                                    
016721,000171: 37,2646           41343        DELMLP             DLOAD*   DMP                                   
016722,000172: 37,2647           02533                                    DPIPAY     +8D,1                      
016723,000173: 37,2650           37100                                    PIPASC                                
016724,000174: 37,2651           43661                           SLR      BDSU*                                 
016725,000175: 37,2652           21212                                    9D                                    
016726,000176: 37,2653           02501                                    INTY       +8D,1                      
016727,000177: 37,2654           06501                           STORE    INTY       +8D,1                      
016728,000178: 37,2655           40725                           PDDL     DMP*                                  
016729,000179: 37,2656           37102                                    VELSC                                 
016730,000180: 

Page 391

016732,000182: 37,2657           02521                                    VLAUN      +8D,1                      
016733,000183: 37,2660           77732                           SL2R                                           
016734,000184: 37,2661           45425                           DSU      STADR                                 
016735,000185: 37,2662           71216                           STORE    DELM       +8D,1                      
016736,000186: 37,2663           06563                           STORE    DELM       +10D,1                     
016737,000187: 37,2664           77100                           TIX,1    AXT,2                                 
016738,000188: 37,2665           76646                                    DELMLP                                
016739,000189: 37,2666           00004                                    4                                     
016740,000190: 37,2667           56743        ALILP              DLOAD*   DMPR*                                 
016741,000191: 37,2670           75324                                    ALK        +4,2                       
016742,000192: 37,2671           75240                                    ALDK       +4,2                       
016743,000193: 37,2672           12453                           STORE    ALK        +4,2                       
016744,000194: 37,2673           77104                           TIX,2    AXT,2                                 
016745,000195: 37,2674           76667                                    ALILP                                 
016746,000196: 37,2675           00010                                    8D                                    
016747,000197: 37,2676           66140        ALKLP              LXC,1    SXA,1                                 
016748,000198: 37,2677           02445                                    CMPX1                                 
016749,000199: 37,2700           02445                                    CMPX1                                 
016750,000200: 37,2701           56743                           DLOAD*   DMPR*                                 
016751,000201: 37,2702           02450                                    ALK        +1,1                       
016752,000202: 37,2703           75216                                    DELM       +8D,2                      
016753,000203: 37,2704           77613                           DAD*                                           
016754,000204: 37,2705           75276                                    INTY       +8D,2                      
016755,000205: 37,2706           12501                           STORE    INTY       +8D,2                      
016756,000206: 37,2707           42743                           DLOAD*   DAD*                                  
016757,000207: 37,2710           75314                                    ALK        +12D,2                     
016758,000208: 37,2711           75230                                    ALDK       +12D,2                     
016759,000209: 37,2712           12463                           STORE    ALK        +12D,2                     
016760,000210: 37,2713           42673                           DMPR*    DAD*                                  
016761,000211: 37,2714           75216                                    DELM       +8D,2                      
016762,000212: 37,2715           75266                                    INTY       +16D,2                     
016763,000213: 37,2716           12511                           STORE    INTY       +16D,2                     
016764,000214: 37,2717           40743                           DLOAD*   DMP*                                  
016765,000215: 37,2720           37105                                    ALSK       +1,1                       
016766,000216: 37,2721           75216                                    DELM       +8D,2                      
016767,000217: 37,2722           42772                           SL1R     DAD*                                  
016768,000218: 37,2723           75256                                    VLAUN      +8D,2                      
016769,000219: 37,2724           12521                           STORE    VLAUN      +8D,2                      
016770,000220: 37,2725           76104                           TIX,2    AXT,1                                 
016771,000221: 37,2726           76676                                    ALKLP                                 
016772,000222: 37,2727           00010                                    8D                                    
016773,000223: 
016774,000224: 
016775,000225: 37,2730           64743        LOOSE              DLOAD*   PDDL*                                 
016776,000226: 37,2731           02523                                    ACCWD      +8D,1                      
016777,000227: 37,2732           02521                                    VLAUN      +8D,1                      
016778,000228: 37,2733           55523                           PDDL*    VDEF                                  
016779,000229: 37,2734           02531                                    POSNV      +8D,1                      
016780,000230: 37,2735           76521                           MXV      VSL1                                  
016781,000231: 37,2736           02001                                    TRANSM1                               

Page 392

016783,000233: 37,2737           77745                           DLOAD                                          
016784,000234: 37,2740           00155                                    MPAC                                  
016785,000235: 37,2741           06531                           STORE    POSNV      +8D,1                      
016786,000236: 37,2742           77745                           DLOAD                                          
016787,000237: 37,2743           00160                                    MPAC       +3                         
016788,000238: 37,2744           06521                           STORE    VLAUN      +8D,1                      
016789,000239: 37,2745           77745                           DLOAD                                          
016790,000240: 37,2746           00162                                    MPAC       +5                         
016791,000241: 37,2747           06523                           STORE    ACCWD      +8D,1                      
016792,000242: 37,2750           77700                           TIX,1                                          
016793,000243: 37,2751           76730                                    LOOSE                                 
016794,000244: 
016795,000245: 
016796,000246: 37,2752           76174                           AXT,2    AXT,1                                 #  EVALUATE SINES AND COSINES
016797,000247: 37,2753           00006                                    6                                     
016798,000248: 37,2754           00002                                    2                                     
016799,000249: 37,2755           57343        BOOP               DLOAD*   DMPR                                  
016800,000250: 37,2756           02503                                    ANGX       +2,1                       
016801,000251: 37,2757           37110                                    GEORGEJ                               
016802,000252: 37,2760           77722                           SR2R                                           
016803,000253: 37,2761           73406                           PUSH     SIN                                   
016804,000254: 37,2762           56072                           SL3R     XAD,1                                 
016805,000255: 37,2763           00046                                    X1                                    
016806,000256: 37,2764           10021                           STORE    16D,2                                 
016807,000257: 37,2765           77745                           DLOAD                                          
016808,000258: 37,2766           77746                           COS                                            
016809,000259: 37,2767           10027                           STORE    22D,2                                 #  COSINES
016810,000260: 37,2770           77704                           TIX,2                                          
016811,000261: 37,2771           76755                                    BOOP                                  
016812,000262: 
016813,000263: 37,2772           77776        PERFERAS           EXIT                                           
016814,000264: 37,2773           35016                           CA       EBANK7                                
016815,000265: 37,2774           54003                           TS       EBANK                                 
016816,000266: 37,2775  E7,1400                                  EBANK=   ATIGINC                               
016817,000267: 37,2775           01400                           TC       ATIGINC                               #  GOTO ERASABLE TO CALCULATE ONLY TO RETN
016818,000268: 
016819,000269:                                                                                                  #              CAUTION
016820,000270: 
016821,000271:                                                                                                  #  THE ERASABLE PROGRAM THAT DOES THE CALCULATIONS MUST BE LOADED
016822,000272:                                                                                                  #  BEFORE ANY ATTEMPT IS MADE TO RUN THE IMU PERFORMANCE TEST
016823,000273: 
016824,000274: 37,2776  E5,1400                                  EBANK=   AZIMUTH                               
016825,000275: 37,2776           11412                           CCS      LENGTHOT                              
016826,000276: 37,2777           03034                           TC       SLEEPIE                               
016827,000277: 37,3000           11440                           CCS      TORQNDX                               
016828,000278: 37,3001           13003                           TCF      +2                                    
016829,000279: 37,3002           03005                           TC       SETUPER1                              
016830,000280: 37,3003           30032                           CA       CDUX                                  
016831,000281: 37,3004           55414                           TS       LOSVEC     +1                         #  FOR TROUBLESHOOTING VD POSNS 2$4
016832,000282: 

Page 393

016834,000284: 37,3005           06042        SETUPER1           TC       INTPRET                               
016835,000285: 37,3006           65345                           DLOAD    PDDL                                  #  ANGLES FROM DRIFT TEST ONLY
016836,000286: 37,3007           02473                                    ANGZ                                  
016837,000287: 37,3010           02477                                    ANGY                                  
016838,000288: 37,3011           55525                           PDDL     VDEF                                  
016839,000289: 37,3012           02501                                    ANGX                                  
016840,000290: 37,3013           74276                           VCOMP    VXSC                                  
016841,000291: 37,3014           37110                                    GEORGEJ                               
016842,000292: 37,3015           74521                           MXV      VSR1                                  
016843,000293: 37,3016           02643                                    XSM                                   
016844,000294: 37,3017           02740                           STORE    OGC                                   
016845,000295: 37,3020           77776                           EXIT                                           
016846,000296: 
016847,000297: 
016848,000298: 37,3021           32475                           CA       OGCPL                                 
016849,000299: 37,3022           04616                           TC       BANKCALL                              
016850,000300: 37,3023           17307                           CADR     IMUPULSE                              
016851,000301: 37,3024           02315                           TC       IMUSLLLG                              
016852,000302: 37,3025           11440        GEOSTRT4           CCS      TORQNDX                               #  ONLY POSITIVE IF IN VERTICAL DRIFT TEST
016853,000303: 37,3026           02263                           TC       VALMIS                                
016854,000304: 37,3027           06042                           TC       INTPRET                               
016855,000305: 37,3030           77624                           CALL                                           
016856,000306: 37,3031           76401                                    ERTHRVSE                              
016857,000307: 37,3032           77776                           EXIT                                           
016858,000308: 37,3033           02117                           TC       TORQUE                                
016859,000309: 
016860,000310: 
016861,000311: 37,3034           55412        SLEEPIE            TS       LENGTHOT                              #  TEST NOT OVER-DECREMENT LENGTHOT
016862,000312: 37,3035           11440                           CCS      TORQNDX                               #  ARE WE DOING VERTDRIFT
016863,000313: 37,3036           02447                           TC       EARTHR*                               
016864,000314: 37,3037           05155                           TC       ENDOFJOB                              
016865,000315: 
016866,000316: 
016867,000317: 37,3040           35014        SOMEERRR           CA       EBANK5                                
016868,000318: 37,3041           54003                           TS       EBANK                                 
016869,000319: 37,3042           34753                           CA       ONE                                   
016870,000320: 37,3043           55576                           TS       OVFLOWCK                              #  STOP ALLOOP FROM CALLING ITSELF
016871,000321: 37,3044           05600                           TC       ALARM                                 
016872,000322: 37,3045           01600                           OCT      1600                                  
016873,000323: 37,3046           02270                           TC       ENDTEST1                              
016874,000324: 37,3047           33054        SOMERR2            CAF      OCT1601                               
016875,000325: 37,3050           05745                           TC       VARALARM                              
016876,000326: 37,3051           05527                           TC       DOWNFLAG                              
016877,000327: 37,3052           00007                           ADRES    IMUSE                                 
016878,000328: 37,3053           05155                           TC       ENDOFJOB                              
016879,000329: 
016880,000330: 37,3054           01601        OCT1601            OCT      01601                                 
016881,000331: 37,3055           06200        DEC585             OCT      06200                                 #  3200 B+14   ORDER IS IMPORTANT
016882,000332: 37,3056           00000 00000  SCHZEROS           2DEC     .00000000                             
016883,000333: 

Page 394

016885,000335: 37,3060           00000 00000                     2DEC     .00000000                             
016886,000336: 37,3062           00000                           OCT      00000                                 
016887,000337: 37,3063           00000        ONEDPP             OCT      00000                                 #  ORDER IS IMPORTANT
016888,000338: 37,3064           00001                           OCT      00001                                 
016889,000339: 
016890,000340: 37,3065           00004        INTVAL             OCT      4                                     
016891,000341: 37,3066           00002                           OCT      2                                     
016892,000342: 37,3067           00220                           DEC      144        B-14                       
016893,000343: 37,3070           77776                           DEC      -1         B-14                       
016894,000344: 37,3071           35730 00035  SOUPLY             2DEC     .93505870                             #  INITIAL GAINS FOR PIP OUTPUTS
016895,000345: 37,3073           10317 17550                     2DEC     .26266423                             #  INITIAL GAINS/4 FOR ERECTION ANGLES
016896,000346: 
016897,000347: 37,3075           00115        77DECML            DEC      77         B-14                       
016898,000348: 37,3076           01443        ALXXXZ             GENADR   ALX1S      -1                         
016899,000349: 37,3077           04133 02265  PIPASC             2DEC     .13055869                             
016900,000350: 37,3101           57223 66451  VELSC              2DEC     -.52223476                            #  512/980.402
016901,000351: 37,3103           05427 12577  ALSK               2DEC     .17329931                             #  SSWAY VEL GAIN X 980.402/4096
016902,000352: 37,3105           77567 44202                     2DEC     -.00835370                            #  SSWAY ACCEL GAIN X 980.402/4096
016903,000353: 
016904,000354: 
016905,000355: 37,3107           24276 14066  GEORGEJ            2DEC     .63661977                             
016906,000356: 37,3111           23073 11773  GEORGEK            2DEC     .59737013                             

End of include-file IMU_PERFORMANCE_TESTS_4.agc.  Parent file is MAIN.agc