Source Code
![]() |
These source-code files were transcribed from the Raytheon document "FINAL REPORT:
AUXILIARY MEMORY FOR APOLLO GUIDANCE COMPUTER CONTRACT NAS 9-5994". This code is
unique, in that it was written by Raytheon Corporation, rather than by the MIT
Instrumentation Laboratory, for the purpose of working with the prototype
Auxiliary Memory devices built by Raytheon, though never deployed in a mission.
The AGC software syntax differs slightly
from the more-usual AGC code, because Raytheon clearly had created their own assembler
instead of using the existing YUL or GAP assemblers. The report was obtained from Internet Archive mirrors of the NASA Technical Reports Server (NTRS). The report can be found here and the appendix containing the listing can be found here. Report any problems by creating "issues" at the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: SUPER JOB BY SUPER TEAM JAN 8, 1968 |
000002,000002: # Copyright: Public domain.
000003,000003: # Filename: MAIN.agc
000004,000004: # Purpose: Part of the source code for SUPER JOB, a program developed
000005,000005: # at Raytheon to exercise the Auxiliary Memory for the AGC.
000006,000006: # It appears to have been developed from scratch, and shares
000007,000007: # no heritage with any programs from MIT. It was also built
000008,000008: # with a Raytheon assembler rather than YUL or GAP.
000009,000009: # Assembler: yaYUL
000010,000010: # Contact: Ron Burkey <info@sandroid.org>.
000011,000011: # Website: https://www.ibiblio.org/apollo/index.html
000012,000012: # Page Scans: http://www.ibiblio.org/apollo/Documents/R68-4125-Volume2.pdf
000013,000013: # Mod history: 2017-01-27 MAS Created.
000014,000014: #
000015,000015: # MAIN.agc is a little different from the other SuperJob files
000016,000016: # provided, in that it doesn't represent anything that appears
000017,000017: # directly in the original source. What we have done for
000018,000018: # organizational purposes is to split the huge monolithic source
000019,000019: # code into smaller, more manageable chunks--i.e., into individual
000020,000020: # source files. Those files are rejoined within this file as
000021,000021: # "includes". It just makes it a little easier to work with.
000022,000022: # SuperJob doesn't divide quite as nicely as MIT-developed
000023,000023: # programs, so I've simply split out "SPECIAL AND CENTRAL" and
000024,000024: # "CHANNELS" from "SUPER JOB". The split between "SUPER JOB"
000025,000025: # and "AM DEMONSTRATION" appears natural; in fact, the look
000026,000026: # like they were assembled separately.
000027,000027:
000028,000028: # The following note appears on the page preceding the listings
000029,000029: # in the appendix:
000030,000030: # """
000031,000031: # ACM DEMONSTRATION CHANGES
000032,000032:
000033,000033: # NOTE: In order to execute function i of the Utility
000034,000034: # Verb (the word-for-word check using Verb 00)
000035,000035: # the following changes must be made to the
000036,000036: # program:
000037,000037:
000038,000038: # BANK ADDRESS CHANGE TO
000039,000039: # 16 2446 12453
000040,000040: # 16 2453 30007
000041,000041: # 16 2454 54173
000042,000042: # 16 2455 07446
000043,000043: # """
000044,000044: # These notes are replicated next to the relevant addresses
000045,000045: # in SUPER_JOB.agc.
000046,000046:
000047,000047: # Source file name Starting Page
000048,000048: # ---------------- -------------
000049,000049:
000050,000050: $SPECIAL_AND_CENTRAL.agc # D-2
000206,000051: $CHANNELS.agc # D-4
000249,000052: $SUPER_JOB.agc # D-4
002669,000053: $AM_DEMONSTRATION.agc # D-46
013116,000054:
Usage Table for Fixed-Memory Banks
Bank 00: 0000/2000 words used.
Bank 01: 0000/2000 words used.
Bank 02: 1766/2000 words used.
Bank 03: 1774/2000 words used.
Bank 04: 1777/2000 words used.
Bank 05: 1777/2000 words used.
Bank 06: 1777/2000 words used.
Bank 07: 1777/2000 words used.
Bank 10: 1777/2000 words used.
Bank 11: 1777/2000 words used.
Bank 12: 1777/2000 words used.
Bank 13: 1777/2000 words used.
Bank 14: 1777/2000 words used.
Bank 15: 1777/2000 words used.
Bank 16: 0453/2000 words used.
Bank 17: 0000/2000 words used.
Bank 20: 0000/2000 words used.
Bank 21: 0000/2000 words used.
Bank 22: 0000/2000 words used.
Bank 23: 0000/2000 words used.
Bank 24: 0000/2000 words used.
Bank 25: 0000/2000 words used.
Bank 26: 0000/2000 words used.
Bank 27: 0000/2000 words used.
Bank 30: 0000/2000 words used.
Bank 31: 0000/2000 words used.
Bank 32: 0000/2000 words used.
Bank 33: 0000/2000 words used.
Bank 34: 0000/2000 words used.
Bank 35: 0000/2000 words used.
Bank 36: 0000/2000 words used.
Bank 37: 0000/2000 words used.
Bank 40: 0000/2000 words used.
Bank 41: 0000/2000 words used.
Bank 42: 0000/2000 words used.
Bank 43: 0000/2000 words used.
SymbolTable
000001,E: $17 0017 000002,E: $3 0003 000003,E: $4 0004 000004,E: $5 0005
000005,E: $6 0006 000006,E: $7 0007 000007,F: 1STBKA 5746 000008,C: 1STBNKNO 0000157
000009,C: 1STDIGPR 0000147 000010,F: 2NDBKA 5747 000011,F: 3CONT 5111 000012,F: 3RDBKA 5750
000013,F: 4THBKA 5751 000014,F: 4TOGO 4316 000015,F: 50TOGO 4317 000016,F: 7MINERR 6646
000017,F: 7SCHKA 7601 000018,C: A 0000000 000019,F: AAA 4637 000020,F: ABORTCER 5700
000021,F: ABORTER1 6570 000022,F: ABORTER2 6601 000023,F: ABORTER3 6654 000024,F: ABORTL 5675
000025,C: ACMFBK 0000165 000026,F: ACMFBKA 5737 000027,F: ACMON1A 5221 000028,F: ACMONA 5172
000029,C: ACMSTAT 0000116 000030,C: ADDERA 0000102 000031,C: ADDHOLD 0000154 000032,F: ADDPROC 7530
000033,F: ADDRESSA 4713 000034,F: AGCFAULT 6136 000035,F: ALL6SL 4340 000036,F: ALL7SL 4337
000037,C: ALTM 0000060 000038,F: AMCHKL 16,2031 000039,F: AMCHKLA 7173 000040,F: AMSTAT 5146
000041,F: AMTOGOA 5517 000042,C: ARUPT 0000010 000043,F: BANK536A 5522 000044,C: BANKNO 0000153
000045,C: BANKNUMA 0000133 000046,C: BB 0000006 000047,F: BBA 5007 000048,C: BBK 0000145
000049,F: BBKAA 5743 000050,F: BBKBA 5744 000051,F: BBKCA 5752 000052,F: BBKDA 5753
000053,F: BBKEA 5754 000054,F: BBKFA 5755 000055,F: BBKGA 5756 000056,F: BBKHA 5757
000057,F: BBKIA 5760 000058,F: BBKJA 5761 000059,C: BBRUPT 0000016 000060,F: BEGINL 6153
000061,F: BIT13 5655 000062,F: BIT14 5656 000063,F: BIT15 5657 000064,F: BIT3 7362
000065,F: BIT4 5654 000066,F: BIT8 5674 000067,F: BLANKNA 4605 000068,F: BLANKNRL 4017
000069,F: BLANKR1A 4613 000070,F: BLANKR2A 4625 000071,F: BLANKR3A 4653 000072,F: BLKR2R3A 4675
000073,F: BLOBA 16,2447 000074,C: BMAGX 0000042 000075,C: BMAGY 0000043 000076,C: BMAGZ 0000044
000077,F: BNK3 5702 000078,F: BNK34 5703 000079,F: BNK3A 5660 000080,F: BNK5 5706
000081,F: BNKGD 16,2171 000082,F: BNKNOOK 16,2154 000083,C: BNKNUMAA 0000163 000084,C: BNKNUMBA 0000164
000085,C: BNKPR 0000150 000086,C: BNKSHFT 0000156 000087,F: BOTEOT6A 5461 000088,F: BOTHGONE 6414
000089,F: BOTHN1A 5220 000090,F: BOTHONA 5165 000091,C: BRUPT 0000017 000092,F: C1A 5471
000093,F: C2A 5472 000094,F: C3A 5473 000095,F: CCA 4666 000096,C: CDUX 0000032
000097,C: CDUXCMD 0000050 000098,C: CDUY 0000033 000099,C: CDUYCMD 0000051 000100,C: CDUZ 0000034
000101,C: CDUZCMD 0000052 000102,F: CENTERL 4023 000103,C: CH1 0000001 000104,C: CH10 0000010
000105,F: CH10RST 4163 000106,C: CH11 0000011 000107,C: CH12 0000012 000108,C: CH13 0000013
000109,C: CH14 0000014 000110,C: CH15 0000015 000111,C: CH16 0000016 000112,C: CH20 0000020
000113,C: CH21 0000021 000114,C: CH23 0000023 000115,C: CH25 0000025 000116,F: CH25ERR 6643
000117,C: CH25LOAD 0000124 000118,F: CH25TBLE 4345 000119,C: CH26 0000026 000120,C: CH27 0000027
000121,C: CH3 0000003 000122,C: CH30 0000030 000123,C: CH31 0000031 000124,C: CH32 0000032
000125,C: CH33 0000033 000126,C: CH34 0000034 000127,C: CH35 0000035 000128,C: CH4 0000004
000129,C: CH7 0000007 000130,F: CHECK 6255 000131,F: CHECKAG 6263 000132,F: CHKCNTDN 6725
000133,F: CLRACM 7107 000134,F: CLRERROR 7271 000135,C: CNTDWN1L 0000127 000136,C: CNTDWN2L 0000126
000137,F: COMOUT 5462 000138,F: COMROUTN 7045 000139,C: CONIN 0000027 000140,F: CONINERR 6640
000141,F: CONOTCHK 6216 000142,C: CONOUT 0000025 000143,F: CONOUTER 6624 000144,F: CONT1A 5252
000145,F: CONT2A 5270 000146,F: CONT3A 5314 000147,F: CONTCLR 7116 000148,F: CONTDATA 7567
000149,F: CONTINU 7220 000150,F: CONTINUE 6376 000151,F: CONTMODE 7501 000152,F: CONTSUM 6551
000153,F: CONTTRNS 7062 000154,F: CONTWDCK 7202 000155,F: CONTZCHK 7145 000156,C: CORERCNT 0000125
000157,F: CRTNAFT 7164 000158,C: CYL 0000022 000159,C: CYR 0000020 000160,F: D10 4022
000161,F: D520 4006 000162,C: DATAHOLD 0000162 000163,F: DATALD 7542 000164,F: DATATRAN 6337
000165,C: DCNTL 0000106 000166,F: DDA 5406 000167,F: DEVIDES 6343 000168,C: DEXA 0000061
000169,F: DISPITL 16,2117 000170,F: DISPLAY 4506 000171,C: DISYES 0000135 000172,C: EB 0000003
000173,C: EBCOUNT 0000141 000174,F: EBFULL 5735 000175,F: EBKEQUIV 5725 000176,F: EBKPR 16,2335
000177,F: EBKPRA 16,2343 000178,F: ECHCKPRO 6121 000179,C: EDOP 0000023 000180,C: EIGHTH 0000175
000181,C: EMSD 0000055 000182,F: ENDFBA 5600 000183,F: ENDOP 7504 000184,F: ENTCHK 16,2063
000185,F: ENTRCDEL 4013 000186,F: ENTROK 16,2071 000187,F: EPARPRO 6111 000188,F: ERRCHKAA 7230
000189,C: ERRCOUNT 0000143 000190,F: ERRSTL 4321 000191,F: EXITLLL 16,2215 000192,C: FB 0000004
000193,C: FBCOUNT 0000142 000194,F: FBFULL 5736 000195,F: FBKPR 16,2277 000196,F: FEXTA 6110
000197,F: FINKBKA 16,2452 000198,F: FIRST5 4012 000199,F: FIRSTBKA 5612 000200,F: FIVE 16,2426
000201,F: FLASHL 4026 000202,F: FNDTRNSP 6311 000203,F: FOUR1S 5661 000204,F: FOUR2S 5662
000205,F: FOUR3S 5663 000206,F: FOUR4S 5664 000207,F: FOUR5S 5665 000208,F: FOUR6S 5666
000209,F: FPARPRO 6115 000210,F: FRSTDIG 4414 000211,F: FULLESS2 5745 000212,C: FXDOVFLO 0013777
000213,F: FXDPR 5631 000214,C: FXDSUM 0013776 000215,C: GETADD 0000151 000216,C: GETDATA 0000161
000217,F: GETNXBA 5607 000218,F: GETOUT 6102 000219,F: GETSUM 7007 000220,F: GOA 5552
000221,F: GOATTRNS 5677 000222,F: GOBAA 5566 000223,C: GOBAKA 0000104 000224,F: GOBBA 5576
000225,F: GODISP 7451 000226,F: GOJAM 4000 000227,F: GOJAMPR 6017 000228,F: GOL 16,2427
000229,F: GOTOERR 16,2422 000230,F: GOTOSUC 16,2423 000231,F: GOTRPAC 16,2366 000232,F: GTNXTBK 16,2431
000233,C: GYROCTR 0000047 000234,F: HGHTST+1 4016 000235,F: HIGH10 5670 000236,F: HIGHLOC 5704
000237,C: HOLD 0000144 000238,C: HOLD1STB 0000140 000239,C: HOLDBKDG 0000160 000240,C: HOLDIT 0000146
000241,C: HOLDNO 0000177 000242,F: IDLE 4460 000243,F: IDSERRA 6565 000244,F: IDSTAERA 6617
000245,F: IDSTAERR 6612 000246,C: IDSTARTL 0000120 000247,C: IDSTOPL 0000121 000248,F: IDSTPERR 6604
000249,F: INCRBKA 5616 000250,C: INCRDEDA 0000132 000251,F: INCREB 7257 000252,F: INCREBA 7265
000253,F: INCRERRC 6425 000254,F: INCRFB 5707 000255,F: INKFB 6545 000256,C: INLINK 0000045
000257,C: ITA 0000101 000258,F: JMPTBL 4032 000259,C: JUNK1L 0000122 000260,C: JUNKA 0000062
000261,F: K1RUPT 4024 000262,F: K2RUPT 4030 000263,F: KEEPGNG 16,2201 000264,F: KYPROC1L 4107
000265,F: KYPROC2L 4115 000266,C: L 0000001 000267,F: LAST4A 5521 000268,F: LASTBKA 5615
000269,F: LASTBNK 5705 000270,F: LDBNKL 7515 000271,C: LDEBLL 0000203 000272,C: LDFBLL 0000202
000273,F: LDPN5 16,2265 000274,C: LEMONM 0000056 000275,F: LISTID 7751 000276,F: LOADSET 7507
000277,C: LOCA 0000134 000278,F: LOCCNTDN 6465 000279,C: LOCSTOA 0000100 000280,F: LOOKAGAN 6307
000281,F: LOOKUPA 4724 000282,F: LOW11 5671 000283,F: LOW5 5667 000284,C: LRUPT 0000011
000285,C: LSTCNT 0000171 000286,F: MASK1A 5222 000287,F: MASKA 4712 000288,F: MASKAA 4341
000289,F: MASKBA 4360 000290,F: MASKCA 4361 000291,F: MASKR2CA 5145 000292,F: MASKR3CA 5144
000293,F: MDISPLA 4031 000294,F: MERR 6000 000295,F: MIKEB 7512 000296,F: MINUS20 5763
000297,F: MINUS6 5764 000298,F: MODESEL 7463 000299,F: MU530A 5512 000300,F: MU531A 5513
000301,F: MU532A 5514 000302,F: MU533A 5515 000303,F: NARTCAPA 7336 000304,C: NEWID 0000167
000305,F: NOBNKS 16,2145 000306,F: NOFLASHL 4027 000307,F: NONVERBL 4204 000308,C: NOOFBNKS 0000200
000309,F: NOTON1A 5217 000310,F: NOTONA 5167 000311,C: NOUN 0000072 000312,F: NOUN56 5742
000313,F: NOUN57 5740 000314,F: NOUN60 7616 000315,F: NOUN61 5724 000316,F: NOUN62 5723
000317,F: NOUN63 5722 000318,F: NOUN64 5721 000319,F: NOUN65 5720 000320,F: NOUN66 5765
000321,F: NOUN67 5717 000322,F: NOUN70 5716 000323,F: NOUN71 5715 000324,F: NOUN72 5714
000325,F: NOUN73 5713 000326,F: NOUN74 5712 000327,F: NOUN75 5711 000328,F: NOUN76 5710
000329,C: NUMA 0000105 000330,F: NUMAA 4342 000331,C: NWATCH 0000067 000332,F: OC10 5475
000333,F: OC14 5731 000334,F: OC17 4021 000335,F: OC177 7615 000336,F: OCT10A 5516
000337,F: OCT51010 5762 000338,F: OCT77A 5617 000339,F: OKNDATA 6270 000340,C: OLDID 0000170
000341,F: ONE 4003 000342,F: ONEBNK 16,2164 000343,C: ONETO5 0000172 000344,F: ONEUPERR 6573
000345,F: OPERCDL 4025 000346,F: OPERROR 4435 000347,C: OPTX 0000036 000348,C: OPTXCMD 0000054
000349,C: OPTY 0000035 000350,C: OPTYCMD 0000053 000351,F: OUTCMSET 6075 000352,F: OUTCOML 4320
000353,F: OUTCONAA 5465 000354,F: OUTCONBA 5466 000355,F: OUTCONCA 5467 000356,F: OUTCONDA 5477
000357,F: OUTCONEA 5500 000358,F: OUTCONFA 5501 000359,F: OUTCONGA 5502 000360,C: OUTLINK 0000057
000361,F: OVFLOERR 6666 000362,C: OVFLOL 0000131 000363,F: PACTRNS 7060 000364,F: PART2A 5021
000365,F: PARTCONA 5115 000366,F: PFS 5673 000367,C: PIPAX 0000037 000368,C: PIPAY 0000040
000369,C: PIPAZ 0000041 000370,F: PRERSTL 4171 000371,F: PROCDIGT 4366 000372,F: PROCL 4122
000373,F: PROG 6246 000374,C: PUNCH5 0000201 000375,C: PUNCH6 0000210 000376,C: Q 0000002
000377,C: QRUPT 0000012 000378,C: QSTORE 0000070 000379,C: QSTORL 0000137 000380,C: R1 0000073
000381,C: R1ADD 0000117 000382,F: R1STATLD 6562 000383,C: R2 0000074 000384,C: R3 0000075
000385,C: RDLD 0000176 000386,F: RDORWRTL 6430 000387,F: READK14 5733 000388,F: READK15 5734
000389,F: READKC25 5741 000390,C: READKSTA 0000136 000391,C: READX 0000152 000392,F: REQCHK 6125
000393,F: RESTRNSP 6634 000394,C: RESUMEA 0000077 000395,F: RETURNL 4454 000396,F: RLLD 16,2040
000397,F: RLRD 16,2035 000398,C: RNRAD 0000046 000399,F: ROUTINA 5117 000400,F: SETSW 16,2044
000401,C: SEVENTH 0000174 000402,F: SHEBNK 16,2352 000403,F: SHFBNK 16,2306 000404,F: SHIFT3L 5643
000405,C: SIXTH 0000173 000406,F: SMPXTPX 16,2125 000407,F: SOMEA 6742 000408,C: SR 0000021
000409,F: STARTADD 6460 000410,F: STARTBKA 5543 000411,F: STARTBLE 4303 000412,F: STARTCNT 6341
000413,F: STARTSUM 6720 000414,F: STATU17A 5614 000415,C: STATUS 0000071 000416,F: STATUS1A 5463
000417,F: STATUS2A 5474 000418,F: STATUS4A 5520 000419,F: STDATTR 16,2047 000420,F: STOPA 5613
000421,F: STOPTBLE 4324 000422,F: SUBA 5223 000423,F: SUCCESAA 5255 000424,F: SUCCESBA 5273
000425,F: SUCCESCA 5317 000426,F: SUCCESDA 5347 000427,F: SUCCESS 5620 000428,F: SUMERR 6657
000429,F: SUMIT 6675 000430,C: SUML 0000130 000431,F: SUPIMPA 5216 000432,C: SWITCH 0000166
000433,F: T3RPTPR 4444 000434,F: T3RUPT 4014 000435,F: T4RPTPR 4462 000436,F: T4RUPT 4020
000437,F: T5RUPT 4010 000438,F: T6RUPT 4004 000439,C: TEMP1L 0000110 000440,C: TEMP2L 0000111
000441,C: TEMP3L 0000112 000442,C: TEMP4L 0000113 000443,C: TEMPA 0000103 000444,C: TEMPAA 0000064
000445,F: TERR 5174 000446,F: THIRTY 4011 000447,F: TIMAA 4362 000448,F: TIMBA 4363
000449,C: TIME1 0000025 000450,F: TIME1A 5464 000451,C: TIME2 0000024 000452,F: TIME2A 5470
000453,C: TIME3 0000026 000454,C: TIME4 0000027 000455,F: TIME4A 5476 000456,C: TIME5 0000030
000457,F: TIME5A 5503 000458,C: TIME6 0000031 000459,C: TMASKA 0000076 000460,F: TOSUCCL 7454
000461,C: TPBNKL 0000123 000462,F: TPTRAN 6142 000463,F: TRANSC 7455 000464,F: TRANSERR 6576
000465,F: TRFRA 7315 000466,F: TRPACBNK 16,2270 000467,C: TRXXB 0000206 000468,C: TRXYB 0000204
000469,C: TRYXB 0000205 000470,C: TRYYB 0000207 000471,F: TWO 4015 000472,F: TWOSH 16,2315
000473,F: TWOSHE 16,2361 000474,F: UPDATE1A 4746 000475,F: UPDATE2A 4774 000476,F: UPDATE3A 5052
000477,F: UPDATENA 4736 000478,F: UPDISPLA 7446 000479,F: UPERCNT 7234 000480,F: UPERRCNT 6410
000481,F: V00BK 5215 000482,F: V00PROC 7363 000483,F: V01 5224 000484,F: V02 5321
000485,F: V03 5362 000486,F: V04 5411 000487,F: V05 5435 000488,F: V0607 5504
000489,F: V08 5510 000490,F: V09 5523 000491,F: V0BF 4075 000492,F: V10 7346
000493,F: V11 5526 000494,F: V12 5531 000495,F: V13 5534 000496,F: V14 7032
000497,F: V15 7040 000498,F: V16 7301 000499,F: V17 5537 000500,F: V18 4471
000501,F: V19 4475 000502,F: V20 4501 000503,F: V21 7617 000504,F: V22 7623
000505,F: V8CHK 7020 000506,F: VB0F 4063 000507,F: VBB 4007 000508,F: VBBLNK 4160
000509,F: VBCDEL 4002 000510,F: VERB8 5732 000511,C: VERBFFL 0000114 000512,C: VERBREGL 0000115
000513,F: WAIT1L 5676 000514,F: WAIT2L 5672 000515,F: WDATAL 5701 000516,F: WHCHMBD 16,2021
000517,F: WRITE1A 5170 000518,F: WRITEBA 4677 000519,F: WRITEIT 16,2256 000520,F: WRITTPL 16,2230
000521,F: XXX 16,2424 000522,F: YYY 16,2425 000523,C: Z 0000005 000524,F: ZERO 4005
000525,F: ZEROA 7263 000526,C: ZEROS 0000007 000527,C: ZRUPT 0000015 000528,F: ZZPROC 7404
000529,C: ZZTAG 0000107 000530,F: ZZZ 16,2430
Assembly Status
Unresolved symbols: 0
Fatal errors: 0
Warnings: 9
Bugger Words