Source Code

These source-code files were transcribed from a printout in Don Eyles's personal collection, scanned by archive.org, and financially sponsored by Peter McDermott. A team of volunteers performed the transcription and proof-reading. The scanned page images are available at the Virtual AGC Project website, as well as higher-quality (but much larger) images at the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating "issues" at the Virtual AGC Project's GitHub Repository.

Notations on the program listing read, in part:

	YUL SYSTEM FOR AGC: NEW PROGRAM SHEPATIN BY EYLES
	DEC 13, 1966

	THIS PROGRAM WAS ASSEMBLED AS A VERSION OF REVISION 37 
        OF PROGRAM SUNBURST BY LEM GROUP
Note that the date is the date of the printout, not the date of the program revision.

025341,000002:                                                                                                  ## Copyright:   Public domain.
025342,000003:                                                                                                  ## Filename:    AOSTASK_AND_AOSJOB.agc
025343,000004:                                                                                                  ## Purpose:     A section of Sunburst revision 37, or Shepatin revision 0.
025344,000005:                                                                                                  ##              It is part of an early development version of the software
025345,000006:                                                                                                  ##              for Apollo Guidance Computer (AGC) on the unmanned Lunar
025346,000007:                                                                                                  ##              Module (LM) flight Apollo 5. Sunburst 37 was the program
025347,000008:                                                                                                  ##              upon which Don Eyles's offline development program Shepatin
025348,000009:                                                                                                  ##              was based; the listing herein transcribed was actually for
025349,000010:                                                                                                  ##              the equivalent revision 0 of Shepatin.
025350,000011:                                                                                                  ##              This file is intended to be a faithful transcription, except
025351,000012:                                                                                                  ##              that the code format has been changed to conform to the
025352,000013:                                                                                                  ##              requirements of the yaYUL assembler rather than the
025353,000014:                                                                                                  ##              original YUL assembler.
025354,000015:                                                                                                  ## Reference:   pp. 569-590
025355,000016:                                                                                                  ## Assembler:   yaYUL
025356,000017:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
025357,000018:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
025358,000019:                                                                                                  ## Mod history: 2017-05-24 MAS  Created from Sunburst 120.
025359,000020:                                                                                                  ##              2017-06-09 RSB  Transcribed.
025360,000021:                                                                                                  ##              2017-06-14 HG   Add missing label STCTR1
025361,000022:                                                                                                  ##              2017-06-22 RSB  Proofed comment text with
025362,000023:                                                                                                  ##                              octopus/ProoferComments.
025363,000024: 

Page 569

025365,000026:                                                                                                  #  PROGRAM NAME: AOSTASK           MOD. NO. 1  DATE: NOVEMBER 20, 1966
025366,000027: 
025367,000028:                                                                                                  #  AUTHOR: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
025368,000029: 
025369,000030:                                                                                                  #  THIS "WAITLIST TASK" IS EXECUTED EVERY 2 SECONDS DURING ASCENT (APS) BURNS.  IT ESTIMATES THE ACCELERATION DUE
025370,000031:                                                                                                  #  TO THE ENGINE OFF-SET.  TO USE THESE ESTIMATES, IT ALSO CALCULATES TERMS TO ADD INTO THE LM DAP RATE DERIVATION
025371,000032:                                                                                                  #  AND WEIGHTING FACTORS FOR THE ESTIMATE OF AOS AND FOR THE RATE DERIVATION.  FINALLY, IT ALSO SETS UP "AOSJOB"
025372,000033:                                                                                                  #  THROUGH THE EXECUTIVE TO CALCULATE FUMCTIONS OF THE AOS.
025373,000034: 
025374,000035:                                                                                                  #  CALLING SEQUENCE:
025375,000036: 
025376,000037:                                                                                                  #                                          L -1     CAF    2SECSDAP
025377,000038:                                                                                                  #                                          L        TC     WAITLIST
025378,000039:                                                                                                  #                                                   EBANK= AOSQ
025379,000040:                                                                                                  #                                          L +1, +2 2CADR  AOSTASK
025380,000041:                                                                                                  #                                          L +3    (RETURN)
025381,000042: 
025382,000043:                                                                                                  #  NORMAL EXIT MODE: "TASKOVER"    ALARM/ABORT MODE: NONE.
025383,000044: 
025384,000045:                                                                                                  #  INPUT  APSGOING/DAPBOOLS
025385,000046:                                                                                                  #         AOSQ,AOSR
025386,000047:                                                                                                  #         COEFCTR
025387,000048:                                                                                                  #         OLDWFORQ,OLDWFORR
025388,000049:                                                                                                  #         SUMRATEQ,SUMRATER
025389,000050:                                                                                                  #         OMEGAQ,OMEGAR
025390,000051: 
025391,000052:                                                                                                  #  OUTPUT AOSQ,AOSR,AOSU,AOSV
025392,000053:                                                                                                  #         AOSQTERM,AOSRTERM
025393,000054:                                                                                                  #         SUMRATEQ,SUMRATER
025394,000055:                                                                                                  #         KCOEFCTR
025395,000056: 
025396,000057:                                                                                                  #  DEBRIS: A,L,ITEMP1,ITEMP2.
025397,000058: 
025398,000059:                                                                                                  #  THE FOLLOWING LM DAP ERASABLES ARE ZEROED IN THE STARTDAP SECTION OF THE DAPIDLER PROGRAM AND THE COASTASC
025399,000060:                                                                                                  #  SECTION OF THE AOSTASK.  THE ORDER MUST BE PRESERVED FOR THE INDEXING METHODS WHICH ARE EMPLOYED IN THOSE
025400,000061:                                                                                                  #  SECTIONS AND ELSEWHERE.
025401,000062: 
025402,000063:                                                                                                  #                                          AOSQ     ERASE   +3             ASCENT OFFSET ACCELERATION ESTIMATES:
025403,000064:                                                                                                  #                                          AOSR     EQUALS AOSQ +1         ESTIMATED EVERY 2 SECONDS BY AOSTASK.
025404,000065:                                                                                                  #                                          AOSU     EQUALS AOSQ +2         U,V-AXES ACCS FORMED BY VECTOR ADDITION.
025405,000066:                                                                                                  #                                          AOSV     EQUALS AOSQ +3         SCALED AT PI/2 RADIANS/SECOND(2).
025406,000067: 
025407,000068:                                                                                                  #                                          AOSQTERM ERASE   +1             (.1-.05K)AOS
025408,000069:                                                                                                  #                                          AOSRTERM EQUALS AOSQTERM +1     SCALED AT PI/4 RADIANS/SECOND.
025409,000070: 
025410,000071:                                                                                                  #                                          NJ+Q     ERASE   +7             2 JET OVER-RIDE FLAGS:
025411,000072:                                                                                                  #                                          NJ-Q     EQUALS NJ+Q +1         WHENEVER THE OFFSET ACCELERATION ABOUT
025412,000073:                                                                                                  #                                          NJ+R     EQUALS NJ+Q +2         AN AXIS IS SO HIGH THAT 2 JETS COULD NOT
025413,000074:                                                                                                  #                                          NJ-R     EQUALS NJ+Q +3         CONTROL ATTITUDE SUCCESSFULLY, THEN NJ
025414,000075:                                                                                                  #                                          NJ+U     EQUALS NJ+Q +4         FOR THAT AXIS (IN THE DIRECTION OPPOSING

Page 570

025416,000077:                                                                                                  #                                          NJ-U     EQUALS NJ+Q +5         AOS) IS SET TO 1.  OTHERWISE, THE VALUE
025417,000078:                                                                                                  #                                          NJ+V     EQUALS NJ+Q +6         IS ZERO.  THESE FLAGS PREVENT TWO JETS
025418,000079:                                                                                                  #                                          NJ-V     EQUALS NJ+Q +7         FROM BEING REQUESTED TO FIGHT THE AOS.
025419,000080: 

Page 571

