Source Code

These source-code files were reconstructed by Mike Stewart from dumps of the RETREAD 50 program stored in physical AGC core-rope modules (B1 and B2) belonging to the Computer History Museum, Mountain View, California. The reconstruction was aided by pre-existing source code for the AGC programs RETREAD 44 and AURORA 12. Read about the process here. Assembling this source code with yaYUL produces core ropes identical to those of the physical modules. Page-number references refer to corresponding sections of RETREAD 44 source code. No printouts of RETREAD 50 program listings are available. Names of variables and program constants of the form "UNKnnnn" appear in areas not yet correlated with other pre-existing source code, and which are therefore unknown.

003726,000002:                                                                                                  ## Copyright:   Public domain.
003727,000003:                                                                                                  ## Filename:    EXECUTIVE.agc
003728,000004:                                                                                                  ## Purpose:     Part of the source code for AGC program Retread 50. 
003729,000005:                                                                                                  ## Assembler:   yaYUL
003730,000006:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
003731,000007:                                                                                                  ## Website:     www.ibiblio.org/apollo/Restoration.html
003732,000008:                                                                                                  ## Mod history: 2019-06-12 MAS  Recreated from Computer History Museum's
003733,000009:                                                                                                  ##                              physical core-rope modules.
003734,000010: 

Page 107

003736,000012: 
003737,000013:    4131                                           SETLOC   ENDIBNKF                              
003738,000014: 
003739,000015:                                                                                                  #           TO ENTER A JOB REQUEST REQUIRING NO VAC AREA:
003740,000016: 
003741,000017:    4131           54632        NOVAC              TS       NEWPRIO                               #  SAVE PRIORITY OF NEW JOB.
003742,000018:    4132           00006                           EXTEND                                         
003743,000019:    4133           50002                           INDEX    Q                                     #  Q WILL BE UNDISTURBED THROUGHOUT.
003744,000020:    4134           30001                           DCA      0                                     #  2CADR OF JOB ENTERED.
003745,000021:    4135           52634                           DXCH     NEWLOC                                
003746,000022:    4136           34214                           CAF      EXECBANK                              
003747,000023:    4137           56004                           XCH      FBANK                                 
003748,000024:    4140           54626                           TS       EXECTEM1                              
003749,000025:    4141           12241                           TCF      NOVAC2                                #  ENTER EXECUTIVE BANK.
003750,000026: 
003751,000027:                                                                                                  #           TO ENTER A JOB REQUEST REQUIRING A VAC AREA - E.G., ALL (PARTIALLY) INTERPRETIVE JOBS.
003752,000028: 
003753,000029:    4142           54632        FINDVAC            TS       NEWPRIO                               
003754,000030:    4143           00006                           EXTEND                                         
003755,000031:    4144           50002                           INDEX    Q                                     
003756,000032:    4145           30001                           DCA      0                                     
003757,000033:    4146           52634                           DXCH     NEWLOC                                
003758,000034:    4147           34214                           CAF      EXECBANK                              
003759,000035:    4150           56004                           XCH      FBANK                                 
003760,000036:    4151           12220                           TCF      FINDVAC2                              #  OFF TO EXECUTIVE SWITCHED-BANK.
003761,000037: 
003762,000038:                                                                                                  #           TO SUSPEND A BASIC JOB SO A HIGHER PRIORITY JOB MAY BE SERVICED:
003763,000039: 
003764,000040:    4152           34214        CHANG1             CAF      EXECBANK                              
003765,000041:    4153           54001                           TS       L                                     
003766,000042:    4154           30002                           CA       Q                                     
003767,000043:    4155           22006                 +3        LXCH     BBANK                                 
003768,000044:    4156           00004                           INHINT                                         
003769,000045:    4157           12316                           TCF      CHANJOB                               
003770,000046: 
003771,000047:                                                                                                  #           TO SUSPEND AN INTERPRETIVE JOB:
003772,000048: 
003773,000049:    4160           34214        CHANG2             CAF      EXECBANK                              
003774,000050:    4161           54001                           TS       L                                     
003775,000051:    4162           40150                           CS       LOC                                   #  NEGATIVE LOC SHOWS JOB INTERPRETIVE.
003776,000052:    4163           14155                           TCF      CHANG1     +3                         
003777,000053: 

