Source Code

These source-code files were transcribed from scans made from Don Eyles's personal copy of Luminary 069. They were scanned at archive.org's Boston facility, and the scanning was sponsored by Onno Hommes. The code was transcribed from these scans by a team of volunteers who are referenced in the program comments. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". In some cases, where similar code blocks exist in previously-transcribed AGC programs (primarily Luminary 99, from Apollo 11) those code blocks were used as a starting point and then corrected to agree with the Luminary 69 scans. The full scans are available at the Virtual AGC project's collection at archive.org, while more-convenient reduced-size (but reduced-quality) images are available at the main Virtual AGC website. Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. Notations on the program listing read, in part:

	GAP:  ASSEMBLE REVISION 069 OF AGC PROGRAM LUMINARY BY NASA 2021112-011
	19:02 NOV. 25,1968
Note that the date is the date of the printout, not the date of the program revision.

054614,000002:                                                                                                  ## Copyright:   Public domain.
054615,000003:                                                                                                  ## Filename:    TIME_OF_FREE_FALL.agc
054616,000004:                                                                                                  ## Purpose:     The main source file for Luminary revision 069.
054617,000005:                                                                                                  ##              It is part of the source code for the original release
054618,000006:                                                                                                  ##              of the flight software for the Lunar Module's (LM) Apollo
054619,000007:                                                                                                  ##              Guidance Computer (AGC) for Apollo 10. The actual flown
054620,000008:                                                                                                  ##              version was Luminary 69 revision 2, which included a
054621,000009:                                                                                                  ##              newer lunar gravity model and only affected module 2.
054622,000010:                                                                                                  ##              This file is intended to be a faithful transcription, except
054623,000011:                                                                                                  ##              that the code format has been changed to conform to the
054624,000012:                                                                                                  ##              requirements of the yaYUL assembler rather than the
054625,000013:                                                                                                  ##              original YUL assembler.
054626,000014:                                                                                                  ## Reference:   pp. 1262-1277
054627,000015:                                                                                                  ## Assembler:   yaYUL
054628,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
054629,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
054630,000018:                                                                                                  ## Mod history: 2016-12-13 MAS  Created from Luminary 99.
054631,000019:                                                                                                  ##              2016-12-18 MAS  Updated from comment-proofed Luminary 99 version.
054632,000020:                                                                                                  ##              2017-01-19 RRB  Updated for Luminary 69.
054633,000021:                                                                                                  ##              2017-01-28 RSB  Proofed comment text using octopus/prooferComments
054634,000022:                                                                                                  ##                              but no errors found.
054635,000023:                                                                                                  ##              2017-03-14 RSB  Comment-text fixes noted in proofing Luminary 116.
054636,000024:                                                                                                  ##              2017-03-16 RSB  Comment-text fixes identified in 5-way
054637,000025:                                                                                                  ##                              side-by-side diff of Luminary 69/99/116/131/210.
054638,000026: 

Page 1262

054640,000028:                                                                                                  #           THE TFF SUBROUTINES MAY BE USED IN EITHER EARTH OR MOON CENTERED COORDINATES. THE TFF ROUTINES NEVER
054641,000029:                                                                                                  #  KNOW WHICH ORIGIN APPLIES. IT IS THE USER WHO KNOWS, AND WHO SUPPLIES  RONE, VONE AND 1/SQRT(MU) AT THE
054642,000030:                                                                                                  #  APPROPRIATE SCALE LEVEL FOR THE PROPER PRIMARY BODY.
054643,000031: 
054644,000032:                                                                                                  #           EARTH ORIGIN           POSITION      -29      METERS
054645,000033:                                                                                                  #                                  VELOCITY      -7       METERS/CENTISECOND
054646,000034:                                                                                                  #                                  1/SQRT(MU)    +17      SQRT(CS SQ/METERS CUBED)
054647,000035: 
054648,000036:                                                                                                  #           MOON ORIGIN            POSITION      -27      METERS
054649,000037:                                                                                                  #                                  VELOCITY      -5       METERS/CENTISECONDS
054650,000038:                                                                                                  #                                  1/SQRT(MU)    +14      SQRT(CS SQ/METERS CUBED)
054651,000039: 
054652,000040:                                                                                                  #  ALL DATA PROVIDED TO AND RECEIVED FROM ANY TFF SUBROUTINE WILL BE AT ONE OF THE LEVELS ABOVE. IN ALL CASES,
054653,000041:                                                                                                  #  THE FREE FALL TIME IS RETURNED IN CENTISECONDS AT (-28). PROGRAM  TFF/CONIC WILL GENERATE VONE/RTMU  AND
054654,000042:                                                                                                  #  LEAVE IT IN VONE' AT (+10) IF EARTH ORIGIN AND (+9) IF MOON ORIGIN.
054655,000043:                                                                                                  #           THE USER MUST STORE THE STATE VECTOR IN RONE, VONE  AND MU  IN THE FORM 1/SQRT(MU) IN  TFF/RTMU
054656,000044:                                                                                                  #  AT THE PROPER SCALE BEFORE CALLING  TFF/CONIC. SINCE RONE, VONE  ARE IN THE EXTENDED VERB STORAGE AREA,
054657,000045:                                                                                                  #  THE USER MUST ALSO LOCK OUT THE EXTENDED VERBS, AND RELEASE THEM WHEN FINISHED.
054658,000046:                                                                                                  #           PROGRAMS     CALC/TFF  AND  CALC/TPER  ASSUME THAT THE TERMINAL RADIUS IS LESS THAN THE PRESENT
054659,000047:                                                                                                  #  RADIUS. THIS RESTRICTION CAN BE REMOVED BY A 15 W CODING CHANGE, BUT AT PRESENT IT IS NOT DEEMED NECESSARY.
054660,000048: 
054661,000049:                                                                                                  #           THE FOLLOWING ERASABLE QUANTITIES ARE USED BY THE TFF ROUTINES, AND ARE LOCATED IN THE PUSH LIST.
054662,000050: 
054663,000051:                                                                                                  #                                                               BELOW     E:  IS USED FOR EARTH ORIGIN SCALE
054664,000052:                                                                                                  #                                                                         M:  IS USED FOR MOON  ORIGIN SCALE
054665,000053: 
054666,000054:                                                                                                  # TFFSW          =       119D    BIT1    0 = CALCTFF         1 = CALCTPER
054667,000055: 23,3723                        TFFDELQ            =        10D                                   #        Q2-Q1               E: (-16)  M: (-15)
054668,000056: 23,3723                        RMAG1              =        12D                                   #        ABVAL(RN)  M        E: (-29)  M: (-27)
054669,000057:                                                                                                  # RPER           =       14D             PERIGEE RADIUS M    E: (-29)  M: (-27)
054670,000058: 23,3723                        TFFQ1              =        14D                                   #        R.V / SQRT(MUE)     E: (-16)  M: (-15)
054671,000059:                                                                                                  # SDELF/2                                SIN(THETA) /2
054672,000060: 23,3723                        CDELF/2            =        14D                                   #        COS(THETA) /2
054673,000061:                                                                                                  # RAPO           =       16D             APOGEE RADIUS  M    E: (-29)  M: (-27)
054674,000062: 23,3723                        NRTERM             =        16D                                   #        TERMINAL RADIUS  M  E: (-29+NR)
054675,000063:                                                                                                  #                            M: (-27+NR)
054676,000064: 23,3723                        RTERM              =        18D                                   #        TERMINAL RADIUS  M  E: (-29)  M: (-27)
054677,000065: 23,3723                        TFFVSQ             =        20D                                   #        -(V SQUARED/MU)   1/M  E: (20)   M: (18)
054678,000066: 23,3723                        TFF1/ALF           =        22D                                   #        SEMI MAJ AXIS  M  E: (-22-2 NA)
054679,000067:                                                                                                  #                          M: (-20-2 NA)
054680,000068: 23,3723                        TFFRTALF           =        24D                                   #        SQRT(ALFA)  E:(10+NA)  M: (9+NA)
054681,000069: 23,3723                        TFFALFA            =        26D                                   #        ALFA  1/M   E:(26-NR)  M: (24-NR)
054682,000070: 23,3723                        TFFNP              =        28D                                   #        SEMI LATUS RECTUM M  E: (-38+2 NR)
054683,000071:                                                                                                  #                             M: (-36+2 NR)
054684,000072: 23,3723                        TFF/RTMU           =        30D                                   #        1/SQRT(MU)        E: (17)   M: (14)
054685,000073: 23,3723                        NRMAG              =        32D                                   #        PRESENT RADIUS  M E: (-29+NR)
054686,000074:                                                                                                  #                          M: (-27+NR)
054687,000075: 23,3723                        TFFX               =        34D                                   
054688,000076: 23,3723                        TFFTEM             =        36D                                   #        TEMPORARY

