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