Source Code

These source-code files derive from a printout of Luminary 116 (the Apollo 12 Lunar Module guidance computer program), from the personal library of original AGC developer Don Eyles, digitally photographed at archive.org, financially sponsored by Ron Burkey, and transcribed to source code by a team of volunteers. This colorized, syntax-highlighted form was created by assembling that transcribed source code. Note that the full page images are available on the Virtual AGC project page at archive.org, while reduced-size images are presented at the VirtualAGC project website. Report or fix any transcription errors at the Virtual AGC project code repository.

Notations on the program listing read, in part:

	GAP:  ASSEMBLE REVISION 116 OF AGC PROGRAM LUMINARY BY NASA 2021112-071
	19:09 AUG. 11,1969
Note that the date is the date of the printout, not the date of the program revision.

030288,000002:                                                                                                  ## Copyright:   Public domain.
030289,000003:                                                                                                  ## Filename:    R30.agc
030290,000004:                                                                                                  ## Purpose:     A section of Luminary revision 116.
030291,000005:                                                                                                  ##              It is part of the source code for the Lunar Module's (LM) 
030292,000006:                                                                                                  ##              Apollo Guidance Computer (AGC) for Apollo 12.
030293,000007:                                                                                                  ##              This file is intended to be a faithful transcription, except
030294,000008:                                                                                                  ##              that the code format has been changed to conform to the
030295,000009:                                                                                                  ##              requirements of the yaYUL assembler rather than the
030296,000010:                                                                                                  ##              original YUL assembler.
030297,000011:                                                                                                  ## Reference:   pp. 712-722
030298,000012:                                                                                                  ## Assembler:   yaYUL
030299,000013:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
030300,000014:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
030301,000015:                                                                                                  ## Mod history: 2017-01-22 MAS  Created from Luminary 99.
030302,000016:                                                                                                  ##              2017-02-08 RSB  Comment-text fixes discovered while proofing Artemis 72.
030303,000017:                                                                                                  ##              2017-03-09 RSB  Transcribed, and then proofed comment-text using
030304,000018:                                                                                                  ##                              3-way diff vs Luminary 99 and Luminary 131.
030305,000019:                                                                                                  ##                              (Admittedly, the former is more for detecting errors
030306,000020:                                                                                                  ##                              in Luminary 99 than the other way around.)
030307,000021:                                                                                                  ##              2017-03-16 RSB  Comment-text fixes identified in 5-way
030308,000022:                                                                                                  ##                              side-by-side diff of Luminary 69/99/116/131/210.
030309,000023:                                                                                                  ##              2017-03-17 RSB  Comment-text fixes identified in diff'ing
030310,000024:                                                                                                  ##                              Luminary 99 vs Comanche 55.
030311,000025:                                                                                                  ##              2021-05-30 ABS  TICKTIFF -> TICKTFF
030312,000026: 

Page 712

030314,000028:                                                                                                  #  SUBROUTINE NAME:  V82CALL
030315,000029:                                                                                                  #  MOD NO: 0                                                             DATE: 16 FEB 67
030316,000030:                                                                                                  #  MOD BY: RR BAIRNSFATHER                                               LOG SECTION:  R30
030317,000031:                                                                                                  #  MOD NO: 1     MOD BY:  RR BAIRNSFATHER        DATE: 11 APR 67         SR30.1 CHANGED TO ALLOW MONITOR OPERN
030318,000032:                                                                                                  #  MOD NO: 2     MOD BY  ALONSO                  DATE: 11 DEC 67         VB82 PROGRAM REWRITTEN
030319,000033:                                                                                                  #  MOD NO: 3     MOD BY  ALONSO                  DATE: 26 MAR 68         PROG MOD TO HANDLE DIF EARTH/MOON SCALE
030320,000034: 
030321,000035:                                                                                                  #  NEW FUNCTIONAL DESCRIPTION:   CALLED BY VERB 82 ENTER.  PRIORITY 10
030322,000036:                                                                                                  #  USED THROUGHOUT.              CALCULATE AND DISPLAY ORBITAL PARAMETERS
030323,000037: 
030324,000038:                                                                                                  #  1.    IF AVERAGE G IS OFF:
030325,000039:                                                                                                  #                FLASH DISPLAY V04N06.  R2 INDICATES WHICH SHIP'S STATE VECTOR IS
030326,000040:                                                                                                  #                        TO BE UPDATED.  INITIAL CHOICE IS THIS SHIP (R2=1).  ASTRONAUT
030327,000041:                                                                                                  #                        CAN CHANGE TO OTHER SHIP BY V22EXE, WHERE X NOT EQ 1.
030328,000042:                                                                                                  #                SELECTED STATE VECTOR UPDATED BY THISPREC (OTHPREC).
030329,000043:                                                                                                  #                CALLS SR30.1 (WHICH CALLS TFFCONMU + TFFRP/RA) TO CALCULATE
030330,000044:                                                                                                  #                        RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE
030331,000045:                                                                                                  #                        HEIGHT ABOVE LAUNCH PAD OR LUNAR LANDING SITE), HAPO (APOGEE
030332,000046:                                                                                                  #                        HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO
030333,000047:                                                                                                  #                        INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
030334,000048:                                                                                                  #                FLASH MONITOR V16N44 (HAPO, HPER, TFF).  TFF IS -59M59S IF IT WAS
030335,000049:                                                                                                  #                        NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND.
030336,000050:                                                                                                  #                        ASTRONAUT HAS OPTION TO MONITOR TPER BY KEYING IN N 32 E.
030337,000051:                                                                                                  #                        DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS
030338,000052:                                                                                                  #                        ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S.
030339,000053:                                                                                                  #  2.    IF AVERAGE G IS ON:
030340,000054:                                                                                                  #                CALLS SR30.1 APPROX EVERY TWO SECS.  STATE VECTOR IS ALWAYS
030341,000055:                                                                                                  #                        FOR THIS VEHICLE.  V82 DOES NOT DISTURB STATE VECTOR.  RESULTS
030342,000056:                                                                                                  #                        OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF.
030343,000057:                                                                                                  #                FLASH MONITOR V16N44 (HAPO, HPER, TFF).
030344,000058:                                                                                                  #        ADDENDUM:  HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
030345,000059:                                                                                                  #                ABOVE REMARKS.
030346,000060: 
030347,000061:                                                                                                  #  CALLING SEQUENCE: VERB 82 ENTER.
030348,000062: 
030349,000063:                                                                                                  #  SUBROUTINES CALLED:   SR30.1, GOXDSPF
030350,000064:                                                                                                  #                        MAYBE - THISPREC, OTHPREC, LOADTIME, DELRSPL
030351,000065: 
030352,000066:                                                                                                  #  NORMAL EXIT MODES:  TC ENDEXT
030353,000067: 
030354,000068:                                                                                                  #  ALARMS:  NONE
030355,000069: 
030356,000070:                                                                                                  #  OUTPUT:       HAPOX   (-29) M
030357,000071:                                                                                                  #                HPERX   (-29) M
030358,000072:                                                                                                  #                RAPO    (-29) M EARTH
030359,000073:                                                                                                  #                        (-27) M MOON
030360,000074:                                                                                                  #                RPER    (-29) M EARTH
030361,000075:                                                                                                  #                        (-27) M MOON
030362,000076:                                                                                                  #                TFF     (-28) CS        CONTAINS NEGATIVE QUANTITY
030363,000077:                                                                                                  #                -TPER   (-28) CS        CONTAINS NEGATIVE QUANTITY
030364,000078: 

