Source Code

These source code files have been transcribed or otherwise adapted from digitized images of a hardcopy from the private collection of Don Eyles. The digitization was performed by archive.org, and transcription was performed by a team of volunteers. Note that the page images presented online are of reduced quality, and that the original high-quality images are available at archive.org. Report any conversion errors or legibility problems in page images to info@sandroid.org. Notations on the program listing read, in part:

    473423A YUL SYSTEM FOR BLK2: REVISION 12 of PROGRAM AURORA BY DAP GROUP   NOV 10, 1966
Note that the date is the date of the printout, not the date of the program revision.

006109,000002:                                                                                                  ## Copyright:    Public domain.
006110,000003:                                                                                                  ## Filename:     T4RUPT_PROGRAM.agc
006111,000004:                                                                                                  ## Purpose:      Part of the source code for Aurora (revision 12).
006112,000005:                                                                                                  ## Assembler:    yaYUL
006113,000006:                                                                                                  ## Contact:      Ron Burkey <info@sandroid.org>.
006114,000007:                                                                                                  ## Website:      https://www.ibiblio.org/apollo.
006115,000008:                                                                                                  ## Pages:        160-188
006116,000009:                                                                                                  ## Mod history:  2016-09-20 JL   Created.
006117,000010:                                                                                                  ##               2016-10-12 HG   fix operand  DSPRUPTSW -> DSRUPTSW
006118,000011:                                                                                                  ##               2016-10-15 HG   fix operand  DSPRUPTEM -> DSRUPTEM
006119,000012:                                                                                                  ##                                            SEDTISSW  -> SETISSW 
006120,000013:                                                                                                  ##                                            GLOCKKOK  -> GLOCKOK 
006121,000014:                                                                                                  ##                                            NCTFL33   -> NXTFL33  
006122,000015:                                                                                                  ##                                            BITS56&15 -> BITS6&15 
006123,000016:                                                                                                  ##                                            COSMSG    -> COSMG   
006124,000017:                                                                                                  ##                               fix label and operand
006125,000018:                                                                                                  ##                                            NXTIBIT   -> NTXIBT
006126,000019:                                                                                                  ##                                            GLOCKON   -> GLOCKOK
006127,000020:                                                                                                  ##               2016-12-08 RSB  Proofed comments with octopus/ProoferComments
006128,000021:                                                                                                  ##                               and fixed the errors found.
006129,000022: 
006130,000023:                                                                                                  ## This source code has been transcribed or otherwise adapted from
006131,000024:                                                                                                  ## digitized images of a hardcopy from the private collection of 
006132,000025:                                                                                                  ## Don Eyles.  The digitization was performed by archive.org.
006133,000026: 
006134,000027:                                                                                                  ## Notations on the hardcopy document read, in part:
006135,000028: 
006136,000029:                                                                                                  ##       473423A YUL SYSTEM FOR BLK2: REVISION 12 of PROGRAM AURORA BY DAP GROUP
006137,000030:                                                                                                  ##       NOV 10, 1966
006138,000031: 
006139,000032:                                                                                                  ##       [Note that this is the date the hardcopy was made, not the
006140,000033:                                                                                                  ##       date of the program revision or the assembly.]
006141,000034: 
006142,000035:                                                                                                  ## The scan images (with suitable reduction in storage size and consequent 
006143,000036:                                                                                                  ## reduction in image quality) are available online at 
006144,000037:                                                                                                  ##       https://www.ibiblio.org/apollo.  
006145,000038:                                                                                                  ## The original high-quality digital images are available at archive.org:
006146,000039:                                                                                                  ##       https://archive.org/details/aurora00dapg
006147,000040: 

Page 160

006149,000042:    4713                                           SETLOC   ENDPHMNF                              
006150,000043:    4713  E6,1404                                  EBANK=   M11                                   
006151,000044:    4713           00006        T4RUPT             EXTEND                                         #  ZERO OUT0 EVERY T4RUPT.
006152,000045:    4714           01010                           WRITE    OUT0                                  #  (COMES HERE WITH +0 IN A)
006153,000046: 
006154,000047:    4715           50347                           INDEX    T4LOC                                 #  NORMALLY TO NORMT4, BUT TO LMPRESET OR
006155,000048:    4716           10000                           TCF      0                                     #  DSKYRSET AFTER OUT0 COMMAND.
006156,000049: 
006157,000050:    4717           10350        NORMT4             CCS      DSRUPTSW                              #  GOES 7(-1)0.
006158,000051:    4720           14722                           TCF      +2                                    
006159,000052:    4721           37663                           CAF      SEVEN                                 
006160,000053:    4722           54350                           TS       DSRUPTSW                              
006161,000054: 
006162,000055:    4723           34023                           CAF      T4RPTBB                               #  OFF TO SWITCHED BANK
006163,000056:    4724           56006                           XCH      BBANK                                 
006164,000057:    4725           12451                           TCF      T4RUPTA                               
006165,000058: 
006166,000059:    4726           34735        LMPRESET           CAF      90MRUPT                               #  30 MS ON / 90 MS OFF.
006167,000060:    4727           14731                           TCF      +2                                    
006168,000061: 
006169,000062:    4730           34736        DSKYRSET           CAF      100MRUPT                              #  20 MS ON / 100 MS OFF.
006170,000063:    4731           54027                           TS       TIME4                                 
006171,000064:    4732           34737                           CAF      LNORMT4                               
006172,000065:    4733           54347                           TS       T4LOC                                 
006173,000066:    4734           14612                           TCF      NOQBRSM                               
006174,000067: 
006175,000068:    4735           37767        90MRUPT            DEC      16375      B-14                       
006176,000069:    4736           37766        100MRUPT           DEC      16374      B-14                       
006177,000070:    4737           04717        LNORMT4            ADRES    NORMT4                                
006178,000071:    4740           74000        74K                OCT      74000                                 
006179,000072: 
006180,000073:                                                                                                  #  RELTAB IS A PACKED TABLE. RELAYWORD CODE IN UPPER 4 BITS, RELAY CODE
006181,000074:                                                                                                  #  IN LOWER 5 BITS.
006182,000075: 
006183,000076:    4741           04025        RELTAB             OCT      04025                                 
006184,000077:    4742           10003                           OCT      10003                                 
006185,000078:    4743           14031                           OCT      14031                                 
006186,000079:    4744           20033                           OCT      20033                                 
006187,000080:    4745           24017                           OCT      24017                                 
006188,000081:    4746           30036                           OCT      30036                                 
006189,000082:    4747           34034                           OCT      34034                                 
006190,000083:    4750           40023                           OCT      40023                                 
006191,000084:    4751           44035                           OCT      44035                                 
006192,000085:    4752           50037                           OCT      50037                                 
006193,000086:    4753           54000                           OCT      54000                                 
006194,000087:    4754           60000        RELTAB11           OCT      60000                                 

Page 161

006196,000089:    4755                        ENDT4FF            EQUALS                                         
006197,000090: 

Page 162

006199,000092:                                                                                                  #           SWITCHED-BANK PORTION.
006200,000093: 
006201,000094: 12,2451                                           SETLOC   ENDFRESS                              
006202,000095: 
006203,000096: 12,2451           54016        T4RUPTA            TS       BANKRUPT                              
006204,000097: 12,2452           00006                           EXTEND                                         
006205,000098: 12,2453           22012                           QXCH     QRUPT                                 
006206,000099: 
006207,000100: 12,2454           10366        LMPOUT             CCS      LMPCMD                                #  SEE IF LMP COMMAND TO BE SENT. IF SO,
006208,000101: 12,2455           12471                           TCF      CDRVE                                 #  BIT 15 = 1 AND (UP TO) BITS 1 - 11
006209,000102: 12,2456           12471                           TCF      CDRVE                                 #  CONTAIN THE COMMAND.
006210,000103: 
006211,000104: 12,2457           35234                           CAF      LOW11                                 
006212,000105: 12,2460           70366                           MASK     LMPCMD                                #  LEAVE COMMAND PORTION INTACT.
006213,000106: 12,2461           54366                           TS       LMPCMD                                
006214,000107: 12,2462           64740                           AD       74K                                   
006215,000108: 12,2463           00006                           EXTEND                                         
006216,000109: 12,2464           01010                           WRITE    OUT0                                  
006217,000110: 
006218,000111: 12,2465           32562                           CAF      LLMPRS                                
006219,000112: 12,2466           54347                           TS       T4LOC                                 
006220,000113: 12,2467           32563                           CAF      30MRUPT                               
006221,000114: 12,2470           12546                           TCF      SETTIME4                              
006222,000115: 
006223,000116: 12,2471           10322        CDRVE              CCS      DSPTAB     +11D                       
006224,000117: 12,2472           02501                           TC       DSPOUT                                
006225,000118: 12,2473           02501                           TC       DSPOUT                                
006226,000119: 
006227,000120: 12,2474           56322                           XCH      DSPTAB     +11D                       
006228,000121: 12,2475           75234                           MASK     LOW11                                 
006229,000122: 12,2476           54322                           TS       DSPTAB     +11D                       
006230,000123: 12,2477           64754                           AD       RELTAB11                              
006231,000124: 12,2500           02541                           TC       DSPLAYC                               
006232,000125: 

Page 163

006234,000127:                                                                                                  #  DSPOUT PROGRAM. PUTS OUT DISPLAYS.
006235,000128: 
006236,000129: 12,2501           10303        DSPOUT             CCS      NOUT                                  #  DRIVE DISPLAY SYSTEM RELAYS.
006237,000130: 12,2502           12505                           TCF      +3                                    
006238,000131: 
006239,000132: 12,2503           32522        NODSPOUT           CAF      120MRUPT                              #  SET FOR RUPT IN 120 MS IF NO RELAYS.
006240,000133: 12,2504           12546                           TCF      SETTIME4                              
006241,000134: 
006242,000135: 12,2505           54303                           TS       NOUT                                  
006243,000136: 12,2506           47665                           CS       ZERO                                  
006244,000137: 12,2507           54077                           TS       DSRUPTEM                              #  SET TO -0 FOR 1ST PASS THRU DSPTAB
006245,000138: 12,2510           56341                           XCH      DSPCNT                                
006246,000139: 12,2511           67666                           AD       NEG0                                  #  TO PREVENT +0
006247,000140: 12,2512           54341                           TS       DSPCNT                                
006248,000141: 12,2513           50341        DSPSCAN            INDEX    DSPCNT                                
006249,000142: 12,2514           10307                           CCS      DSPTAB                                
006250,000143: 12,2515           10341                           CCS      DSPCNT                                #  IF DSPTAB ENTRY +, SKIP
006251,000144: 12,2516           02511                           TC       DSPSCAN    -2                         #  IF DSPCNT +, AGAIN
006252,000145: 12,2517           02530                           TC       DSPLAY                                #  IF DSPTAB ENTRY -, DISPLAY
006253,000146: 12,2520           00012        TABLNTH            OCT      12                                    #  DEC 10   LENGTH OF DSPTAB
006254,000147: 12,2521           10077                           CCS      DSRUPTEM                              #  IF DSRUPTEM=+0,2ND PASS THRU DSPTAB
006255,000148: 12,2522           37764        120MRUPT           DEC      16372      B-14                       #  (DSPCNT = 0). +0 INTO NOUT.
006256,000149: 12,2523           54303                           TS       NOUT                                  
006257,000150: 12,2524           12503                           TCF      NODSPOUT                              
006258,000151: 12,2525           54077                           TS       DSRUPTEM                              #  IF DSRUPTEM=-0,1ST PASS THRU DSPTAB
006259,000152: 12,2526           32520                           CAF      TABLNTH                               #  (DSPCNT=0). +0 INTO DSRUPTEM. PASS AGAIN
006260,000153: 12,2527           02512                           TC       DSPSCAN    -1                         
006261,000154: 
006262,000155: 12,2530           67657        DSPLAY             AD       ONE                                   
006263,000156: 12,2531           50341                           INDEX    DSPCNT                                
006264,000157: 12,2532           54307                           TS       DSPTAB                                #  REPLACE POSITIVELY
006265,000158: 12,2533           75234                           MASK     LOW11                                 #  REMOVE BITS 12 TO 15
006266,000159: 12,2534           54077                           TS       DSRUPTEM                              
006267,000160: 12,2535           35226                           CAF      HI5                                   
006268,000161: 12,2536           50341                           INDEX    DSPCNT                                
006269,000162: 12,2537           74741                           MASK     RELTAB                                #  PICK UP BITS 12 TO 15 OF RELTAB ENTRY
006270,000163: 12,2540           60077                           AD       DSRUPTEM                              
006271,000164: 12,2541           00006        DSPLAYC            EXTEND                                         
006272,000165: 12,2542           01010                           WRITE    OUT0                                  
006273,000166: 
006274,000167: 12,2543           32561                           CAF      LDSKYRS                               
006275,000168: 12,2544           54347                           TS       T4LOC                                 
006276,000169: 12,2545           32564                           CAF      20MRUPT                               
006277,000170: 
006278,000171: 12,2546           54027        SETTIME4           TS       TIME4                                 

