Source Code

This is a reconstruction of the AGC program Luminary 99 Rev 0. It was the second release of the Lunar Module flight software targeted for use in Apollo 11, after Luminary 97. A bug (which had been around since at least Apollo 10, Luminary 69) was discovered in Rev 0 shortly before the Apollo 11 flight, resulting in a last minute revision into Rev 1, which is what actually flew rather than the Rev 0 presented here. A hardcopy of Rev 0 is known to exist — it belonged to AGC developer Allan Klumpp for many years — but unfortunately the Virtual AGC Project has not had access to that hardcopy. Thus the code you see here had been reconstructed (we believe accurately) rather than transcribed. The first step of the reconstruction of the Rev 0 source code was the transcription of the Rev 1 source code from a hardcopy in the MIT Museum collection. The process of reverting the active portion of the source code (i.e., other than program comments) from Rev 1 to Rev 0 was very minor, consisting only of moving the position of the STARTSB1 label in FRESH START AND RESTART. Allan had previously given us the checksums of the memory banks of Rev 0, and we have verified the program presented here has checksums identical to all banks of Allan's listing of Rev 0. The notations on Allan's Rev 0 program listing read, in part:

	GAP:  ASSEMBLE REVISION 099 OF AGC PROGRAM LUMINARY BY NASA 2021112-051

A single program comment is known to differ between Rev 0 and Rev 1, but these are harder to reconstruct and verify than changes to the active portion of the code. Thus it is possible that there are additional differences between the program comments in Rev 0 and Rev 1 that are unknown to us, and therefore are not reflected in the code presented here.

056550,000002:                                                                                                  ## Copyright:   Public domain.
056551,000003:                                                                                                  ## Filename:    PHASE_TABLE_MAINTENANCE.agc
056552,000004:                                                                                                  ## Purpose:     Part of the reconstructed source code for LMY99 Rev 0,
056553,000005:                                                                                                  ##              otherwise known as Luminary Rev 99, the second release
056554,000006:                                                                                                  ##              of the Apollo Guidance Computer (AGC) software for Apollo 11.
056555,000007:                                                                                                  ##              It differs from LMY99 Rev 1 (the flown version) only in the
056556,000008:                                                                                                  ##              placement of a single label. The corrections shown here have
056557,000009:                                                                                                  ##              been verified to have the same bank checksums as AGC developer
056558,000010:                                                                                                  ##              Allan Klumpp's copy of Luminary Rev 99, and so are believed
056559,000011:                                                                                                  ##              to be accurate. This file is intended to be a faithful 
056560,000012:                                                                                                  ##              recreation, except that the code format has been changed to 
056561,000013:                                                                                                  ##              conform to the requirements of the yaYUL assembler rather than 
056562,000014:                                                                                                  ##              the original YUL assembler.
056563,000015:                                                                                                  ##
056564,000016:                                                                                                  ## Assembler:   yaYUL
056565,000017:                                                                                                  ## Contact:     Onno Hommes <ohommes@cmu.edu>.
056566,000018:                                                                                                  ## Website:     www.ibiblio.org/apollo.
056567,000019:                                                                                                  ## Pages:       1294-1302
056568,000020:                                                                                                  ## Mod history: 2009-05-26 OH   Transcribed from page images.
056569,000021:                                                                                                  ##              2009-06-05 RSB  A few lines at the bottom of page image
056570,000022:                                                                                                  ##                              1294 were truncated.  I've fixed the page
056571,000023:                                                                                                  ##                              image and added those missing lines here.
056572,000024:                                                                                                  ##              2011-05-07 JL   Flagged SBANK= workaround for future 
056573,000025:                                                                                                  ##                              removal.
056574,000026:                                                                                                  ##              2016-12-17 RSB  Proofed text comments with octopus/ProoferComments
056575,000027:                                                                                                  ##                              and corrected the errors found.
056576,000028:                                                                                                  ##              2017-01-28 RSB  Back-ported a comment-text fix from Luminary 69.
056577,000029:                                                                                                  ##              2017-03-14 RSB  Comment-text fixes noted in proofing Luminary 116.
056578,000030:                                                                                                  ##              2017-03-16 RSB  Comment-text fixes identified in 5-way
056579,000031:                                                                                                  ##                              side-by-side diff of Luminary 69/99/116/131/210.
056580,000032:                                                                                                  ##              2017-06-17 MAS  Globally removed all SBANK= workarounds.
056581,000033:                                                                                                  ##              2017-08-01 MAS  Created from LMY99 Rev 1.
056582,000034: 
056583,000035:                                                                                                  ## This source code has been transcribed or otherwise adapted from
056584,000036:                                                                                                  ## digitized images of a hardcopy from the MIT Museum.  The digitization
056585,000037:                                                                                                  ## was performed by Paul Fjeld, and arranged for by Deborah Douglas of
056586,000038:                                                                                                  ## the Museum.  Many thanks to both.  The images (with suitable reduction
056587,000039:                                                                                                  ## in storage size and consequent reduction in image quality as well) are
056588,000040:                                                                                                  ## available online at www.ibiblio.org/apollo.  If for some reason you
056589,000041:                                                                                                  ## find that the images are illegible, contact me at info@sandroid.org
056590,000042:                                                                                                  ## about getting access to the (much) higher-quality images which Paul
056591,000043:                                                                                                  ## actually created.
056592,000044:                                                                                                  ##
056593,000045:                                                                                                  ## The code has been modified to match LMY99 Revision 0, otherwise
056594,000046:                                                                                                  ## known as Luminary Revision 99, the Apollo 11 software release preceeding
056595,000047:                                                                                                  ## the listing from which it was transcribed. It has been verified to
056596,000048:                                                                                                  ## contain the same bank checksums as AGC developer Allan Klumpp's listing
056597,000049:                                                                                                  ## of Luminary Revision 99 (for which we do not have scans).
056598,000050:                                                                                                  ##
056599,000051:                                                                                                  ## Notations on Allan Klumpp's listing read, in part:
056600,000052:                                                                                                  ##
056601,000053:                                                                                                  ##      ASSEMBLE REVISION 099 OF AGC PROGRAM LUMINARY BY NASA 2021112-51
056602,000054: 

