Source Code

These source-code files are part of a reconstructed copy of Luminary 173, the second (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance Computer (AGC) software.

The reconstruction began with reconstructed source code for Luminary 178. Changes between revision 173 and 178 were backed out, as described by Luminary memo 167 (revision 1). The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 173 listing would be different.

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

039206,000002:                                                                                                  ## Copyright:   Public domain.
039207,000003:                                                                                                  ## Filename:    FINDCDUW_-_GUIDAP_INTERFACE.agc
039208,000004:                                                                                                  ## Purpose:     A section of Luminary revision 173.
039209,000005:                                                                                                  ##              It is part of the reconstructed source code for the second
039210,000006:                                                                                                  ##              (unflown) release of the flight software for the Lunar
039211,000007:                                                                                                  ##              Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
039212,000008:                                                                                                  ##              The code has been recreated from a reconstructed copy of
039213,000009:                                                                                                  ##              Luminary 178, as well as Luminary memo 167 (revision 1).
039214,000010:                                                                                                  ##              It has been adapted such that the resulting bugger words
039215,000011:                                                                                                  ##              exactly match those specified for Luminary 173 in NASA
039216,000012:                                                                                                  ##              drawing 2021152N, which gives relatively high confidence
039217,000013:                                                                                                  ##              that the reconstruction is correct.
039218,000014:                                                                                                  ## Reference:   pp. 899-917
039219,000015:                                                                                                  ## Assembler:   yaYUL
039220,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
039221,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
039222,000018:                                                                                                  ## Mod history: 2019-09-18 MAS  Created from Luminary 178.
039223,000019: 

Page 899

039225,000021:                                                                                                  #  PROGRAM NAME:   FINDCDUW
039226,000022: 
039227,000023:                                                                                                  #  MOD NUMBER:     1         68 07 15
039228,000024: 
039229,000025:                                                                                                  #  MOD AUTHOR:     KLUMPP
039230,000026: 
039231,000027:                                                                                                  #  OBJECTS OF MOD: 1.        TO SUPPLY COMMANDED GIMBAL ANGLES FOR NOUN 22.
039232,000028:                                                                                                  #                  2.        TO MAINTAIN CORRECT AND CURRENT THRUST
039233,000029:                                                                                                  #                            DIRECTION DATA IN ALL MODES.  THIS IS DONE BY
039234,000030:                                                                                                  #                            FETCHING FOR THE THRUST DIRECTION FILTER THE
039235,000031:                                                                                                  #                            CDUD'S IN PNGCS-AUTO, THE CDU'S IN ALL OTHER
039236,000032:                                                                                                  #                            MODES.
039237,000033:                                                                                                  #                  3.        TO SUBSTITUTE A STOPRATE FOR THE NORMAL
039238,000034:                                                                                                  #                            AUTOPILOT COMMANDS WHENEVER
039239,000035:                                                                                                  #                            1) NOT IN PNGCS-AUTO, OR
039240,000036:                                                                                                  #                            2) ENGINE IS OFF.
039241,000037: 
039242,000038:                                                                                                  #  FUNCTIONAL DESCRIPTION:
039243,000039: 
039244,000040:                                                                                                  #  FINDCDUW PROVIDES THE INTERFACES BETWEEN THE VARIOUS POWERED FLITE GUIDANCE PROGRAMS
039245,000041:                                                                                                  #  AND THE DIGITAL AUTOPILOT.  THE INPUTS TO FINDCDUW ARE THE THRUST COMMAND VECTOR
039246,000042:                                                                                                  #  AND THE WINDOW COMMAND VECTOR, AND THE OUTPUTS ARE THE GIMBAL ANGLE
039247,000043:                                                                                                  #  INCREMENTS, THE COMMANDED ATTITUDE ANGLE RATES, AND THE COMMANDED
039248,000044:                                                                                                  #  ATTITUDE LAG ANGLES (WHICH ACCOUNT FOR THE ANGLES BY WHICH THE BODY WILL
039249,000045:                                                                                                  #  LAG BEHIND A RAMP COMMAND IN ATTITUDE ANGLE DUE TO THE FINITE ANGULAR
039250,000046:                                                                                                  #  ACCELERATIONS AVAILABLE).
039251,000047: 
039252,000048:                                                                                                  #  FINDCDUW ALINES THE ESTIMATED THRUST VECTOR FROM THE THRUST DIRECTION
039253,000049:                                                                                                  #  FILTER WITH THE THRUST COMMAND VECTOR, AND, WHEN  XOVINHIB  SET,
039254,000050:                                                                                                  #  ALINES THE +Z HALF OF THE LM ZX PLANE WITH THE WINDOW COMMAND VECTOR.
039255,000051: 

Page 900

039257,000053:                                                                                                  #  SPECIFICATIONS:
039258,000054: 
039259,000055:                                                                                                  #  INITIALIZATION: A SINGLE INTERPRETIVE CALL TO  INITCDUW  IS REQUIRED
039260,000056:                                                                                                  #                  BEFORE EACH GUIDED MANEUVER USING FINDCDUW.
039261,000057: 
039262,000058:                                                                                                  #  CALL:           INTERPRETIVE CALL TO FINDCDUW WITH THE THRUST COMMAND
039263,000059:                                                                                                  #                  VECTOR IN MPAC.  INTERPRETIVE CALL TO FINDCDUW -2 WITH
039264,000060:                                                                                                  #                  THE THRUST COMMAND VECTOR IN UNFC/2 AND NOT IN MPAC.
039265,000061: 
039266,000062:                                                                                                  #  RETURNS:        NORMAL INTERPRETIVE IN ALL CASES
039267,000063: 
039268,000064:                                                                                                  #                  1.       NORMALLY ALL AUTOPILOT CMDS ARE ISSUED.
039269,000065: 
039270,000066:                                                                                                  #                  2.       IF NOT PNGCS AUTO, DO STOPRATE AND RETURN
039271,000067:                                                                                                  #                           WITHOUT ISSUING AUTOPILOT CMDS.
039272,000068: 
039273,000069:                                                                                                  #                  3.       IF ENGINE OFF, DO STOPRATE AND RETURN WITHOUT
039274,000070:                                                                                                  #                           ISSUING AUTOPILOT CMDS.
039275,000071: 
039276,000072:                                                                                                  #  ALARMS:         00401 IF INPUTS DETERMINE AN ATTITUDE IN GIMBAL LOCK.
039277,000073:                                                                                                  #                           FINDCDUW DRIVES CDUXD AND CDUYD TO THE RQD VALUES,
039278,000074:                                                                                                  #                           BUT DRIVES CDUZD ONLY TO THE GIMBAL LOCK CONE.
039279,000075:                                                                                                  #                  00402 IF UNFC/2 OR UNWC/2 PRODUCE OVERFLOW WHEN
039280,000076:                                                                                                  #                           UNITIZED USING NORMUNIT.  FINDCDUW ISSUES
039281,000077:                                                                                                  #                           STOPRATE AS ONLY INPUT TO AUTOPILOT.
039282,000078: 
039283,000079:                                                                                                  #  INPUTS:         UNFC/2   THRUST COMMAND VECTOR, NEED NOT BE SEMI-UNIT.
039284,000080:                                                                                                  #                  UNWC/2   WINDOW COMMAND VECTOR, NEED NOT BE SEMI-UNIT.
039285,000081:                                                                                                  #                  OGABIAS  POSSIBLE BIAS FOR OUTER GIMBAL ANGLE (ZEROED IN INITCDUW), UNITS OF PI.
039286,000082:                                                                                                  #                  XOVINHIB FLAG DENOTING X AXIS OVERRIDE INHIBITED.
039287,000083:                                                                                                  #                  CSMDOCKD FLAG DENOTING CSM DOCKED.
039288,000084:                                                                                                  #                  STEERSW  FLAG DENOTING INSUFF THRUST FOR THRUST DIR FLTR.
039289,000085: 
039290,000086:                                                                                                  #  OUTPUTS:        DELCDUX,Y,Z
039291,000087:                                                                                                  #                  OMEGAPD,+1,+2
039292,000088:                                                                                                  #                  DELPEROR,+1,+2
039293,000089:                                                                                                  #                  CPHI,+1,+2 FOR NOUN22
039294,000090: 
039295,000091:                                                                                                  #  DEBRIS:         FINDCDUW DESTROYS SINCDUX,Y,Z AND COSCDUX,Y,Z BY
039296,000092:                                                                                                  #                  WRITING INTO THESE LOCATIONS THE SINES AND COSINES
039297,000093:                                                                                                  #                  OF THE CDUD'S IN PNGCS-AUTO, OF THE CDU'S OTHERWISE.
039298,000094: 

Page 901

039300,000096:                                                                                                  #  INITIALIZATION FOR FINDCDUW
039301,000097: 
039302,000098: 30,3063                                           BANK     30                                    
039303,000099: 30,2000                                           SETLOC   FCDUW                                 
039304,000100: 30,2000                                           BANK                                           
039305,000101: 
039306,000102: 30,3063  E6,1645                                  EBANK=   ECDUW                                 
039307,000103: 
039308,000104: 30,3063                                           COUNT*   $$/FCDUW                              
039309,000105: 
039310,000106: 30,3063           77331        INITCDUW           SSP      VLOAD                                 
039311,000107: 30,3064           03300                                    OGABIAS                               
039312,000108: 30,3065           00000                                    0                                     
039313,000109: 30,3066           06516                                    UNITX                                 
039314,000110: 30,3067           03267                           STORE    UNFV/2                                
039315,000111: 30,3070           03261                           STORE    UNWC/2                                
039316,000112: 30,3071           77616                           RVQ                                            
039317,000113: 
039318,000114:                                                                                                  #  FINDCDUW PRELIMINARIES
039319,000115: 
039320,000116: 30,3072           77775                           VLOAD                                          #  FINDCDUW -2: ENTRY WHEN UNFC/2 PRE-STORD
039321,000117: 30,3073           03253                                    UNFC/2                                #  INPUT VECTORS NEED NOT BE SEMI-UNIT
039322,000118: 30,3074           40200        FINDCDUW           BOV      SETPD                                 #  FINDCDUW: ENTRY WHEN UNFC/2 IN MPAC
039323,000119: 30,3075           61074                                    FINDCDUW                              #  INTERPRETER NOW INITIALIZED
039324,000120: 30,3076           00023                                    22                                    #  LOCS 0 THRU 21 FOR DIRECTION COSINE MAT
039325,000121: 30,3077           77420                           STQ      EXIT                                  
039326,000122: 30,3100           03246                                    QCDUWUSR                              #  SAVE RETURN ADDRESS
039327,000123: 
039328,000124:                                                                                                  #  MORE HAUSKEEPING
039329,000125: 
039330,000126: 30,3101           33744                           CA       ECDUWL                                
039331,000127: 30,3102           56003                           XCH      EBANK                                 #  SET EBANK
039332,000128: 30,3103           55645                           TS       ECDUWUSR                              #  SAVE USER'S EBANK
039333,000129: 
039334,000130: 30,3104           30111                           CA       DAPBOOLS                              
039335,000131: 30,3105           74737                           MASK     CSMDOCKD                              #  CSMDOCKD MUST NOT BE BIT15
039336,000132: 30,3106           10000                           CCS      A                                     
039337,000133: 30,3107           34753                           CA       ONE                                   #  INDEX IF CSM DOCKED
039338,000134: 30,3110           55647                           TS       NDXCDUW                               
039339,000135: 
039340,000136: 30,3111           34743                           CA       XOVINHIB                              #  XOVINHIB MUST NOT BE BIT15
039341,000137: 30,3112           55651                           TS       FLPAUTNO                              #  SET TO POS-NON-ZERO FLAG PNGCS AUTO NOT
039342,000138: 
039343,000139: 30,3113           70111                           MASK     DAPBOOLS                              
039344,000140: 30,3114           55650                           TS       FLAGOODW                              #  FLAGOODW = ANY PNZ NUMBER IF XOV INHIBTD
039345,000141: 

Page 902

039347,000143:                                                                                                  #  FETCH BASIC DATA
039348,000144: 
039349,000145: 30,3115           00004                           INHINT                                         #  RELINT AT PAUTNO (TC INTPRET)
039350,000146: 
039351,000147: 30,3116           30032                           CA       CDUX                                  #  FETCH CDUX,CDUY,CDUZ IN ALL CASES, BUT
039352,000148: 30,3117           54771                           TS       CDUSPOTX                              #       REPLACE BELOW IF PNGCS AUTO
039353,000149: 30,3120           30033                           CA       CDUY                                  
039354,000150: 30,3121           54765                           TS       CDUSPOTY                              
039355,000151: 30,3122           30034                           CA       CDUZ                                  
039356,000152: 30,3123           54767                           TS       CDUSPOTZ                              
039357,000153: 
039358,000154: 30,3124           34742                           CA       BIT10                                 #  PNGCS CONTROL BIT
039359,000155: 30,3125           00006                           EXTEND                                         
039360,000156: 30,3126           02030                           RAND     CHAN30                                
039361,000157: 30,3127           10000                           CCS      A                                     
039362,000158: 30,3130           13145                           TCF      PAUTNO                                #  NOT PNGCS (BITS INVERTED)
039363,000159: 
039364,000160: 30,3131           34736                           CA       BIT14                                 #  AUTO MODE BIT
039365,000161: 30,3132           00006                           EXTEND                                         
039366,000162: 30,3133           02031                           RAND     CHAN31                                
039367,000163: 30,3134           10000                           CCS      A                                     
039368,000164: 30,3135           13145                           TCF      PAUTNO                                #  NOT AUTO (BITS INVERTED)
039369,000165: 
039370,000166: 30,3136           55651                           TS       FLPAUTNO                              #  RESET FLAG PNGCS AUTO NOT
039371,000167: 
039372,000168: 30,3137           31634                           CA       CDUXD                                 #  PNGCS AUTO: FETCH CDUXD,CDUYD,CDUZD
039373,000169: 30,3140           54771                           TS       CDUSPOTX                              
039374,000170: 30,3141           31635                           CA       CDUYD                                 
039375,000171: 30,3142           54765                           TS       CDUSPOTY                              
039376,000172: 30,3143           31636                           CA       CDUZD                                 
039377,000173: 30,3144           54767                           TS       CDUSPOTZ                              
039378,000174: 

Page 903

039380,000176:                                                                                                  #  FETCH INPUTS
039381,000177: 
039382,000178: 30,3145           06042        PAUTNO             TC       INTPRET                               #  ENTERING THRUST CMD STILL IN MPAC
039383,000179: 30,3146           77634                           RTB                                            
039384,000180: 30,3147           21727                                    NORMUNIT                              
039385,000181: 30,3150           24001                           STOVL    UNX/2                                 #  SEMI-UNIT THRUST CMD AS INITIAL UNX/2
039386,000182: 30,3151           03261                                    UNWC/2                                
039387,000183: 30,3152           47034                           RTB      RTB                                   
039388,000184: 30,3153           21727                                    NORMUNIT                              
039389,000185: 30,3154           47622                                    QUICTRIG                              #  ALWAYS RQD TO OBTAIN TRIGS OF CDUD'S
039390,000186: 30,3155           24015                           STOVL    UNZ/2                                 #  SEMI-UNIT WINDOW CMD AS INITIAL UNZ/2
039391,000187: 30,3156           00325                                    DELV                                  
039392,000188: 30,3157           53404                           BOVB     UNIT                                  
039393,000189: 30,3160           61733                                    NOATTCNT                              #  AT LEAST ONE ENTERING CMD VCT ZERO
039394,000190: 30,3161           45000                           BOV      CALL                                  
039395,000191: 30,3162           61176                                    AFTRFLTR                              #  IF UNIT DELV OVERFLOWS, SKIP FILTER
039396,000192: 30,3163           47676                                    *SMNB*                                #  YIELDS UNIT(DELV) IN VEH COORDS FOR FLTR
039397,000193: 
039398,000194:                                                                                                  #  THRUST DIRECTION FILTER
039399,000195: 
039400,000196: 30,3164           77776                           EXIT                                           
039401,000197: 
039402,000198: 30,3165           31670                           CA       UNFVY/2                               #  FOR RESTARTS, UNFV/2 ALWAYS INTACT, MPAC
039403,000199: 30,3166           22157                           LXCH     MPAC       +3                         #       RENEWED AFTER RETURN FROM CALLER,
039404,000200: 30,3167           03466                           TC       FLTRSUB                               #       TWO FILTER UPDATES MAY BE DONE.
039405,000201: 30,3170           55670                           TS       UNFVY/2                               #  UNFV/2 NEED NOT BE EXACTLY SEMI-UNIT.
039406,000202: 
039407,000203: 30,3171           31672                           CA       UNFVZ/2                               
039408,000204: 30,3172           22161                           LXCH     MPAC       +5                         
039409,000205: 30,3173           03466                           TC       FLTRSUB                               
039410,000206: 30,3174           55672                           TS       UNFVZ/2                               
039411,000207: 
039412,000208: 30,3175           06042                           TC       INTPRET                               #  COMPLETES FILTER
039413,000209: 

Page 904

039415,000211:                                                                                                  #  FIND A SUITABLE WINDOW POINTING VECTOR
039416,000212: 
039417,000213: 30,3176           46135        AFTRFLTR           SLOAD    BHIZ                                  #  IF XOV NOT INHIBITED, GO FETCH ZNB
039418,000214: 30,3177           03251                                    FLAGOODW                              
039419,000215: 30,3200           61204                                    FETCHZNB                              
039420,000216: 30,3201           45175                           VLOAD    CALL                                  
039421,000217: 30,3202           00015                                    UNZ/2                                 
039422,000218: 30,3203           61506                                    UNWCTEST                              
039423,000219: 
039424,000220: 30,3204           77775        FETCHZNB           VLOAD                                          
039425,000221: 30,3205           02162                                    ZNBPIP                                
039426,000222: 30,3206           34015                           STCALL   UNZ/2                                 
039427,000223: 30,3207           61506                                    UNWCTEST                              
039428,000224: 
039429,000225: 30,3210           57575                           VLOAD    VCOMP                                 #  Z AND -X CAN'T BOTH PARALLEL UNFC/2
039430,000226: 30,3211           02146                                    XNBPIP                                
039431,000227: 30,3212           00015                           STORE    UNZ/2                                 
039432,000228: 
039433,000229:                                                                                                  #  COMPUTE THE REQUIRED DIRECTION COSINE MATRIX
039434,000230: 
039435,000231: 30,3213           47375        DCMCL              VLOAD    VXV                                   
039436,000232: 30,3214           00015                                    UNZ/2                                 
039437,000233: 30,3215           00001                                    UNX/2                                 
039438,000234: 30,3216           41456                           UNIT     PUSH                                  #  UNY/2 FIRST ITERATION
039439,000235: 30,3217           76435                           VXV      VSL1                                  
039440,000236: 30,3220           00001                                    UNX/2                                 
039441,000237: 30,3221           00015                           STORE    UNZ/2                                 #  -UNZ/2 FIRST ITERATION
039442,000238: 30,3222           63361                           VXSC     PDVL                                  #  EXCHANGE -UNFVZ/2 UNZ/2 FOR UNY/2
039443,000239: 30,3223           03273                                    UNFVZ/2                               #  MUST BE SMALL
039444,000240: 30,3224           51361                           VXSC     BVSU                                  #  YIELDS -UNFVY/2 UNY/2-UNFVZ/2 UNZ/2
039445,000241: 30,3225           03271                                    UNFVY/2                               #  MUST BE SMALL
039446,000242: 30,3226           53372                           VSL1     VAD                                   
039447,000243: 30,3227           00001                                    UNX/2                                 
039448,000244: 30,3230           77656                           UNIT                                           #  TOTALLY ELIMINATES THRUST POINTING ERROR
039449,000245: 30,3231           00001                           STORE    UNX/2                                 #  UNX/2
039450,000246: 30,3232           76435                           VXV      VSL1                                  
039451,000247: 30,3233           00015                                    UNZ/2                                 #  -UNZ/2 WAS STORED HERE REMEMBER
039452,000248: 30,3234           00007                           STORE    UNY/2                                 #  UNY/2
039453,000249: 30,3235           47276                           VCOMP    VXV                                   
039454,000250: 30,3236           00001                                    UNX/2                                 
039455,000251: 30,3237           77772                           VSL1                                           
039456,000252: 30,3240           00015                           STORE    UNZ/2                                 #  UNZ/2
039457,000253: 

Page 905

039459,000255:                                                                                                  #  COMPUTE THE REQUIRED GIMBAL ANGLES
039460,000256: 
039461,000257: 30,3241           77624                           CALL                                           
039462,000258: 30,3242           61516                                    NB2CDUSP                              #  YIELDS THE RQD GIMBAL ANGLES, 2'S, PI
039463,000259: 30,3243           77776                           EXIT                                           
039464,000260: 
039465,000261:                                                                                                  #  BIAS OUTER GIMBAL ANGLE
039466,000262: 
039467,000263: 30,3244           31677                           CA       OGABIAS                               
039468,000264: 30,3245           26154                           ADS      MPAC                                  
039469,000265: 
039470,000266:                                                                                                  #  LIMIT THE MIDDLE GIMBAL ANGLE & COMPUTE THE UNLIMITED GIMBAL ANGLE CHGS
039471,000267: 
039472,000268: 30,3246           30156                           CA       MPAC       +2                         #  LIMIT THE MGA
039473,000269: 30,3247           54001                           TS       L                                     #  CAN'T LXCH: NEED UNLIMITED MGA FOR ALARM
039474,000270: 30,3250           33756                           CA       CDUZDLIM                              
039475,000271: 30,3251           03712                           TC       LIMITSUB                              #  YIELDS LIMITED MGA. 1 BIT ERROR POSSIBLE
039476,000272: 30,3252           56156                           XCH      MPAC       +2                         #       BECAUSE USING 2'S COMP. WHO CARES?
039477,000273: 30,3253           00006                           EXTEND                                         
039478,000274: 30,3254           20156                           MSU      MPAC       +2                         #  THIS BETTER YIELD ZERO
039479,000275: 30,3255           00006                           EXTEND                                         
039480,000276: 30,3256           13260                           BZF      +2                                    
039481,000277: 30,3257           13741                           TCF      ALARMMGA                              
039482,000278: 
039483,000279: 30,3260           00004        MGARET             INHINT                                         #  RELINT AT TC INTPRET AFTER TCQCDUW
039484,000280: 
039485,000281: 30,3261           22007                           ZL                                             
039486,000282: 30,3262           34752                           CA       TWO                                   
039487,000283: 30,3263           54142        DELGMBLP           TS       TEM2                                  
039488,000284: 
039489,000285: 30,3264           30001                           CA       L                                     #  TO PREVENT FALSE STARTS ABOUT X, ZERO
039490,000286: 30,3265           00006                           EXTEND                                         #       FLAGOODW IF DELGMBZ OR Y TOO BIG.
039491,000287: 30,3266           70000                           SQUARE                                         
039492,000288: 30,3267           64350                           AD       HI5                                   #  WITHIN 1 BIT OF -(45 DEG SQUARED)
039493,000289: 30,3270           00006                           EXTEND                                         
039494,000290: 30,3271           63274                           BZMF     +3                                    
039495,000291: 30,3272           34755                           CA       ZERO                                  
039496,000292: 30,3273           55650                           TS       FLAGOODW                              
039497,000293: 
039498,000294: 30,3274           50142                           INDEX    TEM2                                  
039499,000295: 30,3275           30154                           CA       MPAC                                  
039500,000296: 30,3276           50142                           INDEX    TEM2                                  
039501,000297: 30,3277           54321                           TS       CPHI                                  #  OUTPUTS TO NOUN22
039502,000298: 30,3300           00006                           EXTEND                                         
039503,000299: 30,3301           50142                           INDEX    TEM2                                  
039504,000300: 30,3302           21634                           MSU      CDUXD                                 #  NO MATTER THAT THESE SLIGHTLY DIFFERENT
039505,000301: 30,3303           40000                           COM                                            #       FROM WHEN WE INITIALLY FETCHED THEM
039506,000302: 30,3304           50142                           INDEX    TEM2                                  
039507,000303: 30,3305           55674                           TS       -DELGMB                               #  -UNLIMITED GIMBAL ANGLE CHGS, 1'S, PI
039508,000304: 30,3306           54001                           TS       L                                     #  FOR PRECEDING TEST ON NEXT LOOP PASS

Page 906

039510,000306: 30,3307           10142                           CCS      TEM2                                  
039511,000307: 30,3310           13263                           TCF      DELGMBLP                              
039512,000308: 

Page 907

039514,000310:                                                                                                  #  BRANCHES TO NOATTCNT
039515,000311: 
039516,000312: 30,3311           11651                           CCS      FLPAUTNO                              
039517,000313: 30,3312           13735                           TCF      NOATTCNT   +2                         #  NOT PNGCS AUTO
039518,000314: 
039519,000315: 30,3313           30101                           CA       FLAGWRD5                              
039520,000316: 30,3314           74745                           MASK     ENGONBIT                              
039521,000317: 30,3315           00006                           EXTEND                                         
039522,000318: 30,3316           13735                           BZF      NOATTCNT   +2                         #  ENGINE NOT ON
039523,000319: 

Page 908

039525,000321:                                                                                                  #  LIMIT THE ATTITUDE ANGLE CHANGES
039526,000322: 
039527,000323:                                                                                                  #  THIS SECTION LIMITS THE ATTITUDE ANGLE CHANGES ABOUT A SET OF ORTHOGONAL VEHICLE AXES X,YPRIME,ZPRIME.
039528,000324:                                                                                                  #  THESE AXES COINCIDE WITH THE COMMANDED VEHICLE AXES IF AND ONLY IF CDUXD IS ZERO.  THE PRIME SYSTEM IS
039529,000325:                                                                                                  #  THE COMMANDED VEHICLE SYSTEM ROTATED ABOUT THE X AXIS TO BRING THE Z AXIS INTO ALINEMENT WITH THE MIDDLE GIMBAL
039530,000326:                                                                                                  #  AXIS.  ATTITUDE ANGLE CHANGES IN THE PRIME SYSTEM ARE RELATED TO SMALL GIMBAL ANGLE CHANGES BY:
039531,000327: 
039532,000328:                                                                                                  #  * -DELATTX      *   * 1  SIN(CDUZD)  0 * * -DELGMBX *
039533,000329:                                                                                                  #  *               *   *                  * *          *
039534,000330:                                                                                                  #  * -DELATTYPRIME * = * 0  COS(CDUZD)  0 * * -DELGMBY *
039535,000331:                                                                                                  #  *               *   *                  * *          *
039536,000332:                                                                                                  #  * -DELATTZPRIME *   * 0  0           1 * * -DELGMBZ *
039537,000333: 
039538,000334: 30,3317           23676                           LXCH     -DELGMB    +2                         #  SAME AS -DELATTZPRIME UNLIMITED
039539,000335: 30,3320           51647                           INDEX    NDXCDUW                               
039540,000336: 30,3321           33752                           CA       DAZMAX                                
039541,000337: 30,3322           03712                           TC       LIMITSUB                              
039542,000338: 30,3323           55676                           TS       -DELGMB    +2                         #  -DELGMBZ
039543,000339: 
039544,000340: 30,3324           31675                           CA       -DELGMB    +1                         
039545,000341: 30,3325           00006                           EXTEND                                         
039546,000342: 30,3326           70745                           MP       COSCDUZ                               #  YIELDS -DELATTYPRIME/2 UNLIMITED
039547,000343: 30,3327           54001                           TS       L                                     
039548,000344: 30,3330           51647                           INDEX    NDXCDUW                               
039549,000345: 30,3331           33754                           CA       DAY/2MAX                              
039550,000346: 30,3332           03712                           TC       LIMITSUB                              
039551,000347: 30,3333           00006                           EXTEND                                         
039552,000348: 30,3334           10745                           DV       COSCDUZ                               
039553,000349: 30,3335           57675                           XCH      -DELGMB    +1                         #  -DELGMBY, FETCHING UNLIMITED VALUE
039554,000350: 
039555,000351: 30,3336           00006                           EXTEND                                         
039556,000352: 30,3337           70737                           MP       SINCDUZ                               
039557,000353: 30,3340           20001                           DDOUBL                                         
039558,000354: 30,3341           40000                           COM                                            
039559,000355: 30,3342           00006                           EXTEND                                         #  YIELDS +DELATTX UNLIMITD, MAG < 180 DEG,
039560,000356: 30,3343           21674                           MSU      -DELGMB                               #       BASED ON UNLIMITED DELGMBY.
039561,000357: 30,3344           54001                           TS       L                                     #       ONE BIT ERROR IF OPERANDS IN MSU
039562,000358: 30,3345           51647                           INDEX    NDXCDUW                               #       OF MIXED SIGNS.  WHO CARES?
039563,000359: 30,3346           33752                           CA       DAXMAX                                
039564,000360: 30,3347           03712                           TC       LIMITSUB                              
039565,000361: 30,3350           55674                           TS       -DELGMB                               #  SAVE LIMITED +DELATTX
039566,000362: 30,3351           11650                           CCS      FLAGOODW                              
039567,000363: 30,3352           41674                           CS       -DELGMB                               #  FETCH IT BACK CHGING SIGN IF WINDOW GOOD
039568,000364: 30,3353           55674                           TS       -DELGMB                               #  OTHERWISE USE ZERO FOR -DELATTX
039569,000365: 30,3354           41675                           CS       -DELGMB    +1                         
039570,000366: 30,3355           00006                           EXTEND                                         
039571,000367: 30,3356           70737                           MP       SINCDUZ                               
039572,000368: 30,3357           20001                           DDOUBL                                         #  YIELDS -CNTRIB TO -DELATTX FROM -DELGMBY
039573,000369: 30,3360           27674                           ADS      -DELGMB                               #  -DELGMBX.  NO OVERFLOW SINCE LIMITED TO
039574,000370:                                                                                                  #  20DEG(1+SIN(70DEG)/COS(70DEG)) < 180DEG
039575,000371: 

Page 909

039577,000373:                                                                                                  #  COMPUTE COMMANDED ATTITUDE RATES
039578,000374: 
039579,000375:                                                                                                  #  * OMEGAPD *   * -2  -4 SINCDUZ          +0         * * -DELGMBX *
039580,000376:                                                                                                  #  *         *   *                                    * *          *
039581,000377:                                                                                                  #  * OMEGAQD * = * +0  -8 COSCDUZ COSCDUX  -4 SINCDUX * * -DELGMBY *
039582,000378:                                                                                                  #  *         *   *                                    * *          *
039583,000379:                                                                                                  #  * OMEGARD *   * +0  +8 COSCDUZ SINCDUX  -4 COSCDUX * * -DELGMBZ *
039584,000380: 
039585,000381:                                                                                                  #  ATTITUDE ANGLE RATES IN UNITS OF PI/4 RAD/SEC = K TRIG FCNS IN UNITS OF 2 X GIMBAL ANGLE RATES IN UNITS OF
039586,000382:                                                                                                  #  PI/2 RAD/SEC.  THE CONSTANTS ARE BASED ON DELGMB BEING THE GIMBAL ANGLE CHANGES IN UNITS OF PI RADIANS,
039587,000383:                                                                                                  #  AND 2 SECONDS BEING THE COMPUTATION PERIOD (THE PERIOD BETWEEN SUCCESSIVE PASSES THRU FINDCDUW).
039588,000384: 
039589,000385: 30,3361           41674                           CS       -DELGMB                               
039590,000386: 30,3362           55642                           TS       OMEGAPD                               
039591,000387: 30,3363           41675                           CS       -DELGMB    +1                         
039592,000388: 30,3364           00006                           EXTEND                                         
039593,000389: 30,3365           70737                           MP       SINCDUZ                               
039594,000390: 30,3366           20001                           DDOUBL                                         
039595,000391: 30,3367           27642                           ADS      OMEGAPD                               
039596,000392: 30,3370           27642                           ADS      OMEGAPD                               
039597,000393: 
039598,000394: 30,3371           41675                           CS       -DELGMB    +1                         
039599,000395: 30,3372           00006                           EXTEND                                         
039600,000396: 30,3373           70747                           MP       COSCDUX                               
039601,000397: 30,3374           20001                           DDOUBL                                         
039602,000398: 30,3375           00006                           EXTEND                                         
039603,000399: 30,3376           70745                           MP       COSCDUZ                               
039604,000400: 30,3377           55643                           TS       OMEGAQD                               
039605,000401: 30,3400           41676                           CS       -DELGMB    +2                         
039606,000402: 30,3401           00006                           EXTEND                                         
039607,000403: 30,3402           70741                           MP       SINCDUX                               
039608,000404: 30,3403           27643                           ADS      OMEGAQD                               
039609,000405: 30,3404           27643                           ADS      OMEGAQD                               
039610,000406: 30,3405           27643                           ADS      OMEGAQD                               
039611,000407: 
039612,000408: 30,3406           31675                           CA       -DELGMB    +1                         
039613,000409: 30,3407           00006                           EXTEND                                         
039614,000410: 30,3410           70741                           MP       SINCDUX                               
039615,000411: 30,3411           20001                           DDOUBL                                         
039616,000412: 30,3412           00006                           EXTEND                                         
039617,000413: 30,3413           70745                           MP       COSCDUZ                               
039618,000414: 30,3414           55644                           TS       OMEGARD                               
039619,000415: 30,3415           41676                           CS       -DELGMB    +2                         
039620,000416: 30,3416           00006                           EXTEND                                         
039621,000417: 30,3417           70747                           MP       COSCDUX                               
039622,000418: 30,3420           27644                           ADS      OMEGARD                               
039623,000419: 30,3421           27644                           ADS      OMEGARD                               
039624,000420: 30,3422           27644                           ADS      OMEGARD                               
039625,000421: 

Page 910

039627,000423:                                                                                                  #  FINAL TRANSFER
039628,000424: 
039629,000425: 30,3423           34752                           CA       TWO                                   
039630,000426: 30,3424           54142        CDUWXFR            TS       TEM2                                  
039631,000427: 30,3425           50142                           INDEX    TEM2                                  
039632,000428: 30,3426           31674                           CA       -DELGMB                               
039633,000429: 30,3427           00006                           EXTEND                                         
039634,000430: 30,3430           73757                           MP       DT/DELT                               #  RATIO OF DAP INTERVAL TO CDUW INTERVAL
039635,000431: 30,3431           03726                           TC       ONESTO2S                              
039636,000432: 30,3432           50142                           INDEX    TEM2                                  
039637,000433: 30,3433           55637                           TS       DELCDUX                               #  ANGLE INTERFACE
039638,000434: 
039639,000435: 30,3434           50142                           INDEX    TEM2                                  
039640,000436: 30,3435           11642                           CCS      OMEGAPD                               
039641,000437: 30,3436           64753                           AD       ONE                                   
039642,000438: 30,3437           13441                           TCF      +2                                    
039643,000439: 30,3440           64753                           AD       ONE                                   
039644,000440: 30,3441           00006                           EXTEND                                         #  WE NOW HAVE ABS(OMEGAPD,QD,RD)
039645,000441: 30,3442           50142                           INDEX    TEM2                                  
039646,000442: 30,3443           71642                           MP       OMEGAPD                               
039647,000443: 30,3444           00006                           EXTEND                                         
039648,000444: 30,3445           74741                           MP       BIT11                                 #  1/16
039649,000445: 30,3446           00006                           EXTEND                                         
039650,000446: 30,3447           50142                           INDEX    TEM2                                  #                    2
039651,000447: 30,3450           11530                           DV       1JACC                                 #  UNITS PI/4 RAD/SEC
039652,000448: 30,3451           54001                           TS       L                                     
039653,000449: 30,3452           33754                           CA       DELERLIM                              
039654,000450: 30,3453           03712                           TC       LIMITSUB                              
039655,000451: 30,3454           50142                           INDEX    TEM2                                  
039656,000452: 30,3455           55274                           TS       DELPEROR                              #  LAG ANGLE = OMEGA ABS(OMEGA)/2 ACCEL
039657,000453: 30,3456           10142                           CCS      TEM2                                  
039658,000454: 30,3457           13424                           TCF      CDUWXFR                               
039659,000455: 
039660,000456:                                                                                                  #  HAUSKEEPING AND RETURN
039661,000457: 
039662,000458: 30,3460           31645        TCQCDUW            CA       ECDUWUSR                              
039663,000459: 30,3461           54003                           TS       EBANK                                 #  RETURN USER'S EBANK
039664,000460: 
039665,000461: 30,3462           06042                           TC       INTPRET                               
039666,000462: 30,3463           52001                           SETPD    GOTO                                  
039667,000463: 30,3464           00001                                    0                                     
039668,000464: 30,3465           03246                                    QCDUWUSR                              #  NORMAL AND ABNORMAL RETURN TO USER
039669,000465: 

Page 911

039671,000467:                                                                                                  #  THRUST VECTOR FILTER SUBROUTINE
039672,000468: 
039673,000469: 30,3466           00006        FLTRSUB            EXTEND                                         
039674,000470: 30,3467           22142                           QXCH     TEM2                                  
039675,000471: 30,3470           54143                           TS       TEM3                                  #  SAVE ORIGINAL OFFSET
039676,000472: 30,3471           40000                           COM                                            #  ONE MCT, NO WDS, CAN BE SAVED IF NEG OF
039677,000473: 30,3472           60001                           AD       L                                     #       ORIG OFFSET ARRIVES IN A, BUT IT'S
039678,000474: 30,3473           00006                           EXTEND                                         #       NOT WORTH THE INCREASED OBSCURITY.
039679,000475: 30,3474           51647                           INDEX    NDXCDUW                               
039680,000476: 30,3475           73745                           MP       GAINFLTR                              
039681,000477: 30,3476           54001                           TS       L                                     #  INCR TO OFFSET, UNLIMITED
039682,000478: 30,3477           33747                           CA       DUNFVLIM                              #  SAME LIMIT FOR Y AND Z
039683,000479: 30,3500           03712                           TC       LIMITSUB                              #  YIELDS INCR TO OFFSET, LIMITED
039684,000480: 30,3501           60143                           AD       TEM3                                  #  ORIGINAL OFFSET
039685,000481: 30,3502           54001                           TS       L                                     #  TOTAL OFFSET, UNLIMITED
039686,000482: 30,3503           33750                           CA       UNFVLIM                               #  SAME LIMIT FOR Y AND Z
039687,000483: 30,3504           03712                           TC       LIMITSUB                              #  YIELDS TOTAL OFFSET, LIMITED
039688,000484: 30,3505           00142                           TC       TEM2                                  
039689,000485: 
039690,000486:                                                                                                  #  SUBR TO TEST THE ANGLE BETWEEN THE PROPOSED WINDOW AND THRUST CMD VCTS
039691,000487: 
039692,000488: 30,3506           63441        UNWCTEST           DOT      DSQ                                   
039693,000489: 30,3507           00001                                    UNX/2                                 
039694,000490: 30,3510           50025                           DSU      BMN                                   
039695,000491: 30,3511           21752                                    DOTSWFMX                              
039696,000492: 30,3512           61213                                    DCMCL                                 
039697,000493: 30,3513           43531                           SSP      RVQ                                   #  RVQ FOR ALT CHOICE IF DOT MAGN TOO LARGE
039698,000494: 30,3514           03251                                    FLAGOODW                              #       ZEROING WINDOW GOOD FLAG
039699,000495: 30,3515           00000                                    0                                     
039700,000496: 

Page 912

039702,000498:                                                                                                  #  NB2CDUSP RETURNS THE 2'S COMPLEMENT, PI, SP CDU ANGLES X,Y,Z IN MPAC,+1,+2 GIVEN THE MATRIX WHOSE ROW VECTORS
039703,000499:                                                                                                  #  ARE THE SEMI-UNIT NAV BASE VECTORS X,Y,Z EXPRESSED IN STABLE MEMBER COORDINATES, LOCATED AT 0 IN THE PUSH LIST.
039704,000500: 
039705,000501:                                                                                                  #  NB2CDUSP USES ARCTRGSP WHICH HAS A MAXIMUM ERROR OF +-4 BITS.
039706,000502: 
039707,000503: 30,3516           63545        NB2CDUSP           DLOAD    DSQ                                   
039708,000504: 30,3517           00003                                    2                                     
039709,000505: 30,3520           51021                           BDSU     BPL                                   
039710,000506: 30,3521           06510                                    DP1/4TH                               
039711,000507: 30,3522           61525                                    +3                                    
039712,000508: 30,3523           77745                           DLOAD                                          
039713,000509: 30,3524           06520                                    ZEROVECS                              #  IN CASE SIN WAS SLIGHTLY > 1/2
039714,000510: 30,3525           77566                           SQRT     EXIT                                  #  YIELDS COS(CDUZ) IN UNITS OF 2
039715,000511: 
039716,000512: 30,3526           00006                           EXTEND                                         
039717,000513: 30,3527           30155                           DCA      MPAC                                  
039718,000514: 30,3530           20001                           DDOUBL                                         
039719,000515: 30,3531           54145                           TS       TEM5                                  
039720,000516: 30,3532           13535                           TCF      +3                                    
039721,000517: 30,3533           34733                           CA       POSMAX                                #  OVERFLOW. FETCH POSMAX, MPAC ALWAYS POS
039722,000518: 30,3534           54145                           TS       TEM5                                  #  COS(CDUZ) IN TEM5, UNITS 1
039723,000519: 
039724,000520: 30,3535           50120                           INDEX    FIXLOC                                
039725,000521: 30,3536           30002                           CA       2                                     
039726,000522: 30,3537           22154                           LXCH     MPAC                                  
039727,000523: 30,3540           03605                           TC       ARCTRGSP                              
039728,000524: 30,3541           54156                           TS       MPAC       +2                         #  CDUZ
039729,000525: 
039730,000526: 30,3542           34755                           CA       ZERO                                  
039731,000527: 30,3543           03563                           TC       DVBYCOSM                              
039732,000528: 30,3544           34751                           CA       FOUR                                  
039733,000529: 30,3545           03563                           TC       DVBYCOSM                              
039734,000530: 30,3546           40141                           CS       TEM1                                  
039735,000531: 30,3547           03605                           TC       ARCTRGSP                              
039736,000532: 30,3550           54155                           TS       MPAC       +1                         #  CDUY
039737,000533: 
039738,000534: 30,3551           34750                           CA       BIT4                                  
039739,000535: 30,3552           03563                           TC       DVBYCOSM                              
039740,000536: 30,3553           33562                           CA       16OCT                                 
039741,000537: 30,3554           03563                           TC       DVBYCOSM                              
039742,000538: 30,3555           40141                           CS       TEM1                                  
039743,000539: 30,3556           03605                           TC       ARCTRGSP                              
039744,000540: 30,3557           54154                           TS       MPAC                                  #  CDUX
039745,000541: 
039746,000542: 30,3560           06042                           TC       INTPRET                               
039747,000543: 30,3561           77616                           RVQ                                            
039748,000544: 
039749,000545: 30,3562           00016        16OCT              OCT      16                                    
039750,000546: 

Page 913

039752,000548:                                                                                                  #  THE ELEMENTS OF THE NAV BASE MATRIX WHICH WE MUST DIVIDE BY COS(MGA)
039753,000549:                                                                                                  #  ALREADY CONTAIN COS(MGA)/2 AS A FACTOR.  THEREFORE THE QUOTIENT SHOULD
039754,000550:                                                                                                  #  ORDINARILY NEVER EXCEED 1/2 IN MAGNITUDE.  BUT IF THE MGA IS NEAR PI/2
039755,000551:                                                                                                  #  THEN COS(MGA) IS NEAR ZERO, AND THERE MAY BE SOME CHAFF IN THE OTHER
039756,000552:                                                                                                  #  ELEMENTS OF THE MATRIX WHICH WOULD PRODUCE CHAOS UNDER DIVISION.
039757,000553:                                                                                                  #  BEFORE DIVIDING WE MAKE SURE COS(MGA) IS AT LEAST ONE BIT LARGER
039758,000554:                                                                                                  #  THAN THE MAGNITUDE OF THE HIGH ORDER PART OF THE OPERAND.
039759,000555: 
039760,000556:                                                                                                  #  IF ONE OR MORE DIVIDES CANNOT BE PERFORMED, THIS MEANS THAT THE
039761,000557:                                                                                                  #  REQUIRED MGA IS VERY NEARLY +-PI/2 AND THEREFORE THE OTHER GIMBAL
039762,000558:                                                                                                  #  ANGLES ARE INDETERMINATE.  THE INNER AND OUTER GIMBAL ANGLES RETURNED
039763,000559:                                                                                                  #  IN THIS CASE WILL BE RANDOM MULTIPLES OF PI/2.
039764,000560: 
039765,000561: 30,3563           60120        DVBYCOSM           AD       FIXLOC                                
039766,000562: 30,3564           54116                           TS       ADDRWD                                #  ADRES OF OPERAND
039767,000563: 
039768,000564: 30,3565           50116                           INDEX    ADDRWD                                #  FETCH NEG ABS OF OPERAND, AD TEM5, AND
039769,000565: 30,3566           30000                           CA       0                                     #      SKIP DIVIDE IF RESULT NEG OR ZERO
039770,000566: 30,3567           00006                           EXTEND                                         
039771,000567: 30,3570           63572                           BZMF     +2                                    
039772,000568: 30,3571           40000                           COM                                            
039773,000569: 30,3572           60145                           AD       TEM5                                  #  C(A) ZERO OR NEG, C(TEM5) ZERO OR POS
039774,000570: 30,3573           00006                           EXTEND                                         
039775,000571: 30,3574           63602                           BZMF     TSL&TCQ                               #  DIFFERENCE ALWAYS SMALL IF BRANCH
039776,000572: 
039777,000573: 30,3575           00006                           EXTEND                                         #  TEM5 EXCEEDS ABS HIGH ORDER PART OF
039778,000574: 30,3576           50116                           INDEX    ADDRWD                                #       OPERAND BY AT LEAST ONE BIT.
039779,000575: 30,3577           30001                           DCA      0                                     #       THEREFORE IT EXCEEDS THE DP OPERAND
039780,000576: 30,3600           00006                           EXTEND                                         #       AND DIVISION WILL ALWAYS SUCCEED.
039781,000577: 30,3601           10145                           DV       TEM5                                  
039782,000578: 30,3602           54001        TSL&TCQ            TS       L                                     
039783,000579: 30,3603           22141                           LXCH     TEM1                                  
039784,000580: 30,3604           00002                           TC       Q                                     
039785,000581: 

Page 914

039787,000583:                                                                                                  #  ARCTRGSP RETURNS THE 2'S COMPLEMENT, PI, SP ANGLE IN THE A REGISTER GIVEN ITS SINE IN A AND ITS COSINE IN L IN
039788,000584:                                                                                                  #  UNITS OF 2.  THE RESULT IS AN UNAMBIGUOUS ANGLE ANYWHERE IN THE CIRCLE, WITH A MAXIMUM ERROR OF +-4 BITS.
039789,000585:                                                                                                  #  THE ERROR IS PRODUCED BY THE SUBROUTINE SPARCSIN WHICH IS USED ONLY IN THE REGION +-45 DEGREES.
039790,000586: 
039791,000587: 30,3605           00006        ARCTRGSP           EXTEND                                         
039792,000588: 30,3606           13650                           BZF      SINZERO                               #  TO AVOID DIVIDING BY ZERO
039793,000589: 
039794,000590: 30,3607           00006                           EXTEND                                         
039795,000591: 30,3610           22144                           QXCH     TEM4                                  
039796,000592: 30,3611           54142                           TS       TEM2                                  
039797,000593: 30,3612           30001                           CA       L                                     
039798,000594: 30,3613           54143                           TS       TEM3                                  
039799,000595: 30,3614           34755                           CA       ZERO                                  
039800,000596: 30,3615           00006                           EXTEND                                         
039801,000597: 30,3616           10142                           DV       TEM2                                  
039802,000598: 30,3617           00006                           EXTEND                                         
039803,000599: 30,3620           13637                           BZF      USECOS                                
039804,000600: 
039805,000601: 30,3621           10143                           CCS      TEM3                                  #  SIN IS SMALLER OR EQUAL
039806,000602: 30,3622           34755                           CA       ZERO                                  
039807,000603: 30,3623           13627                           TCF      +4                                    
039808,000604: 30,3624           40142                           CS       TEM2                                  #  IF COS NEG, REVERSE SIGN OF SIN,
039809,000605: 30,3625           54142                           TS       TEM2                                  #       ANGLE = PI-ARCSIN(SIN)
039810,000606: 30,3626           34735                           CA       NEGMAX                                #  PICK UP PI, 2'S COMPLEMENT
039811,000607: 30,3627           54143                           TS       TEM3                                  #  WE NO LONGER NEED COS
039812,000608: 30,3630           30142                           CA       TEM2                                  
039813,000609: 30,3631           03655                           TC       SPARCSIN   -1                         
039814,000610: 30,3632           03726                           TC       ONESTO2S                              
039815,000611: 30,3633           00006                           EXTEND                                         
039816,000612: 30,3634           20143                           MSU      TEM3                                  
039817,000613: 30,3635           03726        1TO2&TCQ           TC       ONESTO2S                              
039818,000614: 30,3636           00144                           TC       TEM4                                  
039819,000615: 
039820,000616: 30,3637           40143        USECOS             CS       TEM3                                  #  COS IS SMALLER
039821,000617: 30,3640           03655                           TC       SPARCSIN   -1                         #  ANGLE = SIGN(SIN)(PI/2-ARCSIN(COS))
039822,000618: 30,3641           64736                           AD       HALF                                  
039823,000619: 30,3642           54143                           TS       TEM3                                  #  WE NO LONGER NEED COS
039824,000620: 30,3643           10142                           CCS      TEM2                                  
039825,000621: 30,3644           30143                           CA       TEM3                                  
039826,000622: 30,3645           13635                           TCF      1TO2&TCQ                              
039827,000623: 30,3646           40143                           CS       TEM3                                  
039828,000624: 30,3647           13635                           TCF      1TO2&TCQ                              
039829,000625: 
039830,000626: 30,3650           10001        SINZERO            CCS      L                                     
039831,000627: 30,3651           34755                           CA       ZERO                                  
039832,000628: 30,3652           00002                           TC       Q                                     
039833,000629: 30,3653           34735                           CA       NEGMAX                                #  PI, 2'S COMP
039834,000630: 30,3654           00002                           TC       Q                                     
039835,000631: 

Page 915

039837,000633:                                                                                                  #  SPARCSIN TAKES AN ARGUMENT SCALED UNITY IN A AND RETURNS AN ANGLE SCALED
039838,000634:                                                                                                  #  180 DEGREES IN A.  IT HAS BEEN UNIT TESTED IN THE REGION +-.94 (+- 70
039839,000635:                                                                                                  #  DEGREES) AND THE MAXIMUM ERROR IS +-5 BITS WITH AN AVERAGE TIME OF
039840,000636:                                                                                                  #  450 MICROSECONDS.  SPARCSIN -1 TAKES THE ARGUMENT SCALED TWO.(BOB CRISP)
039841,000637: 
039842,000638: 30,3655           60000                           DOUBLE                                         
039843,000639: 30,3656           54021        SPARCSIN           TS       SR                                    
039844,000640: 30,3657           13663                           TCF      +4                                    
039845,000641: 30,3660           50000                           INDEX    A                                     
039846,000642: 30,3661           44734                           CS       LIMITS                                
039847,000643: 30,3662           54021                           TS       SR                                    
039848,000644: 30,3663           00006                           EXTEND                                         
039849,000645: 30,3664           70000                           MP       A                                     
039850,000646: 30,3665           54141                           TS       TEM1                                  
039851,000647: 30,3666           00006                           EXTEND                                         
039852,000648: 30,3667           73711                           MP       DPL9                                  
039853,000649: 30,3670           63710                           AD       DPL7                                  
039854,000650: 30,3671           00006                           EXTEND                                         
039855,000651: 30,3672           70141                           MP       TEM1                                  
039856,000652: 30,3673           63707                           AD       DPL5                                  
039857,000653: 30,3674           00006                           EXTEND                                         
039858,000654: 30,3675           70141                           MP       TEM1                                  
039859,000655: 30,3676           63706                           AD       DPL3                                  
039860,000656: 30,3677           00006                           EXTEND                                         
039861,000657: 30,3700           70141                           MP       TEM1                                  
039862,000658: 30,3701           63705                           AD       DPL1                                  
039863,000659: 30,3702           00006                           EXTEND                                         
039864,000660: 30,3703           70021                           MP       SR                                    
039865,000661: 30,3704           00002                           TC       Q                                     
039866,000662: 30,3705           24406        DPL1               DEC      10502      B-14                       
039867,000663: 30,3706           00660        DPL3               DEC      432        B-14                       
039868,000664: 30,3707           16204        DPL5               DEC      7300       B-14                       
039869,000665: 30,3710           50744        DPL7               DEC      -11803     B-14                       
039870,000666: 30,3711           20315        DPL9               DEC      8397       B-14                       
039871,000667: 

Page 916

039873,000669:                                                                                                  #  LIMITSUB LIMITS THE MAGNITUDE OF THE POSITIVE OR NEGATIVE VARIABLE
039874,000670:                                                                                                  #  ARRIVING IN L TO THE POSITIVE LIMIT ARRIVING IN A.
039875,000671:                                                                                                  #  THE SIGNED LIMITED VARIABLE IS RETURNED IN A.
039876,000672: 
039877,000673:                                                                                                  #  VERSION COURTESY HUGH BLAIR-SMITH
039878,000674: 
039879,000675: 30,3712           54141        LIMITSUB           TS       TEM1                                  
039880,000676: 30,3713           34755                           CA       ZERO                                  
039881,000677: 30,3714           00006                           EXTEND                                         
039882,000678: 30,3715           10141                           DV       TEM1                                  
039883,000679: 30,3716           10000                           CCS      A                                     
039884,000680: 30,3717           22141                           LXCH     TEM1                                  
039885,000681: 30,3720           13722                           TCF      +2                                    
039886,000682: 30,3721           13724                           TCF      +3                                    
039887,000683: 30,3722           30001                           CA       L                                     
039888,000684: 30,3723           00002                           TC       Q                                     
039889,000685: 30,3724           40141                           CS       TEM1                                  
039890,000686: 30,3725           00002                           TC       Q                                     
039891,000687: 
039892,000688:                                                                                                  #  SUBROUTINE TO CONVERT 1'S COMP SP TO 2'S COMP
039893,000689: 
039894,000690: 30,3726           10000        ONESTO2S           CCS      A                                     
039895,000691: 30,3727           64753                           AD       ONE                                   
039896,000692: 30,3730           00002                           TC       Q                                     
039897,000693: 30,3731           40000                           CS       A                                     
039898,000694: 30,3732           00002                           TC       Q                                     
039899,000695: 
039900,000696:                                                                                                  #  NO ATTITUDE CONTROL
039901,000697: 
039902,000698: 30,3733           05600        NOATTCNT           TC       ALARM                                 
039903,000699: 30,3734           00402                           OCT      00402                                 #  NO ATTITUDE CONTROL
039904,000700: 
039905,000701: 30,3735           00004                 +2        INHINT                                         #  COME HERE FOR NOATTCNT WITHOUT ALARM
039906,000702: 30,3736           04674                           TC       IBNKCALL                              #  RELINT AT TC INTPRET AFTER TCQCDUW
039907,000703: 30,3737           40166                           FCADR    STOPRATE                              
039908,000704: 30,3740           13460                           TCF      TCQCDUW                               #  RETURN TO USER SKIPPING AUTOPILOT CMDS
039909,000705: 
039910,000706:                                                                                                  #  MIDDLE GIMBAL ANGLE ALARM
039911,000707: 
039912,000708: 30,3741           05600        ALARMMGA           TC       ALARM                                 
039913,000709: 30,3742           00401                           OCT      00401                                 
039914,000710: 30,3743           13260                           TCF      MGARET                                
039915,000711: 

Page 917

039917,000713:                                                                                                  #  ************************************************************************
039918,000714:                                                                                                  #  CONSTANTS
039919,000715:                                                                                                  #  ************************************************************************
039920,000716: 
039921,000717:                                                                                                  #  ADDRESS CONSTANTS
039922,000718: 
039923,000719: 30,3744           03245        ECDUWL             ECADR    ECDUW                                 
039924,000720: 
039925,000721:                                                                                                  #  THRUST DIRECTION FILTER CONSTANTS
039926,000722: 
039927,000723: 30,3745           06315        GAINFLTR           DEC      .2                                    #  GAIN FILTER SANS CSM
039928,000724: 30,3746           03146                           DEC      .1                                    #  GAIN FILTER WITH CSM
039929,000725: 
039930,000726: 30,3747           00071        DUNFVLIM           DEC      .007       B-1                        #  7 MR MAX CHG IN F DIR IN VEH IN 2 SECS.
039931,000727:                                                                                                  #  THIS DOES NOT ALLOW FOR S/C ROT RATE.
039932,000728: 
039933,000729: 30,3750           02041        UNFVLIM            DEC      .129       B-1                        #  129 MR MAX THRUST OFFSET. 105 MR TRAVEL
039934,000730:                                                                                                  #  +10MR DEFL+5MR MECH MOUNT+9MR ABLATION.
039935,000731: 
039936,000732:                                                                                                  #  CONSTANTS RELATED TO GIMBAL ANGLE COMPUTATIONS
039937,000733: 
039938,000734: 30,3751           01673        DOTSWFMX           DEC      .93302     B-4                        #  LIM COLNRTY OF UNWC/2 & UNFC/2 TO 85 DEG
039939,000735:                                                                                                  #  LOWER PART COMES FROM NEXT CONSTANT
039940,000736: 
039941,000737: 30,3752           03434        DAXMAX             DEC      .11111111111                            #  DELATTX LIM TO 20 DEG IN 2 SECS, 1'S, PI
039942,000738: 30,3753           00266                           DEC      .0111111111                            #  2 DEG WHEN CSM DOCKED
039943,000739: 
039944,000740: 30,3754           01616        DAY/2MAX           DEC      .05555555555                            #  LIKEWISE FOR DELATTY
039945,000741: 30,3755           00133                           DEC      .0055555555                            
039946,000742: 
039947,000743: 30,3756  30,3752               DAZMAX             =        DAXMAX                                #  LIKEWISE FOR DELATTZ
039948,000744: 
039949,000745: 30,3756           14344        CDUZDLIM           DEC      .3888888888                            #  70 DEG LIMIT FOR MGA, 1'S, PI
039950,000746: 
039951,000747:                                                                                                  #  CONSTANTS FOR DATA TRANSFER
039952,000748: 
039953,000749: 30,3757           01463        DT/DELT            DEC      .05                                   #  .1 SEC/2 SEC WHICH IS THE AUTOPILOT
039954,000750:                                                                                                  #  CONTROL SAMPLE PERIOD/COMPUTATION PERIOD
039955,000751: 
039956,000752: 30,3760  30,3754               DELERLIM           =        DAY/2MAX                              #  10 DEG LIMIT FOR LAG ANGLES, 1'S, PI
039957,000753: 

End of include-file FINDCDUW_-_GUIDAP_INTERFACE.agc.  Parent file is MAIN.agc