Source Code
These source-code files are part of a reconstructed copy of Sundial E, the
final release of the Block II Command Module (CM) Apollo Guidance Computer
(AGC) system test software.
They have been created via disassembly of binary dumps of original core rope memory modules, part numbers 2003053-121, 2003053-151, and 2003972-211, belonging to the MIT Museum. Since only binary dumps (rather than listings) of Sundial are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing. |
005567,000002: ## Copyright: Public domain.
005568,000003: ## Filename: T4RUPT_PROGRAM.agc
005569,000004: ## Purpose: A section of Sundial E.
005570,000005: ## It is part of the reconstructed source code for the final
005571,000006: ## release of the Block II Command Module system test software. No
005572,000007: ## original listings of this program are available; instead, this
005573,000008: ## file was created via disassembly of dumps of Sundial core rope
005574,000009: ## modules and comparison with other AGC programs.
005575,000010: ## Assembler: yaYUL
005576,000011: ## Contact: Ron Burkey <info@sandroid.org>.
005577,000012: ## Website: www.ibiblio.org/apollo/index.html
005578,000013: ## Mod history: 2023-06-22 MAS Created from Aurora 12.
005579,000014: ## 2023-06-30 MAS Updated for Sundial E.
005580,000015: ## 2023-07-03 MAS Moved in patches from FRESH START AND RESTART.
005581,000016:
005582,000017:
005583,000018: 4616 SETLOC ENDPHMNF
005584,000019:
005585,000020: 4616 00006 T4RUPT EXTEND # ZERO OUT0 EVERY T4RUPT.
005586,000021: 4617 01010 WRITE OUT0 # (COMES HERE WITH +0 IN A)
005587,000022:
005588,000023: 4620 10347 CCS DSRUPTSW # SEE IF THIS IS A SPECIAL RUPT TO
005589,000024: 4621 14631 TCF REGRUPT +1 # ZERO OUT0 20MS AFTER IT WAS DRIVEN BY
005590,000025: 4622 14630 TCF REGRUPT # DSPOUT. IF SO, DSRUPTSW IS NNZ.
005591,000026:
005592,000027: 4623 67652 AD ONE # RESTORE DSRUPTSW TO ITS POSITIVE VALUE.
005593,000028: 4624 54347 TS DSRUPTSW
005594,000029:
005595,000030: 4625 34636 DSKYRSET CAF 100MRUPT # 20 MS ON / 100 MS OFF.
005596,000031: 4626 54027 TS TIME4
005597,000032: 4627 14515 TCF NOQBRSM
005598,000033:
005599,000034: 4630 37656 REGRUPT CAF SEVEN # REGULAR 60 MS RUPT - COUNT DOWN ON
005600,000035: 4631 54065 +1 TS ITEMP1 # DSRUPTSW.
005601,000036: 4632 54347 TS DSRUPTSW
005602,000037:
005603,000038: 4633 34023 CAF T4RPTBB # OFF TO SWITCHED BANK
005604,000039: 4634 56006 XCH BBANK
005605,000040: 4635 12432 TCF T4RUPTA
005606,000041:
005607,000042: 4636 37766 100MRUPT DEC 16374 B-14
005608,000043: 4637 74000 74K OCT 74000
005609,000044:
005610,000045: # RELTAB IS A PACKED TABLE. RELAYWORD CODE IN UPPER 4 BITS, RELAY CODE
005611,000046: # IN LOWER 5 BITS.
005612,000047:
005613,000048: 4640 04025 RELTAB OCT 04025
005614,000049: 4641 10003 OCT 10003
005615,000050: 4642 14031 OCT 14031
005616,000051: 4643 20033 OCT 20033
005617,000052: 4644 24017 OCT 24017
005618,000053: 4645 30036 OCT 30036
005619,000054: 4646 34034 OCT 34034
005620,000055: 4647 40023 OCT 40023
005621,000056: 4650 44035 OCT 44035
005622,000057: 4651 50037 OCT 50037
005623,000058: 4652 54000 OCT 54000
005624,000059: 4653 60000 RELTAB11 OCT 60000
005625,000060: 4654 ENDT4FF EQUALS
005626,000061:
005627,000062: # SWITCHED-BANK PORTION.
005628,000063:
005629,000064: 12,2432 SETLOC ENDFRESS
005630,000065:
005631,000066: 12,2432 54016 T4RUPTA TS BANKRUPT
005632,000067: 12,2433 00006 EXTEND
005633,000068: 12,2434 22012 QXCH QRUPT
005634,000069:
005635,000070: 12,2435 10322 CDRVE CCS DSPTAB +11D
005636,000071: 12,2436 02445 TC DSPOUT
005637,000072: 12,2437 02445 TC DSPOUT
005638,000073:
005639,000074: 12,2440 56322 XCH DSPTAB +11D
005640,000075: 12,2441 75465 MASK LOW11
005641,000076: 12,2442 54322 TS DSPTAB +11D
005642,000077: 12,2443 64653 AD RELTAB11
005643,000078: 12,2444 02505 TC DSPLAYC
005644,000079:
005645,000080: # DSPOUT PROGRAM. PUTS OUT DISPLAYS.
005646,000081:
005647,000082: 12,2445 10303 DSPOUT CCS NOUT # DRIVE DISPLAY SYSTEM RELAYS.
005648,000083: 12,2446 12451 TCF +3
005649,000084:
005650,000085: 12,2447 32466 NODSPOUT CAF 120MRUPT # SET FOR RUPT IN 120 MS IF NO RELAYS.
005651,000086: 12,2450 12512 TCF SETTIME4
005652,000087:
005653,000088: 12,2451 54303 TS NOUT
005654,000089: 12,2452 47657 CS ZERO
005655,000090: 12,2453 54077 TS DSRUPTEM # SET TO -0 FOR 1ST PASS THRU DSPTAB
005656,000091: 12,2454 56341 XCH DSPCNT
005657,000092: 12,2455 67660 AD NEG0 # TO PREVENT +0
005658,000093: 12,2456 54341 TS DSPCNT
005659,000094: 12,2457 50341 DSPSCAN INDEX DSPCNT
005660,000095: 12,2460 10307 CCS DSPTAB
005661,000096: 12,2461 10341 CCS DSPCNT # IF DSPTAB ENTRY +, SKIP
005662,000097: 12,2462 02455 TC DSPSCAN -2 # IF DSPCNT +, AGAIN
005663,000098: 12,2463 02474 TC DSPLAY # IF DSPTAB ENTRY -, DISPLAY
005664,000099: 12,2464 00012 TABLNTH OCT 12 # DEC 10 LENGTH OF DSPTAB
005665,000100: 12,2465 10077 CCS DSRUPTEM # IF DSRUPTEM=+0,2ND PASS THRU DSPTAB
005666,000101: 12,2466 37764 120MRUPT DEC 16372 B-14 # (DSPCNT = 0). +0 INTO NOUT.
005667,000102: 12,2467 54303 TS NOUT
005668,000103: 12,2470 12447 TCF NODSPOUT
005669,000104: 12,2471 54077 TS DSRUPTEM # IF DSRUPTEM=-0,1ST PASS THRU DSPTAB
005670,000105: 12,2472 32464 CAF TABLNTH # (DSPCNT=0). +0 INTO DSRUPTEM. PASS AGAIN
005671,000106: 12,2473 02456 TC DSPSCAN -1
005672,000107:
005673,000108: 12,2474 67652 DSPLAY AD ONE
005674,000109: 12,2475 50341 INDEX DSPCNT
005675,000110: 12,2476 54307 TS DSPTAB # REPLACE POSITIVELY
005676,000111: 12,2477 75465 MASK LOW11 # REMOVE BITS 12 TO 15
005677,000112: 12,2500 54077 TS DSRUPTEM
005678,000113: 12,2501 35457 CAF HI5
005679,000114: 12,2502 50341 INDEX DSPCNT
005680,000115: 12,2503 74640 MASK RELTAB # PICK UP BITS 12 TO 15 OF RELTAB ENTRY
005681,000116: 12,2504 60077 AD DSRUPTEM
005682,000117: 12,2505 00006 DSPLAYC EXTEND
005683,000118: 12,2506 01010 WRITE OUT0
005684,000119:
005685,000120: 12,2507 40347 CS DSRUPTSW
005686,000121: 12,2510 54347 TS DSRUPTSW
005687,000122: 12,2511 32525 CAF 20MRUPT
005688,000123:
005689,000124: 12,2512 54027 SETTIME4 TS TIME4
005690,000125: # JUMP TO APPROPRIATE ONCE-PER SECOND (.96 SEC ACTUALLY) ACTIVITY
005691,000126:
005692,000127: 12,2513 50065 T4JUMP INDEX ITEMP1
005693,000128: 12,2514 12515 TCF +1
005694,000129:
005695,000130: 12,2515 13575 TCF OPTDRIVE
005696,000131: 12,2516 13274 TCF OPTMON
005697,000132: 12,2517 12526 TCF IMUMON
005698,000133: 12,2520 14511 TCF RESUME
005699,000134: 12,2521 13575 TCF OPTDRIVE
005700,000135: 12,2522 13274 TCF OPTMON
005701,000136: 12,2523 12526 TCF IMUMON
005702,000137: 12,2524 14511 TCF RESUME
005703,000138:
005704,000139: 12,2525 37776 20MRUPT DEC 16382 B-14
005705,000140:
005706,000141: # IMU INBIT MONITOR - ENTERED EVERY 480 MS BY T4RUPT.
005707,000142:
005708,000143: 12,2526 37647 IMUMON CAF BIT4 # SEE IF IN COARSE ALIGN.
005709,000144: 12,2527 00006 EXTEND
005710,000145: 12,2530 02012 RAND 12
005711,000146: 12,2531 00006 EXTEND
005712,000147: 12,2532 12542 BZF IMUMON1 # NO.
005713,000148:
005714,000149: 12,2533 40322 CS DSPTAB +11D # YES. IS NO ATT LAMP ON
005715,000150: 12,2534 77647 MASK BIT4
005716,000151: 12,2535 00006 EXTEND
005717,000152: 12,2536 12552 BZF IMUMON2 # YES.
005718,000153:
005719,000154: 12,2537 33260 CAF OCT40010 # NO. TURN ON NO ATT LAMP.
005720,000155: 12,2540 26322 ADS DSPTAB +11D
005721,000156: 12,2541 12552 TCF IMUMON2
005722,000157:
005723,000158: 12,2542 40322 IMUMON1 CS DSPTAB +11D # IS NO ATT LAMP ON
005724,000159: 12,2543 77647 MASK BIT4
005725,000160: 12,2544 10000 CCS A
005726,000161: 12,2545 02552 TC IMUMON2 # NO.
005727,000162: 12,2546 30322 CA DSPTAB +11D # YES. TURN OFF NO ATT LAMP.
005728,000163: 12,2547 73257 MASK OCT37767
005729,000164: 12,2550 67634 AD BIT15
005730,000165: 12,2551 54322 TS DSPTAB +11D
005731,000166:
005732,000167: 12,2552 30361 IMUMON2 CA IMODES30 # SEE IF THERE HAS BEEN A CHANGE IN THE
005733,000168: 12,2553 00006 EXTEND # RELEVENT BITS OF CHAN 30.
005734,000169: 12,2554 06030 RXOR 30
005735,000170: 12,2555 73244 MASK 30RDMSK
005736,000171: 12,2556 00006 EXTEND
005737,000172: 12,2557 12607 BZF TNONTEST # NO CHANGE IN STATUS.
005738,000173:
005739,000174: 12,2560 54074 TS RUPTREG1 # SAVE BITS WHICH HAVE CHANGED.
005740,000175: 12,2561 22361 LXCH IMODES30 # UPDATE IMODES30.
005741,000176: 12,2562 00006 EXTEND
005742,000177: 12,2563 06001 RXOR L
005743,000178: 12,2564 54361 TS IMODES30
005744,000179:
005745,000180: 12,2565 47652 CS ONE
005746,000181: 12,2566 56074 XCH RUPTREG1
005747,000182: 12,2567 00006 EXTEND
005748,000183: 12,2570 63037 BZMF TLIM # CHANGE IN IMU TEMP.
005749,000184: 12,2571 12573 TCF NXTIFBIT # BEGIN BIT SCAN.
005750,000185:
005751,000186: 12,2572 67652 -1 AD ONE # (RE-ENTERS HERE FROM NXTIFAIL.)
005752,000187: 12,2573 24074 NXTIFBIT INCR RUPTREG1 # ADVANCE BIT POSITION NUMBER.
005753,000188: 12,2574 60000 +1 DOUBLE
005754,000189: 12,2575 54000 TS A # SKIP IF OVERFLOW.
005755,000190: 12,2576 12573 TCF NXTIFBIT # LOOK FOR BIT.
005756,000191:
005757,000192: 12,2577 56075 XCH RUPTREG2 # SAVE OVERFLOW-CORRECTED DATA.
005758,000193: 12,2600 50074 INDEX RUPTREG1 # SELECT NEW VALUE OF THIS BIT.
005759,000194: 12,2601 37635 CAF BIT14
005760,000195: 12,2602 70361 MASK IMODES30
005761,000196: 12,2603 50074 INDEX RUPTREG1
005762,000197: 12,2604 03240 TC IFAILJMP
005763,000198:
005764,000199: 12,2605 10075 NXTIFAIL CCS RUPTREG2 # PROCESS ANY ADDITIONAL CHANGES.
005765,000200: 12,2606 12572 TCF NXTIFBIT -1
005766,000201:
005767,000202: 12,2607 40361 TNONTEST CS IMODES30 # AFTER PROCESSING ALL CHANGES, SEE IF IT
005768,000203: 12,2610 77644 MASK BIT7 # IS TIME TO ACT ON A TURN-ON SEQUENCE.
005769,000204: 12,2611 10000 CCS A
005770,000205: 12,2612 12735 TCF C33TEST # NO - EXAMINE CHANNEL 33.
005771,000206:
005772,000207: 12,2613 37643 CAF BIT8 # SEE IF FIRST SAMPLE OR SECOND.
005773,000208: 12,2614 70361 MASK IMODES30
005774,000209: 12,2615 10000 CCS A
005775,000210: 12,2616 12622 TCF PROCTNON # REACT AFTER SECOND SAMPLE.
005776,000211:
005777,000212: 12,2617 37643 CAF BIT8 # IF FIRST SAMPLE, SET BIT TO REACT NEXT
005778,000213: 12,2620 26361 ADS IMODES30 # TIME.
005779,000214: 12,2621 12735 TCF C33TEST
005780,000215: # PROCESS IMU TURN-ON REQUESTS AFTER WAITING 1 SAMPLE FOR ALL SIGNALS TO ARRIVE.
005781,000216:
005782,000217: 12,2622 43264 PROCTNON CS BITS7&8
005783,000218: 12,2623 70361 MASK IMODES30
005784,000219: 12,2624 54361 TS IMODES30
005785,000220: 12,2625 77635 MASK BIT14 # SEE IF TURN-ON REQUEST.
005786,000221: 12,2626 10000 CCS A
005787,000222: 12,2627 12720 TCF OPONLY # OPERATE ON ONLY.
005788,000223:
005789,000224: 12,2630 40361 CS IMODES30 # IF TURN-ON REQUEST, WE SHOULD HAVE IMU
005790,000225: 12,2631 77642 MASK BIT9 # OPERATE.
005791,000226: 12,2632 10000 CCS A
005792,000227: 12,2633 12636 TCF +3
005793,000228:
005794,000229: 12,2634 05644 TC ALARM # ALARM IF NOT.
005795,000230: 12,2635 00213 OCT 213
005796,000231:
005797,000232: 12,2636 03225 +3 TC CAGESUB
005798,000233: 12,2637 33272 CAF 90SECS
005799,000234: 12,2640 04451 TC WAITLIST
005800,000235: 12,2641 02646 24007 2CADR ENDTNON
005801,000236: 12,2643 12735 TCF C33TEST
005802,000237:
005803,000238: 12,2644 33272 RETNON CAF 90SECS
005804,000239: 12,2645 04472 TC VARDELAY
005805,000240:
005806,000241: 12,2646 47651 ENDTNON CS BIT2 # RESET TURN-ON REQUEST FAIL BIT.
005807,000242: 12,2647 70361 MASK IMODES30
005808,000243: 12,2650 56361 XCH IMODES30
005809,000244: 12,2651 77651 MASK BIT2 # IF IT WAS OFF, SEND ISS DELAY COMPLETE.
005810,000245: 12,2652 00006 EXTEND
005811,000246: 12,2653 12666 BZF ENDTNON2
005812,000247:
005813,000248: 12,2654 37635 CAF BIT14 # IF IT WAS ON AND TURN-ON REQUEST NOW
005814,000249: 12,2655 70361 MASK IMODES30 # PRESENT, RE-ENTER 90 SEC DELAY IN WL.
005815,000250: 12,2656 00006 EXTEND
005816,000251: 12,2657 12644 BZF RETNON
005817,000252:
005818,000253: 12,2660 40061 CS STATE # IF IT IS NOT ON NOW, SEE IF A PROG WAS
005819,000254: 12,2661 77643 MASK IMUSEFLG # WAITING.
005820,000255: 12,2662 10000 CCS A
005821,000256: 12,2663 14505 TCF TASKOVER
005822,000257: 12,2664 04103 TC POSTJUMP
005823,000258: 12,2665 26655 CADR IMUBAD # UNSUCCESSFUL TURN-ON.
005824,000259:
005825,000260: 12,2666 37634 ENDTNON2 CAF BIT15 # SEND ISS DELAY COMPLETE.
005826,000261: 12,2667 00006 EXTEND
005827,000262: 12,2670 05012 WOR 12
005828,000263: 12,2671 04654 UNZ2 TC ZEROICDU
005829,000264:
005830,000265: 12,2672 43261 CS BITS4&5 # REMOVE ZERO AND COARSE.
005831,000266: 12,2673 00006 EXTEND
005832,000267: 12,2674 03012 WAND 12
005833,000268:
005834,000269: 12,2675 34661 CAF 4SECS # ALLOW 4 SECS FOR COUNTER TO FIND GIMBAL.
005835,000270: 12,2676 04472 TC VARDELAY
005836,000271:
005837,000272: 12,2677 43262 ISSUP CS OCT54 # REMOVE CAGING, IMU FAIL INHIBIT, AND
005838,000273: 12,2700 70361 MASK IMODES30 # ICDUFAIL INHIBIT FLAGS.
005839,000274: 12,2701 54361 TS IMODES30
005840,000275:
005841,000276: 12,2702 03176 TC SETISSW # ISS WARNING MIGHT HAVE BEEN INHIBITED.
005842,000277:
005843,000278: 12,2703 47634 CS BIT15 # REMOVE IMU DELAY COMPLETE DISCRETE.
005844,000279: 12,2704 00006 EXTEND
005845,000280: 12,2705 03012 WAND 12
005846,000281:
005847,000282: 12,2706 37640 CAF BIT11 # DONT ENABLE PROG ALARM ON PIP FAIL FOR
005848,000283: 12,2707 04451 TC WAITLIST # ANOTHER 10 SECS.
005849,000284: 12,2710 02266 26007 2CADR PFAILOK
005850,000285: 12,2712 40061 CS STATE # SEE IF ANYONE IS WAITING FOR THE IMU AT
005851,000286: 12,2713 77643 MASK IMUSEFLG # IMUZERO. IF SO, WAKE THEM UP.
005852,000287: 12,2714 10000 CCS A
005853,000288: 12,2715 14505 TCF TASKOVER
005854,000289:
005855,000290: 12,2716 04103 TC POSTJUMP
005856,000291: 12,2717 26647 CADR ENDIMU
005857,000292:
005858,000293: 12,2720 03737 OPONLY TC OPONLY1
005859,000294: 12,2721 70061 MASK STATE # UNLESS SOMEONE IS USING THE IMU.
005860,000295: 12,2722 10000 CCS A
005861,000296: 12,2723 12735 TCF C33TEST
005862,000297:
005863,000298: 12,2724 03233 TC CAGESUB2 # SET TURNON FLAGS.
005864,000299:
005865,000300: 12,2725 37646 CAF BIT5
005866,000301: 12,2726 00006 EXTEND
005867,000302: 12,2727 05012 WOR 12
005868,000303:
005869,000304: 12,2730 37645 CAF BIT6 # WAIT 300 MS FOR AGS TO RECEIVE SIGNAL.
005870,000305: 12,2731 04451 TC WAITLIST
005871,000306: 12,2732 02671 24007 2CADR UNZ2
005872,000307: 12,2734 12735 TCF C33TEST
005873,000308: # MONITOR CHANNEL 33 FLIP-FLOP INPUTS.
005874,000309:
005875,000310: 12,2735 30362 C33TEST CA IMODES33 # SEE IF RELEVENT CHAN33 BITS HAVE
005876,000311: 12,2736 74430 MASK 33RDMSK
005877,000312: 12,2737 54001 TS L # CHANGED.
005878,000313: 12,2740 34430 CAF 33RDMSK
005879,000314: 12,2741 00006 EXTEND
005880,000315: 12,2742 03033 WAND 33 # RESETS FLIP-FLOP INPUTS.
005881,000316: 12,2743 00006 EXTEND
005882,000317: 12,2744 06001 RXOR L
005883,000318: 12,2745 00006 EXTEND
005884,000319: 12,2746 12775 BZF GLOCKMON # ON NO CHANGE.
005885,000320:
005886,000321: 12,2747 54074 TS RUPTREG1 # SAVE BITS WHICH HAVE CHANGED.
005887,000322: 12,2750 22362 LXCH IMODES33
005888,000323: 12,2751 00006 EXTEND
005889,000324: 12,2752 06001 RXOR L
005890,000325: 12,2753 54362 TS IMODES33 # UPDATED IMODES33.
005891,000326:
005892,000327: 12,2754 37657 CAF ZERO
005893,000328: 12,2755 56074 XCH RUPTREG1
005894,000329: 12,2756 60000 DOUBLE
005895,000330: 12,2757 12762 TCF NXTIBT +1 # SCAN FOR BIT CHANGES.
005896,000331:
005897,000332: 12,2760 67652 -1 AD ONE
005898,000333: 12,2761 24074 NXTIBT INCR RUPTREG1
005899,000334: 12,2762 60000 +1 DOUBLE
005900,000335: 12,2763 54000 TS A # (CODING IDENTICAL TO CHAN 30).
005901,000336: 12,2764 12761 TCF NXTIBT
005902,000337:
005903,000338: 12,2765 56075 XCH RUPTREG2
005904,000339: 12,2766 50074 INDEX RUPTREG1 # GET NEW VALUE OF BIT WHICH CHANGED.
005905,000340: 12,2767 37636 CAF BIT13
005906,000341: 12,2770 70362 MASK IMODES33
005907,000342: 12,2771 50074 INDEX RUPTREG1
005908,000343: 12,2772 03246 TC C33JMP
005909,000344:
005910,000345: 12,2773 10075 NXTFL33 CCS RUPTREG2 # PROCESS POSSIBLE ADDITIONAL CHANGES.
005911,000346: 12,2774 12760 TCF NXTIBT -1
005912,000347: # MONITOR FOR GIMBAL LOCK.
005913,000348:
005914,000349: 12,2775 10034 GLOCKMON CCS CDUZ
005915,000350: 12,2776 13002 TCF GLOCKCHK # SEE IF MAGNITUDE OF MGA IS GREATER THAN
005916,000351: 12,2777 13010 TCF SETGLOCK # 70 DEGREES.
005917,000352: 12,3000 13002 TCF GLOCKCHK
005918,000353: 12,3001 13010 TCF SETGLOCK
005919,000354:
005920,000355: 12,3002 63035 GLOCKCHK AD -70DEGS
005921,000356: 12,3003 00006 EXTEND
005922,000357: 12,3004 63007 BZMF SETGLOCK -1 # NO LOCK.
005923,000358:
005924,000359: 12,3005 13726 TCF GLOCKCK1 # GIMAL LOCK.
005925,000360: 12,3006 13010 TCF SETGLOCK
005926,000361:
005927,000362: 12,3007 37657 -1 CAF ZERO
005928,000363: 12,3010 60322 SETGLOCK AD DSPTAB +11D # SEE IF PRESENT STATE OF GIMBAL LOCK LAMP
005929,000364: 12,3011 77645 MASK BIT6 # AGREES WITH DESIRED STATE BY HALF ADDING
005930,000365: 12,3012 00006 EXTEND # THE TWO.
005931,000366: 12,3013 14511 BZF GLOCKOK # OK AS IS.
005932,000367:
005933,000368: 12,3014 70322 MASK DSPTAB +11D # IF OFF, DONT TURN ON IF IMU BEING CAGED.
005934,000369: 12,3015 10000 CCS A
005935,000370: 12,3016 13032 TCF GLAMPTST # TURN OFF UNLESS LAMP TEST IN PROGRESS.
005936,000371:
005937,000372: 12,3017 37645 CAF BIT6
005938,000373: 12,3020 70361 MASK IMODES30
005939,000374: 12,3021 10000 CCS A
005940,000375: 12,3022 14511 TCF GLOCKOK
005941,000376:
005942,000377: 12,3023 40322 GLINVERT CS DSPTAB +11D # INVERT GIMBAL LOCK LAMP.
005943,000378: 12,3024 77645 MASK BIT6
005944,000379: 12,3025 67634 AD BIT15 # TO INDICATE CHANGE IN DSPTAB +11D.
005945,000380: 12,3026 56322 XCH DSPTAB +11D
005946,000381: 12,3027 73036 MASK OCT37737
005947,000382: 12,3030 26322 ADS DSPTAB +11D
005948,000383: 12,3031 14511 TCF GLOCKOK
005949,000384:
005950,000385: 12,3032 03251 GLAMPTST TC LAMPTEST # TURN OFF UNLESS LAMP TEST IN PROGRESS.
005951,000386: 12,3033 14511 TCF GLOCKOK
005952,000387: 12,3034 13023 TCF GLINVERT
005953,000388:
005954,000389: 12,3035 63434 -70DEGS DEC -.38888 # -70 DEGREES SCALED IN HALF-REVOLUTIONS.
005955,000390: 12,3036 37737 OCT37737 OCT 37737
005956,000391: # SUBROUTINES TO PROCESS INBIT CHANGES. NEW VALUE OF BIT ARRIVES IN A, EXCEPT FOR TLIM.
005957,000392:
005958,000393: 12,3037 77632 TLIM MASK POSMAX # REMOVE BIT FROM WORD OF CHANGES AND SET
005959,000394: 12,3040 54075 TS RUPTREG2 # DSKY TEMP LAMP ACCORDINGLY.
005960,000395:
005961,000396: 12,3041 10361 CCS IMODES30
005962,000397: 12,3042 13050 TCF TEMPOK
005963,000398: 12,3043 13050 TCF TEMPOK
005964,000399:
005965,000400: 12,3044 37647 CAF BIT4 # TURN ON LAMP.
005966,000401: 12,3045 00006 EXTEND
005967,000402: 12,3046 05011 WOR 11
005968,000403: 12,3047 12605 TCF NXTIFAIL
005969,000404:
005970,000405: 12,3050 03251 TEMPOK TC LAMPTEST # IF TEMP NOW OK, DONT TURN OFF LAMP IF
005971,000406: 12,3051 12605 TCF NXTIFAIL # LAMP TEST IN PROGRESS.
005972,000407:
005973,000408: 12,3052 47647 CS BIT4
005974,000409: 12,3053 00006 EXTEND
005975,000410: 12,3054 03011 WAND 11
005976,000411: 12,3055 12605 TCF NXTIFAIL
005977,000412:
005978,000413: 12,3056 37651 ITURNON CAF BIT2 # IF DELAY REQUEST HAS GONE OFF
005979,000414: 12,3057 70361 MASK IMODES30 # PREMATURELY, DO NOT PROCESS ANY CHANGES
005980,000415: 12,3060 10000 CCS A # UNTIL THE CURRENT 90 SEC WAIT EXPIRES.
005981,000416: 12,3061 12605 TCF NXTIFAIL
005982,000417:
005983,000418: 12,3062 37635 CAF BIT14 # SEE IF JUST ON OR OFF.
005984,000419: 12,3063 70361 MASK IMODES30
005985,000420: 12,3064 00006 EXTEND
005986,000421: 12,3065 13101 BZF ITURNON2 # IF JUST ON.
005987,000422:
005988,000423: 12,3066 37634 CAF BIT15
005989,000424: 12,3067 00006 EXTEND # SEE IF DELAY PRESENT DISCRETE HAS BEEN
005990,000425: 12,3070 02012 RAND 12 # SENT. IF SO, ACTION COMPLETE.
005991,000426: 12,3071 00006 EXTEND
005992,000427: 12,3072 13074 BZF +2
005993,000428: 12,3073 12605 TCF NXTIFAIL
005994,000429:
005995,000430: 12,3074 37651 CAF BIT2 # IF NOT, SET BIT TO INDICATE REQUEST NOT
005996,000431: 12,3075 26361 ADS IMODES30 # PRESENT FOR FULL DURATION.
005997,000432: 12,3076 05644 TC ALARM
005998,000433: 12,3077 00207 OCTAL 207
005999,000434: 12,3100 12605 TCF NXTIFAIL
006000,000435:
006001,000436: 12,3101 47644 ITURNON2 CS BIT7 # SET BIT 7 TO INITIATE WAIT OF 1 SAMPLE.
006002,000437: 12,3102 70361 MASK IMODES30
006003,000438: 12,3103 67644 AD BIT7
006004,000439: 12,3104 54361 TS IMODES30
006005,000440: 12,3105 12605 TCF NXTIFAIL
006006,000441: 12,3106 10000 IMUCAGE CCS A # NO ACTION IF GOING OFF.
006007,000442: 12,3107 12605 TCF NXTIFAIL
006008,000443:
006009,000444: 12,3110 43267 CS OCT71000 # TERMINATE ICDU AND GYRO PULSE TRAINS.
006010,000445: 12,3111 00006 EXTEND
006011,000446: 12,3112 03014 WAND 14
006012,000447:
006013,000448: 12,3113 03225 TC CAGESUB
006014,000449:
006015,000450: 12,3114 37657 CAF ZERO # ZERO COMMAND OUT-COUNTERS.
006016,000451: 12,3115 54050 TS CDUXCMD
006017,000452: 12,3116 54051 TS CDUYCMD
006018,000453: 12,3117 54052 TS CDUZCMD
006019,000454: 12,3120 54047 TS GYROCMD
006020,000455:
006021,000456: 12,3121 43266 CS OCT1700 # HAVING WAITED AT LEAST 27 MCT FROM
006022,000457: 12,3122 00006 EXTEND # GYRO PULSE TRAIN TERMINATION, WE CAN
006023,000458: 12,3123 03014 WAND 14 # DE-SELECT THE GYROS.
006024,000459:
006025,000460: 12,3124 12605 TCF NXTIFAIL
006026,000461:
006027,000462: 12,3125 00006 IMUOP EXTEND
006028,000463: 12,3126 13136 BZF IMUOP2
006029,000464:
006030,000465: 12,3127 40061 CS STATE # IF GOING OFF, ALARM IF PROG USING IMU.
006031,000466: 12,3130 77643 MASK IMUSEFLG
006032,000467: 12,3131 10000 CCS A
006033,000468: 12,3132 12605 TCF NXTIFAIL
006034,000469:
006035,000470: 12,3133 05644 TC ALARM
006036,000471: 12,3134 00214 OCT 214
006037,000472: 12,3135 12605 TCF NXTIFAIL
006038,000473:
006039,000474: 12,3136 37651 IMUOP2 CAF BIT2 # SEE IF FAILED ISS TURN-ON SEQ IN PROG.
006040,000475: 12,3137 70361 MASK IMODES30
006041,000476: 12,3140 10000 CCS A
006042,000477: 12,3141 12605 TCF NXTIFAIL # IF SO, DONT PROCESS UNTIL PRESENT 90
006043,000478: 12,3142 13101 TCF ITURNON2 # SECONDS EXPIRES.
006044,000479:
006045,000480: 12,3143 10000 PIPFAIL CCS A # SET BIT10 IN IMODES30 SO ALL ISS WARNING
006046,000481: 12,3144 37641 CAF BIT10 # INFO IS IN ONE REGISTER.
006047,000482: 12,3145 56361 XCH IMODES30
006048,000483: 12,3146 73271 MASK -BIT10
006049,000484: 12,3147 26361 ADS IMODES30
006050,000485:
006051,000486: 12,3150 03176 TC SETISSW
006052,000487:
006053,000488: 12,3151 40361 CS IMODES30 # IF PIP FAIL DOESNT LIGHT ISS WARNING, DO
006054,000489: 12,3152 77652 MASK BIT1 # A PROGRAM ALARM IF IMU OPERATING BUT NOT
006055,000490: 12,3153 10000 CCS A # CAGED OR BEING TURNED ON.
006056,000491: 12,3154 12773 TCF NXTFL33
006057,000492:
006058,000493: 12,3155 30361 CA IMODES30
006059,000494: 12,3156 73265 MASK OCT1720
006060,000495: 12,3157 10000 CCS A
006061,000496: 12,3160 12773 TCF NXTFL33 # ABOVE CONDITION NOT MET.
006062,000497:
006063,000498: 12,3161 05644 TC ALARM
006064,000499: 12,3162 00212 OCT 212
006065,000500: 12,3163 12773 TCF NXTFL33
006066,000501:
006067,000502: 12,3164 10000 DNTMFAST CCS A # DO PROG ALARM IF TM TOO FAST.
006068,000503: 12,3165 12773 TCF NXTFL33
006069,000504:
006070,000505: 12,3166 05644 TC ALARM
006071,000506: 12,3167 01105 OCT 1105
006072,000507: 12,3170 12773 TCF NXTFL33
006073,000508:
006074,000509: 12,3171 10000 UPTMFAST CCS A # SAME AS DNLINK TOO FAST WITH DIFFERENT
006075,000510: 12,3172 12773 TCF NXTFL33 # ALARM CODE.
006076,000511:
006077,000512: 12,3173 05644 TC ALARM
006078,000513: 12,3174 01106 OCT 1106
006079,000514: 12,3175 12773 TCF NXTFL33
006080,000515: # CLOSED SUBROUTINES FOR IMU MONITORING.
006081,000516: 12,3176 33256 SETISSW CAF OCT15 # SET ISS WARNING USING THE FAIL BITS IN
006082,000517: 12,3177 70361 MASK IMODES30 # BITS 13, 12, AND 10 OF IMODES30 AND THE
006083,000518: 12,3200 00006 EXTEND # FAILURE INHIBIT BITS IN POSITIONS
006084,000519: 12,3201 77641 MP BIT10 # 4, 3, AND 1.
006085,000520: 12,3202 30361 CA IMODES30
006086,000521: 12,3203 00006 EXTEND
006087,000522: 12,3204 04001 ROR L # 0 INDICATES FAILURE.
006088,000523: 12,3205 40000 COM
006089,000524: 12,3206 74427 MASK OCT15000
006090,000525: 12,3207 10000 CCS A
006091,000526: 12,3210 13221 TCF ISSWON # FAILURE.
006092,000527:
006093,000528: 12,3211 37652 ISSWOFF CAF BIT1 # DONT TURN OFF ISS WARNING IF LAMP TEST
006094,000529: 12,3212 70362 MASK IMODES33 # IN PROGRESS.
006095,000530: 12,3213 10000 CCS A
006096,000531: 12,3214 00002 TC Q
006097,000532:
006098,000533: 12,3215 47652 CS BIT1
006099,000534: 12,3216 00006 EXTEND
006100,000535: 12,3217 03011 WAND 11
006101,000536: 12,3220 00002 TC Q
006102,000537:
006103,000538: 12,3221 37652 ISSWON CAF BIT1
006104,000539: 12,3222 00006 EXTEND
006105,000540: 12,3223 05011 WOR 11
006106,000541: 12,3224 00002 TC Q
006107,000542:
006108,000543: 12,3225 43270 CAGESUB CS BITS6&15 # SET OUTBITS AND INTERNAL FLAGS FOR
006109,000544: 12,3226 00006 EXTEND # SYSTEM TURN-ON OR CAGE. DISABLE THE
006110,000545: 12,3227 03012 WAND 12 # ERROR COUNTER AND REMOVE IMU DELAY COMP.
006111,000546: 12,3230 33261 CAF BITS4&5 # SEND ZERO AND COARSE.
006112,000547: 12,3231 00006 EXTEND
006113,000548: 12,3232 05012 WOR 12
006114,000549:
006115,000550: 12,3233 43263 CAGESUB2 CS OCT75 # SET FLAGS TO INDICATE CAGING OR TURN-ON,
006116,000551: 12,3234 70361 MASK IMODES30 # AND TO INHIBIT ALL ISS WARNING INFO.
006117,000552: 12,3235 63263 AD OCT75
006118,000553: 12,3236 54361 TS IMODES30
006119,000554:
006120,000555: 12,3237 00002 TC Q
006121,000556:
006122,000557: 12,3240 12,3176 IMUFAIL EQUALS SETISSW
006123,000558: 12,3240 12,3176 ICDUFAIL EQUALS SETISSW
006124,000559: # JUMP TABLES AND CONSTANTS.
006125,000560: 12,3240 13056 IFAILJMP TCF ITURNON # CHANNEL 30 DISPATCH.
006126,000561: 12,3241 13176 TCF IMUFAIL
006127,000562: 12,3242 13176 TCF ICDUFAIL
006128,000563: 12,3243 13106 TCF IMUCAGE
006129,000564: 12,3244 76400 30RDMSK OCT 76400 # (BIT 10 NOT SAMPLED HERE).
006130,000565: 12,3245 13125 TCF IMUOP
006131,000566:
006132,000567: 12,3246 13143 C33JMP TCF PIPFAIL # CHANNEL 33 DISPATCH.
006133,000568: 12,3247 13164 TCF DNTMFAST
006134,000569: 12,3250 13171 TCF UPTMFAST
006135,000570:
006136,000571: # SUBROUTINE TO SKIP IF LAMP TEST NOT IN PROGRESS.
006137,000572: 12,3251 40362 LAMPTEST CS IMODES33 # BIT1 OF IMODES33 = 1 IF LAMP TEST IN
006138,000573: 12,3252 77652 MASK BIT1 # PROGRESS.
006139,000574: 12,3253 10000 CCS A
006140,000575: 12,3254 24002 INCR Q
006141,000576: 12,3255 00002 TC Q
006142,000577:
006143,000578: 12,3256 4430 33RDMSK EQUALS PRIO16
006144,000579: 12,3256 00015 OCT15 OCT 15
006145,000580: 12,3257 37767 OCT37767 OCT 37767
006146,000581: 12,3260 40010 OCT40010 OCT 40010
006147,000582: 12,3261 00030 BITS4&5 OCT 30
006148,000583: 12,3262 00054 OCT54 OCT 54
006149,000584: 12,3263 00075 OCT75 OCT 75
006150,000585: 12,3264 00300 BITS7&8 OCT 300
006151,000586: 12,3265 01720 OCT1720 OCT 1720
006152,000587: 12,3266 01700 OCT1700 OCT 1700
006153,000588: 12,3267 4427 OCT15000 EQUALS PRIO15
006154,000589: 12,3267 71000 OCT71000 OCT 71000
006155,000590: 12,3270 40040 BITS6&15 OCT 40040
006156,000591: 12,3271 76777 -BIT10 OCT -1000
006157,000592:
006158,000593: 12,3272 21450 90SECS DEC 9000 B-14
006159,000594: 12,3273 00014 120MS DEC 12 B-14
006160,000595: 12,3274 4511 GLOCKOK EQUALS RESUME
006161,000596:
006162,000597: # OPTICS MONITORING AND ZERO ROUTINES
006163,000598: 12,3274 30354 OPTMON CA OPTMODES # MONITOR OPTICS INBITS IN CHAN 30 AND 33
006164,000599: 12,3275 00006 EXTEND
006165,000600: 12,3276 06030 RXOR 30 # LOOK FOR OCDU FAIL BIT CHANGE
006166,000601: 12,3277 77644 MASK BIT7
006167,000602: 12,3300 54074 TS RUPTREG1 # STORE CHANGE BIT
006168,000603: 12,3301 10000 CCS A
006169,000604: 12,3302 03534 TC OCDUFTST # PROCESS OCDUFAIL BIT CHANGE
006170,000605:
006171,000606: 12,3303 30354 33OPTMON CA OPTMODES # LOOK FOR OPTICS MODE SWITCH CHANGE
006172,000607: 12,3304 00006 EXTEND
006173,000608: 12,3305 06033 RXOR CHAN33
006174,000609: 12,3306 77666 MASK OCTHIRTY
006175,000610: 12,3307 26074 ADS RUPTREG1 # STORE INBIT CHANGES
006176,000611: 12,3310 22354 LXCH OPTMODES
006177,000612: 12,3311 00006 EXTEND
006178,000613: 12,3312 06001 RXOR L
006179,000614: 12,3313 54354 TS OPTMODES # UPDATE OPTMODES TO SHOW BIT CHANGES
006180,000615:
006181,000616: 12,3314 40000 COM # SAMPLE CURRENT SWITCH SETTING
006182,000617: 12,3315 77666 MASK OCTHIRTY
006183,000618: 12,3316 00006 EXTEND
006184,000619: 12,3317 13324 BZF SETSAMP # MANUAL-SET ZERO IN SWSAMPLE
006185,000620:
006186,000621: 12,3320 77646 MASK BIT5 # SEE IF CSC
006187,000622: 12,3321 10000 CCS A
006188,000623: 12,3322 03324 TC +2 # CSC-SET SWSAMPLE POS
006189,000624: 12,3323 37661 CAF NEGONE # ZOPTICS-SET SWSAMPLE (-1)
006190,000625: 12,3324 54355 SETSAMP TS SWSAMPLE # CURRENT OPTICS SWITCH SETTING
006191,000626:
006192,000627: 12,3325 10356 PROCESSW CCS DESOPMOD # BRANCH ON PREVIOUS SETTING
006193,000628: 12,3326 03432 TC CSCDES # CSC
006194,000629: 12,3327 03404 TC MANUDES # MANUAL
006195,000630: 12,3330 03331 TC ZOPTDES # ZERO OPTICS
006196,000631: 12,3331 10355 ZOPTDES CCS SWSAMPLE # IS SWITCH STILL AT ZOPTICS
006197,000632: 12,3332 03351 TC ZTOCSC # NOW AT CSC
006198,000633: 12,3333 03341 TC ZTOMAN # MANUAL
006199,000634: 12,3334 03364 TC ZOPFINI # ZOPTICS-SEE IF ZOPT PROCESSING
006200,000635: 12,3335 03462 TC SETDESMD # ZOPT NOT PROCESSING-NO ACTION
006201,000636:
006202,000637: 12,3336 10360 CCS ZOPTCNT # ZOPT PROCESSING-CHECK COUNTER
006203,000638: 12,3337 03461 TC SETCNT # 32 SAMPLE NOT FINISHED-SET COUNTER
006204,000639: 12,3340 03465 TC SETZOEND # 32 SAMPLE WAIT COMPLETED-SET UP ZOP END
006205,000640:
006206,000641: 12,3341 03364 ZTOMAN TC ZOPFINI # ZOP TO MANUAL-IS ZOPT DONE
006207,000642: 12,3342 03462 TC SETDESMD # YES-NORMAL EXIT
006208,000643:
006209,000644: 12,3343 05644 ZOPALARM TC ALARM # ALARM-SWITCHED ALTERED WHILE ZOPTICS
006210,000645: 12,3344 00116 OCT 00116
006211,000646: 12,3345 33571 CAF OCT13 # PROCESSING-SET RETURN OPTION
006212,000647: 12,3346 54357 TS WTOPTION
006213,000648:
006214,000649: 12,3347 03375 TC CANZOPT # CANCEL ZOPT
006215,000650:
006216,000651: 12,3350 03462 TC SETDESMD
006217,000652:
006218,000653: 12,3351 03364 ZTOCSC TC ZOPFINI # SEE IF ZOPT PROCESSING
006219,000654: 12,3352 03422 TC MANTOCSC +3 # NO-CHECK RETURN TO COARS OPT
006220,000655: 12,3353 05644 TC ALARM # ZOPT PROCESSING-ALARM
006221,000656: 12,3354 00116 OCT 00116
006222,000657: 12,3355 03375 TC CANZOPT # CANCEL ZOPT
006223,000658: 12,3356 03417 TC MANTOCSC # ZERO CNT-LOOK FOR COARS OPT RETURN
006224,000659:
006225,000660: 12,3357 37642 COARSLOK CAF BIT9 # IF COARS OPT SINCE FSTART GO TO L+2
006226,000661: 12,3360 70354 MASK OPTMODES # RETURNS TO L+1 PROCESSING AND
006227,000662: 12,3361 10000 CCS A
006228,000663: 12,3362 24002 INCR Q # L+2 IF NOT
006229,000664: 12,3363 00002 TC Q
006230,000665: 12,3364 37652 ZOPFINI CAF BIT1 # SEE IF END ZOPT TASK WORKING
006231,000666: 12,3365 70354 MASK OPTMODES
006232,000667: 12,3366 10000 CCS A
006233,000668: 12,3367 04511 TC RESUME # ZOPT TASK WORKING-WAIT ONE SAMPLE PERIOD
006234,000669:
006235,000670: 12,3370 37650 CAF BIT3 # TEST IF ZOPTICS PROCESSING
006236,000671: 12,3371 70354 MASK OPTMODES # RETURNS TO L+1 PROCESSING AND
006237,000672: 12,3372 10000 CCS A
006238,000673: 12,3373 24002 INCR Q # L+2 IF NOT
006239,000674: 12,3374 00002 TC Q
006240,000675:
006241,000676: 12,3375 46162 CANZOPT CS SIX # CANCEL ZERO OPTICS
006242,000677: 12,3376 70354 MASK OPTMODES # ZERO ZOPT PROCESSING BIT-ENABLE OCDUFAIL
006243,000678: 12,3377 54354 TS OPTMODES
006244,000679: 12,3400 47652 CS BIT1 # MAKE SURE ZERO OCDU IS OFF
006245,000680: 12,3401 00006 EXTEND
006246,000681: 12,3402 03012 WAND CHAN12
006247,000682: 12,3403 00002 TC Q
006248,000683:
006249,000684: 12,3404 10355 MANUDES CCS SWSAMPLE # SEE IF SWITCH STILL IN MANUAL MODE
006250,000685: 12,3405 03417 TC MANTOCSC # NOW AT CSC
006251,000686: 12,3406 03414 TC MANTOMAN # STILL MANUAL
006252,000687: 12,3407 10357 CCS WTOPTION # ZOPTICS-LOOK AT ZOPTICS RETURN OPTION
006253,000688: 12,3410 03412 TC +2 # 5 SEC RETURN GOOD-CONTINUE ZOPTICS
006254,000689: 12,3411 03457 TC OPTZERO # ZOPTICS MUST START ANEW
006255,000690:
006256,000691: 12,3412 03525 TC INITZOPT # SHOW ZERO OPTICS PROCESSING
006257,000692: 12,3413 03462 TC SETDESMD # NORMAL EXIT
006258,000693:
006259,000694: 12,3414 10357 MANTOMAN CCS WTOPTION # DECREMENT RETURN OPTION TIME
006260,000695: 12,3415 54357 TS WTOPTION
006261,000696: 12,3416 03462 TC SETDESMD
006262,000697:
006263,000698: 12,3417 37657 MANTOCSC CAF ZERO # CANCEL ZOPT RETURN OPTION IF SET
006264,000699: 12,3420 54357 TS WTOPTION
006265,000700: 12,3421 54360 TS ZOPTCNT
006266,000701:
006267,000702: 12,3422 03357 TC COARSLOK # CHECK FOR COARS OPT RETURN
006268,000703: 12,3423 03462 TC SETDESMD # NO COARS TASK-NO ACTION
006269,000704:
006270,000705: 12,3424 37652 CAF ONE # SET COARS OPT WORKING
006271,000706: 12,3425 54350 TS OPTIND
006272,000707: 12,3426 37651 CAF BIT2 # ENABLE OPTICS CDU ERROR CNTS
006273,000708: 12,3427 00006 EXTEND
006274,000709: 12,3430 05012 WOR CHAN12
006275,000710:
006276,000711: 12,3431 03462 TC SETDESMD
006277,000712:
006278,000713: 12,3432 10355 CSCDES CCS SWSAMPLE # SEE IF SWITCH STILL AT CSC
006279,000714: 12,3433 03462 TC SETDESMD # STILL AT CSC
006280,000715: 12,3434 03440 TC CSCTOMAN # MANUAL
006281,000716: 12,3435 33573 CSCTOZOP CAF OCT40 # ZOPTICS-INITIALIZE FOR ZOPT
006282,000717: 12,3436 54360 TS ZOPTCNT
006283,000718: 12,3437 03525 TC INITZOPT
006284,000719:
006285,000720: 12,3440 10350 CSCTOMAN CCS OPTIND # SEE IF COARS WORKING
006286,000721: 12,3441 03445 TC CANCOARS # COARS WORKING-SWITCH NOT CSC-KILL COARS
006287,000722: 12,3442 03445 TC CANCOARS
006288,000723: 12,3443 03444 TC +1 # NO COARS-NORMAL EXIT
006289,000724: 12,3444 03462 TC SETDESMD
006290,000725: 12,3445 37661 CANCOARS CA NEGONE
006291,000726: 12,3446 54350 TS OPTIND # SET OPTIND (-1) TO SHOW NOT WORKING
006292,000727: 12,3447 47651 CS BIT2 # DISABLE OCDU ERR CNTS
006293,000728: 12,3450 00006 EXTEND
006294,000729: 12,3451 03012 WAND CHAN12
006295,000730: 12,3452 47642 CS BIT9 # SET RETURN-TO-COARS BIT
006296,000731: 12,3453 70354 MASK OPTMODES
006297,000732: 12,3454 67642 AD BIT9
006298,000733: 12,3455 54354 TS OPTMODES
006299,000734:
006300,000735: 12,3456 03462 TC SETDESMD
006301,000736: 12,3457 03525 OPTZERO TC INITZOPT # INITIALIZE ZERO OPTICS
006302,000737:
006303,000738: 12,3460 33573 CA OCT40 # SET UP 32 SAMPLE WAIT
006304,000739: 12,3461 54360 SETCNT TS ZOPTCNT
006305,000740: 12,3462 30355 SETDESMD CA SWSAMPLE # SET CURRENT SWITCH INDICATION-RESUME
006306,000741: 12,3463 54356 TS DESOPMOD
006307,000742: 12,3464 04511 TC RESUME
006308,000743:
006309,000744: 12,3465 37652 SETZOEND CAF BIT1 # SEND ZERO OPTICS CDU
006310,000745: 12,3466 00006 EXTEND
006311,000746: 12,3467 05012 WOR CHAN12
006312,000747: 12,3470 33574 CA 200MS # HOLD ZERO CDU FOR 200 MS
006313,000748: 12,3471 04451 TC WAITLIST
006314,000749: 12,3472 03501 24007 2CADR ENDZOPT
006315,000750:
006316,000751: 12,3474 47652 CS BIT1 # SHOW ZOPTICS TASK WORKING
006317,000752: 12,3475 70354 MASK OPTMODES
006318,000753: 12,3476 67652 AD BIT1
006319,000754: 12,3477 54354 TS OPTMODES
006320,000755:
006321,000756: 12,3500 03462 TC SETDESMD
006322,000757:
006323,000758: 12,3501 03520 ENDZOPT TC ZEROPCDU # ZERO OCDU COUNTERS
006324,000759: 12,3502 47652 CS BIT1 # TURN OFF ZERO OCDU
006325,000760: 12,3503 00006 EXTEND
006326,000761: 12,3504 03012 WAND CHAN12
006327,000762: 12,3505 33574 CAF 200MS # DELAY 200MS FOR OPTX TO RESYNCHRONIZE
006328,000763: 12,3506 04472 TC VARDELAY
006329,000764:
006330,000765: 12,3507 47641 CS BIT10 # SHOW ZOPTICS SINCE LAST FRESH START
006331,000766: 12,3510 70354 MASK OPTMODES # OR RESTART
006332,000767: 12,3511 67641 AD BIT10
006333,000768: 12,3512 54354 TS OPTMODES
006334,000769:
006335,000770: 12,3513 47656 CS SEVEN # ENABLE OCDUFAIL-SHOW OPTICS COMPLETE
006336,000771: 12,3514 70354 MASK OPTMODES
006337,000772: 12,3515 54354 TS OPTMODES
006338,000773:
006339,000774: 12,3516 03534 TC OCDUFTST # CHECK OCDU FAIL BIT AFTER ENABLE
006340,000775: 12,3517 04505 TC TASKOVER
006341,000776:
006342,000777: 12,3520 37657 ZEROPCDU CAF ZERO
006343,000778: 12,3521 54036 TS OPTX # ZERO IN OPTX,-20 IN OPTY
006344,000779: 12,3522 43572 CS 20DEGS
006345,000780: 12,3523 54035 TS OPTY
006346,000781: 12,3524 00002 TC Q
006347,000782:
006348,000783: 12,3525 37657 INITZOPT CAF ZERO # INITIALIZE ZOPTICS-INHIBIT OCDUFAIL
006349,000784: 12,3526 54357 TS WTOPTION # AND SHOW OPTICS PROCESSING
006350,000785: 12,3527 46162 CS SIX # SET ZERO OPTICS PROCESSING
006351,000786: 12,3530 70354 MASK OPTMODES # OPTICS CDU FAIL INHIBITED
006352,000787: 12,3531 66162 AD SIX
006353,000788: 12,3532 54354 TS OPTMODES
006354,000789: 12,3533 00002 TC Q
006355,000790:
006356,000791:
006357,000792: 12,3534 37644 OCDUFTST CAF BIT7 # SEE IF OCDUFAIL ON OR OFF
006358,000793: 12,3535 00006 EXTEND
006359,000794: 12,3536 02030 RAND 30
006360,000795: 12,3537 10000 CCS A
006361,000796: 12,3540 13562 TCF OPFAILOF # OCDUFAIL LIGHT OFF
006362,000797:
006363,000798: 12,3541 37651 CAF BIT2 # OCDUFAIL LIGHT ON UNLESS INHIBITED
006364,000799: 12,3542 70354 MASK OPTMODES
006365,000800: 12,3543 10000 CCS A
006366,000801: 12,3544 00002 TC Q # OCDUFAIL INHIBITED
006367,000802:
006368,000803: 12,3545 37643 OPFAILON CAF BIT8 # ON BIT
006369,000804: 12,3546 60322 AD DSPTAB +11D
006370,000805: 12,3547 77643 MASK BIT8
006371,000806: 12,3550 00006 SETOFF EXTEND
006372,000807: 12,3551 14615 BZF TCQ # NO CHANGE
006373,000808:
006374,000809: 12,3552 54001 TS L
006375,000810: 12,3553 30322 CA DSPTAB +11D
006376,000811: 12,3554 00006 EXTEND
006377,000812: 12,3555 06001 RXOR L
006378,000813: 12,3556 77632 MASK POSMAX
006379,000814: 12,3557 67634 AD BIT15 # SHOW ACTION WANTED
006380,000815: 12,3560 54322 TS DSPTAB +11D
006381,000816: 12,3561 00002 TC Q
006382,000817:
006383,000818: 12,3562 37652 OPFAILOF CAF BIT1 # DONT TURN OFF IF LAMP TEST
006384,000819: 12,3563 70362 MASK IMODES33
006385,000820: 12,3564 10000 CCS A
006386,000821: 12,3565 00002 TC Q # LAMP TEST IN PROGRESS
006387,000822:
006388,000823: 12,3566 37643 CAF BIT8 # TURN OFF OCDUFAIL LIGHT
006389,000824: 12,3567 70322 MASK DSPTAB +11D
006390,000825: 12,3570 13551 TCF SETOFF +1
006391,000826:
006392,000827: 12,3571 00013 OCT13 OCT 13
006393,000828: 12,3572 7666 OCTHIRTY EQUALS CALLCODE
006394,000829: 12,3572 16037 20DEGS DEC 7199 B-14
006395,000830: 12,3573 00040 OCT40 OCT 40
006396,000831: 12,3574 00024 200MS DEC 20 B-14
006397,000832:
006398,000833:
006399,000834: # OPTICS CDU DRIVING PROGRAM
006400,000835:
006401,000836: 12,3575 10350 OPTDRIVE CCS OPTIND
006402,000837: 12,3576 03602 TC +4 # WORK COARS OPTICS
006403,000838: 12,3577 03602 TC +3 # WORK COARS OPTICS
006404,000839: 12,3600 04511 TC RESUME # NO OPT
006405,000840: 12,3601 04511 TC RESUME # NO OPT
006406,000841:
006407,000842: 12,3602 10355 CCS SWSAMPLE # SEE IF SWITCH AT CMC
006408,000843: 12,3603 03606 TC +3
006409,000844: 12,3604 04511 TC RESUME # ZERO (-1) MANUAL (+0)
006410,000845: 12,3605 04511 TC RESUME
006411,000846:
006412,000847: 12,3606 37641 CAF BIT10 # SEE IF OCDUS ZEROED SINCE LAST FSTART
006413,000848: 12,3607 70354 MASK OPTMODES
006414,000849: 12,3610 10000 CCS A
006415,000850: 12,3611 03614 TC +3
006416,000851: 12,3612 05644 TC ALARM # OPTICS NOT ZEROED
006417,000852: 12,3613 00120 OCT 00120
006418,000853:
006419,000854: 12,3614 37651 CA BIT2 # SEE IF ERR CNTS ENABLED
006420,000855: 12,3615 00006 EXTEND
006421,000856: 12,3616 02012 RAND 12
006422,000857: 12,3617 00006 EXTEND
006423,000858: 12,3620 13720 BZF SETBIT # CNTS NOT ENABLED-DO IT AND RESUME
006424,000859:
006425,000860: 12,3621 37652 CAF ONE # INITIALIZE OPTIND
006426,000861: 12,3622 54350 OPT2 TS OPTIND
006427,000862: 12,3623 00006 EXTEND
006428,000863: 12,3624 13656 BZF TRUNCMD # CHECK TRUNION COMMAND
006429,000864:
006430,000865: 12,3625 50350 GETOPCMD INDEX OPTIND
006431,000866: 12,3626 30403 CA DESOPTT # PICK UP DESIRED OPT ANGLE
006432,000867: 12,3627 00006 EXTEND
006433,000868: 12,3630 50350 INDEX OPTIND
006434,000869: 12,3631 20035 MSU OPTY # GET DIFFERENCE
006435,000870: 12,3632 00006 EXTEND
006436,000871: 12,3633 77636 MP BIT13
006437,000872: 12,3634 56001 XCH L
006438,000873: 12,3635 60000 DOUBLE
006439,000874: 12,3636 54065 TS ITEMP1
006440,000875: 12,3637 13641 TCF +2 # NO OVFL
006441,000876:
006442,000877: 12,3640 26001 ADS L # WITH OVFL
006443,000878: 12,3641 50350 STORCMD INDEX OPTIND
006444,000879: 12,3642 22352 LXCH COMMANDO # STORE COMMAND
006445,000880: 12,3643 10350 CCS OPTIND
006446,000881: 12,3644 13622 TCF OPT2 # GET NEXT COMMAND
006447,000882:
006448,000883: 12,3645 54065 TS ITEMP1 # INITIALIZE SEND INDICATOR TO ZERO
006449,000884:
006450,000885: 12,3646 37652 CMDSETUP CAF ONE # SET OPTIND
006451,000886: 12,3647 54350 TS OPTIND
006452,000887: 12,3650 50000 INDEX A
006453,000888: 12,3651 10352 CCS COMMANDO # GET SIGN OF COMMAND
006454,000889: 12,3652 03670 TC POSOPCMD
006455,000890: 12,3653 03675 TC NEXTOPT +1 # ZERO COMMAND-SKIP SEND INDICATOR
006456,000891: 12,3654 03704 TC NEGOPCMD
006457,000892: 12,3655 03675 TC NEXTOPT +1 # ZERO COMMAND
006458,000893:
006459,000894: 12,3656 40035 TRUNCMD CS OPTY # IF COMMAND GREATER THAN 45 DEG-COMMAND
006460,000895: 12,3657 60403 AD DESOPTT # 45 DEG
006461,000896: 12,3660 54002 TS Q
006462,000897: 12,3661 03625 TC GETOPCMD # LESS THAN 45 DEG-NORMAL OPERATION
006463,000898:
006464,000899: 12,3662 10000 CCS A # GREATER THAN 45 DEG-USE OPSMAX WITH
006465,000900: 12,3663 37632 CA POSMAX # CORRECT SIGN
006466,000901: 12,3664 03666 TC +2
006467,000902: 12,3665 47632 CS POSMAX
006468,000903: 12,3666 54001 TS L
006469,000904: 12,3667 03641 TC STORCMD
006470,000905: 12,3670 63725 POSOPCMD AD MAXPLS1
006471,000906: 12,3671 00006 EXTEND
006472,000907: 12,3672 63711 BZMF DELOPCMD # COMMAND LESS THAN MAX PULSE
006473,000908: 12,3673 43724 CS MAXPLS # GREATER THAN MAX PULSE-USE MAX PULSE
006474,000909:
006475,000910: 12,3674 24065 NEXTOPT INCR ITEMP1 # SET SEND INDICATOR
006476,000911: 12,3675 50350 INDEX OPTIND
006477,000912: 12,3676 54053 TS OPTYCMD # STORE PULSE IN SEND REG
006478,000913:
006479,000914: 12,3677 10350 CCS OPTIND
006480,000915: 12,3700 03647 TC CMDSETUP +1 # GET NEXT OPT
006481,000916:
006482,000917: 12,3701 10065 CCS ITEMP1 # ARE ANY PULSES TO GO
006483,000918: 12,3702 13714 TCF SENDOCMD # YES-SEND EM
006484,000919: 12,3703 04511 TC RESUME # NO
006485,000920:
006486,000921: 12,3704 63725 NEGOPCMD AD MAXPLS1
006487,000922: 12,3705 00006 EXTEND
006488,000923: 12,3706 63711 BZMF DELOPCMD # LESS THAN MAX PULSE
006489,000924: 12,3707 33724 CA MAXPLS # MAX PULSES
006490,000925: 12,3710 13674 TCF NEXTOPT
006491,000926: 12,3711 50350 DELOPCMD INDEX OPTIND
006492,000927: 12,3712 56352 XCH COMMANDO # SET UP SMALL COMMAND
006493,000928: 12,3713 13674 TCF NEXTOPT
006494,000929:
006495,000930: 12,3714 34421 SENDOCMD CAF 11,12 # SEND OCDU DRIVE COMMANDS
006496,000931: 12,3715 00006 EXTEND
006497,000932: 12,3716 05014 WOR 14
006498,000933: 12,3717 04511 TC RESUME
006499,000934:
006500,000935: 12,3720 37651 SETBIT CAF BIT2 # ENABLE OCDU ERR CNTS
006501,000936: 12,3721 00006 EXTEND
006502,000937: 12,3722 05012 WOR 12
006503,000938: 12,3723 04511 TC RESUME # START COARS NEXT TIME AROUND
006504,000939:
006505,000940: 12,3724 77657 MAXPLS DEC -80 B-14
006506,000941: 12,3725 77660 MAXPLS1 DEC -79 B-14
006507,000942: 12,3726 4421 11,12 EQUALS PRIO6
006508,000943:
MAS 2023: The following chunks of code were added as patches in Sundial D. They were placed here at the end of the bank so as to not change addresses of existing symbols. |
006512,000947:
006513,000948: 12,3726 63736 GLOCKCK1 AD -15DEGS # SEE IF ABS(MGA) GREATER THAN 85 DEGREES.
006514,000949: 12,3727 00006 EXTEND
006515,000950: 12,3730 63734 BZMF +4
006516,000951:
006517,000952: 12,3731 37647 CAF BIT4 # IF SO, SYSTEM SHOULD BE IN COARSE ALIGN
006518,000953: 12,3732 00006 EXTEND # TO PREVENT GIMBAL RUNAWAY.
006519,000954: 12,3733 05012 WOR 12
006520,000955:
006521,000956: 12,3734 37645 CAF BIT6 # TURN ON GIMBAL LOCK LAMP.
006522,000957: 12,3735 13010 TCF SETGLOCK
006523,000958:
006524,000959: 12,3736 75252 -15DEGS DEC -.08333
006525,000960:
006526,000961: 12,3737 37647 OPONLY1 CAF BIT4
006527,000962: 12,3740 00006 EXTEND # IF OPERATE ON ONLY AND WE ARE IN COARSE
006528,000963: 12,3741 02012 RAND CHAN12 # ALIGN, DONT ZERO THE CDUS BECAUSE WE
006529,000964: 12,3742 10000 CCS A # MIGHT BE IN GIMBAL LOCK. USE V41N20 TO
006530,000965: 12,3743 12735 TCF C33TEST # RECOVER.
006531,000966:
006532,000967: 12,3744 37643 CAF IMUSEFLG # OTHERWISE, ZERO THE COUNTERS
006533,000968: 12,3745 12721 TCF OPONLY +1
006534,000969:
006535,000970: 12,3746 25362 GOPROG1 INCR REDOCTR # ADVANCE RESTART COUNTER.
006536,000971:
006537,000972: 12,3747 31357 CA ERESTORE
006538,000973: 12,3750 00006 EXTEND
006539,000974: 12,3751 12065 BZF GOPROG +1
006540,000975:
006541,000976: 12,3752 00006 EXTEND # RESTORE B(X) AND B(X+1) IF RESTART
006542,000977: 12,3753 31376 DCA SKEEP5 # HAPPENED WHILE SELF-CHECK HAD REPLACED
006543,000978: 12,3754 51377 NDX SKEEP7 # THEM WITH CHECKING WORDS.
006544,000979: 12,3755 52001 DXCH 0000
006545,000980:
006546,000981: 12,3756 02065 TC GOPROG +1
006547,000982:
006548,000983: 12,3757 55357 STARTSB1 TS ERESTORE
006549,000984: 12,3760 34445 CAF PRIO34 # ENABLE INTERRUPTS.
006550,000985: 12,3761 02222 TC STARTSB2
006551,000986:
006552,000987: 12,3762 ENDT4S EQUALS
End of include-file T4RUPT_PROGRAM.agc. Parent file is MAIN.agc