Source Code

022269,000001: # Copyright: Public domain. 022270,000002: # Filename: R30.agc 022271,000003: # Purpose: Part of the source code for Colossus 2A, AKA Comanche 055. 022272,000004: # It is part of the source code for the Command Module's (CM) 022273,000005: # Apollo Guidance Computer (AGC), for Apollo 11. 022274,000006: # Assembler: yaYUL 022275,000007: # Contact: Hartmuth Gutsche <hgutsche@xplornet.com>. 022276,000008: # Website: www.ibiblio.org/apollo. 022277,000009: # Pages: 514-524 022278,000010: # Mod history: 2009-05-09 HG Started adapting from the Colossus249/ file 022279,000011: # of the same name, using Comanche055 page 022280,000012: # images 0514.jpg - 0524.jpg. 022281,000013: 022282,000014: # This source code has been transcribed or otherwise adapted from digitized 022283,000015: # images of a hardcopy from the MIT Museum. The digitization was performed 022284,000016: # by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many 022285,000017: # thanks to both. The images (with suitable reduction in storage size and 022286,000018: # consequent reduction in image quality as well) are available online at 022287,000019: # www.ibiblio.org/apollo. If for some reason you find that the images are 022288,000020: # illegible, contact me at info@sandroid.org about getting access to the 022289,000021: # (much) higher-quality images which Paul actually created. 022290,000022: 022291,000023: # Notations on the hardcopy document read, in part: 022292,000024: 022293,000025: # Assemble revision 055 of AGC program Comanche by NASA 022294,000026: # 2021113-051. 10:28 APR. 1, 1969 022295,000027: 022296,000028: # This AGC program shall also be referred to as 022297,000029: # Colossus 2A 022298,000030: 022299,000031: # Page 514 022300,000032: # SUBROUTINE NAME: V82CALL 022301,000033: # MOD NO: 0 DATE: 16 FEB 67 022302,000034: # MOD BY: R. R. BAIRNSFATHER LOG SECTION: R30 022303,000035: # MOD NO: 1 MOD BY: R. R. BAIRNSFATHER DATE: 11 APR 67 SR30.1 CHANGED TO ALLOW MONITOR OPERN 022304,000036: # MOD NO: 2 MOD BY: ALONSO DATE: 11 DEC 67 VB82 PROGRAM REWRITTEN 022305,000037: # MOD NO: 3 MOD BY: ALONSO DATE: 26 MAR 68 PROG MOD TO HANDLE DIF EARTH/MOON SCALE 022306,000038: 022307,000039: # NEW FUNCTIONAL DESCRIPTION: CALLED BY VERB 82 ENTER. PRIORITY 10. 022308,000040: # USED THROUGHOUT. CALCULATE AND DISPLAY ORBITAL PARAMETERS 022309,000041: 022310,000042: # 1. IF AVERAGE G IS OFF: 022311,000043: # FLASH DISPLAY V04N06. R2 INDICATES WHICH SHIP'S STATE VECTOR IS 022312,000044: # TO BE UPDATED. INITIAL CHOICE IS THIS SHIP (R2=1). ASTRONAUT 022313,000045: # CAN CHANGE TO OTHER SHIP BY V22EXE. WHERE X IS NOT EQ 1. 022314,000046: # SELECTED STATE VECTOR UPDATED BY THISPREC (OTHPREC). 022315,000047: # CALLS SR30.1 (WHICH CALLS TFFCONMU + TFFRP/RA) TO CALCULATE 022316,000048: # RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE 022317,000049: # HEIGHT ABOVE LAUNCH PAD OR LAUNAR LANDING SITE), HARD (APOGEE 022318,000050: # HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO 022319,000051: # INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE). 022320,000052: # FLASH MONITOR V16N44 (HAPO, HPER, TFF). TFF IS -59MS59S IF IT WAS 022321,000053: # NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND. 022322,000054: # ASTRONAUT HAS OPTION TO MONITOR TPER BY KEYING IN N 32 E. 022323,000055: # DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS 022324,000056: # ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S. 022325,000057: # 2. IF AVERAGE G IS ON: 022326,000058: # CALLS SR30.1 APPROX EVERY TWO SECS. STATE VECTOR IS ALWAYS 022327,000059: # FOR THIS VEHICLE. V82 DOES NOT DISTURB STATE VECTOR. RESULTS 022328,000060: # OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF. 022329,000061: # FLASH MONITOR V16N44 (HAPO, HPER, TFF). 022330,000062: # IF MODE IS P11, THEN CALL DELRSPL SO ASTRONAUT CAN MONITOR 022331,000063: # RESULTS BY N50E. SPLASH COMPUTATION DONE ONCE PER TWO SECS. 022332,000064: # ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE 022333,000065: # ABOVE REMARKS. 022334,000066: 022335,000067: # CALLING SEQUENCE: VERB 82 ENTER. 022336,000068: 022337,000069: # SUBROUTINES CALLED: SR30.1, GOXDSPF 022338,000070: # MAYBE -- THISPREC, OTHPREC, LOADTIME, DELRSPL 022339,000071: 022340,000072: # NORMAL EXIT MODES: TC ENDEXT 022341,000073: 022342,000074: # ALARMS: NONE 022343,000075: 022344,000076: # OUTPUT: HAPOX (-29) M 022345,000077: # HPERX (-29) M 022346,000078: # RAPO (-29) M EARTH 022347,000079: # (-27) M MOON 022348,000080: # Page 515 022349,000081: # RPER (-29) M EARTH 022350,000082: # (-27) M MOON 022351,000083: # TFF (-28) CS CONTAINS NEGATIVE QUANTITY 022352,000084: # -TPER (-28) CS CONTAINS NEGATIVE QUANTITY 022353,000085: # RSP-RREC(-29) M IF DELRSPL CALLED 022354,000086: 022355,000087: # ERASABLE INITIALIZATION REQUIRED: STATE VECTOR. 022356,000088: 022357,000089: # DEBRIS: QPRET, RONE, VONE, TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG. 022358,000090: # MAYBE: TSTART82, V82FLAGS, TDEC1. 022359,000091: 022360,000092: 13,2231 E4,1751 EBANK= HAPOX 022361,000093: 31,2332 BANK 31 022362,000094: 23,2000 SETLOC R30LOC 022363,000095: 23,2000 BANK 022364,000096: 23,2332 COUNT* $$/R30 022365,000097: 022366,000098: 23,2332 06006 V82CALL TC INTPRET 022367,000099: 23,2333 52014 BON GOTO 022368,000100: 23,2334 00716 AVEGFLAG 022369,000101: 23,2335 46566 V82GON # IF AVERAGE G ON 022370,000102: 23,2336 46337 V82GOFF # IF AVERAGE G OFF 022371,000103: 022372,000104: 23,2337 77776 V82GOFF EXIT # ALLOW ASTRONAUT TO SELECT VEHICLE 022373,000105: 23,2340 35016 CAF TWO # DESIRED FOR ORBITAL PARAMETERS 022374,000106: 23,2341 55051 TS OPTIONX 022375,000107: 23,2342 35017 CAF ONE 022376,000108: 23,2343 55052 TS OPTIONX +1 022377,000109: 23,2344 32406 CAF OPTIONVN # V 04 N 06 022378,000110: 23,2345 04662 TC BANKCALL 022379,000111: 23,2346 20561 CADR GOXDSPF 022380,000112: 23,2347 05534 TC ENDEXT # TERMINATE 022381,000113: 23,2350 02352 TC +2 # PROCEED 022382,000114: 23,2351 02344 TC -5 # DATA IN. OPTIONX +1 = 1 FOR THIS VEHIC. 022383,000115: # UNEQ 1 FOR OTHER VEHICLE. 022384,000116: 23,2352 35014 CAF BIT4 # 80 MS 022385,000117: 23,2353 05245 TC WAITLIST 022386,000118: 23,2354 E4,1743 EBANK= TFF 022387,000119: 23,2354 02531 46064 2CADR TICKTEST 022388,000120: 022389,000121: 23,2356 00003 RELINT 022390,000122: 23,2357 32410 V82GOFLP CAF TFFBANK # MAJOR RECYCLE LOOP ENTRY 022391,000123: 23,2360 54003 TS EBANK 022392,000124: 23,2361 35021 CAF ZERO 022393,000125: 23,2362 55742 TS V82FLAGS # ZERO FLAGS FOR TICKTEST, INHIBITS 022394,000126: # DECREMENTING OF TFF AND -TPER. 022395,000127: 23,2363 35063 CAF PRIO7 022396,000128: 23,2364 05147 TC FINDVAC # V82GOFF1 WILL EXECUTE STATE VECTOR 022397,000129: # Page 516 022398,000130: 23,2365 E4,1743 EBANK= TFF # UPDATE AND ORBIT CALCULATIONS FOR 022399,000131: 23,2365 02411 46064 2CADR V82GOFF1 # SELECTED VEHICLE ABOUT PROPER BODY. 022400,000132: 022401,000133: 23,2367 00003 RELINT 022402,000134: 23,2370 36214 V82STALL CAF THREE # STALL IN THIS LOOP AND WITHOLD V 16 N 44 022403,000135: 23,2371 71742 MASK V82FLAGS # UNTIL STATE VECTOR UPDATE SETS ONE OF 022404,000136: 23,2372 10000 CCS A # OUR FLAG BITS. 022405,000137: 23,2373 02400 TC FLAGGON # EXIT FROM STALL LOOP. 022406,000138: 23,2374 35041 CAF 1SEC 022407,000139: 23,2375 04662 TC BANKCALL 022408,000140: 23,2376 01732 CADR DELAYJOB 022409,000141: 23,2377 02370 TC V82STALL 022410,000142: 022411,000143: 23,2400 32407 FLAGGON CAF V16N44 # MONITOR HAPO,HPER,TFF. 022412,000144: 23,2401 04662 TC BANKCALL 022413,000145: 23,2402 20561 CADR GOXDSPF 022414,000146: 23,2403 05625 TC B5OFF # TERM THIS TELLS TICKTEST TO KILL ITSELF 022415,000147: 23,2404 05625 TC B5OFF # PROCEED DITTO 022416,000148: 23,2405 02357 TC V82GOFLP # RECYCLE RECOMPUTE STATE VECT + DISPLAY 022417,000149: 022418,000150: 23,2406 01014 OPTIONVN VN 0412 022419,000151: 23,2407 04054 V16N44 VN 1644 022420,000152: 23,2410 02343 TFFBANK ECADR TFF 022421,000153: 022422,000154: 23,2411 06006 V82GOFF1 TC INTPRET 022423,000155: 23,2412 77634 RTB 022424,000156: 23,2413 45510 LOADTIME 022425,000157: 23,2414 00041 STORE TDEC1 # TIME FOR STATE VECTOR UPDATE. 022426,000158: 23,2415 02325 STORE TSTART82 # TIME FOR INTERNAL USE. 022427,000159: 23,2416 77776 EXIT 022428,000160: 23,2417 41052 CS OPTIONX +1 # 1 FOR THIS VEHICLE, NOT 1 FOR OTHER 022429,000161: 23,2420 65017 AD ONE 022430,000162: 23,2421 00006 EXTEND 022431,000163: 23,2422 12446 BZF THISSHIP 022432,000164: 23,2423 06006 OTHSHIP TC INTPRET 022433,000165: 23,2424 77624 CALL # CALL STATE VECTOR UPDATE FOR OTHER SHIP. 022434,000166: 23,2425 27105 OTHPREC 022435,000167: 23,2426 77775 BOTHSHIP VLOAD # MOVE RESULTS INTO TFFCONIC STORAGE AREAS 022436,000168: 23,2427 00001 RATT # TO BE CALLED BY SR30.1. 022437,000169: 23,2430 26327 STOVL RONE # RATT AT (-29)M FOR EARTH OR MOON 022438,000170: 23,2431 00007 VATT 022439,000171: 23,2432 02335 STORE VONE # VATT AT (-7)M/CS FOR EARTH OR MOON 022440,000172: 23,2433 77743 DLOAD* 022441,000173: 23,2434 71321 1/RTMUE,2 # X2 IS 0 FOR EARTH CENTERED STATE VEC 022442,000174: # HG remark: In Comanche055 scan this line (5324) looks pretty much like 1/RTMUF.2 can not decide, leave it 022443,000175: # as it is in start source 022444,000176: 23,2435 00037 STORE TFF/RTMU # X2 IS 2 FOR MOON 022445,000177: 23,2436 77743 DLOAD* # AS LEFT BY THISPREC OR OTHPREC. 022446,000178: 23,2437 71315 MINPERE,2 022447,000179: 23,2440 02321 STORE HPERMIN # TFFRTMU, HPERMIN, AND RPADTEM ARE ALL 022448,000180: 23,2441 46135 SLOAD BHIZ # EARTH/MOON PARAMETERS AS SET HERE. 022449,000181: # Page 517 022450,000182: 23,2442 00050 X2 022451,000183: 23,2443 46463 EARTHPAD 022452,000184: 23,2444 77650 GOTO 022453,000185: 23,2445 46467 MOONPAD 022454,000186: 23,2446 06006 THISSHIP TC INTPRET 022455,000187: 23,2447 77624 CALL # CALL STATE VECTOR UPDATE FOR THIS SHIP. 022456,000188: 23,2450 27071 THISPREC 022457,000189: 23,2451 77650 GOTO 022458,000190: 23,2452 46426 BOTHSHIP 022459,000191: 022460,000192: # THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED. DO NOT SEPARATE PAIRS. 022461,000193: 022462,000194: 23,2453 27533 07571 1/RTMUM 2DEC* .45162595 E-4 B14* 022463,000195: 23,2455 25004 06702 1/RTMUE 2DEC* .50087529 E-5 B17* 022464,000196: 022465,000197: 23,2457 00001 11530 MINPERM 2DEC 10668 B-27 # 35 KFT MIN PERIGEE HEIGHT FOR MOON(-27)M 022466,000198: 23,2461 00002 31230 MINPERE 2DEC 91440 B-29 # 300 KFT (-29)M FOR EARTH 022467,000199: 022468,000200: 23,2463 43145 EARTHPAD DLOAD CLRGO # PAD 37-B RADIUS. SCALED AT (-29)M 022469,000201: 23,2464 05152 RPAD 022470,000202: 23,2465 04622 V82EMFLG # INDICATE EARTH SCALING FOR SR30.1 022471,000203: 23,2466 46473 BOTHPAD 022472,000204: 022473,000205: 23,2467 51575 MOONPAD VLOAD ABVAL # COMPUTE MOON PAD RADIUS FROM RLS VECTOR. 022474,000206: 23,2470 02026 RLS # SCALED AT (-27)M. 022475,000207: 23,2471 77614 SET 022476,000208: 23,2472 04462 V82EMFLG # INDICATE MOON SCALING FOR SR30.1 022477,000209: 23,2473 36323 BOTHPAD STCALL RPADTEM 022478,000210: 23,2474 46667 SR30.1 # CALCULATE ORBITAL PARAMETERS 022479,000211: 23,2475 77776 EXIT 022480,000212: 23,2476 31011 CA MODREG # ARE WE IN P00 022481,000213: 23,2477 00006 EXTEND 022482,000214: 23,2500 12645 BZF CANDEL # YES, DO DELRSPL 022483,000215: 23,2501 06006 SPLRET1 TC INTPRET 022484,000216: 23,2502 45234 RTB DSU 022485,000217: 23,2503 45510 LOADTIME 022486,000218: 23,2504 02325 TSTART82 # PRESENT TIME -- TIME V82GOFF1 BEGAN 022487,000219: 23,2505 02325 STORE TSTART82 # SAVE IT 022488,000220: 23,2506 53145 DLOAD BZE # SR30.1 SETS -TPER=0 IF HPER L/ 022489,000221: 23,2507 02346 -TPER # HPERMIN (300 OR 35) KFT. 022490,000222: 23,2510 46521 TICKTFF # (-TPER = 0) 022491,000223: 23,2511 43345 TICKTPER DLOAD DAD # (-TPER NON ZERO) TFF WAS NOT COMPUTED. 022492,000224: 23,2512 02346 -TPER # BUT WAS SET TO 59M59S. DON'T DICK TFF, DO 022493,000225: 23,2513 02325 TSTART82 # TICK -TPER. DISPLAY BOTH. 022494,000226: 23,2514 02346 STORE -TPER # -TPER CORRECTED FOR TIME SINCE V82GOFF1 022495,000227: 23,2515 77776 EXIT # BEGAN. 022496,000228: 022497,000229: # Page 518 022498,000230: 23,2516 35017 CAF BIT1 022499,000231: 23,2517 55742 TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY -TPER 022500,000232: 23,2520 05217 TC ENDOFJOB 022501,000233: 022502,000234: 23,2521 43345 TICKTFF DLOAD DAD # (-TPER=0) TFF WAS COMPUTED. TICK TFF. 022503,000235: 23,2522 02344 TFF # DO NOT TICK -TPER. DISPLAY TFF, BUT NOT 022504,000236: 23,2523 02325 TSTART82 # -TPER 022505,000237: 23,2524 02344 STORE TFF # TFF CORRECTED FOR TIME SINCE V82GOFF1 022506,000238: 23,2525 77776 EXIT # BEGAN. 022507,000239: 23,2526 35016 CAF BIT2 022508,000240: 23,2527 55742 TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY TFF. 022509,000241: 23,2530 05217 TC ENDOFJOB 022510,000242: 022511,000243: 23,2531 35013 TICKTEST CAF BIT5 # THIS WAITLIST PROGRAM PERPETUATES ITSELF 022512,000244: 23,2532 71044 MASK EXTVBACT # ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0. 022513,000245: 23,2533 10000 CCS A 022514,000246: 23,2534 02542 TC DOTICK 022515,000247: 23,2535 37662 CAF PRIO25 022516,000248: 23,2536 05134 TC NOVAC # TERMINATE V 82. CAN'T CALL ENDEXT IN RUPT. 022517,000249: 23,2537 1044 EBANK= EXTVBACT 022518,000250: 23,2537 05534 04062 2CADR ENDEXT 022519,000251: 022520,000252: 23,2541 05324 TC TASKOVER 022521,000253: 23,2542 35041 DOTICK CAF 1SEC # RE-REQUEST TICKTEST. 022522,000254: 23,2543 05245 TC WAITLIST 022523,000255: 23,2544 E4,1743 EBANK= TFF 022524,000256: 23,2544 02531 46064 2CADR TICKTEST 022525,000257: 022526,000258: 23,2546 36214 CAF THREE 022527,000259: 23,2547 71742 MASK V82FLAGS 022528,000260: 23,2550 50000 INDEX A 022529,000261: 23,2551 02552 TC +1 022530,000262: 23,2552 05324 TC TASKOVER # IF NO FLAGBITS SET DONT' CHANGE TFF OR 022531,000263: # -TPER, BUT CONTINUE LOOP. 022532,000264: 23,2553 02561 TC TPERTICK # ONLY BIT 1 SET. INCR -TPER BY 1 SEC. 022533,000265: 23,2554 35041 TFFTICK CAF 1SEC # ONLY BIT 2 SET. INCR TFF BY 1 SEC. 022534,000266: 23,2555 54001 TS L 022535,000267: 23,2556 35021 CAF ZERO 022536,000268: 23,2557 21744 DAS TFF 022537,000269: 23,2560 05324 TC TASKOVER 022538,000270: 23,2561 35041 TPERTICK CAF 1SEC 022539,000271: 23,2562 54001 TS L 022540,000272: 23,2563 35021 CAF ZERO 022541,000273: 23,2564 21746 DAS -TPER 022542,000274: 23,2565 05324 TC TASKOVER 022543,000275: # Page 519 022544,000276: 23,2566 77776 V82GON EXIT # AVERAGE G ON. USE CURRENT STATE VECTOR 022545,000277: # FOR ORBITAL PARAMETER CALCULATIONS. 022546,000278: 23,2567 35063 CAF PRIO7 # LESS THAN LAMBERT 022547,000279: 23,2570 05147 TC FINDVAC # V82GON1 WILL PERFORM ORBIT CALCULATIONS 022548,000280: 23,2571 E4,1743 EBANK= TFF # ABOUT PROPER BODY APPROX ONCE PER SEC. 022549,000281: 23,2571 02604 46064 2CADR V82GON1 022550,000282: 022551,000283: 23,2573 00003 RELINT 022552,000284: 23,2574 10067 CCS NEWJOB # WITHOLD V16 N44 UNTIL FIRST ORBIT CALC 022553,000285: 23,2575 05164 TC CHANG1 # IS DONE. NOTE: V82GON1 (PRIO7, FINDVAC 022554,000286: # JOB) IS COMPLETED BEFORE V82GON (PRIO7, 022555,000287: # NOVAC JOB). 022556,000288: 23,2576 32407 V82REDSP CAF V16N44 # MONITOR HAPO, HPER, TFF 022557,000289: 23,2577 04662 TC BANKCALL 022558,000290: 23,2600 20561 CADR GOXDSPF 022559,000291: 23,2601 05625 TC B5OFF # TERM THIS TELLS V82GON1 TO KILL ITSELF. 022560,000292: 23,2602 05625 TC B5OFF # PROC DITTO. 022561,000293: 23,2603 02576 TC V82REDSP # RECYCLE 022562,000294: 022563,000295: 23,2604 06006 V82GON1 TC INTPRET # THIS EXEC PROGRAM PERPETUATES ITSELF 022564,000296: # ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0. 022565,000297: 23,2605 52175 VLOAD GOTO # HOLDS OFF CCS NEWJOB BETWEEN RN AND 022566,000298: 23,2606 01171 RN # VN FETCH SO RN, VN ARE FROM SAME 022567,000299: 23,2607 46610 NEXTLINE # STATE VECTOR UPDATE. 022568,000300: 23,2610 26327 NEXTLINE STOVL RONE # RN AT (-29)M FOR EARTH OR MOON 022569,000301: 23,2611 01177 VN 022570,000302: 23,2612 02335 STORE VONE # VN AT (-7)M/CS FOR EARTH OR MOON 022571,000303: 23,2613 52014 BON GOTO 022572,000304: 23,2614 00315 AMOONFLG # FLAG INDICATES BODY ABOUT WHICH ORBITAL 022573,000305: 23,2615 46617 MOONGON # CALCULATIONS ARE TO BE PERFORMED. 022574,000306: 23,2616 46630 EARTHGON # IF SET - MOON, IF RESET - EARTH. 022575,000307: 022576,000308: 23,2617 71214 MOONGON SET DLOAD 022577,000309: 23,2620 04462 V82EMFLG # INDICATE MOON SCALING FOR SR30.1 022578,000310: 23,2621 06454 1/RTMUM # LUNAR PARAMETERS LOADED HERE FOR SR30.1 022579,000311: 23,2622 14037 STODL TFF/RTMU 022580,000312: 23,2623 06460 MINPERM 022581,000313: 23,2624 26321 STOVL HPERMIN 022582,000314: 23,2625 02026 RLS # SCALED AT (-27)M 022583,000315: 23,2626 52046 ABVAL GOTO 022584,000316: 23,2627 46637 V82GON2 022585,000317: 23,2630 71214 EARTHGON CLEAR DLOAD 022586,000318: 23,2631 04662 V82EMFLG # INDICATE EARTH SCALING FOR SR30.1 022587,000319: 23,2632 06456 1/RTMUE # EARTH PARAMETERS LOADED HERE FOR SR30.1 022588,000320: 23,2633 14037 STODL TFF/RTMU 022589,000321: 23,2634 06462 MINPERE 022590,000322: 23,2635 16321 STODL HPERMIN 022591,000323: 23,2636 05152 RPAD 022592,000324: 23,2637 36323 V82GON2 STCALL RPADTEM # COMMON CODE FOR EARTH & MOON. 022593,000325: 23,2640 46667 SR30.1 022594,000326: # Page 520 022595,000327: 23,2641 77776 EXIT 022596,000328: 23,2642 05364 TC CHECKMM 022597,000329: 23,2643 00013 DEC 11 B-14 022598,000330: 23,2644 02657 TC V82GON3 # NOT IN MODE 11. 022599,000331: 23,2645 06006 CANDEL TC INTPRET # IN MODE 11 OR 00 022600,000332: 23,2646 77624 CALL 022601,000333: 23,2647 27442 INTSTALL # DELRSPL DOES INTWAKE 022602,000334: 23,2650 45145 DLOAD CALL 022603,000335: 23,2651 02344 TFF 022604,000336: 23,2652 64017 DELRSPL # RETURN IS TO NEXT LINE (SPLRET). 022605,000337: 23,2653 77776 SPLRET EXIT 022606,000338: 022607,000339: 23,2654 31011 CA MODREG 022608,000340: 23,2655 00006 EXTEND 022609,000341: 23,2656 12501 BZF SPLRET1 022610,000342: 23,2657 35013 V82GON3 CAF BIT5 022611,000343: 23,2660 71044 MASK EXTVBACT # SEE IF ASTRONAUT HAS SIGNALLED TERMINATE 022612,000344: 23,2661 00006 EXTEND 022613,000345: 23,2662 15534 BZF ENDEXT # YES, TERMINATE VB 82 LOOP 022614,000346: 23,2663 35041 CAF 1SEC 022615,000347: 23,2664 04662 TC BANKCALL # WAIT ONE SECOND BEFORE REPEATING 022616,000348: 23,2665 01732 CADR DELAYJOB # ORBITAL PARAMETER COMPUTATION. 022617,000349: 23,2666 02604 TC V82GON1 022618,000350: 022619,000351: # Page 521 022620,000352: # SUBROUTINE NAME: SR30.1 022621,000353: # MOD NO: 0 DATE: 16 FEB 67 022622,000354: # MOD BY: R. R. BAIRNSFATHER LOG SECTION: R32 022623,000355: # MOD NO: 1 MOD BY: R. R. BAIRNSFATHER DATE: 11 APR 67 SR30.1 CHANGED TO ALLOW MONITOR OPERN 022624,000356: # MOD NO: 2 MOD BY: R. R. BAIRNSFATHER DATE: 14 APR 67 ADD OVFL CK FOR RAPO 022625,000357: # MOD NO: 3 MOD BY ALONSO DATE: 11 DEC 67 SUBROUTINE REWRITTEN 022626,000358: # MOD NO: 4 MOD BY ALONSO DATE: 26 MAR 68 PROG MOD TO HANDLE DIF EARTH/MOON SCALE 022627,000359: # MOD NO: 5 MOD BY: R. R. BAIRNSFATHER DATE: 6 AUG 68 OVFL CK FOR HAPO & HPER. VOIDS MOD #2. 022628,000360: 022629,000361: # NEW FUNCTIONAL DESCRIPTION: ORBITAL PARAMETERS DISPLAY FOR NOUNS 32 AND 44. 022630,000362: # SR30.1 CALLS TFFCONMU AND TFFRP/RA TO CALCULATE RPER (PERIGEE RADIUS), 022631,000363: # RAPO (APOGEE RADIUS), HPER (PERIGEE HEIGHT ABOVE LAUNCH PAD OR LUNAR 022632,000364: # LANDING SITE), HAPO (APOGEE HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), 022633,000365: # TFF (TIME TO INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE). 022634,000366: # IF HPER IS GREATER THAN OR EQUAL TO HPERMIN, CALCULATES TPER AND STORES 022635,000367: # NEGATIVE. IN -TPER. OTHERWISE STORES +0 IN -TPER. WHENEVER TPER IS 022636,000368: # CALCULATED, TFF IS NOT COMPUTABLE AND DEFAULTS TO -59MIN 59SEC. IF HAPO 022637,000369: # WOULD EXCEED 9999.9 NM, IT IS LIMITED TO THAT VALUE FOR DISPLAY. 022638,000370: 022639,000371: # ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE 022640,000372: # ABOVE REMARKS. 022641,000373: 022642,000374: # CALLING SEQUENCE: CALL 022643,000375: # SR30.1 022644,000376: 022645,000377: # SUBROUTINES CALLED: TFFCONMU, TFFRP/RA, CALCTPER, CALCTFF 022646,000378: 022647,000379: # NORMAL EXIT MODE: CALLING LINE +1 (STILL IN INTERPRETIVE MODE) 022648,000380: 022649,000381: # ALARMS: NONE 022650,000382: 022651,000383: # OUTPUT: RAPO (-29) M EARTH APOGEE RADIUS EARTH CENTERED COORD. 022652,000384: # (-27) M MOON MOON CENTERED COORD. 022653,000385: # RPER (-29) M EARTH PERIGEE RADIUS EARTH CENTERED COORD. 022654,000386: # (-27) M MOON MOON CENTERED COORD. 022655,000387: # HAPOX (-29) M APOGEE ALTITUDE ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM. 022656,000388: # HPERX (-29) M PERIGEE ALT. ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM. 022657,000389: # TFF (-28) CS TIME TO 300KFT OR 35KFT ALTITUDE 022658,000390: # -TPER (-28) CS TIME TO PERIGEE 022659,000391: 022660,000392: # ERASABLE INITIALIZATION REQUIRED - 022661,000393: # TFF/RTMU (+17) EARTH RECIPROCAL OF PROPER GRAV CONSTANT FOR 022662,000394: # (+14) MOON EARTH OR MOON = 1/SQRT(MU). 022663,000395: # RONE (-29) M STATE VECTOR 022664,000396: # VONE (-7) M/CS STATE VECTOR 022665,000397: # RPADTEM (-29) M EARTH RADIUS OF LAUNCH PAD OR LUNAR LANDING 022666,000398: # (-27) M MOON SITE. 022667,000399: # HPERMIN (-29) M EARTH (300 OR 35) KFT MINIMUM PERIGEE ALTITUDE 022668,000400: # (-27) M MOON ABOVE LAUNCH PAD OR LUNAR LANDING SITE. 022669,000401: # V82EMFLG (INT SW BIT) RESET FOR EARTH, SET FOR MOON. 022670,000402: 022671,000403: # DEBRIS: QPRET, PDL, S2 022672,000404: 022673,000405: # Page 522 022674,000406: 23,2667 COUNT* $$/SR30S 022675,000407: 022676,000408: 23,2667 44001 SR30.1 SETPD STQ # INITIALIZE PUSHDOWN LIST. 022677,000409: 23,2670 00001 0 022678,000410: 23,2671 00051 S2 022679,000411: # SR30.1 INPUT: RONE AT (-29)M EARTH/MOON 022680,000412: # VONE AT (-7)M/CS 022681,000413: # TFFCONMU, TFFRP/RA, CALCTPER, AND CALCTFF 022682,000414: # CALLS REQUIRE: 022683,000415: # EARTH CENTERED (NO RESCALING REQUIRED) 022684,000416: # RONE SCALED TO B-29 M 022685,000417: # VONE SCALED TO B-7 M/CS 022686,000418: # MOON CENTERED (RESCALING REQUIRED) 022687,000419: # RONE SCALED TO B-27 M 022688,000420: # VONE SCALED TO B-5 M/CS 022689,000421: 23,2672 77214 BOFF VLOAD 022690,000422: 23,2673 04742 V82EMFLG # OFF FOR EARTH, ON FOR MOON. 022691,000423: 23,2674 46703 TFFCALLS 022692,000424: 23,2675 02327 RONE 022693,000425: 23,2676 77752 VSL2 022694,000426: 23,2677 26327 STOVL RONE 022695,000427: 23,2700 02335 VONE 022696,000428: 23,2701 77752 VSL2 022697,000429: 23,2702 02335 STORE VONE 022698,000430: 23,2703 77624 TFFCALLS CALL 022699,000431: 23,2704 56760 TFFCONMU 022700,000432: 23,2705 77624 CALL # TFFRP/RA COMPUTES RAPO,RPER. 022701,000433: 23,2706 57026 TFFRP/RA 022702,000434: # RETURNS WITH RAPO IN D(MPAC). 022703,000435: 23,2707 77625 DSU 022704,000436: 23,2710 02323 RPADTEM 022705,000437: 23,2711 64414 BOFF SR2R # NEED HAPO AT (-29)M FOR DISPLAY. 022706,000438: # IF MOON CENTERED, RESCALE FROM (-27)M. 022707,000439: # IF EARTH CENTERED ALREADY AT (-29)M. 022708,000440: 23,2712 04742 V82EMFLG # OFF FOR EARTH, ON FOR MOON. 022709,000441: 23,2713 46714 +1 022710,000442: 23,2714 77624 CALL # IF HAPO > MAXNM, SET HAPO =9999.9 NM. 022711,000443: 23,2715 46754 MAXCHK # OTHERWISE STORE (RAPO-RPADTEM) IN HAPO. 022712,000444: 23,2716 16352 STORHAPO STODL HAPOX 022713,000445: 23,2717 00017 RPER 022714,000446: 23,2720 77625 DSU 022715,000447: 23,2721 02323 RPADTEM # GIVES HPER AT (-29)M EARTH, (-27)M MOON. 022716,000448: 23,2722 00161 STORE MPAC +4 # SAVE THIS FOR COMPARISON TO HPERMIN. 022717,000449: 23,2723 64414 BOFF SR2R # NEED HPER AT (-29)M FOR DISPLAY. 022718,000450: # IF MOON CENTERED, RESCALE FROM (-27)M. 022719,000451: # IF EARTH CENTERED ALREADY AT (-29)M. 022720,000452: 23,2724 04742 V82EMFLG # OFF FOR EARTH, ON FOR MOON. 022721,000453: 23,2725 46726 +1 022722,000454: 23,2726 77624 CALL # IF HPER > MAXNM, SET HPER = 9999.9 NM. 022723,000455: 23,2727 46754 MAXCHK 022724,000456: # Page 523 022725,000457: 23,2730 16354 STORHPER STODL HPERX # STORE (RPER - RPADTEM) INTO HPERX. 022726,000458: 23,2731 00161 MPAC +4 022727,000459: 23,2732 51025 DSU BPL # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON 022728,000460: 23,2733 02321 HPERMIN # IF HPER L/ HPERMIN (300 OR 35) KFT, 022729,000461: 23,2734 46740 DOTPER # THEN ZERO INTO -TPER. 022730,000462: 23,2735 52145 DLOAD GOTO # OTHERWISE CALCULATE TPER. 022731,000463: 23,2736 15335 HI6ZEROS 022732,000464: 23,2737 46744 SKIPTPER 022733,000465: 23,2740 45145 DOTPER DLOAD CALL 022734,000466: 23,2741 00017 RPER 022735,000467: 23,2742 57064 CALCTPER 022736,000468: 23,2743 77676 DCOMP # TPER IS PUT NEG INTO -TPER. 022737,000469: 23,2744 16346 SKIPTPER STODL -TPER 022738,000470: 23,2745 02321 HPERMIN # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON 022739,000471: 23,2746 45015 DAD CALL 022740,000472: 23,2747 02323 RPADTEM # RPADTEM AT (-29)M FOR EARTH, (-27)M MOON 022741,000473: 23,2750 57067 CALCTFF # GIVES 59M59S FOR TFF IF RPER G/ 022742,000474: 23,2751 77676 DCOMP # HPERMIN + RPADTEM. (TPER WAS NON ZERO) 022743,000475: 23,2752 36344 STCALL TFF # OTHERWISE COMPUTES TFF. (GOTO) 022744,000476: 23,2753 00051 S2 022745,000477: 022746,000478: 23,2754 51025 MAXCHK DSU BPL # IF C(MPAC) > 9999.9 NM. MPAC = 9999.9 NM. 022747,000479: 23,2755 06764 MAXNM 022748,000480: 23,2756 46761 +3 # OTHERWISE C(MPAC) = B(MPAC). 022749,000481: 23,2757 43415 DAD RVQ 022750,000482: 23,2760 06764 MAXNM 022751,000483: 23,2761 43545 +3 DLOAD RVQ # (USED BY P30 - P37 ALSO) 022752,000484: 23,2762 06764 MAXNM 022753,000485: 022754,000486: 23,2763 01065 05603 MAXNM 2OCT 0106505603 022755,000487: 022756,000488: # Page 524 022757,000489: 022758,000490: # There is no source code on this page --- HG 2009 End of include-file R30.agc. Parent file is MAIN.agc