025421,000082: 
025422,000083:                                                                                                  #  AOSTASK IS EXECUTED ONLY DURING POWERED ASCENT.  IF NO LONGER IN POWERED ASCENT, STOP THE CYCLING OF AOSTASK AND
025423,000084:                                                                                                  #  SET UP VARIABLES FOR COASTING ASCENT.
025424,000085: 
025425,000086: 20,3112                                           BANK     20                                    
025426,000087: 20,3112  E6,1652                                  EBANK=   AOSQ                                  
025427,000088: 
025428,000089: 20,3112           37746        AOSTASK            CAF      APSGOING                              #  TEST POWERED ASCENT FLAG:
025429,000090: 20,3113           70077                           MASK     DAPBOOLS                              #  0: NOT POWERED ASCENT (ASCENT COAST)
025430,000091: 20,3114           00006                           EXTEND                                         #  1: POWERED ASCENT
025431,000092: 20,3115           13275                           BZF      COASTASC                              #  (END CYCLE OF TASKS DURING ASCENT COAST)
025432,000093: 
025433,000094:                                                                                                  #  KEEP TRACK OF LENGTH OF BURN FOR DETERMINATION OF WEIGHTING FACTOR K:
025434,000095: 
025435,000096: 20,3116           31644                           CAE      KCOEFCTR                              #  TEST KCOEFCTR FOR INITIAL PASS.
025436,000097: 20,3117           00006                           EXTEND                                         
025437,000098: 20,3120           13255                           BZF      ZEROCOEF                              #  GO TO DISCONTINUITY SECTION FOR COEFFA.
025438,000099: 
025439,000100: 20,3121           63313                           AD       DEC-399                               #  TEST KCOEFCTR FOR CONSTANT RANGE WHICH
025440,000101: 20,3122           00006                           EXTEND                                         #  OCCURS WHEN DURATION OF BURN IS EQUAL TO
025441,000102: 
025442,000103: 20,3123           63125                           BZMF     +2                                    #  OR GREATER THAN 400 SECONDS.  (SINCE
025443,000104: 20,3124           13261                           TCF      KONENOW                               #  KCOEFCTR IS EVEN, 399 IS THE BREAK PT.)
025444,000105: 
025445,000106:                                                                                                  #  FORM WEIGHTING FACTOR FOR ASCENT OFFSET ACCELERATION FILTER:  COEFFA = 0.00125(T) + 0.25
025446,000107: 
025447,000108: 20,3125           33302                           CAF      0.00125                               #  COEFFA = 0.00125(T) + 0.25
025448,000109: 20,3126           00006                           EXTEND                                         
025449,000110: 20,3127           71644                           MP       KCOEFCTR                              #  KCOEFCTR = T SCALED AT 2(+14)
025450,000111: 20,3130           37741                           CAF      BIT13                                 #  (BIT13 = 1/4 = 0.25 SCALED AT 1.)
025451,000112: 20,3131           60001                           AD       L                                     
025452,000113: 20,3132           54062        COEFFAST           TS       COEFFA                                #  (VOLATILE STORAGE.)                  
025453,000114: 
025454,000115:                                                                                                  #  FORM WEIGHTING FACTOR FOR RATE DERIVATION: K = 0.0014(T) + 0.44
025455,000116: 
025456,000117: 20,3133           33303                           CAF      0.0014                                #  K = 0.0014(T) + 0.44
025457,000118: 20,3134           00006                           EXTEND                                         
025458,000119: 20,3135           71644                           MP       KCOEFCTR                              #  KCOEFCTR = T SCALED AT 2(+14)
025459,000120: 20,3136           33310                           CAF      0.44                                  
025460,000121: 20,3137           60001                           AD       L                                     
025461,000122: 20,3140           54061                           TS       K                                     #  (VOLATILE STORAGE.)
025462,000123: 20,3141           40000                           COM                                            
025463,000124: 20,3142           67735                           AD       POSMAX                                #  (1 BIT ERROR DOES DOES NOT COMPOUND.)
025464,000125: 20,3143           55636                           TS       (1-K)                                 #  (1-K) SCALED AT 1.
025465,000126: 
025466,000127: 20,3144           00006                           EXTEND                                         
025467,000128: 20,3145           77742                           MP       BIT12                                 
025468,000129: 20,3146           55637                           TS       (1-K)/8                               #  (1-K)/8 IS (1-K) SCALED AT 8.
025469,000130: 
025470,000131: 20,3147           30061                           CAE      K                                     #  WFORP = WFORQR = K/DT = K/.1 = 10K
025471,000132: 20,3150           00006                           EXTEND                                         #  SCALED AT 16/SECOND.
025472,000133: 20,3151           73311                           MP       0.625                                 #  (CHANGES SCALE FACTOR FROM 1 TO 16/SEC.)

Page 572

025474,000135: 20,3152           55634                           TS       WFORP                                 #  WFORP IS IDENTICAL WFORQR EXCEPT FOR THE
025475,000136: 20,3153           55635                           TS       WFORQR                                #  INITIALIZATION IN STARTDAP OF DAPIDLER.
025476,000137: 
025477,000138: 20,3154           40061                           CS       K                                     #  FORM (.1-.05K) FROM K SCALED AT 1 FOR
025478,000139: 20,3155           00006                           EXTEND                                         #  THE TORQUE VECTOR RECONSTRUCTION AND
025479,000140: 20,3156           73305                           MP       0.05                                  #  ALSO FORM (.1-.05K) SCALED AT 1/2 FOR
025480,000141: 20,3157           63306                           AD       0.1                                   #  THE OFFSET ACCELERATION TERM IN THE RATE
025481,000142: 20,3160           60000                           DOUBLE                                         #  EBANK6 FOR USE IN T5RUPT WHILE THE
025482,000143: 20,3161           54061                           TS       .1-.05K                               #  LATTER IS VOLATILE AND USED IN THIS TASK
025483,000144: 
025484,000145:                                                                                                  #  BEGIN ESTIMATE OF OFFSET ACCELERATION FOR Q,R-AXES:
025485,000146: 
025486,000147: 20,3162           30062        COEFFA1            CAE      COEFFA                                #  FORM COEFFA(AOSQ):
025487,000148: 20,3163           00006                           EXTEND                                         
025488,000149: 20,3164           71652                           MP       AOSQ                                  #  FIRST TERM OF NEW AOSQ ESTIMATE:
025489,000150: 20,3165           55652                           TS       AOSQ                                  #  SCALED AT PI/2 RADIANS/SECOND(2).
025490,000151: 
025491,000152: 20,3166           30062                           CAE      COEFFA                                #  FORM COEFFA(AOSR):
025492,000153: 20,3167           00006                           EXTEND                                         
025493,000154: 20,3170           71653                           MP       AOSR                                  #  FIRST TERM OF NEW AOSR ESTIMATE:
025494,000155: 20,3171           55653                           TS       AOSR                                  #  SCALED AT PI/2 RADIANS/SECOMD(2).
025495,000156: 
025496,000157: 20,3172           40062                           CS       COEFFA                                #  FORM .5(1-COEFFA) SCALED AT 2 FROM THE
025497,000158: 20,3173           00006                           EXTEND                                         #  COEFFA SCALED AT 1.  COEFFA IS NOW THE
025498,000159: 20,3174           77741                           MP       BIT13                                 #  SAME AS 2(COEFFA) SCALED AT 2, SO MUST
025499,000160: 20,3175           67741                           AD       BIT13                                 #  MULTIPLY BY 1/4 TO GET .5(COEFFA). THEN,
025500,000161: 
025501,000162: 20,3176           54062                           TS       .5-.5COF                              #  ADD 1/4 AS 1/2 SCALED AT 2 FOR RESULT.
025502,000163: 
025503,000164:                                                                                                  #  FINISH OFFSET ACCELERATION ESTIMATES:
025504,000165: 
025505,000166:                                                                                                  #  AOS  = COEFFA (AOS   ) + .5(1-COEFFA )(OMEGA -OMEGA   -SUMRATE )
025506,000167:                                                                                                  #     T        T     T-2               T       T      T-2        T
025507,000168: 
025508,000169: 20,3177           41417                           CS       OMEGAQ                                #  SAVE PRESENT -OMEGAQ FOR NEXT PASS AND
025509,000170: 20,3200           57623                           XCH      OLDWFORQ                              #  PICK UP -(LAST OMEGAQ) FROM OLDWFORQ.
025510,000171: 20,3201           00006                           EXTEND                                         
025511,000172: 20,3202           61621                           SU       SUMRATEQ                              #  FORM: W - OLDW - SUMRATE = SUM (Q-AXIS).
025512,000173: 20,3203           61417                           AD       OMEGAQ                                #  SCALED AT PI/4 RADIANS/SECOND.
025513,000174: 20,3204           00006                           EXTEND                                         
025514,000175: 20,3205           70062                           MP       .5-.5COF                              #  AOSQ = COEFFA(AOSQ)+.5(1-COEFFA)(SUMQ)
025515,000176: 20,3206           27652                           ADS      AOSQ                                  #  SCALED AT PI/2 RADIANS/SECOND(2).
025516,000177: 
025517,000178: 20,3207           41421                           CS       OMEGAR                                #  SAVE PRESENT -OMEGAQ FOR NEXT PASS AND
025518,000179: 20,3210           57624                           XCH      OLDWFORR                              #  PICK UP -(LAST OMEGAR) FROM OLDWFORR.
025519,000180: 20,3211           00006                           EXTEND                                         
025520,000181: 20,3212           61622                           SU       SUMRATER                              #  FORM: W - OLDW - SUMRATE = SUM (R-AXIS).
025521,000182: 20,3213           61421                           AD       OMEGAR                                #  SCALED AT PI/4 RADIANS/SECOND.
025522,000183: 20,3214           00006                           EXTEND                                         
025523,000184: 20,3215           70062                           MP       .5-.5COF                              #  AOSR = COEFFA(AOSR)+.5(1-COEFFA)(SUMR)
025524,000185: 
025525,000186: 20,3216           27653                           ADS      AOSR                                  #  SCALED AT PI/2 RADIANS/SECOND(2).
025526,000187: 

Page 573

