Source Code

This is a reconstruction of the AGC program Luminary 99 Rev 0. It was the third release of the Lunar Module flight software targeted for use in Apollo 11, after Luminary 96 and 97. A bug (which had been around since at least Apollo 10, Luminary 69) was discovered in Rev 0 shortly before the Apollo 11 flight, resulting in a last minute revision into Rev 1, which is what actually flew rather than the Rev 0 presented here. A hardcopy of Rev 0 is known to exist — it belonged to AGC developer Allan Klumpp for many years — but unfortunately the Virtual AGC Project has not had access to that hardcopy. Thus the code you see here had been reconstructed (we believe accurately) rather than transcribed. The first step of the reconstruction of the Rev 0 source code was the transcription of the Rev 1 source code from a hardcopy in the MIT Museum collection. The process of reverting the active portion of the source code (i.e., other than program comments) from Rev 1 to Rev 0 was very minor, consisting only of moving the position of the STARTSB1 label in FRESH START AND RESTART. Allan had previously given us the checksums of the memory banks of Rev 0, and we have verified the program presented here has checksums identical to all banks of Allan's listing of Rev 0. The notations on Allan's Rev 0 program listing read, in part:

	GAP:  ASSEMBLE REVISION 099 OF AGC PROGRAM LUMINARY BY NASA 2021112-051

A single program comment is known to differ between Rev 0 and Rev 1, but these are harder to reconstruct and verify than changes to the active portion of the code. Thus it is possible that there are additional differences between the program comments in Rev 0 and Rev 1 that are unknown to us, and therefore are not reflected in the code presented here.

047920,000002:                                                                                                  ## Copyright:   Public domain.
047921,000003:                                                                                                  ## Filename:    INTERPRETIVE_CONSTANTS.agc
047922,000004:                                                                                                  ## Purpose:     Part of the reconstructed source code for LMY99 Rev 0,
047923,000005:                                                                                                  ##              otherwise known as Luminary Rev 99, the third release
047924,000006:                                                                                                  ##              of the Apollo Guidance Computer (AGC) software for Apollo 11.
047925,000007:                                                                                                  ##              It differs from LMY99 Rev 1 (the flown version) only in the
047926,000008:                                                                                                  ##              placement of a single label. The corrections shown here have
047927,000009:                                                                                                  ##              been verified to have the same bank checksums as AGC developer
047928,000010:                                                                                                  ##              Allan Klumpp's copy of Luminary Rev 99, and so are believed
047929,000011:                                                                                                  ##              to be accurate. This file is intended to be a faithful 
047930,000012:                                                                                                  ##              recreation, except that the code format has been changed to 
047931,000013:                                                                                                  ##              conform to the requirements of the yaYUL assembler rather than 
047932,000014:                                                                                                  ##              the original YUL assembler.
047933,000015:                                                                                                  ##
047934,000016:                                                                                                  ## Assembler:   yaYUL
047935,000017:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
047936,000018:                                                                                                  ## Website:     www.ibiblio.org/apollo.
047937,000019:                                                                                                  ## Pages:       1100-1101
047938,000020:                                                                                                  ## Mod history: 2009-05-25 RSB  Adapted from the corresponding 
047939,000021:                                                                                                  ##                              Luminary131 file, using page 
047940,000022:                                                                                                  ##                              images from Luminary 1A.
047941,000023:                                                                                                  ##              2016-12-17 RSB  Proofed text comments with octopus/ProoferComments
047942,000024:                                                                                                  ##                              but no errors found.
047943,000025:                                                                                                  ##              2017-08-01 MAS  Created from LMY99 Rev 1.
047944,000026:                                                                                                  ##              2021-05-30 ABS  DFC-6 -> DEC-6, DFC-12 -> DEC-12
047945,000027: 
047946,000028:                                                                                                  ## This source code has been transcribed or otherwise adapted from
047947,000029:                                                                                                  ## digitized images of a hardcopy from the MIT Museum.  The digitization
047948,000030:                                                                                                  ## was performed by Paul Fjeld, and arranged for by Deborah Douglas of
047949,000031:                                                                                                  ## the Museum.  Many thanks to both.  The images (with suitable reduction
047950,000032:                                                                                                  ## in storage size and consequent reduction in image quality as well) are
047951,000033:                                                                                                  ## available online at www.ibiblio.org/apollo.  If for some reason you
047952,000034:                                                                                                  ## find that the images are illegible, contact me at info@sandroid.org
047953,000035:                                                                                                  ## about getting access to the (much) higher-quality images which Paul
047954,000036:                                                                                                  ## actually created.
047955,000037:                                                                                                  ##
047956,000038:                                                                                                  ## The code has been modified to match LMY99 Revision 0, otherwise
047957,000039:                                                                                                  ## known as Luminary Revision 99, the Apollo 11 software release preceeding
047958,000040:                                                                                                  ## the listing from which it was transcribed. It has been verified to
047959,000041:                                                                                                  ## contain the same bank checksums as AGC developer Allan Klumpp's listing
047960,000042:                                                                                                  ## of Luminary Revision 99 (for which we do not have scans).
047961,000043:                                                                                                  ##
047962,000044:                                                                                                  ## Notations on Allan Klumpp's listing read, in part:
047963,000045:                                                                                                  ##
047964,000046:                                                                                                  ##      ASSEMBLE REVISION 099 OF AGC PROGRAM LUMINARY BY NASA 2021112-51
047965,000047: 

