Source Code
021780,000001: # Copyright: Public domain.
021781,000002: # Filename: R30.agc
021782,000003: # Purpose: Part of the source code for Colossus, build 249.
021783,000004: # It is part of the source code for the Command Module's (CM)
021784,000005: # Apollo Guidance Computer (AGC), possibly for Apollo 8 and 9.
021785,000006: # Assembler: yaYUL
021786,000007: # Reference: pp. 507-517 of 1701.pdf.
021787,000008: # Contact: Ron Burkey <info@sandroid.org>.
021788,000009: # Website: www.ibiblio.org/apollo.
021789,000010: # Mod history: 08/02/04 RSB. Adapted from corresponding Luminary131 file.
021790,000011:
021791,000012: # The contents of the "Colossus249" files, in general, are transcribed
021792,000013: # from a scanned document obtained from MIT's website,
021793,000014: # http://hrst.mit.edu/hrs/apollo/public/archive/1701.pdf. Notations on this
021794,000015: # document read, in part:
021795,000016:
021796,000017: # Assemble revision 249 of AGC program Colossus by NASA
021797,000018: # 2021111-041. October 28, 1968.
021798,000019:
021799,000020: # This AGC program shall also be referred to as
021800,000021: # Colossus 1A
021801,000022:
021802,000023: # Prepared by
021803,000024: # Massachusetts Institute of Technology
021804,000025: # 75 Cambridge Parkway
021805,000026: # Cambridge, Massachusetts
021806,000027: # under NASA contract NAS 9-4065.
021807,000028:
021808,000029: # Refer directly to the online document mentioned above for further information.
021809,000030: # Please report any errors (relative to 1701.pdf) to info@sandroid.org.
021810,000031:
021811,000032: # In some cases, where the source code for Luminary 131 overlaps that of
021812,000033: # Colossus 249, this code is instead copied from the corresponding Luminary 131
021813,000034: # source file, and then is proofed to incorporate any changes.
021814,000035:
021815,000036: # Page 507
021816,000037: # SUBROUTINE NAME: V82CALL
021817,000038: # MOD NO: 0 DATE: 16 FEB 67
021818,000039: # MOD BY: R. R. BAIRNSFATHER LOG SECTION: R30
021819,000040: # MOD NO: 1 MOD BY: R. R. BAIRNSFATHER DATE: 11 APR 67 SR30.1 CHANGED TO ALLOW MONITOR OPERN
021820,000041: # MOD NO: 2 MOD BY: ALONSO DATE: 11 DEC 67 VB82 PROGRAM REWRITTEN
021821,000042: # MOD NO: 3 MOD BY: ALONSO DATE: 26 MAR 68 PROG MOD TO HANDLE DIF EARTH/MOON SCALE
021822,000043:
021823,000044: # NEW FUNCTIONAL DESCRIPTION: CALLED BY VERB 82 ENTER. PRIORITY 10.
021824,000045: # USED THROUGHOUT. CALCULATE AND DISPLAY ORBITAL PARAMETERS
021825,000046:
021826,000047: # 1. IF AVERAGE G IS OFF:
021827,000048: # FLASH DISPLAY V04N06. R2 INDICATES WHICH SHIP'S STATE VECTOR IS
021828,000049: # TO BE UPDATED. INITIAL CHOICE IS THIS SHIP (R2-1). ASTRONAUT
021829,000050: # CAN CHANGE TO OTHER SHIP BY V22EXE. WHERE X IS NOT EQ 1.
021830,000051: # SELECTED STATE VECTOR UPDATED BY THISPREC (OTHPREC).
021831,000052: # CALLS SR30.1 (WHICH CALLS TFFCONMU + TFFRP/RA) TO CALCULATE
021832,000053: # RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE
021833,000054: # HEIGHT ABOVE LAUNCH PAD OR LAUNAR LANDING SITE), HARD (APOGEE
021834,000055: # HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO
021835,000056: # INTERSECT 300 KFT ABOVE PAD OR 36KFT ABOVE LANDING SITE).
021836,000057: # FLASH MONITOR V16N44 (HAPO, HPER, TFF). TFF IS -59MS59S IF IT WAS
021837,000058: # NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND.
021838,000059: # ASTRONAUT HAS OPTION TO MONITOR TPER BY KING IN N 32 E.
021839,000060: # DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS
021840,000061: # ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S.
021841,000062: # 2. IF AVERAGE G IS ON:
021842,000063: # CALLS SR30.1 APPROX EVERY TWO SECS. STATE VECTOR IS ALWAYS
021843,000064: # FOR THIS VEHICLE. V82 DOES NOT DISTURB STATE VECTOR. RESULTS
021844,000065: # OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF.
021845,000066: # FLASH MONITOR V16N44 (HAPO, HPER, TFF).
021846,000067: # IF MODE IS P11, THEN CALL DELRSPL SO ASTRONAUT CAN MONITOR
021847,000068: # RESULTS BY N50E. SPLASH COMPUTATION DONE ONCE FOR TWO SECS.
021848,000069: # ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
021849,000070: # ABOVE REMARKS.
021850,000071:
021851,000072: # CALLING SEQUENCE: VERB 82 ENTER.
021852,000073:
021853,000074: # SUBROUTINES CALLED: SR30.1, GOXDSPF
021854,000075: # MAYBE -- THISPREC, OTHPREC, LOADTIME, DELRSPL
021855,000076:
021856,000077: # NORMAL EXIT MODES: TC ENDEXT
021857,000078:
021858,000079: # ALARMS: NONE
021859,000080:
021860,000081: # OUTPUT: HAPOX (-29) M
021861,000082: # HPERX (-29) M
021862,000083: # RAPO (-29) M EARTH
021863,000084: # (-27) M MOON
021864,000085: # Page 508
021865,000086: # RPER (-29) M EARTH
021866,000087: # (-27) M MOON
021867,000088: # TFF (-28) CS CONTAINS NEGATIVE QUANTITY
021868,000089: # -TPER (-28) CS CONTAINS NEGATIVE QUANTITY
021869,000090: # RSP-RREC(-29) M IF DELRSPL CALLED
021870,000091:
021871,000092: # ERASABLE INITIALIZATION REQUIRED: STATE VECTOR.
021872,000093:
021873,000094: # DEBRIS: QPRET, RONE, VONE, TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG.
021874,000095: # MAYBE: TSTART82, V82FLAGS, TDEC1.
021875,000096:
021876,000097: 13,2176 E4,1751 EBANK= HAPOX
021877,000098: 31,2021 BANK 31
021878,000099: 23,2000 SETLOC R30LOC
021879,000100: 23,2000 BANK
021880,000101: 23,2332 COUNT* $$/R30
021881,000102:
021882,000103: 23,2332 06006 V82CALL TC INTPRET
021883,000104: 23,2333 52014 BON GOTO
021884,000105: 23,2334 00716 AVEGFLAG
021885,000106: 23,2335 46566 V82GON # IF AVERAGE G ON
021886,000107: 23,2336 46337 V82GOFF # IF AVERAGE G OFF
021887,000108:
021888,000109: 23,2337 77776 V82GOFF EXIT # ALLOW ASTRONAUT TO SELECT VEHICLE
021889,000110: 23,2340 34711 CAF TWO # DESIRED FOR ORBITAL PARAMETERS
021890,000111: 23,2341 55051 TS OPTIONX
021891,000112: 23,2342 34712 CAF ONE
021892,000113: 23,2343 55052 TS OPTIONX +1
021893,000114: 23,2344 32406 CAF OPTIONVN # V 04 N 06
021894,000115: 23,2345 04555 TC BANKCALL
021895,000116: 23,2346 20465 CADR GOXDSPF
021896,000117: 23,2347 05423 TC ENDEXT # TERMINATE
021897,000118: 23,2350 02352 TC +2 # PROCEED
021898,000119: 23,2351 02344 TC -5 # DATA IN. OPTION1+1 = 1 FOR THIS VEHICLE
021899,000120: # UNEQ 1 FOR OTHER VEHICLE
021900,000121: 23,2352 34707 CAF BIT4 # 80 MS
021901,000122: 23,2353 05140 TC WAITLIST
021902,000123: 23,2354 E4,1743 EBANK= TFF
021903,000124: 23,2354 02531 46064 2CADR TICKTEST
021904,000125:
021905,000126: 23,2356 00003 RELINT
021906,000127: 23,2357 32410 V82GOFLP CAF TFFBANK # MAJOR RECYCLE LOOP ENTRY
021907,000128: 23,2360 54003 TS EBANK
021908,000129: 23,2361 34714 CAF ZERO
021909,000130: 23,2362 55742 TS V82FLAGS # ZERO FLAGS FOR TICKTEST, INHIBITS
021910,000131: # DECREMENTING OF TFF AND -TPER.
021911,000132: 23,2363 34756 CAF PRIO7
021912,000133: 23,2364 05042 TC FINDVAC # V82GOFF1 WILL EXECUTE STATE VECTOR
021913,000134: # Page 509
021914,000135: 23,2365 E4,1743 EBANK= TFF # UPDATE AND ORBIT CALCULATIONS FOR
021915,000136: 23,2365 02411 46064 2CADR V82GOFF1 # SELECTED VEHICLE ABOUT PROPER BODY.
021916,000137:
021917,000138: 23,2367 00003 RELINT
021918,000139: 23,2370 36214 V82STALL CAF THREE # STALL IN THIS LOOP AND WITHOLD V 16 N 44
021919,000140: 23,2371 71742 MASK V82FLAGS # UNTIL STATE VECTOR UPDATE SETS ONE OF
021920,000141: 23,2372 10000 CCS A # OUR FLAG BITS.
021921,000142: 23,2373 02400 TC FLAGGON # EXIT FROM STALL LOOP.
021922,000143: 23,2374 34734 CAF 1SEC
021923,000144: 23,2375 04555 TC BANKCALL
021924,000145: 23,2376 01732 CADR DELAYJOB
021925,000146: 23,2377 02370 TC V82STALL
021926,000147:
021927,000148: 23,2400 32407 FLAGGON CAF V16N44 # MONITOR HAPO,HPER,TFF.
021928,000149: 23,2401 04555 TC BANKCALL
021929,000150: 23,2402 20465 CADR GOXDSPF
021930,000151: 23,2403 05514 TC B5OFF # TERM. THIS TELLS TICKTEST TO KILL ITSELF
021931,000152: 23,2404 05514 TC B5OFF # PROCEED. DITTO
021932,000153: 23,2405 02357 TC V82GOFLP # RECYCLE. RECOMPUTE STATE VECT + DISPLAY
021933,000154:
021934,000155: 23,2406 01014 OPTIONVN VN 0412
021935,000156: 23,2407 04054 V16N44 VN 1644
021936,000157: 23,2410 02343 TFFBANK ECADR TFF
021937,000158:
021938,000159: 23,2411 06006 V82GOFF1 TC INTPRET
021939,000160: 23,2412 77634 RTB
021940,000161: 23,2413 45505 LOADTIME
021941,000162: 23,2414 00041 STORE TDEC1 # TIME FOR STATE VECTOR UPDATE.
021942,000163: 23,2415 02325 STORE TSTART82 # TIME FOR INTERNAL USE.
021943,000164: 23,2416 77776 EXIT
021944,000165: 23,2417 41052 CS OPTIONX +1 # 1 FOR THIS VEHICLE, NOT 1 FOR OTHER.
021945,000166: 23,2420 64712 AD ONE
021946,000167: 23,2421 00006 EXTEND
021947,000168: 23,2422 12446 BZF THISSHIP
021948,000169: 23,2423 06006 OTHSHIP TC INTPRET
021949,000170: 23,2424 77624 CALL # CALL STATE VECTOR UPDATE FOR OTHER SHIP.
021950,000171: 23,2425 27036 OTHPREC
021951,000172: 23,2426 77775 BOTHSHIP VLOAD # MOVE RESULTS INTO TFFCONIC STORAGE AREAS
021952,000173: 23,2427 00001 RATT # TO BE CALLED BY SR30.1.
021953,000174: 23,2430 26327 STOVL RONE # RATT AT (-29)M FOR EARTH OR MOON.
021954,000175: 23,2431 00007 VATT
021955,000176: 23,2432 02335 STORE VONE # VATT AT (-7)M/CS FOR EARTH OR MOON
021956,000177: 23,2433 77743 DLOAD*
021957,000178: 23,2434 71321 1/RTMUE,2 # X2 IS 0 FOR EARTH CENTERED STATE VEC
021958,000179: 23,2435 00037 STORE TFF/RTMU # X2 IS 2 FOR MOON
021959,000180: 23,2436 77743 DLOAD* # AS LEFT BY THISPREC OR OTHPREC.
021960,000181: 23,2437 71315 MINPERE,2
021961,000182: 23,2440 02321 STORE HPERMIN # TFFRTMU, HPERMIN, AND RPADTEM ARE ALL
021962,000183: 23,2441 46135 SLOAD BHIZ # EARTH/MOON PARAMETERS AS SET HERE.
021963,000184: # Page 510
021964,000185: 23,2442 00050 X2
021965,000186: 23,2443 46463 EARTHPAD
021966,000187: 23,2444 77650 GOTO
021967,000188: 23,2445 46467 MOONPAD
021968,000189: 23,2446 06006 THISSHIP TC INTPRET
021969,000190: 23,2447 77624 CALL # CALL STATE VECTOR UPDATE FOR THIS SHIP.
021970,000191: 23,2450 27022 THISPREC
021971,000192: 23,2451 77650 GOTO
021972,000193: 23,2452 46426 BOTHSHIP
021973,000194:
021974,000195: # THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED. DO NOT SEPARATE PAIRS.
021975,000196:
021976,000197: 23,2453 27533 07571 1/RTMUM 2DEC* .45162595 E-4 B14*
021977,000198: 23,2455 25004 06702 1/RTMUE 2DEC* .50087529 E-5 B17*
021978,000199:
021979,000200: 23,2457 00001 11530 MINPERM 2DEC 10668 B-27 # 35 KFT MIN PERIGEE HEIGHT FOR MOON(-29)M
021980,000201: 23,2461 00002 31230 MINPERE 2DEC 91440 B-29 # 300 KFT (-29)M FOR EARTH
021981,000202:
021982,000203: 23,2463 43145 EARTHPAD DLOAD CLRGO # PAD 37-B RADIUS. SCALED AT (-29)M
021983,000204: 23,2464 05311 RPAD
021984,000205: 23,2465 04622 V82EMFLG # INDICATE EARTH SCALING FOR SR30.1
021985,000206: 23,2466 46473 BOTHPAD
021986,000207:
021987,000208: 23,2467 51575 MOONPAD VLOAD ABVAL # COMPUTE MOON PAD RADIUS FROM RLS VECTOR.
021988,000209: 23,2470 02026 RLS # SCALED AT (-27)M
021989,000210: 23,2471 77614 SET
021990,000211: 23,2472 04462 V82EMFLG # INDICATE MOON SCALING FOR SR30.1
021991,000212: 23,2473 36323 BOTHPAD STCALL RPADTEM
021992,000213: 23,2474 46667 SR30.1 # CALCULATE ORBITAL PARAMETERS
021993,000214: 23,2475 77776 EXIT
021994,000215: 23,2476 31011 CA MODREG # ARE WE IN P00
021995,000216: 23,2477 00006 EXTEND
021996,000217: 23,2500 12645 BZF CANDEL # YES, DO DELRSPL
021997,000218: 23,2501 06006 SPLRET1 TC INTPRET
021998,000219: 23,2502 45234 RTB DSU
021999,000220: 23,2503 45505 LOADTIME
022000,000221: 23,2504 02325 TSTART82 # PRESENT TIME -- TIME V82GOFF1 BEGAN
022001,000222: 23,2505 02325 STORE TSTART82 # SAVE IT
022002,000223: 23,2506 53145 DLOAD BZE # SR30.1 SETS -TPER=0 IF HPER L/
022003,000224: 23,2507 02346 -TPER # HPERMIN (300 OR 35) KFT.
022004,000225: 23,2510 46521 TICKTFF # (-TPER = 0)
022005,000226: 23,2511 43345 TICKTPER DLOAD DAD # (-TPER NON ZERO) TFF WAS NOT COMPUTED.
022006,000227: 23,2512 02346 -TPER # BUT WAS SET TO 59M59S. DON'T DICK TFF, DO
022007,000228: 23,2513 02325 TSTART82 # TICK -TPER. DISPLAY BOTH.
022008,000229: 23,2514 02346 STORE -TPER
022009,000230: 23,2515 77776 EXIT
022010,000231:
022011,000232: # Page 511
022012,000233: 23,2516 34712 CAF BIT1
022013,000234: 23,2517 55742 TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY -TPER
022014,000235: 23,2520 05112 TC ENDOFJOB
022015,000236:
022016,000237: 23,2521 43345 TICKTFF DLOAD DAD # (-TPER=0) TFF WAS COMPUTED. TICK TFF.
022017,000238: 23,2522 02344 TFF # DO NOT TICK -TPER. DISPLAY TFF, BUT NOT
022018,000239: 23,2523 02325 TSTART82 # -TPER
022019,000240: 23,2524 02344 STORE TFF # TFF CORRECTED FOR TIME SINCE V82GOFF1
022020,000241: 23,2525 77776 EXIT # BEGAN.
022021,000242: 23,2526 34711 CAF BIT2
022022,000243: 23,2527 55742 TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY TFF.
022023,000244: 23,2530 05112 TC ENDOFJOB
022024,000245:
022025,000246: 23,2531 34706 TICKTEST CAF BIT5 # THIS WAITLIST PROGRAM PERPETUATES ITSELF
022026,000247: 23,2532 71044 MASK EXTVBACT # ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
022027,000248: 23,2533 10000 CCS A
022028,000249: 23,2534 02542 TC DOTICK
022029,000250: 23,2535 37662 CAF PRIO25
022030,000251: 23,2536 05027 TC NOVAC # TERMINATE V 82. CAN'T CALL ENDEXT IN RUPT.
022031,000252: 23,2537 1044 EBANK= EXTVBACT
022032,000253: 23,2537 05423 04062 2CADR ENDEXT
022033,000254:
022034,000255: 23,2541 05213 TC TASKOVER
022035,000256: 23,2542 34734 DOTICK CAF 1SEC # RE-REQUEST TICKTEST.
022036,000257: 23,2543 05140 TC WAITLIST
022037,000258: 23,2544 E4,1743 EBANK= TFF
022038,000259: 23,2544 02531 46064 2CADR TICKTEST
022039,000260:
022040,000261: 23,2546 36214 CAF THREE
022041,000262: 23,2547 71742 MASK V82FLAGS
022042,000263: 23,2550 50000 INDEX A
022043,000264: 23,2551 02552 TC +1
022044,000265: 23,2552 05213 TC TASKOVER # IF NO FLAGBITS SET DONT' CHANGE TFF OR
022045,000266: # -TPER, BUT CONTINUE LOOP.
022046,000267: 23,2553 02561 TC TPERTICK # ONLY BIT 1 SET. INCR -TPER BY 1 SEC.
022047,000268: 23,2554 34734 TFFTICK CAF 1SEC # ONLY BIT 2 SET. INCR TFF BY 1 SEC.
022048,000269: 23,2555 54001 TS L
022049,000270: 23,2556 34714 CAF ZERO
022050,000271: 23,2557 21744 DAS TFF
022051,000272: 23,2560 05213 TC TASKOVER
022052,000273: 23,2561 34734 TPERTICK CAF 1SEC
022053,000274: 23,2562 54001 TS L
022054,000275: 23,2563 34714 CAF ZERO
022055,000276: 23,2564 21746 DAS -TPER
022056,000277: 23,2565 05213 TC TASKOVER
022057,000278:
022058,000279: # Page 512
022059,000280: 23,2566 77776 V82GON EXIT # AVERAGE G ON. USE CURRENT STATE VECTOR
022060,000281: # FOR ORBITAL PARAMETER CALCULATIONS.
022061,000282: 23,2567 34756 CAF PRIO7 # LESS THAN LAMBERT
022062,000283: 23,2570 05042 TC FINDVAC # V82GON1 WILL PERFORM ORBIT CALCULATIONS
022063,000284: 23,2571 E4,1743 EBANK= TFF # ABOUT PROPER BODY APPROX ONCE PER SEC.
022064,000285: 23,2571 02604 46064 2CADR V82GON1
022065,000286:
022066,000287: 23,2573 00003 RELINT
022067,000288: 23,2574 10067 CCS NEWJOB # WITHOLD V16 N44 UNTIL FIRST ORBIT CALC
022068,000289: 23,2575 05057 TC CHANG1 # IS DONE. NOTE: V82GON1 (PRIO7, FINDVAC
022069,000290: # JOB) IS COMPLETED BEFORE V82GON (PRIO7,
022070,000291: # NOVAC JOB).
022071,000292: 23,2576 32407 V82REDSP CAF V16N44 # MONITOR HAPO, HPER, TFF
022072,000293: 23,2577 04555 TC BANKCALL
022073,000294: 23,2600 20465 CADR GOXDSPF
022074,000295: 23,2601 05514 TC B5OFF # TERM THIS TELLS V82GON1 TO KILL ITSELF.
022075,000296: 23,2602 05514 TC B5OFF # PROC DITTO.
022076,000297: 23,2603 02576 TC V82REDSP # RECYCLE
022077,000298:
022078,000299: 23,2604 06006 V82GON1 TC INTPRET # THIS EXEC PROGRAM PERPETUATES ITSELF
022079,000300: # ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
022080,000301: 23,2605 52175 VLOAD GOTO # HOLDS OFF CCS NEWJOB BETWEEN RN AND
022081,000302: 23,2606 01171 RN # VN FETCH SO RN, VN ARE FROM SAME
022082,000303: 23,2607 46610 NEXTLINE # STATE VECTOR UPDATE.
022083,000304: 23,2610 26327 NEXTLINE STOVL RONE # RN AT (-29)M FOR EARTH OR MOON
022084,000305: 23,2611 01177 VN
022085,000306: 23,2612 02335 STORE VONE # VN AT (-7)M/CS FOR EARTH OR MOON
022086,000307: 23,2613 52014 BON GOTO
022087,000308: 23,2614 04303 MOONTHIS # FLAG INDICATES BODY ABOUT WHICH ORBITAL
022088,000309: 23,2615 46617 MOONGON # CALCULATIONS ARE TO BE PERFORMED.
022089,000310: 23,2616 46630 EARTHGON # IF SET -- MOON, IF RESET --EARTH.
022090,000311:
022091,000312: 23,2617 71214 MOONGON SET DLOAD
022092,000313: 23,2620 04462 V82EMFLG # FLAG INDICATES BODY ABOUT WHICH ORBITAL
022093,000314: 23,2621 06454 1/RTMUM # LUNAR PARAMETERS LOADED HERE FOR SR30.1
022094,000315: 23,2622 14037 STODL TFF/RTMU
022095,000316: 23,2623 06460 MINPERM
022096,000317: 23,2624 26321 STOVL HPERMIN
022097,000318: 23,2625 02026 RLS # SCALED AT (-27)M
022098,000319: 23,2626 52046 ABVAL GOTO
022099,000320: 23,2627 46637 V82GON2
022100,000321: 23,2630 71214 EARTHGON CLEAR DLOAD
022101,000322: 23,2631 04662 V82EMFLG # INDICATE EARTH SCALING FOR SR30.1
022102,000323: 23,2632 06456 1/RTMUE # EARTH PARAMETERS LOADED HERE FOR SR30.1
022103,000324: 23,2633 14037 STODL TFF/RTMU
022104,000325: 23,2634 06462 MINPERE
022105,000326: 23,2635 16321 STODL HPERMIN
022106,000327: 23,2636 05311 RPAD
022107,000328: 23,2637 36323 V82GON2 STCALL RPADTEM # COMMON CODE FOR EARTH & MOON.
022108,000329: 23,2640 46667 SR30.1
022109,000330: # Page 513
022110,000331: 23,2641 77776 EXIT
022111,000332: 23,2642 05253 TC CHECKMM
022112,000333: 23,2643 00013 DEC 11 B-14
022113,000334: 23,2644 02657 TC V82GON3 # NOT IN MODE 11.
022114,000335: 23,2645 06006 CANDEL TC INTPRET # IN MODE 11 OR 00
022115,000336: 23,2646 77624 CALL
022116,000337: 23,2647 27371 INTSTALL # DELRSPL DOES INTWAKE
022117,000338: 23,2650 45145 DLOAD CALL
022118,000339: 23,2651 02344 TFF
022119,000340: 23,2652 64017 DELRSPL # RETURN IS TO NEXT LINE (SPLRET).
022120,000341: 23,2653 77776 SPLRET EXIT
022121,000342:
022122,000343: 23,2654 31011 CA MODREG
022123,000344: 23,2655 00006 EXTEND
022124,000345: 23,2656 12501 BZF SPLRET1
022125,000346: 23,2657 34706 V82GON3 CAF BIT5
022126,000347: 23,2660 71044 MASK EXTVBACT # SEE IF ASTRONAUT HAS SIGNALLED TERMINATE
022127,000348: 23,2661 00006 EXTEND
022128,000349: 23,2662 15423 BZF ENDEXT # YES, TERMINATE VB 82 LOOP
022129,000350: 23,2663 34734 CAF 1SEC
022130,000351: 23,2664 04555 TC BANKCALL # WAIT ONE SECOND BEFORE REPEATING
022131,000352: 23,2665 01732 CADR DELAYJOB # ORBITAL PARAMETER COMPUTATION.
022132,000353: 23,2666 02604 TC V82GON1
022133,000354:
022134,000355: # Page 514
022135,000356: # SUBROUTINE NAME: SR30.1
022136,000357: # MOD NO: 0 DATE: 16 FEB 67
022137,000358: # MOD BY: R. R. BAIRNSFATHER LOG SECTION: R32
022138,000359: # MOD NO: 1 MOD BY: R. R. BAIRNSFATHER DATE: 11 APR 67 SR30.1 CHANGED TO ALLOW MONITOR OPERN
022139,000360: # MOD NO: 2 MOD BY: R. R. BAIRNSFATHER DATE: 14 APR 67 ADD OVFL CK FOR RAPO
022140,000361: # MOD NO: 3 MOD BY ALONSO DATE: 11 DEC 67 SUBROUTINE REWRITTEN
022141,000362: # MOD NO: 4 MOD BY ALONSO DATE: 26 MAR 68 PROG MOD TO HANDLE DIF EARTH/MOON SCALE
022142,000363: # MOD NO: 5 MOD BY: R. R. BAIRNSFATHER DATE: 6 AUG 68 OVFL CK FOR HAPO & HPER. VOIDS MOD #2.
022143,000364:
022144,000365: # NEW FUNCTIONAL DESCRIPTION: ORBITAL PARAMETERS DISPLAY FOR NOUNS 32 AND 44.
022145,000366: # SR30.1 CALLS TFFCONMU AND TFFRP/RA TO CALCULATE RPER (PERIGEE RADIUS),
022146,000367: # RAPO (APOGEE RADIUS), HPER (PERIGEE HEIGHT ABOVE LAUNCH PAD OR LUNAR
022147,000368: # LANDING SITE), HAPO (APOGEE HEIGHT AS ABOVE), TPER (TIME TO PERIGEE),
022148,000369: # TFF (TIME TO INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
022149,000370: # IF HPER IS GREATER THAN OR EQUAL TO HPERMIN, CALCULATES TPER AND STORES
022150,000371: # NEGATIVE. IN -TPER. OTHERWISE STORES +0 IN -TPER. WHENEVER TPER IS
022151,000372: # CALCULATED, TFF IS NOT COMPUTABLE AND DEFAULTS TO -59MIN 59SEC. IF HAPO
022152,000373: # WOULD EXCEED 9999.9 NM, IT IS LIMITED TO THAT VALUE FOR DISPLAY.
022153,000374:
022154,000375: # ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
022155,000376: # ABOVE REMARKS.
022156,000377:
022157,000378: # CALLING SEQUENCE: CALL
022158,000379: # SR30.1
022159,000380:
022160,000381: # SUBROUTINES CALLED: TFFCONMU, TFFRP/RA, CALCTPER, CALCTFF
022161,000382:
022162,000383: # NORMAL EXIT MODE: CALLING LINE +1 (STILL IN INTERPRETIVE MODE)
022163,000384:
022164,000385: # ALARMS: NONE
022165,000386:
022166,000387: # OUTPUT: RAPO (-29) M EARTH APOGEE RADIUS EARTH CENTERED COORD.
022167,000388: # (-27) M MOON MOON CENTERED COORD.
022168,000389: # RPER (-29) M EARTH PERIGEE RADIUS EARTH CENTERED COORD.
022169,000390: # (-27) M MOON MOON CENTERED COORD.
022170,000391: # HAPOX (-29) M APOGEE ALTITUDE ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM.
022171,000392: # HPERX (-29) M PERIGEE ALT. ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM.
022172,000393: # TFF (-28) CS TIME TO 300KFT OR 35KFT ALTITUDE
022173,000394: # -TPER (-28) CS TIME TO PERIGEE
022174,000395:
022175,000396: # ERASABLE INITIALIZATION REQUIRED --
022176,000397: # TFF/RTMU (+17) EARTH RECIPROCAL OF PROPER GRAV CONSTANT FOR
022177,000398: # (+14) MOON EARTH OR MOON = 1/SQRT(MU).
022178,000399: # RONE (-29) M STATE VECTOR
022179,000400: # VONE (-7) M/CS STATE VECTOR
022180,000401: # RPADTEM (-29) M EARTH RADIUS OF LAUNCH PAD OR LUNAR LANDING
022181,000402: # (-27) M MOON SITE.
022182,000403: # HPERMIN (-29) M EARTH (300 OR 35) KFT MINIMUM PERIGEE ALTITUDE
022183,000404: # (-27) M MOON ABOVE LAUNCH PAD OR LUNAR LANDING SITE.
022184,000405: # V82EMFLG (INT SW BIT) RESET FOR EARTH, SET FOR MOON.
022185,000406:
022186,000407: # DEBRIS: QPREG, PDL, S2
022187,000408:
022188,000409: # Page 515
022189,000410: 23,2667 COUNT* $$/SR30S
022190,000411:
022191,000412: 23,2667 44001 SR30.1 SETPD STQ # INITIALIZE PUSHDOWN LIST.
022192,000413: 23,2670 00001 0
022193,000414: 23,2671 00051 S2
022194,000415: # SR30.1 INPUT: RONE AT (-29)M EARTH/MOON
022195,000416: # VONE AT (-7)M/CS
022196,000417: # TFFCONMU, TFFRP/RA, CALCTPER, AND CALCTFF
022197,000418: # CALLS REQUIRE:
022198,000419: # EARTH CENTERED (NO RESCALING REQUIRED)
022199,000420: # RONE SCALED TO B-29 M
022200,000421: # VONE SCALED TO B-7 M/CS
022201,000422: # MOON CENTERED (RESCALING REQUIRED)
022202,000423: # RONE SCALED TO B-27 M
022203,000424: # VONE SCALED TO B-5 M/CS
022204,000425: 23,2672 77214 BOFF VLOAD
022205,000426: 23,2673 04742 V82EMFLG # OFF FOR EARTH, ON FOR MOON.
022206,000427: 23,2674 46703 TFFCALLS
022207,000428: 23,2675 02327 RONE
022208,000429: 23,2676 77752 VSL2
022209,000430: 23,2677 26327 STOVL RONE
022210,000431: 23,2700 02335 VONE
022211,000432: 23,2701 77752 VSL2
022212,000433: 23,2702 02335 STORE VONE
022213,000434: 23,2703 77624 TFFCALLS CALL
022214,000435: 23,2704 56751 TFFCONMU
022215,000436: 23,2705 77624 CALL # TFFRP/RA COMPUTES RAPO,RPER.
022216,000437: 23,2706 57017 TFFRP/RA
022217,000438: # RETURNS WITH RAPO IN D(MPAC).
022218,000439: 23,2707 77625 DSU
022219,000440: 23,2710 02323 RPADTEM
022220,000441: 23,2711 64414 BOFF SR2R # NEED HAPO AT (-29)M FOR DISPLAY.
022221,000442: # IF MOON CENTERED, RESCALE FROM (-27)M.
022222,000443: # IF EARTH CENTERED ALREADY AT (-29)M.
022223,000444: 23,2712 04742 V82EMFLG
022224,000445: 23,2713 46714 +1
022225,000446: 23,2714 77624 CALL # IF RAPO > MAXNM, SET RAPO =9999.9 NM.
022226,000447: 23,2715 46754 MAXCHK # OTHERWISE STORE (RAPO-RPADTEM) IN HAPO.
022227,000448: 23,2716 16352 STORHAPO STODL HAPOX
022228,000449: 23,2717 00017 RPER
022229,000450: 23,2720 77625 DSU
022230,000451: 23,2721 02323 RPADTEM # GIVES HPER AT (-29)M EARTH, (-27)M MOON.
022231,000452: 23,2722 00161 STORE MPAC +4 # SAVE THIS FOR COMPARISON TO HPERMIN.
022232,000453: 23,2723 64414 BOFF SR2R # NEED HPER AT (-29)M FOR DISPLAY.
022233,000454: # IF MOON CENTERED, RESCALE FROM (-27)M.
022234,000455: # IF EARTH CENTERED ALREADY AT (-29)M.
022235,000456: 23,2724 04742 V82EMFLG # OFF FOR EARTH, ON FOR MOON.
022236,000457: 23,2725 46726 +1
022237,000458: 23,2726 77624 CALL # IF HPER > MAXNM, SET HPER = 9999.9 NM.
022238,000459: 23,2727 46754 MAXCHK
022239,000460: # Page 516
022240,000461: 23,2730 16354 STORHPER STODL HPERX # STORE (RPER - RPADTEM) INTO HPERX.
022241,000462: 23,2731 00161 MPAC +4
022242,000463: 23,2732 51025 DSU BPL # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
022243,000464: 23,2733 02321 HPERMIN # IF HPER L/ HPERMIN (300 OR 35) KFT,
022244,000465: 23,2734 46740 DOTPER # THEN ZERO INTO -TPER.
022245,000466: 23,2735 52145 DLOAD GOTO # OTHERWISE CALCULATE TPER.
022246,000467: 23,2736 15332 HI6ZEROS
022247,000468: 23,2737 46744 SKIPTPER
022248,000469: 23,2740 45145 DOTPER DLOAD CALL
022249,000470: 23,2741 00017 RPER
022250,000471: 23,2742 57055 CALCTPER
022251,000472: 23,2743 77676 DCOMP # TPER IS PUT NEG INTO -TPER.
022252,000473: 23,2744 16346 SKIPTPER STODL -TPER
022253,000474: 23,2745 02321 HPERMIN # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
022254,000475: 23,2746 45015 DAD CALL
022255,000476: 23,2747 02323 RPADTEM # RPADTEM AT (-29)M FOR EARTH, (-27)M MOON
022256,000477: 23,2750 57060 CALCTFF # GIVES 59M59S FOR TFF IF HPER G/
022257,000478: 23,2751 77676 DCOMP # HPERMIN + RPADTEM. (TPER WAS NON ZERO)
022258,000479: 23,2752 36344 STCALL TFF # OTHERWISE COMPUTES TFF. (GOTO)
022259,000480: 23,2753 00051 S2
022260,000481:
022261,000482: 23,2754 51025 MAXCHK DSU BPL # IF C(MPAC) > 9999.9 NM. MPAC = 9999.9 NM.
022262,000483: 23,2755 06764 MAXNM
022263,000484: 23,2756 46761 +3 # OTHERWISE C(MPAC) - B(MPAC).
022264,000485: 23,2757 43415 DAD RVQ
022265,000486: 23,2760 06764 MAXNM
022266,000487: 23,2761 43545 +3 DLOAD RVQ # (USED BY P30 -- P37 ALSO)
022267,000488: 23,2762 06764 MAXNM
022268,000489:
022269,000490: 23,2763 01065 05603 MAXNM 2OCT 0106505603
022270,000491:
022271,000492: # Page 517
022272,000493:
022273,000494: # There is no source code on this page --- RSB 2004
022274,000495:
022275,000496:
022276,000497:
022277,000498:
End of include-file R30.agc. Parent file is MAIN.agc