Page 713

030366,000080:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:  STATE VECTOR.
030367,000081: 
030368,000082:                                                                                                  #  DEBRIS:       QPRET, RONE, VONE, TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG.
030369,000083:                                                                                                  #                MAYBE:  TSTART82, V82FLAGS, TDEC1.
030370,000084: 
030371,000085: 13,2351  E4,1517                                  EBANK=   HAPOX                                 
030372,000086: 31,2144                                           BANK     31                                    
030373,000087: 22,2000                                           SETLOC   R30LOC                                
030374,000088: 22,2000                                           BANK                                           
030375,000089: 22,3242                                           COUNT*   $$/R30                                
030376,000090: 
030377,000091: 22,3242           06042        V82CALL            TC       INTPRET                               
030378,000092: 22,3243           52014                           BON      GOTO                                  
030379,000093: 22,3244           03712                                    AVEGFLAG                              
030380,000094: 22,3245           45465                                    V82GON                                #  IF AVERAGE G ON
030381,000095: 22,3246           45247                                    V82GOFF                               #  IF AVERAGE G OFF
030382,000096: 
030383,000097: 22,3247           77776        V82GOFF            EXIT                                           #  ALLOW ASTRONAUT TO SELECT VEHICLE
030384,000098: 22,3250           34752                           CAF      TWO                                   #  DESIRED FOR ORBITAL PARAMETERS
030385,000099: 22,3251           55050                           TS       OPTIONX                               #  CALCULATION AND DISPLAY.
030386,000100: 22,3252           34753                           CAF      ONE                                   
030387,000101: 22,3253           55051                           TS       OPTIONX    +1                         
030388,000102: 22,3254           33316                           CAF      OPTIONVN                              #  V 04 N 06
030389,000103: 22,3255           04616                           TC       BANKCALL                              
030390,000104: 22,3256           20334                           CADR     GOXDSPF                               
030391,000105: 22,3257           05472                           TC       ENDEXT                                #  TERMINATE
030392,000106: 22,3260           03262                           TC       +2                                    #  PROCEED
030393,000107: 22,3261           03254                           TC       -5                                    #  DATA IN.  OPTION1+1 = 1 FOR THIS VEHICLE.
030394,000108:                                                                                                  #                UNEQ 1 FOR OTHER VEHICLE.
030395,000109: 22,3262           34750                           CAF      BIT4                                  #  80 MS
030396,000110: 22,3263           05203                           TC       WAITLIST                              
030397,000111: 22,3264  E4,1540                                  EBANK=   TFF                                   
030398,000112: 22,3264           03430 44064                     2CADR    TICKTEST                              
030399,000113: 
030400,000114: 22,3266           00003                           RELINT                                         
030401,000115: 22,3267           33320        V82GOFLP           CAF      TFFBANK                               #  MAJOR RECYCLE LOOP ENTRY
030402,000116: 22,3270           54003                           TS       EBANK                                 
030403,000117: 22,3271           34755                           CAF      ZERO                                  
030404,000118: 22,3272           55537                           TS       V82FLAGS                              #  ZERO FLAGS FOR TICKTEST. INHIBITS
030405,000119:                                                                                                  #  DECREMENTING OF TFF AND -TPER.
030406,000120: 22,3273           35021                           CAF      PRIO7                                 
030407,000121: 22,3274           05105                           TC       FINDVAC                               #  V82GOFF1 WILL EXECUTE STATE VECTOR
030408,000122: 22,3275  E4,1540                                  EBANK=   TFF                                   #  UPDATE AND ORBIT CALCULATIONS FOR
030409,000123: 22,3275           03321 44064                     2CADR    V82GOFF1                              #  SELECTED VEHICLE ABOUT PROPER BODY.
030410,000124: 
030411,000125: 22,3277           00003                           RELINT                                         
030412,000126: 22,3300           36250        V82STALL           CAF      THREE                                 #  STALL IN THIS LOOP AND WITHOLD V 16 N 44