Page 108

003779,000055:                                                                                                  #           TO VOLUNTARILY SUSPEND A JOB UNTIL THE COMPLETION OF SOME ANTICIPATED EVENT (I/O EVENT ETC.):
003780,000056: 
003781,000057:    4164           54150        JOBSLEEP           TS       LOC                                   
003782,000058:    4165           34214                           CAF      EXECBANK                              
003783,000059:    4166           54004                           TS       FBANK                                 
003784,000060:    4167           12375                           TCF      JOBSLP1                               
003785,000061: 
003786,000062:                                                                                                  #           TO AWAKEN A JOB PUT TO SLEEP IN THE ABOVE FASHION:
003787,000063: 
003788,000064:    4170           54633        JOBWAKE            TS       NEWLOC                                
003789,000065:    4171           47645                           CS       TWO                                   #  EXIT IS VIA FINDVAC/NOVAC PROCEDURES.
003790,000066:    4172           26002                           ADS      Q                                     
003791,000067:    4173           34214                           CAF      EXECBANK                              
003792,000068:    4174           56004                           XCH      FBANK                                 
003793,000069:    4175           12406                           TCF      JOBWAKE2                              
003794,000070: 
003795,000071:                                                                                                  #           TO CHANGE THE PRIORITY OF A JOB CURRENTLY UNDER EXECUTION:
003796,000072: 
003797,000073:    4176           00004        PRIOCHNG           INHINT                                         #  NEW PRIORITY ARRIVES IN A. RETURNS TO
003798,000074:    4177           54632                           TS       NEWPRIO                               #  CALLER AS SOON AS NEW JOB PRIORITY IS
003799,000075:    4200           34214                           CAF      EXECBANK                              #  HIGHEST. PREPARE FOR POSSIBLE BASIC-
003800,000076:    4201           56006                           XCH      BBANK                                 #  STYLE CHANGE-JOB.
003801,000077:    4202           54151                           TS       BANKSET                               
003802,000078:    4203           30002                           CA       Q                                     
003803,000079:    4204           12454                           TCF      PRIOCH2                               
003804,000080: 
003805,000081:                                                                                                  #           TO REMOVE A JOB FROM EXECUTIVE CONSIDERATIONS:
003806,000082: 
003807,000083:    4205           34214        ENDOFJOB           CAF      EXECBANK                              
003808,000084:    4206           54004                           TS       FBANK                                 
003809,000085:    4207           12465                           TCF      ENDJOB1                               
003810,000086: 
003811,000087:    4210           30626        ENDFIND            CA       EXECTEM1                              #  RETURN TO CALLER AFTER JOB ENTRY
003812,000088:    4211           54004                           TS       FBANK                                 #  COMPLETE.
003813,000089:    4212           50002                           INDEX    Q                                     
003814,000090:    4213           00002                           TC       2                                     
003815,000091: 
003816,000092:    4214           02220        EXECBANK           CADR     FINDVAC2                              
003817,000093: 

Page 109

