Source Code

These source-code files were transcribed from scans made from Don Eyles's personal copy of BURST120 (SUNBURST 120). They were scanned at archive.org's Boston facility, and the scanning was sponsored by Mike Stewart. The code was transcribed from these scans by a team of volunteers who are referenced in the program comments. Comments from the original source code are in ALL-CAPS, whereas comments added later in transcription are in Mixed-Case. In some cases, where similar code blocks exist in previously-transcribed AGC programs (primarily Luminary 99, from Apollo 11) those code blocks were used as a starting point and then corrected to agree with the BURST120 scans. The full scans are available at the Virtual AGC project's collection at archive.org, while more-convenient reduced-size (but reduced-quality) images are available at the main Virtual AGC website. Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. Notations on the program listing read, in part:

	YUL SYSTEM FOR AGC: REVISION 0 OF PROGRAM BURST120 
	BY NASA 2021106-031 DEC 7, 1967

	THIS LISTING IS A COPY OF A VERSION OF THE PROGRAM INTENDED 
	FOR USE IN THE ON-BOARD PRIMARY GUIDANCE COMPUTER IN THE 
	UNMANNED FLIGHT OF APOLLO LUNAR MODULE 1 --- THE AS206 MISSION.
Note that the date is the date of the printout, not the date of the program revision.

044161,000002:                                                                                                  ## Copyright:   Public domain.
044162,000003:                                                                                                  ## Filename:    EXECUTIVE.agc
044163,000004:                                                                                                  ## Purpose:     A module for revision 0 of BURST120 (Sunburst). It 
044164,000005:                                                                                                  ##              is part of the source code for the Lunar Module's
044165,000006:                                                                                                  ##              (LM) Apollo Guidance Computer (AGC) for Apollo 5.
044166,000007:                                                                                                  ## Assembler:   yaYUL
044167,000008:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
044168,000009:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
044169,000010:                                                                                                  ## Pages:       1049-1061
044170,000011:                                                                                                  ## Mod history: 2016-09-30 RSB  Created draft version.
044171,000012:                                                                                                  ##              2016-10-08 PDJ  Updated against Sunburst120 scan.
044172,000013:                                                                                                  ##              2016-10-31 RSB  Some typos.
044173,000014:                                                                                                  ##              2016-12-06 RSB  Comments proofed using octopus/ProoferComments,
044174,000015:                                                                                                  ##                              changes made.
044175,000016:                                                                                                  ##              2016-06-23 RSB  Fixed a bogus lower-case g in the comments.
044176,000017: 

Page 1049

044178,000019:    5505                                           BLOCK    02                                    
044179,000020: 
044180,000021:                                                                                                  #  TO ENTER A JOB REQUEST REQUIRING NO VAC AREA:
044181,000022: 
044182,000023:    5505           54063        NOVAC              TS       NEWPRIO                               #  SAVE PRIORITY OF NEW JOB.             
044183,000024:    5506           00006                           EXTEND                                         
044184,000025:    5507           50002                           INDEX    Q                                     #  Q WILL BE UNDISTURBED THROUGHOUT.
044185,000026:    5510           30001                           DCA      0                                     #  2CADR OF JOB ENTERED.
044186,000027:    5511           52066                           DXCH     NEWLOC                                
044187,000028:    5512           35575                           CAF      EXECBANK                              
044188,000029:    5513           56004                           XCH      FBANK                                 
044189,000030:    5514           54061                           TS       EXECTEM1                              
044190,000031:    5515           13105                           TCF      NOVAC2                                #  ENTER EXECUTIVE BANK.
044191,000032: 
044192,000033:                                                                                                  #  TO ENTER A JOB REQUEST REQUIRING A VAC AREA - E.G., ALL (PARTIALLY) INTERPRETIVE JOBS.
044193,000034: 
044194,000035:    5516           54063        FINDVAC            TS       NEWPRIO                               
044195,000036:    5517           00006                           EXTEND                                         
044196,000037:    5520           50002                           INDEX    Q                                     
044197,000038:    5521           30001                           DCA      0                                     
044198,000039:    5522           52066                           DXCH     NEWLOC                                
044199,000040:    5523           35575                           CAF      EXECBANK                              
044200,000041:    5524           56004                           XCH      FBANK                                 
044201,000042:    5525           13063                           TCF      FINDVAC2                              #  OFF TO EXECUTIVE SWITCHED-BANK.
044202,000043: 
044203,000044:                                                                                                  #  TO ENTER A FINDVAC WITH THE PRIORITY IN NEWPRIO TO THE 2CADR ARRIVING IN A AND L:
044204,000045: 
044205,000046:    5526           56002        SPVAC              XCH      Q                                     
044206,000047:    5527           65336                           AD       NEG2                                  
044207,000048:    5530           56002                           XCH      Q                                     
044208,000049:    5531           15522                           TCF      FINDVAC    +4                         
044209,000050: 
044210,000051:                                                                                                  #  TO SUSPEND A BASIC JOB SO A HIGHER PRIORITY JOB MAY BE SERVICED:
044211,000052: 
044212,000053:    5532           35575        CHANG1             CAF      EXECBANK                              
044213,000054:    5533           54001                           TS       L                                     
044214,000055:    5534           30002                           CA       Q                                     
044215,000056:    5535           22006                           LXCH     BBANK                                 
044216,000057:    5536           00004                 +4        INHINT                                         
044217,000058:    5537           13163                           TCF      CHANJOB                               
044218,000059: 
044219,000060:                                                                                                  #  TO SUSPEND AN INTERPRETIVE JOB:
044220,000061: 
044221,000062:    5540           35575        CHANG2             CAF      EXECBANK                              
044222,000063:                                                                                                  #  ITRACE (4) REFERS TO "CHANG2".               
044223,000064:    5541           54006                           TS       BBANK                                 
044224,000065:    5542           40154                           CS       LOC                                   #  NEGATIVE LOC SHOWS JOB = INTERPRETIVE.
044225,000066:    5543           22155                           LXCH     BANKSET                               #  BANKSET, NOT BBANK, HAS RIGHT CONTENTS.
044226,000067:    5544           15536                           TCF      CHANG1     +4                         
044227,000068: 