Page 714

030414,000128: 22,3301           71537                           MASK     V82FLAGS                              #  UNTIL STATE VECTOR UPDATE SETS ONE OF
030415,000129: 22,3302           10000                           CCS      A                                     #  OUR FLAG BITS.
030416,000130: 22,3303           03310                           TC       FLAGGON                               #  EXIT FROM STALL LOOP.
030417,000131: 22,3304           34777                           CAF      1SEC                                  
030418,000132: 22,3305           04616                           TC       BANKCALL                              
030419,000133: 22,3306           01736                           CADR     DELAYJOB                              
030420,000134: 22,3307           03300                           TC       V82STALL                              
030421,000135: 
030422,000136: 22,3310           33317        FLAGGON            CAF      V16N44                                #  MONITOR HAPO,HPER,TFF.
030423,000137: 22,3311           04616                           TC       BANKCALL                              
030424,000138: 22,3312           20334                           CADR     GOXDSPF                               
030425,000139: 22,3313           05563                           TC       B5OFF                                 #  TERM  THIS TELLS TICKTEST TO KILL ITSELF
030426,000140: 22,3314           05563                           TC       B5OFF                                 #  PROCEED   DITTO
030427,000141: 22,3315           03267                           TC       V82GOFLP                              #  RECYCLE   RECOMPUTE STATE VECT + DISPLAY
030428,000142: 
030429,000143: 22,3316           01014        OPTIONVN           VN       412                                   
030430,000144: 22,3317           04054        V16N44             VN       1644                                  
030431,000145: 22,3320           02140        TFFBANK            ECADR    TFF                                   
030432,000146: 
030433,000147: 22,3321           06042        V82GOFF1           TC       INTPRET                               
030434,000148: 22,3322           77634                           RTB                                            
030435,000149: 22,3323           21574                                    LOADTIME                              
030436,000150: 22,3324           00041                           STORE    TDEC1                                 #  TIME FOR STATE VECTOR UPDATE.
030437,000151: 22,3325           02205                           STORE    TSTART82                              #  TIME FOR INTERNAL USE.
030438,000152: 22,3326           77776                           EXIT                                           
030439,000153: 22,3327           41051                           CS       OPTIONX    +1                         #  1 FOR THIS VEHICLE, NOT 1 FOR OTHER.
030440,000154: 22,3330           64753                           AD       ONE                                   
030441,000155: 22,3331           00006                           EXTEND                                         
030442,000156: 22,3332           13356                           BZF      THISSHIP                              
030443,000157: 22,3333           06042        OTHSHIP            TC       INTPRET                               
030444,000158: 22,3334           77624                           CALL                                           #  CALL STATE VECTOR UPDATE FOR OTHER SHIP.
030445,000159: 22,3335           27044                                    OTHPREC                               
030446,000160: 22,3336           77775        BOTHSHIP           VLOAD                                          #  MOVE RESULTS INTO TFFCONIC STORAGE AREAS
030447,000161: 22,3337           00001                                    RATT                                  #  TO BE CALLED BY SR30.1.
030448,000162: 22,3340           26207                           STOVL    RONE                                  #  RATT AT (-29)M FOR EARTH OR MOON
030449,000163: 22,3341           00007                                    VATT                                  
030450,000164: 22,3342           02215                           STORE    VONE                                  #  VATT AT (-7)M/CS FOR EARTH OR MOON
030451,000165: 22,3343           77743                           DLOAD*                                         
030452,000166: 22,3344           73774                                    1/RTMUE,2                             #  X2 IS 0 FOR EARTH CENTERED STATE VEC
030453,000167: 22,3345           00037                           STORE    TFF/RTMU                              #  X2 IS 2 FOR MOON
030454,000168: 22,3346           77743                           DLOAD*                                         #  AS LEFT BY THISPREC OR OTHPREC.
030455,000169: 22,3347           72411                                    MINPERE,2                             
030456,000170: 22,3350           02201                           STORE    HPERMIN                               #  TFFRTMU, HPERMIN AND RPADTEM ARE ALL
030457,000171: 22,3351           46135                           SLOAD    BHIZ                                  #  EARTH/MOON PARAMETERS AS SET HERE.
030458,000172: 22,3352           00050                                    X2                                    
030459,000173: 22,3353           45367                                    EARTHPAD                              
030460,000174: 22,3354           77650                           GOTO                                           
030461,000175: 22,3355           45373                                    MOONPAD                               

