Source Code

026028,000001: # Copyright: Public domain. 026029,000002: # Filename: P30_P37.agc 026030,000003: # Purpose: A section of Luminary 1C, revision 131. 026031,000004: # It is part of the source code for the Lunar Module's (LM) 026032,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 026033,000006: # This file is intended to be a faithful transcription, except 026034,000007: # that the code format has been changed to conform to the 026035,000008: # requirements of the yaYUL assembler rather than the 026036,000009: # original YUL assembler. 026037,000010: # Reference: pp. 624-627 of 1729.pdf. 026038,000011: # Contact: Ron Burkey <info@sandroid.org>. 026039,000012: # Website: www.ibiblio.org/apollo 026040,000013: # Mod history: 05/19/03 RSB. Began transcribing. 026041,000014: 026042,000015: # Page 624 026043,000016: # PROGRAM DESCRIPTION P30 DATE 3-6-67 026044,000017: # MOD.1 BY RAMA AIYAWAR 026045,000018: 026046,000019: # FUNCTIONAL DESCRIPTIONS 026047,000020: # ACCEPT ASTRONAUT INPUTS OF TIG,DELV(LV) 026048,000021: # CALL IMU STATUS CHECK ROUTINE (R02) 026049,000022: # DISPLAY TIME TO GO, APOGEE, PERIGEE, DELV(MAG), MGA AT IGN 026050,000023: # REQUEST BURN PROGRAM 026051,000024: 026052,000025: # CALLING SEQUENCE VIA JOB FROM V37 026053,000026: 026054,000027: # EXIT VIA V37 CALL CR TO GOTOP00H (V34E) 026055,000028: 026056,000029: # SUBROUTINE CALLS -- FLAGUP, PHASCHNG, BANKCALL, ENDOFJOB, GOFLASH, GOFLASHR 026057,000030: # GOPERF3R, INTPRET, BLANKET, GOTOP00H, R02BOTH, S30.1, 026058,000031: # TIG/N35, MIDGIM, DISPMGA 026059,000032: 026060,000033: # ERASABLE INITIALIZATION -- STATE VECTOR 026061,000034: 026062,000035: # OUTPUT -- RINIT, VINIT, +MGA, VTIG, RTIG, DELVSIN, DELVSAB, DELVSLV, HAPO, 026063,000036: # HPER, TTOGO 026064,000037: 026065,000038: # DEBRIS -- A, L, MPAC, PUSHLIST 026066,000039: 026067,000040: 32,3000 BANK 32 026068,000041: 35,2000 SETLOC P30S 026069,000042: 35,2000 BANK 026070,000043: 35,2000 E4,1652 EBANK= +MGA 026071,000044: 35,2000 COUNT* $$/P30 026072,000045: 35,2000 05504 P30 TC UPFLAG # SET UPDATE FLAG 026073,000046: 35,2001 00027 ADRES UPDATFLG 026074,000047: 35,2002 05504 TC UPFLAG # SET TRACK FLAG 026075,000048: 35,2003 00031 ADRES TRACKFLG 026076,000049: 026077,000050: 35,2004 32032 P30N33 CAF V06N33 # T OF IGN 026078,000051: 35,2005 03621 TC VNP00H # RETURN ON PROCEED, P00H ON TERMINATE 026079,000052: 026080,000053: 35,2006 33636 CAF V06N81 # DISPLAY DELTA V (LV) 026081,000054: 35,2007 03621 TC VNP00H # REDISPLAY ON RECYCLE 026082,000055: 026083,000056: 35,2010 05516 TC DOWNFLAG # RESET UPDATE FLAG 026084,000057: 35,2011 00027 ADRES UPDATFLG 026085,000058: 35,2012 06042 TC INTPRET 026086,000059: 35,2013 77624 CALL 026087,000060: 35,2014 70000 S30.1 026088,000061: 35,2015 43014 SET SET 026089,000062: 35,2016 00470 UPDATFLG 026090,000063: 35,2017 01067 XDELVFLG 026091,000064: 35,2020 77776 EXIT 026092,000065: 35,2021 32033 PARAM30 CAF V06N42 # DISPLAY APOGEE,PERIGEE,DELTA V 026093,000066: # Page 625 026094,000067: 35,2022 03621 TC VNP00H 026095,000068: 026096,000069: 35,2023 06042 TC INTPRET 026097,000070: 35,2024 77614 SET 026098,000071: 35,2025 01071 FINALFLG 026099,000072: 35,2026 77624 REVN1645 CALL 026100,000073: 35,2027 73515 VN1645 026101,000074: 35,2030 77650 GOTO # COMES HERE ON RECYCLE RESPONSE 026102,000075: 35,2031 72026 REVN1645 026103,000076: 026104,000077: 35,2032 01441 V06N33 VN 0633 026105,000078: 35,2033 01452 V06N42 VN 0642 026106,000079: 026107,000080: # Page 626 026108,000081: # PROGRAM DESCRPTION S30.1 DATE 9NOV66 026109,000082: # MOD NO 1 LOG SECTION P30,P37 026110,000083: # MOD BY RAMA AIYAWAR ** 026111,000084: 026112,000085: # FUNCTIONAL DESCRIPTION 026113,000086: # BASED ON STORED TARGET PARAMETERS (R OF IGNITION (RTIG), V OF 026114,000087: # IGNITION (VTIG), TIME OF IGNITION (TIG)), COMPUTE PERIGEE ALTITUDE 026115,000088: # APOGEE ALTITUDE AND DELTAV REQUIRED (DELVSIN). 026116,000089: 026117,000090: # CALLING SEQUENCE 026118,000091: # L CALL 026119,000092: # L+1 s30.1 026120,000093: 026121,000094: # NORMAL EXIT MODE 026122,000095: # AT L+2 OR CALLING SEQUENCE (GOTO L+2) 026123,000096: 026124,000097: # SUBROUTINES CALLED 026125,000098: # LEMPREC 026126,000099: # PERIAPO 026127,000100: 026128,000101: # ALARM OR ABORT EXIT MODES 026129,000102: # NONE 026130,000103: 026131,000104: # ERASABLE INITIALIZATION REQUIRED 026132,000105: # TIG TIME OF IGNITION DP B28CS 026133,000106: # DELVSLV SPECIFIED DELTA-V INLOCAL VERT. 026134,000107: # COORDS. OF ACTIVE VEHICLE AT 026135,000108: # TIME OF IGNITION VECTOR B+7 METERS/CS 026136,000109: 026137,000110: # OUTPUT 026138,000111: # RTIG POSITION AT TIG VECTOR B+29 METERS 026139,000112: # VTIG VELOCITY AT TIG VECTOR B+29 METERS/CS 026140,000113: # PDL 4D APOGEE ALTITUDE DP B+29 M, B+27 METERS. 026141,000114: # HAPO APOGEE ALTITUDE DP B+29 METERS 026142,000115: # PDL 8D PERIGEE ALTITUDE DP B+29 M, B+27 METERS. 026143,000116: # HPER PERIGEE ALTITUDE DP B+29 METERS 026144,000117: # DELVSIN SPECIFIED DELTA-V AT INTERTIAL 026145,000118: # COORD. OF ACTIVE VEHICLE AT 026146,000119: # TIME OF IGNITION VECTOR B+7 METERS/CS 026147,000120: # DELVSAB MAG. OF DELVSIN VECTOR B+7 METERS/CS 026148,000121: 026149,000122: # DEBRIS QTEMP TEMP.ERASABLE 026150,000123: # QPRET, MPAC 026151,000124: # PUSHLIST 026152,000125: 026153,000126: 34,2000 SETLOC P30S1 026154,000127: 34,2000 BANK 026155,000128: 026156,000129: 34,2000 COUNT* $$/S30S 026157,000130: 026158,000131: 34,2000 71220 S30.1 STQ DLOAD 026159,000132: 34,2001 03632 QTEMP 026160,000133: 34,2002 03442 TIG # TIME IGNITION SCALED AT 2(+28)CS 026161,000134: 34,2003 34041 STCALL TDEC1 026162,000135: 34,2004 27056 LEMPREC # ENCKE ROUTINE FOR LEM 026163,000136: 026164,000137: 34,2005 67175 VLOAD SXA,2 026165,000138: # Page 627 026166,000139: 34,2006 00001 RATT 026167,000140: 34,2007 02777 RTX2 026168,000141: 34,2010 03642 STORE RTIG # RADIUS VECTOR AT IGNITION TIME 026169,000142: 34,2011 57456 UNIT VCOMP 026170,000143: 34,2012 27656 STOVL DELVSIN # ZRF/LV IN DELVSIN SCALED AT 2 026171,000144: 34,2013 00007 VATT # VELOCITY VECTOR AT TIG, SCALED 2(7) M/CS 026172,000145: 34,2014 03650 STORE VTIG 026173,000146: 34,2015 53435 VXV UNIT 026174,000147: 34,2016 03642 RTIG 026175,000148: 34,2017 66001 SETPD SXA,1 026176,000149: 34,2020 00001 0 026177,000150: 34,2021 02776 RTX1 026178,000151: 34,2022 47206 PUSH VXV # YRF/LV PDL 0 SCALED AT 2 026179,000152: 34,2023 03656 DELVSIN 026180,000153: 34,2024 63372 VSL1 PDVL 026181,000154: 34,2025 63315 PDVL PDVL # YRF/LV PDL 6 SCALED AT 2 026182,000155: 34,2026 03656 DELVSIN # ZRF/LV PDL 12D SCALED AT 2 026183,000156: 34,2027 03434 DELVSLV 026184,000157: 34,2030 76505 VXM VSL1 026185,000158: 34,2031 00001 0 026186,000159: 34,2032 03656 STORE DELVSIN # DELTAV IN INERT. COOR. SCALED TO B+7M/CS 026187,000160: 34,2033 77646 ABVAL 026188,000161: 34,2034 27664 STOVL DELVSAB # DELTA V MAG. 026189,000162: 34,2035 03642 RTIG # (FOR PERIAPO) 026190,000163: 34,2036 53315 PDVL VAD # VREQUIRED = VTIG + DELVSIN (FOR PERIAPO) 026191,000164: 34,2037 03650 VTIG 026192,000165: 34,2040 03656 DELVSIN 026193,000166: 34,2041 77624 CALL 026194,000167: 34,2042 46341 PERIAPO1 026195,000168: 34,2043 77624 CALL 026196,000169: 34,2044 46451 SHIFTR1 # RESCALE IF NEEDED 026197,000170: 34,2045 77624 CALL # LIMIT DISPLAY TO 9999.9 N. MI. 026198,000171: 34,2046 45636 MAXCHK 026199,000172: 34,2047 16321 STODL HPER # PERIGEE ALT 2(29) METERS FOR DISPLAY 026200,000173: 34,2050 00005 4D 026201,000174: 34,2051 77624 CALL 026202,000175: 34,2052 46451 SHIFTR1 # RESCALE IF NEEDED 026203,000176: 34,2053 77624 CALL # LIMIT DISPLAY TO 9999.9 N. MI. 026204,000177: 34,2054 45636 MAXCHK 026205,000178: 34,2055 36317 STCALL HAPO # APOGEE ALT 2(29) METERS FOR DISPLAY 026206,000179: 34,2056 03632 QTEMP 026207,000180: 026208,000181: End of include-file P30_P37.agc. Parent file is MAIN.agc