Source Code

These source-code files are part of a reconstructed copy of Comanche 51, the initial release (though not the final mission release) of the Apollo 11 Command Module (CM) Apollo Guidance Computer (AGC) software. The flown, final release was Comanche 55. The reconstruction is believed to be exactly accurate, but in the absence of an actual Apollo-era listing of Comanche 51, some explanation of the reconstruction process is needed to insure confidence in that accuracy.

The starting point was the source code of Comanche 55, whose original source code is available. Comanche 55 source code was then modified by undoing changes known to have been made between revisions 51 and 55. The most-significant steps involved reverting changes related to the R-2 lunar potential model, the details of which were known from the previous, separate, independent reconstruction of the Apollo 10 Lunar Module software Luminary 69/2. The now-reconstructed Comanche 51 source code was verified by assembling it and checking that the assembled code had the expected known-correct memory-bank checksums. Note that page numbers in the reconstructed code match those on the Comanche 55 or Luminary 69 printouts, although the source code would likely have different page numbers in a contemporary Comanche 51 listing.

Annotations that were not present in the contemporary source code have been added to the reconstructed code to justify each change relative to Comanche 55. Here's a guide to some of the Apollo documentation relevant to those annotations:
Among documentation not actually referenced in the annotations, there is a short writeup about the reconstruction process in our software repository that may be helpful in understanding it from a different perspective. There's also a handy table that lists what the number of memory-words should be for each routine in Comanche 51, which could make a nice double-check; however, we've not performed that double-check ourselves.

Comments expected to have been present in the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC Project's GitHub repository.

005458,000002:                                                                                                  ## Copyright:   Public domain.
005459,000003:                                                                                                  ## Filename:    T4RUPT_PROGRAM.agc
005460,000004:                                                                                                  ## Purpose:     A section of Comanche revision 051.
005461,000005:                                                                                                  ##              It is part of the reconstructed source code for the
005462,000006:                                                                                                  ##              original release of the flight software for the Command
005463,000007:                                                                                                  ##              Module's (CM) Apollo Guidance Computer (AGC) for Apollo 11.
005464,000008:                                                                                                  ##              The code has been recreated from a copy of Comanche 055. It
005465,000009:                                                                                                  ##              has been adapted such that the resulting bugger words
005466,000010:                                                                                                  ##              exactly match those specified for Comanche 51 in NASA drawing
005467,000011:                                                                                                  ##              2021153D, which gives relatively high confidence that the
005468,000012:                                                                                                  ##              reconstruction is correct.
005469,000013:                                                                                                  ## Reference:   pp. 133-169
005470,000014:                                                                                                  ## Assembler:   yaYUL
005471,000015:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
005472,000016:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
005473,000017:                                                                                                  ## Mod history: 2019-07-30 MAS  Created from Comanche 55.
005474,000018:                                                                                                  ##              2021-05-30 ABS  $$/T4RUPT -> $$/T4RPT
005475,000019: 

Page 133

005477,000021: 12,2000                                           BANK     12                                    
005478,000022: 06,2000                                           SETLOC   T4RUP                                 
005479,000023: 06,2000                                           BANK                                           
005480,000024: 
005481,000025: 06,2000                                           COUNT    06/T4RPT                              
005482,000026: 
005483,000027: 06,2000           54016        T4RUPT             TS       BANKRUPT                              
005484,000028: 06,2001           00006                           EXTEND                                         
005485,000029: 06,2002           22012                           QXCH     QRUPT                                 
005486,000030: 
005487,000031: 06,2003           11302                           CCS      DSRUPTSW                              #  GOES 7(-1)0 AROUND AND AROUND
005488,000032: 06,2004           12010                           TCF      NORMT4     +1                         
005489,000033: 06,2005           12007                           TCF      NORMT4                                
005490,000034: 
005491,000035: 06,2006           12136                           TCF      QUIKDSP                               
005492,000036: 
005493,000037: 06,2007           35023        NORMT4             CAF      SEVEN                                 
005494,000038: 06,2010           54070                           TS       RUPTREG1                              
005495,000039: 06,2011           55302                           TS       DSRUPTSW                              
005496,000040: 
005497,000041: 06,2012                                           COUNT    02/T4RPT                              
005498,000042: 
005499,000043: 06,2012     7711               74K                =        HIGH4                                 
005500,000044: 
005501,000045:                                                                                                  #  RELTAB IS A PACKED TABLE. RELAYWORD CODE IN UPPER 4 BITS, RELAY CODE
005502,000046:                                                                                                  #  IN LOWER 5 BITS.
005503,000047: 
005504,000048:    4072                                           BLOCK    02                                    
005505,000049:    4000                                           SETLOC   FFTAG12                               
005506,000050:    4000                                           BANK                                           
005507,000051: 
005508,000052:    4072           04025        RELTAB             OCT      04025                                 
005509,000053:    4073           10003                           OCT      10003                                 
005510,000054:    4074           14031                           OCT      14031                                 
005511,000055:    4075           20033                           OCT      20033                                 
005512,000056:    4076           24017                           OCT      24017                                 
005513,000057:    4077           30036                           OCT      30036                                 
005514,000058:    4100           34034                           OCT      34034                                 
005515,000059:    4101           40023                           OCT      40023                                 
005516,000060:    4102           44035                           OCT      44035                                 
005517,000061:    4103           50037                           OCT      50037                                 
005518,000062:    4104           54000                           OCT      54000                                 
005519,000063:    4105           60000        RELTAB11           OCT      60000                                 
005520,000064: 

Page 134

005522,000066:                                                                                                  #  SWITCHED-BANK PORTION.
005523,000067: 
005524,000068: 12,2000                                           BANK     12                                    
005525,000069: 06,2000                                           SETLOC   T4RUP                                 
005526,000070: 06,2000                                           BANK                                           
005527,000071: 
005528,000072: 06,2012                                           COUNT    06/T4RPT                              
005529,000073: 
005530,000074: 06,2012           11036        CDRVE              CCS      DSPTAB     +11D                       
005531,000075: 06,2013           02063                           TC       DSPOUT                                
005532,000076: 06,2014           02063                           TC       DSPOUT                                
005533,000077: 
005534,000078: 06,2015           57036                           XCH      DSPTAB     +11D                       
005535,000079: 06,2016           74372                           MASK     LOW11                                 
005536,000080: 06,2017           55036                           TS       DSPTAB     +11D                       
005537,000081: 06,2020           64105                           AD       RELTAB11                              
005538,000082: 06,2021           00006                           EXTEND                                         
005539,000083: 06,2022           01010                           WRITE    OUT0                                  
005540,000084: 06,2023           02071                           TC       HANG20                                
005541,000085: 

Page 135

005543,000087:                                                                                                  #  DSPOUT PROGRAM. PUTS OUT DISPLAYS.
005544,000088: 
005545,000089: 06,2024           55016        DSPOUTSB           TS       NOUT                                  
005546,000090: 06,2025           45021                           CS       ZERO                                  
005547,000091: 06,2026           54073                           TS       DSRUPTEM                              #  SET TO -0 FOR 1ST PASS THRU DSPTAB
005548,000092: 06,2027           56776                           XCH      DSPCNT                                
005549,000093: 06,2030           65020                           AD       NEG0                                  #  TO PREVENT +0
005550,000094: 06,2031           54776                           TS       DSPCNT                                
005551,000095: 06,2032           50776        DSPSCAN            INDEX    DSPCNT                                
005552,000096: 06,2033           11023                           CCS      DSPTAB                                
005553,000097: 06,2034           10776                           CCS      DSPCNT                                #  IF DSPTAB ENTRY +, SKIP
005554,000098: 06,2035           12030                           TCF      DSPSCAN    -2                         #  IF DSPCNT +, AGAIN
005555,000099: 06,2036           12047                           TCF      DSPLAY                                #  IF DSPTAB ENTRY -, DISPLAY
005556,000100: 06,2037           00012        TABLNTH            OCT      12                                    #  DEC 10 LENGTH OF DSPTAB
005557,000101: 06,2040           10073                           CCS      DSRUPTEM                              #  IF DSRUPTEM=+0, 2ND PASS THRU DSPTAB
005558,000102: 06,2041           37764        120MRUPT           DEC      16372      B-14                       #  (DSPCNT = 0).  +0 INTO NOUT.
005559,000103: 06,2042           55016                           TS       NOUT                                  
005560,000104: 06,2043           00002                           TC       Q                                     
005561,000105: 06,2044           54073                           TS       DSRUPTEM                              #  IF DSRUPTEM=-0, 1ST PASS THRU DSPTAB
005562,000106: 06,2045           32037                           CAF      TABLNTH                               #  (DSPCNT=0).+0 INTO DSRUPTEM. PASS AGAIN
005563,000107: 06,2046           12031                           TCF      DSPSCAN    -1                         
005564,000108: 
005565,000109: 06,2047           65017        DSPLAY             AD       ONE                                   
005566,000110: 06,2050           50776                           INDEX    DSPCNT                                
005567,000111: 06,2051           55023                           TS       DSPTAB                                #  REPLACE POSITIVELY
005568,000112: 06,2052           74372                           MASK     LOW11                                 #  REMOVE BITS 12 TO 15
005569,000113: 06,2053           54073                           TS       DSRUPTEM                              
005570,000114: 06,2054           34364                           CAF      HI5                                   
005571,000115: 06,2055           50776                           INDEX    DSPCNT                                
005572,000116: 06,2056           74072                           MASK     RELTAB                                #  PICK UP BITS 12 TO 15 OF RELTAB ENTRY
005573,000117: 06,2057           60073                           AD       DSRUPTEM                              
005574,000118: 06,2060           00006                           EXTEND                                         
005575,000119: 06,2061           01010                           WRITE    OUT0                                  #  WRITE CHANNEL 10
005576,000120: 06,2062           16706                           TCF      Q+1                                   #  *** NORMAL RETURN SKIPS ONE
005577,000121: 
005578,000122: 06,2063           10101        DSPOUT             CCS      FLAGWRD5                              #  DONT DISPLAY UNLESS DSKY FLAG ON
005579,000123: 06,2064           35021                           CAF      ZERO                                  
005580,000124: 06,2065           12132                           TCF      NODSPOUT                              
005581,000125: 06,2066           11016                           CCS      NOUT                                  
005582,000126: 06,2067           02024                           TC       DSPOUTSB                              
005583,000127: 06,2070           12132                           TCF      NODSPOUT                              #  NO DISPLAY REQUESTS
005584,000128: 
005585,000129: 06,2071           42173        HANG20             CS       11,14,9                               
005586,000130: 06,2072           27302                           ADS      DSRUPTSW                              
005587,000131: 
005588,000132: 06,2073           37700                           CAF      20MRUPT                               
005589,000133: 
005590,000134: 06,2074           54027        SETTIME4           TS       TIME4                                 
005591,000135: 

Page 136

005593,000137:                                                                                                  #  THE STATUS OF THE PROCEED PUSHBUTTON IS MONITORED EVERY 120 MILLISECONDS VIA THE CHANNEL 32 BIT 14 INBIT.
005594,000138:                                                                                                  #  THE STATE OF THIS INBIT IS COMPARED WITH ITS STATE DURING THE PREVIOUS T4RUPT AND IS PROCESSED AS FOLLOWS.
005595,000139:                                                                                                  #        IF PREV ON AND NOW ON   - BYPASS
005596,000140:                                                                                                  #        IF PREV ON AND NOW OFF  - UPDATE IMODES33
005597,000141:                                                                                                  #        IF PREV OFF AND NOW ON  - UPDATE IMODES33 AND PROCESS VIA PINBALL
005598,000142:                                                                                                  #        IF PREV OFF AND NOW OFF - BYPASS
005599,000143:                                                                                                  #  THE LOGIC EMPLOYED REQUIRES ONLY 9 MCT (APPROX. 108 MICROSECONDS) OF COMPUTER TIME WHEN NO CHANGES OCCUR.
005600,000144: 
005601,000145: 06,2075           31321        PROCEEDE           CA       IMODES33                              #  MONITIOR FOR PROCEED BUTTON
005602,000146: 06,2076           00006                           EXTEND                                         
005603,000147: 06,2077           06032                           RXOR     CHAN32                                #  CHECK IF BIT 14 DIFFERENT
005604,000148: 06,2100           75002                           MASK     BIT14                                 
005605,000149: 06,2101           00006                           EXTEND                                         
005606,000150: 06,2102           12116                           BZF      T4JUMP                                #  NO CHANGE
005607,000151: 
005608,000152: 06,2103           23321                           LXCH     IMODES33                              
005609,000153: 06,2104           00006                           EXTEND                                         
005610,000154: 06,2105           06001                           RXOR     LCHAN                                 
005611,000155: 06,2106           55321                           TS       IMODES33                              #  UPDATE IMODES33
005612,000156: 06,2107           75002                           MASK     BIT14                                 
005613,000157: 06,2110           10000                           CCS      A                                     
005614,000158: 06,2111           12116                           TCF      T4JUMP                                #  WAS ON - NOW OFF
005615,000159: 
005616,000160: 06,2112           34371                           CAF      CHRPRIO                               #  WAS OFF - NOW ON
005617,000161: 06,2113           05134                           TC       NOVAC                                 
005618,000162: 06,2114     0777                                  EBANK=   DSPCOUNT                              
005619,000163: 06,2114           03357 60101                     2CADR    PROCKEY                               
005620,000164: 

Page 137