Page 1294

056604,000056:                                                                                                  #  SUBROUTINE TO UPDATE THE PROGRAM NUMBER DISPLAY ON THE DSKY.
056605,000057: 
056606,000058: 43,3724                                           COUNT*   $$/PHASE                              
056607,000059:    5311                                           BLOCK    02                                    
056608,000060:    4000                                           SETLOC   FFTAG1                                
056609,000061:    4000                                           BANK                                           
056610,000062: 
056611,000063:    5311           50002        NEWMODEX           INDEX    Q                                     #  UPDATE MODREG.  ENTRY FOR MODE IN FIXED.
056612,000064:    5312           30000                           CAF      0                                     
056613,000065:    5313           24002                           INCR     Q                                     
056614,000066: 
056615,000067:    5314           55011        NEWMODEA           TS       MODREG                                #  ENTRY FOR MODE IN A.
056616,000068:    5315           35320        MMDSPLAY           CAF      +3                                    #  DISPLAY MAJOR MODE.
056617,000069:    5316           22006        PREBJUMP           LXCH     BBANK                                 #  PUTS BBANK IN L
056618,000070:    5317           14640                           TCF      BANKJUMP                              #  PUTS Q INTO A
056619,000071:    5320           20213                           CADR     SETUPDSP                              
056620,000072: 
056621,000073:                                                                                                  #  RETURN TO CALLER +3 IF MODE = THAT AT CALLER +1.  OTHERWISE RETURN TO CALLER +2.
056622,000074: 
056623,000075:    5321           50002        CHECKMM            INDEX    Q                                     
056624,000076:    5322           40000                           CS       0                                     
056625,000077:    5323           61011                           AD       MODREG                                
056626,000078:    5324           00006                           EXTEND                                         
056627,000079:    5325           16741                           BZF      Q+2                                   
056628,000080:    5326           16737                           TCF      Q+1                                   #  NO MATCH
056629,000081: 
056630,000082:    5327     6742               TCQ                =        Q+2        +1                         
056631,000083: 
056632,000084: 14,3774                                           BANK     14                                    
056633,000085: 10,2000                                           SETLOC   PHASETAB                              
056634,000086: 10,2000                                           BANK                                           
056635,000087: 
056636,000088: 10,2213                                           COUNT*   $$/PHASE                              
056637,000089: 10,2213           00004        SETUPDSP           INHINT                                         
056638,000090: 10,2214           52071                           DXCH     RUPTREG1                              #  SAVE CALLER-S RETURN 2CADR
056639,000091: 10,2215           34355                           CAF      PRIO30                                #        EITHER A TASK OR JOB CAN COME TO
056640,000092: 10,2216           05072                           TC       NOVAC                                 #        NEWMODE X
056641,000093: 10,2217     1011                                  EBANK=   MODREG                                
056642,000094: 10,2217           03534 60102                     2CADR    DSPMMJOB                              
056643,000095: 
056644,000096: 10,2221           52071                           DXCH     RUPTREG1                              
056645,000097: 10,2222           00003                           RELINT                                         
056646,000098: 10,2223           52006                           DXCH     Z                                     #  RETURN
056647,000099: 
056648,000100: 10,2224  40,3534               DSPMMJOB           EQUALS   DSPMMJB                               
056649,000101: 
056650,000102:    5327                                           BLOCK    02                                    
056651,000103:    4000                                           SETLOC   FFTAG1                                
056652,000104:    4000                                           BANK                                           
056653,000105: 

