Source Code

These source-code files were obtained by digitally photographing a Solarium 55 (Apollo 6) program listing from the American Computer Museum in Bozeman, Montana. Photography was by Ron Burkey, with assistance from museum curator George Keremedjiev and Montana State University curator Kim Scott. The listing originally belonged to Eldon C. Hall, who donated it to the museum. Volunteers then manually typed in the source code or else modified similar pre-existing Colossus 249 (Apollo 9) source files to incorporate changes, although this transcription was principally done by Jim Lawton and corrected by Ron Burkey. Notations on the program listing read, in part:

        YUL SYSTEM FOR AGC4: REVISION 0 OF PROGRAM SOLRUM55
	BY NASA 1021108-021                    DEC. 4, 1966
Note that the date is the date of the printout, not the date of the program revision.

Due to statements by Jay Sampson, the original contractor from AC Electronics who created Solarium 54 (Apollo 4) from the earlier Corona (AS-202 mission) program, it is believed that Solarium 54 and Solarium 55 (Apollo 6) are actually identical programs. The change in numbering, from 54 to 55, is believed to be for some administrative purpose. Thus, it is believed that the source-code represented here is equally appropriate for both Apollo 4 and Apollo 6 missions.

027016,000002:                                                                                                  ## Copyright:   Public domain.
027017,000003:                                                                                                  ## Filename:    TIME_OF_FREE-FALL_CALCULATIONS.agc
027018,000004:                                                                                                  ## Purpose:     Part of the source code for Solarium build 55. This
027019,000005:                                                                                                  ##              is for the Command Module's (CM) Apollo Guidance
027020,000006:                                                                                                  ##              Computer (AGC), for Apollo 6.
027021,000007:                                                                                                  ## Assembler:   yaYUL --block1
027022,000008:                                                                                                  ## Contact:     Jim Lawton <jim DOT lawton AT gmail DOT com>
027023,000009:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
027024,000010:                                                                                                  ## Page Scans:  www.ibiblio.org/apollo/ScansForConversion/Solarium055/
027025,000011:                                                                                                  ## Mod history: 2009-10-04 JL   Created.
027026,000012:                                                                                                  ##              2016-08-20 RSB  Typos.
027027,000013:                                                                                                  ##              2016-12-28 RSB  Proofed comment text using octopus/ProoferComments,
027028,000014:                                                                                                  ##                              and fixed errors found.
027029,000015: 

Page 682 (empty page)

027032,000018: 

Page 683

027034,000020: 
027035,000021:                                                                                                  #  CONIC TIME OF FLIGHT CALCULATION.   PROGRAM CALCULATES THE FREE-FALL TIME OF FLIGHT FROM PRESENT POSITION RN
027036,000022:                                                                                                  #  AND VELOCITY VN TO A RADIUS SPECIFIED BY RTERM, CORRESPONDING TO 280K OR400K FEET ALTITUDE.
027037,000023:                                                                                                  #  THE POSITION  RN MAY BE ON EITHER SIDE OF THE ELLIPSE, BUT  RTERM  IS   CONSIDERED ON THE INBOUND SIDE.
027038,000024: 
027039,000025:                                                                                                  #  THE EQUATION IS       TFF = ( DEL E - (Q2-Q1) ) / (ALFA SQRT( ALFA MUE) )
027040,000026: 
027041,000027:                                                                                                  #  AND                   Q2 = -SQRT( RTERM ALFA (2-RTERM ALFA) -LCP ALFA )       (INBOUND SIDE)          LEQ +/-  LCE
027042,000028:                                                                                                  #                             -  -
027043,000029:                                                                                                  #                        Q1 = RN.VN  SQRT(ALFA/MUE)                                                      LEQ +/-  LCE
027044,000030: 
027045,000031:                                                                                                  #  PROGRAM REQUIREMENTS ON ENTERING.
027046,000032:                                                                                                  #        1.  PUSHDOWN LIST IS ZEROED
027047,000033:                                                                                                  #        2.  INPUTS: POSITION  RN 2(-24) M,  VELOCITY  VN  2(-7)  M/CS
027048,000034: 
027049,000035:                                                                                                  #  THE PROGRAM EXITS WITH ONE OF THE FOLLOWING IN TFF.
027050,000036:                                                                                                  #                        A. TFF = FLIGHT TIME.  NORMAL CASE FOR POSITIVE FLIGHT  TIME LESS THAN ONE ORBITAL PERIOD.
027051,000037:                                                                                                  #                        B. TFF=+0.  THIS INDICATES THAT THE TRAJECTORY HAS GONE PAST RTERM AND THE PRESENT ALTITUDE IS
027052,000038:                                                                                                  #                           LESS THAN THE SPECIFIED TERMINAL ALTITUDE.
027053,000039:                                                                                                  #                        C. TFF = POSMAX.  THIS INDICATES THAT THE ELLIPTICAL CONIC FROM THE PRESENT POSITION WILL NOT
027054,000040:                                                                                                  #                           RETURN TO THE SPECIFIED ALTITUDE.
027055,000041:                                                                                                  #  THE FOLLOWING QUANTITIES REMAIN IN THE PUSHLIST
027056,000042:                                                                                                  #        ALFA                    2(+21) IN PDL 10D
027057,000043:                                                                                                  #        (2-RTERM ALFA)          2(-3)  IN PDL 6
027058,000044:                                                                                                  #        RTERM ALFA              2(-3)  IN PDL 4
027059,000045:                                                                                                  #        LCP ALFA                2(-6)  IN PDL 2
027060,000046: 
027061,000047:                                                                                                  #  THUS THE CALLING PROGRAM CAN CALCULATE TERMINAL VELOCITY, VTERM, AND COS GAMMA OR SIN GAMMA USING RESIDUE FROM
027062,000048:                                                                                                  #  CALCTFF.
027063,000049: 
027064,000050:                                                                                                  #             2
027065,000051:                                                                                                  #        VTERM  (RTERM/MUE) = (2-RTERM ALFA)
027066,000052: 
027067,000053:                                                                                                  #           2
027068,000054:                                                                                                  #        SIN GAMMA = 1 - (LCP ALFA / RTERM ALFA(2-RTERM ALFA)  )
027069,000055: 
027070,000056:                                                                                                  #           2
027071,000057:                                                                                                  #        COS GAMMA = LCP ALFA /(RTERM ALFA (2-RTERM ALFA)  )
027072,000058: 
027073,000059:                                                                                                  #  QUANTITIES ARE NORMALIZED BY LCE TO OBTAIN BEST ACCURACY IN COMPUTING, ESPACIALLY FOR SPARCTAN.  PROGRAM
027074,000060:                                                                                                  #  ACCEPTS LCE  LEQ 1.0.  THE SMALLEST LCE WHICH IS  NORMALIZED IS 2(-4),  ALTHOUGH THIS MAY BE EXTENDED IF
027075,000061:                                                                                                  #  DESIRED.  (LCE  L  2(-3) ALL HAVE SAME SCALING)
027076,000062: 