Page 164

006280,000173:                                                                                                  #  JUMP TO APPROPRIATE ONCE-PER SECOND (.96 SEC ACTUALLY) ACTIVITY
006281,000174: 
006282,000175: 12,2547           50350        T4JUMP             INDEX    DSRUPTSW                              
006283,000176: 12,2550           12551                           TCF      +1                                    
006284,000177: 
006285,000178: 12,2551           02565                           TC       ALTOUT                                
006286,000179: 
006287,000180: 12,2552           13440                           TCF      RRAUTCHK                              
006288,000181: 12,2553           12720                           TCF      IMUMON                                
006289,000182: 12,2554           13545                           TCF      GPMATRIX                              
006290,000183: 12,2555           02632                           TC       ALTROUT                               
006291,000184: 12,2556           13440                           TCF      RRAUTCHK                              
006292,000185: 12,2557           12720                           TCF      IMUMON                                
006293,000186: 12,2560           13545                           TCF      GPMATRIX                              
006294,000187: 12,2561           04730        LDSKYRS            ADRES    DSKYRSET                              
006295,000188: 12,2562           04726        LLMPRS             ADRES    LMPRESET                              
006296,000189: 
006297,000190: 12,2563           37775        30MRUPT            DEC      16381      B-14                       
006298,000191: 12,2564           37776        20MRUPT            DEC      16382      B-14                       

Page 165

006300,000193:                                                                                                  #  THIS ROUTINE SERVICES THE METER OUTPUTS.
006301,000194: 
006302,000195: 
006303,000196:                                                                                                  #  DIDFLG INDICATES THE STATE OF THE PROGRAM..............
006304,000197:                                                                                                  #  IF GREATER THAN ZERO, THEN UNABLE TO DISPLAY DATA
006305,000198:                                                                                                  #  IF EQUAL TO ZERO, THEN THE PROGRAM IS IN USE
006306,000199:                                                                                                  #  IF LESS THAN ZERO, THEN THE PROGRAM IS ABLE TO BE USED............
006307,000200: 
006308,000201: 12,2565           02640        ALTOUT             TC       DISINDAT                              
006309,000202: 12,2566           47656                           CS       BIT2                                  
006310,000203: 12,2567           00006                           EXTEND                                         
006311,000204: 12,2570           03014                           WAND     14                                    #  SET UP OUTPUT FOR ALTITUDE
006312,000205: 12,2571           10352                           CCS      ALT                                   #  -1 IF OLD DATA TO BE EXTRAPOLATED.
006313,000206: 12,2572           12576                           TCF      +4                                    #  NEW DATA.
006314,000207: 12,2573           12576                           TCF      +3                                    
006315,000208: 12,2574           12602                           TCF      OLDDATA                               
006316,000209: 
006317,000210: 12,2575           54352                           TS       ALT                                   #  CHANGE -0 IN ALT TO +0.
006318,000211: 12,2576           47657                           CS       ONE                                   #  RESET ALTSAVE.
006319,000212: 12,2577           52353                           DXCH     ALT                                   
006320,000213: 12,2600           52365        ZDATA2             DXCH     ALTSAVE                               
006321,000214: 12,2601           12622                           TCF      NEWDATA                               
006322,000215: 
006323,000216: 12,2602           30354        OLDDATA            CA       ALTRATE                               #  USE ALTRATE TO EXTRAPOLATE.
006324,000217: 12,2603           00006                           EXTEND                                         
006325,000218: 12,2604           72715                           MP       ARTOA                                 #  RATE APPLIES FOR .96 SEC.
006326,000219: 12,2605           60365                           AD       ALTSAVE    +1                         
006327,000220: 12,2606           54365                           TS       ALTSAVE    +1                         #  AND MAYBE SKIP.
006328,000221: 12,2607           37665                           CAF      ZERO                                  
006329,000222: 12,2610           26364                           ADS      ALTSAVE                               
006330,000223: 
006331,000224: 12,2611           37637                           CAF      POSMAX                                #  FORCE SIGN AGREEMENT ASSUMING ALTSAVE IS
006332,000225: 12,2612           67657                           AD       ONE                                   #  NOT NEGATIVE. IF IT IS, THE FINAL TS
006333,000226: 12,2613           60365                           AD       ALTSAVE    +1                         #  WILL NOT SKIP AND WE CAN SET ALTSAVE TO
006334,000227: 12,2614           54365                           TS       ALTSAVE    +1                         #  ZERO IN THAT CASE.
006335,000228: 12,2615           37665                           CAF      ZERO                                  
006336,000229: 12,2616           67637                           AD       POSMAX                                
006337,000230: 12,2617           60364                           AD       ALTSAVE                               
006338,000231: 12,2620           54364                           TS       ALTSAVE                               
006339,000232: 12,2621           12712                           TCF      ZERODATA                              #  ALTSAVE NEGATIVE - SET TO ZERO.
006340,000233: 
006341,000234: 12,2622           10364        NEWDATA            CCS      ALTSAVE                               #  MAKE UP 15 BIT UNSIGNED OUTPUT.
006342,000235: 12,2623           37641                           CAF      BIT15                                 #  MAJOR PART +1 OR +0.
006343,000236: 12,2624           60365                           AD       ALTSAVE    +1                         
006344,000237: 12,2625           54060        METEROUT           TS       ALTM                                  
006345,000238: 12,2626           32716                           CAF      BITSET                                
006346,000239: 12,2627           00006                           EXTEND                                         
006347,000240: 12,2630           05014                           WOR      14                                    
006348,000241: 12,2631           12711                           TCF      DONEDID                               

Page 166

006350,000243: 12,2632           02640        ALTROUT            TC       DISINDAT                              
006351,000244: 12,2633           37656                           CAF      BIT2                                  
006352,000245: 12,2634           00006                           EXTEND                                         
006353,000246: 12,2635           05014                           WOR      14                                    #  SET UP OUTPUT FOR ALT. RATE
006354,000247: 12,2636           30354                           CA       ALTRATE                               
006355,000248: 12,2637           12625                           TCF      METEROUT                              
006356,000249: 
006357,000250: 12,2640           10351        DISINDAT           CCS      DIDFLG                                
006358,000251: 12,2641           12711                           TCF      DONEDID                               
006359,000252: 12,2642           12643                           NOOP                                           
006360,000253: 12,2643           37652                           CAF      BIT6                                  
006361,000254: 12,2644           00006                           EXTEND                                         
006362,000255: 12,2645           02030                           RAND     30                                    #  CHECK DISPLAY INERTIAL DATA BIT
006363,000256: 12,2646           10000                           CCS      A                                     
006364,000257: 12,2647           12706                           TCF      ALLDONE                               
006365,000258: 12,2650           10351                           CCS      DIDFLG                                
006366,000259: 12,2651           12652                           NOOP                                           
006367,000260: 12,2652           12673                           TCF      GOAGN                                 
006368,000261: 
006369,000262: 12,2653           37650        FIRSTIME           CAF      BIT8                                  
006370,000263: 12,2654           00006                           EXTEND                                         
006371,000264: 12,2655           05012                           WOR      12                                    #  ENABLE DISPLAY INERTIAL DATA
006372,000265: 12,2656           37665                           CAF      ZERO                                  
006373,000266: 12,2657           54351                           TS       DIDFLG                                
006374,000267: 12,2660           54363                           TS       LASTXCMD                              
006375,000268: 12,2661           54362                           TS       LASTYCMD                              
006376,000269: 12,2662           36162                           CAF      SIX                                   
006377,000270: 12,2663           04536                           TC       WAITLIST                              
006378,000271: 12,2664           02667 24006                     2CADR    INTLZE                                
006379,000272: 
006380,000273: 12,2666           02711                           TC       DONEDID                               
006381,000274: 
006382,000275: 12,2667           37656        INTLZE             CAF      BIT2                                  
006383,000276: 12,2670           00006                           EXTEND                                         
006384,000277: 12,2671           05012                           WOR      12                                    #  ENABLE RR ERROR COUNTER
006385,000278: 12,2672           04602                           TC       TASKOVER                              
006386,000279: 
006387,000280: 12,2673           40363        GOAGN              CS       LASTXCMD                              
006388,000281: 12,2674           60360                           AD       FORVEL                                
006389,000282: 12,2675           54054                           TS       OPTXCMD                               
006390,000283: 12,2676           30360                           CA       FORVEL                                
006391,000284: 12,2677           54363                           TS       LASTXCMD                              
006392,000285: 12,2700           40362                           CS       LASTYCMD                              
006393,000286: 12,2701           60361                           AD       LATVEL                                
006394,000287: 12,2702           54053                           TS       OPTYCMD                               
006395,000288: 12,2703           30361                           CA       LATVEL                                
006396,000289: 12,2704           54362                           TS       LASTYCMD                              
006397,000290: 12,2705           00002                           TC       Q                                     
006398,000291: 
006399,000292: 12,2706           42717        ALLDONE            CS       DIDRESET                              #  REMOVE DISPLAY INERTIAL DATA AND ECTR.

Page 167

006401,000294: 12,2707           00006                           EXTEND                                         
006402,000295: 12,2710           03012                           WAND     12                                    #  RESET RR ERROR COUNTER
006403,000296: 12,2711           13752        DONEDID            TCF      RCSMONIT                              
006404,000297: 12,2712           37665        ZERODATA           CAF      ZERO                                  
006405,000298: 12,2713           54001                           TS       L                                     
006406,000299: 12,2714           12600                           TCF      ZDATA2                                
006407,000300: 
006408,000301: 12,2715           06432        ARTOA              DEC      .20469                                #  ALT DUE TO ALTRATE FOR .96 SEC.
006409,000302: 12,2716           06004        BITSET             OCT      6004                                  
006410,000303: 
006411,000304: 12,2717           00202        DIDRESET           OCT      202                                   

