Source Code

These source-code files were obtained by digitally photographing a Solarium 55 (Apollo 6) program listing from the American Computer Museum in Bozeman, Montana. Photography was by Ron Burkey, with assistance from museum curator George Keremedjiev and Montana State University curator Kim Scott. The listing originally belonged to Eldon C. Hall, who donated it to the museum. Volunteers then manually typed in the source code or else modified similar pre-existing Colossus 249 (Apollo 9) source files to incorporate changes, although this transcription was principally done by Jim Lawton and corrected by Ron Burkey. Notations on the program listing read, in part:

        YUL SYSTEM FOR AGC4: REVISION 0 OF PROGRAM SOLRUM55
	BY NASA 1021108-021                    DEC. 4, 1966
Note that the date is the date of the printout, not the date of the program revision.

Due to statements by Jay Sampson, the original contractor from AC Electronics who created Solarium 54 (Apollo 4) from the earlier Corona (AS-202 mission) program, it is believed that Solarium 54 and Solarium 55 (Apollo 6) are actually identical programs. The change in numbering, from 54 to 55, is believed to be for some administrative purpose. Thus, it is believed that the source-code represented here is equally appropriate for both Apollo 4 and Apollo 6 missions.

029963,000002:                                                                                                  ## Copyright:   Public domain.
029964,000003:                                                                                                  ## Filename:    VERIFICATION_ASSISTANCE_PROGRAMS.agc
029965,000004:                                                                                                  ## Purpose:     Part of the source code for Solarium build 55. This
029966,000005:                                                                                                  ##              is for the Command Module's (CM) Apollo Guidance
029967,000006:                                                                                                  ##              Computer (AGC), for Apollo 6.
029968,000007:                                                                                                  ## Assembler:   yaYUL --block1
029969,000008:                                                                                                  ## Contact:     Jim Lawton <jim DOT lawton AT gmail DOT com>
029970,000009:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
029971,000010:                                                                                                  ## Page Scans:  www.ibiblio.org/apollo/ScansForConversion/Solarium055/
029972,000011:                                                                                                  ## Mod history: 2009-09-21 JL   Created.
029973,000012:                                                                                                  ##              2016-08-20 RSB  Typo.
029974,000013:                                                                                                  ##              2016-12-28 RSB  Proofed comment text using octopus/ProoferComments,
029975,000014:                                                                                                  ##                              and fixed errors found.
029976,000015: 

Page 754

029978,000017: 
029979,000018:                                                                                                  #        WAITLIST EXERCISE PROGRAM. TIMES ARE GIVEN IN THE FORM NN + NN/32 + YY, WHERE THE NS REFER TO TIME
029980,000019:                                                                                                  #  SINCE THE BEGINNING OF THE TEST, AND YS ADDITIONAL MCT.
029981,000020: 
029982,000021: 13,7205                                           BANK     13                                    
029983,000022: 13,7205           30006        WLTEST             XCH      IN2                                   
029984,000023: 13,7206           10006                           CCS      IN2                                   #  GET IN PHASE WITH T3 INCREMENTS.
029985,000024: 13,7207           07211                           TC       +2                                    
029986,000025: 13,7210           07206                           TC       -2                                    
029987,000026: 
029988,000027: 13,7211           10006                           CCS      IN2                                   
029989,000028: 13,7212           07211                           TC       -1                                    
029990,000029: 13,7213           50042                           TS       OUTCR1                                #  TO INITIALIZE.
029991,000030: 
029992,000031:                                                                                                  #        THE FIRST TASK IS ENTERED INTO SLOT 1 WITH A T3 INCREMENT BETWEEN THE TWO T3 REFERENCES. CALL AT
029993,000032:                                                                                                  #  10 +00/32 -25. SPECIFY WAIT TO 30/32.
029994,000033: 
029995,000034: 13,7214           07310                           TC       OUTCR1WT                              
029996,000035: 13,7215           00035                           DEC      29         B-14                       
029997,000036: 
029998,000037: 13,7216           07310                           TC       OUTCR1WT                              #  GO WAIT FOR THIS AND SPECIFY RESET TO
029999,000038: 13,7217           00052                           DEC      42         B-14                       #  20 +8/32.
030000,000039: 
030001,000040:                                                                                                  #        AT 30/32 +16, WAIT 12 MCT BEFORE ENTERING TASK 1.
030002,000041: 
030003,000042: 13,7220           35501                           CAF      ZERO                                  #  TUNING CONSTANT.
030004,000043: 13,7221           10000                           CCS      A                                     
030005,000044: 13,7222           07221                           TC       -1                                    
030006,000045: 13,7223           34516                           CAF      ONE                                   #  TASK ENTRY WITH T3 INC BETWEEN TWO T3
030007,000046: 13,7224           02173                           TC       WAITLIST                              #  REFERENCES.
030008,000047: 13,7225           42240                           CADR     NOPLWAIT   +2                         #  TASK IN HIGH SWITCHED BANK.
030009,000048: 
030010,000049: 13,7226           07310                           TC       OUTCR1WT                              #  WAIT FOR 20 +8/32. CALL FOR RESET TO
030011,000050: 13,7227           00027                           DEC      23         B-14                       #  20 +31/32.
030012,000051: 
030013,000052: 13,7230           34516                           CAF      ONE                                   #  AT 20 +8/32 + 16, ENTER TASK 2 DUE AT
030014,000053: 13,7231           02173                           TC       WAITLIST                              #  30.
030015,000054: 13,7232           27332                           CADR     QTSK2                                 
030016,000055: 