Page 1263

054690,000078:                                                                                                  #                REGISTERS S1, S2 ARE UNTOUCHED BY ANY TFF SUBROUTINE
054691,000079:                                                                                                  #                INDEX REGISTERS X1, X2 ARE USED BY ALL TFF SUBROUTINES. THEY ARE ESTAB-
054692,000080:                                                                                                  #                LISHED IN TFF/CONIC AND MUST BE PRESERVED BETWEEN CALLS TO SUBSEQUENT
054693,000081:                                                                                                  #                SUBROUTINES.
054694,000082:                                                                                                  #                -NR                             C(X1) = NORM COUNT OF RMAG
054695,000083:                                                                                                  #                -NA                             C(X2) = NORM COUNT OF SQRT(ABS(ALFA))
054696,000084: 

Page 1264

054698,000086:                                                                                                  #  SUBROUTINE NAME:  TFFCONIC                                            DATE:  01.29.67
054699,000087:                                                                                                  #  MOD NO:  0                                                            LOG SECTION:  TIME OF FREE FALL
054700,000088:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
054701,000089:                                                                                                  #  MOD NO:  1    MOD BY:  RR BAIRNSFATHER        DATE: 11 APR 67
054702,000090:                                                                                                  #  MOD NO:  2    MOD BY:  RR BAIRNSFATHER        DATE: 21 NOV 67         ADD MOON MU.
054703,000091:                                                                                                  #  MOD NO:  3    MOD BY:  RR BAIRNSFATHER        DATE: 21 MAR 68         ACCEPT DIFFERENT EARTH/MOON SCALES
054704,000092: 
054705,000093:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS SUBROUTINE IS CALLED TO COMPUTE THOSE CONIC PARAMETERS REQUIRED BY THE TFF
054706,000094:                                                                                                  #        SUBROUTINES AND TO ESTABLISH THEM IN THE PUSH LIST AREA.  THE PARAMETERS ARE LISTED UNDER OUTPUT.
054707,000095:                                                                                                  #        THE EQUATIONS ARE
054708,000096:                                                                                                  #                -   -  - 
054709,000097:                                                                                                  #                H = RN*VN                       ANGULAR MOMENTUM
054710,000098:                                                                                                  #                      - -
054711,000099:                                                                                                  #                LCP = H.H / MU                  SEMI LATUS RECTUM
054712,000100:                                                                                                  #                              -  - 
054713,000101:                                                                                                  #                ALFA = 2/RN - VN.VN / MU        RECIPROCAL SEMI MAJ AXIS, SIGNED
054714,000102: 
054715,000103:                                                                                                  #        AND ALFA IS POS FOR ELLIPTIC ORBITS
054716,000104:                                                                                                  #                      0 FOR PARABOLIC ORBITS
054717,000105:                                                                                                  #                    NEG FOR HYPERBOLIC ORBITS.
054718,000106:                                                                                                  #        SUBROUTINE ALSO COMPUTES AND SAVES RMAG.
054719,000107: 
054720,000108:                                                                                                  #  CALLING SEQUENCE:
054721,000109:                                                                                                  #        TFFCONIC EXPECTS CALLER TO ENTER WITH CORRECT GRAVITATIONAL CONSTANT IN MPAC, IN THE FORM
054722,000110:                                                                                                  #        1/SQRT(MU).  PROGRAM WILL SAVE IN TFF/RTMU.  THE SCALE IS DETERMINED BY WHETHER EARTH OR MOON
054723,000111:                                                                                                  #        ORIGIN IS USED.  THE CALLER MUST LOCK OUT THE EXTENDED VERBS BEFORE PROVIDING STATE VECTOR IN RONE,
054724,000112:                                                                                                  #        VONE AT PROPER SCALE.  THE EXTENDED VERBS MUST BE RESTORED WHEN THE CALLER IS FINISHED USING THE
054725,000113:                                                                                                  #        TFF ROUTINES.
054726,000114: 
054727,000115:                                                                                                  #        ENTRY POINT TFFCONMU EXPECTS THAT TFF/RTMU IS ALREADY LOADED.
054728,000116: 
054729,000117:                                                                                                  #        TO SPECIFY MU:  DLOAD   CALL                            IF MU ALREADY STORED:   CALL
054730,000118:                                                                                                  #                                YOURMU  1/RTMU E:(17) M:(14)                                    TFFCONMU
054731,000119:                                                                                                  #                                TFFCONIC
054732,000120:                                                                                                  #        PUSHLOC = PDL+0, ARBITRARY IF LEQ 18D
054733,000121: 
054734,000122:                                                                                                  #  SUBROUTINES CALLED:  NONE
054735,000123: 
054736,000124:                                                                                                  #  NORMAL EXIT MODES:  RVQ
054737,000125: 
054738,000126:                                                                                                  #  ALARMS:  NONE
054739,000127: 
054740,000128:                                                                                                  #  OUTPUT:       THE FOLLOWING ARE STORED IN THE PUSH LIST AREA.
054741,000129:                                                                                                  #                RMAG1           E:(-29) M:(-27) M  RN, PRESENT RADIUS LENGTH.
054742,000130:                                                                                                  #                NRMAG           E:(-29+NR)      M  RMAG, NORMALIZED
054743,000131:                                                                                                  #                                M:(-27+NR)
054744,000132:                                                                                                  #                X1                              -NR, NORM COUNT
054745,000133:                                                                                                  #                TFFNP           E:(-38+2NR)     M  LCP, SEMI LATUS RECTUM, WEIGHTED BY NR.      FOR VGAMCALC
054746,000134:                                                                                                  #                                M:(-36+2NR)
054747,000135:                                                                                                  #                TFF/RTMU        E:(17) M:(14)   1/SQRT(MU)
054748,000136:                                                                                                  #                TFFVSQ          E:(20) M:(18)   1/M  -(V SQ/MU):  PRESENT VELOCITY,NORMLIZED.   FOR VGAMCALC
054749,000137:                                                                                                  #                TFFALFA         E:(26-NR)       1/M  ALFA, WEIGHTED BY NR
054750,000138:                                                                                                  #                                M:(24-NR)
054751,000139:                                                                                                  #                TFFRTALF        E:(10+NA)       SQRT(ALFA), NORMALIZED
054752,000140:                                                                                                  #                                M:(9+NA)

Page 1265

