Digital PDFs
Documents
Guest
Register
Log In
AH-T179B-MC
April 1984
135 pages
Original
6.4MB
view
download
OCR Version
5.4MB
view
download
Document:
CVTSEB0 TSV05 TSV05 DATA REL APR 1984 bw
Order Number:
AH-T179B-MC
Revision:
000
Pages:
135
Original Filename:
CVTSEB0__TSV05__TSV05_DATA_REL__AH-T179B-MC__APR_1984_bw.pdf
OCR Text
CVISEBO TSVOS DATA RELIABILITY MACRO M1113 30-NOV-83 B1 10:17 SEQ 001 .REM IOENTIFICATION PROOUCT COOE:; AC-T1788-MC PRODUCT NAME: CVTSEBO TSVOS OATA RELIABILITY PRODUCT DATE: 25-APR-82 MAINTAINER: CSS/PPG DIAGNOSTICS AUTHOR : OICK GORDON THE INFORMATION IN THIS OOCUMENT IS SUBJUECT TO CHANGE WITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT 8Y DIGITAL EQUIPHMENT CORPORATION. OIGITAL EQUIPHMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. NO RESPONSIBILITY IS ASSUMED FOR SOF TWARE ON EQUIPMENT THAT IS NOT AFFILIATED COMPANIES. THE USE SUPPLIED OR B8Y RELIABILITY OF DIGITAL OR ITS COPYRIGHT (C) 1982,1983 BY DIGITAL EQUIPMENT CORPORATION THE FOLLOWING ARE OIGITAL OEC TRADEMARKS OF DIGITAL EQUIPMENT CORPORATION: POP DECUS UNIBUS DECTAPE MASSBUS CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 30-NOV-83 48 49 50 10:17 Cl SEQ 002 USER DOCUMENTATION TABLE OF CONTENTS 51 S 53 S4 5SS 56 57 58 S9 60 61 62 63 64 65 66 67 68 69 GLOSSARY 1.0 GENERAL INFORMATION 1.1 PROGRAM ABSTRACT 1.1.1 1.1.2 1.1.3 1.1.4 FUNCTIONAL OESCRIPTION STRICTURE OF PROGRAM MEM Y MAP DIAGIOSTIC INFORMATION 1.1.4.1 SCOPE 1.1.4.2 ERROR RECOVERY 1.1.4.3 WRITE ERROR RECOVERY 1.1.4.3.1 MEOIA/OPERATION SELECTIVE RITE-ERROR-RECOVERY 1.1.4.3.2 OPERATIONA. WRITE-ERROR-RECOVERY 1.1.4.4 DIAGNOSTIC TIMING ADJUSTMENT 70 A 1.2 SYSTEM REQUIREMENTS 1.2.1 1.2.2 2.0 1.3 RELATED DOCUMENTS AND STANDARDS 1.4 DIAGNOSTIC HIERARCHY PREREQUISITES 1.5 ASSUMPTIONS OPERATING INSTRUCTIONS 2.1 HARDWARE PARAMETERS 2.2 SOF TWARE PARAMETERS 2.2.1 2.2.2 2.3 .PAGE HARDWARE REQUIREMENTS SOFTWARE REQUIREMENTS 2.4 TS05 COMMAND LIST DATA PATTERNS EXAMPLES OF SOF TWARE PARAMETER OIALOGUE 2.3.1 BASIC FUNCTION AND DATA RELIABILITY 2.3.2 2.3.3 SCOPE LOOP SET UP IN BASIC FUNCTIONS SCOPE LOOP SET UP IN DATA RELIABILITY WTM TH ALL ERROR REPORTING ENABLED EXECUTION TIMES CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 30-NOV-83 10:17 105 106 107 108 109 fi? D1 2.4.1 2.4.2 3.0 fig SEQ 003 SYSTEM CONFIGURATION TEST EXECUTION TIMES ERROR INFORMATION 3.1 114 1S 116 117 118 gg ERROR REPOR' ING 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 ERROR #1 - COMMAND PACKET ADORESS IS NOT ON A MODULO 4 BOUNDRY ERROR 02 - TSOS NOT READY ERROR #3 - NO RESPONSE ERRORS ERROR #4 - NO INTERRUPT ERROR SPECIAL CONDITION ERRORS 121 122 123 3.1.5.1 3.1.5.2 3.1.5.3 ERROR #5 ERROR #6 ERROR #7 127 igg 3.1.5.7 3.1.5.8 ERROR #11- TCC6, UNRECOVERABLE ERROR ERROR #12- TCC7., FATAL SUBSYSTEM ERROR 124 125 126 5.1.5.4 3.1.5.5 3.1.5.6 - TCCO, TCC1, TCC2, UNDEFINED SPECIAL CONDITION ATTENTION CONDITION TAPE STATUS ALERT ERROR #8 - TCCS, FUNCTION REJECT ERROR #9 - TCC4, RECOVERABLE ERROR ERROR #10- TCCS, RECOVERABLE ERROR 130 3.1.6 ERROR #13 - RFC NON-ZERO ERROR 132 3.1.8 ERROR #15 - TOO MANY INTERRUPTS 3.1.10 ERROR #17 - DATA COMPARE ERRORS 131 3.1.7 133 %gg 3.1.9 136 137 138 fig 141 i:g 3.2 5.0 TEST SUMMARIES S.1 TEST 1 - BASIC FUNCTIONS 5.3 5.4 S.% TEST 3 - WRITE COMPATABILITY/WRITE UTILITY TEST 4 - READ COMPATABILITY/READ UTILITY TEST S - RANDOM/OPERATOR SELECTED COMMAND SEQUENCE 5.2 146 147 i:g 150 ERROR MALTS PERFORMANCE REPORT 145 6.0 - RETRY LIMIT EXCEEDED ERROR 016 - CAPSTAN RUNAWAY 4.0 144 {gé ERROR 014 TEST 2 - DATA RELIABILITY DEVICE INFORMATION 153 6.1 GENERAL igz 6.3 BIT DEFINITIONS FOR TSVOS/TSOS REGISTERS 154 6.2 Q-BUS INTERFACE SPECIFICATIONS 157 6.3.1 159 6.3.2.1 TSVOS EXTENDED DATA BUFFER REGISTER (TSDBX) 161 6.3.4 158 160 6.5.2 6.3.3 TSVOS/TS0OS REGISTER SUMMARY TSVOS STATUS REGISTER (TSSR) EXTENDED STATUS REGISTER O (XSTATO) EXTENDED STATUS REGISTER 1 (XSTAT1) 30-NOV-83 10:17 6.3.5 6.3.6 6.3.7 SEQ 004 EXTENDED STATUS REGISTER 2 (XSTAT2) EXTEMDED STATUS REGISTER 3 (XSTAT3) EXTENDED STATUS REGISTER 4 (XSTAT4) 7.0 DIAGNOSTIC HISTORY 1.0 GENERAL INFORMATION ................... THIS PROGRAM CAN BE USED AS A BASIC FUNCTION TEST, TEST, OR A COMPATABILITY TEST, THIS OIAGNOSTIC IS A SINGLE PROGRAM FROM THE STANDPOINT OF THE OIAGNOSTIC USER, BUT IT CONTAINS A CONTROL MODULE RELEASED INDEPEND._NTLY AS A DIAGNOSTIC SUPERVISOR. MEMORY MAP B D o 2B 2 (2] w et 4 O OIAGNOSTIC SUPERVISOR oD OUD OGD O L X : ¥ X X O X O 2 41000 X O X § b4 VD O *O 3 X_ X_ X X_ I 8 1.1.3 218 A DATA RELIABILITY 1.1.2 STRUCTURE OF PROGRAM B 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 MACRO M1113 X_ X_ X_ J CVTSEBO TSVOS DATA RELIABILITY El CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 219 ) 221 222 ' 1 220 223 F1 30-NOV-83 10:17 1 TI1T7? 25 226 SEQ 005 ) XXOPe 1 1 1 ccecececcaccnana FREE MEMORY SPACE FOR WR/RD BFRS OR OTHER PUROSES 227 228 229 IS ALLOCATED BY THE SUPERVISOR ON REQUEST OR CHOOSEN BY PROGRAMMER TO RESIDE BETWEEN THE DIAG AND THE SUPERVISOR. 231 1.1.4 DIAGNOSTIC INFORMATION 233 1.1.4.1 SCOPE THIS DIAGNOSTIC CAN TEST ONE CONTROLLER AND UP TO 2 DRIVES. THE 2 DRIVES ARE ASSIGNED LOGICAL DRIVE NUMBERS O - 1 BY THE DIAGNOSTIC. o34 236 237 239 THERE ARE S TESTS IN THIS PROGRAM: a1 242 543 TEST 1 TEST 2 TEST S 245 TEST S - RANDOM/OPERATOR SELECTED SEQUENCE UTILITY. 244 247 - BASIC FUNCTIONS. - DATA RELIABILITY. - WRITE COMPATABILITY/WRITE UTILITY. TEST 4 - READ COMPATABILITY/READ UTILITY. 1.1.4.2 ERROR RECOVERY 250 251 252 253 255 257 258 259 261 262 264 265 266 268 269 249 ERROR RECOVERY IS PERFORMED ON READ, UNLESS ERROR RECOVERY IS INMIBITED BY THE OPERATOR AT START UP TIME. THE READ FORWARD/READ REVERSE RETRY LIMIT IS 16 (8 IN THE SAME DIRECTION AND 8 IN THE OPPOSITE DIRECTION). FOR MORE DETAILED INFORMATION ON ERROR RECOVERY PROCEDURES, REFER TO SECTION 3.0 (ERROR REPORTING) OF THIS LISTING. 1.1.4.3 WRITE ERROR RECOVERY THERE ARE 2 , SELECTABLE WRITE-ERROR-RECOVERY ALGORITHMS USED BY THIS DIAGNOSTIC: 1. MEOIA/OPERATIONAL SELECTIVE ALGORITHM 2. OPERATIONAL ALGORITHM BY DEFAULT THE DIAGNOSTIC SELECTS THE FIRST ALGORITHM TO IDENTIFY MEDIA RELATED WRITE ERRORS FROM OPERATIONAL ONES. TO SELECT THE SECOND ALGORITHM: ANSWER 'Y' TO CHANGL SW (L) ? ANSYER 'N' TO BAD TAPE SPOT DETECTION (L) Y ? IF ERROR RECOVERY IS INHIBITED, THE LATTER QUESTION IS NOT ASKEC AND BOTH ALGORITMMS ARE BYPASSED. WMRITE AND WMRITE TAPE MARK FUNCTIONS 211 1.1.4.3.1 MEDIA/OPERATIONAL SELECTIVE WRITE-ERROR-RECOVERY ALGORITHM 273 SCOPE 575 THIS ALGORITHM IDENTIFIES MEDIA RELATED WRITE ERRORS FROM CVTSEBO TSVOS DATA RELIABILITY g;? g;g MACRO M1113 30-NOV-83 10:17 Gl SEQ 006 OPERATIONAL ONES. ALGORITHM 280 281 A WRITE RETRY SUBROUTINE IS CALLED BY THE RECOVERABLE ERROR SUBROUTINE WHICH IS ENTERED UPON DETECTIION OF A WRITE RECOVERABLE ERROR. ggz 4 TIMES. 282 285 THE WRITE RETRY SUBROUTINE ATTEMPTS TO REWRITE THE RECORD IN SAME SPOT ON TAPE IF ALL 4 REPEATS ARE GOOD, THE RECORD IS CONSIDERED AS RECOVERED AND ggg A RECOVERABLE WRITE ERROR IS LOGGED AT THAT RECORD NUMBER s UgggCTED IF ANY OF THE 4 REWRITE ATTEMPTS FAIL, THE ROUTINE WILL ERASE THE BAD RECORD, 289 BAD SPOT AT THAT RECORD NUMBER,THE ROUTINE WILL THEN ATTEMPT TO 223; RETRY 290 WRITE THE RECORD AGAIN 3 INCHES FURTHER DOWN TAPE AND THIS SEQUENCE 4 TIMES, FOR UP TO 4 REPEATS EACH. 293 IF A RECORD CANNOT BE WRITTEN WITHOUT RECOVERABLE ERRORS 296 297 THE RECOVERABLE ERROR SUBROUTINE THEN CONTINUES TO CALL THE WRITE RETRY SUBROUTINE, WHICH REISSUES THE GROUP OF 4 RETRIES, 300 301 302 TWENTY (20) BAD SPOTS MAXIMUM ARE ALLOWED PER BOT TO EOT PASS OF TAPE. WHEN 20 BAD SPOTS HAVE BEEN LOGGED, WETHER ON THME SAME RECORD NUMBER OR NOT, TAPE IS CONSIDERED DEFECTIVE: A BAD TAPE OVERFLOW MESSAGE IS PRINTED 22345 % &3 305 306 Aea%?éo THEN THE ROUTINE WILL ERASE THE RECORD AND UNTIL THE RECORD IS RECOVERED OR 20 BAD SPOTS HAVE BEEN AND THE UNIT IS REWOUND, AFTER 4 RETRIES, REPORT RETRY FAILED ON BAD SPOT. LOGGED . THEN DROPPED. OURING THE RECOVERY PROCESS, IT IS NECESSARY TO PERFORM SEVERAL TAPE POSITIONING OPERATIONS: SPACE REVERSE, ERASE. IF A POSITION ERROR IS DETECTED IN THE STATUS WORD DURING THOSE OPERATIONS, THEN THE RECOVERY ATTEMPT IS ggg : AN APPROPRIATE UNRECOVERABLE ERROR MESSAGE IS PRINTED AND THE UNIT IS DROPPED. 310 311 ALL BADLY WRITTEN RECORDS LOGGED WITH RECOVERABLE ERRORS ARE ERASED UNTIL RECOVERED, INCLUDING THE RECORD AT THE 20TH BAD SPOT, 314 315 316 317 BAD SPOTS ARE ERASED WITH ERASE GAPS FROM 3 TO 12 INCHES PER RETRY GROUP. UP TO 20 FEET OF ERASE GAP COULD RESWWLT WHEN RETRYING TO RECOVER A SINGLE RETMORD. THAT LONG S.RETCH OF BAD TAPE WOULD THEN BE LOGGED WITH 20 33%2 BAD SPOTS REPORTS 322 IF THE PRINTING OF RECOVERABLE ERRORS IS ENABLED, THE BAD SPOTS ON TAPE ARE 324 THE BAD SPOT ACTUALLY PRECEDES THE RECORD NUMBER THAT IDENTIFIES IT, g%g gig 323 325 ggg 328 329 330 331 332 AND LO SO THAT ALL RECOROS LEFT ON TAPE ARE KNOWN GOOD WRITTEN RECORCS. BAD SPOTS AT SAME RECORD NUMBER AND THE TAPE CONSIDERED DEFECTIVE. JDENTIFIED AS THEY ARE DETECTEOD. SINCE THE BAD RECORDS ARE ERASED UNTIL RECOVERED, THE NUMBER OF REPEATS AND RETRIES ATTEMPTED IS PRINTED, FROM WHICH THE LENGTH OF ERASE GAPS CAN BE OETERMINED: APPROXIMATELY 3 INCHES PER RETRY. THE STATISTICAL REPORT PRINTED AT THE END OF TEST 2 OR UPON A “PRINT” REQUEST, CONTAINS A SUMMARY OF THE BAD SPOTS LOGGED ON THE CURRENT PASS OF TAPE. IN THAT REPORT, ALL COUNTS ARE CUMULATIVE FROM PASS TO PASS, EXCEPT FOR THE NUMBER OF BAD SPOTS: IT RELATES TO A “BOT TO EOTV TAPE PASS" ONLY, FOR THIS PURPOSE, A "TAPE PASS” IS A WRITE PASS FROM BOT TO €EOT, OR FROM CVTSEBO TSVOS DATA RELIABILITY 333 LL 334 THE TESTS REQUESTED 335 336 337 338 MACRO M1113 30-NOV-83 10:17 H1 SEQ 007 BOT TO WHERE THE DIAGNOSTIC IS HALTED BEFORE REACHING EOT. OON'T CONFUSE THIS WITH A PASS B8Y THE SUPERVISOR WHICH IS DEFINED AS A RUN THROUGH A ON ALL UNITS SELECTED. THOSE PASSES ARE IDENTIFIED AS THE NUMBER OF WRITE RETRIES, "PASS” AND CUMULATIVE FROM PASS TO PASS, "EOP”. IS A GLOBAL COUNT OF HOW MANY TIMES THE GROUP OF 4 RETRIES HAS BEEN CALLED. THE NUMBER OF WRITE RECOVERABLE ERRORS EXCLUDES BAD TAPE SPOTS AND REFLECTS THE SPECIFICATIONS OF THE HARDWARE UNDER TEST. 7O CLEAR CUMULATIVE COUNTS, THE BAD TAPE SPOTS COUNT ANSWER 'Y’ TO: CLEAR COUNTERS (L) Y IS THEN CLEARED WHEN WRITING THE TAPE mon 80T7. IF TEST 2 IS HALTED, THEN RESTARTED OR CONTINUED, THE RECORD COUNT IS RESET TO ZERO AND THE BAD SPOT ID SHALL FOLLOW THAT RESET COUNT. SINCE ALL WRITTEN RECORDS ARE KNOWN GOOD, THE READ ERRORS CAN BE ATTRIBUTED TO TRANSIENT NOISE, TRANSIENT ELECTRICAL MALFUNCTIONS, OR CONTAMINANTS ON TAPE AS OPPOSED TO TAPE DEFECTS. THE SAME RECORDS MUST BE WRITTEN FROM TAPE PASS TO TAPE PASS FOR THE BAD SPOTS ID TO REMAIN CONSISTENT IN THOSE TAPE PASSES. EXAMPLE OF A PRINT OUT FOR A BAD SPOT ON TAPE: CVTISE SFT ERR 00009 ON UNIT 00 TST 002 SUB 000 PC: 012100 RECOVERABLE ERROR WRT CHMD FAILED - UNIT O PASS: 1 RECORD: 6 PREVIOUS CMD WAS WRT CHMOPKT TSBA RFC TSSR TCC 100205 002406 000000 100210 4 026600 000000 003107 XST0 XST1 XST2 XST3 XST4 000350 000002 100400 000000 000000 SUSPECT BAD SPOT AFTER 1 RETRY, 2 REPEAT SUSPECT BAD SPOT AFTER 2 RETRY, 1 REPEAT SUSPECT BAD SPOT AFTER 3 RETRY, 1 REPEAT SUSPECT BAD SPOT AFTER 4 RETRY, 3 REPEAT RETRY FAILED ON BAD SPOT...ERASED! SUSPECT BAD SPOT AFTER 1 RETRY, 1 REPEAT SUSPECT BAD SPOT AFTER 2 RETRY, 1 REPEAT CVTISE SFT ERR 00009 ON UNIT 00 TST 002 SUB 000 PC: RECOVERABLE ERQ0R WRT CMD FAILED - UNIT O PREVIOUS CMD WAS WRT CMOPKT 100205 026600 TSBA 002406 RFC 000000 000350 000002 XST1 XST2 000000 004000 XST0 100010 RECOVERED ON RETRY ¢ 1 PASS: 1 TSSR TCC 100210 4 XST3 000000 XST4 000000 RECORD:10210 012100 CVTSEBO TSVOS DATA RELIABILITY 390 391 392 MTMMACRO M1113 30-NOV-83 10:17 SEQ 008 *C OR>PRI 393 394 UNIT O PASS:: BYTES WRITTEN 1 RECORD:10210 0,272,279,691 396 BYTES READ REV 0,301,120,381 398 RECOVERABLE ERRORS 480 401 40§ 40 WRITE RETRIES 395 397 399 BYTES READ REV 0,301,123,654 WRT RDR RODF 0 0 0 1 UNRECOVERABLE ERRORS 2 BAD SPOTg 0 3 0 THIS6TAPE PASS PRECEDING RECORD ¢: 404 SPEC COND 406 DR> 408 409 THIS EXAMPLE SHOWS: RECORD 6 RECOVERED ON 2ND RETRY GROUP 405 407 410 411 412 413 2 :ig 420 421 422 423 424 425 :g{; 428 :gg 43} :gg 434 0 FATAL ) COMPARE 0 THE 2 BAD SPOTS RESIDE IN A 18 INCH ERASE GAP BETWEEN RECORDS S AND 6 RECORD 10210 RECOVERED ON 1ST RETRY OF 4 GOOD REPEATS 3 WRITE GROUP RETRIES ATTEMPTED, RESULTING IN: 1 RECOVERABLE WRT ERR FROM RECORD 10210 :{; a7 HARD 2 BAD SPOTS BETWEEN RECORDS S AND 6 1.1.4.3.2 OPERATIONAL WRITE-ERROR-RECOVERY ALGORITHM WHEN THIS ALGORITHM IS SELECTED, THE TSVOS WRITE RETRY COMMAND IS ISSUED UP TO 16 TIMES OR UNTIL RECORD IS RECOVERED, ON A WRITE RECOVERABLE ERROR. THE WRITE RETRY COMMAND CONSISTS OF A SPACE REVERSE OVER THE BAD RECORD, OF TAPE AND REWRITE OF THE RECORD. DOES NOT ALLOW THE DETECTECTION OF BAD SPOTS ON TAPE. THEREFORE NO BAD TAPE SPOTS STATUS IS PRINTED. IF RECORD CANNOT BE RECOVERED AFTER 16 WRITE RETRY COMMANDS. A RETRY LIMIT EXCEEDED IS FLAGGED AND UNIT IS DROPPED. 1.1.4.4 DIAGNOSTIC TIMING ADJUSTMENT A NUMBER OF SUPERVISOR TIMING DELAY MACROS, KNOWN AS WATCH DOG 43S DELAYS, 437 INTO AN INLINE NESTED LOOP PAIR. 436 438 439 440 441 ::g 444 445 446 THEN AN ERASE OF 3 INCHES THAT COMPOSITE COMMAND ARE CALLED BY THE DIAGNOSTIC TO WAIT FOR VARIOUS COMMANDS COMPLETION. THESE DELAYS ARE NOT CALIBRATED AND SIMPLY EXPANDS THE COUNT FOR THE OUTER LOOP COMES FROM THE VARIABLE ARGUMENT SUPPLIED B8Y THE DELAY CALLS. THE COUNT FOR THE INNER LOOP COMES FROM THE FIXED “HEADER"” ELEMENT “L$DLY", AS THE DIAGNOSTIC IS RUN ON DIFFERENT CPU'S, VARY IN LENGTH WITH MEMORY SPEED. THESE DELAYS WILL IF TIME-OUT OCCURS WHEN NO APPARENT MALFUNCTIONS IN THE TAPE UNIT IS EVIDENT, ALL TIMINGS OF THE DIAGNOSTIC MAY BE ADJJSTED TO MATCH MEMORY SPEED AND NOT RESULT IN TIME-QUTS, BY PATCHING CVTSEBO TSVOS DATA RELIABILITY 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 MACRO M1113 30-NOV-83 A PRESET COUNT OF SO0 RESIDES AT “L$DLY” IN LOCATION 2116 OF THE 1.2 SYSTEM REQUIREMENTS POP-11/23 PROCESSOR WITH 32K OR MORE OF MEMORY CONSOLE DEVICE (VT752,LA36,ETC.) PROGRAM LOAD DEVICE TSV05/7S05 1.2.2 SOFTWARE REQUIREMENTS DIAGNOSTIC SUPERVISOR 1.3 RELATED DOCUMENTS AND STANDARDS OIGITAL EQUIPMENT CORPORATION DOCUMENTS: 478 479 480 481 482 483 484 48S 486 500 501 502 503 “L$DLY". “HEADER” SECTION. 476 477 487 488 489 490 491 492 493 494 495 496 497 498 499 SEQ 009 THAT FIXEC DELAY ELEMENT 463 464 465 466 467 468 469 470 471 472 473 474 475 10:17 1. CIQPMAO XXDOPe. PROGRAMMER'S DATE: 14 ALY 1980. MANUAL; DOCUMENT 2. TSVOS TRANSPORT SUBSYSTEM USER’'S GUIDE; DATE: AUGUST 1982 3. TSVOS TRANSPORT SUBSYSTEM TECHNICAL MANUAL; DATE: AUGUST 1982 4. ODOCUMENT NUMBER EK-TSVO0S5-UG-001 AUGUST 1982 1.4 DIAGNOSTIC HIERARCHY PREREQUISITES L R DOCUMENT NUMBER EK-TSVOS-TM-001 TSVOS TRANSPORT SUBSYSTEM INSTALLATION MANUAL; DATE: i e R I T IR P SR S R A ) ORDER OF HOST CPU DIAGNOSTIC USAGE: 1) CONTROL LOGIC PROGRAM - ALL TESTS. (VTSA,VTSB,VTSC,VTSD) 2) DOATA RELIABILITY PROGRAM: A) B8) BASIC FUNCTION TEST. OATA RELIABILITY TEST. NUMBER AC-S296A-AC DOCUMENT NUMBER EK-TSVOS-IN-001 CVTSEBO TSVOS DATA RELIABILITY S04 50S 506 S 509 310 S11 g{g 514 MACRO M1113 30-NOV-83 10:17 I<1 SEQ 010 1.5 ASSUMPTIONS THE HARDWARE OTHER THAN THE SUBSYSTEM BEING TESTED IS ASSUMED TO WORK PROPERLY. FALSE ERRORS MAY BE REPORTED IF THE PROCESSOR, 00 NOT FUNCTION PROPERLY, VTSA,VTSB,VTSC, AND VTSD HMAVE ALL MEMORY, SUCESSFULLY RUN WITHOUT ERRORS. ETC., CVTSEBO TSVOS DATA RELIABILITY 3516 g{g 521 gg% 324 = 327 528 3233 MACRO M1113 L1 30-NOV-83 10:17 SEQ 011 2.0 OPERATING INSTRUCTIONS THIS SECTION CONTAINS A BRIEF DESCRIPTION OF THE RUNTIME SERVICES. FOR DETAILED INFORMATION, REFER TO THE XXDP+ USER’'S MANUAL (CHQUS). COMMANDS THERE ARE ELEVEN LEGAL COMMANDS FOR THE DIAGNOSTIC RUNTIME SERVICES (SUPERVISOR). THIS SECTION LISTS THE COMMANDS AND GIVES A VERY BRIEF DESCRIPTION OF THEM. ggé 533 534 COMMAND EFFECT START START THE DIAGNOSTIC FROM AN INITIAL STATE CONTINUE PROCEED CONTINUE AT TEST THAT WAS INTERRUPTED (AFTER tC) CONTINUE FROM AN ERROR HALT RESTART S35 536 537 THE XXDPe+ USER’'S MANUAL HAS MORE DETAILS. START THE OIAGNOSTIC WITHOUT INITIALIZING S38 ADD EXIT RETURN TO XXDP+ MONITOR (XXOP+ OPERATION ONLY!) 540 541 542 543 544 g:z ORGP PRINT DEACTIVATE A UNIT PRINT STATISTICAL INFORMATION (IF IMPLEMENTED 8Y THE DIAGNOSTIC) TYPE A LIST OF ALL DEVICE INFORMATION TYPE THE STATE OF ALL FLAGS CLEAR ALL FLAGS 539 S47 ;g gg(l) 554 A COMMAND CAN BE RECOGNIZED BY THE FIRST THREE CHARACTERS. YOU MAY, FOR EXAMPLE, AC-S296A-AC. 562 "STA” INSTEAD OF THE TSVOS DIAGNOSTIC IS A POP-11/23 gg; g‘l’ TYPE SUPERVISOR THE USER ENTRY IS IN QUOTES. B0OT THE DIAGNOSTIC XXDP MEDIA 365 566 567 ENTER UATE (DDO-MMM-YR): RESTART ADDRESS: 153726 SO HZ? N * <CR> * 569 THIS IS XXOPe+. 370 571 S72 DIAGNOSTIC COMPATIBLE POP-11 PROGRAMMER'S MANUAL “CIQPMAQ XXDP+ PROGRAMMERS MANUAL, NUMBER CHMOLBO XXDOP+ DL MONITOR 28K 568 SO ALL LOADING AND RUNTIME INSTRUCTIONS CAN BE REFERENCED IN THE 563 S64 “START", OPERATOR COMMANDS PROGRAM. 359 CONSIDERED TO BE ACTIVE AT START TIME OISPLAY FLAGS ZFLAGS 335 356 ACTIVATE A UNIT FOR TESTING (ALL UNITS ARE BOOTEDC VIA UNIT O LSI? N * ENTER DATE OR JUST <CR> * Y<CR> * TYPE “M” OR “H/L” FOR DETAILS R VTSEAO VTSEAOBINORS LOADED OIAG. RUN-TIME SERVICES REV D. APR 79 * CVTSEBO TSVOS DATA RELIABILITY HACRO M1113 M1 30-NOV-83 10:17 SEQ 012 573 S74 375 CVTSE-A-0 TSVOS DATA RELIABILITY UNIT IS TSVOS 577 578 SWITCHES 581 582 583 THERE ARE SEVERAL SWITCHES WHICH ARE USED TO MODIFY SUPERVISOR OPERATION. THESE SWITCHES ARE APPENDED TO THE LEGAL COMMANDS. ALL OF THE LEGAL SWITCHES ARE TABULATED BELOW WITH A BRIEF DESCRIPTION OF EACH. 376 N gg; IN THE DESCRIPTIONS BELOW, A DECIMAL NUMBER IS DESIGNATED BY "DDDDOD". ggg SWITCH EFFECT 588 589 590 /TESTS:LIST EXECUTE ONLY THOSE TESTS SPECIFIED IN THE LIST. LIST IS A STRING OF TEST NUMBERS, FOR EXAMPLE - /TESTS:1:5:7-10. 593 /PASS : DODOD 596 /EQP : DDDDD REPORT END OF PASS MESSAGE AFTER EVERY 598 599 ggg /UNITS:LIST TEST/ADD/DROP ONLY THOSE UNITS SPECIFIED IN THE LIST. LIST EXAMPLE - /UNITS:0:5:10-12 USE UNITS 0,5,10,11,12 (UNIT NUMBERS = 0-63) 591 592 gg‘s /FLAGS:FLGS S97 g% SPECIFIED FLAGS. DDODD PASSES ONLY. (DDOOD 1 TO 64000) PASS MESSAGES WILL BE PRINTED AFTER EACH 100 PASSES ONLY. A SWITCH CAN BE RECOGNIZED BY THE FIRST THREE CHARACTERS. YOU MAY, 612 BELOW IS A TABLE gig TESTS START RESTART CONTINUE PROCEED X X TYPE "/TES:1-5" INSTERD OF “/TESTS:1-5“, THAT SPECIFIES WHICH SWITCHES CAN BE USED BY EACM PASS FLAGS EOP UNITS X X X X X X X X X X X X 621 622 OROP ADD X b 624 625 626 627 628 OISPLAY FLAGS X 623 = THE EFFECT OF THIS COMMAND WILL BE: 1) TESTS 1 THROUGH S WILL BE EXECUTED, 2) ALL UNITS WILL TESTED 1000 TIMES AND 3) THE END OF FOR EXAMPLE, 620 SET START/TESTS:1-5/PASS:1000/E0P: 100 gh) 617 618 619 EXECUTE DCODD PASSES (DDODD = 1 TO 64000) EXAMPLE OF SWITCH USAGE: 2245 606 607 608 609 THIS LIST WILL CAUSE TESTS 1,5,7,8.9.,10 TO BE RUN. ALL OTHER TESTS WILL NOT BE RUN, PRINT ZFLAGS EXIT CVTSEBO TSVOS DATA RELIABILITY 630 g 633 634 635 636 03?7 638 639 80 1 0 MACRO M1113 N1 30-NOV-83 10:17 SEQ 013 FLAGS = FLAGS ARE USED TO SET UP CERTAIN OPERATIONAL PARAMETERS SUCH AS LOOPING ON ERROR, ALL FLAGS ARE CLEARED AT STARTUP AND REMAIN CLEARED UNTIL EXPLICITLY SET USING THE FLAGS SWITCH. FLAGS ARE ALSO CLEARED AFTER A START COMMAND UNLESS SET USING THE FLAG SWITCH. THE ZFLAGS COMMAND MAY ALSO BE USED TO CLEAR ALL FLAGS. WITH THE EXCEPTION OF THE START AND ZFLAGS COMMANDS, NO COMMANDS AFFECT THE STATE OF THE FLAGS; THEY REMAIN SET OR CLEARED AS SPECIFIED BY THE LAST FLAG SWITCH. g:g FLAG EFFECT 6A4 A4S 646 647 648 649 650 HOE HALT ON ERROR - CONTROL IS RETURNED TO RUNTIME SERVICES COMMAND MODE LOOP ON ERROR INMIBIT ALL ERROR REPORTS INHIBIT ALL ERROR REPORTS EXCEPT FIRST LEVEL (FIRST LEVEL CONTAINS ERROR TYPE, NMBER, PC, TEST AND UNIT) LOE IER» IBRe 651 IXEs 653 PRI 655 BOE 657 ISR 652 654 656 658 659 660 661 gg% DIRECT MESSAGES TO LINE PRINTER PNT PRINT TEST NUMBER AS TEST EXECUTES “BELL” ON ERROR UAM UNATTENDED MODE (NO MANUAL INTERVENTION) INHIBIT STATISTICAL REPORTS (DOES NOT APPLY TO DIAGNOSTICS WHICH DO NOT SUPPORT STATISTICAL REPORTING) IDR ADR INHIBIT PROGRAM DROPPING OF UNITS EXECUTE AUTODROP CODE Lor LOOP ON TEST ggg 666 667 668 669 g;g 672 673 674 675 676 677 &9 680 INNIBIT EXTENDED ERROR REPORTS ( THOSE CALLED BY PRINTX MACRO’'S) sERROR MESSAGES ARE DESCRIBED IN SECTION 3.1 SEE THE XXDP+ USER'S MANUAL FOR MORE DETAILS ON FLAGS. YOU MAY SPECIFY MORE THAN ONE FLAG WITH THE FLAG SWITCH. FOR EXAMPLE, TO CAUSE THE PROGRAM TO LOOP ON ERROR, INMIBIT ERROR REPORTS AND TYPE A “BELL” ON ERROR, YOU MAY USE THE FOLLOWING STRING: /FLAGS :LOE : IER:BOE 2.1 HARDWARE PARAMETERS e ON A “N” RESPONSE TO “CHANGE HMW?”, THE DIAG SHALL RUN ASSUMING ggé ONE UNIT AT TSDB = 683 684 ON A "Y* RESPONSE TO “CHANGE MW?7" QUESTION, THEN THE FOLLOWING QUESTIONS WILL BE ASKED ON A START COMMAND. THE 686 VALUE THAT WILL BE TAKEN ON A CARRIAGE RETURN RESPONCE. 685 172520 WITH A VECTOR = 224 AND DRIVE=0. VALUE LOCATED TO THE LEFT OF THE QUESTION MARK IS THE DEFAWLT CVTSEBO TSVOS DATA RELIABILITY 687 MTMMACRO M1113 B2 30-NOV-83 10:17 g:g TSOB 23? VECTOR (0) 224 g:g SELECT ORIVE 0-1 (0) 694 ADORESS (0) 172520 SEQ 014 ? ? ? THE VALIDITY OF THESE PARAMETERS CAN BE CHECKED BEFORE RUNNING THE TESTS 695 696 8Y SETTING THE FLAG “ADR” ON A STA, RES OR CON COMMAND. THE SO CALLED AUTO DROP CODE SHALL THEN BE EXECUTED AFTER THE INIT COOE 698 OF THE TSDB(S). 697 gg AND BEFORE THE HAROWARE TESTS ARE RUN. IF NO RESPONSE, WITH THE FOLLOWING MESSAGE: THAT CODE FIRST TESTS THE ADRRESS IT DROPS THE UNIT(S) IMMEODIATELY 701 ;8§ BUS TRAP AT XXXXXX INTERFACE BAD OR NOT SET 704 705 ON A RESPONSE FROM THE INTERFACE, ON-LINE ARE OROPPED IMMEDIATELY. 708 709 IF THE "ADR” FLAG IS NOT SET, THE READY AND OFF -LINE STATUS OF THE ORIVE IS CHECKED. A MESSAGE SHALL BE PRINTED EVERY SO OF TEN ;{é SHALL BE OROPPED AFTER A REASONABLE AMOUNT OF TIME. ;gg 710 ;%2 715 716 7117 ;{g ( XXXXXX = TSDB AD TO ABOVE ADORESS. BE RUN ON RESPONDING UNITS. ) THE UNITS THAT ARE NOT READY OR NOT THE HARDMARE TESTS SHALL THEN TO WARN THE OPERATOR OF DRIVES BEING NOT READY OR OFF -LINE. THESE DRIVES 2.2 SOFTWARE PARAMETERS THE FOLLOWING QUESTIONS ARE ASKED WHEN ONE ANSWERS YES TO THE CHANGE SOF TWARE QUESTION ON A START, RESTART,OR CONTINUE. THEY ALLOM FLEXABILITY IN THE WAY THE PROGRAM BEMAVES. ?,gg CLEAR COUNTERS (L) Y ? ;gg RESET RANDOM VARIABLES (L) N ? ;gg PRINT RECOVERABLE ERRORS ?,gg HALT AFTER EACH CMD (L) N ? ;gg INHIBIT RECOVERY (L) N ? ;gg BAD TAPE SPOT DETECTION (L) Y ? ;gg DISABLE INTERRUPTS (L) N ? ;;; INMIBIT RFC ERROR REPORTS (L) N 7 ;g? CHANGE CMD SEQUENCE (L) N ? ;’gg DEFAULT SWITCH SETTINGS (L) Y ? ;:(1) 100IPS (L) N ? 742 WRITE BUFFERING (L) N ? (L) N ? (SEE NOTEL:) CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 Ce 30-NOV-83 10:17 SEQ 015 744 745 746 READ BUFFERING (L) N ? 747 ANSWERING NO 750 ANSWERING YES TO THE 100 IPS QUESTION WILL INHIBIT THE LAST 753 ?'gg ANSWERING NO TO THE 100 IPS QUESTION WILL CAUSE THE WRITE BUFFERING QUESTION TO BE ASKED. 756 ANSWERING YES TO THE WRITE BUFFERING QUESTION WILL INMIBIT THE 759 ;go 1 762 763 ANSWERING NO TO THE WRITE BUFFERING QUESTION WILL CAUSE THE READ BUFFERING QUESTION TO B8E ASKED. ?,:g ;gé ;g; 764 TO THE DEFAULT SWITCH QUESTION WILL CAUSE 100 IPS QUESTION TO BE ASKED. TWO QUESTIONS. LAST QUESTION. NOTE1l: 765 ;g? THIS QUESTION SHOULD BE ANSWERED (N) UNLESS AN OPERATOR SELECTED SEQUENCE IS TO BE EXECUTED. IF THIS QUESTION WAS ANSWERED Y, THE FOLLOWING QUESTIONS MUST BE ANSWERED OR DEFAULTED WITH A <CR> ONLY: 768 CHARACTERISTICS COOE (O) 40 ? 7 CMD/4 (D) 3 ? 769 770 7 772 773 774 775 776 778 779 cMDs/2 (D) 13 2 BRF COUNT (D) 1 ? ¢ OF OPERATIONS (D) 1 ? PATTERR (D) 7 ? CMD/3 (D) 4 ? BRF COUNT (D) 2048 ? o OF ATIONS (D) 32000 ? PATTERN (D) 7 ? COUNT (D) 2048 ? & OF CPERATIONS (D) 32000 780 PATTERN (D) 7 ? 782 BRF COUNT (D) 2048 ? 764 PATTERN (D) 7 ? 786 BRF COUNT (D) 1 ? 781 783 785 787 CMD/3 (D) 2 & OF OPERATIONS (D) 32000 CMD/6 (D) 13, BRF COUNT (D) 2048 ? 793 ? & OF OPERATIONS (D) 1 ? 790 CMD/7 (D) 27, ? & OF OPERATIONS (D) 32000 ? PATTERN (D) 7 ? CMD/8 (D) 27, ? 794 795 BRF COUNT (D) 2048 @ OF OPERATIONS (O) 32000 ? 798 799 800 NOTE: ?,gg PATTERN (D) 7 ? (0,20,40,200) (OCTAL) (1-27)" (1-2x) (1-32¢) (0-8) (1-27) (1-2¢) (1-32¢) (0-8) (DECIMAL) (DECIMAL) (DECIMAL) (OECIMAL) (DECIMAL) (OECIMAL) (DECIMAL) (DECIMAL) (1-2¢) (1-32¢) (DECIMAL) (OECIMAL) (1-27) (0-8) (1-27) ? PATTERN (D) 7 ? 791 792 ? 2 788 789 THE (1-2¢) (1-32¢) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (OECIMAL) (0-8) (DECIMAL) (1-2¢) (DECIMAL) (1-27) (1-32¢) (0-8) (1-27) (1-2¢) (1-32x) (0-8) (1-27) (1-2x) (1-32K) (0-8) (DECIMAL) (OECIMAL) (DECIMAL) (OECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (OECIMAL) (DECIMAL) (DECIMAL) THE PROGRAM AUTOMATICALLY INSERTS A MACTERISTIC CODE OF AS THE FIRST COMMAND IN THE SEQUENCE TABLE. IF A DIFFERENT CHARACTERISTIC IS DESIRED, THE OPERATOR SHOULD 40 30-NOV-83 10:17 SEQ 016 ENTER THAT CHARACTERISTIC CODE. MAY BE ENTERED IN ADOITION TO THE A TOTAL OF 7 COMMANDS SET CHARACTERISTICS COMMAND. IF THE OPERATOR WISHES TO USE LESS THAN 7 COMMANDS, AN END COMMAND MUST BE ENTERED AND THEN A CONTROL Z (tZ) CAN BE ENTERED TO TERMINATE SOF TWARE OIALOGUE. COMMAND LIST FOR USE IN SOF TWARE DIALOGUE. COMMAND g% DRI £33%332% : 2.2.1 VWU WRT WtV MBR WTH WTR ? SFF SFR GES ERS CLN SCH JP 2.2.2 26 oLY a7 END DESCRIPTION ORIVE INITIATE. READ FORW WRITE/VERIFY. IE. WRITE N RECORDS; READ REVERSE AND CMHECK N RECORDS OF DATA; READ FORWARD AND CHECK N RECORDS. SPACE RECORDS FORWARD. SPACE RECORDS REVERSE. READ NEXT REVERSE, IE. SPACE FWD, READ REV. READ NEXT FORWARD, READ PREVIOUS FWD, READ PREVIOUS REV, WRITE RETRY. REWIND. IE. READ FWD, SPACE REV. IE. SPACE REV, READ FWD. IE. READ REV, SPACE FUD. MESSAGE BUFFER RELEASE. WRITE WRITE SPACE SPACE TAPE MARK, TAPE MARK RETRY, FILES FORWARD. FILES REVERSE. GET sxm STATUS. ERASE 3 INCHES OF TAPE. UNLOAD, CLEAN TAPE SET oevrce CHARACTERISTIC. WHERE BRF=200, 20, 0. 200 « ENABLE SKIP TAPE MARKS STOP (STOP AT LWICAL EoT) 40 = ENABLE ATTENTION INTERRUPTS. 20 = ENABLE MESSAGE BUFFER RELEASE INTERRUPTS. SEE_TSV03/T7SO3 PROGRAMMING SPECIFICATION FOR DESCRIPTION. JUMP TO THE NTH COMMAND IN THE COMMAND SEQUENCE TABLE, WHERE N IS DEFINED IN THE BRF FIELD. THE NUMBER OF JUMPS IS ENTERED IN THE & OF OPERATIONS FIELD DELAY “N” MILISECONDS WHERE N IS DEFINED IN THE @ OF OPERATIONS. END OF COMMAND SEQUENCE. DATA PATTERN LIST FOR USE IN SOFTWARE DIALOGUE. PATTERN @ VBN O 801 802 803 804 805 806 807 808 809 810 812 812 813 814 815 816 817 818 819 MACRO M1113 OB~NO CVTSEBO TSVOS DATA RELIABILITY D2 OESCRIPTION. INCREMENTING PATTERN, O - 377, ALL ~1~'S PATTERN. ALL "0”'S PATTERN. A FIELD OF “0"'S. “1* BIT WALKING FROM R TO L IN A :IELD OF “1*'S, “0” BIT WALKING FROM R TO L IF ALTERNATING “1* AND "0" BIT S MWI WITH ALTERNATE BYTES COMPLIMENTED. ALTERNATING BYTES OF 000 AND 377 CVTSEBO TSVOS DATA RELIABILITY 858 859 MACRO M1113 30-NOV-83 10:17 7 8 E2 RANDOM DATA PATTERN, NO PATTERN GENERATION, SEQ 017 CVTSEBO TSVOS DATA RELIABILITY gé MACRO M1113 2.3 30-NOV-83 10:17 EXAMPLES OF 863 864 Fe SEQ 018 SOF TWARE DIALOGUE CHANGE HW (L) ? 865 :23 OUNITS (D) ? ggg TSDB ADDRESS (0) g;g VECTOR (0) 224 872 SELECT ORIVE 0-1 (0) g 875 876 877 878 879 880 a5} &3 172520 ? ? ? IN ADOITION, ON A START, RESTART OR CONTINUE THE SUPERVISOR REQUESTS CHANGES TO THE SOF TWARE OPERATING PARAMETERS, AS FOLLOWS:; CHANGE SW (L) 2.3.1 88s 886 887 BASIC FUNCTION AND DATA RELIABILITY WITH ALL ERROR REPORTING ENABLED A) B8) C) m ? D) RECEIVE PROMPT (DR>) ENTER STA/TES:1-2<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH TME FOLLOWING DIALOGUE: ggg CHANGE SMW (L) ? Y<CR> 892 893 CLEAR COUNTERS (L) N ? RESET RANDOM VARIABLES (L) N ? Y<CR> <CR> 897 BAD TAPE SPOT DETECTION (L) Y 894 895 896 PRINT RECOVERABLE ERRORS (L) N ? HALT AFTER EACH CMD (L) N ? INHIBIT RECOVERY (L) N ? 898 899 900 g% &3 905 906 907 % ? DISABLE INTERRUPTS (L) N ? INHIBIT RFC ERROR REPORT (L) N ? CHANGE CMD SEQUENCE (L) N ? DEFAULT SWITCH SETTINGS (L) Y ? 2.3.2 Y<CR> <CR> <CR> <CR> <CR> <CR> <CR> <CR> TO SET UP A SCOPE LOOP FOR A FAILURE IN BASIC FUNCTIONS. A) 8) C) 0) RECEIVE PROMPT (DR>) ENTER smnesu/ru:we:xsn ISR:IOU<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE: 910 911 912 913 914 CHANGE SW (L) ? CLEAR COUNTERS (L) N ? RESET RANDOM VARIABLES (L) N ? PRINT RECOVERABLE ERRORS (L) N ? HALT AFTER EACH CMD (L) N ? Y<CR> Y<CR> N<CR> N<CR> N<CR> 916 917 BAD TAPE SPOT DETECTION (L) ODISABLE INTERRUPTS (L) N ? N<CR> N<CR> 915 INHIBIT RECOVERY (L) N ? Y ? N<CR> CVTSEBO TSVOS DATA RELIABILITY 918 919 920 921 922 923 924 925 926 927 928 929 930 MACRO M1113 30-NOV-83 10:17 Ge SEQ 019 INHIBIT RFC ERROR REPORT (L) N ? CHANGE CMO SEQUENCE (L) N ? DEFAWLT SWITCH SETTINGS (L) Y ? 2.3.3 Y<CR> N<CR> <CR> TO SET UP A SCOPE LOOP FOR A FAILURE IN DATA RELIABILITY A) 8) g; RECEIVE PROMPT (DR>) ENTER STA/TES:S3/FLA:IER:ISR:IDU/EOP:1000<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE: CHANGE SW (L) ? 931 932 933 934 Y<CR> CLEAR COUNTERS (L) N ? RESET RANDOM VARIABLES (L) N ? Y<CR> PRINT RECOVERABLE ERRORS (L) N HALT AFTER EACH CMD (L) N ? 935 936 937 938 939 940 INMIBIT RECOVERY (L) N ? BAD TAPE SPOT DETECTION (L) Y OISABLE INTERRUPTS (L) N ? ? INHIBIT RFC ERROR REPORT (L) N ? CHANGE CMD SEQUENCE (L) N ? CHARACTERISTICS CODE (0) 40 ? cMD/2 (D) S ? BRF COUNT (D) 2048 ? @ OF OPERATIONS (D) PATTERN (D) 7 ? 10 ? CMD/3 (D) S ? 8P (D) 2048 ? » JF OPERATIONS (D) PATTERN (D) 7 ? 10 ? CMD/4 (D) S ? BRF (D) 2048 ? ? N<CR> N<CR> N<CR> N<CR> N<CR> Y<CR> Y<CR> Y<CR> 40<CR> 13<CR> 1<CR> 1<CR> (REWIND) 4<C> (WRITE) 1<CR»> 1000<CR> 10000<CR> 1<CR> 27<CR> <t2> (END) 2.4 EXECUTION TIMES POP11/23 HgS MEMORY LA36 T~ 2.4.2 °S/7S0S TEST EXECUTION TIMES (2400 FT, TEST TEST TEST TEST TEST NOTE: 1 2 3 4 5 - TAPE) BASIC FUNCTIONS - 30 SECONDS PER PASS. DATA RELIABILITY - 45 MINUTES PER PASS. WRITE COMPATABILITY - 20 MINUTES PER PASS. READ COMPATABILITY 20 MINUTES PER PASS. RANDOM/OPERATOR SELECTED SEQUENCE -20 MINUTES PER PASS. ALL EXECUTION TIMES ARE SHOWN FOR ONE DRIVE OPERATION. CVTSEBO TSVOS DATA RELIABILITY 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 MACRO M1113 30-NOV-83 H2 10:17 SEQ 020 3.0 ERROR INFORMATION ALL ERROR REPORTS EXCEPT FOR ERRORS #1 AND #17 INCLUDE A DUMP OF THE FOLLOWING INFORMATION: ERROR @, COMMAND, TEST #, SUBTEST #, PROGRAM COUNTER, UNIT o, PREVIOUS COMMAND, PASS COUNT, & OF RECORDS FROM B80T, TCC, TSBA, RFC, RECORD READ COUNT, THE COMMAND PACKET, TSSR, AND THE EXTENDED STATUS REGISTERS (SEE 2.3.14.1 FOR LIST OF COMMANDS). STANDARD ERROR REPORT FORMAT: CVTSE SFT ERR XXXXX TST XXX (ASCIX ERROR MESSAGE) XXX CMD FAILED - UNIT X PREVIOUS CMD WAS XXX CMOPKT XXXXXX AXAXXXX AXXXXX XXXXXX XST0 XXXXXX PASS: TSBA RFC TSSR XST1 XXXXXXN XST2 XXXAXX XST3 XXAAXX XAXAXX XXAXXX SUB XXX XXXXXX PC: XXXXXX XXXXX RECORD: & RECORD READ: TCC XXXXX XXXXX & X XST4 XXXXXX s CAUTION » INTERPRET THAT “RECORD READ” COUNT WITH CAUTION. IF VERY DIFFERENT FROM RECORD COUNT TRACKED BY THE DIAGNOSTIC, TAPE POSITION IS NOT NECESSARELY LOST. ERRORS IN READING THAT RECORD MIGHT HAVE CAUSED RECORD COUNT TO BE ERRONEOUSLY READ FROM TAPE. IN TEST 2, IF DIAGNOSTIC IS RESTARTED OR CONTINUED, RECORD COUNT IS RESET TO ZERO ALTHOUGH THE TAPE IS NOT REWOUND. THIS IS NECESSARY BECAUSE THERE IS NO ACCURATE WAY TO DETERMINE ON WHAT RECORD COUNT OF WHICH UNIT THE OIAGNOSTIC WAS HALTED BEFORE RESTARTING OR CONTINUING. IT IS SUGGESTED THAT A “PRINT* BE REQUESTED WHEN HALTING DIAG TO GET A PRINT OF THE RECORD COUNT WHEN HALTED. EXAMPLE OF AN ERROR REPORT: CVISE SFT ERR 00009 RECOVERABLE ERROR TST 002 WRT CMD FAILED - UNIT 2 PREVIOUS CMD WAS WRT CMOPKT 100005 051766 000000 TSBA 002324 RFC 000000 SUB 000 PASS: TSSR 100210 2 TCC 4 PC: 010606 RECORD: 254 CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 30- NOV-83 10:17 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 I2 000371 XST0 000350 3.1.1 ERROR #1 SEQ 021 XST1 000002 XST12 100004 XST3 000000 XST4 040055 - COMMAND PACKET ADDRESS NOT ON A MODULO 4 BOUNDRY : IF THIS ERROR IS REPORTED, THE PROGRAM DID NOT LOAD PROPERLY. Eg&geé? ?TSYSTEH FATAL ERROR AND THE PROCRAM MUST BE RELOADED TO 3.1.2 ERROR #2 - TSOS NOT READY: BEFORE ANY COMMAND IS ISSUED TO THE TSOS, THE SUBSYSTEM READY BIT IN THE TSSR IS CHECKED. IF THE SSR IS NOT SET, THE PROGRAM REPORTS THE NOT READY ERROR. THIS IS A FATAL DEVICE ERROR AND sg$lgsV§§EUgékL BE DROPPED FROM THE TEST SEQUENCE UNLESS THE IDU 3.1.3 ERROR #3 - NO RESPONSE ERROR: ONCE THE TSDB IS LOADED, THE TSOS HMAS ONE MILLISECOND TO RESPOND OR THE PROGRAM REPORTS A NO RESPONSE ERROR. THIS IS A FATAL OEVICE ERROR AND THE DEVICE WILL BE OROPPED FROM THE TEST SEQUENCE UNLESS THE IDU OPTION IS USED. 3.1.4 ERROR #4 - NO INTERRUPT ERROR: COMMAND WAS ISSUED AND NO INTERRUPT RECEIVED. THE PROGRAM REPORTS THAT NO INTERRUPT OCCURRED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 3.1.5 SPECIAL CONDITION ERRORS: IF, DURING EXECUTION, AN INCIDENT OCCURS FORCING THE TSSR SPECIAL CONDITION BIT TO SET, THE PROGRAM MILL SELECT OME OF goggnoa HANDLING ROUTINES, DEPENDING ON THE TERMINATION CLASS THE TERMINATION CLASS CODES IN THE TSSR ARE PROCESSED AS FOLLOWS WHEN SPECIAL CONDITION IS SET: 3.1.5.1 ERROR #5 - TERMINATION CLASS CODE O, UNDEFINED SPECIAL CONDITION THE ERROR IS REPORTEDO, A MARD ERROR IS LOGGED ANO THE PROGRAM PROCEEDS NORMALLY. 3.1.5.2 ERROR #6 THIS - TERMINATION CLASS CODE 1, TCC INOICATES THAT ATTENTION CONDITION THE DRIVE HAS UNDERGONE A STATUS CHANGE CVTSEBO TSVOS DATA RELIABILITY 1089 1090 1091 i {ggg 1096 1097 1098 1099 {ig(l) 1102 %igz 1105 MACRO M1113 30-NOV-83 10:17 Je SEQ 022 SUCH AS GOING OFFLINE OR COMING ONLINE. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IOV OPTION IS USED. 3.1.5.3 ERROR #7 - TERMINATION CLASS CODE 2, TAPE STATUS ALERT A STATUS CONDITION HAS BEEN ENCOUNTERED THAT MAY HAVE SIGNIFICANCE TO THE PROGRAM. BITS OF INTEREST INCLUDE TMX, RLS, LET, RLL, EOT. ACTION TAKEN DEPENDS ON THE TEST BEING EXECUTED. IF THE CONDITION IS UNEXPECTED, THE ERROR IS REPORTED AND A HARD ERROR IS LOGGED. THE PROGRAM PROCEEDS NORMALLY. 3.1.5.4 ERROR #8 - TERMINATION CLASS CODE 3, FUNCTION REJECT THE SPECIFIED FUNCTION WAS NOT INITIATED. 1106 RMR, OFL, VCK, BOT, ILC, WLE, ILA, AND NBA. 1108 UNLESS THE IOU OPTION IS USED. 1107 {{{é 1113 1114 1115 1116 {i.i.; 1119 iigg 1122 1123 1124 }.11222 1127 {{gg 1130 BITS OF INTEREST ARE THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE OROPPED FROM THE TEST CYCLE 31.5.5 ERROR #9 - TERMINATION CLASS CODE 4, RECOVERABLE ERROR TAPE POSITION IS ONE RECORD BEYOND WHAT ITS POSITION WAS WHEN THE FUNCTION WAS INITIATED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND ISSUE THE APPROPRIATE RETRY COMMAND. IF RETRY LIMIT IS REACHED BEFORE THE ERROR IS RECOVERED, RETRY LIMIT EXCEEDED IS REPORTED AS DESCRIBED IN ERROR #14 BELOW. 3.1.5.6 ERROR #10 - TERMINATION CLASS CODE S5, RECOVERABLE ERROR TAPE POSITION HAS NOT CHANGED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND RE-ISSUE THE ORIGINAL COMMAND. IF RETRY LIMIT IS REACHED BEFORE THE ERROR IS RECOVERED, RETRY LIMIT EXCEEDED IS REPORTED AS DESCRIBED IN ERROR #14 BELOW. 3.1.5.7 ERROR #11 - TERMINATION CLASS CODE 6, UNRECOVERABLE ERROR TAPE POSITION HAS BEEN LOST. THE ONLY VALID RECOVERY ~#ROCEDURE IS TO 1131 REWIND AND START OVER AT BOT UNLESS THE TAPE HAS LAZcLS OR SEQUENCE 1133 RETRY THE COMMAND, 1132 %igg 1136 {{g; 1139 1140 1141 1142 %%2 NUMBERS. IF DENSITY CHECK IS SET THIS DIAGNOSTIC WILL REWIND AND OTHERWISE THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 3.1.5.8 ERROR #12 - TERMINATION CLASS CODE 7, FATAL SUBSYSTEM ERROR THE SUBSYSTEM IS INCAPABLE OF PROPERLY FERFORMING COMMANDS OR AT LEAST ITS INTEGRITY IS SERIOQUSLY QUESTTONABLE. REFER TO THE FATAL CLASS CODE FIELD IN THE TSSR RECISTER FOR ADDITIONAL INFORMATION ON THE TYPE OF FATAL ERROR. TAE DEVICE WILL BE CROPPED FROM THE TEST CYCLE UNLESS THE IDU OFTION IS USED. CVTSEBO TSVOS DATA RELIABILITY 1146 1148 1149 1150 1151 1152 1153 {igg MACRO M1113 I<2 30-NOV-83 10:17 3.1.6 ERROR #13 - SEQ 023 RFC NON-ZERO ERROR: IF, AFTER EXECUTION, THE RESIDUAL FRAME COUNT IS NON-ZERO, THE ERROR IS REPORTED AND A HARD ERROR IS LOGGED. THE PROGRAM THEN PROCEEDS NORMALLY. THE REPORTING AND LOGGING OF THESE ERRORS IS OPTIONAL. 3.1.7 ERROR 014 - RETRY LIMIT EXCEEDED: 1156 ON A WRITE COMMAND THIS IS A FATAL DEVICE ERROR AND THE DEVICE 1159 1160 1161 1162 1163 ON A READ COMMAND THIS ERROR IS LOGGED AS A HARD ERROR AND THE PROGRAM PROCEEDS NORMALLY. i{g; WILL BE DROPPED FROM THE 3.1.8 1165 1166 1167 1169 1170 3.1.9 1182 1183 1184 1185 1186 1187 1189 1190 Hes 1193 1134 1196 e 1198 1199 1200 1201 1202 TOO MANY IDU OPTION IS USED. INTERRUPTS: ERROR #16 - CAPSTAN RUNAWAY: CAPSTAN DID NOT STOP WITHIN ACCEPTABLE WINDOW AFTER LAST COMMAND. THE PROGRAM WILL ISSUE A GET STATUS COMMAND BEFORE REPORTING THE ERROR SO THAT THE DEAD TRACK FIELD IN EXTENDED STATUS REGISTER 2 WILL CONTAIN THE TACH COUNT WHEN THE TAPE STOPPED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM 1177 1180 - THE IF MORE THAN ONE INTERRUPT OCCURS PER COMMAND, THIS ERROR IS REPORTED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 1172 1173 1174 1175 1176 1179 ERROR #15 TEST CYCLE UNLESS THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 3.1.10 ERROR €17 - DATA COMPARE ERROR: IF A DATA VALIDATION ERROR OCCURS DURING A WRITE/VERIFY COMMAND, THE PROGRAM PRINTS WHAT THE DATA SHOULD HAVE BEEN AND WHAT THE DATA WAS, AND PRINTS THE BYTE AND RECORD NUMBER THE ERROR OCCURRED ON. ONLY THE FIRST 10 BYTES IN ERROR PER RECORD ARE PRINTED. THE TOTAL @ OF BYTES IN ERROR PER RECORD IS ALSO PRINTED. A HARD ERROR IS LOGGED AND THE PROGRAM PROCEEDS NORMALLY. 3.2 ERROR HALTS T ERROR HALTS ARE SUPPORTED PER DESCRIBED IN THE PREVIOUS SECTION WITH /FLAG:HOE. THERE ARE NO OTHER HALTS. 4.0 PERFORMANCE REPORT e, UNIT X PASS:XXXXX RECORD:XXXXX BYTES WRITTEN XXX, XXX, XXX, XXX BYTES READ REV XXX, XXX, XXX, XXX BYTES READ FWD XXX, XXX, XXX, XXX CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 L2 30-NOV-83 10:17 1203 1204 RECOVERABLE ERRORS 1 1207 SPEC COND lggg UNRECOVERABLE ERRORS 1208 XXXXX 1209 1210 1211 1212 1213 1214 S.0 TEST SUMMARIES 1216 }Sig 5.1 1283 HARD XXXXX SEQ 024 WRT XXXXX ROR XXXXX XXXXX FATAL XXXXX XXXXX ROF XXXXX XXXXX COMPARE XXXXX eeeesaccecccan TEST 1 - BASIC FUNCTIONS. %gég EXECUTES AND VERIFIES CORRECT COMPLETION OF ALL TSOS FUNCTIONS. 1221 1222 1223 1224 1225 SUBTEST 1 1226 - SET CHAR, DRIVE INIT, GET STATUS. + SET CHARACTERISTIC 200. + DRIVE INITIATE. + SET CHARACTERISTIC 20. o GET STATUS + SET CHARACTERISTIC {gg; 1229 1230 1231 1232 1233 1234 ¢ SUBTEST 2 PRINT 40. TSO5 MICROCODE LEVEL - REWIND. ¢ REWIND. ¢ REWIND AT B8OT. SUBTEST 3 - WRITE/VERIFY, ¢+ WRITE/VERIFY PATTERN 1. 1235 ¢+ WRITE/VERIFY PATTERN 2. 1237 + WRITE/VERIFY PATTERN 4, 1236 s WRITE/VERIFY PATTERN 3. 1238 s+ WRITE/VERIFY PATTERN S. 1239 ¢+ WRITE/VERIFY PATTERN 6. }g:(l) SUBTEST 4 1244 - WRITE TAPE MARK, ERASE. WRITE TAPE MARK + WRITE 10 RECORDS 1245 1246 + ERASE 10 TIMES ¢ WRITE TAPE MARK, ig:; 1249 1250 1251 1252 + SUBTEST S iggz 1255 1256 1257 1258 1259 WRITE/VERIFY PATTERN O. * i L7 1242 * - SPACE FILES. + SPACE 2 FILES REVERSE. e SPACE 2 FILES FORWARD. + SPACE 2 FILES REVERSE. + SUBTEST 6 WRITE TAPE MARK RETRY. SPACE 2 FILES FORWARD. - SPACE RECORDS. ¢+ REWIND. + SPACE 7 RECORDS FORWARD. ¢+ SPACE 7 RECORDS FORWARD. + SPACE 7 RECORDS REVERSE, (PASS 1 ONLY) SEQ 025 SPACE 7 RECORDS REVERSE. 14 SUBTEST 7 WRITE RETRY, L4 REWINO. WRITE DATA. WRITE RETRY. SUBTEST 8 SUBTEST 10 .8 - WRITE/VERIFY SWAPPED DATA BYTES. J B K N R L WRITE/VERIFY EVEN LENGTH (RECORD 1). WRITE/VERIFY ODD LENGTH (RECORD 2). SET DATA BYTE SWAP. WRITE/VERIFY EVEN LENGTH (RECORD 3). WRITE/VERIFY ODDO LENGTH (RECORD 4). CLEAR DATA BYTE SWAP. K K K BE B N 2R 2N J - READ SWAPPED READ REV READ REV SET DATA READ REV READ REV K SUBTEST 12 FWO RETRY, READ FORWARD. READ PREVIOUS FORWARD. READ PREVIOUS REVERSE. CLEAN. ¢ CLEAN, * REWIND. * SUBTEST 11 -8 SUBTEST 9 REV RETRY, READ REVERSE. READ NEXT REVERSE. READ NEXT FORWARD. L 30-NOV-83 10:17 0 m 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 12711 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 MACRO M1113 ' CVTSEBO TSVOS DATA RELIABILITY M2 DATA BYTES. RECORO 4. RECORD 3. BYTE SWAP. RECORD 2. RECORO 1. READ FWD RECORD 1. READ FWD RECORD 2. CLEAR DATA BYTE SWAP. READ FWD RECORD 3. READ FWD RECORD 4. CVTSEBO TSVOS DATA RELIABILITY iggé MACRO M1113 S.2 30-NOV-83 10:17 TEST 2 - N2 SEQ 026 DATA RELIABILITY, 1303 1. THE TAPE IS INITIATED WITH THE FOLLOWING COMMANDS: 1304 1305 1306 1307 1308 1309 SET CHARACTERISTIC 40 REWIND WRITE 64 RECORDS OF RANDOM LENGTH AND DATA 2. WRITE AND RFAD COMMANDS ARE SELECTED AT RANDOM AND ARE EXECUTED A RANDOM NUMBER OF TIMES WITH RANDOM LENGTHS AND RANDOM PATTERN UNTIL END OF TAPE IS REACHED. 1310 %glé 3. 1 AT THE END OF EACH PASS, A REWIND COMMAND IS ISSUED AND A PERFORMANCE REPORT IS PRINTED. 1313 {gig NOTE: 1316 ig{; 5.3 TEST 3 - IF A RESTART COMMAND IS USED TO INITIATE TEST 1, THE INITIAL REWIND COMMAND IS NOT ISSUED. WRITE COMPATABILITY/WRITE UTILITY. 1319 REWINDS AND WRITES RECORDS OF RANDOM LENGTHS 1320 AND RANDOM DATA FROM BOT TO EOT. 1321 1322 issgi 5.4 TEST 4 - READ COMPATABILITY/READ UTILITY, {% REWINDS AND READS ENTIRE TAPE, 1327 iigg 5.5 TEST S - FORWARD AND REVERSE. RANDOM/OPERATOR SELECTED COMMAND SEQUENCE. 1330 A DEFALT SEQUENCE OF REWIND/WRITE/READ REV/READ FWD/REWIND 1332 AND RECORN LENGTH OF 2048 BYTES. OPERATOR CAN ENTER 1331 OF ENTIRE TAPE IS EXECUTED WITH RANDOM PATTERN 1333 SEQUENCE OF COMMANDS UP TO SEVEN IF THEY DON'T WANT iggg DEFAULT SEQUENCE. %ggg 1338 1339 140 1341 6.0 DEVICE INFORMATION TABLES = 6.1 GENERAL eeeea-a 1342 1343 THE TSOS TAPE SUBSYSTEM CONSISTS OF A TSVOS Q@-BUS CONTROLLER CONNECTED TO A TSOS DRIVE. FROM A SOF TWARE VIEWPOINT {g:z OF WAYS: 1347 A. ONLY ONE REGISTER MAY BE WRITTEN - TSDB (TAPE SYSTEM 1350 8. 1353 C. 1344 {g:g {ggé 1354 1355 1356 1357 THIS CONFIGURATION IS UNIQUE (FOR A Q-BUS DEVICE) IN A NUMBER DATA BUFFER), TWO REGISTERS MAY BE READ - TSSR AND TSBA (TAPE SYSTEM STATUS REGISTER AND TAPE SYSTEM BUS ADDRESS REGISTER), COMMANDS ARE NOT WRITTEN TO THE ORIVE; RATHER, COMMAND POINTERS ARE WRITTEN WHICH POINT TO COMMAND PACKETS SOMEWHERE IN CPU MEMORY. THE COMMAND POINTER IS USED BY THE TS0S SUBSYSTEM TO FETCH THE WORD(S) WITHIN THE COMMAND PACKET., THE WORDS WITHIN THE COMMAND PACKET ARE: CYTSEBO TSVOS DATA RELIABILITY MACRO M1113 30-NOV-83 1358 1339 10:17 1. 2. 3. 4. D. SEQ 027 COMMAND WORD LOMW ORDER BUFFER ADDRESS HIGH ORDER BUFFER ADDRESS BYTE COUNT THE TSSR CONTAINS ALL THE INFORMATION WMICH WILL BE NECESSARY TO DETERMINE WHETHER; 1. 2. THE DRIVE IS READY TO ACCEPT ANOTHER COMMAND, THE PREVIOUS COMMAND WAS EXECUTED WITHOUT ERROR. IF EITHER OF THE ABOVE CONDITIONS IS UNTRUE AT ~JOB DONE” OR “COMMAND INITIATION” TIME,IV MAY BE NECESSARY TO GET THE EXTENDED STATUS REGISTERS TO ODETERMINE WMAT ACTION IS TO BE TAKEN AND/OR LOG THE ERROR INFORMATION. . EXTENDED STATUS REGISTERS ARE NOT READ DIRECTLY FROM ORIVE REGISTERS; RATHER, A “GET STATUS” COMMAND IS ISSUED WHICH WILL CAUSE THE TSOS TO TRANSFER EXTENDED STATUS INFORMATION TO THE MEMORY AREA POINTED 1O 8Y THE BUFFER ADORESS OF THE ~GET STATUS” COMMAND. THERE ARE FIVE EXTENDED STATUS REGISTERS. SEE .3, . THE TSDB MUST BE WRITTEN WITH A DATO INSTRUCTION TO PROPERLY WRITE THE COMMAND POINTER. CAUSE A MAINTENANCE FUNKCTION. SUBSYSTEM INIT, A DATOB WILL A DATO TO THE TSSR WILL CAUSE COMMAND PACKETS MUST RESIDE ON OIVIDE 8Y FOUR MEMORY BOUNDARIES (AS OPPOSED TO OIVIDE BY 2 OR WORD BOUNDARIES) . CVTSEBO TSVOS DATA RELIABILITY 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 MACRO M1113 6.2 30-NOV-83 10:17 SEQ 028 Q-BUS INTERFACE SPECIFICATIONS ............................... TSVOS/ TS05 INT. VECTOR UNIBUS ADDRESS REGISTER FIRST 224 172320 772522 TSBA/TSD8B TSSR CVTSEBO TSVOS DATA RELIABILITY 1403 140 1405 1406 {:8; MACRO M1113 6.3 | 6.3.1 1415 1416 1417 eeececccsccsccccnaccsrsancsncccncacccnn= TSVOS5/7TS0S REGISTER SUMMARY 15 (R/0) YSBA (W/0) TSOB 14 13 12 11 1432 1433 1434 143S 1436 1437 1438 1439 1440 1441 {ng $ecct feccpecntaccd focaprcctanch $occprcctocch $oacbeaabacch focbeo-bnn- P15 ! 1 !P14!P13!P12! !PII!PI.O!PW' | H 11! ! ! ! !POO!PO7!PO6' ! ! ! ! 'POS!PO"PO3! ! ! ! ! '902'917'916' ! I1SC ! ' O | !A16!SS“!G'L! ! ! ! ! !fCI!FCO!YCZ! ! ! ! ! 'TCI TCO' ! H H bee=0 o---o---o---o $ocpecnboctd !t I Secad ISCE!RMR! !NXfl!mAlAl7! H ! 1! | ! ! Poccdoccdnccld ! t $eceh Qeccboccboccd O 8 $eced Pecc@eccfeccd ¢ | 0PM! IRCE! O ! O ! L H £ I | feacfeccloccd £ O tMCF! O ! 1! ! | MICRO DIAGNOSTIC ERROR CODE $cced Geccpracpeccd ? | IMSP! IRCE! Ot O 3 #ecch H H Goccbacabeccd GeccfecaPocch 0 0 0 O ! O! Qoccfoccbrnocd 2 O IRL7IRLG! |N | H 1 Boccbocebocct ! H 0! ' R (YSNX EXISTS MY WHEN ENABLED BY THE EXTENDED FEATURES SWITCH ON THE M7196) bucefrccbeccd 1ILAIMOTIONL! OO O ! IRBPE H H 11! H $oco8 Geccpeccbesst besobocobecct H Socnboe~ $oe hd Prcapeccpeoccd) So=- R 29212920!919! !Plfl! | H ! !t H Socctocctocnt Pocnoe eccboccbeccd (WMAEINEFITILC! bocobomcben= Poccpoccbonct bocobocabocch boccposmpons . $uccfocctocchd !TIE (VCK!PED! ! H ! 1! H H I | ! ! Gecatecabaced hecepecabocet $eaccpecctocct O Gocebrovbeon!KK'BOT'EOT' ] H H ] ! H Seccbecebonct Semcbemabemnas I | OO Ot O WNCH O H H LI ! ! ! Goccbreabaceld !RLS!IRLAIRLS! I | 10PI! 0! H H !RLZ'RLI'RLO' ! Goccbeccbonnat Semabe--bon-=b H ! 'REVI!TRFI!IDCK! H Poccbrccbonel H focopecnben-n N ! ! ' Poccbaccbona TR ¢ O boccbocabench O !RIB! H ! Yy Sy SR WITE RETRY COUNT Pocsfucclecctd $ocadecnbaceld ! ! H H Seceboccbo -t TERMINATION CLASS CODES (TSSR TCO-TC2): 1448 4 +« 3 S 6 7 NORMAL TERMINATION ATTENTION CONDITION TAPE STATUS ALERY = FUNCTION REVECT = DOWN TAPE FROM START OF FUNCTION RECOVERABLE ERROR - TAPE NOT MOVED = = RECOVERABLE ERROR - TAPE POSIVION = ONE RECORD UNRECOVERABLE ERROR - TAPE POSITION LOSY FATAL CONTROLLER ERROR i:g; FATAL CLASS CODES (TSSR FCO-FC1): {:?1 2 . :écsgoDII)AGNOStIC FAILURE. 1458 2 = NOT USED 1459 00 'MZ‘AOI'AOO' = « = 1451 i:gg 01 !flOS!AO‘!AOB! ! ! ! O 1 2 1449 1450 02 !flOO!flO"!flOG' ! ! f ' 1444 1445 1446 1447 03 !All!‘lO!Am! ! ! ! ! xST3 ¢ xST4 04 !Al‘!AIS!AIZ! l ! ! IOLT! ¢t OtCOR? xST1 ¢ 11 H H xsve 05 1ALS! ! ! #c=eb Gcccfescprcctd ITMK! IRLSILETIRLLY! 143} 06 occhbaccbaced 1425 1426 1429 1430 07 bocepoocbacch 8T ¢ 1t 01 0! O (M70)TSDBX ! ! H ! I $ccct foccbocctoced XST0 08 foccpacctaced 1421 1422 {:gs 1427 1428 09 Gocmfracteced (R/70) TSSR 4 10 #eceld 1418 1419 1420 SEQ 029 BIT DEFINITIONS FOR TSVOS5/TS0S REGISTERS 1409 {:ig 1412 {:{2 D3 30-NOV-83 10:17 SEE ERROR CODE BYTE (XSTS) FOR FAILED FUNCTION. 3 « RESERVED FOR FUTURE USE ALWAYS READ AS A O — CVISEBO TSVOS DATA RELIABILITY 1461 1462 1463 1464 1463 = MACRO M1113 6.3.2 - 30-NOV-83 10:17 e e ————— — e — — 1469 15 14 13 1471 !1sC! !0 !SCE!RM! 1470 $eceld SEQ 030 ! | $cccd - READ ONLY 12 frccpeccdoncd 1472 1473 1474 1475 1476 BIT NAME 1479 1S SC H H ' focembocctoncd TCC ottt S 1481 11 10 09 borcpocctbone ® 08 07 06 $ocepocctboccd) !NXH!'OA!M.?! 0S5 1A16!SSRIOFL ! ! ! H ! fevcboccbrcnd 04 03 $occponcpecad !FCI.!FCO!TCZ' 02 'TCI'TCO' : DEFINITION e SPECIAL CONDITION. THE LAST INCIDENY., COMMAND WHEN DOID SET, NOY INDICATES CMETE SPECIFICALLY, EITHER MWAS EXCEPTIW CODITI(N OCCURRED. EXCEPTION CONDITIONS CAN BE TAPE MARKS ON AND NXM, 1488 READ THE TERMINATION CLASS BITS ARE SMTHM OTHER THAN O (UNLESS RMR IS THE ONLY {:gg ERROR - SEE RMR). {:gé 14 - 1493 13 SCE FCC {:g RESERVED (ALMAYS A 0) SANIYY CHECK ERROR-SETS WHEN THE CONTROLLER DETECTS AN ABNORMAL CONDITION WITHIN ITSELF DURING EXECUTION OF IT'S FUNCTIONS AND THE PROBLEM IS SERIOUS ENOUGH THAT A MESSAGE PACKETY IS NOT STORED. 1498 1499 1500 1501 1502 1503 12 1509 11 RMR S 1504 15CS 1506 1515 1516 1517 AN ERROR COMMANDS, REVERSE MOTION AND AT BOT, EOT WHILE WRITING, ETC. MAY ALSO BE SET BY THE ERROR BITS CWTAI’ED IN THE TSSR REGISTER: SCE, igfi OR THAT WITHOUT 1484 148S 1486 1487 00 ! ! ! |I | ! 10 H H H Poccdeccpocat 0---0---0---0 $eccboccpon=t DETECTED 1483 01 Pocabomchace s 1482 1510 1511 1512 ca—— ceeseccccccecccsccccccccces ¢+ 2 1494 1495 ——— TSVOS STATUS REGISTER (TSSR) Q-BUS ADDRESS 1480 e E3 1466 i:g; 1478 e REGISTER MODIFICATION REFUSED. SET BY THE TSVOS WHEN A COMMAND POINTER IS LOADED INTO TSOB AND SUB-SYSTEM READY (SSR) IS NOT SET. NOTE THAT THIS BIT CAUSES SPECIAL CONDITION BUT NO TERMINATION CLASS (IN FACT, THE TSOS NEVER SEES THIS ERROR) BECAUSE ON A SYSTEM WITH NC BUGS, THMIS BIV MAY COME UP ON AN ATTENTION MESSAGE. IF ATTINS ARE NOT ENABLED, THIS 81T COMING UP IS AN INDICATION OF EITHER A FATAL CONTROLLER ERROR OR A SOF TWARE NXM 4/5 NON-EXISTENT MEMORY, SET B8Y THE TSVOS WHEN TRYING TO TRANSFER TO OR FROM A MEMORY LOCATION WHICH DOES NOT EXIST. MAY OCCUR WHEN FETCHING THE COMMAND PACKET, FETCHING OR STORING DATA, OR STORING THE MESSAGE PACKET, 10 NBA S NEED BUFFER ADDRESS. WHEN SET, INDICATES THAT THE TSOS NEEDS A MESSAGE BUFFER ADODRESS. THIS BIT IS CLEARED DURING THE SET CMARACTERISTICS CVTSEBO TSVOS DATA RELIABILITY 1518 1519 1520 1521 1322 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1335 1536 1537 1538 1539 1540 1541 1542 1543 1544 13545 1346 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 MACRO M1113 30-NOV-83 10:17 SEQ 031 COMMAND (IF A GOOO ADDRESS WAS GIVEN). 09 AY? S BUS ADORESS BIT 17. Al17 AND A16 (BIT 08) TRACK THE VALUES OF BITS 17 AND 16 OF THE TSBA REGISTER. LOADED FROM TSD8 BITS 01-00 WHEN TSD8 IS WRITTEN. 08 A16 BUS ADDRESS BIT 16. SEE A17 (BIT 09). 07 SSR SUB-SYSTEM READY. MWMEN SET, INDICATES THAT THE TSVOS/7S03 SUBSYSTEM IS NOT BUSY AND IS READY TO ACCEPT A NEW COMMAND POINTER. 06 OFL 05 FC1 S,1.3 7 OFF-LINE. WHEN SET, INDICATES THAT THE TSO5 IS OFF-LINE AND UNAVAILABLE FOR ANY TAPE MOTION COMMANDS. THIS BIT CAN CAUSE A TERMINATION CLASS OF 1 (ON ATTN INTERRUPT) OR 3 (RESULTS IN NEF). FATAL TERMINATION CLASS O1. FC1 AND FCO (BIT 04) ARE USED TO INDICATE THE TYPE OF FATAL ERROR WHICH HAS OCCURRED ON THE TSO0S. THESE BITS ARE VALID ONLY WHEN SC IS SET AND THE TERMINATION CLASS CODE BITS ARE ALL SET (111). o4 FCO 03 TC2 FATAL TERMINATION CLASS 00. S SEE FC1 (BIT 05). TERMINATION CLASS BIT 02. THIS BIT, ALONG WITH THE 7TC1 AND TCO BITS, ACT AS AN OFFSET VALUE WHENEVER AN ERROR OR EXCEPTION CONDITION OCCURS ON A COMMAND. EACM OF THE EIGHT POSSIBLE VALUES OF THIS FIELD REPRESENT A PARTICULAR CLASS OF ERRORS OR EXCEPTIONS. THE CONDITIONS IN EACH CLASS MAVE SIMILAR SIGNIFICANCE AND, AS APPLICABLE, RECOVERY PROCEDURES. THE COOE PROVIDED IN THIS FIELD IS EXPECTED T0 BE UTILIZED AS AN OFFSET INTO A DISPATCH TABLE FOR HANDLING OF THE CONDITION. 02 TCi TERMINATION CLASS BIT O1. SEE TC2 (BIT 03). o1 TCO TERMINATION CLASS BIT 00. SEE TC2 (BIT 03). 00 - Q-8US ADDRESS - ¢+ 2 NOT USED. - WRI TE ONLY SUBSYSTEM INITIALIZE (ALWAYS A 0) CVTSEBO TSVOS DATA RELIABILITY 1569 {g:"g MACRO M1113 30-NOV-83 10:17 6.3.2.1 SEQ 032 TSVOS EXTENDED DATA BUFFER REGISTER (TS08X) 1572 1573 1574 $eeet Socnbocabaccd Somcboccpenn PR 1575 1576 {g;: BT ! TSO08X ¢ ' 4=t ¢t 0''O0 ! O ! ! ! ! Seceboc-ta-=s 'PZl’P?O!P19' ! | 0---0---0---0 1P18! ! s---0o 1579 (TSOBX EXISTS ONLY WHEN ENABLED BY THE EXTENDED FEATURES SWITCH ON THE TMM7196) {Ssgg BIT NAME TCC DEFINITION 1582 1583 1584 1585 15 8T - {ssgg 14-12 RESERVED (ALMWAYS A 0) 1590 11-08 P<21:18> COMMAND POINTER BITS 21-18. WHEN THE TSDBX IS WRITTEN 1594 07-00 RESERVED (ALWAYS A 0) 800T COMMAND BIT. WHEN WRITTEN TO A 1,.WITH SSRe1, CAUSES THE TAPE TO BE REWOUND TO BOT, THE FIRST TAPE RECORD TO BE SKIPPED, AND THE SECOND RECORD TO BE LOADED INTO CPU MEMORY SPACE issgg STARTING AT LOCATION O. 1591 {ggg 1595 1596 1597 iggg 6.3.3 AND SSRe=31, THE DATA IS LOADED INTO BITS 21-18 OF THE INTERNAL TSBA REGISTER. EXTENDED STATUS REGISTER O (XSTATO) 1600 1601 i&g 15 14 13 12 11 10 09 00 07 06 OS 0‘ 03 02 01 00 @ccct Gecapoc doc d i% 'TMK! 'RLS;LET'RLL' 1606 $eced bovnboccboccs 0---0---0---0 Sttt Goccboceboces boamtec—paans 1609 BIT NAME 15 TMK 1607 1608 1610 1611 1612 1613 H cee ' H msee TYCC eee S.2 1614 {2{2 1617 1618 1619 1620 1621 1622 1623 1624 1625 - feccbocutaced foccbocchonnd bocebocabor-t Gecmbucabenm= 'KE"&F'ILC' 'ILA’"OT'CN.‘ 'IE 'H.K'BOT'EOT' H 'VCK'PED' DEF INITION eesacsesss TAPE MARK DETECTED. SET WHENEVER A TAPE MARK WAS OETECTED DURING A READ, SPACE, OR SKIP COMMAND AND AS A RESULT OF THE WRITE TAPE MARK RECORD LENGTH SHORYT. THATY OR WITE TAPE MARK RETRY COMMANDS. 14 RLS ] THIS BIY INDICATES EITHER THE RECORD'S LENGTM WAS SHORTER THAN THE BYTE COUNT ON READ OPERATIONS, A SPACE RECORD OPERATION ENCOUNTERED A TAPE MARK OR BOT BEFORE THE POSITION COUNT WAS EXHAUSTED, OR A SKIP TAPE MARKS COMMAND WAS TERMINATED 8y ENCOUNTERING BOT OR A DOUBLE TAPE MARK (IF THAT OPERATIONAL MQDE IS ENABLED, SEE LETY PRIOR TO EXHAUSTING THE POSITION COUNTER. CVTSEBO TSVOS DATA RELIABILITY 1626 1627 1628 1629 1630 1631 MACRO M1113 H3 30-NOV-83 10:17 13 LET 2 1632 iggz 1635 1636 1640 1641 12 RLL 2 %:g 1648 1649 16350 1651 UNLESS THIS RECORD LENGTH INDICATES MODE OF TERMINATION IS ENABLED WHEN THIS THE SET CHARACTERISTICS COMMAND. LONG. SET, BIT THAT THE RECORD READ WAS LONGER THAN THE BYTE COUNT SPECIFIED. 11 WE 3.6 {2‘45 1644 1645 LOGICAL END OF TAPE. SET ONLY ON THE SKIP TAPE MARKS COMMAND WHEN EITHER TWO CONTIGUOUS TAPE MARKS ARE DETECTED OR WHEN MOVING OFF OF B80T AND THE FIRST RECORD ENCOUNTERED IS A TAPE MARK., THE SETTING OF THIS BITVT WILL NOT OCCUR THROUGH USE OF iggz 1639 SEQ 033 WRITE LOCK ERROR. WHEN SET, INDICATES THAT A WRITE OPERATION WAS ISSUED BUT THE MOUNTED TAPE OID NOT CONTAIN A WRITE ENABLE RING OR THE WRT LOCK SWITCH ACTIVATED DURING THE OPERATION. 10 NEF 3 NON-EXECUTABLE FUNCTION. WHEN SET, INDICATES THAT THE COMMAND COULD NOT BE EXECUTED DUE TO ONE OF THE FOLLOWING CONDITIONS: - THE COMMAND SPECIFIED REVERSE TAPE DIRECTION BUT THE TAPE WAS ALREADY POSITIONED AT BOT. THE ISSUING OF ANY MOTION COMMAND EXCEPT CVTSEBO TSVOS DATA RELIABILITY 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 MACRO M1113 30-NOV-83 I3 10:17 SEQ 034 - 09 )(Mo ANY WRITE COMMAND WHEN THE TAPE CONTAIN A WRITE STATUS - WLS). DOES NOT ENABLE RING (WRITE LOCK ILLEGAL ADDRESS. (MORE THAN 18 BITS OR ODD WHEN AN EVEN ADDRESS IS REQUIRED.) TAPE IS MOVING. MOTY ON LINE. WHEN SET, INDICATES THAT THE TSO0S ON-LINE AND OPERABLE. oS IE INTERRUPT ENABLE. éfi?fil}?gT vCK ENABLE REFLECTS THE BIT SUPPLIED STATE ON 03 OF THE 1IS THE LAST VOLUME CHECK. WHEN SET, INDICATES THAT THE ORIVE HAS BEEN EITHER POWERED DOWN OR TURNED OFF-LINE. CLEARED BY THE CLEAR VOLUME CMHECK (CVvC) BIT IN THE COMMAND HEADER WORD. CAN CAUSE A TERMINATION CLASS OF 3. TMIS BIT PHASE ENCODED DRIVE. ALWAYS SEY, INDICATES THAT THE TSOS IS CAPABLE OF READING AND WRITING ONLY PED 1600 1701 DRIVE INITIALIZE, WHEN THE TSO5 IS OFF -LINE. ILLEGAL COMMAND. SET WHEN A COMMAND IS ISSUED AND EITHER ITS COMMAND FIELD OR ITS COMMAND MODE FIELD CONTAINS CODES WHICH ARE NOT SUPPORTED BY THE TSOS. ILA 07 WHEN THE VOLUME CHECK BIT IS SET. ANY COMMAND, EXCEPT GET STATUS OR BPI PHASE ENCODED DATA. 02 WK S.3 WRITE LOCKED. WHEN SET, INDICATES THAT THE MOUNTED REEL OF TAPE DOES NOT HAVE A WRITE-ENABLE RING INSTALLED. THE TAPE 1S, THEREFORE, WRITE PROTECTED. 01 80T S.3 BEGINNING OF TAPE. Eov S.2 END OF TAPE. WHEN SET, INDICATES THAT THE TAPE IS POSITIONED AT THE LOAD POINT AS ?EA;&E)YED 8Y THE BOT REFLECTIVE STRIP ON THE IS POSITIONED THIS BIT AT REFLECTIVE STRIP, OR IS SET WHENEVER THE TAPE BEYOND THE END OF TAPE CVTSEBO TSVOS DATA RELIABILITY MACRO M1113 J3 30-NOV-83 10:17 SEQ 035 1703 1704 %;82 6.3.4 EXTENDED STATUS REGISTER 1 (XSTAT1) 1707 1708 1709 15 1710 $oned 14 13 12 decctecnpeoccd 11 10 1711 1712 1713 1714 17115 1716 BIT NAME TCC DEFINITION 1719 15 oLTY 4 OATA LATE. 1717 1718 1720 09 se= ecce eee READ OR - - NOT USED. 1726 13 COR S CORRECTABLE DATA, i;?sg 12-09 1731 08 1734 07-02 € 00 1736 1737 1738 ON A WRITE. 01 UNC 03 boccboccbocnd 10! O!O! ! ! ' bomebocaponnt 02 01 00 pocpeocbac=t ! O IUNC! O°? ! H ! H bommpocabonmes A THESE CONDITIONS OCCUR WHENEVER THE Q-BUS LATENCY DATA TRANSFER RATE OF THE T1.0S. RPB 0S SET WHEN THE FIFO IS FULL ON EMPTY 14 1735 06 ccescecces- }}gg {;gg 07 doccboncbroch 1IOLT! 1 O !COR! O ¢! ! Ot O ! O !IRBPLO! O! ! L H ! ' ! H H ! ! ! #ecct Bomcecchocot boccprocpacald focabomcboncd 1721 {?’gg {;g; 08 boccpoccbocal EXCEEDS THE (ALWAYS A 0) CORRECTABLE DATA ERROR HMAS BEEN ENCOUNTERED. RESERVED (ALWAYS A 0) 4 READ BUS PARITY ERROR. SET WHEN CONTROLLER DETECTS A PARITY ERROR ON THE READ DATA LINES OF THE TRANSPORT BUS. RESERVED (ALWAYS A 0) 4 UNCORRECTABLE DATA ERROR. CVTSEBO TSVOS DATA RELIABILITY 1;:0 1742 1742 MACRO M1113 IK3 30-NOV-83 10:17 6.3.5 | SEQ 036 EXTENDED STATUS REGISTER 2 (XSTAT2) eeescccecceccncccctcccccccccacanca= 1743 1744 15 1746 10PH! 'nce' 010110 'ucrs 0! ! O 'RL7IRLG! sm.s'm.um- 'm.z-au-m.oo 174S L 1747 ' 1748 0---0 14 N X 13 R R R Y 12 11 TR ¢ I .---.-.-.---. 10 09 08 becapencpen- ¢ B B 07 06 beccbocctecnd O B 0---0---0---0 A R 05 04 03 Poccteccbocad I bocepecnpanad 0---0---0---0 02 01 0---0---0---0 1749 1750 1751 BIT NAME TCC i;g; 1S OPM S OPERATION IN PROGRESS. 1756 14 RCE 7.F2 RAM CHECKSUM ERROR. 1752 1753 1757 cee eese sea }}gg 13-11 1763 10 1766 09-08 1763 i;g; 1767 1768 1769 1770 OEFINITION esccccasss (TAPE MOVING) CAUSES FATAL CLASS 2 BECAUSE THE ERROR MIGHT HAVE OCCURRED DURING THE TRANSMISSION OF THE MESSAGE PACKET. 1760 RESERVED (ALWAYS A 0) WCF 7 WRITE CLOCK FAILURE. RESERVED (ALWAYS A 0) 07-00 RL 7-0 - SET DURING A WRITE TO IWICATE THAT THE FIFO IS NOT BEING EMPTIED BY THE TRANSPORT REVISION LEVEL. 00 bovcdocobonn CVTSEBO TSVOS DATA RELIABILITY MTMMACRO M1113 L3 30-NOV-83 10:17 SEQ 037 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 6.3.6 EXTENDED STATUS REGISTER 3 (XSTAT3) 15 14 $eced Prccbonctboccd 5 ! 12 11 10 09 08 poccpoachan-- 07 NAME boccpoceodocad TCC ' ! bmcmboccbo==t OS RN T Y 04 APy Ay 03 Q. 0 L 0---0---0---0 o---oo--o---o bemcpocnban=t 0! SR B !RIB! OEFINITION 6 OPERATION INCOMPLETE. OR SKIP (SEE LIST OF CODES © ELOW). SET WHEN A READ, OPERATION HAS SFACE, MOVED 25 FEET OF TAPE WITHOUT DETECTING ANY DATA ON THE TAPE. 05 REv S OIRECTION OF CURRENT OPERATION WAS REVERSE (BUT IS 0 IF REWIND OR FORWARD) 04 - - RESERVED (ALWAYS A 0) 03 DCK S.6 OENSITY CHECK. SET WHEN A PE IDENTIFICATION BURST (IDB) WAS NOT MOVING OFF " BOT. 02-01 DETECTED WHEN RESERVED (ALWAYS A 0) RIB 2 REVERSE INTO BOT. A READ, SPACE, OR SKIP COMMAND ALREADY IN PROGRESS HAS ENCOUNTERED THE BOT MARKER WHEN MOVING TAPE IN THE REVERSE DIRECTION. TAPE MOTION WILL BE HALTED AT BOT. EXTENDED STATUS REGISTER & (XSTAT4) 15 14 13 12 $ececd $eccbeoccpo-= ® tHSP ! ' ;RCE' 0t yoo RI BIT 00 Y 't RESERVED (ALWAYS A 0) 6.3.7 01 R !REV'TRF'DCK' ! 07 00 02 'OPI' MICRO DIAGNOSTIC ERROR CODE. 10,234 X 0 15 10 08 06 06 L R MICRO DIAGNOSTIC ERROR CODE $ove® BIT 13 NAME TCC R R 11 o L 0o L 10 09 08 bocctoccteced I L DEF INITION T 0 0 R O 07 0! ! S 06 05 04 03 brccbonctencd R Pecadacadens 02 01 QI WRITE RETRY C OUNT R IR LR L LR Seruiyy R 00 R H ] R CVTSEBO TSVOS DATA RELIABILITY 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 18490 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1835 1856 1857 1858 1859 1860 1861 MACRO M111iS$ M3 3,-NOV-83 10:17 SEQ 038 15 HSP S HIGH SPEED. WHEN SET,INODICATES THAT THE TRANSPORT IS OPERATING IN HIGH SPEED MOOE.(100IPS) WHEN CLEAR, THE TRANSPORT IS OPERATING IN LOW SPEED MODE.(2SIPS) 14 RCE 6 RETRY COUNT EXCEEDED. WHEN SET,INDICATES THAT THE CONTROLLER WAS BUFFERING WRITE DATA AND COULD NOT SUCESSFULLY OUTPUT THE BUFFERED RECORD WITHIN THE SPECIFIED NUMBER OF RETRIES. CAUSES TAPE POSITION LOST TERMINATION, 13-8 7-0 WRC - RESERVED (ALWAYS A 0) S WRITE RECOUNT COUNT STATISTIC. THIS FIELD INDICATES, WHEN THE CONTROLLER IS BUFFERING WRITE DATA RECORDS, THE TOTAL NUMBER OF CONTROLLER INITIATED RETRIES PERFORMED IN ORDER TO WRITE THE PREVIOUS BUFFERED RECORD. THIS COUNT IS CLEARED AFTER IT IS DISPLAYED. 7.0 DIAGNOSTIC HISTORY REVISION A REVISION 8 MAR 1982 MOOIFIED CZTSHC FROM TS11 FOR TSVOS APR 1983 UPDATED THE ODIAGNOSTIC TO SUPPLY THE CORRECT RECORD NUMBER DURING EXECUTION OF TEST #2. REF: CHMIELECKI TO MITCHELL RELIABILITY PROBLEM"; “TSVOS5 DATA 21-JAN-83. CvTSEso TSVOS DATA RELIABILITY MACRO M1113 30-NOV-83 10:17 N3 SEQ 039 .TITLE PROGRAM HEADER AND TABLES .SBTTL .ENABL . BGNMOD 002000 ABS,AMA 2000 §oe s+ 1+ 1 THE PROGRAM HEADER IS THE INTERFACE BETWEEN THE DIAGNOSTIC PROGRAM AND THE SUPERVISOR. -~ POINTER BGNRPT,BGNSW,BGNSFT ,BGNAU,BGNOV CVTSE,B,0,5000,1 31OIAGNOSTIC NAME P PP P HEADER <LOununnwn -“0O0000 TV bt =l et et 4 et b =t =t 4 LSNAME: : P 002000 PROGRAM HEADER /C/ /N/ T/ /8/ /E/ BYTE 027754 030062 002174 002204 LSREV: : 1REVISION LEVEL L$DEPO: ; 10 LSUNIT:: tNUMBER OF UNITS LeTIML:: 1LONGEST TEST TIME LSHPCP: ; tPOINTER TO H.W. QUES. L$SPCP: : +POINTER TO S.W. QUES. L$HPTP: ; sPTR. LeSPTP: ; tPTR. 10 S.W. PTABLE LS$LADP: : 1OIAG. END ADORESS L$STA:: tRESERVED FOR APT STATS TO DEF. H.W. PTABLE L$CO:: LeOTYP: : 1DIAGNOSTIC TYPE LSAPT: : 1APT EXPANSION LS$OTP: ; 1PTR, TO DISPATCH TABLE LOPRIO: : tDIAGNOSTIC RUN PRIORITY LOENVI:: 1FLAGS DESCRIBE MOMW IT WAS SETUP L$SOFT L LéSW LSLAST o 0o 1 o L$OISPATCH o 000000 000000 000000 002164 017570 LSEXPL:: 1EXPANSION WORD LSMREV:: 1SVC REV AND EDIT ¢ LSEF:;: 1DIAG. EVENT FLACTM LISPC:: LSDEVP: : + POINTER TO DEVICE TYPE LIST LSREPP:: 1PTR., TO REPORT COOE LOEXPA; ; LOEXPS:: 024052 024000 002136 104035 021324 023736 023314 021316 72 73 74 LSAUT:; IPTR, TO ADD UNIT CODE LSOUT: 1PTR, TO OROP UNIT COOE LOLUN:: 1LUN FOR EXERCISERS TO FILL LSOESP: : 1POINTER TO DIAG. DESCRIPTION LSLOAD: : 1GENERATE SPECIAL AUTOLOAD EMT LSETP:: tPOINTER TO ERRTBL LSICP:: 1PTR, TO INIT CODE LeCCP:: 1PTR, TO CLEAN-UP CODE LSACP:; 1PTR, T0 AUTO COOE LIPRT:: 1PTR, TO PROTECT LOTEST:: 1 TEST NUMBER LODLY; sDELAY COUNT LIHIME:: 1PTR, .SBTTL TABLE 70 HIGH MEM 0 5 § 003 003 SEQ 040 o .BYTE .BYTE CSREVISION CSEOIT 55588585858 000000 30-NOV-83 10:17 o 0 T 0 LSOVTYP LSRPT o o LAV LDV o L$DESC ESLOAD 55585838 000000 MACRO M1113 X AND TABLES o LSINIT LSCLEAN LS$AUTO LSPROT o 0o o OISPATCH TABLE goe 77 78 79 002122 002122 002124 002124 DISPATCH S 024136 LSOISPATCH:; §§ s THE OISPATCH TABLE CONTAINS THE STARTING ADORESS OF EACH TEST, s IT IS USED BY THE SUPERVISOR TO DISPATCH TO EACH TEST. T1 PROGRAM HEADER AND TABLES DISPATCH TABLE 80 002126 002130 002132 002134 MACRO M1113 30-NOV-83 10:17 SEQ 041 025644 026500 026674 .WORD .WORD .WORD .MORD 027054 .SBTTL 89 T2 T3 T4 TS DESCRIPTIVE TEXT XX 12 LINES OF TEXT PRINTED TO THE OPERATOR TO IDENTIFY THE DIAGNOSTIC AND THE OEVICE UNDER TES 91 9N 93 .-. 002136 002136 ST/ 002136 104 12« 002141 002144 002147 101 002155 002160 002163 131 103 122 111 111 124 124 124 002164 002164 002167 101 114 LS$DESC:: DESCRIPT <DATA RELIABILITY TEST» .ASCIZ OEVTYP 124 .SBTTL .EVEN <TSVOS» LSDVTYP: : /DATA RELIABILITY .ASCIZ /TSVO0S/ .EVEN DEFAMAT HARDWARE P-TABLE goe s+ s+ THE DEFAULT HAROWARE P-TABLE CONTAINS DEFALT VALUES OF THE TEST-DEVICE PARAMETERS, THE STRUCTURE OF THIS TABLE 1 IS IDENTICAL TO THE STRUCTURE OF THE RUN-TIME P-TABLE. '-- 002172 002172 002174 002174 002174 002176 002200 000003 8GN DFPTBL LM .WMORD L10000-L#MM/2 .WORD L10001-L8SW/2 OFPTBL:: 172520 000224 002202 002202 . WORD . WORD . WORD L10000: .SBTTL 172520 224 0 1 TSOB ADORESS. sVECTOR ADODRESS. sDRIVE 00 FOR DEFALT ENDMHM SOFTWARE P-TABLE jee s THE SOFTWARE P-TABLE CONTAINS THE VALUES OF THE PROGRAM ¢ PARAMETERS THAT CAN BE CHANGED B8Y THE OPERATOR, ... 002202 002202 000051 BGNSW SFPTBL TE PROGRAM HEADER AND TABLES SOF TWARE P-TABLE 10:17 WIBUF ;¢ HSSW; ¢ §359888500003080000000080000000880: TS1MD:: ROBUF ; ¢ O000O0O0COOOOTM .BYTE .BYTE DINT:: .BYTE IREC:: .BYTE CHGFLG: : .BYTE .BYTE PIRE:: .BYTE .BYTE CHAR: : CH.EAL CMDD:: BADTSW: ; S Derpere .BYTE CLRFLG:: RRANV; ; .8YTE HAE: ERCVER:: BYTE EXTFEA::. BENBSM: ; L10001; ENDSW : 140 141 142 002226 143 144 143 146 147 148 149 130 30-NOV-83 D4 SEQ 042 LeSW:: SFPTBL:: 002204 002204 §§§§§§§§§§§§ 8 120 127 128 129 130 131 132 133 134 135 136 137 138 139 MACRC M1113 1CLEAR COUNTERS FLAG. 1RESET RANDOM VARIABLES EACH PASS FLAG. |HALT AFTER EACH COMMAND FLAG. 1ENABLE RECOVERABLE ERROR PRINTS FLAG. lgPADAREAPE SHITCH TO REWRITE ON SAME SPOT & DETECT BAD TAPE ' sDISABLE INTERRUPTS FLAG. 1 INHIBIT ERROR RECOVERY FLAG. tCHANGE CMD SEQ TABLE FLAG. 1 SPARE. nglPHIBIY RESIDUAL FRAMECOUNT ERROR REPORT FLAG. 1SPARE . 1CHARACTERISTICS CODE (DEFALT = 40). sCOMMAND 2 (DEFAULT = REWIND). 1BYTE COUNT INUMBER OF OPERATIONS COMMAND 3 (DEFAWLTY = WRITE) |PATTERN (DEFAMATY = RANDOM). 1COMMAND 6 (DEFAMAT = REWIND). tBYTE COUNT INUMBER OF OPERATIONS |PlTTm 3““”*07””(“‘)0”7 1BYTE COUNT (DEFMATY = MAX BAUFFER SIZE). INPMBER OF OPERATIONS (DEFAMAT = 32000). |PATTERN C(OEFAMLTY = RANDOM). 1END OF CMD SEQ TABLE CODE (DEF) OR CrD 8 BYTE COUNT (DEFALT = MAX BUFFER SIZE). INUMBER OF OPERATIONS (DEFALT = 32000). .PATYERN (OEFALT = KANDOM). sDEFAULT SWITCH SETTING tEXTENDED FEATURES SOF TWARE SW O«OFF ;10N 1BUFFER ENABLE SOF TWARE SW 0=0FF ;1=0ON PROGRAM HEADER AND TABLES SOF TWARE P-TABLE MACRO M1113 30- NOV-83 1C:17 E4 SEQ 043 .TITLE GLOBAL AREAS .SBTTL GLOBAL EQUATES SECTION 202 002326 BGNMOD joe 1 1 THE GLOBAL EQUATES SECTION CONTAINS PROGRAM EQUATES THAT ARE USED IN MORE THAN ONE TEST. EQUALS ' + BIT DIFINITIONS ] BIT15ee BIT14ee B8IT13en B8IT12¢== 8IT1ilee 8IT10e81709~ 8I708=~ BI107ee BITO6e=» BIT0Se=» 8IT04¢== BITO3=» B8IT02== BITO1ew 8IT00== 001000 000100 000010 000002 000001 100000 40000 20000 10000 4000 2000 1000 400 200 100 40 $ 8IT79ee B8178e=8IT7ee 8116~ BITSee BIT4ee B8IT3ee BIT2esBITlee B8ITQ=e B8IT04 81703 81702 81701 8I1T00 ] s+ EVENT FLAG DEFINITIONS s EF32:EF17 RESERVED FOR SUPERVISOR TO PROGRAM COMMUNICATION 000040 000037 000035 000034 ] EF .STARTes= EF .RESTART=e EF .CONTINVE== EF .NEW== EF .PWRe=e 32. 31. 30. 29. 28. ' s s PRIORITY LEVEL OEFINITIONS 000340 000300 ] PRIO7== 340 PRI06=+ 300 START COMMAND MWAS ISSUED RESTART COMMAND WAS ISSUEC CONTINUE COMMAND WAS ISSUED A NEW PASS HAS BEEN STARTED A POMER-FAIL/POMER-UP OCCURRED MACRO M1113 GLOBAL AREAS GLOBAL EQUATES SECTION 000240 000200 000140 000100 000040 30-NOV-83 10:17 SEQ 044 PRIOS== 240 PRIO4== 200 PRIO3== 140 PRIO2== 100 PRIO1== 40 PRIOO== O J 1OPERATOR FLAG BITS ] 4 10 20 40 100 EViee LOTee ADRe= IDUe~ ISR=e UAMs=e BOE == PNTes PRIee IXEae IBE== IERee LOEe== HOE== 200 400 1000 2000 4000 10000 20000 40000 100000 S0 0 s DD rX7 1 REGISTER USAGE. PASSES PARAMETERS TO/FROM DIAGNOSTIC SUPERVISOR. COMMAND SEQUENCE TABLE POINTER. GENERAL PURPOSE REGISTER, GENERAL PURPOSE REGISTER. GENERAL PURPOSE REGISTER. CURRENT LOGICAL DEVICE NUMBER X 2. STACK POINTER. PROGRAM COUNTER. 1 THE FOLLOWING ARE BIT OEFINITIONS FOR THE TSSR REGISTERS. 000100 177717 177761 7S.5C=+100000 7S .UPE = =40000 1S . SPE ==20000 7S.RMR*=10000 TS . NXMe==4000 7S.NBA=+2000 75.A17+=1000 75.A16--400 7S.55R==200 7S.0FL==100 TSC.FCC==177717 TSC.TCC==177761 1SPECIAL CONDITION BIT. tUNIBUS PARITY ERROR 1SERIAL BUS PARITY ERROR. tREGISTER MODIFICATION REFUSED. sNON-EXISTENT MEMORY, tNEED BUFFER ADORESS. 1BUS ADORESS BIT 17, 1BUS ADDRESS BIT 16. 1UNIT READY BIT. 10OFF LINE. 1FATAL CLASS CODE MASK. 1 TERMINATION CLASS CODE MASK, 1 THE FOLLOWING ARE BIT DEFINITIONS FOR THE COMMAND WORD ACK . C==100000 CvC.C==40000 OPP ,C=+=20000 SW8.C==10000 tACKNOWLEDGE BIT 1CLEAR VOLUME CHECK, 1OPPOSITE BIY 1SWAP BYTE BIT GLOBAL AREASSEQ GLOBAL EQUATES SECTION SEQMACRO M1113 30-NOV-83 10:17 G4 SEQ 045 251 252 004000 004000 MO0 .C3==4000 BRF .C=+4000 tMODE BIT 3 1BYTE/RECORD/FILE COUNT FLAG BIT. 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 g?,g 002000 001000 000400 000200 000100 000100 MOD .C2=+2000 MOD.C1=+1000 MO0 .CO==400 1E.C==200 FMT.C1==100 VFY.C==100 000040 000040 FMT . CO=+40 JMP . C==40 000020 000020 000010 000004 000002 000001 CMD.C4==20 OLY.C==20 CMD.C3==10 CMD.C2==4 CMD.Clee? CMD.CO==1 1MOOE BIT 2 +MODE BIT 1 +MODE BIT O 1 INTERRUPT ENABLE 1FORMAT BIT 1 {WRITE VERIFY FLAG BIT. INTERNAL USE ONLY, 1NOT USED BY TSOS. 1FORMAT BIT O. 1JUMP BIT-TO DIRECT THIS PROGRAM TO JUMP TO sA CERTAIN LOCATION IN THE COMMAND SEQUENCE sTABLE. INTERNAL USE ONLY. sCOMMAND BIT 4 1INSERT DELAY. INTERNAL USE ONLY. 1COMMAND BIT 3 1COMMAND BIT 2 ;COMMAND BIT 1 ;COMMAND BIT O 253 g;g 274 275 276 g;z 000200 000040 000020 000040 CH.ESS==200 CH.EAI=<40 CH.ERI==20 OF TSCHe=CH EAI 1ENABLE SKIP TAPE MARKS STOP (STOP AT LOGICAL EOT). tENABLE ATTENTION INTERRUPTS. 1ENABLE MESSAGE BUFFER RELEASE INTERRUPTS. 1DEFAULT CHARACTERISTICS COOE. 1BIT DEFINITIONS FOR EXTENDED CONTROL WORD 000040 000030 000020 285 ggg EF .HSS==40 EF .RWUB=+30 EF .RBO==20 1ENABLE HIGH SPEED SELECT 1ENABLE BOTH READ & WRITE BUFFERING 1ENABLE READ BUFFERING ONLY ; THE FOLLOWING INDICATES THE RELATIVE POSITIONS OF THE STATUS WORDS 1IN THE MESSAGE BUFFER. 288 000004 MS.RFC==4 sRESIDUAL FRAME COUNT. 290 291 292 gs 000010 000012 000014 000016 MS.XS1==10 MS.XS2==12 MS.XS3e=14 MS.XS4=216 1EXT STATUS REG 1 1EXT STATUS REG 2 1EXT STATUS REG 3 1EXT STATUS REG 4 289 000006 g 297 298 299 300 301 302 303 33845 306 NOT USED THIS PROGRAM ONLY. ;:8IT DEFINITIONS FOR DEVICE CHARACTERISTICS. g;g 281 282 ggz 1BY TSOS BUT USED INTERNALLY BY MS.XSO==6 1EXT STATUS REG O : THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER O. 100000 040000 020000 010000 000100 000004 000002 000001 X0 . TMK = 100000 X0.RLS®=40000 X0.LET==20000 X0.RLL *=10000 X0.0ONL ==100 X0.WLKseg X0.80Tee2 X0.EQOTes} 1 TAPE MARK, tRECORD LENGTH SHORT, 1LOGICAL EOT, tRECORD LENGTH LONG. tON LINE BIT, JWRITE LOCK BIT 180T BIT, 1EOT BIT, s THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 2. GLOBAL AREAS GLOBAL EQUATES SECTION 308 309 gig 100000 000200 000100 g{g 314 giz % 30-NOV-83 10:17 X2 .0PM==100000 X2 .EFE==200 X2.BFE==100 SEQ 046 tOPERATION IN PROGRESS, TAPE MOVING 1EXTENDED FEATURES ENABLEDC 1BUFFERING ENABLED s THE FOLLOWING ARE BIT DEFINITIONS FORk EXTENDED STATUS REGISTER 3. 000010 157400 gi; 319 MACRO M1113 X3 .0CKee10 X3.RNY==157400 tDENSITY CHECK, 1CAPSTAN RUNAWAY UDIAG ERROR CODE. 1 THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 4, 100000 040000 322 323 X4 ,HSS==100000 X4 .RCE== 40000 1HIGH SPEED SWITCH INDICATING 100IPS sRETRY COUNT EXCEEDED 1 THE FOLLOWING DEFINITIONS SHOW THE RELATIVE POSITIONS OF THE COMMAND 333; 1PACKET ENTRIES. 326 000000 CP.CMD==0 sCMOPKT «0==TS0S COMMAND . 328 3233 000004 000006 CP.ADH==4 CP.CNT==§ tCMOPKT +4==BUFFER ADDRESS MIGM. 1CKDPKT+6==BYTE/FILE/RECORD COUNT 327 000002 ggé 333 334 CP.ADL==2 tMISCELLANEOUS DEFINITIONS. 000340 INTPRI==PRIO7 000012 SCHCNT==12 336 000020 MSGONT =220 338 004000 DATCNT=22048. 335 337 339 340 341 342 343 344 345 346 347 348 g‘sg 1CMOPKT +2=«BUFFER ADDRESS LOW. 000020 177740 000007 000020 000020 153624 032561 177774 177740 gg% DIACNT==20 sPRIORITY TO BE USED IN INTERRUPT STATE. 1ARBITRARY BYTE LENGTH FOR CHARACTERISTIC 18UFFER LENGTH. 1DIAGNOSTIC COMMAND BUFFER EXTENT. iMAXTMUM RECORD LENGTH IN BYTES, s THIS COUNT SHOULD BE A MATIPLE OF 256 TO INSURE 1PROPER READ/WRITE BUFFER ALLOCATION BY THE SUPER. RNOPSC==177740 sRANDOM @ OF OPERATIONS MASK, RANPsa? 1CODE TO SELECT RANDOM PATTERN. RRECL==16. tREAD RECOVERY ATTEMPT LIMIT, WRECL ==16. sWRITE RECOVERY ATTEMPT LIMIT. RANBC==153624 tCONSTANY USED TO RESET RANDOM & GENERATOR BASE. RANSC==325%61 sCONSTANT USED TO RESET RANDOM & SAVE LOCATION. NINUSE==177774 iNOT IN USE CODE FOR DEVICE STATE TABLE. NCMD.C==ACK.C!ICVC.C!OPP.C!SWB. c-noo C3!MOD.C2!M0D.CL'HOD.COLIE.CIFMT C1FMT. CO 1NOT "COMMAND” BITS. s THE FOLLOWING DEFINES THE COMMAND WORD FOR EACH TSOS COMMAND. 353 100013 OR]e=» ACK.C!CMD.C3!CMD.CL!CMD.CO 356 ggg 104001 ROF == ACK,.C!BRF .C!CMD.CO 359 104401 ROR=» ACK.C!BRF .C!M0D.CO!CMD.CO 362 363 104005 WRT=s ACK.C!BRF.C!CMD.CO!CMD.C2 1WRITE COMMAND gg; 332(1) (EVEN ¢) sMESSAGE BUFFER LENGTH IN BYTES. (EVEN ¢) tORIVE INIT. 1READ FORWARD 1READ REVERSE MACRO M1113 GLOBAL AREAS GLOBAL EQUATES SECTION 30-NOV-83 10:17 365 366 367 368 369 370 371 372 373 374 104105 WTVse ACK.C!BRF ,CtVFY,C!CMD.CO!CMD.C2 104010 SRF == ACK.C!BRF.C!CMD.C3 104410 SRR== ACK.C!BRF.C!M0D.CO!CMD.C3 105401 RNR=» ACK.C!BRF.C!MOD.C1!MOD.CO!CMD.CO tREAD REV RETRY1 - REREAD NEXT REVERSE, 377 378 379 580 381 382 383 384 385 386 387 388 389 390 391 125401 RNF == ACK.C!BRF.C!OPP,.C!M0D.C1!M0D.CO!CMD.CO 105001 RPF e ACK.C!BRF.C!MOD.C1!CMD.CO 125001 RPRs=e 105005 WRR== ACK.C:0.C1!BRF.C!CMD.C2!CMD.CO 102010 RWQee ACK.C!MOD.C2:CMD.C3 100012 MBRe~ ACK.C!CMD.C3:CMD.CL 100011 WTMe=s ACK.C!CMD.C5!CMD.CO 101011 WTRes= ACK.C!MOD.C1:CMD.C3!CMD.CO 105010 SFFae ACK.C!BRF .C!M0D.C1:CMD.C3 105410 SFRee 100017 GES=» 100411 ERSes 100412 UNLee ACK.C!MOD.CO!CMD.C3!CMD.CL 101012 CLNee= ACK.C!MOD.C1:!CMD.C3!CMD.C) 140004 SCH.- ACK.C!CvC.C!CHMD.C2 140006 WSMea= ACK.C!CVC.C!CMD.C2!CMD.C) 375 376 tWRITE VERIFY 1 SPACE RECORD FORWARD t SPACE RECORD REVERSE tREAD REV RETRY2 - REREAD NEXT FORWARD, IE. SPACE FWD, READ REVERSE IE.READ FORWARD, tREAD FWD RETRY1 - REREAD PREVIOUS FORWARD, ACK.C!BRF.C!OPP.C!MOD.C1!:CMD.CO tREAD FWO RETRY2 - REREAD PREVIOUS REVERSE, tWRITE RETRY sREWIND COMMAND sMESSAGE BUFFER RELEASE $IWRITE TAPE MARK, tWRITE TAPE MARK RETRY. 1SPACE FILE FORWARD ACK.C!BRF.CtMOD.CO!MOD.C1:CMD.C3 $SPACE FILE REVERSE ACK.C!CMD.CO!CMD.C1:CMD.C2!CMD.CS tGET EXTENDED STATUS ACK.C!MOD.CO!CMD.C3!CMD.CO tERASE 3 INCHES OF TAPE 1tUNLOAD COMMAND 1ERASE TAPE. 1SET DEVICE CHARACTERISTICS. IWRITE SUB-SYS MEM IE. SPACE REVERSE SPACE REVERSE, READ FORWARD ItE. READ REVERSE, SPACE FORWARD GLOBAL AREAS GLOBAL EQUATES SECTION 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 MACRO M1113 30-NOV-83 10:17 100006 OIA== ACK.C!CMD.C2!CMD.C1 1OIAGNOSTICS. 000040 JMPes UMP.C tJUMP TO “N"TH COMMAND 000020 OLYee DLY.C 1DELAY 1777177 END=s 177777 1END OF COMMAND SEQUENCES .SBTTL GLOBAL DATA SECTION “N" MS, jee + THE GLOBAL DATA SECTION CONTAINS DATA THAT ARE USED + IN MORE THAN ONE TEST. '-- 439 3 440 441 442 002330 443 002332 002334 002340 002340 100017 100012 471 472 002354 102010 000001 tMUST BE ON MOD 4 BOUNDRY, $1ST WORD IS TSOS5 COMMAND. 12ND WORD IS THE BUFFER LOM ADDRESS. 13RD WORD IS THE BUFFER HIGH ADORESS. 14TH WORD IS THE BYTE/RECORD/FILE COUNT. GET STATUS COMMAND PACKET. . GSCPK:: .WORD 3 MESSAGE BUFFER RELEASE COMMAND PACKET, <,+3>8177774 GES 1MUST BE ON MOD 4 BOUNDRY. . <, +3>E177774 BRCPK:: .WORD MBR 3 REWIND COMMAND PACKET (USED IN ERROR RECOVERY ONLY) 002350 002350 002352 <, +3>E177774 3 002344 002344 COMMAND PACKET. . CMOPKT:: O 0 0 0 002336 475 476 477 478 SEQ 048 iMUST BE ON MOD 4 BOUNDRY. - <. ¢358177774 RWCPK:: .WORD RWD 3 WORK AREA FOR ANALYSIS OF MESSAGE PACKET CONTENTS. MSGPKT:: .WORD .BLKW 1MUST BE ON MOD 4 BOUNDRY. 1 8. $11ST WORD:: 12ND WORD:: MESSAGE TYPE. DATA FIELD LENGTH. $3RD WORD:: RESIDUAL FRAME COUNT. 14TH WORD:: XSTATO 37TH WORD:: XSTATS 1STH WORD:;: XSTATY ;6TH WOD:: XSTAT2 GLOBAL AREAS GLOBAL DATA SECTION 479 480 481 482 483 484 485 486 002374 002414 002434 002454 MSGPKO: : MSGPK1: : MSGPK2: : MSGPK3: : 3 SEQ 049 .BLKW .BLKW .BLKW .BLKW 8. 8. 8. 8. 18TH WORD:: XSTAT4 1MESSAGE tMESSAGE 1MESSAGE 1MESSAGE PACKET PACKET PACKET PACKET FOR FOR FOR FOR DEVICE DEVICE DEVICE DEVICE &0 @1 #2 3 SET CHARACTERISTIC BLOCK. SCHBK:: MSGPKO 0 MSGCNT CH.EAI 002474 002476 002500 002502 002504 11ST WORD:: 12ND WORD:: 13RD WORD:: MSGPKT ADOR LO(SET UP BY EXCUTE ROUTINE). MSGPKT ADOR HI. MSG BUFFER LENGTH (BYTES) 1S5TH WORD:: HSP &€ BUFFER CONTROL ON EXT'D FEATURES 14TH WORD:: o CHARACTERISTICS WORD(SET BY SETUP ROUTINE). WRITE SUB-SYSTEM MEMORY CHARACTERISTIC BLOCK. 002510 500 002512 501 502 503 S04 002514 305 002524 506 002534 507 508 509 310 S11 312 513 514 515 3516 517 518 319 30-NOV-83 10:17 MESSAGE PACKETS. 487 488 489 490 491 492 493 494 495 496 497 498 499 MACRO M1113 002514 WSMBK:: O 0 0 3 TSOS REGISTER ADDRESSES. TSDB:: .BLKW TSSR:: .BLKW TSVCT:: .BLKW TSBA==TSD8 : 002544 002550 002552 002374 002414 002434 002454 MSGPKA:: 002562 010034 010042 010050 010056 TSSINT:: 002600 MSGPKO MSGPK1 1 7SO5 1 7SOS 1 7S05 1DATA DATA BUFFER ADORESSES. STATUS REGISTER ADDRESSES. VECTOR ADORESSES. BUFFER ADDRESS REGISTER. sDEVICE O. 1OEVICE 1. 10OEVICE 2. sOEVICE 3. ADORESSES OF INTERRUPT HANDLING ROUTINES. TSSINO TSSINL TSSIN2 TSSINS 1DEVICE O. s1DEVICE 1. 1DEVICE 2. 1OEVICE 3. : TSOS CODE LEVELS, WILL BE STORED AFTER SCH CMD IN BASIC FUNCTION TEST TSSCL:: O 0 0 0 ' TSO5 EXT, FEA € BUF, ENA SW'S, WILL BE STORED AFTER SCH CMD IN BASIC FUNCTION TEST TSSSW:: O 002570 002572 002574 002576 4 4 4 SEL O SEL 2 SEL 4 ADDRESSES OF MESSAGE PACKETS. MSGPK2 MSGPK3 3 002554 002356 $+1ST WORD:: 12ND WORD:: 13RD WORD:: 0 0 1DEVICE ;OEVICE ;1DEVICE 1DEVICE O 1 2 3 +DEVICE O sOEVICE 1 1DEVICE 2 GLOBAL AREAS GLOBAL DATA SECTION 33_6' 002602 MACRO M1113 L4 30-NOV-83 10:17 000000 0 SEQ 050 1OEVICE 3 538 ' UNIT NUMBERS OF ALL DEVICES BEING TESTED(1-4). g:g } RS WILL ALWAYS CONTAIN THE PRESENT LOGICAL UNIT NUMBER X 2. DEVTBL:: .WORD .WORD WORD .WORD .WORD i i BAD TAPE TABLE POINTER: USED B8Y WRITE RETRY ROUTINE “WRTY” TO LOG BAD TAPE SPOTS ON UNITS UNDER TEST 539 542 543 544 945 946 S48 ' 002604 002606 002610 002612 002614 177774 177774 177774 177774 177777 549 ggg 532 002616 553 002620 554 002622 355 002624 gg"} 558 559 002626 560 002666 561 002726 003046 003120 003172 003244 002626 562 002766 563 002776 564 003006 567 568 369 570 S71 572 573 574 S75 576 577 578 379 580 Ssgé 003036 003046 003120 003172 003244 003316 003326 003336 003346 003356 003366 003376 003376 000550 583 003410 003412 003414 003416 = -3, NINUSE NINUSE NINUSE NINUSE ENO 871 872 8T13 .BLKW .BLKW .BLKW .BLKW .BLKW .BLKW .BLKW .BLKW RFUNR:: .BLKW 870:: BLKW 8T1:: BLKW gre:: .BLKW 873:: .BLKW WRTYCT:: .BLKW PASCNT:: .BLKW SCONT:: .BLKW VFYCNT:: .BLKW HROCNT:: .BLKW FTLCNT:: .BLKW CNTE'D' RECCNT:: .BLKW 20 20 20 1BYTES WRITTEN. 1BYTES READ REV. 1BYTES READ FWD. 4 4 1UNRECOVERABLE READ REV ERRORS. tRECOVERABLE READ FWDERRORS. 4 4 4 4 21. 21. 21. 21. 4 4 4 4 4 4 4 CNTLEN==CNTEND -CNTBGN i 587 003406 IT,S LOCATION WILL 8TO CNTBGNe=, WRBC:: RRBC:: RFBC:: IN USE, COUNTER AREA. ' Ssgz 589 590 591 592 $ RRUNR:: RFREC:: S84 588 BTADDR:: WRREC:: WRUNR:: RRREC:: S65 003016 566 003026 WHEN DEVICE XS NOT tRZCOVERABLE WRITE ERRORS. tUNRECOVERABLE WRITE ERRORS. sFECOVERABLE READ REV ERRORS. tUNRECOVERABLE READ FWD ERRORS. tUNIT O BAT TAPE SPOTS LOG tUNIT 1 BAT TAPE SPOTS LOG 1UNIT 2 BAT TAPE SPOTS LOG tUNIT 3 BAT TAPE SPOTS LOG tWRITE RETRY COUNTER 1PASS COUNT. 1SPECIAL CONDITION COUNT. t1COUNT OF TSOS DATA COMPARE ERRORS. sCOUNT OF HARD ERRORS. tCOUNT OF FATAL ERRORS. tEND OF STATICTICAL COUNTERS. tNUMBER OF RECORDS FROM BOT: CLEARED THE FOLLOWING ARE THE DEFINITIONS OF VARIABLES USED BY THE PROGKAM, 000000 DATAWT:: .WORD O tWRITE BUFFER ADDRESS. 000000 000000 000000 000000 OATARD:: .WORD NCNT:: .WORD NCNT1:: .WORD BRFCNT:: .WORD O 0 O O tREAD BUFFER ADORESS. 1STORAGE FOR VALUE OF N. 1 TEMP STORAGE FOR VALUE OF N. 1STORAGE FOR BPCR VALUE. 003406 DIABLK==DATAWT ON REWIND $tAND WHEN RESTARTING OR CONTINUING TEST 2. tLENGTH OF STATISTICAL COUNTER AREA. tWRITE BUFFER ALSO USED FOR DIAG CMD. GLOBAL AREAS GLOBAL DATA SECTION 177777 177777 177777 000000 000000 1353624 032561 i 003420 003422 003424 003426 003430 MACRO M1113 30-NOV-83 10:17 CMOWRD:: CMDSAV:: RANB:: RANS:: TIMEL:: TIME2:: JO0P:: .WORD .WOROD WORDD .WORO .WOFD JOC:: PATERN:: i 338388888 § 8833888388 ; & .WORD END ENO 1CONTAINS COMMAND WORD BEING EXECUTED PRESENTLY. tSAVE LOCAT_ON FOR CMD WORD DURING ERROR RECOVERY 133624 32561 1RANDOM & GENERATOR BASE. $RANDOM & SAVE LOCATION. END O & O O O O O .WORD $ ERROR FLAG AREA, RSSAVE:: TSSREG:: WTMLG:: .WORD .WORD .WORD RETRYC:: .WORD RPTCNT:: .BYTE WRTYFG:: .BYTE WRTYER:: .BYTE RECLOG:: .BYTE ERLOG:: .BYTE RWERR:: .BYTE UNREC:: .BYTE ERRREC:: .BYTE .EVEN ENDERF =, INTFLG:: EOTFLG:: BTPT:: EXPBOT:: RANDOM:: VFYFLG:: RPTFLG:: SWBFLG:: IRE:: DROPED:: T1SWB:: ALLEOT:: ERSFLG:: ENDFLG=. STAFLG:: 0 O O O 1CONTAINS PREVOUS COMMAND WORD. 1CURRENT COMMAND LOGGING COO€E. tRANDOM WRITE LENGTH MASK, TO BE SET UP BY TESTS s TIME COUNT 1. 1 TIME COUNT 2. 1+JMP COMMAND LOOP COUNT, 1JMP COMMAND LOCATION COUNT, JPATYERN SELECT COOE. 1CURRENT TERMINATION CLASS COOE. .Locnuou FOR SAVING CURRENT DEVICE POINTER. sCURRENT STATUS REGISTER. tWRITE TAPE MARK FLAG THESE FLAGS ARE CLEARED DURING INITIALIZATION AND AFTER EACH COMMAND IS COMPLETED. BGNFLG=. ' § .WORD SEQ 051 CTCC:: 3 003526 .WORD .WORD PCMOWD:: .WORD CMOLG:: .WORD LENMSK:: .WORD : 003472 M4 O O O O 1® OF RECOVERY ATTEMPTS EXECUTED. tWRITE REPEAT ON SAME SPOT CNTR: 4 PER WRITE RETRY 1WRITE RETRY ON SAME SPOT IN PROGRESS FLAG tWRITE RETRY ON SAME SPOT ERROR FLAG O IREAD/WRITE ERROR HAS OCCURED. O O O O 1RECORD COUNT HAS BEEN UPDATED FOR THIS RECORD. 1OATA BYTES AND ERRORS MAVE BEEN LOGGED FOR THIS RECORD. tUNRECOVERABLE ERROR HAS OCCURED. 1ERROR RECOVERY MOOE. ADDITIONAL FLAGS, THESE FLAGS ARE CLEARED DURING INITIALIZATION. .BLKW .BLKW .WORD .BYTE .BYTE .BYTE .BYTE .BYTE 4 4 O O O O O O s INTERRUPT OCCURRED FLAGS FOR EACH DEVICE. 1EQOT/BOT FLAGS FOR EACH DEVICE (XSTATO). 1BAD TAPE SPOT POINTER 7O B70-BT3 VIA BTADDR 180T IS EXPECTED, DO NOT ABORT ON BOT/FUNC RTI. tRANDOM EVERYTHING FLAG. 1SET DURING WRITE/VERIFY COMMAND. 1 PERFORMANCE REPORT HAS BEEN REQUESTED. 1ENABLES SWAP BYTE FUNCTION WHEN NOT EQUAL TO ZERO. .B8YTE .BYTE .BYTE O O O 1CURRENT UNIT MAS BEEN DROPPED 1 TEST1 SWAP BYTES FLAG tALL UNITS @8 EOT FLAG .BYTE .BYTE O O 1ERASE FLAG: DO ERASE AFTER A SPACE REV TO DELETE 1BAOLY WRITTEN RECORD. 1 TO 4 ERASES LEAVING A 3 TO 12 INCH GAP MAY RESWLT. .EVEN ADDITIONAL FLAGS, .BYTE 1 INHIBIT RESIDUAL FRAME COUNT ERROR REPORT. 0 THESE FLAGS ARE CLEARED ONLY AFTER BEING CHECKED. tSTART FLAG - SET BY INIT CODE IF STARTING. GLOBAL AREAS GLOBAL DATA SECTION 003527 003530 003531 003532 003534 tPOWER FAILURE FLAG - SET ONLY DURING INIT, s TRAPED AT 4 FLAG tMISCELLANEOUS FLAG INUMBER OF THE UNIT UNDER TEST PLUS HSSPEBUF tFOR PRINT OUT UNIT @ ONLY O O O O 0 : i OPERATOR FLAG SETTINGS PASSED BY DIAG. SUPERVISOR IN A 16 BIT WORD SEE GLOBAL EQUATES SECTION FOR FLAG BIT LIST OPFLAG:: .WORD .EVEN O tREAD ONLY OPERATOR FLAG WORD tTHE FOLLOWING IS THE COMMAND SEQUENCE TABLE. THE TABLE tHAS DEFAULT VALUES AT PROGRAM LOAD AS SHOWN. THESE VALUES 1CAN BE UPDATED BY A TEST OR BY OPERATOR INPUT, 177777 177777 177777 177777 177777 SEQEND:: . 100013 104001 104401 CMDTBL:: 104005 104105 104010 104410 x ® 687 1SET CHARACTERISTICS. 1REWIND. tBYTE COUNT. : ONCE . 1PATTERN, sWRITE. tMAX BUFFER LENGTH, 132,000 RECORDS. 1RANDOM PATTERN. sREAD REYV, tMAX BUFFER LENGTH. 132,000 RECORDS 1RANDOM PATTERN. sREAD FWD. sMAX BUFFER LENGTH. 132,000 RECORDS. 1RANDOM PATTERN, » o 681 682 683 684 685 SCH CH.EAI 328 CHMDSE2: .WORD L < CMDSEQ:: 678 679 680 690 SEQ 052 I HE 55 3335 A3338 THHHH 003536 N4 30-NOV-83 10:17 PWRFLG:: .BYTE TRAPD4:: .BYTE MISCFG:: .BYTE TSUNT:: .WORD TSNP:: .WORD : 650 651 632 633 654 635 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 MACRO M1113 END FOLLOWING IS THE sREWIND. 1BYTE COUNT, 1ONCE. sPATTERN. sEXTENSTION TO DOUBLE BUFFER SIZE 1SOFT END OF SEQUENCE TABLE. 1 HARD END OF SEQUENCE TABLE. T7SOS COMMAND TABLE ORI ROF ROR 1ORIVE INIT, tREAD FORWARD. 1READ REVERSE. SRf SRR IWRITE/VERIFY. (WRITE ALL RECORDS. ROR AND 1CHECK DATA ON ALL RECORDS, RDF AND 1CHECK DATA ON ALL RECORDS.) 1SPACE “N” RECORDS FORWARD, 1SPACE “N” RECORDS REVERSE. WRT Wrv 1WRITE 177777 104 122 122 127 111 106 122 124 127 126 106 122 122 106 106 122 122 104 122 1135 122 106 122 123 123 114 116 110 112 IWRITE TAPE MARK SFR GES ERS UNL CLN OIA JP OoLY END I.E., SPACE FWD, READ REVERSE. I.E., READ FORWARD, SPACE REVERSE. : ; WTM WTR SFF 3 103001 123001 103003 102010 100012 100011 101011 103010 105410 100017 100411 100412 101012 tREAD NEXT REVERSE. IREAD NEXT FORWARD, - 103401 123401 SEQ 053 $233333 003770 003772 003774 003776 004000 004002 BS 30-NOV-83 10:17 33333333333333833358 707 708 709 710 711 112 13 714 7135 716 717 718 719 720 721 722 723 724 725 726 727 MACRO M1113 g GLOBAL AREAS GLOBAL DATA SECTION I.E., SPACE REVERSE, READ FORWARD tREAD PREVIOUS REVERSE. I.E., READ REVERSE, SPACE FORWARD tWRITE RETRY, 1REWIND, tMESSAGE BUFFER RELEASE tWMRITE TAPE MARK RETRY, 1SPACE "N” FILES FORWARD. 1SPACE "N~ FILES REVERSE. 1GET EXTENDED STATUS. 1ERASE 3 INCHES OF TAPE, tREWIND AND UNLOAD. 1CLEAR TAPE, 1SET CHARACTERISTICS. 1DIAGNOSTIC COMMAND . sAMP TO THE NTH COMMAND IN THE SEQUENCE. 3 THE FOLLOWING TABLE CONTAINS THE ASCII FOR EACH COMMAND. CMOASC: : .ASCII A SCI1I .ASCII .ASCII .ASCII /DR1/ /ROF / /RCR/ /WRT/ MTV/ /SRF / /SRR/ /RNR/ /RNF/ /RPF/ /RPR/ JORIVE INIT. +READ FORWARD. sREAD REVERSE . tWRITE (MRITE/VERIFY, (MRITE ALL RECORDS, RDR AND CHECK DATA 1ON ALL RECORDS, ROF AND CHECX DATA ON ALL RECORDS.) CORDS FORWARD. 1SPACE "N* RECORDS REVERSE. JREAD NEXT REVERSE. I.E., SPACE FUD READ REVERSE. sREAD NEXT FORWARD, I.E.. READ FORMARD, SPACE REVERSE. IREAD PREVIOUS FORWARD. IE.., SPACE REVERSE, READ FORWARD {READ PREVIOUS REVERSE. IE.. READ REVERSE, SPACE FORWARD tWMRITE RETRY, 1RENIND. {MESSAGE BUFFER RELEASE (MRITE TAPE MARK JMRITE TAPE MARK RETRY. 1SPACE "N* FILES FORWARD. 1SPACE "N” FILES REVERSE. 1GET EXTENDED STATUS. (ERASE 3 INCMES OF TAPE. IRENIND AND UNLOAD. "ASCII ICLEAN TAPE. JASCII 102 .ASCII 120 .ASCII SET CHARACTERISTICS. WMERE BRF=200, 40. 20, O. .sse TSVOS/7S0S PROGRAMMING SPECIFICATION FOR DESCRIPTION. 1OIAGNOSTICS, SEE TSVOS/TSOS PROGRAMMING SPECIF ICATION 1FOR DESCRIPTION. ODT MUST BE USED TO LOAD DIAGNOSTIC DATA 1INTO THE MRITE GUFFER BEFORE THIS CMD IS ISSUED. 1 AMP TO THE NTM COMMAND IN THE COMMAND 1SEQUENCE TABLE, WHERE N xs DEFINED IN 761 104 114 131 .ASCI1I /0LY/ 763 105 116 104 .ASCII /7END/ +THE @ OF OPERATIONS {DELAY "N* MS, WMERE N IS DEFINED IN (THE @ OF opeintxous 1END OF COMMAND SEQUENCE. GLOBAL AREAS GLOBAL DATA SECTION 764 765 166 767 768 769 770 771 772 773 774 MACRO M1113 C5 30-NOV-83 10:17 SEQ 054 .EVEN .SBTTL GLOBAL TEXT SECTION 100 1 THE GLOBAL TEXT SECTION CONTAINS FORMAT STATEMENTS, » MESSAGES, AND ?22%1 INFORMATION THAT ARE USED IN + MORE THAN ONE '-- ' + FORMAT STATEMENTS USED IN PRINT CALLS : NLIST BEX CODELM:: .ASCIZ /9NSAUNIT #D1sA TSO3 COOE LEVEL s#O3sNEN/ /8NSAUNIT #D1sA TSOS SWITCH SETTINGS sO3%Ne#N/ SWSET:: .ASCIZ .EVEN HMALTM:: .ASCIZ /XXX CMD - TYPE <CR> TO CONTINUE/ CMOPYM; ¢ éASCIZ /CMD PACKET ADR NOT ON MODULO 4 BOUNDARY: RELOAD!/ WYVERM;: .ASC1Z /DATA COMPARE ERROR/ TOERM: : .ASCIZ /ND TSVOS RESPONSE/ SCERM:: .ASCIZ RFCERM;: .ASCIZ NS 1t ASCI2 /7TSVO03 NOT READY/ ATTNM;s FUNRM:: FATSM:: .ASCIZ2 .ASCIZ .ASCIZ /ZFUNCTION REJECT/ /FATAL SUBSYSTEM ERROR/ TSAM:: TOOMM:: RNYM: s . . .ASCIZ RLEXM:: NOINTM;: s 1t URERM:: .ASCI2 /RETRY LIMIT EXCEEDED/ /ORIVE OFF LINE/ .ASE%Z /NO INTERRUPT/ /TAPE STATUS ALERT/ /7700 MANY INTERRUPTS/ /CAPSTAN W&ff STATUS RESWLTS:/ . . AUDRPM;1 . ASCIZ S OROPPEDWNIN/ /79NsADIAGNOSTIC ONLY SUPPORTS ONE CONTROLLERSNSN/ “NsAB Y TE ;: DASS28ANAS ; 9805 S2%AS /B ; sBASN ~ “gD4dA BYTES IN ERROR OUT OF wD4uN” /8AND DATA READWN/ /oARECORD TOO LONG: >#04%A BYTESsN/ /8ARECOVERED ON RETRY OwDuwN/ /8ADRIVE #D1sA OFF LINEwN/ /78AGET STATUS CrMD RESULTS :eN/ /78NsABUS TRAP AT #068N/ /SAINTERFACE BAD OR TSDB NOT SET TO ABOVE ADDRESSEN/ 5‘.‘;0007“ IS WRITE-LOCKED AND WILL CAUSE ERRORSeessar/ /uNiS T/ 8EX MACRO M1113 GLOBAL ARE AS GLOBAL ERROR REPORT SECTION 827 828 829 830 831 832 833 834 835 836 842 30-NOV-83 .SBTTL D5 10:17 SEQ 035 GLOBAL ERROP REPORT SECTION goe 1 THE GLOBAL ERROR REPORT SECTION CONTAINS THE PRINTB AND PRINTX CALLS IT ALSO INCLUDES THE ASCII MESSAGES + THAT ARE USED IN MORE THAN ONE TEST, + 016546 003376 003326 THAT ARE USED BY BGNMSG OTAERM: ; ODATERM: :PRINTB THE PRINTB AND PRINTX CALLS.. OTAERM #STAER1, TSNP ,PASCNT(RS),RECCNT(RS) 175546 006436 000012 843 PRINTSB 006530 OSTAER? #STAER7?, -(SP) C4PNTB 853 062706 EXIT 000167 854 855 856 837 858 859 04,SP R2,RECRED R3,TIMEL R4, TIME2 PC,RECTAP 1SAVE R2 1SAVE R3 1SAVE R4 R3,RECRED TIMEL,.R3 TIME2,R4 $1SAVE RECORD READ tRESTORE R3 tRETRIEVE RECORD READ RECRED,R2 tRESTORE R2 #STAERG ,RECRED 1tPRINT RECORD READ tRESTORE R4 RECRED, -(SP) OSTAERG, -(SP) 0€°,-(SP) SP,RO CIPNTB #6,SP MSG JI P L10002-2-. .EVEN L10002: 104423 016546 016346 016746 012746 003376 003326 175400 006436 ENDMSG STAERM; ; STAERM: :PRINTB TRAP CeMSG STAERM @STAER1, TSNP ,PASCNT(RS) ,RECCNT(RS) RECCNT(RS), -(SP ) PASCNT(RS), -(SP ) TSNP, -(SP) #STAER], -(SP) MACRO M1113 GLOBAL AREAS GLOBAL ERROR REPORT SECTION 3333344 006140 006144 006146 006130 860 006154 006154 006160 006164 006166 006170 012746 010600 104414 062706 012746 012746 010600 104414 062706 016702 042702 005302 005702 001016 004767 010367 869 871 872 006530 PRINTB 012,5P #STAER? OSTAER7, -(SP) SP,RO C$PNTB 006616 000001 000004 175136 1735156 174056 002314 174016 006673 016746 016746 016746 012746 012746 010600 104413 062706 174000 173772 173764 &4 ,5P CHMOPKT ,R2 #177740,R2 001646 001642 016746 016746 016746 017346 016746 012746 012746 010600 104415 062706 016746 016746 016746 016746 016746 012746 SP,RO CSPNTB 000004 174130 177740 000006 104415 062706 SEQ 056 000001 104414 062706 012746 010600 870 000012 000640 006562 000002 012746 10:17 000004 016746 012746 012746 010600 30-NOV-83 #STAERG ,RECRED : PRINTX 1IF CMD IS A READ s THEN RETRIEVE s AND 1 TYPE RECORD READ #STAERZ RECRED, -(SP) OSTAERG, -(SP) C¢PNTB #6,SP #STAER2, -(SP) SP,RO CIPNTX &4 ,5P PRINTX CTCC. -(SP) TSSREG, -(SP) MSGPKT+MS .RFC, -(SP) @TSDB(R3), -(SP) 000006 000016 PRINTX OSTAERA ,CMOPKT +2,CMOPKT + 4 ,CMOPKT +6 006733 SP, 000012 174000 173772 173764 173736 173750 006753 CIPNTX PRINTX ¢2,5P ADD . @STAERS ,MSGPKT +MS . XSO ,MSGPKT +MS . XS1 ,MSGPKT +MS . XS2 ,MSGPKT +MS . XS3 ,MSGPK T +MS . XS MSGPKT +MS . XS4, -(SP) MSGPXTeMS . XS3, -(SP) MSGPKT+MS. XS2, -(SP) MSGPKTeMS . XS1, -(SP) MSGPKT +MS, XSO, -(SP) OSTAERS, -(SP) MACRO M1113 GLOBAL AREAS GLOBAL ERROR REPORT SECTION 012746 010600 104415 062706 873 30-NOV-83 10:17 000006 000016 000167 000432 874 101 STAER1: 101 123 116 11?7 117 117 117 101 117 STAER7: STAERG: STAER2: STAER3: STAER4: EXIT MSG JNLIST .ASCIZ .EVEN .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCII -ASCII .ASCIZ .ASCII .ASCIZ LLIST .EVEN .WORD BEX STAERS: 007066 RECRED: 007070 007070 007070 L10003: 104423 SEQ 057 .SBTTL 3 3 s MOV TRAP ADD . WORD .WORD /#AXXX CMD FAILED - ;msmsaousmszioxm/ /906%N/ /806%N/ /8AXSTORSASAXST 18S4ASAXS T28SASAXS T SHSASAXS TASN/ 0 tRECORD READ FROM TAPE ENDMSG TRAP GLOBAL SUBROUTINES SECTION T'i GLOBAL SUBROUTINES SECTION CWTAINS THE SUBROUTINES THAT ARE USED IN MORE THAN ONE TEST AFTER THE INIT, s THE TSSR REGISTER IS TESTED FOR ERRORS. ANY ERRORS sOETECTED SHOUWLD BE TREATED AS DEVICE FATAL ERRORS. : s INPUTS; 3 RS ' CURRENT UNIT NUMBER 3 ' sOUTPUTS: RO } CARRY 3 H CALLING 3 - 6236‘52‘06‘52‘06‘52‘06‘52‘06‘4 :RWTM T0 DO A SOFT INITIALIZE OF THE CONTROLLER 921 Js P L10003-2-. /8APREVIOUS CMD WAS XXX / /9S11%As RECORD READ:#DS#A o/ /78NSACHMOPK THS24A T SBASSASARF CSSHATSSRES SSATCCEN/ 18Y WRITING INTO THE TSSR REGISTER. ' 016,5P UNIT wD1#S3#APASS : 505#S34ARECORD : sDSsN/ $® 3 6, -(SP) SP,RO CIPNTX CONTENTS OF TSSR, IF ERROR SET IF INIT WAS OKAY CLEAR IF FATAL ERROR SEQUENCE JSR PC FIRSTUY C$MSG MACRO M1113 GlL JBAL AREAS GLOBAL SUBROUTINES SECTION 922 923 924 925 926 JSR 8cs ERRDF 927 928 007072 929 930 931 932 933 934 935 007072 007100 007104 007110 007114 007116 007116 007122 007124 007130 007132 007136 007140 007144 007146 007150 007152 007156 007160 007164 007170 007172 007174 007176 007200 007202 G5 30-NOV-83 10:17 SEQ 058 PC,SOFINIT CONTINUVE tREPORT FATAL ERROR SOF INIT:: 012773 004767 012703 004767 103416 000000 003574 000550 000070 012727 000000 016727 000000 005367 001373 005367 001367 005303 001357 017500 010004 042704 052704 000250 020400 002524 + (SAVREG) SAVE THE REGISTERS s+ DO THE INIT. tWAIT FOR UNIT TO BE READY #0,8TSSR(RS) C.WSSR 28: JSR #360.,R3 gE.HAITF 1 WAIT FOR SSR 250 MOV . WORD MOV . WORD 0EC BNE 0€EC BNE 172766 177772 177756 002524 3¢: MOV 176277 002200 Ss: 10¢: SEC RTS tODLY.(PC)o -6(PC) . -4 -22(PC) .-20 8TSSR(RS) ,RO 1GET THE TSSR REGISTER RO,R4 1 TSSR CONTENTS 0tC<TS.A17!TS.AL16!TS.OFL>, R4 #TS.SSR!TS.NBA, R4 tR& HAS EXPECTED CONTENTS S¢ tBRANCH IF OKAY R4 ,RO 001402 000241 000401 000261 000207 24 8250.(PC)0 tONLY EXPECTED BITS SET ? 1CLEAR THE CARRY FOR ERROR 10¢ 1GO TO EXIT 1SET THE CARRY BIT PC tRETURN TO CALLER : s+ SUBROUTINE 70 WAIT FOR THE SUBSYSTEM READY FLAG ] 1 INPUTS: 3 ' RS CURRENT UNIT NUMBER 3 ' tOUTPUTS; : H : RO CARRY ’ 007204 007204 007206 007212 007216 007220 007222 007222 i 104422 012746 017500 105700 005670 002524 100420 012727 WAITF:: BREAK 24 MOV MOV 1578 8MI 000025 DELAY CONTENTS OF LAST TSSR READ SET - REAOY BIT SET CLR - TIMEOUT WAITING FOR READY s+ DO A SUPVSR BREAK FIRST, €3000.,-(SP) 1+ RO 3 25 s TEST FOR READY BIT SEY s EXIT ON STOP FLAG. 1 WAIT 8TSSR(RS),.RO 300 MSEC TIMER, TRAP tREAD THE TSSR REGISTER MOV C$BRK 007226 007230 007234 007236 007242 007244 007250 007252 007254 007256 007260 007262 007264 007266 000000 016727 000000 005367 001375 005367 001367 005316 001356 000241 000401 000261 005326 000207 30-NOV-83 10:17 SEQ 059 . WORD 0 . WORD o MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 172662 MOV 177772 DEC BNE DEC BNE 177756 DEC BNE (SP) a¢ tREODUCE DELAY COUNT tRETRY UNTIL TIMER EXPIRES B8R 4 $...0R HUNG-UP AFTER 300 MSEC. CLC 34: 4%: SEC DEC RTS (SP). PC 8 C = O, sROUTINE TO ISSUE A WRITE CHARACTERISTICS COMMAND AND CHECK FEATURES 3 1 INPUT R4 ADORESS OF COMMAND PACKET RS CURRENT UNIT NUMBER REQUIRES A CALL TO SOFINIT BE OONE PREVIOUSLY OUTPUT: TSSR CONTENTS SET - WRITE CHARACTERISTICS COMMAND OK CLR - WRITE CHARACTERISTICS FAILED IMPLICIT OUTPUT: SOF TWARE SWITCHES SET AS FOLLOWS: EXTFEA = EXTENDED FEATURES PRESENT BENBSW = BUFFER ENABLE SWITCH ON OR OFF SIDE EFFECTS: 010475 004767 103401 000421 005724 011402 011203 032763 001402 005267 WRTCHX:: 10¢: 002514 177704 404: 000200 172774 MOV JSR R4 ,8TSDB(RS) PC,WAITF tSEND OUT COMMAND tWAIT FOR SSR BR 604 18R _IF TROUBLE CARRY = CLEAR MOV MOV 817 (R4),R2 (R2),R3 #X2 .EFE,MS.XS2(R3) 8Cs 000012 TST 8EQ 454 INC 40¢ (R4)» 454 EXTFEA . '20 38 C = 1, CONTROLLER IS STOPPED. tRESTORE STACK WITHOUT CHANGING CARRY BI T 3 007270 007270 007274 007300 007302 007304 007306 007310 007312 007320 007322 007326 4 122(PC) CONTROLLER STILL RUNNING... '0 RO CARRY -6(PC) 1BR, IF SSR IS SET AND 0K 1STEP IV 1POINT TO WRT CHARA DATA PACKET 1GET ADDRESS OF MESSAGE BUFFER 1EXTENDED FEATURES BIT SET? 18R _IF NO 1SET EXTENDED FEATURES SW SWITCH GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1019 007326 032763 000100 1021 007336 005267 172762 1020 007334 1022 1023 1024 1025 007342 007342 007344 007346 1026 007350 1027 007354 1028 001402 000261 000401 000241 017500 000207 30-NOV-83 10:17 000012 8IT 604 002524 704: INC BENBSW 1SET SOFTWARE SWITCH FOR ENABLED SEC BR cLC 704 MOV RTS 8TSSR(RS),RO PC $}BR, IF SWITCH NOT SET 1SET CARRY NO TROUBLE sEXIT sCARRY CLEAR = ERROR tRETURN TSSR CONTENTS tRETURN 3 1 INPUT 1034 H 1036 : 103S t 1037 3 1039 007356 1040 007356 1041 007362 010475 004767 1044 007372 005724 1042 007366 1043 007370 007374 007376 007400 007406 007410 007410 007412 007414 007416 007420 007424 007426 007430 007432 007434 007434 R4 ADDRESS OF COMMAND PACKET MOV JSR R4 ,0TSDB(RS) PC.WAITF sSEND OUT COMMAND sWAIT FOR SSR (R4). 1STEP IT RS CURRENT UNIT NUMBER - 1038 1060 sBUFFER ENABLE SWITCH SET S04 1e H tROUTINE TO CHECK WRITE LOCK CONDITION 1033 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 SEQ 060 #X2.8BFE.MS.XS2(R3) BEQ bTe] 554 : 1029 1030 }8;% 1045 1046 1047 1048 1049 IS5 103401 000420 011402 011203 032763 001407 104456 000001 005653 000000 004767 000402 000261 000401 000241 000207 WLKCHK : : 002514 177616 104 408 000004 000006 007554 55¢: 604 : 708 : 8Cs BR 404 604 MOV MOV BIT BEQ ERRHRD (R4),R2 (R2),.R3 OX0 . WLK,MS . XSO(R3) 5S¢ 1,UNIWLK JSR BR SEC BR cLC PC.DROPY 60¢ RTS PC TSY 704 1BR, IF SSR IS SET AND OK s8R IF TROUBLE CARRY = CLEAR sPOINT TO WRTY CHARA DATA PACKET 1GET ADDRESS OF MESSAGE BUFFER +IS UNIT WRITE LOCKED? 1NO,PROCEED WITH TESTING s TAPE IS WRITE LOCKED TRAP CS$ERHRD . WORD 1 . WORD UNIMWLK . WORD 0 1OROP I7 1EXIT WITH CARRY=0 1SET CARRY NO TROUBLE 1EXIT 1CARRY CLEAR = ERROR 1RETURN o : {ggé sROUTINE TO ISSUE A WRITE CHARACTERISTICS COMMAND 1063 s INPUT; 1065 : ig; : 1064 1066 1069 1070 1071 3 $ R4 ADDRESS OF COMMAND PACKET RS CURRENT UNIT NUMBER RO TSSR CONTENTS REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY ' sOUTPUT ' 3 MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 JS 30-NOV-83 10:17 CARRY SEQ 061 SET - WRITE CHARACTERISTICS COMMAND OK CLR - WRITE CHARACTERISTICS FAILED IMPLICIT OUTPUT: SIDE EFFECTS: 007436 007436 007442 007446 007450 007452 007452 007454 007456 007460 007464 010475 004767 103401 000402 000261 000401 000241 017500 000207 002514 177536 WRTCHR:: 10¢: sos 002524 60¢: 708¢: MOV JSR R4 ,8TSOB(RS) PC,WAITF 1 SEND OUT COMMAND tWAIT FOR SSR BR 60¢ 1BR IF TROUBLE CARRY = CLEAR SEC BR 704 1SET CARRY NO TROUBLE 1EXIT MOV 8TSSR(RS),RO tRETURN TSSR CONTENTS 8Cs CcLC RTS S50¢ 1BR, IF SSR IS SET AND OX 1CARRY CLEAR = ERROR PC tRETURN R4 s sROUTINE TO DO SET UP OF RUNNING CONDITIONS 3 1 INPUTS: : ' RS CURRENT UNIT NUMBER s sOUTPUTS: s :CALLING SEQUENCE ; JSR JSR 8cs ERROF JSR 007466 007466 007470 007474 007502 007502 007506 007510 007514 007516 104422 004767 004767 103416 012727 000000 016727 000000 005367 PC.FIRSTY PC,SOF INIT CONTINUE PC,MDSET MDSET:: BREAK 000272 177656 000001 172402 177772 tREPORT FATAL ERROR 1 DO A SUPVSR BREAX FIRS;‘.l JSR PC.SETODEF tRESTORE DEFAWLT DELAY 1 sWAIT JSR BCS PC, WLKCHK 14 C$BRK 1CHECK WRITE LOCK 1C=1 IS 0.K. MOV . WORD MOV .WORD DEC 81.(PC)0 %QDLY.(PC)O -6(PC) MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 007522 007524 1123 007332 1124 007534 1125 1126 1127 1128 1129 1130 1131 007336 007542 007544 007550 007554 007560 007562 1133 1134 1135 1136 1137 1138 1139 1140 007574 007576 007602 007606 007612 007614 007620 007622 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1155 1157 1158 1159 1160 1161 1162 007630 007634 007636 007642 007646 007652 007654 007660 007662 007670 007674 007676 007702 007706 007712 001375 005367 001367 30- NOV-83 005767 001002 004767 004767 004767 000423 005767 001415 052767 005767 001002 004767 004767 004767 000403 007714 016767 007722 000207 172550 1%: 000216 177514 172540 000040 172526 173742 000122 000160 177624 24: 172476 3¢: 000030 172466 173702 000062 000120 177564 44 172434 S¢: 000020 172426 173642 000022 000060 177524 173612 172562 BREAK 1BREAK TO SUPER OOCLN 100 CLEAN AND ABORT CSOCLN JSR PC,WRTCHR TSV ROBUF :'&N WITH READ BUFFERING? 8IS #EF .RBO, TSUNT B8R B8EQ PC,SETOEF 118 10¢ EXTFEA 64 1 YES s INVERT THE SWITCH 1NOW SET THE MODES 100 IT tRUN WITH WRITE BUFFERING? s1NO sYES SET THE BITS 1ARE WE SET? $ YES 3 sYES SET THE BITS sARE WE SET? 1 YES s INVERT THE SWITCH sNOW SET THE MODES 100 17 JSR JSR JSR BR PC.INVRT PC,SETOEF PC,WRTCHR 11 10s¢: MOV TSUNT,SCHBK +10 1AND UNIT @ 11¢: RTS PC tRETURN ’ s § sOUTPUTS; H INVRT:: TRAP 1YES,SET THE BIT 1ARE WE SET? s INPUTS; 172376 C4BRK s1NO 3 140006 TRAP sINVERT THE SWITCH sNOW SET THE MODES 100 IT JSR 1RUN IN DEFAULT MOOE? 1 YES,RETURN tRESTORE OEFAULT 1GO D0 SWITCH CHECK sD0 WE RUN AT 100IPS? s SUBROUTINE TO INVERT SENSE OF EXT'D FEATURES SWITCH 012767 .-4 -22(PC) .-20 TS1M0 10¢ PC,SETDEF PC,WRTCHK HSSW 3¢ #EF . HSS, TSUNT EXTFEA 24 PC,INVRT PC.SETOEF PC,WRTCHR 114 WTBUF S¢ OEF .RWB, TSUNT EXTFEA 44 PC. INVRT ' 1164 1165 1166 1167 1168 1169 BNE OEC BNE TST BNE JSR JSR TST 8EQ 8IS TST BNE JSR JSR JSR 8R ST BEQ 8IS TS7 BNE JSR TST BNE 6¢: 1163 1170 1171 1172 1173 007724 1174 007724 SEQ 062 177756 104422 104444 005767 001064 004767 004767 005767 001415 052767 005767 001002 004767 004767 004767 000443 005767 001415 052767 I<K5 10:17 QUWSM,CMDOPKT +CP . CMO 1WRT SUB-SYS MEM MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 191 1192 1193 1194 1195 1196 1197 007732 007740 007746 007754 007760 007764 012767 012767 012767 012704 004767 000207 002506 000006 100010 002330 177452 30-NOV-83 LS 10:17 172372 172370 172532 RTS SEQ 063 MWSMBK , CMOPKT +CP . ADL #6,CMOPKT +CP . CNT €102010, WSMBK R4 #CMOPKT PC.,WRTCHR PC tMSG BUF ADDR 1BYTE COUNT 1 INVERT THE SWITCH ' 100 IT tRETURN ] t SUBROUTINE TO SETUP DEFAWLT SET CHAR CMO } 1 INPUTS: 3 ' [} sOUTPUTS:: 3 : 007766 007766 007772 007776 010012 010020 010026 010032 012701 010167 012767 012767 012767 016767 012704 000207 140004 172332 002474 000012 173506 002330 SETDEF:: 1210 1211 010042 010042 1212 010042 1213 010046 010046 1214 1215 010050 01005C 1216 010050 1217 010054 010054 010054 1218 1219 010056 010056 1220 010056 1221 010062 173432 TSSINO: : L10004 173426 TSSINL:: L1000S: 173422 TSSIN2:: L10006: 173416 MOV TSSINS: : ADDRESS OF COMMAND PACKET OSCH,RY 1WRITE CHAR CMD #SCHBK , CMOPKT +CP . ADL @SCHONT ,CMOPKT +CP . CNT SOF TSCH, SCHBK +6 TSUNT,SCHBK + 10 oCMOPKT R4 1SET UP ADR LO TO POINT TO MSG BUF (MSGPKO) 1SET BUFFER EXTENT $sSTORE CHARACTERISTIC CODE IN SCH BLOCK. sUNIT @ s ADDRESS OF CMD PACKET MOV R1,CMOPKT+CP.CMD RTS PC MOV MOV MOV MOV MOV 172326 172324 172462 172456 : 010034 010034 010034 010040 010040 010040 R4 1SET UP COMMAND 1RETURN MODULES TO HANDLE TSOS INTERRUPTS. BGNSRY TSSINO INC ENDSRYV INTFLG 1SET INTERRUPT OCCURRED FLAG. RTI BGNSRV TSSIN1 INC ENDSRYV INTFLGe2 1SET INTERRUPT OCCURRED FLAG. RTI BGNSRY TSSIN2 INC ENDSRV INTFLG+4 1SET INTERRUPT OCCURRED FLAG. RTI BGNSRV TSSINS I NC ENDSRYV INTFLG+6 1SET INTERRUPT OCCURRED FLAG. MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 010062 010062 1222 1223 1224 1225 1226 1227 1228 1229 1230 010064 1231 010072 1232 010074 1233 010100 1234 010104 1235 010110 1236 010112 1237 010114 1238 010116 1239 010122 1240 010124 1241 010126 1242 010132 1243 010134 1244 1245 010136 1246 010136 1247 010140 2248 010144 1249 010146 010150 010150 010152 010152 010154 010154 010160 010160 M5 30-NOV-83 10:17 SEQ 064 L10007: 000002 RTI gggzggrrns TO RETRIEVE RECORD COUNT READ FROM TAPE FOR ERROR INPUTS: OUTPUTS: REGISTERS: R3S = RECORD COUNT READ CALLS: 032767 001430 016702 066702 032702 001417 005202 111203 142703 000303 005302 105767 001401 005302 111204 142704 050403 000401 000400 RECTAP: : 8IT 000001 177400 173366 177400 500024: MOV ADD BIT BEQ INC MOVB 8ICB SWAB DEC MSGPKT +MS .RFC,R2 DATARD ,R2 #8IT00.R2 500024 R2 JFIND LAST READ AD. BEQ DEC 500034 R2 MOVB BICB 8IS BR (R2).R4 #177400.R4 R4 ,R3 S0004§ MOV (R2).R3 " BR 000402 173230 S00014¢: S0005¢: 000207 R4 ;READ REV FETCH TSTB S00034: RS, #M00 . CO, CMDWRD B8EQ 172260 173304 011203 017703 173326 R2, 50001¢ (R2).R3 #177400,.R3 RS R2 SWBFLG ;000 AD., REASSEMBLE JREC COUNT STARTING {WITH UPPER BYTE FETCH sLET R2 := R2 - 01 1IFB SWBFLG NE 0 THEN ;LET R2 ;LOWER BYTE AD. :=» R2 - 01 ;LOWER BYTE AD. ;FETCH LOWER BYTE JLET RS :» (R2) JEVEN AD. FETCH S00054 MOV 8DATARD,R3 RTS PC LET R3 SUBROUTINE TO STORE A THE FIRST ENTRY INPUTS: OUTPUTS: := SDATARD ;READ FWD FETCH SET CHARACTERISTIC COMMAND AS IN THE SEQUENCE TABLE. REGISTERS: CALLS: 010162 010162 010166 010172 010176 010202 010204 012701 012721 012721 012721 005721 000207 003540 140004 000001 SETCH:: MOV #CMDSEQ,.RL 1INIT CMD SEQUENCE TABLE POINTER. MOV ;?; pC 1,(R1)e (R1)+ 1SEQUENCE TABLE. s SKIP PATTERN LOCATION. MOV MOV #SCH,(R1). ®DFTSCH,(R1)» ?ggsggTINE TO STORE 1 THIS CODE SETS UP A SET CHARACTERISTIC 1COMMAND AS THE FIRST COMMAND IN THE A REWIND COMMAND IN THE SEQUENCE TABLE ON SWAP MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 30-NOV-83 10:17 ' 012721 012721 012721 005721 000207 REGISTERS: CALLS: SETRW:: MOV MOV 102010 MOV 000001 TST RTS 1 177777 104422 026767 002116 004767 105767 0014335 026727 173140 - 1SKIP PATTERN PC tRETURN 173140 1INIT SEQUENCE TABLE POINTER. (R1),4END IWHILE THERE ARE CMDS IN THE SEQUENCE TABLE. JSR PC,.SETUP 1GO SETUP THE COMMAND BLOCK. g& %I i'.CNTl TRAP sWHILE THERE ARE RECORDS REMAINING: JSR 1578 PC,CMDAC RANDOM 1STORE CMD ASCII IN ERROR MESSAGE. 1IF IN RANDOM MOOE: ce BNE CMDUWRD , ART S0013¢ 1IF CMD IS A WRITE THEN: 300144 RANS ,RANB KANB , RANS RANS , BRFCNT LENMSK ,BRFCNT %Eg}..lfl. B8EQ BEQ 104005 R2 = TERMINATION INDICATOR (O=END OF TABLE,1=EO0T) CMDSEQ.R1 500104: BREAK 000602 173227 173124 19 OF OPERATIONS. (R1)e REGISTERS: EXALL;: MOV 000726 €1,(R1). OQUTPUTS: i 021127 001530 004767 lcm = REWINO. 1BRF SUBROUTINE TO EXECUTE ALL COMMANDS IN THE SEQUENCE TABLE ON ALL ] 003540 ORWD,(R1). #1.(R1). DEVICES. INPUTS; ! ' 012701 SEQ 065 OQUTPUTS: : t 010206 010212 010216 010222 010224 NS 300074 S0012¢ t+ DO A SUPVSR BREAX FIRST, 010306 010314 010322 010330 010336 010344 010346 001031 105767 001026 066767 066767 016767 046767 026727 002003 012767 173122 173112 173106 173074 173054 173116 173112 173066 173060 000022 BNE ADD ADD MOV 8IC Bcz 000022 173042 MOV #18. ,BRFCNT 010354 010354 016767 173036 171754 MOV BRFCNT ,CMDPKT «CP ,CNT JSR JSR MOV PC.EXSUB PC.CKHAE 1,R2 cHP DEVTN‘(RS).OEM) 7578 173212 S001S¢: 010362 500144 010362 S0013¢: 010362 010362 010366 010372 010376 004767 004767 012702 004767 000136 007106 010402 010402 010410 026527 001426 002604 : 500124 006500 JSR 177777 S0016¢: 8EQ VFYFLG PC.FIRSTU 50017 CHBRK 1IF DATA IS NOT TO BE VERIFIED THEN: tLET RANB := RANB ¢ RANS ;GENERATE tLET RANS := RANS + RANB ;RANDOM sLET BRFCNT := RANS sLENGTH tMASK RANDOM LENGTH, 100 NOT ALLOW BYTE COUNT OF LESS THAN 18 t1CHANGE COUNT OF 0-17 TO 18. tMOVE BRF TO CMD PACKET. 1ISSUE CMD TO ALL ,AWAIT INTS CHECK STATUS. ;1CHECK MALT AFTER EACH CMD FLAG. iILET R2 := 81 1SET ALL UNITS AT 80T/EOT. 1FIND FIRST UNIT. tWHILE THERE ARE MORE UNITS: o GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1333 010412 032767 1336 010430 001001 1334 010420 1335 010422 gg 010432 1339 010434 1340 010434 1341 010436 1342 010436 1343 010444 1344 010446 1345 010454 1346 010456 1347 {zg 010456 1350 010460 1351 1352 010460 1353 010460 1354 010464 1355 010466 1356 010466 1357 010472 ggg 010474 1360 010476 001406 032765 000002 003502 003502 032767 0C0001 172744 001001 500204; S00234 004767 000746 006464 020227 000001 001001 000412 004767 1369 010516 00064S 1371 010520 g;g 010522 005002 000207 172710 172712 500224; $0017¢: $00254; 172714 S00116: 005350 S00074: CLR R2 BR 300224 BIT 1IF NOT AT BOT THEN: iLET R2 ;= 00 ;CLEAR EOT/BOT FLAG. 1ELSE IF CMD IS NOT REVERSE: X0 .EOT ,EOTFLG(RS) BEQ $00236 BNE $0024§ #CMD . CO, CMOMRD +IF NOT AT EOT OR NOT A MOTION CMD THEN: CLR R2 JSR BR P2, NEXTU $0016¢ tFIND NEXT UNIT o R2,01 +IF ALL UNIT ARE AT EOT/BOT THEN: {CLEAR EOT/BOT FLAG. ' ; 1378 ; 1379 p {33:5 ' 1380 ' 1383 010524 004767 006352 1385 010530 026527 002604 177777 1387 010540 032767 000400 032763 000002 001465 001421 $0025¢ EXARTN {RETURN WITH R2 = o1. INC MOV NCNT sLET NCNT ;= NCNT o+ 01 tUPDATE RECORD COUNT. CMDWRD , PCHMOWD 1SAVE PREVIOUS COMMAND WORD. B8R $00104 JSR PC,VFYDAT BR $00064 CLR EXARTN: RTS PC 1377 1389 010550 $0021¢ +IF CMD IS REVERSE THEN: 300204 #X0.807,EOTFLG(RS) BNE B8R 1374 1378 1376 1388 010546 BNE SEQ 066 S0024 4 : 1366 010512 1386 010536 #1M00 , CO, CMOWRD BIT 005002 000655 1384 010530 BITY 8EQ 81T S0021 ¢ 000001 1364 010510 1370 010520 173000 032765 005267 016767 {gz 000400 000411 1361 010476 {gzs 010502 1365 010512 30-NOV-83 10:17 005002 001404 B6 R2 sIF LAST CMD WAS A WRITE VERIFY, THEN GO {VERIFY THE LAST N RECORDS OF DATA. (LET R2 :» 00 ;SET NORMAL RETURN INDICATOR. {RETURN. SUBROUTINE TO ISSUE COMMAND TO ALL DEVICES. ALL INTERRUPTS, AND CHECK ALL STATUS. WAIT FOR INPUTS OUTPUTS; REGISTERS: CALLS: EXSUB:: JSR EXCUTE ,GOWAIT ,NEXTU,FIRSTU, PC.FIRSTY 1SET UP FOR FIRST UNIT. (o o DEVTBL(RS), #END {WHILE THERE ARE MORE DEVICES: 172652 81T 100 . CO , CMOWRD 1IF CMD IS REVERSE TMEN: 003502 eIV #X0.B80T,EOTFLG(RS) 1IF NOT AT BOT S002665 BEQ 8EQ $00274 $00 304 ———— - ——— MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 001014 032763 001406 103767 001402 004767 000001 SEQ 067 500314 003502 #X0.EOT ,EOTFLG(RS) 1BUT IF AT EOT ALLEOT JAND ALL OTHERS AT EOT 500324 172730 500334 001232 PC,EXCUTE S00334, 000402 004767 Cé 30-NOV-83 10:17 S00344 500324: 001244 THEN EXECUTE REV CMD (IF NOT ALL AT EOT, FREEZE UNITCS) AT EOT J,IF NOT AT BOT AND PC,EXCUTE JNOT AT EOT, EXEC REV CMD $00354 JELSE IF CMD IS NOT REVERSE: S00344; S00314: 000435 026727 001011 032765 001405 172610 016367 005077 002616 172646 010664 010670 010672 010672 010676 010700 #X0.80T,EOTFLG(RS) ¢ 50036 B8TADOR(RS),.BTPY 172652 003502 001404 032767 001003 004767 8BTPT S00364; 500374 JSR 001164 172626 004767 001150 500404 : 010704 S00424; 010704 S00414: 004767 1437 010710 000707 1438 010712 1439 010712 1440 010716 1441 010720 1442 010724 010724 1443 010726 1444 010726 1445 010732 105767 001403 105067 006240 172601 30027¢: 172573 104424 004767 S00354; 006150 500434; 5004414 ; sCLEAR BAD SPOT COUNTS WHEN WRITING FROM BOT sLET BTPT := BTADOR(RS) iLET 8BTPT := #0 #X0.EOT,EOTFLG(RS) S0037¢ oCMD . CO, CHMDWRD 500404 172536 103767 010704 010704 02 CMOLG, $00 364 003502 032765 010664 $00304; PC.EXCUTE +IF NOT AT EOT OR NOT A MOTION CMD THEN: s ISSUE CMD TO TS03 S0041¢ ALLEOT 1578 8EQ JSR PC,EXCUTE JSR PC.NEXTV 300424 1IF8 ALLEOT NE €0 THEN tFIND NEXT UNIT IN TEST CYCLE. 500264 1578 RPTHB.(;. CLRS DORPT RPTFLG PC.FIRSTY 1 IF REPORT HAS BEEN REQUESTED THEN: tPRINT 1CLR THE FLAG, THE PERFORMANCE REPORT, 1SET UP FOR FIRST UNIT, TRAP CSORPT MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 010732 010740 010742 010750 010732 010760 010762 010770 010772 010776 011000 026527 001430 032767 001421 032765 001014 032763 001406 105767 001402 004767 30-NOV-83 10:17 002604 L7777 000400 172450 003502 SEQ 068 DEVTBL(RS), #END 300434 #M00.CO, CMDWRO 300464 oX0. BOT EOTFLG(RS) 30047 X0, EO? EOTFLG(RS) 300304 ALLEOT $00S1¢ tWHILE THERE ARE MORE DEVICES: +IF CMD IS REVERSE THEN: +IF NOT AT BOT 1BUT IF AT EOT 1AND ALL OTHERS AT EOT PC,GOWATT ;THEN WAIT FOR CMD END s IF NOT ALL AT EOT, DO NOT WAIT S$00514: 000402 004767 500524 50050¢: 001352 011012 011012 011012 011014 011014 cHP 8EQ 8IT 8€EQ 817 003502 011004 011004 011006 011006 D6 ) PC,GOMALT JNOT AT BOT, AND NOT AT EOT ,MAIT FOR INT,CHECK STAT 500524 : S0047s; 000420 032765 001404 032767 001003 004767 105767 001402 004767 003502 S00464: 172366 S00S3¢ 817 81T S0054 4 ; 001324 172456 JSR 500554: 001310 JELSE IF CMD IS FORWARD: #%0.EOT,EOTFLG(RS) 4 $0054 #CHD., CO, CHDWRD 4 $00SS PC.GOMALY ,IF NOT AT EOT OR NOT A MOTION CMD THEN: JWAIT FOR INT.CHECK STATUS. 6 $0056 1578 JSR ALLEOT $60574 IFB ALLEOT NE ¢0 THEN PC.GOWALT 500574 500564; 004767 000724 000207 1497 006070 S00534; 300434, JSR PC.NEXTU B8R 500444 RTS PC JFIND NEXT UNIT IN TEST CYCLE. 1RETURN, THIS SUBROUTINE STORES THE ASCII FOR THE CURRENT COMMAND AND PREVIOUS COMMAND IN THE STANDARD ERROR MESSAGE. ON ENTRY LOCATION CMDWRD CONTAINS CURRENT CMD AND LOCATION PCMOWD CONTAINS PREVIOUS CMD. INPUTS OUTPUTS: REGISTERS: R3, R4, GCMOA CALLS: GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1503 011064 016704 {g{z 011134 000207 1504 011070 1505 011074 1506 011100 1507 011104 1508 011110 1509 011114 1510 011120 1511 011124 1512 011130 004767 112367 112367 111367 016704 004767 112367 112367 111367 E6 30-NOV-83 10:17 172330 CMDAC:: 000042 173340 175335 175332 172310 000016 173430 175425 175422 MOV CMOWRD ,R4;LET R4 RTS PC JSR MOVB MOV MOV MOV JSR MOV8 MOV8 MOV8 PC,GCMDA (R3)¢,STAERL1+2 (R3)+,STAER1.3 (R3),STAER] +4 PCMOWD R4 PC,GCMDA (R3)+,STAER7+24 (R3)+,STAER7.25 (R3),STAER7+26 SEQ 069 ;= CMDWRD tR4 = CMD BINARY, tGET CMD ASCII. 1MOVE CMD ASCII ' tINTO MSG. 1R4 = PREVIOUS CMD BINARY, 1GET CHMD ASCII. tMOVE CMD ASCII 1 INTO MSG. tRETURN. GO EXECUTE NEXT FUNCTION. 1515 1516 1517 : ] SUBROUTINE TO FIND THE ASCII EQUIVILENY OF THE COMMAND IN R4, ADORESS OF ASCII 1ST WORD IS RETURNED IN RS, 1519 1520 {gg ' : 3 OUTPUTS: REGISTERS: CALLS: 1518 } 1323 011136 1524 011140 005003 1526 011144 001403 1525 011140 026304 003752 1527 011146 1528 011152 1529 011154 1530 011154 062703 000772 000002 1531 011156 1532 011160 1533 011162 1534 011164 {ggz 011170 GCMDA:: CLR 500604: S0061¢: 006203 000240 062703 000207 ' 1539 s 1338 1340 1541 {gg #2,R3 500604 R3,R& ADO R4,R3 RTS PC CALLS: 172204 171112 MOV MOV 000010 SUB BNE MOV B8R 1559 011256 162703 001003 011167 000464 026727 001003 012767 MOV 177740 8IC MOV 171074 171064 100011 000002 172150 := RS OCMDASC,R3 24; 300624 : 1SEARCH CMD TABLE. sPOINT TO ASCII FOR THAT COMMAND tRETURN. INPUTS: 011167 016702 011224 011230 011232 011236 011240 011246 011250 LET R4 OUTPUTS: REGISTERS: 1547 011206 1548 011212 1551 1552 1553 15354 1555 1556 igg; tLET R3S := R3 « #2 ] s SETUP:: CLR MOV 042702 010203 tUNTIL CURRENT CMD IS FOUND: THIS SUBROUTINE LOADS THE TSOS COMMAND PACKET FROM ONE 172230 171126 1549 011216 1550 011222 RS $INIT CMD TBL POINTER. ENTRY IN THE SEQUENCE TABLE. 005067 012167 171130 30061 ¢ MOV 1544 011172 1545 011176 011167 := @0 ] : 1546 011202 R3ILET RS ADD BR ADD 1537 R3 « ADORESS OF PRESENT COMMAND ASCII. CMDTBL(RS),R4 ASR NOP 004040 R4 = PRESENT COMMAND WORD. cp 8EQ 010304 060403 INPUTS: cP BNE MOV R2, RS. GENPAT ., CMOLG (R1)+,CMOPKT tCLR CMD LOGGING CODE(DISABLES LOGGING) 1LOAD THE COMMAND WOROD. (R1),BRFCNT MT.M tSAVE BRF FOR THIS COMMAND. +GET CD. (R1),CMOPKT «CP . CNT ONCMD.C,R2 R2,R3 oCMD.C3,R3 24 (R1),CMOPKT .2 3¢ CHMOPKT , 0WTH 300624 02,CM0LG tLOAD THE BYTE/RECORD/FILE COUNT. 1CLR ALL BUT CMD BITS. 1SAVE IT TWICE. tPOSITION COMMAND? 1BR IF NOT. tMOVE BPCR IN 2ND PKT WORD FOR POSITION CMO. 1IF CMD IS A WRITE TAPE MARK THEN: 1WTM LOGGING CODE IS 2. MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 011256 011260 011264 011266 011274 011302 011304 010203 162703 001017 016767 032767 001404 012767 o11312 1569 011314 1570 011314 1571 1572 1373 1374 1573 1576 1377 1578 1379 1580 1581 000403 1360 1561 1362 1563 1564 1565 1566 1367 1568 OEHD.CO.RB 000400 172116 171036 171026 000004 172114 172104 1 DATARD,CMOPKT+CP, ADL #M00.CO, CMOPKT 500634 o4 ,CMOLG 500644 500634; 34 R2,R3 oCMD.C2.R3 1¢: 44 170770 170766 @SCHBK , CMDPKT +CP . ADL OSCHONT ,CMOPKT +CP . CNT (R1),SCHBK+6 ;?.NT.SCOGKOIO 171122 R2,R3 44 003406 170734 170722 171776 171770 172020 QDIACNT ,CHOPKT «CP .CNT SDIABLK ,CMDPKT +CP. ADL (R1). (R1)+ ,NCNT1 NONT (R1)+ ,PATERN 3¢: R2,R3 SOC"D. .CO!CMD.C2,R3 0000035 171744 000106 000002 000100 011466 011474 000001 000100 011502 011504 011504 0113510 011510 011316 011324 011330 011332 011540 011540 011546 011554 105767 001403 052767 042767 016767 000207 #2,CMOLG : OVFY.C,CHMOPKT S¢: 500635¢ 01,VFYFLG OVFY.C,CMOPKT 172022 170626 ¢ 30066 500654: 172006 016767 016767 DATAMT, CHDPKToCP ADL GENPAT 170666 171750 170644 171704 170606 171770 171706 171674 010000 170570 004000 170556 170562 171646 300664: MOV 1ST8 8EQ 8IS S00674: 1IS 1BR sIF sIF IV A READ? IF NOT, SO, LOAD THE BUFFER ADDR. CMD IS A READ REV THEN: sLOGGING CODE IS 4. tELSE - IF CMD IS A READ FWO: #6,CMOLG 500644 000432 010203 1382 1583 1584 1585 1586 1387 1588 13589 SEQ 070 R2,R3 000001 012767 Fé 30-NOV-83 10:17 8IC RTS 1LOGGING CODE IS 6. sCONTINUE. sIS IV 1A SET CHARACTERISTICS CMD? 1BR IF NOT, 1SET UP ADR LO FOR SET CHAR, 1SET BUFFER EXTENT 1STORE CHARACTERISTIC CODE IN SCH 8LOCK, tUNIT @ sCONTINUE. IS IV 1A DIAGNOSTIC (DIA) CMD? 18R IF NOT. 1LOAD BUFFER EXTENT, 1LOAD BUFFER ADR LOM. aPOINY TO N (NUMBER OF TIMES TO EXECUTE THIS INS 1SAVE NUMBER OF OPERATIONS aCLEAR OPERATION COUNTER. 1SAVE PATTERN CODE FOR CURRENT CMD. 1BR IF NOT. 1LOAD WRITE BUFFER LO ORDER. 1GO GENERATE THE WRITE PATTERN. tWRITE LOGGING CODE IS 2. 1IF DATA VERIFICATION IS REQUIRED: 1SET VERIFY FLAG. tCLEAR VERIFY BIT(NOT USED BY HARDWARE). 1IF DATA VERIFICATION IS NOT REQUIRED: VFYFLG tCLR VERIFY FLAG. CMOWRD, PCMOWD CHMOPKT +CHOWRD SWBFLG 1SAVE PREVIOUS CMD WORD. $1SAVE PRESENT CMD WORD. 30067¢ . C,CMOPKT #5w8 F . C, CMOPKT ®BR SSDPKT.CHDSAV 1IF SWAP BYTES IS ENABLED: 1SET SWAP BIT IN COMMAND. tCLR BRF BIT (INTERNAL ONLY). 1SAVE 1ST WORD OF COMMAND PACKET. sRETURN, MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1617 1618 1619 1620 1621 1622 1623 1624 1625 011556 1626 011562 1627 011564 1628 011570 1629 011372 1630 011576 1631 011602 1632 011606 1633 011612 1634 011616 1635 1636 1637 1638 1639 011620 1640 011622 1641 011624 1642 011626 1643 011630 1644 011632 1645 011634 1646 011636 1647 011640 1648 1649 1650 1651 011642 1652 011646 1653 011652 1654 011654 1655 011656 1656 011662 1657 011666 1658 011670 1659 1660 011674 1661 011674 1662 1663 011676 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 30-NOV-83 10:17 SEQ 071 THIS SUBROUTINE SETS UP AND CALLS THE APPROPRIATE SUBROUTINE TO GENERATE THE DESIRED PATTERN FOR THE WRITE AND WRITE/VERIFY COMMANDS. INPUTS: OUTPUTS; REGISTERS: R2, R3, R4, PATRO - PATR? CALLS: 016703 006303 016704 005204 042704 162704 016702 062702 004773 000207 171664 GENPAT : : MOV 171626 MOV INC 8IC SUB MOV ASL 000001 171600 RADD 011620 JSR RTS PATERN,R3 R3 R4 BRFCNT R4 01.R4 02,R4 DATAUWT ,R2 #2,R2 PC,.8PATTBL(RS) PC $tSETUP PATTERN ROUTINE POINTER tSET LENGTH OF WRITE BFR tROUNDED UP TO NEXT WORD sMITH FIRST WORD RESERVED tFOR RECORD COUNT 1G0 GENERATE THE APPROPRIATE PATTERN, tRETURN TO SETUP SUBROUTINE. 17505 WRITE PATTERN LOOKUP TABLE. USED TO JSR TO THE 1CORRECT DATA PATTERN GENERATING ROUTINE. PATTBL: PATRO PATR1 PATR2 PATR3 PATRA PATRS PATR6 PATR? PATRS s INCREMENTING PATTERN. 012703 162704 100411 010322 062703 020327 001002 012703 000400 000002 PATRO: 18: 001002 001000 000400 S0070¢: 000764 000207 28 0o - 377. 0400 ,R3;LET RS := 8400 ”, R‘lLET R4 := R4 - #2 MOV Su8 8MI MOV ADD cHP BNE MOV 24 R3,(R2). #1002,R3 RS, #1000 S00704 #400,R3 i1BR IF 1STORE DATA HORD 1UPDATE PATTERN. 8R 14 100 IT AGAIN, RTS PC tRETURN, ;DECREMENT WORD COUNT, 1IF PATTERN HAS WRAPPED AROUND THEN: $ INIT THE PATTERN AGAIN. sALL ONE‘'S PATTERN, 011700 011704 011710 011712 011714 012703 162704 100402 010322 000773 011716 000207 177777 000002 PATRL:: MOV R3,(R2)« ZROPAT tALL ONES PATTERN;. +DECREMENT BYTE COUNT, 1OONE?,BR IF YES. s IF NOT LOAD NEXT BYTE WITH PATTERN. 100 IT AGAIN. RTS PC tRETURN, ZROPAT; SUB B8MI B8R 1s: °22,R4 1 MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1674 1675 1676 1677 011720 1678 011722 1679 011726 1680 1681 1682 1683 011730 1684 011734 1685 011740 1686 011742 1687 011744 1688 011746 1689 011756 1690 011752 1691 1692 1693 1694 011754 1695 011760 1696 011764 1697 1698 1699 1700 1701 011766 1702 011772 1703 011776 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 30-NOV-83 H6 10:17 SEQ 072 tALL ZEROES PATTERN, 005003 004767 000207 PATR2:: 177756 CLR JSR R3 1CLR PATTERN REGISTER. PC 1RETURN, PC,.ZROPAT RTS 1G0 GENERATE IT, tONE BIT WALKING FROM R TO L IN A FIELD OF ZEROES. 012703 162704 100404 010322 006303 005503 000771 000207 PATR3:: WLKZRO: 000401 000002 1¢: MOV SUB #401,R3 2,R4;LET R4 BMI MOV ASL ADC 14 R3.(R2)+ t1 INIT PATTERN REGISTER. := R4 - #2 ;DECREMENT WORD COUNT, 1AR IF DONE. R3 R3 B8R RT1S WLKZRO PC 1LOAD DATA. tSHIFT PATTERN, 1ADD CARRY BACK INTO PATTERN. 100 IT AGAIN. iRETURN, 1ZERO BIT WALKING FROM R TO L IN A FIELD OF 1'S. 012703 004767 000207 177376 177750 PATRA:: MOV JSR ®177376 ,R3 1 INIT PATTERN REGISTER. PC 1RETURN, PC,WLKZRO RTS 1GO GENERATE ;IT. 1ALTERNATING ONE AND ZERO BITS WITH ALTERNATE BYTES 1 COMPLEMENTED. 012703 004767 000207 125125 177706 PATRS:: MOV JSR €125125,R3 sINIT PATTERN REGISTER. PC 1RETURN, PC.ZROPAT RTS 1GO GENERATE IT. 1ALTERNATING BYTES OF 000 AND 377, 012703 162704 100402 010322 000773 000207 PATRG:: 177400 18: 000002 24: MOV €177400,R3 sINIT PATTERN REGISTER. 8MI MOV 24 R3,(R2). tBR IF DONE. 1LOAD DATA, RTS PC SuUB #2,.R4 B8R 14 sOECREMENT WORD COUNT, 100 IT AGAIN. 1RET . 1RANDOM PATTERN GENERATOR 162704 100411 066767 066767 016722 000764 000207 000207 PATR?:: 000002 171402 171372 171366 171376 171372 SUB 8MI 2,R4 1DECREMENT WORD COUNT RANS ,RANB RANB , RANS RANS,(R2) PATR? PC 1GET NEW @, 1SAVE o, 1 CONTINUE, 1RETURN GITY GIT: ADD ADD MOV BR RTS ' NO PATTERN GENERATION, PATR8;:;: RTS PC 18R IF DONE, tRETURN, THIS SUBROUTINE INITIATES TSOS COMMAND EXECUTION ?@U$EECKS FOR TSO5 RESPONSE. t MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 30-NOV-83 1731 } ! 1 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 012054 012062 012062 012066 012072 012074 012100 012100 012102 012104 012106 012110 012114 012116 012116 012124 012126 012134 012136 012142 012146 012146 012154 012156 012162 012166 012170 012170 012174 1769 1771 1772 1773 1774 1775 1776 1777 1778 1779 012767 005367 005767 001011 004767 104455 000002 004536 006120 004767 000522 177777 171354 171350 171344 005064 002524 171266 140004 026527 001405 004767 004767 002604 171310 004734 11N 016503 005002 002544 020227 001405 012723 062702 000020 104455 000017 004727 006120 S00744: ! S00754 170272 S0073¢: S0076¢4: 177777 000002 000770 105767 001023 126527 003412 017567 500724 : 000516 004762 000767 S00774: 167756 003472 000001 002524 171200 R2, R3. OROPU, MOVMSG, TIMEL 500724 PC.MOVMSG 2 ,NSSRM,STAERM FIRSTU, NEXTU, WSSR. l£=§; TIMEOUT COUNTER., ' - tUPDATE TIMEOUT COUNTER. 1IF TIMED OUT: tMOVE CURRENT PACKET MSG. tREPORT TSO5 NOT READY 1OROP THE UNIT. TRAP .WORD . WORD . WORD JSR PC,DROPU EXCRTN tRETURN, 8IT BEQ c BNE MOV JSR #7S.SSR,BTSSR(RS) S00714 CMOWRD, #SCH S0073¢ RS ,RSSAVE PC.FIRSTU tWAIT UNTIL DEVICE IS READY. cep BEQ JSR JSR DEVTBL(RS), #END S007S¢ B8R S0074 ¢ B8R 000200 171256 002544 OUTPUTS; REGISTERS: CALLS: TST BNE JSR ERRDF 032775 001756 026727 001022 010567 004767 SEQ 073 EXCUTE:: MOV ®-1,TIMEL S00718: ;REPEAT DEC TIMEL 000634 016705 016567 10:17 MOV PC,WSSR PC,.NEXTU RSSAVE RS +IF WE ARE DOING A SET CHAR CMD THEN: 1 SAVE CURRENT DEVICE POINTER. sFIND FIRST UNIT. tWHILE DEVTBL(RS) NE #END DO tWAIT FOR UNIT READY OR TIME OUT, tFIND NEXT UNIT. iRESTORE CURRENT DEVICE POINTER. 1SET UP ADR OF MSG PKT IN SCH BLOCK. MOV MSGPKA(RS ), SCHBK MoV CLR MSGPKA(RS),R3 Re tADR OF THIS UNIT'S MSG PACKET. 1CLR COUNTER. cP BEQ MOV ADD R2, MSGCNT S00774 #-1,(R3). 1WHILE THERE ARE MORE LOCATIONS: B8R S0076¢ TST8 BNE cMP8 BLE MOV OINT 16 INTFLG(RS),#1 501004 ERRODF #2,R2 STSSR(RS), TSSREG 15, TO0MM, STAERM CIERDF 2 NSSRM STAERM 1INIT THE MSG PACKET WITH ALL 1°S tUPDATE COUNTER. sARE INTERRUPTS OISABLED. 18R IF YVES, 11F MORE THAN ONE INTERRUPT MAS OCCURED: tFREEZE THE CURRENT STATUS REG FOR PRINT tREPORT TOO MANY INTERRUPTS, TRAP .WORD . WORD .WORD CSEROF 13 TOOMM STAERM GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1780 012264 004767 004710 1784 012272 005065 003472 1787 012310 1788 012312 %;gg 012316 001005 005265 016577 1.7,:% 012270 1 1783 012272 1785 012276 1786 012304 1791 012324 000434 052767 105767 000200 171161 30-NOV-83 10:17 501004 : 170024 003376 003376 171062 012775 002330 002514 1794 012332 032775 000200 002524 1796 012342 004767 000366 012346 104455 1795 012340 1797 012346 001410 012350 000003 {;3 012356 004767 012352 012354 1800 012362 {:8% 012362 004453 006120 1%: S01018: 004616 1CLR INTERRUPT FLAG FOR THIS DEV. 501014 RECCNT(RS) RECCNT(RS), 8DATAWT tLET RECCNT(RS) := RECCNT(RS) + #1 s THEN UPDATE REC COUNT TO WRITE IT ON TAPE MOV #CMOPKT ,8TSDB(RS) sLOAD TSD8 WITH CMDPKT ADORESS 8IT #7S,.SSR,8TSSR(RS) s IF READY DID NOT DROP THEN: JSR PC ,MOVMSG BNE INC MOV JSR 50102¢: EXCRTN: RTS i:ig : 1814 012372 INTFLG(RS) 8IS 7578 1OROP THE UNIT EXCRTN tRETURN - UNIT HAS BEEN DROPPED. ¢IE.C,CMOPKT 1SET INT ENABLE BIT. ERRREC;IFB ERRREC EQ #0 THEN s IF NOT RETRYING 501024 3, TOERM,STAERM 1 THIS INITIATES COMMAND EXECUTION. 1MOVE CURRENT MESSAGE PACKET TO COMMON. tREPORT NO TSOS RESPONSE. TRAP CS$ERDF .WMORD .MORD TOERM STAERM .WORD 000207 012767 CLR BEQ 3 3 ' : s : ' 1812 012364 PC,DROPY ERROF 1803 1804 1805 1806 1807 1808 1809 1813 012372 SEQ 074 JSR BR 1792 012324 1793 Jo 177777 171044 tDROP THE UNIT PC 1RETURN, THIS SUBROUTINE WAITS FOR THE TSOS INERRUPT OR DONE BIT TO SET AND ALLOWS THE OPERATOR TO TRANSFER CONROL 7O THE SUPERVISOR. UPON APPEARANCE OF THE INTERRUPT OR DONE, CHECK TSSR FOR STATUS ERRORS, LOG BYTES AND ERRORS AND PERFORM ERROR RECOVERY IF NESSASARY. INPUTS: OUTPUTS: REGISTERS: R2, RS, CALLS: GOWAIT:: MOV 50103¢: PC,DROPYU ;REPEAT OROPU, MOVMSG, RECUD, CHXKERR, LOG, CLRERR. e-1,TIMEL BREAK s INIT TIME OUT COUNTER. tREPEAT UNTIL INTERRUPT OCCURES: 1GO TO THE SUPER TO ALLOW TTY INPUT. 012372 1815 012374 104422 026727 171020 012404 012727 000012 012412 016727 167500 MOV 005367 177772 OEC 005367 001367 177756 DEC BNE 1819 012434 026727 170760 105010 1821 012444 1822 012452 026727 001014 170750 105410 1816 012402 1817 012404 012410 012416 012420 012424 012426 012432 1818 012434 1820 012442 1823 012454 001014 000000 000000 001375 001404 12010 cHP BNE OELAY CHMOWRD , #RWD 501044 10. TRAP 1 IF COMMAND WAS REWIND THEN: tMAIT EXTRA MSECS EACH LOOP. MOV cHP CMOWRD , #SFF cHP BNE CMOWRD , #SFR 501064 8EQ 50105¢: 301054 C4$8RK 410.,(PC)» .WORD O .WORD O BNE 501044 ; 3 L$DLY,(PC). -6(PC) -22( PC) .-20 1IF CMDWRD EQ #SFF OR CMOWRD EQ #SFR THEN MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1824 012454 012454 012460 012462 012466 012470 012474 012476 012502 1825 012504 012504 012510 012512 012727 000000 016727 000000 005367 001375 005367 001367 0000i4 105767 001003 016502 167502 30-NOV-83 DELAY 1ADD DELAY FOR SPACE TAPE MARK COMMANDS MOV .WORD MOV .WORD DEC BNE DEC BNE 177756 S0106¢: DINT S50107¢ INTFLG(RS),R2 003472 000200 005367 005702 001003 005767 001310 170676 #TS.SSR,R3 R3 tFETCH INTERRUPT OCCURRED FLAG. 1SET UP A MASK FOR THE DONE BIT. 8TSSR(RS),R2 50110¢: TIMEL R2 S0111¢ 1FETCH DONE BIT. 1tUPDATE TIMEOUT COUNTER. tREPEAT UNTIL INTERRUPT OR READY OCCURES. TIMEL 50103¢ S501114: 170660 TIMEL S0112¢ RECCNT(RS),S8DATAWT SDATAWT 170620 PC . MOVMSG 4 ,NOINTM,STAERM PC,DROPY SENDERF ,R3 PC,CLRERR 004366 003472 000042 000104 000164 1 IF INTERRUPTS ARE ENABLED. R3,R2 170666 003376 170614 000136 +IF TIME OUT HAS OCCURRED: tMOVE CURRENT MSG PACKET TO COMMON AREA. ;REPORT NO INTERRUPT, TRAP CSEROF .WORD .WORD .WORD 1DROP THE UNIT. tLET R3 := SENDERF tCLEAR ALL ERROR FLAGS PC . MOVMSG PC.RECUD PC,CHKERR WRTYFG 301144 PC,LOG OENDERF ,R3 PC.CLRERR 170617 002714 003472 000002 50113¢: 4 NOINTM STAERM 501134 50112¢: tMOVE CURRENT MSG. PACKET TO COMMON AREA. tUPDATE THE RECORD COUNT, 1CHECK FOR STATUS ERRORS. 1IF8 WRTYFG EQ €0 THEN 1LOG BYTES AND ERRORS. tLET R3 := OENDERF 1CLEAR ALL ERROR FLAGS S0114¢: 000207 e12.,(PC)» O LSDLY,(PC)» O -6(PC) . -4 -22(PC) .-20 501104 50107s: 002524 000417 004767 004767 004767 105767 001006 004767 012703 004767 12. 177772 012703 005103 017502 040302 104455 000004 004670 006120 004767 012703 004767 SEQ 075 167430 000406 005767 001022 016577 005377 004767 K6 10:17 RTS PC tRETURN IF DONE. MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1869 1870 1871 1872 1873 1874 1875 1876 012664 1877 012670 1878 012670 1879 012672 1880 012674 1881 012676 1882 1883 1884 1885 1886 1887 1888 1889 1890 012700 1891 012700 1892 012706 1893 012706 012706 1894 012710 1895 012714 1896 012722 1897 012724 1898 012730 1899 012732 1900 012732 1901 1902 L6 30-NOV-83 10:17 SEQ 076 SUBROQUTINE TO CLEAR FLAGS. INPUTS; R3 = LWA TO BE CLEARED OUTPUTS: REGISTERS: R2 CALLS: 012702 CLRERR:: MOV 003460 S0115¢: 005022 020203 001375 000207 1REPEAT CLR o, BNE RTS ®BGNFLG,R2 iLET R2 (R2). R2,R3 501154 sLET (R2)+ := 00 tUNTIL R2 EQ R3 2. := 0BGNFLG PC ?&%TI’E TO WAIT UNTIL CURRENT UNIT IS READY OR UNTIL TIME OUT, OUTPUTS: REGISTERS: CALLS: 012767 104422 005367 032775 001003 005767 001366 177777 170522 000200 170530 WSSR: : 50116¢: 002524 170506 S50117¢: 000207 MOV e-1,TIMEL s INIT TIMEOUT COUNTER, 1REPEAT UNTIL DEV READY OR TIMEOUT: BREAK DEC BIT BNE TST BNE TIMEL OTS.SSR,OTSSR(RS) 501174 TIMEL 501164 RTS PC 1BREAK TO THE SUPERVISOR. TRAP tUPDATE TIMEOUT COUNTER. C4BRK ;UNTIL #TS.SSR SETIN STSSR(RS) OR TIMEL EQ #0 1RETURN. SUBROUTINE TO MOVE THE CURRENT MESSAGE PACKET TO THE COMMON AREA AND TO UPDATE THE CURRENT TERMINATION CLASS COOE. INPUTS: OUTPUTS REGISTERS: CALLS: 012734 012742 012746 012756 012762 012766 012770 012770 012774 012776 013002 013006 017567 016702 042702 010267 016503 005002 002524 177761 170472 170466 002544 020227 000020 012362 062702 002354 000002 000770 170512 MOVMSG:: MOV MOV BIC MOV ASR 501204 : R2, RS, OTSSR(RS), TSSREG TSSREG,R2 &71SC.TCC,R2 R2,CTCC CTCC 1FREEZE THE STATUS REG CONTENTS 1EXTRACT THE TERMINATION CLASS CODE, 1AND SAVE IT MOV CLR MSGPKA(RS),R3 R2 tADR OF THIS DEVICE'S MSG. 1CLR COUNTER. cHp 8EQ MOV ADD R2, MMSGCNT 501214 (R3)+ ,MSGPKT(R2) €2,R2 sWHILE THERE ARE MORE LOCATIONS: B8R 50120 1MOVE MSG TO COMMON AREA. 1UPDATE COUNTER. MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 1925 013010 1926 013010 1927 013016 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 013066 013072 013074 013074 013102 013104 013112 013114 013122 013124 016767 000207 167346 30-NOV-83 170464 105767 001070 032767 001057 032767 001453 026727 001003 005065 032767 001436 032767 001007 032767 001002 005265 003376 000001 170410 100000 167316 170407 170336 102010 170316 000400 170306 000400 170302 CALLS: REGISTERS: 501244 : TSTB BNE DEC BIT BNE BIT BEQ RECLOG S01224¢ INCB cHP BNE CLR RECCNT(RS) sLET RECCNT(RS) := RECCNT(RS) - &1 #8IT0,CTCC 1 IF TAPE MOVED 501234 X2 .0PM,MSGPKT «MS , XS2 501234 RECLOG 1SET RECORD LOGGED, CMOWRD , #RWD 1IF THIS IS A REWIND CMD: 501244 RECCNT(RS) sCLEAR RECORD COUNT, BR 501254 8IT 1IF RECORD HAS NOT BEEN LOGGED: #8RF . C, CMDWRD 105767 001406 105767 001403 105767 001002 005365 000400 170264 8IY 4100 .CO ,PCHMDWD 1IF PREV CMD WAS A FWD ALSO: INC RECCNT(RS) 1 INCREMENT RECORD COUNT, B8R 501314 -3 4] #M00.CO,PCHMDWD B8NE 000002 003502 501274 : BEQ 8IT BNE TST8B 170313 BEQ 170332 TST8 BEQ 170273 003376 TST8 BNE DEC f&: t 013200 S0133¢: 013200 50132¢: 013200 S50131¢: 013200 501264: UPDATE RECORD COUNT. 50126 #M00.CO,CMDWRD S01274¢ 501304 501304 : 032767 001417 032765 001013 1IF BRF USED, B8EQ BIY BNE 003376 000423 sMOVE XSTATO TO EOT FLAG. : 003376 004000 MSGPKT +MS . XSO ,EQTFLG PC SUBROUTINE TO ADJUST THE RECORD COUNT. INPUTS: OUTPUTS: RECUD:: 170441 MOV RTS SEQ 077 ! } 3 : 013130 013130 013132 013132 013140 013142 013150 013152 013156 013160 013164 013166 013172 013174 013200 50121$: M6 10:17 S0132¢ #X0.BOT ,EOTFLG(RS) 501334 1IF A FORWARD CMD: 1IF REVERSE CMD: 1 IF PREVIOUS CMD WAS A REV ALSO: 1WHEN NOT AT BOT THEN ERRREC 1CHECK THE ERROR RETRY INDICATOR VFYFLG 1CHECK THE WRITE VERIFY INDICATOR 24 24 RECLOG 10¢ RECCNT(RS) 1BR, IF WE ARE NOT NOW IN ERROR RETRY 18R, IF WE ARE NOT IN WRT/VFY MODE 1CHECK IF THIS RECORD HAS BEEN COUNTED 1BR, IF MAVE ALREADY BUMPED RECORD CNTR. 1OECREMENT RECORD COUNT. GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1982 1983 013200 1984 1985 013200 i% 013200 1988 013206 i% 013206 016577 003376 170200 ' ' : : 3 ] : ' : 032767 001441 026727 100000 170236 170224 000002 2005 013230 2006 013234 2007 013236 105767 001002 005265 170235 001405 013242 013242 013250 013252 013260 013262 013262 013270 12’8%3 013272 2021 013276 2022 013300 2023 013300 2025 2026 2027 2028 228233 2031 013312 2032 013312 228;2 013314 2033 2036 2037 2038 013320 013322 013322 013330 RECCNT(RS),80ATAWT RTS PC sLET SDATAWT := RECCNT(RS) tRETURN, THIS IS THE ERROR CHECK SUBROUTINE. AFTER INTERRUPT TMIS SUBROUTINE IS CALLED TO CHECK THE TSOS STATUS. IF SPECIAL COND IS SET THEN THE TCC MANDLING SUBROUTINE IS ENTERED. IF THE RFC IS NON ZERO FOR A COMMAND REQUIRING A BPCR, THEN AN ERROR RFC IS REPORTED, INPUTS; QUTPUTS: REGISTERS: R2, R4. CALLS: TCCO-TCC?. BEQ #7S.SC, TSSREG 501344 CTCC,e2 50135¢ 1 IF SPECIAL COND STATUS IS SET THEN: 1IF TCC IS NOT 2 THEN: 1578 BNE INC ERRREC 30136¢ SCCONT(RS) 1 IF NOT IN ERROR RECOVERY: 8IT BNE 8IT 8EQ #TS .NXM, TSSREG 50137¢ #7S.UPE, TSSREG 501404 81T BNE X2 .0PM,MSGPKT +MS . XS2 501414 1INC SC COUNTER. 50136¢: 032767 001004 032767 001412 004000 170204 040000 170174 032767 001003 100000 167076 012702 50137¢: MOV 000402 012702 501354: 000005 S501414: 000004 013304 013304 013306 013306 MOV CHKERR:: BIT B8EQ cHP 003336 2009 013242 2010 2013 2016 2017 2018 S50123s: 501224 : 000207 2001 013210 2002 013216 2003 013220 2011 2012 2013 2014 SEQ 078 501254 : 1991 1992 1993 1994 1995 1996 1997 1998 1999 2004 013226 N6 30-NOV-83 10:17 ®,.R2 tWHEN NON-EXISTANT MEMO 1AND TAPE NOT MOVED $1SET TCCS INDEX 50142¢ MO\ o4 ,R2 8R 501434 MOV CTCC.R2 ASL JSR R2 PC,8TCCRA(R2) 1 TAPE MOVED, SET TCC4 INDEX S0142¢: 000402 016702 006302 004772 S01404¢ : 170136 501434 : 013414 000426 032767 001422 004000 170070 5013494 1SET DETECTED TCC INDEX 1CURRENT TCC X 2. 1GO TO THE TCC HANDLING SUBROUTINE. 301444 817 8EQ #BRF . C,CMOWRD 3501434 1IF BRF IS USED IN THIS CMD THEN: — e GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2039 013332 2040 013336 2041 013340 2042 2043 2044 204S 013344 013346 013352 013354 2046 2047 013354 2048 013360 2049 013362 2050 013366 013366 013370 013372 2081 013374 2052 013376 2053 2054 013376 205S 2056 013376 2057 2058 013376 2059 2060 013376 2061 013376 2062 013402 2063 013404 206S 013412 22329’ 013412 005767 167022 105767 170151 001417 001403 105767 00141} 105767 001006 005265 013414 013416 013420 013422 013424 013426 013430 228;; 013432 170141 003356 013440 013442 013444 013446 m—— B7 MSGPXT +MS .RFC 1ST8 RANDOM TST8 BNE INC IRE S01514 HROCNT(RS) BEQ 1ST8 8EQ ERRMRD 104456 S01464 S01474 VFYFLG S01504 SEQ 079 +IF THERE IS AN RFC THEN: 1IFB RANDOM EQ #0 ORB VFYFLG NE #0 THEN 13,RFCERM, STAERM sIF NOT IN RANDOM OR IF CMD IS WTV: 1IF RFC ERROR REPORTS ARE ALLOWED: tUPDATE MARD ERROR COUNT sREPORT RFC ERROR 000015 004521 TRAP .WORD .MORD 006120 .MORD CSERHRD 13 RFCERM STAERM S01514: 501504 : S01466: S0145¢: 105767 001403 016767 501444 170065 170012 166716 S01524 : 000207 013434 013452 013470 013600 013616 014232 014330 104456 000005 00447S 006120 RTS RUERR 501524 CMDSAV, CMDOPK T PC sIF A READ/MRITE ERROR HAS OCCURRED THEN: {RESTORE CMD PACKET AFTER ERROR RECOV. tRETURN, ' ADDRESSES OF TCC MANDLING ROUTINES FOR TERMINATION CLASS CODES O - 7. TCCRA: TCCO TCC1 TCC2 TCC3 TCCA TCCS 1CC6 014472 005265 1ST8 BEQ MOV TCC? ' ' ' ' ' ' 2087 013440 . 1ST 8EQ S01478: 2079 2080 2081 2082 2083 2084 2086 013434 —— 30-NOV-83 10:17 170144 gg 2070 2071 2072 2073 2074 207S 2076 - 003356 TCCO:: SUBROUTINE TO MANDLE TERMINATION CLASS CODE O, UNDEFINED SPECIAL CONDITION ERROR, INPUTS; OUTPUTS; REGISTERS: CALLS: INC ERRMRD HROCNT(RS) S, SCERM, STAERM tUPDATE MARD ERROR COUNT. tREPORT SPECIAL CONDITION ERROR. TRAP CSERMRD .MORD STAERM WMORD WORD S SCERM - GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2088 013450 2089 000207 2094 ' 2093 ' 2095 2096 2100 013462 gigé 013466 004767 000207 CALLS: : 2106 3 2107 2108 g{g: 001401 2113 013500 gflg 013506 2118 013510 105767 032767 2122 013516 001427 2124 013520 2125 013524 2126 013526 105767 001403 105767 2127 013532 2128 0133534 2129 2130 013534 2131 013540 2132 013542 2133 013546 2134 013550 213S 2136 013554 2137 013556 ggg 013556 2140 013562 001421 105767 001016 105767 001403 105267 005265 166664 .~ — - e - —_— ERRDF R2,R4 DROPYU 6,ATTNM,STAERM tREPORT ATTENTION-UNIT OFF LINE. TRAP PC,DROPY PC sOROP THE UNIT, tRETURN, SUBROUTINE TO HANDLE TERMINATION CLASS CODE 2, .MORD .MORD . CS$ERDF 6 ATTNM STAERM TAPE STATUS ALERT. BIT BEQ INPUTS: REGISTERS: CALLS: S01534: 501556 167761 167723 167714 $01604: S01616: #X0.80T ,MSGPKT «MS . XSO S01534 TST8 EXPBOT B8R TC2RTN 8IvY OXO.RLS!XO.RLLIXO. TMXC!XO.LET!XO0.B0T ,MSGPKT +MS . XSO 1 IF OXO.RLSIXO.RLL!XO, TMX!XO.LET!X0.B0T SETIN MSGPKT+MS, XSO THEN 8EQ 501544 1S78 8EQ TST8 RANDOM S01554 VFYFLG 1 £31:] IRE 8EQ 166644 tRETURN, TCC2:: 167764 003336 - OUTPUTS: 167771 000402 . : 170010 170002 e A STATUS CONDITION HAS BEEN ENCOUNTERED THAT MAY MAVE SIGNIFICANCE 70 THE PROGRAM, BITS OF INTEREST INCLUDE TMX, RLS, LET, RLL, BOT, EOT. 000433 2119 013510 ggg 2123 000002 e am ' : : 3 2114 013504 2115 . SEQ 080 REGISTERS: JSR RTS 2103 032767 001404 m—— INPUTS,; 3 003512 2104 2105 2111 013470 2112 013476 - SUCH AS GOING OFFLINE OR COMING ONLINE. OUTPUTS: TCC1:: 10445S 000006 004603 006120 ——— SUBROUTINE TO HANDLE TERMINATION CLASS CODE 1, ATTENTION CONDITION. THIS TCC INDICATES THAT THE ORIVE WHAS UNDERGONE A STATUS CHANGE : ' 2097 013454 013456 013460 - RTS PC ' : 013452 - 30-NOV-83 10:17 2091 2092 2099 013452 F— 8EQ 501534 +IF AT B80T AND BOT IS EXPECTED: tRETURN-TCC2 CAUSED BY EXPECTED 80T. 1IF TCC2 CAUSED BY ANYTHING BUT EOT: s+ IFB RANDOM EQ #0 OR8 VFYFLG NE €0 THEN S01564 BNE 631 ] 8EQ INCB S0157¢ ERRREC 501604 UNREC BR 301614 INC SCCNT(RS) IF NOT IN RANDOM OR IF CMD IS WTV: ' IF ar(’: ERROR REPORTS ARE ALLOWED: 1IF WE ARE IN ERROR RECOVERY THEN: 1SET UNRECOVERABLE FLAG FOR LOG. tELSE - IF NOT IN ERROR RECOVERY: s INCREMENT THE SPEC COND COUNTER. — MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2141 013362 2142 013566 2143 2144 2145 2146 2147 2148 2149 2150 2151 21352 2153 2134 2135 013574 005265 — ——— [R— e e . —— —— - - —_— 30-NOV-83 10:17 INC 003356 EPRHRD 104436 000007 004705 006120 S50157¢: 013576 S0156¢: 013576 501544 TC2RTN; 000207 RTS ——— SEQ 081 HROCNT(RS3) 7,TSAM,STAERM tUPDATE HARD ERROR COUNT, tREPORT TAPE STATUS ALERT, TRAP .WORD .MORD .WORD 013576 013576 —— PC CIERHRD 7 TSAM STAERM tRETURN, SUBROUTINE TO HANDLE TERMINATION CLASS CODE 3, FUNCTION REJECT. THE SPECIFIED FUNCTION WAS NOT INITIATED. BITS OF INTEREST ARE RMR, OFL, VCK, BOT, ILC, WLE, ILA, AND NBA. INPUTS; QUTPUTS: REGISTERS: 2157 2158 21359 2160 2161 CALLS: TCC3:: 104455 ERROF R2,R4 OROPY 8 ,FUNRM,STAERM tREPORT FUNCTION REJECT. 000010 006120 004767 000207 003364 JSR RTS PC.OROPY PC TRAP t1OROP THE UNIT. IRETURN, .MORD LMORD .MORD CIERDF 8 FUNRM STAERM SUBROUTINE TO HANDLE TERMINATION CLASS CODE 4, RECOVERABLE ERROR. TAPE POSITION IS ONE RECORD BEYOND WMAT ITS POSITION WAS WHEN THE FUNCTION WAS INITIATED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND ISSUE THE APPROPRIATE RETRY COMMAND. 2 WRITE-ERROR-RECOVERY ALGORITHMS CAN BE SELECTED: THE FIRST ONE, VIA BADTSW SWITCH, DOES DETECT BAD SPOTS ON TAPE. IT CALLS A WRITE RETRY SUBR UNTIL THE RECORD IS RECOVERED OR 20 BAD SPOTS MAVE BEEN LOGGED. ON REACHING 20 BAD SPOTS LOGGED, A BAD TAPE OVERFLOM MSG IS PRINTED AND THE UNIT OROPPED. THE SECOND ALGORITHM ISSUES THE TSO3 WRITE RETRY COMMAND UP TO 16 TIMES BEFORE DROPPING THE UNIT OR PROCEEDING WITH THE NEXT RECORD ON RECOVERY. INPUTS: OUTPUTS; REGISTERS: CALLS: 013616 013624 013632 013634 013640 013642 167604 166336 167631 166341 000002 TCCa::; R2.R4, RTLE, EXCUTE, GOWAIT, DROPU, WRTY ce CMOLG, #2 1578 BADTSW 1S78 BNE 1sT78 ERRREC 501634 ERCVER BNE 8EQ 301624 +IF CMOLG EQ €2 ANDB BADTSW NE &0 THEN 1IFB ERRREC EQ #0 ANDB ERCVER NE €0 THEN GLOBAL AREAS GLOBAL SUBROUTINES SECTION MACRO M1113 2190 013646 2191 013630 013650 013632 013634 013656 001404 013660 501634: 167377 167566 167561 013772 013774 013774 167310 166412 1ST8 001174 001164 001162 167512 012746 012746 015177 000001 000004 001266 003376 003140 003376 002350 167405 167447 001020 000050 INC tFIRST RETRY ON THIS RECORD: SUBSEQUENT WRTYCT(RS) 1COUNT GLOBAL WRITE RETRIES RPTCNT PC.WRTY 1CLEAR & OF REPEATS 1CALL WRITE RETRY tCLEAR @ OF RETRIES PER RECORD WRTYER GBTPT,040. 501704 CLR8 INCB tRETRY FLAG FOR EXCUTE SUBR: DON'T UPDATE REC CN 1REWRITE ERROR FLAG FOR WRTY SUBR RETRYC cP 8LO0 CLR MOV 167334 1IFB IREC EQ #0 THEN 1REPEAT 501674 SBTPT,840. 901664 JSR DEC JSR $0170¢: 5\%{;;(.3 BEQ ce 8LO PRINTB 002514 $REPEAT RETRIES ON SAME RECORD sUNTIL RECOVERED OR 20 BAD SPOTS tWHEN 20 BAD SPOTS LOGGED #BTMSG2 1PRINT BAD TAPE OVERFLOM MSG PC.B0RERS RECCONT(RS) PC,.DROPY 1ERASE BAD RECORD RECCONT(RS) ORWCPK ,8TSDB(RS) WRTYFG MOV MISCFG WTYWRD , PCMOWD 000402 105267 167372 501644 B8R S0171¢ INCB UNREC MOV MBTMSG2, -(SP) MOV TRAP ADD SP,RO C$PNTB 84,5P 1OROP UNIT tREWIND UNIT tRETRY COMPLETE FLAG 100 NOT MALT ON THIS CMD FLG tRESTORE ORIGINAL WRT CMD AFTER RECOVERY 501654 014070 014072 014072 RERM STALRM IRETRIES WITH TCC4 ERRORS BY-PASS THIS SECTION CMOWRD , T YWRD 1SAVE WRITE COMMAND PACKET CHMOPKT WTYCMD CMOPKT +CP.CNT ,WTYBRF RWERR 1LOG SUBR FLAG: COUNT WRT ERRORS WRTYFG sRETRY IN PROGRESS FLAG 1578 027727 103423 .WORD . WORD MOV MOV MOV INCS INCB CLRS JSR 501674: gOERSOFT 501644 ERRREC WRTYER CLR 000050 IREC TRAP BNE INCS INCB ;PSETG 501664: 003265 0035067 105067 004767 105767 001404 027727 103761 016767 SEQ 082 BEQ 501634 ERRSOF T 9,RERM,STAERM 166327 016767 016767 016767 105267 105267 E7 30-NOV-83 10:17 tLET UNREC :8° UNREC » @1 H MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTIOf! 2238 014076 014070 014100 014100 014104 014112 014114 014120 014122 014126 014130 SEQ 083 501714: 000454 004767 026727 003411 012702 006202 026702 052767 000404 167316 501624 000020 167332 020000 B8R S50172¢ JSR PC.RTLE BLE 501734 cHpP 000002 1CHECK FOR RETRY LIMIT EXCEEDED. CMOLG, #2 +IF READ CMD THEN: MOV ‘O‘SRECL.RZ crP RETRYC,R2 8IS o0PP . C,CMOPKT TST BNE RETRYC 501734 ERCVER 8LY 166172 1R2=READ RETRY COUNT LIMIT / 2 1IF RETRY COUNT IS MORE THAN HALF LIMIT: 501744 $SET OPPOSITE BIT FOR RETRY2, S01744: 014136 014136 014136 014142 014144 014150 014132 014152 014154 014156 014160 S0173s¢: 167316 T7S78 166037 014162 014162 014166 014174 014200 014202 014206 014210 014212 014216 167272 001000 166013 014222 014224 014224 S0175¢: INC RETRYC $UPDATE RETRY COUNT, 1S78 IREC 1 IF ERROR RECOVERY ENABLED: 8IS 166134 #00.C1,CMOPKT 167263 175636 176142 JP GOWAIT BR 50177¢ INCE UNREC S0176¢: ;REPORT RECOVERABLE ERROR TRAP SOERSNT .WORD .WORD RERM STAERM tPROVIDED OPERATOR HAS ENABLED THE REPORT 30176¢ ERRREC 167240 1 IF THIS IS THE ORIGINAL ERROR THEN: BEQ 501754 ERRSOFT 9,RERM,STAERM BNE INCB 014230 014230 014230 F7 30-NOV-83 10:17 ;SET RETRY BIT IN CMD PACKET. 1SET ERROR RECOVERY FLAG. 1POP 2 RTN ADRS FROM STACK. 1GO EXECUTE THE RETRY COMMAND. 1GO0 WAIT FOR INTERRUPT + CHECK STATUS. 1ELSE IF ERROR RECOVERY IS NOT ENABLED: 1SET UNRECOVERABLE ERROR FLAG. 50177¢: S50172¢: 000207 RTS PC s RETURN SUBROUTINE TO HMANDLE TERMINATION CLASS CODE 5, RECOVERABLE ERROR. TAPE POSITION HAS NOT CHANGED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND RE-ISSUE THE ORIGINAL COMMAND. INPUTS OUTPUTS: REGISTERS: CALLS: 014232 014236 014242 004767 005767 001004 000252 167216 TCCS:: JSR PC,RTLE BNE 502004 ST RETRYC R2,Rs4. RTLE, EXCUTE, GOWAIT, DROPU. sCHECK FOR RETRY LIMIT EXCEEDED 1IF THIS IS THE ORIGINAL ERROR THEN: MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2291 014244 014244 014246 014250 014252 014254 014254 014260 014264 014266 014272 014276 014304 014306 014310 014314 014320 014322 014322 014326 014326 30-NOV-83 10:17 ERRSOFT 10,RERM,STAERM 104457 000012 005017 006120 005267 105767 001016 103267 005265 016577 012602 012602 004767 000167 502004 : 167200 165727 167177 003376 003376 167102 175540 176044 502014 : 167142 502024 : 000207 036767 001016 163454 014340 014344 014346 014352 005767 167062 105267 105267 167115 167112 014356 014356 014356 014360 014362 014364 2333 014366 2334 2335 014372 2336 014374 2337 014374 2338 014400 2339 014404 166032 004767 005767 001004 INC RETRYC sUPDATE RETRY COUNTER. BNE INCS INC MOV MOV 50201 ERRREC 1SET ERROR RECOVERY FLAG. RECCNT(RS) tUPDATE REC COUNT RECCNT(RS),8DATAWT §AND INSERT IT INTO WRT BFR (SP)+,R2 1POP 2 RTN ADRS FROM STACK. JSR P PC,EXCUTE GOWALT B8R 502024 INCB UNREC RTS PC IREC 1IF ERROR RECOVERY IS ENABLED: sGO RE-ISSUE THE COMMAND. 1GO WAIT FOR INTERRUPT o+ CHECK STATUS. 1ELSE IF ERROR RECOVERY IS NOT ENABLED: 1SET UNRECOVERABLE ERROR FLAG. tRETURN. REGISTERS: CALLS: TCCé6:: gg gégg"(.HSGPKToHS.XSSsIF X3.DCK NOTSETIN MSGPKTMS.XS3 THEN TST CMOLG INCS INCB RUWERR UNREC ERRDF 11,URERM,STAERM OUTPUTS: BEQ R2, R4 RTLE, WSSR, EXCUTE, GOWAIT, DROPU 50204¢ 1IF THERE IS NO DENSITY CHECK THEN: 1IF CMD IS A READ OR WRITE THEN: 1SET RD/WR ERROR FLAG, 1SET UNRECOVERABLE ERR(R FLAG. sREPORT UNRECOVERABLE ERROR. TRAP . WORD 002606 000110 167054 RERM STAERM s ' 104455 000013 000436 C¢ERSOFT 10 SUBROUTINE TO HANDLE TERMINATION CLASS CODE 6, UNRECOVERABLE ERROK. TAPE POSITION MAS BEEN LOST. THE ONLY VALID RECOVERY PROCEDURE IS TO REWIND AND START OVER AT BOT UNLESS THE TAPE HAS LABELS OR SEQUENCE NUMBERS. THIS DIAGNOSTIC WILL REWIND AND RETRY THE COMMAND ONLY IF DENSITY CHECK IS SET, OTHERWISE THE UNIT WILL BE OROPPED FROM THE TEST SEQUENCE. INPUTS: 502044; 006120 004767 TRAP .WORD ! : 3 3 : : 3 3 014330 014336 ;REPORT RECOVERABLE ERROUR. . WORD . WORD 1578 000402 105267 SEQ 084 502034 : JSR PC.DROPU B8R 502054 JSR PC,.RTLE BNE 502064 TST RETRYC CSERDF 11 URERM .WORD . WORD STAERM sREPORT ERROR + DROP UNIT, 1ELSE-IF TFERE IS DENSITY CHECK: ;CHECK FOR RETRY LIMIT EXCEEDOED. ;IF THIS IS THE ORIGINAL ERROR TMEN: MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2340 014406 014406 014410 014412 014414 014416 014416 014422 014426 014430 014434 014442 014446 014450 014452 014456 014462 014464 014464 005267 105767 001016 105267 012775 004767 012602 012602 004767 000167 502064: 167036 167073 167035 002350 176232 167000 INC 7578 BNE INCB MOV JSR MOV MOV 002514 JSR 173376 175702 000402 105267 10:17 ERRSOFT 11,URERM,STAERM 104457 000013 005041 006120 014470 014470 014470 30-NOV-83 H7 JHP S0207¢: RETRYC IRE 502074 ERRREC MRWCPK,8TSDB(RS) PC,WSSR (SP)+,R2 (SP)+,R2 PC,.EXCUTE GOWAIT B8R 50210¢ INCE UNREC RTS PC SEQ 085 sREPORT DENSITY CHECK ERROR TRAP .WORD .WORD .WORD CSERSOF T 11 URERM STAERM tUPDATE RETRY COUNT. 1 IF ERROR RECOVERY IS ENABLED THEN: 1SET ERROR RECOVERY FLAG, 1 ISSUE A REWIND COMMAND, tWAIT FOR SUBSYSTEM READY, 1POP 2 RTN ADRS FROM STACK. 1REISSUE THE COMMAND, tWAIT FOR INTERRUPT tELSE-IF ERR REC DISABLED: 1SET UNRECOVERABLE ERROR FLAG. 502104 S0205%: 000207 1RETURN SUBROUTINE TO HANDLE TERMINATION CLASS CODE 7, FATAL SUBSYSTEM ERROR, THE SUBSYSTEM IS INCAPABLE OF PROPERLY PERFORMING COMMANDS OR AT LEAST ITS INTEGRITY IS SERIOUSLY QUESTIONABLE. REFER TO THE FATAL CLASS COOE FIELD IN THE TSSR REGISTER FOR ADOITIONAL INFORMATION ON THE TYPE OF FATAL ERROR. INPUTS: OQUTPUTS: REGISTERS: R2, R4 CALLS: 014472 014472 014474 014476 014500 014502 014506 TCC7:: 104455 000014 ERRDF 12,FATSM,STAERM tREPORT FATAL SUBSYSTEM ERROR. TRAP 004642 004767 000207 002472 JSR RTS PC,DROPU 1DROP THE UNIT. PC .WORD .MORD .WORD CSEROF 12 FATSM STAERM tRETURN. SUBROUTINE TO CHECK FOR RETRY LIMIT EXCEEDED. PRINTS ERROR MESSAGE IF EXCEEDED AND OROP UNIT UNLESS COMMAND IS A READ. INPUTS: OUTPUTS REGISTERS: R2, R4, CALLS: 014510 014514 014516 014516 005767 001010 104455 166712 RTLE:: TS7 BNE ERROF ODROPU CHMOLG 502114 11,URERM,STAERM 1IF CMD IS NOT A READ OR WRITE THEN: ;REPORT UNRECOVERABLE ERROR. TRAP CS$ERDF GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 014520 014522 014524 2388 014526 2389 014532 gggg 014534 2392 014536 2393 014536 2394 2395 2396 2397 2398 2399 014542 014550 014552 014560 014562 014566 014566 014570 014572 014574 2400 014576 2401 014602 2402 014604 2403 2404 014604 2405 2406 2407 2408 2409 014606 014606 014614 014616 014622 014622 014624 014626 014630 2410 014632 2411 014634 2412 2413 014634 g:{g 014634 2416 2417 2418 2419 2420 2421 2422 2423 2424 g:gz 2427 2428 2429 g:gg 2432 014636 2433 000013 005041 006120 004767 012602 30-NOV-83 10:17 002446 000437 105267 026727 001016 026727 001011 105267 502114: 166660 000002 166702 000020 166702 104455 000016 004556 006120 004767 012602 002376 S02134: 000413 026727 001007 105267 104456 000016 004556 006120 012602 000207 166646 000020 502124 : 166646 502154 : ’ } ' CMDLG, #2 $1IF CMD IS A WRT OR WTM: 502124 RETRYC, #WRECL 1IF RETRY COUNT HAS REACHED LIMIT: 502134 UNREC 1SET UNRECOVERABLE FLAG 14 ,RLEXM,STAERM ;REPORT RETRY LIMIT EXCEEDED. TRAP . WORD CSERDF 14 INCB RUWERR RTLRTN sDROP THE UNIT, RTN ADRS FROM STACK. $AND RETURN, 1SET READ/WRITE ERROR FLAG. .WMORD . WORD PC.OROPY (SP)+,R2 B8R 502144 cHp BNE INCB ERRHRD RETRYC, #RRECL 502154 UNREC 14 ,RLEXM,STAERM MOV (SP)+,R2 1OROP THE UNIT, 1POP 2 RTN ADRS FROM STACK. $tELSE - CMD IS A READ: 1SET UNRECOVERABLE FLAG ;REPORT RECOVERABLE ERROR. TRAP . WORD LWMORD . WORD sPOP 2 RTN ADRS FROM STACK. sRETURN SUBR TO REWRITE A BAD, 8BUT RECOVERABLE WRITTEN RECORD. REWRITE RECORD ON SAME SPOT: REPEAT 4 TIMES. IF ALL 4 REPEATS GOOD, RECORD IS RECOVERED AND A RECOVERABLE HRITE ERROR IS LOGGED. IF ANY OF 4 REPEATS BAD, ERASE BAD RECORD, LOG SUSPECTED BAD SPOT, RETRY AGAIN. RETRY 4 TIMES, UP TO 4 REPEATS EACH. IF RECORD NOT GOOD AFTER 4 RETRIES, ERASE IT, EXIT WITH ERROR FLAG WRTYER SET, PRINTING RETRY FAILED. THIS ALL SCHEME IS REENTERED 20 TIMES MAX, IE 20 BAD SPOTS MAX ARE ALLOWED. INPUTS: OUTPUTS: REGISTERS: WRTY:: BEGIN RETRY CALLS: RLEXM STAERM s1IF RETRY COUNT HAS REACHED LIMIT: PC 3 i ' s tPOP JSR MOV S02144: RTLRTN: RTS 1 ) 3 3 i i : : 11 URERM STAERM PC,DROPU (SP)+,R2 cHe BNE cp BNE INCB ERRDF SEQ 086 . WORD .WORD .WORD JSR MOV B8R 166725 17 R3,.R4 BORERS, REWRT s REPEAT CS$ERHRD 14 RLEXM STAERM MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 30-NOV-83 10:17 2434 014636 2435 2436 2437 014636 2438 014636 2439 014642 2440 014646 014652 014656 50217¢: 004767 105067 004767 105267 126727 001403 105767 001761 105767 S0221¢: 000454 166616 000620 166604 166600 166572 1BEGIN REPEAT JSR JSR INCB cMPB BEQ PC,BORERS WRTYER PC,REWRY RPTCNT RPTCNT .04 502224 BEQ 502214 1578 502224 : 50220¢: 166560 166560 000457 014710 014710 014714 014716 014716 014720 014724 014730 014734 014740 014742 014744 014750 014750 014756 014760 014766 014772 014776 SEQ 087 502234 : 165273 1REPEAT 1BACKSPACE/ERASE ONE RECORD s1CLEAR WRITE RETRY ERROR tREWRITE RECORD ON SAME SPOT tCOUNT REPEATS tLIMIT: 4 REPEATS OR RECOVERED WRTYER 1END REPEAT INC 1ST8 BNE BR RETRYC WRTYER 502234 502164 TST8 ERCVER PRINTB #BTMSG1,RETRYC,<B,RPTCNT> B8EQ 502254 sCOUNT RETRIES 1EXIT RETRY LOOP IF RECOVERED 1IFB ERCVER NE €0 THEN 1PRINT SUSPECTEDCEQD SPOT(SP) 166536 166530 015112 000003 166504 166524 c BNE MOV RETRYC,#1 502264 BTADOR(RS),BTPT ADO MOV c 2 ,R4 R4 ,88TPT R4 ,840. ADD MOV R3.RA RECCNT(RS),(R4) INCB CLR8 CLRS ERSFLG RWERR RPTCNT cp BNE RETRYC, 04 S0217¢ MOV 166510 000050 B8MI MOV 166476 016514 RPTCNT ,(SP) MOV TRAP ADD SP,RO C$PNTB MOV MOV 000010 002616 166520 8IS8 003376 SBTPT.R4 502274 BYTPT,.R3 1ON FIRST RETRY, RETRYC,-(SP) #BTMSGL, -(SP) LOGG BAD SPOT 18TPT IS B0TH THE BAD SPOT COUNTER sAND THE LOGGING INDEX 1IF R4 LOS #40. THEN 1STORE FIRST 20 BAD SPOTS iILET R4 := R4 + R3 tLET (R4) :» RECCNT(RS) f ] 50227¢: 105267 105067 026727 001274 502264; 166477 166435 166424 166416 000004 502244; 502164 : 1END RETRY #10,5P 1ERASE FLAG TO ERASE BAD RECORD sCANCELL “LOGY ERROR FLAG ON FAILING RET 1CLEAR REPEAT COUNT FOR NEXT RETRY tLIMIT: 4 RETRIES MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2483 015046 2484 015052 2485 015054 2486 015060 2487 015062 015062 0135066 015072 015074 015076 2488 2489 015102 2490 2491 015102 2492 015102 2493 2494 015104 2495 015106 2496 015110 2497 2498 015112 015115 015120 015123 015126 015131 015134 015137 015142 015145 015150 015153 015156 015161 015164 015167 015172 015173 2499 015177 015202 015205 015210 015213 015216 015221 015224 015227 015232 015235 015240 015243 015246 015247 015252 015253 015260 015263 105767 001413 105767 001410 166412 012746 012746 010600 104414 062706 015247 000001 30-NOV-83 10:17 7578 8EQ 165127 TST8 BEQ PRINTB SEQ 088 WRTYER 502304 ERCVER 502314 #B8TMSG3 1IFB WRTYER NE #0 THEN 1IF8 ERCVER NE #0 THEN 1PRINT RETRY FAILED MOV MOV MOV #BTMSG3, -(SP) 1,-(SP) SP,RO ADD #4,5P TRAP 000004 CSPNTB 502314 502304 : RTS PC WTYCMD: WTYWRD: WTYBRF : .WORD 0 0 0 BTMSGL: JASCIZ /#ASUSPECT BAD SPOT AFTER #D1sA RETRY, s#D1sA REPEATEN/ BTMSG2: .ASCIZ /#NsSABAD TAPE OVERFLOW: BTMSG3: .ASCIZ /#ARETRY FAILED ON BAD SPOT...ERASED!#N/ 1STORAGE FOR WRITE CMD WHILE RETRYING 1STORAGE FOR WRITE CMDO WORD WHILE RETRYING 1STORAGE FOR WRITE BPCR WHILE RETRYING CHANGE TAPE !%N#N/ MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 015266 015271 015274 015277 015302 015305 015310 015313 117 102 040 117 056 122 105 045 116 101 123 124 056 101 104 116 041 000 .EVEN } SUBR TO BACSPACE ONE RECORD IF THE ERASE FLAG IS SET, THEN ERASE THAT RECORD 3 ' OUTPUTS: REGISTERS: ] : 166100 164770 164762 INPUTS: ERSFLG CALLS: EXCUTE, GOWAIT, CKHAE BORERS : : MOV MOV MOV 8IC MOV MOV 164750 CLR ' 163722 177402 177372 164610 165660 177354 000002 173314 174300 174604 001714 165724 163712 CHMOLG 1SET COMMAND TO SPACE REV sLET CMOWRD := #SRR BLET CMOPKT := CMOWRD CLR 8Y #BRF.C iLET CMOLG := &0 502324 RTS 1 = DO ERASE CMOPKT,CMDSAV sLET CMDSAV := CMOPKT ] ., MTOCP ADL sLET CMOPKTCP.ADL := #1 BEQ JSR JSR JSR CLR8 S502324: O8RF .C,CMOPKT PC.CMDAC PC.EXCUTE . T PC.CKXHAE MOV MOV MOV MOV JSR 166002 165770 164672 165756 CMDWRO , PCMOWD #SRR , CMDWRD CMOWRD , CMDPKT JSR JSR JSR JSR TST8 000207 016767 016767 016767 016767 016767 016767 012767 004767 004767 004767 004767 000207 SEG 089 040 104 120 056 105 123 $ 016767 012767 016767 042767 016767 012767 005067 004767 004767 004767 004767 105767 001426 016767 012767 016767 016767 004767 004767 004767 004767 105067 L7 30-NOV-83 10:17 ERSFLG CHMDWRO , PCMOWD SERS , CMDWRD CMOWRD , CMOPKT COPKT ,CMDSAV +CMDAC PC.EXCUTE PC.GOWALIT PC,CKHAE ERSFLG 3 ' s 1} ] s1WHEN ERASE FLAG IS SET, DO ERASE sLET PCMOWD ILET CMDWRD sLET CMOPKT sLET CMDSAV ' := := := := CMDWRO #ERS CMOWRD CMODPKT ; 3 ; ; ILET ERSFLG :B= #0 PC SUBR TO REWRITE A BADLY WRITTEN RECORD REWRT:: MOV MOV MOV MOV MOV MOV MOV CHMOMWROD , PCMDWD WTYYWRD , CMDWRO WTYCMD , CMOPKT CMOPKT ,CMDSAV tRESTORE WRITE ILET CMOWRD := tLET CMOPKT := ILEY CMDSAV := .2.C'°L5 1LET CMOLG := #2 DATAMT ,CMOPKT +CP . ADL WTYBRF,CMOPKT +CP.CNT JSR JSR PC,CMDAC PC,.EXCUTE RTS PC JSR JSR PC,.GOMAIT PC.CKHAE COMMAND PACKET WTYWRD : WTYCMD ’ CMOPKT ] tLET CMOPKT.CP.ADL := DATAWT 1LET CMOPKT+CP.CNT := WTYBRF tRE-WRITE RECORD ' : M7 GLOBAL AREAS MACRO M1113 30-NOV-83 10:17 GLOBAL SUBROUTINES SECTION 2350 235351 2552 2553 2554 ] i : H 2555 gg‘? 2561 015600 105767 001126 105267 016704 2564 015610 2565 015614 2566 015616 2567 015622 2568 015626 2569 015632 162704 010502 066402 062702 066712 026767 000002 166712 164512 2562 015604 2563 015606 2570 015640 22;;% 015642 2573 015646 005704 001520 101002 2574 015646 Zzg';z 015650 010203 062703 2577 2578 2579 2580 2581 015654 015654 015660 015662 015666 021227 003404 162712 005213 2583 2584 2585 2586 2587 2588 2589 2590 gssgé 015670 015672 015672 015674 015700 015700 015704 015706 015712 REGISTERS: LOG:: TST8B BNE INCB MOV ERLOG 502334 ERLOG SUB MOV ADD ADD ADD cHP 92.R4 tADJUST THE CODE FOR TABLE INDEX. RS.R2 t1R2 = ADR OF BYTE COUNT LSW. BIW(RQ) R2 OCNTBGN, RZ aarcm.(na) sADD BRF TO LSW. MSGPKT +MS .RFC ,BRFCNT zIF THE RFC IS LOWER OR THE SAME AS BRF THEN sSuB MSGPKT +MS.RFC,(R2) MOV ADD R2,R3 €10,R3 010302 062702 021327 003404 162713 005212 000771 2596 015720 010203 062703 2597 015724 2598 015724 2599 015730 2600 015732 %% 015736 021227 003404 162712 005213 2603 015740 2604 015742 000771 2606 015746 001440 2605 015742 165666 165622 016052 002626 165564 164522 105767 165556 BHI 000010 001747 502364 : 001750 S02374: 000010 001747 001750 001747 001750 165521 CMOLG,R4 R4 502344 502354 R2, R3, R4, 1IF DATA AND ERRORS MAVE NOT BEEN LOGGED THEN: 1SET LOG DONE FLAG. 1GET CURRENT CMD LOGGING COOE. 1IF THERE IS A CODE THEN: tSUBTRACT RFC FROM EXPECTED BRF. tR3 = ADR OF 2ND WORD. sWHILE (R2) GT #999. 00 o, (R2),9999. BLE 502374 SUB #1000. ,(R2) 1tUPDATE BYTE COUNT INC (R3) tLET (R3) := (R3) + @1 BR BR MOV ADD BR S0242¢ TST8 RUWERR BEQ ;R2 = ADR OF 3RD WORD. + SRD WORD. 50240 R2,R3 ILET R3S := R2 + #10 ” O R3 502424 : sWHILE (RZ) GY #999. D0 c (R2),9999. BLE 502430 SUB #1000.,(R2) tUPDATE BYTE COUNT INC (R3) tLET (R3) := (R3) + @1 502434 : :2ND WORD. 502364 MOV R3.R2 sLET R2 := R3 + @10 ADD 1t 0 Re 502404 : sWHILE (RS) GT #999. DO ce (R3),#999. BLE 502410 sSuUB €1000. ,(R3) tUPDATE BYTE COUNT INC (R2) iILET (R2) := (R2) + &1 502414 : 000010 CALLS: TST BEQ 502354: 000771 2593 015714 2594 015716 2595 015716 165674 SUBROUTINE TO LOG BYTES READ/WRITTEN. ALSO UPDATES READ/MWRITE ERROR COUNTERS. INPUTS: OUTPUTS:: } : 2558 015566 23559 015572 2560 015574 SEQ 090 502444 iR3 = ADR OF 4TH WORD. ;4TH WORD. 1IF R/M ERROR, UPDATE ERROR COUNT, . 1 MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2607 2608 2609 2610 2611 2612 2613 2614 2613 2616 2617 2618 2619 015750 015732 015756 013762 0135766 015770 015774 010502 066402 062702 103767 001404 062702 003212 013776 000424 0035212 105767 001020 105767 001013 30-NOV-83 10:17 016060 002766 165302 BEQ 50245 ¢ 1R2 = ADR OF COUNTER. ®WRREC,R2 UNREC 1IS ®10,R2 1YES, (R2) 5024614 THE ERROR UNRECOVERABLE? POINT TO NEXT COUNTER. tUPDATE THE ERROR COUNTER ;ELSE - IF ERROR IS RECOVERABLE: INC (R2) sUPDATE THE ERROR COUNTER BNE TST8 BNE S02474¢ OROPED S02504 1IF UNIT HAS NOT BEEN DROPPED: TST8 165506 165430 005422 RS.R2 EINC(R4),R2 INC 164205 016746 012746 012746 010600 104414 062706 MOV ADD ADD 502454; 164165 SEQ 091 ADD 7ST8 000010 103767 001412 N7 TST8 BEQ PRINTB IREC 1 IF ERROR RECOVERY IS ENABLED: ERCVER 502504 #ONURTY1,RETRYC tPRINT @ OF RETRIES TO RECOVER MoV MOV MOV TRAP ADD S0247¢ 502464: 016050 502444 : 016050 502344 ; ol 502334: 016052 016054 BINC: 3 016056 3 016060 016062 016064 EINC: 016066 RTS PC INDEXES TO BYTE COUNTERS. ] 40 105767 165424 IWRITE. sREAD REV. 100 tREAD FWD. INDEXES TO READ/WRITE ERROR COUNTERS. 0 20 IWRITE. 1READ REV. 40 : $ } ' 3 ' : SP,RO CIPNTB #6,SP tPROVIDED PRINT HAS BEEN ENABLED 502504: 016050 RETRYC, -(SP) ONURTYL, -(SP) 1READ FuWD. IF A WRITE/VERIFY COMMAND IS ISSUED, CONTROL IS THEN TRANSFERRED TO THIS SUBROUTINE TO READ REVERSE, CHECK DATA, READ FORWARD, CHECK DATA, THEN CONTINUE TO NEXT COMMAND. INPUTS: OUTPUTS; REGISTERS: CALLS: VFEXC. VFYDAT::TSTB VFYFLG 1IF DATA IS TO BE VERIFIED: MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2638 016072 26359 016074 2660 016102 2661 016110 2662 016116 2663 016122 2664 016130 2665 016136 2666 016144 2667 2668 016150 2669 016150 2670 2671 2672 2673 2674 2675 001426 016767 012767 012767 004767 016767 012767 012767 004767 30-NOV-83 10:17 163320 104401 000004 000030 163272 104001 000006 000002 BEQ MOV MOV MOV JSR MOV MOV MOV JSR 163322 163310 163310 165274 163262 163262 502514 000207 S0251¢ CHOWRD,PCMOND OROR,CMOWRD 64,CHOLG PC.VFEXC CHOMWRD,PCMOMD ORDF ,CHDWRD #6,CHOLG PC.VFEXC RTS PC REGISTERS : CALLS: 016160 016166 016172 016174 016202 2687 016202 016210 016216 2690 016222 016222 016230 016232 016236 016242 016242 016230 016232 016260 016262 016270 016272 016300 016302 016306 016310 016767 042767 105767 001403 052767 165242 004000 163326 164150 164142 010000 164126 016767 016767 005067 164122 1€3174 165212 164114 026767 002062 004767 004767 165164 165164 165170 VFEXC:: : 502524 000640 026327 177777 001442 032767 001421 032765 001014 €32768 001406 CHDURD.CYOPKT @BRF,C.CMOPKT BEQ 8IS S0252¢ Sud.C,CMOPKT MOV DATARD.CMOPKT.CP.ADL MOV CLR 502534 165140 003502 003502 103767 001402 004767 SWBFLC CMOPKT,CMDSAV NONT 30234¢ JSR PCC?W Cfl’ B8EQ 817 8EQ 81Tt BNE 817 8EQ 7ST8 8EQ JSR ODEVTBL(RS ), #END 302364 4100 .CO, C*DWRD 302574 0X0.807,EOTFLG(RS) 502604 OX0.EOT ,EOTFLG(RS) 302614 ALLEOT 302624 PC.VFISV B8R 302634 JSR PC.VFISV JSR 004767 000056 502614 JIF BYTES ARE TO BE SWAPPED: JSET SWAB BIT IN CMD PACKET. SAVE COPPAND PACKET 1ST WORD. SAVE ou’rea START ADORESS. CLEAR NUMBER OF OPERATIONS. 1WHILE THERE ARE RECORDS REMAINING: 1STORE CMD ASCII IN ERROR MSG. 1SET WP roa FIRST UNIT, &VT&(RS) NE #END DO nMILE THERE ARE DEVICES REMAINING: 502624; 000402 |COMMAND PACKET = READ REV OR FUD. ggILE NCNT LT NONT1 DO NCNT ,NCNTL 0GE 302554 ; R2 CMOAC. FIRSTU, VFISU., NEXTU, CKMAE. MY BIC TST8 172626 016314 016314 016316 016316 JRETURN. H QUTPUTS1 2677 016132 JSAVE THE PREVIOUS COMMAND WORD. JCOMMAND IS READ REV. 1SET UP CMD LOGGING INDEX. 1GO READ ALL THE RECORDS REV. JSAVE THE PREVIOUS COMMAND WORD. 1COMMAND IS READ FUD. 1SET UP CMD LOGGING INDEX. 1GO READ ALL RECORDS FWD. SUBROUTINE TO EXECUTE THE READ WD VERIFY, FORMARD OR REVERSE. 2676 2678 2679 2680 2681 2682 2683 2684 2683 SEQ 092 1IF CMD IS REVERSE THEN: 1 IF NOT AT B8OV 18UT IF AT EOT 1AND ALL OTHERS AT EOT 1 THEN READ VERIFY s IF NOT ALL AT EOT, FREEZE UNIT(S) 1IF NOT AT BOT AND tNOT AT EOT, READ VFY — GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 27135 016322 2716 2717 016322 2718 016322 2719 2720 2721 2722 016324 016324 016332 016334 2723 016342 2724 016344 2725 g;gg 016344 2728 016350 2729 2730 016330 —— - et 032765 001404 032767 001002 004767 000732 2735 016356 2736 016362 g;g; 016366 004767 005267 016767 2739 016374 000712 g;:% 016376 000207 502604: 000001 003502 000001 165056 502574 ; 502654 : 000030 502644: 000574 001116 165024 165026 502564: 165030 502544 2743 : 2744 8 502644 817 BEQ 8Iv #X0.EOY,EOTFLG(RS) 502654 #CMD.CO, CMOWRD JSR PC.VFISU JSR PC . NEXTU B8R 502355+ JSR INC MOV PC,CKHAE NCNT CMOWRD , PCMOWD B8R 502534 RTS PC BNE 1GO FIND THE NEXT UNIT, 1CHECK FOR HALT AFTER EACH CMD. 1tUPDATE THE RECORD COUNT, $tSAVE PREVIOUS COMMAND WORD. tRETURN, SUBROUTINE TO ISSUE COMMAND, OUTPUTS; g;“g ' CALLS: s 2747 ' 016400 016404 016410 016410 016414 016702 062702 165004 000010 020267 001403 164774 2737 016422 2738 016424 000772 012742 173424 165066 2765 016442 2766 016446 105767 001006 165054 g;gg 016460 004767 2771 016464 032765 001002 INPUTS: REGISTERS: MOV 502704 : 173722 000002 AWAIT INTERRUPT, R2 EXCUTE, GOMAIT, CXDATA. VFISU:: MOV DATARD ,R2 tINIT READ BUFFER POINTER. ADO #8.,.R2 50267¢: tWHILE R2 NE DATARD DO tUNTIL 8 BYTES HAVE BEEN SET, cp R2,0ATARD 8EQ 302704 177777 004767 1035767 001002 004767 2767 016430 2768 0164356 - ————r e a. +IF NOT AT EOT OR NOT A MOTION CMD THEN: 1 ISSUE CMD, CHECK STATUS AND DATA. ' 274S 2764 016442 . 3502664 2746 016424 016430 016434 016436 ——— — 1ELSE IF CMO IS NOT REVERSE: CHMECK STATUS, CHECKX DATA. 2739 2760 2761 g;:g —— SEQ 093 ' g% 016416 e 502664: 2733 016354 2730 2751 2732 2753 2734 m——— e 30-NOV-83 10:17 000412 004767 2749 016376 — 502634 : g;g 016350 2734 016336 ———— 50271¢: 003502 000002 50273 -1,-(R2) 1t INIT READ BUFFER. 50267¢ JSR 1ST8 BNE JSR PC,EXCUTE DROPED 302714 PC.GOWAIT 160 EXECUTE THE COMMAND. $IF UNIT HAS NOT BEEN DROPPED THEN: 1S78 BNE 8Iv BNE JSR OROPED 302724 s IF UNIT HAS NOT BEEN OROPPED THEN: 1GO WAIT FOR DONE BIT. #X0.80Y,EOTFLG(RS) tWHEN NOT REVERSED INTO B80T, 502734 PC,CKDATA 1GO VERIFY DATA, THEN GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 277 2773 016464 2774 016464 D8 30-NOV-83 10:17 502724 000207 6 RTS SEQ 094 PC 27717 ' SUBROUTINE TO COMPARE DATA BETWEEN READ AND WRITE BUFFERS 2780 2781 b ' OUTPUTS: REGISTERS: 2778 2179 ' ' g;g ' 2784 016466 2785 016472 016703 166703 2787 016500 001015 2786 016476 2788 016502 016302 005703 000021 004430 003752 2790 2791 2792 2793 2794 000560 016332 016534 016334 016540 016542 016342 016344 016546 016530 2795 0165352 0165352 016356 016562 016366 016370 016572 2796 2797 2798 2799 2800 2801 2602 2603 2804 2805 2606 016576 016600 016600 016604 016610 016614 016616 016622 016626 016632 2807 016634 2608 2809 016636 012746 012746 010600 104414 062706 020367 101417 CALLS: CKDATA: : MOV SuUB 7ST PRINTB 000004 164656 502744 : cp 8LOS 010367 005367 005067 003002 016703 016704 105767 001401 17,,WTVERM,DTAERM @DTAER4 502764 164564 164562 164671 B8R 30277¢ MOV DEC CLR CLR MOV v TS1C RS, CKDCNT CXDCNT CKDFF R2 DATAWT ,R3 DATARD R4 T15W8 303004 8EQ 000313 SWAB 503004 : (R3) TRAP CIERHRO MOV MOV MOV TRAP ADOD S0TAER4, -(SP) 01, -(SP) SP,.RO CIPNTB *4,5P .MORD .MORD .WORD 1 COMPARE ROUTINE RS,BRFCNT 302764 ERRMRD 17,,WTVERM,DTAERM 000006 000272 000266 000264 tPRINT ERROR AND EXIT PRINTB QOTAERS,CMOPKTCP.CNT 163560 005360 000002 000536 sWHEN NO DATA RECEIVED 502744 50275¢ 104436 000021 004430 005732 016746 012746 012746 010600 104414 062706 1COMPUTE REC LENGTH READ R3 ERRHRD 005337 000001 R2, R3, R4. GCMDA BRFCNT ,R3 MSGPKT +MS.RFC,R3 BNE 104436 016504 016306 016310 2789 016312 016512 016516 016322 0163524 016526 164724 163662 AND PRINT ERROR MESSAGE ON MISCOMPARE. INPUTS: 17 WTVERM DTAERM 1WHEN REC READ IS LONGER 1 THAN EXPECTED, PRINT TRAP LMORD .WORD . 1AN ERROR MESSAGE MOV MOV MOV MOV TRAP ADD tAND EXIT ROUTINE 1SAVE VERIFICATION LENGTH - CSERHROD 17 WTYVERM OTAERM CMOPKT+CP.CNT, OOTAERS, -(SP) 02,-(SP) SP,RO CSPNTB 06,SP 1. tCLEAR ¢ OF BYTES IN ERROR COUNTER. tINIT BYTE COUNTER 1GET WRITE BUFFER ADORESS. 1GET READ BUFFER ADDRESS. 1WHEN RUNNING TEST1-SUB 12, 1SWAP FIRST WORD OF WRT BFR tWHICH CONTAINS THE RECORD COUNT ’ -(SP) MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2810 26811 016636 2812 016636 2813 016642 2814 016644 2815 016650 2816 016632 016660 016662 016664 020267 001011 105767 001406 032767 001002 105723 30-NOV-83 10:17 5030164: 000234 164630 000001 000216 S03044: 016666 50303%; 017016 017020 017022 017024 017030 017032 017036 017042 017044 017044 005767 001010 503024 : 003346 003356 177400 164476 177400 000124 136716 010246 012746 012746 010600 104415 062706 8I7 BNE #81700,CKOCNT 503044 1+ IF RECORD LENGTH IS ODD THEN: CP8 28: sIF BYTE SWAPPING IS ENABLED THEN: S0303+¢ (R3). (R4). sLAST BYTE WILL BE IN s THE UPPER BYTE. (R3),(R4) 3¢ CKOFF 24 VFYCNT(RS) HROCNT(RS) 164500 18R IF SO. 11 ST TIME THRU? tBR IF NOT, s$INC THE VERIFY ERROR COUNTER. s INC THE HARD ERROR COUNT. tREPORT WRITE/VERIFY ERROR. TRAP CXDFF ;LET CKDFF := CKOFF « @1 8I1IC 9177400, TIMEL MOV8 MOV8B 8IC 164470 000013 tARE THEY EQUAL. INC 8GE PRINTX (R3),TIMER 9177400, TIME2 1SAVE SHOULD BE DATA FOR TYPOUT. 1CLEAR GARBAGE. CKDFF ,011. 503054 +IF ERROR BYTE COUNT IS LESS THAN 11: @DTAER2,R2,<B,TIMEL1>,<B,TIME2>;PRINT ACTUAL & EX&PEETED oAIgP) 003226 000040 000036 016746 000026 QOTAER2, -(SP) MOV TRAP SP,RO CSPNTX 7ST8 (R3). tUPDATE WRITE BUFFER ADORESS. 1578 (R2)e tUPDATE BYTE COUNTER, (R4).» crP BLE INC R2,CKOCNT 503014 CKDCNT B8EQ S0306¢ 157 PRINTB CKOFF @ODTAER3,CKOFF ,CKDCNT TIME2,(SP) -(SP) TIMEL,(SP) R2,-(SP) MOV ADD S0305¢; 7578 17 WTVERM OTAERM 1CLEAR GARBAGE. 8158 CLR 8IS8 MOV 34: CIERHRD s INCREMENY & OF BYTES IN ERROR. tSAVE WAS DATA FOR TYPOUT. 164442 000012 .MORD .WORD .WORD (R4),TIMEL 164432 103723 105724 105722 020267 003702 003267 003767 001414 1 IF THIS IS THE LAST BYTE THEN: ERRHRD 17 ,WTVERM,DTAERM 000154 005046 136716 003046 R2,CKOCNT 503024 SWBFLG 8EQ TS7 BNE INC INC 000202 tREPEAT UNTIL ALL DATA IS COMPARED: cHpP BNE TST8 1ST8 TST8 105724 121314 001432 1REPEAT 8EQ 016666 016666 016666 016670 016672 016676 016700 016704 016710 016710 016712 016714 016716 2833 016720 016724 2835 016730 2836 016736 2837 016742 2838 016730 2839 016756 2840 016760 016760 016762 016766 016770 016774 016776 017002 017006 017010 017012 017016 SEQ 095 2,sp tUPDATE READ BUFFER ADODRESS. 1END OF DATA COMPARE REPEAT LOOP. 1CKDCNT EQUALS RECORD LENGTH. 1IF COMPARE ERROR HAS OCCURED THEN: tPRINT & OF BYTES IN ERROR. MOV CKDCNT, -(SP) GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 017050 017054 017060 017064 017066 2852 017070 016746 012746 012746 010600 104414 062706 28353 017074 2854 2835 017074 2856 2837 017074 gggg 017074 000207 2860 017076 gggé 017100 000000 000000 30-NOV-83 10:17 000024 00352735 000003 MOV MOV MOV MOV TRAP 000010 ADD 2872 2873 2874 2873 502754 105067 005005 026527 001003 062705 000771 2876 017126 026527 2879 017136 104444 2880 017140 2881 017140 gggg 017146 016567 000207 2877 017134 2878 017136 001001 164414 002604 177774 002604 002604 177777 162726 gggg CKDCNT: CKOFF: .WORD .WORD O O 14 OF BYTES TO BE VERIFIED -1. 1® OF BYTES IN ERROR COUNTER. ] ' : : SUBROUTINE TO FIND THE FIRST DEVICE IN THE TEST SEQUENCE. INPUTS, OUTPUTS: REGISTERS: 50310¢: 017154 017154 017160 017166 017170 017176 105067 062705 026527 001772 016567 000207 164346 177774 002604 162676 BNE ADD B8R cP MOV RTS DROPED 1CLR UNIT DROPPED FLAG RS DEVTBL(RS), ONINUSE 503104 02,RS 503074 1CLR DEVICE POINTER. tWHILE DEVICES ARE NOT IN USE: tLET RS := R5 + @2 DEVTBL(RS), #END 503114 1POINT TO NEXT DEVICE. 1IF ALL UNITS HAVE BEEN DROPPED THEN: 100 CLEAN CODE AND TERMINATE PASS. TRAP DEVTBL(RS),LSLUN PC SUBROUTINE TO FIND THE NEXT UNIT IN THE TEST CYCLE. INPUTS: OUTPUTS; REGISTERS: NEXTU:: CLRB OROPED 1CLR UNIT DROPPED FLAG ADD cHP BEQ MOV RTS 02 ,R3 DEVTBL(RS), NINUSE 503124 DEVTBL(RS),LILUN PC tUPDATE DEVICE TABLE POINTER. tUNTIL DEVTBL(RS) NE ONINUSE $ C$OCLN tSET UNIT & IN “HEADER” FOR ERROR REPORT tRETURN WITH 1ST DEVICE IN RS. : : ' ' 50312¢: 000002 002604 CLRB BNE OOCLN 50311¢4: RETURN. CALLS: CLR 503074: CMP ’ 2891 017150 2901 1OTHERWISE, 000002 2885 2886 2887 2888 2893 2894 2895 2896 2897 2898 2899 2900 PC FIRSTU:: 2884 2892 RTS ' 017116 017120 017124 017126 #10,5P 50277%: gg; 2870 017106 2871 017110 CKDFF, -(SP) QOTAER3, -(SP) 3, -(SP) SP,RO CSIPNTB 50306¢: 2863 2864 2865 2866 2869 017102 SEQ 096 CALLS: tREPEAT tREPEAT UNTIL THE NEXT DEVICE IS FOUND. 1SET UNIT @ IN “HEADER“ FOR ERROR REPORT tRETURN, SUBROUTINE TO DROP A DEVICE FROM THE TEST SEQUENCE. MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 2902 2903 2904 2905 2906 2907 2908 2909 2910 el 2912 2913 2914 2913 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 30-NOV-83 68 10:17 SEQ 097 INPUTS QUTPUTS; REGISTERS: CALLS: 017200 017204 017210 017214 017220 017222 017222 017226 017230 017234 005263 016704 042704 016503 005002 003366 163160 000377 002544 020227 001405 012723 062702 000020 017240 017242 017242 017250 017254 017260 017264 017266 017266 017270 017272 017274 000770 017276 017300 017300 017304 017304 017310 017312 017316 017322 017322 017322 017324 017330 017332 017336 017336 017344 017350 017350 017352 017360 017362 017366 012775 004767 004767 020427 001005 OROPU: : 50313¢: 177777 000002 002340 173424 173454 157400 002514 S50314¢: PRXST, INC FTLCNT(RS) MOV CLR MSGPKA(R5),R3 R2 iLET R2 cHP BEQ MOV ADD R2, MMSGCNT 503144 #-1,(R3). #2,R2 1ILET R2 B8R 503134 ggg MOV 1GET UDIAG ERROR COOE FROM XSTATS, ;ADR OF THIS UNIT'S MSG PACKET. := #0 1CLR COUNTER. 000106 105767 001404 105267 004767 164155 50315¢: 503164 : 164204 176244 OGSCPK,8TSDB(RS) sINITIATE A GET STATUS COMMAND. PC,MOVMSG ggszgiRNY sMOVE MSG PACKET TO COMMON AREA. 1IF WE HAVE A CAPSTAN RUNAKWAY THEN: ERROF 16,RNYM,STAERM B8R 503164 JSR PC.PRXST tPRINT EXTENDED STATUS REGISTERS. 1578 8EQ INCS RECLOG S50317¢ DROPED +IF THE RECORD HAS BEEN LOGGED THEN: JSR S503174: 104424 005765 001402 005365 016767 016700 003326 OROPUA: 003326 50320¢: 164172 164164 104451 026527 001410 105767 001005 s INIT THE MSG PACKET WITH ALL 1'S := R2 +» #2 tUPDATE COUNTER. PC,.WSSR 004753 006120 004767 tWHILE THERE ARE MORE LOCATIONS: JSR 000020 000402 LOG s INCREMENT THE FATAL ERROR COUNT. :gggK;;HS.XSS.R4 tWHILE R2 NE #MSGCNT DO JSR g;: 104455 MOVMSG, PC,.LOG DORPT TST 8EQ OtC MOV MOV oo0V sWAIT A WHILE FOR SSRel tREPORT CAPSTAN RUNAWAY WITH TACH CNT. TRAP CS$ERDF .WORD 16 RNYM .WORD STAERM .WORD 1ELSE-IF NOT A RUNNAMWAY: 1SET UNIT DROPPED FLAG. 1LOG DATA BYTES ¢ RD/MR ERRORS. tPRINT PERFORMANCE REPORT PASCNT(RS) 503204 PASCNT(RS) TSNP ,OROPN TSNP ,RO RO TRAP s IF PASCNT(RS) NE €0 THEN tLET PASCNT(RS) CSORPT := PASCNT(RS) - @1 $1SAVE @ OF UNIT TO BE DROPPED. 1RO=LOGICAL DEVICE NUMBER tDROP THE UNIT TRAP C$000V 1EXEC BGNDU-ENDOVU CODE IF IOV = O 002604 162625 177774 cHP 8EQ 1578 BNE DEVTBL(RS ), ONINUSE 503214 IREC 503224 s IF UNIT NOT ODROPPED 1 IF RECOVERY IS ENABLED THEN: MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTIN-S SECTION 30-NOV-83 H8 10:17 SEQ 098 2953 017370 2954 017372 2955 017374 2956 017376 2957 2958 017402 2959 2960 017402 2961 017402 2962 017406 2963 2964 017410 2965 2966 2967 2968 2969 2970 2971 2972 017412 017412 017416 017422 017424 017426 2973 017432 000240 000240 000240 105267 012746 012746 010600 104415 062706 005507 017432 017436 016746 016746 016746 016746 016746 162734 162726 162720 162712 162704 006753 MOV MOV MOV MOV MOV MOV MSGPKT+MS . XS4, -(SP) MSGPKT+MS . XS3, -(SP) MSGPKT +MS . XS2, -(SP) MSGPKT+MS.XS1, -(SP) MSGPKT +MS. XSO, -(SP) #STAERS, -(SP) 000016 MOV TRAP ADD SP,.RO CSPNTX €16,5P 017442 017446 017452 017456 017462 017466 017470 017472 017476 164124 INCB STAFLG tSET START FLAG TO ENABLE REWIND, INC8 RTS DROPED PC 1SET UNIT DROPPED FLAG. tRETURN, .MORD O 1# OF UNIT YO BE DROPPED 503224 105267 000207 164114 503214 ORORTN: DROPN: SUBROUTINE TO PRINT EXTENDED STATUS REGISTERS, INPUTS; OUTPUTS: REGISTERS: CALLS: 012746 012746 010600 1044135 062706 000207 PRXST: PRINTX OGETSTM 000001 PRINTX MOV OGETSTM, -(SP) MOV SP,.RO TRAP CHPNTX ADD o4,5P @STAERS ,MSGPKT +MS.XSO,MSGPKT +MS . XS1,MSGPKT +MS . X52,MSGPKT +MS . XS3,MSGPKT +MS . XS RTS PC SUBROUTINE TO HALT AFTER EACH COMMAND. INPUTS: OUTPUTS R3, R4 REGISTERS: CALLS: 017500 017504 017506 017512 0173514 017514 017516 017516 017520 017524 017530 017534 017540 105767 001430 105767 001023 162502 164017 : CKHAE: TST8 8EQ 1ST8 B8NE 104450 103023 016704 004767 112367 112367 111367 HAE;IFB HAE NE 0 THEN 1IF HALT FLAG IS SET: 503234 MISCFG 1IFB MISCFG EQ €0 THEN s 503244 MANUAL BNCOMPLETE CKHRTN 163674 171406 164552 164547 164544 + IS MANUAL INTERVENTION ALLOWED? TRAP CSMANI 18R IF NOT. 8cC CKHRTN MOV CHOURO , R4 1LET R4 := CMOWRD MOv8e MOvB8 (R3)¢ ,HALTM.} (R3) ,HALTM.2 tLET HALTM+1 :8° (R3). 1 INTO MESSAGE. JSR PC,GCMOA MOVE (R3)+ ,HALTH IFETCH ADR OF CMD ASCII. 1MOVE CMD ASCII 1COMMAND WORD. MACRO M1113 GLOBAL AREAS GLOBAL SUBROUTINES SECTION 30-NOV-83 10:17 GMANIL HALTM,TIME1,1,YES IR 3 3 017544 017544 017546 017550 017552 017554 017556 017560 017560 18 017560 017562 017562 104443 000404 003436 000130 004306 000001 tHALT - WAIT FOR AN OEPRATOR INPUT, TRAP B8R .WORD .WORD LWMORD . WORD 100004 ; C$GMAN 100004 TIMEL T4CODE HALTM 1 100004 : 000402 105067 5032414 : 163743 BR 503254 CLRB MISCFG sLET MISCFG :B~ @0 Fl 503254 : 017566 017566 017566 SEQ 099 50523%: 000207 CKHRTN: RTS .EVEN 017570 PC 1RETURN ENDMOD .TITLE MISCELLANEQUS SECTIONS .SBTTL REPORT CODING SECTION goe 3 THE REPORT CODING SECTION CONTAINS THE 1 “PRINTS” CALLS THAT GENERATE STATISTICAL REPORTS. ' 0173570 017570 0173570 017574 017600 22 017600 017606 017610 017610 017614 017620 017624 017630 017634 017636 017640 017644 017644 017650 017654 017660 017664 017670 017674 017676 010567 004767 163656 177302 026527 001562 002604 016546 016546 016546 012746 012746 003376 003326 002604 020432 000004 062706 000012 016546 016546 016546 0163546 012746 002626 002636 002646 002656 020507 010600 104416 012746 010600 104416 000005 - o LSRPT: 177777 S0326¢: BGNRPY MOV JSR RS .RSSAVE PC.FIRSTU cp BEQ DEVTIBL(RS), #END 50327 ;WHILE DEVTBL(RS) NE #END DO PRINTS 1 SAVE CURRENT DEVICE POINTER, 1FIND THE FIRST UNIT. 1WHILE THERE ARE MORE OEVICES: #RPT1A,DEVTBL(RS),PASCNT(RS) ,RECCNT(RS) MOV MOV MOV MOV MOY RECCNT(RS),-(SP) PASTNT(RS),-(SP) DEVTIBL(RS), -(SP) MPT1LA, -(SP) oTM, -(SP) ADD #12,SP MOV TRAP PRINTS SP,RO CS$PNTS ORPT18,WRBC+30(RS),WRBC +20(RS),WRBC+10(RS) ,WRBC(RS) MOV MOV MoV MoV MOV WRBC(RS), -(SP) WRBC+10(RS), -(SP) WRBC +20(R5), -(SP) WRBC +30(RS), -(SP) #RPT18B,-(SP) MOV TRAP RO CSPNTS MOV 5,-(SP) MISCELLANEOUS SECTIONS REPORT CODING SECTION 017700 3026 017704 017704 017710 017714 017720 017724 017730 017734 017736 017740 3027 017744 017744 017750 017754 017760 017764 017770 017774 017776 020000 3028 020004 020004 020010 020014 020020 MACRO M1113 062706 000014 016546 016546 0163546 016546 012746 012746 010600 104416 062706 002666 002676 002706 002716 30-NOV-83 10:17 000005 MOV TRAP MOV PRINTS 000012 7ST8 8EQ 000056 ORP i 1G,WRUNR(RS ) ,RRUNR(RS) ,RFUNR(RS) 1IFB BADTSW NE €0 THEN BADTSW 503304 JSR PC,BTRPT 1GO PRINT BAD TAPE SPOTS WHEN MOV MOV MOV MOV RFREC(RS), -(SP) RRREC(RS), -(SP) WRREC(RS), -(SP) #RPTLF, -(SP) TRAP CIPNTS MOV MOV RFUNR(RS), -(SP) RRUNR(RS), -(SP) MOV #RPT1G, ADD MOV TRAP ADD B8R 12,5P WRUNR(RS ), -(SP) -(SP) +RO C$PNTS €n2,sP $ ENABLED MO MOV MOV MOV VFYCNT(RS), -(SP) FTLCNT(RS), -(SP) HRDCNT(RS), -(SP) SCCNT(RS), -(SP) MOV TRAP ADO SP,.RO CS$PNTS #14,5P MOV JSR RO C4PNTS 014,5P ORPTII.SCCNT(RS).HRDCNT(RS).FTLCNT(RS).VFYSNT(RS) PRINTS 000014 176776 SP,RO CSPNTS TRAP ADD MOV 000012 162110 003346 003366 003356 003336 021203 000005 ORPT1F ,WRREC(RS),RRREC(RS) ,RFREC(RS) PRINTS 003036 003016 002776 021006 RRBC+30(RS), -(SP) ADD €14,SP ORPT1D,RFBC+30(RS5),RFBC+20(RS),RFBC+10(RS),RFBC(RS) MOV RFBC(R3), -(SP) MOV RFBC+10(RS), -(SP) MOV RFBC+20(RS), -(SP) MOV RFBC+30(RS), -(SP) PRINTS 503304 : 020142 3036 020146 3037 3038 020152 ADD 014,5P ORPTIC.RRBCOSO(RS).RRBC02O(R5).RRBC»IO(RS)QRRBC( RS) MO RRBC(RS), -(SP) MOV RRBC+10(RS), -(SP) MOV RRBC+20CR5), -(SP) MOV 016546 016546 016546 012746 012746 016546 016346 016546 012746 012746 010600 104416 062706 103767 001402 004767 SEQ 100 PRINTS 016546 016346 016546 016346 012746 012746 010600 104416 062706 010600 104416 062706 J8 PC,NEXTV 503264 tFIND THE NEXT UNIT, ORPTLI, -(SP) MISCELLANEQUS SECTIONS REPORT CODING SECTION 3039 020154 3040 020154 3041 020160 020160 020162 016705 MACRO M1113 I<8 30-NOV-83 10:17 503274 163272 000167 001130 MOV EXIT SEQ 101 RSSAVE,R5 RPT $RESTORE CURRENT DEVICE POINTER. . WORD . WORD JEoMP L10010-2-. SUBR TO PRINT BAD TAPES SPOTS DURING THE REPORT PRINTS WRITE RETRIES: CUMUALATIVE COUNT BAD TAPE SPOTS: COUNT PER TAPE PASS ONLY, NOT CUMULATIVE. COUNT OF RECOVERABLE WRITE ERRORS EXCLUDES BAD TAPE SPOTS. 3049 3051 3052 020224 016546 012746 012746 010600 104416 003316 021057 000002 016567 017703 002616 010346 012746 BTRPT: : PRINTS @RPT1E,WRTYCT(RS) tPRINT GLOBAL WRITE RETRY COUNT MOV MOV MOV MOV TRAP 163270 163274 MOV BTADDR(RS),BTPT PRINTS ORPT1J,R3 ;lgx ARDD gTPT.RS R3 000024 ce 8LOS MOV R3,#20. 503324 420, ,R3 000024 503324 : 005744 000001 1PRINT @ OF BAD TAPE SPOTS 1IF R3 HI #20. THEN S03334: 120 BAD SPOTS IS THE LIMIT SCRLFSP : MOV 020227 001014 000002 000012 OCRLFSP, -(SP) SP,RO TRAP CSPNTS MOV MOV MRPTIK, -(SP) 2, -(SP) ADO o4,5P MOV BTPT,R4 tLET R4 := BTPT + #2 ;FETCH A BAD SPOT ID #2,R4 ADD CLR R2 1R2 = PRINT COUNT PER LINE: 10 MAX tREPEAT ' PRINTS #RPT1K,(RA) 1PRINT A BAD SPOT ID 021174 000002 000006 ] MOV 163202 000002 MRPT1Y, -(SP) 02, -(SP) SP,RO TRAP CSPNTS ADD #6,5P 1PRINT RECORD & IF BAD SPOTS DETECTED S03314¢ PRINTS #6,SP tAND THE LOGGING INDEX MOV MOV MOV ST CSPNTS 18TPT IS BOTH THE BAD TAPE SPOT COUNTER 021107 000002 B8EQ WRTYCT(RS),-(SP) #RPT1E, -(SP) 2, -(SP) SP,RO MOV TRAP INC R2 tLET R2 cHP BNE R2,810. 503344 1IF R2 EQ €10, ADD #2,.R4 PRINTS @CRLFSP := R2 ¢+ €1 ILET R4 := R4 + #2 THEN ;COUNT PRINTS SP,RO CSPNTS #6,SP NEXT 1GO TO NEXT PRINT LINE PAST 10 PRINTS MISCELLANEOUS SECTIONS REPORT COOING SECTION 020354 020360 020364 020366 020370 3071 020374 3072 020400 3073 3074 020404 3075 020404 3076 020406 3077 3078 020410 3079 020410 020410 020414 020420 020422 020424 020430 012746 012746 MOV MOV SUB Su8 50334¢: S0331$: 005741 000001 000004 116 101 101 101 123 101 101 101 116 104 101 123 020631 020701 020735 021006 021057 021107 021174 021203 021257 104425 SEQ@ 102 005744 000001 000012 000012 012746 012746 010600 104416 062706 000207 L8 30-NOV-83 10:17 000004 020432 020507 020560 021314 021314 021314 MACRO M1113 #10.,R3 #10.,R2 tLET RY tLET R2 := R3 - #10. := R2 - #10. RPT1A: RPT18: RPT1C: RPT1D0: RPT1F: RPT1G: RPT1E: RPT1J: RPTIK: RPT1I: L10010: .SBTTL SP,RO CS$PNTS 04,SP MOV TRAP ADO $ADJUST BAD SPOT COUNT $ADJUST PRINT COUNT L cMP BNE R2,R3 503334 tUNTIL R2 EQ R3 sLIMIT: & OF BAD SPOTS ' PRINTS 4#CRLF ’ MOV MOV MOV NLIST .ASCIZ .ASCIZ .ASCIZ .ASCII ASCIZ _ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCII ASCIZ .LIST .EVEN OCRLF, -(SP) €1,-(SP) SP,RO CSPNTS #4,5P TRAP L RTS PC 045 102 102 102 062 122 125 127 045 065 123 063 #CRLFSP, -(SP) 1,-(SP) BEX /#NeNSAUNIT #D1#S38APASS :#DS5#S3SARECORD : sDS8N/ /#ABYTES WRITTEN #D3IsA,6Z36A, 8Z36A, $238N/ /#ABYTES READ REV #D3sA,s8Z3sA,8238A, 8Z38N/ /#ABYTES READ FUWD iDS‘A.lZS‘A.iZSiA.SZS‘N/ /4S235AMNR THSASARDRESASAROF N/ /«ARECOVERABLE ERRORS #D3#S2wD54S24DS54N/ /sAUNRECOVERABLE ERRORS #05#S24DS8S28D54N/ /#AWRITE RETRIES#SOsDSHN/ /#NsD2¥A BAD SPOTS THIS TAPE PASS PRECEDING RECORD #:/ /#D3S1/ “#ASPEC CONDS3SAHAROSS3SAFATAL #S3%ACOMPARESN" /%S3uDSuS3uDI8S I5056SINDSHNEN/ BEX ENDRPT TRAP CSRPT LOAD DEVICE PROTECTION TABLE g 1 TABLE FOR SUPERVISOR TO IDENTIFY THE P-TBL FOR THE LOAD DEV s+ THE SUPERVISOR USES THE TBL TO WARN THE OPERATOR WHEN HE TRIES TO TEST THE LOAD DEV '-- 021316 021316 021316 021320 021322 LSPROT: ; 000000 BGNPROT .WORD O .WORD -1 .WORD -1 177777 177777 021324 ENDPROT .SBTTL INITIALIZE SECTION 1P-TBL OFFSEY OF TSD8 1P-TBL OFFSET OF MASS BUS UNIT @: -1 1P-TBL OFFSET OF DRIVE €: -1 = NONE, = NOT A MASS 8US DE THREE DRIVES PER CONTRO MISCELLANEOUS SECTIONS INITIALIZE SECTION MACRO M1113 30-NOV-83 M8 10:17 SEQ 103 3115 3116 3117 3118 3119 3120 3121 jee + THE INITIALIZE SECTION CONTAINS THE COODING THAT IS PERFORMED i AT THE BEGINNING OF EACH PASS. ‘-- LSINIT:: 3122 3123 3124 3125 000003 3126 002330 INIT10: 000310 BGNINIT BIT #BITO!BIT1, #CMOPKT 8EQ 503354 ERRSF 1,CMOPKM ;IF CMD PACKET IS NOT ON MODULO 4 BOUNDRY: 1PRINT ERROR MSG, DELAY 200. 1GO TO SUPERVISOR, B8R INIT10 3 TST8 CLRFLG 1IF CLR COUNTERS FLAG SET: 160540 177772 177756 000753 TRAP . WORD .WORD .WORD CSERSF 1 CMDPKM O WAIT 2 SECONDS. MOV #200.,(PC)» .WMORD O L$OLY,(PC)» MOV WORD O DEC -6(PC) .-4 BNE DEC -22(PC) BNE .-20 503354 : 105767 160602 105067 160574 020227 001405 000550 001413 062702 B8EQ S0337¢: 002626 000002 000770 503404: 503364 CLR8 CLRFLG CLR Re sLET R2 jWHILE R2 NE #CNTLEN 00 cP R2, #CNTLEN $03404 BEQ CLR WRBC(R2) := #0 sINIT CLR FLAG. sCLR ALL STATISTICAL COUNTERS. tLET R2 := R2 + @2 ADD 2 ,.R2 B8R 503374 7ST8 RRANY MOV S®RANBC ,RANB sRESET RANDOM BASE #. MOV S#RANSC , RANS tRESET RANDOM SAVE LOCATION. READEF @#EF .START 503364 105767 001406 012767 160547 153624 161764 012767 032561 161760 BEQ 503414 012700 104447 103057 105267 BNCOMPLETE 162036 INCB 1IF RESET RANDOM VARIABLE FLAG IS SET THEN: 503414 STAFLG INIT1S 1READ START COMMAND EVENT FLAG. tBRANCH IF NOT STARTING. 1SET START COMMAND FLAG. MOV TRAP #€EF .START RO CSREFG 8ccC INIT1S MISCELLANEOUS SECTIONS INITIALIZE SECTION MACRO M1113 3156 021470 012705 000006 3138 021474 3159 021502 012765 162705 177774 000002 3161 021510 3162 021512 3163 0213520 001371 022767 001425 31357 021474 3160 021506 3164 021322 0213522 021526 021532 021334 021336 3165 021542 021342 021546 021550 021554 021336 021562 021564 021570 3166 021572 021572 3167 021574 3168 3169 3170 3171 3172 3173 021600 021602 021602 021606 021612 021616 g{;g 021620 3176 021622 021622 021626 3177 021630 021630 3178 021632 gizg 021636 3181 021642 021642 021644 3182 021650 3183 021652 3184 021636 3185 021660 021660 021664 3186 021666 3187 021670 3188 021674 3189 021676 021676 021702 005705 000001 012746 012746 010600 104417 062706 005146 000001 012727 000000 016727 000000 005367 001375 005367 001367 000025 104444 016705 006305 002604 50342¢: PRINTF t INITIATE UNIT NUMBER TABLE tUNTIL RS EQ #0 503424 01 ,LSUNIT 50344 1ONLY ONE UNIT ALLOWED 10K @AUDRUN s TELL THE MAN v DELAY 25 tWALT 177772 177756 OOCLN 160212 012700 104447 000034 MOV LSUNIT,RS ASL RS S0343¢: ;REPEAT SuUB MOV ASR TST BNE INIT1S: 161670 161665 INIT16: 161666 161651 012700 104447 103014 105767 001010 000035 012700 104447 000037 161632 tABORT S034¢: 001370 104421 010067 005003 105767 001020 ONINUSE,DEVTBL(RS) 18Y STORING NOT IN USE IN EACH LOCATION. #2,RS tLET RS := RS - @2 160342 000002 002604 002604 105267 MOV SUB RS JLET RS := #6 104 ®,RS ;REPEAT TST 160272 SEQ MOV BNE cMP BEQ 000004 162705 010565 006265 005705 103004 105267 N8 30-NOV-83 10:17 tLET RS := LSUNIT SHIFT 1 MOV MOV MOV TRAP ADD SAUDRUN, -(SP) o1,-(SP) SP,RO CSPNTF o4,SP MOV .WORD MOV .WORD 0EC BNE 0OEC BNE 025,(PC)» O LSOLY,(PC)» O TRAP CSOCLN 1STORE ALL UNIT #2,RS iILET RS :=» RS - @2 1 NUMBERS IN DEVTBL. RS,0EVTBL(RS) iLET DEVTBL(RS) := RS SHIFT -1 DEVTBL(RS) RS tUNTIL RS EQ #0 S0343¢ READEF @EF.PWR tHAS THERE BE A POWER FAILURE? BNCOMPLETE INIT16 1BRANCH IF NOT. INCB 1IF SO STAFLG INCB PWRFLG RFLAGS OPFLAG CLR 1ST8 BNE 8cC 7ST8 BNE -6(PC) .-4 -22(PC) .-20 R3 tILET R3 PWRFLG S03444¢ READEF #EF .NEW 503454 STAFLG 503464 READEF #€EF .RES - MOV TRAP 8CC SET THE START FLAG. OEF .PUR RO CSREFG INIT16 1IF SO - SET THE POWER FAIL FLAG. tREAD AND STORE FLAGS SET 8Y OPERATOR TRAP CIRFLA MOV RO, OPFLAG := &0 1CLEAR EVENT FLAG 1IF POWER FAIL HAS NOT OCCURRED THEN: tUPDATE PASS COUNT WHEN MOV TRAP 1SUPERVISOR IS IN NEW PASS 1AND DIAG WAS NEITHER STARTED 1 NOR MOV TRAP OEF .NEW,RO CSREFG OEF .RES,RO CSREFG MISCELLANEQUS SECTIONS INITIALIZE SECTION 3190 021704 3191 021706 3192 3193 021710 3194 021712 3193 021712 3196 3197 021714 MACRO M1113 30-NOV-83 103402 005103 000401 503478 BCS oM S0347¢ RS 8R 503504 INC RS BR 503514 INC RS SEQ 105 JIFCOND CC THEN JLET R3 1= COMP RS JSET 503464: 021720 503514 021720 50345 021720 021720 021724 021726 021726 021734 021736 021740 021742 021744 021744 021746 021730 3219 021734 3220 021760 3221 021766 3222 S034414; 175156 002604 177777 5033524 002524 003065 005703 001410 003703 002003 003265 JSR QR PC.FIRSTY R2 LET R21= 00 OP 8EQ IN DEVIBLCRS), $END SOSSSS Rz JLET R2 1= R2 + 01 GPHARD RO,RO BCC MOV MOV ADD MOV SO03548 ,IFCOND CS THEN CRO),TSDBCRS) LSAVE TSDB ADORESS. (RO)+,TSSRCRS) TSAVE TSSR ADORESS . 02, TSSR(RS) CRO)s, TSVCTCRS) JSAVE INTERRUPT VECTOR ADDRESS. MOV SETVEC (RO).TSNP VSAVE FOR PRINT OUT'S TSVCT(RS),TSSINTCRS),eINTPRI ‘MHILE DEVTBLCRS) NE ¢€ND DO RS.RO JINIT DEVICE POINTER. LINIT DEVICE COUNTER. ILET RO i- RS SWIFT -1 (GET HARDMARE P TABLE FROM SUPER. CROD. tsuu (RS) TRAP CsGPHRD MOV TSSINTCRS),-(SP) TRAP CeSveEC 1SAVE NUMBER OF DRIVE MOV TSVCT(RS).-(SP) ADD LR 7ST REQ ST 003326 000403 012765 JSET 1ST PASS IF NEW PASS AND 1 STARTING JOR ON POMER FAIL MOV 012746 016346 016346 012746 104437 062706 1ST PASS IF NEW PASS AND ,00 NOT UPDATE IT ON CONTINUE MOV 000002 JRESTARTED ;00 IT ' RESTARTING 503504 3198 3199 021714 021716 021716 3223 3224 B9 10:17 000001 003326 503564 S03574¢; S035%¢; INTFLG(RS) RS S03SSs RS 8GE INC S03%6¢ PASCNT(RS) R 503574 MOV #1.PASCNT(RS) 610.SP JSET UP INTERUPT PROCESSING CONDITIONS. JCLEAR INTERRUPT FLAGS. LACTUAL PASSCOUNT UPDATE PER RS \IF RS LT 60 THEN . g JLET PASCNTCRS) := PASCNT(RS) {LET PASCNTCRS) :» 01 ¢ » 81 MISCELLANEOUS SECTIONS INITIALIZE SECTION 022060 022060 022064 005065 004767 000716 022072 022074 022078 022076 005702 001026 § 022070 022072 MACRO M1113 S03544: 003376 175060 012727 000000 016727 000000 005367 \ 1378 05367 001367 CLR RECCNT(RS) B8R 503524 TST R2 JSR 503534 BNE PC.NEXTU S0360¢ PRINTF @AUDRPM 012746 012746 010600 104417 062706 C9 30-NOV-83 10:17 SEQ 1CLEAR RECORD COUNT 100 IT FOR ALL DEVICES. 1+ IF THERE ARE NO UNIIS: tPRINT ALL UNITS DROPPED, MOV MOV TRAP 000004 DELAY 200. 000310 O LHMORD O 177772 DEC BNE OEC 104422 104444 SP,RO COPNTF .MORD MOV BNE BREAK SAUDRPHM, -(SP) 1GO TO SUPERVISOR, WAIT 2 SECONDS. 9200. ,(PC)» MOV 157766 177756 106 DOCLN 1GO TO SUPERVISOR, CHECK TTY, TRAP 100 CLEAN CODE + ABORT PASS. SETPRI #PRIOO 1LOMER CPU PRIORITY TO O LIOLY,(PC)» -6(PC) .-4 -22(PC) .-20 CSBRK TRAP CSOCLN TRAP CISPRI 503604 ; 012700 000000 103767 ~160027 001033 032767 000020 001027 004767 174700 026527 001421 022226 022232 022244 0222352 022254 105067 161312 012746 012746 012746 012746 104437 062706 000340 023730 012767 000167 161342 177777 7578 IREC 817 S®ADR , OPFLAG BNE . 3624 : BNE JSR 14 PC.FIRSTY cp DEVTBL(RS ), #END BEQ CLR8 SETVEC 161164 1¢: 14 MoV B8R JMP 1 TRAPOA #4,0TRAPA,PINTPRI o1, TIMEL 503634 503634 s IF ERROR RECOVERY IS ENABLED S#PRIOO,RO tAND AUTO-DROP NOT CALLED, THEN SET UP FOR FIRST 1WHILE THERE ARE MORE DEVICES: 1CLEAR TRAP FLAG 1SET VECTOR 4,PRIORTY 86 MOV MOV MOV MOV TRAP ADD 1START 3.5 MINUTE COUNTER t1INCR TIMEL FROM #1 TO 2S5 By @1 OTRAPS, -(SP) 4, -(SP) 3, -(SP) C4SVEC €10,5P MISCELLANEOQUS SECTIONS INITIALIZE SECTION 3274 3275 3276 3277 3278 3279 3280 022260 022260 022264 022264 022272 022274 022302 MACRO M1113 30-NOV-83 10:17 503664 0035267 161152 026727 003134 012773 161146 000025 002340 002514 012727 000000 016727 000000 005367 001375 005367 001367 000025 012700 104436 105767 001423 000004 D9 503654 SEQ 107 TIMEL cHP 8GY OELAY TIMEL, #25 44 ggSCPK.OTSDB(RS) 1AND GET UNITS STATUS tWAIT 825.(PC)0 157602 h‘DLY.(PC)O 177772 -6(PC) 177756 -22(PC) .-20 .-4 CLRVEC 1578 8EQ INC 161164 003366 PRINTF ~ 1CLEAR VECTOR AT 4 ;2AP04 1+IFB TRAPD4A NE #0 THEN FTLCNT(RS) ONODEV, TSSR(RS) tLET FTLCNT(RS) 1PRINT ERROR &4 ,R0O CsCVvEC := FTLCNT(RS) » o1 TSSR(RS), -(SP) 005543 3286 022376 3287 022404 002604 175004 3291 022412 3292 3297 022302 1SAVE & OF UNIT TO BE OROPPED. RO RO 1OROP THE UNIT 105067 161110 012746 012746 012746 012746 000340 023730 000004 000003 000010 002324 012727 000000 016727 000000 005367 001373 005567 001367 000025 012700 000004 2s: CLRS SETVEC CSPNTF #6,5P 1RO=LOGICAL OEVICE NUMBER TRAP Cs000V TRAP CsOCLN 1 EXEC BGNDU-ENDOU COOE IF IDU = O 100 CLEAN EABORT OOCLN 104444 104437 062706 003773 DEVTBL(RS),DROPN R3,RO 3289 022410 ADD TRAPD4 04 ,0TRAPA , #INTPRI 1CLEAR TRAP FLAG $1SET VECTOR 4,PRIORTY 86 QINTPRI, -(SP) OTRAPA, -(SP) 03, -(SP) CeSVEC TS7 OELAY 8TSSR(RS) 25 1CHECK FOR ADDRESS tWALT €10,5P 825.(PC)0 157432 177772 -6(PC) 177756 l22(PC) 4 C.RVEC [ ) 1CLEAR VECTOR AT 4 <20 #4 RO MISCELLANEOQUS SECTIONS INITIALIZE SECTION 022306 022310 022514 022516 022322 022322 022526 022532 022336 022340 022542 3302 022346 3303 022354 022556 3305 022560 022560 3306 3307 022362 022562 3308 022564 3310 3311 0223566 3312 3313 104436 105767 001424 005263 016346 012746 012746 010600 104417 062706 016567 010500 006200 30-NOV-83 10:17 161014 1ST8 B8EQ INC 003366 PRINTF 002524 005543 000002 000006 002604 174634 MOV MOV ASR ooov 004767 010475 165174 002514 012727 000000 016727 000025 012727 000000 016727 000000 005367 001375 005367 001367 032773 001420 032775 001001 000457 RS ,RO RO RO ILET FTLCONT(RS) 1PRINT ERROR ADD 1OROP THE UNIT 50367¢ 3s: JSR MOV DELAY gg.OTSDB(RS) PC,SETDEF 177756 MoV DELAY 000025 OGSCPX ,8TSDB(RS) 25 157250 177772 177756 000200 002524 géa 000100 002524 8IT B8NE B8R 000006 TSSR(RS), -(SP) #NODEV, -(SP) SP,RO CePNTF #6,5P TRAP Cs000V TRAP CSOCLN MOV .MORD MOV .MORL DEC BNE DEC BNE 025,(PC). O LSDLY,.(PC)e O -6(PC) MOV .WORD 025,(PC)» O LMORD DEC BNE DEC BNE O -6(PC) -4 $1SET UNIT NUMBER 177772 160622 005456 000002 MOV MOV 1SAVE @ OF UNIT TO BE DROPPED. 1RO=LOGICAL DEVICE NUMBER 100 CLEAN EABORT B8GT 002514 CsCveC := FTLCNT(RS) + #1 157306 002340 TRAP 1+ EXEC BGNDU-ENDDU CODE IF IDU = O 44 S03714; 016746 012746 012746 010600 104417 062706 DEVTBL(RS),DROPN DOCLN 003127 005367 001367 01277 p FTLCNT(RS) ONODEV, TSSR(RS) 1IFB TRAPD4 NE €0 THEN TRAP 104444 001375 SEQ 108 MOV 104451 000000 005367 3314 3315 MACRO M1113 #7S.SSR,8TSSR(RS) 503704 #7S.0FL ,8TSSR(RS) S0371s 50364¢ PRINTF @OFLINM, TSNP $tAND GET UNITS STATUS sWAIT .-4 -22(PC) .-20 1IF #TS.SSR SETIN STSSR(RS) THEN -22(PC) . sIF TS . OFL NOTSETIN STSSR(RS) THEN 1EXIT COUNTER WHEN UNIT ON LINE 1PRINT UNIT OFF LINE EVERY 10 SEC MOV MOV MOV MOV TSNP, -(SP) SOFLINM, -(SP) 0, -(SP) SP,.RO RADO 06,5P TRAP CIPNTF MISCELLANEOUS SECTIONS INITIALIZE SECTION 3324 33235 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 30-NOV-83 10:17 022732 022732 022734 022734 022734 022740 022744 022730 022732 022754 022760 022760 022766 022770 022770 022774 022774 3340 3345 3346 023066 000412 016546 012746 012746 010600 50370¢: BR 503734 PRINTF #NRDYM,DEVTBL(RS) 002604 023700 000002 104417 062706 012767 000402 160452 005267 160444 026727 003016 160440 012727 000000 016727 000000 005367 001373 005367 001367 000144 50373 50375 000013 503744 MOV BR 01,TIMER S03744 INC TIMER2 cHpP 8GT OELAY ADD 6, 5P tWAIT FOR UNIT TO BE SET ON-LINE 177756 BREAK 012700 104436 026727 003404 004767 004767 000004 160360 S0376¢: 503674 503644 167646 170360 $ALLOW TERMINAL INTERRUPT S0375¢ JP S50366¢ CLRVEC &4 cHP BLE 000025 004767 174052 023076 000167 177100 160421 JSR PC,NEXTU 503634 ; 503614 1tCLEAR VECTOR AT 4 TIMEL, #25 303774 JSR PC,MOVMSG JSR PC,TCC1 S03774: 023072 CHPNTF TIME2,013 503764 100. 177772 177214 104431 DEVTBL(RS), -(SP) ONROYM, -(SP) 2, -(SP) SP,RO $INCR TIMEZ2 FROM €1 TO €13 By 01 157100 000167 105767 001026 MOV MOV MOV MOV TRAP 023072 023102 023102 023102 3361 023106 3362 023110 023110 SEQ 109 50372¢: 104422 000754 3341 3342 3343 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 MACRO M1113 JP 503624 7578 PWRFLG BNE 504004 MEMORY DATAWT MOV .WORD MOV .WORD 0EC BNE 0EC BNE €100.,(PC). O LSOLY,(PC)» O -6(PC) .-4 -22(PC) -20 TRAP C$BRK MOV TRAP &4 ,R0O C$CveC 1IF OFF LINE FOR 3.5 MINUTES 1GET MESSAGE PACKEY 1PRINT ERROR AND DROP OFF LINE UNIT tREPEAT UNTIL ON LINE OR TIMED OUT. 1SET UP FOR NEXT UNIT. 1IFB PWRFLG EQ €O THEN tREQUEST MEMORY FROM SUPER FOR RD/WR BUFFERS. TRAP CsMEM MISCELLANEOUS SECTIONS INITIALIZE SECTION 3363 3364 3365 3366 3367 023112 010067 MACRO M1113 160270 160264 004000 160250 MOV ADD cop 160264 160256 004000 OATAWT ,DATARD #DATCNT ,DATARD gg:g??T.OOATCNT PRINTF oMEMOM 023210 000001 000004 3368 3369 OOCLN SEQ 110 1SET RD BFR ADDRESS MOV RO ,DATAUT tWHEN NOT ENOUGH FREE MEMO AVAILABLE 1WARN OPERATOR s AND ABORT PASS MOV MMEMOM, -(SP) MOV TRAP ADD SP,RC CSPNTF 4 ,5P TRAP CSOCLN 1DIAG MUST BE RE-LOADED IN A CPU WITH LARGER MEMO S04014¢: 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 S04006: 157024 003526 167464 160323 3380 CHGFLG JSR PC,CLRERR EXIT INIT CLR8 MEMOM: 023300 023303 023306 3382 3383 3384 023312 023312 023312 3385 CLRS MOV 3381 3387 3388 G9 30-NOV-83 10:17 S®ENDFLG,R3 PUWRFLG tCLR CHANGE CMD SEQ TBL FLAG. iILET R3 := @ENOFLG ;CLEAR ALL FLAGS. ;CLEAR THE POWER FAIL FLAG. .ASCII /#AFREE MEMO TOO SMALL FOR RD-WR BFRSEN/ .ASCIZ /#ARE-LOAD IN LARGER MEMOSN/ TRAP CSEXIT TRAP CSINIT . WORD L10012-. .EVEN 104411 L10012: .SBTTL jee ENDINIT AUTO DROP SECTION MISCELLANEOQUS SECTIONS AUTO DROP SECTION MACRO M1113 HS 30-NOV-83 10:17 SEQ 111 1SECTION EXECUTED AFTER THE INIT CODE WHEN “ADR” FLAG IS SET BY OPERATOR DROPS UNIT IF NO RESPONSE 1SECTION CHEKS FOR A VALID INTERFACE LOCATION, tFROM INTERFACE 3389 3390 3391 3392 3393 3394 023314 023314 3395 3396 3397 3398 3399 3400 3401 '-- L$AUTO: : 173562 002604 177777 50402¢: 160174 000340 023730 BGNAUTO JSR PC,.FIRSTU ;WHILE DEVTBL(RS) NE #END DO cHP DEVTBL(RS), #END 8EQ 504034 CLR8 TRAPDA 1LET TRAPDA SETVEC #4,0TRAP4,#INTPRI 1FIND FIRST UNIT ' :B- #0 1SET VECTOR 4 000003 000010 002514 MOV 8TSDB(RS),R2 CLRVEC 4 7518 160130 BEQ INC 003366 002514 023604 TRAPD4A § 50404 FTLCNT(RS) PRINTF s ADDRESS TSOS INTERFACE tCLEAR VECTOR AT 4 1IFB TRAPDA NE €0 THEN €AUTODM, TSDB(RS) tLET FTLCNT(RS) 1PRINT ERROR 002604 MOV 173750 3410 3411 3412 3414 3415 3416 3417 3418 3419 3421 3422 3423 001423 0327758 001416 005265 016746 012746 012746 010600 104417 062706 004767 002340 167216 000200 002324 000100 002524 003366 160022 002514 S04044: DEVTBL(RS),DROPN zgx 23.R0 ooV RO B8R S040S+ MOV BIT BEQ BIT BEQ INC 1DROP THE UNIT: #GSCPK,8TSDB(RS) JSR PC,WSSR #7S.SSR,8TSSR(RS) S0406¢ 01S.0FL ,8TSSR(RS) S0407¢ FTLCNT(RS) PRINTF @OFLINM, TSNP 000002 000006 173566 JSR PC,DROPUA @INTPRI, -(SP) OTRAPA4, -(SP) TRAP CSSVEC MOV TRAP &4 ,RO C$CVEC ADD := FTLCNT(RS) 000002 3408 MOV MOV €10,5P +» 01 MOV MOV TSDB(RS), -(SP) SAUTOODM, -(SP) MOV TRAP ADD SP,RO CSPNTF #6,5P 1SAVE @ OF UNIT TO BE OROPPED. 1RO=LOGICAL DEVICE NUMBER EXEC BGNDU-ENDOV CODE IF IOV = O TRAP C$000V 1SEND GET STATUS COMMAND WAIT s IF OTS.SSR SETIN 8TSSR(RS) THEN 1 IF @TS.OFL SETIN 8TSSR(RS) THEN tLET FTLCNT(RS) := FTLCNT(RS) MOV MOV MOV MOV TRAP ADD + 0 TSNP, -(SP) SOFLINM, -(SP) €2,-(SP) SP,RO CSPNTF 06,5P MISCELLANEOUS SECTIONS AUTO DROP SECTION 3424 3425 3426 3427 3428 3429 3430 MACRO M1113 023544 000416 005265 003366 016546 012746 012746 010600 104417 052706 004767 002604 023700 000002 023600 023602 023602 023602 023602 023604 023607 023612 S04064: INC FTLCNT(RS) PRINTF ONRDYM,DEVTBL(RS) 173530 sLET FTLCNTC(RS) := FTLCNTC(RS) ¢ 0 JSR PC.,DROPUA 3446 023714 023717 023722 023725 MOV MOV MOV MOV TRAP ADD DEVTBL(RS), -(SP) #NRDYM, -(SP) SP,RO CSPNTF #6,5P 504104 : 004767 173350 504054 : 50403¢: L10013 JSR PC,NEXTU BR S0402% ENDAUTO ) AUTODM: TRAP .ASCII /<ABUS TRAP AT #06sN/ .ASCIZ /#AINTERFACE BAD OR NOT SET TO ABOVE AD®N/ ASCIZ /#AUNIT #D1sA NOT ROYSN/ 023615 023620 023623 023626 023627 023632 023635 023640 023643 023646 023651 023654 023657 023662 023665 023670 023673 023676 023700 023703 023706 023711 112 504104 8R 000006 023574 023574 023574 SEQ 504074 023536 023536 023540 023540 023544 30-NOV-83 10:17 NRDYM: .EVEN CSAUTO MISCELLANEOUS SECTIONS AUTO DROP SECTION MACRO M1113 J9 30-NOV-83 10:17 3447 3448 3449 SEQ 113 : H DEVICE BUS TRAP HANDLER OUTPUT: TRAPDA BYTE 1: TRAPED AT 4 TRAP4:: INCB RTI 3456 .SBTTL CLEANUP CODING SECTION 3458 jee g:gg } 3452 023730 3453 023734 3454 3455 105267 000002 157574 3457 3459 3460 173140 3468 023750 3469 023752 026527 001410 004767 002604 3473 023770 023772 3477 023774 016500 104436 004767 177777 S0411¢: 166722 cHe 01 002534 173160 JSR 000764 1FIND FIRST UNIT, DEVTBL(RS), #END CLRVEC TSVCT(RS) PC,NEXTY B8R S0411¢ EXIT CLN sWAIT FOR UNIT READY OR TIMEOUT, sRELEASE INTERRUPT VECTORS FOR ALL DEvV. MOV TSVCT(RS).RO TRAP C$CVEC sFIND NEXT UNIT, S04124: 104432 000002 TRAP CSEXIT TRAP CS$CLEAN .WMORD .EVEN 3479 023776 3480 023776 JSR PC,FIRSTU ;WHILE DEVTBLC(RS) NE #END DO BEQ 504124 JSR PC,WSSR 3478 023776 . BGNCLN 004767 3474 023772 3475 3476 023772 TRAPD4 LSCLEAN:: 3465 023736 3466 023742 33:;% 023764 :B= $-- 023736 3470 023756 023756 023762 TRAPD4;LET TRAPD4 1 THE CLEANUP CODING SECTION CONTAINS THE CODING THAT IS PERFORMED 1 AT THE END OF EACH PASS. 3461 3462 3463 023736 3467 023742 0: NO TRAP L10014-. ENDCLN L10014:; 104412 3481 .SBTTL 3483 3484 3485 jee s THE DROP-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE 3 TO NO LONGER BE TESTED. THAT CODE SHALL BE EXECUTED WHEN DOOU 3482 sszgg DOROP UNIT SECTION tMACRO IS CALLED WHILE IDU FLAG IS NOT SET 8Y OPERATOR .-- 3488 3489 024000 3490 3491 3492 3493 3494 024000 LeDU:: 024000 010005 024004 012765 177774 016500 002534 024002 024012 024012 006305 002604 BGNDU MOV RO,.RS 1RS = LOGICAL DEVICE NUMBER X 2. MOV ONINUSE ,DEVTBL(RS) ;SET NOT IN USE FLAG FOR THE DEVICE. ASL RS CLRVEC TSVCT(RS) tRELEASE THE INTERRUPT VECTOR. MOV TSVCT(RS),RO MISCELLANEOUS SECTIONS OROP UNIT SECTION 024016 35495 024020 MACRO M1113 30-NOV-83 10:17 104436 016746 012746 012746 010600 104417 062706 IK9 PRINTF 173364 #DROPDM,DROPN SEQ 114 1PRINT TRAP DROP DEVICE MESSAGE CsCveC 005565 000002 MOV MOV MOV MOV DROPN, -(SP) #OROPOM, -(SP) 02,-(SP) SP,RO 000006 ADD #6,SP .WORD .WORD Js$UMP L10015-2-. TRAP csou CS$PNTF TRAP EXIT 000167 000000 ov .EVEN L10015: 104453 .SBTTL. ENDOV ADD UNIT SECTION goe :+ THE ADD-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE + TO BE (A) TESTED FOR THE FIRST TIME, OR (B) RESUMED IN TESTING. : "EF.AUNIT” IS SET, THE UNIT WILL BE TESTED AS A NEW UNIT, IF ‘-- 024052 024052 024052 024054 024056 024062 024062 024064 024070 024074 024102 024106 3519 024112 024116 3521 024116 024122 024126 024132 024136 024140 010005 010065 104442 011065 06276S 011063 0110635 011067 012746 016346 016546 012746 104437 062706 024144 3523 3524 024150 024150 024152 3525 3526 3527 3528 024154 024154 024154 L$AU: BGNAV RO,RS RS RO,DEVTBL(RS) tR5 = LOGICAL DEVICE NUMBER X 2. 1SAVE TSOB ADORESS. 1SAVE TSSR ADDRESS. 002604 MOV ASL MOV GPHARD RO,RO 002514 002524 000002 002534 003532 157416 MOV MOV ADD MOV MOV MOV (RO),TSDB(RS) (RO)+,TSSR(RS) #2,TSSR(RS) (RO),TSVCT(RS) (RO),TSUNT(RS) (RO), TSNP 002524 SETVEC TSVCT(RS),TSSINT(RS),#INT 000340 002554 002534 000003 000010 003472 000167 CLR INTFLG(RS) EXIT AV 1STORE UNIT & IN DEVICE TABLE. +GET HARDWARE P TABLE FROM SUPER. TRAP C$GPHRD 1SAVE INTERRUPT VECTOR ADDRESS. 1SAVE NUMBER OF DRIVE ég?VE FOR PRINT OUT'S MOV MOV MOV MOV @INTPRI, -(SP) TSSINT(RS), -(SP) TSVCT(RS), -(SP) 3, -(SP) TRAP ADD CS$SVEC €10,5P LWORD .WORD JsuMP L10016-2-. TRAP CSAV 1SET UP INTERUPT PROCESSING CONDITIONS. 1CLEAR INTERRUPT FLAGS. .EVEN 104452 L10016: ENDAUV MISCELLANEOQOUS SECTIONS ADD UNIT SECTION MACRO M1113 30-NOV-83 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 10:17 SEQ 115 .TITLE HARDWARE TESTS .SBTTL TEST 1: BASTC FUNCTIONS. XX s+ TEST TO EXECUTE ALL TSOS5 FUNCTIONS. '—- BGNMOD T1:: 105067 105067 157333 157326 BGNTST CLR8 CLRB .1 RANDOM EXPBOT B8GNSUB tCLR THE RANDOM OPERATIONS FLAG. sCLR EXPECT BOT FLAG. sSUBTEST 1 - SET CHAR, DRIVE INIT, GET STATUS. 104402 007767 004767 103404 TRAP 172706 162672 104455 JSR gég PC.FIRSTU inSOFINIt sFIND THE FIRST UNIT, sINIT DEVICE ERRDF 2.NSSRM, STAERM sREPORT TSOS NOT READY . WORO . WORD . WORD 004536 006120 004767 012702 004767 004767 004767 026527 001451 0163502 011265 042765 011265 042765 3569 3570 024332 024332 TRAP 11¢: 163230 025074 000622 163774 172644 002604 002344 000012 002564 177700 002574 177477 016546 016546 012746 012746 010600 104417 062706 002564 002604 004162 000003 016546 002574 1717777 002564 002574 JSR PC ,MDSET MOV #BFSEQO,R2 JSR PC.BFSEQ JSR PC,EXALL JSR PC.FIRSTY S0413¢: ;WHILE DEVTBL(RS) NE ®END DO (o) BEQ MOV ADD MOV 8IC MOV 8IC PRINTF 000010 PRINTF DEVTBL(RS), #END 504144 MSGPKA(RS ) ,R2 #12,R2 lLET R2 (RZ).TSSCL(RS) 177700, TSSCL(RS) (R2),TSSSW(RS) #177477 , TSSSU(RS) CcsBSUB < $ERDF 2 NSSRM STAERM 16O DO SETUP'S sADR OF CMD SEQ 1SET UP CMD SEQ. 1EXECUTE CMD SEQ ON ALL DEVICES. sFIND THE FIRST UNIT 1WHILE THERE ARE HORE DEVICES: 1GET MSG PACKET ADR, := R2 + #12 GET XSTAT2 ADR, 1STORE CODE LEVEL FROM OTR BYTE. 1STORE @CODELM,DEVTBL(RS),TSSCL(RS) SWITCH SETTINGS MOV MOV MOV TSSCL(RS), -(SP) DEVTIBL(RS), -(SP) ®CODELM, -(SP) MOV TRAP ADD SP.RO CSPNTF MOV TSSSW(RS), -(SP) sPRINT THE TSO05 MICROCODE LEVEL. ASWSET,DEVTBL(RS),TSSSW(RS) #10,5P MACRO M1113 HARDWARE TESTS TEST 1: SGASIC FUNCT1GNS. 3571 3572 3573 3574 3575 3576 3577 3578 M9 30-NOV-82 024336 024342 024346 024352 024354 024356 016546 012746 012746 010600 104417 062706 002604 004231 000003 024362 024362 004767 172562 024366 024370 024370 C24370 024370 024372 024372 024372 024374 L10020: 104403 024454 3601 3602 024456 024456 024456 3603 024460 3605 024464 504134 #BFSEQL,R2 PC,.BFSEQ PC,EXALL STAFLG 025160 000420 163572 L10022: T1.4:; MOV JSR JSR ENDOSUB +ADR OF CMD SEQ. 1SET UP CMD SEQ. 1EXECUTE CMD SEQ ON ALL DEVICES. 1CLEAR START FLAG #BFSEQ2,R2 PC,.BFSEQ PC,EXALL C$ESUB TRAP #BFSEQ3,R2 PC,.BFSEQ PC.EXALL csBsuB 1ADR OF CMD SEQ. 1SET UP CHMD SEQ. tEXECUTE CMD SEQ ON ALL DEVICES. TRAP CsESUB 1SUBTEST 5 - SPACE FILES. BGNSUB TRAP JSR C$ESUB tSUBTEST 4 - WRITE TAPE MARK, ERASE. B8GNSUB MOV csssus sADR OF CMD SEAQ. 1SET UP CMD SEQ. tEXECUTE CMD SEQ ON ALL DEVICES. TRAP JSR ENDSUB 025324 000360 csssuB TRAP 163552 104402 TRAP 1SUBTEST 3 - WRITE/VERIFY, MOV 11.5: C$ESUB TRAP 025252 L10023: TRAP tSUBTEST 2 - REWIND. T1.3: 104403 012702 004767 tFIND NEXT UNIT. L10021: 104402 012702 004767 004767 PC.NEXTU ENDSUB 163616 157112 104403 3596 3597 3598 3599 BR 025146 000444 104402 3594 3595 JSR T1.2: 104402 012702 004767 004767 50415¢%: S0414¢: 104403 3589 3590 3591 3592 3593 MOV DEVTBL(RS), -(SP) MOV #SWSET, -(SP) MOV 23, -(SP) SP,RO MOV TRAP CS4PNTF RDD 010,SP tPRINT THE TSOS SWITCH SETTINGS. 000010 000723 012702 004767 004767 105067 SEQ 116 10:17 #BFSEQ4 ,R2 PC,BFSEQ 1tADR OF CMD SEQ. 1SET UP CMD SEQ. csesus TEST 1: TESTS MACRO M1113 BASIC F UNCTIONS. 3606 024470 3607 024474 024474 024474 3608 3609 024476 024476 024476 3610 3611 024500 3612 024504 3613 024510 3614 024514 024514 024514 36135 3616 024516 024516 024516 3617 004767 30-NOV-83 163532 L10024: 104403 T1.6: 104402 012702 004767 004767 025366 000340 163512 L1002S: T1.7: 104402 #BFSEQS,R2 PC,.BFSEQ PC.EXALL TRAP TRAP ENDSUB BGNSUB JSR ENDSUB 025576 000240 163412 ENDSUB C$ESUB 1SUBTEST 9 - READ FWD RETRY. #0F SEQ8 ,R2 PC,BFSEQ PC.EXALL cs8suB 1tADR OF CMD SEQ. 1SET UP CMD SEQ. 1EXECUTE CHMD SEQ ON ALL DEVICES. TRAP C$ESUB TRAP csasus 1SUBTEST 10- CLEAN. BGNSUB MOV JSR csssuB tADR OF CMD SEQ. 1SET UP CMD SEQ. 1EXECUTE CMD SEQ ON ALL DEVICES. TRAP 163432 104402 #BFSEQ7,R2 PC,.BFSEQ PC.EXALL TRAP MOV T1.10:; CSsESUB tSUBTEST 8 - READ REV RETRY. 025544 L10030: csssuB tADR OF CMD SEQ. 1SET UP CMD SEQ. 1EXECUTE CMD SEQ ON ALL DEVICES. TRAP J T1.9: C$ESUB t1SUBTEST 7 - WRITE RETRY. BGNSUB MOV L10027: cs3suB sADR OF CMD SEQ. 1SET UP CMO SEQ. tEXECUTE CMD SEQ ON ALL DEVICES. TRAP #BFSEQG ,R2 163452 024576 012702 004767 004767 MOV JSR JSR ENOSUB CsESUB 1SUBTEST 6 - SPACE RECORDS. PC,BFSEQ PC,EXALL 025512 104403 024600 BGNSUB T1.8: 104402 024604 024610 024614 1EXECUTE CMD SEQ ON ALL DEVICES. L10026: 104403 024576 024576 PC,EXALL TRAP 163472 104402 012702 004767 004767 JSR ENDSUB 025440 104403 012702 004767 004767 SEQ 117 TRAP 104403 012702 004767 004767 10:17 #BFSEQ9, R PC,BFSEQ PC.EXALL tADR OF CMD SEQ. 1SET UP CHMD SEQ. 1EXECUTE CMD SEQ ON ALL DEVICES. RARDMWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. 024614 024614 3643 3644 024616 024616 024616 30-NOV-83 10:17 T1.11: 104402 012702 004767 004767 112767 004767 105067 156656 L10032: 104403 016702 062702 SO416¢: 020267 001402 000342 SO417¢: 136621 T1.12: 104402 012767 153412 112767 136362 135372 004767 012767 004767 012767 004767 012767 004767 012767 004767 133360 136430 133334 105067 012767 004767 133316 171114 000574 155304 L10033; 104403 104432 BGNSUB 156437 1SUBTEST 11 MOV JSR JSR MOVS JSR CLRS ®BFSEL10,R2 PC.BF SEQ PC.EXALL 41,SWBFLG PC.EXALL SUBFLG MOV ADD DATAUT ,R2 €10, ,R2 cp BEQ R2 ,0ATANT S04174 ENDSUB ;WHILE R2 NE DATAWT DO CsESUB - WTV SWAPPED DATA BYTES. 1ADR OF CMD SEQ. TRAP csssuB 1SET UP CHMD SEQ. l\flITE/VERIFY RECOROS 1 AND 2. tENABLE BYTE SWAPPING. 1WRITE/VERIFY RECORDS 3 AND 4. 1DISABLE BYTE SWAPPING. TRAP s INIT WRITE BUFFER POINTER. CeESUB sUNTIL 10 BYTES HAVE BEEN SWAPPED. 1SWAP DATA BYTES IN WRITE BUFFER. -(R2) 504164 INCS T1Sw8 +SET T1 SWAP BYTES FLAG FOR ~CKXDATA" SUBR 1SUBTEST 12 - READ SWAPPED DATA BYTES. BGNSUB MoV JSR MoV JSR MOve MOV JSR MOV JSR MOV JSR MOV JSR CLR8 MOV JSR MOV JSR 136306 012767 004767 105067 TRAP SHAB 000773 012767 004767 SEQ 118 L10031; 104403 105267 B10O OROR , CMOMRD PC,VFEXC 012, 0MDPKT+CP . CONT PC.VEXC 1 ,S\OFLG 911 ,00DPKT +CP.CNT PC,VFEXC 012.00DPKT +CP.CNT . xC OROF, PC.VEXC 011,0M0PKTCP.CNT PC,.VFEXC SWBFLG 012 ,CHOPKT+CP.CNT PC.VFEXC #11,CMOPKT+CP.CNT PC,.VFEXC TRAP cs8suB 100 IS READ REV. tVERIFY 00O LENGTH SWAP (RECORD 4). 1CHANGE BYTE COUNT TO 10. sVERIFY EVEN LENGTH SWAP (RECORD 3). 1ENABLE BYTE SWAPPING. sCHANGE BYTE COUNT TO 9. sVERIFY 00D LENGTH SWAP (RECORD 2). tCHANGE BYTE COUNT TO 10. tVERIFY EVEN LENGTH SWAP (RECORD 1). +CMD IS READ FWD. IVERIFY EVEN LENGTH sw (RECORD 1). +tCHANGE BYTE COUNT TO 9 sVERIFY 00D LENGTH SWAP (RECORD 2). 1OISABLE BYTE SWAPPING. tCHANGE BYTE COUNT TO 10. IVERIFY EVEN LENGTH SW (RECORD 3). sCHANGE BYTE COUNT 70 9 IVERIFY 00D LENGTM SWAP (RECORD 4). € TRAP CLR8 T1SW8 EXIY TS7 CSESUB 1CLEAR T1 SWAP BYTES FLAG TRAP .WORD CIEXIT L10017-. TEST 1: MACRO M1113 TESTS BASIC FUNCTIONS. C10 30-NOV-83 10:17 SEQ 119 SUBROUTINE TO MOVE A COMMAND SEQUENCE TO THE SEQUENCE TABLE. R2 = FWA OF COMMAND SEQUENCE. INPUTS; 3690 OUTPUTS REGISTERS; CALLS: 012701 003540 BFSEQ: : MOV 021227 001402 012221 177777 cp BEQ MOV (R2),#END S04214 (R2)+,(R1) B8R S04204¢ MOV RTS SEND,(R1) PC : BASIC FUNCTION COMMAND SEQUENCE B8FSEQO: . WORD SCH s INIT SEQ TABLE ADORESS. tWHILE THERE ARE MORE COMMANDS: 1MOVE COMMANDS TO SEQ TABLE. 1STORE END OF SEQUENCE COOE. sRETURN, (1) ;DRIVE INIT, (2) 1SET CHAR, (3 g 1SET CHAR, 200. R 17 20 3731 3733 3734 3733 3737 3738 3739 3740 3741 3742 3743 3744 177777 102010 000001 000002 000000 177777 1GET STATUS, (4) 1SET CHAR, 40. (3) tREWIND TWICE. (6) 8 3727 3728 OredNOrHF QIO NNOFD Or 012711 000207 504214 OCMDSEQ,RY 1WHILE (R2) NE #END 00 sgorROTIGeT 000773 504204; BFSEQL: RWO ¢ BFSEQ2: IWRITE/VERIFY PAT 1. «n tWTV PAT 2. 8) 10:17 Wrv 1WTV PAT 3, (?® 1 3 WV DATCNT 1 tWTV PAT 4, (10) WV tWTV PAT S, (1 1 S WV 1WTV PAT 6. (12) sWTV PAT 0. 13) IWRITE TAPE MARK, (14) tWRITE 10 RECORDS. (15) tERASE 10 TIMES. (16) tWRITE TAPE MARK. 7 1WTM RETRY (18) 1SPACE 2 FILES REV. 19) ) 3745 0235200 3746 3747 3748 3749 3750 3731 SEQ 120 1SPACE 2 FILES FWD. (20) D 30-NOV-83 1SPACE 2 FILES REV, (21) s, - HARDWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS 1SPACE 2 FILES FWOD. (22) DATCNT 4 DATCNT gATCNT 6 WtV QATCNT 0 END BFSEQ3: 3796 3797 3798 3799 3800 0253352 3801 025354 BFSEQ4: VO N+ 103410 QOF‘NQOO‘N 177777 E1O 10:17 BFSEQS: .WORD (23) 1 SPACE 7 RECORDS FWD. (24) s SPACE 7 RECORDS REV. (23) tSPACE 7 RECORDS FWD. (26) tSPACE 7 RECORDS REV. 27 1REWIND. (28) tWRITE. (29) tWRITE RETRY. (30) -4 2 -4 OrrD BFSEQ6: s REWIND. P+ " .WORD SEQ 121 p -] 177777 MO~NFWNONM 000002 000000 2°""g 8°"8°7"%WOPN%OF ~NVNOrsr 5D gomo— 30-NOV-83 L=4 >» TEST 1: MACRO M1113 TESTS BASIC FUNCTIONS. tWRITE TAPE MARK. tSPACE 1 FILE REV. .WORD BFSEQ7: 1READ REV, (31) tREAD NEXT REV. (32) T HARDWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. F10 30-NOV-83 10:17 025532 SEQ 122 stREAD NEXT FWD, (33) 1READ FWD, (34) tREAD PREVIOUS FWO. (35) 1READ PREVIOUS REV. (36) sCLEAN, 37) tREWIND (38) .WORD BFSEQ9: 5 § BFSEQS: 1END OF SEQUENCE. BFSEL0: 1717777 IWRITE/VERIFY EVEN LENGTH, (39) tWRITE/VERIFY 00D LENGTH. (40) . WORD .EVEN L10017:; 104401 .SBTTL ENDTST TRAP TEST 2: DATA RELIABILITY. g s TEST TO CHECK THE DATA RELIABILITY OF THE TSOS. 41, RANDOM 1SET THE RANDOM OPERATIONS FLAG. 1CLEAR EXPECT BOT FLAG. 1CLEAR WRITE TAPE MARK FLAG tFIND THE FIRST UNIT. .-- 023644 025644 025644 025652 025656 025662 T2:: 112767 105067 005067 004767 000001 135636 135574 171214 155643 BGNTST MOVB CLR8 CLR JSR EXPBOT WIMFLG PC.FIRSTY CSETST T HARDWARE TESTS MACRO M1113 TEST 2: OATA RELIABILITY. 3913 025666 3914 025672 3915 025674 025674 025676 025700 025702 3916 3917 025704 3918 025710 3919 023714 3920 025716 3921 025722 3922 3923 025732 3924 3925 3926 3927 3928 025730 3929 025730 3930 025734 3931 3932 3933 3934 3935 3936 004767 103404 30-NOV-83 10:17 JSR 8Cs ERRDF 161200 104453 PC,SOFINIT 114 2,NSSRM,STAERM s INIT DEVICE +REPORT TSOS NOT READY 000002 004536 006120 004767 012702 005302 010267 005167 004767 105767 001417 004767 105067 012721 012721 012702 005102 010221 012721 .MORD .WORD .WORD 161356 118: 004000 135506 135502 162230 155570 JSR ggg PC,MOSET 1ST8 BEQ JSR CLR8 162242 155556 STAFLG 304244 PC,SETRW STAFLG CS$ERDF 2 NSSRM STAERM 1GO DO SETUP'S ;gATCNT.RZ 1SET UP MOV R2 , LENMSK coM LENMSK JSR PC,SETCH THE RECORD LENGTH MASK, 1ALLOW MAXIMUM BUFFER. sCMD 1 = SET CHARACTERISTIC. ;IFB STAFLG NE #0 THEN tLET STAFLG 1 IF s CMO2+=REWIND :8= #0 STARTING THEN: 1CLR START FLAG. 504224 : 104105 MOV 004000 MOV comM 177740 MOV MOV 000007 SOATCNT ,(R1)e ORNOPSC ,R2 R2 R2,(R1). ORANP ,(R1)+ 504234 : BREAK 104422 S04244: 003740 s+ DO A SUPVSR BREAK FIRST. TRAP C$BRK +FILL SEQ TBL WITH RANDOM CMDS. cp R1,#SEQEND ADD MOV 8IC RANB , RANS RANS ,R2 177741 ,R2 B8R 504244 162166 1777717 MOV JSR ®END, (R1) PC.EXALL tSTORE END OF SEQUENCE CODE IN TABLE. 1GO EXECUTE ALL CMDS IN SEQUENCE TABLE. 012701 005702 001732 105267 000240 000240 000240 004767 003540 MOV OoCMDSEQ, R sINIT CMD SEQ TBL POINTER, 004767 012767 005167 000126 177740 155440 020127 002012 066767 016702 042702 004772 133422 133416 177741 135422 012711 004767 B8GE JSR 026160 000763 026066 026072 026100 SEQ 123 7S7 BEQ 5358 155450 e 001546 155444 S0425¢ PC.SRANCMO(R2) R2 504234 ALLEOT JSR PC.TSWEOT JSR MOV coM PC,RANRD ORNOPSC,CMDSEQ 4 CHMOSEQ.4 tLET RANS := RANS + RANB $SET UP A RANDOM CMD + BRF. tREPEAT UNTIL EOT IS REACHED tFLAG ALL UNITS @ EOT tWRITE ONE RECORD BEYOND EOT ON ALL UNITS 1SO0 THAT SHORTER READ STOP DISTANCE 1SHALL POSITION HEAD IN CLEAN IRG GAP tREAD REV THAT EXTRA REC TO RE-POSITION THE TAPE 1SET UP READ REV/FWD CMDS. 1# OF RECORDS FOR READ REV. HARDMWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY. 3965 026104 3966 026112 3967 026116 3968 026122 3969 026126 3970 026134 3971 026140 3972 026144 gg;z 026150 3975 026154 026154 3976 026156 016767 30-NOV-83 10:17 155434 012711 004767 105067 112767 012701 177777 162104 155376 000001 003540 012711 004767 1777177 162052 004767 155442 EXIT 3 $READ, sREAD., 1READ. 1READ. 005767 001406 004767 004767 005067 020127 002030 012721 012721 066767 016702 042702 010221 012721 020127 002007 000136 000160 155214 003740 104401 004000 155150 155140 177740 000007 003740 155144 1READ. 1READ. 3 s : ] SUBROUTINE TO SET UP READ COMMANDS IN SEQUENCE TABLE. INPUTS: OUTPUTS REGISTERS: Re RANRD:: TST BEQ JSR JSR 1s: IN 1READ. RANRD RANRD 155232 CIEXIT L10034 -, IWRITE. 1WRITE, IWRITE. IWRITE. sWRITE, sWRITE. sWRITE. 1READ. RANRD 026220 026220 } 4017 026300 4018 026304 4019 026310 THE DATA RELIABILITY TEST. RANRD RANRD RANRD RANRD :88% 026226 026232 026236 026242 026246 026250 026254 026260 026266 026272 026276 ADORESSES OF SUBROUTINES USED TO SET UP RANDOM OPERATIONS 026220 026220 026220 026220 3998 3999 4000 4001 4004 026220 4005 026224 TRAP .WORD tWRITE 026220 3997 1STORE END IN SEQ TBL, $EXECUTE REWIND CMD ON ALL UNITS RANCMD: RANMR 3993 026212 10 OF RECORDS FOR READ FORWARD. sSTORE END OF SEQUENSE CODE IN SEQ TABLE. 1GO0 EXECUTE READ REV/FWD OF LAST N RECORDS. sCLEAR ALL UNITS 8 EOT FLAG 1REQUEST PERFORMANCE REPORT DURING REWIND. 1 INIT SEQ TBL POINTER, TST RANMY RANWR RANMWR RANWR RANWR RANMWR RANMR RANRD 124 1STORE REWIND IN SEQ TBL, 026332 026356 026332 026332 026332 026332 026332 026332 026220 3994 026214 3995 026216 CMOSEQ:4 ,CMDSEQ+14 SEND, (R1) PC.EXALL ALLEOT 1 ,.RPTFLG #CMDSEQ,R] JSR PC,SETRW : 026202 026204 026206 026210 SEQ MOV ®END,(R1) JSR PC,EXALL 104432 000320 3981 026162 3982 026164 3983 026166 3984 026170 3985 026172 3986 026174 3987 026176 3988 026200 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 MOV JSR CLRS MOVve MOV 162042 gg;g 3989 3990 3991 3992 MOV 155363 3977 3980 026160 H10 CALLS: CLR cwp BGE MOV MOV ADD MOV 8IC MoV MOV cHP 8GE WTMFLG 1 PC . RAWTM PC.RASFR WTMFLG R1,#SEQEND i} OROR,(R1)e SOATCNT ,(R1)e RANS ,RANB RANB ,R2 MRNOPSC ,R2 R2,(R1) ORANP,(R1)» R1,#SEQEND et 1MAS LAST CMD A WRITE? 1NO,GO AMEAD 1YES PUT DOWN TAPE MARK sAND SPACE FILE REV 1 THEN CLEAR THE FLAG 1STORE READ REV CMD. 1SET BRF TO MAX FOR READ RANDOM LENGTH. tLET RANB := RANB + RANS iLET R2 ;1= RANB CLR.BY #RNOPSC 1SET RANDOM @ OF OPERATIONS. tRANDOM PATTERN. HARDWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY, 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 026312 026316 026322 026324 026330 012721 012721 010221 012721 000207 30-NOV-83 10:17 SEQ 125 MOV MOV MOV 104001 004000 000007 OROF ,(R1). #DATCNT,(R1)» R2,(R1). ggg PC ORANP,(R1)» 1STORE READ FWO CMD. 1SET BRF TO MAX TO READ RANOOM LENGTHS. 1SET RANDOM & OF OPERATIONS. 1RANDOM PATTERN. SUBROUTINE TO SET UP A WRITE COMMAND IN THE SEQUENCE TABLE, THEN A WRITE TAPE MARK AND SPACE FILE REVERSE. INPUTS: OUTPUTS:: REGISTERS: CALLS: 026332 026336 026342 026350 026354 012721 004767 005767 001002 005267 000207 104005 000102 t: 155110 MOV MRT,(R1). JSR PC,RANW 1STORE WRITE CMD. 1STORE BRF, @ OF OPERATIONS, INC s1NO,SET THE FLAG TST BNE 155102 WTMFLG 1¢ WTMFLG PATTERN. tLAST CMD A WRT? $ YES,RETURN i,mrme TO SET UP A WRITE/VERIFY COMMAND IN THE SEQUENCE TABLE. OUTPUTS: REGISTERS: CALLS: 026356 026362 026366 012721 004767 000207 104105 000056 g?g PC.R:EH 1STORE WRITE/VERIFY CMD. tSTORE BRF, @ OF OPERATIONS, PATTERN. §$3?guns TO SET UP A WRITE TAPE MARK IN THE SEQUENCE TABLE. OUTPUTS; REGISTERS: CALLS: 026370 026374 026376 026402 026414 020127 003740 RAWTNM: : cP R%.OSEQEND 012721 012721 012721 005721 000207 100011 MOV MOV MOV MTH, (R1). #1,(R1). €1,(R1). 000001 1 TST RTS PC (R1)e 1STORE WRITE TAPE MARK CMD. 1BRF 1® OF OPERATIONS 1 SKIP PATTERNS %&%TI'E TO SET UP A SPACE FILE REVERSE IN THE SEQUENCE 3 OUTPUTS: REGISTERS: CALLS: 026416 026422 026424 026430 020127 002007 012721 012721 003740 105410 000001 RASFR: : cHP 8GE MOV MOV R1,#SEQEND 14 OSFR,(R1). €1,(R1). 1STORE SPACE FILE REVERSE 1BRF TABLE. HARDWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY, 30-NOV-83 10:17 4077 026434 4078 026440 4079 026442 4080 4081 4082 4083 4084 4085 4086 4087 012721 005721 000207 026444 012721 004000 026450 026456 066767 016702 042702 010221 012721 000207 154760 154750 177740 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 026470 026474 4099 4100 026476 026476 026476 4101 4102 4103 4104 MOV 000001 1¢: TST RTS PC #1,(R1). 1@ OF OPERATIONS (R1)» 1SKIP PATTERNS SUBROUTINE TO STORE BRF, & OF OPERATIONS, PATTERN IN COMMAND SEQUENCE TABLE FOR WRITE AND WRITE/VERIFY COMMANOS. INPUTS; OUTPUTS: REGISTERS: R2 CALLS: 154754 MOV #OATCNY ,(R1)» ADD RANS , RANB 1RANDOM BRF WILL BE GENERATED FOR EACH RECORD. tLET RANB := RANB + RANS MOV MOV R2,(R1). ORANP,(R1)+ 1SET RANDOM & OF OPERATIONS. $RANOOM PATTERN. MOV B8IC 000007 RTS PC RANB ,R2 MRNOPSC R $SET BRF TO MAX FOR PATTERN GENERATION. tLET R2 := RANB CLR.BY #RNOPSC $RETURN. .EVEN L10034: 104401 .SBTTL ENDTST TRAP TEST 3: CSETST WRITE COMPATABILITY/MWRITE UTILITY, g 4105 4106 4107 4108 026500 026500 4109 4110 026500 4111 026506 4112 4113 026512 4114 026316 4115 4116 026524 026524 026326 026530 026532 4117 4118 026534 4119 026540 4121 4122 4123 4124 4125 4126 SEQ 126 026544 026552 026536 026566 026572 s TEST TO WRITE RECORDS FROM BOT TO EOT. '-- T3:: 112767 105067 000001 155002 004767 004767 103404 170364 160350 1355007 MOVB 104455 000002 004336 006120 004767 012702 005302 010267 005167 004767 004767 105067 BGNTST CLR8S EXPBOT #1 , RANDOM 1SET THE RANDOM OPERATIONS FLAG. JSR JSR 8cs ERROF PC,FIRSTU PC,SOFINIT 11 2,NSSRM,STAERM tFIND THE FIRST UNIT, s INIT DEVICE LET EXPBOT :B= #0 1CLEAR EXPECT BOT FLAG. tREPORT TSOS NOT READY TRAP .WMORD .WORD .WORD CS$ERDF 2 NSSRM STAERM 160726 11¢; 13546356 134652 MOV R2, LENMSK tALLOW MAXIMUM BUFFER. LENMSK com JSR PC,SETCH tCMD 1 = SET CHARACTERISTIC. JSR PC,SETRW 1CMD2=REWIND CLR8 STAFLG LET STAFLG :B= #0 tCLEAR START FLAG 504264: BREAK s+ DO A SUPVSR BREAK FIRST, 004000 161400 161420 154734 JSR ggg PC,MOSET ;gATCNT.RZ 1GO DO SETUP'S 1SET UP THE RECORD LENGTH MASK, HARDWARE TEST 3: TESTS MACRO M1113 30-NOV-83 IK10 10:17 0127 026572 104422 4128 4129 4130 4131 026574 026574 026600 026602 020127 002003 004767 003740 4134 026610 012711 177777 4136 026620 012701 003540 105267 154670 004767 000766 4132 026606 4133 026610 4135 026614 4137 026624 4138 026626 4139 026630 4140 026634 4141 026636 4142 026640 4143 026642 4144 000772 004767 005702 001761 000240 000240 000240 TRAP S0427%: 177524 S0430¢: 161406 cHp B8GE JSR R1,#SEQEND S0430¢ PC ,RANWR MOV ®END, (R1) 8RrR JSR MOV TST BEQ INCO NOP NOP NOP JSR S04274¢ PC,EXALL #CMDSEQ.R1 R2 S04264 ALLEOT PC, TSWEOQT 4145 4146 4147 026646 4148 026652 4149 026656 :igg 026662 4152 4153 026666 026666 026670 4154 4155 4156 4157 026672 026672 4158 4159 SEQ WRITE COMPATABILITY/WRITE UTILITY, 026672 127 C$BRK sWHILE THERE IS MORE ROOM IN SEQ TABLE: 1STORE A WRITE CMD IN SEQUENCE TABLE. 1STORE END OF SEQUENCE CODE IN TABLE. $1EXECUTE ALL CMDS IN SEQ TBL ON UNITS. s INIT SEQ TBL POINTER, 1REPEAT UNTIL EOT IS REACHED $1SET ALL UNITS @ EOT FLAG tWRITE ONE RECORD BEYOND EOT ON ALL UNITS 1SO0 THAT SHORTER READ STOP DISTANCE $SHALL POSITION HEAD IN CLEAN IRG GAP 105067 154652 CLR8 012711 004767 177777 161340 MOV #END,(R1) JSR PC,EXALL 004767 161330 ALLEOT JSR PC,SETRW EXIT 104432 ;1READ REV THAT EXTRA REC TO RE-POSITION TAPE sCLEAR ALL UNITS 8@ EOT FLAG 1STORE REWIND IN SEQ TBL, 1STORE END IN SEG TBL, $EXECUTE REWIND CMD ON ALL UNITS TSY 000002 TRAP CSEXIT TRAP CSETST .WORD L1003S5-. .EVEN ENDTST L1003S:; 104401 :},22 .SBTTL 4162 jee :igz s TEST 4: READ COMPATABILITY/READ UTILITY, TEST TO READ ENTIRE TAPE FORWARD AND REVERSE. '-- 4165 4166 026674 0167 026674 T4:: 4168 026674 :igg 026702 112767 112767 000001 000001 4171 4172 4173 4174 004767 004767 103404 170166 160152 026710 026714 026720 026722 026722 026724 026726 104455 000002 004536 154613 154604 BGNTST MOVS MOV8 €1 ,RANDOM #1,EXPBOT 1SET THE RANDOM OPERATIONS FLAG. $1SET EXPECT BOT FLAG. JSR JSR BCS ERRDF PC,.FIRSTU PC,SOFINIT 11¢ 2,NSSRH,STAERM tFIND THE FIRST UNIT. 1 INIT DEVICE 1REPORT TSOS NOT READY TRAP MWORD JMORD CSEROF 2 NSSRM HARDWARE TESTS MACRO M1113 30-NOV-83 10:17 TEST 4: READ COMPATABILITY/READ UTILITY, 7S 026730 006120 4176 026732 004767 4180 026752 4181 026756 4182 026762 4183 026766 4184 026772 4185 026776 4186 027002 4187 027006 4188 027012 4189 027016 4190 027022 4191 027026 4192 027032 012721 012721 012721 012721 012711 004767 105267 012701 012721 012721 012721 012721 012711 105067 4177 026736 4178 026742 4179 026746 4193 027036 :{3‘5 027042 4196 027046 027046 4197 027050 004767 004767 105067 004767 . WORD 160530 114 JSR PC,MDSET 104001 004000 077777 000007 1777117 161224 154516 003540 104401 004000 0777717 000007 1777117 MOV MOV MOV MOV MUV JSR INC8 MOV MOV MOV MOV MOV MOV ®ROF ,(R1)» S®OATCNT ,(R1)e ®77777,(R1). ORANP ,(R1)» #END,(R1) PC.EXALL ALLEOT #CHMDSEQ,RL ORDR,(R1). ®DATCNT,(R1). o17777,(R1)» SRANP,(R1). SEND,(R1) 154456 CLRS ALLEOT 161220 161240 154554 161164 JSR PC,SETCH JSR PC,SETRW CLRB STAFLG JSR EXIT 104432 000002 4198 L10036: 104401 :228§ LSBTTL 4204 12X 4207 ' :% 4208 027054 027054 T1S:: 105067 154435 :gg 027060 112767 000001 4213 027066 004767 170010 027100 027102 027104 4217 027106 104455 000002 004536 006120 4218 027110 4219 027114 4220 027122 004767 116767 004767 4214 027072 4215 027076 4216 027100 4221 027126 STAERM $1GO DO SETUP'S LET STAFLG PC.EXALL tCMD 1 = SET CHARACTERISTIC. 1 CMD2=REWIND. :8= #0 sCLEAR START FLAG ;CMD3 = READ FORWARD. $1SET LENGTH TO MAX FOR UNKNOWN LENGTHS. 1SET RECORD COUNT TO MAX FOR WHOLE TAPE. sPATTERN = RANDOM. 1STORE END OF SEQUENCE CODE IN TABLE. sEXECUTE ALL CMDS IN SEQ TBL ON ALL UNITS. tFLAG TO ALLOW ALL UNITS AT EOT TO READ REV 1INIT CMD SEQ TBL POINTER. 1CMD1 = READ REVERSE. $SET LENGTH YO MAX FOR UNKNOWN LENGTHS. sRECORD COUNT = MAX FOR WHOLE TAPE. tPATTERN = RANDOM. $1STORE END OF SEQUENCE CODE IN TABLE. 1GO EXECUTE READ REV. OF ENTIRE TAPE. tCLEAR ALL UNITS 8 EOT FLAG TST TRAP .WORD CSEXIT L10036-. TRAP CS$ETST TRAP .WORD . WORD .WORD CSERDF e NSSRM ENDTST TEST S: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 3 TEST TO EXECUTE 4209 4210 027054 128 .EVEN 4199 4200 027052 027052 4201 027052 SEQ 004767 103404 016767 154426 160352 153076 161034 153066 BGNTST CLRS RANDOM ;CLEAR RAMODOM MODE FLAG. JSR PC.FIRSTY sFIND THE FIRST UNIT. ~MOVe 157774 JSR 8CSsS ERROF 154377 154406 114: OPERATOR SELECTED COMMAND SEQUENCE. €1 ,EXPBOT PC,.SOFINIT 114 2 . NSSRM, STAERM JSR MOVB PC,MDSET PIRE, IRE JSR PC,SETCH MOV CHAR,CMOSEQ.2 $SET EXPECT BOT FLAG. s INIT DEVICE 1REPORT TSOS NOT READY STAERM 1GO DO SETUP'S tMOVE INHIBIT RFC ERROR REPORT FLAG. sCMD 1 = SET CHARACTERISTIC. +MOVE CHAR CODE FROM P TBL TO SEQ TBL. M10 HAROWARE TESTS MACRO M1113 30-NOV-83 10:17 TEST S: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 4222 4223 4224 4225 4226 4227 4228 4229 027134 027140 027144 027150 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 027266 4230 027272 4251 027274 027300 027302 027306 027312 027312 027316 027320 027324 027326 027332 027334 027340 4257 027342 4258 027346 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 027412 4270 0127 2 004767 004767 004767 004767 004767 004767 004767 003067 105067 012701 021127 001374 022711 001024 062701 012167 022167 001003 MOV JSR 003540 3¢: : 504314 177777 000002 154220 154202 000002 154166 003540 154160 1¢: 28: 000010 000020 012727 000000 016727 000000 005367 001375 005367 001367 003367 001361 000001 cHpP (R1),0END 64: 000004 154126 74: tR2 POINTS TO CMD2 Il SOFT P TABLE. sMOVE CMD 2 FROM P TBL TO SEQ TBL. sMOVE CMD 3 FROM P TBL TO SEQ TBL. s+MOVE CMO 4 FROM P TBL TO SEQ TBL. +MOVE CMD S FROM P TBL TO SEQ TBL. tMOVE CMD 6 FROM P TBL TO SEQ TBL. +tMOVE CMD 7 FROM P TBL TO SEQ TBL. tMOVE END CMD FROM P TBL TO SEQ TBL. 1CLEAR JMP CMD LOOP COUNT. tCLEAR START FLAG 1 INIT SEQUENCE TABLE POINTER. tWHILE THERE ARE CMDS LEFT IN SEQUENCE TBLE: JWHILE (R1) NE #END DO 8EQ S04324 C eP.C,(RY) 64 BNE ADD #2,R1 1LET R1 MOV (R1)+,4.0C CMP (R1)+,JL00P 14 BNE ADD #2,.R1 000040 022711 001026 062701 011167 JSR JSR JSR JSR JSR JSR CLR CLR8 MOV oCMDD, R2 PC.PTCMDS PC,.PTCMDS PC.PTCMDS PC.PTCMDS PC.PTCMDS PC.PTCMDS PC,PTCMDS JLO0P STAFLG #CMDSEQ,R1 SEQ 129 B8R 3¢ B8R 2¢ INC MOV DEC 8eEQ ADD CMP BNE ADD MOV DELAY 1IS THIS A JUMP CMD? :s R1 JLOOP #CMDSEQ,R1 J0C 3¢ #10,R1 SOLY.C,.(R1) 1BR IF NOT. + 92 L.WORD MOV LMORD DEC BNE OEC BNE 177772 177756 062701 000715 004767 000004 026767 002103 004767 004767 026727 001002 004767 154024 DEC BNE ADD 161610 44: 154024 161466 183633 167774 100017 S04334: B8R JSR TIMER2 7¢ o4 ,R1 34 iLET R1 PC,SETUP sWHILE NCNT LT NCNT1 DO cHP 8GE TO BRF. sDELAY? 1BR IF NOT, j1R1 = LOCATION OF N COUNT, $SAVE N COUNT, 1GO TO SUPER-WAIT 1 MSEC. (4 01"] 4 #4,R) (R1),TIMER 1 152572 154072 sPOINT $SAVE BRF (LOCATION). 1HAS LOOP COUNT BE SATISFIED? :IF NOT, JMP AGAIN $IF SO, ADJUST SEQ POUNTER $AND GO TO NEXT COMMAND. sUPDATE THE LOOP COUNT. $INIT CMD SEQ TABLE POINTER. ;tDECR LOCATION COUNTER. 1IF THIS IS THE RIGHT LOCATION TO U4 TO, GO SET 1IF NOT, UPDATE SEQ POINTER TO NEXT CMD. 3100 IT AGAIN, NCNT ,NCNT1 ¢ 50434 JSR PC,CMDAC JSR PC,EXSUB cHP CMOWRD , 4GES BNE 304354 JSR PC,PRXST := Rl v 04 #1,(PC). O LeOLY, (PC)O -6(PC) . -4 -22(PC) .-20 1POINT TO NEXT CMD. 1GO0 CHECK NEXT CMOD. +tGO_SETUP THE COMMAND BLOCK, tWHILE THERE ARE RECORDS REMAINING: 1STORE CMD ASCII IN ERROR MSG. $+ISSUE CMD TC ALL,AWAIT INTS,CHECK STATUS. 1 IF CMD IS GET STATUS THEN: 1PRINT EXTENDED STATUS REGISTERS. N10O MACRO M1113 30-NOV-83 10:17 HARDWARE TESTS TEST S: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 027416 027416 027422 027426 027432 027432 027440 027442 027450 004767 012702 004767 026527 001426 032767 001406 032765 001001 005002 S04354: 170056 000001 MOV 167450 002604 177777 000400 153750 000002 003502 504408 032765 000001 003502 032767 000001 153714 001001 JSR PC,CKHAE sCHECK HALT AFTER EACH CMD FLAG. JSR PC,.FIRSTY tFIND FIRST UNIT, cHpP BEQ BIT BEQ BIT 504414 : 000411 001404 SO04364: #1,R2 #X0.B0T,EOTFLG(RS) BNE CLR S0441¢ R2 B8R S04424 S04434¢ BNE 504444 CLR sIF NOT AT BOT THEN: tCLEAR EOT/BOT FLAG. sELSE IF CMD IS NOT REVERSE: X0 .EOT ,EOTFLG(RS) BEQ 8IT 005002 $1SET ALL UNITS AT B80OT/EOT. sWHILE DEVIBL(RS) NE #END DO sWHILE THERE ARE MORE UNITS: DEVTBL(RS), #END S0437¢ &#M00D . CO, CMOWRD $IF CMD IS REVERSE THEN: 504404 8IT S04434 SEQ 130 &CMD .CO,CMDUWRD R2 sIF NOT AT EOT OR NOT A MOTION CMD THEN: iLET R2 := #0 1tCLEAR EOT/BOT FLAG. SO4444: 004767 504424 : 167434 000746 020227 000001 016767 005267 105267 026727 001002 133662 153656 153762 153660 001016 027552 004767 S0437¢: 000002 000056 027556 027556 027560 027560 000402 153740 027564 005267 016767 153622 153624 027576 027600 027600 000671 027604 027606 000601 027570 ‘ 3 S04364¢ cp R2,.81 1IF ALL UNIT ARE AT EOT/BOT THEN: MOV INC INCS c BNE NCNT ,NCNT1 NCNTL ALLEOY CMOLG, #2 504464 tFORCE TERMINATION OF COMMAND. B8R SO4474¢ CLR8 ALLEOT 1WHEN NOT ALL S8EOT, CLEAR FLAG INC MOV NCNT CMOWROD , PCMDUWO 1UPDATE RECORD COUNT, 1SAVE PREVIOUS COMMAND WORD. B8R S0433¢ S04454¢ JSR PC, TSWEOT 1FLAG ALL UNITS AT EOT/80T TO ALLOW VERIFY OF D sWHEN WRITING IS CURRENT COMMAND 1GO WRITE/READ REV ONE RECORD BEYOND EOT 504464: 105067 027564 1FIND NEXT UNIT BR BNE 153662 ® JSR PC,NEXTV 004767 166262 504454; SO0447¢: 153626 504344 504324 : JSR B8R PC,VFYDAT S04314 1IF LAST CMD WAS A WRITE VERIFY, THEN GO 1VERIFY THE LAST N RECORDS OF DATA. HAROMARE TESTS MTMMACRO M1113 B1l1 30-NOV-8S8 10:17 SEQ 131 TESYT S: EXECUTE OPERATOR SELECTED COMMAND SEQWENCE., 4328 4329 027606 027606 4330 027610 EXIT 104432 000140 4331 1 33"‘9, 3 4332 4333 4334 433% : 1 3 1 4338 027612 4339 027614 4340 027616 4341 027620 4342 027624 4343 027626 4344 027630 :g“z 027632 012203 O005%03 006303 016321 012221 012221 01:221 000207 SUBROUTINE TO MOVE A COMMAND FROM THE SOFTWARE P TABLE CSEXIT L10037-. TO CALLS: DEC ASL MOV MOV MOV MOV RTS PC 4347 4348 4349 43%0 :gg% TRAP .WMORD THE COMMAND SEQUENCE TABLE. INPUTS R2 « POINTER TO SOFT “P~ TABLE OUTPUTS: REGISTERS: RS, PTCHMDS : : MOV 003752 TS7Y (R2)+ ,R3 RS RS CMDTBL(RS),(R1). (R2)+,(RY). (R2)+,(R1). (R2)+,(R1)» 1RS = COMMAND TABLE INDEX. 1MOVE COMMAND WORD. sMOVE @ OF BYTES, sMOVE @ OF OPERATIONS. 1MOVE PATTERN CODE. fl : ! : 3 SUBROQUTINE 7O WRITE THEN READ REVERSE ONE RECORD BEYOND EOT INPUTS: OUTPUTS: REGISTERS: CALLS: CMDAC ,EXSUB , CKMAE TSMEOT:: 4353 4354 4335 4356 027634 027636 027640 027644 000240 000240 004767 004767 160660 167630 NOP NOP JSR PC,.EXSUB JSR PC,CKHAF 4358 4359 4360 4361 4362 4363 4364 4365 4366 027650 027654 027662 027670 027676 027704 027712 027720 027726 012700 016767 012767 012767 016767 042757 016767 016767 004767 000002 153540 104401 000004 153516 004000 152412 153464 161132 MOV 02 ,R0 1SET UP COUNTER FOR EOT MOV CHOMRD , PCHMOMD sLET PCrOMD := CMDWRD sREPOSITION TAPE MOV SROR , CMOMRD 1LET CMOMRD := OROR 1BEFORE EXTRA RECORO MoV 04,0MDLG 18Y READING REVERSE MOV CMOWRD , CMOPKT 1LET CMOPKY := CMOMRD CLR.BY #8RF .C 8IC oBRF . C,CDPXKT MOV COPXT ,CMDSAY sLET CMDSAV ;= CMDPKT ;THAT RECORD TO ALLOW MOV OATARD ,CMOPKT «CP . ADL sNEXT COMMAND IN THE JSR PC,CMDAC 3 TABLE TO BE EXECUTED 43%7 4367 4368 4369 4370 027732 027736 027742 027744 :g;% 027746 004767 004767 005300 001343 4376 027750 4377 027752 4378 4379 4380 1$: 160566 167536 JSR PC,EXSUB JSR PC,CKMHAE 0EC RO BNE 14 000207 4373 4374 4375 027750 027750 153542 153530 153530 152424 152416 153502 152404 RTS PC sWRITE ONE RECORD BEYOND EOT 1SO THAT READ SHORTER STOP DISTANCE 1SHALL POSITION MEAD IN CLEAN IRG GAP 1tFOUND EOT YET? 1NO . XKEEP GOING 1 YES ,RETURN .EVEN 104401 L10037; ENDTSTY TRAP ENDMOD .TJITLE PARAMETER CODING CSETST MACRO M1113 PARAME TER COODING HARDWARE PARAMETER COOING SECTION 30-NOV-83 4381 - Cl11 10:17 .SBTTL 027732 SEQ 132 HARDWARE PARAMETER CODING SECTION BGNMOD X THE HAROWARE PARAMETER CODING SECYION CONTAINS MACROS THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES. THE MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS WITH THE OPERATOR. BGNMRD .WORD L10040-L$HARD/2 LS$MARD:: GPRMA 4397 4398 TSSADR,0,0,160010,177564,YES GPRMD TSS5VCT,2,0.777,60,776,YES GPRMD TSSUNT,4,0,1,0,1,N0 EXIT HRD 124 123 123 103 105 104 103 114 TSSADR: TSSVCY: TSSUNT: .NLIST .ASCIZ .ASCIZ .ASCIZ LIST .EVEN L10040: SOFTWARE PARAMETER CODING SECTION joe 4418 1 + s s 1 + THE SOFTWARE PARAMETER CODING SECTION CONTAINS MACROS THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES THE MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS WITH THE OPERATOR, T4CODE TSSADR TSLOLIM TOHILIM .m .WORD .WORD . WORD . WORD T4CODE TSSVCT 177 TSLOLIM TSHILIM . WORD . WORD . WORD T4CODE ISS(NT . WORD .WORD TSLOLIM TSHILIM . WORD T4CO0OE BEX /TSDB ADDRESS/ /VECTOR/ /SELECT DRIVE O0-1/ BEX ENDMRD .SBTTL .WORD . WORD . WORD .EVEN 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 000302 BGNSFT LISOFT: 000130 000001 RCVERM, 2,400, YES 001130 031010 000400 HAEM, 2,1, YES 001130 030734 000001 IRECM,6,400,YES 003130 031064 000400 NEXTSP BADTM,4,1,YES 002130 003130 031041 000001 003130 031131 000001 004130 031105 000001 127044 006032 031162 000377 000000 000777 007032 031207 000037 000033 CLRM,0,1,YES RRVM,0,400,YES 000130 030705 000400 030760 000001 GPRML .WORD L10041-L$SOFT/2 T$COOE ELRH T$CODE L T Y 4419 4420 4421 SEQ 133 NEXTSP: OINTM,6,1,YES IREM,12,.1,YES CHGM,10,1,YES ENDSP1L CHARM, 14,0,377,0,777,YES CcHMO2M,16,D,37,1,33,YES RRVM 400 T4CO0E RCVERM 400 T4CO0E 1 T4CODE IRECH 400 T4CODE T4COOE EADTH T4CODE gINTH T4CO0E {REH T4CODE CHGM 1 T4CODE T4CODE CHARM 377 TSLOLIM TSHILIM T4RILIM v SOF TWARE PARAMETER CODING SECTION D11 30-NOV-83 10:17 53555 55535 § 365 B89 559 386 § 569 859 B3 338 IaS MACRO M1113 PARAMETER CODING ! MACRO M1113 SOF TWARE PARAMETER COOING SECTION 4435 030200 030200 030202 030204 030206 030210 4436 030212 030212 030214 030216 030220 030222 4437 030224 030224 4438 4439 4440 4441 4442 4443 4444 010052 031215 177777 000001 004000 011052 031227 177777 000001 o 012052 031247 000017 000000 000010 013052 031356 000037 000001 000033 014052 0312135 177777 000001 004000 015032 031227 177777 000001 0177?77 30-NOV-83 10:17 GPRMO GPRMOD GPRMD GPRMD 0200352 031215 177777 000001 004000 021052 031227 PATTM,24,0,17,0,10,YES CMO3M,26,0,37,1,33,YES B8PCRM,30,0,-1,1,0ATCNT, YES GPRMD NUMBM,32,0,-1,1,77777,YES PATTM,34,0,17,0,10,YES 016032 031247 000017 000000 000010 017052 031364 000037 000001 000033 E11 CMD4M, 36,0,37,1,33,YES GPRMD GPRMOD BPCRM,40,0,-1,1,0ATCNT, YES NUMBM ,42.0,-1,1,77777,YES SEQ 134 3§ 53358 58545 B8%85 BR85S B5858 BAEeR BaR0 E8 JHE PARAMETER CODING T4COOE BPCRM -1 TSLOLIM TOHILIM T4CO0E NUMBH -1 TSLOLIM TSHILIM T4CO0E PATTH 17 TSLOLIM TSHILIM TOHILIM T4CODE 82CRH TSLOLIM TSHILIM T$CO0E o TSLOLIM TOHILIM T4CO0E PATTM 17 TSLOLIM TeHILIM TSLOLIM TSHILIM T$COOE o TSLOLIM TOHILIM T4COOE NUMBM
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies