Source Code
032399,000001: # Copyright: Public domain.
032400,000002: # Filename: P40-P47.agc
032401,000003: # Purpose: Part of the source code for Luminary 1A build 099.
032402,000004: # It is part of the source code for the Lunar Module's (LM)
032403,000005: # Apollo Guidance Computer (AGC), for Apollo 11.
032404,000006: # Assembler: yaYUL
032405,000007: # Contact: Ron Burkey <info@sandroid.org>.
032406,000008: # Website: www.ibiblio.org/apollo.
032407,000009: # Pages: 752-784
032408,000010: # Mod history: 2009-05-19 RSB Adapted from the corresponding
032409,000011: # Luminary131 file, using page
032410,000012: # images from Luminary 1A.
032411,000013: # 2011-01-06 JL Fixed interpretive indentation.
032412,000014:
032413,000015: # This source code has been transcribed or otherwise adapted from
032414,000016: # digitized images of a hardcopy from the MIT Museum. The digitization
032415,000017: # was performed by Paul Fjeld, and arranged for by Deborah Douglas of
032416,000018: # the Museum. Many thanks to both. The images (with suitable reduction
032417,000019: # in storage size and consequent reduction in image quality as well) are
032418,000020: # available online at www.ibiblio.org/apollo. If for some reason you
032419,000021: # find that the images are illegible, contact me at info@sandroid.org
032420,000022: # about getting access to the (much) higher-quality images which Paul
032421,000023: # actually created.
032422,000024:
032423,000025: # Notations on the hardcopy document read, in part:
032424,000026:
032425,000027: # Assemble revision 001 of AGC program LMY99 by NASA 2021112-61
032426,000028: # 16:27 JULY 14, 1969
032427,000029:
032428,000030: # Page 752
032429,000031: # PROGRAM DESCRIPTION: P40BOTH DECEMBER 22, 1966
032430,000032: # MOD 03 BY PETER ADLER MARCH 3, 1967
032431,000033: # CALLED VIA JOB FROM V37E
032432,000034:
032433,000035: # FUNCTIONAL DESCRIPTION
032434,000036:
032435,000037: # 1) TO COMPUTE A PREFERRED IMU ORIENTATION AND A PREFERRED VEHICLE ATTITUDE FOR A LM DPS
032436,000038: # THRUSTING MANEUVER.
032437,000039: # (There is no item #2 in the original program listing --- RSB 2009.)
032438,000040: # 3) TO DO THE VEHICLE MANEUVER TO THE THRUSTING ATTITUDE.
032439,000041: # 4) TO CONTROL THE PGNCS DURING COUNTDOWN, IGNITION, THRUSTING, AND THRUST TERMINATION OF A
032440,000042: # PGNCS CONTROLLED DPS MANEUVER.
032441,000043: # 5) IN POSTBURN --- ZERO RENDEZVOUS COUNTER, MAINTAIN VG CALCULATIONS FOR POSSIBLE RCS MANEUVER,
032442,000044: # SET MAXIMUM DEADBAND IN DAP, RESET STEERLAW CSTEER TO ZERO.
032443,000045:
032444,000046: # NOTE: P42, WHICH IS IN THIS LOG SECTION, DOES THE SAME FOR AN APS BURN, AND P41 DOES 1-3 FOR
032445,000047: # RCS PLUS DISPLAYS PARAMETERS FOR MANUAL CONTROL.
032446,000048:
032447,000049: # SUBROUTINES USED
032448,000050:
032449,000051: # R02 IMU STATUS CHECK
032450,000052: # S40.1 COMPUTATION OF THRUST DIRECTION
032451,000053: # S40.13 LENGTH OF BURN
032452,000054: # S40.2,3 PREFERRED IMU ORIENTATION
032453,000055: # S40.8 X PRODUCT STEERING
032454,000056: # S40.9 LAMBERT VTOGAIN
032455,000057: # R60LEM ATTITUDE MANEUVER
032456,000058: # LEMPREC EXTRAPOLATE STATE VECTOR
032457,000059: # PREREAD AVERAGE G, SERVICER
032458,000060: # ALLCOAST DAP COASTING INITIALIZATION
032459,000061: # CLOKTASK ERGO CLOCKJOB -- COUNT DOWN
032460,000062: # PHASCHANG, INTPRET, FLAGUP, FLAGDOWN, WAITLIST, LONGCALL, GOFLASH, GOFLASHR, GOPERF1, ALARM,
032461,000063: # PRIOLARM, GOTOP00H, ENDOFJOB, BANKCALL, SETMAXDB, SETMINDB, CHECKMM, FLATOUT, OUTFLAT,
032462,000064: # KILLTASK, SGNAGREE, TPAGREE, ETC.
032463,000065:
032464,000066: # RESTARTS VIA GROUP 4
032465,000067:
032466,000068: # DISPLAYS
032467,000069:
032468,000070: # V50N25 203 A/P TO PGNCS, AUTO-THROTTLE MODE, AUTO ATTITUDE CONTROL
032469,000071: # V06N40 TTI, VG, DELTAVM (DISPLAYED ONCE/SECOND BY CLOKTASK)
032470,000072: # V50N99 PLEASE PERFORM ENGINE ON ENABLE
032471,000073: # V06N40 TG (TIME TO GO TO CUTOFF), VG, DELTAVM -- ONCE/SECOND
032472,000074: # V16N40 FINAL VALUES OF TG, VG, DELTAVM
032473,000075: # V16N85 COMP OF VG (BODY AXES) FOR POSS. RCS MANUAL MANEUVER
032474,000076: # V05N09 POSSIBLE ALARMS
032475,000077: # V50N07 PLEASE SELECT P00
032476,000078:
032477,000079: # Page 753
032478,000080: # VIA R30
032479,000081:
032480,000082: # V06N44 HAPO, PERI, TFF
032481,000083: # V06N35 TIME TO PERIGEE, HMS
032482,000084:
032483,000085: # ALARM OR ABORT EXIT MODES
032484,000086:
032485,000087: # PROGRAM ALARM, FLASHING DISPLAY OF ALARM CODE 1706 IF P40 SELECTED WITH DESCENT UNIT STAGED.
032486,000088: # V34E (TERMINATE) IS THE ONLY RESPONSE ACCEPTED. TC GOTOP00H.
032487,000089:
032488,000090: # PROGRAM ALARM, FLASH CODE 1703: TIG LESS THAN 45 SECS AWAY. V34E= GOTOP00H OR V33E= SLIP
032489,000091: # TIG BY 45 SECS.
032490,000092:
032491,000093: # ERASABLE INITIALIZATION
032492,000094:
032493,000095: # DEBRIS
032494,000096:
032495,000097: # OUTPUT
032496,000098:
032497,000099: # SEE SUBROUTINES E.G.: S40.1, S40.2,3, S40.13, S40.8, S40.9, TRIMGIMB
032498,000100: # XDELVFLG = 1 FOR EXT DELV COMPUTATION
032499,000101: # = 0 FOR AIMPT (LAMBERT COMP
032500,000102:
032501,000103: 27,2246 COUNT* $$/P40
032502,000104: 27,2246 E7,1455 EBANK= WHICH
032503,000105:
032504,000106: 36,3147 BANK 36
032505,000107: 36,2000 SETLOC P40S
032506,000108: 36,2000 BANK
032507,000109:
032508,000110: 36,3147 05353 P40LM TC PHASCHNG
032509,000111: 36,3150 04024 OCT 04024
032510,000112:
032511,000113: 36,3151 33133 CAF P40ADRES # INITIALIZATION FOR BURNBABY
032512,000114: 36,3152 55455 TS WHICH
032513,000115:
032514,000116: 36,3153 30106 CA FLGWRD10
032515,000117: 36,3154 74737 MASK APSFLBIT
032516,000118: 36,3155 10000 CCS A
032517,000119: 36,3156 13121 TCF P40ALM
032518,000120: 36,3157 04616 TC BANKCALL # GO DO IMU STATUS CHECK ROUTINE.
032519,000121: 36,3160 11254 CADR R02BOTH
032520,000122:
032521,000123: 36,3161 40111 CS DAPBOOLS # INITIALIZE DVMON
032522,000124: 36,3162 74737 MASK CSMDOCKD
032523,000125: 36,3163 10000 CCS A
032524,000126: 36,3164 32020 CAF THRESH1
032525,000127: 36,3165 62021 AD THRESH3
032526,000128: 36,3166 55251 TS DVTHRUSH
032527,000129: 36,3167 34751 CAF FOUR
032528,000130: 36,3170 55515 TS DVCNTR
032529,000131: # Page 754
032530,000132: 36,3171 06037 TC INTPRET # LOAD CONSTANTS FOR DPS BURN
032531,000133: 36,3172 43175 VLOAD CLEAR # LOAD F, MDOT, TDECAY
032532,000134: 36,3173 34001 FDPS
032533,000135: 36,3174 02663 NOTHROTL
032534,000136: 36,3175 03735 STORE F
032535,000137: 36,3176 77735 SLOAD
032536,000138: 36,3177 26002 DPSVEX
032537,000139: 36,3200 70476 P40IN DCOMP SR1
032538,000140: 36,3201 37743 STCALL VEX # LOAD EXHAUST VELOCITY FOR TGO COMP.
032539,000141: 36,3202 56246 S40.1 # COMPUTES UT AND VGTIG
032540,000142: 36,3203 77624 CALL
032541,000143: 36,3204 56413 S40.2,3 # COMPUTES PREFERRED IMU ORIENTATION
032542,000144: 36,3205 77776 EXIT
032543,000145:
032544,000146: 36,3206 00004 INHINT
032545,000147: 36,3207 04674 TC IBNKCALL
032546,000148: 36,3210 40142 CADR PFLITEDB # ZERO ATTITUDE ERRORS, SET DB TO ONE DEG.
032547,000149:
032548,000150: 36,3211 03213 TC P40SXT4
032549,000151:
032550,000152: # ********************************
032551,000153:
032552,000154: 36,3212 12126 TCF BURNBABY
032553,000155:
032554,000156: # ********************************
032555,000157:
032556,000158: 36,3213 00006 P40SXT4 EXTEND
032557,000159: 36,3214 23142 QXCH P40/RET
032558,000160: 36,3215 00003 P41MANU RELINT
032559,000161:
032560,000162: 36,3216 05516 TC DOWNFLAG # CLEAR 3AXISFLG -- R60 USE VECPOINT.
032561,000163: 36,3217 00124 ADRES 3AXISFLG
032562,000164:
032563,000165: 36,3220 04616 TC BANKCALL
032564,000166: 36,3221 54123 CADR R60LEM # DO ATTITUDE MANEUVER ROUTINE
032565,000167: 36,3222 01142 TC P40/RET
032566,000168:
032567,000169: 36,3223 E7,1462 EBANK= TRKMKCNT
032568,000170: 36,3223 30005 POSTBURN CA Z
032569,000171: 36,3224 55163 TS DISPDEX
032570,000172: 36,3225 00006 EXTEND
032571,000173: 36,3226 32056 DCA ACADN85
032572,000174: 36,3227 53253 DXCH AVEGEXIT
032573,000175: 36,3230 33760 CAF V16N40
032574,000176: 36,3231 04616 TC BANKCALL
032575,000177: 36,3232 20635 CADR GOFLASHR
032576,000178: 36,3233 03256 TC TERM40
032577,000179: 36,3234 13241 TCF TIGNOW
032578,000180: 36,3235 03223 TC POSTBURN
032579,000181: # Page 755
032580,000182: 36,3236 05353 P40PHS1 TC PHASCHNG
032581,000183: 36,3237 00014 OCT 00014
032582,000184: 36,3240 15155 TCF ENDOFJOB
032583,000185:
032584,000186: 36,3241 00004 TIGNOW INHINT
032585,000187: 36,3242 04674 TC IBNKCALL
032586,000188: 36,3243 40153 CADR ZATTEROR
032587,000189: 36,3244 04674 TC IBNKCALL
032588,000190: 36,3245 40140 CADR SETMINDB
032589,000191: 36,3246 00003 RELINT
032590,000192: 36,3247 33761 CAF V16N85B
032591,000193: 36,3250 04616 TC BANKCALL
032592,000194: 36,3251 20462 CADR REFLASHR
032593,000195: 36,3252 03256 TC TERM40
032594,000196: 36,3253 13256 TCF TERM40
032595,000197: 36,3254 03247 TC -5
032596,000198:
032597,000199: 36,3255 13236 TCF P40PHS1
032598,000200:
032599,000201: 36,3256 00006 TERM40 EXTEND
032600,000202: 36,3257 32106 DCA SERVCADR
032601,000203: 36,3260 53253 DXCH AVEGEXIT
032602,000204: 36,3261 34755 CAF ZERO
032603,000205: 36,3262 55462 TS TRKMKCNT # ZERO RENDZVS CNTERS
032604,000206: 36,3263 30005 CA Z
032605,000207: 36,3264 55163 TS DISPDEX
032606,000208: 36,3265 00004 INHINT
032607,000209: 36,3266 04674 TC IBNKCALL
032608,000210: 36,3267 40123 CADR RESTORDB
032609,000211: 36,3270 00003 RELINT
032610,000212: 36,3271 06001 TC GOTOP00H
032611,000213:
032612,000214: 36,3272 E7,1455 EBANK= WHICH
032613,000215: 36,3272 COUNT* $$/P41
032614,000216: 36,3272 33134 P41LM CAF P41ADRES # INITIALIZATION FOR BURNBABY
032615,000217: 36,3273 55455 TS WHICH
032616,000218:
032617,000219: 36,3274 04616 TC BANKCALL
032618,000220: 36,3275 11254 CADR R02BOTH
032619,000221:
032620,000222: 36,3276 06037 TC INTPRET # BOTH LM
032621,000223: 36,3277 71214 BON DLOAD # IF NJETSFLAG IS SET, LOAD Z JET F
032622,000224: 36,3300 00700 NJETSFLG
032623,000225: 36,3301 75305 P41FJET1
032624,000226: 36,3302 34015 FRCS4 # IF NJETSFLG IS CLEAR, LOAD 4 JET F
032625,000227:
032626,000228: 36,3303 37735 P41FJET STCALL F
032627,000229: 36,3304 75310 P41IN
032628,000230: 36,3305 77745 P41FJET1 DLOAD
032629,000231: # Page 756
032630,000232: 36,3306 34017 FRCS2
032631,000233: 36,3307 03735 STORE F
032632,000234:
032633,000235: 36,3310 77624 P41IN CALL
032634,000236: 36,3311 56246 S40.1 # BOTH
032635,000237: 36,3312 77624 P41NORM CALL
032636,000238: 36,3313 56413 S40.2,3 # CALCULATE PREFERRED IMU ORIENTATION AND
032637,000239: 36,3314 77776 EXIT # SET PFRATFLG.
032638,000240:
032639,000241: 36,3315 00004 INHINT
032640,000242: 36,3316 04674 TC IBNKCALL
032641,000243: 36,3317 40153 CADR ZATTEROR # ZERO ATTITUDE ERRORS
032642,000244: 36,3320 04674 TC IBNKCALL
032643,000245: 36,3321 40140 CADR SETMINDB # SET 0.3 DEGREE DEADBAND
032644,000246: 36,3322 03213 TC P40SXT4
032645,000247:
032646,000248: 36,3323 06037 TC INTPRET
032647,000249: 36,3324 45175 VLOAD CALL # TRANSFORM VELOCITY-TO-BE-GAINED AT TIG
032648,000250: 36,3325 03701 VGTIG # FROM REFERENCE COORDINATES TO LM BODY-
032649,000251: 36,3326 57267 S41.1 # AXIS COORDINATES FOR V16N85 DISPLAY.
032650,000252: 36,3327 03502 STORE VGBODY # (SCALED AT 2 (+7) METERS/CENTISECOND)
032651,000253: 36,3330 77776 EXIT
032652,000254:
032653,000255: 36,3331 33761 CAF V16N85B
032654,000256: 36,3332 04616 TC BANKCALL
032655,000257: 36,3333 20446 CADR GODSPRET
032656,000258:
032657,000259: 36,3334 35017 CAF PRIO5
032658,000260: 36,3335 55163 TS DISPDEX # FOR SAFETY ONLY
032659,000261: 36,3336 05105 TC FINDVAC
032660,000262: 36,3337 E7,1700 EBANK= VGPREV
032661,000263: 36,3337 03361 74067 2CADR DYNMDISP
032662,000264:
032663,000265: 36,3341 05327 TC 2PHSCHNG
032664,000266: 36,3342 00076 OCT 00076 # GROUP 6 RESTARTS AT REDO6.7
032665,000267: 36,3343 04024 OCT 04024 # GROUP 4 RESTARTS HERE
032666,000268:
032667,000269: # ********************************
032668,000270:
032669,000271: 36,3344 12135 TCF B*RNB*B*
032670,000272:
032671,000273: # ********************************
032672,000274:
032673,000275: 36,3345 34777 BLNKWAIT CAF 1SEC
032674,000276: 36,3346 04616 TC BANKCALL
032675,000277: 36,3347 01735 CADR DELAYJOB
032676,000278:
032677,000279: 36,3350 31163 REDO6.7 CA DISPDEX # ON A RESTART, DO NOT PUT UP DISPLAY IF
032678,000280: 36,3351 64752 AD TWO # BLANKING (BETWEEN TIG-35 AND TIG-30)
032679,000281:
032680,000282: # ********************************
032681,000283: # Page 757
032682,000284:
032683,000285: 36,3352 00006 EXTEND
032684,000286: 36,3353 13345 BZF BLNKWAIT
032685,000287:
032686,000288: 36,3354 33761 CAF V16N85B
032687,000289: 36,3355 04616 TC BANKCALL
032688,000290: 36,3356 20446 CADR GODSPRET
032689,000291:
032690,000292: 36,3357 35017 CAF PRIO5
032691,000293: 36,3360 05146 TC PRIOCHNG
032692,000294:
032693,000295: 36,3361 31163 DYNMDISP CA DISPDEX # A NON-POSITIVE DISPDEX INDICATES PAST
032694,000296: 36,3362 00006 EXTEND # TIG-35, SO SERVICER WILL BE DOING THE
032695,000297: 36,3363 65155 BZMF ENDOFJOB # UPDATING OF NOUN 85. STOP DYNMDISP.
032696,000298: 36,3364 06037 TC INTPRET
032697,000299: 36,3365 45175 VLOAD CALL
032698,000300: 36,3366 03701 VGPREV
032699,000301: 36,3367 57267 S41.1
032700,000302: 36,3370 03502 STORE VGBODY
032701,000303: 36,3371 77776 EXIT
032702,000304: 36,3372 34777 CAF 1SEC
032703,000305: 36,3373 04616 TC BANKCALL
032704,000306: 36,3374 01735 CADR DELAYJOB
032705,000307: 36,3375 13361 TCF DYNMDISP
032706,000308:
032707,000309: 36,3376 06037 CALCN85 TC INTPRET
032708,000310: 36,3377 77624 CALL
032709,000311: 36,3400 75611 UPDATEVG
032710,000312: 36,3401 45175 VLOAD CALL
032711,000313: 36,3402 03701 VGPREV
032712,000314: 36,3403 57267 S41.1
032713,000315: 36,3404 03502 STORE VGBODY
032714,000316: 36,3405 77776 EXIT
032715,000317: 36,3406 04635 TC POSTJUMP
032716,000318: 36,3407 65770 CADR SERVEXIT
032717,000319:
032718,000320: 36,3410 COUNT* $$/P42
032719,000321: 36,3410 E7,1455 EBANK= WHICH
032720,000322:
032721,000323: 36,3410 05353 P42LM TC PHASCHNG
032722,000324: 36,3411 04024 OCT 04024
032723,000325:
032724,000326: 36,3412 33135 CAF P42ADRES # INITIALIZATION FOR BURNBABY.
032725,000327: 36,3413 55455 TS WHICH
032726,000328:
032727,000329: 36,3414 40106 CS FLGWRD10
032728,000330: 36,3415 74737 MASK APSFLBIT
032729,000331: 36,3416 10000 CCS A
032730,000332: 36,3417 03121 TC P40ALM
032731,000333: 36,3420 04616 P42STAGE TC BANKCALL
032732,000334: # Page 758
032733,000335: 36,3421 11254 CADR R02BOTH
032734,000336: 36,3422 36000 CAF THRESH2 # INITIALIZE DVMON
032735,000337: 36,3423 55251 TS DVTHRUSH
032736,000338: 36,3424 34751 CAF FOUR
032737,000339: 36,3425 55515 TS DVCNTR
032738,000340:
032739,000341: 36,3426 06037 TC INTPRET
032740,000342: 36,3427 77214 SET VLOAD # LOAD FAPS, MDOTAPS, AND ATDECAY INTO
032741,000343: 36,3430 01072 AVFLAG # F, MDOT, AND TDECAY BY VECTOR LOAD.
032742,000344: 36,3431 34007 FAPS
032743,000345: 36,3432 03735 STORE F
032744,000346: 36,3433 52135 SLOAD GOTO
032745,000347: 36,3434 26001 APSVEX
032746,000348: 36,3435 75200 P40IN
032747,000349:
032748,000350: 36,3436 E7,1455 EBANK= WHICH
032749,000351:
032750,000352: 36,3436 COUNT* $$/P47
032751,000353: 36,3436 04616 P47LM TC BANKCALL
032752,000354: 36,3437 11254 CADR R02BOTH
032753,000355: 36,3440 06037 TC INTPRET
032754,000356: 36,3441 77624 CALRB
032755,000357: 36,3442 27553 MIDTOAV2
032756,000358:
032757,000359: 36,3443 30155 CA MPAC +1
032758,000360: 36,3444 05173 TC TWIDDLE
032759,000361: 36,3445 03447 ADRES STARTP47
032760,000362:
032761,000363: 36,3446 15155 TCF ENDOFJOB
032762,000364:
032763,000365: 36,3447 05353 STARTP47 TC PHASCHNG
032764,000366: 36,3450 05014 OCT 05014
032765,000367: 36,3451 77777 OCT 77777
032766,000368:
032767,000369: 36,3452 00006 EXTEND
032768,000370: 36,3453 33764 DCA ACADN83
032769,000371: 36,3454 53253 DXCH AVEGEXIT
032770,000372: 36,3455 34736 CAF PRIO20
032771,000373: 36,3456 05105 TC FINDVAC
032772,000374: 36,3457 E7,1622 EBANK= DELVIMU
032773,000375: 36,3457 03513 74067 2CADR P47BODY
032774,000376:
032775,000377: 36,3461 12342 TCF REDO4.2 # CHECKS PHASE 5 AND GOES TO PREREAD
032776,000378: # SEE TIG-30 IN BURNBABY
032777,000379:
032778,000380: 36,3462 06037 CALCN83 TC INTPRET
032779,000381: 36,3463 53375 VLOAD VAD
032780,000382: 36,3464 03502 DELVCTL
032781,000383: 36,3465 03527 DELVREF
032782,000384: 36,3466 03656 STORE DELVSIN # TEMP STORAGE FOR RESTARTS
032783,000385: # Page 759
032784,000386: 36,3467 77624 CALL
032785,000387: 36,3470 57267 S41.1
032786,000388: 36,3471 03623 STORE DELVIMU
032787,000389: 36,3472 77776 EXIT
032788,000390: 36,3473 05353 TC PHASCHNG
032789,000391: 36,3474 10035 OCT 10035 # REREADAC AND HERE
032790,000392:
032791,000393: 36,3475 06037 TC INTPRET
032792,000394: 36,3476 77775 VLOAD
032793,000395: 36,3477 03656 DELVSIN
032794,000396: 36,3500 03502 STORE DELVCTL
032795,000397: 36,3501 77776 EXIT
032796,000398:
032797,000399: 36,3502 04635 TC POSTJUMP
032798,000400: 36,3503 65770 CADR SERVEXIT
032799,000401:
032800,000402: 36,3504 33762 P47BOD CAF V1683
032801,000403: 36,3505 04616 TC BANKCALL
032802,000404: 36,3506 20635 CADR GOFLASHR
032803,000405: 36,3507 06001 TC GOTOP00H
032804,000406: 36,3510 06001 TC GOTOP00H
032805,000407:
032806,000408: 36,3511 13513 TCF P47BODY
032807,000409:
032808,000410: 36,3512 13236 TCF P40PHS1
032809,000411:
032810,000412: 36,3513 06037 P47BODY TC INTPRET
032811,000413: 36,3514 77775 VLOAD
032812,000414: 36,3515 06522 HI6ZEROS
032813,000415: 36,3516 03623 STORE DELVIMU
032814,000416: 36,3517 03502 STORE DELVCTL
032815,000417: 36,3520 77776 EXIT
032816,000418: 36,3521 03504 TC P47BOD
032817,000419:
032818,000420: 36,3522 COUNT* $$/P40
032819,000421: 36,3522 31517 IMPLBURN CA TGO +1
032820,000422: 36,3523 03735 TC GETDT
032821,000423: 36,3524 05173 TC TWIDDLE
032822,000424: 36,3525 03542 ADRES ENGOFTSK
032823,000425: 36,3526 05516 TC DOWNFLAG # TURN OFF IGNFLAG
032824,000426: 36,3527 00153 ADRES IGNFLAG
032825,000427: 36,3530 05516 TC DOWNFLAG # TURN OFF ASTNFLG
032826,000428: 36,3531 00154 ADRES ASTNFLAG
032827,000429: 36,3532 05516 TC DOWNFLAG # TURN OFF IMPULSW
032828,000430: 36,3533 00044 ADRES IMPULSW
032829,000431: 36,3534 05353 TC PHASCHNG # RESTART PROTECT ENGOFTSK (ENGINOFF)
032830,000432: 36,3535 40114 OCT 40114
032831,000433:
032832,000434: 36,3536 05221 TC FIXDELAY # WAIT HALF A SECOND
032833,000435: 36,3537 00062 DEC 50 B-14
032834,000436: # Page 760
032835,000437: 36,3540 02653 TC NOULLAGE # TURN OFF ULLAGE
032836,000438:
032837,000439: 36,3541 05261 TC TASKOVER
032838,000440:
032839,000441: 36,3542 04674 ENGOFTSK TC IBNKCALL # THIS CODING ALLOWS ENGINOFF ET AL TO BE
032840,000442: 36,3543 75545 CADR ENGINOFF # USED BOTH BY WAITLIST AND BY TC IBNKCALL
032841,000443: 36,3544 05261 TC TASKOVER
032842,000444:
032843,000445: 36,3545 34644 ENGINOFF CAF PRIO12 # MUST BE LOWER PRIO THAN CLOCKJOB
032844,000446: 36,3546 05105 TC FINDVAC
032845,000447: 36,3547 E7,1462 EBANK= TRKMKCNT
032846,000448: 36,3547 03223 74067 2CADR POSTBURN
032847,000449:
032848,000450: 36,3551 34753 ENGINOF2 CAF BIT1
032849,000451: 36,3552 05203 TC WAITLIST
032850,000452: 36,3553 E6,1422 EBANK= OMEGAQ
032851,000453: 36,3553 03606 74066 2CADR COASTSET
032852,000454:
032853,000455: 36,3555 40103 ENGINOF1 CS FLAGWRD7 # SET THE IDLE BIT.
032854,000456: 36,3556 74745 MASK IDLEFBIT
032855,000457: 36,3557 26103 ADS FLAGWRD7
032856,000458:
032857,000459: 36,3560 02653 TC NOULLAGE
032858,000460:
032859,000461: 36,3561 00006 ENGINOF4 EXTEND
032860,000462: 36,3562 30025 DCA TIME2
032861,000463: 36,3563 53345 DXCH TEVENT
032862,000464:
032863,000465: 36,3564 44745 ENGINOF3 CS ENGONBIT # INSURE ENGONFLG IS CLEAR.
032864,000466: 36,3565 70101 MASK FLAGWRD5
032865,000467: 36,3566 54101 TS FLAGWRD5
032866,000468: 36,3567 44355 CS PRIO30 # ENGINOF3 IS USED AS A PRE-ENGINE ARM
032867,000469: 36,3570 00006 EXTEND # SUBROUTINE.
032868,000470: 36,3571 02011 RAND DSALMOUT
032869,000471: 36,3572 64736 AD PRIO20 # TURN OFF THE ENGINE -- DPS OR APS
032870,000472: 36,3573 00006 EXTEND
032871,000473: 36,3574 01011 WRITE DSALMOUT
032872,000474:
032873,000475: 36,3575 40111 CS DAPBOOLS # TURN OFF TRIM GIMBAL
032874,000476: 36,3576 74736 MASK USEQRJTS
032875,000477: 36,3577 26111 ADS DAPBOOLS
032876,000478:
032877,000479: 36,3600 44737 CS HIRTHROT # ZERO AUTO-THROTTLE WHENEVER THE ENGINE
032878,000480: 36,3601 54055 TS THRUST # IS TURNED OFF.
032879,000481: 36,3602 34750 CAF BIT4 # THE HARDWARE DOES SO ONLY WHEN THE
032880,000482: 36,3603 00006 EXTEND # ENGINE IS DISARMED.
032881,000483: 36,3604 05014 WOR CHAN14
032882,000484:
032883,000485: 36,3605 04707 TC ISWRETRN
032884,000486: # Page 761
032885,000487: 36,3606 04674 COASTSET TC IBNKCALL # DO DAP COASTING INITIALIZATION
032886,000488: 36,3607 40204 CADR ALLCOAST
032887,000489: 36,3610 05261 TC TASKOVER
032888,000490:
032889,000491: 36,3611 E6,1422 EBANK= OMEGAQ
032890,000492: 36,3611 45020 UPDATEVG STQ CALL
032891,000493: 36,3612 03665 QTEMP1
032892,000494: 36,3613 56447 S40.8 # X-PRODUCT STEERING
032893,000495: 36,3614 43014 BON BON
032894,000496: 36,3615 01307 XDELVFLG
032895,000497: 36,3616 03665 QTEMP1
032896,000498: 36,3617 03705 NORMSW
032897,000499: 36,3620 75633 180SETUP
032898,000500: 36,3621 45345 DLOAD DSU
032899,000501: 36,3622 01235 PIPTIME
032900,000502: 36,3623 03763 TIGSAVE
032901,000503: 36,3624 50025 DSU BMN
032902,000504: 36,3625 03432 TNEWA
032903,000505: 36,3626 75656 GETRANS
032904,000506: 36,3627 43345 DLOAD DAD
032905,000507: 36,3630 03763 TIGSAVE
032906,000508: 36,3631 03432 TNEWA
032907,000509: 36,3632 03765 STORE TIGSAVEP
032908,000510: 36,3633 77776 180SETUP EXIT
032909,000511: 36,3634 10755 CCS PHASE2
032910,000512: 36,3635 13663 TCF NO.9
032911,000513: 36,3636 34737 CAF PRIO10
032912,000514: 36,3637 00004 INHINT
032913,000515: 36,3640 05105 TC FINDVAC
032914,000516: 36,3641 E7,1706 EBANK= VG
032915,000517: 36,3641 02707 56067 2CADR S40.9 # LAMBERT VTOGAIN
032916,000518:
032917,000519: 36,3643 05327 TC 2PHSCHNG
032918,000520: 36,3644 00172 OCT 00172 # 2.17SPOT FOR S40.9
032919,000521: 36,3645 10035 OCT 10035 # HERE AND REREADAC AFTER RESTART
032920,000522:
032921,000523: 36,3646 06037 ENDSTEER TC INTPRET
032922,000524: 36,3647 77745 DLOAD
032923,000525: 36,3650 03765 TIGSAVEP
032924,000526: 36,3651 27763 STOVL TIGSAVE
032925,000527: 36,3652 01221 RN
032926,000528: 36,3653 26323 STOVL RINIT
032927,000529: 36,3654 01227 VN
032928,000530: 36,3655 02331 STORE VINIT
032929,000531: 36,3656 45345 GETRANS DLOAD DSU
032930,000532: 36,3657 03631 TPASS4
032931,000533: 36,3660 01235 PIPTIME
032932,000534: 36,3661 37452 STCALL DELLT4
032933,000535: 36,3662 03665 QTEMP1
032934,000536:
032935,000537: # Page 762
032936,000538: 36,3663 06037 NO.9 TC INTPRET
032937,000539: 36,3664 77650 GOTO
032938,000540: 36,3665 03665 QTEMP1
032939,000541: 36,3666 06037 STEERING TC INTPRET
032940,000542:
032941,000543: 36,3667 77624 CALL
032942,000544: 36,3670 75611 UPDATEVG
032943,000545: 36,3671 77776 EXIT
032944,000546:
032945,000547: 36,3672 E7,1515 EBANK= DVCNTR
032946,000548: 36,3672 00004 NSTEER INHINT
032947,000549: 36,3673 35016 CA EBANK7
032948,000550: 36,3674 54003 TS EBANK
032949,000551: 36,3675 40076 CS FLAGWRD2 # CHECK IMPULSE SWITCH. IT IS SET EITHER
032950,000552: 36,3676 74743 MASK IMPULBIT # BY S40.13 IF TBURN<6 SECS OR BY S40.8 IF
032951,000553: 36,3677 10000 CCS A # STEERING IS ALMOST DONE.
032952,000554:
032953,000555: 36,3700 13705 TCF +5 # IMPULSW = 0 EXIT
032954,000556: 36,3701 40103 CS FLAGWRD7 # IMPULSW = 1 WHY? CHECK IDLEFLAG
032955,000557: 36,3702 74745 MASK IDLEFBIT # (IDLEFLAG = 0 --> DVMON ON)
032956,000558: 36,3703 10000 CCS A
032957,000559: 36,3704 13707 TCF +3 # DVMON ON --> THRUSTING --> IMPULSW VIA S40.8
032958,000560: 36,3705 04635 TC POSTJUMP # DVMON OFF --> IMPULSW ON VIA S40.13 --> EXIT
032959,000561: 36,3706 65770 CADR SERVEXIT
032960,000562:
032961,000563: 36,3707 04674 TC IBNKCALL
032962,000564: 36,3710 40165 CADR STOPRATE
032963,000565:
032964,000566: 36,3711 05516 TC DOWNFLAG # TURN OFF IMPULSW
032965,000567: 36,3712 00044 ADRES IMPULSW
032966,000568:
032967,000569: 36,3713 05504 TC UPFLAG
032968,000570: 36,3714 00161 ADRES IDLEFLAG # TURN OFF DVMON
032969,000571:
032970,000572: 36,3715 00004 INHINT
032971,000573: 36,3716 00006 EXTEND
032972,000574: 36,3717 31442 DCA TIG
032973,000575: 36,3720 52155 DXCH MPAC
032974,000576: 36,3721 00006 EXTEND
032975,000577: 36,3722 40025 DCS TIME2
032976,000578: 36,3723 20155 DAS MPAC
032977,000579: 36,3724 07257 TC TPAGREE
032978,000580: 36,3725 30155 CAE MPAC +1
032979,000581: 36,3726 03735 TC GETDT
032980,000582: 36,3727 05173 TC TWIDDLE
032981,000583: 36,3730 03542 ADRES ENGOFTSK
032982,000584: 36,3731 05327 TC 2PHSCHNG
032983,000585: 36,3732 40114 OCT 40114 # ENGOFTSK (ENGINOFF)
032984,000586: 36,3733 00035 OCT 00035 # SERVICER -- REREADAC
032985,000587: # Page 763
032986,000588: 36,3734 15155 TCF ENDOFJOB
032987,000589:
032988,000590: 36,3735 10000 GETDT CCS A
032989,000591: 36,3736 13741 TCF +3
032990,000592: 36,3737 13741 TCF +2
032991,000593: 36,3740 34755 CAF ZERO
032992,000594: 36,3741 64753 AD ONE
032993,000595: 36,3742 56001 XCH L
032994,000596: 36,3743 34755 CAF ZERO
032995,000597: 36,3744 53517 DXCH TGO
032996,000598: 36,3745 31517 CA TGO +1
032997,000599: 36,3746 00002 TC Q
032998,000600:
032999,000601: # **************************************
033000,000602:
033001,000603: 36,3747 00000 SEC15DP OCT 00000 # DON'T SEPARATE
033002,000604: 36,3750 02734 SEC15 DEC 1500 B-14 # DON'T SEPARATE
033003,000605: 36,3751 00000 05670 SEC30DP 2DEC 3000 B-28
033004,000606:
033005,000607: 36,3753 00000 SEC45DP OCT 00000 # DON'T MOVE FROM JUST BEFORE SEC45
033006,000608: 36,3754 10624 SEC45 DEC 4500 B-14
033007,000609: 36,3755 00000 5SECDP OCT 00000 # DON'T MOVE FROM JUST BEFORE 5SEC
033008,000610: 36,3756 00764 5SEC DEC 500 B-14
033009,000611: 36,3757 05050 26SECS DEC 2600 B-14
033010,000612: 36,3760 04050 V16N40 VN 1640
033011,000613: 36,3761 04125 V16N85B VN 1685
033012,000614: 36,3762 04123 V1683 VN 1683
033013,000615: 36,3763 4777 SEC01 = 1SEC
033014,000616: 36,3763 36,2055 ACADN85 = P41TABLE +2
033015,000617:
033016,000618: 36,3763 E7,1622 EBANK= DELVIMU
033017,000619: 36,3763 03462 74067 ACADN83 2CADR CALCN83
033018,000620:
033019,000621: # ******************************************
033020,000622: # Page 764
033021,000623: # PROGRAM DESCRIPTION: S40.1 DATE: 15 NOV 66
033022,000624: # MOD N02 LOG SECTION P40-P47
033023,000625: # MOD BY ZELDIN AND ADAPTED BY TALAYCO
033024,000626:
033025,000627: # FUNCTIONAL DESCRIPTION
033026,000628: # COMPUTE INITIAL THRUST DIRECTION(UT) AND INITIAL VALUE OF VG
033027,000629: # VECTOR(VGTIG).
033028,000630:
033029,000631: # CALLING SEQUENCE
033030,000632: # L CALL
033031,000633: # L+1 S40.1
033032,000634:
033033,000635: # NORMAL EXIT MODE
033034,000636: # AT L+2 OF CALLING SEQUENCE (GOTO L+2) NORMAL RETURN OR
033035,000637: # ERROR RETURN IF NOSOFLAG =1
033036,000638:
033037,000639: # SUBROUTINES CALLED
033038,000640: # LEMPREC
033039,000641: # INITVEL
033040,000642: # CALCGRAV
033041,000643: # MIDGIM
033042,000644:
033043,000645: # ALARM OR ABORT EXIT MODES
033044,000646: # L+2 OF CALLING SEQUENCE, UNSOLVABLE CONIC IF NOSOFLAG=1
033045,000647:
033046,000648: # ERASABLE INITIALIZATION REQUIRED
033047,000649: # WEIGHT/G ANTICIPATED VEHICLE MASS DP B16 KGM
033048,000650: # XDELVFLG 1=DELTA-V MANEUVER, 0=AIMPT STEER
033049,000651: # F THRUST FOR ENGINE USED
033050,000652: # IF DELTA-V MANEUVER:
033051,000653: # DELVSIN SPECIFIED DELTA-V REQUIRED IN
033052,000654: # INERTIAL COORDS. OF ACTIVE VEHICLE
033053,000655: # AT TIME OF IGNITION VECTOR B7 M/CS
033054,000656: # DELVSAB MAG. OF DELVSIN DP B7 M/CS
033055,000657: # RTIG POSITION AT TIME OF IGNITION VECTOR B29 M
033056,000658: # VTIG VELOCITY AT TIME OF IGNITION VECTOR B7 M/CS.
033057,000659: # IF AIMPT STEER:
033058,000660: # TIG TIME OF IGNITION DP B28 CS
033059,000661: # RTARG POSITION TARGET TIME VECTOR B29 M
033060,000662: # CSTEER C FOR STEER LAW DP B2
033061,000663: # DLTARG TARGET TIME-IGNITION TIME DP B28 CS
033062,000664:
033063,000665: # OUTPUT
033064,000666: # UT DESIRED THRUST DIRECTION VECT. B2 M/(CS.CS)
033065,000667: # VGTIG INITIAL VALUE OF VELOCITY
033066,000668: # TO BE GAINED (INERT. COORD.) VECTOR B7 M/CS
033067,000669: # DELVLVC VGTIG IN LOC. VERT. COORDS. B7 M/CS
033068,000670: # BDT V REQUIRED AT TIG -V REQUIRED AT (TIG-2SEC)
033069,000671: # -GDT FOR S40.13 VECT B7 M/CS
033070,000672: # RTIG CALC IN S40.1B (AIMPT) FOR S40.2,3 VECTOR B27M
033071,000673: # POSITION AT TIME OF IGNITION
033072,000674:
033073,000675: # DEBRIS QTEMP1
033074,000676: # MPAC, QPRET
033075,000677: # PUSHLIST
033076,000678:
033077,000679: 14,2347 BANK 14
033078,000680: 27,2000 SETLOC P40S1
033079,000681: 27,2000 BANK
033080,000682: # Page 765
033081,000683: 27,2246 COUNT* $$/S40.1
033082,000684: 27,2246 71220 S40.1 STQ DLOAD
033083,000685: 27,2247 03632 QTEMP
033084,000686: 27,2250 03442 TIG
033085,000687: 27,2251 03763 STORE TIGSAVE
033086,000688: 27,2252 77614 DELVTEST BOFF
033087,000689: 27,2253 01347 XDELVFLG
033088,000690: 27,2254 56336 S40.1B
033089,000691: 27,2255 77201 CALCTHET SETPD VLOAD
033090,000692: 27,2256 00001 0
033091,000693: 27,2257 03650 VTIG
033092,000694: 27,2260 02331 STORE VINIT
033093,000695: 27,2261 53435 VXV UNIT
033094,000696: 27,2262 03642 RTIG
033095,000697: 27,2263 27673 STOVL UT # UP IN UT
033096,000698: 27,2264 03642 RTIG
033097,000699: 27,2265 02323 STORE RINIT
033098,000700: 27,2266 65236 VSQ PDDL
033099,000701: 27,2267 00045 36D
033100,000702: 27,2270 56205 DMP DDV
033101,000703: 27,2271 16412 THETACON
033102,000704: 27,2272 41205 DMP DMP
033103,000705: 27,2273 03664 DELVSAB
033104,000706: 27,2274 01245 WEIGHT/G
033105,000707: 27,2275 77671 DDV
033106,000708: 27,2276 03735 F
033107,000709: 27,2277 24017 STOVL 14D
033108,000710: 27,2300 03656 DELVSIN
033109,000711:
033110,000712: 27,2301 74241 DOT VXSC
033111,000713: 27,2302 03673 UT
033112,000714: 27,2303 03673 UT
033113,000715: 27,2304 41552 VSL2 PUSH # (DELTAV.UP)UP SCALED AT 2(+7) P.D.L. 0
033114,000716: 27,2305 65245 BVSU PDDL # DELTA VP SCALED AT 2(+7) P.D.L. 6
033115,000717: 27,2306 03656 DELVSIN
033116,000718: 27,2307 00017 14D
033117,000719: 27,2310 63356 SIN PDVL
033118,000720: 27,2311 00007 6D
033119,000721: 27,2312 53435 VXV UNIT
033120,000722: 27,2313 03673 UT
033121,000723: 27,2314 45561 VXSC STADR
033122,000724: 27,2315 50076 STOVL VGTIG # UNIT(VP X UP)SIN(THETAT/2) IN VGTIG.
033123,000725: 27,2316 65256 UNIT PDDL # UNIT(DELTA VP) IN P.D.L. 6
033124,000726: 27,2317 00017 14D
033125,000727: 27,2320 74346 COS VXSC
033126,000728: 27,2321 74255 VAD VXSC
033127,000729: 27,2322 03701 VGTIG
033128,000730: 27,2323 00045 36D
033129,000731: 27,2324 53352 VSL2 VAD
033130,000732: 27,2325 77626 STADR
033131,000733: # Page 766
033132,000734: 27,2326 74076 STORE VGTIG # VG IGNITION SCALED AT 2(+7) M/CS
033133,000735:
033134,000736: 27,2327 77656 UNIT
033135,000737: 27,2330 27673 STOVL UT # THRUST DIRECTION SCALED AT 2(+1)
033136,000738: 27,2331 03701 VGTIG
033137,000739: 27,2332 45006 PUSH CALL
033138,000740: 27,2333 15733 GET.LVC # VGTIG IN LV COOR AT 2(+7) M/CS IN DELVLVC
033139,000741: 27,2334 77650 GOTO
033140,000742: 27,2335 03632 QTEMP
033141,000743: 27,2336 77745 S40.1B DLOAD
033142,000744: 27,2337 03442 TIG
033143,000745: 27,2340 00041 STORE TDEC1
033144,000746: 27,2341 77621 BDSU
033145,000747: 27,2342 03631 TPASS4
033146,000748: 27,2343 37452 STCALL DELLT4 # INTERCEPT TIME -- TIG.
033147,000749: 27,2344 27057 LEMPREC
033148,000750: 27,2345 40375 VLOAD SETPD # LOAD STATE VECTOR AT TIG FOR INITVEL.
033149,000751: 27,2346 00001 RATT
033150,000752: 27,2347 00001 0
033151,000753: 27,2350 03642 STORE RTIG
033152,000754: 27,2351 02323 STORE RINIT
033153,000755: 27,2352 77656 UNIT
033154,000756: 27,2353 27537 STOVL UNIT/R/
033155,000757: 27,2354 00007 VATT
033156,000758: 27,2355 03650 STORE VTIG
033157,000759: 27,2356 02331 STORE VINIT
033158,000760: 27,2357 65345 DLOAD PDDL # NUMIT = 0
033159,000761: 27,2360 06522 ZEROVECS
033160,000762: 27,2361 16406 EPS1
033161,000763: 27,2362 43214 BOFF DAD
033162,000764: 27,2363 03745 NORMSW
033163,000765: 27,2364 56366 SMALLEPS
033164,000766: 27,2365 16410 EPS2 # EPSILON4 = 10 DEGREES OR 45 DEGREES.
033165,000767: 27,2366 66006 SMALLEPS PUSH SXA,1
033166,000768: 27,2367 02776 RTX1
033167,000769: 27,2370 45134 SXA,2 CALL
033168,000770: 27,2371 02777 RTX2
033169,000771: 27,2372 22000 INITVEL
033170,000772: 27,2373 41575 VLOAD PUSH
033171,000773: 27,2374 02366 DELVEET3 # VGTIG = VR - VN.
033172,000774: 27,2375 03701 STORE VGTIG
033173,000775: 27,2376 77656 UNIT # UT = UNIT (VGTIG)
033174,000776: 27,2377 17673 STODL UT
033175,000777: 27,2400 00045 36D
033176,000778: 27,2401 37664 STCALL VGDISP # CONVERT VGTIG (IN PUSHLIST) TO LOCAL
033177,000779: 27,2402 15733 GET.LVC # VERTICAL COORDINATES.
033178,000780: 27,2403 77650 GOTO
033179,000781: 27,2404 03632 QTEMP
033180,000782:
033181,000783: 27,2405 00707 03434 EPS1 2DEC* 2.777777778 E-2* # 10 DEGREES AT 1 REVOLUTION
033182,000784:
033183,000785: # Page 767
033184,000786: 27,2407 03070 34344 EPS2 2DEC* 9.722222222 E-2* # 35 DEGREES AT 1 REVOLUTION.
033185,000787:
033186,000788: 27,2411 00024 13714 THETACON 2DEC .31830989 B-8
033187,000789:
033188,000790: # Page 768
033189,000791: # SUBROUTINE NAME: S40.2,3 MOD. NO. 3, DATE APRIL 4, 1967
033190,000792: # MODIFICATION BY: JONATHON D. ADDELSTON (ADAMS ASSOCIATES)
033191,000793: # MOD. NO. 4: JULY 18, 1967: PETER ADLER (MIT/IL)
033192,000794: # MOD. NO. 5: OCTOBER 18, 1967: PETER ADLER (MIT/IL)
033193,000795: # ORIGINALLY BY: SAYDEAN ZELDIN (MIT INSTRUMENTATION LAB) AND RICHARD TALAYCO (SYSTEM DELVELOPMENT CORP)
033194,000796:
033195,000797: # S40.2,3 COMPUTES "POINTVSM" WHICH IS THE HALF-UNIT DESIRED THRUST VECTOR IN STABLE-MEMBER COORDINATES FROM "UT"
033196,000798: # WHICH IS THE SAME VECTOR IN REFERENCE COORDINATES. IT DETERMINES THE CORRECT VALUES FOR "SCAXIS" USING THE +X
033197,000799: # AXIS FOR DPS, APS, AND RCS BURNS. THE "WINGS-LEVEL HEADS-UP" LM ORIENTATION IS THEN COMPUTED IN REFERENCE
033198,000800: # COORDINATES. THESE VECTORS ALSO DEFINE THE "PREFERRED IMU ORIENTATION". UPON COMPLETION OF THIS CALCULATION,
033199,000801: # THE "PREFERRED ATTITUDE COMPUTED" FLAG IS SET (PFRATFLG).
033200,000802:
033201,000803: # CALLING SEQUENCE:
033202,000804: # L CALL # INTERPRETIVE CALL.
033203,000805: # L +1 S40.2,3
033204,000806: # L +2 (RETURN) # GIMBAL ANGLE VECTOR IN MPAC.
033205,000807:
033206,000808: # SUBROUTINES CALLED: NONE.
033207,000809:
033208,000810: # NORMAL RETURN: L +2 (SEE CALLING SEQUENCE ABOVE).
033209,000811:
033210,000812: # ALARM/ABORT MODES: NONE.
033211,000813:
033212,000814: # INPUT:
033213,000815: # 1. REFSMMAT MATRIX FROM REFERENCE TO STABLE-MEMBER COORDINATES SCALED AT 2.
033214,000816: # 2. UT HALF-UNIT DESIRED THRUST DIRECTION.
033215,000817: # 3. RTIG POSITION AT TIG IN REFERENCE COORDINATES.
033216,000818:
033217,000819: # OUTPUT:
033218,000820: # 1. `XSCREF' WINGS-LEVEL HEADS-UP LM ORIENTATION
033219,000821: # `YSCREF' IN REFERENCE COORDINATES
033220,000822: # `ZSCREF' (PREFERRED IMU ORIENTATION).
033221,000823: # 2. POINTVSM DESIRED THRUST DIRECTION IN STABLE-MEMBER COORDINATES.
033222,000824: # 3. SCAXIS HALF-UNIT OF AXIS TO ALIGN IN STABLE-MEMBER COORDINATES.
033223,000825: # 4. PFRATFLG INTERPRETIVE FLAG. ON: PREFERRED ORIENTATION COMPUTED; OFF: NOT COMPUTED.
033224,000826:
033225,000827: # DEBRIS: NONE
033226,000828: # Page 769
033227,000829:
033228,000830: 27,2413 COUNT* $$/S40.2
033229,000831: 27,2413 77775 S40.2,3 VLOAD # UT: DESIRED THRUST DIRECTION (HALF-UNIT)
033230,000832: 27,2414 03673 UT # (PUT INTO TOP OF PUSH-DOWN-LIST.)
033231,000833: 27,2415 76521 MXV VSL1 # TRANSFORM THRUST DIRECTION TO STABLE-
033232,000834: 27,2416 01734 REFSMMAT # MEMBER FROM REFERENCE COORDS (RESCALE).
033233,000835: 27,2417 27773 STOVL POINTVSM # SAVE FOR "VECPOINT" ROUTINE (LEMMANU).
033234,000836: 27,2420 06520 UNITX # SCAXIS SET TO +X, FOR P40 AND P42 AND
033235,000837: 27,2421 27765 STOVL SCAXIS # FOR P41 IF RCS NOT -X,+Y,-Y,+Z,-Z.
033236,000838:
033237,000839: 27,2422 03673 UT # ASSUME +X BURN ALWAYS, EVEN FOR RCS.
033238,000840: 27,2423 03607 PLUSX STORE XSCREF # XSCREF = UT (DESIRED THRUST DIRECTION)
033239,000841: 27,2424 53435 VXV UNIT # RTIG = POSITION AT TIME-OF-IGNITION.
033240,000842: 27,2425 03642 RTIG # YSCREF = UNIT(UT X RTIG)
033241,000843: 27,2426 46125 PDDL BHIZ
033242,000844: 27,2427 00045 36D # TEST MAGNITUDE OF UT X RTIG
033243,000845: 27,2430 56441 FIXY # IF SMALL, USE UT X VTIG AS YSC
033244,000846: 27,2431 45575 STORY VLOAD STADR
033245,000847: 27,2432 74162 STORE YSCREF
033246,000848: 27,2433 76435 VXV VSL1 # COMPUTE (YSCREF X XCREF), BUT FOR A
033247,000849: 27,2434 03607 XSCREF # RIGHT HANDED SYSTEM, NEED (X CROSS Y).
033248,000850: 27,2435 77676 VCOMP # ZSCREF = - (YSCREF X XSCREF)
033249,000851: 27,2436 03623 STORE ZSCREF # = + (XSCREF X YSCREF)
033250,000852:
033251,000853: 27,2437 43414 SET RVQ
033252,000854: 27,2440 01073 PFRATFLG
033253,000855: 27,2441 47375 FIXY VLOAD VXV # IN THIS CASE,
033254,000856: 27,2442 03607 XSCREF # YSCREF = UNIT(XSCREF X VTIG)
033255,000857: 27,2443 03650 VTIG
033256,000858: 27,2444 41456 UNIT PUSH
033257,000859: 27,2445 77650 GOTO
033258,000860: 27,2446 56431 STORY
033259,000861: # Page 770
033260,000862: # SUBROUTINE S40.8
033261,000863: # MODIFIED APRIL 3, 1968 BY PETER ADLER, MIT/IL
033262,000864:
033263,000865: # DESCRIPTION
033264,000866: # S40.8 UPDATES THE VELOCITY-TO-BE-GAINED VECTOR, VG, (AND FOR LAMBERT TARGETTED BURNS ALSO EXTRAPOLATES VG
033265,000867: # USING THE BDT VECTOR) COMPUTES THE TIME FOR ISSUING THE ENGINE OFF COMMAND, TGO, AND CALLS THE ROUTINE
033266,000868: # "FINDCDUW", WHICH GENERATES STEERING COMMANDS FOR THE DAP.
033267,000869:
033268,000870: # CALLING SEQUENCE
033269,000871: # L-1 CALL
033270,000872: # L S40.8
033271,000873: # L+1 INTERPRETIVE RETURN
033272,000874:
033273,000875: # ALARM
033274,000876: # IF VG . DELVREF IS NEGATIVE (VG AND DELVREF OVER 90 DEGREES APART), BYPASS TGO AND STEERING COMPUTATIONS
033275,000877: # AND SET ALARM 1407. RETURN TO CALLER NORMALLY.
033276,000878:
033277,000879: # INPUT AND INITIALIZATION
033278,000880: # VGPREV REFERENCE 2(7) M/CS
033279,000881: # DELVREF REFERENCE 2(7) M/CS
033280,000882: # BDT REFERENCE 2(7) M/CS
033281,000883: # TDECAY TAIL-OFF TIME 2(28) CS
033282,000884: # XDELVFLG 1 = EXTERNAL DELTA-V; 0 = LAMBERT (AIMPOINT)
033283,000885: # STEERSW 1 = DO STEERING AND TGO COMPUTATIONS; 0 = VG UPDATE ONLY
033284,000886: # FIRSTFLG 1 = GONE TO LAMBERT AT LEAST ONCE; 0 = HAVEN'T GONE TO LAMBERT YET.
033285,000887:
033286,000888: # NOTE: VGTIG EQUALS VGPREV
033287,000889:
033288,000890: # OUTPUT
033289,000891: # STEERSW SEE INPUT
033290,000892: # INPULSW 1 = ENGINE OFF IN TGO CENTISECONDS; 0 = CONTINUE BURN
033291,000893: # TGO TIME TO CUT-OFF 2(28) CS
033292,000894: # SEE FINDCDUW FOR STEERING OUTPUTS.
033293,000895:
033294,000896: # SUBROUTINE CALLED
033295,000897: # FINDCDUW
033296,000898:
033297,000899: # DEBRIS
033298,000900: # MPACS, PUSHLIST
033299,000901:
033300,000902: 27,2447 COUNT* $$/S40.8
033301,000903: # Page 771
033302,000904: 27,2447 77614 S40.8 BOF # GENERATE VR IF NOT EXTERNAL DELTA-V BURN
033303,000905: 27,2450 01347 XDELVFLG
033304,000906: 27,2451 56731 RASTEER1
033305,000907: 27,2452 52375 VLOAD VSU
033306,000908: 27,2453 03701 VGPREV
033307,000909: 27,2454 03527 DELVREF
033308,000910: 27,2455 03707 VGAIN* STORE VG # VELOCITY TO BE GAINED SCALED AT (7) M/CS
033309,000911: 27,2456 76521 MXV VSL1
033310,000912: 27,2457 01734 REFSMMAT
033311,000913: 27,2460 03254 STORE UNFC/2
033312,000914: 27,2461 51575 BDTOK VLOAD ABVAL
033313,000915: 27,2462 03707 VG
033314,000916: 27,2463 03664 STORE VGDISP
033315,000917: 27,2464 77201 TGDCALC SETPD VLOAD
033316,000918: 27,2465 00001 0
033317,000919: 27,2466 03707 VG
033318,000920: 27,2467 27701 STOVL VGPREV
033319,000921: 27,2470 03527 DELVREF
033320,000922: 27,2471 57414 BOFF VCOMP
033321,000923: 27,2472 01344 STEERSW
033322,000924: 27,2473 00052 QPRET
033323,000925: 27,2474 77656 UNIT
033324,000926: 27,2475 41441 DOT PUSH
033325,000927: 27,2476 03707 VG
033326,000928: 27,2477 56244 BPL DDV
033327,000929: 27,2500 56526 ALARMIT # DELV IS MORE THAN 90 DEGREES FROM VG.
033328,000930: 27,2501 03743 VEX
033329,000931: 27,2502 41215 DAD DMP
033330,000932: 27,2503 06520 DPHALF
033331,000933: 27,2504 56261 SR DDV
033332,000934: 27,2505 20613 10D
033333,000935: 27,2506 00045 36D
033334,000936: 27,2507 43205 DMP DAD
033335,000937: 27,2510 16535 -FOURDT
033336,000938: 27,2511 03741 TDECAY
033337,000939: 27,2512 03517 STORE TGO
033338,000940: 27,2513 77615 DAD
033339,000941: 27,2514 01235 PIPTIME
033340,000942: 27,2515 17442 STODL TIG
033341,000943: 27,2516 03517 TGO
033342,000944: 27,2517 51025 DSU BPL
033343,000945: 27,2520 16537 FOURSECS # 400 CS
033344,000946: 27,2521 61111 FINDCDUW -2
033345,000947: 27,2522 43014 SET CLRGO
033346,000948: 27,2523 01066 IMPULSW
033347,000949: 27,2524 01224 STEERSW
033348,000950: 27,2525 00052 QPRET
033349,000951:
033350,000952: 27,2526 77776 ALARMIT EXIT
033351,000953:
033352,000954: # Page 772
033353,000955: 27,2527 05567 TC ALARM
033354,000956: 27,2530 01407 OCT 01407
033355,000957: 27,2531 06037 TC INTPRET
033356,000958: 27,2532 77650 GOTO # SKIP TGO COMPUTATION BUT CALL FINDCDUW.
033357,000959: 27,2533 61111 FINDCDUW -2 # FINDCDUW WILL EXIT TO UPDATEVG +3.
033358,000960:
033359,000961: 27,2534 77715 77777 -FOURDT 2DEC -800 B-18 # -4 (200 CS.) B(-18)
033360,000962: 27,2536 00000 00620 FOURSECS 2DEC 400 B-28 # 400 CS SCALED AT 2(+28) CS
033361,000963: 27,2540 E7,1742 2VEXHUST = VEX
033362,000964:
033363,000965: # Page 773
033364,000966: # NAME: S40.13 -- TIMEBURN
033365,000967:
033366,000968: # FUNCTION (1) DETERMINE WHETHER A GIVEN COMBINATION OF VELOCITY TO
033367,000969: # BE GAINED AND ENGINE CHOICE RESULT IN A BURN TIME
033368,000970: # SUFFICIENT TO ALLOW STEERING AT THE VEHICLE DURING THE
033369,000971: # BURN
033370,000972: # (2) THE MAGNITUDE OF THE RESULTING BURN TIME -- IF IT
033371,000973: # IS SHORT -- AND THE ASSOCIATED TIME OF THE ENGINE OFF
033372,000974: # SIGNAL
033373,000975:
033374,000976: # CALLING SEQUENCE VIA FINDVAC AS A NEW JOB
033375,000977:
033376,000978: # INPUT VGTIG -- VELOCITY TO BE GAINED VECTOR (METERS/CS) AT +7
033377,000979: # WEIGHT/G -- MASS OF VEHICLE IN KGM AT +16
033378,000980: # F -- APS ENGINE THRUST IN M.NEWTONS AT +7
033379,000981: # AND ALSO FOR RCS ENGINE
033380,000982: # MDOT -- RATE OF DECREASE OF VEHICLE MASS DURING ENGINE
033381,000983: # BURN IN KILOGRAMS/CS AT +3. THIS SCALING MAY
033382,000984: # REQUIRE MODIFICATION FOR SATURN BURNS.
033383,000985: # ENG1FLAG -- SWITCH TO DECIDE WHETHER APS OR DPS ENGINE IS USED
033384,000986: # =0 DPS
033385,000987: # =1 APS
033386,000988:
033387,000989: # OUTPUT IMPULSW ZERO FOR STEERING
033388,000990: # ONE FOR ATTITUDE HOLD
033389,000991: # NOTHROTL ZERO FOR THROTTLING
033390,000992: # ONE TO INHIBIT THROTTLING
033391,000993: # TGO TIME TO BURN IN CS
033392,000994:
033393,000995: # THE QUANTITY M.NEWTON = 10000 NEWTONS WILL BE USED TO EXPRESS
033394,000996: # FORCE.
033395,000997:
033396,000998: 27,2540 E7,1516 EBANK= TGO
033397,000999: 27,2540 COUNT* $$/40.13
033398,001000: 27,2540 06037 S40.13 TC INTPRET
033399,001001: 27,2541 43001 SETPD CLEAR
033400,001002: 27,2542 00001 00D
033401,001003: 27,2543 01266 IMPULSW # ASSUME NO STEERING UNTIL FOUND OTHERWISE
033402,001004: 27,2544 51575 VLOAD ABVAL
033403,001005: 27,2545 03701 VGTIG # VELOCITY TO BE GAINED AT +7
033404,001006: 27,2546 41325 PDDL DMP # 00D = MAG OF VGTIG AT +7
033405,001007: 27,2547 21021 4SEC(17) # CORRECT VG FOR 4 SECS OF 2 JET ULLAGE
033406,001008: 27,2550 34017 FRCS2
033407,001009: 27,2551 72471 DDV SL1 # SCALE
033408,001010: 27,2552 01245 WEIGHT/G
033409,001011: 27,2553 41421 BDSU PUSH
033410,001012: 27,2554 43014 BOFF SET
033411,001013: 27,2555 05342 APSFLAG
033412,001014: 27,2556 56626 S40.13D # FOR DPS ENGINE
033413,001015: 27,2557 02463 NOTHROTL
033414,001016: 27,2560 56345 DLOAD DDV # 00D = MAG OF VGTIG CORRECTED
033415,001017: 27,2561 16001 K1VAL # M.NEWTONS-CS AT +24
033416,001018: 27,2562 01245 WEIGHT/G
033417,001019: 27,2563 50021 BDSU BMN
033418,001020: # Page 774
033419,001021: 27,2564 00001 00D
033420,001022: 27,2565 56610 S40.131 # TGO LESS THAN 100 CS
033421,001023: 27,2566 41325 PDDL DMP # 02D = TEMP1 AT +7
033422,001024: 27,2567 03737 MDOT
033423,001025:
033424,001026: # MDOT REPRESENTS THE RATE OF DECREASE OF VEHICLE MASS DURING ENGINE
033425,001027: # BURN IN KILOGRAMS/CS. WHEN SATURN IS USED, THE SCALING MAY
033426,001028: # REQUIRE ADJUSTMENT.
033427,001029:
033428,001030: 27,2570 16700 3.5SEC # 350 CS AT +14
033429,001031: 27,2571 65221 BDSU PDDL
033430,001032: 27,2572 01245 WEIGHT/G
033431,001033: 27,2573 03735 F
033432,001034: 27,2574 60405 DMP SR2 # SCALE
033433,001035: 27,2575 16702 5SECS
033434,001036: 27,2576 41471 DDV PUSH # 04D = TEMP2
033435,001037: 27,2577 51021 BDSU BPL
033436,001038: 27,2600 00003 02D
033437,001039: 27,2601 56626 S40.13D
033438,001040: 27,2602 55345 DLOAD BDDV
033439,001041: 27,2603 43205 DMP DAD
033440,001042: 27,2604 16702 5SECS
033441,001043: 27,2605 16676 1SEC2D # 100 CS AT +14
033442,001044: 27,2606 77650 GOTO
033443,001045: 27,2607 56616 S40.132
033444,001046: 27,2610 41345 S40.131 DLOAD DMP
033445,001047: 27,2611 01245 WEIGHT/G
033446,001048: 27,2612 41542 SR1 PUSH
033447,001049: 27,2613 56215 DAD DDV
033448,001050: 27,2614 16003 K2VAL # M.NEWTON CS AT +24
033449,001051: 27,2615 16005 K3VAL # M.NEWTON CS AT +10
033450,001052: 27,2616 77414 S40.132 SET EXIT
033451,001053: 27,2617 01066 IMPULSW
033452,001054: 27,2620 07257 S40.132* TC TPAGREE
033453,001055: 27,2621 30154 CA MPAC
033454,001056: 27,2622 56001 XCH L
033455,001057: 27,2623 34755 CA ZERO
033456,001058: 27,2624 53517 DXCH TGO
033457,001059: 27,2625 12650 TCF S40.134
033458,001060:
033459,001061: 27,2626 41345 S40.13D DLOAD DMP # FOR DPS ENGINE
033460,001062: 27,2627 00001 00D
033461,001063: 27,2630 01245 WEIGHT/G
033462,001064: 27,2631 43006 PUSH BON
033463,001065: 27,2632 05302 APSFLAG
033464,001066: 27,2633 56671 APSTGO
033465,001067: 27,2634 43071 DDV CLEAR
033466,001068: 27,2635 16007 S40.136
033467,001069: 27,2636 02663 NOTHROTL
033468,001070: 27,2637 41400 BOV PUSH
033469,001071: # Page 775
033470,001072: 27,2640 56653 S40.130V
033471,001073: 27,2641 51025 S40.127 DSU BPL
033472,001074: 27,2642 16704 6SEC # 600.0 CS AT +14
033473,001075: 27,2643 56661 S40.138
033474,001076: 27,2644 52015 DAD GOTO
033475,001077: 27,2645 16704 6SEC
033476,001078: 27,2646 56616 S40.132
033477,001079: 27,2647 77776 S40.133 EXIT
033478,001080: 27,2650 05353 S40.134 TC PHASCHNG
033479,001081: 27,2651 00003 OCT 00003
033480,001082: 27,2652 05155 TC ENDOFJOB
033481,001083: 27,2653 40545 S40.130V DLOAD SR4 # RECOMPUTED TGO IN TIMER UNITS
033482,001084: 27,2654 77671 DDV
033483,001085: 27,2655 16011 S40.136_ # S40.136 SHIFTED LEFT 10
033484,001086: 27,2656 03517 STORE TGO
033485,001087: 27,2657 77776 EXIT
033486,001088: 27,2660 12650 TCF S40.134 # REJOIN COMMON CODING FOR RESTART PROTECT
033487,001089:
033488,001090: 27,2661 51025 S40.138 DSU BPL
033489,001091: 27,2662 16706 89SECS
033490,001092: 27,2663 56666 STORETGO
033491,001093: 27,2664 77614 SET
033492,001094: 27,2665 02463 NOTHROTL
033493,001095: 27,2666 77745 STORETGO DLOAD # LOAD TGO AT 2(14)
033494,001096: 27,2667 77776 EXIT
033495,001097: 27,2670 12620 TCF S40.132*
033496,001098:
033497,001099: 27,2671 62471 APSTGO DDV SL2
033498,001100: 27,2672 34007 FAPS
033499,001101: 27,2673 77650 GOTO
033500,001102: 27,2674 56667 STORETGO +1
033501,001103: 27,2675 00144 00000 1SEC2D 2DEC 100.0 B-14 # 100.0 CS AT +14
033502,001104:
033503,001105: 27,2677 01274 00000 3.5SEC 2DEC 350.0 B-13 # 350 CS AT +13
033504,001106:
033505,001107: 27,2701 00764 00000 5SECS 2DEC 500.0 B-14 # 500.0 CS AT +14
033506,001108:
033507,001109: 27,2703 01130 00000 6SEC 2DEC 600.0 B-14 # 600.0 CS AT +14
033508,001110:
033509,001111: 27,2705 21304 00000 89SECS 2DEC 8900.0 B-14
033510,001112:
033511,001113: # FUNCTION (1) GENERATES REQUIRED VELOCITY AND VELOCITY-TO-BE-GAINED
033512,001114: # VECTORS FOR USE DURING AIMPOINT MANEUVERS EVERY TWO
033513,001115: # COMPUTATION CYCLES (4 SECONDS).
033514,001116: # (2) UPDATES THE B VECTOR WHICH IS USED IN THE FINAL
033515,001117: # CALCULATION OF EXTRAPOLATING THE VELOCITY-TO-BE-GAINED
033516,001118: # THROUGH ONE 2-SECOND INTERVAL INTO THE FUTURE.
033517,001119:
033518,001120: # CALLING SEQUENCE VIA FINDVAC AS NEW JOB.
033519,001121:
033520,001122: # INPUT RN ACTIVE VEHICLE RADIUS VECTOR IN METERS AT +29
033521,001123: # VN ACTIVE VEHICLE VELOCITY VECTOR IN METERS/CS AT +7
033522,001124: # Page 776
033523,001125: # VPREV LAST COMPUTED VELOCITY REQUIRED VECTOR IN
033524,001126: # METERS/CS AT +7.
033525,001127: # TIG TIME OF IGNITION IN CS AT +28.
033526,001128: # DLTARG COMPUTATION CYCLE INTERVAL = 200 CS AT +28.
033527,001129: # PIPTIME TIME OF RN AND VN IN CS AT +28.
033528,001130: # GDT/2 HALF OF VELOCITY GAINED IN DELTA T TIME DUE TO
033529,001131: # ACCELERATION OF GRAVITY IN METERS/CS AT +7.
033530,001132: # DELVREF CHANGE IN VELOCITY DURING LAST 2 SEC IN
033531,001133: # METERS/CS AT +7.
033532,001134:
033533,001135: # OUTPUT VGPREV VELOCITY TO BE GAINED VECTOR IN METERS/CS AT +7.
033534,001136: # VGDISP MAG OF VGPREV FOR DISPLAY PURPOSES.
033535,001137: # VRPREV VELOCTY REQUIRED VECTOR IN METERS/CS AT +7.
033536,001138: # BDT B VECTOR IN METERS/CS AT +7.
033537,001139:
033538,001140: # SUBROUTINES USED INITVEL
033539,001141:
033540,001142: 27,2707 E7,1700 EBANK= VGPREV
033541,001143: 27,2707 COUNT* $$/S40.9
033542,001144: 27,2707 06037 S40.9 TC INTPRET
033543,001145: 27,2710 77601 SETPD
033544,001146: 27,2711 00001 00D
033545,001147: 27,2712 71214 SET DLOAD
033546,001148: 27,2713 01072 AVFLAG # SET AVFLAG FOR LEM ACTIVE
033547,001149: 27,2714 06522 HI6ZEROS
033548,001150: 27,2715 77725 PDDL
033549,001151: 27,2716 16406 EPS1
033550,001152: 27,2717 43214 BOFF DAD # EPSILON4 = 10 OR 45 DEGREES.
033551,001153: 27,2720 03745 NORMSW
033552,001154: 27,2721 56723 EPSSMALL
033553,001155: 27,2722 16410 EPS2
033554,001156: 27,2723 45006 EPSSMALL PUSH CALL
033555,001157: 27,2724 22002 HAVEGUES
033556,001158: 27,2725 77776 ENDS40.9 EXIT
033557,001159: 27,2726 05353 TC PHASCHNG
033558,001160: 27,2727 00002 OCT 2
033559,001161: 27,2730 15155 TCF ENDOFJOB
033560,001162:
033561,001163: 27,2731 51575 RASTEER1 VLOAD ABVAL
033562,001164: 27,2732 01221 RN
033563,001165: 27,2733 53744 LXC,2 SL*
033564,001166: 27,2734 02777 RTX2
033565,001167: 27,2735 57576 0,2
033566,001168: 27,2736 27715 STOVL RMAG
033567,001169: 27,2737 03444 RTARG
033568,001170: 27,2740 47051 VSU RTB
033569,001171: 27,2741 01221 RN
033570,001172: 27,2742 21724 NORMUNX1
033571,001173: 27,2743 17656 STODL IC
033572,001174: 27,2744 00045 36D # C(36D) = ABVAL(C)
033573,001175: 27,2745 53674 XAD,2 SL*
033574,001176: 27,2746 00046 X1
033575,001177: # Page 777
033576,001178: 27,2747 57576 0,2
033577,001179: 27,2750 00037 STORE 30D
033578,001180: 27,2751 41301 NORM DMP
033579,001181: 27,2752 00050 X2
033580,001182: 27,2753 03715 RMAG
033581,001183: 27,2754 57101 NORM XAD,2
033582,001184: 27,2755 00047 X1
033583,001185: 27,2756 00046 X1
033584,001186: 27,2757 77734 SXA,2
033585,001187: 27,2760 03766 MUSCALE
033586,001188: 27,2761 17725 STODL R1C # 2(+56 -X)
033587,001189: 27,2762 00037 30D
033588,001190: 27,2763 65342 SR1 PDDL
033589,001191: 27,2764 03715 RMAG
033590,001192: 27,2765 65342 SR1 PDDL
033591,001193: 27,2766 03723 RTMAG
033592,001194: 27,2767 43342 SR1 DAD
033593,001195: 27,2770 45415 DAD STADR
033594,001196: 27,2771 74044 STORE SS # SS = (R1 + R2 + C)/2
033595,001197: 27,2772 41225 DSU DMP
033596,001198: 27,2773 00037 30D
033597,001199: 27,2774 03721 MU/A
033598,001200: 27,2775 77621 BDSU
033599,001201: 27,2776 03717 MUASTEER
033600,001202: 27,2777 45325 PDDL DSU
033601,001203: 27,3000 03733 SS
033602,001204: 27,3001 03715 RMAG
033603,001205: 27,3002 70501 NORM SR1
033604,001206: 27,3003 00047 X1
033605,001207: 27,3004 41271 DDV DMP
033606,001208: 27,3005 03725 R1C
033607,001209: 27,3006 53664 XSU,2 SL*
033608,001210: 27,3007 00046 X1
033609,001211: 27,3010 57575 1,2
033610,001212: 27,3011 77754 LXA,2
033611,001213: 27,3012 03766 MUSCALE
033612,001214: 27,3013 75366 SQRT SIGN
033613,001215: 27,3014 02673 GEOMSGN
033614,001216: 27,3015 00041 STORE 32D # + OR - A
033615,001217: 27,3016 41345 DLOAD DMP
033616,001218: 27,3017 03733 SS
033617,001219: 27,3020 03721 MU/A
033618,001220: 27,3021 77621 BDSU
033619,001221: 27,3022 03717 MUASTEER
033620,001222: 27,3023 45325 PDDL DSU
033621,001223: 27,3024 03733 SS
033622,001224: 27,3025 03723 RTMAG
033623,001225: 27,3026 70501 NORM SR1
033624,001226: 27,3027 00047 X1
033625,001227: 27,3030 41271 DDV DMP
033626,001228:
033627,001229: # Page 778
033628,001230: 27,3031 03725 R1C
033629,001231: 27,3032 53664 XSU,2 SL*
033630,001232: 27,3033 00046 X1
033631,001233: 27,3034 57575 1,2
033632,001234: 27,3035 65366 SQRT PDDL # -B (NO SIGN)
033633,001235: 27,3036 03733 SS
033634,001236: 27,3037 56225 DSU DDV
033635,001237: 27,3040 00037 30D
033636,001238: 27,3041 03733 SS
033637,001239: 27,3042 41566 SQRT PUSH
033638,001240: 27,3043 67542 SR1 ASIN
033639,001241: 27,3044 65205 DMP PDDL
033640,001242: 27,3045 17216 2PI+3
033641,001243: 27,3046 56325 PDDL DDV
033642,001244: 27,3047 00037 30D
033643,001245: 27,3050 03733 SS
033644,001246: 27,3051 77600 BOV
033645,001247: 27,3052 57053 +1
033646,001248: 27,3053 41366 SQRT DMP
033647,001249: 27,3054 44242 SR3 BDSU
033648,001250: 27,3055 65365 SIGN PDDL
033649,001251: 27,3056 02673 GEOMSGN
033650,001252: 27,3057 17216 2PI+3
033651,001253: 27,3060 45302 SR2 DSU
033652,001254: 27,3061 65205 DMP PDDL
033653,001255: 27,3062 03733 SS
033654,001256: 27,3063 03733 SS
033655,001257: 27,3064 75442 SR3 SQRT
033656,001258: 27,3065 77605 DMP
033657,001259: 27,3066 52525 PDDL SL3
033658,001260: 27,3067 03717 MUASTEER
033659,001261: 27,3070 55366 SQRT BDDV
033660,001262: 27,3071 43225 DSU DAD
033661,001263: 27,3072 03631 TPASS4
033662,001264: 27,3073 01235 PIPTIME
033663,001265: 27,3074 14037 STODL 30D
033664,001266: 27,3075 77765 SIGN
033665,001267: 27,3076 00037 30D # B WITH SIGN
033666,001268: 27,3077 00037 STORE 30D
033667,001269: 27,3100 77214 BON VLOAD
033668,001270: 27,3101 03705 NORMSW
033669,001271: 27,3102 57123 180MESS
033670,001272: 27,3103 03656 IC
033671,001273: 27,3104 53451 VSU UNIT
033672,001274: 27,3105 03537 UNIT/R/
033673,001275: 27,3106 63361 VXSC PDVL
033674,001276: 27,3107 00037 30D
033675,001277: 27,3110 03656 IC
033676,001278: 27,3111 53455 VAD UNIT
033677,001279: 27,3112 03537 UNIT/R/
033678,001280: # Page 779
033679,001281: 27,3113 53361 GETVRVG1 VXSC VAD
033680,001282: 27,3114 00041 32D
033681,001283: 27,3115 53744 GETVRVG2 LXC,2 VSR*
033682,001284: 27,3116 02777 RTX2
033683,001285: 27,3117 57177 0 -1,2
033684,001286: 27,3120 02337 STORE VIPRIME
033685,001287: 27,3121 77650 GOTO
033686,001288: 27,3122 57166 ASTREND -2
033687,001289: 27,3123 50375 180MESS VLOAD DOT
033688,001290: 27,3124 03656 IC
033689,001291: 27,3125 03537 UNIT/R/
033690,001292: 27,3126 77240 BMN VLOAD
033691,001293: 27,3127 57146 NEGPROD
033692,001294: 27,3130 03656 IC
033693,001295: 27,3131 63362 VSR1 PDVL
033694,001296: 27,3132 03537 UNIT/R/
033695,001297: 27,3133 53362 VSR1 VAD
033696,001298: 27,3134 77656 UNIT
033697,001299: 27,3135 57406 PUSH VCOMP # FOR A
033698,001300: 27,3136 75235 VXV SIGN
033699,001301: 27,3137 02674 UN
033700,001302: 27,3140 02673 GEOMSGN
033701,001303: 27,3141 74256 UNIT VXSC
033702,001304: 27,3142 00037 30D
033703,001305: 27,3143 77715 PDVL # UNIT(IC-IR) +-B
033704,001306: 27,3144 77650 GOTO
033705,001307: 27,3145 57113 GETVRVG1
033706,001308: 27,3146 74575 NEGPROD VLOAD VSR1
033707,001309: 27,3147 03537 UNIT/R/
033708,001310: 27,3150 74515 PDVL VSR1
033709,001311: 27,3151 03656 IC
033710,001312: 27,3152 53451 VSU UNIT
033711,001313: 27,3153 77606 PUSH
033712,001314: 27,3154 75235 VXV SIGN
033713,001315: 27,3155 02674 UN # FOR B
033714,001316: 27,3156 02673 GEOMSGN
033715,001317: 27,3157 74256 UNIT VXSC
033716,001318: 27,3160 00041 32D
033717,001319: 27,3161 77715 PDVL
033718,001320: 27,3162 53361 VXSC VAD
033719,001321: 27,3163 00037 30D
033720,001322: 27,3164 77650 GOTO
033721,001323: 27,3165 57115 GETVRVG2
033722,001324: 27,3166 77651 VSU
033723,001325: 27,3167 03553 VN1
033724,001326: 27,3170 02366 ASTREND STORE DELVEET3
033725,001327: 27,3171 53135 FIRSTTME SLOAD BZE
033726,001328: 27,3172 03000 RTX2
033727,001329: 27,3173 57177 GETGOBL
033728,001330: 27,3174 52175 VLOAD GOTO # NO OBLATENESS COMP IF IN MOON SPHERE
033729,001331: # Page 780
033730,001332: 27,3175 02366 DELVEET3
033731,001333: 27,3176 57212 NOGOBL
033732,001334: 27,3177 53575 GETGOBL VLOAD UNIT # CALCULATE OBLATENESS TERM.
033733,001335: 27,3200 01221 RN
033734,001336: 27,3201 45345 DLOAD DSU
033735,001337: 27,3202 01235 PIPTIME # 2
033736,001338: 27,3203 03512 GOBLTIME # G = -(MU/R )(UNITGOBL)(T-TIG)
033737,001339: 27,3204 56205 DMP DDV # OBL
033738,001340: 27,3205 16023 EARTHMU
033739,001341: 27,3206 00043 34D # 34D = /RN/ (2) FROM UNIT OPERATION.
033740,001342: 27,3207 53361 VXSC VAD
033741,001343: 27,3210 03521 UNITGOBL
033742,001344: 27,3211 02366 DELVEET3 # OUTPUT FROM INITVEL VG = VR - VN
033743,001345: 27,3212 02366 NOGOBL STORE DELVEET3 # VG = VR + GOBL - VN
033744,001346: 27,3213 77650 GOTO
033745,001347: 27,3214 56455 VGAIN*
033746,001348:
033747,001349: 27,3215 31103 36652 2PI+3 2DEC 3.141592653 B-2
033748,001350:
033749,001351: # Page 781
033750,001352: # TRIMGIMB (FORMERLY S40.6)
033751,001353: # MOD 0 24 FEB 67 PETER ADLER
033752,001354:
033753,001355: # FUNCTION:
033754,001356: # TRIMS DPS ENGINE TO MINIMIZE THRUST/CG OFFSET. ENGINE IS GIMBALLED TO FULL + PITCH AND + ROLL (TO LOCK)
033755,001357: # FOR REFERENCE AND IS THEN BROUGHT BACK TO TRIM POSITION BY RUNNING FOR THE PROPER TIMES (TO BE
033756,001358: # SPECIFIED BY GAEC) IN - PITCH AND - ROLL.
033757,001359:
033758,001360: # CALLING SEQUENCE:
033759,001361: # VIA WAITLIST FROM R03
033760,001362:
033761,001363: # INPUT:
033762,001364: # PITTIME TIME TO RUN FROM FULL + PITCH TO TRIM (CS)
033763,001365: # ROLLTIME TIME TO RUN FROM FULL + ROLL TO TRIM (CS)
033764,001366:
033765,001367: # SUBROUTINES USED:
033766,001368: # WAITLIST, FIXDELAY, VARDELAY, FLAGUP, FLAGDOWN, NOVAC
033767,001369:
033768,001370: 27,3217 COUNT* $$/S40.6
033769,001371: 27,3217 E6,1401 EBANK= ROLLTIME # OCTAL MASKS: PRIO5=05000 EBANK5=02400
033770,001372:
033771,001373: 27,3217 05516 TRIMGIMB TC DOWNFLAG # GMBDRVSW FLAG IS SET WHEN EITHER ROLL OR
033772,001374: 27,3220 00137 ADRES GMBDRVSW # PITCH IS COMPLETED, WHICHEVER IS FIRST.
033773,001375:
033774,001376: 27,3221 45017 CS PRIO5 # TURN OFF - PITCH, - ROLL, IF ON.
033775,001377: 27,3222 00006 EXTEND
033776,001378: 27,3223 03012 WAND CHAN12
033777,001379: 27,3224 35014 CAF EBANK5 # TURN ON + PITCH, + ROLL.
033778,001380: 27,3225 00006 EXTEND
033779,001381: 27,3226 05012 WOR CHAN12
033780,001382: 27,3227 05221 TC FIXDELAY # WAIT ONE MINUTE TO MAKE SURE ENGINE IS
033781,001383: 27,3230 13560 DEC 6000 B-14 # AT FULL + PITCH AND FULL + ROLL
033782,001384: 27,3231 45014 CS EBANK5 # TURN OFF + PITCH, + ROLL.
033783,001385: 27,3232 00006 EXTEND
033784,001386: 27,3233 03012 WAND CHAN12
033785,001387: 27,3234 35017 CAF PRIO5 # TURN ON - PITCH, - ROLL.
033786,001388: 27,3235 00006 EXTEND
033787,001389: 27,3236 05012 WOR CHAN12
033788,001390: 27,3237 31402 CAE PITTIME # GET TIME TO SHUT OFF - PITCH AND SET UP
033789,001391: 27,3240 05173 TC TWIDDLE # TWIDDLE-TASK TO TURN IT OFF THEN
033790,001392: 27,3241 03260 ADRES PITCHOFF
033791,001393:
033792,001394: 27,3242 31401 CAE ROLLTIME # GET TIME TO SHUT OFF - ROLL AND GO AWAY
033793,001395: 27,3243 05224 TC VARDELAY # UNTIL THEN
033794,001396: 27,3244 44740 CS BIT12
033795,001397: 27,3245 00006 EXTEND
033796,001398: 27,3246 03012 WAND CHAN12 # SHUT OFF ROLL
033797,001399: 27,3247 30102 ROLLOVER CA FLAGWRD6 # IF HERE INLINE (ROLL DONE) IS PITCH DONE
033798,001400: 27,3250 74742 MASK GMBDRBIT # IF HERE FROM PITCHOFF, IS ROLL DONE?
033799,001401: 27,3251 00006 EXTEND
033800,001402: 27,3252 13264 BZF PITCHOFF +4 # NO. SET FLAG, ROLL OR PITCH DONE.
033801,001403: 27,3253 34737 CAF PRIO10 # RETURN TO R03.
033802,001404: 27,3254 05072 TC NOVAC
033803,001405: 27,3255 E7,1471 EBANK= WHOCARES
033804,001406: # Page 782
033805,001407: 27,3255 02323 02067 2CADR TRIMDONE
033806,001408:
033807,001409: 27,3257 05261 TC TASKOVER
033808,001410: 27,3260 44742 PITCHOFF CS BIT10
033809,001411: 27,3261 00006 EXTEND
033810,001412: 27,3262 03012 WAND CHAN12 # SHUT OFF PITCH
033811,001413: 27,3263 13247 TCF ROLLOVER # SEE IF ROLL HAS FINISHED ALSO.
033812,001414: 27,3264 05504 TC UPFLAG # ROLL DONE; OR PITCH DONE; BUT NOT BOTH.
033813,001415: 27,3265 00137 ADRES GMBDRVSW
033814,001416: 27,3266 05261 TC TASKOVER
033815,001417:
033816,001418: # Page 783
033817,001419: # SUBROUTINE NAME: S41.1 MOD. NO. 0 DATE: FEBRUARY 28, 1967
033818,001420: # MOD. NO. 1 DATE: JANUARY 23, 1968, BY PETER ADLER (MIT/IL)
033819,001421:
033820,001422: # AUTHOR: JONATHON D. ADDLESTON (ADAMS ASSOCIATES)
033821,001423:
033822,001424: # S41.1 PERFORMS THE COORDINATE SYSTEM TRANSFORMATION FROM THE REFERENCE FRAME TO THE BODY OF THE LM.
033823,001425: # SPECIFICALLY, IT IS USED TO TRANSFORM A VELOCITY (SCALED AT 2(+7) METERS/CENTISECOND) FROM REFERENCE TO LM AXIS
033824,001426: # COORDINATES. FIRST THE VECTOR IS TRANSFORMED TO THE STABLE MEMBER COORDINATES BY THE MATRIX REFSMMAT. THIS
033825,001427: # LEAVES THE VECTOR IN MPAC, SCALED AT 2(+8) METERS/CENTISECOND. THEN
033826,001428: # THE SUBROUTINE CDUTRIG IS CALLED TO SET UP THE DOUBLE-PRECISION CDU VECTOR ALONG WITH ITS SINES AND COSINES.
033827,001429: # THE VECTOR IS THEN TRANSFORMED FROM STABLE MEMBER COORDINATES TO SPACECRAFT (OR LM) COORDINATES BY THE
033828,001430: # SUBROUTINE *SMNB*. FINALLY, THE VECTOR IS RESCALED TO 2(+7) METERS/CENTISECOND, AND CONTROL IS RETURNED BO THE
033829,001431: # CALLER WITH C(MPAC) = VELOCITY(LM).
033830,001432:
033831,001433: # CALLING SEQUENCE:
033832,001434: # L VLOAD CALL
033833,001435: # L +1 VELOCITY(REF) # SCALED AT 2(+7) M/CS IN REFERENCE COORDS.
033834,001436: # L +2 S41.1
033835,001437: # L +3 STORE VELOCITY(LM) # SCALED AT 2(+7) M/CS IN LM BODY AXIS SYS.
033836,001438:
033837,001439: # SUBROUTINES CALLED:
033838,001440: # 1. CDUTRIG,
033839,001441: # WHICH CALLS CDULOGIC.
033840,001442: # 2. *SMNB*
033841,001443:
033842,001444: # NORMAL RETURN: L +3 (SEE CALLING SEQUENCE, ABOVE.)
033843,001445:
033844,001446: # ALARM/ABORT MODES: NONE.
033845,001447:
033846,001448: # RESTART PROTECTION: NONE.
033847,001449:
033848,001450: # Page 784
033849,001451: # INPUT:
033850,001452: # 1. REFSMMAT.
033851,001453: # 2. CDUX, CDUY, CDUZ.
033852,001454: # 3. VELOCITY (REF) IN MPAC.
033853,001455:
033854,001456: # OUTPUT:
033855,001457: # 1. CSUSPOT: DOUBLE PRECISION CDU VECTOR, ORDERED Y,Z,X.
033856,001458: # 2. SINCDU: HALF SINES OF CDUSPOT COMPONENTS
033857,001459: # 3. COSCDU: HALF COSINES OF CDUSPOT COMPONENTS.
033858,001460: # 4. MPAC: VELOCITY(LM) (SCALED AT 2(+7) METERS/CENTISECOND)
033859,001461:
033860,001462: # DEBRIS: NONE.
033861,001463:
033862,001464: # CHECKOUT STATUS: CODED
033863,001465:
033864,001466: 27,3267 COUNT* $$/S41.1
033865,001467: 27,3267 76521 S41.1 MXV VSL1 # CONVERT VECTOR IN MPAC FROM REF AT 2(+7)
033866,001468: 27,3270 01734 REFSMMAT # TO SM AND RESCALE DUE TO HALF-UNIT MATRIX
033867,001469: 27,3271 77650 GOTO # CONVERT TO BODY AT 2(+7) USING PRESENT
033868,001470: 27,3272 47646 CDU*SMNB # CDU ANGLES. CDU*SMNB WILL RETURN
033869,001471: # VIA RVQ TO THE CALLER OF S41.1.
End of include-file P40-P47.agc. Parent file is MAIN.agc