Page 1295

056655,000107:                                                                                                  #  PHASCHNG IS THE MAIN WAY OF MAKING PHASE CHANGES FOR RESTARTS.  THERE ARE THREE FORMS OF PHASCHNG, KNOWN AS TYPE
056656,000108:                                                                                                  #  A, TYPE B, AND TYPE C.  THEY ARE ALL CALLED AS FOLLOWS, WHERE OCT XXXXX CONTAINS THE PHASE INFORMATION,
056657,000109:                                                                                                  #                TC      PHASCHNG
056658,000110:                                                                                                  #                OCT     XXXXX
056659,000111:                                                                                                  #  TYPE A IS CONCERNED WITH FIXED PHASE CHANGES, THAT IS, PHASE INFORMATION THAT IS STORED PERMANENTLY.  THESE
056660,000112:                                                                                                  #  OPTIONS ARE, WHERE G STANDS FOR A GROUP AND .X FOR THE PHASE,
056661,000113:                                                                                                  #        G.0             INACTIVE, WILL NOT PERMIT A GROUP G RESTART
056662,000114:                                                                                                  #        G.1             WILL CAUSE THE LAST DISPLAY TO BE REACTIVATED, USED MAINLY IN MANNED FLIGHTS
056663,000115:                                                                                                  #        G.EVEN          A DOUBLE TABLE RESTART, CAN CAUSE ANY COMBINATION OF TWO JOBS, TASKS, AND/OR
056664,000116:                                                                                                  #                        LONGCALL TO BE RESTARTED.
056665,000117:                                                                                                  #        G.ODD NOT .1    A SINGLE TABLE RESTART, CAN CAUSE EITHER A JOB, TASK, OR LONGCALL RESTART
056666,000118: 
056667,000119:                                                                                                  #  THIS INFORMATION IS PUT INTO THE OCTAL WORD AFTER TC PHASCHNG AS FOLLOWS
056668,000120:                                                                                                  #        TL0 00P PPP PPP GGG                                               ,
056669,000121:                                                                                                  #  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,
056670,000122:                                                                                                  #  OCTAL 0 - 127.  0:S MUST BE 0.  IF ONE WISHES TO HAVE THE TBASE OF GROUP G TO BE SET AT THIS TIME,
056671,000123:                                                                                                  #  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
056672,000124:                                                                                                  #  IT IS SET TO 0.  SOME EXAMPLES,
056673,000125:                                                                                                  #                TC      PHASCHNG        THIS WILL CAUSE GROUP 3 TO BE SET TO 0,
056674,000126:                                                                                                  #                OCT     00003           MAKING GROUP 3 INACTIVE
056675,000127: 
056676,000128:                                                                                                  #                TC      PHASCHNG        IF A RESTART OCCURS THIS WOULD CAUSE
056677,000129:                                                                                                  #                OCT     00012           GROUP 2 TO RESTART THE LAST DISPLAY
056678,000130: 
056679,000131:                                                                                                  #                TC      PHASCHNG        THIS SETS THE TBASE OF GROUP 4 AND IN
056680,000132:                                                                                                  #                OCT     40064           CASE OF A RESTART WOULD START UP THE TWO
056681,000133:                                                                                                  #                                        THINGS LOCATED IN THE DOUBLE 4.6 RESTART
056682,000134:                                                                                                  #                                        LOCATION
056683,000135: 
056684,000136:                                                                                                  #                TC      PHASCHNG        THIS SETS LONGBASE AND UPON A RESTART
056685,000137:                                                                                                  #                OCT     20135           CAUSES 5.13 TO BE RESTARTED (SINCE
056686,000138:                                                                                                  #                                        LONGBASE WAS SET THIS SINGLE ENTRY
056687,000139:                                                                                                  #                                        SHOULD BE A LONGCALL)
056688,000140: 
056689,000141:                                                                                                  #                TC      PHASCHNG        SINCE BOTH TBASE4 AND LONGBASE ARE SET,
056690,000142:                                                                                                  #                OCT     60124           4.12 SHOULD CONTAIN BOTH A TASK AND A
056691,000143:                                                                                                  #                                        LONGCALL TO BE RESTARTED
056692,000144: 
056693,000145:                                                                                                  #  TYPE C PHASCHNG CONTAINS THE VARIABLE TYPE OF PHASCHNG INFORMATION.  INSTEAD OF THE INFORMATION BEING IN A
056694,000146:                                                                                                  #  PERMANENT FORM, ONE STORES THE DESIRED RESTART INFORMATION IN A VARIABKE LOCATION.  THE BITS ARE AS FOLLOWS,
056695,000147:                                                                                                  #        TL0 1AD XXX CJW GGG
056696,000148:                                                                                                  #  WHERE EACH LETTER OR NUMBER STANDS FOR A BIT.  THE G:S STAND FOR THE GROUP, OCTAL 1 - 7.  IF THE RESTART IS TO
056697,000149:                                                                                                  #  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
056698,000150:                                                                                                  #  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 1296