005622,000166:                                                                                                  #  JUMP TO APPROPRIATE ONCE-PER SECOND (.96 SEC ACTUALLY) ACTIVITY
005623,000167: 
005624,000168: 06,2116           50070        T4JUMP             INDEX    RUPTREG1                              
005625,000169: 06,2117           12120                           TCF      +1                                    
005626,000170: 
005627,000171: 06,2120           12130                           TCF      OPTTEST                               
005628,000172: 06,2121           12765                           TCF      OPTMON                                
005629,000173: 06,2122           12174                           TCF      IMUMON                                
005630,000174: 06,2123           15333                           TCF      RESUME                                
005631,000175: 06,2124           12130                           TCF      OPTTEST                               
005632,000176: 06,2125           12765                           TCF      OPTMON                                
005633,000177: 06,2126           12174                           TCF      IMUMON                                
005634,000178: 06,2127           15333                           TCF      RESUME                                
005635,000179: 
005636,000180: 06,2130           04740        OPTTEST            TC       IBNKCALL                              
005637,000181: 06,2131           20000                           CADR     OPTDRIVE                              
005638,000182: 
005639,000183: 06,2132     7700               20MRUPT            =        OCT37776                              #  (DEC 16382)
005640,000184: 
005641,000185: 06,2132           00006        NODSPOUT           EXTEND                                         #  TURN OFF RELAYS
005642,000186: 06,2133           01010                           WRITE    OUT0                                  
005643,000187: 
005644,000188: 06,2134           32041                           CAF      120MRUPT                              #  SET FOR NEXT CDRVE
005645,000189: 06,2135           12074                           TCF      SETTIME4                              
005646,000190: 
005647,000191: 06,2136           35002        QUIKDSP            CAF      BIT14                                 
005648,000192: 06,2137           71302                           MASK     DSRUPTSW                              
005649,000193: 06,2140           00006                           EXTEND                                         
005650,000194: 06,2141           12167                           BZF      QUIKOFF                               #  WROTE LAST TIME, NOW TURN OFF RELAYS.
005651,000195: 
005652,000196: 06,2142           11016                           CCS      NOUT                                  
005653,000197: 06,2143           02024                           TC       DSPOUTSB                              
005654,000198: 06,2144           12154                           TCF      NODSPY                                #  NOUT=0 OR BAD RETURN FROM DSPOUTSB
005655,000199: 06,2145           45002                           CS       BIT14                                 #  GOOD RETURN (WE DISPLAYED SOMETHING)
005656,000200: 06,2146           27302        QUIKRUPT           ADS      DSRUPTSW                              
005657,000201: 
005658,000202: 06,2147           37700                           CAF      20MRUPT                               
005659,000203: 06,2150           54027                           TS       TIME4                                 
005660,000204: 
005661,000205: 06,2151           35007                           CAF      BIT9                                  
005662,000206: 06,2152           27302                           ADS      DSRUPTSW                              
005663,000207: 
005664,000208: 06,2153           05333                           TC       RESUME                                
005665,000209: 
005666,000210: 06,2154           00006        NODSPY             EXTEND                                         
005667,000211: 06,2155           01010                           WRITE    OUT0                                  
005668,000212: 
005669,000213: 06,2156           37700        SYNCT4             CAF      20MRUPT                               
005670,000214: 06,2157           26027                           ADS      TIME4                                 
005671,000215: 
005672,000216: 06,2160           35007                           CAF      BIT9                                  

Page 138

005674,000218: 06,2161           27302                           ADS      DSRUPTSW                              
005675,000219: 06,2162           11302                           CCS      DSRUPTSW                              
005676,000220: 06,2163           05333                           TC       RESUME                                
005677,000221: 06,2164           37737        OCT37737           OCT      37737                                 
005678,000222: 06,2165           02156                           TC       SYNCT4                                
005679,000223: 06,2166           05333                           TC       RESUME                                
005680,000224: 
005681,000225: 06,2167           00006        QUIKOFF            EXTEND                                         
005682,000226: 06,2170           01010                           WRITE    OUT0                                  
005683,000227: 06,2171           35002                           CAF      BIT14                                 #  RESET DSRUPTSW TO SEND DISPLAY NEXT PASS
005684,000228: 06,2172           12146                           TCF      QUIKRUPT                              
005685,000229: 
005686,000230: 06,2173           22400        11,14,9            OCT      22400                                 
005687,000231: 

Page 139

005689,000233:                                                                                                  #  PROGRAM NAME:  IMUMON
005690,000234: 
005691,000235:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM IS ENTERED EVERY 480 MS.  IT DETECTS CHANGES OF THE IMU STATUS BITS IN
005692,000236:                                                                                                  #  CHANNEL 30 AND CALLS THE APPROPRIATE SUBROUTINES.  THE BITS PROCESSED AND THEIR RELEVANT SUBROUTINES ARE:
005693,000237: 
005694,000238:                                                                                                  #        FUNCTION                BIT     SUBROUTINE CALLED
005695,000239:                                                                                                  #        --------                ---     -----------------
005696,000240:                                                                                                  #        TEMP IN LIMITS           15     TLIM
005697,000241:                                                                                                  #        ISS TURN-ON REQUEST      14     ITURNON
005698,000242:                                                                                                  #        IMU FAIL                 13     IMUFAIL (SETISSW)
005699,000243:                                                                                                  #        IMU CDU FAIL             12     ICDUFAIL (SETISSW)
005700,000244:                                                                                                  #        IMU CAGE                 11     IMUCAGE
005701,000245:                                                                                                  #        IMU OPERATE               9     IMUOP
005702,000246: 
005703,000247:                                                                                                  #  THE LAST SAMPLED STATE OF THESE BITS IS LEFT IN IMODES30.  ALSO, EACH SUBROUTINE CALLED FINDS THE NEW
005704,000248:                                                                                                  #  VALUE OF THE BIT IN A, WITH Q SET TO THE PROPER RETURN LOCATION, NXTIFAIL.
005705,000249: 
005706,000250:                                                                                                  #  CALLING SEQUENCE:  T4RUPT EVERY 480 MILLISECONDS.
005707,000251: 
005708,000252:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005709,000253: 
005710,000254:                                                                                                  #  SUBROUTINES CALLED:  TLIM, ITURNON, SETISSW, IMUCAGE, IMUOP.
005711,000255: 
005712,000256:                                                                                                  #  ERASABLE INITIALIZATION:
005713,000257:                                                                                                  #        FRESH START OR RESTART WITH NO GROUPS ACTIVE:  C(IMODES30) = OCT 37411.
005714,000258:                                                                                                  #        RESTART WITH ACTIVE GROUPS:     C(IMODES30) = (B(IMODES30)AND(OCT 00035)) PLUS OCT 37400.
005715,000259:                                                                                                  #                                        THIS LEAVES IMU FAIL BITS INTACT.
005716,000260: 
005717,000261:                                                                                                  #  ALARMS:  NONE.
005718,000262: 
005719,000263:                                                                                                  #  EXIT:  TNONTEST.
005720,000264: 
005721,000265:                                                                                                  #  OUTPUT:  UPDATED IMODES30 WITH CHANGES PROCESSED BY APPROPRIATE SUBROUTINE.
005722,000266: 
005723,000267: 06,2174           31320        IMUMON             CA       IMODES30                              #  SEE IF THERE HAS BEEN A CHANGE IN THE
005724,000268: 06,2175           00006                           EXTEND                                         #  RELEVANT BITS OF CHAN 30.
005725,000269: 06,2176           06030                           RXOR     CHAN30                                #  CHECK IF BITS 9,11-15 CHANGED
005726,000270: 06,2177           72743                           MASK     30RDMSK                               
005727,000271: 06,2200           00006                           EXTEND                                         
005728,000272: 06,2201           12231                           BZF      TNONTEST                              #  NO CHANGE IN STATUS.
005729,000273: 
005730,000274: 06,2202           54070                           TS       RUPTREG1                              #  SAVE BITS WHICH HAVE CHANGED.
005731,000275: 06,2203           23320                           LXCH     IMODES30                              #  UPDATE IMODES30.
005732,000276: 06,2204           00006                           EXTEND                                         
005733,000277: 06,2205           06001                           RXOR     LCHAN                                 
005734,000278: 06,2206           55320                           TS       IMODES30                              
005735,000279: 
005736,000280: 06,2207           45017                           CS       ONE                                   
005737,000281: 06,2210           56070                           XCH      RUPTREG1                              
005738,000282: 06,2211           00006                           EXTEND                                         

Page 140

005740,000284: 06,2212           62507                           BZMF     TLIM                                  #  CHANGE IN IMU TEMP.
005741,000285: 06,2213           12215                           TCF      NXTIFBIT                              #  BEGIN BIT SCAN.
005742,000286: 
005743,000287: 06,2214           65017                 -1        AD       ONE                                   #  (RE-ENTERS HERE FROM NXTIFAIL.)
005744,000288: 06,2215           24070        NXTIFBIT           INCR     RUPTREG1                              #  ADVANCE BIT POSITION NUMBER.
005745,000289: 06,2216           60000                 +1        DOUBLE                                         
005746,000290: 06,2217           54000                           TS       A                                     #  SKIP IF OVERFLOW.
005747,000291: 06,2220           12215                           TCF      NXTIFBIT                              #  LOOK FOR BIT.
005748,000292: 
005749,000293: 06,2221           56071                           XCH      RUPTREG2                              #  SAVE OVERFLOW-CORRECTED DATA.
005750,000294: 06,2222           50070                           INDEX    RUPTREG1                              #  SELECT NEW VALUE OF THIS BIT.
005751,000295: 06,2223           35002                           CAF      BIT14                                 
005752,000296: 06,2224           71320                           MASK     IMODES30                              
005753,000297: 06,2225           50070                           INDEX    RUPTREG1                              
005754,000298: 06,2226           02737                           TC       IFAILJMP                              
005755,000299: 
005756,000300: 06,2227           10071        NXTIFAIL           CCS      RUPTREG2                              #  PROCESS ANY ADDITIONAL CHANGES.
005757,000301: 06,2230           12214                           TCF      NXTIFBIT   -1                         
005758,000302: 

Page 141

005760,000304:                                                                                                  #  PROGRAM NAME:  TNONTEST.
005761,000305: 
005762,000306:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM HONORS REQUESTS FOR ISS INITIALIZATION.  ISS TURN-ON (CHANNEL 30 BIT 14)
005763,000307:                                                                                                  #  AND ISS OPERATE (CHANNEL 30 BIT 9) REQUESTS ARE TREATED AS A PAIR AND PROCESSING TAKES PLACE .480 SECONDS
005764,000308:                                                                                                  #  AFTER EITHER ONE APPEARS.  THIS INITIALIZATION TAKES ON ONE OF THE FOLLOWING THREE FORMS:
005765,000309: 
005766,000310:                                                                                                  #        1) ISS TURN-ON:  IN THIS SITUATION THE COMPUTER IS OPERATING WHEN THE ISS IS TURNED ON.  NOMINALLY,
005767,000311:                                                                                                  #        BOTH ISS TURN-ON AND ISS OPERATE APPEAR.  THE PLATFORM IS CAGED FOR 90 SECONDS AND THE ICDU'S ZEROED
005768,000312:                                                                                                  #        SO THAT AT THE END OF THE PROCESS THE GIMBAL LOCK MONITOR WILL FUNCTION PROPERLY.
005769,000313: 
005770,000314:                                                                                                  #        2) ICDU INITIALIZATION:  IN THIS CASE THE COMPUTER WAS PROBABLY TURNED ON WITH THE ISS IN OPERATE OR
005771,000315:                                                                                                  #        A FRESH START WAS DONE WITH THE ISS IN OPERATE.  IN THIS CASE ONLY ISS OPERATE IS ON.  THE ICDU'S ARE
005772,000316:                                                                                                  #        ZEROED SO THE GIMBAL LOCK MONITOR WILL FUNCTION.  AN EXCEPTION IS IF THE ISS IS IN GIMBAL LOCK AFTER
005773,000317:                                                                                                  #        A RESTART, THE ICDU'S WILL NOT BE ZEROED.
005774,000318: 
005775,000319:                                                                                                  #        3) RESTART WITH RESTARTABLE PROGRAM USING THE IMU:  IN THIS CASE, NO INITIALIZATION TAKES PLACE SINCE
005776,000320:                                                                                                  #        IT IS ASSUMED THAT THE USING PROGRAM DID THE INITIALIZATION AND THEREFORE T4RUPT SHOULD NOT INTERFERE.
005777,000321: 
005778,000322:                                                                                                  #  IMODES30 BIT 7 IS SET = 1 BY THE FIRST BIT (CHANNEL 30 BIT 14 OR 9) WHICH ARRIVES.  FOLLOWING THIS. TNONTEST IS
005779,000323:                                                                                                  #  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
005780,000324:                                                                                                  #  PROCEEDS, SETTING BITS 8 AND 7 = 0.  AT PROCTNON, IF ISS TURN-ON REQUEST IS PRESENT, THE ISS IS CAGED (ZERO +
005781,000325:                                                                                                  #  COARSE).  IF ISS OPERATE IS NOT PRESENT PROGRAM ALARM 00213 IS ISSUED.  AT THE END OF A 90 SECOND CAGE, BIT 2
005782,000326:                                                                                                  #  OF IMODES30 IS TESTED.  IF IT IS = 1, ISS TURN-ON WAS NOT PRESENT FOR THE ENTIRE 90 SECONDS.  IN THAT CASE, IF
005783,000327:                                                                                                  #  THE ISS TURN-ON REQUEST IS PRESENT THE 90 SECOND WAIT IS REPEATED,  OTHERWISE NO ACTION OCCURS UNLESS A PROGRAM
005784,000328:                                                                                                  #  WAS WAITING FOR THE INITIALIZATION IN WHICH CASE THE PROGRAM IS GIVEN AN IMUSTALL ERROR RETURN.  IF THE DELAY
005785,000329:                                                                                                  #  WENT PROPERLY, THE ISS DELAY OUTBIT IS SENT AND THE ICDU'S ZEROED.  A TASK IS INITIATED TO REMOVE THE PIPA FAIL
005786,000330:                                                                                                  #  INHIBIT BIT IN 10.24 SECONDS.  IF A MISSION PROGRAM WAS WAITING IT IS INFORMED VIA ENDIMU.
005787,000331: 
005788,000332:                                                                                                  #  AT PROCTNON, IF ONLY ISS OPERATE IS PRESENT (OPONLY), THE CDU'S ARE ZEROED UNLESS THE PLATFORM IS IN COARSE
005789,000333:                                                                                                  #  ALIGN (= GIMBAL LOCK HERE) OR A MISSION PROGRAM IS USING THE IMU (IMUSEFLG = 1).
005790,000334: 
005791,000335:                                                                                                  #  CALLING SEQUENCE:  T4RUPT EVERY 480 MILLISECONDS AFTER IMUMON.
005792,000336: 
005793,000337:                                                                                                  #  JOBS OR TASKS INITIATED:  1) ENDTNON, 90 SECONDS AFTER CAGING STARTED.  2) ISSUP, 4 SECONDS AFTER CAGING DONE.
005794,000338:                                                                                                  #        3) PFAILOK, 10.24 SECONDS AFTER INITIALIZATION COMPLETED.  4) UNZ2, 320 MILLISECONDS AFTER ZEROING
005795,000339:                                                                                                  #        STARTED.
005796,000340: 
005797,000341:                                                                                                  #  SUBROUTINES CALLED: CAGESUB, CAGESUB2, ZEROICDU, ENDIMU, IMUBAD, NOATTOFF, SETISSW, VARDELAY.
005798,000342: 
005799,000343:                                                                                                  #  ERASABLE INITIALIZATION:  SEE IMUMON.
005800,000344: 
005801,000345:                                                                                                  #  ALARMS:  PROGRAM ALARM 00213 IF ISS TURN-ON REQUESTED WITHOUT ISS OPERATE.
005802,000346: 
005803,000347:                                                                                                  #  EXIT:  ENDTNON EXITS TO C33TEST.  TASKS HAVING TO DO WITH INITIALIZATION EXIT AS FOLLOWS:  MISSION PROGRAM
005804,000348:                                                                                                  #  WAITING AND INITIALIZATION COMPLETE, EXIT TO ENDIMU, MISSION PROGRAM WAITING AND INITIALIZATION FAILED, EXIT TO
005805,000349:                                                                                                  #  IMUBAD, IMU NOT IN USE, EXIT TO TASKOVER.
005806,000350: 
005807,000351:                                                                                                  #  OUTPUT:  ISS INITIALIZED.
005808,000352: 
005809,000353: 06,2231           41320        TNONTEST           CS       IMODES30                              #  AFTER PROCESSING ALL CHANGES, SEE IF IT