003819,000095:                                                                                                  #           LOCATE AN AVAILABLE VAC AREA.
003820,000096: 
003821,000097: 01,2220                                           SETLOC   ENDINTS1                              
003822,000098: 
003823,000099: 01,2220           54626        FINDVAC2           TS       EXECTEM1                              #  (SAVE CALLER'S BANK FIRST.)
003824,000100: 01,2221           10264                           CCS      VAC1USE                               
003825,000101: 01,2222           12234                           TCF      VACFOUND                              
003826,000102: 01,2223           10340                           CCS      VAC2USE                               
003827,000103: 01,2224           12234                           TCF      VACFOUND                              
003828,000104: 01,2225           10414                           CCS      VAC3USE                               
003829,000105: 01,2226           12234                           TCF      VACFOUND                              
003830,000106: 01,2227           10470                           CCS      VAC4USE                               
003831,000107: 01,2230           12234                           TCF      VACFOUND                              
003832,000108: 01,2231           10544                           CCS      VAC5USE                               
003833,000109: 01,2232           12234                           TCF      VACFOUND                              
003834,000110: 01,2233           02233                           TC       -0                                    #  ABORT IF NO VAC AREAS AVAILABLE.
003835,000111: 
003836,000112: 01,2234           67645        VACFOUND           AD       TWO                                   #  RESERVE THIS VAC AREA BY STORING A ZERO
003837,000113: 01,2235           22007                           ZL                                             #  IN ITS VAC USE REGISTER AND STORE THE
003838,000114: 01,2236           50000                           INDEX    A                                     #  ADDRESS OF THE FIRST WORD OF IT IN THE
003839,000115: 01,2237           21777                           LXCH     0          -1                         #  LOW NINE BITS OF THE PRIORITY WORD.
003840,000116: 01,2240           26632                           ADS      NEWPRIO                               
003841,000117: 
003842,000118: 01,2241           37653        NOVAC2             CAF      ZERO                                  #  NOVAC ENTERS HERE. FIND A CORE SET.
003843,000119: 01,2242           54635                           TS       LOCCTR                                
003844,000120: 01,2243           32250                           CAF      NO.CORES                              #  SEVEN SETS OF ELEVEN REGISTERS EACH.
003845,000121: 01,2244           54627        NOVAC3             TS       EXECTEM2                              
003846,000122: 01,2245           50635                           INDEX    LOCCTR                                
003847,000123: 01,2246           10153                           CCS      PRIORITY                              #  EACH PRIORITY REGISTER CONTAINS -0 IF
003848,000124: 01,2247           12310                           TCF      NEXTCORE                              #  THE CORRESPONDING CORE SET IS AVAILABLE.
003849,000125: 01,2250           00006        NO.CORES           DEC      6          B-14                       
003850,000126: 01,2251           12310                           TCF      NEXTCORE                              #  AN ACTIVE JOB HAS A POSITIVE PRIORITY
003851,000127:                                                                                                  #  BUT A DORMANT JOB'S PRIORITY IS NEGATIVE
003852,000128: 

Page 110

003854,000130: 01,2252           30632        CORFOUND           CA       NEWPRIO                               #  SET THE PRIORITY OF THIS JOB IN THE CORE
003855,000131: 01,2253           50635                           INDEX    LOCCTR                                #  SET'S PRIORITY REGISTER AND SET THE
003856,000132: 01,2254           54153                           TS       PRIORITY                              #  JOB'S PUSH-DOWN POINTER AT THE BEGINNING
003857,000133: 01,2255           72503                           MASK     LOW9                                  #  OF THE WORK AREA AND OVERFLOW INDICATOR
003858,000134: 01,2256           50635                           INDEX    LOCCTR                                
003859,000135: 01,2257           54152                           TS       PUSHLOC                               #  OFF TO PREPARE FOR INTERPRETIVE PROGRAMS
003860,000136: 
003861,000137: 01,2260           10635                           CCS      LOCCTR                                #  IF CORE SET ZERO IS BEING LOADED, SET UP
003862,000138: 01,2261           12275                           TCF      SETLOC                                #  OVFIND AND FIXLOC IMMEDIATELY .
003863,000139: 01,2262           54105                           TS       OVFIND                                
003864,000140: 01,2263           30152                           CA       PUSHLOC                               
003865,000141: 01,2264           54104                           TS       FIXLOC                                
003866,000142: 
003867,000143: 01,2265           10067        SPECTEST           CCS      NEWJOB                                #  SEE IF ANY ACTIVE JOBS WAITING (RARE).
003868,000144: 01,2266           12275                           TCF      SETLOC                                #  MUST BE AWAKENED BUT UNCHANGED JOB.
003869,000145: 01,2271                                           SETLOC   +2                                    
003870,000146: 01,2271           54067                           TS       NEWJOB                                #  +0 SHOWS ACTIVE JOB ALREADY SET.
003871,000147: 01,2272           52634                           DXCH     NEWLOC                                
003872,000148: 01,2273           52151                           DXCH     LOC                                   
003873,000149: 01,2274           14210                           TCF      ENDFIND                               
003874,000150: 
003875,000151: 01,2275           52634        SETLOC             DXCH     NEWLOC                                #  SET UP THE LOCATION REGISTERS FOR THIS
003876,000152: 01,2276           50635                           INDEX    LOCCTR                                
003877,000153: 01,2277           52151                           DXCH     LOC                                   
003878,000154: 01,2300           50067                           INDEX    NEWJOB                                #  THIS INDEX INSTRUCTION INSURES THAT THE
003879,000155: 01,2301           40153                           CS       PRIORITY                              #  HIGHEST ACTIVE PRIORITY WILL BE COMPARED
003880,000156: 01,2302           60632                           AD       NEWPRIO                               #  WITH THE NEW PRIORITY TO SEE IF NEWJOB
003881,000157: 01,2303           00006                           EXTEND                                         #  SHOULD BE SET TO SIGNAL A SWITCH.
003882,000158: 01,2304           64210                           BZMF     ENDFIND                               
003883,000159: 01,2305           30635                           CA       LOCCTR                                #  LOCCTR IS LEFT SET AT THIS CORE SET IF
003884,000160: 01,2306           54067                           TS       NEWJOB                                #  THE CALLER WANTS TO LOAD ANY MPAC
003885,000161: 01,2307           14210                           TCF      ENDFIND                               #  REGISTERS, ETC.
003886,000162: 
003887,000163: 01,2310           32416        NEXTCORE           CAF      COREINC                               
003888,000164: 01,2311           26635                           ADS      LOCCTR                                
003889,000165: 01,2312           10627                           CCS      EXECTEM2                              
003890,000166: 01,2313           12244                           TCF      NOVAC3                                
003891,000167: 01,2314           02314                           TC       -0                                    #  ABORT IF NO MORE CORE SETS.
003892,000168: 

