Source Code

These source-code files are part of a reconstructed copy of Comanche 45/2 (AKA Manche45 revision 2), the final, flown mission release of the Apollo 10 Command Module (CM) Apollo Guidance Computer (AGC) software. Comanche 45/2 was preceded by Comanche 44 and Comanche 45. The reconstruction is believed to be exactly accurate, but in the absence of an actual Apollo-era listing of Comanche 45/2, some explanation of the reconstruction process is needed to insure confidence in that accuracy.

The starting point was the source code of Comanche 45 (itself previously accurately reconstructed). Comanche 45 source code was then modified by incorporating changes known from contemporary documentation to have been made between revisions 45 and 45/2. The now-reconstructed Comanche 45/2 source code was verified by assembling it and checking that the assembled code had the expected known-correct memory-bank checksums. Note that page numbers in the reconstructed code tend to match those in the Comanche 55, the most-similar revision of Comanche for which we have access to an actual non-reconstructed hardcopy; the source code would likely have different page numbers in a contemporary Comanche 45 listing.

Annotations that were not present in the contemporary source code have been added to the reconstructed code to justify each change relative to Comanche 44. Here's a guide to the Apollo documentation referenced in those annotations:
Comments expected to have been present in 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.

051247,000002:                                                                                                  ## Copyright:   Public domain.
051248,000003:                                                                                                  ## Filename:    INTERPRETIVE_CONSTANTS.agc
051249,000004:                                                                                                  ## Purpose:     A section of Manche45 revision 2.
051250,000005:                                                                                                  ##              It is part of the reconstructed source code for the
051251,000006:                                                                                                  ##              final, flown release of the flight software for the Command
051252,000007:                                                                                                  ##              Module's (CM) Apollo Guidance Computer (AGC) for Apollo 10.
051253,000008:                                                                                                  ##              The code has been recreated from a copy of Comanche 055. It
051254,000009:                                                                                                  ##              has been adapted such that the resulting bugger words
051255,000010:                                                                                                  ##              exactly match those specified for Manche 45/2 in NASA drawing
051256,000011:                                                                                                  ##              2021153D, which gives relatively high confidence that the
051257,000012:                                                                                                  ##              reconstruction is correct.
051258,000013:                                                                                                  ## Assembler:   yaYUL
051259,000014:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
051260,000015:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
051261,000016:                                                                                                  ## Mod history: 2020-12-24 MAS  Created from Comanche 45.
051262,000017: 

Page 1205

051264,000019: 26,2000                                           SETLOC   INTPRET1                              
051265,000020: 26,2000                                           BANK                                           
051266,000021: 
051267,000022: 26,3324                                           COUNT    23/ICONS                              
051268,000023: 
051269,000024: 26,3324           10000 00000  DP1/4TH            2DEC     .25                                   
051270,000025: 
051271,000026: 26,3326           00000 00000  UNITZ              2DEC     0          B-28                       
051272,000027: 
051273,000028: 26,3330           00000 00000  UNITY              2DEC     0          B-28                       
051274,000029: 
051275,000030: 26,3332           20000 00000  UNITX              2DEC     .5                                    
051276,000031: 
051277,000032: 26,3334           00000 00000  ZEROVECS           2DEC     0          B-28                       
051278,000033: 
051279,000034: 26,3336           00000 00000                     2DEC     0          B-28                       
051280,000035: 
051281,000036: 26,3340           00000 00000                     2DEC     0          B-28                       
051282,000037: 
051283,000038: 26,3342  26,3332               DPHALF             =        UNITX                                 
051284,000039: 26,3342           37777        DPPOSMAX           OCT      37777                                 
051285,000040: 26,3343           37777                           OCT      37777                                 
051286,000041: 

Page 1206

051288,000043:                                                                                                  #  INTERPRETIVE CONSTANTS IN THE OTHER HALF-MEMORY
051289,000044: 
051290,000045: 04,2000                                           SETLOC   INTPRET2                              
051291,000046: 04,2000                                           BANK                                           
051292,000047: 
051293,000048: 04,3554                                           COUNT    14/ICONS                              
051294,000049: 
051295,000050: 04,3554           00000 00000  ZUNIT              2DEC     0          B-28                       
051296,000051: 
051297,000052: 04,3556           00000 00000  YUNIT              2DEC     0          B-28                       
051298,000053: 
051299,000054: 04,3560           20000 00000  XUNIT              2DEC     .5                                    
051300,000055: 
051301,000056: 04,3562           00000 00000  ZEROVEC            2DEC     0          B-28                       
051302,000057: 
051303,000058: 04,3564           00000 00000                     2DEC     0          B-28                       
051304,000059: 
051305,000060: 04,3566           00000 00000                     2DEC     0          B-28                       
051306,000061: 
051307,000062: 04,3570           77777                           OCT      77777                                 #  -0, -6, -12 MUST REMAIN IN THIS ORDER
051308,000063: 04,3571           77771        DEC-6              DEC      -6         B-14                       
051309,000064: 04,3572           77763        DEC-12             DEC      -12        B-14                       
051310,000065: 04,3573           37777 37777  LODPMAX            2OCT     3777737777                            #  THESE TWO CONSTANTS MUST REMAIN
051311,000066: 
051312,000067: 04,3575           37777 37777  LODPMAX1           2OCT     3777737777                            #  ADJACENT AND THE SAME FOR INTEGRATION
051313,000068: 
051314,000069: 04,3577  04,3562               ZERODP             =        ZEROVEC                               
051315,000070: 04,3577  04,3560               HALFDP             =        XUNIT                                 
051316,000071: 
051317,000072: 
051318,000073: 
051319,000074: 

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