056700,000152:                                                                                                  #  AND L FOR LONGBASE.  THE BITS A AND D ARE CONCERNED WITH THE VARIABLE INFORMATION.  IF D IS SET TO 1, A PRIORITY
056701,000153:                                                                                                  #  OR DELTA TIME WILL BE READ FROM THE NEXT LOCATION AFTER THE OCTAL INFORMATION, IF THIS IS TO BE INDIRECT, THAT
056702,000154:                                                                                                  #  IS, THE NAME OF A LOCATION COMT+INING THE INFORMATION (DELTA TIME ONLY), THEN THIS IS GIVEN AS THE -GENADR OF
056703,000155:                                                                                                  #  THAT LOCATION WHICH CONTAINS THE DELTA TIME.  IF THE OLD PRIORITY OR DELTA TIME IS TO BE USED, THAT WHICH IS
056704,000156:                                                                                                  #  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
056705,000157:                                                                                                  #  THAT WOULD BE RESTARTED DURING A RESTART IS THE NEXT LOCATION AFTER THE PHASE INFORMATION, THAT IS, EITHER
056706,000158:                                                                                                  #  (TC PHASCHNG) +2 OR +3, DEPENDING ON WHETHER D HAD BEEN SET OR NOT.  IF A IS SET TO 1, THEN THE ADDRESS THAT
056707,000159:                                                                                                  #  WOULD BE RESTARTED IS THE 2CADR THAT IS READ FROM THE NEXT TWO LOCATIONS.  EXAMPLES,
056708,000160:                                                                                                  #        AD      TC      PHASCHNG        THIS WOULD CAUSE LOCATION AD +3 TO BE
056709,000161:                                                                                                  #        AD+1    OCT     05023           RESTARTED BY GROUP THREE WITH A PRIORITY
056710,000162:                                                                                                  #        AD+2    OCT     23000           OF 23.  NOTE UPON RETURNING IT WOULD
056711,000163:                                                                                                  #        AD+3                            ALSO GO TO AD+3
056712,000164: 
056713,000165:                                                                                                  #        AD      TC      PHASCHNG        GROUP 1 WOULD CAUSE CAUSE CALLCALL TO
056714,000166:                                                                                                  #        AD+1    OCT     27441           BE STARTED AS A LONGCALL FROM THE TIME
056715,000167:                                                                                                  #        AD+2    -GENADR DELTIME         STORED IN LONGBASE (LONGBASE WAS SET) BY
056716,000168:                                                                                                  #        AD+3    2CADR   CALLCALL        A DELTA TIME STORED IN DELTIME.  THE
056717,000169:                                                                                                  #        AD+4                            BBCON OF THE 2CADR SHOULD CONTAIN THE E
056718,000170:                                                                                                  #        AD+5                            BANK OF DELTIME.  PHASCHNG RETURNS TO
056719,000171:                                                                                                  #                                        LOCATION AD+5
056720,000172: 
056721,000173:                                                                                                  #  NOTE THAT IF A VARIABLE PRIORITY IS GIVEN FOR A JOB, THE JOB WILL BE RESTARTED AS A NOVAC IF THE PRIORITY IS
056722,000174:                                                                                                  #  NEGATIVE, AS A FINDVAC IF THE PRIORITY IS POSITIVE.
056723,000175: 
056724,000176:                                                                                                  #  TYPE B PHASCHNG IS A COMBINATION OF VARIABLE AND FIXED PHASE CHANGES.  IT WILL START UP A JOB AS INDICATED
056725,000177:                                                                                                  #  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
056726,000178:                                                                                                  #  DOUBLE ENTRY.  THE BIT INFORMATION IS AS FOLLOWS,
056727,000179:                                                                                                  #        TL1 DAP PPP PPP GGG
056728,000180:                                                                                                  #  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
056729,000181:                                                                                                  #  PHASE INFORMATION, OCTAL 0 - 127.  1 MUST BE 1.  AND AGAIN T STANDS FOR THE TBASE AND L FOR LONGBASE.  D THIS
056730,000182:                                                                                                  #  TIME STANDS ONLY FOR PRIORITY SINCE THIS WILL BE CONSIDERED A JOB, AND IT MUST BE GIVEN DIRECTLY IF GIVEN.
056731,000183:                                                                                                  #  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
056732,000184:                                                                                                  #  THE NEXT LOCATION.  (THE RETURN LOCATION OF PHASCHNG) EXAMPLES,
056733,000185:                                                                                                  #        AD      TC      PHASCHNG        TBASE IS SET AND A RESTART CAUSE GROUP 3
056734,000186:                                                                                                  #        AD+1    OCT     56043           TO START THE JOB AJOBAJOB WITH PRIORITY
056735,000187:                                                                                                  #        AD+2    OCT     31000           31 AND THE FIRST ENTRY OF 3.4SPOT (WE CAN
056736,000188:                                                                                                  #        AD+3    2CADR   AJOBAJOB        ASSUME IT IS A TASK SINCE WE SET TBASE3)
056737,000189:                                                                                                  #        AD+4                            UPON RETURN FROM PHASCHNG CONTROL WOULD
056738,000190:                                                                                                  #        AD+5                            GO TO AD+5
056739,000191: 
056740,000192:                                                                                                  #        AD      TC      PHASCHNG        UPON A RESTART THE LAST DISPLAY WOULD BE
056741,000193:                                                                                                  #        AD+1    OCT     10015           RESTARTED AND A JOB WITH THE PREVIOUSLY
056742,000194:                                                                                                  #        AD+2                            STORED PRIORITY WOULD BE BEGUN AT AD+2
056743,000195:                                                                                                  #                                        BY MEANS OF GROUP 5

