Source Code

These source-code files were obtained by digitally photographing the Colossus 237 program listing from the private collection of original AGC developer Fred Martin, and then modifying pre-existing Colossus 249 (Apollo 9) source files to incorporate changes. Note that the page images presented online are of reduced quality, and that additional images are available. Report any conversion errors or legibility problems in page images to info@sandroid.org. Notations on the program listing read, in part:

	GAP: ASSEMBLE REVISION 237 OF AGC PROGRAM COLOSSUS 
	BY NASA 2021111-031  1:17 AUG. 24, 1968

061515,000002:                                                                                                 #  Copyright:     Public domain.
061516,000003:                                                                                                 #  Filename:      ALARM_AND_ABORT.agc
061517,000004:                                                                                                 #  Purpose:       Part of the source code for Colossus build 237.  
061518,000005:                                                                                                 #                 This is for the Command Module's (CM) Apollo Guidance
061519,000006:                                                                                                 #                 Computer (AGC), we believe for Apollo 8.
061520,000007:                                                                                                 #  Assembler:     yaYUL
061521,000008:                                                                                                 #  Contact:       Onno Hommes <ohommes@alumni.cmu.edu>
061522,000009:                                                                                                 #  Website:       www.ibiblio.org/apollo/index.html
061523,000010:                                                                                                 #  Page scans:    www.ibiblio.org/apollo/ScansForConversion/Colossus237/
061524,000011:                                                                                                 #  Mod history:   2010-05-30 OH   Adapted from corresponding Colossus 249 file.
061525,000012:                                                                                                 #                 2010-12-04 JL   Remove Colossus 249 header comments. Change to double-has page numbers.
061526,000013:                                                                                                 #                 2011-02-07 JL   Minor fixes.
061527,000014: 
061528,000015:                                                                                                 # # Page 1457
061529,000016:                                                                                                 #            THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
061530,000017:                                                                                                 #  EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
061531,000018: 
061532,000019:                                                                                                 #            CALLING SEQUENCE IS AS FOLLOWS:
061533,000020: 
061534,000021:                                                                                                 #           TC     ALARM
061535,000022:                                                                                                 #           OCT    AAANN           ALARM NO. NN IN GENERAL AREA AAA.
061536,000023:                                                                                                 #                                  (RETURNS HERE)
061537,000024: 
061538,000025:    5537                                          BLOCK    02                                    
061539,000026:    4000                                          SETLOC   FFTAG7                                
061540,000027:    4000                                          BANK                                           
061541,000028: 
061542,000029:    5537     0375                                 EBANK=   FAILREG                               
061543,000030: 
061544,000031:    5537                                          COUNT    02/ALARM                              
061545,000032: 
061546,000033:                                                                                                 #  ALARM TURNS ON THE PROGRAM ALARM LIGHT, BUT DOES NOT DISPLAY.
061547,000034: 
061548,000035:    5537           00004        ALARM             INHINT                                         
061549,000036: 
061550,000037:    5540           30002                          CA       Q                                     
061551,000038:    5541           55363        ALARM2            TS       ALMCADR                               
061552,000039:    5542           50002                          INDEX    Q                                     
061553,000040:    5543           30000                          CA       0                                     
061554,000041:    5544           54001        BORTENT           TS       L                                     
061555,000042: 
061556,000043:    5545           30006        PRIOENT           CA       BBANK                                 
061557,000044:    5546           00006                 +1       EXTEND                                         
061558,000045:    5547           04007                          ROR      SUPERBNK                              #  ADD SUPER BITS.
061559,000046:    5550           55364                          TS       ALMCADR    +1                         
061560,000047: 
061561,000048:    5551           30002        LARMENT           CA       Q                                     #  STORE RETURN FOR ALARM
061562,000049:    5552           54061                          TS       ITEMP1                                
061563,000050: 
061564,000051:    5553           10375        CHKFAIL1          CCS      FAILREG                               #  IS ANYTHING IN FAILREG
061565,000052:    5554           15557                          TCF      CHKFAIL2                              #  YES TRY NEXT REG
061566,000053:    5555           22375                          LXCH     FAILREG                               
061567,000054:    5556           15571                          TCF      PROGLARM                              #  TURN ALARM LIGHT ON FOR FIRST ALARM
061568,000055: 
061569,000056:    5557           10376        CHKFAIL2          CCS      FAILREG    +1                         
061570,000057:    5560           15563                          TCF      FAIL3                                 
061571,000058:    5561           22376                          LXCH     FAILREG    +1                         
061572,000059:    5562           15574                          TCF      MULTEXIT                              
061573,000060: 
061574,000061:    5563           30377        FAIL3             CA       FAILREG    +2                         
061575,000062:    5564           74672                          MASK     POSMAX                                
061576,000063:    5565           10000                          CCS      A                                     
061577,000064:    5566           15600                          TCF      MULTFAIL                              
061578,000065:    5567           22377                          LXCH     FAILREG    +2                         
061579,000066:                                                                                                 # # Page 1458
061580,000067:    5570           15574                          TCF      MULTEXIT                              
061581,000068: 
061582,000069:    5571           41036        PROGLARM          CS       DSPTAB     +11D                       
061583,000070:    5572           75612                          MASK     OCT40400                              
061584,000071:    5573           27036                          ADS      DSPTAB     +11D                       
061585,000072: 
061586,000073:    5574           56061        MULTEXIT          XCH      ITEMP1                                #  OBTAIN RETURN ADDRESS IN A
061587,000074:    5575           00003                          RELINT                                         
061588,000075:    5576           50000                          INDEX    A                                     
061589,000076:    5577           00001                          TC       1                                     
061590,000077: 
061591,000078:    5600           30001        MULTFAIL          CA       L                                     
061592,000079:    5601           64674                          AD       BIT15                                 
061593,000080:    5602           54377                          TS       FAILREG    +2                         
061594,000081: 
061595,000082:    5603           15574                          TCF      MULTEXIT                              
061596,000083: 
061597,000084:                                                                                                 #  PRIOLARM DISPLAYS V05N09 VIA PRIODSPR WITH 3 RETURNS TO THE USER FROM THE ASTRONAUT AT CALL LOC +1,+2,+3 AND
061598,000085:                                                                                                 #  AN IMMEDIATE RETURN TO THE USER AT CALL LOC +4. EXAMPLE FOLLOWS,
061599,000086:                                                                                                 #                                                    CAF    OCTXX           ALARM CODE
061600,000087:                                                                                                 #                                                    TC     BANKCALL
061601,000088:                                                                                                 #                                                    CADR   PRIOLARM
061602,000089: 
061603,000090:                                                                                                 #                                                    ...    ...
061604,000091:                                                                                                 #                                                    ...    ...
061605,000092:                                                                                                 #                                                    ...    ...             ASTRONAUT RETURN
061606,000093:                                                                                                 #                                                    TC     PHASCHNG        IMMEDIATE RETURN TO USER. RESTART
061607,000094:                                                                                                 #                                                    OCT    X.1             PHASE CHANGE FOR PRIO DISPLAY
061608,000095: 
061609,000096: 10,3671                                          BANK     10                                    
061610,000097: 10,2000                                          SETLOC   DISPLAYS                              
061611,000098: 10,2000                                          BANK                                           
061612,000099: 
061613,000100: 10,3671                                          COUNT    10/DSPLA                              
061614,000101: 
061615,000102: 10,3671           00004        PRIOLARM          INHINT                                         #  * * * KEEP IN DISPLAY ROUTINES BANK
061616,000103: 10,3672           54001                          TS       L                                     #  SAVE ALARM CODE
061617,000104: 
061618,000105: 10,3673           30133                          CA       BUF2                                  #  2 CADR OF PRIOLARM USER
061619,000106: 10,3674           55363                          TS       ALMCADR                               
061620,000107: 10,3675           30134                          CA       BUF2       +1                         
061621,000108: 10,3676           05546                          TC       PRIOENT    +1                         #  * LEAVE L ALONE
061622,000109: 10,3677           77467        -2SEC             DEC      -200       B-14                       #  *** DONT MOVE
061623,000110: 10,3700           34743                          CAF      V05N09                                
061624,000111: 10,3701           12632                          TCF      PRIODSPR                              
061625,000112: 
061626,000113:    5604                                          BLOCK    02                                    
061627,000114:    4000                                          SETLOC   FFTAG7                                
061628,000115:    4000                                          BANK                                           
061629,000116: 
061630,000117:                                                                                                 # # Page 1459
061631,000118:    5604                                          COUNT    02/ALARM                              
061632,000119: 
061633,000120:    5604           00004        BAILOUT           INHINT                                         
061634,000121:    5605           30002                          CA       Q                                     
061635,000122:    5606           55363                          TS       ALMCADR                               
061636,000123: 
061637,000124:    5607           50002                          INDEX    Q                                     
061638,000125:    5610           30000                          CAF      0                                     
061639,000126:    5611           05544                          TC       BORTENT                               
061640,000127:    5612           40400        OCT40400          OCT      40400                                 
061641,000128: 
061642,000129:    5613           00004                          INHINT                                         
061643,000130:    5614           34711        WHIMPER           CA       TWO                                   
061644,000131:    5615           60005                          AD       Z                                     
061645,000132:    5616           54017                          TS       BRUPT                                 
061646,000133:    5617           50017                          RESUME                                         
061647,000134:    5620           04574                          TC       POSTJUMP                              #  RESUME SENDS CONTROL HERE
061648,000135:    5621           12632                          CADR     ENEMA                                 
061649,000136:    5622           00004        POODOO            INHINT                                         
061650,000137:    5623           30002                          CA       Q                                     
061651,000138:    5624           55363        ABORT2            TS       ALMCADR                               
061652,000139:    5625           50002                          INDEX    Q                                     
061653,000140:    5626           30000                          CAF      0                                     
061654,000141:    5627           05544                          TC       BORTENT                               
061655,000142:    5630           77770        OCT77770          OCT      77770                                 #  DONT MOVE
061656,000143:    5631           44712                          CS       BIT1                                  
061657,000144:    5632           70075                          MASK     FLAGWRD1                              
061658,000145:    5633           54075                          TS       FLAGWRD1                              #  RESET AVEGFLAG
061659,000146:    5634           44705                          CS       BIT6                                  
061660,000147:    5635           70103                          MASK     FLAGWRD7                              
061661,000148:    5636           54103                          TS       FLAGWRD7                              #  RESET V37FLAG
061662,000149: 
061663,000150:    5637           04555                          TC       BANKCALL                              
061664,000151:    5640           12465                          CADR     MR.KLEAN                              
061665,000152:    5641           05614                          TC       WHIMPER                               
061666,000153: 
061667,000154:    5642           00004        CCSHOLE           INHINT                                         
061668,000155:    5643           30002                          CA       Q                                     
061669,000156:    5644           05624                          TC       ABORT2                                
061670,000157:    5645           01103        OCT1103           OCT      1103                                  
061671,000158:    5646           00004        CURTAINS          INHINT                                         
061672,000159:    5647           30002                          CA       Q                                     
061673,000160:    5650           05541                          TC       ALARM2                                
061674,000161:    5651           00217        OCT217            OCT      00217                                 
061675,000162:    5652           01363                          TC       ALMCADR                               #  RETURN TO USER
061676,000163: 
061677,000164:    5653     5112               DOALARM           EQUALS   ENDOFJOB                              
061678,000165:                                                                                                 #  CALLING SEQUENCE FOR VARALARM
061679,000166: 
061680,000167:                                                                                                 #                                                    CAF    (ALARM)
061681,000168:                                                                                                 # # Page 1460
061682,000169:                                                                                                 #                                                    TC     VARALARM
061683,000170: 
061684,000171:                                                                                                 #  VARALARM TURNS ON PROGRAM ALARM LIGHT BUT DOES NOT DISPLAY
061685,000172:    5653           00004        VARALARM          INHINT                                         
061686,000173: 
061687,000174:    5654           54001                          TS       L                                     #  SAVE USERS ALARM CODE
061688,000175: 
061689,000176:    5655           30002                          CA       Q                                     #  SAVE USERS Q
061690,000177:    5656           55363                          TS       ALMCADR                               
061691,000178: 
061692,000179:    5657           05545                          TC       PRIOENT                               
061693,000180:    5660           00014        OCT14             OCT      14                                    #  DONT MOVE
061694,000181: 
061695,000182:    5661           01363                          TC       ALMCADR                               #  RETURN TO USER
061696,000183: 
061697,000184:    5662     5604               ABORT             EQUALS   BAILOUT                               #  *** TEMPORARY UNTIL ABORT CALLS OUT

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