Page 111

003894,000170:                                                                                                  #           THE FOLLOWING ROUTINE SWAPS CORE SET 0 WITH THAT WHOSE RELATIVE ADDRESS IS IN NEWJOB.
003895,000171: 
003896,000172: 01,2315           52151                 -1        DXCH     LOC                                   
003897,000173: 01,2316           50067        CHANJOB            INDEX    NEWJOB                                #  LOC ARRIVES IN A AND BBANK IN L.
003898,000174: 01,2317           52151                           DXCH     LOC                                   
003899,000175: 01,2320           52151                           DXCH     LOC                                   
003900,000176: 
003901,000177: 01,2321           52141                           DXCH     MPAC                                  #  SWAP MULTI-PURPOSE ACCUMULATOR AREAS.
003902,000178: 01,2322           50067                           INDEX    NEWJOB                                
003903,000179: 01,2323           52141                           DXCH     MPAC                                  
003904,000180: 01,2324           52141                           DXCH     MPAC                                  
003905,000181: 01,2325           52143                           DXCH     MPAC       +2                         
003906,000182: 01,2326           50067                           INDEX    NEWJOB                                
003907,000183: 01,2327           52143                           DXCH     MPAC       +2                         
003908,000184: 01,2330           52143                           DXCH     MPAC       +2                         
003909,000185: 01,2331           52145                           DXCH     MPAC       +4                         
003910,000186: 01,2332           50067                           INDEX    NEWJOB                                
003911,000187: 01,2333           52145                           DXCH     MPAC       +4                         
003912,000188: 01,2334           52145                           DXCH     MPAC       +4                         
003913,000189: 01,2335           52147                           DXCH     MPAC       +6                         
003914,000190: 01,2336           50067                           INDEX    NEWJOB                                
003915,000191: 01,2337           52147                           DXCH     MPAC       +6                         
003916,000192: 01,2340           52147                           DXCH     MPAC       +6                         
003917,000193: 
003918,000194: 01,2341           37653                           CAF      ZERO                                  
003919,000195: 01,2342           56105                           XCH      OVFIND                                #  MAKE PUSHLOC NEGATIVE IF OVFIND NZ.
003920,000196: 01,2343           00006                           EXTEND                                         
003921,000197: 01,2344           12347                           BZF      +3                                    
003922,000198: 01,2345           40152                           CS       PUSHLOC                               
003923,000199: 01,2346           54152                           TS       PUSHLOC                               
003924,000200: 
003925,000201: 01,2347           52153                           DXCH     PUSHLOC                               
003926,000202: 01,2350           50067                           INDEX    NEWJOB                                
003927,000203: 01,2351           52153                           DXCH     PUSHLOC                               
003928,000204: 01,2352           52153                           DXCH     PUSHLOC                               #  SWAPS PUSHLOC AND PRIORITY.
003929,000205: 01,2353           10152                           CCS      PUSHLOC                               #  SET OVERFLOW INDICATOR ACCORDING TO
003930,000206: 01,2354           37653                           CAF      ZERO                                  
003931,000207: 01,2355           12362                           TCF      ENDPRCHG   -1                         
003932,000208: 01,2356           40152                           CS       PUSHLOC                               
003933,000209: 01,2357           54152                           TS       PUSHLOC                               
003934,000210: 01,2360           37646                           CAF      ONE                                   
003935,000211: 01,2361           56105                           XCH      OVFIND                                
003936,000212: 01,2362           54067                           TS       NEWJOB                                
003937,000213: 
003938,000214: 01,2363           00003        ENDPRCHG           RELINT                                         
003939,000215: 01,2364           52151                           DXCH     LOC                                   #  BASIC JOBS HAVE POSITIVE ADDRESSES, SO
003940,000216: 01,2365           00006                           EXTEND                                         #  DISPATCH WITH A DTCB.
003941,000217: 01,2366           62370                           BZMF     +2                                    #  IF INTERPRETIVE, SET UP EBANK, ETC.
003942,000218: 01,2367           52006                           DTCB                                           
003943,000219: 

