Source Code
This is a reconstructed version of Luminary 130, the initial AGC program released
in November 1969 for the Apollo 13 LM. Three more releases
followed before the flown revision was finally manufactured in February 1970.
This reconstruction was created from a previous transcription of the original listing of Luminary 131, combined with Luminary memo #129 which describes the small difference between the Luminary 130 and 131. The reconstructed source code was verified by matching memory-bank checksums to those listed for Luminary 130 in drawing 2021152G. In this source code, program comments from the original (Luminary 131) code are prefixed with '#', while those added later by the Virtual AGC project are prefixed with '##'. |
035833,000002: ## Copyright: Public domain.
035834,000003: ## Filename: P12.agc
035835,000004: ## Purpose: A section of the reconstructed source code for Luminary 130.
035836,000005: ## This was the original program released for the Apollo 13 LM,
035837,000006: ## although several more revisions would follow. It has been
035838,000007: ## reconstructed from a listing of Luminary 131, from which it
035839,000008: ## differs on only two lines in P70-P71. The difference is
035840,000009: ## described in detail in Luminary memo #129, which was used
035841,000010: ## to perform the reconstruction. This file is intended to be a
035842,000011: ## faithful reconstruction, except that the code format has been
035843,000012: ## changed to conform to the requirements of the yaYUL assembler
035844,000013: ## rather than the original YUL assembler.
035845,000014: ## Reference: pp. 831-835
035846,000015: ## Contact: Ron Burkey <info@sandroid.org>.
035847,000016: ## Website: www.ibiblio.org/apollo/index.html
035848,000017: ## Mod history: 05/26/03 RSB. Began transcribing.
035849,000018: ## 05/14/05 RSB Corrected website reference above.
035850,000019: ## 2017-01-06 RSB Page numbers now agree with those on the
035851,000020: ## original harcopy, as opposed to the PDF page
035852,000021: ## numbers in 1701.pdf.
035853,000022: ## 2017-01-28 RSB Proofed comment text using octopus/prooferComments
035854,000023: ## and fixed errors found.
035855,000024: ## 2017-02-26 RSB Proofed comment text using octopus/ProoferComments.
035856,000025: ## 2017-03-13 RSB Comment-text fixes noted in proofing Luminary 116.
035857,000026: ## 2017-08-26 MAS Fixed a comment-text error found while transcribing
035858,000027: ## Zerlina 56.
035859,000028: ## 2018-09-04 MAS Copied from Luminary 131 for Luminary 130.
035860,000029:
Page 831 |
035862,000031: 24,3700 BANK 24
035863,000032: 30,2000 SETLOC P12
035864,000033: 30,2000 BANK
035865,000034:
035866,000035: 30,2061 E7,1515 EBANK= DVCNTR
035867,000036: 30,2061 COUNT* $$/P12
035868,000037:
035869,000038: 30,2061 05353 P12LM TC PHASCHNG
035870,000039: 30,2062 04024 OCT 04024
035871,000040:
035872,000041: 30,2063 04616 TC BANKCALL
035873,000042: 30,2064 11233 CADR R02BOTH # CHECK THE STATUS OF THE IMU.
035874,000043: 30,2065 06011 TC CLRADMOD # INITIALIZE RADMODES FOR R29.
035875,000044: 30,2066 36000 CAF THRESH2 # INITIALIZE DVMON
035876,000045: 30,2067 55250 TS DVTHRUSH
035877,000046: 30,2070 34751 CAF FOUR
035878,000047: 30,2071 55515 TS DVCNTR
035879,000048:
035880,000049: 30,2072 34755 CA ZERO
035881,000050: 30,2073 55462 TS TRKMKCNT # SHOW THAT R29 DOWNLINK DATA IS NOT READY
035882,000051:
035883,000052: 30,2074 33022 CAF V06N33A
035884,000053: 30,2075 04616 TC BANKCALL # FLASH TIG
035885,000054: 30,2076 20477 CADR GOFLASH
035886,000055: 30,2077 16001 TCF GOTOPOOH
035887,000056: 30,2100 12102 TCF +2 # PROCEED
035888,000057: 30,2101 12074 TCF -5 # ENTER
035889,000058:
035890,000059: 30,2102 05353 TC PHASCHNG
035891,000060: 30,2103 04024 OCT 04024
035892,000061:
035893,000062: 30,2104 06042 TC INTPRET
035894,000063: 30,2105 43014 SET SET
035895,000064: 30,2106 03067 MUNFLAG
035896,000065: 30,2107 06464 ACC4-2FL
035897,000066: 30,2110 43014 SET CLEAR
035898,000067: 30,2111 00075 R10FLAG
035899,000068: 30,2112 00270 RNDVZFLG
035900,000069: 30,2113 43014 SET SET
035901,000070: 30,2114 04464 FLPI
035902,000071: 30,2115 04461 FLVR
035903,000072: 30,2116 77624 CALL # INITIALIZE WM AND /LAND/
035904,000073: 30,2117 71343 GUIDINIT
035905,000074: 30,2120 77624 CALL
035906,000075: 30,2121 60251 P12INIT
035907,000076: 30,2122 77745 P12LMB DLOAD
035908,000077: 30,2123 25740 (TGO)A # SET TGO TO AN INITIAL NOMINAL VALUE.
035909,000078: 30,2124 17517 STODL TGO
Page 832 |
035911,000080: 30,2125 03442 TIG
035912,000081: 30,2126 34041 STCALL TDEC1
035913,000082: 30,2127 27056 LEMPREC # ROTATE THE STATE VECTORS TO THE
035914,000083: 30,2130 64375 VLOAD MXV # IGNITION TIME.
035915,000084: 30,2131 00007 VATT
035916,000085: 30,2132 01734 REFSMMAT
035917,000086: 30,2133 77772 VSL1
035918,000087: 30,2134 27601 STOVL V1S # COMPUTE V1S = VEL(TIG)*2(-7) M/CS.
035919,000088: 30,2135 00001 RATT
035920,000089: 30,2136 52521 MXV VSL6
035921,000090: 30,2137 01734 REFSMMAT
035922,000091: 30,2140 37521 STCALL R # COMPUTE R = POS(TIG)*2(-24) M.
035923,000092: 30,2141 67067 MUNGRAV # COMPUTE GDT1/2(TIG)*2(-7)M/CS.
035924,000093: 30,2142 53575 VLOAD UNIT
035925,000094: 30,2143 03521 R
035926,000095: 30,2144 37537 STCALL UNIT/R/ # COMPUTE UNIT/R/ FOR YCOMP.
035927,000096: 30,2145 57313 YCOMP
035928,000097: 30,2146 57461 SR DCOMP
035929,000098: 30,2147 20606 5D
035930,000099: 30,2150 17643 STODL XRANGE # INITIALIZE XRANGE FOR NOUN 76.
035931,000100: 30,2151 31367 VINJNOM
035932,000101: 30,2152 16277 STODL ZDOTD
035933,000102: 30,2153 31371 RDOTDNOM
035934,000103: 30,2154 02273 STORE RDOTD
035935,000104: 30,2155 77776 EXIT
035936,000105:
035937,000106: 30,2156 05353 TC PHASCHNG
035938,000107: 30,2157 04024 OCT 04024
035939,000108:
035940,000109: 30,2160 33021 NEWLOAD CAF V06N76 # FLASH CROSS-RANGE AND APOLUNE VALUES.
035941,000110: 30,2161 04616 TC BANKCALL
035942,000111: 30,2162 20477 CADR GOFLASH
035943,000112: 30,2163 16001 TCF GOTOPOOH
035944,000113: 30,2164 12166 TCF +2 # PROCEED
035945,000114: 30,2165 12160 TCF NEWLOAD # ENTER NEW DATA.
035946,000115:
035947,000116: 30,2166 32314 CAF P12ADRES
035948,000117: 30,2167 55455 TS WHICH
035949,000118:
035950,000119: 30,2170 05353 TC PHASCHNG
035951,000120: 30,2171 04024 OCT 04024
035952,000121:
035953,000122: 30,2172 06042 TC INTPRET
035954,000123: 30,2173 54345 DLOAD SL
035955,000124: 30,2174 03643 XRANGE
035956,000125: 30,2175 20206 5D
035957,000126: 30,2176 77615 DAD
035958,000127: 30,2177 02335 Y
035959,000128: 30,2200 27633 STOVL YCO
035960,000129: 30,2201 03537 UNIT/R/
Page 833 |
035962,000131: 30,2202 53361 VXSC VAD
035963,000132: 30,2203 31365 49FPS
035964,000133: 30,2204 03601 V1S
035965,000134: 30,2205 03527 STORE V # V(TIPOVER) = V(IGN) + 57FPS (UNIT/R/)
035966,000135: 30,2206 72441 DOT SL1
035967,000136: 30,2207 03537 UNIT/R/
035968,000137: 30,2210 27474 STOVL RDOT # RDOT * 2(-7)
035969,000138: 30,2211 03537 UNIT/R/
035970,000139: 30,2212 53435 VXV UNIT
035971,000140: 30,2213 03720 QAXIS
035972,000141: 30,2214 37726 STCALL ZAXIS1
035973,000142: 30,2215 60315 ASCENT
035974,000143: 30,2216 77745 P12RET DLOAD
035975,000144: 30,2217 02361 ATP # ATP(2)*2(18)
035976,000145: 30,2220 65316 DSQ PDDL
035977,000146: 30,2221 02355 ATY # ATY(2)*2(18)
035978,000147: 30,2222 43316 DSQ DAD
035979,000148: 30,2223 75454 BZE SQRT
035980,000149: 30,2224 60230 YAWDUN
035981,000150: 30,2225 55352 SL1 BDDV
035982,000151: 30,2226 02355 ATY
035983,000152: 30,2227 77736 ARCSIN
035984,000153: 30,2230 26363 YAWDUN STOVL YAW
035985,000154: 30,2231 03253 UNFC/2
035986,000155: 30,2232 50256 UNIT DOT
035987,000156: 30,2233 03537 UNIT/R/
035988,000157: 30,2234 65552 SL1 ARCCOS
035989,000158: 30,2235 77676 DCOMP
035990,000159: 30,2236 02365 STORE PITCH
035991,000160: 30,2237 77776 EXIT
035992,000161: 30,2240 05353 TC PHASCHNG
035993,000162: 30,2241 04024 OCT 04024
035994,000163:
035995,000164: 30,2242 00004 INHINT
035996,000165: 30,2243 04674 TC IBNKCALL
035997,000166: 30,2244 40143 CADR PFLITEDB
035998,000167: 30,2245 05516 TC DOWNFLAG
035999,000168: 30,2246 00213 ADRES FLPI
036000,000169:
036001,000170: 30,2247 04635 TC POSTJUMP
036002,000171: 30,2250 74130 CADR BURNBABY
036003,000172:
036004,000173: 30,2251 77745 P12INIT DLOAD # INITIALIZE ENGINE DATA. USED FOR P12 AND
036005,000174: 30,2252 16013 (1/DV)A # P71.
036006,000175: 30,2253 03641 STORE 1/DV3
036007,000176: 30,2254 03637 STORE 1/DV2
036008,000177: 30,2255 17635 STODL 1/DV1
036009,000178: 30,2256 16017 (AT)A
036010,000179: 30,2257 16263 STODL AT
036011,000180: 30,2260 16021 (TBUP)A
Page 834 |
036013,000182: 30,2261 16271 STODL TBUP
036014,000183: 30,2262 34013 ATDECAY
036015,000184: 30,2263 54276 DCOMP SL
036016,000185: 30,2264 20214 11D
036017,000186: 30,2265 02267 STORE TTO
036018,000187: 30,2266 57535 SLOAD DCOMP
036019,000188: 30,2267 26001 APSVEX
036020,000189: 30,2270 77702 SR2
036021,000190: 30,2271 02265 STORE VE
036022,000191: 30,2272 43414 BOFF RVQ
036023,000192: 30,2273 04747 FLAP
036024,000193: 30,2274 60275 COMMINIT
036025,000194: 30,2275 43345 COMMINIT DLOAD DAD # INITIALIZE TARGET DATA. USED BY P12, P70
036026,000195: 30,2276 25736 HINJECT # AND P71 IF IT DOES NOT FOLLOW P70.
036027,000196: 30,2277 02333 /LAND/
036028,000197: 30,2300 17631 STODL RCO
036029,000198: 30,2301 06524 HI6ZEROS
036030,000199: 30,2302 03654 STORE TXO
036031,000200: 30,2303 03633 STORE YCO
036032,000201: 30,2304 26275 STOVL YDOTD
036033,000202: 30,2305 01563 VRECTCSM
036034,000203: 30,2306 64235 VXV MXV
036035,000204: 30,2307 01555 RRECTCSM
036036,000205: 30,2310 01734 REFSMMAT
036037,000206: 30,2311 77656 UNIT
036038,000207: 30,2312 03720 STORE QAXIS
036039,000208: 30,2313 77616 RVQ
036040,000209:
036041,000210: 30,2314 02024 P12ADRES REMADR P12TABLE
036042,000211:
036043,000212: 34,2000 SETLOC ASENT8
036044,000213: 34,2000 BANK
036045,000214: 34,3343 COUNT* $$/P12
036046,000215:
036047,000216: 34,3343 40220 GUIDINIT STQ SETPD
036048,000217: 34,3344 01163 TEMPR60
036049,000218: 34,3345 00001 0D
036050,000219: 34,3346 41575 VLOAD PUSH
036051,000220: 34,3347 06516 UNITZ
036052,000221: 34,3350 41434 RTB PUSH
036053,000222: 34,3351 21574 LOADTIME
036054,000223: 34,3352 77624 CALL
036055,000224: 34,3353 55716 RP-TO-R
036056,000225: 34,3354 74321 MXV VXSC
036057,000226: 34,3355 01734 REFSMMAT
036058,000227: 34,3356 16027 MOONRATE
036059,000228: 34,3357 26325 STOVL WM
036060,000229: 34,3360 02023 RLS
036061,000230: 34,3361 52446 ABVAL SL3
036062,000231: 34,3362 36333 STCALL /LAND/
Page 835 |
036064,000233: 34,3363 01163 TEMPR60
036065,000234:
036066,000235: 34,3364 00046 07374 49FPS 2DEC .149352 B-6 # EXPECTED RDOT AT TIPOVER
036067,000236: 34,3366 04145 15527 VINJNOM 2DEC 16.7924 B-7 # 5509.5 FPS(APO=30NM WITH RDOT=19.5FPS)
036068,000237: 34,3370 00007 23346 RDOTDNOM 2DEC .059436 B-7 # 19.5 FPS
036069,000238:
036070,000239:
End of include-file P12.agc. Parent file is MAIN.agc