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.

011475,000002:                                                                                                  ## Copyright:   Public domain.
011476,000003:                                                                                                  ## Filename:    ALARM_AND_DISPLAY_PROCEDURES.agc
011477,000004:                                                                                                  ## Purpose:     Part of the source code for Solarium build 55. This
011478,000005:                                                                                                  ##              is for the Command Module's (CM) Apollo Guidance
011479,000006:                                                                                                  ##              Computer (AGC), for Apollo 6.
011480,000007:                                                                                                  ## Assembler:   yaYUL --block1
011481,000008:                                                                                                  ## Contact:     Jim Lawton <jim DOT lawton AT gmail DOT com>
011482,000009:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
011483,000010:                                                                                                  ## Page Scans:  www.ibiblio.org/apollo/ScansForConversion/Solarium055/
011484,000011:                                                                                                  ## Mod history: 2009-09-15 JL   Created.
011485,000012:                                                                                                  ##              2016-12-28 RSB  Proofed comment text using octopus/ProoferComments,
011486,000013:                                                                                                  ##                              and fixed errors found.
011487,000014: 

Page 293

011489,000016: 
011490,000017:                                                                                                  #        THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
011491,000018:                                                                                                  #  EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
011492,000019: 
011493,000020:                                                                                                  #        CALLING SEQUENCE IS AS FOLLOWS:
011494,000021: 
011495,000022:                                                                                                  #        TC      ALARM
011496,000023:                                                                                                  #        OCT     AAANN           ALARM NO. NN IN GENERAL AREA AAA.
011497,000024:                                                                                                  #                                (RETURNS HERE)
011498,000025: 
011499,000026:    3007                                           BANK     1                                     
011500,000027:    3007           20017        ALARM              INHINT                                         
011501,000028:    3010           30001                           XCH      Q                                     
011502,000029:    3011           50577                           TS       ITEMP1                                
011503,000030: 
011504,000031:    3012           11763                           CCS      FAILREG                               #  SEE IF ONE FAILURE HAS OCCURRED SINCE
011505,000032:                                                                                                  #   THE LAST ERROR RESET.
011506,000033:    3013           03021                           TC       MULTFAIL                              #  YES - INDICATE MULTIPLE FAILURES.
011507,000034:    3014           03024                           TC       NEWALARM                              #  FIRST SINCE RESET.
011508,000035:    3015           30577        MULTEXIT           XCH      ITEMP1                                #  FREE ITEMP1 BEFORE RELINT.
011509,000036: 
011510,000037:    3016           20016        ENDALARM           RELINT                                         
011511,000038:    3017           20000                           INDEX    A                                     
011512,000039:    3020           00001                           TC       1                                     #  RETURN TO CALLER.
011513,000040: 
011514,000041:    3021           64664        MULTFAIL           AD       CSQ                                   #  BIT 15 = 1 INDICATES MULTIPLE FAILURES.
011515,000042:    3022           51763                           TS       FAILREG                               #  CSQ = BIT15 + BIT1.
011516,000043:    3023           03015                           TC       MULTEXIT                              
011517,000044: 
011518,000045:    3024           30577        NEWALARM           XCH      ITEMP1                                #  SAVE RETURN ADDRESS FOR CALL TO NOVAC.
011519,000046:    3025           51763                           TS       FAILREG                               
011520,000047: 
011521,000048:    3026           03036                           TC       PROGLARM                              #  TURN ON THE PROGRAM ALARM LIGHT.
011522,000049: 
011523,000050:    3027           32172                           CAF      PRIO37                                
011524,000051:    3030           02052                           TC       NOVAC                                 
011525,000052:    3031           23725                           CADR     DOALARM                               #  CALL (SEPARATE) JOB FOR DISPLAY.
011526,000053: 
011527,000054:    3032           21763                           INDEX    FAILREG                               #  (RETURN ADDRESS AT THIS POINT).
011528,000055:    3033           30000                           CAF      0                                     
011529,000056:    3034           31763                           XCH      FAILREG                               #  SET FAILREG AND GET BACK RETURN ADDRESS.
011530,000057:    3035           03016        NEWALM2            TC       ENDALARM                              
011531,000058: 

Page 294