Page 1050

044229,000070: 
044230,000071:                                                                                                  #  TO VOLUNTARILY SUSPEND A JOB UNTIL THE COMPLETION OF SOME ANTICIPATED EVENT (I/O EVENT ETC.):
044231,000072: 
044232,000073:    5545           54154        JOBSLEEP           TS       LOC                                   
044233,000074:    5546           35575                           CAF      EXECBANK                              
044234,000075:    5547           54004                           TS       FBANK                                 
044235,000076:    5550           13244                           TCF      JOBSLP1                               
044236,000077: 
044237,000078:                                                                                                  #  TO AWAKEN A JOB PUT TO SLEEP IN THE ABOVE FASHION:
044238,000079: 
044239,000080:    5551           54065        JOBWAKE            TS       NEWLOC                                
044240,000081:    5552           47762                           CS       TWO                                   #  EXIT IS VIA FINDVAC/NOVAC PROCEDURES.
044241,000082:    5553           26002                           ADS      Q                                     
044242,000083:    5554           35575                           CAF      EXECBANK                              
044243,000084:    5555           56004                           XCH      FBANK                                 
044244,000085:    5556           13255                           TCF      JOBWAKE2                              
044245,000086: 
044246,000087:                                                                                                  #  TO CHANGE THE PRIORITY OF A JOB CURRENTLY UNDER EXECUTION:
044247,000088: 
044248,000089:    5557           00004        PRIOCHNG           INHINT                                         #  NEW PRIORITY ARRIVES IN A.  RETURNS TO
044249,000090:    5560           54063                           TS       NEWPRIO                               #  CALLER AS SOON AS NEW JOB PRIORITY IS
044250,000091:    5561           35575                           CAF      EXECBANK                              #  HIGHEST.  PREPARE FOR POSSIBLE BASIC-
044251,000092:    5562           56006                           XCH      BBANK                                 #  STYLE CHANGE-JOB.
044252,000093:    5563           54155                           TS       BANKSET                               
044253,000094:    5564           30002                           CA       Q                                     
044254,000095:    5565           13324                           TCF      PRIOCH2                               
044255,000096: 
044256,000097:                                                                                                  #  TO FREE THE DISPLAY BEFORE ENDOFJOB:
044257,000098: 
044258,000099:    5566           04724        EJFREE             TC       FREEDSP                               
044259,000100: 
044260,000101:                                                                                                  #  TO REMOVE A JOB FROM EXECUTIVE CONSIDERATIONS:
044261,000102: 
044262,000103:    5567           35575        ENDOFJOB           CAF      EXECBANK                              
044263,000104:    5570           54004                           TS       FBANK                                 
044264,000105:    5571           13335                           TCF      ENDJOB1                               
044265,000106: 
044266,000107:    5572           30061        ENDFIND            CA       EXECTEM1                              #  RETURN TO CALLER AFTER JOB ENTRY
044267,000108:    5573           54004                           TS       FBANK                                 #  COMPLETE.
044268,000109:    5574           17017                           TCF      Q+2                                   
044269,000110:    5575           03063        EXECBANK           CADR     FINDVAC2                              
044270,000111: 

Page 1051