Page 1100

047967,000049: 23,2000                                           SETLOC   INTPRET1                              
047968,000050: 23,2000                                           BANK                                           
047969,000051: 
047970,000052: 23,2511                                           COUNT*   $$/ICONS                              
047971,000053: 23,2511           10000 00000  DP1/4TH            2DEC     .25                                   
047972,000054: 
047973,000055: 23,2513           00000 00000  UNITZ              2DEC     0          B-28                       
047974,000056: 
047975,000057: 23,2515           00000 00000  UNITY              2DEC     0          B-28                       
047976,000058: 
047977,000059: 23,2517           20000 00000  UNITX              2DEC     .5                                    
047978,000060: 
047979,000061: 23,2521           00000 00000  ZEROVECS           2DEC     0          B-28                       
047980,000062: 
047981,000063: 23,2523           00000 00000                     2DEC     0          B-28                       
047982,000064: 
047983,000065: 23,2525           00000 00000                     2DEC     0          B-28                       
047984,000066: 
047985,000067: 23,2527  23,2517               DPHALF             =        UNITX                                 
047986,000068: 23,2527           37777        DPPOSMAX           OCT      37777                                 
047987,000069: 23,2530           37777                           OCT      37777                                 
047988,000070: 

Page 1101

047990,000072:                                                                                                  #  INTERPRETIVE CONSTANTS IN THE OTHER HALF-MEMORY
047991,000073: 
047992,000074: 12,2000                                           SETLOC   INTPRET2                              
047993,000075: 12,2000                                           BANK                                           
047994,000076: 
047995,000077: 12,2000                                           COUNT*   $$/ICONS                              
047996,000078: 12,2000           00000 00000  ZUNIT              2DEC     0          B-28                       
047997,000079: 
047998,000080: 12,2002           00000 00000  YUNIT              2DEC     0          B-28                       
047999,000081: 
048000,000082: 12,2004           20000 00000  XUNIT              2DEC     .5                                    
048001,000083: 
048002,000084: 12,2006           00000 00000  ZEROVEC            2DEC     0          B-28                       
048003,000085: 
048004,000086: 12,2010           00000 00000                     2DEC     0          B-28                       
048005,000087: 
048006,000088: 12,2012           00000 00000                     2DEC     0          B-28                       
048007,000089: 
048008,000090: 12,2014           77777                           OCT      77777                                 #  -0, -6, -12 MUST REMAIN IN THIS ORDER
048009,000091: 12,2015           77771        DEC-6              DEC      -6         B-14                       
048010,000092: 12,2016           77763        DEC-12             DEC      -12        B-14                       
048011,000093: 12,2017           37777 37777  LODPMAX            2OCT     3777737777                            #  THESE TWO CONSTANTS MUST REMAIN
048012,000094: 
048013,000095: 12,2021           37777 37777  LODPMAX1           2OCT     3777737777                            #  ADJACENT AND THE SAME FOR INTEGRATION
048014,000096: 
048015,000097: 12,2023  12,2006               ZERODP             =        ZEROVEC                               
048016,000098: 12,2023  12,2004               HALFDP             =        XUNIT                                 
048017,000099: 
048018,000100: 

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