Page 1297

056745,000197:                                                                                                  #  THE NOVAC-FINDVAC CHOICE FOR JOBS HOLDS HERE ALSO - NEGATIVE PRIORITY CAUSES A NOVAC CALL, POSITIVE A FINDVAC.
056746,000198: 
056747,000199:                                                                                                  #  SUMMARY OF BITS
056748,000200:                                                                                                  #        TYPE A          TL0 00P PPP PPP GGG
056749,000201:                                                                                                  #        TYPE B          TL1 DAP PPP PPP GGG
056750,000202:                                                                                                  #        TYPE C          TL0 1AD XXX CJW GGG
056751,000203: 

Page 1298

056753,000205:                                                                                                  #  2PHSCHNG IS USED WHEN ONE WISHES TO START UP A GROUP OR CHANGE A GROUP WHILE UNDER THE CONTROL OF A DIFFERENT
056754,000206:                                                                                                  #  GROUP.  FOR EXAMPLE, CHANGE THE PHASE OF GROUP 3 WHILE THE PORTION OF THE PROGRAM IS UNDER GROUP 5.  ALL 2PHSCHNG
056755,000207:                                                                                                  #  CALLS ARE MADE IN THE FOLLOWING MANNER,
056756,000208:                                                                                                  #                TC      2PHSCHNG
056757,000209:                                                                                                  #                OCT     XXXXX
056758,000210:                                                                                                  #                OCT     YYYYY
056759,000211:                                                                                                  #  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
056760,000212:                                                                                                  #  DIFFERENCE --- NOTE- IF LONGBASE IS TO BE SET THIS INFORMATION IS GIVEN IN THE OCT YYYYY INFORMATION, IT WILL
056761,000213:                                                                                                  #  BE DISREGARDED IF GIVEN WITH THE OCT XXXXX INFORMATION.  A COUPLE OF EXAMPLES MAY HELP,
056762,000214:                                                                                                  #        AD      TC      2PHSCHNG        SET TBASE3 AND IF A RESTART OCCURS START
056763,000215:                                                                                                  #        AD+1    OCT     40083           THE TWO ENTRIES IN 3.8 TABLE LOCATION
056764,000216:                                                                                                  #        AD+2    OCT     05025           THIS IS OF TYPE C, SET THE JOB TO BE
056765,000217:                                                                                                  #        AD+3    OCT     18000           TO BE LOCATION AD+4, WITH A PRIORITY 18,
056766,000218:                                                                                                  #        AD+4                            FOR GROUP 5 PHASE INFORMATION
056767,000219: 
056768,000220:    5327                                           COUNT*   $$/PHASE                              
056769,000221:    5327           00004        2PHSCHNG           INHINT                                         #  THE ENTRY FOR A DOUBLE PHASE CHANGE
056770,000222:    5330           50002                           NDX      Q                                     
056771,000223:    5331           30000                           CA       0                                     
056772,000224:    5332           24002                           INCR     Q                                     
056773,000225:    5333           54072                           TS       TEMPP2                                
056774,000226: 
056775,000227:    5334           74757                           MASK     OCT7                                  
056776,000228:    5335           60000                           DOUBLE                                         
056777,000229:    5336           54071                           TS       TEMPG2                                
056778,000230: 
056779,000231:    5337           30072                           CA       TEMPP2                                
056780,000232:    5340           75030                           MASK     OCT17770                              #  NEED ONLY 1770, BUT WHY GET A NEW CONST.
056781,000233:    5341           00006                           EXTEND                                         
056782,000234:    5342           74740                           MP       BIT12                                 
056783,000235:    5343           56072                           XCH      TEMPP2                                
056784,000236: 
056785,000237:    5344           74735                           MASK     BIT15                                 
056786,000238:    5345           54066                           TS       TEMPSW2                               #  INDICATES WHETHER TO SET TBASE OR NOT
056787,000239: 
056788,000240:    5346           50002                           INDEX    Q                                     
056789,000241:    5347           30000                           CA       0                                     
056790,000242:    5350           24002                           INCR     Q                                     
056791,000243:    5351           54065                           TS       TEMPSW                                
056792,000244: 
056793,000245:    5352           15363                           TCF      PHASJUMP                              
056794,000246: 
056795,000247:    5353           00004        PHASCHNG           INHINT                                         #  NORMAL PHASCHNG ENTRY POINT.
056796,000248:    5354           50002                           INDEX    Q                                     
056797,000249:    5355           30000                           CA       0                                     
056798,000250:    5356           24002                           INCR     Q                                     
056799,000251:    5357           00004        PHSCHNGA           INHINT                                         #  FIRST OCTAL PARAMETER IN A.

