Source Code
These source-code files are part of a reconstructed copy of Sunrise 69, the
final release of the Block I Command Module (CM) Apollo Guidance Computer
(AGC) system test software.
They have been created via disassembly of binary dumps of original core rope memory modules, part numbers 1003133-18, 1003133-19, 1003133-20, and 1003733-071. Corresponding portions of code have been copied from Solarium 55 where applicable. Extensive use was also made of the AGC Information Series documents, which were specifically written about the Sunrise software. Since only binary dumps (rather than listings) of Sunrise are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing. |
013850,000002: ## Copyright: Public domain.
013851,000003: ## Filename: AGC_SELF-CHECK_NUMBER_TWO.agc
013852,000004: ## Purpose: A section of Sunrise 69.
013853,000005: ## It is part of the reconstructed source code for the final
013854,000006: ## release of the Block I Command Module system test software. No
013855,000007: ## original listings of this program are available; instead, this
013856,000008: ## file was created via disassembly of dumps of Sunrise core rope
013857,000009: ## memory modules and comparison with the later Block I program
013858,000010: ## Solarium 55.
013859,000011: ## Assembler: yaYUL --block1
013860,000012: ## Contact: Ron Burkey <info@sandroid.org>.
013861,000013: ## Website: www.ibiblio.org/apollo/index.html
013862,000014: ## Mod history: 2023-06-19 MAS Copied from Solarium 55, adjusted to match
013863,000015: ## Sunrise 69, and de-duplicated a bunch of
013864,000016: ## symbol names (mostly by adding 2s).
013865,000017: ## 2023-06-21 MAS Added modern comments explaining how to
013866,000018: ## start these tests in Sunrise 69.
013867,000019:
013868,000020:
013869,000021: 06,6000 SETLOC 14000
013870,000022:
013871,000023: # NEXT THREE CONSTANTS ARE USED IN RUPTCHK SUBROUTINE
013872,000024: 06,6000 37767 OVCON OCTAL 37767
013873,000025: 06,6001 00320 TM1WAIT OCTAL 00320
013874,000026: 06,6002 06407 ZRUPTCON ADRES TSKADRS # MUST BE ADDRESS OF TSKADRS
013875,000027:
013876,000028: # NEXT SIX CONSTANTS ARE USED IN ERASCHK, CNTRCHK, AND CYCLSHF SUBROUTINES
013877,000029: 06,6003 4512 CONCNTR1 EQUALS BIT5 # 00020
013878,000030: 06,6003 00060 CONERAS1 OCTAL 00060
013879,000031: 06,6004 01774 CONERAS2 OCTAL 01774
013880,000032: 06,6005 25252 CONC+S1 OCTAL 25252
013881,000033: 06,6006 4663 CONC+S2 EQUALS CSQ # 40001
013882,000034:
013883,000035: # THE FOLLOWING CONSTANTS ARE USED THROUGHOUT SELF-CHECK
013884,000036: 06,6006 5500 S2CON0 EQUALS ZERO # +0
013885,000037: 06,6006 4516 S2CON1 EQUALS BIT1 # +1
013886,000038: 06,6006 4515 S2CON2 EQUALS BIT2 # +2
013887,000039: 06,6006 4514 S2CON4 EQUALS BIT3 # +4
013888,000040: 06,6006 4510 S2CON64 EQUALS BIT7 # 00100
013889,000041: 06,6006 4502 S2CON1/4 EQUALS BIT13 # 10000
013890,000042: 06,6006 4501 S2CON1/2 EQUALS BIT14 # 20000
013891,000043: 06,6006 4476 S2CON+MX EQUALS POSMAX # 37777
013892,000044: 06,6006 4340 S2CON-2 EQUALS MINUS2 # 77775
013893,000045: 06,6006 4335 S2CON-1 EQUALS MINUS1 # 77776
013894,000046: 06,6006 5503 S2CONMAX EQUALS NEG0 # 77777
013895,000047:
013896,000048: 06,6006 31763 -2 XCH QADRS # ENTRY HERE FROM -ZEROCHK AND -ONECHK
013897,000049: 06,6007 06011 TC +2
013898,000050:
013899,000051: 06,6010 30001 ERRORS2 XCH Q # FAILURE DETECTED - ALARM.
013900,000052: 06,6011 51764 TS S2FAIL # SAVE CALLING Q FOR POSSIBLE FAILURE LOC.
013901,000053: 06,6012 02605 TC ALARM
013902,000054: 06,6013 01102 OCT 01102
013903,000055: 06,6014 31765 XCH ER2COUNT # ADD +1 TO ER2COUNT REGISTER EVERY TIME
013904,000056: 06,6015 64516 AD S2CON1 # THERE IS AN ERROR IN SELF-CHECK
013905,000057: 06,6016 31765 XCH ER2COUNT
013906,000058: 06,6017 06054 TC CCSCHK2 # START SELF-CHECK AGAIN
013907,000059:
013908,000060: 06,6020 30001 -ZEROCHK XCH Q
013909,000061: 06,6021 51763 TS QADRS # HOLDS ADDRESS THAT WAS IN Q REGISTER
013910,000062: 06,6022 30001 XCH Q
013911,000063: 06,6023 10000 CCS A
013912,000064: 06,6024 06006 TC ERRORS2 -2
013913,000065: 06,6025 06006 TC ERRORS2 -2
013914,000066: 06,6026 06006 TC ERRORS2 -2
013915,000067: 06,6027 00001 TC Q
013916,000068:
013917,000069:
013918,000070:
013919,000071: 06,6030 40000 CS A
013920,000072: 06,6031 30001 -ONECHK XCH Q
013921,000073: 06,6032 51763 TS QADRS # HOLDS ADDRESS THAT WAS IN Q REGISTER
013922,000074: 06,6033 30001 XCH Q
013923,000075: 06,6034 10000 CCS A
013924,000076: 06,6035 06006 TC ERRORS2 -2
013925,000077: 06,6036 06006 TC ERRORS2 -2
013926,000078: 06,6037 10000 CCS A
013927,000079: 06,6040 06006 TC ERRORS2 -2
013928,000080: 06,6041 00001 TC Q
013929,000081:
MAS 2023: The following function is the entry point for the AGC SELF-CHECK NUMBER TWO tests added to Sunrise 69. Since the three modules of Sunrise 45 were not modified in the creation of Sunrise 69, this function is not referred to anwhere and must be invoked manually, by address, using verb 20 (request executive). The procedure to do so is: V36E V21N01E 1762E 77777E V21N26E 02000E V15N01E 1764E V20N01E 14042E |
013940,000092: 06,6042 35500 STRTSLF2 CAF S2CON0
013941,000093: 06,6043 51765 TS ER2COUNT
013942,000094: 06,6044 51766 TS S2COUNT
013943,000095: 06,6045 51767 TS S2COUNT +1
013944,000096: 06,6046 51770 TS S2COUNT +2
013945,000097:
013946,000098: 06,6047 45502 CS TWO
013947,000099: 06,6050 20017 INHINT
013948,000100: 06,6051 70011 MASK OUT1
013949,000101: 06,6052 50011 TS OUT1
013950,000102: 06,6053 20016 RELINT
013951,000103:
013952,000104: # CHECKS MOST CCS PULSES
013953,000105: 06,6054 44515 CCSCHK2 CS S2CON2 # -2
013954,000106: 06,6055 10000 CCS A # C(A) = -2
013955,000107: 06,6056 06010 TC ERRORS2
013956,000108: 06,6057 06010 TC ERRORS2
013957,000109: 06,6060 06062 TC +2
013958,000110: 06,6061 06010 TC ERRORS2
013959,000111: 06,6062 10000 CCS A # C(A) = +1, RESULT OF CCS -NUMBER
013960,000112: 06,6063 06067 TC +4
013961,000113: 06,6064 06010 TC ERRORS2
013962,000114: 06,6065 06010 TC ERRORS2
013963,000115: 06,6066 06010 TC ERRORS2
013964,000116: 06,6067 10000 CCS A # C(A) = +0, RESULT OF CCS + NUMBER
013965,000117: 06,6070 06010 TC ERRORS2
013966,000118: 06,6071 06074 TC +3
013967,000119: 06,6072 06010 TC ERRORS2
013968,000120: 06,6073 06010 TC ERRORS2
013969,000121: 06,6074 40000 CS A
013970,000122: 06,6075 10000 CCS A # C(A) = -0, RESULT OF CCS +0
013971,000123: 06,6076 06010 TC ERRORS2
013972,000124: 06,6077 06010 TC ERRORS2
013973,000125: 06,6100 06010 TC ERRORS2
013974,000126: 06,6101 10000 CCS A # RESULT OF CCS -0
013975,000127: 06,6102 06010 TC ERRORS2
013976,000128: 06,6103 06106 TC +3
013977,000129: 06,6104 06010 TC ERRORS2
013978,000130: 06,6105 06010 TC ERRORS2
013979,000131: # SPECIFICALLY CHECKS RSC PULSE OF TC INSTRUCTION (ALSO MOST OF TC
013980,000132: # PULSES)
013981,000133: 06,6106 06110 TC +2
013982,000134: 06,6107 06111 TC +2 # NEXT SUBROUTINE
013983,000135: 06,6110 00001 TC Q
013984,000136:
013985,000137: # CHECKS WP, GP, TP - WP2, RP2 - RG, WP, OF CCS1
013986,000138: # CHECKS RB, WG PULSES (READ BACK INTO ERASABLE)
013987,000139: 06,6111 35777 PTY+ERS2 CAF 5777 # 47777
013988,000140: 06,6112 51771 TS S2KEEP1
013989,000141: 06,6113 71771 MASK S2KEEP1
013990,000142: 06,6114 31771 XCH S2KEEP1
013991,000143: 06,6115 61771 AD S2KEEP1
013992,000144: 06,6116 25777 INDEX 5777
013993,000145: 06,6117 41771 4 S2KEEP1 # MP SKEEP1
013994,000146: 06,6120 25777 INDEX 5777
013995,000147: 06,6121 51771 5 S2KEEP1 # DV SKEEP1
013996,000148: 06,6122 41771 CS S2KEEP1
013997,000149: 06,6123 51772 TS S2KEEP2 # 30000
013998,000150: 06,6124 21771 INDEX S2KEEP1 # TROUBLE IF C(SKEEP1) NOT 47777
013999,000151: 06,6125 61772 6 S2KEEP2 # SU SKEEP2, C(A) = -0
014000,000152: 06,6126 51772 TS S2KEEP2 # -0
014001,000153: 06,6127 11772 CCS S2KEEP2
014002,000154: 06,6130 06010 TC ERRORS2
014003,000155: 06,6131 06010 TC ERRORS2
014004,000156: 06,6132 06010 TC ERRORS2
014005,000157: 06,6133 11772 CCS S2KEEP2
014006,000158: 06,6134 06010 TC ERRORS2
014007,000159: 06,6135 06010 TC ERRORS2
014008,000160: 06,6136 06010 TC ERRORS2
014009,000161: # START ERASABLE INSTRUCTION CHECK
014010,000162: 06,6137 36155 CAF E2INST1
014011,000163: 06,6140 51771 TS S2KEEP1
014012,000164: 06,6141 36156 CAF E2INST2
014013,000165: 06,6142 51772 TS S2KEEP2
014014,000166: 06,6143 36157 CAF E2INST3
014015,000167: 06,6144 51773 TS S2KEEP3
014016,000168: 06,6145 36160 CAF E2INST4
014017,000169: 06,6146 51774 TS S2KEEP4
014018,000170: 06,6147 36161 CAF E2INST5
014019,000171: 06,6150 51775 TS S2KEEP5
014020,000172: 06,6151 36162 CAF E2INST6
014021,000173: 06,6152 51776 TS S2KEEP6
014022,000174: 06,6153 34501 CAF S2CON1/2
014023,000175: 06,6154 01771 TC S2KEEP1
014024,000176: 06,6155 25777 E2INST1 INDEX 5777
014025,000177: 06,6156 44515 E2INST2 4 S2CON2 # MP, C(A) = +1, THEN +0
014026,000178: 06,6157 60000 E2INST3 AD A # CHECKS ST2 PARITY
014027,000179: 06,6160 10000 E2INST4 CCS A
014028,000180: 06,6161 01771 E2INST5 TC S2KEEP1
014029,000181: 06,6162 06163 E2INST6 TC +1 # NEXT SUBROUTINE
014030,000182:
014031,000183:
014032,000184:
014033,000185: # CHECKS RSC, WSC PULSES
014034,000186: # NO WSC PULSE IN MASK INSTRUCTION
014035,000187: 06,6163 34510 SCCHK2 CAF S2CON64 # 00100
014036,000188: 06,6164 30003 XCH LP # 00040
014037,000189: 06,6165 30003 XCH LP
014038,000190: 06,6166 50003 TS LP # 00020
014039,000191: 06,6167 60003 AD LP # 00010
014040,000192: 06,6170 20003 INDEX LP # 00004
014041,000193: 06,6171 25767 2 5767 # INDEX 5777
014042,000194: 06,6172 60003 6 0003 # SU LP, 00002
014043,000195: # NEXT 4 INSTRUCTIONS CHECK RSC PULSE IN MASK INSTRUCTION
014044,000196: 06,6173 40003 CS LP # C(A) = -2, C(LP) = +1
014045,000197: 06,6174 70003 MASK LP # C(A) = +1, C(LP) = +1
014046,000198: 06,6175 40000 CS A
014047,000199: 06,6176 06031 TC -ONECHK
014048,000200: 06,6177 10003 CCS LP
014049,000201: 06,6200 06204 TC +4
014050,000202: 06,6201 06010 TC ERRORS2
014051,000203: 06,6202 06010 TC ERRORS2
014052,000204: 06,6203 06010 TC ERRORS2
014053,000205: 06,6204 10003 CCS LP
014054,000206: 06,6205 06010 TC ERRORS2
014055,000207: 06,6206 06010 TC ERRORS2
014056,000208: 06,6207 06211 TC +2
014057,000209: 06,6210 06010 TC ERRORS2
014058,000210: 06,6211 10003 CCS LP
014059,000211: 06,6212 06010 TC ERRORS2
014060,000212: 06,6213 06216 TC +3 # NEXT SUBROUTINE
014061,000213: 06,6214 06010 TC ERRORS2
014062,000214: 06,6215 06010 TC ERRORS2
014063,000215: # CHECKS MOST OF MP PULSES
014064,000216: 06,6216 34514 MPCHK2 CAF S2CON4
014065,000217: 06,6217 50003 TS LP
014066,000218: 06,6220 34476 MP++2 CAF S2CON+MX
014067,000219: 06,6221 25777 INDEX 5777
014068,000220: 06,6222 40003 4 LP # C(A) = +1, CHECKS RSC PULSE
014069,000221: 06,6223 60003 AD LP # C(LP) = +37776
014070,000222: 06,6224 51771 TS S2KEEP1 # 37777
014071,000223: 06,6225 34476 MP+-2 CAF S2CON+MX
014072,000224: 06,6226 25777 INDEX 5777
014073,000225: 06,6227 44340 4 S2CON-2
014074,000226: 06,6230 60003 AD LP # C(LP) = -37776
014075,000227: 06,6231 61771 AD S2KEEP1
014076,000228: 06,6232 06020 TC -ZEROCHK
014077,000229: 06,6233 44476 MP--2 CS S2CON+MX
014078,000230: 06,6234 25777 INDEX 5777
014079,000231: 06,6235 44340 4 S2CON-2 # C(A) = +1
014080,000232: 06,6236 60003 AD LP # C(LP) = +37776
014081,000233: 06,6237 51771 TS S2KEEP1 # 37777
014082,000234: 06,6240 44476 MP-+2 CS S2CON+MX
014083,000235: 06,6241 25777 INDEX 5777
014084,000236: 06,6242 44515 4 S2CON2 # C(A) = -1
014085,000237: 06,6243 60003 AD LP # C(LP) = -37776
014086,000238: 06,6244 61771 AD S2KEEP1
014087,000239: 06,6245 06020 TC -ZEROCHK
014088,000240:
014089,000241:
014090,000242: # CHECKS MOST OF SU PULSES
014091,000243: 06,6246 34476 SUCHK2 CAF S2CON+MX
014092,000244: 06,6247 25777 INDEX 5777
014093,000245: 06,6250 66427 6 S2CONSU # SU 37776, C(A) = +1
014094,000246: 06,6251 06030 TC -ONECHK -1
014095,000247:
014096,000248: # CHECKS MOST OF DV PULSES (ALL EXCEPT WP, GP, TP)
014097,000249: # DIVIDE USES ST2
014098,000250: # ++ AND --, C(A) = 25252, C(Q) = 67777, C(LP) = +1
014099,000251: # +- AND -+ , C(A) = 52525, C(Q) = 67777, C(LP) = 40000 AND 40001
014100,000252: 06,6252 36552 DVCHK2 CAF S2CON3/8
014101,000253: 06,6253 50001 TS Q
014102,000254: 06,6254 34502 DV++2 CAF S2CON1/4
014103,000255: 06,6255 25777 INDEX 5777
014104,000256: 06,6256 50001 5 Q # C(A) = 25252, CHECKS RSC PULSE
014105,000257: 06,6257 51771 TS S2KEEP1
014106,000258: 06,6260 30003 XCH LP
014107,000259: 06,6261 51772 TS S2KEEP2
014108,000260: 06,6262 40001 DV+-2 CS Q # +1/4
014109,000261: 06,6263 25777 INDEX 5777
014110,000262: 06,6264 56553 5 S2CN-3/8 # C(A) = 52525
014111,000263: 06,6265 61771 AD S2KEEP1 # C(A) = -0
014112,000264: 06,6266 51775 TS S2KEEP5 # SHOULD BE -0
014113,000265: 06,6267 30003 XCH LP
014114,000266: 06,6270 51773 TS S2KEEP3
014115,000267: 06,6271 30001 DV--2 XCH Q # -1/4
014116,000268: 06,6272 25777 INDEX 5777
014117,000269: 06,6273 56553 5 S2CN-3/8 # C(A) = 25252
014118,000270: 06,6274 51771 TS S2KEEP1
014119,000271: 06,6275 30003 XCH LP
014120,000272: 06,6276 51774 TS S2KEEP4
014121,000273: 06,6277 30001 DV-+2 XCH Q # -1/4
014122,000274: 06,6300 25777 INDEX 5777
014123,000275: 06,6301 56552 5 S2CON3/8
014124,000276: 06,6302 61771 AD S2KEEP1 # C(A) = -0
014125,000277: 06,6303 51771 TS S2KEEP1
014126,000278: 06,6304 40003 CS LP # C(A) = 37776
014127,000279: 06,6305 61771 AD S2KEEP1 # C(A) = 37776
014128,000280: 06,6306 61772 AD S2KEEP2 # C(A) = 37777
014129,000281: 06,6307 61773 AD S2KEEP3 # C(A) = -0
014130,000282: 06,6310 61774 AD S2KEEP4 # C(A) = +1
014131,000283: 06,6311 61775 AD S2KEEP5 # C(A) = +1
014132,000284: 06,6312 06030 TC -ONECHK -1
014133,000285:
014134,000286:
014135,000287: # CHECKS MOST TS PULSES
014136,000288: # CHECKS ALL OF PINC AND MINC PULSES EXCEPT WOVR
014137,000289: 06,6313 34516 TS+-CHK2 CAF S2CON1
014138,000290: 06,6314 50034 TS OVCTR
014139,000291: 06,6315 64476 AD S2CON+MX # C(A) = + WITH OVERFLOW
014140,000292: 06,6316 51771 TS S2KEEP1
014141,000293: 06,6317 06010 TC ERRORS2
014142,000294: 06,6320 61771 AD S2KEEP1 # C(A) = +1
014143,000295: 06,6321 60034 AD OVCTR # C(A) = +3
014144,000296: 06,6322 50034 TS OVCTR
014145,000297: 06,6323 40000 CS A # C(A) = 77774
014146,000298: 06,6324 25777 INDEX 5777
014147,000299: 06,6325 66404 6 S2CONTS # C(A) = -0 WITH UNDERFLOW
014148,000300: 06,6326 51771 TS S2KEEP1
014149,000301: 06,6327 06010 TC ERRORS2
014150,000302: 06,6330 61771 AD S2KEEP1 # C(A) = -1
014151,000303: 06,6331 60034 AD OVCTR # C(A) = -1+2
014152,000304: 06,6332 06030 TC -ONECHK -1
014153,000305:
014154,000306: # NOT POSSIBLE TO CHECK WOVI PULSE IN NXI1
014155,000307: # START WOVI PULSE CHECK AND INHINT RELINT CHECK
014156,000308: 06,6333 20017 RUPTCHK INDEX INHINT
014157,000309: 06,6334 35500 CAF S2CON0
014158,000310: 06,6335 50024 TS 0024 # ZRUPT
014159,000311: 06,6336 20016 INDEX RELINT
014160,000312: 06,6337 60036 AD TIME1
014161,000313: 06,6340 51771 TS S2KEEP1
014162,000314: 06,6341 41771 TENMS CS S2KEEP1 # CHECK FOR NEXT PULSE TP TIME1
014163,000315: 06,6342 60036 AD TIME1
014164,000316: 06,6343 10000 CCS A
014165,000317: 06,6344 10000 CCS A
014166,000318: 06,6345 06333 TC RUPTCHK # START AGAIN, TIMING IS OFF DUE TO RUPT
014167,000319: 06,6346 06350 TC +2 # 10 MS PULSE HAS ARRIVED AT TIME1
014168,000320: 06,6347 06341 TC TENMS
014169,000321: 06,6350 36001 CAF TM1WAIT # START 7 TO 8 MS WAIT
014170,000322: 06,6351 10000 7-8WAIT CCS A
014171,000323: 06,6352 06351 TC 7-8WAIT
014172,000324: 06,6353 20017 INDEX INHINT
014173,000325: 06,6354 10024 CCS 0024 # ZRUPT
014174,000326: 06,6355 06333 TC RUPTCHK # THERE WAS AN INTERRUPT, START AGAIN
014175,000327: 06,6356 34516 CAF S2CON1
014176,000328: 06,6357 02124 TC WAITLIST
014177,000329: 06,6360 14407 CADR TSKADRS
014178,000330: 06,6361 34476 XCH S2CON+MX
014179,000331: 06,6362 66000 AD OVCON # WILL STAY IN OVERFLOW, UNDERFLOW FOR
014180,000332: 06,6363 20016 INDEX RELINT # APPROXIMATELY 3 MS
014181,000333: 06,6364 10000 WAIT1 CCS A
014182,000334: 06,6365 64515 AD S2CON2
014183,000335: 06,6366 06370 TC +2
014184,000336: 06,6367 06402 TC WOVIRPT
014185,000337: 06,6370 25777 INDEX 5777
014186,000338: 06,6371 65503 6 S2CONMAX # SU -0
014187,000339: 06,6372 30000 XCH A
014188,000340: 06,6373 25500 INDEX S2CON0
014189,000341: 06,6374 40000 CS A
014190,000342: 06,6375 70000 MASK A
014191,000343: 06,6376 40000 CS A
014192,000344: 06,6377 50000 TS A
014193,000345: 06,6400 06010 TC ERRORS2
014194,000346: 06,6401 06364 TC WAIT1
014195,000347: 06,6402 20017 WOVIRPT INDEX INHINT
014196,000348: 06,6403 51771 TS S2KEEP1
014197,000349: 06,6404 37775 S2CONTS OCTAL 37775
014198,000350: 06,6405 20016 INDEX RELINT
014199,000351: # INTERRUPT SHOULD APPEAR BEFORE NEXT INSTRUCTION
014200,000352: 06,6406 06416 TC SOPTION1 # END OF PULSES CHECK
014201,000353: 06,6407 40024 TSKADRS CS 0024 # C(ZRUPT) = ADDRESS OF TSKADRS
014202,000354: 06,6410 66002 AD ZRUPTCON
014203,000355: 06,6411 06020 TC -ZEROCHK
014204,000356: 06,6412 31766 XCH S2COUNT # ADD +1 TO S2COUNT REGISTER AT THIS
014205,000357: 06,6413 64516 AD S2CON1 # POINT OF SELF-CHECK.
014206,000358: 06,6414 31766 XCH S2COUNT
014207,000359: 06,6415 02203 TC TASKOVER
014208,000360:
014209,000361:
014210,000362: 06,6416 11762 SOPTION1 CCS S2MODE # 3 OPTIONS OF SELF-CHECK
014211,000363: 06,6417 07073 TC S2MODECK # END OF PULSES ONLY CHECK
014212,000364: 06,6420 07073 TC S2MODECK
014213,000365: 06,6421 06422 TC +1 # CONTINUE IF C(S2MODE) IS A NEG. NUMB5R
014214,000366:
014215,000367: # COUNTS DOWN 15 BIT NUMBER (APPROXIMATELY 10 SECONDS)
014216,000368: 06,6422 44476 COUNTCHK CS S2CON+MX
014217,000369: 06,6423 51775 TS S2KEEP5
014218,000370: 06,6424 50001 COUNTS TS Q
014219,000371: 06,6425 10001 CCS Q
014220,000372: 06,6426 06442 TC -NMBR
014221,000373: 06,6427 37776 S2CONSU OCTAL 37776
014222,000374: 06,6430 06432 TC +2
014223,000375: 06,6431 06451 TC OFCOUNT
014224,000376: 06,6432 61775 AD S2KEEP5
014225,000377: 06,6433 06031 TC -ONECHK
014226,000378: 06,6434 10550 CCS NEWJOB
014227,000379: 06,6435 07102 TC DUMEXIT2
014228,000380: 06,6436 41775 CS S2KEEP5
014229,000381: 06,6437 65503 AD S2CONMAX # -0
014230,000382: 06,6440 51774 TS S2KEEP4
014231,000383: 06,6441 06424 TC COUNTS
014232,000384: 06,6442 40000 -NMBR CS A
014233,000385: 06,6443 51775 TS S2KEEP5
014234,000386: 06,6444 61774 AD S2KEEP4
014235,000387: 06,6445 06030 TC -ONECHK -1
014236,000388: 06,6446 41775 CS S2KEEP5
014237,000389: 06,6447 40000 CS A
014238,000390: 06,6450 06424 TC COUNTS
014239,000391:
014240,000392: # COUNTS DOWN OVERFLOW NUMBER (APPROXIMATELY 3.5 SECONDS)
014241,000393: 06,6451 51777 OFCOUNT TS S2KEEP7 # +0
014242,000394: 06,6452 34476 CAF S2CON+MX
014243,000395: 06,6453 60000 AD A
014244,000396: 06,6454 64516 COUNTSOF AD S2CON1
014245,000397: 06,6455 20017 INHINT
014246,000398: 06,6456 30001 XCH Q
014247,000399: 06,6457 10001 CCS Q
014248,000400: 06,6460 51776 TS S2KEEP6
014249,000401: 06,6461 06474 TC ENDOF
014250,000402: 06,6462 20016 RELINT
014251,000403: 06,6463 61777 AD S2KEEP7
014252,000404: 06,6464 51777 TS S2KEEP7
014253,000405: 06,6465 06467 TC +2
014254,000406: 06,6466 06010 TC ERRORS2
014255,000407: 06,6467 10550 CCS NEWJOB
014256,000408: 06,6470 07102 TC DUMEXIT2
014257,000409: 06,6471 34476 CAF S2CON+MX
014258,000410: 06,6472 61776 AD S2KEEP6
014259,000411: 06,6473 06454 TC COUNTSOF
014260,000412: 06,6474 40000 ENDOF CS A
014261,000413: 06,6475 20016 RELINT
014262,000414: 06,6476 61777 AD S2KEEP7
014263,000415: 06,6477 06020 TC -ZEROCHK
014264,000416:
014265,000417: # REGISTER 1777 ALWAYS HOLDS LOWEST (X-1) ADDRESS JUST CHECKED
014266,000418: # REGISTER 1776 HOLDS BEFORE CONTENTS OF X
014267,000419: # REGISTER 1775 HOLDS BEFORE CONTENTS OF X-1
014268,000420: # REGISTER 1774 IS STARTING ADDRESS
014269,000421: # PUTS OWN ADDRESS IN REGISTERS OCT 1774 THROUGH OCT 60 (APPROX. 1.2 SEC)
014270,000422: 06,6500 36004 ERASCHK CAF CONERAS2 # 01774
014271,000423: 06,6501 51777 TS 1777
014272,000424: 06,6502 41777 ERASLOOP CS 1777
014273,000425: 06,6503 20016 RELINT
014274,000426: 06,6504 40000 CS 0000
014275,000427: 06,6505 20017 INHINT
014276,000428: 06,6506 20000 NDX 0000
014277,000429: 06,6507 30000 XCH 0000
014278,000430: 06,6510 51776 TS 1776 # PUT C(X) IN 1776
014279,000431: 06,6511 11777 CCS 1777
014280,000432: 06,6512 51777 TS 1777
014281,000433: 06,6513 20000 NDX 0000
014282,000434: 06,6514 30000 XCH 0000
014283,000435: 06,6515 31775 XCH 1775 # PUT C(X-1) IN 1775
014284,000436: 06,6516 21777 INDEX 1777
014285,000437: 06,6517 40001 CS 0001
014286,000438: 06,6520 21777 INDEX 1777
014287,000439: 06,6521 60000 AD 0000
014288,000440: 06,6522 06031 TC -ONECHK
014289,000441: 06,6523 41777 COMPLMNT CS 1777
014290,000442: 06,6524 21777 INDEX 1777
014291,000443: 06,6525 50000 TS 0000 # PUTS COMPLEMENT OF ADDRESS IN X-1
014292,000444: 06,6526 64335 AD S2CON-1
014293,000445: 06,6527 21777 INDEX 1777
014294,000446: 06,6530 50001 TS 0001 # PUTS COMPLEMENT OF ADDRESS IN X
014295,000447: 06,6531 21777 INDEX 1777
014296,000448: 06,6532 40000 CS 0000
014297,000449: 06,6533 21777 INDEX 1777
014298,000450: 06,6534 60001 AD 0001
014299,000451: 06,6535 06031 TC -ONECHK
014300,000452: 06,6536 31776 XCH 1776
014301,000453: 06,6537 21777 NDX 1777
014302,000454: 06,6540 50001 TS 0001 # RESTORE C(X)
014303,000455: 06,6541 41775 CS 1775
014304,000456: 06,6542 40000 CS A
014305,000457: 06,6543 21777 NDX 1777
014306,000458: 06,6544 50000 TS 0000 # RESTORE C(X-1)
014307,000459: 06,6545 10550 CCS NEWJOB
014308,000460: 06,6546 07102 TC DUMEXIT2
014309,000461: 06,6547 41777 ENDERAS CS 1777
014310,000462: 06,6550 66003 AD CONERAS1 # +60 OCT
014311,000463: 06,6551 10000 CCS A
014312,000464: 06,6552 14000 S2CON3/8 OCTAL 14000
014313,000465: 06,6553 63777 S2CN-3/8 OCTAL 63777
014314,000466: 06,6554 06502 TC ERASLOOP
014315,000467: 06,6555 20016 INDEX RELINT
014316,000468:
014317,000469: # CS ALL REGISTERS FROM OCT 57 THROUGH OCT 20
014318,000470: # ALL COUNTERS, PLUS 4 SPARES, PLUS 4 RUPT REGISTERS.
014319,000471: # PLUS CYCLE AND SHIFT REGISTERS
014320,000472: 06,6556 32765 CNTRCHK CAF LOW5
014321,000473: 06,6557 51771 CNTRLOOP TS S2KEEP1
014322,000474: 06,6560 64512 AD CONCNTR1 # +20 OCT
014323,000475: 06,6561 20000 INDEX A
014324,000476: 06,6562 40000 CS 0000
014325,000477: 06,6563 11771 CCS S2KEEP1
014326,000478: 06,6564 06557 TC CNTRLOOP
014327,000479:
014328,000480: 06,6565 36005 CYCLSHFT CAF CONC+S1
014329,000481: 06,6566 50020 TS CYR # C(CYR) = 12525
014330,000482: 06,6567 50022 TS CYL # C(CYL) = 52524
014331,000483: 06,6570 50021 TS SR # C(SR) = 12525
014332,000484: 06,6571 50023 TS SL # C(SL) = 12524
014333,000485: 06,6572 60020 AD CYR
014334,000486: 06,6573 60022 AD CYL
014335,000487: 06,6574 60021 AD SR
014336,000488: 06,6575 60023 AD SL
014337,000489: 06,6576 64663 AD CONC+S2 # C(A) = -1
014338,000490: 06,6577 06031 TC -ONECHK
014339,000491:
014340,000492: 06,6600 31767 XCH S2COUNT +1 # ADD +1 TO S2COUNT +1 REGISTER AT THIS
014341,000493: 06,6601 64516 AD S2CON1 # POINT OF SELF-CHECK
014342,000494: 06,6602 31767 XCH S2COUNT +1
014343,000495: 06,6603 11762 SOPTION2 CCS S2MODE # TWO OPTIONS LEFT
014344,000496: 06,6604 06422 TC COUNTCHK
014345,000497: 06,6605 07073 TC S2MODECK
014346,000498: 06,6606 07073 TC S2MODECK # END OF PULSES + SC + ERASABLE CHECK
014347,000499:
014348,000500: # MULTIPLY SUBROUTINES TAKE APPROXIMATELY 30 SECONDS
014349,000501: # (37777) X (37777 THROUGH 00001)
014350,000502: # C(A) COUNTS DOWN. C(LP) COUNTS UP.
014351,000503: 06,6607 34476 MPNMBRS CAF S2CON+MX
014352,000504: 06,6610 51772 TS S2KEEP2
014353,000505: 06,6611 34476 CAF S2CON+MX
014354,000506: 06,6612 25777 EXTEND
014355,000507: 06,6613 41772 MP S2KEEP2
014356,000508: 06,6614 60003 AD LP # C(A) = 37777
014357,000509: 06,6615 40000 CS A
014358,000510: 06,6616 64476 AD S2CON+MX
014359,000511: 06,6617 06020 TC -ZEROCHK
014360,000512: 06,6620 10550 CCS NEWJOB
014361,000513: 06,6621 07102 TC DUMEXIT2
014362,000514: 06,6622 11772 CCS S2KEEP2
014363,000515: 06,6623 51772 TS S2KEEP2
014364,000516: 06,6624 11772 CCS S2KEEP2
014365,000517: 06,6625 06611 TC MPNMBRS +2
014366,000518: # (-1) X (37777 THROUGH 00001)
014367,000519: 06,6626 34476 CAF S2CON+MX
014368,000520: 06,6627 51772 TS S2KEEP2
014369,000521: 06,6630 34335 MPHIGH1 CAF S2CON-1
014370,000522: 06,6631 25777 EXTEND
014371,000523: 06,6632 41772 MP S2KEEP2 # C(A) = -0
014372,000524: 06,6633 60003 AD LP
014373,000525: 06,6634 61772 AD S2KEEP2
014374,000526: 06,6635 06020 TC -ZEROCHK
014375,000527: 06,6636 10550 CCS NEWJOB
014376,000528: 06,6637 07102 TC DUMEXIT2
014377,000529: 06,6640 11772 CCS S2KEEP2
014378,000530: 06,6641 51772 TS S2KEEP2
014379,000531: 06,6642 11772 CCS S2KEEP2
014380,000532: 06,6643 06630 TC MPHIGH1
014381,000533:
014382,000534: # INTERCHANGE MULTIPLIER AND MULTIPLICAND
014383,000535: # (37777 THROUGH 00001) X (37777)
014384,000536: # C(A) COUNTS DOWN. C(LP) COUNTS UP.
014385,000537: 06,6644 34476 CAF S2CON+MX
014386,000538: 06,6645 51771 TS S2KEEP1
014387,000539: 06,6646 41771 MPAGAIN CS S2KEEP1
014388,000540: 06,6647 40000 CS A
014389,000541: 06,6650 25777 EXTEND
014390,000542: 06,6651 44476 MP S2CON+MX
014391,000543: 06,6652 60003 AD LP # C(A) = 37777
014392,000544: 06,6653 40000 CS A
014393,000545: 06,6654 64476 AD S2CON+MX
014394,000546: 06,6655 06020 TC -ZEROCHK
014395,000547: 06,6656 10550 CCS NEWJOB
014396,000548: 06,6657 07102 TC DUMEXIT2
014397,000549: 06,6660 11771 CCS S2KEEP1
014398,000550: 06,6661 51771 TS S2KEEP1
014399,000551: 06,6662 11771 CCS S2KEEP1
014400,000552: 06,6663 06646 TC MPAGAIN
014401,000553: # (37777 THROUGH 00001) X (-1)
014402,000554: 06,6664 34476 CAF S2CON+MX
014403,000555: 06,6665 51771 TS S2KEEP1
014404,000556: 06,6666 41771 MPHIGH2 CS S2KEEP1
014405,000557: 06,6667 40000 CS A
014406,000558: 06,6670 25777 EXTEND
014407,000559: 06,6671 44335 MP S2CON-1
014408,000560: 06,6672 60003 AD LP
014409,000561: 06,6673 61771 AD S2KEEP1
014410,000562: 06,6674 06020 TC -ZEROCHK
014411,000563: 06,6675 10550 CCS NEWJOB
014412,000564: 06,6676 07102 TC DUMEXIT2
014413,000565: 06,6677 11771 CCS S2KEEP1
014414,000566: 06,6700 51771 TS S2KEEP1
014415,000567: 06,6701 11771 CCS S2KEEP1
014416,000568: 06,6702 06666 TC MPHIGH2
014417,000569: 06,6703 06706 TC DV1
014418,000570:
014419,000571: # THESE 2 CONSTANTS USED BY DIVIDE SUBROUTINES
014420,000572: 06,6704 37776 DVCON1 OCTAL 37776
014421,000573: 06,6705 50001 DVCON2 OCTAL 50001
014422,000574: # DIVIDE 1/4 BY 3/8
014423,000575: # ONCE THROUGH ALL DEVIDE SUBROUTINES TAKES APPROX. 0.012 SECONDS
014424,000576: # TOTAL TIME IN DEVIDE SUBROUTINES IS APPROX. 20 SECONDS
014425,000577: 06,6706 36004 DV1 CAF CONERAS2 # 01774
014426,000578: 06,6707 51777 TS S2KEEP7
014427,000579: 06,6710 36552 DV1++ CAF S2CON3/8
014428,000580: 06,6711 50001 TS Q
014429,000581: 06,6712 34502 CAF S2CON1/4
014430,000582: 06,6713 25777 EXTEND
014431,000583: 06,6714 50001 DV Q # C(A) = 25252
014432,000584: 06,6715 51771 TS S2KEEP1
014433,000585: 06,6716 30003 XCH LP
014434,000586: 06,6717 51772 TS S2KEEP2
014435,000587: 06,6720 40001 DV1+- CS Q # +1/4
014436,000588: 06,6721 25777 EXTEND
014437,000589: 06,6722 56553 DV S2CN-3/8 # C(A) = 52525
014438,000590: 06,6723 61771 AD S2KEEP1 # C(A) = -0
014439,000591: 06,6724 51775 TS S2KEEP5
014440,000592: 06,6725 30003 XCH LP
014441,000593: 06,6726 51773 TS S2KEEP3
014442,000594: 06,6727 30001 DV1-- XCH Q # -1/4
014443,000595: 06,6730 25777 EXTEND
014444,000596: 06,6731 56553 DV S2CN-3/8
014445,000597: 06,6732 51771 TS S2KEEP1
014446,000598: 06,6733 30003 XCH LP
014447,000599: 06,6734 51774 TS S2KEEP4
014448,000600: 06,6735 30001 DV1-+ XCH Q
014449,000601: 06,6736 25777 EXTEND
014450,000602: 06,6737 56552 DV S2CON3/8
014451,000603: 06,6740 61771 AD S2KEEP1 # C(A) = -0
014452,000604: 06,6741 51771 TS S2KEEP1
014453,000605: 06,6742 40003 CS LP # C(A) = 37776
014454,000606: 06,6743 61771 AD S2KEEP1 # C(A) = 37776
014455,000607: 06,6744 61772 AD S2KEEP2 # C(A) = 37777
014456,000608: 06,6745 61773 AD S2KEEP3 # C(A) = -0
014457,000609: 06,6746 61774 AD S2KEEP4 # C(A) = +1
014458,000610: 06,6747 61775 AD S2KEEP5 # C(A) = +1
014459,000611: 06,6750 06030 TC -ONECHK -1
014460,000612:
014461,000613: # DIVIDE INCREASING BIT POSITIONS BY 1/2 (13 DEVISIONS)
014462,000614: 06,6751 34516 DV2 CAF S2CON1
014463,000615: 06,6752 51772 DV2LOOP TS S2KEEP2
014464,000616: 06,6753 25777 EXTEND
014465,000617: 06,6754 54501 DV S2CON1/2
014466,000618: 06,6755 51773 TS S2KEEP3
014467,000619: 06,6756 60001 AD Q # Q = -0
014468,000620: 06,6757 50020 TS CYR
014469,000621: 06,6760 40020 CS CYR
014470,000622: 06,6761 61772 AD S2KEEP2
014471,000623: 06,6762 60003 AD LP
014472,000624: 06,6763 06030 TC -ONECHK -1
014473,000625: 06,6764 41773 CS S2KEEP3
014474,000626: 06,6765 60000 AD A
014475,000627: 06,6766 50000 TS A # OVERFLOW AT END OF DV2 SUBROUTINE
014476,000628: 06,6767 06771 TC +2
014477,000629: 06,6770 06774 TC DV3
014478,000630: 06,6771 31773 XCH S2KEEP3
014479,000631: 06,6772 64516 AD S2CON1
014480,000632: 06,6773 06752 TC DV2LOOP
014481,000633:
014482,000634: # DIVIDE SEPARATE DECREASING BIT POSITIONS BY 37777 (14DEVISIONS)
014483,000635: # AFTER C(A) = BEFORE C(A) AND AFTER C(Q) = -C(A)
014484,000636: 06,6774 44476 DV3 CS S2CON+MX
014485,000637: 06,6775 50020 TS CYR # C(CYR) = 20000
014486,000638: 06,6776 40020 DV3LOOP CS CYR
014487,000639: 06,6777 40000 CS A
014488,000640: 06,7000 25777 EXTEND
014489,000641: 06,7001 54476 DV S2CON+MX
014490,000642: 06,7002 51774 TS S2KEEP4
014491,000643: 06,7003 60001 AD Q
014492,000644: 06,7004 06020 TC -ZEROCHK
014493,000645: 06,7005 11774 CCS S2KEEP4
014494,000646: 06,7006 10000 CCS A
014495,000647: 06,7007 06776 TC DV3LOOP
014496,000648:
014497,000649: # DEVIDE 37776 BY 37776
014498,000650: # C(A) = +MAX FOR POSITIVE SIGN AND -MAX FOR NEGATIVE SIGN
014499,000651: # C(Q) = - ABSOLUTE VALUE OF DEVISOR = 40001
014500,000652: 06,7010 36704 DV4++ CAF DVCON1 # 37776
014501,000653: 06,7011 25777 EXTEND
014502,000654: 06,7012 56704 DV DVCON1 # C(A) = 37777 C(Q) = -37776
014503,000655: 06,7013 60001 AD Q
014504,000656: 06,7014 06030 TC -ONECHK -1
014505,000657: 06,7015 30003 XCH LP # C(LP) = +1
014506,000658: 06,7016 51775 TS S2KEEP5
014507,000659: 06,7017 46704 CS DVCON1
014508,000660: 06,7020 51774 TS S2KEEP4
014509,000661: 06,7021 36704 DV4+- CAF DVCON1
014510,000662: 06,7022 25777 EXTEND
014511,000663: 06,7023 51774 DV S2KEEP4 # C(A) = 40000 C(Q) = -37776
014512,000664: 06,7024 40000 CS A
014513,000665: 06,7025 60001 AD Q
014514,000666: 06,7026 06030 TC -ONECHK -1
014515,000667: 06,7027 60003 AD LP # C(LP) = 40000
014516,000668: 06,7030 61775 AD S2KEEP5
014517,000669: 06,7031 51775 TS S2KEEP5 # -37776
014518,000670: 06,7032 46704 DV4-+ CS DVCON1
014519,000671: 06,7033 25777 EXTEND
014520,000672: 06,7034 56704 DV DVCON1 # C(A) = 40000 C(Q) = -37776
014521,000673: 06,7035 40000 CS A
014522,000674: 06,7036 60001 AD Q
014523,000675: 06,7037 06030 TC -ONECHK -1
014524,000676: 06,7040 40003 CS LP # C(LP) = 40001
014525,000677: 06,7041 61775 AD S2KEEP5
014526,000678: 06,7042 51775 TS S2KEEP5 # -0
014527,000679: 06,7043 46704 DV4-- CS DVCON1
014528,000680: 06,7044 51774 TS S2KEEP4
014529,000681: 06,7045 25777 EXTEND
014530,000682: 06,7046 51774 DV S2KEEP4 # C(A) = 37777 C(Q) = -37776
014531,000683: 06,7047 60001 AD Q
014532,000684: 06,7050 06030 TC -ONECHK -1
014533,000685: 06,7051 40003 CS LP # C(LP) = +1
014534,000686: 06,7052 61775 AD S2KEEP5
014535,000687: 06,7053 06031 TC -ONECHK
014536,000688: 06,7054 10550 CCS NEWJOB
014537,000689: 06,7055 07102 TC DUMEXIT2
014538,000690: 06,7056 11777 CCS S2KEEP7
014539,000691: 06,7057 07061 TC +2
014540,000692: 06,7060 07063 TC SOPTION3 -3
014541,000693: 06,7061 51777 TS S2KEEP7
014542,000694: 06,7062 06710 TC DV1++ # BACK TO DEVIDE LOOP
014543,000695:
014544,000696: 06,7063 31770 XCH S2COUNT +2 # ADD +1 TO S2COUNT +2 REGISTER AT THIS
014545,000697: 06,7064 64516 AD S2CON1 # POINT OF SELF-CHECK
014546,000698: 06,7065 31770 XCH S2COUNT +2
014547,000699: 06,7066 11762 SOPTION3 CCS S2MODE
014548,000700: 06,7067 06607 TC MPNMBRS # STAY IN MPNMBRS LOOP
014549,000701: 06,7070 07073 TC S2MODECK
014550,000702: 06,7071 07073 TC S2MODECK # SHOULD NOT COME HERE
014551,000703: 06,7072 07073 TC S2MODECK # END OF SELF-CHECK. START AGAIN
014552,000704:
014553,000705: # COMPUTER ACTIVITY LIGHT (GREEN LIGHT) MAINTENANCE.
014554,000706:
014555,000707: 06,7073 10550 S2MODECK CCS NEWJOB # SEE IF ITS TIME FOR A CHANGE.
014556,000708: 06,7074 07102 TC DUMEXIT2
014557,000709:
014558,000710: 06,7075 11762 ADVAN2 CCS S2MODE # SEE IF SELF-CHECK IS WANTED
014559,000711: 06,7076 06054 TC CCSCHK2 # YES PULSES ONLY
014560,000712: 06,7077 02115 TC ENDOFJOB
014561,000713: 06,7100 06054 TC CCSCHK2 # YES PULSES + SC + ERASABLE
014562,000714: 06,7101 06054 TC CCSCHK2 # YES ALL OF SELF-CHECK
014563,000715:
014564,000716: 06,7102 30001 DUMEXIT2 XCH Q
014565,000717: 06,7103 51763 TS QADRS # STORE RETURN ADDRESS
014566,000718: 06,7104 45502 CS TWO # TURN ON GREEN LIGHT (COMP ACT) AND
014567,000719: 06,7105 20017 INHINT
014568,000720: 06,7106 70011 MASK OUT1 # GO TO CHANG1.
014569,000721: 06,7107 65502 AD TWO
014570,000722: 06,7110 50011 TS OUT1
014571,000723: 06,7111 02072 TC CHANG1
014572,000724:
014573,000725: 06,7112 45502 DUMYJOB CS TWO # IDLING AGAIN- TURN OFF ACTIVITY LIGHT
014574,000726: 06,7113 20017 INHINT
014575,000727: 06,7114 70011 MASK OUT1 # LIGHT.
014576,000728: 06,7115 50011 TS OUT1
014577,000729: 06,7116 20016 RELINT
014578,000730: 06,7117 01763 TC QADRS # BACK TO CHECKING COMPUTER
014579,000731:
MAS 2023: The following function is the entry point for the C-RELAY test added to Sunrise 69. Since the three modules of Sunrise 45 were not modified in the creation of Sunrise 69, this function is not referred to anwhere and must be invoked manually, by address, using verb 20 (request executive). The procedure to do so is: V21N26E 04000E V20N01E 15120E |
014587,000739:
014588,000740: # C-RELAY TESTER
014589,000741:
014590,000742: 06,7120 34500 CCHK CAF BIT15
014591,000743: 06,7121 50743 TS DSPTAB +11D
014592,000744: 06,7122 50744 TS DSPTAB +12D
014593,000745: 06,7123 50745 TS DSPTAB +13D
014594,000746:
014595,000747: 06,7124 34510 CAF BIT7
014596,000748: 06,7125 20017 INHINT
014597,000749: 06,7126 02124 TC WAITLIST
014598,000750: 06,7127 15132 CADR CCHKA
014599,000751: 06,7130 37227 CAF LCCHKB
014600,000752: 06,7131 02120 TC JOBSLEEP
014601,000753:
014602,000754: 06,7132 37227 CCHKA CAF LCCHKB
014603,000755: 06,7133 02051 TC JOBWAKE
014604,000756: 06,7134 02203 TC TASKOVER
014605,000757:
014606,000758: 06,7135 35502 CCHKB CAF TWO
014607,000759: 06,7136 50114 TS MPAC
014608,000760:
014609,000761: 06,7137 33000 CAF TEN
014610,000762: 06,7140 50115 CCHK0 TS MPAC +1
014611,000763:
014612,000764: 06,7141 20000 INDEX A
014613,000765: 06,7142 34504 CAF BIT11
014614,000766: 06,7143 64500 AD BIT15
014615,000767: 06,7144 20114 INDEX MPAC
014616,000768: 06,7145 50743 TS DSPTAB +11D
014617,000769:
014618,000770: 06,7146 34507 CAF BIT8
014619,000771: 06,7147 20017 INHINT
014620,000772: 06,7150 02124 TC WAITLIST
014621,000773: 06,7151 15154 CADR CCHK1
014622,000774:
014623,000775: 06,7152 37230 CAF LCCHK2
014624,000776: 06,7153 02120 TC JOBSLEEP
014625,000777:
014626,000778: 06,7154 37230 CCHK1 CAF LCCHK2
014627,000779: 06,7155 02051 TC JOBWAKE
014628,000780: 06,7156 02203 TC TASKOVER
014629,000781:
014630,000782: 06,7157 30007 CCHK2 XCH IN3
014631,000783: 06,7160 10007 CCS IN3
014632,000784: 06,7161 07224 TC CCHKALM
014633,000785: 06,7162 07224 TC CCHKALM
014634,000786: 06,7163 07165 TC +2
014635,000787: 06,7164 07224 TC CCHKALM
014636,000788:
014637,000789: 06,7165 10115 CCS MPAC +1
014638,000790: 06,7166 07140 TC CCHK0
014639,000791:
014640,000792: 06,7167 34500 CAF BIT15 # TURN OFF LAST RELAY.
014641,000793: 06,7170 20114 INDEX MPAC
014642,000794: 06,7171 50743 TS DSPTAB +11D
014643,000795:
014644,000796: 06,7172 10114 CCS MPAC
014645,000797: 06,7173 07136 TC CCHK0 -2
014646,000798: 06,7174 03025 TC GRABDSP
014647,000799: 06,7175 03033 TC PREGBSY
014648,000800: 06,7176 34510 CAF BIT7
014649,000801: 06,7177 20017 INHINT
014650,000802: 06,7200 02124 TC WAITLIST
014651,000803: 06,7201 15204 CADR CCHKC
014652,000804: 06,7202 37232 CAF LCCHKD
014653,000805: 06,7203 02120 TC JOBSLEEP
014654,000806:
014655,000807: 06,7204 37232 CCHKC CAF LCCHKD
014656,000808: 06,7205 02051 TC JOBWAKE
014657,000809: 06,7206 02203 TC TASKOVER
014658,000810:
014659,000811: 06,7207 30007 CCHKD XCH IN3
014660,000812: 06,7210 10007 CCS IN3
014661,000813: 06,7211 07215 TC +4
014662,000814: 06,7212 07215 TC +3
014663,000815: 06,7213 07224 TC CCHKALM
014664,000816: 06,7214 07224 TC CCHKALM
014665,000817:
014666,000818: 06,7215 35361 CAF SEVEN
014667,000819: 06,7216 50116 TS MPAC +2
014668,000820: 06,7217 37231 CAF CCHKNV
014669,000821: 06,7220 02670 TC NVSUB
014670,000822: 06,7221 03040 TC PRENVBSY
014671,000823: 06,7222 03107 TSTOUT TC FREEDSP
014672,000824: 06,7223 02115 TC ENDOFJOB
014673,000825:
014674,000826: 06,7224 02605 CCHKALM TC ALARM
014675,000827: 06,7225 01103 OCT 1103
014676,000828: 06,7226 02115 TC ENDOFJOB
014677,000829:
014678,000830: 06,7227 15135 LCCHKB CADR CCHKB
014679,000831: 06,7230 15157 LCCHK2 CADR CCHK2
014680,000832: 06,7231 00101 CCHKNV OCT 00101
014681,000833: 06,7232 15207 LCCHKD CADR CCHKD
014682,000834:
MAS 2023: The following function is the entry point for the DSKY test added to Sunrise 69. Since the three modules of Sunrise 45 were not modified in the creation of Sunrise 69, this function is not referred to anwhere and must be invoked manually, by address, using verb 20 (request executive). The procedure to do so is: V21N26E 04000E V20N01E 15233E |
014690,000842:
014691,000843: # DSKY TESTER
014692,000844:
014693,000845: 06,7233 33000 DCHECK CAF TEN
014694,000846: 06,7234 50114 DC9 TS MPAC
014695,000847: 06,7235 20114 INDEX MPAC
014696,000848: 06,7236 37330 CAF DSKYCODE
014697,000849: 06,7237 50115 TS MPAC +1
014698,000850: 06,7240 20017 INHINT
014699,000851: 06,7241 40000 COM
014700,000852: 06,7242 50741 TS DSPTAB +9D
014701,000853: 06,7243 42766 CS MID5
014702,000854: 06,7244 70115 MASK MPAC +1
014703,000855: 06,7245 40000 COM
014704,000856: 06,7246 50737 TS DSPTAB +7
014705,000857: 06,7247 44504 CS BIT11
014706,000858: 06,7250 70115 MASK MPAC +1
014707,000859: 06,7251 40000 COM
014708,000860: 06,7252 50730 TS DSPTAB
014709,000861: 06,7253 50731 TS DSPTAB +1
014710,000862: 06,7254 50732 TS DSPTAB +2
014711,000863: 06,7255 50733 TS DSPTAB +3
014712,000864: 06,7256 50734 TS DSPTAB +4
014713,000865: 06,7257 50735 TS DSPTAB +5
014714,000866: 06,7260 50736 TS DSPTAB +6
014715,000867: 06,7261 50740 TS DSPTAB +8D
014716,000868: 06,7262 50742 TS DSPTAB +10D
014717,000869: 06,7263 37343 CAF DCNOUT
014718,000870: 06,7264 50727 TS NOUT
014719,000871: 06,7265 34504 DCWAIT CAF BIT11 # 10.24 SEC WAIT
014720,000872: 06,7266 02124 TC WAITLIST
014721,000873: 06,7267 15272 CADR DC10
014722,000874: 06,7270 37344 CAF LDC11
014723,000875: 06,7271 02120 TC JOBSLEEP
014724,000876:
014725,000877: 06,7272 37344 DC10 CAF LDC11
014726,000878: 06,7273 02051 TC JOBWAKE
014727,000879: 06,7274 02203 TC TASKOVER
014728,000880:
014729,000881: 06,7275 10114 DC11 CCS MPAC
014730,000882: 06,7276 07234 TC DC9
014731,000883:
014732,000884: 06,7277 07301 TC +2
014733,000885: 06,7300 07312 TC DC+
014734,000886:
014735,000887: 06,7301 20017 INHINT
014736,000888: 06,7302 44373 CS 6K # - SIGNS.
014737,000889: 06,7303 50730 TS DSPTAB
014738,000890: 06,7304 50733 TS DSPTAB +3
014739,000891: 06,7305 50735 TS DSPTAB +5
014740,000892: 06,7306 50114 TS MPAC
014741,000893: 06,7307 34473 CAF THREE
014742,000894: 06,7310 50727 TS NOUT
014743,000895: 06,7311 07265 TC DCWAIT
014744,000896:
014745,000897: 06,7312 20017 DC+ INHINT
014746,000898: 06,7313 44373 CS 6K
014747,000899: 06,7314 50731 TS DSPTAB +1
014748,000900: 06,7315 50734 TS DSPTAB +4
014749,000901: 06,7316 50736 TS DSPTAB +6
014750,000902: 06,7317 44503 CS BIT12
014751,000903: 06,7320 50730 TS DSPTAB
014752,000904: 06,7321 50733 TS DSPTAB +3
014753,000905: 06,7322 50735 TS DSPTAB +5
014754,000906: 06,7323 34475 CAF SIX
014755,000907: 06,7324 50727 TS NOUT
014756,000908: 06,7325 32765 CAF LOW5
014757,000909: 06,7326 50011 TS OUT1 # TURNS ON DSKY LAMPS.
014758,000910: 06,7327 02115 TC ENDOFJOB
014759,000911:
014760,000912: 06,7330 04000 DSKYCODE OCT 04000 # BLANKS
014761,000913: 06,7331 07265 OCT 07265 # 00
014762,000914: 06,7332 06143 OCT 06143 # 11
014763,000915: 06,7333 07471 OCT 07471 # 22
014764,000916: 06,7334 07573 OCT 07573 # 33
014765,000917: 06,7335 06757 OCT 06757 # 44
014766,000918: 06,7336 07736 OCT 07736 # 55
014767,000919: 06,7337 07634 OCT 07634 # 66
014768,000920: 06,7340 07163 OCT 07163 # 77
014769,000921: 06,7341 07675 OCT 07675 # 88
014770,000922: 06,7342 07777 OCT 07777 # 99
014771,000923: 06,7343 00013 DCNOUT DEC 11 B-14
014772,000924: 06,7344 15275 LDC11 CADR DC11
End of include-file AGC_SELF-CHECK_NUMBER_TWO.agc. Parent file is MAIN.agc