Source Code

This is an attempt to recreate Luminary 99 Rev 2, otherwise known as LUM99R2, from Luminary 99 Rev 1 and ephemeris data from Luminary 116. The differences are confined to the last 10-12 lines of the CONTROLLED CONSTANTS. Luminary 99 Rev 1 source-code was transcribed from a printout in the MIT Museum, while Luminary 116 source code was transcribed from a printout belonging to Don Eyles. AGC developer James Kernan, the "rope mother" for the Apollo 11 Lunar Module's AGC, explains as follows: "At the last minute, Dan Lickly, our chief engineer, appeared with ephemerides updates and it took two tries to get it right. The result was that we created Lum99 Revision 1 and Lum99 Revision 2." It is suspected that the former is what's in the MIT Museum, and the latter is what we are trying to recreate here. As for which revision actually flew in Apollo 11, all of the other available surviving evidence points to Rev 1 rather than to Rev 2, so we're just not sure!

020474,000002:                                                                                                  ## Copyright:   Public domain.
020475,000003:                                                                                                  ## Filename:    S-BAND_ANTENNA_FOR_LM.agc
020476,000004:                                                                                                  ## Purpose:     Part of the source code for Luminary 1A build 099.
020477,000005:                                                                                                  ##              It is part of the source code for the Lunar Module's (LM)
020478,000006:                                                                                                  ##              Apollo Guidance Computer (AGC), for Apollo 11.
020479,000007:                                                                                                  ## Assembler:   yaYUL
020480,000008:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
020481,000009:                                                                                                  ## Website:     www.ibiblio.org/apollo.
020482,000010:                                                                                                  ## Pages:       486-489
020483,000011:                                                                                                  ## Mod history: 2009-05-17 RSB  Adapted from the corresponding 
020484,000012:                                                                                                  ##                              Luminary131 file, using page 
020485,000013:                                                                                                  ##                              images from Luminary 1A.
020486,000014:                                                                                                  ##              2009-06-07 RSB  Corrected a misprint.
020487,000015:                                                                                                  ##              2016-12-14 RSB  Proofed text comments with octopus/ProoferComments
020488,000016:                                                                                                  ##                              and corrected the errors found.
020489,000017:                                                                                                  ##              2017-03-03 RSB  Snapshot of Luminary 99 Rev 1. 
020490,000018: 

Page 486