044272,000113: 
044273,000114:                                                                                                  #  LOCATE AN AVAILABLE VAC AREA.
044274,000115: 
044275,000116: 01,3063                                           BANK     01                                    
044276,000117: 01,3063           54061        FINDVAC2           TS       EXECTEM1                              #  (SAVE CALLER'S BANK FIRST.)
044277,000118: 01,3064           10430                           CCS      VAC1USE                               
044278,000119: 01,3065           13100                           TCF      VACFOUND                              
044279,000120: 01,3066           10504                           CCS      VAC2USE                               
044280,000121: 01,3067           13100                           TCF      VACFOUND                              
044281,000122: 01,3070           10560                           CCS      VAC3USE                               
044282,000123: 01,3071           13100                           TCF      VACFOUND                              
044283,000124: 01,3072           10634                           CCS      VAC4USE                               
044284,000125: 01,3073           13100                           TCF      VACFOUND                              
044285,000126: 01,3074           10710                           CCS      VAC5USE                               
044286,000127: 01,3075           13100                           TCF      VACFOUND                              
044287,000128: 01,3076           06000                           TC       ABORT                                 
044288,000129: 01,3077           01201                           OCT      1201                                  #  NO VAC AREAS.
044289,000130: 
044290,000131: 01,3100           67762        VACFOUND           AD       TWO                                   #  RESERVE THIS VAC AREA BY STORING A ZERO
044291,000132: 01,3101           22007                           ZL                                             #  IN ITS VAC USE REGISTER AND STORE THE
044292,000133: 01,3102           50000                           INDEX    A                                     #  ADDRESS OF THE FIRST WORD OF IT IN THE
044293,000134: 01,3103           21777                           LXCH     0          -1                         #  LOW NINE BITS OF THE PRIORITY WORD.
044294,000135: 01,3104           26063                           ADS      NEWPRIO                               
044295,000136: 
044296,000137: 01,3105           37767        NOVAC2             CAF      ZERO                                  #  NOVAC ENTERS HERE.  FIND A CORE SET.
044297,000138: 01,3106           54064                           TS       LOCCTR                                
044298,000139: 01,3107           33114                           CAF      NO.CORES                              #  SEVEN SETS OF ELEVEN REGISTERS EACH.
044299,000140: 01,3110           54062        NOVAC3             TS       EXECTEM2                              
044300,000141: 01,3111           50064                           INDEX    LOCCTR                                
044301,000142: 01,3112           10157                           CCS      PRIORITY                              #  EACH PRIORITY REGISTER CONTAINS -0 IF
044302,000143: 01,3113           13154                           TCF      NEXTCORE                              #  THE CORrESPONDING CORE SET IS AVAILABLE.
044303,000144: 01,3114           00006        NO.CORES           DEC      6          B-14                       
044304,000145: 01,3115           13154                           TCF      NEXTCORE                              #  AN ACTIVE JOB HAS A POSITIVE PRIORITY
044305,000146:                                                                                                  #  BUT A DORMANT JOB'S PRIORITY IS NEGATIVE
044306,000147: 

Page 1052

044308,000149: 
044309,000150: 01,3116           30063        CORFOUND           CA       NEWPRIO                               #  SET THE PRIORITY OF THIS JOB IN THE CORE
044310,000151: 01,3117           50064                           INDEX    LOCCTR                                #  SET'S PRIORITY REGISTER AND SET THE
044311,000152: 01,3120           54157                           TS       PRIORITY                              #  JOB'S PUSH-DOWN POINTER AT THE BEGINNING
044312,000153: 01,3121           75341                           MASK     LOW9                                  #  OF THE WORK AREA AND OVERFLOW INDICATOR
044313,000154: 01,3122           50064                           INDEX    LOCCTR                                
044314,000155: 01,3123           54156                           TS       PUSHLOC                               #  OFF TO PREPARE FOR INTERPRETIVE PROGRAMS
044315,000156: 
044316,000157: 01,3124           10064                           CCS      LOCCTR                                #  IF CORE SET ZERO IS BEING LOADED, SET UP
044317,000158: 01,3125           13141                           TCF      SETLOC                                #  OVFIND AND FIXLOC IMMEDIATELY.
044318,000159: 01,3126           54111                           TS       OVFIND                                
044319,000160: 01,3127           30156                           CA       PUSHLOC                               
044320,000161: 01,3130           54110                           TS       FIXLOC                                
044321,000162: 
044322,000163: 01,3131           10067        SPECTEST           CCS      NEWJOB                                #  SEE IF ANY ACTIVE JOBS WAITING (RARE).
044323,000164: 01,3132           13141                           TCF      SETLOC                                #  MUST BE AWAKENED BUT UNCHANGED JOB.
044324,000165: 01,3133           04736                           TC       CCSHOLE                               
044325,000166: 01,3134           04736                           TC       CCSHOLE                               
044326,000167: 01,3135           54067                           TS       NEWJOB                                #  +0 SHOWS ACTIVE JOB ALREADY SET.
044327,000168: 01,3136           52066                           DXCH     NEWLOC                                
044328,000169: 01,3137           52155                           DXCH     LOC                                   
044329,000170: 01,3140           15572                           TCF      ENDFIND                               
044330,000171: 
044331,000172: 01,3141           52066        SETLOC             DXCH     NEWLOC                                #  SET UP THE LOCATION REGISTERS FOR THIS
044332,000173: 01,3142           50064                           INDEX    LOCCTR                                
044333,000174: 01,3143           52155                           DXCH     LOC                                   
044334,000175: 01,3144           50067                           INDEX    NEWJOB                                #  THIS INDEX INSTRUCTION INSURES THAT THE
044335,000176: 01,3145           40157                           CS       PRIORITY                              #  HIGHEST ACTIVE PRIORITY WILL BE COMPARED
044336,000177: 01,3146           60063                           AD       NEWPRIO                               #  WITH THE NEW PRIORITY TO SEE IF NEWJOB
044337,000178: 01,3147           00006                           EXTEND                                         #  SHOULD BE SET TO SIGNAL A SWITCH.
044338,000179: 01,3150           65572                           BZMF     ENDFIND                               
044339,000180: 01,3151           30064                           CA       LOCCTR                                #  LOCCTR IS LEFT SET AT THIS CORE SET IF
044340,000181: 01,3152           54067                           TS       NEWJOB                                #  THE CALLER WANTS TO LOAD ANY MPAC
044341,000182: 01,3153           15572                           TCF      ENDFIND                               #  REGISTERS, ETC.
044342,000183: 
044343,000184: 01,3154           33265        NEXTCORE           CAF      COREINC                               
044344,000185: 01,3155           26064                           ADS      LOCCTR                                
044345,000186: 01,3156           10062                           CCS      EXECTEM2                              
044346,000187: 01,3157           13110                           TCF      NOVAC3                                
044347,000188: 01,3160           06000                           TC       ABORT                                 #  NO CORE SETS.
044348,000189: 01,3161           01202                           OCT      1202                                  
044349,000190: 