Page 168

006413,000306:                                                                                                  #  IMU INBIT MONITOR - ENTERED EVERY 480 MS BY T4RUPT.
006414,000307: 
006415,000308: 12,2720           30367        IMUMON             CA       IMODES30                              #  SEE IF THERE HAS BEEN A CHANGE IN THE
006416,000309: 12,2721           00006                           EXTEND                                         #  RELEVENT BITS OF CHAN 30.
006417,000310: 12,2722           06030                           RXOR     30                                    
006418,000311: 12,2723           73412                           MASK     30RDMSK                               
006419,000312: 12,2724           00006                           EXTEND                                         
006420,000313: 12,2725           12755                           BZF      TNONTEST                              #  NO CHANGE IN STATUS.
006421,000314: 
006422,000315: 12,2726           54074                           TS       RUPTREG1                              #  SAVE BITS WHICH HAVE CHANGED.
006423,000316: 12,2727           22367                           LXCH     IMODES30                              #  UPDATE IMODES30.
006424,000317: 12,2730           00006                           EXTEND                                         
006425,000318: 12,2731           06001                           RXOR     L                                     
006426,000319: 12,2732           54367                           TS       IMODES30                              
006427,000320: 
006428,000321: 12,2733           47657                           CS       ONE                                   
006429,000322: 12,2734           56074                           XCH      RUPTREG1                              
006430,000323: 12,2735           00006                           EXTEND                                         
006431,000324: 12,2736           63205                           BZMF     TLIM                                  #  CHANGE IN IMU TEMP.
006432,000325: 12,2737           12741                           TCF      NXTIFBIT                              #  BEGIN BIT SCAN.
006433,000326: 
006434,000327: 12,2740           67657                 -1        AD       ONE                                   #  (RE-ENTERS HERE FROM NXTIFAIL.)
006435,000328: 12,2741           24074        NXTIFBIT           INCR     RUPTREG1                              #  ADVANCE BIT POSITION NUMBER.
006436,000329: 12,2742           60000                 +1        DOUBLE                                         
006437,000330: 12,2743           54000                           TS       A                                     #  SKIP IF OVERFLOW.
006438,000331: 12,2744           12741                           TCF      NXTIFBIT                              #  LOOK FOR BIT.
006439,000332: 
006440,000333: 12,2745           56075                           XCH      RUPTREG2                              #  SAVE OVERFLOW-CORRECTED DATA.
006441,000334: 12,2746           50074                           INDEX    RUPTREG1                              #  SELECT NEW VALUE OF THIS BIT.
006442,000335: 12,2747           37642                           CAF      BIT14                                 
006443,000336: 12,2750           70367                           MASK     IMODES30                              
006444,000337: 12,2751           50074                           INDEX    RUPTREG1                              
006445,000338: 12,2752           03406                           TC       IFAILJMP                              
006446,000339: 
006447,000340: 12,2753           10075        NXTIFAIL           CCS      RUPTREG2                              #  PROCESS ANY ADDITIONAL CHANGES.
006448,000341: 12,2754           12740                           TCF      NXTIFBIT   -1                         
006449,000342: 
006450,000343: 12,2755           40367        TNONTEST           CS       IMODES30                              #  AFTER PROCESSING ALL CHANGES, SEE IF IT
006451,000344: 12,2756           77651                           MASK     BIT7                                  #  IS TIME TO ACT ON A TURN-ON SEQUENCE.
006452,000345: 12,2757           10000                           CCS      A                                     
006453,000346: 12,2760           13103                           TCF      C33TEST                               #  NO - EXAMINE CHANNEL 33.
006454,000347: 
006455,000348: 12,2761           37650                           CAF      BIT8                                  #  SEE IF FIRST SAMPLE OR SECOND.
006456,000349: 12,2762           70367                           MASK     IMODES30                              
006457,000350: 12,2763           10000                           CCS      A                                     
006458,000351: 12,2764           12770                           TCF      PROCTNON                              #  REACT AFTER SECOND SAMPLE.
006459,000352: 
006460,000353: 12,2765           37650                           CAF      BIT8                                  #  IF FIRST SAMPLE, SET BIT TO REACT NEXT
006461,000354: 12,2766           26367                           ADS      IMODES30                              #  TIME.
006462,000355: 12,2767           13103                           TCF      C33TEST                               

Page 169

006464,000357:                                                                                                  #  PROCESS IMU TURN-ON REQUESTS AFTER WAITING 1 SAMPLE FOR ALL SIGNALS TO ARRIVE.
006465,000358: 
006466,000359: 12,2770           43430        PROCTNON           CS       BITS7&8                               
006467,000360: 12,2771           70367                           MASK     IMODES30                              
006468,000361: 12,2772           54367                           TS       IMODES30                              
006469,000362: 12,2773           77642                           MASK     BIT14                                 #  SEE IF TURN-ON REQUEST.
006470,000363: 12,2774           10000                           CCS      A                                     
006471,000364: 12,2775           13066                           TCF      OPONLY                                #  OPERATE ON ONLY.
006472,000365: 
006473,000366: 12,2776           40367                           CS       IMODES30                              #  IF TURN-ON REQUEST, WE SHOULD HAVE IMU
006474,000367: 12,2777           77647                           MASK     BIT9                                  #  OPERATE.
006475,000368: 12,3000           10000                           CCS      A                                     
006476,000369: 12,3001           13004                           TCF      +3                                    
006477,000370: 
006478,000371: 12,3002           05413                           TC       ALARM                                 #  ALARM IF NOT.
006479,000372: 12,3003           00213                           OCT      213                                   
006480,000373: 
006481,000374: 12,3004           03373                 +3        TC       CAGESUB                               
006482,000375: 12,3005           33436                           CAF      90SECS                                
006483,000376: 12,3006           04536                           TC       WAITLIST                              
006484,000377: 12,3007           03014 24006                     2CADR    ENDTNON                               
006485,000378: 12,3011           13103                           TCF      C33TEST                               
006486,000379: 
006487,000380: 12,3012           33436        RETNON             CAF      90SECS                                
006488,000381: 12,3013           04557                           TC       VARDELAY                              
006489,000382: 
006490,000383: 12,3014           47656        ENDTNON            CS       BIT2                                  #  RESET TURN-ON REQUEST FAIL BIT.
006491,000384: 12,3015           70367                           MASK     IMODES30                              
006492,000385: 12,3016           56367                           XCH      IMODES30                              
006493,000386: 12,3017           77656                           MASK     BIT2                                  #  IF IT WAS OFF, SEND ISS DELAY COMPLETE.
006494,000387: 12,3020           00006                           EXTEND                                         
006495,000388: 12,3021           13034                           BZF      ENDTNON2                              
006496,000389: 
006497,000390: 12,3022           37642                           CAF      BIT14                                 #  IF IT WAS ON AND TURN-ON REQUEST NOW
006498,000391: 12,3023           70367                           MASK     IMODES30                              #  PRESENT, RE-ENTER 90 SEC DELAY IN WL.
006499,000392: 12,3024           00006                           EXTEND                                         
006500,000393: 12,3025           13012                           BZF      RETNON                                
006501,000394: 
006502,000395: 12,3026           40061                           CS       STATE                                 #  IF IT IS NOT ON NOW, SEE IF A PROG WAS
006503,000396: 12,3027           77650                           MASK     IMUSEFLG                              #  WAITING.
006504,000397: 12,3030           10000                           CCS      A                                     
006505,000398: 12,3031           14602                           TCF      TASKOVER                              
006506,000399: 12,3032           04102                           TC       POSTJUMP                              
006507,000400: 12,3033           26641                           CADR     IMUBAD                                #  UNSUCCESSFUL TURN-ON.
006508,000401: 
006509,000402: 12,3034           37641        ENDTNON2           CAF      BIT15                                 #  SEND ISS DELAY COMPLETE.
006510,000403: 12,3035           00006                           EXTEND                                         
006511,000404: 12,3036           05012                           WOR      12                                    

Page 170

006513,000406: 12,3037           04755        UNZ2               TC       ZEROICDU                              
006514,000407: 
006515,000408: 12,3040           43425                           CS       BITS4&5                               #  REMOVE ZERO AND COARSE.
006516,000409: 12,3041           00006                           EXTEND                                         
006517,000410: 12,3042           03012                           WAND     12                                    
006518,000411: 
006519,000412: 12,3043           34762                           CAF      3SECS                                 #  ALLOW 3 SECS FOR COUNTER TO FIND GIMBAL.
006520,000413: 12,3044           04557                           TC       VARDELAY                              
006521,000414: 
006522,000415: 12,3045           43426        ISSUP              CS       OCT54                                 #  REMOVE CAGING, IMU FAIL INHIBIT, AND
006523,000416: 12,3046           70367                           MASK     IMODES30                              #  ICDUFAIL INHIBIT FLAGS.
006524,000417: 12,3047           54367                           TS       IMODES30                              
006525,000418: 
006526,000419: 12,3050           03344                           TC       SETISSW                               #  ISS WARNING MIGHT HAVE BEEN INHIBITED.
006527,000420: 
006528,000421: 12,3051           47641                           CS       BIT15                                 #  REMOVE IMU DELAY COMPLETE DISCRETE.
006529,000422: 12,3052           00006                           EXTEND                                         
006530,000423: 12,3053           03012                           WAND     12                                    
006531,000424: 
006532,000425: 12,3054           37645                           CAF      BIT11                                 #  DONT ENABLE PROG ALARM ON PIP FAIL FOR
006533,000426: 12,3055           04536                           TC       WAITLIST                              #  ANOTHER 10 SECS.
006534,000427: 12,3056           02262 26006                     2CADR    PFAILOK                               
006535,000428: 12,3060           40061                           CS       STATE                                 #  SEE IF ANYONE IS WAITING FOR THE IMU AT
006536,000429: 12,3061           77650                           MASK     IMUSEFLG                              #  IMUZERO. IF SO, WAKE THEM UP.
006537,000430: 12,3062           10000                           CCS      A                                     
006538,000431: 12,3063           14602                           TCF      TASKOVER                              
006539,000432: 
006540,000433: 12,3064           04102                           TC       POSTJUMP                              
006541,000434: 12,3065           26633                           CADR     ENDIMU                                
006542,000435: 
006543,000436: 12,3066           37650        OPONLY             CAF      IMUSEFLG                              #  IF OPERATE ON ONLY, ZERO THE COUNTERS
006544,000437: 12,3067           70061                           MASK     STATE                                 #  UNLESS SOMEONE IS USING THE IMU.
006545,000438: 12,3070           10000                           CCS      A                                     
006546,000439: 12,3071           13103                           TCF      C33TEST                               
006547,000440: 
006548,000441: 12,3072           03401                           TC       CAGESUB2                              #  SET TURNON FLAGS.
006549,000442: 
006550,000443: 12,3073           37653                           CAF      BIT5                                  
006551,000444: 12,3074           00006                           EXTEND                                         
006552,000445: 12,3075           05012                           WOR      12                                    
006553,000446: 
006554,000447: 12,3076           37652                           CAF      BIT6                                  #  WAIT 300 MS FOR AGS TO RECEIVE SIGNAL.
006555,000448: 12,3077           04536                           TC       WAITLIST                              
006556,000449: 12,3100           03037 24006                     2CADR    UNZ2                                  
006557,000450: 12,3102           13103                           TCF      C33TEST                               