Page 142

005811,000355: 06,2232           75011                           MASK     BIT7                                  #  IS TIME TO ACT ON A TURN-ON SEQUENCE.
005812,000356: 06,2233           10000                           CCS      A                                     
005813,000357: 06,2234           12367                           TCF      C33TEST                               #  NO - EXAMINE CHANNEL 33.
005814,000358: 
005815,000359: 06,2235           35010                           CAF      BIT8                                  #  SEE IF FIRST SAMPLE OR SECOND.
005816,000360: 06,2236           71320                           MASK     IMODES30                              
005817,000361: 06,2237           10000                           CCS      A                                     
005818,000362: 06,2240           12244                           TCF      PROCTNON                              #  REACT AFTER SECOND SAMPLE.
005819,000363: 
005820,000364: 06,2241           35010                           CAF      BIT8                                  #  IF FIRST SAMPLE, SET BIT TO REACT NEXT
005821,000365: 06,2242           27320                           ADS      IMODES30                              #  TIME.
005822,000366: 06,2243           12367                           TCF      C33TEST                               
005823,000367: 
005824,000368:                                                                                                  #  PROCESS IMU TURN-ON REQUESTS AFTER WAITING 1 SAMPLE FOR ALL SIGNALS TO ARRIVE.
005825,000369: 
005826,000370: 06,2244           42757        PROCTNON           CS       BITS7&8                               
005827,000371: 06,2245           71320                           MASK     IMODES30                              
005828,000372: 06,2246           55320                           TS       IMODES30                              
005829,000373: 06,2247           75002                           MASK     BIT14                                 #  SEE IF TURN-ON REQUEST.
005830,000374: 06,2250           10000                           CCS      A                                     
005831,000375: 06,2251           12342                           TCF      OPONLY                                #  OPERATE ON ONLY.
005832,000376: 
005833,000377: 06,2252           41320                           CS       IMODES30                              #  IF TURN-ON REQUEST, WE SHOULD HAVE IMU
005834,000378: 06,2253           75007                           MASK     BIT9                                  #  OPERATE.
005835,000379: 06,2254           10000                           CCS      A                                     
005836,000380: 06,2255           12260                           TCF      +3                                    
005837,000381: 
005838,000382: 06,2256           05650                           TC       ALARM                                 #  ALARM IF NOT.
005839,000383: 06,2257           00213                           OCT      213                                   
005840,000384: 
005841,000385: 06,2260           02717                 +3        TC       CAGESUB                               
005842,000386: 
005843,000387: 06,2261           32764                           CAF      90SECS                                
005844,000388: 06,2262           05245                           TC       WAITLIST                              
005845,000389: 06,2263  E3,1474                                  EBANK=   CDUIND                                
005846,000390: 06,2263           02270 14063                     2CADR    ENDTNON                               
005847,000391: 
005848,000392: 06,2265           12367                           TCF      C33TEST                               
005849,000393: 
005850,000394: 06,2266           32764        RETNON             CAF      90SECS                                
005851,000395: 06,2267           05272                           TC       VARDELAY                              
005852,000396: 
005853,000397: 06,2270           45016        ENDTNON            CS       BIT2                                  #  RESET TURN-ON REQUEST FAIL BIT.
005854,000398: 06,2271           71320                           MASK     IMODES30                              
005855,000399: 06,2272           57320                           XCH      IMODES30                              
005856,000400: 06,2273           75016                           MASK     BIT2                                  #  IF IT WAS OFF, SEND ISS DELAY COMPLETE.
005857,000401: 06,2274           00006                           EXTEND                                         
005858,000402: 06,2275           12310                           BZF      ENDTNON2                              

Page 143

005860,000404: 06,2276           35002                           CAF      BIT14                                 #  IF IT WAS ON AND TURN-ON REQUEST NOW
005861,000405: 06,2277           71320                           MASK     IMODES30                              #  PRESENT, RE-ENTER 90 SEC DELAY IN WL.
005862,000406: 06,2300           00006                           EXTEND                                         
005863,000407: 06,2301           12266                           BZF      RETNON                                
005864,000408: 
005865,000409: 06,2302           40074                           CS       STATE                                 #  IF IT IS NOT ON NOW, SEE IF A PROG WAS
005866,000410: 06,2303           75010                           MASK     IMUSEFLG                              #  WAITING.
005867,000411: 06,2304           10000                           CCS      A                                     
005868,000412: 06,2305           15324                           TCF      TASKOVER                              
005869,000413: 06,2306           04701                           TC       POSTJUMP                              
005870,000414: 06,2307           17522                           CADR     IMUBAD                                #  UNSUCCESSFUL TURN-ON.
005871,000415: 
005872,000416: 06,2310           35001        ENDTNON2           CAF      BIT15                                 #  SEND ISS DELAY COMPLETE.
005873,000417: 06,2311           00006                           EXTEND                                         
005874,000418: 06,2312           05012                           WOR      CHAN12                                #  TURN OFF ISS DELAY COUNTER
005875,000419: 06,2313           04740                           TC       IBNKCALL                              #  TURN OFF NO ATT LAMP.
005876,000420: 06,2314           17151                           CADR     NOATTOFF                              
005877,000421: 
005878,000422: 06,2315           05521        UNZ2               TC       ZEROICDU                              
005879,000423: 
005880,000424: 06,2316           45027                           CS       BITS4&5                               #  REMOVE ZERO AND COARSE.
005881,000425: 06,2317           00006                           EXTEND                                         
005882,000426: 06,2320           03012                           WAND     CHAN12                                
005883,000427: 
005884,000428: 06,2321           35005                           CAF      BIT11                                 #  WAIT 10 SECS FOR CTRS TO FIND GIMBALS
005885,000429: 06,2322           05272                           TC       VARDELAY                              
005886,000430: 
005887,000431: 06,2323           42754        ISSUP              CS       OCT54                                 #  REMOVE CAGING, IMU FAIL INHIBIT, AND
005888,000432: 06,2324           71320                           MASK     IMODES30                              #  ICDUFAIL INHIBIT FLAGS.
005889,000433: 06,2325           55320                           TS       IMODES30                              
005890,000434: 
005891,000435: 06,2326           45012                           CS       BIT6                                  #  ENABLE DAP
005892,000436: 06,2327           71321                           MASK     IMODES33                              
005893,000437: 06,2330           55321                           TS       IMODES33                              
005894,000438: 
005895,000439: 06,2331           02665                           TC       SETISSW                               #  ISS WARNING MIGHT HAVE BEEN INHIBITED.
005896,000440: 
005897,000441: 06,2332           45001                           CS       BIT15                                 #  REMOVE IMU DELAY COMPLETE DISCRETE.
005898,000442: 06,2333           00006                           EXTEND                                         
005899,000443: 06,2334           03012                           WAND     CHAN12                                
005900,000444: 
005901,000445: 06,2335           35045                           CAF      4SECS                                 #  DONT ENABLE PROG ALARM ON PIP FAIL FOR
005902,000446: 06,2336           05245                           TC       WAITLIST                              #  ANOTHER 4 SECS.
005903,000447: 06,2337  E3,1474                                  EBANK=   CDUIND                                
005904,000448: 06,2337           03137 16063                     2CADR    PFAILOK                               
005905,000449: 
005906,000450: 06,2341           15324                           TCF      TASKOVER                              
005907,000451: 
005908,000452: 06,2342           35014        OPONLY             CAF      BIT4                                  

Page 144

005910,000454: 06,2343           00006                           EXTEND                                         #  IF OPERATE ON ONLY AND WE ARE IN COARSE
005911,000455: 06,2344           02012                           RAND     CHAN12                                #  ALIGN, DONT ZERO THE CDUS BECAUSE WE
005912,000456: 06,2345           10000                           CCS      A                                     #  MIGHT BE IN GIMBAL LOCK. USE V41N20 TO
005913,000457: 06,2346           12367                           TCF      C33TEST                               #  RECOVER.
005914,000458: 
005915,000459: 06,2347           35010                           CAF      IMUSEFLG                              #  OTHERWISE, ZERO THE COUNTERS
005916,000460: 06,2350           70074                           MASK     STATE                                 #  UNLESS SOMEONE IS USING THE IMU.
005917,000461: 06,2351           10000                           CCS      A                                     
005918,000462: 06,2352           12367                           TCF      C33TEST                               
005919,000463: 
005920,000464: 06,2353           02730                           TC       CAGESUB2                              #  SET TURNON FLAGS.
005921,000465: 
005922,000466: 06,2354           04740        ISSZERO            TC       IBNKCALL                              #  TURN OFF NO ATT LAMP
005923,000467: 06,2355           17151                           CADR     NOATTOFF                              #      IMU CAGE OFF ENTRY
005924,000468: 
005925,000469: 06,2356           35013                           CAF      BIT5                                  #  ISS CDU ZERO
005926,000470: 06,2357           00006                           EXTEND                                         
005927,000471: 06,2360           05012                           WOR      CHAN12                                
005928,000472: 
005929,000473: 06,2361           05521                           TC       ZEROICDU                              
005930,000474: 06,2362           35012                           CAF      BIT6                                  #  WAIT 300 MS FOR AGS TO RECEIVE SIGNAL.
005931,000475: 06,2363           05245                           TC       WAITLIST                              
005932,000476: 06,2364     1331                                  EBANK=   OPTMODES                              
005933,000477: 06,2364           02315 14062                     2CADR    UNZ2                                  
005934,000478: 
005935,000479: 06,2366           12367                           TCF      C33TEST                               
005936,000480: 

Page 145

005938,000482:                                                                                                  #  PROGRAM NAME:  C33TEST
005939,000483: 
005940,000484:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM MONITORS THREE FLIP-FLOP INBITS OF CHANNEL 33 AND CALLS THE APPROPRIATE
005941,000485:                                                                                                  #  SUBROUTINE TO PROCESS A CHANGE.  IT IS ANALOGOUS TO IMUMON, WHICH MONITORS CHANNEL 30, EXCEPT THAT IT READS
005942,000486:                                                                                                  #  CHANNEL 33 WITH A WAND INSTRUCTION BECAUSE A 'WRITE' PULSE IS REQUIRED TO RESET THE FLIP-FLOPS.  THE BITS
005943,000487:                                                                                                  #  PROCESSED AND THE SUBROUTINES CALLED ARE:
005944,000488:                                                                                                  #        BIT     FUNCTION                SUBROUTINE
005945,000489:                                                                                                  #        ---     --------                ----------
005946,000490:                                                                                                  #         13     PIPA FAIL               PIPFAIL
005947,000491:                                                                                                  #         12     DOWNLINK TOO FAST       DNTMFAST
005948,000492:                                                                                                  #         11     UPLINK TOO FAST         UPTMFAST
005949,000493: 
005950,000494:                                                                                                  #  UPON ENTRY TO THE SUBROUTINE, THE NEW BIT STATE IS IN A.
005951,000495: 
005952,000496:                                                                                                  #  CALLING SEQUENCE:  EVERY 480 MILLISECONDS AFTER TNONTEST.
005953,000497: 
005954,000498:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005955,000499: 
005956,000500:                                                                                                  #  SUBROUTINES CALLED:  PIPFAIL, DNTMFAST AND UPTMFAST ON BIT CHANGES.
005957,000501: 
005958,000502:                                                                                                  #  ERASABLE INITIALIZATION:  C(IMODES33) = OCT 16000 ON A FRESH START OR RESTART, THEREFORE, THESE ALARMS WILL
005959,000503:                                                                                                  #  REAPPEAR IF THE CONDITIONS PERSIST.
005960,000504: 
005961,000505:                                                                                                  #  ALARMS:  NONE.
005962,000506: 
005963,000507:                                                                                                  #  EXIT:  GLOCKMON.
005964,000508: 
005965,000509:                                                                                                  #  OUTPUT:  UPDATED BITS 13, 12 AND 11 OF IMODES33 WITH CHANGES PROCESSED.
005966,000510: 
005967,000511: 06,2367           31321        C33TEST            CA       IMODES33                              #  SEE IF RELEVANT CHAN33 BITS HAVE
005968,000512: 06,2370           75070                           MASK     33RDMSK                               
005969,000513: 06,2371           54001                           TS       L                                     #  CHANGED.
005970,000514: 06,2372           35070                           CAF      33RDMSK                               
005971,000515: 06,2373           00006                           EXTEND                                         
005972,000516: 06,2374           03033                           WAND     CHAN33                                #  RESETS FLIP-FLOP INPUTS.
005973,000517: 06,2375           00006                           EXTEND                                         
005974,000518: 06,2376           06001                           RXOR     LCHAN                                 
005975,000519: 06,2377           00006                           EXTEND                                         
005976,000520: 06,2400           12427                           BZF      GLOCKMON                              #  ON NO CHANGE.
005977,000521: 
005978,000522: 06,2401           54070                           TS       RUPTREG1                              #  SAVE BITS WHICH HAVE CHANGED.
005979,000523: 06,2402           23321                           LXCH     IMODES33                              
005980,000524: 06,2403           00006                           EXTEND                                         
005981,000525: 06,2404           06001                           RXOR     LCHAN                                 
005982,000526: 06,2405           55321                           TS       IMODES33                              #  UPDATED IMODES33.
005983,000527: 
005984,000528: 06,2406           35021                           CAF      ZERO                                  
005985,000529: 06,2407           56070                           XCH      RUPTREG1                              
005986,000530: 06,2410           60000                           DOUBLE                                         

Page 146

