Source Code
These source-code files were from the printout at the MIT Museum, with many thanks
to Deborah Douglas, the Museum's Curator of Science and Technology, for releasing
it to us. The printout was digitally photographed by Paul Fjeld. A team of
volunteers transcribed the source code manually from these images or, where
appropriate, modified already-transcribed but similar source Colossus 249 (Apollo 9)
source code to agree with the images from the printout. Note that the page images
presented online are of reduced quality, and that higher-quality images
are available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 055 OF AGC PROGRAM COMANCHE BY NASA 2021113-051 10:28 APR. 1,1969Note that the date is the date of the printout, not the date of the program revision. |
005579,000002: ## Copyright: Public domain.
005580,000003: ## Filename: T4RUPT_PROGRAM.agc
005581,000004: ## Purpose: Part of the source code for Comanche, build 055.
005582,000005: ## It is part of the source code for the Command Module's (CM)
005583,000006: ## Apollo Guidance Computer (AGC), Apollo 11.
005584,000007: ## Assembler: yaYUL
005585,000008: ## Reference: pp. 133-169
005586,000009: ## Contact: Ron Burkey <info@sandroid.org>,
005587,000010: ## Fabrizio Bernardini <fabrizio@spacecraft.it>
005588,000011: ## Website: http://www.ibiblio.org/apollo.
005589,000012: ## Mod history: 10/05/09 FB Transcription of Batch FB-1 Assignment.
005590,000013: ## 2010-08-28 JL Fixed a bunch of indentation.
005591,000014: ## 2016-12-10 RSB Proofed comments with octopus/ProoferComments
005592,000015: ## and fixed the errors found.
005593,000016: ## 2017-01-20 RSB Fixed comment-text errors noted while diff'ing
005594,000017: ## vs Colossus 249.
005595,000018: ## 2017-01-26 RSB Back-ported comment-text fixes found while
005596,000019: ## proofing corresponding Luminary 69 file.
005597,000020: ## 2017-01-28 RSB WTIH -> WITH.
005598,000021: ## 2017-02-08 RSB Comment-text fixes identified while proofing Artemis 72.
005599,000022: ## 2017-03-03 RSB Fixed comment-text errors identified while proofing
005600,000023: ## Luminary 116.
005601,000024: ## 2021-05-30 ABS $$/T4RUPT -> $$/T4RPT
005602,000025: ##
005603,000026: ## The contents of the "Comanche055" files, in general, are transcribed
005604,000027: ## from scanned documents.
005605,000028: ##
005606,000029: ## Assemble revision 055 of AGC program Comanche by NASA
005607,000030: ## 2021113-051. April 1, 1969.
005608,000031: ##
005609,000032: ## This AGC program shall also be referred to as Colossus 2A
005610,000033: ##
005611,000034: ## Prepared by
005612,000035: ## Massachusetts Institute of Technology
005613,000036: ## 75 Cambridge Parkway
005614,000037: ## Cambridge, Massachusetts
005615,000038: ##
005616,000039: ## under NASA contract NAS 9-4065.
005617,000040: ##
005618,000041: ## Refer directly to the online document mentioned above for further
005619,000042: ## information. Please report any errors to info@sandroid.org.
005620,000043:
Page 133 |
005622,000045: 12,2000 BANK 12
005623,000046: 06,2000 SETLOC T4RUP
005624,000047: 06,2000 BANK
005625,000048:
005626,000049: 06,2000 COUNT 06/T4RPT
005627,000050:
005628,000051: 06,2000 54016 T4RUPT TS BANKRUPT
005629,000052: 06,2001 00006 EXTEND
005630,000053: 06,2002 22012 QXCH QRUPT
005631,000054:
005632,000055: 06,2003 11302 CCS DSRUPTSW # GOES 7(-1)0 AROUND AND AROUND
005633,000056: 06,2004 12010 TCF NORMT4 +1
005634,000057: 06,2005 12007 TCF NORMT4
005635,000058:
005636,000059: 06,2006 12136 TCF QUIKDSP
005637,000060:
005638,000061: 06,2007 35023 NORMT4 CAF SEVEN
005639,000062: 06,2010 54070 TS RUPTREG1
005640,000063: 06,2011 55302 TS DSRUPTSW
005641,000064:
005642,000065: 06,2012 COUNT 02/T4RPT
005643,000066:
005644,000067: 06,2012 7711 74K = HIGH4
005645,000068:
005646,000069: # RELTAB IS A PACKED TABLE. RELAYWORD CODE IN UPPER 4 BITS, RELAY CODE
005647,000070: # IN LOWER 5 BITS.
005648,000071:
005649,000072: 4072 BLOCK 02
005650,000073: 4000 SETLOC FFTAG12
005651,000074: 4000 BANK
005652,000075:
005653,000076: 4072 04025 RELTAB OCT 04025
005654,000077: 4073 10003 OCT 10003
005655,000078: 4074 14031 OCT 14031
005656,000079: 4075 20033 OCT 20033
005657,000080: 4076 24017 OCT 24017
005658,000081: 4077 30036 OCT 30036
005659,000082: 4100 34034 OCT 34034
005660,000083: 4101 40023 OCT 40023
005661,000084: 4102 44035 OCT 44035
005662,000085: 4103 50037 OCT 50037
005663,000086: 4104 54000 OCT 54000
005664,000087: 4105 60000 RELTAB11 OCT 60000
005665,000088:
Page 134 |
005667,000090: # SWITCHED-BANK PORTION.
005668,000091:
005669,000092: 12,2000 BANK 12
005670,000093: 06,2000 SETLOC T4RUP
005671,000094: 06,2000 BANK
005672,000095:
005673,000096: 06,2012 COUNT 06/T4RPT
005674,000097:
005675,000098: 06,2012 11036 CDRVE CCS DSPTAB +11D
005676,000099: 06,2013 02063 TC DSPOUT
005677,000100: 06,2014 02063 TC DSPOUT
005678,000101:
005679,000102: 06,2015 57036 XCH DSPTAB +11D
005680,000103: 06,2016 74372 MASK LOW11
005681,000104: 06,2017 55036 TS DSPTAB +11D
005682,000105: 06,2020 64105 AD RELTAB11
005683,000106: 06,2021 00006 EXTEND
005684,000107: 06,2022 01010 WRITE OUT0
005685,000108: 06,2023 02071 TC HANG20
005686,000109:
Page 135 |
005688,000111: # DSPOUT PROGRAM. PUTS OUT DISPLAYS.
005689,000112:
005690,000113: 06,2024 55016 DSPOUTSB TS NOUT
005691,000114: 06,2025 45021 CS ZERO
005692,000115: 06,2026 54073 TS DSRUPTEM # SET TO -0 FOR 1ST PASS THRU DSPTAB
005693,000116: 06,2027 56776 XCH DSPCNT
005694,000117: 06,2030 65020 AD NEG0 # TO PREVENT +0
005695,000118: 06,2031 54776 TS DSPCNT
005696,000119: 06,2032 50776 DSPSCAN INDEX DSPCNT
005697,000120: 06,2033 11023 CCS DSPTAB
005698,000121: 06,2034 10776 CCS DSPCNT # IF DSPTAB ENTRY +, SKIP
005699,000122: 06,2035 12030 TCF DSPSCAN -2 # IF DSPCNT +, AGAIN
005700,000123: 06,2036 12047 TCF DSPLAY # IF DSPTAB ENTRY -, DISPLAY
005701,000124: 06,2037 00012 TABLNTH OCT 12 # DEC 10 LENGTH OF DSPTAB
005702,000125: 06,2040 10073 CCS DSRUPTEM # IF DSRUPTEM=+0, 2ND PASS THRU DSPTAB
005703,000126: 06,2041 37764 120MRUPT DEC 16372 B-14 # (DSPCNT = 0). +0 INTO NOUT.
005704,000127: 06,2042 55016 TS NOUT
005705,000128: 06,2043 00002 TC Q
005706,000129: 06,2044 54073 TS DSRUPTEM # IF DSRUPTEM=-0, 1ST PASS THRU DSPTAB
005707,000130: 06,2045 32037 CAF TABLNTH # (DSPCNT=0).+0 INTO DSRUPTEM. PASS AGAIN
005708,000131: 06,2046 12031 TCF DSPSCAN -1
005709,000132:
005710,000133: 06,2047 65017 DSPLAY AD ONE
005711,000134: 06,2050 50776 INDEX DSPCNT
005712,000135: 06,2051 55023 TS DSPTAB # REPLACE POSITIVELY
005713,000136: 06,2052 74372 MASK LOW11 # REMOVE BITS 12 TO 15
005714,000137: 06,2053 54073 TS DSRUPTEM
005715,000138: 06,2054 34364 CAF HI5
005716,000139: 06,2055 50776 INDEX DSPCNT
005717,000140: 06,2056 74072 MASK RELTAB # PICK UP BITS 12 TO 15 OF RELTAB ENTRY
005718,000141: 06,2057 60073 AD DSRUPTEM
005719,000142: 06,2060 00006 EXTEND
005720,000143: 06,2061 01010 WRITE OUT0 # WRITE CHANNEL 10
005721,000144: 06,2062 16706 TCF Q+1 # *** NORMAL RETURN SKIPS ONE
005722,000145:
005723,000146: 06,2063 10101 DSPOUT CCS FLAGWRD5 # DONT DISPLAY UNLESS DSKY FLAG ON
005724,000147: 06,2064 35021 CAF ZERO
005725,000148: 06,2065 12132 TCF NODSPOUT
005726,000149: 06,2066 11016 CCS NOUT
005727,000150: 06,2067 02024 TC DSPOUTSB
005728,000151: 06,2070 12132 TCF NODSPOUT # NO DISPLAY REQUESTS
005729,000152:
005730,000153: 06,2071 42173 HANG20 CS 11,14,9
005731,000154: 06,2072 27302 ADS DSRUPTSW
005732,000155:
005733,000156: 06,2073 37700 CAF 20MRUPT
005734,000157:
005735,000158: 06,2074 54027 SETTIME4 TS TIME4
005736,000159:
Page 136 |
005738,000161: # THE STATUS OF THE PROCEED PUSHBUTTON IS MONITORED EVERY 120 MILLISECONDS VIA THE CHANNEL 32 BIT 14 INBIT.
005739,000162: # THE STATE OF THIS INBIT IS COMPARED WITH ITS STATE DURING THE PREVIOUS T4RUPT AND IS PROCESSED AS FOLLOWS.
005740,000163: # IF PREV ON AND NOW ON - BYPASS
005741,000164: # IF PREV ON AND NOW OFF - UPDATE IMODES33
005742,000165: # IF PREV OFF AND NOW ON - UPDATE IMODES33 AND PROCESS VIA PINBALL
005743,000166: # IF PREV OFF AND NOW OFF - BYPASS
005744,000167: # THE LOGIC EMPLOYED REQUIRES ONLY 9 MCT (APPROX. 108 MICROSECONDS) OF COMPUTER TIME WHEN NO CHANGES OCCUR.
005745,000168:
005746,000169: 06,2075 31321 PROCEEDE CA IMODES33 # MONITIOR FOR PROCEED BUTTON
005747,000170: 06,2076 00006 EXTEND
005748,000171: 06,2077 06032 RXOR CHAN32 # CHECK IF BIT 14 DIFFERENT
005749,000172: 06,2100 75002 MASK BIT14
005750,000173: 06,2101 00006 EXTEND
005751,000174: 06,2102 12116 BZF T4JUMP # NO CHANGE
005752,000175:
005753,000176: 06,2103 23321 LXCH IMODES33
005754,000177: 06,2104 00006 EXTEND
005755,000178: 06,2105 06001 RXOR LCHAN
005756,000179: 06,2106 55321 TS IMODES33 # UPDATE IMODES33
005757,000180: 06,2107 75002 MASK BIT14
005758,000181: 06,2110 10000 CCS A
005759,000182: 06,2111 12116 TCF T4JUMP # WAS ON - NOW OFF
005760,000183:
005761,000184: 06,2112 34371 CAF CHRPRIO # WAS OFF - NOW ON
005762,000185: 06,2113 05134 TC NOVAC
005763,000186: 06,2114 0777 EBANK= DSPCOUNT
005764,000187: 06,2114 03357 60101 2CADR PROCKEY
005765,000188:
Page 137 |
005767,000190: # JUMP TO APPROPRIATE ONCE-PER SECOND (.96 SEC ACTUALLY) ACTIVITY
005768,000191:
005769,000192: 06,2116 50070 T4JUMP INDEX RUPTREG1
005770,000193: 06,2117 12120 TCF +1
005771,000194:
005772,000195: 06,2120 12130 TCF OPTTEST
005773,000196: 06,2121 12765 TCF OPTMON
005774,000197: 06,2122 12174 TCF IMUMON
005775,000198: 06,2123 15333 TCF RESUME
005776,000199: 06,2124 12130 TCF OPTTEST
005777,000200: 06,2125 12765 TCF OPTMON
005778,000201: 06,2126 12174 TCF IMUMON
005779,000202: 06,2127 15333 TCF RESUME
005780,000203:
005781,000204: 06,2130 04740 OPTTEST TC IBNKCALL
005782,000205: 06,2131 20000 CADR OPTDRIVE
005783,000206:
005784,000207: 06,2132 7700 20MRUPT = OCT37776 # (DEC 16382)
005785,000208:
005786,000209: 06,2132 00006 NODSPOUT EXTEND # TURN OFF RELAYS
005787,000210: 06,2133 01010 WRITE OUT0
005788,000211:
005789,000212: 06,2134 32041 CAF 120MRUPT # SET FOR NEXT CDRVE
005790,000213: 06,2135 12074 TCF SETTIME4
005791,000214:
005792,000215: 06,2136 35002 QUIKDSP CAF BIT14
005793,000216: 06,2137 71302 MASK DSRUPTSW
005794,000217: 06,2140 00006 EXTEND
005795,000218: 06,2141 12167 BZF QUIKOFF # WROTE LAST TIME, NOW TURN OFF RELAYS.
005796,000219:
005797,000220: 06,2142 11016 CCS NOUT
005798,000221: 06,2143 02024 TC DSPOUTSB
005799,000222: 06,2144 12154 TCF NODSPY # NOUT=0 OR BAD RETURN FROM DSPOUTSB
005800,000223: 06,2145 45002 CS BIT14 # GOOD RETURN (WE DISPLAYED SOMETHING)
005801,000224: 06,2146 27302 QUIKRUPT ADS DSRUPTSW
005802,000225:
005803,000226: 06,2147 37700 CAF 20MRUPT
005804,000227: 06,2150 54027 TS TIME4
005805,000228:
005806,000229: 06,2151 35007 CAF BIT9
005807,000230: 06,2152 27302 ADS DSRUPTSW
005808,000231:
005809,000232: 06,2153 05333 TC RESUME
005810,000233:
005811,000234: 06,2154 00006 NODSPY EXTEND
005812,000235: 06,2155 01010 WRITE OUT0
005813,000236:
005814,000237: 06,2156 37700 SYNCT4 CAF 20MRUPT
005815,000238: 06,2157 26027 ADS TIME4
005816,000239:
005817,000240: 06,2160 35007 CAF BIT9
Page 138 |
005819,000242: 06,2161 27302 ADS DSRUPTSW
005820,000243: 06,2162 11302 CCS DSRUPTSW
005821,000244: 06,2163 05333 TC RESUME
005822,000245: 06,2164 37737 OCT37737 OCT 37737
005823,000246: 06,2165 02156 TC SYNCT4
005824,000247: 06,2166 05333 TC RESUME
005825,000248:
005826,000249: 06,2167 00006 QUIKOFF EXTEND
005827,000250: 06,2170 01010 WRITE OUT0
005828,000251: 06,2171 35002 CAF BIT14 # RESET DSRUPTSW TO SEND DISPLAY NEXT PASS
005829,000252: 06,2172 12146 TCF QUIKRUPT
005830,000253:
005831,000254: 06,2173 22400 11,14,9 OCT 22400
005832,000255:
Page 139 |
005834,000257: # PROGRAM NAME: IMUMON
005835,000258:
005836,000259: # FUNCTIONAL DESCRIPTION: THIS PROGRAM IS ENTERED EVERY 480 MS. IT DETECTS CHANGES OF THE IMU STATUS BITS IN
005837,000260: # CHANNEL 30 AND CALLS THE APPROPRIATE SUBROUTINES. THE BITS PROCESSED AND THEIR RELEVANT SUBROUTINES ARE:
005838,000261:
005839,000262: # FUNCTION BIT SUBROUTINE CALLED
005840,000263: # -------- --- -----------------
005841,000264: # TEMP IN LIMITS 15 TLIM
005842,000265: # ISS TURN-ON REQUEST 14 ITURNON
005843,000266: # IMU FAIL 13 IMUFAIL (SETISSW)
005844,000267: # IMU CDU FAIL 12 ICDUFAIL (SETISSW)
005845,000268: # IMU CAGE 11 IMUCAGE
005846,000269: # IMU OPERATE 9 IMUOP
005847,000270:
005848,000271: # THE LAST SAMPLED STATE OF THESE BITS IS LEFT IN IMODES30. ALSO, EACH SUBROUTINE CALLED FINDS THE NEW
005849,000272: # VALUE OF THE BIT IN A, WITH Q SET TO THE PROPER RETURN LOCATION, NXTIFAIL.
005850,000273:
005851,000274: # CALLING SEQUENCE: T4RUPT EVERY 480 MILLISECONDS.
005852,000275:
005853,000276: # JOBS OR TASKS INITIATED: NONE.
005854,000277:
005855,000278: # SUBROUTINES CALLED: TLIM, ITURNON, SETISSW, IMUCAGE, IMUOP.
005856,000279:
005857,000280: # ERASABLE INITIALIZATION:
005858,000281: # FRESH START OR RESTART WITH NO GROUPS ACTIVE: C(IMODES30) = OCT 37411.
005859,000282: # RESTART WITH ACTIVE GROUPS: C(IMODES30) = (B(IMODES30)AND(OCT 00035)) PLUS OCT 37400.
005860,000283: # THIS LEAVES IMU FAIL BITS INTACT.
005861,000284:
005862,000285: # ALARMS: NONE.
005863,000286:
005864,000287: # EXIT: TNONTEST.
005865,000288:
005866,000289: # OUTPUT: UPDATED IMODES30 WITH CHANGES PROCESSED BY APPROPRIATE SUBROUTINE.
005867,000290:
005868,000291: 06,2174 31320 IMUMON CA IMODES30 # SEE IF THERE HAS BEEN A CHANGE IN THE
005869,000292: 06,2175 00006 EXTEND # RELEVANT BITS OF CHAN 30.
005870,000293: 06,2176 06030 RXOR CHAN30 # CHECK IF BITS 9,11-15 CHANGED
005871,000294: 06,2177 72743 MASK 30RDMSK
005872,000295: 06,2200 00006 EXTEND
005873,000296: 06,2201 12231 BZF TNONTEST # NO CHANGE IN STATUS.
005874,000297:
005875,000298: 06,2202 54070 TS RUPTREG1 # SAVE BITS WHICH HAVE CHANGED.
005876,000299: 06,2203 23320 LXCH IMODES30 # UPDATE IMODES30.
005877,000300: 06,2204 00006 EXTEND
005878,000301: 06,2205 06001 RXOR LCHAN
005879,000302: 06,2206 55320 TS IMODES30
005880,000303:
005881,000304: 06,2207 45017 CS ONE
005882,000305: 06,2210 56070 XCH RUPTREG1
005883,000306: 06,2211 00006 EXTEND
Page 140 |
005885,000308: 06,2212 62507 BZMF TLIM # CHANGE IN IMU TEMP.
005886,000309: 06,2213 12215 TCF NXTIFBIT # BEGIN BIT SCAN.
005887,000310:
005888,000311: 06,2214 65017 -1 AD ONE # (RE-ENTERS HERE FROM NXTIFAIL.)
005889,000312: 06,2215 24070 NXTIFBIT INCR RUPTREG1 # ADVANCE BIT POSITION NUMBER.
005890,000313: 06,2216 60000 +1 DOUBLE
005891,000314: 06,2217 54000 TS A # SKIP IF OVERFLOW.
005892,000315: 06,2220 12215 TCF NXTIFBIT # LOOK FOR BIT.
005893,000316:
005894,000317: 06,2221 56071 XCH RUPTREG2 # SAVE OVERFLOW-CORRECTED DATA.
005895,000318: 06,2222 50070 INDEX RUPTREG1 # SELECT NEW VALUE OF THIS BIT.
005896,000319: 06,2223 35002 CAF BIT14
005897,000320: 06,2224 71320 MASK IMODES30
005898,000321: 06,2225 50070 INDEX RUPTREG1
005899,000322: 06,2226 02737 TC IFAILJMP
005900,000323:
005901,000324: 06,2227 10071 NXTIFAIL CCS RUPTREG2 # PROCESS ANY ADDITIONAL CHANGES.
005902,000325: 06,2230 12214 TCF NXTIFBIT -1
005903,000326:
Page 141 |
005905,000328: # PROGRAM NAME: TNONTEST.
005906,000329:
005907,000330: # FUNCTIONAL DESCRIPTION: THIS PROGRAM HONORS REQUESTS FOR ISS INITIALIZATION. ISS TURN-ON (CHANNEL 30 BIT 14)
005908,000331: # AND ISS OPERATE (CHANNEL 30 BIT 9) REQUESTS ARE TREATED AS A PAIR AND PROCESSING TAKES PLACE .480 SECONDS
005909,000332: # AFTER EITHER ONE APPEARS. THIS INITIALIZATION TAKES ON ONE OF THE FOLLOWING THREE FORMS:
005910,000333:
005911,000334: # 1) ISS TURN-ON: IN THIS SITUATION THE COMPUTER IS OPERATING WHEN THE ISS IS TURNED ON. NOMINALLY,
005912,000335: # BOTH ISS TURN-ON AND ISS OPERATE APPEAR. THE PLATFORM IS CAGED FOR 90 SECONDS AND THE ICDU'S ZEROED
005913,000336: # SO THAT AT THE END OF THE PROCESS THE GIMBAL LOCK MONITOR WILL FUNCTION PROPERLY.
005914,000337:
005915,000338: # 2) ICDU INITIALIZATION: IN THIS CASE THE COMPUTER WAS PROBABLY TURNED ON WITH THE ISS IN OPERATE OR
005916,000339: # A FRESH START WAS DONE WITH THE ISS IN OPERATE. IN THIS CASE ONLY ISS OPERATE IS ON. THE ICDU'S ARE
005917,000340: # ZEROED SO THE GIMBAL LOCK MONITOR WILL FUNCTION. AN EXCEPTION IS IF THE ISS IS IN GIMBAL LOCK AFTER
005918,000341: # A RESTART, THE ICDU'S WILL NOT BE ZEROED.
005919,000342:
005920,000343: # 3) RESTART WITH RESTARTABLE PROGRAM USING THE IMU: IN THIS CASE, NO INITIALIZATION TAKES PLACE SINCE
005921,000344: # IT IS ASSUMED THAT THE USING PROGRAM DID THE INITIALIZATION AND THEREFORE T4RUPT SHOULD NOT INTERFERE.
005922,000345:
005923,000346: # IMODES30 BIT 7 IS SET = 1 BY THE FIRST BIT (CHANNEL 30 BIT 14 OR 9) WHICH ARRIVES. FOLLOWING THIS. TNONTEST IS
005924,000347: # ENTERED, FINDS BIT 7 = 1 BUT BIT 8 = 0, SO IT SETS BIT 8 = 1 AND EXITS. THE NEXT TIME IT FINDS BIT 8 = 1 AND
005925,000348: # PROCEEDS, SETTING BITS 8 AND 7 = 0. AT PROCTNON, IF ISS TURN-ON REQUEST IS PRESENT, THE ISS IS CAGED (ZERO +
005926,000349: # COARSE). IF ISS OPERATE IS NOT PRESENT PROGRAM ALARM 00213 IS ISSUED. AT THE END OF A 90 SECOND CAGE, BIT 2
005927,000350: # OF IMODES30 IS TESTED. IF IT IS = 1, ISS TURN-ON WAS NOT PRESENT FOR THE ENTIRE 90 SECONDS. IN THAT CASE, IF
005928,000351: # THE ISS TURN-ON REQUEST IS PRESENT THE 90 SECOND WAIT IS REPEATED, OTHERWISE NO ACTION OCCURS UNLESS A PROGRAM
005929,000352: # WAS WAITING FOR THE INITIALIZATION IN WHICH CASE THE PROGRAM IS GIVEN AN IMUSTALL ERROR RETURN. IF THE DELAY
005930,000353: # WENT PROPERLY, THE ISS DELAY OUTBIT IS SENT AND THE ICDU'S ZEROED. A TASK IS INITIATED TO REMOVE THE PIPA FAIL
005931,000354: # INHIBIT BIT IN 10.24 SECONDS. IF A MISSION PROGRAM WAS WAITING IT IS INFORMED VIA ENDIMU.
005932,000355:
005933,000356: # AT PROCTNON, IF ONLY ISS OPERATE IS PRESENT (OPONLY), THE CDU'S ARE ZEROED UNLESS THE PLATFORM IS IN COARSE
005934,000357: # ALIGN (= GIMBAL LOCK HERE) OR A MISSION PROGRAM IS USING THE IMU (IMUSEFLG = 1).
005935,000358:
005936,000359: # CALLING SEQUENCE: T4RUPT EVERY 480 MILLISECONDS AFTER IMUMON.
005937,000360:
005938,000361: # JOBS OR TASKS INITIATED: 1) ENDTNON, 90 SECONDS AFTER CAGING STARTED. 2) ISSUP, 4 SECONDS AFTER CAGING DONE.
005939,000362: # 3) PFAILOK, 10.24 SECONDS AFTER INITIALIZATION COMPLETED. 4) UNZ2, 320 MILLISECONDS AFTER ZEROING
005940,000363: # STARTED.
005941,000364:
005942,000365: # SUBROUTINES CALLED: CAGESUB, CAGESUB2, ZEROICDU, ENDIMU, IMUBAD, NOATTOFF, SETISSW, VARDELAY.
005943,000366:
005944,000367: # ERASABLE INITIALIZATION: SEE IMUMON.
005945,000368:
005946,000369: # ALARMS: PROGRAM ALARM 00213 IF ISS TURN-ON REQUESTED WITHOUT ISS OPERATE.
005947,000370:
005948,000371: # EXIT: ENDTNON EXITS TO C33TEST. TASKS HAVING TO DO WITH INITIALIZATION EXIT AS FOLLOWS: MISSION PROGRAM
005949,000372: # WAITING AND INITIALIZATION COMPLETE, EXIT TO ENDIMU, MISSION PROGRAM WAITING AND INITIALIZATION FAILED, EXIT TO
005950,000373: # IMUBAD, IMU NOT IN USE, EXIT TO TASKOVER.
005951,000374:
005952,000375: # OUTPUT: ISS INITIALIZED.
005953,000376:
005954,000377: 06,2231 41320 TNONTEST CS IMODES30 # AFTER PROCESSING ALL CHANGES, SEE IF IT
Page 142 |
005956,000379: 06,2232 75011 MASK BIT7 # IS TIME TO ACT ON A TURN-ON SEQUENCE.
005957,000380: 06,2233 10000 CCS A
005958,000381: 06,2234 12367 TCF C33TEST # NO - EXAMINE CHANNEL 33.
005959,000382:
005960,000383: 06,2235 35010 CAF BIT8 # SEE IF FIRST SAMPLE OR SECOND.
005961,000384: 06,2236 71320 MASK IMODES30
005962,000385: 06,2237 10000 CCS A
005963,000386: 06,2240 12244 TCF PROCTNON # REACT AFTER SECOND SAMPLE.
005964,000387:
005965,000388: 06,2241 35010 CAF BIT8 # IF FIRST SAMPLE, SET BIT TO REACT NEXT
005966,000389: 06,2242 27320 ADS IMODES30 # TIME.
005967,000390: 06,2243 12367 TCF C33TEST
005968,000391:
005969,000392: # PROCESS IMU TURN-ON REQUESTS AFTER WAITING 1 SAMPLE FOR ALL SIGNALS TO ARRIVE.
005970,000393:
005971,000394: 06,2244 42757 PROCTNON CS BITS7&8
005972,000395: 06,2245 71320 MASK IMODES30
005973,000396: 06,2246 55320 TS IMODES30
005974,000397: 06,2247 75002 MASK BIT14 # SEE IF TURN-ON REQUEST.
005975,000398: 06,2250 10000 CCS A
005976,000399: 06,2251 12342 TCF OPONLY # OPERATE ON ONLY.
005977,000400:
005978,000401: 06,2252 41320 CS IMODES30 # IF TURN-ON REQUEST, WE SHOULD HAVE IMU
005979,000402: 06,2253 75007 MASK BIT9 # OPERATE.
005980,000403: 06,2254 10000 CCS A
005981,000404: 06,2255 12260 TCF +3
005982,000405:
005983,000406: 06,2256 05650 TC ALARM # ALARM IF NOT.
005984,000407: 06,2257 00213 OCT 213
005985,000408:
005986,000409: 06,2260 02717 +3 TC CAGESUB
005987,000410:
005988,000411: 06,2261 32764 CAF 90SECS
005989,000412: 06,2262 05245 TC WAITLIST
005990,000413: 06,2263 E3,1474 EBANK= CDUIND
005991,000414: 06,2263 02270 14063 2CADR ENDTNON
005992,000415:
005993,000416: 06,2265 12367 TCF C33TEST
005994,000417:
005995,000418: 06,2266 32764 RETNON CAF 90SECS
005996,000419: 06,2267 05272 TC VARDELAY
005997,000420:
005998,000421: 06,2270 45016 ENDTNON CS BIT2 # RESET TURN-ON REQUEST FAIL BIT.
005999,000422: 06,2271 71320 MASK IMODES30
006000,000423: 06,2272 57320 XCH IMODES30
006001,000424: 06,2273 75016 MASK BIT2 # IF IT WAS OFF, SEND ISS DELAY COMPLETE.
006002,000425: 06,2274 00006 EXTEND
006003,000426: 06,2275 12310 BZF ENDTNON2
Page 143 |
006005,000428: 06,2276 35002 CAF BIT14 # IF IT WAS ON AND TURN-ON REQUEST NOW
006006,000429: 06,2277 71320 MASK IMODES30 # PRESENT, RE-ENTER 90 SEC DELAY IN WL.
006007,000430: 06,2300 00006 EXTEND
006008,000431: 06,2301 12266 BZF RETNON
006009,000432:
006010,000433: 06,2302 40074 CS STATE # IF IT IS NOT ON NOW, SEE IF A PROG WAS
006011,000434: 06,2303 75010 MASK IMUSEFLG # WAITING.
006012,000435: 06,2304 10000 CCS A
006013,000436: 06,2305 15324 TCF TASKOVER
006014,000437: 06,2306 04701 TC POSTJUMP
006015,000438: 06,2307 17522 CADR IMUBAD # UNSUCCESSFUL TURN-ON.
006016,000439:
006017,000440: 06,2310 35001 ENDTNON2 CAF BIT15 # SEND ISS DELAY COMPLETE.
006018,000441: 06,2311 00006 EXTEND
006019,000442: 06,2312 05012 WOR CHAN12 # TURN OFF ISS DELAY COUNTER
006020,000443: 06,2313 04740 TC IBNKCALL # TURN OFF NO ATT LAMP.
006021,000444: 06,2314 17151 CADR NOATTOFF
006022,000445:
006023,000446: 06,2315 05521 UNZ2 TC ZEROICDU
006024,000447:
006025,000448: 06,2316 45027 CS BITS4&5 # REMOVE ZERO AND COARSE.
006026,000449: 06,2317 00006 EXTEND
006027,000450: 06,2320 03012 WAND CHAN12
006028,000451:
006029,000452: 06,2321 35005 CAF BIT11 # WAIT 10 SECS FOR CTRS TO FIND GIMBALS
006030,000453: 06,2322 05272 TC VARDELAY
006031,000454:
006032,000455: 06,2323 42754 ISSUP CS OCT54 # REMOVE CAGING, IMU FAIL INHIBIT, AND
006033,000456: 06,2324 71320 MASK IMODES30 # ICDUFAIL INHIBIT FLAGS.
006034,000457: 06,2325 55320 TS IMODES30
006035,000458:
006036,000459: 06,2326 45012 CS BIT6 # ENABLE DAP
006037,000460: 06,2327 71321 MASK IMODES33
006038,000461: 06,2330 55321 TS IMODES33
006039,000462:
006040,000463: 06,2331 02665 TC SETISSW # ISS WARNING MIGHT HAVE BEEN INHIBITED.
006041,000464:
006042,000465: 06,2332 45001 CS BIT15 # REMOVE IMU DELAY COMPLETE DISCRETE.
006043,000466: 06,2333 00006 EXTEND
006044,000467: 06,2334 03012 WAND CHAN12
006045,000468:
006046,000469: 06,2335 35045 CAF 4SECS # DONT ENABLE PROG ALARM ON PIP FAIL FOR
006047,000470: 06,2336 05245 TC WAITLIST # ANOTHER 4 SECS.
006048,000471: 06,2337 E3,1474 EBANK= CDUIND
006049,000472: 06,2337 03137 16063 2CADR PFAILOK
006050,000473:
006051,000474: 06,2341 15324 TCF TASKOVER
006052,000475:
006053,000476: 06,2342 35014 OPONLY CAF BIT4
Page 144 |
006055,000478: 06,2343 00006 EXTEND # IF OPERATE ON ONLY AND WE ARE IN COARSE
006056,000479: 06,2344 02012 RAND CHAN12 # ALIGN, DONT ZERO THE CDUS BECAUSE WE
006057,000480: 06,2345 10000 CCS A # MIGHT BE IN GIMBAL LOCK. USE V41N20 TO
006058,000481: 06,2346 12367 TCF C33TEST # RECOVER.
006059,000482:
006060,000483: 06,2347 35010 CAF IMUSEFLG # OTHERWISE, ZERO THE COUNTERS
006061,000484: 06,2350 70074 MASK STATE # UNLESS SOMEONE IS USING THE IMU.
006062,000485: 06,2351 10000 CCS A
006063,000486: 06,2352 12367 TCF C33TEST
006064,000487:
006065,000488: 06,2353 02730 TC CAGESUB2 # SET TURNON FLAGS.
006066,000489:
006067,000490: 06,2354 04740 ISSZERO TC IBNKCALL # TURN OFF NO ATT LAMP
006068,000491: 06,2355 17151 CADR NOATTOFF # IMU CAGE OFF ENTRY
006069,000492:
006070,000493: 06,2356 35013 CAF BIT5 # ISS CDU ZERO
006071,000494: 06,2357 00006 EXTEND
006072,000495: 06,2360 05012 WOR CHAN12
006073,000496:
006074,000497: 06,2361 05521 TC ZEROICDU
006075,000498: 06,2362 35012 CAF BIT6 # WAIT 300 MS FOR AGS TO RECEIVE SIGNAL.
006076,000499: 06,2363 05245 TC WAITLIST
006077,000500: 06,2364 1331 EBANK= OPTMODES
006078,000501: 06,2364 02315 14062 2CADR UNZ2
006079,000502:
006080,000503: 06,2366 12367 TCF C33TEST
006081,000504:
Page 145 |
006083,000506: # PROGRAM NAME: C33TEST
006084,000507:
006085,000508: # FUNCTIONAL DESCRIPTION: THIS PROGRAM MONITORS THREE FLIP-FLOP INBITS OF CHANNEL 33 AND CALLS THE APPROPRIATE
006086,000509: # SUBROUTINE TO PROCESS A CHANGE. IT IS ANALOGOUS TO IMUMON, WHICH MONITORS CHANNEL 30, EXCEPT THAT IT READS
006087,000510: # CHANNEL 33 WITH A WAND INSTRUCTION BECAUSE A 'WRITE' PULSE IS REQUIRED TO RESET THE FLIP-FLOPS. THE BITS
006088,000511: # PROCESSED AND THE SUBROUTINES CALLED ARE:
006089,000512: # BIT FUNCTION SUBROUTINE
006090,000513: # --- -------- ----------
006091,000514: # 13 PIPA FAIL PIPFAIL
006092,000515: # 12 DOWNLINK TOO FAST DNTMFAST
006093,000516: # 11 UPLINK TOO FAST UPTMFAST
006094,000517:
006095,000518: # UPON ENTRY TO THE SUBROUTINE, THE NEW BIT STATE IS IN A.
006096,000519:
006097,000520: # CALLING SEQUENCE: EVERY 480 MILLISECONDS AFTER TNONTEST.
006098,000521:
006099,000522: # JOBS OR TASKS INITIATED: NONE.
006100,000523:
006101,000524: # SUBROUTINES CALLED: PIPFAIL, DNTMFAST AND UPTMFAST ON BIT CHANGES.
006102,000525:
006103,000526: # ERASABLE INITIALIZATION: C(IMODES33) = OCT 16000 ON A FRESH START OR RESTART, THEREFORE, THESE ALARMS WILL
006104,000527: # REAPPEAR IF THE CONDITIONS PERSIST.
006105,000528:
006106,000529: # ALARMS: NONE.
006107,000530:
006108,000531: # EXIT: GLOCKMON.
006109,000532:
006110,000533: # OUTPUT: UPDATED BITS 13, 12 AND 11 OF IMODES33 WITH CHANGES PROCESSED.
006111,000534:
006112,000535: 06,2367 31321 C33TEST CA IMODES33 # SEE IF RELEVANT CHAN33 BITS HAVE
006113,000536: 06,2370 75070 MASK 33RDMSK
006114,000537: 06,2371 54001 TS L # CHANGED.
006115,000538: 06,2372 35070 CAF 33RDMSK
006116,000539: 06,2373 00006 EXTEND
006117,000540: 06,2374 03033 WAND CHAN33 # RESETS FLIP-FLOP INPUTS.
006118,000541: 06,2375 00006 EXTEND
006119,000542: 06,2376 06001 RXOR LCHAN
006120,000543: 06,2377 00006 EXTEND
006121,000544: 06,2400 12427 BZF GLOCKMON # ON NO CHANGE.
006122,000545:
006123,000546: 06,2401 54070 TS RUPTREG1 # SAVE BITS WHICH HAVE CHANGED.
006124,000547: 06,2402 23321 LXCH IMODES33
006125,000548: 06,2403 00006 EXTEND
006126,000549: 06,2404 06001 RXOR LCHAN
006127,000550: 06,2405 55321 TS IMODES33 # UPDATED IMODES33.
006128,000551:
006129,000552: 06,2406 35021 CAF ZERO
006130,000553: 06,2407 56070 XCH RUPTREG1
006131,000554: 06,2410 60000 DOUBLE
Page 146 |
006133,000556: 06,2411 12414 TCF NXTIBT +1 # SCAN FOR BIT CHANGES.
006134,000557:
006135,000558: 06,2412 65017 -1 AD ONE
006136,000559: 06,2413 24070 NXTIBT INCR RUPTREG1
006137,000560: 06,2414 60000 +1 DOUBLE
006138,000561: 06,2415 54000 TS A # (CODING IDENTICAL TO CHAN 30).
006139,000562: 06,2416 12413 TCF NXTIBT
006140,000563:
006141,000564: 06,2417 56071 XCH RUPTREG2
006142,000565: 06,2420 50070 INDEX RUPTREG1 # GET NEW VALUE OF BIT WHICH CHANGED.
006143,000566: 06,2421 35003 CAF BIT13
006144,000567: 06,2422 71321 MASK IMODES33
006145,000568: 06,2423 50070 INDEX RUPTREG1
006146,000569: 06,2424 02745 TC C33JMP
006147,000570:
006148,000571: 06,2425 10071 NXTFL33 CCS RUPTREG2 # PROCESS POSSIBLE ADDITIONAL CHANGES.
006149,000572: 06,2426 12412 TCF NXTIBT -1
006150,000573:
Page 147 |
006152,000575: # PROGRAM NAME: GLOCKMON
006153,000576:
006154,000577: # FUNCTIONAL DESCRIPTION: THIS PROGRAM MONITORS THE CDUZ COUNTER TO DETERMINE WHETHER THE ISS IS IN GIMBAL LOCK
006155,000578: # AND TAKES ACTION IF IT IS. THREE REGIONS OF MIDDLE GIMBAL ANGLE (MGA) ARE USED:
006156,000579:
006157,000580: # 1) ABS(MGA) LESS THAN OR EQUAL TO 70 DEGREES - NORMAL MODE.
006158,000581: # 2) ABS(MGA) GREATER THAN 70 DEGREES AND LESS THAN OR EQUAL TO 85 DEGREES - GIMBAL LOCK LAMP TURNED ON.
006159,000582: # 3) ABS(MGA) GREATER THAN 85 DEGREES - ISS PUT IN COARSE ALIGN AND NO ATT LAMP TURNED ON.
006160,000583:
006161,000584: # CALLING SEQUENCE: EVERY 480 MILLISECONDS AFTER C33TEST.
006162,000585:
006163,000586: # JOBS OR TASKS INITIATED: NONE.
006164,000587:
006165,000588: # SUBROUTINES CALLED: 1) SETCOARS WHEN ABS(MGA) GREATER THAN 85 DEGREES AND ISS NOT IN COARSE ALIGN.
006166,000589: # 2) LAMPTEST BEFORE TURNING OFF GIMBAL LOCK LAMP.
006167,000590:
006168,000591: # ERASABLE INITIALIZATION:
006169,000592: # 1) FRESH START OR RESTART WITH NO GROUPS ACTIVE: C(CDUZ) = 0, IMODES30 BIT 6 = 0, IMODES33 BIT 1 = 0.
006170,000593: # 2) RESTART WITH GROUPS ACTIVE: SAME AS FRESH START EXCEPT C(CDUZ) NOT CHANGED SO GIMBAL MONITOR
006171,000594: # PROCEEDS AS BEFORE.
006172,000595:
006173,000596: # ALARMS: 1) MGA REGION (2) CAUSES GIMBAL LOCK LAMP TO BE LIT.
006174,000597: # 2) MGA REGION (3) CAUSES THE ISS TO BE PUT IN COARSE ALIGN AND THE NO ATT LAMP TO BE LIT IF EITHER NOT
006175,000598: # SO ALREADY.
006176,000599:
006177,000600: 06,2427 10034 GLOCKMON CCS CDUZ
006178,000601: 06,2430 12434 TCF GLOCKCHK # SEE IF MAGNITUDE OF MGA IS GREATER THAN
006179,000602: 06,2431 12460 TCF SETGLOCK # 70 DEGREES.
006180,000603: 06,2432 12434 TCF GLOCKCHK
006181,000604: 06,2433 12460 TCF SETGLOCK
006182,000605:
006183,000606: 06,2434 62505 GLOCKCHK AD -70DEGS
006184,000607: 06,2435 00006 EXTEND
006185,000608: 06,2436 62457 BZMF SETGLOCK -1 # NO LOCK.
006186,000609:
006187,000610: 06,2437 62506 AD -15DEGS # SEE IF ABS(MGA) GREATER THAN 85 DEGS.
006188,000611: 06,2440 00006 EXTEND
006189,000612: 06,2441 62455 BZMF NOGIMRUN
006190,000613:
006191,000614: 06,2442 35014 CAF BIT4 # IF SO, SYSTEM SHOULD BE IN COARSE ALIGN
006192,000615: 06,2443 00006 EXTEND # TO PREVENT GIMBAL RUN-AWAY.
006193,000616: 06,2444 02012 RAND CHAN12
006194,000617: 06,2445 10000 CCS A
006195,000618: 06,2446 12455 TCF NOGIMRUN
006196,000619:
006197,000620: 06,2447 04740 TC IBNKCALL # GO INTO COARSE ALIGN.
006198,000621: 06,2450 17027 CADR SETCOARS
006199,000622:
006200,000623: 06,2451 36211 CAF SIX # ENABLE ISS ERROR COUNTERS IN 60 MS
006201,000624: 06,2452 05245 TC WAITLIST
Page 148 |
006203,000626: 06,2453 E3,1474 EBANK= CDUIND
006204,000627: 06,2453 03023 16063 2CADR CA+ECE
006205,000628:
006206,000629: 06,2455 35012 NOGIMRUN CAF BIT6 # TURN ON GIMBAL LOCK LAMP.
006207,000630: 06,2456 12460 TCF SETGLOCK
006208,000631:
006209,000632: 06,2457 35021 -1 CAF ZERO
006210,000633: 06,2460 61036 SETGLOCK AD DSPTAB +11D # SEE IF PRESENT STATE OF GIMBAL LOCK LAMP
006211,000634: 06,2461 75012 MASK BIT6 # AGREES WITH DESIRED STATE BY HALF ADDING
006212,000635: 06,2462 00006 EXTEND # THE TWO.
006213,000636: 06,2463 15333 BZF GLOCKOK # OK AS IS.
006214,000637:
006215,000638: 06,2464 71036 MASK DSPTAB +11D # IF OFF, DONT TURN ON IF IMU BEING CAGED.
006216,000639: 06,2465 10000 CCS A
006217,000640: 06,2466 12502 TCF GLAMPTST # TURN OFF UNLESS LAMP TEST IN PROGRESS.
006218,000641:
006219,000642: 06,2467 35012 CAF BIT6
006220,000643: 06,2470 71320 MASK IMODES30
006221,000644: 06,2471 10000 CCS A
006222,000645: 06,2472 15333 TCF GLOCKOK
006223,000646:
006224,000647: 06,2473 41036 GLINVERT CS DSPTAB +11D # INVERT GIMBAL LOCK LAMP.
006225,000648: 06,2474 75012 MASK BIT6
006226,000649: 06,2475 65001 AD BIT15 # TO INDICATE CHANGE IN DSPTAB +11D.
006227,000650: 06,2476 57036 XCH DSPTAB +11D
006228,000651: 06,2477 72164 MASK OCT37737
006229,000652: 06,2500 27036 ADS DSPTAB +11D
006230,000653: 06,2501 15333 TCF GLOCKOK
006231,000654:
006232,000655: 06,2502 02750 GLAMPTST TC LAMPTEST # TURN OFF UNLESS LAMP TEST IN PROGRESS.
006233,000656: 06,2503 15333 TCF GLOCKOK
006234,000657: 06,2504 12473 TCF GLINVERT
006235,000658:
006236,000659: 06,2505 63434 -70DEGS DEC -.38888 # -70 DEGREES SCALED IN HALF-REVOLUTIONS.
006237,000660: 06,2506 75252 -15DEGS DEC -.08333
006238,000661:
Page 149 |
006240,000663: # PROGRAM NAME: TLIM.
006241,000664:
006242,000665: # FUNCTIONAL DESCRIPTION: THIS PROGRAM MAINTAINS THE TEMP LAMP (BIT 4 OF CHANNEL 11) ON THE DSKY TO AGREE WITH
006243,000666: # THE TEMP SIGNAL FROM THE ISS (BIT 15 OF CHANNEL 30). HOWEVER, THE LIGHT WILL NOT BE TURNED OFF IF A LAMP TEST
006244,000667: # IS IN PROGRESS.
006245,000668:
006246,000669: # CALLING SEQUENCE: CALLED BY IMUMON ON A CHANGE OF BIT 15 OF CHANNEL 30.
006247,000670:
006248,000671: # JOBS OR TASKS INITIATED: NONE.
006249,000672:
006250,000673: # SUBROUTINES CALLED: LAMPTEST.
006251,000674:
006252,000675: # ERASABLE INITIALIZATION: FRESH START AND RESTART TURN THE TEMP LAMP OFF.
006253,000676:
006254,000677: # ALARMS: TEMP LAMP TURNED ON WHEN IMU TEMP GOES OUT OF LIMITS.
006255,000678:
006256,000679: # EXIT: NXTIFAIL.
006257,000680:
006258,000681: # OUTPUT: SERVICE OF TEMP LAMP. IN A, EXCEPT FOR TLIM.
006259,000682:
006260,000683: 06,2507 74777 TLIM MASK POSMAX # REMOVE BIT FROM WORD OF CHANGES AND SET
006261,000684: 06,2510 54071 TS RUPTREG2 # DSKY TEMP LAMP ACCORDINGLY.
006262,000685:
006263,000686: 06,2511 11320 CCS IMODES30
006264,000687: 06,2512 12520 TCF TEMPOK
006265,000688: 06,2513 12520 TCF TEMPOK
006266,000689:
006267,000690: 06,2514 35014 CAF BIT4 # TURN ON LAMP.
006268,000691: 06,2515 00006 EXTEND
006269,000692: 06,2516 05011 WOR DSALMOUT
006270,000693: 06,2517 12227 TCF NXTIFAIL
006271,000694:
006272,000695: 06,2520 02750 TEMPOK TC LAMPTEST # IF TEMP NOW OK, DONT TURN OFF LAMP IF
006273,000696: 06,2521 12227 TCF NXTIFAIL # LAMP TEST IN PROGRESS.
006274,000697:
006275,000698: 06,2522 45014 CS BIT4
006276,000699: 06,2523 00006 EXTEND
006277,000700: 06,2524 03011 WAND DSALMOUT # TURN OFF TEMP CAUTION
006278,000701: 06,2525 12227 TCF NXTIFAIL
006279,000702:
Page 150 |
006281,000704: # PROGRAM NAME: ITURNON.
006282,000705:
006283,000706: # FUNCTIONAL DESCRIPTION: THIS PROGRAM IS CALLED BY IMUMON WHEN A CHANGE OF BIT 14 OF CHANNEL 30 (ISS TURN-ON
006284,000707: # REQUEST) IS DETECTED. UPON ENTRY, ITURNON CHECKS IF A TURN-ON DELAY SEQUENCE HAS FAILED, AND IF SO, IT EXITS.
006285,000708: # IF NOT, IT CHECKS WHETHER THE TURN-ON REQUEST CHANGE IS TO ON OR OFF. IF ON, IT SETS BIT 7 OF IMODES30 TO 1 SO
006286,000709: # THAT TNONTEST WILL INITIATE THE ISS INITIALIZATION SEQUENCE. IF OFF, THE TURN-ON DELAY SIGNAL, CHANNEL 12 BIT
006287,000710: # 15, IS CHECKED AND IF IT IS ON, ITURNON EXITS. IF THE DELAY SIGNAL IS OFF, PROGRAM ALARM 00207 IS ISSUED, BIT 2
006288,000711: # OF IMODES30 IS SET TO 1 AND THE PROGRAM EXITS.
006289,000712:
006290,000713: # THE SETTING OF BIT 2 OF IMODES30 (ISS DELAY SEQUENCE FAIL) INHIBITS THIS ROUTINE AND IMUOP FROM
006291,000714: # PROCESSING ANY CHANGES. THIS BIT WILL BE RESET BY THE ENDTNON ROUTINE WHEN THE CURRENT 90 SECOND DELAY PERIOD
006292,000715: # ENDS.
006293,000716:
006294,000717: # CALLING SEQUENCE: FROM IMUMOM WHEN ISS TURN-ON REQUEST CHANGES STATE.
006295,000718:
006296,000719: # JOBS OR TASKS INITIATED: NONE.
006297,000720:
006298,000721: # SUBROUTINES CALLED: ALARM, IF THE ISS TURN-ON REQUEST IS NOT PRESENT FOR 90 SECONDS.
006299,000722:
006300,000723: # ERASABLE INITIALIZATION: FRESH START AND RESTART SET BIT 15 OF CHANNEL 12 AND BITS 2 AND 7 OF IMODES30 TO 0,
006301,000724: # AND BIT 14 OF IMODES30 TO 1.
006302,000725:
006303,000726: # ALARMS: PROGRAM ALARM 00207 IS ISSUED IF THE ISS TURN-ON REQUEST SIGNAL IS NOT PRESENT FOR 90 SECONDS.
006304,000727:
006305,000728: # EXIT: NXTIFAIL.
006306,000729:
006307,000730: # OUTPUT: BIT 7 OF IMODES30 TO START ISS INITIALIZATION, OR BIT 2 OF IMODES30 AND PROGRAM ALARM 00207 TO INDICATE
006308,000731: # A FAILED TURN-ON SEQUENCE.
006309,000732:
006310,000733: 06,2526 35016 ITURNON CAF BIT2 # IF DELAY REQUEST HAS GONE OFF
006311,000734: 06,2527 71320 MASK IMODES30 # PREMATURELY, DO NOT PROCESS ANY CHANGES
006312,000735: 06,2530 10000 CCS A # UNTIL THE CURRENT 90 SEC WAIT EXPIRES.
006313,000736: 06,2531 12227 TCF NXTIFAIL
006314,000737:
006315,000738: 06,2532 35002 CAF BIT14 # SEE IF JUST ON OR OFF.
006316,000739: 06,2533 71320 MASK IMODES30
006317,000740: 06,2534 00006 EXTEND
006318,000741: 06,2535 12551 BZF ITURNON2 # IF JUST ON.
006319,000742:
006320,000743: 06,2536 35001 CAF BIT15
006321,000744: 06,2537 00006 EXTEND # SEE IF DELAY PRESENT DISCRETE HAS BEEN
006322,000745: 06,2540 02012 RAND CHAN12 # SENT. IF SO, ACTION COMPLETE.
006323,000746: 06,2541 00006 EXTEND
006324,000747: 06,2542 12544 BZF +2
006325,000748: 06,2543 12227 TCF NXTIFAIL
006326,000749:
006327,000750: 06,2544 35016 CAF BIT2 # IF NOT, SET BIT TO INDICATE REQUEST NOT
006328,000751: 06,2545 27320 ADS IMODES30 # PRESENT FOR FULL DURATION.
006329,000752: 06,2546 05650 TC ALARM
006330,000753: 06,2547 00207 OCT 207
006331,000754: 06,2550 12227 TCF NXTIFAIL
006332,000755:
Page 151 |
006334,000757: 06,2551 41320 ITURNON2 CS IMODES30 # SET BIT7 TO INDICATE WAIT OF 1 SAMPLE
006335,000758: 06,2552 75011 MASK BIT7
006336,000759: 06,2553 27320 ADS IMODES30
006337,000760: 06,2554 12227 TCF NXTIFAIL
006338,000761:
Page 152 |
006340,000763: # PROGRAM NAME: IMUCAGE.
006341,000764:
006342,000765: # FUNCTIONAL DESCRIPTION: THIS PROGRAM PROCESSES CHANGES OF THE IMUCAGE INBIT, CHANNEL 30 BIT 11. IF THE BIT
006343,000766: # CHANGES TO 0 (CAGE BUTTON PRESSED), THE ISS IS CAGED (ICDU ZERO + COARSE ALIGN + NO ATT LAMP) UNTIL THE
006344,000767: # ASTRONAUT SELECTS ANOTHER PROGRAM TO ALIGN THE ISS. ANY PULSE TRAINS TO THE ICDU'S AND GYRO'S ARE TERMINATED,
006345,000768: # THE ASSOCIATED OUTCOUNTERS ARE ZEROED AND THE GYRO'S ARE DE-SELECTED. NO ACTION OCCURS WHEN THE BUTTON IS
006346,000769: # RELEASED (INBIT CHANGES TO 1).
006347,000770:
006348,000771: # CALLING SEQUENCE: BY IMUMON WHEN IMU CAGE BIT CHANGES.
006349,000772:
006350,000773: # JOBS OR TASKS INITIATED: NONE.
006351,000774:
006352,000775: # SUBROUTINES CALLED: CAGESUB.
006353,000776:
006354,000777: # ERASABLE INITIALIZATION: FRESH START AND RESTART SET BIT 11 OF IMODES30 TO 1.
006355,000778:
006356,000779: # ALARMS: NONE.
006357,000780:
006358,000781: # EXIT: NXTIFAIL.
006359,000782:
006360,000783: # OUTPUT: ISS CAGED, COUNTERS ZEROED, PULSE TRAINS TERMINATED AND NO ATT LAMP LIT.
006361,000784:
006362,000785: 06,2555 10000 IMUCAGE CCS A # NO ACTION IF GOING OFF.
006363,000786: 06,2556 12354 TCF ISSZERO
006364,000787: 06,2557 42762 CS OCT77000 # TERMINATE ICDU, OPTICS, GYRO PULSE TRAINS
006365,000788: 06,2560 00006 EXTEND
006366,000789: 06,2561 03014 WAND CHAN14
006367,000790:
006368,000791: 06,2562 42756 CS OCT272 # KNOCK DOWN TVC ENABLE, IMU ERROR COUNTER
006369,000792: 06,2563 00006 EXTEND # ENABLE, ZERO ICDU, COARSE ALIGN
006370,000793: 06,2564 03012 WAND CHAN12 # ENABLE, OPTICS ERR CNTR ENABLE
006371,000794:
006372,000795: 06,2565 45003 CS BIT13 # TURN OFF ENGINE
006373,000796: 06,2566 00006 EXTEND
006374,000797: 06,2567 03011 WAND DSALMOUT
006375,000798:
006376,000799: 06,2570 02725 TC CAGESUB1
006377,000800:
006378,000801: 06,2571 04740 TC IBNKCALL # KNOCK DOWN TRACK, REFSMMAT, DRIFT FLAGS
006379,000802: 06,2572 17060 CADR RNDREFDR
006380,000803:
006381,000804: 06,2573 45021 CS ZERO # ZERO COMMAND OUT-COUNTERS
006382,000805: 06,2574 54050 TS CDUXCMD
006383,000806: 06,2575 54051 TS CDUYCMD
006384,000807: 06,2576 54052 TS CDUZCMD
006385,000808: 06,2577 54047 TS GYROCMD
006386,000809:
006387,000810: 06,2600 42761 CS OCT740 # HAVING WAITED AT LEAST 27 MCT FROM
006388,000811: 06,2601 00006 EXTEND # GYRO PULSE TRAIN TERMINATION, WE CAN
006389,000812: 06,2602 03014 WAND CHAN14 # DE-SELECT THE GYROS.
Page 153 |
006391,000814: 06,2603 12227 TCF NXTIFAIL
006392,000815:
Page 154 |
006394,000817: # PROGRAM NAME: IMUOP.
006395,000818:
006396,000819: # FUNCTIONAL DESCRIPTION: THIS PROGRAM PROCESSES CHANGES IN THE ISS OPERATE DISCRETE, BIT 9 OF CHANNEL 30.
006397,000820: # IF THE INBIT CHANGES TO 0, INDICATING ISS ON, IMUOP GENERALLY SETS BIT 7 OF IMODES30 TO 1 TO REQUEST ISS
006398,000821: # INITIALIZATION VIA TNONTEST. AN EXCEPTION IS DURING A FAILED ISS DELAY DURING WHICH BIT 2 OF IMODES30 IS SET
006399,000822: # TO 1 AND NO FURTHER INITIALIZATION IS REQUIRED. WHEN THE INBIT CHANGES TO 1, INDICATING ISS OFF, IMUSEFLG IS
006400,000823: # TESTED TO SEE IF ANY PROGRAM WAS USING THE ISS. IF SO, PROGRAM ALARM 00214 IS ISSUED.
006401,000824:
006402,000825: # CALLING SEQUENCE: BY IMUMON WHEN BIT 9 OF CHANNEL 30 CHANGES.
006403,000826:
006404,000827: # JOBS OR TASKS INITIATED: NONE.
006405,000828:
006406,000829: # SUBROUTINES CALLED: ALARM, IF ISS IS TURNED OFF WHILE IN USE.
006407,000830:
006408,000831: # ERASABLE INITIALIZATION: ON FRESH START AND RESTART, BIT 9 OF IMODES30 IS SET TO 1 EXCEPT WHEN THE GIMBAL LOCK
006409,000832: # LAMP IS ON, IN WHICH CASE IT IS SET TO 0. THIS PREVENTS ICDU ZERO BY TNONTEST WITH THE ISS IN GIMBAL LOCK.
006410,000833:
006411,000834: # ALARMS: PROGRAM ALARM 00214 IF THE ISS IS TURNED OFF WHILE IN USE.
006412,000835:
006413,000836: # EXIT: NXTIFAIL.
006414,000837:
006415,000838: # OUTPUT: ISS INITIALIZATION REQUEST (IMODES30 BIT 7) OR PROGRAM ALARM 00214.
006416,000839:
006417,000840: 06,2604 00006 IMUOP EXTEND # IF OPERATE JUST ON, WAIT 1 SAMPLE.
006418,000841: 06,2605 12625 BZF IMUOP2
006419,000842:
006420,000843: 06,2606 41321 CS IMODES33 # DISABLE DAP
006421,000844: 06,2607 75012 MASK BIT6
006422,000845: 06,2610 27321 ADS IMODES33
006423,000846:
006424,000847: 06,2611 04740 TC IBNKCALL # KNOCK DOWN TRACK, REFSMMAT, DRIFT FLAGS
006425,000848: 06,2612 17060 CADR RNDREFDR
006426,000849:
006427,000850: 06,2613 42757 CS BITS7&8 # KNOCK DOWN RENDEVOUS, IMUUSE FLAGS
006428,000851: 06,2614 70074 MASK STATE
006429,000852: 06,2615 56074 XCH STATE # IF GOING OFF, ALARM IF PROG USING IMU
006430,000853: 06,2616 40000 COM
006431,000854: 06,2617 75010 MASK IMUSEFLG
006432,000855: 06,2620 10000 CCS A
006433,000856: 06,2621 12227 TCF NXTIFAIL
006434,000857:
006435,000858: 06,2622 05650 TC ALARM
006436,000859: 06,2623 00214 OCT 214
006437,000860: 06,2624 12227 TCF NXTIFAIL
006438,000861:
006439,000862: 06,2625 35016 IMUOP2 CAF BIT2 # SEE IF FAILED ISS TURN-ON SEQ IN PROG.
006440,000863: 06,2626 71320 MASK IMODES30
006441,000864: 06,2627 10000 CCS A
006442,000865: 06,2630 12227 TCF NXTIFAIL # IF SO, DONT PROCESS UNTIL PRESENT 90
006443,000866: 06,2631 12551 TCF ITURNON2 # SECONDS EXPIRES.
006444,000867:
Page 155 |
006446,000869: # PROGRAM NAME: PIPFAIL
006447,000870:
006448,000871: # FUNCTIONAL DESCRIPTION: THIS PROGRAM PROCESSES CHANGES OF BIT 13 OF CHANNEL 33, PIPA FAIL. IT SETS BIT 10 OF
006449,000872: # IMODES30 TO AGREE. IT CALLS SETISSW IN CASE A PIPA FAIL NECESSITATES AN ISS WARNING. IF NOT, I.E., IMODES30
006450,000873: # BIT 1 = 1, AND A PIPA FAIL IS PRESENT AND THE ISS IS NOT BEING INITIALIZED, PROGRAM ALARM 00212 IS ISSUED.
006451,000874:
006452,000875: # CALLING SEQUENCE: BY C33TEST ON CHANGES OF CHANNEL 33 BIT 13.
006453,000876:
006454,000877: # JOBS OR TASKS INITIATED: NONE.
006455,000878:
006456,000879: # SUBROUTINES CALLED: 1) SETISSW, AND 2) ALARM (SEE FUNCTIONAL DESCRIPTION).
006457,000880:
006458,000881: # ERASABLE INITIALIZATION: SEE IMUMON FOR INITIALIZATION OF IMODES30. THE RELAVANT BITS ARE 5, 7, 8, 9, AND 10.
006459,000882:
006460,000883: # ALARMS: PROGRAM ALARM 00212 IF PIPA FAIL IS PRESENT BUT NEITHER ISS WARNING IS TO BE ISSUED NOR THE ISS IS
006461,000884: # BEING INITIALIZED.
006462,000885:
006463,000886: # EXIT: NXTFL33.
006464,000887:
006465,000888: # OUTPUT: PROGRAM ALARM 00212 AND ISS WARNING MAINTENANCE.
006466,000889:
006467,000890: 06,2632 10000 PIPFAIL CCS A # SET BIT10 IN IMODES30 SO ALL ISS WARNING
006468,000891: 06,2633 35006 CAF BIT10 # INFO IS IN ONE REGISTER.
006469,000892: 06,2634 57320 XCH IMODES30
006470,000893: 06,2635 72763 MASK -BIT10
006471,000894: 06,2636 27320 ADS IMODES30
006472,000895:
006473,000896: 06,2637 02665 TC SETISSW
006474,000897:
006475,000898: 06,2640 41320 CS IMODES30 # IF PIP FAIL DOESNT LIGHT ISS WARNING, DO
006476,000899: 06,2641 75017 MASK BIT1 # A PROGRAM ALARM IF IMU OPERATING BUT NOT
006477,000900: 06,2642 10000 CCS A # CAGED OR BEING TURNED ON.
006478,000901: 06,2643 12425 TCF NXTFL33
006479,000902:
006480,000903: 06,2644 31320 CA IMODES30
006481,000904: 06,2645 72760 MASK OCT1720
006482,000905: 06,2646 10000 CCS A
006483,000906: 06,2647 12425 TCF NXTFL33 # ABOVE CONDITION NOT MET.
006484,000907:
006485,000908: 06,2650 05650 TC ALARM
006486,000909: 06,2651 00212 OCT 212
006487,000910: 06,2652 12425 TCF NXTFL33
006488,000911:
Page 156 |
006490,000913: # PROGRAM NAMES: DNTMFAST, UPTMFAST
006491,000914:
006492,000915: # FUNCTIONAL DESCRIPTION: THESE PROGRAMS PROCESS CHANGES OF BITS 12 AND 11 OF CHANNEL 33. IF A BIT CHANGES TO A
006493,000916: # 0, A PROGRAM ALARM IS ISSUED. THE ALARMS ARE:
006494,000917:
006495,000918: # BIT ALARM CAUSE
006496,000919: # --- ----- -----
006497,000920: # 12 01105 DOWNLINK TOO FAST
006498,000921: # 11 01106 UPLINK TOO FAST
006499,000922:
006500,000923: # CALLING SEQUENCE: BY C33TEST ON A BIT CHANGE.
006501,000924:
006502,000925: # SUBROUTINES CALLED: ALARM, IF A BIT CHANGES TO A 0.
006503,000926:
006504,000927: # ERASABLE INITIALIZATION: FRESH START OR RESTART, BITS 12 AND 11 OF IMODES33 ARE SET TO 1.
006505,000928:
006506,000929: # ALARMS: SEE FUNCTIONAL DESCRIPTION.
006507,000930:
006508,000931: # EXIT: NXTFL33.
006509,000932:
006510,000933: # OUTPUT: PROGRAM ALARM ON A BIT CHANGE TO 0.
006511,000934:
006512,000935: 06,2653 10000 DNTMFAST CCS A # DO PROG ALARM IF TM TOO FAST.
006513,000936: 06,2654 12425 TCF NXTFL33
006514,000937:
006515,000938: 06,2655 05650 TC ALARM
006516,000939: 06,2656 01105 OCT 1105
006517,000940: 06,2657 12425 TCF NXTFL33
006518,000941:
006519,000942: 06,2660 10000 UPTMFAST CCS A # SAME AS DNLINK TOO FAST WITH DIFFERENT
006520,000943: 06,2661 12425 TCF NXTFL33 # ALARM CODE.
006521,000944:
006522,000945: 06,2662 05650 TC ALARM
006523,000946: 06,2663 01106 OCT 1106
006524,000947: 06,2664 12425 TCF NXTFL33
006525,000948:
Page 157 |
006527,000950: # PROGRAM NAME: SETISSW
006528,000951:
006529,000952: # FUNCTIONAL DESCRIPTION: THIS PROGRAM TURNS THE ISS WARNING LAMP ON AND OFF (CHANNEL 11 BIT 1 = 1 FOR ON,
006530,000953: # 0 FOR OFF) DEPENDING ON THE STATUS OF IMODES30 BITS 13 (IMU FAIL) AND 4 (INHIBIT IMU FAIL), 12 (ICDU FAIL) AND
006531,000954: # 3 (INHIBIT ICDU FAIL), AND 10 (PIPA FAIL) AND 1 (INHIBIT PIPA FAIL). THE LAMP IS LEFT ON IF A LAMP TEST IS IN
006532,000955: # PROGRESS.
006533,000956:
006534,000957: # CALLING SEQUENCE: CALLED BY IMUMON ON CHANGES TO IMU FAIL AND ICDU FAIL. CALLED BY IFAILOK AND PFAILOK UPON
006535,000958: # REMOVAL OF THE FAIL INHIBITS. CALLED BY PIPFAIL WHEN THE PIPA FAIL DISCRETE CHANGES. IT IS CALLED BY PIPUSE
006536,000959: # SINCE THE PIPA FAIL PROGRAM ALARM MAY NECESSITATE AN ISS WARNING, AND LIKEWISE BY PIPFREE WHEN THE ALARM DEPARTS
006537,000960: # AND IT IS CALLED BY IMUZERO3 AND ISSUP AFTER THE FAIL INHIBITS HAVE BEEN REMOVED.
006538,000961:
006539,000962: # JOBS OR TASKS INITIATED: NONE.
006540,000963:
006541,000964: # SUBROUTINES CALLED: NONE.
006542,000965:
006543,000966: # ERASABLE INITIALIZATION:
006544,000967:
006545,000968: # 1) IMODES30 - SEE IMUMON.
006546,000969: # 2) IMODES33 BIT 1 = 0 (LAMP TEST NOT IN PROGRESS).
006547,000970:
006548,000971: # ALARMS: ISS WARNING.
006549,000972:
006550,000973: # EXIT: VIA Q.
006551,000974:
006552,000975: # OUTPUT: ISS WARNING LAMP SET PROPERLY.
006553,000976:
006554,000977: 06,2665 35025 SETISSW CAF OCT15 # SET ISS WARNING USING THE FAIL BITS IN
006555,000978: 06,2666 71320 MASK IMODES30 # BITS 13, 12, AND 10 OF IMODES30 AND THE
006556,000979: 06,2667 00006 EXTEND # FAILURE INHIBIT BITS IN POSITIONS
006557,000980: 06,2670 75006 MP BIT10 # 4, 3, AND 1.
006558,000981: 06,2671 31320 CA IMODES30
006559,000982: 06,2672 00006 EXTEND
006560,000983: 06,2673 04001 ROR LCHAN # 0 INDICATES FAILURE.
006561,000984: 06,2674 40000 COM
006562,000985: 06,2675 75067 MASK OCT15000
006563,000986: 06,2676 10000 CCS A
006564,000987: 06,2677 12710 TCF ISSWON # FAILURE.
006565,000988:
006566,000989: 06,2700 35017 ISSWOFF CAF BIT1 # DONT TURN OFF ISS WARNING IF LAMP TEST
006567,000990: 06,2701 71321 MASK IMODES33 # IN PROGRESS.
006568,000991: 06,2702 10000 CCS A
006569,000992: 06,2703 00002 TC Q
006570,000993:
006571,000994: 06,2704 45017 CS BIT1
006572,000995: 06,2705 00006 EXTEND
006573,000996: 06,2706 03011 WAND DSALMOUT # TURN OFF ISS WARNING
006574,000997: 06,2707 00002 TC Q
006575,000998:
006576,000999: 06,2710 00006 ISSWON EXTEND
Page 158 |
006578,001001: 06,2711 22066 QXCH ITEMP6
006579,001002: 06,2712 05764 TC VARALARM # TELL EVERYONE WHAT CAUSED THE ISS WARNING
006580,001003: 06,2713 35017 CAF BIT1
006581,001004: 06,2714 00006 EXTEND
006582,001005: 06,2715 05011 WOR DSALMOUT # TURN ON ISS WARNING
006583,001006: 06,2716 00066 TC ITEMP6
006584,001007:
006585,001008: 06,2717 47703 CAGESUB CS BIT15+6 # SET OUTBITS + INTERNAL FLAGS FOR
006586,001009: 06,2720 00006 EXTEND # SYSTEM TURN-ON OR CAGE. DISABLE THE
006587,001010: 06,2721 03012 WAND CHAN12 # ERROR COUNTER AND REMOVE IMU DELAY COMP.
006588,001011: 06,2722 35027 CAF BITS4&5 # SEND ZERO AND COARSE.
006589,001012: 06,2723 00006 EXTEND
006590,001013: 06,2724 05012 WOR CHAN12
006591,001014:
006592,001015: 06,2725 41036 CAGESUB1 CS DSPTAB +11D # TURN ON NO ATT LAMP
006593,001016: 06,2726 72753 MASK OC40010
006594,001017: 06,2727 27036 ADS DSPTAB +11D
006595,001018:
006596,001019: 06,2730 41320 CAGESUB2 CS IMODES30 # SET FLAGS TO INDICATE CAGING OR TURN-ON
006597,001020: 06,2731 72755 MASK OCT75 # AND INHIBIT ALL ISS WARNING INFO
006598,001021: 06,2732 27320 ADS IMODES30
006599,001022:
006600,001023: 06,2733 41321 CS IMODES33 # DISABLE DAP AUTO AND HOLD MODES
006601,001024: 06,2734 75012 MASK BIT6
006602,001025: 06,2735 27321 ADS IMODES33
006603,001026:
006604,001027: 06,2736 00002 TC Q
006605,001028:
006606,001029: 06,2737 06,2665 IMUFAIL EQUALS SETISSW
006607,001030: 06,2737 06,2665 ICDUFAIL EQUALS SETISSW
006608,001031:
Page 159 |
006610,001033: # JUMP TABLES AND CONSTANTS.
006611,001034:
006612,001035: 06,2737 12526 IFAILJMP TCF ITURNON # CHANNEL 30 DISPATCH.
006613,001036: 06,2740 12665 TCF IMUFAIL
006614,001037: 06,2741 12665 TCF ICDUFAIL
006615,001038: 06,2742 12555 TCF IMUCAGE
006616,001039: 06,2743 76400 30RDMSK OCT 76400 # (BIT 10 NOT SAMPLED HERE).
006617,001040: 06,2744 12604 TCF IMUOP
006618,001041:
006619,001042: 06,2745 12632 C33JMP TCF PIPFAIL # CHANNEL 33 DISPATCH.
006620,001043: 06,2746 12653 TCF DNTMFAST
006621,001044: 06,2747 12660 TCF UPTMFAST
006622,001045:
006623,001046: # SUBROUTINE TO SKIP IF LAMP TEST NOT IN PROGRESS.
006624,001047:
006625,001048: 06,2750 41321 LAMPTEST CS IMODES33 # BIT 1 OF IMODES33 = 1 IF LAMP TEST IN
006626,001049: 06,2751 75017 MASK BIT1 # PROGRESS.
006627,001050: 06,2752 13065 TCF ZOPFIN3
006628,001051:
006629,001052: 06,2753 5070 33RDMSK EQUALS PRIO16
006630,001053: 06,2753 40010 OC40010 OCT 40010
006631,001054: 06,2754 00054 OCT54 OCT 54
006632,001055: 06,2755 00075 OCT75 OCT 75
006633,001056: 06,2756 00272 OCT272 OCT 00272
006634,001057: 06,2757 00300 BITS7&8 OCT 300
006635,001058: 06,2760 01720 OCT1720 OCT 1720
006636,001059: 06,2761 00740 OCT740 OCT 00740
006637,001060: 06,2762 5067 OCT15000 EQUALS PRIO15
006638,001061: 06,2762 77000 OCT77000 OCT 77000
006639,001062: 06,2763 76777 -BIT10 OCT -1000
006640,001063:
006641,001064: 06,2764 21450 90SECS DEC 9000 B-14
006642,001065: 06,2765 5771 120MS = OCT14 # (DEC12)
006643,001066: 06,2765 5333 GLOCKOK EQUALS RESUME
006644,001067:
Page 160 |
006646,001069: # OPTICS MONITORING AND ZERO ROUTINES
006647,001070: 06,2765 31331 OPTMON CA OPTMODES # MONITOR OPTICS INBITS IN CHAN 30 AND 33
006648,001071: 06,2766 00006 EXTEND
006649,001072: 06,2767 06030 RXOR CHAN30 # LOOK FOR OCDU FAIL BIT CHANGE
006650,001073: 06,2770 75011 MASK BIT7
006651,001074: 06,2771 54070 TS RUPTREG1 # STORE CHANGE BIT
006652,001075: 06,2772 10000 CCS A
006653,001076: 06,2773 03224 TC OCDUFTST # PROCESS OCDUFAIL BIT CHANGE
006654,001077:
006655,001078: 06,2774 11303 33OPTMON CCS OPTIND # BYPASS IF TVC TAKEOVER
006656,001079: 06,2775 13001 TCF +4
006657,001080: 06,2776 13001 TCF +3
006658,001081: 06,2777 13001 TCF +2
006659,001082: 06,3000 15333 TCF RESUME
006660,001083:
006661,001084: 06,3001 31331 CA OPTMODES # LOOK FOR OPTICS MODE SWITCH CHANGE
006662,001085: 06,3002 00006 EXTEND
006663,001086: 06,3003 06033 RXOR CHAN33
006664,001087: 06,3004 75027 MASK OCTHIRTY
006665,001088: 06,3005 26070 ADS RUPTREG1 # STORE INBIT CHANGES
006666,001089: 06,3006 23331 LXCH OPTMODES
006667,001090: 06,3007 00006 EXTEND
006668,001091: 06,3010 06001 RXOR LCHAN
006669,001092: 06,3011 55331 TS OPTMODES # UPDATE OPTMODES TO SHOW BIT CHANGES
006670,001093:
006671,001094: 06,3012 40000 COM # SAMPLE CURRENT SWITCH SETTING
006672,001095: 06,3013 75027 MASK OCTHIRTY
006673,001096: 06,3014 00006 EXTEND
006674,001097: 06,3015 13022 BZF SETSAMP # MANUAL-SET ZERO IN SWSAMPLE
006675,001098:
006676,001099: 06,3016 75013 MASK BIT5 # SEE IF CSC
006677,001100: 06,3017 10000 CCS A
006678,001101: 06,3020 03022 TC +2 # CSC-SET SWSAMPLE POS
006679,001102: 06,3021 37716 CAF NEGONE # ZOPTICS-SET SWSAMPLE (-1)
006680,001103: 06,3022 55314 SETSAMP TS SWSAMPLE # CURRENT OPTICS SWITCH SETTING
006681,001104:
006682,001105: 06,3023 11315 PROCESSW CCS DESOPMOD # BRANCH ON PREVIOUS SETTING
006683,001106: 06,3024 03125 TC CSCDES # CSC
006684,001107: 06,3025 03077 TC MANUDES # MANUAL
006685,001108: 06,3026 03027 TC ZOPTDES # ZERO OPTICS
Page 161 |
006687,001110: 06,3027 11314 ZOPTDES CCS SWSAMPLE # IS SWITCH STILL AT ZOPTICS
006688,001111: 06,3030 03047 TC ZTOCSC # NOW AT CSC
006689,001112: 06,3031 03037 TC ZTOMAN # MANUAL
006690,001113: 06,3032 03057 TC ZOPFINI # ZOPTICS-SEE IF ZOPT PROCESSING
006691,001114: 06,3033 03154 TC SETDESMD # ZOPT NOT PROCESSING-NO ACTION
006692,001115:
006693,001116: 06,3034 11317 CCS ZOPTCNT # ZOPT PROCESSING-CHECK COUNTER
006694,001117: 06,3035 03153 TC SETCNT # 32 SAMPLE NOT FINISHED-SET COUNTER
006695,001118: 06,3036 03157 TC SETZOEND # 32 SAMPLE WAIT COMPLETED-SET UP ZOP END
006696,001119:
006697,001120: 06,3037 03057 ZTOMAN TC ZOPFINI # ZOP TO MANUAL-IS ZOPT DONE
006698,001121: 06,3040 03154 TC SETDESMD # YES-NORMAL EXIT
006699,001122:
006700,001123: 06,3041 05650 ZOPALARM TC ALARM # ALARM-SWITCHED ALTERED WHILE ZOPTICS
006701,001124: 06,3042 00116 OCT 00116
006702,001125: 06,3043 35024 CAF OCT13 # PROCESSING-SET RETURN OPTION
006703,001126: 06,3044 55316 TS WTOPTION
006704,001127:
006705,001128: 06,3045 03070 TC CANZOPT # CANCEL ZOPT
006706,001129:
006707,001130: 06,3046 03154 TC SETDESMD
006708,001131:
006709,001132: 06,3047 03057 ZTOCSC TC ZOPFINI # SEE IF ZOPT PROCESSING
006710,001133: 06,3050 03115 TC MANTOCSC +3 # NO-CHECK RETURN TO COARS OPT
006711,001134: 06,3051 05650 TC ALARM # ZOPT PROCESSING-ALARM
006712,001135: 06,3052 00116 OCT 00116
006713,001136: 06,3053 03070 TC CANZOPT # CANCEL ZOPT
006714,001137: 06,3054 03112 TC MANTOCSC # ZERO CNT-LOOK FOR COARS OPT RETURN
006715,001138:
006716,001139: 06,3055 35007 COARSLOK CAF BIT9 # IF COARS OPT SINCE FSTART GO TO L+2
006717,001140: 06,3056 13064 TCF ZOPFIN2 # IF NOT GO TO L+1
006718,001141: 06,3057 35017 ZOPFINI CAF BIT1 # SEE IF END ZOPT TASK WORKING
006719,001142: 06,3060 71331 MASK OPTMODES
006720,001143: 06,3061 10000 CCS A
006721,001144: 06,3062 05333 TC RESUME # ZOPT TASK WORKING-WAIT ONE SAMPLE PERIOD
006722,001145:
006723,001146: 06,3063 35015 CAF BIT3 # TEST IF ZOPTICS PROCESSING
006724,001147: 06,3064 71331 ZOPFIN2 MASK OPTMODES # RETURNS TO L+1 PROCESSING AND
006725,001148: 06,3065 10000 ZOPFIN3 CCS A
006726,001149: 06,3066 24002 INCR Q # L+2 IF NOT
006727,001150: 06,3067 00002 TC Q
006728,001151:
006729,001152: 06,3070 46211 CANZOPT CS SIX # CANCEL ZERO OPTICS
006730,001153: 06,3071 71331 MASK OPTMODES # ZERO ZOPT PROCESSING BIT-ENABLE OCDUFAIL
006731,001154: 06,3072 55331 TS OPTMODES
006732,001155: 06,3073 45017 CS BIT1 # MAKE SURE ZERO OCDU IS OFF
006733,001156: 06,3074 00006 EXTEND
006734,001157: 06,3075 03012 WAND CHAN12
006735,001158: 06,3076 00002 TC Q
006736,001159:
Page 162 |
006738,001161: 06,3077 11314 MANUDES CCS SWSAMPLE # SEE IF SWITCH STILL IN MANUAL MODE
006739,001162: 06,3100 03112 TC MANTOCSC # NOW AT CSC
006740,001163: 06,3101 03107 TC MANTOMAN # STILL MANUAL
006741,001164: 06,3102 11316 CCS WTOPTION # ZOPTICS-LOOK AT ZOPTICS RETURN OPTION
006742,001165: 06,3103 03105 TC +2 # 5 SEC RETURN GOOD-CONTINUE ZOPTICS
006743,001166: 06,3104 03151 TC OPTZERO # ZOPTICS MUST START ANEW
006744,001167:
006745,001168: 06,3105 03216 TC INITZOPT # SHOW ZERO OPTICS PROCESSING
006746,001169: 06,3106 03154 TC SETDESMD # NORMAL EXIT
006747,001170:
006748,001171: 06,3107 11316 MANTOMAN CCS WTOPTION # DECREMENT RETURN OPTION TIME
006749,001172: 06,3110 55316 TS WTOPTION
006750,001173: 06,3111 03154 TC SETDESMD
006751,001174:
006752,001175: 06,3112 35021 MANTOCSC CAF ZERO # CANCEL ZOPT RETURN OPTION IF SET
006753,001176: 06,3113 55316 TS WTOPTION
006754,001177: 06,3114 55317 TS ZOPTCNT
006755,001178:
006756,001179: 06,3115 03055 TC COARSLOK # CHECK FOR COARS OPT RETURN
006757,001180: 06,3116 03154 TC SETDESMD # NO COARS TASK-NO ACTION
006758,001181:
006759,001182: 06,3117 35017 CAF ONE # SET COARS OPT WORKING
006760,001183: 06,3120 55303 TS OPTIND
006761,001184: 06,3121 35016 CAF BIT2 # ENABLE OPTICS CDU ERROR CNTS
006762,001185: 06,3122 00006 EXTEND
006763,001186: 06,3123 05012 WOR CHAN12
006764,001187:
006765,001188: 06,3124 03154 TC SETDESMD
006766,001189:
006767,001190: 06,3125 11314 CSCDES CCS SWSAMPLE # SEE IF SWITCH STILL AT CSC
006768,001191: 06,3126 03154 TC SETDESMD # STILL AT CSC
006769,001192: 06,3127 03133 TC CSCTOMAN # MANUAL
006770,001193: 06,3130 35012 CSCTOZOP CAF OCT40 # ZOPTICS-INITIALIZE FOR ZOPT
006771,001194: 06,3131 55317 TS ZOPTCNT
006772,001195: 06,3132 03216 TC INITZOPT
006773,001196:
006774,001197: 06,3133 11303 CSCTOMAN CCS OPTIND # SEE IF COARS WORKING
006775,001198: 06,3134 03140 TC CANCOARS # COARS WORKING-SWITCH NOT CSC-KILL COARS
006776,001199: 06,3135 03140 TC CANCOARS
006777,001200: 06,3136 03137 TC +1 # NO COARS-NORMAL EXIT
006778,001201: 06,3137 03154 TC SETDESMD
Page 163 |
006780,001203: 06,3140 37716 CANCOARS CA NEGONE
006781,001204: 06,3141 55303 TS OPTIND # SET OPTIND (-1) TO SHOW NOT WORKING
006782,001205: 06,3142 45016 CS BIT2 # DISABLE OCDU ERR CNTS
006783,001206: 06,3143 00006 EXTEND
006784,001207: 06,3144 03012 WAND CHAN12
006785,001208: 06,3145 41331 CS OPTMODES # SET RETURN-TO-COARS BIT
006786,001209: 06,3146 75007 MASK BIT9
006787,001210: 06,3147 27331 ADS OPTMODES
006788,001211:
006789,001212: 06,3150 03154 TC SETDESMD
006790,001213: 06,3151 03216 OPTZERO TC INITZOPT # INITIALIZE ZERO OPTICS
006791,001214:
006792,001215: 06,3152 35012 CA OCT40 # SET UP 32 SAMPLE WAIT
006793,001216: 06,3153 55317 SETCNT TS ZOPTCNT
006794,001217: 06,3154 31314 SETDESMD CA SWSAMPLE # SET CURRENT SWITCH INDICATION-RESUME
006795,001218: 06,3155 55315 TS DESOPMOD
006796,001219: 06,3156 05333 TC RESUME
006797,001220:
006798,001221: 06,3157 35017 SETZOEND CAF BIT1 # SEND ZERO OPTICS CDU
006799,001222: 06,3160 00006 EXTEND
006800,001223: 06,3161 05012 WOR CHAN12
006801,001224: 06,3162 34112 CA 200MS # HOLD ZERO CDU FOR 200 MS
006802,001225: 06,3163 05245 TC WAITLIST
006803,001226: 06,3164 1331 EBANK= OPTMODES
006804,001227: 06,3164 03172 14062 2CADR ENDZOPT
006805,001228:
006806,001229: 06,3166 41331 CS OPTMODES # SHOW ZOPTICS TASK WORKING
006807,001230: 06,3167 75017 MASK BIT1
006808,001231: 06,3170 27331 ADS OPTMODES
006809,001232:
006810,001233: 06,3171 03154 TC SETDESMD
006811,001234:
006812,001235: 06,3172 03210 ENDZOPT TC ZEROPCDU # ZERO OCDU COUNTERS
006813,001236: 06,3173 45017 CS BIT1 # TURN OFF ZERO OCDU
006814,001237: 06,3174 00006 EXTEND
006815,001238: 06,3175 03012 WAND CHAN12
006816,001239: 06,3176 34112 CAF 200MS # DELAY 200MS FOR CDUS TO RESYNCHRONIZE
006817,001240: 06,3177 05272 TC VARDELAY
006818,001241:
006819,001242: 06,3200 41331 CS OPTMODES # SHOW ZOPTICS SINCE LAST FRESH START
006820,001243: 06,3201 75006 MASK BIT10 # OR RESTART
006821,001244: 06,3202 27331 ADS OPTMODES
006822,001245:
006823,001246: 06,3203 45023 CS SEVEN # ENABLE OCDUFAIL-SHOW OPTICS COMPLETE
006824,001247: 06,3204 71331 MASK OPTMODES
006825,001248: 06,3205 55331 TS OPTMODES
006826,001249:
006827,001250: 06,3206 03224 TC OCDUFTST # CHECK OCDU FAIL BIT AFTER ENABLE
Page 164 |
006829,001252: 06,3207 05324 TC TASKOVER
006830,001253:
006831,001254: 06,3210 35021 ZEROPCDU CAF ZERO
006832,001255: 06,3211 54036 TS CDUS # ZERO IN CDUS,-20 IN CDUT
006833,001256: 06,3212 55307 TS ZONE # INITIALIZE SHAFT MONITOR ZONE
006834,001257: 06,3213 43261 CS 20DEGS
006835,001258: 06,3214 54035 TS CDUT
006836,001259: 06,3215 00002 TC Q
006837,001260:
006838,001261: 06,3216 35021 INITZOPT CAF ZERO # INITIALIZE ZOPTICS-INHIBIT OCDUFAIL
006839,001262: 06,3217 55316 TS WTOPTION # AND SHOW OPTICS PROCESSING
006840,001263: 06,3220 41331 CS OPTMODES # SET ZERO OPTICS PROCESSING
006841,001264: 06,3221 76211 MASK SIX # OPTICS CDU FAIL INHIBITED
006842,001265: 06,3222 27331 ADS OPTMODES
006843,001266: 06,3223 00002 TC Q
006844,001267:
Page 165 |
006846,001269: 06,3224 35011 OCDUFTST CAF BIT7 # SEE IF OCDUFAIL ON OR OFF
006847,001270: 06,3225 00006 EXTEND
006848,001271: 06,3226 02030 RAND CHAN30
006849,001272: 06,3227 10000 CCS A
006850,001273: 06,3230 13252 TCF OPFAILOF # OCDUFAIL LIGHT OFF
006851,001274:
006852,001275: 06,3231 35016 CAF BIT2 # OCDUFAIL LIGHT ON UNLESS INHIBITED
006853,001276: 06,3232 71331 MASK OPTMODES
006854,001277: 06,3233 10000 CCS A
006855,001278: 06,3234 00002 TC Q # OCDUFAIL INHIBITED
006856,001279:
006857,001280: 06,3235 35010 OPFAILON CAF BIT8 # ON BIT
006858,001281: 06,3236 61036 AD DSPTAB +11D
006859,001282: 06,3237 75010 MASK BIT8
006860,001283: 06,3240 00006 SETOFF EXTEND
006861,001284: 06,3241 16711 BZF TCQ # NO CHANGE
006862,001285:
006863,001286: 06,3242 54001 TS L
006864,001287: 06,3243 31036 CA DSPTAB +11D
006865,001288: 06,3244 00006 EXTEND
006866,001289: 06,3245 06001 RXOR LCHAN
006867,001290: 06,3246 74777 MASK POSMAX
006868,001291: 06,3247 65001 AD BIT15 # SHOW ACTION WANTED
006869,001292: 06,3250 55036 TS DSPTAB +11D
006870,001293: 06,3251 00002 TC Q
006871,001294:
006872,001295: 06,3252 35017 OPFAILOF CAF BIT1 # DONT TURN OFF IF LAMP TEST
006873,001296: 06,3253 71321 MASK IMODES33
006874,001297: 06,3254 10000 CCS A
006875,001298: 06,3255 00002 TC Q # LAMP TEST IN PROGRESS
006876,001299:
006877,001300: 06,3256 35010 CAF BIT8 # TURN OFF OCDUFAIL LIGHT
006878,001301: 06,3257 71036 MASK DSPTAB +11D
006879,001302: 06,3260 13240 TCF SETOFF
006880,001303:
006881,001304: 06,3261 5024 OCT13 = ELEVEN
006882,001305: 06,3261 5027 OCTHIRTY EQUALS BITS4&5
006883,001306: 06,3261 16037 20DEGS DEC 7199 B-14
006884,001307: 06,3262 5012 OCT40 EQUALS BIT6
006885,001308: 06,3262 4112 200MS EQUALS OCT24
006886,001309:
Page 166 |
006888,001311: # OPTICS CDU DRIVING PROGRAM
006889,001312:
006890,001313: 10,2000 BANK 10
006891,001314: 10,2000 SETLOC OPTDRV
006892,001315: 10,2000 BANK
006893,001316: 10,2000 COUNT* $$/SXT
006894,001317:
006895,001318: # SHAFT STOP MONITOR-ZONE UPDATE
006896,001319:
006897,001320: 10,2000 30036 OPTDRIVE CA CDUS # GRAB OPTIC SHAFT CDU
006898,001321: 10,2001 54001 TS L
006899,001322: 10,2002 10000 CCS A # GET ABS(CDUS)
006900,001323: 10,2003 67707 AD 13,14,15
006901,001324: 10,2004 12006 TCF +2 # ABS(CDUS) - 45 DEG
006902,001325: 10,2005 12003 TCF -2
006903,001326: 10,2006 00006 EXTEND
006904,001327: 10,2007 62016 BZMF OZONE # LESS THAN 45 DEG-SET ZONE 0
006905,001328: 10,2010 31307 CA ZONE # IF ZONE ZERO, CHANGE TO + OR - OTHERWISE
006906,001329: 10,2011 00006 EXTEND # DONT MESS WITH ZONE
006907,001330: 10,2012 12014 BZF +2
006908,001331: 10,2013 12020 TCF CONTDRVE # JUST CONTINUE
006909,001332: 10,2014 56001 XCH L # GREATER THAN 45 DEG-SET ZONE TO SIGN CDU
006910,001333: 10,2015 12017 TCF OZONE +1
006911,001334: 10,2016 35021 OZONE CAF ZERO # ABS(CDUS) LESS THEN 90 DEG-ZONE ZERO
006912,001335: 10,2017 55307 TS ZONE
006913,001336: 10,2020 COUNT* $$/T4RPT
006914,001337: 10,2020 11303 CONTDRVE CCS OPTIND
006915,001338: 10,2021 02025 TC +4 # WORK COARS OPTICS
006916,001339: 10,2022 02025 TC +3 # WORK COARS OPTICS
006917,001340: 10,2023 05333 TC RESUME # NO OPT
006918,001341: 10,2024 05333 TC RESUME # NO OPT
006919,001342:
006920,001343: 10,2025 31314 CA SWSAMPLE # SEE IF SWITCH AT CMC
006921,001344: 10,2026 00006 EXTEND
006922,001345: 10,2027 65333 BZMF RESUME # ZERO (-1) MANUAL (+0)
006923,001346:
006924,001347: 10,2030 35006 CAF BIT10 # SEE IF OCDUS ZEROED SINCE LAST FSTART
006925,001348: 10,2031 71331 MASK OPTMODES
006926,001349: 10,2032 10000 CCS A
006927,001350: 10,2033 02036 TC +3
006928,001351: 10,2034 05650 TC ALARM # OPTICS NOT ZEROED
006929,001352: 10,2035 00120 OCT 00120
006930,001353:
006931,001354: 10,2036 35016 CA BIT2 # SEE IF ERR CNTS ENABLED
006932,001355: 10,2037 00006 EXTEND
006933,001356: 10,2040 02012 RAND CHAN12
006934,001357: 10,2041 00006 EXTEND
006935,001358: 10,2042 12175 BZF SETBIT # CNTS NOT ENABLED-DO IT AND RESUME
006936,001359:
006937,001360: 10,2043 35017 CAF ONE # INITIALIZE OPTIND
Page 167 |
006939,001362: 10,2044 55303 OPT2 TS OPTIND
006940,001363: 10,2045 00006 EXTEND
006941,001364: 10,2046 12132 BZF TRUNCMD # CHECK TRUNION COMMAND
006942,001365:
006943,001366: 10,2047 51303 GETOPCMD INDEX OPTIND
006944,001367: 10,2050 31160 CA DESOPTT # PICK UP DESIRED OPT ANGLE
006945,001368: 10,2051 00006 EXTEND
006946,001369: 10,2052 51303 INDEX OPTIND
006947,001370: 10,2053 20035 MSU CDUT # GET DIFFERENCE
006948,001371: 10,2054 00006 EXTEND
006949,001372: 10,2055 75003 MP BIT13
006950,001373: 10,2056 56001 XCH L
006951,001374: 10,2057 60000 DOUBLE
006952,001375: 10,2060 54061 TS ITEMP1
006953,001376: 10,2061 12063 TCF +2 # NO OVFL
006954,001377:
006955,001378: 10,2062 26001 ADS L # WITH OVFL
006956,001379: 10,2063 51303 STORCMD INDEX OPTIND
006957,001380: 10,2064 23305 LXCH COMMANDO # STORE COMMAND
006958,001381: 10,2065 11303 CCS OPTIND
006959,001382: 10,2066 12044 TCF OPT2 # GET NEXT COMMAND
006960,001383:
006961,001384: 10,2067 54061 TS ITEMP1 # INITIALIZE SEND INDICATOR TO ZERO
006962,001385: 10,2070 COUNT* $$/SXT
006963,001386:
006964,001387: # SHAFT STOP AVOIDANCE
006965,001388:
006966,001389: 10,2070 10036 CCS CDUS # IF CDUS GREATER THAN + OR - 90 DEG CHECK
006967,001390: 10,2071 65000 AD NEG1/2 # FOR POSSIBLE STOP PROBLEM
006968,001391: 10,2072 12074 TCF +2
006969,001392: 10,2073 12071 TCF -2
006970,001393: 10,2074 00006 EXTEND
006971,001394: 10,2075 62122 BZMF CMDSETUP # CDUS LESS THAN 90 DEG, NO PROBLEMS
006972,001395:
006973,001396: 10,2076 31307 CA ZONE
006974,001397: 10,2077 00006 EXTEND
006975,001398: 10,2100 12122 BZF CMDSETUP # ZONE=3, NORMAL COMMAND
006976,001399: 10,2101 75001 MASK BIT15 # GRAB SIGN OF ZONE
006977,001400: 10,2102 54001 TS L
006978,001401: 10,2103 31306 CA COMMANDO +1
006979,001402: 10,2104 75001 MASK BIT15 # GRAB SIGN OF SHAFT COMMAND
006980,001403: 10,2105 00006 EXTEND
006981,001404: 10,2106 06001 RXOR LCHAN
006982,001405: 10,2107 10000 CCS A
006983,001406: 10,2110 12122 TCF CMDSETUP # SIGN ZONE NOT EQUAL TO SIGN COMMAND
006984,001407: 10,2111 11161 CCS DESOPTS # SEE IF DESOPTS BETWEEN -90 AND +90
006985,001408: 10,2112 65000 AD NEG1/2
006986,001409: 10,2113 12115 TCF +2 # ABS(DESOPTS) - 90 DEG
006987,001410: 10,2114 12112 TCF -2
006988,001411: 10,2115 00006 EXTEND
Page 168 |
006990,001413: 10,2116 62120 BZMF +2 # DESOPTS IN FIRST OR FOURTH QUAD
006991,001414: 10,2117 12122 TCF CMDSETUP
006992,001415: 10,2120 41306 CS COMMANDO +1 # REVERSE REGULAR COMMAND
006993,001416: 10,2121 55306 TS COMMANDO +1
006994,001417:
006995,001418: 10,2122 COUNT* $$/T4RPT
006996,001419:
006997,001420: 10,2122 35017 CMDSETUP CAF ONE # SET OPTIND
006998,001421: 10,2123 55303 TS OPTIND
006999,001422: 10,2124 50000 INDEX A
007000,001423: 10,2125 11305 CCS COMMANDO # GET SIGN OF COMMAND
007001,001424: 10,2126 02144 TC POSOPCMD
007002,001425: 10,2127 02151 TC NEXTOPT +1 # ZERO COMMAND-SKIP SEND INDICATOR
007003,001426: 10,2130 02161 TC NEGOPCMD
007004,001427: 10,2131 02151 TC NEXTOPT +1 # ZERO COMMAND
007005,001428:
007006,001429: 10,2132 40035 TRUNCMD CS CDUT # IF COMMAND GREATER THAN 45 DEG-COMMAND
007007,001430: 10,2133 61160 AD DESOPTT # 45 DEG
007008,001431: 10,2134 54002 TS Q
007009,001432: 10,2135 02047 TC GETOPCMD # LESS THAN 45 DEG-NORMAL OPERATION
007010,001433:
007011,001434: 10,2136 10000 CCS A # GREATER THAN 45 DEG-USE OPSMAX WITH
007012,001435: 10,2137 34777 CA POSMAX # CORRECT SIGN
007013,001436: 10,2140 02142 TC +2
007014,001437: 10,2141 44777 CS POSMAX
007015,001438: 10,2142 54001 TS L
007016,001439: 10,2143 02063 TC STORCMD
007017,001440: 10,2144 62202 POSOPCMD AD MAXPLS1
007018,001441: 10,2145 00006 EXTEND
007019,001442: 10,2146 62166 BZMF DELOPCMD # COMMAND LESS THAN MAX PULSE
007020,001443: 10,2147 42201 CS MAXPLS # GREATER THAN MAX PULSE-USE MAX PULSE
007021,001444:
007022,001445: 10,2150 24061 NEXTOPT INCR ITEMP1 # SET SEND INDICATOR
007023,001446: 10,2151 65020 AD NEG0 # MAKE SURE ZERO COMMAND IS -ZERO
007024,001447: 10,2152 51303 INDEX OPTIND
007025,001448: 10,2153 54053 TS CDUTCMD # STORE PULSE IN SEND REG
007026,001449:
007027,001450: 10,2154 11303 CCS OPTIND
007028,001451: 10,2155 02123 TC CMDSETUP +1 # GET NEXT OPT
007029,001452:
007030,001453: 10,2156 10061 CCS ITEMP1 # ARE ANY PULSES TO GO
007031,001454: 10,2157 12171 TCF SENDOCMD # YES-SEND EM
007032,001455: 10,2160 05333 TC RESUME # NO
007033,001456:
007034,001457: 10,2161 62202 NEGOPCMD AD MAXPLS1
007035,001458: 10,2162 00006 EXTEND
007036,001459: 10,2163 62166 BZMF DELOPCMD # LESS THAN MAX PULSE
007037,001460: 10,2164 32201 CA MAXPLS # MAX PULSES
007038,001461: 10,2165 12150 TCF NEXTOPT
Page 169 |
007040,001463: 10,2166 51303 DELOPCMD INDEX OPTIND
007041,001464: 10,2167 57305 XCH COMMANDO # SET UP SMALL COMMAND
007042,001465: 10,2170 12150 TCF NEXTOPT
007043,001466:
007044,001467: 10,2171 35062 SENDOCMD CAF 11,12 # SEND OCDU DRIVE COMMANDS
007045,001468: 10,2172 00006 EXTEND
007046,001469: 10,2173 05014 WOR CHAN14
007047,001470: 10,2174 05333 TC RESUME
007048,001471:
007049,001472: 10,2175 35016 SETBIT CAF BIT2 # ENABLE OCDU ERR CNTS
007050,001473: 10,2176 00006 EXTEND
007051,001474: 10,2177 05012 WOR CHAN12
007052,001475: 10,2200 05333 TC RESUME # START COARS NEXT TIME AROUND
007053,001476:
007054,001477: 10,2201 77532 MAXPLS DEC -165 B-14 # WAS -80
007055,001478: 10,2202 77533 MAXPLS1 DEC -164 B-14 # WAS -79
007056,001479: 10,2203 5062 11,12 EQUALS PRIO6
007057,001480:
End of include-file T4RUPT_PROGRAM.agc. Parent file is MAIN.agc