Source Code

These source-code files were transcribed from a printout in Don Eyles's personal collection, scanned by archive.org, and financially sponsored by Peter McDermott. A team of volunteers performed the transcription and proof-reading. The scanned page images are available at the Virtual AGC Project website, as well as higher-quality (but much larger) images at the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating "issues" at the Virtual AGC Project's GitHub Repository.

Notations on the program listing read, in part:

	YUL SYSTEM FOR AGC: NEW PROGRAM SHEPATIN BY EYLES
	DEC 13, 1966

	THIS PROGRAM WAS ASSEMBLED AS A VERSION OF REVISION 37 
        OF PROGRAM SUNBURST BY LEM GROUP
Note that the date is the date of the printout, not the date of the program revision.

014850,000002:                                                                                                  ## Copyright:   Public domain.
014851,000003:                                                                                                  ## Filename:    LEM_FLIGHT_CONTROL_SYSTEM_TEST.agc
014852,000004:                                                                                                  ## Purpose:     A section of Sunburst revision 37, or Shepatin revision 0.
014853,000005:                                                                                                  ##              It is part of an early development version of the software
014854,000006:                                                                                                  ##              for Apollo Guidance Computer (AGC) on the unmanned Lunar
014855,000007:                                                                                                  ##              Module (LM) flight Apollo 5. Sunburst 37 was the program
014856,000008:                                                                                                  ##              upon which Don Eyles's offline development program Shepatin
014857,000009:                                                                                                  ##              was based; the listing herein transcribed was actually for
014858,000010:                                                                                                  ##              the equivalent revision 0 of Shepatin.
014859,000011:                                                                                                  ##              This file is intended to be a faithful transcription, except
014860,000012:                                                                                                  ##              that the code format has been changed to conform to the
014861,000013:                                                                                                  ##              requirements of the yaYUL assembler rather than the
014862,000014:                                                                                                  ##              original YUL assembler.
014863,000015:                                                                                                  ## Reference:   pp. 348-360
014864,000016:                                                                                                  ## Assembler:   yaYUL
014865,000017:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
014866,000018:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
014867,000019:                                                                                                  ## Mod history: 2017-05-24 MAS  Created from Sunburst 120.
014868,000020:                                                                                                  ##              2017-06-05 MAS  Transcribed.
014869,000021:                                                                                                  ##              2017-06-22 RSB  Proofed comment text with
014870,000022:                                                                                                  ##                              octopus/ProoferComments.
014871,000023: 

Page 348

014873,000025: 06,2467                                           BANK     6                                     
014874,000026: 06,2467  E4,1407                                  EBANK=   JETSTEP                               
014875,000027: 
014876,000028: 
014877,000029: 
014878,000030:                                                                                                  #  LEM FCS TEST  ENTRY AND INITIALIZATION JOB.
014879,000031: 
014880,000032:                                                                                                  #        THIS JOB INITIALIZES THE ERASABLE TABLES FOR THE FCS TEST AND PUTS THE FOLLOWING PROGRAMS UNDER
014881,000033:                                                                                                  #  WAITLIST CONTROL.
014882,000034:                                                                                                  #             (1) RCS JET SET TASK
014883,000035:                                                                                                  #             (2) ENGINE ON - OFF TASK
014884,000036:                                                                                                  #             (3) DESCENT ENGINE GIMBAL TRIM TASK
014885,000037:                                                                                                  #             (4) DESCENT ENGINE THROTTLE TASK
014886,000038:                                                                                                  #             (5) INTERFACE CHANNEL LOOK TASK
014887,000039: 
014888,000040: 
014889,000041: 
014890,000042: 06,2467           04633        FCSSTART           TC       GRABWAIT                              #  SO NOTHING DISRUPTS THE LOAD.
014891,000043: 06,2470           32543                           CAF      JSTEPADR                              #  THE START OF THE LIST.
014892,000044: 06,2471           10000        FCS3               CCS      A                                     
014893,000045: 06,2472           54146                           TS       MPAC       +2                         
014894,000046: 06,2473           32546        FCS2               CAF      V04N01K                               #  DISPLAY PRESENT CONTENTS IN R2.
014895,000047: 06,2474           04646                           TC       NVSBWAIT                              
014896,000048: 06,2475           24146                           INCR     MPAC       +2                         
014897,000049: 06,2476           32544                           CAF      V21N02K                               
014898,000050: 
014899,000051: 06,2477           04646                           TC       NVSBWAIT                              #  IN CASE IT,S BUSY BUT IT SHOULDN,T BE.
014900,000052: 06,2500           04464                           TC       ENDIDLE                               #  WHILE LOADING.
014901,000053: 06,2501           02504                           TC       +3                                    #  V34E. TERMINATE LOAD OF THIS LIST
014902,000054:                                                                                                  #  SECTION, GO TO NEW SECTION OR TO TEST.
014903,000055: 06,2502           02503                           TC       +1                                    #  V33E. PRESENT CONTENTS OK, PROCEED TO
014904,000056:                                                                                                  #  NEXT LOCATION IN LIST.
014905,000057: 06,2503           02473                           TC       FCS2                                  
014906,000058: 06,2504           32545                           CAF      V21N30K                               
014907,000059: 06,2505           04646                           TC       NVSBWAIT                              
014908,000060: 06,2506           04464                           TC       ENDIDLE                               
014909,000061: 06,2507           05604                           TC       EJFREE                                
014910,000062: 06,2510           02513                           TC       FCSTEST1                              #  PROCEED TO TEST.
014911,000063: 06,2511           30337                           CAE      DSPTEM1                               #  NEW ADDRESS.
014912,000064: 06,2512           02471                           TC       FCS3                                  
014913,000065: 06,2513           32547        FCSTEST1           CAF      V47K                                  
014914,000066: 06,2514           04646                           TC       NVSBWAIT                              #  OUR VERB IN THE LIGHTS.
014915,000067: 06,2515           00004        FCSTEST            INHINT                                         
014916,000068: 06,2516           37754                           CAF      TWO                                   #  20MS.
014917,000069: 06,2517           05701                           TC       WAITLIST                              
014918,000070: 06,2520  E4,1407                                  EBANK=   JETSTEP                               
014919,000071: 06,2520           02554 14004                     2CADR    JETSTART                              
014920,000072: 
014921,000073: 06,2522           37755                           CAF      BIT1                                  #  10MS.
014922,000074: 
014923,000075: 06,2523           05701                           TC       WAITLIST                              
014924,000076: 06,2524  E4,1407                                  EBANK=   JETSTEP                               