Page 171

006559,000452:                                                                                                  #  MONITOR CHANNEL 33 FLIP-FLOP INPUTS.
006560,000453: 
006561,000454: 12,3103           30370        C33TEST            CA       IMODES33                              #  SEE IF RELEVENT CHAN33 BITS HAVE
006562,000455: 12,3104           74515                           MASK     33RDMSK                               
006563,000456: 12,3105           54001                           TS       L                                     #  CHANGED.
006564,000457: 12,3106           34515                           CAF      33RDMSK                               
006565,000458: 12,3107           00006                           EXTEND                                         
006566,000459: 12,3110           03033                           WAND     33                                    #  RESETS FLIP-FLOP INPUTS.
006567,000460: 12,3111           00006                           EXTEND                                         
006568,000461: 12,3112           06001                           RXOR     L                                     
006569,000462: 12,3113           00006                           EXTEND                                         
006570,000463: 12,3114           13143                           BZF      GLOCKMON                              #  ON NO CHANGE.
006571,000464: 
006572,000465: 12,3115           54074                           TS       RUPTREG1                              #  SAVE BITS WHICH HAVE CHANGED.
006573,000466: 12,3116           22370                           LXCH     IMODES33                              
006574,000467: 12,3117           00006                           EXTEND                                         
006575,000468: 12,3120           06001                           RXOR     L                                     
006576,000469: 12,3121           54370                           TS       IMODES33                              #  UPDATED IMODES33.
006577,000470: 
006578,000471: 12,3122           37665                           CAF      ZERO                                  
006579,000472: 12,3123           56074                           XCH      RUPTREG1                              
006580,000473: 12,3124           60000                           DOUBLE                                         
006581,000474: 12,3125           13130                           TCF      NXTIBT     +1                         #  SCAN FOR BIT CHANGES.
006582,000475: 
006583,000476: 12,3126           67657                 -1        AD       ONE                                   
006584,000477: 12,3127           24074        NXTIBT             INCR     RUPTREG1                              
006585,000478: 12,3130           60000                 +1        DOUBLE                                         
006586,000479: 12,3131           54000                           TS       A                                     #  (CODING IDENTICAL TO CHAN 30).
006587,000480: 12,3132           13127                           TCF      NXTIBT                                
006588,000481: 
006589,000482: 12,3133           56075                           XCH      RUPTREG2                              
006590,000483: 12,3134           50074                           INDEX    RUPTREG1                              #  GET NEW VALUE OF BIT WHICH CHANGED.
006591,000484: 12,3135           37643                           CAF      BIT13                                 
006592,000485: 12,3136           70370                           MASK     IMODES33                              
006593,000486: 12,3137           50074                           INDEX    RUPTREG1                              
006594,000487: 12,3140           03414                           TC       C33JMP                                
006595,000488: 
006596,000489: 12,3141           10075        NXTFL33            CCS      RUPTREG2                              #  PROCESS POSSIBLE ADDITIONAL CHANGES.
006597,000490: 12,3142           13126                           TCF      NXTIBT     -1                         

Page 172

006599,000492:                                                                                                  #  MONITOR FOR GIMBAL LOCK.
006600,000493: 
006601,000494: 12,3143           10034        GLOCKMON           CCS      CDUZ                                  
006602,000495: 12,3144           13150                           TCF      GLOCKCHK                              #  SEE IF MAGNITUDE OF MGA IS GREATER THAN
006603,000496: 12,3145           13156                           TCF      SETGLOCK                              #  70 DEGREES.
006604,000497: 12,3146           13150                           TCF      GLOCKCHK                              
006605,000498: 12,3147           13156                           TCF      SETGLOCK                              
006606,000499: 
006607,000500: 12,3150           63203        GLOCKCHK           AD       -70DEGS                               
006608,000501: 12,3151           00006                           EXTEND                                         
006609,000502: 12,3152           63155                           BZMF     SETGLOCK   -1                         #  NO LOCK.
006610,000503: 
006611,000504: 12,3153           37652                           CAF      BIT6                                  #  GIMAL LOCK.
006612,000505: 12,3154           13156                           TCF      SETGLOCK                              
006613,000506: 
006614,000507: 12,3155           37665                 -1        CAF      ZERO                                  
006615,000508: 12,3156           60322        SETGLOCK           AD       DSPTAB     +11D                       #  SEE IF PRESENT STATE OF GIMBAL LOCK LAMP
006616,000509: 12,3157           77652                           MASK     BIT6                                  #  AGREES WITH DESIRED STATE BY HALF ADDING
006617,000510: 12,3160           00006                           EXTEND                                         #  THE TWO.
006618,000511: 12,3161           13752                           BZF      GLOCKOK                               #  OK AS IS.
006619,000512: 
006620,000513: 12,3162           70322                           MASK     DSPTAB     +11D                       #  IF OFF, DONT TURN ON IF IMU BEING CAGED.
006621,000514: 12,3163           10000                           CCS      A                                     
006622,000515: 12,3164           13200                           TCF      GLAMPTST                              #  TURN OFF UNLESS LAMP TEST IN PROGRESS.
006623,000516: 
006624,000517: 12,3165           37652                           CAF      BIT6                                  
006625,000518: 12,3166           70367                           MASK     IMODES30                              
006626,000519: 12,3167           10000                           CCS      A                                     
006627,000520: 12,3170           13752                           TCF      GLOCKOK                               
006628,000521: 
006629,000522: 12,3171           40322        GLINVERT           CS       DSPTAB     +11D                       #  INVERT GIMBAL LOCK LAMP.
006630,000523: 12,3172           77652                           MASK     BIT6                                  
006631,000524: 12,3173           67641                           AD       BIT15                                 #  TO INDICATE CHANGE IN DSPTAB +11D.
006632,000525: 12,3174           56322                           XCH      DSPTAB     +11D                       
006633,000526: 12,3175           73204                           MASK     OCT37737                              
006634,000527: 12,3176           26322                           ADS      DSPTAB     +11D                       
006635,000528: 12,3177           13752                           TCF      GLOCKOK                               
006636,000529: 
006637,000530: 12,3200           03417        GLAMPTST           TC       LAMPTEST                              #  TURN OFF UNLESS LAMP TEST IN PROGRESS.
006638,000531: 12,3201           13752                           TCF      GLOCKOK                               
006639,000532: 12,3202           13171                           TCF      GLINVERT                              
006640,000533: 
006641,000534: 12,3203           63434        -70DEGS            DEC      -.38888                               #  -70 DEGREES SCALED IN HALF-REVOLUTIONS.
006642,000535: 12,3204           37737        OCT37737           OCT      37737                                 

Page 173

006644,000537:                                                                                                  #  SUBROUTINES TO PROCESS INBIT CHANGES. NEW VALUE OF BIT ARRIVES IN A, EXCEPT FOR TLIM.
006645,000538: 
006646,000539: 12,3205           77637        TLIM               MASK     POSMAX                                #  REMOVE BIT FROM WORD OF CHANGES AND SET
006647,000540: 12,3206           54075                           TS       RUPTREG2                              #  DSKY TEMP LAMP ACCORDINGLY.
006648,000541: 
006649,000542: 12,3207           10367                           CCS      IMODES30                              
006650,000543: 12,3210           13216                           TCF      TEMPOK                                
006651,000544: 12,3211           13216                           TCF      TEMPOK                                
006652,000545: 
006653,000546: 12,3212           37654                           CAF      BIT4                                  #  TURN ON LAMP.
006654,000547: 12,3213           00006                           EXTEND                                         
006655,000548: 12,3214           05011                           WOR      11                                    
006656,000549: 12,3215           12753                           TCF      NXTIFAIL                              
006657,000550: 
006658,000551: 12,3216           03417        TEMPOK             TC       LAMPTEST                              #  IF TEMP NOW OK, DONT TURN OFF LAMP IF
006659,000552: 12,3217           12753                           TCF      NXTIFAIL                              #  LAMP TEST IN PROGRESS.
006660,000553: 
006661,000554: 12,3220           47654                           CS       BIT4                                  
006662,000555: 12,3221           00006                           EXTEND                                         
006663,000556: 12,3222           03011                           WAND     11                                    
006664,000557: 12,3223           12753                           TCF      NXTIFAIL                              
006665,000558: 
006666,000559: 12,3224           37656        ITURNON            CAF      BIT2                                  #  IF DELAY REQUEST HAS GONE OFF
006667,000560: 12,3225           70367                           MASK     IMODES30                              #  PREMATURELY, DO NOT PROCESS ANY CHANGES
006668,000561: 12,3226           10000                           CCS      A                                     #  UNTIL THE CURRENT 90 SEC WAIT EXPIRES.
006669,000562: 12,3227           12753                           TCF      NXTIFAIL                              
006670,000563: 
006671,000564: 12,3230           37642                           CAF      BIT14                                 #  SEE IF JUST ON OR OFF.
006672,000565: 12,3231           70367                           MASK     IMODES30                              
006673,000566: 12,3232           00006                           EXTEND                                         
006674,000567: 12,3233           13247                           BZF      ITURNON2                              #  IF JUST ON.
006675,000568: 
006676,000569: 12,3234           37641                           CAF      BIT15                                 
006677,000570: 12,3235           00006                           EXTEND                                         #  SEE IF DELAY PRESENT DISCRETE HAS BEEN
006678,000571: 12,3236           02012                           RAND     12                                    #  SENT. IF SO, ACTION COMPLETE.
006679,000572: 12,3237           00006                           EXTEND                                         
006680,000573: 12,3240           13242                           BZF      +2                                    
006681,000574: 12,3241           12753                           TCF      NXTIFAIL                              
006682,000575: 
006683,000576: 12,3242           37656                           CAF      BIT2                                  #  IF NOT, SET BIT TO INDICATE REQUEST NOT
006684,000577: 12,3243           26367                           ADS      IMODES30                              #  PRESENT FOR FULL DURATION.
006685,000578: 12,3244           05413                           TC       ALARM                                 
006686,000579: 12,3245           00207                           OCTAL    207                                   
006687,000580: 12,3246           12753                           TCF      NXTIFAIL                              
006688,000581: 
006689,000582: 12,3247           47651        ITURNON2           CS       BIT7                                  #  SET BIT 7 TO INITIATE WAIT OF 1 SAMPLE.
006690,000583: 12,3250           70367                           MASK     IMODES30                              
006691,000584: 12,3251           67651                           AD       BIT7                                  
006692,000585: 12,3252           54367                           TS       IMODES30                              
006693,000586: 12,3253           12753                           TCF      NXTIFAIL                              

Page 174

