Source Code
028009,000001: # Copyright: Public domain.
028010,000002: # Filename: GROUND_TRACKING_DETERMINATION_PROGRAM.agc
028011,000003: # Purpose: Part of the source code for Luminary 1A build 099.
028012,000004: # It is part of the source code for the Lunar Module's (LM)
028013,000005: # Apollo Guidance Computer (AGC), for Apollo 11.
028014,000006: # Assembler: yaYUL
028015,000007: # Contact: Ron Burkey <info@sandroid.org>.
028016,000008: # Website: www.ibiblio.org/apollo.
028017,000009: # Pages: 654-657
028018,000010: # Mod history: 2009-05-18 RSB Adapted from the corresponding
028019,000011: # Luminary131 file, using page
028020,000012: # images from Luminary 1A.
028021,000013:
028022,000014: # This source code has been transcribed or otherwise adapted from
028023,000015: # digitized images of a hardcopy from the MIT Museum. The digitization
028024,000016: # was performed by Paul Fjeld, and arranged for by Deborah Douglas of
028025,000017: # the Museum. Many thanks to both. The images (with suitable reduction
028026,000018: # in storage size and consequent reduction in image quality as well) are
028027,000019: # available online at www.ibiblio.org/apollo. If for some reason you
028028,000020: # find that the images are illegible, contact me at info@sandroid.org
028029,000021: # about getting access to the (much) higher-quality images which Paul
028030,000022: # actually created.
028031,000023:
028032,000024: # Notations on the hardcopy document read, in part:
028033,000025:
028034,000026: # Assemble revision 001 of AGC program LMY99 by NASA 2021112-61
028035,000027: # 16:27 JULY 14, 1969
028036,000028:
028037,000029: # Page 654
028038,000030: # GROUND TRACKING DETERMINATION PROGRAM -- P21
028039,000031: # PROGRAM DESCRIPTION
028040,000032: # MOD NO -- 1
028041,000033: # MOD BY -- N. M. NEVILLE
028042,000034:
028043,000035: # FUNCTIONAL DESCRIPTION --
028044,000036: # TO PROVIDE THE ASTRONAUT DETAILS OF THE LM OR CSM GROUND TRACK WITHOUT
028045,000037: # THE NEED FOR GROUND COMMUNICATION (REQUESTED BY DSKY).
028046,000038:
028047,000039: # CALLING SEQUENCE --
028048,000040: # ASTRONAUT REQUEST THROUGH DSKY V37E21E
028049,000041:
028050,000042: # SUBROUTINES CALLED --
028051,000043: # GOPERF4
028052,000044: # GOFLASH
028053,000045: # THISPREC
028054,000046: # OTHPREC
028055,000047: # LAT-LONG
028056,000048:
028057,000049: # NORMAL EXIT MODES --
028058,000050: # ASTRONAUT REQUEST THROUGH DSKY TO TERMINATE PROGRAM V34E
028059,000051:
028060,000052: # ALARM OR ABORT EXIT MODES --
028061,000053: # NONE
028062,000054:
028063,000055: # OUTPUT --
028064,000056: # OCTAL DISPLAY OF OPTION CODE AND VEHICLE WHOSE GROUND TRACK IS TO BE
028065,000057: # COMPUTED
028066,000058: # OPTION CODE 00002
028067,000059: # THIS 00001
028068,000060: # OTHER 00002
028069,000061: # DECIMAL DISPLAY OF TIME TO BE INTEGRATED TO HOURS, MINUTES, SECONDS
028070,000062: # DECIMAL DISPLAY OF LAT,LONG,ALT
028071,000063:
028072,000064: # ERASABLE INITIALIZATION REQUIRED
028073,000065: # AX0 2DEC 4.652459653 E-5 RADIANS $68-69 CONSTANTS*
028074,000066: # -AY0 2DEC 2.137535898 E-5 RADIANS
028075,000067: # AZ0 2DEC .7753206164 REVOLUTIONS
028076,000068: # FOR LUNAR ORBITS 504LM VECTOR IS NEEDED:
028077,000069: # 504LM 2DEC -2.700340600 E-5 RADIANS
028078,000070: # 504LM _2 2DEC -7.514128400 E-4 RADIANS
028079,000071: # 504LM _4 2DEC _2.553198641 E-4 RADIANS
028080,000072:
028081,000073: # NONE
028082,000074:
028083,000075: # DEBRIS
028084,000076: # Page 655
028085,000077: # CENTRALS -- A,Q,L
028086,000078: # OTHER -- THOSE USED BY THE ABOVE LISTED SUBROUTINES
028087,000079: # SEE LEMPREC, LAT-LONG
028088,000080:
028089,000081: 35,2545 30,2000 SBANK= LOWSUPER # FOR LOW 2CADR'S.
028090,000082:
028091,000083: 33,2200 BANK 33
028092,000084: 24,2000 SETLOC P20S
028093,000085: 24,2000 BANK
028094,000086:
028095,000087: 24,3505 E7,1762 EBANK= P21TIME
028096,000088: 24,3505 COUNT* $$/P21
028097,000089: 24,3505 34753 PROG21 CAF ONE
028098,000090: 24,3506 55145 TS OPTION2 # ASSUMED VEHICLE IS LM, R2 = 00001
028099,000091: 24,3507 34752 CAF BIT2 # OPTION 2
028100,000092: 24,3510 04616 TC BANKCALL
028101,000093: 24,3511 20633 CADR GOPERF4
028102,000094: 24,3512 06001 TC GOTOP00H # TERMINATE
028103,000095: 24,3513 03515 TC +2 # PROCEED VALUE OF ASSUMED VEHICLE OK
028104,000096: 24,3514 03507 TC -5 # R2 LOADED THROUGH DSKY
028105,000097: 24,3515 33665 P21PROG1 CAF V6N34 # LOAD DESIRED TIME OF LAT-LONG.
028106,000098: 24,3516 04616 TC BANKCALL
028107,000099: 24,3517 20476 CADR GOFLASH
028108,000100: 24,3520 06001 TC GOTOP00H # TERM
028109,000101: 24,3521 03523 TC +2 # PROCEED VALUES OK
028110,000102: 24,3522 03515 TC -5 # TIME LOADED THROUGH DSKY
028111,000103: 24,3523 06037 TC INTPRET
028112,000104: 24,3524 77745 DLOAD
028113,000105: 24,3525 01046 DSPTEM1
028114,000106: 24,3526 34041 STCALL TDEC1 # INTEG TO TIME SPECIFIED IN TDEC
028115,000107: 24,3527 27414 INTSTALL
028116,000108: 24,3530 43014 BON CLEAR
028117,000109: 24,3531 00304 P21FLAG
028118,000110: 24,3532 51550 P21CONT # ON -- RECYCLE USING BASE VECTOR
028119,000111: 24,3533 01674 VINTFLAG # OFF -- 1ST PASS CALL BASE VECTOR
028120,000112: 24,3534 70535 SLOAD SR1
028121,000113: 24,3535 01146 OPTION2
028122,000114: 24,3536 43030 BHIZ SET
028123,000115: 24,3537 51541 +2 # ZERO -- THIS VEHICLE (LM)
028124,000116: 24,3540 01474 VINTFLAG # ONE -- OTHER VEHICLE (CM)
028125,000117: 24,3541 43014 CLEAR CLEAR
028126,000118: 24,3542 01676 DIM0FLAG
028127,000119: 24,3543 01673 INTYPFLG # PRECISION
028128,000120: 24,3544 77624 CALL
028129,000121: 24,3545 27134 INTEGRV # CALCULATE
028130,000122: 24,3546 77650 GOTO # AND
028131,000123: 24,3547 51571 P21VSAVE # SAVE BASE VECTOR
028132,000124: 24,3550 77775 P21CONT VLOAD
028133,000125: 24,3551 03676 P21BASER # RECYCLE -- INTEG FROM BASE VECTOR
028134,000126: 24,3552 25535 STOVL RCV # --POS
028135,000127: # Page 656
028136,000128: 24,3553 03704 P21BASEV
028137,000129: 24,3554 15543 STODL VCV # --VEL
028138,000130: 24,3555 03763 P21TIME
028139,000131: 24,3556 01517 STORE TET # --TIME
028140,000132: 24,3557 43014 CLEAR CLEAR
028141,000133: 24,3560 01676 DIM0FLAG
028142,000134: 24,3561 00263 MOONFLAG
028143,000135: 24,3562 53135 SLOAD BZE
028144,000136: 24,3563 01164 P21ORIG
028145,000137: 24,3564 51567 +3 # ZERO = EARTH
028146,000138: 24,3565 77614 SET # ---2 = MOON
028147,000139: 24,3566 00063 MOONFLAG
028148,000140: 24,3567 77624 +3 CALL
028149,000141: 24,3570 27107 INTEGRVS
028150,000142: 24,3571 77745 P21VSAVE DLOAD # SAVE CURRENT BASE VECTOR
028151,000143: 24,3572 00015 TAT
028152,000144: 24,3573 27763 STOVL P21TIME # --TIME
028153,000145: 24,3574 00017 RATT1
028154,000146: 24,3575 27676 STOVL P21BASER # --POS B-29 OR B-27
028155,000147: 24,3576 00025 VATT1
028156,000148: 24,3577 03704 STORE P21BASEV # --VEL B-07 OR B-05
028157,000149: 24,3600 53646 ABVAL SL*
028158,000150: 24,3601 57576 0,2
028159,000151: 24,3602 27712 STOVL P21VEL # VEL/ FOR N91 DISP
028160,000152: 24,3603 00001 RATT
028161,000153: 24,3604 50256 UNIT DOT
028162,000154: 24,3605 00007 VATT # U(R).V
028163,000155: 24,3606 67471 DDV ASIN # U(R).U(V)
028164,000156: 24,3607 03712 P21VEL
028165,000157: 24,3610 03714 STORE P21GAM # SIN-1 U(R).U(V) , -90 TO +90
028166,000158: 24,3611 67334 SXA,2 SLOAD
028167,000159: 24,3612 01163 P21ORIG # 0 = EARTH
028168,000160: 24,3613 01146 OPTION2
028169,000161: 24,3614 46142 SR1 BHIZ
028170,000162: 24,3615 51620 +3
028171,000163: 24,3616 77650 GOTO
028172,000164: 24,3617 51623 +4
028173,000165: 24,3620 77614 +3 BON
028174,000166: 24,3621 04307 SURFFLAG
028175,000167: 24,3622 51625 P21DSP
028176,000168: 24,3623 77614 +4 SET
028177,000169: 24,3624 00064 P21FLAG
028178,000170: 24,3625 67214 P21DSP CLEAR SLOAD # GENERATE DISPLAY DATA
028179,000171: 24,3626 01663 LUNAFLAG
028180,000172: 24,3627 00050 X2
028181,000173: 24,3630 43054 BZE SET
028182,000174: 24,3631 51633 +2 # 0 = EARTH
028183,000175: 24,3632 01463 LUNAFLAG
028184,000176: 24,3633 77775 VLOAD
028185,000177: 24,3634 00001 RATT
028186,000178: # Page 657
028187,000179: 24,3635 16032 STODL ALPHAV
028188,000180: 24,3636 00015 TAT
028189,000181: 24,3637 45014 CLEAR CALL
028190,000182: 24,3640 00662 ERADFLAG
028191,000183: 24,3641 26351 LAT-LONG
028192,000184: 24,3642 77605 DMP # MPAC = ALT, METERS B-29
028193,000185: 24,3643 11667 K.01
028194,000186: 24,3644 03716 STORE P21ALT # ALT/100 FOR N91 DISP
028195,000187: 24,3645 77776 EXIT
028196,000188: 24,3646 33664 CAF V06N43 # DISPLAY LAT, LONG, ALT
028197,000189: 24,3647 04616 TC BANKCALL # LAT, LONG = 1/2 REVS B0
028198,000190: 24,3650 20476 CADR GOFLASH # ALT = KM B14
028199,000191: 24,3651 06001 TC GOTOP00H # TERM
028200,000192: 24,3652 06001 TC GOTOP00H
028201,000193: 24,3653 06037 TC INTPRET # V32E RECYCLE
028202,000194: 24,3654 43345 DLOAD DAD
028203,000195: 24,3655 03763 P21TIME
028204,000196: 24,3656 11663 600SEC # 600 SECONDS OR 10 MIN
028205,000197: 24,3657 01046 STORE DSPTEM1
028206,000198: 24,3660 77634 RTB
028207,000199: 24,3661 51515 P21PROG1
028208,000200: 24,3662 00003 25140 600SEC 2DEC 60000 B-28 # 10 MIN
028209,000201:
028210,000202: 24,3664 01453 V06N43 VN 00643
028211,000203: 24,3665 01442 V6N34 VN 00634
028212,000204: 24,3666 00243 32703 K.01 2DEC .01
028213,000205:
End of include-file GROUND_TRACKING_DETERMINATION_PROGRAM.agc. Parent file is MAIN.agc