Source Code
![]() |
These source-code files were transcribed from a printout in Don Eyles's personal
collection, scanned by archive.org, and financially sponsored by Peter McDermott.
A team of volunteers performed the transcription and proof-reading. The scanned
page images are available at
the Virtual AGC Project website, as well as higher-quality (but much larger)
images at
the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating
"issues" at
the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: YUL SYSTEM FOR AGC: NEW PROGRAM SHEPATIN BY EYLES DEC 13, 1966 THIS PROGRAM WAS ASSEMBLED AS A VERSION OF REVISION 37 OF PROGRAM SUNBURST BY LEM GROUPNote that the date is the date of the printout, not the date of the program revision. |
002468,000002: ## Copyright: Public domain.
002469,000003: ## Filename: RESTART_TABLES_AND_RESTARTS_ROUTINE.agc
002470,000004: ## Purpose: A section of Sunburst revision 37, or Shepatin revision 0.
002471,000005: ## It is part of an early development version of the software
002472,000006: ## for Apollo Guidance Computer (AGC) on the unmanned Lunar
002473,000007: ## Module (LM) flight Apollo 5. Sunburst 37 was the program
002474,000008: ## upon which Don Eyles's offline development program Shepatin
002475,000009: ## was based; the listing herein transcribed was actually for
002476,000010: ## the equivalent revision 0 of Shepatin.
002477,000011: ## This file is intended to be a faithful transcription, except
002478,000012: ## that the code format has been changed to conform to the
002479,000013: ## requirements of the yaYUL assembler rather than the
002480,000014: ## original YUL assembler.
002481,000015: ## Reference: pp. 56-66
002482,000016: ## Assembler: yaYUL
002483,000017: ## Contact: Ron Burkey <info@sandroid.org>.
002484,000018: ## Website: www.ibiblio.org/apollo/index.html
002485,000019: ## Mod history: 2017-05-24 MAS Created from Sunburst 120.
002486,000020: ## 2017-05-28 HG Transcribed
002487,000021: ## 2017-06-15 HG Fix operator CS -> CA
002488,000022: ## 2017-06-15 HG Fix operator -2CADR -> 2CADR
002489,000023: ## 2017-06-21 RSB Proofed using octopus/ProoferComments.
002490,000024:
![]() |
Page 56 |
002492,000026: # RESTART TABLES
002493,000027: # DO NOT REMOVE FROM THE BEGINNING OF THIS BANK
002494,000028: # ------------------
002495,000029:
002496,000030: # THERE ARE TWO FORMS OF RESTART TABLES FOR EACH GROUP. THEY ARE KNOWN AS THE EVEN RESTART TABLES AND THE ODD
002497,000031: # RESTART TABLES. THE ODD TABLES HAVE ONLY ONE ENTRY OF THREE LOCATIONS WHILE THE EVEN TABLES HAVE TWO ENTRIES
002498,000032: # EACH USING THREE LOCATIONS. THE INFORMATION AS TO WHETHER IT IS A JOB, WAITLIST, OR A LONGCALL IS GIVEN BY THE
002499,000033: # WAY THINGS ARE PUT INTO THE TABLES.
002500,000034: # A JOB HAS ITS PRIORITY STORED IN PRDTTAB OF THE CORRECT PHASE SPOT WITH ITS 2CADR IN THE CADRTAB. FOR
002501,000035: # EXAMPLE,
002502,000036:
002503,000037: # 5.7SPOT OCT 23000
002504,000038: # 2CADR SOMEJOB
002505,000039:
002506,000040: # A RESTART OF GROUP 5 WITH PHASE SEVEN WOULD THEN CAUSE SOMEJOB TO BE RESTARTED WITH A PRIORITY OF 23.
002507,000041:
002508,000042: # A LONGCALL HAS ITS GENADR OF ITS 2CADR STORED NEGATIVELY AND ITS BBCON STORED POSITIVELY. IN ITS PRDTTAB IS
002509,000043: # PLACED THE LOCATION OF A DP REGISTER THAT CONTAINS THE DELTA TIME THAT LONGCALL HAD BEEN ORIGINALLY STARTED
002510,000044: # WITH. EXAMPLE,
002511,000045:
002512,000046: # 3.6SPOT GENADR DELTAT
002513,000047: # -GENADR LONGTASK
002514,000048: # BBCON LONGTASK
002515,000049:
002516,000050: # OCT 31000
002517,000051: # 2CADR JOBAGAIN
002518,000052:
002519,000053: # THIS WOULD START UP LONGTASK AT THE APPROPRIATE TIME, OR IMMEDIATELY IF THE TIME HAD ALREADY PASSED. IT SHOULD
002520,000054: # BE NOTED THAT IF DELTAT IS IN A SWITCHED E BANK, THIS INFORMATOIN SHOULD BE IN THE BBCON OFTHE 2CADR OF THE
002521,000055: # TASK. FROM ABOVE, WE SEE THAT THE SECOND PART OF THIS PHASE WOULD BE STARTED AS A JOB WITH A PRIORITY OF 31.
002522,000056:
002523,000057: # WAITLIST CALLS ARE IDENTIFIED BY THE FACT THAT THEIR 2CADR IS STORED NEGATIVELY. IF PRDTTAB OF THE PHASE SPOT
002524,000058: # IS POSITIVE, THEN IT CONTAINS THE DELTA TIME, IF PRDTTAB IS NEGATIVE THEN IT IS THE -GENADR OF AN ERASABLE
002525,000059: # LOCATION CONTAINING THE DELTA TIME, THAT IS, THE TIME IS STORED INDIRECTLY. IT SHOULD BE NOTED AS ABOVE, THAT
002526,000060: # IF THE TIME IS STORED INDIRECTLY, THE BBCON MUST CONTAIN THE NECESSARY E BANK INFORMATION IF APPLICABLE. WITH
002527,000061: # WAITLIST WE HAVE ONE FURTHER OPTION, IF -0 IS STORED IN PRDTTAB, IT WILL CAUSE AN IMMEDIATE RESTART OF THE
002528,000062: # TASK. EXAMPLES,
002529,000063:
002530,000064: # OCT 77777 THIS WILL CAUSE AN IMMEDIATE RESTART
002531,000065: # -2CADR ATASK OF THE TASK :ATASK:
002532,000066:
002533,000067: # DEC 200 IF THE TIME OF THE 2 SECONDS SINCE DUMMY
002534,000068: # -2CADR DUMMY WAS PUT ON WAITLIST IS UP, IT WILL BEGIN
002535,000069: # IN 10 MS, OTHERWISE IT WILL BEGIN WHEN
002536,000070:
002537,000071: # IT NORMALLY WOULD HAVE BEGUN.
002538,000072:
002539,000073: # -GENADR DTIME WHERE DTIME CONTAINS THE DELTA TIME
002540,000074: # -2CADR TASKTASK OTHERWISE THIS IS AS ABOVE
002541,000075:
002542,000076: # ***** NOW THE TABLES THEMSELVES *****
002543,000077:
![]() |
Page 57 |
002545,000079:
002546,000080: 4064 PRDTTAB EQUALS 24000 # USED TO FIND THE PRIORITY OR DELTA TIME
002547,000081: 4064 CADRTAB EQUALS 24001 # THIS AND THE NEXT LOCATION (RELATIVE)
002548,000082:
002549,000083: # CONTAIN THE RESTART CADR
002550,000084:
002551,000085: 06,2000 BANK 06
002552,000086:
002553,000087: 06,2000 E3,1400 EBANK= LST1 # GOPROG MUST SWITCH IN THIS EBANK
002554,000088:
002555,000089: 06,2000 02360 PHS2CADR GENADR PHSPART2 # DO NOT REMOVE THE FOLLOWING 6 LOCATIONS
002556,000090: 06,2001 02147 PRT2CADR GENADR GETPART2 # FROM BEGINNING OF BANK
002557,000091: 06,2002 05757 LGCLCADR GENADR LONGCALL
002558,000092: 06,2003 05534 FVACCADR GENADR FINDVAC
002559,000093: 06,2004 05701 WTLTCADR GENADR WAITLIST
002560,000094: 06,2005 05237 RTRNCADR TC SWRETURN
002561,000095:
002562,000096: 06,2006 10000 1.2SPOT OCT 10000 # TEMPORARY ENTRY TO ESTABLISH TABLE
002563,000097: 06,2007 E3,1400 EBANK= LST1
002564,000098: 06,2007 05614 04003 2CADR DUMMYJOB
002565,000099:
002566,000100: 06,2011 10000 OCT 10000
002567,000101: 06,2012 E3,1400 EBANK= LST1
002568,000102: 06,2012 05614 04003 2CADR DUMMYJOB
002569,000103: # ANY MORE GROUP 1.EVEN RESTART VALUES SHOULD GO HERE
002570,000104:
002571,000105: 06,2014 06,2006 1.3SPOT EQUALS 1.2SPOT
002572,000106:
002573,000107: # ANY MORE GROUP 1.ODD RESTART VALUES SHOULD GO HERE
002574,000108:
002575,000109: 06,2014 06,2006 2.2SPOT EQUALS 1.2SPOT
002576,000110:
002577,000111: # ANY MORE GROUP 2.EVEN RESTART VALUES SHOULD GO HERE
002578,000112:
002579,000113: 06,2014 77777 2.3SPOT OCT 77777 # MISSION SCHEDULING PACKAGE TO SET UP
002580,000114: 06,2015 E3,1400 EBANK= LST1
002581,000115: 06,2015 75621 15714 -2CADR REDOMDUE
002582,000116:
002583,000117: 06,2017 12574 2.5SPOT DEC 5500 B-14
002584,000118: 06,2020 E4,1566 EBANK= TDEC
002585,000119: 06,2020 75146 25773 -2CADR SIVB2
002586,000120:
002587,000121: 06,2022 77777 2.7SPOT OCT 77777
002588,000122: 06,2023 E4,1566 EBANK= TDEC
002589,000123: 06,2023 75621 25773 -2CADR SBORBA
002590,000124:
002591,000125: 06,2025 00620 2.11SPOT DEC 400 B-14
002592,000126: 06,2026 E4,1566 EBANK= TDEC
002593,000127: 06,2026 75506 25773 -2CADR SBORB8
002594,000128:
002595,000129: # ANY MORE GROUP 2.0DD RESTART VALUES SHOULD GO HERE
002596,000130:
![]() |
Page 58 |
002598,000132: 06,2030 06,2006 3.2SPOT EQUALS 1.2SPOT
002599,000133: # ANY MORE GROUP 3.EVEN RESTART VALUES SHOULD GO HERE
002600,000134:
002601,000135: 06,2030 06,2006 3.3SPOT EQUALS 1.2SPOT
002602,000136: # ANY MORE GROUP 3.0DD RESTART VALUES SHOULD GO HERE
002603,000137:
002604,000138: 06,2030 06,2006 4.2SPOT EQUALS 1.2SPOT
002605,000139:
002606,000140: # ANY MORE GROUP 4.EVEN RESTART VALUES SHOULD GO HERE
002607,000141:
002608,000142: 06,2030 06,2006 4.3SPOT EQUALS 1.2SPOT
002609,000143: # ANY MORE GROUP 4.0DD RESTART VALUES SHOULD GO HERE
002610,000144:
002611,000145: 06,2030 21000 5.2SPOT OCT 21000
002612,000146: 06,2031 E4,1514 EBANK= RAVEGON
002613,000147: 06,2031 02317 60064 2CADR NORMLIZE
002614,000148:
002615,000149: 06,2033 00310 DEC 200 B-14
002616,000150: 06,2034 E5,1511 EBANK= DVCNTR
002617,000151: 06,2034 75211 17712 -2CADR REREADAC
002618,000152:
002619,000153: 06,2036 00310 5.4SPOT DEC 200 B-14
002620,000154: 06,2037 E5,1570 EBANK= BMEMORY
002621,000155: 06,2037 75777 17712 -2CADR PREREAD
002622,000156:
002623,000157: 06,2041 32000 OCT 32000
002624,000158: 06,2042 E3,1400 EBANK= LST1
002625,000159: 06,2042 03571 24003 2CADR LASTBIAS
002626,000160:
002627,000161: 06,2044 00310 5.6SPOT DEC 200 B-14
002628,000162: 06,2045 E5,1511 EBANK= DVCNTR
002629,000163: 06,2045 75211 17712 -2CADR REREADAC
002630,000164:
002631,000165: 06,2047 20000 OCT 20000
002632,000166: 06,2050 E5,1511 EBANK= DVCNTR
002633,000167: 06,2050 02115 60065 2CADR SERVICER
002634,000168: # ANY MORE GROUP 5.EVEN RESTART VALUES SHOULD GO HERE
002635,000169:
002636,000170: 06,2052 00310 5.3SPOT DEC 200 B-14
002637,000171: 06,2053 E5,1511 EBANK= DVCNTR
002638,000172: 06,2053 75211 17712 -2CADR REREADAC
002639,000173:
002640,000174: 06,2055 77777 5.5SPOT OCT 77777 # REPLACES INACTIVE 5.0 FOR FAKESTRT
002641,000175: 06,2056 1167 EBANK= MTIMER4 # * * * REMOVE IF RESTARTS RETURN * * *
002642,000176: 06,2056 75227 75775 -2CADR POOH2
002643,000177:
002644,000178: 06,2060 20000 5.7SPOT OCT 20000
002645,000179: 06,2061 E5,1400 EBANK= XSM
002646,000180: 06,2061 02016 72065 2CADR RSTGTS1
002647,000181:
![]() |
Page 59 |
002649,000183: 06,2063 77777 5.11SPOT OCT 77777
002650,000184: 06,2064 E5,1400 EBANK= XSM
002651,000185: 06,2064 75707 05712 -2CADR ALLOOP1
002652,000186:
002653,000187: 06,2066 20000 5.13SPOT OCT 20000
002654,000188: 06,2067 E5,1400 EBANK= XSM
002655,000189: 06,2067 02752 72065 2CADR WTLISTNT
002656,000190:
002657,000191: 06,2071 20000 5.15SPOT OCT 20000
002658,000192: 06,2072 E5,1400 EBANK= XSM
002659,000193: 06,2072 02637 72065 2CADR RESTEST1
002660,000194:
002661,000195: 06,2074 20000 5.17SPOT OCT 20000
002662,000196: 06,2075 E5,1400 EBANK= XSM
002663,000197:
002664,000198: 06,2075 02730 72065 2CADR GEOSTRT4
002665,000199:
002666,000200: 06,2077 20000 5.21SPOT OCT 20000
002667,000201: 06,2100 E5,1400 EBANK= XSM
002668,000202: 06,2100 02140 72065 2CADR ALFLT1
002669,000203:
002670,000204: 06,2102 77777 5.23SPOT OCT 77777
002671,000205: 06,2103 E5,1400 EBANK= XSM
002672,000206: 06,2103 75656 05712 -2CADR SPECSTS
002673,000207:
002674,000208: 06,2105 20000 5.25SPOT OCT 20000
002675,000209: 06,2106 E5,1400 EBANK= XSM
002676,000210: 06,2106 02652 72065 2CADR RESTEST3
002677,000211:
002678,000212: 06,2110 20000 5.27SPOT OCT 20000
002679,000213: 06,2111 E5,1400 EBANK= XSM
002680,000214: 06,2111 02615 72065 2CADR RESTAIER
002681,000215:
002682,000216: 06,2113 77777 5.31SPOT OCT 77777
002683,000217: 06,2114 E5,1400 EBANK= XSM
002684,000218: 06,2114 75666 05712 -2CADR PIPSTRTS
002685,000219: # ANY MORE GROUP 5.ODD RESTART VALUES SHOULD GO HERE
002686,000220:
002687,000221: 06,2116 06,2006 6.2SPOT EQUALS 1.2SPOT
002688,000222: # ANY MORE GROUP 6.EVEN RESTART VALUES SHOULD GO HERE
002689,000223:
002690,000224: 06,2116 06,2006 6.3SPOT EQUALS 1.2SPOT
002691,000225: # ANY MORE GROUP 6.0DD RESTART VALUES SHOULD GO HERE
002692,000226:
002693,000227: 06,2116 00000 SIZETAB GENADR 1.2SPOT -24006
002694,000228: 06,2117 00002 GENADR 1.3SPOT -24004
002695,000229: 06,2120 00000 GENADR 2.2SPOT -24006
002696,000230: 06,2121 00010 GENADR 2.3SPOT -24004
002697,000231: 06,2122 00000 GENADR 3.2SPOT -24006
002698,000232: 06,2123 00002 GENADR 3.3SPOT -24004
002699,000233:
![]() |
Page 60 |
002701,000235: 06,2124 00000 GENADR 4.2SPOT -24006
002702,000236: 06,2125 00002 GENADR 4.3SPOT -24004
002703,000237: 06,2126 00022 GENADR 5.2SPOT -24006
002704,000238: 06,2127 00046 GENADR 5.3SPOT -24004
002705,000239: 06,2130 00000 GENADR 6.2SPOT -24006
002706,000240: 06,2131 00002 GENADR 6.3SPOT -24004
002707,000241:
![]() |
Page 61 |
002709,000243: 06,2132 30151 RESTARTS CA MPAC +5 # GET GROUP NUMBER -1
002710,000244:
002711,000245: 06,2133 60000 DOUBLE # SAVE FOR INDEXING
002712,000246: 06,2134 54145 TS TEMP2G
002713,000247:
002714,000248: 06,2135 32003 CA FVACCADR # LET:S ASSUME THIS IS A JOB, THIS WILL
002715,000249: 06,2136 54110 TS GOLOC -1 # SAVE US A COUPLE OF LOCATIONS, BUT NOT
002716,000250: # NECESSARIALY ANY TIME - SO BE IT -
002717,000251:
002718,000252: 06,2137 32000 CA PHS2CADR # SET UP EXIT IN CASE IT IS AN EVEN
002719,000253: 06,2140 54147 TS TEMPSWCH # TABLE PHASE
002720,000254:
002721,000255: 06,2141 32005 CA RTRNCADR # TO SAVE TIME ASSUME IT WILL GET NEXT
002722,000256: 06,2142 54113 TS GOLOC +2 # GROUP AFTER THIS
002723,000257:
002724,000258: 06,2143 30144 CA TEMPPHS
002725,000259: 06,2144 75370 MASK OCT1400
002726,000260: 06,2145 10000 CCS A # IS IT A VARIABLE OR TABLE RESTART
002727,000261: 06,2146 12157 TCF ITSAVAR # IT;S A VARIABLE RESTART
002728,000262:
002729,000263: 06,2147 10144 GETPART2 CCS TEMPPHS # IS IT AN X.1 RESTART
002730,000264: 06,2150 10000 CCS A
002731,000265: 06,2151 12246 TCF ITSATBL # NO, ITS A TABLE RESTART
002732,000266:
002733,000267: 06,2152 35656 CA PRIO14 # IT IS AN X.1 RESTART, THEREFORE START
002734,000268:
002735,000269: 06,2153 05534 TC FINDVAC # THE DISPLAY RESTART JOB
002736,000270: 06,2154 E3,1400 EBANK= LST1
002737,000271: 06,2154 05605 04003 2CADR INITDSP
002738,000272:
002739,000273: 06,2156 02005 TC RTRNCADR # FINISHED WITH THIS GROUP, GET NEXT ONE
002740,000274:
002741,000275: 06,2157 5605 INITDSP EQUALS ENDOFJOB
002742,000276:
002743,000277: 06,2157 77744 ITSAVAR MASK BIT10 # SEE IF IT IS TYPE B
002744,000278: 06,2160 10000 CCS A
002745,000279: 06,2161 12230 TCF ITSLIKEB # YES,IT IS TYPE B
002746,000280:
002747,000281: 06,2162 00006 EXTEND # STORE THE JOB (OR TASK) 2CADR FOR EXIT
002748,000282: 06,2163 50145 NDX TEMP2G
002749,000283: 06,2164 31517 DCA PHSNAME1
002750,000284: 06,2165 52112 DXCH GOLOC
002751,000285:
002752,000286: 06,2166 30144 CA TEMPPHS # SEE IF THIS IS A JOB, TASK, OR A LONGCAL
002753,000287: 06,2167 77757 MASK OCT7
002754,000288: 06,2170 65355 AD MINUS2
002755,000289: 06,2171 10000 CCS A
002756,000290: 06,2172 12331 TCF ITSLNGCL # ITS A LONGCALL
002757,000291:
002758,000292: 06,2173 37776 OCT37776 OCT 37776 # CANT GET HERE
002759,000293:
![]() |
Page 62 |
002761,000295: 06,2174 12176 TCF ITSAWAIT
002762,000296:
002763,000297: 06,2175 12243 TCF ITSAJOB # ITS A JOB
002764,000298:
002765,000299: 06,2176 32004 ITSAWAIT CA WTLTCADR # SET UP WAITLIST CALL
002766,000300: 06,2177 54110 TS GOLOC -1
002767,000301:
002768,000302: 06,2200 50145 NDX TEMP2G # DIRECTLY STORED
002769,000303:
002770,000304: 06,2201 31114 CA PHSPRDT1
002771,000305: 06,2202 10000 TIMETEST CCS A # IS IT AN IMMEDIATE RESTART
002772,000306: 06,2203 24000 INCR A # NO.
002773,000307: 06,2204 12207 TCF FINDTIME # FIND OUT WHEN IT SHOULD BEGIN
002774,000308:
002775,000309: 06,2205 14064 TCF ITSINDIR # STORED INDIRECTLY
002776,000310:
002777,000311: 06,2206 12226 TCF IMEDIATE # IT WANTS AN IMMEDIATE RESTART
002778,000312:
002779,000313: # ***** THIS MUST BE IN FIXED FIXED *****
002780,000314:
002781,000315: 4064 BLOCK 02
002782,000316: 4064 22112 ITSINDIR LXCH GOLOC +1 # GET THE CORRECT E BANK IN CASE THIS IS
002783,000317: 4065 22006 LXCH BB # SWITCHED ERRASIBLE
002784,000318:
002785,000319: 4066 50000 NDX A # GET THE TIME INDIRECTLY
002786,000320: 4067 30001 CA 1
002787,000321:
002788,000322: 4070 22006 LXCH BB # RESTORE THE BB AND GOLOC
002789,000323: 4071 22112 LXCH GOLOC +1
002790,000324:
002791,000325: 4072 12207 TCF FINDTIME # FIND OUT WHEN IT SHOULD BEGIN
002792,000326:
002793,000327: # ***** YOUB MAY RETURN TO SWITCHED FIXED *****
002794,000328:
002795,000329: 06,2207 BANK 06
002796,000330: 06,2207 40000 FINDTIME COM # MAKE NEGITIVE SINCE IT WILL BE SUBTRACTD
002797,000331: 06,2210 54001 TS L # AND SAVE
002798,000332: 06,2211 50145 NDX TEMP2G
002799,000333: 06,2212 41113 CS TBASE1
002800,000334: 06,2213 00006 EXTEND
002801,000335: 06,2214 60025 SU TIME1
002802,000336: 06,2215 10000 CCS A
002803,000337: 06,2216 40000 COM
002804,000338: 06,2217 62173 AD OCT37776
002805,000339: 06,2220 67755 AD ONE
002806,000340: 06,2221 60001 AD L
002807,000341: 06,2222 10000 CCS A
002808,000342: 06,2223 37761 CA ZERO
002809,000343: 06,2224 12226 TCF +2
002810,000344: 06,2225 12226 TCF +1
002811,000345: 06,2226 67755 IMEDIATE AD ONE
002812,000346:
![]() |
Page 63 |
002814,000348: 06,2227 00110 TC GOLOC -1
002815,000349: 06,2230 32005 ITSLIKEB CA RTRNCADR # TYPE B, SO STORE RETURN IN
002816,000350: 06,2231 54147 TS TEMPSWCH # TEMPSWCH IN CASE OF AN EVEN PHASE
002817,000351:
002818,000352: 06,2232 32001 CA PRT2CADR # SET UP EXIT TO GET TABLE PART OF THIS
002819,000353: 06,2233 54113 TS GOLOC +2 # VARIABLE TYPE OF PHASE
002820,000354:
002821,000355: 06,2234 30144 CA TEMPPHS # MAKE THE PHASE LOOK RIGHT FOR THE TABLE
002822,000356: 06,2235 76130 MASK OCT177 # PART OF THIS VARIABLE PHASE
002823,000357: 06,2236 54144 TS TEMPPHS
002824,000358:
002825,000359: 06,2237 00006 EXTEND
002826,000360: 06,2240 50145 NDX TEMP2G # OBTAIN THE JOB:S 2CADR
002827,000361: 06,2241 31517 DCA PHSNAME1
002828,000362:
002829,000363: 06,2242 52112 DXCH GOLOC
002830,000364:
002831,000365: 06,2243 50145 ITSAJOB NDX TEMP2G # NOW ADD THE PRIORITY AND LET:S GO
002832,000366: 06,2244 31114 CA PHSPRDT1
002833,000367: 06,2245 00110 TC GOLOC -1
002834,000368:
002835,000369: 06,2246 54020 ITSATBL TS CYR # FIND OUT IF THE PHASE IS ODD OR EVEN
002836,000370: 06,2247 10020 CCS CYR
002837,000371: 06,2250 12251 TCF +1 # IT:S EVEN
002838,000372: 06,2251 12347 TCF ITSEVEN
002839,000373:
002840,000374: 06,2252 32005 CA RTRNCADR # IN CASE THIS IS THE SECOND PART OF A
002841,000375: 06,2253 54113 TS GOLOC +2 # TYPE B RESTART, WE NEED PROPER EXIT
002842,000376:
002843,000377: 06,2254 30144 CA TEMPPHS # SET UP POINTER FOR FINDING OUR PLACE IN
002844,000378: 06,2255 54021 TS SR # THE RESTART TABLES
002845,000379: 06,2256 60021 AD SR
002846,000380: 06,2257 50145 NDX TEMP2G
002847,000381: 06,2260 62117 AD SIZETAB +1
002848,000382: 06,2261 54146 TS POINTER
002849,000383:
002850,000384: 06,2262 00006 CONTBL2 EXTEND # FIND OUT WHAT:S IN THE TABLE
002851,000385: 06,2263 50146 NDX POINTER
002852,000386:
002853,000387: 06,2264 32002 DCA CADRTAB # GET THE 2CADR
002854,000388:
002855,000389: 06,2265 22112 LXCH GOLOC +1 # STORE THE BB INFORMATION
002856,000390:
002857,000391: 06,2266 10000 CCS A # IS IT A JOB OR IS IT TIMED
002858,000392: 06,2267 24000 INCR A # POSITIVE, MUST BE A JOB
002859,000393: 06,2270 12343 TCF ITSAJOB2
002860,000394:
002861,000395: 06,2271 24000 INCR A # MUST BE EITHER A WAITLIST OR LONGCALL
002862,000396: 06,2272 54111 TS GOLOC # LET-S STORE THE CORRECT CADR
002863,000397:
002864,000398: 06,2273 32004 CA WTLTCADR # SET UP OUR EXIT TO WAITLIST
002865,000399: 06,2274 54110 TS GOLOC -1
002866,000400:
![]() |
Page 64 |
002868,000402: 06,2275 30112 CA GOLOC +1 # NOW FIND OUT IF IT IS A WAITLIST CALL
002869,000403: 06,2276 77744 MASK BIT10 # THIS SHOULD BE ONE IF WE HAVE -BB
002870,000404: 06,2277 10000 CCS A # FOR THAT MATTER SO SHOULD BE BITS 9,8,7,
002871,000405: # 6,5, AND LAST BUT NOT LEAST (PERHAPS NOT
002872,000406: # IN IMPORTANCE ANYWAY. BIT 4
002873,000407: 06,2300 12336 TCF ITSWTLST # IT IS A WAITLIST CALL
002874,000408:
002875,000409: 06,2301 50146 NDX POINTER # OBTAIN THE ORIGINAL DELTA T
002876,000410: 06,2302 32000 CA PRDTTAB # ADDRESS FOR THIS LONGCALL
002877,000411:
002878,000412: 06,2303 14073 TCF ITSLGCL1 # NOW GO GET THE DELTA TIME
002879,000413:
002880,000414: # ***** THIS MUST BE IN FIXED FIXED *****
002881,000415:
002882,000416: 4073 BLOCK 02
002883,000417: 4073 22112 ITSLGCL1 LXCH GOLOC +1 # OBTAIN THE CORRECT E BANK
002884,000418: 4074 22006 LXCH BB
002885,000419: 4075 22112 LXCH GOLOC +1 # AND PRESERVE OUR E AND F BANKS
002886,000420:
002887,000421: 4076 00006 EXTEND # GET THE DELTA TIME
002888,000422: 4077 50000 NDX A
002889,000423: 4100 30001 DCA 0
002890,000424:
002891,000425: 4101 22112 LXCH GOLOC +1 # RESTORE OUR E AND F BANK
002892,000426: 4102 22006 LXCH BB # RESTORE THE TASKS E AND F BANKS
002893,000427: 4103 22112 LXCH GOLOC +1 # AND PRESERVE OUR L
002894,000428:
002895,000429: 4104 12304 TCF ITSLGCL2 # NOW LET:S PROCESS THIS LONGCALL
002896,000430:
002897,000431: # ***** YOUB MAY RETURN TO SWITCHED FIXED *****
002898,000432:
002899,000433: 06,2304 BANK 06
002900,000434: 06,2304 53153 ITSLGCL2 DXCH LONGTIME
002901,000435:
002902,000436: 06,2305 00006 EXTEND # CALCULATE TIME LEFT
002903,000437: 06,2306 40025 DCS TIME2
002904,000438: 06,2307 21153 DAS LONGTIME
002905,000439: 06,2310 00006 EXTEND
002906,000440: 06,2311 31433 DCA LONGBASE
002907,000441: 06,2312 21153 DAS LONGTIME
002908,000442:
002909,000443: 06,2313 11152 CCS LONGTIME # FIND OUT HOW THIS SHOULD BE RESTARTED
002910,000444: 06,2314 12324 TCF LONGCLCL
002911,000445:
002912,000446: 06,2315 12317 TCF +2
002913,000447: 06,2316 12223 TCF IMEDIATE -3
002914,000448: 06,2317 11153 CCS LONGTIME +1
002915,000449: 06,2320 12324 TCF LONGCLCL
002916,000450: 06,2321 12322 NOOP # CAN:T GET HERE *********
002917,000451: 06,2322 12223 TCF IMEDIATE -3
002918,000452: 06,2323 12226 TCF IMEDIATE
002919,000453:
![]() |
Page 65 |
002921,000455: 06,2324 32002 LONGCLCL CA LGCLCADR # WE WILL GO TO LONGCALL
002922,000456: 06,2325 54110 TS GOLOC -1
002923,000457:
002924,000458: 06,2326 00006 EXTEND # PREPARE OUR ENTRY TO LONGCALL
002925,000459: 06,2327 31153 DCA LONGTIME
002926,000460: 06,2330 00110 TC GOLOC -1
002927,000461:
002928,000462: 06,2331 32004 ITSLNGCL CA WTLTCADR # ASSUME IT WILL GO TO WAITLIST
002929,000463: 06,2332 54110 TS GOLOC -1
002930,000464:
002931,000465: 06,2333 50145 NDX TEMP2G
002932,000466: 06,2334 31114 CA PHSPRDT1 # GET THE DELTA T ADDRESS
002933,000467:
002934,000468: 06,2335 14073 TCF ITSLGCL1 # NOW GET THE DELTA TIME
002935,000469:
002936,000470: 06,2336 40112 ITSWTLST CS GOLOC +1 # CORRECT THE BBCON INFORMATION
002937,000471: 06,2337 54112 TS GOLOC +1
002938,000472:
002939,000473: 06,2340 50146 NDX POINTER # GET THE DT AND FIND OUT IF IT WAS STORED
002940,000474: 06,2341 32000 CA PRDTTAB # DIRECTLY OR INDIRECTLY
002941,000475:
002942,000476: 06,2342 12202 TCF TIMETEST # FIND OUT HOW THE TIME IS STORED
002943,000477:
002944,000478: 06,2343 56111 ITSAJOB2 XCH GOLOC # STORE THE CADR
002945,000479:
002946,000480: 06,2344 50146 NDX POINTER # ADD THE PRIORITY AND LET:S GO
002947,000481: 06,2345 32000 CA PRDTTAB
002948,000482:
002949,000483: 06,2346 00110 TC GOLOC -1
002950,000484:
002951,000485: 06,2347 30147 ITSEVEN CA TEMPSWCH # SET UP FOR EITHER THE SECOND PART OF THE
002952,000486: 06,2350 54113 TS GOLOC +2 # TABLE, OR A RETURN FOR THE NEXT GROUP
002953,000487:
002954,000488: 06,2351 50145 NDX TEMP2G # SET UP POINTER FOR OUR LOCATION WITHIN
002955,000489: 06,2352 32116 CA SIZETAB # THE TABLE
002956,000490: 06,2353 60144 AD TEMPPHS # THIS MAY LOOK BAD BUT LET:S SEE YOU DO
002957,000491: 06,2354 60144 AD TEMPPHS # BETTER IN TIME OR NUMBERR OF LOCATIONS
002958,000492:
002959,000493: 06,2355 60144 AD TEMPPHS
002960,000494: 06,2356 54146 TS POINTER
002961,000495:
002962,000496: 06,2357 12262 TCF CONTBL2 # NOW PROCESS WHAT IS IN THE TABLE
002963,000497:
002964,000498: 06,2360 36301 PHSPART2 CA THREE # SET THE POINTER FOR THE SECOND HALF OF
002965,000499: 06,2361 26146 ADS POINTER # THE TABLE
002966,000500:
002967,000501: 06,2362 32005 CA RTRNCADR # THIS WILL BE OUR LAST TIME THROUGH THE
002968,000502: 06,2363 54113 TS GOLOC +2 # EVEN TABLE , SO AFTER IT GET THE NEXT
002969,000503: # GROUP
002970,000504: 06,2364 12262 TCF CONTBL2 # SO LET:S GET THE SECOND ENTRY IN THE TBL
002971,000505:
![]() |
Page 66 |
002973,000507: 06,2365 0144 TEMPPHS EQUALS MPAC
002974,000508: 06,2365 0145 TEMP2G EQUALS MPAC +1
002975,000509: 06,2365 0146 POINTER EQUALS MPAC +2
002976,000510: 06,2365 0147 TEMPSWCH EQUALS MPAC +3
002977,000511: 06,2365 0111 GOLOC EQUALS OVFIND
002978,000512: 06,2365 5355 MINUS2 EQUALS NEG2
002979,000513: 06,2365 6130 OCT177 EQUALS LOW7
End of include-file RESTART_TABLES_AND_RESTARTS_ROUTINE.agc. Parent file is MAIN.agc