Page 1053

044351,000192: 
044352,000193:                                                                                                  #  THE FOLLOWING ROUTINE SWAPS CORE SET 0 WITH THAT WHOSE RELATIVE ADDRESS IS IN NEWJOB.
044353,000194: 
044354,000195: 01,3162           52155                 -1        DXCH     LOC                                   
044355,000196: 01,3163           50067        CHANJOB            INDEX    NEWJOB                                #  LOC ARRIVES IN A AND BBANK IN L.                                          
044356,000197: 01,3164           52155                           DXCH     LOC                                   
044357,000198: 01,3165           52155                           DXCH     LOC                                   
044358,000199: 
044359,000200: 01,3166           52145                           DXCH     MPAC                                  #  SWAP MULTI-PURPOSE ACCUMULATOR AREAS. 
044360,000201: 01,3167           50067                           INDEX    NEWJOB                                
044361,000202: 01,3170           52145                           DXCH     MPAC                                  
044362,000203: 01,3171           52145                           DXCH     MPAC                                  
044363,000204: 01,3172           52147                           DXCH     MPAC       +2                         
044364,000205: 01,3173           50067                           INDEX    NEWJOB                                
044365,000206: 01,3174           52147                           DXCH     MPAC       +2                         
044366,000207: 01,3175           52147                           DXCH     MPAC       +2                         
044367,000208: 01,3176           52151                           DXCH     MPAC       +4                         
044368,000209: 01,3177           50067                           INDEX    NEWJOB                                
044369,000210: 01,3200           52151                           DXCH     MPAC       +4                         
044370,000211: 01,3201           52151                           DXCH     MPAC       +4                         
044371,000212: 01,3202           52153                           DXCH     MPAC       +6                         
044372,000213: 01,3203           50067                           INDEX    NEWJOB                                
044373,000214: 01,3204           52153                           DXCH     MPAC       +6                         
044374,000215: 01,3205           52153                           DXCH     MPAC       +6                         
044375,000216: 
044376,000217: 01,3206           37767                           CAF      ZERO                                  
044377,000218: 01,3207           56111                           XCH      OVFIND                                #  MAKE PUSHLOC NEGATIVE IF OVFIND NZ.                        
044378,000219: 01,3210           00006                           EXTEND                                         
044379,000220: 01,3211           13214                           BZF      +3                                    
044380,000221: 01,3212           40156                           CS       PUSHLOC                               
044381,000222: 01,3213           54156                           TS       PUSHLOC                               
044382,000223: 
044383,000224: 01,3214           52157                           DXCH     PUSHLOC                               
044384,000225: 01,3215           50067                           INDEX    NEWJOB                                
044385,000226: 01,3216           52157                           DXCH     PUSHLOC                               
044386,000227: 01,3217           52157                           DXCH     PUSHLOC                               #  SWAPS PUSHLOC AND PRIORITY.
044387,000228: 01,3220           35341                           CAF      LOW9                                  #  SET FIXLOC TO BASE OF VAC AREA.
044388,000229: 01,3221           70157                           MASK     PRIORITY                              
044389,000230: 01,3222           54110                           TS       FIXLOC                                
044390,000231: 
044391,000232: 01,3223           10156                           CCS      PUSHLOC                               #  SET OVERFLOW INDICATOR ACCORDING TO
044392,000233: 01,3224           37767                           CAF      ZERO                                  
044393,000234: 01,3225           13232                           TCF      ENDPRCHG   -1                         
044394,000235: 01,3226           40156                           CS       PUSHLOC                               
044395,000236: 01,3227           54156                           TS       PUSHLOC                               
044396,000237: 01,3230           37763                           CAF      ONE                                   
044397,000238: 01,3231           56111                           XCH      OVFIND                                
044398,000239: 01,3232           54067                           TS       NEWJOB                                
044399,000240: 
044400,000241: 01,3233           00003        ENDPRCHG           RELINT                                         
044401,000242: 01,3234           52155                           DXCH     LOC                                   #  BASIC JOBS HAVE POSITIVE ADDRESSES, SO              
044402,000243: 