Page 1299

056801,000253:    5360           54065                           TS       TEMPSW                                
056802,000254:    5361           34753                           CA       ONE                                   
056803,000255:    5362           54066                           TS       TEMPSW2                               
056804,000256:    5363           00006        PHASJUMP           EXTEND                                         
056805,000257:    5364           35367                           DCA      ADRPCHN2                              #  OFF TO SWITCHED BANK
056806,000258:    5365           52006                           DTCB                                           
056807,000259: 
056808,000260:    5366  E3,1400                                  EBANK=   LST1                                  
056809,000261:    5366           02224 20103  ADRPCHN2           2CADR    PHSCHNG2                              
056810,000262: 
056811,000263:    5370           22073        ONEORTWO           LXCH     TEMPBBCN                              
056812,000264:    5371           22006                           LXCH     BBANK                                 
056813,000265:    5372           22073                           LXCH     TEMPBBCN                              
056814,000266: 
056815,000267:    5373           75024                           MASK     OCT14000                              #  SEE WHAT KIND OF PHASE CHANGE IT IS
056816,000268:    5374           10000                           CCS      A                                     
056817,000269:    5375           17750                           TCF      CHECKB                                #  IT IS OF TYPE :B:
056818,000270: 
056819,000271:    5376           30062                           CA       TEMPP                                 
056820,000272:    5377           74745                           MASK     BIT7                                  
056821,000273:    5400           10000                           CCS      A                                     #  SHALL WE USE THE OLD PRIORITY
056822,000274:    5401           15423                           TCF      GETPRIO                               #  NO GET A NEW PRIORITY (OR DELTA T)
056823,000275: 
056824,000276:    5402           50061        OLDPRIO            NDX      TEMPG                                 #  USE THE OLD PRIORITY (OR DELTA T)
056825,000277:    5403           31052                           CA       PHSPRDT1   -2                         
056826,000278:    5404           54070                           TS       TEMPPR                                
056827,000279: 
056828,000280:    5405           30062        CON1               CA       TEMPP                                 #  SEE IF A 2CADR IS GIVEN
056829,000281:    5406           74744                           MASK     BIT8                                  
056830,000282:    5407           10000                           CCS      A                                     
056831,000283:    5410           15427                           TCF      GETNEWNM                              
056832,000284: 
056833,000285:    5411           30002                           CA       Q                                     
056834,000286:    5412           54063                           TS       TEMPNM                                
056835,000287:    5413           30006                           CA       BB                                    
056836,000288:    5414           00006                           EXTEND                                         #  PICK UP USERS SUPERBANK
056837,000289:    5415           04007                           ROR      SUPERBNK                              
056838,000290:    5416           54064                           TS       TEMPBB                                
056839,000291: 
056840,000292:    5417           35422        TOCON2             CA       CON2ADR                               #  BACK TO SWITCHED BANK
056841,000293:    5420           22073                           LXCH     TEMPBBCN                              
056842,000294:    5421           52006                           DTCB                                           
056843,000295: 
056844,000296:    5422           02312        CON2ADR            GENADR   CON2                                  
056845,000297: 
056846,000298:    5423           50002        GETPRIO            NDX      Q                                     #  DON:T CARE IF DIRECT OR INDIRECT
056847,000299:    5424           30000                           CA       0                                     #  LEAVE THAT DECISION TO RESTARTS
056848,000300:    5425           24002                           INCR     Q                                     #  OBTAIN RETURN ADDRESS