Page 684

027078,000064: 
027079,000065:                                                                                                  #  TEMPORARY ERASABLE ASSIGNMENTS FOR TFF COMPUTATIONS                   PUSHLIST 00 - 19D, X1
027080,000066: 
027081,000067: 26,7711                        RTERM              =        14D                                   
027082,000068: 
027083,000069: 31,6000                                           BANK     31                                    
027084,000070: 31,6000           77576        CALCTFF            EXIT     0                                     
027085,000071: 
027086,000072: 31,6001           11723                           CCS      REFSWTCH                              #  SEE IF GROUND DESIRES 280K FF REFERENCE
027087,000073: 31,6002           06006                           TC       +4                                    #  NO
027088,000074: 31,6003           06006                           TC       +3                                    
027089,000075: 31,6004           35501                           CAF      ZERO                                  
027090,000076: 31,6005           06012                           TC       +5                                    
027091,000077: 
027092,000078: 31,6006           36320                           CAF      NOMBURN                               #  TEST IF ANY NOMINAL BURN (SPS1,SPS2,
027093,000079: 31,6007           70647                           MASK     FLAGWRD2                              #  SPS3, SPS4, ARRST) FLAG SET
027094,000080: 31,6010           10000                           CCS      A                                     
027095,000081: 31,6011           45503                           CS       TWO                                   
027096,000082: 31,6012           20067                           INDEX    FIXLOC                                #  X1=-2 FOR 400K FT. AND 0 FOR 280K FT.
027097,000083: 31,6013           50046                           TS       X1                                    
027098,000084: 31,6014           04000                           TC       INTPRET                               
027099,000085: 31,6015           44175                           DMOVE*   1                                     
027100,000086: 31,6016           76576                           RTB                                            
027101,000087: 31,6017           33607                                    R280K,1                               
027102,000088: 31,6020           20265                                    FRESHPD                               
027103,000089: 31,6021           32017                           STORE    RTERM                                 #   2(-24)
027104,000090: 
027105,000091: 31,6022           67174                           VSQ      2                                     
027106,000092: 31,6023           64722                           DMP      DMP                                   
027107,000093: 31,6024           63726                           TSLT     BDSU                                  
027108,000094: 31,6025           00774                                    VN                                    #  VEL  2 (-7)
027109,000095: 31,6026           22307                                    1/MUE                                 #  2 (+35)
027110,000096: 31,6027           01024                                    RMAG                                  #  2(-25)
027111,000097: 31,6030           00002                                    1                                     
027112,000098: 31,6031           06304                                    DP1/4                                 #  RMAG ALFA   2 (-3)            TO PDL 0,1
027113,000099: 
027114,000100: 31,6032           47575                           NOLOD    1                                     
027115,000101: 31,6033           56712                           TSRT     DDV                                   
027116,000102: 31,6034           00002                                    1                                     
027117,000103: 31,6035           01024                                    RMAG                                  
027118,000104: 31,6036           32013                           STORE    10D                                   
027119,000105: 
027120,000106: 31,6037           47575                           NOLOD    1                                     
027121,000107: 31,6040           73776                           BMN                                            
027122,000108: 31,6041           22465                                    HIECC                                 
027123,000109: 
027124,000110: 31,6042           64774                           DMP      2                                     
027125,000111: 31,6043           53122                           SQRT     DMP                                   
027126,000112: 31,6044           57706                           TSLC     BDDV                                  
027127,000113: 31,6045           00013                                    10D                                   #  ALFA  2(+21)
027128,000114: 31,6046           22311                                    MUE(37)                               

Page 685

027130,000116: 31,6047           00013                                    10D                                   #  ALFA
027131,000117: 31,6050           00024                                    19D                                   #  -N. SAVE FOR GETTFF1
027132,000118: 31,6051           22313                                    DP2PI/16                              
027133,000119: 31,6052           32015                           STORE    12D                                   #  ORB PERIOD  2PI/ALFA SQRT(ALFA MUE)
027134,000120:                                                                                                  #  2(-17-N)
027135,000121: 31,6053           41773                           VXV      3                                     
027136,000122: 31,6054           44733                           VSLT     VSQ                                   
027137,000123: 31,6055           64722                           DMP      DMP                                   
027138,000124: 31,6056           76576                           RTB                                            
027139,000125: 31,6057           00766                                    RN                                    
027140,000126: 31,6060           00774                                    VN                                    #  MTRS/CS   2(-7)
027141,000127: 31,6061           00002                                    1                                     
027142,000128: 31,6062           22307                                    1/MUE                                 #  2(+35)
027143,000129: 31,6063           00013                                    10D                                   #  ALFA  2(+21)
027144,000130: 31,6064           22255                                    NORMBYE                               #  GET NORM COUNT BASED ON LCE SQ.
027145,000131:                                                                                                  #  LCP ALFA  2(-6)               TO PDL 2,3
027146,000132: 
027147,000133: 31,6065           47575                           NOLOD    1                                     
027148,000134: 31,6066           66616                           DSU      BPL                                   
027149,000135: 31,6067           15710                                    DP.36                                 
027150,000136: 31,6070           22077                                    LOECC                                 
027151,000137: 
027152,000138: 31,6071           66775                           DSU      1                                     
027153,000139: 31,6072           73776                           BMN                                            
027154,000140: 31,6073           00013                                    10D                                   
027155,000141: 31,6074           22322                                    ALFALIM                               
027156,000142: 31,6075           22465                                    HIECC                                 
027157,000143: 
027158,000144: 31,6076           64776        LOECC              DMP      0                                     
027159,000145: 31,6077           00017                                    RTERM                                 #  2(-24)
027160,000146: 31,6100           00013                                    10D                                   #  ALFA  2(+21)
027161,000147:                                                                                                  #  RTERM ALFA  2(-3)             TO PDL 4,5
027162,000148: 
027163,000149: 31,6101           66776                           DSU      0                                     
027164,000150: 31,6102           06304                                    DP1/4                                 
027165,000151: 31,6103           00005                                    4                                     #  RTERM ALFA  2(-3)
027166,000152:                                                                                                  #  (2-RTERM ALFA)  2(-3)         TO PDL 6,7
027167,000153: 
027168,000154: 31,6104           64775                           DMP      1                                     
027169,000155: 31,6105           53176                           SQRT                                           
027170,000156: 31,6106           00013                                    10D                                   #  ALFA  2(+21)
027171,000157: 31,6107           22307                                    1/MUE                                 #  2(+35)                        TO PDL 8,9
027172,000158: 
027173,000159: 31,6110           42774                           DOT      2                                     
027174,000160: 31,6111           63722                           TSLT     DMP                                   
027175,000161: 31,6112           76576                           RTB                                            
027176,000162: 31,6113           00766                                    RN                                    
027177,000163: 31,6114           00774                                    VN                                    #  2(-7)
027178,000164: 31,6115           00002                                    1                                     
027179,000165: 31,6116           77777                                    -                                     #  LEAVE Q1  2(-3) IN MPAC