020492,000020:                                                                                                  #  SUBROUTINE NAME: R05 - S-BAND ANTENNA FOR LM
020493,000021: 
020494,000022:                                                                                                  #  MOD0 BY T. JAMES
020495,000023:                                                                                                  #  MOD1 BY P. SHAKIR
020496,000024: 
020497,000025:                                                                                                  #  FUNCTIONAL DESCRIPTION
020498,000026: 
020499,000027:                                                                                                  #  THE S-BAND ANTENNA ROUTINE, R05, COMPUTES AND DISPLAYS THE PITCH AND
020500,000028:                                                                                                  #  YAW ANTENNA GIMBAL ANGLES REQUIRED TO POINT THE LM STEERABLE ANTENNA
020501,000029:                                                                                                  #  TOWARD THE CENTER OF THE EARTH.  THIS ROUTINE IS SELECTED BY THE ASTRO-
020502,000030:                                                                                                  #  NAUT VIA DSKY ENTRY DURING COASTING FLIGHT OR WHEN THE LM IS ON THE MOON
020503,000031:                                                                                                  #  SURFACE.  THE EARTH OR MOON REFERENCE COORDINATE SYSTEM IS USED DEPENDING
020504,000032:                                                                                                  #  ON WHETHER THE LM IS ABOUT TO ENTER OR HAS ALREADY ENTERED THE MOON
020505,000033:                                                                                                  #  SPHERE OF INFLUENCE, RESPECTIVELY
020506,000034: 
020507,000035:                                                                                                  #  TO CALL SUBROUTINE, ASTRONAUT KEYS IN V 64 E
020508,000036: 
020509,000037:                                                                                                  #  SUBROUTINES CALLED -
020510,000038:                                                                                                  #        R02BOTH
020511,000039:                                                                                                  #        INTPRET
020512,000040:                                                                                                  #        LOADTIME
020513,000041:                                                                                                  #        LEMCONIC
020514,000042:                                                                                                  #        LUNPOS
020515,000043:                                                                                                  #        CDUTRIG
020516,000044:                                                                                                  #        *SMNB*
020517,000045:                                                                                                  #        BANKCALL
020518,000046:                                                                                                  #        B5OFF
020519,000047:                                                                                                  #        ENDOFJOB
020520,000048:                                                                                                  #        BLANKET
020521,000049: 
020522,000050:                                                                                                  #  RETURNS WITH
020523,000051:                                                                                                  #        PITCH ANGLE IN PITCHANG         REV. B0
020524,000052:                                                                                                  #        YAW ANGLE IN YAWANG             REV. B0
020525,000053: 
020526,000054:                                                                                                  #  ERASABLES USED
020527,000055:                                                                                                  #        PITCHANG
020528,000056:                                                                                                  #        YAWANG
020529,000057:                                                                                                  #        RLM
020530,000058:                                                                                                  #        VAC AREA
020531,000059: 
020532,000060: 41,3731                                           BANK     41                                    
020533,000061: 42,2000                                           SETLOC   SBAND                                 
020534,000062: 42,2000                                           BANK                                           
020535,000063: 
020536,000064: 42,3606  E7,1471                                  EBANK=   WHOCARES                              
020537,000065: 42,3606                                           COUNT*   $$/R05                                
020538,000066: 42,3606           04616        SBANDANT           TC       BANKCALL                              

Page 487

