Source Code
These source-code files were transcribed from a printout in Don Eyles's personal
collection, scanned by archive.org, and financially sponsored by Linden Sims.
A team of volunteers performed the transcription and proof-reading. The scanned
page images are available at
the Virtual AGC Project website, as well as higher-quality (but much larger)
images at
the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating
"issues" at
the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 56 OF AGC PROGRAM ZERLINA BY ZOROASTER 9:12 OCT. 21,1970Note that the date is the date of the printout, not the date of the program revision. |
055661,000002: ## Copyright: Public domain.
055662,000003: ## Filename: AGC_BLOCK_TWO_SELF-CHECK.agc
055663,000004: ## Purpose: A log section of Zerlina 56, the final revision of
055664,000005: ## Don Eyles's offline development program for the variable
055665,000006: ## guidance period servicer. It also includes a new P66 with LPD
055666,000007: ## (Landing Point Designator) capability, based on an idea of John
055667,000008: ## Young's. Neither of these advanced features were actually flown,
055668,000009: ## but Zerlina was also the birthplace of other big improvements to
055669,000010: ## Luminary including the terrain model and new (Luminary 1E)
055670,000011: ## analog display programs. Zerlina was branched off of Luminary 145,
055671,000012: ## and revision 56 includes all changes up to and including Luminary
055672,000013: ## 183. It is therefore quite close to the Apollo 14 program,
055673,000014: ## Luminary 178, where not modified with new features.
055674,000015: ## Reference: pp. 1273-1282
055675,000016: ## Assembler: yaYUL
055676,000017: ## Contact: Ron Burkey <info@sandroid.org>.
055677,000018: ## Website: www.ibiblio.org/apollo/index.html
055678,000019: ## Mod history: 2017-07-28 MAS Created from Luminary 210.
055679,000020: ## 2017-08-29 MAS Updated for Zerlina 56.
055680,000021:
Page 1273 |
055682,000023: # PROGRAM DESCRIPTION DATE 20 DECEMBER 1967
055683,000024: # PROGRAM NAME - SELF-CHECK LOG SECTION AGC BLOCK TWO SELF-CHECK
055684,000025: # MOD NO - 1 ASSEMBLY SUBROUTINE UTILITYM REV 25
055685,000026: # MOD BY - GAUNTT
055686,000027:
055687,000028:
055688,000029: # FUNCTIONAL DESCRIPTION
055689,000030:
055690,000031: # PROGRAM HAS TWO MAIN PARTS. THE FIRST IS SELF-CHECK WHICH RUNS AS A ZERO PRIORITY JOB WITH NO CORE SET, AS
055691,000032: # PART OF THE BACK-UP IDLE LOOP. THE SECOND IS SHOW-BANKSUM WHICH RUNS AS A REGULAR EXECUTIVE JOB WITH ITS OWN
055692,000033: # STARTING VERB.
055693,000034: # THE PURPOSE OF SELF-CHECK IS TO CHECK OUT VARIOUS PARTS OF THE COMPUTER AS OUTLINED BELOW IN THE OPTIONS.
055694,000035: # THE PURPOSE OF SHOW-BANKSUM IS TO DISPLAY THE SUM OF EACH BANK , ONE AT A TIME.
055695,000036: # IN ALL THERE ARE 7 POSSIBLE OPTIONS IN THIS BLOCK II VERSION OF SELF-CHECK. MORE DETAIL DESCRIPTION MAY BE
055696,000037: # FOUND IN E-2065 BLOCK II AGC SELF-CHECK AND SHOW BANKSUM BY EDWIN D. SMALLY DECEMBER 1966, AND ADDENDA 2 AND 3.
055697,000038: # THE DIFFERENT OPTIONS ARE CONTROLLED BY PUTTING DIFFERENT NUMBERS IN THE SMODE REGISTER (NOUN 27). BELOW IS
055698,000039: # A DESCRIPTION OF WHAT PARTS OF THE COMPUTER THAT ARE CHECKED BY THE OPTIONS, AND THE CORRESPONDING NUMBER, IN
055699,000040: # OCTAL, TO LOAD INTO SMODE.
055700,000041: # +-4 ERASABLE MEMORY
055701,000042: # +-5 FIXED MEMORY
055702,000043: # +-1,2,3,6,7,10 EVERYTHING IN OPTIONS 4 AND 5.
055703,000044: # -0 SAME AS +-10 UNTIL AN ERROR IS DETECTED.
055704,000045: # +0 NO CHECK, PUTS COMPUTER INTO THE BACKUP IDLE LOOP.
055705,000046:
055706,000047:
055707,000048: # WARNINGS
055708,000049:
055709,000050: # USE OF E MEMORY RESERVED FOR SELF-CHECK (EVEN IN IDLE LOOP) AS TEMP STORAGE BY OTHER PROGRAMS IS DANGEROUS.
055710,000051: # SMODE SET GREATER THAN OCT 10 PUTS COMPUTER INTO BACKUP IDLE LOOP.
055711,000052:
055712,000053:
055713,000054: # CALLING SEQUENCE
055714,000055:
055715,000056: # TO CALL SELF-CHECK KEY IN
055716,000057: # V 21 N 27 E OPTION NUMBER E
055717,000058: # TO CALL SHOW-BANKSUM KEY IN
055718,000059: # V 91 E DISPLAYS FIRST BANK
055719,000060: # V 33 E PROCEED, DISPLAYS NEXT BANK
055720,000061:
055721,000062:
055722,000063: # EXIT MODES, NORMAL AND ALARM
055723,000064:
055724,000065: # SELF-CHECK NORMALLY CONTINUES INDEFINITELY UNLESS THERE IS AN ERROR DETECTED. IF SO + OPTION NUMBERS PUT
055725,000066: # COMPUTER INTO BACKUP IDLE LOOP, - OPTION NUMBERS RESTART THE OPTION.
055726,000067: # THE -0 OPTION PROCEEDS FROM THE LINE FOLLOWING THE LINE WHERE THE ERROR WAS DETECTED.
055727,000068: # SHOW-BANKSUM PROCEEDS UNTIL A TERMINATE IS KEYED IN (V 34 E). THE COMPUTER IS PUT INTO THE BACKUP IDLE LOOP
055728,000069:
055729,000070:
055730,000071:
055731,000072: # OUTPUT
Page 1274 |
055733,000074: # SELF-CHECK UPON DETECTING AN ERROR LOADS THE SELF-CHECK ALARM CONSTANT (01102) INTO THE FAILREG SET AND
055734,000075: # TURNS ON THE ALARM LIGHT. THE OPERATOR MAY THEN DISPLAY THE THREE FAILREGS BY KEYING IN V 05 N 09 E. FOR FURTHER
055735,000076: # INFORMATION HE MAY KEY IN V 05 N 08 E, THE DSKY DISPLAY IN R1 WILL BE ADDRESS+1 OF WHERE THE ERROR WAS DETECTED,
055736,000077: # IN R2 THE BBCON OF SELF-CHECK, AND IN R3 THE TOTAL NUMBER OF ERRORS DETECTED BY SELF-CHECK SINCE THE LAST MAN
055737,000078: # INITIATED FRESH START (SLAP1).
055738,000079: # SHOW-BANKSUM STARTING WITH BANK 0 DISPLAYS IN R1 THE BANK SUM (A +-NUMBER EQUAL TO THE BANK NUMBER), IN R2
055739,000080: # THE BANK NUMBER, AND IN R3 THE BUGGER WORD.
055740,000081:
055741,000082:
055742,000083: # ERASABLE INITIALIZATION REQUIRED
055743,000084:
055744,000085: # ACCOMPLISHED BY FRESH START
055745,000086: # SMODE SET TO +0
055746,000087:
055747,000088:
055748,000089: # DEBRIS
055749,000090:
055750,000091: # ALL EXITS FROM THE CHECK OF ERASABLE (ERASCHK) RESTORE ORIGINAL CONTENTS TO REGISTERS UNDER CHECK.
055751,000092: # EXCEPTION IS A RESTART. RESTART THAT OCCURS DURING ERASCHK RESTORES ERASABLE, UNLESS THERE IS EVIDENCE TO DOUBT
055752,000093: # E MEMORY, IN WHICH CASE PROGRAM THEN DOES A FRESH START (DOFSTART).
055753,000094:
055754,000095: 25,3767 BANK 25
055755,000096: 43,2000 SETLOC SELFCHEC
055756,000097: 43,2000 BANK
055757,000098:
055758,000099: 43,3231 COUNT* $$/SELF
055759,000100: 43,3231 4753 SBIT1 EQUALS BIT1
055760,000101: 43,3231 4752 SBIT2 EQUALS BIT2
055761,000102: 43,3231 4751 SBIT3 EQUALS BIT3
055762,000103: 43,3231 4750 SBIT4 EQUALS BIT4
055763,000104: 43,3231 4747 SBIT5 EQUALS BIT5
055764,000105: 43,3231 4746 SBIT6 EQUALS BIT6
055765,000106: 43,3231 4745 SBIT7 EQUALS BIT7
055766,000107: 43,3231 4744 SBIT8 EQUALS BIT8
055767,000108: 43,3231 4743 SBIT9 EQUALS BIT9
055768,000109: 43,3231 4742 SBIT10 EQUALS BIT10
055769,000110: 43,3231 4741 SBIT11 EQUALS BIT11
055770,000111: 43,3231 4740 SBIT12 EQUALS BIT12
055771,000112: 43,3231 4737 SBIT13 EQUALS BIT13
055772,000113: 43,3231 4736 SBIT14 EQUALS BIT14
055773,000114: 43,3231 4735 SBIT15 EQUALS BIT15
055774,000115:
055775,000116: 43,3231 4755 S+ZERO EQUALS ZERO
055776,000117: 43,3231 4753 S+1 EQUALS BIT1
055777,000118: 43,3231 4752 S+2 EQUALS BIT2
055778,000119: 43,3231 6257 S+3 EQUALS THREE
055779,000120: 43,3231 4751 S+4 EQUALS FOUR
055780,000121: 43,3231 4756 S+5 EQUALS FIVE
055781,000122: 43,3231 6254 S+6 EQUALS SIX
Page 1275 |
055783,000124: 43,3231 4757 S+7 EQUALS SEVEN
055784,000125: 43,3231 4357 S8BITS EQUALS LOW8 # 00377
055785,000126: 43,3231 4771 CNTRCON = OCT50 # USED IN CNTRCHK
055786,000127: 43,3231 00061 ERASCON1 OCTAL 00061 # USED IN ERASCHK
055787,000128: 43,3232 01373 ERASCON2 OCTAL 01373 # USED IN ERASCHK
055788,000129: 43,3233 5007 ERASCON6 = OCT1400 # USED IN ERASCHK
055789,000130: 43,3233 01461 ERASCON3 OCTAL 01461 # USED IN ERASCHK
055790,000131: 43,3234 01773 ERASCON4 OCTAL 01773 # USED IN ERASCHK
055791,000132: 43,3235 5012 S10BITS EQUALS LOW10 # 01777, USED IN ERASCHK
055792,000133: 43,3235 5020 SBNK03 EQUALS PRIO6 # 06000, USED IN ROPECHK
055793,000134: 43,3235 4350 -MAXADRS = HI5 # FOR ROPECHK
055794,000135: 43,3235 00060 SIXTY OCTAL 00060
055795,000136: 43,3236 60017 SUPRCON OCTAL 60017 # USED IN ROPECHK
055796,000137: 43,3237 17777 S13BITS OCTAL 17777
055797,000138: 43,3240 25252 CONC+S1 OCTAL 25252 # USED IN CYCLSHFT
055798,000139: 43,3241 52400 CONC+S2 OCTAL 52400 # USED IN CYCLSHFT
055799,000140: 43,3242 76777 ERASCON5 OCTAL 76777
055800,000141: 43,3243 5661 S-7 = OCT77770
055801,000142: 43,3243 6124 S-4 EQUALS NEG4
055802,000143: 43,3243 7757 S-3 EQUALS NEG3
055803,000144: 43,3243 7760 S-2 EQUALS NEG2
055804,000145: 43,3243 7761 S-1 EQUALS NEGONE
055805,000146: 43,3243 4754 S-ZERO EQUALS NEG0
055806,000147:
055807,000148: 43,3243 E3,1400 EBANK= LST1
055808,000149: 43,3243 01371 ADRS1 ADRES SKEEP1
055809,000150: 43,3244 03335 SELFADRS ADRES SELFCHK # SELFCHK RETURN ADDRESS. SHOULD BE PUT
055810,000151: # IN SELFRET WHEN GOING FROM SELFCHK TO
055811,000152: # SHOWSUM AND PUT IN SKEEP1 WHEN GOING
055812,000153: # FROM SHOWSUM TO SELF-CHECK.
055813,000154:
055814,000155: 43,3245 31360 PRERRORS CA ERESTORE # IS IT NECESSARY TO RESTORE ERASABLE
055815,000156: 43,3246 00006 EXTEND
055816,000157: 43,3247 13256 BZF ERRORS # NO
055817,000158: 43,3250 00006 EXTEND
055818,000159: 43,3251 31376 DCA SKEEP5
055819,000160: 43,3252 51377 INDEX SKEEP7
055820,000161: 43,3253 52001 DXCH 0000 # RESTORE THE TWO ERASABLE REGISTERS
055821,000162: 43,3254 34755 CA S+ZERO
055822,000163: 43,3255 55360 TS ERESTORE
055823,000164: 43,3256 00004 ERRORS INHINT
055824,000165: 43,3257 30002 CA Q
055825,000166: 43,3260 55357 TS SFAIL # SAVE Q FOR FAILURE LOCATION
055826,000167: 43,3261 55363 TS ALMCADR # FOR DISPLAY WITH BBANK AND ERCOUNT
055827,000168: 43,3262 25365 INCR ERCOUNT # KEEP TRACK OF NUMBER OF MALFUNCTIONS.
055828,000169: 43,3263 05602 TCALARM2 TC ALARM2
055829,000170: 43,3264 01102 OCT 01102 # SELF-CHECK MALFUNCTION INDICATOR
055830,000171: 43,3265 11362 CCS SMODE
055831,000172: 43,3266 34755 SIDLOOP CA S+ZERO
055832,000173: 43,3267 55362 TS SMODE
Page 1276 |
055834,000175: 43,3270 03335 TC SELFCHK # GO TO IDLE LOOP
055835,000176: 43,3271 01357 TC SFAIL # CONTINUE WITH SELF-CHECK
055836,000177:
055837,000178: 43,3272 10000 -1CHK CCS A
055838,000179: 43,3273 13245 TCF PRERRORS
055839,000180: 43,3274 13245 TCF PRERRORS
055840,000181: 43,3275 10000 CCS A
055841,000182: 43,3276 13245 TCF PRERRORS
055842,000183: 43,3277 00002 TC Q
055843,000184:
055844,000185: 43,3300 00006 SMODECHK EXTEND
055845,000186: 43,3301 23371 QXCH SKEEP1
055846,000187: 43,3302 03331 TC CHECKNJ # CHECK FOR NEW JOB
055847,000188: 43,3303 11362 CCS SMODE
055848,000189: 43,3304 03311 TC SOPTIONS
055849,000190: 43,3305 03302 TC SMODECHK +2 # TO BACKUP IDLE LOOP
055850,000191: 43,3306 03311 TC SOPTIONS
055851,000192: 43,3307 25366 INCR SCOUNT
055852,000193: 43,3310 01371 TC SKEEP1 # CONTINUE WITH SELF-CHECK
055853,000194:
055854,000195: 43,3311 65661 SOPTIONS AD S-7
055855,000196: 43,3312 00006 EXTEND
055856,000197: 43,3313 63315 BZMF +2 # FOR OPTIONS BELOW NINE.
055857,000198: 43,3314 03266 BNKOPTN TC SIDLOOP # ILLEGAL OPTION. GO TO IDLE LOOP.
055858,000199: 43,3315 25366 INCR SCOUNT # FOR OPTIONS BELOW NINE.
055859,000200: 43,3316 64757 AD S+7
055860,000201:
055861,000202: 43,3317 50000 INDEX A
055862,000203: 43,3320 03321 TC SOPTION1
055863,000204: 43,3321 01371 SOPTION1 TC SKEEP1 # WAS TC+TCF
055864,000205: 43,3322 01371 SOPTION2 TC SKEEP1 # WAS IN:OUT1
055865,000206: 43,3323 01371 SOPTION3 TC SKEEP1 # WAS COUNTCHK
055866,000207: 43,3324 03336 SOPTION4 TC ERASCHK
055867,000208: 43,3325 03517 SOPTION5 TC ROPECHK
055868,000209: 43,3326 01371 SOPTION6 TC SKEEP1
055869,000210: 43,3327 01371 SOPTION7 TC SKEEP1
055870,000211: 43,3330 01371 SOPTON10 TC SKEEP1 # CONTINUE WITH SELF-CHECK
055871,000212:
055872,000213: 43,3331 00006 CHECKNJ EXTEND
055873,000214: 43,3332 23361 QXCH SELFRET # SAVE RETURN ADDRESS WHILE TESTING NEWJOB
055874,000215: 43,3333 04635 TC POSTJUMP # TO SEE IF ANY JOBS HAVE BECOME ACTIVE.
055875,000216: 43,3334 03216 CADR ADVAN
055876,000217:
055877,000218: 43,3335 03300 SELFCHK TC SMODECHK # ** CHARLEY, COME IN HERE
055878,000219:
055879,000220: # SKEEP7 HOLDS LOWEST OF TWO ADDRESSES BEING CHECKED.
055880,000221: # SKEEP6 HOLDS B(X+1).
055881,000222: # SKEEP5 HOLDS B(X).
055882,000223: # SKEEP4 HOLDS C(EBANK) DURING ERASLOOP AND CHECKNJ.
055883,000224: # SKEEP3 HOLDS LAST ADDRESS BEING CHECKED (HIGHEST ADDRESS).
Page 1277 |
055885,000226: # SKEEP2 CONTROLS CHECKING OF NON-SWITCHABLE ERASABLE MEMORY WITH BANK NUMBERS IN EB.
055886,000227: # ERASCHK TAKES APPROXMATELY 7 SECONDS
055887,000228: 43,3336 34753 ERASCHK CA S+1
055888,000229: 43,3337 55372 TS SKEEP2
055889,000230: 43,3340 34755 0EBANK CA S+ZERO
055890,000231: 43,3341 54003 TS EBANK
055891,000232: 43,3342 33233 CA ERASCON3 # 01461
055892,000233: 43,3343 55377 TS SKEEP7 # STARTING ADDRESS
055893,000234: 43,3344 35012 CA S10BITS # 01777
055894,000235: 43,3345 55373 TS SKEEP3 # LAST ADDRESS CHECKED
055895,000236: 43,3346 03366 TC ERASLOOP
055896,000237:
055897,000238: 43,3347 35007 E134567B CA ERASCON6 # 01400
055898,000239: 43,3350 55377 TS SKEEP7 # STARTING ADDRESS
055899,000240: 43,3351 35012 CA S10BITS # 01777
055900,000241: 43,3352 55373 TS SKEEP3 # LAST ADDRESS CHECKED
055901,000242: 43,3353 03366 TC ERASLOOP
055902,000243:
055903,000244: 43,3354 35007 2EBANK CA ERASCON6 # 01400
055904,000245: 43,3355 55377 TS SKEEP7 # STARTING ADDRESS
055905,000246: 43,3356 33234 CA ERASCON4 # 01773
055906,000247: 43,3357 55373 TS SKEEP3 # LAST ADDRESS CHECKED
055907,000248: 43,3360 03366 TC ERASLOOP
055908,000249:
055909,000250: 43,3361 55372 NOEBANK TS SKEEP2 # +0
055910,000251: 43,3362 33231 CA ERASCON1 # 00061
055911,000252: 43,3363 55377 TS SKEEP7 # STARTING ADDRESS
055912,000253: 43,3364 33232 CA ERASCON2 # 01373
055913,000254: 43,3365 55373 TS SKEEP3 # LAST ADDRESS CHECKED
055914,000255:
055915,000256: 43,3366 00004 ERASLOOP INHINT
055916,000257: 43,3367 30003 CA EBANK # STORES C(EBANK)
055917,000258: 43,3370 55374 TS SKEEP4
055918,000259: 43,3371 00006 EXTEND
055919,000260: 43,3372 51377 NDX SKEEP7
055920,000261: 43,3373 30001 DCA 0000
055921,000262: 43,3374 53376 DXCH SKEEP5 # STORES C(X) AND C(X+1) IN SKEEP6 AND 5.
055922,000263: 43,3375 31377 CA SKEEP7
055923,000264: 43,3376 55360 TS ERESTORE # IF RESTART, RESTORE C(X) AND C(X+1)
055924,000265: 43,3377 54001 TS L
055925,000266: 43,3400 24001 INCR L
055926,000267: 43,3401 50000 NDX A
055927,000268: 43,3402 52001 DXCH 0000 # PUTS OWN ADDRESS IN X AND X +1
055928,000269: 43,3403 51377 NDX SKEEP7
055929,000270: 43,3404 40001 CS 0001 # CS X+1
055930,000271: 43,3405 51377 NDX SKEEP7
055931,000272: 43,3406 60000 AD 0000 # AD X
055932,000273: 43,3407 03272 TC -1CHK
055933,000274: 43,3410 31360 CA ERESTORE # HAS ERASABLE BEEN RESTORED
055934,000275: 43,3411 00006 EXTEND
Page 1278 |
055936,000277: 43,3412 13436 BZF ELOOPFIN # YES, EXIT ERASLOOP.
055937,000278: 43,3413 00006 EXTEND
055938,000279: 43,3414 51377 NDX SKEEP7
055939,000280: 43,3415 40001 DCS 0000 # COMPLEMENT OF ADDRESS OF X AND X+1
055940,000281: 43,3416 51377 NDX SKEEP7
055941,000282: 43,3417 52001 DXCH 0000 # PUT COMPLEMENT OF ADDRESS OF X AND X+1
055942,000283: 43,3420 51377 NDX SKEEP7
055943,000284: 43,3421 40000 CS 0000 # CS X
055944,000285: 43,3422 51377 NDX SKEEP7
055945,000286: 43,3423 60001 AD 0001 # AD X+1
055946,000287: 43,3424 03272 TC -1CHK
055947,000288: 43,3425 31360 CA ERESTORE # HAS ERASABLE BEEN RESTORED
055948,000289: 43,3426 00006 EXTEND
055949,000290: 43,3427 13436 BZF ELOOPFIN # YES, EXIT ERASLOOP.
055950,000291: 43,3430 00006 EXTEND
055951,000292: 43,3431 31376 DCA SKEEP5
055952,000293: 43,3432 51377 NDX SKEEP7
055953,000294: 43,3433 52001 DXCH 0000 # PUT B(X) AND B(X+1) BACK INTO X AND X+1
055954,000295: 43,3434 34755 CA S+ZERO
055955,000296: 43,3435 55360 TS ERESTORE # IF RESTART, DO NOT RESTORE C(X), C(X+1)
055956,000297: 43,3436 00003 ELOOPFIN RELINT
055957,000298: 43,3437 03331 TC CHECKNJ # CHECK FOR NEW JOB
055958,000299: 43,3440 31374 CA SKEEP4 # REPLACES B(EBANK)
055959,000300: 43,3441 54003 TS EBANK
055960,000301: 43,3442 25377 INCR SKEEP7
055961,000302: 43,3443 41377 CS SKEEP7
055962,000303: 43,3444 61373 AD SKEEP3
055963,000304: 43,3445 00006 EXTEND
055964,000305: 43,3446 13450 BZF +2
055965,000306: 43,3447 03366 TC ERASLOOP # GO TO NEXT ADDRESS IN SAME BANK
055966,000307: 43,3450 11372 CCS SKEEP2
055967,000308: 43,3451 03361 TC NOEBANK
055968,000309: 43,3452 25372 INCR SKEEP2 # PUT +1 IN SKEEP2.
055969,000310: 43,3453 30003 CA EBANK
055970,000311: 43,3454 64743 AD SBIT9
055971,000312: 43,3455 54003 TS EBANK
055972,000313: 43,3456 63242 AD ERASCON5 # 76777, CHECK FOR BANK E2
055973,000314: 43,3457 00006 EXTEND
055974,000315: 43,3460 13354 BZF 2EBANK
055975,000316: 43,3461 10003 CCS EBANK
055976,000317: 43,3462 03347 TC E134567B # GO TO EBANKS 1,3,4,5,6, AND 7
055977,000318: 43,3463 35007 CA ERASCON6 # END OF ERASCHK
055978,000319: 43,3464 54003 TS EBANK
055979,000320: # CNTRCHK PERFORMS A CS OF ALL REGISTERS FROM OCT. 60 THROUGH OCT. 10.
055980,000321: # INCLUDED ARE ALL COUNTERS, T6-1, CYCLE AND SHIFT, AND ALL RUPT REGISTERS
055981,000322: 43,3465 34771 CNTRCHK CA CNTRCON # 00050
055982,000323: 43,3466 55372 CNTRLOOP TS SKEEP2
055983,000324: 43,3467 64750 AD SBIT4 # +10 OCTAL
055984,000325: 43,3470 50000 INDEX A
055985,000326: 43,3471 40000 CS 0000
Page 1279 |
055987,000328: 43,3472 11372 CCS SKEEP2
055988,000329: 43,3473 03466 TC CNTRLOOP
055989,000330:
055990,000331: # CYCLSHFT CHECKS THE CYCLE AND SHIFT REGISTERS
055991,000332: 43,3474 33240 CYCLSHFT CA CONC+S1 # 25252
055992,000333: 43,3475 54020 TS CYR # C(CYR) = 12525
055993,000334: 43,3476 54022 TS CYL # C(CYL) = 52524
055994,000335: 43,3477 54021 TS SR # C(SR) = 12525
055995,000336: 43,3500 54023 TS EDOP # C(EDOP) = 00125
055996,000337: 43,3501 60020 AD CYR # 37777 C(CYR) = 45252
055997,000338: 43,3502 60022 AD CYL # 00-12524 C(CYL) = 25251
055998,000339: 43,3503 60021 AD SR # 00-25251 C(SR) = 05252
055999,000340: 43,3504 60023 AD EDOP # 00-25376 C(EDOP) = +0
056000,000341: 43,3505 63241 AD CONC+S2 # C(CONC+S2) = 52400
056001,000342: 43,3506 03272 TC -1CHK
056002,000343: 43,3507 60020 AD CYR # 45252
056003,000344: 43,3510 60022 AD CYL # 72523
056004,000345: 43,3511 60021 AD SR # 77775
056005,000346: 43,3512 60023 AD EDOP # 77775
056006,000347: 43,3513 64753 AD S+1 # 77776
056007,000348: 43,3514 03272 TC -1CHK
056008,000349:
056009,000350: 43,3515 25367 INCR SCOUNT +1
056010,000351: 43,3516 03300 TC SMODECHK
056011,000352: # SKEEP1 HOLDS SUM
056012,000353: # SKEEP2 HOLDS PRESENT CONTENTS OF ADDRESS IN ROPECHK AND SHOWSUM ROUTINES
056013,000354: # SKEEP2 HOLDS BANK NUMBER IN LOW ORDER BITS DURING SHOWSUM DISPLAY
056014,000355: # SKEEP3 HOLDS PRESENT ADDRESS (00000 TO 01777 IN COMMON FIXED BANKS)
056015,000356: # (04000 TO 07777 IN FXFX BANKS)
056016,000357: # SKEEP3 HOLDS BUGGER WORD DURING SHOWSUM DISPLAY
056017,000358: # SKEEP4 HOLDS BANK NUMBER AND SUPER BANK NUMBER
056018,000359: # SKEEP5 COUNTS 2 SUCCESSIVE TC SELF WORDS
056019,000360: # SKEEP6 CONTROLS ROPECHK OR SHOWSUM OPTION
056020,000361: # SKEEP7 CONTROLS WHEN ROUNTINE IS IN COMMON FIXED OR FIXED FIXED BANKS
056021,000362:
056022,000363: 43,3517 34754 ROPECHK CA S-ZERO # *
056023,000364: 43,3520 55376 TS SKEEP6 # * -0 FOR ROPECHK.
056024,000365: 43,3521 34755 STSHOSUM CA S+ZERO # * SHOULD BE ROPECHK
056025,000366:
056026,000367: 43,3522 55374 TS SKEEP4 # BANK NUMBER
056027,000368: 43,3523 34753 CA S+1
056028,000369: 43,3524 55377 COMMFX TS SKEEP7
056029,000370: 43,3525 34755 CA S+ZERO
056030,000371: 43,3526 55371 TS SKEEP1
056031,000372: 43,3527 55373 TS SKEEP3
056032,000373: 43,3530 34753 CA S+1
056033,000374: 43,3531 55375 TS SKEEP5 # COUNTS DOWN 2 TC SELF WORDS
056034,000375: 43,3532 31374 COMADRS CA SKEEP4
056035,000376: 43,3533 54001 TS L # TO SET SUPER BANK
056036,000377: 43,3534 74350 MASK HI5
Page 1280 |
056038,000379: 43,3535 61373 AD SKEEP3
056039,000380: 43,3536 04651 TC SUPDACAL # SUPER DATA CALL
056040,000381: 43,3537 03562 TC ADSUM
056041,000382: 43,3540 64741 AD SBIT11 # 02000
056042,000383: 43,3541 03573 TC ADRSCHK
056043,000384:
056044,000385: 43,3542 40000 FXFX CS A
056045,000386: 43,3543 55377 TS SKEEP7
056046,000387: 43,3544 00006 EXTEND
056047,000388: 43,3545 13550 BZF +3
056048,000389: 43,3546 34740 CA SBIT12 # 04000, STARTING ADDRESS OF BANK 02
056049,000390: 43,3547 03551 TC +2
056050,000391: 43,3550 35020 CA SBNK03 # 06000, STARTING ADDRESS OF BANK 03
056051,000392: 43,3551 55373 TS SKEEP3
056052,000393: 43,3552 34755 CA S+ZERO
056053,000394: 43,3553 55371 TS SKEEP1
056054,000395: 43,3554 34753 CA S+1
056055,000396: 43,3555 55375 TS SKEEP5 # COUNTS DOWN 2 TC SELF WORDS
056056,000397: 43,3556 51373 FXADRS INDEX SKEEP3
056057,000398: 43,3557 30000 CA 0000
056058,000399: 43,3560 03562 TC ADSUM
056059,000400: 43,3561 03573 TC ADRSCHK
056060,000401:
056061,000402: 43,3562 55372 ADSUM TS SKEEP2
056062,000403: 43,3563 61371 AD SKEEP1
056063,000404: 43,3564 55371 TS SKEEP1
056064,000405: 43,3565 34755 CAF S+ZERO
056065,000406: 43,3566 61371 AD SKEEP1
056066,000407: 43,3567 55371 TS SKEEP1
056067,000408: 43,3570 41372 CS SKEEP2
056068,000409: 43,3571 61373 AD SKEEP3
056069,000410: 43,3572 00002 TC Q
056070,000411:
056071,000412: 43,3573 22000 ADRSCHK LXCH A
056072,000413: 43,3574 31373 CA SKEEP3
056073,000414: 43,3575 75012 MASK LOW10 # RELATIVE ADDRESS
056074,000415: 43,3576 64350 AD -MAXADRS # SUBTRACT MAX RELATIVE ADDRESS = 1777.
056075,000416: 43,3577 00006 EXTEND
056076,000417: 43,3600 13667 BZF SOPTION # CHECKSUM FINISHED IF LAST ADDRESS.
056077,000418: 43,3601 11375 CCS SKEEP5 # IS CHECKSUM FINISHED
056078,000419: 43,3602 03605 TC +3 # NO
056079,000420: 43,3603 03605 TC +2 # NO
056080,000421: 43,3604 03667 TC SOPTION # GO TO ROPECHK SHOWSUM OPTION
056081,000422: 43,3605 10001 CCS L # -0 MEANS A TC SELF WORD.
056082,000423: 43,3606 03615 TC CONTINU
056083,000424: 43,3607 03615 TC CONTINU
056084,000425: 43,3610 03615 TC CONTINU
056085,000426: 43,3611 11375 CCS SKEEP5
056086,000427: 43,3612 03616 TC CONTINU +1
056087,000428: 43,3613 37761 CA S-1
Page 1281 |
056089,000430: 43,3614 03616 TC CONTINU +1 # AD IN THE BUGGER WORD
056090,000431: 43,3615 34753 CONTINU CA S+1 # MAKE SURE TWO CONSECUTIVE TC SELF WORDS
056091,000432: 43,3616 55375 TS SKEEP5
056092,000433: 43,3617 11376 CCS SKEEP6 # *
056093,000434: 43,3620 10067 CCS NEWJOB # * +1, SHOWSUM
056094,000435: 43,3621 05122 TC CHANG1 # *
056095,000436: 43,3622 03624 TC +2 # *
056096,000437: 43,3623 03331 TC CHECKNJ # -0 IN SKEEP6 FOR ROPECHK
056097,000438:
056098,000439: 43,3624 25373 ADRS+1 INCR SKEEP3
056099,000440: 43,3625 11377 CCS SKEEP7
056100,000441: 43,3626 03532 TC COMADRS
056101,000442: 43,3627 03532 TC COMADRS
056102,000443: 43,3630 03556 TC FXADRS
056103,000444: 43,3631 03556 TC FXADRS
056104,000445:
056105,000446: 43,3632 41374 NXTBNK CS SKEEP4
056106,000447: 43,3633 63722 AD LSTBNKCH # LAST BANK TO BE CHECKED
056107,000448: 43,3634 00006 EXTEND
056108,000449: 43,3635 13124 BZF ENDSUMS # END OF SUMMING OF BANKS.
056109,000450: 43,3636 31374 CA SKEEP4
056110,000451: 43,3637 64741 AD SBIT11
056111,000452: 43,3640 55374 TS SKEEP4 # 37 TO 40 INCRMTS SKEEP4 BY END RND CARRY
056112,000453: 43,3641 03645 TC CHKSUPR
056113,000454: 43,3642 34735 17TO20 CA SBIT15
056114,000455: 43,3643 27374 ADS SKEEP4 # SET FOR BANK 20
056115,000456: 43,3644 03661 TC GONXTBNK
056116,000457: 43,3645 74350 CHKSUPR MASK HI5
056117,000458: 43,3646 00006 EXTEND
056118,000459: 43,3647 13657 BZF NXTSUPR # INCREMENT SUPER BANK
056119,000460: 43,3650 63237 27TO30 AD S13BITS
056120,000461: 43,3651 00006 EXTEND
056121,000462: 43,3652 13654 BZF +2 # BANK SET FOR 30
056122,000463: 43,3653 03661 TC GONXTBNK
056123,000464: 43,3654 33235 CA SIXTY # FIRST SUPER BANK
056124,000465: 43,3655 27374 ADS SKEEP4
056125,000466: 43,3656 03661 TC GONXTBNK
056126,000467: 43,3657 63236 NXTSUPR AD SUPRCON # SET BNK 30 + INCR SUPR BNK AND CANCEL
056127,000468: 43,3660 27374 ADS SKEEP4 # ERC BIT OF THE 37 TO 40 ADVANCE.
056128,000469: 43,3661 11377 GONXTBNK CCS SKEEP7
056129,000470: 43,3662 03524 TC COMMFX
056130,000471: 43,3663 34753 CA S+1
056131,000472: 43,3664 03542 TC FXFX
056132,000473: 43,3665 34745 CA SBIT7 # HAS TO BE LARGER THAN NO OF FXSW BANKS.
056133,000474: 43,3666 03524 TC COMMFX
056134,000475:
056135,000476: 43,3667 31374 SOPTION CA SKEEP4
056136,000477: 43,3670 74350 MASK HI5 # = BANK BITS
056137,000478: 43,3671 04331 TC LEFT5
056138,000479: 43,3672 54001 TS L # BANK NUMBER BEFORE SUPER BANK
Page 1282 |
056140,000481: 43,3673 31374 CA SKEEP4
056141,000482: 43,3674 74357 MASK S8BITS # = SUPER BANK BITS
056142,000483: 43,3675 00006 EXTEND
056143,000484: 43,3676 13704 BZF SOPT # BEFORE SUPER BANK
056144,000485: 43,3677 54021 TS SR # SUPER BANK NECESSARY
056145,000486: 43,3700 30001 CA L
056146,000487: 43,3701 74757 MASK SEVEN
056147,000488: 43,3702 60021 AD SR
056148,000489: 43,3703 54001 TS L # BANK NUMBER WITH SUPER BANK
056149,000490: 43,3704 31376 SOPT CA SKEEP6 # *
056150,000491: 43,3705 00006 EXTEND # *
056151,000492: 43,3706 13710 BZF +2 # * ON -0 CONTINUE WITH ROPE CHECK.
056152,000493: 43,3707 03106 TC SDISPLAY # * ON +1 GO TO DISPLAY OF SUM.
056153,000494: 43,3710 11371 CCS SKEEP1 # FORCE SUM TO ABSOLUTE VALUE.
056154,000495: 43,3711 03713 TC +2
056155,000496: 43,3712 03714 TC +2
056156,000497: 43,3713 64753 AD S+1
056157,000498: 43,3714 55371 TS SKEEP1
056158,000499: 43,3715 40001 BNKCHK CS L # = - BANK NUMBER
056159,000500: 43,3716 61371 AD SKEEP1
056160,000501: 43,3717 67761 AD S-1
056161,000502: 43,3720 03272 TC -1CHK # CHECK SUM
056162,000503: 43,3721 03632 TC NXTBNK
056163,000504:
056164,000505: 43,3722 0067 EBANK= NEWJOB
056165,000506: 43,3722 66100 LSTBNKCH BBCON* # * CONSTANT, LAST BANK.
End of include-file AGC_BLOCK_TWO_SELF-CHECK.agc. Parent file is MAIN.agc