Page 112

003945,000221: 01,2370           40000                           COM                                            #  EPILOGUE TO JOB CHANGE FOR INTERPRETIVE
003946,000222: 01,2371           54150                           TS       LOC                                   #  RESUME.
003947,000223: 01,2372           36232                           CAF      FBANKMSK                              
003948,000224: 01,2373           70001                           MASK     L                                     
003949,000225: 01,2374           16011                           TCF      INTRSM                                
003950,000226: 
003951,000227:                                                                                                  #           COMPLETE JOBSLEEP PREPARATIONS.
003952,000228: 
003953,000229: 01,2375           00004        JOBSLP1            INHINT                                         
003954,000230: 01,2376           40153                           CS       PRIORITY                              #  NNZ PRIORITY SHOWS JOB ASLEEP.
003955,000231: 01,2377           54153                           TS       PRIORITY                              
003956,000232: 01,2400           36027                           CAF      LOW7                                  
003957,000233: 01,2401           70006                           MASK     BBANK                                 
003958,000234: 01,2402           54151                           TS       BANKSET                               
003959,000235: 01,2403           47653                           CS       ZERO                                  
003960,000236: 01,2404           54115        JOBSLP2            TS       BUF        +1                         #  HOLDS - HIGHEST PRIORITY.
003961,000237: 01,2405           12475                           TCF      EJSCAN                                #  SCAN FOR HIGHEST PRIORITY ALA ENDOFJOB.
003962,000238: 

Page 113

