Source Code
060590,000001: # Copyright: Public domain.
060591,000002: # Filename: P-AXIS_RCS_AUTOPILOT.agc
060592,000003: # Purpose: Part of the source code for Luminary 1A build 099.
060593,000004: # It is part of the source code for the Lunar Module's (LM)
060594,000005: # Apollo Guidance Computer (AGC), for Apollo 11.
060595,000006: # Assembler: yaYUL
060596,000007: # Contact: Ron Burkey <info@sandroid.org>.
060597,000008: # Website: www.ibiblio.org/apollo.
060598,000009: # Pages: 1421-1441
060599,000010: # Mod history: 2009-05-27 RSB Adapted from the corresponding
060600,000011: # Luminary131 file, using page
060601,000012: # images from Luminary 1A.
060602,000013: # 2009-06-05 RSB Corrected a relative jump from
060603,000014: # +8 to +8D.
060604,000015: # 2009-06-07 RSB Corrected a typo.
060605,000016: # 2011-01-06 JL Fixed pseudo-label indentation.
060606,000017: # 2011-01-06 JL Added missing comment characters.
060607,000018:
060608,000019: # This source code has been transcribed or otherwise adapted from
060609,000020: # digitized images of a hardcopy from the MIT Museum. The digitization
060610,000021: # was performed by Paul Fjeld, and arranged for by Deborah Douglas of
060611,000022: # the Museum. Many thanks to both. The images (with suitable reduction
060612,000023: # in storage size and consequent reduction in image quality as well) are
060613,000024: # available online at www.ibiblio.org/apollo. If for some reason you
060614,000025: # find that the images are illegible, contact me at info@sandroid.org
060615,000026: # about getting access to the (much) higher-quality images which Paul
060616,000027: # actually created.
060617,000028:
060618,000029: # Notations on the hardcopy document read, in part:
060619,000030:
060620,000031: # Assemble revision 001 of AGC program LMY99 by NASA 2021112-61
060621,000032: # 16:27 JULY 14, 1969
060622,000033:
060623,000034: # Page 1421
060624,000035: 16,2213 BANK 16
060625,000036: 16,2000 SETLOC DAPS1
060626,000037: 16,2000 BANK
060627,000038:
060628,000039: 16,2213 E6,1464 EBANK= PERROR
060629,000040: 16,2213 COUNT* $$/DAPP
060630,000041:
060631,000042: # THE FOLLOWING T5RUPT ENTRY BEGINS THE PROGRAM WHICH CONTROLS THE P-AXIS ACTION OF THE LEM USING THE RCS JETS.
060632,000043: # THE NOMINAL TIME BETWEEN THE P-AXIS RUPTS IS 100 MS IN ALL NON-IDLING MODES OF THE DAP.
060633,000044:
060634,000045: 16,2213 37727 PAXIS CA MS100
060635,000046: 16,2214 26030 ADS TIME5 # *** NECESSARY IN ORDER TO ALLOW
060636,000047: # SYNCHRONIZATION WITH OTHER INTERRUPTS ***
060637,000048:
060638,000049: 16,2215 22016 LXCH BANKRUPT # INTERRUPT LEAD IN (CONTINUED)
060639,000050: 16,2216 00006 EXTEND
060640,000051: 16,2217 22012 QXCH QRUPT
060641,000052:
060642,000053: # CHECK IF DAP PASS IS PERMISSIBLE
060643,000054:
060644,000055: 16,2220 11757 CCS DAPZRUPT # IF DAPZRUPT POSITIVE, DAP (JASK) IS
060645,000056: 16,2221 05634 TC BAILOUT # STILL IN PROGRESS AND A RESTART IS
060646,000057: 16,2222 02000 OCT 02000 # CALLED FOR. IT IS NEVER ZERO
060647,000058:
060648,000059: 16,2223 02000 TC CHEKBITS # RETURN IS TC I+1 IF DAP SHOULD STAY ON.
060649,000060:
060650,000061: 16,2224 30032 CA CDUX # READ AND STORE CDU'S
060651,000062: 16,2225 55750 TS DAPTREG4
060652,000063: 16,2226 30033 CA CDUY
060653,000064: 16,2227 55751 TS DAPTREG5
060654,000065: 16,2230 30034 CA CDUZ
060655,000066: 16,2231 55752 TS DAPTREG6
060656,000067:
060657,000068: # ***** KALCMANU-DAP AND "RATE-HOLD"-DAP INTERFACE *****
060658,000069:
060659,000070: # THE FOLLOWING SECTION IS EXECUTED EVERY 100 MS (10 TIMES A SECOND) WITHIN THE P-AXIS REACTION CONTROL SYSTEM
060660,000071: # AUTOPILOT (WHENEVER THE DAP IS IN OPERATION).
060661,000072:
060662,000073: 16,2232 31635 CA CDUXD
060663,000074: 16,2233 00006 EXTEND
060664,000075: 16,2234 21640 MSU DELCDUX
060665,000076: 16,2235 02256 TC 1STOTWOS
060666,000077: 16,2236 55635 TS CDUXD
060667,000078: 16,2237 31636 CA CDUYD
060668,000079: 16,2240 00006 EXTEND
060669,000080: 16,2241 21641 MSU DELCDUY
060670,000081: 16,2242 02256 TC 1STOTWOS
060671,000082: 16,2243 55636 TS CDUYD
060672,000083: 16,2244 31637 CA CDUZD
060673,000084: 16,2245 00006 EXTEND
060674,000085: 16,2246 21642 MSU DELCDUZ
060675,000086: # Page 1422
060676,000087: 16,2247 02256 TC 1STOTWOS
060677,000088: 16,2250 55637 TS CDUZD
060678,000089: 16,2251 00006 EXTEND # DIMINISH MANUAL CONTROL DIRECT RATE
060679,000090: 16,2252 27445 DIM TCP # TIME COUNTERS.
060680,000091: 16,2253 00006 EXTEND
060681,000092: 16,2254 27457 DIM TCQR
060682,000093:
060683,000094: # RATFLOOP COMPUTES JETRATEQ, JRATER, AND 1JACC*NO. PJEETS IN ITEMP1.
060684,000095: # RETURNS TO BACKP.
060685,000096:
060686,000097: # JETRATE = 1JACC*NO.PJETS*TJP (NOTE TJ IS THE TIME FIRED DURING CSP)
060687,000098: # JETRATEQ = 1JACCQ(TJU*NO.UJETS - TJV*NO.VJETS)
060688,000099: # JETRATER = 1JACCR(TJU*NO.UJETS + TJV*NO.VJETS)
060689,000100:
060690,000101: 16,2255 12647 TCF PAXFILT # PROCEEDS TO RATELOOP AFTER SUPERJOB
060691,000102: 16,2256 10000 1STOTWOS CCS A
060692,000103: 16,2257 64753 AD ONE
060693,000104: 16,2260 00002 TC Q
060694,000105: 16,2261 40000 CS A
060695,000106: 16,2262 00002 TC Q
060696,000107: 16,2263 00006 SUBDIVDE EXTEND # OVERFLOW PROTECTION ROUTINE TO GIVE
060697,000108: 16,2264 71741 MP DAPTEMP3 # POSMAX OR NEGMAX IF THE DIVIDE WOULD
060698,000109: 16,2265 21427 DAS OMEGAU # OVERFLOW
060699,000110:
060700,000111: 16,2266 00006 +3 EXTEND
060701,000112: 16,2267 31427 DCA OMEGAU
060702,000113: 16,2270 53744 DXCH DAPTEMP5
060703,000114: 16,2271 11426 CCS OMEGAU
060704,000115: 16,2272 12274 TCF +2
060705,000116: 16,2273 12304 TCF DIVIDER
060706,000117: 16,2274 62315 AD -OCT630
060707,000118: 16,2275 00006 EXTEND
060708,000119: 16,2276 62304 BZMF DIVIDER
060709,000120:
060710,000121: 16,2277 11426 CCS OMEGAU
060711,000122: 16,2300 34733 CA POSMAX # 45 DEG/SEC
060712,000123: 16,2301 00002 TC Q
060713,000124: 16,2302 44733 CS POSMAX
060714,000125: 16,2303 00002 TC Q
060715,000126:
060716,000127: 16,2304 53427 DIVIDER DXCH OMEGAU
060717,000128: 16,2305 00006 EXTEND
060718,000129: 16,2306 11750 DV DAPTREG4
060719,000130: 16,2307 00002 TC Q
060720,000131:
060721,000132: 16,2310 54007 OVERSUB TS 7 # RETURNS A UNCHANGED OR LIMITED TO
060722,000133: 16,2311 00002 TC Q # POSMAX OR NEGMAX IF A HAS OVERFLOW
060723,000134: 16,2312 50000 INDEX A
060724,000135: 16,2313 44734 CS BIT15 -1
060725,000136: # Page 1423
060726,000137: 16,2314 00002 TC Q
060727,000138:
060728,000139: 16,2315 77147 -OCT630 OCT 77147
060729,000140:
060730,000141: 16,2316 31737 BACKP CA DAPTEMP1
060731,000142: 16,2317 00006 EXTEND
060732,000143: 16,2320 71530 MP 1JACC
060733,000144: 16,2321 55745 TS JETRATE
060734,000145:
060735,000146: # BEGINNING OF THE RATE DERIVATION
060736,000147: # OMEGAP,Q,R BODY RATES SCALED AT PI/4
060737,000148: # TRAPEDP,Q,R BODY ANGLE ERRORS FROM PREDICTED ANGLE (PI/40)
060738,000149: # NP(QR)TRAPS NUMBER OF TIMES ANGLE ERROR HAS BEEN ACCUMULATED
060739,000150: # AOSQ(R)TERM CHANGE IN RATE DUE TO OFFSET ACCELERATION. (PI/4)
060740,000151: # JETRATE,Q,R CHANGE IN RATE DUE TO JET ACCELERATION. (PI/4)
060741,000152: # TRAPSIZE NEGATIVE LIMIT OF MAGNITUDE OF TRAPEDP, ETC.
060742,000153: # OMEGAU DP-TEMPORARY STORAGE
060743,000154: # OMEGA = OMEGA + JETRATE + AOSTERM (+TRAPED/NTRAPS IF TRAPED BIG)
060744,000155:
060745,000156: 16,2322 31750 CAE DAPTREG4 # CDUX IS STORED HERE
060746,000157: 16,2323 54001 TS L
060747,000158: 16,2324 00006 EXTEND
060748,000159: 16,2325 21440 MSU OLDXFORP # SCALED AT PI
060749,000160: 16,2326 23440 LXCH OLDXFORP
060750,000161: 16,2327 55737 TS DAPTEMP1
060751,000162: 16,2330 33620 CA 1/40
060752,000163: 16,2331 55750 TS DAPTREG4
060753,000164: 16,2332 41745 CS JETRATE
060754,000165: 16,2333 00006 EXTEND
060755,000166: 16,2334 74736 MP BIT14
060756,000167: 16,2335 27430 ADS TRAPEDP
060757,000168: 16,2336 31746 CA JETRATEQ
060758,000169: 16,2337 61545 AD AOSQTERM
060759,000170: 16,2340 00006 EXTEND
060760,000171: 16,2341 77736 MP -BIT14
060761,000172: 16,2342 27431 ADS TRAPEDQ
060762,000173: 16,2343 31747 CA JETRATER
060763,000174: 16,2344 61546 AD AOSRTERM
060764,000175: 16,2345 00006 EXTEND
060765,000176: 16,2346 77736 MP -BIT14
060766,000177: 16,2347 27432 ADS TRAPEDR
060767,000178:
060768,000179: 16,2350 31751 CA DAPTREG5 # CDUY IS STORED HERE
060769,000180: 16,2351 54001 TS L
060770,000181: 16,2352 00006 EXTEND
060771,000182: 16,2353 21441 MSU OLDYFORP # SCALED AT PI
060772,000183: 16,2354 23441 LXCH OLDYFORP
060773,000184: 16,2355 55740 TS DAPTEMP2
060774,000185: 16,2356 00006 EXTEND
060775,000186: 16,2357 71414 MP M11 # M11 SCALED AT 1
060776,000187: # Page 1424
060777,000188: 16,2360 61737 AD DAPTEMP1
060778,000189: 16,2361 53427 DXCH OMEGAU
060779,000190:
060780,000191: 16,2362 02266 TC SUBDIVDE +3 # RETURNS WITH CDU-RATE AT PI/4
060781,000192:
060782,000193: 16,2363 00006 EXTEND
060783,000194: 16,2364 61421 SU OMEGAP
060784,000195: 16,2365 27430 ADS TRAPEDP
060785,000196: 16,2366 02310 TC OVERSUB
060786,000197: 16,2367 55430 TS TRAPEDP
060787,000198: 16,2370 00006 EXTEND
060788,000199: 16,2371 31744 DCA DAPTEMP5
060789,000200: 16,2372 21447 DAS DXERROR
060790,000201: 16,2373 41454 CS PLAST
060791,000202: 16,2374 00006 EXTEND
060792,000203: 16,2375 73620 MP 1/40
060793,000204: 16,2376 21447 DAS DXERROR # MANUAL MODE X-ATTITUDE ERROR (DP)
060794,000205: 16,2377 31752 CA DAPTREG6 # CDUZ IS STORED HERE
060795,000206: 16,2400 54001 TS L
060796,000207: 16,2401 00006 EXTEND
060797,000208: 16,2402 21442 MSU OLDZFORQ
060798,000209: 16,2403 55741 TS DAPTEMP3
060799,000210: 16,2404 23442 LXCH OLDZFORQ
060800,000211: 16,2405 31415 CA M21
060801,000212: 16,2406 00006 EXTEND
060802,000213: 16,2407 71740 MP DAPTEMP2
060803,000214: 16,2410 53427 DXCH OMEGAU
060804,000215: 16,2411 31417 CA M22
060805,000216: 16,2412 02263 TC SUBDIVDE
060806,000217:
060807,000218: 16,2413 00006 EXTEND
060808,000219: 16,2414 61422 SU OMEGAQ
060809,000220: 16,2415 27431 ADS TRAPEDQ
060810,000221: 16,2416 02310 TC OVERSUB
060811,000222: 16,2417 55431 TS TRAPEDQ
060812,000223: 16,2420 00006 EXTEND
060813,000224: 16,2421 31744 DCA DAPTEMP5
060814,000225: 16,2422 21451 DAS DYERROR
060815,000226: 16,2423 41455 CS QLAST
060816,000227: 16,2424 00006 EXTEND
060817,000228: 16,2425 73620 MP 1/40
060818,000229: 16,2426 21451 DAS DYERROR # MANUAL MODE Y-ATTITUDE ERROR (DP)
060819,000230: 16,2427 31416 CA M31
060820,000231: 16,2430 00006 EXTEND
060821,000232: 16,2431 71740 MP DAPTEMP2
060822,000233: 16,2432 53427 DXCH OMEGAU
060823,000234: 16,2433 31420 CA M32
060824,000235:
060825,000236: 16,2434 02263 TC SUBDIVDE
060826,000237: # Page 1425
060827,000238: 16,2435 00006 EXTEND
060828,000239: 16,2436 61423 SU OMEGAR
060829,000240: 16,2437 27432 ADS TRAPEDR
060830,000241: 16,2440 02310 TC OVERSUB
060831,000242: 16,2441 55432 TS TRAPEDR # TRAPEDS HAVE ALL BEEN COMPUTED
060832,000243:
060833,000244: 16,2442 00006 EXTEND
060834,000245: 16,2443 31744 DCA DAPTEMP5
060835,000246: 16,2444 21453 DAS DZERROR
060836,000247: 16,2445 41456 CS RLAST
060837,000248: 16,2446 00006 EXTEND
060838,000249: 16,2447 73620 MP 1/40
060839,000250: 16,2450 21453 DAS DZERROR # MANUAL MODE Z-ATTITUDE ERROR (DP)
060840,000251: 16,2451 30111 CA DAPBOOLS # PICK UP PAD LOADED STATE ESTIMATOR GAINS
060841,000252: 16,2452 74737 MASK CSMDOCKD
060842,000253: 16,2453 00006 EXTEND
060843,000254: 16,2454 12462 BZF LMONLY
060844,000255: 16,2455 00006 EXTEND # DOCKED
060845,000256: 16,2456 31405 DCA DKOMEGAN
060846,000257: 16,2457 53751 DXCH DAPTREG4
060847,000258: 16,2460 31403 CA DKTRAP
060848,000259: 16,2461 12466 TCF +5
060849,000260: 16,2462 00006 LMONLY EXTEND # UNDOCKED
060850,000261: 16,2463 31410 DCA LMOMEGAN
060851,000262: 16,2464 53751 DXCH DAPTREG4
060852,000263: 16,2465 31406 CA LMTRAP
060853,000264: 16,2466 55752 +5 TS DAPTREG6
060854,000265: 16,2467 11430 CCS TRAPEDP
060855,000266: 16,2470 12472 TCF +2
060856,000267: 16,2471 12507 TCF SMALPDIF
060857,000268: 16,2472 61752 AD DAPTREG6 # TRAPSIZE > ABOUT 77001 %-1.4DEG/SEC"
060858,000269: 16,2473 00006 EXTEND
060859,000270: 16,2474 62507 BZMF SMALPDIF
060860,000271: 16,2475 22007 ZL
060861,000272: 16,2476 23430 LXCH TRAPEDP
060862,000273: 16,2477 34755 CA ZERO
060863,000274: 16,2500 00006 EXTEND
060864,000275: 16,2501 11433 DV NPTRAPS
060865,000276: 16,2502 27421 ADS OMEGAP
060866,000277: 16,2503 02310 TC OVERSUB
060867,000278: 16,2504 55421 TS OMEGAP
060868,000279: 16,2505 31750 CA DAPTREG4 # ABOUT 10 OR 0 FOR DOCKED OR UNDOCKED
060869,000280: 16,2506 55433 TS NPTRAPS
060870,000281: 16,2507 25433 SMALPDIF INCR NPTRAPS
060871,000282: 16,2510 31745 P-RATE CA JETRATE
060872,000283: 16,2511 27421 ADS OMEGAP
060873,000284: 16,2512 02310 TC OVERSUB
060874,000285: 16,2513 55421 TS OMEGAP
060875,000286:
060876,000287: 16,2514 11431 CCS TRAPEDQ
060877,000288: # Page 1426
060878,000289: 16,2515 12517 TCF +2
060879,000290: 16,2516 12544 TCF Q-RATE
060880,000291: 16,2517 61752 AD DAPTREG6 # TRAPSIZE > ABOUT 77001 %-1.4DEG/SEC"
060881,000292: 16,2520 00006 EXTEND
060882,000293: 16,2521 62544 BZMF Q-RATE
060883,000294: 16,2522 22007 ZL
060884,000295: 16,2523 23431 LXCH TRAPEDQ
060885,000296: 16,2524 34755 CA ZERO
060886,000297: 16,2525 00006 EXTEND
060887,000298: 16,2526 11434 DV NQTRAPS
060888,000299: 16,2527 55737 TS DAPTEMP1 # SAVE FOR OFFSET ESTIMATE
060889,000300: 16,2530 27422 ADS OMEGAQ
060890,000301: 16,2531 02310 TC OVERSUB
060891,000302: 16,2532 55422 TS OMEGAQ
060892,000303: 16,2533 31750 CA DAPTREG4 # ABOUT 10 OR 0 FOR DOCKED OR UNDOCKED
060893,000304: 16,2534 57434 XCH NQTRAPS
060894,000305: 16,2535 61751 AD DAPTREG5 # KAOS > ABOUT 60D %N/N_60"
060895,000306: 16,2536 57737 XCH DAPTEMP1
060896,000307: 16,2537 00006 EXTEND
060897,000308: 16,2540 74756 MP FIVE
060898,000309: 16,2541 00006 EXTEND
060899,000310: 16,2542 11737 DV DAPTEMP1
060900,000311: 16,2543 27537 ADS AOSQ
060901,000312: 16,2544 25434 Q-RATE INCR NQTRAPS
060902,000313: 16,2545 31746 CA JETRATEQ
060903,000314: 16,2546 61545 AD AOSQTERM
060904,000315: 16,2547 27422 ADS OMEGAQ
060905,000316: 16,2550 02310 TC OVERSUB
060906,000317: 16,2551 55422 TS OMEGAQ
060907,000318:
060908,000319: 16,2552 11432 CCS TRAPEDR
060909,000320: 16,2553 12555 TCF +2
060910,000321: 16,2554 12602 TCF R-RATE
060911,000322: 16,2555 61752 AD DAPTREG6 # TRAPSIZE > ABOUT 77001 %-1.4DEG/SEC"
060912,000323: 16,2556 00006 EXTEND
060913,000324: 16,2557 62602 BZMF R-RATE
060914,000325: 16,2560 22007 ZL
060915,000326: 16,2561 23432 LXCH TRAPEDR
060916,000327: 16,2562 34755 CA ZERO
060917,000328: 16,2563 00006 EXTEND
060918,000329: 16,2564 11435 DV NRTRAPS
060919,000330: 16,2565 55740 TS DAPTEMP2 # SAVE FOR OFFSET ESTIMATE
060920,000331: 16,2566 27423 ADS OMEGAR
060921,000332: 16,2567 02310 TC OVERSUB
060922,000333: 16,2570 55423 TS OMEGAR
060923,000334: 16,2571 31750 CA DAPTREG4 # ABOUT 10 OR 0 FOR DOCKED OR UNDOCKED
060924,000335: 16,2572 57435 XCH NRTRAPS
060925,000336: 16,2573 61751 AD DAPTREG5 # KAOS > ABOUT 60D %N/N_60"
060926,000337: 16,2574 57740 XCH DAPTEMP2
060927,000338: 16,2575 00006 EXTEND
060928,000339: # Page 1427
060929,000340: 16,2576 74756 MP FIVE
060930,000341: 16,2577 00006 EXTEND
060931,000342: 16,2600 11740 DV DAPTEMP2
060932,000343: 16,2601 27541 ADS AOSR
060933,000344: 16,2602 25435 R-RATE INCR NRTRAPS
060934,000345: 16,2603 31747 CA JETRATER
060935,000346: 16,2604 61546 AD AOSRTERM
060936,000347: 16,2605 27423 ADS OMEGAR
060937,000348: 16,2606 02310 TC OVERSUB
060938,000349: 16,2607 55423 TS OMEGAR
060939,000350:
060940,000351: # END OF RATE DERIVATION
060941,000352: # BEGIN OFFSET ESTIMATER
060942,000353: # IN POWERED FLIGHT, AOSTASK WILL BE CALLED EVERY 2 SECONDS.
060943,000354: # AOS = AOS + K*SUMRATE
060944,000355:
060945,000356: 16,2610 40111 CS DAPBOOLS
060946,000357: 16,2611 74744 MASK DRIFTBIT
060947,000358: 16,2612 10000 CCS A
060948,000359: 16,2613 12624 TCF WORKTIME
060949,000360: 16,2614 55424 TS ALPHAQ # ZERO THE OFFSET ACCELERATION VALUES.
060950,000361: 16,2615 55425 TS ALPHAR
060951,000362: 16,2616 55545 TS AOSQTERM
060952,000363: 16,2617 55546 TS AOSRTERM
060953,000364: 16,2620 55537 TS AOSQ
060954,000365: 16,2621 55541 TS AOSR
060955,000366: 16,2622 12667 TCF PRETIMCK
060956,000367: 16,2623 00074 KAOS DEC 60 B-14
060957,000368: 16,2624 31510 WORKTIME CA QACCDOT
060958,000369: 16,2625 00006 EXTEND
060959,000370: 16,2626 74766 MP CALLCODE # OCTAL 00032 IS DECIMAL .1 AT 2(6).
060960,000371: 16,2627 21540 DAS AOSQ
060961,000372: 16,2630 31537 CA AOSQ
060962,000373: 16,2631 55424 TS ALPHAQ
060963,000374: 16,2632 00006 EXTEND
060964,000375: 16,2633 73616 MP 200MS # .2 AT 1
060965,000376: 16,2634 55545 TS AOSQTERM
060966,000377: 16,2635 31512 CA RACCDOT
060967,000378: 16,2636 00006 EXTEND
060968,000379: 16,2637 74766 MP CALLCODE # OCTAL 00032 IS DECIMAL .1 AT 2(6).
060969,000380: 16,2640 21542 DAS AOSR
060970,000381: 16,2641 31541 CA AOSR
060971,000382: 16,2642 55425 TS ALPHAR
060972,000383: 16,2643 00006 EXTEND
060973,000384: 16,2644 73616 MP 200MS # .2 AT 1
060974,000385: 16,2645 55546 TS AOSRTERM
060975,000386: 16,2646 12667 TCF PRETIMCK
060976,000387:
060977,000388: # Page 1428
060978,000389: 16,2647 34747 PAXFILT CA CALLGMBL # EXECUTE ACDT+C12, IF NEEDED.
060979,000390: 16,2650 71273 MASK RCSFLAGS
060980,000391: 16,2651 10000 CCS A # CALLGMBL IS NOT BIT15, SO THIS TEST IS
060981,000392: 16,2652 03736 TC ACDT+C12 # VALID.
060982,000393:
060983,000394: 16,2653 52011 DXCH ARUPT
060984,000395: 16,2654 53754 DXCH DAPARUPT
060985,000396: 16,2655 32666 CA SUPERJOB # SETTING UP THE SUPERJOB
060986,000397: 16,2656 56017 XCH BRUPT
060987,000398: 16,2657 22012 LXCH QRUPT
060988,000399: 16,2660 53756 DXCH DAPBQRPT
060989,000400: 16,2661 32665 CA SUPERADR
060990,000401: 16,2662 52016 DXCH ZRUPT
060991,000402: 16,2663 53760 DXCH DAPZRUPT
060992,000403: 16,2664 15275 TCF NOQBRSM +1 # RELINT (JUST IN CASE) AND RESUME, IN THE
060993,000404: # FORM OF A JASK, AT SUPERJOB.
060994,000405:
060995,000406: 16,2665 02667 SUPERADR GENADR SUPERJOB +1
060996,000407:
060997,000408: # COUNT DOWN GIMBAL DRIVE TIMERS AND TURN OFF DRIVES IF REQUIRED.
060998,000409:
060999,000410: 16,2666 13641 SUPERJOB TCF RATELOOP
061000,000411: 16,2667 11632 PRETIMCK CCS QGIMTIMR
061001,000412: 16,2670 12710 TCF DECQTIMR # POSITIVE -- COUNTING DOWN
061002,000413: 16,2671 12714 TCF TURNOFFQ # NEGATIVE -- DRIVE SHOULD BE ENDED
061003,000414: 16,2672 11634 CHKRTIMR CCS RGIMTIMR # NEGATIVE -- INACTIVE
061004,000415: 16,2673 12712 TCF DECRTIMR # (NEG ZERO -- IMPOSSIBLE)
061005,000416: 16,2674 12724 TCF TURNOFFR # REPEATED (ABOVE) FOR R AXIS.
061006,000417:
061007,000418: 16,2675 00006 EXTEND # DECREMENT DOCKED JET INHIBITION COUNTERS
061008,000419: 16,2676 27767 DIM PJETCTR
061009,000420: 16,2677 00006 EXTEND
061010,000421: 16,2700 27770 DIM UJETCTR
061011,000422: 16,2701 00006 EXTEND
061012,000423: 16,2702 27771 DIM VJETCTR
061013,000424: 16,2703 34740 CA BIT12
061014,000425: 16,2704 71273 MASK RCSFLAGS
061015,000426: 16,2705 00006 EXTEND
061016,000427: 16,2706 12734 BZF SKIPPAXS
061017,000428: 16,2707 02740 TC CHKVISFZ
061018,000429: 16,2710 55632 DECQTIMR TS QGIMTIMR # COUNT TIMERS DOWN TO POS ZERO.
061019,000430: 16,2711 12672 TCF CHKRTIMR
061020,000431: 16,2712 55634 DECRTIMR TS RGIMTIMR
061021,000432: 16,2713 12675 TCF CHKRTIMR +3
061022,000433:
061023,000434: 16,2714 55501 TURNOFFQ TS NEGUQ # HALT DRIVES.
061024,000435: 16,2715 55510 TS QACCDOT
061025,000436: 16,2716 45007 CS QGIMBITS
061026,000437: 16,2717 00006 EXTEND
061027,000438: # Page 1429
061028,000439: 16,2720 03012 WAND CHAN12
061029,000440: 16,2721 34735 CAF NEGMAX
061030,000441: 16,2722 55632 TS QGIMTIMR
061031,000442: 16,2723 12672 TCF CHKRTIMR
061032,000443: 16,2724 55503 TURNOFFR TS NEGUR
061033,000444: 16,2725 55512 TS RACCDOT
061034,000445: 16,2726 45020 CS RGIMBITS
061035,000446: 16,2727 00006 EXTEND
061036,000447: 16,2730 03012 WAND CHAN12
061037,000448: 16,2731 34735 CAF NEGMAX
061038,000449: 16,2732 55634 TS RGIMTIMR
061039,000450: 16,2733 12675 TCF CHKRTIMR +3
061040,000451: 16,2734 5007 QGIMBITS EQUALS OCT1400 # BITS 9 AND 10 (OF CHANNEL 12).
061041,000452: 16,2734 5020 RGIMBITS EQUALS PRIO6 # BITS 11 AND 12 (OF CHANNEL 12).
061042,000453:
061043,000454: 16,2734 41273 SKIPPAXS CS RCSFLAGS
061044,000455: 16,2735 74740 MASK BIT12
061045,000456: 16,2736 27273 ADS RCSFLAGS # BIT 12 SET TO 1.
061046,000457: 16,2737 13624 TCF QRAXIS # GO TO QRAXIS OR TO CTS.
061047,000458:
061048,000459: # Y-X TRANSLATION
061049,000460:
061050,000461: # INPUT: BITS 9-12 OF CH31 (FROM TRANSLATION CONTROLLER)
061051,000462:
061052,000463: # OUTPUT: NEXTP
061053,000464:
061054,000465: # NEXTP IS THE CHANNEL 6 CODE OF JETS FOR THE DESIRED TRANSLATION.
061055,000466: # IF THERE ARE FAILURES IN THE DESIRED POLICY, THEN
061056,000467: # (1) FOR DIAGONAL TRANS: UNFAILED PAIR
061057,000468: # ALARM (IF NO PAIR)
061058,000469: # (2) FOR PRINCIPAL TRANS: TRY TO TACK WITH DIAGONAL PAIRS
061059,000470: # ALARM (IF DIAGONAL PAIRS ARE FAILED)
061060,000471:
061061,000472: 16,2740 00006 CHKVISFZ EXTEND
061062,000473: 16,2741 00031 READ CHAN31
061063,000474: 16,2742 40000 CS A
061064,000475: 16,2743 73613 MASK 07400OCT
061065,000476: 16,2744 00006 EXTEND
061066,000477: 16,2745 13014 BZF TSNEXTP
061067,000478: 16,2746 00006 EXTEND
061068,000479: 16,2747 74745 MP BIT7
061069,000480: 16,2750 50000 INDEX A
061070,000481: 16,2751 33572 CA INDXYZ
061071,000482: 16,2752 55744 TS ROTINDEX
061072,000483: 16,2753 36242 TRYUORV CA SIX
061073,000484: 16,2754 03551 TC SELECTYZ
061074,000485: 16,2755 46242 CS SIX
061075,000486: 16,2756 61743 AD NUMBERT
061076,000487: 16,2757 00006 EXTEND
061077,000488: # Page 1430
061078,000489: 16,2760 13013 BZF TSNEXTP -1
061079,000490: 16,2761 44756 CS FIVE
061080,000491: 16,2762 61744 AD ROTINDEX
061081,000492: 16,2763 00006 EXTEND
061082,000493: 16,2764 63002 BZMF ALTERYZ
061083,000494: 16,2765 41743 CS NUMBERT
061084,000495: 16,2766 64751 AD FOUR
061085,000496: 16,2767 00006 EXTEND
061086,000497: 16,2770 63013 BZMF TSNEXTP -1
061087,000498: 16,2771 05567 ABORTYZ TC ALARM
061088,000499: 16,2772 02001 OCT 02001
061089,000500: 16,2773 34753 CA BIT1 # INVERT BIT 1 OF RCSFLAGS.
061090,000501: 16,2774 23273 LXCH RCSFLAGS
061091,000502: 16,2775 00006 EXTEND
061092,000503: 16,2776 06001 RXOR 1
061093,000504: 16,2777 55273 TS RCSFLAGS
061094,000505: 16,3000 34755 CA ZERO
061095,000506: 16,3001 13014 TCF TSNEXTP
061096,000507: 16,3002 34753 ALTERYZ CA BIT1 # INVERT BIT 1 OF RCSFLAGS.
061097,000508: 16,3003 23273 LXCH RCSFLAGS
061098,000509: 16,3004 00006 EXTEND
061099,000510: 16,3005 06001 RXOR 1
061100,000511: 16,3006 55273 TS RCSFLAGS
061101,000512: 16,3007 74753 MASK BIT1
061102,000513: 16,3010 64751 AD FOUR
061103,000514: 16,3011 27744 ADS ROTINDEX
061104,000515: 16,3012 12753 TCF TRYUORV
061105,000516: 16,3013 31741 CA POLYTEMP
061106,000517: 16,3014 55472 TSNEXTP TS NEXTP
061107,000518:
061108,000519: # STATE LOGIC
061109,000520: # CHECK IN ORDER: IF ON
061110,000521: # LPDPHASE GO TO PURGENCY
061111,000522: # PULSES MINIMUM PULSE LOTIC
061112,000523: # DETENT(BIT15 CH31) RATE COMMAND
061113,000524: # GOTO TO PURGENCY
061114,000525:
061115,000526: 16,3015 34737 CA BIT13 # CHECK STICK IF IN ATT. HOLD.
061116,000527: 16,3016 00006 EXTEND
061117,000528: 16,3017 02031 RAND CHAN31
061118,000529: 16,3020 00006 EXTEND
061119,000530: 16,3021 13027 BZF MANMODE
061120,000531:
061121,000532: 16,3022 30111 CA DAPBOOLS
061122,000533: 16,3023 74743 MASK XOVINHIB
061123,000534: 16,3024 10000 CCS A
061124,000535: 16,3025 13463 TCF PURGENCY # ATTITUDE STEER DURING VISIBILITY PHASE
061125,000536:
061126,000537: 16,3026 13071 TCF DETENTCK
061127,000538: 16,3027 34735 MANMODE CA PULSES # PULSES IS ONE FOR PULSE MODE
061128,000539: 16,3030 70111 MASK DAPBOOLS
061129,000540: # Page 1431
061130,000541: 16,3031 00006 EXTEND
061131,000542: 16,3032 13071 BZF DETENTCK # BRANCH FOR RATE COMMAND
061132,000543:
061133,000544: 16,3033 34755 CA ZERO
061134,000545: 16,3034 55464 TS PERROR
061135,000546:
061136,000547: # MINIMUM IMPULSE MODE
061137,000548:
061138,000549: 16,3035 30032 CA CDUX
061139,000550: 16,3036 55635 TS CDUXD
061140,000551:
061141,000552: 16,3037 11460 CCS OLDPMIN
061142,000553: 16,3040 13054 TCF CHECKP
061143,000554:
061144,000555: 16,3041 34751 FIREP CA BIT3
061145,000556: 16,3042 00006 EXTEND
061146,000557: 16,3043 02031 RAND CHAN31
061147,000558: 16,3044 00006 EXTEND
061148,000559: 16,3045 13064 BZF +XMIN
061149,000560:
061150,000561: 16,3046 34750 CA BIT4
061151,000562: 16,3047 00006 EXTEND
061152,000563: 16,3050 02031 RAND CHAN31
061153,000564: 16,3051 00006 EXTEND
061154,000565: 16,3052 13062 BZF -XMIN
061155,000566:
061156,000567: 16,3053 13442 TCF JETSOFF
061157,000568:
061158,000569: 16,3054 00006 CHECKP EXTEND
061159,000570: 16,3055 00031 READ CHAN31
061160,000571: 16,3056 40000 CS A
061161,000572: 16,3057 75751 MASK OCT14
061162,000573: 16,3060 55460 TS OLDPMIN
061163,000574: 16,3061 13442 TCF JETSOFF
061164,000575:
061165,000576: 16,3062 44363 -XMIN CS TEN # ANYTHING LESS THAN 14MS. CORRECTED
061166,000577: 16,3063 13065 TCF +2 # IN JET SELECTION ROUTINE
061167,000578: 16,3064 34363 +XMIN CA TEN
061168,000579: 16,3065 55524 TS TJP
061169,000580: 16,3066 34753 CA ONE
061170,000581: 16,3067 55460 TS OLDPMIN
061171,000582: 16,3070 13350 TCF PJETSLEC -6
061172,000583:
061173,000584: # MANUAL RATE COMMAND MODE
061174,000585: # ========================
061175,000586: # BY ROBERT F. STENGEL
061176,000587:
061177,000588: # THIS MODE PROVIDES RCAH MANUAL CONTROL THRU 2 CONTROL LAWS: 1) DIRECT RATE AND 2) PSEUDO-AUTO.
061178,000589: # THE DIRECT RATE MODE AFFORDS IMMEDIATE CONTROL WITHOUT OVERSHOOT. THE PSEUDO-AUTO MODE PROVIDES PRECISE
061179,000590: # RATE CONTROL AND ATTITUDE HOLD.
061180,000591:
061181,000592: # Page 1432
061182,000593: # IN DIRECT RATE, JETS ARE FIRED WHEN STICK POSITION CHANGES BY A FIXED NUMBER OF INCREMENTS IN ONE DAP CYCLE.
061183,000594: # THE `BREAKOUT LEVEL' IS .6 D/S FOR LM-ONLY AND .3 D/S FOR CSM-DOCKED. THIS LAW NULLS THE RATE ERROR TO WITHIN
061184,000595: # THE `TARGET DEADBAND', WHICH EQUALS THE BREAKOUT LEVEL.
061185,000596:
061186,000597: # IN PSEUDO-AUTO, BODY-FIXED RATE AND ATTITUDE ERRORS ARE SUPPLIED TO TJETLAW, WHICH EXERCISES CONTROL.
061187,000598: # CONTROL SWITCHES FROM DIRECT RATE TO PSEUDO-AUTO IF THE TARGET DB IS ACHIEVED OR IF TIME IN (1) EXCEEDS 4 SEC.
061188,000599: # IF THE INITIAL COMMAND DOES NOT EXCEED THE BREAKOUT LEVEL, CONTROL GOES TO PSEUDO-AUTO IMMEDIATELY.
061189,000600:
061190,000601: # SINCE P-AXIS CONTROL IS SEPARATE FROM Q,R AXES CONTROL, IT IS POSSIBLE TO USE (1) IN P-AXIS AND (2) IN Q,R AXES,
061191,000602: # OR VICE VERSA. THIS ALLOWS A DEGREE OF ATTITUDE HOLD IN UNCONTROLLED AXES. DUE TO U,V CONTROL, HOWEVER, Q AND
061192,000603: # R AXES ARE COUPLED AND MUST USE THE SAME CONTROL LAW.
061193,000604:
061194,000605: # HAND CONTROLLER COMMANDS ARE SCALED BY A LINEAR/QUADRATIC LAW. FOR THE LM-ALONE, MAXIMUM COMMANDED RATES ARE 20
061195,000606: # AND 4 D/S IN NORMAL AND FINE SCALING; HOWEVER, STICK SENSITIVITY AT ZERO COUNTS (OBTAINED AT A STICK DEFLECTION
061196,000607: # OF 2 DEGREES FROM THE CENTERED POSITION) IS .5 OR .1 D/S PER DEGREE. NORMAL AND FINE SCALINGS FOR THE CSM-DOCKED
061197,000608: # CASE IS AUTOMATICALLY SET TO 1/10 THE ABOVE VALUES. SCALING IS DETERMINED IN ROUTINE 3.
061198,000609:
061199,000610: # ZEROENBL ENABLES COUNTERS SO THEY CAN BE READ NEXT TIME
061200,000611: # JUSTOUT FIRST DETECTION OF OUT OF DETENT (BY OURRCBIT)
061201,000612:
061202,000613: 16,3071 00006 DETENTCK EXTEND
061203,000614: 16,3072 00031 READ CHAN31
061204,000615: 16,3073 55443 TS CH31TEMP
061205,000616: 16,3074 74735 MASK BIT15 # CHECK OUT-OF-DETENT BIT.
061206,000617: 16,3075 00006 EXTEND
061207,000618: 16,3076 13223 BZF RHCMOVED # BRANCH IF OUT OF DETENT.
061208,000619: 16,3077 34740 CAF OURRCBIT # IN DETENT. CHECK THE RATE COMMAND BIT.
061209,000620: 16,3100 70111 MASK DAPBOOLS
061210,000621: 16,3101 00006 EXTEND
061211,000622: 16,3102 13463 BZF PURGENCY # BRANCH IF NOT IN RATE COMMAND LAST PASS.
061212,000623:
061213,000624: # ................................................................................
061214,000625:
061215,000626: 16,3103 34743 CA BIT9 # JUST IN DETENT??
061216,000627: 16,3104 71273 MASK RCSFLAGS
061217,000628: 16,3105 00006 EXTEND
061218,000629: 16,3106 13120 BZF RUTH
061219,000630: 16,3107 34737 CAF BIT13 # CHECK FOR ATTITUDE HOLD.
061220,000631: 16,3110 00006 EXTEND
061221,000632: 16,3111 02031 RAND CHAN31
061222,000633: 16,3112 00006 EXTEND
061223,000634: 16,3113 13220 BZF RATEDAMP # BRANCH IF IN ATTITUDE HOLD.
061224,000635:
061225,000636: 16,3114 45014 CS BITS9,11 # IN AUTO.
061226,000637: 16,3115 71273 MASK RCSFLAGS # (X-AXIS OVERRIDE)
061227,000638: 16,3116 55273 TS RCSFLAGS # ZERO ORBIT (BIT 11) AND JUST-IN BIT (9).
061228,000639: 16,3117 13220 TCF RATEDAMP
061229,000640:
061230,000641: 16,3120 31273 RUTH CA RCSFLAGS
061231,000642: 16,3121 74742 MASK PBIT # IN ATTITUDE HOLD.
061232,000643: 16,3122 00006 EXTEND
061233,000644: 16,3123 13125 BZF +2 # BRANCH IF P-RATE DAMPING IS FINISHED.
061234,000645: 16,3124 13220 TCF RATEDAMP
061235,000646:
061236,000647: # Page 1433
061237,000648: 16,3125 31273 CA RCSFLAGS
061238,000649: 16,3126 74741 MASK QRBIT
061239,000650: 16,3127 00006 EXTEND
061240,000651: 16,3130 13136 BZF RATEDONE # BRANCH IF Q,R RATE DAMPING IS FINISHED.
061241,000652: 16,3131 13220 TCF RATEDAMP
061242,000653:
061243,000654: # ============================================
061244,000655:
061245,000656: 16,3132 00001 1/10SEC OCT 1
061246,000657: 16,3133 00050 40CYC OCT 50
061247,000658: 16,3134 74777 PQRBIT OCT 74777
061248,000659: 16,3135 5014 BITS9,11 EQUALS EBANK5
061249,000660: 16,3135 00056 LINRATP DEC 46 B-14
061250,000661:
061251,000662: # ============================================
061252,000663:
061253,000664: 16,3136 44740 RATEDONE CS OURRCBIT # MANUAL COMMAND AND DAMPING COMPLETED IN
061254,000665: 16,3137 00004 INHINT # ALL AXES.
061255,000666: 16,3140 70111 MASK DAPBOOLS
061256,000667: 16,3141 54111 TS DAPBOOLS
061257,000668:
061258,000669: # READ CDUS INTO CDU DESIRED REGISTERS
061259,000670:
061260,000671: 16,3142 34737 CAF BIT13
061261,000672: 16,3143 00006 EXTEND
061262,000673: 16,3144 02031 RAND CHAN31
061263,000674: 16,3145 00006 EXTEND
061264,000675: 16,3146 13152 BZF +4
061265,000676: 16,3147 30032 CA CDUX # (X-AXIS OVERRIDE)
061266,000677: 16,3150 55635 TS CDUXD
061267,000678: 16,3151 03154 TC +3
061268,000679: 16,3152 04674 TC IBNKCALL
061269,000680: 16,3153 40153 FCADR ZATTEROR
061270,000681: 16,3154 00003 RELINT
061271,000682: 16,3155 13463 TCF PURGENCY
061272,000683:
061273,000684: 16,3156 55464 TS PERROR
061274,000685: 16,3157 34740 JUSTOUT CA OURRCBIT # INITIALIZATION -- FIRST MANUAL PASS.
061275,000686: 16,3160 26111 ADS DAPBOOLS
061276,000687: 16,3161 34755 CA ZERO
061277,000688: 16,3162 55446 TS DXERROR
061278,000689: 16,3163 55447 TS DXERROR +1
061279,000690: 16,3164 55450 TS DYERROR
061280,000691: 16,3165 55451 TS DYERROR +1
061281,000692: 16,3166 55452 TS DZERROR
061282,000693: 16,3167 55453 TS DZERROR +1
061283,000694: 16,3170 55454 TS PLAST
061284,000695: 16,3171 55455 TS QLAST
061285,000696: 16,3172 55456 TS RLAST
061286,000697: 16,3173 54042 TS Q-RHCCTR
061287,000698: 16,3174 54044 TS R-RHCCTR
061288,000699: 16,3175 33134 CA PQRBIT
061289,000700: 16,3176 71273 MASK RCSFLAGS
061290,000701: 16,3177 55273 TS RCSFLAGS # BITS 10 AND 11 OF RCSFLAGS ARE 0.
061291,000702: # Page 1434
061292,000703: 16,3200 41273 CS RCSFLAGS # SET 'JUST-IN' BIT TO 1.
061293,000704: 16,3201 74743 MASK BIT9
061294,000705: 16,3202 27273 ADS RCSFLAGS
061295,000706: 16,3203 03205 TC ZEROENBL
061296,000707: 16,3204 13442 TCF JETSOFF
061297,000708: 16,3205 22044 ZEROENBL LXCH R-RHCCTR
061298,000709: 16,3206 30042 CA Q-RHCCTR
061299,000710: 16,3207 53463 DXCH SAVEHAND
061300,000711: 16,3210 34755 CA ZERO
061301,000712: 16,3211 54043 TS P-RHCCTR
061302,000713: 16,3212 54042 TS Q-RHCCTR
061303,000714: 16,3213 54044 TS R-RHCCTR
061304,000715: 16,3214 33617 CA BITS8,9
061305,000716: 16,3215 00006 EXTEND
061306,000717: 16,3216 05013 WOR CHAN13 # COUNTERS ZEROED AND ENABLED
061307,000718: 16,3217 00002 TC Q
061308,000719: 16,3220 34755 RATEDAMP CA ZERO
061309,000720: 16,3221 54043 TS P-RHCCTR
061310,000721: 16,3222 13227 TCF RATERROR
061311,000722:
061312,000723: 16,3223 34740 RHCMOVED CA OURRCBIT # P CONTROL
061313,000724: 16,3224 70111 MASK DAPBOOLS
061314,000725: 16,3225 00006 EXTEND
061315,000726: 16,3226 13156 BZF JUSTOUT -1
061316,000727: 16,3227 30032 RATERROR CA CDUX # FINDCDUW REQUIRES THAT CDUXD=CDUX DURING
061317,000728: 16,3230 55635 TS CDUXD # X-AXIS OVERRIDE
061318,000729: 16,3231 10043 CCS P-RHCCTR
061319,000730: 16,3232 13235 TCF +3
061320,000731: 16,3233 13235 TCF +2
061321,000732: 16,3234 13235 TCF +1
061322,000733: 16,3235 60000 DOUBLE # LINEAR/QUADRATIC CONTROLLER SCALING
061323,000734: 16,3236 60000 DOUBLE # (SEE EXPLANATION OF Q,R-AXES RCS
061324,000735: 16,3237 63135 AD LINRATP # AUTOPILOT)
061325,000736: 16,3240 00006 EXTEND
061326,000737: 16,3241 70043 MP P-RHCCTR
061327,000738: 16,3242 30001 CA L
061328,000739: 16,3243 00006 EXTEND
061329,000740: 16,3244 71444 MP STIKSENS
061330,000741: 16,3245 57454 XCH PLAST
061331,000742: 16,3246 40000 COM
061332,000743: 16,3247 61454 AD PLAST
061333,000744: 16,3250 55737 TS DAPTEMP1
061334,000745: 16,3251 03205 TC ZEROENBL # INTERVAL. ZERO AND ENABLE ACA COUNTERS.
061335,000746: 16,3252 41454 CS PLAST
061336,000747: 16,3253 61421 AD OMEGAP
061337,000748: 16,3254 55427 TS EDOTP
061338,000749: 16,3255 11737 CCS DAPTEMP1 # IF P COMMAND CHANGE EXCEEDS BREAKOUT
061339,000750: 16,3256 13261 TCF +3 # LEVEL, GO TO DIRECT RATE CONTROL. IF NOT
061340,000751: 16,3257 13267 TCF +8D # CHECK FOR DIRECT RATE CONTROL LAST TIME.
061341,000752: 16,3260 13261 TCF +1
061342,000753: # Page 1435
061343,000754: 16,3261 61476 AD -RATEDB
061344,000755: 16,3262 00006 EXTEND
061345,000756: 16,3263 63267 BZMF +4
061346,000757: 16,3264 33133 CA 40CYC
061347,000758: 16,3265 55445 TS TCP
061348,000759: 16,3266 03300 TC PEGI
061349,000760: 16,3267 31273 CA RCSFLAGS # CHECK FOR DIRECT RATE COMMAND LAST TIME.
061350,000761: 16,3270 74742 MASK PBIT
061351,000762: 16,3271 00006 EXTEND
061352,000763: 16,3272 13274 BZF +2
061353,000764: 16,3273 03300 TC PEGI # TO PURE RATE COMMAND
061354,000765: 16,3274 31446 CA DXERROR # PSEUDO-AUTO CONTROL.
061355,000766: 16,3275 55752 TS E # X-ATTITUDE ERROR (SP)
061356,000767: 16,3276 55464 TS PERROR # LOAD P-AXIS ERROR FOR MODE1 FDAI DISPLAY
061357,000768: 16,3277 03467 TC PURGENCY +4
061358,000769: 16,3300 30032 PEGI CA CDUX # DIRECT RATE CONTROL.
061359,000770: 16,3301 55635 TS CDUXD
061360,000771: 16,3302 34755 CA ZERO
061361,000772: 16,3303 55446 TS DXERROR
061362,000773: 16,3304 55447 TS DXERROR +1
061363,000774: 16,3305 55464 TS PERROR # ZERO P-AXIS ERROR FOR MODE1 FDAI DISPLAY
061364,000775: 16,3306 11427 CCS EDOTP
061365,000776: 16,3307 03312 TC +3
061366,000777: 16,3310 03312 TC +2
061367,000778: 16,3311 03312 TC +1
061368,000779: 16,3312 55737 TS ABSEDOTP
061369,000780: 16,3313 61476 AD TARGETDB
061370,000781: 16,3314 00006 EXTEND # IF RATE ERROR IS LESS THAN DEADBANK,
061371,000782: 16,3315 63325 BZMF LAST # FIRE, AN SWITCH TO PSEUDO-AUTO.
061372,000783: 16,3316 31445 CA TCP
061373,000784: 16,3317 00006 EXTEND # IF TIME IN RATE COMMAND EXCEEDS 4 SEC.
061374,000785: 16,3320 63325 BZMF LAST
061375,000786: 16,3321 41273 CS RCSFLAGS
061376,000787: 16,3322 74742 MASK PBIT
061377,000788: 16,3323 27273 ADS RCSFLAGS # BIT 10 IS 1.
061378,000789: 16,3324 13330 TCF +4
061379,000790: 16,3325 44742 LAST CS PBIT
061380,000791: 16,3326 71273 MASK RCSFLAGS
061381,000792: 16,3327 55273 TS RCSFLAGS # BIT 10 IS 0.
061382,000793: 16,3330 41427 CS EDOTP
061383,000794: 16,3331 00006 EXTEND
061384,000795: 16,3332 71551 MP 1/ANETP # 1/2JTACC SCALED AT 2EXP(7)/PI
061385,000796: 16,3333 20001 DAS A
061386,000797: 16,3334 02310 TC OVERSUB
061387,000798: 16,3335 00006 EXTEND
061388,000799: 16,3336 77716 MP 25/32 # A CONTAINS TJET SCALED AT 2EXP(4)(16/25)
061389,000800: 16,3337 55524 TS TJP # 4.JET TIME
061390,000801: 16,3340 31737 CA ABSEDOTP
061391,000802: 16,3341 61475 AD -2JETLIM # COMPARING DELTA RATE WITH 2 JET LIMIT
061392,000803: 16,3342 00006 EXTEND
061393,000804: # Page 1436
061394,000805: 16,3343 63346 BZMF +3
061395,000806:
061396,000807: 16,3344 36242 CA SIX
061397,000808: 16,3345 13355 TCF +8D
061398,000809: 16,3346 31524 CA TJP
061399,000810: 16,3347 27524 ADS TJP
061400,000811:
061401,000812: # GOES TO PJETSLEC FOR TWO JETS
061402,000813: # P-JET-SELECTION-ROUTINE (ROTATION)
061403,000814:
061404,000815: # INPUT: NUMBERT 4,5,6 FOR WHICH PAIR OR 4 JETS
061405,000816: # TJP + FOR +P ROTATION
061406,000817:
061407,000818: # OUTPUT: CHANNEL 6
061408,000819: # PJUMPADR FOR P-AXIS SKIP
061409,000820: # (JTLST CALL) (SMALL TJP)
061410,000821:
061411,000822: # ORDER OF POLICIES TRIED IN CASE OF FAILURE.
061412,000823: # +P -P
061413,000824: # 7,15 8,16
061414,000825: # 4,12 3,11
061415,000826: # 4,7 8,11
061416,000827: # 7,12 11,16
061417,000828: # 12,15 3,16
061418,000829: # 4,15 3,8
061419,000830: # ALARM ALARM
061420,000831:
061421,000832: 16,3350 34747 CA AORBSYST
061422,000833: 16,3351 70111 MASK DAPBOOLS
061423,000834: 16,3352 10000 CCS A
061424,000835: 16,3353 34753 CA ONE
061425,000836: 16,3354 64751 AD FOUR
061426,000837: 16,3355 55743 TS NUMBERT
061427,000838: 16,3356 34753 PJETSLEC CA ONE
061428,000839: 16,3357 54001 TS L
061429,000840: 16,3360 11524 CCS TJP
061430,000841: 16,3361 13366 TCF +5
061431,000842: 16,3362 13442 TCF JETSOFF
061432,000843: 16,3363 13365 TCF +2
061433,000844: 16,3364 13442 TCF JETSOFF
061434,000845: 16,3365 22007 ZL
061435,000846: 16,3366 64753 AD ONE
061436,000847: 16,3367 55737 TS ABSTJ
061437,000848: 16,3370 23744 LXCH ROTINDEX
061438,000849: 16,3371 03531 TC SELECTP
061439,000850: 16,3372 46242 CS SIX
061440,000851: 16,3373 61743 AD NUMBERT
061441,000852: 16,3374 00006 EXTEND
061442,000853: 16,3375 13377 BZF +2
061443,000854:
061444,000855: 16,3376 44752 CS TWO
061445,000856:
061446,000857: # Page 1437
061447,000858: 16,3377 64751 AD FOUR
061448,000859: 16,3400 55521 TS NO.PJETS
061449,000860: 16,3401 31741 CA POLYTEMP
061450,000861: 16,3402 05754 TC WRITEP
061451,000862: 16,3403 41737 CS ABSTJ
061452,000863: 16,3404 63612 AD +150MST6
061453,000864: 16,3405 00006 EXTEND
061454,000865: 16,3406 63624 BZMF QRAXIS # GO TO QRAXIS OR TO GTS.
061455,000866:
061456,000867: 16,3407 63572 AD -136MST6
061457,000868: 16,3410 00006 EXTEND
061458,000869: 16,3411 63416 BZMF +5
061459,000870:
061460,000871: 16,3412 27737 ADS ABSTJ
061461,000872: 16,3413 51744 INDEX ROTINDEX
061462,000873: 16,3414 33621 CA MINTIMES
061463,000874: 16,3415 55524 TS TJP
061464,000875:
061465,000876: 16,3416 31737 CA ABSTJ
061466,000877: 16,3417 22007 ZL
061467,000878: 16,3420 00004 INHINT
061468,000879: 16,3421 53471 DXCH T6FURTHA
061469,000880: 16,3422 04674 TC IBNKCALL
061470,000881: 16,3423 37114 CADR JTLST
061471,000882: 16,3424 44740 CS BIT12
061472,000883: 16,3425 71273 MASK RCSFLAGS
061473,000884: 16,3426 55273 TS RCSFLAGS # BIT 12 SET TO 0.
061474,000885: 16,3427 03431 TC ALTSYST
061475,000886: 16,3430 13624 TCF QRAXIS
061476,000887:
061477,000888: 16,3431 30111 ALTSYST CA DAPBOOLS # ALTERNATE P-AXIS JETS
061478,000889: 16,3432 54001 TS L
061479,000890: 16,3433 34747 CA AORBSYST
061480,000891: 16,3434 00006 EXTEND
061481,000892: 16,3435 06001 RXOR LCHAN
061482,000893: 16,3436 54111 TS DAPBOOLS
061483,000894: 16,3437 00003 RELINT
061484,000895: 16,3440 00002 TC Q
061485,000896:
061486,000897: 16,3441 03431 DKALT TC ALTSYST
061487,000898:
061488,000899: 16,3442 05753 JETSOFF TC WRITEP -1
061489,000900: 16,3443 34755 CA ZERO
061490,000901: 16,3444 55524 TS TJP
061491,000902: 16,3445 13624 TCF QRAXIS
061492,000903:
061493,000904: # (NOTE -- M13 = 1 IDENTICALLY IMPLIES NULL MULTIPLICATION.)
061494,000905:
061495,000906: 16,3446 30033 CALCPERR CA CDUY # P-ERROR CALCULATION.
061496,000907: 16,3447 00006 EXTEND
061497,000908: 16,3450 21636 MSU CDUYD # CDU VALUE -- ANGLE DESIRED (Y-AXIS)
061498,000909: # Page 1438
061499,000910: 16,3451 00006 EXTEND
061500,000911: 16,3452 71414 MP M11 # (CDUY-CDUYD)M11 SCALED AT PI RADIANS
061501,000912: 16,3453 57752 XCH E # SAVE FIRST TERM (OF TWO)
061502,000913: 16,3454 30032 CA CDUX # THIRD COMPONENT
061503,000914: 16,3455 00006 EXTEND
061504,000915: 16,3456 21635 MSU CDUXD # CDU VALUE -- ANGLE DESIRED (X-AXIS)
061505,000916: # EXTEND
061506,000917: # MP M13
061507,000918: 16,3457 61277 AD DELPEROR # KALCMANU INTERFACE ERROR.
061508,000919: 16,3460 27752 ADS E # SAVE SUM OF TERMS. COULD BE OVERFLOW.
061509,000920: 16,3461 57464 XCH PERROR # SAVE P-ERROR FOR EIGHT-BALL DISPLAY.
061510,000921: 16,3462 00002 TC Q # RETURN TO CALLER
061511,000922:
061512,000923: # P-AXIS URGENCY FUNCTION CALCULATION.
061513,000924:
061514,000925: 16,3463 03446 PURGENCY TC CALCPERR # CALCULATE P-AXIS ERRORS.
061515,000926: 16,3464 41643 CS OMEGAPD # THIS CODING IS COMMON TO BOTH LM DAP AND
061516,000927: 16,3465 61421 AD OMEGAP # SPS-BACKUP MODE.
061517,000928: 16,3466 55427 TS EDOTP # EDOTP = OMEGAP - OMEGAPD AT PI/4 RAD/SEC
061518,000929:
061519,000930: 16,3467 44753 CS ONE
061520,000931: 16,3470 55505 TS AXISCTR
061521,000932: 16,3471 30111 CA DAPBOOLS
061522,000933: 16,3472 74737 MASK CSMDOCKD
061523,000934: 16,3473 00006 EXTEND
061524,000935: 16,3474 13505 BZF HEADTJET
061525,000936: 16,3475 00004 INHINT # IF CSMDOCKD = 1, GOT TO DOCKED RCS LOGIC
061526,000937: 16,3476 04674 TC IBNKCALL
061527,000938: 16,3477 43727 CADR SPSRCS
061528,000939:
061529,000940: 16,3500 31524 CA TJP
061530,000941: 16,3501 00006 EXTEND
061531,000942: 16,3502 13441 BZF DKALT # IF TJP = ZERO, CHANGE AORBSYST.
061532,000943: 16,3503 00003 RELINT
061533,000944: 16,3504 13350 TCF PJETSLEC -6 # SELECT AORBSYST AND USE TWO JETS.
061534,000945: 16,3505 34755 HEADTJET CA ZERO
061535,000946: 16,3506 55500 TS SENSETYP
061536,000947: 16,3507 00004 INHINT
061537,000948: 16,3510 04674 TC IBNKCALL
061538,000949: 16,3511 37252 CADR TJETLAW
061539,000950: 16,3512 00003 RELINT
061540,000951:
061541,000952: 16,3513 41741 CS FIREFCT
061542,000953: 16,3514 63530 AD -FOURDEG
061543,000954: 16,3515 00006 EXTEND
061544,000955: 16,3516 63350 BZMF PJETSLEC -6
061545,000956: 16,3517 11524 CCS TJP
061546,000957: 16,3520 13522 TCF +2
061547,000958: 16,3521 13442 TCF JETSOFF
061548,000959: # Page 1439
061549,000960: 16,3522 63527 AD -160MST6
061550,000961: 16,3523 00006 EXTEND
061551,000962: 16,3524 63350 BZMF PJETSLEC -6
061552,000963: 16,3525 36242 CA SIX
061553,000964: 16,3526 13355 TCF PJETSLEC -1
061554,000965: 16,3527 77377 -160MST6 DEC -256 B-14
061555,000966: 16,3530 75117 -FOURDEG DEC -.08888
061556,000967:
061557,000968: # Page 1440
061558,000969: # JET POLICY CONTSTRUCTION SUBROUTINE
061559,000970:
061560,000971: # INPUT: ROTINDEX, NUMBERT
061561,000972:
061562,000973: # OUTPUT: POLYTEMP (JET POLICY)
061563,000974:
061564,000975: # THIS SUBROUTINE SELECT A SUBSET OF THE DESIRED JETS WHICH HAS NO FAILURE
061565,000976:
061566,000977: 16,3531 36242 SELECTP CA SIX
061567,000978: 16,3532 55742 TS TEMPNUM
061568,000979: 16,3533 51743 INDEX NUMBERT
061569,000980: 16,3534 33563 CA TYPEP
061570,000981: 16,3535 51744 INDEX ROTINDEX
061571,000982: 16,3536 73554 MASK JETSALL
061572,000983: 16,3537 55741 TS POLYTEMP
061573,000984: 16,3540 71263 MASK CH6MASK
061574,000985: 16,3541 10000 CCS A
061575,000986: 16,3542 13544 TCF +2
061576,000987: 16,3543 00002 TC Q
061577,000988: 16,3544 11742 CCS TEMPNUM
061578,000989: 16,3545 13551 TCF +4
061579,000990: 16,3546 05567 TC ALARM
061580,000991: 16,3547 02003 OCT 02003
061581,000992: 16,3550 13442 TCF JETSOFF # ********** TCF ALARMJET **********
061582,000993: 16,3551 55743 SELECTYZ TS NUMBERT
061583,000994: 16,3552 13532 TCF SELECTP +1
061584,000995: 16,3553 12773 -1 TCF ABORTYZ +2
061585,000996: 16,3554 00252 JETSALL OCT 00252
061586,000997: 16,3555 00125 OCT 00125 # +P
061587,000998: 16,3556 00140 OCT 00140 # -Y
061588,000999: 16,3557 00006 OCT 00006 # -Z
061589,001000: 16,3560 00220 OCT 00220 # +Y
061590,001001: 16,3561 00011 OCT 00011 # +Z
061591,001002: 16,3562 00151 OCT 00151 # +V
061592,001003: 16,3563 00146 TYPEP OCT 00146 # -U
061593,001004: 16,3564 00226 OCT 00226 # -V
061594,001005: 16,3565 00231 OCT 00231 # +U
061595,001006: 16,3566 00151 OCT 00151 # +V
061596,001007: 16,3567 00132 OCT 00132 # 1-3
061597,001008: 16,3570 00245 OCT 00245 # 2-4
061598,001009: 16,3571 00377 OCT 00377 # ALL
061599,001010: 16,3572 16,3572 INDXYZ = -136MST6
061600,001011: 16,3572 77445 -136MST6 DEC -218 B-14
061601,001012: 16,3573 00004 DEC 4 B-14
061602,001013: 16,3574 00002 DEC 2 B-14
061603,001014: 16,3575 07776 OCT 07776
061604,001015: 16,3576 00005 DEC 5 B-14
061605,001016: 16,3577 00011 DEC 9 B-14
061606,001017: 16,3600 00012 DEC 10 B-14
061607,001018: 16,3601 07776 OCT 07776
061608,001019: 16,3602 00003 DEC 3 B-14
061609,001020: # Page 1441
061610,001021: 16,3603 00010 DEC 8 B-14
061611,001022: 16,3604 00007 DEC 7 B-14
061612,001023: 16,3605 07776 OCT 07776 # THESE INDEXES OF MASK JETSALL WILL
061613,001024: 16,3606 07776 OCT 07776 # CHANGE THE INSTRUCTION AT SELECTP +4
061614,001025: 16,3607 07776 OCT 07776 # TO BE TC JETSALL -1
061615,001026: 16,3610 07776 OCT 07776 # ONLY USED FOR TRANSLATION FAILURE
061616,001027: 16,3611 07776 OCT 07776
061617,001028: 16,3612 00360 +150MST6 DEC 240 B-14
061618,001029: 16,3613 07400 07400OCT OCT 07400
061619,001030:
061620,001031: # T-JET LAW FIXED CONSTANTS
061621,001032:
061622,001033: 16,3614 00266 NORMSCL OCT 266
061623,001034: 16,3615 74631 -100MS DEC -.1
061624,001035: 16,3616 06315 200MS DEC .2
061625,001036: 16,3617 7716 25/32 = PRIO31 # (DEC .78125)
061626,001037: 16,3617 00600 BITS8,9 OCTAL 00600
061627,001038: 16,3620 00632 1/40 DEC .02500
061628,001039: 16,3621 77751 MINTIMES DEC -22 B-14
061629,001040: 16,3622 00026 DEC 22 B-14
061630,001041: 16,3623 02734 PSKIPADR GENADR SKIPPAXS
061631,001042:
061632,001043: # GOES TO Q,R-AXES RCS AUTOPILOT
061633,001044:
061634,001045: 16,3624 41645 QRAXIS CS OMEGARD
061635,001046: 16,3625 61423 AD OMEGAR
061636,001047: 16,3626 02310 TC OVERSUB
061637,001048: 16,3627 55437 TS EDOTR
061638,001049: 16,3630 41644 CS OMEGAQD
061639,001050: 16,3631 61422 AD OMEGAQ
061640,001051: 16,3632 02310 TC OVERSUB
061641,001052: 16,3633 55436 TS EDOTQ
061642,001053: 16,3634 00006 EXTEND
061643,001054: 16,3635 33640 DCA QERRCALL
061644,001055: 16,3636 52006 DTCB
061645,001056:
061646,001057: 16,3637 E6,1537 EBANK= AOSQ
061647,001058: 16,3637 02072 36106 QERRCALL 2CADR CALLQERR
End of include-file P-AXIS_RCS_AUTOPILOT.agc. Parent file is MAIN.agc