Source Code
![]() |
These source-code files were transcribed from scans made from Don Eyles's personal
copy of Luminary 069. They were scanned at archive.org's Boston
facility, and the scanning was sponsored by Onno Hommes. The code was transcribed
from these scans by a team of volunteers who are referenced in the program
comments. Comments from the original source code are prefixed with a single '#' symbol,
whereas comments added later are prefixed by "##" or "###". In some cases, where
similar code blocks exist in previously-transcribed AGC programs (primarily
Luminary 99, from Apollo 11) those code blocks were used as a starting point and
then corrected to agree with the Luminary 69 scans. The full scans are available
at the Virtual AGC
project's collection at archive.org, while more-convenient reduced-size (but reduced-quality)
images are available at
the main Virtual AGC website. Report any errors noted by creating an
issue report at the Virtual AGC
project's GitHub repository. Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 069 OF AGC PROGRAM LUMINARY BY NASA 2021112-011 19:02 NOV. 25,1968Note that the date is the date of the printout, not the date of the program revision. |
061436,000002: ## Copyright: Public domain.
061437,000003: ## Filename: P-AXIS_RCS_AUTOPILOT.agc
061438,000004: ## Purpose: The main source file for Luminary revision 069.
061439,000005: ## It is part of the source code for the original release
061440,000006: ## of the flight software for the Lunar Module's (LM) Apollo
061441,000007: ## Guidance Computer (AGC) for Apollo 10. The actual flown
061442,000008: ## version was Luminary 69 revision 2, which included a
061443,000009: ## newer lunar gravity model and only affected module 2.
061444,000010: ## This file is intended to be a faithful transcription, except
061445,000011: ## that the code format has been changed to conform to the
061446,000012: ## requirements of the yaYUL assembler rather than the
061447,000013: ## original YUL assembler.
061448,000014: ## Reference: pp. 1416-1435
061449,000015: ## Assembler: yaYUL
061450,000016: ## Contact: Ron Burkey <info@sandroid.org>.
061451,000017: ## Website: www.ibiblio.org/apollo/index.html
061452,000018: ## Mod history: 2016-12-13 MAS Created from Luminary 99.
061453,000019: ## 2016-12-18 MAS Updated from comment-proofed Luminary 99 version.
061454,000020: ## 2017-01-05 RRB Updated for Luminary 69.
061455,000021: ## 2017-01-22 HG Add a "D" to opernad +8 -> +8D.
061456,000022: ## Should actually be changed in yaYul but it might be the only case of this
061457,000023: ## kind in the existing code
061458,000024: ## 2017-01-22 HG Fix operand DAPTREG4 -> ITEMP1
061459,000025: ## 2017-01-28 MAS Removed the +8D workaround.
061460,000026: ## 2017-01-28 RSB Proofed comment text using octopus/prooferComments
061461,000027: ## but no errors found.
061462,000028: ## 2017-03-14 RSB Comment-text fixes noted in proofing Luminary 116.
061463,000029: ## 2017-03-16 RSB Comment-text fixes identified in 5-way
061464,000030: ## side-by-side diff of Luminary 69/99/116/131/210.
061465,000031:
![]() |
Page 1416 |
061467,000033: 16,2210 BANK 16
061468,000034: 16,2000 SETLOC DAPS1
061469,000035: 16,2000 BANK
061470,000036:
061471,000037: 16,2210 E6,1462 EBANK= PERROR
061472,000038: 16,2210 COUNT* $$/DAPP
061473,000039:
061474,000040: # THE FOLLOWING T5RUPT ENTRY BEGINS THE PROGRAM WHICH CONTROLS THE P-AXIS ACTION OF THE LEM USING THE RCS JETS.
061475,000041: # THE NOMINAL TIME BETWEEN THE P-AXIS RUPTS IS 100 MS IN ALL NON-IDLING MODES OF THE DAP.
061476,000042:
061477,000043: 16,2210 37726 PAXIS CA MS100
061478,000044: 16,2211 26030 ADS TIME5 # *** NECESSARY IN ORDER TO ALLOW SYN-
061479,000045: # CHRONIZATION WITH OTHER INTERRUPTS ***
061480,000046:
061481,000047: 16,2212 22016 LXCH BANKRUPT # INTERRUPT LEAD IN (CONTINUED)
061482,000048: 16,2213 00006 EXTEND
061483,000049: 16,2214 22012 QXCH QRUPT
061484,000050:
061485,000051: # CHECK IF DAP PASS IS PERMISSIBLE
061486,000052:
061487,000053: 16,2215 11755 CCS DAPZRUPT # IF DAPZRUPT POSITIVE, DAP (JASK) IS
061488,000054: 16,2216 05634 TC BAILOUT # STILL IN PROGRESS AND A RESTART IS
061489,000055: 16,2217 02000 OCT 02000 # CALLED FOR. IT IS NEVER ZERO.
061490,000056:
061491,000057: 16,2220 02000 TC CHEKBITS # RETURN IS TO I+1 IF DAP SHOULD STAY ON.
061492,000058:
061493,000059: # ***** KALCMANU-DAP AND "RATE-HOLD"-DAP INTERFACE *****
061494,000060:
061495,000061: # THE FOLLOWING SECTION IS EXECUTED EVERY 100 MS (10 TIMES A SECOND) WITHIN THE P-AXIS REACTION CONTROL SYSTEM
061496,000062: # AUTOPILOT (WHENEVER THE DAP IS IN OPERATION).
061497,000063:
061498,000064: 16,2221 31633 CA CDUXD
061499,000065: 16,2222 00006 EXTEND
061500,000066: 16,2223 21636 MSU DELCDUX
061501,000067: 16,2224 02245 TC 1STOTWOS
061502,000068: 16,2225 55633 TS CDUXD
061503,000069: 16,2226 31634 CA CDUYD
061504,000070: 16,2227 00006 EXTEND
061505,000071: 16,2230 21637 MSU DELCDUY
061506,000072: 16,2231 02245 TC 1STOTWOS
061507,000073: 16,2232 55634 TS CDUYD
061508,000074: 16,2233 31635 CA CDUZD
061509,000075: 16,2234 00006 EXTEND
061510,000076: 16,2235 21640 MSU DELCDUZ
061511,000077: 16,2236 02245 TC 1STOTWOS
061512,000078: 16,2237 55635 TS CDUZD
061513,000079: 16,2240 00006 EXTEND # DIMINISH MANUAL CONTROL DIRECT RATE
061514,000080: 16,2241 27443 DIM TCP # TIME COUNTERS.
061515,000081: 16,2242 00006 EXTEND
061516,000082: 16,2243 27455 DIM TCQR
![]() |
Page 1417 |
061518,000084: # RATELOOP COMPUTES JETRATEQ, JETRATER, AND 1JACC*NO. PJETS IN ITEMP1.
061519,000085: # RETURNS TO BACKP.
061520,000086:
061521,000087: # JETRATE = 1JACC*NO.PJETS*TJP (NOTE TJ IS THE TIME FIRED DURING CSP)
061522,000088: # JETRATEQ = 1JACCQ(TJU*NO.UJETS - TJV*NO.VJETS)
061523,000089: # JETRATER = 1JACCR(TJU*NO.UJETS + TJV*NO.VJETS)
061524,000090:
061525,000091: 16,2244 13624 TCF RATELOOP
061526,000092: 16,2245 10000 1STOTWOS CCS A
061527,000093: 16,2246 64753 AD ONE
061528,000094: 16,2247 00002 TC Q
061529,000095: 16,2250 40000 CS A
061530,000096: 16,2251 00002 TC Q
061531,000097: 16,2252 00006 SUBDIVDE EXTEND # OVERFLOW PROCTION ROUTINE TO GIVE
061532,000098: 16,2253 71737 MP DAPTEMP3 # POSMAX OR NEGMAX IF THE DIVIDE WOULD
061533,000099: 16,2254 21425 DAS OMEGAU # OVERFLOW
061534,000100:
061535,000101: 16,2255 00006 +3 EXTEND
061536,000102: 16,2256 31425 DCA OMEGAU
061537,000103: 16,2257 53742 DXCH DAPTEMP5
061538,000104: 16,2260 11424 CCS OMEGAU
061539,000105: 16,2261 12263 TCF +2
061540,000106: 16,2262 12273 TCF DIVIDER
061541,000107: 16,2263 62304 AD -OCT630
061542,000108: 16,2264 00006 EXTEND
061543,000109: 16,2265 62273 BZMF DIVIDER
061544,000110:
061545,000111: 16,2266 11424 CCS OMEGAU
061546,000112: 16,2267 34733 CA POSMAX # 45 DEG/SEC
061547,000113: 16,2270 00002 TC Q
061548,000114: 16,2271 44733 CS POSMAX
061549,000115: 16,2272 00002 TC Q
061550,000116:
061551,000117: 16,2273 53425 DIVIDER DXCH OMEGAU
061552,000118: 16,2274 00006 EXTEND
061553,000119: 16,2275 10061 DV ITEMP1
061554,000120: 16,2276 00002 TC Q
061555,000121:
061556,000122: 16,2277 54007 OVERSUB TS 7 # RETURNS A UNCHANGED OR LIMITED TO
061557,000123: 16,2300 00002 TC Q # POSMAX OR NEGMAX IF A HAS OVERFLOW
061558,000124: 16,2301 50000 INDEX A
061559,000125: 16,2302 44734 CS BIT15 -1
061560,000126: 16,2303 00002 TC Q
061561,000127:
061562,000128: 16,2304 77147 -OCT630 OCT 77147
061563,000129:
061564,000130: 16,2305 31735 BACKP CA DAPTEMP1
061565,000131: 16,2306 00006 EXTEND
![]() |
Page 1418 |
061567,000133: 16,2307 71530 MP 1JACC
061568,000134: 16,2310 55743 TS JETRATE
061569,000135:
061570,000136: # BEGINNING OF THE RATE DERIVATION
061571,000137: # OMEGAP,Q,R BODY RATES SCALED AT PI/4
061572,000138: # TRAPER,Q,R BODY ANGLE ERRORS FROM PREDICTED ANGLE (PI/40)
061573,000139: # NP(QR)TRAPS NUMBER OF TIMES ANGLE ERROR HAS BEEN ACCUMULATED
061574,000140: # AOSQ(R)TERM CHANGE IN RATE DUE TO OFFSET ACCELLERATION. (PI/4)
061575,000141: # JETRATE,Q,R CHANGE IN RATE DUE TO JET ACCELLERATION. (PI/4)
061576,000142: # TRAPSIZE NEGATIVE LIMIT OF MAGNITUDE OF TRAPEDP, ECT.
061577,000143: # OMEGAU DP-TEMPORARY STORAGE
061578,000144: # OMEGA = OMEGA + JETRATE + AOSTERM (+TRAPED/NTRAPS IF TRAPED BIG)
061579,000145:
061580,000146: 16,2311 30032 CAE CDUX
061581,000147: 16,2312 54001 TS L
061582,000148: 16,2313 00006 EXTEND
061583,000149: 16,2314 21436 MSU OLDXFORP # SCALED AT PI
061584,000150: 16,2315 23436 LXCH OLDXFORP
061585,000151: 16,2316 55735 TS DAPTEMP1
061586,000152: 16,2317 33603 CA 1/40
061587,000153: 16,2320 54061 TS ITEMP1
061588,000154: 16,2321 41743 CS JETRATE
061589,000155: 16,2322 00006 EXTEND
061590,000156: 16,2323 74736 MP BIT14
061591,000157: 16,2324 27426 ADS TRAPEDP
061592,000158: 16,2325 31744 CA JETRATEQ
061593,000159: 16,2326 61545 AD AOSQTERM
061594,000160: 16,2327 00006 EXTEND
061595,000161: 16,2330 77735 MP -BIT14
061596,000162: 16,2331 27427 ADS TRAPEDQ
061597,000163: 16,2332 31745 CA JETRATER
061598,000164: 16,2333 61546 AD AOSRTERM
061599,000165: 16,2334 00006 EXTEND
061600,000166: 16,2335 77735 MP -BIT14
061601,000167: 16,2336 27430 ADS TRAPEDR
061602,000168:
061603,000169: 16,2337 30033 CA CDUY
061604,000170: 16,2340 54001 TS L
061605,000171: 16,2341 00006 EXTEND
061606,000172: 16,2342 21437 MSU OLDYFORP # SCALED AT PI
061607,000173: 16,2343 23437 LXCH OLDYFORP
061608,000174: 16,2344 55736 TS DAPTEMP2
061609,000175: 16,2345 00006 EXTEND
061610,000176: 16,2346 71412 MP M11 # M11 SCALED AT 1
061611,000177: 16,2347 61735 AD DAPTEMP1
061612,000178: 16,2350 53425 DXCH OMEGAU
061613,000179:
061614,000180: 16,2351 02255 TC SUBDIVDE +3 # RETURNS WITH CDU-RATE AT PI/4
061615,000181:
061616,000182: 16,2352 00006 EXTEND
![]() |
Page 1419 |
061618,000184: 16,2353 61417 SU OMEGAP
061619,000185: 16,2354 27426 ADS TRAPEDP
061620,000186: 16,2355 02277 TC OVERSUB
061621,000187: 16,2356 55426 TS TRAPEDP
061622,000188: 16,2357 00006 EXTEND
061623,000189: 16,2360 31742 DCA DAPTEMP5
061624,000190: 16,2361 21445 DAS DXERROR
061625,000191: 16,2362 41452 CS PLAST
061626,000192: 16,2363 00006 EXTEND
061627,000193: 16,2364 73603 MP 1/40
061628,000194: 16,2365 21445 DAS DXERROR # MANUAL MODE X-ATTITUDE ERROR (DP)
061629,000195: 16,2366 30034 CA CDUZ
061630,000196: 16,2367 54001 TS L
061631,000197: 16,2370 00006 EXTEND
061632,000198: 16,2371 21440 MSU OLDZFORQ
061633,000199: 16,2372 55737 TS DAPTEMP3
061634,000200: 16,2373 23440 LXCH OLDZFORQ
061635,000201: 16,2374 31413 CA M21
061636,000202: 16,2375 00006 EXTEND
061637,000203: 16,2376 71736 MP DAPTEMP2
061638,000204: 16,2377 53425 DXCH OMEGAU
061639,000205: 16,2400 31415 CA M22
061640,000206: 16,2401 02252 TC SUBDIVDE
061641,000207:
061642,000208: 16,2402 00006 EXTEND
061643,000209: 16,2403 61420 SU OMEGAQ
061644,000210: 16,2404 27427 ADS TRAPEDQ
061645,000211: 16,2405 02277 TC OVERSUB
061646,000212: 16,2406 55427 TS TRAPEDQ
061647,000213: 16,2407 00006 EXTEND
061648,000214: 16,2410 31742 DCA DAPTEMP5
061649,000215: 16,2411 21447 DAS DYERROR
061650,000216: 16,2412 41453 CS QLAST
061651,000217: 16,2413 00006 EXTEND
061652,000218: 16,2414 73603 MP 1/40
061653,000219: 16,2415 21447 DAS DYERROR # MANUAL MODE Y-ATTITUDE ERROR (DP)
061654,000220: 16,2416 31414 CA M31
061655,000221: 16,2417 00006 EXTEND
061656,000222: 16,2420 71736 MP DAPTEMP2
061657,000223: 16,2421 53425 DXCH OMEGAU
061658,000224: 16,2422 31416 CA M32
061659,000225:
061660,000226: 16,2423 02252 TC SUBDIVDE
061661,000227:
061662,000228: 16,2424 00006 EXTEND
061663,000229: 16,2425 61421 SU OMEGAR
061664,000230: 16,2426 27430 ADS TRAPEDR
061665,000231: 16,2427 02277 TC OVERSUB
061666,000232: 16,2430 55430 TS TRAPEDR # TRAPEDS HAVE ALL BEEN COMPUTED
![]() |
Page 1420 |
061668,000234: 16,2431 00006 EXTEND
061669,000235: 16,2432 31742 DCA DAPTEMP5
061670,000236: 16,2433 21451 DAS DZERROR
061671,000237: 16,2434 41454 CS RLAST
061672,000238: 16,2435 00006 EXTEND
061673,000239: 16,2436 73603 MP 1/40
061674,000240: 16,2437 21451 DAS DZERROR # MANUAL MODE Z-ATTITUDE ERROR (DP)
061675,000241: 16,2440 30111 CA DAPBOOLS # PICK UP PAD LOADED STATE ESTIMATOR GAINS
061676,000242: 16,2441 74737 MASK CSMDOCKD
061677,000243: 16,2442 00006 EXTEND
061678,000244: 16,2443 12451 BZF LMONLY
061679,000245: 16,2444 00006 EXTEND # DOCKED
061680,000246: 16,2445 31405 DCA DKOMEGAN
061681,000247: 16,2446 52062 DXCH ITEMP1
061682,000248: 16,2447 31403 CA DKTRAP
061683,000249: 16,2450 12455 TCF +5
061684,000250: 16,2451 00006 LMONLY EXTEND # UNDOCKED
061685,000251: 16,2452 31410 DCA LMOMEGAN
061686,000252: 16,2453 52062 DXCH ITEMP1
061687,000253: 16,2454 31406 CA LMTRAP
061688,000254: 16,2455 54063 +5 TS ITEMP3
061689,000255:
061690,000256: 16,2456 11426 CCS TRAPEDP
061691,000257: 16,2457 12461 TCF +2
061692,000258: 16,2460 12476 TCF SMALPDIF
061693,000259: 16,2461 60063 AD ITEMP3 # TRAPSIZE > ABOUT 77001 %-1.4DEG/SEC"
061694,000260: 16,2462 00006 EXTEND
061695,000261: 16,2463 62476 BZMF SMALPDIF
061696,000262: 16,2464 22007 ZL
061697,000263: 16,2465 23426 LXCH TRAPEDP
061698,000264: 16,2466 34755 CA ZERO
061699,000265: 16,2467 00006 EXTEND
061700,000266: 16,2470 11431 DV NPTRAPS
061701,000267: 16,2471 27417 ADS OMEGAP
061702,000268: 16,2472 02277 TC OVERSUB
061703,000269: 16,2473 55417 TS OMEGAP
061704,000270: 16,2474 30061 CA ITEMP1 # ABOUT 10 OR 0 FOR DOCKED OR UNDOCKED
061705,000271: 16,2475 55431 TS NPTRAPS
061706,000272: 16,2476 25431 SMALPDIF INCR NPTRAPS
061707,000273: 16,2477 31743 P-RATE CA JETRATE
061708,000274: 16,2500 27417 ADS OMEGAP
061709,000275: 16,2501 02277 TC OVERSUB
061710,000276: 16,2502 55417 TS OMEGAP
061711,000277:
061712,000278: 16,2503 11427 CCS TRAPEDQ
061713,000279: 16,2504 12506 TCF +2
061714,000280: 16,2505 12533 TCF Q-RATE
061715,000281: 16,2506 60063 AD ITEMP3 # TRAPSIZE > ABOUT 77001 %-1.4DEG/SEC"
061716,000282: 16,2507 00006 EXTEND
061717,000283: 16,2510 62533 BZMF Q-RATE
![]() |
Page 1421 |
061719,000285: 16,2511 22007 ZL
061720,000286: 16,2512 23427 LXCH TRAPEDQ
061721,000287: 16,2513 34755 CA ZERO
061722,000288: 16,2514 00006 EXTEND
061723,000289: 16,2515 11432 DV NQTRAPS
061724,000290: 16,2516 55735 TS DAPTEMP1 # SAVE FOR OFFSET ESTIMATE
061725,000291: 16,2517 27420 ADS OMEGAQ
061726,000292: 16,2520 02277 TC OVERSUB
061727,000293: 16,2521 55420 TS OMEGAQ
061728,000294: 16,2522 30061 CA ITEMP1 # ABOUT 10 OR 0 FOR DOCKED OR UNDOCKED
061729,000295: 16,2523 57432 XCH NQTRAPS
061730,000296: 16,2524 60062 AD ITEMP2 # KAOS > ABOUT 60D %N/N_60"
061731,000297: 16,2525 57735 XCH DAPTEMP1
061732,000298: 16,2526 00006 EXTEND
061733,000299: 16,2527 74756 MP FIVE
061734,000300: 16,2530 00006 EXTEND
061735,000301: 16,2531 11735 DV DAPTEMP1
061736,000302: 16,2532 27537 ADS AOSQ
061737,000303: 16,2533 25432 Q-RATE INCR NQTRAPS
061738,000304: 16,2534 31744 CA JETRATEQ
061739,000305: 16,2535 61545 AD AOSQTERM
061740,000306: 16,2536 27420 ADS OMEGAQ
061741,000307: 16,2537 02277 TC OVERSUB
061742,000308: 16,2540 55420 TS OMEGAQ
061743,000309:
061744,000310: 16,2541 11430 CCS TRAPEDR
061745,000311: 16,2542 12544 TCF +2
061746,000312: 16,2543 12571 TCF R-RATE
061747,000313: 16,2544 60063 AD ITEMP3 # TRAPSIZE > ABOUT 77001 %-1.4DEG/SEC"
061748,000314: 16,2545 00006 EXTEND
061749,000315: 16,2546 62571 BZMF R-RATE
061750,000316: 16,2547 22007 ZL
061751,000317: 16,2550 23430 LXCH TRAPEDR
061752,000318: 16,2551 34755 CA ZERO
061753,000319: 16,2552 00006 EXTEND
061754,000320: 16,2553 11433 DV NRTRAPS
061755,000321: 16,2554 55736 TS DAPTEMP2 # SAVE FOR OFFSET ESTIMATE
061756,000322: 16,2555 27421 ADS OMEGAR
061757,000323: 16,2556 02277 TC OVERSUB
061758,000324: 16,2557 55421 TS OMEGAR
061759,000325: 16,2560 30061 CA ITEMP1 # ABOUT 10 OR 0 FOR DOCKED OR UNDOCKED
061760,000326: 16,2561 57433 XCH NRTRAPS
061761,000327: 16,2562 60062 AD ITEMP2 # KAOS > ABOUT 60D %N/N_60"
061762,000328: 16,2563 57736 XCH DAPTEMP2
061763,000329: 16,2564 00006 EXTEND
061764,000330: 16,2565 74756 MP FIVE
061765,000331: 16,2566 00006 EXTEND
061766,000332: 16,2567 11736 DV DAPTEMP2
061767,000333: 16,2570 27541 ADS AOSR
061768,000334: 16,2571 25433 R-RATE INCR NRTRAPS
![]() |
Page 1422 |
061770,000336: 16,2572 31745 CA JETRATER
061771,000337: 16,2573 61546 AD AOSRTERM
061772,000338: 16,2574 27421 ADS OMEGAR
061773,000339: 16,2575 02277 TC OVERSUB
061774,000340: 16,2576 55421 TS OMEGAR
061775,000341:
061776,000342: # END OF RATE DERIVATION
061777,000343: # BEGIN OFFSET ESTIMATER
061778,000344: # IN POWERED FLIGHT, AOSTASK WILL BE CALLED EVERY 2 SECONDS.
061779,000345: # AOS = AOS + K*SUMRATE
061780,000346:
061781,000347: 16,2577 40111 CS DAPBOOLS
061782,000348: 16,2600 74744 MASK DRIFTBIT
061783,000349: 16,2601 10000 CCS A
061784,000350: 16,2602 12613 TCF WORKTIME
061785,000351: 16,2603 55422 TS ALPHAQ # ZERO THE OFFSET ACCELERATION VALUES.
061786,000352: 16,2604 55423 TS ALPHAR
061787,000353: 16,2605 55545 TS AOSQTERM
061788,000354: 16,2606 55546 TS AOSRTERM
061789,000355: 16,2607 55537 TS AOSQ
061790,000356: 16,2610 55541 TS AOSR
061791,000357: 16,2611 12635 TCF PAXFILT
061792,000358: 16,2612 00074 KAOS DEC 60 B-14
061793,000359: 16,2613 31510 WORKTIME CA QACCDOT
061794,000360: 16,2614 00006 EXTEND
061795,000361: 16,2615 74766 MP CALLCODE # OCTAL 00032 IS DECIMAL .1 AT 2(6).
061796,000362: 16,2616 21540 DAS AOSQ
061797,000363: 16,2617 31537 CA AOSQ
061798,000364: 16,2620 55422 TS ALPHAQ
061799,000365: 16,2621 00006 EXTEND
061800,000366: 16,2622 73601 MP 200MS # .2 AT 1
061801,000367: 16,2623 55545 TS AOSQTERM
061802,000368: 16,2624 31512 CA RACCDOT
061803,000369: 16,2625 00006 EXTEND
061804,000370: 16,2626 74766 MP CALLCODE # OCTAL 00032 IS DECIMAL .1 AT 2(6).
061805,000371: 16,2627 21542 DAS AOSR
061806,000372: 16,2630 31541 CA AOSR
061807,000373: 16,2631 55423 TS ALPHAR
061808,000374: 16,2632 00006 EXTEND
061809,000375: 16,2633 73601 MP 200MS # .2 AT 1
061810,000376: 16,2634 55546 TS AOSRTERM
061811,000377:
061812,000378: 16,2635 34747 PAXFILT CA CALLGMBL # EXECUTE ACDT+C12, IF NEEDED.
061813,000379: 16,2636 71273 MASK RCSFLAGS
061814,000380: 16,2637 10000 CCS A # CALLGMBL IS NOT BIT15, SO THIS TEST IS
061815,000381: 16,2640 03721 TC ACDT+C12 # VALID.
![]() |
Page 1423 |
061817,000383: 16,2641 52011 DXCH ARUPT
061818,000384: 16,2642 53752 DXCH DAPARUPT
061819,000385: 16,2643 32654 CA SUPERJOB # SETTING UP THE SUPERJOB
061820,000386: 16,2644 56017 XCH BRUPT
061821,000387: 16,2645 22012 LXCH QRUPT
061822,000388: 16,2646 53754 DXCH DAPBQRPT
061823,000389: 16,2647 32653 CA SUPERADR
061824,000390: 16,2650 52016 DXCH ZRUPT
061825,000391: 16,2651 53756 DXCH DAPZRUPT
061826,000392: 16,2652 15275 TCF NOQBRSM +1 # RELINT (JUST IN CASE) AND RESUME, IN THE
061827,000393: # FORM OF A JASK, AT SUPERJOB.
061828,000394:
061829,000395: 16,2653 02655 SUPERADR GENADR SUPERJOB +1
061830,000396:
061831,000397: # COUNT DOWN GIMBAL DRIVE TIMERS AND TURN OFF DRIVES IF REQUIRED.
061832,000398:
061833,000399: 16,2654 11630 SUPERJOB CCS QGIMTIMR # Q-AXIS GIMBAL DRIVE TIMER
061834,000400: 16,2655 12667 TCF DECQTIMR # POSITIVE- COUNTING DOWN
061835,000401: 16,2656 12673 TCF TURNOFFQ # NEGATIVE- DRIVE SHOULD BE ENDED
061836,000402: 16,2657 11632 CHKRTIMR CCS RGIMTIMR # NEGATIVE- INACTIVE
061837,000403: 16,2660 12671 TCF DECRTIMR # (NEG ZERO - IMPOSSIBLE)
061838,000404: 16,2661 12703 TCF TURNOFFR # REPEATED (ABOVE) FOR R AXIS.
061839,000405:
061840,000406: 16,2662 34740 CA BIT12
061841,000407: 16,2663 71273 MASK RCSFLAGS
061842,000408: 16,2664 00006 EXTEND
061843,000409: 16,2665 12713 BZF SKIPPAXS
061844,000410: 16,2666 02717 TC CHKVISFZ
061845,000411: 16,2667 55630 DECQTIMR TS QGIMTIMR # COUNT TIMERS DOWN TO POS ZERO.
061846,000412: 16,2670 12657 TCF CHKRTIMR
061847,000413: 16,2671 55632 DECRTIMR TS RGIMTIMR
061848,000414: 16,2672 12662 TCF CHKRTIMR +3
061849,000415:
061850,000416: 16,2673 55500 TURNOFFQ TS NEGUQ # HALT DRIVES.
061851,000417: 16,2674 55510 TS QACCDOT
061852,000418: 16,2675 45007 CS QGIMBITS
061853,000419: 16,2676 00006 EXTEND
061854,000420: 16,2677 03012 WAND CHAN12
061855,000421: 16,2700 34735 CAF NEGMAX
061856,000422: 16,2701 55630 TS QGIMTIMR
061857,000423: 16,2702 12657 TCF CHKRTIMR
061858,000424: 16,2703 55502 TURNOFFR TS NEGUR
061859,000425: 16,2704 55512 TS RACCDOT
061860,000426: 16,2705 45020 CS RGIMBITS
061861,000427: 16,2706 00006 EXTEND
061862,000428: 16,2707 03012 WAND CHAN12
061863,000429: 16,2710 34735 CAF NEGMAX
061864,000430: 16,2711 55632 TS RGIMTIMR
061865,000431: 16,2712 12662 TCF CHKRTIMR +3
061866,000432: 16,2713 5007 QGIMBITS EQUALS OCT1400 # BITS 9 AND 10 (OF CHANNEL 12).
061867,000433: 16,2713 5020 RGIMBITS EQUALS PRIO6 # BITS 11 AND 12 (OF CHANNEL 12).
![]() |
Page 1424 |
061869,000435: 16,2713 41273 SKIPPAXS CS RCSFLAGS
061870,000436: 16,2714 74740 MASK BIT12
061871,000437: 16,2715 27273 ADS RCSFLAGS # BIT 12 SET TO 1.
061872,000438: 16,2716 13607 TCF QRAXIS # GO TO QRAXIS OR TO GTS.
061873,000439:
061874,000440: # Y-Z TRANSLATION
061875,000441:
061876,000442: # INPUT: BITS 9-12 OF CH31 (FROM TRANSLATION CONTROLER)
061877,000443:
061878,000444: # OUTPUT: NEXTP
061879,000445:
061880,000446: # NEXTP IS THE CHANNEL 6 CODE OF JETS FOR THE DESIRED TRANSLATION.
061881,000447: # IF THERE ARE FAILURES IN THE DESIRED POLICY, THEN
061882,000448: # (1) FOR DIAGONAL TRANS: UNFAILED PAIR
061883,000449: # ALARM (IF NO PAIR)
061884,000450: # (2) FOR PRINCIPAL TRANS: TRY TO TACK WITH DIAGONAL PAIRS
061885,000451: # ALARM (IF DIAGONAL PAIRS ARE FAILED)
061886,000452:
061887,000453: 16,2717 00006 CHKVISFZ EXTEND
061888,000454: 16,2720 00031 READ CHAN31
061889,000455: 16,2721 40000 CS A
061890,000456: 16,2722 73576 MASK 07400OCT
061891,000457: 16,2723 00006 EXTEND
061892,000458: 16,2724 12773 BZF TSNEXTP
061893,000459: 16,2725 00006 EXTEND
061894,000460: 16,2726 74745 MP BIT7
061895,000461: 16,2727 50000 INDEX A
061896,000462: 16,2730 33555 CA INDXYZ
061897,000463: 16,2731 55742 TS ROTINDEX
061898,000464: 16,2732 36241 TRYUORV CA SIX
061899,000465: 16,2733 03534 TC SELECTYZ
061900,000466: 16,2734 46241 CS SIX
061901,000467: 16,2735 61741 AD NUMBERT
061902,000468: 16,2736 00006 EXTEND
061903,000469: 16,2737 12772 BZF TSNEXTP -1
061904,000470: 16,2740 44756 CS FIVE
061905,000471: 16,2741 61742 AD ROTINDEX
061906,000472: 16,2742 00006 EXTEND
061907,000473: 16,2743 62761 BZMF ALTERYZ
061908,000474: 16,2744 41741 CS NUMBERT
061909,000475: 16,2745 64751 AD FOUR
061910,000476: 16,2746 00006 EXTEND
061911,000477: 16,2747 62772 BZMF TSNEXTP -1
061912,000478: 16,2750 05567 ABORTYZ TC ALARM
061913,000479: 16,2751 02001 OCT 02001
061914,000480: 16,2752 34753 CA BIT1 # INVERT BIT 1 OF RCSFLAGS.
061915,000481: 16,2753 23273 LXCH RCSFLAGS
061916,000482: 16,2754 00006 EXTEND
061917,000483: 16,2755 06001 RXOR 1
![]() |
Page 1425 |
061919,000485: 16,2756 55273 TS RCSFLAGS
061920,000486: 16,2757 34755 CA ZERO
061921,000487: 16,2760 12773 TCF TSNEXTP
061922,000488: 16,2761 34753 ALTERYZ CA BIT1 # INVERT BIT 1 OF RCSFLAGS.
061923,000489: 16,2762 23273 LXCH RCSFLAGS
061924,000490: 16,2763 00006 EXTEND
061925,000491: 16,2764 06001 RXOR 1
061926,000492: 16,2765 55273 TS RCSFLAGS
061927,000493: 16,2766 74753 MASK BIT1
061928,000494: 16,2767 64751 AD FOUR
061929,000495: 16,2770 27742 ADS ROTINDEX
061930,000496: 16,2771 12732 TCF TRYUORV
061931,000497: 16,2772 31737 CA POLYTEMP
061932,000498: 16,2773 55470 TSNEXTP TS NEXTP
061933,000499:
061934,000500: # STATE LOGIC
061935,000501: # CHECK IN ORDER: IF ON
061936,000502: # LPDPHASE GO TO PURGENCY
061937,000503: # PULSES MINIMUM PULSE LOGIC
061938,000504: # DETENT(BIT15 CH31) RATE COMMAND
061939,000505: # GO TO PURGENCY
061940,000506:
061941,000507: 16,2774 34737 CA BIT13 # CHECK STICK IF IN ATT. HOLD.
061942,000508: 16,2775 00006 EXTEND
061943,000509: 16,2776 02031 RAND CHAN31
061944,000510: 16,2777 00006 EXTEND
061945,000511: 16,3000 13006 BZF MANMODE
061946,000512:
061947,000513: 16,3001 30111 CA DAPBOOLS
061948,000514: 16,3002 74743 MASK XOVINHIB
061949,000515: 16,3003 10000 CCS A
061950,000516: 16,3004 13442 TCF PURGENCY # ATTITUDE STEER DURING VISIBILITY PHASE
061951,000517:
061952,000518: 16,3005 13050 TCF DETENTCK
061953,000519: 16,3006 34735 MANMODE CA PULSES # PULSES IS ONE FOR PULSE MODE
061954,000520: 16,3007 70111 MASK DAPBOOLS
061955,000521: 16,3010 00006 EXTEND
061956,000522: 16,3011 13050 BZF DETENTCK # BRANCH FOR RATE COMMAND
061957,000523:
061958,000524: 16,3012 34755 CA ZERO
061959,000525: 16,3013 55462 TS PERROR
061960,000526:
061961,000527: # MINIMUM IMPULSE MODE
061962,000528:
061963,000529: 16,3014 30032 CA CDUX
061964,000530: 16,3015 55633 TS CDUXD
061965,000531:
061966,000532: 16,3016 11456 CCS OLDPMIN
061967,000533: 16,3017 13033 TCF CHECKP
061968,000534:
061969,000535: 16,3020 34751 FIREP CA BIT3
061970,000536: 16,3021 00006 EXTEND
![]() |
Page 1426 |
061972,000538: 16,3022 02031 RAND CHAN31
061973,000539: 16,3023 00006 EXTEND
061974,000540: 16,3024 13043 BZF +XMIN
061975,000541:
061976,000542: 16,3025 34750 CA BIT4
061977,000543: 16,3026 00006 EXTEND
061978,000544: 16,3027 02031 RAND CHAN31
061979,000545: 16,3030 00006 EXTEND
061980,000546: 16,3031 13041 BZF -XMIN
061981,000547:
061982,000548: 16,3032 13421 TCF JETSOFF
061983,000549:
061984,000550: 16,3033 00006 CHECKP EXTEND
061985,000551: 16,3034 00031 READ CHAN31
061986,000552: 16,3035 40000 CS A
061987,000553: 16,3036 75742 MASK OCT14
061988,000554: 16,3037 55456 TS OLDPMIN
061989,000555: 16,3040 13421 TCF JETSOFF
061990,000556:
061991,000557: 16,3041 44363 -XMIN CS TEN # ANYTHING LESS THAN 14MS. CORRECTED
061992,000558: 16,3042 13044 TCF +2 # IN JET SELECTION ROUTINE
061993,000559: 16,3043 34363 +XMIN CA TEN
061994,000560: 16,3044 55524 TS TJP
061995,000561: 16,3045 34753 CA ONE
061996,000562: 16,3046 55456 TS OLDPMIN
061997,000563: 16,3047 13327 TCF PJETSLEC -6
061998,000564:
061999,000565: # MANUAL RATE COMMAND MODE
062000,000566: # ========================
062001,000567: # BY ROBERT F. STENGEL
062002,000568:
062003,000569: # THIS MODE PROVIDES RCAH MANUAL CONTROL THRU 2 CONTROL LAWS: 1) DIRECT RATE AND 2) PSEUDO-AUTO.
062004,000570: # THE DIRECT RATE MODE AFFORDS IMMEDIATE CONTROL WITHOUT OVERSHOOT. THE PSEUDO-AUTO MODE PROVIDES PRECISE
062005,000571: # RATE CONTROL AND ATTITUDE HOLD.
062006,000572:
062007,000573: # IN DIRECT RATE, JETS ARE FIRED WHEN STICK POSITION CHANGES BY A FIXED NUMBER OF INCREMENTS IN ONE DAP CYCLE.
062008,000574: # 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
062009,000575: # THE 'TARGET DEADBAND', WHICH EQUALS THE BREAKOUT LEVEL.
062010,000576: # IN PSEUDO-AUTO, BODY-FIXED RATE AND ATTITUDE ERRORS ARE SUPPLIED TO TJETLAW, WHICH EXERCISES CONTROL.
062011,000577: # CONTROL SWITCHES FROM DIRECT RATE TO PSEUDO-AUTO IF THE TARGET DB IS ACHIEVED OR IF TIME IN (1) EXCEEDS 4 SEC.
062012,000578: # IF THE INITIAL COMMAND DOES NOT EXCEED THE BREAKOUT LEVEL, CONTROL GOES TO PSEUDO-AUTO IMMEDIATELY.
062013,000579:
062014,000580: # 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,
062015,000581: # OR VICE VERSA. THIS ALLOWS A DEGREE OF ATTITUDE HOLD IN UNCONTROLLED AXES. DUE TO U,V CONTROL, HOWEVER, Q AND
062016,000582: # R AXES ARE COUPLED AND MUST USE THE SAME CONTROL LAW.
062017,000583:
062018,000584: # HAND CONTROLLER COMMANDS ARE SCALED BY A LINEAR/QUADRATIC LAW. FOR THE LM-ALONE, MAXIMUM COMMANDED RATES ARE 20
062019,000585: # AND 4 D/S IN NORMAL AND FINE SCALING; HOWEVER, STICK SENSITIVITY AT ZERO COUNTS (OBTAINED AT A STICK DEFLECTION
062020,000586: # OF 2 DEGREES FROM THE CENTERED POSITION) IS .5 OR .1 D/S PER DEGREE. NORMAL AND FINE SCALINGS FOR THE CSM-DOCKED
062021,000587: # CASE IS AUTOMATICALLY SET TO 1/10 THE ABOVE VALUES. SCALING IS DETERMINED IN ROUTINE 3.
![]() |
Page 1427 |
062023,000589: # ZEROENBL ENABLES COUNTERS SO THEY CAN BE READ NEXT TIME
062024,000590: # JUSTOUT FIRST DETECTION OF OUT OF DETENT (BY OURRCBIT)
062025,000591:
062026,000592: 16,3050 00006 DETENTCK EXTEND
062027,000593: 16,3051 00031 READ CHAN31
062028,000594: 16,3052 55441 TS CH31TEMP
062029,000595: 16,3053 74735 MASK BIT15 # CHECK OUT-OF-DETENT BIT.
062030,000596: 16,3054 00006 EXTEND
062031,000597: 16,3055 13202 BZF RHCMOVED # BRANCH IF OUT OF DETENT.
062032,000598: 16,3056 34740 CAF OURRCBIT # IN DETENT. CHECK THE RATE COMMAND BIT.
062033,000599: 16,3057 70111 MASK DAPBOOLS
062034,000600: 16,3060 00006 EXTEND
062035,000601: 16,3061 13442 BZF PURGENCY # BRANCH IF NOT IN RATE COMMAND LAST PASS.
062036,000602:
062037,000603: # ........................................................................
062038,000604:
062039,000605: 16,3062 34743 CA BIT9 # JUST IN DETENT??
062040,000606: 16,3063 71273 MASK RCSFLAGS
062041,000607: 16,3064 00006 EXTEND
062042,000608: 16,3065 13077 BZF RUTH
062043,000609: 16,3066 34737 CAF BIT13 # CHECK FOR ATTITUDE HOLD.
062044,000610: 16,3067 00006 EXTEND
062045,000611: 16,3070 02031 RAND CHAN31
062046,000612: 16,3071 00006 EXTEND
062047,000613: 16,3072 13177 BZF RATEDAMP # BRANCH IF IN ATTITUDE HOLD.
062048,000614:
062049,000615: 16,3073 45014 CS BITS9,11 # IN AUTO.
062050,000616: 16,3074 71273 MASK RCSFLAGS # (X-AXIS OVERRIDE)
062051,000617: 16,3075 55273 TS RCSFLAGS # ZERO ORBIT (BIT 11) AND JUST-IN BIT (9).
062052,000618: 16,3076 13177 TCF RATEDAMP
062053,000619:
062054,000620: 16,3077 31273 RUTH CA RCSFLAGS
062055,000621: 16,3100 74742 MASK PBIT # IN ATTITUDE HOLD.
062056,000622: 16,3101 00006 EXTEND
062057,000623: 16,3102 13104 BZF +2 # BRANCH IF P-RATE DAMPING IS FINISHED.
062058,000624: 16,3103 13177 TCF RATEDAMP
062059,000625: 16,3104 31273 CA RCSFLAGS
062060,000626: 16,3105 74741 MASK QRBIT
062061,000627: 16,3106 00006 EXTEND
062062,000628: 16,3107 13115 BZF RATEDONE # BRANCH IF Q,R RATE DAMPING IS FINISHED.
062063,000629: 16,3110 13177 TCF RATEDAMP
062064,000630:
062065,000631: # ============================================
062066,000632:
062067,000633: 16,3111 00001 1/10SEC OCT 1
062068,000634: 16,3112 00050 40CYC OCT 50
062069,000635: 16,3113 74777 PQRBIT OCT 74777
062070,000636: 16,3114 5014 BITS9,11 EQUALS EBANK5
062071,000637: 16,3114 00056 LINRATP DEC 46 B-14
062072,000638:
062073,000639: # ============================================
062074,000640:
062075,000641: 16,3115 44740 RATEDONE CS OURRCBIT # MANUAL COMMAND AND DAMPING COMPLETED IN
062076,000642: 16,3116 00004 INHINT # ALL AXES.
062077,000643: 16,3117 70111 MASK DAPBOOLS
![]() |
Page 1428 |
062079,000645: 16,3120 54111 TS DAPBOOLS
062080,000646:
062081,000647: # READ CDUS INTO CDU DESIRED REGISTERS
062082,000648:
062083,000649: 16,3121 34737 CAF BIT13
062084,000650: 16,3122 00006 EXTEND
062085,000651: 16,3123 02031 RAND CHAN31
062086,000652: 16,3124 00006 EXTEND
062087,000653: 16,3125 13131 BZF +4
062088,000654: 16,3126 30032 CA CDUX # (X-AXIS OVERRIDE)
062089,000655: 16,3127 55633 TS CDUXD
062090,000656: 16,3130 03133 TC +3
062091,000657: 16,3131 04674 TC IBNKCALL
062092,000658: 16,3132 40153 FCADR ZATTEROR
062093,000659: 16,3133 00003 RELINT
062094,000660: 16,3134 13442 TCF PURGENCY
062095,000661:
062096,000662: 16,3135 55462 TS PERROR
062097,000663: 16,3136 34740 JUSTOUT CA OURRCBIT # INITIALIZATION - FIRST MANUAL PASS.
062098,000664: 16,3137 26111 ADS DAPBOOLS
062099,000665: 16,3140 34755 CA ZERO
062100,000666: 16,3141 55444 TS DXERROR
062101,000667: 16,3142 55445 TS DXERROR +1
062102,000668: 16,3143 55446 TS DYERROR
062103,000669: 16,3144 55447 TS DYERROR +1
062104,000670: 16,3145 55450 TS DZERROR
062105,000671: 16,3146 55451 TS DZERROR +1
062106,000672: 16,3147 55452 TS PLAST
062107,000673: 16,3150 55453 TS QLAST
062108,000674: 16,3151 55454 TS RLAST
062109,000675: 16,3152 54042 TS Q-RHCCTR
062110,000676: 16,3153 54044 TS R-RHCCTR
062111,000677: 16,3154 33113 CA PQRBIT
062112,000678: 16,3155 71273 MASK RCSFLAGS
062113,000679: 16,3156 55273 TS RCSFLAGS # BITS 10 AND 11 OF RCSFLAGS ARE 0.
062114,000680: 16,3157 41273 CS RCSFLAGS # SET 'JUST-IN' BIT TO 1.
062115,000681: 16,3160 74743 MASK BIT9
062116,000682: 16,3161 27273 ADS RCSFLAGS
062117,000683: 16,3162 03164 TC ZEROENBL
062118,000684: 16,3163 13421 TCF JETSOFF
062119,000685: 16,3164 22044 ZEROENBL LXCH R-RHCCTR
062120,000686: 16,3165 30042 CA Q-RHCCTR
062121,000687: 16,3166 53461 DXCH SAVEHAND
062122,000688: 16,3167 34755 CA ZERO
062123,000689: 16,3170 54043 TS P-RHCCTR
062124,000690: 16,3171 54042 TS Q-RHCCTR
062125,000691: 16,3172 54044 TS R-RHCCTR
062126,000692: 16,3173 33602 CA BITS8,9
062127,000693: 16,3174 00006 EXTEND
062128,000694: 16,3175 05013 WOR CHAN13 # COUNTERS ZEROED AND ENABLED
![]() |
Page 1429 |
062130,000696: 16,3176 00002 TC Q
062131,000697: 16,3177 34755 RATEDAMP CA ZERO
062132,000698: 16,3200 54043 TS P-RHCCTR
062133,000699: 16,3201 13206 TCF RATERROR
062134,000700:
062135,000701: 16,3202 34740 RHCMOVED CA OURRCBIT # P CONTROL
062136,000702: 16,3203 70111 MASK DAPBOOLS
062137,000703: 16,3204 00006 EXTEND
062138,000704: 16,3205 13135 BZF JUSTOUT -1
062139,000705: 16,3206 30032 RATERROR CA CDUX # FINDCDUW REQUIRES THAT CDUXD=CDUX DURING
062140,000706: 16,3207 55633 TS CDUXD # X-AXIS OVERRIDE
062141,000707: 16,3210 10043 CCS P-RHCCTR
062142,000708: 16,3211 13214 TCF +3
062143,000709: 16,3212 13214 TCF +2
062144,000710: 16,3213 13214 TCF +1
062145,000711: 16,3214 60000 DOUBLE # LINEAR/QUADRATIC CONTROLLER SCALING
062146,000712: 16,3215 60000 DOUBLE # (SEE EXPLANATION IN Q,R-AXES RCS
062147,000713: 16,3216 63114 AD LINRATP # AUTOPILOT)
062148,000714: 16,3217 00006 EXTEND
062149,000715: 16,3220 70043 MP P-RHCCTR
062150,000716: 16,3221 30001 CA L
062151,000717: 16,3222 00006 EXTEND
062152,000718: 16,3223 71442 MP STIKSENS
062153,000719: 16,3224 57452 XCH PLAST
062154,000720: 16,3225 40000 COM
062155,000721: 16,3226 61452 AD PLAST
062156,000722: 16,3227 55735 TS DAPTEMP1
062157,000723: 16,3230 03164 TC ZEROENBL # INTERVAL. ZERO AND ENABLE ACA COUNTERS.
062158,000724: 16,3231 41452 CS PLAST
062159,000725: 16,3232 61417 AD OMEGAP
062160,000726: 16,3233 55425 TS EDOTP
062161,000727: 16,3234 11735 CCS DAPTEMP1 # IF P COMMAND CHANGE EXCEEDS BREAKOUT
062162,000728: 16,3235 13240 TCF +3 # LEVEL, GO TO DIRECT RATE CONTROL. IF NOT
062163,000729: 16,3236 13246 TCF +8 # CHECK FOR DIRECT RATE CONTROL LAST TIME.
062164,000730: 16,3237 13240 TCF +1
062165,000731: 16,3240 61474 AD -RATEDB
062166,000732: 16,3241 00006 EXTEND
062167,000733: 16,3242 63246 BZMF +4
062168,000734: 16,3243 33112 CA 40CYC
062169,000735: 16,3244 55443 TS TCP
062170,000736: 16,3245 03257 TC PEGI
062171,000737: 16,3246 31273 CA RCSFLAGS # CHECK FOR DIRECT RATE COMMAND LAST TIME.
062172,000738: 16,3247 74742 MASK PBIT
062173,000739: 16,3250 00006 EXTEND
062174,000740: 16,3251 13253 BZF +2
062175,000741: 16,3252 03257 TC PEGI # TO PURE RATE COMMAND
062176,000742: 16,3253 31444 CA DXERROR # PSEUDO-AUTO CONTROL.
062177,000743: 16,3254 55750 TS E # X-ATTITUDE ERROR (SP)
062178,000744: 16,3255 55462 TS PERROR # LOAD P-AXIS ERROR FOR MODE1 FDAI DISPLAY
062179,000745: 16,3256 03446 TC PURGENCY +4
![]() |
Page 1430 |
062181,000747: 16,3257 30032 PEGI CA CDUX # DIRECT RATE CONTROL.
062182,000748: 16,3260 55633 TS CDUXD
062183,000749: 16,3261 34755 CA ZERO
062184,000750: 16,3262 55444 TS DXERROR
062185,000751: 16,3263 55445 TS DXERROR +1
062186,000752: 16,3264 55462 TS PERROR # ZERO P-AXIS ERROR FOR MODE1 FDAI DISPLAY
062187,000753: 16,3265 11425 CCS EDOTP
062188,000754: 16,3266 03271 TC +3
062189,000755: 16,3267 03271 TC +2
062190,000756: 16,3270 03271 TC +1
062191,000757: 16,3271 55735 TS ABSEDOTP
062192,000758: 16,3272 61474 AD TARGETDB
062193,000759: 16,3273 00006 EXTEND # IF RATE ERROR IS LESS THAN DEADBAND,
062194,000760: 16,3274 63304 BZMF LAST # FIRE, AND SWITCH TO PSEUDO-AUTO.
062195,000761: 16,3275 31443 CA TCP
062196,000762: 16,3276 00006 EXTEND # IF TIME IN RATE COMMAND EXCEEDS 4 SEC.,
062197,000763: 16,3277 63304 BZMF LAST
062198,000764: 16,3300 41273 CS RCSFLAGS
062199,000765: 16,3301 74742 MASK PBIT
062200,000766: 16,3302 27273 ADS RCSFLAGS # BIT 10 IS 1.
062201,000767: 16,3303 13307 TCF +4
062202,000768: 16,3304 44742 LAST CS PBIT
062203,000769: 16,3305 71273 MASK RCSFLAGS
062204,000770: 16,3306 55273 TS RCSFLAGS # BIT 10 IS 0.
062205,000771: 16,3307 41425 CS EDOTP
062206,000772: 16,3310 00006 EXTEND
062207,000773: 16,3311 71551 MP 1/ANETP # 1/2JTACC SCALED AT 2EXP(7)/PI
062208,000774: 16,3312 20001 DAS A
062209,000775: 16,3313 02277 TC OVERSUB
062210,000776: 16,3314 00006 EXTEND
062211,000777: 16,3315 77715 MP 25/32 # A CONTAINS TJET SCALED AT 2EXP(4)(16/25)
062212,000778: 16,3316 55524 TS TJP # 4.JET TIME
062213,000779: 16,3317 31735 CA ABSEDOTP
062214,000780: 16,3320 61473 AD -2JETLIM # COMPARING DELTA RATE WITH 2 JET LIMIT
062215,000781: 16,3321 00006 EXTEND
062216,000782: 16,3322 63325 BZMF +3
062217,000783:
062218,000784: 16,3323 36241 CA SIX
062219,000785: 16,3324 13334 TCF +8D
062220,000786: 16,3325 31524 CA TJP
062221,000787: 16,3326 27524 ADS TJP
062222,000788:
062223,000789: # GOES TO PJETSLEC FOR TWO JETS
062224,000790:
062225,000791: # P-JET-SELECTION-ROUTINE (ROTATION)
062226,000792:
062227,000793: # INPUT: NUMBERT 4,5,6 FOR WHICH PAIR OR 4 JETS
062228,000794: # TJP + FOR +P ROTATION
062229,000795:
062230,000796: # OUTPUT: CHANNEL 6
062231,000797: # PJUMPADR FOR P-AXIS SKIP
![]() |
Page 1431 |
062233,000799: # (JTLST CALL) (SMALL TJP)
062234,000800:
062235,000801: # ORDER OF POLICIES TRIED IN CASE OF FAILURE.
062236,000802: # +P -P
062237,000803: # 7,15 8,16
062238,000804: # 4,12 3,11
062239,000805: # 4,7 8,11
062240,000806: # 7,12 11,16
062241,000807: # 12,15 3,16
062242,000808: # 4,15 3,8
062243,000809: # ALARM ALARM
062244,000810:
062245,000811: 16,3327 34747 CA AORBSYST
062246,000812: 16,3330 70111 MASK DAPBOOLS
062247,000813: 16,3331 10000 CCS A
062248,000814: 16,3332 34753 CA ONE
062249,000815: 16,3333 64751 AD FOUR
062250,000816: 16,3334 55741 TS NUMBERT
062251,000817: 16,3335 34753 PJETSLEC CA ONE
062252,000818: 16,3336 54001 TS L
062253,000819: 16,3337 11524 CCS TJP
062254,000820: 16,3340 13345 TCF +5
062255,000821: 16,3341 13421 TCF JETSOFF
062256,000822: 16,3342 13344 TCF +2
062257,000823: 16,3343 13421 TCF JETSOFF
062258,000824: 16,3344 22007 ZL
062259,000825: 16,3345 64753 AD ONE
062260,000826: 16,3346 55735 TS ABSTJ
062261,000827: 16,3347 23742 LXCH ROTINDEX
062262,000828: 16,3350 03514 TC SELECTP
062263,000829: 16,3351 46241 CS SIX
062264,000830: 16,3352 61741 AD NUMBERT
062265,000831: 16,3353 00006 EXTEND
062266,000832: 16,3354 13356 BZF +2
062267,000833:
062268,000834: 16,3355 44752 CS TWO
062269,000835: 16,3356 64751 AD FOUR
062270,000836: 16,3357 55521 TS NO.PJETS
062271,000837: 16,3360 31737 CA POLYTEMP
062272,000838: 16,3361 05745 TC WRITEP
062273,000839: 16,3362 41735 CS ABSTJ
062274,000840: 16,3363 63575 AD +150MST6
062275,000841: 16,3364 00006 EXTEND
062276,000842: 16,3365 63607 BZMF QRAXIS # GO TO QRAXIS OR TO GTS.
062277,000843:
062278,000844: 16,3366 63555 AD -136MST6
062279,000845: 16,3367 00006 EXTEND
062280,000846: 16,3370 63375 BZMF +5
062281,000847:
062282,000848: 16,3371 27735 ADS ABSTJ
062283,000849: 16,3372 51742 INDEX ROTINDEX
![]() |
Page 1432 |
062285,000851: 16,3373 33604 CA MINTIMES
062286,000852: 16,3374 55524 TS TJP
062287,000853:
062288,000854: 16,3375 31735 CA ABSTJ
062289,000855: 16,3376 22007 ZL
062290,000856: 16,3377 00004 INHINT
062291,000857: 16,3400 53467 DXCH T6FURTHA
062292,000858: 16,3401 04674 TC IBNKCALL
062293,000859: 16,3402 37046 CADR JTLST
062294,000860: 16,3403 44740 CS BIT12
062295,000861: 16,3404 71273 MASK RCSFLAGS
062296,000862: 16,3405 55273 TS RCSFLAGS # BIT 12 SET TO 0.
062297,000863: 16,3406 03410 TC ALTSYST
062298,000864: 16,3407 13607 TCF QRAXIS
062299,000865:
062300,000866: 16,3410 30111 ALTSYST CA DAPBOOLS # ALTERNATE P-AXIS JETS
062301,000867: 16,3411 54001 TS L
062302,000868: 16,3412 34747 CA AORBSYST
062303,000869: 16,3413 00006 EXTEND
062304,000870: 16,3414 06001 RXOR LCHAN
062305,000871: 16,3415 54111 TS DAPBOOLS
062306,000872: 16,3416 00003 RELINT
062307,000873: 16,3417 00002 TC Q
062308,000874:
062309,000875: 16,3420 03410 DKALT TC ALTSYST
062310,000876:
062311,000877: 16,3421 05744 JETSOFF TC WRITEP -1
062312,000878: 16,3422 34755 CA ZERO
062313,000879: 16,3423 55524 TS TJP
062314,000880: 16,3424 13607 TCF QRAXIS
062315,000881:
062316,000882: # (NOTE -- M13 = 1 IDENTICALLY IMPLIES NULL MULTIPLICATION.)
062317,000883:
062318,000884: 16,3425 30033 CALCPERR CA CDUY # P-ERROR CALCULATION.
062319,000885: 16,3426 00006 EXTEND
062320,000886: 16,3427 21634 MSU CDUYD # CDU VALUE - ANGLE DESIRED (Y-AXIS)
062321,000887: 16,3430 00006 EXTEND
062322,000888: 16,3431 71412 MP M11 # (CDUY-CDUYD)M11 SCALED AT PI RADIANS
062323,000889: 16,3432 57750 XCH E # SAVE FIRST TERM (OF TWO)
062324,000890: 16,3433 30032 CA CDUX # THIRD COMPONENT
062325,000891: 16,3434 00006 EXTEND
062326,000892: 16,3435 21633 MSU CDUXD # CDU VALUE - ANGLE DESIRED (X-AXIS)
062327,000893: # EXTEND
062328,000894: # MP M13
062329,000895: 16,3436 61277 AD DELPEROR # KALCMANU INERFACE ERROR
062330,000896: 16,3437 27750 ADS E # SAVE SUM OF TERMS. COULD BE OVERFLOW.
062331,000897: 16,3440 57462 XCH PERROR # SAVE P-ERROR FOR EIGHT-BALL DISPLAY.
062332,000898: 16,3441 00002 TC Q # RETURN TO CALLER
062333,000899:
062334,000900: # P-AXIS URGENCY FUNCTION CALCULATION.
![]() |
Page 1433 |
062336,000902: 16,3442 03425 PURGENCY TC CALCPERR # CALCULATE P-AXIS ERRORS.
062337,000903: 16,3443 41641 CS OMEGAPD # THIS CODING IS COMMON TO BOTH LM DAP AND
062338,000904: 16,3444 61417 AD OMEGAP # SPS-BACKUP MODE.
062339,000905: 16,3445 55425 TS EDOTP # EDOTP = OMEGAP - OMEGAPD AT PI/4 RAD/SEC
062340,000906:
062341,000907: 16,3446 44753 CS ONE
062342,000908: 16,3447 55476 TS AXISCTR
062343,000909: 16,3450 30111 CA DAPBOOLS
062344,000910: 16,3451 74737 MASK CSMDOCKD
062345,000911: 16,3452 00006 EXTEND
062346,000912: 16,3453 13470 BZF HEADTJET
062347,000913: 16,3454 00004 INHINT # IF CSMDOCKD = 1, GO TO DOCKED RCS LOGIC
062348,000914: 16,3455 04674 TC IBNKCALL
062349,000915: 16,3456 37700 CADR SPSRCS
062350,000916:
062351,000917: 16,3457 31524 CA TJP
062352,000918: 16,3460 00006 EXTEND
062353,000919: 16,3461 13420 BZF DKALT # IF TJP = ZERO, CHANGE AORBSYST.
062354,000920: 16,3462 00003 RELINT
062355,000921: 16,3463 41741 CS NUMBERT
062356,000922: 16,3464 66241 AD SIX
062357,000923: 16,3465 00006 EXTEND # IF NUMBERT = 6 BYPASS AORBSYST CHECK
062358,000924: 16,3466 13335 BZF PJETSLEC # AND USE FOUR JETS, OTHERWISE,
062359,000925: 16,3467 13327 TCF PJETSLEC -6 # SELECT AORBSYST AND USE TWO JETS
062360,000926: 16,3470 34755 HEADTJET CA ZERO
062361,000927: 16,3471 55477 TS SENSETYP
062362,000928: 16,3472 00004 INHINT
062363,000929: 16,3473 04674 TC IBNKCALL
062364,000930: 16,3474 37207 CADR TJETLAW
062365,000931: 16,3475 00003 RELINT
062366,000932:
062367,000933: 16,3476 41737 CS FIREFCT
062368,000934: 16,3477 63513 AD -FOURDEG
062369,000935: 16,3500 00006 EXTEND
062370,000936: 16,3501 63327 BZMF PJETSLEC -6
062371,000937: 16,3502 11524 CCS TJP
062372,000938: 16,3503 13505 TCF +2
062373,000939: 16,3504 13421 TCF JETSOFF
062374,000940: 16,3505 63512 AD -160MST6
062375,000941: 16,3506 00006 EXTEND
062376,000942: 16,3507 63327 BZMF PJETSLEC -6
062377,000943: 16,3510 36241 CA SIX
062378,000944: 16,3511 13334 TCF PJETSLEC -1
062379,000945: 16,3512 77377 -160MST6 DEC -256 B-14
062380,000946: 16,3513 75117 -FOURDEG DEC -.08888
062381,000947:
![]() |
Page 1434 |
062383,000949: # JET POLICY CONSTRUCTION SUBROUTINE
062384,000950:
062385,000951: # INPUT: ROTINDEX, NUMBERT
062386,000952:
062387,000953: # OUTPUT: POLYTEMP (JET POLICY)
062388,000954:
062389,000955: # THIS SUBROUTINE SELECT A SUBSET OF THE DESIRED JETS WHICH HAS NO FAILURE
062390,000956:
062391,000957: 16,3514 36241 SELECTP CA SIX
062392,000958: 16,3515 55740 TS TEMPNUM
062393,000959: 16,3516 51741 INDEX NUMBERT
062394,000960: 16,3517 33546 CA TYPEP
062395,000961: 16,3520 51742 INDEX ROTINDEX
062396,000962: 16,3521 73537 MASK JETSALL
062397,000963: 16,3522 55737 TS POLYTEMP
062398,000964: 16,3523 71263 MASK CH6MASK
062399,000965: 16,3524 10000 CCS A
062400,000966: 16,3525 13527 TCF +2
062401,000967: 16,3526 00002 TC Q
062402,000968: 16,3527 11740 CCS TEMPNUM
062403,000969: 16,3530 13534 TCF +4
062404,000970: 16,3531 05567 TC ALARM
062405,000971: 16,3532 02003 OCT 02003
062406,000972: 16,3533 13421 TCF JETSOFF # *****TCF ALARMJET *********************
062407,000973: 16,3534 55741 SELECTYZ TS NUMBERT
062408,000974: 16,3535 13515 TCF SELECTP +1
062409,000975: 16,3536 12752 -1 TCF ABORTYZ +2
062410,000976: 16,3537 00252 JETSALL OCT 00252
062411,000977: 16,3540 00125 OCT 00125 # +P
062412,000978: 16,3541 00140 OCT 00140 # -Y
062413,000979: 16,3542 00006 OCT 00006 # -Z
062414,000980: 16,3543 00220 OCT 00220 # +Y
062415,000981: 16,3544 00011 OCT 00011 # +Z
062416,000982: 16,3545 00151 OCT 00151 # +V
062417,000983: 16,3546 00146 TYPEP OCT 00146 # -U
062418,000984: 16,3547 00226 OCT 00226 # -V
062419,000985: 16,3550 00231 OCT 00231 # +U
062420,000986: 16,3551 00151 OCT 00151 # +V
062421,000987: 16,3552 00132 OCT 00132 # 1-3
062422,000988: 16,3553 00245 OCT 00245 # 2-4
062423,000989: 16,3554 00377 OCT 00377 # ALL
062424,000990: 16,3555 16,3555 INDXYZ = -136MST6
062425,000991: 16,3555 77445 -136MST6 DEC -218 B-14
062426,000992: 16,3556 00004 DEC 4 B-14
062427,000993: 16,3557 00002 DEC 2 B-14
062428,000994: 16,3560 07776 OCT 07776
062429,000995: 16,3561 00005 DEC 5 B-14
062430,000996: 16,3562 00011 DEC 9 B-14
062431,000997: 16,3563 00012 DEC 10 B-14
062432,000998: 16,3564 07776 OCT 07776
062433,000999: 16,3565 00003 DEC 3 B-14
![]() |
Page 1435 |
062435,001001: 16,3566 00010 DEC 8 B-14
062436,001002: 16,3567 00007 DEC 7 B-14
062437,001003: 16,3570 07776 OCT 07776 # THESE INDEXES OF MASK JETSALL WILL
062438,001004: 16,3571 07776 OCT 07776 # CHANGE THE INSTRUCTION AT SELECTP +4
062439,001005: 16,3572 07776 OCT 07776 # TO BE TC JETSALL -1
062440,001006: 16,3573 07776 OCT 07776 # ONLY USED FOR TRANSLATION FAILURE
062441,001007: 16,3574 07776 OCT 07776
062442,001008: 16,3575 00360 +150MST6 DEC 240 B-14
062443,001009: 16,3576 07400 07400OCT OCT 07400
062444,001010:
062445,001011: # T-JET LAW FIXED CONSTANTS
062446,001012:
062447,001013: 16,3577 00266 NORMSCL OCT 266
062448,001014: 16,3600 74631 -100MS DEC -.1
062449,001015: 16,3601 06315 200MS DEC .2
062450,001016: 16,3602 7715 25/32 = PRIO31 # (DEC .78125)
062451,001017: 16,3602 00600 BITS8,9 OCTAL 00600
062452,001018: 16,3603 00632 1/40 DEC .02500
062453,001019: 16,3604 77751 MINTIMES DEC -22 B-14
062454,001020: 16,3605 00026 DEC 22 B-14
062455,001021: 16,3606 02713 PSKIPADR GENADR SKIPPAXS
062456,001022:
062457,001023: # GOES TO Q,R-AXES RCS AUTOPILOT
062458,001024: 16,3607 41643 QRAXIS CS OMEGARD
062459,001025: 16,3610 61421 AD OMEGAR
062460,001026: 16,3611 02277 TC OVERSUB
062461,001027: 16,3612 55435 TS EDOTR
062462,001028: 16,3613 41642 CS OMEGAQD
062463,001029: 16,3614 61420 AD OMEGAQ
062464,001030: 16,3615 02277 TC OVERSUB
062465,001031: 16,3616 55434 TS EDOTQ
062466,001032: 16,3617 00006 EXTEND
062467,001033: 16,3620 33623 DCA QERRCALL
062468,001034: 16,3621 52006 DTCB
062469,001035:
062470,001036: 16,3622 E6,1537 EBANK= AOSQ
062471,001037: 16,3622 02043 36106 QERRCALL 2CADR CALLQERR
End of include-file P-AXIS_RCS_AUTOPILOT.agc. Parent file is MAIN.agc