Source Code

These source-code files are part of a reconstructed copy of LUM69 Revision 2, the flown Apollo 10 Lunar Module (LM) Apollo Guidance Computer (AGC) software.

The reconstruction began with source code of Luminary 69 revision 0 previously transcribed from a digitized copy of that program. The code was then updated by back-porting the R-2 lunar potential model from previously-transcribed source code of Luminary 99. These required changes were described in the original Luminary memos 75 and 78. The reconstructed code was verified by matching memory-bank checksums to those listed in drawing 2021152G. Note that page numbers in the reconstructed code match those on the Luminary 069 printout, although the added code would likely have changed page numbers for a real LUM69 Revision 2 listing.

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.

022020,000002:                                                                                                  ## Copyright:   Public domain.
022021,000003:                                                                                                  ## Filename:    RADAR_LEADIN_ROUTINES.agc
022022,000004:                                                                                                  ## Purpose:     A section of LUM69 revision 2.
022023,000005:                                                                                                  ##              It is part of the reconstructed source code for the flown
022024,000006:                                                                                                  ##              version of the flight software for the Lunar Module's (LM)
022025,000007:                                                                                                  ##              Apollo Guidance Computer (AGC) for Apollo 10. The code has
022026,000008:                                                                                                  ##              been recreated from a copy of Luminary revsion 069, using
022027,000009:                                                                                                  ##              changes present in Luminary 099 which were described in
022028,000010:                                                                                                  ##              Luminary memos 75 and 78. The code has been adapted such
022029,000011:                                                                                                  ##              that the resulting bugger words exactly match those specified
022030,000012:                                                                                                  ##              for LUM69 revision 2 in NASA drawing 2021152B, which gives
022031,000013:                                                                                                  ##              relatively high confidence that the reconstruction is correct.
022032,000014:                                                                                                  ## Reference:   pp. 502-503
022033,000015:                                                                                                  ## Assembler:   yaYUL
022034,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
022035,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
022036,000018:                                                                                                  ## Mod history: 2019-07-27 MAS  Created from Luminary 69.
022037,000019: 

Page 502

022039,000021: 25,2003                                           BANK     25                                    
022040,000022: 25,2000                                           SETLOC   RRLEADIN                              
022041,000023: 25,2000                                           BANK                                           
022042,000024: 
022043,000025: 25,2003  E4,1604                                  EBANK=   RSTACK                                
022044,000026: 
022045,000027:                                                                                                  #  RADAR SAMPLING LOOP.
022046,000028: 
022047,000029: 25,2003                                           COUNT*   $$/RLEAD                              
022048,000030: 25,2003           11761        RADSAMP            CCS      RSAMPDT                               #  TIMES NORMAL ONCE-PER-SECOND SAMPLING.
022049,000031: 25,2004           12006                           TCF      +2                                    
022050,000032: 25,2005           15261                           TCF      TASKOVER                              #  +0 INSERTED MANUALLY TERMINATES TEST.
022051,000033: 
022052,000034: 25,2006           05203                           TC       WAITLIST                              
022053,000035: 25,2007  E4,1604                                  EBANK=   RSTACK                                
022054,000036: 25,2007           02003 52064                     2CADR    RADSAMP                               
022055,000037: 
022056,000038: 25,2011           37712                           CAF      PRIO25                                
022057,000039: 25,2012           05072                           TC       NOVAC                                 
022058,000040: 25,2013  E4,1604                                  EBANK=   RSTACK                                
022059,000041: 25,2013           02023 52064                     2CADR    DORSAMP                               
022060,000042: 
022061,000043: 25,2015           34736                           CAF      BIT14                                 #  FOR CYCLIC SAMPLING, RTSTDEX=
022062,000044: 25,2016           00006                           EXTEND                                         #  RTSTLOC/2 + RTSTBASE
022063,000045: 25,2017           71760                           MP       RTSTLOC                               
022064,000046: 25,2020           61757                           AD       RTSTBASE                              #  0 FOR RR, 2 FOR LR.
022065,000047: 25,2021           55755                           TS       RTSTDEX                               
022066,000048: 25,2022           15261                           TCF      TASKOVER                              
022067,000049: 
022068,000050:                                                                                                  #  DO THE ACTUAL RADAR SAMPLE.
022069,000051: 
022070,000052: 25,2023           02047        DORSAMP            TC       VARADAR                               #  SELECTS VARIABLE RADAR CHANNEL.
022071,000053: 25,2024           04616                           TC       BANKCALL                              
022072,000054: 25,2025           17667                           CADR     RADSTALL                              
022073,000055: 
022074,000056: 25,2026           25762                           INCR     RFAILCNT                              #  ADVANCE FAIL COUNTER BUT ACCEPT BAD DATA
022075,000057: 
022076,000058: 25,2027           00004        DORSAMP2           INHINT                                         
022077,000059: 25,2030           30101                           CA       FLAGWRD5                              #  DON'T UPDATE RSTACK IF IN R77.
022078,000060: 25,2031           74741                           MASK     R77FLBIT                              
022079,000061: 25,2032           10000                           CCS      A                                     
022080,000062: 25,2033           12037                           TCF      +4                                    
022081,000063: 
022082,000064: 25,2034           53102                           DXCH     SAMPLSUM                              
022083,000065: 25,2035           51760                           INDEX    RTSTLOC                               
022084,000066: 25,2036           53605                           DXCH     RSTACK                                
022085,000067: 
022086,000068: 25,2037           41760                           CS       RTSTLOC                               #  CYCLE RTSTLOC.
022087,000069: 25,2040           61756                           AD       RTSTMAX                               
022088,000070: 25,2041           00006                           EXTEND                                         
022089,000071: 

Page 503

022091,000073: 25,2042           12045                           BZF      +3                                    
022092,000074: 25,2043           31760                           CA       RTSTLOC                               
022093,000075: 25,2044           64752                           AD       TWO                                   #  STORAGE IS DP
022094,000076: 25,2045           55760                           TS       RTSTLOC                               
022095,000077: 25,2046           15155                           TCF      ENDOFJOB                              #  CONTINUOUS SAMPLING AND 2N TRIES - GONE.
022096,000078: 
022097,000079:                                                                                                  #  VARIABLE RADAR DATA CALLER FOR ONE MEASUREMENT ONLY.
022098,000080: 
022099,000081: 25,2047           34753        VARADAR            CAF      ONE                                   #  WILL BE SENT TO RADAR ROUTINE IN A BY
022100,000082: 25,2050           54133                           TS       BUF2                                  #  SWCALL.
022101,000083: 25,2051           51755                           INDEX    RTSTDEX                               
022102,000084: 25,2052           32054                           CAF      RDRLOCS                               
022103,000085: 25,2053           14622                           TCF      SWCALL                                #  NOT TOUCHING Q.
022104,000086: 
022105,000087: 25,2054           53105        RDRLOCS            CADR     RRRANGE                               #  = 0
022106,000088: 25,2055           53103                           CADR     RRRDOT                                #  = 1
022107,000089: 25,2056           53101                           CADR     LRVELX                                #  = 2
022108,000090: 25,2057           53077                           CADR     LRVELY                                #  = 3
022109,000091: 25,2060           53075                           CADR     LRVELZ                                #  = 4
022110,000092: 25,2061           53073                           CADR     LRALT                                 #  = 5
022111,000093: 
022112,000094: 

End of include-file RADAR_LEADIN_ROUTINES.agc.  Parent file is MAIN.agc