Source Code

These source code files are a reconstruction of Sundance, the Apollo 9 LM (Lunar Module) AGC (Apollo Guidance Computer) flight software, created from binary dumps of original core rope program modules, as follows:
  • B1 — Revision 292
  • B2 — Revision 302
  • B3 — Revision 302
  • B4 — Revision 302
  • B5 — Revision 292
  • B6 — Revision 306
This means that source code does not represent a specific historical revision of Sundance, but rather a mixture of the three released versions. Nonetheless, it is capable of flying the whole Apollo 9 mission. This source code matches the binary dumps, as closely as feasible, but 100% match is not possible, due mostly to changes in memory addresses at which code and variables were allocated in different revisions of Sundance. Refer to this list of explanations for each binary mismatch.

Since only binary dumps (rather than listings) of Sundance are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing.

006941,000002:                                                                                                  ## Copyright:   Public domain.
006942,000003:                                                                                                  ## Filename:    RCS_FAILURE_MONITOR.agc
006943,000004:                                                                                                  ## Purpose:     A section of a reconstructed, mixed version of Sundance
006944,000005:                                                                                                  ##              It is part of the reconstructed source code for the Lunar
006945,000006:                                                                                                  ##              Module's (LM) Apollo Guidance Computer (AGC) for Apollo 9.
006946,000007:                                                                                                  ##              No original listings of this program are available;
006947,000008:                                                                                                  ##              instead, this file was created via disassembly of dumps
006948,000009:                                                                                                  ##              of various revisions of Sundance core rope modules.
006949,000010:                                                                                                  ## Assembler:   yaYUL
006950,000011:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
006951,000012:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
006952,000013:                                                                                                  ## Mod history: 2020-06-19 MAS  Created from Luminary 69.
006953,000014: 
006954,000015:                                                                                                  ## Sundance 302
006955,000016: 
006956,000017: 06,3260                                           BANK     06                                    
006957,000018: 06,2000                                           SETLOC   STGMONT                               
006958,000019: 06,2000                                           BANK                                           
006959,000020: 
006960,000021: 06,3260           35025        STAGEMON           CAF      BIT2                                  
006961,000022: 06,3261           00006                           EXTEND                                         
006962,000023: 06,3262           02030                           RAND     CHAN30                                
006963,000024: 06,3263           00006                           EXTEND                                         
006964,000025: 06,3264           15330                           BZF      RESUME                                
006965,000026: 
006966,000027: 06,3265           40075                           CS       FLAGWRD1                              
006967,000028: 06,3266           75013                           MASK     APSFLBIT                              
006968,000029: 06,3267           00006                           EXTEND                                         
006969,000030: 06,3270           15330                           BZF      RESUME                                
006970,000031: 06,3271           26075                           ADS      FLAGWRD1                              
006971,000032: 
006972,000033: 06,3272           37667                           CAF      PRIO27                                
006973,000034: 06,3273           05142                           TC       NOVAC                                 
006974,000035: 06,3274  E6,1532                                  EBANK=   AOSQ                                  
006975,000036: 06,3274           02312 40006                     2CADR    1/ACCJOB                              
006976,000037: 
006977,000038: 06,3276           15330                           TCF      RESUME                                

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