005988,000532: 06,2411           12414                           TCF      NXTIBT     +1                         #  SCAN FOR BIT CHANGES.
005989,000533: 
005990,000534: 06,2412           65017                 -1        AD       ONE                                   
005991,000535: 06,2413           24070        NXTIBT             INCR     RUPTREG1                              
005992,000536: 06,2414           60000                 +1        DOUBLE                                         
005993,000537: 06,2415           54000                           TS       A                                     #  (CODING IDENTICAL TO CHAN 30).
005994,000538: 06,2416           12413                           TCF      NXTIBT                                
005995,000539: 
005996,000540: 06,2417           56071                           XCH      RUPTREG2                              
005997,000541: 06,2420           50070                           INDEX    RUPTREG1                              #  GET NEW VALUE OF BIT WHICH CHANGED.
005998,000542: 06,2421           35003                           CAF      BIT13                                 
005999,000543: 06,2422           71321                           MASK     IMODES33                              
006000,000544: 06,2423           50070                           INDEX    RUPTREG1                              
006001,000545: 06,2424           02745                           TC       C33JMP                                
006002,000546: 
006003,000547: 06,2425           10071        NXTFL33            CCS      RUPTREG2                              #  PROCESS POSSIBLE ADDITIONAL CHANGES.
006004,000548: 06,2426           12412                           TCF      NXTIBT     -1                         
006005,000549: 

Page 147

006007,000551:                                                                                                  #  PROGRAM NAME:  GLOCKMON
006008,000552: 
006009,000553:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM MONITORS THE CDUZ COUNTER TO DETERMINE WHETHER THE ISS IS IN GIMBAL LOCK
006010,000554:                                                                                                  #  AND TAKES ACTION IF IT IS.  THREE REGIONS OF MIDDLE GIMBAL ANGLE (MGA) ARE USED:
006011,000555: 
006012,000556:                                                                                                  #        1) ABS(MGA) LESS THAN OR EQUAL TO 70 DEGREES - NORMAL MODE.
006013,000557:                                                                                                  #        2) ABS(MGA) GREATER THAN 70 DEGREES AND LESS THAN OR EQUAL TO 85 DEGREES - GIMBAL LOCK LAMP TURNED ON.
006014,000558:                                                                                                  #        3) ABS(MGA) GREATER THAN 85 DEGREES - ISS PUT IN COARSE ALIGN AND NO ATT LAMP TURNED ON.
006015,000559: 
006016,000560:                                                                                                  #  CALLING SEQUENCE:  EVERY 480 MILLISECONDS AFTER C33TEST.
006017,000561: 
006018,000562:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006019,000563: 
006020,000564:                                                                                                  #  SUBROUTINES CALLED:   1) SETCOARS WHEN ABS(MGA) GREATER THAN 85 DEGREES AND ISS NOT IN COARSE ALIGN.
006021,000565:                                                                                                  #                        2) LAMPTEST BEFORE TURNING OFF GIMBAL LOCK LAMP.
006022,000566: 
006023,000567:                                                                                                  #  ERASABLE INITIALIZATION:
006024,000568:                                                                                                  #                1) FRESH START OR RESTART WITH NO GROUPS ACTIVE:  C(CDUZ) = 0, IMODES30 BIT 6 = 0, IMODES33 BIT 1 = 0.
006025,000569:                                                                                                  #                2) RESTART WITH GROUPS ACTIVE:  SAME AS FRESH START EXCEPT C(CDUZ) NOT CHANGED SO GIMBAL MONITOR
006026,000570:                                                                                                  #                                                PROCEEDS AS BEFORE.
006027,000571: 
006028,000572:                                                                                                  #  ALARMS:       1) MGA REGION (2) CAUSES GIMBAL LOCK LAMP TO BE LIT.
006029,000573:                                                                                                  #                2) MGA REGION (3) CAUSES THE ISS TO BE PUT IN COARSE ALIGN AND THE NO ATT LAMP TO BE LIT IF EITHER NOT
006030,000574:                                                                                                  #                   SO ALREADY.
006031,000575: 
006032,000576: 06,2427           10034        GLOCKMON           CCS      CDUZ                                  
006033,000577: 06,2430           12434                           TCF      GLOCKCHK                              #  SEE IF MAGNITUDE OF MGA IS GREATER THAN
006034,000578: 06,2431           12460                           TCF      SETGLOCK                              #  70 DEGREES.
006035,000579: 06,2432           12434                           TCF      GLOCKCHK                              
006036,000580: 06,2433           12460                           TCF      SETGLOCK                              
006037,000581: 
006038,000582: 06,2434           62505        GLOCKCHK           AD       -70DEGS                               
006039,000583: 06,2435           00006                           EXTEND                                         
006040,000584: 06,2436           62457                           BZMF     SETGLOCK   -1                         #  NO LOCK.
006041,000585: 
006042,000586: 06,2437           62506                           AD       -15DEGS                               #  SEE IF ABS(MGA) GREATER THAN 85 DEGS.
006043,000587: 06,2440           00006                           EXTEND                                         
006044,000588: 06,2441           62455                           BZMF     NOGIMRUN                              
006045,000589: 
006046,000590: 06,2442           35014                           CAF      BIT4                                  #  IF SO, SYSTEM SHOULD BE IN COARSE ALIGN
006047,000591: 06,2443           00006                           EXTEND                                         #  TO PREVENT GIMBAL RUN-AWAY.
006048,000592: 06,2444           02012                           RAND     CHAN12                                
006049,000593: 06,2445           10000                           CCS      A                                     
006050,000594: 06,2446           12455                           TCF      NOGIMRUN                              
006051,000595: 
006052,000596: 06,2447           04740                           TC       IBNKCALL                              #  GO INTO COARSE ALIGN.
006053,000597: 06,2450           17027                           CADR     SETCOARS                              
006054,000598: 
006055,000599: 06,2451           36211                           CAF      SIX                                   #  ENABLE ISS ERROR COUNTERS IN 60 MS
006056,000600: 06,2452           05245                           TC       WAITLIST                              

Page 148

006058,000602: 06,2453  E3,1474                                  EBANK=   CDUIND                                
006059,000603: 06,2453           03023 16063                     2CADR    CA+ECE                                
006060,000604: 
006061,000605: 06,2455           35012        NOGIMRUN           CAF      BIT6                                  #  TURN ON GIMBAL LOCK LAMP.
006062,000606: 06,2456           12460                           TCF      SETGLOCK                              
006063,000607: 
006064,000608: 06,2457           35021                 -1        CAF      ZERO                                  
006065,000609: 06,2460           61036        SETGLOCK           AD       DSPTAB     +11D                       #  SEE IF PRESENT STATE OF GIMBAL LOCK LAMP
006066,000610: 06,2461           75012                           MASK     BIT6                                  #  AGREES WITH DESIRED STATE BY HALF ADDING
006067,000611: 06,2462           00006                           EXTEND                                         #  THE TWO.
006068,000612: 06,2463           15333                           BZF      GLOCKOK                               #  OK AS IS.
006069,000613: 
006070,000614: 06,2464           71036                           MASK     DSPTAB     +11D                       #  IF OFF, DONT TURN ON IF IMU BEING CAGED.
006071,000615: 06,2465           10000                           CCS      A                                     
006072,000616: 06,2466           12502                           TCF      GLAMPTST                              #  TURN OFF UNLESS LAMP TEST IN PROGRESS.
006073,000617: 
006074,000618: 06,2467           35012                           CAF      BIT6                                  
006075,000619: 06,2470           71320                           MASK     IMODES30                              
006076,000620: 06,2471           10000                           CCS      A                                     
006077,000621: 06,2472           15333                           TCF      GLOCKOK                               
006078,000622: 
006079,000623: 06,2473           41036        GLINVERT           CS       DSPTAB     +11D                       #  INVERT GIMBAL LOCK LAMP.
006080,000624: 06,2474           75012                           MASK     BIT6                                  
006081,000625: 06,2475           65001                           AD       BIT15                                 #  TO INDICATE CHANGE IN DSPTAB +11D.
006082,000626: 06,2476           57036                           XCH      DSPTAB     +11D                       
006083,000627: 06,2477           72164                           MASK     OCT37737                              
006084,000628: 06,2500           27036                           ADS      DSPTAB     +11D                       
006085,000629: 06,2501           15333                           TCF      GLOCKOK                               
006086,000630: 
006087,000631: 06,2502           02750        GLAMPTST           TC       LAMPTEST                              #  TURN OFF UNLESS LAMP TEST IN PROGRESS.
006088,000632: 06,2503           15333                           TCF      GLOCKOK                               
006089,000633: 06,2504           12473                           TCF      GLINVERT                              
006090,000634: 
006091,000635: 06,2505           63434        -70DEGS            DEC      -.38888                               #  -70 DEGREES SCALED IN HALF-REVOLUTIONS.
006092,000636: 06,2506           75252        -15DEGS            DEC      -.08333                               
006093,000637: 

Page 149

006095,000639:                                                                                                  #  PROGRAM NAME:  TLIM.
006096,000640: 
006097,000641:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM MAINTAINS THE TEMP LAMP (BIT 4 OF CHANNEL 11) ON THE DSKY TO AGREE WITH
006098,000642:                                                                                                  #  THE TEMP SIGNAL FROM THE ISS (BIT 15 OF CHANNEL 30).  HOWEVER, THE LIGHT WILL NOT BE TURNED OFF IF A LAMP TEST
006099,000643:                                                                                                  #  IS IN PROGRESS.
006100,000644: 
006101,000645:                                                                                                  #  CALLING SEQUENCE:  CALLED BY IMUMON ON A CHANGE OF BIT 15 OF CHANNEL 30.
006102,000646: 
006103,000647:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006104,000648: 
006105,000649:                                                                                                  #  SUBROUTINES CALLED:  LAMPTEST.
006106,000650: 
006107,000651:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START AND RESTART TURN THE TEMP LAMP OFF.
006108,000652: 
006109,000653:                                                                                                  #  ALARMS:  TEMP LAMP TURNED ON WHEN IMU TEMP GOES OUT OF LIMITS.
006110,000654: 
006111,000655:                                                                                                  #  EXIT:  NXTIFAIL.
006112,000656: 
006113,000657:                                                                                                  #  OUTPUT:  SERVICE OF TEMP LAMP.                  IN A, EXCEPT FOR TLIM.
006114,000658: 
006115,000659: 06,2507           74777        TLIM               MASK     POSMAX                                #  REMOVE BIT FROM WORD OF CHANGES AND SET
006116,000660: 06,2510           54071                           TS       RUPTREG2                              #  DSKY TEMP LAMP ACCORDINGLY.
006117,000661: 
006118,000662: 06,2511           11320                           CCS      IMODES30                              
006119,000663: 06,2512           12520                           TCF      TEMPOK                                
006120,000664: 06,2513           12520                           TCF      TEMPOK                                
006121,000665: 
006122,000666: 06,2514           35014                           CAF      BIT4                                  #  TURN ON LAMP.
006123,000667: 06,2515           00006                           EXTEND                                         
006124,000668: 06,2516           05011                           WOR      DSALMOUT                              
006125,000669: 06,2517           12227                           TCF      NXTIFAIL                              
006126,000670: 
006127,000671: 06,2520           02750        TEMPOK             TC       LAMPTEST                              #  IF TEMP NOW OK, DONT TURN OFF LAMP IF
006128,000672: 06,2521           12227                           TCF      NXTIFAIL                              #  LAMP TEST IN PROGRESS.
006129,000673: 
006130,000674: 06,2522           45014                           CS       BIT4                                  
006131,000675: 06,2523           00006                           EXTEND                                         
006132,000676: 06,2524           03011                           WAND     DSALMOUT                              #  TURN OFF TEMP CAUTION
006133,000677: 06,2525           12227                           TCF      NXTIFAIL                              
006134,000678: 

Page 150

