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.

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

Page 1262

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

Page 1263

054679,000078:                                                                                                  #                REGISTERS S1, S2 ARE UNTOUCHED BY ANY TFF SUBROUTINE
054680,000079:                                                                                                  #                INDEX REGISTERS X1, X2 ARE USED BY ALL TFF SUBROUTINES. THEY ARE ESTAB-
054681,000080:                                                                                                  #                LISHED IN TFF/CONIC AND MUST BE PRESERVED BETWEEN CALLS TO SUBSEQUENT
054682,000081:                                                                                                  #                SUBROUTINES.
054683,000082:                                                                                                  #                -NR                             C(X1) = NORM COUNT OF RMAG
054684,000083:                                                                                                  #                -NA                             C(X2) = NORM COUNT OF SQRT(ABS(ALFA))
054685,000084: 

Page 1264

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

Page 1265

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

Page 1266

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

Page 1267

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

Page 1268

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

Page 1269

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

Page 1270

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

Page 1271

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

Page 1272

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

Page 1273

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

Page 1274

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

Page 1275

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

Page 1276

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

Page 1277

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

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