Page 715

030463,000177: 22,3356           06042        THISSHIP           TC       INTPRET                               
030464,000178: 22,3357           77624                           CALL                                           #  CALL STATE VECTOR UPDATE FOR THIS SHIP.
030465,000179: 22,3360           27060                                    THISPREC                              
030466,000180: 22,3361           77650                           GOTO                                           
030467,000181: 22,3362           45336                                    BOTHSHIP                              
030468,000182: 
030469,000183:                                                                                                  #  THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED.  DO NOT SEPARATE PAIRS.
030470,000184: 
030471,000185: 22,3363           00001 11530  MINPERM            2DEC     10668      B-27                       #  35 KFT MIN PERIGEE HEIGHT FOR MOON(-27)M
030472,000186: 
030473,000187: 22,3365           00002 31230  MINPERE            2DEC     91440      B-29                       #  300 KFT (-29)M FOR EARTH
030474,000188: 
030475,000189: 22,3367           43145        EARTHPAD           DLOAD    CLRGO                                 #  PAD 37-B RADIUS.  SCALED AT (-29)M.
030476,000190: 22,3370           06340                                    RPAD                                  
030477,000191: 22,3371           03635                                    V82EMFLG                              #  INDICATE EARTH SCALING FOR SR30.1
030478,000192: 22,3372           45377                                    BOTHPAD                               
030479,000193: 
030480,000194: 22,3373           51575        MOONPAD            VLOAD    ABVAL                                 #  COMPUTE MOON PAD RADIUS FROM RLS VECTOR.
030481,000195: 22,3374           02023                                    RLS                                   #  SCALED AT (-27)M.
030482,000196: 22,3375           77614                           SET                                            
030483,000197: 22,3376           03475                                    V82EMFLG                              #  INDICATE MOON  SCALING FOR SR30.1
030484,000198: 22,3377           36203        BOTHPAD            STCALL   RPADTEM                               
030485,000199: 22,3400           45551                                    SR30.1                                #  CALCULATE ORBITAL PARAMETERS
030486,000200: 22,3401           45234                           RTB      DSU                                   
030487,000201: 22,3402           21574                                    LOADTIME                              
030488,000202: 22,3403           02205                                    TSTART82                              #  PRESENT TIME - TIME V82GOFF1 BEGAN
030489,000203: 22,3404           02205                           STORE    TSTART82                              #                  SAVE IT
030490,000204: 22,3405           53145                           DLOAD    BZE                                   #  SR30.1 SETS -TPER=0 IF HPER L/
030491,000205: 22,3406           02143                                    -TPER                                 #  HPERMIN (300 OR 35) KFT.
030492,000206: 22,3407           45420                                    TICKTFF                               #  (-TPER = 0)
030493,000207: 22,3410           43345        TICKTPER           DLOAD    DAD                                   #  (-TPER NON ZERO) TFF WAS NOT COMPUTED,
030494,000208: 22,3411           02143                                    -TPER                                 #  BUT WAS SET TO 59M59S.  DONT TICK TFF, DO
030495,000209: 22,3412           02205                                    TSTART82                              #  TICK -TPER.  DISPLAY BOTH.
030496,000210: 22,3413           02143                           STORE    -TPER                                 #  -TPER CORRECTED FOR TIME SINCE V82GOFF1
030497,000211: 22,3414           77776                           EXIT                                           #  BEGAN.
030498,000212: 22,3415           34753                           CAF      BIT1                                  
030499,000213: 22,3416           55537                           TS       V82FLAGS                              #  INFORMS TICKTEST TO INCREMENT ONLY -TPER
030500,000214: 22,3417           05155                           TC       ENDOFJOB                              
030501,000215: 
030502,000216: 22,3420           43345        TICKTFF            DLOAD    DAD                                   #  (-TPER=0) TFF WAS COMPUTED.  TICK TFF.
030503,000217: 22,3421           02141                                    TFF                                   #  DO NOT TICK -TPER.  DISPLAY TFF, BUT NOT
030504,000218: 22,3422           02205                                    TSTART82                              #  -TPER.
030505,000219: 22,3423           02141                           STORE    TFF                                   #  TFF CORRECTED FOR TIME SINCE V82GOFF1
030506,000220: 22,3424           77776                           EXIT                                           #  BEGAN.
030507,000221: 22,3425           34752                           CAF      BIT2                                  
030508,000222: 22,3426           55537                           TS       V82FLAGS                              #  INFORMS TICKTEST TO INCREMENT ONLY TFF.
030509,000223: 22,3427           05155                           TC       ENDOFJOB                              
030510,000224: 

Page 716