003964,000240:                                                                                                  #           TO WAKE UP A JOB, EACH CORE SET IS FOUND TO LOCATE ALL JOBS WHICH ARE ASLEEP. IF THE FCADR IN THE
003965,000241:                                                                                                  #  LOC REGISTER OF ANY SUCH JOB MATCHES THAT SUPPLIED BY THE CALLER, THAT JOB IS AWAKENED. IF NO JOB IS FOUND,
003966,000242:                                                                                                  #  LOCCTR IS SET TO -1 AND NO FURTHER ACTION TAKES PLACE.
003967,000243: 
003968,000244: 01,2406           54626        JOBWAKE2           TS       EXECTEM1                              
003969,000245: 01,2407           37653                           CAF      ZERO                                  #  BEGIN CORE SET SCAN.
003970,000246: 01,2410           54635                           TS       LOCCTR                                
003971,000247: 01,2411           32250                           CAF      NO.CORES                              
003972,000248: 01,2412           54627        JOBWAKE4           TS       EXECTEM2                              
003973,000249: 01,2413           50635                           INDEX    LOCCTR                                
003974,000250: 01,2414           10153                           CCS      PRIORITY                              
003975,000251: 01,2415           12420                           TCF      JOBWAKE3                              #  ACTIVE JOB - CHECK NEXT CORE SET.
003976,000252: 01,2416           00014        COREINC            DEC      12         B-14                       #  12 REGISTERS PER CORE SET.
003977,000253: 01,2417           12427                           TCF      WAKETEST                              #  SLEEPING JOB - SEE IF CADR MATCHES.
003978,000254: 
003979,000255: 01,2420           32416        JOBWAKE3           CAF      COREINC                               
003980,000256: 01,2421           26635                           ADS      LOCCTR                                
003981,000257: 01,2422           10627                           CCS      EXECTEM2                              
003982,000258: 01,2423           12412                           TCF      JOBWAKE4                              
003983,000259: 01,2424           47646                           CS       ONE                                   #  EXIT IF SLEEPING JOB NOT FOUND.
003984,000260: 01,2425           54635                           TS       LOCCTR                                
003985,000261: 01,2426           14210                           TCF      ENDFIND                               
003986,000262: 
003987,000263: 01,2427           40633        WAKETEST           CS       NEWLOC                                
003988,000264: 01,2430           50635                           INDEX    LOCCTR                                
003989,000265: 01,2431           60150                           AD       LOC                                   
003990,000266: 01,2432           00006                           EXTEND                                         
003991,000267: 01,2433           12435                           BZF      +2                                    #  IF MATCH.
003992,000268: 01,2434           12420                           TCF      JOBWAKE3                              #  EXAMINE NEXT CORE SET IF NO MATCH.
003993,000269: 
003994,000270: 01,2435           50635                           INDEX    LOCCTR                                #  RE-COMPLEMENT PRIORITY TO SHOW JOB AWAKE
003995,000271: 01,2436           40153                           CS       PRIORITY                              
003996,000272: 01,2437           50635                           INDEX    LOCCTR                                
003997,000273: 01,2440           54153                           TS       PRIORITY                              
003998,000274: 
003999,000275: 01,2441           46232                           CS       FBANKMSK                              #  MAKE UP THE 2CADR OF THE WAKE ADDRESS
004000,000276: 01,2442           70633                           MASK     NEWLOC                                #  USING THE CADR IN NEWLOC AND THE EBANK
004001,000277: 01,2443           67634                           AD       2K                                    #  HALF OF BBANK SAVED IN BANKSET.
004002,000278: 01,2444           56633                           XCH      NEWLOC                                
004003,000279: 01,2445           76232                           MASK     FBANKMSK                              
004004,000280: 01,2446           50635                           INDEX    LOCCTR                                
004005,000281: 01,2447           60151                           AD       BANKSET                               
004006,000282: 01,2450           54634                           TS       NEWLOC     +1                         
004007,000283: 
004008,000284: 01,2451           10635                           CCS      LOCCTR                                #  SPECIAL TREATMENT IF THIS JOB WAS
004009,000285: 01,2452           12275                           TCF      SETLOC                                #  ALREADY IN THE RUN (0) POSITION.
004010,000286: 01,2453           12265                           TCF      SPECTEST                              
004011,000287: 

Page 114

004013,000289:                                                                                                  #           PRIORITY CHANGE. CHANGE THE CONTENTS OF PRIORITY AND SCAN FOR THE JOB OF HIGHEST PRIORITY.
004014,000290: 
004015,000291: 01,2454           54150        PRIOCH2            TS       LOC                                   
004016,000292: 01,2455           37653                           CAF      ZERO                                  #  SET FLAG TO TELL ENDJOB SCANNER IF THIS
004017,000293: 01,2456           54114                           TS       BUF                                   #  JOB IS STILL HIGHEST PRIORITY.
004018,000294: 01,2457           32503                           CAF      LOW9                                  
004019,000295: 01,2460           70153                           MASK     PRIORITY                              
004020,000296: 01,2461           60632                           AD       NEWPRIO                               
004021,000297: 01,2462           54153                           TS       PRIORITY                              
004022,000298: 01,2463           40000                           COM                                            
004023,000299: 01,2464           12404                           TCF      JOBSLP2                               #  AND TO EJSCAN.
004024,000300: 

Page 115