Page 349

014926,000078: 06,2524           02707 14004                     2CADR    ENGSTART                              
014927,000079: 
014928,000080: 06,2526           36301                           CAF      THREE                                 #  30MS.
014929,000081: 06,2527           05701                           TC       WAITLIST                              
014930,000082: 06,2530  E4,1407                                  EBANK=   JETSTEP                               
014931,000083: 06,2530           03004 14004                     2CADR    TRIMTOP                               
014932,000084: 
014933,000085: 06,2532           37753                           CAF      FOUR                                  #  40MS.
014934,000086: 
014935,000087: 06,2533           05701                           TC       WAITLIST                              
014936,000088: 06,2534  E4,1407                                  EBANK=   JETSTEP                               
014937,000089: 06,2534           03124 14004                     2CADR    THRSTART                              
014938,000090: 
014939,000091: 06,2536           37760                           CAF      FIVE                                  #  50MS.
014940,000092: 06,2537           05701                           TC       WAITLIST                              
014941,000093: 06,2540  E4,1407                                  EBANK=   JETSTEP                               
014942,000094: 06,2540           03212 14004                     2CADR    LOOKTOP                               
014943,000095: 
014944,000096: 06,2542           05604                           TC       EJFREE                                #  NOW THEY START.
014945,000097: 
014946,000098: 06,2543           02007        JSTEPADR           ECADR    JETSTEP                               
014947,000099: 06,2544           02102        V21N02K            OCT      02102                                 
014948,000100: 06,2545           02130        V21N30K            OCT      02130                                 
014949,000101: 06,2546           00401        V04N01K            OCT      00401                                 
014950,000102: 06,2547           04700        V47K               OCT      04700                                 
014951,000103: 

Page 350

014953,000105:                                                                                                  #  LEM FCS TEST   RCS JETSET TASK
014954,000106:                                                                                                  #      THIS JOB ISSUES A PROFILE OF  JET ON-OFF SIGNALS AS DETERMINED BY THE CONSTANTS IN A SET OF SIX REGISTERS.
014955,000107:                                                                                                  #  THE SIX REGISTERS ARE, (1) NTIMES, THE NUMBER OF TIMES A PARTICULAR STEP WILL BE PERFORMED. (2) NEXTTIME, THE
014956,000108:                                                                                                  #  TIME BETWEEN STEPS, A MAXIMUM OF 2 MINUTES, (3) JETONTM, THE TIME TO TURN THE JETS ON, SCALED FOR T3, (4) JET-
014957,000109:                                                                                                  #  OFFTM, THE TIME AFTER ONTM TO TURN THE JETS OFF, (5) XJETS, THE PARTICULAR X JETS TO BE TURNED ON AND OFF
014958,000110:                                                                                                  #  DURING EACH REPEAT OF A STEP, AND (6) YZJETS,, THE Y AND Z JETS TO BE TURNED ON AND OFF DURING EACH REPEAT OF A
014959,000111:                                                                                                  #  STEP.  XJETS AND YZJETS MUST BE IN THE SAME FORMAT AS CHANNELS 5 AND6 RESPECTIVELY.  THERE ARE EIGHT SETS OF
014960,000112:                                                                                                  #  THESE SIX REGISTERS.
014961,000113:                                                                                                  #      THE REGISTER JETSTEP IS USED TO INDEX THE 8 SETS OF REGISTERS, THE ALLOWABLE VALUES OF JETSTEP ARE +0 THRU 7
014962,000114:                                                                                                  #      THIS JOB WILL BE ENTERED BUT IMMEDIATELY ENDED IF THE INITIAL VALUES OF JETSTEP AND NTIMES ARE +0.
014963,000115: 
014964,000116: 
014965,000117: 
014966,000118: 06,2550           11407        NEXTSET            CCS      JETSTEP                               #  IT MAY BE ZERO.
014967,000119: 
014968,000120: 06,2551           02553                           TC       +2                                    #  NOPE
014969,000121: 06,2552           05745                           TC       TASKOVER                              #  IT IS SO WE ARE DONE WITH THIS TASK.
014970,000122: 06,2553           55407                           TS       JETSTEP                               
014971,000123: 
014972,000124: 06,2554           51407        JETSTART           NDX      JETSTEP                               #  ENTER HERE.
014973,000125: 06,2555           11410                           CCS      NTIMES                                #  SEE IF THIS STEP IS FINISHED.
014974,000126: 06,2556           02560                           TC       +2                                    #  NO
014975,000127: 06,2557           02550                           TC       NEXTSET                               #  YES
014976,000128: 06,2560           51407                           NDX      JETSTEP                               
014977,000129: 06,2561           31420                           CAE      NEXTTIME                              #  MUST BE SCALED FOR T3.  REMEMBER TO BIAS
014978,000130:                                                                                                  #  THIS FOR ON TIME.
014979,000131: 06,2562           05701                           TC       WAITLIST                              
014980,000132: 06,2563  E4,1407                                  EBANK=   JETSTEP                               
014981,000133: 06,2563           02577 14004                     2CADR    JTOP                                  
014982,000134: 
014983,000135: 06,2565           05745                           TC       TASKOVER                              
014984,000136: 
014985,000137: 06,2566           37761        JETOFF             CAF      ZERO                                  
014986,000138: 06,2567           00006                           EXTEND                                         
014987,000139: 06,2570           01005                           WRITE    5                                     
014988,000140: 06,2571           00006                           EXTEND                                         
014989,000141: 06,2572           01006                           WRITE    6                                     
014990,000142: 06,2573           51407                           NDX      JETSTEP                               
014991,000143: 
014992,000144: 06,2574           11410                           CCS      NTIMES                                
014993,000145: 06,2575           51407                           NDX      JETSTEP                               
014994,000146: 06,2576           55410                           TS       NTIMES                                #  ONE LESS TIME.
014995,000147: 06,2577           51407        JTOP               NDX      JETSTEP                               
014996,000148: 06,2600           11410                           CCS      NTIMES                                #  FOR LOOPING.
014997,000149: 06,2601           02603                           TC       +2                                    
014998,000150: 06,2602           02550                           TC       NEXTSET                               
014999,000151: 06,2603           51407                           NDX      JETSTEP                               
015000,000152: 06,2604           31430                           CAE      JETONTM                               #  SCALED FOR T3.  TIME FOR JETS ON.
015001,000153: 06,2605           05701                           TC       WAITLIST                              
015002,000154: 06,2606  E4,1407                                  EBANK=   JETSTEP                               
015003,000155: 06,2606           02611 14004                     2CADR    JETON                                 
015004,000156: 