Page 1054

044404,000245: 
044405,000246: 01,3235           00006                           EXTEND                                         #  DISPATCH WITH A DTCB.
044406,000247: 01,3236           63240                           BZMF     +2                                    #  IF INTERPRETIVE, SET UP EBANK, ETC.
044407,000248: 01,3237           52006                           DTCB                                           
044408,000249: 

Page 1055

044410,000251: 01,3240           40000                           COM                                            #  EPILOGUE TO JOB CHANGE FOR INTERPRETIVE
044411,000252: 01,3241           67763                           AD       ONE                                   
044412,000253: 01,3242           54154                           TS       LOC                                   #  RESUME.
044413,000254: 01,3243           16122                           TCF      INTRSM                                
044414,000255: 
044415,000256:                                                                                                  #  COMPLETE JOBSLEEP PREPARATIONS.
044416,000257: 
044417,000258: 01,3244           00004        JOBSLP1            INHINT                                         
044418,000259: 01,3245           40157                           CS       PRIORITY                              #  NNZ PRIORITY SHOWS JOB ASLEEP.
044419,000260: 01,3246           54157                           TS       PRIORITY                              
044420,000261: 01,3247           35342                           CAF      LOW7                                  
044421,000262: 01,3250           70006                           MASK     BBANK                                 
044422,000263: 01,3251           54155                           TS       BANKSET                               
044423,000264: 01,3252           47767                           CS       ZERO                                  
044424,000265: 01,3253           54121        JOBSLP2            TS       BUF        +1                         #  HOLDS - HIGHEST PRIORITY.
044425,000266: 01,3254           13345                           TCF      EJSCAN                                #  SCAN FOR HIGHEST PRIORITY ALA ENDOFJOB.
044426,000267: 

Page 1056

044428,000269: 
044429,000270:                                                                                                  #  TO WAKE UP A JOB, EACH CORE SET IS FOUND TO LOCATE ALL JOBS WHICH ARE ASLEEP.  IF THE FCADR IN THE
044430,000271:                                                                                                  #  LOC REGISTER OF ANY SUCH JOB MATCHES THAT SUPPLIED BY THE CALLER, THAT JOB IS AWAKENED.  IF NO JOB IS FOUND,
044431,000272:                                                                                                  #  LOCCTR IS SET TO -1 AND NO FURTHER ACTION TAKES PLACE.
044432,000273: 
044433,000274: 01,3255           54061        JOBWAKE2           TS       EXECTEM1                              
044434,000275: 01,3256           37767                           CAF      ZERO                                  #  BEGIN CORE SET SCAN.
044435,000276: 01,3257           54064                           TS       LOCCTR                                
044436,000277: 01,3260           33114                           CAF      NO.CORES                              
044437,000278: 01,3261           54062        JOBWAKE4           TS       EXECTEM2                              
044438,000279: 01,3262           50064                           INDEX    LOCCTR                                
044439,000280: 01,3263           10157                           CCS      PRIORITY                              
044440,000281: 01,3264           13267                           TCF      JOBWAKE3                              #  ACTIVE JOB - CHECK NEXT CORE SET.
044441,000282: 01,3265           00014        COREINC            DEC      12         B-14                       #  12 REGISTERS PER CORE SET.
044442,000283: 01,3266           13276                           TCF      WAKETEST                              #  SLEEPING JOB - SEE IF CADR MATCHES.
044443,000284: 
044444,000285: 01,3267           33265        JOBWAKE3           CAF      COREINC                               
044445,000286: 01,3270           26064                           ADS      LOCCTR                                
044446,000287: 01,3271           10062                           CCS      EXECTEM2                              
044447,000288: 01,3272           13261                           TCF      JOBWAKE4                              
044448,000289: 01,3273           47763                           CS       ONE                                   #  EXIT IF SLEEPING JOB NOT FOUND.
044449,000290: 01,3274           54064                           TS       LOCCTR                                
044450,000291: 01,3275           15572                           TCF      ENDFIND                               
044451,000292: 
044452,000293: 01,3276           40065        WAKETEST           CS       NEWLOC                                
044453,000294: 01,3277           50064                           INDEX    LOCCTR                                
044454,000295: 01,3300           60154                           AD       LOC                                   
044455,000296: 01,3301           00006                           EXTEND                                         
044456,000297: 01,3302           13304                           BZF      +2                                    #  IF MATCH.
044457,000298: 01,3303           13267                           TCF      JOBWAKE3                              #  EXAMINE NEXT CORE SET IF NO MATCH.
044458,000299: 
044459,000300: 01,3304           50064                           INDEX    LOCCTR                                #  RE-COMPLEMENT PRIORITY TO SHOW JOB AWAKE
044460,000301: 01,3305           40157                           CS       PRIORITY                              
044461,000302: 01,3306           54063                           TS       NEWPRIO                               
044462,000303: 01,3307           50064                           INDEX    LOCCTR                                
044463,000304: 01,3310           54157                           TS       PRIORITY                              
044464,000305: 
044465,000306: 01,3311           46341                           CS       FBANKMSK                              #  MAKE UP THE 2CADR OF THE WAKE ADDRESS
044466,000307: 01,3312           70065                           MASK     NEWLOC                                #  USING THE CADR IN NEWLOC AND THE EBANK
044467,000308: 01,3313           67751                           AD       2K                                    #  HALF OF BBANK SAVED IN BANKSET.
044468,000309: 01,3314           56065                           XCH      NEWLOC                                
044469,000310: 01,3315           76341                           MASK     FBANKMSK                              
044470,000311: 01,3316           50064                           INDEX    LOCCTR                                
044471,000312: 01,3317           60155                           AD       BANKSET                               
044472,000313: 01,3320           54066                           TS       NEWLOC     +1                         
044473,000314: 
044474,000315: 01,3321           10064                           CCS      LOCCTR                                #  SPECIAL TREATMENT IF THIS JOB WAS
044475,000316: 01,3322           13141                           TCF      SETLOC                                #  ALREADY IN THE RUN (0) POSITION.
044476,000317: 01,3323           13131                           TCF      SPECTEST                              
044477,000318: 

