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