Page 351

015006,000158: 06,2610           05745                           TC       TASKOVER                              
015007,000159: 
015008,000160: 06,2611           51407        JETON              NDX      JETSTEP                               
015009,000161: 06,2612           31440                           CAE      XJETS                                 #  MUST BE IN CHANNEL 5 FORMAT.
015010,000162: 06,2613           55401                           TS       XJBUF                                 
015011,000163: 06,2614           51407                           NDX      JETSTEP                               
015012,000164: 06,2615           31450                           CAE      YZJETS                                #  MUST BE IN CHANNEL 6 FORMAT.
015013,000165: 06,2616           55402                           TS       YZJBUF                                
015014,000166: 06,2617           00006        JFAILCK            EXTEND                                         #  THIS ROUTINE EXAMINES EACH JETFAIL BIT
015015,000167: 06,2620           00032                           READ     32                                    #  AND IF A FAILURE IS INDICATED THE CORRES
015016,000168: 06,2621           40000                           COM                                            #  PONDING COMMANDS ARE MASKED OUT .
015017,000169: 06,2622           55403                           TS       JFBUF                                 #  SAVE 32 REINVERTED.
015018,000170: 06,2623           37757                           CAF      SEVEN                                 
015019,000171: 06,2624           55404        JF3                TS       FCNTR                                 
015020,000172: 06,2625           31403                           CAE      JFBUF                                 
015021,000173: 06,2626           51404                           NDX      FCNTR                                 
015022,000174: 06,2627           77746                           MASK     BIT8                                  
015023,000175: 06,2630           10000                           CCS      A                                     
015024,000176: 06,2631           02650                           TC       JFAIL                                 
015025,000177: 
015026,000178: 06,2632           11404        JFAIL1             CCS      FCNTR                                 
015027,000179: 06,2633           02624                           TC       JF3                                   
015028,000180: 06,2634           31401                           CAE      XJBUF                                 
015029,000181: 06,2635           00006                           EXTEND                                         
015030,000182: 06,2636           01005                           WRITE    5                                     #  XJETS GO ON.
015031,000183: 06,2637           31402                           CAE      YZJBUF                                
015032,000184: 06,2640           00006                           EXTEND                                         
015033,000185: 06,2641           01006                           WRITE    6                                     #  YZJETS GO ON.
015034,000186: 06,2642           51407                           NDX      JETSTEP                               
015035,000187: 06,2643           31460                           CAE      JETOFFTM                              #  JET OFF TIME SCALED FOR T3.
015036,000188: 06,2644           05701                           TC       WAITLIST                              
015037,000189: 06,2645  E4,1407                                  EBANK=   JETSTEP                               
015038,000190: 06,2645           02566 14004                     2CADR    JETOFF                                
015039,000191: 
015040,000192: 06,2647           05745                           TC       TASKOVER                              
015041,000193: 
015042,000194: 06,2650           51404        JFAIL              NDX      FCNTR                                 
015043,000195: 06,2651           42673                           CS       XJETMASK                              
015044,000196: 06,2652           71401                           MASK     XJBUF                                 
015045,000197: 06,2653           55401                           TS       XJBUF                                 
015046,000198: 06,2654           51404                           NDX      FCNTR                                 
015047,000199: 06,2655           42663                           CS       YZJETMSK                              
015048,000200: 06,2656           71402                           MASK     YZJBUF                                
015049,000201: 
015050,000202: 06,2657           55402                           TS       YZJBUF                                
015051,000203: 06,2660           04744                           TC       ALARM                                 
015052,000204: 06,2661           01410                           OCT      01410                                 #  TEMPORARY JET FAIL ALARM CODE.
015053,000205: 06,2662           02632                           TC       JFAIL1                                
015054,000206: 

Page 352

015056,000208: 06,2663           00010        YZJETMSK           OCT      00010                                 #  JET 11
015057,000209: 06,2664           00020                           OCT      00020                                 #  JET 12
015058,000210: 
015059,000211: 06,2665           00004                           OCT      00004                                 #  JET 15
015060,000212: 06,2666           00200                           OCT      00200                                 #  JET 16
015061,000213: 06,2667           00001                           OCT      00001                                 #  JET 7
015062,000214: 06,2670           00002                           OCT      00002                                 #  JET 3
015063,000215: 06,2671           00040                           OCT      00040                                 #  JET 8
015064,000216: 06,2672           00100                           OCT      00100                                 #  JET 4
015065,000217: 
015066,000218: 06,2673           00040        XJETMASK           OCT      00040                                 #  JET 10
015067,000219: 06,2674           00020                           OCT      00020                                 #  JET 9
015068,000220: 06,2675           00100                           OCT      00100                                 #  JET 13
015069,000221: 06,2676           00200                           OCT      00200                                 #  JET 14
015070,000222: 06,2677           00010                           OCT      00010                                 #  JET 6
015071,000223: 06,2700           00001                           OCT      00001                                 #  JET 1
015072,000224: 06,2701           00004                           OCT      00004                                 #  JET 5
015073,000225: 06,2702           00002                           OCT      00002                                 #  JET 2
015074,000226: 

Page 353

