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