004026,000302:                                                                                                  #           RELEASE THIS CORE SET AND VAC AREA AND SCAN FOR THE JOB OF HIGHEST ACTIVE PRIORITY.
004027,000303: 
004028,000304: 01,2465           00004        ENDJOB1            INHINT                                         
004029,000305: 01,2466           47653                           CS       ZERO                                  
004030,000306: 01,2467           54115                           TS       BUF        +1                         
004031,000307: 01,2470           56153                           XCH      PRIORITY                              
004032,000308: 01,2471           72503                           MASK     LOW9                                  
004033,000309: 01,2472           10000                           CCS      A                                     
004034,000310: 01,2473           50000                           INDEX    A                                     
004035,000311: 01,2474           54000                           TS       0                                     
004036,000312: 
004037,000313: 01,2475           10167        EJSCAN             CCS      PRIORITY   +12D                       
004038,000314: 01,2476           02542                           TC       EJ1                                   
004039,000315: 01,2500                                           SETLOC   +1                                    
004040,000316: 01,2500           12501                           TCF      +1                                    
004041,000317: 
004042,000318: 01,2501           10203                           CCS      PRIORITY   +24D                       #  EXAMINE EACH PRIORITY REGISTER TO FIND
004043,000319: 01,2502           02542                           TC       EJ1                                   #  THE JOB OF HIGHEST ACTIVE PRIORITY.
004044,000320: 01,2503           00777        LOW9               OCT      00777                                 
004045,000321: 01,2504           12505                           TCF      +1                                    
004046,000322: 
004047,000323: 01,2505           10217                           CCS      PRIORITY   +36D                       
004048,000324: 01,2506           02542                           TC       EJ1                                   
004049,000325: 01,2507           67624        -CCSPR             -CCS     PRIORITY                              
004050,000326: 01,2510           12511                           TCF      +1                                    
004051,000327: 
004052,000328: 01,2511           10233                           CCS      PRIORITY   +48D                       
004053,000329: 01,2512           02542                           TC       EJ1                                   
004054,000330: 01,2514                                           SETLOC   +1                                    
004055,000331: 01,2514           12515                           TCF      +1                                    
004056,000332: 
004057,000333: 01,2515           10247                           CCS      PRIORITY   +60D                       
004058,000334: 01,2516           02542                           TC       EJ1                                   
004059,000335: 01,2520                                           SETLOC   +1                                    
004060,000336: 01,2520           12521                           TCF      +1                                    
004061,000337: 
004062,000338: 01,2521           10263                           CCS      PRIORITY   +72D                       
004063,000339: 01,2522           02542                           TC       EJ1                                   
004064,000340: 01,2524                                           SETLOC   +1                                    
004065,000341: 01,2524           12525                           TCF      +1                                    
004066,000342: 

Page 116

004068,000344:                                                                                                  #           EVALUATE THE RESULTS OF THE SCAN.
004069,000345: 
004070,000346: 01,2525           10115                           CCS      BUF        +1                         #  SEE IF THERE ARE ANY ACTIVE JOBS WAITING
004071,000347: 01,2530                                           SETLOC   +2                                    
004072,000348: 01,2530           12532                           TCF      +2                                    
004073,000349: 01,2531           14215                           TCF      DUMMYJOB                              
004074,000350: 01,2532           10114                           CCS      BUF                                   #  BUF IS ZERO IF THIS IS A PRIOCHNG AND
004075,000351: 01,2533           12535                           TCF      +2                                    #  CHANGED PRIORITY IS STILL HIGHEST.
004076,000352: 01,2534           12363                           TCF      ENDPRCHG                              
004077,000353: 
004078,000354: 01,2535           50000                           INDEX    A                                     #  OTHERWISE, SET NEWJOB TO THE RELATIVE
004079,000355: 01,2536           27777                           CAF      0          -1                         #  ADDRESS OF THE NEW JOB'S CORE SET.
004080,000356: 01,2537           62507                           AD       -CCSPR                                
004081,000357: 01,2540           54067                           TS       NEWJOB                                
004082,000358: 01,2541           12315                           TCF      CHANJOB    -1                         
004083,000359: 
004084,000360: 01,2542           54116        EJ1                TS       BUF        +2                         
004085,000361: 01,2543           60115                           AD       BUF        +1                         #  - OLD HIGH PRIORITY.
004086,000362: 01,2544           10000                           CCS      A                                     
004087,000363: 01,2545           40116                           CS       BUF        +2                         
004088,000364: 01,2546           12552                           TCF      EJ2                                   #  NEW HIGH PRIORITY.
004089,000365: 01,2547           12550                           NOOP                                           
004090,000366: 01,2550           50002                           INDEX    Q                                     
004091,000367: 01,2551           00002                           TC       2                                     #  PROCEED WITH SEARCH.
004092,000368: 
004093,000369: 01,2552           54115        EJ2                TS       BUF        +1                         
004094,000370: 01,2553           00006                           EXTEND                                         
004095,000371: 01,2554           22114                           QXCH     BUF                                   #  FOR LOCATING CCS PRIORITY + X INSTR.
004096,000372: 01,2555           50114                           INDEX    BUF                                   
004097,000373: 01,2556           00002                           TC       2                                     
004098,000374: 
004099,000375: 01,2557                        ENDEXECS           EQUALS                                         
004100,000376: 

