Multiple Pages    

* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 1

0001 * NAME: AB16-CCT4 DOC 70180658000 REV H 0002 * 0003 * DESCRIPTION: H316, DDP-516/716 CENTRAL PROCESSOR TEST 0004 * 0005 * 0006 * REVISION HISTORY: 0007 * REV DATE ECO NO. 0008 * 0009 * H 04-24-73 0010 * G 08-29-72 0011 * F 03-08-72 0012 * E 06-02-71 9597 0013 * D 03-31-71 9394 (O16-CCT4) 0014 * C 02-06/70 7929 (O16-CCT3) 0015 * B 05-27-69 7098 0016 * A -- -- 0017 * 0018 * 0019 * 0020 * 0021 * 0022 * 0023 * 0024 * 0025 * 0026 * 0027 * 0028 * 0029 * 0030 * COPYRIGHT 1973 BY HONEYWELL INFORMATION SYSTEMS INC. 0031 * 0032 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 0033 * 0034 EJCT
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 2

0035 * PURPOSE 0036 * 0037 * COMPREHENSIVE TEST OF STANDARD INSTRUCTION SET FOR HONEYWELL 316, 0038 * 516 AND 716 COMPUTERS 0039 * 0040 * 0041 * THIS PROGRAM IS INTENDED TO BE DISTRIBUTED IN A BINARY 0042 * (SELF-LOADING) FORM. EITHER PAL-AP (FOR PAPER TAPE) OR PALC 0043 * (FOR CARDS) FORMAT IS SUITABLE. THE LINKED TEXT LOADER 0044 * CANNOT BE USED. THE PROGRAM IS COMPLETE AS LOADED AND NO 0045 * EXTERNAL LIBRARIES ARE REQUIRED. 0046 * 0047 * 0048 * RESTRICTIONS 0049 * 0050 * NONE 0051 * 0052 * 0053 * STORAGE 0054 * 0055 * USES AND TESTS ALL OF THE COMPUTER MEMORY, UPTO 32K. 0056 * 0057 * 0058 * TIME 0059 * 0060 * APPROXIMATE TIME FOR ONE PASS (SW.1 RESET) 0061 * 0062 * 716 - 2.0 MINUTES 0063 * 516 - 2.5 MINUTES 0064 * 316 - 4.0 MINUTES 0065 * 0066 * 0067 * METHOD 0068 * 0069 * LOAD THE PROGRAM AND START EXECUTION AT '1000. 0070 * 0071 * THE AB16-CCT4 TEST PROGRAM IS A STAND-ALONE PROGRAM CONS 0072 * OF SUBROUTINES WHICH HAVE BEEN BOUND TOGETHER BY A CONTROL 0073 * ROUTINE. THE SUBROUTINES HAVE BEEN DIVIDED INTO SEVEN SECTOR 0074 * TESTS. THE FIRST FIVE SECTOR TESTS ARE RUN IN PLACE FIRST AND 0075 * THEN THE PROGRAM DETERMINES IF CPU IS 716. IF IT IS, THE PROGRAM 0076 * IS INITIALIZED TO HANDLE 7 SECTOR TESTS. IF IT IS A 316 OR 0077 * A 516. ONLY THE FIRST 5 SECTOR TESTS ARE INITIALIZED. IN EITHER 0078 * CASE, THE TESTS ARE RELOCATED T0 HIGHER SECTORS AND RUN THERE. 0079 * AFTER EACH END-OF-PASS, A PASS COUNT IS TYPED AND THE TESTS ARE 0080 * RESTAPTED AUTOMATICALLY. 0081 * 0082 * SETTING OF SENSE SWITCH 1 ALLOWS TO RUN THE TESTS IN PLACE. 0083 * ON SUCCESSFUL RUN IN PLACE, A CR IS OUTPUT T0 THE TELETYPE AND 0084 * THE PROGRAM CONTINUES TO EXECUTE IN PLACE.
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 3

0085 * 0086 * RESETTING OF SENSE SWITCH 1 WILL REINITIALISE THE PROGRAM TO 0087 * RUN THE TESTS IN ALL SECTORS. AND THE ABOVE TIMES WILL APPLY. 0088 * 0089 * 0090 * IF THE PROGRAM DETERMINES THAT THE MEMORY SIZE IS LARGER THAN 0091 * 16K, THEN AFTER EXECUTION OF THE TESTS IN ALL SECTORS UPTO 37. 0092 * THE FIRST FIVE (OR SEVEN) SECTORS CONTAINING THE MAIN PROGRAM ARE 0093 * RELOCATED TO THE UPPER HALF OF MEMORY STARTING AT '40000 AND 0094 * CONTROL IS TRANSFERRED TO THE EXECUTIVE IN THE 40TH SECTOR. 0095 * AFTER THE TESTS HAVE RUN IN THE UPPER HALF OF MEMORY, CONTROL 0096 * IS AGAIN TRANSFERRED TO THE LOW 16K WHERE THE MAIN PROGRAM RESIDES 0097 * PERMANENTLY. 0098 * 0099 * 0100 * SENSE SWITCH USE 0101 * 0102 * SENSE SWITCH 1 - SET: TESTS IN PLACE AND OUTPUTS A CR ON 0103 * COMPLETION OF TESTS AND STARTS AGAIN 0104 * 0105 * RESET: PROGRAM RELOCATES ITSELF AND TESTS 0106 * RUN IN ALL SECTORS CONTINUOUSLY. 0107 * 0108 * SENSE SWITCH 2 - SET: PGM HALTS AFTER EACH E.O.P 0109 * 0110 * RESET: NOT USED 0111 * 0112 * SENSE SWITCH 3 - NOT USED 0113 * 0114 * SENSE SWITCH 4 - NOT USED 0115 * 0116 * 0117 * THE SENSE SWITCH TEST IS PERFORMED BY SETTING THE SENSE SWITCH 0118 * AND THEN PRESSING THE START BUTTON. CHECK A REG FOR RESULTS. 0119 * A REG WILL SHOW BITS 1, 2, 3 OR 4 CORRESPONDING TO THE SWITCHES 0120 * SET. THUS IF BITS 2 AND 4 ARE ON THEN SWITCHES 2 AND 4 ARE SET. 0121 * IF NO BITS ARE ON THEN NO SWITCHES ARE SUPPOSED TO BE SET. 0122 * OR, IF YOU SET ANY SWITCH. THE LIGHT MUST COME ON, ELSE IT IS A 0123 * POSITIVE SWITCH FAILURE. 0124 * CHANGE EACH SENSE SWITCH FROM THE RESET CONDITION TO THE SET 0125 * CONDITION AND THEN BACK TO RESET STATE. OBSERVING THE A REG 0126 * EVERY TIME. AFTER EACH CHANGE OF POSITION THE START BUTTON MUST 0127 * BE PRESSED. THIS WILL OCCUR EIGHT TIMES 0128 * 0129 * FOR H716, PFI/ARS FEATURE IS STANDARD AND AS SUCH, A TEST 0130 * HAS BEEN INCLUDED TO USE IT. THAT IS ANY TIME WHILE THE CPU 0131 * IS IN RUN MODE, YOU MAY SHUT THE MACHINE OFF AND BRING IT UP 0132 * AGAIN IN A FEW SECONDS, AND THE PROGRAM WILL AUTOMATICALLY 0133 * RESTART FROM LOC. 'STR2'. 0134 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 4

0135 * 0136 * ERROR INDICATIONS 0137 * 0138 * THE PROGRAM STOPS WHEREVER IT FINDS AN ERROR. LOCATION '777 0139 * CONTAINS THE TEST NO. WHICH SHOWED THE FAILURE. GOING TO THE 0140 * TEST IN THE LISTING WOULD PIN-POINT THE EXACT LOCATION OF THE 0141 * ERROR IN CASE THE TEST WAS BEING RUN IN SOME HIGHER SECTOR. 0142 * IF THE TEST WAS RUNNING IN A SECTOR HIGHER THAN '40 AT THE 0143 * TIME OF ERROR, THEN LOCATION '40777 WILL GIVE THE TEST NO. 0144 * 0145 * 0146 * INSTRUCTION TEST ARRANGEMENT: 0147 * 0148 * ALL THE TESTS HAVE BEEN DIVIDED INTO SEVEN GROUPS 0149 * AND EACH GROUP HAS BEEN PLACED IN A SEPARATE SECTOR. SECTOR 0150 * ZERO CONTAINS THE CONTROL PROGRAM WHILE SECTORS 1 THROUGH 7 0151 * CONTAIN THE 35 TESTS. THESE SECTOR TESTS ARE RUN SEQUENTIALLY, 0152 * BELOW ARE THE TESTS AS GROUPED IN VARIOUS SECTORS: 0153 * 0154 * TEST NO. DESCRIPTION REFERENCE 0155 * 0156 * SECTOR 1: '14 GENERIC INSTRUCTIONS TEST GENO 0157 * '17 LOCATION *0' AND XREG TRACTION XRG0 0158 * '13 ADDITION TEST ADDS 0159 * '15 SENSE SWITCH TEST SWCH 0160 * '40 ADDER TEST 1 ADD1 0161 * 0162 * SECTOR 2: '41 ADDER TEST 2 ADD2 0163 * '42 ADDER TEST 3 ADD3 0164 * '03 ADD-SUBTRACT TEST ADSB 0165 * '100 INDIRECT ADDRESSING TEST INDA 0166 * '01 IMA INSTRUCTION TEST IMAA 0167 * '07 IAB INSTRUCTION TEST IABA 0168 * '05 IRS INSTRUCTION TEST IRSX 0169 * '02 ERA INSTRUCTION TEST ERAA 0170 * '04 ANA INSTRUCTION TEST ANAA 0171 * '06 CAS INSTRUCTION TEST CASA 0172 * '10 HALF WORD INSTRUCTIONS TEST HWDT 0173 * 0174 * SECTOR 3: '11 STX AND LDX INST TEST XREG 0175 * '12 INK, OTK INSTRUCTIONS TEST KEYS 0176 * '60 ARS INSTRUCTION TEST ARSA 0177 * '61 ALS INSTRUCTION TEST ALSA 0178 * '62 LGL INSTRUCTION TEST LGLA 0179 * '63 LGR INSTRUCTION TEST LGRA 0180 * '64 ALR INSTRUCTION TEST ALRA 0181 * '65 ARR INSTRUCTION TEST ARRA 0182 * '66 LRS INSTRUCTION TEST LRSA 0183 * 0184 * SECTOR 4: '67 LLS INSTRUCTION TEST LLSA
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 5

0185 * '70 LLL INSTRUCTION TEST LLLA 0186 * '71 LRL INSTRUCTION TEST LRLA 0187 * '72 LLR INSTRUCTION TEST LLRA 0188 * '73 LRR INSTRUCTION TEST LRRA 0189 * '74 GENERAL SHIFTS TEST SFTA 0190 * 0191 * SECTOR 5: '16 ENB, INH INSTRUCTIONS TEST IRUP 0192 * '101 S.P. MULTIPLY CAPABILITY TEST MPYT 0193 * '102 S.P. DIVIDE CAPABILITY TEST DIVT 0194 * 0195 * SECTOR 6: '103 716 INSTRUCTIONS TEST PART I X13T 0196 * 0197 * SECTOR 7: '104 716 INSTRUCTIONS TEST PART II X7IT 0198 * 0199 * 0200 ************************************************************************ 0201 * 0202 * 0203 * 0204 CF7 0205 SETB '102 0206 * 0207 ORG '120 0208 * 0209 00120 101000 NSRT NOP PATCH POINT 0210 00121 -0 02 00445 LDA* DMSG 0211 00122 0 10 00402 JST TYPE TYPE PROGRAM IDENTIFICATION 0212 00123 0 02 00520 LDA ='130260 0213 00124 0 04 02747 STA CNT5 INITIALIZE PASS COUNT 0214 00125 0 04 02750 STA CNT5+1 0215 00126 0 02 00517 LDA ='100063 0216 00127 0 04 00064 STA '64 DAC* '63 AT LOC. '64 0217 00130 -0 10 00456 JST* MOOV SET UP FOR PI 0218 00131 000013 DEC 11 INTERRUPT HANDLING ROUTINE 0219 00132 0 000064 DAC '64 0220 00133 0 000065 DAC '65 0221 00134 0 02 00516 LDA ='177760 0222 00135 74 0120 SMK '120 SET THE PI MASK 0223 00136 -0 10 00436 JST* ONE RUN THE FIRST 0224 00137 -0 10 00437 JST* TWO FIVE SECTOR TESTS 0225 00140 -0 10 00440 JST* THRI BEFORE GOING TO CP 0226 00141 -0 10 00441 JST* FOUR IDENTIFICATION ROUTINE 0227 00142 -0 10 00442 JST* FIVE 0228 00143 0 02 00460 LDA DHSC 0229 00144 0 04 00215 STA NXMV INITIALIZE NXMV INSTRUCTION 0230 00145 -0 10 00447 IN00 JST* HSCD DETERMINE HIGHEST SECTOR AND TIME COMPENSAT 0231 * JST* HSCD BECOMES 'NOP' AFTER 1ST EXECUTION 0232 00146 -0 01 00446 JMP* X13S TYPE CP TYPE AND MEMORY SIZE - BECOMES 0233 * A 'NOP' LATER 0234 00147 101000 NOP HLT IF NEEDED
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 6

0235 00150 0 02 00464 LDA HISC GET HIGHEST SECTOR 0236 00151 0 07 00515 SUB ='40 TEST IF OVER '40 SECTORS 0237 00152 101400 SMI SKIP IF LESS THAN '40 SECTORS 0238 00153 0 01 00300 JMP EA01 MORE THAN '40 SECTORS, GO TO EXT ROUT. 0239 00154 0 02 00464 LDA HISC 0240 00155 0 07 00514 IN01 SUB =5 (SUB =7 IF CP IS 716) 0241 00156 100400 SPL 0242 00157 000000 HLT ERROR - SAID MEMORY IS LESS THAN 4K 0243 00160 140407 TCA 0244 00161 0 04 00465 STA HSCT NEG COUNTER FOR ADDILIONAL SECTORS 0245 * 0246 * 0247 00162 000011 STR2 DXA 0248 00163 0 01 00164 JMP *+1 NORMAL ADDRESSING 0249 00164 -0 10 00436 JST* ONE TEST GROUP 1 0250 00165 -0 10 00437 JST* TWO TEST GROUP 2 0251 00166 -0 10 00440 JST* THRI TEST GROUP 3 0252 00167 -0 10 00441 JST* FOUR TEST GROUP 4 0253 00170 -0 10 00442 JST* FIVE TEST GROUP 5 0254 00171 -0 10 00443 IN02 JST* SIX TEST GROUP 6 - NOP IF CP IS NOT 716 0255 00172 -0 10 00444 JST* SEVN TEST GROUP 7 - NOP IF CP IS NOT 716 0256 00173 101020 SS1 IF SENSE SW.1 IS SET, TEST IN PLACE 0257 00174 0 01 00200 JMP *+4 IF RESET, JUMP AROUND FOR FULL TESTING 0258 00175 0 02 00467 LDA DCCR TYPE CR FOR EOP IN PLACE 0259 00176 0 10 00402 JST TYPE 0260 00177 0 01 00162 IN08 JMP STR2 GO AND TEST IN PLACE 0261 00200 101000 NOP BECOMES 'JST EOPI' IF CP IS 716 AND MEM 4K 0262 00201 101000 NOP BECOMES 'JMP STR2' IF CP IS 716 AND MEM 4K 0263 00202 101000 NOP 0264 00203 101000 NOP 0265 00204 101000 NOP 0266 00205 101000 NOP 0267 00206 101000 IN09 NOP IF CP I5 716 AND MEMORY 20K' THEN AFTER 0268 * THE PROGRAM HAS MOVED TO THE 40TH SECTOR: 0269 * THE ABOVE 'NOP' BECOMES A 'JMP MVEB', 0270 * I.E. NO RELOCATION IS POSSIBLE IN THE 0271 * UPPER BANK WITH ONLY 20K OF MEMORY 0272 00207 0 02 00513 LDA ='1000 STORE SECTOR 0273 00210 0 04 00430 STA PNT1 LENGTH AT POINTER 1 0274 00211 0 02 00512 IN03 LDA ='6000 (LDA ='10000 IF CP IS 716) 0275 00212 0 04 00431 STA PNT2 STORE NEXT HIGHER SECTOR AT POINTER 2 0276 * 0277 00213 0 02 00511 IN04 LDA =-5 (LDA =-7 IF CP IS 716) 0278 00214 0 04 00427 STA CN02 NO. OF SECTORS FOR TEST 0279 00215 0 02 00465 NXMV LDA HSCT PUT ADDITIONAL SECTORS 0280 00216 0 04 00426 STA CN01 AT CN01 0281 00217 0 02 00430 LDA PNT1 GET TEST SECTOR 0282 00220 0 04 00230 STA DC01 STORE AT 'FROM' ADDRESS 0283 00221 0 02 00431 LDA PNT2 GET HIGHER TEST SECTOR ADDRESS 0284 00222 0 04 00231 STA DC02 STORE AT 'TO' ADDRESS
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 7

0285 00223 0 04 00237 STA DC03 0286 00224 0 06 00510 ADD =1 0287 00225 0 04 00240 STA DC04 0288 00226 -0 10 00456 MV01 JST* MOOV MOVE ONE THOUSAND 0289 00227 001000 OCT 1000 WORD BLOCK TEST SECTOR 0290 00230 0 000000 DC01 DAC ** FROM HERE 0291 00231 0 000000 DC02 DAC ** TO HERE 0292 00232 -0 10 00231 JST* DC02 GO TO TEST IN HIGHER SECTOR 0293 00233 140040 CRA 0294 00234 -0 04 00237 STA* DC03 0295 00235 -0 10 00456 JST* MOOV ZERO OUT SECTOR JUST TESTED 0296 00236 000777 OCT 777 'NO. OF WORDS 0297 00237 0 000000 DC03 DAC ** FROM 'HERE' 0298 00240 0 000000 DC04 DAC ** TO 'HERE' 0299 00241 0 02 00231 LDA DC02 0300 00242 0 06 00513 ADD ='1000 MODIFY FOR NEXT HIGHER SECTOR 0301 00243 0 12 00426 IRS CN01 DID WE TEST IN ALL THE SECTORS 0302 00244 0 01 00222 JMP MV01-4 NO, TEST IN THE NEXT SECTOR 0303 00245 0 02 00430 LDA PNT1 YES, MODIFY FOR NEXT 0304 00246 0 06 00513 ADD ='1000 TEST SECTOR TO BE EXECUTED 0305 00247 0 04 00430 STA PNT1 IN HIGHER SECTORS 0306 00250 0 12 00427 IRS CN02 DID WE FINISH ALL TEST SECTORS 0307 00251 0 01 00215 JMP NXMV NO, DO NEXT SECTOR 0308 * 0309 00252 0 02 00424 LDA EFL1 TEST EXT MODE FLAG 1 0310 00253 100040 SZE 0311 00254 0 01 00310 JMP MVEA IF SET, GO FOR TRANSFER TO '40 SECTOR 0312 00255 0 02 00425 LDA EFL2 TEST EXT FLAG 2 0313 00256 100040 SZE 0314 00257 0 01 00330 D20L JMP MVEB IF SET, GO TO LOWER HALF 0315 00260 0 10 00335 JST EOPI PASS COUNT TYPEOUT 0316 00261 0 01 00162 JMP STR2 REPEAT TESTS 0317 * 0318 * 0319 EXD 0320 00262 0 02 42747 RECY LDA CNT5+'40000 BRING THE CURRENT 0321 00263 0 04 02747 STA CNT5 PASS COUNT FROM UPPER 0322 00264 0 02 42750 LDA CNT5+'40001 BANK TO LOWER BANK 0323 00265 0 04 02750 STA CNT5+1 0324 LXD 0325 00266 000011 DXA 0326 00267 0 01 00270 JMP *+1 NORMAL ADDRESSING 0327 00270 0 10 00335 IN10 JST EOPI END OF PASS TYPE OUT 0328 00271 100010 SR2 IF SW.2 SET, HALT 0329 00272 000000 HLT 0330 00273 140040 CRA 0331 00274 0 04 00425 STA EFL2 0332 00275 0 02 00215 LDA NXMV MODIFY ADDRESS 0333 00276 0 07 00510 SUB =1 FOR 0334 00277 0 04 00215 STA NXMV LOWER BANK
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 8