015076,000228:                                                                                                  #  LEM FCS TEST  ENGINE ON - OFF TASK
015077,000229:                                                                                                  #  THIS TASK TURNS THE LEM ASCENT OR DESCENT ENGINE ON AND OFF ACCORDING TOTHE CONSTANTS STORED IN THE FIVE SETS OF
015078,000230:                                                                                                  #  REGISTERS, (1) CYLTIMES, WHICH CONTAINS THE NUMBER OF TIMES A PARTICULARSTEP WILL BE REPEATED, (2) NEXTCYLT,
015079,000231:                                                                                                  #   WHICH CONTAINS THE TIME BETWEEN STEPS SCALED FOR T3, (3) ONTIME, WHICH CONTAINS THE TIME TO TURN THE ENGINE ON
015080,000232:                                                                                                  #  WHICH ALSO DETERMINES THE LENGTH OF TIME THE ENGIME WILL BE OFF WITHIN A SERIES OF ON:OFF CYCLES, (4) OFFTIME,
015081,000233:                                                                                                  #   WHICH CONTAINS THE NUMBER OF 2 MINUTES BEFORE THE ENGINE WILL BE TURNED OFF, AND (5) OFFTIMER, WHICH
015082,000234:                                                                                                  #  CONTAINS THE RESIDUAL TIME BEFORE THE ENGINE WILL BE TURNED OFF.  OFFTIME AND OFFTIMER DETERMINE THE LENGTH
015083,000235:                                                                                                  #  OF TIME THE ENGINE WILL BE ON IN ANY ONE CYCLE. THERE ARE THREE SETS OF THESE REGISTERS.
015084,000236: 
015085,000237:                                                                                                  #      THE ENGSTEP REGISTER IS USED AS AN INDEX TO PICK UP A PARTICULAR SET  OF THE ABOVE 5 REGISTERS.  THIS TASK
015086,000238:                                                                                                  #  WILL BE ENTERED BUT IMMEDIATELY ENDED IF ENGSTEP AND CYLTIMES = +0.     THE ALLOWABLE VALUES OF ENGSTEP ARE +0,
015087,000239:                                                                                                  #  1 AND 2.
015088,000240: 
015089,000241: 
015090,000242: 
015091,000243: 06,2703           11470        NXTONOFF           CCS      ENGSTEP                               
015092,000244: 06,2704           02706                           TC       +2                                    
015093,000245: 06,2705           05745                           TC       TASKOVER                              #  EXIT HERE WHEN STEP AND CYL ARE +0.
015094,000246: 06,2706           55470                           TS       ENGSTEP                               #  ONE LESS.
015095,000247: 
015096,000248: 06,2707           51470        ENGSTART           NDX      ENGSTEP                               #  ENTER HERE.
015097,000249: 06,2710           11471                           CCS      CYLTIMES                              #  NUM OF EACH  ON/OFF SET
015098,000250: 06,2711           02713                           TC       +2                                    
015099,000251: 06,2712           02703                           TC       NXTONOFF                              #  NO MORE OF THIS SET
015100,000252: 06,2713           51470                           NDX      ENGSTEP                               
015101,000253: 06,2714           31474                           CAE      NEXTCYLT                              #  START OF NEXT CYCLE.
015102,000254: 06,2715           05701                           TC       WAITLIST                              
015103,000255: 06,2716  E4,1470                                  EBANK=   ENGSTEP                               
015104,000256: 06,2716           02737 14004                     2CADR    ENGONTM                               
015105,000257: 
015106,000258: 06,2720           05745                           TC       TASKOVER                              
015107,000259: 
015108,000260: 06,2721           45226        ENGRESET           CS       PRIO30                                #  BITS 13 AND 14.
015109,000261: 06,2722           00006                           EXTEND                                         
015110,000262: 06,2723           02011                           RAND     11                                    
015111,000263: 06,2724           67740                           AD       BIT14                                 
015112,000264: 06,2725           00006                           EXTEND                                         
015113,000265: 06,2726           01011                           WRITE    11                                    #  ENG ON = 0, ENG OFF = 1.
015114,000266: 06,2727           51470                           NDX      ENGSTEP                               
015115,000267: 06,2730           11471                           CCS      CYLTIMES                              
015116,000268: 06,2731           10000                           CCS      A                                     
015117,000269: 06,2732           02734                           TC       +2                                    
015118,000270: 06,2733           02703                           TC       NXTONOFF                              #  WAS ONE.
015119,000271: 06,2734           67755                           AD       ONE                                   #  WAS MORE THAN ONE.
015120,000272: 06,2735           51470                           NDX      ENGSTEP                               
015121,000273: 06,2736           55471                           TS       CYLTIMES                              
015122,000274: 
015123,000275: 06,2737           51470        ENGONTM            NDX      ENGSTEP                               
015124,000276: 06,2740           31502                           CAE      OFFTIME                               
015125,000277: 06,2741           55406                           TS       OFFTMBUF                              
015126,000278: 06,2742           51470                           NDX      ENGSTEP                               

Page 354

015128,000280: 06,2743           31477                           CAE      ONTIME                                
015129,000281: 06,2744           05701                           TC       WAITLIST                              
015130,000282: 06,2745  E4,1470                                  EBANK=   ENGSTEP                               
015131,000283: 06,2745           02750 14004                     2CADR    ENGSET                                
015132,000284: 
015133,000285: 06,2747           05745                           TC       TASKOVER                              
015134,000286: 
015135,000287: 06,2750           45226        ENGSET             CS       PRIO30                                
015136,000288: 06,2751           00006                           EXTEND                                         
015137,000289: 06,2752           02011                           RAND     11                                    
015138,000290: 06,2753           67741                           AD       BIT13                                 
015139,000291: 06,2754           00006                           EXTEND                                         
015140,000292: 06,2755           01011                           WRITE    11                                    #  ENG ON = 1, ENG OFF = 0.
015141,000293: 06,2756           11406        ENGRST             CCS      OFFTMBUF                              
015142,000294: 
015143,000295: 06,2757           02766                           TC       LTIMEON                               #  AT LEAST 2MIN. BEFORE ENGINE OFF.
015144,000296: 06,2760           51470                           NDX      ENGSTEP                               
015145,000297: 06,2761           31505                           CAE      OFFTIMER                              #  LESS THAN 2MIN. TO ENGINE OFF.
015146,000298: 06,2762           05701                           TC       WAITLIST                              
015147,000299: 06,2763  E4,1470                                  EBANK=   ENGSTEP                               
015148,000300: 06,2763           02721 14004                     2CADR    ENGRESET                              
015149,000301: 
015150,000302: 06,2765           05745                           TC       TASKOVER                              
015151,000303: 
015152,000304: 06,2766           11406        LTIMEON            CCS      OFFTMBUF                              #  IS THERE ANY MORE.
015153,000305: 06,2767           02771                           TC       +2                                    #  YES.
015154,000306: 06,2770           02756                           TC       ENGRST                                #  NO.
015155,000307: 06,2771           55406                           TS       OFFTMBUF                              #  ONE LESS.
015156,000308: 06,2772           32777                           CAF      2MIN                                  
015157,000309: 06,2773           05701                           TC       WAITLIST                              
015158,000310: 06,2774  E4,1470                                  EBANK=   ENGSTEP                               
015159,000311: 06,2774           02766 14004                     2CADR    LTIMEON                               
015160,000312: 
015161,000313: 06,2776           05745                           TC       TASKOVER                              
015162,000314: 
015163,000315: 06,2777           27340        2MIN               DEC      12000      B-14                       
015164,000316: 

