Source Code
|
These source-code files are part of a reconstructed copy of Luminary 163, the
first (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with reconstructed source code for Luminary 173. Changes between revision 163 and 173 were backed out, as described by Luminary memos 157 and 158. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 163 listing would be different. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
021605,000002: ## Copyright: Public domain.
021606,000003: ## Filename: RADAR_LEADIN_ROUTINES.agc
021607,000004: ## Purpose: A section of Luminary revision 163.
021608,000005: ## It is part of the reconstructed source code for the first
021609,000006: ## (unflown) release of the flight software for the Lunar
021610,000007: ## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
021611,000008: ## The code has been recreated from a reconstructed copy of
021612,000009: ## Luminary 173, as well as Luminary memos 157 amd 158.
021613,000010: ## It has been adapted such that the resulting bugger words
021614,000011: ## exactly match those specified for Luminary 163 in NASA
021615,000012: ## drawing 2021152N, which gives relatively high confidence
021616,000013: ## that the reconstruction is correct.
021617,000014: ## Reference: pp. 498-499
021618,000015: ## Assembler: yaYUL
021619,000016: ## Contact: Ron Burkey <info@sandroid.org>.
021620,000017: ## Website: www.ibiblio.org/apollo/index.html
021621,000018: ## Mod history: 2019-08-21 MAS Created from Luminary 173. Moved RADSAMP back
021622,000019: ## to bank 25. Changed the TWIDDLE to RADSAMP to
021623,000020: ## a WAITLIST call.
021624,000021:
|
Page 498 |
021626,000023: 25,2003 BANK 25
021627,000024: 25,2000 SETLOC RRLEADIN
021628,000025: 25,2000 BANK
021629,000026:
021630,000027: 25,2003 E4,1600 EBANK= RSTACK
021631,000028:
021632,000029: # RADAR SAMPLING LOOP.
021633,000030:
021634,000031: 25,2003 COUNT* $$/RLEAD
021635,000032: 25,2003 11777 RADSAMP CCS RSAMPDT # TIMES NORMAL ONCE-PER-SECOND SAMPLING.
021636,000033: 25,2004 12006 TCF +2
021637,000034: 25,2005 15272 TCF TASKOVER # +0 INSERTED MANUALLY TERMINATES TEST.
021638,000035:
021639,000036: 25,2006 05214 TC WAITLIST
021640,000037: 25,2007 E4,1600 EBANK= RSTACK
021641,000038: 25,2007 02003 52064 2CADR RADSAMP
021642,000039:
021643,000040: 25,2011 37716 CAF PRIO25
021644,000041: 25,2012 05072 TC NOVAC
021645,000042: 25,2013 E4,1600 EBANK= RSTACK
021646,000043: 25,2013 02023 52064 2CADR DORSAMP
021647,000044:
021648,000045: 25,2015 34736 CAF BIT14 # FOR CYCLIC SAMPLING, RTSTDEX=
021649,000046: 25,2016 00006 EXTEND # RTSTLOC/2 + RTSTBASE
021650,000047: 25,2017 71776 MP RTSTLOC
021651,000048: 25,2020 61775 AD RTSTBASE # 0 FOR RR, 2 FOR LR.
021652,000049: 25,2021 55773 TS RTSTDEX
021653,000050: 25,2022 15272 TCF TASKOVER
021654,000051:
021655,000052: # DO THE ACTUAL RADAR SAMPLE.
021656,000053:
021657,000054: 25,2023 02060 DORSAMP TC VARADAR # SELECTS VARIABLE RADAR CHANNEL.
021658,000055: 25,2024 04616 TC BANKCALL
021659,000056: 25,2025 17720 CADR RADSTALL
021660,000057:
021661,000058: 25,2026 25575 INCR RFAILCNT # ADVANCE FAIL COUNTER BUT ACCEPT BAD DATA
021662,000059:
021663,000060: 25,2027 00004 DORSAMP2 INHINT
021664,000061: 25,2030 30101 CA FLAGWRD5 # DON'T UPDATE RSTACK IF IN R77.
021665,000062: 25,2031 74741 MASK R77FLBIT
021666,000063: 25,2032 10000 CCS A
021667,000064: 25,2033 12050 TCF R77IN
021668,000065:
021669,000066: 25,2034 53101 DXCH SAMPLSUM
021670,000067: 25,2035 51776 INDEX RTSTLOC
021671,000068: 25,2036 53601 DXCH RSTACK
021672,000069:
|
Page 499 |
021674,000071: 25,2037 30110 CA RADMODES
021675,000072: 25,2040 00006 EXTEND
021676,000073: 25,2041 06033 RXOR CHAN33
021677,000074: 25,2042 74746 MASK BIT6
021678,000075: 25,2043 00006 EXTEND
021679,000076: 25,2044 12050 BZF R77IN
021680,000077:
021681,000078: 25,2045 05600 TC ALARM
021682,000079: 25,2046 00522 OCT 522
021683,000080: 25,2047 25575 INCR RFAILCNT
021684,000081:
021685,000082: 25,2050 41776 R77IN CS RTSTLOC # CYCLE RTSTLOC
021686,000083: 25,2051 61774 AD RTSTMAX
021687,000084: 25,2052 00006 EXTEND
021688,000085: 25,2053 12056 BZF +3
021689,000086: 25,2054 31776 CA RTSTLOC
021690,000087: 25,2055 64752 AD TWO # STORAGE IS DP
021691,000088: 25,2056 55776 TS RTSTLOC
021692,000089: 25,2057 15155 TCF ENDOFJOB # CONTINUOUS SAMPLING AND 2N TRIES - GONE.
021693,000090:
021694,000091: # VARIABLE RADAR DATA CALLER FOR ONE MEASUREMENT ONLY.
021695,000092:
021696,000093: 25,2060 34753 VARADAR CAF ONE # WILL BE SENT TO RADAR ROUTINE IN A BY
021697,000094: 25,2061 54133 TS BUF2 # SWCALL.
021698,000095: 25,2062 51773 INDEX RTSTDEX
021699,000096: 25,2063 32065 CAF RDRLOCS
021700,000097: 25,2064 14622 TCF SWCALL # NOT TOUCHING Q.
021701,000098:
021702,000099: 25,2065 53114 RDRLOCS CADR RRRANGE # = 0
021703,000100: 25,2066 53112 CADR RRRDOT # = 1
021704,000101: 25,2067 53110 CADR LRVELX # = 2
021705,000102: 25,2070 53106 CADR LRVELY # = 3
021706,000103: 25,2071 53104 CADR LRVELZ # = 4
021707,000104: 25,2072 53102 CADR LRALT # = 5
End of include-file RADAR_LEADIN_ROUTINES.agc. Parent file is MAIN.agc