Source Code
045174,000001: # Copyright: Public domain.
045175,000002: # Filename: FIXED_FIXED_CONSTANT_POOL.agc
045176,000003: # Purpose: The main source file for Luminary 1C, revision 131.
045177,000004: # It is part of the source code for the Lunar Module's (LM)
045178,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14.
045179,000006: # Assembler: yaYUL
045180,000007: # Reference: pp. 1094-1098 of 1729.pdf.
045181,000008: # Contact: Ron Burkey <info@sandroid.org>.
045182,000009: # Website: www.ibiblio.org/apollo/index.html
045183,000010: # Mod history: 04/23/03 RSB. Began.
045184,000011: # 05/14/05 RSB Corrected website reference above.
045185,000012:
045186,000013: # The contents of the "Luminary131" files, in general, are
045187,000014: # transcribed from a scanned document obtained from MIT's website,
045188,000015: # http://hrst.mit.edu/hrs/apollo/public/archive/1729.pdf. Notations on this
045189,000016: # document read, in part:
045190,000017:
045191,000018: # NASA Apollo LUMINARY 131 (1C) Program Source Code Listing.
045192,000019: # MIT Instrumentation/Draper Laboratory -- 19 December 1969, 1742 pages.
045193,000020: # This listing contains the flight program for the Lunar Module
045194,000021: # as created by MIT's Draper Lab for the Apollo 13/14 moon missions.
045195,000022:
045196,000023: # Refer directly to the online document mentioned above for further information.
045197,000024: # Please report any errors (relative to 1729.pdf) to info@sandroid.org.
045198,000025:
045199,000026: # Page 1094
045200,000027: 4732 BLOCK 02
045201,000028: 4732 COUNT* $$/FCONS
045202,000029:
045203,000030: # THE FOLLOWING TABLE OF 18 VALUES IS INDEXED. DO NOT INSERT OR REMOVE ANY QUANTITIES
045204,000031:
045205,000032: 4732 37777 DPOSMAX OCT 37777 # MUST PRECEDE POSMAX
045206,000033: 4733 37777 POSMAX OCT 37777
045207,000034:
045208,000035: 4734 4734 LIMITS = NEG1/2
045209,000036:
045210,000037: 4734 57777 NEG1/2 OCT -20000 # USED BY SIN ROUTINE (MUST BE TWO
045211,000038: # LOCATIONS IN FRONT OF BIT14)
045212,000039:
045213,000040: # BIT TABLE
045214,000041:
045215,000042: 4735 40000 BIT15 OCT 40000
045216,000043: 4736 20000 BIT14 OCT 20000
045217,000044: 4737 10000 BIT13 OCT 10000
045218,000045: 4740 04000 BIT12 OCT 04000
045219,000046: 4741 02000 BIT11 OCT 02000
045220,000047: 4742 01000 BIT10 OCT 01000
045221,000048: 4743 00400 BIT9 OCT 00400
045222,000049: 4744 00200 BIT8 OCT 00200
045223,000050: 4745 00100 BIT7 OCT 00100
045224,000051: 4746 00040 BIT6 OCT 00040
045225,000052: 4747 00020 BIT5 OCT 00020
045226,000053: 4750 00010 BIT4 OCT 00010
045227,000054: 4751 00004 BIT3 OCT 00004
045228,000055: 4752 00002 BIT2 OCT 00002
045229,000056: 4753 00001 BIT1 OCT 00001
045230,000057:
045231,000058: # DO NOT DESTROY THIS COMBINATION, SINCE IT IS USED IN DOUBLE PRECISION INSTRUCTIONS.
045232,000059: 4754 77777 NEG0 OCT -0 # MUST PRECEDE ZERO
045233,000060: 4755 00000 ZERO OCT 0 # MUST FOLLOW NEG0
045234,000061: # BIT1 OCT 00001
045235,000062: # NO.WDS OCT 2 # INTERPRETER
045236,000063: # OCTAL3 OCT 3 # INTERPRETER
045237,000064: # R3D1 OCT 4 # PINBALL
045238,000065: 4756 00005 FIVE OCT 5
045239,000066: # REVCNT OCT 6 # INTERPRETER
045240,000067: 4757 00007 SEVEN OCT 7
045241,000068: # BIT4 OCT 00010
045242,000069: # R2D1 OCT 11 # PINBALL
045243,000070: 4760 4320 OCT11 = R2D1 # P20S
045244,000071: # BINCON DEC 10 # PINBALL (OCTAL 12)
045245,000072: 4760 00013 ELEVEN DEC 11 B-14
045246,000073: # OCT14 OCT 14 # ALARM AND ABORT (FILLER)
045247,000074: 4761 00015 OCT15 OCT 15
045248,000075: # R1D1 OCT 16 # PINBALL
045249,000076: 4762 00017 LOW4 OCT 17
045250,000077: # Page 1095
045251,000078: # BIT5 OCT 00020
045252,000079: # NC1 OCT 21 # PINBALL
045253,000080: # VD1 OCT 23 # PINBALL
045254,000081: # OCT24 OCT 24 # SERVICE ROUTINES
045255,000082: # MD1 OCT 25 # PINBALL
045256,000083: 4763 00030 BITS4&5 OCT 30
045257,000084: # OCT31 OCT 31 # SERVICE ROUTINES
045258,000085: 4764 00033 OCT33 OCT 33
045259,000086: # DEC27 = OCT33
045260,000087: 4765 00035 OCT35 OCT 35
045261,000088: # DEC29 = OCT35
045262,000089: 4766 00032 CALLCODE OCT 00032
045263,000090: # LOW5 OCT 37 # PINBALL
045264,000091: # 33DEC DEC 33 # PINBALL (OCTAL 41)
045265,000092: # 34DEC DEC 34 # PINBALL (OCTAL 42)
045266,000093: 4767 00045 TBUILDFX DEC 37 B-14 # BUILDUP FOR CONVENIENCE IN DAPTESTING
045267,000094: 4770 00046 TDECAYFX DEC 38 B-14 # CONVENIENCE FOR DAPTESTING
045268,000095: # BIT6 OCT 00040
045269,000096: 4771 00050 OCT50 OCT 50
045270,000097: 4772 00055 DEC45 DEC 45 B-14
045271,000098: 4773 00060 SUPER011 OCT 60 # BITS FOR SUPERBNK SETTING 011.
045272,000099: 4774 00062 .5SEC DEC 50 B-14
045273,000100: # BIT7 OCT 00100
045274,000101:
045275,000102: 4775 4745 SUPER100 = BIT7 # BITS FOR SUPERBNK SETTING 100
045276,000103: # (LAST 4K OF ROPE)
045277,000104: 4775 00120 SUPER101 OCT 120 # BITS FOR SUPERBNK SETTING 101
045278,000105: # OCT121 OCT 121 # SERVICE ROUTINES
045279,000106: # (FIRST 8K OF ACM)
045280,000107: 4776 00140 SUPER110 OCT 140 # BITS FOR SUPERBNK SETTING 110.
045281,000108: # (LAST BK OF ACM)
045282,000109: 4777 00144 1SEC DEC 100 B-14
045283,000110: # LOW7 OCT 177 # INTERPRETER
045284,000111: # BIT8 OCT 00200
045285,000112: # OT215 OCT 215 # ALARM AND ABORT
045286,000113: # 8,5 OCT 00220 # P20-P25 SUNDANCE
045287,000114: 5000 00310 2SECS DEC 200 B-14
045288,000115: # LOW8 OCT 377 # PINBALL
045289,000116: # BIT9 OCT 00400
045290,000117: 5001 00401 GN/CCODE OCT 00401 # SET S/C CONTROL SWITCH TO G/N
045291,000118: 5002 00454 3SECS DEC 300 B-14
045292,000119: 5003 00620 4SECS DEC 400 B-14
045293,000120: 5004 00777 LOW9 OCT 777
045294,000121: # BIT10 OCT 01000
045295,000122: # 5.5DEGS DEC .03056 # P20-P25 SUNDANCE (OCTAL 00765)
045296,000123: # OCT1103 OCT 1103 # ALARM AND ABORT
045297,000124: 5005 01124 C5/2 DEC .0363551 # (OCTAL 01124)
045298,000125: 5006 01211 V05N09 VN 0509 # (SAME AS OCTAL 1211)
045299,000126: 5007 01400 OCT1400 OCT 01400
045300,000127: 5010 01426 V06N22 VN 0622
045301,000128: # Page 1096
045302,000129: # MID5 OCT 1740 # PINBALL
045303,000130: 5011 01776 BITS2-10 OCT 1776
045304,000131: 5012 01777 LOW10 OCT 1777
045305,000132: # BIT11 OCT 02000
045306,000133: # 2K+3 OCT 2003 # PINBALL
045307,000134: 5013 02177 LOW7+2K OCT 2177 # OP CODE MASK + BANK 1 FBANK SETTING
045308,000135: 5014 02400 EBANK5 OCT 02400
045309,000136: 5015 03000 PRIO3 OCT 03000
045310,000137: 5016 03400 EBANK7 OCT 03400
045311,000138: # LOW11 OCT 3777 # PINBALL
045312,000139: # BIT12 OCT 04000
045313,000140: # RELTAB OCT 04025 # T4RUPT
045314,000141: 5017 05000 PRIO5 OCT 05000
045315,000142: 5020 06000 PRIO6 OCT 06000
045316,000143: 5021 07000 PRIO7 OCT 07000
045317,000144:
045318,000145: # BIT13 OCT 10000
045319,000146: # OCT 10003 # T4RUPT RELTAB +1D
045320,000147: # 13,7,2 OCT 10102 # P20-P25 SUNDANCE
045321,000148: 5022 11000 PRIO11 OCT 11000
045322,000149: # PRIO12 OCT 12000 # BANKCALL
045323,000150: 5023 13000 PRIO13 OCT 13000
045324,000151: 5024 14000 PRIO14 OCT 14000
045325,000152: # OCT 14031 # T4RUPT RELTAB +2D
045326,000153: 5025 15000 PRIO15 OCT 15000
045327,000154: 5026 16000 PRIO16 OCT 16000
045328,000155: # 85DEGS DEC .45556 # P20-P25 SUNDANCE (OCTAL 16450)
045329,000156: 5027 17000 PRIO17 OCT 17000
045330,000157: 5030 17770 OCT17770 OCT 17770
045331,000158: # BIT14 OCT 20000
045332,000159: # OCT 20033 # T4RUPT RELTAB +3D
045333,000160: 5031 21000 PRIO21 OCT 21000
045334,000161:
045335,000162: 7713 BLOCK 03
045336,000163: 7713 COUNT* $$/FCONS
045337,000164:
045338,000165: 7713 22000 PRIO22 OCT 22000 # SERVICE ROUTINES
045339,000166: 7714 23000 PRIO23 OCT 23000
045340,000167: 7715 24000 PRIO24 OCT 24000
045341,000168: # 5/8+1 OCT 24001 # SINGLE PRECISION SUBROUTINES
045342,000169: # OCT 24017 # T4RUPT RELTAB +4D
045343,000170: 7716 25000 PRIO25 OCT 25000
045344,000171: 7717 26000 PRIO26 OCT 26000
045345,000172: 7720 27000 PRIO27 OCT 27000
045346,000173: # CHRPRIO OCT 30000 # PINBALL
045347,000174: # OCT 30036 # T4RUPT RELTAB +5D
045348,000175: 7721 31000 PRIO31 OCT 31000
045349,000176: 7722 31103 C1/2 DEC .7853134 # (OCTAL 31103)
045350,000177: 7723 32000 PRIO32 OCT 32000
045351,000178: 7724 33000 PRIO33 OCT 33000
045352,000179: 7725 34000 PRIO34 OCT 34000
045353,000180: # OCT 34034 # T4RUPT RELTAB +6D
045354,000181: # Page 1097
045355,000182: 7726 35000 PRIO35 OCT 35000
045356,000183: 7727 36000 PRIO36 OCT 36000
045357,000184: 7730 37000 PRIO37 OCT 37000
045358,000185: 7731 37401 63/64+1 OCT 37401
045359,000186: # MID7 OCT 37600 # PINBALL
045360,000187: 7732 37766 OCT37766 OCT 37766
045361,000188: 7733 37774 OCT37774 OCT 37774
045362,000189: 7734 37776 OCT37776 OCT 37776
045363,000190: # DPOSMAX OCT 37777
045364,000191: # BIT15 OCT 40000
045365,000192: # OCT40001 OCT 40001 # INTERPRETER (CS 1 INSTRUCTION)
045366,000193: 7735 40014 DLOADCOD OCT 40014
045367,000194: 7736 40015 DLOAD* OCT 40015
045368,000195: # OCT 40023 # T4RUPT RELTAB +7D
045369,000196: 7737 40040 BIT15+6 OCT 40040
045370,000197: 7740 40200 OCT40200 OCT 40200
045371,000198: # OCT 44035 # T4RUPT RELTAB +8D
045372,000199: # OCT 50037 # T4RUPT RELTAB +9D
045373,000200: # OCT 54000 # T4RUPT RELTAB +10D
045374,000201: 7741 57777 -BIT14 OCT 57777
045375,000202: # RELTAB11 OCT 60000 # T4RUPT
045376,000203: 7742 65552 C3/2 DEC -.3216147 # (OCTAL 65552)
045377,000204: 7743 70000 13,14,15 OCT 70000
045378,000205: 7744 73777 -1/8 OCT 73777
045379,000206: 7745 74000 HIGH4 OCT 74000
045380,000207: 7746 74056 -ENDERAS DEC -2001 B-14 # (OCTAL 74056)
045381,000208: # HI5 OCT 76000 # PINBALL
045382,000209: 7747 77700 HIGH9 OCT 77700
045383,000210: # -ENDVAC DEC -45 # INTERPRETER (OCTAL 77722)
045384,000211: # -OCT10 OCT -10 # (OCTAL 77767)
045385,000212: # NEG4 DEC -4 # (OCTAL 77773)
045386,000213: 7750 77774 NEG3 DEC -3 B-14
045387,000214: 7751 77775 NEG2 OCT 77775
045388,000215: 7752 77776 NEGONE DEC -1 B-14
045389,000216:
045390,000217: # Page 1098
045391,000218:
045392,000219: # DEFINED BY EQUALS
045393,000220:
045394,000221: # IT WOULD BE TO THE USERS ADVANTAGE TO OCCASIONALLY CHECK ANY OF THESE SYMBOLS IN ORDER TO PREVENT ANY
045395,000222: # ACCIDENTAL DEFINITION CHANGES.
045396,000223:
045397,000224: 7753 7752 MINUS1 = NEG1
045398,000225: 7753 7752 NEG1 = NEGONE
045399,000226: 7753 4753 ONE = BIT1
045400,000227: 7753 4752 TWO = BIT2
045401,000228: 7753 6250 THREE = OCTAL3
045402,000229: 7753 6250 LOW2 = THREE
045403,000230: 7753 4751 FOUR = BIT3
045404,000231: 7753 6245 SIX = REVCNT
045405,000232: 7753 4757 LOW3 = SEVEN
045406,000233: 7753 4750 EIGHT = BIT4
045407,000234: 7753 4320 NINE = R2D1
045408,000235: 7753 4363 TEN = BINCON
045409,000236: 7753 4760 NOUTCON = ELEVEN
045410,000237: 7753 4360 OCT23 = VD1
045411,000238: 7753 4362 OCT25 = MD1
045412,000239: 7753 4742 PRIO1 = BIT10
045413,000240: 7753 5007 EBANK3 = OCT1400
045414,000241: 7753 4741 PRIO2 = BIT11
045415,000242: 7753 4775 OCT120 = SUPER101
045416,000243: 7753 4776 OCT140 = SUPER110
045417,000244: 7753 4741 2K = BIT11
045418,000245: 7753 4741 EBANK4 = BIT11
045419,000246: 7753 4740 PRIO4 = BIT12
045420,000247: 7753 5015 EBANK6 = PRIO3
045421,000248: 7753 4737 QUARTER = BIT13
045422,000249: 7753 4737 PRIO10 = BIT13
045423,000250: 7753 7666 OCT10001 = CCSL
045424,000251: 7753 4736 POS1/2 = HALF
045425,000252: 7753 4736 PRIO20 = BIT14
045426,000253: 7753 4736 HALF = BIT14
045427,000254: 7753 4355 PRIO30 = CHRPRIO
045428,000255: 7753 4355 BIT13-14 = PRIO30 # INTERPRETER USES IN PROCESSING STORECODE
045429,000256: 7753 6474 OCT30002 = TLOAD +1
045430,000257: 7753 7725 B12T14 = PRIO34
045431,000258: 7753 4735 NEGMAX = BIT15
045432,000259: 7753 4735 VLOADCOD = BIT15
045433,000260: 7753 6112 VLOAD* = OCT40001
045434,000261: 7753 4101 OCT60000 = RELTAB11
045435,000262: 7753 4350 BANKMASK = HI5
045436,000263:
End of include-file FIXED_FIXED_CONSTANT_POOL.agc. Parent file is MAIN.agc