Source Code

019870,000001: # Copyright: Public domain. 019871,000002: # Filename: GROUND_TRACKING_DETERMINATION_PROGRAM.agc 019872,000003: # Purpose: Part of the source code for Comanche, build 055. 019873,000004: # It is part of the source code for the Command Module's (CM) 019874,000005: # Apollo Guidance Computer (AGC), Apollo 11. 019875,000006: # Assembler: yaYUL 019876,000007: # Reference: pp. 456-459 019877,000008: # Contact: Onno Hommes <ohommes@cmu.edu>. 019878,000009: # Website: www.ibiblio.org/apollo. 019879,000010: # Mod history: 2009-05-07 OH Transcription Batch 1 Assignment 019880,000011: # 2009-05-20 RSB Corrected a couple of DIMOFLAG to DIM0FLAG. 019881,000012: 019882,000013: # The contents of the "Comanche055" files, in general, are transcribed 019883,000014: # from scanned documents. 019884,000015: 019885,000016: # Assemble revision 055 of AGC program Comanche by NASA 019886,000017: # 2021113-051. April 1, 1969. 019887,000018: 019888,000019: # This AGC program shall also be referred to as Colossus 2A 019889,000020: 019890,000021: # Prepared by 019891,000022: # Massachussets Institute of Technology 019892,000023: # 75 Cambridge Parkway 019893,000024: # Cambridge, Massachusetts 019894,000025: 019895,000026: # under NASA contract NAS 9-4065. 019896,000027: 019897,000028: # Refer directly to the online document mentioned above for further information. 019898,000029: # Please report any errors to info@sandroid.org. 019899,000030: 019900,000031: # Page 456 019901,000032: # GROUND TRACKING DETERMINATION PROGRAM -- P21 019902,000033: 019903,000034: # PROGRAM DESCRIPTION 019904,000035: # MOD NO -- 1 019905,000036: # MOD BY -- N. M. NEVILLE 019906,000037: 019907,000038: # FUNCTIONAL DESCRIPTION -- 019908,000039: # TO PROVIDE THE ASTRONAUT DETAILS OF THE LM OR CSM GROUND TRACK WITHOUT 019909,000040: # THE NEED FOR GROUND COMMUNICATION (REQUESTED BY DSKY). 019910,000041: 019911,000042: # CALLING SEQUENCE -- 019912,000043: # ASTRONAUT REQUEST THROUGH DSKY V37E21E 019913,000044: 019914,000045: # SUBROUTINES CALLED -- 019915,000046: # GOPERF4 019916,000047: # GOFLASH 019917,000048: # THISPREC 019918,000049: # OTHPREC 019919,000050: # LAT-LONG 019920,000051: 019921,000052: # NORMAL EXIT MODES -- 019922,000053: # ASTRONAUT REQUEST THROUGH DSKY TO TERMINATE PROGRAM V34E 019923,000054: 019924,000055: # ALARM OR ABORT EXIT MODES -- 019925,000056: # NONE 019926,000057: 019927,000058: # OUTPUT -- 019928,000059: # OCTAL DISPLAY OF OPTION CODE AND VEHICLE WHOSE GROUND TRACK IS TO BE 019929,000060: # COMPUTED 019930,000061: # OPTION CODE 00002 019931,000062: # THIS 00001 019932,000063: # OTHER 00002 019933,000064: # DECIMAL DISPLAY OF TIME TO BE INTEGRATED TO HOURS , MINUTES , SECONDS 019934,000065: # DECIMAL DISPLAY OF LAT,LONG,ALT 019935,000066: 019936,000067: # ERASABLE INITIALIZATION REQUIRED 019937,000068: # AX0 2DEC 4.652459653 E-5 RADIANS "68-69 CONSTANTS" 019938,000069: # -AY0 2DEC 2.147535898 E-5 RADIANS 019939,000070: # AZ0 2DEC .7753206164 REVOLUTIONS 019940,000071: # FOR LUNAR ORBITS 504LM VECTOR IS NEEDED 019941,000072: # 504LM 2DEC -2.700340600 E-5 RADIANS 019942,000073: # 504LM _2 2DEC -7.514128400 E-4 RADIANS 019943,000074: # 504LM _4 2DEC _2.553198641 E-4 RADIANS 019944,000075: 019945,000076: # NONE 019946,000077: 019947,000078: # DEBRIS 019948,000079: 019949,000080: # Page 457 019950,000081: # CENTRALS -- A,Q,L 019951,000082: # OTHER -- THOSE USED BY THE ABOVE LISTED SUBROUTINES 019952,000083: # SEE LEMPREC, LAT-LONG 019953,000084: 019954,000085: 33,3776 30,2000 SBANK= LOWSUPER # FOR LOW 2CADR'S. 019955,000086: 019956,000087: 33,3776 BANK 33 019957,000088: 37,2000 SETLOC P20S 019958,000089: 37,2000 BANK 019959,000090: 019960,000091: 37,2001 E4,1715 EBANK= P21TIME 019961,000092: 37,2001 COUNT 24/P21 019962,000093: 019963,000094: 37,2001 35017 PROG21 CAF ONE 019964,000095: 37,2002 55132 TS OPTION2 # ASSUMED VEHICLE IS LM, R2 = 00001 019965,000096: 37,2003 35016 CAF BIT2 # OPTION 2 019966,000097: 37,2004 04662 TC BANKCALL 019967,000098: 37,2005 21055 CADR GOPERF4 019968,000099: 37,2006 04106 TC GOTOP00H # TERMINATE 019969,000100: 37,2007 02011 TC +2 # PROCEED VALUE OF ASSUMED VEHICLE OK 019970,000101: 37,2010 02003 TC -5 # R2 LOADED THROUGH DSKY 019971,000102: 37,2011 32152 P21PROG1 CAF V6N34 # LOAD DESIRED TIME OF LAT-LONG. 019972,000103: 37,2012 04662 TC BANKCALL 019973,000104: 37,2013 20720 CADR GOFLASH 019974,000105: 37,2014 04106 TC GOTOP00H # TERM 019975,000106: 37,2015 02017 TC +2 # PROCEED VALUES OK 019976,000107: 37,2016 02011 TC -5 # TIME LOADED THROUGH DSKY 019977,000108: 37,2017 06006 TC INTPRET 019978,000109: 37,2020 77745 DLOAD 019979,000110: 37,2021 01046 DSPTEM1 019980,000111: 37,2022 34041 STCALL TDEC1 # INTEG TO TIME SPECIFIED IN TDEC 019981,000112: 37,2023 27442 INTSTALL 019982,000113: 37,2024 43014 BON SET 019983,000114: 37,2025 01303 P21FLAG 019984,000115: 37,2026 76044 P21CONT # ON...RECYCLE USING BASE VECTOR 019985,000116: 37,2027 01474 VINTFLAG # OFF..1ST PASS CALC BASE VECTOR 019986,000117: 37,2030 70535 SLOAD SR1 019987,000118: 37,2031 01133 OPTION2 019988,000119: 37,2032 43030 BHIZ CLEAR 019989,000120: 37,2033 76035 +2 # ZERO..THIS VEHICLE (CM) 019990,000121: 37,2034 01674 VINTFLAG # ONE...OTHER VEHICLE(LM) 019991,000122: 37,2035 43014 CLEAR CLEAR 019992,000123: 37,2036 01676 DIM0FLAG 019993,000124: 37,2037 01673 INTYPFLG # PRECISION 019994,000125: 37,2040 77624 CALL 019995,000126: 37,2041 27162 INTEGRV # CALCULATE 019996,000127: 37,2042 77650 GOTO # .AND 019997,000128: 37,2043 76065 P21VSAVE # ..SAVE BASE VECTOR 019998,000129: 37,2044 77775 P21CONT VLOAD # RECYCLE..INTEG FROM BASE VECTOR 019999,000130: 37,2045 03605 P21BASER 020000,000131: # Page 458 020001,000132: 37,2046 25535 STOVL RCV # ..POS 020002,000133: 37,2047 03613 P21BASEV 020003,000134: 37,2050 15543 STODL VCV # ..VEL 020004,000135: 37,2051 02316 P21TIME 020005,000136: 37,2052 01517 STORE TET # ..TIME 020006,000137: 37,2053 43014 CLEAR CLEAR 020007,000138: 37,2054 01676 DIM0FLAG 020008,000139: 37,2055 00263 MOONFLAG 020009,000140: 37,2056 53135 SLOAD BZE 020010,000141: 37,2057 03604 P21ORIG 020011,000142: 37,2060 76063 +3 # ZERO = EARTH 020012,000143: 37,2061 77614 SET # ...2 = MOON 020013,000144: 37,2062 00063 MOONFLAG 020014,000145: 37,2063 77624 CALL 020015,000146: 37,2064 27135 INTEGRVS 020016,000147: 37,2065 77745 P21VSAVE DLOAD # SAVE CURRENT BASE VECTOR 020017,000148: 37,2066 00015 TAT 020018,000149: 37,2067 26316 STOVL P21TIME # ..TIME 020019,000150: 37,2070 00017 RATT1 020020,000151: 37,2071 27605 STOVL P21BASER # ..POS B-29 OR B-27 020021,000152: 37,2072 00025 VATT1 020022,000153: 37,2073 03613 STORE P21BASEV # ..VEL B-7 OR B-5 020023,000154: 37,2074 53646 ABVAL SL* 020024,000155: 37,2075 57576 0,2 020025,000156: 37,2076 27623 STOVL P21VEL # /VEL/ FOR N73 DSP 020026,000157: 37,2077 00001 RATT 020027,000158: 37,2100 50256 UNIT DOT 020028,000159: 37,2101 00007 VATT # U(R).(V) 020029,000160: 37,2102 67471 DDV ASIN # U(R).U(V) 020030,000161: 37,2103 03623 P21VEL 020031,000162: 37,2104 03625 STORE P21GAM # SIN-1 U(R).U(V), -90 TO +90 020032,000163: 37,2105 43134 SXA,2 SET 020033,000164: 37,2106 03603 P21ORIG # 0 = EARTH 2 = MOON 020034,000165: 37,2107 01063 P21FLAG 020035,000166: 37,2110 67214 P21DSP CLEAR SLOAD # GENERATE DISPLAY DATA 020036,000167: 37,2111 01663 LUNAFLAG 020037,000168: 37,2112 00050 X2 020038,000169: 37,2113 43054 BZE SET 020039,000170: 37,2114 76116 +2 # 0 = EARTH 020040,000171: 37,2115 01463 LUNAFLAG 020041,000172: 37,2116 77775 VLOAD 020042,000173: 37,2117 00001 RATT 020043,000174: 37,2120 16152 STODL ALPHAV 020044,000175: 37,2121 00015 TAT 020045,000176: 37,2122 45014 CLEAR CALL 020046,000177: 37,2123 00662 ERADFLAG 020047,000178: 37,2124 26370 LAT-LONG 020048,000179: 37,2125 77605 DMP # MPAC = ALT, METERS B-29 020049,000180: 37,2126 36154 K.01 020050,000181: 37,2127 03621 STORE P21ALT # ALT/100 FOR N73 DSP 020051,000182: # Page 459 020052,000183: 37,2130 77776 EXIT 020053,000184: 37,2131 32151 CAF V06N43 # DISPLAY LAT,LONG,ALT 020054,000185: 37,2132 04662 TC BANKCALL # LAT,LONG = REVS B0 BOTH EARTH/MOON 020055,000186: 37,2133 20720 CADR GOFLASH # ALT = METERS B-29 BOTH EARTH/MOON 020056,000187: 37,2134 04106 TC GOTOP00H # TERM 020057,000188: 37,2135 04106 TC GOTOP00H 020058,000189: 37,2136 06006 TC INTPRET # V32E RECYCLE 020059,000190: 37,2137 43345 DLOAD DAD 020060,000191: 37,2140 02316 P21TIME 020061,000192: 37,2141 36146 600SEC # 600 SECONDS OR 10 MIN 020062,000193: 37,2142 01046 STORE DSPTEM1 020063,000194: 37,2143 77634 RTB 020064,000195: 37,2144 76011 P21PROG1 020065,000196: 020066,000197: 37,2145 00003 25140 600SEC 2DEC 60000 B-28 # 10 MIN 020067,000198: 020068,000199: 37,2147 00001 P21ONENN OCT 00001 # NEEDED TO DETERMINE VEHICLE 020069,000200: 37,2150 00000 OCT 00000 # TO BE INTEGRATED 020070,000201: 37,2151 01453 V06N43 VN 00643 020071,000202: 37,2152 01442 V6N34 VN 00634 020072,000203: 37,2153 00243 32703 K.01 2DEC .01 020073,000204: End of include-file GROUND_TRACKING_DETERMINATION_PROGRAM.agc. Parent file is MAIN.agc