Source Code
These source-code files were reconstructed by Mike Stewart from dumps of the RETREAD 50 program stored in physical AGC core-rope modules (B1 and B2) belonging to the Computer History Museum, Mountain View, California. The reconstruction was aided by pre-existing source code for the AGC programs RETREAD 44 and AURORA 12. Read about the process here. Assembling this source code with yaYUL produces core ropes identical to those of the physical modules. Page-number references refer to corresponding sections of RETREAD 44 source code. No printouts of RETREAD 50 program listings are available. New sections of the software (appearing in EXTENDED_VERBS_FOR_MODING.agc) have been disassembled; labels and comments have been either taken from similar code in later programs or, in cases where this was not possible, added by VirtualAGC for clarity. |
003744,000002: ## Copyright: Public domain.
003745,000003: ## Filename: EXECUTIVE.agc
003746,000004: ## Purpose: Part of the source code for AGC program Retread 50.
003747,000005: ## Assembler: yaYUL
003748,000006: ## Contact: Ron Burkey <info@sandroid.org>.
003749,000007: ## Website: www.ibiblio.org/apollo/Restoration.html
003750,000008: ## Mod history: 2019-06-12 MAS Recreated from Computer History Museum's
003751,000009: ## physical core-rope modules.
003752,000010:
Page 107 |
003754,000012:
003755,000013: 4131 SETLOC ENDIBNKF
003756,000014:
003757,000015: # TO ENTER A JOB REQUEST REQUIRING NO VAC AREA:
003758,000016:
003759,000017: 4131 54632 NOVAC TS NEWPRIO # SAVE PRIORITY OF NEW JOB.
003760,000018: 4132 00006 EXTEND
003761,000019: 4133 50002 INDEX Q # Q WILL BE UNDISTURBED THROUGHOUT.
003762,000020: 4134 30001 DCA 0 # 2CADR OF JOB ENTERED.
003763,000021: 4135 52634 DXCH NEWLOC
003764,000022: 4136 34214 CAF EXECBANK
003765,000023: 4137 56004 XCH FBANK
003766,000024: 4140 54626 TS EXECTEM1
003767,000025: 4141 12241 TCF NOVAC2 # ENTER EXECUTIVE BANK.
003768,000026:
003769,000027: # TO ENTER A JOB REQUEST REQUIRING A VAC AREA - E.G., ALL (PARTIALLY) INTERPRETIVE JOBS.
003770,000028:
003771,000029: 4142 54632 FINDVAC TS NEWPRIO
003772,000030: 4143 00006 EXTEND
003773,000031: 4144 50002 INDEX Q
003774,000032: 4145 30001 DCA 0
003775,000033: 4146 52634 DXCH NEWLOC
003776,000034: 4147 34214 CAF EXECBANK
003777,000035: 4150 56004 XCH FBANK
003778,000036: 4151 12220 TCF FINDVAC2 # OFF TO EXECUTIVE SWITCHED-BANK.
003779,000037:
003780,000038: # TO SUSPEND A BASIC JOB SO A HIGHER PRIORITY JOB MAY BE SERVICED:
003781,000039:
003782,000040: 4152 34214 CHANG1 CAF EXECBANK
003783,000041: 4153 54001 TS L
003784,000042: 4154 30002 CA Q
003785,000043: 4155 22006 +3 LXCH BBANK
003786,000044: 4156 00004 INHINT
003787,000045: 4157 12316 TCF CHANJOB
003788,000046:
003789,000047: # TO SUSPEND AN INTERPRETIVE JOB:
003790,000048:
003791,000049: 4160 34214 CHANG2 CAF EXECBANK
003792,000050: 4161 54001 TS L
003793,000051: 4162 40150 CS LOC # NEGATIVE LOC SHOWS JOB INTERPRETIVE.
003794,000052: 4163 14155 TCF CHANG1 +3
003795,000053:
Page 108 |
003797,000055: # TO VOLUNTARILY SUSPEND A JOB UNTIL THE COMPLETION OF SOME ANTICIPATED EVENT (I/O EVENT ETC.):
003798,000056:
003799,000057: 4164 54150 JOBSLEEP TS LOC
003800,000058: 4165 34214 CAF EXECBANK
003801,000059: 4166 54004 TS FBANK
003802,000060: 4167 12375 TCF JOBSLP1
003803,000061:
003804,000062: # TO AWAKEN A JOB PUT TO SLEEP IN THE ABOVE FASHION:
003805,000063:
003806,000064: 4170 54633 JOBWAKE TS NEWLOC
003807,000065: 4171 47645 CS TWO # EXIT IS VIA FINDVAC/NOVAC PROCEDURES.
003808,000066: 4172 26002 ADS Q
003809,000067: 4173 34214 CAF EXECBANK
003810,000068: 4174 56004 XCH FBANK
003811,000069: 4175 12406 TCF JOBWAKE2
003812,000070:
003813,000071: # TO CHANGE THE PRIORITY OF A JOB CURRENTLY UNDER EXECUTION:
003814,000072:
003815,000073: 4176 00004 PRIOCHNG INHINT # NEW PRIORITY ARRIVES IN A. RETURNS TO
003816,000074: 4177 54632 TS NEWPRIO # CALLER AS SOON AS NEW JOB PRIORITY IS
003817,000075: 4200 34214 CAF EXECBANK # HIGHEST. PREPARE FOR POSSIBLE BASIC-
003818,000076: 4201 56006 XCH BBANK # STYLE CHANGE-JOB.
003819,000077: 4202 54151 TS BANKSET
003820,000078: 4203 30002 CA Q
003821,000079: 4204 12454 TCF PRIOCH2
003822,000080:
003823,000081: # TO REMOVE A JOB FROM EXECUTIVE CONSIDERATIONS:
003824,000082:
003825,000083: 4205 34214 ENDOFJOB CAF EXECBANK
003826,000084: 4206 54004 TS FBANK
003827,000085: 4207 12465 TCF ENDJOB1
003828,000086:
003829,000087: 4210 30626 ENDFIND CA EXECTEM1 # RETURN TO CALLER AFTER JOB ENTRY
003830,000088: 4211 54004 TS FBANK # COMPLETE.
003831,000089: 4212 50002 INDEX Q
003832,000090: 4213 00002 TC 2
003833,000091:
003834,000092: 4214 02220 EXECBANK CADR FINDVAC2
003835,000093:
Page 109 |
003837,000095: # LOCATE AN AVAILABLE VAC AREA.
003838,000096:
003839,000097: 01,2220 SETLOC ENDINTS1
003840,000098:
003841,000099: 01,2220 54626 FINDVAC2 TS EXECTEM1 # (SAVE CALLER'S BANK FIRST.)
003842,000100: 01,2221 10264 CCS VAC1USE
003843,000101: 01,2222 12234 TCF VACFOUND
003844,000102: 01,2223 10340 CCS VAC2USE
003845,000103: 01,2224 12234 TCF VACFOUND
003846,000104: 01,2225 10414 CCS VAC3USE
003847,000105: 01,2226 12234 TCF VACFOUND
003848,000106: 01,2227 10470 CCS VAC4USE
003849,000107: 01,2230 12234 TCF VACFOUND
003850,000108: 01,2231 10544 CCS VAC5USE
003851,000109: 01,2232 12234 TCF VACFOUND
003852,000110: 01,2233 02233 TC -0 # ABORT IF NO VAC AREAS AVAILABLE.
003853,000111:
003854,000112: 01,2234 67645 VACFOUND AD TWO # RESERVE THIS VAC AREA BY STORING A ZERO
003855,000113: 01,2235 22007 ZL # IN ITS VAC USE REGISTER AND STORE THE
003856,000114: 01,2236 50000 INDEX A # ADDRESS OF THE FIRST WORD OF IT IN THE
003857,000115: 01,2237 21777 LXCH 0 -1 # LOW NINE BITS OF THE PRIORITY WORD.
003858,000116: 01,2240 26632 ADS NEWPRIO
003859,000117:
003860,000118: 01,2241 37653 NOVAC2 CAF ZERO # NOVAC ENTERS HERE. FIND A CORE SET.
003861,000119: 01,2242 54635 TS LOCCTR
003862,000120: 01,2243 32250 CAF NO.CORES # SEVEN SETS OF ELEVEN REGISTERS EACH.
003863,000121: 01,2244 54627 NOVAC3 TS EXECTEM2
003864,000122: 01,2245 50635 INDEX LOCCTR
003865,000123: 01,2246 10153 CCS PRIORITY # EACH PRIORITY REGISTER CONTAINS -0 IF
003866,000124: 01,2247 12310 TCF NEXTCORE # THE CORRESPONDING CORE SET IS AVAILABLE.
003867,000125: 01,2250 00006 NO.CORES DEC 6 B-14
003868,000126: 01,2251 12310 TCF NEXTCORE # AN ACTIVE JOB HAS A POSITIVE PRIORITY
003869,000127: # BUT A DORMANT JOB'S PRIORITY IS NEGATIVE
003870,000128:
Page 110 |
003872,000130: 01,2252 30632 CORFOUND CA NEWPRIO # SET THE PRIORITY OF THIS JOB IN THE CORE
003873,000131: 01,2253 50635 INDEX LOCCTR # SET'S PRIORITY REGISTER AND SET THE
003874,000132: 01,2254 54153 TS PRIORITY # JOB'S PUSH-DOWN POINTER AT THE BEGINNING
003875,000133: 01,2255 72503 MASK LOW9 # OF THE WORK AREA AND OVERFLOW INDICATOR
003876,000134: 01,2256 50635 INDEX LOCCTR
003877,000135: 01,2257 54152 TS PUSHLOC # OFF TO PREPARE FOR INTERPRETIVE PROGRAMS
003878,000136:
003879,000137: 01,2260 10635 CCS LOCCTR # IF CORE SET ZERO IS BEING LOADED, SET UP
003880,000138: 01,2261 12275 TCF SETLOC # OVFIND AND FIXLOC IMMEDIATELY .
003881,000139: 01,2262 54105 TS OVFIND
003882,000140: 01,2263 30152 CA PUSHLOC
003883,000141: 01,2264 54104 TS FIXLOC
003884,000142:
003885,000143: 01,2265 10067 SPECTEST CCS NEWJOB # SEE IF ANY ACTIVE JOBS WAITING (RARE).
003886,000144: 01,2266 12275 TCF SETLOC # MUST BE AWAKENED BUT UNCHANGED JOB.
003887,000145: 01,2271 SETLOC +2
003888,000146: 01,2271 54067 TS NEWJOB # +0 SHOWS ACTIVE JOB ALREADY SET.
003889,000147: 01,2272 52634 DXCH NEWLOC
003890,000148: 01,2273 52151 DXCH LOC
003891,000149: 01,2274 14210 TCF ENDFIND
003892,000150:
003893,000151: 01,2275 52634 SETLOC DXCH NEWLOC # SET UP THE LOCATION REGISTERS FOR THIS
003894,000152: 01,2276 50635 INDEX LOCCTR
003895,000153: 01,2277 52151 DXCH LOC
003896,000154: 01,2300 50067 INDEX NEWJOB # THIS INDEX INSTRUCTION INSURES THAT THE
003897,000155: 01,2301 40153 CS PRIORITY # HIGHEST ACTIVE PRIORITY WILL BE COMPARED
003898,000156: 01,2302 60632 AD NEWPRIO # WITH THE NEW PRIORITY TO SEE IF NEWJOB
003899,000157: 01,2303 00006 EXTEND # SHOULD BE SET TO SIGNAL A SWITCH.
003900,000158: 01,2304 64210 BZMF ENDFIND
003901,000159: 01,2305 30635 CA LOCCTR # LOCCTR IS LEFT SET AT THIS CORE SET IF
003902,000160: 01,2306 54067 TS NEWJOB # THE CALLER WANTS TO LOAD ANY MPAC
003903,000161: 01,2307 14210 TCF ENDFIND # REGISTERS, ETC.
003904,000162:
003905,000163: 01,2310 32416 NEXTCORE CAF COREINC
003906,000164: 01,2311 26635 ADS LOCCTR
003907,000165: 01,2312 10627 CCS EXECTEM2
003908,000166: 01,2313 12244 TCF NOVAC3
003909,000167: 01,2314 02314 TC -0 # ABORT IF NO MORE CORE SETS.
003910,000168:
Page 111 |
003912,000170: # THE FOLLOWING ROUTINE SWAPS CORE SET 0 WITH THAT WHOSE RELATIVE ADDRESS IS IN NEWJOB.
003913,000171:
003914,000172: 01,2315 52151 -1 DXCH LOC
003915,000173: 01,2316 50067 CHANJOB INDEX NEWJOB # LOC ARRIVES IN A AND BBANK IN L.
003916,000174: 01,2317 52151 DXCH LOC
003917,000175: 01,2320 52151 DXCH LOC
003918,000176:
003919,000177: 01,2321 52141 DXCH MPAC # SWAP MULTI-PURPOSE ACCUMULATOR AREAS.
003920,000178: 01,2322 50067 INDEX NEWJOB
003921,000179: 01,2323 52141 DXCH MPAC
003922,000180: 01,2324 52141 DXCH MPAC
003923,000181: 01,2325 52143 DXCH MPAC +2
003924,000182: 01,2326 50067 INDEX NEWJOB
003925,000183: 01,2327 52143 DXCH MPAC +2
003926,000184: 01,2330 52143 DXCH MPAC +2
003927,000185: 01,2331 52145 DXCH MPAC +4
003928,000186: 01,2332 50067 INDEX NEWJOB
003929,000187: 01,2333 52145 DXCH MPAC +4
003930,000188: 01,2334 52145 DXCH MPAC +4
003931,000189: 01,2335 52147 DXCH MPAC +6
003932,000190: 01,2336 50067 INDEX NEWJOB
003933,000191: 01,2337 52147 DXCH MPAC +6
003934,000192: 01,2340 52147 DXCH MPAC +6
003935,000193:
003936,000194: 01,2341 37653 CAF ZERO
003937,000195: 01,2342 56105 XCH OVFIND # MAKE PUSHLOC NEGATIVE IF OVFIND NZ.
003938,000196: 01,2343 00006 EXTEND
003939,000197: 01,2344 12347 BZF +3
003940,000198: 01,2345 40152 CS PUSHLOC
003941,000199: 01,2346 54152 TS PUSHLOC
003942,000200:
003943,000201: 01,2347 52153 DXCH PUSHLOC
003944,000202: 01,2350 50067 INDEX NEWJOB
003945,000203: 01,2351 52153 DXCH PUSHLOC
003946,000204: 01,2352 52153 DXCH PUSHLOC # SWAPS PUSHLOC AND PRIORITY.
003947,000205: 01,2353 10152 CCS PUSHLOC # SET OVERFLOW INDICATOR ACCORDING TO
003948,000206: 01,2354 37653 CAF ZERO
003949,000207: 01,2355 12362 TCF ENDPRCHG -1
003950,000208: 01,2356 40152 CS PUSHLOC
003951,000209: 01,2357 54152 TS PUSHLOC
003952,000210: 01,2360 37646 CAF ONE
003953,000211: 01,2361 56105 XCH OVFIND
003954,000212: 01,2362 54067 TS NEWJOB
003955,000213:
003956,000214: 01,2363 00003 ENDPRCHG RELINT
003957,000215: 01,2364 52151 DXCH LOC # BASIC JOBS HAVE POSITIVE ADDRESSES, SO
003958,000216: 01,2365 00006 EXTEND # DISPATCH WITH A DTCB.
003959,000217: 01,2366 62370 BZMF +2 # IF INTERPRETIVE, SET UP EBANK, ETC.
003960,000218: 01,2367 52006 DTCB
003961,000219:
Page 112 |
003963,000221: 01,2370 40000 COM # EPILOGUE TO JOB CHANGE FOR INTERPRETIVE
003964,000222: 01,2371 54150 TS LOC # RESUME.
003965,000223: 01,2372 36232 CAF FBANKMSK
003966,000224: 01,2373 70001 MASK L
003967,000225: 01,2374 16011 TCF INTRSM
003968,000226:
003969,000227: # COMPLETE JOBSLEEP PREPARATIONS.
003970,000228:
003971,000229: 01,2375 00004 JOBSLP1 INHINT
003972,000230: 01,2376 40153 CS PRIORITY # NNZ PRIORITY SHOWS JOB ASLEEP.
003973,000231: 01,2377 54153 TS PRIORITY
003974,000232: 01,2400 36027 CAF LOW7
003975,000233: 01,2401 70006 MASK BBANK
003976,000234: 01,2402 54151 TS BANKSET
003977,000235: 01,2403 47653 CS ZERO
003978,000236: 01,2404 54115 JOBSLP2 TS BUF +1 # HOLDS - HIGHEST PRIORITY.
003979,000237: 01,2405 12475 TCF EJSCAN # SCAN FOR HIGHEST PRIORITY ALA ENDOFJOB.
003980,000238:
Page 113 |
003982,000240: # TO WAKE UP A JOB, EACH CORE SET IS FOUND TO LOCATE ALL JOBS WHICH ARE ASLEEP. IF THE FCADR IN THE
003983,000241: # LOC REGISTER OF ANY SUCH JOB MATCHES THAT SUPPLIED BY THE CALLER, THAT JOB IS AWAKENED. IF NO JOB IS FOUND,
003984,000242: # LOCCTR IS SET TO -1 AND NO FURTHER ACTION TAKES PLACE.
003985,000243:
003986,000244: 01,2406 54626 JOBWAKE2 TS EXECTEM1
003987,000245: 01,2407 37653 CAF ZERO # BEGIN CORE SET SCAN.
003988,000246: 01,2410 54635 TS LOCCTR
003989,000247: 01,2411 32250 CAF NO.CORES
003990,000248: 01,2412 54627 JOBWAKE4 TS EXECTEM2
003991,000249: 01,2413 50635 INDEX LOCCTR
003992,000250: 01,2414 10153 CCS PRIORITY
003993,000251: 01,2415 12420 TCF JOBWAKE3 # ACTIVE JOB - CHECK NEXT CORE SET.
003994,000252: 01,2416 00014 COREINC DEC 12 B-14 # 12 REGISTERS PER CORE SET.
003995,000253: 01,2417 12427 TCF WAKETEST # SLEEPING JOB - SEE IF CADR MATCHES.
003996,000254:
003997,000255: 01,2420 32416 JOBWAKE3 CAF COREINC
003998,000256: 01,2421 26635 ADS LOCCTR
003999,000257: 01,2422 10627 CCS EXECTEM2
004000,000258: 01,2423 12412 TCF JOBWAKE4
004001,000259: 01,2424 47646 CS ONE # EXIT IF SLEEPING JOB NOT FOUND.
004002,000260: 01,2425 54635 TS LOCCTR
004003,000261: 01,2426 14210 TCF ENDFIND
004004,000262:
004005,000263: 01,2427 40633 WAKETEST CS NEWLOC
004006,000264: 01,2430 50635 INDEX LOCCTR
004007,000265: 01,2431 60150 AD LOC
004008,000266: 01,2432 00006 EXTEND
004009,000267: 01,2433 12435 BZF +2 # IF MATCH.
004010,000268: 01,2434 12420 TCF JOBWAKE3 # EXAMINE NEXT CORE SET IF NO MATCH.
004011,000269:
004012,000270: 01,2435 50635 INDEX LOCCTR # RE-COMPLEMENT PRIORITY TO SHOW JOB AWAKE
004013,000271: 01,2436 40153 CS PRIORITY
004014,000272: 01,2437 50635 INDEX LOCCTR
004015,000273: 01,2440 54153 TS PRIORITY
004016,000274:
004017,000275: 01,2441 46232 CS FBANKMSK # MAKE UP THE 2CADR OF THE WAKE ADDRESS
004018,000276: 01,2442 70633 MASK NEWLOC # USING THE CADR IN NEWLOC AND THE EBANK
004019,000277: 01,2443 67634 AD 2K # HALF OF BBANK SAVED IN BANKSET.
004020,000278: 01,2444 56633 XCH NEWLOC
004021,000279: 01,2445 76232 MASK FBANKMSK
004022,000280: 01,2446 50635 INDEX LOCCTR
004023,000281: 01,2447 60151 AD BANKSET
004024,000282: 01,2450 54634 TS NEWLOC +1
004025,000283:
004026,000284: 01,2451 10635 CCS LOCCTR # SPECIAL TREATMENT IF THIS JOB WAS
004027,000285: 01,2452 12275 TCF SETLOC # ALREADY IN THE RUN (0) POSITION.
004028,000286: 01,2453 12265 TCF SPECTEST
004029,000287:
Page 114 |
004031,000289: # PRIORITY CHANGE. CHANGE THE CONTENTS OF PRIORITY AND SCAN FOR THE JOB OF HIGHEST PRIORITY.
004032,000290:
004033,000291: 01,2454 54150 PRIOCH2 TS LOC
004034,000292: 01,2455 37653 CAF ZERO # SET FLAG TO TELL ENDJOB SCANNER IF THIS
004035,000293: 01,2456 54114 TS BUF # JOB IS STILL HIGHEST PRIORITY.
004036,000294: 01,2457 32503 CAF LOW9
004037,000295: 01,2460 70153 MASK PRIORITY
004038,000296: 01,2461 60632 AD NEWPRIO
004039,000297: 01,2462 54153 TS PRIORITY
004040,000298: 01,2463 40000 COM
004041,000299: 01,2464 12404 TCF JOBSLP2 # AND TO EJSCAN.
004042,000300:
Page 115 |
004044,000302: # RELEASE THIS CORE SET AND VAC AREA AND SCAN FOR THE JOB OF HIGHEST ACTIVE PRIORITY.
004045,000303:
004046,000304: 01,2465 00004 ENDJOB1 INHINT
004047,000305: 01,2466 47653 CS ZERO
004048,000306: 01,2467 54115 TS BUF +1
004049,000307: 01,2470 56153 XCH PRIORITY
004050,000308: 01,2471 72503 MASK LOW9
004051,000309: 01,2472 10000 CCS A
004052,000310: 01,2473 50000 INDEX A
004053,000311: 01,2474 54000 TS 0
004054,000312:
004055,000313: 01,2475 10167 EJSCAN CCS PRIORITY +12D
004056,000314: 01,2476 02542 TC EJ1
004057,000315: 01,2500 SETLOC +1
004058,000316: 01,2500 12501 TCF +1
004059,000317:
004060,000318: 01,2501 10203 CCS PRIORITY +24D # EXAMINE EACH PRIORITY REGISTER TO FIND
004061,000319: 01,2502 02542 TC EJ1 # THE JOB OF HIGHEST ACTIVE PRIORITY.
004062,000320: 01,2503 00777 LOW9 OCT 00777
004063,000321: 01,2504 12505 TCF +1
004064,000322:
004065,000323: 01,2505 10217 CCS PRIORITY +36D
004066,000324: 01,2506 02542 TC EJ1
004067,000325: 01,2507 67624 -CCSPR -CCS PRIORITY
004068,000326: 01,2510 12511 TCF +1
004069,000327:
004070,000328: 01,2511 10233 CCS PRIORITY +48D
004071,000329: 01,2512 02542 TC EJ1
004072,000330: 01,2514 SETLOC +1
004073,000331: 01,2514 12515 TCF +1
004074,000332:
004075,000333: 01,2515 10247 CCS PRIORITY +60D
004076,000334: 01,2516 02542 TC EJ1
004077,000335: 01,2520 SETLOC +1
004078,000336: 01,2520 12521 TCF +1
004079,000337:
004080,000338: 01,2521 10263 CCS PRIORITY +72D
004081,000339: 01,2522 02542 TC EJ1
004082,000340: 01,2524 SETLOC +1
004083,000341: 01,2524 12525 TCF +1
004084,000342:
Page 116 |
004086,000344: # EVALUATE THE RESULTS OF THE SCAN.
004087,000345:
004088,000346: 01,2525 10115 CCS BUF +1 # SEE IF THERE ARE ANY ACTIVE JOBS WAITING
004089,000347: 01,2530 SETLOC +2
004090,000348: 01,2530 12532 TCF +2
004091,000349: 01,2531 14215 TCF DUMMYJOB
004092,000350: 01,2532 10114 CCS BUF # BUF IS ZERO IF THIS IS A PRIOCHNG AND
004093,000351: 01,2533 12535 TCF +2 # CHANGED PRIORITY IS STILL HIGHEST.
004094,000352: 01,2534 12363 TCF ENDPRCHG
004095,000353:
004096,000354: 01,2535 50000 INDEX A # OTHERWISE, SET NEWJOB TO THE RELATIVE
004097,000355: 01,2536 27777 CAF 0 -1 # ADDRESS OF THE NEW JOB'S CORE SET.
004098,000356: 01,2537 62507 AD -CCSPR
004099,000357: 01,2540 54067 TS NEWJOB
004100,000358: 01,2541 12315 TCF CHANJOB -1
004101,000359:
004102,000360: 01,2542 54116 EJ1 TS BUF +2
004103,000361: 01,2543 60115 AD BUF +1 # - OLD HIGH PRIORITY.
004104,000362: 01,2544 10000 CCS A
004105,000363: 01,2545 40116 CS BUF +2
004106,000364: 01,2546 12552 TCF EJ2 # NEW HIGH PRIORITY.
004107,000365: 01,2547 12550 NOOP
004108,000366: 01,2550 50002 INDEX Q
004109,000367: 01,2551 00002 TC 2 # PROCEED WITH SEARCH.
004110,000368:
004111,000369: 01,2552 54115 EJ2 TS BUF +1
004112,000370: 01,2553 00006 EXTEND
004113,000371: 01,2554 22114 QXCH BUF # FOR LOCATING CCS PRIORITY + X INSTR.
004114,000372: 01,2555 50114 INDEX BUF
004115,000373: 01,2556 00002 TC 2
004116,000374:
004117,000375: 01,2557 ENDEXECS EQUALS
004118,000376:
Page 117 |
004120,000378: # IDLING AND COMPUTER ACTIVITY (GREEN) LIGHT MAINTENANCE. THE IDLING ROUTINE IS NOT A JOB IN ITSELF,
004121,000379: # BUT RATHER A SUBROUTINE OF THE EXECUTIVE.
004122,000380:
004123,000381: 4215 SETLOC EXECBANK +1
004124,000382:
004125,000383: 4215 47653 DUMMYJOB CS ZERO # SET NEWJOB TO -0 FOR IDLING.
004126,000384: 4216 54067 TS NEWJOB
004127,000385: 4217 00003 RELINT
004128,000386: 4220 47645 CS TWO # TURN OFF THE ACTIVITY LIGHT.
004129,000387: 4221 00006 EXTEND
004130,000388: 4222 03011 WAND DSALMOUT
004131,000389: 4223 14226 TCF CHECKNJ +2
004132,000390:
004133,000391: 4224 00006 CHECKNJ EXTEND # SPECIAL NEWJOB TEST FOR SELF-CHECK,
004134,000392: 4225 23043 QXCH SELFRET # WHICH RUNS UNDER EXECUTIVE CONTROL,
004135,000393: 4226 10067 +2 CCS NEWJOB # BUT DOES NOT HAVE A JOBS CORE REGISTERS.
004136,000394: 4227 14241 TCF NUCHANGE # NEW JOB REQUIRING A CHANGE JOB.
004137,000395: 4230 37645 CAF TWO # NEW JOB ALREADY IN POSITION FOR
004138,000396: 4231 14235 TCF NUDIRECT # EXECUTION.
004139,000397:
004140,000398: 4232 34250 CAF SELFBANK # RETURN TO SELF-CHECK.
004141,000399: 4233 54004 TS FBANK
004142,000400: 4234 01043 TC SELFRET
004143,000401:
004144,000402: 4235 00006 NUDIRECT EXTEND # TURN THE GREEN LIGHT BACK ON.
004145,000403: 4236 05011 WOR DSALMOUT
004146,000404: 4237 52151 DXCH LOC # JOBS STARTED IN THIS FASHION MUST BE
004147,000405: 4240 52006 DTCB # BASIC.
004148,000406:
004149,000407: 4241 37645 NUCHANGE CAF TWO
004150,000408: 4242 00006 EXTEND
004151,000409: 4243 05011 WOR DSALMOUT
004152,000410: 4244 34214 CAF EXECBANK # SWAP CORE SETS.
004153,000411: 4245 54004 TS FBANK
004154,000412: 4246 00004 INHINT # CHANGE JOBS
004155,000413: 4247 12315 TCF CHANJOB -1
004156,000414:
004157,000415: 4250 21273 SELFBANK CADR ENDEDOP
004158,000416: 4251 ENDEXECF EQUALS
End of include-file EXECUTIVE.agc. Parent file is MAIN.agc