Page 1057

044479,000320: 
044480,000321:                                                                                                  #  PRIORITY CHANGE.  CHANGE THE CONTENTS OF PRIORITY AND SCAN FOR THE JOB OF HIGHEST PRIORITY.
044481,000322: 
044482,000323: 01,3324           54154        PRIOCH2            TS       LOC                                   
044483,000324: 01,3325           37767                           CAF      ZERO                                  #  SET FLAG TO TELL ENDJOB SCANNER IF THIS
044484,000325: 01,3326           54120                           TS       BUF                                   #  JOB IS STILL HIGHEST PRIORITY.
044485,000326: 01,3327           35341                           CAF      LOW9                                  
044486,000327: 01,3330           70157                           MASK     PRIORITY                              
044487,000328: 01,3331           60063                           AD       NEWPRIO                               
044488,000329: 01,3332           54157                           TS       PRIORITY                              
044489,000330: 01,3333           40000                           COM                                            
044490,000331: 01,3334           13253                           TCF      JOBSLP2                               #  AND TO EJSCAN.
044491,000332: 

Page 1058

044493,000334: 
044494,000335:                                                                                                  #  RELEASE THIS CORE SET AND VAC AREA AND SCAN FOR THE JOB OF HIGHEST ACTIVE PRIORITY.
044495,000336: 
044496,000337: 01,3335           00004        ENDJOB1            INHINT                                         
044497,000338: 01,3336           47767                           CS       ZERO                                  
044498,000339: 01,3337           54121                           TS       BUF        +1                         
044499,000340: 01,3340           56157                           XCH      PRIORITY                              
044500,000341: 01,3341           75341                           MASK     LOW9                                  
044501,000342: 01,3342           10000                           CCS      A                                     
044502,000343: 01,3343           50000                           INDEX    A                                     
044503,000344: 01,3344           54000                           TS       0                                     
044504,000345: 
044505,000346: 01,3345           10173        EJSCAN             CCS      PRIORITY   +12D                       
044506,000347: 01,3346           03412                           TC       EJ1                                   
044507,000348: 01,3347           04736                           TC       CCSHOLE                               
044508,000349: 01,3350           13351                           TCF      +1                                    
044509,000350: 
044510,000351: 01,3351           10207                           CCS      PRIORITY   +24D                       #  EXAMINE EACH PRIORITY REGISTER TO FIND
044511,000352: 01,3352           03412                           TC       EJ1                                   #  THE JOB OF HIGHEST ACTIVE PRIORITY.
044512,000353: 01,3353           04736                           TC       CCSHOLE                               
044513,000354: 01,3354           13355                           TCF      +1                                    
044514,000355: 
044515,000356: 01,3355           10223                           CCS      PRIORITY   +36D                       
044516,000357: 01,3356           03412                           TC       EJ1                                   
044517,000358: 01,3357           67620        -CCSPR             -CCS     PRIORITY                              
044518,000359: 01,3360           13361                           TCF      +1                                    
044519,000360: 
044520,000361: 01,3361           10237                           CCS      PRIORITY   +48D                       
044521,000362: 01,3362           03412                           TC       EJ1                                   
044522,000363: 01,3363           04736                           TC       CCSHOLE                               
044523,000364: 01,3364           13365                           TCF      +1                                    
044524,000365: 
044525,000366: 01,3365           10253                           CCS      PRIORITY   +60D                       
044526,000367: 01,3366           03412                           TC       EJ1                                   
044527,000368: 01,3367           04736                           TC       CCSHOLE                               
044528,000369: 01,3370           13371                           TCF      +1                                    
044529,000370: 
044530,000371: 01,3371           10267                           CCS      PRIORITY   +72D                       
044531,000372: 01,3372           03412                           TC       EJ1                                   
044532,000373: 01,3373           04736                           TC       CCSHOLE                               
044533,000374: 01,3374           13375                           TCF      +1                                    
044534,000375: 