054754,000142:                                                                                                  #                X2                              -NA, NORMCOUNT
054755,000143:                                                                                                  #                TFF1/ALF        E:(-22-2NA)     SIGNED SEMI MAJ AXIS, WEIGHTED BY NA
054756,000144:                                                                                                  #                                M:(-20-2NA)
054757,000145:                                                                                                  #                PUSHLOC AT PDL+0
054758,000146: 
054759,000147:                                                                                                  #        THE FOLLOWING IS STORED IN GENERAL ERASABLE
054760,000148:                                                                                                  #                VONE'           E:(10) M:(9)    V/RT(MU), NORMALIZED VELOCITY
054761,000149: 
054762,000150:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
054763,000151:                                                                                                  #                RONE            E:(-29) M:(-27) M  STATE VECTOR         LEFT BY CALLER
054764,000152:                                                                                                  #                VONE            E:(-7) M:(-5)   M/CS  STATE VECTOR      LEFT BY CALLER
054765,000153:                                                                                                  #                TFF/RTMU        E:(17) M:(14)   1/RT(CS SQ/M CUBE)      IF ENTER VIA TFFCONMU.
054766,000154: 
054767,000155:                                                                                                  #  DEBRIS:       QPRET,          PDL+0 ... PDL+3
054768,000156: 
054769,000157: 33,3755                                           BANK     33                                    
054770,000158: 27,2000                                           SETLOC   TOF-FF                                
054771,000159: 27,2000                                           BANK                                           
054772,000160: 
054773,000161: 27,3332                                           COUNT*   $$/TFF                                
054774,000162: 
054775,000163: 27,3332           00037        TFFCONIC           STORE    TFF/RTMU                              #  1/SQRT(MU)    E:(17) M:(14)
054776,000164: 
054777,000165: 27,3333           53575        TFFCONMU           VLOAD    UNIT                                  #  COME HERE WITH TFFRTMU LOADED.
054778,000166: 27,3334           02213                                    RONE                                  #  SAVED RN.  M  E:(-29) M:(-27)
054779,000167: 27,3335           77725                           PDDL                                           #  UR/2 TO PDL+0, +5
054780,000168: 27,3336           00045                                    36D                                   #  MAGNITUDE
054781,000169: 27,3337           00015                           STORE    RMAG1                                 #  M  E:(-29) M:(-27)
054782,000170: 
054783,000171: 27,3340           77701                           NORM                                           
054784,000172: 27,3341           00047                                    X1                                    #  -NR
054785,000173: 27,3342           24041                           STOVL    NRMAG                                 #  RMAG  M  E:(-29+NR) M:(-27+NR)
054786,000174: 27,3343           02221                                    VONE                                  #  SAVED VN.  M/CS  E:(-7) M:(-5)
054787,000175: 27,3344           77761                           VXSC                                           
054788,000176: 27,3345           00037                                    TFF/RTMU                              #  E:(17) M:(14)
054789,000177: 27,3346           02170                           STORE    VONE'                                 #  VN/SQRT(MU)  E:(10) M:(9)
054790,000178: 
054791,000179: 27,3347           47361                           VXSC     VXV                                   
054792,000180: 27,3350           00041                                    NRMAG                                 #  E:(-29+NR) M:(-27+NR)
054793,000181:                                                                                                  #  UR/2 FROM PDL
054794,000182: 27,3351           47572                           VSL1     VSQ                                   #  BEFORE:  E:(-19+NR) M:(-18+NR)
054795,000183: 27,3352           14035                           STODL    TFFNP                                 #  LC P  M  E:(-38+2NR) M:(-36+2NR)
054796,000184:                                                                                                  #  SAVE ALSO FOR VGAMCALC
054797,000185: 27,3353           06414                                    TFF1/4                                
054798,000186: 27,3354           63271                           DDV      PDVL                                  #  (2/RMAG)  1/M  E:(26-NR) M:(24-NR)
054799,000187: 27,3355           00041                                    NRMAG                                 #  RMAG  M  E:(-29+NR) M:(-27+NR)
054800,000188: 27,3356           02170                                    VONE'                                 #  SAVED VN.  E:(10) M:(9)
054801,000189: 27,3357           57436                           VSQ      DCOMP                                 #  KEEP MPAC+2 HONEST FOR SQRT.
054802,000190: 27,3360           00025                           STORE    TFFVSQ                                #  -(V SQ/MU)  E:(20) M:(18)
054803,000191:                                                                                                  #  SAVE FOR VGAMCALC
054804,000192: 27,3361           43257                           SR*      DAD                                   

Page 1266

054806,000194: 27,3362           20573                                    0          -6,1                       #  GET -VSQ/MU  E:(26-NR) M:(24-NR)
054807,000195: 27,3363           77626                           STADR                                          
054808,000196:                                                                                                  #  2/RMAG  FROM PDL+2
054809,000197: 27,3364           77744                           STORE    TFFALFA                               #  ALFA  1/M  E:(26-NR) M:(24-NR)
054810,000198: 27,3365           41457                           SL*      PUSH                                  #  TEMP SAVE ALFA  E:(20) M:(18)
054811,000199: 27,3366           20173                                    0          -6,1                       
054812,000200: 27,3367           75446                           ABS      SQRT                                  #  E:(10) M:(9)
054813,000201: 27,3370           77701                           NORM                                           
054814,000202: 27,3371           00050                                    X2                                    #  X2 = -NA
054815,000203: 27,3372           00031                           STORE    TFFRTALF                              #  SQRT( ABS(ALFA) )  E:(10+NA) M:(9+NA)
054816,000204: 27,3373           75316                           DSQ      SIGN                                  #  NOT SO ACCURATE, BUT OK
054817,000205:                                                                                                  #  ALFA FROM PDL+2  E:(20) M:(18)
054818,000206: 27,3374           55254                           BZE      BDDV                                  #  SET 1/ALFA =0, TO SHOW SMALL ALFA
054819,000207: 27,3375           57377                                    +2                                    
054820,000208: 27,3376           06414                                    TFF1/4                                
054821,000209: 27,3377           00027                 +2        STORE    TFF1/ALF                              #  1/ALFA  E:(-22-2NA) M:(-20-2NA)
054822,000210: 27,3400           77616        DUMPCNIC           RVQ                                            
054823,000211: 
054824,000212:                                                                                                  #                                                              39 W

Page 1267

054826,000214:                                                                                                  #  SUBROUTINE NAME:  TFFRP/RA                                            DATE: 01.17.67
054827,000215:                                                                                                  #  MOD NO:  0                                                            LOG SECTION:  TIME OF FREE FALL
054828,000216:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
054829,000217:                                                                                                  #  MOD NO:  1    MOD BY:  RR BAIRNSFATHER        DATE: 11 APR 67
054830,000218:                                                                                                  #  MOD NO:  2    MOD BY:  RR BAIRNSFATHER        DATE: 21 MAR 68         ACCEPT DIFFERENT EARTH/MOON SCALES
054831,000219:                                                                                                  #                                                                        ALSO IMPROVE ACCURACY OF RAPO.
054832,000220: 
054833,000221:                                                                                                  #  FUNCTIONAL DESCRIPTION:  USED BY CALCTPER AND TFF DISPLAYS TO CALCULATE PERIGEE RADIUS AND ALSO
054834,000222:                                                                                                  #        APOGEE RADIUS FOR A GENERAL CONIC.
054835,000223:                                                                                                  #        PROGRAM GIVES PERIGEE RADIUS AS         APOGEE RADIUS IS GIVEN BY
054836,000224:                                                                                                  #                RP = P/(1+E)                            RA = (1+E) / ALFA
054837,000225:                                                                                                  #        WHERE    2
054838,000226:                                                                                                  #                E  = 1 - P ALFA
054839,000227:                                                                                                  #        IF RA IS NEGATIVE OR SHOWS DIVIDE OVERFLOW, THEN RA = POSMAX BECAUSE
054840,000228:                                                                                                  #                1. APOGEE RADIUS IS NOT MEANINGFUL FOR HYPERBOLA
054841,000229:                                                                                                  #                2. APOGEE RADIUS IS NOT DEFINED FOR PARABOLA
054842,000230:                                                                                                  #                3. APOGEE RADIUS EXCEEDS THE SCALING FOR ELLIPSE.
054843,000231: 
054844,000232:                                                                                                  #        THIS SUBROUTINE REQUIRES THE SIGNED RECIPROCAL SEMI MAJ AXIS, ALFA, AND SEMI LATUS RECTUM AS DATA.
054845,000233: 
054846,000234:                                                                                                  #  CALLING SEQUENCE:     CALL
054847,000235:                                                                                                  #                                TFFRP/RA
054848,000236:                                                                                                  #        PUSHLOC = PDL+0, ARBITRARY IF LEQ 10D
054849,000237:                                                                                                  #        C(MPAC) UNSPECIFIED
054850,000238: 
054851,000239:                                                                                                  #  SUBROUTINES CALLED:   NONE
054852,000240: 
054853,000241:                                                                                                  #  NORMAL EXIT MODE:     RVQ
054854,000242:                                                                                                  #        IF ELLIPSE, WITHIN NORMAL SCALING, RAPO IS CORRECT.
054855,000243:                                                                                                  #        OTHERWISE, RAPO = POSMAX.
054856,000244: 
054857,000245:                                                                                                  #  ALARMS:       NONE
054858,000246: 
054859,000247:                                                                                                  #  OUTPUT:       STORED IN PUSH LIST AREA.  SCALE OF OUTPUT AGREES WITH DATA SUPPLIED TO TFF/CONIC.
054860,000248:                                                                                                  #        RPER    E:(-29) M:(-27)         M       PERIGEE RADIUS          DESTROYED BY CALCTFF/CALCTPER, TFFTRIG.
054861,000249:                                                                                                  #        RAPO    E:(-29) M:(-27)         M       APOGEE RADIUS           WILL BE DESTROYED BY CALCTFF/CALCTPER
054862,000250:                                                                                                  #        PUSHLOC AT PDL+0
054863,000251: 
054864,000252:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
054865,000253:                                                                                                  #        TFFALFA E:(26-NR)               M       1/SEMI MAJ AXIS         LEFT BY TFFCONIC
054866,000254:                                                                                                  #                M:(24-NR)
054867,000255:                                                                                                  #        TFFNP   E:(-38+2NR)             M       LC P, SEMI LATUS RECTUM LEFT BY TFFCONIC
054868,000256:                                                                                                  #                M:(-36+2NR)
054869,000257:                                                                                                  #        X1                              -NR, NORM COUNT OF RMAG         LEFT BY TFFCONIC
054870,000258:                                                                                                  #        X2                              -NA, NORM COUNT OF ALFA         LEFT BY TFFCONIC
054871,000259: 
054872,000260:                                                                                                  #  DEBRIS:       QPRET, PDL+0 ... PDL+1
054873,000261: 

