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