Page 755

030018,000057: 
030019,000058:                                                                                                  #        WAIT FOR 20 +31/32 +16 AND AT THAT TIME WAIT FOR T3 TO OVERFLOW BEFORE ENTERING TASK 3. REQUIRES RESET
030020,000059:                                                                                                  #  TO 30 +10/32.
030021,000060: 
030022,000061: 13,7233           07310                           TC       OUTCR1WT                              
030023,000062: 13,7234           00013                           DEC      11         B-14                       
030024,000063: 13,7235           10037                           CCS      TIME3                                 
030025,000064: 13,7236           07235                           TC       -1                                    
030026,000065: 13,7237           34516                           CAF      ONE                                   #  ENTER TASK 3 AFTER T3 OVF.
030027,000066: 13,7240           02173                           TC       WAITLIST                              
030028,000067: 13,7241           27333                           CADR     QTSK3                                 
030029,000068: 
030030,000069: 13,7242           07310                           TC       OUTCR1WT                              #  TASK 3 IS DUE AT 40. WAIT FOR 30 +10/32
030031,000070: 13,7243           00065                           DEC      53         B-14                       #  CALLING FOR RESET TO 40 +31/32.
030032,000071: 
030033,000072:                                                                                                  #        AT 30 +10/32 +16, ENTER TASKS 4 AND 5 DUE SAME RUPT AT 50. THEY WILL BE INHIBITED FOR 6 MS SO THAT T3
030034,000073:                                                                                                  #  WILL TICK WHILE IT IS BEING RESET IN THE DISPATCH OF 5.
030035,000074: 
030036,000075: 13,7244           35503                           CAF      TWO                                   #  ENTERED INTO SLOTS 2 AND 3.
030037,000076: 13,7245           02173                           TC       WAITLIST                              
030038,000077: 13,7246           27334                           CADR     QTSK4                                 
030039,000078: 13,7247           35503                           CAF      TWO                                   
030040,000079: 13,7250           02173                           TC       WAITLIST                              
030041,000080: 13,7251           03225                           CADR     TCTSKOVR                              #  TASK IN FIXED-FIXED.
030042,000081: 
030043,000082: 13,7252           07310                           TC       OUTCR1WT                              #  WAIT FOR 40 +31/32 +16, CALLING FOR
030044,000083: 13,7253           00023                           DEC      19         B-14                       #  RESET TO 50 +18/32.
030045,000084: 
030046,000085: 13,7254           07311                           TC       OUTCR1WT   +1                         #  AT 40 +31/32 +16, INHIBIT UNTIL
030047,000086: 13,7255           00030                           DEC      24         B-14                       #  50 +18/32 +16 AND RESET TO 60 +10/32.
030048,000087: 
030049,000088: 13,7256           07310                           TC       OUTCR1WT                              #  AT 50 +18/32 +16, WAIT UNTIL 60 10/32,
030050,000089: 13,7257           00025                           DEC      21         B-14                       #  RESETTING TO 60 +31/32.
030051,000090: 

Page 756