Page 1268

054875,000263: 27,3401                        RAPO               =        16D                                   #  APOGEE RADIUS  M  E:(-29) M:(-27)
054876,000264: 27,3401                        RPER               =        14D                                   #  PERIGEE RADIUS  M  E:(-29) M:(-27)
054877,000265: 
054878,000266: 27,3401           41345        TFFRP/RA           DLOAD    DMP                                   
054879,000267: 27,3402           00033                                    TFFALFA                               #  ALFA  1/M  E:(26-NR) M:(24-NR)
054880,000268: 27,3403           00035                                    TFFNP                                 #  LC P  M E:(-38+2NR) M:(-36+2NR)
054881,000269: 27,3404           57457                           SR*      DCOMP                                 #  ALFA P (-12+NR)
054882,000270: 27,3405           20571                                    0          -8D,1                      #  ALFA P (-4)
054883,000271: 27,3406           51415                           DAD      ABS                                   #  (DCOMP GIVES VALID TP RESULT FOR SQRT)
054884,000272:                                                                                                  #  (ABS PROTECTS SQRT IF E IS VERY NEAR 0)
054885,000273: 27,3407           17737                                    DP2(-4)                               
054886,000274: 27,3410           43366                           SQRT     DAD                                   #  E SQ = (1- P ALFA) (-4)
054887,000275: 27,3411           06414                                    TFF1/4                                
054888,000276: 27,3412           55206                           PUSH     BDDV                                  #  (1+E)  (-2)  TO PDL+0
054889,000277: 27,3413           00035                                    TFFNP                                 #  LCP  M  E:(-38+2NR) M:(-36+2NR)
054890,000278: 27,3414           53657                           SR*      SR*                                   #  (DOES SR THEN SL TO AVOID OVFL)
054891,000279: 27,3415           20601                                    0,1                                   #  X1=-NR
054892,000280: 27,3416           20572                                    0          -7,1                       #  (EFFECTIVE SL)
054893,000281: 27,3417           14017                           STODL    RPER                                  #  PERIGEE RADIUS  M  E:(-29) M:(-27)
054894,000282:                                                                                                  #  (1+E)  (-2)  FROM PDL+0
054895,000283: 27,3420           41005                           DMP      BOVB                                  
054896,000284: 27,3421           00027                                    TFF1/ALF                              #  E:(-22-2NA) M:(-20-2NA)
054897,000285: 27,3422           57725                                    TCDANZIG                              #  CLEAR OVFIND, IF ON.
054898,000286: 27,3423           53654                           BZE      SL*                                   
054899,000287: 27,3424           57433                                    MAXRA                                 #  SET POSMAX, IF ALFA=0
054900,000288: 27,3425           57603                                    0          -5,2                       #  -5+NA
054901,000289: 27,3426           40057                           SL*      BOV                                   
054902,000290: 27,3427           57576                                    0,2                                   
054903,000291: 27,3430           57433                                    MAXRA                                 #  SET POSMAX IF OVFL.
054904,000292: 27,3431           77644                           BPL                                            #  CONTINUE WITH VALID RAPO.
054905,000293: 27,3432           57435                                    +3                                    
054906,000294: 27,3433           77745        MAXRA              DLOAD                                          #  RAPO CALC IS NOT VALID.  SET RAPO =
054907,000295: 27,3434           17743                                    NEARONE                               #  POSMAX AS A TAG.
054908,000296: 27,3435           00021                 +3        STORE    RAPO                                  #  APOGEE RADIUS  M  E:(-29) M:(-27)
054909,000297: 27,3436           77616        DUMPRPRA           RVQ                                            
054910,000298: 
054911,000299:                                                                                                  #                                                                30 W

Page 1269

054913,000301:                                                                                                  #  SUBROUTINE NAME:  CALCTPER / CALCTFF                                  DATE:  01.29.67
054914,000302:                                                                                                  #  MOD NO:  0                                                            LOG SECTION:  TIME OF FREE FALL
054915,000303:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
054916,000304:                                                                                                  #  MOD NO:  1    MOD BY:  RR BAIRNSFATHER        DATE: 21 MAR 67
054917,000305:                                                                                                  #  MOD NO:  2    MOD BY:  RR BAIRNSFATHER        DATE: 14 APR 67
054918,000306:                                                                                                  #  MOD NO:  3    MOD BY:  RR BAIRNSFATHER        DATE: 8 JUL 67          NEAR EARTH MUE AND NEG TFF (GONEPAST)
054919,000307:                                                                                                  #  MOD NO:  4    MOD BY:  RR BAIRNSFATHER        DATE: 21 NOV 67         ADD VARIABLE MU.
054920,000308:                                                                                                  #  MOD NO:  5    MOD BY:  RR BAIRNSFATHER        DATE: 21 MAR 68         ACCEPT DIFFERENT EARTH/MOON SCALES
054921,000309: 
054922,000310:                                                                                                  #  FUNCTIONAL DESCRIPTION:  PROGRAM CALCULATES THE FREE-FALL TIME OF FLIGHT FROM PRESENT POSITION RN AND
054923,000311:                                                                                                  #        VELOCITY VN TO A RADIUS LENGTH SPECIFIED BY RTERM, SUPPLIED BY THE USER.  THE POSITION VECTOR
054924,000312:                                                                                                  #        RN MAY BE ON EITHER SIDE OF THE CONIC, BUT RTERM IS CONSIDERED ON THE INBOUND SIDE.
054925,000313:                                                                                                  #        THE EQUATIONS ARE
054926,000314: 
054927,000315:                                                                                                  #                Q2 = -SQRT(RTERM (2-RTERM ALFA) - LCP)  (INBOUND SIDE)) LEQ +- LCE/SQRT(ALFA)
054928,000316:                                                                                                  #                     -  - 
054929,000317:                                                                                                  #                Q1 = RN.VN / SQRT(MU)                                   LEQ +- LCE/SQRT(ALFA)
054930,000318: 
054931,000319:                                                                                                  #                Z = NUM / DEN                                           LEQ +- 1/SQRT(ALFA)
054932,000320: 
054933,000321:                                                                                                  #        WHERE, IF INBOUND
054934,000322:                                                                                                  #                NUM = RTERM -RN                                         LEQ +- 2 LCE/ALFA
054935,000323:                                                                                                  #                DEN = Q2+Q1                                             LEQ +- 2 LCE/SQRT(ALFA)
054936,000324: 
054937,000325:                                                                                                  #        AND, IF OUTBOUND
054938,000326:                                                                                                  #                NUM = Q2-Q1                                             LEQ +- 2 LCE/SQRT(ALFA)
054939,000327:                                                                                                  #                DEN = 2 - ALFA (RTERM + RN).                            LEQ +- 2 LCE
054940,000328: 
054941,000329:                                                                                                  #        IF      ALFA ZZ < 1.0           (FOR ALL CONICS EXCEPT ELLIPSES HAVING ABS(DEL ECC ANOM) G 90 DEG)
054942,000330:                                                                                                  #        THEN    X = ALFA Z Z
054943,000331:                                                                                                  #        AND     TFF = (RTERM +RN -2 ZZ T(X) ) Z/SQRT(MU)
054944,000332:                                                                                                  #                EXCEPT  IF ALFA PNZ, AND IF TFF NEG,
054945,000333:                                                                                                  #                THEN    TFF = 2 PI /(ALFA SQRT(ALFA)) + TFF
054946,000334:                                                                                                  #        OR      IF ALFA ZZ GEQ 1.0      (FOR ELLIPSES HAVING ABS(DEL ECC ANOM) GEQ 90 DEG)
054947,000335:                                                                                                  #        THEN    X = 1/ALFA Z Z
054948,000336:                                                                                                  #        AND     TFF = (PI/SQRT(ALFA) -Q2 +Q1 +2(X T(X) -1) /ALFA Z) /ALFA SQRT(MU)
054949,000337:                                                                                                  #        WHERE   T(X) IS A POLYNOMIAL APPROXIMATION TO THE SERIES
054950,000338:                                                                                                  #                             2      3             2
054951,000339:                                                                                                  #                1/3 - X/5 + X /7 - X /9 ...     (X  < 1.0)
054952,000340: 
054953,000341:                                                                                                  #  CALLING SEQUENCE:     TIME TO RTERM                   TIME TO PERIGEE
054954,000342:                                                                                                  #                        CALL                            CALL
054955,000343:                                                                                                  #                                CALCTFF                         CALCTPER
054956,000344:                                                                                                  #                        C(MPAC) = TERMNL RAD M          C(MPAC) = PERIGEE RAD M
054957,000345:                                                                                                  #        FOR EITHER, E:(-29) M:(-27)
054958,000346:                                                                                                  #        FOR EITHER, PUSHLOC = PDL+0, ARBITRARY IF LEQ 8D.

