Source Code

These source-code files are part of a reconstructed copy of Comanche 72/3 (AKA Manche72 revision 3), the final, flown mission release of the Apollo Guidance Computer (AGC) Command Module (CM) software for Apollo 13.

The starting point was the source code of Comanche 72 (itself previously reconstructed). Comanche 72 source code was then modified by incorporating changes known from contemporary documentation to have been made between revisions 72 and 72/3. The resulting code assembles to have identical memory-bank checksums as those specified in NASA drawing 2021153G; this gives reasonably high confidence that the changes that have been made are correct. In places where ambiguity exists, this ambiguity is discussed in "## Reconstruction:" comments.

Since no contemporary listings of Comanche 72/3 are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing.

005310,000002:                                                                                                  ## Copyright:   Public domain.
005311,000003:                                                                                                  ## Filename:    T4RUPT_PROGRAM.agc
005312,000004:                                                                                                  ## Purpose:     A section of Manche72 revision 3.
005313,000005:                                                                                                  ##              It is part of the reconstructed source code for the final, flown
005314,000006:                                                                                                  ##              release of the software for the Command Module's (CM) Apollo
005315,000007:                                                                                                  ##              Guidance Computer (AGC) for Apollo 13. No original listings
005316,000008:                                                                                                  ##              of this program are available; instead, this file was recreated
005317,000009:                                                                                                  ##              from a reconstructed copy of Comanche 072. It has been adapted
005318,000010:                                                                                                  ##              such that the resulting bugger words exactly match those
005319,000011:                                                                                                  ##              specified for Manche72 revision 3 in NASA drawing 2021153G,
005320,000012:                                                                                                  ##              which gives relatively high confidence that the reconstruction
005321,000013:                                                                                                  ##              is correct.
005322,000014:                                                                                                  ## Assembler:   yaYUL
005323,000015:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
005324,000016:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
005325,000017:                                                                                                  ## Mod history: 2024-05-19 MAS  Created from Comanche 072.
005326,000018:                                                                                                  ##              2024-05-21 MAS  Added jump to bank 11 as part of PCR-984, "Avoid
005327,000019:                                                                                                  ##                              Coarse Align during Saturn".
005328,000020: 
005329,000021: 12,2000                                           BANK     12                                    
005330,000022: 06,2000                                           SETLOC   T4RUP                                 
005331,000023: 06,2000                                           BANK                                           
005332,000024: 
005333,000025: 06,2000                                           COUNT    06/T4RPT                              
005334,000026: 
005335,000027: 06,2000           54016        T4RUPT             TS       BANKRUPT                              
005336,000028: 06,2001           00006                           EXTEND                                         
005337,000029: 06,2002           22012                           QXCH     QRUPT                                 
005338,000030: 
005339,000031: 06,2003           11302                           CCS      DSRUPTSW                              #  GOES 7(-1)0 AROUND AND AROUND
005340,000032: 06,2004           12010                           TCF      NORMT4     +1                         
005341,000033: 06,2005           12007                           TCF      NORMT4                                
005342,000034: 
005343,000035: 06,2006           12136                           TCF      QUIKDSP                               
005344,000036: 
005345,000037: 06,2007           35037        NORMT4             CAF      SEVEN                                 
005346,000038: 06,2010           54070                           TS       RUPTREG1                              
005347,000039: 06,2011           55302                           TS       DSRUPTSW                              
005348,000040: 
005349,000041: 06,2012                                           COUNT    02/T4RPT                              
005350,000042: 
005351,000043: 06,2012     7711               74K                =        HIGH4                                 
005352,000044: 
005353,000045:                                                                                                  #  RELTAB IS A PACKED TABLE. RELAYWORD CODE IN UPPER 4 BITS, RELAY CODE
005354,000046:                                                                                                  #  IN LOWER 5 BITS.
005355,000047: 
005356,000048:    4072                                           BLOCK    02                                    
005357,000049:    4000                                           SETLOC   FFTAG12                               
005358,000050:    4000                                           BANK                                           
005359,000051: 
005360,000052:    4072           04025        RELTAB             OCT      04025                                 
005361,000053:    4073           10003                           OCT      10003                                 
005362,000054:    4074           14031                           OCT      14031                                 
005363,000055:    4075           20033                           OCT      20033                                 
005364,000056:    4076           24017                           OCT      24017                                 
005365,000057:    4077           30036                           OCT      30036                                 
005366,000058:    4100           34034                           OCT      34034                                 
005367,000059:    4101           40023                           OCT      40023                                 
005368,000060:    4102           44035                           OCT      44035                                 
005369,000061:    4103           50037                           OCT      50037                                 
005370,000062:    4104           54000                           OCT      54000                                 
005371,000063:    4105           60000        RELTAB11           OCT      60000                                 
005372,000064: 
005373,000065:                                                                                                  #  SWITCHED-BANK PORTION.
005374,000066: 
005375,000067: 12,2000                                           BANK     12                                    
005376,000068: 06,2000                                           SETLOC   T4RUP                                 
005377,000069: 06,2000                                           BANK                                           
005378,000070: 
005379,000071: 06,2012                                           COUNT    06/T4RPT                              
005380,000072: 
005381,000073: 06,2012           11036        CDRVE              CCS      DSPTAB     +11D                       
005382,000074: 06,2013           02063                           TC       DSPOUT                                
005383,000075: 06,2014           02063                           TC       DSPOUT                                
005384,000076: 
005385,000077: 06,2015           57036                           XCH      DSPTAB     +11D                       
005386,000078: 06,2016           74372                           MASK     LOW11                                 
005387,000079: 06,2017           55036                           TS       DSPTAB     +11D                       
005388,000080: 06,2020           64105                           AD       RELTAB11                              
005389,000081: 06,2021           00006                           EXTEND                                         
005390,000082: 06,2022           01010                           WRITE    OUT0                                  
005391,000083: 06,2023           02071                           TC       HANG20                                
005392,000084: 
005393,000085:                                                                                                  #  DSPOUT PROGRAM. PUTS OUT DISPLAYS.
005394,000086: 
005395,000087: 06,2024           55016        DSPOUTSB           TS       NOUT                                  
005396,000088: 06,2025           45035                           CS       ZERO                                  
005397,000089: 06,2026           54073                           TS       DSRUPTEM                              #  SET TO -0 FOR 1ST PASS THRU DSPTAB
005398,000090: 06,2027           56776                           XCH      DSPCNT                                
005399,000091: 06,2030           65034                           AD       NEG0                                  #  TO PREVENT +0
005400,000092: 06,2031           54776                           TS       DSPCNT                                
005401,000093: 06,2032           50776        DSPSCAN            INDEX    DSPCNT                                
005402,000094: 06,2033           11023                           CCS      DSPTAB                                
005403,000095: 06,2034           10776                           CCS      DSPCNT                                #  IF DSPTAB ENTRY +, SKIP
005404,000096: 06,2035           12030                           TCF      DSPSCAN    -2                         #  IF DSPCNT +, AGAIN
005405,000097: 06,2036           12047                           TCF      DSPLAY                                #  IF DSPTAB ENTRY -, DISPLAY
005406,000098: 06,2037           00012        TABLNTH            OCT      12                                    #  DEC 10 LENGTH OF DSPTAB
005407,000099: 06,2040           10073                           CCS      DSRUPTEM                              #  IF DSRUPTEM=+0, 2ND PASS THRU DSPTAB
005408,000100: 06,2041           37764        120MRUPT           DEC      16372      B-14                       #  (DSPCNT = 0).  +0 INTO NOUT.
005409,000101: 06,2042           55016                           TS       NOUT                                  
005410,000102: 06,2043           00002                           TC       Q                                     
005411,000103: 06,2044           54073                           TS       DSRUPTEM                              #  IF DSRUPTEM=-0, 1ST PASS THRU DSPTAB
005412,000104: 06,2045           32037                           CAF      TABLNTH                               #  (DSPCNT=0).+0 INTO DSRUPTEM. PASS AGAIN
005413,000105: 06,2046           12031                           TCF      DSPSCAN    -1                         
005414,000106: 
005415,000107: 06,2047           65033        DSPLAY             AD       ONE                                   
005416,000108: 06,2050           50776                           INDEX    DSPCNT                                
005417,000109: 06,2051           55023                           TS       DSPTAB                                #  REPLACE POSITIVELY
005418,000110: 06,2052           74372                           MASK     LOW11                                 #  REMOVE BITS 12 TO 15
005419,000111: 06,2053           54073                           TS       DSRUPTEM                              
005420,000112: 06,2054           34364                           CAF      HI5                                   
005421,000113: 06,2055           50776                           INDEX    DSPCNT                                
005422,000114: 06,2056           74072                           MASK     RELTAB                                #  PICK UP BITS 12 TO 15 OF RELTAB ENTRY
005423,000115: 06,2057           60073                           AD       DSRUPTEM                              
005424,000116: 06,2060           00006                           EXTEND                                         
005425,000117: 06,2061           01010                           WRITE    OUT0                                  #  WRITE CHANNEL 10
005426,000118: 06,2062           16706                           TCF      Q+1                                   #  *** NORMAL RETURN SKIPS ONE
005427,000119: 
005428,000120: 06,2063           10101        DSPOUT             CCS      FLAGWRD5                              #  DONT DISPLAY UNLESS DSKY FLAG ON
005429,000121: 06,2064           35035                           CAF      ZERO                                  
005430,000122: 06,2065           12132                           TCF      NODSPOUT                              
005431,000123: 06,2066           11016                           CCS      NOUT                                  
005432,000124: 06,2067           02024                           TC       DSPOUTSB                              
005433,000125: 06,2070           12132                           TCF      NODSPOUT                              #  NO DISPLAY REQUESTS
005434,000126: 
005435,000127: 06,2071           42173        HANG20             CS       11,14,9                               
005436,000128: 06,2072           27302                           ADS      DSRUPTSW                              
005437,000129: 
005438,000130: 06,2073           37700                           CAF      20MRUPT                               
005439,000131: 
005440,000132: 06,2074           54027        SETTIME4           TS       TIME4                                 
005441,000133: 
005442,000134:                                                                                                  #  THE STATUS OF THE PROCEED PUSHBUTTON IS MONITORED EVERY 120 MILLISECONDS VIA THE CHANNEL 32 BIT 14 INBIT.
005443,000135:                                                                                                  #  THE STATE OF THIS INBIT IS COMPARED WITH ITS STATE DURING THE PREVIOUS T4RUPT AND IS PROCESSED AS FOLLOWS.
005444,000136:                                                                                                  #        IF PREV ON AND NOW ON   - BYPASS
005445,000137:                                                                                                  #        IF PREV ON AND NOW OFF  - UPDATE IMODES33
005446,000138:                                                                                                  #        IF PREV OFF AND NOW ON  - UPDATE IMODES33 AND PROCESS VIA PINBALL
005447,000139:                                                                                                  #        IF PREV OFF AND NOW OFF - BYPASS
005448,000140:                                                                                                  #  THE LOGIC EMPLOYED REQUIRES ONLY 9 MCT (APPROX. 108 MICROSECONDS) OF COMPUTER TIME WHEN NO CHANGES OCCUR.
005449,000141: 
005450,000142: 06,2075           31321        PROCEEDE           CA       IMODES33                              #  MONITIOR FOR PROCEED BUTTON
005451,000143: 06,2076           00006                           EXTEND                                         
005452,000144: 06,2077           06032                           RXOR     CHAN32                                #  CHECK IF BIT 14 DIFFERENT
005453,000145: 06,2100           75016                           MASK     BIT14                                 
005454,000146: 06,2101           00006                           EXTEND                                         
005455,000147: 06,2102           12116                           BZF      T4JUMP                                #  NO CHANGE
005456,000148: 
005457,000149: 06,2103           23321                           LXCH     IMODES33                              
005458,000150: 06,2104           00006                           EXTEND                                         
005459,000151: 06,2105           06001                           RXOR     LCHAN                                 
005460,000152: 06,2106           55321                           TS       IMODES33                              #  UPDATE IMODES33
005461,000153: 06,2107           75016                           MASK     BIT14                                 
005462,000154: 06,2110           10000                           CCS      A                                     
005463,000155: 06,2111           12116                           TCF      T4JUMP                                #  WAS ON - NOW OFF
005464,000156: 
005465,000157: 06,2112           34371                           CAF      CHRPRIO                               #  WAS OFF - NOW ON
005466,000158: 06,2113           05150                           TC       NOVAC                                 
005467,000159: 06,2114     0777                                  EBANK=   DSPCOUNT                              
005468,000160: 06,2114           03357 60101                     2CADR    PROCKEY                               
005469,000161: 
005470,000162:                                                                                                  #  JUMP TO APPROPRIATE ONCE-PER SECOND (.96 SEC ACTUALLY) ACTIVITY
005471,000163: 
005472,000164: 06,2116           50070        T4JUMP             INDEX    RUPTREG1                              
005473,000165: 06,2117           12120                           TCF      +1                                    
005474,000166: 
005475,000167: 06,2120           12130                           TCF      OPTTEST                               
005476,000168: 06,2121           12765                           TCF      OPTMON                                
005477,000169: 06,2122           12174                           TCF      IMUMON                                
005478,000170: 06,2123           15347                           TCF      RESUME                                
005479,000171: 06,2124           12130                           TCF      OPTTEST                               
005480,000172: 06,2125           12765                           TCF      OPTMON                                
005481,000173: 06,2126           12174                           TCF      IMUMON                                
005482,000174: 06,2127           15347                           TCF      RESUME                                
005483,000175: 
005484,000176: 06,2130           04754        OPTTEST            TC       IBNKCALL                              
005485,000177: 06,2131           20000                           CADR     OPTDRIVE                              
005486,000178: 
005487,000179: 06,2132     7700               20MRUPT            =        OCT37776                              #  (DEC 16382)
005488,000180: 
005489,000181: 06,2132           00006        NODSPOUT           EXTEND                                         #  TURN OFF RELAYS
005490,000182: 06,2133           01010                           WRITE    OUT0                                  
005491,000183: 
005492,000184: 06,2134           32041                           CAF      120MRUPT                              #  SET FOR NEXT CDRVE
005493,000185: 06,2135           12074                           TCF      SETTIME4                              
005494,000186: 
005495,000187: 06,2136           35016        QUIKDSP            CAF      BIT14                                 
005496,000188: 06,2137           71302                           MASK     DSRUPTSW                              
005497,000189: 06,2140           00006                           EXTEND                                         
005498,000190: 06,2141           12167                           BZF      QUIKOFF                               #  WROTE LAST TIME, NOW TURN OFF RELAYS.
005499,000191: 
005500,000192: 06,2142           11016                           CCS      NOUT                                  
005501,000193: 06,2143           02024                           TC       DSPOUTSB                              
005502,000194: 06,2144           12154                           TCF      NODSPY                                #  NOUT=0 OR BAD RETURN FROM DSPOUTSB
005503,000195: 06,2145           45016                           CS       BIT14                                 #  GOOD RETURN (WE DISPLAYED SOMETHING)
005504,000196: 06,2146           27302        QUIKRUPT           ADS      DSRUPTSW                              
005505,000197: 
005506,000198: 06,2147           37700                           CAF      20MRUPT                               
005507,000199: 06,2150           54027                           TS       TIME4                                 
005508,000200: 
005509,000201: 06,2151           35023                           CAF      BIT9                                  
005510,000202: 06,2152           27302                           ADS      DSRUPTSW                              
005511,000203: 
005512,000204: 06,2153           05347                           TC       RESUME                                
005513,000205: 
005514,000206: 06,2154           00006        NODSPY             EXTEND                                         
005515,000207: 06,2155           01010                           WRITE    OUT0                                  
005516,000208: 
005517,000209: 06,2156           37700        SYNCT4             CAF      20MRUPT                               
005518,000210: 06,2157           26027                           ADS      TIME4                                 
005519,000211: 
005520,000212: 06,2160           35023                           CAF      BIT9                                  
005521,000213: 06,2161           27302                           ADS      DSRUPTSW                              
005522,000214: 06,2162           11302                           CCS      DSRUPTSW                              
005523,000215: 06,2163           05347                           TC       RESUME                                
005524,000216: 06,2164           37737        OCT37737           OCT      37737                                 
005525,000217: 06,2165           02156                           TC       SYNCT4                                
005526,000218: 06,2166           05347                           TC       RESUME                                
005527,000219: 
005528,000220: 06,2167           00006        QUIKOFF            EXTEND                                         
005529,000221: 06,2170           01010                           WRITE    OUT0                                  
005530,000222: 06,2171           35016                           CAF      BIT14                                 #  RESET DSRUPTSW TO SEND DISPLAY NEXT PASS
005531,000223: 06,2172           12146                           TCF      QUIKRUPT                              
005532,000224: 
005533,000225: 06,2173           22400        11,14,9            OCT      22400                                 
005534,000226: 
005535,000227:                                                                                                  #  PROGRAM NAME:  IMUMON
005536,000228: 
005537,000229:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM IS ENTERED EVERY 480 MS.  IT DETECTS CHANGES OF THE IMU STATUS BITS IN
005538,000230:                                                                                                  #  CHANNEL 30 AND CALLS THE APPROPRIATE SUBROUTINES.  THE BITS PROCESSED AND THEIR RELEVANT SUBROUTINES ARE:
005539,000231: 
005540,000232:                                                                                                  #        FUNCTION                BIT     SUBROUTINE CALLED
005541,000233:                                                                                                  #        --------                ---     -----------------
005542,000234:                                                                                                  #        TEMP IN LIMITS           15     TLIM
005543,000235:                                                                                                  #        ISS TURN-ON REQUEST      14     ITURNON
005544,000236:                                                                                                  #        IMU FAIL                 13     IMUFAIL (SETISSW)
005545,000237:                                                                                                  #        IMU CDU FAIL             12     ICDUFAIL (SETISSW)
005546,000238:                                                                                                  #        IMU CAGE                 11     IMUCAGE
005547,000239:                                                                                                  #        IMU OPERATE               9     IMUOP
005548,000240: 
005549,000241:                                                                                                  #  THE LAST SAMPLED STATE OF THESE BITS IS LEFT IN IMODES30.  ALSO, EACH SUBROUTINE CALLED FINDS THE NEW
005550,000242:                                                                                                  #  VALUE OF THE BIT IN A, WITH Q SET TO THE PROPER RETURN LOCATION, NXTIFAIL.
005551,000243: 
005552,000244:                                                                                                  #  CALLING SEQUENCE:  T4RUPT EVERY 480 MILLISECONDS.
005553,000245: 
005554,000246:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005555,000247: 
005556,000248:                                                                                                  #  SUBROUTINES CALLED:  TLIM, ITURNON, SETISSW, IMUCAGE, IMUOP.
005557,000249: 
005558,000250:                                                                                                  #  ERASABLE INITIALIZATION:
005559,000251:                                                                                                  #        FRESH START OR RESTART WITH NO GROUPS ACTIVE:  C(IMODES30) = OCT 37411.
005560,000252:                                                                                                  #        RESTART WITH ACTIVE GROUPS:     C(IMODES30) = (B(IMODES30)AND(OCT 00035)) PLUS OCT 37400.
005561,000253:                                                                                                  #                                        THIS LEAVES IMU FAIL BITS INTACT.
005562,000254: 
005563,000255:                                                                                                  #  ALARMS:  NONE.
005564,000256: 
005565,000257:                                                                                                  #  EXIT:  TNONTEST.
005566,000258: 
005567,000259:                                                                                                  #  OUTPUT:  UPDATED IMODES30 WITH CHANGES PROCESSED BY APPROPRIATE SUBROUTINE.
005568,000260: 
005569,000261: 06,2174           31320        IMUMON             CA       IMODES30                              #  SEE IF THERE HAS BEEN A CHANGE IN THE
005570,000262: 06,2175           00006                           EXTEND                                         #  RELEVANT BITS OF CHAN 30.
005571,000263: 06,2176           06030                           RXOR     CHAN30                                #  CHECK IF BITS 9,11-15 CHANGED
005572,000264: 06,2177           72743                           MASK     30RDMSK                               
005573,000265: 06,2200           00006                           EXTEND                                         
005574,000266: 06,2201           12231                           BZF      TNONTEST                              #  NO CHANGE IN STATUS.
005575,000267: 
005576,000268: 06,2202           54070                           TS       RUPTREG1                              #  SAVE BITS WHICH HAVE CHANGED.
005577,000269: 06,2203           23320                           LXCH     IMODES30                              #  UPDATE IMODES30.
005578,000270: 06,2204           00006                           EXTEND                                         
005579,000271: 06,2205           06001                           RXOR     LCHAN                                 
005580,000272: 06,2206           55320                           TS       IMODES30                              
005581,000273: 
005582,000274: 06,2207           45033                           CS       ONE                                   
005583,000275: 06,2210           56070                           XCH      RUPTREG1                              
005584,000276: 06,2211           00006                           EXTEND                                         
005585,000277: 06,2212           62507                           BZMF     TLIM                                  #  CHANGE IN IMU TEMP.
005586,000278: 06,2213           12215                           TCF      NXTIFBIT                              #  BEGIN BIT SCAN.
005587,000279: 
005588,000280: 06,2214           65033                 -1        AD       ONE                                   #  (RE-ENTERS HERE FROM NXTIFAIL.)
005589,000281: 06,2215           24070        NXTIFBIT           INCR     RUPTREG1                              #  ADVANCE BIT POSITION NUMBER.
005590,000282: 06,2216           60000                 +1        DOUBLE                                         
005591,000283: 06,2217           54000                           TS       A                                     #  SKIP IF OVERFLOW.
005592,000284: 06,2220           12215                           TCF      NXTIFBIT                              #  LOOK FOR BIT.
005593,000285: 
005594,000286: 06,2221           56071                           XCH      RUPTREG2                              #  SAVE OVERFLOW-CORRECTED DATA.
005595,000287: 06,2222           50070                           INDEX    RUPTREG1                              #  SELECT NEW VALUE OF THIS BIT.
005596,000288: 06,2223           35016                           CAF      BIT14                                 
005597,000289: 06,2224           71320                           MASK     IMODES30                              
005598,000290: 06,2225           50070                           INDEX    RUPTREG1                              
005599,000291: 06,2226           02737                           TC       IFAILJMP                              
005600,000292: 
005601,000293: 06,2227           10071        NXTIFAIL           CCS      RUPTREG2                              #  PROCESS ANY ADDITIONAL CHANGES.
005602,000294: 06,2230           12214                           TCF      NXTIFBIT   -1                         
005603,000295: 
005604,000296:                                                                                                  #  PROGRAM NAME:  TNONTEST.
005605,000297: 
005606,000298:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM HONORS REQUESTS FOR ISS INITIALIZATION.  ISS TURN-ON (CHANNEL 30 BIT 14)
005607,000299:                                                                                                  #  AND ISS OPERATE (CHANNEL 30 BIT 9) REQUESTS ARE TREATED AS A PAIR AND PROCESSING TAKES PLACE .480 SECONDS
005608,000300:                                                                                                  #  AFTER EITHER ONE APPEARS.  THIS INITIALIZATION TAKES ON ONE OF THE FOLLOWING THREE FORMS:
005609,000301: 
005610,000302:                                                                                                  #        1) ISS TURN-ON:  IN THIS SITUATION THE COMPUTER IS OPERATING WHEN THE ISS IS TURNED ON.  NOMINALLY,
005611,000303:                                                                                                  #        BOTH ISS TURN-ON AND ISS OPERATE APPEAR.  THE PLATFORM IS CAGED FOR 90 SECONDS AND THE ICDU'S ZEROED
005612,000304:                                                                                                  #        SO THAT AT THE END OF THE PROCESS THE GIMBAL LOCK MONITOR WILL FUNCTION PROPERLY.
005613,000305: 
005614,000306:                                                                                                  #        2) ICDU INITIALIZATION:  IN THIS CASE THE COMPUTER WAS PROBABLY TURNED ON WITH THE ISS IN OPERATE OR
005615,000307:                                                                                                  #        A FRESH START WAS DONE WITH THE ISS IN OPERATE.  IN THIS CASE ONLY ISS OPERATE IS ON.  THE ICDU'S ARE
005616,000308:                                                                                                  #        ZEROED SO THE GIMBAL LOCK MONITOR WILL FUNCTION.  AN EXCEPTION IS IF THE ISS IS IN GIMBAL LOCK AFTER
005617,000309:                                                                                                  #        A RESTART, THE ICDU'S WILL NOT BE ZEROED.
005618,000310: 
005619,000311:                                                                                                  #        3) RESTART WITH RESTARTABLE PROGRAM USING THE IMU:  IN THIS CASE, NO INITIALIZATION TAKES PLACE SINCE
005620,000312:                                                                                                  #        IT IS ASSUMED THAT THE USING PROGRAM DID THE INITIALIZATION AND THEREFORE T4RUPT SHOULD NOT INTERFERE.
005621,000313: 
005622,000314:                                                                                                  #  IMODES30 BIT 7 IS SET = 1 BY THE FIRST BIT (CHANNEL 30 BIT 14 OR 9) WHICH ARRIVES.  FOLLOWING THIS. TNONTEST IS
005623,000315:                                                                                                  #  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
005624,000316:                                                                                                  #  PROCEEDS, SETTING BITS 8 AND 7 = 0.  AT PROCTNON, IF ISS TURN-ON REQUEST IS PRESENT, THE ISS IS CAGED (ZERO +
005625,000317:                                                                                                  #  COARSE).  IF ISS OPERATE IS NOT PRESENT PROGRAM ALARM 00213 IS ISSUED.  AT THE END OF A 90 SECOND CAGE, BIT 2
005626,000318:                                                                                                  #  OF IMODES30 IS TESTED.  IF IT IS = 1, ISS TURN-ON WAS NOT PRESENT FOR THE ENTIRE 90 SECONDS.  IN THAT CASE, IF
005627,000319:                                                                                                  #  THE ISS TURN-ON REQUEST IS PRESENT THE 90 SECOND WAIT IS REPEATED,  OTHERWISE NO ACTION OCCURS UNLESS A PROGRAM
005628,000320:                                                                                                  #  WAS WAITING FOR THE INITIALIZATION IN WHICH CASE THE PROGRAM IS GIVEN AN IMUSTALL ERROR RETURN.  IF THE DELAY
005629,000321:                                                                                                  #  WENT PROPERLY, THE ISS DELAY OUTBIT IS SENT AND THE ICDU'S ZEROED.  A TASK IS INITIATED TO REMOVE THE PIPA FAIL
005630,000322:                                                                                                  #  INHIBIT BIT IN 10.24 SECONDS.  IF A MISSION PROGRAM WAS WAITING IT IS INFORMED VIA ENDIMU.
005631,000323: 
005632,000324:                                                                                                  #  AT PROCTNON, IF ONLY ISS OPERATE IS PRESENT (OPONLY), THE CDU'S ARE ZEROED UNLESS THE PLATFORM IS IN COARSE
005633,000325:                                                                                                  #  ALIGN (= GIMBAL LOCK HERE) OR A MISSION PROGRAM IS USING THE IMU (IMUSEFLG = 1).
005634,000326: 
005635,000327:                                                                                                  #  CALLING SEQUENCE:  T4RUPT EVERY 480 MILLISECONDS AFTER IMUMON.
005636,000328: 
005637,000329:                                                                                                  #  JOBS OR TASKS INITIATED:  1) ENDTNON, 90 SECONDS AFTER CAGING STARTED.  2) ISSUP, 4 SECONDS AFTER CAGING DONE.
005638,000330:                                                                                                  #        3) PFAILOK, 10.24 SECONDS AFTER INITIALIZATION COMPLETED.  4) UNZ2, 320 MILLISECONDS AFTER ZEROING
005639,000331:                                                                                                  #        STARTED.
005640,000332: 
005641,000333:                                                                                                  #  SUBROUTINES CALLED: CAGESUB, CAGESUB2, ZEROICDU, ENDIMU, IMUBAD, NOATTOFF, SETISSW, VARDELAY.
005642,000334: 
005643,000335:                                                                                                  #  ERASABLE INITIALIZATION:  SEE IMUMON.
005644,000336: 
005645,000337:                                                                                                  #  ALARMS:  PROGRAM ALARM 00213 IF ISS TURN-ON REQUESTED WITHOUT ISS OPERATE.
005646,000338: 
005647,000339:                                                                                                  #  EXIT:  ENDTNON EXITS TO C33TEST.  TASKS HAVING TO DO WITH INITIALIZATION EXIT AS FOLLOWS:  MISSION PROGRAM
005648,000340:                                                                                                  #  WAITING AND INITIALIZATION COMPLETE, EXIT TO ENDIMU, MISSION PROGRAM WAITING AND INITIALIZATION FAILED, EXIT TO
005649,000341:                                                                                                  #  IMUBAD, IMU NOT IN USE, EXIT TO TASKOVER.
005650,000342: 
005651,000343:                                                                                                  #  OUTPUT:  ISS INITIALIZED.
005652,000344: 
005653,000345: 06,2231           41320        TNONTEST           CS       IMODES30                              #  AFTER PROCESSING ALL CHANGES, SEE IF IT
005654,000346: 06,2232           75025                           MASK     BIT7                                  #  IS TIME TO ACT ON A TURN-ON SEQUENCE.
005655,000347: 06,2233           10000                           CCS      A                                     
005656,000348: 06,2234           12367                           TCF      C33TEST                               #  NO - EXAMINE CHANNEL 33.
005657,000349: 
005658,000350: 06,2235           35024                           CAF      BIT8                                  #  SEE IF FIRST SAMPLE OR SECOND.
005659,000351: 06,2236           71320                           MASK     IMODES30                              
005660,000352: 06,2237           10000                           CCS      A                                     
005661,000353: 06,2240           12244                           TCF      PROCTNON                              #  REACT AFTER SECOND SAMPLE.
005662,000354: 
005663,000355: 06,2241           35024                           CAF      BIT8                                  #  IF FIRST SAMPLE, SET BIT TO REACT NEXT
005664,000356: 06,2242           27320                           ADS      IMODES30                              #  TIME.
005665,000357: 06,2243           12367                           TCF      C33TEST                               
005666,000358: 
005667,000359:                                                                                                  #  PROCESS IMU TURN-ON REQUESTS AFTER WAITING 1 SAMPLE FOR ALL SIGNALS TO ARRIVE.
005668,000360: 
005669,000361: 06,2244           42757        PROCTNON           CS       BITS7&8                               
005670,000362: 06,2245           71320                           MASK     IMODES30                              
005671,000363: 06,2246           55320                           TS       IMODES30                              
005672,000364: 06,2247           75016                           MASK     BIT14                                 #  SEE IF TURN-ON REQUEST.
005673,000365: 06,2250           10000                           CCS      A                                     
005674,000366: 06,2251           12342                           TCF      OPONLY                                #  OPERATE ON ONLY.
005675,000367: 
005676,000368: 06,2252           41320                           CS       IMODES30                              #  IF TURN-ON REQUEST, WE SHOULD HAVE IMU
005677,000369: 06,2253           75023                           MASK     BIT9                                  #  OPERATE.
005678,000370: 06,2254           10000                           CCS      A                                     
005679,000371: 06,2255           12260                           TCF      +3                                    
005680,000372: 
005681,000373: 06,2256           05664                           TC       ALARM                                 #  ALARM IF NOT.
005682,000374: 06,2257           00213                           OCT      213                                   
005683,000375: 
005684,000376: 06,2260           02717                 +3        TC       CAGESUB                               
005685,000377: 
005686,000378: 06,2261           32764                           CAF      90SECS                                
005687,000379: 06,2262           05261                           TC       WAITLIST                              
005688,000380: 06,2263  E3,1474                                  EBANK=   CDUIND                                
005689,000381: 06,2263           02270 14063                     2CADR    ENDTNON                               
005690,000382: 
005691,000383: 06,2265           12367                           TCF      C33TEST                               
005692,000384: 
005693,000385: 06,2266           32764        RETNON             CAF      90SECS                                
005694,000386: 06,2267           05306                           TC       VARDELAY                              
005695,000387: 
005696,000388: 06,2270           45032        ENDTNON            CS       BIT2                                  #  RESET TURN-ON REQUEST FAIL BIT.
005697,000389: 06,2271           71320                           MASK     IMODES30                              
005698,000390: 06,2272           57320                           XCH      IMODES30                              
005699,000391: 06,2273           75032                           MASK     BIT2                                  #  IF IT WAS OFF, SEND ISS DELAY COMPLETE.
005700,000392: 06,2274           00006                           EXTEND                                         
005701,000393: 06,2275           12310                           BZF      ENDTNON2                              
005702,000394: 06,2276           35016                           CAF      BIT14                                 #  IF IT WAS ON AND TURN-ON REQUEST NOW
005703,000395: 06,2277           71320                           MASK     IMODES30                              #  PRESENT, RE-ENTER 90 SEC DELAY IN WL.
005704,000396: 06,2300           00006                           EXTEND                                         
005705,000397: 06,2301           12266                           BZF      RETNON                                
005706,000398: 
005707,000399: 06,2302           40074                           CS       STATE                                 #  IF IT IS NOT ON NOW, SEE IF A PROG WAS
005708,000400: 06,2303           75024                           MASK     IMUSEFLG                              #  WAITING.
005709,000401: 06,2304           10000                           CCS      A                                     
005710,000402: 06,2305           15340                           TCF      TASKOVER                              
005711,000403: 06,2306           04715                           TC       POSTJUMP                              
005712,000404: 06,2307           17522                           CADR     IMUBAD                                #  UNSUCCESSFUL TURN-ON.
005713,000405: 
005714,000406: 06,2310           35015        ENDTNON2           CAF      BIT15                                 #  SEND ISS DELAY COMPLETE.
005715,000407: 06,2311           00006                           EXTEND                                         
005716,000408: 06,2312           05012                           WOR      CHAN12                                #  TURN OFF ISS DELAY COUNTER
005717,000409: 06,2313           04754                           TC       IBNKCALL                              #  TURN OFF NO ATT LAMP.
005718,000410: 06,2314           17151                           CADR     NOATTOFF                              
005719,000411: 
005720,000412: 06,2315           05535        UNZ2               TC       ZEROICDU                              
005721,000413: 
005722,000414: 06,2316           45043                           CS       BITS4&5                               #  REMOVE ZERO AND COARSE.
005723,000415: 06,2317           00006                           EXTEND                                         
005724,000416: 06,2320           03012                           WAND     CHAN12                                
005725,000417: 
005726,000418: 06,2321           35021                           CAF      BIT11                                 #  WAIT 10 SECS FOR CTRS TO FIND GIMBALS
005727,000419: 06,2322           05306                           TC       VARDELAY                              
005728,000420: 
005729,000421: 06,2323           42754        ISSUP              CS       OCT54                                 #  REMOVE CAGING, IMU FAIL INHIBIT, AND
005730,000422: 06,2324           71320                           MASK     IMODES30                              #  ICDUFAIL INHIBIT FLAGS.
005731,000423: 06,2325           55320                           TS       IMODES30                              
005732,000424: 
005733,000425: 06,2326           45026                           CS       BIT6                                  #  ENABLE DAP
005734,000426: 06,2327           71321                           MASK     IMODES33                              
005735,000427: 06,2330           55321                           TS       IMODES33                              
005736,000428: 
005737,000429: 06,2331           02665                           TC       SETISSW                               #  ISS WARNING MIGHT HAVE BEEN INHIBITED.
005738,000430: 
005739,000431: 06,2332           45015                           CS       BIT15                                 #  REMOVE IMU DELAY COMPLETE DISCRETE.
005740,000432: 06,2333           00006                           EXTEND                                         
005741,000433: 06,2334           03012                           WAND     CHAN12                                
005742,000434: 
005743,000435: 06,2335           35061                           CAF      4SECS                                 #  DONT ENABLE PROG ALARM ON PIP FAIL FOR
005744,000436: 06,2336           05261                           TC       WAITLIST                              #  ANOTHER 4 SECS.
005745,000437: 06,2337  E3,1474                                  EBANK=   CDUIND                                
005746,000438: 06,2337           03137 16063                     2CADR    PFAILOK                               
005747,000439: 
005748,000440: 06,2341           15340                           TCF      TASKOVER                              
005749,000441: 
005750,000442: 06,2342           35030        OPONLY             CAF      BIT4                                  
005751,000443: 06,2343           00006                           EXTEND                                         #  IF OPERATE ON ONLY AND WE ARE IN COARSE
005752,000444: 06,2344           02012                           RAND     CHAN12                                #  ALIGN, DONT ZERO THE CDUS BECAUSE WE
005753,000445: 06,2345           10000                           CCS      A                                     #  MIGHT BE IN GIMBAL LOCK. USE V41N20 TO
005754,000446: 06,2346           12367                           TCF      C33TEST                               #  RECOVER.
005755,000447: 
005756,000448: 06,2347           35024                           CAF      IMUSEFLG                              #  OTHERWISE, ZERO THE COUNTERS
005757,000449: 06,2350           70074                           MASK     STATE                                 #  UNLESS SOMEONE IS USING THE IMU.
005758,000450: 06,2351           10000                           CCS      A                                     
005759,000451: 06,2352           12367                           TCF      C33TEST                               
005760,000452: 
005761,000453: 06,2353           02730                           TC       CAGESUB2                              #  SET TURNON FLAGS.
005762,000454: 
005763,000455: 06,2354           04754        ISSZERO            TC       IBNKCALL                              #  TURN OFF NO ATT LAMP
005764,000456: 06,2355           17151                           CADR     NOATTOFF                              #      IMU CAGE OFF ENTRY
005765,000457: 
005766,000458: 06,2356           35027                           CAF      BIT5                                  #  ISS CDU ZERO
005767,000459: 06,2357           00006                           EXTEND                                         
005768,000460: 06,2360           05012                           WOR      CHAN12                                
005769,000461: 
005770,000462: 06,2361           05535                           TC       ZEROICDU                              
005771,000463: 06,2362           35026                           CAF      BIT6                                  #  WAIT 300 MS FOR AGS TO RECEIVE SIGNAL.
005772,000464: 06,2363           05261                           TC       WAITLIST                              
005773,000465: 06,2364     1331                                  EBANK=   OPTMODES                              
005774,000466: 06,2364           02315 14062                     2CADR    UNZ2                                  
005775,000467: 
005776,000468: 06,2366           12367                           TCF      C33TEST                               
005777,000469: 
005778,000470:                                                                                                  #  PROGRAM NAME:  C33TEST
005779,000471: 
005780,000472:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM MONITORS THREE FLIP-FLOP INBITS OF CHANNEL 33 AND CALLS THE APPROPRIATE
005781,000473:                                                                                                  #  SUBROUTINE TO PROCESS A CHANGE.  IT IS ANALOGOUS TO IMUMON, WHICH MONITORS CHANNEL 30, EXCEPT THAT IT READS
005782,000474:                                                                                                  #  CHANNEL 33 WITH A WAND INSTRUCTION BECAUSE A 'WRITE' PULSE IS REQUIRED TO RESET THE FLIP-FLOPS.  THE BITS
005783,000475:                                                                                                  #  PROCESSED AND THE SUBROUTINES CALLED ARE:
005784,000476:                                                                                                  #        BIT     FUNCTION                SUBROUTINE
005785,000477:                                                                                                  #        ---     --------                ----------
005786,000478:                                                                                                  #         13     PIPA FAIL               PIPFAIL
005787,000479:                                                                                                  #         12     DOWNLINK TOO FAST       DNTMFAST
005788,000480:                                                                                                  #         11     UPLINK TOO FAST         UPTMFAST
005789,000481: 
005790,000482:                                                                                                  #  UPON ENTRY TO THE SUBROUTINE, THE NEW BIT STATE IS IN A.
005791,000483: 
005792,000484:                                                                                                  #  CALLING SEQUENCE:  EVERY 480 MILLISECONDS AFTER TNONTEST.
005793,000485: 
005794,000486:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005795,000487: 
005796,000488:                                                                                                  #  SUBROUTINES CALLED:  PIPFAIL, DNTMFAST AND UPTMFAST ON BIT CHANGES.
005797,000489: 
005798,000490:                                                                                                  #  ERASABLE INITIALIZATION:  C(IMODES33) = OCT 16000 ON A FRESH START OR RESTART, THEREFORE, THESE ALARMS WILL
005799,000491:                                                                                                  #  REAPPEAR IF THE CONDITIONS PERSIST.
005800,000492: 
005801,000493:                                                                                                  #  ALARMS:  NONE.
005802,000494: 
005803,000495:                                                                                                  #  EXIT:  GLOCKMON.
005804,000496: 
005805,000497:                                                                                                  #  OUTPUT:  UPDATED BITS 13, 12 AND 11 OF IMODES33 WITH CHANGES PROCESSED.
005806,000498: 
005807,000499: 06,2367           31321        C33TEST            CA       IMODES33                              #  SEE IF RELEVANT CHAN33 BITS HAVE
005808,000500: 06,2370           75104                           MASK     33RDMSK                               
005809,000501: 06,2371           54001                           TS       L                                     #  CHANGED.
005810,000502: 06,2372           35104                           CAF      33RDMSK                               
005811,000503: 06,2373           00006                           EXTEND                                         
005812,000504: 06,2374           03033                           WAND     CHAN33                                #  RESETS FLIP-FLOP INPUTS.
005813,000505: 06,2375           00006                           EXTEND                                         
005814,000506: 06,2376           06001                           RXOR     LCHAN                                 
005815,000507: 06,2377           00006                           EXTEND                                         
005816,000508: 06,2400           12427                           BZF      GLOCKMON                              #  ON NO CHANGE.
005817,000509: 
005818,000510: 06,2401           54070                           TS       RUPTREG1                              #  SAVE BITS WHICH HAVE CHANGED.
005819,000511: 06,2402           23321                           LXCH     IMODES33                              
005820,000512: 06,2403           00006                           EXTEND                                         
005821,000513: 06,2404           06001                           RXOR     LCHAN                                 
005822,000514: 06,2405           55321                           TS       IMODES33                              #  UPDATED IMODES33.
005823,000515: 
005824,000516: 06,2406           35035                           CAF      ZERO                                  
005825,000517: 06,2407           56070                           XCH      RUPTREG1                              
005826,000518: 06,2410           60000                           DOUBLE                                         
005827,000519: 06,2411           12414                           TCF      NXTIBT     +1                         #  SCAN FOR BIT CHANGES.
005828,000520: 
005829,000521: 06,2412           65033                 -1        AD       ONE                                   
005830,000522: 06,2413           24070        NXTIBT             INCR     RUPTREG1                              
005831,000523: 06,2414           60000                 +1        DOUBLE                                         
005832,000524: 06,2415           54000                           TS       A                                     #  (CODING IDENTICAL TO CHAN 30).
005833,000525: 06,2416           12413                           TCF      NXTIBT                                
005834,000526: 
005835,000527: 06,2417           56071                           XCH      RUPTREG2                              
005836,000528: 06,2420           50070                           INDEX    RUPTREG1                              #  GET NEW VALUE OF BIT WHICH CHANGED.
005837,000529: 06,2421           35017                           CAF      BIT13                                 
005838,000530: 06,2422           71321                           MASK     IMODES33                              
005839,000531: 06,2423           50070                           INDEX    RUPTREG1                              
005840,000532: 06,2424           02745                           TC       C33JMP                                
005841,000533: 
005842,000534: 06,2425           10071        NXTFL33            CCS      RUPTREG2                              #  PROCESS POSSIBLE ADDITIONAL CHANGES.
005843,000535: 06,2426           12412                           TCF      NXTIBT     -1                         
005844,000536: 
005845,000537:                                                                                                  #  PROGRAM NAME:  GLOCKMON
005846,000538: 
005847,000539:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM MONITORS THE CDUZ COUNTER TO DETERMINE WHETHER THE ISS IS IN GIMBAL LOCK
005848,000540:                                                                                                  #  AND TAKES ACTION IF IT IS.  THREE REGIONS OF MIDDLE GIMBAL ANGLE (MGA) ARE USED:
005849,000541: 
005850,000542:                                                                                                  #        1) ABS(MGA) LESS THAN OR EQUAL TO 70 DEGREES - NORMAL MODE.
005851,000543:                                                                                                  #        2) ABS(MGA) GREATER THAN 70 DEGREES AND LESS THAN OR EQUAL TO 85 DEGREES - GIMBAL LOCK LAMP TURNED ON.
005852,000544:                                                                                                  #        3) ABS(MGA) GREATER THAN 85 DEGREES - ISS PUT IN COARSE ALIGN AND NO ATT LAMP TURNED ON.
005853,000545: 
005854,000546:                                                                                                  #  CALLING SEQUENCE:  EVERY 480 MILLISECONDS AFTER C33TEST.
005855,000547: 
005856,000548:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005857,000549: 
005858,000550:                                                                                                  #  SUBROUTINES CALLED:   1) SETCOARS WHEN ABS(MGA) GREATER THAN 85 DEGREES AND ISS NOT IN COARSE ALIGN.
005859,000551:                                                                                                  #                        2) LAMPTEST BEFORE TURNING OFF GIMBAL LOCK LAMP.
005860,000552: 
005861,000553:                                                                                                  #  ERASABLE INITIALIZATION:
005862,000554:                                                                                                  #                1) FRESH START OR RESTART WITH NO GROUPS ACTIVE:  C(CDUZ) = 0, IMODES30 BIT 6 = 0, IMODES33 BIT 1 = 0.
005863,000555:                                                                                                  #                2) RESTART WITH GROUPS ACTIVE:  SAME AS FRESH START EXCEPT C(CDUZ) NOT CHANGED SO GIMBAL MONITOR
005864,000556:                                                                                                  #                                                PROCEEDS AS BEFORE.
005865,000557: 
005866,000558:                                                                                                  #  ALARMS:       1) MGA REGION (2) CAUSES GIMBAL LOCK LAMP TO BE LIT.
005867,000559:                                                                                                  #                2) MGA REGION (3) CAUSES THE ISS TO BE PUT IN COARSE ALIGN AND THE NO ATT LAMP TO BE LIT IF EITHER NOT
005868,000560:                                                                                                  #                   SO ALREADY.
005869,000561: 
005870,000562: 06,2427           10034        GLOCKMON           CCS      CDUZ                                  
005871,000563: 06,2430           12434                           TCF      GLOCKCHK                              #  SEE IF MAGNITUDE OF MGA IS GREATER THAN
005872,000564: 06,2431           12460                           TCF      SETGLOCK                              #  70 DEGREES.
005873,000565: 06,2432           12434                           TCF      GLOCKCHK                              
005874,000566: 06,2433           12460                           TCF      SETGLOCK                              
005875,000567: 
005876,000568: 06,2434           62505        GLOCKCHK           AD       -70DEGS                               
005877,000569: 06,2435           00006                           EXTEND                                         
005878,000570: 06,2436           62457                           BZMF     SETGLOCK   -1                         #  NO LOCK.
005879,000571: 
005880,000572: 06,2437           62506                           AD       -15DEGS                               #  SEE IF ABS(MGA) GREATER THAN 85 DEGS.
005881,000573: 06,2440           00006                           EXTEND                                         
005882,000574: 06,2441           62455                           BZMF     NOGIMRUN                              
005883,000575: 
005884,000576: 06,2442           35030                           CAF      BIT4                                  #  IF SO, SYSTEM SHOULD BE IN COARSE ALIGN
005885,000577: 06,2443           00006                           EXTEND                                         #  TO PREVENT GIMBAL RUN-AWAY.
005886,000578: 06,2444           02012                           RAND     CHAN12                                