Page 1059

044536,000377: 
044537,000378:                                                                                                  #  EVALUATE THE RESULTS OF THE SCAN.
044538,000379: 
044539,000380: 01,3375           10121                           CCS      BUF        +1                         #  SEE IF THERE ARE ANY ACTIVE JOBS WAITING
044540,000381: 01,3376           04736                           TC       CCSHOLE                               
044541,000382: 01,3377           04736                           TC       CCSHOLE                               
044542,000383: 
044543,000384: 01,3400           13402                           TCF      +2                                    
044544,000385: 01,3401           15576                           TCF      DUMMYJOB                              
044545,000386: 01,3402           10120                           CCS      BUF                                   #  BUF IS ZERO IF THIS IS A PRIOCHNG AND
044546,000387: 01,3403           13405                           TCF      +2                                    #  CHANGED PRIORITY IS STILL HIGHEST.
044547,000388: 01,3404           13233                           TCF      ENDPRCHG                              
044548,000389: 
044549,000390: 01,3405           50000                           INDEX    A                                     #  OTHERWISE, SET NEWJOB TO THE RELATIVE
044550,000391: 01,3406           27777                           CAF      0          -1                         #  ADDRESS OF THE NEW JOB'S CORE SET.
044551,000392: 01,3407           63357                           AD       -CCSPR                                
044552,000393: 01,3410           54067                           TS       NEWJOB                                
044553,000394: 01,3411           13162                           TCF      CHANJOB    -1                         
044554,000395: 
044555,000396: 01,3412           54122        EJ1                TS       BUF        +2                         
044556,000397: 01,3413           60121                           AD       BUF        +1                         #  - OLD HIGH PRIORITY.
044557,000398: 01,3414           10000                           CCS      A                                     
044558,000399: 01,3415           40122                           CS       BUF        +2                         
044559,000400: 01,3416           13422                           TCF      EJ2                                   #  NEW HIGH PRIORITY.
044560,000401: 01,3417           13420                           NOOP                                           
044561,000402: 01,3420           50002                           INDEX    Q                                     
044562,000403: 01,3421           00002                           TC       2                                     #  PROCEED WITH SEARCH.
044563,000404: 
044564,000405: 01,3422           54121        EJ2                TS       BUF        +1                         
044565,000406: 01,3423           00006                           EXTEND                                         
044566,000407: 01,3424           22120                           QXCH     BUF                                   #  FOR LOCATING CCS PRIORITY + X INSTR.
044567,000408: 01,3425           50120                           INDEX    BUF                                   
044568,000409: 01,3426           00002                           TC       2                                     
044569,000410: 

Page 1060