020540,000068: 42,3607           11254                           CADR     R02BOTH                               #  CHECK IF IMU IS ON AND ALIGNED
020541,000069: 42,3610           06037                           TC       INTPRET                               
020542,000070: 42,3611           47001                           SETPD    RTB                                   
020543,000071: 42,3612           00001                                    0D                                    
020544,000072: 42,3613           21573                                    LOADTIME                              #  PICK UP CURRENT TIME
020545,000073: 42,3614           34041                           STCALL   TDEC1                                 #  ADVANCE INTEGRATION TO TIME IN TDEC1
020546,000074: 42,3615           27100                                    LEMCONIC                              #  USING CONIC INTEGRATION
020547,000075: 42,3616           46135                           SLOAD    BHIZ                                  
020548,000076: 42,3617           00050                                    X2                                    #  X2 =0 EARTH SPHERE, X2 =2 MOON SPHERE
020549,000077: 42,3620           65636                                    CONV4                                 
020550,000078: 42,3621           77775                           VLOAD                                          
020551,000079: 42,3622           00001                                    RATT                                  
020552,000080: 42,3623           16205                           STODL    RLM                                   
020553,000081: 42,3624           00015                                    TAT                                   
020554,000082: 42,3625           77624        CONV3              CALL                                           
020555,000083: 42,3626           33664                                    LUNPOS                                #  UNIT POSITION VECTOR FROM EARTH TO MOON
020556,000084: 42,3627           74375                           VLOAD    VXSC                                  
020557,000085: 42,3630           02723                                    VMOON                                 
020558,000086: 42,3631           24001                                    REMDIST                               #  MEAN DISTANCE FROM EARTH TO MOON
020559,000087: 42,3632           53372                           VSL1     VAD                                   
020560,000088: 42,3633           02205                                    RLM                                   
020561,000089: 42,3634           77650                           GOTO                                           
020562,000090: 42,3635           65640                                    CONV5                                 
020563,000091: 42,3636           77775        CONV4              VLOAD                                          
020564,000092: 42,3637           00001                                    RATT                                  #  UE = -UNIT(RATT)              EARTH SPHERE
020565,000093: 42,3640           53401        CONV5              SETPD    UNIT                                  #  UE = -UNIT((REM)(UEM) + RL)   MOON SPHERE
020566,000094: 42,3641           00001                                    0D                                    #  SET PL POINTER TO 0
020567,000095: 42,3642           45076                           VCOMP    CALL                                  
020568,000096: 42,3643           47537                                    CDUTRIG                               #  COMPUTE SINES AND COSINES OF CDU ANGLES
020569,000097: 42,3644           76521                           MXV      VSL1                                  #  TRANSFORM REF. COORDINATE SYSTEM TO
020570,000098: 42,3645           01734                                    REFSMMAT                              #  STABLE MEMBER B-1 X B-1 X B+1 = B-1
020571,000099: 42,3646           71206                           PUSH     DLOAD                                 #  8D
020572,000100: 42,3647           06522                                    HI6ZEROS                              
020573,000101: 42,3650           02201                           STORE    PITCHANG                              
020574,000102: 42,3651           26203                           STOVL    YAWANG                                #  ZERO OUT ANGLES
020575,000103: 42,3652           77624                           CALL                                           
020576,000104: 42,3653           47671                                    *SMNB*                                
020577,000105: 42,3654           16205                           STODL    RLM                                   #  PRE-MULTIPLY RLM BY (NBSA) MATRIX(B0)
020578,000106: 42,3655           02207                                    RLM        +2                         
020579,000107: 42,3656           45206                           PUSH     DSU                                   
020580,000108: 42,3657           02205                                    RLM                                   
020581,000109: 42,3660           77605                           DMP                                            
020582,000110: 42,3661           25771                                    1OVSQRT2                              
020583,000111: 42,3662           16207                           STODL    RLM        +2                         
020584,000112: 42,3663           41215                           DAD      DMP                                   
020585,000113: 42,3664           02205                                    RLM                                   
020586,000114: 42,3665           25771                                    1OVSQRT2                              
020587,000115: 42,3666           26205                           STOVL    RLM                                   #  R B-1
020588,000116: 42,3667           02205                                    RLM                                   
020589,000117: 42,3670           63256                           UNIT     PDVL                                  

Page 488

020591,000119: 42,3671           02205                                    RLM                                   
020592,000120: 42,3672           72431                           VPROJ    VSL2                                  #  PROJECTION OF R ONTO LM XZ PLANE
020593,000121: 42,3673           06516                                    HIUNITY                               
020594,000122: 42,3674           40045                           BVSU     BOV                                   #  CLEAR OVERFLOW INDICATOR IF ON
020595,000123: 42,3675           02205                                    RLM                                   
020596,000124: 42,3676           65677                                    COVCNV                                
020597,000125: 42,3677           40056        COVCNV             UNIT     BOV                                   #  EXIT ON OVERFLOW
020598,000126: 42,3700           65745                                    SBANDEX                               
020599,000127: 42,3701           47206                           PUSH     VXV                                   #  URP VECTOR B-1
020600,000128: 42,3702           06514                                    HIUNITZ                               
020601,000129: 42,3703           57572                           VSL1     VCOMP                                 #  UZ X URP = -(URP X UZ)
020602,000130: 42,3704           02205                           STORE    RLM                                   #  X VEC B-1
020603,000131: 42,3705           63241                           DOT      PDVL                                  #  SGN(X.UY) UNSCALED
020604,000132: 42,3706           06516                                    HIUNITY                               
020605,000133: 42,3707           02205                                    RLM                                   
020606,000134: 42,3710           75246                           ABVAL    SIGN                                  
020607,000135: 42,3711           77736                           ASIN                                           #  ASIN((SGN(X.UY))ABV(X))       REV B0
020608,000136: 42,3712           26201                           STOVL    PITCHANG                              
020609,000137: 42,3713           00007                                    URP                                   
020610,000138: 42,3714           51041                           DOT      BPL                                   
020611,000139: 42,3715           06514                                    HIUNITZ                               
020612,000140: 42,3716           65723                                    NOADJUST                              #  YES, -90 TO +90
020613,000141: 42,3717           45345                           DLOAD    DSU                                   
020614,000142: 42,3720           06520                                    HIDPHALF                              
020615,000143: 42,3721           02201                                    PITCHANG                              
020616,000144: 42,3722           02201                           STORE    PITCHANG                              
020617,000145: 42,3723           47375        NOADJUST           VLOAD    VXV                                   
020618,000146: 42,3724           00001                                    UR                                    #  Z = (UR X URP)
020619,000147: 42,3725           00007                                    URP                                   
020620,000148: 42,3726           77772                           VSL1                                           
020621,000149: 42,3727           16205                           STODL    RLM                                   #  Z VEC B-1
020622,000150: 42,3730           02201                                    PITCHANG                              
020623,000151: 42,3731           74356                           SIN      VXSC                                  
020624,000152: 42,3732           06514                                    HIUNITZ                               
020625,000153: 42,3733           71525                           PDDL     COS                                   
020626,000154: 42,3734           02201                                    PITCHANG                              
020627,000155: 42,3735           52361                           VXSC     VSU                                   
020628,000156: 42,3736           06520                                    HIUNITX                               #  (UX COS ALPHA) - (UZ SIN ALPHA)
020629,000157: 42,3737           63241                           DOT      PDVL                                  #  YAW.Z
020630,000158: 42,3740           02205                                    RLM                                   
020631,000159: 42,3741           02205                                    RLM                                   
020632,000160: 42,3742           75246                           ABVAL    SIGN                                  
020633,000161: 42,3743           77736                           ASIN                                           
020634,000162: 42,3744           02203                           STORE    YAWANG                                
020635,000163: 42,3745           77776        SBANDEX            EXIT                                           
020636,000164: 42,3746           31044                           CA       EXTVBACT                              
020637,000165: 42,3747           74747                           MASK     BIT5                                  #  IS BIT5 STILL ON
020638,000166: 42,3750           00006                           EXTEND                                         
020639,000167: 42,3751           15472                           BZF      ENDEXT                                #  NO
020640,000168: 42,3752           35017                           CAF      PRIO5                                 

Page 489

020642,000170: 42,3753           05146                           TC       PRIOCHNG                              
020643,000171: 42,3754           33767                           CAF      V06N51                                #  DISPLAY ANGLES
020644,000172: 42,3755           04616                           TC       BANKCALL                              
020645,000173: 42,3756           20353                           CADR     GOMARKFR                              
020646,000174: 42,3757           05563                           TC       B5OFF                                 #  TERMINATE
020647,000175: 42,3760           05563                           TC       B5OFF                                 #  PROCEED
020648,000176: 42,3761           05155                           TC       ENDOFJOB                              #  RECYCLE
020649,000177: 42,3762           34751                           CAF      BIT3                                  #  IMMEDIATE RETURN
020650,000178: 42,3763           05464                           TC       BLANKET                               #  BLANK R3
020651,000179: 42,3764           34740                           CAF      PRIO4                                 
020652,000180: 42,3765           05146                           TC       PRIOCHNG                              
020653,000181: 42,3766           03610                           TC       SBANDANT   +2                         #  YES, CONTINUE DISPLAYING ANGLES
020654,000182: 42,3767           01463        V06N51             VN       0651                                  
020655,000183: 42,3770           26501 07463  1OVSQRT2           2DEC     .7071067815                            #  1/SQRT(2)
020656,000184: 
020657,000185: 42,3772                        UR                 EQUALS   0D                                    
020658,000186: 42,3772                        URP                EQUALS   6D                                    
020659,000187: 42,3772  30,2000                                  SBANK=   LOWSUPER                              
020660,000188: 

End of include-file S-BAND_ANTENNA_FOR_LM.agc.  Parent file is MAIN.agc