Page 686

027181,000167: 31,6117           22143                                    ARGQ1                                 #  SAVE  MPAC FOR GONE PAST TEST. , NORMLZE
027182,000168: 31,6120           32011                           STORE    8D                                    #  Q1  (OR Q1/2 OR 2Q1 OR 4Q1)
027183,000169: 
027184,000170: 31,6121           64774                           DMP      2                                     #   CALCULATE Q2
027185,000171: 31,6122           66771                           DSU      RTB                                   
027186,000172: 31,6123           70776                           DAD                                            
027187,000173: 31,6124           77777                                    -                                     #  (2-RTERM ALFA) 2(-3) FROM PDL 6,7
027188,000174: 31,6125           77777                                    -                                     #  RTERM ALFA 2(-3) FROM PDL 4,5
027189,000175: 31,6126           77777                                    -                                     #  LCP ALFA 2(-6) FROM PDL 2,3
027190,000176: 31,6127           22155                                    ARGQ2                                 #  TEST SGN, TAKE ROOT  (RT DOT NEG)
027191,000177:                                                                                                  #  RETURN -Q2 (OR -Q2/2 OR -2Q2 OR -4Q2)
027192,000178: 31,6130           00011                                    8D                                    #  Q1  (AT SIMILAR SCALE)
027193,000179: 31,6131           32011                           STORE    8D                                    #  Q1-Q2  ( OR /2 OR2 OR4)
027194,000180:                                                                                                  #  LEQ +/- 2LCE  (OR 1 OR 4 OR 8)
027195,000181: 
027196,000182: 31,6132           66775                           DSU      1                                     
027197,000183: 31,6133           76522                           RTB      DMP                                   
027198,000184: 31,6134           00007                                    6                                     #  2-RTERM ALFA 2(-3)
027199,000185: 31,6135           77777                                    -                                     #  2-RTERM ALFA-RMAG ALFA  2(-3) IN MPAC
027200,000186: 31,6136           22213                                    GETTFF                                #  C(MPAC) = DEN  2(-3)
027201,000187: 31,6137           00015                                    12D                                   #  ORB PERIOD    2(-17-N)
027202,000188: 31,6140           33457                           STORE    TFF                                   
027203,000189: 31,6141           40576                           ITCQ     0                                     
027204,000190: 31,6142           20067        ARGQ1              INDEX    FIXLOC                                
027205,000191: 31,6143           20020                           INDEX    16D                                   #  COUNT BY ONES
027206,000192: 31,6144           34513                           CAF      BIT4                                  #  EFFECTIVE SH L 3  ( 2 OR 4 OR 5)
027207,000193: 31,6145           05416                           TC       SHORTMP                               
027208,000194: 31,6146           30117                           XCH      MPAC       +2                         #  MOVE UP
027209,000195: 31,6147           30116                           XCH      MPAC       +1                         
027210,000196: 31,6150           50115                           TS       MPAC                                  #  MPAC IS L .5 AS REQD BY TEST LATER.
027211,000197: 31,6151           20067                           INDEX    FIXLOC                                
027212,000198: 31,6152           50022                           TS       18D                                   #  SAVE FOR GONE PAST TEST.
027213,000199: 31,6153           04024                           TC       DANZIG                                
027214,000200: 
027215,000201: 31,6154           20067        ARGQ2              INDEX    FIXLOC                                
027216,000202: 31,6155           20021                           INDEX    17D                                   #  SH L BY 2,S
027217,000203: 31,6156           34510                           CAF      BIT7                                  #  DO EFFECTIVE SHL 6    (4 OR 8 OR 10)
027218,000204: 31,6157           05416                           TC       SHORTMP                               #  TP ENTRY , C(MPAC+2) VALID.
027219,000205: 31,6160           35501                           CAF      ZERO                                  
027220,000206: 31,6161           30117                           XCH      MPAC       +2                         
027221,000207: 31,6162           30116                           XCH      MPAC       +1                         
027222,000208: 31,6163           50115                           TS       MPAC                                  
027223,000209: 
027224,000210: 31,6164           10115                           CCS      MPAC                                  
027225,000211: 31,6165           06177                           TC       Q2ROOT                                
027226,000212: 31,6166           06170                           TC       +2                                    
027227,000213: 31,6167           06202                           TC       NEGQ2                                 #  NO FREEFALL CONIC TO RTERM FROM HERE.
027228,000214: 
027229,000215: 31,6170           10116                           CCS      MPAC       +1                         #  CK LO WORD. IF NEG, ASSUME ROUNDOFF.
027230,000216: 31,6171           06177                           TC       Q2ROOT                                