030512,000226: 22,3430           34747        TICKTEST           CAF      BIT5                                  #  THIS WAITLIST PROGRAM PERPETUATES ITSELF
030513,000227: 22,3431           71043                           MASK     EXTVBACT                              #  ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
030514,000228: 22,3432           10000                           CCS      A                                     
030515,000229: 22,3433           03441                           TC       DOTICK                                
030516,000230: 22,3434           37716                           CAF      PRIO25                                
030517,000231: 22,3435           05072                           TC       NOVAC                                 #  TERMINATE V 82.  CANT CALL ENDEXT IN RUPT.
030518,000232: 22,3436     1043                                  EBANK=   EXTVBACT                              
030519,000233: 22,3436           05472 04062                     2CADR    ENDEXT                                
030520,000234: 
030521,000235: 22,3440           05261                           TC       TASKOVER                              
030522,000236: 22,3441           34777        DOTICK             CAF      1SEC                                  #  RE-REQUEST TICKTEST.
030523,000237: 22,3442           05203                           TC       WAITLIST                              
030524,000238: 22,3443  E4,1540                                  EBANK=   TFF                                   
030525,000239: 22,3443           03430 44064                     2CADR    TICKTEST                              
030526,000240: 
030527,000241: 22,3445           36250                           CAF      THREE                                 
030528,000242: 22,3446           71537                           MASK     V82FLAGS                              
030529,000243: 22,3447           50000                           INDEX    A                                     
030530,000244: 22,3450           03451                           TC       +1                                    
030531,000245: 22,3451           05261                           TC       TASKOVER                              #  IF NO FLAGBITS SET DONT CHANGE TFF OR
030532,000246:                                                                                                  #  -TPER, BUT CONTINUE LOOP.
030533,000247: 22,3452           03460                           TC       TPERTICK                              #  ONLY BIT 1 SET.  INCR -TPER BY 1 SEC.
030534,000248: 22,3453           34777        TFFTICK            CAF      1SEC                                  #  ONLY BIT 2 SET.  INCR TFF BY 1 SEC.
030535,000249: 22,3454           54001                           TS       L                                     
030536,000250: 22,3455           34755                           CAF      ZERO                                  
030537,000251: 22,3456           21541                           DAS      TFF                                   
030538,000252: 22,3457           05261                           TC       TASKOVER                              
030539,000253: 22,3460           34777        TPERTICK           CAF      1SEC                                  
030540,000254: 22,3461           54001                           TS       L                                     
030541,000255: 22,3462           34755                           CAF      ZERO                                  
030542,000256: 22,3463           21543                           DAS      -TPER                                 
030543,000257: 22,3464           05261                           TC       TASKOVER                              
030544,000258: 

Page 717

030546,000260: 22,3465           77776        V82GON             EXIT                                           #  AVERAGE G ON.  USE CURRENT STATE VECTOR
030547,000261:                                                                                                  #  FOR ORBITAL PARAMETER CALCULATIONS.
030548,000262: 22,3466           35021                           CAF      PRIO7                                 #  LESS THAN LAMBERT
030549,000263: 22,3467           05105                           TC       FINDVAC                               #  V82GON1 WILL PERFORM ORBIT CALCULATIONS
030550,000264: 22,3470  E4,1540                                  EBANK=   TFF                                   #  ABOUT PROPER BODY APPROX ONCE PER SEC.
030551,000265: 22,3470           03503 44064                     2CADR    V82GON1                               
030552,000266: 
030553,000267: 22,3472           00003                           RELINT                                         
030554,000268: 22,3473           10067                           CCS      NEWJOB                                #  WITHOLD V16 N44 UNTIL FIRST ORBIT CALC
030555,000269: 22,3474           05122                           TC       CHANG1                                #  IS DONE.  NOTE:  V82GON1 (PRIO7, FINDVAC
030556,000270:                                                                                                  #  JOB) IS COMPLETED BEFORE V82GON (PRIO7,
030557,000271:                                                                                                  #  NOVAC JOB).
030558,000272: 22,3475           33317        V82REDSP           CAF      V16N44                                #  MONITOR HAPO, HPER, TFF
030559,000273: 22,3476           04616                           TC       BANKCALL                              
030560,000274: 22,3477           20334                           CADR     GOXDSPF                               
030561,000275: 22,3500           05563                           TC       B5OFF                                 #  TERM THIS TELLS V82GON1 TO KILL ITSELF.
030562,000276: 22,3501           05563                           TC       B5OFF                                 #  PROC DITTO.
030563,000277: 22,3502           03475                           TC       V82REDSP                              #  RECYCLE
030564,000278: 
030565,000279: 22,3503           06042        V82GON1            TC       INTPRET                               #  THIS EXEC PROGRAM PERPETUATES ITSELF
030566,000280:                                                                                                  #  ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
030567,000281: 22,3504           52175                           VLOAD    GOTO                                  #  HOLDS OFF CCS NEWJOB BETWEEN RN AND
030568,000282: 22,3505           01220                                    RN                                    #  VN FETCH SO RN, VN ARE FROM SAME
030569,000283: 22,3506           45507                                    NEXTLINE                              #  STATE VECTOR UPDATE.
030570,000284: 22,3507           26207        NEXTLINE           STOVL    RONE                                  #  RN AT (-29)M FOR EARTH OR MOON
030571,000285: 22,3510           01226                                    VN                                    
030572,000286: 22,3511           02215                           STORE    VONE                                  #  VN AT (-7)M/CS FOR EARTH OR MOON
030573,000287: 22,3512           52014                           BON      GOTO                                  
030574,000288: 22,3513           04304                                    MOONTHIS                              #  FLAG INDICATES BODY ABOUT WHICH ORBITAL
030575,000289: 22,3514           45516                                    MOONGON                               #  CALCULATIONS ARE TO BE PERFORMED.
030576,000290: 22,3515           45527                                    EARTHGON                              #  IF SET - MOON, IF RESET - EARTH.
030577,000291: 
030578,000292: 22,3516           71214        MOONGON            SET      DLOAD                                 
030579,000293: 22,3517           03475                                    V82EMFLG                              #  INDICATE MOON SCALING FOR SR30.1
030580,000294: 22,3520           04001                                    1/RTMUM                               #  LUNAR PARAMETERS LOADED HERE FOR SR30.1
030581,000295: 22,3521           14037                           STODL    TFF/RTMU                              
030582,000296: 22,3522           05364                                    MINPERM                               
030583,000297: 22,3523           26201                           STOVL    HPERMIN                               
030584,000298: 22,3524           02023                                    RLS                                   #  SCALED AT (-27)M.
030585,000299: 22,3525           52046                           ABVAL    GOTO                                  
030586,000300: 22,3526           45536                                    V82GON2                               
030587,000301: 22,3527           71214        EARTHGON           CLEAR    DLOAD                                 
030588,000302: 22,3530           03675                                    V82EMFLG                              #  INDICATE EARTH SCALING FOR SR30.1
030589,000303: 22,3531           04003                                    1/RTMUE                               #  EARTH PARAMETERS LOADED HERE FOR SR30.1
030590,000304: 22,3532           14037                           STODL    TFF/RTMU                              
030591,000305: 22,3533           05366                                    MINPERE                               
030592,000306: 22,3534           16201                           STODL    HPERMIN                               
030593,000307: 22,3535           06340                                    RPAD                                  
030594,000308: 22,3536           36203        V82GON2            STCALL   RPADTEM                               #  COMMON CODE FOR EARTH & MOON.
030595,000309: 22,3537           45551                                    SR30.1                                