Page 355

015166,000318:                                                                                                  #  LEM FCS TEST  TRIM TASK
015167,000319:                                                                                                  #  THIS PROGRAM ISSUES A PROFILE OF PITCH AND ROLL TRIM COMMANDS TO THE LEM DESCENT ENGINE GIMBAL IN ACCORDANCEWITH
015168,000320:                                                                                                  #  THE VALUE S IN THE TRIMSTEP REGISTER AND THE 12 SETS OF 5 REGISTERS CALLED NUMTIMES, STEPDLYT, TRIMONT, TRIMOFFT
015169,000321:                                                                                                  #  AND TRIMIND.  TRIMSTEP IS USED TO PICK UP A PARTICULAR SET OF THE 5 REGISTERS AND HAS ALLOWABLE VALUES FROM +0
015170,000322:                                                                                                  #  THROUGH +11 DECIMAL.  THE 5 REGISTERS IN EACH SET ARE DEFINED AS FOLLOWS
015171,000323:                                                                                                  #      (1) NUMTIMES DETERMINES THE NUMBER OF TIMES THE COMMAND IN TRIMIND  WILL BE ISSUED.  VALUES FROM +0 TO
015172,000324:                                                                                                  #  OCT 37777 ARE PERMITTED.
015173,000325:                                                                                                  #      (2) STEPDLYT DETERMINES THE TIME BETWEEN THE START OF A STEP AND THE BEGINNING OF TRIMONT.  STEPDLYT MUST BE
015174,000326:                                                                                                  #  FORMATTED FOR T3, ITS MAXIMUM VALUE IS 2 MINUTES.
015175,000327:                                                                                                  #      (3) TRIMONT DETERMINES THE TIME BETWEEN THE END OF STEPDLYT OR TRIMOFFT AND THE TIME THE TRIM COMMANDS ARE
015176,000328:                                                                                                  #  ISSUED.  IT MUST BE FORMATTED FOR T3.
015177,000329:                                                                                                  #      (4) TRIMOFFT DETERMINES THE LENGTH OF TIME THE TRIM COMMAND WILL BE ON, FORMATTED FOR T3.
015178,000330:                                                                                                  #      (5) TRIMIND DETERMINES THE PITCH AND ROLL COMMAND TO BE ISSUED.  THE FORMAT IS, BIT9=1=+ PITCH COMMAND,
015179,000331:                                                                                                  #  BIT10=1=-PITCH, BIT11=1= +ROLL, BIT12=1= -ROLL.  A BIT=0 INDICATES NO COMMAND.  ANY COMBINATION OF COMMANDS IS
015180,000332:                                                                                                  #  PERMITTED.
015181,000333:                                                                                                  #     THIS TASK WILL BE ENTERED BUT IMMEDIATELY ENDED IF TRIMSTEP AND NUMTIMES = +0.
015182,000334: 
015183,000335: 
015184,000336: 
015185,000337: 06,3000           11510        NEXTTRIM           CCS      TRIMSTEP                              
015186,000338: 
015187,000339: 06,3001           03003                           TC       +2                                    
015188,000340: 06,3002           05745                           TC       TASKOVER                              #  EXIT HERE.
015189,000341: 06,3003           55510                           TS       TRIMSTEP                              #  LESS ONE.
015190,000342: 
015191,000343: 06,3004           51510        TRIMTOP            NDX      TRIMSTEP                              #  ENTER HERE.
015192,000344: 06,3005           11511                           CCS      NUMTIMES                              
015193,000345: 06,3006           03010                           TC       +2                                    
015194,000346: 06,3007           03000                           TC       NEXTTRIM                              
015195,000347: 06,3010           51510                           NDX      TRIMSTEP                              
015196,000348: 06,3011           31525                           CAE      STEPDLYT                              
015197,000349: 06,3012           05701                           TC       WAITLIST                              
015198,000350: 06,3013  E4,1510                                  EBANK=   TRIMSTEP                              
015199,000351: 06,3013           03031 14004                     2CADR    TRIMSET                               
015200,000352: 
015201,000353: 06,3015           05745                           TC       TASKOVER                              
015202,000354: 
015203,000355: 06,3016           43115        TRIMOFF            CS       TRIMMASK                              
015204,000356: 06,3017           00006                           EXTEND                                         
015205,000357: 06,3020           03012                           WAND     12                                    #  TRIM GOES OFF.
015206,000358: 06,3021           51510        NUMSTEP            NDX      TRIMSTEP                              
015207,000359: 06,3022           11511                           CCS      NUMTIMES                              
015208,000360: 06,3023           10000                           CCS      A                                     
015209,000361: 06,3024           03026                           TC       +2                                    
015210,000362: 
015211,000363: 06,3025           03000                           TC       NEXTTRIM                              #  WAS ONE.
015212,000364: 06,3026           67755                           AD       ONE                                   
015213,000365: 06,3027           51510                           NDX      TRIMSTEP                              
015214,000366: 06,3030           55511                           TS       NUMTIMES                              
015215,000367: 06,3031           51510        TRIMSET            NDX      TRIMSTEP                              
015216,000368: 06,3032           31541                           CAE      TRIMONT                               
015217,000369: 06,3033           05701                           TC       WAITLIST                              

Page 356