025528,000189:                                                                                                  #  CALCULATE THE OFFSET ACCELERATIONS FOR THE U,V-AXES:
025529,000190: 
025530,000191: 20,3217           31652                           CAE      AOSQ                                  #  FIRST, CALCULATE AOSU:
025531,000192: 20,3220           61653                           AD       AOSR                                  
025532,000193: 20,3221           00006                           EXTEND                                         
025533,000194: 20,3222           73312                           MP       0.70711                               
025534,000195: 20,3223           55654                           TS       AOSU                                  #  SCALED AT PI/2 RADIANS/SECOND(2).
025535,000196: 
025536,000197: 20,3224           41652                           CS       AOSQ                                  #  THEN, CALCULATE AOSV:
025537,000198: 20,3225           61653                           AD       AOSR                                  
025538,000199: 20,3226           00006                           EXTEND                                         
025539,000200: 20,3227           73312                           MP       0.70711                               
025540,000201: 20,3230           55655                           TS       AOSV                                  #  SCALED AT PI/2 RADIANS/SECOND(2).
025541,000202: 
025542,000203:                                                                                                  #  FORM TERMS FOR RATE DERIVATION:
025543,000204: 
025544,000205: 20,3231           30061                           CAE      .1-.05K                               #  FORM Q-AXIS RATE DERIVATION TERM:
025545,000206: 20,3232           00006                           EXTEND                                         
025546,000207: 20,3233           71652                           MP       AOSQ                                  #  AOSQTERM = (.1-.05K)AOSQ
025547,000208: 20,3234           55656                           TS       AOSQTERM                              #  SCALED AT PI/4 RADIANS/SECOND.
025548,000209: 
025549,000210: 20,3235           30061                           CAE      .1-.05K                               #  FORM R-AXIS RATE DERIVATION TERM:
025550,000211: 20,3236           00006                           EXTEND                                         
025551,000212: 20,3237           71653                           MP       AOSR                                  #  AOSRTERM = (.1-.05K)AOSR
025552,000213: 20,3240           55657                           TS       AOSRTERM                              #  SCALED AT PI/4 RADIANS/SECOND.
025553,000214: 
025554,000215:                                                                                                  #  SET UP AOS JOB FOR THE NEWEST OFFSET ACCELERATION ESTIMATES:
025555,000216: 
025556,000217: 20,3241           34260                           CAF      PRIO24                                #  *** VERIFY PRIORITY. ***
025557,000218: 20,3242           05523                           TC       NOVAC                                 #  SET UP AOSJOB.
025558,000219: 20,3243  E6,1652                                  EBANK=   AOSQ                                  
025559,000220: 20,3243           03327 40006                     2CADR    AOSJOB                                
025560,000221: 
025561,000222:                                                                                                  #  SET ERASABLES FOR NEXT 2 SECOND INTERVAL:
025562,000223: 
025563,000224: 20,3245           37754                           CAF      TWO                                   #  INCREMENT BURN DURATION TIMER BY 2 SECS.
025564,000225: 20,3246           27644                           ADS      KCOEFCTR                              
025565,000226: 
025566,000227: 20,3247           37761                           CAF      ZERO                                  #  INITIALIZE SUMS OF JETRATES.
025567,000228: 20,3250           55621                           TS       SUMRATEQ                              
025568,000229: 20,3251           55622                           TS       SUMRATER                              
025569,000230: 
025570,000231:                                                                                                  #  SET UP NEXT WAITLIST AOSTASK FOR 2 SECONDS FROM NOW:
025571,000232: 
025572,000233: 20,3252           33316                           CAF      2SECSDAP                              
025573,000234: 20,3253           05722                           TC       VARDELAY                              #  (STORAGE-SAVING WAITLIST CALL.)
025574,000235: 20,3254           13112                           TCF      AOSTASK                               #  RETURNS HERE IN TWO SECONDS.
025575,000236: 

Page 574

025577,000238:                                                                                                  #  SPECIAL DISCONTINUITY SECTION FOR COEFFA ON FIRST PASS:
025578,000239: 
025579,000240: 20,3255           37754        ZEROCOEF           CAF      TWO                                   #  INITIALIZE BURN DURATION TIMER TO TWO
025580,000241: 20,3256           55644                           TS       KCOEFCTR                              #  SECONDS FOR THE DERIVATION OF K.
025581,000242: 
025582,000243: 20,3257           37761                           CAF      ZERO                                  #  FOR THE FIRST PASS, SET COEFFA TO ZERO
025583,000244: 20,3260           13132                           TCF      COEFFAST                              #  SINCE AOS ESTIMATES ARE NOW USELESS.
025584,000245: 
025585,000246:                                                                                                  #  SPECIAL K AND COEFFA SETTINGS FOR BURNS LASTING 400 SECONDS OR MORE:
025586,000247: 
025587,000248: 20,3261           00006        KONENOW            EXTEND                                         #  K=1, SO 1-K AT EITHER SCALING IS ZERO.
025588,000249: 20,3262           33315                           DCA      DPZEROX                               #  (1-K)   SCALED AT 1.
025589,000250: 20,3263           53637                           DXCH     (1-K)                                 #  (1-K)/8 SCALED AT 8.
025590,000251: 
025591,000252: 20,3264           33311                           CAF      0.625                                 #  WFORP = WFORQR = K/DT = K/.1 = 10K = 10
025592,000253: 20,3265           55634                           TS       WFORP                                 #  SCALED AT 16/SECOND.
025593,000254: 20,3266           55635                           TS       WFORQR                                
025594,000255: 
025595,000256: 20,3267           33305                           CAF      0.05                                  #  (.1-.05K) = 0.05
025596,000257: 20,3270           60000                           DOUBLE                                         #  (DOUBLING SAVES CONSTANT STORAGE.)
025597,000258: 20,3271           54061                           TS       .1-.05K                               #  SCALED AT 1/2. (VOLATILE STORAGE.)
025598,000259: 
025599,000260: 20,3272           35226                           CAF      BIT13-14                              #  COEFFA = 0.75
025600,000261: 20,3273           54062                           TS       COEFFA                                #  SCALED AT 1.   (VOLATILE STORAGE.)
025601,000262: 
025602,000263: 20,3274           13162                           TCF      COEFFA1                               #  GO BEGIN OFFSET ACCELERATION ESTIMATE.
025603,000264: 
025604,000265:                                                                                                  #  SHUT-DOWN PROCEDURE AFTER ASCENT COAST DETECTION:
025605,000266: 
025606,000267: 20,3275           34260        COASTASC           CAF      PRIO24                                #  *** VERIFY PRIORITY. ***
025607,000268: 20,3276           05523                           TC       NOVAC                                 #  SET UP FINAL AOSJOB FOR THIS APS BURN.
025608,000269: 20,3277  E6,1652                                  EBANK=   AOSQ                                  
025609,000270: 20,3277           03327 40006                     2CADR    AOSJOB                                
025610,000271: 
025611,000272: 20,3301           15745                           TCF      TASKOVER                              #  END AOSTASK CYCLING FOR THIS APS BURN.
025612,000273: 

Page 575

025614,000275:                                                                                                  #  CONSTANTS FOR AOSTASK:
025615,000276: 
025616,000277: 20,3302           00024        0.00125            DEC      0.00125                               
025617,000278: 20,3303           00027        0.0014             DEC      0.0014                                
025618,000279: 20,3304           00111        0.00444            DEC      0.00444                               
025619,000280: 20,3305           01463        0.05               DEC      0.05                                  
025620,000281: 20,3306           03146        0.1                DEC      0.1                                   
025621,000282: 20,3307           12000        0.3125             DEC      0.3125                                
025622,000283: 20,3310           16051        0.44               DEC      0.44                                  
025623,000284: 20,3311           24000        0.625              DEC      0.625                                 
025624,000285: 20,3312           26501        0.70711            DEC      0.70711                               
025625,000286: 20,3313           77160        DEC-399            DEC      -399       B-14                       
025626,000287: 20,3314           00000 00000  DPZEROX            2DEC     0          B-28                       
025627,000288: 
025628,000289: 20,3316           00310        2SECSDAP           DEC      200        B-14                       
025629,000290: 20,3317           20000        (1-K)S             DEC      0.5                                   
025630,000291: 20,3320           02000                           DEC      0.0625                                
025631,000292: 

Page 576

025633,000294:                                                                                                  #  PROGRAM NAME: WCHANGER          MOD. NO. 0  DATE: DECEMBER 9, 1966
025634,000295: 
025635,000296: 20,3321           15745                           TCF      TASKOVER                              
025636,000297: 
025637,000298:                                                                                                  #  THIS PROGRAM IS A WAITLIST TASK WHICH IS INITIATED FROM THE STARTDAP SECTION OF DAPIDLER.  IT IS EXECUTED
025638,000299:                                                                                                  #  BETWEEN THE FIRST Q,R-AXES T5RUPT AND THE SECOND P-AXIS T5RUPT (I.E. 180 MS AFTER STARTDAP).  THE PURPOSE OF
025639,000300:                                                                                                  #  WCHANGER IS TO RESET THE VARIABLE K (IN ALL ITS FORMS) FOR THE RATE DERIVATION FROM 1 TO 0.5.  (IT ALSO SETS THE
025640,000301:                                                                                                  #  NOMINAL LM DAP DT TO 100 MS.)
025641,000302: 
025642,000303:                                                                                                  #  CALLING SEQUENCE (FROM STARTDAP):
025643,000304: 
025644,000305:                                                                                                  #                                          L -1     CAF    180MS
025645,000306:                                                                                                  #                                          L        TC     WAITLIST
025646,000307:                                                                                                  #                                                   EBANK= WFORQR
025647,000308:                                                                                                  #                                          L +1     2CADR  WCHANGER
025648,000309:                                                                                                  #                                          L +2    (BBCON)
025649,000310:                                                                                                  #                                          L +3    (RETURN)
025650,000311: 
025651,000312:                                                                                                  #  SUBROUTINES CALLED: WCHANGE.    NORMAL EXIT: TASKOVER.
025652,000313: 
025653,000314:                                                                                                  #  INPUT: NONE.                    ALARM/ABORT EXITS: NONE.
025654,000315: 
025655,000316:                                                                                                  #  OUTPUT: WFORP,WFORQR,(1-K),(1-K)/8.
025656,000317: 
025657,000318: 20,3322           05307        WCHANGER           TC       IBNKCALL                              #  (WAITLIST TASK IS IN T3RUPT.)
025658,000319: 20,3323           40106                           FCADR    WCHANGE                               #  SUBROUTINE DOES SETTING TO SAVE SPACE.
025659,000320: 
025660,000321: 20,3324           15745                           TCF      TASKOVER                              #  END THIS TASK.
025661,000322: 