Page 718

030597,000311: 22,3540           77776                           EXIT                                           
030598,000312: 22,3541           34747        V82GON3            CAF      BIT5                                  
030599,000313: 22,3542           71043                           MASK     EXTVBACT                              #  SEE IF ASTRONAUT HAS SIGNALLED TERMINATE
030600,000314: 22,3543           00006                           EXTEND                                         
030601,000315: 22,3544           15472                           BZF      ENDEXT                                #  YES, TERMINATE VB 82 LOOP
030602,000316: 22,3545           34777                           CAF      1SEC                                  
030603,000317: 22,3546           04616                           TC       BANKCALL                              #  WAIT ONE SECOND BEFORE REPEATING
030604,000318: 22,3547           01736                           CADR     DELAYJOB                              #  ORBITAL PARAMETER COMPUTATION.
030605,000319: 22,3550           03503                           TC       V82GON1                               
030606,000320: 
030607,000321: 22,3551  22,3541               SPLRET             =        V82GON3                               
030608,000322: 

Page 719

030610,000324:                                                                                                  #  SUBROUTINE NAME: SR30.1
030611,000325:                                                                                                  #  MOD NO: 0                                                             DATE: 16 FEB 67
030612,000326:                                                                                                  #  MOD BY: RR BAIRNSFATHER                                               LOG SECTION: R32
030613,000327:                                                                                                  #  MOD NO: 1     MOD BY: RR BAIRNSFATHER         DATE: 11 APR 67         SR30.1 CHANGED TO ALLOW MONITOR OPERN
030614,000328:                                                                                                  #  MOD NO: 2     MOD BY: RR BAIRNSFATHER         DATE: 14 APR 67         ADD OVFL CK FOR RAPO
030615,000329:                                                                                                  #  MOD NO: 3     MOD BY ALONSO                   DATE: 11 DEC 67         SUBROUTINE REWRITTEN
030616,000330:                                                                                                  #  MOD NO: 4     MOD BY ALONSO                   DATE: 26 MAR 68         PROG MOD TO HANDLE DIF EARTH/MOON SCALE
030617,000331:                                                                                                  #  MOD NO: 5     MOD BY: RR BAIRNSFATHER         DATE: 6 AUG 68          OVFL CK FOR HAPO & HPER. VOIDS MOD #2.
030618,000332: 
030619,000333:                                                                                                  #  NEW FUNCTIONAL DESCRIPTION:  ORBITAL PARAMETERS DISPLAY FOR NOUNS 32 AND 44.
030620,000334:                                                                                                  #  SR30.1 CALLS TFFCONMU AND TFFRP/RA TO CALCULATE RPER (PERIGEE RADIUS),
030621,000335:                                                                                                  #  RAPO (APOGEE RADIUS), HPER (PERIGEE HEIGHT ABOVE LAUNCH PAD OR LUNAR
030622,000336:                                                                                                  #  LANDING SITE), HAPO (APOGEE HEIGHT AS ABOVE), TPER (TIME TO PERIGEE),
030623,000337:                                                                                                  #  TFF (TIME TO INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
030624,000338:                                                                                                  #  IF HPER IS GREATER THAN OR EQUAL TO HPERMIN, CALCULATES TPER AND STORES
030625,000339:                                                                                                  #  NEGATIVE IN -TPER.  OTHERWISE STORES +0 IN -TPER.  WHENEVER TPER IS
030626,000340:                                                                                                  #  CALCULATED, TFF IS NOT COMPUTABLE AND DEFAULTS TO -59MIN 59SEC.  IF HAPO
030627,000341:                                                                                                  #  WOULD EXCEED 9999.9 NM, IT IS LIMITED TO THAT VALUE FOR DISPLAY.
030628,000342: 
030629,000343:                                                                                                  #  ADDENDUM:     HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
030630,000344:                                                                                                  #                ABOVE REMARKS.
030631,000345: 
030632,000346:                                                                                                  #  CALLING SEQUENCE:     CALL
030633,000347:                                                                                                  #                                SR30.1
030634,000348: 
030635,000349:                                                                                                  #  SUBROUTINES CALLED:   TFFCONMU, TFFRP/RA, CALCTPER, CALCTFF
030636,000350: 
030637,000351:                                                                                                  #  NORMAL EXIT MODE:     CALLING LINE +1 (STILL IN INTERPRETIVE MODE)
030638,000352: 
030639,000353:                                                                                                  #  ALARMS:       NONE
030640,000354: 
030641,000355:                                                                                                  #  OUTPUT:       RAPO    (-29) M EARTH   APOGEE RADIUS   EARTH CENTERED COORD.
030642,000356:                                                                                                  #                        (-27) M MOON                    MOON CENTERED COORD.
030643,000357:                                                                                                  #                RPER    (-29) M EARTH   PERIGEE RADIUS  EARTH CENTERED COORD.
030644,000358:                                                                                                  #                        (-27) M MOON                    MOON CENTERED COORD.
030645,000359:                                                                                                  #                HAPOX   (-29) M         APOGEE ALTITUDE ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM.
030646,000360:                                                                                                  #                HPERX   (-29) M         PERIGEE ALT. ABOVE PAD OR LAND. SITE    MAX VALUE LIMITED TO 9999.9 NM.
030647,000361:                                                                                                  #                TFF     (-28) CS        TIME TO 300KFT OR 35KFT ALTITUDE
030648,000362:                                                                                                  #                -TPER   (-28) CS        TIME TO PERIGEE
030649,000363: 
030650,000364:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED -
030651,000365:                                                                                                  #        TFF/RTMU        (+17) EARTH     RECIPROCAL OF PROPER GRAV CONSTANT FOR
030652,000366:                                                                                                  #                        (+14) MOON      EARTH OR MOON = 1/SQRT(MU).
030653,000367:                                                                                                  #        RONE            (-29) M         STATE VECTOR
030654,000368:                                                                                                  #        VONE            (-7)  M/CS      STATE VECTOR
030655,000369:                                                                                                  #        RPADTEM         (-29) M EARTH   RADIUS OF LAUNCH PAD OR LUNAR LANDING
030656,000370:                                                                                                  #                        (-27) M MOON    SITE.
030657,000371:                                                                                                  #        HPERMIN         (-29) M EARTH   (300 OR 35) KFT MINIMUM PERIGEE ALTITUDE
030658,000372:                                                                                                  #                        (-27) M MOON    ABOVE LAUNCH PAD OR LUNAR LANDING SITE.
030659,000373:                                                                                                  #        V82EMFLG        (INT SW BIT)    RESET FOR EARTH, SET FOR MOON.
030660,000374: 
030661,000375:                                                                                                  #  DEBRIS:       QPRET, PDL, S2
030662,000376: 

