Source Code
These source code files are an attempted reconstruction of Sundance revision 306, the Apollo 9
LM (Lunar Module) AGC (Apollo Guidance Computer) flight software, created from binary dumps of
original core rope program modules, as follows:
|
013815,000002: ## Copyright: Public domain.
013816,000003: ## Filename: IMU_PERFORMANCE_TESTS_2.agc
013817,000004: ## Purpose: A section of an attempt to reconstruct Sundance revision 306
013818,000005: ## as closely as possible with available information. Sundance
013819,000006: ## 306 is the source code for the Lunar Module's (LM) Apollo
013820,000007: ## Guidance Computer (AGC) for Apollo 9. This program was created
013821,000008: ## using the mixed-revision SundanceXXX as a starting point, and
013822,000009: ## pulling back features from Luminary 69 believed to have been
013823,000010: ## added based on memos, checklists, observed address changes,
013824,000011: ## or the Sundance GSOPs.
013825,000012: ## Assembler: yaYUL
013826,000013: ## Contact: Ron Burkey <info@sandroid.org>.
013827,000014: ## Website: www.ibiblio.org/apollo/index.html
013828,000015: ## Mod history: 2020-07-24 MAS Created from SundanceXXX.
013829,000016:
013830,000017:
013831,000018:
013832,000019: # NAME- IMU PERFORMANCE TESTS 2
013833,000020:
013834,000021: # DATE- MARCH 20, 1967
013835,000022:
013836,000023: # BY- SYSTEM TEST GROUP 864-6900 EXT. 1274
013837,000024:
013838,000025: # MODNO.- ZERO
013839,000026:
013840,000027: # FUNCTIONAL DESCRIPTION
013841,000028:
013842,000029: # POSITIONING ROUTINES FOR THE IMU PERFORMANCE TESTS AS WELL AS SOME OF
013843,000030: # THE TESTS THEMSELVES. FOR A DESCRIPTION OF THESE SUBROUTINES AND THE
013844,000031: # OPERATING PROCEDURES (TYPICALLY) SEE STG MEMO 685.THEORETICAL REF.E-1973
013845,000032:
013846,000033: 33,2000 BANK 33
013847,000034: 37,2000 SETLOC IMU2
013848,000035: 37,2000 BANK
013849,000036: 37,2000 E5,1416 EBANK= POSITON
013850,000037: 37,2000 COUNT* $$/P07
013851,000038:
013852,000039: 37,2000 05361 REDO TC NEWMODEX
013853,000040: 37,2001 00007 MM 07 B-14
013854,000041:
013855,000042: 37,2002 02322 GEOIMUTT TC IMUZERR
013856,000043: 37,2003 35030 IMUBACK CA ZERO
013857,000044: 37,2004 55414 TS NDXCTR
013858,000045: 37,2005 55440 TS TORQNDX
013859,000046: 37,2006 55441 TS TORQNDX +1
013860,000047: 37,2007 34373 NBPOSPL CA DEC17
013861,000048: 37,2010 55571 TS ZERONDX
013862,000049: 37,2011 32473 CA XNBADR
013863,000050: 37,2012 02364 TC ZEROING
013864,000051: 37,2013 35011 CA HALF
013865,000052: 37,2014 55664 TS XNB
013866,000053: 37,2015 06014 GUESS TC INTPRET
013867,000054: 37,2016 62545 LATAZCHK DLOAD SL2
013868,000055: 37,2017 02403 LATITUDE
013869,000056: 37,2020 15050 STODL DSPTEM1 +1
013870,000057: 37,2021 02401 AZIMUTH
013871,000058: 37,2022 77434 RTB EXIT
013872,000059: 37,2023 21512 1STO2S
013873,000060: 37,2024 56154 XCH MPAC
013874,000061: 37,2025 55046 TS DSPTEM1
013875,000062: 37,2026 32470 CAF VN0641
013876,000063: 37,2027 04655 TC BANKCALL
013877,000064: 37,2030 20406 CADR GOFLASH
013878,000065: 37,2031 02265 TC ENDTEST1
013879,000066: 37,2032 02034 TC +2
013880,000067: 37,2033 02026 TC -5
013881,000068: 37,2034 06014 TC INTPRET
013882,000069: 37,2035 47135 SLOAD RTB
013883,000070: 37,2036 01047 DSPTEM1
013884,000071: 37,2037 21457 CDULOGIC
013885,000072: 37,2040 02401 STORE AZIMUTH
013886,000073: 37,2041 60535 SLOAD SR2
013887,000074: 37,2042 01050 DSPTEM1 +1
013888,000075: 37,2043 02403 STORE LATITUDE
013889,000076: 37,2044 57546 COS DCOMP
013890,000077: 37,2045 77752 SL1
013891,000078: 37,2046 16437 STODL WANGI
013892,000079: 37,2047 02403 LATITUDE
013893,000080: 37,2050 72556 SIN SL1
013894,000081: 37,2051 16435 STODL WANGO
013895,000082: 37,2052 02401 AZIMUTH
013896,000083: 37,2053 73406 PUSH SIN
013897,000084: 37,2054 02675 STORE YNB +2
013898,000085: 37,2055 16705 STODL ZNB +4
013899,000086: 37,2056 77746 COS
013900,000087: 37,2057 02677 STORE YNB +4
013901,000088: 37,2060 77676 DCOMP
013902,000089: 37,2061 36703 POSGMBL STCALL ZNB +2
013903,000090: 37,2062 47147 CALCGA
013904,000091: 37,2063 77776 EXIT
013905,000092: 37,2064 04655 TC BANKCALL
013906,000093: 37,2065 16711 CADR IMUCOARS
013907,000094: 37,2066 35011 CAF BIT14 # IF BIT14 SET, GIMBAL LOCK
013908,000095: 37,2067 70077 MASK FLAGWRD3
013909,000096: 37,2070 00006 EXTEND
013910,000097: 37,2071 12073 BZF +2
013911,000098: 37,2072 25414 INCR NDXCTR # +1 IF IN GIMBAL LOCK, OTHERWISE 0
013912,000099: 37,2073 05600 TC DOWNFLAG
013913,000100: 37,2074 00056 ADRES GLOKFAIL # RESET GIMBAL LOCK FLAG
013914,000101: 37,2075 02312 TC IMUSLLLG
013915,000102: 37,2076 11414 CCS NDXCTR # IF ONE GO AND DO A PIPA TEST ONLY
013916,000103: 37,2077 02123 TC PIPACHK # ALIGN AND MEASURE VERTICAL PIPA RATE
013917,000104: 37,2100 02315 TC FINIMUDD
013918,000105: 37,2101 00006 EXTEND
013919,000106: 37,2102 31575 DCA PERFDLAY
013920,000107: 37,2103 05347 TC LONGCALL # DELAY WHILE SUSPENSION STABILIZES
013921,000108: 37,2104 E5,1416 EBANK= POSITON
013922,000109: 37,2104 02110 76065 2CADR GOESTIMS
013923,000110:
013924,000111: 37,2106 32113 CA ESTICADR
013925,000112: 37,2107 05203 TC JOBSLEEP
013926,000113: 37,2110 32113 GOESTIMS CA ESTICADR
013927,000114: 37,2111 05207 TC JOBWAKE
013928,000115: 37,2112 05331 TC TASKOVER
013929,000116: 37,2113 76477 ESTICADR CADR ESTIMS
013930,000117: 37,2114 35030 TORQUE CA ZERO
013931,000118: 37,2115 55051 TS DSPTEM2
013932,000119: 37,2116 31504 CA DRIFTI
013933,000120: 37,2117 55052 TS DSPTEM2 +1
013934,000121: 37,2120 51416 INDEX POSITON
013935,000122: 37,2121 55420 TS SOUTHDR -1
013936,000123: 37,2122 02454 TC SHOW
013937,000124:
013938,000125: 37,2123 51414 PIPACHK INDEX NDXCTR # PIPA TEST
013939,000126: 37,2124 02125 TC +1
013940,000127: 37,2125 02444 TC EARTHR*
013941,000128: 37,2126 34373 CA DEC17 # ALLOW PIP COUNTER TO OVERFLOW 17 TIMES
013942,000129: 37,2127 55476 TS DATAPL +4 # IN THE ALLOTED TIME INTERVAL
013943,000130: 37,2130 32471 CA DEC58
013944,000131: 37,2131 55412 TS LENGTHOT
013945,000132: 37,2132 35026 CA ONE
013946,000133: 37,2133 55537 TS RESULTCT
013947,000134: 37,2134 35030 CA ZERO
013948,000135: 37,2135 51415 INDEX PIPINDEX
013949,000136: 37,2136 54037 TS PIPAX
013950,000137: 37,2137 55472 TS DATAPL
013951,000138: 37,2140 02327 TC CHECKG
013952,000139: 37,2141 00004 INHINT
013953,000140: 37,2142 35025 CAF TWO
013954,000141: 37,2143 05243 TC TWIDDLE
013955,000142: 37,2144 E5,1642 EBANK= XSM
013956,000143: 37,2144 02146 ADRES PIPATASK
013957,000144: 37,2145 05225 TC ENDOFJOB
013958,000145:
013959,000146: 37,2146 00006 PIPATASK EXTEND
013960,000147: 37,2147 27412 DIM LENGTHOT
013961,000148: 37,2150 31412 CA LENGTHOT
013962,000149: 37,2151 00006 EXTEND
013963,000150: 37,2152 62156 BZMF STARTPIP
013964,000151: 37,2153 35015 CAF BIT10
013965,000152: 37,2154 05243 TC TWIDDLE
013966,000153: 37,2155 E5,1642 EBANK= XSM
013967,000154: 37,2155 02146 ADRES PIPATASK
013968,000155: 37,2156 35011 STARTPIP CAF PRIO20
013969,000156: 37,2157 05155 TC FINDVAC
013970,000157: 37,2160 E5,1642 EBANK= XSM
013971,000158: 37,2160 02163 76065 2CADR PIPJOBB
013972,000159:
013973,000160: 37,2162 05331 TC TASKOVER
013974,000161:
013975,000162: 37,2163 51414 PIPJOBB INDEX NDXCTR
013976,000163: 37,2164 02165 TC +1
013977,000164: 37,2165 02444 TC EARTHR*
013978,000165: 37,2166 31412 CA LENGTHOT
013979,000166: 37,2167 00006 EXTEND
013980,000167: 37,2170 62172 BZMF +2
013981,000168: 37,2171 05225 TC ENDOFJOB
013982,000169:
013983,000170: 37,2172 35031 CA FIVE
013984,000171: 37,2173 55537 TS RESULTCT
013985,000172: 37,2174 02327 TC CHECKG
013986,000173: 37,2175 11473 CCS DATAPL +1
013987,000174: 37,2176 02202 TC +4
013988,000175: 37,2177 05726 TC CCSHOLE
013989,000176: 37,2200 41476 CS DATAPL +4
013990,000177: 37,2201 55476 TS DATAPL +4
013991,000178: 37,2202 00006 EXTEND
013992,000179: 37,2203 41473 DCS DATAPL
013993,000180: 37,2204 21477 DAS DATAPL +4
013994,000181:
013995,000182: 37,2205 06014 TC INTPRET
013996,000183: 37,2206 45345 DLOAD DSU
013997,000184: 37,2207 02501 DATAPL +6
013998,000185: 37,2210 02475 DATAPL +2
013999,000186: 37,2211 45044 BPL CALL
014000,000187: 37,2212 76214 AINGOTN
014001,000188: 37,2213 76272 OVERFFIX
014002,000189: 37,2214 56325 AINGOTN PDDL DDV
014003,000190: 37,2215 02477 DATAPL +4
014004,000191: 37,2216 47075 DMPR RTB
014005,000192: 37,2217 37042 DEC585 # DEC585 HAS BEEN REDEFINED FOR LEM
014006,000193: 37,2220 21510 SGNAGREE
014007,000194: 37,2221 01052 STORE DSPTEM2
014008,000195: 37,2222 77776 EXIT
014009,000196: 37,2223 11414 CCS NDXCTR
014010,000197: 37,2224 02276 TC COAALIGN # TAKE PLATFORM OUT OF GIMBAL LOCK
014011,000198: 37,2225 02454 TC SHOW
014012,000199: 37,2226 32466 VERTDRFT CA 3990DEC # ABOUT 1 HOUR VERTICAL DRIFT TEST
014013,000200: 37,2227 55412 TS LENGTHOT
014014,000201: 37,2230 51416 INDEX POSITON
014015,000202: 37,2231 41417 CS SOUTHDR -2
014016,000203: 37,2232 55442 TS DRIFTT
014017,000204: 37,2233 11415 CCS PIPINDEX # OFFSET PLATFORM TO MISS PIP DEAD-ZONES
014018,000205: 37,2234 12242 TCF PON4 # Z UP IN POS 4
014019,000206: 37,2235 45022 PON2 CS BIT5 # X UP
014020,000207: 37,2236 27565 ADS ERCOMP +2
014021,000208: 37,2237 35022 CA BIT5
014022,000209: 37,2240 27567 ADS ERCOMP +4
014023,000210: 37,2241 12246 TCF PON
014024,000211: 37,2242 45022 PON4 CS BIT5
014025,000212: 37,2243 27565 ADS ERCOMP +2
014026,000213: 37,2244 35022 CA BIT5
014027,000214: 37,2245 27563 ADS ERCOMP
014028,000215: 37,2246 02444 PON TC EARTHR*
014029,000216: 37,2247 35030 CA ZERO # ALLOW ONLY SOUTH GYRO EARTH RATE COMPENS
014030,000217: 37,2250 55404 TS ERVECTOR
014031,000218: 37,2251 55405 TS ERVECTOR +1
014032,000219: 37,2252 35006 GUESS1 CAF POSMAX
014033,000220: 37,2253 55440 TS TORQNDX
014034,000221: 37,2254 55441 TS TORQNDX +1
014035,000222: 37,2255 30032 CA CDUX
014036,000223: 37,2256 55413 TS LOSVEC
014037,000224: 37,2257 02477 TC ESTIMS
014038,000225: 37,2260 31502 VALMIS CA DRIFTO
014039,000226: 37,2261 55052 TS DSPTEM2 +1
014040,000227: 37,2262 35030 CA ZERO
014041,000228: 37,2263 55051 TS DSPTEM2
014042,000229: 37,2264 02454 TC SHOW
014043,000230:
014044,000231: 37,2265 05600 ENDTEST1 TC DOWNFLAG
014045,000232: 37,2266 00007 ADRES IMUSE
014046,000233: 37,2267 45030 CS ZERO
014047,000234: 37,2270 05364 TC NEWMODEA
014048,000235: 37,2271 05564 TC ENDEXT
014049,000236:
014050,000237: 37,2272 43215 OVERFFIX DAD DAD
014051,000238: 37,2273 06241 DPPOSMAX
014052,000239: 37,2274 37050 ONEDPP
014053,000240: 37,2275 77616 RVQ
014054,000241:
014055,000242: 37,2276 00006 COAALIGN EXTEND # COARSE ALIGN SUBROUTINE
014056,000243: 37,2277 23571 QXCH ZERONDX
014057,000244: 37,2300 35030 CA ZERO
014058,000245: 37,2301 55206 TS THETAD
014059,000246: 37,2302 55207 TS THETAD +1
014060,000247: 37,2303 55210 TS THETAD +2
014061,000248: 37,2304 04655 TC BANKCALL
014062,000249: 37,2305 16711 CADR IMUCOARS
014063,000250: 37,2306 04655 ALIGNCOA TC BANKCALL
014064,000251: 37,2307 17625 CADR IMUSTALL
014065,000252: 37,2310 03036 TC SOMERR2
014066,000253: 37,2311 01571 TC ZERONDX
014067,000254:
014068,000255: 37,2312 00006 IMUSLLLG EXTEND
014069,000256: 37,2313 23571 QXCH ZERONDX
014070,000257: 37,2314 02306 TC ALIGNCOA
014071,000258:
014072,000259: 37,2315 00006 FINIMUDD EXTEND
014073,000260: 37,2316 23571 QXCH ZERONDX
014074,000261: 37,2317 04655 TC BANKCALL
014075,000262: 37,2320 17121 CADR IMUFINE
014076,000263: 37,2321 02306 TC ALIGNCOA
014077,000264:
014078,000265: 37,2322 00006 IMUZERR EXTEND
014079,000266: 37,2323 23571 QXCH ZERONDX
014080,000267: 37,2324 04655 TC BANKCALL
014081,000268: 37,2325 16622 CADR IMUZERO
014082,000269: 37,2326 02306 TC ALIGNCOA
014083,000270:
014084,000271: 37,2327 00006 CHECKG EXTEND # PIP PULSE CATCHING ROUTINE
014085,000272: 37,2330 23417 QXCH QPLACE
014086,000273: 37,2331 02337 TC +6
014087,000274: 37,2332 00003 CHECKG1 RELINT
014088,000275: 37,2333 30067 CA NEWJOB
014089,000276: 37,2334 00006 EXTEND
014090,000277: 37,2335 62343 BZMF +6
014091,000278: 37,2336 05172 TC CHANG1
014092,000279: 37,2337 00004 INHINT
014093,000280: 37,2340 51415 INDEX PIPINDEX
014094,000281: 37,2341 40037 CS PIPAX
014095,000282: 37,2342 55571 TS ZERONDX
014096,000283: 37,2343 00004 INHINT
014097,000284: 37,2344 51415 INDEX PIPINDEX
014098,000285: 37,2345 30037 CA PIPAX
014099,000286: 37,2346 61571 AD ZERONDX
014100,000287: 37,2347 00006 EXTEND
014101,000288: 37,2350 12332 BZF CHECKG1
014102,000289: 37,2351 51415 INDEX PIPINDEX
014103,000290: 37,2352 30037 CA PIPAX
014104,000291: 37,2353 51537 INDEX RESULTCT
014105,000292: 37,2354 55472 TS DATAPL
014106,000293: 37,2355 04114 TC FINETIME
014107,000294: 37,2356 51537 INDEX RESULTCT
014108,000295: 37,2357 55473 TS DATAPL +1
014109,000296: 37,2360 51537 INDEX RESULTCT
014110,000297: 37,2361 23474 LXCH DATAPL +2
014111,000298: 37,2362 00003 RELINT
014112,000299: 37,2363 01417 ENDCHKG TC QPLACE
014113,000300:
014114,000301: 37,2364 54001 ZEROING TS L
014115,000302: 37,2365 12367 TCF +2
014116,000303: 37,2366 55571 ZEROING1 TS ZERONDX
014117,000304: 37,2367 35030 CAF ZERO
014118,000305: 37,2370 50001 INDEX L
014119,000306: 37,2371 54000 TS 0
014120,000307: 37,2372 24001 INCR L
014121,000308: 37,2373 11571 CCS ZERONDX
014122,000309: 37,2374 12366 TCF ZEROING1
014123,000310: 37,2375 00002 TC Q
014124,000311:
014125,000312: 37,2376 65345 ERTHRVSE DLOAD PDDL
014126,000313: 37,2377 37043 SCHZEROS # PD24 = (SIN -COS 0)(OMEG/MS)
014127,000314: 37,2400 02403 LATITUDE
014128,000315: 37,2401 57546 COS DCOMP
014129,000316: 37,2402 73525 PDDL SIN
014130,000317: 37,2403 02403 LATITUDE
014131,000318: 37,2404 74266 VDEF VXSC
014132,000319: 37,2405 36476 OMEG/MS
014133,000320: 37,2406 02405 STORE ERVECTOR
014134,000321: 37,2407 77634 RTB
014135,000322: 37,2410 21454 LOADTIME
014136,000323: 37,2411 26433 STOVL TMARK
014137,000324: 37,2412 37043 SCHZEROS
014138,000325: 37,2413 02564 STORE ERCOMP
014139,000326: 37,2414 77616 RVQ
014140,000327:
014141,000328: 37,2415 47020 EARTHR ITA RTB
014142,000329: 37,2416 00051 S2
014143,000330: 37,2417 21454 LOADTIME
014144,000331: 37,2420 02431 STORE TEMPTIME
014145,000332: 37,2421 51025 DSU BPL
014146,000333: 37,2422 02433 TMARK
014147,000334: 37,2423 76426 ERTHR
014148,000335: 37,2424 77624 CALL
014149,000336: 37,2425 76272 OVERFFIX
014150,000337: 37,2426 74261 ERTHR SL VXSC
014151,000338: 37,2427 20212 9D
014152,000339: 37,2430 02405 ERVECTOR
014153,000340: 37,2431 53321 MXV VAD
014154,000341: 37,2432 02643 XSM
014155,000342: 37,2433 02564 ERCOMP
014156,000343: 37,2434 16564 STODL ERCOMP
014157,000344: 37,2435 02431 TEMPTIME
014158,000345: 37,2436 02433 STORE TMARK
014159,000346: 37,2437 47170 AXT,1 RTB
014160,000347: 37,2440 02563 ECADR ERCOMP
014161,000348: 37,2441 21617 PULSEIMU
014162,000349: 37,2442 77650 GOTO
014163,000350: 37,2443 00051 S2
014164,000351:
014165,000352: 37,2444 00006 EARTHR* EXTEND
014166,000353: 37,2445 23420 QXCH QPLACES
014167,000354: 37,2446 06014 TC INTPRET
014168,000355: 37,2447 77624 CALL
014169,000356: 37,2450 76415 EARTHR
014170,000357: 37,2451 77776 EXIT
014171,000358: 37,2452 02312 TC IMUSLLLG
014172,000359: 37,2453 01420 TC QPLACES
014173,000360:
014174,000361: 37,2454 00006 SHOW EXTEND
014175,000362: 37,2455 23417 QXCH QPLACE
014176,000363: 37,2456 31416 SHOW1 CA POSITON
014177,000364: 37,2457 55053 TS DSPTEM2 +2
014178,000365: 37,2460 32467 CA VB06N98
014179,000366: 37,2461 04655 TC BANKCALL
014180,000367: 37,2462 20406 CADR GOFLASH
014181,000368: 37,2463 02265 TC ENDTEST1 # V 34
014182,000369: 37,2464 01417 TC QPLACE # V33
014183,000370: 37,2465 12456 TCF SHOW1
014184,000371:
014185,000372: 37,2466 07626 3990DEC DEC 3990 B-14
014186,000373: 37,2467 01542 VB06N98 VN 0698
014187,000374: 37,2470 01451 VN0641 VN 0641
014188,000375: 37,2471 4373 DEC17 = ND1
014189,000376: 37,2471 00072 DEC58 DEC 58 B-14
014190,000377: 37,2472 02737 OGCPL ECADR OGC
014191,000378: 37,2473 5047 1SECX = 1SEC
014192,000379: 37,2473 01664 XNBADR GENADR XNB
014193,000380: 37,2474 01642 XSMADR GENADR XSM
014194,000381: 37,2475 07623 26552 OMEG/MS 2DEC .24339048
014195,000382:
014196,000383:
014197,000384: 4114 BLOCK 2
014198,000385: 4114 COUNT* $$/P07
014199,000386: 4114 00004 FINETIME INHINT # RETURNS WITH INTERRUPT INHIBITED
014200,000387: 4115 00006 EXTEND
014201,000388: 4116 00004 READ LOSCALAR
014202,000389: 4117 54001 TS L
014203,000390: 4120 00006 EXTEND
014204,000391: 4121 06004 RXOR LOSCALAR
014205,000392: 4122 00006 EXTEND
014206,000393: 4123 14127 BZF +4
014207,000394: 4124 00006 EXTEND
014208,000395: 4125 00004 READ LOSCALAR
014209,000396: 4126 54001 TS L
014210,000397: 4127 45006 +4 CS POSMAX
014211,000398: 4130 60001 AD L
014212,000399: 4131 00006 EXTEND
014213,000400: 4132 14115 BZF FINETIME +1
014214,000401: 4133 00006 EXTEND
014215,000402: 4134 00003 READ HISCALAR
014216,000403: 4135 00002 TC Q
014217,000404:
End of include-file IMU_PERFORMANCE_TESTS_2.agc. Parent file is MAIN.agc