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