Source Code

These source-code files are part of a reconstructed copy of Aurora 88, the final release of the Lunar Module (LM) Apollo Guidance Computer (AGC) system test software.

They have been created via disassembly of binary dumps of original core rope memory modules, part numbers 2003972-011, 2003972-091, and 2003972-111, belonging to Steve Jurvetson.

Since only binary dumps (rather than listings) of Aurora 88 are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing.

004430,000002:                                                                                                  ## Copyright:   Public domain.
004431,000003:                                                                                                  ## Filename:    EXECUTIVE.agc
004432,000004:                                                                                                  ## Purpose:     A section of Aurora 88.
004433,000005:                                                                                                  ##              It is part of the reconstructed source code for the final
004434,000006:                                                                                                  ##              release of the Lunar Module system test software. No original
004435,000007:                                                                                                  ##              listings of this program are available; instead, this file
004436,000008:                                                                                                  ##              was created via disassembly of dumps of Aurora 88 core rope
004437,000009:                                                                                                  ##              modules and comparison with other AGC programs.
004438,000010:                                                                                                  ## Assembler:   yaYUL
004439,000011:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
004440,000012:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
004441,000013:                                                                                                  ## Mod history: 2023-06-30 MAS  Created from Aurora 12.
004442,000014: 
004443,000015: 
004444,000016:    4276                                           SETLOC   ENDSUBSF                              
004445,000017: 
004446,000018:                                                                                                  #  TO ENTER A JOB REQUEST REQUIRING NO VAC AREA:
004447,000019: 
004448,000020:    4276           54070        NOVAC              TS       NEWPRIO                               #  SAVE PRIORITY OF NEW JOB.
004449,000021:    4277           00006                           EXTEND                                         
004450,000022:    4300           50002                           INDEX    Q                                     #  Q WILL BE UNDISTURBED THROUGHOUT.
004451,000023:    4301           30001                           DCA      0                                     #  2CADR OF JOB ENTERED.
004452,000024:    4302           52073                           DXCH     NEWLOC                                
004453,000025:    4303           34362                           CAF      EXECBANK                              
004454,000026:    4304           56004                           XCH      FBANK                                 
004455,000027:    4305           54065                           TS       EXECTEM1                              
004456,000028:    4306           12242                           TCF      NOVAC2                                #  ENTER EXECUTIVE BANK.
004457,000029: 
004458,000030:                                                                                                  #  TO ENTER A JOB REQUEST REQUIRING A VAC AREA - E.G., ALL (PARTIALLY) INTERPRETIVE JOBS.
004459,000031: 
004460,000032:    4307           54070        FINDVAC            TS       NEWPRIO                               
004461,000033:    4310           00006                           EXTEND                                         
004462,000034:    4311           50002                           INDEX    Q                                     
004463,000035:    4312           30001                           DCA      0                                     
004464,000036:    4313           52073                           DXCH     NEWLOC                                
004465,000037:    4314           34362                           CAF      EXECBANK                              
004466,000038:    4315           56004                           XCH      FBANK                                 
004467,000039:    4316           12220                           TCF      FINDVAC2                              #  OFF TO EXECUTIVE SWITCHED-BANK.
004468,000040: 
004469,000041:                                                                                                  #  TO SUSPEND A BASIC JOB SO A HIGHER PRIORITY JOB MAY BE SERVICED:
004470,000042: 
004471,000043:    4317           34362        CHANG1             CAF      EXECBANK                              
004472,000044:    4320           54001                           TS       L                                     
004473,000045:    4321           30002                           CA       Q                                     
004474,000046:    4322           22006                 +3        LXCH     BBANK                                 
004475,000047:    4323           00004                           INHINT                                         
004476,000048:    4324           12320                           TCF      CHANJOB                               
004477,000049: 
004478,000050:                                                                                                  #  TO SUSPEND AN INTERPRETIVE JOB:
004479,000051: 
004480,000052:    4325           34362        CHANG2             CAF      EXECBANK                              
004481,000053:    4326           54001                           TS       L                                     
004482,000054:    4327           40150                           CS       LOC                                   #  NEGATIVE LOC SHOWS JOB INTERPRETIVE.
004483,000055:    4330           14322                           TCF      CHANG1     +3                         
004484,000056: 
004485,000057: 
004486,000058:                                                                                                  #  TO VOLUNTARILY SUSPEND A JOB UNTIL THE COMPLETION OF SOME ANTICIPATED EVENT (I/O EVENT ETC.):
004487,000059: 
004488,000060:    4331           54150        JOBSLEEP           TS       LOC                                   
004489,000061:    4332           34362                           CAF      EXECBANK                              
004490,000062:    4333           54004                           TS       FBANK                                 
004491,000063:    4334           12403                           TCF      JOBSLP1                               
004492,000064: 
004493,000065:                                                                                                  #  TO AWAKEN A JOB PUT TO SLEEP IN THE ABOVE FASHION:
004494,000066: 
004495,000067:    4335           54072        JOBWAKE            TS       NEWLOC                                
004496,000068:    4336           47651                           CS       TWO                                   #  EXIT IS VIA FINDVAC/NOVAC PROCEDURES.
004497,000069:    4337           26002                           ADS      Q                                     
004498,000070:    4340           34362                           CAF      EXECBANK                              
004499,000071:    4341           56004                           XCH      FBANK                                 
004500,000072:    4342           12414                           TCF      JOBWAKE2                              
004501,000073: 
004502,000074:                                                                                                  #  TO CHANGE THE PRIORITY OF A JOB CURRENTLY UNDER EXECUTION:
004503,000075: 
004504,000076:    4343           00004        PRIOCHNG           INHINT                                         #  NEW PRIORITY ARRIVES IN A. RETURNS TO
004505,000077:    4344           54070                           TS       NEWPRIO                               #  CALLER AS SOON AS NEW JOB PRIORITY IS
004506,000078:    4345           34362                           CAF      EXECBANK                              #  HIGHEST. PREPARE FOR POSSIBLE BASIC-
004507,000079:    4346           56006                           XCH      BBANK                                 #  STYLE CHANGE-JOB.
004508,000080:    4347           54151                           TS       BANKSET                               
004509,000081:    4350           30002                           CA       Q                                     
004510,000082:    4351           12463                           TCF      PRIOCH2                               
004511,000083: 
004512,000084:                                                                                                  #  TO FREE THE DISPLAY BEFORE ENDOFJOB:
004513,000085: 
004514,000086:    4352           05303        EJFREE             TC       FREEDSP                               
004515,000087: 
004516,000088:                                                                                                  #  TO REMOVE A JOB FROM EXECUTIVE CONSIDERATIONS:
004517,000089: 
004518,000090:    4353           34362        ENDOFJOB           CAF      EXECBANK                              
004519,000091:    4354           54004                           TS       FBANK                                 
004520,000092:    4355           12474                           TCF      ENDJOB1                               
004521,000093: 
004522,000094:    4356           30065        ENDFIND            CA       EXECTEM1                              #  RETURN TO CALLER AFTER JOB ENTRY
004523,000095:    4357           54004                           TS       FBANK                                 #  COMPLETE.
004524,000096:    4360           50002                           INDEX    Q                                     
004525,000097:    4361           00002                           TC       2                                     
004526,000098: 
004527,000099:    4362           02220        EXECBANK           CADR     FINDVAC2                              
004528,000100: 
004529,000101: 
004530,000102:                                                                                                  #  LOCATE AN AVAILABLE VAC AREA.
004531,000103: 
004532,000104: 01,2220                                           SETLOC   ENDINTS1                              
004533,000105: 
004534,000106: 01,2220           54065        FINDVAC2           TS       EXECTEM1                              #  (SAVE CALLER'S BANK FIRST.)
004535,000107: 01,2221           10431                           CCS      VAC1USE                               
004536,000108: 01,2222           12235                           TCF      VACFOUND                              
004537,000109: 01,2223           10505                           CCS      VAC2USE                               
004538,000110: 01,2224           12235                           TCF      VACFOUND                              
004539,000111: 01,2225           10561                           CCS      VAC3USE                               
004540,000112: 01,2226           12235                           TCF      VACFOUND                              
004541,000113: 01,2227           10635                           CCS      VAC4USE                               
004542,000114: 01,2230           12235                           TCF      VACFOUND                              
004543,000115: 01,2231           10711                           CCS      VAC5USE                               
004544,000116: 01,2232           12235                           TCF      VACFOUND                              
004545,000117: 01,2233           05350                           TC       ABORT                                 
004546,000118: 01,2234           01201                           OCT      1201                                  #  NO VAC AREAS.
004547,000119: 
004548,000120: 01,2235           67651        VACFOUND           AD       TWO                                   #  RESERVE THIS VAC AREA BY STORING A ZERO
004549,000121: 01,2236           22007                           ZL                                             #  IN ITS VAC USE REGISTER AND STORE THE
004550,000122: 01,2237           50000                           INDEX    A                                     #  ADDRESS OF THE FIRST WORD OF IT IN THE
004551,000123: 01,2240           21777                           LXCH     0          -1                         #  LOW NINE BITS OF THE PRIORITY WORD.
004552,000124: 01,2241           26070                           ADS      NEWPRIO                               
004553,000125: 
004554,000126: 01,2242           37657        NOVAC2             CAF      ZERO                                  #  NOVAC ENTERS HERE.  FIND A CORE SET.
004555,000127: 01,2243           54071                           TS       LOCCTR                                
004556,000128: 01,2244           32251                           CAF      NO.CORES                              #  SEVEN SETS OF ELEVEN REGISTERS EACH.
004557,000129: 01,2245           54066        NOVAC3             TS       EXECTEM2                              
004558,000130: 01,2246           50071                           INDEX    LOCCTR                                
004559,000131: 01,2247           10153                           CCS      PRIORITY                              #  EACH PRIORITY REGISTER CONTAINS -0 IF
004560,000132: 01,2250           12311                           TCF      NEXTCORE                              #  THE CORRESPONDING CORE SET IS AVAILABLE.
004561,000133: 01,2251           00006        NO.CORES           DEC      6          B-14                       
004562,000134: 01,2252           12311                           TCF      NEXTCORE                              #  AN ACTIVE JOB HAS A POSITIVE PRIORITY
004563,000135:                                                                                                  #  BUT A DORMANT JOB'S PRIORITY IS NEGATIVE
004564,000136: 
004565,000137: 
004566,000138: 01,2253           30070        CORFOUND           CA       NEWPRIO                               #  SET THE PRIORITY OF THIS JOB IN THE CORE
004567,000139: 01,2254           50071                           INDEX    LOCCTR                                #  SET'S PRIORITY REGISTER AND SET THE
004568,000140: 01,2255           54153                           TS       PRIORITY                              #  JOB'S PUSH-DOWN POINTER AT THE BEGINNING
004569,000141: 01,2256           77664                           MASK     LOW9                                  #  OF THE WORK AREA AND OVERFLOW INDICATOR
004570,000142: 01,2257           50071                           INDEX    LOCCTR                                
004571,000143: 01,2260           54152                           TS       PUSHLOC                               #  OFF TO PREPARE FOR INTERPRETIVE PROGRAMS
004572,000144: 
004573,000145: 01,2261           10071                           CCS      LOCCTR                                #  IF CORE SET ZERO IS BEING LOADED, SET UP
004574,000146: 01,2262           12276                           TCF      SETLOC                                #  OVFIND AND FIXLOC IMMEDIATELY.
004575,000147: 01,2263           54105                           TS       OVFIND                                
004576,000148: 01,2264           30152                           CA       PUSHLOC                               
004577,000149: 01,2265           54104                           TS       FIXLOC                                
004578,000150: 
004579,000151: 01,2266           10067        SPECTEST           CCS      NEWJOB                                #  SEE IF ANY ACTIVE JOBS WAITING (RARE).
004580,000152: 01,2267           12276                           TCF      SETLOC                                #  MUST BE AWAKENED BUT UNCHANGED JOB.
004581,000153: 01,2270           05366                           TC       CCSHOLE                               
004582,000154: 01,2271           05366                           TC       CCSHOLE                               
004583,000155: 01,2272           54067                           TS       NEWJOB                                #  +0 SHOWS ACTIVE JOB ALREADY SET.
004584,000156: 01,2273           52073                           DXCH     NEWLOC                                
004585,000157: 01,2274           52151                           DXCH     LOC                                   
004586,000158: 01,2275           14356                           TCF      ENDFIND                               
004587,000159: 
004588,000160: 01,2276           52073        SETLOC             DXCH     NEWLOC                                #  SET UP THE LOCATION REGISTERS FOR THIS
004589,000161: 01,2277           50071                           INDEX    LOCCTR                                
004590,000162: 01,2300           52151                           DXCH     LOC                                   
004591,000163: 01,2301           50067                           INDEX    NEWJOB                                #  THIS INDEX INSTRUCTION INSURES THAT THE
004592,000164: 01,2302           40153                           CS       PRIORITY                              #  HIGHEST ACTIVE PRIORITY WILL BE COMPARED
004593,000165: 01,2303           60070                           AD       NEWPRIO                               #  WITH THE NEW PRIORITY TO SEE IF NEWJOB
004594,000166: 01,2304           00006                           EXTEND                                         #  SHOULD BE SET TO SIGNAL A SWITCH.
004595,000167: 01,2305           64356                           BZMF     ENDFIND                               
004596,000168: 01,2306           30071                           CA       LOCCTR                                #  LOCCTR IS LEFT SET AT THIS CORE SET IF
004597,000169: 01,2307           54067                           TS       NEWJOB                                #  THE CALLER WANTS TO LOAD ANY MPAC
004598,000170: 01,2310           14356                           TCF      ENDFIND                               #  REGISTERS, ETC.
004599,000171: 
004600,000172: 01,2311           32424        NEXTCORE           CAF      COREINC                               
004601,000173: 01,2312           26071                           ADS      LOCCTR                                
004602,000174: 01,2313           10066                           CCS      EXECTEM2                              
004603,000175: 01,2314           12245                           TCF      NOVAC3                                
004604,000176: 01,2315           05350                           TC       ABORT                                 #  NO CORE SETS.
004605,000177: 01,2316           01202                           OCT      1202                                  
004606,000178: 
004607,000179: 
004608,000180:                                                                                                  #  THE FOLLOWING ROUTINE SWAPS CORE SET 0 WITH THAT WHOSE RELATIVE ADDRESS IS IN NEWJOB.
004609,000181: 
004610,000182: 01,2317           52151                 -1        DXCH     LOC                                   
004611,000183: 01,2320           50067        CHANJOB            INDEX    NEWJOB                                #  LOC ARRIVES IN A AND BBANK IN L.
004612,000184: 01,2321           52151                           DXCH     LOC                                   
004613,000185: 01,2322           52151                           DXCH     LOC                                   
004614,000186: 
004615,000187: 01,2323           52141                           DXCH     MPAC                                  #  SWAP MULTI-PURPOSE ACCUMULATOR AREAS.
004616,000188: 01,2324           50067                           INDEX    NEWJOB                                
004617,000189: 01,2325           52141                           DXCH     MPAC                                  
004618,000190: 01,2326           52141                           DXCH     MPAC                                  
004619,000191: 01,2327           52143                           DXCH     MPAC       +2                         
004620,000192: 01,2330           50067                           INDEX    NEWJOB                                
004621,000193: 01,2331           52143                           DXCH     MPAC       +2                         
004622,000194: 01,2332           52143                           DXCH     MPAC       +2                         
004623,000195: 01,2333           52145                           DXCH     MPAC       +4                         
004624,000196: 01,2334           50067                           INDEX    NEWJOB                                
004625,000197: 01,2335           52145                           DXCH     MPAC       +4                         
004626,000198: 01,2336           52145                           DXCH     MPAC       +4                         
004627,000199: 01,2337           52147                           DXCH     MPAC       +6                         
004628,000200: 01,2340           50067                           INDEX    NEWJOB                                
004629,000201: 01,2341           52147                           DXCH     MPAC       +6                         
004630,000202: 01,2342           52147                           DXCH     MPAC       +6                         
004631,000203: 
004632,000204: 01,2343           37657                           CAF      ZERO                                  
004633,000205: 01,2344           56105                           XCH      OVFIND                                #  MAKE PUSHLOC NEGATIVE IF OVFIND NZ.
004634,000206: 01,2345           00006                           EXTEND                                         
004635,000207: 01,2346           12351                           BZF      +3                                    
004636,000208: 01,2347           40152                           CS       PUSHLOC                               
004637,000209: 01,2350           54152                           TS       PUSHLOC                               
004638,000210: 
004639,000211: 01,2351           52153                           DXCH     PUSHLOC                               
004640,000212: 01,2352           50067                           INDEX    NEWJOB                                
004641,000213: 01,2353           52153                           DXCH     PUSHLOC                               
004642,000214: 01,2354           52153                           DXCH     PUSHLOC                               #  SWAPS PUSHLOC AND PRIORITY.
004643,000215: 01,2355           37664                           CAF      LOW9                                  #  SET FIXLOC TO BASE OF VAC AREA.
004644,000216: 01,2356           70153                           MASK     PRIORITY                              
004645,000217: 01,2357           54104                           TS       FIXLOC                                
004646,000218: 
004647,000219: 01,2360           10152                           CCS      PUSHLOC                               #  SET OVERFLOW INDICATOR ACCORDING TO
004648,000220: 01,2361           37657                           CAF      ZERO                                  
004649,000221: 01,2362           12367                           TCF      ENDPRCHG   -1                         
004650,000222: 01,2363           40152                           CS       PUSHLOC                               
004651,000223: 01,2364           54152                           TS       PUSHLOC                               
004652,000224: 01,2365           37652                           CAF      ONE                                   
004653,000225: 01,2366           56105                           XCH      OVFIND                                
004654,000226: 01,2367           54067                           TS       NEWJOB                                
004655,000227: 
004656,000228: 01,2370           00003        ENDPRCHG           RELINT                                         
004657,000229: 01,2371           52151                           DXCH     LOC                                   #  BASIC JOBS HAVE POSITIVE ADDRESSES, SO
004658,000230: 
004659,000231: 
004660,000232: 01,2372           00006                           EXTEND                                         #  DISPATCH WITH A DTCB.
004661,000233: 01,2373           62375                           BZMF     +2                                    #  IF INTERPRETIVE, SET UP EBANK, ETC.
004662,000234: 01,2374           52006                           DTCB                                           
004663,000235: 
004664,000236: 
004665,000237: 01,2375           40000                           COM                                            #  EPILOGUE TO JOB CHANGE FOR INTERPRETIVE
004666,000238: 01,2376           67652                           AD       ONE                                   
004667,000239: 01,2377           54150                           TS       LOC                                   #  RESUME.
004668,000240: 01,2400           36232                           CAF      FBANKMSK                              
004669,000241: 01,2401           70001                           MASK     L                                     
004670,000242: 01,2402           16011                           TCF      INTRSM                                
004671,000243: 
004672,000244:                                                                                                  #  COMPLETE JOBSLEEP PREPARATIONS.
004673,000245: 
004674,000246: 01,2403           00004        JOBSLP1            INHINT                                         
004675,000247: 01,2404           40153                           CS       PRIORITY                              #  NNZ PRIORITY SHOWS JOB ASLEEP.
004676,000248: 01,2405           54153                           TS       PRIORITY                              
004677,000249: 01,2406           36027                           CAF      LOW7                                  
004678,000250: 01,2407           70006                           MASK     BBANK                                 
004679,000251: 01,2410           54151                           TS       BANKSET                               
004680,000252: 01,2411           47657                           CS       ZERO                                  
004681,000253: 01,2412           54115        JOBSLP2            TS       BUF        +1                         #  HOLDS - HIGHEST PRIORITY.
004682,000254: 01,2413           12504                           TCF      EJSCAN                                #  SCAN FOR HIGHEST PRIORITY ALA ENDOFJOB.
004683,000255: 
004684,000256: 
004685,000257:                                                                                                  #  TO WAKE UP A JOB, EACH CORE SET IS FOUND TO LOCATE ALL JOBS WHICH ARE ASLEEP. IF THE FCADR IN THE
004686,000258:                                                                                                  #  LOC REGISTER OF ANY SUCH JOB MATCHES THAT SUPPLIED BY THE CALLER, THAT JOB IS AWAKENED. IF NO JOB IS FOUND,
004687,000259:                                                                                                  #  LOCCTR IS SET TO -1 AND NO FURTHER ACTION TAKES PLACE.
004688,000260: 
004689,000261: 01,2414           54065        JOBWAKE2           TS       EXECTEM1                              
004690,000262: 01,2415           37657                           CAF      ZERO                                  #  BEGIN CORE SET SCAN.
004691,000263: 01,2416           54071                           TS       LOCCTR                                
004692,000264: 01,2417           32251                           CAF      NO.CORES                              
004693,000265: 01,2420           54066        JOBWAKE4           TS       EXECTEM2                              
004694,000266: 01,2421           50071                           INDEX    LOCCTR                                
004695,000267: 01,2422           10153                           CCS      PRIORITY                              
004696,000268: 01,2423           12426                           TCF      JOBWAKE3                              #  ACTIVE JOB - CHECK NEXT CORE SET.
004697,000269: 01,2424           00014        COREINC            DEC      12         B-14                       #  12 REGISTERS PER CORE SET.
004698,000270: 01,2425           12435                           TCF      WAKETEST                              #  SLEEPING JOB - SEE IF CADR MATCHES.
004699,000271: 
004700,000272: 01,2426           32424        JOBWAKE3           CAF      COREINC                               
004701,000273: 01,2427           26071                           ADS      LOCCTR                                
004702,000274: 01,2430           10066                           CCS      EXECTEM2                              
004703,000275: 01,2431           12420                           TCF      JOBWAKE4                              
004704,000276: 01,2432           47652                           CS       ONE                                   #  EXIT IF SLEEPING JOB NOT FOUND.
004705,000277: 01,2433           54071                           TS       LOCCTR                                
004706,000278: 01,2434           14356                           TCF      ENDFIND                               
004707,000279: 
004708,000280: 01,2435           40072        WAKETEST           CS       NEWLOC                                
004709,000281: 01,2436           50071                           INDEX    LOCCTR                                
004710,000282: 01,2437           60150                           AD       LOC                                   
004711,000283: 01,2440           00006                           EXTEND                                         
004712,000284: 01,2441           12443                           BZF      +2                                    #  IF MATCH.
004713,000285: 01,2442           12426                           TCF      JOBWAKE3                              #  EXAMINE NEXT CORE SET IF NO MATCH.
004714,000286: 
004715,000287: 01,2443           50071                           INDEX    LOCCTR                                #  RE-COMPLEMENT PRIORITY TO SHOW JOB AWAKE
004716,000288: 01,2444           40153                           CS       PRIORITY                              
004717,000289: 01,2445           54070                           TS       NEWPRIO                               
004718,000290: 01,2446           50071                           INDEX    LOCCTR                                
004719,000291: 01,2447           54153                           TS       PRIORITY                              
004720,000292: 
004721,000293: 01,2450           46232                           CS       FBANKMSK                              #  MAKE UP THE 2CADR OF THE WAKE ADDRESS
004722,000294: 01,2451           70072                           MASK     NEWLOC                                #  USING THE CADR IN NEWLOC AND THE EBANK
004723,000295: 01,2452           67640                           AD       2K                                    #  HALF OF BBANK SAVED IN BANKSET.
004724,000296: 01,2453           56072                           XCH      NEWLOC                                
004725,000297: 01,2454           76232                           MASK     FBANKMSK                              
004726,000298: 01,2455           50071                           INDEX    LOCCTR                                
004727,000299: 01,2456           60151                           AD       BANKSET                               
004728,000300: 01,2457           54073                           TS       NEWLOC     +1                         
004729,000301: 
004730,000302: 01,2460           10071                           CCS      LOCCTR                                #  SPECIAL TREATMENT IF THIS JOB WAS
004731,000303: 01,2461           12276                           TCF      SETLOC                                #  ALREADY IN THE RUN (0) POSITION.
004732,000304: 01,2462           12266                           TCF      SPECTEST                              
004733,000305: 
004734,000306: 
004735,000307:                                                                                                  #  PRIORITY CHANGE. CHANGE THE CONTENTS OF PRIORITY AND SCAN FOR THE JOB OF HIGHEST PRIORITY.
004736,000308: 
004737,000309: 01,2463           54150        PRIOCH2            TS       LOC                                   
004738,000310: 01,2464           37657                           CAF      ZERO                                  #  SET FLAG TO TELL ENDJOB SCANNER IF THIS
004739,000311: 01,2465           54114                           TS       BUF                                   #  JOB IS STILL HIGHEST PRIORITY.
004740,000312: 01,2466           37664                           CAF      LOW9                                  
004741,000313: 01,2467           70153                           MASK     PRIORITY                              
004742,000314: 01,2470           60070                           AD       NEWPRIO                               
004743,000315: 01,2471           54153                           TS       PRIORITY                              
004744,000316: 01,2472           40000                           COM                                            
004745,000317: 01,2473           12412                           TCF      JOBSLP2                               #  AND TO EJSCAN.
004746,000318: 
004747,000319: 
004748,000320:                                                                                                  #  RELEASE THIS CORE SET AND VAC AREA AND SCAN FOR THE JOB OF HIGHEST ACTIVE PRIORITY.
004749,000321: 
004750,000322: 01,2474           00004        ENDJOB1            INHINT                                         
004751,000323: 01,2475           47657                           CS       ZERO                                  
004752,000324: 01,2476           54115                           TS       BUF        +1                         
004753,000325: 01,2477           56153                           XCH      PRIORITY                              
004754,000326: 01,2500           77664                           MASK     LOW9                                  
004755,000327: 01,2501           10000                           CCS      A                                     
004756,000328: 01,2502           50000                           INDEX    A                                     
004757,000329: 01,2503           54000                           TS       0                                     
004758,000330: 
004759,000331: 01,2504           10167        EJSCAN             CCS      PRIORITY   +12D                       
004760,000332: 01,2505           02551                           TC       EJ1                                   
004761,000333: 01,2506           05366                           TC       CCSHOLE                               
004762,000334: 01,2507           12510                           TCF      +1                                    
004763,000335: 
004764,000336: 01,2510           10203                           CCS      PRIORITY   +24D                       #  EXAMINE EACH PRIORITY REGISTER TO FIND
004765,000337: 01,2511           02551                           TC       EJ1                                   #  THE JOB OF HIGHEST ACTIVE PRIORITY.
004766,000338: 01,2512           05366                           TC       CCSHOLE                               
004767,000339: 01,2513           12514                           TCF      +1                                    
004768,000340: 
004769,000341: 01,2514           10217                           CCS      PRIORITY   +36D                       
004770,000342: 01,2515           02551                           TC       EJ1                                   
004771,000343: 01,2516           67624        -CCSPR             -CCS     PRIORITY                              
004772,000344: 01,2517           12520                           TCF      +1                                    
004773,000345: 
004774,000346: 01,2520           10233                           CCS      PRIORITY   +48D                       
004775,000347: 01,2521           02551                           TC       EJ1                                   
004776,000348: 01,2522           05366                           TC       CCSHOLE                               
004777,000349: 01,2523           12524                           TCF      +1                                    
004778,000350: 
004779,000351: 01,2524           10247                           CCS      PRIORITY   +60D                       
004780,000352: 01,2525           02551                           TC       EJ1                                   
004781,000353: 01,2526           05366                           TC       CCSHOLE                               
004782,000354: 01,2527           12530                           TCF      +1                                    
004783,000355: 
004784,000356: 01,2530           10263                           CCS      PRIORITY   +72D                       
004785,000357: 01,2531           02551                           TC       EJ1                                   
004786,000358: 01,2532           05366                           TC       CCSHOLE                               
004787,000359: 01,2533           12534                           TCF      +1                                    
004788,000360: 
004789,000361: 
004790,000362:                                                                                                  #  EVALUATE THE RESULTS OF THE SCAN.
004791,000363: 
004792,000364: 01,2534           10115                           CCS      BUF        +1                         #  SEE IF THERE ARE ANY ACTIVE JOBS WAITING
004793,000365: 01,2535           05366                           TC       CCSHOLE                               
004794,000366: 01,2536           05366                           TC       CCSHOLE                               
004795,000367: 
004796,000368: 01,2537           12541                           TCF      +2                                    
004797,000369: 01,2540           14363                           TCF      DUMMYJOB                              
004798,000370: 01,2541           10114                           CCS      BUF                                   #  BUF IS ZERO IF THIS IS A PRIOCHNG AND
004799,000371: 01,2542           12544                           TCF      +2                                    #  CHANGED PRIORITY IS STILL HIGHEST.
004800,000372: 01,2543           12370                           TCF      ENDPRCHG                              
004801,000373: 
004802,000374: 01,2544           50000                           INDEX    A                                     #  OTHERWISE, SET NEWJOB TO THE RELATIVE
004803,000375: 01,2545           27777                           CAF      0          -1                         #  ADDRESS OF THE NEW JOB'S CORE SET.
004804,000376: 01,2546           62516                           AD       -CCSPR                                
004805,000377: 01,2547           54067                           TS       NEWJOB                                
004806,000378: 01,2550           12317                           TCF      CHANJOB    -1                         
004807,000379: 
004808,000380: 01,2551           54116        EJ1                TS       BUF        +2                         
004809,000381: 01,2552           60115                           AD       BUF        +1                         #  - OLD HIGH PRIORITY.
004810,000382: 01,2553           10000                           CCS      A                                     
004811,000383: 01,2554           40116                           CS       BUF        +2                         
004812,000384: 01,2555           12561                           TCF      EJ2                                   #  NEW HIGH PRIORITY.
004813,000385: 01,2556           12557                           NOOP                                           
004814,000386: 01,2557           50002                           INDEX    Q                                     
004815,000387: 01,2560           00002                           TC       2                                     #  PROCEED WITH SEARCH.
004816,000388: 
004817,000389: 01,2561           54115        EJ2                TS       BUF        +1                         
004818,000390: 01,2562           00006                           EXTEND                                         
004819,000391: 01,2563           22114                           QXCH     BUF                                   #  FOR LOCATING CCS PRIORITY + X INSTR.
004820,000392: 01,2564           50114                           INDEX    BUF                                   
004821,000393: 01,2565           00002                           TC       2                                     
004822,000394: 
004823,000395: 01,2566                        ENDEXECS           EQUALS                                         
004824,000396: 
004825,000397: 
004826,000398:                                                                                                  #  IDLING AND COMPUTER ACTIVITY (GREEN) LIGHT MAINTENANCE. THE IDLING ROUTINE IS NOT A JOB IN ITSELF,
004827,000399:                                                                                                  #  BUT RATHER A SUBROUTINE OF THE EXECUTIVE.
004828,000400: 
004829,000401:    4363                                           SETLOC   EXECBANK   +1                         
004830,000402: 
004831,000403:    4363     1360                                  EBANK=   SELFRET                               #  SELF-CHECK STORAGE IN EBANK.
004832,000404: 
004833,000405:    4363           47657        DUMMYJOB           CS       ZERO                                  #  SET NEWJOB TO -0 FOR IDLING.
004834,000406:    4364           54067                           TS       NEWJOB                                
004835,000407:    4365           00003                           RELINT                                         
004836,000408:    4366           47651                           CS       TWO                                   #  TURN OFF THE ACTIVITY LIGHT.
004837,000409:    4367           00006                           EXTEND                                         
004838,000410:    4370           03011                           WAND     DSALMOUT                              
004839,000411:    4371           14374                           TCF      CHECKNJ    +2                         
004840,000412: 
004841,000413:    4372           00006        CHECKNJ            EXTEND                                         #  SPECIAL NEWJOB TEST FOR SELF-CHECK,
004842,000414:    4373           23360                           QXCH     SELFRET                               #  WHICH RUNS UNDER EXECUTIVE CONTROL,
004843,000415:    4374           10067                 +2        CCS      NEWJOB                                #  BUT DOES NOT HAVE A JOBS CORE REGISTERS.
004844,000416:    4375           14407                           TCF      NUCHANGE                              #  NEW JOB REQUIRING A CHANGE JOB.
004845,000417:    4376           37651                           CAF      TWO                                   #  NEW JOB ALREADY IN POSITION FOR
004846,000418:    4377           14403                           TCF      NUDIRECT                              #  EXECUTION.
004847,000419: 
004848,000420:    4400           34416        ADVAN              CAF      SELFBANK                              #  (SIMULATOR ADVAN IF NEWJOB = 77777).
004849,000421:    4401           54006                           TS       BBANK                                 
004850,000422:    4402           01360                           TC       SELFRET                               
004851,000423: 
004852,000424:    4403           00006        NUDIRECT           EXTEND                                         #  TURN THE GREEN LIGHT BACK ON.
004853,000425:    4404           05011                           WOR      DSALMOUT                              
004854,000426:    4405           52151                           DXCH     LOC                                   #  JOBS STARTED IN THIS FASHION MUST BE
004855,000427:    4406           52006                           DTCB                                           #  BASIC.
004856,000428: 
004857,000429:    4407           37651        NUCHANGE           CAF      TWO                                   
004858,000430:    4410           00006                           EXTEND                                         
004859,000431:    4411           05011                           WOR      DSALMOUT                              
004860,000432:    4412           34362                           CAF      EXECBANK                              #  SWAP CORE SETS.
004861,000433:    4413           54004                           TS       FBANK                                 
004862,000434:    4414           00004                           INHINT                                         #  CHANGE JOBS
004863,000435:    4415           12317                           TCF      CHANJOB    -1                         
004864,000436: 
004865,000437:    4416           40002        SELFBANK           BBCON    SELFCHK                               
004866,000438: 
004867,000439: 
004868,000440:                                                                                                  #  PRIORITY CONSTANTS (NOTE IN FIXED-FIXED).
004869,000441: 
004870,000442:    4417     7641               PRIO1              EQUALS   BIT10                                 
004871,000443:    4417     7640               PRIO2              EQUALS   BIT11                                 
004872,000444:    4417           03000        PRIO3              OCT      03000                                 
004873,000445:    4420     7637               PRIO4              EQUALS   BIT12                                 
004874,000446:    4420           05000        PRIO5              OCT      05000                                 
004875,000447:    4421           06000        PRIO6              OCT      06000                                 
004876,000448:    4422           07000        PRIO7              OCT      07000                                 
004877,000449:    4423     7636               PRIO10             EQUALS   BIT13                                 
004878,000450:    4423           11000        PRIO11             OCT      11000                                 
004879,000451:    4424           12000        PRIO12             OCT      12000                                 
004880,000452:    4425           13000        PRIO13             OCT      13000                                 
004881,000453:    4426           14000        PRIO14             OCT      14000                                 
004882,000454:    4427           15000        PRIO15             OCT      15000                                 
004883,000455:    4430           16000        PRIO16             OCT      16000                                 
004884,000456:    4431           17000        PRIO17             OCT      17000                                 
004885,000457:    4432     7635               PRIO20             EQUALS   BIT14                                 
004886,000458:    4432           21000        PRIO21             OCT      21000                                 
004887,000459:    4433           22000        PRIO22             OCT      22000                                 
004888,000460:    4434           23000        PRIO23             OCT      23000                                 
004889,000461:    4435           24000        PRIO24             OCT      24000                                 
004890,000462:    4436           25000        PRIO25             OCT      25000                                 
004891,000463:    4437           26000        PRIO26             OCT      26000                                 
004892,000464:    4440           27000        PRIO27             OCT      27000                                 
004893,000465:    4441           30000        PRIO30             OCT      30000                                 
004894,000466:    4442           31000        PRIO31             OCT      31000                                 
004895,000467:    4443           32000        PRIO32             OCT      32000                                 
004896,000468:    4444           33000        PRIO33             OCT      33000                                 
004897,000469:    4445           34000        PRIO34             OCT      34000                                 
004898,000470:    4446           35000        PRIO35             OCT      35000                                 
004899,000471:    4447           36000        PRIO36             OCT      36000                                 
004900,000472:    4450           37000        PRIO37             OCT      37000                                 
004901,000473:    4451                        ENDEXECF           EQUALS                                         

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