Page 687

027232,000218: 31,6172           04024                           TC       DANZIG                                
027233,000219: 31,6173           35501        NOROOT             CAF      ZERO                                  #  NEG ARG FROM ROUNDOFF. SET =0.
027234,000220: 31,6174           50115                           TS       MPAC                                  
027235,000221: 31,6175           50116                           TS       MPAC       +1                         
027236,000222: 31,6176           04024                           TC       DANZIG                                
027237,000223: 
027238,000224: 31,6177           05654        Q2ROOT             TC       BANKCALL                              #  GO TAKE DP SQRT
027239,000225: 31,6200           07322                           CADR     SQRT3                                 #  C(MPAC +2) =0
027240,000226: 31,6201           04024                           TC       DANZIG                                
027241,000227: 
027242,000228: 31,6202           34476        NEGQ2              CAF      POSMAX                                #  THIS WILL LEAVE PUSHLOC AT PDL2
027243,000229: 31,6203           51456                           TS       TFF                                   
027244,000230: 31,6204           51457                           TS       TFF        +1                         
027245,000231: 31,6205           40067                           CS       FIXLOC                                #  BUT RESET IT.
027246,000232: 31,6206           40000                           COM                                            
027247,000233: 31,6207           50123                           TS       PUSHLOC                               
027248,000234: 
027249,000235: 31,6210           04000                           TC       INTPRET                               
027250,000236: 
027251,000237: 31,6211           40576                           ITCQ     0                                     #  AND RETURN TO CALLING PROGRAM.
027252,000238: 
027253,000239:                                                                                                  #  ENTER WITH (2-RTERM ALFA-RMAG ALFA) 2(-3) IN MPAC,+1. Q1-Q2 IN PDL 8,9
027254,000240: 
027255,000241: 31,6212           20067        GETTFF             INDEX    FIXLOC                                
027256,000242: 31,6213           20020                           INDEX    16D                                   #  COUNT BY 1,5
027257,000243: 31,6214           34513                           CAF      BIT4                                  #  EFFECTIVE SL 3  (2 OR 4 OR 5 )
027258,000244: 31,6215           05416                           TC       SHORTMP                               #  C(MPAC +1,+2) = DEN    ON RETURN.
027259,000245: 31,6216           20067                           INDEX    FIXLOC                                #  (UNSCALD NUM AND DEN LEQ +/- 2 LCE)
027260,000246: 31,6217           40010                           CS       8D                                    
027261,000247: 31,6220           30116                           XCH      MPAC       +1                         #  SAVE Q2-Q1,  GET DEN
027262,000248: 31,6221           50115                           TS       MPAC                                  #  AND SAVE.
027263,000249: 31,6222           20067                           INDEX    FIXLOC                                
027264,000250: 31,6223           20020                           INDEX    16D                                   #  COUNT BY 1,5
027265,000251: 31,6224           36316                           CAF      -1/2PI                                
027266,000252: 31,6225           25777                           EXTEND                                         
027267,000253: 31,6226           40116                           MP       MPAC       +1                         
027268,000254: 31,6227           50117                           TS       MPAC       +2                         #  -(Q2-Q1) /2PI    SAVED
027269,000255: 
027270,000256: 31,6230           06323                           TC       SPARCTAN                              #  NUM=C(MPAC+1),DEN=C(MPAC)
027271,000257:                                                                                                  #  RETURN WITH DEL ECC. ANOM/2PI IN A
027272,000258:                                                                                                  #  RANGE (0,1)
027273,000259: 31,6231           60117                           AD       MPAC       +2                         
027274,000260: 31,6232           30115                           XCH      MPAC                                  #  TFF NORM=(DEL E:(Q2:Q1))/2PI
027275,000261:                                                                                                  #  FOLLOWING TEST VALID WHEN SPTEM3 L .5
027276,000262: 31,6233           20067                           INDEX    FIXLOC                                
027277,000263: 31,6234           30022                           XCH      18D                                   #  IF BOTH SGN Q1 AND SGN ATAN ARE
027278,000264: 31,6235           66237                           AD       +2                                    #  NEG, THEN SET TFF, +1  =+0.  (-3/4+1 )
027279,000265: 31,6236           60072                           AD       SGNATAN                               #  LEFT BY SPARCTAN
027280,000266: 31,6237           50000                           TS       A                                     #  (=50K =-3/4 +1 FOR OVFL TEST) 
027281,000267: 31,6240           06243                           TC       GETTFF3                               #  OK, GO ON

Page 688

