Source Code
![]() |
These source-code files were derived originally from the scan from MIT's Dibner Institute's
now-discontinued website titled "History of Recent Science and Technology". It is believed
that the original listing was preserved by AGC developer Don Eyles, copied/reduced by
AGC developer Hugh Blair-Smith, passed by AGC developer James Kernan to collector David Craig,
scanned by Gary Neff, and then passed to the Dibner Institute
where unfortunately the high-quality scans were reduced in legibility as part of the
online-presentation process, and the original scans discarded.
The source code was transcribed from
those images by Ron Burkey. The images from the Dibner Institute website, and unfortunately not
the discarded original high-quality scans, though with a few high-quality replacement scans
provided directly by Gary Neff, are now available
at the Virtual AGC project website.
Report any conversion errors to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 131 OF AGC PROGRAM LUMINARY BY NASA 2021112-091 17:53 DEC. 19, 1969Note that the date is the date of the printout, not the date of the program revision. |
026078,000002: ## Copyright: Public domain.
026079,000003: ## Filename: P30_P37.agc
026080,000004: ## Purpose: A section of Luminary 1C, revision 131.
026081,000005: ## It is part of the source code for the Lunar Module's (LM)
026082,000006: ## Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14.
026083,000007: ## This file is intended to be a faithful transcription, except
026084,000008: ## that the code format has been changed to conform to the
026085,000009: ## requirements of the yaYUL assembler rather than the
026086,000010: ## original YUL assembler.
026087,000011: ## Reference: pp. 624-627 of 1729.pdf.
026088,000012: ## Contact: Ron Burkey <info@sandroid.org>.
026089,000013: ## Website: www.ibiblio.org/apollo
026090,000014: ## Mod history: 05/19/03 RSB. Began transcribing.
026091,000015:
![]() |
Page 624 |
026093,000017: # PROGRAM DESCRIPTION P30 DATE 3-6-67
026094,000018: # MOD.1 BY RAMA AIYAWAR
026095,000019:
026096,000020: # FUNCTIONAL DESCRIPTIONS
026097,000021: # ACCEPT ASTRONAUT INPUTS OF TIG,DELV(LV)
026098,000022: # CALL IMU STATUS CHECK ROUTINE (R02)
026099,000023: # DISPLAY TIME TO GO, APOGEE, PERIGEE, DELV(MAG), MGA AT IGN
026100,000024: # REQUEST BURN PROGRAM
026101,000025:
026102,000026: # CALLING SEQUENCE VIA JOB FROM V37
026103,000027:
026104,000028: # EXIT VIA V37 CALL CR TO GOTOP00H (V34E)
026105,000029:
026106,000030: # SUBROUTINE CALLS -- FLAGUP, PHASCHNG, BANKCALL, ENDOFJOB, GOFLASH, GOFLASHR
026107,000031: # GOPERF3R, INTPRET, BLANKET, GOTOP00H, R02BOTH, S30.1,
026108,000032: # TIG/N35, MIDGIM, DISPMGA
026109,000033:
026110,000034: # ERASABLE INITIALIZATION -- STATE VECTOR
026111,000035:
026112,000036: # OUTPUT -- RINIT, VINIT, +MGA, VTIG, RTIG, DELVSIN, DELVSAB, DELVSLV, HAPO,
026113,000037: # HPER, TTOGO
026114,000038:
026115,000039: # DEBRIS -- A, L, MPAC, PUSHLIST
026116,000040:
026117,000041: 32,3000 BANK 32
026118,000042: 35,2000 SETLOC P30S
026119,000043: 35,2000 BANK
026120,000044: 35,2000 E4,1652 EBANK= +MGA
026121,000045: 35,2000 COUNT* $$/P30
026122,000046: 35,2000 05504 P30 TC UPFLAG # SET UPDATE FLAG
026123,000047: 35,2001 00027 ADRES UPDATFLG
026124,000048: 35,2002 05504 TC UPFLAG # SET TRACK FLAG
026125,000049: 35,2003 00031 ADRES TRACKFLG
026126,000050:
026127,000051: 35,2004 32032 P30N33 CAF V06N33 # T OF IGN
026128,000052: 35,2005 03621 TC VNP00H # RETURN ON PROCEED, P00H ON TERMINATE
026129,000053:
026130,000054: 35,2006 33636 CAF V06N81 # DISPLAY DELTA V (LV)
026131,000055: 35,2007 03621 TC VNP00H # REDISPLAY ON RECYCLE
026132,000056:
026133,000057: 35,2010 05516 TC DOWNFLAG # RESET UPDATE FLAG
026134,000058: 35,2011 00027 ADRES UPDATFLG
026135,000059: 35,2012 06042 TC INTPRET
026136,000060: 35,2013 77624 CALL
026137,000061: 35,2014 70000 S30.1
026138,000062: 35,2015 43014 SET SET
026139,000063: 35,2016 00470 UPDATFLG
026140,000064: 35,2017 01067 XDELVFLG
026141,000065: 35,2020 77776 EXIT
026142,000066: 35,2021 32033 PARAM30 CAF V06N42 # DISPLAY APOGEE,PERIGEE,DELTA V
![]() |
Page 625 |
026144,000068: 35,2022 03621 TC VNP00H
026145,000069:
026146,000070: 35,2023 06042 TC INTPRET
026147,000071: 35,2024 77614 SET
026148,000072: 35,2025 01071 FINALFLG
026149,000073: 35,2026 77624 REVN1645 CALL
026150,000074: 35,2027 73515 VN1645
026151,000075: 35,2030 77650 GOTO # COMES HERE ON RECYCLE RESPONSE
026152,000076: 35,2031 72026 REVN1645
026153,000077:
026154,000078: 35,2032 01441 V06N33 VN 0633
026155,000079: 35,2033 01452 V06N42 VN 0642
026156,000080:
![]() |
Page 626 |
026158,000082: # PROGRAM DESCRPTION S30.1 DATE 9NOV66
026159,000083: # MOD NO 1 LOG SECTION P30,P37
026160,000084: # MOD BY RAMA AIYAWAR **
026161,000085:
026162,000086: # FUNCTIONAL DESCRIPTION
026163,000087: # BASED ON STORED TARGET PARAMETERS (R OF IGNITION (RTIG), V OF
026164,000088: # IGNITION (VTIG), TIME OF IGNITION (TIG)), COMPUTE PERIGEE ALTITUDE
026165,000089: # APOGEE ALTITUDE AND DELTAV REQUIRED (DELVSIN).
026166,000090:
026167,000091: # CALLING SEQUENCE
026168,000092: # L CALL
026169,000093: # L+1 s30.1
026170,000094:
026171,000095: # NORMAL EXIT MODE
026172,000096: # AT L+2 OR CALLING SEQUENCE (GOTO L+2)
026173,000097:
026174,000098: # SUBROUTINES CALLED
026175,000099: # LEMPREC
026176,000100: # PERIAPO
026177,000101:
026178,000102: # ALARM OR ABORT EXIT MODES
026179,000103: # NONE
026180,000104:
026181,000105: # ERASABLE INITIALIZATION REQUIRED
026182,000106: # TIG TIME OF IGNITION DP B28CS
026183,000107: # DELVSLV SPECIFIED DELTA-V INLOCAL VERT.
026184,000108: # COORDS. OF ACTIVE VEHICLE AT
026185,000109: # TIME OF IGNITION VECTOR B+7 METERS/CS
026186,000110:
026187,000111: # OUTPUT
026188,000112: # RTIG POSITION AT TIG VECTOR B+29 METERS
026189,000113: # VTIG VELOCITY AT TIG VECTOR B+29 METERS/CS
026190,000114: # PDL 4D APOGEE ALTITUDE DP B+29 M, B+27 METERS.
026191,000115: # HAPO APOGEE ALTITUDE DP B+29 METERS
026192,000116: # PDL 8D PERIGEE ALTITUDE DP B+29 M, B+27 METERS.
026193,000117: # HPER PERIGEE ALTITUDE DP B+29 METERS
026194,000118: # DELVSIN SPECIFIED DELTA-V AT INTERTIAL
026195,000119: # COORD. OF ACTIVE VEHICLE AT
026196,000120: # TIME OF IGNITION VECTOR B+7 METERS/CS
026197,000121: # DELVSAB MAG. OF DELVSIN VECTOR B+7 METERS/CS
026198,000122:
026199,000123: # DEBRIS QTEMP TEMP.ERASABLE
026200,000124: # QPRET, MPAC
026201,000125: # PUSHLIST
026202,000126:
026203,000127: 34,2000 SETLOC P30S1
026204,000128: 34,2000 BANK
026205,000129:
026206,000130: 34,2000 COUNT* $$/S30S
026207,000131:
026208,000132: 34,2000 71220 S30.1 STQ DLOAD
026209,000133: 34,2001 03632 QTEMP
026210,000134: 34,2002 03442 TIG # TIME IGNITION SCALED AT 2(+28)CS
026211,000135: 34,2003 34041 STCALL TDEC1
026212,000136: 34,2004 27056 LEMPREC # ENCKE ROUTINE FOR LEM
026213,000137:
026214,000138: 34,2005 67175 VLOAD SXA,2
![]() |
Page 627 |
026216,000140: 34,2006 00001 RATT
026217,000141: 34,2007 02777 RTX2
026218,000142: 34,2010 03642 STORE RTIG # RADIUS VECTOR AT IGNITION TIME
026219,000143: 34,2011 57456 UNIT VCOMP
026220,000144: 34,2012 27656 STOVL DELVSIN # ZRF/LV IN DELVSIN SCALED AT 2
026221,000145: 34,2013 00007 VATT # VELOCITY VECTOR AT TIG, SCALED 2(7) M/CS
026222,000146: 34,2014 03650 STORE VTIG
026223,000147: 34,2015 53435 VXV UNIT
026224,000148: 34,2016 03642 RTIG
026225,000149: 34,2017 66001 SETPD SXA,1
026226,000150: 34,2020 00001 0
026227,000151: 34,2021 02776 RTX1
026228,000152: 34,2022 47206 PUSH VXV # YRF/LV PDL 0 SCALED AT 2
026229,000153: 34,2023 03656 DELVSIN
026230,000154: 34,2024 63372 VSL1 PDVL
026231,000155: 34,2025 63315 PDVL PDVL # YRF/LV PDL 6 SCALED AT 2
026232,000156: 34,2026 03656 DELVSIN # ZRF/LV PDL 12D SCALED AT 2
026233,000157: 34,2027 03434 DELVSLV
026234,000158: 34,2030 76505 VXM VSL1
026235,000159: 34,2031 00001 0
026236,000160: 34,2032 03656 STORE DELVSIN # DELTAV IN INERT. COOR. SCALED TO B+7M/CS
026237,000161: 34,2033 77646 ABVAL
026238,000162: 34,2034 27664 STOVL DELVSAB # DELTA V MAG.
026239,000163: 34,2035 03642 RTIG # (FOR PERIAPO)
026240,000164: 34,2036 53315 PDVL VAD # VREQUIRED = VTIG + DELVSIN (FOR PERIAPO)
026241,000165: 34,2037 03650 VTIG
026242,000166: 34,2040 03656 DELVSIN
026243,000167: 34,2041 77624 CALL
026244,000168: 34,2042 46341 PERIAPO1
026245,000169: 34,2043 77624 CALL
026246,000170: 34,2044 46451 SHIFTR1 # RESCALE IF NEEDED
026247,000171: 34,2045 77624 CALL # LIMIT DISPLAY TO 9999.9 N. MI.
026248,000172: 34,2046 45636 MAXCHK
026249,000173: 34,2047 16321 STODL HPER # PERIGEE ALT 2(29) METERS FOR DISPLAY
026250,000174: 34,2050 00005 4D
026251,000175: 34,2051 77624 CALL
026252,000176: 34,2052 46451 SHIFTR1 # RESCALE IF NEEDED
026253,000177: 34,2053 77624 CALL # LIMIT DISPLAY TO 9999.9 N. MI.
026254,000178: 34,2054 45636 MAXCHK
026255,000179: 34,2055 36317 STCALL HAPO # APOGEE ALT 2(29) METERS FOR DISPLAY
026256,000180: 34,2056 03632 QTEMP
026257,000181:
026258,000182:
End of include-file P30_P37.agc. Parent file is MAIN.agc