011533,000060: 
011534,000061:                                                                                                  #        JOB WHICH CALLS NVSUB FOR ALARM DISPLAY.
011535,000062: 
011536,000063: 11,7725                                           BANK     11                                    
011537,000064: 11,7725           03302        DOALARM            TC       GRABDSP                               #  DISPLAY FAILREG.
011538,000065: 11,7726           03310                           TC       PREGBSY                               
011539,000066: 11,7727           33043                           CAF      FAILDISP                              
011540,000067: 11,7730           03100                           TC       NVSUB                                 
011541,000068: 11,7731           03315                           TC       PRENVBSY                              
011542,000069: 11,7732           03362                           TC       FREEDSP                               
011543,000070: 11,7733           02124                           TC       ENDOFJOB                              
011544,000071: 
011545,000072: 
011546,000073: 
011547,000074:    3036                                           SETLOC   NEWALM2    +1                         
011548,000075: 
011549,000076:    3036           44516        PROGLARM           CS       ONE                                   #  TURNS ON PROGRAM FAIL LIGHT ON THE
011550,000077:    3037           70011                           MASK     OUT1                                  #  PANEL.  CALLED ONLY BY ALARM AND ABORT.
011551,000078:    3040           64516                           AD       ONE                                   
011552,000079:    3041           50011                           TS       OUT1                                  
011553,000080:    3042           00001                           TC       Q                                     
011554,000081: 
011555,000082:    3043           00531        FAILDISP           OCT      00531                                 
011556,000083: 

Page 295

011558,000085: 
011559,000086:                                                                                                  #        THE FOLLOWING ROUTINE IS CALLED TO INITIATE AN ABORT. FAILREG IS SET (ACCORDING TO THE MULTIPLE
011560,000087:                                                                                                  #  FAILURES CONVENTION) AND A RE-START IS INITIATED BY TC-SELF. THIS IS CALLED ONLY UNDER RARE CIRCUMSTANCES.
011561,000088: 
011562,000089:    3044           20017        ABORT              INHINT                                         #  MAY BE CALLED IN INTERRUPT OR UNDER EXEC
011563,000090:    3045           20001                           INDEX    Q                                     #  PICK UP FAILURE CODE.
011564,000091:    3046           30000                           CAF      0                                     
011565,000092:    3047           50577                           TS       ITEMP1                                
011566,000093: 
011567,000094:    3050           11763                           CCS      FAILREG                               #  SEE IF THIS IS A MULTIPLE FAILURE.
011568,000095:    3051           03054                           TC       SETMULTF                              #  SET BIT 15 TO INDICATE YES.
011569,000096:    3052           03056                           TC       NEWABORT                              #  FIRST FAILURE.
011570,000097: 
011571,000098:    3053           03053        WHIMPER            TC       WHIMPER                               #  NOT WITH A BANG...
011572,000099: 
011573,000100:    3054           64664        SETMULTF           AD       CSQ                                   #  RESTORE AND SET BIT15
011574,000101:    3055           03060                           TC       +3                                    
011575,000102: 
011576,000103:    3056           03036        NEWABORT           TC       PROGLARM                              #  FIRST FAILURE - TURN ON ALARM LIGHT.
011577,000104:    3057           30577                           XCH      ITEMP1                                
011578,000105:    3060           51763                 +3        TS       FAILREG                               
011579,000106:    3061           03053                           TC       WHIMPER                               #  UNIVERSAL ABORT LOCATION.
011580,000107: 
011581,000108:    3062           30001        CCSHOLE            XCH      Q                                     
011582,000109:    3063           51764                           TS       SFAIL                                 
011583,000110:    3064           03044                           TC       ABORT                                 
011584,000111:    3065           01103                           OCT      1103                                  
011585,000112: 
011586,000113:                                                                                                  #        MISSION PROGRAM DETECTED FAILURES (ERROR RETURNS TO IMUSTALL, ETC.)
011587,000114: 
011588,000115:    3066           30001        CURTAINS           XCH      Q                                     #  PROGRAM DETECTED FLUSH.
011589,000116:    3067           05720                           TC       POSTJUMP                              
011590,000117:    3070           10777                           CADR     THATSALL                              #  FRESH START AND PROGRAM ALARM.
011591,000118: 
011592,000119:    3071                        ENDFAILF           EQUALS                                         

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