027283,000269: 31,6241           35501                           CAF      ZERO                                  
027284,000270: 31,6242           06203                           TC       NEGQ2      +1                         #  GONE PAST. SET TFF=0.
027285,000271: 
027286,000272: 31,6243           20067        GETTFF3            INDEX    FIXLOC                                
027287,000273: 31,6244           20023                           INDEX    19D                                   #  -N.  BIT4 BELOW VALID FOR N LEQ 10D.
027288,000274: 31,6245           34513                           CAF      BIT4                                  #  SCALE FACTOR,  2(-11+N)
027289,000275: 31,6246           25777                           EXTEND                                         
027290,000276: 31,6247           40115                           MP       MPAC                                  
027291,000277: 31,6250           50115                           TS       MPAC                                  
027292,000278: 31,6251           30003                           XCH      LP                                    
027293,000279: 31,6252           50116                           TS       MPAC       +1                         #  NOW READY TO MULT BY ORB PERIOD
027294,000280: 31,6253           04024                           TC       DANZIG                                
027295,000281: 
027296,000282:                                                                                                  #  TO IMPROVE PRECISION OF SPARCTAN AT SMALLER LCE, COME HERE TO GET NORMALIZATION FACTOR
027297,000283:                                                                                                  #  BASED ON SIZE OF LCE SQ.  SHIFT BY 2,S. SCALING RESULTING FROM BELOW YIELDS AT LEAST ONE LEAD ZERO IN
027298,000284:                                                                                                  #  NUM AND DEN USED IN SPARCTAN.
027299,000285: 
027300,000286: 31,6254           36303        NORMBYE            CAF      OCT37440                              #  BRACKET SIZE BY OVFL TESTS
027301,000287: 31,6255           60115                           AD       MPAC                                  #  C(MPAC) = (1-LCE SQ)  2(-6)
027302,000288: 31,6256           50000                           TS       A                                     
027303,000289: 31,6257           06275                           TC       ENORM0                                #  HERE IF LCE GEQ 2(-1)
027304,000290: 31,6260           66304                           AD       OCTNEG30                              #  (EFFECTIVE CONST  37410)
027305,000291: 31,6261           50000                           TS       A                                     
027306,000292: 31,6262           06277                           TC       ENORM1                                #  HERE IF LCE GEQ 2(-2)
027307,000293: 31,6263           66305                           AD       OCTNEG6                               #  (EFFECTIVE CONST  37402)
027308,000294: 31,6264           50000                           TS       A                                     
027309,000295: 31,6265           06301                           TC       ENORM2                                #  HERE IF LCE GEQ 2(-3)
027310,000296: 31,6266           44515                           CS       BIT2                                  #  HERE IF LCE  L  2(-3)
027311,000297: 31,6267           20067        ENORM3             INDEX    FIXLOC                                
027312,000298: 31,6270           50020                           TS       16D                                   #  COUNT FOR SL BY 1,S ALSO NEEDED
027313,000299: 31,6271           60000                           AD       A                                     
027314,000300: 31,6272           20067                           INDEX    FIXLOC                                
027315,000301: 31,6273           50021                           TS       17D                                   #  COUNT FOR SL BY 2,S.
027316,000302: 31,6274           04024                           TC       DANZIG                                
027317,000303: 
027318,000304: 31,6275           34516        ENORM0             CAF      BIT1                                  
027319,000305: 31,6276           06267                           TC       ENORM3                                
027320,000306: 31,6277           35501        ENORM1             CAF      ZERO                                  
027321,000307: 31,6300           06267                           TC       ENORM3                                
027322,000308: 31,6301           44516        ENORM2             CS       BIT1                                  
027323,000309: 31,6302           06267                           TC       ENORM3                                
027324,000310: 
027325,000311: 31,6303           37440        OCT37440           OCT      37440                                 
027326,000312: 31,6304           77747        OCTNEG30           OCT      -00030                                
027327,000313: 31,6305           77771        OCTNEG6            OCT      -00006                                
027328,000314: 
027329,000315: 31,6306           33453 02065  1/MUE              2DEC*    .250876044 E-10       B35*            #  CS SQ/M CUBE
027330,000316: 31,6310           11217 27040  MUE(37)            2DEC*    3.986032233 E10        B-37*           #  CS SQ/M CUBE

Page 689

027332,000318: 31,6312           14441 37327  DP2PI/16           2DEC     .39269909                             
027333,000319: 31,6314           76563                           DEC      -.15915494 B-2                        
027334,000320: 31,6315           75347                           DEC      -.15915494 B-1                        
027335,000321: 31,6316           72717        -1/2PI             DEC      -.15915494                            
027336,000322: 31,6317           65640                           DEC      -.15915494 B1                         
027337,000323: 31,6320           00171        NOMBURN            OCT      00171                                 
027338,000324: 31,6321           04316 25750  ALFALIM            2DEC     6.562      E-8        B21             
027339,000325: 

Page 690

027341,000327: 
027342,000328:                                                                                                  #  INVERSE TANGENT.     THE SINGLE PRECISION ARCTAN IS BASED ON A HASTINGS  3 TERM POLYNOMIAL.  THE PROGRAM
027343,000329:                                                                                                  #  ACCEPTS  NUM  AND  DEN  , WHERE  TAN(THETA) = NUM/DEN, AND GIVES  THETA/PI  IN THE RANGE (0,1)
027344,000330:                                                                                                  #  ENTER WITH C(MPAC +1) = NUM, AND C(MPAC) = DEN.   NOTE THAT FOR CALCTFF, THETA = DEL E/2.
027345,000331:                                                                                                  #  SPARCTAN USES 3 SP TEMPORARIES:  SPTEMQ, SPTEM1, SPTEM2
027346,000332: 
027347,000333:                                                                                                  #  TEMPORARY ERASABLE ASSIGNMENTS FOR SPARCTAN ROUTINE
027348,000334: 
027349,000335: 31,6323     0071               SPTEMQ             =        VBUF                                  
027350,000336: 31,6323     0072               SPTEM1             =        VBUF       +1                         
027351,000337: 31,6323     0073               SPTEM2             =        VBUF       +2                         
027352,000338: 31,6323     0071               SPATANQ            EQUALS   SPTEMQ                                
027353,000339: 31,6323     0072               SGNATAN            EQUALS   SPTEM1                                
027354,000340: 
027355,000341: 31,6323           30001        SPARCTAN           XCH      Q                                     
027356,000342: 31,6324           50071                           TS       SPATANQ                               
027357,000343: 
027358,000344: 31,6325           34502                           CAF      BIT13                                 #  1/4 = PI/4
027359,000345: 31,6326           50073                           TS       SPTEM2                                
027360,000346: 31,6327           50072                           TS       SGNATAN                               #  IF NUM=0, THETA=0
027361,000347: 31,6330           10116                           CCS      MPAC       +1                         #  NUM
027362,000348: 31,6331           06341                           TC       TESTDEN                               #  IF DEN =0, THETA=90 DEG SGN(NUM)
027363,000349: 31,6332           06341                           TC       TESTDEN                               #  MUST STILL TEST DEN.
027364,000350: 31,6333           06335                           TC       +2                                    #  INDETERMINATE CASE 0/0 CONSIDERED AS 90D
027365,000351: 31,6334           06340                           TC       TESTDEN    -1                         
027366,000352: 31,6335           40072                           CS       SGNATAN                               
027367,000353: 31,6336           50072                           TS       SGNATAN                               
027368,000354: 31,6337           40116                           CS       MPAC       +1                         
027369,000355: 31,6340           50116                           TS       MPAC       +1                         #  ABVAL OF NUM.
027370,000356: 
027371,000357: 31,6341           10115        TESTDEN            CCS      MPAC                                  #  DEN
027372,000358: 31,6342           06355                           TC       SPATAN1                               
027373,000359: 31,6343           06434                           TC       SPATAN4                               #  90 DEG CASE
027374,000360: 31,6344           06346                           TC       +2                                    
027375,000361: 31,6345           06434                           TC       SPATAN4                               #  90 DEG CASE
027376,000362: 31,6346           40072                           CS       SGNATAN                               
027377,000363: 31,6347           50072                           TS       SGNATAN                               
027378,000364: 31,6350           40115                           CS       MPAC                                  
027379,000365: 31,6351           50115                           TS       MPAC                                  #  ABVAL OF DEN.
027380,000366: 
027381,000367: 31,6352           10116                           CCS      MPAC       +1                         #  EITHER POS OR +0. WAS NUM ZERO
027382,000368: 31,6353           06341                           TC       TESTDEN                               #  NO, GO ON
027383,000369: 31,6354           00071                           TC       SPATANQ                               #  YES, THETA =0      RETURN
027384,000370: 
027385,000371: 31,6355           25777        SPATAN1            EXTEND                                         #  HERE NEGLECT 1 BIT OF CCS. LOST IN MP.
027386,000372: 31,6356           46362                           MP       ITANC0                                #  POLY TRANSITION TEST.
027387,000373: 31,6357           60116                           AD       MPAC       +1                         #  NUM  (PNZ, SO +0 IN CCS IMPOSS)
027388,000374: 31,6360           10000                           CCS      A                                     #  IF NEG, USE Z=N/D FOR POLY.
027389,000375: 31,6361           06367                           TC       SPATAN2                               #  IF POS, USE Z=(N-D)/(N+D) FOR POLY.
027390,000376: 31,6362           67237        ITANC0             DEC      -.2714558                             #  =-(1-K)/(1+K), AND K=.573
027391,000377: 31,6363           35501                           CAF      ZERO                                  #  THIS FORM OF POLY HAS BETTER BEHAVIOR

