Source Code

These source-code files were obtained by digitally photographing an Artemis 72 program listing from a private collection and then modifying pre-existing Comanche 55 (Apollo 11) source files to incorporate changes. Note that the page images presented online are of reduced quality, and that additional images may be 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 072 OF AGC PROGRAM ARTEMIS 
	BY NASA 2021114-011 11:40 FEB. 26, 1971

	THIS AGC PROGRAM SHALL ALSO BE REFERRED TO AS
				COLOSSUS 3
	THIS PROGRAM IS INTENDED FOR USE IN THE CM AS SPECIFIED
	IN REPORT R-577.  THIS PROGRAM WAS PREPARED UNDER OSR
	PROJECT 55-23890, SPONSORED BY THE MANNED SPACECRAFT
	CENTER OF THE NATIONAL AERONAUTICS AND SPACE
	ADMINISTRATION THROUGH CONTRACT NAS 9-4065 WITH THE
	CHARLES STARK DRAPER LABORATORY, MASSACHUSETTS INSTITUTE OF
	TECHNOLOGY, CAMBRIDGE, MASS.

063454,000002:                                                                                                 #  Copyright:     Public domain.
063455,000003:                                                                                                 #  Filename:      ALARM_AND_ABORT.agc
063456,000004:                                                                                                 #  Purpose:       Part of the source code for Artemis (i.e., Colossus 3),
063457,000005:                                                                                                 #                 build 072.  This is for the Command Module's (CM)
063458,000006:                                                                                                 #                 Apollo Guidance Computer (AGC), we believe for
063459,000007:                                                                                                 #                 Apollo 15-17.
063460,000008:                                                                                                 #  Assembler:     yaYUL
063461,000009:                                                                                                 #  Contact:       Jim Lawton <jim DOT lawton AT gmail DOT com>
063462,000010:                                                                                                 #  Website:       www.ibiblio.org/apollo/index.html
063463,000011:                                                                                                 #  Page scans:    www.ibiblio.org/apollo/ScansForConversion/Artemis072/
063464,000012:                                                                                                 #  Mod history:   2009-08-18 JL   Adapted from corresponding Comanche 055 file.
063465,000013:                                                                                                 #                 2010-02-10 JL   Fixed error on p1488.
063466,000014:                                                                                                 #                 2010-02-20 RSB  Un-##'d this header.
063467,000015: 
063468,000016:                                                                                                 # # Page 1486
063469,000017: 
063470,000018:                                                                                                 #  THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
063471,000019:                                                                                                 #  EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
063472,000020: 
063473,000021:                                                                                                 #         CALLING SEQUENCE IS AS FOLLOWS:
063474,000022: 
063475,000023:                                                                                                 #         TC      ALARM
063476,000024:                                                                                                 #         OCT     NNNNN
063477,000025:                                                                                                 #                                 (RETURNS HERE)
063478,000026: 
063479,000027:    4000                                          SETLOC   FFTAG7                                
063480,000028:    4000                                          BANK                                           
063481,000029: 
063482,000030:    5671     0375                                 EBANK=   FAILREG                               
063483,000031: 
063484,000032:    5671                                          COUNT*   $$/ALARM                              
063485,000033: 
063486,000034:                                                                                                 #  ALARM TURNS ON THE PROGRAM ALARM LIGHT, BUT DOES NOT DISPLAY.
063487,000035: 
063488,000036:    5671           00004        ALARM             INHINT                                         
063489,000037: 
063490,000038:    5672           30002                          CA       Q                                     
063491,000039:    5673           55363        ALARM2            TS       ALMCADR                               
063492,000040:    5674           50002                          INDEX    Q                                     
063493,000041:    5675           30000                          CA       0                                     
063494,000042:    5676           54001        BORTENT           TS       L                                     
063495,000043: 
063496,000044:    5677           30006        PRIOENT           CA       BBANK                                 
063497,000045:    5700           00006                 +1       EXTEND                                         
063498,000046:    5701           04007                          ROR      SUPERBNK                              #  ADD SUPER BITS.
063499,000047:    5702           55364                          TS       ALMCADR    +1                         
063500,000048: 
063501,000049:    5703           30002        LARMENT           CA       Q                                     #  STORE RETURN FOR ALARM
063502,000050:    5704           54061                          TS       ITEMP1                                
063503,000051: 
063504,000052:    5705           10375        CHKFAIL1          CCS      FAILREG                               #  IS ANYTHING IN FAILREG
063505,000053:    5706           15712                          TCF      CHKFAIL2                              #  YES TRY NEXT REG
063506,000054:    5707           30001                          CA       L                                     
063507,000055:    5710           54375                          TS       FAILREG                               
063508,000056:    5711           15716                          TCF      PROGLARM                              #  TURN ALARM LIGHT ON FOR FIRST ALARM
063509,000057: 
063510,000058:    5712           10376        CHKFAIL2          CCS      FAILREG    +1                         
063511,000059:    5713           15716                          TCF      PROGLARM                              
063512,000060:    5714           30001                          CA       L                                     
063513,000061:    5715           54376                          TS       FAILREG    +1                         
063514,000062: 
063515,000063:    5716           22377        PROGLARM          LXCH     FAILREG    +2                         #  STORE AS "MOST RECENT" ALARM CODE
063516,000064: 
063517,000065:    5717           41241                          CS       DSPTAB     +11D                       #  TURN ON PROGRAM ALARM IF OFF
063518,000066:    5720           77716                          MASK     BIT15+9                               
063519,000067:    5721           27241                          ADS      DSPTAB     +11D                       
063520,000068: 
063521,000069:    5722           56061        MULTEXIT          XCH      ITEMP1                                #  OBTAIN RETURN ADDRESS IN A
063522,000070:                                                                                                 # # Page 1487
063523,000071:    5723           00003                          RELINT                                         
063524,000072:    5724           50000                          INDEX    A                                     
063525,000073:    5725           00001                          TC       1                                     
063526,000074: 
063527,000075:                                                                                                 #  PRIOLARM DISPLAYS V05N09 VIA PRIODSPR WITH 3 RETURNS TO THE USER FROM THE ASTRONAUT AT CALL LOC +1,+2,+3 AND
063528,000076:                                                                                                 #  AN IMMEDIATE RETURN TO THE USER AT CALL LOC +4. EXAMPLE FOLLOWS,
063529,000077:                                                                                                 #                 CAF     OCTXX           # ALARM CODE
063530,000078:                                                                                                 #                 TC      BANKCALL
063531,000079:                                                                                                 #                 CADR    PRIOLARM
063532,000080: 
063533,000081:                                                                                                 #                 ...     ...
063534,000082:                                                                                                 #                 ...     ...
063535,000083:                                                                                                 #                 ...     ...             # ASTRONAUT RETURN
063536,000084:                                                                                                 #                 TC      PHASCHNG        # IMMEDIATE RETURN TO USER. RESTART
063537,000085:                                                                                                 #                 OCT     X.1             # PHASE CHANGE FOR PRIO DISPLAY
063538,000086: 
063539,000087: 10,2000                                          SETLOC   DISPLAYS                              
063540,000088: 10,2000                                          BANK                                           
063541,000089: 
063542,000090: 10,3766                                          COUNT*   $$/DSPLA                              
063543,000091: 10,3766           00004        PRIOLARM          INHINT                                         #  * * * KEEP IN DISPLAY ROUTINES BANK
063544,000092: 10,3767           54001                          TS       L                                     #  SAVE ALARM CODE
063545,000093: 
063546,000094: 10,3770           30133                          CA       BUF2                                  #  2 CADR OF PRIOLARM USER
063547,000095: 10,3771           55363                          TS       ALMCADR                               
063548,000096: 10,3772           30134                          CA       BUF2       +1                         
063549,000097: 10,3773           05700                          TC       PRIOENT    +1                         #  * LEAVE L ALONE
063550,000098: 10,3774           77467        -2SEC             DEC      -200       B-14                       #  *** DONT MOVE
063551,000099: 10,3775           35023                          CAF      V05N09                                
063552,000100: 10,3776           12750                          TCF      PRIODSPR                              
063553,000101: 
063554,000102:    6000                                          SETLOC   FFTAG13                               
063555,000103:    6000                                          BANK                                           
063556,000104: 
063557,000105:    7706                                          COUNT*   $$/ALARM                              
063558,000106:    7706           00004        BAILOUT           INHINT                                         
063559,000107:    7707           30002                          CA       Q                                     
063560,000108:    7710           55363                          TS       ALMCADR                               
063561,000109: 
063562,000110:    7711           04636                          TC       BANKCALL                              
063563,000111:    7712           40000                          CADR     VAC5STOR                              
063564,000112: 
063565,000113:    7713           51363                          INDEX    ALMCADR                               
063566,000114:    7714           30000                          CAF      0                                     
063567,000115:    7715           05676                          TC       BORTENT                               
063568,000116:    7716           40400        BIT15+9           OCT      40400                                 
063569,000117: 
063570,000118:    7717           00004                 -1       INHINT                                         
063571,000119:    7720           34767        WHIMPER           CA       TWO                                   
063572,000120:    7721           60005                          AD       Z                                     
063573,000121:                                                                                                 # # Page 1488
063574,000122:    7722           54017                          TS       BRUPT                                 
063575,000123:    7723           50017                          RESUME                                         
063576,000124:    7724           04655                          TC       POSTJUMP                              #  RESUME SENDS CONTROL HERE
063577,000125:    7725           12712                          CADR     ENEMA                                 
063578,000126: 
063579,000127:    4000                                          SETLOC   FFTAG7                                
063580,000128:    4000                                          COUNT*   $$/ALARM                              
063581,000129:    4000                                          BANK                                           
063582,000130: 
063583,000131:    5726           00004        POODOO            INHINT                                         
063584,000132:    5727           30002                          CA       Q                                     
063585,000133:    5730           55363                          TS       ALMCADR                               
063586,000134: 
063587,000135:    5731           04636                          TC       BANKCALL                              
063588,000136:    5732           40000                          CADR     VAC5STOR                              #  STORE ERASABLES FOR DEBUGGING PURPOSES.
063589,000137: 
063590,000138:    5733           51363                          INDEX    ALMCADR                               
063591,000139:    5734           30000                          CAF      0                                     
063592,000140:    5735           05676        ABORT2            TC       BORTENT                               
063593,000141: 
063594,000142:    5736           77770        OCT77770          OCT      77770                                 #  DONT MOVE
063595,000143:    5737           34763                          CA       V37FLBIT                              #  IS AVERAGE G ON
063596,000144:    5740           70103                          MASK     FLAGWRD7                              
063597,000145:    5741           10000                          CCS      A                                     
063598,000146:    5742           07717                          TC       WHIMPER    -1                         #  YES.  DONT DO POODOO.  DO BAILOUT.
063599,000147: 
063600,000148:    5743           44753                          CS       BIT14                                 #  DISREGARD ENTRY SETTING
063601,000149:    5744           71247                          MASK     EXTVBACT                              #  EXTENDED VBS ACTIVITY?
063602,000150:    5745           10000                          CCS      A                                     
063603,000151:    5746           17717                          TCF      WHIMPER    -1                         #  YES.  DONT DO POODOO.  DO BAILOUT.
063604,000152: 
063605,000153:    5747           05561                          TC       DOWNFLAG                              
063606,000154:    5750           00067                          ADRES    STATEFLG                              
063607,000155: 
063608,000156:    5751           05561                          TC       DOWNFLAG                              
063609,000157:    5752           00236                          ADRES    AUTOSEQ                               
063610,000158: 
063611,000159:    5753           05561                          TC       DOWNFLAG                              
063612,000160:    5754           00230                          ADRES    REINTFLG                              
063613,000161: 
063614,000162:    5755           05561                          TC       DOWNFLAG                              
063615,000163:    5756           00176                          ADRES    UTFLAG                                
063616,000164:    5757           05561                          TC       DOWNFLAG                              
063617,000165:    5760           00010                          ADRES    RNDVZFLG                              
063618,000166:    5761           05561                          TC       DOWNFLAG                              
063619,000167:    5762           00031                          ADRES    TRACKFLG                              #  FORCE STOPRATE
063620,000168:    5763           05561                          TC       DOWNFLAG                              
063621,000169:    5764           00054                          ADRES    NODOFLAG                              
063622,000170: 
063623,000171:    5765           04636                          TC       BANKCALL                              
063624,000172:                                                                                                 # # Page 1489
063625,000173:    5766           12536                          CADR     MR.KLEAN                              
063626,000174:    5767           07720                          TC       WHIMPER                               
063627,000175: 
063628,000176:    5770     5205               DOALARM           EQUALS   ENDOFJOB                              
063629,000177: 
063630,000178:                                                                                                 #  CALLING SEQUENCE FOR VARALARM
063631,000179:                                                                                                 #                 CAF     (ALARM)
063632,000180:                                                                                                 #                 TC      VARALARM
063633,000181: 
063634,000182:                                                                                                 #  VARALARM TURNS ON PROGRAM ALARM LIGHT BUT DOES NOT DISPLAY
063635,000183: 
063636,000184:    5770           00004        VARALARM          INHINT                                         
063637,000185: 
063638,000186:    5771           54001                          TS       L                                     #  SAVE USERS ALARM CODE
063639,000187: 
063640,000188:    5772           30002                          CA       Q                                     #  SAVE USERS Q
063641,000189:    5773           55363                          TS       ALMCADR                               
063642,000190: 
063643,000191:    5774           05677                          TC       PRIOENT                               
063644,000192:    5775           00014        OCT14             OCT      14                                    #  DONT MOVE
063645,000193: 
063646,000194:    5776           01363                          TC       ALMCADR                               #  RETURN TO USER
063647,000195: 
063648,000196:    5777     7706               ABORT             EQUALS   BAILOUT                               #  *** TEMPORARY UNTIL ABORT CALLS OUT

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