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:
  • B1 — Revision 292
  • B2 — Revision 302
  • B3 — Revision 302
  • B4 — Revision 302
  • B5 — Revision 292
  • B6 — Revision 306
These dumps were then modified using memos, checklists, observed address changes, and the Sundance GSOPs to get the entire program to match Sundance revision 306 as closely as possible. Without more information, it is not possible to say how close it actually is; however, this code should be quite close. It is capable of flying the whole Apollo 9 mission using the original checklists and padload. 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.

042543,000002:                                                                                                  ## Copyright:   Public domain.
042544,000003:                                                                                                  ## Filename:    INTERPRETIVE_CONSTANTS.agc
042545,000004:                                                                                                  ## Purpose:     A section of an attempt to reconstruct Sundance revision 306
042546,000005:                                                                                                  ##              as closely as possible with available information. Sundance
042547,000006:                                                                                                  ##              306 is the source code for the Lunar Module's (LM) Apollo
042548,000007:                                                                                                  ##              Guidance Computer (AGC) for Apollo 9. This program was created
042549,000008:                                                                                                  ##              using the mixed-revision SundanceXXX as a starting point, and
042550,000009:                                                                                                  ##              pulling back features from Luminary 69 believed to have been
042551,000010:                                                                                                  ##              added based on memos, checklists, observed address changes,
042552,000011:                                                                                                  ##              or the Sundance GSOPs.
042553,000012:                                                                                                  ## Assembler:   yaYUL
042554,000013:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
042555,000014:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
042556,000015:                                                                                                  ## Mod history: 2020-07-24 MAS  Created from SundanceXXX.
042557,000016:                                                                                                  ##              2021-05-30 ABS  DFC-6 -> DEC-6, DFC-12 -> DEC-12
042558,000017: 
042559,000018: 
042560,000019: 
042561,000020: 23,2000                                           SETLOC   INTPRET1                              
042562,000021: 23,2000                                           BANK                                           
042563,000022: 
042564,000023: 23,2222                                           COUNT*   $$/ICONS                              
042565,000024: 23,2222           10000 00000  DP1/4TH            2DEC     .25                                   
042566,000025: 
042567,000026: 23,2224           00000 00000  UNITZ              2DEC     0          B-28                       
042568,000027: 
042569,000028: 23,2226           00000 00000  UNITY              2DEC     0          B-28                       
042570,000029: 
042571,000030: 23,2230           20000 00000  UNITX              2DEC     .5                                    
042572,000031: 
042573,000032: 23,2232           00000 00000  ZEROVECS           2DEC     0          B-28                       
042574,000033: 
042575,000034: 23,2234           00000 00000                     2DEC     0          B-28                       
042576,000035: 
042577,000036: 23,2236           00000 00000                     2DEC     0          B-28                       
042578,000037: 
042579,000038: 23,2240  23,2230               DPHALF             =        UNITX                                 
042580,000039: 23,2240           37777        DPPOSMAX           OCT      37777                                 
042581,000040: 23,2241           37777                           OCT      37777                                 
042582,000041: 
042583,000042:                                                                                                  #  INTERPRETIVE CONSTANTS IN THE OTHER HALF-MEMORY
042584,000043: 
042585,000044: 11,2000                                           SETLOC   INTPRET2                              
042586,000045: 11,2000                                           BANK                                           
042587,000046: 
042588,000047: 11,2267                                           COUNT*   $$/ICONS                              
042589,000048: 11,2267           00000 00000  ZUNIT              2DEC     0          B-28                       
042590,000049: 
042591,000050: 11,2271           00000 00000  YUNIT              2DEC     0          B-28                       
042592,000051: 
042593,000052: 11,2273           20000 00000  XUNIT              2DEC     .5                                    
042594,000053: 
042595,000054: 11,2275           00000 00000  ZEROVEC            2DEC     0          B-28                       
042596,000055: 
042597,000056: 11,2277           00000 00000                     2DEC     0          B-28                       
042598,000057: 
042599,000058: 11,2301           00000 00000                     2DEC     0          B-28                       
042600,000059: 
042601,000060: 11,2303           77777                           OCT      77777                                 #  -0, -6, -12 MUST REMAIN IN THIS ORDER
042602,000061: 11,2304           77771        DEC-6              DEC      -6         B-14                       
042603,000062: 11,2305           77763        DEC-12             DEC      -12        B-14                       
042604,000063: 11,2306           37777 37777  LODPMAX            2OCT     3777737777                            #  THESE TWO CONSTANTS MUST REMAIN
042605,000064: 
042606,000065: 11,2310           37777 37777  LODPMAX1           2OCT     3777737777                            #  ADJACENT AND THE SAME FOR INTEGRATION
042607,000066: 
042608,000067: 11,2312  11,2275               ZERODP             =        ZEROVEC                               
042609,000068: 11,2312  11,2273               HALFDP             =        XUNIT                                 
042610,000069: 
042611,000070: 

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