Source Code
![]() |
These source code files have been transcribed or otherwise adapted from
digitized images of a hardcopy from the private collection of
Don Eyles. The digitization was performed by archive.org, and
transcription was performed by a team of volunteers.
Note that the page images
presented online are of reduced quality, and that the original
high-quality images are available at archive.org.
Report any conversion errors or legibility problems in page images to info@sandroid.org.
Notations on the program listing read, in part:473423A YUL SYSTEM FOR BLK2: REVISION 12 of PROGRAM AURORA BY DAP GROUP NOV 10, 1966Note that the date is the date of the printout, not the date of the program revision. |
015271,000002: ## Copyright: Public domain.
015272,000003: ## Filename: AGC_BLOCK_TWO_SELF-CHECK.agc
015273,000004: ## Purpose: Part of the source code for Aurora (revision 12).
015274,000005: ## Assembler: yaYUL
015275,000006: ## Contact: Ron Burkey <info@sandroid.org>.
015276,000007: ## Website: https://www.ibiblio.org/apollo.
015277,000008: ## Pages: 377-403
015278,000009: ## Mod history: 2016-09-20 JL Created.
015279,000010: ## Mod history: 2016-09-22 MAS Began.
015280,000011: ## 2016-10-16 HG Fix operand 5BIT14 -> SBIT14
015281,000012: ## DISPLAY -> SDISPLAY
015282,000013: ## 2016-10-20 RSB Had to add an EBANK= to make some
015283,000014: ## 2CADR's come out right.
015284,000015: ## 2016-10-21 RSB Removed yesterday's EBANK=, due to
015285,000016: ## yaYUL fixes HG gave me.
015286,000017: ## 2016-12-08 RSB Proofed comments with octopus/ProoferComments
015287,000018: ## and fixed the errors found.
015288,000019:
015289,000020: ## This source code has been transcribed or otherwise adapted from
015290,000021: ## digitized images of a hardcopy from the private collection of
015291,000022: ## Don Eyles. The digitization was performed by archive.org.
015292,000023:
015293,000024: ## Notations on the hardcopy document read, in part:
015294,000025:
015295,000026: ## 473423A YUL SYSTEM FOR BLK2: REVISION 12 of PROGRAM AURORA BY DAP GROUP
015296,000027: ## NOV 10, 1966
015297,000028:
015298,000029: ## [Note that this is the date the hardcopy was made, not the
015299,000030: ## date of the program revision or the assembly.]
015300,000031:
015301,000032: ## The scan images (with suitable reduction in storage size and consequent
015302,000033: ## reduction in image quality) are available online at
015303,000034: ## https://www.ibiblio.org/apollo.
015304,000035: ## The original high-quality digital images are available at archive.org:
015305,000036: ## https://archive.org/details/aurora00dapg
015306,000037:
![]() |
Page 377 |
015308,000039: 20,2000 BANK 20
015309,000040:
015310,000041: 20,2000 7657 SBIT1 EQUALS BIT1
015311,000042: 20,2000 7656 SBIT2 EQUALS BIT2
015312,000043: 20,2000 7655 SBIT3 EQUALS BIT3
015313,000044: 20,2000 7654 SBIT4 EQUALS BIT4
015314,000045: 20,2000 7653 SBIT5 EQUALS BIT5
015315,000046: 20,2000 7652 SBIT6 EQUALS BIT6
015316,000047: 20,2000 7651 SBIT7 EQUALS BIT7
015317,000048: 20,2000 7650 SBIT8 EQUALS BIT8
015318,000049: 20,2000 7647 SBIT9 EQUALS BIT9
015319,000050: 20,2000 7646 SBIT10 EQUALS BIT10
015320,000051: 20,2000 7645 SBIT11 EQUALS BIT11
015321,000052: 20,2000 7644 SBIT12 EQUALS BIT12
015322,000053: 20,2000 7643 SBIT13 EQUALS BIT13
015323,000054: 20,2000 7642 SBIT14 EQUALS BIT14
015324,000055: 20,2000 7641 SBIT15 EQUALS BIT15
015325,000056:
015326,000057: 20,2000 7665 S+ZERO EQUALS ZERO
015327,000058: 20,2000 7657 S+1 EQUALS BIT1
015328,000059: 20,2000 7656 S+2 EQUALS BIT2
015329,000060: 20,2000 6165 S+3 EQUALS THREE
015330,000061: 20,2000 7655 S+4 EQUALS FOUR
015331,000062: 20,2000 7664 S+5 EQUALS FIVE
015332,000063: 20,2000 6162 S+6 EQUALS SIX
015333,000064: 20,2000 7663 S+7 EQUALS SEVEN
015334,000065: 20,2000 5235 S8BITS EQUALS LOW8 # 00377
015335,000066: 20,2000 00051 CNTRCON OCTAL 00051 # USED IN CNTRCHK
015336,000067: 20,2001 00062 ERASCON1 OCTAL 00062 # USED IN ERASCHK
015337,000068: 20,2002 01374 ERASCON2 OCTAL 01374 # USED IN ERASCHK
015338,000069: 20,2003 01400 ERASCON6 OCTAL 01400 # USED IN ERASCHK
015339,000070: 20,2004 01462 ERASCON3 OCTAL 01462 # USED IN ERASCHK
015340,000071: 20,2005 01774 ERASCON4 OCTAL 01774 # USED IN ERASCHK
015341,000072: 20,2006 6426 S10BITS EQUALS LOW10 # 01777, USED IN ERASCHK
015342,000073: 20,2006 4506 SBNK03 EQUALS PRIO6 # 06000, USED IN ROPECHK
015343,000074: 20,2006 17777 S13BITS OCTAL 17777
015344,000075: 20,2007 25252 CONC+S1 OCTAL 25252 # USED IN CYCLSHFT
015345,000076: 20,2010 37737 OVCON OCTAL 37737 # USED IN RUPTCHK
015346,000077: 20,2011 37776 DVCON OCTAL 37776
015347,000078: 20,2012 52400 CONC+S2 OCTAL 52400 # USED IN CYCLSHFT
015348,000079: 20,2013 76777 ERASCON5 OCTAL 76777
015349,000080: 20,2014 77770 S-7 OCTAL 77770
015350,000081: 20,2015 6045 S-4 EQUALS NEG4
015351,000082: 20,2015 7671 S-3 EQUALS NEG3
015352,000083: 20,2015 7670 S-2 EQUALS NEG2
015353,000084: 20,2015 7667 S-1 EQUALS NEGONE
015354,000085: 20,2015 7666 S-ZERO EQUALS NEG0
015355,000086:
015356,000087: 20,2015 E3,1400 EBANK= 3
015357,000088: 20,2015 01371 ADRS1 ADRES SKEEP1
015358,000089:
![]() |
Page 378 |
015360,000091: 20,2016 00021 SRADRS ADRES SR
015361,000092: 20,2017 02101 SELFADRS ADRES SELFCHK # SELFCHK RETURN ADDRESS. SHOULD BE PUT
015362,000093: # IN SELFRET WHEN GOING FROM SELFCHK TO
015363,000094: # SHOWSUM AND PUT IN SKEEP1 WHEN GOING
015364,000095: # FROM SHOWSUM TO SELF-CHECK.
015365,000096:
015366,000097: 20,2020 30002 ERRORS CA Q
015367,000098: 20,2021 55364 TS SFAIL # SAVE Q FOR FAILURE LOCATION
015368,000099: 20,2022 25365 INCR ERCOUNT # KEEP TRACK OF NUMBER OF MALFUNCTIONS.
015369,000100: 20,2023 05413 TC ALARM
015370,000101: 20,2024 01102 OCT 01102 # SELF-CHECK MALFUNCTION INDICATOR
015371,000102: 20,2025 11361 CCS SMODE
015372,000103: 20,2026 37665 CA S+ZERO
015373,000104: 20,2027 55361 TS SMODE
015374,000105: 20,2030 02101 TC SELFCHK # GO TO IDLE LOOP
015375,000106: 20,2031 01364 TC SFAIL # CONTINUE WITH SELF-CHECK
015376,000107:
015377,000108: 20,2032 40000 +0CHK CS A
015378,000109: 20,2033 10000 -0CHK CCS A
015379,000110: 20,2034 12020 TCF ERRORS
015380,000111: 20,2035 12020 TCF ERRORS
015381,000112: 20,2036 12020 TCF ERRORS
015382,000113: 20,2037 00002 TC Q
015383,000114:
015384,000115: 20,2040 40000 +1CHK CS A
015385,000116: 20,2041 10000 -1CHK CCS A
015386,000117: 20,2042 12020 TCF ERRORS
015387,000118: 20,2043 12020 TCF ERRORS
015388,000119: 20,2044 10000 CCS A
015389,000120: 20,2045 12020 TCF ERRORS
015390,000121: 20,2046 00002 TC Q
015391,000122:
015392,000123: 20,2047 00006 SMODECHK EXTEND
015393,000124: 20,2050 23371 QXCH SKEEP1
015394,000125: 20,2051 04457 TC CHECKNJ # CHECK FOR NEW JOB
015395,000126: 20,2052 11361 CCS SMODE
015396,000127: 20,2053 02060 TC SOPTIONS
015397,000128: 20,2054 02051 TC SMODECHK +2 # TO BACKUP IDLE LOOP
015398,000129: 20,2055 02060 TC SOPTIONS
015399,000130: 20,2056 25366 INCR SCOUNT
015400,000131: 20,2057 01371 TC SKEEP1 # CONTINUE WITH SELF-CHECK
015401,000132:
015402,000133: 20,2060 62014 SOPTIONS AD S-7
015403,000134: 20,2061 00006 EXTEND
015404,000135: 20,2062 62065 BZMF +3 # FOR OPTIONS BELOW NINE.
015405,000136: 20,2063 04102 BNKOPTN TC POSTJUMP # GO TO ANOTHER BANK FOR OPTIONS ABOVE 8.
015406,000137: 20,2064 03000 CADR SBNKOPTN
015407,000138: 20,2065 25366 INCR SCOUNT # FOR OPTIONS BELOW NINE.
015408,000139: 20,2066 67663 AD S+7
![]() |
Page 379 |
015410,000141: 20,2067 50000 INDEX A
015411,000142: 20,2070 02071 TC SOPTION1
015412,000143: 20,2071 02102 SOPTION1 TC TC+TCF
015413,000144: 20,2072 02767 SOPTION2 TC IN-OUT1
015414,000145: 20,2073 03043 SOPTION3 TC COUNTCHK
015415,000146: 20,2074 03137 SOPTION4 TC ERASCHK
015416,000147: 20,2075 03307 SOPTION5 TC ROPECHK
015417,000148: 20,2076 03516 SOPTION6 TC MPNMBRS
015418,000149: 20,2077 03605 SOPTION7 TC DVCHECK
015419,000150: 20,2100 01371 SOPTON10 TC SKEEP1 # CONTINUE WITH SELF-CHECK
015420,000151:
015421,000152: 20,2101 02047 SELFCHK TC SMODECHK # ** CHARLEY, COME IN HERE
015422,000153:
015423,000154: # TC+TCF CHECKS ALL OF THE PULSES OF TCF AND ALL OF THE PULSES OF TC
015424,000155: # EXCEPT ABILITY TO TC TO ERASABLE.
015425,000156: # ALSO FIRST TIME CS FIXED MEMORY IS USED
015426,000157: 20,2102 02104 TC+TCF TC +2
015427,000158: 20,2103 02111 TC CCSCHK
015428,000159: 20,2104 12106 TCF +2 # $ TCF FIXED MEMORY
015429,000160: 20,2105 02020 TC ERRORS
015430,000161: 20,2106 46165 CS S+3 # $ CS FIXED MEMORY
015431,000162: 20,2107 00002 TC Q # $
015432,000163: 20,2110 02020 TC ERRORS
015433,000164:
015434,000165: # CCSCHK CHECKS ALL OF CCS EXCEPT RB WG.
015435,000166: # ALSO CHECKS TS ERASABLE, CS SC, AND CS ERASABLE MEMORY.
015436,000167: 20,2111 10000 CCSCHK CCS A # $ CCS SC, C(A) = -3
015437,000168: 20,2112 02020 TC ERRORS
015438,000169: 20,2113 02020 TC ERRORS
015439,000170: 20,2114 02116 TC +2
015440,000171: 20,2115 02020 TC ERRORS
015441,000172: 20,2116 10000 CCS A # $ C(A) = +2, RESULT OF CCS -NUMBER
015442,000173: 20,2117 02123 TC +4
015443,000174: 20,2120 02020 TC ERRORS
015444,000175: 20,2121 02020 TC ERRORS
015445,000176: 20,2122 02020 TC ERRORS
015446,000177: 20,2123 55371 TS SKEEP1 # $ TS ERASABLE
015447,000178: 20,2124 11371 CCS SKEEP1 # $ CCS ERASABLE, C(A) = +1, RESULT OF
015448,000179: 20,2125 02131 TC +4 # CCS +NUMBER
015449,000180: 20,2126 02020 TC ERRORS
015450,000181: 20,2127 02020 TC ERRORS
015451,000182: 20,2130 02020 TC ERRORS
015452,000183: 20,2131 10000 CCS A # $ C(A) = +0, RESULT OF CCS +1, CHECKS CI
015453,000184: 20,2132 02020 TC ERRORS
015454,000185: 20,2133 02136 TC +3
015455,000186: 20,2134 02020 TC ERRORS
015456,000187: 20,2135 02020 TC ERRORS
015457,000188: 20,2136 40000 CS A # $ CS SC
015458,000189: 20,2137 10000 CCS A # $ C(A) = -0, RESULT OF CCS +0
015459,000190: 20,2140 02020 TC ERRORS
![]() |
Page 380 |
015461,000192: 20,2141 02020 TC ERRORS
015462,000193: 20,2142 02020 TC ERRORS
015463,000194: 20,2143 10000 CCS A # $ RESULT OF CCS -0
015464,000195: 20,2144 02020 TC ERRORS
015465,000196: 20,2145 02150 TC +3
015466,000197: 20,2146 02020 TC ERRORS
015467,000198: 20,2147 02020 TC ERRORS
015468,000199: 20,2150 41371 CS SKEEP1 # $ CS ERASABLE. ALSO CHECKS BACK INTO
015469,000200: 20,2151 02041 TC -1CHK # ERASABLE SEQUENCE.
015470,000201:
015471,000202: # BZMFCHK CHECKS ALL PULSES OF BZMF.
015472,000203: # ALSO CHECKS CA FIXED MEMORY.
015473,000204: 20,2152 37647 BZMFCHK CAF SBIT9 # $ CA FIXED MEMORY
015474,000205: 20,2153 00006 EXTEND
015475,000206: 20,2154 62175 BZMF ERRBZMF
015476,000207: 20,2155 40000 CS A
015477,000208: 20,2156 00006 EXTEND
015478,000209: 20,2157 62161 BZMF +2 # $
015479,000210: 20,2160 02020 TC ERRORS
015480,000211: 20,2161 33431 CA S+MAX
015481,000212: 20,2162 67657 AD S+1
015482,000213: 20,2163 00006 EXTEND
015483,000214: 20,2164 62176 BZMF ERRBZMF2 # $ + OVERFLOW, CHECK 01-0000
015484,000215: 20,2165 37665 CA S+ZERO
015485,000216: 20,2166 00006 EXTEND
015486,000217: 20,2167 62171 BZMF +2 # $
015487,000218: 20,2170 02020 TC ERRORS
015488,000219: 20,2171 40000 CS A
015489,000220: 20,2172 00006 EXTEND
015490,000221: 20,2173 62177 BZMF +4 # $
015491,000222: 20,2174 02020 TC ERRORS
015492,000223: 20,2175 02020 ERRBZMF TC ERRORS # FROM BZMF WITH +NON-ZERO
015493,000224: 20,2176 02020 ERRBZMF2 TC ERRORS # OVERFLOW WITH +0
015494,000225:
015495,000226: # RESTORE1 AND 2 CHECKS INSTRUCTIONS (WITH STAR) ABILITY TO READ BACK INTO
015496,000227: # ERASABLE MEMORY. NOT NORMALLY INTERESTED IN CONTENTS OF A REGISTER.
015497,000228: # FIRST TIME MANY INSTRUCTIONS ARE USED.
015498,000229: # RESTORE1 ALSO CHECKS INDEX (WITHOUT EXTRACODE) ERASABLE, CA ERASABLE,
015499,000230: # AND MASK ERASABLE.
015500,000231: 20,2177 32016 RESTORE1 CAF SRADRS # ADDRESS OF SR
015501,000232: 20,2200 55377 TS SKEEP7
015502,000233: 20,2201 35235 CA S8BITS # 00377
015503,000234: 20,2202 51377 NDX SKEEP7 # $ INDEX ERASABLE *
015504,000235: 20,2203 54000 TS 0000 # TS SR, C(SR) = 00177
015505,000236: 20,2204 10021 CCS SR # C(SR) = 00077 *
015506,000237: 20,2205 51377 NDX SKEEP7 # CHECKS C(SKEEP7) CORRECT
015507,000238: 20,2206 40000 CS 0000 # C(SR) = 00037
015508,000239: 20,2207 60021 AD SR # C(SR) = 00017 *
015509,000240: 20,2210 00006 EXTEND
015510,000241: 20,2211 20021 MSU SR # C(SR) = 00007 *
![]() |
Page 381 |
015512,000243: 20,2212 00006 EXTEND
015513,000244: 20,2213 60021 SU SR # C(SR) = 00003 *
015514,000245: 20,2214 30021 CA SR # $ C(SR) = +1, C(A) = +3, CA ERASABLE *
015515,000246: 20,2215 70021 MASK SR # $ B(SR) = C(SR) = +1, MASK ERASABLE *
015516,000247: 20,2216 02040 TC +1CHK
015517,000248: 20,2217 00006 EXTEND
015518,000249: 20,2220 70021 MP SR
015519,000250: 20,2221 00006 EXTEND
015520,000251: 20,2222 10021 DV SR
015521,000252: 20,2223 30021 CA SR # $ CA ERASABLE
015522,000253: 20,2224 02040 TC +1CHK # MAKES SURE MASK, MP, AND DV DO NOT EDIT.
015523,000254:
015524,000255: # RESTORE2 ALSO CHECKS XCH ERASABLE,INDEX (WITH EXTRACODE) ERASABLE AND
015525,000256: # FIXED MEMORY, DCS ERASABLE, CA SC, AND DCA ERASABLE.
015526,000257: 20,2225 32015 RESTORE2 CAF ADRS1 # ADDRESS OF SKEEP1
015527,000258: 20,2226 55376 TS SKEEP6
015528,000259: 20,2227 37667 CA S-1
015529,000260: 20,2230 55371 TS SKEEP1 # -1
015530,000261: 20,2231 40000 CS A
015531,000262: 20,2232 57371 XCH SKEEP1 # $ XCH ERASABLE, C(SKEEP1) = +1
015532,000263: 20,2233 57372 XCH SKEEP2 # $ XCH ERASABLE, C(SKEEP2) = -1
015533,000264: 20,2234 00006 EXTEND
015534,000265: 20,2235 51376 NDX SKEEP6 # $ NDX ERASABLE *
015535,000266: 20,2236 30001 DCA 0000 # DCA ERASABLE *
015536,000267: 20,2237 00006 EXTEND
015537,000268: 20,2240 52015 NDX ADRS1 # $ NDX FIXED MEMORY *
015538,000269: 20,2241 40001 DCS 0000 # $ DCS ERASABLE MEMORY *
015539,000270: 20,2242 02041 TC -1CHK # MAKES SURE DCS ERASABLE OK
015540,000271: 20,2243 30001 CA L # $ CA SC
015541,000272: 20,2244 02040 TC +1CHK
015542,000273: 20,2245 00006 EXTEND
015543,000274: 20,2246 51376 NDX SKEEP6 # MAKE SURE C(SKEEP6) IS STILL CORRECT
015544,000275: 20,2247 30001 DCA 0000 # $ DCA ERASABLE
015545,000276: 20,2250 02040 TC +1CHK
015546,000277: 20,2251 30001 CA L
015547,000278: 20,2252 02041 TC -1CHK
015548,000279:
015549,000280: # RESTORE3 CHECKS ABILITY TO RESTORE INSTRUCTIONS BACK INTO ERASABLE
015550,000281: # MEMORY. IT IS ONLY NECESSARY TO RESTORE ONE INSTRUCTION BECAUSE THE
015551,000282: # G REGISTER DOES NOT CHANGE.
015552,000283: # ALSO CHECKS TC TO ERASABLE MEMORY.
015553,000284: 20,2253 37641 RESTORE3 CA SBIT15 # CS
015554,000285: 20,2254 55371 TS SKEEP1 # 40000
015555,000286: 20,2255 37656 CA S+2 # TC Q
015556,000287: 20,2256 55372 TS SKEEP2
015557,000288: 20,2257 37657 CA S+1 # +1
015558,000289: 20,2260 01371 TC SKEEP1 # $ TC ERASABLE
015559,000290: 20,2261 02041 TC -1CHK # FIRST TIME BACK FROM ERASABLE.
015560,000291: 20,2262 01371 TC SKEEP1
015561,000292: 20,2263 02033 TC -0CHK # SECOND TIME BACK FROM ERASABLE.
015562,000293:
![]() |
Page 382 |
015564,000295: # BZFCHK CHECKS ALL PULSES OF BZF.
015565,000296: 20,2264 37664 BZFCHK CAF S+5
015566,000297: 20,2265 00006 EXTEND
015567,000298: 20,2266 12311 BZF ERRBZF1 # $
015568,000299: 20,2267 40000 CS A
015569,000300: 20,2270 00006 EXTEND
015570,000301: 20,2271 12312 BZF ERRBZF2 # $
015571,000302: 20,2272 33431 CA S+MAX
015572,000303: 20,2273 67657 AD S+1 # 01-00000
015573,000304: 20,2274 00006 EXTEND
015574,000305: 20,2275 12313 BZF ERRBZF3 # $
015575,000306: 20,2276 40000 CS A
015576,000307: 20,2277 00006 EXTEND
015577,000308: 20,2300 12314 BZF ERRBZF4 # $
015578,000309: 20,2301 37665 CAF S+ZERO
015579,000310: 20,2302 00006 EXTEND
015580,000311: 20,2303 12305 BZF +2 # $
015581,000312: 20,2304 02020 TC ERRORS
015582,000313: 20,2305 40000 CS A
015583,000314: 20,2306 00006 EXTEND
015584,000315: 20,2307 12315 BZF +6 # $
015585,000316: 20,2310 02020 TC ERRORS
015586,000317: 20,2311 02020 ERRBZF1 TC ERRORS # +NON-ZERO
015587,000318: 20,2312 02020 ERRBZF2 TC ERRORS # -NON-ZERO
015588,000319: 20,2313 02020 ERRBZF3 TC ERRORS # 01-00000
015589,000320: 20,2314 02020 ERRBZF4 TC ERRORS # 10-37777
015590,000321:
015591,000322: # DXCH+DIM CHECKS ALL PULSES OF DXCH AND DIM.
015592,000323: # ALSO CHECKS TS WITH OVERFLOW, TS SC, CA SC, AND AD ERASABLE.
015593,000324: 20,2315 33431 DXCH+DIM CA S+MAX
015594,000325: 20,2316 67656 AD S+2 # OVERFLOW WITH +1
015595,000326: 20,2317 55371 TS SKEEP1 # $ TS WITH OVERFLOW, +1
015596,000327: 20,2320 02020 TC ERRORS
015597,000328: 20,2321 40000 CS A
015598,000329: 20,2322 55372 TS SKEEP2
015599,000330: 20,2323 43431 CS S+MAX
015600,000331: 20,2324 54001 TS L # $ TS SC, 40000
015601,000332: 20,2325 40000 CS A # 37777
015602,000333: 20,2326 53372 DXCH SKEEP1 # $ DXCH ERASABLE
015603,000334: 20,2327 02040 TC +1CHK
015604,000335: 20,2330 30001 CA L # $ CA SC
015605,000336: 20,2331 02041 TC -1CHK
015606,000337: 20,2332 00006 EXTEND
015607,000338: 20,2333 27371 DIM SKEEP1 # $ DIM ERASABLE, DIM + NUMBER, 37776
015608,000339: 20,2334 00006 EXTEND
015609,000340: 20,2335 27372 DIM SKEEP2 # $ DIM - NUMBER, 40001
015610,000341: 20,2336 33431 CA S+MAX # 37777
015611,000342: 20,2337 61372 AD SKEEP2 # $ AD ERASABLE, +1
015612,000343: 20,2340 02040 TC +1CHK
015613,000344: 20,2341 43431 CS S+MAX # 40000
![]() |
Page 383 |
015615,000346: 20,2342 61371 AD SKEEP1 # -1
015616,000347: 20,2343 02041 TC -1CHK
015617,000348: 20,2344 37657 CA S+1 # +1
015618,000349: 20,2345 00006 EXTEND
015619,000350: 20,2346 26000 DIM A # $ DIM SC, DIM +1
015620,000351: 20,2347 00006 EXTEND
015621,000352: 20,2350 26000 DIM A # $ DIM -0
015622,000353: 20,2351 02033 TC -0CHK
015623,000354: 20,2352 00006 EXTEND
015624,000355: 20,2353 26000 DIM A # $ DIM +0
015625,000356: 20,2354 02032 TC +0CHK
015626,000357:
015627,000358: # DAS+INCR CHECKS ALL PULSES OF DAS AND INCR.
015628,000359: # ALSO CHECKS DCA FIXED, LXCH SC, DCA ERASABLE, AD ERASABLE, DCS FIXED,
015629,000360: # DCS ERASABLE, AND XCH SC.
015630,000361: 20,2355 37667 DAS+INCR CA S-1
015631,000362: 20,2356 54001 DAS++ TS L # -1
015632,000363: 20,2357 37656 CA S+2 # +2
015633,000364: 20,2360 20001 DAS A # $ DAS SC, C(A) = +4 AND C(L) = -2
015634,000365: 20,2361 67671 AD S-3 # $ AD FIXED MEMORY
015635,000366: 20,2362 02040 TC +1CHK
015636,000367: 20,2363 37657 CA S+1
015637,000368: 20,2364 60001 AD L # $ AD SC, -1
015638,000369: 20,2365 02041 TC -1CHK
015639,000370: # DAS WITH INTERFLOW IN LOW ORDER AND NET OVERFLOW
015640,000371: 20,2366 00006 DAS+- EXTEND
015641,000372: 20,2367 33432 DCA S+MAX # $DCA FIXED MEMORY
015642,000373: 20,2370 53374 DXCH SKEEP3 # 37777, 40000
015643,000374: 20,2371 37670 CA S-2
015644,000375: 20,2372 54001 TS L
015645,000376: 20,2373 36165 CA S+3 # C(A) = +3, C(L) = -2
015646,000377: 20,2374 21374 DAS SKEEP3 # $ DAS ERASABLE
015647,000378: 20,2375 22000 LXCH A # $ LXCH SC
015648,000379: 20,2376 02032 TC +0CHK
015649,000380: 20,2377 30001 CA L
015650,000381: 20,2400 02040 TC +1CHK
015651,000382: 20,2401 00006 EXTEND
015652,000383: 20,2402 31374 DCA SKEEP3 # $ DCA ERASABLE
015653,000384: 20,2403 22000 LXCH A # C(A) = -1, C(L) = +1
015654,000385: 20,2404 02041 TC -1CHK
015655,000386: 20,2405 30001 CA L
015656,000387: 20,2406 02040 TC +1CHK
015657,000388: # INCRCHK CHECKS ALL INCR PULSES EXCEPT WOVR.
015658,000389: 20,2407 25374 INCRCHK INCR SKEEP4 # $ INCR ERASABLE, -0
015659,000390: 20,2410 61374 AD SKEEP4 # $ AD ERASABLE
015660,000391: 20,2411 02033 TC -0CHK
015661,000392: 20,2412 24000 INCR A # $ INCR SC, +1
015662,000393: 20,2413 02040 TC +1CHK
015663,000394: # DAS WITH OVERFLOW IN LOW ORDER AND NET UNDERFLOW
015664,000395: 20,2414 00006 DAS-+ EXTEND
![]() |
Page 384 |
015666,000397: 20,2415 43432 DCS S+MAX # $ DCS FIXED MEMORY
015667,000398: 20,2416 53372 DXCH SKEEP1 # 40000, 37777
015668,000399: 20,2417 36165 CA S+3 # +3
015669,000400: 20,2420 54001 TS L
015670,000401: 20,2421 40000 CS A # -3
015671,000402: 20,2422 21372 DAS SKEEP1 # $
015672,000403: 20,2423 02041 TC -1CHK
015673,000404: 20,2424 00006 EXTEND
015674,000405: 20,2425 41372 DCS SKEEP1 # $ DCS ERASABLE (+1, -2)
015675,000406: 20,2426 56001 XCH L # $ XCH SC (-2, +1)
015676,000407: 20,2427 67657 AD S+1
015677,000408: 20,2430 02041 TC -1CHK
015678,000409: 20,2431 30001 CA L
015679,000410: 20,2432 02040 TC +1CHK
015680,000411:
015681,000412: # MPCHK CHECKS ALL PULSES OF MP, AUG, AND ADS.
015682,000413: 20,2433 37657 MPCHK CA S+1
015683,000414: 20,2434 00006 EXTEND
015684,000415: 20,2435 24000 AUG A # $ AUG SC, +2
015685,000416: 20,2436 55375 TS SKEEP5 # +2
015686,000417: 20,2437 40000 CS A
015687,000418: 20,2440 54002 TS Q # -2
015688,000419: 20,2441 40000 CS A
015689,000420: 20,2442 00006 MP++ EXTEND
015690,000421: 20,2443 73431 MP S+MAX # $ MP FIXED MEMORY, +1, 37776
015691,000422: 20,2444 60001 AD L # 37777
015692,000423: 20,2445 00006 MP+- EXTEND
015693,000424: 20,2446 70002 MP Q # $ MP SC, -1, 40001
015694,000425: 20,2447 26001 ADS L # $ ADS SC, 40000
015695,000426: 20,2450 62011 AD DVCON
015696,000427: 20,2451 02041 TC -1CHK
015697,000428: 20,2452 30001 CA L
015698,000429: 20,2453 00006 MP-+ EXTEND
015699,000430: 20,2454 71375 MP SKEEP5 # $ MP ERASABLE, -1, 40001
015700,000431: 20,2455 55376 TS SKEEP6
015701,000432: 20,2456 00006 EXTEND
015702,000433: 20,2457 25376 AUG SKEEP6 # $ AUG ERASABLE, -2
015703,000434: 20,2460 60001 AD L # 40000
015704,000435: 20,2461 00006 MP-- EXTEND
015705,000436: 20,2462 71376 MP SKEEP6 # $ +1, 37776
015706,000437: 20,2463 02040 TC +1CHK
015707,000438: 20,2464 40001 CS L # 40001
015708,000439: 20,2465 62011 AD DVCON
015709,000440: 20,2466 02033 TC -0CHK
015710,000441: 20,2467 37657 CA S+1
015711,000442: 20,2470 27376 ADS SKEEP6 # $ ADS ERASABLE, +1
015712,000443: 20,2471 02041 TC -1CHK
015713,000444: 20,2472 31376 CA SKEEP6
015714,000445: 20,2473 02041 TC -1CHK
015715,000446:
![]() |
Page 385 |
015717,000448: # DVCH AND DVQXCHK CHECK ALL OF PULSES OF DV AND QXCH.
015718,000449: # ALSO CHECKS TS WITH UNDERFLOW
015719,000450: 20,2474 37642 DVCHK CA SBIT14 # 20000
015720,000451: 20,2475 55371 TS SKEEP1
015721,000452: 20,2476 60000 AD A # OVERFLOW
015722,000453: 20,2477 67657 AD S+1
015723,000454: 20,2500 54001 TS L # $ TS SC WITH OVERFLOW, +1
015724,000455: 20,2501 02020 TC ERRORS
015725,000456: 20,2502 40000 CS A
015726,000457: 20,2503 55372 TS SKEEP2 # -1
015727,000458: 20,2504 37666 CA S-ZERO # -0
015728,000459: 20,2505 23371 LXCH SKEEP1 # $ LXCH ERASABLE
015729,000460: 20,2506 00006 DV++ EXTEND
015730,000461: 20,2507 11371 DV SKEEP1 # $ DV ERASABLE, C(A) = 20000, C(L) = +0
015731,000462: 20,2510 40000 CS A
015732,000463: 20,2511 22000 LXCH A
015733,000464: 20,2512 02032 TC +0CHK
015734,000465: 20,2513 00006 DV-- EXTEND
015735,000466: 20,2514 11372 DV SKEEP2 # $ 20000, +0
015736,000467: 20,2515 55374 TS SKEEP4 # 20000
015737,000468: 20,2516 40000 CS A
015738,000469: 20,2517 55373 TS SKEEP3 # -(20000)
015739,000470: 20,2520 67642 AD SBIT14
015740,000471: 20,2521 02033 TC -0CHK
015741,000472: 20,2522 30001 CA L
015742,000473: 20,2523 02033 TC -0CHK
015743,000474: 20,2524 33431 DV+- CA S+MAX
015744,000475: 20,2525 54001 TS L
015745,000476: 20,2526 32006 CA S13BITS
015746,000477: 20,2527 00006 EXTEND
015747,000478: 20,2530 11373 DV SKEEP3 # $ -(37777), +(17777)
015748,000479: 20,2531 56001 XCH L
015749,000480: 20,2532 40000 CS A
015750,000481: 20,2533 00006 DV-+ EXTEND
015751,000482: 20,2534 11374 DV SKEEP4 # $ -(37777), -(17777)
015752,000483: 20,2535 62011 AD DVCON
015753,000484: 20,2536 02041 TC -1CHK
015754,000485: 20,2537 33431 CA S+MAX
015755,000486: 20,2540 56001 XCH L # ALSO PUTS 37777 IN L FOR DV-+,-
015756,000487: 20,2541 67642 AD SBIT14
015757,000488: 20,2542 02040 TC +1CHK
015758,000489: 20,2543 42006 DV-+,+ CS S13BITS # -(17777)
015759,000490: 20,2544 00006 EXTEND
015760,000491: 20,2545 11374 DV SKEEP4
015761,000492: 20,2546 60001 AD L # -(37775)
015762,000493: 20,2547 62011 AD DVCON
015763,000494: 20,2550 02040 TC +1CHK
015764,000495: 20,2551 56001 XCH L
015765,000496: 20,2552 02041 TC -1CHK # ALSO PUTS +0 IN L FOR DVQXCH
015766,000497: 20,2553 42011 DVQXCHK CS DVCON
![]() |
Page 386 |
015768,000499: 20,2554 54002 TS Q # 40001
015769,000500: 20,2555 40000 CS A
015770,000501: 20,2556 00006 EXTEND
015771,000502: 20,2557 10002 DV Q # $ DV SC, -(37777), +(37776)
015772,000503: 20,2560 00006 EXTEND
015773,000504: 20,2561 22001 QXCH L # $ QXCH SC, C(L) = 40001, C(Q) = 37776
015774,000505: 20,2562 60002 AD Q
015775,000506: 20,2563 02041 TC -1CHK
015776,000507: 20,2564 30001 CA L
015777,000508: 20,2565 63431 AD S+MAX
015778,000509: 20,2566 02040 TC +1CHK
015779,000510: 20,2567 00006 EXTEND
015780,000511: 20,2570 23371 QXCH SKEEP1 # $ QXCH ERAS., C(Q) = +1, C(SKEEP1) = +3
015781,000512: 20,2571 30002 CA Q
015782,000513: 20,2572 02040 TC +1CHK
015783,000514: 20,2573 41371 CS SKEEP1 # -3
015784,000515: 20,2574 67656 AD S+2
015785,000516: 20,2575 02041 TC -1CHK
015786,000517:
015787,000518: # MSUCHK CHECKS ALL PULSES OF MSU EXCEPT RB WG.
015788,000519: 20,2576 37665 MSUCHK CA S+ZERO
015789,000520: 20,2577 55371 TS SKEEP1 # +0
015790,000521: 20,2600 40000 CS A
015791,000522: 20,2601 55372 TS SKEEP2 # -0
015792,000523: 20,2602 00006 EXTEND
015793,000524: 20,2603 20000 MSU A # $ MSU SC, +0
015794,000525: 20,2604 02032 TC +0CHK
015795,000526: 20,2605 00006 EXTEND
015796,000527: 20,2606 21372 MSU SKEEP2 # $ MSU ERASABLE, +1
015797,000528: 20,2607 02040 TC +1CHK
015798,000529: 20,2610 00006 EXTEND
015799,000530: 20,2611 33432 DCA S+MAX
015800,000531: 20,2612 00006 EXTEND
015801,000532: 20,2613 20001 MSU L # $ CHECKS RUS WA, ALSO -1 FROM NEG. NO.
015802,000533: 20,2614 54000 TS A
015803,000534: 20,2615 02617 TC +2
015804,000535: 20,2616 02020 TC ERRORS
015805,000536: 20,2617 02041 TC -1CHK
015806,000537:
015807,000538: # MASKCHK FINISHES CHECKING MASK INSTRUCTION.
015808,000539: 20,2620 37663 MASKCHK CA S+7
015809,000540: 20,2621 54001 TS L
015810,000541: 20,2622 72014 MASK S-7 # $ MASK FIXED MEMORY
015811,000542: 20,2623 02032 TC +0CHK
015812,000543: 20,2624 37657 CA S+1
015813,000544: 20,2625 70001 MASK L # $ MASK SC
015814,000545: 20,2626 02040 TC +1CHK
015815,000546:
015816,000547: # NDX+SU FINISHES CHECKING BOTH INDEX INSTRUCTIONS. ALSO CHECKS ALL OF SU
015817,000548: # EXCEPT RB WG.
![]() |
Page 387 |
015819,000550: 20,2627 37657 NDX+SU CA S+1
015820,000551: 20,2630 54001 TS L
015821,000552: 20,2631 55371 TS SKEEP1
015822,000553: 20,2632 50000 NDX A # $ NDX SC
015823,000554: 20,2633 60000 AD 0000 # AD L, +2
015824,000555: 20,2634 00006 EXTEND
015825,000556: 20,2635 61371 SU SKEEP1 # $ SU ERASABLE
015826,000557: 20,2636 02040 TC +1CHK
015827,000558: 20,2637 00006 EXTEND
015828,000559: 20,2640 50001 NDX L # $ NDX SC
015829,000560: 20,2641 60000 SU 0000 # $ SU SC, SU L
015830,000561: 20,2642 02041 TC -1CHK
015831,000562:
015832,000563: # D--SC CHECKS DCS SC, DXCH SC, AND DCA SC.
015833,000564: 20,2643 37656 D--SC CA S+2
015834,000565: 20,2644 54001 TS L # +2
015835,000566: 20,2645 37657 CA S+1
015836,000567: 20,2646 00006 EXTEND
015837,000568: 20,2647 40001 DCS A # $ DCS SC, C(L) = -2
015838,000569: 20,2650 02041 TC -1CHK
015839,000570: # AFTER DXCH C(A) = B(Q) = +3, C(L) = B(A) = +0, C(Q) = B(L) = -1.
015840,000571: 20,2651 52002 DXCH L # $ DXCH SC
015841,000572: 20,2652 55373 TS SKEEP3
015842,000573: 20,2653 60002 AD Q
015843,000574: 20,2654 02040 TC +1CHK
015844,000575: 20,2655 30001 CA L
015845,000576: 20,2656 02032 TC +0CHK
015846,000577: 20,2657 37667 CA S-1
015847,000578: 20,2660 54002 TS Q
015848,000579: 20,2661 40000 CS A
015849,000580: 20,2662 00006 EXTEND
015850,000581: # AFTER DCA C(A) = C(L) = C(Q) = B(Q) = -1.
015851,000582: 20,2663 30002 DCA L # $ DCA SC
015852,000583: 20,2664 60002 AD Q
015853,000584: 20,2665 61373 AD SKEEP3
015854,000585: 20,2666 02040 TC +1CHK
015855,000586: 20,2667 30001 CA L
015856,000587: 20,2670 02041 TC -1CHK
015857,000588:
015858,000589: # D--LCHK CHECKS THAT OVERFLOW IS LOST IN PROCESS OF GOING THROUGH L REG.
015859,000590: # ALSO CHECKS THAT Q WILL HOLD 16 BITS
015860,000591: 20,2671 37670 D--LCHK CA S-2
015861,000592: 20,2672 54002 TS Q
015862,000593: 20,2673 33432 CA S-MAX
015863,000594: 20,2674 26002 ADS Q
015864,000595: 20,2675 40002 CS Q
015865,000596: 20,2676 54000 TS A
015866,000597: 20,2677 02020 TC ERRORS
015867,000598: 20,2700 00006 EXTEND
015868,000599: 20,2701 30002 DCA L
![]() |
Page 388 |
015870,000601: 20,2702 54000 TS A
015871,000602: 20,2703 02705 TC +2
015872,000603: 20,2704 02020 TC ERRORS
015873,000604: 20,2705 02041 TC -1CHK
015874,000605:
015875,000606: # CHECKS OVERFLOW, UNDERFLOW,END-AROUND-CARRY, AND SIGN CHANGE OF ADDER.
015876,000607: # ALSO CHECKS ADS SC WITH OVERFLOW AND TS A WITH UNDERFLOW
015877,000608: 20,2706 37642 ADDRCHK CA SBIT14 # 20000
015878,000609: 20,2707 54002 TS Q
015879,000610: 20,2710 26002 ADS Q # $ ADS SC, OVERFLOW
015880,000611: 20,2711 26002 ADS Q # UNDERFLOW
015881,000612: 20,2712 54000 TS A # $ TS SC WITH UNDERFLOW
015882,000613: 20,2713 02020 TC ERRORS
015883,000614: 20,2714 26002 ADS Q
015884,000615: 20,2715 02040 TC +1CHK
015885,000616:
015886,000617: # RUPTCHK CHECKS THAT INTERRUPT DOES NOT OCCUR WHILE OVERFLOW OR UNDERFLOW
015887,000618: # IS IN THE A REGISTER. ALSO CHECKS THAT INHINT RELINT WORK PROPERLY.
015888,000619: 20,2716 00004 RUPTCHK INHINT
015889,000620: 20,2717 37665 CA S+ZERO
015890,000621: 20,2720 54015 TS ZRUPT
015891,000622: 20,2721 00003 RELINT
015892,000623: 20,2722 60027 AD TIME4
015893,000624: 20,2723 55371 TS SKEEP1
015894,000625: 20,2724 41371 TENMS CS SKEEP1
015895,000626: 20,2725 60027 AD TIME4 # WAIT FOR NEXT TIME4 INCREMENT
015896,000627: 20,2726 00006 EXTEND
015897,000628: 20,2727 12724 BZF TENMS
015898,000629: 20,2730 00004 INHINT
015899,000630: 20,2731 30015 CA ZRUPT
015900,000631: 20,2732 00006 EXTEND
015901,000632: 20,2733 12735 BZF +2 # NO INTERRUPT.
015902,000633: 20,2734 02716 TC RUPTCHK # THERE WAS AN INTERRUPT. START AGAIN.
015903,000634: 20,2735 37657 CAF S+1 # 2 1/2 MS UNTILE NEXT T3 INTERRUPT.
015904,000635: 20,2736 04536 TC WAITLIST
015905,000636: 20,2737 E3,1400 EBANK= LST1
015906,000637: 20,2737 02762 40003 2CADR TSKADRS
015907,000638:
015908,000639: 20,2741 33431 CA S+MAX
015909,000640: 20,2742 62010 AD OVCON # CONTROLS TIME SPENT IN OF-UF LOOP
015910,000641: 20,2743 00003 RELINT
015911,000642: 20,2744 40000 WAIT CS A
015912,000643: 20,2745 10000 CCS A
015913,000644: 20,2746 02752 TC INHNTCHK
015914,000645: 20,2747 02756 RUPTCON ADRES C(BRUPT)
015915,000646: 20,2750 67656 AD S+2
015916,000647: 20,2751 02744 TC WAIT
015917,000648: 20,2752 00004 INHNTCHK INHINT # T3 RUPT SHOULD BE WAITING
015918,000649: 20,2753 55375 TS SKEEP5
015919,000650: 20,2754 02020 TC ERRORS
![]() |
Page 389 |
015921,000652: 20,2755 00003 RELINT
015922,000653: 20,2756 40015 C(BRUPT) CS ZRUPT # INTERRUPT SHOULD HAPPEN HERE
015923,000654: 20,2757 00006 EXTEND
015924,000655: 20,2760 12020 BZF ERRORS # MAKES SURE AN INTERRUPT DID HAPPEN
015925,000656: 20,2761 02766 TC +5 # END OF RUPTCHK
015926,000657: 20,2762 40015 TSKADRS CS ZRUPT
015927,000658: 20,2763 62747 AD RUPTCON
015928,000659: 20,2764 02041 TC -1CHK
015929,000660: 20,2765 04602 TC TASKOVER
015930,000661:
015931,000662: 20,2766 02047 TC SMODECHK
015932,000663:
015933,000664: # IN-OUT1 CHECKS ALL PULSES OF WRITE AND READ
015934,000665: 20,2767 37667 IN-OUT1 CA S-1
015935,000666: 20,2770 00006 WRITECHK EXTEND
015936,000667: 20,2771 01002 WRITE Q
015937,000668: 20,2772 22002 LXCH Q # PUT C(Q) IN L
015938,000669: 20,2773 02041 TC -1CHK
015939,000670: 20,2774 00006 READCHK EXTEND # C(L) = 77776
015940,000671: 20,2775 00001 READ L
015941,000672: 20,2776 02041 TC -1CHK
015942,000673: 20,2777 30001 CA L
015943,000674: 20,3000 02041 TC -1CHK
015944,000675:
015945,000676: # IN-OUT2 CHECKS ALL PULSES OF ROR AND WOR
015946,000677: 20,3001 46165 IN-OUT2 CS S+3
015947,000678: 20,3002 54001 RORCHK TS L # 77774
015948,000679: 20,3003 32011 CA DVCON # 37776
015949,000680: 20,3004 00006 EXTEND
015950,000681: 20,3005 04001 ROR L # $ ROR, -1
015951,000682: 20,3006 02041 TC -1CHK
015952,000683: 20,3007 32011 WORCHK CA DVCON # C(L) STILL 77774
015953,000684: 20,3010 00006 EXTEND
015954,000685: 20,3011 05001 WOR L # $ WOR, -1
015955,000686: 20,3012 02041 TC -1CHK
015956,000687: 20,3013 30001 CA L
015957,000688: 20,3014 02041 TC -1CHK
015958,000689:
015959,000690: # IN-OUT3 CHECKS ALL PULSES OF RAND, WAND, AND RXOR
015960,000691: 20,3015 42011 IN-OUT3 CS DVCON
015961,000692: 20,3016 54001 RANDCHK TS L # 40001
015962,000693: 20,3017 32006 CA S13BITS # 17777
015963,000694: 20,3020 00006 EXTEND
015964,000695: 20,3021 02001 RAND L # $ RAND, +1
015965,000696: 20,3022 02040 TC +1CHK
015966,000697: 20,3023 32006 WANDCHK CA S13BITS # C(L) STILL 40001
015967,000698: 20,3024 00006 EXTEND
015968,000699: 20,3025 03001 WAND L # $ WAND, +1
015969,000700: 20,3026 02040 TC +1CHK
015970,000701: 20,3027 47664 CS S+5
![]() |
Page 390 |
015972,000703: 20,3030 56001 XCH L # ALSO PUT -5 IN L FOR RXORCHK
015973,000704: 20,3031 02040 TC +1CHK
015974,000705: 20,3032 36162 RXORCHK CA S+6
015975,000706: 20,3033 00006 EXTEND
015976,000707: 20,3034 06001 RXOR L # $ RXOR, -3
015977,000708: 20,3035 67656 AD S+2
015978,000709: 20,3036 02041 TC -1CHK
015979,000710: 20,3037 30001 CA L
015980,000711: 20,3040 67655 AD S+4
015981,000712: 20,3041 02041 TC -1CHK
015982,000713:
015983,000714: 20,3042 02047 TC SMODECHK
015984,000715:
015985,000716: # COUNTCHK COUNTS UP 14 BIT NUMBER WITH SIGN.
015986,000717: # TAKES APPROXIMATELY 8.7 SECONDS.
015987,000718: # ** PUT IN CCS NEWJOB FOR ROPE.
015988,000719: 20,3043 00006 COUNTCHK EXTEND
015989,000720: 20,3044 33432 DCA S+MAX
015990,000721: 20,3045 53377 DXCH SKEEP6 # PUT 37777 IN SKEEP6 AND 40000 IN SKEEP7
015991,000722: 20,3046 31376 +LOOP CA SKEEP6
015992,000723: 20,3047 56002 XCH Q
015993,000724: 20,3050 00006 EXTEND
015994,000725: 20,3051 40002 DCS L
015995,000726: 20,3052 10000 CCS A
015996,000727: 20,3053 03062 TC -NMBR
015997,000728: 20,3054 03067 TC ENDCOUNT
015998,000729: 20,3055 55376 TS SKEEP6
015999,000730: 20,3056 61377 AD SKEEP7
016000,000731: 20,3057 02041 TC -1CHK
016001,000732: 20,3060 25377 INCR SKEEP7
016002,000733: 20,3061 03046 TC +LOOP
016003,000734: 20,3062 60001 -NMBR AD L
016004,000735: 20,3063 02041 TC -1CHK
016005,000736: 20,3064 04457 TC CHECKNJ # CHECK FOR NEW JOB
016006,000737: 20,3065 41376 CS SKEEP6
016007,000738: 20,3066 03047 TC +LOOP +1
016008,000739: 20,3067 31377 ENDCOUNT CA SKEEP7 # -0
016009,000740: 20,3070 61376 AD SKEEP6 # SKEEP6 SHOULD BE +0
016010,000741: 20,3071 02033 TC -0CHK
016011,000742:
016012,000743: # O-UFLOW COUNTS DOWN OVERFLOW AND UNDERFLOW NUMBERS.
016013,000744: # TAKES APPROXIMATELY 10.8 SECONDS
016014,000745: 20,3072 33432 O-UFLOW CA S-MAX
016015,000746: 20,3073 55375 TS SKEEP5 # 40000
016016,000747: 20,3074 40000 CS A
016017,000748: 20,3075 00004 OFLOOP INHINT
016018,000749: 20,3076 63431 AD S+MAX
016019,000750: 20,3077 67657 AD S+1
016020,000751: 20,3100 56002 XCH Q
016021,000752: 20,3101 10002 CCS Q
![]() |
Page 391 |
016023,000754: 20,3102 03117 TC -NMBRS
016024,000755: 20,3103 02020 TC ERRORS # CAN PUT IN CONSTANT
016025,000756: 20,3104 55373 TS SKEEP3
016026,000757: 20,3105 02020 TC ERRORS
016027,000758: 20,3106 31373 CA SKEEP3
016028,000759: 20,3107 61375 AD SKEEP5
016029,000760: 20,3110 02041 TC -1CHK
016030,000761: 20,3111 00003 RELINT
016031,000762: 20,3112 04457 TC CHECKNJ # CHECK FOR NEW JOB
016032,000763: 20,3113 31374 CA SKEEP4
016033,000764: 20,3114 00006 EXTEND
016034,000765: 20,3115 27375 DIM SKEEP5
016035,000766: 20,3116 03075 TC OFLOOP
016036,000767: 20,3117 55374 -NMBRS TS SKEEP4
016037,000768: 20,3120 03130 TC ENDOFUF
016038,000769: 20,3121 31374 CA SKEEP4
016039,000770: 20,3122 61375 AD SKEEP5
016040,000771: 20,3123 02041 TC -1CHK
016041,000772: 20,3124 31375 CA SKEEP5
016042,000773: 20,3125 63432 AD S-MAX
016043,000774: 20,3126 67667 AD S-1
016044,000775: 20,3127 03100 TC OFLOOP +3
016045,000776: 20,3130 31375 ENDOFUF CA SKEEP5
016046,000777: 20,3131 02033 TC -0CHK
016047,000778: 20,3132 41374 CS SKEEP4
016048,000779: 20,3133 62011 AD DVCON
016049,000780: 20,3134 02041 TC -1CHK
016050,000781: 20,3135 00003 RELINT
016051,000782:
016052,000783: 20,3136 02047 TC SMODECHK
016053,000784:
016054,000785: # SKEEP7 HOLDS LOWEST OF TWO ADDRESSES BEING CHECKED.
016055,000786: # SKEEP6 HOLDS B(X+1).
016056,000787: # SKEEP5 HOLDS B(X).
016057,000788: # SKEEP4 CONTROLS CHECKING OF NON-SWITCHABLE ERASABLE MEMORY WITH
016058,000789: # BANK NUMBERS IN EB.
016059,000790: # SKEEP3 HOLDS LAST ADDRESS BEING CHECKED (HIGHEST ADDRESS).
016060,000791: # SKEEP2 HOLDS C(EBANK) DURING CHECKNJ
016061,000792: # ERASCHK TAKES APPROXMATELY 7 SECONDS
016062,000793: 20,3137 37657 ERASCHK CA S+1
016063,000794: 20,3140 55374 TS SKEEP4
016064,000795: 20,3141 37665 0EBANK CA S+ZERO
016065,000796: 20,3142 54003 TS EBANK
016066,000797: 20,3143 32004 CA ERASCON3 # 01462
016067,000798: 20,3144 55377 TS SKEEP7 # STARTING ADDRESS
016068,000799: 20,3145 36426 CA S10BITS # 01777
016069,000800: 20,3146 55373 TS SKEEP3 # LAST ADDRESS CHECKED
016070,000801: 20,3147 03167 TC ERASLOOP
016071,000802:
016072,000803: 20,3150 32003 E134567B CA ERASCON6 # 01400
![]() |
Page 392 |
016074,000805: 20,3151 55377 TS SKEEP7 # STARTING ADDRESS
016075,000806: 20,3152 36426 CA S10BITS # 01777
016076,000807: 20,3153 55373 TS SKEEP3 # LAST ADDRESS CHECKED
016077,000808: 20,3154 03167 TC ERASLOOP
016078,000809:
016079,000810: 20,3155 32003 2EBANK CA ERASCON6 # 01400
016080,000811: 20,3156 55377 TS SKEEP7 # STARTING ADDRESS
016081,000812: 20,3157 32005 CA ERASCON4 # 01774
016082,000813: 20,3160 55373 TS SKEEP3 # LAST ADDRESS CHECKED
016083,000814: 20,3161 03167 TC ERASLOOP
016084,000815:
016085,000816: 20,3162 55374 NOEBANK TS SKEEP4 # +0
016086,000817: 20,3163 32001 CA ERASCON1 # 00062
016087,000818: 20,3164 55377 TS SKEEP7 # STARTING ADDRESS
016088,000819: 20,3165 32002 CA ERASCON2 # 01374
016089,000820: 20,3166 55373 TS SKEEP3 # LAST ADDRESS CHECKED
016090,000821:
016091,000822: 20,3167 00004 ERASLOOP INHINT
016092,000823: 20,3170 31377 CA SKEEP7
016093,000824: 20,3171 54001 TS L
016094,000825: 20,3172 24001 INCR L
016095,000826: 20,3173 50000 NDX A
016096,000827: 20,3174 52001 DXCH 0000 # PUTS OWN ADDRESS IN X AND X +1
016097,000828: 20,3175 53376 DXCH SKEEP5 # STORES C(X) AND C(X-1) IN SKEEP6 AND 5
016098,000829: 20,3176 51377 NDX SKEEP7
016099,000830: 20,3177 40001 CS 0001 # CS X+1
016100,000831: 20,3200 51377 NDX SKEEP7
016101,000832: 20,3201 60000 AD 0000 # AD X
016102,000833: 20,3202 02041 TC -1CHK
016103,000834: 20,3203 00006 EXTEND
016104,000835: 20,3204 51377 NDX SKEEP7
016105,000836: 20,3205 40001 DCS 0000 # COMPLEMENT OF ADDRESS OF X AND X+1
016106,000837: 20,3206 51377 NDX SKEEP7
016107,000838: 20,3207 52001 DXCH 0000 # PUT COMPLEMENT OF ADDRESS OF X AND X+1
016108,000839: 20,3210 51377 NDX SKEEP7
016109,000840: 20,3211 40000 CS 0000 # CS X
016110,000841: 20,3212 51377 NDX SKEEP7
016111,000842: 20,3213 60001 AD 0001 # AD X+1
016112,000843: 20,3214 02041 TC -1CHK
016113,000844: 20,3215 53376 DXCH SKEEP5
016114,000845: 20,3216 51377 NDX SKEEP7
016115,000846: 20,3217 52001 DXCH 0000 # PUT B(X) AND B(X+1) BACK INTO X AND X+1
016116,000847: 20,3220 00003 RELINT
016117,000848: 20,3221 30003 CA EBANK # STORES C(EBANK)
016118,000849: 20,3222 55372 TS SKEEP2
016119,000850: 20,3223 04457 TC CHECKNJ # CHECK FOR NEW JOB
016120,000851: 20,3224 31372 CA SKEEP2 # REPLACES B(EBANK)
016121,000852: 20,3225 54003 TS EBANK
016122,000853: 20,3226 25377 INCR SKEEP7
016123,000854: 20,3227 41377 CS SKEEP7
![]() |
Page 393 |
016125,000856: 20,3230 61373 AD SKEEP3
016126,000857: 20,3231 00006 EXTEND
016127,000858: 20,3232 13234 BZF +2
016128,000859: 20,3233 03167 TC ERASLOOP # GO TO NEXT ADDRESS IN SAME BANK
016129,000860: 20,3234 11374 CCS SKEEP4
016130,000861: 20,3235 03162 TC NOEBANK
016131,000862: 20,3236 25374 INCR SKEEP4 # PUT +1 IN SKEEP4
016132,000863: 20,3237 30003 CA EBANK
016133,000864: 20,3240 67647 AD SBIT9
016134,000865: 20,3241 54003 TS EBANK
016135,000866: 20,3242 62013 AD ERASCON5 # 76377 CHECK FOR BANK E3
016136,000867: 20,3243 00006 EXTEND
016137,000868: 20,3244 13155 BZF 2EBANK
016138,000869: 20,3245 10003 CCS EBANK
016139,000870: 20,3246 03150 TC E134567B # GO TO EBANKS 1,3,4,5,6, AND 7
016140,000871: 20,3247 32003 CA ERASCON6 # END OF ERASCHK
016141,000872: 20,3250 54003 TS EBANK
016142,000873: # CNTRCHK PERFORMS A CS OF ALL REGISTERS FROM OCT. 61 THROUGH OCT. 10.
016143,000874: # INCLUDED ARE ALL COUNTERS, T6-1, CYCLE AND SHIFT, AND ALL RUPT REGISTERS
016144,000875: 20,3251 32000 CNTRCHK CAF CNTRCON # 00051
016145,000876: 20,3252 55372 CNTRLOOP TS SKEEP2
016146,000877: 20,3253 67654 AD SBIT4 # +10 OCTAL
016147,000878: 20,3254 50000 INDEX A
016148,000879: 20,3255 40000 CS 0000
016149,000880: 20,3256 11372 CCS SKEEP2
016150,000881: 20,3257 03252 TC CNTRLOOP
016151,000882:
016152,000883: # CYCLSHFT CHECKS THE CYCLE AND SHIFT REGISTERS
016153,000884: 20,3260 32007 CYCLSHFT CA CONC+S1 # 25252
016154,000885: 20,3261 54020 TS CYR # C(CYR) = 12525
016155,000886: 20,3262 54022 TS CYL # C(CYL) = 52524
016156,000887: 20,3263 54021 TS SR # C(SR) = 12525
016157,000888: 20,3264 54023 TS EDOP # C(EDOP) = 00125
016158,000889: 20,3265 60020 AD CYR # 37777 C(CYR) = 45252
016159,000890: 20,3266 60022 AD CYL # 00-12524 C(CYL) = 25251
016160,000891: 20,3267 60021 AD SR # 00-25251 C(SR) = 05252
016161,000892: 20,3270 60023 AD EDOP # 00-25376 C(EDOP) = +0
016162,000893: 20,3271 62012 AD CONC+S2 # C(CONC+S2) = 52400
016163,000894: 20,3272 02041 TC -1CHK
016164,000895: 20,3273 60020 AD CYR # 45252
016165,000896: 20,3274 60022 AD CYL # 72523
016166,000897: 20,3275 60021 AD SR # 77775
016167,000898: 20,3276 60023 AD EDOP # 77775
016168,000899: 20,3277 67657 AD S+1 # 77776
016169,000900: 20,3300 02041 TC -1CHK
016170,000901:
016171,000902: 20,3301 25367 INCR SCOUNT +1
016172,000903: 20,3302 02047 TC SMODECHK
016173,000904: 20,3303 03307 TC ROPECHK
016174,000905:
![]() |
Page 394 |
016176,000907: # SKEEP1 HOLDS SUM
016177,000908: # SKEEP2 HOLDS PRESENT CONTENTS OF ADDRESS IN ROPECHK AND SHOWSUM ROUTINES
016178,000909: # SKEEP2 HOLDS BANK NUMBER IN LOW ORDER BITS DURING SHOWSUM DISPLAY
016179,000910: # SKEEP3 HOLDS PRESENT ADDRESS (00000 TO 01777 IN COMMON FIXED BANKS)
016180,000911: # (04000 TO 07777 IN FXFX BANKS)
016181,000912: # SKEEP3 HOLDS BUGGER WORD DURING SHOWSUM DISPLAY
016182,000913: # SKEEP4 HOLDS BANK NUMBER
016183,000914: # SKEEP5 COUNTS 2 SUCCESSIVE TC SELF WORDS
016184,000915: # SKEEP6 CONTROLS ROPECHK OR SHOWSUM OPTION
016185,000916: # SKEEP7 CONTROLS WHEN ROUNTINE IS IN COMMON FIXED OR FIXED FIXED BANKS
016186,000917:
016187,000918: 20,3304 05304 STSHOSUM TC GRABDSP
016188,000919: 20,3305 05312 TC PREGBSY
016189,000920: 20,3306 03311 TC +3
016190,000921: 20,3307 37666 ROPECHK CA S-ZERO
016191,000922: 20,3310 55376 TS SKEEP6 # ROPECHK OPTION
016192,000923: 20,3311 37665 CA S+ZERO
016193,000924: 20,3312 55374 TS SKEEP4 # BANK NUMBER
016194,000925: 20,3313 37657 CA S+1
016195,000926: 20,3314 55377 COMMFX TS SKEEP7
016196,000927: 20,3315 37665 CA S+ZERO
016197,000928: 20,3316 55371 TS SKEEP1
016198,000929: 20,3317 55373 TS SKEEP3
016199,000930: 20,3320 37657 CA S+1
016200,000931: 20,3321 55375 TS SKEEP5 # COUNTS DOWN 2 TC SELF WORDS
016201,000932: 20,3322 31373 COMADRS CA SKEEP3
016202,000933: 20,3323 61374 AD SKEEP4
016203,000934: 20,3324 04116 TC DATACALL
016204,000935: 20,3325 03351 TC ADSUM
016205,000936: 20,3326 67645 AD SBIT11 # 02000
016206,000937: 20,3327 03362 TC ADRSCHK
016207,000938:
016208,000939: 20,3330 40000 FXFX CS A
016209,000940: 20,3331 55377 TS SKEEP7
016210,000941: 20,3332 00006 EXTEND
016211,000942: 20,3333 13336 BZF +3
016212,000943: 20,3334 37644 CA SBIT12 # 04000, STARTING ADDRESS OF BANK 02
016213,000944: 20,3335 03337 TC +2
016214,000945: 20,3336 34506 CA SBNK03 # 06000, STARTING ADDRESS OF BANK 03
016215,000946: 20,3337 55373 TS SKEEP3
016216,000947: 20,3340 37665 CA S+ZERO
016217,000948: 20,3341 55371 TS SKEEP1
016218,000949: 20,3342 37657 CA S+1
016219,000950: 20,3343 55375 TS SKEEP5 # COUNTS DOWN 2 TC SELF WORDS
016220,000951: 20,3344 00006 FXADRS EXTEND
016221,000952: 20,3345 51373 NDX SKEEP3
016222,000953: 20,3346 30001 DCA 0000
016223,000954: 20,3347 03351 TC ADSUM
016224,000955: 20,3350 03362 TC ADRSCHK
016225,000956:
![]() |
Page 395 |
016227,000958: 20,3351 55372 ADSUM TS SKEEP2
016228,000959: 20,3352 61371 AD SKEEP1
016229,000960: 20,3353 55371 TS SKEEP1
016230,000961: 20,3354 37665 CAF S+ZERO
016231,000962: 20,3355 61371 AD SKEEP1
016232,000963: 20,3356 55371 TS SKEEP1
016233,000964: 20,3357 41372 CS SKEEP2
016234,000965: 20,3360 61373 AD SKEEP3
016235,000966: 20,3361 00002 TC Q
016236,000967:
016237,000968: 20,3362 10000 ADRSCHK CCS A
016238,000969: 20,3363 03373 TC CONTINU
016239,000970: 20,3364 03373 TC CONTINU
016240,000971: 20,3365 03373 TC CONTINU
016241,000972: 20,3366 11375 CCS SKEEP5
016242,000973: 20,3367 03374 TC CONTINU +1
016243,000974: 20,3370 30001 CA L
016244,000975: 20,3371 03351 TC ADSUM
016245,000976: 20,3372 03434 TC SOPTION # GO TO ROPECHK SHOSUM OPTION
016246,000977: 20,3373 37657 CONTINU CA S+1 # MAKE SURE TWO CONSECUTIVE TC SELF WORDS
016247,000978: 20,3374 55375 TS SKEEP5
016248,000979: 20,3375 11376 CCS SKEEP6 # +1 IN SKEEP6, SHOWSUM VIA EXECUTIVE
016249,000980: 20,3376 10067 CCS NEWJOB
016250,000981: 20,3377 04404 TC CHANG1
016251,000982: 20,3400 03402 TC +2
016252,000983: 20,3401 04457 TC CHECKNJ # -0 IN SKEEP6 FOR ROPECHK
016253,000984:
016254,000985: 20,3402 25373 ADRS+1 INCR SKEEP3
016255,000986: 20,3403 11377 CCS SKEEP7
016256,000987: 20,3404 03322 TC COMADRS
016257,000988: 20,3405 03322 TC COMADRS
016258,000989: 20,3406 03344 TC FXADRS
016259,000990: 20,3407 03344 TC FXADRS
016260,000991:
016261,000992: 20,3410 31374 NXTBNK CA SKEEP4
016262,000993: 20,3411 67645 AD SBIT11
016263,000994: 20,3412 55374 TS SKEEP4
016264,000995: 20,3413 03416 TC +3
016265,000996: 20,3414 37641 CA SBIT15
016266,000997: 20,3415 55374 TS SKEEP4
016267,000998: 20,3416 63437 AD NOBANKNO # FIRST BANK NOT USED.
016268,000999: 20,3417 00006 EXTEND
016269,001000: 20,3420 13427 BZF ENDSUMS
016270,001001: 20,3421 11377 CCS SKEEP7
016271,001002: 20,3422 03314 TC COMMFX
016272,001003: 20,3423 37657 CA S+1
016273,001004: 20,3424 03330 TC FXFX
016274,001005: 20,3425 37651 CA SBIT7 # CAN BE ANY NUMBER LARGER THAN 36 DECIMAL
016275,001006: 20,3426 03314 TC COMMFX
016276,001007:
![]() |
Page 396 |
016278,001009: 20,3427 11376 ENDSUMS CCS SKEEP6
016279,001010: 20,3430 03311 TC ROPECHK +2 # START SHOWSUM AGAIN
016280,001011: 20,3431 37777 S+MAX OCTAL 37777 # ** S+MAX AND S-MAX MUST BE TOGETHER
016281,001012: 20,3432 40000 S-MAX OCTAL 40000 # FOR DOUBLE PRECISION CHECKING.
016282,001013: 20,3433 03515 TC MPNMBRS -1 # ROPECHK IS COMPLETED
016283,001014:
016284,001015: 20,3434 11376 SOPTION CCS SKEEP6 # DECIDE ON ROPECHK OR SHOWSUM OPTION
016285,001016: 20,3435 03471 TC SDISPLAY
016286,001017: 20,3436 00501 VNCON OCTAL 00501 # USED IN SHOWSUM. DISPLAY 3 REGISTERS.
016287,001018: 20,3437 33777 NOBANKNO OCTAL 33777 # * CONSTANT, COMPLEMENT OF LAST BANK +1.
016288,001019: # CHANGE TO 33777 IF BANK 21 IS LAST BANK USED
016289,001020: 20,3440 11371 BNKCHK CCS SKEEP1 # WHEN C(SKEEP6) = -0
016290,001021: 20,3441 03445 TC +4
016291,001022: 20,3442 41471 SCADR FCADR SDISPLAY # * CONSTANT, USED IN SHOWSUM ONLY
016292,001023: 20,3443 03445 TC +2
016293,001024: 20,3444 37667 CA S-1 # FOR BANK 00
016294,001025: 20,3445 55371 TS SKEEP1
016295,001026: 20,3446 31374 CA SKEEP4
016296,001027: 20,3447 05207 TC LEFT5
016297,001028: 20,3450 40000 CS A
016298,001029: 20,3451 61371 AD SKEEP1
016299,001030: 20,3452 02041 TC -1CHK
016300,001031: 20,3453 03410 TC NXTBNK
016301,001032:
016302,001033: # INITIALIZE SKEEP6 TO +1 TO PERFORM SHOWSUM
016303,001034: # START OF ROUTINE THAT DISPLAYS SUM OF EACH BANK
016304,001035: 20,3454 37657 SHOWSUM CAF S+1
016305,001036: 20,3455 55376 TS SKEEP6 # SHOWSUM OPTION
016306,001037: 20,3456 37665 CAF S+ZERO
016307,001038: 20,3457 55361 TS SMODE # PUT SELF-CHECK TO SLEEP
016308,001039: 20,3460 32017 CA SELFADRS # INITIALIZE SELFRET TO GO TO SELFCHK.
016309,001040: 20,3461 55360 TS SELFRET
016310,001041: 20,3462 00004 INHINT
016311,001042: 20,3463 37645 CAF PRIO2
016312,001043: 20,3464 04363 TC NOVAC
016313,001044: 20,3465 1360 EBANK= SELFRET
016314,001045: 20,3465 03304 40002 2CADR STSHOSUM
016315,001046:
016316,001047: 20,3467 00003 RELINT
016317,001048: 20,3470 04440 TC ENDOFJOB
016318,001049:
016319,001050: 20,3471 31374 SDISPLAY CA SKEEP4
016320,001051: 20,3472 05207 TC LEFT5 # CYCLES LEFT 5 PLACES
016321,001052: 20,3473 57372 XCH SKEEP2 # SKEEP2 HOLDS BANK NUMBER DURING DISPLAY
016322,001053: 20,3474 55373 TS SKEEP3 # SKEEP3 HOLDS BUGGER WORD DURING DISPLAY
016323,001054: 20,3475 32015 NOKILL CAF ADRS1 # ADDRESS OF SKEEP1
016324,001055: 20,3476 54142 TS MPAC +2
016325,001056: 20,3477 33436 CAF VNCON # DISPLAY 3 REGISTERS
016326,001057: 20,3500 05107 TC NVSUB
016327,001058: 20,3501 03513 TC SBUSY
![]() |
Page 397 |
016329,001060: 20,3502 05274 TC FLASHON
016330,001061: 20,3503 05140 TC ENDIDLE
016331,001062: 20,3504 03507 TC +3 # FINISHED WITH SHOWSUM
016332,001063: 20,3505 03410 TC NXTBNK
016333,001064: 20,3506 03475 TC NOKILL # SO CAN LOAD WITHOUT KILLING SHOWSUM
016334,001065: 20,3507 05401 TC FREEDSP
016335,001066: 20,3510 32017 CA SELFADRS # INITIALIZE SKEEP1 TO GO TO SELFCHK.
016336,001067: 20,3511 55371 TS SKEEP1
016337,001068: 20,3512 04440 TC ENDOFJOB
016338,001069:
016339,001070: 20,3513 33442 SBUSY CAF SCADR
016340,001071: 20,3514 05327 TC NVSUBUSY
016341,001072:
016342,001073: 20,3515 02047 TC SMODECHK
016343,001074:
016344,001075: # MULTIPLY SUBROUTINE TAKES APPROXIMATELY 19 SECONDS.
016345,001076: # (37777) X (37777 THROUGH 00001)
016346,001077: # C(A) COUNTS DOWN. C(L) COUNTS UP.
016347,001078: 20,3516 33431 MPNMBRS CAF S+MAX
016348,001079: 20,3517 55372 TS SKEEP2
016349,001080: 20,3520 33431 CAF S+MAX
016350,001081: 20,3521 00006 EXTEND
016351,001082: 20,3522 71372 MP SKEEP2
016352,001083: 20,3523 60001 AD L # C(A) = 37777
016353,001084: 20,3524 63432 AD S-MAX
016354,001085: 20,3525 02033 TC -0CHK
016355,001086: 20,3526 04457 TC CHECKNJ # CHECK FOR NEW JOB
016356,001087: 20,3527 11372 CCS SKEEP2
016357,001088: 20,3530 55372 TS SKEEP2
016358,001089: 20,3531 11372 CCS SKEEP2
016359,001090: 20,3532 03520 TC MPNMBRS +2
016360,001091: # (-1) X (37777 THROUGH 00001)
016361,001092: 20,3533 33431 CAF S+MAX
016362,001093: 20,3534 55372 TS SKEEP2
016363,001094: 20,3535 37667 MPHIGH1 CAF S-1
016364,001095: 20,3536 00006 EXTEND
016365,001096: 20,3537 71372 MP SKEEP2 # C(A) = -0
016366,001097: 20,3540 02033 TC -0CHK
016367,001098: 20,3541 30001 CA L
016368,001099: 20,3542 61372 AD SKEEP2
016369,001100: 20,3543 02033 TC -0CHK
016370,001101: 20,3544 04457 TC CHECKNJ # CHECK FOR NEW JOB
016371,001102: 20,3545 11372 CCS SKEEP2
016372,001103: 20,3546 55372 TS SKEEP2
016373,001104: 20,3547 11372 CCS SKEEP2
016374,001105: 20,3550 03535 TC MPHIGH1
016375,001106:
016376,001107: # INTERCHANGE MULTIPLIER AND MULTIPLICAND
016377,001108: # (37777 THROUGH 00001) X (37777)
016378,001109: # C(A) COUNTS DOWN. C(L) COUNTS UP.
![]() |
Page 398 |
016380,001111: 20,3551 33431 CAF S+MAX
016381,001112: 20,3552 55371 TS SKEEP1
016382,001113: 20,3553 31371 MPAGAIN CA SKEEP1
016383,001114: 20,3554 00006 EXTEND
016384,001115: 20,3555 73431 MP S+MAX
016385,001116: 20,3556 60001 AD L # C(A) = 37777
016386,001117: 20,3557 63432 AD S-MAX
016387,001118: 20,3560 02033 TC -0CHK
016388,001119: 20,3561 04457 TC CHECKNJ # CHECK FOR NEW JOB
016389,001120: 20,3562 11371 CCS SKEEP1
016390,001121: 20,3563 55371 TS SKEEP1
016391,001122: 20,3564 11371 CCS SKEEP1
016392,001123: 20,3565 03553 TC MPAGAIN
016393,001124: # (37777 THROUGH 00001) X (-1)
016394,001125: 20,3566 33431 CAF S+MAX
016395,001126: 20,3567 55371 TS SKEEP1
016396,001127: 20,3570 31371 MPHIGH2 CA SKEEP1
016397,001128: 20,3571 00006 EXTEND
016398,001129: 20,3572 77667 MP S-1
016399,001130: 20,3573 02033 TC -0CHK
016400,001131: 20,3574 30001 CA L
016401,001132: 20,3575 61371 AD SKEEP1
016402,001133: 20,3576 02033 TC -0CHK
016403,001134: 20,3577 04457 TC CHECKNJ # CHECK FOR NEW JOB
016404,001135: 20,3600 11371 CCS SKEEP1
016405,001136: 20,3601 55371 TS SKEEP1
016406,001137: 20,3602 11371 CCS SKEEP1
016407,001138: 20,3603 03570 TC MPHIGH2
016408,001139:
016409,001140: 20,3604 02047 TC SMODECHK
016410,001141:
016411,001142: # ONCE THROUGH DIVIDE SUBROUTINE TAKES APPROXIMATELY 0.01 SECOND.
016412,001143: # TOTAL TIME SPENT IN DIVIDE SUBROUTINE IS APPROXIMATELY 21.5 SECONDS
016413,001144: # DIVIDE +-/17777/ +-/37777/ BY +-/20000/. THE CONTENTS OF THE A REGISTER
016414,001145: # AND THE L REGISTER WILL HAVE OPPOSITE SIGNS BEFORE DIVISION. THE
016415,001146: # QUOTIENT SHOULD BE +-/37774/ DEPENDING ON THE SIGN OF A AND THE SIGN
016416,001147: # OF THE DIVISOR. THE REMAINDER = +-1 DEPENDING ON THE SIGN OF A
016417,001148: 20,3605 47644 DVCHECK CS SBIT12 # -(04000)
016418,001149: 20,3606 55374 TS SKEEP4
016419,001150: 20,3607 25374 DVLOOP INCR SKEEP4
016420,001151: 20,3610 37642 DV1CHK CA SBIT14 # 20000
016421,001152: 20,3611 55371 TS SKEEP1
016422,001153: 20,3612 40000 CS A
016423,001154: 20,3613 55372 TS SKEEP2
016424,001155: 20,3614 43431 DV1++ CS S+MAX
016425,001156: 20,3615 54001 TS L # 40000
016426,001157: 20,3616 32006 CA S13BITS
016427,001158: 20,3617 00006 EXTEND
016428,001159: 20,3620 11371 DV SKEEP1 # +37774, +1
016429,001160: 20,3621 55377 TS SKEEP7 # 37774
![]() |
Page 399 |
016431,001162: 20,3622 33432 CA S-MAX
016432,001163: 20,3623 56001 XCH L # ALSO PUT 40000 IN L
016433,001164: 20,3624 02040 TC +1CHK
016434,001165: 20,3625 32006 DV1+- CA S13BITS # 17777
016435,001166: 20,3626 00006 EXTEND
016436,001167: 20,3627 11372 DV SKEEP2 # -37774, +1
016437,001168: 20,3630 61377 AD SKEEP7
016438,001169: 20,3631 02033 TC -0CHK
016439,001170: 20,3632 33431 CA S+MAX
016440,001171: 20,3633 56001 XCH L # ALSO PUT 37777 IN L
016441,001172: 20,3634 02040 TC +1CHK
016442,001173: 20,3635 42006 DV1-+ CS S13BITS # 60000
016443,001174: 20,3636 00006 EXTEND
016444,001175: 20,3637 11371 DV SKEEP1 # -37774, -1
016445,001176: 20,3640 55376 TS SKEEP6
016446,001177: 20,3641 61377 AD SKEEP7
016447,001178: 20,3642 02033 TC -0CHK
016448,001179: 20,3643 33431 CA S+MAX
016449,001180: 20,3644 56001 XCH L # ALSO PUT 37777 IN L
016450,001181: 20,3645 02041 TC -1CHK
016451,001182: 20,3646 42006 DV1-- CS S13BITS # 60000
016452,001183: 20,3647 00006 EXTEND
016453,001184: 20,3650 11372 DV SKEEP2 # +37774, -1
016454,001185: 20,3651 61376 AD SKEEP6
016455,001186: 20,3652 02033 TC -0CHK
016456,001187: 20,3653 33431 CA S+MAX
016457,001188: 20,3654 56001 XCH L # ALSO PUT 37777 IN L FOR DV2
016458,001189: 20,3655 02041 TC -1CHK
016459,001190: 20,3656 31376 CA SKEEP6 # -37774
016460,001191: 20,3657 67670 AD S-2 # -37776
016461,001192: 20,3660 63431 AD S+MAX
016462,001193: 20,3661 02040 TC +1CHK
016463,001194:
016464,001195: # DIVIDE +17777 + 37777 BY +20000. THE RESULT SHOULD BE +37777 WITH
016465,001196: # +17777 REMAINDER.
016466,001197: 20,3662 32006 DV2CHK CA S13BITS
016467,001198: 20,3663 00006 EXTEND
016468,001199: 20,3664 11371 DV SKEEP1
016469,001200: 20,3665 63432 AD S-MAX
016470,001201: 20,3666 02033 TC -0CHK
016471,001202: 20,3667 47642 CS SBIT14 # -20000
016472,001203: 20,3670 60001 AD L
016473,001204: 20,3671 02041 TC -1CHK
016474,001205:
016475,001206: # DIVIDE +37776 BY +37776. THE RESULT SHOULD BE +37777 AND THE
016476,001207: # REMAINDER SHOULD BE +37776.
016477,001208: 20,3672 37665 DV4CHK CA S+ZERO
016478,001209: 20,3673 54001 TS L
016479,001210: 20,3674 32011 CA DVCON
016480,001211: 20,3675 55371 TS SKEEP1 # 37776
![]() |
Page 400 |
016482,001213: 20,3676 00006 EXTEND
016483,001214: 20,3677 11371 DV SKEEP1
016484,001215: 20,3700 40000 CS A
016485,001216: 20,3701 62011 AD DVCON
016486,001217: 20,3702 02041 TC -1CHK
016487,001218: 20,3703 30001 CA L # 37776
016488,001219: 20,3704 63432 AD S-MAX
016489,001220: 20,3705 02041 TC -1CHK
016490,001221:
016491,001222: # DIVIDE SAME (ZERO). THE CONTENTS OF THE A REGISTER AND L REGISTER WILL
016492,001223: # HAVE OPPOSITE SIGNS BEFORE DIVISION. THE QUOTIENT WILL BE + OR - MAX.,
016493,001224: # DEPENDING UPON THE SIGN OF THE L REGISTER AND THE SIGN OF THE DIVISOR.
016494,001225: # C(L) REMAINS THE SAME BECAUSE IT IS THE DIVIDEND.
016495,001226: 20,3706 37665 DV5CHK CA S+ZERO
016496,001227: 20,3707 55371 TS SKEEP1 # +0
016497,001228: 20,3710 54001 TS L
016498,001229: 20,3711 40000 CS A
016499,001230: 20,3712 55372 TS SKEEP2 # -0
016500,001231: 20,3713 00006 DV5++ EXTEND
016501,001232: 20,3714 11371 DV SKEEP1 # +37777, +0
016502,001233: 20,3715 55377 TS SKEEP7 # 37777
016503,001234: 20,3716 30001 CA L
016504,001235: 20,3717 02032 TC +0CHK
016505,001236: 20,3720 40000 DV5+- CS A
016506,001237: 20,3721 00006 EXTEND
016507,001238: 20,3722 11372 DV SKEEP2 # 40000, +0
016508,001239: 20,3723 55376 TS SKEEP6 # 40000
016509,001240: 20,3724 61377 AD SKEEP7
016510,001241: 20,3725 02033 TC -0CHK
016511,001242: 20,3726 40000 CS A
016512,001243: 20,3727 56001 XCH L # ALSO PUT -0 IN L
016513,001244: 20,3730 02032 TC +0CHK
016514,001245: 20,3731 00006 DV5-+ EXTEND
016515,001246: 20,3732 11371 DV SKEEP1 # 40000, -0
016516,001247: 20,3733 61377 AD SKEEP7
016517,001248: 20,3734 02033 TC -0CHK
016518,001249: 20,3735 30001 CA L
016519,001250: 20,3736 02033 TC -0CHK
016520,001251: 20,3737 00006 DV5-- EXTEND
016521,001252: 20,3740 11372 DV SKEEP2 # 37777, -0
016522,001253: 20,3741 61376 AD SKEEP6
016523,001254: 20,3742 02033 TC -0CHK
016524,001255: 20,3743 30001 CA L
016525,001256: 20,3744 02033 TC -0CHK
016526,001257: 20,3745 31376 CA SKEEP6 # CHECK QUOTIENT
016527,001258: 20,3746 62011 AD DVCON
016528,001259: 20,3747 02041 TC -1CHK
016529,001260:
016530,001261: 20,3750 04457 TC CHECKNJ # CHECK FOR NEW JOB
016531,001262: 20,3751 31374 CA SKEEP4
![]() |
Page 401 |
016533,001264: 20,3752 00006 EXTEND
016534,001265: 20,3753 63607 BZMF DVLOOP
016535,001266: 20,3754 25370 INCR SCOUNT +2
016536,001267: 20,3755 02101 TC SELFCHK # START SELF-CHECK AGAIN
016537,001268:
016538,001269: 20,3756 ENDSLFS1 EQUALS
016539,001270:
016540,001271: 01,3000 SETLOC ENDFAILS
016541,001272:
016542,001273: 01,3000 55371 SBNKOPTN TS SKEEP1
016543,001274: 01,3001 40000 CS A # GO TO BACKUP IDLE LOOP IF C(SMODE) IS
016544,001275: 01,3002 67656 AD TWO # GREATER THAN OCTAL 11
016545,001276: 01,3003 00006 EXTEND
016546,001277: 01,3004 63013 BZMF TOSMODE -2
016547,001278: 01,3005 37665 CA S+ZERO # ZERO SMODE FOR OPTIONS ABOVE 8.
016548,001279: 01,3006 55361 TS SMODE
016549,001280: 01,3007 31371 CA SKEEP1
016550,001281: 01,3010 50000 NDX A
016551,001282: 01,3011 03011 TC SOPTON11 -1
016552,001283: 01,3012 03034 SOPTON11 TC DSKYCHK
016553,001284:
016554,001285: 01,3013 37665 CA S+ZERO
016555,001286: 01,3014 55361 TS SMODE
016556,001287: 01,3015 04102 TOSMODE TC POSTJUMP
016557,001288: 01,3016 40047 CADR SMODECHK
016558,001289:
016559,001290: # THE FOLLOWING CONSTANTS ARE USED BY DSKYCHK.
016560,001291: 01,3017 05265 DSKYCODE OCTAL 05265 # 00
016561,001292: 01,3020 04143 OCTAL 04143 # 11
016562,001293: 01,3021 05471 OCTAL 05471 # 22
016563,001294: 01,3022 05573 OCTAL 05573 # 33
016564,001295: 01,3023 04757 OCTAL 04757 # 44
016565,001296: 01,3024 05736 OCTAL 05736 # 55
016566,001297: 01,3025 05634 OCTAL 05634 # 66
016567,001298: 01,3026 05163 OCTAL 05163 # 77
016568,001299: 01,3027 05675 OCTAL 05675 # 88
016569,001300: 01,3030 05777 OCTAL 05777 # 99
016570,001301: 01,3031 07265 +-ZERO OCTAL 07265
016571,001302: 01,3032 00013 11DEC. OCTAL 00013
016572,001303:
016573,001304: # BITS 2 AND 6 TURN ON THE COMPUTER ACTIVITY AND VERB-NOUN FLASH.
016574,001305: 01,3033 00042 S11CHAN OCTAL 00042
016575,001306:
016576,001307: 01,3034 37661 DSKYCHK CAF TEN
016577,001308: 01,3035 55373 TS SKEEP3
016578,001309: 01,3036 00004 INHINT
016579,001310: 01,3037 37657 CAF S+1 # SET UP TEN MS INTERRUPT
016580,001311: 01,3040 04536 TC WAITLIST
016581,001312: 01,3041 03075 02003 2CADR NXTNMBR
016582,001313:
![]() |
Page 402 |
016584,001315: 01,3043 00003 RELINT
016585,001316: 01,3044 03015 TC TOSMODE # GO TO IDLE LOOP
016586,001317:
016587,001318: 01,3045 55373 SDSPTAB TS SKEEP3
016588,001319: 01,3046 00004 INHINT
016589,001320: 01,3047 51373 NDX SKEEP3
016590,001321: 01,3050 43017 CS DSKYCODE
016591,001322: 01,3051 54307 SBLANKS TS DSPTAB
016592,001323: 01,3052 54310 TS DSPTAB +1
016593,001324: 01,3053 54311 TS DSPTAB +2
016594,001325: 01,3054 54312 TS DSPTAB +3
016595,001326: 01,3055 54313 TS DSPTAB +4
016596,001327: 01,3056 54314 TS DSPTAB +5
016597,001328: 01,3057 54315 TS DSPTAB +6
016598,001329: 01,3060 54316 TS DSPTAB +7
016599,001330: 01,3061 54317 TS DSPTAB +8D
016600,001331: 01,3062 54320 TS DSPTAB +9D
016601,001332: 01,3063 54321 TS DSPTAB +10D
016602,001333: 01,3064 33032 CA 11DEC.
016603,001334: 01,3065 54303 TS NOUT
016604,001335:
016605,001336: 01,3066 00004 DSKYWAIT INHINT
016606,001337: 01,3067 37646 CAF BIT10 # 5.12 SECOND WAIT
016607,001338: 01,3070 04536 TC WAITLIST
016608,001339: 01,3071 03075 02003 2CADR NXTNMBR
016609,001340:
016610,001341: 01,3073 00003 RELINT
016611,001342: 01,3074 04602 TC TASKOVER
016612,001343:
016613,001344: 01,3075 11373 NXTNMBR CCS SKEEP3
016614,001345: 01,3076 03045 TC SDSPTAB # 9 THROUGH 0
016615,001346: 01,3077 03104 TC -SIGN # -ZEROS
016616,001347: 01,3100 03121 TC +SIGN # +ZEROS
016617,001348: 01,3101 11372 CCS SKEEP2
016618,001349: 01,3102 03135 TC NODSPLAY # PUTS BLANKS IN DSKY DISPLAY
016619,001350: 01,3103 03141 TC LITESOUT # TURN OFF LIGHTS
016620,001351:
016621,001352: 01,3104 47657 -SIGN CS S+1
016622,001353: 01,3105 55373 TS SKEEP3
016623,001354: 01,3106 33033 CA S11CHAN # TURN ON VERB-NOUN FLASH
016624,001355: 01,3107 00006 EXTEND # AND COMPUTER ACTIVITY LIGHTS.
016625,001356: 01,3110 05011 WOR DSALMOUT
016626,001357: 01,3111 43031 CS +-ZERO
016627,001358: 01,3112 00004 INHINT
016628,001359: 01,3113 54307 TS DSPTAB
016629,001360: 01,3114 54312 TS DSPTAB +3
016630,001361: 01,3115 54314 TS DSPTAB +5
016631,001362: 01,3116 36165 CAF THREE
016632,001363: 01,3117 54303 TS NOUT
016633,001364: 01,3120 03066 TC DSKYWAIT
![]() |
Page 403 |
016635,001366: 01,3121 47665 +SIGN CS ZERO
016636,001367: 01,3122 55373 TS SKEEP3
016637,001368: 01,3123 37657 CA S+1
016638,001369: 01,3124 55372 TS SKEEP2
016639,001370: 01,3125 00004 INHINT
016640,001371: 01,3126 43031 CS +-ZERO
016641,001372: 01,3127 54310 TS DSPTAB +1
016642,001373: 01,3130 54313 TS DSPTAB +4
016643,001374: 01,3131 54315 TS DSPTAB +6
016644,001375: 01,3132 36165 CAF THREE
016645,001376: 01,3133 54303 TS NOUT
016646,001377: 01,3134 03066 TC DSKYWAIT
016647,001378:
016648,001379: 01,3135 55372 NODSPLAY TS SKEEP2 # +0
016649,001380: 01,3136 47644 CS BIT12 # BLANKS
016650,001381: 01,3137 00004 INHINT
016651,001382: 01,3140 03051 TC SBLANKS # PUTS BLANKS IN ALL DISPLAYS
016652,001383:
016653,001384: 01,3141 43033 LITESOUT CS S11CHAN
016654,001385: 01,3142 00006 EXTEND
016655,001386: 01,3143 03011 WAND DSALMOUT # TURN OFF COMPUTER ACTIVITY LIGHT.
016656,001387: 01,3144 04602 TC TASKOVER # END OF DSKYCHK
016657,001388:
016658,001389: 01,3145 ENDSLFS2 EQUALS
End of include-file AGC_BLOCK_TWO_SELF-CHECK.agc. Parent file is MAIN.agc