Page 1300

056850,000302:    5426           15404                           TCF      CON1       -1                         
056851,000303: 
056852,000304:    5427           00006        GETNEWNM           EXTEND                                         
056853,000305:    5430           50002                           INDEX    Q                                     
056854,000306:    5431           30001                           DCA      0                                     
056855,000307:    5432           52064                           DXCH     TEMPNM                                
056856,000308:    5433           34752                           CA       TWO                                   
056857,000309:    5434           26002                           ADS      Q                                     #  OBTAIN RETURN ADDRESS
056858,000310: 
056859,000311:    5435           15417                           TCF      TOCON2                                
056860,000312: 
056861,000313:    5436     5024               OCT14000           EQUALS   PRIO14                                
056862,000314:    5436     0061               TEMPG              EQUALS   ITEMP1                                
056863,000315:    5436     0062               TEMPP              EQUALS   ITEMP2                                
056864,000316:    5436     0063               TEMPNM             EQUALS   ITEMP3                                
056865,000317:    5436     0064               TEMPBB             EQUALS   ITEMP4                                
056866,000318:    5436     0065               TEMPSW             EQUALS   ITEMP5                                
056867,000319:    5436     0066               TEMPSW2            EQUALS   ITEMP6                                
056868,000320:    5436     0070               TEMPPR             EQUALS   RUPTREG1                              
056869,000321:    5436     0071               TEMPG2             EQUALS   RUPTREG2                              
056870,000322:    5436     0072               TEMPP2             EQUALS   RUPTREG3                              
056871,000323: 
056872,000324:    5436     0073               TEMPBBCN           EQUALS   RUPTREG4                              
056873,000325:    5436  0000006               BB                 EQUALS   BBANK                                 
056874,000326: 
056875,000327: 14,3774                                           BANK     14                                    
056876,000328: 10,2000                                           SETLOC   PHASETAB                              
056877,000329: 10,2000                                           BANK                                           
056878,000330: 
056879,000331: 10,2224  E3,1436                                  EBANK=   PHSNAME1                              
056880,000332: 10,2224                                           COUNT*   $$/PHASE                              
056881,000333: 10,2224           22073        PHSCHNG2           LXCH     TEMPBBCN                              
056882,000334: 10,2225           30065                           CA       TEMPSW                                
056883,000335: 10,2226           74757                           MASK     OCT7                                  
056884,000336: 10,2227           60000                           DOUBLE                                         
056885,000337: 10,2230           54061                           TS       TEMPG                                 
056886,000338: 
056887,000339: 10,2231           30065                           CA       TEMPSW                                
056888,000340: 10,2232           75030                           MASK     OCT17770                              
056889,000341: 10,2233           00006                           EXTEND                                         
056890,000342: 10,2234           74740                           MP       BIT12                                 
056891,000343: 10,2235           54062                           TS       TEMPP                                 
056892,000344: 
056893,000345: 10,2236           30065                           CA       TEMPSW                                
056894,000346: 10,2237           74101                           MASK     OCT60000                              
056895,000347: 10,2240           56065                           XCH      TEMPSW                                
056896,000348: 10,2241           75024                           MASK     OCT14000                              
056897,000349: 10,2242           10000                           CCS      A                                     

Page 1301