006695,000588: 12,3254           10000        IMUCAGE            CCS      A                                     #  NO ACTION IF GOING OFF.
006696,000589: 12,3255           12753                           TCF      NXTIFAIL                              
006697,000590: 
006698,000591: 12,3256           43433                           CS       OCT71000                              #  TERMINATE ICDU AND GYRO PULSE TRAINS.
006699,000592: 12,3257           00006                           EXTEND                                         
006700,000593: 12,3260           03014                           WAND     14                                    
006701,000594: 
006702,000595: 12,3261           03373                           TC       CAGESUB                               
006703,000596: 
006704,000597: 12,3262           37665                           CAF      ZERO                                  #  ZERO COMMAND OUT-COUNTERS.
006705,000598: 12,3263           54050                           TS       CDUXCMD                               
006706,000599: 12,3264           54051                           TS       CDUYCMD                               
006707,000600: 12,3265           54052                           TS       CDUZCMD                               
006708,000601: 12,3266           54047                           TS       GYROCMD                               
006709,000602: 
006710,000603: 12,3267           43432                           CS       OCT1700                               #  HAVING WAITED AT LEAST 27 MCT FROM
006711,000604: 12,3270           00006                           EXTEND                                         #  GYRO PULSE TRAIN TERMINATION, WE CAN
006712,000605: 12,3271           03014                           WAND     14                                    #  DE-SELECT THE GYROS.
006713,000606: 
006714,000607: 12,3272           12753                           TCF      NXTIFAIL                              
006715,000608: 
006716,000609: 12,3273           00006        IMUOP              EXTEND                                         
006717,000610: 12,3274           13304                           BZF      IMUOP2                                
006718,000611: 
006719,000612: 12,3275           40061                           CS       STATE                                 #  IF GOING OFF, ALARM IF PROG USING IMU.
006720,000613: 12,3276           77650                           MASK     IMUSEFLG                              
006721,000614: 12,3277           10000                           CCS      A                                     
006722,000615: 12,3300           12753                           TCF      NXTIFAIL                              
006723,000616: 
006724,000617: 12,3301           05413                           TC       ALARM                                 
006725,000618: 12,3302           00214                           OCT      214                                   
006726,000619: 12,3303           12753                           TCF      NXTIFAIL                              
006727,000620: 
006728,000621: 12,3304           37656        IMUOP2             CAF      BIT2                                  #  SEE IF FAILED ISS TURN-ON SEQ IN PROG.
006729,000622: 12,3305           70367                           MASK     IMODES30                              
006730,000623: 12,3306           10000                           CCS      A                                     
006731,000624: 12,3307           12753                           TCF      NXTIFAIL                              #  IF SO, DONT PROCESS UNTIL PRESENT 90
006732,000625: 12,3310           13247                           TCF      ITURNON2                              #  SECONDS EXPIRES.
006733,000626: 
006734,000627: 12,3311           10000        PIPFAIL            CCS      A                                     #  SET BIT10 IN IMODES30 SO ALL ISS WARNING
006735,000628: 12,3312           37646                           CAF      BIT10                                 #  INFO IS IN ONE REGISTER.
006736,000629: 12,3313           56367                           XCH      IMODES30                              
006737,000630: 12,3314           73435                           MASK     -BIT10                                
006738,000631: 12,3315           26367                           ADS      IMODES30                              
006739,000632: 
006740,000633: 12,3316           03344                           TC       SETISSW                               
006741,000634: 
006742,000635: 12,3317           40367                           CS       IMODES30                              #  IF PIP FAIL DOESNT LIGHT ISS WARNING, DO
006743,000636: 12,3320           77657                           MASK     BIT1                                  #  A PROGRAM ALARM IF IMU OPERATING BUT NOT
006744,000637: 12,3321           10000                           CCS      A                                     #  CAGED OR BEING TURNED ON.

Page 175

006746,000639: 12,3322           13141                           TCF      NXTFL33                               
006747,000640: 
006748,000641: 12,3323           30367                           CA       IMODES30                              
006749,000642: 12,3324           73431                           MASK     OCT1720                               
006750,000643: 12,3325           10000                           CCS      A                                     
006751,000644: 12,3326           13141                           TCF      NXTFL33                               #  ABOVE CONDITION NOT MET.
006752,000645: 
006753,000646: 12,3327           05413                           TC       ALARM                                 
006754,000647: 12,3330           00212                           OCT      212                                   
006755,000648: 12,3331           13141                           TCF      NXTFL33                               
006756,000649: 
006757,000650: 12,3332           10000        DNTMFAST           CCS      A                                     #  DO PROG ALARM IF TM TOO FAST.
006758,000651: 12,3333           13141                           TCF      NXTFL33                               
006759,000652: 
006760,000653: 12,3334           05413                           TC       ALARM                                 
006761,000654: 12,3335           01105                           OCT      1105                                  
006762,000655: 12,3336           13141                           TCF      NXTFL33                               
006763,000656: 
006764,000657: 12,3337           10000        UPTMFAST           CCS      A                                     #  SAME AS DNLINK TOO FAST WITH DIFFERENT
006765,000658: 12,3340           13141                           TCF      NXTFL33                               #  ALARM CODE.
006766,000659: 
006767,000660: 12,3341           05413                           TC       ALARM                                 
006768,000661: 12,3342           01106                           OCT      1106                                  
006769,000662: 12,3343           13141                           TCF      NXTFL33                               

Page 176

006771,000664:                                                                                                  #  CLOSED SUBROUTINES FOR IMU MONITORING.
006772,000665: 12,3344           33424        SETISSW            CAF      OCT15                                 #  SET ISS WARNING USING THE FAIL BITS IN
006773,000666: 12,3345           70367                           MASK     IMODES30                              #  BITS 13, 12, AND 10 OF IMODES30 AND THE
006774,000667: 12,3346           00006                           EXTEND                                         #  FAILURE INHIBIT BITS IN POSITIONS
006775,000668: 12,3347           77646                           MP       BIT10                                 #  4, 3, AND 1.
006776,000669: 12,3350           30367                           CA       IMODES30                              
006777,000670: 12,3351           00006                           EXTEND                                         
006778,000671: 12,3352           04001                           ROR      L                                     #  0 INDICATES FAILURE.
006779,000672: 12,3353           40000                           COM                                            
006780,000673: 12,3354           74514                           MASK     OCT15000                              
006781,000674: 12,3355           10000                           CCS      A                                     
006782,000675: 12,3356           13367                           TCF      ISSWON                                #  FAILURE.
006783,000676: 
006784,000677: 12,3357           37657        ISSWOFF            CAF      BIT1                                  #  DONT TURN OFF ISS WARNING IF LAMP TEST
006785,000678: 12,3360           70370                           MASK     IMODES33                              #  IN PROGRESS.
006786,000679: 12,3361           10000                           CCS      A                                     
006787,000680: 12,3362           00002                           TC       Q                                     
006788,000681: 
006789,000682: 12,3363           47657                           CS       BIT1                                  
006790,000683: 12,3364           00006                           EXTEND                                         
006791,000684: 12,3365           03011                           WAND     11                                    
006792,000685: 12,3366           00002                           TC       Q                                     
006793,000686: 
006794,000687: 12,3367           37657        ISSWON             CAF      BIT1                                  
006795,000688: 12,3370           00006                           EXTEND                                         
006796,000689: 12,3371           05011                           WOR      11                                    
006797,000690: 12,3372           00002                           TC       Q                                     
006798,000691: 
006799,000692: 12,3373           43434        CAGESUB            CS       BITS6&15                              #  SET OUTBITS AND INTERNAL FLAGS FOR
006800,000693: 12,3374           00006                           EXTEND                                         #  SYSTEM TURN-ON OR CAGE. DISABLE THE
006801,000694: 12,3375           03012                           WAND     12                                    #  ERROR COUNTER AND REMOVE IMU DELAY COMP.
006802,000695: 12,3376           33425                           CAF      BITS4&5                               #  SEND ZERO AND COARSE.
006803,000696: 12,3377           00006                           EXTEND                                         
006804,000697: 12,3400           05012                           WOR      12                                    
006805,000698: 
006806,000699: 12,3401           43427        CAGESUB2           CS       OCT75                                 #  SET FLAGS TO INDICATE CAGING OR TURN-ON,
006807,000700: 12,3402           70367                           MASK     IMODES30                              #  AND TO INHIBIT ALL ISS WARNING INFO.
006808,000701: 12,3403           63427                           AD       OCT75                                 
006809,000702: 12,3404           54367                           TS       IMODES30                              
006810,000703: 
006811,000704: 12,3405           00002                           TC       Q                                     
006812,000705: 
006813,000706: 12,3406  12,3344               IMUFAIL            EQUALS   SETISSW                               
006814,000707: 12,3406  12,3344               ICDUFAIL           EQUALS   SETISSW                               

Page 177

006816,000709:                                                                                                  #  JUMP TABLES AND CONSTANTS.
006817,000710: 12,3406           13224        IFAILJMP           TCF      ITURNON                               #  CHANNEL 30 DISPATCH.
006818,000711: 12,3407           13344                           TCF      IMUFAIL                               
006819,000712: 12,3410           13344                           TCF      ICDUFAIL                              
006820,000713: 12,3411           13254                           TCF      IMUCAGE                               
006821,000714: 12,3412           76400        30RDMSK            OCT      76400                                 #  (BIT 10 NOT SAMPLED HERE).
006822,000715: 12,3413           13273                           TCF      IMUOP                                 
006823,000716: 
006824,000717: 12,3414           13311        C33JMP             TCF      PIPFAIL                               #  CHANNEL 33 DISPATCH.
006825,000718: 12,3415           13332                           TCF      DNTMFAST                              
006826,000719: 12,3416           13337                           TCF      UPTMFAST                              
006827,000720: 
006828,000721:                                                                                                  #  SUBROUTINE TO SKIP IF LAMP TEST NOT IN PROGRESS.
006829,000722: 12,3417           40370        LAMPTEST           CS       IMODES33                              #  BIT1 OF IMODES33 = 1 IF LAMP TEST IN
006830,000723: 12,3420           77657                           MASK     BIT1                                  #  PROGRESS.
006831,000724: 12,3421           10000                           CCS      A                                     
006832,000725: 12,3422           24002                           INCR     Q                                     
006833,000726: 12,3423           00002                           TC       Q                                     
006834,000727: 
006835,000728: 12,3424     4515               33RDMSK            EQUALS   PRIO16                                
006836,000729: 12,3424           00015        OCT15              OCT      15                                    
006837,000730: 12,3425           00030        BITS4&5            OCT      30                                    
006838,000731: 12,3426           00054        OCT54              OCT      54                                    
006839,000732: 12,3427           00075        OCT75              OCT      75                                    
006840,000733: 12,3430           00300        BITS7&8            OCT      300                                   
006841,000734: 12,3431           01720        OCT1720            OCT      1720                                  
006842,000735: 12,3432           01700        OCT1700            OCT      1700                                  
006843,000736: 12,3433     4514               OCT15000           EQUALS   PRIO15                                
006844,000737: 12,3433           71000        OCT71000           OCT      71000                                 
006845,000738: 12,3434           40040        BITS6&15           OCT      40040                                 
006846,000739: 12,3435           76777        -BIT10             OCT      -1000                                 
006847,000740: 
006848,000741: 12,3436           21450        90SECS             DEC      9000       B-14                       
006849,000742: 12,3437           00014        120MS              DEC      12         B-14                       
006850,000743: 
006851,000744: 12,3440  12,3752               GLOCKOK            EQUALS   RCSMONIT                              
006852,000745: 12,3440  12,3752               NOIMUMON           EQUALS   GLOCKOK                               

Page 178

