Source Code
030431,000001: # Copyright: Public domain.
030432,000002: # Filename: R30.agc
030433,000003: # Purpose: Part of the source code for Luminary 1A build 099.
030434,000004: # It is part of the source code for the Lunar Module's (LM)
030435,000005: # Apollo Guidance Computer (AGC), for Apollo 11.
030436,000006: # Assembler: yaYUL
030437,000007: # Contact: Ron Burkey <info@sandroid.org>.
030438,000008: # Website: www.ibiblio.org/apollo.
030439,000009: # Pages: 712-722
030440,000010: # Mod history: 2009-05-19 RSB Adapted from the corresponding
030441,000011: # Luminary131 file, using page
030442,000012: # images from Luminary 1A.
030443,000013: # 2009-06-07 RSB Removed a space between two components of
030444,000014: # a 2OCT that isn't legal in yaYUL.
030445,000015:
030446,000016: # This source code has been transcribed or otherwise adapted from
030447,000017: # digitized images of a hardcopy from the MIT Museum. The digitization
030448,000018: # was performed by Paul Fjeld, and arranged for by Deborah Douglas of
030449,000019: # the Museum. Many thanks to both. The images (with suitable reduction
030450,000020: # in storage size and consequent reduction in image quality as well) are
030451,000021: # available online at www.ibiblio.org/apollo. If for some reason you
030452,000022: # find that the images are illegible, contact me at info@sandroid.org
030453,000023: # about getting access to the (much) higher-quality images which Paul
030454,000024: # actually created.
030455,000025:
030456,000026: # Notations on the hardcopy document read, in part:
030457,000027:
030458,000028: # Assemble revision 001 of AGC program LMY99 by NASA 2021112-61
030459,000029: # 16:27 JULY 14, 1969
030460,000030:
030461,000031: # Page 712
030462,000032: # SUBROUTINE NAME: V82CALL
030463,000033: # MOD NO: 0 DATE: 16 FEB 67
030464,000034: # MOD BY: R. R. BAIRNSFATHER LOG SECTION: R30
030465,000035: # MOD NO: 1 MOD BY: R. R. BAIRNSFATHER DATE: 11 APR 67 SR30.1 CHANGED TO ALLOW MONITOR OPERN
030466,000036: # MOD NO: 2 MOD BY: ALONSO DATE: 11 DEC 67 VB82 PROGRAM REWRITTEN
030467,000037: # MOD NO: 3 MOD BY: ALONSO DATE: 26 MAR 68 PROG MOD TO HANDLE DIF EARTH/MOON SCALE
030468,000038:
030469,000039: # NEW FUNCTIONAL DESCRIPTION: CALLED BY VERB 82 ENTER. PRIORITY 10.
030470,000040: # USED THROUGHOUT. CALCULATE AND DISPLAY ORBITAL PARAMETERS
030471,000041:
030472,000042: # 1. IF AVERAGE G IS OFF:
030473,000043: # FLASH DISPLAY V04N06. R2 INDICATES WHICH SHIP'S STATE VECTOR IS
030474,000044: # TO BE UPDATED. INITIAL CHOICE IS THIS SHIP (R2=1). ASTRONAUT
030475,000045: # CAN CHANGE TO OTHER SHIP BY V22E XE. WHERE X IS NOT EQ 1.
030476,000046: # SELECTED STATE VECTOR UPDATED BY THISPREC (OTHPREC).
030477,000047: # CALLS SR30.1 (WHICH CALLS TFFCONMU + TFFRP/RA) TO CALCULATE
030478,000048: # RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE
030479,000049: # HEIGHT ABOVE LAUNCH PAD OR LUNAR LANDING SITE), HARD (APOGEE
030480,000050: # HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO
030481,000051: # INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
030482,000052: # FLASH MONITOR V16N44 (HAPO, HPER, TFF). TFF IS -59M59S IF IT WAS
030483,000053: # NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND.
030484,000054: # ASTRONAUT HAS OPTION TO MONITOR TPER BY KEYING IN N 32 E.
030485,000055: # DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS
030486,000056: # ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S.
030487,000057: # 2. IF AVERAGE G IS ON:
030488,000058: # CALLS SR30.1 APPROX EVERY TWO SECS. STATE VECTOR IS ALWAYS
030489,000059: # FOR THIS VEHICLE. V82 DOES NOT DISTURB STATE VECTOR. RESULTS
030490,000060: # OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF.
030491,000061: # FLASH MONITOR V16N44 (HAPO, HPER, TFF).
030492,000062: # ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
030493,000063: # ABOVE REMARKS.
030494,000064:
030495,000065: # CALLING SEQUENCE: VERB 82 ENTER.
030496,000066:
030497,000067: # SUBROUTINES CALLED: SR30.1, GOXDSPF
030498,000068: # MAYBE -- THISPREC, OTHPREC, LOADTIME, DELRSPL
030499,000069:
030500,000070: # NORMAL EXIT MODES: TC ENDEXT
030501,000071:
030502,000072: # ALARMS: NONE
030503,000073:
030504,000074: # OUTPUT: HAPOX (-29) M
030505,000075: # HPERX (-29) M
030506,000076: # RAPO (-29) M EARTH
030507,000077: # (-27) M MOON
030508,000078: # RPER (-29) M EARTH
030509,000079: # (-27) M MOON
030510,000080: # TFF (-28) CS CONTAINS NEGATIVE QUANTITY
030511,000081: # -TPER (-28) CS CONTAINS NEGATIVE QUANTITY
030512,000082:
030513,000083: # Page 713
030514,000084: # ERASABLE INITIALIZATION REQUIRED: STATE VECTOR.
030515,000085:
030516,000086: # DEBRIS: QPRET, RONE, VONE, TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG.
030517,000087: # MAYBE: TSTART82, V82FLAGS, TDEC1.
030518,000088:
030519,000089: 13,2351 E4,1517 EBANK= HAPOX
030520,000090: 31,2144 BANK 31
030521,000091: 22,2000 SETLOC R30LOC
030522,000092: 22,2000 BANK
030523,000093: 22,3242 COUNT* $$/R30
030524,000094:
030525,000095: 22,3242 06037 V82CALL TC INTPRET
030526,000096: 22,3243 52014 BON GOTO
030527,000097: 22,3244 03712 AVEGFLAG
030528,000098: 22,3245 45465 V82GON # IF AVERAGE G ON
030529,000099: 22,3246 45247 V82GOFF # IF AVERAGE G OFF
030530,000100:
030531,000101: 22,3247 77776 V82GOFF EXIT # ALLOW ASTRONAUT TO SELECT VEHICLE
030532,000102: 22,3250 34752 CAF TWO # DESIRED FOR ORBITAL PARAMETERS
030533,000103: 22,3251 55051 TS OPTIONX # CALCULATION AND DISPLAY.
030534,000104: 22,3252 34753 CAF ONE
030535,000105: 22,3253 55052 TS OPTIONX +1
030536,000106: 22,3254 33316 CAF OPTIONVN # V 04 N 06
030537,000107: 22,3255 04616 TC BANKCALL
030538,000108: 22,3256 20334 CADR GOXDSPF
030539,000109: 22,3257 05472 TC ENDEXT # TERMINATE
030540,000110: 22,3260 03262 TC +2 # PROCEED
030541,000111: 22,3261 03254 TC -5 # DATA IN. OPTION1+1 = 1 FOR THIS VEHICLE
030542,000112: # UNEQ 1 FOR OTHER VEHICLE
030543,000113: 22,3262 34750 CAF BIT4 # 80 MS
030544,000114: 22,3263 05203 TC WAITLIST
030545,000115: 22,3264 E4,1540 EBANK= TFF
030546,000116: 22,3264 03430 44064 2CADR TICKTEST
030547,000117:
030548,000118: 22,3266 00003 RELINT
030549,000119: 22,3267 33320 V82GOFLP CAF TFFBANK # MAJOR RECYCLE LOOP ENTRY
030550,000120: 22,3270 54003 TS EBANK
030551,000121: 22,3271 34755 CAF ZERO
030552,000122: 22,3272 55537 TS V82FLAGS # ZERO FLAGS FOR TICKTEST, INHIBITS
030553,000123: # DECREMENTING OF TFF AND -TPER.
030554,000124: 22,3273 35021 CAF PRIO7
030555,000125: 22,3274 05105 TC FINDVAC # V82GOFF1 WILL EXECUTE STATE VECTOR
030556,000126: 22,3275 E4,1540 EBANK= TFF # UPDATE AND ORBIT CALCULATIONS FOR
030557,000127: 22,3275 03321 44064 2CADR V82GOFF1 # SELECTED VEHICLE ABOUT PROPER BODY.
030558,000128:
030559,000129: 22,3277 00003 RELINT
030560,000130: 22,3300 36245 V82STALL CAF THREE # STALL IN THIS LOOP AND WITHOLD V 16 N 44
030561,000131: # Page 714
030562,000132: 22,3301 71537 MASK V82FLAGS # UNTIL STATE VECTOR UPDATE SETS ONE OF
030563,000133: 22,3302 10000 CCS A # OUR FLAG BITS.
030564,000134: 22,3303 03310 TC FLAGGON # EXIT FROM STALL LOOP.
030565,000135: 22,3304 34777 CAF 1SEC
030566,000136: 22,3305 04616 TC BANKCALL
030567,000137: 22,3306 01735 CADR DELAYJOB
030568,000138: 22,3307 03300 TC V82STALL
030569,000139:
030570,000140: 22,3310 33317 FLAGGON CAF V16N44 # MONITOR HAPO,HPER,TFF.
030571,000141: 22,3311 04616 TC BANKCALL
030572,000142: 22,3312 20334 CADR GOXDSPF
030573,000143: 22,3313 05563 TC B5OFF # TERM. THIS TELLS TICKTEST TO KILL ITSELF
030574,000144: 22,3314 05563 TC B5OFF # PROCEED. DITTO
030575,000145: 22,3315 03267 TC V82GOFLP # RECYCLE. RECOMPUTE STATE VECT + DISPLAY
030576,000146:
030577,000147: 22,3316 01014 OPTIONVN VN 412
030578,000148: 22,3317 04054 V16N44 VN 1644
030579,000149: 22,3320 02140 TFFBANK ECADR TFF
030580,000150:
030581,000151: 22,3321 06037 V82GOFF1 TC INTPRET
030582,000152: 22,3322 77634 RTB
030583,000153: 22,3323 21573 LOADTIME
030584,000154: 22,3324 00041 STORE TDEC1 # TIME FOR STATE VECTOR UPDATE.
030585,000155: 22,3325 02205 STORE TSTART82 # TIME FOR INTERNAL USE.
030586,000156: 22,3326 77776 EXIT
030587,000157: 22,3327 41052 CS OPTIONX +1 # 1 FOR THIS VEHICLE, NOT 1 FOR OTHER.
030588,000158: 22,3330 64753 AD ONE
030589,000159: 22,3331 00006 EXTEND
030590,000160: 22,3332 13356 BZF THISSHIP
030591,000161: 22,3333 06037 OTHSHIP TC INTPRET
030592,000162: 22,3334 77624 CALL # CALL STATE VECTOR UPDATE FOR OTHER SHIP.
030593,000163: 22,3335 27043 OTHPREC
030594,000164: 22,3336 77775 BOTHSHIP VLOAD # MOVE RESULTS INTO TFFCONIC STORAGE AREAS
030595,000165: 22,3337 00001 RATT # TO BE CALLED BY SR30.1.
030596,000166: 22,3340 26207 STOVL RONE # RATT AT (-29)M FOR EARTH OR MOON.
030597,000167: 22,3341 00007 VATT
030598,000168: 22,3342 02215 STORE VONE # VATT AT (-7)M/CS FOR EARTH OR MOON
030599,000169: 22,3343 77743 DLOAD*
030600,000170: 22,3344 73774 1/RTMUE,2 # X2 IS 0 FOR EARTH CENTERED STATE VEC
030601,000171: 22,3345 00037 STORE TFF/RTMU # X2 IS 2 FOR MOON
030602,000172: 22,3346 77743 DLOAD* # AS LEFT BY THISPREC OR OTHPREC.
030603,000173: 22,3347 72411 MINPERE,2
030604,000174: 22,3350 02201 STORE HPERMIN # TFFRTMU, HPERMIN, AND RPADTEM ARE ALL
030605,000175: 22,3351 46135 SLOAD BHIZ # EARTH/MOON PARAMETERS AS SET HERE.
030606,000176: 22,3352 00050 X2
030607,000177: 22,3353 45367 EARTHPAD
030608,000178: 22,3354 77650 GOTO
030609,000179: 22,3355 45373 MOONPAD
030610,000180: # Page 715
030611,000181: 22,3356 06037 THISSHIP TC INTPRET
030612,000182: 22,3357 77624 CALL # CALL STATE VECTOR UPDATE FOR THIS SHIP.
030613,000183: 22,3360 27057 THISPREC
030614,000184: 22,3361 77650 GOTO
030615,000185: 22,3362 45336 BOTHSHIP
030616,000186:
030617,000187: # THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED. DO NOT SEPARATE PAIRS.
030618,000188:
030619,000189: 22,3363 00001 11530 MINPERM 2DEC 10668 B-27 # 35 KFT MIN PERIGEE HEIGHT FOR MOON(-27)M
030620,000190:
030621,000191: 22,3365 00002 31230 MINPERE 2DEC 91440 B-29 # 300 KFT (-29)M FOR EARTH
030622,000192:
030623,000193: 22,3367 43145 EARTHPAD DLOAD CLRGO # PAD 37-B RADIUS. SCALED AT (-29)M
030624,000194: 22,3370 06315 RPAD
030625,000195: 22,3371 03635 V82EMFLG # INDICATE EARTH SCALING FOR SR30.1
030626,000196: 22,3372 45377 BOTHPAD
030627,000197:
030628,000198: 22,3373 51575 MOONPAD VLOAD ABVAL # COMPUTE MOON PAD RADIUS FROM RLS VECTOR.
030629,000199: 22,3374 02023 RLS # SCALED AT (-27)M
030630,000200: 22,3375 77614 SET
030631,000201: 22,3376 03475 V82EMFLG # INDICATE MOON SCALILNG FOR SR30.1
030632,000202: 22,3377 36203 BOTHPAD STCALL RPADTEM
030633,000203: 22,3400 45551 SR30.1 # CALCULATE ORBITAL PARAMETERS
030634,000204: 22,3401 45234 RTB DSU
030635,000205: 22,3402 21573 LOADTIME
030636,000206: 22,3403 02205 TSTART82 # PRESENT TIME -- TIME V82GOFF1 BEGAN
030637,000207: 22,3404 02205 STORE TSTART82 # SAVE IT
030638,000208: 22,3405 53145 DLOAD BZE # SR30.1 SETS -TPER=0 IF HPER L/
030639,000209: 22,3406 02143 -TPER # HPERMIN (300 OR 35) KFT.
030640,000210: 22,3407 45420 TICKTIFF # (-TPER = 0)
030641,000211: 22,3410 43345 TICKTPER DLOAD DAD # (-TPER NON ZERO) TFF WAS NOT COMPUTED.
030642,000212: 22,3411 02143 -TPER # BUT WAS SET TO 59M59S. DON'T DICK TFF, DO
030643,000213: 22,3412 02205 TSTART82 # TICK -TPER. DISPLAY BOTH.
030644,000214: 22,3413 02143 STORE -TPER # -TPER CORRECTED FOR TIME SINCE V82GOFF1
030645,000215: 22,3414 77776 EXIT # BEGAN
030646,000216: 22,3415 34753 CAF BIT1
030647,000217: 22,3416 55537 TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY -TPER
030648,000218: 22,3417 05155 TC ENDOFJOB
030649,000219:
030650,000220: 22,3420 43345 TICKTIFF DLOAD DAD # (-TPER=0) TFF WAS COMPUTED. TICK TFF.
030651,000221: 22,3421 02141 TFF # DO NOT TICK -TPER. DISPLAY TFF, BUT NOT
030652,000222: 22,3422 02205 TSTART82 # -TPER.
030653,000223: 22,3423 02141 STORE TFF # TFF CORRECTED FOR TIME SINCE V82GOFF1
030654,000224: 22,3424 77776 EXIT # BEGAN.
030655,000225: 22,3425 34752 CAF BIT2
030656,000226: 22,3426 55537 TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY TFF.
030657,000227: 22,3427 05155 TC ENDOFJOB
030658,000228:
030659,000229: # Page 716
030660,000230: 22,3430 34747 TICKTEST CAF BIT5 # THIS WAITLIST PROGRAM PERPETUATES ITSELF
030661,000231: 22,3431 71044 MASK EXTVBACT # ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
030662,000232: 22,3432 10000 CCS A
030663,000233: 22,3433 03441 TC DOTICK
030664,000234: 22,3434 37713 CAF PRIO25
030665,000235: 22,3435 05072 TC NOVAC # TERMINATE V 82. CAN'T CALL ENDEXT IN RUPT.
030666,000236: 22,3436 1044 EBANK= EXTVBACT
030667,000237: 22,3436 05472 04062 2CADR ENDEXT
030668,000238:
030669,000239: 22,3440 05261 TC TASKOVER
030670,000240: 22,3441 34777 DOTICK CAF 1SEC # RE-REQUEST TICKTEST.
030671,000241: 22,3442 05203 TC WAITLIST
030672,000242: 22,3443 E4,1540 EBANK= TFF
030673,000243: 22,3443 03430 44064 2CADR TICKTEST
030674,000244:
030675,000245: 22,3445 36245 CAF THREE
030676,000246: 22,3446 71537 MASK V82FLAGS
030677,000247: 22,3447 50000 INDEX A
030678,000248: 22,3450 03451 TC +1
030679,000249: 22,3451 05261 TC TASKOVER # IF NO FLAGBITS SET DONT' CHANGE TFF OR
030680,000250: # -TPER, BUT CONTINUE LOOP.
030681,000251: 22,3452 03460 TC TPERTICK # ONLY BIT 1 SET. INCR -TPER BY 1 SEC.
030682,000252: 22,3453 34777 TFFTICK CAF 1SEC # ONLY BIT 2 SET. INCR TFF BY 1 SEC.
030683,000253: 22,3454 54001 TS L
030684,000254: 22,3455 34755 CAF ZERO
030685,000255: 22,3456 21541 DAS TFF
030686,000256: 22,3457 05261 TC TASKOVER
030687,000257: 22,3460 34777 TPERTICK CAF 1SEC
030688,000258: 22,3461 54001 TS L
030689,000259: 22,3462 34755 CAF ZERO
030690,000260: 22,3463 21543 DAS -TPER
030691,000261: 22,3464 05261 TC TASKOVER
030692,000262:
030693,000263: # Page 717
030694,000264: 22,3465 77776 V82GON EXIT # AVERAGE G ON. USE CURRENT STATE VECTOR
030695,000265: # FOR ORBITAL PARAMETER CALCULATIONS.
030696,000266: 22,3466 35021 CAF PRIO7 # LESS THAN LAMBERT
030697,000267: 22,3467 05105 TC FINDVAC # V82GON1 WILL PERFORM ORBIT CALCULATIONS
030698,000268: 22,3470 E4,1540 EBANK= TFF # ABOUT PROPER BODY APPROX ONCE PER SEC.
030699,000269: 22,3470 03503 44064 2CADR V82GON1
030700,000270:
030701,000271: 22,3472 00003 RELINT
030702,000272: 22,3473 10067 CCS NEWJOB # WITHOLD V16 N44 UNTIL FIRST ORBIT CALC
030703,000273: 22,3474 05122 TC CHANG1 # IS DONE. NOTE: V82GON1 (PRIO7, FINDVAC
030704,000274: # JOB) IS COMPLETED BEFORE V82GON (PRIO7,
030705,000275: # NOVAC JOB).
030706,000276: 22,3475 33317 V82REDSP CAF V16N44 # MONITOR HAPO, HPER, TFF
030707,000277: 22,3476 04616 TC BANKCALL
030708,000278: 22,3477 20334 CADR GOXDSPF
030709,000279: 22,3500 05563 TC B5OFF # TERM THIS TELLS V82GON1 TO KILL ITSELF.
030710,000280: 22,3501 05563 TC B5OFF # PROC DITTO.
030711,000281: 22,3502 03475 TC V82REDSP # RECYCLE
030712,000282:
030713,000283: 22,3503 06037 V82GON1 TC INTPRET # THIS EXEC PROGRAM PERPETUATES ITSELF
030714,000284: # ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
030715,000285: 22,3504 52175 VLOAD GOTO # HOLDS OFF CCS NEWJOB BETWEEN RN AND
030716,000286: 22,3505 01221 RN # VN FETCH SO RN, VN ARE FROM SAME
030717,000287: 22,3506 45507 NEXTLINE # STATE VECTOR UPDATE.
030718,000288: 22,3507 26207 NEXTLINE STOVL RONE # RN AT (-29)M FOR EARTH OR MOON
030719,000289: 22,3510 01227 VN
030720,000290: 22,3511 02215 STORE VONE # VN AT (-7)M/CS FOR EARTH OR MOON
030721,000291: 22,3512 52014 BON GOTO
030722,000292: 22,3513 04304 MOONTHIS # FLAG INDICATES BODY ABOUT WHICH ORBITAL
030723,000293: 22,3514 45516 MOONGON # CALCULATIONS ARE TO BE PERFORMED.
030724,000294: 22,3515 45527 EARTHGON # IF SET -- MOON, IF RESET --EARTH.
030725,000295:
030726,000296: 22,3516 71214 MOONGON SET DLOAD
030727,000297: 22,3517 03475 V82EMFLG # FLAG MOON SCALING FOR SR30.1
030728,000298: 22,3520 04001 1/RTMUM # LUNAR PARAMETERS LOADED HERE FOR SR30.1
030729,000299: 22,3521 14037 STODL TFF/RTMU
030730,000300: 22,3522 05364 MINPERM
030731,000301: 22,3523 26201 STOVL HPERMIN
030732,000302: 22,3524 02023 RLS # SCALED AT (-27)M
030733,000303: 22,3525 52046 ABVAL GOTO
030734,000304: 22,3526 45536 V82GON2
030735,000305: 22,3527 71214 EARTHGON CLEAR DLOAD
030736,000306: 22,3530 03675 V82EMFLG # INDICATE EARTH SCALING FOR SR30.1
030737,000307: 22,3531 04003 1/RTMUE # EARTH PARAMETERS LOADED HERE FOR SR30.1
030738,000308: 22,3532 14037 STODL TFF/RTMU
030739,000309: 22,3533 05366 MINPERE
030740,000310: 22,3534 16201 STODL HPERMIN
030741,000311: 22,3535 06315 RPAD
030742,000312: 22,3536 36203 V82GON2 STCALL RPADTEM # COMMON CODE FOR EARTH & MOON.
030743,000313: 22,3537 45551 SR30.1
030744,000314: # Page 718
030745,000315: 22,3540 77776 EXIT
030746,000316: 22,3541 34747 V82GON3 CAF BIT5
030747,000317: 22,3542 71044 MASK EXTVBACT # SEE IF ASTRONAUT HAS SIGNALLED TERMINATE
030748,000318: 22,3543 00006 EXTEND
030749,000319: 22,3544 15472 BZF ENDEXT # YES, TERMINATE VB 82 LOOP
030750,000320: 22,3545 34777 CAF 1SEC
030751,000321: 22,3546 04616 TC BANKCALL # WAIT ONE SECOND BEFORE REPEATING
030752,000322: 22,3547 01735 CADR DELAYJOB # ORBITAL PARAMETER COMPUTATION.
030753,000323: 22,3550 03503 TC V82GON1
030754,000324:
030755,000325: 22,3551 22,3541 SPLRET = V82GON3
030756,000326:
030757,000327: # Page 719
030758,000328: # SUBROUTINE NAME: SR30.1
030759,000329: # MOD NO: 0 DATE: 16 FEB 67
030760,000330: # MOD BY: R. R. BAIRNSFATHER LOG SECTION: R32
030761,000331: # MOD NO: 1 MOD BY: R. R. BAIRNSFATHER DATE: 11 APR 67 SR30.1 CHANGED TO ALLOW MONITOR OPERN
030762,000332: # MOD NO: 2 MOD BY: R. R. BAIRNSFATHER DATE: 14 APR 67 ADD OVFL CK FOR RAPO
030763,000333: # MOD NO: 3 MOD BY ALONSO DATE: 11 DEC 67 SUBROUTINE REWRITTEN
030764,000334: # MOD NO: 4 MOD BY ALONSO DATE: 26 MAR 68 PROG MOD TO HANDLE DIF EARTH/MOON SCALE
030765,000335: # MOD NO: 5 MOD BY: R. R. BAIRNSFATHER DATE: 6 AUG 68 OVFL CK FOR HAPO & HPER. VOIDS MOD #2.
030766,000336:
030767,000337: # NEW FUNCTIONAL DESCRIPTION: ORBITAL PARAMETERS DISPLAY FOR NOUNS 32 AND 44.
030768,000338: # SR30.1 CALLS TFFCONMU AND TFFRP/RA TO CALCULATE RPER (PERIGEE RADIUS),
030769,000339: # RAPO (APOGEE RADIUS), HPER (PERIGEE HEIGHT ABOVE LAUNCH PAD OR LUNAR
030770,000340: # LANDING SITE), HAPO (APOGEE HEIGHT AS ABOVE), TPER (TIME TO PERIGEE),
030771,000341: # TFF (TIME TO INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
030772,000342: # IF HPER IS GREATER THAN OR EQUAL TO HPERMIN, CALCULATES TPER AND STORES
030773,000343: # NEGATIVE IN -TPER. OTHERWISE STORES +0 IN -TPER. WHENEVER TPER IS
030774,000344: # CALCULATED, TFF IS NOT COMPUTABLE AND DEFAULTS TO -59MIN 59SEC. IF HAPO
030775,000345: # WOULD EXCEED 9999.9 NM, IT IS LIMITED TO THAT VALUE FOR DISPLAY.
030776,000346:
030777,000347: # ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
030778,000348: # ABOVE REMARKS.
030779,000349:
030780,000350: # CALLING SEQUENCE: CALL
030781,000351: # SR30.1
030782,000352:
030783,000353: # SUBROUTINES CALLED: TFFCONMU, TFFRP/RA, CALCTPER, CALCTFF
030784,000354:
030785,000355: # NORMAL EXIT MODE: CALLING LINE +1 (STILL IN INTERPRETIVE MODE)
030786,000356:
030787,000357: # ALARMS: NONE
030788,000358:
030789,000359: # OUTPUT: RAPO (-29) M EARTH APOGEE RADIUS EARTH CENTERED COORD.
030790,000360: # (-27) M MOON MOON CENTERED COORD.
030791,000361: # RPER (-29) M EARTH PERIGEE RADIUS EARTH CENTERED COORD.
030792,000362: # (-27) M MOON MOON CENTERED COORD.
030793,000363: # HAPOX (-29) M APOGEE ALTITUDE ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM.
030794,000364: # HPERX (-29) M PERIGEE ALT. ABOVE PAD OR LAND. SITE MAX VALUE LIMITED TO 9999.9 NM.
030795,000365: # TFF (-28) CS TIME TO 300KFT OR 35KFT ALTITUDE
030796,000366: # -TPER (-28) CS TIME TO PERIGEE
030797,000367:
030798,000368: # ERASABLE INITIALIZATION REQUIRED --
030799,000369: # TFF/RTMU (+17) EARTH RECIPROCAL OF PROPER GRAV CONSTANT FOR
030800,000370: # (+14) MOON EARTH OR MOON = 1/SQRT(MU).
030801,000371: # RONE (-29) M STATE VECTOR
030802,000372: # VONE (-7) M/CS STATE VECTOR
030803,000373: # RPADTEM (-29) M EARTH RADIUS OF LAUNCH PAD OR LUNAR LANDING
030804,000374: # (-27) M MOON SITE.
030805,000375: # HPERMIN (-29) M EARTH (300 OR 35) KFT MINIMUM PERIGEE ALTITUDE
030806,000376: # (-27) M MOON ABOVE LAUNCH PAD OR LUNAR LANDING SITE.
030807,000377: # V82EMFLG (INT SW BIT) RESET FOR EARTH, SET FOR MOON.
030808,000378:
030809,000379: # DEBRIS: QPREG, PDL, S2
030810,000380:
030811,000381: # Page 720
030812,000382: 22,3551 COUNT* $$/SR30S
030813,000383:
030814,000384: 22,3551 44001 SR30.1 SETPD STQ # INITIALIZE PUSHDOWN LIST.
030815,000385: 22,3552 00001 0
030816,000386: 22,3553 00051 S2
030817,000387: # SR30.1 INPUT: RONE AT (-29)M EARTH/MOON
030818,000388: # VONE AT (-7)M/CS
030819,000389: # TFFCONMU, TFFRP/RA, CALCTPER, AND CALCTFF
030820,000390: # CALLS REQUIRE:
030821,000391: # EARTH CENTERED (NO RESCALING REQUIRED)
030822,000392: # RONE SCALED TO B-29 M
030823,000393: # VONE SCALED TO B-7 M/CS
030824,000394: # MOON CENTERED (RESCALING REQUIRED)
030825,000395: # RONE SCALED TO B-27 M
030826,000396: # VONE SCALED TO B-5 M/CS
030827,000397: 22,3554 77214 BOFF VLOAD
030828,000398: 22,3555 03755 V82EMFLG # OFF FOR EARTH, ON FOR MOON.
030829,000399: 22,3556 45565 TFFCALLS
030830,000400: 22,3557 02207 RONE
030831,000401: 22,3560 77752 VSL2
030832,000402: 22,3561 26207 STOVL RONE
030833,000403: 22,3562 02215 VONE
030834,000404: 22,3563 77752 VSL2
030835,000405: 22,3564 02215 STORE VONE
030836,000406: 22,3565 77624 TFFCALLS CALL
030837,000407: 22,3566 57361 TFFCONMU
030838,000408: 22,3567 77624 CALL # TFFRP/RA COMPUTES RAPO,RPER.
030839,000409: 22,3570 57427 TFFRP/RA
030840,000410: # RETURNS WITH RAPO IN D(MPAC).
030841,000411: 22,3571 77625 DSU
030842,000412: 22,3572 02203 RPADTEM
030843,000413: 22,3573 64414 BOFF SR2R # NEED HAPO AT (-29)M FOR DISPLAY.
030844,000414: # IF MOON CENTERED, RESCALE FROM (-27)M.
030845,000415: # IF EARTH CENTERED ALREADY AT (-29)M.
030846,000416: 22,3574 03755 V82EMFLG # OFF FOR EARTH, ON FOR MOON.
030847,000417: 22,3575 45576 +1
030848,000418: 22,3576 77624 CALL # IF RAPO > MAXNM, SET RAPO =9999.9 NM.
030849,000419: 22,3577 45636 MAXCHK # OTHERWISE STORE (RAPO-RPADTEM) IN HAPO.
030850,000420: 22,3600 16120 STORHAPO STODL HAPOX
030851,000421: 22,3601 00017 RPER
030852,000422: 22,3602 77625 DSU
030853,000423: 22,3603 02203 RPADTEM # GIVES HPER AT (-29)M EARTH, (-27)M MOON.
030854,000424: 22,3604 00161 STORE MPAC +4 # SAVE THIS FOR COMPARISON TO HPERMIN.
030855,000425: 22,3605 64414 BOFF SR2R # NEED HPER AT (-29)M FOR DISPLAY.
030856,000426: # IF MOON CENTERED, RESCALE FROM (-27)M.
030857,000427: # IF EARTH CENTERED ALREADY AT (-29)M.
030858,000428: 22,3606 03755 V82EMFLG # OFF FOR EARTH, ON FOR MOON.
030859,000429: 22,3607 45610 +1
030860,000430: 22,3610 77624 CALL # IF HPER > MAXNM, SET HPER = 9999.9 NM.
030861,000431: 22,3611 45636 MAXCHK
030862,000432: # Page 721
030863,000433: 22,3612 16122 STORHPER STODL HPERX # STORE (RPER - RPADTEM) INTO HPERX.
030864,000434: 22,3613 00161 MPAC +4
030865,000435: 22,3614 51025 DSU BPL # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
030866,000436: 22,3615 02201 HPERMIN # IF HPER L/ HPERMIN (300 OR 35) KFT,
030867,000437: 22,3616 45622 DOTPER # THEN ZERO INTO -TPER.
030868,000438: 22,3617 52145 DLOAD GOTO # OTHERWISE CALCULATE TPER.
030869,000439: 22,3620 06522 HI6ZEROS
030870,000440: 22,3621 45626 SKIPTPER
030871,000441: 22,3622 45145 DOTPER DLOAD CALL
030872,000442: 22,3623 00017 RPER
030873,000443: 22,3624 57465 CALCTPER
030874,000444: 22,3625 77676 DCOMP # TPER IS PUT NEG INTO -TPER.
030875,000445: 22,3626 16143 SKIPTPER STODL -TPER
030876,000446: 22,3627 02201 HPERMIN # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
030877,000447: 22,3630 45015 DAD CALL
030878,000448: 22,3631 02203 RPADTEM # RPADTEM AT (-29)M FOR EARTH, (-27)M MOON
030879,000449: 22,3632 57470 CALCTFF # GIVES 59M59S FOR TFF IF HPER G/
030880,000450: 22,3633 77676 DCOMP # HPERMIN + RPADTEM. (TPER WAS NON ZERO)
030881,000451: 22,3634 36141 STCALL TFF # OTHERWISE COMPUTES TFF. (GOTO)
030882,000452: 22,3635 00051 S2
030883,000453:
030884,000454: 22,3636 51025 MAXCHK DSU BPL # IF C(MPAC) > 9999.9 NM. MPAC = 9999.9 NM.
030885,000455: 22,3637 05646 MAXNM
030886,000456: 22,3640 45643 +3 # OTHERWISE C(MPAC) - B(MPAC).
030887,000457: 22,3641 43415 DAD RVQ
030888,000458: 22,3642 05646 MAXNM
030889,000459: 22,3643 43545 +3 DLOAD RVQ # (USED BY P30 -- P37 ALSO)
030890,000460: 22,3644 05646 MAXNM
030891,000461:
030892,000462: 22,3645 01065 05603 MAXNM 2OCT 0106505603
030893,000463:
030894,000464: # Page 722 (empty page)
030895,000465:
End of include-file R30.agc. Parent file is MAIN.agc