Page 720

030664,000378: 22,3551                                           COUNT*   $$/SR30S                              
030665,000379: 
030666,000380: 22,3551           44001        SR30.1             SETPD    STQ                                   #  INITIALIZE PUSHDOWN LIST.
030667,000381: 22,3552           00001                                    0                                     
030668,000382: 22,3553           00051                                    S2                                    
030669,000383:                                                                                                  #  SR30.1 INPUT: RONE AT (-29)M EARTH/MOON
030670,000384:                                                                                                  #                VONE AT (-7)M/CS
030671,000385:                                                                                                  #  TFFCONMU, TFFRP/RA, CALCTPER AND CALCTFF
030672,000386:                                                                                                  #  CALLS REQUIRE:
030673,000387:                                                                                                  #  EARTH CENTERED (NO RESCALING REQUIRED)
030674,000388:                                                                                                  #        RONE SCALED TO B-29 M
030675,000389:                                                                                                  #        VONE SCALED TO B-7  M/CS
030676,000390:                                                                                                  #  MOON CENTERED (RESCALING REQUIRED)
030677,000391:                                                                                                  #        RONE SCALED TO B-27 M
030678,000392:                                                                                                  #        VONE SCALED TO B-5  M/CS
030679,000393: 22,3554           77214                           BOFF     VLOAD                                 
030680,000394: 22,3555           03755                                    V82EMFLG                              #  OFF FOR EARTH, ON FOR MOON.
030681,000395: 22,3556           45565                                    TFFCALLS                              
030682,000396: 22,3557           02207                                    RONE                                  
030683,000397: 22,3560           77752                           VSL2                                           
030684,000398: 22,3561           26207                           STOVL    RONE                                  
030685,000399: 22,3562           02215                                    VONE                                  
030686,000400: 22,3563           77752                           VSL2                                           
030687,000401: 22,3564           02215                           STORE    VONE                                  
030688,000402: 22,3565           77624        TFFCALLS           CALL                                           
030689,000403: 22,3566           57361                                    TFFCONMU                              
030690,000404: 22,3567           77624                           CALL                                           #  TFFRP/RA COMPUTES RAPO,RPER.
030691,000405: 22,3570           57427                                    TFFRP/RA                              
030692,000406:                                                                                                  #  RETURNS WITH RAPO IN D(MPAC).
030693,000407: 22,3571           77625                           DSU                                            
030694,000408: 22,3572           02203                                    RPADTEM                               
030695,000409: 22,3573           64414                           BOFF     SR2R                                  #  NEED HAPO AT (-29)M FOR DISPLAY.
030696,000410:                                                                                                  #  IF MOON CENTERED, RESCALE FROM (-27)M.
030697,000411:                                                                                                  #  IF EARTH CENTERED ALREADY AT (-29)M.
030698,000412: 22,3574           03755                                    V82EMFLG                              #  OFF FOR EARTH, ON FOR MOON.
030699,000413: 22,3575           45576                                    +1                                    
030700,000414: 22,3576           77624                           CALL                                           #  IF HAPO > MAXNM, SET HAPO =9999.9 NM.
030701,000415: 22,3577           45636                                    MAXCHK                                #  OTHERWISE STORE (RAPO-RPADTEM) IN HAPO.
030702,000416: 22,3600           16120        STORHAPO           STODL    HAPOX                                 
030703,000417: 22,3601           00017                                    RPER                                  
030704,000418: 22,3602           77625                           DSU                                            
030705,000419: 22,3603           02203                                    RPADTEM                               #  GIVES HPER AT (-29)M EARTH, (-27)M MOON.
030706,000420: 22,3604           00161                           STORE    MPAC       +4                         #  SAVE THIS FOR COMPARISON TO HPERMIN.
030707,000421: 22,3605           64414                           BOFF     SR2R                                  #  NEED HPER AT (-29)M FOR DISPLAY.
030708,000422:                                                                                                  #  IF MOON CENTERED, RESCALE FROM (-27)M.
030709,000423:                                                                                                  #  IF EARTH CENTERED ALREADY AT (-29)M.
030710,000424: 22,3606           03755                                    V82EMFLG                              #  OFF FOR EARTH, ON FOR MOON.
030711,000425: 22,3607           45610                                    +1                                    
030712,000426: 22,3610           77624                           CALL                                           #  IF HPER > MAXNM, SET HPER = 9999.9 NM.
030713,000427: 22,3611           45636                                    MAXCHK                                