015219,000371: 06,3034  E4,1510                                  EBANK=   TRIMSTEP                              
015220,000372: 06,3034           03037 14004                     2CADR    TRIMON                                
015221,000373: 
015222,000374: 
015223,000375: 06,3036           05745                           TC       TASKOVER                              
015224,000376: 
015225,000377: 06,3037           33114        TRIMON             CAF      BITS9,10                              #  CHECK PITCH AND ROLL TRIM FAIL BITS.
015226,000378: 06,3040           00006                           EXTEND                                         
015227,000379: 06,3041           06032                           RXOR     32                                    
015228,000380: 06,3042           73114                           MASK     BITS9,10                              
015229,000381: 06,3043           00006                           EXTEND                                         
015230,000382: 06,3044           13052                           BZF      TRIMON1                               
015231,000383: 06,3045           35674                           CAF      PRIO35                                #  FAIL IS ON. FLASH FAIL CODE (01400) AND
015232,000384: 06,3046           05523                           TC       NOVAC                                 #  IDLE UNTIL SOMEONE RESETS IT, TERMINATES
015233,000385: 06,3047  E4,1407                                  EBANK=   JETSTEP                               
015234,000386: 06,3047           03065 14004                     2CADR    PERFORM                               #  THE TASK, OR DECIDES TO PROCEED WITH IT.
015235,000387: 
015236,000388: 06,3051           05745                           TC       TASKOVER                              
015237,000389: 
015238,000390: 06,3052           51510        TRIMON1            NDX      TRIMSTEP                              
015239,000391: 06,3053           31571                           CAE      TRIMIND                               
015240,000392: 06,3054           73115                           MASK     TRIMMASK                              #  SAFETY PLAY
015241,000393: 06,3055           00006                           EXTEND                                         
015242,000394: 06,3056           05012                           WOR      12                                    #  TRIM STARTS.
015243,000395: 06,3057           51510                           NDX      TRIMSTEP                              
015244,000396: 06,3060           31555                           CAE      TRIMOFFT                              
015245,000397: 
015246,000398: 06,3061           05701                           TC       WAITLIST                              
015247,000399: 06,3062  E4,1510                                  EBANK=   TRIMSTEP                              
015248,000400: 06,3062           03016 14004                     2CADR    TRIMOFF                               
015249,000401: 
015250,000402: 06,3064           05745                           TC       TASKOVER                              
015251,000403: 
015252,000404: 06,3065           04633        PERFORM            TC       GRABWAIT                              #  KEY RELEASE MAY COME ON.
015253,000405: 06,3066           33114                           CAF      TRIMCODE                              #  01400
015254,000406: 06,3067           54337                           TS       DSPTEM1                               
015255,000407: 06,3070           33116                           CAF      V01N25K                               
015256,000408: 06,3071           04646                           TC       NVSBWAIT                              
015257,000409: 06,3072           33117                           CAF      V50K                                  #  PLEASE PERFORM.
015258,000410: 06,3073           04646                           TC       NVSBWAIT                              
015259,000411: 06,3074           04611                           TC       FLASHON                               #  ANY RESPONSE TURNS IT OFF.
015260,000412: 06,3075           04464                           TC       ENDIDLE                               #  WAIT FOR SOMEONE TO DO SOMETHING.
015261,000413: 06,3076           05604                           TC       EJFREE                                #  V34E. TERMINATE THE TASK.
015262,000414: 06,3077           03106                           TC       TR1                                   #  V33E. PROCEED WITH THE FAIL ON.
015263,000415: 06,3100           00004                           INHINT                                         #  ENTER. THE FAIL HAS BEEN RESET.
015264,000416: 06,3101           37754                           CAF      BIT2                                  #  20MS.
015265,000417: 06,3102           05701                           TC       WAITLIST                              
015266,000418: 06,3103           03037 14004                     2CADR    TRIMON                                #  CHECK AGAIN TO BE SURE. THEN PROCEED..
015267,000419: 
015268,000420: 
015269,000421: 06,3105           05604                           TC       EJFREE                                
015270,000422: 

Page 357

015272,000424: 06,3106           00004        TR1                INHINT                                         #  PROCEED WITH THE FAIL.
015273,000425: 06,3107           37754                           CAF      BIT2                                  #  20MS.
015274,000426: 06,3110           05701                           TC       WAITLIST                              
015275,000427: 06,3111  E4,1407                                  EBANK=   JETSTEP                               
015276,000428: 06,3111           03052 14004                     2CADR    TRIMON1                               #  BYPASS THE RECHECK.
015277,000429: 
015278,000430: 06,3113           05604                           TC       EJFREE                                
015279,000431: 
015280,000432: 06,3114           01400        BITS9,10           OCT      01400                                 
015281,000433: 06,3115  06,3114               TRIMCODE           EQUALS   BITS9,10                              
015282,000434: 06,3115           07400        TRIMMASK           OCT      07400                                 
015283,000435: 06,3116           00125        V01N25K            OCT      00125                                 
015284,000436: 06,3117           05000        V50K               OCT      05000                                 
015285,000437: 

Page 358