Page 1270

054960,000348: 
054961,000349:                                                                                                  #  SUBROUTINES CALLED:   T(X), VIA RTB
054962,000350: 
054963,000351:                                                                                                  #  NORMAL EXIT MODE:     RVQ
054964,000352:                                                                                                  #        HOWEVER, PROGRAM EXITS WITH ONE OF THE FOLLOWING VALUES FOR TFF (-28) CS IN MPAC.  USER MUST STORE.
054965,000353:                                                                                                  #                A. TFF = FLIGHT TIME.  NORMAL CASE FOR POSITIVE FLIGHT TIME LESS THAN ONE ORBITAL PERIOD.
054966,000354:                                                                                                  #                B. (THIS OPTION IS NO LONGER USED.)
054967,000355:                                                                                                  #                C. TFF = POSMAX.  THIS INDICATES THAT THE CONIC FROM THE PRESENT POSITION WILL NOT RETURN TO
054968,000356:                                                                                                  #                   THE SPECIFIED ALTITUDE.  ALSO INDICATES OUTBOUND PARABOLA OR HYPERBOLA.
054969,000357: 
054970,000358:                                                                                                  #  OUTPUT:       C(MPAC)         (-28) CS        TIME OF FLIGHT, OR TIME TO PERIGEE
054971,000359:                                                                                                  #                TFFX            (0)             X,                                      LEFT FOR ENTRY DISPLAY TFF ROUTINES
054972,000360:                                                                                                  #                NRTERM          E:(-29+NR) M    RTERM, WEIGHTED BY NR                   LEFT FOR ENTRY DISPLAY TFF ROUTINES
054973,000361:                                                                                                  #                                M:(-27+NR)
054974,000362:                                                                                                  #                TFFTEM          E:(-59+2NR)     LCP Z Z SGN(SDELF)                      LEFT FOR ENTRY DISPLAY TFF ROUTINES
054975,000363:                                                                                                  #                                M:(-55+2NR)     LCP /ALFA SGN(SDELF)                    LEFT FOR ENTRY DISPLAY TFF ROUTINES
054976,000364:                                                                                                  #                NOTE:   TFFTEM = PDL 36D AND WILL BE DESTROYED BY .:UNIT:.
054977,000365:                                                                                                  #                RMAG1           E:(-29) M:(-27) PDL 12 NOT TOUCHED.
054978,000366:                                                                                                  #                TFFQ1           E:(-16) M:(-15) PDL 14D
054979,000367:                                                                                                  #                TFFDELQ         E:(-16) M:(-15) PDL 10D
054980,000368:                                                                                                  #                PUSHLOC AT PDL+0
054981,000369: 
054982,000370:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
054983,000371:                                                                                                  #                RONE            E:(-29) M:(-27) M  STATE VECTOR                         LEFT BY USER
054984,000372:                                                                                                  #                VONE'           E:(+10) M:(+9)  VN/SQRT(MU)                             LEFT BY TFF/CONIC
054985,000373:                                                                                                  #                RMAG1           E:(-29) M:(-27) PRESENT RADIUS, M                       LEFT BY TFFCONIC
054986,000374:                                                                                                  #                C(MPAC)         E:(-29) M:(-27) RTERM, TERMINAL RADIUS LENGTH, M        LEFT BY USER
054987,000375: 
054988,000376:                                                                                                  #                THE FOLLOWING ARE STORED IN THE PUSH LIST AREA.
054989,000377:                                                                                                  #                TFF/RTMU        E:(17) M:(14)   1/SQRT(MU)                              LEFT BY TFFCONIC.
054990,000378:                                                                                                  #                NRMAG           E:(-29+NR)      M  RMAG, NORMALIZED                     LEFT BY TFFCONIC
054991,000379:                                                                                                  #                                M:(-27+NR)
054992,000380:                                                                                                  #                X1                              -NR, NORM COUNT                         LEFT BY TFFCONIC
054993,000381:                                                                                                  #                TFFNP           E:(-38+2NR)     M  LCP, SEMI LATUS RECTUM, WEIGHT NR    LEFT BY TFFCONIC
054994,000382:                                                                                                  #                                M:(-36+2NR)
054995,000383:                                                                                                  #                TFFALFA         E:(26-NR)       1/M  ALFA, WEIGHT NR                    LEFT BY TFFCONIC
054996,000384:                                                                                                  #                                M:(24-NR)
054997,000385:                                                                                                  #                TFFRTALF        E:(10+NA)       SQRT(ALFA), NORMALIZED                  LEFT BY TFFCONIC
054998,000386:                                                                                                  #                                M:(9+NA)
054999,000387:                                                                                                  #                X2                              -NA, NORMCOUNT                          LEFT BY TFFCONIC
055000,000388:                                                                                                  #                TFF1/ALF        E:(-22-2NA)     SIGNED SEMIMAJ AXIS, WEIGHTED BY NA     LEFT BY TFFCONIC
055001,000389:                                                                                                  #                                M:(-20-2NA)
055002,000390: 
055003,000391:                                                                                                  #  DEBRIS:       QPRET, PDL+0 ... PDL+3
055004,000392:                                                                                                  #                RTERM           E:(-29) M:(-27) RTERM, TERMINAL RADIUS LENGTH
055005,000393:                                                                                                  #                RAPO            E:(-29) M:(-27) PDL 16D (=NRTERM)
055006,000394:                                                                                                  #                RPER            E:(-29) M:(-27) PDL 14D (=TFFQ1)
055007,000395: 

Page 1271