Page 577

025663,000324:                                                                                                  #  INERPOLY COMPUTES IXX, IYY, IZZ, AND, IN DESCENT, L,PVT-CG.
025664,000325:                                                                                                  #  AFTER THE INERTIAS ARE COMPUTED, THEY ARE USED TO COMPUTE NEW VALUES OF
025665,000326:                                                                                                  #  1JACC, 1JACCQ, 1JACCR, 1JACCU, 1JACCV AND 1/2JTSP.
025666,000327:                                                                                                  #  INERPOLY EXITS BY .... TCF ENDOFJOB
025667,000328: 
025668,000329: 
025669,000330: 26,2611                                           BANK     26                                    
025670,000331: 
025671,000332: 26,2611  E6,1452                                  EBANK=   IXX                                   
025672,000333: 26,2611           37754        INERPOLY           CA       BIT2                                  
025673,000334: 26,2612           00006                           EXTEND                                         
025674,000335: 26,2613           02030                           RAND     30                                    
025675,000336: 26,2614           10000                           CCS      A                                     #  CHOOSES ASCENT OR DESCENT COEF
025676,000337: 26,2615           46301                           CS       THREE                                 
025677,000338: 26,2616           66276                           AD       SIX                                   
025678,000339: 26,2617           55620                           TS       INERCTRX                              
025679,000340: 
025680,000341: 26,2620           37754                           CAF      TWO                                   
025681,000342: 26,2621           55617        STCTR              TS       INERCTR                               #  J=2,1,0 FOR IZZ,IYY,IXX
025682,000343: 
025683,000344: 26,2622           00006                           EXTEND                                         
025684,000345: 26,2623           27620                           DIM      INERCTRX                              #  JX=5,4,3 OR 2,1,0 FOR Z,Y,X COEF
025685,000346: 
025686,000347: 26,2624           31332        STCTR1             CA       MASS                                  #  IN KGS (+15)
025687,000348: 26,2625           00006                           EXTEND                                         
025688,000349: 26,2626           51620                           INDEX    INERCTRX                              
025689,000350: 26,2627           72720                           MP       INERCONC                              
025690,000351: 26,2630           51620                           INDEX    INERCTRX                              
025691,000352: 26,2631           62727                           AD       INERCONB                              
025692,000353: 26,2632           00006                           EXTEND                                         
025693,000354: 26,2633           71332                           MP       MASS                                  
025694,000355: 
025695,000356: 26,2634           51620                           INDEX    INERCTRX                              
025696,000357: 26,2635           62736                           AD       INERCONA                              
025697,000358: 26,2636           51617                           INDEX    INERCTR                               
025698,000359: 26,2637           55452                           TS       IXX                                   #  I(J)=(C(JX)MASS+B(JX))MASS+A(JX)  (+18)
025699,000360:                                                                                                  #  I(-1)=L,PVT-CG  (+6)
025700,000361: 
025701,000362: 26,2640           11617                           CCS      INERCTR                               #  COUNTER 2,1,0,-1
025702,000363: 26,2641           12621                           TCF      STCTR                                 
025703,000364: 26,2642           12644                           TCF      COMMEQS                               
025704,000365: 26,2643           12711                           TCF      LRESC                                 
025705,000366: 
025706,000367: 26,2644           00006        COMMEQS            EXTEND                                         
025707,000368: 26,2645           32745                           DCA      TORKJET                               #  500 FT-LBS. (+16) PI
025708,000369: 26,2646           00006                           EXTEND                                         
025709,000370: 26,2647           11452                           DV       IXX                                   
025710,000371: 26,2650           55612                           TS       1JACC                                 #  SCALED BY PI/4
025711,000372: 
025712,000373: 26,2651           00006                           EXTEND                                         
025713,000374: 26,2652           32747                           DCA      TORKJET1                              #  550 FT-LBS. (+16) PI
025714,000375: 

Page 578

025716,000377: 26,2653           00006                           EXTEND                                         
025717,000378: 26,2654           11453                           DV       IYY                                   
025718,000379: 26,2655           55613                           TS       1JACCQ                                #  SCALED BY PI/4
025719,000380: 
025720,000381: 26,2656           00006                           EXTEND                                         
025721,000382: 26,2657           32747                           DCA      TORKJET1                              #  550 FT-LBS. (+16) PI
025722,000383: 26,2660           00006                           EXTEND                                         
025723,000384: 26,2661           11454                           DV       IZZ                                   
025724,000385: 26,2662           55614                           TS       1JACCR                                #  SCALED BY PI/4
025725,000386: 
025726,000387: 26,2663           61613                           AD       1JACCQ                                
025727,000388: 26,2664           00006                           EXTEND                                         
025728,000389: 26,2665           72610                           MP       0.35356                               #  .70711 SCALED BY (+1)
025729,000390: 26,2666           55615                           TS       1JACCU                                
025730,000391: 
025731,000392: 26,2667           55616                           TS       1JACCV                                #  SCALED BY PI/4
025732,000393: 
025733,000394: 26,2670           32750                           CAF      4JTORK                                
025734,000395: 26,2671           55441                           TS       1/2JTSP                               
025735,000396: 26,2672           31452                           CAE      IXX                                   
025736,000397: 26,2673           00006                           EXTEND                                         
025737,000398: 26,2674           11441                           DV       1/2JTSP                               
025738,000399: 26,2675           60000                           DOUBLE                                         
025739,000400: 26,2676           55441                           TS       1/2JTSP                               #  SCALED BY 1/PI (+8)
025740,000401: 
025741,000402: 26,2677           37754                           CAF      BIT2                                  
025742,000403: 26,2700           00006                           EXTEND                                         
025743,000404: 26,2701           02030                           RAND     30                                    
025744,000405: 26,2702           10000                           CCS      A                                     #  COMPUTE L,PVT-CG IF IN DESCENT
025745,000406: 26,2703           12705                           TCF      DES                                   
025746,000407: 26,2704           15605                           TCF      ENDOFJOB                              
025747,000408: 
025748,000409: 26,2705           47755        DES                CS       ONE                                   
025749,000410: 26,2706           55617                           TS       INERCTR                               
025750,000411: 26,2707           55620                           TS       INERCTRX                              
025751,000412: 26,2710           12624                           TCF      STCTR1                                
025752,000413: 
025753,000414: 26,2711           31451        LRESC              CA       L,PVT-CG                              #  SCALED BY (+6)
025754,000415: 
025755,000416: 26,2712           60000                           DOUBLE                                         
025756,000417: 26,2713           60000                           DOUBLE                                         
025757,000418: 26,2714           60000                           DOUBLE                                         
025758,000419: 26,2715           55451                           TS       L,PVT-CG                              #  SCALED BY (+3)
025759,000420: 26,2716           15605                           TCF      ENDOFJOB                              
025760,000421: 
025761,000422: 
025762,000423: 26,2717           30126                           DEC      0.75524                               #  L
025763,000424: 26,2720           00353        INERCONC           DEC      0.01432                               #  XD
025764,000425: 26,2721           52653                           DEC      -0.66136                              #  YD
025765,000426: 26,2722           52136                           DEC      -0.68173                              #  ZD
025766,000427: 26,2723           01502                           DEC      0.05092                               #  XA

Page 579

025768,000429: 26,2724           53060                           DEC      -0.65325                              #  YA                       
025769,000430: 26,2725           54667                           DEC      -0.59815                              #  ZA                       
025770,000431: 26,2726           52265                           DEC      -0.67640                              #  L
025771,000432: 26,2727           05346        INERCONB           DEC      0.17030                               #  XD
025772,000433: 26,2730           25066                           DEC      0.65955                               #  YD                       
025773,000434: 26,2731           24131                           DEC      0.63041                               #  ZD                      
025774,000435: 26,2732           05613                           DEC      0.18033                               #  XA                        
025775,000436: 26,2733           06433                           DEC      0.20478                               #  YA                         
025776,000437: 26,2734           13626                           DEC      0.36855                               #  ZA                        
025777,000438: 26,2735           06324                           DEC      0.20044                               #  L                         
025778,000439: 26,2736           00157        INERCONA           DEC      0.00676                               #  XD                        
025779,000440: 26,2737           76031                           DEC      -0.06090                              #  YD                       
025780,000441: 26,2740           76456                           DEC      -0.04403                              #  ZD                         
025781,000442: 26,2741           77670                           DEC      -0.00435                              #  XA                        
025782,000443: 26,2742           77743                           DEC      -0.00170                              #  YA                        
025783,000444: 26,2743           77242                           DEC      -0.02132                              #  ZA
025784,000445: 
025785,000446: 26,2744           00047 31173  TORKJET            2DEC     0.002428512                            
025786,000447: 
025787,000448: 26,2746           00053 30441  TORKJET1           2DEC     0.002671365                            
025788,000449: 
025789,000450: 26,2750           23712        4JTORK             DEC      .62170                                
025790,000451: 