015287,000439:                                                                                                  #  LEM FCS TEST  THROTTLE TASK
015288,000440:                                                                                                  #     THIS PROGRAM ISSUES A PROFILE OF THROTTLE COMMANDS TO THE LEM DESCENT ENGINE.  THE PROFILE IS DETERMINED BY
015289,000441:                                                                                                  #  THE VALUES IN THE THRTSTEP REGISTER AND THE 6  SETS OF REGISTERS, 5 PER SET, CALLED  DOTIMES, DELAY, THR1TIME,
015290,000442:                                                                                                  #  THCOMM1 AND THCOMM2.  THE THRTSTEP REGISTER VALUE IS USED TO INDEX THE  6  SETS OF 5 REGISTERS AND HAS ALLOWABLE
015291,000443:                                                                                                  #  VALUES OF +0 THROUGH +5.  THE 5 REGISTERS PER SET ARE DEFINED AS FOLLOWS
015292,000444:                                                                                                  #      (1) DOTIMES DETERMINES THE NUMBER OF TIMES THE THROTTLE WILL BE EXERCISED AS PER THE VALUES OF THR1TIME,
015293,000445:                                                                                                  #  THCOMM1 AND THCOMM2 OF THE CURRENT STEP.  IT HAS ALLOWABLE VALUES OF +0 THROUGH 37777 OCT.
015294,000446:                                                                                                  #      (2) DELAY DETERMINES THE TIME BETWEEN THE START OF A STEP AND THE BE GINNING OF THR1TIME. ITIS CALLED ONLY
015295,000447:                                                                                                  #  ONCE PER STEP,I.E., REPEATS OF THE SAME THCOMM1 AND THCOMM2 START AT THR1TIME.  DELAY MUST BE FORMATTED FOR T3
015296,000448:                                                                                                  #  AND HENCE HAS A MAXIMUM VALUE OF 2 MINUTES.
015297,000449:                                                                                                  #      (3) THR1TIME DETERMINES THE TIME BETWEEN THE END OF DELAY OR THE END   OF THCOMM2 AND THE START OF
015298,000450:                                                                                                  #  THCOMM1.  IT MUST BE FORMATTED FOR T3.
015299,000451:                                                                                                  #      (4) THCOMM1 AND (5) THCOMM2 DETERMINE THE NUMBER OF THRUST INCREASE  OR DECREASE PULSES TOBE ISSUED AT A
015300,000452:                                                                                                  #  3.2KPPS RATE.  THE RANGE OF POSSIBLE VALUES OF EITHER IS FROM POSMAX (OCT 37777) TO NEGMAX (OCT 40000) ALTHOUGH
015301,000453: 
015302,000454:                                                                                                  #  THE ACTUAL THROTTLE RANGE IS FROM OCT 6116 TO OCT 71661 (+,- 3150 DEC).
015303,000455:                                                                                                  #     THIS TASK WILL BE ENTERED BUT IMMEDIATELY ENDED IF THE INITIAL VALUES OF THRTSTEP AND DOTIMES ARE +0.
015304,000456: 
015305,000457: 
015306,000458: 
015307,000459: 06,3120           11605        NEXTTHRT           CCS      THRTSTEP                              
015308,000460: 06,3121           03123                           TC       +2                                    
015309,000461: 06,3122           05745                           TC       TASKOVER                              #  EXIT HERE.
015310,000462: 06,3123           55605                           TS       THRTSTEP                              
015311,000463: 
015312,000464: 06,3124           51605        THRSTART           NDX      THRTSTEP                              #  ENTER HERE.
015313,000465: 06,3125           11606                           CCS      DOTIMES                               #  NUMBER OF TIMES COMMANDS 1 AND 2 DONE.
015314,000466: 06,3126           03130                           TC       +2                                    
015315,000467: 06,3127           03120                           TC       NEXTTHRT                              
015316,000468: 06,3130           51605                           NDX      THRTSTEP                              
015317,000469: 06,3131           31614                           CAE      DELAY                                 #  TIME BETWEEN STEPS.  BIAS FOR THR1TIME.
015318,000470:                                                                                                  #  MUST BE SCALED FOR T3.
015319,000471: 06,3132           05701                           TC       WAITLIST                              
015320,000472: 06,3133  E4,1605                                  EBANK=   THRTSTEP                              
015321,000473: 06,3133           03156 14004                     2CADR    THROTON1                              
015322,000474: 
015323,000475: 06,3135           05745                           TC       TASKOVER                              
015324,000476: 
015325,000477: 06,3136           51605        THR2COMM           NDX      THRTSTEP                              
015326,000478: 06,3137           31636                           CAE      THCOMM2                               #  SAME REMARKS AS FOR THCOMM1.
015327,000479: 06,3140           03174                           TC       THROTON                               
015328,000480: 06,3141           67755                           AD       BIT1                                  #  10MS IN CASE OF NO THCOMM2.
015329,000481: 06,3142           05701                           TC       WAITLIST                              
015330,000482: 06,3143  E4,1605                                  EBANK=   THRTSTEP                              
015331,000483: 06,3143           03146 14004                     2CADR    CKDOTIME                              
015332,000484: 
015333,000485: 06,3145           05745                           TC       TASKOVER                              
015334,000486: 
015335,000487: 06,3146           51605        CKDOTIME           NDX      THRTSTEP                              
015336,000488: 06,3147           11606                           CCS      DOTIMES                               
015337,000489: 06,3150           10000                           CCS      A                                     

Page 359

015339,000491: 06,3151           03153                           TC       +2                                    
015340,000492: 06,3152           03120                           TC       NEXTTHRT                              #  WAS ONE.
015341,000493: 06,3153           67755                           AD       ONE                                   
015342,000494: 06,3154           51605                           NDX      THRTSTEP                              
015343,000495: 06,3155           55606                           TS       DOTIMES                               
015344,000496: 06,3156           51605        THROTON1           NDX      THRTSTEP                              
015345,000497: 06,3157           31622                           CAE      THR1TIME                              #  TIME BETWEEN DOTIMES.  SCALED FOR T3.
015346,000498: 06,3160           05701                           TC       WAITLIST                              
015347,000499: 06,3161  E4,1605                                  EBANK=   THRTSTEP                              
015348,000500: 06,3161           03164 14004                     2CADR    THR1COMM                              
015349,000501: 
015350,000502: 06,3163           05745                           TC       TASKOVER                              
015351,000503: 
015352,000504: 06,3164           51605        THR1COMM           NDX      THRTSTEP                              
015353,000505: 06,3165           31630                           CAE      THCOMM1                               #  SHOULD BE NO LARGER THAN 3150DEC.
015354,000506: 06,3166           03174                           TC       THROTON                               
015355,000507: 06,3167           63211                           AD       250MS                                 #  SO ACE CAN SAMPLE.
015356,000508: 06,3170           05701                           TC       WAITLIST                              
015357,000509: 06,3171  E4,1605                                  EBANK=   THRTSTEP                              
015358,000510: 
015359,000511: 06,3171           03136 14004                     2CADR    THR2COMM                              
015360,000512: 
015361,000513: 06,3173           05745                           TC       TASKOVER                              
015362,000514: 
015363,000515: 06,3174           54055        THROTON            TS       THRUST                                #  THROTTLE OUTPUT COUNTER.
015364,000516: 06,3175           55405                           TS       THBUF                                 #  SAVE FOR BZMF.
015365,000517: 06,3176           37752                           CAF      BIT4                                  
015366,000518: 06,3177           00006                           EXTEND                                         
015367,000519: 06,3200           05014                           WOR      14                                    #  ENABLE THRUST DRIVE.  COMMAND STARTS NOW
015368,000520: 06,3201           31405                           CAE      THBUF                                 
015369,000521: 06,3202           00006                           EXTEND                                         
015370,000522: 06,3203           63205                           BZMF     +2                                    
015371,000523: 06,3204           40000                           COM                                            
015372,000524: 06,3205           40000                           COM                                            
015373,000525: 06,3206           00006                           EXTEND                                         
015374,000526: 06,3207           77744                           MP       BIT10                                 #  SCALES FOR T3.
015375,000527: 06,3210           00002                           TC       Q                                     
015376,000528: 
015377,000529: 06,3211           00031        250MS              OCT      00031                                 
015378,000530: 

