Source Code

These source-code files are part of a reconstructed copy of Luminary 163, the first (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance Computer (AGC) software.

The reconstruction began with reconstructed source code for Luminary 173. Changes between revision 163 and 173 were backed out, as described by Luminary memos 157 and 158. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 163 listing would be different.

Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository.

053561,000002:                                                                                                  ## Copyright:   Public domain.
053562,000003:                                                                                                  ## Filename:    TIME_OF_FREE_FALL.agc
053563,000004:                                                                                                  ## Purpose:     A section of Luminary revision 163.
053564,000005:                                                                                                  ##              It is part of the reconstructed source code for the first
053565,000006:                                                                                                  ##              (unflown) release of the flight software for the Lunar
053566,000007:                                                                                                  ##              Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
053567,000008:                                                                                                  ##              The code has been recreated from a reconstructed copy of
053568,000009:                                                                                                  ##              Luminary 173, as well as Luminary memos 157 amd 158.
053569,000010:                                                                                                  ##              It has been adapted such that the resulting bugger words
053570,000011:                                                                                                  ##              exactly match those specified for Luminary 163 in NASA
053571,000012:                                                                                                  ##              drawing 2021152N, which gives relatively high confidence
053572,000013:                                                                                                  ##              that the reconstruction is correct.
053573,000014:                                                                                                  ## Reference:   pp. 1257-1272
053574,000015:                                                                                                  ## Assembler:   yaYUL
053575,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
053576,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
053577,000018:                                                                                                  ## Mod history: 2019-08-21 MAS  Created from Luminary 173.
053578,000019: 

Page 1257

053580,000021:                                                                                                  #           THE TFF SUBROUTINES MAY BE USED IN EITHER EARTH OR MOON CENTERED COORDINATES. THE TFF ROUTINES NEVER
053581,000022:                                                                                                  #  KNOW WHICH ORIGIN APPLIES. IT IS THE USER WHO KNOWS, AND WHO SUPPLIES  RONE, VONE AND 1/SQRT(MU)  AT THE
053582,000023:                                                                                                  #  APPROPRIATE SCALE LEVEL FOR THE PROPER PRIMARY BODY.
053583,000024: 
053584,000025:                                                                                                  #           EARTH ORIGIN           POSITION      -29       METERS
053585,000026:                                                                                                  #                                  VELOCITY      -7        METERS/CENTISECOND
053586,000027:                                                                                                  #                                  1/SQRT(MU)    +17       SQRT(CS SQ/METERS CUBED)
053587,000028: 
053588,000029:                                                                                                  #           MOON ORIGIN            POSITION      -27       METERS
053589,000030:                                                                                                  #                                  VELOCITY      -5        METERS/CENTISECONDS
053590,000031:                                                                                                  #                                  1/SQRT(MU)    +14       SQRT(CS SQ/METERS CUBED)
053591,000032: 
053592,000033:                                                                                                  #  ALL DATA PROVIDED TO AND RECEIVED FROM ANY TFF SUBROUTINE WILL BE AT ONE OF THE LEVELS ABOVE. IN ALL CASES,
053593,000034:                                                                                                  #  THE FREE FALL TIME IS RETURNED IN CENTISECONDS AT (-28). PROGRAM  TFF/CONIC  WILL GENERATE VONE/RTMU  AND
053594,000035:                                                                                                  #  LEAVE IT IN  VONE' AT (+10) IF EARTH ORIGIN AND (+9) IF MOON ORIGIN.
053595,000036:                                                                                                  #           THE USER MUST STORE THE STATE VECTOR IN  RONE, VONE  AND MU IN  THE FORM 1/SQRT(MU) IN  TFF/RTMU
053596,000037:                                                                                                  #  AT THE PROPER SCALE BEFORE CALLING  TFF/CONIC. SINCE  RONE, VONE  ARE IN THE EXTENDED VERB STORAGE AREA,
053597,000038:                                                                                                  #  THE USER MUST ALSO LOCK OUT THE EXTENDED VERBS, AND RELEASE THEM WHEN FINISHED.
053598,000039:                                                                                                  #           PROGRAMS     CALC/TFF  AND  CALC/TPER  ASSUME THAT THE TERMINAL RADIUS IS LESS THAN THE PRESENT
053599,000040:                                                                                                  #  RADIUS. THIS RESTRICTION CAN BE REMOVED BY A  15 W CODING CHANGE, BUT AT PRESENT IT IS NOT DEEMED NECESSARY.
053600,000041: 
053601,000042:                                                                                                  #           THE FOLLOWING ERASABLE QUANTITIES ARE USED BY THE TFF ROUTINES, AND ARE LOCATED IN THE PUSH LIST.
053602,000043: 
053603,000044:                                                                                                  #  BELOW      E:   IS USED FOR EARTH ORIGIN SCALE
053604,000045:                                                                                                  #             M:   IS USED FOR MOON  ORIGIN SCALE
053605,000046: 
053606,000047:                                                                                                  # TFFSW          =       119D       BIT1      0 = CALCTFF        1 = CALCTPER
053607,000048: 10,2213                        TFFDELQ            =        10D                                   #             Q2-Q1              E: (-16)  M: (-15)
053608,000049: 10,2213                        RMAG1              =        12D                                   #             ABVAL(RN)  M       E: (-29)  M: (-27)
053609,000050:                                                                                                  # RPER           =       14D                  PERIGEE RADIUS M   E: (-29)  M: (-27)
053610,000051: 10,2213                        TFFQ1              =        14D                                   #             R.V / SQRT(MUE)    E: (-16)  M: (-15)
053611,000052:                                                                                                  # SDELF/2                                     SIN(THETA) /2
053612,000053: 10,2213                        CDELF/2            =        14D                                   #             COS(THETA) /2
053613,000054:                                                                                                  # RAPO           =       16D                  APOGEE RADIUS  M   E: (-29)  M: (-27)
053614,000055: 10,2213                        NRTERM             =        16D                                   #             TERMINAL RADIUS M  E: (-29+NR)
053615,000056:                                                                                                  #                                M: (-27+NR)
053616,000057: 10,2213                        RTERM              =        18D                                   #             TERMINAL RADIUS M  E: (-29)  M: (-27)
053617,000058: 10,2213                        TFFVSQ             =        20D                                   #             -(V SQUARED/MU)  1/M  E: (20)  M: (18)
053618,000059: 10,2213                        TFF1/ALF           =        22D                                   #             SEMI MAJ AXIS  M  E: (-22-2 NA)
053619,000060:                                                                                                  #                               M: (-20-2 NA)
053620,000061: 10,2213                        TFFRTALF           =        24D                                   #             SQRT(ALFA)  E: (10+NA)  M: (9+NA)
053621,000062: 10,2213                        TFFALFA            =        26D                                   #             ALFA  1/M   E: (26-NR)  M: (24-NR)
053622,000063: 10,2213                        TFFNP              =        28D                                   #             SEMI LATUS RECTUM  M  E: (-38+2 NR)
053623,000064:                                                                                                  #                                   M: (-36+2 NR)
053624,000065: 10,2213                        TFF/RTMU           =        30D                                   #             1/SQRT(MU)         E: (17)   M: (14)
053625,000066: 10,2213                        NRMAG              =        32D                                   #             PRESENT RADIUS  M  E: (-29+NR)
053626,000067:                                                                                                  #                                M: (-27+NR)
053627,000068: 10,2213                        TFFX               =        34D                                   
053628,000069: 10,2213                        TFFTEM             =        36D                                   #             TEMPORARY
053629,000070: 

Page 1258

053631,000072:                                                                                                  #                                           REGISTERS S1, S2 ARE UNTOUCHED BY ANY TFF SUBROUTINE
053632,000073:                                                                                                  #                                           INDEX REGISTERS X1, X2 ARE USED BY ALL TFF SUBROUTINES. THEY ARE ESTAB-
053633,000074:                                                                                                  #                                           LISHED IN TFF/CONIC AND MUST BE PRESERVED BETWEEN CALLS TO SUBSEQUENT
053634,000075:                                                                                                  #                                           SUBROUTINES.
053635,000076:                                                                                                  #                                           -NR                             C(X1) = NORM COUNT OF RMAG
053636,000077:                                                                                                  #                                           -NA                             C(X2)= NORM COUNT OF SQRT(ABS(ALFA))
053637,000078: 

Page 1259

053639,000080: 
053640,000081: 
053641,000082:                                                                                                  #  SUBROUTINE NAME:     TFFCONIC                                           DATE:    01.29.67
053642,000083:                                                                                                  #  MOD NO:  0                                                              LOG SECTION:    TIME OF FREE FALL
053643,000084:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
053644,000085:                                                                                                  #  MOD NO:  1           MOD BY:  RR BAIRNSFATHER      DATE:  11 APR 67
053645,000086:                                                                                                  #  MOD NO:  2           MOD BY:  RR BAIRNSFATHER      DATE:  21 NOV 67     ADD MOON MU.
053646,000087:                                                                                                  #  MOD NO:  3           MOD BY:  RR BAIRNSFATHER      DATE:  21 MAR 68     ACCEPT DIFFERENT EARTH/MOON SCALES
053647,000088:                                                                                                  #  FUNCTIONAL DESCRIPTION:      THIS SUBROUTINE IS CALLED TO COMPUTE THOSE CONIC PARAMETERS REQUIRED BY THE TFF
053648,000089:                                                                                                  #           SUBROUTINES AND TO ESTABLISH THEM IN THE PUSH LIST AREA. THE PARAMETERS ARE LISTED UNDER OUTPUT.
053649,000090:                                                                                                  #           THE EQUATIONS ARE
053650,000091:                                                                                                  #                  -   -  -
053651,000092:                                                                                                  #                  H = RN*VN                                               ANGULAR MOMENTUM
053652,000093:                                                                                                  #                        - -
053653,000094:                                                                                                  #                  LCP = H.H / MU                                          SEMI LATUS RECTUM
053654,000095:                                                                                                  #                                -  -
053655,000096:                                                                                                  #                  ALFA = 2/RN - VN.VN / MU                                RECIPROCAL SEMI MAJ AXIS, SIGNED
053656,000097: 
053657,000098:                                                                                                  #           AND ALFA IS POS FOR ELLIPTIC  ORBITS
053658,000099:                                                                                                  #                        0  FOR PARABOLIC ORBITS
053659,000100:                                                                                                  #                       NEG FOR HYPERBOLIC ORBITS.
053660,000101:                                                                                                  #           SUBROUTINE ALSO COMPUTES AND SAVES  RMAG.
053661,000102:                                                                                                  #  CALLING SEQUENCE:
053662,000103:                                                                                                  #           TFFCONIC  EXPECTS CALLER TO ENTER WITH CORRECT GRAVITATIONAL CONSTANT IN MPAC, IN THE FORM
053663,000104:                                                                                                  #           1/SQRT(MU). PROGRAM WILL SAVE IN  TFF/RTMU  . THE SCALE IS DETERMINED BY WHETHER EARTH OR MOON
053664,000105:                                                                                                  #           ORIGIN IS USED.  THE CALLER MUST LOCK OUT THE EXTENDED VERBS BEFORE PROVIDING STATE VECTOR IN RONE,
053665,000106:                                                                                                  #           VONE  AT PROPER SCALE. THE EXTENDED VERBS MUST BE RESTORED WHEN THE CALLER IS FINISHED USING THE
053666,000107:                                                                                                  #           TFF ROUTINES.
053667,000108:                                                                                                  #           ENTRY POINT  TFFCONMU  EXPECTS THAT  TFF/RTMU  IS ALREADY LOADED.
053668,000109:                                                                                                  #           TO SPECIFY MU:      DLOAD  CALL                IF MU ALREADY STORED:    CALL
053669,000110:                                                                                                  #                                      YOURMU       1/RTMU   E: (17)  M: (14)              TFFCONMU
053670,000111:                                                                                                  #                                      TFFCONIC
053671,000112:                                                                                                  #           PUSHLOC = PDL+0, ARBITRARY IF LEQ 18D
053672,000113: 
053673,000114:                                                                                                  #  SUBROUTINES CALLED:  NONE
053674,000115:                                                                                                  #  NORMAL EXIT MODES:   RVQ
053675,000116:                                                                                                  #  ALARMS:  NONE
053676,000117:                                                                                                  #  OUTPUT:  THE FOLLOWING ARE STORED IN THE PUSH LIST AREA.
053677,000118:                                                                                                  #           RMAG1  E:(-29) M:(-27) M  RN, PRESENT RADIUS LENGTH.
053678,000119:                                                                                                  #           NRMAG  E: (-29+NR)     M  RMAG, NORMALIZED
053679,000120:                                                                                                  #                  M: (-27+NR)
053680,000121:                                                                                                  #           X1                     -NR, NORM COUNT
053681,000122:                                                                                                  #           TFFNP  E: (-38+2NR)    M  LCP, SEMI LATUS RECTUM, WEIGHTED BY NR.       FOR VGAMCALC
053682,000123:                                                                                                  #                  M: (-36+2NR)
053683,000124:                                                                                                  #           TFF/RTMU  E:(17)  M:(14)       1/SQRT(MU)
053684,000125:                                                                                                  #           TFFVSQ E:(20)  M:(18)  1/M   -(V SQ/MU): PRESENT VELOCITY,NORMLIZED.    FOR VGAMCALC
053685,000126:                                                                                                  #           TFFALFA  E: (26-NR)    1/M   ALFA, WEIGHTED BY NR
053686,000127:                                                                                                  #                    M: (24-NR)
053687,000128:                                                                                                  #           TFFRTALF  E: (10+NA)   SQRT(ALFA), NORMALIZED
053688,000129:                                                                                                  #                     M: (9+NA)

Page 1260

053690,000131:                                                                                                  #           X2                     -NA, NORM COUNT
053691,000132:                                                                                                  #           TFF1/ALF  E: (-22-2NA) SIGNED SEMI MAJ AXIS, WEIGHTED BY NA
053692,000133:                                                                                                  #                     M: (-20-2NA)
053693,000134:                                                                                                  #           PUSHLOC AT PDL+0
053694,000135:                                                                                                  #           THE FOLLOWING  IS STORED IN GENERAL ERASABLE
053695,000136:                                                                                                  #           VONE'  E:(10)  M:(9)   V/RT(MU), NORMALIZED VELOCITY
053696,000137:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
053697,000138:                                                                                                  #           RONE   E:(-29)  M:(-27)  M      STATE VECTOR                   LEFT BY CALLER
053698,000139:                                                                                                  #           VONE   E:(-7)   M:(-5)   M/CS   STATE VECTOR                   LEFT BY CALLER
053699,000140:                                                                                                  #           TFF/RTMU  E:(17)  M:(14)      1/RT(CS SQ/M CUBE)               IF ENTER VIA  TFFCONMU.
053700,000141:                                                                                                  #  DEBRIS:  QPRET,    PDL+0 ... PDL+3
053701,000142: 
053702,000143: 
053703,000144: 33,3521                                           BANK     33                                    
053704,000145: 27,2000                                           SETLOC   TOF-FF                                
053705,000146: 27,2000                                           BANK                                           
053706,000147: 
053707,000148: 27,3365                                           COUNT*   $$/TFF                                
053708,000149: 
053709,000150: 27,3365           00037        TFFCONIC           STORE    TFF/RTMU                              #  1/SQRT(MU)       E: (17)   M: (14)
053710,000151: 
053711,000152: 27,3366           53575        TFFCONMU           VLOAD    UNIT                                  #  COME HERE WITH TFFRTMU LOADED.
053712,000153: 27,3367           02207                                    RONE                                  #  SAVED RN.  M     E: (-29)  M: (-27)
053713,000154: 27,3370           77725                           PDDL                                           #  UR/2 TO PDL+0, +5
053714,000155: 27,3371           00045                                    36D                                   #  MAGNITUDE
053715,000156: 27,3372           00015                           STORE    RMAG1                                 #  M    E: (-29)   M: (-27)
053716,000157: 
053717,000158: 27,3373           77701                           NORM                                           
053718,000159: 27,3374           00047                                    X1                                    #  -NR
053719,000160: 27,3375           24041                           STOVL    NRMAG                                 #  RMAG  M   E: (-29+NR)  M: (-27+NR)
053720,000161: 27,3376           02215                                    VONE                                  #  SAVED VN.  M/CS   E: (-7)   M: (-5)
053721,000162: 27,3377           77761                           VXSC                                           
053722,000163: 27,3400           00037                                    TFF/RTMU                              #  E: (17)   M: (14)
053723,000164: 27,3401           02170                           STORE    VONE'                                 #  VN/SQRT(MU)   E: (10)   M: (9)
053724,000165: 
053725,000166: 27,3402           47361                           VXSC     VXV                                   
053726,000167: 27,3403           00041                                    NRMAG                                 #  E: (-29+NR)  M: (-27+NR)
053727,000168:                                                                                                  #  UR/2 FROM PDL
053728,000169: 27,3404           47572                           VSL1     VSQ                                   #  BEFORE:  E:(-19+NR)  M:(-18+NR)
053729,000170: 27,3405           14035                           STODL    TFFNP                                 #  LC P  M   E:(-38+2NR)  M:(-36+2NR)
053730,000171:                                                                                                  #  SAVE ALSO FOR VGAMCALC
053731,000172: 27,3406           06510                                    TFF1/4                                
053732,000173: 27,3407           63271                           DDV      PDVL                                  #  (2/RMAG)  1/M   E:(26-NR)   M:(24-NR)
053733,000174: 27,3410           00041                                    NRMAG                                 #  RMAG  M   E:(-29+NR)  M:(-27+NR)
053734,000175: 27,3411           02170                                    VONE'                                 #  SAVED VN.   E: (10)   M: (9)
053735,000176: 27,3412           57436                           VSQ      DCOMP                                 #  KEEP MPAC+2 HONEST FOR SQRT.
053736,000177: 27,3413           00025                           STORE    TFFVSQ                                #  -(V SQ/MU)   E:(20)   M:(18)
053737,000178:                                                                                                  #  SAVE FOR VGAMCALC
053738,000179: 27,3414           43257                           SR*      DAD                                   

Page 1261

053740,000181: 27,3415           20573                                    0          -6,1                       #  GET -VSQ/MU   E:(26-NR)   M:(24-NR)
053741,000182: 27,3416           77626                           STADR                                          
053742,000183:                                                                                                  #  2/RMAG   FROM PDL+2
053743,000184: 27,3417           77744                           STORE    TFFALFA                               #  ALFA  1/M   E:(26-NR)   M:(24-NR)
053744,000185: 27,3420           41457                           SL*      PUSH                                  #  TEMP SAVE ALFA    E:(20)   M:(18)
053745,000186: 27,3421           20173                                    0          -6,1                       
053746,000187: 27,3422           75446                           ABS      SQRT                                  #  E:(10)   M:(9)
053747,000188: 27,3423           77701                           NORM                                           
053748,000189: 27,3424           00050                                    X2                                    #  X2 = -NA
053749,000190: 27,3425           00031                           STORE    TFFRTALF                              #  SQRT( ABS(ALFA) )  E:(10+NA)   M:(9+NA)
053750,000191: 27,3426           75316                           DSQ      SIGN                                  #  NOT SO ACCURATE, BUT OK
053751,000192:                                                                                                  #  ALFA FROM PDL+2   E:(20)   M:(18)
053752,000193: 27,3427           55254                           BZE      BDDV                                  #  SET 1/ALFA =0, TO SHOW SMALL ALFA
053753,000194: 27,3430           57432                                    +2                                    
053754,000195: 27,3431           06510                                    TFF1/4                                
053755,000196: 27,3432           00027                 +2        STORE    TFF1/ALF                              #  1/ALFA   E:(-22-2 NA)   M:(-20-2 NA)
053756,000197: 27,3433           77616        DUMPCNIC           RVQ                                            
053757,000198: 
053758,000199:                                                                                                  #                          39 W
053759,000200: 

Page 1262

053761,000202:                                                                                                  #  SUBROUTINE NAME:     TFFRP/RA                                           DATE:  01.17.67
053762,000203:                                                                                                  #  MOD NO:  0                                                              LOG SECTION:    TIME OF FREE FALL
053763,000204:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
053764,000205:                                                                                                  #  MOD NO:  1           MOD BY:  RR BAIRNSFATHER      DATE:  11 APR 67
053765,000206:                                                                                                  #  MOD NO:  2           MOD BY:  RR BAIRNSFATHER      DATE:  21 MAR 68     ACCEPT DIFFERENT EARTH/MOON SCALES
053766,000207:                                                                                                  #                                                                          ALSO IMPROVE ACCURACY OF RAPO.
053767,000208:                                                                                                  #  FUNCTIONAL DESCRIPTION:         USED BY CALCTPER AND TFF DISPLAYS TO CALCULATE PERIGEE RADIUS AND ALSO
053768,000209:                                                                                                  #           APOGEE RADIUS FOR A GENERAL CONIC.
053769,000210:                                                                                                  #           PROGRAM GIVES PERIGEE RADIUS AS               APOGEE RADIUS IS GIVEN BY
053770,000211:                                                                                                  #                  RP = P /(1+E)                                 RA = (1+E) / ALFA
053771,000212:                                                                                                  #           WHERE   2
053772,000213:                                                                                                  #                  E  = 1 - P ALFA
053773,000214:                                                                                                  #           IF RA IS NEGATIVE OR SHOWS DIVIDE OVERFLOW, THEN RA = POSMAX BECAUSE
053774,000215:                                                                                                  #                  1. APOGEE RADIUS IS NOT MEANINGFUL FOR HYPERBOLA
053775,000216:                                                                                                  #                  2. APOGEE RADIUS IS NOT DEFINED FOR PARABOLA
053776,000217:                                                                                                  #                  3. APOGEE RADIUS EXCEEDS THE SCALING FOR ELLIPSE.
053777,000218:                                                                                                  #           THIS SUBROUTINE REQUIRES THE SIGNED  RECIPROCAL SEMI MAJ AXIS,  ALFA,  AND SEMI LATUS RECTUM AS DATA.
053778,000219:                                                                                                  #  CALLING SEQUENCE:  CALL
053779,000220:                                                                                                  #                            TFFRP/RA
053780,000221:                                                                                                  #           PUSHLOC = PDL+0, ARBITRARY IF LEQ 10D
053781,000222:                                                                                                  #           C(MPAC) UNSPECIFIED
053782,000223: 
053783,000224:                                                                                                  #  SUBROUTINES CALLED:  NONE
053784,000225:                                                                                                  #  NORMAL EXIT MODE:    RVQ
053785,000226:                                                                                                  #           IF ELLIPSE, WITHIN NORMAL SCALING, RAPO IS CORRECT.
053786,000227:                                                                                                  #           OTHERWISE, RAPO = POSMAX.
053787,000228:                                                                                                  #  ALARMS:  NONE
053788,000229:                                                                                                  #  OUTPUT:  STORED IN PUSH LIST AREA. SCALE OF OUTPUT AGREES WITH DATA SUPPLIED TO  TFF/CONIC.
053789,000230:                                                                                                  #           RPER   E:(-29)  M:(-27)  M     PERIGEE RADIUS                  DESTROYED BY CALCTFF/CALCTPER, TFFTRIG.
053790,000231:                                                                                                  #           RAPO   E:(-29)  M:(-27)  M     APOGEE  RADIUS                  WILL BE DESTROYED BY CALCTFF/CALCTPER
053791,000232:                                                                                                  #           PUSHLOC AT PDL+0
053792,000233:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
053793,000234:                                                                                                  #           TFFALFA E:(26-NR)      M   1/SEMI MAJ AXIS                     LEFT BY TFFCONIC
053794,000235:                                                                                                  #                   M:(24-NR)
053795,000236:                                                                                                  #           TFFNP  E: (-38+2NR)    M  LC P, SEMI LATUS RECTUM              LEFT BY TFFCONIC
053796,000237:                                                                                                  #                  M: (-36+2NR)
053797,000238:                                                                                                  #           X1                     -NR, NORM COUNT OF RMAG                 LEFT BY TFFCONIC
053798,000239:                                                                                                  #           X2                     -NA, NORM COUNT OF ALFA                 LEFT BY TFFCONIC
053799,000240:                                                                                                  #  DEBRIS:  QPRET,    PDL+0 ... PDL+1
053800,000241: 

Page 1263

053802,000243: 27,3434                        RAPO               =        16D                                   #  APOGEE RADIUS  M  E:(-29)  M:(-27)
053803,000244: 27,3434                        RPER               =        14D                                   #  PERIGEE RADIUS  M  E:(-29)  M:(-27)
053804,000245: 
053805,000246: 27,3434           41345        TFFRP/RA           DLOAD    DMP                                   
053806,000247: 27,3435           00033                                    TFFALFA                               #  ALFA  1/M  E:(26-NR)   M:(24-NR)
053807,000248: 27,3436           00035                                    TFFNP                                 #  LC P  M   E:(-38+2NR)   M:(-36+2NR)
053808,000249: 27,3437           57457                           SR*      DCOMP                                 #  ALFA P (-12+NR)
053809,000250: 27,3440           20571                                    0          -8D,1                      #  ALFA P  (-4)
053810,000251: 27,3441           51415                           DAD      ABS                                   #  (DCOMP GIVES VALID TP RESULT FOR SQRT)
053811,000252:                                                                                                  #  (ABS PROTECTS SQRT IF E IS VERY NEAR 0)
053812,000253: 27,3442           17772                                    DP2(-4)                               
053813,000254: 27,3443           43366                           SQRT     DAD                                   #  E SQ = (1- P ALFA)   (-4)
053814,000255: 27,3444           06510                                    TFF1/4                                
053815,000256: 27,3445           55206                           PUSH     BDDV                                  #  (1+E)  (-2)  TO PDL+0
053816,000257: 27,3446           00035                                    TFFNP                                 #  LCP  M E:(-38+2NR)   M:(-36+2NR)
053817,000258: 27,3447           53657                           SR*      SR*                                   #  (DOES SR THEN SL TO AVOID OVFL)
053818,000259: 27,3450           20601                                    0,1                                   #  X1=-NR
053819,000260: 27,3451           20572                                    0          -7,1                       #  (EFFECTIVE SL)
053820,000261: 27,3452           14017                           STODL    RPER                                  #  PERIGEE RADIUS  M   E:(-29)   M:(-27)
053821,000262:                                                                                                  #  (1+E)  (-2)   FROM PDL+0
053822,000263: 27,3453           41005                           DMP      BOVB                                  
053823,000264: 27,3454           00027                                    TFF1/ALF                              #  E:(-22-2NA)  M:(-20-2NA)
053824,000265: 27,3455           57760                                    TCDANZIG                              #  CLEAR OVFIND, IF ON.
053825,000266: 27,3456           53654                           BZE      SL*                                   
053826,000267: 27,3457           57466                                    MAXRA                                 #  SET POSMAX, IF ALFA=0
053827,000268: 27,3460           57603                                    0          -5,2                       #  -5+NA
053828,000269: 27,3461           40057                           SL*      BOV                                   
053829,000270: 27,3462           57576                                    0,2                                   
053830,000271: 27,3463           57466                                    MAXRA                                 #  SET POSMAX IF OVFL.
053831,000272: 27,3464           77644                           BPL                                            #  CONTINUE WITH VALID RAPO.
053832,000273: 27,3465           57470                                    +3                                    
053833,000274: 27,3466           77745        MAXRA              DLOAD                                          #  RAPO CALC IS NOT VALID. SET RAPO =
053834,000275: 27,3467           17776                                    NEARONE                               #  POSMAX AS A TAG.
053835,000276: 27,3470           00021                 +3        STORE    RAPO                                  #  APOGEE RADIUS  M   E:(-29)   M:(-27)
053836,000277: 27,3471           77616        DUMPRPRA           RVQ                                            
053837,000278: 
053838,000279:                                                                                                  #                          30 W
053839,000280: 

Page 1264

053841,000282:                                                                                                  #  SUBROUTINE NAME:     CALCTPER  /  CALCTFF                               DATE:    01.29.67
053842,000283:                                                                                                  #  MOD NO:  0                                                              LOG SECTION:    TIME OF FREE FALL
053843,000284:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
053844,000285:                                                                                                  #  MOD NO:  1           MOD BY:  RR BAIRNSFATHER      DATE:  21 MAR 67
053845,000286:                                                                                                  #  MOD NO:  2           MOD BY:  RR BAIRNSFATHER      DATE:  14 APR 67
053846,000287:                                                                                                  #  MOD NO:  3           MOD BY:  RR BAIRNSFATHER      DATE:  8JUL 67       NEAR EARTH MUE AND NEG TFF (GONEPAST)
053847,000288:                                                                                                  #  MOD NO:  4           MOD BY:  RR BAIRNSFATHER      DATE:  21 NOV 67     ADD VARIABLE MU.
053848,000289:                                                                                                  #  MOD NO:  5           MOD BY:  RR BAIRNSFATHER      DATE:  21 MAR 68     ACCEPT DIFFERENT EARTH/MOON SCALES
053849,000290:                                                                                                  #  FUNCTIONAL DESCRIPTION:      PROGRAM CALCULATES THE FREE-FALL TIME OF FLIGHT FROM PRESENT POSITION  RN  AND
053850,000291:                                                                                                  #           VELOCITY  VN  TO A RADIUS LENGTH SPECIFIED BY  RTERM  , SUPPLIED BY THE USER. THE POSITION VECTOR
053851,000292:                                                                                                  #           RN  MAY BE ON EITHER SIDE OF THE CONIC, BUT  RTERM  IS CONSIDERED ON THE INBOUND SIDE.
053852,000293:                                                                                                  #           THE EQUATIONS ARE
053853,000294: 
053854,000295:                                                                                                  #                  Q2 = -SQRT(RTERM (2-RTERM ALFA) - LCP)    (INBOUND SIDE))        LEQ +- LCE/SQRT(ALFA)
053855,000296:                                                                                                  #                       -  -
053856,000297:                                                                                                  #                  Q1 = RN.VN / SQRT(MU)                                            LEQ +- LCE/SQRT(ALFA)
053857,000298: 
053858,000299:                                                                                                  #                  Z = NUM / DEN                                                    LEQ +- 1/SQRT(ALFA)
053859,000300: 
053860,000301:                                                                                                  #           WHERE, IF INBOUND
053861,000302:                                                                                                  #                  NUM = RTERM - RN                                                 LEQ +- 2 LCE/ALFA
053862,000303:                                                                                                  #                  DEN = Q2+Q1                                                      LEQ +- 2 LCE/SQRT(ALFA)
053863,000304: 
053864,000305:                                                                                                  #           AND, IF OUTBOUND
053865,000306:                                                                                                  #                  NUM = Q2-Q1                                                      LEQ +- 2 LCE/SQRT(ALFA)
053866,000307:                                                                                                  #                  DEN = 2 - ALFA (RTERM + RN) .                                    LEQ +- 2 LCE
053867,000308: 
053868,000309:                                                                                                  #           IF     ALFA ZZ  <  1.0               (FOR ALL CONICS EXCEPT ELLIPSES HAVING ABS(DEL ECC ANOM) G 90 DEG)
053869,000310: 
053870,000311:                                                                                                  #           THEN   X = ALFA Z Z
053871,000312:                                                                                                  #           AND    TFF = (RTERM +RN -2 ZZ T(X) ) Z/SQRT(MU)
053872,000313: 
053873,000314:                                                                                                  #                  EXCEPT IF ALFA PNZ, AND IF TFF NEG,
053874,000315:                                                                                                  #                  THEN   TFF = 2 PI /(ALFA SQRT(ALFA)) + TFF
053875,000316: 
053876,000317:                                                                                                  #           OR IF  ALFA ZZ  GEQ  1.0             (FOR ELLIPSES HAVING ABS(DEL ECC ANOM) GEQ 90 DEG)
053877,000318: 
053878,000319:                                                                                                  #           THEN   X = 1/ALFA Z Z
053879,000320:                                                                                                  #           AND    TFF = (PI/SQRT(ALFA) -Q2 +Q1 +2(X T(X) -1) /ALFA Z) /ALFA SQRT(MU)
053880,000321: 
053881,000322:                                                                                                  #           WHERE  T(X) IS A POLYNOMIAL APPROXIMATION TO THE SERIES
053882,000323:                                                                                                  #                             2     3                        2
053883,000324:                                                                                                  #                  1/3 -X/5 +X /7 -X /9 ...                (X   <  1.0)
053884,000325: 
053885,000326:                                                                                                  #  CALLING SEQUENCE:  TIME TO RTERM                           TIME TO PERIGEE
053886,000327:                                                                                                  #                     CALL                                    CALL
053887,000328:                                                                                                  #                            CALCTFF                                 CALCTPER
053888,000329:                                                                                                  #                     C(MPAC) = TERMNL RAD  M                 C(MPAC) = PERIGEE RAD  M
053889,000330:                                                                                                  #           FOR EITHER,   E: (-29)    M: (-27)
053890,000331:                                                                                                  #           FOR EITHER, PUSHLOC = PDL+0, ARBITRARY IF LEQ 8D.
053891,000332: 

Page 1265

053893,000334:                                                                                                  #  SUBROUTINES CALLED:  T(X),  VIA RTB
053894,000335:                                                                                                  #  NORMAL EXIT MODE:  RVQ
053895,000336:                                                                                                  #           HOWEVER, PROGRAM EXITS WITH ONE OF THE FOLLOWING VALUES FOR TFF (-28) CS  IN MPAC. USER MUST STORE.
053896,000337:                                                                                                  #                  A.  TFF= FLIGHT TIME. NORMAL CASE FOR POSITIVE FLIGHT TIME LESS THAN ONE ORBITAL PERIOD.
053897,000338:                                                                                                  #                  B.  (THIS OPTION IS NO LONGER USED.)
053898,000339:                                                                                                  #                  C.  TFF = POSMAX.  THIS INDICATES THAT THE CONIC FROM THE PRESENT POSITION WILL NOT RETURN TO
053899,000340:                                                                                                  #                      THE SPECIFIED ALTITUDE.  ALSO INDICATES OUTBOUND PARABOLA OR HYPERBOLA.
053900,000341:                                                                                                  #  OUTPUT:  C(MPAC)  (-28)  CS     TIME OF FLIGHT, OR TIME TO PERIGEE
053901,000342:                                                                                                  #           TFFX    (0)            X,                                      LEFT FOR ENTRY DISPLAY TFF ROUTINES
053902,000343:                                                                                                  #           NRTERM  E: (-29+NR)    M  RTERM, WEIGHTED BY NR                LEFT FOR ENTRY DISPLAY TFF ROUTINES
053903,000344:                                                                                                  #                   M: (-27+NR)
053904,000345:                                                                                                  #           TFFTEM  E: (-59+2NR)   LCP Z Z SGN(SDELF)                      LEFT FOR ENTRY DISPLAY TFF ROUTINES
053905,000346:                                                                                                  #                   M: (-55+2NR)   LCP /ALFA SGN(SDELF)                    LEFT FOR ENTRY DISPLAY TFF ROUTINES
053906,000347:                                                                                                  #           NOTE:  TFFTEM = PDL 36D AND WILL BE DESTROYED BY .:UNIT:.
053907,000348:                                                                                                  #           RMAG1  E:(-29)  M:(-27)  PDL 12 NOT TOUCHED.
053908,000349:                                                                                                  #           TFFQ1  E:(-16)  M:(-15)  PDL 14D
053909,000350:                                                                                                  #           TFFDELQ E:(-16) M:(-15)  PDL 10D
053910,000351:                                                                                                  #           PUSHLOC AT PDL+0
053911,000352:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
053912,000353:                                                                                                  #           RONE   E:(-29)  M:(-27)  M   STATE VECTOR                      LEFT BY USER
053913,000354:                                                                                                  #           VONE'  E:(+10)  M:(+9)   VN/SQRT(MU)                           LEFT BY TFF/CONIC
053914,000355:                                                                                                  #           RMAG1  E:(-29)  M:(-27)  PRESENT RADIUS,  M                    LEFT BY TFFCONIC
053915,000356:                                                                                                  #           C(MPAC)E:(-29)  M:(-27)  RTERM, TERMINAL RADIUS LENGTH, M      LEFT BY USER
053916,000357: 
053917,000358:                                                                                                  #           THE FOLLOWING ARE STORED IN THE PUSH LIST AREA.
053918,000359:                                                                                                  #           TFF/RTMU  E:(17)  M:(14)  1/SQRT(MU)                           LEFT BY TFFCONIC.
053919,000360:                                                                                                  #           NRMAG  E: (-29+NR)  M  RMAG, NORMALIZED                        LEFT BY TFFCONIC
053920,000361:                                                                                                  #                  M: (-27+NR)
053921,000362:                                                                                                  #           X1                     -NR, NORM COUNT                         LEFT BY TFFCONIC
053922,000363:                                                                                                  #           TFFNP  E: (-38+2NR)  M   LCP, SEMI LATUS RECTUM, WEIGHT  NR    LEFT BY TFFCONIC
053923,000364:                                                                                                  #                  M: (-36+2NR)
053924,000365:                                                                                                  #           TFFALFA  E: (26-NR)    1/M  ALFA, WEIGHT  NR                   LEFT BY TFFCONIC
053925,000366:                                                                                                  #                    M: (24-NR)
053926,000367:                                                                                                  #           TFFRTALF  E:(10+NA)    SQRT(ALFA), NORMALIZED                  LEFT BY TFFCONIC
053927,000368:                                                                                                  #                     M:(9+NA)
053928,000369:                                                                                                  #           X2                     -NA, NORM COUNT                         LEFT BY TFFCONIC
053929,000370:                                                                                                  #           TFF1/ALF  E: (-22-2NA)  SIGNED SEMIMAJ AXIS, WEIGHTED BY NA    LEFT BY TFFCONIC
053930,000371:                                                                                                  #                     M: (-20-2NA)
053931,000372:                                                                                                  #  DEBRIS:  QPRET,   PDL+0 ... PDL+3
053932,000373:                                                                                                  #           RTERM  E:(-29)  M:(-27)  RTERM, TERMINAL RADIUS LENGTH
053933,000374:                                                                                                  #           RAPO   E:(-29)  M:(-27)  PDL 16D  (=NRTERM)
053934,000375:                                                                                                  #           RPER   E:(-29)  M:(-27)  PDL 14D   (=TFFQ1)
053935,000376: 

Page 1266

053937,000378: 27,3472           77614        CALCTPER           SETGO                                          #  ENTER WITH RPER  IN MPAC
053938,000379: 27,3473           03436                                    TFFSW                                 
053939,000380: 27,3474           57477                                    +3                                    
053940,000381: 27,3475           77614        CALCTFF            CLEAR                                          #  ENTER WITH RTERM IN MPAC
053941,000382: 27,3476           03676                                    TFFSW                                 
053942,000383: 27,3477           00023                 +3        STORE    RTERM                                 #  E: (-29)  M: (-27)
053943,000384: 27,3500           77657                           SL*                                            
053944,000385: 27,3501           20201                                    0,1                                   #  X1=-NR
053945,000386: 27,3502           00021                           STORE    NRTERM                                #  RTERM  E: (-29+NR)  M: (-27+NR)
053946,000387: 27,3503           44205                           DMP      BDSU                                  
053947,000388: 27,3504           00033                                    TFFALFA                               #  ALFA  E: (26-NR)  M: (24-NR)
053948,000389: 27,3505           06510                                    TFF1/4                                
053949,000390: 27,3506           41206                           PUSH     DMP                                   #  (2-ALFA RTERM)  (-3)  TO PDL+0
053950,000391: 27,3507           00021                                    NRTERM                                #  E: (-29+NR)  M: (-27+NR)
053951,000392: 27,3510           53725                           PDDL     SR*                                   #  RTERM(2-ALFA RTERM) TO PDL+2
053952,000393:                                                                                                  #  E: (-32+NR)   M: (-30+NR)
053953,000394: 27,3511           00035                                    TFFNP                                 #  LC P  E:(-38+2NR)  M:(-36+2NR)
053954,000395: 27,3512           20573                                    0          -6,1                       #  X1 = -NR
053955,000396: 27,3513           43276                           DCOMP    DAD                                   #  DUE TO SHIFTS, KEEP PRECISION FOR SQRT
053956,000397:                                                                                                  #  RTERM(2-ALFA RTERM) FROM PDL+2
053957,000398:                                                                                                  #  E: (-32+NR)  M: (-30+NR)
053958,000399: 27,3514           77657                           SR*                                            #  LEAVE  E: (-32)  M: (-30)
053959,000400: 27,3515           20601                                    0,1                                   #  X1 = -NR
053960,000401: 27,3516           71214                           BOFF     DLOAD                                 #  CHECK TFF / TPER SWITCH
053961,000402: 27,3517           03756                                    TFFSW                                 
053962,000403: 27,3520           57522                                    +2                                    #  IF TFF, CONTINUE
053963,000404: 27,3521           06520                                    TFFZEROS                              #  IF TPER, SET Q2 = 0
053964,000405: 27,3522           75440                 +2        BMN      SQRT                                  #  E: (-16)  M: (-15)
053965,000406: 
053966,000407: 27,3523           57655                                    MAXTFF1                               #  NO FREE FALL CONIC TO RTERM FROM HERE
053967,000408:                                                                                                  #  RESET PDL, SET TFF=POSMAX, AND EXIT.
053968,000409: 
053969,000410: 27,3524           41076                           DCOMP    BOVB                                  #  RT IS ON INBOUND SIDE.  ASSURE OVFIND=0
053970,000411: 27,3525           57760                                    TCDANZIG                              #  ANY PORT IN A STORM.
053971,000412: 27,3526           24045                           STOVL    TFFTEM                                #  Q2   E: (-16)  M: (-15)
053972,000413: 27,3527           02170                                    VONE'                                 #  VN/SQRT(MU) E: (10)  M: (9)
053973,000414: 27,3530           52441                           DOT      SL3                                   
053974,000415: 27,3531           02207                                    RONE                                  #  SAVED RN.  E: (-29)  M: (-27)
053975,000416: 27,3532           00017                           STORE    TFFQ1                                 #  Q1, SAVE FOR GONEPAST TEST.
053976,000417:                                                                                                  #  E: (-16)  M: (-15)
053977,000418: 27,3533           44240                           BMN      BDSU                                  
053978,000419: 27,3534           57555                                    INBOUND                               #  USE ALTERNATE Z
053979,000420: 27,3535           00045                                    TFFTEM                                #  Q2  E: (-16)  M: (-15)
053980,000421: 
053981,000422:                                                                                                  #                                          OUTBOUND Z CALC CONTINUES HERE
053982,000423: 
053983,000424: 27,3536           14043                           STODL    TFFX                                  #  NUM=Q2-Q1  E: (-16)  M: (-15)
053984,000425: 27,3537           00033                                    TFFALFA                               #  ALFA  E: (26-NR)  M: (24-NR)
053985,000426: 27,3540           44205                           DMP      BDSU                                  

Page 1267

053987,000428: 27,3541           00041                                    NRMAG                                 #  RMAG  E: (-29+NR)  M: (-27+NR)
053988,000429:                                                                                                  #  (2-RTERM ALFA)  (-3) FROM PDL+0
053989,000430: 27,3542           51406        SAVEDEN            PUSH     ABS                                   #  DEN TO PDL+0  E: (-3) OR (-16)
053990,000431:                                                                                                  #                M: (-3) OR (-15)
053991,000432: 27,3543           40015                           DAD      BOV                                   #  INDETERMINANCY TEST
053992,000433: 27,3544           17764                                    LIM(-22)                              #  =1.0-B(-22)
053993,000434: 27,3545           57566                                    TFFXTEST                              #  GO IF DEN >/= B(-22)
053994,000435: 27,3546           65345                           DLOAD    PDDL                                  #  SET DEN=0  OTHERWISE
053995,000436: 27,3547           06520                                    TFFZEROS                              
053996,000437:                                                                                                  #  XCH ZERO WITH PDL+0
053997,000438: 27,3550           57545                           DLOAD    DCOMP                                 
053998,000439: 27,3551           00033                                    TFFALFA                               #  ALFA  E: (26-NR)  M: (24-NR)
053999,000440: 27,3552           71240                           BMN      DLOAD                                 #  FOR TPER: Z INDET AT DELE/2=0 AND 90.
054000,000441: 27,3553           57662                                    TFFEL1                                #  ASSUME 90, AND LEAVE 0 IN PDL: 1/Z=D/N
054001,000442: 
054002,000443:                                                                                                  #  Z INDET. AT PERIGEE FOR PARAB OR HYPERB.
054003,000444: 27,3554           77616        DUMPTFF1           RVQ                                            #  RETURN  TFF =0
054004,000445: 
054005,000446:                                                                                                  #                                          INBOUND Z CALC CONTINUES HERE
054006,000447: 27,3555           77745        INBOUND            DLOAD                                          #  RESET PDL+0
054007,000448: 27,3556           45345                           DLOAD    DSU                                   #  ALTERNATE Z CALC
054008,000449: 27,3557           00023                                    RTERM                                 #  E: (-29)  M: (-27)
054009,000450: 27,3560           00015                                    RMAG1                                 #  E: (-29)  M: (-27)
054010,000451: 27,3561           14043                           STODL    TFFX                                  #  NUM=RTERM-RN  E: (-29)  M: (-27)
054011,000452: 27,3562           00045                                    TFFTEM                                #  Q2  E: (-16)  M: (-15)
054012,000453: 27,3563           52015                           DAD      GOTO                                  
054013,000454: 27,3564           00017                                    TFFQ1                                 #  Q1  E: (-16)  M: (-15)
054014,000455: 27,3565           57542                                    SAVEDEN                               #  DEN = Q2+Q1   E: (-16)  M: (-15)
054015,000456: 
054016,000457: 27,3566           65215        TFFXTEST           DAD      PDDL                                  #   (ABS(DEN) TO PDL+2))  E: (-3) OR (-16)
054017,000458:                                                                                                  #                         M: (-3) OR (-15)
054018,000459: 27,3567           17766                                    DP(-22)                               #  RESTORE ABS(DEN) TO MPAC
054019,000460: 27,3570           00043                                    TFFX                                  #  NUM E:(-16) OR (-29)  M:(-15) OR (-27)
054020,000461: 27,3571           53605                           DMP      SR*                                   
054021,000462: 27,3572           00031                                    TFFRTALF                              #  SQRT(ALFA)  E: (10+NA)  M: (9+NA)
054022,000463: 27,3573           57201                                    0          -3,2                       #  X2=-NA
054023,000464: 27,3574           77671                           DDV                                            #  C(MPAC) =NUM SQRT(ALFA)  E:(-3) OR (-16)
054024,000465:                                                                                                  #                           M:(-3) OR (-15)
054025,000466:                                                                                                  #  ABS(DEN) FROM PDL+2  E:(-3) OR (-16)
054026,000467:                                                                                                  #                       M:(-3) OR (-15)
054027,000468: 27,3575           40145                           DLOAD    BOV                                   #  (THE DLOAD IS SHARED WITH TFFELL)
054028,000469: 27,3576           00043                                    TFFX                                  #  NUM  E: (-16) OR (-29)  M:(-15) OR (-27)
054029,000470: 27,3577           57660                                    TFFELL                                #  USE EQN FOR DELE GEQ 90, LEQ -90
054030,000471: 
054031,000472:                                                                                                  #                                          OTHERWISE, CONTINUE FOR GENERAL CONIC FOR TFF EQN
054032,000473: 
054033,000474: 27,3600           45471                           DDV      STADR                                 
054034,000475:                                                                                                  #  DEN FROM PDL+0   E: (-3) OR (-16)
054035,000476:                                                                                                  #                   M: (-3) OR (-15)
054036,000477: 27,3601           77732                           STORE    TFFTEM                                #  Z  SAVE FOR SIGN OF SDELF.

Page 1268

054038,000479:                                                                                                  #  E: (-13)  M: (-12)
054039,000480: 27,3602           63406                           PUSH     DSQ                                   #  Z TO PDL+0
054040,000481: 27,3603           41206                           PUSH     DMP                                   #  Z SQ TO PDL+2  E: (-26)  M: (-24)
054041,000482: 27,3604           00035                                    TFFNP                                 #  LC P  E: (-38+2NR)  M: (-36+2NR)
054042,000483: 27,3605           75261                           SL       SIGN                                  
054043,000484: 27,3606           20206                                    5                                     
054044,000485: 27,3607           00045                                    TFFTEM                                #  AFFIX SIGN FOR SDELF (ENTRY DISPLAY)
054045,000486: 27,3610           14045                           STODL    TFFTEM                                #  P ZSQ  E: (-59+2NR)  M: (-55+2NR)
054046,000487:                                                                                                  #  (ARG IS USED IN TFF/TRIG)
054047,000488:                                                                                                  #  ZSQ FROM PDL+2   E: (-26)  M: (-24)
054048,000489: 27,3611           41206                           PUSH     DMP                                   #  RESTORE PUSH LOC
054049,000490: 27,3612           00033                                    TFFALFA                               #  ALFA  E: (26-NR)  M: (24-NR)
054050,000491: 27,3613           77657                           SL*                                            
054051,000492: 27,3614           20201                                    0,1                                   #  X1=-NR
054052,000493: 27,3615           00043                           STORE    TFFX                                  #  X
054053,000494: 27,3616           41234                           RTB      DMP                                   
054054,000495: 27,3617           57742                                    T(X)                                  #   POLY
054055,000496:                                                                                                  #  ZSQ FROM PDL+2  E: (-26)  M: (-24)
054056,000497: 27,3620           44302                           SR2      BDSU                                  #  2 ZSQ T(X)  E: (-29)  M: (-27)
054057,000498: 27,3621           00023                                    RTERM                                 #  RTERM  E: (-29)  M: (-27)
054058,000499: 27,3622           41215                           DAD      DMP                                   
054059,000500: 27,3623           00015                                    RMAG1                                 #  E: (-29)  M: (-27)
054060,000501:                                                                                                  #  Z FROM PDL+0  E: (-13)  M: (-12)
054061,000502: 27,3624           51042                           SR3      BPL                                   #  TFF SQRT(MU)   E: (-45)  M: (-42)
054062,000503: 27,3625           57646                                    ENDTFF                                #  (NO PUSH UP)
054063,000504: 27,3626           75206                           PUSH     SIGN                                  #  TFF SQRT(MU)  TO PDL+0
054064,000505: 27,3627           00017                                    TFFQ1                                 #  Q1 FOR GONEPAST TEST
054065,000506: 27,3630           71244                           BPL      DLOAD                                 #  GONE PAST ?
054066,000507: 27,3631           57652                                    NEGTFF                                #  YES. TFF < 0 .
054067,000508: 27,3632           00027                                    TFF1/ALF                              #  1/ALFA  E: (-22-2NA)  M: (-20-2NA)
054068,000509: 27,3633           51076                           DCOMP    BPL                                   #  ALFA > 0 ?
054069,000510: 27,3634           57652                                    NEGTFF                                #  NO. TFF IS NEGATIVE.
054070,000511: 
054071,000512:                                                                                                  #                                          CORRECT FOR ORBITAL PERIOD.
054072,000513: 
054073,000514: 27,3635           77676                           DCOMP                                          #  YES. CORRECT FOR ORB PERIOD.
054074,000515: 27,3636           56205                           DMP      DDV                                   
054075,000516: 27,3637           17762                                    PI/16                                 #  2 PI (-5)
054076,000517: 27,3640           00031                                    TFFRTALF                              #  SQRT(ALFA)  E: (10+NA)  M: (9+NA)
054077,000518: 27,3641           53657                           SL*      SL*                                   
054078,000519: 27,3642           57602                                    0          -4,2                       #  X2=-NA
054079,000520: 27,3643           57602                                    0          -4,2                       
054080,000521: 27,3644           43257                           SL*      DAD                                   
054081,000522: 27,3645           57576                                    0,2                                   
054082,000523:                                                                                                  #  TFF SQRT(MU) FROM PDL+0  E:(-45) M:(-42)
054083,000524: 27,3646           40005        ENDTFF             DMP      BOV                                   #  TFF SQRT(MU) IN MPAC     E:(-45) M:(-42)
054084,000525: 27,3647           00037                                    TFF/RTMU                              #  E: (17)  M: (14)
054085,000526: 27,3650           57656                                    MAXTFF                                #  SET POSMAX IF OVFL.
054086,000527: 
054087,000528: 27,3651           77616        DUMPTFF2           RVQ                                            #  RETURN  TFF   (-28) CS IN MPAC.
054088,000529: 

Page 1269

054090,000531: 27,3652           77745        NEGTFF             DLOAD                                          
054091,000532:                                                                                                  #  TFF SQRT(MU)  FROM PDL+0, NEGATIVE.
054092,000533: 27,3653           77650                           GOTO                                           
054093,000534: 27,3654           57646                                    ENDTFF                                
054094,000535: 
054095,000536: 27,3655           77745        MAXTFF1            DLOAD                                          #  RESET PDL
054096,000537: 27,3656           43545        MAXTFF             DLOAD    RVQ                                   
054097,000538: 27,3657           17776                                    NEARONE                               
054098,000539: 
054099,000540:                                                                                                  #  TIME OF FLIGHT ELLIPSE WHEN DEL (ECCENTRIC ANOM) GEQ 90 AND LEQ -90.
054100,000541: 
054101,000542:                                                                                                  #  NUM FROM TFFX.  E: (-16) OR (-29)
054102,000543:                                                                                                  #                  M: (-15) OR (-27)
054103,000544: 27,3660           77712        TFFELL             SL2                                            #  NUM  E:(-14) OR (-27)  M:(-13) OR (-25)
054104,000545: 27,3661           41465                           BDDV     PUSH                                  #  TEMP SAVE D/N IN PDL+0
054105,000546:                                                                                                  #  DEN FROM PDL+0 E:(-3)/( 16) M:(-3)/(-15)
054106,000547:                                                                                                  #  N/D TO PDL+0  E: (11)  M: (10)
054107,000548: 27,3662           45345        TFFEL1             DLOAD    DSU                                   #  (ENTER WITH D/N=0 IN PDL+0)
054108,000549: 27,3663           00045                                    TFFTEM                                #  Q2  E: (-16)  M: (-15)
054109,000550: 27,3664           00017                                    TFFQ1                                 #  Q1  E: (-16)  M: (-15)
054110,000551: 27,3665           14013                           STODL    TFFDELQ                               #  Q2-Q1  E: (-16)  M: (-15)
054111,000552:                                                                                                  #  D/N FROM PDL+0
054112,000553: 27,3666           77626                           STADR                                          
054113,000554: 27,3667           77732                           STORE    TFFTEM                                #  D/N  E: (11)  M: (10)
054114,000555: 27,3670           53605                           DMP      SL*                                   
054115,000556: 27,3671           00027                                    TFF1/ALF                              #  1/ALFA E: (-22-2NA)  M: (-20-2NA)
054116,000557: 27,3672           57576                                    0,2                                   #  1/ALFA Z  E: (-11-NA)  M: (-10-NA)
054117,000558: 27,3673           41206                           PUSH     DMP                                   #  TO PDL+0
054118,000559: 27,3674           00045                                    TFFTEM                                #  1/Z  E: (11)  M: (10)
054119,000560: 27,3675           41057                           SL*      BOVB                                  
054120,000561: 27,3676           57576                                    0,2                                   #  X2= -NA
054121,000562: 27,3677           21713                                    SIGNMPAC                              #  IN CASE X= 1.0, CONTINUE
054122,000563: 27,3700           00043                           STORE    TFFX                                  #  X=1/ALFA ZSQ
054123,000564: 27,3701           41234                           RTB      DMP                                   
054124,000565: 27,3702           57742                                    T(X)                                  #  POLY
054125,000566: 27,3703           00043                                    TFFX                                  
054126,000567: 27,3704           45242                           SR3      DSU                                   
054127,000568: 27,3705           17770                                    DP2(-3)                               
054128,000569: 27,3706           41405                           DMP      PUSH                                  #  2(X T(X)-1) /Z ALFA  E: (-15-NA)
054129,000570:                                                                                                  #                       M: (-14-NA)
054130,000571:                                                                                                  #  1/ALFA Z FROM PDL+0  E: (-11-NA)
054131,000572:                                                                                                  #                       M: (-10-NA)
054132,000573: 27,3707           41345                           DLOAD    DMP                                   #  GET SIGN FOR SDELF
054133,000574: 27,3710           00045                                    TFFTEM                                #  1/Z  E: (11)  M: (10)
054134,000575: 27,3711           00015                                    RMAG1                                 #  E: (-29)  M: (-27)
054135,000576: 27,3712           43312                           SL2      DAD                                   
054136,000577: 27,3713           00017                                    TFFQ1                                 #  Q1  E: (-16)  M: (-15)
054137,000578: 27,3714           14045                           STODL    TFFTEM                                #  (Q1+R 1/Z)  =SGN OF SDELF E:(-16) M:(-15
054138,000579: 27,3715           00035                                    TFFNP                                 #  LC P E: (-38+2NR) M: (-36+2NR)
054139,000580: 27,3716           53605                           DMP      SL*                                   #  CALC FOR ARG FOR TFF/TRIG.

Page 1270

054141,000582: 27,3717           00027                                    TFF1/ALF                              #  1/ALFA   E:(-22-2NA)  M:(-20-2NA)
054142,000583: 27,3720           57575                                    1,2                                   #  X2=-NA
054143,000584: 27,3721           53765                           SIGN     SL*                                   
054144,000585: 27,3722           00045                                    TFFTEM                                #  AFFIX SIGN FOR SDELF
054145,000586: 27,3723           57576                                    0,2                                   
054146,000587: 27,3724           14045                           STODL    TFFTEM                                #  P/ALFA  E:(-59+2NR)  M:(-55+2NR)
054147,000588:                                                                                                  #  (ARG FOR USE IN TFF/TRIG)
054148,000589: 27,3725           00027                                    TFF1/ALF                              #  1/ALFA E:(-22-2NA)  M:(-20-2NA)
054149,000590: 27,3726           41366                           SQRT     DMP                                   
054150,000591: 27,3727           17762                                    PI/16                                 #  PI (-4)
054151,000592: 27,3730           77615                           DAD                                            
054152,000593:                                                                                                  #  2(XT(X)-1)/Z ALFA FROM PDL E:(-15-NA)
054153,000594:                                                                                                  #                             M:(-14-NA)
054154,000595: 27,3731           45257                           SL*      DSU                                   
054155,000596: 27,3732           57577                                    0          -1,2                       
054156,000597: 27,3733           00013                                    TFFDELQ                               #  Q2-Q1  E: (-16)  M: (-15)
054157,000598: 27,3734           53605                           DMP      SL*                                   
054158,000599: 27,3735           00027                                    TFF1/ALF                              #  1/ALFA  E:(-22-2NA)  M:(-20-2NA)
054159,000600: 27,3736           57601                                    0          -3,2                       
054160,000601: 27,3737           52057                           SL*      GOTO                                  
054161,000602: 27,3740           57602                                    0          -4,2                       
054162,000603: 27,3741           57646                                    ENDTFF                                #  TFF SQRT(MU) IN MPAC E:(-45) M:(-42)
054163,000604: 

Page 1271

054165,000606:                                                                                                  #  PROGRAM NAME:      T(X)                                                 DATE:    01.17.67
054166,000607:                                                                                                  #  MOD NO:  0                                                              LOG SECTION:    TIME OF FREE FALL
054167,000608:                                                                                                  #  MOD BY:  RR BAIRNSFATHER
054168,000609:                                                                                                  #  FUNCTIONAL DESCRIPTION:      THE POLYNOMIAL T(X) IS USED BY TIME OF FLIGHT SUBROUTINES  CALCTFF AND
054169,000610:                                                                                                  #           CALCTPER TO APPROXIMATE THE SERIES
054170,000611:                                                                                                  #                             2     3
054171,000612:                                                                                                  #                  1/3 -X/5 +X /7 -X /9 ...
054172,000613: 
054173,000614:                                                                                                  #           WHERE  X = ALFA Z Z       IF ALFA Z Z  LEQ 1
054174,000615:                                                                                                  #                  X = 1/(ALFA Z Z )  IF ALFA Z Z   G  1
054175,000616: 
054176,000617:                                                                                                  #           ALSO   X IS NEG FOR HYPERBOLIC ORBITS
054177,000618:                                                                                                  #                  X = 0 FOR PARABOLIC ORBITS
054178,000619:                                                                                                  #                  X IS POSITIVE FOR ELLIPTIC ORBITS
054179,000620:                                                                                                  #           FOR FLIGHT 278, THE POLYNOMIAL  T(X) IS FITTED OVER THE RANGE  (0,+1)  AND HAS A MAXIMUM
054180,000621:                                                                                                  #           DEVIATION FROM THE SERIES OF  2 E-5       (T(X) IS A CHEBYCHEV  TYPE FIT AND WAS OBTAINED USING
054181,000622:                                                                                                  #           MAC PROGRAM AUTCURFIT294RRB  AND IS VALID TO THE SAME TOLERANCE OVER THE RANGE  (-.08,+1). )
054182,000623:                                                                                                  #  CALLING SEQUENCE:  RTB
054183,000624:                                                                                                  #                            T(X)
054184,000625:                                                                                                  #           C(MPAC) = X
054185,000626: 
054186,000627:                                                                                                  #  SUBROUTINES CALLED:  NONE
054187,000628:                                                                                                  #  NORMAL EXIT MODE:    TC   DANZIG
054188,000629:                                                                                                  #  ALARMS:  NONE
054189,000630:                                                                                                  #  OUTPUT:  C(MPAC) = T(X)
054190,000631:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
054191,000632:                                                                                                  #           C(MPAC)  =  X
054192,000633:                                                                                                  #  DEBRIS:  NONE
054193,000634: 
054194,000635: 27,3742           07225        T(X)               TC       POLY                                  
054195,000636: 27,3743           00004                           DEC      4          B-14                       #  N-1
054196,000637: 27,3744           12525 12525                     2DEC     3.333333333 E-1                        
054197,000638: 
054198,000639: 27,3746           71463 57703                     2DEC*    -1.999819135 E-1*                       
054199,000640: 
054200,000641: 27,3750           04423 17645                     2DEC*    1.418148467 E-1*                       
054201,000642: 
054202,000643: 27,3752           74604 43667                     2DEC*    -1.01310997 E-1*                       
054203,000644: 
054204,000645: 27,3754           01626 37256                     2DEC*    5.609004986 E-2*                       
054205,000646: 
054206,000647: 27,3756           77404 52071                     2DEC*    -1.536156925 E-2*                       
054207,000648: 
054208,000649: 27,3760           06064        ENDT(X)            TC       DANZIG                                
054209,000650: 
054210,000651: 27,3761  27,3760               TCDANZIG           =        ENDT(X)                               
054211,000652: 

Page 1272

054213,000654:                                                                                                  #  TFF CONSTANTS
054214,000655: 
054215,000656: 32,3641                                           BANK     32                                    
054216,000657: 
054217,000658: 27,2000                                           SETLOC   TOF-FF1                               
054218,000659: 27,2000                                           BANK                                           
054219,000660: 
054220,000661:                                                                                                  #                             NOTE _  NOTE _ ADJUSTED MUE FOR NEAR EARTH TRAJ.
054221,000662: 
054222,000663:                                                                                                  # MUE            =       3.990 815 471 E10  M CUBE/CS SQ
054223,000664:                                                                                                  # RTMUE          =       1.997702549 E5 B-18*     MODIFIED EARTH MU
054224,000665: 
054225,000666:                                                                                                  #                             NOTE _  NOTE _ ADJUSTED MUE FOR NEAR EARTH TRAJ.
054226,000667: 
054227,000668:                                                                                                  # MUM            =       4.902 778  E8     M CUBE /CS SQ
054228,000669: 
054229,000670:                                                                                                  # RTMUM          2DEC*   2.21422176 E4 B-18*
054230,000671: 27,3761           06220 37553  PI/16              2DEC     3.141592653 B-4                        
054231,000672: 
054232,000673: 27,3763           37777 37700  LIM(-22)           2OCT     3777737700                            #  1.0 -B(-22)
054233,000674: 
054234,000675: 27,3765           00000 00100  DP(-22)            2OCT     0000000100                            #  B(-22)
054235,000676: 
054236,000677: 27,3767           04000 00000  DP2(-3)            2DEC     1          B-3                        
054237,000678: 
054238,000679: 27,3771           02000 00000  DP2(-4)            2DEC     1          B-4                        #  1/16
054239,000680: 
054240,000681:                                                                                                  # RPAD1          2DEC    6373338 B-29      M  (-29)   =20 909 901.57 FT
054241,000682: 
054242,000683: 27,3773  23,2333               RPAD1              =        RPAD                                  
054243,000684: 
054244,000685: 27,3773           00305 11205  R300K              2DEC     6464778    B-29                       #  (-29) M
054245,000686: 
054246,000687: 27,3775           37777 37777  NEARONE            2DEC     .999999999                            
054247,000688: 
054248,000689: 27,3777  23,2517               TFFZEROS           EQUALS   HI6ZEROS                              
054249,000690: 27,3777  23,2507               TFF1/4             EQUALS   HIDP1/4                               
054250,000691: 

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