044571,000412: 
044572,000413:                                                                                                  #  IDLING AND COMPUTER ACTIVITY (GREEN) LIGHT MAINTENANCE. THE IDLING ROUTINE IS NOT A JOB IN ITSELF,
044573,000414:                                                                                                  #  BUT RATHER A SUBROUTINE OF THE EXECUTIVE.
044574,000415: 
044575,000416:    5576                                           BLOCK    02                                    
044576,000417:    5576     1354                                  EBANK=   SELFRET                               #  SELF-CHECK STORAGE IN EBANK.
044577,000418: 
044578,000419:    5576           47767        DUMMYJOB           CS       ZERO                                  #  SET NEWJOB TO -0 FOR IDLING.
044579,000420:    5577           54067                           TS       NEWJOB                                
044580,000421:    5600           00003                           RELINT                                         
044581,000422:    5601           47762                           CS       TWO                                   #  TURN OFF THE ACTIVITY LIGHT.
044582,000423:    5602           00006                           EXTEND                                         
044583,000424:    5603           03011                           WAND     DSALMOUT                              
044584,000425:    5604           15607                           TCF      CHECKNJ    +2                         
044585,000426: 
044586,000427:    5605           00006        CHECKNJ            EXTEND                                         #  SPECIAL NEWJOB TEST FOR SELF-CHECK,
044587,000428:    5606           23354                           QXCH     SELFRET                               #  WHICH RUNS UNDER EXECUTIVE CONTROL,
044588,000429:    5607           10067                 +2        CCS      NEWJOB                                #  BUT DOES NOT HAVE A JOBS CORE REGISTERS.
044589,000430:    5610           15622                           TCF      NUCHANGE                              #  NEW JOB REQUIRING A CHANGE JOB.
044590,000431:    5611           37762                           CAF      TWO                                   #  NEW JOB ALREADY IN POSITION FOR
044591,000432:    5612           15616                           TCF      NUDIRECT                              #  EXECUTION.                
044592,000433: 
044593,000434:    5613           35631        ADVAN              CAF      SELFBANK                              #  (SIMULATOR ADVAN IF NEWJOB = 77777).
044594,000435:    5614           54006                           TS       BBANK                                 
044595,000436:    5615           01354                           TC       SELFRET                               
044596,000437: 
044597,000438:    5616           00006        NUDIRECT           EXTEND                                         #  TURN THE GREEN LIGHT BACK ON.
044598,000439:    5617           05011                           WOR      DSALMOUT                              
044599,000440:    5620           52155                           DXCH     LOC                                   #  JOBS STARTED IN THIS FASHION MUST BE
044600,000441:    5621           52006                           DTCB                                           #  BASIC.
044601,000442: 
044602,000443:    5622           37762        NUCHANGE           CAF      TWO                                   
044603,000444:    5623           00006                           EXTEND                                         
044604,000445:    5624           05011                           WOR      DSALMOUT                              
044605,000446:    5625           35575                           CAF      EXECBANK                              #  SWAP CORE SETS.
044606,000447:    5626           54004                           TS       FBANK                                 
044607,000448:    5627           00004                           INHINT                                         #  CHANGE JOBS
044608,000449:    5630           13162                           TCF      CHANJOB    -1                         
044609,000450: 
044610,000451:    5631     1354                                  EBANK=   SELFRET                               
044611,000452:    5631           76062        SELFBANK           BBCON    SELFCHK                               
044612,000453: 

Page 1061

044614,000455: 
044615,000456:                                                                                                  #  PRIORITY CONSTANTS (NOTE IN FIXED-FIXED).
044616,000457: 
044617,000458:    5632     7752               PRIO1              EQUALS   BIT10                                 
044618,000459:    5632     7751               PRIO2              EQUALS   BIT11                                 
044619,000460:    5632           03000        PRIO3              OCT      03000                                 
044620,000461:    5633     7750               PRIO4              EQUALS   BIT12                                 
044621,000462:    5633           05000        PRIO5              OCT      05000                                 
044622,000463:    5634           06000        PRIO6              OCT      06000                                 
044623,000464:    5635           07000        PRIO7              OCT      07000                                 
044624,000465:    5636     7747               PRIO10             EQUALS   BIT13                                 
044625,000466:    5636           11000        PRIO11             OCT      11000                                 
044626,000467:    5637     5234               PRIO12             =        BNKJUP+4                              
044627,000468:    5637           13000        PRIO13             OCT      13000                                 
044628,000469:    5640           14000        PRIO14             OCT      14000                                 
044629,000470:    5641           15000        PRIO15             OCT      15000                                 
044630,000471:    5642           16000        PRIO16             OCT      16000                                 
044631,000472:    5643           17000        PRIO17             OCT      17000                                 
044632,000473:    5644     7746               PRIO20             EQUALS   BIT14                                 
044633,000474:    5644           21000        PRIO21             OCT      21000                                 
044634,000475:    5645           22000        PRIO22             OCT      22000                                 
044635,000476:    5646           23000        PRIO23             OCT      23000                                 
044636,000477:    5647     4260               PRIO24             =        NUFAZ+10                              
044637,000478:    5647           25000        PRIO25             OCT      25000                                 
044638,000479:    5650           26000        PRIO26             OCT      26000                                 
044639,000480:    5651           27000        PRIO27             OCT      27000                                 
044640,000481:    5652     5210               PRIO30             =        BNKCAL+2                              
044641,000482:    5652           31000        PRIO31             OCT      31000                                 
044642,000483:    5653           32000        PRIO32             OCT      32000                                 
044643,000484:    5654           33000        PRIO33             OCT      33000                                 
044644,000485:    5655           34000        PRIO34             OCT      34000                                 
044645,000486:    5656           35000        PRIO35             OCT      35000                                 
044646,000487:    5657           36000        PRIO36             OCT      36000                                 
044647,000488:    5660           37000        PRIO37             OCT      37000                                 
044648,000489: 
044649,000490:                                                                                                  #  EBANK CONSTANTS IN FIXED-FIXED
044650,000491: 
044651,000492:    5661     5352               EBANK3             EQUALS   OCT1400                               
044652,000493:    5661     7751               EBANK4             EQUALS   BIT11                                 
044653,000494:    5661           02400        EBANK5             OCTAL    02400                                 
044654,000495:    5662     5632               EBANK6             EQUALS   PRIO3                                 
044655,000496:    5662           03400        EBANK7             OCTAL    03400                                 

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