Page 360

015380,000532:                                                                                                  #  LEM FCS TEST  INTERFACE LOOK TASK.
015381,000533: 
015382,000534:                                                                                                  #      THIS PROGRAM KEEPS A RUNNING HISTORY OF THE STATE OF ALL THE BITS IN INPUT CHANNELS 30, 31, 32 AND 33.
015383,000535:                                                                                                  #  IT DOES THIS BY DETECTING A CHANGE OF AN INPUT BIT FROM AN INITIAL ONE STATE TO A ZERO STATE OR FROM AN INITIAL
015384,000536:                                                                                                  #  ZERO TO A ONE.  THE HISTORY IS MAINTAINED IN TWO BUFFER REGISTERS FOR EACH CHANNEL, ONE FOR STORING ONE TO ZERO
015385,000537:                                                                                                  #  CHANGES (30BUF1, +1, +2, AND +3) AND ONE FOR ZERO TO ONE CHANGES (30BUF0, +1 +2 AND +3).  THE OPERATOR MUST
015386,000538:                                                                                                  #  LOAD THE INITIAL STATES OF THE INPUT CHANNELS INTO THEIR RESPECTIVE BUFFER REGISTERS BEFORE THIS PROGRAM IS IN-
015387,000539:                                                                                                  #  ITIATED.
015388,000540:                                                                                                  #      TO ALLOW THIS PROGRAM TO RUN C(QUITLOOK) MUST BE SET GREATER THAN +0 BEFORE IT IS STARTED.  IF THE OPERATOR
015389,000541:                                                                                                  #  DOES NOT DESIRE THIS PROGRAM TO RUN HE SHOULD SET C(QUITLOOK)=+0 BEFORE STARTING THE FCS TEST.  AFTER THIS TASK
015390,000542:                                                                                                  #  IS RUNNING THE OPERATOR CAN STOP IT BY SETTING C(QUITLOOK) = +0.
015391,000543:                                                                                                  #      NO DISPLAYS OF EITHER THE BUFFER REGISTERS OR CHANNELS ARE INCORPORATED INTO THIS PROGRAM.  THIS WAS DONE TO
015392,000544:                                                                                                  #  ALLOW THE TEST OPERATOR MONITORING FLEXIBILITY.  FOR REAL TIME MONITORING IT IS SUGGESTED THAT THE BUFFER
015393,000545: 
015394,000546:                                                                                                  #  REGISTERS BE DISPLAYED WITH THE MONITOR VERBS (11 THROUGH 15).  ON THE OTHER HAND, THE OPERATOR MAY ELECT TO
015395,000547:                                                                                                  #  PERFORM NO REAL TIME MONITORING UNTIL THE TEST IS COMPLETED, WHEN THE BUFFER REGISTERS WOULD BE CALLED FOR
015396,000548:                                                                                                  #  DISPLAY (VERB 01) AND RECORDED.
015397,000549:                                                                                                  #      THIS PROGRAM IS PRIMARILY INTENDED FOR INTERFACE MONITORING DURING THE LEM VIBRATION TEST AT BETHPAGE, N.Y.,
015398,000550:                                                                                                  #  ALTHOUGH IT MAY ALSO BE USEFUL DURING VEHICAL LEVEL EMI TESTS.
015399,000551: 
015400,000552: 06,3212           11654        LOOKTOP            CCS      QUITLOOK                              #  IS THIS TASK WANTED.
015401,000553: 06,3213           03215                           TC       +2                                    #  YES.
015402,000554: 06,3214           05745                           TC       TASKOVER                              #  NO.
015403,000555: 06,3215           36301                           CAF      THREE                                 #  START SCAN OF CHANNELS.
015404,000556: 06,3216           55655        LOOKLOOP           TS       CHCNTR                                #  3, 2, 1, 0.
015405,000557: 06,3217           51655                           NDX      CHCNTR                                
015406,000558: 
015407,000559: 06,3220           31644                           CAE      30BUF1                                
015408,000560: 06,3221           00006                           EXTEND                                         
015409,000561: 06,3222           51655                           NDX      CHCNTR                                
015410,000562: 06,3223           02030                           RAND     30                                    #  DETECTS CHANGES FROM 1 TO 0.
015411,000563: 06,3224           51655                           NDX      CHCNTR                                
015412,000564: 06,3225           57644                           XCH      30BUF1                                #  STORE NEW ZEROS.
015413,000565: 06,3226           51655                           NDX      CHCNTR                                
015414,000566: 06,3227           31650                           CAE      30BUF0                                
015415,000567: 06,3230           00006                           EXTEND                                         
015416,000568: 06,3231           51655                           NDX      CHCNTR                                
015417,000569: 06,3232           04030                           ROR      30                                    #  DETECTS CHANGES FROM 0 TO 1.
015418,000570: 06,3233           51655                           NDX      CHCNTR                                
015419,000571: 06,3234           57650                           XCH      30BUF0                                #  STORE NEW ONES.
015420,000572: 06,3235           11655                           CCS      CHCNTR                                #  IS THIS SCAN DONE.
015421,000573: 06,3236           03216                           TC       LOOKLOOP                              #  NO.
015422,000574: 06,3237           34557                           CAF      TEN                                   #  YES.  100MS RECALL.
015423,000575: 06,3240           05701                           TC       WAITLIST                              
015424,000576: 06,3241  E4,1654                                  EBANK=   QUITLOOK                              
015425,000577: 06,3241           03212 14004                     2CADR    LOOKTOP                               
015426,000578: 
015427,000579: 06,3243           05745                           TC       TASKOVER                              
015428,000580: 

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