006854,000747:                                                                                                  #  RR INBIT MONITOR.
006855,000748: 12,3440           30413        RRAUTCHK           CA       RADMODES                              #  SEE IF CHANGE IN RR AUTO MODE BIT.
006856,000749: 12,3441           00006                           EXTEND                                         
006857,000750: 12,3442           06033                           RXOR     33                                    
006858,000751: 12,3443           77656                           MASK     BIT2                                  
006859,000752: 12,3444           00006                           EXTEND                                         
006860,000753: 12,3445           13501                           BZF      RRCDUCHK                              
006861,000754: 
006862,000755: 12,3446           22413                           LXCH     RADMODES                              #  UPDATE RADMODES.
006863,000756: 12,3447           00006                           EXTEND                                         
006864,000757: 12,3450           06001                           RXOR     L                                     
006865,000758: 12,3451           54413                           TS       RADMODES                              
006866,000759: 12,3452           77656                           MASK     BIT2                                  #  SEE IF JUST ON.
006867,000760: 12,3453           10000                           CCS      A                                     
006868,000761: 12,3454           13473                           TCF      RROFF                                 #  OFF.
006869,000762: 
006870,000763: 12,3455           37651                           CAF      BIT7                                  #  IF JUST ON AND SOME PROGRAM IS USING THE
006871,000764: 12,3456           70061                           MASK     STATE                                 #  RR, DONT ZERO THE CDUS.
006872,000765: 12,3457           10000                           CCS      A                                     
006873,000766: 12,3460           13501                           TCF      RRCDUCHK                              
006874,000767: 
006875,000768: 12,3461           43472                           CS       OCT10001                              #  SET BITS TO INDICATE ZERO AND TURNON
006876,000769: 12,3462           70413                           MASK     RADMODES                              #  IN PROGRESS.
006877,000770: 12,3463           63472                           AD       OCT10001                              
006878,000771: 12,3464           54413                           TS       RADMODES                              
006879,000772: 
006880,000773: 12,3465           37657                           CAF      ONE                                   
006881,000774: 12,3466           04536                           TC       WAITLIST                              
006882,000775: 12,3467           02000 20006                     2CADR    RRTURNON                              
006883,000776: 12,3471           13545                           TCF      NORRGMON                              
006884,000777: 
006885,000778: 12,3472           10001        OCT10001           OCT      10001                                 
006886,000779: 
006887,000780: 12,3473           40061        RROFF              CS       STATE                                 #  IF SOMEONE WAS USING THE RR, DISPLAY AN
006888,000781: 12,3474           77651                           MASK     BIT7                                  #  ALARM IF THE RR GOES OUT OF AUTO MODE.
006889,000782: 12,3475           10000                           CCS      A                                     
006890,000783: 12,3476           13501                           TCF      RRCDUCHK                              
006891,000784: 
006892,000785: 12,3477           05413                           TC       ALARM                                 
006893,000786: 12,3500           00514                           OCT      514                                   

Page 179

006895,000788:                                                                                                  #  CHECK FOR RR CDU FAIL.
006896,000789: 12,3501           30413        RRCDUCHK           CA       RADMODES                              #  LAST SAMPLED BIT IN RADMODES.
006897,000790: 12,3502           00006                           EXTEND                                         
006898,000791: 12,3503           06030                           RXOR     30                                    
006899,000792: 12,3504           77651                           MASK     BIT7                                  
006900,000793: 12,3505           00006                           EXTEND                                         
006901,000794: 12,3506           13521                           BZF      RRGIMON                               
006902,000795: 
006903,000796: 12,3507           37656                           CAF      BIT2                                  #  IF RR NOT IN AUTO MODE, DONT CHANGE BIT
006904,000797: 12,3510           70413                           MASK     RADMODES                              #  7 OF RADMODES. IF THIS WERE NOT DONE,
006905,000798: 12,3511           10000                           CCS      A                                     #  THE TRACKER FAIL MIGHT COME ON WHEN
006906,000799: 12,3512           13545                           TCF      NORRGMON                              #  JUST READING LR DATA.
006907,000800: 
006908,000801: 12,3513           37651                           CAF      BIT7                                  #  SET BIT 7 OF RADMODES FOR SETTRKF.
006909,000802: 12,3514           22413                           LXCH     RADMODES                              #  UPDATE RADMODES.
006910,000803: 12,3515           00006                           EXTEND                                         
006911,000804: 12,3516           06001                           RXOR     L                                     
006912,000805: 12,3517           54413                           TS       RADMODES                              
006913,000806: 
006914,000807: 12,3520           05042        TRKFLCDU           TC       SETTRKF                               #  UPDATE TRACKER FAIL LAMP ON DSKY.

Page 180

006916,000809:                                                                                                  #  THE RR GIMBAL LIMIT MONITOR IS ENABLED WHENEVER THE RR IS IN THE AUTO MODE EXCEPT WHEN THE RR CDUS ARE
006917,000810:                                                                                                  #  BEING ZEROED, OR DURING A REMODE OR MONITOR REPOSITION OPERATION. THE LATTER IS INITIATED BY THIS MONITOR WHEN
006918,000811:                                                                                                  #  THE GIMBALS EXCEED THE LIMITS FOR THE CURRENT MODE. A ROUTINE IS INITIATED TO DRIVE THE GIMBALS TO T = 0 AND
006919,000812:                                                                                                  #  S = 0 IF IN MODE 1 AND T = 180 WITH S = -90 FOR MODE 2.
006920,000813: 
006921,000814: 12,3521           33543        RRGIMON            CAF      OCT32002                              #  INHIBITED BY REMODE, ZEROING, MONITOR,
006922,000815: 12,3522           70413                           MASK     RADMODES                              #  OR RR NOT IN AUTO.
006923,000816: 12,3523           10000                           CCS      A                                     
006924,000817: 12,3524           13545                           TCF      NORRGMON                              
006925,000818: 
006926,000819: 12,3525           04777                           TC       RRLIMCHK                              #  SEE IF ANGLES IN LIMITS.
006927,000820: 12,3526           00035                           ADRES    OPTY                                  
006928,000821: 
006929,000822: 12,3527           13531                           TCF      MONREPOS                              
006930,000823: 
006931,000824: 12,3530           13545                           TCF      NORRGMON                              #  (ADDITIONAL CODING MAY GO HERE).
006932,000825: 
006933,000826: 12,3531           37645        MONREPOS           CAF      BIT11                                 #  SET FLAG TO SHOW REPOSITION IN PROGRESS.
006934,000827: 12,3532           26413                           ADS      RADMODES                              
006935,000828: 
006936,000829: 12,3533           43544                           CS       OCT20002                              #  DISABLE TRACKER AND ERROR COUNTER.
006937,000830: 12,3534           00006                           EXTEND                                         
006938,000831: 12,3535           03012                           WAND     12                                    
006939,000832: 
006940,000833: 12,3536           37656                           CAF      TWO                                   
006941,000834: 12,3537           04536                           TC       WAITLIST                              
006942,000835: 12,3540           02051 20006                     2CADR    DORREPOS                              
006943,000836: 12,3542           13545                           TCF      NORRGMON                              
006944,000837: 
006945,000838: 12,3543           32002        OCT32002           OCT      32002                                 
006946,000839: 12,3544           20002        OCT20002           OCT      20002                                 

Page 181

006948,000841:                                                                                                  #  PROGRAM NAME: GPMATRIX          MOD. NO. 0  DATE: OCTOBER 20, 1966
006949,000842: 
006950,000843:                                                                                                  #  AUTHOR: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
006951,000844: 
006952,000845:                                                                                                  #  THIS PROGRAM CALCULATES ALL THE SINGLE-PRECISION MATRIX ELEMENTS WHICH ARE USED BY LEM DAP TO TRANSFORM VECTORS
006953,000846:                                                                                                  #  FROM GIMBAL TO PILOT (BODY) AXES AND BACK AGAIN.  THESE ELEMENTS ARE USED EXCLUSIVELY BY BASIC LANGUAGE ROUTINES
006954,000847:                                                                                                  #  AND THEREFORE ARE NOT ARRAYED FOR USE BY INTERPRETIVE PROGRAMS.
006955,000848: 
006956,000849:                                                                                                  #  CALLING SEQUENCE: GPMATRIX IS ALWAYS EXECUTED 4 TIMES A SECOND BY T4RUPT PROGRAM.  IT IS LISTED EXPLICITLY TWICE
006957,000850:                                                                                                  #  IN THE T4JUMP TABLE, BUT IT ALSO OCCURS AFTER RRAUTCHK (TWICE).
006958,000851: 
006959,000852:                                                                                                  #  SUBROUTINES CALLED: SPSIN, SPCOS.
006960,000853: 
006961,000854:                                                                                                  #  NORMAL EXIT MODE: CONTROL IS ALWAYS TRANSFERRED TO DBSELECT.
006962,000855: 
006963,000856:                                                                                                  #  ALARM/ABORT MODE: THERE ARE NO REAL ALARMS OR ABORTS.  HOWEVER, WHEN THE MIDDLE GIMBAL ANGLE NEARS GIMBAL LOCK,
006964,000857:                                                                                                  #  A DIVISION BY COS(MG) WILL CAUSE OVERFLOW (I.E. A BAD QUOTIENT).  THIS CONDITION IS PREVENTED BY TESTING COS(MG)
006965,000858:                                                                                                  #  AND SUBSTITUTING POSMAX/NEGMAX FOR THE INCALCULABLE QUANTITITIES.
006966,000859: 
006967,000860:                                                                                                  #  INPUT: CDUX,CDUY,CDUZ.          OUTPUT: M11,M21,M31,M22,M32,MR12,MR13.
006968,000861:                                                                                                  #                                          (ALSO MR22=M22,MR23=M32)        AM DOES NOT DETECT IT.
006969,000862: 
006970,000863:                                                                                                  #  *** WARNING ** IT DIES ON DV OVERFLOW.
006971,000864: 
006972,000865:                                                                                                  #  AOG = CDUX, AIG = CDUY, AMG = CDUZ: MNEMONIC IS: OIM = XYZ
006973,000866: 
006974,000867:                                                                                                  #     *       *    SIN(MG)        0         1  *
006975,000868:                                                                                                  #     M   =   *    COS(MG)COS(OG) SIN(OG)   0  *
006976,000869:                                                                                                  #      GP     *   -COS(MG)SIN(OG) COS(OG)   0  *
006977,000870: 
006978,000871:                                                                                                  #     *       *  0    COS(OG)/COS(MG)        -SIN(OG)/COS(MG)         *
006979,000872:                                                                                                  #     M   =   *  0    SIN(OG)                 COS(OG)                 *
006980,000873:                                                                                                  #      PG     *  1   -SIN(MG)COS(OG)/COS(MG)  SIN(MG)SIN(OG)/COS(MG)  *
006981,000874: 
006982,000875: 12,3545           30034        GPMATRIX           CAE      CDUZ                                  #  SINGLE ENTRY POINT
006983,000876: 12,3546           04233                           TC       SPSIN                                 #  SIN(CDUZ) = SIN(MG)
006984,000877: 12,3547           55404                           TS       M11                                   #  SCALED AT 1
006985,000878: 
006986,000879: 12,3550           30034                           CAE      CDUZ                                  
006987,000880: 12,3551           04232                           TC       SPCOS                                 #  COS(CDUZ) = COS(MG)
006988,000881: 12,3552           55466                           TS       COSMG                                 #  SCALED AT 1 (ONLY A FACTOR)
006989,000882: 
006990,000883: 12,3553           30032                           CAE      CDUX                                  
006991,000884: 12,3554           04233                           TC       SPSIN                                 #  SIN(CDUX) = SIN(OG)
006992,000885: 12,3555           55401                           TS       M22                                   #  SCALED AT 1 (ALSO IS MR22)
006993,000886: 
006994,000887: 12,3556           41401                           CS       M22                                   
006995,000888: 12,3557           00006                           EXTEND                                         
006996,000889: 12,3560           71466                           MP       COSMG                                 #  -SIN(OG)COS(MG)
006997,000890: 12,3561           55406                           TS       M31                                   #  SCALED AT 1