Page 721

030715,000429: 22,3612           16122        STORHPER           STODL    HPERX                                 #  STORE (RPER - RPADTEM) INTO HPERX.
030716,000430: 22,3613           00161                                    MPAC       +4                         
030717,000431: 22,3614           51025                           DSU      BPL                                   #  HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
030718,000432: 22,3615           02201                                    HPERMIN                               #  IF HPER L/ HPERMIN (300 OR 35) KFT,
030719,000433: 22,3616           45622                                    DOTPER                                #  THEN ZERO INTO -TPER.
030720,000434: 22,3617           52145                           DLOAD    GOTO                                  #  OTHERWISE CALCULATE TPER.
030721,000435: 22,3620           06524                                    HI6ZEROS                              
030722,000436: 22,3621           45626                                    SKIPTPER                              
030723,000437: 22,3622           45145        DOTPER             DLOAD    CALL                                  
030724,000438: 22,3623           00017                                    RPER                                  
030725,000439: 22,3624           57465                                    CALCTPER                              
030726,000440: 22,3625           77676                           DCOMP                                          #  TPER IS PUT NEG INTO -TPER.
030727,000441: 22,3626           16143        SKIPTPER           STODL    -TPER                                 
030728,000442: 22,3627           02201                                    HPERMIN                               #  HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
030729,000443: 22,3630           45015                           DAD      CALL                                  
030730,000444: 22,3631           02203                                    RPADTEM                               #  RPADTEM AT (-29)M FOR EARTH, (-27)M MOON
030731,000445: 22,3632           57470                                    CALCTFF                               #  GIVES 59M59S FOR TFF IF RPER G/
030732,000446: 22,3633           77676                           DCOMP                                          #  HPERMIN + RPADTEM.  (TPER WAS NON ZERO)
030733,000447: 22,3634           36141                           STCALL   TFF                                   #  OTHERWISE COMPUTES TFF.       (GOTO)
030734,000448: 22,3635           00051                                    S2                                    
030735,000449: 
030736,000450: 22,3636           51025        MAXCHK             DSU      BPL                                   #  IF C(MPAC) > 9999.9 NM, MPAC = 9999.9 NM
030737,000451: 22,3637           05646                                    MAXNM                                 
030738,000452: 22,3640           45643                                    +3                                    #  OTHERWISE C(MPAC) = B(MPAC).
030739,000453: 22,3641           43415                           DAD      RVQ                                   
030740,000454: 22,3642           05646                                    MAXNM                                 
030741,000455: 22,3643           43545                 +3        DLOAD    RVQ                                   #  (USED BY P30 - P37 ALSO)
030742,000456: 22,3644           05646                                    MAXNM                                 
030743,000457: 
030744,000458: 22,3645           01065 05603  MAXNM              2OCT     0106505603                            
030745,000459: 

Page 722
Empty page.

030748,000462: 

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