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.

051322,000002:                                                                                                  ## Copyright:   Public domain.
051323,000003:                                                                                                  ## Filename:    SINGLE_PRECISION_SUBROUTINES.agc
051324,000004:                                                                                                  ## Purpose:     A section of Manche45 revision 2.
051325,000005:                                                                                                  ##              It is part of the reconstructed source code for the
051326,000006:                                                                                                  ##              final, flown release of the flight software for the Command
051327,000007:                                                                                                  ##              Module's (CM) Apollo Guidance Computer (AGC) for Apollo 10.
051328,000008:                                                                                                  ##              The code has been recreated from a copy of Comanche 055. It
051329,000009:                                                                                                  ##              has been adapted such that the resulting bugger words
051330,000010:                                                                                                  ##              exactly match those specified for Manche 45/2 in NASA drawing
051331,000011:                                                                                                  ##              2021153D, which gives relatively high confidence that the
051332,000012:                                                                                                  ##              reconstruction is correct.
051333,000013:                                                                                                  ## Assembler:   yaYUL
051334,000014:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
051335,000015:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
051336,000016:                                                                                                  ## Mod history: 2020-12-24 MAS  Created from Comanche 45.
051337,000017: 

Page 1207

051339,000019:    5074                                           BLOCK    02                                    
051340,000020: 
051341,000021:                                                                                                  #  SINGLE PRECISION SINE AND COSINE
051342,000022: 
051343,000023:    5074                                           COUNT    02/INTER                              
051344,000024: 
051345,000025:    5074           65002        SPCOS              AD       HALF                                  #  ARGUMENTS SCALED AT PI
051346,000026:    5075           55075        SPSIN              TS       TEMK                                  
051347,000027:    5076           15100                           TCF      SPT                                   
051348,000028:    5077           41075                           CS       TEMK                                  
051349,000029:    5100           60000        SPT                DOUBLE                                         
051350,000030:    5101           55075                           TS       TEMK                                  
051351,000031:    5102           15113                           TCF      POLLEY                                
051352,000032:    5103           57075                           XCH      TEMK                                  
051353,000033:    5104           51075                           INDEX    TEMK                                  
051354,000034:    5105           65000                           AD       LIMITS                                
051355,000035:    5106           40000                           COM                                            
051356,000036:    5107           61075                           AD       TEMK                                  
051357,000037:    5110           55075                           TS       TEMK                                  
051358,000038:    5111           15113                           TCF      POLLEY                                
051359,000039:    5112           15131                           TCF      ARG90                                 
051360,000040:    5113           00006        POLLEY             EXTEND                                         
051361,000041:    5114           71075                           MP       TEMK                                  
051362,000042:    5115           55076                           TS       SQ                                    
051363,000043:    5116           00006                           EXTEND                                         
051364,000044:    5117           75047                           MP       C5/2                                  
051365,000045:    5120           67706                           AD       C3/2                                  
051366,000046:    5121           00006                           EXTEND                                         
051367,000047:    5122           71076                           MP       SQ                                    
051368,000048:    5123           67666                           AD       C1/2                                  
051369,000049:    5124           00006                           EXTEND                                         
051370,000050:    5125           71075                           MP       TEMK                                  
051371,000051:    5126           20001                           DDOUBL                                         
051372,000052:    5127           55075                           TS       TEMK                                  
051373,000053:    5130           00002                           TC       Q                                     
051374,000054:    5131           50000        ARG90              INDEX    A                                     
051375,000055:    5132           45000                           CS       LIMITS                                
051376,000056:    5133           00002                           TC       Q                                     #  RESULT SCALED AT 1
051377,000057: 
051378,000058:                                                                                                  #  SPROOT WAS DELETED IN REV 51 OF MASTER. ASS. CONT. HAS CARDS.
051379,000059: 
051380,000060: 
051381,000061: 
051382,000062: 

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