Source Code
|
These source-code files are part of a reconstructed copy of Luminary 173, the
second (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with reconstructed source code for Luminary 178. Changes between revision 173 and 178 were backed out, as described by Luminary memo 167 (revision 1). The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 173 listing would be different. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
031942,000002: ## Copyright: Public domain.
031943,000003: ## Filename: P40-P47.agc
031944,000004: ## Purpose: A section of Luminary revision 173.
031945,000005: ## It is part of the reconstructed source code for the second
031946,000006: ## (unflown) release of the flight software for the Lunar
031947,000007: ## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
031948,000008: ## The code has been recreated from a reconstructed copy of
031949,000009: ## Luminary 178, as well as Luminary memo 167 (revision 1).
031950,000010: ## It has been adapted such that the resulting bugger words
031951,000011: ## exactly match those specified for Luminary 173 in NASA
031952,000012: ## drawing 2021152N, which gives relatively high confidence
031953,000013: ## that the reconstruction is correct.
031954,000014: ## Reference: pp. 738-770
031955,000015: ## Assembler: yaYUL
031956,000016: ## Contact: Ron Burkey <info@sandroid.org>.
031957,000017: ## Website: www.ibiblio.org/apollo/index.html
031958,000018: ## Mod history: 2019-09-18 MAS Created from Luminary 178. Changed S40.13
031959,000019: ## to call FRCS2 instead of FRCS4, with 4SEC(17)
031960,000020: ## as the duration instead of 6.5SECS. Removed
031961,000021: ## the definition of 6.5SECS.
031962,000022:
|
Page 738 |
031964,000024: # PROGRAM DESCRIPTION P40BOTH DECEMBER 22, 1966
031965,000025: # MOD 03 BY PETER ADLER MARCH 3, 1967
031966,000026: # CALLED VIA JOB FROM V37E
031967,000027:
031968,000028: # FUNCTIONAL DESCRIPTION
031969,000029:
031970,000030: # 1) TO COMPUTE A PREFERRED IMU ORIENTATION AND A PREFERRED VEHICLE ATTITUDE FOR A LM DPS
031971,000031: # THRUSTING MANEUVER.
031972,000032:
|
(There is no item #2 in the original program listing.) |
031974,000034:
031975,000035: # 3) TO DO THE VEHICLE MANEUVER TO THE THRUSTING ATTITUDE.
031976,000036:
031977,000037: # 4) TO CONTROL THE PGNCS DURING COUNTDOWN, IGNITION, THRUSTING, AND THRUST TERMINATION OF A
031978,000038: # PGNCS CONTROLLED DPS MANEUVER.
031979,000039:
031980,000040: # 5) IN POSTBURN--ZERO RENDEZVOUS COUNTER, MAINTAIN VG CALCULATIONS FOR POSSIBLE RCS MANEUVER,
031981,000041: # SET MAXIMUM DEADBAND IN DAP, RESET STEERLAW CSTEER TO ZERO.
031982,000042:
031983,000043: # NOTE: P42, WHICH IS IN THIS LOG SECTION, DOES THE SAME FOR AN APS BURN, AND P41 DOES 1-3 FOR
031984,000044: # RCS PLUS DISPLAYS PARAMETERS FOR MANUAL CONTROL.
031985,000045:
031986,000046: # SUBROUTINES USED
031987,000047:
031988,000048: # R02 IMU STATUS CHECK
031989,000049: # S40.1 COMPUTATION OF THRUST DIRECTION
031990,000050: # S40.13 LENGTH OF BURN
031991,000051: # S40.2,3 PREFERRED IMU ORIENATTION
031992,000052: # S40.8 X PRODUCT STEERING
031993,000053: # S40.9 LAMBERT VTOGAIN
031994,000054: # R60LEM ATTITUDE MANEUVER
031995,000055: # LEMPREC EXTRAPOLATE STATE VECTOR
031996,000056: # PREREAD AVERAGE G, SERVICER
031997,000057: # ALLCOAST DAP COASTING INITIALIZATION
031998,000058: # CLOKTASK ERGO CLOCKJOB--COUNT DOWN
031999,000059: # PHASCHNG, INTPRET, FLAGUP, FLAGDOWN, WAITLIST, LONGCALL, GOFLASH, GOFLASHR, GOPERF1, ALARM,
032000,000060: # PRIOLARM, GOTOPOOH, ENDOFJOB, BANKCALL, SETMAXDB, SETMINDB, CHECKMM, FLATOUT, OUTFLAT,
032001,000061: # KILLTASK, SGNAGREE, TPAGREE, ETC.
032002,000062:
032003,000063: # RESTARTS VIA GROUP 4
032004,000064:
032005,000065: # DISPLAYS
032006,000066:
032007,000067: # V50N25 203 A/P TO PGNCS, AUTO THROTTLE MODE, AUTO ATTITUDE CONTROL
032008,000068: # V06N40 TTI, VG, DELTAVM (DISPLAYED ONCE/SECOND BY CLOKTASK)
032009,000069: # V50N99 PLEASE PERFORM ENGINE ON ENABLE
032010,000070: # V06N40 TG (TIME TO GO TO CUTOFF), VG, DELTAVM--ONCE/SECOND
032011,000071: # V16N40 FINAL VALUES OF TG, VG, DELTAVM
032012,000072: # V16N85 COMP OF VG (BODY AXES) FOR POSS. RCS MANUAL MANEUVER
032013,000073: # V05N09 POSSIBLE ALARMS
032014,000074: # V50N07 PLEASE SELECT P00
032015,000075:
|
Page 739 |
032017,000077: # VIA R30
032018,000078:
032019,000079: # V06N44 HAPO, PERI, TFF
032020,000080: # V06N35 TIME TO PERIGEE, HMS
032021,000081:
032022,000082: # ALARM OR ABORT EXIT MODES
032023,000083:
032024,000084: # PROGRAM ALARM, FLASHING DISPLAY OF ALARM CODE 1706 IF P40 SELECTED WITH DESCENT UNIT STAGED.
032025,000085: # V34E (TERMINATE) IS THE ONLY RESPONSE ACCEPTED. TC GOTOPOOH.
032026,000086:
032027,000087: # PROGRAM ALARM, FLASH CODE 1703: TIG LESS THAN 45 SECS AWAY. V34E= GOTOPOOH OR V33E= SLIP
032028,000088: # TIG BY 45 SECS.
032029,000089:
032030,000090: # ERASABLE INITIALIZATION
032031,000091: # DEBRIS
032032,000092: # OUTPUT
032033,000093:
032034,000094: # SEE SUBROUTINES E.G.: S40.1, S40.2,3, S40.13, S40.8, S40.9, TRIMGIMB
032035,000095: # XDELVFLG = 1 FOR EXT DELV COMPUTATION
032036,000096: # = 0 FOR AIMPT (LAMBERT) COMP
032037,000097:
032038,000098: 27,2246 COUNT* $$/P40
032039,000099: 27,2246 E7,1455 EBANK= WHICH
032040,000100:
032041,000101: 36,3154 BANK 36
032042,000102: 36,2000 SETLOC P40S
032043,000103: 36,2000 BANK
032044,000104:
032045,000105: 36,3154 05364 P40LM TC PHASCHNG
032046,000106: 36,3155 04024 OCT 04024
032047,000107:
032048,000108: 36,3156 33140 CAF P40ADRES # INITIALIZATION FOR BURNBABY.
032049,000109: 36,3157 55455 TS WHICH
032050,000110:
032051,000111: 36,3160 30106 CA FLGWRD10
032052,000112: 36,3161 74737 MASK APSFLBIT
032053,000113: 36,3162 10000 CCS A
032054,000114: 36,3163 13126 TCF P40ALM
032055,000115: 36,3164 04616 TC BANKCALL # GO DO IMU STATUS CHECK ROUTINE.
032056,000116: 36,3165 11241 CADR R02BOTH
032057,000117:
032058,000118: 36,3166 40111 CS DAPBOOLS # INITIALIZE DVMON
032059,000119: 36,3167 74737 MASK CSMDOCKD
032060,000120: 36,3170 10000 CCS A
032061,000121: 36,3171 32022 CAF THRESH1
032062,000122: 36,3172 62023 AD THRESH3
032063,000123: 36,3173 55250 TS DVTHRUSH
032064,000124: 36,3174 34751 CAF FOUR
032065,000125: 36,3175 55515 TS DVCNTR
|
Page 740 |
032067,000127: 36,3176 06042 TC INTPRET # LOAD CONSTANTS FOR DPS BURN
032068,000128: 36,3177 43175 VLOAD CLEAR # LOAD F, MDOT, TDECAY
032069,000129: 36,3200 34001 FDPS
032070,000130: 36,3201 02663 NOTHROTL
032071,000131: 36,3202 03735 STORE F
032072,000132: 36,3203 77735 SLOAD
032073,000133: 36,3204 26002 DPSVEX
032074,000134: 36,3205 70476 P40IN DCOMP SR1
032075,000135: 36,3206 37743 STCALL VEX # LOAD EXHAUST VELOCITY FOR TGO COMP.
032076,000136: 36,3207 56246 S40.1 # COMPUTES UT AND VGTIG
032077,000137: 36,3210 77624 CALL
032078,000138: 36,3211 56413 S40.2,3 # COMPUTES PREFERRED IMU ORIENTATION
032079,000139: 36,3212 77776 EXIT
032080,000140:
032081,000141: 36,3213 00004 INHINT
032082,000142: 36,3214 04674 TC IBNKCALL
032083,000143: 36,3215 40143 CADR PFLITEDB # ZERO ATTITUDE ERRORS, SET DB TO ONE DEG.
032084,000144:
032085,000145: 36,3216 03220 TC P40SXT4
032086,000146:
032087,000147: # ***********************
032088,000148: 36,3217 12130 TCF BURNBABY
032089,000149: # ***********************
032090,000150:
032091,000151: 36,3220 00006 P40SXT4 EXTEND
032092,000152: 36,3221 23141 QXCH P40/RET
032093,000153: 36,3222 00003 P41MANU RELINT
032094,000154:
032095,000155: 36,3223 05527 TC DOWNFLAG # CLEAR 3AXISFLG -- R60 WILL USE VECPOINT.
032096,000156: 36,3224 00124 ADRES 3AXISFLG
032097,000157:
032098,000158: 36,3225 04616 TC BANKCALL
032099,000159: 36,3226 54125 CADR R60LEM # DO ATTITUDE MANEUVER ROUTINE
032100,000160: 36,3227 01141 TC P40/RET
032101,000161:
032102,000162:
032103,000163: 36,3230 E7,1462 EBANK= TRKMKCNT
032104,000164: 36,3230 30005 POSTBURN CA Z
032105,000165: 36,3231 55162 TS DISPDEX
032106,000166: 36,3232 00006 EXTEND
032107,000167: 36,3233 32060 DCA ACADN85
032108,000168: 36,3234 53252 DXCH AVEGEXIT
032109,000169: 36,3235 33760 CAF V16N40
032110,000170: 36,3236 04616 TC BANKCALL
032111,000171: 36,3237 20636 CADR GOFLASHR
032112,000172: 36,3240 03263 TC TERM40
032113,000173: 36,3241 13246 TCF TIGNOW
032114,000174: 36,3242 03230 TC POSTBURN
032115,000175:
|
Page 741 |
032117,000177: 36,3243 05364 P40PHS1 TC PHASCHNG
032118,000178: 36,3244 00014 OCT 00014
032119,000179: 36,3245 15155 TCF ENDOFJOB
032120,000180:
032121,000181: 36,3246 00004 TIGNOW INHINT
032122,000182: 36,3247 04674 TC IBNKCALL
032123,000183: 36,3250 40154 CADR ZATTEROR
032124,000184: 36,3251 04674 TC IBNKCALL
032125,000185: 36,3252 40141 CADR SETMINDB
032126,000186: 36,3253 00003 RELINT
032127,000187: 36,3254 33761 CAF V16N85B
032128,000188: 36,3255 04616 TC BANKCALL
032129,000189: 36,3256 20463 CADR REFLASHR
032130,000190: 36,3257 03263 TC TERM40
032131,000191: 36,3260 13263 TCF TERM40
032132,000192: 36,3261 03254 TC -5
032133,000193:
032134,000194: 36,3262 13243 TCF P40PHS1
032135,000195:
032136,000196: 36,3263 00006 TERM40 EXTEND
032137,000197: 36,3264 32110 DCA SERVCADR
032138,000198: 36,3265 53252 DXCH AVEGEXIT
032139,000199: 36,3266 34755 CAF ZERO
032140,000200: 36,3267 55462 TS TRKMKCNT # ZERO RENDZVS CNTERS
032141,000201: 36,3270 30005 CA Z
032142,000202: 36,3271 55162 TS DISPDEX
032143,000203: 36,3272 00004 INHINT
032144,000204: 36,3273 04674 TC IBNKCALL
032145,000205: 36,3274 40115 CADR RESTORDB
032146,000206: 36,3275 00003 RELINT
032147,000207: 36,3276 06001 TC GOTOPOOH
032148,000208:
032149,000209: 36,3277 E7,1455 EBANK= WHICH
032150,000210: 36,3277 COUNT* $$/P41
032151,000211: 36,3277 33141 P41LM CAF P41ADRES # INITIALIZATION FOR BURNBABY
032152,000212: 36,3300 55455 TS WHICH
032153,000213:
032154,000214: 36,3301 04616 TC BANKCALL
032155,000215: 36,3302 11241 CADR R02BOTH
032156,000216:
032157,000217: 36,3303 34755 CA ZERO # ZERO DVTOTAL FOR NOUN 40 DISPLAY
032158,000218: 36,3304 55507 TS DVTOTAL
032159,000219: 36,3305 55510 TS DVTOTAL +1
032160,000220: 36,3306 35017 CAF PRIO5
032161,000221: 36,3307 55162 TS DISPDEX # FOR SAFETY
032162,000222: 36,3310 05105 TC FINDVAC
032163,000223: 36,3311 E7,1700 EBANK= VGPREV
032164,000224: 36,3311 03374 74067 2CADR DYNMDISP
032165,000225:
032166,000226: 36,3313 05340 TC 2PHSCHNG
|
Page 742 |
032168,000228: 36,3314 00116 OCT 00116 # GROUP 6 RESTART AT FKP5RST, PRIO 17
032169,000229: 36,3315 04024 OCT 04024 # GROUP 4 RESTART HERE, PRIO 13
032170,000230:
032171,000231: 36,3316 06042 TC INTPRET # BOTH LM
032172,000232: 36,3317 71214 BON DLOAD # IF NJETSFLAG IS SET, LOAD 2 JET F
032173,000233: 36,3320 00700 NJETSFLG
032174,000234: 36,3321 75325 P41FJET1
032175,000235: 36,3322 34017 FRCS4 # IF NJETSFLAG IS CLEAR, LOAD 4 JET F
032176,000236:
032177,000237: 36,3323 37735 P41FJET STCALL F
032178,000238: 36,3324 75330 P41IN
032179,000239:
032180,000240: 36,3325 77745 P41FJET1 DLOAD
032181,000241: 36,3326 34021 FRCS2
032182,000242: 36,3327 03735 STORE F
032183,000243:
032184,000244: 36,3330 77624 P41IN CALL
032185,000245: 36,3331 56246 S40.1 # BOTH
032186,000246: 36,3332 77624 P41NORM CALL
032187,000247: 36,3333 56413 S40.2,3 # CALCULATE PREFERRED IMU ORIENTATION AND
032188,000248: 36,3334 77776 EXIT # SET PFRATFLG.
032189,000249:
032190,000250: 36,3335 00004 INHINT
032191,000251: 36,3336 04674 TC IBNKCALL
032192,000252: 36,3337 40154 CADR ZATTEROR # ZERO ATTITUDE ERRORS
032193,000253: 36,3340 04674 TC IBNKCALL
032194,000254: 36,3341 40141 CADR SETMINDB # SET 0.3 DEGREE DEADBAND
032195,000255: 36,3342 03220 TC P40SXT4
032196,000256:
032197,000257: 36,3343 06042 TC INTPRET
032198,000258: 36,3344 45175 VLOAD CALL # TRANSFORM VELOCITY-TO-BE-GAINED AT TIG
032199,000259: 36,3345 03701 VGTIG # FROM REFERENCE COORDINATES TO LM BODY-
032200,000260: 36,3346 57265 S41.1 # AXIS COORDINATES FOR V16N85 DISPLAY.
032201,000261: 36,3347 03502 STORE VGBODY # (SCALED AT 2 (+7) METERS/CENTISECOND)
032202,000262: 36,3350 77776 EXIT
032203,000263:
032204,000264: 36,3351 33761 CAF V16N85B
032205,000265: 36,3352 04616 TC BANKCALL
032206,000266: 36,3353 20447 CADR GODSPRET
032207,000267:
032208,000268:
032209,000269: 36,3354 05340 TC 2PHSCHNG
032210,000270: 36,3355 00076 OCT 00076 # GROUP 6 RESTARTS AT REDO6.7
032211,000271: 36,3356 04024 OCT 04024 # GROUP 4 RESTARTS HERE
032212,000272:
032213,000273: # ***********************
032214,000274: 36,3357 12137 TCF B*RNB*B*
032215,000275: # ***********************
032216,000276:
|
Page 743 |
032218,000278: 36,3360 34777 BLNKWAIT CAF 1SEC
032219,000279: 36,3361 04616 TC BANKCALL
032220,000280: 36,3362 01736 CADR DELAYJOB
032221,000281:
032222,000282: 36,3363 31162 REDO6.7 CA DISPDEX # ON A RESTART, DO NOT PUT UP DISPLAY IF
032223,000283: 36,3364 64752 AD TWO # BLANKING (BETWEEN TIG-35 AND TIG-30)
032224,000284: # ***********************
032225,000285:
032226,000286: 36,3365 00006 EXTEND
032227,000287: 36,3366 13360 BZF BLNKWAIT
032228,000288:
032229,000289: 36,3367 33761 CAF V16N85B
032230,000290: 36,3370 04616 TC BANKCALL
032231,000291: 36,3371 20447 CADR GODSPRET
032232,000292:
032233,000293: 36,3372 35017 FKP5RST CAF PRIO5
032234,000294: 36,3373 05146 TC PRIOCHNG
032235,000295:
032236,000296: 36,3374 31162 DYNMDISP CA DISPDEX # A NON-POSITIVE DISPDEX INDICATES PAST
032237,000297: 36,3375 00006 EXTEND # TIG-35, SO SERVICER WILL BE DOING THE
032238,000298: 36,3376 65155 BZMF ENDOFJOB # UPDATING OF NOUN 85. STOP DYNMDISP.
032239,000299: 36,3377 00006 EXTEND
032240,000300: 36,3400 41442 DCS TIG
032241,000301: 36,3401 53454 DXCH TTOGO # UPDATE TFI DISPLAY (NOUN 40)
032242,000302: 36,3402 00006 EXTEND
032243,000303: 36,3403 30025 DCA TIME2
032244,000304: 36,3404 21454 DAS TTOGO
032245,000305: 36,3405 06042 TC INTPRET
032246,000306: 36,3406 45175 VLOAD CALL
032247,000307: 36,3407 03701 VGPREV
032248,000308: 36,3410 57265 S41.1 # CONVERT VG FROM REF TO BODY
032249,000309: 36,3411 03502 STORE VGBODY
032250,000310: 36,3412 77776 EXIT
032251,000311: 36,3413 34777 CAF 1SEC
032252,000312: 36,3414 04616 TC BANKCALL
032253,000313: 36,3415 01736 CADR DELAYJOB
032254,000314: 36,3416 13374 TCF DYNMDISP # RECYCLE ONCE A SECOND
032255,000315:
032256,000316:
032257,000317: 36,3417 COUNT $$/P41
032258,000318: 32,2550 BANK 32
032259,000319: 32,2000 SETLOC P40S4
032260,000320: 32,2000 BANK
032261,000321:
032262,000322: 32,2550 06042 CALCN85 TC INTPRET
032263,000323: 32,2551 77624 CALL
032264,000324: 32,2552 75620 UPDATEVG
032265,000325: 32,2553 45175 VLOAD CALL
032266,000326: 32,2554 03701 VGPREV
|
Page 744 |
032268,000328: 32,2555 57265 S41.1
032269,000329: 32,2556 03502 STORE VGBODY
032270,000330: 32,2557 77776 EXIT
032271,000331: 32,2560 04635 TC POSTJUMP
032272,000332: 32,2561 65647 CADR SERVEXIT
032273,000333:
032274,000334: 36,3417 BANK 36
032275,000335: 36,2000 SETLOC P40S
032276,000336: 36,2000 BANK
032277,000337:
032278,000338: 36,3417 COUNT* $$/P42
032279,000339: 36,3417 E7,1455 EBANK= WHICH
032280,000340:
032281,000341: 36,3417 05364 P42LM TC PHASCHNG
032282,000342: 36,3420 04024 OCT 04024
032283,000343:
032284,000344: 36,3421 33142 CAF P42ADRES # INITIALIZATION FOR BURNBABY.
032285,000345: 36,3422 55455 TS WHICH
032286,000346:
032287,000347: 36,3423 40106 CS FLGWRD10
032288,000348: 36,3424 74737 MASK APSFLBIT
032289,000349: 36,3425 10000 CCS A
032290,000350: 36,3426 03126 TC P40ALM
032291,000351: 36,3427 04616 P42STAGE TC BANKCALL
032292,000352: 36,3430 11241 CADR R02BOTH
032293,000353: 36,3431 36000 CAF THRESH2 # INITIALIZE DVMON
032294,000354: 36,3432 55250 TS DVTHRUSH
032295,000355: 36,3433 34751 CAF FOUR
032296,000356: 36,3434 55515 TS DVCNTR
032297,000357:
032298,000358: 36,3435 06042 TC INTPRET
032299,000359: 36,3436 77214 SET VLOAD # LOAD FAPS, MDOTAPS, AND ATDECAY INTO
032300,000360: 36,3437 01072 AVFLAG # F, MDOT, AND TDECAY BY VECTOR LOAD.
032301,000361: 36,3440 34007 FAPS
032302,000362: 36,3441 03735 STORE F
032303,000363: 36,3442 52135 SLOAD GOTO
032304,000364: 36,3443 26001 APSVEX
032305,000365: 36,3444 75205 P40IN
032306,000366:
032307,000367: 36,3445 E7,1455 EBANK= WHICH
032308,000368:
032309,000369: 36,3445 COUNT* $$/P47
032310,000370: 36,3445 04616 P47LM TC BANKCALL
032311,000371: 36,3446 11241 CADR R02BOTH
032312,000372: 36,3447 06042 TC INTPRET
032313,000373: 36,3450 77624 CALRB
032314,000374: 36,3451 27547 MIDTOAV2
032315,000375:
032316,000376: 36,3452 30155 CA MPAC +1
032317,000377: 36,3453 05204 TC TWIDDLE
|
Page 745 |
032319,000379: 36,3454 03456 ADRES STARTP47
032320,000380:
032321,000381: 36,3455 15155 TCF ENDOFJOB
032322,000382:
032323,000383: 36,3456 05364 STARTP47 TC PHASCHNG
032324,000384: 36,3457 05014 OCT 05014
032325,000385: 36,3460 77777 OCT 77777
032326,000386:
032327,000387: 36,3461 00006 EXTEND
032328,000388: 36,3462 33764 DCA ACADN83
032329,000389: 36,3463 53252 DXCH AVEGEXIT
032330,000390: 36,3464 34736 CAF PRIO20
032331,000391: 36,3465 05105 TC FINDVAC
032332,000392: 36,3466 E7,1622 EBANK= DELVIMU
032333,000393: 36,3466 03522 74067 2CADR P47BODY
032334,000394:
032335,000395: 36,3470 12344 TCF REDO4.2 # CHECKS PHASE 5 AND GOES TO PREREAD
032336,000396: # SEE TIG-30 IN BURNBABY.
032337,000397:
032338,000398: 36,3471 06042 CALCN83 TC INTPRET
032339,000399: 36,3472 53375 VLOAD VAD
032340,000400: 36,3473 03502 DELVCTL
032341,000401: 36,3474 03527 DELVREF
032342,000402: 36,3475 03656 STORE DELVSIN # TEMP STORAGE FOR RESTARTS
032343,000403: 36,3476 77624 CALL
032344,000404: 36,3477 57265 S41.1
032345,000405: 36,3500 03623 STORE DELVIMU
032346,000406: 36,3501 77776 EXIT
032347,000407: 36,3502 05364 TC PHASCHNG
032348,000408: 36,3503 10035 OCT 10035 # REREADAC AND HERE
032349,000409:
032350,000410: 36,3504 06042 TC INTPRET
032351,000411: 36,3505 77775 VLOAD
032352,000412: 36,3506 03656 DELVSIN
032353,000413: 36,3507 03502 STORE DELVCTL
032354,000414: 36,3510 77776 EXIT
032355,000415:
032356,000416: 36,3511 04635 TC POSTJUMP
032357,000417: 36,3512 65647 CADR SERVEXIT
032358,000418:
032359,000419: 36,3513 33762 P47BOD CAF V1683
032360,000420: 36,3514 04616 TC BANKCALL
032361,000421: 36,3515 20636 CADR GOFLASHR
032362,000422: 36,3516 06001 TC GOTOPOOH
032363,000423: 36,3517 06001 TC GOTOPOOH
032364,000424:
032365,000425: 36,3520 13522 TCF P47BODY
032366,000426:
032367,000427: 36,3521 13243 TCF P40PHS1
032368,000428:
032369,000429: 36,3522 06042 P47BODY TC INTPRET
032370,000430: 36,3523 77775 VLOAD
|
Page 746 |
032372,000432: 36,3524 06520 HI6ZEROS
032373,000433: 36,3525 03623 STORE DELVIMU
032374,000434: 36,3526 03502 STORE DELVCTL
032375,000435: 36,3527 77776 EXIT
032376,000436: 36,3530 03513 TC P47BOD
032377,000437:
032378,000438: 36,3531 COUNT* $$/P40
032379,000439: 36,3531 31517 IMPLBURN CA TGO +1
032380,000440: 36,3532 03744 TC GETDT
032381,000441: 36,3533 05204 TC TWIDDLE
032382,000442: 36,3534 03551 ADRES ENGOFTSK
032383,000443: 36,3535 05527 TC DOWNFLAG # TURN OFF IGNFLAG
032384,000444: 36,3536 00153 ADRES IGNFLAG
032385,000445: 36,3537 05527 TC DOWNFLAG # TURN OFF ASTNFLG
032386,000446: 36,3540 00154 ADRES ASTNFLAG
032387,000447: 36,3541 05527 TC DOWNFLAG # TURN OFF IMPULSW
032388,000448: 36,3542 00044 ADRES IMPULSW
032389,000449: 36,3543 05364 TC PHASCHNG # RESTART PROTECT ENGOFTSK (ENGINOFF)
032390,000450: 36,3544 40114 OCT 40114
032391,000451:
032392,000452: 36,3545 05232 TC FIXDELAY # WAIT HALF A SECOND
032393,000453: 36,3546 00062 DEC 50 B-14
032394,000454:
032395,000455: 36,3547 02660 TC NOULLAGE # TURN OFF ULLAGE
032396,000456:
032397,000457: 36,3550 05272 TC TASKOVER
032398,000458:
032399,000459: 36,3551 04674 ENGOFTSK TC IBNKCALL # THIS CODING ALLOWS ENGINOFF ET AL TO BE
032400,000460: 36,3552 75554 CADR ENGINOFF # USED BOTH BY WAITLIST AND BY TC IBNKCALL
032401,000461: 36,3553 05272 TC TASKOVER
032402,000462:
032403,000463: 36,3554 34644 ENGINOFF CAF PRIO12 # MUST BE LOWER PRIO THAN CLOCKJOB
032404,000464: 36,3555 05105 TC FINDVAC
032405,000465: 36,3556 E7,1462 EBANK= TRKMKCNT
032406,000466: 36,3556 03230 74067 2CADR POSTBURN
032407,000467:
032408,000468:
032409,000469: 36,3560 34753 ENGINOF2 CAF BIT1
032410,000470: 36,3561 05214 TC WAITLIST
032411,000471: 36,3562 E6,1422 EBANK= OMEGAQ
032412,000472: 36,3562 03615 74066 2CADR COASTSET
032413,000473:
032414,000474: 36,3564 40103 ENGINOF1 CS FLAGWRD7 # SET THE IDLE BIT.
032415,000475: 36,3565 74745 MASK IDLEFBIT
032416,000476: 36,3566 26103 ADS FLAGWRD7
032417,000477:
032418,000478: 36,3567 02660 TC NOULLAGE
032419,000479:
032420,000480: 36,3570 00006 ENGINOF4 EXTEND
032421,000481: 36,3571 30025 DCA TIME2
|
Page 747 |
032423,000483: 36,3572 53342 DXCH TEVENT
032424,000484:
032425,000485: 36,3573 44745 ENGINOF3 CS ENGONBIT # INSURE ENGONFLG IS CLEAR.
032426,000486: 36,3574 70101 MASK FLAGWRD5
032427,000487: 36,3575 54101 TS FLAGWRD5
032428,000488: 36,3576 44355 CS PRIO30 # ENGINOF3 IS USED AS A PRE-ENGINE ARM
032429,000489: 36,3577 00006 EXTEND # SUBROUTINE.
032430,000490: 36,3600 02011 RAND DSALMOUT
032431,000491: 36,3601 64736 AD PRIO20 # TURN OFF THE ENGINE - DPS OR APS
032432,000492: 36,3602 00006 EXTEND
032433,000493: 36,3603 01011 WRITE DSALMOUT
032434,000494:
032435,000495: 36,3604 40111 CS DAPBOOLS # TURN OFF TRIM GIMBAL
032436,000496: 36,3605 74736 MASK USEQRJTS
032437,000497: 36,3606 26111 ADS DAPBOOLS
032438,000498:
032439,000499: 36,3607 44737 CS HIRTHROT # ZERO AUTO-THROTTLE WHENEVER THE ENGINE
032440,000500: 36,3610 54055 TS THRUST # IS TURNED OFF.
032441,000501: 36,3611 34750 CAF BIT4 # THE HARDWARE DOES SO ONLY WHEN THE
032442,000502: 36,3612 00006 EXTEND # ENGINE IS DISARMED.
032443,000503: 36,3613 05014 WOR CHAN14
032444,000504:
032445,000505: 36,3614 04707 TC ISWRETRN
032446,000506: 36,3615 04674 COASTSET TC IBNKCALL # DO DAP COASTING INITIALIZATION
032447,000507: 36,3616 40205 CADR ALLCOAST
032448,000508: 36,3617 05272 TC TASKOVER
032449,000509:
032450,000510: 36,3620 E6,1422 EBANK= OMEGAQ
032451,000511: 36,3620 45020 UPDATEVG STQ CALL
032452,000512: 36,3621 03665 QTEMP1
032453,000513: 36,3622 56447 S40.8 # X-PRODUCT STEERING
032454,000514: 36,3623 43014 S40RET BON BON # WILL RETURN HERE FROM S40.8
032455,000515: 36,3624 01307 XDELVFLG
032456,000516: 36,3625 03665 QTEMP1
032457,000517: 36,3626 03705 NORMSW
032458,000518: 36,3627 75642 180SETUP
032459,000519: 36,3630 45345 DLOAD DSU
032460,000520: 36,3631 01234 PIPTIME
032461,000521: 36,3632 03763 TIGSAVE
032462,000522: 36,3633 50025 DSU BMN
032463,000523: 36,3634 03432 TNEWA
032464,000524: 36,3635 75665 GETRANS
032465,000525: 36,3636 43345 DLOAD DAD
032466,000526: 36,3637 03763 TIGSAVE
032467,000527: 36,3640 03432 TNEWA
032468,000528: 36,3641 03765 STORE TIGSAVEP
032469,000529: 36,3642 77776 180SETUP EXIT
032470,000530: 36,3643 10754 CCS PHASE2
032471,000531: 36,3644 13672 TCF NO.9
032472,000532: 36,3645 34737 CAF PRIO10
|
Page 748 |
032474,000534: 36,3646 00004 INHINT
032475,000535: 36,3647 05105 TC FINDVAC
032476,000536: 36,3650 E7,1706 EBANK= VG
032477,000537: 36,3650 02705 56067 2CADR S40.9 # LAMBERT VTOGAIN
032478,000538:
032479,000539: 36,3652 05340 TC 2PHSCHNG
032480,000540: 36,3653 00172 OCT 00172 # 2.17SPOT FOR S40.9
032481,000541: 36,3654 10035 OCT 10035 # HERE AND REREADAC AFTER RESTART
032482,000542:
032483,000543: 36,3655 06042 ENDSTEER TC INTPRET
032484,000544: 36,3656 77745 DLOAD
032485,000545: 36,3657 03765 TIGSAVEP
032486,000546: 36,3660 27763 STOVL TIGSAVE
032487,000547: 36,3661 01220 RN
032488,000548: 36,3662 26323 STOVL RINIT
032489,000549: 36,3663 01226 VN
032490,000550: 36,3664 02331 STORE VINIT
032491,000551: 36,3665 45345 GETRANS DLOAD DSU
032492,000552: 36,3666 03631 TPASS4
032493,000553: 36,3667 01234 PIPTIME
032494,000554: 36,3670 37452 STCALL DELLT4
032495,000555: 36,3671 03665 QTEMP1
032496,000556:
032497,000557: 36,3672 06042 NO.9 TC INTPRET
032498,000558: 36,3673 77650 GOTO
032499,000559: 36,3674 03665 QTEMP1
032500,000560: 36,3675 06042 STEERING TC INTPRET
032501,000561:
032502,000562: 36,3676 77624 CALL
032503,000563: 36,3677 75620 UPDATEVG
032504,000564: 36,3700 77776 EXIT
032505,000565:
032506,000566: 36,3701 E7,1515 EBANK= DVCNTR
032507,000567: 36,3701 00004 NSTEER INHINT
032508,000568: 36,3702 35016 CA EBANK7
032509,000569: 36,3703 54003 TS EBANK
032510,000570: 36,3704 40076 CS FLAGWRD2 # CHECK IMPULSE SWITCH. IT IS SET EITHER
032511,000571: 36,3705 74743 MASK IMPULBIT # BY S40.13 IF TBURN<6 SECS OR BY S40.8 IF
032512,000572: 36,3706 10000 CCS A # STEERING IS ALMOST DONE.
032513,000573:
032514,000574: 36,3707 13714 TCF +5 # IMPULSW = 0 EXIT
032515,000575: 36,3710 40103 CS FLAGWRD7 # IMPULSW = 1 WHY? CHECK IDLEFLAG
032516,000576: 36,3711 74745 MASK IDLEFBIT # (IDLEFLAG = 0 --> DVMON ON)
032517,000577: 36,3712 10000 CCS A
032518,000578: 36,3713 13716 TCF +3 # DVMON ON-->THRUSTING-->IMPULSW VIA S40.8
032519,000579: 36,3714 04635 TC POSTJUMP # DVMON OFF-->IMPULSW ON VIA S40.13-->EXIT
032520,000580: 36,3715 65647 CADR SERVEXIT
032521,000581:
032522,000582: 36,3716 04674 TC IBNKCALL
032523,000583: 36,3717 40166 CADR STOPRATE
032524,000584:
|
Page 749 |
032526,000586: 36,3720 05527 TC DOWNFLAG # TURN OFF IMPULSW
032527,000587: 36,3721 00044 ADRES IMPULSW
032528,000588:
032529,000589: 36,3722 05515 TC UPFLAG
032530,000590: 36,3723 00161 ADRES IDLEFLAG # TURN OFF DVMON
032531,000591:
032532,000592: 36,3724 00004 INHINT
032533,000593: 36,3725 00006 EXTEND
032534,000594: 36,3726 31442 DCA TIG
032535,000595: 36,3727 52155 DXCH MPAC
032536,000596: 36,3730 00006 EXTEND
032537,000597: 36,3731 40025 DCS TIME2
032538,000598: 36,3732 20155 DAS MPAC
032539,000599: 36,3733 07262 TC TPAGREE
032540,000600: 36,3734 30155 CAE MPAC +1
032541,000601: 36,3735 03744 TC GETDT
032542,000602: 36,3736 05204 TC TWIDDLE
032543,000603: 36,3737 03551 ADRES ENGOFTSK
032544,000604: 36,3740 05340 TC 2PHSCHNG
032545,000605: 36,3741 40114 OCT 40114 # ENGOFTSK (ENGINOFF)
032546,000606: 36,3742 00035 OCT 00035 # SERVICER--REREADAC
032547,000607: 36,3743 15155 TCF ENDOFJOB
032548,000608:
032549,000609: 36,3744 10000 GETDT CCS A
032550,000610: 36,3745 13750 TCF +3
032551,000611: 36,3746 13750 TCF +2
032552,000612: 36,3747 34755 CAF ZERO
032553,000613: 36,3750 64753 AD ONE
032554,000614: 36,3751 56001 XCH L
032555,000615: 36,3752 34755 CAF ZERO
032556,000616: 36,3753 53517 DXCH TGO
032557,000617: 36,3754 31517 CA TGO +1
032558,000618: 36,3755 00002 TC Q
032559,000619:
032560,000620:
032561,000621: # ************************************************************************
032562,000622:
032563,000623: 36,3756 00000 5SECDP OCT 00000 # DON'T MOVE FROM JUST BEFORE 5SEC
032564,000624: 36,3757 00764 5SEC DEC 500 B-14
032565,000625: 36,3760 04050 V16N40 VN 1640
032566,000626: 36,3761 04125 V16N85B VN 1685
032567,000627: 36,3762 04123 V1683 VN 1683
032568,000628: 36,3763 4777 SEC01 = 1SEC
032569,000629: 36,3763 36,2057 ACADN85 = P41TABLE +2
032570,000630:
032571,000631: 36,3763 E7,1622 EBANK= DELVIMU
032572,000632: 36,3763 03471 74067 ACADN83 2CADR CALCN83
032573,000633:
032574,000634: # *************************************************
032575,000635:
|
Page 750 |
032577,000637: # PROGRAM DESCRIPTION S40.1 DATE15NOV66
032578,000638: # MOD N02 LOG SECTION P40-P47
032579,000639: # MOD BY ZELDIN AND ADAPTED BY TALAYCO
032580,000640: # FUNCTIONAL DESCRIPTION
032581,000641: # COMPUTE INITIAL THRUST DIRECTION(UT) AND INITIAL VALUE OF VG
032582,000642: # VECTOR(VGTIG).
032583,000643: # CALLING SEQUENCE
032584,000644: # L CALL
032585,000645: # L+1 S40.1
032586,000646: # NORMAL EXIT MODE
032587,000647: # AT L+2 OF CALLING SEQUENCE (GOTO L+2) NORMAL RETURN OR
032588,000648: # ERROR RETURN IF NOSOFLAG =1
032589,000649: # SUBROUTINES CALLED
032590,000650: # LEMPREC
032591,000651: # INITVEL
032592,000652: # CALCGRAV
032593,000653: # MIDGIM
032594,000654: # ALARM OR ABORT EXIT MODES
032595,000655: # L+2 OF CALLING SEQUENCE,UNSOLVABLE CONIC IF NOSOFLAG=1
032596,000656: # ERASABLE INITIALIZATION REQUIRED
032597,000657: # WEIGHT/G ANTICIPATED VEHICLE MASS DP B16KGM
032598,000658: # XDELVFLG 1=DELTA-V MANEUVER,0=AIMPT STEER
032599,000659: # F THRUST FOR ENGINE USED
032600,000660: # IF DELTA-V MANEUVER
032601,000661: # DELVSIN SPECIFIED DELTA-V REQUIRED IN
032602,000662: # INERTIAL COORDS. OF ACTIVE VEHICLE
032603,000663: # AT TIME OF IGNITION VECTOR B7M/CS
032604,000664: # DELVSAB MAG. OF DELVSIN DP B7M/CS
032605,000665: # RTIG POSITION AT TIME OF IGNITION VECTOR B29M
032606,000666: # VTIG VELOCITY AT TIME OF IGNITION VECTOR B7M/CS
032607,000667: # IF AIMPT STEER
032608,000668: # TIG TIME OF IGNITION DP B28CS
032609,000669: # RTARG POSITION TARGET TIME VECTOR B29M
032610,000670: # CSTEER C FOR STEER LAW DP B2
032611,000671: # DLTARG TARGET TIME-IGNITION TIME DP B28CS
032612,000672: # OUTPUT
032613,000673: # UT DESIRED THRUST DIRECTION VECT. B2M/(CS.CS)
032614,000674: # VGTIG INITIAL VALUE OF VELOCITY
032615,000675: # TO BE GAINED (INERT. COORD.) VECTOR B7M/CS
032616,000676: # DELVLVC VGTIG IN LOC. VERT. COORDS. B7M/CS
032617,000677: # BDT V REQUIRED AT TIG -V REQUIRED AT (TIG-2SEC)
032618,000678: # -GDT FOR S40.13 VECT B7M/CS
032619,000679: # RTIG CALC IN S40.1B(AIMPT) FOR S40.2,3 VECTOR B29M
032620,000680: # POSITION AT TIME OF IGNITION
032621,000681: # DEBRIS QTEMP1
032622,000682: # MPAC, QPRET
032623,000683: # PUSHLIST
032624,000684: 14,2347 BANK 14
032625,000685: 27,2000 SETLOC P40S1
032626,000686: 27,2000 BANK
032627,000687:
|
Page 751 |
032629,000689: 27,2246 COUNT* $$/S40.1
032630,000690: 27,2246 71220 S40.1 STQ DLOAD
032631,000691: 27,2247 03632 QTEMP
032632,000692: 27,2250 03442 TIG
032633,000693: 27,2251 03763 STORE TIGSAVE
032634,000694: 27,2252 77614 DELVTEST BOFF
032635,000695: 27,2253 01347 XDELVFLG
032636,000696: 27,2254 56336 S40.1B
032637,000697: 27,2255 77201 CALCTHET SETPD VLOAD
032638,000698: 27,2256 00001 0
032639,000699: 27,2257 03650 VTIG
032640,000700: 27,2260 02331 STORE VINIT
032641,000701: 27,2261 53435 VXV UNIT
032642,000702: 27,2262 03642 RTIG
032643,000703: 27,2263 27673 STOVL UT # UP IN UT
032644,000704: 27,2264 03642 RTIG
032645,000705: 27,2265 02323 STORE RINIT
032646,000706: 27,2266 65236 VSQ PDDL
032647,000707: 27,2267 00045 36D
032648,000708: 27,2270 56205 DMP DDV
032649,000709: 27,2271 16412 THETACON
032650,000710: 27,2272 41205 DMP DMP
032651,000711: 27,2273 03664 DELVSAB
032652,000712: 27,2274 01244 WEIGHT/G
032653,000713: 27,2275 77671 DDV
032654,000714: 27,2276 03735 F
032655,000715: 27,2277 24017 STOVL 14D
032656,000716: 27,2300 03656 DELVSIN
032657,000717:
032658,000718: 27,2301 74241 DOT VXSC
032659,000719: 27,2302 03673 UT
032660,000720: 27,2303 03673 UT
032661,000721: 27,2304 41552 VSL2 PUSH # (DELTAV.UP)UP SCALED AT 2(+7) P.D.L. 0
032662,000722: 27,2305 65245 BVSU PDDL # DELTA VP SCALED AT 2(+7) P.D.L. 6
032663,000723: 27,2306 03656 DELVSIN
032664,000724: 27,2307 00017 14D
032665,000725: 27,2310 63356 SIN PDVL
032666,000726: 27,2311 00007 6D
032667,000727: 27,2312 53435 VXV UNIT
032668,000728: 27,2313 03673 UT
032669,000729: 27,2314 45561 VXSC STADR
032670,000730: 27,2315 50076 STOVL VGTIG # UNIT(VPXUP)SIN(THETAT/2) IN VGTIG.
032671,000731: 27,2316 65256 UNIT PDDL # UNIT(DELTA VP) IN P.D.L. 6
032672,000732: 27,2317 00017 14D
032673,000733: 27,2320 74346 COS VXSC
032674,000734: 27,2321 74255 VAD VXSC
032675,000735: 27,2322 03701 VGTIG
032676,000736: 27,2323 00045 36D
032677,000737: 27,2324 53352 VSL2 VAD
032678,000738: 27,2325 77626 STADR
|
Page 752 |
032680,000740: 27,2326 74076 STORE VGTIG # VG IGNITION SCALED AT 2(+7)M/CS
032681,000741:
032682,000742: 27,2327 77656 UNIT
032683,000743: 27,2330 27673 STOVL UT # THRUST DIRECTION SCALED AT 2(+1)
032684,000744: 27,2331 03701 VGTIG
032685,000745: 27,2332 45006 PUSH CALL
032686,000746: 27,2333 15741 GET.LVC # VGTIG IN LV COOR AT 2(+7) M/CS IN DELVLVC
032687,000747: 27,2334 77650 GOTO
032688,000748: 27,2335 03632 QTEMP
032689,000749: 27,2336 77745 S40.1B DLOAD
032690,000750: 27,2337 03442 TIG
032691,000751: 27,2340 00041 STORE TDEC1
032692,000752: 27,2341 77621 BDSU
032693,000753: 27,2342 03631 TPASS4
032694,000754: 27,2343 37452 STCALL DELLT4 # INTERCEPT TIME - TIG.
032695,000755: 27,2344 27056 LEMPREC
032696,000756: 27,2345 40375 VLOAD SETPD # LOAD STATE VECTOR AT TIG FOR INITVEL.
032697,000757: 27,2346 00001 RATT
032698,000758: 27,2347 00001 0
032699,000759: 27,2350 03642 STORE RTIG
032700,000760: 27,2351 02323 STORE RINIT
032701,000761: 27,2352 77656 UNIT
032702,000762: 27,2353 27537 STOVL UNIT/R/
032703,000763: 27,2354 00007 VATT
032704,000764: 27,2355 03650 STORE VTIG
032705,000765: 27,2356 02331 STORE VINIT
032706,000766: 27,2357 65345 DLOAD PDDL # NUMIT = 0
032707,000767: 27,2360 06520 ZEROVECS
032708,000768: 27,2361 16406 EPS1
032709,000769: 27,2362 43214 BOFF DAD
032710,000770: 27,2363 03745 NORMSW
032711,000771: 27,2364 56366 SMALLEPS
032712,000772: 27,2365 16410 EPS2 # EPSILON4 = 10 DEGREES OR 45 DEGREES.
032713,000773: 27,2366 66006 SMALLEPS PUSH SXA,1
032714,000774: 27,2367 02776 RTX1
032715,000775: 27,2370 45134 SXA,2 CALL
032716,000776: 27,2371 02777 RTX2
032717,000777: 27,2372 22000 INITVEL
032718,000778: 27,2373 41575 VLOAD PUSH
032719,000779: 27,2374 02366 DELVEET3 # VGTIG = VR - VN.
032720,000780: 27,2375 03701 STORE VGTIG
032721,000781: 27,2376 77656 UNIT # UT = UNIT (VGTIG)
032722,000782: 27,2377 17673 STODL UT
032723,000783: 27,2400 00045 36D
032724,000784: 27,2401 37664 STCALL VGDISP # CONVERT VGTIG (IN PUSHLIST ) TO LOCAL
032725,000785: 27,2402 15741 GET.LVC # VERTICAL COORDINATES.
032726,000786: 27,2403 77650 GOTO
032727,000787: 27,2404 03632 QTEMP
032728,000788:
032729,000789: 27,2405 00707 03434 EPS1 2DEC* 2.777777778 E-2* # 10 DEGREES AT 1 REVOLUTION.
032730,000790:
|
Page 753 |
032732,000792: 27,2407 03070 34344 EPS2 2DEC* 9.722222222 E-2* # 35 DEGREES AT 1 REVOLUTION.
032733,000793:
032734,000794: 27,2411 00024 13714 THETACON 2DEC .31830989 B-8
032735,000795:
|
Page 754 |
032737,000797: # SUBROUTINE NAME: S40.2,3 MOD. NO. 3 DATE: APRIL 4, 1967
032738,000798:
032739,000799: # MODIFICATION BY: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
032740,000800:
032741,000801: # MOD. NO. 4: JULY 18, 1967: PETER ADLER (MIT/IL)
032742,000802:
032743,000803: # MOD. NO. 5: OCTOBER 18, 1967: PETER ADLER (MIT/IL)
032744,000804:
032745,000805: # ORIGINALLY BY: SAYDEAN ZELDIN (MIT INSTRUMENTATION LAB) AND RICHARD TALAYCO (SYSTEM DEVELOPMENT CORP)
032746,000806:
032747,000807: # S40.2,3 COMPUTES "POINTVSM" WHICH IS THE HALF-UNIT DESIRED THRUST VECTOR IN STABLE-MEMBER COORDINATES FROM "UT"
032748,000808: # WHICH IS THE SAME VECTOR IN REFERENCE COORDINATES. IT DETERMINES THE CORRECT VALUES FOR "SCAXIS" USING THE +X
032749,000809: # AXIS FOR DPS, APS, AND RCS BURNS. THE "WINGS-LEVEL HEADS-UP" LM ORIENTATION IS THEN COMPUTED IN REFERENCE
032750,000810: # COORDINATES. THESE VECTORS ALSO DEFINE THE "PREFERRED IMU ORIENTATION". UPON COMPLETION OF THIS CALCULATION,
032751,000811: # THE "PREFERRED ATTITUDE COMPUTED" FLAG IS SET (PFRATFLG).
032752,000812:
032753,000813:
032754,000814: # CALLING SEQUENCE:
032755,000815: # L CALL INTERPRETIVE CALL.
032756,000816: # L +1 S40.2,3
032757,000817: # L +2 (RETURN) GIMBAL ANGLE VECTOR IN MPAC.
032758,000818:
032759,000819: # SUBROUTINES CALLED: NONE.
032760,000820:
032761,000821: # NORMAL RETURN: L +2 (SEE CALLING SEQUENCE ABOVE).
032762,000822:
032763,000823: # ALARM/ABORT MODES: NONE.
032764,000824:
032765,000825: # INPUT:
032766,000826:
032767,000827: # 1. REFSMMAT MATRIX FROM REFERENCE TO STABLE-MEMBER COORDINATES SCALED AT 2.
032768,000828: # 2. UT HALF-UNIT DESIRED THRUST DIRECTION.
032769,000829: # 3. RTIG POSITION AT TIG IN REFERENCE COORDINATES.
032770,000830:
032771,000831: # OUTPUT:
032772,000832:
032773,000833: # 1. : XSCREF : WINGS-LEVEL HEADS-UP LM ORIENTATION
032774,000834: # : YSCREF : IN REFERENCE COORDINATES
032775,000835: # : ZSCREF : (PREFERRED IMU ORIENTATION).
032776,000836: # 2. POINTVSM DESIRED THRUST DIRECTION IN STABLE-MEMBER COORDINATES.
032777,000837: # 3. SCAXIS HALF-UNIT OF AXIS TO ALIGN IN STABLE-MEMBER COORDINATES.
032778,000838: # 4. PFRATFLG INTERPRETIVE FLAG. ON: PREFERRED ORIENTATION COMPUTED; OFF: NOT COMPUTED.
032779,000839:
032780,000840: # DEBRIS: NONE.
032781,000841:
|
Page 755 |
032783,000843: 27,2413 COUNT* $$/S40.2
032784,000844: 27,2413 77775 S40.2,3 VLOAD # UT: DESIRED THRUST DIRECTION (HALF-UNIT)
032785,000845: 27,2414 03673 UT # (PUT INTO TOP OF PUSH-DOWN-LIST.)
032786,000846: 27,2415 76521 MXV VSL1 # TRANSFORM THRUST DIRECTION TO STABLE-
032787,000847: 27,2416 01732 REFSMMAT # MEMBER FROM REFERENCE COORDS (RESCALE).
032788,000848: 27,2417 27773 STOVL POINTVSM # SAVE FOR "VECPOINT" ROUTINE (LEMMANU).
032789,000849: 27,2420 06516 UNITX # SCAXIS SET TO +X, FOR P40 AND P42 AND
032790,000850: 27,2421 27765 STOVL SCAXIS # FOR P41 IF RCS NOT -X,+Y,-Y,+Z,-Z.
032791,000851:
032792,000852: 27,2422 03673 UT # ASSUME +X BURN ALWAYS, EVEN FOR RCS.
032793,000853: 27,2423 03607 PLUSX STORE XSCREF # XSCREF = UT (DESIRED THRUST DIRECTION.)
032794,000854: 27,2424 53435 VXV UNIT # RTIG = POSITION AT TIME-OF-IGNITION.
032795,000855: 27,2425 03642 RTIG # YSCREF = UNIT(UT X RTIG)
032796,000856: 27,2426 46125 PDDL BHIZ
032797,000857: 27,2427 00045 36D # TEST MAGNITUDE OF UT X RTIG
032798,000858: 27,2430 56441 FIXY # IF SMALL, USE UT X VTIG AS YSC
032799,000859: 27,2431 45575 STORY VLOAD STADR
032800,000860: 27,2432 74162 STORE YSCREF
032801,000861: 27,2433 76435 VXV VSL1 # COMPUTE (YSCREF X XSCREF),BUT FOR A
032802,000862: 27,2434 03607 XSCREF # RIGHT HANDED SYSTEM, NEED (X CROSS Y).
032803,000863: 27,2435 77676 VCOMP # ZSCREF = - (YSCREF X XSCREF)
032804,000864: 27,2436 03623 STORE ZSCREF # = + (XSCREF X YSCREF)
032805,000865:
032806,000866: 27,2437 43414 SET RVQ
032807,000867: 27,2440 01073 PFRATFLG
032808,000868: 27,2441 47375 FIXY VLOAD VXV # IN THIS CASE,
032809,000869: 27,2442 03607 XSCREF # YSCREF = UNIT(XSCREF X VTIG)
032810,000870: 27,2443 03650 VTIG
032811,000871: 27,2444 41456 UNIT PUSH
032812,000872: 27,2445 77650 GOTO
032813,000873: 27,2446 56431 STORY
032814,000874:
|
Page 756 |
032816,000876: # SUBROUTINE S40.8
032817,000877:
032818,000878: # MODIFIED APRIL 3, 1968 BY PETER ADLER MIT/IL
032819,000879:
032820,000880: # DESCRIPTION
032821,000881:
032822,000882: # S40.8 UPDATES THE VELOCITY-TO-BE-GAINED VECTOR, VG, (AND FOR LAMBERT TARGETTED BURNS ALSO EXTRAPOLATES VG
032823,000883: # USING THE BDT VECTOR) COMPUTES THE TIME FOR ISSUING THE ENGINE OFF COMMAND, TGO, AND CALLS THE ROUTINE
032824,000884: # "FINDCDUW", WHICH GENERATES THE STEERING COMMANDS FOR THE DAP.
032825,000885:
032826,000886: # CALLING SEQUENCE
032827,000887:
032828,000888: # L-1 CALL
032829,000889: # L S40.8
032830,000890: # L+1 INTERPRETIVE RETURN
032831,000891:
032832,000892: # ALARM
032833,000893:
032834,000894: # IF VG . DELVREF IS NEGATIVE (VG AND DELVREF OVER 90 DEGREES APART), BYPASS TGO AND STEERING COMPUTATIONS
032835,000895: # AND SET ALARM 1407. RETURN TO CALLER NORMALLY.
032836,000896:
032837,000897: # INPUT AND INITIALIZATION
032838,000898:
032839,000899: # VGPREV REFERENCE 2(7) M/CS
032840,000900: # DELVREF REFERENCE 2(7) M/CS
032841,000901: # BDT REFERENCE 2(7) M/CS
032842,000902: # TDECAY TAIL-OFF TIME 2(28) CS
032843,000903: # XDELVFLG 1 = EXTERNAL DELTA-V; 0 = LAMBERT (AIMPOINT)
032844,000904: # STEERSW 1 = DO STEERING AND TGO COMPUTATIONS; 0 = VG UPDATE ONLY
032845,000905: # FIRSTFLG 1 = GONE TO LAMBERT AT LEAST ONCE; 0 = HAVEN'T GONE TO LAMBERT YET
032846,000906:
032847,000907: # NOTE: VGTIG EQUALS VGPREV
032848,000908:
032849,000909: # OUTPUT
032850,000910:
032851,000911: # STEERSW SEE INPUT
032852,000912: # IMPULSW 1 = ENGINE OFF IN TGO CENTISECONDS; 0 = CONTINUE BURN
032853,000913: # TGO TIME TO CUT-OFF 2(28) CS
032854,000914: # SEE FINDCDUW FOR STEERING OUTPUTS.
032855,000915:
032856,000916: # SUBROUTINE CALLED
032857,000917:
032858,000918: # FINDCDUW
032859,000919:
032860,000920: # DEBRIS
032861,000921:
032862,000922: # MPACS, PUSHLIST
032863,000923:
032864,000924: 27,2447 COUNT* $$/S40.8
|
Page 757 |
032866,000926: 27,2447 77614 S40.8 BOF # GENERATE VR IF NOT EXTERNAL DELTA-V BURN
032867,000927: 27,2450 01347 XDELVFLG
032868,000928: 27,2451 56727 RASTEER1
032869,000929: 27,2452 52375 VLOAD VSU
032870,000930: 27,2453 03701 VGPREV
032871,000931: 27,2454 03527 DELVREF
032872,000932: 27,2455 03707 VGAIN* STORE VG # VELOCITY TO BE GAINED SCALED AT (7)M/CS
032873,000933: 27,2456 76521 MXV VSL1
032874,000934: 27,2457 01732 REFSMMAT
032875,000935: 27,2460 03253 STORE UNFC/2
032876,000936: 27,2461 51575 BDTOK VLOAD ABVAL
032877,000937: 27,2462 03707 VG
032878,000938: 27,2463 03664 STORE VGDISP
032879,000939: 27,2464 77776 EXIT
032880,000940: 27,2465 05364 TC PHASCHNG
032881,000941: 27,2466 10035 OCT 10035
032882,000942: 27,2467 06042 TC INTPRET
032883,000943: 27,2470 77201 TGDCALC SETPD VLOAD
032884,000944: 27,2471 00001 0
032885,000945: 27,2472 03707 VG
032886,000946: 27,2473 27701 STOVL VGPREV
032887,000947: 27,2474 03527 DELVREF
032888,000948: 27,2475 57414 BOFF VCOMP
032889,000949: 27,2476 01344 STEERSW
032890,000950: 27,2477 75623 S40RET # LOCATION FOLLOWING CALL TO S40.8
032891,000951: 27,2500 77656 UNIT
032892,000952: 27,2501 41441 DOT PUSH
032893,000953: 27,2502 03707 VG
032894,000954: 27,2503 56244 BPL DDV
032895,000955: 27,2504 51632 ALARMIT # DELV IS MORE THAN 90 DEGREES FROM VG.
032896,000956: 27,2505 03743 VEX
032897,000957: 27,2506 41215 DAD DMP
032898,000958: 27,2507 06516 DPHALF
032899,000959: 27,2510 56261 SR DDV
032900,000960: 27,2511 20613 10D
032901,000961: 27,2512 00045 36D
032902,000962: 27,2513 43205 DMP DAD
032903,000963: 27,2514 16533 -FOURDT
032904,000964: 27,2515 03741 TDECAY
032905,000965: 27,2516 03517 STORE TGO
032906,000966: 27,2517 77615 DAD
032907,000967: 27,2520 01234 PIPTIME
032908,000968: 27,2521 17442 STODL TIG
032909,000969: 27,2522 03517 TGO
032910,000970: 27,2523 51025 DSU BPL
032911,000971: 27,2524 16535 FOURSECS # 400 CS
032912,000972: 27,2525 51636 GOFIND # CALL TO FINDCDUW -2
032913,000973: 27,2526 43014 SET CLRGO
032914,000974: 27,2527 01066 IMPULSW
032915,000975: 27,2530 01224 STEERSW
032916,000976: 27,2531 75623 S40RET # LOCATION FOLLOWING CALL TO S40.8
032917,000977:
|
Page 758 |
032919,000979: 24,3632 BANK 24
032920,000980: 24,2000 SETLOC S40BNK
032921,000981: 24,2000 BANK
032922,000982:
032923,000983: 24,3632 77776 ALARMIT EXIT
032924,000984: 24,3633 05600 TC ALARM
032925,000985: 24,3634 01407 OCT 01407 # SKIP TGO COMPUTATION BUT CALL FINDCDUW.
032926,000986: 24,3635 06042 TC INTPRET
032927,000987: 24,3636 77624 GOFIND CALL
032928,000988: 24,3637 61072 FINDCDUW -2
032929,000989: 24,3640 77650 GOTO
032930,000990: 24,3641 75623 S40RET # LOCATION FOLLOWING CALL TO S40.8
032931,000991:
032932,000992: 27,2532 BANK 27
032933,000993: 27,2000 SETLOC P40S1
032934,000994: 27,2000 BANK
032935,000995:
032936,000996: 27,2532 77715 77777 -FOURDT 2DEC -800 B-18 # -4 (200 CS.) B (-18)
032937,000997:
032938,000998: 27,2534 00000 00620 FOURSECS 2DEC 400 B-28 # 400 CS SCALED AT 2(+28) CS
032939,000999:
032940,001000: 27,2536 E7,1742 2VEXHUST = VEX
032941,001001:
|
Page 759 |
032943,001003: # NAME S40.13 - TIMEBURN
032944,001004: # FUNCTION (1) DETERMINE WHETHER A GIVEN COMBINATION OF VELOCITY TO
032945,001005: # BE GAINED AND ENGINE CHOICE RESULT IN A BURN TIME
032946,001006: # SUFFICIENT TO ALLOW STEERING AT THE VEHICLE DURING THE
032947,001007: # BURN
032948,001008: # (2) THE MAGNITUDE OF THE RESULTING BURN TIME -- IF IT
032949,001009: # IS SHORT -- AND THE ASSOCIATED TIME OF THE ENGINE OFF
032950,001010: # SIGNAL
032951,001011: # CALLING SEQUENCE VIA FINDVAC AS A NEW JOB
032952,001012: # INPUT VGTIG VELOCITY TO BE GAINED VECTOR (METERS/CS) AT +7
032953,001013: # WEIGHT/G MASS OF VEHICLE IN KGM AT +16
032954,001014: # F APS ENGINE THRUST IN M.NEWTONS AT +7
032955,001015: # AND ALSO FOR RCS ENGINE
032956,001016: # MDOT RATE OF DECREASE OF VEHICLE MASS DURING ENGINE
032957,001017: # BURN IN KILOGRAMS/CS AT +3 . THIS SCALING MAY
032958,001018: # REQUIRE MODIFICATION FOR SATURN BURNS.
032959,001019: # ENG1FLAG SWITCH TO DECIDE WHETHER APS OR DPS ENGINE IS USED
032960,001020: # =0 DPS
032961,001021: # =1 APS
032962,001022: # OUTPUT IMPULSW ZERO FOR STEERING
032963,001023: # ONE FOR ATTITUDE HOLD
032964,001024: # NOTHROTL ZERO FOR THROTTLING
032965,001025: # ONE TO INHIBIT THROTTLING
032966,001026: # TGO TIME TO BURN IN CS
032967,001027: # THE QUANTITY M.NEWTON = 10000 NEWTONS WILL BE USED TO EXPRESS
032968,001028: # FORCE
032969,001029:
032970,001030: 27,2536 E7,1516 EBANK= TGO
032971,001031: 27,2536 COUNT* $$/40.13
032972,001032: 27,2536 06042 S40.13 TC INTPRET
032973,001033: 27,2537 43001 SETPD CLEAR
032974,001034: 27,2540 00001 00D
032975,001035: 27,2541 01266 IMPULSW # ASSUME NO STEERING UNTIL FOUND OTHERWISE
032976,001036: 27,2542 51575 VLOAD ABVAL
032977,001037: 27,2543 03701 VGTIG # VELOCITY TO BE GAINED AT +7
032978,001038: 27,2544 41325 PDDL DMP # 00D = MAG OF VGTIG AT +7
032979,001039: 27,2545 21000 4SEC(17) # CORRECT VG FOR 4 SECS OF 2 JET ULLAGE
032980,001040: 27,2546 34021 FRCS2
032981,001041: 27,2547 72471 DDV SL1 # SCALE
032982,001042: 27,2550 01244 WEIGHT/G
032983,001043: 27,2551 41421 BDSU PUSH
032984,001044: 27,2552 43014 BOFF SET
032985,001045: 27,2553 05342 APSFLAG
032986,001046: 27,2554 56624 S40.13D # FOR DPS ENGINE
032987,001047: 27,2555 02463 NOTHROTL
032988,001048: 27,2556 56345 DLOAD DDV # 00D = MAG OF VGTIG CORRECTED
032989,001049: 27,2557 16001 K1VAL # M.NEWTONS-CS AT +24
032990,001050: 27,2560 01244 WEIGHT/G
032991,001051: 27,2561 50021 BDSU BMN
|
Page 760 |
032993,001053: 27,2562 00001 00D
032994,001054: 27,2563 56606 S40.131 # TGO LESS THAN 100 CS
032995,001055: 27,2564 41325 PDDL DMP # 02D = TEMP1 AT +7
032996,001056: 27,2565 03737 MDOT
032997,001057:
032998,001058: # MDOT REPRESENTS THE RATE OF DECREASE OF VEHICLE MASS DURING ENGINE
032999,001059: # BURN IN KILOGRAMS/CS . WHEN SATURN IS USED , THE SCALING MAY
033000,001060: # REQUIRE ADJUSTMENT
033001,001061:
033002,001062: 27,2566 16676 3.5SEC # 350 CS AT +14
033003,001063: 27,2567 65221 BDSU PDDL
033004,001064: 27,2570 01244 WEIGHT/G
033005,001065: 27,2571 03735 F
033006,001066: 27,2572 60405 DMP SR2 # SCALE
033007,001067: 27,2573 16700 5SECS
033008,001068: 27,2574 41471 DDV PUSH # 04D = TEMP2
033009,001069: 27,2575 51021 BDSU BPL
033010,001070: 27,2576 00003 02D
033011,001071: 27,2577 56624 S40.13D
033012,001072: 27,2600 55345 DLOAD BDDV
033013,001073: 27,2601 43205 DMP DAD
033014,001074: 27,2602 16700 5SECS
033015,001075: 27,2603 16674 1SEC2D # 100 CS AT +14
033016,001076: 27,2604 77650 GOTO
033017,001077: 27,2605 56614 S40.132
033018,001078: 27,2606 41345 S40.131 DLOAD DMP
033019,001079: 27,2607 01244 WEIGHT/G
033020,001080: 27,2610 41542 SR1 PUSH
033021,001081: 27,2611 56215 DAD DDV
033022,001082: 27,2612 16003 K2VAL # M.NEWTON CS AT +24
033023,001083: 27,2613 16005 K3VAL # M.NEWTON CS AT +10
033024,001084: 27,2614 77414 S40.132 SET EXIT
033025,001085: 27,2615 01066 IMPULSW
033026,001086: 27,2616 07262 S40.132* TC TPAGREE
033027,001087: 27,2617 30154 CA MPAC
033028,001088: 27,2620 56001 XCH L
033029,001089: 27,2621 34755 CA ZERO
033030,001090: 27,2622 53517 DXCH TGO
033031,001091: 27,2623 12646 TCF S40.134
033032,001092:
033033,001093: 27,2624 41345 S40.13D DLOAD DMP # FOR DPS ENGINE
033034,001094: 27,2625 00001 00D
033035,001095: 27,2626 01244 WEIGHT/G
033036,001096: 27,2627 43006 PUSH BON
033037,001097: 27,2630 05302 APSFLAG
033038,001098: 27,2631 56667 APSTGO
033039,001099: 27,2632 43071 DDV CLEAR
033040,001100: 27,2633 16007 S40.136
033041,001101: 27,2634 02663 NOTHROTL
033042,001102: 27,2635 41400 BOV PUSH
|
Page 761 |
033044,001104: 27,2636 56651 S40.130V
033045,001105: 27,2637 51025 S40.137 DSU BPL
033046,001106: 27,2640 16702 6SEC # 600.0 CS AT +14
033047,001107: 27,2641 56657 S40.138
033048,001108: 27,2642 52015 DAD GOTO
033049,001109: 27,2643 16702 6SEC
033050,001110: 27,2644 56614 S40.132
033051,001111: 27,2645 77776 S40.133 EXIT
033052,001112: 27,2646 05364 S40.134 TC PHASCHNG
033053,001113: 27,2647 00003 OCT 00003
033054,001114: 27,2650 05155 TC ENDOFJOB
033055,001115: 27,2651 40545 S40.130V DLOAD SR4 # RECOMPUTE TGO IN TIME2 UNITS
033056,001116: 27,2652 77671 DDV
033057,001117: 27,2653 16011 S40.136_ # S40.136 SHIFTED LEFT 10
033058,001118: 27,2654 03517 STORE TGO
033059,001119: 27,2655 77776 EXIT
033060,001120: 27,2656 12646 TCF S40.134 # REJOIN COMMON CODING FOR RESTART PROTECT
033061,001121:
033062,001122: 27,2657 51025 S40.138 DSU BPL
033063,001123: 27,2660 16704 89SECS
033064,001124: 27,2661 56664 STORETGO
033065,001125: 27,2662 77614 SET
033066,001126: 27,2663 02463 NOTHROTL
033067,001127: 27,2664 77745 STORETGO DLOAD # LOAD TGO AT 2(14)
033068,001128: 27,2665 77776 EXIT
033069,001129: 27,2666 12616 TCF S40.132*
033070,001130:
033071,001131: 27,2667 62471 APSTGO DDV SL2
033072,001132: 27,2670 34007 FAPS
033073,001133: 27,2671 77650 GOTO
033074,001134: 27,2672 56665 STORETGO +1
033075,001135: 27,2673 00144 00000 1SEC2D 2DEC 100.0 B-14 # 100.0 CS AT +14
033076,001136:
033077,001137: 27,2675 01274 00000 3.5SEC 2DEC 350.0 B-13 # 350 CS AT +13
033078,001138:
033079,001139: 27,2677 00764 00000 5SECS 2DEC 500.0 B-14 # 500.0 CS AT +14
033080,001140:
033081,001141: 27,2701 01130 00000 6SEC 2DEC 600.0 B-14 # 600.0 CS AT +14
033082,001142:
033083,001143: 27,2703 21304 00000 89SECS 2DEC 8900.0 B-14
033084,001144:
033085,001145: # FUNCTION (1) GENERATES REQUIRED VELOCITY AND VELOCITY-TO-BE-GAINED
033086,001146: # VECTORS FOR USE DURING AIMPOINT MANEUVERS EVERY TWO
033087,001147: # COMPUTATION CYCLES (4 SECONDS).
033088,001148: # (2) UPDATES THE B VECTOR WHICH IS USED IN THE FINAL
033089,001149: # CALCULATION OF EXTRAPOLATING THE VELOCITY-TO-BE-GAINED
033090,001150: # THROUGH ONE 2-SECOND INTERVAL INTO THE FUTURE.
033091,001151: # CALLING SEQ VIA FINDVAC AS NEW JOB.
|
Page 762 |
033093,001153: # INPUT RN - ACTIVE VEHICLE RADIUS VECTOR IN METERS AT +29.
033094,001154: # VN - ACTIVE VEHICLE VELOCITY VECTOR IN METERS/CS AT +7
033095,001155: # VRPREV - LAST COMPUTED VELOCITY REQUIRED VECTOR IN
033096,001156: # METERS/CS AT +7.
033097,001157: # TIG - TIME OF IGNITION IN CS AT +28.
033098,001158: # DLTARG - COMPUTATION CYCLE INTERVAL = 200 CS AT +28.
033099,001159: # PIPTIME - TIME OF RN AND VN IN CS AT +28.
033100,001160: # GDT/2 - HALF OF VELOCITY GAINED IN DELTA T TIME DUE TO
033101,001161: # ACCERERATION OF GRAVITY IN METERS/CS AT +7.
033102,001162: # DELVREF - CHANGE IN VELOCITY DURING LAST 2 SEC IN
033103,001163: # METERS/CS AT +7.
033104,001164: # OUTPUT VGPREV - VELOCITY TO BE GAINED VECTOR IN METERS/CS AT +7.
033105,001165: # VGDISP - MAG OF VGPREV FOR DISPLAY PURPOSES.
033106,001166: # VRPREV - VELOCITY REQUIRED VECTOR IN METERS/CS AT +7.
033107,001167: # BDT - B VECTOR IN METERS/CS AT +7.
033108,001168: # SUBROUTINES USED - INITVEL
033109,001169: 27,2705 E7,1700 EBANK= VGPREV
033110,001170: 27,2705 COUNT* $$/S40.9
033111,001171: 27,2705 06042 S40.9 TC INTPRET
033112,001172: 27,2706 77601 SETPD
033113,001173: 27,2707 00001 00D
033114,001174: 27,2710 71214 SET DLOAD
033115,001175: 27,2711 01072 AVFLAG # SET AVFLAG FOR LEM ACTIVE
033116,001176: 27,2712 06520 HI6ZEROS
033117,001177: 27,2713 77725 PDDL
033118,001178: 27,2714 16406 EPS1
033119,001179: 27,2715 43214 BOFF DAD # EPSILON4 = 10 OR 45 DEGREES.
033120,001180: 27,2716 03745 NORMSW
033121,001181: 27,2717 56721 EPSSMALL
033122,001182: 27,2720 16410 EPS2
033123,001183: 27,2721 45006 EPSSMALL PUSH CALL
033124,001184: 27,2722 22002 HAVEGUES
033125,001185: 27,2723 77776 ENDS40.9 EXIT
033126,001186: 27,2724 05364 TC PHASCHNG
033127,001187: 27,2725 00002 OCT 2
033128,001188: 27,2726 15155 TCF ENDOFJOB
033129,001189:
033130,001190:
033131,001191: 27,2727 51575 RASTEER1 VLOAD ABVAL
033132,001192: 27,2730 01220 RN
033133,001193: 27,2731 53744 LXC,2 SL*
033134,001194: 27,2732 02777 RTX2
033135,001195: 27,2733 57576 0,2
033136,001196: 27,2734 27715 STOVL RMAG
033137,001197: 27,2735 03444 RTARG
033138,001198: 27,2736 47051 VSU RTB
033139,001199: 27,2737 01220 RN
033140,001200: 27,2740 21725 NORMUNX1
033141,001201: 27,2741 17656 STODL IC
033142,001202: 27,2742 00045 36D # C(36D) = ABVAL(C)
|
Page 763 |
033144,001204: 27,2743 53674 XAD,2 SL*
033145,001205: 27,2744 00046 X1
033146,001206: 27,2745 57576 0,2
033147,001207: 27,2746 00037 STORE 30D
033148,001208: 27,2747 41301 NORM DMP
033149,001209: 27,2750 00050 X2
033150,001210: 27,2751 03715 RMAG
033151,001211: 27,2752 57101 NORM XAD,2
033152,001212: 27,2753 00047 X1
033153,001213: 27,2754 00046 X1
033154,001214: 27,2755 77734 SXA,2
033155,001215: 27,2756 03766 MUSCALE
033156,001216: 27,2757 17725 STODL R1C # 2(+58 -X)
033157,001217: 27,2760 00037 30D
033158,001218: 27,2761 65342 SR1 PDDL
033159,001219: 27,2762 03715 RMAG
033160,001220: 27,2763 65342 SR1 PDDL
033161,001221: 27,2764 03723 RTMAG
033162,001222: 27,2765 43342 SR1 DAD
033163,001223: 27,2766 45415 DAD STADR
033164,001224: 27,2767 74044 STORE SS # SS = (R1 + R2 +C )/2
033165,001225: 27,2770 41225 DSU DMP
033166,001226: 27,2771 00037 30D
033167,001227: 27,2772 03721 MU/A
033168,001228: 27,2773 77621 BDSU
033169,001229: 27,2774 03717 MUASTEER
033170,001230: 27,2775 45325 PDDL DSU
033171,001231: 27,2776 03733 SS
033172,001232: 27,2777 03715 RMAG
033173,001233: 27,3000 70501 NORM SR1
033174,001234: 27,3001 00047 X1
033175,001235: 27,3002 41271 DDV DMP
033176,001236: 27,3003 03725 R1C
033177,001237: 27,3004 53664 XSU,2 SL*
033178,001238: 27,3005 00046 X1
033179,001239: 27,3006 57575 1,2
033180,001240: 27,3007 77754 LXA,2
033181,001241: 27,3010 03766 MUSCALE
033182,001242: 27,3011 75366 SQRT SIGN
033183,001243: 27,3012 02673 GEOMSGN
033184,001244: 27,3013 00041 STORE 32D # + OR - A
033185,001245: 27,3014 41345 DLOAD DMP
033186,001246: 27,3015 03733 SS
033187,001247: 27,3016 03721 MU/A
033188,001248: 27,3017 77621 BDSU
033189,001249: 27,3020 03717 MUASTEER
033190,001250: 27,3021 45325 PDDL DSU
033191,001251: 27,3022 03733 SS
033192,001252: 27,3023 03723 RTMAG
033193,001253: 27,3024 70501 NORM SR1
|
Page 764 |
033195,001255: 27,3025 00047 X1
033196,001256: 27,3026 41271 DDV DMP
033197,001257: 27,3027 03725 R1C
033198,001258: 27,3030 53664 XSU,2 SL*
033199,001259: 27,3031 00046 X1
033200,001260: 27,3032 57575 1,2
033201,001261: 27,3033 65366 SQRT PDDL # -B (NO SIGN)
033202,001262: 27,3034 03733 SS
033203,001263: 27,3035 56225 DSU DDV
033204,001264: 27,3036 00037 30D
033205,001265: 27,3037 03733 SS
033206,001266: 27,3040 41566 SQRT PUSH
033207,001267: 27,3041 67542 SR1 ASIN
033208,001268: 27,3042 65205 DMP PDDL
033209,001269: 27,3043 17214 2PI+3
033210,001270: 27,3044 56325 PDDL DDV
033211,001271: 27,3045 00037 30D
033212,001272: 27,3046 03733 SS
033213,001273: 27,3047 77600 BOV
033214,001274: 27,3050 57051 +1
033215,001275: 27,3051 41366 SQRT DMP
033216,001276: 27,3052 44242 SR3 BDSU
033217,001277: 27,3053 65365 SIGN PDDL
033218,001278: 27,3054 02673 GEOMSGN
033219,001279: 27,3055 17214 2PI+3
033220,001280: 27,3056 45302 SR2 DSU
033221,001281: 27,3057 65205 DMP PDDL
033222,001282: 27,3060 03733 SS
033223,001283: 27,3061 03733 SS
033224,001284: 27,3062 75442 SR3 SQRT
033225,001285: 27,3063 77605 DMP
033226,001286: 27,3064 52525 PDDL SL3
033227,001287: 27,3065 03717 MUASTEER
033228,001288: 27,3066 55366 SQRT BDDV
033229,001289: 27,3067 43225 DSU DAD
033230,001290: 27,3070 03631 TPASS4
033231,001291: 27,3071 01234 PIPTIME
033232,001292: 27,3072 14037 STODL 30D
033233,001293: 27,3073 77765 SIGN
033234,001294: 27,3074 00037 30D # B WITH SIGN
033235,001295: 27,3075 00037 STORE 30D
033236,001296: 27,3076 77214 BON VLOAD
033237,001297: 27,3077 03705 NORMSW
033238,001298: 27,3100 57121 180MESS
033239,001299: 27,3101 03656 IC
033240,001300: 27,3102 53451 VSU UNIT
033241,001301: 27,3103 03537 UNIT/R/
033242,001302: 27,3104 63361 VXSC PDVL
033243,001303: 27,3105 00037 30D
033244,001304: 27,3106 03656 IC
|
Page 765 |
033246,001306: 27,3107 53455 VAD UNIT
033247,001307: 27,3110 03537 UNIT/R/
033248,001308: 27,3111 53361 GETVRVG1 VXSC VAD
033249,001309: 27,3112 00041 32D
033250,001310: 27,3113 53744 GETVRVG2 LXC,2 VSR*
033251,001311: 27,3114 02777 RTX2
033252,001312: 27,3115 57177 0 -1,2
033253,001313: 27,3116 02337 STORE VIPRIME
033254,001314: 27,3117 77650 GOTO
033255,001315: 27,3120 57164 ASTREND -2
033256,001316: 27,3121 50375 180MESS VLOAD DOT
033257,001317: 27,3122 03656 IC
033258,001318: 27,3123 03537 UNIT/R/
033259,001319: 27,3124 77240 BMN VLOAD
033260,001320: 27,3125 57144 NEGPROD
033261,001321: 27,3126 03656 IC
033262,001322: 27,3127 63362 VSR1 PDVL
033263,001323: 27,3130 03537 UNIT/R/
033264,001324: 27,3131 53362 VSR1 VAD
033265,001325: 27,3132 77656 UNIT
033266,001326: 27,3133 57406 PUSH VCOMP # FOR A
033267,001327: 27,3134 75235 VXV SIGN
033268,001328: 27,3135 02674 UN
033269,001329: 27,3136 02673 GEOMSGN
033270,001330: 27,3137 74256 UNIT VXSC
033271,001331: 27,3140 00037 30D
033272,001332: 27,3141 77715 PDVL # UNIT(IC-IR) +-B
033273,001333: 27,3142 77650 GOTO
033274,001334: 27,3143 57111 GETVRVG1
033275,001335: 27,3144 74575 NEGPROD VLOAD VSR1
033276,001336: 27,3145 03537 UNIT/R/
033277,001337: 27,3146 74515 PDVL VSR1
033278,001338: 27,3147 03656 IC
033279,001339: 27,3150 53451 VSU UNIT
033280,001340: 27,3151 77606 PUSH
033281,001341: 27,3152 75235 VXV SIGN
033282,001342: 27,3153 02674 UN # FOR B
033283,001343: 27,3154 02673 GEOMSGN
033284,001344: 27,3155 74256 UNIT VXSC
033285,001345: 27,3156 00041 32D
033286,001346: 27,3157 77715 PDVL
033287,001347: 27,3160 53361 VXSC VAD
033288,001348: 27,3161 00037 30D
033289,001349: 27,3162 77650 GOTO
033290,001350: 27,3163 57113 GETVRVG2
033291,001351: 27,3164 77651 VSU
033292,001352: 27,3165 03553 VN1
033293,001353: 27,3166 02366 ASTREND STORE DELVEET3
033294,001354: 27,3167 53135 FIRSTTME SLOAD BZE
033295,001355: 27,3170 03000 RTX2
|
Page 766 |
033297,001357: 27,3171 57175 GETGOBL
033298,001358: 27,3172 52175 VLOAD GOTO # NO OBLATENESS COMP IF IN MOON SPHERE
033299,001359: 27,3173 02366 DELVEET3
033300,001360: 27,3174 57210 NOGOBL
033301,001361: 27,3175 53575 GETGOBL VLOAD UNIT # CALCULATE OBLATENESS TERM.
033302,001362: 27,3176 01220 RN
033303,001363: 27,3177 45345 DLOAD DSU
033304,001364: 27,3200 01234 PIPTIME # 2
033305,001365: 27,3201 03512 GOBLTIME # G = -(MU/R )(UNITGOBL)(T - TIG)
033306,001366: 27,3202 56205 DMP DDV # OBL
033307,001367: 27,3203 16023 EARTHMU
033308,001368: 27,3204 00043 34D # 34D = /RN/ (2) FROM UNIT OPERATION.
033309,001369: 27,3205 53361 VXSC VAD
033310,001370: 27,3206 03521 UNITGOBL
033311,001371: 27,3207 02366 DELVEET3 # OUTPUT FROM INITVEL VG = VR - VN
033312,001372: 27,3210 02366 NOGOBL STORE DELVEET3 # VG = VR + GOBL - VN
033313,001373: 27,3211 77650 GOTO
033314,001374: 27,3212 56455 VGAIN*
033315,001375:
033316,001376:
033317,001377: 27,3213 31103 36652 2PI+3 2DEC 3.141592653 B-2
033318,001378:
033319,001379:
|
Page 767 |
033321,001381: # TRIMGIMB (FORMERLY S40.6)
033322,001382: # MOD 0 24 FEB 67 PETER ADLER
033323,001383: # FUNCTION:
033324,001384: # TRIMS DPS ENGINE TO MINIMIZE THRUST/CG OFFSET. ENGINE IS GIMBALLED TO FULL + PITCH AND + ROLL (TO LOCK)
033325,001385: # FOR REFERENCE AND IS THEN BROUGHT BACK TO TRIM POSITION BY RUNNING FOR THE PROPER TIMES (TO BE
033326,001386: # SPECIFIED BY GAEC) IN - PITCH AND - ROLL.
033327,001387: # CALLING SEQUENCE:
033328,001388: # VIA WAITLIST FROM R03
033329,001389: # INPUT:
033330,001390: # PITTIME TIME TO RUN FROM FULL + PITCH TO TRIM (CS)
033331,001391: # ROLLTIME TIME TO RUN FROM FULL + ROLL TO TRIM (CS)
033332,001392: # SUBROUTINES USED:
033333,001393: # WAITLIST, FIXDELAY, VARDELAY, FLAGUP, FLAGDOWN, NOVAC
033334,001394:
033335,001395: 27,3215 COUNT* $$/S40.6
033336,001396: 27,3215 E6,1401 EBANK= ROLLTIME # OCTAL MASKS: PRIO5=05000 EBANK5=02400
033337,001397:
033338,001398: 27,3215 05527 TRIMGIMB TC DOWNFLAG # GMBDRVSW FLAG IS SET WHEN EITHER ROLL OR
033339,001399: 27,3216 00137 ADRES GMBDRVSW # PITCH IS COMPLETED, WHICHEVER IS FIRST.
033340,001400:
033341,001401: 27,3217 45017 CS PRIO5 # TURN OFF - PITCH, - ROLL, IF ON.
033342,001402: 27,3220 00006 EXTEND
033343,001403: 27,3221 03012 WAND CHAN12
033344,001404: 27,3222 35014 CAF EBANK5 # TURN ON + PITCH, + ROLL.
033345,001405: 27,3223 00006 EXTEND
033346,001406: 27,3224 05012 WOR CHAN12
033347,001407: 27,3225 05232 TC FIXDELAY # WAIT ONE MINUTE TO MAKE SURE ENGINE IS
033348,001408: 27,3226 13560 DEC 6000 B-14 # AT FULL + PITCH AND FULL + ROLL
033349,001409: 27,3227 45014 CS EBANK5 # TURN OFF + PITCH, + ROLL.
033350,001410: 27,3230 00006 EXTEND
033351,001411: 27,3231 03012 WAND CHAN12
033352,001412: 27,3232 35017 CAF PRIO5 # TURN ON - PITCH, - ROLL.
033353,001413: 27,3233 00006 EXTEND
033354,001414: 27,3234 05012 WOR CHAN12
033355,001415: 27,3235 31402 CAE PITTIME # GET TIME TO SHUT OFF - PITCH AND SET UP
033356,001416: 27,3236 05204 TC TWIDDLE # TWIDDLE-TASK TO TURN IT OFF THEN
033357,001417: 27,3237 03256 ADRES PITCHOFF
033358,001418:
033359,001419: 27,3240 31401 CAE ROLLTIME # GET TIME TO SHUT OFF - ROLL AND GO AWAY
033360,001420: 27,3241 05235 TC VARDELAY # UNTIL THEN
033361,001421: 27,3242 44740 CS BIT12
033362,001422: 27,3243 00006 EXTEND
033363,001423: 27,3244 03012 WAND CHAN12 # SHUT OFF ROLL
033364,001424: 27,3245 30102 ROLLOVER CA FLAGWRD6 # IF HERE INLINE (ROLL DONE) IS PITCH DONE
033365,001425: 27,3246 74742 MASK GMBDRBIT # IF HERE FROM PITCHOFF, IS ROLL DONE?
033366,001426: 27,3247 00006 EXTEND
033367,001427: 27,3250 13262 BZF PITCHOFF +4 # NO. SET FLAG, ROLL OR PITCH DONE.
033368,001428: 27,3251 34737 CAF PRIO10 # RETURN TO R03
033369,001429: 27,3252 05072 TC NOVAC
033370,001430: 27,3253 E7,1471 EBANK= WHOCARES
|
Page 768 |
033372,001432: 27,3253 02330 02067 2CADR TRIMDONE
033373,001433:
033374,001434: 27,3255 05272 TC TASKOVER
033375,001435: 27,3256 44742 PITCHOFF CS BIT10
033376,001436: 27,3257 00006 EXTEND
033377,001437: 27,3260 03012 WAND CHAN12 # SHUT OFF PITCH
033378,001438: 27,3261 13245 TCF ROLLOVER # SEE IF ROLL HAS FINISHED ALSO.
033379,001439: 27,3262 05515 TC UPFLAG # ROLL DONE; OR PITCH DONE; BUT NOT BOTH.
033380,001440: 27,3263 00137 ADRES GMBDRVSW
033381,001441: 27,3264 05272 TC TASKOVER
033382,001442:
|
Page 769 |
033384,001444: # SUBROUTINE NAME: S41.1 MOD. NO. 0 DATE: FEBRUARY 28, 1967
033385,001445:
033386,001446: # MOD. NO. 1 DATE: JANUARY 23, 1968: BY PETER ADLER (MIT/IL)
033387,001447:
033388,001448: # AUTHOR: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
033389,001449:
033390,001450: # S41.1 PERFORMS THE COORDINATE SYSTEM TRANFORMATION FROM THE REFERENCE FRAME TO THE BODY OF THE LM.
033391,001451: # SPECIFICALLY, IT IS USED TO TRANSFORM A VELOCITY (SCALED AT 2(+7) METERS/CENTISECOND) FROM REFERENCE TO LM AXIS
033392,001452: # COORDINATES. FIRST THE VECTOR IS TRANSFORMED TO THE STABLE MEMBER COORDINATES BY THE MATRIX REFSMMAT. THIS
033393,001453: # LEAVES THE VECTOR IN MPAC, SCALED AT 2(+8) METERS/CENTISECOND. THEN
033394,001454: # THE SUBROUTINE CDUTRIG IS CALLED TO SET UP THE DOUBLE-PRECISION CDU VECTOR ALONG WITH ITS SINES AND COSINES.
033395,001455: # THE VECTOR IS THEN TRANSFORMED FROM STABLE MEMBER COORDINATES TO SPACECRAFT (OR LM) COORDINATES BY THE
033396,001456: # SUBROUTINE *SMNB*. FINALLY( THE VECTOR IS RESCALED TO 2(+7) METERS/CENTISECOND, AND CONTROL IS RETURNED TO THE
033397,001457: # CALLER WITH C(MPAC) = VELOCITY(LM).
033398,001458:
033399,001459:
033400,001460: # CALLING SEQUENCE:
033401,001461: # L VLOAD CALL
033402,001462: # L +1 VELOCITY(REF) SCALED AT 2(+7)M/CS IN REFERENCE COORDS.
033403,001463: # L +2 S41.1
033404,001464: # L +3 STORE VELOCITY(LM) SCALED AT 2(+7)M/CS IN LM BODY AXIS SYS.
033405,001465:
033406,001466: # SUBROUTINES CALLED:
033407,001467:
033408,001468: # 1. CDUTRIG,
033409,001469: # WHICH CALLS CDULOGIC.
033410,001470: # 2. *SMNB*
033411,001471:
033412,001472: # NORMAL RETURN: L +3 (SEE CALLING SEQUENCE, ABOVE.)
033413,001473:
033414,001474: # ALARM/ABORT MODES: NONE.
033415,001475:
033416,001476: # RESTART PROTECTION: NONE.
033417,001477:
|
Page 770 |
033419,001479: # INPUT:
033420,001480:
033421,001481: # 1. REFSMMAT.
033422,001482: # 2. CDUX, CDUY, CDUZ.
033423,001483: # 3. VELOCITY (REF) IN MPAC.
033424,001484:
033425,001485: # OUTPUT:
033426,001486:
033427,001487: # 1. CDUSPOT: DOUBLE PRECISION CDU VECTOR, ORDERED Y,Z,X.
033428,001488: # 2. SINCDU: HALF SINES OF CDUSPOT COMPONENTS.
033429,001489: # 3. COSCDU: HALF COSINES OF CDUSPOT COMPONENTS.
033430,001490: # 4. MPAC: VELOCITY(LM) (SCALED AT 2(+7) METERS/CENTISECOND)
033431,001491:
033432,001492: # DEBRIS: NONE.
033433,001493:
033434,001494: # CHECKOUT STATUS: CODED.
033435,001495:
033436,001496: 27,3265 COUNT* $$/S41.1
033437,001497: 27,3265 76521 S41.1 MXV VSL1 # CONVERT VECTOR IN MPAC FROM REF AT 2(+7)
033438,001498: 27,3266 01732 REFSMMAT # TO SM AND RESCALE DUE TO HALFUNIT MATRIX
033439,001499: 27,3267 77650 GOTO # CONVERT TO BODY AT 2(+7) USING PRESENT
033440,001500: 27,3270 47653 CDU*SMNB # CDU ANGLES. CDU*SMNB WILL RETURN
033441,001501: # VIA RVQ TO THE CALLER OF S41.1
End of include-file P40-P47.agc. Parent file is MAIN.agc