055009,000397: 27,3437           77614        CALCTPER           SETGO                                          #  ENTER WITH RPER IN MPAC
055010,000398: 27,3440           03436                                    TFFSW                                 
055011,000399: 27,3441           57444                                    +3                                    
055012,000400: 27,3442           77614        CALCTFF            CLEAR                                          #  ENTER WITH RTERM IN MPAC
055013,000401: 27,3443           03676                                    TFFSW                                 
055014,000402: 27,3444           00023                 +3        STORE    RTERM                                 #  E:(-29) M:(-27)
055015,000403: 27,3445           77657                           SL*                                            
055016,000404: 27,3446           20201                                    0,1                                   #  X1=-NR
055017,000405: 27,3447           00021                           STORE    NRTERM                                #  RTERM  E:(-29+NR) M:(-27+NR)
055018,000406: 27,3450           44205                           DMP      BDSU                                  
055019,000407: 27,3451           00033                                    TFFALFA                               #  ALFA  E:(26-NR) M:(24-NR)
055020,000408: 27,3452           06414                                    TFF1/4                                
055021,000409: 27,3453           41206                           PUSH     DMP                                   #  (2-ALFA RTERM)  (-3)  TO PDL+0
055022,000410: 27,3454           00021                                    NRTERM                                #  E:(-29+NR) M:(-27+NR)
055023,000411: 27,3455           53725                           PDDL     SR*                                   #  RTERM(2-ALFA RTERM) TO PDL+2
055024,000412:                                                                                                  #  E:(-32+NR) M:(-30+NR)
055025,000413: 27,3456           00035                                    TFFNP                                 #  LC P  E:(-38+2NR) M:(-36+2NR)
055026,000414: 27,3457           20573                                    0          -6,1                       #  X1 = -NR
055027,000415: 27,3460           43276                           DCOMP    DAD                                   #  DUE TO SHIFTS, KEEP PRECISION FOR SQRT
055028,000416:                                                                                                  #  RTERM(2-ALFA RTERM) FROM PDL +2
055029,000417:                                                                                                  #  E:(-32+NR) M:(-30+NR)
055030,000418: 27,3461           77657                           SR*                                            #  LEAVE  E:(-32) M:(-30)
055031,000419: 27,3462           20601                                    0,1                                   #  X1 = -NR
055032,000420: 27,3463           71214                           BOFF     DLOAD                                 #  CHECK TFF /TPER SWITCH
055033,000421: 27,3464           03756                                    TFFSW                                 
055034,000422: 27,3465           57467                                    +2                                    #  IF TFF, CONTINUE
055035,000423: 27,3466           06424                                    TFFZEROS                              #  IF TPER, SET Q2 = 0
055036,000424: 27,3467           75440                 +2        BMN      SQRT                                  #  E:(-16) M:(-15)
055037,000425: 
055038,000426: 27,3470           57622                                    MAXTFF1                               #  NO FREE FALL CONIC TO RTERM FROM HERE
055039,000427:                                                                                                  #  RESET PDL, SET TFF=POSMAX, AND EXIT.
055040,000428: 
055041,000429: 27,3471           41076                           DCOMP    BOVB                                  #  RT IS ON INBOUND SIDE.  ASSURE OVFIND=0
055042,000430: 27,3472           57725                                    TCDANZIG                              #  ANY PORT IN A STORM.
055043,000431: 27,3473           24045                           STOVL    TFFTEM                                #  Q2  E:(-16) M:(-15)
055044,000432: 27,3474           02170                                    VONE'                                 #  VN/SQRT(MU)  E:(10) M:(9)
055045,000433: 27,3475           52441                           DOT      SL3                                   
055046,000434: 27,3476           02213                                    RONE                                  #  SAVED RN.  E:(-29) M:(-27)
055047,000435: 27,3477           00017                           STORE    TFFQ1                                 #  Q1, SAVE FOR GONEPAST TEST.
055048,000436:                                                                                                  #  E:(-16) M:(-15)
055049,000437: 27,3500           44240                           BMN      BDSU                                  
055050,000438: 27,3501           57522                                    INBOUND                               #  USE ALTERNATE Z
055051,000439: 27,3502           00045                                    TFFTEM                                #  Q2  E:(-16) M:(-15)
055052,000440: 
055053,000441:                                                                                                  #  OUTBOUND Z CALC CONTINUES HERE
055054,000442: 
055055,000443: 27,3503           14043                           STODL    TFFX                                  #  NUM=Q2-Q1  E:(-16) M:(-15)
055056,000444: 27,3504           00033                                    TFFALFA                               #  ALFA  E:(26-NR) M:(24-NR)
055057,000445: 27,3505           44205                           DMP      BDSU                                  

Page 1272

055059,000447: 27,3506           00041                                    NRMAG                                 #  RMAG  E:(-29+NR) M:(-27+NR)
055060,000448:                                                                                                  #  (2-RTERM ALFA)  (-3) FROM PDL+0
055061,000449: 27,3507           51406        SAVEDEN            PUSH     ABS                                   #  DEN TO PDL+0  E:(-3) OR (-16)
055062,000450:                                                                                                  #                M:(-3) OR (-15)
055063,000451: 27,3510           40015                           DAD      BOV                                   #  INDETERMINANCY TEST
055064,000452: 27,3511           17731                                    LIM(-22)                              #  =1.0-B(-22)
055065,000453: 27,3512           57533                                    TFFXTEST                              #  GO IF DEN >/= B(-22)
055066,000454: 27,3513           65345                           DLOAD    PDDL                                  #  SET DEN=0 OTHERWISE
055067,000455: 27,3514           06424                                    TFFZEROS                              
055068,000456:                                                                                                  #  XCH ZERO WITH PDL+0
055069,000457: 27,3515           57545                           DLOAD    DCOMP                                 
055070,000458: 27,3516           00033                                    TFFALFA                               #  ALFA  E:(26-NR) M:(24-NR)
055071,000459: 27,3517           71240                           BMN      DLOAD                                 #  FOR TPER:  Z INDET AT DELE/2=0 AND 90.
055072,000460: 27,3520           57627                                    TFFEL1                                #  ASSUME 90, AND LEAVE 0 IN PDL: 1/Z=D/N
055073,000461: 
055074,000462:                                                                                                  #  Z INDET. AT PERIGEE FOR PARAB OR HYPERB.
055075,000463: 27,3521           77616        DUMPTFF1           RVQ                                            #  RETURN TFF =0
055076,000464: 
055077,000465:                                                                                                  #  INBOUND Z CALC CONTINUES HERE
055078,000466: 
055079,000467: 27,3522           77745        INBOUND            DLOAD                                          #  RESET PDL+0
055080,000468: 27,3523           45345                           DLOAD    DSU                                   #  ALTERNATE Z CALC
055081,000469: 27,3524           00023                                    RTERM                                 #  E:(-29) M:(-27)
055082,000470: 27,3525           00015                                    RMAG1                                 #  E:(-29) M:(-27)
055083,000471: 27,3526           14043                           STODL    TFFX                                  #  NUM=RTERM-RN  E:(-29) M:(-27)
055084,000472: 27,3527           00045                                    TFFTEM                                #  Q2  E:(-16) M:(-15)
055085,000473: 27,3530           52015                           DAD      GOTO                                  
055086,000474: 27,3531           00017                                    TFFQ1                                 #  Q1  E:(-16) M:(-15)
055087,000475: 27,3532           57507                                    SAVEDEN                               #  DEN = Q2+Q1  E:(-16) M:(-15)
055088,000476: 
055089,000477: 27,3533           65215        TFFXTEST           DAD      PDDL                                  #  (ABS(DEN) TO PDL+2))  E:(-3) OR (-16)
055090,000478:                                                                                                  #                        M:(-3) OR (-15)
055091,000479: 27,3534           17733                                    DP(-22)                               #  RESTORE ABS(DEN) TO MPAC
055092,000480: 27,3535           00043                                    TFFX                                  #  NUM  E:(-16) OR (-29)  M:(-15) OR (-27)
055093,000481: 27,3536           53605                           DMP      SR*                                   
055094,000482: 27,3537           00031                                    TFFRTALF                              #  SQRT(ALFA)  E:(10+NA) M:(9+NA)
055095,000483: 27,3540           57201                                    0          -3,2                       #  X2=-NA
055096,000484: 27,3541           77671                           DDV                                            #  C(MPAC) =NUM SQRT(ALFA)       E:(-3) OR (-16)
055097,000485:                                                                                                  #                                M:(-3) OR (-15)
055098,000486:                                                                                                  #  ABS(DEN) FROM PDL+2   E:(-3) OR (-16)
055099,000487:                                                                                                  #                        M:(-3) OR (-15)
055100,000488: 27,3542           40145                           DLOAD    BOV                                   #  (THE DLOAD IS SHARED WITH TFFELL)
055101,000489: 27,3543           00043                                    TFFX                                  #  NUM  E:(-16) OR (-29)  M:(-15) OR (-27)
055102,000490: 27,3544           57625                                    TFFELL                                #  USE EQN FOR DELE GEQ 90, LEQ -90
055103,000491: 
055104,000492:                                                                                                  #  OTHERWISE, CONTINUE FOR GENERAL CONIC FOR TFF EQN
055105,000493: 
055106,000494: 27,3545           45471                           DDV      STADR                                 
055107,000495:                                                                                                  #  DEN FROM PDL+0        E:(-3) OR (-16)
055108,000496:                                                                                                  #                        M:(-3) OR (-15)
055109,000497: 27,3546           77732                           STORE    TFFTEM                                #  Z SAVE FOR SIGN OF SDELF.

Page 1273