Page 117

004102,000378:                                                                                                  #           IDLING AND COMPUTER ACTIVITY (GREEN) LIGHT MAINTENANCE. THE IDLING ROUTINE IS NOT A JOB IN ITSELF,
004103,000379:                                                                                                  #  BUT RATHER A SUBROUTINE OF THE EXECUTIVE.
004104,000380: 
004105,000381:    4215                                           SETLOC   EXECBANK   +1                         
004106,000382: 
004107,000383:    4215           47653        DUMMYJOB           CS       ZERO                                  #  SET NEWJOB TO -0 FOR IDLING.
004108,000384:    4216           54067                           TS       NEWJOB                                
004109,000385:    4217           00003                           RELINT                                         
004110,000386:    4220           47645                           CS       TWO                                   #  TURN OFF THE ACTIVITY LIGHT.
004111,000387:    4221           00006                           EXTEND                                         
004112,000388:    4222           03011                           WAND     DSALMOUT                              
004113,000389:    4223           14226                           TCF      CHECKNJ    +2                         
004114,000390: 
004115,000391:    4224           00006        CHECKNJ            EXTEND                                         #  SPECIAL NEWJOB TEST FOR SELF-CHECK,
004116,000392:    4225           23043                           QXCH     SELFRET                               #  WHICH RUNS UNDER EXECUTIVE CONTROL,
004117,000393:    4226           10067                 +2        CCS      NEWJOB                                #  BUT DOES NOT HAVE A JOBS CORE REGISTERS.
004118,000394:    4227           14241                           TCF      NUCHANGE                              #  NEW JOB REQUIRING A CHANGE JOB.
004119,000395:    4230           37645                           CAF      TWO                                   #  NEW JOB ALREADY IN POSITION FOR
004120,000396:    4231           14235                           TCF      NUDIRECT                              #  EXECUTION.
004121,000397: 
004122,000398:    4232           34250                           CAF      SELFBANK                              #  RETURN TO SELF-CHECK.
004123,000399:    4233           54004                           TS       FBANK                                 
004124,000400:    4234           01043                           TC       SELFRET                               
004125,000401: 
004126,000402:    4235           00006        NUDIRECT           EXTEND                                         #  TURN THE GREEN LIGHT BACK ON.
004127,000403:    4236           05011                           WOR      DSALMOUT                              
004128,000404:    4237           52151                           DXCH     LOC                                   #  JOBS STARTED IN THIS FASHION MUST BE
004129,000405:    4240           52006                           DTCB                                           #  BASIC.
004130,000406: 
004131,000407:    4241           37645        NUCHANGE           CAF      TWO                                   
004132,000408:    4242           00006                           EXTEND                                         
004133,000409:    4243           05011                           WOR      DSALMOUT                              
004134,000410:    4244           34214                           CAF      EXECBANK                              #  SWAP CORE SETS.
004135,000411:    4245           54004                           TS       FBANK                                 
004136,000412:    4246           00004                           INHINT                                         #  CHANGE JOBS
004137,000413:    4247           12315                           TCF      CHANJOB    -1                         
004138,000414: 
004139,000415:    4250           21273        SELFBANK           CADR     ENDEDOP                               
004140,000416:    4251                        ENDEXECF           EQUALS                                         

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