Source Code

This is a reconstruction of the AGC program Luminary 99 Rev 0. It was the third release of the Lunar Module flight software targeted for use in Apollo 11, after Luminary 96 and 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.

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

Page 1294

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

Page 1295

056673,000107:                                                                                                  #  PHASCHNG IS THE MAIN WAY OF MAKING PHASE CHANGES FOR RESTARTS.  THERE ARE THREE FORMS OF PHASCHNG, KNOWN AS TYPE
056674,000108:                                                                                                  #  A, TYPE B, AND TYPE C.  THEY ARE ALL CALLED AS FOLLOWS, WHERE OCT XXXXX CONTAINS THE PHASE INFORMATION,
056675,000109:                                                                                                  #                TC      PHASCHNG
056676,000110:                                                                                                  #                OCT     XXXXX
056677,000111:                                                                                                  #  TYPE A IS CONCERNED WITH FIXED PHASE CHANGES, THAT IS, PHASE INFORMATION THAT IS STORED PERMANENTLY.  THESE
056678,000112:                                                                                                  #  OPTIONS ARE, WHERE G STANDS FOR A GROUP AND .X FOR THE PHASE,
056679,000113:                                                                                                  #        G.0             INACTIVE, WILL NOT PERMIT A GROUP G RESTART
056680,000114:                                                                                                  #        G.1             WILL CAUSE THE LAST DISPLAY TO BE REACTIVATED, USED MAINLY IN MANNED FLIGHTS
056681,000115:                                                                                                  #        G.EVEN          A DOUBLE TABLE RESTART, CAN CAUSE ANY COMBINATION OF TWO JOBS, TASKS, AND/OR
056682,000116:                                                                                                  #                        LONGCALL TO BE RESTARTED.
056683,000117:                                                                                                  #        G.ODD NOT .1    A SINGLE TABLE RESTART, CAN CAUSE EITHER A JOB, TASK, OR LONGCALL RESTART
056684,000118: 
056685,000119:                                                                                                  #  THIS INFORMATION IS PUT INTO THE OCTAL WORD AFTER TC PHASCHNG AS FOLLOWS
056686,000120:                                                                                                  #        TL0 00P PPP PPP GGG                                               ,
056687,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,
056688,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,
056689,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
056690,000124:                                                                                                  #  IT IS SET TO 0.  SOME EXAMPLES,
056691,000125:                                                                                                  #                TC      PHASCHNG        THIS WILL CAUSE GROUP 3 TO BE SET TO 0,
056692,000126:                                                                                                  #                OCT     00003           MAKING GROUP 3 INACTIVE
056693,000127: 
056694,000128:                                                                                                  #                TC      PHASCHNG        IF A RESTART OCCURS THIS WOULD CAUSE
056695,000129:                                                                                                  #                OCT     00012           GROUP 2 TO RESTART THE LAST DISPLAY
056696,000130: 
056697,000131:                                                                                                  #                TC      PHASCHNG        THIS SETS THE TBASE OF GROUP 4 AND IN
056698,000132:                                                                                                  #                OCT     40064           CASE OF A RESTART WOULD START UP THE TWO
056699,000133:                                                                                                  #                                        THINGS LOCATED IN THE DOUBLE 4.6 RESTART
056700,000134:                                                                                                  #                                        LOCATION
056701,000135: 
056702,000136:                                                                                                  #                TC      PHASCHNG        THIS SETS LONGBASE AND UPON A RESTART
056703,000137:                                                                                                  #                OCT     20135           CAUSES 5.13 TO BE RESTARTED (SINCE
056704,000138:                                                                                                  #                                        LONGBASE WAS SET THIS SINGLE ENTRY
056705,000139:                                                                                                  #                                        SHOULD BE A LONGCALL)
056706,000140: 
056707,000141:                                                                                                  #                TC      PHASCHNG        SINCE BOTH TBASE4 AND LONGBASE ARE SET,
056708,000142:                                                                                                  #                OCT     60124           4.12 SHOULD CONTAIN BOTH A TASK AND A
056709,000143:                                                                                                  #                                        LONGCALL TO BE RESTARTED
056710,000144: 
056711,000145:                                                                                                  #  TYPE C PHASCHNG CONTAINS THE VARIABLE TYPE OF PHASCHNG INFORMATION.  INSTEAD OF THE INFORMATION BEING IN A
056712,000146:                                                                                                  #  PERMANENT FORM, ONE STORES THE DESIRED RESTART INFORMATION IN A VARIABKE LOCATION.  THE BITS ARE AS FOLLOWS,
056713,000147:                                                                                                  #        TL0 1AD XXX CJW GGG
056714,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
056715,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
056716,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

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

Page 1297

056763,000197:                                                                                                  #  THE NOVAC-FINDVAC CHOICE FOR JOBS HOLDS HERE ALSO - NEGATIVE PRIORITY CAUSES A NOVAC CALL, POSITIVE A FINDVAC.
056764,000198: 
056765,000199:                                                                                                  #  SUMMARY OF BITS
056766,000200:                                                                                                  #        TYPE A          TL0 00P PPP PPP GGG
056767,000201:                                                                                                  #        TYPE B          TL1 DAP PPP PPP GGG
056768,000202:                                                                                                  #        TYPE C          TL0 1AD XXX CJW GGG
056769,000203: 

Page 1298

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

Page 1299

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

Page 1300

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

Page 1301

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

Page 1302

056968,000402: 10,2312           22073        CON2               LXCH     TEMPBBCN                              
056969,000403: 
056970,000404: 10,2313           30062                           CA       TEMPP                                 
056971,000405: 10,2314           50061                           NDX      TEMPG                                 
056972,000406: 10,2315           54751                           TS       PHASE1     -2                         
056973,000407: 
056974,000408: 10,2316           30070                           CA       TEMPPR                                
056975,000409: 10,2317           50061                           NDX      TEMPG                                 
056976,000410: 10,2320           55052                           TS       PHSPRDT1   -2                         
056977,000411: 
056978,000412: 10,2321           00006                           EXTEND                                         
056979,000413: 10,2322           30064                           DCA      TEMPNM                                
056980,000414: 10,2323           50061                           NDX      TEMPG                                 
056981,000415: 10,2324           53435                           DXCH     PHSNAME1   -2                         
056982,000416: 
056983,000417: 10,2325           12247                           TCF      BELOW1                                
056984,000418: 
056985,000419:    7750                                           BLOCK    03                                    
056986,000420:    6000                                           SETLOC   FFTAG6                                
056987,000421:    6000                                           BANK                                           
056988,000422: 
056989,000423:    7750                                           COUNT*   $$/PHASE                              
056990,000424:    7750           74740        CHECKB             MASK     BIT12                                 #  SINCE THIS IS OF TYPE B, THIS BIT SHOULD
056991,000425:    7751           10000                           CCS      A                                     #  BE HERE IF WE ARE TO GET A NEW PRIORITY
056992,000426:    7752           15423                           TCF      GETPRIO                               #  IT IS, SO GET NEW PRIORITY
056993,000427: 
056994,000428:    7753           15402                           TCF      OLDPRIO                               #  IT ISN:T, USE THE OLD PRIORITY
056995,000429: 
056996,000430: 

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