Reconstruction: The following two instructions constitute an in-line patch added in MANCHE72 revision 3 as part of PCR-984, "Avoid Coarse Align during Saturn". The patch has replaced the instructions
   CCS   A
   TCF   NOGIMRUN
present in earlier ropes with a jump to the end of bank 11, where the bulk of the PCR-984 code was inserted. The change was made in this way so that MANCHE72 revision 3 could be released as a single-module change from Comanche 72.

005897,000589: 06,2445           04754                           TC       IBNKCALL                              
005898,000590: 06,2446           23760                           CADR     GLOCKCK1                              
005899,000591: 
005900,000592: 06,2447           04754        CALLCRS            TC       IBNKCALL                              #  GO INTO COARSE ALIGN.
005901,000593: 06,2450           17027                           CADR     SETCOARS                              
005902,000594: 
005903,000595: 06,2451           36211                           CAF      SIX                                   #  ENABLE ISS ERROR COUNTERS IN 60 MS
005904,000596: 06,2452           05261                           TC       WAITLIST                              
005905,000597: 06,2453  E3,1474                                  EBANK=   CDUIND                                
005906,000598: 06,2453           03023 16063                     2CADR    CA+ECE                                
005907,000599: 
005908,000600: 06,2455           35026        NOGIMRUN           CAF      BIT6                                  #  TURN ON GIMBAL LOCK LAMP.
005909,000601: 06,2456           12460                           TCF      SETGLOCK                              
005910,000602: 
005911,000603: 06,2457           35035                 -1        CAF      ZERO                                  
005912,000604: 06,2460           61036        SETGLOCK           AD       DSPTAB     +11D                       #  SEE IF PRESENT STATE OF GIMBAL LOCK LAMP
005913,000605: 06,2461           75026                           MASK     BIT6                                  #  AGREES WITH DESIRED STATE BY HALF ADDING
005914,000606: 06,2462           00006                           EXTEND                                         #  THE TWO.
005915,000607: 06,2463           15347                           BZF      GLOCKOK                               #  OK AS IS.
005916,000608: 
005917,000609: 06,2464           71036                           MASK     DSPTAB     +11D                       #  IF OFF, DONT TURN ON IF IMU BEING CAGED.
005918,000610: 06,2465           10000                           CCS      A                                     
005919,000611: 06,2466           12502                           TCF      GLAMPTST                              #  TURN OFF UNLESS LAMP TEST IN PROGRESS.
005920,000612: 
005921,000613: 06,2467           35026                           CAF      BIT6                                  
005922,000614: 06,2470           71320                           MASK     IMODES30                              
005923,000615: 06,2471           10000                           CCS      A                                     
005924,000616: 06,2472           15347                           TCF      GLOCKOK                               
005925,000617: 
005926,000618: 06,2473           41036        GLINVERT           CS       DSPTAB     +11D                       #  INVERT GIMBAL LOCK LAMP.
005927,000619: 06,2474           75026                           MASK     BIT6                                  
005928,000620: 06,2475           65015                           AD       BIT15                                 #  TO INDICATE CHANGE IN DSPTAB +11D.
005929,000621: 06,2476           57036                           XCH      DSPTAB     +11D                       
005930,000622: 06,2477           72164                           MASK     OCT37737                              
005931,000623: 06,2500           27036                           ADS      DSPTAB     +11D                       
005932,000624: 06,2501           15347                           TCF      GLOCKOK                               
005933,000625: 
005934,000626: 06,2502           02750        GLAMPTST           TC       LAMPTEST                              #  TURN OFF UNLESS LAMP TEST IN PROGRESS.
005935,000627: 06,2503           15347                           TCF      GLOCKOK                               
005936,000628: 06,2504           12473                           TCF      GLINVERT                              
005937,000629: 
005938,000630: 06,2505           63434        -70DEGS            DEC      -.38888                               #  -70 DEGREES SCALED IN HALF-REVOLUTIONS.
005939,000631: 06,2506           75252        -15DEGS            DEC      -.08333                               
005940,000632: 
005941,000633:                                                                                                  #  PROGRAM NAME:  TLIM.
005942,000634: 
005943,000635:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM MAINTAINS THE TEMP LAMP (BIT 4 OF CHANNEL 11) ON THE DSKY TO AGREE WITH
005944,000636:                                                                                                  #  THE TEMP SIGNAL FROM THE ISS (BIT 15 OF CHANNEL 30).  HOWEVER, THE LIGHT WILL NOT BE TURNED OFF IF A LAMP TEST
005945,000637:                                                                                                  #  IS IN PROGRESS.
005946,000638: 
005947,000639:                                                                                                  #  CALLING SEQUENCE:  CALLED BY IMUMON ON A CHANGE OF BIT 15 OF CHANNEL 30.
005948,000640: 
005949,000641:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005950,000642: 
005951,000643:                                                                                                  #  SUBROUTINES CALLED:  LAMPTEST.
005952,000644: 
005953,000645:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START AND RESTART TURN THE TEMP LAMP OFF.
005954,000646: 
005955,000647:                                                                                                  #  ALARMS:  TEMP LAMP TURNED ON WHEN IMU TEMP GOES OUT OF LIMITS.
005956,000648: 
005957,000649:                                                                                                  #  EXIT:  NXTIFAIL.
005958,000650: 
005959,000651:                                                                                                  #  OUTPUT:  SERVICE OF TEMP LAMP.                  IN A, EXCEPT FOR TLIM.
005960,000652: 
005961,000653: 06,2507           75013        TLIM               MASK     POSMAX                                #  REMOVE BIT FROM WORD OF CHANGES AND SET
005962,000654: 06,2510           54071                           TS       RUPTREG2                              #  DSKY TEMP LAMP ACCORDINGLY.
005963,000655: 
005964,000656: 06,2511           11320                           CCS      IMODES30                              
005965,000657: 06,2512           12520                           TCF      TEMPOK                                
005966,000658: 06,2513           12520                           TCF      TEMPOK                                
005967,000659: 
005968,000660: 06,2514           35030                           CAF      BIT4                                  #  TURN ON LAMP.
005969,000661: 06,2515           00006                           EXTEND                                         
005970,000662: 06,2516           05011                           WOR      DSALMOUT                              
005971,000663: 06,2517           12227                           TCF      NXTIFAIL                              
005972,000664: 
005973,000665: 06,2520           02750        TEMPOK             TC       LAMPTEST                              #  IF TEMP NOW OK, DONT TURN OFF LAMP IF
005974,000666: 06,2521           12227                           TCF      NXTIFAIL                              #  LAMP TEST IN PROGRESS.
005975,000667: 
005976,000668: 06,2522           45030                           CS       BIT4                                  
005977,000669: 06,2523           00006                           EXTEND                                         
005978,000670: 06,2524           03011                           WAND     DSALMOUT                              #  TURN OFF TEMP CAUTION
005979,000671: 06,2525           12227                           TCF      NXTIFAIL                              
005980,000672: 
005981,000673:                                                                                                  #  PROGRAM NAME:  ITURNON.
005982,000674: 
005983,000675:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM IS CALLED BY IMUMON WHEN A CHANGE OF BIT 14 OF CHANNEL 30 (ISS TURN-ON
005984,000676:                                                                                                  #  REQUEST) IS DETECTED.  UPON ENTRY, ITURNON CHECKS IF A TURN-ON DELAY SEQUENCE HAS FAILED, AND IF SO, IT EXITS.
005985,000677:                                                                                                  #  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
005986,000678:                                                                                                  #  THAT TNONTEST WILL INITIATE THE ISS INITIALIZATION SEQUENCE.  IF OFF, THE TURN-ON DELAY SIGNAL, CHANNEL 12 BIT
005987,000679:                                                                                                  #  15, IS CHECKED AND IF IT IS ON, ITURNON EXITS.  IF THE DELAY SIGNAL IS OFF, PROGRAM ALARM 00207 IS ISSUED, BIT 2
005988,000680:                                                                                                  #  OF IMODES30 IS SET TO 1 AND THE PROGRAM EXITS.
005989,000681: 
005990,000682:                                                                                                  #  THE SETTING OF BIT 2 OF IMODES30 (ISS DELAY SEQUENCE FAIL) INHIBITS THIS ROUTINE AND IMUOP FROM
005991,000683:                                                                                                  #  PROCESSING ANY CHANGES.  THIS BIT WILL BE RESET BY THE ENDTNON ROUTINE WHEN THE CURRENT 90 SECOND DELAY PERIOD
005992,000684:                                                                                                  #  ENDS.
005993,000685: 
005994,000686:                                                                                                  #  CALLING SEQUENCE:  FROM IMUMOM WHEN ISS TURN-ON REQUEST CHANGES STATE.
005995,000687: 
005996,000688:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
005997,000689: 
005998,000690:                                                                                                  #  SUBROUTINES CALLED:  ALARM, IF THE ISS TURN-ON REQUEST IS NOT PRESENT FOR 90 SECONDS.
005999,000691: 
006000,000692:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START AND RESTART SET BIT 15 OF CHANNEL 12 AND BITS 2 AND 7 OF IMODES30 TO 0,
006001,000693:                                                                                                  #  AND BIT 14 OF IMODES30 TO 1.
006002,000694: 
006003,000695:                                                                                                  #  ALARMS: PROGRAM ALARM 00207 IS ISSUED IF THE ISS TURN-ON REQUEST SIGNAL IS NOT PRESENT FOR 90 SECONDS.
006004,000696: 
006005,000697:                                                                                                  #  EXIT:  NXTIFAIL.
006006,000698: 
006007,000699:                                                                                                  #  OUTPUT:  BIT 7 OF IMODES30 TO START ISS INITIALIZATION, OR BIT 2 OF IMODES30 AND PROGRAM ALARM 00207 TO INDICATE
006008,000700:                                                                                                  #  A FAILED TURN-ON SEQUENCE.
006009,000701: 
006010,000702: 06,2526           35032        ITURNON            CAF      BIT2                                  #  IF DELAY REQUEST HAS GONE OFF
006011,000703: 06,2527           71320                           MASK     IMODES30                              #  PREMATURELY, DO NOT PROCESS ANY CHANGES
006012,000704: 06,2530           10000                           CCS      A                                     #  UNTIL THE CURRENT 90 SEC WAIT EXPIRES.
006013,000705: 06,2531           12227                           TCF      NXTIFAIL                              
006014,000706: 
006015,000707: 06,2532           35016                           CAF      BIT14                                 #  SEE IF JUST ON OR OFF.
006016,000708: 06,2533           71320                           MASK     IMODES30                              
006017,000709: 06,2534           00006                           EXTEND                                         
006018,000710: 06,2535           12551                           BZF      ITURNON2                              #  IF JUST ON.
006019,000711: 
006020,000712: 06,2536           35015                           CAF      BIT15                                 
006021,000713: 06,2537           00006                           EXTEND                                         #  SEE IF DELAY PRESENT DISCRETE HAS BEEN
006022,000714: 06,2540           02012                           RAND     CHAN12                                #  SENT.  IF SO, ACTION COMPLETE.
006023,000715: 06,2541           00006                           EXTEND                                         
006024,000716: 06,2542           12544                           BZF      +2                                    
006025,000717: 06,2543           12227                           TCF      NXTIFAIL                              
006026,000718: 
006027,000719: 06,2544           35032                           CAF      BIT2                                  #  IF NOT, SET BIT TO INDICATE REQUEST NOT
006028,000720: 06,2545           27320                           ADS      IMODES30                              #  PRESENT FOR FULL DURATION.
006029,000721: 06,2546           05664                           TC       ALARM                                 
006030,000722: 06,2547           00207                           OCT      207                                   
006031,000723: 06,2550           12227                           TCF      NXTIFAIL                              
006032,000724: 
006033,000725: 06,2551           41320        ITURNON2           CS       IMODES30                              #  SET BIT7 TO INDICATE WAIT OF 1 SAMPLE
006034,000726: 06,2552           75025                           MASK     BIT7                                  
006035,000727: 06,2553           27320                           ADS      IMODES30                              
006036,000728: 06,2554           12227                           TCF      NXTIFAIL                              
006037,000729: 
006038,000730:                                                                                                  #  PROGRAM NAME:  IMUCAGE.
006039,000731: 
006040,000732:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM PROCESSES CHANGES OF THE IMUCAGE INBIT, CHANNEL 30 BIT 11.  IF THE BIT
006041,000733:                                                                                                  #  CHANGES TO 0 (CAGE BUTTON PRESSED), THE ISS IS CAGED (ICDU ZERO + COARSE ALIGN + NO ATT LAMP) UNTIL THE
006042,000734:                                                                                                  #  ASTRONAUT SELECTS ANOTHER PROGRAM TO ALIGN THE ISS.  ANY PULSE TRAINS TO THE ICDU'S AND GYRO'S ARE TERMINATED,
006043,000735:                                                                                                  #  THE ASSOCIATED OUTCOUNTERS ARE ZEROED AND THE GYRO'S ARE DE-SELECTED.  NO ACTION OCCURS WHEN THE BUTTON IS
006044,000736:                                                                                                  #  RELEASED (INBIT CHANGES TO 1).
006045,000737: 
006046,000738:                                                                                                  #  CALLING SEQUENCE:  BY IMUMON WHEN IMU CAGE BIT CHANGES.
006047,000739: 
006048,000740:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006049,000741: 
006050,000742:                                                                                                  #  SUBROUTINES CALLED:  CAGESUB.
006051,000743: 
006052,000744:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START AND RESTART SET BIT 11 OF IMODES30 TO 1.
006053,000745: 
006054,000746:                                                                                                  #  ALARMS: NONE.
006055,000747: 
006056,000748:                                                                                                  #  EXIT:  NXTIFAIL.
006057,000749: 
006058,000750:                                                                                                  #  OUTPUT:  ISS CAGED, COUNTERS ZEROED, PULSE TRAINS TERMINATED AND NO ATT LAMP LIT.
006059,000751: 
006060,000752: 06,2555           10000        IMUCAGE            CCS      A                                     #  NO ACTION IF GOING OFF.
006061,000753: 06,2556           12354                           TCF      ISSZERO                               
006062,000754: 06,2557           42762                           CS       OCT77000                              #  TERMINATE ICDU, OPTICS, GYRO PULSE TRAINS
006063,000755: 06,2560           00006                           EXTEND                                         
006064,000756: 06,2561           03014                           WAND     CHAN14                                
006065,000757: 
006066,000758: 06,2562           42756                           CS       OCT272                                #  KNOCK DOWN TVC ENABLE, IMU ERROR COUNTER
006067,000759: 06,2563           00006                           EXTEND                                         #    ENABLE, ZERO ICDU, COARSE ALIGN
006068,000760: 06,2564           03012                           WAND     CHAN12                                #    ENABLE, OPTICS ERR CNTR ENABLE
006069,000761: 
006070,000762: 06,2565           45017                           CS       BIT13                                 #  TURN OFF ENGINE
006071,000763: 06,2566           00006                           EXTEND                                         
006072,000764: 06,2567           03011                           WAND     DSALMOUT                              
006073,000765: 
006074,000766: 06,2570           02725                           TC       CAGESUB1                              
006075,000767: 
006076,000768: 06,2571           04754                           TC       IBNKCALL                              #  KNOCK DOWN TRACK, REFSMMAT, DRIFT FLAGS
006077,000769: 06,2572           17060                           CADR     RNDREFDR                              
006078,000770: 
006079,000771: 06,2573           45035                           CS       ZERO                                  #  ZERO COMMAND OUT-COUNTERS
006080,000772: 06,2574           54050                           TS       CDUXCMD                               
006081,000773: 06,2575           54051                           TS       CDUYCMD                               
006082,000774: 06,2576           54052                           TS       CDUZCMD                               
006083,000775: 06,2577           54047                           TS       GYROCMD                               
006084,000776: 
006085,000777: 06,2600           42761                           CS       OCT740                                #  HAVING WAITED AT LEAST 27 MCT FROM
006086,000778: 06,2601           00006                           EXTEND                                         #  GYRO PULSE TRAIN TERMINATION, WE CAN
006087,000779: 06,2602           03014                           WAND     CHAN14                                #  DE-SELECT THE GYROS.
006088,000780: 06,2603           12227                           TCF      NXTIFAIL                              
006089,000781: 
006090,000782:                                                                                                  #  PROGRAM NAME:  IMUOP.
006091,000783: 
006092,000784:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM PROCESSES CHANGES IN THE ISS OPERATE DISCRETE, BIT 9 OF CHANNEL 30.
006093,000785:                                                                                                  #  IF THE INBIT CHANGES TO 0, INDICATING ISS ON, IMUOP GENERALLY SETS BIT 7 OF IMODES30 TO 1 TO REQUEST ISS
006094,000786:                                                                                                  #  INITIALIZATION VIA TNONTEST.  AN EXCEPTION IS DURING A FAILED ISS DELAY DURING WHICH BIT 2 OF IMODES30 IS SET
006095,000787:                                                                                                  #  TO 1 AND NO FURTHER INITIALIZATION IS REQUIRED.  WHEN THE INBIT CHANGES TO 1, INDICATING ISS OFF, IMUSEFLG IS
006096,000788:                                                                                                  #  TESTED TO SEE IF ANY PROGRAM WAS USING THE ISS.  IF SO, PROGRAM ALARM 00214 IS ISSUED.
006097,000789: 
006098,000790:                                                                                                  #  CALLING SEQUENCE:  BY IMUMON WHEN BIT 9 OF CHANNEL 30 CHANGES.
006099,000791: 
006100,000792:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006101,000793: 
006102,000794:                                                                                                  #  SUBROUTINES CALLED:  ALARM, IF ISS IS TURNED OFF WHILE IN USE.
006103,000795: 
006104,000796:                                                                                                  #  ERASABLE INITIALIZATION:  ON FRESH START AND RESTART, BIT 9 OF IMODES30 IS SET TO 1 EXCEPT WHEN THE GIMBAL LOCK
006105,000797:                                                                                                  #  LAMP IS ON, IN WHICH CASE IT IS SET TO 0.  THIS PREVENTS ICDU ZERO BY TNONTEST WITH THE ISS IN GIMBAL LOCK.
006106,000798: 
006107,000799:                                                                                                  #  ALARMS:  PROGRAM ALARM 00214 IF THE ISS IS TURNED OFF WHILE IN USE.
006108,000800: 
006109,000801:                                                                                                  #  EXIT:  NXTIFAIL.
006110,000802: 
006111,000803:                                                                                                  #  OUTPUT:  ISS INITIALIZATION REQUEST (IMODES30 BIT 7) OR PROGRAM ALARM 00214.
006112,000804: 
006113,000805: 06,2604           00006        IMUOP              EXTEND                                         #  IF OPERATE JUST ON, WAIT 1 SAMPLE.
006114,000806: 06,2605           12625                           BZF      IMUOP2                                
006115,000807: 
006116,000808: 06,2606           41321                           CS       IMODES33                              #  DISABLE DAP
006117,000809: 06,2607           75026                           MASK     BIT6                                  
006118,000810: 06,2610           27321                           ADS      IMODES33                              
006119,000811: 
006120,000812: 06,2611           04754                           TC       IBNKCALL                              #  KNOCK DOWN TRACK, REFSMMAT, DRIFT FLAGS
006121,000813: 06,2612           17060                           CADR     RNDREFDR                              
006122,000814: 
006123,000815: 06,2613           42757                           CS       BITS7&8                               #  KNOCK DOWN RENDEVOUS, IMUUSE FLAGS
006124,000816: 06,2614           70074                           MASK     STATE                                 
006125,000817: 06,2615           56074                           XCH      STATE                                 #  IF GOING OFF, ALARM IF PROG USING IMU
006126,000818: 06,2616           40000                           COM                                            
006127,000819: 06,2617           75024                           MASK     IMUSEFLG                              
006128,000820: 06,2620           10000                           CCS      A                                     
006129,000821: 06,2621           12227                           TCF      NXTIFAIL                              
006130,000822: 
006131,000823: 06,2622           05664                           TC       ALARM                                 
006132,000824: 06,2623           00214                           OCT      214                                   
006133,000825: 06,2624           12227                           TCF      NXTIFAIL                              
006134,000826: 
006135,000827: 06,2625           35032        IMUOP2             CAF      BIT2                                  #  SEE IF FAILED ISS TURN-ON SEQ IN PROG.
006136,000828: 06,2626           71320                           MASK     IMODES30                              
006137,000829: 06,2627           10000                           CCS      A                                     
006138,000830: 06,2630           12227                           TCF      NXTIFAIL                              #  IF SO, DONT PROCESS UNTIL PRESENT 90
006139,000831: 06,2631           12551                           TCF      ITURNON2                              #  SECONDS EXPIRES.
006140,000832: 
006141,000833:                                                                                                  #  PROGRAM NAME:  PIPFAIL
006142,000834: 
006143,000835:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM PROCESSES CHANGES OF BIT 13 OF CHANNEL 33, PIPA FAIL.  IT SETS BIT 10 OF
006144,000836:                                                                                                  #  IMODES30 TO AGREE.  IT CALLS SETISSW IN CASE A PIPA FAIL NECESSITATES AN ISS WARNING.  IF NOT, I.E., IMODES30
006145,000837:                                                                                                  #  BIT 1 = 1, AND A PIPA FAIL IS PRESENT AND THE ISS IS NOT BEING INITIALIZED, PROGRAM ALARM 00212 IS ISSUED.
006146,000838: 
006147,000839:                                                                                                  #  CALLING SEQUENCE:  BY C33TEST ON CHANGES OF CHANNEL 33 BIT 13.
006148,000840: 
006149,000841:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006150,000842: 
006151,000843:                                                                                                  #  SUBROUTINES CALLED:  1) SETISSW, AND 2) ALARM (SEE FUNCTIONAL DESCRIPTION).
006152,000844: 
006153,000845:                                                                                                  #  ERASABLE INITIALIZATION:  SEE IMUMON FOR INITIALIZATION OF IMODES30.  THE RELAVANT BITS ARE 5, 7, 8, 9, AND 10.
006154,000846: 
006155,000847:                                                                                                  #  ALARMS:  PROGRAM ALARM 00212 IF PIPA FAIL IS PRESENT BUT NEITHER ISS WARNING IS TO BE ISSUED NOR THE ISS IS
006156,000848:                                                                                                  #  BEING INITIALIZED.
006157,000849: 
006158,000850:                                                                                                  #  EXIT:  NXTFL33.
006159,000851: 
006160,000852:                                                                                                  #  OUTPUT:  PROGRAM ALARM 00212 AND ISS WARNING MAINTENANCE.
006161,000853: 
006162,000854: 06,2632           10000        PIPFAIL            CCS      A                                     #  SET BIT10 IN IMODES30 SO ALL ISS WARNING
006163,000855: 06,2633           35022                           CAF      BIT10                                 #  INFO IS IN ONE REGISTER.
006164,000856: 06,2634           57320                           XCH      IMODES30                              
006165,000857: 06,2635           72763                           MASK     -BIT10                                
006166,000858: 06,2636           27320                           ADS      IMODES30                              
006167,000859: 
006168,000860: 06,2637           02665                           TC       SETISSW                               
006169,000861: 
006170,000862: 06,2640           41320                           CS       IMODES30                              #  IF PIP FAIL DOESNT LIGHT ISS WARNING, DO
006171,000863: 06,2641           75033                           MASK     BIT1                                  #  A PROGRAM ALARM IF IMU OPERATING BUT NOT
006172,000864: 06,2642           10000                           CCS      A                                     #  CAGED OR BEING TURNED ON.
006173,000865: 06,2643           12425                           TCF      NXTFL33                               
006174,000866: 
006175,000867: 06,2644           31320                           CA       IMODES30                              
006176,000868: 06,2645           72760                           MASK     OCT1720                               
006177,000869: 06,2646           10000                           CCS      A                                     
006178,000870: 06,2647           12425                           TCF      NXTFL33                               #  ABOVE CONDITION NOT MET.
006179,000871: 
006180,000872: 06,2650           05664                           TC       ALARM                                 
006181,000873: 06,2651           00212                           OCT      212                                   
006182,000874: 06,2652           12425                           TCF      NXTFL33                               
006183,000875: 
006184,000876:                                                                                                  #  PROGRAM NAMES:  DNTMFAST, UPTMFAST
006185,000877: 
006186,000878:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THESE PROGRAMS PROCESS CHANGES OF BITS 12 AND 11 OF CHANNEL 33.  IF A BIT CHANGES TO A
006187,000879:                                                                                                  #  0, A PROGRAM ALARM IS ISSUED.  THE ALARMS ARE:
006188,000880: 
006189,000881:                                                                                                  #        BIT     ALARM   CAUSE
006190,000882:                                                                                                  #        ---     -----   -----
006191,000883:                                                                                                  #         12     01105   DOWNLINK TOO FAST
006192,000884:                                                                                                  #         11     01106   UPLINK TOO FAST
006193,000885: 
006194,000886:                                                                                                  #  CALLING SEQUENCE:  BY C33TEST ON A BIT CHANGE.
006195,000887: 
006196,000888:                                                                                                  #  SUBROUTINES CALLED:  ALARM, IF A BIT CHANGES TO A 0.
006197,000889: 
006198,000890:                                                                                                  #  ERASABLE INITIALIZATION:  FRESH START OR RESTART, BITS 12 AND 11 OF IMODES33 ARE SET TO 1.
006199,000891: 
006200,000892:                                                                                                  #  ALARMS:  SEE FUNCTIONAL DESCRIPTION.
006201,000893: 
006202,000894:                                                                                                  #  EXIT:  NXTFL33.
006203,000895: 
006204,000896:                                                                                                  #  OUTPUT:  PROGRAM ALARM ON A BIT CHANGE TO 0.
006205,000897: 
006206,000898: 06,2653           10000        DNTMFAST           CCS      A                                     #  DO PROG ALARM IF TM TOO FAST.
006207,000899: 06,2654           12425                           TCF      NXTFL33                               
006208,000900: 
006209,000901: 06,2655           05664                           TC       ALARM                                 
006210,000902: 06,2656           01105                           OCT      1105                                  
006211,000903: 06,2657           12425                           TCF      NXTFL33                               
006212,000904: 
006213,000905: 06,2660           10000        UPTMFAST           CCS      A                                     #  SAME AS DNLINK TOO FAST WITH DIFFERENT
006214,000906: 06,2661           12425                           TCF      NXTFL33                               #  ALARM CODE.
006215,000907: 
006216,000908: 06,2662           05664                           TC       ALARM                                 
006217,000909: 06,2663           01106                           OCT      1106                                  
006218,000910: 06,2664           12425                           TCF      NXTFL33                               
006219,000911: 
006220,000912:                                                                                                  #  PROGRAM NAME:  SETISSW
006221,000913: 
006222,000914:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS PROGRAM TURNS THE ISS WARNING LAMP ON AND OFF (CHANNEL 11 BIT 1 = 1 FOR ON,
006223,000915:                                                                                                  #  0 FOR OFF) DEPENDING ON THE STATUS OF IMODES30 BITS 13 (IMU FAIL) AND 4 (INHIBIT IMU FAIL), 12 (ICDU FAIL) AND
006224,000916:                                                                                                  #  3 (INHIBIT ICDU FAIL), AND 10 (PIPA FAIL) AND 1 (INHIBIT PIPA FAIL).  THE LAMP IS LEFT ON IF A LAMP TEST IS IN
006225,000917:                                                                                                  #  PROGRESS.
006226,000918: 
006227,000919:                                                                                                  #  CALLING SEQUENCE:  CALLED BY IMUMON ON CHANGES TO IMU FAIL AND ICDU FAIL.  CALLED BY IFAILOK AND PFAILOK UPON
006228,000920:                                                                                                  #  REMOVAL OF THE FAIL INHIBITS.  CALLED BY PIPFAIL WHEN THE PIPA FAIL DISCRETE CHANGES.  IT IS CALLED BY PIPUSE
006229,000921:                                                                                                  #  SINCE THE PIPA FAIL PROGRAM ALARM MAY NECESSITATE AN ISS WARNING, AND LIKEWISE BY PIPFREE WHEN THE ALARM DEPARTS
006230,000922:                                                                                                  #  AND IT IS CALLED BY IMUZERO3 AND ISSUP AFTER THE FAIL INHIBITS HAVE BEEN REMOVED.
006231,000923: 
006232,000924:                                                                                                  #  JOBS OR TASKS INITIATED:  NONE.
006233,000925: 
006234,000926:                                                                                                  #  SUBROUTINES CALLED:  NONE.
006235,000927: 
006236,000928:                                                                                                  #  ERASABLE INITIALIZATION:
006237,000929: 
006238,000930:                                                                                                  #        1) IMODES30 - SEE IMUMON.
006239,000931:                                                                                                  #        2) IMODES33 BIT 1 = 0 (LAMP TEST NOT IN PROGRESS).
006240,000932: 
006241,000933:                                                                                                  #  ALARMS:  ISS WARNING.
006242,000934: 
006243,000935:                                                                                                  #  EXIT: VIA Q.
006244,000936: 
006245,000937:                                                                                                  #  OUTPUT: ISS WARNING LAMP SET PROPERLY.
006246,000938: 
006247,000939: 06,2665           35041        SETISSW            CAF      OCT15                                 #  SET ISS WARNING USING THE FAIL BITS IN
006248,000940: 06,2666           71320                           MASK     IMODES30                              #  BITS 13, 12, AND 10 OF IMODES30 AND THE
006249,000941: 06,2667           00006                           EXTEND                                         #  FAILURE INHIBIT BITS IN POSITIONS
006250,000942: 06,2670           75022                           MP       BIT10                                 #  4, 3, AND 1.
006251,000943: 06,2671           31320                           CA       IMODES30                              
006252,000944: 06,2672           00006                           EXTEND                                         
006253,000945: 06,2673           04001                           ROR      LCHAN                                 #  0 INDICATES FAILURE.
006254,000946: 06,2674           40000                           COM                                            
006255,000947: 06,2675           75103                           MASK     OCT15000                              
006256,000948: 06,2676           10000                           CCS      A                                     
006257,000949: 06,2677           12710                           TCF      ISSWON                                #  FAILURE.
006258,000950: 
006259,000951: 06,2700           35033        ISSWOFF            CAF      BIT1                                  #  DONT TURN OFF ISS WARNING IF LAMP TEST
006260,000952: 06,2701           71321                           MASK     IMODES33                              #  IN PROGRESS.
006261,000953: 06,2702           10000                           CCS      A                                     
006262,000954: 06,2703           00002                           TC       Q                                     
006263,000955: 
006264,000956: 06,2704           45033                           CS       BIT1                                  
006265,000957: 06,2705           00006                           EXTEND                                         
006266,000958: 06,2706           03011                           WAND     DSALMOUT                              #  TURN OFF ISS WARNING
006267,000959: 06,2707           00002                           TC       Q                                     
006268,000960: 
006269,000961: 06,2710           00006        ISSWON             EXTEND                                         
006270,000962: 06,2711           22066                           QXCH     ITEMP6                                
006271,000963: 06,2712           05770                           TC       VARALARM                              #  TELL EVERYONE WHAT CAUSED THE ISS WARNING
006272,000964: 06,2713           35033                           CAF      BIT1                                  
006273,000965: 06,2714           00006                           EXTEND                                         
006274,000966: 06,2715           05011                           WOR      DSALMOUT                              #  TURN ON ISS WARNING
006275,000967: 06,2716           00066                           TC       ITEMP6                                
006276,000968: 
006277,000969: 06,2717           47703        CAGESUB            CS       BIT15+6                               #  SET OUTBITS + INTERNAL FLAGS FOR
006278,000970: 06,2720           00006                           EXTEND                                         #  SYSTEM TURN-ON OR CAGE.  DISABLE THE
006279,000971: 06,2721           03012                           WAND     CHAN12                                #  ERROR COUNTER AND REMOVE IMU DELAY COMP.
006280,000972: 06,2722           35043                           CAF      BITS4&5                               #  SEND ZERO AND COARSE.
006281,000973: 06,2723           00006                           EXTEND                                         
006282,000974: 06,2724           05012                           WOR      CHAN12                                
006283,000975: 
006284,000976: 06,2725           41036        CAGESUB1           CS       DSPTAB     +11D                       #  TURN ON NO ATT LAMP
006285,000977: 06,2726           72753                           MASK     OC40010                               
006286,000978: 06,2727           27036                           ADS      DSPTAB     +11D                       
006287,000979: 
006288,000980: 06,2730           41320        CAGESUB2           CS       IMODES30                              #  SET FLAGS TO INDICATE CAGING OR TURN-ON
006289,000981: 06,2731           72755                           MASK     OCT75                                 #  AND INHIBIT ALL ISS WARNING INFO
006290,000982: 06,2732           27320                           ADS      IMODES30                              
006291,000983: 
006292,000984: 06,2733           41321                           CS       IMODES33                              #  DISABLE DAP AUTO AND HOLD MODES
006293,000985: 06,2734           75026                           MASK     BIT6                                  
006294,000986: 06,2735           27321                           ADS      IMODES33                              
006295,000987: 
006296,000988: 06,2736           00002                           TC       Q                                     
006297,000989: 
006298,000990: 06,2737  06,2665               IMUFAIL            EQUALS   SETISSW                               
006299,000991: 06,2737  06,2665               ICDUFAIL           EQUALS   SETISSW                               
006300,000992: 
006301,000993:                                                                                                  #  JUMP TABLES AND CONSTANTS.
006302,000994: 
006303,000995: 06,2737           12526        IFAILJMP           TCF      ITURNON                               #  CHANNEL 30 DISPATCH.
006304,000996: 06,2740           12665                           TCF      IMUFAIL                               
006305,000997: 06,2741           12665                           TCF      ICDUFAIL                              
006306,000998: 06,2742           12555                           TCF      IMUCAGE                               
006307,000999: 06,2743           76400        30RDMSK            OCT      76400                                 #  (BIT 10 NOT SAMPLED HERE).
006308,001000: 06,2744           12604                           TCF      IMUOP                                 
006309,001001: 
006310,001002: 06,2745           12632        C33JMP             TCF      PIPFAIL                               #  CHANNEL 33 DISPATCH.
006311,001003: 06,2746           12653                           TCF      DNTMFAST                              
006312,001004: 06,2747           12660                           TCF      UPTMFAST                              
006313,001005: 
006314,001006:                                                                                                  #  SUBROUTINE TO SKIP IF LAMP TEST NOT IN PROGRESS.
006315,001007: 
006316,001008: 06,2750           41321        LAMPTEST           CS       IMODES33                              #  BIT 1 OF IMODES33 = 1 IF LAMP TEST IN
006317,001009: 06,2751           75033                           MASK     BIT1                                  #  PROGRESS.
006318,001010: 06,2752           13065                           TCF      ZOPFIN3                               
006319,001011: 
006320,001012: 06,2753     5104               33RDMSK            EQUALS   PRIO16                                
006321,001013: 06,2753           40010        OC40010            OCT      40010                                 
006322,001014: 06,2754           00054        OCT54              OCT      54                                    
006323,001015: 06,2755           00075        OCT75              OCT      75                                    
006324,001016: 06,2756           00272        OCT272             OCT      00272                                 
006325,001017: 06,2757           00300        BITS7&8            OCT      300                                   
006326,001018: 06,2760           01720        OCT1720            OCT      1720                                  
006327,001019: 06,2761           00740        OCT740             OCT      00740                                 
006328,001020: 06,2762     5103               OCT15000           EQUALS   PRIO15                                
006329,001021: 06,2762           77000        OCT77000           OCT      77000                                 
006330,001022: 06,2763           76777        -BIT10             OCT      -1000                                 
006331,001023: 
006332,001024: 06,2764           21450        90SECS             DEC      9000       B-14                       
006333,001025: 06,2765     5775               120MS              =        OCT14                                 #  (DEC12)
006334,001026: 06,2765     5347               GLOCKOK            EQUALS   RESUME                                
006335,001027: 
006336,001028:                                                                                                  #  OPTICS MONITORING AND ZERO ROUTINES
006337,001029: 06,2765           31331        OPTMON             CA       OPTMODES                              #  MONITOR OPTICS INBITS IN CHAN 30 AND 33
006338,001030: 06,2766           00006                           EXTEND                                         
006339,001031: 06,2767           06030                           RXOR     CHAN30                                #  LOOK FOR OCDU FAIL BIT CHANGE
006340,001032: 06,2770           75025                           MASK     BIT7                                  
006341,001033: 06,2771           54070                           TS       RUPTREG1                              #  STORE CHANGE BIT
006342,001034: 06,2772           10000                           CCS      A                                     
006343,001035: 06,2773           03224                           TC       OCDUFTST                              #  PROCESS OCDUFAIL BIT CHANGE
006344,001036: 
006345,001037: 06,2774           11303        33OPTMON           CCS      OPTIND                                #  BYPASS IF TVC TAKEOVER
006346,001038: 06,2775           13001                           TCF      +4                                    
006347,001039: 06,2776           13001                           TCF      +3                                    
006348,001040: 06,2777           13001                           TCF      +2                                    
006349,001041: 06,3000           15347                           TCF      RESUME                                
006350,001042: 
006351,001043: 06,3001           31331                           CA       OPTMODES                              #  LOOK FOR OPTICS MODE SWITCH CHANGE
006352,001044: 06,3002           00006                           EXTEND                                         
006353,001045: 06,3003           06033                           RXOR     CHAN33                                
006354,001046: 06,3004           75043                           MASK     OCTHIRTY                              
006355,001047: 06,3005           26070                           ADS      RUPTREG1                              #  STORE INBIT CHANGES
006356,001048: 06,3006           23331                           LXCH     OPTMODES                              
006357,001049: 06,3007           00006                           EXTEND                                         
006358,001050: 06,3010           06001                           RXOR     LCHAN                                 
006359,001051: 06,3011           55331                           TS       OPTMODES                              #  UPDATE OPTMODES TO SHOW BIT CHANGES
006360,001052: 
006361,001053: 06,3012           40000                           COM                                            #  SAMPLE CURRENT SWITCH SETTING
006362,001054: 06,3013           75043                           MASK     OCTHIRTY                              
006363,001055: 06,3014           00006                           EXTEND                                         
006364,001056: 06,3015           13022                           BZF      SETSAMP                               #  MANUAL-SET ZERO IN SWSAMPLE
006365,001057: 
006366,001058: 06,3016           75027                           MASK     BIT5                                  #  SEE IF CSC
006367,001059: 06,3017           10000                           CCS      A                                     
006368,001060: 06,3020           03022                           TC       +2                                    #  CSC-SET SWSAMPLE POS
006369,001061: 06,3021           37716                           CAF      NEGONE                                #  ZOPTICS-SET SWSAMPLE (-1)
006370,001062: 06,3022           55314        SETSAMP            TS       SWSAMPLE                              #  CURRENT OPTICS SWITCH SETTING
006371,001063: 
006372,001064: 06,3023           11315        PROCESSW           CCS      DESOPMOD                              #  BRANCH ON PREVIOUS SETTING
006373,001065: 06,3024           03125                           TC       CSCDES                                #  CSC
006374,001066: 06,3025           03077                           TC       MANUDES                               #  MANUAL
006375,001067: 06,3026           03027                           TC       ZOPTDES                               #  ZERO OPTICS
006376,001068: 06,3027           11314        ZOPTDES            CCS      SWSAMPLE                              #  IS SWITCH STILL AT ZOPTICS
006377,001069: 06,3030           03047                           TC       ZTOCSC                                #  NOW AT CSC
006378,001070: 06,3031           03037                           TC       ZTOMAN                                #  MANUAL
006379,001071: 06,3032           03057                           TC       ZOPFINI                               #  ZOPTICS-SEE IF ZOPT PROCESSING
006380,001072: 06,3033           03154                           TC       SETDESMD                              #  ZOPT NOT PROCESSING-NO ACTION
006381,001073: 
006382,001074: 06,3034           11317                           CCS      ZOPTCNT                               #  ZOPT PROCESSING-CHECK COUNTER
006383,001075: 06,3035           03153                           TC       SETCNT                                #  32 SAMPLE NOT FINISHED-SET COUNTER
006384,001076: 06,3036           03157                           TC       SETZOEND                              #  32 SAMPLE WAIT COMPLETED-SET UP ZOP END
006385,001077: 
006386,001078: 06,3037           03057        ZTOMAN             TC       ZOPFINI                               #  ZOP TO MANUAL-IS ZOPT DONE
006387,001079: 06,3040           03154                           TC       SETDESMD                              #  YES-NORMAL EXIT
006388,001080: 
006389,001081: 06,3041           05664        ZOPALARM           TC       ALARM                                 #  ALARM-SWITCHED ALTERED WHILE ZOPTICS
006390,001082: 06,3042           00116                           OCT      00116                                 
006391,001083: 06,3043           35040                           CAF      OCT13                                 #  PROCESSING-SET RETURN OPTION
006392,001084: 06,3044           55316                           TS       WTOPTION                              
006393,001085: 
006394,001086: 06,3045           03070                           TC       CANZOPT                               #  CANCEL ZOPT
006395,001087: 
006396,001088: 06,3046           03154                           TC       SETDESMD                              
006397,001089: 
006398,001090: 06,3047           03057        ZTOCSC             TC       ZOPFINI                               #  SEE IF ZOPT PROCESSING
006399,001091: 06,3050           03115                           TC       MANTOCSC   +3                         #  NO-CHECK RETURN TO COARS OPT
006400,001092: 06,3051           05664                           TC       ALARM                                 #  ZOPT PROCESSING-ALARM
006401,001093: 06,3052           00116                           OCT      00116                                 
006402,001094: 06,3053           03070                           TC       CANZOPT                               #  CANCEL ZOPT
006403,001095: 06,3054           03112                           TC       MANTOCSC                              #  ZERO CNT-LOOK FOR COARS OPT RETURN
006404,001096: 
006405,001097: 06,3055           35023        COARSLOK           CAF      BIT9                                  #  IF COARS OPT SINCE FSTART GO TO L+2
006406,001098: 06,3056           13064                           TCF      ZOPFIN2                               #  IF NOT GO TO L+1
006407,001099: 06,3057           35033        ZOPFINI            CAF      BIT1                                  #  SEE IF END ZOPT TASK WORKING
006408,001100: 06,3060           71331                           MASK     OPTMODES                              
006409,001101: 06,3061           10000                           CCS      A                                     
006410,001102: 06,3062           05347                           TC       RESUME                                #  ZOPT TASK WORKING-WAIT ONE SAMPLE PERIOD
006411,001103: 
006412,001104: 06,3063           35031                           CAF      BIT3                                  #  TEST IF ZOPTICS PROCESSING
006413,001105: 06,3064           71331        ZOPFIN2            MASK     OPTMODES                              #  RETURNS TO L+1 PROCESSING AND
006414,001106: 06,3065           10000        ZOPFIN3            CCS      A                                     
006415,001107: 06,3066           24002                           INCR     Q                                     #  L+2 IF NOT
006416,001108: 06,3067           00002                           TC       Q                                     
006417,001109: 
006418,001110: 06,3070           46211        CANZOPT            CS       SIX                                   #  CANCEL ZERO OPTICS
006419,001111: 06,3071           71331                           MASK     OPTMODES                              #  ZERO ZOPT PROCESSING BIT-ENABLE OCDUFAIL
006420,001112: 06,3072           55331                           TS       OPTMODES                              
006421,001113: 06,3073           45033                           CS       BIT1                                  #  MAKE SURE ZERO OCDU IS OFF
006422,001114: 06,3074           00006                           EXTEND                                         
006423,001115: 06,3075           03012                           WAND     CHAN12                                
006424,001116: 06,3076           00002                           TC       Q                                     
006425,001117: 
006426,001118: 06,3077           11314        MANUDES            CCS      SWSAMPLE                              #  SEE IF SWITCH STILL IN MANUAL MODE
006427,001119: 06,3100           03112                           TC       MANTOCSC                              #  NOW AT CSC
006428,001120: 06,3101           03107                           TC       MANTOMAN                              #  STILL MANUAL
006429,001121: 06,3102           11316                           CCS      WTOPTION                              #  ZOPTICS-LOOK AT ZOPTICS RETURN OPTION
006430,001122: 06,3103           03105                           TC       +2                                    #  5 SEC RETURN GOOD-CONTINUE ZOPTICS
006431,001123: 06,3104           03151                           TC       OPTZERO                               #  ZOPTICS MUST START ANEW
006432,001124: 
006433,001125: 06,3105           03216                           TC       INITZOPT                              #  SHOW ZERO OPTICS PROCESSING
006434,001126: 06,3106           03154                           TC       SETDESMD                              #  NORMAL EXIT
006435,001127: 
006436,001128: 06,3107           11316        MANTOMAN           CCS      WTOPTION                              #  DECREMENT RETURN OPTION TIME
006437,001129: 06,3110           55316                           TS       WTOPTION                              
006438,001130: 06,3111           03154                           TC       SETDESMD                              
006439,001131: 
006440,001132: 06,3112           35035        MANTOCSC           CAF      ZERO                                  #  CANCEL ZOPT RETURN OPTION IF SET
006441,001133: 06,3113           55316                           TS       WTOPTION                              
006442,001134: 06,3114           55317                           TS       ZOPTCNT                               
006443,001135: 
006444,001136: 06,3115           03055                           TC       COARSLOK                              #  CHECK FOR COARS OPT RETURN
006445,001137: 06,3116           03154                           TC       SETDESMD                              #  NO COARS TASK-NO ACTION
006446,001138: 
006447,001139: 06,3117           35033                           CAF      ONE                                   #  SET COARS OPT WORKING
006448,001140: 06,3120           55303                           TS       OPTIND                                
006449,001141: 06,3121           35032                           CAF      BIT2                                  #  ENABLE OPTICS CDU ERROR CNTS
006450,001142: 06,3122           00006                           EXTEND                                         
006451,001143: 06,3123           05012                           WOR      CHAN12                                
006452,001144: 
006453,001145: 06,3124           03154                           TC       SETDESMD                              
006454,001146: 
006455,001147: 06,3125           11314        CSCDES             CCS      SWSAMPLE                              #  SEE IF SWITCH STILL AT CSC
006456,001148: 06,3126           03154                           TC       SETDESMD                              #  STILL AT CSC
006457,001149: 06,3127           03133                           TC       CSCTOMAN                              #  MANUAL
006458,001150: 06,3130           35026        CSCTOZOP           CAF      OCT40                                 #  ZOPTICS-INITIALIZE FOR ZOPT
006459,001151: 06,3131           55317                           TS       ZOPTCNT                               
006460,001152: 06,3132           03216                           TC       INITZOPT                              
006461,001153: 
006462,001154: 06,3133           11303        CSCTOMAN           CCS      OPTIND                                #  SEE IF COARS WORKING
006463,001155: 06,3134           03140                           TC       CANCOARS                              #  COARS WORKING-SWITCH NOT CSC-KILL COARS
006464,001156: 06,3135           03140                           TC       CANCOARS                              
006465,001157: 06,3136           03137                           TC       +1                                    #  NO COARS-NORMAL EXIT
006466,001158: 06,3137           03154                           TC       SETDESMD                              
006467,001159: 06,3140           37716        CANCOARS           CA       NEGONE                                
006468,001160: 06,3141           55303                           TS       OPTIND                                #  SET OPTIND (-1) TO SHOW NOT WORKING
006469,001161: 06,3142           45032                           CS       BIT2                                  #  DISABLE OCDU ERR CNTS
006470,001162: 06,3143           00006                           EXTEND                                         
006471,001163: 06,3144           03012                           WAND     CHAN12                                
006472,001164: 06,3145           41331                           CS       OPTMODES                              #  SET RETURN-TO-COARS BIT
006473,001165: 06,3146           75023                           MASK     BIT9                                  
006474,001166: 06,3147           27331                           ADS      OPTMODES                              
006475,001167: 
006476,001168: 06,3150           03154                           TC       SETDESMD                              
006477,001169: 06,3151           03216        OPTZERO            TC       INITZOPT                              #  INITIALIZE ZERO OPTICS
006478,001170: 
006479,001171: 06,3152           35026                           CA       OCT40                                 #  SET UP 32 SAMPLE WAIT
006480,001172: 06,3153           55317        SETCNT             TS       ZOPTCNT                               
006481,001173: 06,3154           31314        SETDESMD           CA       SWSAMPLE                              #  SET CURRENT SWITCH INDICATION-RESUME
006482,001174: 06,3155           55315                           TS       DESOPMOD                              
006483,001175: 06,3156           05347                           TC       RESUME                                
006484,001176: 
006485,001177: 06,3157           35033        SETZOEND           CAF      BIT1                                  #  SEND ZERO OPTICS CDU
006486,001178: 06,3160           00006                           EXTEND                                         
006487,001179: 06,3161           05012                           WOR      CHAN12                                
006488,001180: 06,3162           34112                           CA       200MS                                 #  HOLD ZERO CDU FOR 200 MS
006489,001181: 06,3163           05261                           TC       WAITLIST                              
006490,001182: 06,3164     1331                                  EBANK=   OPTMODES                              
006491,001183: 06,3164           03172 14062                     2CADR    ENDZOPT                               
006492,001184: 
006493,001185: 06,3166           41331                           CS       OPTMODES                              #  SHOW ZOPTICS TASK WORKING
006494,001186: 06,3167           75033                           MASK     BIT1                                  
006495,001187: 06,3170           27331                           ADS      OPTMODES                              
006496,001188: 
006497,001189: 06,3171           03154                           TC       SETDESMD                              
006498,001190: 
006499,001191: 06,3172           03210        ENDZOPT            TC       ZEROPCDU                              #  ZERO OCDU COUNTERS
006500,001192: 06,3173           45033                           CS       BIT1                                  #  TURN OFF ZERO OCDU
006501,001193: 06,3174           00006                           EXTEND                                         
006502,001194: 06,3175           03012                           WAND     CHAN12                                
006503,001195: 06,3176           34112                           CAF      200MS                                 #  DELAY 200MS FOR CDUS TO RESYNCHRONIZE
006504,001196: 06,3177           05306                           TC       VARDELAY                              
006505,001197: 
006506,001198: 06,3200           41331                           CS       OPTMODES                              #  SHOW ZOPTICS SINCE LAST FRESH START
006507,001199: 06,3201           75022                           MASK     BIT10                                 #        OR RESTART
006508,001200: 06,3202           27331                           ADS      OPTMODES                              
006509,001201: 
006510,001202: 06,3203           45037                           CS       SEVEN                                 #  ENABLE OCDUFAIL-SHOW OPTICS COMPLETE
006511,001203: 06,3204           71331                           MASK     OPTMODES                              
006512,001204: 06,3205           55331                           TS       OPTMODES                              
006513,001205: 
006514,001206: 06,3206           03224                           TC       OCDUFTST                              #  CHECK OCDU FAIL BIT AFTER ENABLE
006515,001207: 06,3207           05340                           TC       TASKOVER                              
006516,001208: 
006517,001209: 06,3210           35035        ZEROPCDU           CAF      ZERO                                  
006518,001210: 06,3211           54036                           TS       CDUS                                  #  ZERO IN CDUS,-20 IN CDUT
006519,001211: 06,3212           55307                           TS       ZONE                                  #  INITIALIZE SHAFT MONITOR ZONE
006520,001212: 06,3213           43261                           CS       20DEGS                                
006521,001213: 06,3214           54035                           TS       CDUT                                  
006522,001214: 06,3215           00002                           TC       Q                                     
006523,001215: 
006524,001216: 06,3216           35035        INITZOPT           CAF      ZERO                                  #  INITIALIZE ZOPTICS-INHIBIT OCDUFAIL
006525,001217: 06,3217           55316                           TS       WTOPTION                              #  AND SHOW OPTICS PROCESSING
006526,001218: 06,3220           41331                           CS       OPTMODES                              #  SET ZERO OPTICS PROCESSING
006527,001219: 06,3221           76211                           MASK     SIX                                   #        OPTICS CDU FAIL INHIBITED
006528,001220: 06,3222           27331                           ADS      OPTMODES                              
006529,001221: 06,3223           00002                           TC       Q                                     
006530,001222: 
006531,001223: 06,3224           35025        OCDUFTST           CAF      BIT7                                  #  SEE IF OCDUFAIL ON OR OFF
006532,001224: 06,3225           00006                           EXTEND                                         
006533,001225: 06,3226           02030                           RAND     CHAN30                                
006534,001226: 06,3227           10000                           CCS      A                                     
006535,001227: 06,3230           13252                           TCF      OPFAILOF                              #  OCDUFAIL LIGHT OFF
006536,001228: 
006537,001229: 06,3231           35032                           CAF      BIT2                                  #  OCDUFAIL LIGHT ON UNLESS INHIBITED
006538,001230: 06,3232           71331                           MASK     OPTMODES                              
006539,001231: 06,3233           10000                           CCS      A                                     
006540,001232: 06,3234           00002                           TC       Q                                     #  OCDUFAIL INHIBITED
006541,001233: 
006542,001234: 06,3235           35024        OPFAILON           CAF      BIT8                                  #  ON BIT
006543,001235: 06,3236           61036                           AD       DSPTAB     +11D                       
006544,001236: 06,3237           75024                           MASK     BIT8                                  
006545,001237: 06,3240           00006        SETOFF             EXTEND                                         
006546,001238: 06,3241           16711                           BZF      TCQ                                   #  NO CHANGE
006547,001239: 
006548,001240: 06,3242           54001                           TS       L                                     
006549,001241: 06,3243           31036                           CA       DSPTAB     +11D                       
006550,001242: 06,3244           00006                           EXTEND                                         
006551,001243: 06,3245           06001                           RXOR     LCHAN                                 
006552,001244: 06,3246           75013                           MASK     POSMAX                                
006553,001245: 06,3247           65015                           AD       BIT15                                 #  SHOW ACTION WANTED
006554,001246: 06,3250           55036                           TS       DSPTAB     +11D                       
006555,001247: 06,3251           00002                           TC       Q                                     
006556,001248: 
006557,001249: 06,3252           35033        OPFAILOF           CAF      BIT1                                  #  DONT TURN OFF IF LAMP TEST
006558,001250: 06,3253           71321                           MASK     IMODES33                              
006559,001251: 06,3254           10000                           CCS      A                                     
006560,001252: 06,3255           00002                           TC       Q                                     #  LAMP TEST IN PROGRESS
006561,001253: 
006562,001254: 06,3256           35024                           CAF      BIT8                                  #  TURN OFF OCDUFAIL LIGHT
006563,001255: 06,3257           71036                           MASK     DSPTAB     +11D                       
006564,001256: 06,3260           13240                           TCF      SETOFF                                
006565,001257: 
006566,001258: 06,3261     5040               OCT13              =        ELEVEN                                
006567,001259: 06,3261     5043               OCTHIRTY           EQUALS   BITS4&5                               
006568,001260: 06,3261           16037        20DEGS             DEC      7199       B-14                       
006569,001261: 06,3262     5026               OCT40              EQUALS   BIT6                                  
006570,001262: 06,3262     4112               200MS              EQUALS   OCT24                                 
006571,001263: 
006572,001264:                                                                                                  #  OPTICS CDU DRIVING PROGRAM
006573,001265: 
006574,001266: 10,2000                                           BANK     10                                    
006575,001267: 10,2000                                           SETLOC   OPTDRV                                
006576,001268: 10,2000                                           BANK                                           
006577,001269: 10,2000                                           COUNT*   $$/SXT                                
006578,001270: 
006579,001271:                                                                                                  #  SHAFT STOP MONITOR-ZONE UPDATE
006580,001272: 
006581,001273: 10,2000           30036        OPTDRIVE           CA       CDUS                                  #  GRAB OPTIC SHAFT CDU
006582,001274: 10,2001           54001                           TS       L                                     
006583,001275: 10,2002           10000                           CCS      A                                     #  GET ABS(CDUS)
006584,001276: 10,2003           67707                           AD       13,14,15                              
006585,001277: 10,2004           12006                           TCF      +2                                    #  ABS(CDUS) - 45 DEG
006586,001278: 10,2005           12003                           TCF      -2                                    
006587,001279: 10,2006           00006                           EXTEND                                         
006588,001280: 10,2007           62016                           BZMF     OZONE                                 #  LESS THAN 45 DEG-SET ZONE 0
006589,001281: 10,2010           31307                           CA       ZONE                                  #  IF ZONE ZERO, CHANGE TO + OR - OTHERWISE
006590,001282: 10,2011           00006                           EXTEND                                         #  DONT MESS WITH ZONE
006591,001283: 10,2012           12014                           BZF      +2                                    
006592,001284: 10,2013           12020                           TCF      CONTDRVE                              #  JUST CONTINUE
006593,001285: 10,2014           56001                           XCH      L                                     #  GREATER THAN 45 DEG-SET ZONE TO SIGN CDU
006594,001286: 10,2015           12017                           TCF      OZONE      +1                         
006595,001287: 10,2016           35035        OZONE              CAF      ZERO                                  #  ABS(CDUS) LESS THEN 90 DEG-ZONE ZERO
006596,001288: 10,2017           55307                           TS       ZONE                                  
006597,001289: 10,2020                                           COUNT*   $$/T4RPT                              
006598,001290: 10,2020           11303        CONTDRVE           CCS      OPTIND                                
006599,001291: 10,2021           02025                           TC       +4                                    #  WORK COARS OPTICS
006600,001292: 10,2022           02025                           TC       +3                                    #  WORK COARS OPTICS
006601,001293: 10,2023           05347                           TC       RESUME                                #  NO OPT
006602,001294: 10,2024           05347                           TC       RESUME                                #  NO OPT
006603,001295: 
006604,001296: 10,2025           31314                           CA       SWSAMPLE                              #  SEE IF SWITCH AT CMC
006605,001297: 10,2026           00006                           EXTEND                                         
006606,001298: 10,2027           65347                           BZMF     RESUME                                #  ZERO (-1)     MANUAL (+0)
006607,001299: 
006608,001300: 10,2030           35022                           CAF      BIT10                                 #  SEE IF OCDUS ZEROED SINCE LAST FSTART
006609,001301: 10,2031           71331                           MASK     OPTMODES                              
006610,001302: 10,2032           10000                           CCS      A                                     
006611,001303: 10,2033           02036                           TC       +3                                    
006612,001304: 10,2034           05664                           TC       ALARM                                 #  OPTICS NOT ZEROED
006613,001305: 10,2035           00120                           OCT      00120                                 
006614,001306: 
006615,001307: 10,2036           35032                           CA       BIT2                                  #  SEE IF ERR CNTS ENABLED
006616,001308: 10,2037           00006                           EXTEND                                         
006617,001309: 10,2040           02012                           RAND     CHAN12                                
006618,001310: 10,2041           00006                           EXTEND                                         
006619,001311: 10,2042           12175                           BZF      SETBIT                                #  CNTS NOT ENABLED-DO IT AND RESUME
006620,001312: 
006621,001313: 10,2043           35033                           CAF      ONE                                   #  INITIALIZE OPTIND
006622,001314: 10,2044           55303        OPT2               TS       OPTIND                                
006623,001315: 10,2045           00006                           EXTEND                                         
006624,001316: 10,2046           12132                           BZF      TRUNCMD                               #  CHECK TRUNION COMMAND
006625,001317: 
006626,001318: 10,2047           51303        GETOPCMD           INDEX    OPTIND                                
006627,001319: 10,2050           31160                           CA       DESOPTT                               #  PICK UP DESIRED OPT ANGLE
006628,001320: 10,2051           00006                           EXTEND                                         
006629,001321: 10,2052           51303                           INDEX    OPTIND                                
006630,001322: 10,2053           20035                           MSU      CDUT                                  #  GET DIFFERENCE
006631,001323: 10,2054           00006                           EXTEND                                         
006632,001324: 10,2055           75017                           MP       BIT13                                 
006633,001325: 10,2056           56001                           XCH      L                                     
006634,001326: 10,2057           60000                           DOUBLE                                         
006635,001327: 10,2060           54061                           TS       ITEMP1                                
006636,001328: 10,2061           12063                           TCF      +2                                    #  NO OVFL
006637,001329: 
006638,001330: 10,2062           26001                           ADS      L                                     #  WITH OVFL
006639,001331: 10,2063           51303        STORCMD            INDEX    OPTIND                                
006640,001332: 10,2064           23305                           LXCH     COMMANDO                              #  STORE COMMAND
006641,001333: 10,2065           11303                           CCS      OPTIND                                
006642,001334: 10,2066           12044                           TCF      OPT2                                  #  GET NEXT COMMAND
006643,001335: 
006644,001336: 10,2067           54061                           TS       ITEMP1                                #  INITIALIZE SEND INDICATOR TO ZERO
006645,001337: 10,2070                                           COUNT*   $$/SXT                                
006646,001338: 
006647,001339:                                                                                                  #  SHAFT STOP AVOIDANCE
006648,001340: 
006649,001341: 10,2070           10036                           CCS      CDUS                                  #  IF CDUS GREATER THAN + OR - 90 DEG CHECK
006650,001342: 10,2071           65014                           AD       NEG1/2                                #  FOR POSSIBLE STOP PROBLEM
006651,001343: 10,2072           12074                           TCF      +2                                    
006652,001344: 10,2073           12071                           TCF      -2                                    
006653,001345: 10,2074           00006                           EXTEND                                         
006654,001346: 10,2075           62122                           BZMF     CMDSETUP                              #  CDUS LESS THAN 90 DEG, NO PROBLEMS
006655,001347: 
006656,001348: 10,2076           31307                           CA       ZONE                                  
006657,001349: 10,2077           00006                           EXTEND                                         
006658,001350: 10,2100           12122                           BZF      CMDSETUP                              #  ZONE=3, NORMAL COMMAND
006659,001351: 10,2101           75015                           MASK     BIT15                                 #  GRAB SIGN OF ZONE
006660,001352: 10,2102           54001                           TS       L                                     
006661,001353: 10,2103           31306                           CA       COMMANDO   +1                         
006662,001354: 10,2104           75015                           MASK     BIT15                                 #  GRAB SIGN OF SHAFT COMMAND
006663,001355: 10,2105           00006                           EXTEND                                         
006664,001356: 10,2106           06001                           RXOR     LCHAN                                 
006665,001357: 10,2107           10000                           CCS      A                                     
006666,001358: 10,2110           12122                           TCF      CMDSETUP                              #  SIGN ZONE NOT EQUAL TO SIGN COMMAND
006667,001359: 10,2111           11161                           CCS      DESOPTS                               #  SEE IF DESOPTS BETWEEN -90 AND +90
006668,001360: 10,2112           65014                           AD       NEG1/2                                
006669,001361: 10,2113           12115                           TCF      +2                                    #  ABS(DESOPTS) - 90 DEG
006670,001362: 10,2114           12112                           TCF      -2                                    
006671,001363: 10,2115           00006                           EXTEND                                         
006672,001364: 10,2116           62120                           BZMF     +2                                    #  DESOPTS IN FIRST OR FOURTH QUAD
006673,001365: 10,2117           12122                           TCF      CMDSETUP                              
006674,001366: 10,2120           41306                           CS       COMMANDO   +1                         #  REVERSE REGULAR COMMAND
006675,001367: 10,2121           55306                           TS       COMMANDO   +1                         
006676,001368: 
006677,001369: 10,2122                                           COUNT*   $$/T4RPT                              
006678,001370: 
006679,001371: 10,2122           35033        CMDSETUP           CAF      ONE                                   #  SET OPTIND
006680,001372: 10,2123           55303                           TS       OPTIND                                
006681,001373: 10,2124           50000                           INDEX    A                                     
006682,001374: 10,2125           11305                           CCS      COMMANDO                              #  GET SIGN OF COMMAND
006683,001375: 10,2126           02144                           TC       POSOPCMD                              
006684,001376: 10,2127           02151                           TC       NEXTOPT    +1                         #  ZERO COMMAND-SKIP SEND INDICATOR
006685,001377: 10,2130           02161                           TC       NEGOPCMD                              
006686,001378: 10,2131           02151                           TC       NEXTOPT    +1                         #  ZERO COMMAND
006687,001379: 
006688,001380: 10,2132           40035        TRUNCMD            CS       CDUT                                  #  IF COMMAND GREATER THAN 45 DEG-COMMAND
006689,001381: 10,2133           61160                           AD       DESOPTT                               #  45 DEG
006690,001382: 10,2134           54002                           TS       Q                                     
006691,001383: 10,2135           02047                           TC       GETOPCMD                              #  LESS THAN 45 DEG-NORMAL OPERATION
006692,001384: 
006693,001385: 10,2136           10000                           CCS      A                                     #  GREATER THAN 45 DEG-USE OPSMAX WITH
006694,001386: 10,2137           35013                           CA       POSMAX                                #  CORRECT SIGN
006695,001387: 10,2140           02142                           TC       +2                                    
006696,001388: 10,2141           45013                           CS       POSMAX                                
006697,001389: 10,2142           54001                           TS       L                                     
006698,001390: 10,2143           02063                           TC       STORCMD                               
006699,001391: 10,2144           62202        POSOPCMD           AD       MAXPLS1                               
006700,001392: 10,2145           00006                           EXTEND                                         
006701,001393: 10,2146           62166                           BZMF     DELOPCMD                              #  COMMAND LESS THAN MAX PULSE
006702,001394: 10,2147           42201                           CS       MAXPLS                                #  GREATER THAN MAX PULSE-USE MAX PULSE
006703,001395: 
006704,001396: 10,2150           24061        NEXTOPT            INCR     ITEMP1                                #  SET SEND INDICATOR
006705,001397: 10,2151           65034                           AD       NEG0                                  #  MAKE SURE ZERO COMMAND IS -ZERO
006706,001398: 10,2152           51303                           INDEX    OPTIND                                
006707,001399: 10,2153           54053                           TS       CDUTCMD                               #  STORE PULSE IN SEND REG
006708,001400: 
006709,001401: 10,2154           11303                           CCS      OPTIND                                
006710,001402: 10,2155           02123                           TC       CMDSETUP   +1                         #  GET NEXT OPT
006711,001403: 
006712,001404: 10,2156           10061                           CCS      ITEMP1                                #  ARE ANY PULSES TO GO
006713,001405: 10,2157           12171                           TCF      SENDOCMD                              #  YES-SEND EM
006714,001406: 10,2160           05347                           TC       RESUME                                #  NO
006715,001407: 
006716,001408: 10,2161           62202        NEGOPCMD           AD       MAXPLS1                               
006717,001409: 10,2162           00006                           EXTEND                                         
006718,001410: 10,2163           62166                           BZMF     DELOPCMD                              #  LESS THAN MAX PULSE
006719,001411: 10,2164           32201                           CA       MAXPLS                                #  MAX PULSES
006720,001412: 10,2165           12150                           TCF      NEXTOPT                               
006721,001413: 10,2166           51303        DELOPCMD           INDEX    OPTIND                                
006722,001414: 10,2167           57305                           XCH      COMMANDO                              #  SET UP SMALL COMMAND
006723,001415: 10,2170           12150                           TCF      NEXTOPT                               
006724,001416: 
006725,001417: 10,2171           35076        SENDOCMD           CAF      11,12                                 #  SEND OCDU DRIVE COMMANDS
006726,001418: 10,2172           00006                           EXTEND                                         
006727,001419: 10,2173           05014                           WOR      CHAN14                                
006728,001420: 10,2174           05347                           TC       RESUME                                
006729,001421: 
006730,001422: 10,2175           35032        SETBIT             CAF      BIT2                                  #  ENABLE OCDU ERR CNTS
006731,001423: 10,2176           00006                           EXTEND                                         
006732,001424: 10,2177           05012                           WOR      CHAN12                                
006733,001425: 10,2200           05347                           TC       RESUME                                #  START COARS NEXT TIME AROUND
006734,001426: 
006735,001427: 10,2201           77532        MAXPLS             DEC      -165       B-14                       #  WAS -80
006736,001428: 10,2202           77533        MAXPLS1            DEC      -164       B-14                       #  WAS -79
006737,001429: 10,2203     5076               11,12              EQUALS   PRIO6                                 
006738,001430: 

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