Page 580

025792,000453:                                                                                                  #  PROGRAM NAME: AOSJOB            MOD. NO. 0   DATE: DECEMBER 2, 1966
025793,000454:                                                                                                  #  PROGRAM DESIGN BY: RICHARD D. GOSS (MIT/IL)
025794,000455: 
025795,000456:                                                                                                  #  IMPLEMENTATION BY: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
025796,000457: 
025797,000458:                                                                                                  #  THE PROGRAM IS AN EXECUTIVE JOB WHICH CALCULATES THE FOLLOWING QUANTITIES FOR THE LM DAP T5RUPT PROGRAMS:
025798,000459:                                                                                                  #           1. THE INVERSES OF THE NET ACCELERATIONS ABOUT ALL AXES (Q,R,U,V), IN ALL DIRECTIONS (+/-), AND ALL
025799,000460:                                                                                                  #              COMBINATIONS OF JETS (2/4 FOR Q,R AND 1/2 FOR U,V).
025800,000461:                                                                                                  #           2. THE INVERSES OF THE MINIMUM ACCELERATIONS FOR THE URGENCY AND TJETLAW COMPUTATION, DURING APS BURNS.
025801,000462:                                                                                                  #           3. THE INITIAL INVERSE NET ACCELERATIONS USED FOR THE URGENCY COMPUTATION, DURING APS BURNS.
025802,000463:                                                                                                  #           4. THE NJ FLAGS TO REQUIRE MANDATORY JET ACCELERATION DURING APS BURNS.
025803,000464: 
025804,000465:                                                                                                  #  CALLING SEQUENCE:               SUBROUTINES CALLED: INVACC.
025805,000466: 
025806,000467:                                                                                                  #                                          L -1     CAF    PRIO24
025807,000468:                                                                                                  #                                          L        TC     NOVAC
025808,000469:                                                                                                  #                                                   EBANK= AOSQ
025809,000470:                                                                                                  #                                          L +1     2CADR  AOSJOB
025810,000471:                                                                                                  #                                          L +2    (BBCON)
025811,000472:                                                                                                  #                                          L +3    (RETURN)
025812,000473: 
025813,000474:                                                                                                  #  NORMAL EXIT: ENDOFJOB.          ALARM/ABORT EXITS: NONE.
025814,000475: 
025815,000476:                                                                                                  #  INPUT: AOSQ,AOSR,AOSU,AOSV,1JACCQ,1JACCR,1JACCU,1JACCV,APSGOING/DAPBOOLS.
025816,000477: 
025817,000478:                                                                                                  #  DEBRIS: NONE.
025818,000479: 

Page 581

025820,000481: 20,3325                                           BANK     20                                    
025821,000482: 20,3325  E6,1652                                  EBANK=   AOSQ                                  
025822,000483: 
025823,000484: 20,3325           73731        -.02R/S2           DEC      -.12732                               #  -.02 RADIANS/SECOND(2) SCALED AT PI/2
025824,000485: 20,3326           11642        ACCFIFTY           DEC      0.30679                               #  .5(50) SEC(2)/RAD SCALED AT 2(+8)/PI.                         
025825,000486: 
025826,000487:                                                                                                  #  SET UP LOOP FOR FOUR AXES (IN THE ORDER: V,U,R,Q):
025827,000488: 
025828,000489: 20,3327           37753        AOSJOB             CAF      FOUR                                  #  "JOBAXES" IS USED TO PICK UP ONE OF FOUR
025829,000490: 20,3330           54144        INVLOOP            TS       JOBAXES                               #  ADJACENT REGISTERS, ALSO TO COUNT LOOP.
025830,000491: 
025831,000492:                                                                                                  #  SET UP "TABPLACE" TO STORE 1/NETACC TABLE:
025832,000493: 
025833,000494: 20,3331           00006                           EXTEND                                         #  TABPLACE = 4(JOBAXES)
025834,000495: 20,3332           77753                           MP       FOUR                                  #  SINCE THERE ARE FOUR ENTRIES PER AXIS.
025835,000496: 20,3333           22146                           LXCH     TABPLACE                              
025836,000497: 
025837,000498:                                                                                                  #                                                       2
025838,000499:                                                                                                  #             2(1JACC   ) + AOS    - 0.02 RADIANS/SECOND  GREATER THAN ZERO
025839,000500:                                                                                                  #                    Q,R       Q,R
025840,000501:                                                                                                  #          OR                                           2
025841,000502:                                                                                                  #                1JACC    + AOS    - 0.02 RADIANS/SECOND  GREATER THAN ZERO
025842,000503:                                                                                                  #                     U,V      U,V
025843,000504: 
025844,000505: 20,3334           50144                           INDEX    JOBAXES                               #  THE INDEXED PICK-UP OF JET ACCELERATIONS
025845,000506: 20,3335           31613                           CAE      1JACCQ                                #  USES THE FOLLOWING HAPPY COINCIDENCE:
025846,000507: 20,3336           54150                           TS       TEMPACC                               #  1JACCU AND 1JACCV ARE SCALED AT PI/2 AS
025847,000508: 20,3337           50144                           INDEX    JOBAXES                               #  ARE AOSU AND AOSV.  1JACCQ AND 1JACCR
025848,000509: 20,3340           61652                           AD       AOSQ                                  #  ARE SCALED AT PI/4 AND THEREFORE ARE
025849,000510: 20,3341           54151                           TS       TEMPNET                               #  EQUIVALENT TO 2(1JACCQ) AND 2(1JACCR)
025850,000511: 20,3342           63325                           AD       -.02R/S2                              #  SCALED AT PI/2 AS ARE AOSQ AND AOSR.
025851,000512: 20,3343           00006                           EXTEND                                         #  -.02R/S2 IS -0.02 RADIANS/SECOND(2),PI/2 
025852,000513: 
025853,000514: 20,3344           63634                           BZMF     FIFTY1                                #  (BRANCH FOR CONSTANT VALUE OF INVERSE.)
025854,000515: 
025855,000516:                                                                                                  #             1/NET+2    = 1/( 2(1JACC   ) + AOS   )
025856,000517:                                                                                                  #                    Q,R              Q,R       Q,R
025857,000518:                                                                                                  #         OR
025858,000519:                                                                                                  #             1/NET+1    = 1/(   1JACC    + AOS   )
025859,000520:                                                                                                  #                    U,V              U,V      U,V
025860,000521: 
025861,000522: 20,3345           03644                           TC       INVACC                                
025862,000523: 20,3346           50146        FIFTY1R            INDEX    TABPLACE                              
025863,000524: 20,3347           55670                           TS       1/NET+2Q                              #  SCALED AT 2(+8)/PI SECONDS(2)/RADIAN.
025864,000525: 
025865,000526:                                                                                                  #                                                       2
025866,000527:                                                                                                  #             2(1JACC   ) - AOS    - 0.02 RADIANS/SECOND  GREATER THAN ZERO
025867,000528:                                                                                                  #                    Q,R       Q,R
025868,000529:                                                                                                  #         OR                                            2
025869,000530:                                                                                                  #               1JACC     - AOS    - 0.02 RADIANS/SECOND  GREATER THAN ZERO
025870,000531:                                                                                                  #                    U,V       U,V
025871,000532: 

Page 582

025873,000534: 20,3350           50144                           INDEX    JOBAXES                               #  THIS SECTION USES THE INDEXING TRICKS OF
025874,000535: 20,3351           41652                           CS       AOSQ                                  #  THE FIRST PART (ABOVE), BUT USES THE
025875,000536: 20,3352           54147                           TS       TEMPAOS                               #  TEMPORARY LOCATIONS AS FOLLOWS:
025876,000537: 20,3353           60150                           AD       TEMPACC                               #  "TEMPAOS" SAVES -AOS FOR THIS AXIS.
025877,000538: 20,3354           54151                           TS       TEMPNET                               #  "TEMPACC" HAS THE JET ACCELERATION.
025878,000539: 20,3355           63325                           AD       -.02R/S2                              #  "TEMPNET" SAVES (JETACC-AOS) FOR DENOM.
025879,000540: 20,3356           00006                           EXTEND                                         #  -.02R/S2 IS -0.02 RADIANS/SECOND(2),PI/2
025880,000541: 20,3357           63636                           BZMF     FIFTY2                                #  (BRANCH FOR CONSTANT VALUE OF INVERSE.)
025881,000542: 
025882,000543:                                                                                                  #             1/NET-2    = 1/( 2(1JACC  ) - AOS   )
025883,000544:                                                                                                  #                    Q,R             Q,R       Q,R
025884,000545:                                                                                                  #         OR
025885,000546:                                                                                                  #             1/NET-1    = 1/( 1JACC    - AOS   )
025886,000547:                                                                                                  #                    U,V            U,V      U,V
025887,000548: 
025888,000549: 20,3360           03644                           TC       INVACC                                
025889,000550: 20,3361           50146        FIFTY2R            INDEX    TABPLACE                              
025890,000551: 20,3362           55672                           TS       1/NET-2Q                              #  SCALED AT 2(+8)/PI SECONDS(2)/RADIAN.
025891,000552: 
025892,000553:                                                                                                  #             1/NET-4    = 1/( 4(1ACC    - AOS   )
025893,000554:                                                                                                  #                    Q,R              Q,R       Q,R
025894,000555:                                                                                                  #         OR
025895,000556:                                                                                                  #             1/NET-2    = 1/( 2(1JACC   ) - AOS   )
025896,000557:                                                                                                  #                    U,V              U,V       U,V
025897,000558: 
025898,000559: 20,3363           30150                           CAE      TEMPACC                               #  FIRST, FROM 2(1JACCQ,R) FORM 4(1JACCQ,R)
025899,000560: 20,3364           60000                           DOUBLE                                         #  OR FROM 1JACCU,V FORM 2(1JACCU,V) AND
025900,000561: 20,3365           54150                           TS       TEMPACC                               #  SAVE FOR NEXT INVERSE CALCULATION.
025901,000562: 20,3366           60147                           AD       TEMPAOS                               #  THEN, COMPUTE EITHER 4(1JACCQ,R)-AOSQ,R
025902,000563: 20,3367           54151                           TS       TEMPNET                               #  OR 2(1JACCU,V)-AOSU,V SCALED AT PI/2.
025903,000564: 
025904,000565: 20,3370           03644                           TC       INVACC                                
025905,000566: 20,3371           50146                           INDEX    TABPLACE                              
025906,000567: 20,3372           55673                           TS       1/NET-4Q                              #  SCALED AT 2(+8)/PI SECONDS(2)/RADIAN.
025907,000568: 

