Source Code
![]() |
This source code is very close to the Apollo Guidance Computer software for the
Apollo 13 Lunar module. This revision of the Luminary 131 program is from December
of 1969, whereas there was a later revision in January of 1970, and still another
revision in February, which is the code that flew on the mission.
As far as this transcription is concerned, it was originally from a copy made in 1991 of
a printout from the collection of AGC developer Don Eyles for collector David Craig.
It was subsequently scanned by Gary Neff, reprocessed for online
presentation at the now-discontinued History of Recent Science and Technology (HRST) website
of MIT's Dibner Institute (the full-quality scans being discarded in the process),
and finally transcribed by Ron Burkey for the Virtual AGC Project. Although a
high-quality replacement scan for a completely illegible page was later provided by Gary
Neff, the reduced legibility of the reprocessed HRST posting nevertheless caused many
errors to be introduced into the transcription. Accordingly, a second scan of the same physical
printout was made in 2017 for the Virtual AGC Project's collection at the Internet Archive,
and used to correct the transcription errors. All of the scanned materials mentioned,
as well as other Luminary 131 related material, are available online.
Don Eyles apprently made additional hand-written notes in printout between 1991 and 2017,
so the two scans are not identical in that respect. The page-headings in the printout read, in part:GAP: ASSEMBLE REVISION 131 OF AGC PROGRAM LUMINARY BY NASA 2021112-091 17:53 DEC. 19, 1969Note that the date is the date the printout was made, not the date on which the program revision was released, although these happen to be very close together. |
062800,000002: ## Copyright: Public domain.
062801,000003: ## Filename: AOSTASK_AND_AOSJOB.agc
062802,000004: ## Purpose: A section of Luminary 1C, revision 131.
062803,000005: ## It is part of the source code for the Lunar Module's (LM)
062804,000006: ## Apollo Guidance Computer (AGC) for Apollo 13.
062805,000007: ## This file is intended to be a faithful transcription, except
062806,000008: ## that the code format has been changed to conform to the
062807,000009: ## requirements of the yaYUL assembler rather than the
062808,000010: ## original YUL assembler.
062809,000011: ## Reference: pp. 1477-1498
062810,000012: ## Contact: Ron Burkey <info@sandroid.org>.
062811,000013: ## Website: www.ibiblio.org/apollo/index.html
062812,000014: ## Mod history: 06/08/03 RSB. Began transcribing.
062813,000015: ## 05/14/05 RSB Corrected website reference above.
062814,000016: ## 2010-08-24 JL Fixed page 1502 number.
062815,000017: ## 2010-10-25 JL Indentation fixes.
062816,000018: ## 2017-01-06 RSB Page numbers now agree with those on the
062817,000019: ## original hardcopy, as opposed to the PDF page
062818,000020: ## numbers in 1701.pdf.
062819,000021: ## 2017-02-28 RSB Proofed comment text using octopus/ProoferComments.
062820,000022: ## 2017-03-10 RSB Comment-text fixes noted in proofing Luminary 116.
062821,000023: ## 2017-03-14 RSB Comment-text fixes identified in 5-way
062822,000024: ## side-by-side diff of Luminary 69/99/116/131/210.
062823,000025:
![]() |
Page 1477 |
062825,000027: # PROGRAM NAME: 1/ACCS
062826,000028: # PROGRAM WRITTEN BY: BOB COVELLI AND MIKE HOUSTON
062827,000029: # LAST MODIFICATION: FEB. 14, 1969 BY G. KALAN
062828,000030:
062829,000031: # PROGRAM DESCRIPTION:
062830,000032: # 1/ACCS PROVIDES THE INTERFACE BETWEEN THE GUIDANCE PROGRAMS AND THE DIGITAL AUTOPILOT. WHENEVER THERE IS A
062831,000033: # CHANGE IN THE MASS OF THE VEHICLE, IN THE DEADBAND SELECTED, IN THE VEHICLE CONFIGURATION (ASCENT-DESCENT-
062832,000034: # DOCKED), AND DURING A FRESH START OR A RESTART, 1/ACCS IS CALLED TO COMMUNICATE THE DATA CHANGES TO THE DAP.
062833,000035:
062834,000036: # THE INPUTS TO 1/ACCS ARE MASS, ACCELERATION (ABDELV), DEADBAND (DB), OFFSET ACCELERATIONS (AOSQ AND AOSR),
062835,000037: # STAGE VERIFY BIT (CHAN30, BIT2), DOCKED BIT (DAPBOOLS, BIT13), DRIFT BIT (DAPBOOLS, BIT8), USEQRJTS (DAPBOOLS,
062836,000038: # BIT14), AND SURFACE FLAG (FLAGWRD8, BIT8), AND CH5MASK.
062837,000039:
062838,000040: # 1/ACCS COMPUTES THE JET ACCELERATIONS (1JACC, 1JACCQ, 1JACCR) AS FUNCTIONS OF MASS. 1JACCU AND 1JACCV ARE
062839,000041: # FORMED BY RESOLVING 1JACCQ NAD 1JACCR. IN THE DESCENT CASE, THE DESCENT ENGINE MOMENT ARM (L, PVT-CG) IS ALSO
062840,000042: # COMPUTED AS A FUNCTION OF MASS. THE RATE OF CHANGE OF ACCELERATION DUE TO ROTATION OF THE GIMBAL (ACCDOTQ,
062841,000043: # ACCDOTR) IS ALSO COMPUTED IN THE DESCENT CASE.
062842,000044:
062843,000045: # AFTER THE ABOVE COMPUTATIONS, THE PROGRAM 1/ACCONT COMPUTES THE RECIPROCAL NET ACCELERATIONS ABOUT THE P, U,
062844,000046: # AND V AXES (2 JETS FOR P AXIS, BOTH 1 AND 2 JETS FOR U AND V AXES), AND THE RECIPROCAL COAST ACCELERATIONS ABOUT
062845,000047: # THE P, U, AND V AXES. THE ACCELERATION FUNCTIONS (ACCFCTZ1 AND ACCFCTZ5) ARE ALSO COMPUTED FOR THESE AXES. THE
062846,000048: # FIRE AND COAST DEADBANDS AND AXISDIST ARE COMPUTED FOR EACH AXIS. FLAT AND ZONE3LIM, THE WIDTH AND HEIGHT OF THE
062847,000049: # MINIMUM IMPULSE ZONE, ARE COMPUTED. 1/ACCONT ALSO SETS ACCSWU AND ACCSWV, WHICH INDICATE WHEN 1 JET ACCELERATION
062848,000050: # IS NOT SUFFICIENT TO PRODUCE MINIMUM ACCELERATION. AT THE COMPLETION OF 1/ACCS, THE ACCSOKAY BIT IS SET.
062849,000051:
062850,000052: # SUBBOUTINES CALLED:
062851,000053: # TIMEGMBL
062852,000054: # MAKECADR
062853,000055: # ROT45DEG
062854,000056:
062855,000057: # CALLING SEQUENCE:
062856,000058: # TC BANKCALL (1/ACCS MUST BE CALL BY BANKCALL
062857,000059: # CADR 1/ACCS
062858,000060:
062859,000061: # NORMAL EXIT: VIA BANKJUMP ALARM AND ABORT EXIT MODES: NONE.
062860,000062:
062861,000063: # INPUT/OUTPUT: SEE PROGRAM DESCRIPTION
062862,000064:
062863,000065: # DEBRIS:
062864,000066: # ALL OF THE EXECUTIVE TEMPORARY REGISTERS, EXCEPT FIXLOC AND OVFIND, AND THE CORE SET AREA FROM MPAC TO BANKSET.
062865,000067:
062866,000068: # RESTRICTIONS:
062867,000069: # 1/ACCS MUST BE CALLED BY BANKCALL
062868,000070: # EBANK IS SET TO 6, BUT NOT RESTORED.
![]() |
Page 1478 |
062870,000072:
062871,000073: 21,3645 BANK 21
062872,000074: 21,2000 SETLOC DAPS4
062873,000075: 21,2000 BANK
062874,000076:
062875,000077: 21,3645 COUNT* $$/DAPAO
062876,000078:
062877,000079: 21,3645 E6,1536 EBANK= AOSQ
062878,000080:
062879,000081: # ENTRY IS THROUGH 1/ACCJOB OR 1/ACCSET WHEN 1/ACCS IS TO BE DONE AS A SEPARATE NOVAC JOB.
062880,000082: # IT IS POSSIBLE FOR MORE THAN ONE OF THESE JOBS TO BE SET UP CONCURRENTLY. HOWEVER, SINCE THERE IS NO CHECK OF
062881,000083: # NEWJOB, A SECOND MANIFESTATION CANNOT BE STARTED UNTIL THE FIRST IS COMPLETED.
062882,000084:
062883,000085: 21,3645 34755 1/ACCSET CAF ZERO # ENTRY FROM FRESH START/RESTART CODING.
062884,000086: 21,3646 55536 TS AOSQ # NULL THE OFFSET ESTIMATES FOR 1/ACCS.
062885,000087: 21,3647 55540 TS AOSR
062886,000088: 21,3650 55424 TS ALPHAQ # NULL THE OFFSET ESTIMATES FOR DOWNLIST
062887,000089: 21,3651 55425 TS ALPHAR
062888,000090:
062889,000091: 21,3652 04616 1/ACCJOB TC BANKCALL # 1/ACCS ASSUMES ENTRY VIA BANKCALL.
062890,000092: 21,3653 40465 CADR 1/ACCS +2 # SKIP EBANK SETTING.
062891,000093:
062892,000094: 21,3654 05155 TC ENDOFJOB
062893,000095:
062894,000096: 20,2463 BANK 20
062895,000097: 20,2000 SETLOC DAPS3
062896,000098: 20,2000 BANK
062897,000099: 20,2463 COUNT* $$/DAPAO
062898,000100:
062899,000101: 20,2463 35015 1/ACCS CA EBANK6 # ***** EBANK SET BUT NOT RESTORED *****
062900,000102: 20,2464 54003 TS EBANK
062901,000103:
062902,000104: 20,2465 04645 TC MAKECADR # SAVE RETURN SO THAT BUF2 MAY BE USED
062903,000105: 20,2466 54117 TS ACCRETRN
062904,000106:
062905,000107: # DETERMINE MASS OF THE LEM.
062906,000108:
062907,000109: 20,2467 30111 CA DAPBOOLS # IS CSM DOCKED
062908,000110: 20,2470 74737 MASK CSMDOCKD
062909,000111: 20,2471 54157 TS DOCKTEMP # STORE RECORD OF STATE IN TEMP (MPAC +3).
062910,000112: 20,2472 10000 CCS A
062911,000113: 20,2473 41327 CS CSMMASS # DOCKED: LEMMASS = MASS - CSMMASS
062912,000114: 20,2474 61243 AD MASS # LEM ALONE: LEMMASS = MASS
062913,000115: 20,2475 55326 TS LEMMASS
062914,000116:
062915,000117: # ON THE BASIS OF APSFLAG:
062916,000118: # SET THE P-AXIS RATE COMMAND LIMIT FOR 2-JET/4-JET CONTROL
062917,000119: # SET MPAC, WHICH INDICATES THE PROPER SET OF COEFFICIENTS FOR THE LEM-ALONE F(MASS) CALCULATIONS
062918,000120: # ENSURE THAT THE LEM MASS VALUE IS WITHIN THE ACCEPTABLE RANGE
062919,000121:
062920,000122: 20,2476 00004 INHINT
![]() |
Page 1479 |
062922,000124: 20,2477 30106 CAE FLGWRD10 # DETERMINE WHETHER STAGED.
062923,000125: 20,2500 74737 MASK APSFLBIT
062924,000126: 20,2501 00006 EXTEND
062925,000127: 20,2502 12526 BZF DPSFLITE
062926,000128:
062927,000129: 20,2503 44733 CS POSMAX # ASCENT (OR ON LUNAR SURFACE)
062928,000130: 20,2504 55475 TS -2JETLIM # ALWAYS 2 JETS FOR P-AXIS RATE COMMAND
062929,000131: 20,2505 35741 CAF OCT14 # INITIALIZE INDEX AT 12.
062930,000132: 20,2506 54154 TS MPAC
062931,000133: 20,2507 41326 CS LEMMASS # CHECK IF MASS TOO HIGH. CATCH STAGING.
062932,000134: 20,2510 61400 AD HIASCENT
062933,000135: 20,2511 00006 EXTEND
062934,000136: 20,2512 62517 BZMF MASSFIX
062935,000137: 20,2513 41326 CS LEMMASS # CHECK IF MASS TOO LOW. THIS LIMITS THE
062936,000138: 20,2514 62001 AD LOASCENT # DECREMENTING BY MASSMON.
062937,000139: 20,2515 00006 EXTEND
062938,000140: 20,2516 62544 BZMF F(MASS)
062939,000141:
062940,000142: 20,2517 27326 MASSFIX ADS LEMMASS # STORE THE VIOLATED LIMIT AS LEMMASS.
062941,000143: 20,2520 22007 ZL # ALSO CORRECT TOTAL MASS, ZEROING THE
062942,000144: 20,2521 10157 CCS DOCKTEMP # LOW-ORDER WORD.
062943,000145: 20,2522 31327 CAE CSMMASS # DOCKED: MASS = LEMMASS + CSMMASS
062944,000146: 20,2523 61326 AD LEMMASS # LEM ALONE: MASS = LEMMASS
062945,000147: 20,2524 53244 DXCH MASS
062946,000148: 20,2525 12544 TCF F(MASS)
062947,000149:
062948,000150: 20,2526 44742 DPSFLITE CS BIT10 # FOUR JETS FOR P-AXIS RATE COMMAND ERRORS
062949,000151: 20,2527 55475 TS -2JETLIM # EXCEEDING 1.4 DEG/SEC (SCALED AT 45)
062950,000152: 20,2530 36245 CAF SIX # INITIALIZE INDEX AT 6.
062951,000153: 20,2531 54154 TS MPAC
062952,000154: 20,2532 41326 CS LEMMASS # CHECK IF MASS TOO HIGH. SHOULD NEVER
062953,000155: 20,2533 62002 AD HIDESCNT # OCCUR EXCEPT PERHAPS BEFORE THE PAD
062954,000156: 20,2534 00006 EXTEND # LOAD IS DONE.
062955,000157: 20,2535 62517 BZMF MASSFIX
062956,000158: 20,2536 41326 CS LEMMASS # CHECK IF MASS TOO LOW. THIS LIMITS THE
062957,000159: 20,2537 62003 AD LODESCNT # DECREMENTING BY MASSMON.
062958,000160: 20,2540 61400 AD HIASCENT
062959,000161: 20,2541 00006 EXTEND
062960,000162: 20,2542 62544 BZMF F(MASS)
062961,000163: 20,2543 12517 TCF MASSFIX
062962,000164:
062963,000165: # COMPUTATION OF FUNCTIONS OF MASS
062964,000166:
062965,000167: 20,2544 00003 F(MASS) RELINT
062966,000168: 20,2545 10157 CCS DOCKTEMP
062967,000169: 20,2546 13111 TCF DOCKED # DOCKED: USE SEPERATE COMPUTATION.
062968,000170: 20,2547 34752 CA TWO
062969,000171: 20,2550 54155 STCTR TS MPAC +1 # J=2,1,0 FOR 1JACCR,1JACCQ,1JACC
062970,000172:
062971,000173: 20,2551 44752 CS TWO
062972,000174: 20,2552 26154 ADS MPAC # JX=10,8,6 OR 4,2,0 TO INDEX COEFS.
062973,000175:
![]() |
Page 1480 |
062975,000177: 20,2553 31326 STCTR1 CAE LEMMASS
062976,000178: 20,2554 50154 INDEX MPAC
062977,000179: 20,2555 63064 AD INERCONC
062978,000180: 20,2556 54156 TS MPAC +2 # MASS + C
062979,000181: 20,2557 00006 EXTEND
062980,000182: 20,2560 50154 INDEX MPAC
062981,000183: 20,2561 33046 DCA INERCONA
062982,000184: 20,2562 00006 EXTEND
062983,000185: 20,2563 10156 DV MPAC +2
062984,000186: 20,2564 50154 INDEX MPAC
062985,000187: 20,2565 63063 AD INERCONB
062986,000188: 20,2566 50155 INDEX MPAC +1 # 1JACC(J)=A(JX)/(MASS+C(JX) + B(JX)
062987,000189: 20,2567 55530 TS 1JACC # 1JACC(-1)=L,PVT-CG SCALED AT 8 FEET
062988,000190:
062989,000191: 20,2570 10155 CCS MPAC +1
062990,000192: 20,2571 12550 TCF STCTR
062991,000193: 20,2572 12574 TCF COMMEQS
062992,000194: 20,2573 12673 TCF LRESC
062993,000195:
062994,000196: # COEFFQ AND COEFFR ARE COMPUTED IN THIS SECTION. THEY ARE USED TO RESOLVE Q-R COMPONENTS INTO NON-ORTHOGONAL
062995,000197: # U AND V COMPONENTS (SEE ROT-TOUV SECTION).
062996,000198:
062997,000199: 20,2574 22007 COMMEQS ZL
062998,000200: 20,2575 41532 CS 1JACCR
062999,000201: 20,2576 61531 AD 1JACCQ
063000,000202: 20,2577 00006 EXTEND
063001,000203: 20,2600 62624 BZMF BIGIQ
063002,000204: 20,2601 00006 EXTEND # EPSILON IS A MEASURE OF COUPLING AND IS
063003,000205: 20,2602 11531 DV 1JACCQ # DEFINED=1-IQ/IR FOR IR GREATER THAN IQ.
063004,000206: 20,2603 54155 TS EPSILON # THE COMPUTED EXPRESSION IS EQUIVALENT
063005,000207: 20,2604 63110 AD -EPSMAX
063006,000208: 20,2605 00006 EXTEND
063007,000209: 20,2606 62611 BZMF GOODEPS1
063008,000210: 20,2607 43110 CS -EPSMAX
063009,000211: 20,2610 54155 TS EPSILON # EPSILON IS LIMITED TO A MAX. OF .42265
063010,000212: 20,2611 30155 GOODEPS1 CA EPSILON
063011,000213: 20,2612 00006 EXTEND
063012,000214: 20,2613 73104 MP 0.35356
063013,000215: 20,2614 63106 AD .7071
063014,000216: 20,2615 55627 TS COEFFR # IN THIS CASE WHERE IR IS GREATER THAN
063015,000217: 20,2616 44733 CS POSMAX # IQ, COEFFQ=-.707(1+.5EPSILON)(1-EPSILON)
063016,000218: 20,2617 60155 AD EPSILON # AND COEFFR=.707(1+.5EPSILON)
063017,000219: 20,2620 00006 EXTEND
063018,000220: 20,2621 71627 MP COEFFR
063019,000221: 20,2622 55626 TS COEFFQ
063020,000222: 20,2623 12647 TCF JACCUV
063021,000223: 20,2624 00006 BIGIQ EXTEND # EPSILON IS DEFINED AS 1-IR/IQ FOR IQ
063022,000224: 20,2625 11532 DV 1JACCR # GREATER THAN IR. -EPSILON IS COMPUTED
063023,000225: 20,2626 54155 TS -EPSILON # RATHER THAN EPSILON FOR CONVENIENCE
063024,000226: 20,2627 40155 CS -EPSILON
![]() |
Page 1481 |
063026,000228: 20,2630 63110 AD -EPSMAX
063027,000229: 20,2631 00006 EXTEND
063028,000230: 20,2632 62635 BZMF GOODEPS2
063029,000231: 20,2633 33110 CA -EPSMAX
063030,000232: 20,2634 54155 TS -EPSILON # EPSILON IS LIMITED TO A MAX. OF .42265
063031,000233: 20,2635 30155 GOODEPS2 CA -EPSILON
063032,000234: 20,2636 00006 EXTEND
063033,000235: 20,2637 73104 MP 0.35356
063034,000236: 20,2640 63107 AD -.7071
063035,000237: 20,2641 55626 TS COEFFQ # IN THIS CASE WHERE IQ IS GREATER THAN
063036,000238: 20,2642 40155 CS -EPSILON # IR, COEFFQ=-.707(1+.5EPSILON) AND
063037,000239: 20,2643 64735 AD NEGMAX # COEFFR=.707(1+.5EPSILON)(1-EPSILON)
063038,000240: 20,2644 00006 EXTEND
063039,000241: 20,2645 71626 MP COEFFQ
063040,000242: 20,2646 55627 TS COEFFR
063041,000243: 20,2647 41626 JACCUV CS COEFFQ
063042,000244: 20,2650 00006 EXTEND
063043,000245: 20,2651 71531 MP 1JACCQ # 1JACCQ IS SCALED AT PI/4
063044,000246: 20,2652 55533 TS 1JACCU # 1JACCU USED AS TEMPORARY STORAGE
063045,000247: 20,2653 31627 CA COEFFR
063046,000248: 20,2654 00006 EXTEND
063047,000249: 20,2655 71532 MP 1JACCR
063048,000250: 20,2656 61533 AD 1JACCU
063049,000251: 20,2657 00006 EXTEND
063050,000252: 20,2660 74736 MP BIT14 # SCALING CHANGED FROM PI/4 TO PI/2
063051,000253: 20,2661 55533 TS 1JACCU # SCALED AT PI/2 RADIANS/SEC(2)
063052,000254: 20,2662 10154 CCS MPAC # COMPUTE L,PVT-CG IF IN DESCENT
063053,000255: 20,2663 34755 CAF ZERO # ZERO SWITCHES AND GO TO 1/ACCONT IN
063054,000256: 20,2664 55502 TS ALLOWGTS # ASCENT
063055,000257: 20,2665 13234 TCF 1/ACCONT -1
063056,000258:
063057,000259: 20,2666 44752 CS TWO
063058,000260: 20,2667 54154 TS MPAC
063059,000261: 20,2670 44753 CS ONE
063060,000262: 20,2671 54155 TS MPAC +1
063061,000263: 20,2672 12553 TCF STCTR1
063062,000264:
063063,000265: # THIS SECTION COMPUTES THE RATE OF CHANGE OF ACCELERATION DUE TO THE ROTATION OF THE GIMBALS. THE EQUATION IMPLE
063064,000266: # MENTED IN BOTH THE Y-X PLANE AND THE Z-X PLANE IS -- D(ALPHA)/DT = TL/I*D(DELTA)/DT, WHERE
063065,000267: # T = ENGINE THRUST FORCE
063066,000268: # L = PIVOT TO CG DISTANCE OF ENGINE
063067,000269: # I = MOMENT OF INERTIA
063068,000270:
063069,000271: 20,2673 31245 LRESC CAE ABDELV # SCALED AT 2(13) CM/SEC(2)
063070,000272: 20,2674 00006 EXTEND
063071,000273: 20,2675 71243 MP MASS # SCALED AT B+16 KGS
063072,000274: 20,2676 03002 TC DVOVSUB # GET QUOTIENT WITH OVERFLOW PROTECTION
063073,000275: 20,2677 03105 ADRES GFACTM
063074,000276:
063075,000277: # MASS IS DIVIDED BY ACCELERATION OF GRAVITY IN ORDER TO MATCH THE UNITS OF IXX,IYY,IZZ, WHICH ARE SLUG-FT(2).
063076,000278: # THE RATIO OF ACCELERATION FROM PIPAS TO ACCELERATION OF GRAVITY IS THE SAME IN METRIC OR ENGINEERING UNITS, SO
![]() |
Page 1482 |
063078,000280: # THAT IS UNCONVERTED. 2.20462 CONVERTS KG. TO LB. NOW T IS IN A SCALED AT 2(14).
063079,000281:
063080,000282: 20,2700 00006 EXTEND
063081,000283: 20,2701 71527 MP L,PVT-CG # SCALED AT 8 FEET.
063082,000284: 20,2702 00004 INHINT
063083,000285: 20,2703 54154 TS MPAC
063084,000286: 20,2704 00006 EXTEND
063085,000287: 20,2705 71532 MP 1JACCR
063086,000288: 20,2706 03002 TC DVOVSUB # GET QUOTIENT WITH OVERFLOW PROTECTION
063087,000289: 20,2707 02000 ADRES TORKJET1
063088,000290:
063089,000291: 20,2710 55511 TS ACCDOTR # SCALED AT PI/2(7)
063090,000292: 20,2711 30154 CA MPAC
063091,000293: 20,2712 00006 EXTEND
063092,000294: 20,2713 71531 MP 1JACCQ
063093,000295: 20,2714 03002 TC DVOVSUB # GET QUOTIENT WITH OVERFLOW PROTECTION
063094,000296: 20,2715 02000 ADRES TORKJET1
063095,000297:
063096,000298: 20,2716 55507 SPSCONT TS ACCDOTQ # SCALED AT PI/2(7)
063097,000299: 20,2717 00006 EXTEND
063098,000300: 20,2720 73103 MP DGBF # .3ACCDOTQ SCALED AT PI/2(8)
063099,000301: 20,2721 55504 TS KQ
063100,000302: 20,2722 31511 CAE ACCDOTR # .3ACCDOTR AT PI/2(8)
063101,000303: 20,2723 00006 EXTEND
063102,000304: 20,2724 73103 MP DGBF
063103,000305: 20,2725 55506 TS KRDAP
063104,000306: 20,2726 00006 EXTEND # NOW COMPUTE QACCDOT, RACCDOT, THE SIGNED
063105,000307: 20,2727 00012 READ CHAN12 # JERK TERMS. STORE CHANNEL 12. WITH GIM
063106,000308: 20,2730 54155 TS MPAC +1 # BAL DRIVE BITS 9 THROUGH 12. SET LOOP
063107,000309: 20,2731 34752 CAF BIT2 # INDEX TO COMPUTE RACCDOT, THEN QACCDOT.
063108,000310: 20,2732 12734 TCF LOOP3
063109,000311: 20,2733 34755 CAF ZERO # ACCDOTQ AND ACCDOTR ARE NOT NEGATIVE,
063110,000312: 20,2734 54154 LOOP3 TS MPAC # BECAUSE THEY ARE MAGNITUDES
063111,000313: 20,2735 30155 CA MPAC +1
063112,000314: 20,2736 50154 INDEX MPAC # MASK CHANNEL IMAGE FOR ANY GIMBAL MOTION
063113,000315: 20,2737 73077 MASK GIMBLBTS
063114,000316: 20,2740 00006 EXTEND
063115,000317: 20,2741 12755 BZF ZACCDOT # IF NONE, Q(R)ACCDOT IS ZERO.
063116,000318: 20,2742 30155 CA MPAC +1
063117,000319: 20,2743 50154 INDEX MPAC # GIMBAL IS MOVING. IS ROTATION POSITIVE.
063118,000320: 20,2744 73100 MASK GIMBLBTS +1
063119,000321: 20,2745 00006 EXTEND
063120,000322: 20,2746 12752 BZF FRSTZERO # IF NOT POSITIVE, BRANCH
063121,000323: 20,2747 50154 INDEX MPAC # POSITIVE ROTATION, NEGATIVE Q(R)ACCDOT.
063122,000324: 20,2750 41507 CS ACCDOTQ
063123,000325: 20,2751 12756 TCF STACCDOT
063124,000326: 20,2752 50154 FRSTZERO INDEX MPAC # NEGATIVE ROTATION, POSITIVE Q(R)ACCDOT.
063125,000327: 20,2753 31507 CA ACCDOTQ
063126,000328: 20,2754 12756 TCF STACCDOT
063127,000329: 20,2755 34755 ZACCDOT CAF ZERO
![]() |
Page 1483 |
063129,000331: 20,2756 50154 STACCDOT INDEX MPAC
063130,000332: 20,2757 55510 TS QACCDOT # STORE Q(R)ACCDOT.
063131,000333: 20,2760 10154 CCS MPAC
063132,000334: 20,2761 12733 TCF LOOP3 -1 # NOW DO QACCDOT.
063133,000335: 20,2762 40111 CS DAPBOOLS # IS GIMBAL USABLE?
063134,000336: 20,2763 74736 MASK USEQRJTS
063135,000337: 20,2764 00006 EXTEND
063136,000338: 20,2765 13712 BZF DOWNGTS # NO. BE SURE THE GIMBAL SWITCHES ARE DOWN
063137,000339: 20,2766 41263 CS T5ADR # YES. IS THE DAP RUNNING?
063138,000340: 20,2767 63772 AD PAXISADR
063139,000341: 20,2770 00006 EXTEND
063140,000342: 20,2771 12773 BZF +2
063141,000343: 20,2772 13712 TCF DOWNGTS # NO. BE SURE THE GIMBAL SWITCHES ARE DOWN
063142,000344: 20,2773 11632 CCS INGTS # YES. IS GTS IN CONTROL?
063143,000345: 20,2774 12777 TCF DOCKTEST # YES. PROCEED WITH 1/ACCS.
063144,000346: 20,2775 04674 TC IBNKCALL # NO. NULL OFFSET AND FIND ALLOWGTS
063145,000347: 20,2776 43327 CADR TIMEGMBL
063146,000348:
063147,000349: 20,2777 10157 DOCKTEST CCS DOCKTEMP # BYPASS 1/ACCONT WHEN DOCKED.
063148,000350: 20,3000 13675 TCF 1/ACCRET
063149,000351: 20,3001 13235 TCF 1/ACCONT
063150,000352:
![]() |
Page 1484 |
063152,000354: # SUBROUTINE: DVOVSUB
063153,000355: # AUTHOR: C. WORK, MOD 0 12 JUNE 68
063154,000356: # PURPOSE: THIS SUBROUTINE PROVIDES A SINGLE-PRECISION MACHINE LANGUAGE DIVISION OPERATION WHICH RETURNS
063155,000357: # (1) THE QUOTIENT, IF THE DIVISION WAS NORMAL.
063156,000358: # (2) NEGMAX, IF THE QUOTIENT WAS IMPROPER AND NEGATIVE.
063157,000359: # (3) POSMAX, IF THE QUOTIENT WAS IMPROPER AND POSITIVE OR IF THERE WAS A ZERO DIVISOR.
063158,000360: # THE CALLING PROGRAM IS PRESUMED TO BE A JOB IN THE F BANK WHICH CONTAINS DVOVSUB. E BANK MUST BE 6.
063159,000361: # THE DIVISOR FOR THIS ROUTINE MAY BE IN EITHER FIXED OR ERASABLE STORAGE. SIGN AGREEMENT IS
063160,000362: # ASSUMED BETWEEN THE TWO HALVES OF THE DIVIDEND. (THIS IS CERTAIN IF THE A AND L REGISTERS ARE THE RE-
063161,000363: # SULT OF A MULTIPLICATION OPERATION.)
063162,000364: # CALL SEQUENCE:
063163,000365: # L TC DVOVSUB
063164,000366: # L +1 ADRES (DIVISOR)
063165,000367: # L +2 RETURN HERE, WITH RESULT IN A,L
063166,000368: # INPUT: DIVIDEND IN A,L (SIGN AGREEMENT ASSUMED), DIVISOR IN LOCATION DESIGNATED BY "ADRES".
063167,000369: # DIVISOR MAY BE IN THE DVOVSUB FBANK,FIXED-FIXED FBANK,EBANK 6, OR UNSWITCHED ERASABLE.
063168,000370: # OUTPUT: QUOTIENT AND REMAINDER, OR POSMAX (NEGMAX), WHICHEVER IS APPROPRIATE.
063169,000371: # DEBRIS: SCRATCHX,SCRATCHY,SCRATCHZ,A,L (NOTE: SCRATCHX,Y,Z ARE EQUATED TO MPAC +4,+5, AND +6.)
063170,000372: # ABORTS OR ALARMS: NONE
063171,000373: # EXITS: TO THE CALL POINT +2.
063172,000374: # SUBROUTINES CALLED: NONE.
063173,000375:
063174,000376: 20,3002 54161 DVOVSUB TS SCRATCHY # SAVE UPPER HALF OF DIVIDEND
063175,000377: 20,3003 54160 TS SCRATCHX
063176,000378: 20,3004 50002 INDEX Q # OBTAIN ADDRESS OF DIVISOR.
063177,000379: 20,3005 30000 CA 0
063178,000380: 20,3006 24002 INCR Q # STEP Q FOR PROPER RETURN SEQUENCE.
063179,000381: 20,3007 50000 INDEX A
063180,000382: 20,3010 30000 CA 0 # PICK UP THE DIVISOR.
063181,000383: 20,3011 00006 EXTEND # RETURN POSMAX FOR A ZERO DIVISOR.
063182,000384: 20,3012 13041 BZF MAXPLUS
063183,000385:
063184,000386: 20,3013 54162 TS SCRATCHZ # STORE DIVISOR.
063185,000387:
063186,000388: 20,3014 10000 CCS A # GET ABS(DIVISOR) IN THE A REGISTER.
063187,000389: 20,3015 64753 AD BIT1
063188,000390: 20,3016 13020 TCF ZEROPLUS
063189,000391: 20,3017 64753 AD BIT1
063190,000392:
063191,000393: 20,3020 56161 ZEROPLUS XCH SCRATCHY # STORE ABS(DIVISOR). PICK UP TOP HALF OF
063192,000394: 20,3021 00006 EXTEND # DIVIDEND.
063193,000395: 20,3022 63024 BZMF GOODNEG # GET -ABS(DIVIDEND)
![]() |
Page 1485 |
063195,000397: 20,3023 40000 CS A
063196,000398:
063197,000399: 20,3024 60161 GOODNEG AD SCRATCHY # ABS(DIVISOR) - ABS(DIVIDEND)
063198,000400: 20,3025 00006 EXTEND
063199,000401: 20,3026 63033 BZMF MAKEMAX # BRANCH IF DIVISION IS NOT PROPER.
063200,000402:
063201,000403: 20,3027 30160 CA SCRATCHX # RE-ESTABLISH THE DIVIDEND.
063202,000404: 20,3030 00006 EXTEND
063203,000405: 20,3031 10162 DV SCRATCHZ # QUOTIENT IN THE A, REMAINDER IN L.
063204,000406: 20,3032 00002 TC Q # RETURN TO CALLER.
063205,000407:
063206,000408: 20,3033 10160 MAKEMAX CCS SCRATCHX # DETERMINE THE SIGN OF THE QUOTIENT.
063207,000409: 20,3034 10162 CCS SCRATCHZ # SCRATCHX AND SCRATCHZ ARE NON-ZERO.
063208,000410: 20,3035 13041 TCF MAXPLUS
063209,000411: 20,3036 10162 CCS SCRATCHZ
063210,000412: 20,3037 34735 CAF NEGMAX # +,- OR -,+
063211,000413: 20,3040 00002 TC Q
063212,000414: 20,3041 34733 MAXPLUS CAF POSMAX # -,- OR +,+
063213,000415: 20,3042 00002 TC Q
063214,000416:
063215,000417: # COEFFICIENTS FOR THE JET ACCELERATION CURVE FITS
063216,000418: # THE CURVE FITS ARE OF THE FORM -
063217,000419: # 1JACC = A/(MASS + C) + B
063218,000420: # A IS SCALED AT PI/4 RAD/SEC**2 B+16KG, B IS SCALED AT PI/4 RAD/SEC**2, AND C IS SCALED AT B +16 KG.
063219,000421:
063220,000422: # THE CURVE FIT FOR L,PVT-CG IS OF THE SAME FORM, EXCEPT THAT A IS SCALED AT 8 FT B+16 KG, B IS SCALED AT 8 FT,
063221,000423: # AND C IS SCALED AT B+16 KG.
063222,000424:
063223,000425: 20,3043 01240 22513 2DEC +.0410511917 # L A DESCENT
063224,000426: 20,3045 00141 07416 INERCONA 2DEC +.0059347674 # 1JACCP A DESCENT
063225,000427: 20,3047 00030 21261 2DEC +.0014979264 # 1JACCQ A DESCENT
063226,000428: 20,3051 00021 03766 2DEC +.0010451889 # 1JACCR A DESCENT
063227,000429: 20,3053 00153 07111 2DEC +.0065443852 # 1JACCP A ASCENT
063228,000430: 20,3055 00072 24103 2DEC +.0035784354 # 1JACCQ A ASCENT
063229,000431: 20,3057 00135 11511 2DEC +.0056946631 # 1JACCR A ASCENT
063230,000432: 20,3061 04754 DEC +.155044 # L B DESCENT
063231,000433: 20,3062 77142 DEC -.025233 # L C DESCENT
![]() |
Page 1486 |
063233,000435: 20,3063 00061 INERCONB DEC +.002989 # 1JACCP B DESCENT
063234,000436: 20,3064 00217 INERCONC DEC +.008721 # 1JACCP C DESCENT
063235,000437: 20,3065 00464 DEC +.018791 # 1JACCQ B DESCENT
063236,000438: 20,3066 75642 DEC -.068163 # 1JACCQ C DESCENT
063237,000439: 20,3067 00536 DEC +.021345 # 1JACCR B DESCENT
063238,000440: 20,3070 75705 DEC -.066027 # 1JACCR C DESCENT
063239,000441:
063240,000442: 20,3071 00001 DEC +.000032 # 1JACCP B ASCENT
063241,000443: 20,3072 77616 DEC -.006923 # 1JACCP C ASCENT
063242,000444: 20,3073 05154 DEC +.162862 # 1JACCQ B ASCENT
063243,000445: 20,3074 00052 DEC +.002588 # 1JACCQ C ASCENT
063244,000446: 20,3075 00231 DEC +.009312 # 1JACCR B ASCENT
063245,000447: 20,3076 77174 DEC -.023608 # 1JACCR C ASCENT
063246,000448:
063247,000449: 20,3077 01400 GIMBLBTS OCTAL 01400
063248,000450: 20,3100 01000 OCTAL 01000
063249,000451: 20,3101 06000 OCTAL 06000
063250,000452: 20,3102 04000 OCTAL 04000
063251,000453: 20,3103 23146 DGBF DEC 0.6 # .3 SCALED AT 1/2
063252,000454: 20,3104 13241 0.35356 DEC 0.35356 # .70711 SCALED AT 2
063253,000455: 20,3105 00337 GFACTM OCT 337 # 979.24/2.20462 AT B+15
063254,000456: 20,3106 26501 .7071 DEC .70711
063255,000457: 20,3107 51276 -.7071 DEC -.70711
063256,000458: 20,3110 62362 -EPSMAX DEC -.42265
063257,000459:
063258,000460: # CSM-DOCKED INERTIA COMPUTATIONS
063259,000461:
063260,000462: 20,3111 34753 DOCKED CA ONE # COEFTR = 1 FOR INERTIA COEFFICIENTS
063261,000463: 20,3112 54160 SPSLOOP1 TS COEFCTR # = 7 FOR CG COEFFICIENTS
063262,000464: 20,3113 34753 CA ONE # MASSCTR = 1 FOR CSM
063263,000465: 20,3114 54161 TS MASSCTR # = 0 FOR LEM
063264,000466:
063265,000467: 20,3115 50160 INDEX COEFCTR
063266,000468: 20,3116 33216 CA COEFF -1 # COEFF -1 = C
063267,000469: 20,3117 00006 EXTEND
063268,000470: 20,3120 71326 MP LEMMASS
063269,000471: 20,3121 00006 EXTEND
063270,000472: 20,3122 71327 MP CSMMASS # LET X = CSMMASS AND Y = LEMMASS
063271,000473:
063272,000474: 20,3123 50160 INDEX COEFCTR
063273,000475: 20,3124 63217 AD COEFF # COEFF = F
063274,000476: 20,3125 54154 TS MPAC # MPAC = C X Y + F
063275,000477: 20,3126 13132 TCF +4
063276,000478:
063277,000479: 20,3127 54161 SPSLOOP2 TS MASSCTR # LOOP TWICE THROUGH HERE TO OBTAIN
063278,000480: 20,3130 00006 EXTEND # MPAC = MPAC + (A X +D)X + (B Y +E)Y
063279,000481: 20,3131 26160 DIM COEFCTR # LOOP #1 LOOP #2
063280,000482: 20,3132 50160 INDEX COEFCTR
063281,000483: 20,3133 33221 CA COEFF +2 # COEFF +2 = A OR B
063282,000484: 20,3134 00006 EXTEND
![]() |
Page 1487 |
063284,000486: 20,3135 50161 INDEX MASSCTR
063285,000487: 20,3136 71326 MP LEMMASS
063286,000488: 20,3137 50160 INDEX COEFCTR
063287,000489: 20,3140 63223 AD COEFF +4 # COEFF +4 = E OR D
063288,000490: 20,3141 00006 EXTEND
063289,000491: 20,3142 50161 INDEX MASSCTR
063290,000492: 20,3143 71326 MP LEMMASS
063291,000493: 20,3144 26154 ADS MPAC
063292,000494:
063293,000495: 20,3145 10161 CCS MASSCTR
063294,000496: 20,3146 13127 TCF SPSLOOP2
063295,000497: 20,3147 10160 CCS COEFCTR # IF COEFCTR IS POS, EXIT FROM LOOP WITH
063296,000498: 20,3150 13157 TCF +7 # CG X DELDOT = MPAC X 4 PI RAD-CM/SEC
063297,000499: 20,3151 00000 20354 TORQCONS 2DEC 0.51443 B-14 # CORRESPONDS TO 500 LB-FT
063298,000500:
063299,000501: 20,3153 30154 CA MPAC
063300,000502: 20,3154 54155 TS MPAC +1 # INERTIA = (MPAC +1) X 2(38) KG-CM(2)
063301,000503: 20,3155 34757 CA SEVEN
063302,000504: 20,3156 13112 TCF SPSLOOP1
063303,000505:
063304,000506: 20,3157 33216 CA 1JACCCON # 1JACC=1JACCCON/MASS
063305,000507: 20,3160 22007 ZL
063306,000508: 20,3161 03002 TC DVOVSUB
063307,000509: 20,3162 01243 ADRES MASS
063308,000510: 20,3163 55530 TS 1JACC # SCALED AT PI/4
063309,000511:
063310,000512: 20,3164 34733 CA POSMAX # SET INVERSE JET ACCELERATIONS TO POSMAX,
063311,000513: 20,3165 55550 TS 1/ANETP # WHICH CORRESPONDS TO ACCEL. OF 1.4 D/SS.
063312,000514: 20,3166 55570 TS 1/ANET2 +1
063313,000515: 20,3167 55571 TS 1/ANET2 +2
063314,000516: 20,3170 55610 TS 1/ANET2 +17D
063315,000517: 20,3171 55611 TS 1/ANET2 +18D
063316,000518: 20,3172 00006 EXTEND
063317,000519: 20,3173 33152 DCA TORQCONS
063318,000520: 20,3174 00006 EXTEND
063319,000521: 20,3175 10155 DV MPAC +1
063320,000522: 20,3176 00004 INHINT
063321,000523: 20,3177 55531 TS 1JACCQ # SCALED AT PI/4
063322,000524: 20,3200 55532 TS 1JACCR
063323,000525:
063324,000526: 20,3201 33107 CA -.7071
063325,000527: 20,3202 55626 TS COEFFQ # COEFFQ AND COEFFR ARE CHOSEN TO MAKE U-
063326,000528: 20,3203 33106 CA .7071 # AND V-AXES ORTHOGONAL FOR DOCKED CASE
063327,000529: 20,3204 55627 TS COEFFR
063328,000530: 20,3205 31243 CA MASS # SCALED AT 2(16) KG
063329,000531: 20,3206 00006 EXTEND
063330,000532: 20,3207 70154 MP MPAC # SCALED AT 4 PI RAD-CM/SEC
063331,000533: 20,3210 00006 EXTEND
063332,000534: 20,3211 71245 MP ABDELV # SCALED AT 2(13) CM/SEC(2)
063333,000535: 20,3212 03002 TC DVOVSUB # GET QUOTIENT WITH OVERFLOW PROTECTION
![]() |
Page 1488 |
063335,000537: 20,3213 00155 ADRES MPAC +1
063336,000538:
063337,000539: 20,3214 55511 TS ACCDOTR
063338,000540: 20,3215 12716 TCF SPSCONT # CONTINUE K, KSQ CALCULATIONS
063339,000541:
063340,000542: 20,3216 00167 1JACCCON OCT 00167 # SCALED AT PI/4X2(16) RAD/SEC(2)-KG
063341,000543:
063342,000544: # 2 2
063343,000545: # COEFFICIENTS FOR CURVE FIT OF THE FORM Z = A X +B Y +C X Y +D X +E Y +F
063344,000546:
063345,000547: 20,3217 06176 COEFF DEC .19518 # C COEFFICIENT OF INERTIA
063346,000548: 20,3220 77650 DEC -.00529 # F ''
063347,000549: 20,3221 72260 DEC -.17670 # B ''
063348,000550: 20,3222 76637 DEC -.03709 # A ''
063349,000551: 20,3223 02167 DEC .06974 # E ''
063350,000552: 20,3224 00645 DEC .02569 # D ''
063351,000553:
063352,000554: 20,3225 06335 DEC .20096 # C COEFFICIENT OF CG
063353,000555: 20,3226 04256 DEC .13564 # F ''
063354,000556: 20,3227 30163 DEC .75704 # B ''
063355,000557: 20,3230 64072 DEC -.37142 # A ''
063356,000558: 20,3231 53632 DEC -.63117 # E ''
063357,000559: 20,3232 15133 DEC .41179 # D ''
063358,000560:
063359,000561: # ASSIGNMENT OF TEMPORARIES FOR 1/ACCS (EXCLUDING 1/ACCONT)
063360,000562: # MPAC, MPAC +1, MPAC +2 USED EXPLICITLY
063361,000563: 20,3233 0160 COEFCTR EQUALS MPAC +4
063362,000564: 20,3233 0161 MASSCTR EQUALS MPAC +5
063363,000565: 20,3233 0160 SCRATCHX EQUALS MPAC +4 # SCRATCH AREA FOR DVOVSUB ROUTINE.
063364,000566: 20,3233 0161 SCRATCHY EQUALS SCRATCHX +1
063365,000567: 20,3233 0162 SCRATCHZ EQUALS SCRATCHX +2
063366,000568: 20,3233 0157 DOCKTEMP EQUALS MPAC +3 # RECORD OF CSMDOCKED BIT OF DAPBOOLS
063367,000569: 20,3233 0155 EPSILON EQUALS MPAC +1
063368,000570: 20,3233 0155 -EPSILON EQUALS EPSILON
063369,000571: 20,3233 71777 -.1875 DEC -.18750
063370,000572:
![]() |
Page 1489 |
063372,000574: 20,3234 BANK 20
063373,000575: 20,2000 SETLOC DAPS3
063374,000576: 20,2000 BANK
063375,000577:
063376,000578: 20,3234 E6,1536 EBANK= AOSQ
063377,000579:
063378,000580: 20,3234 COUNT* $$/DAPAO
063379,000581:
063380,000582: 20,3234 55632 -1 TS INGTS # ZERO INGTS IN ASCENT
063381,000583: 20,3235 31343 1/ACCONT CA DB # INITIALIZE DBVAL1,2,3
063382,000584: 20,3236 00006 EXTEND
063383,000585: 20,3237 74737 MP BIT13
063384,000586: 20,3240 54001 TS L # 0.25 DB
063385,000587: 20,3241 60000 AD A
063386,000588: 20,3242 54115 TS DBVAL3 # 0.50 DB
063387,000589: 20,3243 41343 CS DBVAL1
063388,000590: 20,3244 60001 AD L
063389,000591: 20,3245 54114 TS DBVAL2 # -.75 DB
063390,000592:
063391,000593: 20,3246 00004 GETAOSUV INHINT
063392,000594: 20,3247 31540 CAE AOSR # COMPUTE AOSU AND AOSV BY ROTATING
063393,000595: 20,3250 54001 TS L # AOSQ AND AOSR.
063394,000596: 20,3251 31536 CAE AOSQ
063395,000597: 20,3252 04674 TC IBNKCALL
063396,000598: 20,3253 37200 CADR ROT-TOUV
063397,000599: 20,3254 53543 DXCH AOSU
063398,000600:
063399,000601: 20,3255 00003 RELINT
063400,000602: 20,3256 30111 CA DAPBOOLS
063401,000603: 20,3257 74744 MASK DRIFTBIT # ZERO DURING ULLAGE AND POWERED FLIGHT.
063402,000604: 20,3260 10000 CCS A # IF DRIFTING FLIGHT,
063403,000605: 20,3261 34753 CA ONE # SET DRIFTER TO 1
063404,000606: 20,3262 54116 TS DRIFTER # SAVE TO TEST FOR DRIFTING FLIGHT LATER
063405,000607: 20,3263 61502 AD ALLOWGTS # NON-ZERO IF DRIFT OR GTS NEAR
063406,000608: 20,3264 10000 CCS A
063407,000609: 20,3265 33767 CA FLATVAL # DRIFTING FLIGHT, STORE .8 INFLAT
063408,000610: 20,3266 54151 TS FLATEMP # IN POWERED FLIGHT, STORE ZERO IN FLAT
063409,000611: 20,3267 00006 EXTEND
063410,000612: 20,3270 13274 BZF DOPAXIS # IF POWERED AND NO GTS, START P AXIS,
063411,000613: 20,3271 10116 CCS DRIFTER # OTHERWISE SET ZONE3LIM
063412,000614: 20,3272 33766 CA ZONE3MAX # 17.5 MS, SCALED AT 4 SECONDS.
063413,000615: 20,3273 54152 TS Z3TEM
063414,000616:
063415,000617: 20,3274 31530 DOPAXIS CA 1JACC # 1JACC AT PI/4 = 2JACC AT PI/2 =
063416,000618: # ANET AT PI/2 = ANET/ACOAST AT 2(6).
063417,000619: 20,3275 64743 AD BIT9 # 1 + ANET/ACOAST AT 2(6)
063418,000620: 20,3276 54157 TS FUNTEM
063419,000621:
063420,000622: 20,3277 31530 CA 1JACC
![]() |
Page 1490 |
063422,000624: 20,3300 03704 TC INVERT
063423,000625: 20,3301 00004 INHINT # P AXIS DATA MUST BE CONSISTENT
063424,000626: 20,3302 55550 TS 1/ANETP # SCALED AT 2(7)/PI.
063425,000627: 20,3303 55551 TS 1/ANETP +1
063426,000628:
063427,000629: 20,3304 44743 CS BIT9 # -1 AT 2(6)
063428,000630: 20,3305 00006 EXTEND
063429,000631: 20,3306 71550 MP 1/ANETP # -1/ANET AT 2(13)/PI
063430,000632: 20,3307 00006 EXTEND
063431,000633: 20,3310 10157 DV FUNTEM # -1/(ANET + ANET**2/ACOAST) AT 2(7)/PI
063432,000634: 20,3311 55556 TS PACCFUN
063433,000635: 20,3312 55557 TS PACCFUN +1
063434,000636:
063435,000637: 20,3313 34733 CA 1/.03 # NO AOS FOR P AXIS, ACOAST = AMIN
063436,000638: 20,3314 55552 TS 1/ACOSTP
063437,000639: 20,3315 55553 TS 1/ACOSTP +1
063438,000640: 20,3316 00003 RELINT
063439,000641:
063440,000642: 20,3317 22007 ZL
063441,000643: 20,3320 10116 CCS DRIFTER
063442,000644: 20,3321 53543 DXCH AOSU # ZERO AOSU,V IF IN DRIFT, JUST TO BE SURE
063443,000645:
063444,000646: 20,3322 34755 UAXIS CA ZERO # DO U AXIS COMPUTATIONS
063445,000647: 20,3323 54154 TS UV # ZERO FOR U AXIS, ONE FOR V AXIS.
063446,000648:
063447,000649: 20,3324 54163 BOTHAXES TS SIGNAOS # CODING COMMON TO U,V AXES
063448,000650: 20,3325 50154 INDEX UV
063449,000651: 20,3326 11542 CCS AOSU # PICK UP ABS(AOSU OR AOSV)
063450,000652: 20,3327 64753 AD ONE # RESTORE TO PROPER VALUE
063451,000653: 20,3330 13333 TCF +3 # AND LEAVE SIGNAOS AT ZERO
063452,000654: 20,3331 64753 AD ONE # NEGATIVE, RESTORE TO PROPER VALUE
063453,000655: 20,3332 24163 INCR SIGNAOS # AND SET SIGNAOS TO ONE TO SHOW AOS NEG
063454,000656: 20,3333 54162 TS ABSAOS # SAVE ABS(AOS)
063455,000657: 20,3334 40163 CS SIGNAOS
063456,000658: 20,3335 54164 TS -SIGNAOS # USED AS AN INDEX
063457,000659:
063458,000660: 20,3336 31343 CA DBVAL1 # SET DB1, DB2 TO DBVAL1 (= DB)
063459,000661: 20,3337 54143 TS DBB1
063460,000662: 20,3340 54144 TS DBB2
063461,000663:
063462,000664: 20,3341 30162 CA ABSAOS # TEST MAGNITUDE OF ABS(AOS)
063463,000665: 20,3342 63770 AD -.03R/S2
063464,000666: 20,3343 00006 EXTEND
063465,000667: 20,3344 63436 BZMF NOTMUCH # ABS(AOS) LESS THAN AMIN
063466,000668: 20,3345 10151 BIGAOS CCS FLATEMP # AGS(AOS) GREATER THAN AMIN
063467,000669: 20,3346 13376 TCF SKIPDB1 # I DRIFT OR GTS, DO NOT COMPUTE DB
063468,000670:
063469,000671: 20,3347 31343 CA DBVAL1
063470,000672: 20,3350 50164 INDEX -SIGNAOS
![]() |
Page 1491 |
063472,000674: 20,3351 26144 ADS DBB2 # DB2(1) = 2 DB
063473,000675: 20,3352 50163 INDEX SIGNAOS
063474,000676: 20,3353 54145 TS DBB4 # DB4(3) = 1 DB
063475,000677: 20,3354 33233 CA -.1875 # -.1875 PI/2 RAD/SEC(2) SCALED AT PI/2
063476,000678: 20,3355 60162 AD ABSAOS # ABSAOS IS SCALED AT PI/2
063477,000679: 20,3356 00006 EXTEND
063478,000680: 20,3357 63362 BZMF +3
063479,000681: 20,3360 40115 CS DBVAL3 # -.5 DB
063480,000682: 20,3361 13371 TCF DBONE
063481,000683: 20,3362 40162 CS ABSAOS
063482,000684: 20,3363 60000 DOUBLE
063483,000685: 20,3364 60000 DOUBLE
063484,000686: 20,3365 64736 AD BIT14
063485,000687: 20,3366 60000 DOUBLE # 1-8 ABSAOS. (8 IS 16/PI SCALED AT 2/PI)
063486,000688: 20,3367 00006 EXTEND
063487,000689: 20,3370 71343 MP DB
063488,000690: 20,3371 50163 DBONE INDEX SIGNAOS # DB1(2)=(1-8 ABSAOS) DB. IF ABSAOS IS
063489,000691: 20,3372 54143 TS DBB1 # GREATER THAN .1875 THEN DB1(2) = -.5 DB
063490,000692: 20,3373 30114 CA DBVAL2
063491,000693: 20,3374 50164 INDEX -SIGNAOS
063492,000694: 20,3375 54146 TS DBB3 # DB3(4) = -.75 DB
063493,000695:
063494,000696: 20,3376 30162 SKIPDB1 CA ABSAOS # ABS(AOS) GREATER THAN AMIN, SO IT IS
063495,000697: 20,3377 00006 EXTEND
063496,000698: 20,3400 74740 MP BIT12
063497,000699: 20,3401 60162 AD ABSAOS # (9/8) ABSAOS.
063498,000700: 20,3402 03704 TC INVERT # ALL RIGHT TO DIVIDE
063499,000701: 20,3403 50164 INDEX -SIGNAOS
063500,000702: 20,3404 54130 TS 1/ACOSTT +1 # 1/ACOASTPOS(NEG) = 1/ABS(AOS)
063501,000703: 20,3405 34733 CA 1/.03
063502,000704: 20,3406 50163 INDEX SIGNAOS
063503,000705: 20,3407 54127 TS 1/ACOSTT # 1/ACOASTNEG(POS) = 1/AMIN
063504,000706:
063505,000707: 20,3410 30162 CA ABSAOS
063506,000708: 20,3411 61533 AD 1JACCU
063507,000709: 20,3412 61533 AD 1JACCU # 2 JACC + ABS(AOS)
063508,000710: 20,3413 64743 AD BIT9 # MAXIMUM VALUE IN COMPUTATIONS
063509,000711: 20,3414 54000 TS A # TEST FOR OVERFLOW
063510,000712: 20,3415 13462 TCF SKIPDB2 # NO OVERFLOW, DO NORMAL COMPUTATION
063511,000713:
063512,000714: 20,3416 30162 CA ABSAOS # RESCALE TO PI TO PREVENT OVERFLOW
063513,000715: 20,3417 00006 EXTEND
063514,000716: 20,3420 74736 MP BIT14
063515,000717: 20,3421 61533 AD 1JACCU # 1 JACC AT PI/2 = 2JACC AT PI
063516,000718: 20,3422 54157 TS ANET # ANETPOS(NEG) MAX SCALED AT PI =
063517,000719: # ANETPOS(NEG) MAX/ACOASTNEG(POS) AT 2(7)
063518,000720: 20,3423 64744 AD BIT8 # 1 + ANETPOS/ACOASTNEG AT 2(7)
063519,000721: 20,3424 56157 XCH ANET # SAVE IN ANET, WHILE PICKING UP ANET
063520,000722: 20,3425 03704 TC INVERT
063521,000723: 20,3426 00006 EXTEND
![]() |
Page 1492 |
063523,000725: 20,3427 74736 MP BIT14 # SCALE 1/ANET AT 2(7)/PI
063524,000726: 20,3430 54160 TS 1/ANET
063525,000727:
063526,000728: 20,3431 33435 CA ACCHERE # SET UP RETURN FROM COMPUTATION ROUTINE
063527,000729: 20,3432 54161 TS ARET
063528,000730: 20,3433 44744 CS BIT8 # -1 AT 2(7)
063529,000731: 20,3434 13737 TCF DOACCFUN # FINISH ACCFUN COMPUTATION
063530,000732:
063531,000733: 20,3435 13467 ACCHERE TCF ACCTHERE
063532,000734:
063533,000735: 20,3436 54001 NOTMUCH TS L # ABS(AOS) LESS THAN AMIN, SAVE IN L
063534,000736: 20,3437 34733 CA 1/.03 # ACOASTPOS,NEG = AMIN
063535,000737: 20,3440 54127 TS 1/ACOSTT
063536,000738: 20,3441 54130 TS 1/ACOSTT +1
063537,000739:
063538,000740: 20,3442 10151 CCS FLATEMP
063539,000741: 20,3443 13462 TCF SKIPDB2 # DO NOT COMPUTE DB IF DRIFT OR GTS
063540,000742:
063541,000743: 20,3444 33771 CA .023R/S2 # .0228 RAD/SEC(2)
063542,000744: 20,3445 60001 AD L # L=ABS(AOS)-AMIN=ABS(AOS)-.0245RAD/SEC(2)
063543,000745: 20,3446 00006 EXTEND # RESULT IS ABS(AOS)-.0017 RAD/SEC(2)
063544,000746: 20,3447 63457 BZMF NOAOS # ABS(AOS) LESS THAN .0017 RAD/SEC(2)
063545,000747: 20,3450 30115 SOMEAOS CA DBVAL3 # .0017 RAD/SEC(2) LT ABS(AOS) LT AMIN
063546,000748: 20,3451 50164 INDEX -SIGNAOS
063547,000749: 20,3452 54146 TS DBB3 # DB3(4) = DB/2
063548,000750: 20,3453 60000 AD A
063549,000751: 20,3454 50163 INDEX SIGNAOS
063550,000752: 20,3455 54145 TS DBB4 # DB4(3) = DB
063551,000753: 20,3456 13462 TCF SKIPDB2
063552,000754:
063553,000755: 20,3457 31343 NOAOS CA DBVAL1
063554,000756: 20,3460 54146 TS DBB3 # DB3,4 = DB
063555,000757: 20,3461 54145 TS DBB4
063556,000758:
063557,000759: 20,3462 30162 SKIPDB2 CA ABSAOS # ANETPOS(NEG) MAX = 2 JACC + ABS(AOS)
063558,000760: 20,3463 61533 AD 1JACCU
063559,000761: 20,3464 61533 AD 1JACCU
063560,000762: 20,3465 54157 TS ANET # CONNOT OVERFLOW HERE
063561,000763: 20,3466 03730 CL1/NET+ TC DO1/NET+ # COMPUTE 1/ANET, ACCFUN
063562,000764:
063563,000765: 20,3467 50164 ACCTHERE INDEX -SIGNAOS
063564,000766: 20,3470 54134 TS Z5TEM +2 # STORE ACCFUN IN TEMPORARY BUFFER
063565,000767: 20,3471 30160 CA 1/ANET
063566,000768: 20,3472 50164 INDEX -SIGNAOS
063567,000769: 20,3473 54126 TS 1/ATEM2 +2 # STORE 1/ANET IN TEMPORARY BUFFER
063568,000770:
063569,000771: 20,3474 30162 CA ABSAOS # SEE IF OVERFLOW IN MIN CASE
063570,000772: 20,3475 61533 AD 1JACCU
063571,000773: 20,3476 64743 AD BIT9 # MAXIMUM POSSIBLE VALUE
![]() |
Page 1493 |
063573,000775: 20,3477 54000 TS A # OVERFLOW POSSIBLE BUT REMOTE
063574,000776: 20,3500 13502 TCF +2
063575,000777: 20,3501 34733 CA POSMAX # IF OVERFLOW, TRUNCATE TO PI/2
063576,000778: 20,3502 63770 AD -.03R/S2 # RESTORE TO CORRECT VALUE
063577,000779: 20,3503 54157 TS ANET
063578,000780: 20,3504 03730 TC DO1/NET+ # COMPUTE 1/ANET, ACCFUN
063579,000781:
063580,000782: 20,3505 50164 INDEX -SIGNAOS # STORE MIN VALUES JUST AS MAX VALUES
063581,000783: 20,3506 54132 TS Z5TEM
063582,000784: 20,3507 30160 CA 1/ANET
063583,000785: 20,3510 50164 INDEX -SIGNAOS
063584,000786: 20,3511 54124 TS 1/ATEM2
063585,000787:
063586,000788: 20,3512 40162 CS ABSAOS # NOW DO NEG(POS) CASES
063587,000789: 20,3513 61533 AD 1JACCU
063588,000790: 20,3514 61533 AD 1JACCU # ANETNEG(POS) MAX
063589,000791: 20,3515 03716 TC 1/ANET- # COMPUTE 1/ANET, ACCFUN, AND ACCSW
063590,000792: 20,3516 50163 INDEX SIGNAOS # STORE NEG(POS) VALUES JUST AS POS(NEG)
063591,000793: 20,3517 54133 TS Z1TEM +2
063592,000794: 20,3520 54001 TS L # SAVE IN L FOR POSSIBLE FUTURE USE
063593,000795: 20,3521 30160 CA 1/ANET
063594,000796: 20,3522 50163 INDEX SIGNAOS
063595,000797: 20,3523 54125 TS 1/ATEM1 +2
063596,000798: 20,3524 40162 CS ABSAOS
063597,000799: 20,3525 61533 AD 1JACCU # 1/ANETNEG(POS) MIN
063598,000800: 20,3526 54157 TS ANET
063599,000801: 20,3527 63770 AD -.03R/S2 # TEST FOR AMIN
063600,000802: 20,3530 00006 EXTEND # IF ANET LESS THAN AMIN, STORE MAX JET
063601,000803: 20,3531 63747 BZMF FIXMIN # VALUES FOR MIN JETS AND SET ACCSW
063602,000804:
063603,000805: 20,3532 03724 TC 1/NETMIN # OTHERWISE DO MIN JET COMPUTATIONS
063604,000806: 20,3533 50163 STMIN- INDEX SIGNAOS # STORE VALUES
063605,000807: 20,3534 54131 TS Z1TEM
063606,000808: 20,3535 30160 CA 1/ANET
063607,000809: 20,3536 50163 INDEX SIGNAOS
063608,000810: 20,3537 54123 TS 1/ATEM1
063609,000811:
063610,000812: 20,3540 50154 INDEX UV
063611,000813: 20,3541 33775 CA +UMASK
063612,000814: 20,3542 71257 MASK CH5MASK # TEST FOR +U (+V) JET FAILURES
063613,000815: 20,3543 00006 EXTEND
063614,000816: 20,3544 13551 BZF FAIL-
063615,000817: 20,3545 30124 CA 1/ATEM2 # REPLACE FUNCTION VALUES DEPENDING ON THE
063616,000818: 20,3546 54126 TS 1/ATEM2 +2 # FAILED JET PAIR WITH CORRESPONDING ONE-
063617,000819: 20,3547 30132 CA Z5TEM # JET (OR AMIN) FUNCTION VALUES
063618,000820: 20,3550 54134 TS Z5TEM +2
063619,000821: 20,3551 50154 FAIL- INDEX UV
063620,000822: 20,3552 33773 CA -UMASK
![]() |
Page 1494 |
063622,000824: 20,3553 71257 MASK CH5MASK # TEST FOR -U (-V) JET FAILURES
063623,000825: 20,3554 00006 EXTEND
063624,000826: 20,3555 13562 BZF DBFUN
063625,000827: 20,3556 30123 CA 1/ATEM1 # REPLACE FUNCTION VALUES DEPENDING ON THE
063626,000828: 20,3557 54125 TS 1/ATEM1 +2 # FAILED JET PAIR WITH CORRESPONDING ONE-
063627,000829: 20,3560 30131 CA Z1TEM # JET (OR AMIN) FUNCTION VALUES
063628,000830: 20,3561 54133 TS Z1TEM +2
063629,000831:
063630,000832: 20,3562 40146 DBFUN CS DBB3 # COMPUTE AXISDIST
063631,000833: 20,3563 60143 AD DBB1
063632,000834: 20,3564 60151 AD FLATEMP
063633,000835: 20,3565 54147 TS AXDSTEM
063634,000836: 20,3566 40145 CS DBB4
063635,000837: 20,3567 60144 AD DBB2
063636,000838: 20,3570 60151 AD FLATEMP
063637,000839: 20,3571 54150 TS AXDSTEM +1
063638,000840:
063639,000841: 20,3572 00004 INHINT
063640,000842: 20,3573 10154 CCS UV # TEST FOR U OR V AXIS
063641,000843: 20,3574 13616 TCF STORV # V AXIS STORE V VALUES
063642,000844:
063643,000845: 20,3575 30122 CA ACCSW # U AXIS STORE U VALUES
063644,000846: 20,3576 55546 TS ACCSWU
063645,000847:
063646,000848: 20,3577 34320 CA NINE # TRANSFER 10 WORDS VIA GENTRAN
063647,000849: 20,3600 05545 TC GENTRAN +1
063648,000850: 20,3601 00123 ADRES 1/ATEM1 # TEMPORARY BUFFER
063649,000851: 20,3602 01566 ADRES 1/ANET1 # THE REAL PLACE
063650,000852:
063651,000853: 20,3603 00003 RELINT
063652,000854: 20,3604 52144 DXCH DBB1 # SAVE U DBS FOR LATER STORING
063653,000855: 20,3605 52136 DXCH UDB1
063654,000856: 20,3606 52146 DXCH DBB4
063655,000857: 20,3607 52140 DXCH UDB4
063656,000858:
063657,000859: 20,3610 52150 DXCH AXDSTEM
063658,000860: 20,3611 52142 DXCH UAXDIST
063659,000861:
063660,000862: 20,3612 34753 CA ONE # NOW DO V AXIS
063661,000863: 20,3613 54154 TS UV
063662,000864: 20,3614 34755 CA ZERO
063663,000865: 20,3615 13324 TCF BOTHAXES # AND DO IT AGAIN
063664,000866:
063665,000867: 20,3616 30122 STORV CA ACCSW # STORE V AXIS VALUES
063666,000868: 20,3617 55547 TS ACCSWV
063667,000869: 20,3620 34320 CA NINE
063668,000870: 20,3621 05545 TC GENTRAN +1
063669,000871: 20,3622 00123 ADRES 1/ATEM1 # TEMPORARY BUFFER
![]() |
Page 1495 |
063671,000873: 20,3623 01606 ADRES 1/ANET1 +16D # THE REAL PLACE
063672,000874:
063673,000875: # NOW STORE DEADBANDS FOR ALL AXES
063674,000876: 20,3624 52152 DXCH FLATEMP # FLAT AND ZONE3LIM
063675,000877: 20,3625 53555 DXCH FLAT
063676,000878:
063677,000879: 20,3626 31343 CA DBVAL1 # COMPUTE P AXIS DEADBANDS
063678,000880: 20,3627 55560 TS PDB1
063679,000881: 20,3630 55561 TS PDB2
063680,000882: 20,3631 61554 AD FLAT
063681,000883: 20,3632 55563 TS PDB3
063682,000884: 20,3633 55562 TS PDB4
063683,000885: 20,3634 34755 CA ZERO
063684,000886: 20,3635 55564 TS PAXDIST
063685,000887: 20,3636 55565 TS PAXDIST +1
063686,000888:
063687,000889: 20,3637 11554 CCS FLAT
063688,000890: 20,3640 13656 TCF DRFDB # DRIFT OR GTS - COMPUTE DBS
063689,000891:
063690,000892: 20,3641 52136 DXCH UDB1 # STORE U DEADBANDS
063691,000893: 20,3642 53601 DXCH FIREDB # CANNOT USE GENTRAN BECAUSE OF RELINT
063692,000894: 20,3643 52140 DXCH UDB4
063693,000895: 20,3644 53603 DXCH COASTDB
063694,000896: 20,3645 52142 DXCH UAXDIST
063695,000897: 20,3646 53605 DXCH AXISDIST
063696,000898: 20,3647 52144 DXCH DBB1 # STORE V AXIS DEADBANDS
063697,000899: 20,3650 53621 DXCH FIREDB +16D # COULD USE GENTRAN IF DESIRED
063698,000900: 20,3651 52146 DXCH DBB4
063699,000901: 20,3652 53623 DXCH COASTDB +16D
063700,000902: 20,3653 52150 DXCH AXDSTEM
063701,000903: 20,3654 53625 DXCH AXISDIST +16D
063702,000904:
063703,000905: 20,3655 13676 TCF 1/ACCRET +1 # ALL DONE
063704,000906: 20,3656 31343 DRFDB CA DBVAL1 # DRIFT DEADBANDS
063705,000907: 20,3657 55600 TS FIREDB
063706,000908: 20,3660 55601 TS FIREDB +1
063707,000909: 20,3661 55620 TS FIREDB +16D
063708,000910: 20,3662 55621 TS FIREDB +17D
063709,000911: 20,3663 61554 AD FLAT
063710,000912: 20,3664 55602 TS COASTDB
063711,000913: 20,3665 55603 TS COASTDB +1
063712,000914: 20,3666 55622 TS COASTDB +16D
063713,000915: 20,3667 55623 TS COASTDB +17D
063714,000916: 20,3670 34755 CA ZERO
063715,000917: 20,3671 55604 TS AXISDIST
063716,000918: 20,3672 55605 TS AXISDIST +1
063717,000919: 20,3673 55624 TS AXISDIST +16D
063718,000920: 20,3674 55625 TS AXISDIST +17D
063719,000921:
063720,000922: 20,3675 00004 1/ACCRET INHINT
![]() |
Page 1496 |
063722,000924: 20,3676 40111 CS DAPBOOLS # SET BIT TO INDICATE DATA GOOD.
063723,000925: 20,3677 74751 MASK ACCSOKAY
063724,000926: 20,3700 26111 ADS DAPBOOLS
063725,000927: 20,3701 00003 RELINT
063726,000928: 20,3702 30117 CA ACCRETRN
063727,000929: 20,3703 04640 TC BANKJUMP # RETURN TO CALLER
063728,000930:
063729,000931: 20,3704 54165 INVERT TS HOLD # ROUTINE TO INVERT -INPUT AT PI/2
063730,000932: 20,3705 34743 CA BIT9 # 1 AT 2(6)
063731,000933: 20,3706 22007 ZL # ZERO L FOR ACCURACY AND TO PREVENT OVFLO
063732,000934: 20,3707 00006 EXTEND
063733,000935: 20,3710 10165 DV HOLD
063734,000936: 20,3711 00002 TC Q # RESULT AT 2(7)/PI
063735,000937:
063736,000938: 20,3712 34755 DOWNGTS CAF ZERO # ZERO SWITCHES WHEN USEQRJTS BIT IS UP
063737,000939: 20,3713 55502 TS ALLOWGTS # OR DAP IS OFF.
063738,000940: 20,3714 55632 TS INGTS
063739,000941: 20,3715 12777 TCF DOCKTEST
063740,000942:
063741,000943: 20,3716 22007 1/ANET- ZL
063742,000944: 20,3717 22122 LXCH ACCSW # ZERO ACCSW
063743,000945: 20,3720 54157 TS ANET # SAVE ANET
063744,000946: 20,3721 63770 AD -.03R/S2 # TEST FOR MIN VALUE
063745,000947: 20,3722 00006 EXTEND
063746,000948: 20,3723 63744 BZMF NETNEG # ANET LESS THAN AMIN, SO FAKE IT
063747,000949: 20,3724 30157 1/NETMIN CA ANET
063748,000950: 20,3725 00006 EXTEND
063749,000951: 20,3726 50164 INDEX -SIGNAOS
063750,000952: 20,3727 70130 MP 1/ACOSTT +1 # ANETNEG(POS)/ACOASTPOS(NEG) AT 2(6)
063751,000953:
063752,000954: # THE FOLLOWING CODING IS VALID FOR BOTH POS OR NEG
063753,000955: # VALUES OF AOS
063754,000956:
063755,000957: 20,3730 64743 DO1/NET+ AD BIT9 # 1 + ANET/ACOAST AT 2(6)
063756,000958: 20,3731 56157 XCH ANET # SAVE AND PICK UP ANET
063757,000959: 20,3732 00006 EXTEND
063758,000960: 20,3733 22161 QXCH ARET # SAVE RETURN
063759,000961: 20,3734 03704 TC INVERT
063760,000962: 20,3735 54160 TS 1/ANET # 1/ANET AT 2(7)/PI
063761,000963: 20,3736 44743 CS BIT9 # -1 AT 2(6)
063762,000964: 20,3737 00006 DOACCFUN EXTEND
063763,000965: 20,3740 70160 MP 1/ANET # -1/ANET AT 2(13)/PI
063764,000966: 20,3741 00006 EXTEND
063765,000967: 20,3742 10157 DV ANET # ACCFUN AT 2(7)/PI
063766,000968: 20,3743 00161 TC ARET # RETURN
063767,000969:
063768,000970: 20,3744 43770 NETNEG CS -.03R/S2 # ANET LESS THAN AMIN - SET EQUAL TO AMIN
063769,000971: 20,3745 54157 TS ANET
063770,000972: 20,3746 13725 TCF 1/NETMIN +1 # CONTINUE AS IF NOTHING HAPPENED
063771,000973:
![]() |
Page 1497 |
063773,000975: 20,3747 10163 FIXMIN CCS SIGNAOS
063774,000976: 20,3750 34752 CA TWO # IF AOS NEG, ACCSW = +1
063775,000977: 20,3751 67752 AD NEGONE # IF AOS POS, ACCSW = -1
063776,000978: 20,3752 54122 TS ACCSW
063777,000979: 20,3753 60154 AD UV # IF ACCSW = +1, TEST FOR +U (+V) JET FAIL
063778,000980: 20,3754 50000 INDEX A # IF ACCSW = -1, TEST FOR -U (-V) JET FAIL
063779,000981: 20,3755 33774 CA -UMASK +1
063780,000982: 20,3756 71257 MASK CH5MASK
063781,000983: 20,3757 00006 EXTEND
063782,000984: 20,3760 13764 BZF +4
063783,000985: 20,3761 43770 CS -.03R/S2 # JET FAILURE - CANNOT USE 2-JET VALUES
063784,000986: 20,3762 54157 TS ANET # ANET = AMIN
063785,000987: 20,3763 13532 TCF STMIN- -1 # CALCULATE FUNCTIONS USING AMIN
063786,000988: 20,3764 30001 CA L # L HAS ACCFUN
063787,000989: 20,3765 13533 TCF STMIN- # STORE MAX VALUES FOR MIN JETS
063788,000990:
063789,000991: # ERASABLE ASSIGNMENTS FOR 1/ACCONT
063790,000992:
063791,000993: 20,3766 E6,1550 1/ANETP EQUALS BLOCKTOP +2
063792,000994: 20,3766 E6,1552 1/ACOSTP EQUALS BLOCKTOP +4
063793,000995: 20,3766 E6,1556 PACCFUN EQUALS BLOCKTOP +8D
063794,000996: 20,3766 E6,1560 PDB1 EQUALS BLOCKTOP +10D
063795,000997: 20,3766 E6,1561 PDB2 EQUALS BLOCKTOP +11D
063796,000998: 20,3766 E6,1562 PDB4 EQUALS BLOCKTOP +12D
063797,000999: 20,3766 E6,1563 PDB3 EQUALS BLOCKTOP +13D
063798,001000: 20,3766 E6,1564 PAXDIST EQUALS BLOCKTOP +14D
063799,001001:
063800,001002: 20,3766 0122 ACCSW EQUALS VBUF # EXECUTIVE TEMPORARIES
063801,001003: # CANNOT DO CCS NEWJOB DURING 1/ACCS
063802,001004: 20,3766 0123 1/ATEM1 EQUALS ACCSW +1 # TEMP BUFFER FOR U AND V AXES
063803,001005: 20,3766 0124 1/ATEM2 EQUALS 1/ATEM1 +1
063804,001006: 20,3766 0127 1/ACOSTT EQUALS 1/ATEM1 +4
063805,001007: 20,3766 0131 Z1TEM EQUALS 1/ATEM1 +6
063806,001008: 20,3766 0132 Z5TEM EQUALS 1/ATEM1 +7
063807,001009:
063808,001010: 20,3766 0135 UDB1 EQUALS 1/ATEM1 +10D # UAXIS DEADBAND BUFFER
063809,001011: 20,3766 0136 UDB2 EQUALS 1/ATEM1 +11D
063810,001012: 20,3766 0137 UDB4 EQUALS 1/ATEM1 +12D
063811,001013: 20,3766 0140 UDB3 EQUALS 1/ATEM1 +13D
063812,001014: 20,3766 0141 UAXDIST EQUALS 1/ATEM1 +14D
063813,001015:
063814,001016: 20,3766 0143 DBB1 EQUALS 1/ATEM1 +16D # TEMP DEADBAND BUFFER, ALSO V AXIS
063815,001017: 20,3766 0144 DBB2 EQUALS 1/ATEM1 +17D
063816,001018: 20,3766 0145 DBB4 EQUALS 1/ATEM1 +18D
063817,001019: 20,3766 0146 DBB3 EQUALS 1/ATEM1 +19D
063818,001020: 20,3766 0147 AXDSTEM EQUALS 1/ATEM1 +20D
063819,001021:
063820,001022: 20,3766 0151 FLATEMP EQUALS 1/ATEM1 +22D
063821,001023: 20,3766 0152 Z3TEM EQUALS 1/ATEM1 +23D # MUST FOLLOW FLATEMP
![]() |
Page 1498 |
063823,001025: 20,3766 1343 DBVAL1 EQUALS DB
063824,001026: 20,3766 0114 DBVAL2 EQUALS INTB15+
063825,001027: 20,3766 0115 DBVAL3 EQUALS INTB15+ +1
063826,001028:
063827,001029: 20,3766 0116 DRIFTER EQUALS INTB15+ +2
063828,001030:
063829,001031: 20,3766 0154 UV EQUALS MPAC
063830,001032: 20,3766 0157 ANET EQUALS MPAC +3
063831,001033: 20,3766 0157 FUNTEM EQUALS MPAC +3
063832,001034: 20,3766 0160 1/ANET EQUALS MPAC +4
063833,001035: 20,3766 0161 ARET EQUALS MPAC +5
063834,001036: 20,3766 0162 ABSAOS EQUALS MPAC +6
063835,001037: 20,3766 0163 SIGNAOS EQUALS MPAC +7
063836,001038: 20,3766 0164 -SIGNAOS EQUALS MPAC +8D
063837,001039: 20,3766 0165 HOLD EQUALS MPAC +9D
063838,001040: 20,3766 0117 ACCRETRN EQUALS FIXLOC -1
063839,001041:
063840,001042: 20,3766 00110 ZONE3MAX DEC .004375 # 17.5 MS (35 MS FOR 1 JET) AT 4 SECONDS
063841,001043: 20,3767 00443 FLATVAL DEC .01778 # .8 AT PI/4 RAD
063842,001044: 20,3770 77377 -.03R/S2 OCT 77377 # -PI/2(7) AT PI/2
063843,001045:
063844,001046: 20,3771 00356 .023R/S2 OCT 00356 # .0228 RAD/SEC(2) AT PI/2
063845,001047: 20,3772 4733 1/.03 EQUALS POSMAX # 2(7)/PI AT 2(7)/PI
063846,001048:
063847,001049: 20,3772 02213 PAXISADR GENADR PAXIS
063848,001050:
063849,001051: # THE FOLLOWING 4 CONSTANTS ARE JET
063850,001052: # FAILURE MASKS AND ARE INDEXED
063851,001053: 20,3773 00110 -UMASK OCT 00110 # -U
063852,001054: 20,3774 00022 OCT 00022 # -V
063853,001055: 20,3775 00204 +UMASK OCT 00204 # +U
063854,001056: 20,3776 00041 OCT 00041 # +V
063855,001057:
End of include-file AOSTASK_AND_AOSJOB.agc. Parent file is MAIN.agc