Source Code
![]() |
These source-code files were transcribed from scans made from Don Eyles's personal
copy of BURST120 (SUNBURST 120). They were scanned at archive.org's Boston
facility, and the scanning was sponsored by Mike Stewart. The code was transcribed
from these scans by a team of volunteers who are referenced in the program
comments. Comments from the original source code are in ALL-CAPS, whereas
comments added later in transcription are in Mixed-Case. In some cases, where
similar code blocks exist in previously-transcribed AGC programs (primarily
Luminary 99, from Apollo 11) those code blocks were used as a starting point and
then corrected to agree with the BURST120 scans. The full scans are available
at the Virtual AGC
project's collection at archive.org, while more-convenient reduced-size (but reduced-quality)
images are available at
the main Virtual AGC website. Report any errors noted by creating an
issue report at the Virtual AGC
project's GitHub repository. Notations on the program listing read, in part:YUL SYSTEM FOR AGC: REVISION 0 OF PROGRAM BURST120 BY NASA 2021106-031 DEC 7, 1967 THIS LISTING IS A COPY OF A VERSION OF THE PROGRAM INTENDED FOR USE IN THE ON-BOARD PRIMARY GUIDANCE COMPUTER IN THE UNMANNED FLIGHT OF APOLLO LUNAR MODULE 1 --- THE AS206 MISSION.Note that the date is the date of the printout, not the date of the program revision. |
012766,000002: ## Copyright: Public domain.
012767,000003: ## Filename: ALARM_AND_ABORT.agc
012768,000004: ## Purpose: A module for revision 0 of BURST120 (Sunburst). It
012769,000005: ## is part of the source code for the Lunar Module's
012770,000006: ## (LM) Apollo Guidance Computer (AGC) for Apollo 5.
012771,000007: ## Assembler: yaYUL
012772,000008: ## Contact: Ron Burkey <info@sandroid.org>.
012773,000009: ## Website: www.ibiblio.org/apollo/index.html
012774,000010: ## Mod history: 2016-09-30 RSB Created draft version.
012775,000011: ## 2016-10-14 RSB Transcribed.
012776,000012: ## 2016-10-31 RSB Typos.
012777,000013: ## 2016-12-05 RSB Comment-proofing pass with octopus/ProoferComments completed;
012778,000014: ## changes made.
012779,000015:
![]() |
Page 313 |
012781,000017: # PROGRAM DESCRIPTION DATE- 9 FEB 1967
012782,000018: # PROGRAM WRITTEN BY M.HAMILTON LOG SECTION-ALARM AND ABORT
012783,000019: # MOD BY- R.MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNBURST REV 107
012784,000020:
012785,000021: # FUNCTIONAL DESCRIPTION-
012786,000022: # TO ILLUMINATE THE PROGRAM ALARM LAMP AND DISPLAY OCTAL ALARM OR ABORT
012787,000023: # CODES VIA VERB 15 NOUN 50. OCTAL CODES SUPPLIED BY CALLING ROUTINE.
012788,000024:
012789,000025: # CALLING SEQUENCE-
012790,000026: # L TC ALARM OR ABORT (IN TASK OR JOB)
012791,000027: # L+1 OCT (OCTAL CODE IDENTIFYING CAUSE OF ALARM OR ABORT)
012792,000028:
012793,000029: # NORMAL EXIT MODE-
012794,000030: # TO L+2 OF CALLING SEQUENCE IF ALARM
012795,000031: # (TC TRAP) TO RESTART IF ABORT
012796,000032:
012797,000033: # ALARM OR ABORT EXIT MODE- NONE
012798,000034:
012799,000035: # OUTPUT-
012800,000036: # ALARM OR ABORT OCTAL CODE IN ONE OF FAILREG REGISTERS FOR DISPLAY.
012801,000037:
012802,000038: # ERASABLE INITIALIZATION-
012803,000039: # FAILREG THRU FAILREG +2 ZEROED BY FRESH START.
012804,000040:
012805,000041: # DEBRIS-
012806,000042: # Q,A,L,ALMCADR,ALMCADR +1,RUPTREG4
012807,000043:
012808,000044: 4736 BLOCK 2
012809,000045:
012810,000046: 4736 00004 CCSHOLE INHINT
012811,000047: 4737 30002 CA Q
012812,000048: 4740 55363 TS ALMCADR
012813,000049:
012814,000050: 4741 06003 TC ABORT2
012815,000051: 4742 01103 OCT 1103
012816,000052:
012817,000053: 4743 00004 CURTAINS INHINT # SAVE 2CADR OF USER FOR CURTAINS DISPLAY
012818,000054: 4744 30002 CA Q
012819,000055: 4745 55363 TS ALMCADR
012820,000056:
012821,000057: 4746 04760 TC ALARM2
012822,000058: 4747 00310 OCT 00310
012823,000059:
012824,000060: 4750 00004 JETENTRY INHINT
012825,000061: 4751 34754 CAF CURTBB
012826,000062: 4752 56006 XCH BBANK
012827,000063: 4753 12007 TCF FORGETIT
012828,000064:
012829,000065: 4754 E3,1400 EBANK= LST1
012830,000066: 4754 16063 CURTBB BBCON FORGETIT
012831,000067: 07,2103 BANK 07
![]() |
Page 314 |
012833,000069: 07,2103 04632 LARMLARM TC GRABDSP
012834,000070: 07,2104 15567 TCF ENDOFJOB
012835,000071: 07,2105 12107 TCF DOALARM +1
012836,000072:
012837,000073: 07,2106 04644 DOALARM TC GRABWAIT # DISPLAY FAILREG.
012838,000074: 07,2107 32112 CAF FAILDISP
012839,000075: 07,2110 04657 TC NVSBWAIT
012840,000076:
012841,000077: 07,2111 05566 TC EJFREE # FREE DISPLAY AND END JOB.
012842,000078:
012843,000079: 07,2112 01550 FAILDISP OCT 01550 # MONITOR DISPLAYS 3 FAILREG REGS
012844,000080:
012845,000081: 07,2113 04755 JETABORT TC ALARM
012846,000082: 07,2114 00312 OCT 00312
012847,000083:
012848,000084: 07,2115 14750 TCF JETENTRY
012849,000085:
012850,000086: # ALARM IS CALLED EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL
012851,000087:
012852,000088: # CALLING SEQUENCE,
012853,000089:
012854,000090: # TC ALARM
012855,000091: # OCT AAANN ALARM NO. NN IN GENERAL AREA AAA.
012856,000092:
012857,000093: # (RETURNS HERE)
012858,000094:
012859,000095:
012860,000096: 4755 BLOCK 02
012861,000097: 4755 00004 ALARM INHINT
012862,000098:
012863,000099: 4756 30002 CA Q
012864,000100: 4757 55363 TS ALMCADR
012865,000101:
012866,000102: 4760 50002 ALARM2 INDEX Q
012867,000103: 4761 30000 CA 0
012868,000104: 4762 54001 BORTENT TS L # STORE RETURN -1 IN L
012869,000105:
012870,000106: 4763 30006 CA BBANK
012871,000107: 4764 55364 TS ALMCADR +1
012872,000108:
012873,000109: 4765 30002 CA Q
012874,000110: 4766 54073 TS RUPTREG4
012875,000111:
012876,000112: 4767 11360 CHKFAIL1 CCS FAILREG # IS ANYTHING IN FAILREG
012877,000113: 4770 14773 TCF CHKFAIL2 # YES TRY NEXT REG
012878,000114: 4771 23360 LXCH FAILREG
012879,000115: 4772 15005 TCF PROGLARM # TURN ALARM LIGHT ON FOR FIRST ALARM
012880,000116:
012881,000117: 4773 11361 CHKFAIL2 CCS FAILREG +1
![]() |
Page 315 |
012883,000119: 4774 14777 TCF FAIL3
012884,000120: 4775 23361 LXCH FAILREG +1
012885,000121: 4776 15010 TCF ARMDSPON # LIGHT ALREADY ON
012886,000122:
012887,000123: 4777 31362 FAIL3 CA FAILREG +2
012888,000124: 5000 77743 MASK POSMAX
012889,000125: 5001 10000 CCS A
012890,000126: 5002 15020 TCF MULTFAIL
012891,000127: 5003 23362 LXCH FAILREG +2
012892,000128: 5004 15010 TCF ARMDSPON # LAST DISPLAY TURN ON UNTIL ERR RESET
012893,000129:
012894,000130: 5005 40326 PROGLARM CS DSPTAB +11D
012895,000131: 5006 76006 MASK OCT40400
012896,000132: 5007 26326 ADS DSPTAB +11D
012897,000133:
012898,000134: 5010 35660 ARMDSPON CAF PRIO37
012899,000135: 5011 05505 TC NOVAC
012900,000136: 5012 1360 EBANK= FAILREG
012901,000137: 5012 02103 16062 2CADR LARMLARM
012902,000138:
012903,000139: 5014 56073 MULTEXIT XCH RUPTREG4
012904,000140: 5015 00003 RELINT
012905,000141: 5016 50000 INDEX A
012906,000142: 5017 00001 TC 1
012907,000143:
012908,000144: 5020 30001 MULTFAIL CA L
012909,000145: 5021 67745 AD BIT15
012910,000146: 5022 57362 XCH FAILREG +2
012911,000147: 5023 77743 MASK POSMAX
012912,000148: 5024 55361 TS FAILREG +1
012913,000149:
012914,000150: 5025 15014 TCF MULTEXIT
012915,000151:
012916,000152: 6000 BLOCK 03
012917,000153: 6000 00004 ABORT INHINT
012918,000154: 6001 30002 CA Q
012919,000155: 6002 55363 TS ALMCADR
012920,000156:
012921,000157: 6003 50002 ABORT2 INDEX Q
012922,000158: 6004 30000 CAF 0
012923,000159: 6005 04762 TC BORTENT
012924,000160: 6006 40400 OCT40400 OCT 40400
012925,000161: 6007 47750 CS BIT12 # PUT RESTARTABILITY FLAG DOWN & GENERATE
012926,000162: 6010 70075 MASK FLAGWRD1 # A RESTART TO YIELD A FAKESTRT.
012927,000163: 6011 54075 TS FLAGWRD1
012928,000164: 6012 16012 WHIMPER TCF WHIMPER
012929,000165:
End of include-file ALARM_AND_ABORT.agc. Parent file is MAIN.agc