Page 583

025909,000570:                                                                                                  #             1/NET+4    = 1/( 4(1ACC    + AOS   )
025910,000571:                                                                                                  #                    Q,R              Q,R       Q,R
025911,000572:                                                                                                  #         OR
025912,000573:                                                                                                  #             1/NET+2    = 1/( 2(1JACC   ) + AOS   )
025913,000574:                                                                                                  #                    U,V              U,V       U,V
025914,000575: 
025915,000576: 20,3373           40147                           CS       TEMPAOS                               #  FIRST, COMPUTE EITHER 4(1JACCQ,R)+AOSQ,R
025916,000577: 20,3374           60150                           AD       TEMPACC                               #  OR 2(1JACCU,V)+AOSU,V AND SAVE FOR THE
025917,000578: 20,3375           54151                           TS       TEMPNET                               #  DIVISION (SCALED AT PI/2 RADIANS/SECOND)
025918,000579: 
025919,000580: 20,3376           03644                           TC       INVACC                                
025920,000581: 20,3377           50146                           INDEX    TABPLACE                              
025921,000582: 20,3400           55671                           TS       1/NET+4Q                              #  SCALED AT 2(+8)/PI RADIANS(2)/SECOND.
025922,000583: 
025923,000584:                                                                                                  #  TEST FOR END OF LOOP:
025924,000585: 
025925,000586: 20,3401           10144                           CCS      JOBAXES                               #  IF "JOBAXES" PNZ, CONTINUE.
025926,000587: 20,3402           13330                           TCF      INVLOOP                               #  IF "JOBAXES" ZERO, STOP.
025927,000588: 
025928,000589:                                                                                                  #  TEST FOR ASCENT PROPULSION SYSTEM BURN:
025929,000590: 
025930,000591: 20,3403           37746                           CAF      APSGOING                              #  IF LM IS IN COAST OR IN A DESCENT BURN,
025931,000592: 20,3404           70077                           MASK     DAPBOOLS                              #  THEN THE AOSJOB IS TRIVIAL FROM HERE
025932,000593: 20,3405           10000                           CCS      A                                     #  AND THIS TEST REDUCES THE COMPUTATION
025933,000594: 20,3406           13414                           TCF      ASCJOB                                #  TIME IN THOSE CASES.
025934,000595: 
025935,000596:                                                                                                  #  FILL IN DESCENT BURN OR COAST VALUES QUICKLY:
025936,000597: 
025937,000598: 20,3407           31670                           CAE      1/NET+2Q                              #  FOR Q-AXIS URGENCY.
025938,000599: 20,3410           55711                           TS       1/ACCQ                                
025939,000600: 20,3411           31674                           CAE      1/NET+2R                              #  FOR R-AXIS URGENCY.
025940,000601: 20,3412           55712                           TS       1/ACCR                                
025941,000602: 
025942,000603: 20,3413           15605                           TCF      ENDOFJOB                              #  END THIS ITERATION OF AOSJOB.             
025943,000604: 

Page 584

025945,000606:                                                                                                  #  IN ASCENT BURN, SO SET UP Q,R-AXES LOOP:
025946,000607: 
025947,000608: 20,3414           37755        ASCJOB             CAF      ONE                                   #  SET UP THE TABLE INDICES:
025948,000609: 20,3415           54144        QRJOB              TS       JOBAXES                               
025949,000610: 20,3416           60000                           DOUBLE                                         #  AOS TABLE USES "JOBAXES"  (ADJACENT).
025950,000611: 20,3417           54145                           TS       NJPLACE                               #  NJ  TABLE USES "NJPLACE"  (ONE APART).
025951,000612: 20,3420           60000                           DOUBLE                                         #  NET TABLE USES "TABPLACE" (THREE APART).
025952,000613: 20,3421           54146                           TS       TABPLACE                              
025953,000614: 
025954,000615:                                                                                                  #  TEST ABVAL(AOS   ) - 0.02 RADIANS/SECOND(2) GREATER THAN ZERO:
025955,000616:                                                                                                  #                Q,R
025956,000617: 
025957,000618: 20,3422           50144                           INDEX    JOBAXES                               #  FORM ABVAL(AOS   ) AND SAVE FOR INVACC.
025958,000619: 20,3423           11652                           CCS      AOSQ                                  #                Q,R
025959,000620: 20,3424           67755                           AD       ONE                                   
025960,000621: 20,3425           13427                           TCF      +2                                    
025961,000622: 20,3426           67755                           AD       ONE                                   
025962,000623: 20,3427           54151                           TS       TEMPNET                               
025963,000624: 20,3430           63325                           AD       -.02R/S2                              #  -0.02 RADIANS/SECOND(2) AT PI/2.
025964,000625: 20,3431           00006                           EXTEND                                         
025965,000626: 20,3432           63640                           BZMF     FIFTY3                                #  (BRANCH FOR CONSTANT VALUE OF INVERSE.)
025966,000627: 
025967,000628:                                                                                                  #  CALCULATE 1/AMIN    = 1/ABVAL(AOS   ):
025968,000629:                                                                                                  #                  Q,R              Q,R
025969,000630: 
025970,000631: 20,3433           03644                           TC       INVACC                                #  (USE SUBROUTINE FOR INVERSE.)
025971,000632: 
025972,000633: 20,3434           50144        FIFTY3R            INDEX    JOBAXES                               
025973,000634: 20,3435           55713                           TS       1/AMINQ                               #  SAVE FOR USE BY URGENCY CALCULATIONS.
025974,000635: 
025975,000636:                                                                                                  #  TEST 2(1JACC   ) - ABVAL(AOS   ) - 0.02 RADIANS/SECOND(2) GREATER THAN ZERO:
025976,000637:                                                                                                  #              Q,R             Q,R
025977,000638: 
025978,000639: 20,3436           40151                           CS       TEMPNET                               #  "TEMPNET" IS ABVAL(AOSQ,R).
025979,000640: 20,3437           63325                           AD       -.02R/S2                              #  -0.02 RADIANS/SECOND(2).
025980,000641: 20,3440           50144                           INDEX    JOBAXES                               
025981,000642: 20,3441           61613                           AD       1JACCQ                                #  "1JACCQ,R" SCALED AT PI/4 RAD/SEC(2) ARE
025982,000643: 20,3442           00006                           EXTEND                                         #  2(1JACCQ,R) SCALED AT PI/2 RAD/SEC(2).
025983,000644: 20,3443           63503                           BZMF     OVERRIDE                              
025984,000645: 
025985,000646:                                                                                                  #  SET FLAG NOT TO REQUEST MANDATORY FOUR JET OPERATION FOR +Q,+R ROTATION DURING THIS APS BURN (FOR NOW):
025986,000647: 
025987,000648: 20,3444           37761                           CAF      ZERO                                  #  NJ = 0 ALLOWS THE URGENCY FUNCTIONS TO
025988,000649: 20,3445           50145                           INDEX    NJPLACE                               #  ACTUALLY SELECT 2 JET ROTATION AS THE
025989,000650: 20,3446           55660                           TS       NJ+Q                                  #  OPTIMAL POLICY.
025990,000651: 
025991,000652:                                                                                                  #  TEST SIGN(AOS   ):
025992,000653:                                                                                                  #               Q,R
025993,000654: 
025994,000655: 20,3447           50144                           INDEX    JOBAXES                               #  THE SIGN OF AOSQ,R DETERMINES THE RATIO
025995,000656: 
025996,000657: 20,3450           31652                           CAE      AOSQ                                  #  TO BE COMPUTED AS THE CORRECTION FACTOR

Page 585