Page 691

027393,000379: 31,6364           50073                           TS       SPTEM2                                #  NEAR ORIGIN. REPLACE PI/4 BY ZERO.
027394,000380: 31,6365           30116                           XCH      MPAC       +1                         #  SET +0 TO FIT IN WITH CALC BELOW.
027395,000381: 31,6366           06371                           TC       SPATAN3                               
027396,000382: 
027397,000383: 31,6367           40115        SPATAN2            CS       MPAC                                  #  N-D AND N+D WILL NOT OVFL IN AD IF LCE
027398,000384:                                                                                                  #  L 1.0 DUE TO NORMALIZATION BY LCE.
027399,000385: 31,6370           60116                           AD       MPAC       +1                         #  NUM
027400,000386: 31,6371           50021        SPATAN3            TS       SR                                    
027401,000387: 31,6372           30115                           XCH      MPAC                                  
027402,000388: 31,6373           60116                           AD       MPAC       +1                         
027403,000389: 31,6374           50000                           TS       A                                     #  DID IT OVFL..
027404,000390: 31,6375           06401                           TC       SPATAN5                               #  NO, GO DO DV.
027405,000391: 31,6376           30021                           XCH      SR                                    #  YES, SHIFT BOTH NUM AND DEN R1.
027406,000392: 31,6377           30021                           XCH      SR                                    #  (NUM-DEN)/4 IN SR
027407,000393: 31,6400           64522                           AD       HALF                                  #  (NUM+DEN)/2 IN A.
027408,000394: 
027409,000395: 31,6401           50115        SPATAN5            TS       MPAC                                  #  NORMALLY, (NUM+DEN)
027410,000396: 31,6402           30021                           XCH      SR                                    #  NORMALLY, (NUM-DEN) /2
027411,000397: 31,6403           25777                           EXTEND                                         
027412,000398: 31,6404           50115                           DV       MPAC                                  #  NO OVFL PROB.
027413,000399: 31,6405           50115                           TS       MPAC                                  #  Z/2= (NUM-DEN)/2(NUM+DEN)
027414,000400:                                                                                                  #  Z/2 = NUM/2DEN       NEAR ORIGIN
027415,000401: 
027416,000402: 31,6406           25777                           EXTEND                                         
027417,000403: 31,6407           40000                           SQUARE                                         
027418,000404: 31,6410           50116                           TS       MPAC       +1                         #  Z Z/4
027419,000405: 31,6411           25777                           EXTEND                                         
027420,000406: 31,6412           46441                           MP       ITANC7                                
027421,000407: 31,6413           66440                           AD       ITANC5                                
027422,000408: 31,6414           25777                           EXTEND                                         
027423,000409: 31,6415           40116                           MP       MPAC       +1                         
027424,000410: 31,6416           66437                           AD       ITANC3                                
027425,000411: 31,6417           25777                           EXTEND                                         
027426,000412: 31,6420           40116                           MP       MPAC       +1                         
027427,000413: 31,6421           66436                           AD       ITANC1                                
027428,000414: 31,6422           60000                           DOUBLE                                         
027429,000415: 31,6423           25777                           EXTEND                                         
027430,000416: 31,6424           40115                           MP       MPAC                                  
027431,000417: 31,6425           60073                           AD       SPTEM2                                #  EITHER 1/4=PI/4 OR 0
027432,000418: 31,6426           50001                           TS       Q                                     #  C(A)=THETA/PI ,RANGE( 0 ,.5) SEE NOTE
027433,000419: 31,6427           10072                           CCS      SGNATAN                               
027434,000420: 31,6430           30001                           XCH      Q                                     #  AFFIX SGN FOR POLY TO HAVE RANGE (-.5,.5
027435,000421: 31,6431           00071                           TC       SPATANQ                               
027436,000422: 31,6432           40001                           CS       Q                                     
027437,000423: 31,6433           64522                           AD       HALF                                  
027438,000424: 31,6434           64522        SPATAN4            AD       HALF                                  #  90 DEG CASE COME HERE
027439,000425: 31,6435           00071                           TC       SPATANQ                               #  RETURN WITH THETA/  PI IN A. RANGE(0,1)
027440,000426:                                                                                                  #  POLY GIVES THETA/ PI RANGE(-.5,+.5)
027441,000427: 
027442,000428:                                                                                                  #  NOTE *** RETURN TO CALCTFF  WITH  DEL E/2 PI IN A, RANGE (0,1).       SINCE THE OUTPUT OF  SPARCTAN ,

