Source Code
These source-code files were obtained by digitally photographing
an Artemis 72 (Apollo 15-17 Command Module) program listing from a private
collection and then
modifying pre-existing Comanche 55 (Apollo 11) source files to
incorporate changes. Photography was by Ron Burkey, and transcription
was performed by a team of volunteers. 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, 1971Note that the date is the date of the printout, not the date of the program revision. |
063780,000002: ## Copyright: Public domain.
063781,000003: ## Filename: ALARM_AND_ABORT.agc
063782,000004: ## Purpose: Part of the source code for Artemis (i.e., Colossus 3),
063783,000005: ## build 072. This is for the Command Module's (CM)
063784,000006: ## Apollo Guidance Computer (AGC), for
063785,000007: ## Apollo 15-17.
063786,000008: ## Assembler: yaYUL
063787,000009: ## Contact: Jim Lawton <jim DOT lawton AT gmail DOT com>
063788,000010: ## Website: www.ibiblio.org/apollo/index.html
063789,000011: ## Page Scans: www.ibiblio.org/apollo/ScansForConversion/Artemis072/
063790,000012: ## Mod history: 2009-08-18 JL Adapted from corresponding Comanche 055 file.
063791,000013: ## 2010-02-10 JL Fixed error on p1488.
063792,000014: ## 2010-02-20 RSB Un-##'d this header.
063793,000015: ## 2017-01-21 RSB Proofed comment text by diff'ing vs Comanche 55
063794,000016: ## and corrected errors found.
063795,000017:
Page 1486 |
063797,000019:
063798,000020: # THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
063799,000021: # EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
063800,000022:
063801,000023: # CALLING SEQUENCE IS AS FOLLOWS:
063802,000024:
063803,000025: # TC ALARM
063804,000026: # OCT NNNNN
063805,000027: # (RETURNS HERE)
063806,000028:
063807,000029: 4000 SETLOC FFTAG7
063808,000030: 4000 BANK
063809,000031:
063810,000032: 5671 0375 EBANK= FAILREG
063811,000033:
063812,000034: 5671 COUNT* $$/ALARM
063813,000035:
063814,000036: # ALARM TURNS ON THE PROGRAM ALARM LIGHT, BUT DOES NOT DISPLAY.
063815,000037:
063816,000038: 5671 00004 ALARM INHINT
063817,000039:
063818,000040: 5672 30002 CA Q
063819,000041: 5673 55363 ALARM2 TS ALMCADR
063820,000042: 5674 50002 INDEX Q
063821,000043: 5675 30000 CA 0
063822,000044: 5676 54001 BORTENT TS L
063823,000045:
063824,000046: 5677 30006 PRIOENT CA BBANK
063825,000047: 5700 00006 +1 EXTEND
063826,000048: 5701 04007 ROR SUPERBNK # ADD SUPER BITS.
063827,000049: 5702 55364 TS ALMCADR +1
063828,000050:
063829,000051: 5703 30002 LARMENT CA Q # STORE RETURN FOR ALARM
063830,000052: 5704 54061 TS ITEMP1
063831,000053:
063832,000054: 5705 10375 CHKFAIL1 CCS FAILREG # IS ANYTHING IN FAILREG
063833,000055: 5706 15712 TCF CHKFAIL2 # YES TRY NEXT REG
063834,000056: 5707 30001 CA L
063835,000057: 5710 54375 TS FAILREG
063836,000058: 5711 15716 TCF PROGLARM # TURN ALARM LIGHT ON FOR FIRST ALARM
063837,000059:
063838,000060: 5712 10376 CHKFAIL2 CCS FAILREG +1
063839,000061: 5713 15716 TCF PROGLARM
063840,000062: 5714 30001 CA L
063841,000063: 5715 54376 TS FAILREG +1
063842,000064:
063843,000065: 5716 22377 PROGLARM LXCH FAILREG +2 # STORE AS "MOST RECENT" ALARM CODE
063844,000066:
063845,000067: 5717 41241 CS DSPTAB +11D # TURN ON PROGRAM ALARM IF OFF
063846,000068: 5720 77716 MASK BIT15+9
063847,000069: 5721 27241 ADS DSPTAB +11D
063848,000070:
063849,000071: 5722 56061 MULTEXIT XCH ITEMP1 # OBTAIN RETURN ADDRESS IN A
Page 1487 |
063851,000073: 5723 00003 RELINT
063852,000074: 5724 50000 INDEX A
063853,000075: 5725 00001 TC 1
063854,000076:
063855,000077: # PRIOLARM DISPLAYS V05N09 VIA PRIODSPR WITH 3 RETURNS TO THE USER FROM THE ASTRONAUT AT CALL LOC +1,+2,+3 AND
063856,000078: # AN IMMEDIATE RETURN TO THE USER AT CALL LOC +4. EXAMPLE FOLLOWS,
063857,000079: # CAF OCTXX ALARM CODE
063858,000080: # TC BANKCALL
063859,000081: # CADR PRIOLARM
063860,000082:
063861,000083: # ... ...
063862,000084: # ... ...
063863,000085: # ... ... ASTRONAUT RETURN
063864,000086: # TC PHASCHNG IMMEDIATE RETURN TO USER. RESTART
063865,000087: # OCT X.1 PHASE CHANGE FOR PRIO DISPLAY
063866,000088:
063867,000089: 10,2000 SETLOC DISPLAYS
063868,000090: 10,2000 BANK
063869,000091:
063870,000092: 10,3766 COUNT* $$/DSPLA
063871,000093: 10,3766 00004 PRIOLARM INHINT # * * * KEEP IN DISPLAY ROUTINES BANK
063872,000094: 10,3767 54001 TS L # SAVE ALARM CODE
063873,000095:
063874,000096: 10,3770 30133 CA BUF2 # 2 CADR OF PRIOLARM USER
063875,000097: 10,3771 55363 TS ALMCADR
063876,000098: 10,3772 30134 CA BUF2 +1
063877,000099: 10,3773 05700 TC PRIOENT +1 # * LEAVE L ALONE
063878,000100: 10,3774 77467 -2SEC DEC -200 B-14 # *** DONT MOVE
063879,000101: 10,3775 35023 CAF V05N09
063880,000102: 10,3776 12750 TCF PRIODSPR
063881,000103:
063882,000104: 6000 SETLOC FFTAG13
063883,000105: 6000 BANK
063884,000106:
063885,000107: 7706 COUNT* $$/ALARM
063886,000108: 7706 00004 BAILOUT INHINT
063887,000109: 7707 30002 CA Q
063888,000110: 7710 55363 TS ALMCADR
063889,000111:
063890,000112: 7711 04636 TC BANKCALL
063891,000113: 7712 40000 CADR VAC5STOR
063892,000114:
063893,000115: 7713 51363 INDEX ALMCADR
063894,000116: 7714 30000 CAF 0
063895,000117: 7715 05676 TC BORTENT
063896,000118: 7716 40400 BIT15+9 OCT 40400
063897,000119:
063898,000120: 7717 00004 -1 INHINT
063899,000121: 7720 34767 WHIMPER CA TWO
063900,000122: 7721 60005 AD Z
Page 1488 |
063902,000124: 7722 54017 TS BRUPT
063903,000125: 7723 50017 RESUME
063904,000126: 7724 04655 TC POSTJUMP # RESUME SENDS CONTROL HERE
063905,000127: 7725 12712 CADR ENEMA
063906,000128:
063907,000129: 4000 SETLOC FFTAG7
063908,000130: 4000 COUNT* $$/ALARM
063909,000131: 4000 BANK
063910,000132:
063911,000133: 5726 00004 POODOO INHINT
063912,000134: 5727 30002 CA Q
063913,000135: 5730 55363 TS ALMCADR
063914,000136:
063915,000137: 5731 04636 TC BANKCALL
063916,000138: 5732 40000 CADR VAC5STOR # STORE ERASABLES FOR DEBUGGING PURPOSES.
063917,000139:
063918,000140: 5733 51363 INDEX ALMCADR
063919,000141: 5734 30000 CAF 0
063920,000142: 5735 05676 ABORT2 TC BORTENT
063921,000143:
063922,000144: 5736 77770 OCT77770 OCT 77770 # DONT MOVE
063923,000145: 5737 34763 CA V37FLBIT # IS AVERAGE G ON
063924,000146: 5740 70103 MASK FLAGWRD7
063925,000147: 5741 10000 CCS A
063926,000148: 5742 07717 TC WHIMPER -1 # YES. DONT DO POODOO. DO BAILOUT.
063927,000149:
063928,000150: 5743 44753 CS BIT14 # DISREGARD ENTRY SETTING
063929,000151: 5744 71247 MASK EXTVBACT # EXTENDED VBS ACTIVE?
063930,000152: 5745 10000 CCS A
063931,000153: 5746 17717 TCF WHIMPER -1 # YES DONT DO POODOO DO BAILOUT
063932,000154:
063933,000155: 5747 05561 TC DOWNFLAG
063934,000156: 5750 00067 ADRES STATEFLG
063935,000157:
063936,000158: 5751 05561 TC DOWNFLAG
063937,000159: 5752 00236 ADRES AUTOSEQ
063938,000160:
063939,000161: 5753 05561 TC DOWNFLAG
063940,000162: 5754 00230 ADRES REINTFLG
063941,000163:
063942,000164: 5755 05561 TC DOWNFLAG
063943,000165: 5756 00176 ADRES UTFLAG
063944,000166: 5757 05561 TC DOWNFLAG
063945,000167: 5760 00010 ADRES RNDVZFLG
063946,000168: 5761 05561 TC DOWNFLAG
063947,000169: 5762 00031 ADRES TRACKFLG # FORCE STOPRATE
063948,000170: 5763 05561 TC DOWNFLAG
063949,000171: 5764 00054 ADRES NODOFLAG
063950,000172:
063951,000173: 5765 04636 TC BANKCALL
Page 1489 |
063953,000175: 5766 12536 CADR MR.KLEAN
063954,000176: 5767 07720 TC WHIMPER
063955,000177:
063956,000178: 5770 5205 DOALARM EQUALS ENDOFJOB
063957,000179:
063958,000180: # CALLING SEQUENCE FOR VARALARM
063959,000181: # CAF (ALARM)
063960,000182: # TC VARALARM
063961,000183:
063962,000184: # VARALARM TURNS ON PROGRAM ALARM LIGHT BUT DOES NOT DISPLAY
063963,000185:
063964,000186: 5770 00004 VARALARM INHINT
063965,000187:
063966,000188: 5771 54001 TS L # SAVE USERS ALARM CODE
063967,000189:
063968,000190: 5772 30002 CA Q # SAVE USERS Q
063969,000191: 5773 55363 TS ALMCADR
063970,000192:
063971,000193: 5774 05677 TC PRIOENT
063972,000194: 5775 00014 OCT14 OCT 14 # DONT MOVE
063973,000195:
063974,000196: 5776 01363 TC ALMCADR # RETURN TO USER
063975,000197:
063976,000198: 5777 7706 ABORT EQUALS BAILOUT # *** TEMPORARY UNTIL ABORT CALLS OUT
End of include-file ALARM_AND_ABORT.agc. Parent file is MAIN.agc