025998,000659: 20,3451           00006                           EXTEND                                         #  IN THE URGENCY FUNCTION CALCULATION AND
025999,000660: 20,3452           63467                           BZMF     URGRAT2                               #  ALSO SPECIFIES THE CURRECT NJ VALUES.
026000,000661: 
026001,000662:                                                                                                  #  FIRST CASE FOR URGENCY RATIO:
026002,000663: 
026003,000664: 20,3453           50146        URGRAT1            INDEX    TABPLACE                              #  CHOOSE THE -2 JET NET ACCELERATION
026004,000665: 20,3454           31672                           CAE      1/NET-2Q                              #  INVERSE FOR USE IN URGENCY COMPUTATION.
026005,000666: 20,3455           50144                           INDEX    JOBAXES                               
026006,000667: 
026007,000668: 20,3456           55711                           TS       1/ACCQ                                
026008,000669: 
026009,000670: 20,3457           50146                           INDEX    TABPLACE                              
026010,000671: 20,3460           31670                           CAE      1/NET+2Q                              #          1/NET+2Q,R
026011,000672: 20,3461           00006                           EXTEND                                         #  RATIO = ----------
026012,000673: 20,3462           50146                           INDEX    TABPLACE                              #          1/NET-2Q,R
026013,000674: 20,3463           11672                           DV       1/NET-2Q                              
026014,000675: 20,3464           50144                           INDEX    JOBAXES                               
026015,000676: 20,3465           55717                           TS       URGRATQ                               
026016,000677: 
026017,000678: 20,3466           13526                           TCF      SWITNJS                               #  GO TO SET NJS.
026018,000679: 
026019,000680:                                                                                                  #  SECOND CASE FOR URGENCY RATIO:
026020,000681: 
026021,000682: 20,3467           50146        URGRAT2            INDEX    TABPLACE                              #  CHOOSE THE +2 JET NET ACCELERATION
026022,000683: 20,3470           31670                           CAE      1/NET+2Q                              #  INVERSE FOR USE IN URGENCY COMPUTATION.
026023,000684: 20,3471           50144                           INDEX    JOBAXES                               
026024,000685: 20,3472           55711                           TS       1/ACCQ                                
026025,000686: 
026026,000687: 20,3473           50146                           INDEX    TABPLACE                              
026027,000688: 20,3474           31672                           CAE      1/NET-2Q                              #          1/NET-2Q,R
026028,000689: 20,3475           00006                           EXTEND                                         #  RATIO = ----------
026029,000690: 20,3476           50146                           INDEX    TABPLACE                              #          1/NET+2Q,R
026030,000691: 
026031,000692: 20,3477           11670                           DV       1/NET+2Q                              
026032,000693: 20,3500           50144                           INDEX    JOBAXES                               
026033,000694: 20,3501           55717                           TS       URGRATQ                               
026034,000695: 
026035,000696: 20,3502           13551                           TCF      NXTNJZER                              #  GO TO SET NJS.
026036,000697: 
026037,000698:                                                                                                  #  SET FLAG TO INDICATE MANDATORY USE OF FOUR JETS TO FIGHT THE OFFSET ACCELERATION:
026038,000699: 
026039,000700: 20,3503           00004        OVERRIDE           INHINT                                         #  PREVENT POSSIBLY EPHEMERAL MANDATORY NJ
026040,000701:                                                                                                  #  SETTING FROM AFFECTING JET SELECTION.
026041,000702: 
026042,000703: 20,3504           37755                           CAF      ONE                                   #  NJ = 1 FORCES THE URGENCY FUNCTIONS TO
026043,000704: 20,3505           50145                           INDEX    NJPLACE                               #  ACTUALLY SELECT 4 JET ROTATION AS THE
026044,000705: 20,3506           55660                           TS       NJ+Q                                  #  OPTIMAL POLICY (TO FIGHT HIS AOS).
026045,000706: 
026046,000707:                                                                                                  #  TEST SIGN(AOS   ):
026047,000708:                                                                                                  #               Q,R
026048,000709: 
026049,000710: 20,3507           50144                           INDEX    JOBAXES                               #  THE SIGN OF AOSQ,R DETERMINES THE RATIO

Page 586

026051,000712: 20,3510           31652                           CAE      AOSQ                                  #  TO BE COMPUTED AS THE CORRECTION FACTOR
026052,000713: 20,3511           00006                           EXTEND                                         #  IN THE URGENCY FUNCTION CALCULATION AND
026053,000714: 20,3512           63535                           BZMF     URGRAT4                               #  ALSO SPECIFIES THE CORRECT NJ VALUES.
026054,000715: 
026055,000716:                                                                                                  #  THIRD CASE FOR URGENCY RATIO:
026056,000717: 
026057,000718: 20,3513           50146        URGRAT3            INDEX    TABPLACE                              #  CHOOSE THE -4 JET NET ACCELERATION
026058,000719: 20,3514           31673                           CAE      1/NET-4Q                              #  INVERSE FOR USE IN URGENCY COMPUTATION.
026059,000720: 20,3515           50144                           INDEX    JOBAXES                               
026060,000721: 20,3516           55711                           TS       1/ACCQ                                
026061,000722: 
026062,000723: 20,3517           50146                           INDEX    TABPLACE                              
026063,000724: 20,3520           31670                           CAE      1/NET+2Q                              #          1/NET+2Q,R
026064,000725: 20,3521           00006                           EXTEND                                         #  RATIO = ----------
026065,000726: 
026066,000727: 20,3522           50146                           INDEX    TABPLACE                              #          1/NET-4Q,R
026067,000728: 20,3523           11673                           DV       1/NET-4Q                              
026068,000729: 20,3524           50144                           INDEX    JOBAXES                               
026069,000730: 20,3525           55717                           TS       URGRATQ                               
026070,000731: 
026071,000732:                                                                                                  #  RESET VALUES OF NJS FOR Q,R-AXIS:
026072,000733: 
026073,000734: 20,3526           37761        SWITNJS            CAF      ZERO                                  #  SET NJ      = NJ      (FROM ABOVE)
026074,000735: 20,3527           50145                           INDEX    NJPLACE                               #        -Q,-R     +Q,+R
026075,000736: 20,3530           57660                           XCH      NJ+Q                                  #  AND
026076,000737: 20,3531           50145                           INDEX    NJPLACE                               #      NJ      = 0.
026077,000738: 20,3532           55661                           TS       NJ-Q                                  #        +Q,+R
026078,000739: 
026079,000740: 20,3533           00003                           RELINT                                         #  SINCE NJS NOW VALID, ALLOW INTERRUPTS.
026080,000741: 
026081,000742: 20,3534           13556                           TCF      UVJOB                                 #  GO PROCESS U- AND V-AXIS.
026082,000743: 
026083,000744:                                                                                                  #  FOURTH CASE FOR URGENCY RATIO:
026084,000745: 
026085,000746: 20,3535           00003        URGRAT4            RELINT                                         #  SINCE ALL NJS ALREADY SET ARE NOW KNOWN
026086,000747:                                                                                                  #  TO BE VALID, ALLOW INTERRUPTS.
026087,000748: 
026088,000749: 20,3536           50146                           INDEX    TABPLACE                              #  CHOOSE THE +4 JET NET ACCELERATION
026089,000750: 
026090,000751: 20,3537           31671                           CAE      1/NET+4Q                              #  INVERSE FOR USE IN URGENCY COMPUTATION.
026091,000752: 20,3540           50144                           INDEX    JOBAXES                               
026092,000753: 20,3541           55711                           TS       1/ACCQ                                
026093,000754: 
026094,000755: 20,3542           50146                           INDEX    TABPLACE                              
026095,000756: 20,3543           31672                           CAE      1/NET-2Q                              #          1/NET-2Q,R
026096,000757: 20,3544           00006                           EXTEND                                         #  RATIO = ----------
026097,000758: 20,3545           50146                           INDEX    TABPLACE                              #          1/NET+4Q,R
026098,000759: 20,3546           11671                           DV       1/NET+4Q                              
026099,000760: 20,3547           50144                           INDEX    JOBAXES                               
026100,000761: 20,3550           55717                           TS       URGRATQ                               
026101,000762: 
026102,000763:                                                                                                  #  SET NJ FOR NEGATIVE ROTATIONS:
026103,000764: 

Page 587

026105,000766: 20,3551           37761        NXTNJZER           CAF      ZERO                                  #  SET NJ      = 0  TO LET THE URGENCY
026106,000767: 20,3552           50145                           INDEX    NJPLACE                               #        -Q,-R      FUNCTIONS SELECT 2 JET
026107,000768: 20,3553           55661                           TS       NJ-Q                                  #                   -Q,-R ROTATION
026108,000769: 
026109,000770:                                                                                                  #  TEST FOR END OF Q,R-AXES LOOP:
026110,000771: 
026111,000772: 20,3554           10144                           CCS      JOBAXES                               #  JOBAXES = 1 MEANS GO DO Q-AXIS.
026112,000773: 20,3555           13415                           TCF      QRJOB                                 #  JOBAXES = 0 MEANS GO DO U,V-AXES.
026113,000774: 

Page 588

