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