056899,000351: 10,2243           15370                           TCF      ONEORTWO                              
056900,000352: 
056901,000353: 10,2244           30062                           CA       TEMPP                                 #  START STORING THE PHASE INFORMATION
056902,000354: 10,2245           50061                           NDX      TEMPG                                 
056903,000355: 10,2246           54751                           TS       PHASE1     -2                         
056904,000356: 
056905,000357: 10,2247           10066        BELOW1             CCS      TEMPSW2                               #  IS IT A PHASCHNG OR A 2PHSCHNG
056906,000358: 10,2250           12264                           TCF      BELOW2                                #  IT:S A PHASCHNG
056907,000359: 
056908,000360: 10,2251           12252                           TCF      +1                                    #  IT:S A 2PHSCHNG
056909,000361: 10,2252           40072                           CS       TEMPP2                                
056910,000362: 10,2253           22072                           LXCH     TEMPP2                                
056911,000363: 10,2254           50071                           NDX      TEMPG2                                
056912,000364: 10,2255           52751                           DXCH     -PHASE1    -2                         
056913,000365: 
056914,000366: 10,2256           10066                           CCS      TEMPSW2                               
056915,000367: 10,2257           12260                           NOOP                                           #  CAN:T GET HERE
056916,000368: 10,2260           12264                           TCF      BELOW2                                
056917,000369: 
056918,000370: 10,2261           40025                           CS       TIME1                                 
056919,000371: 10,2262           50071                           NDX      TEMPG2                                
056920,000372: 10,2263           55051                           TS       TBASE1     -2                         
056921,000373: 
056922,000374: 10,2264           10065        BELOW2             CCS      TEMPSW                                #  SEE IF WE SHOULD SET TBASE OR LONGBASE
056923,000375: 10,2265           12300                           TCF      BELOW3                                #  SET LONGBASE ONLY
056924,000376: 10,2266           12303                           TCF      BELOW4                                #  SET NEITHER
056925,000377: 
056926,000378: 10,2267           40025                           CS       TIME1                                 #  SET TBASE TO BEGIN WITH
056927,000379: 10,2270           50061                           NDX      TEMPG                                 
056928,000380: 10,2271           55051                           TS       TBASE1     -2                         
056929,000381: 
056930,000382: 10,2272           30065                           CA       TEMPSW                                #  SHALL WE NOW SET LONGBASE
056931,000383: 10,2273           62276                           AD       BIT14COM                              
056932,000384: 10,2274           10000                           CCS      A                                     
056933,000385: 10,2275           12276                           NOOP                                           #  ***** CANT GET HERE *****
056934,000386: 10,2276           17777        BIT14COM           OCT      17777                                 #  ***** CANT GET HERE *****
056935,000387: 10,2277           12303                           TCF      BELOW4                                #  NO WE NEED ONLY SET TBASE
056936,000388: 
056937,000389: 10,2300           00006        BELOW3             EXTEND                                         #  SET LONGBASE
056938,000390: 10,2301           30025                           DCA      TIME2                                 
056939,000391: 10,2302           53152                           DXCH     LONGBASE                              
056940,000392: 
056941,000393: 10,2303           40062        BELOW4             CS       TEMPP                                 #  AND STORE THE FINAL PART OF THE PHASE
056942,000394: 10,2304           50061                           NDX      TEMPG                                 
056943,000395: 10,2305           54750                           TS       -PHASE1    -2                         
056944,000396: 
056945,000397: 10,2306           30002                           CA       Q                                     
056946,000398: 10,2307           22073                           LXCH     TEMPBBCN                              
056947,000399: 10,2310           00003                           RELINT                                         
056948,000400: 10,2311           52006                           DTCB                                           

Page 1302

056950,000402: 10,2312           22073        CON2               LXCH     TEMPBBCN                              
056951,000403: 
056952,000404: 10,2313           30062                           CA       TEMPP                                 
056953,000405: 10,2314           50061                           NDX      TEMPG                                 
056954,000406: 10,2315           54751                           TS       PHASE1     -2                         
056955,000407: 
056956,000408: 10,2316           30070                           CA       TEMPPR                                
056957,000409: 10,2317           50061                           NDX      TEMPG                                 
056958,000410: 10,2320           55052                           TS       PHSPRDT1   -2                         
056959,000411: 
056960,000412: 10,2321           00006                           EXTEND                                         
056961,000413: 10,2322           30064                           DCA      TEMPNM                                
056962,000414: 10,2323           50061                           NDX      TEMPG                                 
056963,000415: 10,2324           53435                           DXCH     PHSNAME1   -2                         
056964,000416: 
056965,000417: 10,2325           12247                           TCF      BELOW1                                
056966,000418: 
056967,000419:    7750                                           BLOCK    03                                    
056968,000420:    6000                                           SETLOC   FFTAG6                                
056969,000421:    6000                                           BANK                                           
056970,000422: 
056971,000423:    7750                                           COUNT*   $$/PHASE                              
056972,000424:    7750           74740        CHECKB             MASK     BIT12                                 #  SINCE THIS IS OF TYPE B, THIS BIT SHOULD
056973,000425:    7751           10000                           CCS      A                                     #  BE HERE IF WE ARE TO GET A NEW PRIORITY
056974,000426:    7752           15423                           TCF      GETPRIO                               #  IT IS, SO GET NEW PRIORITY
056975,000427: 
056976,000428:    7753           15402                           TCF      OLDPRIO                               #  IT ISN:T, USE THE OLD PRIORITY
056977,000429: 
056978,000430: 

End of include-file PHASE_TABLE_MAINTENANCE.agc.  Parent file is MAIN.agc