Page 692

027444,000430:                                                                                                  #  IS IN THE RANGE (0,1), THE +/- 90 DEG CASES ARE IDENTICAL.  FURTHER SINCE  FOR  CALCTFF, THE ANGLE THETA/PI
027445,000431:                                                                                                  #  EQUALS DEL E/2 PI,  SPARCTAN  CONSIDERS BOTH 0 DEG AND 180 DEG AS 0 DEG.  SHOULD PROGRAMS OTHER THAN  CALCTFF
027446,000432:                                                                                                  #  DESIRE ARC TANGENTS, THEN  SPARCTAN  CAN BE MADE GENERAL.
027447,000433: 
027448,000434: 31,6436           12133        ITANC1             DEC      .318060008                            #  =C1 /PI
027449,000435: 31,6437           62723        ITANC3             DEC      -.40894149                            #  = 4 C3/PI
027450,000436: 31,6440           27656        ITANC5             DEC      .7449806                              #  = 16 C5/PI
027451,000437: 31,6441           46450        ITANC7             DEC      -.79435682                            #  = 64 C5 /PI                                   74W
027452,000438: 

Page 693

027454,000440: 
027455,000441: 31,6442           73773        HIECC1             BMN      3                                     
027456,000442: 31,6443           71405                           LXC,1    LODON                                 
027457,000443: 31,6444           45070                           DMOVE    TSRT*                                 
027458,000444: 31,6445           76576                           RTB                                            
027459,000445: 31,6446           00017                                    14D                                   
027460,000446: 31,6447           22457                                    TFFMAX                                
027461,000447: 31,6450           00024                                    19D                                   
027462,000448: 31,6451           00015                                    12D                                   
027463,000449: 31,6452           00027                                    11D,1                                 
027464,000450: 31,6453           20265                                    FRESHPD                               
027465,000451: 31,6454           33457                           STORE    TFF                                   
027466,000452: 
027467,000453: 31,6455           40576                           ITCQ     0                                     
027468,000454: 
027469,000455: 31,6456           45175        TFFMAX             DMOVE    1                                     
027470,000456: 31,6457           76576                           RTB                                            
027471,000457: 31,6460           21043                                    NEARONE                               
027472,000458: 31,6461           20265                                    FRESHPD                               
027473,000459: 31,6462           33457                           STORE    TFF                                   
027474,000460: 
027475,000461: 31,6463           40576                           ITCQ     0                                     
027476,000462: 
027477,000463: 31,6464           45175        HIECC              DMOVE    1                                     
027478,000464: 31,6465           76576                           RTB                                            
027479,000465: 31,6466           00013                                    10D                                   
027480,000466: 31,6467           20265                                    FRESHPD                               
027481,000467: 31,6470           32017                           STORE    14D                                   
027482,000468: 
027483,000469: 31,6471           41775                           VXV      1                                     
027484,000470: 31,6472           71116                           ABVAL    TSLT                                  
027485,000471: 31,6473           00766                                    RN                                    
027486,000472: 31,6474           00774                                    VN                                    
027487,000473: 31,6475           00003                                    2                                     
027488,000474: 
027489,000475: 31,6476           47575                           NOLOD    1                                     
027490,000476: 31,6477           64716                           DMP      TSLT                                  
027491,000477: 31,6500           22307                                    1/MUE                                 
027492,000478: 31,6501           00002                                    1                                     #  H/MUE  B5  PD2,3
027493,000479: 
027494,000480: 31,6502           47575                           NOLOD    1                                     
027495,000481: 31,6503           64776                           DMP                                            
027496,000482: 31,6504           00001                                    0                                     #   H H/MUE  B-26  PD4,5
027497,000483: 31,6505           73174                           UNIT     2                                     
027498,000484: 31,6506           42722                           DOT      DMP                                   
027499,000485: 31,6507           63643                           TSLT     DSQ                                   
027500,000486: 31,6510           00766                                    RN                                    
027501,000487: 31,6511           00774                                    VN                                    
027502,000488: 31,6512           00003                                    2                                     
027503,000489: 31,6513           00003                                    2                                     
027504,000490: 31,6514           62774                           DDV      2                                     

Page 694

027506,000492: 31,6515           66643                           DSU      DSQ                                   
027507,000493: 31,6516           70653                           DAD      SQRT                                  
027508,000494: 31,6517           00005                                    4D                                    
027509,000495: 31,6520           01024                                    RMAG                                  
027510,000496: 31,6521           22674                                    TWO(-2)                               #  E  B-1  PD6,7
027511,000497: 
027512,000498: 31,6522           47576                           NOLOD    0                                     
027513,000499: 31,6523           33726                           STORE    ECC                                   
027514,000500: 
027515,000501: 31,6524           47575                           NOLOD    1                                     
027516,000502: 31,6525           65672                           BDSU     TSRT                                  
027517,000503: 31,6526           22674                                    TWO(-2)                               
027518,000504: 31,6527           00002                                    1                                     #  B-2    DEL    PD8,9
027519,000505: 
027520,000506: 31,6530           56776                           TSRT     0                                     
027521,000507: 31,6531           00005                                    4                                     
027522,000508: 31,6532           00002                                    1                                     #  PD10,11  B-27
027523,000509: 
027524,000510: 31,6533           66775                           DSU      1                                     
027525,000511: 31,6534           61776                           BDDV                                           
027526,000512: 31,6535           22674                                    TWO(-2)                               
027527,000513: 31,6536           00011                                    8D                                    #  H H/MUE(2-DEL)  B-25  =RPAR  PD10,11
027528,000514: 
027529,000515: 31,6537           56775                           TSRT     1                                     
027530,000516: 31,6540           65616                           BDSU     BPL                                   
027531,000517: 31,6541           15706                                    R400K                                 
027532,000518: 31,6542           00002                                    1                                     
027533,000519: 31,6543           00013                                    10D                                   
027534,000520: 31,6544           22457                                    TFFMAX                                
027535,000521: 
027536,000522: 31,6545           42775                           DOT      1                                     
027537,000523: 31,6546           43776                           BPL                                            
027538,000524: 31,6547           00766                                    RN                                    
027539,000525: 31,6550           00774                                    VN                                    
027540,000526: 31,6551           22443                                    HIECC1                                
027541,000527: 
027542,000528: 31,6552           62774                           DDV      2                                     
027543,000529: 31,6553           66672                           DSU      TSRT                                  
027544,000530: 31,6554           62776                           DDV                                            
027545,000531: 31,6555           00005                                    4D                                    
027546,000532: 31,6556           01024                                    RMAG                                  
027547,000533: 31,6557           22674                                    TWO(-2)                               
027548,000534: 31,6560           00002                                    1                                     
027549,000535: 31,6561           00007                                    6D                                    #  COSTH  PD12,13  B-1
027550,000536: 
027551,000537: 31,6562           47575                           NOLOD    1                                     
027552,000538: 31,6563           73726                           BMN      BDSU                                  
027553,000539: 31,6564           22457                                    TFFMAX                                
027554,000540: 31,6565           22674                                    TWO(-2)                               