006136,000680:                                                                                                  #  PROGRAM NAME:  ITURNON.
006137,000681: 
006138,000682:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM IS CALLED BY IMUMON WHEN A CHANGE OF BIT 14 OF CHANNEL 30 (ISS TURN-ON
006139,000683:                                                                                                  #  REQUEST) IS DETECTED.  UPON ENTRY, ITURNON CHECKS IF A TURN-ON DELAY SEQUENCE HAS FAILED, AND IF SO, IT EXITS.
006140,000684:                                                                                                  #  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
006141,000685:                                                                                                  #  THAT TNONTEST WILL INITIATE THE ISS INITIALIZATION SEQUENCE.  IF OFF, THE TURN-ON DELAY SIGNAL, CHANNEL 12 BIT
006142,000686:                                                                                                  #  15, IS CHECKED AND IF IT IS ON, ITURNON EXITS.  IF THE DELAY SIGNAL IS OFF, PROGRAM ALARM 00207 IS ISSUED, BIT 2
006143,000687:                                                                                                  #  OF IMODES30 IS SET TO 1 AND THE PROGRAM EXITS.
006144,000688: 
006145,000689:                                                                                                  #  THE SETTING OF BIT 2 OF IMODES30 (ISS DELAY SEQUENCE FAIL) INHIBITS THIS ROUTINE AND IMUOP FROM
006146,000690:                                                                                                  #  PROCESSING ANY CHANGES.  THIS BIT WILL BE RESET BY THE ENDTNON ROUTINE WHEN THE CURRENT 90 SECOND DELAY PERIOD
006147,000691:                                                                                                  #  ENDS.
006148,000692: 
006149,000693:                                                                                                  #  CALLING SEQUENCE:  FROM IMUMOM WHEN ISS TURN-ON REQUEST CHANGES STATE.
006150,000694: 
006151,000695:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006152,000696: 
006153,000697:                                                                                                  #  SUBROUTINES CALLED:  ALARM, IF THE ISS TURN-ON REQUEST IS NOT PRESENT FOR 90 SECONDS.
006154,000698: 
006155,000699:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START AND RESTART SET BIT 15 OF CHANNEL 12 AND BITS 2 AND 7 OF IMODES30 TO 0,
006156,000700:                                                                                                  #  AND BIT 14 OF IMODES30 TO 1.
006157,000701: 
006158,000702:                                                                                                  #  ALARMS: PROGRAM ALARM 00207 IS ISSUED IF THE ISS TURN-ON REQUEST SIGNAL IS NOT PRESENT FOR 90 SECONDS.
006159,000703: 
006160,000704:                                                                                                  #  EXIT:  NXTIFAIL.
006161,000705: 
006162,000706:                                                                                                  #  OUTPUT:  BIT 7 OF IMODES30 TO START ISS INITIALIZATION, OR BIT 2 OF IMODES30 AND PROGRAM ALARM 00207 TO INDICATE
006163,000707:                                                                                                  #  A FAILED TURN-ON SEQUENCE.
006164,000708: 
006165,000709: 06,2526           35016        ITURNON            CAF      BIT2                                  #  IF DELAY REQUEST HAS GONE OFF
006166,000710: 06,2527           71320                           MASK     IMODES30                              #  PREMATURELY, DO NOT PROCESS ANY CHANGES
006167,000711: 06,2530           10000                           CCS      A                                     #  UNTIL THE CURRENT 90 SEC WAIT EXPIRES.
006168,000712: 06,2531           12227                           TCF      NXTIFAIL                              
006169,000713: 
006170,000714: 06,2532           35002                           CAF      BIT14                                 #  SEE IF JUST ON OR OFF.
006171,000715: 06,2533           71320                           MASK     IMODES30                              
006172,000716: 06,2534           00006                           EXTEND                                         
006173,000717: 06,2535           12551                           BZF      ITURNON2                              #  IF JUST ON.
006174,000718: 
006175,000719: 06,2536           35001                           CAF      BIT15                                 
006176,000720: 06,2537           00006                           EXTEND                                         #  SEE IF DELAY PRESENT DISCRETE HAS BEEN
006177,000721: 06,2540           02012                           RAND     CHAN12                                #  SENT.  IF SO, ACTION COMPLETE.
006178,000722: 06,2541           00006                           EXTEND                                         
006179,000723: 06,2542           12544                           BZF      +2                                    
006180,000724: 06,2543           12227                           TCF      NXTIFAIL                              
006181,000725: 
006182,000726: 06,2544           35016                           CAF      BIT2                                  #  IF NOT, SET BIT TO INDICATE REQUEST NOT
006183,000727: 06,2545           27320                           ADS      IMODES30                              #  PRESENT FOR FULL DURATION.
006184,000728: 06,2546           05650                           TC       ALARM                                 
006185,000729: 06,2547           00207                           OCT      207                                   
006186,000730: 06,2550           12227                           TCF      NXTIFAIL                              
006187,000731: 

Page 151

006189,000733: 06,2551           41320        ITURNON2           CS       IMODES30                              #  SET BIT7 TO INDICATE WAIT OF 1 SAMPLE
006190,000734: 06,2552           75011                           MASK     BIT7                                  
006191,000735: 06,2553           27320                           ADS      IMODES30                              
006192,000736: 06,2554           12227                           TCF      NXTIFAIL                              
006193,000737: 

Page 152

006195,000739:                                                                                                  #  PROGRAM NAME:  IMUCAGE.
006196,000740: 
006197,000741:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM PROCESSES CHANGES OF THE IMUCAGE INBIT, CHANNEL 30 BIT 11.  IF THE BIT
006198,000742:                                                                                                  #  CHANGES TO 0 (CAGE BUTTON PRESSED), THE ISS IS CAGED (ICDU ZERO + COARSE ALIGN + NO ATT LAMP) UNTIL THE
006199,000743:                                                                                                  #  ASTRONAUT SELECTS ANOTHER PROGRAM TO ALIGN THE ISS.  ANY PULSE TRAINS TO THE ICDU'S AND GYRO'S ARE TERMINATED,
006200,000744:                                                                                                  #  THE ASSOCIATED OUTCOUNTERS ARE ZEROED AND THE GYRO'S ARE DE-SELECTED.  NO ACTION OCCURS WHEN THE BUTTON IS
006201,000745:                                                                                                  #  RELEASED (INBIT CHANGES TO 1).
006202,000746: 
006203,000747:                                                                                                  #  CALLING SEQUENCE:  BY IMUMON WHEN IMU CAGE BIT CHANGES.
006204,000748: 
006205,000749:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006206,000750: 
006207,000751:                                                                                                  #  SUBROUTINES CALLED:  CAGESUB.
006208,000752: 
006209,000753:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START AND RESTART SET BIT 11 OF IMODES30 TO 1.
006210,000754: 
006211,000755:                                                                                                  #  ALARMS: NONE.
006212,000756: 
006213,000757:                                                                                                  #  EXIT:  NXTIFAIL.
006214,000758: 
006215,000759:                                                                                                  #  OUTPUT:  ISS CAGED, COUNTERS ZEROED, PULSE TRAINS TERMINATED AND NO ATT LAMP LIT.
006216,000760: 
006217,000761: 06,2555           10000        IMUCAGE            CCS      A                                     #  NO ACTION IF GOING OFF.
006218,000762: 06,2556           12354                           TCF      ISSZERO                               
006219,000763: 06,2557           42762                           CS       OCT77000                              #  TERMINATE ICDU, OPTICS, GYRO PULSE TRAINS
006220,000764: 06,2560           00006                           EXTEND                                         
006221,000765: 06,2561           03014                           WAND     CHAN14                                
006222,000766: 
006223,000767: 06,2562           42756                           CS       OCT272                                #  KNOCK DOWN TVC ENABLE, IMU ERROR COUNTER
006224,000768: 06,2563           00006                           EXTEND                                         #    ENABLE, ZERO ICDU, COARSE ALIGN
006225,000769: 06,2564           03012                           WAND     CHAN12                                #    ENABLE, OPTICS ERR CNTR ENABLE
006226,000770: 
006227,000771: 06,2565           45003                           CS       BIT13                                 #  TURN OFF ENGINE
006228,000772: 06,2566           00006                           EXTEND                                         
006229,000773: 06,2567           03011                           WAND     DSALMOUT                              
006230,000774: 
006231,000775: 06,2570           02725                           TC       CAGESUB1                              
006232,000776: 
006233,000777: 06,2571           04740                           TC       IBNKCALL                              #  KNOCK DOWN TRACK, REFSMMAT, DRIFT FLAGS
006234,000778: 06,2572           17060                           CADR     RNDREFDR                              
006235,000779: 
006236,000780: 06,2573           45021                           CS       ZERO                                  #  ZERO COMMAND OUT-COUNTERS
006237,000781: 06,2574           54050                           TS       CDUXCMD                               
006238,000782: 06,2575           54051                           TS       CDUYCMD                               
006239,000783: 06,2576           54052                           TS       CDUZCMD                               
006240,000784: 06,2577           54047                           TS       GYROCMD                               
006241,000785: 
006242,000786: 06,2600           42761                           CS       OCT740                                #  HAVING WAITED AT LEAST 27 MCT FROM
006243,000787: 06,2601           00006                           EXTEND                                         #  GYRO PULSE TRAIN TERMINATION, WE CAN
006244,000788: 06,2602           03014                           WAND     CHAN14                                #  DE-SELECT THE GYROS.

Page 153

006246,000790: 06,2603           12227                           TCF      NXTIFAIL                              
006247,000791: 

Page 154

006249,000793:                                                                                                  #  PROGRAM NAME:  IMUOP.
006250,000794: 
006251,000795:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM PROCESSES CHANGES IN THE ISS OPERATE DISCRETE, BIT 9 OF CHANNEL 30.
006252,000796:                                                                                                  #  IF THE INBIT CHANGES TO 0, INDICATING ISS ON, IMUOP GENERALLY SETS BIT 7 OF IMODES30 TO 1 TO REQUEST ISS
006253,000797:                                                                                                  #  INITIALIZATION VIA TNONTEST.  AN EXCEPTION IS DURING A FAILED ISS DELAY DURING WHICH BIT 2 OF IMODES30 IS SET
006254,000798:                                                                                                  #  TO 1 AND NO FURTHER INITIALIZATION IS REQUIRED.  WHEN THE INBIT CHANGES TO 1, INDICATING ISS OFF, IMUSEFLG IS
006255,000799:                                                                                                  #  TESTED TO SEE IF ANY PROGRAM WAS USING THE ISS.  IF SO, PROGRAM ALARM 00214 IS ISSUED.
006256,000800: 
006257,000801:                                                                                                  #  CALLING SEQUENCE:  BY IMUMON WHEN BIT 9 OF CHANNEL 30 CHANGES.
006258,000802: 
006259,000803:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006260,000804: 
006261,000805:                                                                                                  #  SUBROUTINES CALLED:  ALARM, IF ISS IS TURNED OFF WHILE IN USE.
006262,000806: 
006263,000807:                                                                                                  #  ERASABLE INITIALIZATION:  ON FRESH START AND RESTART, BIT 9 OF IMODES30 IS SET TO 1 EXCEPT WHEN THE GIMBAL LOCK
006264,000808:                                                                                                  #  LAMP IS ON, IN WHICH CASE IT IS SET TO 0.  THIS PREVENTS ICDU ZERO BY TNONTEST WITH THE ISS IN GIMBAL LOCK.
006265,000809: 
006266,000810:                                                                                                  #  ALARMS:  PROGRAM ALARM 00214 IF THE ISS IS TURNED OFF WHILE IN USE.
006267,000811: 
006268,000812:                                                                                                  #  EXIT:  NXTIFAIL.
006269,000813: 
006270,000814:                                                                                                  #  OUTPUT:  ISS INITIALIZATION REQUEST (IMODES30 BIT 7) OR PROGRAM ALARM 00214.
006271,000815: 
006272,000816: 06,2604           00006        IMUOP              EXTEND                                         #  IF OPERATE JUST ON, WAIT 1 SAMPLE.
006273,000817: 06,2605           12625                           BZF      IMUOP2                                
006274,000818: 
006275,000819: 06,2606           41321                           CS       IMODES33                              #  DISABLE DAP
006276,000820: 06,2607           75012                           MASK     BIT6                                  
006277,000821: 06,2610           27321                           ADS      IMODES33                              
006278,000822: 
006279,000823: 06,2611           04740                           TC       IBNKCALL                              #  KNOCK DOWN TRACK, REFSMMAT, DRIFT FLAGS
006280,000824: 06,2612           17060                           CADR     RNDREFDR                              
006281,000825: 
006282,000826: 06,2613           42757                           CS       BITS7&8                               #  KNOCK DOWN RENDEVOUS, IMUUSE FLAGS
006283,000827: 06,2614           70074                           MASK     STATE                                 
006284,000828: 06,2615           56074                           XCH      STATE                                 #  IF GOING OFF, ALARM IF PROG USING IMU
006285,000829: 06,2616           40000                           COM                                            
006286,000830: 06,2617           75010                           MASK     IMUSEFLG                              
006287,000831: 06,2620           10000                           CCS      A                                     
006288,000832: 06,2621           12227                           TCF      NXTIFAIL                              
006289,000833: 
006290,000834: 06,2622           05650                           TC       ALARM                                 
006291,000835: 06,2623           00214                           OCT      214                                   
006292,000836: 06,2624           12227                           TCF      NXTIFAIL                              
006293,000837: 
006294,000838: 06,2625           35016        IMUOP2             CAF      BIT2                                  #  SEE IF FAILED ISS TURN-ON SEQ IN PROG.
006295,000839: 06,2626           71320                           MASK     IMODES30                              
006296,000840: 06,2627           10000                           CCS      A                                     
006297,000841: 06,2630           12227                           TCF      NXTIFAIL                              #  IF SO, DONT PROCESS UNTIL PRESENT 90
006298,000842: 06,2631           12551                           TCF      ITURNON2                              #  SECONDS EXPIRES.
006299,000843: 

Page 155

006301,000845:                                                                                                  #  PROGRAM NAME:  PIPFAIL
006302,000846: 
006303,000847:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM PROCESSES CHANGES OF BIT 13 OF CHANNEL 33, PIPA FAIL.  IT SETS BIT 10 OF
006304,000848:                                                                                                  #  IMODES30 TO AGREE.  IT CALLS SETISSW IN CASE A PIPA FAIL NECESSITATES AN ISS WARNING.  IF NOT, I.E., IMODES30
006305,000849:                                                                                                  #  BIT 1 = 1, AND A PIPA FAIL IS PRESENT AND THE ISS IS NOT BEING INITIALIZED, PROGRAM ALARM 00212 IS ISSUED.
006306,000850: 
006307,000851:                                                                                                  #  CALLING SEQUENCE:  BY C33TEST ON CHANGES OF CHANNEL 33 BIT 13.
006308,000852: 
006309,000853:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006310,000854: 
006311,000855:                                                                                                  #  SUBROUTINES CALLED:  1) SETISSW, AND 2) ALARM (SEE FUNCTIONAL DESCRIPTION).
006312,000856: 
006313,000857:                                                                                                  #  ERASABLE INITIALIZATION:  SEE IMUMON FOR INITIALIZATION OF IMODES30.  THE RELAVANT BITS ARE 5, 7, 8, 9, AND 10.
006314,000858: 
006315,000859:                                                                                                  #  ALARMS:  PROGRAM ALARM 00212 IF PIPA FAIL IS PRESENT BUT NEITHER ISS WARNING IS TO BE ISSUED NOR THE ISS IS
006316,000860:                                                                                                  #  BEING INITIALIZED.
006317,000861: 
006318,000862:                                                                                                  #  EXIT:  NXTFL33.
006319,000863: 
006320,000864:                                                                                                  #  OUTPUT:  PROGRAM ALARM 00212 AND ISS WARNING MAINTENANCE.
006321,000865: 
006322,000866: 06,2632           10000        PIPFAIL            CCS      A                                     #  SET BIT10 IN IMODES30 SO ALL ISS WARNING
006323,000867: 06,2633           35006                           CAF      BIT10                                 #  INFO IS IN ONE REGISTER.
006324,000868: 06,2634           57320                           XCH      IMODES30                              
006325,000869: 06,2635           72763                           MASK     -BIT10                                
006326,000870: 06,2636           27320                           ADS      IMODES30                              
006327,000871: 
006328,000872: 06,2637           02665                           TC       SETISSW                               
006329,000873: 
006330,000874: 06,2640           41320                           CS       IMODES30                              #  IF PIP FAIL DOESNT LIGHT ISS WARNING, DO
006331,000875: 06,2641           75017                           MASK     BIT1                                  #  A PROGRAM ALARM IF IMU OPERATING BUT NOT
006332,000876: 06,2642           10000                           CCS      A                                     #  CAGED OR BEING TURNED ON.
006333,000877: 06,2643           12425                           TCF      NXTFL33                               
006334,000878: 
006335,000879: 06,2644           31320                           CA       IMODES30                              
006336,000880: 06,2645           72760                           MASK     OCT1720                               
006337,000881: 06,2646           10000                           CCS      A                                     
006338,000882: 06,2647           12425                           TCF      NXTFL33                               #  ABOVE CONDITION NOT MET.
006339,000883: 
006340,000884: 06,2650           05650                           TC       ALARM                                 
006341,000885: 06,2651           00212                           OCT      212                                   
006342,000886: 06,2652           12425                           TCF      NXTFL33                               
006343,000887: 

Page 156

006345,000889:                                                                                                  #  PROGRAM NAMES:  DNTMFAST, UPTMFAST
006346,000890: 
006347,000891:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THESE PROGRAMS PROCESS CHANGES OF BITS 12 AND 11 OF CHANNEL 33.  IF A BIT CHANGES TO A
006348,000892:                                                                                                  #  0, A PROGRAM ALARM IS ISSUED.  THE ALARMS ARE:
006349,000893: 
006350,000894:                                                                                                  #        BIT     ALARM   CAUSE
006351,000895:                                                                                                  #        ---     -----   -----
006352,000896:                                                                                                  #         12     01105   DOWNLINK TOO FAST
006353,000897:                                                                                                  #         11     01106   UPLINK TOO FAST
006354,000898: 
006355,000899:                                                                                                  #  CALLING SEQUENCE:  BY C33TEST ON A BIT CHANGE.
006356,000900: 
006357,000901:                                                                                                  #  SUBROUTINES CALLED:  ALARM, IF A BIT CHANGES TO A 0.
006358,000902: 
006359,000903:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START OR RESTART, BITS 12 AND 11 OF IMODES33 ARE SET TO 1.
006360,000904: 
006361,000905:                                                                                                  #  ALARMS:  SEE FUNCTIONAL DESCRIPTION.
006362,000906: 
006363,000907:                                                                                                  #  EXIT:  NXTFL33.
006364,000908: 
006365,000909:                                                                                                  #  OUTPUT:  PROGRAM ALARM ON A BIT CHANGE TO 0.
006366,000910: 
006367,000911: 06,2653           10000        DNTMFAST           CCS      A                                     #  DO PROG ALARM IF TM TOO FAST.
006368,000912: 06,2654           12425                           TCF      NXTFL33                               
006369,000913: 
006370,000914: 06,2655           05650                           TC       ALARM                                 
006371,000915: 06,2656           01105                           OCT      1105                                  
006372,000916: 06,2657           12425                           TCF      NXTFL33                               
006373,000917: 
006374,000918: 06,2660           10000        UPTMFAST           CCS      A                                     #  SAME AS DNLINK TOO FAST WITH DIFFERENT
006375,000919: 06,2661           12425                           TCF      NXTFL33                               #  ALARM CODE.
006376,000920: 
006377,000921: 06,2662           05650                           TC       ALARM                                 
006378,000922: 06,2663           01106                           OCT      1106                                  
006379,000923: 06,2664           12425                           TCF      NXTFL33                               
006380,000924: 

Page 157

006382,000926:                                                                                                  #  PROGRAM NAME:  SETISSW
006383,000927: 
006384,000928:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM TURNS THE ISS WARNING LAMP ON AND OFF (CHANNEL 11 BIT 1 = 1 FOR ON,
006385,000929:                                                                                                  #  0 FOR OFF) DEPENDING ON THE STATUS OF IMODES30 BITS 13 (IMU FAIL) AND 4 (INHIBIT IMU FAIL), 12 (ICDU FAIL) AND
006386,000930:                                                                                                  #  3 (INHIBIT ICDU FAIL), AND 10 (PIPA FAIL) AND 1 (INHIBIT PIPA FAIL).  THE LAMP IS LEFT ON IF A LAMP TEST IS IN
006387,000931:                                                                                                  #  PROGRESS.
006388,000932: 
006389,000933:                                                                                                  #  CALLING SEQUENCE:  CALLED BY IMUMON ON CHANGES TO IMU FAIL AND ICDU FAIL.  CALLED BY IFAILOK AND PFAILOK UPON
006390,000934:                                                                                                  #  REMOVAL OF THE FAIL INHIBITS.  CALLED BY PIPFAIL WHEN THE PIPA FAIL DISCRETE CHANGES.  IT IS CALLED BY PIPUSE
006391,000935:                                                                                                  #  SINCE THE PIPA FAIL PROGRAM ALARM MAY NECESSITATE AN ISS WARNING, AND LIKEWISE BY PIPFREE WHEN THE ALARM DEPARTS
006392,000936:                                                                                                  #  AND IT IS CALLED BY IMUZERO3 AND ISSUP AFTER THE FAIL INHIBITS HAVE BEEN REMOVED.
006393,000937: 
006394,000938:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006395,000939: 
006396,000940:                                                                                                  #  SUBROUTINES CALLED:  NONE.
006397,000941: 
006398,000942:                                                                                                  #  ERASABLE INITIALIZATION:
006399,000943: 
006400,000944:                                                                                                  #        1) IMODES30 - SEE IMUMON.
006401,000945:                                                                                                  #        2) IMODES33 BIT 1 = 0 (LAMP TEST NOT IN PROGRESS).
006402,000946: 
006403,000947:                                                                                                  #  ALARMS:  ISS WARNING.
006404,000948: 
006405,000949:                                                                                                  #  EXIT: VIA Q.
006406,000950: 
006407,000951:                                                                                                  #  OUTPUT: ISS WARNING LAMP SET PROPERLY.
006408,000952: 
006409,000953: 06,2665           35025        SETISSW            CAF      OCT15                                 #  SET ISS WARNING USING THE FAIL BITS IN
006410,000954: 06,2666           71320                           MASK     IMODES30                              #  BITS 13, 12, AND 10 OF IMODES30 AND THE
006411,000955: 06,2667           00006                           EXTEND                                         #  FAILURE INHIBIT BITS IN POSITIONS
006412,000956: 06,2670           75006                           MP       BIT10                                 #  4, 3, AND 1.
006413,000957: 06,2671           31320                           CA       IMODES30                              
006414,000958: 06,2672           00006                           EXTEND                                         
006415,000959: 06,2673           04001                           ROR      LCHAN                                 #  0 INDICATES FAILURE.
006416,000960: 06,2674           40000                           COM                                            
006417,000961: 06,2675           75067                           MASK     OCT15000                              
006418,000962: 06,2676           10000                           CCS      A                                     
006419,000963: 06,2677           12710                           TCF      ISSWON                                #  FAILURE.
006420,000964: 
006421,000965: 06,2700           35017        ISSWOFF            CAF      BIT1                                  #  DONT TURN OFF ISS WARNING IF LAMP TEST
006422,000966: 06,2701           71321                           MASK     IMODES33                              #  IN PROGRESS.
006423,000967: 06,2702           10000                           CCS      A                                     
006424,000968: 06,2703           00002                           TC       Q                                     
006425,000969: 
006426,000970: 06,2704           45017                           CS       BIT1                                  
006427,000971: 06,2705           00006                           EXTEND                                         
006428,000972: 06,2706           03011                           WAND     DSALMOUT                              #  TURN OFF ISS WARNING
006429,000973: 06,2707           00002                           TC       Q                                     
006430,000974: 
006431,000975: 06,2710           00006        ISSWON             EXTEND                                         

Page 158

006433,000977: 06,2711           22066                           QXCH     ITEMP6                                
006434,000978: 06,2712           05764                           TC       VARALARM                              #  TELL EVERYONE WHAT CAUSED THE ISS WARNING
006435,000979: 06,2713           35017                           CAF      BIT1                                  
006436,000980: 06,2714           00006                           EXTEND                                         
006437,000981: 06,2715           05011                           WOR      DSALMOUT                              #  TURN ON ISS WARNING
006438,000982: 06,2716           00066                           TC       ITEMP6                                
006439,000983: 
006440,000984: 06,2717           47703        CAGESUB            CS       BIT15+6                               #  SET OUTBITS + INTERNAL FLAGS FOR
006441,000985: 06,2720           00006                           EXTEND                                         #  SYSTEM TURN-ON OR CAGE.  DISABLE THE
006442,000986: 06,2721           03012                           WAND     CHAN12                                #  ERROR COUNTER AND REMOVE IMU DELAY COMP.
006443,000987: 06,2722           35027                           CAF      BITS4&5                               #  SEND ZERO AND COARSE.
006444,000988: 06,2723           00006                           EXTEND                                         
006445,000989: 06,2724           05012                           WOR      CHAN12                                
006446,000990: 
006447,000991: 06,2725           41036        CAGESUB1           CS       DSPTAB     +11D                       #  TURN ON NO ATT LAMP
006448,000992: 06,2726           72753                           MASK     OC40010                               
006449,000993: 06,2727           27036                           ADS      DSPTAB     +11D                       
006450,000994: 
006451,000995: 06,2730           41320        CAGESUB2           CS       IMODES30                              #  SET FLAGS TO INDICATE CAGING OR TURN-ON
006452,000996: 06,2731           72755                           MASK     OCT75                                 #  AND INHIBIT ALL ISS WARNING INFO
006453,000997: 06,2732           27320                           ADS      IMODES30                              
006454,000998: 
006455,000999: 06,2733           41321                           CS       IMODES33                              #  DISABLE DAP AUTO AND HOLD MODES
006456,001000: 06,2734           75012                           MASK     BIT6                                  
006457,001001: 06,2735           27321                           ADS      IMODES33                              
006458,001002: 
006459,001003: 06,2736           00002                           TC       Q                                     
006460,001004: 
006461,001005: 06,2737  06,2665               IMUFAIL            EQUALS   SETISSW                               
006462,001006: 06,2737  06,2665               ICDUFAIL           EQUALS   SETISSW                               
006463,001007: 

Page 159

006465,001009:                                                                                                  #  JUMP TABLES AND CONSTANTS.
006466,001010: 
006467,001011: 06,2737           12526        IFAILJMP           TCF      ITURNON                               #  CHANNEL 30 DISPATCH.
006468,001012: 06,2740           12665                           TCF      IMUFAIL                               
006469,001013: 06,2741           12665                           TCF      ICDUFAIL                              
006470,001014: 06,2742           12555                           TCF      IMUCAGE                               
006471,001015: 06,2743           76400        30RDMSK            OCT      76400                                 #  (BIT 10 NOT SAMPLED HERE).
006472,001016: 06,2744           12604                           TCF      IMUOP                                 
006473,001017: 
006474,001018: 06,2745           12632        C33JMP             TCF      PIPFAIL                               #  CHANNEL 33 DISPATCH.
006475,001019: 06,2746           12653                           TCF      DNTMFAST                              
006476,001020: 06,2747           12660                           TCF      UPTMFAST                              
006477,001021: 
006478,001022:                                                                                                  #  SUBROUTINE TO SKIP IF LAMP TEST NOT IN PROGRESS.
006479,001023: 
006480,001024: 06,2750           41321        LAMPTEST           CS       IMODES33                              #  BIT 1 OF IMODES33 = 1 IF LAMP TEST IN
006481,001025: 06,2751           75017                           MASK     BIT1                                  #  PROGRESS.
006482,001026: 06,2752           13065                           TCF      ZOPFIN3                               
006483,001027: 
006484,001028: 06,2753     5070               33RDMSK            EQUALS   PRIO16                                
006485,001029: 06,2753           40010        OC40010            OCT      40010                                 
006486,001030: 06,2754           00054        OCT54              OCT      54                                    
006487,001031: 06,2755           00075        OCT75              OCT      75                                    
006488,001032: 06,2756           00272        OCT272             OCT      00272                                 
006489,001033: 06,2757           00300        BITS7&8            OCT      300                                   
006490,001034: 06,2760           01720        OCT1720            OCT      1720                                  
006491,001035: 06,2761           00740        OCT740             OCT      00740                                 
006492,001036: 06,2762     5067               OCT15000           EQUALS   PRIO15                                
006493,001037: 06,2762           77000        OCT77000           OCT      77000                                 
006494,001038: 06,2763           76777        -BIT10             OCT      -1000                                 
006495,001039: 
006496,001040: 06,2764           21450        90SECS             DEC      9000       B-14                       
006497,001041: 06,2765     5771               120MS              =        OCT14                                 #  (DEC12)
006498,001042: 06,2765     5333               GLOCKOK            EQUALS   RESUME                                
006499,001043: 

Page 160

006501,001045:                                                                                                  #  OPTICS MONITORING AND ZERO ROUTINES
006502,001046: 06,2765           31331        OPTMON             CA       OPTMODES                              #  MONITOR OPTICS INBITS IN CHAN 30 AND 33
006503,001047: 06,2766           00006                           EXTEND                                         
006504,001048: 06,2767           06030                           RXOR     CHAN30                                #  LOOK FOR OCDU FAIL BIT CHANGE
006505,001049: 06,2770           75011                           MASK     BIT7                                  
006506,001050: 06,2771           54070                           TS       RUPTREG1                              #  STORE CHANGE BIT
006507,001051: 06,2772           10000                           CCS      A                                     
006508,001052: 06,2773           03224                           TC       OCDUFTST                              #  PROCESS OCDUFAIL BIT CHANGE
006509,001053: 
006510,001054: 06,2774           11303        33OPTMON           CCS      OPTIND                                #  BYPASS IF TVC TAKEOVER
006511,001055: 06,2775           13001                           TCF      +4                                    
006512,001056: 06,2776           13001                           TCF      +3                                    
006513,001057: 06,2777           13001                           TCF      +2                                    
006514,001058: 06,3000           15333                           TCF      RESUME                                
006515,001059: 
006516,001060: 06,3001           31331                           CA       OPTMODES                              #  LOOK FOR OPTICS MODE SWITCH CHANGE
006517,001061: 06,3002           00006                           EXTEND                                         
006518,001062: 06,3003           06033                           RXOR     CHAN33                                
006519,001063: 06,3004           75027                           MASK     OCTHIRTY                              
006520,001064: 06,3005           26070                           ADS      RUPTREG1                              #  STORE INBIT CHANGES
006521,001065: 06,3006           23331                           LXCH     OPTMODES                              
006522,001066: 06,3007           00006                           EXTEND                                         
006523,001067: 06,3010           06001                           RXOR     LCHAN                                 
006524,001068: 06,3011           55331                           TS       OPTMODES                              #  UPDATE OPTMODES TO SHOW BIT CHANGES
006525,001069: 
006526,001070: 06,3012           40000                           COM                                            #  SAMPLE CURRENT SWITCH SETTING
006527,001071: 06,3013           75027                           MASK     OCTHIRTY                              
006528,001072: 06,3014           00006                           EXTEND                                         
006529,001073: 06,3015           13022                           BZF      SETSAMP                               #  MANUAL-SET ZERO IN SWSAMPLE
006530,001074: 
006531,001075: 06,3016           75013                           MASK     BIT5                                  #  SEE IF CSC
006532,001076: 06,3017           10000                           CCS      A                                     
006533,001077: 06,3020           03022                           TC       +2                                    #  CSC-SET SWSAMPLE POS
006534,001078: 06,3021           37716                           CAF      NEGONE                                #  ZOPTICS-SET SWSAMPLE (-1)
006535,001079: 06,3022           55314        SETSAMP            TS       SWSAMPLE                              #  CURRENT OPTICS SWITCH SETTING
006536,001080: 
006537,001081: 06,3023           11315        PROCESSW           CCS      DESOPMOD                              #  BRANCH ON PREVIOUS SETTING
006538,001082: 06,3024           03125                           TC       CSCDES                                #  CSC
006539,001083: 06,3025           03077                           TC       MANUDES                               #  MANUAL
006540,001084: 06,3026           03027                           TC       ZOPTDES                               #  ZERO OPTICS

Page 161

006542,001086: 06,3027           11314        ZOPTDES            CCS      SWSAMPLE                              #  IS SWITCH STILL AT ZOPTICS
006543,001087: 06,3030           03047                           TC       ZTOCSC                                #  NOW AT CSC
006544,001088: 06,3031           03037                           TC       ZTOMAN                                #  MANUAL
006545,001089: 06,3032           03057                           TC       ZOPFINI                               #  ZOPTICS-SEE IF ZOPT PROCESSING
006546,001090: 06,3033           03154                           TC       SETDESMD                              #  ZOPT NOT PROCESSING-NO ACTION
006547,001091: 
006548,001092: 06,3034           11317                           CCS      ZOPTCNT                               #  ZOPT PROCESSING-CHECK COUNTER
006549,001093: 06,3035           03153                           TC       SETCNT                                #  32 SAMPLE NOT FINISHED-SET COUNTER
006550,001094: 06,3036           03157                           TC       SETZOEND                              #  32 SAMPLE WAIT COMPLETED-SET UP ZOP END
006551,001095: 
006552,001096: 06,3037           03057        ZTOMAN             TC       ZOPFINI                               #  ZOP TO MANUAL-IS ZOPT DONE
006553,001097: 06,3040           03154                           TC       SETDESMD                              #  YES-NORMAL EXIT
006554,001098: 
006555,001099: 06,3041           05650        ZOPALARM           TC       ALARM                                 #  ALARM-SWITCHED ALTERED WHILE ZOPTICS
006556,001100: 06,3042           00116                           OCT      00116                                 
006557,001101: 06,3043           35024                           CAF      OCT13                                 #  PROCESSING-SET RETURN OPTION
006558,001102: 06,3044           55316                           TS       WTOPTION                              
006559,001103: 
006560,001104: 06,3045           03070                           TC       CANZOPT                               #  CANCEL ZOPT
006561,001105: 
006562,001106: 06,3046           03154                           TC       SETDESMD                              
006563,001107: 
006564,001108: 06,3047           03057        ZTOCSC             TC       ZOPFINI                               #  SEE IF ZOPT PROCESSING
006565,001109: 06,3050           03115                           TC       MANTOCSC   +3                         #  NO-CHECK RETURN TO COARS OPT
006566,001110: 06,3051           05650                           TC       ALARM                                 #  ZOPT PROCESSING-ALARM
006567,001111: 06,3052           00116                           OCT      00116                                 
006568,001112: 06,3053           03070                           TC       CANZOPT                               #  CANCEL ZOPT
006569,001113: 06,3054           03112                           TC       MANTOCSC                              #  ZERO CNT-LOOK FOR COARS OPT RETURN
006570,001114: 
006571,001115: 06,3055           35007        COARSLOK           CAF      BIT9                                  #  IF COARS OPT SINCE FSTART GO TO L+2
006572,001116: 06,3056           13064                           TCF      ZOPFIN2                               #  IF NOT GO TO L+1
006573,001117: 06,3057           35017        ZOPFINI            CAF      BIT1                                  #  SEE IF END ZOPT TASK WORKING
006574,001118: 06,3060           71331                           MASK     OPTMODES                              
006575,001119: 06,3061           10000                           CCS      A                                     
006576,001120: 06,3062           05333                           TC       RESUME                                #  ZOPT TASK WORKING-WAIT ONE SAMPLE PERIOD
006577,001121: 
006578,001122: 06,3063           35015                           CAF      BIT3                                  #  TEST IF ZOPTICS PROCESSING
006579,001123: 06,3064           71331        ZOPFIN2            MASK     OPTMODES                              #  RETURNS TO L+1 PROCESSING AND
006580,001124: 06,3065           10000        ZOPFIN3            CCS      A                                     
006581,001125: 06,3066           24002                           INCR     Q                                     #  L+2 IF NOT
006582,001126: 06,3067           00002                           TC       Q                                     
006583,001127: 
006584,001128: 06,3070           46211        CANZOPT            CS       SIX                                   #  CANCEL ZERO OPTICS
006585,001129: 06,3071           71331                           MASK     OPTMODES                              #  ZERO ZOPT PROCESSING BIT-ENABLE OCDUFAIL
006586,001130: 06,3072           55331                           TS       OPTMODES                              
006587,001131: 06,3073           45017                           CS       BIT1                                  #  MAKE SURE ZERO OCDU IS OFF
006588,001132: 06,3074           00006                           EXTEND                                         
006589,001133: 06,3075           03012                           WAND     CHAN12                                
006590,001134: 06,3076           00002                           TC       Q                                     
006591,001135: 

Page 162

006593,001137: 06,3077           11314        MANUDES            CCS      SWSAMPLE                              #  SEE IF SWITCH STILL IN MANUAL MODE
006594,001138: 06,3100           03112                           TC       MANTOCSC                              #  NOW AT CSC
006595,001139: 06,3101           03107                           TC       MANTOMAN                              #  STILL MANUAL
006596,001140: 06,3102           11316                           CCS      WTOPTION                              #  ZOPTICS-LOOK AT ZOPTICS RETURN OPTION
006597,001141: 06,3103           03105                           TC       +2                                    #  5 SEC RETURN GOOD-CONTINUE ZOPTICS
006598,001142: 06,3104           03151                           TC       OPTZERO                               #  ZOPTICS MUST START ANEW
006599,001143: 
006600,001144: 06,3105           03216                           TC       INITZOPT                              #  SHOW ZERO OPTICS PROCESSING
006601,001145: 06,3106           03154                           TC       SETDESMD                              #  NORMAL EXIT
006602,001146: 
006603,001147: 06,3107           11316        MANTOMAN           CCS      WTOPTION                              #  DECREMENT RETURN OPTION TIME
006604,001148: 06,3110           55316                           TS       WTOPTION                              
006605,001149: 06,3111           03154                           TC       SETDESMD                              
006606,001150: 
006607,001151: 06,3112           35021        MANTOCSC           CAF      ZERO                                  #  CANCEL ZOPT RETURN OPTION IF SET
006608,001152: 06,3113           55316                           TS       WTOPTION                              
006609,001153: 06,3114           55317                           TS       ZOPTCNT                               
006610,001154: 
006611,001155: 06,3115           03055                           TC       COARSLOK                              #  CHECK FOR COARS OPT RETURN
006612,001156: 06,3116           03154                           TC       SETDESMD                              #  NO COARS TASK-NO ACTION
006613,001157: 
006614,001158: 06,3117           35017                           CAF      ONE                                   #  SET COARS OPT WORKING
006615,001159: 06,3120           55303                           TS       OPTIND                                
006616,001160: 06,3121           35016                           CAF      BIT2                                  #  ENABLE OPTICS CDU ERROR CNTS
006617,001161: 06,3122           00006                           EXTEND                                         
006618,001162: 06,3123           05012                           WOR      CHAN12                                
006619,001163: 
006620,001164: 06,3124           03154                           TC       SETDESMD                              
006621,001165: 
006622,001166: 06,3125           11314        CSCDES             CCS      SWSAMPLE                              #  SEE IF SWITCH STILL AT CSC
006623,001167: 06,3126           03154                           TC       SETDESMD                              #  STILL AT CSC
006624,001168: 06,3127           03133                           TC       CSCTOMAN                              #  MANUAL
006625,001169: 06,3130           35012        CSCTOZOP           CAF      OCT40                                 #  ZOPTICS-INITIALIZE FOR ZOPT
006626,001170: 06,3131           55317                           TS       ZOPTCNT                               
006627,001171: 06,3132           03216                           TC       INITZOPT                              
006628,001172: 
006629,001173: 06,3133           11303        CSCTOMAN           CCS      OPTIND                                #  SEE IF COARS WORKING
006630,001174: 06,3134           03140                           TC       CANCOARS                              #  COARS WORKING-SWITCH NOT CSC-KILL COARS
006631,001175: 06,3135           03140                           TC       CANCOARS                              
006632,001176: 06,3136           03137                           TC       +1                                    #  NO COARS-NORMAL EXIT
006633,001177: 06,3137           03154                           TC       SETDESMD                              

Page 163

006635,001179: 06,3140           37716        CANCOARS           CA       NEGONE                                
006636,001180: 06,3141           55303                           TS       OPTIND                                #  SET OPTIND (-1) TO SHOW NOT WORKING
006637,001181: 06,3142           45016                           CS       BIT2                                  #  DISABLE OCDU ERR CNTS
006638,001182: 06,3143           00006                           EXTEND                                         
006639,001183: 06,3144           03012                           WAND     CHAN12                                
006640,001184: 06,3145           41331                           CS       OPTMODES                              #  SET RETURN-TO-COARS BIT
006641,001185: 06,3146           75007                           MASK     BIT9                                  
006642,001186: 06,3147           27331                           ADS      OPTMODES                              
006643,001187: 
006644,001188: 06,3150           03154                           TC       SETDESMD                              
006645,001189: 06,3151           03216        OPTZERO            TC       INITZOPT                              #  INITIALIZE ZERO OPTICS
006646,001190: 
006647,001191: 06,3152           35012                           CA       OCT40                                 #  SET UP 32 SAMPLE WAIT
006648,001192: 06,3153           55317        SETCNT             TS       ZOPTCNT                               
006649,001193: 06,3154           31314        SETDESMD           CA       SWSAMPLE                              #  SET CURRENT SWITCH INDICATION-RESUME
006650,001194: 06,3155           55315                           TS       DESOPMOD                              
006651,001195: 06,3156           05333                           TC       RESUME                                
006652,001196: 
006653,001197: 06,3157           35017        SETZOEND           CAF      BIT1                                  #  SEND ZERO OPTICS CDU
006654,001198: 06,3160           00006                           EXTEND                                         
006655,001199: 06,3161           05012                           WOR      CHAN12                                
006656,001200: 06,3162           34112                           CA       200MS                                 #  HOLD ZERO CDU FOR 200 MS
006657,001201: 06,3163           05245                           TC       WAITLIST                              
006658,001202: 06,3164     1331                                  EBANK=   OPTMODES                              
006659,001203: 06,3164           03172 14062                     2CADR    ENDZOPT                               
006660,001204: 
006661,001205: 06,3166           41331                           CS       OPTMODES                              #  SHOW ZOPTICS TASK WORKING
006662,001206: 06,3167           75017                           MASK     BIT1                                  
006663,001207: 06,3170           27331                           ADS      OPTMODES                              
006664,001208: 
006665,001209: 06,3171           03154                           TC       SETDESMD                              
006666,001210: 
006667,001211: 06,3172           03210        ENDZOPT            TC       ZEROPCDU                              #  ZERO OCDU COUNTERS
006668,001212: 06,3173           45017                           CS       BIT1                                  #  TURN OFF ZERO OCDU
006669,001213: 06,3174           00006                           EXTEND                                         
006670,001214: 06,3175           03012                           WAND     CHAN12                                
006671,001215: 06,3176           34112                           CAF      200MS                                 #  DELAY 200MS FOR CDUS TO RESYNCHRONIZE
006672,001216: 06,3177           05272                           TC       VARDELAY                              
006673,001217: 
006674,001218: 06,3200           41331                           CS       OPTMODES                              #  SHOW ZOPTICS SINCE LAST FRESH START
006675,001219: 06,3201           75006                           MASK     BIT10                                 #        OR RESTART
006676,001220: 06,3202           27331                           ADS      OPTMODES                              
006677,001221: 
006678,001222: 06,3203           45023                           CS       SEVEN                                 #  ENABLE OCDUFAIL-SHOW OPTICS COMPLETE
006679,001223: 06,3204           71331                           MASK     OPTMODES                              
006680,001224: 06,3205           55331                           TS       OPTMODES                              
006681,001225: 
006682,001226: 06,3206           03224                           TC       OCDUFTST                              #  CHECK OCDU FAIL BIT AFTER ENABLE

Page 164

006684,001228: 06,3207           05324                           TC       TASKOVER                              
006685,001229: 
006686,001230: 06,3210           35021        ZEROPCDU           CAF      ZERO                                  
006687,001231: 06,3211           54036                           TS       CDUS                                  #  ZERO IN CDUS,-20 IN CDUT
006688,001232: 06,3212           55307                           TS       ZONE                                  #  INITIALIZE SHAFT MONITOR ZONE
006689,001233: 06,3213           43261                           CS       20DEGS                                
006690,001234: 06,3214           54035                           TS       CDUT                                  
006691,001235: 06,3215           00002                           TC       Q                                     
006692,001236: 
006693,001237: 06,3216           35021        INITZOPT           CAF      ZERO                                  #  INITIALIZE ZOPTICS-INHIBIT OCDUFAIL
006694,001238: 06,3217           55316                           TS       WTOPTION                              #  AND SHOW OPTICS PROCESSING
006695,001239: 06,3220           41331                           CS       OPTMODES                              #  SET ZERO OPTICS PROCESSING
006696,001240: 06,3221           76211                           MASK     SIX                                   #        OPTICS CDU FAIL INHIBITED
006697,001241: 06,3222           27331                           ADS      OPTMODES                              
006698,001242: 06,3223           00002                           TC       Q                                     
006699,001243: 

Page 165

006701,001245: 06,3224           35011        OCDUFTST           CAF      BIT7                                  #  SEE IF OCDUFAIL ON OR OFF
006702,001246: 06,3225           00006                           EXTEND                                         
006703,001247: 06,3226           02030                           RAND     CHAN30                                
006704,001248: 06,3227           10000                           CCS      A                                     
006705,001249: 06,3230           13252                           TCF      OPFAILOF                              #  OCDUFAIL LIGHT OFF
006706,001250: 
006707,001251: 06,3231           35016                           CAF      BIT2                                  #  OCDUFAIL LIGHT ON UNLESS INHIBITED
006708,001252: 06,3232           71331                           MASK     OPTMODES                              
006709,001253: 06,3233           10000                           CCS      A                                     
006710,001254: 06,3234           00002                           TC       Q                                     #  OCDUFAIL INHIBITED
006711,001255: 
006712,001256: 06,3235           35010        OPFAILON           CAF      BIT8                                  #  ON BIT
006713,001257: 06,3236           61036                           AD       DSPTAB     +11D                       
006714,001258: 06,3237           75010                           MASK     BIT8                                  
006715,001259: 06,3240           00006        SETOFF             EXTEND                                         
006716,001260: 06,3241           16711                           BZF      TCQ                                   #  NO CHANGE
006717,001261: 
006718,001262: 06,3242           54001                           TS       L                                     
006719,001263: 06,3243           31036                           CA       DSPTAB     +11D                       
006720,001264: 06,3244           00006                           EXTEND                                         
006721,001265: 06,3245           06001                           RXOR     LCHAN                                 
006722,001266: 06,3246           74777                           MASK     POSMAX                                
006723,001267: 06,3247           65001                           AD       BIT15                                 #  SHOW ACTION WANTED
006724,001268: 06,3250           55036                           TS       DSPTAB     +11D                       
006725,001269: 06,3251           00002                           TC       Q                                     
006726,001270: 
006727,001271: 06,3252           35017        OPFAILOF           CAF      BIT1                                  #  DONT TURN OFF IF LAMP TEST
006728,001272: 06,3253           71321                           MASK     IMODES33                              
006729,001273: 06,3254           10000                           CCS      A                                     
006730,001274: 06,3255           00002                           TC       Q                                     #  LAMP TEST IN PROGRESS
006731,001275: 
006732,001276: 06,3256           35010                           CAF      BIT8                                  #  TURN OFF OCDUFAIL LIGHT
006733,001277: 06,3257           71036                           MASK     DSPTAB     +11D                       
006734,001278: 06,3260           13240                           TCF      SETOFF                                
006735,001279: 
006736,001280: 06,3261     5024               OCT13              =        ELEVEN                                
006737,001281: 06,3261     5027               OCTHIRTY           EQUALS   BITS4&5                               
006738,001282: 06,3261           16037        20DEGS             DEC      7199       B-14                       
006739,001283: 06,3262     5012               OCT40              EQUALS   BIT6                                  
006740,001284: 06,3262     4112               200MS              EQUALS   OCT24                                 
006741,001285: 

Page 166

006743,001287:                                                                                                  #  OPTICS CDU DRIVING PROGRAM
006744,001288: 
006745,001289: 10,2000                                           BANK     10                                    
006746,001290: 10,2000                                           SETLOC   OPTDRV                                
006747,001291: 10,2000                                           BANK                                           
006748,001292: 10,2000                                           COUNT*   $$/SXT                                
006749,001293: 
006750,001294:                                                                                                  #  SHAFT STOP MONITOR-ZONE UPDATE
006751,001295: 
006752,001296: 10,2000           30036        OPTDRIVE           CA       CDUS                                  #  GRAB OPTIC SHAFT CDU
006753,001297: 10,2001           54001                           TS       L                                     
006754,001298: 10,2002           10000                           CCS      A                                     #  GET ABS(CDUS)
006755,001299: 10,2003           67707                           AD       13,14,15                              
006756,001300: 10,2004           12006                           TCF      +2                                    #  ABS(CDUS) - 45 DEG
006757,001301: 10,2005           12003                           TCF      -2                                    
006758,001302: 10,2006           00006                           EXTEND                                         
006759,001303: 10,2007           62016                           BZMF     OZONE                                 #  LESS THAN 45 DEG-SET ZONE 0
006760,001304: 10,2010           31307                           CA       ZONE                                  #  IF ZONE ZERO, CHANGE TO + OR - OTHERWISE
006761,001305: 10,2011           00006                           EXTEND                                         #  DONT MESS WITH ZONE
006762,001306: 10,2012           12014                           BZF      +2                                    
006763,001307: 10,2013           12020                           TCF      CONTDRVE                              #  JUST CONTINUE
006764,001308: 10,2014           56001                           XCH      L                                     #  GREATER THAN 45 DEG-SET ZONE TO SIGN CDU
006765,001309: 10,2015           12017                           TCF      OZONE      +1                         
006766,001310: 10,2016           35021        OZONE              CAF      ZERO                                  #  ABS(CDUS) LESS THEN 90 DEG-ZONE ZERO
006767,001311: 10,2017           55307                           TS       ZONE                                  
006768,001312: 10,2020                                           COUNT*   $$/T4RPT                              
006769,001313: 10,2020           11303        CONTDRVE           CCS      OPTIND                                
006770,001314: 10,2021           02025                           TC       +4                                    #  WORK COARS OPTICS
006771,001315: 10,2022           02025                           TC       +3                                    #  WORK COARS OPTICS
006772,001316: 10,2023           05333                           TC       RESUME                                #  NO OPT
006773,001317: 10,2024           05333                           TC       RESUME                                #  NO OPT
006774,001318: 
006775,001319: 10,2025           31314                           CA       SWSAMPLE                              #  SEE IF SWITCH AT CMC
006776,001320: 10,2026           00006                           EXTEND                                         
006777,001321: 10,2027           65333                           BZMF     RESUME                                #  ZERO (-1)     MANUAL (+0)
006778,001322: 
006779,001323: 10,2030           35006                           CAF      BIT10                                 #  SEE IF OCDUS ZEROED SINCE LAST FSTART
006780,001324: 10,2031           71331                           MASK     OPTMODES                              
006781,001325: 10,2032           10000                           CCS      A                                     
006782,001326: 10,2033           02036                           TC       +3                                    
006783,001327: 10,2034           05650                           TC       ALARM                                 #  OPTICS NOT ZEROED
006784,001328: 10,2035           00120                           OCT      00120                                 
006785,001329: 
006786,001330: 10,2036           35016                           CA       BIT2                                  #  SEE IF ERR CNTS ENABLED
006787,001331: 10,2037           00006                           EXTEND                                         
006788,001332: 10,2040           02012                           RAND     CHAN12                                
006789,001333: 10,2041           00006                           EXTEND                                         
006790,001334: 10,2042           12175                           BZF      SETBIT                                #  CNTS NOT ENABLED-DO IT AND RESUME
006791,001335: 
006792,001336: 10,2043           35017                           CAF      ONE                                   #  INITIALIZE OPTIND

Page 167

006794,001338: 10,2044           55303        OPT2               TS       OPTIND                                
006795,001339: 10,2045           00006                           EXTEND                                         
006796,001340: 10,2046           12132                           BZF      TRUNCMD                               #  CHECK TRUNION COMMAND
006797,001341: 
006798,001342: 10,2047           51303        GETOPCMD           INDEX    OPTIND                                
006799,001343: 10,2050           31160                           CA       DESOPTT                               #  PICK UP DESIRED OPT ANGLE
006800,001344: 10,2051           00006                           EXTEND                                         
006801,001345: 10,2052           51303                           INDEX    OPTIND                                
006802,001346: 10,2053           20035                           MSU      CDUT                                  #  GET DIFFERENCE
006803,001347: 10,2054           00006                           EXTEND                                         
006804,001348: 10,2055           75003                           MP       BIT13                                 
006805,001349: 10,2056           56001                           XCH      L                                     
006806,001350: 10,2057           60000                           DOUBLE                                         
006807,001351: 10,2060           54061                           TS       ITEMP1                                
006808,001352: 10,2061           12063                           TCF      +2                                    #  NO OVFL
006809,001353: 
006810,001354: 10,2062           26001                           ADS      L                                     #  WITH OVFL
006811,001355: 10,2063           51303        STORCMD            INDEX    OPTIND                                
006812,001356: 10,2064           23305                           LXCH     COMMANDO                              #  STORE COMMAND
006813,001357: 10,2065           11303                           CCS      OPTIND                                
006814,001358: 10,2066           12044                           TCF      OPT2                                  #  GET NEXT COMMAND
006815,001359: 
006816,001360: 10,2067           54061                           TS       ITEMP1                                #  INITIALIZE SEND INDICATOR TO ZERO
006817,001361: 10,2070                                           COUNT*   $$/SXT                                
006818,001362: 
006819,001363:                                                                                                  #  SHAFT STOP AVOIDANCE
006820,001364: 
006821,001365: 10,2070           10036                           CCS      CDUS                                  #  IF CDUS GREATER THAN + OR - 90 DEG CHECK
006822,001366: 10,2071           65000                           AD       NEG1/2                                #  FOR POSSIBLE STOP PROBLEM
006823,001367: 10,2072           12074                           TCF      +2                                    
006824,001368: 10,2073           12071                           TCF      -2                                    
006825,001369: 10,2074           00006                           EXTEND                                         
006826,001370: 10,2075           62122                           BZMF     CMDSETUP                              #  CDUS LESS THAN 90 DEG, NO PROBLEMS
006827,001371: 
006828,001372: 10,2076           31307                           CA       ZONE                                  
006829,001373: 10,2077           00006                           EXTEND                                         
006830,001374: 10,2100           12122                           BZF      CMDSETUP                              #  ZONE=3, NORMAL COMMAND
006831,001375: 10,2101           75001                           MASK     BIT15                                 #  GRAB SIGN OF ZONE
006832,001376: 10,2102           54001                           TS       L                                     
006833,001377: 10,2103           31306                           CA       COMMANDO   +1                         
006834,001378: 10,2104           75001                           MASK     BIT15                                 #  GRAB SIGN OF SHAFT COMMAND
006835,001379: 10,2105           00006                           EXTEND                                         
006836,001380: 10,2106           06001                           RXOR     LCHAN                                 
006837,001381: 10,2107           10000                           CCS      A                                     
006838,001382: 10,2110           12122                           TCF      CMDSETUP                              #  SIGN ZONE NOT EQUAL TO SIGN COMMAND
006839,001383: 10,2111           11161                           CCS      DESOPTS                               #  SEE IF DESOPTS BETWEEN -90 AND +90
006840,001384: 10,2112           65000                           AD       NEG1/2                                
006841,001385: 10,2113           12115                           TCF      +2                                    #  ABS(DESOPTS) - 90 DEG
006842,001386: 10,2114           12112                           TCF      -2                                    
006843,001387: 10,2115           00006                           EXTEND                                         

Page 168

006845,001389: 10,2116           62120                           BZMF     +2                                    #  DESOPTS IN FIRST OR FOURTH QUAD
006846,001390: 10,2117           12122                           TCF      CMDSETUP                              
006847,001391: 10,2120           41306                           CS       COMMANDO   +1                         #  REVERSE REGULAR COMMAND
006848,001392: 10,2121           55306                           TS       COMMANDO   +1                         
006849,001393: 
006850,001394: 10,2122                                           COUNT*   $$/T4RPT                              
006851,001395: 
006852,001396: 10,2122           35017        CMDSETUP           CAF      ONE                                   #  SET OPTIND
006853,001397: 10,2123           55303                           TS       OPTIND                                
006854,001398: 10,2124           50000                           INDEX    A                                     
006855,001399: 10,2125           11305                           CCS      COMMANDO                              #  GET SIGN OF COMMAND
006856,001400: 10,2126           02144                           TC       POSOPCMD                              
006857,001401: 10,2127           02151                           TC       NEXTOPT    +1                         #  ZERO COMMAND-SKIP SEND INDICATOR
006858,001402: 10,2130           02161                           TC       NEGOPCMD                              
006859,001403: 10,2131           02151                           TC       NEXTOPT    +1                         #  ZERO COMMAND
006860,001404: 
006861,001405: 10,2132           40035        TRUNCMD            CS       CDUT                                  #  IF COMMAND GREATER THAN 45 DEG-COMMAND
006862,001406: 10,2133           61160                           AD       DESOPTT                               #  45 DEG
006863,001407: 10,2134           54002                           TS       Q                                     
006864,001408: 10,2135           02047                           TC       GETOPCMD                              #  LESS THAN 45 DEG-NORMAL OPERATION
006865,001409: 
006866,001410: 10,2136           10000                           CCS      A                                     #  GREATER THAN 45 DEG-USE OPSMAX WITH
006867,001411: 10,2137           34777                           CA       POSMAX                                #  CORRECT SIGN
006868,001412: 10,2140           02142                           TC       +2                                    
006869,001413: 10,2141           44777                           CS       POSMAX                                
006870,001414: 10,2142           54001                           TS       L                                     
006871,001415: 10,2143           02063                           TC       STORCMD                               
006872,001416: 10,2144           62202        POSOPCMD           AD       MAXPLS1                               
006873,001417: 10,2145           00006                           EXTEND                                         
006874,001418: 10,2146           62166                           BZMF     DELOPCMD                              #  COMMAND LESS THAN MAX PULSE
006875,001419: 10,2147           42201                           CS       MAXPLS                                #  GREATER THAN MAX PULSE-USE MAX PULSE
006876,001420: 
006877,001421: 10,2150           24061        NEXTOPT            INCR     ITEMP1                                #  SET SEND INDICATOR
006878,001422: 10,2151           65020                           AD       NEG0                                  #  MAKE SURE ZERO COMMAND IS -ZERO
006879,001423: 10,2152           51303                           INDEX    OPTIND                                
006880,001424: 10,2153           54053                           TS       CDUTCMD                               #  STORE PULSE IN SEND REG
006881,001425: 
006882,001426: 10,2154           11303                           CCS      OPTIND                                
006883,001427: 10,2155           02123                           TC       CMDSETUP   +1                         #  GET NEXT OPT
006884,001428: 
006885,001429: 10,2156           10061                           CCS      ITEMP1                                #  ARE ANY PULSES TO GO
006886,001430: 10,2157           12171                           TCF      SENDOCMD                              #  YES-SEND EM
006887,001431: 10,2160           05333                           TC       RESUME                                #  NO
006888,001432: 
006889,001433: 10,2161           62202        NEGOPCMD           AD       MAXPLS1                               
006890,001434: 10,2162           00006                           EXTEND                                         
006891,001435: 10,2163           62166                           BZMF     DELOPCMD                              #  LESS THAN MAX PULSE
006892,001436: 10,2164           32201                           CA       MAXPLS                                #  MAX PULSES
006893,001437: 10,2165           12150                           TCF      NEXTOPT                               

Page 169

006895,001439: 10,2166           51303        DELOPCMD           INDEX    OPTIND                                
006896,001440: 10,2167           57305                           XCH      COMMANDO                              #  SET UP SMALL COMMAND
006897,001441: 10,2170           12150                           TCF      NEXTOPT                               
006898,001442: 
006899,001443: 10,2171           35062        SENDOCMD           CAF      11,12                                 #  SEND OCDU DRIVE COMMANDS
006900,001444: 10,2172           00006                           EXTEND                                         
006901,001445: 10,2173           05014                           WOR      CHAN14                                
006902,001446: 10,2174           05333                           TC       RESUME                                
006903,001447: 
006904,001448: 10,2175           35016        SETBIT             CAF      BIT2                                  #  ENABLE OCDU ERR CNTS
006905,001449: 10,2176           00006                           EXTEND                                         
006906,001450: 10,2177           05012                           WOR      CHAN12                                
006907,001451: 10,2200           05333                           TC       RESUME                                #  START COARS NEXT TIME AROUND
006908,001452: 
006909,001453: 10,2201           77532        MAXPLS             DEC      -165       B-14                       #  WAS -80
006910,001454: 10,2202           77533        MAXPLS1            DEC      -164       B-14                       #  WAS -79
006911,001455: 10,2203     5062               11,12              EQUALS   PRIO6                                 
006912,001456: 

End of include-file T4RUPT_PROGRAM.agc.  Parent file is MAIN.agc