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. |
047467,000002: ## Copyright: Public domain.
047468,000003: ## Filename: FIXED-FIXED_CONSTANT_POOL.agc
047469,000004: ## Purpose: A log section of Zerlina 56, the final revision of
047470,000005: ## Don Eyles's offline development program for the variable
047471,000006: ## guidance period servicer. It also includes a new P66 with LPD
047472,000007: ## (Landing Point Designator) capability, based on an idea of John
047473,000008: ## Young's. Neither of these advanced features were actually flown,
047474,000009: ## but Zerlina was also the birthplace of other big improvements to
047475,000010: ## Luminary including the terrain model and new (Luminary 1E)
047476,000011: ## analog display programs. Zerlina was branched off of Luminary 145,
047477,000012: ## and revision 56 includes all changes up to and including Luminary
047478,000013: ## 183. It is therefore quite close to the Apollo 14 program,
047479,000014: ## Luminary 178, where not modified with new features.
047480,000015: ## Reference: pp. 1086-1090
047481,000016: ## Assembler: yaYUL
047482,000017: ## Contact: Ron Burkey <info@sandroid.org>.
047483,000018: ## Website: www.ibiblio.org/apollo/index.html
047484,000019: ## Mod history: 2017-07-28 MAS Created from Luminary 210.
047485,000020: ## 2017-08-28 MAS Updated for Zerlina 56.
047486,000021:
![]() |
Page 1086 |
047488,000023: 4732 BLOCK 02
047489,000024:
047490,000025: 4732 COUNT* $$/FCONS
047491,000026: # THE FOLLOWING TABLE OF 18 VALUES IS INDEXED. DO NOT INSERT OR REMOVE ANY QUANTITIES.
047492,000027:
047493,000028: 4732 37777 DPOSMAX OCT 37777 # MUST PRECEDE POSMAX
047494,000029: 4733 37777 POSMAX OCT 37777
047495,000030:
047496,000031: 4734 4734 LIMITS = NEG1/2
047497,000032:
047498,000033: 4734 57777 NEG1/2 OCT -20000 # USED BY SIN ROUTINE (MUST BE TWO
047499,000034: # LOCATIONS IN FRONT OF BIT14)
047500,000035: # BIT TABLE
047501,000036:
047502,000037: 4735 40000 BIT15 OCT 40000
047503,000038: 4736 20000 BIT14 OCT 20000
047504,000039: 4737 10000 BIT13 OCT 10000
047505,000040: 4740 04000 BIT12 OCT 04000
047506,000041: 4741 02000 BIT11 OCT 02000
047507,000042: 4742 01000 BIT10 OCT 01000
047508,000043: 4743 00400 BIT9 OCT 00400
047509,000044: 4744 00200 BIT8 OCT 00200
047510,000045: 4745 00100 BIT7 OCT 00100
047511,000046: 4746 00040 BIT6 OCT 00040
047512,000047: 4747 00020 BIT5 OCT 00020
047513,000048: 4750 00010 BIT4 OCT 00010
047514,000049: 4751 00004 BIT3 OCT 00004
047515,000050: 4752 00002 BIT2 OCT 00002
047516,000051: 4753 00001 BIT1 OCT 00001
047517,000052:
047518,000053:
047519,000054: # DO NOT DESTROY THIS COMBINATION, SINCE IT IS USED IN DOUBLE PRECISION INSTRUCTIONS.
047520,000055: 4754 77777 NEG0 OCT -0 # MUST PRECEDE ZERO
047521,000056: 4755 00000 ZERO OCT 0 # MUST FOLLOW NEG0
047522,000057: # BIT1 OCT 00001
047523,000058: # NO.WDS OCT 2 INTERPRETER
047524,000059: # OCTAL3 OCT 3 INTERPRETER
047525,000060: # R3D1 OCT 4 PINBALL
047526,000061: 4756 00005 FIVE OCT 5
047527,000062: # REVCNT OCT 6 INTERPRETER
047528,000063: 4757 00007 SEVEN OCT 7
047529,000064: # BIT4 OCT 00010
047530,000065: # R2D1 OCT 11 PINBALL
047531,000066: 4760 4320 OCT11 = R2D1 # P20S
047532,000067: # BINCON DEC 10 PINBALL (OCTAL 12)
047533,000068: 4760 00013 ELEVEN DEC 11 B-14
047534,000069: # OCT14 OCT 14 ALARM AND ABORT (FILLER)
047535,000070: 4761 00015 OCT15 OCT 15
047536,000071: # R1D1 OCT 16 PINBALL
047537,000072: 4762 00017 LOW4 OCT 17
![]() |
Page 1087 |
047539,000074: # BIT5 OCT 00020
047540,000075: # ND1 OCT 21 PINBALL
047541,000076: # VD1 OCT 23 PINBALL
047542,000077: # OCT24 OCT 24 SERVICE ROUTINES
047543,000078: # MD1 OCT 25 PINBALL
047544,000079: 4763 00030 BITS4&5 OCT 30
047545,000080: # OCT31 OCT 31 SERVICE ROUTINES
047546,000081: 4764 00033 OCT33 OCT 33
047547,000082: 4765 4764 DEC27 = OCT33
047548,000083: 4765 00035 OCT35 OCT 35
047549,000084: 4766 4765 DEC29 = OCT35
047550,000085: 4766 00032 CALLCODE OCT 00032
047551,000086: # LOW5 OCT 37 PINBALL
047552,000087: # 33DEC DEC 33 PINBALL (OCTAL 41)
047553,000088: # 34DEC DEC 34 PINBALL (OCTAL 42)
047554,000089: 4767 00045 TBUILDFX DEC 37 B-14 # BUILDUP FOR CONVIENCE IN DAPTESTING
047555,000090: 4770 00046 TDECAYFX DEC 38 B-14 # CONVENIENCE FOR DAPTESTING
047556,000091: # BIT6 OCT 00040
047557,000092: 4771 00050 OCT50 OCT 50
047558,000093: 4772 00055 DEC45 DEC 45 B-14
047559,000094: 4773 00060 SUPER011 OCT 60 # BITS FOR SUPERBNK SETTING 011.
047560,000095: 4774 00062 .5SEC DEC 50 B-14
047561,000096: # BIT7 OCT 00100
047562,000097:
047563,000098: 4775 4745 SUPER100 = BIT7 # BITS FOR SUPERBNK SETTING 100
047564,000099: # (LAST 4K OF ROPE)
047565,000100: 4775 00120 SUPER101 OCT 120 # BITS FOR SUPERBNK SETTING 101
047566,000101: # OCT121 OCT 121 SERVICE ROUTINES
047567,000102: # (FIRST 8K OF ACM)
047568,000103: 4776 00140 SUPER110 OCT 140 # BITS FOR SUPERBNK SETTING 110.
047569,000104: # (LAST 8K OF ACM)
047570,000105: 4777 00144 1SEC DEC 100 B-14
047571,000106: # LOW7 OCT 177 INTERPRETER
047572,000107: # BIT8 OCT 00200
047573,000108: # OT215 OCT 215 ALARM AND ABORT
047574,000109: # 8,5 OCT 00220 P20-P25 SUNDANCE
047575,000110: 5000 00310 2SECS DEC 200 B-14
047576,000111: # LOW8 OCT 377 PINBALL
047577,000112: # BIT9 OCT 00400
047578,000113: 5001 00401 GN/CCODE OCT 00401 # SET S/C CONTROL SWITCH TO G/N
047579,000114: 5002 00454 3SECS DEC 300 B-14
047580,000115: 5003 00620 4SECS DEC 400 B-14
047581,000116: 5004 00777 LOW9 OCT 777
047582,000117: # BIT10 OCT 01000
047583,000118: # 5.5DEGS DEC .03056 P20-P25 SUNDANCE (OCTAL 00765)
047584,000119: # OCT1103 OCT 1103 ALARM AND ABORT
047585,000120: 5005 01124 C5/2 DEC .0363551 # (OCTAL 01124)
047586,000121: 5006 01211 V05N09 VN 0509 # (SAME AS OCTAL 1211)
047587,000122: 5007 01400 OCT1400 OCT 01400
047588,000123: 5010 01426 V06N22 VN 0622
![]() |
Page 1088 |
047590,000125: # MID5 OCT 1740 PINBALL
047591,000126: 5011 01776 BITS2-10 OCT 1776
047592,000127: 5012 01777 LOW10 OCT 1777
047593,000128: # BIT11 OCT 02000
047594,000129: # 2K+3 OCT 2003 PINBALL
047595,000130: 5013 02177 LOW7+2K OCT 2177 # OP CODE MASK + BANK 1 FBANK SETTING.
047596,000131: 5014 02400 EBANK5 OCT 02400
047597,000132: 5015 03000 PRIO3 OCT 03000
047598,000133: 5016 03400 EBANK7 OCT 03400
047599,000134: # LOW11 OCT 3777 PINBALL
047600,000135: # BIT12 OCT 04000
047601,000136: # RELTAB OCT 04025 T4RUPT
047602,000137: 5017 05000 PRIO5 OCT 05000
047603,000138: 5020 06000 PRIO6 OCT 06000
047604,000139: 5021 07000 PRIO7 OCT 07000
047605,000140:
047606,000141: # BIT13 OCT 10000
047607,000142: # OCT 10003 T4RUPT RELTAB +1D
047608,000143: # 13,7,2 OCT 10102 P20-P25 SUNDANCE
047609,000144: 5022 11000 PRIO11 OCT 11000
047610,000145: # PRIO12 OCT 12000 BANKCALL
047611,000146: 5023 13000 PRIO13 OCT 13000
047612,000147: 5024 14000 PRIO14 OCT 14000
047613,000148: # OCT 14031 T4RUPT RELTAB +2D
047614,000149: 5025 15000 PRIO15 OCT 15000
047615,000150: 5026 16000 PRIO16 OCT 16000
047616,000151: # 85DEGS DEC .45556 P20-P25 SUNDANCE (OCTAL 16450)
047617,000152: 5027 17000 PRIO17 OCT 17000
047618,000153: 5030 17770 OCT17770 OCT 17770
047619,000154: # BIT14 OCT 20000
047620,000155: # OCT 20033 T4RUPT RELTAB +3D
047621,000156: 5031 21000 PRIO21 OCT 21000
047622,000157: 7722 BLOCK 03
047623,000158: 7722 COUNT* $$/FCONS
047624,000159: 7722 22000 PRIO22 OCT 22000 # SERVICE ROUTINES
047625,000160: 7723 23000 PRIO23 OCT 23000
047626,000161: 7724 24000 PRIO24 OCT 24000
047627,000162: # 5/8+1 OCT 24001 SINGLE PRECISION SUBROUTINES
047628,000163: # OCT 24017 T4RUPT RELTAB +4D
047629,000164: 7725 25000 PRIO25 OCT 25000
047630,000165: 7726 26000 PRIO26 OCT 26000
047631,000166: 7727 27000 PRIO27 OCT 27000
047632,000167: # CHRPRIO OCT 30000 PINBALL
047633,000168: # OCT 30036 T4RUPT RELTAB +5D
047634,000169: 7730 31000 PRIO31 OCT 31000
047635,000170: 7731 31103 C1/2 DEC .7853134 # (OCTAL 31103)
047636,000171: 7732 32000 PRIO32 OCT 32000
047637,000172: 7733 33000 PRIO33 OCT 33000
047638,000173: 7734 34000 PRIO34 OCT 34000
047639,000174: # OCT 34034 T4RUPT RELTAB +6D
![]() |
Page 1089 |
047641,000176: 7735 35000 PRIO35 OCT 35000
047642,000177: 7736 36000 PRIO36 OCT 36000
047643,000178: 7737 37000 PRIO37 OCT 37000
047644,000179: 7740 37401 63/64+1 OCT 37401
047645,000180: # MID7 OCT 37600 PINBALL
047646,000181: 7741 37766 OCT37766 OCT 37766
047647,000182: 7742 37774 OCT37774 OCT 37774
047648,000183: 7743 37776 OCT37776 OCT 37776
047649,000184: # DPOSMAX OCT 37777
047650,000185: # BIT15 OCT 40000
047651,000186: # OCT40001 OCT 40001 INTERPRETER ( CS 1 INSTRUCTION)
047652,000187: 7744 40014 DLOADCOD OCT 40014
047653,000188: 7745 40015 DLOAD* OCT 40015
047654,000189: # OCT 40023 T4RUPT RELTAB +7D
047655,000190: 7746 40040 BIT15+6 OCT 40040
047656,000191: 7747 40200 OCT40200 OCT 40200
047657,000192: # OCT 44035 T4RUPT RELTAB +8D
047658,000193: # OCT 50037 T4RUPT RELTAB +9D
047659,000194: # OCT 54000 T4RUPT RELTAB +10D
047660,000195: 7750 57777 -BIT14 OCT 57777
047661,000196: # RELTAB11 OCT 60000 T4RUPT
047662,000197: 7751 65552 C3/2 DEC -.3216147 # (OCTAL 65552)
047663,000198: 7752 70000 13,14,15 OCT 70000
047664,000199: 7753 73777 -1/8 OCT 73777
047665,000200: 7754 74000 HIGH4 OCT 74000
047666,000201: 7755 74056 -ENDERAS DEC -2001 B-14 # (OCTAL 74056)
047667,000202: # HI5 OCT 76000 PINBALL
047668,000203: 7756 77700 HIGH9 OCT 77700
047669,000204: # -ENDVAC DEC -45 INTERPRETER (OCTAL 77722)
047670,000205: # -OCT10 OCT -10 (OCT 77767)
047671,000206: # NEG4 DEC -4 (OCTAL 77773)
047672,000207: 7757 77774 NEG3 DEC -3 B-14
047673,000208: 7760 77775 NEG2 OCT 77775
047674,000209: 7761 77776 NEGONE DEC -1 B-14
047675,000210:
![]() |
There is a doodle (of what I can't tell) at the bottom of the page. |
047677,000212:
![]() |
Page 1090 |
047679,000214: # DEFINED BY EQUALS
047680,000215:
047681,000216: # IT WOULD BE TO THE USERS ADVANTAGE TO OCCASIONALLY CHECK ANY OF THESE SYMBOLS IN ORDER TO PREVENT ANY
047682,000217: # ACCIDENTAL DEFINITION CHANGES.
047683,000218:
047684,000219: 7762 7761 MINUS1 = NEG1
047685,000220: 7762 7761 NEG1 = NEGONE
047686,000221: 7762 4753 ONE = BIT1
047687,000222: 7762 4752 TWO = BIT2
047688,000223: 7762 6257 THREE = OCTAL3
047689,000224: 7762 6257 LOW2 = THREE
047690,000225: 7762 4751 FOUR = BIT3
047691,000226: 7762 6254 SIX = REVCNT
047692,000227: 7762 4757 LOW3 = SEVEN
047693,000228: 7762 4750 EIGHT = BIT4
047694,000229: 7762 4320 NINE = R2D1
047695,000230: 7762 4363 TEN = BINCON
047696,000231: 7762 4760 NOUTCON = ELEVEN
047697,000232: 7762 4360 OCT23 = VD1
047698,000233: 7762 4362 OCT25 = MD1
047699,000234: 7762 4742 PRIO1 = BIT10
047700,000235: 7762 5007 EBANK3 = OCT1400
047701,000236: 7762 4741 PRIO2 = BIT11
047702,000237: 7762 4775 OCT120 = SUPER101
047703,000238: 7762 4776 OCT140 = SUPER110
047704,000239: 7762 4741 2K = BIT11
047705,000240: 7762 4741 EBANK4 = BIT11
047706,000241: 7762 4740 PRIO4 = BIT12
047707,000242: 7762 5015 EBANK6 = PRIO3
047708,000243: 7762 4737 QUARTER = BIT13
047709,000244: 7762 4737 PRIO10 = BIT13
047710,000245: 7762 7675 OCT10001 = CCSL
047711,000246: 7762 4736 POS1/2 = HALF
047712,000247: 7762 4736 PRIO20 = BIT14
047713,000248: 7762 4736 HALF = BIT14
047714,000249: 7762 4355 PRIO30 = CHRPRIO
047715,000250: 7762 4355 BIT13-14 = PRIO30 # INTERPRETER USES IN PROCESSING STORECODE
047716,000251: 7762 6503 OCT30002 = TLOAD +1
047717,000252: 7762 7734 B12T14 = PRIO34
047718,000253: 7762 4735 NEGMAX = BIT15
047719,000254: 7762 4735 VLOADCOD = BIT15
047720,000255: 7762 6121 VLOAD* = OCT40001
047721,000256: 7762 4101 OCT60000 = RELTAB11
047722,000257: 7762 4350 BANKMASK = HI5
End of include-file FIXED-FIXED_CONSTANT_POOL.agc. Parent file is MAIN.agc