Source Code
![]() |
This is the source-code for the Apollo 9 Command Module's Guidance Computer.
These files were derived originally from the scan from MIT's Dibner Institute's
now-discontinued website titled "History of Recent Science and Technology", which
in turn was originally created by Gary Neff, though his high-quality scans were
unfortunately reduced in legibility when presented online.
The markings on the front of the
printout imply that it was the original AGC developer Norm Brodeur's copy.
A scan by Ron Burkey has superceded it, made from a more-legible copy from the collection of original
AGC developer Fred Martin. The source code was transcribed from
those images by Ron Burkey. Note that the page images
presented online are of reduced quality, and that higher-quality images
are available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:ASSEMBLE REVISION 249 OF AGC PROGRAM COLOSSUS BY NASA 2021111-041 20'35 OCT. 28,1968Note that the date is the date of the printout, not the date of the program revision. |
060112,000002: ## Copyright: Public domain.
060113,000003: ## Filename: PHASE_TABLE_MAINTENANCE.agc
060114,000004: ## Purpose: Part of the source code for Colossus, build 249.
060115,000005: ## It is part of the source code for the Command Module's (CM)
060116,000006: ## Apollo Guidance Computer (AGC), for Apollo 9.
060117,000007: ## Assembler: yaYUL
060118,000008: ## Reference: Starts on p. 1372
060119,000009: ## Contact: Ron Burkey <info@sandroid.org>.
060120,000010: ## Website: www.ibiblio.org/apollo.
060121,000011: ## Mod history: 08/30/04 RSB. Adapted from corresponding Luminary131 file.
060122,000012: ## 2011-05-07 JL Flagged SBANK= workarounds for future removal.
060123,000013: ## Removed workaround.
060124,000014: ## 2017-01-06 RSB Page numbers now agree with those on the
060125,000015: ## original harcopy, as opposed to the PDF page
060126,000016: ## numbers in 1701.pdf.
060127,000017: ## 2017-01-18 RSB Cross-diff'd comment text (not whitespace)
060128,000018: ## vs the already-proofed corresponding Colossus
060129,000019: ## 237 and Comanche 55 source-code files
060130,000020: ## and corrected errors found.
060131,000021: ##
060132,000022: ## The contents of the "Colossus249" files, in general, are transcribed
060133,000023: ## from a scanned copy of the program listing. Notations on this
060134,000024: ## document read, in part:
060135,000025: ##
060136,000026: ## Assemble revision 249 of AGC program Colossus by NASA
060137,000027: ## 2021111-041. October 28, 1968.
060138,000028: ##
060139,000029: ## This AGC program shall also be referred to as
060140,000030: ## Colossus 1A
060141,000031: ##
060142,000032: ## Prepared by
060143,000033: ## Massachusetts Institute of Technology
060144,000034: ## 75 Cambridge Parkway
060145,000035: ## Cambridge, Massachusetts
060146,000036: ## under NASA contract NAS 9-4065.
060147,000037: ##
060148,000038: ## Refer directly to the online document mentioned above for further information.
060149,000039: ## Please report any errors (relative to the scanned pages) to info@sandroid.org.
060150,000040: ##
060151,000041: ## In some cases, where the source code for Luminary 131 overlaps that of
060152,000042: ## Colossus 249, this code is instead copied from the corresponding Luminary 131
060153,000043: ## source file, and then is proofed to incorporate any changes.
060154,000044:
![]() |
Page 1372 |
060156,000046: # SUBROUTINE TO UPDATE THE PROGRAM NUMBER DISPLAY ON THE DSKY.
060157,000047:
060158,000048: 43,3722 COUNT 02/PHASE
060159,000049: 5243 BLOCK 02
060160,000050: 4000 SETLOC FFTAG1
060161,000051: 4000 BANK
060162,000052:
060163,000053: 5243 50002 NEWMODEX INDEX Q # UPDATE MODREG. ENTRY FOR MODE IN FIXED.
060164,000054: 5244 30000 CAF 0
060165,000055: 5245 24002 INCR Q
060166,000056:
060167,000057: 5246 55011 NEWMODEA TS MODREG # ENTRY FOR MODE IN A.
060168,000058: 5247 35252 MMDSPLAY CAF +3 # DISPLAY MAJOR MODE.
060169,000059: 5250 22006 PREBJUMP LXCH BBANK # PUTS BBANK IN L
060170,000060: 5251 14577 TCF BANKJUMP # PUTS Q INTO A
060171,000061: 5252 20344 CADR SETUPDSP
060172,000062:
060173,000063: # RETURN TO CALLER +3 IF MODE = THAT AT CALLER +1. OTHERWISE RETURN TO CALLER +2.
060174,000064:
060175,000065: 5253 50002 CHECKMM INDEX Q
060176,000066: 5254 40000 CS 0
060177,000067: 5255 61011 AD MODREG
060178,000068: 5256 00006 EXTEND
060179,000069: 5257 16710 BZF Q+2
060180,000070: 5260 16706 TCF Q+1 # NO MATCH
060181,000071:
060182,000072: 5261 6711 TCQ = Q+2 +1
060183,000073:
060184,000074: 14,3744 BANK 14
060185,000075: 10,2000 SETLOC PHASETAB
060186,000076: 10,2000 BANK
060187,000077:
060188,000078: 10,2344 COUNT 10/PHASE
060189,000079:
060190,000080: 10,2344 00004 SETUPDSP INHINT
060191,000081: 10,2345 52071 DXCH RUPTREG1 # SAVE CALLER-S RETURN 2CADR
060192,000082: 10,2346 34371 CAF PRIO30 # EITHER A TASK OR JOB CAN COME TO
060193,000083: 10,2347 05027 TC NOVAC # NEWMODE X
060194,000084: 10,2350 1011 EBANK= MODREG
060195,000085: 10,2350 03435 60102 2CADR DSPMMJOB
060196,000086:
060197,000087: 10,2352 52071 DXCH RUPTREG1
060198,000088: 10,2353 00003 RELINT
060199,000089: 10,2354 52006 DXCH Z # RETURN
060200,000090:
060201,000091: 10,2355 40,3435 DSPMMJOB EQUALS DSPMMJB
060202,000092:
060203,000093: 5261 BLOCK 02
![]() |
Page 1373 |
060205,000095: 4000 SETLOC FFTAG1
060206,000096: 4000 BANK
060207,000097:
![]() |
Page 1374 |
060209,000099: # PHASCHNG IS THE MAIN WAY OF MAKING PHASE CHANGES FOR RESTARTS. THERE ARE THREE FORMS OF PHASCHNG, KNOWN AS TYPE
060210,000100: # A, TYPE B, AND TYPE C. THEY ARE ALL CALLED AS FOLLOWS, WHERE OCT XXXXX CONTAINS THE PHASE INFORMATION,
060211,000101: # TC PHASCHNG
060212,000102: # OCT XXXXX
060213,000103: # TYPE A IS CONCERNED WITH FIXED PHASE CHANGES, THAT IS, PHASE INFORMATION THAT IS STORED PERMANENTLY. THESE
060214,000104: # OPTIONS ARE, WHERE G STANDS FOR A GROUP AND .X FOR THE PHASE,
060215,000105: # G.0 INACTIVE, WILL NOT PERMIT A GROUP G RESTART
060216,000106: # G.1 WILL CAUSE THE LAST DISPLAY TO BE REACTIVATED, USED MAINLY IN MANNED FLIGHTS
060217,000107: # G.EVEN A DOUBLE TABLE RESTART, CAN CAUSE ANY COMBINATION OF TWO JOBS, TASKS, AND/OR
060218,000108: # LONGCALL TO BE RESTARTED.
060219,000109: # G.ODD NOT .1 A SINGLE TABLE RESTART, CAN CAUSE EITHER A JOB, TASK, OR LONGCALL RESTART
060220,000110:
060221,000111: # THIS INFORMATION IS PUT INTO THE OCTAL WORD AFTER TC PHASCHNG AS FOLLOWS
060222,000112: # TL0 00P PPP PPP GGG ,
060223,000113: # WHERE EACH LETTER OR NUMBER STANDS FOR A BIT. THE G:S STAND FOR THE GROUP, OCTAL 1-7, THE P:S FOR THE PHASE,
060224,000114: # OCTAL 0 - 127. 0:S MUST BE 0. IF ONE WISHES TO HAVE THE TBASE OF GROUP G TO BE SET AT THIS TIME,
060225,000115: # T IS SET TO 1, OTHERWISE IT IS SET TO 0. SIMIARLY IF ONE WISHES TO SET LONGBASE, THEN L IS SET TO 1, OTHERWISE
060226,000116: # IT IS SET TO 0. SOME EXAMPLES,
060227,000117: # TC PHASCHNG THIS WILL CAUSE GROUP 3 TO BE SET TO 0,
060228,000118: # OCT 00003 MAKING GROUP 3 INACTIVE
060229,000119:
060230,000120: # TC PHASCHNG IF A RESTART OCCURS THIS WOULD CAUSE
060231,000121: # OCT 00012 GROUP 2 TO RESTART THE LAST DISPLAY
060232,000122:
060233,000123: # TC PHASCHNG THIS SETS THE TBASE OF GROUP 4 AND IN
060234,000124: # OCT 40064 CASE OF A RESTART WOULD START UP THE TWO
060235,000125: # THINGS LOCATED IN THE DOUBLE 4.6 RESTART
060236,000126: # LOCATION
060237,000127:
060238,000128: # TC PHASCHNG THIS SETS LONGBASE AND UPON A RESTART
060239,000129: # OCT 20135 CAUSES 5.13 TO BE RESTARTED (SINCE
060240,000130: # LONGBASE WAS SET THIS SINGLE ENTRY
060241,000131: # SHOULD BE A LONGCALL)
060242,000132:
060243,000133: # TC PHASCHNG SINCE BOTH TBASE4 AND LONGBASE ARE SET,
060244,000134: # OCT 60124 4.12 SHOULD CONTAIN BOTH A TASK AND A
060245,000135: # LONGCALL TO BE RESTARTED
060246,000136:
060247,000137: # TYPE C PHASCHNG CONTAINS THE VARIABLE TYPE OF PHASCHNG INFORMATION. INSTEAD OF THE INFORMATION BEING IN A
060248,000138: # PERMANENT FORM, ONE STORES THE DESIRED RESTART INFORMATION IN A VARIABKE LOCATION. THE BITS ARE AS FOLLOWS,
060249,000139: # TL0 1AD XXX CJW GGG
060250,000140: # WHERE EACH LETTER OR NUMBER STANDS FOR A BIT. THE G:S STAND FOR THE GROUP, OCTAL 1 - 7. IF THE RESTART IS TO
060251,000141: # BE BY WAITLIST, W IS SET TO 1, IF IT IS A JOB, J IS SET TO 1, IF IT IS A LONGCALL, C IS SET TO 1. ONLY ONE OF
060252,000142: # THESE THREE BITS MAY BE SET. X:S ARE IGNORED 1 MUST BE 1, AND 0 MUST BE 0. AGAIN T STANDS FOR THE TBASE,
![]() |
Page 1375 |
060254,000144: # AND L FOR LONGBASE. THE BITS A AND D ARE CONCERNED WITH THE VARIABLE INFORMATION. IF D IS SET TO 1, A PRIORITY
060255,000145: # OR DELTA TIME WILL BE READ FROM THE NEXT LOCATION AFTER THE OCTAL INFORMATION, IF THIS IS TO BE INDIRECT, THAT
060256,000146: # IS, THE NAME OF A LOCATION COMT+INING THE INFORMATION (DELTA TIME ONLY), THEN THIS IS GIVEN AS THE -GENADR OF
060257,000147: # THAT LOCATION WHICH CONTAINS THE DELTA TIME. IF THE OLD PRIORITY OR DELTA TIME IS TO BE USED, THAT WHICH IS
060258,000148: # ALREADY IN THE VARIABLE STORAGE, THEN D IS SET TO 0. NEXT THE A BIT IS USED. IF IT IS SET TO 0, THE ADDRESS
060259,000149: # THAT WOULD BE RESTARTED DURING A RESTART IS THE NEXT LOCATION AFTER THE PHASE INFORMATION, THAT IS, EITHER
060260,000150: # (TC PHASCHNG) +2 OR +3, DEPENDING ON WHETHER D HAD BEEN SET OR NOT. IF A IS SET TO 1, THEN THE ADDRESS THAT
060261,000151: # WOULD BE RESTARTED IS THE 2CADR THAT IS READ FROM THE NEXT TWO LOCATIONS. EXAMPLES,
060262,000152: # AD TC PHASCHNG THIS WOULD CAUSE LOCATION AD +3 TO BE
060263,000153: # AD+1 OCT 05023 RESTARTED BY GROUP THREE WITH A PRIORITY
060264,000154: # AD+2 OCT 23000 OF 23. NOTE UPON RETURNING IT WOULD
060265,000155: # AD+3 ALSO GO TO AD+3
060266,000156:
060267,000157: # AD TC PHASCHNG GROUP 1 WOULD CAUSE CAUSE CALLCALL TO
060268,000158: # AD+1 OCT 27441 BE STARTED AS A LONGCALL FROM THE TIME
060269,000159: # AD+2 -GENADR DELTIME STORED IN LONGBASE (LONGBASE WAS SET) BY
060270,000160: # AD+3 2CADR CALLCALL A DELTA TIME STORED IN DELTIME. THE
060271,000161: # AD+4 BBCON OF THE 2CADR SHOULD CONTAIN THE E
060272,000162: # AD+5 BANK OF DELTIME. PHASCHNG RETURNS TO
060273,000163: # LOCATION AD+5
060274,000164:
060275,000165: # NOTE THAT IF A VARIABLE PRIORITY IS GIVEN FOR A JOB, THE JOB WILL BE RESTARTED AS A NOVAC IF THE PRIORITY IS
060276,000166: # NEGATIVE, AS A FINDVAC IF THE PRIORITY IS POSITIVE.
060277,000167:
060278,000168: # TYPE B PHASCHNG IS A COMBINATION OF VARIABLE AND FIXED PHASE CHANGES. IT WILL START UP A JOB AS INDICATED
060279,000169: # BELOW AND ALSO START UP ONE FIXED RESTART, THAT IS EITHER AN G.1 OR A G.ODD OR THE FIRST ENTRY OF G.EVEN
060280,000170: # DOUBLE ENTRY. THE BIT INFORMATION IS AS FOLLOWS,
060281,000171: # TL1 DAP PPP PPP GGG
060282,000172: # WHERE EACH LETTER OR NUMBER STANDS FOR A BIT. THE G:S STAND FOR THE GROUP, OCTAL 1 - 7. THE P:S FOR THE FIXED
060283,000173: # PHASE INFORMATION, OCTAL 0 - 127. 1 MUST BE 1. AND AGAIN T STANDS FOR THE TBASE AND L FOR LONGBASE. D THIS
060284,000174: # TIME STANDS ONLY FOR PRIORITY SINCE THIS WILL BE CONSIDERED A JOB, AND IT MUST BE GIVEN DIRECTLY IF GIVEN.
060285,000175: # AGAIN A STANDS FOR THE ADDRESS OF THE LOCATION TO BE RESTARTED, 1 IF THE 2CADR IS GIVEN, OR 0 IF IT IS TO BE
060286,000176: # THE NEXT LOCATION. (THE RETURN LOCATION OF PHASCHNG) EXAMPLES,
060287,000177: # AD TC PHASCHNG TBASE IS SET AND A RESTART CAUSE GROUP 3
060288,000178: # AD+1 OCT 56043 TO START THE JOB AJOBAJOB WITH PRIORITY
060289,000179: # AD+2 OCT 31000 31 AND THE FIRST ENTRY OF 3.4SPOT (WE CAN
060290,000180: # AD+3 2CADR AJOBAJOB ASSUME IT IS A TASK SINCE WE SET TBASE3)
060291,000181: # AD+4 UPON RETURN FROM PHASCHNG CONTROL WOULD
060292,000182: # AD+5 GO TO AD+5
060293,000183:
060294,000184: # AD TC PHASCHNG UPON A RESTART THE LAST DISPLAY WOULD BE
060295,000185: # AD+1 OCT 10015 RESTARTED AND A JOB WITH THE PREVIOUSLY
060296,000186: # AD+2 STORED PRIORITY WOULD BE BEGUN AT AD+2
060297,000187: # BY MEANS OF GROUP 5
![]() |
Page 1376 |
060299,000189: # THE NOVAC-FINDVAC CHOICE FOR JOBS HOLDS HERE ALSO - NEGATIVE PRIORITY CAUSES A NOVAC CALL, POSITIVE A FINDVAC.
060300,000190:
060301,000191: # SUMMARY OF BITS
060302,000192: # TYPE A TL0 00P PPP PPP GGG
060303,000193: # TYPE B TL1 DAP PPP PPP GGG
060304,000194: # TYPE C TL0 1AD XXX CJW GGG
060305,000195:
![]() |
Page 1377 |
060307,000197: # 2PHSCHNG IS USED WHEN ONE WISHES TO START UP A GROUP OR CHANGE A GROUP WHILE UNDER THE CONTROL OF A DIFFERENT
060308,000198: # GROUP. FOR EXAMPLE, CHANGE THE PHASE OF GROUP 3 WHILE THE PORTION OF THE PROGRAM IS UNDER GROUP 5. ALL 2PHSCHNG
060309,000199: # CALLS ARE MADE IN THE FOLLOWING MANNER,
060310,000200: # TC 2PHSCHNG
060311,000201: # OCT XXXXX
060312,000202: # OCT YYYYY
060313,000203: # WHERE OCT XXXXX MUST BE OF TYPE A AND OCT YYYYY MAY BE OF EITHER TYPE A OR TYPE B OR TYPE C. THERE IS ONE
060314,000204: # DIFFERENCE --- NOTE- IF LONGBASE IS TO BE SET THIS INFORMATION IS GIVEN IN THE OCT YYYYY INFORMATION, IT WILL
060315,000205: # BE DISREGARDED IF GIVEN WITH THE OCT XXXXX INFORMATION. A COUPLE OF EXAMPLES MAY HELP,
060316,000206: # AD TC 2PHSCHNG SET TBASE3 AND IF A RESTART OCCURS START
060317,000207: # AD+1 OCT 40083 THE TWO ENTRIES IN 3.8 TABLE LOCATION
060318,000208: # AD+2 OCT 05025 THIS IS OF TYPE C, SET THE JOB TO BE
060319,000209: # AD+3 OCT 18000 TO BE LOCATION AD+4, WITH A PRIORITY 18,
060320,000210: # AD+4 FOR GROUP 5 PHASE INFORMATION
060321,000211:
![]() |
[WORKAROUND] RSB 2004 |
060323,000213: 5261 40,2000 SBANK= PINSUPER
060324,000214: 5261 COUNT 02/PHASE
060325,000215:
060326,000216: 5261 00004 2PHSCHNG INHINT # THE ENTRY FOR A DOUBLE PHASE CHANGE
060327,000217: 5262 50002 NDX Q
060328,000218: 5263 30000 CA 0
060329,000219: 5264 24002 INCR Q
060330,000220: 5265 54072 TS TEMPP2
060331,000221:
060332,000222: 5266 74716 MASK OCT7
060333,000223: 5267 60000 DOUBLE
060334,000224: 5270 54071 TS TEMPG2
060335,000225:
060336,000226: 5271 30072 CA TEMPP2
060337,000227: 5272 74765 MASK OCT17770 # NEED ONLY 1770, BUT WHY GET A NEW CONST.
060338,000228: 5273 00006 EXTEND
060339,000229: 5274 74677 MP BIT12
060340,000230: 5275 56072 XCH TEMPP2
060341,000231:
060342,000232: 5276 74674 MASK BIT15
060343,000233: 5277 54066 TS TEMPSW2 # INDICATES WHETHER TO SET TBASE OR NOT
060344,000234:
060345,000235: 5300 15304 TCF PHASCHNG +3
060346,000236:
060347,000237: 5301 00004 PHASCHNG INHINT
060348,000238: 5302 34712 CA ONE # INDICATES WE CAME FROM A PHASCHNG ENTRY
060349,000239: 5303 54066 TS TEMPSW2
060350,000240:
060351,000241: 5304 50002 NDX Q
060352,000242: 5305 30000 CA 0
060353,000243: 5306 24002 INCR Q
060354,000244: 5307 54065 TS TEMPSW
![]() |
Page 1378 |
060356,000246: 5310 00006 EXTEND
060357,000247: 5311 35314 DCA ADRPCHN2 # OFF TO SWITCHED BANK
060358,000248: 5312 52006 DTCB
060359,000249:
060360,000250: 5313 E3,1400 EBANK= LST1
060361,000251: 5313 02355 20103 ADRPCHN2 2CADR PHSCHNG2
060362,000252:
060363,000253: 5315 22073 ONEORTWO LXCH TEMPBBCN
060364,000254: 5316 22006 LXCH BBANK
060365,000255: 5317 22073 LXCH TEMPBBCN
060366,000256:
060367,000257: 5320 74761 MASK OCT14000 # SEE WHAT KIND OF PHASE CHANGE IT IS
060368,000258: 5321 10000 CCS A
060369,000259: 5322 15363 TCF CHECKB # IT IS OF TYPE :B:
060370,000260:
060371,000261: 5323 30062 CA TEMPP
060372,000262: 5324 74704 MASK BIT7
060373,000263: 5325 10000 CCS A # SHALL WE USE THE OLD PRIORITY
060374,000264: 5326 15350 TCF GETPRIO # NO GET A NEW PRIORITY (OR DELTA T)
060375,000265:
060376,000266: 5327 50061 OLDPRIO NDX TEMPG # USE THE OLD PRIORITY (OR DELTA T)
060377,000267: 5330 31052 CA PHSPRDT1 -2
060378,000268: 5331 54070 TS TEMPPR
060379,000269:
060380,000270: 5332 30062 CON1 CA TEMPP # SEE IF A 2CADR IS GIVEN
060381,000271: 5333 74703 MASK BIT8
060382,000272: 5334 10000 CCS A
060383,000273: 5335 15354 TCF GETNEWNM
060384,000274:
060385,000275: 5336 30002 CA Q
060386,000276: 5337 54063 TS TEMPNM
060387,000277: 5340 30006 CA BB
060388,000278: 5341 00006 EXTEND # PICK UP USERS SUPERBANK
060389,000279: 5342 04007 ROR SUPERBNK
060390,000280: 5343 54064 TS TEMPBB
060391,000281:
060392,000282: 5344 35347 TOCON2 CA CON2ADR # BACK TO SWITCHED BANK
060393,000283: 5345 22073 LXCH TEMPBBCN
060394,000284: 5346 52006 DTCB
060395,000285:
060396,000286: 5347 02443 CON2ADR GENADR CON2
060397,000287:
060398,000288: 5350 50002 GETPRIO NDX Q # DON:T CARE IF DIRECT OR INDIRECT
060399,000289: 5351 30000 CA 0 # LEAVE THAT DECISION TO RESTARTS
060400,000290: 5352 24002 INCR Q # OBTAIN RETURN ADDRESS
060401,000291: 5353 15331 TCF CON1 -1
060402,000292:
060403,000293: 5354 00006 GETNEWNM EXTEND
![]() |
Page 1379 |
060405,000295: 5355 50002 INDEX Q
060406,000296: 5356 30001 DCA 0
060407,000297: 5357 52064 DXCH TEMPNM
060408,000298: 5360 34711 CA TWO
060409,000299: 5361 26002 ADS Q # OBTAIN RETURN ADDRESS
060410,000300:
060411,000301: 5362 15344 TCF TOCON2
060412,000302:
060413,000303: 5363 4761 OCT14000 EQUALS PRIO14
060414,000304: 5363 0061 TEMPG EQUALS ITEMP1
060415,000305: 5363 0062 TEMPP EQUALS ITEMP2
060416,000306: 5363 0063 TEMPNM EQUALS ITEMP3
060417,000307: 5363 0064 TEMPBB EQUALS ITEMP4
060418,000308: 5363 0065 TEMPSW EQUALS ITEMP5
060419,000309: 5363 0066 TEMPSW2 EQUALS ITEMP6
060420,000310: 5363 0070 TEMPPR EQUALS RUPTREG1
060421,000311: 5363 0071 TEMPG2 EQUALS RUPTREG2
060422,000312: 5363 0072 TEMPP2 EQUALS RUPTREG3
060423,000313:
060424,000314: 5363 0073 TEMPBBCN EQUALS RUPTREG4
060425,000315: 5363 0000006 BB EQUALS BBANK
060426,000316:
060427,000317: 14,3744 BANK 14
060428,000318: 10,2000 SETLOC PHASETAB
060429,000319: 10,2000 BANK
060430,000320:
060431,000321: 10,2355 E3,1436 EBANK= PHSNAME1
060432,000322: 10,2355 COUNT 10/PHASE
060433,000323:
060434,000324: 10,2355 22073 PHSCHNG2 LXCH TEMPBBCN
060435,000325: 10,2356 30065 CA TEMPSW
060436,000326: 10,2357 74716 MASK OCT7
060437,000327: 10,2360 60000 DOUBLE
060438,000328: 10,2361 54061 TS TEMPG
060439,000329:
060440,000330: 10,2362 30065 CA TEMPSW
060441,000331: 10,2363 74765 MASK OCT17770
060442,000332: 10,2364 00006 EXTEND
060443,000333: 10,2365 74677 MP BIT12
060444,000334: 10,2366 54062 TS TEMPP
060445,000335:
060446,000336: 10,2367 30065 CA TEMPSW
060447,000337: 10,2370 74105 MASK OCT60000
060448,000338: 10,2371 56065 XCH TEMPSW
060449,000339: 10,2372 74761 MASK OCT14000
060450,000340: 10,2373 10000 CCS A
060451,000341: 10,2374 15315 TCF ONEORTWO
060452,000342:
![]() |
Page 1380 |
060454,000344: 10,2375 30062 CA TEMPP # START STORING THE PHASE INFORMATION
060455,000345: 10,2376 50061 NDX TEMPG
060456,000346: 10,2377 54751 TS PHASE1 -2
060457,000347:
060458,000348: 10,2400 10066 BELOW1 CCS TEMPSW2 # IS IT A PHASCHNG OR A 2PHSCHNG
060459,000349: 10,2401 12415 TCF BELOW2 # IT:S A PHASCHNG
060460,000350:
060461,000351: 10,2402 12403 TCF +1 # IT:S A 2PHSCHNG
060462,000352: 10,2403 40072 CS TEMPP2
060463,000353: 10,2404 22072 LXCH TEMPP2
060464,000354: 10,2405 50071 NDX TEMPG2
060465,000355: 10,2406 52751 DXCH -PHASE1 -2
060466,000356:
060467,000357: 10,2407 10066 CCS TEMPSW2
060468,000358: 10,2410 12411 NOOP # CAN:T GET HERE
060469,000359: 10,2411 12415 TCF BELOW2
060470,000360:
060471,000361: 10,2412 40025 CS TIME1
060472,000362: 10,2413 50071 NDX TEMPG2
060473,000363: 10,2414 55051 TS TBASE1 -2
060474,000364:
060475,000365: 10,2415 10065 BELOW2 CCS TEMPSW # SEE IF WE SHOULD SET TBASE OR LONGBASE
060476,000366: 10,2416 12431 TCF BELOW3 # SET LONGBASE ONLY
060477,000367: 10,2417 12434 TCF BELOW4 # SET NEITHER
060478,000368:
060479,000369: 10,2420 40025 CS TIME1 # SET TBASE TO BEGIN WITH
060480,000370: 10,2421 50061 NDX TEMPG
060481,000371: 10,2422 55051 TS TBASE1 -2
060482,000372:
060483,000373: 10,2423 30065 CA TEMPSW # SHALL WE NOW SET LONGBASE
060484,000374: 10,2424 62427 AD BIT14COM
060485,000375: 10,2425 10000 CCS A
060486,000376: 10,2426 12427 NOOP # ***** CANT GET HERE *****
060487,000377: 10,2427 17777 BIT14COM OCT 17777 # ***** CANT GET HERE *****
060488,000378: 10,2430 12434 TCF BELOW4 # NO WE NEED ONLY SET TBASE
060489,000379:
060490,000380: 10,2431 00006 BELOW3 EXTEND # SET LONGBASE
060491,000381: 10,2432 30025 DCA TIME2
060492,000382: 10,2433 53136 DXCH LONGBASE
060493,000383:
060494,000384: 10,2434 40062 BELOW4 CS TEMPP # AND STORE THE FINAL PART OF THE PHASE
060495,000385: 10,2435 50061 NDX TEMPG
060496,000386: 10,2436 54750 TS -PHASE1 -2
060497,000387:
060498,000388: 10,2437 30002 CA Q
060499,000389: 10,2440 22073 LXCH TEMPBBCN
060500,000390: 10,2441 00003 RELINT
060501,000391: 10,2442 52006 DTCB
060502,000392: 10,2443 22073 CON2 LXCH TEMPBBCN
![]() |
Page 1381 |
060504,000394: 10,2444 30062 CA TEMPP
060505,000395: 10,2445 50061 NDX TEMPG
060506,000396: 10,2446 54751 TS PHASE1 -2
060507,000397:
060508,000398: 10,2447 30070 CA TEMPPR
060509,000399: 10,2450 50061 NDX TEMPG
060510,000400: 10,2451 55052 TS PHSPRDT1 -2
060511,000401:
060512,000402: 10,2452 00006 EXTEND
060513,000403: 10,2453 30064 DCA TEMPNM
060514,000404: 10,2454 50061 NDX TEMPG
060515,000405: 10,2455 53435 DXCH PHSNAME1 -2
060516,000406:
060517,000407: 10,2456 12400 TCF BELOW1
060518,000408:
060519,000409: 5363 BLOCK 02
060520,000410: 4000 SETLOC FFTAG1
060521,000411: 4000 BANK
060522,000412:
060523,000413: 5363 COUNT 02/PHASE
060524,000414:
060525,000415: 5363 74677 CHECKB MASK BIT12 # SINCE THIS IS OF TYPE B, THIS BIT SHOULD
060526,000416: 5364 10000 CCS A # BE HERE IF WE ARE TO GET A NEW PRIORITY
060527,000417: 5365 15350 TCF GETPRIO # IT IS, SO GET NEW PRIORITY
060528,000418:
060529,000419: 5366 15327 TCF OLDPRIO # IT ISN:T, USE THE OLD PRIORITY
060530,000420:
060531,000421:
060532,000422:
End of include-file PHASE_TABLE_MAINTENANCE.agc. Parent file is MAIN.agc