Source Code
These source code files are an attempted reconstruction of Sundance revision 306, the Apollo 9
LM (Lunar Module) AGC (Apollo Guidance Computer) flight software, created from binary dumps of
original core rope program modules, as follows:
|
054465,000002: ## Copyright: Public domain.
054466,000003: ## Filename: ALARM_AND_ABORT.agc
054467,000004: ## Purpose: A section of an attempt to reconstruct Sundance revision 306
054468,000005: ## as closely as possible with available information. Sundance
054469,000006: ## 306 is the source code for the Lunar Module's (LM) Apollo
054470,000007: ## Guidance Computer (AGC) for Apollo 9. This program was created
054471,000008: ## using the mixed-revision SundanceXXX as a starting point, and
054472,000009: ## pulling back features from Luminary 69 believed to have been
054473,000010: ## added based on memos, checklists, observed address changes,
054474,000011: ## or the Sundance GSOPs.
054475,000012: ## Assembler: yaYUL
054476,000013: ## Contact: Ron Burkey <info@sandroid.org>.
054477,000014: ## Website: www.ibiblio.org/apollo/index.html
054478,000015: ## Mod history: 2020-07-24 MAS Created from SundanceXXX.
054479,000016:
054480,000017:
054481,000018:
054482,000019: # THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
054483,000020: # EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
054484,000021:
054485,000022: # CALLING SEQUENCE IS AS FOLLOWS:
054486,000023: # TC ALARM
054487,000024: # OCT AAANN ALARM NO. NN IN GENERAL AREA AAA.
054488,000025: # (RETURNS HERE)
054489,000026:
054490,000027: 5651 BLOCK 02
054491,000028: 4000 SETLOC FFTAG7
054492,000029: 4000 BANK
054493,000030:
054494,000031: 5651 0375 EBANK= FAILREG
054495,000032:
054496,000033: 5651 COUNT* $$/ALARM
054497,000034: # ALARM TURNS ON THE PROGRAM ALARM LIGHT, BUT DOES NOT DISPLAY.
054498,000035:
054499,000036: 5651 00004 ALARM INHINT
054500,000037:
054501,000038: 5652 30002 CA Q
054502,000039: 5653 55363 TS ALMCADR
054503,000040: 5654 50002 ALARM2 INDEX Q
054504,000041: 5655 30000 CA 0
054505,000042: 5656 54001 BORTENT TS L
054506,000043:
054507,000044: 5657 30006 PRIOENT CA BBANK
054508,000045: 5660 00006 +1 EXTEND
054509,000046: 5661 04007 ROR SUPERBNK # ADD SUPER BITS.
054510,000047: 5662 55364 TS ALMCADR +1
054511,000048:
054512,000049: 5663 30002 LARMENT CA Q # STORE RETURN FOR ALARM
054513,000050: 5664 54061 TS ITEMP1
054514,000051:
054515,000052: 5665 10375 CHKFAIL1 CCS FAILREG # IS ANYTHING IN FAILREG
054516,000053: 5666 15671 TCF CHKFAIL2 # YES TRY NEXT REG
054517,000054: 5667 22375 LXCH FAILREG
054518,000055: 5670 15703 TCF PROGLARM # TURN ALARM LIGHT ON FOR FIRST ALARM
054519,000056:
054520,000057: 5671 10376 CHKFAIL2 CCS FAILREG +1
054521,000058: 5672 15675 TCF FAIL3
054522,000059: 5673 22376 LXCH FAILREG +1
054523,000060: 5674 15706 TCF MULTEXIT
054524,000061:
054525,000062: 5675 30377 FAIL3 CA FAILREG +2
054526,000063: 5676 75006 MASK POSMAX
054527,000064: 5677 10000 CCS A
054528,000065: 5700 15712 TCF MULTFAIL
054529,000066: 5701 22377 LXCH FAILREG +2
054530,000067: 5702 15706 TCF MULTEXIT
054531,000068:
054532,000069:
054533,000070: 5703 41037 PROGLARM CS DSPTAB +11D
054534,000071: 5704 75724 MASK OCT40400
054535,000072: 5705 27037 ADS DSPTAB +11D
054536,000073:
054537,000074: 5706 56061 MULTEXIT XCH ITEMP1 # OBTAIN RETURN ADDRESS IN A
054538,000075: 5707 00003 RELINT
054539,000076: 5710 50000 INDEX A
054540,000077: 5711 00001 TC 1
054541,000078:
054542,000079: 5712 30001 MULTFAIL CA L
054543,000080: 5713 65010 AD BIT15
054544,000081: 5714 54377 TS FAILREG +2
054545,000082:
054546,000083: 5715 15706 TCF MULTEXIT
054547,000084:
054548,000085:
054549,000086: # PRIOLARM DISPLAYS V05N09 VIA PRIODSPR WITH 3 RETURNS TO THE USER FROM THE ASTRONAUT AT CALL LOC +1,+2,+3 AND
054550,000087: # AN IMMEDIATE RETURN TO THE USER AT CALL LOC +4. EXAMPLE FOLLOWS,
054551,000088: # CAF OCTXX ALARM CODE
054552,000089: # TC BANKCALL
054553,000090: # CADR PRIOLARM
054554,000091:
054555,000092: # ... ...
054556,000093: # ... ...
054557,000094: # ... ... ASTRONAUT RETURN
054558,000095: # TC PHASCHNG IMMEDIATE RETURN TO USER. RESTART
054559,000096: # OCT X.1 PHASE CHANGE FOR PRIO DISPLAY
054560,000097:
054561,000098: 10,3443 BANK 10
054562,000099: 10,2000 SETLOC DISPLAYS
054563,000100: 10,2000 BANK
054564,000101:
054565,000102: 10,3443 COUNT* $$/DSPLA
054566,000103: 10,3443 00004 PRIOLARM INHINT # * * * KEEP IN DISPLAY ROUTINES BANK
054567,000104: 10,3444 54001 TS L # SAVE ALARM CODE
054568,000105:
054569,000106: 10,3445 30133 CA BUF2 # 2 CADR OF PRIOLARM USER
054570,000107: 10,3446 55363 TS ALMCADR
054571,000108: 10,3447 30134 CA BUF2 +1
054572,000109: 10,3450 05660 TC PRIOENT +1 # * LEAVE L ALONE
054573,000110: 10,3451 77013 -5SEC DEC -500 B-14 # *** DONT MOVE
054574,000111: 10,3452 35056 CAF V05N09
054575,000112: 10,3453 12414 TCF PRIODSPR
054576,000113:
054577,000114:
054578,000115: 5716 BLOCK 02
054579,000116: 4000 SETLOC FFTAG7
054580,000117: 4000 BANK
054581,000118:
054582,000119: 5716 COUNT* $$/ALARM
054583,000120: 5716 00004 ABORT INHINT
054584,000121: 5717 30002 CA Q
054585,000122: 5720 55363 TS ALMCADR
054586,000123:
054587,000124: 5721 50002 ABORT2 INDEX Q
054588,000125: 5722 30000 CAF 0
054589,000126: 5723 05656 TC BORTENT
054590,000127: 5724 40400 OCT40400 OCT 40400
054591,000128: 5725 05725 WHIMPER TC WHIMPER
054592,000129:
054593,000130: 5726 00004 CCSHOLE INHINT
054594,000131: 5727 30002 CA Q
054595,000132: 5730 55363 TS ALMCADR
054596,000133:
054597,000134: 5731 05721 TC ABORT2
054598,000135: 5732 01103 OCT 1103
054599,000136:
054600,000137: 5733 00004 CURTAINS INHINT
054601,000138: 5734 30002 CA Q
054602,000139: 5735 55363 TS ALMCADR
054603,000140: 5736 05654 TC ALARM2
054604,000141: 5737 00217 OCT217 OCT 00217
054605,000142: 5740 01363 TC ALMCADR # RETURN TO USER
054606,000143:
054607,000144: # CALLING SEQUENCE FOR VARALARM
054608,000145: # CAF (ALARM)
054609,000146: # TC VARALARM
054610,000147:
054611,000148: # VARALARM TURNS ON PROGRAM ALARM LIGHT BUT DOES NOT DISPLAY
054612,000149:
054613,000150: 5741 00004 VARALARM INHINT
054614,000151:
054615,000152: 5742 54001 TS L # SAVE USERS ALARM CODE
054616,000153:
054617,000154: 5743 30002 CA Q # SAVE USERS Q
054618,000155: 5744 55363 TS ALMCADR
054619,000156:
054620,000157: 5745 05657 TC PRIOENT
054621,000158: 5746 00014 OCT14 OCT 14 # DONT MOVE
054622,000159:
054623,000160: 5747 01363 TC ALMCADR # RETURN TO USER
End of include-file ALARM_AND_ABORT.agc. Parent file is MAIN.agc