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.

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

Page 712

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

Page 713

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

Page 714

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

Page 715

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

Page 716

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

Page 717

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

Page 718

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

Page 719

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

Page 720

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

Page 721

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

Page 722
Empty page.

030740,000461: 

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