026115,000776:                                                                                                  #  AFTER Q,R-AXES COMPLETE, DO U,V-AXES LOOP:
026116,000777: 
026117,000778: 20,3556           37755        UVJOB              CAF      ONE                                   #  SET UP THE TABLE INDICES:
026118,000779: 20,3557           54144        UJOB               TS       JOBAXES                               
026119,000780: 20,3560           60000                           DOUBLE                                         #  AOS TABLE USES "JOBAXES" (ADJACENT).
026120,000781: 20,3561           54145                           TS       NJPLACE                               #  NJ  TABLE USES "NJPLACE" (ONE APART).
026121,000782: 
026122,000783:                                                                                                  #  TEST ON ABVAL(AOS   ) - 0.02 RADIANS/SECOND(2) GREATER THAN ZERO:
026123,000784:                                                                                                  #                   U,V
026124,000785: 
026125,000786:                                                                                                  #               U,V            U,V
026126,000787: 
026127,000788: 20,3562           50144                           INDEX    JOBAXES                               #  CALCULATE ABVAL(AOS   ) SCALED AT PI/2.
026128,000789: 20,3563           11654                           CCS      AOSU                                  #                     U,V
026129,000790: 20,3564           67755                           AD       ONE                                   
026130,000791: 20,3565           13567                           TCF      +2                                    
026131,000792: 20,3566           67755                           AD       ONE                                   
026132,000793: 20,3567           54151                           TS       TEMPNET                               #  SVAE ABVAL(AOSU,V) FOR USE BY INVACC.
026133,000794: 20,3570           63325                           AD       -.02R/S2                              #  -0.02 RADIANS/SECOND(2) SCALED AT PI/2
026134,000795: 20,3571           00006                           EXTEND                                         
026135,000796: 20,3572           63642                           BZMF     FIFTY4                                #  (BRANCH FOR CONSTANT VALUE OF INVERSE.)
026136,000797: 
026137,000798: 20,3573           03644                           TC       INVACC                                
026138,000799: 20,3574           50144        FIFTY4R            INDEX    JOBAXES                               
026139,000800: 20,3575           55715                           TS       1/AMINU                               #  SCALED AT 2(+8)/PI SECONDS(2)/RADIAN.
026140,000801: 
026141,000802:                                                                                                  #  TEST ON IJACC    - ABVAL(AOS   ) - 0.02 RADIANS/SECOND(2) GREATER THAN ZERO:
026142,000803:                                                                                                  #               U,V            U,V
026143,000804: 
026144,000805: 20,3576           40151                           CS       TEMPNET                               #  -ABVAL(AOSU,V) SCALED AT PI/2 RAD/SEC(2)
026145,000806: 20,3577           63325                           AD       -.02R/S2                              #  -0.02 RADIANS/SECOND(2) SCALED AT PI/2.
026146,000807: 20,3600           50144                           INDEX    JOBAXES                               
026147,000808: 20,3601           61615                           AD       1JACCU                                #  1 JET U,V-AXIS ACCELERATION AT PI/2.
026148,000809: 20,3602           00006                           EXTEND                                         
026149,000810: 20,3603           63606                           BZMF     RIDEOVER                              
026150,000811: 
026151,000812:                                                                                                  #  SET NJ      = 0.
026152,000813:                                                                                                  #        +U,+V
026153,000814: 
026154,000815: 20,3604           37761                           CAF      ZERO                                  #  ALLOW URGENCY FUNCTIONS TO ACTUALLY
026155,000816: 20,3605           13610                           TCF      +3                                    #  SELECT 2 JET OPTIONAL ROTATION.
026156,000817: 
026157,000818:                                                                                                  #  SET NJ      = 1.
026158,000819:                                                                                                  #        +U,+V
026159,000820: 
026160,000821: 20,3606           00004        RIDEOVER           INHINT                                         #  PREVENT POSSIBLE EPHEMERAL MANDATORY NJ
026161,000822:                                                                                                  #  SETTING FROM AFFECTING JET SELECTION.
026162,000823: 
026163,000824: 20,3607           37755                           CAF      ONE                                   #  NJ = 1 FORCES THE URGENCY FUNCTIONS TO
026164,000825: 20,3610           50145                           INDEX    NJPLACE                               #  ACTUALLY SELECT 2 JET MANDATORY ROTATION      

Page 589

026166,000827: 20,3611           55664                           TS       NJ+U                                  #  AS OPTIMAL POLICY (TO FIGHT HIGH AOS).
026167,000828: 
026168,000829:                                                                                                  #  TEST SIGN(AOS   ):
026169,000830:                                                                                                  #               U,V
026170,000831: 
026171,000832: 20,3612           50144                           INDEX    JOBAXES                               #  IF GREATER THAN ZERO, SWITCH NJS.
026172,000833: 20,3613           31654                           CAE      AOSU                                  
026173,000834: 20,3614           00006                           EXTEND                                         #  IF LESS THAN ZERO, SET NJ      = 0.
026174,000835: 
026175,000836: 20,3615           63625                           BZMF     ZERNJNXT                              #                           -U,-V
026176,000837: 
026177,000838: 20,3616           37761                           CAF      ZERO                                  #  SET NJ      = NJ      (FROM ABOVE)
026178,000839: 20,3617           50145                           INDEX    NJPLACE                               #        -U,-V     +U,+V
026179,000840: 20,3620           57664                           XCH      NJ+U                                  #  AND
026180,000841: 20,3621           50145                           INDEX    NJPLACE                               #      NJ      = 0.
026181,000842: 20,3622           55665                           TS       NJ-U                                  #        +U,+V
026182,000843: 
026183,000844: 20,3623           00003                           RELINT                                         #  ALLOW INTERRUPTS AS SOON AS NJS STABLE.
026184,000845: 
026185,000846: 20,3624           13631                           TCF      VJOBTEST                              #  GO TO TEST FOR END OF LOOP.
026186,000847: 
026187,000848: 20,3625           00003        ZERNJNXT           RELINT                                         #  ALLOW INTERRUPTS SINCE SETTINGS VALID.
026188,000849: 
026189,000850: 20,3626           37761                           CAF      ZERO                                  #  SET NJ     = 0.
026190,000851: 20,3627           50145                           INDEX    NJPLACE                               #        -U,-V
026191,000852: 20,3630           55665                           TS       NJ-U                                  
026192,000853: 
026193,000854:                                                                                                  #  TEST FOR END OF UV-AXES LOOP:
026194,000855: 
026195,000856: 20,3631           10144        VJOBTEST           CCS      JOBAXES                               #  JOBAXES = 1 MEANS GO DO U-AXIS.
026196,000857: 20,3632           13557                           TCF      UJOB                                  #  JOBAXES = 0 MEANS QUIT
026197,000858: 20,3633           15605                           TCF      ENDOFJOB                              
026198,000859: 
026199,000860: 
026200,000861:                                                                                                  #  THE FOLLOWING BRANCHES SUPPLY CONSTANT VALUES:
026201,000862: 
026202,000863: 20,3634           33326        FIFTY1             CAF      ACCFIFTY                              
026203,000864: 20,3635           13346                           TCF      FIFTY1R                               
026204,000865: 
026205,000866: 20,3636           33326        FIFTY2             CAF      ACCFIFTY                              
026206,000867: 20,3637           13361                           TCF      FIFTY2R                               
026207,000868: 
026208,000869: 20,3640           33326        FIFTY3             CAF      ACCFIFTY                              
026209,000870: 20,3641           13434                           TCF      FIFTY3R                               
026210,000871: 
026211,000872: 20,3642           33326        FIFTY4             CAF      ACCFIFTY                              
026212,000873: 20,3643           13574                           TCF      FIFTY4R                               

Page 590

026214,000875:                                                                                                  #  SUBROUTINE NAME: INVACC         MOD. NO. 0  DATE: DECEMBER 3, 1966
026215,000876: 
026216,000877:                                                                                                  #  AUTHOR: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
026217,000878: 
026218,000879:                                                                                                  #  THIS SUBROUTINE IS CALLED BY AOSJOB TO CALCULATE:
026219,000880: 
026220,000881:                                                                                                  #                 0.5    WHERE TEMPNET IS SCALED AT PI/2 RADIANS/SECOND(2)
026221,000882:                                                                                                  #      C(A) =   -------
026222,000883:                                                                                                  #                        AND THE FRACTION IS SCALED AT 2(+8)/PI SEC(2)/RAD.S(2)/RADIAN.
026223,000884: 
026224,000885:                                                                                                  #  THIS SIMPLE COMPUTATION WAS SUBROUTINIZED DUE TO ITS FREQUENT USE.
026225,000886: 
026226,000887:                                                                                                  #  CALLING SEQUENCE: TC  INVACC
026227,000888: 
026228,000889:                                                                                                  #  SUBROUTINES CALLED: NONE.       NORMAL EXIT MODE: ONE INSTRUCTION AFTER CALL.
026229,000890: 
026230,000891:                                                                                                  #  ALARM OR ABORT EXIT MODES: NONE.
026231,000892: 
026232,000893:                                                                                                  #  INPUT: TEMPNET SCALED AT PI/2 RADIANS/SECONDS(2).
026233,000894: 
026234,000895:                                                                                                  #  OUTPUT: C(A) SCALED AT 2(+8)/PI SECONDS(2)/RADIAN.
026235,000896: 
026236,000897:                                                                                                  #  DEBRIS: L,Q.
026237,000898: 
026238,000899: 20,3644           37747        INVACC             CAF      BIT7                                  #  BIT7 IS USED AS THE NUMERATOR 0.5 SINCE
026239,000900: 20,3645           22007                           ZL                                             
026240,000901: 20,3646           00006                           EXTEND                                         #  "TEMPNET" IS SCALED AT PI/2 AND THE
026241,000902: 20,3647           10151                           DV       TEMPNET                               
026242,000903: 20,3650           00002                           TC       Q                                     #  INVERSE IS SCALED AT 2(+8)/PI.

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