Source Code
These source-code files are part of a reconstructed copy of Luminary 163, the
first (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with reconstructed source code for Luminary 173. Changes between revision 163 and 173 were backed out, as described by Luminary memos 157 and 158. 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 163 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. |
039138,000002: ## Copyright: Public domain.
039139,000003: ## Filename: FINDCDUW_-_GUIDAP_INTERFACE.agc
039140,000004: ## Purpose: A section of Luminary revision 163.
039141,000005: ## It is part of the reconstructed source code for the first
039142,000006: ## (unflown) release of the flight software for the Lunar
039143,000007: ## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
039144,000008: ## The code has been recreated from a reconstructed copy of
039145,000009: ## Luminary 173, as well as Luminary memos 157 amd 158.
039146,000010: ## It has been adapted such that the resulting bugger words
039147,000011: ## exactly match those specified for Luminary 163 in NASA
039148,000012: ## drawing 2021152N, which gives relatively high confidence
039149,000013: ## that the reconstruction is correct.
039150,000014: ## Reference: pp. 899-917
039151,000015: ## Assembler: yaYUL
039152,000016: ## Contact: Ron Burkey <info@sandroid.org>.
039153,000017: ## Website: www.ibiblio.org/apollo/index.html
039154,000018: ## Mod history: 2019-08-21 MAS Created from Luminary 173.
039155,000019:
Page 899 |
039157,000021: # PROGRAM NAME: FINDCDUW
039158,000022:
039159,000023: # MOD NUMBER: 1 68 07 15
039160,000024:
039161,000025: # MOD AUTHOR: KLUMPP
039162,000026:
039163,000027: # OBJECTS OF MOD: 1. TO SUPPLY COMMANDED GIMBAL ANGLES FOR NOUN 22.
039164,000028: # 2. TO MAINTAIN CORRECT AND CURRENT THRUST
039165,000029: # DIRECTION DATA IN ALL MODES. THIS IS DONE BY
039166,000030: # FETCHING FOR THE THRUST DIRECTION FILTER THE
039167,000031: # CDUD'S IN PNGCS-AUTO, THE CDU'S IN ALL OTHER
039168,000032: # MODES.
039169,000033: # 3. TO SUBSTITUTE A STOPRATE FOR THE NORMAL
039170,000034: # AUTOPILOT COMMANDS WHENEVER
039171,000035: # 1) NOT IN PNGCS-AUTO, OR
039172,000036: # 2) ENGINE IS OFF.
039173,000037:
039174,000038: # FUNCTIONAL DESCRIPTION:
039175,000039:
039176,000040: # FINDCDUW PROVIDES THE INTERFACES BETWEEN THE VARIOUS POWERED FLITE GUIDANCE PROGRAMS
039177,000041: # AND THE DIGITAL AUTOPILOT. THE INPUTS TO FINDCDUW ARE THE THRUST COMMAND VECTOR
039178,000042: # AND THE WINDOW COMMAND VECTOR, AND THE OUTPUTS ARE THE GIMBAL ANGLE
039179,000043: # INCREMENTS, THE COMMANDED ATTITUDE ANGLE RATES, AND THE COMMANDED
039180,000044: # ATTITUDE LAG ANGLES (WHICH ACCOUNT FOR THE ANGLES BY WHICH THE BODY WILL
039181,000045: # LAG BEHIND A RAMP COMMAND IN ATTITUDE ANGLE DUE TO THE FINITE ANGULAR
039182,000046: # ACCELERATIONS AVAILABLE).
039183,000047:
039184,000048: # FINDCDUW ALINES THE ESTIMATED THRUST VECTOR FROM THE THRUST DIRECTION
039185,000049: # FILTER WITH THE THRUST COMMAND VECTOR, AND, WHEN XOVINHIB SET,
039186,000050: # ALINES THE +Z HALF OF THE LM ZX PLANE WITH THE WINDOW COMMAND VECTOR.
039187,000051:
Page 900 |
039189,000053: # SPECIFICATIONS:
039190,000054:
039191,000055: # INITIALIZATION: A SINGLE INTERPRETIVE CALL TO INITCDUW IS REQUIRED
039192,000056: # BEFORE EACH GUIDED MANEUVER USING FINDCDUW.
039193,000057:
039194,000058: # CALL: INTERPRETIVE CALL TO FINDCDUW WITH THE THRUST COMMAND
039195,000059: # VECTOR IN MPAC. INTERPRETIVE CALL TO FINDCDUW -2 WITH
039196,000060: # THE THRUST COMMAND VECTOR IN UNFC/2 AND NOT IN MPAC.
039197,000061:
039198,000062: # RETURNS: NORMAL INTERPRETIVE IN ALL CASES
039199,000063:
039200,000064: # 1. NORMALLY ALL AUTOPILOT CMDS ARE ISSUED.
039201,000065:
039202,000066: # 2. IF NOT PNGCS AUTO, DO STOPRATE AND RETURN
039203,000067: # WITHOUT ISSUING AUTOPILOT CMDS.
039204,000068:
039205,000069: # 3. IF ENGINE OFF, DO STOPRATE AND RETURN WITHOUT
039206,000070: # ISSUING AUTOPILOT CMDS.
039207,000071:
039208,000072: # ALARMS: 00401 IF INPUTS DETERMINE AN ATTITUDE IN GIMBAL LOCK.
039209,000073: # FINDCDUW DRIVES CDUXD AND CDUYD TO THE RQD VALUES,
039210,000074: # BUT DRIVES CDUZD ONLY TO THE GIMBAL LOCK CONE.
039211,000075: # 00402 IF UNFC/2 OR UNWC/2 PRODUCE OVERFLOW WHEN
039212,000076: # UNITIZED USING NORMUNIT. FINDCDUW ISSUES
039213,000077: # STOPRATE AS ONLY INPUT TO AUTOPILOT.
039214,000078:
039215,000079: # INPUTS: UNFC/2 THRUST COMMAND VECTOR, NEED NOT BE SEMI-UNIT.
039216,000080: # UNWC/2 WINDOW COMMAND VECTOR, NEED NOT BE SEMI-UNIT.
039217,000081: # OGABIAS POSSIBLE BIAS FOR OUTER GIMBAL ANGLE (ZEROED IN INITCDUW), UNITS OF PI.
039218,000082: # XOVINHIB FLAG DENOTING X AXIS OVERRIDE INHIBITED.
039219,000083: # CSMDOCKD FLAG DENOTING CSM DOCKED.
039220,000084: # STEERSW FLAG DENOTING INSUFF THRUST FOR THRUST DIR FLTR.
039221,000085:
039222,000086: # OUTPUTS: DELCDUX,Y,Z
039223,000087: # OMEGAPD,+1,+2
039224,000088: # DELPEROR,+1,+2
039225,000089: # CPHI,+1,+2 FOR NOUN22
039226,000090:
039227,000091: # DEBRIS: FINDCDUW DESTROYS SINCDUX,Y,Z AND COSCDUX,Y,Z BY
039228,000092: # WRITING INTO THESE LOCATIONS THE SINES AND COSINES
039229,000093: # OF THE CDUD'S IN PNGCS-AUTO, OF THE CDU'S OTHERWISE.
039230,000094:
Page 901 |
039232,000096: # INITIALIZATION FOR FINDCDUW
039233,000097:
039234,000098: 30,3063 BANK 30
039235,000099: 30,2000 SETLOC FCDUW
039236,000100: 30,2000 BANK
039237,000101:
039238,000102: 30,3063 E6,1645 EBANK= ECDUW
039239,000103:
039240,000104: 30,3063 COUNT* $$/FCDUW
039241,000105:
039242,000106: 30,3063 77331 INITCDUW SSP VLOAD
039243,000107: 30,3064 03300 OGABIAS
039244,000108: 30,3065 00000 0
039245,000109: 30,3066 06516 UNITX
039246,000110: 30,3067 03267 STORE UNFV/2
039247,000111: 30,3070 03261 STORE UNWC/2
039248,000112: 30,3071 77616 RVQ
039249,000113:
039250,000114: # FINDCDUW PRELIMINARIES
039251,000115:
039252,000116: 30,3072 77775 VLOAD # FINDCDUW -2: ENTRY WHEN UNFC/2 PRE-STORD
039253,000117: 30,3073 03253 UNFC/2 # INPUT VECTORS NEED NOT BE SEMI-UNIT
039254,000118: 30,3074 40200 FINDCDUW BOV SETPD # FINDCDUW: ENTRY WHEN UNFC/2 IN MPAC
039255,000119: 30,3075 61074 FINDCDUW # INTERPRETER NOW INITIALIZED
039256,000120: 30,3076 00023 22 # LOCS 0 THRU 21 FOR DIRECTION COSINE MAT
039257,000121: 30,3077 77420 STQ EXIT
039258,000122: 30,3100 03246 QCDUWUSR # SAVE RETURN ADDRESS
039259,000123:
039260,000124: # MORE HAUSKEEPING
039261,000125:
039262,000126: 30,3101 33744 CA ECDUWL
039263,000127: 30,3102 56003 XCH EBANK # SET EBANK
039264,000128: 30,3103 55645 TS ECDUWUSR # SAVE USER'S EBANK
039265,000129:
039266,000130: 30,3104 30111 CA DAPBOOLS
039267,000131: 30,3105 74737 MASK CSMDOCKD # CSMDOCKD MUST NOT BE BIT15
039268,000132: 30,3106 10000 CCS A
039269,000133: 30,3107 34753 CA ONE # INDEX IF CSM DOCKED
039270,000134: 30,3110 55647 TS NDXCDUW
039271,000135:
039272,000136: 30,3111 34743 CA XOVINHIB # XOVINHIB MUST NOT BE BIT15
039273,000137: 30,3112 55651 TS FLPAUTNO # SET TO POS-NON-ZERO FLAG PNGCS AUTO NOT
039274,000138:
039275,000139: 30,3113 70111 MASK DAPBOOLS
039276,000140: 30,3114 55650 TS FLAGOODW # FLAGOODW = ANY PNZ NUMBER IF XOV INHIBTD
039277,000141:
Page 902 |
039279,000143: # FETCH BASIC DATA
039280,000144:
039281,000145: 30,3115 00004 INHINT # RELINT AT PAUTNO (TC INTPRET)
039282,000146:
039283,000147: 30,3116 30032 CA CDUX # FETCH CDUX,CDUY,CDUZ IN ALL CASES, BUT
039284,000148: 30,3117 54771 TS CDUSPOTX # REPLACE BELOW IF PNGCS AUTO
039285,000149: 30,3120 30033 CA CDUY
039286,000150: 30,3121 54765 TS CDUSPOTY
039287,000151: 30,3122 30034 CA CDUZ
039288,000152: 30,3123 54767 TS CDUSPOTZ
039289,000153:
039290,000154: 30,3124 34742 CA BIT10 # PNGCS CONTROL BIT
039291,000155: 30,3125 00006 EXTEND
039292,000156: 30,3126 02030 RAND CHAN30
039293,000157: 30,3127 10000 CCS A
039294,000158: 30,3130 13145 TCF PAUTNO # NOT PNGCS (BITS INVERTED)
039295,000159:
039296,000160: 30,3131 34736 CA BIT14 # AUTO MODE BIT
039297,000161: 30,3132 00006 EXTEND
039298,000162: 30,3133 02031 RAND CHAN31
039299,000163: 30,3134 10000 CCS A
039300,000164: 30,3135 13145 TCF PAUTNO # NOT AUTO (BITS INVERTED)
039301,000165:
039302,000166: 30,3136 55651 TS FLPAUTNO # RESET FLAG PNGCS AUTO NOT
039303,000167:
039304,000168: 30,3137 31634 CA CDUXD # PNGCS AUTO: FETCH CDUXD,CDUYD,CDUZD
039305,000169: 30,3140 54771 TS CDUSPOTX
039306,000170: 30,3141 31635 CA CDUYD
039307,000171: 30,3142 54765 TS CDUSPOTY
039308,000172: 30,3143 31636 CA CDUZD
039309,000173: 30,3144 54767 TS CDUSPOTZ
039310,000174:
Page 903 |
039312,000176: # FETCH INPUTS
039313,000177:
039314,000178: 30,3145 06042 PAUTNO TC INTPRET # ENTERING THRUST CMD STILL IN MPAC
039315,000179: 30,3146 77634 RTB
039316,000180: 30,3147 21727 NORMUNIT
039317,000181: 30,3150 24001 STOVL UNX/2 # SEMI-UNIT THRUST CMD AS INITIAL UNX/2
039318,000182: 30,3151 03261 UNWC/2
039319,000183: 30,3152 47034 RTB RTB
039320,000184: 30,3153 21727 NORMUNIT
039321,000185: 30,3154 47622 QUICTRIG # ALWAYS RQD TO OBTAIN TRIGS OF CDUD'S
039322,000186: 30,3155 24015 STOVL UNZ/2 # SEMI-UNIT WINDOW CMD AS INITIAL UNZ/2
039323,000187: 30,3156 00325 DELV
039324,000188: 30,3157 53404 BOVB UNIT
039325,000189: 30,3160 61733 NOATTCNT # AT LEAST ONE ENTERING CMD VCT ZERO
039326,000190: 30,3161 45000 BOV CALL
039327,000191: 30,3162 61176 AFTRFLTR # IF UNIT DELV OVERFLOWS, SKIP FILTER
039328,000192: 30,3163 47676 *SMNB* # YIELDS UNIT(DELV) IN VEH COORDS FOR FLTR
039329,000193:
039330,000194: # THRUST DIRECTION FILTER
039331,000195:
039332,000196: 30,3164 77776 EXIT
039333,000197:
039334,000198: 30,3165 31670 CA UNFVY/2 # FOR RESTARTS, UNFV/2 ALWAYS INTACT, MPAC
039335,000199: 30,3166 22157 LXCH MPAC +3 # RENEWED AFTER RETURN FROM CALLER,
039336,000200: 30,3167 03466 TC FLTRSUB # TWO FILTER UPDATES MAY BE DONE.
039337,000201: 30,3170 55670 TS UNFVY/2 # UNFV/2 NEED NOT BE EXACTLY SEMI-UNIT.
039338,000202:
039339,000203: 30,3171 31672 CA UNFVZ/2
039340,000204: 30,3172 22161 LXCH MPAC +5
039341,000205: 30,3173 03466 TC FLTRSUB
039342,000206: 30,3174 55672 TS UNFVZ/2
039343,000207:
039344,000208: 30,3175 06042 TC INTPRET # COMPLETES FILTER
039345,000209:
Page 904 |
039347,000211: # FIND A SUITABLE WINDOW POINTING VECTOR
039348,000212:
039349,000213: 30,3176 46135 AFTRFLTR SLOAD BHIZ # IF XOV NOT INHIBITED, GO FETCH ZNB
039350,000214: 30,3177 03251 FLAGOODW
039351,000215: 30,3200 61204 FETCHZNB
039352,000216: 30,3201 45175 VLOAD CALL
039353,000217: 30,3202 00015 UNZ/2
039354,000218: 30,3203 61506 UNWCTEST
039355,000219:
039356,000220: 30,3204 77775 FETCHZNB VLOAD
039357,000221: 30,3205 02162 ZNBPIP
039358,000222: 30,3206 34015 STCALL UNZ/2
039359,000223: 30,3207 61506 UNWCTEST
039360,000224:
039361,000225: 30,3210 57575 VLOAD VCOMP # Z AND -X CAN'T BOTH PARALLEL UNFC/2
039362,000226: 30,3211 02146 XNBPIP
039363,000227: 30,3212 00015 STORE UNZ/2
039364,000228:
039365,000229: # COMPUTE THE REQUIRED DIRECTION COSINE MATRIX
039366,000230:
039367,000231: 30,3213 47375 DCMCL VLOAD VXV
039368,000232: 30,3214 00015 UNZ/2
039369,000233: 30,3215 00001 UNX/2
039370,000234: 30,3216 41456 UNIT PUSH # UNY/2 FIRST ITERATION
039371,000235: 30,3217 76435 VXV VSL1
039372,000236: 30,3220 00001 UNX/2
039373,000237: 30,3221 00015 STORE UNZ/2 # -UNZ/2 FIRST ITERATION
039374,000238: 30,3222 63361 VXSC PDVL # EXCHANGE -UNFVZ/2 UNZ/2 FOR UNY/2
039375,000239: 30,3223 03273 UNFVZ/2 # MUST BE SMALL
039376,000240: 30,3224 51361 VXSC BVSU # YIELDS -UNFVY/2 UNY/2-UNFVZ/2 UNZ/2
039377,000241: 30,3225 03271 UNFVY/2 # MUST BE SMALL
039378,000242: 30,3226 53372 VSL1 VAD
039379,000243: 30,3227 00001 UNX/2
039380,000244: 30,3230 77656 UNIT # TOTALLY ELIMINATES THRUST POINTING ERROR
039381,000245: 30,3231 00001 STORE UNX/2 # UNX/2
039382,000246: 30,3232 76435 VXV VSL1
039383,000247: 30,3233 00015 UNZ/2 # -UNZ/2 WAS STORED HERE REMEMBER
039384,000248: 30,3234 00007 STORE UNY/2 # UNY/2
039385,000249: 30,3235 47276 VCOMP VXV
039386,000250: 30,3236 00001 UNX/2
039387,000251: 30,3237 77772 VSL1
039388,000252: 30,3240 00015 STORE UNZ/2 # UNZ/2
039389,000253:
Page 905 |
039391,000255: # COMPUTE THE REQUIRED GIMBAL ANGLES
039392,000256:
039393,000257: 30,3241 77624 CALL
039394,000258: 30,3242 61516 NB2CDUSP # YIELDS THE RQD GIMBAL ANGLES, 2'S, PI
039395,000259: 30,3243 77776 EXIT
039396,000260:
039397,000261: # BIAS OUTER GIMBAL ANGLE
039398,000262:
039399,000263: 30,3244 31677 CA OGABIAS
039400,000264: 30,3245 26154 ADS MPAC
039401,000265:
039402,000266: # LIMIT THE MIDDLE GIMBAL ANGLE & COMPUTE THE UNLIMITED GIMBAL ANGLE CHGS
039403,000267:
039404,000268: 30,3246 30156 CA MPAC +2 # LIMIT THE MGA
039405,000269: 30,3247 54001 TS L # CAN'T LXCH: NEED UNLIMITED MGA FOR ALARM
039406,000270: 30,3250 33756 CA CDUZDLIM
039407,000271: 30,3251 03712 TC LIMITSUB # YIELDS LIMITED MGA. 1 BIT ERROR POSSIBLE
039408,000272: 30,3252 56156 XCH MPAC +2 # BECAUSE USING 2'S COMP. WHO CARES?
039409,000273: 30,3253 00006 EXTEND
039410,000274: 30,3254 20156 MSU MPAC +2 # THIS BETTER YIELD ZERO
039411,000275: 30,3255 00006 EXTEND
039412,000276: 30,3256 13260 BZF +2
039413,000277: 30,3257 13741 TCF ALARMMGA
039414,000278:
039415,000279: 30,3260 00004 MGARET INHINT # RELINT AT TC INTPRET AFTER TCQCDUW
039416,000280:
039417,000281: 30,3261 22007 ZL
039418,000282: 30,3262 34752 CA TWO
039419,000283: 30,3263 54142 DELGMBLP TS TEM2
039420,000284:
039421,000285: 30,3264 30001 CA L # TO PREVENT FALSE STARTS ABOUT X, ZERO
039422,000286: 30,3265 00006 EXTEND # FLAGOODW IF DELGMBZ OR Y TOO BIG.
039423,000287: 30,3266 70000 SQUARE
039424,000288: 30,3267 64350 AD HI5 # WITHIN 1 BIT OF -(45 DEG SQUARED)
039425,000289: 30,3270 00006 EXTEND
039426,000290: 30,3271 63274 BZMF +3
039427,000291: 30,3272 34755 CA ZERO
039428,000292: 30,3273 55650 TS FLAGOODW
039429,000293:
039430,000294: 30,3274 50142 INDEX TEM2
039431,000295: 30,3275 30154 CA MPAC
039432,000296: 30,3276 50142 INDEX TEM2
039433,000297: 30,3277 54321 TS CPHI # OUTPUTS TO NOUN22
039434,000298: 30,3300 00006 EXTEND
039435,000299: 30,3301 50142 INDEX TEM2
039436,000300: 30,3302 21634 MSU CDUXD # NO MATTER THAT THESE SLIGHTLY DIFFERENT
039437,000301: 30,3303 40000 COM # FROM WHEN WE INITIALLY FETCHED THEM
039438,000302: 30,3304 50142 INDEX TEM2
039439,000303: 30,3305 55674 TS -DELGMB # -UNLIMITED GIMBAL ANGLE CHGS, 1'S, PI
039440,000304: 30,3306 54001 TS L # FOR PRECEDING TEST ON NEXT LOOP PASS
Page 906 |
039442,000306: 30,3307 10142 CCS TEM2
039443,000307: 30,3310 13263 TCF DELGMBLP
039444,000308:
Page 907 |
039446,000310: # BRANCHES TO NOATTCNT
039447,000311:
039448,000312: 30,3311 11651 CCS FLPAUTNO
039449,000313: 30,3312 13735 TCF NOATTCNT +2 # NOT PNGCS AUTO
039450,000314:
039451,000315: 30,3313 30101 CA FLAGWRD5
039452,000316: 30,3314 74745 MASK ENGONBIT
039453,000317: 30,3315 00006 EXTEND
039454,000318: 30,3316 13735 BZF NOATTCNT +2 # ENGINE NOT ON
039455,000319:
Page 908 |
039457,000321: # LIMIT THE ATTITUDE ANGLE CHANGES
039458,000322:
039459,000323: # THIS SECTION LIMITS THE ATTITUDE ANGLE CHANGES ABOUT A SET OF ORTHOGONAL VEHICLE AXES X,YPRIME,ZPRIME.
039460,000324: # THESE AXES COINCIDE WITH THE COMMANDED VEHICLE AXES IF AND ONLY IF CDUXD IS ZERO. THE PRIME SYSTEM IS
039461,000325: # THE COMMANDED VEHICLE SYSTEM ROTATED ABOUT THE X AXIS TO BRING THE Z AXIS INTO ALINEMENT WITH THE MIDDLE GIMBAL
039462,000326: # AXIS. ATTITUDE ANGLE CHANGES IN THE PRIME SYSTEM ARE RELATED TO SMALL GIMBAL ANGLE CHANGES BY:
039463,000327:
039464,000328: # * -DELATTX * * 1 SIN(CDUZD) 0 * * -DELGMBX *
039465,000329: # * * * * * *
039466,000330: # * -DELATTYPRIME * = * 0 COS(CDUZD) 0 * * -DELGMBY *
039467,000331: # * * * * * *
039468,000332: # * -DELATTZPRIME * * 0 0 1 * * -DELGMBZ *
039469,000333:
039470,000334: 30,3317 23676 LXCH -DELGMB +2 # SAME AS -DELATTZPRIME UNLIMITED
039471,000335: 30,3320 51647 INDEX NDXCDUW
039472,000336: 30,3321 33752 CA DAZMAX
039473,000337: 30,3322 03712 TC LIMITSUB
039474,000338: 30,3323 55676 TS -DELGMB +2 # -DELGMBZ
039475,000339:
039476,000340: 30,3324 31675 CA -DELGMB +1
039477,000341: 30,3325 00006 EXTEND
039478,000342: 30,3326 70745 MP COSCDUZ # YIELDS -DELATTYPRIME/2 UNLIMITED
039479,000343: 30,3327 54001 TS L
039480,000344: 30,3330 51647 INDEX NDXCDUW
039481,000345: 30,3331 33754 CA DAY/2MAX
039482,000346: 30,3332 03712 TC LIMITSUB
039483,000347: 30,3333 00006 EXTEND
039484,000348: 30,3334 10745 DV COSCDUZ
039485,000349: 30,3335 57675 XCH -DELGMB +1 # -DELGMBY, FETCHING UNLIMITED VALUE
039486,000350:
039487,000351: 30,3336 00006 EXTEND
039488,000352: 30,3337 70737 MP SINCDUZ
039489,000353: 30,3340 20001 DDOUBL
039490,000354: 30,3341 40000 COM
039491,000355: 30,3342 00006 EXTEND # YIELDS +DELATTX UNLIMITD, MAG < 180 DEG,
039492,000356: 30,3343 21674 MSU -DELGMB # BASED ON UNLIMITED DELGMBY.
039493,000357: 30,3344 54001 TS L # ONE BIT ERROR IF OPERANDS IN MSU
039494,000358: 30,3345 51647 INDEX NDXCDUW # OF MIXED SIGNS. WHO CARES?
039495,000359: 30,3346 33752 CA DAXMAX
039496,000360: 30,3347 03712 TC LIMITSUB
039497,000361: 30,3350 55674 TS -DELGMB # SAVE LIMITED +DELATTX
039498,000362: 30,3351 11650 CCS FLAGOODW
039499,000363: 30,3352 41674 CS -DELGMB # FETCH IT BACK CHGING SIGN IF WINDOW GOOD
039500,000364: 30,3353 55674 TS -DELGMB # OTHERWISE USE ZERO FOR -DELATTX
039501,000365: 30,3354 41675 CS -DELGMB +1
039502,000366: 30,3355 00006 EXTEND
039503,000367: 30,3356 70737 MP SINCDUZ
039504,000368: 30,3357 20001 DDOUBL # YIELDS -CNTRIB TO -DELATTX FROM -DELGMBY
039505,000369: 30,3360 27674 ADS -DELGMB # -DELGMBX. NO OVERFLOW SINCE LIMITED TO
039506,000370: # 20DEG(1+SIN(70DEG)/COS(70DEG)) < 180DEG
039507,000371:
Page 909 |
039509,000373: # COMPUTE COMMANDED ATTITUDE RATES
039510,000374:
039511,000375: # * OMEGAPD * * -2 -4 SINCDUZ +0 * * -DELGMBX *
039512,000376: # * * * * * *
039513,000377: # * OMEGAQD * = * +0 -8 COSCDUZ COSCDUX -4 SINCDUX * * -DELGMBY *
039514,000378: # * * * * * *
039515,000379: # * OMEGARD * * +0 +8 COSCDUZ SINCDUX -4 COSCDUX * * -DELGMBZ *
039516,000380:
039517,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
039518,000382: # PI/2 RAD/SEC. THE CONSTANTS ARE BASED ON DELGMB BEING THE GIMBAL ANGLE CHANGES IN UNITS OF PI RADIANS,
039519,000383: # AND 2 SECONDS BEING THE COMPUTATION PERIOD (THE PERIOD BETWEEN SUCCESSIVE PASSES THRU FINDCDUW).
039520,000384:
039521,000385: 30,3361 41674 CS -DELGMB
039522,000386: 30,3362 55642 TS OMEGAPD
039523,000387: 30,3363 41675 CS -DELGMB +1
039524,000388: 30,3364 00006 EXTEND
039525,000389: 30,3365 70737 MP SINCDUZ
039526,000390: 30,3366 20001 DDOUBL
039527,000391: 30,3367 27642 ADS OMEGAPD
039528,000392: 30,3370 27642 ADS OMEGAPD
039529,000393:
039530,000394: 30,3371 41675 CS -DELGMB +1
039531,000395: 30,3372 00006 EXTEND
039532,000396: 30,3373 70747 MP COSCDUX
039533,000397: 30,3374 20001 DDOUBL
039534,000398: 30,3375 00006 EXTEND
039535,000399: 30,3376 70745 MP COSCDUZ
039536,000400: 30,3377 55643 TS OMEGAQD
039537,000401: 30,3400 41676 CS -DELGMB +2
039538,000402: 30,3401 00006 EXTEND
039539,000403: 30,3402 70741 MP SINCDUX
039540,000404: 30,3403 27643 ADS OMEGAQD
039541,000405: 30,3404 27643 ADS OMEGAQD
039542,000406: 30,3405 27643 ADS OMEGAQD
039543,000407:
039544,000408: 30,3406 31675 CA -DELGMB +1
039545,000409: 30,3407 00006 EXTEND
039546,000410: 30,3410 70741 MP SINCDUX
039547,000411: 30,3411 20001 DDOUBL
039548,000412: 30,3412 00006 EXTEND
039549,000413: 30,3413 70745 MP COSCDUZ
039550,000414: 30,3414 55644 TS OMEGARD
039551,000415: 30,3415 41676 CS -DELGMB +2
039552,000416: 30,3416 00006 EXTEND
039553,000417: 30,3417 70747 MP COSCDUX
039554,000418: 30,3420 27644 ADS OMEGARD
039555,000419: 30,3421 27644 ADS OMEGARD
039556,000420: 30,3422 27644 ADS OMEGARD
039557,000421:
Page 910 |
039559,000423: # FINAL TRANSFER
039560,000424:
039561,000425: 30,3423 34752 CA TWO
039562,000426: 30,3424 54142 CDUWXFR TS TEM2
039563,000427: 30,3425 50142 INDEX TEM2
039564,000428: 30,3426 31674 CA -DELGMB
039565,000429: 30,3427 00006 EXTEND
039566,000430: 30,3430 73757 MP DT/DELT # RATIO OF DAP INTERVAL TO CDUW INTERVAL
039567,000431: 30,3431 03726 TC ONESTO2S
039568,000432: 30,3432 50142 INDEX TEM2
039569,000433: 30,3433 55637 TS DELCDUX # ANGLE INTERFACE
039570,000434:
039571,000435: 30,3434 50142 INDEX TEM2
039572,000436: 30,3435 11642 CCS OMEGAPD
039573,000437: 30,3436 64753 AD ONE
039574,000438: 30,3437 13441 TCF +2
039575,000439: 30,3440 64753 AD ONE
039576,000440: 30,3441 00006 EXTEND # WE NOW HAVE ABS(OMEGAPD,QD,RD)
039577,000441: 30,3442 50142 INDEX TEM2
039578,000442: 30,3443 71642 MP OMEGAPD
039579,000443: 30,3444 00006 EXTEND
039580,000444: 30,3445 74741 MP BIT11 # 1/16
039581,000445: 30,3446 00006 EXTEND
039582,000446: 30,3447 50142 INDEX TEM2 # 2
039583,000447: 30,3450 11530 DV 1JACC # UNITS PI/4 RAD/SEC
039584,000448: 30,3451 54001 TS L
039585,000449: 30,3452 33754 CA DELERLIM
039586,000450: 30,3453 03712 TC LIMITSUB
039587,000451: 30,3454 50142 INDEX TEM2
039588,000452: 30,3455 55274 TS DELPEROR # LAG ANGLE = OMEGA ABS(OMEGA)/2 ACCEL
039589,000453: 30,3456 10142 CCS TEM2
039590,000454: 30,3457 13424 TCF CDUWXFR
039591,000455:
039592,000456: # HAUSKEEPING AND RETURN
039593,000457:
039594,000458: 30,3460 31645 TCQCDUW CA ECDUWUSR
039595,000459: 30,3461 54003 TS EBANK # RETURN USER'S EBANK
039596,000460:
039597,000461: 30,3462 06042 TC INTPRET
039598,000462: 30,3463 52001 SETPD GOTO
039599,000463: 30,3464 00001 0
039600,000464: 30,3465 03246 QCDUWUSR # NORMAL AND ABNORMAL RETURN TO USER
039601,000465:
Page 911 |
039603,000467: # THRUST VECTOR FILTER SUBROUTINE
039604,000468:
039605,000469: 30,3466 00006 FLTRSUB EXTEND
039606,000470: 30,3467 22142 QXCH TEM2
039607,000471: 30,3470 54143 TS TEM3 # SAVE ORIGINAL OFFSET
039608,000472: 30,3471 40000 COM # ONE MCT, NO WDS, CAN BE SAVED IF NEG OF
039609,000473: 30,3472 60001 AD L # ORIG OFFSET ARRIVES IN A, BUT IT'S
039610,000474: 30,3473 00006 EXTEND # NOT WORTH THE INCREASED OBSCURITY.
039611,000475: 30,3474 51647 INDEX NDXCDUW
039612,000476: 30,3475 73745 MP GAINFLTR
039613,000477: 30,3476 54001 TS L # INCR TO OFFSET, UNLIMITED
039614,000478: 30,3477 33747 CA DUNFVLIM # SAME LIMIT FOR Y AND Z
039615,000479: 30,3500 03712 TC LIMITSUB # YIELDS INCR TO OFFSET, LIMITED
039616,000480: 30,3501 60143 AD TEM3 # ORIGINAL OFFSET
039617,000481: 30,3502 54001 TS L # TOTAL OFFSET, UNLIMITED
039618,000482: 30,3503 33750 CA UNFVLIM # SAME LIMIT FOR Y AND Z
039619,000483: 30,3504 03712 TC LIMITSUB # YIELDS TOTAL OFFSET, LIMITED
039620,000484: 30,3505 00142 TC TEM2
039621,000485:
039622,000486: # SUBR TO TEST THE ANGLE BETWEEN THE PROPOSED WINDOW AND THRUST CMD VCTS
039623,000487:
039624,000488: 30,3506 63441 UNWCTEST DOT DSQ
039625,000489: 30,3507 00001 UNX/2
039626,000490: 30,3510 50025 DSU BMN
039627,000491: 30,3511 21752 DOTSWFMX
039628,000492: 30,3512 61213 DCMCL
039629,000493: 30,3513 43531 SSP RVQ # RVQ FOR ALT CHOICE IF DOT MAGN TOO LARGE
039630,000494: 30,3514 03251 FLAGOODW # ZEROING WINDOW GOOD FLAG
039631,000495: 30,3515 00000 0
039632,000496:
Page 912 |
039634,000498: # NB2CDUSP RETURNS THE 2'S COMPLEMENT, PI, SP CDU ANGLES X,Y,Z IN MPAC,+1,+2 GIVEN THE MATRIX WHOSE ROW VECTORS
039635,000499: # ARE THE SEMI-UNIT NAV BASE VECTORS X,Y,Z EXPRESSED IN STABLE MEMBER COORDINATES, LOCATED AT 0 IN THE PUSH LIST.
039636,000500:
039637,000501: # NB2CDUSP USES ARCTRGSP WHICH HAS A MAXIMUM ERROR OF +-4 BITS.
039638,000502:
039639,000503: 30,3516 63545 NB2CDUSP DLOAD DSQ
039640,000504: 30,3517 00003 2
039641,000505: 30,3520 51021 BDSU BPL
039642,000506: 30,3521 06510 DP1/4TH
039643,000507: 30,3522 61525 +3
039644,000508: 30,3523 77745 DLOAD
039645,000509: 30,3524 06520 ZEROVECS # IN CASE SIN WAS SLIGHTLY > 1/2
039646,000510: 30,3525 77566 SQRT EXIT # YIELDS COS(CDUZ) IN UNITS OF 2
039647,000511:
039648,000512: 30,3526 00006 EXTEND
039649,000513: 30,3527 30155 DCA MPAC
039650,000514: 30,3530 20001 DDOUBL
039651,000515: 30,3531 54145 TS TEM5
039652,000516: 30,3532 13535 TCF +3
039653,000517: 30,3533 34733 CA POSMAX # OVERFLOW. FETCH POSMAX, MPAC ALWAYS POS
039654,000518: 30,3534 54145 TS TEM5 # COS(CDUZ) IN TEM5, UNITS 1
039655,000519:
039656,000520: 30,3535 50120 INDEX FIXLOC
039657,000521: 30,3536 30002 CA 2
039658,000522: 30,3537 22154 LXCH MPAC
039659,000523: 30,3540 03605 TC ARCTRGSP
039660,000524: 30,3541 54156 TS MPAC +2 # CDUZ
039661,000525:
039662,000526: 30,3542 34755 CA ZERO
039663,000527: 30,3543 03563 TC DVBYCOSM
039664,000528: 30,3544 34751 CA FOUR
039665,000529: 30,3545 03563 TC DVBYCOSM
039666,000530: 30,3546 40141 CS TEM1
039667,000531: 30,3547 03605 TC ARCTRGSP
039668,000532: 30,3550 54155 TS MPAC +1 # CDUY
039669,000533:
039670,000534: 30,3551 34750 CA BIT4
039671,000535: 30,3552 03563 TC DVBYCOSM
039672,000536: 30,3553 33562 CA 16OCT
039673,000537: 30,3554 03563 TC DVBYCOSM
039674,000538: 30,3555 40141 CS TEM1
039675,000539: 30,3556 03605 TC ARCTRGSP
039676,000540: 30,3557 54154 TS MPAC # CDUX
039677,000541:
039678,000542: 30,3560 06042 TC INTPRET
039679,000543: 30,3561 77616 RVQ
039680,000544:
039681,000545: 30,3562 00016 16OCT OCT 16
039682,000546:
Page 913 |
039684,000548: # THE ELEMENTS OF THE NAV BASE MATRIX WHICH WE MUST DIVIDE BY COS(MGA)
039685,000549: # ALREADY CONTAIN COS(MGA)/2 AS A FACTOR. THEREFORE THE QUOTIENT SHOULD
039686,000550: # ORDINARILY NEVER EXCEED 1/2 IN MAGNITUDE. BUT IF THE MGA IS NEAR PI/2
039687,000551: # THEN COS(MGA) IS NEAR ZERO, AND THERE MAY BE SOME CHAFF IN THE OTHER
039688,000552: # ELEMENTS OF THE MATRIX WHICH WOULD PRODUCE CHAOS UNDER DIVISION.
039689,000553: # BEFORE DIVIDING WE MAKE SURE COS(MGA) IS AT LEAST ONE BIT LARGER
039690,000554: # THAN THE MAGNITUDE OF THE HIGH ORDER PART OF THE OPERAND.
039691,000555:
039692,000556: # IF ONE OR MORE DIVIDES CANNOT BE PERFORMED, THIS MEANS THAT THE
039693,000557: # REQUIRED MGA IS VERY NEARLY +-PI/2 AND THEREFORE THE OTHER GIMBAL
039694,000558: # ANGLES ARE INDETERMINATE. THE INNER AND OUTER GIMBAL ANGLES RETURNED
039695,000559: # IN THIS CASE WILL BE RANDOM MULTIPLES OF PI/2.
039696,000560:
039697,000561: 30,3563 60120 DVBYCOSM AD FIXLOC
039698,000562: 30,3564 54116 TS ADDRWD # ADRES OF OPERAND
039699,000563:
039700,000564: 30,3565 50116 INDEX ADDRWD # FETCH NEG ABS OF OPERAND, AD TEM5, AND
039701,000565: 30,3566 30000 CA 0 # SKIP DIVIDE IF RESULT NEG OR ZERO
039702,000566: 30,3567 00006 EXTEND
039703,000567: 30,3570 63572 BZMF +2
039704,000568: 30,3571 40000 COM
039705,000569: 30,3572 60145 AD TEM5 # C(A) ZERO OR NEG, C(TEM5) ZERO OR POS
039706,000570: 30,3573 00006 EXTEND
039707,000571: 30,3574 63602 BZMF TSL&TCQ # DIFFERENCE ALWAYS SMALL IF BRANCH
039708,000572:
039709,000573: 30,3575 00006 EXTEND # TEM5 EXCEEDS ABS HIGH ORDER PART OF
039710,000574: 30,3576 50116 INDEX ADDRWD # OPERAND BY AT LEAST ONE BIT.
039711,000575: 30,3577 30001 DCA 0 # THEREFORE IT EXCEEDS THE DP OPERAND
039712,000576: 30,3600 00006 EXTEND # AND DIVISION WILL ALWAYS SUCCEED.
039713,000577: 30,3601 10145 DV TEM5
039714,000578: 30,3602 54001 TSL&TCQ TS L
039715,000579: 30,3603 22141 LXCH TEM1
039716,000580: 30,3604 00002 TC Q
039717,000581:
Page 914 |
039719,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
039720,000584: # UNITS OF 2. THE RESULT IS AN UNAMBIGUOUS ANGLE ANYWHERE IN THE CIRCLE, WITH A MAXIMUM ERROR OF +-4 BITS.
039721,000585: # THE ERROR IS PRODUCED BY THE SUBROUTINE SPARCSIN WHICH IS USED ONLY IN THE REGION +-45 DEGREES.
039722,000586:
039723,000587: 30,3605 00006 ARCTRGSP EXTEND
039724,000588: 30,3606 13650 BZF SINZERO # TO AVOID DIVIDING BY ZERO
039725,000589:
039726,000590: 30,3607 00006 EXTEND
039727,000591: 30,3610 22144 QXCH TEM4
039728,000592: 30,3611 54142 TS TEM2
039729,000593: 30,3612 30001 CA L
039730,000594: 30,3613 54143 TS TEM3
039731,000595: 30,3614 34755 CA ZERO
039732,000596: 30,3615 00006 EXTEND
039733,000597: 30,3616 10142 DV TEM2
039734,000598: 30,3617 00006 EXTEND
039735,000599: 30,3620 13637 BZF USECOS
039736,000600:
039737,000601: 30,3621 10143 CCS TEM3 # SIN IS SMALLER OR EQUAL
039738,000602: 30,3622 34755 CA ZERO
039739,000603: 30,3623 13627 TCF +4
039740,000604: 30,3624 40142 CS TEM2 # IF COS NEG, REVERSE SIGN OF SIN,
039741,000605: 30,3625 54142 TS TEM2 # ANGLE = PI-ARCSIN(SIN)
039742,000606: 30,3626 34735 CA NEGMAX # PICK UP PI, 2'S COMPLEMENT
039743,000607: 30,3627 54143 TS TEM3 # WE NO LONGER NEED COS
039744,000608: 30,3630 30142 CA TEM2
039745,000609: 30,3631 03655 TC SPARCSIN -1
039746,000610: 30,3632 03726 TC ONESTO2S
039747,000611: 30,3633 00006 EXTEND
039748,000612: 30,3634 20143 MSU TEM3
039749,000613: 30,3635 03726 1TO2&TCQ TC ONESTO2S
039750,000614: 30,3636 00144 TC TEM4
039751,000615:
039752,000616: 30,3637 40143 USECOS CS TEM3 # COS IS SMALLER
039753,000617: 30,3640 03655 TC SPARCSIN -1 # ANGLE = SIGN(SIN)(PI/2-ARCSIN(COS))
039754,000618: 30,3641 64736 AD HALF
039755,000619: 30,3642 54143 TS TEM3 # WE NO LONGER NEED COS
039756,000620: 30,3643 10142 CCS TEM2
039757,000621: 30,3644 30143 CA TEM3
039758,000622: 30,3645 13635 TCF 1TO2&TCQ
039759,000623: 30,3646 40143 CS TEM3
039760,000624: 30,3647 13635 TCF 1TO2&TCQ
039761,000625:
039762,000626: 30,3650 10001 SINZERO CCS L
039763,000627: 30,3651 34755 CA ZERO
039764,000628: 30,3652 00002 TC Q
039765,000629: 30,3653 34735 CA NEGMAX # PI, 2'S COMP
039766,000630: 30,3654 00002 TC Q
039767,000631:
Page 915 |
039769,000633: # SPARCSIN TAKES AN ARGUMENT SCALED UNITY IN A AND RETURNS AN ANGLE SCALED
039770,000634: # 180 DEGREES IN A. IT HAS BEEN UNIT TESTED IN THE REGION +-.94 (+- 70
039771,000635: # DEGREES) AND THE MAXIMUM ERROR IS +-5 BITS WITH AN AVERAGE TIME OF
039772,000636: # 450 MICROSECONDS. SPARCSIN -1 TAKES THE ARGUMENT SCALED TWO.(BOB CRISP)
039773,000637:
039774,000638: 30,3655 60000 DOUBLE
039775,000639: 30,3656 54021 SPARCSIN TS SR
039776,000640: 30,3657 13663 TCF +4
039777,000641: 30,3660 50000 INDEX A
039778,000642: 30,3661 44734 CS LIMITS
039779,000643: 30,3662 54021 TS SR
039780,000644: 30,3663 00006 EXTEND
039781,000645: 30,3664 70000 MP A
039782,000646: 30,3665 54141 TS TEM1
039783,000647: 30,3666 00006 EXTEND
039784,000648: 30,3667 73711 MP DPL9
039785,000649: 30,3670 63710 AD DPL7
039786,000650: 30,3671 00006 EXTEND
039787,000651: 30,3672 70141 MP TEM1
039788,000652: 30,3673 63707 AD DPL5
039789,000653: 30,3674 00006 EXTEND
039790,000654: 30,3675 70141 MP TEM1
039791,000655: 30,3676 63706 AD DPL3
039792,000656: 30,3677 00006 EXTEND
039793,000657: 30,3700 70141 MP TEM1
039794,000658: 30,3701 63705 AD DPL1
039795,000659: 30,3702 00006 EXTEND
039796,000660: 30,3703 70021 MP SR
039797,000661: 30,3704 00002 TC Q
039798,000662: 30,3705 24406 DPL1 DEC 10502 B-14
039799,000663: 30,3706 00660 DPL3 DEC 432 B-14
039800,000664: 30,3707 16204 DPL5 DEC 7300 B-14
039801,000665: 30,3710 50744 DPL7 DEC -11803 B-14
039802,000666: 30,3711 20315 DPL9 DEC 8397 B-14
039803,000667:
Page 916 |
039805,000669: # LIMITSUB LIMITS THE MAGNITUDE OF THE POSITIVE OR NEGATIVE VARIABLE
039806,000670: # ARRIVING IN L TO THE POSITIVE LIMIT ARRIVING IN A.
039807,000671: # THE SIGNED LIMITED VARIABLE IS RETURNED IN A.
039808,000672:
039809,000673: # VERSION COURTESY HUGH BLAIR-SMITH
039810,000674:
039811,000675: 30,3712 54141 LIMITSUB TS TEM1
039812,000676: 30,3713 34755 CA ZERO
039813,000677: 30,3714 00006 EXTEND
039814,000678: 30,3715 10141 DV TEM1
039815,000679: 30,3716 10000 CCS A
039816,000680: 30,3717 22141 LXCH TEM1
039817,000681: 30,3720 13722 TCF +2
039818,000682: 30,3721 13724 TCF +3
039819,000683: 30,3722 30001 CA L
039820,000684: 30,3723 00002 TC Q
039821,000685: 30,3724 40141 CS TEM1
039822,000686: 30,3725 00002 TC Q
039823,000687:
039824,000688: # SUBROUTINE TO CONVERT 1'S COMP SP TO 2'S COMP
039825,000689:
039826,000690: 30,3726 10000 ONESTO2S CCS A
039827,000691: 30,3727 64753 AD ONE
039828,000692: 30,3730 00002 TC Q
039829,000693: 30,3731 40000 CS A
039830,000694: 30,3732 00002 TC Q
039831,000695:
039832,000696: # NO ATTITUDE CONTROL
039833,000697:
039834,000698: 30,3733 05600 NOATTCNT TC ALARM
039835,000699: 30,3734 00402 OCT 00402 # NO ATTITUDE CONTROL
039836,000700:
039837,000701: 30,3735 00004 +2 INHINT # COME HERE FOR NOATTCNT WITHOUT ALARM
039838,000702: 30,3736 04674 TC IBNKCALL # RELINT AT TC INTPRET AFTER TCQCDUW
039839,000703: 30,3737 40166 FCADR STOPRATE
039840,000704: 30,3740 13460 TCF TCQCDUW # RETURN TO USER SKIPPING AUTOPILOT CMDS
039841,000705:
039842,000706: # MIDDLE GIMBAL ANGLE ALARM
039843,000707:
039844,000708: 30,3741 05600 ALARMMGA TC ALARM
039845,000709: 30,3742 00401 OCT 00401
039846,000710: 30,3743 13260 TCF MGARET
039847,000711:
Page 917 |
039849,000713: # ************************************************************************
039850,000714: # CONSTANTS
039851,000715: # ************************************************************************
039852,000716:
039853,000717: # ADDRESS CONSTANTS
039854,000718:
039855,000719: 30,3744 03245 ECDUWL ECADR ECDUW
039856,000720:
039857,000721: # THRUST DIRECTION FILTER CONSTANTS
039858,000722:
039859,000723: 30,3745 06315 GAINFLTR DEC .2 # GAIN FILTER SANS CSM
039860,000724: 30,3746 03146 DEC .1 # GAIN FILTER WITH CSM
039861,000725:
039862,000726: 30,3747 00071 DUNFVLIM DEC .007 B-1 # 7 MR MAX CHG IN F DIR IN VEH IN 2 SECS.
039863,000727: # THIS DOES NOT ALLOW FOR S/C ROT RATE.
039864,000728:
039865,000729: 30,3750 02041 UNFVLIM DEC .129 B-1 # 129 MR MAX THRUST OFFSET. 105 MR TRAVEL
039866,000730: # +10MR DEFL+5MR MECH MOUNT+9MR ABLATION.
039867,000731:
039868,000732: # CONSTANTS RELATED TO GIMBAL ANGLE COMPUTATIONS
039869,000733:
039870,000734: 30,3751 01673 DOTSWFMX DEC .93302 B-4 # LIM COLNRTY OF UNWC/2 & UNFC/2 TO 85 DEG
039871,000735: # LOWER PART COMES FROM NEXT CONSTANT
039872,000736:
039873,000737: 30,3752 03434 DAXMAX DEC .11111111111 # DELATTX LIM TO 20 DEG IN 2 SECS, 1'S, PI
039874,000738: 30,3753 00266 DEC .0111111111 # 2 DEG WHEN CSM DOCKED
039875,000739:
039876,000740: 30,3754 01616 DAY/2MAX DEC .05555555555 # LIKEWISE FOR DELATTY
039877,000741: 30,3755 00133 DEC .0055555555
039878,000742:
039879,000743: 30,3756 30,3752 DAZMAX = DAXMAX # LIKEWISE FOR DELATTZ
039880,000744:
039881,000745: 30,3756 14344 CDUZDLIM DEC .3888888888 # 70 DEG LIMIT FOR MGA, 1'S, PI
039882,000746:
039883,000747: # CONSTANTS FOR DATA TRANSFER
039884,000748:
039885,000749: 30,3757 01463 DT/DELT DEC .05 # .1 SEC/2 SEC WHICH IS THE AUTOPILOT
039886,000750: # CONTROL SAMPLE PERIOD/COMPUTATION PERIOD
039887,000751:
039888,000752: 30,3760 30,3754 DELERLIM = DAY/2MAX # 10 DEG LIMIT FOR LAG ANGLES, 1'S, PI
039889,000753:
End of include-file FINDCDUW_-_GUIDAP_INTERFACE.agc. Parent file is MAIN.agc