Page 695

027556,000542: 31,6566           70774                           DAD      2                                     
027557,000543: 31,6567           61653                           BDDV     SQRT                                  
027558,000544: 31,6570           47176                           COMP                                           
027559,000545: 31,6571           22674                                    TWO(-2)                               
027560,000546: 31,6572           00015                                    12D                                   #  PD14,15 B0  TAN(TH/2)
027561,000547: 
027562,000548: 31,6573           56774                           TSRT     2                                     
027563,000549: 31,6574           61732                           BDDV     DSU                                   
027564,000550: 31,6575           56712                           TSRT     DDV                                   
027565,000551: 31,6576           15706                                    R400K                                 
027566,000552: 31,6577           00002                                    1                                     
027567,000553: 31,6600           00005                                    4D                                    
027568,000554: 31,6601           22674                                    TWO(-2)                               
027569,000555: 31,6602           00002                                    1                                     
027570,000556: 31,6603           00007                                    6D                                    
027571,000557: 
027572,000558: 31,6604           47575                           NOLOD    1                                     
027573,000559: 31,6605           73726                           BMN      BDSU                                  
027574,000560: 31,6606           22457                                    TFFMAX                                
027575,000561: 31,6607           22674                                    TWO(-2)                               
027576,000562: 
027577,000563: 31,6610           70774                           DAD      2                                     
027578,000564: 31,6611           61653                           BDDV     SQRT                                  
027579,000565: 31,6612           47176                           COMP                                           
027580,000566: 31,6613           22674                                    TWO(-2)                               
027581,000567: 31,6614           00021                                    16D                                   #  TAN(TH1/2)  PD18,19
027582,000568: 
027583,000569: 31,6615           56775                           TSRT     1                                     
027584,000570: 31,6616           70776                           DAD                                            
027585,000571: 31,6617           00011                                    8D                                    
027586,000572: 31,6620           00002                                    1                                     
027587,000573: 31,6621           22674                                    TWO(-2)                               
027588,000574: 
027589,000575: 31,6622           66775                           DSU      1                                     
027590,000576: 31,6623           73722                           BMN      DMP                                   
027591,000577: 31,6624           00023                                    18D                                   
027592,000578: 31,6625           00017                                    14D                                   
027593,000579: 31,6626           22665                                    TFF0                                  #  (1+DEL/4)(TANTH1/2)-TAN(TH/2))
027594,000580: 
027595,000581: 31,6627           51175                           DSQ      1                                     
027596,000582: 31,6630           64776                           DMP                                            
027597,000583: 31,6631           00023                                    18D                                   
027598,000584: 31,6632           00023                                    18D                                   #  (TAN(TH1/2))CUBED  PD22,23
027599,000585: 
027600,000586: 31,6633           51175                           DSQ      1                                     
027601,000587: 31,6634           64726                           DMP      BDSU                                  
027602,000588: 31,6635           00017                                    14D                                   
027603,000589: 31,6636           00017                                    14D                                   #  PD22,23   B0
027604,000590: 
027605,000591: 31,6637           56774                           TSRT     2                                     

Page 696

027607,000593: 31,6640           65722                           BDSU     DMP                                   
027608,000594: 31,6641           70776                           DAD                                            
027609,000595: 31,6642           00011                                    8D                                    
027610,000596: 31,6643           00002                                    1                                     
027611,000597: 31,6644           22676                                    DP1/3S                                
027612,000598: 31,6645           77777                                    -                                     
027613,000599: 31,6646           00025                                    20D                                   #  B-2   PD22,23
027614,000600: 
027615,000601: 31,6647           64773                           DMP      3                                     
027616,000602: 31,6650           63653                           TSLT     SQRT                                  
027617,000603: 31,6651           64722                           DMP      DMP                                   
027618,000604: 31,6652           56771                           TSRT     RTB                                   
027619,000605: 31,6653           00013                                    10D                                   
027620,000606: 31,6654           22307                                    1/MUE                                 
027621,000607: 31,6655           00002                                    1                                     
027622,000608: 31,6656           00013                                    10D                                   
027623,000609: 31,6657           00027                                    22D                                   
027624,000610: 31,6660           00010                                    7D                                    
027625,000611: 31,6661           20265                                    FRESHPD                               
027626,000612: 31,6662           33457                           STORE    TFF                                   
027627,000613: 
027628,000614: 31,6663           40576                           ITCQ     0                                     
027629,000615: 
027630,000616: 31,6664           45175        TFF0               DMOVE    1                                     
027631,000617: 31,6665           76576                           RTB                                            
027632,000618: 31,6666           05174                                    ZERODP                                
027633,000619: 31,6667           20265                                    FRESHPD                               
027634,000620: 31,6670           33457                           STORE    TFF                                   
027635,000621: 
027636,000622: 31,6671           40576                           ITCQ     0                                     
027637,000623: 
027638,000624: 31,6672           40576                           ITCQ     0                                     
027639,000625: 
027640,000626: 31,6673           20000 00000  TWO(-2)            2DEC     .5                                    
027641,000627: 31,6675           05252 25253  DP1/3S             2DEC     .3333333333 B-1                        

End of include-file TIME_OF_FREE-FALL_CALCULATIONS.agc.  Parent file is MAIN.agc