0335 * 0336 * 0337 00300 0 12 00424 EA01 IRS EFL1 SET EXT MODE FLAG 1 0338 00301 0 02 00506 IN07 LDA =-26 (LDA =-24 IF CP IS 716) - SET UP TO TEST 0339 00302 0 04 00465 STA HSCT IN THE FIRST '37 SECTORS 0340 00303 0 02 00464 LDA HISC INITIALIZE TO TEST IN SECTORS HIGHER 0341 00304 0 07 00505 IN05 SUB ='45 THAN '45 (OR '47 IF CP IS 716) 0342 00305 140407 TCA 0343 00306 0 04 00466 STA HSCT+1 0344 00307 0 01 00162 JMP STR2 GO TO MAIN TEST ROUTINE 0345 * 0346 * 0347 00310 140040 MVEA CRA G0-TO-UPPER-MEMORY ROUTINE 0348 00311 0 04 00424 STA EFL1 RESET EXT MODE FLAG 1 0349 00312 0 12 00425 IRS EFL2 SET EXT FLAG 2 0350 00313 0 12 00215 IRS NXMV MODIFY ADDR FOR UPPER BANK 0351 00314 0 02 00504 LDA ='140063 0352 00315 0 04 00063 STA '63 0353 00316 000013 EXA 0354 00317 -0 10 00456 JST* MOOV MOVE THE TESTS TO 40TH SECTOR 0355 00320 006000 IN06 OCT 6000 ('10000 IF CP IS 716) 0356 00321 000000 OCT 0 0357 00322 0 040000 DAC '40000 0358 EXD 0359 00323 0 01 40325 JMP MVEB+'37775 HERE IT GOES TO 40TH SECTOR 0360 LXD 0361 * 0362 * 0363 00324 0 005733 D20K DAC S47R ADDRESS OF ROUTINE TO MODIFY PROGRAM 0364 * IF CP IS 716 AND MEMORY 20K. 0365 00325 000011 DXA 0366 00326 0 01 00327 JMP *+1 NORMAL MODE 0367 00327 -0 01 00324 JMP* D20K TEST IF CP IS 716 AND MEMORY IS 20K 0368 00330 000013 MVEB EXA GO-TO-LOWER-MEMORY ROUTINE 0369 00331 0 02 00334 LDA *+3 0370 00332 0 03 00507 ANA ='176777 STRIP THE SECTOR BIT 0371 00333 0 04 00334 STA *+1 0372 00334 0 01 00262 JMP RECY HERE IT GOES TO ZERO SECTOR 0373 * 0374 * 0375 * 0376 * 0377 * END OF PASS ROUTINE 0378 * 0379 00335 0 000000 EOPI DAC ** END-OF-PASS ROUT. 0380 00336 0 02 00435 LDA PCRT 0381 00337 0 04 00434 STA CNTX 0382 00340 0 10 00347 JST ST5 0383 00341 0 01 00343 JMP *+2 0384 00342 0 10 00347 JST ST5
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 9

0385 00343 101000 NOP 0386 00344 0 02 02742 LDA MES2 0387 00345 0 10 00402 JST TYPE TYPE PASS COUNT 0388 00346 -0 01 00335 JMP* EOPI RETURN 0389 * 0390 * 0391 00347 0 000000 ST5 DAC ** 0392 00350 -0 02 00434 LDA* CNTX LOAD UNITS + TENS 0393 00351 0 03 00503 ANA ='377 AND CHECK FOR 09 0394 00352 0 05 00502 ERA ='271 AND 99 COUNTS DEC 0395 00353 100040 SZE 0396 00354 0 01 00372 JMP INC1 COUNT LESS THAN 09 0397 00355 -0 02 00434 LDA* CNTX 0398 00356 0 03 00501 ANA ='177400 0399 00357 0 05 00500 ERA ='134400 0400 00360 100040 SZE 0401 00361 0 01 00375 JMP INC2 COUNT LESS THAN 99 0402 00362 0 02 00520 LDA ='130260 0403 00363 -0 04 00434 STA* CNTX 0404 00364 0 02 00434 LDA CNTX SET UP FOR SECOND 0405 00365 0 07 00510 SUB =1 PASS THRU IF COUNT 0406 00366 0 04 00434 STA CNTX EQUAL T0 DEC 99 0407 00367 0 12 00347 IRS ST5 0408 00370 -0 01 00347 JMP* ST5 0409 00371 000000 HLT 0410 00372 -0 12 00434 INC1 IRS* CNTX INC UNITS OR HUNDREDS 0411 00373 -0 01 00347 JMP* ST5 0412 00374 000000 HLT 0413 00375 -0 02 00434 INC2 LDA* CNTX INC TENS OR THOUSANDS 0414 00376 0 03 00501 ANA ='177400 0415 00377 0 06 00477 ADD ='660 0416 00400 -0 04 00434 STA* CNTX 0417 00401 -0 01 00347 JMP* ST5 0418 * 0419 * GENERAL TYPE ROUTINE 0420 * 0421 00402 0 000000 TYPE DAC ** TYPE ROUT 0422 00403 0 04 00432 STA TS2 SAVE MSG ADRS 0423 00404 -0 02 00432 LDA* TS2 GET WORD COUNT 0424 00405 0 04 00433 STA TS3 0425 00406 34 0104 SKS '104 TEST FOR ASR BUSY 0426 00407 0 01 00406 JMP *-1 0427 00410 14 0104 OCP '104 ENABLE, OUTPUT MODE 0428 00411 0 12 00432 PRCH IRS TS2 BUMP ADDR FOR NEXT WORD OF MSG. 0429 00412 -0 02 00432 LDA* TS2 0430 00413 0416 70 ALR 8 0431 00414 74 0004 OTA '4 OUTPUT 1-8 IN ASCII 0432 00415 0 01 00414 JMP *-1 0433 00416 -0 02 00432 LDA* TS2 0434 00417 74 0004 OTA '4 OUTPUT 9-16
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 10

0435 00420 0 01 00417 JMP *-1 0436 00421 0 12 00433 IRS TS3 SKIP AFTER LAST WORD 0437 00422 0 01 00411 JMP PRCH PRINT NEXT WORD 0438 00423 -0 01 00402 JMP* TYPE 0439 * 0440 00424 000000 EFL1 BSZ 1 0441 00425 000000 EFL2 BSZ 1 0442 00426 000000 CN01 BSZ 1 0443 00427 000000 CN02 BSZ 1 0444 00430 000000 PNT1 BSZ 1 0445 00431 000000 PNT2 BSZ 1 0446 00432 000000 TS2 BSZ 1 0447 00433 000000 TS3 BSZ 1 0448 00434 000000 CNTX BSZ 1 0449 00435 0 002750 PCRT DAC CNT5+1 0450 00436 0 001004 ONE DAC TS01 0451 00437 0 002000 TWO DAC TS02 0452 00440 0 003000 THRI DAC TS03 0453 00441 0 004000 FOUR DAC TS04 0454 00442 0 005000 FIVE DAC TS05 0455 00443 0 006000 SIX DAC TS06 0456 00444 0 007000 SEVN DAC TS07 0457 00445 0 005562 DMSG DAC MESS 0458 00446 0 005615 X13S DAC X13R 0459 00447 0 005527 HSCD DAC HSEC 0460 00450 0 07 00476 SUB7 SUB =7 0461 00451 0 02 00475 LDM7 LDA =-7 0462 00452 0 02 00474 LD10 LDA ='10000 0463 00453 0 07 00473 SB47 SUB ='47 0464 00454 010000 OTNT OCT 10000 0465 00455 177634 CNTY DEC -100 0466 00456 0 004715 MOOV DAC MOVE 0467 00457 0 02 00472 LM24 LDA =-24 0468 00460 0 02 00465 DHSC LDA HSCT 0469 * 0470 00461 000000 TMP1 BSZ 3 0471 00464 000000 HISC BSZ 1 0472 00465 000000 HSCT BSZ 2 0473 * 0474 00467 0 000470 DCCR DAC *+1 0475 00470 177777 DEC -1 0476 00471 106615 OCT 106615 0477 * 0478 00472 177750 FIN 00473 000047 00474 010000 00475 177771 00476 000007 00477 000660 00500 134400
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 11

00501 177400 00502 000271 00503 000377 00504 140063 00505 000045 00506 177746 00507 176777 00510 000001 00511 177773 00512 006000 00513 001000 00514 000005 00515 000040 00516 177760 00517 100063 00520 130260 0479 * 0480 000521 HERE EQU * 0481 * 0482 * 0483 * 0484 * 0485 * 0486 ORG '1000 0487 * 0488 01000 0 01 00120 JMP NSRT GO TO NEW (REAL) START 0489 * 0490 * 0491 * TEST GROUPS: GENERICS, ADDS, SWITCHES, ADDERS 0492 * 0493 01001 0 02 01000 LDA *-1 GET THE RETURN ADDR 0494 01002 0 04 01004 STA *+2 STORE IT AT THE RIGHT SPOT 0495 01003 100000 SKP START SECTOR 1 TESTS 0496 01004 0 000000 TS01 DAC ** SECTOR 1 TESTS 0497 01005 101000 NOP 0498 01006 0 10 01016 JST GENO '14 - GENERICS TEST 0499 01007 0 10 01322 JST XRG0 '17 - LOC.0 AND XREG TRACTION 0500 01010 0 10 01341 JST ADDS '13 - ADDS 0501 01011 0 10 01546 JST SWCH '15 - SWITCHES TEST 0502 01012 0 10 01672 JST ADD1 '40 - ADDER TEST 1 0503 01013 101000 NOP 0504 01014 -0 01 01004 JMP* TS01 RETURN 0505 * 0506 * 0507 * TEST T014 - GENERICS 0508 * 0509 01015 000014 OCT 14 TEST NO. 0510 01016 0 000000 GENO DAC ** GENERICS TEST 0511 01017 0 02 01015 LDA *-2 LOAD TEST NO.
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 12

0512 01020 0 04 00777 STA '777 STORE AT '777 0513 01021 140040 CRA 0514 01022 140500 SSM TESTING SSM (A='000000) 0515 01023 101040 SNZ 0516 01024 000000 HLT ERROR 0517 01025 101400 SMI TESTING SMI (A='100000) 0518 01026 000000 HLT ERROR 0519 01027 140024 CHS TESTING CHS (A='100000) 0520 01030 100040 SZE 0521 01031 000000 HLT ERROR 0522 01032 140040 CRA ZERO'S TO A REGISTER 0523 01033 140401 CMA -(A) TO (A) (A='177777) 0524 01034 140100 SSP TESTING SSP (A=077777) 0525 01035 101400 SMI TEST WITH SMI 0526 01036 0 01 01040 JMP *+2 0527 01037 000000 HLT ERROR 0528 01040 140200 RCB RESET "C" BIT 0529 01041 0 06 01774 ADD ='40000 SHOULD SET "C" BIT 0530 01042 101001 SSC TESTING "C" BIT 0531 01043 000000 HLT ERROR 0532 01044 140200 RCB RESET "C" BIT 0533 01045 100001 SRC TEST "C" BIT 0534 01046 000000 HLT ERROR 0535 01047 140600 SCB SET "C" BIT 0536 01050 101001 SSC SKIP IF "C" BIT SET 0537 01051 000000 HLT ERROR 0538 01052 140500 SSM 1 TO A1 0539 01053 140320 CSA A1 TO C 0 TO A1 0540 01054 100400 SPL SKIP IF A1=0 0541 01055 000000 HLT ERROR 0542 01056 101001 SSC SKIP IF C=1 0543 01057 000000 HLT ERROR 0544 01060 140200 RCB 0 TO C 0545 01061 000043 INK C TO A1 0546 01062 100400 SPL SKIP IF A1=0 0547 01063 000000 HLT ERROR 0548 01064 140500 SSM 1 TO A1 0549 01065 171020 OTK A1 TO C 0550 01066 140040 CRA 0 TO A1-A16 0551 01067 000011 DXA 0552 01070 0 01 01071 JMP *+1 NORMAL MODE 0553 01071 101001 SSC SKIP IF C=1 0554 01072 000000 HLT ERROR 0555 01073 140320 CSA A1 TO C 0 TO A1 0556 01074 140401 CMA 1 TO A1-A16 0557 01075 140100 SSP 0558 01076 0 06 01773 ADD =1 0559 01077 140040 CRA CLEAR A REG. 0560 01100 100040 SZE SKIP IF (A)=0 0561 01101 000000 HLT ERROR
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 13

0562 01102 101001 SSC SKIP IF C=1 0563 01103 000000 HLT ERROR 0564 01104 140320 CSA A1 TO C 0 TO A1 0565 01105 0 02 01772 LDA ='125252 TEST PATTERN 0566 01106 0414 77 LGL 1 A1 TO C 0567 01107 101001 SSC SKIP IF SET 0568 01110 000000 HLT ERROR 0569 01111 0414 77 LGL 1 A1 TO C 0570 01112 100001 SRC SKIP IF RESET 0571 01113 000000 HLT ERROR 0572 01114 0414 77 LGL 1 A1 TO C 0573 01115 101001 SSC SKIP IF SET 0574 01116 000000 HLT ERROR 0575 01117 0414 77 LGL 1 A1 TO C 0576 01120 100001 SRC SKIP IF RESET 0577 01121 000000 HLT ERROR 0578 01122 0404 72 LGR 6 A16 TO C 0579 01123 101001 SSC SKIP IF RESET 0580 01124 000000 HLT ERROR 0581 01125 0404 77 LGR 1 A16 TO C 0582 01126 100001 SRC SKIP IF RESET 0583 01127 000000 HLT ERROR 0584 01130 0404 77 LGR 1 A16 TO C 0585 01131 101001 SSC SKIP IF SET 0586 01132 000000 HLT ERROR 0587 01133 0404 77 LGR 1 A16 TO C 0588 01134 100001 SRC SKIP IF RESET 0589 01135 000000 HLT ERROR 0590 01136 0 02 01771 LDA ='63146 TEST PATTERN 0591 01137 0415 77 ALS 1 A1 TO C 0592 01140 101001 SSC SKIP IF SET 0593 01141 000000 HLT ERROR 0594 01142 0415 77 ALS 1 A1 TO C 0595 01143 100001 SRC SKIP IF RESET 0596 01144 000000 HLT ERROR 0597 01145 0415 77 ALS 1 A1 TO C 0598 01146 101001 SSC SKIP IF SET 0599 01147 000000 HLT ERROR 0600 01150 0415 77 ALS 1 A1 TO C 0601 01151 100001 SRC ERROR 0602 01152 000000 HLT 0603 01153 0 02 01770 LDA ='152525 TEST PATTERN 0604 01154 000201 IAB PLACE IN B REG. 0605 01155 0401 77 LRS 1 B16 TO C 0606 01156 101001 SSC SKIP IF SET 0607 01157 000000 HLT ERROR 0608 01160 0401 77 LRS 1 B16 TO C 0609 01161 100001 SRC SKIP IF RESET 0610 01162 000000 HLT ERROR 0611 01163 0401 77 LRS 1 B16 TO C
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 14

0612 01164 101001 SSC SKIP IF SET 0613 01165 000000 HLT 0614 01166 0401 77 LRS 1 B16 TO C 0615 01167 100001 SRC SKIP IF RESET 0616 01170 000000 HLT ERROR 0617 01171 0 02 01770 LDA ='152525 TEST PATTERN 0618 01172 101100 SLN SKIP IF A16=1 0619 01173 000000 HLT ERROR 0620 01174 100100 SLZ SKIP IF A16=0 0621 01175 0 01 01177 JMP *+2 0622 01176 000000 HLT ERROR 0623 01177 0414 77 LGL 1 CHANGE A16 TO ZERO 0624 01200 101100 SLN SKIP IF A16=1 0625 01201 0 01 01203 JMP *+2 0626 01202 000000 HLT ERROR 0627 01203 100100 SLZ SKIP IF A16=0 0628 01204 000000 HLT ERROR 0629 01205 100000 SKP UNCONDITIONAL SKIP 0630 01206 000000 HLT ERROR 0631 01207 140040 CRA ZERO'S TO A REGISTER 0632 01210 100100 SLZ TEST SLZ (A='000000) 0633 01211 000000 HLT ERROR 0634 01212 100400 SPL TEST SPL (A='000000) 0635 01213 000000 HLT ERROR 0636 01214 0 02 01767 LDA ='177777 LOAD A REG WITH ALL ONES 0637 01215 100040 SZE TESTING SZE (A='177777) 0638 01216 0 01 01220 JMP *+2 0639 01217 000000 HLT ERROR 0640 01220 101040 SNZ TESTING SNZ(A='177777) 0641 01221 000000 HLT ERROR 0642 01222 100400 SPL TESTING SPL(A='177777) 0643 01223 0 01 01225 JMP *+2 0644 01224 000000 HLT ERROR 0645 01225 101400 SMI TESTING SMI (A='177777) 0646 01226 000000 HLT ERROR 0647 01227 0 02 01766 LDA ='100000 SET BIT ONLY 0648 01230 100400 SPL TESTING SPL 0649 01231 0 01 01233 JMP *+2 0650 01232 000000 HLT ERROR 0651 01233 101400 SMI SMI 0652 01234 000000 HLT ERROR 0653 01235 100040 SZE SZE 0654 01236 0 01 01240 JMP *+2 0655 01237 000000 HLT ERROR 0656 01240 101040 SNZ SNZ 0657 01241 000000 HLT ERROR 0658 01242 0 02 01774 LDA ='40000 TESTING SNZ WITH BIT 2 0659 01243 101040 SNZ 0660 01244 000000 HLT ERROR 0661 01245 0 02 01765 LDA ='20000 TESTING SNZ WITH BIT 3
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 15

0662 01246 101040 SNZ 0663 01247 000000 HLT ERROR 0664 01250 0 02 01764 LDA ='10000 TESTING SNZ WITH BIT 4 0665 01251 101040 SNZ 0666 01252 000000 HLT ERROR 0667 01253 0 02 01763 LDA ='4000 TESTING SNZ WITH BIT 5 0668 01254 101040 SNZ 0669 01255 000000 HLT ERROR 0670 01256 0 02 01762 LDA ='2000 TESTING SNZ WITH BIT 6 0671 01257 101040 SNZ 0672 01260 000000 HLT ERROR 0673 01261 0 02 01761 LDA ='1000 TESTING SNZ WITH BIT 7 0674 01262 101040 SNZ 0675 01263 000000 HLT ERROR 0676 01264 0 02 01760 LDA ='400 TESTING SNZ WITH BIT 8 0677 01265 101040 SNZ 0678 01266 000000 HLT ERROR 0679 01267 0 02 01757 LDA ='200 TESTING SNZ WITH BIT 9 0680 01270 101040 SNZ 0681 01271 000000 HLT ERROR 0682 01272 0 02 01756 LDA ='100 TESTING SNZ WITH BIT 10 0683 01273 101040 SNZ 0684 01274 000000 HLT ERROR 0685 01275 0 02 01755 LDA ='40 TESTING SNZ WITH BIT 11 0686 01276 101040 SNZ 0687 01277 000000 HLT ERROR 0688 01300 0 02 01754 LDA ='20 TESTING SNZ WITH BIT 12 0689 01301 101040 SNZ 0690 01302 000000 HLT ERROR 0691 01303 0 02 01753 LDA ='10 TESTING SNZ WITH BIT 13 0692 01304 101040 SNZ 0693 01305 000000 HLT ERROR 0694 01306 0 02 01752 LDA ='4 TESTING SNZ WITH BIT 14 0695 01307 101040 SNZ 0696 01310 000000 HLT ERROR 0697 01311 0 02 01751 LDA ='2 TESTING SNZ WITH BIT 15 0698 01312 101040 SNZ 0699 01313 000000 HLT ERROR 0700 01314 0 02 01773 LDA ='1 TESTING SNZ WITH BIT 16 0701 01315 101040 SNZ 0702 01316 000000 HLT ERROR 0703 01317 140040 CRA 0704 01320 -0 01 01016 JMP* GENO 0705 * 0706 * 0707 * LOCATION '0' AND X-REG TRACTION 0708 * 0709 01321 000017 OCT 17 0710 01322 0 000000 XRG0 DAC ** 0711 01323 0 02 01321 LDA *-2
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 16

0712 01324 0 04 00777 STA '777 STORE TEST NO. 0713 01325 0 04 00000 STA 0 STORE A NO. AT ZERO 0714 01326 0 15 01543 STX TEMP STORE CONTENTS OF X AT TEMP 0715 01327 0 05 01543 ERA TEMP IS TEMP=A 0716 01330 100040 SZE 0717 01331 000000 HLT X AND LOC.0 DIFFERED 0718 01332 0 35 01322 LDX XRG0 STORE DATA WORD AT X 0719 01333 0 02 00000 LDA 0 LOAD CONTENTS OF ZERO IN A 0720 01334 0 05 01322 ERA XRG0 COMPARE WITH ORIG. WORD 0721 01335 100040 SZE MUST COMPARE 0722 01336 000000 HLT ERROR - X-REG AND LOC.0 DIFFERED 0723 01337 -0 01 01322 JMP* XRG0 RETURN 0724 * 0725 * 0726 * SUBROUTINE T013 ADDER TEST NO.1 0727 * 0728 01340 000013 OCT 13 0729 01341 0 000000 ADDS DAC ** ADDS TEST 0730 01342 0 02 01340 LDA *-2 LOAD TEST NO. 0731 01343 0 04 00777 STA '777 STORE AT '777 0732 01344 140040 CRA ZERO'S TO (A) 0733 01345 100040 SZE SKIP IF ZERO 0734 01346 000000 HLT ERROR 0735 01347 140401 CMA ONE'S COMPLEMENT OF (A) TO (A)=177777 0736 01350 141206 AOA (A)+1 TO (A)=000000 0737 01351 100040 SZE SKIP IF ZERO 0738 01352 000000 HLT ERROR 0739 01353 140401 CMA ONE'S COMPLEMENT OF (A) TO (A)=177777 0740 01354 140040 CRA ZERO'S T0 (A)=000000 0741 01355 100040 SZE SKIP IF (A)=000000 0742 01356 000000 HLT ERROR 0743 01357 140401 CMA ONE'S COMPLEMENT OF (A) TO (A)=177777 0744 01360 0 06 01773 ADD =1 (A)+(M) TO (A)=000000 0745 01361 100040 SZE SKIP IF (A)=000000 0746 01362 000000 HLT ERROR 0747 01363 140401 CMA ONE'S COMPLEMENT OF (A) T0 (A)=177777 0748 01364 140407 TCA TWO'S COMPLEMENT OF (A) TO (A)=000001 0749 01365 0 06 01767 ADD ='177777 (A)+(M) TO (A)=000000 0750 01366 100040 SZE SKIP IF (A)=000000 0751 01367 000000 HLT ERROR 0752 01370 0 02 01767 LDA ='177777 (M) TO (A)=177777 0753 01371 0 06 01773 ADD =1 (A)+(M) TO (A)=000000 0754 01372 100040 SZE SKIP IF (A)=000000 0755 01373 000000 HLT ERROR 0756 01374 0 02 01750 LDA ='052525 @M$ TO (A)=052525 0757 01375 0 06 01750 ADD ='052525 (A) + (M) TO (A)=125252 0758 01376 0 06 01747 ADD ='052526 (A)+(M) TO (A)=000000 0759 01377 100040 SZE SKIP IF (A)=000000 0760 01400 000000 HLT ERROR 0761 01401 140401 CMA -(A) TO (A)=177777
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 17

0762 01402 0 04 01543 STA TEMP (A) TO (M) =177777 0763 01403 140407 TCA -(A)+1 TO (A)=000001 0764 01404 0 06 01543 ADD TEMP (A)+(M) TO (A)=00000O 0765 01405 100040 SZE SKIP IF (A)=0000000 0766 01406 000000 HLT ERROR 0767 01407 0 02 01750 LDA ='052525 (M) TO (A)='052525 0768 01410 0 06 01772 ADD ='125252 (M)+(A) TO (A)=177776 0769 01411 0 06 01773 ADD =1 0770 01412 100040 SZE SKIP IF (A)='000000 0771 01413 000000 HLT ERROR 0772 01414 0 02 01772 LDA ='125252 (M) TO (A)='125252 0773 01415 0 06 01750 ADD ='052525 (M)+(A) TO (A)=177776 0774 01416 0 06 01773 ADD =1 0775 01417 100040 SZE SKIP IF (A)='000000 0776 01420 000000 HLT ERROR 0777 01421 140040 CRA ZERO'S TO (A)='000000 0778 01422 0 04 01544 STA LOCT (A) TO (M)='000000 0779 01423 0 35 01544 LDX LOCT (M) TO (X)='000000 0780 01424 140401 CMA ONE'S COMPLEMENT OF (A) TO (A)='1777777 0781 01425 0 15 01545 STX LOCT+1 (X) TO (M) 0782 01426 0 02 01545 LDA LOCT+1 (M) TO (A)='000000 0783 01427 100040 SZE SKIP IF (A)='000000 0784 01430 000000 HLT ERROR 0785 01431 140401 CMA ONE'S COMPLEMENT OF (A) TO (A)=177777 0786 01432 0 04 01544 STA LOCT (A) TO (M)='177777 0787 01433 0 35 01544 LDX LOCT (M) TO (X)='177777 0788 01434 140040 CRA ZERO'S TO (A)='000000 0789 01435 0 15 01545 STX LOCT+1 (X) TO (M)='177777 0790 01436 0 02 01545 LDA LOCT+1 (M) TO (A)='177777 0791 01437 0 06 01773 ADD =1 (A)+(M) TO (A)='000000 0792 01440 100040 SZE SKIP IF (A)='000000 0793 01441 000000 HLT ERROR 0794 01442 0 02 01772 LDA ='125252 0795 01443 0 04 01544 STA LOCT 0796 01444 0 35 01544 LDX LOCT 0797 01445 0 15 01545 STX LOCT+1 0798 01446 140040 CRA 0799 01447 0 02 01545 LDA LOCT+1 0800 01450 0 07 01772 SUB ='125252 0801 01451 100040 SZE 0802 01452 000000 HLT ERROR 0803 01453 0 02 01750 LDA ='052525 0804 01454 0 04 01544 STA LOCT 0805 01455 0 35 01544 LDX LOCT 0806 01456 0 15 01545 STX LOCT+1 0807 01457 140040 CRA 0808 01460 0 02 01545 LDA LOCT+1 0809 01461 0 07 01750 SUB ='052525 (A)-(M) TO (A)='000000 0810 01462 100040 SZE SKIP IF (A)='000000 0811 01463 000000 HLT ERROR
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 18

0812 01464 140040 CRA ZERO'S TO (A) 0813 01465 000201 IAB INTERCHANGE (A) AND (B) 0814 01466 140040 CRA ZERO'S TO (A) 0815 01467 140401 CMA ONE' COMPLEMENT OF (A) TO (A)='177777 0816 01470 000201 IAB INTERCHANGE (A) AND (B) 0817 01471 100040 SZE SKIP IF (A)='000000 0818 01472 000000 HLT ERROR 0819 01473 0 02 01772 LDA ='125252 (M) TO (A)='125252 0820 01474 000201 IAB INTERCHANGE (A) AND (B) 0821 01475 0 06 01773 ADD =1 (A)+(M) TO (A)='000000 0822 01476 100040 SZE SKIP IF (A)='000000 0823 01477 000000 HLT ERROR 0824 01500 0 02 01750 LDA ='052525 (M) TO (A) 0825 01501 000201 IAB INTERCHANGE (A) AND (B) 0826 01502 0 06 01747 ADD ='052526 (A)+(M) TO (A)='000000 0827 01503 100040 SZE SKIP IF (A)='000000 0828 01504 000000 HLT ERROR 0829 01505 000201 IAB INTERCHANGE (A) AND (B) 0830 01506 0 06 01746 ADD ='125253 (A)+(M) TO (A) 0831 01507 100040 SZE 0832 01510 000000 HLT ERROR 0833 01511 0 35 01745 LDX =-64 (M) TO (X) 0834 01512 0 02 01772 LDA ='125252 (M) TO (A) 0835 01513 1 04 01643 STA TEMP+64,1 (M)+64+(-X) INDEXING 0836 01514 0 02 01747 LDA ='052526 (M) TO (A) 0837 01515 1 06 01643 ADD TEMP+64,1 (M)+64+(-X) INDEXING 0838 01516 100040 SZE 0839 01517 000000 HLT ERROR 0840 01520 0 10 00756 JST BSCT GO TEST INDEXING IN BASE SECTOR 0841 01521 0 02 01756 LDA =64 (M) TO (A) 0842 01522 0 04 01543 STA TEMP (A) TO (M) 0843 01523 0 02 01744 LDA ='070707 (M) TO (A) 0844 01524 -0 04 01543 STA* TEMP (A) TO (M) INDIRECT 0845 01525 0 02 01743 LDA ='107071 (M) TO (A) 0846 01526 -0 06 01543 ADD* TEMP (M)+(A) INDIRECT 0847 01527 100040 SZE 0848 01530 000000 HLT ERROR 0849 01531 0 35 01745 LDX =-64 (M) TO (X) 0850 01532 0 02 01742 LDA =65 (M) TO (A) 0851 01533 0 04 01543 STA TEMP (A) TO (M) 0852 01534 0 02 01750 LDA ='052525 DATA 0853 01535 -1 04 01643 STA* TEMP+64,1 0854 01536 0 02 01746 LDA ='125253 DATA 0855 01537 -1 06 01643 ADD* TEMP+64,1 (M)+(A) TO (A) INDEXING, INDIRECT 0856 01540 100040 SZE 0857 01541 000000 HLT ERROR 0858 01542 -0 01 01341 JMP* ADDS RETURN TO MONTOR 0859 * 0860 01543 000000 TEMP BSZ 1 0861 01544 000000 LOCT BSZ 1
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 19

0862 * 0863 * 0864 * 0865 * TEST TO15 - SENSE SWITCH TEST 0866 * 0867 01545 000015 OCT 15 TEST NO. 0868 01546 0 000000 SWCH DAC ** SWITCHES TEST 0869 01547 0 02 01545 LDA *-2 LOAD TEST NO. 0870 01550 0 04 00777 STA '777 STORE AT '777 0871 01551 101000 NOP KILL TEST LOCATION 0872 01552 0 02 02723 LDA MES3 MESSAGE COUNT 0873 01553 0 10 00402 JST TYPE TO TYPE OUT 0874 01554 0 02 01775 LDA =-9 PASS COUNT 0875 01555 0 04 01670 STA TSST COUNTER 0876 01556 000013 EXA 0877 01557 0 10 01560 JST ADLO DETERMINE LOCATION 0878 01560 0 000000 ADLO DAC ** FOR INTERRUPT 0879 01561 000011 DXA NORMAL ADDRESSING 0880 01562 0 01 01563 JMP *+1 0881 01563 0 02 01560 LDA ADLO * 0882 01564 0 06 01753 ADD =8 0883 01565 0 04 00063 STA '63 0884 01566 140040 CRA 0885 01567 0 01 01574 JMP HERR * 0886 01570 0 000000 DAC ** INTERRUPT ENTRY 0887 01571 000000 HLT START BUTTON INTERRUPT 0888 01572 000011 DXA 0889 01573 0 01 01574 JMP *+1 0890 01574 101036 HERR SSS TEST SENSE SWITCHES 0891 01575 0 01 01606 JMP SR10 0892 01576 100036 SSR TEST IF ALL RESET 0893 01577 0 01 01601 JMP SS10 0894 01600 000000 HLT ERROR 0895 01601 101020 SS10 SS1 TEST SENSE SWITCH 1 0896 01602 0 01 01606 JMP SR10 RESET 0897 01603 100020 SR1 SET 0898 01604 0 01 01612 JMP SS1A SET 0899 01605 000000 HLT ERROR 0900 01606 100020 SR10 SR1 TEST FOR RESET 0901 01607 000000 HLT ERROR 0902 01610 0 03 01741 ANA ='070000 CHANGE A REG 0903 01611 0 01 01614 JMP SS20 TO NEXT SS TEST 0904 01612 0 03 01741 SS1A ANA ='070000 CHANGE A REG TO 0905 01613 0 05 01766 ERA ='100000 STATUS OF SENSE SWITCH 0906 01614 101010 SS20 SS2 TEST SENSE SWITCH 2 0907 01615 0 01 01621 JMP SR20 RESET 0908 01616 100010 SR2 SET 0909 01617 0 01 01625 JMP SS2A SETUP A REG 0910 01620 000000 HLT ERROR 0911 01621 100010 SR20 SR2 TEST FOR RESET
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 20

0912 01622 000000 HLT ERROR 0913 01623 0 03 01740 ANA ='130000 UPDATE A REG 0914 01624 0 01 01627 JMP SS30 TO TEST NEXT SENSE SWITCH 0915 01625 0 03 01740 SS2A ANA ='130000 CHANGE STATUS OF 0916 01626 0 05 01774 ERA ='040000 A REG 0917 01627 101004 SS30 SS3 TEST SENSE SWITCH 3 0918 01630 0 01 01634 JMP SR30 RESET 0919 01631 100004 SR3 SET 0920 01632 0 01 01640 JMP SS3A SET UP A REG 0921 01633 000000 HLT ERROR 0922 01634 100004 SR30 SR3 TEST FOR RESET 0923 01635 000000 HLT ERROR 0924 01636 0 03 01737 ANA ='150000 CHANGE STATUS OF "A" REG. 0925 01637 0 01 01642 JMP SS40 TO TEST NEXT SENSE SWITCH 0926 01640 0 03 01737 SS3A ANA ='150000 UPDATE STATUS OF 0927 01641 0 05 01765 ERA ='20000 "A" REG 0928 01642 101002 SS40 SS4 TEST SENSE SWITCH 4 0929 01643 0 01 01647 JMP SR40 RESET 0930 01644 100002 SR4 SET 0931 01645 0 01 01653 JMP SS4A SET UP "A" REG. 0932 01646 000000 HLT ERROR 0933 01647 100002 SR40 SR4 TEST FOR RESET 0934 01650 000000 HLT ERROR 0935 01651 0 03 01736 ANA ='160000 CHANGE STATUS OF "A" REG. 0936 01652 0 01 01655 JMP TEWL TO WAIT LOOP 0937 01653 0 03 01736 SS4A ANA ='160000 UPDATE STATUS OF 0938 01654 0 05 01764 ERA ='010000 "A" REG. 0939 01655 0 12 01670 TEWL IRS TSST TEST COUNTER 0940 01656 0 01 01660 JMP HERS CONTINUE TEST 0941 01657 0 01 01663 JMP TYPW RETURN TO MAIN LOOP 0942 01660 000401 HERS ENB ENABLE INTERRUPTS 0943 01661 101000 HERT NOP WAIT FOR 'START BUTTON' 0944 01662 0 01 01661 JMP HERT INTERRUPTS 0945 01663 0 02 02751 TYPW LDA MES4 0946 01664 0 10 00402 JST TYPE 0947 01665 0 02 01667 LDA *+2 0948 01666 0 04 01551 STA SWCH+3 0949 01667 -0 01 01546 JMP* SWCH RETURN 0950 * 0951 01670 000000 TSST BSZ 1 0952 * 0953 * 0954 * 0955 * 0956 * TEST T040 - ADDERS TEST - GENERATE CARRY BUT NO SKIP CARRY 0957 * 0958 01671 000040 OCT 40 TEST NO. 0959 01672 0 000000 ADD1 DAC ** ADDER TEST 1 0960 01673 0 02 01671 LDA *-2 LOAD TEST NO. 0961 01674 0 04 00777 STA '777 STORE AT '777
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 21

0962 01675 101000 NOP KILL TEST LOCATION 0963 01676 0 02 00455 LDA CNTY 0964 01677 0 04 01735 STA TAAV INITIALIZE TEST COUNT 0965 01700 140040 CRA 0966 01701 140500 TAAB SSM SET SIGN BIT 0967 01702 0 04 01733 STA TAAZ ** 0968 01703 140200 RCB ** 0969 01704 0 02 01733 LDA TAAZ ADD BIT ONE TO 0970 01705 0 06 01733 ADD TAAZ BIT ONE, OVER FLOW 0971 01706 101001 SSC SHOULD OCCUR OTHERWISE 0972 01707 000000 HLT ERROR 0973 01710 101040 SNZ A REG SHOULD BE ZERO 0974 01711 0 01 01713 JMP TAAC 0975 01712 000000 HLT ERROR 0976 01713 0 02 01733 TAAC LDA TAAZ SHIFT FLOATING BIT ONE PLACE 0977 01714 0 04 01734 STA TAAY TO THE RIGHT 0978 01715 0404 77 LGR 1 ** 0979 01716 0 04 01733 STA TAAZ ** 0980 01717 101040 SNZ CHECK IF SHIFTED OUT OF A 0981 01720 0 01 01730 JMP TAAE YES END OF INNER LOOP 0982 01721 140200 RCB NO RESET C BIT 0983 01722 0 02 01733 LDA TAAZ ADD FLOATING BIT TO 0984 01723 0 06 01733 ADD TAAZ ITSELF AND CHECK WITH 0985 01724 0 11 01734 CAS TAAY KNOWN RESULT 0986 01725 0 01 01727 JMP *+2 ERROR 0987 01726 0 01 01713 JMP TAAC OK RETURN TO TEST NEXT POSITION 0988 01727 000000 HLT ERROR 0989 01730 0 12 01735 TAAE IRS TAAV INCREMENT PASS COUNTER 0990 01731 0 01 01701 JMP TAAB NOT FINISHED, REPEAT TEST 0991 01732 -0 01 01672 JMP* ADD1 0992 * 0993 01733 0 00 00000 TAAZ PZE 0994 01734 0 00 00000 TAAY PZE 0995 01735 0 00 00000 TAAV PZE 0996 * 0997 01736 160000 FIN 01737 150000 01740 130000 01741 070000 01742 000101 01743 107071 01744 070707 01745 177700 01746 125253 01747 052526 01750 052525 01751 000002 01752 000004 01753 000010 01754 000020
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 22

01755 000040 01756 000100 01757 000200 01760 000400 01761 001000 01762 002000 01763 004000 01764 010000 01765 020000 01766 100000 01767 177777 01770 152525 01771 063146 01772 125252 01773 000001 01774 040000 01775 177767 0998 * 0999 * 1000 * 1001 ORG '2000 1002 * 1003 02000 0 000000 TS02 DAC ** SECTOR 2 TESTS 1004 02001 101000 NOP 1005 02002 0 10 02020 JST ADD2 '41 - ADDER TEST 2 - SKIP CARRY 1006 02003 0 10 02113 JST ADD3 '42 - ADDER TEST 3 - C BIT 1007 02004 0 10 02175 JST ADSB '3 - ADD-SUBTRACT TEST 1008 02005 0 10 02230 JST INDA '100- INDIRECT ADDRESSING 1009 02006 0 10 02323 JST IMAA '1 - IMA TEST 1010 02007 0 10 02362 JST IABA '7 - IAB TEST 1011 02010 0 10 02421 JST IRSX '5 - IRS TEST 1012 02011 0 10 02464 JST ERAA '2 - ERA TEST 1013 02012 0 10 02521 JST ANAA '4 - ANA TEST 1014 02013 0 10 02563 JST CASA '6 - CAS TEST 1015 02014 0 10 02624 JST HWDT '10 - HALF WORD INST TEST 1016 02015 101000 NOP 1017 02016 -0 01 02000 JMP* TS02 RETURN TO EXEC 1018 * 1019 * 1020 * TEST T041 - ADDER SKIP CARRY 1021 * THIS ROUTINE CHECKS FOR THE GENERATION OF 1022 * SKIP CARRY IN ALL POSITIONS 1023 * 1024 02017 000041 OCT 41 TEST NO. 1025 02020 0 000000 ADD2 DAC ** ADDERS TEST 2 - SKIP CARRY 1026 02021 0 02 02017 LDA *-2 LOAD TEST NO. 1027 02022 0 04 00777 STA '777 STORE AT '777 1028 02023 101000 NOP KILL TEST LOCATION 1029 02024 0 02 00455 LDA CNTY
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 23

1030 02025 0 04 02050 STA TABZ INITIALIZE TEST COUNT 1031 02026 140040 CRA ** 1032 02027 0 04 02047 STA TABY ** 1033 02030 0 02 02051 TABB LDA TXBA ADD FIRST PARAMETER TO 1034 02031 0 06 02052 ADD TXBB SECOND PARAMETER AND COMPARE 1035 02032 0 11 02053 CAS TXBC RESULTS WITH PRECALCULATED VALUE 1036 02033 0 01 02035 JMP *+2 ERROR 1037 02034 100000 SKP 1038 02035 000000 HLT ERROR 1039 02036 0 02 02054 LDA TXBE USE SECOND SET 1040 02037 0 06 02055 ADD TXBF OF PARAMETERS AND 1041 02040 0 11 02056 CAS TXBG CHECK RESULTS 1042 02041 0 01 02043 JMP *+2 ERROR 1043 02042 100000 SKP 1044 02043 000000 HLT ERROR 1045 02044 0 12 02050 IRS TABZ INCREMENT LOOP COUNTER 1046 02045 0 01 02067 JMP TXBJ NOT FINISHED GO ADJUST PARAMETERS 1047 02046 -0 01 02020 JMP* ADD2 RETURN 1048 02047 0 00 00000 TABY PZE 1049 02050 0 00 00000 TABZ PZE 1050 02051 057353 TXBA OCT 57353 1051 02052 041051 TXBB OCT 41051 1052 02053 120424 TXBC OCT 120424 1053 02054 077373 TXBE OCT 77373 1054 02055 001011 TXBF OCT 1011 1055 02056 100404 TXBG OCT 100404 1056 02057 0 00 00000 TXBP PZE 1057 02060 057353 OCT 57353 TEST DATA 1058 02061 041051 OCT 41051 **** 1059 02062 120424 OCT 120424 **** 1060 02063 077373 OCT 77373 **** 1061 02064 001011 OCT 1011 **** 1062 02065 100404 OCT 100404 **** 1063 02066 0 00 00000 TXBD PZE 1064 02067 0 02 02763 TXBJ LDA =-6 THIS ROUTINE CYCLES THE TEST 1065 02070 0 04 00000 STA 0 DATA (SIX VALUES) ONE PLACE 1066 02071 1 02 02066 TXBK LDA TXBD,1 TO THE RIGHT TO GENERATE 1067 02072 000201 IAB TWO SETS OF 16 DIFFERENT 1068 02073 1 02 02066 LDA TXBD,1 VALUES TO CHECK CARRY 1069 02074 0402 77 LRR 1 PROPAGATION 1070 02075 1 04 02066 STA TXBD,1 ** 1071 02076 1 04 02057 STA TXBP,1 ** 1072 02077 0 12 00000 IRS 0 ** 1073 02100 0 01 02071 JMP TXBK ** 1074 02101 0 02 02052 LDA TXBB ** 1075 02102 101100 SLN ** 1076 02103 0 05 02762 ERA =1 ** 1077 02104 0 04 02052 STA TXBB ** 1078 02105 0 02 02055 LDA TXBF ** 1079 02106 101100 SLN **
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 24

1080 02107 0 05 02762 ERA =1 ** 1081 02110 0 04 02055 STA TXBF ** 1082 02111 0 01 02030 JMP TABB RETURN TO LOOP 1083 * 1084 * ROUTINE T042 ACO 17 1085 * THIS ROUTINE CHECKS FOR PROPER FUNCTIONING 1086 * OF THE AC017 INPUT TO THE ADDERS. THE 1087 * INSTRUCTIONS USED TO DO THE CHECKING 1088 * ARE IRS, ACA, TCA 1089 * 1090 02112 000042 OCT 42 TEST NO. 1091 02113 0 000000 ADD3 DAC ** C BIT TEST 1092 02114 0 02 02112 LDA *-2 LOAD TEST NO. 1093 02115 0 04 00777 STA '777 STORE AT '777 1094 02116 101000 NOP KILL TEST LOCATION 1095 02117 0 02 00455 LDA CNTY 1096 02120 0 04 02172 STA TACN ** 1097 02121 0 04 02173 STA TACP ** 1098 02122 0 04 02167 STA TACK ** 1099 02123 0 04 02170 STA TACL ** 1100 02124 0 04 02171 STA TACM ** 1101 02125 0 02 02167 TACB LDA TACK INCREMENT CHECK VALUE BY 1102 02126 0 06 02762 ADD =1 ADDING ONE 1103 02127 0 04 02167 STA TACK ** 1104 02130 101400 SMI TEST IF LOOP FINISHED 1105 02131 -0 01 02113 JMP* ADD3 RETURN 1106 02132 0 12 02170 IRS TACL INCREMENT BY IRS INSTRUCTION 1107 02133 0 02 02170 LDA TACL CHECK RESULTS AGAINST CHECK 1108 02134 0 05 02167 ERA TACK VALUE 1109 02135 101040 SNZ 1110 02136 0 01 02140 JMP TACC TO NEXT INSTRUCTION 1111 02137 000000 HLT ERROR 1112 02140 0 02 02171 TACC LDA TACM TEST USING ACA INSTRUCTIONS 1113 02141 140600 SCB SET C BIT TO ONE 1114 02142 141216 ACA ADD ONE TO A REG USING ACA 1115 02143 0 04 02171 STA TACM CHECK RESULTS AGAINST 1116 02144 0 05 02167 ERA TACK CHECK VALUE 1117 02145 101040 SNZ 1118 02146 0 01 02150 JMP TACD TO NEXT INSTRUCTION 1119 02147 000000 HLT ERROR 1 1120 02150 0 02 02172 TACD LDA TACN CHECK OF TCA INSTRUCTIONS 1121 02151 0 05 02761 ERA =-'1 COMPLEMENT TEST VALUE 1122 02152 140407 TCA PERFORM TWO'S COMPLEMENT 1123 02153 0 04 02172 STA TACN ** 1124 02154 0 05 02167 ERA TACK CHECK RESULTS 1125 02155 101040 SNZ AGAINST CHECK VALUE 1126 02156 0 01 02160 JMP TACJ TO NEXT INSTRUCTION 1127 02157 000000 HLT ERROR 1128 02160 0 02 02173 TACJ LDA TACP CHECK OF AOA INSTRUCTION 1129 02161 141206 AOA ADD 1 TO AOA TEST VALUE
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 25

1130 02162 0 04 02173 STA TACP STORE FOR NEXT PASS AND 1131 02163 0 05 02167 ERA TACK CHECK RESULT USING CHECK 1132 02164 101040 SNZ VALUE 1133 02165 0 01 02125 JMP TACB RETURN FOR NEXT ITERATION 1134 02166 000000 HLT ERROR 1135 * 1136 02167 0 00 00000 TACK PZE 1137 02170 0 00 00000 TACL PZE 1138 02171 0 00 00000 TACM PZE 1139 02172 0 00 00000 TACN PZE 1140 02173 0 00 00000 TACP PZE 1141 * 1142 * 1143 * SUBROUTINE T003 ADD AND SUB 1144 * THIS SUBROUTINE CHECKS FOR PROPER OPERATION OF 1145 * THE ADD AND SUBTRACT INSTRUCTION 1146 * 1147 * 1148 02174 000003 OCT 3 TEST NO. 1149 02175 0 000000 ADSB DAC ** ADD-SUBTRACT 1150 02176 0 02 02174 LDA *-2 LOAD TEST NO. 1151 02177 0 04 00777 STA '777 STORE AT '777 1152 02200 101000 NOP KILL TEST LOCATION 1153 02201 0 02 00455 LDA CNTY INITIALIZE TEST COUNT 1154 02202 0 04 00000 STA 0 ** 1155 02203 1 02 02203 TBAB LDA *,1 PICK UP DATA WORD 1156 02204 0 04 02225 STA TBAX SAVE FOR LATER USE 1157 02205 0415 77 ALS 1 MULTIPLY BY TWO 1158 02206 0 04 02226 STA TBAY USING SHIFT 1159 02207 0 02 02225 LDA TBAX ADD DATA WORD TO 1160 02210 0 06 02225 ADD TBAX ITSELF AND CHECK RESULTS 1161 02211 0 11 02226 CAS TBAY AGAINST DATA TIMES 2 1162 02212 0 01 02214 JMP *+2 ERROR 1163 02213 0 01 02215 JMP *+2 PROPER ADD 1164 02214 000000 HLT ERROR 1165 02215 0 07 02225 SUB TBAX SUBTRACT DATA FROM SUM 1166 02216 0 11 02225 CAS TBAX AND CHECK AGAINST ORIGINAL 1167 02217 0 01 02221 JMP *+2 ERROR 1168 02220 0 01 02222 JMP *+2 PROPER SUBTRACT 1169 02221 000000 HLT ERROR 1170 02222 0 12 00000 IRS 0 INCREMENT INDEX AND 1171 02223 0 01 02203 JMP TBAB RETURN FOR NEXT PASS 1172 02224 -0 01 02175 JMP* ADSB RETURN 1173 02225 0 00 00000 TBAX PZE 1174 02226 0 00 00000 TBAY PZE 1175 * 1176 * SUBROUTINE T100 INDIRECT ADDRESSING CHECK 1177 * THIS SUBROUTINE CHECKS MOST OF THE INSTRUCTIONS 1178 * FOR THE ABILITY TO USE AN INDIRECT ADDRESS. 1179 * THE INDIRECT ADDRESS IS CHECKED AT ALL LEVELS
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 26

1180 * BETWEEN 1 AND 5 1181 * 1182 02227 000100 OCT 100 TEST NO. 1183 02230 0 000000 INDA DAC ** INDIRECT ADDRESSING 1184 02231 0 02 02227 LDA *-2 LOAD TEST NO. 1185 02232 0 04 00777 STA '777 STORE AT '777 1186 02233 101000 NOP KILL TEST LOCATION 1187 02234 140040 CRA INITIALIZE 1188 02235 0 04 00000 STA 0 ** 1189 02236 0 02 00455 LDA CNTY INITIALIZE TEST COUNT 1190 02237 0 04 02321 STA THAZ ** 1191 02240 101000 NOP 1192 02241 101000 NOP 1193 02242 101000 NOP 1194 02243 101000 NOP 1195 02244 0 02 02763 LDA =-6 ** 1196 02245 0 04 02320 STA THAT ** 1197 02246 -1 02 02312 THAB LDA* THAV+1,1 CHECK THE (LDA) INSTRUCTIONS 1198 02247 0 05 02311 ERA THAV FOR ABILITY TO INDIRECT ADDRESS 1199 02250 100040 SZE 1200 02251 000000 HLT ERROR 1201 02252 0 02 02311 LDA THAV CHECK (ERA) INSTRUCTIONS FOR 1202 02253 -1 05 02312 ERA* THAV+1,1 ABILITY TO INDIRECT ADDRESS 1203 02254 100040 SZE 1204 02255 000000 HLT ERROR 1205 02256 0 02 02761 LDA =-'1 CHECK (ANA) INSTRUCTION FOR 1206 02257 -1 03 02312 ANA* THAV+1,1 ABILITY TO INDIRECT ADDRESS 1207 02260 0 05 02311 ERA THAV 1208 02261 100040 SZE 1209 02262 000000 HLT ERROR 1210 02263 140040 CRA CHECK (ADD) INSTRUCTION FOR 1211 02264 -1 06 02312 ADD* THAV+1,1 ABILITY T0 INDIRECT ADDRESS 1212 02265 0 05 02311 ERA THAV 1213 02266 100040 SZE 1214 02267 000000 HLT ERROR 1215 02270 0 02 02311 LDA THAV CHECK (CAS) INSTRUCTION FOR 1216 02271 -1 11 02312 CAS* THAV+1,1 ABILITY TO INDIRECT ADDRESS 1217 02272 0 01 02274 JMP *+2 1218 02273 100000 SKP 1219 02274 000000 HLT ERROR 1220 02275 0 12 00000 IRS 0 INCREMENT INDEX 1221 02276 0 12 02320 IRS THAT INC LOOP COUNTER NO.1 1222 02277 0 01 02246 JMP THAB RETURN FOR NEXT ITERATION 1223 02300 140040 CRA REINITIALIZE 1224 02301 0 04 00000 STA 0 * 1225 02302 0 02 02760 LDA =-5 * 1226 02303 0 04 02320 STA THAT * 1227 02304 0 12 02321 IRS THAZ INC LOOP COUNTER NO.2 1228 02305 0 01 02246 JMP THAB REPEAT 1229 02306 101000 NOP
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 27

1230 02307 101000 NOP 1231 02310 -0 01 02230 JMP* INDA RETURN 1232 02311 1 000012 THAV DAC 10,1 INDIRECT ADDRESSING CHAIN 1233 02312 0 002311 DAC THAV 1234 02313 -0 002312 DAC* *-1 ** 1235 02314 -0 002313 DAC* *-1 ** 1236 02315 -0 002314 DAC* *-1 ** 1237 02316 -0 002315 DAC* *-1 ** 1238 02317 -0 002316 DAC* *-1 1239 * 1240 02320 000000 THAT BSZ 1 1241 02321 000000 THAZ BSZ 1 1242 * 1243 * 1244 * SUBROUTINE T001 IMA 1245 * THIS SUBROUTINE CHECKS THE PROPER OPERATION OF THE 1246 * IMA INSTRUCTION VARIOUS PATTERNS ARE INTERCHANGED 1247 * WITH CORE AND THE RESULTS CHECKED 1248 * 1249 02322 000001 OCT 1 TEST NO. 1250 02323 0 000000 IMAA DAC ** IMA TEST 1251 02324 0 02 02322 LDA *-2 LOAD TEST NO. 1252 02325 0 04 00777 STA '777 STORE AT '777 1253 02326 101000 NOP KILL TEST LOCATION 1254 02327 140040 CRA INITIALIZE 1255 02330 0 04 00000 STA 0 1256 02331 0 02 00455 LDA CNTY 1257 02332 0 04 02357 STA TIAX INITIALIZE TEST COUNT 1258 02333 1 02 01000 LDA 512,1 PICK UP FIRST WORD 1259 02334 0 04 02356 STA TIAQ 1260 02335 0 04 02360 STA TIAZ TO INITIALIZE LOOP 1261 02336 0 12 00000 TIAB IRS 0 INCREMENT INDEX REGISTER 1262 02337 0 12 02357 IRS TIAX AND PRESS COUNTER 1263 02340 0 01 02342 JMP *+2 PROCESS 1264 02341 -0 01 02323 JMP* IMAA RETURN 1265 02342 1 02 01000 LDA 512,1 PICK UP DATA 1266 02343 0 13 02360 IMA TIAZ INTERCHANGE WITH TEST 1267 02344 0 05 02356 ERA TIAQ COMPARE A REG 1268 02345 100040 SZE 1269 02346 000000 HLT ERROR 1270 02347 0 02 02360 LDA TIAZ CHECK FOR PROPER 1271 02350 1 05 01000 ERA 512,1 STORAGE DURING IMA 1272 02351 100040 SZE INSTRUCTION 1273 02352 000000 HLT ERROR 1274 02353 1 02 01000 LDA 512,1 PICK UP NEXT TEST 1275 02354 0 04 02356 STA TIAQ DATA, STORE AND RETURN 1276 02355 0 01 02336 JMP TIAB FOR NEXT PASS 1277 * 1278 02356 0 00 00000 TIAQ PZE 1279 02357 0 00 00000 TIAX PZE
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 28

1280 02360 0 00 00000 TIAZ PZE 1281 * 1282 * 1283 * SUBROUTINE T007 IAB 1284 * THIS ROUTINE CHECKS THE PROPER OPERATION 1285 * OF THE IAB INSTRUCTION USING 1000 RANDOM 1286 * VALUES. FAILING BITS ARE DISPLAYED IN THE 1287 * B REGISTER 1288 * 1289 02361 000007 OCT 7 TEST NO. 1290 02362 0 000000 IABA DAC ** IAB TEST 1291 02363 0 02 02361 LDA *-2 LOAD TEST NO. 1292 02364 0 04 00777 STA '777 STORE AT '777 1293 02365 101000 NOP KILL TEST LOCATION 1294 02366 140040 CRA INITIALIZE 1295 02367 0 04 00000 STA 0 ** 1296 02370 0 02 00455 LDA CNTY 1297 02371 0 04 02415 STA IABX INITIALIZE TEST COUNT 1298 02372 1 02 01000 LDA 512,1 INITIALIZE FOR 1299 02373 0 04 02417 IABB STA IABW BEGINNING OF LOOP 1300 02374 0400 60 LRL 16 LONG SHIFT RIGHT 1301 02375 0 12 00000 IRS 0 INCREMENT INDEX REGISTER 1302 02376 0 12 02415 IRS IABX INCREMENT COUNTER 1303 02377 0 01 02401 JMP *+2 AND TEST. CONTINUE IF MORE 1304 02400 -0 01 02362 JMP* IABA RETURN 1305 02401 1 02 01000 LDA 512,1 PICK UP RANDOM VALUE 1306 02402 0 04 02416 STA IABV AND SAVE FOR NEXT ITERATION CHECK 1307 02403 000201 IAB INTERCHANGE A REG AND B REG 1308 02404 0 05 02417 ERA IABW CHECK FOR PROPER A REG VALUE 1309 02405 100040 SZE 1310 02406 000000 HLT ERROR 1311 02407 0410 60 LLL 16 BRING B REG TO A REG 1312 02410 0 05 02416 ERA IABV CHECK FOR PROPER B REG VALUE 1313 02411 100040 SZE MUST COMPARE 1314 02412 000000 HLT ERROR 1315 02413 0 02 02416 LDA IABV GET CHECK VALUE FOR NEXT ITERATION 1316 02414 0 01 02373 JMP IABB RETURN FOR NEXT 1317 * 1318 02415 0 00 00000 IABX PZE 1319 02416 0 00 00000 IABV PZE 1320 02417 0 00 00000 IABW PZE 1321 * 1322 * 1323 * 1324 * SUBROUTINE T005 IRS 1325 * THIS ROUTINE CHECKS THE ABILITY TO 1326 * STEP FROM ZERO. PREMATURE SKIPS ARE CHECKED 1327 * FOR AS WELL AS THE SKIPPING WHEN INCREMENTING 1328 * TO ZERO 1329 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 29

1330 02420 000005 OCT 5 TEST NO. 1331 02421 0 000000 IRSX DAC ** IRS TEST 1332 02422 0 02 02420 LDA *-2 LOAD TEST NO. 1333 02423 0 04 00777 STA '777 STORE AT '777 1334 02424 101000 NOP KILL TEST LOCATION 1335 02425 140040 CRA 1336 02426 0 04 02461 STA TPYA 1337 02427 0 02 02462 LDA PTRN 1338 02430 000201 IAB 1339 02431 140040 CRA 1340 02432 141206 IRSD AOA 1341 02433 000201 IAB 1342 02434 0 12 02461 IRS TPYA 1343 02435 0 01 02442 JMP IRSA 1344 02436 000201 IAB 1345 02437 100040 SZE 1346 02440 000000 HLT ERROR 1347 02441 -0 01 02421 JMP* IRSX RETURN 1348 02442 0 11 02462 IRSA CAS PTRN 1349 02443 0 01 02445 JMP *+2 1350 02444 0 01 02446 JMP IRSB 1351 02445 000000 HLT ERROR 1352 02446 000201 IRSB IAB 1353 02447 101040 SNZ 1354 02450 000000 HLT ERROR 1355 02451 0 11 02461 CAS TPYA 1356 02452 0 01 02454 JMP *+2 1357 02453 0 01 02455 JMP IRSG 1358 02454 000000 HLT ERROR 1359 02455 000201 IRSG IAB 1360 02456 0 02 02462 LDA PTRN 1361 02457 000201 IAB 1362 02460 0 01 02432 JMP IRSD 1363 * 1364 02461 0 00 00000 TPYA PZE 1365 02462 052525 PTRN OCT 52525 1366 * 1367 * 1368 * 1369 * SUBROUTINE T002 ERA 1370 * THIS SUBROUTINE CHECKS FOR THE PROPER 1371 * OPERATION AT THE ERA INSTRUCTION. RANDOM DATA 1372 * WORDS ARE SELECTED AND AN EXCLUSIVE OR WITH 1373 * ITSELF IS PERFORMED WHICH SHOULD RESULT IN ZERO 1374 * AN EXCLUSIVE OR IS THE MADE WITH ITS ONE'S 1375 * COMPLEMENT RESULTING IN ALL ONE'S 1376 * 1377 02463 000002 OCT 2 TEST NO. 1378 02464 0 000000 ERAA DAC ** ERA TEST 1379 02465 0 02 02463 LDA *-2 LOAD TEST NO.
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 30

1380 02466 0 04 00777 STA '777 STORE AT '777 1381 02467 101000 NOP KILL TEST LOCATION 1382 02470 140040 CRA INITIALIZE 1383 02471 0 04 00000 STA 0 ** 1384 02472 0 02 00455 LDA CNTY INITIALIZE TEST COUNT 1385 02473 0 04 02516 STA T2AY ** 1386 02474 0 12 00000 T2AB IRS 0 1387 02475 1 02 01000 LDA 512,1 PICK UP DATA 1388 02476 0 04 02517 STA T2XZ AND STORE FOR TEST 1389 02477 140401 CMA COMPLEMENT AND 1390 02500 0 04 02515 STA T2AX STORE FOR CHECK 1391 02501 0 05 02517 ERA T2XZ EXCLUSIVE OR DATA AND COMPLEMENT 1392 02502 0 04 02514 STA T2AW RESULTS SHOULD BE ALL ONES 1393 02503 0 12 02514 IRS T2AW CHECK BY INCREMENTING TO ZERO 1394 02504 000000 HLT ERROR 1395 02505 0 02 02517 LDA T2XZ EXCLUSIVE OR DATA WITH ITSELF 1396 02506 0 05 02517 ERA T2XZ RESULTS SHOULD BE ZERO 1397 02507 100040 SZE 1398 02510 000000 HLT ERROR 1399 02511 0 12 02516 IRS T2AY INCREMENT COUNTER 1400 02512 0 01 02474 JMP T2AB RETURN FOR NEXT PASS 1401 02513 -0 01 02464 JMP* ERAA RETURN 1402 * 1403 02514 0 00 00000 T2AW PZE 1404 02515 0 00 00000 T2AX PZE 1405 02516 0 00 00000 T2AY PZE 1406 02517 0 00 00000 T2XZ PZE 1407 * 1408 * 1409 * 1410 * SUBROUTINE T004 ANA 1411 * 1412 02520 000004 OCT 4 TEST NO. 1413 02521 0 000000 ANAA DAC ** ANA TEST 1414 02522 0 02 02520 LDA *-2 LOAD TEST NO. 1415 02523 0 04 00777 STA '777 STORE AT '777 1416 02524 101000 NOP KILL TEST LOCATION 1417 02525 0 02 00455 LDA CNTY INITIALIZE TEST COUNT 1418 02526 0 04 00000 STA 0 ** 1419 02527 1 02 02527 ANAB LDA *,1 1420 02530 0 04 02561 STA TBBY 1421 02531 0 02 02557 LDA TBBS AN ODD ALTERNATING PATTERN 1422 02532 0 03 02560 ANA TBBT IS ADDED WITH EVEN ALTERNATING 1423 02533 100040 SZE 1424 02534 000000 HLT ERROR 1425 02535 0 02 02561 LDA TBBY RANDOM DATA IS ADDED WITH 1426 02536 0 03 02761 ANA =-'1 ALL ONES AND THE RESULT 1427 02537 0 11 02561 CAS TBBY SHOULD BE ORIGINAL DATA 1428 02540 0 01 02542 JMP *+2 ERROR 1429 02541 0 01 02543 JMP TBNE TO NEXT TEST
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 31

1430 02542 000000 HLT ERROR 1431 02543 0 02 02761 TBNE LDA =-'1 ALL ONES IS THEN ADDED WITH 1432 02544 0 03 02561 ANA TBBY RANDOM DATA AND RESULTS 1433 02545 0 05 02561 ERA TBBY SHOULD BE ORIGINAL DATA 1434 02546 101040 SNZ TEST FOR ERROR 1435 02547 0 01 02551 JMP TBBD 1436 02550 000000 HLT ERROR 1437 02551 0 02 02557 TBBD LDA TBBS INITIALIZE FOR NEXT PASS 1438 02552 0 13 02560 IMA TBBT ** 1439 02553 0 04 02557 STA TBBS ** 1440 02554 0 12 00000 IRS 0 INCREMENT INDEX 1441 02555 0 01 02527 JMP ANAB AND RETURN 1442 02556 -0 01 02521 JMP* ANAA RETURN 1443 * 1444 02557 125252 TBBS OCT 125252 1445 02560 052525 TBBT OCT 52525 1446 02561 000000 TBBY BSZ 1 1447 * 1448 * 1449 * 1450 * 1451 * ROUTINE T006 CAS 1452 * THIS ROUTINE CHECKS FOR PROPER 1453 * SKIPPING IN ALL THREE CONDITIONS 1454 * 1455 02562 000006 OCT 6 TEST NO. 1456 02563 0 000000 CASA DAC ** CAS TEST 1457 02564 0 02 02562 LDA *-2 LOAD TEST NO. 1458 02565 0 04 00777 STA '777 STORE AT '777 1459 02566 101000 NOP KILL TEST LOCATION 1460 02567 140040 CRA 1461 02570 0 04 00000 STA 0 INITIALIZE 1462 02571 0 02 00455 LDA CNTY INITIALIZE TEST COUNT 1463 02572 0 04 02622 STA CASX ** 1464 02573 1 02 01000 CASB LDA 512,1 CAS CHECK FOR EQUAL 1465 02574 1 11 01000 CAS 512,1 ** 1466 02575 000000 HLT ERROR 1467 02576 0 01 02600 JMP *+2 OK 1468 02577 000000 HLT ERROR 1469 02600 141206 AOA CAS CHECK WITH A GREATER VALUE 1470 02601 0 11 02757 CAS ='100000 ELIMINATE VARIABLE DATA 1471 02602 0 01 02604 JMP *+2 IF EQUAL TO 77777 1472 02603 0 01 02616 JMP CASN ** 1473 02604 1 11 01000 CAS 512,1 1474 02605 0 01 02610 JMP *+3 1475 02606 000000 HLT ERROR 1476 02607 000000 HLT ERROR 1477 02610 0 07 02756 SUB =2 CAS CHECK WITH A SMALLER VALUE 1478 02611 100001 SRC VALUE 1479 02612 0 01 02616 JMP CASN
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 32

1480 02613 1 11 01000 CAS 512,1 1481 02614 000000 HLT ERROR 1482 02615 000000 HLT ERROR 1483 02616 0 12 00000 CASN IRS 0 1484 02617 0 12 02622 IRS CASX 1485 02620 0 01 02573 JMP CASB 1486 02621 -0 01 02563 JMP* CASA RETURN 1487 * 1488 02622 000000 CASX BSZ 1 1489 * 1490 * 1491 * 1492 * SUBROUTINE T010 HALF WORD INSTRUCTIONS 1493 * HALF WORD INSTRUCTION TESTS 1494 * 1495 * TEST CAL INST. - EVEN BITS 1496 * 1497 02623 000010 OCT 10 TEST NO. 1498 02624 0 000000 HWDT DAC ** HALF WORD TEST 1499 02625 0 02 02623 LDA *-2 LOAD TEST NO. 1500 02626 0 04 00777 STA '777 STORE AT '777 1501 02627 101000 NOP KILL TEST LOCATION 1502 02630 0 02 02713 LDA CON1 EVEN BITS 1503 02631 141050 CAL ZERO A1 - A8 1504 02632 0 05 02715 ERA CON3 MASK FOR ERROR 1505 02633 100040 SZE 1506 02634 000000 HLT ERROR 1507 * 1508 * TEST CAL INST. - ODD BITS 1509 * 1510 02635 0 02 02714 LDA CON2 ODD BITS 1511 02636 141050 CAL ZERO A1 - A8 1512 02637 0 05 02716 ERA CON4 MASK FOR ERROR 1513 02640 100040 SZE TEST FOR ERROR 1514 02641 000000 HLT ERROR 1515 * 1516 * TEST CAR INST. - EVEN BITS 1517 * 1518 02642 0 02 02713 LDA CON1 EVEN BITS 1519 02643 141044 CAR ZERO A9 - A16 1520 02644 0 05 02717 ERA CON5 MASK FOR ERROR 1521 02645 100040 SZE TEST FOR ERROR 1522 02646 000000 HLT ERROR 1523 * 1524 * TEST CAR INST. - ODD BITS 1525 * 1526 02647 0 02 02714 LDA CON2 ODD BITS 1527 02650 141044 CAR ZERO A9-A16 1528 02651 0 05 02720 ERA CON6 MASK FOR ERROR 1529 02652 100040 SZE TEST FOR ERROR
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 33

1530 02653 000000 HLT ERROR 1531 * 1532 * TEST ICA INST. 1533 * 1534 02654 0 02 02721 LDA CON7 LEFT EVEN BITS-RIGHT ODD BITS 1535 02655 141340 ICA LEFT ODD BITS-RIGHT EVEN BITS 1536 02656 0 05 02722 ERA CON8 MASK FOR ERROR 1537 02657 100040 SZE TEST FOR ERROR 1538 02660 000000 HLT ERROR 1539 02661 0 02 02722 LDA CON8 LEFT ODD BITS-RIGHT EVEN BITS 1540 02662 141340 ICA LEFT EVEN BITS-RIGHT ODD BITS 1541 02663 0 05 02721 ERA CON7 MASK FOR ERROR 1542 02664 100040 SZE TEST FOR ERROR 1543 02665 000000 HLT ERROR 1544 * 1545 * TEST ICL INST. 1546 * 1547 02666 0 02 02721 LDA CON7 LEFT EVEN BITS-RIGHT ODD BITS 1548 02667 141140 ICL LEFT CLEAR-RIGHT EVEN BITS 1549 02670 0 05 02715 ERA CON3 MASK FOR ERROR 1550 02671 100040 SZE TEST FOR ERROR 1551 02672 000000 HLT ERROR 1552 02673 0 02 02722 LDA CON8 LEFT ODD BITS-RIGHT EVEN BITS 1553 02674 141140 ICL LEFT CLEAR-RIGHT ODD BITS 1554 02675 0 05 02716 ERA CON4 MASK FOR ERROR 1555 02676 100040 SZE TEST FOR ERROR 1556 02677 000000 HLT ERROR 1557 * 1558 * TEST ICR INST. 1559 * 1560 02700 0 02 02721 LDA CON7 LEFT EVEN BITS-RIGHT ODD BITS 1561 02701 141240 ICR LEFT ODD BITS-RIGHT CLEAR 1562 02702 0 05 02720 ERA CON6 MASK FOR ERROR 1563 02703 100040 SZE TEST FOR ERROR 1564 02704 000000 HLT ERROR 1565 02705 0 02 02722 LDA CON8 LEFT ODD BITS-RIGHT EVEN BITS 1566 02706 141240 ICR LEFT EVEN BITS-RIGHT CLEAR 1567 02707 0 05 02717 ERA CON5 MASK FOR ERROR 1568 02710 100040 SZE TEST FOR ERROR 1569 02711 000000 HLT ERROR 1570 02712 -0 01 02624 JMP* HWDT 1571 * 1572 * 1573 * CONSTANTS 1574 * 1575 02713 052525 CON1 OCT 52525 EVEN BITS 1576 02714 125252 CON2 OCT 125252 ODD BITS 1577 02715 000125 CON3 OCT 125 LEFT CLEAR-RIGHT EVEN BITS 1578 02716 000252 CON4 OCT 252 LEFT CLEAR - RIGHT ODD BITS 1579 02717 052400 CON5 OCT 52400 LEFT EVEN BITS - RIGHT CLEAR
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 34

1580 02720 125000 CON6 OCT 125000 LEFT ODD BITS - RIGHT CLEAR 1581 02721 052652 CON7 OCT 52652 LEFT EVEN BITS - RIGHT ODD BITS 1582 02722 125125 CON8 OCT 125125 LEFT ODD BITS - RIGHT EVEN BITS 1583 * 1584 02723 0 002724 MES3 DAC *+1 1585 02724 177763 DEC -13 1586 02725 106612 OCT 106612 1587 02726 151705 BCI 12,SENS SW TO A REG 8 TIMES 02727 147323 02730 120323 02731 153640 02732 152317 02733 120301 02734 120322 02735 142707 02736 120270 02737 120324 02740 144715 02741 142723 1588 * 1589 02742 0 002743 MES2 DAC *+1 1590 02743 177773 DEC -5 1591 02744 106612 OCT 106612 1592 02745 150323 BCI 2,PS 02746 120240 1593 02747 130260 CNT5 BCI 2,0000 02750 130260 1594 02751 0 002752 MES4 DAC *+1 1595 02752 177775 DEC -3 1596 02753 106612 OCT 106612 1597 02754 142317 BCI 2,DONE 02755 147305 1598 * 1599 02756 000002 FIN 02757 100000 02760 177773 02761 177777 02762 000001 02763 177772 1600 * 1601 * 1602 * 1603 * 1604 * 1605 ORG '3000 1606 * 1607 03000 0 000000 TS03 DAC ** SECTOR 3 TESTS 1608 03001 0 10 03726 JST PFIS PFI SET-UP - BECOMES A 'NOP' LATER 1609 * ALSO MODIFIES KEYS TEST IF CP IS 716
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 35

1610 03002 101000 NOP 1611 03003 0 10 03017 JST XREG '11 - XREG AND LOC.0 TEST 1612 03004 0 10 03160 JST KEYS '12 - INK, OTK TEST 1613 03005 0 10 03224 JST ARSA '60 - ARS INST TEST 1614 03006 0 10 03300 JST ALSA '61 - ALS 1615 03007 0 10 03346 JST LGLA '62 - LGL 1616 03010 0 10 03414 JST LGRA '63 - LGR 1617 03011 0 10 03470 JST ALRA '64 - ALR 1618 03012 0 10 03536 JST ARRA '65 - ARR 1619 03013 0 10 03627 JST LRSA '66 - LRS 1620 03014 101000 NOP 1621 03015 -0 01 03000 JMP* TS03 RETURN TO EXEC 1622 * 1623 * 1624 * 1625 * SUBROUTINE T011 X REG. INSTRUCTIONS 1626 * STORE AND LOAD INDEX INSTRUCTION TESTS 1627 * 1628 * TEST STX INST. 1629 * 1630 03016 000011 OCT 11 TEST NO. 1631 03017 0 000000 XREG DAC ** X REGISTER TEST 1632 03020 0 02 03016 LDA *-2 LOAD TEST NO. 1633 03021 0 04 00777 STA '777 STORE AT '777 1634 03022 101000 NOP KILL TEST LOCATION 1635 03023 0 02 00455 LDA CNTY INITIALIZE THE 1636 03024 0 04 00000 STA '0 INDEX REGISTER AND 1637 03025 0 04 00771 STA WORK+1 WORKING LOC NO. 2 1638 03026 0 15 00770 TST1 STX WORK XFER INDEX REG TO WORKING LOC. NO. 1 AND 1639 03027 0 02 00770 LDA WORK THEN TO "A" REGISTER 1640 03030 0 05 00771 ERA WORK+1 MASK FOR ERROR 1641 03031 100040 SZE TEST FOR ERROR 1642 03032 000000 HLT ERROR 1643 03033 0 12 00000 IRS '0 ADD 1 TO INDEX REG 1644 03034 101000 NOP NOTHING 1645 03035 0 12 00771 IRS WORK+1 ADD 1 TO WORKING LOC NO. 2 1646 03036 0 01 03026 JMP TST1 REPEAT WITH INCREMENTED VALUE 1647 * 1648 * TEST STX INST. WITH INDIRECT ADDRESSING 1649 * 1650 03037 0 02 00455 LDA CNTY 1651 03040 0 04 00000 STA 0 INITIALIZE TEST COUNT 1652 03041 0 04 00771 STA WORK+1 1653 03042 -0 15 00766 TST2 STX* STIR XFER INDEX REG TO WORKING LOC NO. 1 AND 1654 03043 0 02 00770 LDA WORK THEN TO "A" REGISTER 1655 03044 0 05 00771 ERA WORK+1 MASK FOR ERROR 1656 03045 100040 SZE TEST FOR ERROR 1657 03046 000000 HLT ERROR 1658 03047 0 12 00000 IRS '0 ADD 1 TO INDEX REG 1659 03050 101000 NOP NOTHING
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 36

1660 03051 0 12 00771 IRS WORK+1 ADD 1 TO WORKING LOC NO. 2 1661 03052 0 01 03042 JMP TST2 REPEAT WITH INCREMENTED VALUE 1662 * 1663 * TEST LDX INSTRUCTION 1664 * 1665 03053 0 02 00455 LDA CNTY 1666 03054 0 04 00770 STA WORK FIRST NUMBER 1667 03055 0 02 03777 LDA ='52525 1668 03056 0 04 00771 STA WORK+1 SECOND NUMBER 1669 03057 0 02 00770 XR01 LDA WORK 1670 03060 0 04 00000 STA 0 STORE FIRST NO. AT ZERO 1671 03061 0 35 00771 LDX WORK+1 LOAD SECOND NO. INTO X-REG. 1672 03062 0 02 00000 LDA 0 LOAD FROM ZERO - SB SECOND NO. 1673 03063 0 05 00771 ERA WORK+1 XOR WITH SECOND NO. 1674 03064 100040 SZE 1675 03065 000000 HLT ERROR - ZERO AND X-REG DID NOT AGREE 1676 03066 0 12 00771 IRS WORK+1 1677 03067 101000 NOP 1678 03070 0 12 00770 IRS WORK 1679 03071 0 01 03057 JMP XR01 1680 * 1681 03072 0 02 00455 LDA CNTY 1682 03073 0 04 00770 STA WORK INITIALIZE 1683 03074 0 35 00770 XR02 LDX WORK LOAD FIRST NO. INTO X-REG. 1684 03075 0 02 00771 LDA WORK+1 LOAD A WITH SECOND NO. 1685 03076 0 04 00000 STA 0 STORE SECOND NO. AT ZERO 1686 03077 0 15 00772 STX WORK+2 STORE FROM X-REG AT WORK+2 1687 03100 0 02 00772 LDA WORK+2 WORK+2 SHOULD HAVE SECOND NO. 1688 03101 0 05 00771 ERA WORK+1 XOR WITH SECOND NO. 1689 03102 100040 SZE 1690 03103 000000 HLT ERROR - X-REG AND ZERO DID NOT AGREE 1691 03104 0 12 00771 IRS WORK+1 1692 03105 101000 NOP 1693 03106 0 12 00770 IRS WORK 1694 03107 0 01 03074 JMP XR02 1695 * 1696 * TEST LDX INST. WITH INDIRECT ADDRESSING 1697 * 1698 03110 0 02 00455 LDA CNTY 1699 03111 0 04 00771 STA WORK+1 INITIALIZE 1700 03112 140040 CRA 1701 03113 0 04 00772 TST4 STA WORK+2 1702 03114 -0 35 00767 LDX* LDIR XFER WORKING LOC NO. 3 TO INDEX REG AND 1703 03115 0 15 00770 STX WORK THEN TO WORKING LOC NO. 1 AND 1704 03116 0 02 00770 LDA WORK THEN TO "A" REGISTER 1705 03117 0 05 00772 ERA WORK+2 MASK 1706 03120 100040 SZE TEST FOR ERROR 1707 03121 000000 HLT ERROR 1708 03122 0 02 00000 LDA '0 XFER LOC 0 TO "A" REGISTER 1709 03123 0 05 00772 ERA WORK+2 MASK
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 37

1710 03124 100040 SZE TEST FOR ERROR 1711 03125 000000 HLT ERROR 1712 03126 0 12 00772 IRS WORK+2 ADD 1 TO WORKING LOC NO. 3 1713 03127 101000 NOP NOTHING 1714 03130 0 12 00771 IRS WORK+1 ADD 1 TO WORKING LOC NO. 2 1715 03131 0 01 03113 JMP TST4 REPEAT WITH INCREMENTED VALUE 1716 * 1717 * 1718 * TEST X-REG FOR INDEXING 1719 * 1720 03132 0 10 03133 JST *+1 FORM ADDR FOR COMPARING INDEXING 1721 03133 0 000000 DAC ** 1722 03134 0 02 03133 LDA *-1 1723 03135 0 06 03776 ADD =7 1724 03136 0 04 00770 STA WORK STORE AT POINTER 1725 03137 0 02 00455 LDA CNTY 1726 03140 0 04 03156 STA CN03 SET UP A LOOP COUNT 1727 03141 0 35 03775 LDX =-'200 1728 03142 1 02 03342 INDX LDA *+'200,1 LOAD A WITH DATA WORD 1729 03143 -0 05 00770 ERA* WORK COMPARE WITH THE SAME WORD 1730 03144 100040 SZE 1731 03145 000000 HLT INDEXING DID NOT FORM RIGHT ADDRESS 1732 03146 0 12 00770 IRS WORK GOOD - INCREMENT POINTER 1733 03147 101000 NOP 1734 03150 0 12 00000 IRS 0 BUMP INDEX PARAMETER 1735 03151 101000 NOP 1736 03152 0 12 03156 IRS CN03 ARE WE FINISHED 1737 03153 0 01 03142 JMP INDX NO, DO ANOTHER TIME 1738 03154 000021 RMP RESET PARITY FLOP IF SET. 1739 03155 -0 01 03017 JMP* XREG RETURN 1740 * 1741 03156 000000 CN03 BSZ 1 1742 * 1743 * 1744 * 1745 * SUBROUTINE T012 KEYS--INK,OTK 1746 * INPUT AND OUTPUT KEY INSTRUCTION TESTS 1747 * 1748 * TEST INK INST. 1749 * 1750 03157 000012 OCT 12 TEST NO. 1751 03160 0 000000 KEYS DAC ** KEYS TEST 1752 03161 0 02 03157 LDA *-2 LOAD TEST NO. 1753 03162 0 04 00777 STA '777 STORE AT '777 1754 03163 101000 NOP KILL TEST LOCATION 1755 03164 140040 CRA 1756 03165 000201 IAB 1757 03166 140040 CRA 1758 03167 000201 IAB CLEAR SHIFT COUNT 1759 03170 171020 OTK
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 38

1760 03171 140200 RCB RESET "C" BIT 1761 03172 0 02 03774 LDA ='177777 1762 03173 000043 INK INPUT KEYS 1763 03174 0 03 03773 KEY1 ANA ='157777 BECOMES ANA ='177577 IF CP IS 716 1764 03175 100040 SZE KEYS SHOULD BE ZERO 1765 03176 000000 HLT ERROR - SOME BITS SET, CHECK A-REG 1766 03177 140600 SCB SET "C" BIT 1767 03200 000043 INK INPUT KEYS 1768 03201 0 03 03222 ANA CON9 MASK FOR A1 1769 03202 101400 SMI TEST FOR ERROR 1770 03203 000000 HLT ERROR 1771 * 1772 * TEST OTK INST. 1773 * 1774 03204 0 02 03772 LDA ='077777 1775 03205 141206 AOA ADD ONE TO (A) THIS SHOULD SET THE C BIT 1776 03206 140040 CRA CLEAR "A" REG 1777 03207 171020 OTK OUTPUT KEYS 1778 03210 100001 SRC TEST FOR ERROR 1779 03211 000000 HLT ERROR 1780 03212 140024 CHS SET A1 1781 03213 171020 OTK OUTPUT KEYS 1782 03214 101001 SSC TEST FOR ERROR 1783 03215 000000 HLT ERROR 1784 03216 140200 RCB RESET "C" BIT 1785 03217 0400 40 LRL 32 1786 03220 -0 01 03160 JMP* KEYS RETURN 1787 * 1788 03221 0 03 03771 KEY2 ANA ='177577 MASK OFF BIT 9 FOR PRIV/ENB RUPT FLOP 1789 03222 100000 CON9 OCT 100000 1790 * 1791 * 1792 * 1793 * 1794 * SUBROUTINE T060 ARS 1795 * 1796 03223 000060 OCT 60 TEST NO. 1797 03224 0 000000 ARSA DAC ** ARS TEST 1798 03225 0 02 03223 LDA *-2 LOAD TEST NO. 1799 03226 0 04 00777 STA '777 STORE AT '777 1800 03227 101000 NOP KILL TEST LOCATION 1801 03230 0 02 00455 LDA CNTY 1802 03231 0 04 03622 STA SFTX INITIALIZE TEST COUNT 1803 03232 0 02 03276 ARSB LDA ARSS 1804 03233 0 04 03605 STA SFT MODIFY SHIFT INSTRUCTION 1805 03234 0 02 03770 LDA =-15 1806 03235 0 04 00000 STA 0 SHIFTS COUNTER 1807 03236 140040 ARSD CRA 1808 03237 0 04 03623 STA SFTY ** 1809 03240 000201 IAB **
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 39

1810 03241 1 02 00672 LDA TSTB,1 ** 1811 03242 0 04 03624 STA SFTZ ** 1812 03243 0 02 00652 LDA TSTX CHECK ARS USING 1813 03244 0 10 03603 JST SHFT FLOATING ZERO 1814 03245 140040 CRA ** 1815 03246 000201 IAB ** 1816 03247 1 02 00713 LDA TSTC,1 CHECK ARS USING 1817 03250 0 04 03624 STA SFTZ ALL ONES POSITIVE 1818 03251 0 02 00673 LDA TSTV ** 1819 03252 0 10 03603 JST SHFT ** 1820 03253 140040 CRA ** 1821 03254 000201 IAB CHECK ARS USING 1822 03255 1 02 00734 LDA TSTD,1 NEGATIVE ALTERNATING PATTERN 1823 03256 0 04 03624 STA SFTZ ** 1824 03257 0 02 00714 LDA TSTU ** 1825 03260 0 10 03603 JST SHFT ** 1826 03261 140040 CRA CHECK ARS USING 1827 03262 000201 IAB POSITIVE ALTERNATING PATTERN 1828 03263 1 02 00755 LDA TSTE,1 ** 1829 03264 0 04 03624 STA SFTZ ** 1830 03265 0 02 00735 LDA TSTR ** 1831 03266 0 10 03603 JST SHFT ** 1832 03267 0 12 00000 IRS 0 INCREMENT INNER LOOP COUNTER 1833 03270 0 01 03274 JMP ARSG OFF FOR NEXT SHIFT 1834 03271 0 12 03622 IRS SFTX 1835 03272 0 01 03232 JMP ARSB RETURN FOR NEXT PASS 1836 03273 -0 01 03224 JMP* ARSA NO ERRORS. EXIT 1837 * 1838 03274 0 12 03605 ARSG IRS SFT STEP SHIFT AMOUNT AND 1839 03275 0 01 03236 JMP ARSD RETURN FOR NEXT PASS 1840 * 1841 03276 0405 61 ARSS ARS 15 1842 * 1843 * 1844 * 1845 * SUBROUTINE T061 ALS 1846 * 1847 03277 000061 OCT 61 TEST NO. 1848 03300 0 000000 ALSA DAC ** ALS TEST 1849 03301 0 02 03277 LDA *-2 LOAD TEST NO. 1850 03302 0 04 00777 STA '777 STORE AT '777 1851 03303 101000 NOP KILL TEST LOCATION 1852 03304 0 02 00455 LDA CNTY 1853 03305 0 04 03622 STA SFTX INITIALIZE TEST COUNT 1854 03306 0 02 03344 ALSB LDA ALSS 1855 03307 0 04 03605 STA SFT MODIFY SHIFT INSTRUCTION 1856 03310 0 02 03770 LDA =-15 1857 03311 0 04 00000 STA 0 SHIFTS COUNTER 1858 03312 0 02 03777 ALSD LDA ='52525 CHECK OF ALS USING 1859 03313 0 04 03623 STA SFTY ALL ONE PATTERN
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 40

1860 03314 000201 IAB ** 1861 03315 1 02 00571 LDA SKNB,1 ** 1862 03316 0 04 03624 STA SFTZ ** 1863 03317 0 02 00571 LDA SKNB ** 1864 03320 0 10 03603 JST SHFT ** 1865 03321 0 02 03777 LDA ='52525 CHECK OF ALS USING 1866 03322 000201 IAB FLOATING ONE BIT 1867 03323 1 02 00611 LDA SKNC,1 ** 1868 03324 0 04 03624 STA SFTZ ** 1869 03325 0 02 00611 LDA SKNC ** 1870 03326 0 10 03603 JST SHFT ** 1871 03327 0 02 03777 LDA ='52525 CHECK OF ALS USING 1872 03330 000201 IAB ALTERNATING BIT PATTERN 1873 03331 1 02 00551 LDA SKNA,1 ** 1874 03332 0 04 03624 STA SFTZ ** 1875 03333 0 02 00551 LDA SKNA ** 1876 03334 0 10 03603 JST SHFT ** 1877 03335 0 12 00000 IRS 0 INCREMENT 1878 03336 0 01 03342 JMP ALSG GO SET FOR NEXT ITERATION 1879 03337 0 12 03622 IRS SFTX INCREMENT MAIN COUNTER 1880 03340 0 01 03306 JMP ALSB RETURN FOR NEXT PASS 1881 03341 -0 01 03300 JMP* ALSA EXIT 1882 * 1883 03342 0 12 03605 ALSG IRS SFT INCREMENT SHIFT AMOUNT 1884 03343 0 01 03312 JMP ALSD AND RETURN FOR NEXT PASS 1885 * 1886 03344 0415 61 ALSS ALS 15 1887 * 1888 * 1889 * SUBROUTINE T062 LGL 1890 * 1891 03345 000062 OCT 62 TEST NO. 1892 03346 0 000000 LGLA DAC ** LGL TEST 1893 03347 0 02 03345 LDA *-2 LOAD TEST NO. 1894 03350 0 04 00777 STA '777 STORE AT '777 1895 03351 101000 NOP KILL TEST LOCATION 1896 03352 0 02 00455 LDA CNTY 1897 03353 0 04 03622 STA SFTX INITIALIZE TEST COUNT 1898 03354 0 02 03410 LGLB LDA LGLS 1899 03355 0 04 03605 STA SFT MODIFY SHIFT INSTRUCTION 1900 03356 0 02 03770 LDA =-15 1901 03357 0 04 00000 STA 0 SHIFTS COUNTER 1902 03360 0 02 03777 LGLD LDA ='52525 INITIALIZE B REG AND 1903 03361 0 04 03623 STA SFTY STORE VALUE FOR LATER 1904 03362 000201 IAB CHECK 1905 03363 1 02 00551 LDA SKNA,1 STORE FINAL A REG 1906 03364 0 04 03624 STA SFTZ VALUE FOR CHECK 1907 03365 0 02 00551 LDA SKNA INITIALIZE A REG 1908 03366 0 10 03603 JST SHFT GO TO SHIFT AND CHECK ROUTINE 1909 03367 0 02 03777 LDA ='52525 INITIALIZE
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 41

1910 03370 000201 IAB B REG 1911 03371 1 02 00571 LDA SKNB,1 A REG VALUE FOR 1912 03372 0 04 03624 STA SFTZ CHECK 1913 03373 0 02 00571 LDA SKNB LOAD DATA 1914 03374 0 10 03603 JST SHFT TO SHIFT AND CHECK 1915 03375 0 02 03777 LDA ='52525 INITIALIZE 1916 03376 000201 IAB B REG 1917 03377 1 02 00611 LDA SKNC,1 FINAL A REG VALUE 1918 03400 0 04 03624 STA SFTZ TO STORAGE FOR CHECK 1919 03401 0 02 00611 LDA SKNC INITIALIZE A REG 1920 03402 0 10 03603 JST SHFT TO SHIFT AND CHECK 1921 03403 0 12 00000 IRS 0 STEP INNER LOOP COUNTER 1922 03404 0 01 03411 JMP LGLG MOVE GO SET UP 1923 03405 0 12 03622 IRS SFTX 1924 03406 0 01 03354 JMP LGLB RETURN FOR NEXT PASS 1925 03407 -0 01 03346 JMP* LGLA AND EXIT 1926 * 1927 03410 0414 61 LGLS LGL 15 1928 03411 0 12 03605 LGLG IRS SFT INCREMENT SHIFT AMOUNT 1929 03412 0 01 03360 JMP LGLD AND RETURN TO INNER LOOP 1930 * 1931 * 1932 * SUBROUTINE T063 LGR 1933 * 1934 03413 000063 OCT 63 TEST NO. 1935 03414 0 000000 LGRA DAC ** LGR TEST 1936 03415 0 02 03413 LDA *-2 LOAD TEST NO. 1937 03416 0 04 00777 STA '777 STORE AT '777 1938 03417 101000 NOP KILL TEST LOCATION 1939 03420 0 02 00455 LDA CNTY 1940 03421 0 04 03622 STA SFTX INITIALIZE TEST COUNT 1941 03422 0 02 03466 LGRB LDA LGRS 1942 03423 0 04 03605 STA SFT MODIFY SHIFT INSTRUCTION 1943 03424 0 02 03770 LDA =-15 1944 03425 0 04 00000 STA 0 SHIFTS COUNTER 1945 03426 0 02 03777 LGRD LDA ='52525 INITIALIZE B REG AND B REG 1946 03427 0 04 03623 STA SFTY CHECK CELL 1947 03430 000201 IAB ** 1948 03431 0 02 00611 LDA SKNC SET A REG CHECK CELL 1949 03432 0 04 03624 STA SFTZ TO PROPER VALUE 1950 03433 1 02 00611 LDA SKNC,1 INITIALIZE A REG 1951 03434 0 10 03603 JST SHFT TO SHIFT AND CHECK ROUTINE 1952 03435 0 02 03777 LDA ='52525 CHECK OF LGR 1953 03436 000201 IAB WITH ALL ONE PATTERN 1954 03437 1 02 00714 LDA TSTU,1 ** 1955 03440 0 04 03624 STA SFTZ ** 1956 03441 0 02 03774 LDA =-'1 ** 1957 03442 0 10 03603 JST SHFT ** 1958 03443 0 02 03777 LDA ='52525 CHECK OF LGR 1959 03444 000201 IAB WITH ALTERNATING BITS
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 42

1960 03445 1 02 00756 LDA TSTE+1,1 ** 1961 03446 0 04 03624 STA SFTZ ** 1962 03447 0 02 00734 LDA TSTD ** 1963 03450 0 10 03603 JST SHFT ** 1964 03451 0 02 03777 LDA ='52525 CHECK OF LGR 1965 03452 000201 IAB WITH FLOATING ONE 1966 03453 0 02 00611 LDA SKNC ** 1967 03454 0 04 03624 STA SFTZ ** 1968 03455 1 02 00611 LDA SKNC,1 ** 1969 03456 0 10 03603 JST SHFT ** 1970 03457 0 12 00000 IRS 0 1971 03460 0 01 03464 JMP LGRG 1972 03461 0 12 03622 IRS SFTX 1973 03462 0 01 03422 JMP LGRB 1974 03463 -0 01 03414 JMP* LGRA 1975 * 1976 03464 0 12 03605 LGRG IRS SFT 1977 03465 0 01 03426 JMP LGRD 1978 03466 0404 61 LGRS LGR 15 1979 * 1980 * 1981 * SUBROUTINE T064 ALR 1982 * 1983 03467 000064 OCT 64 TEST NO. 1984 03470 0 000000 ALRA DAC ** ALR TEST 1985 03471 0 02 03467 LDA *-2 LOAD TEST NO. 1986 03472 0 04 00777 STA '777 STORE AT '777 1987 03473 101000 NOP KILL TEST LOCATION 1988 03474 0 02 00455 LDA CNTY 1989 03475 0 04 03622 STA SFTX INITIALIZE TEST COUNT 1990 03476 0 02 03534 ALRB LDA ALRS 1991 03477 0 04 03605 STA SFT MODIFY SHIFT INSTRUCTION 1992 03500 0 02 03770 LDA =-15 1993 03501 0 04 00000 STA 0 SHIFTS COUNTER 1994 03502 0 02 03777 ALRD LDA ='52525 CHECK ALR USING 1995 03503 0 04 03623 STA SFTY FLOATING ZERO BIT 1996 03504 000201 IAB ** 1997 03505 0 02 00673 LDA TSTV ** 1998 03506 0 04 03624 STA SFTZ ** 1999 03507 1 02 00673 LDA TSTV,1 ** 2000 03510 0 10 03603 JST SHFT ** 2001 03511 0 02 03777 LDA ='52525 CHECK ALR USING 2002 03512 000201 IAB FLOTING ONE BIT 2003 03513 0 02 00631 LDA SKND ** 2004 03514 0 04 03624 STA SFTZ ** 2005 03515 1 02 00631 LDA SKND,1 ** 2006 03516 0 10 03603 JST SHFT ** 2007 03517 0 02 03777 LDA ='52525 CHECK OF ALR USING 2008 03520 000201 IAB 2009 03521 0 02 00651 LDA SKNE A ONE BIT MARKER
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 43

2010 03522 0 04 03624 STA SFTZ ** 2011 03523 1 02 00651 LDA SKNE,1 ** 2012 03524 0 10 03603 JST SHFT ** 2013 03525 0 12 00000 IRS 0 2014 03526 0 01 03532 JMP ALRG 2015 03527 0 12 03622 IRS SFTX 2016 03530 0 01 03476 JMP ALRB 2017 03531 -0 01 03470 JMP* ALRA 2018 * 2019 03532 0 12 03605 ALRG IRS SFT 2020 03533 0 01 03502 JMP ALRD 2021 03534 0416 61 ALRS ALR 15 2022 * 2023 * 2024 * SUBROUTINE T065 ARR 2025 * 2026 03535 000065 OCT 65 TEST NO. 2027 03536 0 000000 ARRA DAC ** ARR TEST 2028 03537 0 02 03535 LDA *-2 LOAD TEST NO. 2029 03540 0 04 00777 STA '777 STORE AT '777 2030 03541 101000 NOP KILL TEST LOCATION 2031 03542 0 02 00455 LDA CNTY 2032 03543 0 04 03622 STA SFTX INITIALIZE TEST COUNT 2033 03544 0 02 03602 ARRB LDA ARRS 2034 03545 0 04 03605 STA SFT MODIFY SHIFT INSTRUCTION 2035 03546 0 02 03770 LDA =-15 2036 03547 0 04 00000 STA 0 SHIFTS COUNTER 2037 03550 0 02 03777 ARRD LDA ='52525 CHECK OF ARR USING 2038 03551 0 04 03623 STA SFTY FLOATING ZERO BIT 2039 03552 000201 IAB 2040 03553 1 02 00673 LDA TSTV,1 ** 2041 03554 0 04 03624 STA SFTZ ** 2042 03555 0 02 00673 LDA TSTV ** 2043 03556 0 10 03603 JST SHFT ** 2044 03557 0 02 03777 LDA ='52525 CHECK OF ARR USING 2045 03560 000201 IAB FLOATING ONE BIT 2046 03561 1 02 00631 LDA SKND,1 ** 2047 03562 0 04 03624 STA SFTZ ** 2048 03563 0 02 00631 LDA SKND ** 2049 03564 0 10 03603 JST SHFT ** 2050 03565 0 02 03777 LDA ='52525 CHECK AT ARR USING 2051 03566 000201 IAB ALTERNTING PATTERN WITH 2052 03567 1 02 00651 LDA SKNE,1 A ONE MARKER BIT 2053 03570 0 04 03624 STA SFTZ ** 2054 03571 0 02 00651 LDA SKNE ** 2055 03572 0 10 03603 JST SHFT ** 2056 03573 0 12 00000 IRS 0 INCREMENT INNER LOOP COUNTER 2057 03574 0 01 03600 JMP ARRG AND GO SET NEXT TRY 2058 03575 0 12 03622 IRS SFTX 2059 03576 0 01 03544 JMP ARRB RETURN FOR NEXT PASS
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 44

2060 03577 -0 01 03536 JMP* ARRA NO ERRORS EXIT 2061 * 2062 03600 0 12 03605 ARRG IRS SFT INCREMENT SHIFT INSTRUCTION 2063 03601 0 01 03550 JMP ARRD AND RETURN FOR NEXT PASS 2064 03602 0406 61 ARRS ARR 15 2065 * 2066 * 2067 * 2068 03603 0 000000 SHFT DAC ** SHIFT AND CHECK ROUTINE 2069 03604 0 04 03625 STA SFXY STORE WORD 2070 03605 0 00 00000 SFT *** PROPER SHIFT INSERTED 2071 03606 0 04 03620 STA SHFQ STORE WORD AFTER SHIFT 2072 03607 0 05 03624 ERA SFTZ COMPARE WITH ORIGINAL WORD 2073 03610 100040 SZE 2074 03611 000000 HLT ERROR - DID NOT CHECK. 2075 03612 000201 IAB 2076 03613 0 04 03621 STA SHFR 2077 03614 0 05 03623 ERA SFTY COMPARE THE 2ND WORD 2078 03615 100040 SZE 2079 03616 000000 HLT ERROR 2080 03617 -0 01 03603 JMP* SHFT 2081 * 2082 03620 000000 SHFQ BSZ 1 2083 03621 000000 SHFR BSZ 1 2084 03622 000000 SFTX BSZ 1 2085 03623 000000 SFTY BSZ 1 2086 03624 000000 SFTZ BSZ 1 2087 03625 000000 SFXY BSZ 1 2088 * 2089 * SUBROUTINE T066 LRS 2090 * THIS ROUTINE CHECKS THE PROPER OPERATION 2091 * OF THE LRS INSTRUCTION USING POSITIVE AND 2092 * NEGATIVE DATA. THE DATA IS ALTERNATING BITS AND 2093 * FLOATING ZERO AND ONE PATTERNS 2094 * 2095 03626 000066 OCT 66 TEST NO. 2096 03627 0 000000 LRSA DAC ** LRS TEST 2097 03630 0 02 03626 LDA *-2 2098 03631 0 04 00777 STA '777 STORE TEST NO. AT '777 2099 03632 101000 NOP KILL TEST LOCATION 2100 03633 0 02 00455 LDA CNTY 2101 03634 0 04 03622 STA SFTX INITIALIZE TEST COUNT 2102 03635 0 02 03770 LRSB LDA =-15 2103 03636 0 04 00000 STA 0 SHIFTS COUNTER 2104 03637 0 02 03724 LDA LRSS STORE LRS INST 2105 03640 0 04 03605 STA SFT IN THE SHIFT ROUT. 2106 03641 0 02 03774 LDA =-1 STORE CORRECT 2107 03642 0 04 03624 STA SFTZ A REG AND B REG 2108 03643 0 04 03623 STA SFTY VALUES 2109 03644 0 02 03767 LDA ='100000
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 45

2110 03645 000201 IAB 2111 03646 0 02 03725 LDA TSTA LOAD TEST WORD '100000 2112 03647 0 10 03603 JST SHFT GO TO SHIFT ROUT 2113 03650 140040 CRA 2114 03651 0 04 03624 STA SFTZ 2115 03652 0 04 03623 STA SFTY 2116 03653 0 02 03772 LDA ='77777 CHANGE PATTERN 2117 03654 000201 IAB 2118 03655 0 02 03772 LDA ='77777 2119 03656 0 10 03603 JST SHFT TEST ROUTINE 2120 03657 0 02 03774 LRSH LDA =-1 2121 03660 0 04 03624 STA SFTZ 2122 03661 1 02 00672 LDA TSTB,1 2123 03662 0 04 03623 STA SFTY 2124 03663 0 02 03767 LDA ='100000 2125 03664 000201 IAB 2126 03665 0 02 00652 LDA TSTX PATTERN '137777 2127 03666 0 10 03603 JST SHFT GO AND TEST 2128 03667 1 02 00713 LDA TSTC,1 2129 03670 0 04 03623 STA SFTY 2130 03671 140040 CRA 2131 03672 0 04 03624 STA SFTZ 2132 03673 000201 IAB 2133 03674 0 02 00673 LDA TSTV GET PATTERN '7777 2134 03675 0 10 03603 JST SHFT GO TO TEST ROUT 2135 03676 1 02 00734 LDA TSTD,1 2136 03677 0 04 03623 STA SFTY 2137 03700 0 02 03774 LDA =-1 2138 03701 0 04 03624 STA SFTZ 2139 03702 0 02 03767 LDA ='100000 2140 03703 000201 IAB 2141 03704 0 02 00714 LDA TSTU PATTERN '125252 2142 03705 0 10 03603 JST SHFT TEST ROUT 2143 03706 1 02 00755 LDA TSTE,1 2144 03707 0 04 03623 STA SFTY 2145 03710 140040 CRA 2146 03711 0 04 03624 STA SFTZ 2147 03712 000201 IAB 2148 03713 0 02 00735 LDA TSTR LOAD PATTERN '52525 2149 03714 0 10 03603 JST SHFT TEST ROUT. 2150 03715 0 12 00000 IRS 0 ALL SHIFTS CHECKED 2151 03716 0 01 03722 JMP LRSG NO, CHANGE SHIFT COUNT 2152 03717 0 12 03622 IRS SFTX ARE WE FINISHED 2153 03720 0 01 03635 JMP LRSB NO, TEST MORE 2154 03721 -0 01 03627 JMP* LRSA 2155 * 2156 03722 0 12 03605 LRSG IRS SFT 2157 03723 0 01 03657 JMP LRSH 2158 * 2159 03724 0401 42 LRSS LRS 30
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 46

2160 03725 100000 TSTA OCT 100000 2161 * 2162 * 2163 * POWER FAILURE RUPT SET UP ROUTINE 2164 * 2165 03726 0 000000 PFIS DAC ** 2166 03727 0 02 03744 LDA PFIB LOAD DAC OF PFI RUPT ROUT 2167 03730 0 04 00060 STA '60 STORE AT '60 2168 03731 0 02 03752 LDA PFID GET DAC OF RESTART ROUT 2169 03732 0 04 00052 STA '52 STORE AT '52 2170 03733 0 02 03766 LDA ='101000 2171 03734 0 04 03001 STA TS03+1 2172 03735 0 02 03774 LDA =-1 TEST IF CP IS 716 2173 03736 0 04 00002 STA 2 STORE IN B-REG 2174 03737 0 12 00002 IRS 2 MUST SKIP IF CP IS 716 2175 03740 -0 01 03726 JMP* PFIS NOT 716, RETURN 2176 03741 0 02 03221 LDA KEY2 CP IS 716, MODIFY KEY1 INSTRUCTION 2177 03742 0 04 03174 STA KEY1 2178 03743 -0 01 03726 JMP* PFIS RETURN 2179 * 2180 03744 0 003745 PFIB DAC *+1 2181 03745 0 000000 DAC ** PF RUPT ENTRY 2182 03746 0 02 03751 LDA PFIC JMP* '52 2183 03747 0 04 00000 STA 0 2184 03750 000000 HLT 2185 * 2186 03751 -0 01 00052 PFIC JMP* '52 DUMMY INSTR. 2187 * 2188 03752 0 003753 PFID DAC *+1 2189 03753 -0 10 00773 JST* DLAY 1.5 SECOND DELAY FOR ASR TO COME UP 2190 03754 0 02 03757 LDA DPFM 2191 03755 0 10 00402 JST TYPE 2192 03756 0 01 00162 JMP STR2 2193 * 2194 03757 0 003760 DPFM DAC *+1 2195 03760 177773 DEC -5 2196 03761 106612 OCT 106612 2197 03762 150306 BCI 4,PFI/ARS 03763 144657 03764 140722 03765 151640 2198 * 2199 * 2200 03766 101000 FIN 03767 100000 03770 177761 03771 177577 03772 077777 03773 157777 03774 177777
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 47

03775 177600 03776 000007 03777 052525 2201 * 2202 * 2203 * 2204 * 2205 * 2206 * 2207 ORG '4000 2208 * 2209 04000 0 000000 TS04 DAC ** SECTOR 4 TESTS 2210 04001 101000 NOP 2211 04002 0 10 04013 JST LLSA '67 - LLS INST TEST 2212 04003 0 10 04070 JST LLLA '70 - LLL 2213 04004 0 10 04170 JST LRLA '71 - LRL 2214 04005 0 10 04253 JST LLRA '72 - LLR 2215 04006 0 10 04323 JST LRRA '73 - LRR 2216 04007 0 10 04416 JST SFTA '74 - GEN. SHIFTS 2217 04010 101000 NOP 2218 04011 -0 01 04000 JMP* TS04 RETURN 2219 * 2220 * 2221 * SUBROUTINE TO67 LLS 2222 * THIS ROUTINE CHECKS THE PROPER OPERATION OF THE 2223 * LLS INSTRUCTION USING POSITIVE AND NEGATIVE DATA. 2224 * THE DATA IS ALTERNATING BITS, ZEROS AND ONES 2225 * PATTERNS. 2226 * 2227 04012 000067 OCT 67 TEST NO. 2228 04013 0 000000 LLSA DAC ** LLS TEST 2229 04014 0 02 04012 LDA *-2 2230 04015 0 04 00777 STA '777 STORE TEST NO. AT '777 2231 04016 101000 NOP KILL TEST LOCATION 2232 04017 0 02 00455 LDA CNTY 2233 04020 0 04 04407 STA SXTX INITIALIZE TEST COUNT 2234 04021 0 02 04066 LLSB LDA LLSS STORE LLS INST 2235 04022 0 04 04374 STA SFTT IN THE SHIFT ROUTINE 2236 04023 0 02 04770 LDA =-15 INITIALIZE 2237 04024 0 04 00000 STA 0 SHIFT COUNTER FOR 15 SHIFTS 2238 04025 1 02 04634 LLSC LDA SKNH,1 TEST LLS INST WITH 2239 04026 0 04 04414 STA SFZZ ALL ONES IN A-REG 2240 04027 1 02 04614 LDA SKNG,1 AND ZEROS IN B-REG 2241 04030 0 04 04413 STA SFYY 2242 04031 0 02 04614 LDA SKNG '77777 2243 04032 000201 IAB POSITIVE SIGN IN B-REG 2244 04033 140040 CRA 2245 04034 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2246 04035 1 02 00631 LDA SKND,1
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 48

2247 04036 0 03 04767 ANA =1 2248 04037 0 04 04414 STA SFZZ 2249 04040 1 02 04654 LDA SKNJ,1 2250 04041 0 04 04413 STA SFYY 2251 04042 0 02 04654 LDA SKNJ '100001 2252 04043 000201 IAB WITH NEGATIVE SIGN IN B-REG 2253 04044 140040 CRA 2254 04045 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2255 04046 1 02 00551 LDA SKNA,1 2256 04047 0 03 04614 ANA SKNG 2257 04050 0 04 04413 STA SFYY ALTERNATE ONES AND 2258 04051 1 02 04674 LDA SKNK,1 ZEROS 2259 04052 0 04 04414 STA SFZZ 2260 04053 0 02 00735 LDA TSTR '52525 2261 04054 000201 IAB ALTERNATE BITS IN B REG 2262 04055 140040 CRA 2263 04056 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2264 04057 0 12 00000 IRS 0 DID WE USE ALL SHIFTS 2265 04060 0 01 04064 JMP LLSG NO, MODIFY NO. OF SHIFTS 2266 04061 0 12 04407 IRS SXTX ARE WE DONE 2267 04062 0 01 04021 JMP LLSB NO, TEST MOVE 2268 04063 -0 01 04013 JMP* LLSA RETURN 2269 * 2270 04064 0 12 04374 LLSG IRS SFTT MODIFY NO. OF SHIFTS 2271 04065 0 01 04025 JMP LLSC 2272 * 2273 04066 0411 61 LLSS LLS 15 2274 * 2275 * 2276 * SUBROUTINE T070 LLL 2277 * 2278 04067 000070 OCT 70 TEST NO 2279 04070 0 000000 LLLA DAC ** LLL TEST 2280 04071 0 02 04067 LDA *-2 2281 04072 0 04 00777 STA '777 STORE TEST NO AT '777 2282 04073 101000 NOP KILL TEST LOCATION 2283 04074 140600 SCB SET C BIT 2284 04075 0 02 04767 LDA =1 2285 04076 000201 IAB INTERCHANGE A AND B 2286 04077 0410 41 LLL 31 2287 04100 100001 SRC C BIT MUST BE RESET 2288 04101 000000 HLT ERROR 2289 04102 101400 SMI A=100000 2290 04103 000000 HLT ERROR 2291 04104 0 02 04767 LDA =1 2292 04105 000201 IAB INTERCHANGE A AND B 2293 04106 0410 40 LLL 32 C BIT MUST BE SET, A=0 2294 04107 101001 SSC 2295 04110 000000 HLT ERROR 2296 04111 100040 SZE
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 49

2297 04112 000000 HLT ERROR 2298 04113 0 02 04767 LDA =1 2299 04114 000201 IAB 2300 04115 0410 37 LLL 33 C=0, A=0 2301 04116 100001 SRC 2302 04117 000000 HLT ERROR 2303 04120 100040 SZE 2304 04121 000000 HLT ERROR 2305 04122 0 02 00455 LDA CNTY 2306 04123 0 04 04407 STA SXTX INITIALIZE TEST COUNT 2307 04124 0 02 04166 LLLB LDA LLLS STORE LLL INST 2308 04125 0 04 04374 STA SFTT IN THE SHIFT ROUTINE 2309 04126 0 02 04770 LDA =-15 INITIALIZE SHIFT 2310 04127 0 04 00000 STA 0 COUNTER FOR 15 SHIFTS 2311 04130 1 02 00571 LLLC LDA SKNB,1 TEST LLL USING AN ALL 2312 04131 0 04 04413 STA SFYY ONES PATTERN IN B REG 2313 04132 1 02 04634 LDA SKNH,1 AND ZEROS IN A REG 2314 04133 0 04 04414 STA SFZZ 2315 04134 0 02 00571 LDA SKNB '177777 2316 04135 000201 IAB B REG ALL ONES 2317 04136 140040 CRA A REG ZEROS 2318 04137 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2319 04140 1 02 00551 LDA SKNA,1 TEST LLL USING AN 2320 04141 0 04 04413 STA SFYY ALTERNATING PATTERN 2321 04142 1 02 04675 LDA SKNK+1,1 2322 04143 0 04 04414 STA SFZZ 2323 04144 0 02 00551 LDA SKNA '52525 2324 04145 000201 IAB ALTERNATE BITS IN B REG 2325 04146 140040 CRA ZEROS IN A REG 2326 04147 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2327 04150 1 02 00611 LDA SKNC,1 2328 04151 0 04 04413 STA SFYY 2329 04152 0 02 00611 LDA SKNC =1 2330 04153 000201 IAB FLOATING 1 BIT IN B REG 2331 04154 140040 CRA ZERO IN A REG 2332 04155 0 04 04414 STA SFZZ 2333 04156 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2334 04157 0 12 00000 IRS 0 USED ALL SHIFTS 2335 04160 0 01 04164 JMP LLLG NO, MODIFY AND DO SOME MORE 2336 04161 0 12 04407 IRS SXTX ARE WE DONE 2337 04162 0 01 04124 JMP LLLB NO, TEST MORE 2338 04163 -0 01 04070 JMP* LLLA RETURN 2339 * 2340 04164 0 12 04374 LLLG IRS SFTT MODIFY SHIFTS 2341 04165 0 01 04130 JMP LLLC 2342 * 2343 04166 0410 61 LLLS LLL 15 2344 * 2345 * 2346 * SUBROUTINE T071 LRL
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 50

2347 * 2348 04167 000071 OCT 71 TEST NO. 2349 04170 0 000000 LRLA DAC ** LRL TEST 2350 04171 0 02 04167 LDA *-2 STORE TEST NO. 2351 04172 0 04 00777 STA '777 AT '777 2352 04173 101000 NOP KILL TEST LOCATION 2353 04174 0 02 00455 LDA CNTY 2354 04175 0 04 04407 STA SXTX INITIALIZE TEST COUNT 2355 04176 0 02 04251 LRLB LDA LRLS STORE LRL INST 2356 04177 0 04 04374 STA SFTT AT SHIFT ROUTINE 2357 04200 0 02 04770 LDA =-15 INITIALIZE SHIFT 2358 04201 0 04 00000 STA 0 COUNTER FOR 15 SHIFTS 2359 04202 1 02 00714 LRLC LDA TSTU,1 TEST LRL INST WITH 2360 04203 0 04 04414 STA SFZZ ALL ONES IN A REG 2361 04204 140401 CMA AND ZEROS IN B REG 2362 04205 0 04 04413 STA SFYY 2363 04206 140040 CRA 2364 04207 000201 IAB ZEROS IN B REG 2365 04210 0 02 00571 LDA SKNB '177777 2366 04211 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2367 04212 1 02 00755 LDA TSTE,1 2368 04213 0 04 04414 STA SFZZ 2369 04214 1 02 04714 LDA SKNL,1 2370 04215 0 04 04413 STA SFYY 2371 04216 140040 CRA 2372 04217 000201 IAB ZEROS IN B REG 2373 04220 0 02 00735 LDA TSTR '52525 - ALTERNATE BITS IN A REG 2374 04221 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2375 04222 1 02 00734 LDA TSTD,1 2376 04223 0 04 04413 STA SFYY 2377 04224 1 02 00713 LDA TSTC,1 2378 04225 0 04 04414 STA SFZZ 2379 04226 0 02 00714 LDA TSTU '125252 2380 04227 000201 IAB ALTERNATE BITS IN B REG 2381 04230 0 02 00673 LDA TSTV '77777 IN A REG 2382 04231 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2383 04232 1 02 00673 LDA TSTV,1 2384 04233 0 04 04413 STA SFYY 2385 04234 0 02 00673 LDA TSTV '7777 IN A REG 2386 04235 000201 IAB '77777 IN B REG 2387 04236 1 02 00713 LDA TSTC,1 2388 04237 0 04 04414 STA SFZZ 2389 04240 0 02 00673 LDA TSTV 2390 04241 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2391 04242 0 12 00000 IRS 0 USED ALL SHIFTS 2392 04243 0 01 04247 JMP LRLG NO, MODIFY AND TEST AGAIN 2393 04244 0 12 04407 IRS SXTX ARE WE FINISHED 2394 04245 0 01 04176 JMP LRLB NO, TEST MORE 2395 04246 -0 01 04170 JMP* LRLA RETURN 2396 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 51

2397 04247 0 12 04374 LRLG IRS SFTT MODIFY SHIFT COUNT 2398 04250 0 01 04202 JMP LRLC 2399 * 2400 04251 0400 61 LRLS LRL 15 2401 * 2402 * 2403 * SUBROUTINE T072 LLR 2404 * 2405 04252 000072 OCT 72 TEST NO. 2406 04253 0 000000 LLRA DAC ** LLR TEST 2407 04254 0 02 04252 LDA *-2 STORE TEST NO. 2408 04255 0 04 00777 STA '777 AT '777. 2409 04256 101000 NOP KILL TEST LOCATION 2410 04257 0 02 00455 LDA CNTY 2411 04260 0 04 04407 STA SXTX INITIALIZE TEST COUNT 2412 04261 0 02 04321 LLRB LDA LLRS STORE LLR INST 2413 04262 0 04 04374 STA SFTT IN THE SHIFT ROUTINE 2414 04263 0 02 04770 LDA =-15 INITIALIZE SHIFT 2415 04264 0 04 00000 STA 0 COUNT TO 15 2416 04265 0 02 00673 LLRC LDA TSTV TEST LLR INST 2417 04266 0 04 04414 STA SFZZ USING FLOATING ZERO BIT 2418 04267 0 04 04413 STA SFYY 2419 04270 1 02 00673 LDA TSTV,1 ** 2420 04271 000201 IAB ** 2421 04272 1 02 00673 LDA TSTV,1 ** 2422 04273 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2423 04274 0 02 00631 LDA SKND TEST LLR USING 2424 04275 0 04 04414 STA SFZZ FLOATING ONE BIT 2425 04276 0 04 04413 STA SFYY 2426 04277 1 02 00631 LDA SKND,1 ** 2427 04300 000201 IAB ** 2428 04301 1 02 00631 LDA SKND,1 ** 2429 04302 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2430 04303 0 02 00651 LDA SKNE TEST LLR USING 2431 04304 0 04 04414 STA SFZZ AN ALTERNATING PATTERN 2432 04305 0 04 04413 STA SFYY WITH A ONE BIT MARKER 2433 04306 1 02 00651 LDA SKNE,1 ** 2434 04307 000201 IAB ** 2435 04310 1 02 00651 LDA SKNE,1 ** 2436 04311 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2437 04312 0 12 00000 IRS 0 USED ALL SHIFTS 2438 04313 0 01 04317 JMP LLRG NO, MODIFY AND TEST AGAIN 2439 04314 0 12 04407 IRS SXTX ARE WE DONE 2440 04315 0 01 04261 JMP LLRB NO, TEST MORE 2441 04316 -0 01 04253 JMP* LLRA 2442 * 2443 04317 0 12 04374 LLRG IRS SFTT 2444 04320 0 01 04265 JMP LLRC 2445 * 2446 04321 0412 61 LLRS LLR 15
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 52

2447 * 2448 * 2449 * 2450 * SUBROUTINE T073 LRR 2451 * 2452 04322 000073 OCT 73 TEST NO. 2453 04323 0 000000 LRRA DAC ** LRR TEST 2454 04324 0 02 04322 LDA *-2 STORE TEST NO. 2455 04325 0 04 00777 STA '777 AT '777 2456 04326 101000 NOP KILL TEST LOCATION 2457 04327 0 02 00455 LDA CNTY 2458 04330 0 04 04407 STA SXTX INITIALIZE TEST COUNT 2459 04331 0 02 04371 LRRB LDA LRRS STORE LRR INST 2460 04332 0 04 04374 STA SFTT IN THE SHIFT ROUTINE 2461 04333 0 02 04770 LDA =-15 INITIALIZE SHIFT 2462 04334 0 04 00000 STA 0 COUNT TO 15 2463 04335 1 02 00673 LRRC LDA TSTV,1 TEST LRR INST USING 2464 04336 0 04 04414 STA SFZZ A FLOATING ZERO PATTERN 2465 04337 0 04 04413 STA SFYY 2466 04340 0 02 00673 LDA TSTV 2467 04341 000201 IAB '77777 IN B REG 2468 04342 0 02 00673 LDA TSTV '77777 IN A REG 2469 04343 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2470 04344 1 02 00631 LDA SKND,1 TEST WITH FLOATING ONE PATTERN 2471 04345 0 04 04414 STA SFZZ 2472 04346 0 04 04413 STA SFYY 2473 04347 0 02 00631 LDA SKND 2474 04350 000201 IAB '100000 IN B REG 2475 04351 0 02 00631 LDA SKND '100000 IN A REG 2476 04352 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2477 04353 1 02 00651 LDA SKNE,1 2478 04354 0 04 04414 STA SFZZ 2479 04355 0 04 04413 STA SFYY 2480 04356 0 02 00651 LDA SKNE '125252 PATTERN 2481 04357 000201 IAB IN B REG 2482 04360 0 02 00651 LDA SKNE '125252 IN A REG 2483 04361 0 10 04372 JST SHXT TO SHIFT AND CHECK ROUTINE 2484 04362 0 12 00000 IRS 0 USED ALL SHIFTS 2485 04363 0 01 04367 JMP LRRG NO, MODIFY AND TEST AGAIN 2486 04364 0 12 04407 IRS SXTX ARE WE DONE 2487 04365 0 01 04331 JMP LRRB NO, TEST MORE 2488 04366 -0 01 04323 JMP* LRRA RETURN 2489 * 2490 04367 0 12 04374 LRRG IRS SFTT MODIFY SHIFT COUNT 2491 04370 0 01 04335 JMP LRRC 2492 * 2493 04371 0402 61 LRRS LRR 15 2494 * 2495 * 2496 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 53

2497 04372 0 000000 SHXT DAC ** SHIFT ROUTINE 2498 04373 0 04 04412 STA SFXX 2499 04374 0 00 00000 SFTT *** SHIFT INSTRUCTION TO BE INSERTED 2500 04375 0 04 04410 STA SFQQ A REG AFTER SHIFTS 2501 04376 0 05 04414 ERA SFZZ SHOULD COMPARE EXACTLY 2502 04377 100040 SZE 2503 04400 000000 HLT ERROR 2504 04401 000201 IAB 2505 04402 0 04 04411 STA SFRR B REG AFTER SHIFTS 2506 04403 0 05 04413 ERA SFYY SHOULD COMPARE EXACTLY 2507 04404 100040 SZE 2508 04405 000000 HLT ERROR 2509 04406 -0 01 04372 JMP* SHXT 2510 * 2511 04407 000000 SXTX BSZ 1 2512 04410 000000 SFQQ BSZ 1 2513 04411 000000 SFRR BSZ 1 2514 04412 000000 SFXX BSZ 1 2515 04413 000000 SFYY BSZ 1 2516 04414 000000 SFZZ BSZ 1 2517 * 2518 * 2519 * 2520 * SUBROUTINE T074 SHIFTS GENERAL 2521 * 2522 04415 000074 OCT 74 TEST NO. 2523 04416 0 000000 SFTA DAC ** 2524 04417 0 02 04415 LDA *-2 STORE TEST NO. 2525 04420 0 04 00777 STA '777 AT '777 2526 04421 101000 NOP KILL TEST LOCATION 2527 04422 0 02 00455 LDA CNTY 2528 04423 0 04 04407 STA SXTX INITIALIZE TEST COUNT 2529 04424 140040 CRA 2530 04425 0 04 00000 STA 0 2531 04426 0 02 04567 LDA RRST 2532 04427 0 04 04570 STA INDR 2533 04430 -0 02 04570 LDA* INDR 2534 04431 0 04 04572 STA SFFX 2535 04432 0 12 04570 STTL IRS INDR 2536 04433 -0 02 04570 LDA* INDR 2537 04434 0 04 04571 STA SFFY 2538 04435 0 02 04766 LDA =-11 2539 04436 0 04 00000 STA 0 2540 04437 0 12 00000 STTJ IRS 0 2541 04440 0 01 04442 JMP *+2 2542 04441 0 01 04545 JMP STTK 2543 04442 1 01 04455 JMP JPTB,1 2544 04443 0 01 04456 JMP STTA 2545 04444 0 01 04456 JMP STTA 2546 04445 0 01 04470 JMP STTC
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 54

2547 04446 0 01 04475 JMP STTD 2548 04447 0 01 04463 JMP STTB 2549 04450 0 01 04456 JMP STTA 2550 04451 0 01 04463 JMP STTB 2551 04452 0 01 04456 JMP STTA 2552 04453 0 01 04502 JMP STTE 2553 04454 0 01 04517 JMP STTF 2554 04455 0 00 00000 JPTB PZE 2555 04456 0 02 04571 STTA LDA SFFY 2556 04457 0 04 04414 STA SFZZ 2557 04460 0 02 04572 LDA SFFX 2558 04461 0 04 04413 STA SFYY 2559 04462 0 01 04536 JMP STTH 2560 04463 0 02 04571 STTB LDA SFFY 2561 04464 0 04 04413 STA SFYY 2562 04465 0 02 04572 LDA SFFX 2563 04466 0 04 04414 STA SFZZ 2564 04467 0 01 04536 JMP STTH 2565 04470 140040 STTC CRA 2566 04471 0 04 04413 STA SFYY 2567 04472 0 02 04572 LDA SFFX 2568 04473 0 04 04414 STA SFZZ 2569 04474 0 01 04536 JMP STTH 2570 04475 140040 STTD CRA 2571 04476 0 04 04414 STA SFZZ 2572 04477 0 02 04571 LDA SFFY 2573 04500 0 04 04413 STA SFYY 2574 04501 0 01 04536 JMP STTH 2575 04502 0 02 04572 STTE LDA SFFX 2576 04503 0 03 04765 ANA ='100000 2577 04504 0 04 04413 STA SFYY 2578 04505 0 02 04572 LDA SFFX 2579 04506 0 03 04764 ANA ='77777 2580 04507 0 04 04414 STA SFZZ 2581 04510 0 02 04571 LDA SFFY 2582 04511 101100 SLN 2583 04512 0 01 04536 JMP STTH 2584 04513 0 02 04414 LDA SFZZ 2585 04514 140500 SSM 2586 04515 0 04 04414 STA SFZZ 2587 04516 0 01 04536 JMP STTH 2588 04517 0 02 04571 STTF LDA SFFY 2589 04520 0 03 04764 ANA ='77777 2590 04521 0 04 04413 STA SFYY 2591 04522 0 02 04572 LDA SFFX 2592 04523 0 03 04765 ANA ='100000 2593 04524 0 05 04413 ERA SFYY 2594 04525 0 04 04413 STA SFYY 2595 04526 0 02 04571 LDA SFFY 2596 04527 100400 SPL
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 55

2597 04530 0 01 04534 JMP STTG 2598 04531 140040 CRA 2599 04532 0 04 04414 STA SFZZ 2600 04533 0 01 04536 JMP STTH 2601 04534 0 02 04763 STTG LDA =-'1 2602 04535 0 04 04414 STA SFZZ 2603 04536 0 02 04572 STTH LDA SFFX 2604 04537 000201 IAB 2605 04540 1 02 04566 LDA SFTB,1 2606 04541 0 04 04374 STA SFTT 2607 04542 0 02 04571 LDA SFFY 2608 04543 0 10 04372 JST SHXT 2609 04544 0 01 04437 JMP STTJ 2610 04545 0 02 04570 STTK LDA INDR 2611 04546 0 05 04573 ERA NDTS 2612 04547 101040 SNZ 2613 04550 -0 01 04416 JMP* SFTA 2614 04551 0 02 04571 LDA SFFY 2615 04552 0 04 04572 STA SFFX 2616 04553 0 01 04432 JMP STTL 2617 * 2618 04554 0416 60 ALR 16 2619 04555 0406 60 ARR 16 2620 04556 0410 60 LLL 16 2621 04557 0400 60 LRL 16 2622 04560 0412 60 LLR 16 2623 04561 0412 40 LLR 32 2624 04562 0402 60 LRR 16 2625 04563 0402 40 LRR 32 2626 04564 0411 61 LLS 15 2627 04565 0401 61 LRS 15 2628 04566 0 00 00000 SFTB PZE 2629 04567 001000 RRST OCT 1000 2630 04570 0 00 00000 INDR PZE 2631 04571 0 00 00000 SFFY PZE 2632 04572 0 00 00000 SFFX PZE 2633 04573 002000 NDTS OCT 2000 2634 04574 125252 IXC1 OCT 125252 2635 * 2636 * 2637 04575 000000 OCT 0 2638 04576 040000 OCT 40000 2639 04577 060000 OCT 60000 2640 04600 070000 OCT 70000 2641 04601 074000 OCT 74000 2642 04602 076000 OCT 76000 2643 04603 077000 OCT 77000 2644 04604 077400 OCT 77400 2645 04605 077600 OCT 77600 2646 04606 077700 OCT 77700
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 56

2647 04607 077740 OCT 77740 2648 04610 077760 OCT 77760 2649 04611 077770 OCT 77770 2650 04612 077774 OCT 77774 2651 04613 077776 OCT 77776 2652 04614 077777 SKNG OCT 77777 2653 04615 077777 OCT 77777 2654 04616 037777 OCT 37777 2655 04617 017777 OCT 17777 2656 04620 007777 OCT 7777 2657 04621 003777 OCT 3777 2658 04622 001777 OCT 1777 2659 04623 000777 OCT 777 2660 04624 000377 OCT 377 2661 04625 000177 OCT 177 2662 04626 000077 OCT 77 2663 04627 000037 OCT 37 2664 04630 000017 OCT 17 2665 04631 000007 OCT 7 2666 04632 000003 OCT 3 2667 04633 000001 OCT 1 2668 04634 000000 SKNH OCT 0 2669 04635 100000 OCT 100000 2670 04636 140000 OCT 140000 2671 04637 120000 OCT 120000 2672 04640 110000 OCT 110000 2673 04641 104000 OCT 104000 2674 04642 102000 OCT 102000 2675 04643 101000 OCT 101000 2676 04644 100400 OCT 100400 2677 04645 100200 OCT 100200 2678 04646 100100 OCT 100100 2679 04647 100040 OCT 100040 2680 04650 100020 OCT 100020 2681 04651 100010 OCT 100010 2682 04652 100004 OCT 100004 2683 04653 100002 OCT 100002 2684 04654 100001 SKNJ OCT 100001 2685 04655 052525 OCT 52525 2686 04656 025252 OCT 25252 2687 04657 012525 OCT 12525 2688 04660 005252 OCT 5252 2689 04661 002525 OCT 2525 2690 04662 001252 OCT 1252 2691 04663 000525 OCT 525 2692 04664 000252 OCT 252 2693 04665 000125 OCT 125 2694 04666 000052 OCT 52 2695 04667 000025 OCT 25 2696 04670 000012 OCT 12
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 57

2697 04671 000005 OCT 5 2698 04672 000002 OCT 2 2699 04673 000001 OCT 1 2700 04674 000000 SKNK OCT 0 2701 04675 125252 OCT 125252 2702 04676 052524 OCT 52524 2703 04677 125250 OCT 125250 2704 04700 052520 OCT 52520 2705 04701 125240 OCT 125240 2706 04702 052500 OCT 52500 2707 04703 125200 OCT 125200 2708 04704 052400 OCT 52400 2709 04705 125000 OCT 125000 2710 04706 052000 OCT 52000 2711 04707 124000 OCT 124000 2712 04710 050000 OCT 50000 2713 04711 120000 OCT 120000 2714 04712 040000 OCT 40000 2715 04713 100000 OCT 100000 2716 04714 000000 SKNL OCT 0 2717 * 2718 * 2719 * 2720 * MOVE WORDS ROUTINE 2721 * 2722 04715 0 000000 MOVE DAC ** ENTRY POINT 2723 04716 -0 02 04715 LDA* *-1 GET NO. OF WORDS TO BE MOVED 2724 04717 101000 NOP 2725 04720 140407 TCA 2726 04721 0 04 00461 STA TMP1 WORD COUNTER 2727 04722 0 12 04715 IRS MOVE 2728 04723 -0 02 04715 LDA* MOVE GET 'FROM' ADDRESS 2729 04724 0 04 00462 STA TMP1+1 2730 04725 0 12 04715 IRS MOVE 2731 04726 -0 02 04715 LDA* MOVE GET 'TO' ADDRESS 2732 04727 0 04 00463 STA TMP1+2 2733 04730 0 12 04715 IRS MOVE BUMP FOR RETURN 2734 04731 -0 02 00462 LDA* TMP1+1 GET THE WORD FROM 'FROM' ADDRESS 2735 04732 -0 04 00463 STA* TMP1+2 STORE IT AT THE 'TO' ADDRESS 2736 04733 0 12 00462 IRS TMP1+1 MODIFY POINTER 2737 04734 0 12 00463 IRS TMP1+2 MODIFY POINTER 2738 04735 0 12 00461 IRS TMP1 ARE WE DONE 2739 04736 0 01 04731 JMP *-5 NO, MOVE MORE WORDS 2740 04737 101000 NOP 2741 04740 -0 01 04715 JMP* MOVE RETURN 2742 * 2743 04741 0 004742 MMSZ DAC *+1 2744 04742 120264 BCI 8, 4 8121620242832 04743 120270 04744 130662
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 58

04745 130666 04746 131260 04747 131264 04750 131270 04751 131662 2745 04752 0 004753 MES5 DAC *+1 2746 04753 177771 DEC -7 2747 04754 120240 BCI 6, MMSZ **K 04755 120315 04756 146723 04757 155240 04760 125252 04761 145640 2748 04762 106612 OCT 106612 2749 * 2750 04763 177777 FIN 04764 077777 04765 100000 04766 177765 04767 000001 04770 177761 2751 * 2752 * 2753 * 2754 ORG '5000 2755 * 2756 05000 0 000000 TS05 DAC ** TEST GROUP 5 2757 05001 101000 NOP 2758 05002 0 10 05010 JST IRUP ENB. INH TEST 2759 05003 0 10 05167 JST MPYT S.P. MULTIPLICATION TEST 2760 05004 0 10 05241 JST DIVT S.P. DIVISION TEST 2761 05005 101000 NOP 2762 05006 -0 01 05000 JMP* TS05 RETURN FROM SECTOR TESTS 2763 * 2764 * 2765 * 2766 * 2767 * SUBROUTINE TO16 - INH AND ENB TEST 2768 * 2769 05007 000016 OCT 16 TEST NO. 2770 05010 0 000000 IRUP DAC ** 2771 05011 0 02 05007 LDA *-2 2772 05012 0 04 00777 STA '777 STORE TEST NO. AT '777 2773 05013 101000 NOP 2774 05014 000013 EXA 2775 05015 0 10 05016 JST *+1 2776 05016 0 000000 IRP1 DAC ** 2777 05017 0 02 05016 LDA *-1 FLUSH ANY PI RUPTS 2778 05020 000011 DXA
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 59

2779 05021 0 01 05022 JMP *+1 2780 05022 0 06 05772 ADD ='10 2781 05023 0 04 00063 STA '63 2782 05024 000401 ENB 2783 05025 100000 SKP 2784 05026 0 000000 DAC ** PI RUPT ENTRY IF ANY 2785 05027 000011 DXA 2786 05030 0 01 05031 JMP *+1 NORMAL MODE 2787 05031 140040 CRA 2788 05032 74 0020 SMK '20 RESET MASK 2789 05033 0 02 05016 LDA IRP1 2790 05034 0 06 05771 ADD ='25 2791 05035 0 04 00063 STA '63 2792 05036 000401 ENB 2793 05037 101000 NOP 2794 05040 101000 NOP SHOULD BE NO RUPTS WITHOUT MASK 2795 05041 001001 INH 2796 05042 0 01 05045 JMP *+3 2797 * 2798 05043 0 000000 DAC ** RUPT ENTRY I 2799 05044 000000 HLT ERROR - GOT RUPT WITHOUT MASK 2800 * 2801 05045 000013 EXA 2802 05046 0 10 05047 JST *+1 2803 05047 0 000000 DAC ** 2804 05050 0 02 05047 LDA *-1 2805 05051 000011 DXA 2806 05052 0 01 05053 JMP *+1 NORMAL MODE 2807 05053 0 06 05770 ADD ='12 2808 05054 0 04 00063 STA '63 UNEXPECTED RUPTS 2809 05055 0 02 05767 LDA ='40 2810 05056 74 0020 SMK '20 SET THE MASK 2811 05057 101000 NOP 2812 05060 0 01 05063 JMP *+3 JUMP AROUND UNEXPECTED RUPT HALT 2813 * 2814 05061 0 000000 DAC ** GOT UNEXPECTED RUPT 2815 05062 000000 HLT WITHOUT 'ENB' 2816 * 2817 05063 000013 EXA 2818 05064 0 10 05065 JST *+1 2819 05065 0 000000 DAC ** 2820 05066 0 02 05065 LDA *-1 2821 05067 000011 DXA 2822 05070 0 01 05071 JMP *+1 NORMAL MODE 2823 05071 0 06 05766 ADD ='23 2824 05072 0 04 00063 STA '63 SET FOR RUPT 2825 05073 140040 CRA 2826 05074 0 04 05163 STA IENL SET UP IRS TEST LOCATION 2827 05075 0 04 05162 STA ASRB 2828 05076 001001 INH INHIBIT RUPTS
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 60

2829 05077 34 0104 BUST SKS '104 ASR BUSY 2830 05100 0 01 05156 JMP ASNR GO TO WAIT 2831 05101 14 0104 SASO OCP '104 SET ASR IN OUTPUT MODE 2832 05102 34 0104 SKS '104 2833 05103 0 01 05102 JMP *-1 WAIT TILL NOT BUSY 2834 05104 000401 ENB ENABLE INTERRUPTS 2835 05105 0 12 05163 IRS IENL MUST INTERRUPT AFTER IRS 2836 05106 000000 HALT HLT ERROR - RUPT DID NOT OCCUR 2837 05107 0 01 05111 JMP *+2 2838 * 2839 05110 0 000000 DAC ** ENTRY POINT 2840 05111 0 02 05110 LDA *-1 CHECK IF 'RUPT JST' STORED 2841 05112 000011 DXA 2842 05113 0 01 05114 JMP *+1 NORMAL MODE 2843 05114 0 03 05765 ANA ='777 CORRECT ADDRESS 2844 05115 0 04 05164 STA ITMP 2845 05116 0 02 05165 LDA DHLT GET ADDRESS OF HALT 2846 05117 0 03 05765 ANA ='777 2847 05120 0 05 05164 ERA ITMP COMPARE WITH RUPT ADDRESS 2848 05121 100040 SZE MUST SKIP 2849 05122 000000 HLT ERROR - ADDRESSES DID NOT MATCH 2850 05123 0 02 05163 LDA IENL TEST IF IRS WAS COMPLETED 2851 05124 101040 SNZ MUST BE NON-ZERO 2852 05125 000000 HLT ERROR - IRS DID NOT TAKE 2853 05126 000013 EXA EXTEND MODE 2854 05127 0 10 05130 JST *+1 2855 05130 0 000000 DAC ** 2856 05131 0 02 05130 LDA *-1 SET UP FOR 2857 05132 000011 DXA 2858 05133 0 01 05134 JMP *+1 NORMAL MODE 2859 05134 0 06 05764 ADD ='16 2860 05135 0 04 00063 STA '63 2861 05136 14 0004 OCP '4 PUT ASR IN INPUT MODE 2862 05137 14 0104 OCP '104 PUT ASR IN OUTPUT MODE 2863 05140 34 0104 SKS '104 2864 05141 0 01 05140 JMP *-1 WAIT TILL NOT BUSY 2865 05142 000401 ENB ENABLE RUPTS 2866 05143 001001 INH INHIBIT RUPTS 2867 05144 101000 NOP RUPTS SHOULD NOT OCCUR 2868 05145 0 01 05150 JMP *+3 JUMP AROUND ERROR HALT 2869 * 2870 05146 0 000000 DAC ** ERROR RUPT ENTRY 2871 05147 000000 HLT INH NOT EXECUTED 2872 * 2873 05150 140040 CRA 2874 05151 74 0020 SMK '20 RESET MASK 2875 05152 000011 DXA 2876 05153 0 01 05154 JMP *+1 SET NORMAL MODE 2877 05154 101000 NOP 2878 05155 -0 01 05010 JMP* IRUP RETURN
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 61

2879 * 2880 05156 0 12 05162 ASNR IRS ASRB INCREMENT COUNTER 2881 05157 0 01 05077 JMP BUST SEE IF ASR STILL BUSY 2882 05160 000000 HLT ASR NOT READY AFTER 2883 05161 0 01 05101 JMP SASO 250 MILLISECOND DELAY 2884 * 2885 05162 000000 ASRB BSZ 1 2886 05163 000000 IENL BSZ 1 2887 05164 000000 ITMP BSZ 1 2888 05165 0 005106 DHLT DAC HALT 2889 * 2890 * 2891 * 2892 * 2893 * SUBROUTINE T101 2894 * TEST SINGLE PRECISION MULTIPLY CAPABILITY 2895 * 2896 05166 000101 OCT 101 TEST NO. 2897 05167 0 000000 MPYT DAC ** 2898 05170 0 02 05166 LDA *-2 2899 05171 0 04 00777 STA '777 STORE TEST NO. AT '777 2900 05172 101000 NOP 2901 05173 0 02 00455 LDA CNTY 2902 05174 0 04 05237 STA MDCT INITIALIZE TEST COUNT 2903 05175 0 02 05763 LDA ='77555 INITIALIZE THE 2904 05176 0 04 05233 STA X001 FIRST TWO 2905 05177 0 04 05213 STA MPY3 2906 05200 0 02 05762 LDA ='7701 FIELDS 2907 05201 0 04 05234 STA X002 2908 05202 0 04 05205 STA MPY2 2909 05203 0 02 05233 MPY1 LDA X001 2910 05204 0 10 05303 JST MPY GO TO MULTIPLY ROUTINE 2911 05205 0 000000 MPY2 DAC ** SECOND FIELD 2912 05206 0 04 05235 STA Y001 STORE THE 2913 05207 000201 IAB RESULT 2914 05210 0 04 05236 STA Y002 2915 05211 0 02 05234 LDA X002 REVERSE THE MULTIPLIER 2916 05212 0 10 05303 JST MPY AND THE MULTIPLICAND 2917 05213 0 000000 MPY3 DAC ** AND MULTIPLY AGAIN 2918 05214 0 05 05235 ERA Y001 COMPARE WITH PREVIOUS RESULT 2919 05215 100040 SZE 2920 05216 000000 HLT ERROR 2921 05217 000201 IAB GET B REG AND COMPARE 2922 05220 0 05 05236 ERA Y002 2923 05221 100040 SZE 2924 05222 000000 HLT ERROR 2925 05223 0 02 05233 LDA X001 MODIFY THE FIRST FIELD 2926 05224 0 06 05761 ADD =105 2927 05225 0 04 05233 STA X001 2928 05226 0 04 05213 STA MPY3
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 62

2929 05227 0 12 05237 IRS MDCT ARE WE FINISHED 2930 05230 0 01 05203 JMP MPY1 NO, DO NEXT MULTIPLICATION 2931 05231 101000 NOP 2932 05232 -0 01 05167 JMP* MPYT RETURN 2933 * 2934 05233 000000 X001 BSZ 1 2935 05234 000000 X002 BSZ 1 2936 05235 000000 Y001 BSZ 1 2937 05236 000000 Y002 BSZ 1 2938 05237 000000 MDCT BSZ 1 2939 * 2940 * 2941 * 2942 * SUBROUTINE T102 2943 * TEST SINGLE PRECISION DIVIDE CAPABILITY 2944 * 2945 * 2946 05240 000102 OCT 102 TEST NO. 2947 05241 0 000000 DIVT DAC ** 2948 05242 0 02 05240 LDA *-2 2949 05243 0 04 00777 STA '777 STORE TEST NO. AT '777 2950 05244 101000 NOP 2951 05245 0 02 00455 LDA CNTY 2952 05246 0 04 05237 STA MDCT INITIALIZE TEST COUNT 2953 05247 0 02 05760 LDA =30000 INITIALIZE THE 2954 05250 0 04 05233 STA X001 TWO FIELDS 2955 05251 0 04 05262 STA DIV2 2956 05252 0 02 05757 LDA =12345 2957 05253 0 04 05234 STA X002 2958 05254 0 04 05257 STA DIV1+2 2959 * 2960 05255 0 02 05233 DIV1 LDA X001 MULTIPLIER 2961 05256 0 10 05303 JST MPY GO TO MULTIPLY ROUT 2962 05257 0 000000 DAC ** MULTIPLICAND 2963 05260 101000 NOP RESULT IS IN A AND B REGS 2964 05261 0 10 05417 JST DIV DIVIDE ROUTINE 2965 05262 0 000000 DIV2 DAC ** DIVISOR 2966 05263 000000 HLT ERROR HALT 2967 05264 101000 NOP OPTIONAL HALT 2968 05265 0 05 05234 ERA X002 COMPARE OUOTIENT WITH 2ND FIELD 2969 05266 100040 SZE 2970 05267 000000 HLT ERROR IN DIVIDE 2971 05270 000201 IAB TEST REMAINDER 2972 05271 100040 SZE SHOULD BE ZERO 2973 05272 000000 HLT ERROR 2974 05273 0 02 05233 LDA X001 MODIFY THE FIRST FIELD 2975 05274 0 06 05756 ADD =25 2976 05275 0 04 05233 STA X001 2977 05276 0 04 05262 STA DIV2 2978 05277 0 12 05237 IRS MDCT ARE WE FINISHED
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 63

2979 05300 0 01 05255 JMP DIV1 NO, DO THE NEXT DIVISION 2980 05301 101000 NOP 2981 05302 -0 01 05241 JMP* DIVT RETURN 2982 * 2983 * 2984 * 2985 * MULTIPLICATION ROUTINE 2986 * 2987 05303 0 000000 MPY DAC ** ENTRY 2988 05304 101400 SMI CHECK SIGN OF MULTIPLIER 2989 05305 0 01 05317 JMP MPYB POSTIVE 2990 05306 140407 TCA NEGATIVE TWO,S COMPLEMENT 2991 05307 000201 IAB MULTIPLIER IN B REGISTER 2992 05310 -0 02 05303 LDA* MPY LOAD MULTIPLICAND 2993 05311 101400 SMI CHECK SIGN 2994 05312 0 01 05324 JMP MPYC POSTIVE 2995 05313 140407 TCA NEGATIVE TWO,S COMPLEMENT 2996 05314 0 10 05340 MPYA JST MPYS EXIT TO PERFORM MULTIPLICATION 2997 05315 0 12 05303 IRS MPY INCREMENT FOR RETURN 2998 05316 -0 01 05303 JMP* MPY EXIT 2999 * 3000 05317 000201 MPYB IAB PLACE MULTIPLIER IN B REG 3001 05320 -0 02 05303 LDA* MPY 3002 05321 101400 SMI ICHECK SIGN OF MULTIPLICAND 3003 05322 0 01 05314 JMP MPYA MULTIPLICAND PLUS, GO TO MULTIPLY 3004 05323 140407 TCA 3005 05324 0 10 05340 MPYC JST MPYS NEGATIVE-2'S COMPLEMENT RESULT 3006 05325 140200 RCB RESET C BIT 3007 05326 140401 CMA ONE'S COMPLEMENT HI-ORDER 3008 05327 000201 IAB 3009 05330 140407 TCA TWO'S COMPLEMENT LOW ORDER 3010 05331 101040 SNZ IS RESULT ZERO 3011 05332 140600 SCB INSERT 1 FOR CARRY IN 3012 05333 140100 SSP RESET MSB TO ZERO 3013 05334 000201 IAB HI-ORDER TO A, LOW ORDER TO B 3014 05335 141216 ACA 3015 05336 0 12 05303 IRS MPY INCREMENT FOR RETURN 3016 05337 -0 01 05303 JMP* MPY EXIT 3017 * 3018 * MULTIPLICATION SUBROUTINE FOR POSTIVE VALUES 3019 * 3020 05340 0 000000 MPYS DAC ** ENTRANCE 3021 05341 0 04 05403 STA COMM STORE MULTIPLICAND 3022 05342 000201 IAB MULTIPLIER IN A MULTIPLICAND IN B. 3023 05343 0 04 05404 STA COMM+1 STORE MULTIPLIER 3024 05344 0 05 05403 ERA COMM IF NEG. MINUS LARGEST NEGATIVE NUMBER 3025 05345 100400 SPL IF ZERO NORMAL OR BOTH ARE LARGEST NEG NO. 3026 05346 0 01 05375 JMP MLNN LARGEST NEG NO. IS PRESENT. MULT. IN B 3027 05347 000201 IAB TEST MULTIPLICAND FOR LNN, IF NEG 3028 05350 101400 SMI BOTH OPERANDS ARE LNN CK FOR BOTH 1.00000.
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 64

3029 05351 0 01 05353 JMP *+2 3030 05352 0 01 05371 JMP MPYN RESULT WILL BE ZERO LNN*LNN 3031 * IN A 3032 05353 0 02 05404 LDA COMM+1 NORMAL, MULTIPLY OPERANDS LOAD MULTIPLIER 3033 05354 000201 IAB MULTIPLIER IN B 3034 05355 0 02 05755 LDA =-15 3035 05356 0 04 05404 STA COMM+1 LOOP COUNTER 3036 05357 140040 CRA CLEAR A REGISTER 3037 05360 0400 77 LRL 1 SHIFT TO RIGHT 3038 05361 100001 SRC EXAMINE RIGHT MOST BIT 3039 05362 0 06 05403 ADD COMM ADD MULTIPLICAND 3040 05363 0 12 05404 IRS COMM+1 CONTROL LOOP 3041 05364 0 01 05360 JMP *-4 RECYCLE 3042 05365 0400 77 LRL 1 3043 05366 0414 77 LGL 1 PUT 0 IN SIGN ORDER OF A REGISTER 3044 05367 0400 77 LRL 1 MOVE 0 TO SIGN OF B REGISTER 3045 05370 -0 01 05340 JMP* MPYS 3046 05371 140040 MPYN CRA RETURN ZERO RESULT 3047 05372 000201 IAB ZERO IN B 3048 05373 0 02 05403 LDA COMM -1 IN A 3049 05374 0 01 05315 JMP MPYA+1 RESULT CANNOT BE REPRESENTED ABORT WITH -1. 3050 * 3051 05375 140040 MLNN CRA CLEAR B 3052 05376 000201 IAB 3053 05377 101400 SMI CHECK MULTIPLICAND = MINUS LARGEST NEG. NO. 3054 05400 -0 01 05340 JMP* MPYS EXIT WITH MULTIPLICAND IN A MULT. IS LNN 3055 05401 0 02 05404 LDA COMM+1 MULTIPLICAND IS LNN, LOAD MULTIPLIER IN A 3056 05402 -0 01 05340 JMP* MPYS EXIT, MULTIPLICAND IS LNN 3057 * 3058 * 3059 05403 000000 COMM BSZ 2 3060 05405 000000 BSZ 10 3061 * 3062 * 3063 * 3064 * 3065 * DIVIDE ROUTINE 3066 * 3067 05417 0 000000 DIV DAC ** ENTRY 3068 05420 101400 SMI CHECK SIGN OF DIVIDEND 3069 05421 0 01 05455 JMP DIVB 3070 05422 140200 RCB RESET C BIT 3071 05423 140401 CMA ONE'S COMPLEMENT HI-ORDER 3072 05424 000201 IAB 3073 05425 140407 TCA TWO'S COMPLEMENT LOW ORDER 3074 05426 101040 SNZ IF LOWER ORDER=0 3075 05427 140600 SCB MUST TWO'S COMPLEMENT HI-ORDER 3076 05430 140100 SSP SET B SIGN PLUS 3077 05431 000201 IAB 3078 05432 141216 ACA
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 65

3079 05433 101400 SMI IS NUMERATOR LARGEST NEGATIVE NUMBER 3080 05434 0 01 05436 JMP *+2 NO CONTINUE , NORMAL 3081 05435 0 01 05453 JMP DIVZ ERROR EXIT ILLEGAL DIVIDE 3082 05436 0 04 05525 STA COMN+1 3083 05437 -0 02 05417 LDA* DIV CHECK SIGN OF DIVISOR 3084 05440 101400 SMI 3085 05441 0 01 05462 JMP DIVC 3086 05442 140407 TCA TWO'S COMPLEMENT DIVISOR 3087 05443 101400 SMI TEST FOR LARGEST NEGATIVE NUMBER 3088 05444 0 01 05450 JMP DIVA DIVIDE DIVIDEND , DIVISOR SAME SIGN 3089 05445 0 02 05525 LDA COMN+1 3090 05446 000201 IAB 3091 05447 0 01 05451 JMP DIVX 3092 05450 0 10 05475 DIVA JST DIVS DIVIDE IF DIVISOR AND DIV SAME SIGN 3093 05451 0 12 05417 DIVX IRS DIV INCREMENT FOP NORMAL RETURN 3094 05452 000201 IAB QUOTIENT IN A REG, REMAINDER IN B 3095 05453 0 12 05417 DIVZ IRS DIV ERROR EXIT 3096 05454 -0 01 05417 JMP* DIV EXIT 3097 * 3098 05455 0 04 05525 DIVB STA COMN+1 STORE MOST SIGNIF. HALF OF DIVIDEND 3099 05456 -0 02 05417 LDA* DIV CHECK SIGN OF DIVISOR 3100 05457 101400 SMI COMPLEMENT ON NEGATIVE 3101 05460 0 01 05450 JMP DIVA DIVIDE OPERANDS ARE OF SAME SIGN 3102 05461 140407 TCA TWOS COMPLEMENT 3103 05462 101400 DIVC SMI CHECK DENOMINATOR FOR LARGEST NEGATIVE NO. 3104 05463 0 01 05467 JMP DIVN NOT LNN 3105 05464 0 02 05525 LDA COMN+1 RESULT SIGN WILL BE NEGATIVE 3106 05465 000201 IAB RESULT IS NUMERATOR 3107 05466 0 01 05470 JMP *+2 BY PASS DIVIDE COMPLEMENT RESULT 3108 05467 0 10 05475 DIVN JST DIVS DIVIDE 3109 * RETURN HERE ON NEGATIVE RESULT 3110 05470 000201 IAB COMPLEMENT QUOTIENT AND REMAINDER 3111 05471 140407 TCA 3112 05472 000201 IAB 3113 05473 140407 TCA 3114 05474 0 01 05451 JMP DIVX EXIT 3115 * 3116 * DIVIDE ROUTINE WITH HIGH ORDER DIVIDEND IN 3117 * COMMON +1,LOW ORDER DIVIDEND IN B REG AND 3118 * DIVISOR IN A REGISTER 3119 * 3120 05475 000000 DIVS HLT 3121 05476 0 04 05524 STA COMN A SAVE DIVISOR 3122 05477 0 02 05755 LDA =-15 3123 05500 0 04 05526 STA COMN+2 LOOP COUNTER 3124 05501 0410 77 LLL 1 MOVE LOW ORDER LEFT 1 3125 05502 0 02 05525 LDA COMN+1 LOAD HI ORDER 3126 05503 0 11 05524 CAS COMN COMPARE DIVIDEND AND DIVISOR 3127 05504 0 01 05453 JMP DIVZ DIVIDEND GTR THAN OR 3128 05505 0 01 05453 JMP DIVZ EQUAL TO GO TO ERROR RETURN
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 66

3129 * LOOP FOR DIVISION 3130 05506 0412 77 DIVY LLR 1 MOVE DIVIDEND 1 POSITION TO THE LEFT 3131 05507 100400 SPL TEST SIGN POSITION FOR SPILL 3132 05510 0 01 05515 JMP DIVU MINUS SUBTRACT DIVIDEND IS GREATER 3133 05511 0 11 05524 CAS COMN COMPARE DIVIDEND AND DIVISOR 3134 05512 0 01 05515 JMP DIVU IF GREATER SUBTRACT 3135 05513 0 01 05515 JMP DIVU EQUAL SUBTRACT 3136 05514 0 01 05517 JMP DIVH INDEX AND LOOP 3137 05515 0 07 05524 DIVU SUB COMN 3138 05516 140500 SSM PUT-1-BIT IN QUOTIENT LOOP 3139 05517 0 12 05526 DIVH IRS COMN+2 3140 05520 0 01 05506 JMP DIVY 3141 05521 0412 77 LLR 1 RESET SIGN BITS 3142 05522 0404 77 LGR 1 3143 05523 -0 01 05475 JMP* DIVS 3144 * 3145 05524 000000 COMN BSZ 3 3146 * 3147 * 3148 * 3149 * DETERMINE HIGHEST SECTOR IN MEMORY 3150 * 3151 05527 0 000000 HSEC DAC ** 3152 05530 000013 EXA 3153 05531 140040 CRA 3154 05532 0 04 00462 STA TMP1+1 3155 05533 0 06 05773 HSE1 ADD ='10000 3156 05534 0 12 00462 IRS TMP1+1 3157 05535 0 04 00461 STA TMP1 3158 05536 -0 04 00461 STA* TMP1 3159 05537 140040 CRA 3160 05540 0 04 00000 STA 0 3161 05541 -0 02 00461 LDA* TMP1 3162 05542 100040 SZE HIGHEST ADDRESS REACHED 3163 05543 0 01 05533 JMP HSE1 IF NOT, DO ANOTHER TIME 3164 05544 000021 RMP 3165 05545 0 02 00461 LDA TMP1 3166 05546 0 07 05754 SUB =1 HIGHEST ADDRESS 3167 05547 0404 67 LGR 9 3168 05550 0 04 00464 STA HISC HIGHEST SECTOR 3169 * 3170 05551 0 02 00521 LDA CNTZ DAC OF TIME COMPENS. TABLE 3171 05552 0 06 00462 ADD TMP1+1 3172 05553 0 04 00462 STA TMP1+1 3173 05554 -0 02 00462 LDA* TMP1+1 GET THE COMPENS. FACTOR 3174 05555 0 04 00455 STA CNTY 3175 05556 0 02 05753 LDA ='101000 3176 05557 0 04 00145 STA IN00 3177 05560 -0 01 05527 JMP* HSEC 3178 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 67

3179 05561 123567 PATX OCT 123567 3180 05562 0 005563 MESS DAC *+1 3181 05563 177757 DEC -17 3182 05564 106612 OCT 106612,106612 05565 106612 3183 05566 140702 BCI 6,AB16-CCT4 05567 130666 05570 126703 05571 141724 05572 132240 05573 120240 3184 05574 140720 BCI 6,APR 24, 73 05575 151240 05576 131264 05577 126240 05600 133663 05601 120240 3185 05602 151305 BCI 3,REV H 05603 153240 05604 144240 3186 05605 0 005606 MES1 DAC *+1 3187 05606 177772 DEC -6 3188 05607 106612 OCT 106612 3189 05610 141720 BCI 5,CP IS **16 05611 120311 05612 151640 05613 125252 05614 130666 3190 * 3191 * 3192 * TEST IF CP IS 716 AND MODIFY PROGRAM IF IT IS 3193 * 3194 05615 0 02 05561 X13R LDA PATX 3195 05616 000201 IAB PUT INTO B REG 3196 05617 0 02 05561 LDA PATX GET THE WORD AGAIN 3197 05620 0 05 00002 ERA 2 XOR WITH LOC.2 3198 05621 101040 SNZ TEST FURTHER FOR 716 3199 05622 0 01 05705 JMP X135 IF ZERO, CP IS 716 3200 05623 0 02 05752 LDA =-1 LOAD -1 INTO A 3201 05624 0 12 00001 IRS 1 IF CP IS 716, SHOULD SKIP NEXT INSTRUCTION 3202 05625 100000 SKP TEST MORE 3203 05626 0 01 05705 JMP X135 CP IS 716 3204 * 3205 05627 140040 CRA 3206 05630 0 04 00461 STA TMP1 RESET THE COUNTER 3207 05631 34 0104 SKS '104 3208 05632 0 01 05631 JMP *-1 WAIT TILL NOT BUSY 3209 05633 14 0104 OCP '104 PUT ASR IN OUTPUT MODE 3210 05634 74 0004 OTA 4 3211 05635 000000 HLT ERROR
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 68

3212 05636 74 0004 OTA 4 3213 05637 100000 SKP 3214 05640 0 01 05644 JMP *+4 3215 05641 0 12 00461 IRS TMP1 3216 05642 0 01 05636 JMP *-4 3217 05643 000000 HLT OVERFLOW ERROR 3218 05644 101000 NOP 3219 05645 0 02 05753 LDA ='101000 NOP 3220 05646 0 04 00171 STA IN02 3221 05647 0 04 00172 STA IN02+1 3222 05650 0 02 00461 LDA TMP1 3223 05651 0 11 05751 CAS =11900 3224 05652 0 01 05703 JMP X134 CP IS 516 3225 05653 101000 NOP 3226 05654 0 02 05750 LDA =A 3 CP IS 316 3227 05655 0 04 05613 X133 STA MES1+6 3228 05656 0 02 05605 LDA MES1 3229 05657 0 10 00402 JST TYPE PRINT CP TYPE 3230 05660 140040 CRA ROUTINE TO TYPE MEMORY SIZE 3231 05661 0 04 00461 STA TMP1 3232 05662 0 02 00464 LDA HISC 3233 05663 0 06 05754 ADD =1 3234 05664 0 07 05772 SUB ='10 3235 05665 101040 SNZ 3236 05666 0 01 05671 JMP *+3 3237 05667 0 12 00461 IRS TMP1 3238 05670 0 01 05664 JMP *-4 3239 05671 0 02 00461 LDA TMP1 3240 05672 0 06 04741 ADD MMSZ 3241 05673 0 04 00461 STA TMP1 3242 05674 -0 02 00461 LDA* TMP1 3243 05675 0 04 04760 STA MES5+6 3244 05676 0 02 04752 LDA MES5 3245 05677 0 10 00402 JST TYPE TYPE MEMORY SIZE 3246 05700 0 02 05753 LDA ='101000 3247 05701 0 04 00146 STA IN00+1 3248 05702 0 01 00146 JMP IN00+1 3249 * 3250 05703 0 02 05747 X134 LDA =A 5 CP IS 516 3251 05704 0 01 05655 JMP X133 3252 * 3253 05705 0 02 00450 X135 LDA SUB7 MODIFY FOR 716 CP TESTS 3254 05706 0 04 00155 STA IN01 3255 05707 0 02 00452 LDA LD10 LDA ='10000 3256 05710 0 04 00211 STA IN03 3257 05711 0 02 00451 LDA LDM7 LDA =-7 3258 05712 0 04 00213 STA IN04 3259 05713 0 02 00453 LDA SB47 SUB ='47 3260 05714 0 04 00304 STA IN05 3261 05715 0 02 00454 LDA OTNT ='10000
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 69

3262 05716 0 04 00320 STA IN06 3263 05717 0 02 00457 LDA LM24 LDA =-24 3264 05720 0 04 00301 STA IN07 3265 05721 0 02 00464 LDA HISC 3266 05722 0 07 05772 SUB ='10 3267 05723 101400 SMI IF NEG., MEM IS ONLY 4K, MODIFY 3268 05724 0 01 05731 JMP *+5 3269 05725 0 02 00270 LDA IN10 3270 05726 0 04 00200 STA IN08+1 3271 05727 0 02 00177 LDA IN08 3272 05730 0 04 00201 STA IN08+2 3273 05731 0 02 05746 LDA =A 7 3274 05732 0 01 05655 JMP X133 3275 * 3276 * 3277 * TEST IF CP IS 716 AND MEMORY 20K AND IF SO, MODIFY PROGRAM 3278 * FOR UPPER HALF 3279 * 3280 05733 0 02 05752 S47R LDA =-1 3281 05734 0 12 00001 IRS 1 WILL SKIP IF CP IS 716 3282 05735 0 01 00162 JMP STR2 CP IS NOT 716, NO MODIFICATION 3283 05736 0 02 00464 LDA HISC CHECK IF MEMORY IS 20K 3284 05737 0 07 05745 SUB ='47 3285 05740 100040 SZE 3286 05741 0 01 00162 JMP STR2 OVER 20K, NO MODIFICATION 3287 05742 0 02 00257 LDA D20L MODIFY PROGRAM 3288 05743 0 04 00206 STA IN09 3289 05744 0 01 00162 JMP STR2 GO TO TEST 3290 * 3291 * 3292 * 3293 * 3294 05745 000047 FIN 05746 120267 05747 120265 05750 120263 05751 027174 05752 177777 05753 101000 05754 000001 05755 177761 05756 000031 05757 030071 05760 072460 05761 000151 05762 007701 05763 077555 05764 000016 05765 000777 05766 000023
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 70

05767 000040 05770 000012 05771 000025 05772 000010 05773 010000 3295 * 3296 * 3297 * 3298 * 716 TESTS PART I 3299 * 3300 ORG '6000 3301 * 3302 06000 0 000000 TS06 DAC ** 3303 06001 101000 NOP 3304 06002 0 10 06006 JST X13T GO TO 716 TESTS 3305 06003 101000 NOP 3306 06004 -0 01 06000 JMP* TS06 RETURN 3307 * 3308 * 3309 * 3310 06005 000103 OCT 103 3311 06006 0 000000 X13T DAC ** 3312 06007 0 02 06005 LDA *-2 3313 06010 0 04 00777 STA '777 SAVE THE TEST NO. 3314 06011 101000 NOP 3315 * 3316 * 3317 * A REG AND LOC.1 TRACTION 3318 * 3319 06012 0 02 06756 LDA =-2 3320 06013 0 12 00001 IRS 1 A=-1 3321 06014 0 06 06755 ADD =1 A=0 3322 06015 100040 SZE 3323 06016 000000 HLT ERROR 3324 06017 0 02 06754 LDA =-1 3325 06020 0 12 00001 IRS 1 A=0, MUST SKIP 3326 06021 000000 HLT ERROR 3327 06022 100040 SZE 3328 06023 000000 HLT ERROR 3329 06024 0 12 00001 IRS 1 A=1 3330 06025 0 12 00001 IRS 1 A=2 3331 06026 0 07 06753 SUB =2 A=0 3332 06027 100040 SZE 3333 06030 000000 HLT ERROR 3334 * 3335 * 3336 * B REG AND LOC.2 TRACTION 3337 * 3338 06031 0 02 06756 LDA =-2
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 71

3339 06032 000201 IAB B=-2, (2)=-2 3340 06033 0 12 00002 IRS 2 B=-1, (2)=-1 3341 06034 000201 IAB A=-1 3342 06035 0 11 06754 CAS =-1 3343 06036 100000 SKP 3344 06037 100000 SKP CORRECT, SKIP 3345 06040 000000 HLT ERROR 3346 06041 000201 IAB B=-1, (2)=-1 3347 06042 0 12 00002 IRS 2 (2)=0 3348 06043 000000 HLT ERROR, DID NDT SKIP 3349 06044 000201 IAB A=0 3350 06045 100040 SZE 3351 06046 000000 HLT ERROR 3352 06047 0 02 06754 LDA =-1 3353 06050 0 04 00002 STA 2 (2)=-1 AND B=-1 3354 06051 000201 IAB (A)=-1 AND (1)=-1 3355 06052 0 12 00001 IRS 1 (1)=0 3356 06053 000000 HLT ERROR 3357 06054 100040 SZE 3358 06055 000000 HLT ERROR 3359 * 3360 06056 0 02 00455 LDA CNTY 3361 06057 0 04 06222 STA X602 3362 06060 0 02 06752 LDA ='10 STORE ADDR AT X601 3363 06061 0 04 06221 STA X601 3364 06062 -0 02 06221 X13A LDA* X601 3365 06063 000201 IAB SHIFT TO B REG 3366 06064 140040 CRA 3367 06065 0 02 00002 LDA 2 GET DATA FROM B REG THRU LOC.2 3368 06066 -0 05 06221 ERA* X601 3369 06067 100040 SZE 3370 06070 000000 HLT ERROR 3371 06071 -0 02 06221 LDA* X601 3372 06072 0 04 00002 STA 2 STORE AT LOC.2 3373 06073 0 02 06754 LDA =-1 LOAD A WITH ALL ONES 3374 06074 000201 IAB SHIFT B REG TO A 3375 06075 -0 05 06221 ERA* X601 3376 06076 100040 SZE SHOULD BE ZERO 3377 06077 000000 HLT ERROR 3378 06100 0 12 06221 IRS X601 3379 06101 100000 SKP 3380 06102 000000 HLT ERROR - TOO BIG LOOP 3381 06103 0 12 06222 IRS X602 3382 06104 0 01 06062 JMP X13A NO, REPEAT WITH NEXT WORD 3383 * 3384 * 3385 * STACK TOP AND LOC.3 TEST 3386 * 3387 06105 0 02 00455 LDA CNTY 3388 06106 0 04 00000 STA 0
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 72

3389 06107 1 02 06107 X13B LDA *,1 3390 06110 0 04 00003 STA 3 STORE AT STACK TOP 3391 06111 140040 CRA 3392 06112 0 02 00003 LDA 3 GET WORD FROM 3 3393 06113 1 05 06107 ERA X13B,1 3394 06114 100040 SZE 3395 06115 000000 HLT ERROR - DATA CHANGED 3396 06116 0 12 00000 IRS 0 MODIFY ADDRESS, ARE WE DONE 3397 06117 0 01 06107 JMP X13B NO, TEST NEXT WORD 3398 * 3399 06120 0 02 06754 LDA =-1 3400 06121 0 04 00003 STA 3 TRY IRS 3 3401 06122 0 12 00003 IRS 3 3402 06123 000000 HLT ERROR - DID NOT SKIP 3403 06124 0 02 00455 LDA CNTY 3404 06125 0 04 00003 STA 3 LOOP COUNT 3405 06126 0 35 06751 LDX =0 3406 06127 0 12 00000 IRS 0 INCREMENT BOTH 0 AND 3407 06130 0 12 00003 IRS 3 3 AND CHECK IF THEY TRACK 3408 06131 0 01 06127 JMP *-2 3409 06132 0 02 00455 LDA CNTY 3410 06133 140407 TCA 3411 06134 0 05 00000 ERA 0 MUST COMPARE 3412 06135 100040 SZE 3413 06136 000000 HLT ERROR 3414 * 3415 * 3416 * CHECK S MODE 3417 * 3418 06137 000017 XFS SET S MODE 3419 06140 000043 INK INPUT THE KEYS 3420 06141 0 03 06225 ANA BIT4 ='10000 3421 06142 101040 SNZ 3422 06143 000000 HLT ERROR - BIT 4 NOT SET 3423 06144 000015 XFX SET X MODE 3424 06145 000043 INK 3425 06146 0 03 06225 ANA BIT4 3426 06147 100040 SZE 3427 06150 000000 HLT ERROR - BIT 4 DID NOT GET RESET 3428 06151 0 02 06225 LDA BIT4 3429 06152 171020 OTK SET BIT 4 3430 06153 140040 CRA 3431 06154 000043 INK 3432 06155 0 03 06225 ANA BIT4 AND WITH BIT4 3433 06156 101040 SNZ 3434 06157 000000 HLT ERROR - BIT4 DID NOT GET SET 3435 06160 140040 CRA 3436 06161 171020 OTK RESET BIT4 3437 06162 000043 INK 3438 06163 0 03 06225 ANA BIT4
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 73

3439 06164 100040 SZE 3440 06165 000000 HLT ERROR - BIT4 DID NOT GET RESET 3441 * 3442 * 3443 * CHECK X MODE 3444 * 3445 06166 000015 XFX SET X MODE 3446 06167 0 35 06750 LDX =-3 3447 06170 0 02 00766 LDA STIR 3448 06171 0 04 06223 STA PNTR STORE ADDR OF WORK AT POINTER 3449 06172 0 02 06747 LDA ='52525 FILL THREE WORD BUFFER 3450 06173 -0 04 06223 STA* PNTR WITH KNOWN DATA 3451 06174 0 06 06746 ADD ='135 3452 06175 0 12 06223 IRS PNTR 3453 06176 0 12 00000 IRS 0 3454 06177 0 01 06173 JMP *-4 3455 * 3456 * 3457 * TEST S MODE FOR INDEXING 3458 * 3459 06200 000017 XFS SET S MODE 3460 06201 0 35 06750 LDX =-3 3461 06202 0 02 06754 LDA =-1 3462 06203 0 04 00003 STA 3 STORE =-1 AT 3 3463 06204 0 02 00766 LDA STIR LOAD ADDRESS OF WORK 3464 06205 0 04 06223 STA PNTR STORE AT POINTER 3465 06206 1 02 00771 X13C LDA WORK+1,1 INDEX FROM S 3466 06207 -0 05 06223 ERA* PNTR XOR WITH DATA 3467 06210 100040 SZE 3468 06211 000000 HLT ERROR - DATA DID NOT AGREE 3469 06212 0 12 00000 IRS 0 X-REG FOR COUNTING, ARE WE DONE 3470 06213 100000 SKP NO, SKIP 3471 06214 0 01 06231 JMP X13D YES, JUMP AROUND 3472 06215 0 12 06223 IRS PNTR MODIFY 3473 06216 0 12 00003 IRS 3 3474 06217 101000 NOP 3475 06220 0 01 06206 JMP X13C CHECK NEXT WORD 3476 * 3477 06221 000000 X601 BSZ 1 3478 06222 000000 X602 BSZ 1 3479 06223 000000 PNTR BSZ 1 3480 06224 020000 BIT3 OCT 20000 EXTEND MODE BIT 3481 06225 010000 BIT4 OCT 10000 S MODE BIT 3482 06226 024000 BT35 OCT 24000 EXTEND MODE AND RUPT MASK BITS 3483 06227 000000 HADD BSZ 1 HIGH ADDRESS BEFORE OVERFLOW 3484 06230 000000 LADD BSZ 1 LOW ADDRESS BEFORE UNDERFLOW 3485 * 3486 * 3487 * TEST IRS 3 (POP), LDA 5 (POP A) AND STA 4 (PUSH A). 3488 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 74

3489 06231 101000 X13D NOP 3490 06232 0 02 06745 LDA ='21 3491 06233 0 04 00003 STA 3 INITIALIZE STACK 3492 06234 0 12 00003 IRS 3 POP STACK 3493 06235 0 02 00003 LDA 3 GET STACK 3494 06236 0 05 06744 ERA ='22 SHOULD COMPARE 3495 06237 100040 SZE 3496 06240 000000 HLT IRS 3 (POP) FAILED 3497 06241 0 01 06245 JMP *+4 3498 * 3499 06242 052525 OCT 52525 3500 06243 125253 N1 OCT 125253 3501 06244 000000 BSZ 1 3502 * 3503 06245 0 10 06246 JST *+1 FORM REFERENCE ADDRESS 3504 06246 0 000000 DAC ** 3505 06247 0 02 06246 LDA *-1 3506 06250 0 03 06743 ANA ='37777 STRIP INDEX BIT 3507 06251 0 07 06742 SUB =3 3508 06252 0 04 00003 STA 3 INITIALIZE STACK TO N1 3509 06253 0 02 00005 LDA 5 POP A - ADDR IS N1 AND STACK GOES TO N1+1 3510 06254 0 06 06242 ADD N1-1 3511 06255 100040 SZE 3512 06256 000000 HLT LDA 5 (POP A) FAILED 3513 * 3514 06257 024003 POP STACK IS N1+2 3515 06260 0 02 06242 LDA N1-1 3516 06261 0 04 00004 STA 4 PUSH A, ADDR IS N1+1 AND STACK IS N1+1 3517 06262 0 02 06243 LDA N1 3518 06263 0 06 06244 ADD N1+1 3519 06264 100040 SZE 3520 06265 000000 HLT STA 4 (PUSH A) FAILED 3521 06266 140040 CRA 3522 06267 0 04 06244 STA N1+1 CLEAR WORKING LOCATION 3523 * 3524 * 3525 * 3526 * 3527 * TEST LDA* 3, LDA* 4, LDA* 5 3528 * 3529 06270 101000 NOP 3530 06271 000015 XFX PUT IN X MODE 3531 06272 0 10 06273 JST *+1 3532 06273 0 000000 DAC ** 3533 06274 0 02 06273 LDA *-1 3534 06275 0 03 06743 ANA ='37777 STRIP BITS 1 AND 2 3535 06276 0 06 06741 ADD =5 3536 06277 0 01 06303 JMP *+4 3537 06300 052525 X6AA OCT 52525 3538 06301 125253 OCT 125253
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 75

3539 06302 000000 BSZ 1 3540 06303 010003 STAQ S STACK HAS ADDR OF X6AA 3541 06304 -0 02 00003 LDA* 3 TESTING LDA* 3 3542 06305 0 06 06301 ADD *-4 3543 06306 100040 SZE 3544 06307 000000 HLT LDA* 3 FAILED 3545 * 3546 06310 024003 POP STACK HAS ADDR OF X6AA+1 3547 06311 004003 LDAQ S 3548 06312 0 04 06302 STA X6AA+2 3549 06313 024003 POP 3550 06314 024003 POP STACK HAS ADDR OF X6AA+3 3551 06315 -0 02 00004 LDA* 4 TESTING LDA* 4 S=X6AA+2 3552 06316 0 06 06300 ADD X6AA 3553 06317 100040 SZE 3554 06320 000000 HLT LDA* 4 FAILED 3555 * 3556 06321 -0 02 00005 LDA* 5 ADDR IS X6AA+2 AND STACK GOES TO X6AA+3 3557 06322 0 06 06300 ADD X6AA 3558 06323 100040 SZE 3559 06324 000000 HLT LDA* 5 FAILED 3560 * 3561 * 3562 * 3563 * TEST JMP 4 AND JMP 5 3564 * 3565 06325 101000 NOP 3566 06326 0 10 06327 JST *+1 FIND A REFERENCE LOC IN THE SAME SECTOR 3567 06327 0 000000 DAC ** 3568 06330 101000 NOP 3569 06331 0 02 06327 LDA *-2 3570 06332 0 03 06743 ANA ='37777 STRIP BITS 1 AND 2 3571 06333 0 06 06740 ADD ='13 3572 06334 0 04 00003 STA 3 STACK IS N2 3573 * 3574 06335 0 01 00004 JMP 4 FIRST JMP 4 - S=N2-1 3575 06336 000000 HLT 3576 06337 0 01 06343 JMP *+4 3577 06340 0 01 00004 JMP 4 THIRD JMP 4 - S=N2-3 3578 06341 0 01 00004 JMP 4 SECOND JMP 4 - S=N2-2 3579 06342 000000 N2 HLT 3580 06343 101000 NOP 3581 06344 004003 LDAQ S 3582 06345 0 06 06737 ADD ='12 3583 06346 010003 STAQ S STACK IS N3 3584 06347 0 01 00005 JMP 5 FIRST JMP 5, ADDR IS N3, S=N3+1 3585 06350 000000 HLT 3586 06351 0 01 00005 N3 JMP 5 SECOND JMP 5 - ADDR=N3+1 AND S=N3+2 3587 06352 100000 SKP 3588 06353 000000 HLT
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 76

3589 * 3590 * 3591 * TEST JST 4 (PUSH P) 3592 * 3593 06354 101000 NOP 3594 06355 0 02 00003 LDA 3 STACK IS N3+2 3595 06356 0 06 06752 ADD ='10 3596 06357 0 04 00003 STA 3 STACK IS N4 3597 06360 0 01 06364 JMP *+4 3598 06361 000000 X603 BSZ 1 SECOND JST 4 PUTS P+1 (N4+7) HERE 3599 06362 000000 BSZ 1 FIRST JST 4 PUTS P+1 (N4+2) HERE 3600 06363 000000 N4 HLT 3601 06364 0 10 00004 JST 4 FIRST JST 4 - S=N4-1 3602 06365 -0 02 06362 LDA* N4-1 GET THE CONTENTS 3603 06366 0 05 06365 ERA *-1 COMPARE WITH THE ORIGINAL 3604 06367 100040 SZE 3605 06370 000000 HLT FIRST JST 4 FAILED 3606 06371 0 10 00004 JST 4 SECOND JST 4 - S=N4-2 3607 06372 -0 02 06361 LDA* X603 3608 06373 0 05 06372 ERA *-1 3609 06374 100040 SZE 3610 06375 000000 HLT SECOND JST 4 FAILED 3611 * 3612 * 3613 * TEST JMP* 4 3614 * 3615 06376 101000 NOP 3616 06377 0 02 00003 LDA 3 S=N4-2 3617 06400 0 06 06736 ADD ='24 3618 06401 0 04 00003 STA 3 STACK IS N5 3619 06402 0 01 06405 JMP *+3 3620 06403 000000 X604 BSZ 1 GETS N5+9 3621 06404 000000 BSZ 1 GETS N5+6 3622 06405 0 06 06735 N5 ADD =6 3623 06406 0 04 06404 STA N5-1 3624 06407 0 06 06742 ADD =3 3625 06410 0 04 06403 STA X604 3626 06411 -0 01 00004 JMP* 4 FIRST JMP* 4 - S=N5-1 3627 06412 000000 HLT 3628 06413 101000 NOP FIRST JMP* 4 COMES HERE 3629 06414 -0 01 00004 JMP* 4 SECOND JMP* 4 - S=N5-2 3630 06415 000000 HLT 3631 06416 101000 NOP SECOND JMP* 4 COMES HERE 3632 * 3633 * 3634 * TEST JMP* 5 3635 * 3636 06417 004003 LDAQ S 3637 06420 0 06 06734 ADD ='20 3638 06421 010003 STAQ S STACK IS X605
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 77

3639 06422 0 01 06425 JMP *+3 3640 06423 000000 X605 BSZ 1 GETS N6 3641 06424 000000 BSZ 1 GETS N6+2 3642 06425 0 06 06737 ADD ='12 3643 06426 0 04 06423 STA X605 3644 06427 0 06 06753 ADD ='2 3645 06430 0 04 06424 STA X605+1 3646 06431 101000 NOP 3647 06432 -0 01 00005 JMP* 5 FIRST JMP* 5 - ADDR=X605, S=X605+1 3648 06433 000000 HLT 3649 06434 000000 HLT 3650 06435 101000 N6 NOP FIRST JMP* 5 COMES HERE 3651 06436 -0 01 00005 JMP* 5 SECOND JMP* 5 - ADDR=X605+1, S=X605+2 3652 06437 0 02 00005 LDA 5 SECOND JMP* 5 COMES HERE 3653 06440 0 05 06425 ERA X605+2 3654 06441 100040 SZE 3655 06442 000000 HLT STACK FAILED 3656 * 3657 * 3658 * 3659 * 3660 * 3661 * CHECK FOR CORRECT DATA WORD - PUSH OPERATION 3662 * 3663 06443 0 35 06733 LDX =-500 INITIALIZE COUNT 3664 06444 0 02 06732 LDA ='1777 CHANGE IT LATER WITH '5777 3665 06445 0 04 00003 STA 3 STORE AT STACK TOP 3666 06446 0 07 06755 SUB =1 3667 06447 0 04 06223 STA PNTR STORE AT POINTER 3668 06450 000013 EXA 3669 06451 0 10 06452 JST *+1 SET UP FOR 3670 06452 0 000000 DAC ** UNEXPECTED RUPT 3671 06453 0 02 06452 LDA *-1 3672 06454 0 06 06745 ADD ='21 3673 06455 0 04 00057 STA '57 3674 06456 000011 DXA 3675 06457 0 01 06460 JMP *+1 NORMAL MODE 3676 06460 0 02 00004 X13I LDA 4 3677 06461 -0 05 06223 ERA* PNTR 3678 06462 100040 SZE 3679 06463 000000 HLT ERROR - DATA DID NOT AGREE 3680 06464 0 12 00000 IRS 0 ARE WE DONE 3681 06465 100000 SKP NO, SKIP 3682 06466 0 01 06475 JMP X13J YES, JUMP OUT 3683 06467 0 02 06223 LDA PNTR MODIFY 3684 06470 0 07 06755 SUB =1 3685 06471 0 04 06223 STA PNTR 3686 06472 0 01 06460 JMP X13I GO AND TEST NEXT WORD 3687 * 3688 06473 0 000000 DAC ** UNEXPECTED RUPT
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 78

3689 06474 000000 HLT ERROR 3690 * 3691 * 3692 * 3693 * CHECK FOR CORRECT DATA WORD - POP OPERATION 3694 * 3695 06475 0 35 06733 X13J LDX =-500 INITIALIZE COUNT 3696 06476 000013 EXA 3697 06477 0 10 06500 JST *+1 SET UP FOR 3698 06500 0 000000 DAC ** UNEXPECTED RUPT 3699 06501 0 02 06500 LDA *-1 3700 06502 0 06 06744 ADD ='22 3701 06503 0 04 00057 STA '57 3702 06504 000011 DXA 3703 06505 0 01 06506 JMP *+1 NORMAL MODE 3704 06506 0 02 06731 LDA ='1006 3705 06507 0 04 00003 STA 3 3706 06510 0 04 06223 STA PNTR 3707 06511 0 02 00005 X13K LDA 5 3708 06512 -0 05 06223 ERA* PNTR 3709 06513 100040 SZE 3710 06514 000000 HLT ERROR - DATA DID NOT AGREE 3711 06515 0 12 00000 IRS 0 ARE WE DONE 3712 06516 100000 SKP NO, SKIP 3713 06517 0 01 06524 JMP X13L YES, JUMP OUT 3714 06520 0 12 06223 IRS PNTR MODIFY 3715 06521 0 01 06511 JMP X13K GO AND TEST NEXT WORD 3716 * 3717 06522 0 000000 DAC ** UNEXPECTED RUPT 3718 06523 000000 HLT ERROR 3719 * 3720 * 3721 * RUPT TEST FOR OVERFLOW 3722 * 3723 06524 0 35 06730 X13L LDX =-512 COUNTER FOR ALL POSSIBLE OVERFLOW CASES 3724 06525 0 02 06727 LDA ='100 3725 06526 0 04 06227 STA HADD GOING TO '77 WILL CAUSE AN OVERFLOW 3726 06527 0 04 00003 STA 3 AND AN INTERRUPT IF MASK IS SET. 3727 06530 0 02 06226 LDA BT35 3728 06531 171020 OTK SET EXTEND MODE AND RUPT MASK 3729 06532 0 01 06533 JMP *+1 3730 06533 0 10 06534 JST *+1 SET UP FOR 3731 06534 0 000000 DAC ** EXPECTED RUPT 3732 06535 0 02 06534 LDA *-1 3733 06536 0 06 06735 ADD =6 3734 06537 0 04 00057 STA '57 3735 06540 0 02 00004 LDA 4 3736 06541 000000 HLT ERROR - DID NOT GO TO RUPT 3737 * 3738 06542 0 000000 DAC ** EXPECTED RUPT
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 79

3739 06543 0 02 06224 LDA BIT3 3740 06544 171020 OTK RESET RUPT MASK BUT LEAVE EXTEND MODE 3741 06545 0 01 06546 JMP *+1 3742 06546 0 10 06547 JST *+1 3743 06547 0 000000 DAC ** 3744 06550 0 02 06547 LDA *-1 3745 06551 0 06 06737 ADD ='12 3746 06552 0 04 00057 STA '57 3747 06553 000011 DXA 3748 06554 0 01 06555 JMP *+1 NORMAL MODE 3749 06555 0 02 06727 LDA ='100 3750 06556 0 04 00003 STA 3 3751 06557 0 02 00004 LDA 4 LOAD FROM STACK TOP AND PUSH 3752 06560 0 01 06563 JMP *+3 JUMP AROUND 3753 * 3754 06561 0 000000 DAC ** UNEXPECTED RUPT 3755 06562 000000 HLT ERROR 3756 06563 0 12 00000 IRS 0 CHECKED ALL POSSIBLE OVFLO CASES 3757 06564 100000 SKP NO, SKIP TO MODIFY 3758 06565 0 01 06571 JMP *+4 YES, GO AROUND 3759 06566 0 02 06227 LDA HADD 3760 06567 0 06 06727 ADD ='100 3761 06570 0 01 06526 JMP X13L+2 TRY ANOTHER OVFLO POINT 3762 * 3763 * 3764 06571 101000 NOP 3765 06572 0 35 06726 LDX =-20 3766 06573 0 02 06725 LDA ='120 3767 06574 0 04 00003 STA 3 STORE ADDR AT STACK TOP 3768 06575 0 02 06226 LDA BT35 3769 06576 171020 OTK SET RUPT MASK AND EXTEND MODE 3770 06577 000013 EXA 3771 06600 0 10 06601 JST *+1 SET UP FOR 3772 06601 0 000000 DAC ** EXPECTED RUPT 3773 06602 0 02 06601 LDA *-1 3774 06603 0 06 06737 ADD ='12 3775 06604 0 04 00057 STA '57 3776 06605 000011 DXA 3777 06606 0 01 06607 JMP *+1 NORMAL MODE 3778 06607 0 02 00004 LDA 4 LOAD FROM STACK TOP AND PUSH 3779 06610 0 12 00000 IRS 0 ARE WE FINISHED, DID WE GET RUPT 3780 06611 0 01 06607 JMP *-2 NO, GET ANOTHER WORD 3781 06612 000000 HLT FINISHED, ERROR: DID NOT GET RUPT 3782 * 3783 * 3784 06613 0 000000 DAC ** EXPECTED RUPT 3785 06614 101000 NOP 3786 06615 000011 DXA 3787 06616 0 01 06617 JMP *+1 NORMAL MODE 3788 *
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 80

3789 * 3790 * RUPT TEST FOR UNDERFLOW 3791 * 3792 06617 0 35 06730 X13M LDX =-512 COUNTER FOR UNDERFLOW TEST 3793 06620 0 02 06724 LDA ='77 3794 06621 0 04 06230 STA LADD 3795 06622 0 04 00003 STA 3 STORE ADDR AT STACK TOP 3796 06623 0 02 06226 LDA BT35 3797 06624 171020 OTK SET RUPT MASK AND EXTEND MODE 3798 06625 0 01 06626 JMP *+1 3799 06626 000013 EXA 3800 06627 0 10 06630 JST *+1 SET UP FOR 3801 06630 0 000000 DAC ** EXPECTED RUPT 3802 06631 0 02 06630 LDA *-1 3803 06632 0 06 06723 ADD =7 3804 06633 0 04 00057 STA '57 3805 06634 0 02 00005 LDA 5 3806 06635 000000 HLT MAKE A NOP FOR THE TIME 3807 06636 000000 HLT ERROR - DID NOT GET RUPT 3808 * 3809 06637 0 000000 DAC ** EXPECTED RUPT 3810 06640 0 02 06224 LDA BIT3 3811 06641 171020 OTK RESET RUPT MASK BUT LEAVE EXTEND MODE 3812 06642 0 10 06643 JST *+1 SET UP FOR 3813 06643 0 000000 DAC ** UNEXPECTED RUPT 3814 06644 0 02 06643 LDA *-1 3815 06645 0 06 06740 ADD ='13 3816 06646 0 04 00057 STA '57 3817 06647 000011 DXA 3818 06650 0 01 06651 JMP *+1 NORMAL MODE 3819 06651 0 02 06724 LDA ='77 3820 06652 0 04 00003 STA 3 STORE ADDR AT STACK TOP 3821 06653 0 02 00005 LDA 5 LOAD FROM STACK TOP AND POP 3822 06654 101000 NOP 3823 06655 0 01 06660 JMP *+3 JUMP AROUND 3824 * 3825 06656 0 000000 DAC ** UNEXPECTED RUPT 3826 06657 000000 HLT ERROR 3827 06660 0 12 00000 IRS 0 CHECKED ALL POSSIBLE UNDFLO CASES 3828 06661 100000 SKP 3829 06662 0 01 06666 JMP *+4 3830 06663 0 02 06230 LDA LADD MODIFY FOR NEXT 3831 06664 0 06 06727 ADD ='100 UNDERFLOW POINT 3832 06665 0 01 06621 JMP X13M+2 3833 * 3834 06666 101000 NOP 3835 06667 0 35 06726 LDX =-20 3836 06670 0 02 06722 LDA ='160 3837 06671 0 04 00003 STA 3 3838 06672 0 02 06226 LDA BT35
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 81

3839 06673 171020 OTK SET RUPT MASK AND EXTEND MODE 3840 06674 0 10 06675 JST *+1 SET UP FOR 3841 06675 0 000000 DAC ** EXPECTED RUPT 3842 06676 0 02 06675 LDA *-1 3843 06677 0 06 06737 ADD =10 3844 06700 0 04 00057 STA '57 3845 06701 000011 DXA 3846 06702 0 01 06703 JMP *+1 NORMAL MODE 3847 06703 0 02 00005 LDA 5 LOAD FROM STACK TOP AND POP 3848 06704 0 12 00000 IRS 0 ARE WE DONE, DID NE GET RUPT 3849 06705 0 01 06703 JMP *-2 NO, GET ANOTHER WORD 3850 06706 000000 HLT FINISHED BUT RUPT DID NOT OCCUR 3851 * 3852 06707 0 000000 DAC ** EXPECTED RUPT 3853 06710 0 02 06721 LDA ='53 SET UP FOR UNEXPECTED 3854 06711 0 04 00057 STA '57 OVERFLOW/UNDERFLOW RUPTS 3855 06712 140040 CRA 3856 06713 0 04 00053 STA '53 3857 06714 0 04 00054 STA '54 3858 06715 171020 OTK RESET THE MASK 3859 06716 0 01 06717 JMP *+1 3860 06717 101000 NOP 3861 06720 -0 01 06006 JMP* X13T RETURN 3862 * 3863 06721 000053 FIN 06722 000160 06723 000007 06724 000077 06725 000120 06726 177754 06727 000100 06730 177000 06731 001006 06732 001777 06733 177014 06734 000020 06735 000006 06736 000024 06737 000012 06740 000013 06741 000005 06742 000003 06743 037777 06744 000022 06745 000021 06746 000135 06747 052525 06750 177775 06751 000000 06752 000010
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 82

06753 000002 06754 177777 06755 000001 06756 177776 3864 * 3865 * 3866 * 716 TESTS PART II 3867 * 3868 ORG '7000 3869 * 3870 07000 0 000000 TS07 DAC ** 3871 07001 101000 NOP 3872 07002 0 10 07006 JST X7IT 3873 07003 101000 NOP 3874 07004 -0 01 07000 JMP* TS07 RETURN 3875 * 3876 * 3877 07005 000104 OCT 104 3878 07006 0 000000 X7IT DAC ** 3879 07007 0 02 07005 LDA *-2 3880 07010 0 04 00777 STA '777 SAVE THE TEST NO. 3881 * 3882 * 3883 * TEST THAT AN INTERRUPT IS INHIBITED FOR AT LEAST TWO INSTRUCTIONS 3884 * AFTER A 'JST' 3885 *' 3886 07011 101000 NOP 3887 07012 0 02 07547 LDA ='40 3888 07013 74 0020 SMK '20 SET ASR MASK 3889 07014 000013 EXA 3890 07015 0 10 07016 JST *+1 SET UP FOR RUPT 3891 07016 0 000000 DAC ** 3892 07017 0 02 07016 LDA *-1 3893 07020 000011 DXA 3894 07021 0 01 07022 JMP *+1 NORMAL MODE 3895 07022 0 06 07546 ADD ='26 3896 07023 0 04 00063 STA '63 3897 07024 14 0104 OCP '104 GET OUTPUT MODE 3898 07025 34 0104 SKS '104 3899 07026 0 01 07025 JMP *-1 WAIT TILL NOT BUSY 3900 07027 140040 CRA 3901 07030 000401 ENB ENABLE RUPTS 3902 07031 0 10 07032 JST *+1 THIS GIVES TWO MORE INSTR BEFORE RUPT 3903 07032 0 000000 DAC ** 3904 07033 0 02 07545 LDA =1 FIRST INSTRUCTION 3905 07034 0 10 07035 JST *+1 SECOND INSTRUCTION BUT IS JST 3906 07035 0 000000 DAC ** SO WE GET TWO MORE INSTRUCTIONS 3907 07036 0 02 07544 LDA =2 FIRST INSTRUCTION 3908 07037 0 10 07040 JST *+1 SECOND INSTRUCTION BUT JST
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 83

3909 07040 0 000000 DAC ** SO WE GET TWO MORE INSTRUCTIONS 3910 07041 0 02 07543 LDA =3 FIRST INSTRUCTION 3911 07042 001001 INH SECOND INSTRUCTION - NO RUPTS ALLOWED 3912 07043 0 01 07046 JMP *+3 3913 * 3914 07044 0 000000 DAC ** 3915 07045 000000 HLT WRONG RUPT - CHECK A REGISTER 3916 * 3917 07046 000013 EXA 3918 07047 0 10 07050 JST *+1 SET UP FOR ANOTHER RUPT 3919 07050 0 000000 DAC ** 3920 07051 0 02 07050 LDA *-1 3921 07052 000011 DXA 3922 07053 0 01 07054 JMP *+1 NORMAL MODE 3923 07054 0 06 07542 ADD ='22 3924 07055 0 04 00063 STA '63 STORE RETURN ADDRESS 3925 07056 0 35 07541 LDX =0 3926 07057 140040 CRA 3927 07060 000401 ENB ENABLE RUPTS 3928 07061 0 10 07062 JST *+1 JST SHOULD GIVE TWO FREE INSTRUCTIONS 3929 07062 0 000000 DAC ** 3930 07063 0 12 00000 IRS 0 FIRST INSTRUCTION - DOES NOT COUNT 3931 07064 0 12 00000 IRS 0 SECOND INSTRUCTION - DOES NOT COUNT 3932 07065 0 12 00000 IRS 0 THIRD INSTRUCTION - DOES NOT COUNT 3933 07066 0 02 07545 LDA =1 FOURTH INSTRUCTION - REALLY THE FIRST 3934 07067 0 02 07544 LDA =2 FIFTH INSTRUCTION - REALLY SECOND INSTR. 3935 07070 0 02 07543 LDA =3 SIXTH INSTRUCTION 3936 07071 000000 HLT DID NOT GO TO RUPT 3937 * 3938 07072 0 000000 DAC ** RUPT ENTRY 3939 07073 000011 DXA 3940 07074 0 01 07075 JMP *+1 NORMAL MODE 3941 07075 0 07 07544 SUB =2 3942 07076 100040 SZE 3943 07077 000000 HLT DID NOT RUPT AFTER FIVE INSTRUCTIONS 3944 * CHECK A-REG 3945 * 3946 * 3947 * TEST JMP/JST TRACE RUPTS 3948 * 3949 07100 101000 NOP 3950 07101 000013 EXA 3951 07102 0 10 07103 JST *+1 SET UP FOR RUPT 3952 07103 0 000000 DAC ** 3953 07104 0 02 07103 LDA *-1 3954 07105 0 06 07540 ADD ='14 3955 07106 0 04 00056 STA '56 3956 07107 000011 DXA 3957 07110 0 01 07111 JMP *+1 3958 07111 0 02 07506 LDA BIT8 SET RUPT MASK
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 84

3959 07112 171020 OTK 3960 07113 0 01 07114 JMP *+1 ONE FREE JUMP 3961 07114 0 01 07115 JMP *+1 MUST GO TO RUPT 3962 07115 000000 HLT 3963 07116 000000 HLT DID NOT GET RUPT 3964 * 3965 07117 0 000000 DAC ** RUPT ENTRY 3966 07120 -0 02 07117 LDA* *-1 3967 07121 100040 SZE 3968 07122 000000 HLT ERROR, DID NOT GET FREE JUMP 3969 * 3970 07123 000013 EXA 3971 07124 0 10 07125 JST *+1 SET UP FOR NEXT RUPT 3972 07125 0 000000 DAC ** 3973 07126 0 02 07125 LDA *-1 3974 07127 0 06 07540 ADD =12 3975 07130 0 04 00056 STA '56 3976 07131 000011 DXA 3977 07132 0 01 07133 JMP *+1 3978 07133 0 02 07506 LDA BIT8 3979 07134 171020 OTK SET RUPT MASK 3980 07135 0 01 07136 JMP *+1 ONE FREE JUMP 3981 07136 0 10 07137 JST *+1 MUST GO TO RUPT 3982 07137 0 000000 DAC ** 3983 07140 000000 HLT ERROR, DID NOT GO TO RUPT 3984 * 3985 07141 0 000000 DAC ** RUPT ENTRY 3986 07142 -0 02 07141 LDA* *-1 3987 07143 100040 SZE 3988 07144 000000 HLT RUPT ON WRONG JST 3989 * 3990 * 3991 * TEST THAT AFTER AN OTK INSTRUCTION AN INTERRUPT IS HELD OFF, IF 3992 * THERE IS NO JUMP INSTRUCTION IN THE MEANTIME, FOR AT LEAST 3993 * 52 +/- 2 USECS. IN THAT CASE BIT 6 (THE DEFAULT BIT) IS SET. 3994 * 3995 07145 101000 NOP 3996 07146 34 0104 SKS '104 3997 07147 0 01 07146 JMP *-1 3998 07150 14 0104 OCP '104 3999 07151 000013 EXA 4000 07152 0 10 07153 JST *+1 SET UP FOR 4001 07153 0 000000 DAC ** ASR INTERRUPT 4002 07154 0 02 07153 LDA *-1 4003 07155 0 06 07546 ADD ='26 FORM RUPT ADDRESS 4004 07156 000011 DXA 4005 07157 0 01 07160 JMP *+1 NORMAL MODE 4006 07160 0 04 00063 STA '63 STORE AT '63 4007 07161 0 02 07547 LDA ='40 4008 07162 74 0020 SMK '20 SET ASR MASK
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 85

4009 07163 000043 INK 4010 07164 171020 OTK 4011 07165 000401 ENB 4012 07166 0 02 07537 LDA =-11 4013 07167 0 10 07432 JST WAIT 52 +/- 2 USECS FROM ENB TO NOP BEFORE INH 4014 07170 0 000000 DAC ** 4015 07171 101000 NOP 4016 07172 101000 NOP 4017 07173 101000 NOP 4018 07174 101000 NOP 4019 07175 001001 INH 4020 07176 101000 NOP 4021 07177 101000 NOP 4022 07200 0 01 07205 JMP OTKU 4023 * 4024 07201 0 000000 DAC ** RUPT ENTRY. 4025 07202 000011 DXA 4026 07203 0 01 07204 JMP *+1 4027 07204 000000 HLT RUPT TOOK LESS THAN 52 +/- 2 USECS. 4028 * 4029 07205 101000 OTKU NOP 4030 07206 000013 EXA 4031 07207 0 10 07210 JST *+1 SET UP FOR RUPT RETURN 4032 07210 0 000000 DAC ** 4033 07211 0 02 07210 LDA *-1 4034 07212 000011 DXA 4035 07213 0 01 07214 JMP *+1 NORMAL MODE 4036 07214 0 06 07536 ADD ='20 4037 07215 0 04 00063 STA '63 4038 07216 000043 INK 4039 07217 171020 OTK 4040 07220 000401 ENB 4041 07221 0 02 07535 LDA =-23 4042 07222 0 10 07432 JST WAIT 96 +/- 3 USECS FROM ENB TO NOP BEFORE INH 4043 07223 0 000000 DAC ** 4044 07224 101000 NOP 4045 07225 001001 INH 4046 07226 000000 HLT DID NOT GO TO RUPT WITHIN 96 +/- 3 USECS. 4047 07227 100000 SKP 4048 * 4049 07230 0 000000 DAC ** RUPT ENTRY 4050 07231 000043 INK 4051 07232 0 03 07505 ANA BIT6 4052 07233 101040 SNZ 4053 07234 000000 HLT DEFAULT BIT NOT SET 4054 * 4055 * TEST THAT STACK OVERFLOW RUPT WILL BE HELD OFF FOR 52 +/- 2 USECS. 4056 * IF NO JMP IS USED AFTER AN OTK 4057 * 4058 07235 101000 NOP
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 86

4059 07236 140040 CRA 4060 07237 0 04 07432 STA WAIT CLEAR INDEX BIT IF SET 4061 07240 0 02 07534 LDA ='77 4062 07241 0 04 00003 STA 3 4063 07242 0 02 07533 LDA ='4000 OVERFLOW MASK BIT 4064 07243 171020 OTK 4065 07244 0 01 07245 JMP *+1 4066 07245 000013 EXA 4067 07246 0 10 07247 JST *+1 SET UP FOR STACK OVERFLOW RUPT 4068 07247 0 000000 DAC ** 4069 07250 0 02 07247 LDA *-1 4070 07251 0 06 07532 ADD ='32 4071 07252 0 04 00057 STA '57 4072 07253 0 06 07543 ADD =3 4073 07254 0 04 07300 STA OTK1 4074 07255 000011 DXA 4075 07256 0 01 07257 JMP *+1 NORMAL MODE 4076 07257 000043 INK INPUT KEYS 4077 07260 171020 OTK 4078 07261 0 12 00003 IRS 3 CAUSE STACK OVERFLOW RUPT 4079 07262 0 02 07531 LDA =-10 4080 07263 0 10 07432 JST WAIT 52 +/- 2 USECS FROM IRS 3 TO STA '57 4081 07264 0 000000 DAC ** 4082 07265 000013 EXA 4083 07266 0 02 00000 LDA 0 DUMMY 4084 07267 0 02 07300 LDA OTK1 4085 07270 0 04 00057 STA '57 4086 07271 0 02 07531 LDA =-10 4087 07272 0 10 07432 JST WAIT 57 CYCLES FROM LDA =-12 TO NOP BEFORE HLT 4088 07273 0 000000 DAC ** 4089 07274 000000 HLT NO RUPT WITHIN 96 +/- 3 USECS. 4090 07275 101000 NOP 4091 07276 101000 NOP 4092 07277 0 01 07305 JMP *+6 4093 * 4094 07300 000000 OTK1 BSZ 1 4095 * 4096 07301 0 000000 DAC ** RUPT ENTRY 4097 07302 000000 HLT GOT RUPT BEFORE 52 +/- 2 USECS 4098 07303 100000 SKP 4099 * 4100 07304 0 000000 DAC ** CORRECT RUPT ENTRY 4101 07305 101000 NOP 4102 07306 0 02 00003 LDA 3 4103 07307 0 07 07530 SUB ='100 4104 07310 100040 SZE 4105 07311 000000 HLT STACK DID NOT INCREMENT 4106 07312 000043 INK 4107 07313 0 03 07505 ANA BIT6 DEFAULT BIT MUST BE SET 4108 07314 101040 SNZ
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 87

4109 07315 000000 HLT DEFAULT BIT NOT SET 4110 * 4111 * 4112 * CAUSE REAL TIME CLOCK INTERRUPT AND THEN STACK O/FLOW INTERRUPT 4113 * AND VERIFY THAT THE 2ND RUPT IS INHIBITED FOR 52 +/- 2 MICRO- 4114 * SECONDS IF NO JMP INSTRUCTION IS ENCOUNTERED WITHIN THAT TIME. 4115 * ALSO TEST THAT BIT 9 OF THE INPUT KEYS (PRIV/ENB FLOP BIT) IS 4116 * SET ON RUPT OCCURRING WITH ENB TRUE AND GETS RESET ON NEXT 4117 * PRIVILEGED RUPT REQUIRING NO 'ENB'. 4118 * 4119 07316 101000 NOP 4120 07317 140040 CRA 4121 07320 0 04 07432 STA WAIT CLEAR INDEX BIT IF SET 4122 07321 0 02 07527 LDA =-2 4123 07322 0 04 00061 STA '61 4124 07323 000011 DXA 4125 07324 0 01 07325 JMP *+1 NORMAL NODE 4126 07325 0 02 07545 LDA =1 4127 07326 74 0020 SMK '20 SET RTC RUPT MASK 4128 07327 0 02 07534 LDA ='77 4129 07330 0 04 00003 STA 3 INITIALIZE STACK 4130 07331 0 02 07533 LDA ='4000 4131 07332 171020 OTK SET STACK OVERFLOW RUPT MASK 4132 07333 0 01 07334 JMP *+1 4133 07334 000013 EXA 4134 07335 0 10 07336 JST *+1 SET UP FOR OVERFLOW RUPT RETURN 4135 07336 0 000000 DAC ** 4136 07337 0 02 07336 LDA *-1 4137 07340 0 06 07526 ADD ='12 4138 07341 0 04 00057 STA '57 4139 07342 0 06 07525 ADD =4 4140 07343 0 04 07345 STA *+2 4141 07344 100000 SKP 4142 07345 000000 X797 BSZ 1 4143 07346 101000 NOP 4144 07347 0 01 07366 JMP X798 4145 * 4146 07350 0 000000 DAC ** OVERFLOW RUPT RETURN 4147 07351 101000 NOP 4148 07352 000000 HLT GOT RUPT BEFORE 52 +/- 2 USECS. 4149 07353 100000 SKP 4150 * 4151 07354 0 000000 DAC ** OVERFLOW RUPT RETURN 4152 07355 000043 INK 4153 07356 0 03 07505 ANA BIT6 SEPARATE BIT 6 4154 07357 101040 SNZ MUST BE SET 4155 07360 000000 HLT DEFAULT BIT NOT SET 4156 07361 000043 INK 4157 07362 0 03 07507 ANA BIT9 4158 07363 100040 SZE MUST BE ZERO
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 88

4159 07364 000000 HLT PRIV/ENB FLOP DID NOT GET RESET 4160 07365 0 01 07441 JMP X799 4161 * 4162 * 4163 07366 101000 X798 NOP ALREADY IN EXTD MODE 4164 07367 0 10 07370 JST *+1 SET UP FOR RTC INTERRUPT 4165 07370 0 000000 DAC ** 4166 07371 0 02 07370 LDA *-1 4167 07372 0 06 07524 ADD ='13 4168 07373 000011 DXA 4169 07374 0 01 07375 JMP *+1 NORMAL MODE 4170 07375 0 04 00063 STA '63 4171 07376 000401 ENB ENABLE RUPTS 4172 07377 14 0020 OCP '20 START THE CLOCK 4173 07400 0 02 00061 LDA '61 4174 07401 0 01 07400 JMP *-1 WAIT FOR RTC RUPT 4175 07402 000000 HLT 4176 * 4177 07403 0 000000 DAC ** RTC RUPT ENTRY 4178 07404 14 0220 OCP '220 STOP THE CLOCK 4179 07405 101000 NOP 4180 07406 000043 INK 4181 07407 0 03 07507 ANA BIT9 SEPARATE BIT 9 4182 07410 101040 SNZ MUST BE SET 4183 07411 000000 HLT PRIV/ENB FLOP NOT SET 4184 07412 0 02 00005 LDA 5 CAUSE STACK UNDERFLOW 4185 07413 101000 NOP 4186 07414 0 02 07541 LDA =0 DUMMY INST 4187 07415 0 02 07541 LDA =0 DUMMY INST 4188 07416 0 02 07523 LDA =-8 4189 07417 0 10 07432 JST WAIT 52 +/- 2 USECS FROM OCP '220 T0 STA '57 4190 07420 0 000000 DAC ** GOOD RETURN 4191 07421 0 02 07345 LDA X797 4192 07422 0 04 00057 STA '57 SET UP FOR RUPT RETURN 4193 07423 0 02 07531 LDA =-10 4194 07424 0 10 07432 JST WAIT 57 CYCLE DELAY UNTIL HLT 4195 07425 0 000000 DAC ** 4196 07426 000000 HLT NO RUPT WITHIN 96 +/- 3 USECS. 4197 07427 101000 NOP 4198 07430 101000 NOP 4199 07431 0 01 07441 JMP X799 4200 * 4201 * 4202 * BASIC IO CYCLE DELAY. 5 CYCLE DELAY FOR EACH COUNT OVER 1. 4203 * 4204 07432 0 000000 WAIT DAC ** 4205 07433 100000 SKP 4206 07434 0 000000 DAC ** 4207 07435 141206 AOA 4208 07436 100040 SZE
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 89

4209 07437 0 10 07434 JST *-3 4210 07440 -0 10 07432 JST* WAIT RETURN 4211 * 4212 * 4213 * 4214 * CAUSE AN INTERRUPT TO RESET PMI 4215 * 4216 07441 101000 X799 NOP 4217 07442 001001 INH INHIBIT RUPTS 4218 07443 0 02 07534 LDA ='77 4219 07444 0 04 00003 STA 3 INITIALIZE STACK FOR UNDERFLOW 4220 07445 0 02 07533 LDA ='4000 4221 07446 171020 OTK 4222 07447 0 01 07450 JMP *+1 SET UNDERFLOW RUPT MASK BIT 4223 07450 000013 EXA 4224 07451 0 10 07452 JST *+1 FORM RUPT RETURN ADDRESS 4225 07452 0 000000 DAC ** 4226 07453 0 02 07452 LDA *-1 4227 07454 0 06 07540 ADD ='14 4228 07455 0 04 00057 STA '57 SET UP FOR RUPT RETURN 4229 07456 000011 DXA 4230 07457 0 01 07460 JMP *+1 NORMAL MODE 4231 07460 101000 NOP 4232 07461 0 12 00003 IRS 3 CAUSE STACK UNDERFLOW BY 'IRS' INSTRUCTION 4233 07462 101000 NOP 4234 07463 101000 NOP 4235 07464 000000 HLT DID NOT GO TO RUPT 4236 07465 100000 SKP 4237 * 4238 * 4239 07466 0 000000 DAC ** RUPT ENTRY 4240 07467 000011 DXA 4241 07470 0 01 07471 JMP *+1 NORMAL MODE 4242 07471 0 02 07522 LDA =-1 PUT ALL ONES IN 'A' 4243 07472 000043 INK 4244 07473 0 03 07521 ANA ='20200 4245 07474 100040 SZE 4246 07475 000000 HLT SOME BITS SET - CHECK A-REG 4247 * 4248 07476 140040 CRA 4249 07477 74 0020 SMK '20 4250 07500 171020 OTK 4251 07501 0 01 07502 JMP *+1 CLEAR ALL RUPT CONDITIONS 4252 07502 101000 NOP 4253 07503 101000 NOP 4254 07504 -0 01 07006 JMP* X7IT END SECTOR 7 TESTS, RETURN 4255 * 4256 07505 002000 BIT6 OCT 2000 SUPPRESS RUPT DEFAULT FLOP BIT 4257 07506 000400 BIT8 OCT 400 JMP/JST TRACE RUPT MASK BIT 4258 07507 000200 BIT9 OCT 200 PRIVILEGED/ENB RUPT FLOP BIT
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 90

4259 * 4260 * 4261 * 1.5 SECOND DELAY ROUTINE 4262 * 4263 07510 0 000000 DLY DAC ** 4264 07511 0 35 07520 LDX =-6 4265 07512 0 12 07517 IRS DLY1 4266 07513 0 01 07512 JMP *-1 4267 07514 0 12 00000 IRS 0 4268 07515 0 01 07512 JMP *-3 4269 07516 -0 01 07510 JMP* DLY RETURN 4270 * 4271 07517 000000 DLY1 BSZ 1 4272 * 4273 07520 177772 FIN 07521 020200 07522 177777 07523 177770 07524 000013 07525 000004 07526 000012 07527 177776 07530 000100 07531 177766 07532 000032 07533 004000 07534 000077 07535 177751 07536 000020 07537 177765 07540 000014 07541 000000 07542 000022 07543 000003 07544 000002 07545 000001 07546 000026 07547 000040 4274 * 4275 * 4276 * 4277 ORG HERE 4278 * 4279 * TIME COMPENSATION TABLE FOR VARIOUS COMPUTERS 4280 * 4281 00521 0 000521 CNTZ DAC * 4282 00522 173620 DEC -2160 FOR 4K CPU 4283 00523 177014 DEC -500 FOR 8K CPU 4284 00524 177374 DEC -260 FOR 12K CPU
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 91

4285 00525 177540 DEC -160 FOR 16K CPU 4286 00526 177564 DEC -140 FOR 20K CPU 4287 00527 177641 DEC -95 FOR 24K CPU 4288 00530 177677 DEC -65 FOR 28K CPU 4289 00531 177723 DEC -45 FOR 32K CPU 4290 * 4291 * 4292 * 4293 * TABLES TO BE USED IN SECTOR 3 AND 4 TESTS 4294 * 4295 00532 100000 OCT 100000 4296 00533 040000 OCT 40000 4297 00534 120000 OCT 120000 4298 00535 050000 OCT 50000 4299 00536 124000 OCT 124000 4300 00537 052000 OCT 52000 4301 00540 125000 OCT 125000 4302 00541 052400 OCT 52400 4303 00542 125200 OCT 125200 4304 00543 052500 OCT 52500 4305 00544 125240 OCT 125240 4306 00545 052520 OCT 52520 4307 00546 125250 OCT 125250 4308 00547 052524 OCT 52524 4309 00550 125252 OCT 125252 4310 00551 052525 SKNA OCT 52525 4311 00552 100000 OCT 100000 4312 00553 140000 OCT 140000 4313 00554 160000 OCT 160000 4314 00555 170000 OCT 170000 4315 00556 174000 OCT 174000 4316 00557 176000 OCT 176000 4317 00560 177000 OCT 177000 4318 00561 177400 OCT 177400 4319 00562 177600 OCT 177600 4320 00563 177700 OCT 177700 4321 00564 177740 OCT 177740 4322 00565 177760 OCT 177760 4323 00566 177770 OCT 177770 4324 00567 177774 OCT 177774 4325 00570 177776 OCT 177776 4326 00571 177777 SKNB OCT 177777 4327 00572 100000 OCT 100000 4328 00573 040000 OCT 40000 4329 00574 020000 OCT 20000 4330 00575 010000 OCT 10000 4331 00576 004000 OCT 4000 4332 00577 002000 OCT 2000 4333 00600 001000 OCT 1000 4334 00601 000400 OCT 400
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 92

4335 00602 000200 OCT 200 4336 00603 000100 OCT 100 4337 00604 000040 OCT 40 4338 00605 000020 OCT 20 4339 00606 000010 OCT 10 4340 00607 000004 OCT 4 4341 00610 000002 OCT 2 4342 00611 000001 SKNC OCT 1 4343 00612 000001 OCT 1 4344 00613 000002 OCT 2 4345 00614 000004 OCT 4 4346 00615 000010 OCT 10 4347 00616 000020 OCT 20 4348 00617 000040 OCT 40 4349 00620 000100 OCT 100 4350 00621 000200 OCT 200 4351 00622 000400 OCT 400 4352 00623 001000 OCT 1000 4353 00624 002000 OCT 2000 4354 00625 004000 OCT 4000 4355 00626 010000 OCT 10000 4356 00627 020000 OCT 20000 4357 00630 040000 OCT 40000 4358 00631 100000 SKND OCT 100000 4359 00632 125253 OCT 125253 4360 00633 052527 OCT 052527 4361 00634 125256 OCT 125256 4362 00635 052535 OCT 052535 4363 00636 125272 OCT 125272 4364 00637 052565 OCT 052565 4365 00640 125352 OCT 125352 4366 00641 052725 OCT 052725 4367 00642 125652 OCT 125652 4368 00643 053525 OCT 053525 4369 00644 127252 OCT 127252 4370 00645 056525 OCT 056525 4371 00646 135252 OCT 135252 4372 00647 072525 OCT 072525 4373 00650 165252 OCT 165252 4374 00651 152525 SKNE OCT 152525 4375 00652 137777 TSTX OCT 137777 4376 00653 177777 OCT 177777 4377 00654 177776 OCT 177776 4378 00655 177775 OCT 177775 4379 00656 177773 OCT 177773 4380 00657 177767 OCT 177767 4381 00660 177757 OCT 177757 4382 00661 177737 OCT 177737 4383 00662 177677 OCT 177677 4384 00663 177577 OCT 177577
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 93

4385 00664 177377 OCT 177377 4386 00665 176777 OCT 176777 4387 00666 175777 OCT 175777 4388 00667 173777 OCT 173777 4389 00670 167777 OCT 167777 4390 00671 157777 OCT 157777 4391 00672 137777 TSTB OCT 137777 4392 00673 077777 TSTV OCT 77777 4393 00674 000000 OCT 0 4394 00675 000001 OCT 1 4395 00676 000003 OCT 3 4396 00677 000007 OCT 7 4397 00700 000017 OCT 17 4398 00701 000037 OCT 37 4399 00702 000077 OCT 77 4400 00703 000177 OCT 177 4401 00704 000377 OCT 377 4402 00705 000777 OCT 777 4403 00706 001777 OCT 1777 4404 00707 003777 OCT 3777 4405 00710 007777 OCT 7777 4406 00711 017777 OCT 17777 4407 00712 037777 OCT 37777 4408 00713 077777 TSTC OCT 77777 4409 00714 125252 TSTU OCT 125252 4410 00715 177777 OCT 177777 4411 00716 177776 OCT 177776 4412 00717 177775 OCT 177775 4413 00720 177772 OCT 177772 4414 00721 177765 OCT 177765 4415 00722 177752 OCT 177752 4416 00723 177725 OCT 177725 4417 00724 177652 OCT 177652 4418 00725 177525 OCT 177525 4419 00726 177252 OCT 177252 4420 00727 176525 OCT 176525 4421 00730 175252 OCT 175252 4422 00731 172525 OCT 172525 4423 00732 165252 OCT 165252 4424 00733 152525 OCT 152525 4425 00734 125252 TSTD OCT 125252 4426 00735 052525 TSTR OCT 52525 4427 00736 000000 OCT 0 4428 00737 000001 OCT 1 4429 00740 000002 OCT 2 4430 00741 000005 OCT 5 4431 00742 000012 OCT 12 4432 00743 000025 OCT 25 4433 00744 000052 OCT 52 4434 00745 000125 OCT 125
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 94

4435 00746 000252 OCT 252 4436 00747 000525 OCT 525 4437 00750 001252 OCT 1252 4438 00751 002525 OCT 2525 4439 00752 005252 OCT 5252 4440 00753 012525 OCT 12525 4441 00754 025252 OCT 25252 4442 00755 052525 TSTE OCT 52525 4443 * 4444 * 4445 * 4446 00756 0 000000 BSCT DAC ** 4447 00757 0 35 00765 LDX IXD1 (M) TO (X) 4448 00760 1 02 00074 LDA 60,1 (M) TO (A) INDEXING 4449 00761 0 06 00774 ADD ='052526 DATA 4450 00762 100040 SZE 4451 00763 000000 HLT ERROR 4452 00764 -0 01 00756 JMP* BSCT 4453 00765 0 004500 IXD1 DAC IXC1-60 4454 * 4455 00766 0 000770 STIR DAC WORK 4456 00767 0 000772 LDIR DAC WORK+2 4457 00770 000000 WORK BSZ 3 4458 00773 0 007510 DLAY DAC DLY 4459 * 4460 * 4461 00774 052526 FIN 4462 END '1000 ADD1 001672A ADD2 002020A ADD3 002113A ADDS 001341A ADLO 001560A ADSB 002175A ALRA 003470A ALRB 003476A ALRD 003502A ALRG 003532A ALRS 003534A ALSA 003300A ALSB 003306A ALSD 003312A ALSG 003342A ALSS 003344A ANAA 002521A ANAB 002527A ARRA 003536A ARRB 003544A ARRD 003550A ARRG 003600A ARRS 003602A ARSA 003224A ARSB 003232A ARSD 003236A ARSG 003274A ARSS 003276A ASNR 005156A ASRB 005162A BIT3 006224A BIT4 006225A BIT6 007505A BIT8 007506A BIT9 007507A BSCT 000756A BT35 006226A BUST 005077A CASA 002563A CASB 002573A CASN 002616A CASX 002622A CN01 000426A CN02 000427A CN03 003156A CNT5 002747A CNTX 000434A CNTY 000455A CNTZ 000521A COMM 005403A COMN 005524A CON1 002713A CON2 002714A CON3 002715A CON4 002716A CON5 002717A CON6 002720A CON7 002721A CON8 002722A CON9 003222A D20K 000324A D20L 000257A DC01 000230A DC02 000231A DC03 000237A DC04 000240A DCCR 000467A DHLT 005165A DHSC 000460A DIV 005417A DIV1 005255A DIV2 005262A DIVA 005450A DIVB 005455A DIVC 005462A DIVH 005517A DIVN 005467A DIVS 005475A DIVT 005241A DIVU 005515A
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 95

DIVX 005451A DIVY 005506A DIVZ 005453A DLAY 000773A DLY 007510A DLY1 007517A DMSG 000445A DPFM 003757A EA01 000300A EFL1 000424A EFL2 000425A EOPI 000335A ERAA 002464A FIVE 000442A FOUR 000441A GENO 001016A HADD 006227A HALT 005106A HERE 000521A HERR 001574A HERS 001660A HERT 001661A HISC 000464A HSCD 000447A HSCT 000465A HSE1 005533A HSEC 005527A HWDT 002624A IABA 002362A IABB 002373A IABV 002416A IABW 002417A IABX 002415A IENL 005163A IMAA 002323A IN00 000145A IN01 000155A IN02 000171A IN03 000211A IN04 000213A IN05 000304A IN06 000320A IN07 000301A IN08 000177A IN09 000206A IN10 000270A INC1 000372A INC2 000375A INDA 002230A INDR 004570A INDX 003142A IRP1 005016A IRSA 002442A IRSB 002446A IRSD 002432A IRSG 002455A IRSX 002421A IRUP 005010A ITMP 005164A IXC1 004574A IXD1 000765A JPTB 004455A KEY1 003174A KEY2 003221A KEYS 003160A LADD 006230A LD10 000452A LDIR 000767A LDM7 000451A LGLA 003346A LGLB 003354A LGLD 003360A LGLG 003411A LGLS 003410A LGRA 003414A LGRB 003422A LGRD 003426A LGRG 003464A LGRS 003466A LLLA 004070A LLLB 004124A LLLC 004130A LLLG 004164A LLLS 004166A LLRA 004253A LLRB 004261A LLRC 004265A LLRG 004317A LLRS 004321A LLSA 004013A LLSB 004021A LLSC 004025A LLSG 004064A LLSS 004066A LM24 000457A LOCT 001544A LRLA 004170A LRLB 004176A LRLC 004202A LRLG 004247A LRLS 004251A LRRA 004323A LRRB 004331A LRRC 004335A LRRG 004367A LRRS 004371A LRSA 003627A LRSB 003635A LRSG 003722A LRSH 003657A LRSS 003724A MDCT 005237A MES1 005605A MES2 002742A MES3 002723A MES4 002751A MES5 004752A MESS 005562A MLNN 005375A MMSZ 004741A MOOV 000456A MOVE 004715A MPY 005303A MPY1 005203A MPY2 005205A MPY3 005213A MPYA 005314A MPYB 005317A MPYC 005324A MPYN 005371A MPYS 005340A MPYT 005167A MV01 000226A MVEA 000310A MVEB 000330A N1 006243A N2 006342A N3 006351A N4 006363A N5 006405A N6 006435A NDTS 004573A NSRT 000120A NXMV 000215A ONE 000436A OTK1 007300A OTKU 007205A OTNT 000454A PATX 005561A PCRT 000435A PFIB 003744A PFIC 003751A PFID 003752A PFIS 003726A PNT1 000430A PNT2 000431A PNTR 006223A PRCH 000411A PTRN 002462A RECY 000262A RRST 004567A S47R 005733A SASO 005101A SB47 000453A SEVN 000444A SFFX 004572A SFFY 004571A SFQQ 004410A SFRR 004411A SFT 003605A SFTA 004416A SFTB 004566A SFTT 004374A SFTX 003622A SFTY 003623A SFTZ 003624A SFXX 004412A SFXY 003625A SFYY 004413A SFZZ 004414A SHFQ 003620A SHFR 003621A SHFT 003603A SHXT 004372A SIX 000443A SKNA 000551A SKNB 000571A SKNC 000611A SKND 000631A SKNE 000651A SKNG 004614A SKNH 004634A SKNJ 004654A SKNK 004674A SKNL 004714A SR10 001606A SR20 001621A SR30 001634A SR40 001647A SS10 001601A
* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 96

SS1A 001612A SS20 001614A SS2A 001625A SS30 001627A SS3A 001640A SS40 001642A SS4A 001653A ST5 000347A STIR 000766A STR2 000162A STTA 004456A STTB 004463A STTC 004470A STTD 004475A STTE 004502A STTF 004517A STTG 004534A STTH 004536A STTJ 004437A STTK 004545A STTL 004432A SUB7 000450A SWCH 001546A SXTX 004407A T2AB 002474A T2AW 002514A T2AX 002515A T2AY 002516A T2XZ 002517A TAAB 001701A TAAC 001713A TAAE 001730A TAAV 001735A TAAY 001734A TAAZ 001733A TABB 002030A TABY 002047A TABZ 002050A TACB 002125A TACC 002140A TACD 002150A TACJ 002160A TACK 002167A TACL 002170A TACM 002171A TACN 002172A TACP 002173A TBAB 002203A TBAX 002225A TBAY 002226A TBBD 002551A TBBS 002557A TBBT 002560A TBBY 002561A TBNE 002543A TEMP 001543A TEWL 001655A THAB 002246A THAT 002320A THAV 002311A THAZ 002321A THRI 000440A TIAB 002336A TIAQ 002356A TIAX 002357A TIAZ 002360A TMP1 000461A TPYA 002461A TS01 001004A TS02 002000A TS03 003000A TS04 004000A TS05 005000A TS06 006000A TS07 007000A TS2 000432A TS3 000433A TSST 001670A TST1 003026A TST2 003042A TST4 003113A TSTA 003725A TSTB 000672A TSTC 000713A TSTD 000734A TSTE 000755A TSTR 000735A TSTU 000714A TSTV 000673A TSTX 000652A TWO 000437A TXBA 002051A TXBB 002052A TXBC 002053A TXBD 002066A TXBE 002054A TXBF 002055A TXBG 002056A TXBJ 002067A TXBK 002071A TXBP 002057A TYPE 000402A TYPW 001663A WAIT 007432A WORK 000770A X001 005233A X002 005234A X133 005655A X134 005703A X135 005705A X13A 006062A X13B 006107A X13C 006206A X13D 006231A X13I 006460A X13J 006475A X13K 006511A X13L 006524A X13M 006617A X13R 005615A X13S 000446A X13T 006006A X601 006221A X602 006222A X603 006361A X604 006403A X605 006423A X6AA 006300A X797 007345A X798 007366A X799 007441A X7IT 007006A XR01 003057A XR02 003074A XREG 003017A XRG0 001322A Y001 005235A Y002 005236A 0000 WARNING OR ERROR FLAGS DAP-16 MOD 2 REV. D 06-28-71
    Multiple Pages