055111,000499:                                                                                                  #  E:(-13) M:(-12)
055112,000500: 27,3547           63406                           PUSH     DSQ                                   #  Z TO PDL+0
055113,000501: 27,3550           41206                           PUSH     DMP                                   #  Z SQ TO PDL+2  E:(-26) M:(-24)
055114,000502: 27,3551           00035                                    TFFNP                                 #  LC P  E:(-38+2NR) M:(-36+2NR)
055115,000503: 27,3552           75261                           SL       SIGN                                  
055116,000504: 27,3553           20206                                    5                                     
055117,000505: 27,3554           00045                                    TFFTEM                                #  AFFIX SIGN FOR SDELF (ENTRY DISPLAY)
055118,000506: 27,3555           14045                           STODL    TFFTEM                                #  P ZSQ  E:(-59+2NR) M:(-55+2NR)
055119,000507:                                                                                                  #  (ARG IS USED IN TFF/TRIG)
055120,000508:                                                                                                  #  ZSQ FROM PDL+2  E:(-26) M:(-24)
055121,000509: 27,3556           41206                           PUSH     DMP                                   #  RESTORE PUSH LOC
055122,000510: 27,3557           00033                                    TFFALFA                               #  ALFA  E:(26-NR) M:(24-NR)
055123,000511: 27,3560           77657                           SL*                                            
055124,000512: 27,3561           20201                                    0,1                                   #  X1=-NR
055125,000513: 27,3562           00043                           STORE    TFFX                                  #  X
055126,000514: 27,3563           41234                           RTB      DMP                                   
055127,000515: 27,3564           57707                                    T(X)                                  #  POLY
055128,000516:                                                                                                  #  ZSQ FROM PDL+2  E:(-26) M:(-24)
055129,000517: 27,3565           44302                           SR2      BDSU                                  #  2 ZSQ T(X)  E:(-29) M:(-27)
055130,000518: 27,3566           00023                                    RTERM                                 #  RTERM  E:(-29) M:(-27)
055131,000519: 27,3567           41215                           DAD      DMP                                   
055132,000520: 27,3570           00015                                    RMAG1                                 #  E:(-29) M:(-27)
055133,000521:                                                                                                  #  Z FROM PDL+0  E:(-13) M:(-12)
055134,000522: 27,3571           51042                           SR3      BPL                                   #  TFF SQRT(MU)  E:(-45) M:(-42)
055135,000523: 27,3572           57613                                    ENDTFF                                #  (NO PUSH UP)
055136,000524: 27,3573           75206                           PUSH     SIGN                                  #  TFF SQRT(MU) TO PDL+0
055137,000525: 27,3574           00017                                    TFFQ1                                 #  Q1 FOR GONEPAST TEST
055138,000526: 27,3575           71244                           BPL      DLOAD                                 #  GONE PAST ?
055139,000527: 27,3576           57617                                    NEGTFF                                #  YES. TFF < 0.
055140,000528: 27,3577           00027                                    TFF1/ALF                              #  1/ALFA  E:(-22-2NA) M:(-20-2NA)
055141,000529: 27,3600           51076                           DCOMP    BPL                                   #  ALFA > 0 ?
055142,000530: 27,3601           57617                                    NEGTFF                                #  NO. TFF IS NEGATIVE.
055143,000531: 
055144,000532:                                                                                                  #  CORRECT FOR ORBITAL PERIOD.
055145,000533: 
055146,000534: 27,3602           77676                           DCOMP                                          #  YES.  CORRECT FOR ORB PERIOD.
055147,000535: 27,3603           56205                           DMP      DDV                                   
055148,000536: 27,3604           17727                                    PI/16                                 #  2 PI (-5)
055149,000537: 27,3605           00031                                    TFFRTALF                              #  SQRT(ALFA)  E:(10+NA) M:(9+NA)
055150,000538: 27,3606           53657                           SL*      SL*                                   
055151,000539: 27,3607           57602                                    0          -4,2                       #  X2=-NA
055152,000540: 27,3610           57602                                    0          -4,2                       
055153,000541: 27,3611           43257                           SL*      DAD                                   
055154,000542: 27,3612           57576                                    0,2                                   
055155,000543:                                                                                                  #  TFF SQRT(MU) FROM PDL+0       E:(-45) M:(-42)
055156,000544: 27,3613           40005        ENDTFF             DMP      BOV                                   #  TFF SQRT(MU) IN MPAC          E:(-45) M:(-42)
055157,000545: 27,3614           00037                                    TFF/RTMU                              #  E:(17) M:(14)
055158,000546: 27,3615           57623                                    MAXTFF                                #  SET POSMAX IF OVFL.
055159,000547: 
055160,000548: 27,3616           77616        DUMPTFF2           RVQ                                            #  RETURN TFF (-28) CS IN MPAC.
055161,000549: 

Page 1274

055163,000551: 27,3617           77745        NEGTFF             DLOAD                                          
055164,000552:                                                                                                  #  TFF SQRT(MU) FROM PDL+0, NEGATIVE.
055165,000553: 27,3620           77650                           GOTO                                           
055166,000554: 27,3621           57613                                    ENDTFF                                
055167,000555: 
055168,000556: 27,3622           77745        MAXTFF1            DLOAD                                          #  RESET PDL
055169,000557: 27,3623           43545        MAXTFF             DLOAD    RVQ                                   
055170,000558: 27,3624           17743                                    NEARONE                               
055171,000559: 
055172,000560:                                                                                                  #  TIME OF FLIGHT ELLIPSE WHEN DEL (ECCENTRIC ANOM) GEQ 90 AND LEQ -90.
055173,000561: 
055174,000562:                                                                                                  #  NUM FROM TFFX.        E:(-16) OR (-29)
055175,000563:                                                                                                  #                        M:(-15) OR (-27)
055176,000564: 27,3625           77712        TFFELL             SL2                                            #  NUM  E:(-14) OR (-27)  M:(-13) OR (-25)
055177,000565: 27,3626           41465                           BDDV     PUSH                                  #  TEMP SAVE D/N IN PDL+0
055178,000566:                                                                                                  #  DEN FROM PDL+0  E:(-3)/( 16) M:(-3)/(-15)
055179,000567:                                                                                                  #  N/D TO PDL+0  E:(11) M:(10)
055180,000568: 27,3627           45345        TFFEL1             DLOAD    DSU                                   #  (ENTER WITH D/N=0 IN PDL+0)
055181,000569: 27,3630           00045                                    TFFTEM                                #  Q2  E:(-16) M:(-15)
055182,000570: 27,3631           00017                                    TFFQ1                                 #  Q1  E:(-16) M:(-15)
055183,000571: 27,3632           14013                           STODL    TFFDELQ                               #  Q2-Q1  E:(-16) M:(-15)
055184,000572:                                                                                                  #  D/N FROM PDL+0
055185,000573: 27,3633           77626                           STADR                                          
055186,000574: 27,3634           77732                           STORE    TFFTEM                                #  D/N  E:(11) M:(10)
055187,000575: 27,3635           53605                           DMP      SL*                                   
055188,000576: 27,3636           00027                                    TFF1/ALF                              #  1/ALFA  E:(-22-2NA) M:(-20-2NA)
055189,000577: 27,3637           57576                                    0,2                                   #  1/ALFA Z  E:(-11-NA) M:(-10-NA)
055190,000578: 27,3640           41206                           PUSH     DMP                                   #  TO PDL+0
055191,000579: 27,3641           00045                                    TFFTEM                                #  1/Z  E:(11) M:(10)
055192,000580: 27,3642           41057                           SL*      BOVB                                  
055193,000581: 27,3643           57576                                    0,2                                   #  X2= -NA
055194,000582: 27,3644           21664                                    SIGNMPAC                              #  IN CASE X= 1.0, CONTINUE
055195,000583: 27,3645           00043                           STORE    TFFX                                  #  X=1/ALFA ZSQ
055196,000584: 27,3646           41234                           RTB      DMP                                   
055197,000585: 27,3647           57707                                    T(X)                                  #  POLY
055198,000586: 27,3650           00043                                    TFFX                                  
055199,000587: 27,3651           45242                           SR3      DSU                                   
055200,000588: 27,3652           17735                                    DP2(-3)                               
055201,000589: 27,3653           41405                           DMP      PUSH                                  #  2(X T(X)-1) /Z ALFA   E:(-15-NA)
055202,000590:                                                                                                  #                        M:(-14-NA)
055203,000591:                                                                                                  #  1/ALFA Z FROM PDL+0   E:(-11-NA)
055204,000592:                                                                                                  #                        M:(-10-NA)
055205,000593: 27,3654           41345                           DLOAD    DMP                                   #  GET SIGN FOR SDELF
055206,000594: 27,3655           00045                                    TFFTEM                                #  1/Z  E:(11) M:(10)
055207,000595: 27,3656           00015                                    RMAG1                                 #  E:(-29) M:(-27)
055208,000596: 27,3657           43312                           SL2      DAD                                   
055209,000597: 27,3660           00017                                    TFFQ1                                 #  Q1  E:(-16) M:(-15)
055210,000598: 27,3661           14045                           STODL    TFFTEM                                #  (Q1+R 1/Z) =SGN OF SDELF  E:(-16) M:(-15
055211,000599: 27,3662           00035                                    TFFNP                                 #  LC P  E:(-38+2NR) M:(-36+2NR)
055212,000600: 27,3663           53605                           DMP      SL*                                   #  CALC FOR ARG FOR TFF/TRIG.

