Source Code

These source-code files are part of a reconstructed copy of Comanche 72, the first release of the Apollo Guidance Computer (AGC) Command Module (CM) software for Apollo 13.

They have been adapted from sources files created from a listing of Comanche 55. These source files were updated to match binary dumps of a set of Comanche 67 rope modules. They were then further modified by applying known changes between Comanche 67 and Comanche 72. A binary dump of module B2 of Comanche 72, part number 2010802-021, was also used to validate changes made to banks 05-13. 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 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.

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

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