030053,000092: 
030054,000093:                                                                                                  #        AT 60 +10/32 +16, ENTER TASKS 6 AND 7 DUE AT 70 AND 8 DUE AT 80. T3 WILL INCREMENT DURING TASK 7
030055,000094:                                                                                                  #  DISPATCH, MAKING TASK 8 DUE THAT INTERRUPT. 
030056,000095: 
030057,000096: 13,7260           34516                           CAF      ONE                                   
030058,000097: 13,7261           02173                           TC       WAITLIST                              #  ENTER TWO TASKS DUE SAME T3 RUPT AND
030059,000098: 13,7262           27340                           CADR     QTSK6                                 #  ANOTHER DUE THE FOLLOWING RUPT.
030060,000099: 13,7263           34516                           CAF      ONE                                   
030061,000100: 13,7264           02173                           TC       WAITLIST                              
030062,000101: 13,7265           27342                           CADR     QTSK7                                 
030063,000102: 13,7266           35503                           CAF      TWO                                   #  A T3 INC WILL OCCUR WHILE TASK 7 IS
030064,000103: 13,7267           02173                           TC       WAITLIST                              #  SETTING T3 FOR THIS TASK AND CAUSE IT TO
030065,000104: 13,7270           27343                           CADR     QTSK8                                 #  BE THE THIRD TASK DUE THAT RUPT.
030066,000105: 
030067,000106: 13,7271           07310                           TC       OUTCR1WT                              #  WAIT UNTIL 60 +31/32 +16, INHINTING
030068,000107: 13,7272           00023                           DEC      19         B-14                       #  70 +18/32 +16.
030069,000108: 13,7273           07311                           TC       OUTCR1WT   +1                         
030070,000109: 13,7274           00001                           DEC      1          B-14                       
030071,000110: 
030072,000111: 13,7275           34477                           CAF      FIVE                                  #  SYSTEMMATICALLY ENTER TASKS IN ALL 6
030073,000112: 13,7276           50115                           TS       MPAC                                  #  SLOTS.
030074,000113: 
030075,000114: 13,7277           20016        QTSKLOOP           RELINT                                         
030076,000115: 13,7300           20017                           INHINT                                         
030077,000116: 13,7301           40115                           CS       MPAC                                  
030078,000117: 13,7302           65362                           AD       SEVEN                                 
030079,000118: 13,7303           02173                           TC       WAITLIST                              
030080,000119: 13,7304           27344                           CADR     QTSK10                                
030081,000120: 13,7305           10115                           CCS      MPAC                                  
030082,000121: 13,7306           07276                           TC       QTSKLOOP   -1                         
030083,000122: 
030084,000123: 13,7307           07307        QENDTEST           TC       -0                                    
030085,000124: 

Page 757

030087,000126: 
030088,000127:                                                                                                  #        THE FOLLOWING SUBROUTINE USES OUTCR1 AS A FINE TIMER DURING THE WAITLIST TEST.
030089,000128: 
030090,000129: 13,7310           20016        OUTCR1WT           RELINT                                         
030091,000130: 13,7311           30001                           XCH      Q                                     
030092,000131: 13,7312           50115                           TS       MPAC                                  
030093,000132: 13,7313           20000                           INDEX    A                                     
030094,000133: 13,7314           40000                           CS       0                                     #  NUMBER OF THIRTY-SECONDS OF 10MS TO WAIT
030095,000134: 13,7315           64522                           AD       HALF                                  
030096,000135: 13,7316           64522                           AD       HALF                                  
030097,000136: 13,7317           50116                           TS       MPAC       +1                         #  NEW OUTCR SETTING.
030098,000137: 
030099,000138: 13,7320           10042                           CCS      OUTCR1                                
030100,000139: 13,7321           07320                           TC       -1                                    
030101,000140: 
030102,000141: 13,7322           30116        OUTCR1W2           XCH      MPAC       +1                         
030103,000142: 13,7323           50042                           TS       OUTCR1                                
030104,000143: 13,7324           37331                           CAF      1WTCODE                               
030105,000144: 13,7325           50012                           TS       OUT2                                  
030106,000145: 13,7326           20017                           INHINT                                         
030107,000146: 13,7327           20115                           INDEX    MPAC                                  
030108,000147: 13,7330           00001                           TC       1                                     
030109,000148: 
030110,000149: 13,7331           26000        1WTCODE            OCT      26000                                 
030111,000150: 

Page 758

030113,000152: 
030114,000153:                                                                                                  #        TASKS FOR WAITLIST TESTER.
030115,000154: 
030116,000155: 13,7332           02256        QTSK2              TC       TASKOVER                              
030117,000156: 13,7333           02256        QTSK3              TC       TASKOVER                              
030118,000157: 13,7334           37345        QTSK4              CAF      QTSK4DEL                              #  WAIT SO THAT T3 WILL TICK DURING DISPTCH
030119,000158: 13,7335           10000                           CCS      A                                     
030120,000159: 13,7336           07335                           TC       -1                                    
030121,000160: 13,7337           02256                           TC       TASKOVER                              
030122,000161: 
030123,000162: 13,7340           37346        QTSK6              CAF      QTSK6DEL                              
030124,000163: 13,7341           07335                           TC       QTSK4      +1                         
030125,000164: 
030126,000165: 13,7342           02256        QTSK7              TC       TASKOVER                              
030127,000166: 13,7343           02256        QTSK8              TC       TASKOVER                              
030128,000167: 13,7344           02256        QTSK10             TC       TASKOVER                              
030129,000168: 
030130,000169: 13,7345           00115        QTSK4DEL           DEC      77         B-14                       #  TUNING CONSTANTS.
030131,000170: 13,7346           00116        QTSK6DEL           DEC      78         B-14                       

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