Page 1275

055214,000602: 27,3664           00027                                    TFF1/ALF                              #  1/ALFA  E:(-22-2NA) M:(-20-2NA)
055215,000603: 27,3665           57575                                    1,2                                   #  X2=-NA
055216,000604: 27,3666           53765                           SIGN     SL*                                   
055217,000605: 27,3667           00045                                    TFFTEM                                #  AFFIX SIGN FOR SDELF
055218,000606: 27,3670           57576                                    0,2                                   
055219,000607: 27,3671           14045                           STODL    TFFTEM                                #  P/ALFA  E:(-59+2NR) M:(-55+2NR)
055220,000608:                                                                                                  #  (ARG FOR USE IN TFF/TRIG)
055221,000609: 27,3672           00027                                    TFF1/ALF                              #  1/ALFA  E:(-22-2NA) M:(-20-2NA)
055222,000610: 27,3673           41366                           SQRT     DMP                                   
055223,000611: 27,3674           17727                                    PI/16                                 #  PI (-4)
055224,000612: 27,3675           77615                           DAD                                            
055225,000613:                                                                                                  #  2(XT(X)-1)/Z ALFA FROM PDL    E:(-15-NA)
055226,000614:                                                                                                  #                                M:(-14-NA)
055227,000615: 27,3676           45257                           SL*      DSU                                   
055228,000616: 27,3677           57577                                    0          -1,2                       
055229,000617: 27,3700           00013                                    TFFDELQ                               #  Q2-Q1  E:(-16) M:(-15)
055230,000618: 27,3701           53605                           DMP      SL*                                   
055231,000619: 27,3702           00027                                    TFF1/ALF                              #  1/ALFA  E:(-22-2NA) M:(-20-2NA)
055232,000620: 27,3703           57601                                    0          -3,2                       
055233,000621: 27,3704           52057                           SL*      GOTO                                  
055234,000622: 27,3705           57602                                    0          -4,2                       
055235,000623: 27,3706           57613                                    ENDTFF                                #  TFF SQRT(MU) IN MPAC E:(-45) M:(-42)
055236,000624: 

Page 1276

055238,000626:                                                                                                  #  PROGRAM NAME:  T(X)                           DATE:  01.17.67
055239,000627:                                                                                                  #  MOD NO:  0                                    LOG SECTION:  TIME OF FREE FALL
055240,000628:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
055241,000629: 
055242,000630:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THE POLYNOMIAL T(X) IS USED BY TIME OF FLIGHT SUBROUTINES CALCTFF AND
055243,000631:                                                                                                  #        CALCTPER TO APPROXIMATE THE SERIES
055244,000632:                                                                                                  #                           2     3
055245,000633:                                                                                                  #                1/3 -X/5 +X /7 -X /9 ...
055246,000634: 
055247,000635:                                                                                                  #        WHERE   X = ALFA Z Z            IF ALFA Z Z LEQ 1
055248,000636:                                                                                                  #                X = 1/(ALFA Z Z)        IF ALFA Z Z G 1
055249,000637: 
055250,000638:                                                                                                  #        ALSO    X IS NEG FOR HYPERBOLIC ORBITS
055251,000639:                                                                                                  #                X = 0 FOR PARABOLIC ORBITS
055252,000640:                                                                                                  #                X IS POSITIVE FOR ELLIPTIC ORBITS
055253,000641: 
055254,000642:                                                                                                  #        FOR FLIGHT 278, THE POLYNOMIAL T(X) IS FITTED OVER THE RANGE (0,+1) AND HAS A MAXIMUM
055255,000643:                                                                                                  #        DEVIATION FROM THE SERIES OF 2 E-5   (T(X) IS A CHEBYCHEV TYPE FIT AND WAS OBTAINED USING
055256,000644:                                                                                                  #        MAC PROGRAM AUTCURFIT294RRB AND IS VALID TO THE SAME TOLERANCE OVER THE RANGE (-.08,+1).)
055257,000645: 
055258,000646:                                                                                                  #  CALLING SEQUENCE:     RTB
055259,000647:                                                                                                  #                                T(X)
055260,000648:                                                                                                  #        C(MPAC) = X
055261,000649: 
055262,000650:                                                                                                  #  SUBROUTINES CALLED:  NONE
055263,000651: 
055264,000652:                                                                                                  #  NORMAL EXIT MODE:  TC   DANZIG
055265,000653: 
055266,000654:                                                                                                  #  ALARMS:  NONE
055267,000655: 
055268,000656:                                                                                                  #  OUTPUT:  C(MPAC) = T(X)
055269,000657: 
055270,000658:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
055271,000659:                                                                                                  #        C(MPAC) = X
055272,000660: 
055273,000661:                                                                                                  #  DEBRIS:  NONE
055274,000662: 
055275,000663: 27,3707           07221        T(X)               TC       POLY                                  
055276,000664: 27,3710           00004                           DEC      4          B-14                       #  N-1
055277,000665: 27,3711           12525 12525                     2DEC     3.333333333 E-1                        
055278,000666: 
055279,000667: 27,3713           71463 57703                     2DEC*    -1.999819135 E-1*                       
055280,000668: 
055281,000669: 27,3715           04423 17645                     2DEC*    1.418148467 E-1*                       
055282,000670: 
055283,000671: 27,3717           74604 43667                     2DEC*    -1.01310997 E-1*                       
055284,000672: 
055285,000673: 27,3721           01626 37256                     2DEC*    5.609004986 E-2*                       
055286,000674: 
055287,000675: 27,3723           77404 52071                     2DEC*    -1.536156925 E-2*                       
055288,000676: 
055289,000677: 27,3725           06060        ENDT(X)            TC       DANZIG                                
055290,000678: 
055291,000679: 27,3726  27,3725               TCDANZIG           =        ENDT(X)                               
055292,000680: 

Page 1277

055294,000682:                                                                                                  #  TFF CONSTANTS
055295,000683: 
055296,000684: 32,3766                                           BANK     32                                    
055297,000685: 
055298,000686: 27,2000                                           SETLOC   TOF-FF1                               
055299,000687: 27,2000                                           BANK                                           
055300,000688: 
055301,000689:                                                                                                  #                                                NOTE _  NOTE _  ADJUSTED MUE FOR NEAR EARTH TRAJ.
055302,000690:                                                                                                  # MUE            =       3.990815471 E10         M CUBE/CS SQ
055303,000691:                                                                                                  # RTMUE          =       1.997702549 E5 B-18*    MODIFIED EARTH MU
055304,000692: 
055305,000693:                                                                                                  #                                                NOTE _  NOTE _  ADJUSTED MUE FOR NEAR EARTH TRAJ.
055306,000694:                                                                                                  # MUM            =       4.902778 E8             M CUBE/CS SQ
055307,000695:                                                                                                  # RTMUM          2DEC*   2.21422176 E4 B-18*
055308,000696: 
055309,000697: 27,3726           06220 37553  PI/16              2DEC     3.141592653 B-4                        
055310,000698: 
055311,000699: 27,3730           37777 37700  LIM(-22)           2OCT     37777      37700                      #  1.0 -B(-22)
055312,000700: 
055313,000701: 27,3732           00000 00100  DP(-22)            2OCT     00000      00100                      #  B(-22)
055314,000702: 
055315,000703: 27,3734           04000 00000  DP2(-3)            2DEC     1          B-3                        
055316,000704: 
055317,000705: 27,3736           02000 00000  DP2(-4)            2DEC     1          B-4                        #  1/16
055318,000706: 
055319,000707:                                                                                                  #  RPAD1         2DEC    6373338 B-29            M (-29) = 20909901.57 FT
055320,000708: 
055321,000709: 27,3740  23,2275               RPAD1              =        RPAD                                  
055322,000710: 
055323,000711: 27,3740           00305 11205  R300K              2DEC     6464778    B-29                       #  (-29) M
055324,000712: 
055325,000713: 27,3742           37777 37777  NEARONE            2DEC     .999999999                            
055326,000714: 
055327,000715: 27,3744  23,2423               TFFZEROS           EQUALS   HI6ZEROS                              
055328,000716: 27,3744  23,2413               TFF1/4             EQUALS   HIDP1/4                               
055329,000717: 

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