Page 182

006999,000892: 12,3562           30032                           CAE      CDUX                                  
007000,000893: 12,3563           04232                           TC       SPCOS                                 #  COS(CDUX) = COS(OG)
007001,000894: 12,3564           55403                           TS       M32                                   #  SCALED AT 1 (ALSO IS MR23)
007002,000895: 
007003,000896: 12,3565           00006                           EXTEND                                         
007004,000897: 12,3566           71466                           MP       COSMG                                 #  COS(OG)COS(MG)
007005,000898: 12,3567           55405                           TS       M21                                   #  SCALED AT 1
007006,000899: 
007007,000900: 12,3570           31466                           CAE      COSMG                                 #  TEST FOR GIMBAL LOCK (OVERFLOW) REGION
007008,000901: 12,3571           67640                           AD       NEG1/2                                #  BY TESTING MIDDLE GIMBAL ANGLE FOR
007009,000902: 12,3572           00006                           EXTEND                                         #  VALUES EQUAL TO OR GREATER THAN 60 DEGS.
007010,000903: 12,3573           63610                           BZMF     GPGLOCK                               
007011,000904: 
007012,000905: 12,3574           31403                           CAE      M32                                   
007013,000906: 12,3575           00006                           EXTEND                                         
007014,000907: 12,3576           77642                           MP       BIT14                                 #  SCALE FOR DIVISION
007015,000908: 12,3577           00006                           EXTEND                                         
007016,000909: 12,3600           11466                           DV       COSMG                                 #  COS(OG)/COS(MG)
007017,000910: 12,3601           55400                           TS       MR12                                  #  SCALED AT 2
007018,000911: 
007019,000912: 12,3602           41401                           CS       M22                                   
007020,000913: 12,3603           00006                           EXTEND                                         
007021,000914: 12,3604           77642                           MP       BIT14                                 #  SCALE FOR DIVISION
007022,000915: 12,3605           00006                           EXTEND                                         
007023,000916: 12,3606           11466                           DV       COSMG                                 #  -SIN(OG)/COS(MG)
007024,000917: 12,3607           13621                           TCF      MR13STOR                              
007025,000918: 
007026,000919: 12,3610           11403        GPGLOCK            CCS      M32                                   #  SINCE DIVISION BY COS(MG) MIGHT CREATE
007027,000920: 12,3611           37637                           CAF      POSMAX                                
007028,000921: 12,3612           13614                           TCF      +2                                    #  OVERFLOW (I.E. A NUMBER GREATER THAN 2)
007029,000922: 12,3613           37641                           CAF      NEGMAX                                
007030,000923: 12,3614           55400                           TS       MR12                                  #  USE THE VALUE SGN(NUMERATOR)*POSMAX AS
007031,000924: 
007032,000925: 12,3615           11401                           CCS      M22                                   
007033,000926: 12,3616           37637                           CAF      POSMAX                                #  THE CLOSEST APPROXIMATION
007034,000927: 12,3617           13621                           TCF      +2                                    
007035,000928: 12,3620           37641                           CAF      NEGMAX                                
007036,000929: 12,3621           55402        MR13STOR           TS       MR13                                  #  SCALED AT 2

Page 183

007038,000931:                                                                                                  #  THE FOLLOWING SECTION TESTS THE ATTITUDE HOLD BIT TO DETERMINE WHICH DEA

Page 184

007040,000933:                                                                                                  #  PROGRAM NAME: DB SELECT         MOD. NO. 1  DATE: OCTOBER 24, 1966
007041,000934: 
007042,000935:                                                                                                  #  AUTHOR: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
007043,000936: 
007044,000937:                                                                                                  #  THIS PROGRAM SETS THE ERASABLE REGISTER DB TO ONE OF THE THREE VALUES:
007045,000938:                                                                                                  #           1) O.3 DEGREES IF IN ATTITUDE HOLD MODE OR IF IN AUTO WITH THE DEADBAND SELECT BIT OF DAPBOOLS SET
007046,000939:                                                                                                  #              TO MINIMUM.
007047,000940:                                                                                                  #           2) 5.0 DEGREES IF IN AUTO WITH DEADBAND SELECT BIT SET TO MAXIMUM.
007048,000941:                                                                                                  #           3) 1.0 DEGREES IF IN POWERED FLIGHT (ASCENT OR DESCENT) AND OVERRIDING ANY SETTITING OF SCSMODE OR THE
007049,000942:                                                                                                  #              DEADBAND SELECT BIT.  (*** SEE COMMENT AFTER CODING. ***)
007050,000943: 
007051,000944:                                                                                                  #  ***** NOTICE *****
007052,000945: 
007053,000946:                                                                                                  #  THE ABOVE CAPABILITY FULFILLS ALL THE KNOWN DEADBAND REQUIREMENTS FOR AS206, AS208B, AND AS278 (GIVEN THE
007054,000947:                                                                                                  #  APPROPRIATE MISSION PROGRAMS).
007055,000948: 
007056,000949:                                                                                                  #  (ALSO FOR MANNED FLIGHTS A DSKY ENTRY MUST BE SET UP TO SET THE DEADBAND SELECT BIT OF DAPBOOLS. - NOT DONE AS
007057,000950:                                                                                                  #  OF 10/24/66.)
007058,000951: 
007059,000952:                                                                                                  #  ***** DEADBAND SELECT BIT IS BIT13 OF DAPBOOLS. *****
007060,000953:                                                                                                  #           0: MEANS MINIMUM DEADBAND
007061,000954:                                                                                                  #           1: MEANS MAXIMUM DEADBAND
007062,000955: 
007063,000956:                                                                                                  #  CALLING SEQUENCE: CONTROL FALLS THROUGH FROM GPMATRIX. (4 TIMES/SECOND)
007064,000957: 
007065,000958:                                                                                                  #  SUBROUTINES CALLED: NONE.
007066,000959: 
007067,000960:                                                                                                  #  NORMAL EXIT MODE: CONTROL IS ALWAYS TRANSFERRED TO UP/DOWN.
007068,000961: 
007069,000962:                                                                                                  #  ALARM/ABORT MODE: NONE.
007070,000963: 
007071,000964:                                                                                                  #  INPUT: BIT13/CHNL11,BIT13/CHNL31,BIT13/DAPBOOLS.  (SPOOKY, ISN'T IT?)
007072,000965: 
007073,000966:                                                                                                  #  OUTPUT: DB (SCALED AT PI RADIANS).     (NO DEBRIS EXCEPT A)
007074,000967: 
007075,000968: 12,3622           37643        DBSELECT           CAF      BIT13                                 #  ATTITUDE HOLD BIT OF CHANNEL 31
007076,000969: 12,3623           00006                           EXTEND                                         #  0 MEANS ATTITUDE HOLD
007077,000970: 12,3624           02031                           RAND     31                                    #  1 MEANS EITHER OFF OR AUTO
007078,000971: 12,3625           00006                           EXTEND                                         
007079,000972: 12,3626           13635                           BZF      ATTHLDDB                              #  (ATTITUDE HOLD BRANCH)
007080,000973: 
007081,000974: 12,3627           40765                           CS       DAPBOOLS                              #  DEADBAND SELECT BIT OF DAPBOOLS
007082,000975: 12,3630           77643                           MASK     BIT13                                 #  0 MEANS MINIMUM DEADBAND
007083,000976: 12,3631           10000                           CCS      A                                     #  1 MEANS MAXIMUM DEADBAND
007084,000977: 12,3632           13635                           TCF      ATTHLDDB                              #  (MINIMUM DEADBAND BRANCH)
007085,000978: 
007086,000979: 12,3633           33747                           CAF      DBMAXUM                               #  SET MAXIMUM DEADBAND
007087,000980: 12,3634           13636                           TCF      +2                                    
007088,000981: 
007089,000982: 12,3635           33751        ATTHLDDB           CAF      DBATTHLD                              #  SET MINUMUM (ATTITUDE HOLD) DEADBAND

Page 185

007091,000984: 12,3636           55415                           TS       DB                                    
007092,000985: 
007093,000986:                                                                                                  #  ***** IMPORTANT NOTICE *****
007094,000987: 
007095,000988:                                                                                                  #  FOR EFFICIENCY, THE OVERRIDING 1 DEGREE DEADBAND DURING POWERED FLIGHT IS NOT TESTED FOR ABOVE. THE PROGRAM
007096,000989:                                                                                                  #  FOLLOWING (I.E. UP/DOWN) PERFORMS THIS FUNCTION AFTER THE APPROPRIATE TESTS. THEREFORE, DB MAY TRANSIENTLY BEP
007097,000990:                                                                                                  #  INVALID, BUT THE DAP CANNOT USE IT THEN DUE TO T4RUPT MODE.

Page 186

007099,000992:                                                                                                  #  PROGRAM NAME: UP/DOWN           MOD. NO. 1  DATE: OCTOBER 25, 1966
007100,000993: 
007101,000994:                                                                                                  #  AUTHOR: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
007102,000995: 
007103,000996:                                                                                                  #  THIS PROGRAM MONITORS THE STAGE OF THE LEM AND THE ENGINE ON BIT IN ORDER TO DETERMINE WHEN ASCENT, DESCENT, AND
007104,000997:                                                                                                  #  COAST PHASES MUST BE SET UP FOR THE DAP. (DONE 4 TIMES A SECOND.)
007105,000998: 
007106,000999:                                                                                                  #  CALLING SEQUENCE: NONE.         SUBROUTINES CALLED: WAITLIST.
007107,001000: 
007108,001001:                                                                                                  #  NORMAL EXIT MODE: CONTROL IS ALWAYS TRANSFERRED TO ENDDAPT4.
007109,001002: 
007110,001003:                                                                                                  #  ALARM/ABORT MODE: NONE.
007111,001004: 
007112,001005:                                                                                                  #  INPUT:BIT2/CHNL30,BIT13/CHNL11,BIT8/DAPBOOLS.
007113,001006: 
007114,001007:                                                                                                  #  OUTPUT:  A) ASCENT COAST:
007115,001008:                                                                                                  #                  1) BIT8/DAPBOOLS SET TO ZERO, MEANING COAST.
007116,001009:                                                                                                  #                  2) MINIMPDB AND DBMINIMP SET TO 0.3 DEGREES.
007117,001010:                                                                                                  #           B) ASCENT BURN:
007118,001011:                                                                                                  #                  1) INITIALIZATION PASS:
007119,001012:                                                                                                  #                         I) BIT8/DAPBOOLS SET FROM 0 TO 1, MEANING THAT THE AOSTASK HAS BEEN STARTED UP AND THAT
007120,001013:                                                                                                  #                            INITIALIZATION HAS OCCURRED.
007121,001014:                                                                                                  #                        II) MINIMPDB SET TO -DB.
007122,001015:                                                                                                  #                       III) DBMINIMP SET TO ZERO.
007123,001016:                                                                                                  #                        IV) SUMRATEQ AND SUMRATER ZEROED FOR FIRST TWO SECOND AOSTASK SAMPLE PERIOD.
007124,001017:                                                                                                  #                         V) KCOEFCTR ZEROED TO RECORD INITIAL TIME.
007125,001018:                                                                                                  #                        VI) OMEGAQ AND OMEGAR RECORDED IN OLDWFORQ AND OLDWFORR AS LAST OMEGA VECTOR FOR AOSTASK.
007126,001019:                                                                                                  #                       VII) AOSTASK SET IN WAITLIST FOR TWO SECONDS.
007127,001020:                                                                                                  #                      VIII) DB SET TO DBAUTO.
007128,001021:                                                                                                  #                        IX) ****** CHECKOUT ONLY **** IXXTASK, IYYTASK, AND IZZTASK SET IN WAITLIST FOR TEN MS.
007129,001022:                                                                                                  #                  2) NORMAL PASS VOID.
007130,001023:                                                                                                  #           C) DESCENT COAST:
007131,001024:                                                                                                  #                  1) BIT2/DAPBOOLS SET TO 1, MEANING THAT TRIM GIMBAL CONTROL OF DESCENT IS IMPOSSIBLE SINCE
007132,001025:                                                                                                  #                     DESCENT ENGINE OFF.
007133,001026:                                                                                                  #                  2) AOSQTERM AND AOSRTERM ZEROED.
007134,001027:                                                                                                  #           D) DESCENT BURN:
007135,001028:                                                                                                  #                  1) DB SET TO DBAUTO.
007136,001029:                                                                                                  #                  2) BIT2/DAPBOOLS CANNOT NOW BE ZEROED (EVEN THOUGH THE DESCENT ENGINE IS ON), SINCE IT IS NOT
007137,001030:                                                                                                  #                     NECESSARILY TRUE THAT THIS IMPLIES AN OPERATIVE TRIM GIMBAL SYSTEM.
007138,001031: 
007139,001032: 12,3637           37656        UP/DOWN            CAF      BIT2                                  #  STAGE VERIFY BIT OF CHANNEL 30: INVERTED
007140,001033: 12,3640           00006                           EXTEND                                         #  0 MEANS ASCENT STAGE
007141,001034: 12,3641           02030                           RAND     30                                    #  1 MEANS DESCENT STAGE
007142,001035: 12,3642           10000                           CCS      A                                     
007143,001036: 12,3643           13725                           TCF      DESCLEM                               #  (DESCENT STAGE BRANCH)
007144,001037: 
007145,001038: 12,3644           37643        ASCLEM             CAF      BIT13                                 #  ENGINE ON BIT OF CHANNEL 11
007146,001039: 12,3645           00006                           EXTEND                                         #  0 MEANS OFF
007147,001040: 12,3646           02011                           RAND     11                                    #  1 MEANS ON
007148,001041: 12,3647           10000                           CCS      A                                     

