Source Code
![]() |
These source-code files were transcribed from a printout in Don Eyles's personal
collection, scanned by archive.org, and financially sponsored by Linden Sims.
A team of volunteers performed the transcription and proof-reading. The scanned
page images are available at
the Virtual AGC Project website, as well as higher-quality (but much larger)
images at
the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating
"issues" at
the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 56 OF AGC PROGRAM ZERLINA BY ZOROASTER 9:12 OCT. 21,1970Note that the date is the date of the printout, not the date of the program revision. |
059882,000002: ## Copyright: Public domain.
059883,000003: ## Filename: ALARM_AND_ABORT.agc
059884,000004: ## Purpose: A log section of Zerlina 56, the final revision of
059885,000005: ## Don Eyles's offline development program for the variable
059886,000006: ## guidance period servicer. It also includes a new P66 with LPD
059887,000007: ## (Landing Point Designator) capability, based on an idea of John
059888,000008: ## Young's. Neither of these advanced features were actually flown,
059889,000009: ## but Zerlina was also the birthplace of other big improvements to
059890,000010: ## Luminary including the terrain model and new (Luminary 1E)
059891,000011: ## analog display programs. Zerlina was branched off of Luminary 145,
059892,000012: ## and revision 56 includes all changes up to and including Luminary
059893,000013: ## 183. It is therefore quite close to the Apollo 14 program,
059894,000014: ## Luminary 178, where not modified with new features.
059895,000015: ## Reference: pp. 1369-1373
059896,000016: ## Assembler: yaYUL
059897,000017: ## Contact: Ron Burkey <info@sandroid.org>.
059898,000018: ## Website: www.ibiblio.org/apollo/index.html
059899,000019: ## Mod history: 2017-07-28 MAS Created from Luminary 210.
059900,000020: ## 2017-08-23 MAS Updated for Zerlina 56.
059901,000021: ## 2017-08-24 MAS Removed an extra CS BITS9+7 instruction.
059902,000022:
![]() |
Page 1369 |
059904,000024: # THE FOLLOWING SUBROUTINE MAY BE CALLED TO DISPLAY A NON-ABORTIVE ALARM CONDITION. IT MAY BE CALLED
059905,000025: # EITHER IN INTERRUPT OR UNDER EXECUTIVE CONTROL.
059906,000026:
059907,000027: # CALLING SEQUENCE IS AS FOLLOWS:
059908,000028:
059909,000029: # TC ALARM
059910,000030: # OCT AAANN ALARM NO. NN IN GENERAL AREA AAA.
059911,000031: # (RETURNS HERE)
059912,000032:
059913,000033: 5600 BLOCK 02
059914,000034: 4000 SETLOC FFTAG7
059915,000035: 4000 BANK
059916,000036:
059917,000037: 5600 0375 EBANK= FAILREG
059918,000038:
059919,000039: 5600 COUNT* $$/ALARM
059920,000040: # ALARM TURNS ON THE PROGRAM ALARM LIGHT, BUT DOES NOT DISPLAY.
059921,000041:
059922,000042: 5600 00004 ALARM INHINT
059923,000043:
059924,000044: 5601 30002 CA Q
059925,000045: 5602 55363 ALARM2 TS ALMCADR
059926,000046: 5603 50002 INDEX Q
059927,000047: 5604 30000 CA 0
059928,000048: 5605 54001 BORTENT TS L
059929,000049:
059930,000050: 5606 30006 PRIOENT CA BBANK
059931,000051: 5607 00006 +1 EXTEND
059932,000052: 5610 04007 ROR SUPERBNK # ADD SUPER BITS.
059933,000053: 5611 55364 TS ALMCADR +1
059934,000054:
059935,000055: 5612 30002 LARMENT CA Q # STORE RETURN FOR ALARM
059936,000056: 5613 54061 TS ITEMP1
059937,000057:
059938,000058: 5614 10375 CHKFAIL1 CCS FAILREG # IS ANYTHING IN FAILREG
059939,000059: 5615 15621 TCF CHKFAIL2 # YES TRY NEXT REG
059940,000060: 5616 30001 CA L
059941,000061: 5617 54375 TS FAILREG
059942,000062: 5620 15625 TCF PROGLARM # TURN ALARM LIGHT ON FOR FIRST ALARM
059943,000063:
059944,000064: 5621 10376 CHKFAIL2 CCS FAILREG +1
059945,000065: 5622 15625 TCF PROGLARM
059946,000066: 5623 30001 CA L
059947,000067: 5624 54376 TS FAILREG +1
059948,000068:
059949,000069: 5625 22377 PROGLARM LXCH FAILREG +2 # STORE AS "MOST RECENT" ALARM CODE
059950,000070:
059951,000071: 5626 41035 CS DSPTAB +11D # TURN ON PROGRAM ALARM IF OFF
059952,000072: 5627 75643 MASK OCT40400
059953,000073: 5630 27035 ADS DSPTAB +11D
059954,000074:
![]() |
Page 1370 |
059956,000076: 5631 56061 MULTEXIT XCH ITEMP1 # OBTAIN RETURN ADDRESS IN A
059957,000077: 5632 00003 RELINT
059958,000078: 5633 50000 INDEX A
059959,000079: 5634 00001 TC 1
059960,000080:
059961,000081: # PRIOLARM DISPLAYS V05N09 VIA PRIODSPR WITH 3 RETURNS TO THE USER FROM THE ASTRONAUT AT CALL LOC +1,+2,+3 AND
059962,000082: # AN IMMEDIATE RETURN TO THE USER AT CALL LOC +4. EXAMPLE FOLLOWS,
059963,000083: # CAF OCTXX ALARM CODE
059964,000084: # TC BANKCALL
059965,000085: # CADR PRIOLARM
059966,000086:
059967,000087: # ... ...
059968,000088: # ... ...
059969,000089: # ... ... ASTRONAUT RETURN
059970,000090: # TC PHASCHNG IMMEDIATE RETURN TO USER. RESTART
059971,000091: # OCT X.1 PHASE CHANGE FOR PRIO DISPLAY
059972,000092:
059973,000093: 10,3544 BANK 10
059974,000094: 10,2000 SETLOC DISPLAYS
059975,000095: 10,2000 BANK
059976,000096:
059977,000097: 10,3544 COUNT* $$/DSPLA
059978,000098: 10,3544 00004 PRIOLARM INHINT # * * * KEEP IN DISPLAY ROUTINES BANK
059979,000099: 10,3545 54001 TS L # SAVE ALARM CODE
059980,000100:
059981,000101: 10,3546 30133 CA BUF2 # 2 CADR OF PRIOLARM USER
059982,000102: 10,3547 55363 TS ALMCADR
059983,000103: 10,3550 30134 CA BUF2 +1
059984,000104: 10,3551 05607 TC PRIOENT +1 # * LEAVE L ALONE
059985,000105: 10,3552 77467 -2SEC DEC -200 B-14 # *** DONT MOVE
059986,000106: 10,3553 35006 CAF V05N09
059987,000107: 10,3554 12505 TCF PRIODSPR
059988,000108:
059989,000109: 5635 BLOCK 02
059990,000110: 4000 SETLOC FFTAG7
059991,000111: 4000 BANK
059992,000112:
059993,000113: 5635 COUNT* $$/ALARM
059994,000114: 5635 00004 BAILOUT INHINT
059995,000115: 5636 30002 CA Q
059996,000116: 5637 55363 TS ALMCADR
059997,000117:
059998,000118: 5640 50002 INDEX Q
059999,000119: 5641 30000 CAF 0
060000,000120: 5642 05605 TC BORTENT
060001,000121: 5643 40400 OCT40400 OCT 40400
060002,000122:
060003,000123: 5644 00004 INHINT
060004,000124: 5645 34752 WHIMPER CA TWO
060005,000125: 5646 60005 AD Z
![]() |
Page 1371 |
060007,000127: 5647 54017 TS BRUPT
060008,000128: 5650 50017 RESUME
060009,000129: 5651 04635 TC POSTJUMP # RESUME SENDS CONTROL HERE
060010,000130: 5652 13001 CADR ENEMA
060011,000131: 5653 00004 POODOO INHINT
060012,000132: 5654 30002 CA Q
060013,000133: 5655 55363 ABORT2 TS ALMCADR
060014,000134: 5656 50002 INDEX Q
060015,000135: 5657 30000 CAF 0
060016,000136: 5660 05605 TC BORTENT
060017,000137: 5661 77770 OCT77770 OCT 77770 # DON'T MOVE
060018,000138:
060019,000139: 5662 34765 CAF OCT35 # 4.35SPOT FOR GOPOODOO
060020,000140: 5663 54001 TS L
060021,000141: 5664 40000 COM
060022,000142: 5665 52760 DXCH -PHASE4
060023,000143: 5666 00004 GOPOODOO INHINT
060024,000144: 5667 04616 TC BANKCALL # RESET STATEFLG, REINTFLG, AND NODOFLAG.
060025,000145: 5670 27746 CADR FLAGS
060026,000146: 5671 30103 CA FLAGWRD7 # IS SERVICER CURRENTLY IN OPERATION?
060027,000147: 5672 74746 MASK V37FLBIT
060028,000148: 5673 10000 CCS A
060029,000149: 5674 15702 TCF STRTIDLE
060030,000150: 5675 04616 TC BANKCALL # TERMINATE GRPS 1, 3, 5, AND 6
060031,000151: 5676 12666 CADR V37KLEAN
060032,000152: 5677 04616 TC BANKCALL # TERMINATE GRPS 2, 4, 1, 3, 5, AND 6
060033,000153: 5700 12657 CADR MR.KLEAN # (I.E., GRP 4 LAST)
060034,000154: 5701 15645 TCF WHIMPER
060035,000155: 5702 35744 STRTIDLE CAF BBSERVDL
060036,000156: 5703 04727 TC SUPERSW
060037,000157: 5704 04616 TC BANKCALL # PUT SERVICER INTO ITS "GROUND" STATE
060038,000158: 5705 67546 CADR SERVIDLE # AND PROCEED TO GOTOPOOH.
060039,000159: 5706 00004 CCSHOLE INHINT
060040,000160: 5707 30002 CA Q
060041,000161: 5710 05655 TC ABORT2
060042,000162: 5711 21103 OCT21103 OCT 21103
060043,000163: 5712 00004 CURTAINS INHINT
060044,000164: 5713 30002 CA Q
060045,000165: 5714 05602 TC ALARM2
060046,000166: 5715 00217 OCT217 OCT 00217
060047,000167: 5716 01363 TC ALMCADR # RETURN TO USER
060048,000168:
060049,000169: 5717 00004 BAILOUT1 INHINT
060050,000170: 5720 53364 DXCH ALMCADR
060051,000171: 5721 35743 CAF ADR40400
060052,000172: 5722 54061 BOTHABRT TS ITEMP1
060053,000173: 5723 50002 INDEX Q
060054,000174: 5724 30000 CAF 0
060055,000175: 5725 54001 TS L
060056,000176: 5726 15614 TCF CHKFAIL1
060057,000177:
![]() |
Page 1372 |
060059,000179: 5727 00004 POODOO1 INHINT
060060,000180: 5730 53364 DXCH ALMCADR
060061,000181: 5731 35742 CAF ADR77770
060062,000182: 5732 15722 TCF BOTHABRT
060063,000183:
060064,000184: 5733 00004 ALARM1 INHINT
060065,000185: 5734 53364 DXCH ALMCADR
060066,000186: 5735 00004 ALMNCADR INHINT
060067,000187: 5736 50002 INDEX Q
060068,000188: 5737 30000 CA 0
060069,000189: 5740 54001 TS L
060070,000190: 5741 15612 TCF LARMENT
060071,000191:
060072,000192: 5742 15661 ADR77770 TCF OCT77770
060073,000193: 5743 15643 ADR40400 TCF OCT40400
060074,000194: 5744 5155 DOALARM EQUALS ENDOFJOB
060075,000195: 5744 E7,1513 EBANK= DVCNTR
060076,000196: 5744 66067 BBSERVDL BBCON SERVIDLE
060077,000197: # CALLING SEQUENCE FOR VARALARM
060078,000198:
060079,000199: # CAF (ALARM)
060080,000200: # TC VARALARM
060081,000201:
060082,000202: # VARALARM TURNS ON PROGRAM ALARM LIGHT BUT DOES NOT DISPLAY
060083,000203: 5745 00004 VARALARM INHINT
060084,000204:
060085,000205: 5746 54001 TS L # SAVE USERS ALARM CODE
060086,000206:
060087,000207: 5747 30002 CA Q # SAVE USERS Q
060088,000208: 5750 55363 TS ALMCADR
060089,000209:
060090,000210: 5751 05606 TC PRIOENT
060091,000211: 5752 00014 OCT14 OCT 14 # DONT MOVE
060092,000212:
060093,000213: 5753 01363 TC ALMCADR # RETURN TO USER
060094,000214:
060095,000215: 5754 5645 ABORT EQUALS WHIMPER
060096,000216: 13,3746 BANK 13
060097,000217: 13,2000 SETLOC ABTFLGS
060098,000218: 13,2000 BANK
060099,000219: 13,3746 COUNT* $$/ALARM
060100,000220:
060101,000221: 13,3746 44747 FLAGS CS STATEBIT
060102,000222: 13,3747 70077 MASK FLAGWRD3
060103,000223: 13,3750 54077 TS FLAGWRD3
060104,000224: 13,3751 44745 CS REINTBIT
060105,000225: 13,3752 70106 MASK FLGWRD10
060106,000226: 13,3753 54106 TS FLGWRD10
060107,000227: 13,3754 44753 CS NODOBIT
060108,000228: 13,3755 70076 MASK FLAGWRD2
![]() |
Page 1373 |
060110,000230: 13,3756 54076 TS FLAGWRD2
060111,000231: 13,3757 00002 TC Q
End of include-file ALARM_AND_ABORT.agc. Parent file is MAIN.agc