Page 187

007150,001043: 12,3650           13660                           TCF      ASCDAP                                #  (ASCENT BURN BRANCH)
007151,001044: 
007152,001045: 12,3651           47650        ASCCOAST           CS       BIT8                                  #  SET BIT8 OF DAPBOOLS TO COAST DAP LOGIC
007153,001046: 12,3652           70765                           MASK     DAPBOOLS                              #  LEM IS STAGED FOR ASCENT, BUT THE ASCENT
007154,001047: 12,3653           54765                           TS       DAPBOOLS                              #  ENGINE IS NOT ON.
007155,001048: 
007156,001049: 12,3654           33751                           CAF      DBATTHLD                              #  FOR ASCENT COAST SET BOTH MINIMUM PULSE
007157,001050: 12,3655           55647                           TS       MINIMPDB                              #  DEADBANDS TO THE DESCENT PHASE VALUE OF
007158,001051: 12,3656           55646                           TS       DBMINIMP                              #  0.3 DEGREES SCALED AT PI RADIANS.
007159,001052: 
007160,001053: 12,3657           14606                           TCF      ENDDAPT4                              #  (END OF UP/DOWN)
007161,001054: 
007162,001055: 12,3660           37650        ASCDAP             CAF      BIT8                                  #  CHECK AOSTASK BIT OF DAPBOOLS
007163,001056: 12,3661           70765                           MASK     DAPBOOLS                              #  IF 0, SET BIT AND INITIATE WAITLIST TASK
007164,001057: 12,3662           10000                           CCS      A                                     #  IF 1, THEN TASK LOOP ALREADY BEGUN
007165,001058: 12,3663           14606                           TCF      ENDDAPT4                              #  (END OF UP/DOWN)
007166,001059: 
007167,001060: 12,3664           33750                           CAF      DBAUTO                                #  SINCE ASCENT ENGINE IS ON -
007168,001061: 12,3665           55415                           TS       DB                                    #  SET DEADBAND TO 1.0 DEGREES
007169,001062: 
007170,001063: 12,3666           37650                           CAF      BIT8                                  #  SET BIT TO INDICATE AOSTASK SET UP AND
007171,001064: 12,3667           26765                           ADS      DAPBOOLS                              #  ASCENT LOGIC.  BIT CLEARLY NOT SET YET.
007172,001065: 
007173,001066: 12,3670           41415                           CS       DB                                    #  MODIFY THE TJETLAW FOR ASCENT:
007174,001067: 12,3671           55647                           TS       MINIMPDB                              #  (IN ONE EQUATION DELETE MINIMPDB AND
007175,001068: 12,3672           37665                           CAF      ZERO                                  #  SHIFT THE SWITCHING CURVE TO THE ORIGIN)
007176,001069: 12,3673           55646                           TS       DBMINIMP                              #  MINIMPDB = -DB, DBMINIMP = 0
007177,001070: 
007178,001071: 12,3674           37665                           CAF      ZERO                                  #  INITIALIZE SUM RATES
007179,001072: 12,3675           55640                           TS       SUMRATEQ                              
007180,001073: 12,3676           55641                           TS       SUMRATER                              
007181,001074: 12,3677           55671                           TS       KCOEFCTR                              #  INITIALIZE TIME COUNTER
007182,001075: 12,3700           31417                           CAE      OMEGAQ                                #  CREATE OLD OMEGAQ
007183,001076: 12,3701           55644                           TS       OLDWFORQ                              
007184,001077: 12,3702           31421                           CAE      OMEGAR                                #  CREATE OLD OMEGAR
007185,001078: 12,3703           55645                           TS       OLDWFORR                              
007186,001079: 
007187,001080:                                                                                                  #  ***** EVENTUALLY, USE 2SECWLT4 FROMM FIXED-FIXED AND NEW NAME. *****
007188,001081: 
007189,001082: 12,3704           33746                           CAF      2SECWLT4                              #  SET UP AOSTASK TO BEGIN IN 2 SECONDS
007190,001083: 12,3705           04536                           TC       WAITLIST                              #  IT THEN SETS UP A LOOP ON WAITLIST FOR
007191,001084: 12,3706           03064 52006                     2CADR    AOSTASK                               #  2 SECOND INTERVALS AND CHECKS FOR THE
007192,001085:                                                                                                  #  SHUTDOWN CONDITION IN BIT8 OF DAPBOOLS
007193,001086: 
007194,001087:                                                                                                  #  ****************************************************************************************************************
007195,001088: 
007196,001089:                                                                                                  #  REMOVE THIS AND THE TASKS WHEN THE INERTIA ESTIMATOR WORKS.
007197,001090: 
007198,001091: 12,3710           37657                           CAF      ONE                                   #  *** SPECIAL DAP CHECKOUT SEQUENCE ***
007199,001092: 12,3711           04536                           TC       WAITLIST                              #  THESE THREE CALLS TO WAITLIST BEGIN A

Page 188

007201,001094: 12,3712           03525 52006                     2CADR    IXXTASK                               #  COMPLICATED PROCEDURE TO DECREMENT THE
007202,001095: 12,3714           37657                           CAF      ONE                                   #  INERTIA MATRIX DIAGONAL ELEMENTS (EACH
007203,001096: 12,3715           04536                           TC       WAITLIST                              #  SCALED AT 2(+18) SLUG FEET(2) ) BY ONE
007204,001097: 12,3716           03536 52006                     2CADR    IYYTASK                               #  BIT AS SOON AS APPROPRIATE BY A NOMINAL
007205,001098: 12,3720           37657                           CAF      ONE                                   #  LINEAR APPROXIMATION TO INERTIAL CHANGE.
007206,001099: 12,3721           04536                           TC       WAITLIST                              
007207,001100: 12,3722           03547 52006                     2CADR    IZZTASK                               #  *** NOT TO BE USED IN MISSIONS ***
007208,001101:                                                                                                  #  ****************************************************************************************************************
007209,001102: 
007210,001103: 12,3724           14606                           TCF      ENDDAPT4                              #  (END OF UP/DOWN)
007211,001104: 
007212,001105: 12,3725           37643        DESCLEM            CAF      BIT13                                 #  ENGINE ON BIT OF CHANNEL 11
007213,001106: 12,3726           00006                           EXTEND                                         #  0 MEANS OFF
007214,001107: 12,3727           02011                           RAND     11                                    #  1 MEANS ON
007215,001108: 12,3730           10000                           CCS      A                                     
007216,001109: 12,3731           13742                           TCF      DESCDAP                               #  (DESCENT BURN BRANCH)
007217,001110: 
007218,001111: 12,3732           47656        DESCOAST           CS       BIT2                                  #  SET BIT2 OF DAPBOOLS TO INDICATE THAT
007219,001112: 12,3733           70765                           MASK     DAPBOOLS                              #  TRIM GIMBAL CANNOT BE USED SINCE THE
007220,001113: 12,3734           67656                           AD       BIT2                                  #  STAGE IS DESCENT, BUT THE ENGINE IS NOT
007221,001114: 12,3735           54765                           TS       DAPBOOLS                              #  ON.
007222,001115: 
007223,001116: 12,3736           37665                           CAF      ZERO                                  #  ZERO TRIM GIMBAL OFFSET ACCELERATION
007224,001117: 12,3737           55642                           TS       AOSQTERM                              #  TERMS IN THE DESCENT RATE DERIVATION
007225,001118: 12,3740           55643                           TS       AOSRTERM                              #  SINCE THE THRUST IS ZERO (ENGINE OFF).
007226,001119: 
007227,001120: 12,3741           14606                           TCF      ENDDAPT4                              #  (END OF UP/DOWN)
007228,001121: 
007229,001122: 12,3742           33750        DESCDAP            CAF      DBAUTO                                #  SINCE DESCENT ENGINE IS ON -
007230,001123: 12,3743           55415                           TS       DB                                    #  SET DEADBAND TO 1.0 DEGREES
007231,001124: 
007232,001125: 12,3744           14606                           TCF      ENDDAPT4                              #  (END OF UP/DOWN)
007233,001126: 
007234,001127: 12,3745           14606                           TCF      ENDDAPT4                              
007235,001128: 
007236,001129: 
007237,001130: 12,3746           00310        2SECWLT4           DEC      200        B-14                       #  2 SECONDS WAITLIST DT
007238,001131: 12,3747           00707        DBMAXUM            DEC      0.02778                               #  5.0 DEGREES SCALED AT PI RADIANS
007239,001132: 12,3750           00133        DBAUTO             DEC      0.00555                               #  1.0 DEGREES SCALED AT PI RADIANS
007240,001133: 12,3751           00033        DBATTHLD           DEC      0.00167                               #  0.3 DEGREES SCALED AT PI RADIANS
007241,001134: 
007242,001135: 
007243,001136: 
007244,001137: 12,3752  12,3545               NORRGMON           EQUALS   GPMATRIX                              
007245,001138: 12,3752     4606               ENDDAPT4           EQUALS   RESUME                                

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