Digital PDFs
Documents
Guest
Register
Log In
AH-T179D-MC
September 1987
143 pages
Original
68MB
view
download
OCR Version
94MB
view
download
Document:
CVTSED0 TSV05 TSV05 DATA REL SEP 1987 bw
Order Number:
AH-T179D-MC
Revision:
000
Pages:
143
Original Filename:
CVTSED0__TSV05__TSV05_DATA_REL__AH-T179D-MC__SEP_1987_gray.pdf
OCR Text
TSV05 DATA REL CVTSEDO AH-T179D-MC 10F1 SEP 1987 COPYRIGHT® 1982-87 nan MADE IN USA 0 Bl w A (C SEQ@ 000 1 T SVOS DATA RELIABILITY MACRO V0S5.03 Friday 22-May-87 08:12 Page 2 .REM SHREREESRIRRRUNLEBRNERR IDENTIFICATION PRODUCT ID: AC-T178D-MC PRODUCT TITLE: CVTSEDO TSVOS DATA RELIABILITY PRODUCT DATE: 4-JUN-87 MAINTAINER: CSS/PGG DIAGNOSTICS AUTHOR : DICK GORDON THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. NO RESPONSIBILITY IS ASSUMED FOR SOFTWARE ON EQUIPMENT THAT IS NOT AFFILIATED COMPANIES. COPYRIGHT (C) 1982, 1983, THE USE SUPPLIED OR BY RELIABILITY DIGITAL 1987 BY DIGITAL EQUIPMENT CORPORATION THE FOLLOWING ARE TRADEMARKS OF DIGITAL EQUIPMENT CORPORATION: DIGITAL DEC POP DECUS OF OR ITS UNIBUS DECTAPE MASSBUS R AV et S TSVOS DATA RELIABILITY MACRO V05.03 Friday 22-May-87 08:12 Page 3 USER DOCUMENTATION TABLE OF CONTENTS GLOSSARY GENERAL INFORMATION AR A AT 1.1 PROGRAM ABSTRACT 1.1.1 1.1.2 1.1. i.1. FUNCTIONAL DESCRIPTION STRUCTURE OF PR OGRAM MEMORY MAP DIAGNOSTIC INFORMATION 1.1.4.1 SCOPE 1.1.4.2 ERROR RECOVERY 1.1.4.3 WRITE ERROR RECOVERY 1.1.4.3.1 MEDIA/OPERATIONAL SELECTIVE WRITE -ERROR-RECOVERY 1.1.4.3.2 OPERATIONAL WRITE-ERROR-RECOVERY 1.1.4.4 DIAGM)STIC TIMING ADJUSTMENT SYSTEM REQUIREMENTS 1.2.1 1.2.2 HARDWARE REQUIREMENTS SOFTWARE REQUIREMENTS 1.3 RELATED DOCUMENTS AND STANDARDS 1.4 DIAGNOSTIC HIERARCHY PREREQUISITES 1.3 ASSUMPTIONS OPERATING INSTRUCTIONS 2.1 HARDWARE PARAMETERS 2.2 SOF TWARE PARAMETERS 2.2.1 2.2.2 TS05 COMMAND LIST DATA PATTERNS EXAMPLES OF SOFTWARE PARAMETER DIALOGUE 2.3.1 2.3.2 2.3.3 BASIC FUNCTION WITH ALL ERROR SCOPE LOOP SET SCOPE LOOP SET EXECUTION TIMES AND DATA RELIABILITY REPORTING ENABLED UP IN BASIC FUNCTIONS UP IN DATA RELIABILITY Friday 22-May-87 08:12 105 106 107 08 SEQ 0003 2.4.1 2.4.2 SYSTEM CONFIGURATION TEST EXECUTION TIMES ERROR INFORMATION - ERROR #1 - COMMAND PACKET ADDRESS IS NOT ON A VNEaWN 1. s s o W W ERROR REPORTING o 3.1 ERROR #2 - TSOS NOT READY ERROR 03 ERROR 04 3.1.6 3.1.7 3.1.8 3.1.9 3.1.10 3.2 MODULO 4 BOUNDRY - NO RESPONSE ERRORS NO INTERRUPT ERROR SPECIAL CONDITION ERRORS 3.1.5.1 3.1.5.2 3.1.5.3 3.1.5.4 3.1.5.5 3.1.5.6 3.1.5.7 3.1.5.8 ERROR ERROR ERROR ERROR 913 #14 €15 #16 #17 ERROR ERROR ERROR ERROR OR ERROR ERROR ERROR - 05 96 #7 #8 #9 #10#11#12- TCCO, TCCl, TCC2, TCC3, TCC4, TCCS, TCC6, TCC7, UNDEFINED SPECIAL CONDITION ATTENTION CONDITION TAPE STATUS ALERT FUNCTION REJECT RECOVERABLE ERROR RECOVERABLE ERROR UNRECOVERABLE ERROR FATAL SUBSYSTEM ERROR RFC NON-ZERO ERROR RETRY LIMIT EXCEEDED TOO MANY INTERRUPTS CAPSTAN RUNAWAY DATA COMPARE ERRORS ERROR HALTS PERFORMANCE REPORT TEST SUMMARIES 1 - BASIC FUNCTIONS TEST 2 - DATA RELIABILITY ' 3 - WRITE COMPATABILITY/WRITE UTILITY READ COMPATABILITY/READ UTILITY F -l v 3.0 VN auie- 09 Page 3-1 m MACRO V0S.03 [7;] - D1 TSVOS DATA RELIABILITY TEST S - RANDOM/OPERATOR SELECTED COMMAND SEQUENCE DEVICE INFORMATION 6.1 6.2 6.3 GENERAL @-BUS INTERFACE SPECIFICATIONS BIT DEFINITIONS FOR TSVOS/TSOS REGISTERS 6.3.1 6.3.2 6.3.2.1 6.3.3 6.3.4 TSVOS5/TS0S REGISTER SlmRY TSVOS STATUS REGISTER (TSSR) TSVOS EXTENDED DATA BUFFER REGISTER (TSDBX) EXTENDED STATUS REGISTER O (XSTATO) EXTENDED STATUS REGISTER 1 (XSTAT1) El TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 Page 3-2 6.3.5 6.3.6 6.3.7 SEQ 0004 EXTENDED STATUS REGISTER sXSTATZ) EXTENDED STATUS REGISTER 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. A DATA RELIABILITY 1.1.2 STRUCTURE OF PROGRAM THIS DIAGNOSTIC IS A SINGLE PROGRAM FROM THE STANDPOINT OF THE DIAGNOSTIC USER, BUT IT CONTAINS A CONTROL MODULE RELEASED INDEPENDENTLY AS A DIAGNOSTIC SUPERVISOR. - DIAGNOSTIC SUPERVISOR S F1 = TSVOS DATA RELIABILITY MACRO V0S5.03 Fridey 22-May-87 08:12 219 ' 221 i 220 222 223 555 Page 3-3 SEQ 0005 ' ¢ [} XXDP « ' ] : DUPED: v unaisiiii 226 FREE MEMORY SPACE FOR WR/RD BFRS OR OTHER PUROSES 5233 SUPERVISOR. 227 228 g‘% 233 23 IS ALLOCATED BY THE SUPERVISOR ON REQUEST OR CHOOSEN BY PROGRAMMER TO RESIDE BETWEEN THE DIAG AND THE 1.1.4 DIAGNOSTIC INFORMATION ke 1.1.4.1 SCOPE 236 THIS DIAGNOSTIC CAN TEST ONE CONTROLLER AND UP TO 2 DRIVES. THE 2 DRIVES 239 THERE ARE S TESTS IN THIS PROGRAM: gg ARE ASSIGNED LOGICAL DRIVE NUMBERS O - 241 242 243 244 TEST 1 - BASIC FUNCTIONS. TEST 2 - DATA RELIABILITY TEST 3 - WRITE COMPATABILITY/WRITE UTILITY. TEST 4 - READ COMPATABILITY/READ UTILITY. 245 22:; 1 BY THE DIAGNOSTIC. TEST S - RANDOM/OPERATOR SELECTED SEQUENCE UTILITY. 1.1.4.2 ERROR RECOVERY 249 ERROR RECOVERY IS PERFORMED ON READ, WRITE AND WRITE TAPE MARK FUNCTIONS g PROCEDURES, 250 251 252 255 25 UNLESS ERROR RECOVERY IS INHIBITED 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 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: 258 259 261 1. FEDIA/OPERATIONAL SELECTIVE ALGORITHM 2. OPERATIONAL ALGORITHM BY DEFAULT THE DIAGNOSTIC SELECTS THE FIRST ALGORITHM TO IDENTIFY 264 265 TO SELECTANSWER THE SECOND ALGORITH: 'Y’ TO CHANGE SW (L) ? 222§ 268 268 269 3.7’5 4 275 MEDIA RELATED WRITE ERRORS FROM OPERATIONAL ONES. ANSUER *N" 10 BAD TAPE SPOT DETECTION (L) Y I ? IF ERROR RECOVERY IS INHIBITED, THE LATTER QUESTION IS NOT ASKED AND BOTH ALGORITHMS ARE BYPASSED. 1.1.4.3.1 MEDIA/OPERATIONAL SELECTIVE WRITE-ERROR-RECOVERY ALGORITHM score THIS ALGORITHM IDENTIFIES MEDIA RELATED WRITE ERRORS FROM i Gl TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 Page 3-4 OPERATIONAL ONES. ALGORITHM A WRITE RETRY SUBROUTINE IS CALLED BY THE RECOVERABLE ERROR SUBROUTINE WHICH IS ENTERED UPON DETECTIION OF A WRITE RECOVERABLE ERROR. IF?I%gTE 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 A RECOVERABLE WRITE ERROR IS LOGGED AT THAT RECORD NUMBER. IF ANY OF THE 4 REWRITE ATTEMPTS FAIL, THE ROUTINE WILL ERASE THE BAD RECORD, AND LO BAD SPOT AT THAT RECORD NUMBER Tl-E ROUTINE UILL THEN ATTEMPT TO WRITE THE RECORD AGAIN 3 INCHES FURTHER DOWN TAPE AND RETRY THIS SEQUENCE 4 TIMES, Fm UP TO 4 REPEATS EACH. IF A RECORD CANNOT BE WRITTEN WITHOUT RECOVERABLE ERRORS THEN THE ROUTINE WILL ERASE THE RECORD AND AFTER 4 RETRIES, REPORT RETRY FAILED ON BAD SPOT. THE RECOVERABLE ERROR SUBROUTINE THEN CONTINUES TO CALL THE WRITE RETRY SUBROUTINE, WHICH REISSUES THE GROUP OF 4 RETRIES, UNTIL THE RECORD IS RECOVERED OR 20 BAD SPOTS HAVE BEEN LOGGED . TWENTY (20) BAD_SPOTS MAXIMUM ARE ALLOWED PER BOT TO EOT PASS OF TAPE. WHEN 20 BAD SPOTS HAVE BEEN LOGGED, WETHER ON THE SAME RECORD NUMBER OR NOT, TAPE_IS CONSIDERED DEFECTIVE: AND THE UNIT IS REWOUND, DURING THE RECOVERY PROCESS, POSITIONING A BAD TAPE OVERFLOW MESSAGE IS PRINTED THEN DR(PPED IT IS NECESSARY TO PERFORM SEVERAL TAPE OPERATIONS: SPACE REVERSE, ERASE. IF A POSITION ERROR IS DETECTED IN THE STATUS WORD DURING THOSE OPERATIONS, THEN THE RECOVERY ATTEMPT IS AN APPROPRIATE UNRECOVERABLE ERROR MESSAGE IS PRINTED AND THE UNIT IS DROPPED. ALL BADLY WRITTEN RECORDS LOGGED WITH RECOVERABLE ERRORS ARE ERASED UNTIL RECOVERED, INCLUDING THE RECORD AT THE 20TH BAD SPOT SO THAT ALL RECORDS LEFT ON TAPE ARE KNOWN GOOD WRITTEN RECORDS. BAD_SPOTS ARE ERASED WITH ERASE GAPS FROM 3 TO 12 INCHES PER RETRY GROUP. UP TO 20 FEET OF ERASE GAP COULD RESULT WHEN RETRYING TO RECOVER A SINGLE RECORD. THAT LONG STRETCH OF BAD TAPE WOULD THEN BE LOGGED WITH 20 BAD SPOTS AT SAME RECORD NUMBER AND THE TAPE CONSIDERED DEFECTIVE. BAD SPOTS REPORTS IF THE PRINTING OF RECOVERABLE ERRORS IS ENABLED, IDENTIFIED AS THEY ARE DETECTED, THE BAD SPOTS ON TAPE ARE SINCE THE BAD RECORDSARE ERASED UNTIL RECOVERED, "E BAD SPOT ACTUALLY PRECEDES THE RECORD NUMBER HAT IDENTIFIE S IT HE NUMBER OF REPEATS AND RETRIES ATTEMPTED IS PRINTED, FROM WHICH THE LEPGTH OF ERASE GAPS CAN BE DETERMINED: 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 EOT TAPE PASS" ONLY. FOR THIS PURPOSE, A “TAPE PASS" IS A WRITE PASS FROM BOT TO EOT, OR FROM H1 TSVOS DATA RELIABILITY 333 334 LL THE TESTS REQUESTED 335 MACRO V0S5.03 Friday 22-May-87 08:12 Page 3-S SEQ 0007 B8OT TO WHERE THE DIAGNOSTIC IS HALTED BEFORE REACHING EOT. DON'T CONFUSE THIS WITH A PASS BY THE SUPERVISOR WHICH IS DEFINED AS A RUN THROUGH A ON ALL UNITS SELECTED. THOSE PASSES ARE IDENTIFIED AS "PASS" AND "EOP". THE NUMBER OF unzre RETRIES, CUHULATIVE FROM PASS TO PASS IS A GLOBAL COUNT OF HOW MANY TIMES THE GROUP OF4 RETRIES HAS BEENCALLE THE NUMBER OF WRITE RECOVERABLE ERRORS EXCLUDES BAD TAPE SPOTS AND REFLECTS THE SPECIFICATIONS OF THE HARDWARE UNDER TEST TO CLEAR CUMULATIVE COUNTS, ANSWER 'Y’ TO: CLEAR COUNTERS (L) Y THE BAD TAPE SPOTS COUNT IS THEN CLEARED WHEN WRITING THE TAPE FRW ‘BOT. 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: CVTSE SFT ERR_ 00009 ON UNIT 00 TST 002 SuUB 000 PC: 012100 RECOVERABLE ERROR WRT CMD FAILED - UNIT O PASS: 1 RECORD: 6 PREVI%NS cMD IJAS WRT TeC CMOPK 100205 XST1 XST2 TSSR 100210 4 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 CVTSE SFT ERR_ 00009 ON UNIT 00 TST 002 SUB 000 PC: 012100 RECOVERABLE ERROR WRT CMD FAILED - UNIT O PASS: 1 RECORD:10210 PREVIOUS CMD WAS CMOPKT 100205 026600 000000 004000 XST0 TSBA WRT RFC 002406 000000 XST1 XST2 000350 000002 100010 RECOVERED ON RETRY ¢ 1 TSSR 100210 XST3 000000 TCC 4 XST4 11 TSVOS DATA RELIABILITY 390 391 392 393 394 MACRO V0S.03 Friday 22-May-87 08:12 Page 3-6 SEQ 0008 t 08>PRI UNIT O PASS: 1 RECWD:10210 BYTES WRITTEN 0,272,279,691 3 397 BYTES READ REV 0,301,120,381 WRT ‘04001 WRITE RETRIES 39S 398 399 BYTES READ REV 0.301.123.654 RECOVERABLE ERRORS UNRECOVERABLE ERRORS 3% 1 0 0 0 RDF 0 0 2 BAD SPOTg THIS6TAP€ PASS PRECEDING RECORD #: 404 405 406 SPEC COND 2 DR> 408 409 THIS EXAMPLE SHOWS: RECORD RECOVERED ON 2ND RETRY GROUP 407 410 411 412 413 :i; i1 :is HARD 0 FATAL 0 COMPARE 0 HE 2 BAD SPOTS RESIDE IN A 18 INCH ERASE GAP BETLEEN RECORDS S AND 6 RECCRD 10210 RECOVERED ON 1ST RETRY OF 4 GOOD REPEATS 3 WRITE GROUP RETRIES ATTEMPTED, RESULTING IN: 1 RECOVERABLE WRT ERR FRm RECORD 10210 2 BAD SPOTS BETWEEN RECORDS S AND 6 1.1.4.3.2 OPERATIONAL WRITE-ERROR-RECOVERY ALGORITHM 420 421 WHEN THIS ALGORITHM IS SELECTED, THE TSVOS WRITE RETRY com»o IS ISSUED UP TO 16 TIMES OR UNTIL RECORD IS RECOVERED 423 OF A SPACE REVERSE OVER THE BAD RECORD 425 DOES NOT ALLOW THE DETECTECTION OF BAD SPOTS ON TAPE. 428 :2930 IF RECORD CANNOT BE RECOVERED AFTER 16 WRITE RETRY COMMANDS, A RETRY LIMIT EXCEEDED IS FLAGGED AND UNIT IS DROPPED. 422 424 :S-‘} 431 :g“; 434 A IRITE RECOVERABLE ERROR. THE WRITE RETRY COMMAND CWSISTS OF TAPE AND REWRITE OF THE RECORD. 3 INCHES THEREFORE NO BAD TAPE SPOTS STATUS IS PRINTED. 1.1.4.4 DIAGNOSTIC TIMING ADJUSTMENT A NUMBER OF SUPERVISOR TIMING DELAY MACROS, 435 DELAYS, 437 INTO AN INLINE NESTED LOOP PAIR. 436 AN ERASE OF THAT COMPOSITE COMMAND KNOWN AS WATCH DOG ARE CALLED BY THE DIAGNOSTIC TO WAIT FOR VARIOUS COMMANDS COPLE*ICN. THESE DELAYS ARE NOT CALIBRATED AND SIMPLY EXPANDS THE COUNT FOR THE OUTER LOOP 438 COMES FROM THE VARIABLE ARGUMENT SUPPLIED BY THE DELAY CALLS. 440 44) ELEMENT “L4$DLY", AS THE DIAGNOSTIC IS RUN ON DIFFERENT CPU'S, THESE DELAYS WILL 444 445 IF TIME-OUT OCCURS WHEN NO APPARENT MALFUNCTIONS IN THE TAPE UNIT IS EVIDENT, ALL TIMINGS OF THE DIAGNOSTIC MAY BE ADJUSTED 439 zg 446 THE COUNT FOR THE INNER LOOP COMES FROM THE FIXED "HEADER" VARY IN LENGTH WITH MEMORY SPEED. TO MATCH MEMORY SPEED AND NOT RESULT IN TIME-OUTS, BY PATCHING | J1 TSVOS DATA RELIABILITY MACRO V05.03 Friday 08: riday 22-May-87 ay 12 P Page 3-7 SEQ 0009 447 THAT FIXED DELAY ELEMENT 449 450 A PRESET COUNT OF SO0 RESIDES AT “HEADER" SECTION. 453 469 473 "“L$DLY" IN LOCATION 2116 OF THE 1.2 SYSTEM REQUIREMENTS 460 461 462 463 466 "L$DLY". PDP-11/23 PROCESSOR WITH 32K OR MORE OF MEMORY CONSOLE DEVICE (VT52,LA36,ETC.) PROGRAM LOAD DEVICE TSVO5/71S05 1.2.2 SOFTWARE REQUIREMENTS DIAGNOSTIC SUPERVISOR 1.3 RELATED DOCUMENTS AND STANDARDS 475 DIGITAL EQUIPMENT CORPORATION DOCUMENTS: 478 1. 481 2. 479 485 486 487 488 491 494 496 3. 4. CIQPMAQO XXDP. DATE: 503 MANUAL; DOCUMENT NUMBER AC-S296A-AC TSVOS TRANSPORT SUBSYSTEM USER'S GUIDE; DOCUMENT NUMBER EK-TSV0S-UG-001 DATE: AUGUST 1982 TSVOS TRANSPORT SUBSYSTEM TECHNICAL MANUAL; DATE: AUGUST 1982 DOCUMENT NUMBER EK-TSVOS-TM-001 TSVOS TRANSPORT SUBSYSTEM INSTALLATION MANUAL; DOCUMENT NUMBER EK-TSVOS-IN-001 DATE: AUGUST 1982 1.4 DIAGNOSTIC HIERARCHY PREREQUISITES ORDER OF HOST CPU DIAGNOSTIC USAGE: 1) CONTROL LOGIC PROGRAM - ALL TESTS. 498 300 PROGRAMMER'S 14 JULY 1980. (VTSA,VTSB,VTSC,VTSD) 2) DATA RELIABILITY PROGRAM: A) B8) BASIC FUNCTION TEST. DATA RELIABILITY TEST. K1 TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 Page 3-8 1.5 ASSUMPTIONS THE HARDWARE OTHER THAN THE SUBSYSTEM BEING TESTED IS ASSUMED TO WORK PROPERLY. FALSE ERRORS MAY BE REPORTED IF THE PROCESSOR, MEMORY, ETC., DO NOT _FUNCTION PROPERLY. VTSA,VTSB,VTSC, AND VTSD HAVE ALL SUCESSFULLY RUN WITHOUT ERRORS. L1 TSVOS DATA RELIABILITY MACRO V0S.03 gig O 519 555(1) S22 LR 525 526 Friday 22-May-87 08:12 Page 4 SEQ 0011 2.0 OPERATING INSTRUCTIONS R e A R SSS; e T T e DR A 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. THE XXDP. USER'S MANUAL HAS MORE DETAILS. 552930 COMMAND EFFECT S31 532 START RESTART START THE DIAGNOSTIC FROM AN INITIAL STATE START THE DIAGNOSTIC WITHOUT INITIALIZING 534 PROCEED S33 CONTINUE S35 CONTINUE AT TEST THAT WAS INTERRUPTED (AFTER tC) CONTINUE FROM AN ERROR HALT 536 EXIT ADD RETURN TO XXDP+ MONITOR (XXDP. OPERATION ONLY!) 538 DROP DEACTIVATE A UNIT DISPLAY FLAGS BY THE DIAGNOSTIC) TYPE A LIST OF ALL DEVICE INFORMATION TYPE THE STATE OF ALL FLAGS S37 539 Ss:z YOU MAY, e S B e FOR EXAMPLE, S% AC-S296A-AC. 559 "STA" INSTEAD OF THE TSVOS DIAGNOSTIC IS A PDP-11/23 PROGRAM 556 gg; TYPE PDP-11 PROGRAMMER'S MANUAL DIAGNOSTIC SUPERVISOR BOOT THE DIAGNOSTIC XXDP MEDIA CHMDLBO XXDP+ DL KNITN 28K S67 568 569 VTSEAOPIM)RS LOADED DIAG RUN-TIME SERVICES REV D. APR 79 CVTSE-D-0 TH.‘I; IS x COMPATIBLE “CIQPMAQ XXDP+ PROGRAMMERS MANUAL, NUMBER THE USER ENTRY IS IN QUOTES. BOOTED VIA UNIT O ENTER DATE (DD-MMM-YR): RESTART ADDRESS: 153726 S0 HZ? N " ccr> " LSI? <cr> S70 S71 SO ALL LOADING AND RUNTIME INSTRUCTIGNS CAN BE REFERENCED IN THE 560 S61 562 S63 S64 5522 "START", OPERATOR COMMANDS 552 553 CLEAR ALL FLAGS A COMMAND CAN BE RECOGNIZED BY THE FIRST THREE CHARACTERS. 5‘5467 S51 PRINT STATISTICAL INFORMATION (IF IMPLEMENTED ZFLAGS 545 R CONSIDERED TO BE ACTIVE AT START TIME PRINT 540 S41 542 548 ACTIVATE A UNIT FOR TESTING (ALL UNITS ARE . TYPE " enter date or just <cr> * "H" OR TSVOS DATA RELIABILITY UNIT IS TSVOS "H/L" FOR DETAILS M1 TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 Page 4-1 SEQ 0012 SWITCHES THERE ARE_SEVERAL SWITCHES ll'lICH ARE USED TO MODIFY swenv:son OPERATION. THESE SWITCHES ARE APPENDED TO THE LEGAL COMMANDS. ALL OF THE LEGAL SWITCHES ARE TABULATED BELOH WITH A BRIEF DESCRIPTION OF EACH. IN THE DESCRIPTIONS BELOW, A DECIMAL NUMBER IS DESIGNATED BY "“DDDDD". EFFECT /TESTS:LIST EXECUTE ONLY THOSE TESTS SPECIFIED IN THE LIST. LIST IS A STRING OF TEST NUMBERS, FOR EXAMPLE - /TESTS:1:5:7-10. THIS LIST WILL CAUSE TESTS 1,5,7,.8.9, 1o 10 /PASS : DDDDD /FLAGS :FLGS BE RUN., ALL OTHER TESTS WILL Nof BE’ EXECUTE DDDDD PASSES (DDDDD = 1 TO 64000) SET SPECIFIED FLAGS. /EOP : DDDDD REPORT END OF PASS MESSAGE AFTER EVERY /UNIiS:LIST TEST/ADD/DROP ONLY THOSE UNITS SPEC DDDDD PASSES ONLY. (DDDDD = 1 TO 64000) IN THE LIST. LIST EXAMPLE - /UNITS:0:5:10-12 USE UNITS 0,5,10,11,12 (UNIT NUMBERS = 0-63) EXAMPLE OF SWITCH USAGE: START/TESTS:1-5/PASS:1000/E0P: 100 THE EFFECT OF THIS COMMANT WILL BE: 1) TESTS 1 THROUGH S WILL BE EXECUT ED, 2) ALL UNITS WILL TESTED 1000 TIMES AND 3) THE ENR OF PASS MESSAGES WIL. BE PRINTED AFTER EACH 100 PASSES ONLY. SWITCH CAN BE_RECOGNIZED BY THE FIRST THREE CHARACTERS. FOR EXAMPLE, TYPE "/TES:1-5" INSTEAD OF "/TESTS:1-5". YOU MAY, EELW IS A TABLE THAT SPECIFIES WHICH SWITCHES CAN 8E USED BY EACH TESTS PASS FLAGS FLAGS ARE USED TO SET UP CERTAIN OPERATIONAL PARAMETERS SUCH AS N1 TSVOS DATA RELIABILITY 630 631 MACRO V0S.03 Friday 22-May-87 08:12 Page 4-2 SEQ 0013 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 ZF'.AGS COMMANDS, NO C S AFFECT THE STATE OF THE FLlGS* THEY REMAIN SET OR CLEARED AS SPECIFIED BY THE LAST FLAG SWITCH. FLAG HOE LOE EFFECT HALT ON ERROR - CONTROL IS RETURNED TO RUNTIME SERVICES COMMAND MODE LOOP ON ERROR IERs IBR+ INHIBIT ALL ERROR REPORTS INHIBIT ALL ERROR REPORTS EXCEPT FIRST LEVEL (FIRST LEVEL CONTAI ERROR TYPE, NUMBER, PC, TEST AND UNIT) IXE* PRI PNT BOE UAM ISR INHIBIT EXTENDED ERROR REPORTS ( THOSE CALLED BY PRINTX MACRO'S) DIRECT MESSAGES TO LINE PRINTER PRINT TEST NUMBER AS TEST EXECUTES “BELL” ON ERROR 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 LOT LOOP ON TEST *ERROR 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, T0 CAUSE THE PROGRAM TO LOOP ON ERROR, INHIBIT ERROR REPORTS AND TYPE A "BELL” ON ERROR, YOU MAY USE THE FOLLOWING STRING: /FLAGS:LOE:IER:BOE 2.1 HARDWARE PARAMETERS ON A “"N" RESPONSE TO_"CHANGE W?" THE DIAG SHALL RUN ASSUMING ONE tNIT AT TSDB = 172520 WITHA VECTOR = 224 AND DRIVE=0. ON A "Y* RESPONSE TO "CHANGE HW?* QUESTION, THEN THE FOLLOWING QUESTIONS WILL BE ASKED ON A START COMMAND. THE VALUE LOCATED TO T’E LEFT OF THE QUESTION MARK IS THE DEFAULT VALUE THAT WILL BE TAKEN ON A CARRIAGE RETURN RESPONCE. TSDB ADDRESS (0) 172520 ? VECTOR (0) 224 ? SELECT DRIVE 0-1 (0) ? Be TSVOS DATA RELIABILITY 687 688 689 690 MACRO V0S5.03 Fridey 22-May-87 08:12 Page 4-3 SEQ 0014 THE VALIDITY OF THESE PARMTERS CAN BE CHECKED BEFORE RUNNING THE TESTS BY SETTING THE FLAG "ADR" ON A STA, RES OR CON COMMAND. THE SO CALLED AUTO DROP CODE SHALL THEN BE EXECUTED AFTER THE INIT CODE AND BEFORE THE HARDWARE TESTS ARE RUN. OF THE TSDB(S). IF NO RESPONSE, WITH THE FOLLOWING MESSAGE: T CODE _FIRST TESTS THE ADRRESS IT DR(PS ‘N'E UNIT(S) IMMEDIATELY BUS TRAP AT XXXXXX ( XXXXXX = TSDB AD INTERFACE BAD OR NOT SET TO ABOVE ADDRESS. ON A RESPONSE FROM THE INTERFACE, ON-LINE ARE DROPPED IMMEDIATELY. BE RUN ON RESPONDING UNITS. IF THE "ADR" FLAG IS NOT SET, DRIVE IS CHECKED. ) THE UNITS THAT ARE NOT READY OR NOT THE HARDWARE TESTS SHALL THEN THE READY AND OFF-LINE STATUS OF THE A MESSAGE SHALL BE PRINTED EVERY S0 OF TEN TO WARN THE (PERATW W DRIVES BEING NOT READY OR OFF-LINE. SHALL BE DROPPED AFTER A REASONABLE AMOUNT OF TIME. THESE DRIVES 2.2 SOFTWARE PARAMETERS %S%LOL‘O\!IINDGA %EAS;I%&ES?:STASKEEWHT?N ONE ANSWERS YES TO THE CHANGE SOF TWARE THEY ALLOW FLEXABILETY IN THEWAY THE PROGRAM BEMAVES. CLEAR COUNTERS (L) Y ? RESET RANDOM VARIABLES (L) N ? PRINT RECOVERABLE ERRORS (L) N ? HALT AFTER EACH CMD (L) N ? INHIBIT RECOVERY (L) N ? BAD TAPE SPOT DETECTION (L) Y ? DISABLE INTERRUPTS (L) N ? INHIBIT RFC ERROR REPORTS (L) N ? CHANGE CMD SEQUENCE (L) N ? (SEE NOTE1:) DEFAULT SWITCH SETTINGS (L) Y ? 100IPS (L) N ? WRITE BUFFERING (L) N ? READ BUFFERING (L) N ? Answering no to the defauit switch question will ceuse the 100 ips question to be esked. Answering yes to the 100 ips question will inhibit the last TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 744 Page 4-4 SEQ 0015 two questions. Answering no to the 100 ips question will ceuse the write buffering question to be asked. Answering yes to the write buffering question will last question. Answer | inhibit the no to the write bu"cri:g auestion will cause the read buffering question to be NOTEl: asked. 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: CHARACTERISTICS CODE (0) 40 ? CMD/2 (D) 13 7 BRF COUNT (D) 1 ? ® OF OPERATIONS (D) 1 PATTERN (D) 7 ? (0,20,40,200) (OCTAL) (1-27)" ? (DECIMAL) (DECIMAL) 0-8) goecxm; DECTIMAL 1-2¢ DECIMAL (0-8) (DECIMAL) 51553 oecxm.; 51-32«) CMD/4 (D) 51-273 3 ? ¢ OF OPERATIONS (D) 32000 CMD/S (D) 2 ? ? ? PATTERN (D) 7 cMD/6 (D [ o ? (D) 32000 ? a3 Y12 OF OPERATIONS (D) 1 PATTERN (D) 7 W’Zofm ? ? 7. 2 [ 27, ? ? (D) 2048 ? (DECIMAL) ATIONS (D) 32000 PATTERN (D) 7 ? (DFCIMAL) 1-32K) (DECIMAL (0-8) DECIMAL ) 21-21) 1-2¢) Eoecxmg (DECIMAL 0-8) (DECIMAL) 1-;5'( oegxm. (DECIMAL) 1-27; ® OF OPERATIONS (D) 32000 ? CMD/8 (D) (1-32k) (1-32K) D) 2048 ? PATTERN (D) 7 oecxm; (1-27) COuNT so 2048 ? ® OF OPERATIONS (DECIMAL) (1-27) (1-2¢) ¢ OF OPERATIONS (D) 32000 ? PATTERN (D) 7 (DECIMAL (0-8) PATTERN (og 77 ;o) 2048 ? ioecxm. 1-32K) CMD/3 (D) & ? BRF COUNT (D) 2048 ? C (DECIMAL) sx-zx) DECTMAL 1-32K) (DECIMAL (0-8) (DECIMAL) 1-21; ? Soecxm 1-& DECIMAL 1-32¢) 0-8) ioccxm DECIMAL ) <) AS THE FIRST COMMAND IN THE SEQUENCE TABLE. IF A DIFFERENT CHARACTERISTIC IS DESIRED, THE OPERATOR SHOULD ENTER THAT CHARACTERISTIC . A TOTAL OF 7 COMMANDS MAY BE ENTERED IN ADDITION TQ ive sew«nncr%qcs COMAND, COMMANDS, I THE OPERATOR WISHES 10 LESS AN END COMMAND MUST BE ENTERED AND THEN A CONTROL Z (tZ) CAN BE ENTERED TO TERMINATE SOF TWARE DIALOGUE. 2.2.1 COMMAND LIST FOR USE IN SOF TWARE DIALOGUE. Friday 22-May-87 08:12 CODE SEQ 0016 COMMAND DESCRIPTION 1= e = 3 = DRI ROF RDR DRIVE INITIATE. READ FORWARD. READ REVERSE. S = WV WRITE/VERIFY. IE. WRITE N RECORDS; READ REVERSE AND CHECK N _RECORDS OF DATA; READ FORWARD AND CHECK N RECORDS. SPACE RECORDS FORWARD. SPACE RECORDS REVERSE. REVERSE, IE. SPACE FWD, READ REV. 4 = WRT 6 = SRF = SRR 7 8 = RNR 9 = RNF WRITE. 10 = RPF 11 = RPR = WRR 12 13 = RWD 14 = MBR = WTM 15 16 = WTR 17 = SFF 18= SFR 19= GES gg'ERS READ PREVIOUS FWD, IE. SPACE REV, READ FWD. READ PREVIOUS + IE. READ REV, SPACE FWD. WRITE RETRY. REWIND. ESSAGE BUFFER RELEASE. 23 = SET DEVICE cuuucmusuc - & 25 = SCH 27 = WRITE 7 EAN . TAPE WHERE BRF =200 = ENABLE SKIP TAPE MARKS s;op (STOPn'f Loéxcu eon RELEASE INTERRUPTS. SV0S5/7TS0S PROGRAMMING SPECIFICATIDSJEFOR DESCRIFPTION. uwe 26 = DLY muzsoernzg"m i'éWFIEL D. NUMBER OF JUMPS IS ENTERED IN THE ¢ OF OPERATIONS FIELD DELAY “N*" MILISECONDS WHERE N IS DEFINED IN END DATA PATTERN LIST FOR USE IN SOF TWARE DIALOGUE. DESCRIPTION. INCREMENTING PATTERN. O - 377, 8 (%] z2g é S NO PATTERN GENERATION. 35> IN A FIELD OF “0"'S. L_IF A FIELD OF “1"'S. ITS HITH ALTERNATE BYTES COMPLIMENTED. L pX PATTERN ¢ & 2.2.2 Page 4-5 5 MACRO V0S.03 ®NONE WO TSVOS DATA RELIABILITY E2 TSVOS DATA RELIABILITY MACRO V0S.03 Fridey 22-May-87 08:12 2.3 EXAMPLES OF Pege S SOFTWARE DIALOGUE OUNITS (D) ? TSDB ADDRESS (0) 172520 ? VECTOR (0) 224 ? SELECT DRIVE 0-1 (0) ? IN ADDITION, ON A START, RESTART OR CONTINUE THE SUPERVISOR REQUESTS CH"GES TO THE SOF TWARE OPERATING PARAMETERS, AS FOLLOWS: CHANGE SW (L) 2.3.1 ? BASIC FUNCTION AND DATA RELIABILITY WITH ALL ERROR REPORTING ENABLED RECEIVE PROMPT (DR>) ENTER STA/TES:1-2<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE : CHANGE SW (L) ? CLEAR COUNTERS (L) N ? RESET RANDOM afl%mss ) N)? CHANGE CMD Gisgt (L)N? DEFALT SUI% TINGS (L) ¥ ? SET UP A SCOPE LOOP FOR A FAILURE IN BASIC FUNCTIONS. ) ) ) ) RECEIVE PROMPT (DR>) ENTER STA/TES:1/FLA:LOE:IER:ISR: IDU<CR> ANSWER HARDWARE QUESTIONS. 1 PROCEED WITH THE FOLLOWING DIALOGUE : CHANGE SW (L) ? CLEAR COUNTERS (L) N SET RANDOM VMI&ES (L) N ? ABL. moa BAD DISABLE INTERRUPTS (L) N ? Fridey 22-May-87 08:12 Page S-1 SEQ 0018 INHIBIT RFC ERROR REPORT (L) N? CHANGE CMD SEQUENCE (L) N ? DEFAULT 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) B) C) D) RECEIVE PROMPT (DR>) ENTER STA/TES:5/FLA:IER:ISR:IDU/EOP:1000<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE: Y<CR> Y<CR> N<CR> N<CR> N<CR> N<CR> N<CR> HALT AFTER EACH CMD (L) INHIBIT RECOVERY (L) N BAD TAPE SPOT WECTIN (L) Y ? DISABLE INTERRUPTS (L) N INHIBIT RFC ERROR REPORT (L) N? CHANGE CMD SEQUENCE (L) N ? CHARACTERISTICS CODE (0) 40 ? &p/g (D Y<CR> Y<CR> Y<CR> 40<CR> ? 40) 2048 ? 13<CR> (REWIND) 4<CR> (WRITE) 1<CR> 1<CR> 1<CR> ® OF OPERATIO (D) 10 NS ? PATTERN (D) 7 ? ? IONS (D) 10 ? 27<CR> (END) PDP11/23 MOS MEMORY LA36 TSVOS/7S05 TEST EXECUTION TIMES (2400 FT. TAPE) A 22 MINUT ANDOM/OPERATOR SELECTED SEQUENCE 3 22 g:SIC FUNCTIONS - 30 SEC 3 3 2.4.2 3 B MACRO V0S.03 58 Fe TSVOS DATA RELIABILITY -20 MINUTES PER PASS. ALL EXECUTION TIMES ARE SHOWN FOR ONE DRIVE OPERATION. G2 TSVOS DATA RELIABILITY MACRO VO0S.03 Fridsy oy 22-May-87 08:12 Page v i 5-2 SEQ 0019 3.0 ERROR INFORMATION ALL_ERROR REPORTS EXCEPT FOR ERRORS #1 AND #17 INCLUDE A DUMP OF THE FOLLOWING INFORMATION: ERROR &, TEST #, SUBTEST o, COMMAND. PREVIOUS COMMAND, mosam coumen PASS coum OF UNIT o, RECORDS raon 307 RECORD fieno h-c COMMAND PACKET, TSSR, TCC, TSBA AND THE Exrl-:meosflws REGISTERS (SEE 2.3i4 #oa LIST OF COMMANDS) STANDARD ERROR REPORT FORMAT: CVTSE SFT ERR XXXXX TST XXX (ASCII ERROR MESSAGE) XXX CMD FAILED - UNIT X PREVIOUS CMD WAS XXX CMDPKT XUXARX XXXXXX XXXXXX XAXXXX XSTO XUXAAX PASS: TSBA RFC XAAAAX XAXXXX XST1 AAKAXX XST2 XAXAXK XST3 XAXXXX AXAAXX TSSR SUB XXX PC: XXXXXX XXXXX RECORD: * RECORD READ: TCC XXXXX XXXXX » X XST4 XXXXXX * 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 1551 2, IF DIAGNOSTIC IS RESTARTED OR CONTINUED, RECORD COUNT Is T 10 ZERO ALTHOUGH THE TAPE IS NOT REWOUND. THIS IS rccessmv BECAUSE THERE IS NO ACCURATE WAY TO DETERMINE ON WHAT RECORD COUNT OF WHICH UNIT THE DIAGNOSTIC WAS HALTED BEFORE RESTARTING OR com: NUING . IT IS susses ED THAT A “PRINT” BE REQUESTED WHEN HALTING DIAG T0 GET A PRINT OF THE RECORD COUNT WHEN HALTED. EXAMPLE OF AN ERROR REPORT: CVTSE 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 H2 TSVOS DATA RELIABILITY MACRO V0S5.03 Friday 22-May-87 08:12 Page 5-3 000371 XSTO 000350 ERROR #1 XST1 000002 XST2 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. EHIS é? ;TSYSTEH FATAL ERROR AND THE PROGRAM MUST BE RELOADED TO ERROR ¢#2 - TSOS NOT READY: BEFORE ANY COMMAND IS ISSUED TO THE TSOS, BIT IN THE TSSR IS CHECKED. REPORTS THE NOT READY ERROR. THE SUBSYSTEM READY IF THE SSR 1S NOT SET, THE PROGRAM THIS IS A FATAL DEVICE ERROR AND %Iwigiugésl. BE DROPPED FROM THE TEST SEQUENCE UNLESS THE IDUV ERROR #3 - NO RESPONSE ERROR: ONCE THE TSDB IS LOADED, THE TSOS HAS ONE MILLISECOND TO RESPOND OR THE PROGRAM REPORTS A NO RESPONSE ERROR. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST SEQUENCE UNLESS THE IDU OPTION IS USED. 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. SPECIAL CONDITION ERRORS: IF, DURING EXECUTION, AN INCIDENT OCCURS FORCING THE TSSR SPECIAL CONDITION BIT TO SET, THE PROGRAM WILL SELECT ONE OF g082"0" HANDLING ROUTINES, DEPENDING ON THE TERMINATION CLASS THE TERMINATION CLASS CODES IN THE TSSR ARE PROCESSED AS FOLLOWS WHEN SPECIAL CONDITION IS SET: ERROR 95 - TERMINATION CLASS CODE O, THE ERROR IS REPORTED, UNDEFINED SPECIAL CONDITION A HARD ERROR IS LOGGED AND THE PROGRAM PROCEEDS NORMALLY. .5.2 ERROR #6 - TERMINATION CLASS CODE 1, ATTENTION CONDITION THIS TCC INDICATES THAT THE DRIVE HAS UNDERGONE A STATUS CHANGE 12 TSVOS DATA RELIABILITY MACRO V0S.03 Fridey 22-May-87 08:12 Page S5-4 Ekkon RD ThE DEVIEE-ullL THE IDU OPTION I SEQ 0021 B DROPPED Fhom THE TEsT CYCLE ALESS 3.1.5.3 ERROR #7 - TERMINATION CLASS CODE 2, TAPE STATUS ALERT A STATUS CONDITION HAS eesn ENCOUNTERED THAT MAY HAVE SIGNIFICANCE TO THE PROGRAM, ans nnem»:; INCLUDE TMX, RLS, LET, RLL, EOT. ACTION TAKEN DEPENDS ON THE TES aexns EXECUTED. IF THE CONDITION IS UNEXPECTED ERROR 1S REPORTED AND A HARD ERROR IS LOGGED. »twéoca AM PROCEEDS NORMALLY. 3.1.5.4 ERROR #8 - TERMINATION CLASS CODE 3, FUNCTION REJECT THE SPECIFIED FUNCTION WAS NOT OFL m:nxm:o ILC, WE, ILA NBA. BITS OF INTEREST THIS IS A FATAL ARE DEVICE ERROR AND THE DEVICE WILL ée DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 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 1S RECOVERED, RETRY LIMIT EXCEEDED IS REPORTED AS DESCRIBED IN ERROR 914 BELOW. 3.1.5.6 ERROR #10 - TERMINATION CLASS CODE S, RECOVERABLE ERROR TAPE POSITION HAS NOT CHANGED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND ne-xssut THE ORIGINAL COMMAND. IF RETRY LIMIT IS REACHED BEFORE THE ERROR 1S necovenco 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. REWI 80 THE ONLY VALID RECOVERY PROCEDURE IS TO SEQUENCE AL CE ERROR AND THE FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. e b2 [l adad[STSToTe ST o-wu-t-:oSI8G LUK 1129 5.1.5.8 ERROR #12 - TERMINATION CLASS CODE 7, FATAL SUBSYSTEM ERROR THE SUBSYSTEM IS INCAPABLE OF PROPERLY PERFORMING Cms OR AT LEAST ITS INTEGRITY IS SERIOUSLY QUESTIONABLE. REFER TO THE FAT& AS§ FIELD IN THE TSSR KGISYEQ FOR ADDITIONAL INFORON ON D? ATAL ERROR. THE DEVICE WILL BE DROPPED FNO" THE TEST CYCLE ULESS THE IDU OPTION IS USED. Je TSVOS DATA RELIABILITY MACRO V0S.03 iizg Fridey 22-May-87 08:12 3.1.6 1141 Page 5-5 SEQ@ 0022 ERROR #13 - RFC NON-ZERO ERROR: IF, AFTER EXECUTION, T"E RESIDUAL FRAME COUNT IS NON-ZERQO, THE 1142 m IS REPORTED ANDA HARD ERROR IS LOGGED. THE PROGRAM THEN 1144 IS WTIM. 1143 S NORMALLY. 1145 1146 ii:z 3.1.7 THE REPORTING AND LOGGING OF THESE ERRORS ERROR €14 - RETRY LIMIT EXCEEDED: 1149 iigg ON A WRITE COMMAND THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 1152 O‘AREADCMTHISMISLNGEDASAWDM"Q 1155 iig") 3.1.8 ERROR #15 - TOO MANY INTERRUPTS: 1158 IF MORE THAN ONE INTERRUPT OCCURS PER COMMAND, iigg THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 1159 THIS ERROR IS REPORTED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM 1162 iigz 3.1.9 ERROR 916 - CAPSTAN RUNAWAY: 1165 CAPSTAN DID NOT STOP WITHIN QCCEPTu.E WINDOW AFTER LAST 1167 THE ERROR SO THAT THE oeno TRACK FIELD IN EXTENDED STATUS REGISTER 2 1166 COMMAND. 1168 1169 THE PROGRAM WILL ISSUE A GET STATUS COMMAND BEFORE REPORTING IJILL CONTAIN THE TACH COUNT WHEN THE TAPE STOPPED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM ii;‘l, THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 1172 ii;} 3.1.10 ERROR €17 - DATA COMPARE ERROR: 1175 IF A DATA VALIDATION ERROR OCCURS DURING A WRITE/VERIFY COMMAND, 1177 DATA WAS, AND PRINTS THE BYTE AND RECORD NUMBER THE ERROR OCCURRED 1179 THE TOTAL @ OF BYTES IN ERROR PER RECORD IS ALSO PRINTED. 1176 THE PROGRAM PRINTS “T THE DATA SHOULD MAVE BEEN AND WHAT THE 1178 ON. i%gg 1182 1183 -R 1186 HARD ERROR IS LOGGED AND THE PROGRAM PROCEEDS NORMALLY. TR iig: 1189 B el o 119% 119 1154 1195 ONLY THE FIRST 10 BYTES IN ERROR PER RECORD ARE PRINTED. e 3.2 ERROR HALTS A TR sy ERROR HALTS ARE SUPPORTED PER DESCRIBED IN THE PREVIOUS SECTION WITH /FLAG:HOE. THERE ARE NO OTHER HALTS. 4.0 PERFORMANCE REPORT i T T X PASS: XXXXX RECORD : XXXXX BYTES WRITTEN XXX, XXX, XXX, XXX BYTES READ REV XXX, XXX, XXX, XXX BYTES READ FWD fl!.m.xxx.m K2 TSVOS DATA RELIABILITY MACRO V05.03 Friday 22-Mey-87 08:12 Page 5-6 RECOVERABLE ERRORS UNRECOVERABLE ERRORS SPEC C XAXXX HARD XXXXX SEQ 0023 RDR WRT XXXXX XAAAX XXXAX XXXXX FATAL XXAXX ROF XAAXX AXAAX COMPARE XXXXX 5.0 TEST SUMMARIES s.1 BASIC FUNCTIONS. EXECUTES AND VERIFIES CORRECT COMPLETION OF ALL TSOS FUNCTIONS. SET cmn DRIVE INIT GET snws cmncreaxsf L B SUBTEST 1 - ES K2 NIVE INI ATE. SET CHARACTERISYIC 20. GET STA TUS SET CHARACTERISTIC 40. PRINT TSOS MICROCODE LEVEL (PASS 1 ONLY) REWIND. « REWIND. « REWIND AT BOT. SUBTEST 3 WRITE/VERIFY, WRITE/VERIFY PATTERN PATTERN PATTERN PATTERN PATTERN PATTERN WRITE/VERIFY PATTERN L A SUBTEST 2 1249 1251 SUBTEST S 3. 4, S, 6. 0. WRITE TAPE MARK, ERASE. WRITE TAPE MARK LR R B N YERRRRRER SUBTEST 4 1. 2. WRITE 10 RECORDS 0 TIMES APE MARK WRITE WRITE TAPE MARK RETRY, SPACE FILES. SPACE 2 FILES FORWARD SUBTEST 6 SPACE_RECORDS. REWIND. SPACE 7 RECORDS FORWARD. SPACE 7 RECORDS REVERSE. SPACE 7 RECORDS FORWARD. Page S5-7 SEQ 0024 SPACE 7 RECORDS REVERSE. . SUBTEST 8 A 3 WRITE RETRY. « REWIND. = WRITE DATA. WRITE RETRY, REV RETRY, READ REVERSE READ NEXT REVERSE. READ NEXT FORWARD. SUBTEST 9 A 3 SUBTEST 7 FWD RETRY, READ FORWARD. READ PREVIOUS FORWARD. READ PREVIOUS REVERSE. SUBTEST 10 CLEAN K CLEAN, « REWIND. SUBTEST 11 - ERITE/VERIfY SWAPPED DATA BYTES. WRITE/VERIFY EVEN LENGTH (RECORD 1). LR B WRITE/VERIFY 0DD LENGTH (RECORD 2). SET DATA BYTE SWAP, WRITE/VERIFY EVEN LENGTH (RECWD 3). WRITE/VERIFY ODD LENGTH (RECORD 4). CLEAR DATA BYTE SWAP. 0000 00 - READ SWAPPED DATA BYTES. READ REV RECORD 4 8 SUBTEST 12 0 Fridey 22-May-87 08:12 4 MACRO V0S.03 ® L2 TSVOS DATA RELIABILITY READ RECORD 3. READ RECORD 2. SET DATA BYTE SWAP, CLEAR DATA BYTE SWAP, READ FWD RECORD 3. READ FWD RECORD 4. M2 TSVOS DATA RELIABILITY 1294 1295 MACRO V0S5.03 Friday 22-May-87 08:12 5.2 Page 6 TEST 2 - SEQ 0025 DATA RELIABILITY. 1. 2. 3. THE TAPE IS INITIATED WITH THE FOLLOWING COMMANDS: SET CHARACTERISTIC 40 REWIND WRITE 64 RECORDS OF RANDOM LENGTH AND DATA WRITE AND READ 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. AT _THE END OF EACH PASS, A REWIND COMMAND IS ISSUED AND A PERFORMANCE REPORT IS PRINTED. NOTE: 3.3 TEST 3 - IF A RESTART COMMAND IS USED TO INITIATE TEST 1, THE INITIAL REWIND COMMAND IS NOT ISSUED. WRITE COMPATABILITY/WRITE UTILITY. REWINDS AND WRITES RECORDS OF RANDOM LENGTHS AND RANDOM DATA FROM BOT TO EOT. 5.4 TEST 4 - READ COMPATABILITY/READ UTILITY. REWINDS AND READS ENTIRE TAPE, FORWARD AND REVERSE. 5.5 TEST S - RANDOM/OPERATOR SELECTED COMMAND SEQUENCE. A DEFAULT SEQUENCE OF REWIND/WRITE/READ REV/READ FWD/REWIND OF ENTIRE TAPE IS EXECUTED WITH RANDOM PATTERN AND RECORD LENGTH OF 2048 BYTES. OPERATOR CAN ENTER SEQUENCE OF COMMANDS UP TO SEVEN IF THEY DON'T WANT DEFAULT SEQUENCE 6.0 DEVICE INFORMATION TABLES THE TSOS TAPE SUBSYSTEM CONSISTS OF A TSVOS Q-BUS CONTROLLER CONNECTED TO A TSOS DRIVE. FROM A SOF TWARE VIEWPOINT &HI‘S‘AS.?FIGUMTIN IS UNIQUE (FOR A @-BUS DEVICE) IN A NUMBER A. B. ONLY ONE REGISTER MAY BE WRITTEN - DATA BUFFER), TSDB (TAPE SYSTEM TWO REGISTERS MAY BE READ - TSSR AND TSBA (TAPE SYSTEM STATUS REGISTER AND TAPE SYSTEM BUS ADDRESS REGISTER), C. COMMANDS ARE NOT WRITTEN TO n: oaxve RATHER POINTERS ARE WRITTEN mxcu POINT T0 énwaAcxn WHERE IN CPU MEMORY, THE COMMAND POI THE TS0S SUBSYSTEM TO FETCH THE WORD(S S USED BY THIN THE COMMAND PACKET. THE WORDS WITHIN THE COMMANDPaam ARE: N2 TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 Page 6-1 COMMAND WORD LOW ORDER BUFFER ADDRESS HIGH ORDER BUFFER ADDRESS BYTE COUNT D. THE TSSR CONTAINS ALL THE INFORMATION WHICH WILL BE NECESSARY TO DETERMINE WHETHER: 1. THE DRIVE IS READY TO ACCEPT ANOTHER COMMAND 2. THE PREVIOUS COMMAND WAS EXECUTED WITHOUT ERROR. IF EITHER OF THE ABOVE CONDITIONS IS UNTRUE AT “JOB DONE“ OR “COMMAND INITIATION" TIME,IT MAY BE NECESSARY TO GET THE EXTENDED STATUS REGISTERS TO DETERMINE WHAT ACTION IS TO BE TAKEN AND/OR LOG THE ERROR INFORMATION. . EXTENDED STATUS REGISTERS ARE NOT_READ DIRECTLY FROM DRIVE REGISTERS; RATHER, "GET US*_ COMMAND IS ISSUED WHICH HILL CMSE THE TSOS TO TRANSFER EXTENDED STATUS INFORMATION TO THE MEMORY AREA POINTED TO BY THE BUFFER ADDRESS OF THE "“GET STATUS" COMMAND. THERE ARE FIVE EXTENDED STATUS REGISTERS. SEE .3. THE TSQB MUST BE WRITTEN WITH A DATO INS?MTIW T0 PROPERLY WRITE THE COMMAND POINTER CAUSE A MAINTENANCE FUNCTION. SUBSYSTEM INIT. A _DATOB WILL A DATO TO THE TSSR WILL CAUSE . COMMAND PACKETS MUST RESIDE ON DIVIDE BY FOUR BP&PWY g&’)OMIES (AS OPPOSED TO DIVIDE BY 2 OR WORD B3 TSVOS DATA RELIABILITY 1385 MACRO VOS.03 Friday 22-May-87 08:12 6.2 Pege 7 SEQ 0027 Q-BUS INTERFACE SPECIFICATIONS TSVOS/ TS0S INT, VECTOR UNIBUS ADDRESS REGISTER FIRST 224 772520 772522 TSBA/TSDB TSSR TSVOS DATA RELIABILITY MACRO V0S.03 Fridey 22-May-87 08:12 1339 6.3 1400 6.3.1 e BRI i‘OS 1405 i“% 1408 i:?g 1411 R eT SEQ 0028 BIT DEFINITIONS FOR TSVOS/TSO0S REGISTERS TSVOS/TS0S REGISTER SUMMARY e e 1S 14 13 12 11 10 ! ! O : 'SCE'RMR! 'NXH'MA'AI‘I' 'Alb'SSfl'(fl.' ' 0r'0r'O0! ¥ H H H Gecctecctennt '921'9200P19' P18 H H Sm==s 3 BT ' ! 3 $e"e® Ll ! H Il TTMK! H I 'RLS'LET'RLU e 'II.E'EF'ILC' g 1423 XST1 1! 1425 1426 '‘OPM! 'RCE! O 'O !' 'O xXST2 ¢ L H ! 3 ! 1428 1429 4 XST3 ¢ 1‘33 1434 i:g S --—— LR LR 1 ¢ e I 2 = i::z i:z 1449 1450 145) 1452 04 03 02 01 00 [ ' ' ' R y 3 ! H ! r e H 'TCI'TCO' 0! SILA'MOT'ONL! 3 ! H H L 0---0--—0 L R LR R LR R L R LR R R 0! H ! e I R o 0 I o R R ! LI R ' ' O 'RL7'RLE! H H L e I R R Ri 'IE !'VCK'PED! | H ! ! LR H R H H R g 'RLS'RLA'RLS! | H H ' L R R R ! 0 '0OPI! 'REV'TRF!OCK' H H |B ! H 0! ! H (Tsoax ox.ot. only M enabled by the Extended Features switch on the M7196) LR R Bl i I ! 'FCI'FCO'TQ' I R e I LR R K R 'H.K'BO'I'EOY' H 3 L R L R H H I o I o H 'RL2'RL1'RLO! ! H H H R I ' 0! 0 'RIB! H H ! LR R WRITE RETRY COUNT e I H A T o A ! ! TERMINATION CLASS CODES (TSSR TCO-TC2): 1439 144 1444 H !RCE! O ! O = 1 R LR R 'HSP! 0 1440 144) . MICRO DIAGNOSTIC ERROR CODE 1437 1438 H L L R XST4 ¢ H I XSTO ! ¢ 2 Semcbemctemct 1420 1432 0S ' 'SC 1‘1‘ 1431 06 ;ais: -5i2-6ii-5ié-aii-aia.aa;- et Posmpos 1po2ipiTiPie} ! ! ! ! ! H ! H (W/0)TSDBX 1‘” 07 (W/0) TSDB ! 1414 1415 i:ig lQ? 08 115! -Awus-iiév -iii-iié-i&i- -Aéamo'/-uoe-'AOS'AO"AOS' 1A02 1 A01 ' AOO ! (R/0) TSSR ! xm 09 (R/0) TSBA ! i:l 1419 Page 8 1 3 4 S 6 7 = ATTENTIOI CMITIO‘ = = FUNCTION REJECT RECOVERABLE ERROR - TAPE POSITION = ONE RECORD = = RECOVERABLE ERROR - TAPE NOT MOVED UNRECOVERABLE ERROR - TAPE POSITION LOST = TAPE STATUS ALERT DOWN TAPE FROM START OF F FATAL TION CONTROLLER ERROR FATAL CLASS CODES (TSSR FCO-FC1): O = MICRO DIAGNOSTIC FAILURE. SEE ERROR CODE BYTE (XST3) FOR FAILED FUNCTION. 1= SERVED 2 = NOT USED 3 = RESERVED FOR FUTURE USE ALWAYS READ AS A O TSVOS DATA RELIABILITY MACRO V0S.03 Fridey 22-May-87 08:12 Page 9 SEQ 0029 i 1:59’ 14 1459 i::?. 6.3.2 TSVOS STATUS REGISTER (TSSR) """""""""""""""" Q-BUS ADDRESS « 2 - READ ONLY 15 1‘1312 111009 oco7oe osonos ozoxoo 'SC 110 'SCE'"‘ 'W"BA'M?' 'M6'SSR'NL' -rcx-rco-rcz- 'TCI'YCO' 0 : i:g i:gg ' 1‘“ 1467 1468 l DI 1469 BIT NAME 147 14 13 & 1475 . e TCC s RS P S 1474 I I eI I 1476 1477 I I e WHEN SET, IMJICMES THAT DID NOT cafl. TE WIT KNT DETECTED OR EXCEPTION cownmu occunco SPECIFICALLY AN EITHER ERROR EXCEPTI(N C(N)ITIO!S CAN BE TAPE MARKS ON READ s REVERSE MOTION AND AT OOT EOT WHILE 1479 S'CONTAINED IN ThE YsSR meCIsT e n ¥ mmum cuss ax?c‘he 2.. 200 {:gi ERROR - SEE RMR). 1481 SOETHI'G OTHER THAN O (UNLESS RMR IS THE ONLY i“sm 14 - 1486 1487 33 SCE - OO 1488 RESERVED (ALWAYS A 0) Senity Check Error-Sets when the controller detects en gbnormal condition within itself during execution o' it's functions and the problem is serious enough i:gz 1492 e SPECIAL CONDITION. THE LAST COMMAND 1480 1491 e I DEFINITION INCIDENT. 1475 I I that @ Message Packet 12 RMR S 1493 is not stored. IIEGISTER MODIFICATION REFUSED. WHEN SET BY THE TSVOS A COMMAND POINTER IS LOADED INTO TSD8 AND SUB-SYSTEM READY (SSR) IS NOT SET. NOTE THAT 1454 1495 1496 THIS BIT CAUSES ?EC;ALCONDITION Olfl m TERMINATION CLASS (IN FACT, SOS NEVER SEES THIS ERROR) BEC ON A SY TEH WITH NO BUGS, THIS gIT MAY 1498 1499 NOT ENABLED, THIS BIT COMING UP IS AN INDICATION g‘nnfl A FATAL CONTROLLER ERROR OR A SOF TWARE 1497 COME UP ON AN ATTENTION MESSAGE. 1502 1503 1504 1505 11 1508 10 NXM 4/S 1306 1509 1510 1IF ATTNS ARE NON-EXISTENT MEMORY, SET BY THE TSVOS WHEN YRYI'G 0 TRANSFER 70 OR FROM A MEMORY L%ATIN \HICH DOES NOT EXIST MAY OCCUR WHEN FE Clei THE COMMAND PACKE ETCNIOG OR STORING DATA OR STORING THE n:ssnét NBA S "' NEED BUFFER ADDRESS. WHEN SET, THE 7505 NEEDS A MESSAGE BIT IS CLEARED DURING THE INDICATES BUFFER ADDRESS. SET THAT THIS CHARACTERISTICS e E3 TSVOS DATA RELIABILITY MACRO V0S.03 Friday 22-May-87 08:12 Pege 9-1 SEQ 0030 COMMAND (IF A GOOD ADDRESS WAS GIVEN). A17 BUS ADDRESS BIT 17. THE VALUES OF BITS Al17_AND l16 (BIY 08) TRACK 17 AND OF THE TSBA REGISTER. LOADED FROM TSDB BITS 01 00 WHEN TSDB IS WRITTEN. 07 Al6 BUS ADDRESS BIT 16. SSR SUB-SYSTEM READY. SEE A17 (BIT 09). WHEN SET, INDICATES THAT THE TSVOS/TSOS SUBSYSTEM IS NOT BUSY AND IS READY TO ACCEPT A NEW COMMAND POINTER. OFL $.1.3 OFF-LINE. OFF-LINE WHEN SET, AND INDICATES mn THE TS0S IS UNAVAILABLE FOR ANY TAPE MOTION THIS BIT CAN C A TERMINATION CLASS COMMANDS. OF 1 (ON ATTN INTERRUPT) OR 3 (RESWLTS IN NEF). FC1 FATAL TERMINATION CLASS 01. FC1 AND FCO TERMINATION CLASS CODE BITS ARE ALL SET o3 (BIY 04) ARE USED TO INDICATE THE TYPE OF FATAL ERROR WHICH HAS OCCURRED ON THE T7S0S. THESE BITS ARE VALID ONLY WHEN SC IS SET AND THE FCO FATAL TERMINATION CLASS 00. TC2 TERMINATION CLASS BIT 02. THE TC1 AND TCO BITS SEE FC1 mxs BIT, (111). (BIT 05). ALONG WITH AS AN OFFSET VALUE mvm AN ERROR OR xétvuouCONDITION OCCURS ON COMMAND. vuu:s OF THIS EACH OF FIELD THE EIGHT POSSIBLE REPRESENT A PARTICULAR CLASS OF ERRORS OR EXCEPTIONS. THE CONDITIONS IN EACH CLASS HAVE SIMILAR SIGNIFICANCE AND, AS OVERY PROCEDURE S. THE 0DE PROVIDED IN THIS FIELD Is EXPECTED T0 BE UTILIZED AS AN OFFSET INTO A DISPATCH TABLE FOR HANDLING OF 01 THE CONDITION. TC1 TERMINATION CLASS BIT 01. SEE TC2 (BIT 03). TCO TERMINATION CLASS BIT 00. SEE TC2 (BIT 03). NOT USED. @-BUS ADDRESS « 2 - WRITE ONLY SUBSYSTEM INITIALIZE (ALMWAYS A 0) F3 TSVOS DATA RELIABILITY MACRO V0S.03 Fridey 22-May-87 08:12 6.3.2.1 Page 10 TSVOS EXTENDED DATA BUFFER REGISTER (TSDBX) (1soex exists only when enab'ed by the Extended Features switch on the M7196) T COMMAND BIT. WHEN WRITTEN TO A 1,WITH SSR=1, 10O BOT THE TAPE TO BE REWOUND CAUSES THE rtasr TAPE RECORD T0 ae sxxweo fl-é SECOND RECORD 10 BE omeo STARTING AT LOCATION O 14-12 RESERVED (ALWAYS A 0) 11-08 P<21:18> COMMAND POINTER BITS 21-18. 07-00 RESERVED (ALWAYS A 0) cvumv SPACE WHEN THE TSDBX IS WRITTEN AND SSR=1, THE DATA IS LOADED INTO BITS 21-18 OF THE INTERNAL TSBA REGISTER. EXTENDED STATUS REGISTER O (XSTATO) 15 1‘ 13 ‘2 'T'K‘ UKSILETIKLO L el L LT BIT NAME TCC 1S TMK S.2 TAPE MARK DETECTED. WAS DETECTED DURING SET WHENEVER A A READ, SPACE SKIP cmnonsunesu.rurncmnctbe MARK OR WITE TAPE MARK RETRY COMMANDS. RECORD LENGTH SHORT. THIS BIT INDICATES THAT EITEEII fl( RECORD'S LENGTH WAS SHORTER THAN T S COMMAND WAS NATED ENCOUNTERING BOT OR A oouu nnc MARK (IF THAT OPERATIONAL MODE IS ENABL see LET) PRIOR TO EXHAUSTING THE POSITION coud MACRO V05.03 Friday 22-May-87 08:12 13 Page 10-1 LET SEQ 0032 LOGICAL END OF TAPE. AND THE FIRS OUNTERED IS A TAPE THE SETTING OF THIS BIT WILL NOT_OCCUR UNLESS THIS THROUGH USE OF 12 S$ GlfY ON THE SKIP TAPE MARKS cmm WHEN EITHER TWO CONTIGUOUS TAPE MARKS ARE g'rcgeoa WHEN NJVI'G OFF _OF 801 § G3 TSVOS DATA RELIABILITY RLL MODE OF TERMINATION IS ENABLED THE SET CHARACTERISTICS COMMAND. INDICATES THAT THE RECORD READuAs LONGER THAN RECORD LENGTH LONG, WHEN THIS BIT THE BYTE COUNT SPECIFIED. 11 WLE 3.6 WRITE LOCK ERROR. WHEN SET, INDICATES THAT A WRITE OPERATION WAS ISSUED BUTTHE MOUNTED TAPE LOCK SWITCH ACTIVATED DURING THE OPERATION 10 NEF NON- ExecunaLe FUNCTION. THAT THE WHEN SET, INDICATES COMMAND COULD NOT BE EXECUTED DUE 10 ONE OF THE FOLLOWING CONDITIONS: - THE_ __COMMAND DIRECTION BUT SPECIFIED THE TAPE REVERSE WAS TAPE ALREADY POSITIONED AT BOT. THE ISSUING OF ANY MOTION COMMAND EXCEPT Fridey 22-May-87 08:12 Page 11 SEQ 0033 - H'EN THE VOLUME CHECK BIT IS SET. ANY COMMAND, EXCEPT GET STATUS OR DRIVE INITIALIZE WHEN THE TS05 IS OFF -LINE. - ANY WRITE COMMAND WHEN THE TAPE CONTAIN A WRITE STATUS - WLS). ILC ILLEGAL COMMAND. AND EITHER DOES SET WHEN A COMMAND IS ITS COMMAND MODE FIELD CONTAINS SUPPORTED BY THE TSOS. NOT ENABLE RING (WRITE LOCK ISSUED FIELD OR ITS comAm CODES WHICH NOT ILA ILLEGAL ADDRESS. (MORE THAN 18 BITS OR ODD WHEN AN EVEN ADDRESS IS REQUIRED.) & 2 MACRO V05.03 MOT TAPE IS MOVING. & H3 TSVOS DATA RELIABILITY IE ON LINE. WHEN SET, INDICATES THAT THE TSOS ON-LINE AND OPERABLE. INTERRUPT ENABLE. éNTEWT VCK ENABLE REFLECTS THE BIT SUPPLIED STATE ON THE LAST VOLUME CHECK. WHEN SET, INDICATES THAT THE DRIVE HAS BEEN EITHER POWERED DOWN OR TURNED OFF-LINE. CLEARED BY THE CLEAR VOLUME CHECK (CVvC) BIT IN THE COMMAND HEADER WORD. CAN CAUSE A TERMINATION CLASS OF 3. 03 02 OF THE IS PHASE ENCODED DRIVE. ALWAYS SET, THIS BIT INDICATES THAT THE TSOS5 IS CAPABLE OF READING AND WRITING ONLY 1600 BPI PHASE ENCODED DATA. WLK S.3 WRITE LOCKED. MOUNTED REEL WHEN OF SET, TAPE INDICATES DOES NOT WRITE-ENABLE RING INSTALLED. THEREFORE, WRITE PROTECTED. 01 s.3 THE TAPE IS, HAVE A *GI'NI'G OF TAPE. WHEN SET, INDICATES THAT THE TAPE 1S POSITIONED AT THE LOAD POINT AS %&TED BY THE EOT THE THAT BOT REFLECTIVE STRIP ON THE END OF TAPE. THIS BIT IS SET WHENEVER THE TAPE IS POSITIONED AT OR BEYOND THE END OF TAPE REFLECTIVE STRIP, 13 TSVOS DATA RELIABILITY MACRO V0S.03 1697 Fridey 22-Mey-87 08:12 Page 12 SEQ 0034 16 i:g AR 1701 6.3.4 L e e EXTENDED STATUS REGISTER 1 (XSTAT1) R TR T et i e g g 13 12 11 T e 1702 1S 1704 ?6£%? 3'6'-&66-'6'§ 101010 RBPIO:O0::0:0+0::0IUNCO?! 1705 17“ 1707 1708 14 A LI e I I I 10 09 i % 08 07 06 OS5 04 03 8% . 3I EBR R e 9 e 2% S I I R I I I 1709 BIT NAME TCC 171 171 1714 1713 15 0T & i;i: 14 - - NOT USED. 1719 i;gg 13 COR S CORRECTABLE DATA. CORRECTABLE DATA ERROR HAS BEEN ENCOUNTERED. 1722 12-09 1724 1723 08 {7'5; 07-02 & 00 e 1729 1730 e 01 i 02 01 00 8I %T % DEFINITION DATA LATE. SET WMEN THE FIFO IS FULL ON READ OR EMPTY A RITE. TTHESE- CONDITIONS OCCUR \MENEVER THE G-BUS LATENCY EXCEEDS THE DATA TRANSFER RATE OF THE T1SOS. (ALWAYS A 0) RESERVED (ALWAYS A 0) RPE UNC 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) & UNCORRECTABLE DATA ERROR. J3 TSVOS DATA RELIABILITY 1733 1734 MACRO V0S.03 Fridey 22-May-87 08:12 6.3.5 Page 13 SEQ 0035 EXTENDED STATUS REGISTER 2 (XSTAT2) 1735 15 141312 e m e 'G’H' e 'RCE' 0 ' 11 m-- ® 0 ! e 10 09 0007“ rccfroccnteocnld 1O0ONCFI e O 050403 noccennd 2O ‘RL7'RL6' 020100 Semmonanennld Gomaemalen- 'RLS'RLJ'R.B' '&2'&1'&0' BIT NAME TCC 15 OPM S OPERATION IN PROGRESS. 14 RCE 7.F2 RAM CHECKSUM ERROR. CAUSES FATAL CLASS 2 BECAUSE THE ERROR MIGHT HAVE OCCURRED DURING THE TRANSMISSION OF THE MESSAGE PACKET. 13-11 10 DEFINITION (TAPE MOVING) RESERVED (ALWAYS A 0) WCF 7 09-08 WRITE CLOCK FAILURE. RESERVED (ALWAYS A 0) 07-00 RL 7-0 - SET DURING A WRITE TO I'OICA?E THAT THE FIFO IS NOT BEING EMPTIED BY REVISION LEVEL. THE TRANSPORT K3 TSVOS DATA RELIABILITY 1765 1766 1767 1768 1769 MACRO VO5.03 Fridey 22-May-87 08:12 6.3.6 Page 14 SEQ 0036 EXTENDED STATUS REGISTER 3 (XSTAT3) 1770 BIT NAME TCC 15 70 08 MICRO DIAGNOSTIC ERROR CODE. 07 RESERVED (ALWAYS A 0) 06 OPI OPERATION INCOMPLETE. OR SKIP (SEE LIST OF CODES BELOW). SET WHEN A READ, SPACE OPERATION HAS MOVED 25 FEET OF TAPE WITHOUT DETECTING ANY DATA ON THE TAPE. o4 - 03 DCK DIRECTION OF CURRENT OPERATION WAS REVERSE (BUT IS O IF REWIND OR FORWARD) RESERVED (ALWAYS A 0) 5.6 02-01 00 DENSITY CHECK. SET _ WHEN IDENTIFICATION BURST (IDB) MOVING OFF OF BOT. PE UAS NOT DETECTED WHEN RESERVED (ALWAYS A 0) RIB REVERSE INTO BOT. A READ, SPACE, OR SKIP COMMAND ALREADY IN PROGRESS HAS ENCOUNTERED THE B0T MARKER WHEN MOVING TAPE IN THE REVERSE DIRECTION. TAPE MOTION WILL BE HWALTED AT BOT. W - REV 6.3.7 EXTENDED STATUS REGISTER 4 (XSTAT4) == BIT tHSP ! -ace- 0 rmre b 141312 Peme® * ~ [l st ndadadadadad 38385288288 3333433 w 1792 05 NAME TCC Semmomm- 111009 0007“ 050503 OZOIW L3 TSVOS DATA RELIABILITY MACRO V0S.03 Fridey 22-May-87 08:12 15 HSP Page 14-1 S High Speed., operat i transport 14 RCE 13-8 7-0 WRC SEQ 0037 When set,indicates thet the transport is operating in low speed mode.(25ips) 6 Retry Count Exceeded. When set, indicates that the controller was buffering Write Deta snd could not sucessfull y the buffered record within the specified number of retries. Causes Tape Position Lost termination. - 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 initiasted retries rrfoflnd in order to write the previous buffered record. after it is displayed. This count 7.0 DIAGNOSTIC HISTORY MAR 1982 - MODIFIED CZTSHC FROM TS11 FOR TSVOS REVISION B - APR 1983 - UPDATED THE DIAGNOSTIC TO SUPPLY THE CORRECT RECORD NUMBER DURING EXECUTION OF TEST #2. REF: CHMIELECKI TO MITCHELL “TSVOS DATA RELIABILITY PROBLEM"; 21-JAN-83. REVISION C - JUN 1984 MINOR CHANGES FOR REVISION D - "ORION" CPU APRIL 1987 CHANGES MADE TO ALLOW DIAGNOSTICS TO WORK WITH THE NEW TSVOS MICROCODE (REVISION 2) THE NEW TSVOS MICROCODE ALWAYS IN EXTENDED FEATURE MODE. .TITLE PROGRAM HEADER AND TABLES .SBTTL PROGRAM HEADER LENABL = BGNMOD is in high speed mode.(100ips) When clear,the ABS,AMA 2000 : THE PROGRAM HEADER IS THE INTERFACE BETWEEN i THE DIAGNOSTIC PROGRAM AND THE SUPERVISOR. '-- POINTER BGNRPT,BGNSW,BGNSFT,BGNAU, BGNDU is cleared Friday 22-May-87 08:12 CVTSE,D,0,5000,1 ;DIAGNOSTIC NAME sREVISION LEVEL 0 TO S.W. PTABLE :DIAG. END ADDRESS ;RESERVED FOR APT STATS sDIAGNOSTIC TYPE s APT EXPANSION +PTR. TO DISPATCH TABLE sDIAGNOSTIC RUN PRIORITY sFLAGS DESCRIBE HOW IT WAS SETUP sEXPANSION WORD 1SVC REV AND EDIT ¢ 1DIAG. EVENT FLAGS + POINTER TO DEVICE TYPE LIST 1PTR. TO REPORT CODE L$SOFT LéHW L$SW LSLAST 0 0 1 0 L4DISPATCH © :PTR. PTABLE © H.W. © TO DEF. NO sPTR. P sPOINTER TO S.W. QUES. 00 sPOINTER TO H.W. QUES. © sLONGEST TEST TIME << iNUMBER OF UNITS — 4 HEADER mm ' Page 14-2 5583 FEEEEEERERE885, MACRO V05.03 REVISION EDIT Fridey 22-May-87 08:12 Page 14-3 SEQ 0039 L$EXPS:; LS$EXPS: : 1930 L$AUT:: :PTR. TO ADD UNIT CODE L$DUT: : sPTR. TO DROP UNIT CODE L$LUN:: sLUN FOR EXERCISERS TO FILL L$DESP: : sPOINTER TO DIAG. DESCRIPTION L$LOAD: : sGENERATE SPECIAL AUTOLOAD EMT LS$ETP:: ;POINTER TO ERRTBL L$ICP:: sPTR. TO INIT CODE L$CCP:: ;PTR. TO CLEAN-UP CODE L$ACP:: +PTR. TO AUTO CODE L$PRT:: ;PTR. TO PROTECT TABLE L4TEST:: : TEST NUMBER L$DLY:: ;DELAY COUNT L$HIME: : sPTR. TO HIGH MEM - EEEEEBEYEEEEEE MACRO V0S.03 L$RPT L$AV L$DV L$DESC E$LOAD L$INIT L$CLEAN L$AUTO L$PROT B4 PROGRAM HEADER AND TABLES MACRO V0S5.03 Fridey 22-May-87 08:12 Pege 15 DISPATCH TABLE .SBTTL DISPATCH TABLE '00 + THE DISPATCH TABLE CONTAINS THE STARTING ADDRESS OF EACH TEST. s IT IS USED BY THE SUPERVISOR TO DISPATCH TO EACH TEST. '-- 000005 024216 DISPATCH S L$DISPATCH:: 027114 .SBTTL DESCRIPTIVE TEXT :E.LINES OF TEXT PRINTED TO THE OPERATOR TO IDENTIFY THE DIAGNOSTIC AND THE DEVICE UNDER TES '-- L$DESC: : DESCRIPT <DATA RELIABILITY TEST> . /DATA RELIABILITY TE <TSVO0S> /TSVOS/ PROGRAM HEADER AND TABLES MACRO V0S5.03 Friday 22-May-87 08:12 Page 16 SEQ 0041 DEFAULT HARDWARE P-TABLE y & : THE DEFAULT HARDWARE P-TABLE CONT T i THE TEST-DEVICE PARAMETERS. i IS IDENTICAL T0 THE STRUCTURE ; s DEFAULT HARDWARE P-TABLE i«n) .SBTTL ‘—- BGNHW DFPTBL L$HU: : .WORD L10000-L$HW/2 .WORD L10001-L$SW/2 DFPTBL: : .WORD .WORD L10000: .SBTTL 172520 224 1 TSDB ADDRESS. ;VECTM ADDRESS . ;DRIVE 00 FOR DEFAULLT ENDHW SOFTWARE P-TABLE :.;if SOFTWARE P-TABLE CONTAINS THE VALUES OF THE Pnosam' ; PARAMETERS THAT CAN BE CHANGED BY THE OPERATOR. '-- BGNSW SFPTBL L$SU:: SFPTBL:: CLRFLG:: RRANV:: .BYTE .BYTE HAE: : .BYTE ERCVER:: .BYTE BADTSM: : a$¥gt DINT:: IREC:: - .BYTE .BYTE CHGFLG: : é$¥gf PIRE:: CHAR:: CMDD:: . 1 ;CLEAR COUNTERS FLAG. O O sHALT AFTER EACH COMMAND FLAG. ;ENABLE RECOVERABLE ERROR PRINTS FLAG. O % O O 8 g:;g 8 CH.EAI .WORD 13. . WORD 1 -WORD .WORD .WORD .WORD 1 'EP%”E SWITCH TO REWRITE ON SAME SPOT & DETECT BAD TAPE ‘ 1DISABLE INTERRUPTS FLAG. ;INHIBIT ERROR RECOVERY FLAG. 3 3 ARE CMD SEQ TABLE FLAG. 4 lml‘l RESIDUAL FRAMECOUNT ERROR REPORT FLAG. lCHMlCTERISTICS CODE (DEFAULT = 40). Sm 2 (DEFAULT = REWIND). :BYTE COUNT tNUMBER OF OPERATIONS RANP 4 DATCNT ;PATTERN ;COMMAND 3 (DEFAWLT = WRITE) tOYTE COUNT (DEFAULT = MAX BUFFER SIZE). RANP tPATTERN (DEFAULT = RANDOM). . WORD 32000. . WORD 3 .WORD ;RESET RANDOM VARIABLES EACH PASS FLAG. NUMBER OF OPERATIONS (DEFAWLT = 32000). ;COMMAND 4 (DEFAWLT = READ REV) D4 PROGRAM HEADER AND TABLES MACRO V05.03 Fridey 22-May-87 08:12 Page 16-1 SEQ 0042 000007 000033 ENDS DATCNT 32000. :BYTE COUNT (DEFAULT = MAX BUFFER SIZE). sNUMBER OF OPERATIONS (DEFAULT ;PA?TERN DEFAULT = RANDOM). = 32,000). sCOMMAND S (DEFAULT = READ FWD). lBYTE COUNT (DEFALLT = MAX BUFFER _SIZE). tNUMBER OF OPERATIONS (DEFAWLT IPATTERN (DEFAULT = RANDOM). .cm&(oerut = REWIND). OPER ;PATTERN (DEFAULT = 32,000). = RANDOM). :END OF CMD SEQ TABLE C(M (DEF ) lBYTE COUNT (DEFAULT = MAX BUFFER iNUMBER OF OPERATIONS (M ALT OO0 00O0- 004000 076400 000007 000002 004000 076400 000007 000015 000001 OOOOO% 00000 000033 004000 076400 §§§§§§§§§§§§§§§§§§§§§§§§§§ SOFTUARE P-TABLE |PATT€flN (DEFAULT = RANDOM). = sDEFAULT SWITCH SETTING :ENABLE READ BUFFERING :ENABLE WRITE "FERI'G IM AT 100::. TCH tEXYEm FEATURES SOF TWARE SW 0=0FF ; 1=ON +MICROCODE REVISION LEVEL ;BUFFER ENABLE SOF TWARE SW 0=0FF ; 1=ON E4 PROGRAM HEADER AND TABLES MACRO V0S5.03 Fridey 22-May-87 08:12 Page 17 SEQ 0043 SOF TWARE P-TABLE .TITLE GLOBAL AREAS .SBTTL GLOBAL EQUATES SECTION - + + THE GLOBAL EQUATES SECTION CWAINS PROGRAM EQUATES THAT ARE USED IN MORE THAN ONE TEST ~pen EQUALS : BIT DIFINITIONS 010000 001000 8I7T15== 100000 BIT14== BIT]13e= BIT12== BIT11e= BIT10e= 000100 000010 000001 g 100000 001000 000100 000020 000010 000004 000002 000001 EVENT FLAG_DEFINITIONS EF32:EF17 RESERVED FOR SUPERVISOR TO PROGRAM COMMUNICATION START== gi. CONTINUE== 30. NEW=» EF PUR=» 29 5. ' : PRIORITY LEVEL DEFINITIONS PRIO7== 340 PRIO6== 300 + START COMMAND WAS ISSUED + RESTART COMMAND WAS ISSUED :+ CONTINUE COMMAND WAS ISSUED + A NEW PASS HAS BEEN STARTED + A POWER-FAIL/POWER-UP OCCURRED F4 GLOBAL AREAS MACRO v05.03 an 22-May-87 08:12 Peage 17-1 SEQ 0044 GLOBAL EQUATES SECTION 000240 000200 000140 000100 000040 000000 PRIOS== 240 PRIO4== 200 PRIO3== 140 PRIO2== 100 PRIO1== 40 PRIOO== 0 : 2089 2091 040000 100000 PNT== PRI== IXE== IBE== JER== LOE== HOE== §§§§s§ 8883 FEFEEEE : i 002000 004000 010000 020000 LOT== ADR== I0U== 1SR== = UAM= BOE== 2 000004 000010 000020 000040 000100 000200 000400 001000 88%¥5» ;:OPERATOR FLAG BITS REGISTER USAGE. - PASSES PARAMETERS TO/FROM DIAGNOSTIC SUPERVISOR. POINTER. PROGRAM COUNTER, G4 GLOBAL AREAS MACRO 705.03 Fridey 22-May-87 08:12 Page 18 SEQ 0045 GLOBAL EQUATES SECTION s THE FOLLOWING ARE BIT DEFINITIONS FOR THE TSSR REGISTERS. 100000 040000 020000 010000 004000 002000 001000 000400 000200 000100 177717 177761 15.SC==100000 15 . UPE = 240000 15. SPE==20000 TS.RMR==10000 TS . NXM==4000 75 .NBA==2000 15.A17==1000 75.A16==400 15.55R==200 15.0FL==100 TSC.FCC==177717 75C.TCC==177761 +SPECIAL CONDITION BIT. ;UNIBUS PARITY ERROR {SERIAL BUS PARITY ERROR, sREGISTER MODIFICATION REFUSED. sNON-EXISTENT MEMORY iNEED BUFFER ADDRESS. sBUS ADDRESS BIT 17. sBUS ADDRESS BIT 16. sUNIT READY BIT. sOFF LINE sFATAL CLASS CODE MASK. s TERMINATION CLASS CODE MASK. s THE FOLLOWING ARE BIT DEFINITIONS FOR THE COMMAND WORD 100000 040000 020000 010000 004000 004000 002000 001000 000400 000200 ACK . C==100000 CVC . C==40000 OPP . C==20000 SWB . C==10000 MOD . C3==4000 BRF . C==4000 ==2000 MOD . C1==1000 MOD . CO==400 1€ . C==200 FMT.C1==100 VFY.C==100 FMT.CO==40 JMP C==40 CMD.C4==20 DLY.C==20 CMD.C3==10 CMD.C2==4 CMD.Cl==2 CMD.CO==1 s ACKNOMLEDGE BIT {CLEAR VOLUME CHECK. sOPPOSITE BIT 1SWAP BYTE BIT sMODE BIT 3 .anemecoao/rne COUNT FLAG BIT. NOT USED sBY 1505 BUT USED INTERNALLY BY THIS PROGRAM ONLY. sMODE BI sMODE BIT 1 sMODE BIT s INTERRUPT ENABLE sFORMAT BIT 1 iWRITE VERIFY FLAG BIT. iNOT USED BY TS05. iFORMAT BIT O, INTERNAL USE ONLY. 1JUMP BIT-TO DIRECT THIS PROGRAM TO JUMP TO iA CERTAIN LOCATION IN THE COMMAND SEQUENCE s TABLE. " INTERNAL USE ONLY sCOMMAND BIT PENSERT DELAY. INTERNAL USE ONLY. sCOMMAND BIT 3 ~ ;COMMAND BIT 2 sCOMMAND BIT 1 ;COMMAND BIT O sBIT DEFINITIONS FOR DEVICE CHARACTERISTICS. CH.ESS==200 CH.EAI==40 CH.ERI==20 DF TSCH==CH.EAI JENABLE SKIP TAPE MARKS STOP (STOP AT LOGICAL EOT). iENABLE ATTENTION INTERRUPTS. 1ENABLE MESSAGE BUFFER RELEASE INTERRUPTS. sDEFAULT CHARACTERISTICS CODE. H4 GLOBAL AREAS MACRO V0S5.03 Friday 22-May-87 08:12 Page 19 SEQ 0046 GLOBAL EQUATES SECTION 2151 2 2153 :BIT DEFINITIONS FOR EXTENDED CONTROL WORD EF .HSS==40 EF .RWB==30 EF .RBO==20 ;ENABLE HIGH SPEED SELECT :ENABLE BOTH READ & WRITE BUFFERING ;ENABLE READ BUFFERING ONLY 1 THE_FOLLOWING IM)ICATES THE RELATIVE POSITIONS OF THE STATUS WORDS :IN THE MESSAGE BUF MS.RFC==4 MS . XSO0==6 MS.XS1==10 MS.XS2==12 MS.XS3==14 MS.XS4==16 ;RESIDUAL FRAME COUNT. ;EXT STATUS REG O ;EXT STATUS REG 1 ;EXT STATUS REG 2 ;EXT STATUS REG 3 ;EXT STATUS REG 4 ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 0. 020000 010000 000100 000004 000002 000001 X0 . TMK==100000 X0 .RLS==40000 X0 .LET==20000 XO0.RLL ==10000 X0 .ONL ==100 X0.WLK==4 X0.B0T==2 X0.EQT==] s TAPE MARK. ;RECORD LENGTH SHORT. :LOGICAL EOT sRECORD LENGTH LONG. ;ONLINE BIT sWRITE LOCK BIT ;B80T BIT. ;EOT BIT. ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 2. 100000 000200 000100 X2 .0PM==100000 X2 EFE==200 X2.BFE==100 ;OPERATION IN PROGRESS, TAPE MOVING EXTENDED FEATURES ENABLED ;BUFFERING ENABLED ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 3. 000010 157400 X3.DCK==10 X3 .RNY==157400 ;DENSITY CHECK. :CAPSTAN RUNAWAY UDIAG ERROR CODE. ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 4. 100000 X4 . HSS==100000 X4 .RCE== 40000 sHIGH SPEED SWITCH INDICATING 100ips IRETRY COUNT EXCEEDED s THE FOLLOWING DEFINITIONS SHOW THE RELATIVE POSITIONS OF THE COMMAND +PACKET ENTRIES. CP.CMD==0 1CMDPKT «0==TS0S COMMAND. CP.ADH==4 CP.CNT==6 sCMOPKT +4==BUFFER ADDRESS HIGH. sCKDPKT «6==BYTE/FILE/RECORD COUNT CP. m"i’ :CMOPKT .2==BUFFER ADDRESS 14 GLOBAL AREAS MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 20 o GLOBAL EQUATES SECTION 2203 g20520. 2206 2207 2208 2209 2210 2211 22 221 2214 2215 2216 2217 2218 2219 2220 2221 gz sMISCELLANEOUS DEFINITIONS. 000340 000012 INTPRI==PRIO7 SCHCNT==12 000020 000020 004000 MSGCNT ==20 DIACNT==20 DATCNT==2048 . 177740 000007 RNOPSC==177740 RANP==7 000020 000020 153624 032561 177774 177740 gg sPRIORITY TO BE USED IN INTERRUPT STATE. ;ARBITRARY BYTE LENGTH FOR CHARACTERISTIC ;BUFFER LENGTH. (EVEN @) :MESSAGE BUFFER LENGTH IN BYTES. (EVEN #) iDIAGNOSTIC COMMAND BUFFER EXTENT. sMAXIMUM RECORD LENGTH IN BYTES ;THIS COUNT SHOULD BE A MULTIPLE OF 256 TO INSURE i{PROPER READ/WRITE BUFFER u.n.ocuuou BY THE SUPER. ;Rm ® OF OPERATIONS MASK. ;sCODE TO SELECT RANDOM PATTERN. RRECL==16. ;READ RECOVERY ATTEMPT LIMIT. WRECL ==16. {WRITE RECOVERY ATTEMPT LIMIT. RANBC ==153624 ;CONSTANT USED TO RESET RANDOM @ GENERATOR BASE. RANSC == 32561 ;CONSTANT USED TO RESET RANDOM @ SAVE LOCATION. usts--nnn :NOT IN USE CODE FOR DEVICE STATE TABLE. NCMD. C==ACK.CCVC.C10PP.CtSWB.CMOD, C31MOD. C2¢MOD. C1 !MOD. CO* TE. CIFMT. C1IFMT.CO ;NOT “COMMAND“ BITS. :THE FOLLOWING DEFINES THE COMMAND WORD FOR EACH TSOS COMMAND. 2226 100013 DRI== ACK.C!CMD.C3:CMD.C1!CMD.CO 2229 104001 RDF== ACK.C!BRF.C!CMD.CO 2232 104401 RDR== ACK.C!BRF .C!MOD.CO!CMD.CO 2235 104005 WRT== ACK.C!BRF.C!CMD.CO!CMD.C2 2238 104105 WTV== ACK.C!BRF.C!VFY.C!CMD.CO!CMD.C2 2241 104010 SRF== ACK.C!BRF.C!CMD.C3 2244 104410 SRR== ACK.C!BRF.C!MOD.CO!CMD.C3 2247 105401 RNR== ACK.C!BRF.C!MOD.C1!MOD.CO!CMD.CO 2250 2251 125401 RNF== zzssi 105001 RPF== ACK.C!BRF.C!'0PP.C!MOD.C1!MOD.CO!CMD.CO ;READ REV RETRY2 - REREAD NEXT FORWARD, IE.READ FORWARD, SPACE REVERSE 2zsi 23 125001 RPR== ACK.C!BRF.C!OPP.C!MOD.C1!CMD.CO 2259il 105005 WRR== ACK.C!MOD.C1!BRF.C!CMD.C2!CMD.CO gggz gggg ggz g;g % 224§ gg:z 2249' 2254 5251 ;DRIVE INIT. ;READ FORWARD ;READ REVERSE sWRITE COMMAND iWRITE VERIFY :SPACE RECORD FORWARD :SPACE RECORD REVERSE sREAD REV RETRY] - REREAD NEXT REVERSE, IE. SPACE FWD, READ REVERSE ACK.C!BRF.C!'MOD.C1!CMD.CO ;READ FWD RETRYI - REREAD PREVIOUS FORWARD, IE. SPACE REVERSE, READ FORWARD ;READ FWD RETRY2 - REREAD PREVIOUS REVERSE, IE. READ REVERSE, SPACE FORWARD J4 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 20-1 SEQ 0048 GLOBAL EQUATES SECTION ;WRITE RETRY 102010 000020 Pe85% 8 5 3 B B B B OBOEOG 177777 [ .C!MOD .C2:CMD.C3 100012 .C:CMD .C3:CMD.C1 101011 WTR== 105010 SFF== 105410 SFR== 100017 GES== 100411 ERS== 100412 101012 140004 140006 100006 000040 .C:CMD .C3:CMD.CO ;MESSAGE BUFFER RELEASE ;WRITE TAPE MARK, .C'MOD .C1:CMD.C3:CMD.CO ;WRITE TAPE MARK RETRY, .C!BRF .C!M0D.C1:CMD.C3 :SPACE FILE FORWARD .C!BRF .C!MOD.CO'MOD.C1:!CMD.C3 :SPACE FILE REVERSE .C:CMD.CO!CMD.C1:CMD. c2:CMD.C3 ;GET EXTENDED STATUS .C!M0D.CO!CMD.C3:!CMD. co ;ERASE 3 INCHES OF TAPE .C!MOD.CO!CMD.C3:CMD. Cl sUNLOAD COMMAND .C!M0D.C1:CMD.C3:CMD. Cl ;ERASE TAPE. .C:CvC .C:cMD.C2 :SET DEVICE CHARACTERISTICS. .C:CvC .C!:CMD.C2:CMD.C1 ;WRITE SUB-SYS MEM .C:CMD .C2:CMD.C1 :DIAGNOSTICS. .C ;JUMP TO “N"TH COMMAND 0O WTM== ~ ~ -4 N ~ 100011 sREWIND COMMAND :DELAY “N" MS. :END OF COMMAND SEQUENCES K4 GLOBAL AREAS MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 21 SEQ 0049 GLOBAL DATA SECTION 5338.5 SOTYL 2306 5333.? l T"( GLOBAL DATA SECYIO‘ CONTAINS DATA THAT ARE USED ; IN MORE THAN ONE TEST 5309 2310 2311 002330 2312 002332 2313 002334 g;ig 002336 002330 000000 000000 gg.‘l,g 002340 002340 100017 53335 2323 g& 002344 A CMDPKT: : 000000 000000 Sgi_" 2318 : 002344 100012 g;gg GLOBAL DATA SECTION COMMAND PACKET 0 0 0 0 < 03’&17777‘ :MUST BE ON MOD 4 BOUNDRY., :1ST WORD IS TSOS COMMAND. :2ND WORD IS THE BUFFER LOW ADDRESS. :;3RD WORD IS THE BUFFFR HIGH ADDRESS. ;4TH WORD IS THE BYTE/RECORD/FILE COUNT. 3 GET STATUS COMMAND PACKET. . = 3 MESSAGE BUFFER RELEASE COMMAND PACKET. " - 3 REWIND COMMAND PACKET (USED IN ERROR RECOVERY ONLY) GSCPK:: BRCPK:: .WORD .WORD <,+3>E177774 GES <,+3>E177774 MBR sMUST BE ON MOD 4 BOUNDRY., sMUST BE ON MOD 4 BOUNDRY. g& 002350 " - <.+3>E177774 2330 002350 102010 RUCPK:: .WORD RWD sgg 3 WORK AREA FOR ANALYSIS OF MESSAGE PACKET CONTENTS. 2335 002354 MSGPKT:: 336 .BLKW 8. 2337 WORD: : ‘SIM FRAME COUNT. ;6TH WORD:: XSTAT2 2341 37TH WORD:: XSTATS gw :8TH WORD:: 2344 2345 002374 2346 002414 MSGPKO MSGPK] : g;“: 002454 MSGPK3:: 2347 002434 MESSAGE PACKETS MSGPK2:: 2350 2351 002474 002374 2352 002476 000000 2353 002500 000020 2358 002506 2359 002510 2360 002512 ;2ND WORD:: DATA FIELD LENGTH. ;4TH WORD:: XSTATO :STH WORD:: XSTAT1 2340 2357 :1ST WORD:: MESSAGE TYPE. 3 2338 2339 2354 002502 gmw ;MUST BE ON MOD 4 BOUNDRY . 000040 000000 000000 000000 000000 XSTAT4 .BLKW BLKW 8 sMESSAGE PACKET FOR DEVICE #0 sMESSAGE PACKET FOR DEVICE #1 .BLKW 8. sMESSAGE PACKET FOR DEVICE o3 .BLKW 8. sMESSAGE PACKET FOR DEVICE e2 SET CHARACTERISTIC BLOCK. ifl*:: MSGPKO 0 MSGCNT CH.EAI 0 3 3157 WORD:: MSGPKT ADDR LOCSET UP BY EXCUTE ROUTINE). ;eND WORD:: MSGPKT ADDR MI. lm m:: MSG BUFFER LENGTH (BYTES) 34TH WORD:: CHARACTERISTICS WORD(SET BY SETUP ROUTINE). ISTHm:“SPC”EflCMmmEXTDFEATWS WRITE SUB-SYSTEM MEMORY CHARACTERISTIC BLOCK. WSMBK:: 0 0 0 3+1ST WORD: : SEL 0 :eND WORD:: SEL 2 s3RD WORD:: SEL 4 L4 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 21-1 SE@ 0050 GLOBAL DATA SECTION 2361 } SDB:: TSSR:: 002514 002374 002414 002434 TSVCT:: .BLKW .BLKW TSBA==TS08 ; 4 ;7505 DATA BUFFER ADDRESSES. 4 17505 VECTOR ADDRESSES. 4 17505 STATUS REGISTER ADDRESSES. ;DATA BUFFER ADDRESS REGISTER. ADDRESSES OF MESSAGE PACKETS. MSGPKA:: MSGPKO ;DEVICE O MSGPK1 MSGPK2 MSGPK3 002454 010074 010102 1505 REGISTER ADDRESSES. .BLKW i SSINT:: 010110 010116 } ; SSCL:: :DEVICE 1 :DEVICE 2 ;DEVICE 3 Aooaesses OF INTERRUPT HANDLING ROUTINES. TSSINO :DEVICE O. "1S5IN1 TSSIN2 TSSINS ;DEVICE 1 ;DEVICE 2. ;DEVICE 3. 1505 CODE LEVELS, O 0 0 ) TS0S EXT. SSSW:: O FEA £ BUF. 0 177774 177774 WILL BE STORED AFTER SCH CMD IN BASIC FUNCTION TEST :DEVICE 0 :DEVICE 2 ;DEVICE 3 UNIT NUMBERS OF AL DEVICES BEING TESTED(1-4). WHEN DEVICE IS NOT IN USE, IT,S LOCATION WILL = -3. RS WILL ALWAYS CONTAIN THE nésem LOGICAL UNIT NUMBER X 2. DEVTBL:: .MORD NINUSE LHORD "WORD "MORD .WORD 177774 177774 177777 ; 003046 003120 003172 003244 ENA SW'S, sDEVICE 1 0 ) : ; WILL BE STORED AFTER SCH CMD IN BASIC FUNCTION TEST sDEVICE 0O ;DEVICE 1 ;DEVICE 2 ;DEVICE 3 NINUSE NINUSE NINUSE END BAD TAPE TABLE POINTER: USED BY WRITE RETRY ROUTINE “WRTY* BTADDR:: BTO 8T1 BT2 BT3 TO LOG BAD TAPE SPOTS ON UNITS UNDER TEST M4 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 22 SEQ 0051 GLOBAL DATA SECTION : 002626 COUNTER AREA. CNTBGN=. WRBC:: RRBC:: .BLKW .BLKW 20 20 RFBC:: .BLKW WRREC:: .BLKW WRUNR:: .BLKW 20 4 4 RRUNR:: RFREC:: RFUNR:: 4 4 4 RRREC:: .BLKW .BLKW .BLKW .BLKW BT0:: BLKW BT1:: BLKW BT2:: .BLKW BT3:: BLKW WTYCY'z .BLKW PASCNT:: SCCNT:: VFYCNT:: HRDCNT:: FTLCNT:: 4 21. 21. 21 21 4 .BLKW 4 .BLKW .BLKW .BLKW 4 4 4 .BLKW 4 .BLKW 4 003376 CNTEND=. RECCNT:: 000550 CNTLEN==CNTEND-CNTBGN : 3 :BYTES WRITTEN. :BYTES READ REV. ;UNIT 1 BAT TAPE SPOTS LOG § BAT TAPE SPOTS LOG sUNIT 3 BAT TAPE SPOTS LOG flRITE RETRY COUNTER PASS COUNT, lSPECIRL CONDITION COUNT. ;COUNT OF TSOS DATA COMPARE ERRORS. ;COUNT OF HARD ERRORS. :COUNT OF FATAL ERRORS. sEND OF STATICTICAL COUNTERS. sNUMBER OF RECCRDS FROM BOT: CLEARED ON REWIND sAND WHEN RESTARTING OR CONTINUING TEST 2. ILE'GYH OF STATISTICAL COUNTER AREA THE FOLLOWING ARE TI'E DEFINITIONS OF VARIABLES USED BY THE PROGRAM DATAWT:: .WORD O ;WRITE BUFFER ADDRESS. DATARD:: .WORD NCNT:: .WORD NCNT1:: .WORD BRFCNT:: .WORD :: .WORD CMDSAV:: .WORD :: .WORD CMDLG:: .WORD O 0 O O END END END O ;:READ BUFFER ADDRESS. .sroance FOR VALUE OF N s TEMP STORAGE FOR VALUE OF N. sSTORAGE FOR BPCR VALUE. ;CONTAINS COMMAND WORD BEING EXECUTED PRESENTLY. 3;SAVE LOCATION FOR CMD WORD DURING ERROR RECOVERY sCONTAINS PREVOUS COMMAND WORD. sCURRENT COMMAND LOGGING CODE. RANB:: 153624 sRANDOM # GENERATOR BASE. DIABLK==DATAWT LENMSK:: .WORD O RANS:: TIMEl:: TIME2:: .WORD .WORD JLOOP:: JLOC:: PATERN:: .WORD .WORD .WORD .WORD .WORD CTCC:: .WORD RSSAVE:: .WORD TSSREG:: WTMFLG:: .WORD .WORD 32561 O O O O lIRITE BUFFER ALSO USED FOR DIAG CMD. m»om WRITE LENGTH HASK. 70 BE SET UP BY TESTS sRANDOM # SAVE LOCATION. sTIPE COUNT 1. s TIME COUNT 2. : C LOOP COUNT. ;JMP COMMAND LOCATION COUNT. O sPATTERN SELECT CODE. O 31 CURRENT STATUS REGISTER. 0 O O sCURRENT TERMINATION CLASS CODE. |LOCATIW FOR SAVING CURRENT DEVICE POINTER. alRITE TAPE MARK FLAG N4 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 23 SEQ@ 0052 GLOBAL DATA SECTION : : §§§§§§§§§ 003460 003472 .WORD RECLOG:: .BYTE RPTCNT:: WRTYFG:: WRTYER:: §§§§§§§§§§§ X .BYTE .BYTE .BYTE O +1® OF RECOVERY ATTEMPTS EXECUTED. O O O sWRITE REPEAT ON SAME SPOT CNTR: 4 PER WRITE RETRY sWRITE RETRY ON SAME SPOT IN PRWRESS FLAG sWRITE RETRY ON SAME SPOT ERROR FLAG ERLOG:: .BYTE 0 O sDATA BYTES AND ERRORS HAVE BEEN LOGGED FOR THIS RECORD. UNREC:: .BYTE ERRREC:: .BYTE 0 O sUNRECOVERABLE ERROR HAS OCCURED. sERROR RECOVERY MODE. RWERR:: .BYTE O sRECORD COUNT HAS BEEN UPDATED Fm THIS RECORD. sREAD/WRITE ERROR HAS OCCURED. ENDERF =, INTFLG:: EOTFLG:: BTPT:: ADDITIONAL FLAGS, THESE FLAGS ARE CLEARED DURING INITIALIZATION. .BLKW .BLKW .WORD 4 4 0O s INTERRUPT OCCURRED FLAGS FOR EACH DEVICE. sEOT/BOT FLAGS FOR EACH DEVICE (XSTATO). :BAD TAPE SPOT POINTER TO BT0-8T3 VIA BTADDR amon:: .BYTE 0 sRANDOM EVERYTHING FLAG. IRE:: 0 EXPBOT:: VFYFLG:: RPTFLG:: SWBFLG:: DROPED:: TisuWB:: ALLEOT:: ERSFLG:: ENDFLG=. i |l AFTER EACH COMMAND IS COMPLETED. BGNFLG=. RETRYC:: : 003 ERROR FLAG AREA, THESE FLAGS ARE CLEARED DURING INITIALIZATION AND STAFLG:: .BYTE O .BYTE .BYTE .BYTE .BYTE_ .BYTE O O O O .BYTE 0 .BYTE .BYTE 0 O SET DURING WRITE/VERIFY COMMAND. PERFME REPORT HAS BEEN REQUESTED. ;ENABLES SWAP BYTE FUNCTION WHEN NOT EQUAL TO ZERO. sI'HIBIT RESIDUAL FRAME COUNT ERROR REPORT. sCURRENT UNIT HAS BEEN DROPPED ITESTJ. SWAP BYTES FLAG sALL UNITS @ EOT_FLAG ;ERASE FLAG: DO ERASE AFTER A SPACE REV TO DELETE uBADLY WRITTEN RECORD. 1 TO 4 ERASES LEAVING A 3 TO 12 INCH GAP MAY RESULT. .EVEN ADDITIONAL FLAGS, THESE FLAGS ARE CLEARED ONLY AFTER BEING CHECKED. .BYTE 0 .BYTE 0 PWRFLG:: .BYTE O TRAPD4:: .BYTE O FESCFG:: sBOT IS EXPECTED, DO NOT ABORT ON BOT/FUNC RTI. s POWER FAILURE FLAG - SET ONLY DURING INIT. |TRAPED AT 4 FLAG lHISCELLNEG)S FLAG TSUNT:: .WORD : ' OPERATOR FLAG SETTINGS PASSED BY DIAG. SUPERVISOR IN A 16 BIT WORD SEE GLOBAL EQUATES SECTION FOR FLAG BIT LIST OPFLAG:: .WORD .EVEN TSNP:: .WORD O 1START FLAG - SET BY INIT CODE IF STARTING. O 0 1NUMBER OF FE\NITUDERYES? PLUS HSSPEBUF uroa PRINT OUT UNIT @ ONLY sREAD ONLY OPERATOR FLAG WORD BS GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 24 SEQ 0053 GLOBAL DATA SECTION 1 THE FOLLOWING IS THE COMMAND SEQUENCE TABLE. THE TABLE sHAS DEFAULT VALUES AT PROGRAM LOAD AS SHOWN. THESE VALUES 1CAN BE UPDATED BY A TEST OR BY OPERATOR INPUT. FOL CMDTBL : : REWIND. s 1BYTE COUNT. :MAX BUFFER LENGTH. 132,000 RECORDS. - mm:on PATTERN. ;READ REV. s MAX BU-'FER LENGTH, ORDS e +READ FWD. ;HAX BUFFER LENGTH. 1'52 000 RECORDS. sRANDOM PATTERN. s REWIND. lBYTE COUNT. ONC iPATTERN. sEXTENSTIm TO DOUBLE BlfFER SIZE :1SOFT END OF SEQUENCE TABLE. ING IS THE TSO5 COMMARD TABLE ELE A 177777 177777 177777 177777 177777 :SET CHARACTERISTICS. B59334583339%% 3 - CMDSE2: : WORD SEEsEEENERtEs BaEg il sEEssEaaiatanianisaty CMDSEQ: : END OF SEQUENCE TABLE. 1DRIVE INIT. tREAD FORWARD. tREAD REVERSE. tWRITE HRITE/VERIFY (WITE ALL RECMD'% RDR AND REVERSE. sREAD NEXT REVERSE. I.E., SPACE FWD, READ REVERSE. tREAD NEXT FORWARD, I.E., READ FORWARD, SPACE REVERSE. {READ PREVIOUS FORWARD. I.E., SPACE REVERSE, READ FORWARD {READ PREVIOUS REVERSE. I.E.. READ REVERSE. SPACE FORWARD {WRITE RETRY. sREWIND. m:ssuee BUFFER RELEASE (WRITE TAPE MARK {WRITE TAPE MARK RETRY, 1SPACE “N* FILES FORWARD. 1SPACE “N* FILES REVERSE. ;GET EXTENDED STATUS. _— b GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 24-1 SEQ 0054 5s88EEs GLOBAL DATA SECTION 2580 3 2582 004040 2583 004043 104 122 122 104 111 106 CMDASC:: .ASCII ASCII 122 127 104 122 122 124 .ASCII 2588 004057 123 122 100 .ASCII . ASCII 11 2589 2390 23591 004070 23592 004073 2593 2594 2595 2596 2597 2598 004076 004101 004104 004107 004112 004115 2599 004120 2609 004123 2601 004126 2602 004131 2603 004134 2604 004137 2605 004142 2607 004145 2608 2609 2610 004150 2611 2612 ~ona ZXXX 2613 004153 127 123 122 122 122 122 127 122 115 127 127 123 123 107 105 125 103 123 124 126 122 116 122 122 120 106 116 120 122 127 102 124 124 106 106 105 122 116 114 103 1 -ASCII -ASCII 122 122 104 122 115 122 101 112 115 120 104 114 131 IDELAY “N" MS. 1END OF COMMAND TABLE ;ORIVE INIT. sREAD FORWARD. ;READ REVERSE. sWRITE (WRITE ALL RECORDS, RDR AND CHECK DATA sWRITE/VERIFY, ;ON ALL RECORDS ROF AND CHECK DATA ON ALL RECORDS.) SPACE SE. lRElO NEXT REVERSE. 1.E., SPACE FWD READ REVERSE. sREAD NEXT FORWARD. I.E.. READ FORWARD, SPACE REVERSE. +READ PREVIOUS FORWARD. IE.., SPACE REVERSE, READ FORWARD sREAD PREVIOUS REVERSE. IE.. READ REVERSE, SPACE FORWARD {WRITE RETRY, lPESSAGE ”FER RELEASE tWRITE TAPE MARK tWRITE TAPE MARK RETRY. :SPACE “N" FILE S FORWARD. 1 SPACE "N" FILE S REVERSE. aGET EXTENDED S TATUS. ;ERASE 3 INCHES OF TAPE. REUIID AND UNLOAD. aCLEAN TAPE, 110 111 ;JUMP TO THE NT H COMMAND IN THE SEQUENCE. s REWIND. 106 122 123 123 114 116 104 ;CLEAR TAPE. 1SET CHARACTERI STICS. lDImS IC C OMMAND. THE FOLLOWING TABLE CONTAINS THE ASCII FOR EACH COMMAND. 2584 004046 2585 004051 225“587 004054 1ERASE 3 INCHES OF TAPE. IREUI'D AND UNL OAD. 1SET CHARACTERI STICS. WHERE BRF=200, 40, 20, O. : SEE_TSVOS5/T7S0S PROGRAMMING SPECIFICATION FOR DESCRIPTION. SEE 1svosnsos PROGRAMMING SPECIFICATION ) .ASCII T BE USED TO Loag oxncnosrxc DATA D5 GLOBAL AREAS MACRO V0S5.03 Fridey 22-May-87 08:12 Page 25 SEQ 0055 GLOBAL TEXT SECTION 2619 .SBTTL 262§ l 262? 262 GLOBAL TEXT SECTION T"E GLOBAL TEXT SECTION CONTAINS FORMAT STATEMENTS, 3+ MESSAGES, AND ASCII INFORMATION THAT ARE USED IN 2624 3 MORE THAN ONE TEST. 2625 j=- 2626 2627 2634 - 2635 2636 ;3 FORMAT STATEMENTS USED IN PRINT CALLS : 2637 gggg .NLIST BEX 116 116 045 045 CODELM:: ,ASCIZ /#NsAUNIT sD1sA TSOS CODE LEVEL sO3sNsSN/ SWSET:: .esg’l‘z /8NSAUNIT #D1sA TSOS SUIYCH SETTINGS s03%NsN/ 2643 004306 26‘; 004346 130 103 130 115 130 104 HALTM:: .ASCIZ /XXX CMD - TYPE <CR> TO CONTINUE/ CMDPKM:: .ASCIZ /CMD PACKET ADR NOT ON MODULO 4 BOUNDARY: RELOAD!/ 122 104 105 122 106 101 101 117 101 2660 005041 2661 005065 2662 005114 2663 005146 2664 005226 2665 735 124 124 103 122 2653 004622 2634 004642 2655 004670 106 103 126 RFCERM:: .ASCIZ /RFC NON F‘O/ NSSRM:: .ASCIZ /TSVOS NOT READY/ 125 116 FUNRM:: 124 111 124 : : 106 123 /DATA COMPARE ma/i/ :: ASCIZ RLEXM:: ATTNM:: .ASCIZ .ASCIZ /RETRY LIMIT EXCEEDED/ /DRIVE OFF LINE/ FATSM:: .ASCIZ /FATAL SUBSYSTEM ERROR/ /FUNCTION REJECT/ 040 125 045 045 045 045 045 105 116 116 116 116 116 104 122 045 045 045 045 064 .ASCI% URERM:: _ASCIZ /UNRECOVERABLE ERROR/ DROPDM:: .ASCIZ /#NsADROPPED UNIT sD1sN/ AUDRPM:: .ASCIZ /#NsAALL UNITS DROPPEDSNSN/ AUDRUN:: .ASCIZ /#NsADIAGNOSTIC ONLY SUPPORTS ONE CONTROLLERNsSN/ DTAER2:: .ASCIZ "wNwABYTE : sDAsS28AWAS : #B8sS28AS /B : ¥B8sN " DTAER3:: .ASCIZ "wD4sA UYYES IN ERROR OUT OF sD4sN" 2667 005360 045 101 122 DTAERS:: 2669 005456 2670 005507 2671 005543 2672 005570 2673 005653 045 045 045 045 040 101 101 116 101 052 104 107 045 111 052 OFLINM:: .ASCIZ GETSTM:: .ASCIZ NODEV:: .ASCII .ASCIZ LNI\FLKs .ASCIZ 2675 005744 2676 045 116 045 120 117 120 103 000 NOINTM:: _ASCIZ 117 2656 004705 2657 004727 2658 004753 2659 005017 116 5 2651 004556 2652 004603 122 124 ¥ 125 2649 004521 2650 004536 S 2648 8 2 045 045 3 : 2640 004162 26‘226“ 004231 TSAM:: TOOMM:: RNYM:: RERM:: TAERA : : CRLE:; .ASCIZ /NO INTERRUPT/ _ASCIZ .ASCIZ _ASCIZ /TAPE STATUS ALERT/ /700 MANY INTERRUPTS/ /CAPSTAN RUNAWAY-GET STATUS RESULTS:/ /RECOVERABLE ERROR/ /#ANO DATA READSN/ .A!S)SI /#LQETORD TOOLW{ >#04%A BYTESSN/ . [ASCIZ COVERED Y 0wD2wN/ /MIVE #D1%A OFF LINESN/ /#AGET STATUS CMD RESULTS:sN/ /#NsABUS TRAP AT w06#N/ /#AINTERFACE BAD OR TSDB NOT SET TO ABOVE ADDRESSsN/ / eeeesTAPE IS WRITE-LOCKED AND WILL CAUSE ERRORSesees/ /r#N/ FSP:: .ASCIZ /w#NWS7/ .LIST BEX ES GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 26 SEQ 0056 GLOBAL ERROR REPORT SECTION 2679 .SBTTL GLOBAL ERROR REPORT SECTION i THE GLOBAL ERROR REPORT SECTION CONTAINS THE PRINTB AND PRINTX CALLS : + 003376 THAT THAT ARE USED IN MORE 7’1‘:?3%7;3 . IT ALSO INCLUDES THE ASCII MESSAGES ARE USED BY THE PR INTX CALLS.. BGNMSG DTAERM: : DATERM: :PRINTB DTAERM #OSTAER1, TSNP ,PASCNT(RS),RECCNT(RS) MOV MOV MOV MOV TRAP 2695 PRINTB @STAER7 1 SAVE R2 :SAVE R3 :SAVE R4 ADD MOV OSTAER7, -(SP) TRAP ADD C$PNTB 04,5P MOV MOV RECRED, -(SP) #STAERG, - (SP) ADD C$PNTB 06, 5P LHORD JWORD J$UMP L10002-2- TRAP C$MSG MOV REC MOV MOV TSNP, -(SP) #STAER], -(SP) 2 TRAP EXIT 2706 .EVEN 2707 2708 2709 L10002: 104423 2710 2711 003376 003326 003534 006436 g C4PNTB 012,5P ;RETRIEVE RECORD READ ;RESTORE R2 :SAVE RECORD READ ;RESTORE R3 ;RESTORE R4 :PRINT RECORD READ 2705 RECCNT(RS), -(SP) PASCNT(RS), -(5P) TSNP, -(SP) OSTAER] , -(SP) MSG P ENDMSG STAERM: : STAERM: :PRINTB STAERM #STAER]1, TSNP ,PASCNT(RS) ,RECCNT(RS) MOV RS).-(SP) PAS%&RS).-&P) FS GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-1 SE@ 0057 GLOBAL ERROR REPORT SECTION 2712 012746 010600 104414 062706 000012 012746 012746 PRINTB #STAER? BIC 3177746.&2 010337 2721 04,-(SP) SP,RO C$PNTB 012,5P #STAER7, -(SP) 01,-(SP) SP,RO C$PNTB 04SP MOV MOV RECRED, - (SP) OSTAERG, -(SP) ADD MOV C$PNTB 06,5P #STAER2, ego 04SP MOV MOV MOV MOV MOV MOV CTCC.-(SP) TSSREG, - (SP) MSGPKT+MS.RFC, -(SP) @TSDB(RS), -(SP) CMOPKT , -(SP) #STAERS, -(sP) ADD #16,5P MOV MOV MOV MOV T+6.-(SP) CMOPKT+2, -(SP) OSTAERS, -(SP) CMOPKT ,R2 TST 013746 012746 012746 010600 104414 062706 MOV MOV TRAP ADD MOV MOV MOV TRAP ADD 000004 MOV PRINTB R3.RECTAP #STAERG , RECRED :IF CMD IS A READ : THEN RETRIEVC : AND ;TYPE RECORD READ > TRAP : PRINTX OSTAER2 TRAP 2722 PRINTX O#STAERS, CMDPKT ,3TSDB(RS) ,MSGPKT «MS.RFC, TSSREG,CT 33 g C$PNTX -(SP) -A R TRAP C4PNTX 2723 PRINTX OSTAER4 ,CMOPKT+2,CMDPKT «4 ,CMDPKT «6 B TRAP PRINTX Sae CHPNTX 012,.5P ADD 2 O#STAERS ,MSGPKT +MS . XSO ,MSGPKT +MS . XS1 ,MSGPKT +MS , XS2 ,MSGPKT «MS . XS3 ,MSGPKT «MS . XS 833388 2724 CHDPKT-4.-¢oP) MSGPKT . XS4, +MS -(SP) MSGPKT +MS . XS3, -(SP) *MS.XS2,-(SP) G5 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 26-2 SEQ 0058 GLOBAL ERROR REPORT SECTION 006416 006422 006424 006426 012746 010600 104415 062706 006432 —_— 006434 000167 000432 2725 006432 2727 000006 000016 EXIT MSG LNLIST BEX sz’gg 006436 045 101 130 STAER1: esg'x‘z 2730 006530 2731 006562 2732 006616 2733 006675 2734 006733 2735 006740 2736 006745 2737 006753 2738 007027 045 045 045 045 045 045 045 045 045 101 123 116 117 117 117 117 101 117 120 061 045 066 066 066 066 130 066 STAER7: STAER6: STAER2: STAER3: STAER4: 2739 2740 g;:% 007066 000000 2743 007070 007070 - 007070 104423 .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCII .ASCII .ASCIZ STAERS: .ASCII .ASCIZ RECRED: L10003: BEX .WORD O T 2749 2750 2751 2752 2753 ; THAT ARE USED IN MORE THAN ONE TEST 3-- 2761 2762 2763 2764 2765 2766 2767 2768 2769 57,;‘1’ 2772 2773 ;RECORD READ FROM TAPE TRAP 2747 g;zg J$JMP L10003-2-. ENDMSG .SBTTL 2756 2757 2758 LWORD .WORD /#APREVIOUS CMD WAS XXX / /#S11%As RECORD READ:%DSsA /mncmusznvsausanarc-sssnssmsunccw /#06%S2%06%S2806%52806%52801%N/ /#06%N/ /#06%N/ /#06%N/ /#AXSTOSSASAXST1sSASAXST28SA%AXST ISSASAXSTASN/ /#06%S2806%S2806%S2806%S2%506%N/ 53':2 2748 -(sn SP,RO C4PNTX #16,5P /8AXXX CMD FAILED - UNIT sD1sS3%APASS :#DS#S3%ARECORD : SDSSN/ LIST -EVEN MOV MOV TRAP ADD C$MSG GLOBAL SUBROUTINES SECTION i THE GLOBAL SUBROUTINES SECTION comnms THE SUBROUTINES B ;ROUTINE TO DO A SOFT INITIALIZE OF THE CONTROLLER iBY WRITING INTO THE TSSR REGISTER. AFTER THE INIT, ;THE TSSR REGISTER IS TESTED FOR ERRORS. ANY ERRORS ;:DETECTED SHOULD BE TREATED AS DEVICE FATAL ERRORS. H s INPUTS; 3 : : RS CURRENT UNIT NUMBER f ;OUTPUTS; : ; ; : RO CARRY CONTENTS OF TSSR, IF ERROR SET IF INIT WAS OKAY CLEAR IF FATAL ERROR H ;CALLING SEQUENCE: ; JSR PC,FIRSTU 1 H5 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-3 SEQ 0059 GLOBAL SUBROUTINES SECTION 2774 . g;;g : 2775 2778 2779 2780 2781 2782 2783 2784 JSR : BCS ERRDF PC,SOFINIT CONTINUE ;REPORT FATAL ERROR 3 g 007072 SOFINIT:: 007072 007100 007104 012775 004737 012703 2786 007114 2787 007116 007116 007122 007124 007130 007132 007136 007140 007144 103416 2785 007110 2788 007146 2789 007150 2790 007152 2791 007156 004737 012727 000000 013727 000000 005367 001375 005367 001367 000000 012740 000550 007204 002524 2%: 000250 #0,aTSSR(RS) PC. WSSR #360. ,R3 BCS DELAY 34 250 DEC BNE MOV MOV R3 24 BTSSR(RS) RO RO,R aGET THE TSSR REGISTER TSSR CONTENTS #7S.SSR!TS.NBA,R ;R4 HAS EXPECTED CONTENTS Ss ;BRANCH IF OKAY JSR 2793 007164 052704 002200 2795 007172 001402 BEQ 000401 000261 BR SEC 2797 007176 2798 007200 2?2.33 007202 MOV .WORD MOV .WORD DEC BNE DEC BNE 177756 2792 007160 042704 176277 2796 007174 ; WAIT FOR SSR 177772 002524 020400 PC,WATTF 002116 005303 001357 017500 010004 2794 007170 ; (SAVREG) SAVE THE REGISTERS ; DO THE INIT, ;WAIT FOR UNIT TO BE READY MOV JSR MOV 34: BIC BIS cHP 000241 CLC Ss: 000207 10¢: RTS Oféds A17!TS. A16'TS GL» R4 R4 ,RO sONLY EXPECTED BIYS SET ? ;CLEAR THE CARRY FOR ERROR 104 :GO TO EXIT :SET THE CARRY BIT PC sRETURN TO CALLER 2801 [ 280 2804 2805 2806 2807 2808 22009‘10 : s INPUTS: 3 : RS 3 3 ;OUTPUTS:: CURRENT UNIT NUMBER 2811 2812 3 F CONTENTS OF LAST TSSR READ SET - READY BIT SET 200% : giz SUBROUTINE TO WAIT FOR THE SUBSYSTEM READY FLAG : 2815 007204 007204 2816 007206 012746 2818 007216 2819 007220 105700 100420 2817 007212 2820 007222 007222 RO CARRY CLR - TIMEOUT WAITING FOR READY ) 104422 017500 012727 WAITF:: BREAK 005670 002524 000025 $250,(PC)O L$DLY,(PC)O -6(PC) .-4 -22(PC) .-20 24: MOV MOV TST8 BMI DELAY : DO A SUPVSR BREAK FIRST. ©3000.,-(SP) : 300 MSEC TIMER. RO 34 :TEST FOR READY BIT SET : EXIT ON STOP FLAG. aTSSNfiS).flO 25 TRAP C$BRK MOV 025,(PC)- ;READ THE TSSR REGISTER 3 WAIT 15 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-4 SEQ 0060 GLOBAL SUBROUTINES SECTION 807388 01 g727 000000 001373 003367 001367 177772 177756 DEC BNE CcLC BR SEC 3%: a4 2829 2830 2831 2832 2833 34 2835 36 2837 2838 2839 DEC RTS 2E% RS L,MORD O (SP) ;REDUCE DELAY COUNT 2% DEC BNE DEC BNE 43331 : as '(’cso)o C = 0, .aesroaé STACK WITHOUT CHANGING CARRY BIT CONTROLLER IS STOPPED. ADDRESS OF s':m PACKET CURRENT UNIT NUMBER - 2846 2847 2648 2849 2850 2851 52 TSSR CONTENTS SET - WRITE CHARACTERISTICS COMMAND OK CLR - WRITE CHARACTERISTICS FAILED IMPLICIT OUTPUT: 08 08 08 08 08 08 08 SOF TWARE SWITCHES SET AS FOLLOWS: EXTFEA = EXTENDED FEATURES PRESENT BENBSW = BUFF ER ENABLE SWITCH ON OR OFF 2853 011402 011203 032763 008257 000012 002322 454:; 5 an 40%: BCS BR TS7 MOV MOV BIT BEQ INC TSDB(RS) TF =1 WRTCHX : : 10%: MOV JSR 002514 007204 "ns - 010475 004737 103401 000441 U.NIV v 1 007312 007320 007322 007326 :SIDE EFFECTS: AX222883 8 Rion e 54 2855 56 2857 58 2859 007270 -6(PC) -22(»0 .-20 CONTROLLER STILL RUNNING.. ..mmwwveasoonsec : RO CARRY LSDLY,(PC)e IRETRY UNTIL TIMER EXPIRES REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY 2845 2867 2868 2869 2870 O :RWTIUC TO ISSUE A WRITE CHARACTERISTICS COMMAND AND CHECK FEATURES 2641 2866 LMORD MOV 002116 R3 trs MS.XS2(R3) EXTF EA :SEND OUT COMMAND ;WAIT FOR SSR 1BR, IF SSR IS SET AND Ox ?EII’IMEC“Y-CLE“ ; IPOINT TO WRT CHARA DATA PACKET T _ADDRESS OF MESSAGE BUFFER aexraoeo FEATURES BIT SET? 1BR_IF NO ;SET EXTENDED FEATURES SW SWITCH JS GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-5 SEQ 0061 GLOBAL SUBROUTINES SECTION 2871 007326 032763 001402 005237 000100 016337 042737 000000G 002324 002324 002324 022737 001406 012737 BIT 000012 SO0$: 002322 052763 BEQ INC 0X2 .BFE ,MS . XS2(R3) SO$ BENBSW :wrsn ENABLE SWITCH SET MOV BIC cve BEQ MOV XST2(R3),REV 917700, REV mxcnocooe REV LEVEL ;CLEAR UNWANTED BITS 554 iNO BR #X2 .EXTF ,XST2(R3) sMICROCODE ;EXTENDED FEATURE ALWAYS SET IN ;MICROCODE BIS S55%: 60%: 704 : SEC BR CLC MOV RTS #1,REV ?1.EXTFEA 704 @TSSR(RS),RO PC IF SWITCH NOT SET f SOF TWARE SWITCH FOR ENABLED sIS IT A NEW MICROCODE MLUAY EXTENDED FEATURE FOR NEW 1855'{ CARRY NO TROUBLE |CARRY CLEAR = ERROR sRETURN TSSR CONTENTS s RETURN R : sROUTINE TO CHECK WRITE LOCK CONDITION 3 s INPUT: 3 : 3 R4 RS ADDRESS OF COMMAND PACKET CURRENT UNIT NUMBER 3 ~ 2910 2911 29 2913 2914 2915 2916 2917 2918 2919 2920 %21 2922 404%: MOV JSR BCS BR ST MOV MOV 817 BEQ ERRHRD 017240 S55¢: 60$: 704 : :SEND OUT C ;UIIT FOR SSR ;BR, IF SSR IS SET AND 0K :BR IF TROUBLE CARRY = CLEAR :STEP I7 sPOINT TO0 WRT CHARA DATA PACKET :GET ADDRESS OF MESSAGE BUFFER ;Is UNIT WRITE LOCKED? ,uéc 1S WRITE LOCKED PROCEED WITH TESTING JSR BR SEC BR cLC sDROP IT RTS ;RETURN sEXIT WITH CARRY=0 :SET CARRY NO TROUBLE sEXIT ;CARRY CLEAR = ERROR :noum: TO ISSUE A WRITE CHARACTERISTICS COMMAND :IW: 3 -§ 002514 007204 i ELELEL 3 geo WLKCHK 104: K5 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-6 SEQ 0062 GLOBAL SUBROUTINES SECTION 2924 2925 2926 B RS 2927 RO CARRY EEHERAMU L AU SR R E RE N4 TSSR CONTENTS SET - WRITE CHARACTERISTICS COMMAND OK CLR - WRITE CHARACTERISTICS FAILED iSIDE EFFECTS: B H . 010475 004737 103401 007510 2949 007512 007512 000261 007516 2953 00 000241 017500 2978 007526 007526 2979 007530 NUMBER IMPLICIT OUTPUT: 2943 2951 007514 (f'm PACKET OUTPUT: 2942 2947 007506 CURRENT UNIT REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 29540 2941 2944 007476 2945 007476 007502 ADDRESS OF 002514 007204 WRTCHR: : 10%: 20¢ 000402 000401 002524 604 : 70%: MOV JSR B8CS BR R4 ,3TSDB(RS) PC,WAITF S04 604 :SEND OUT C ;WAIT FOR SSR :BR, IF SSR IS SET AND Ox SEC BR CLC 704 ;SET_CARRY NO TROUBLE sEXIT :CARRY CLEAR = ERROR MOV RTS :BR IF TROUBLE CARRY = CLEAR @TSSR(RS) RO PC ;RETURN TSSR CONTENTS ;RETURN ‘. ROUTINE TO DO SET UP OF RUNNING CONDITIONS :IW'S: H RS CURRENT UNIT NUMBER J0UTPUTS: H SCALLING SEQUENCE: JSR JSR 8CS ERRDF JSR 104422 004737 PC,FIRSTY PC .. SOF INIT CONTINUE PC,MDSET MDSET:: BREAK 010026 JSR ;REPORT FATAL ERROR :+ DO A SUPVSR BREAK FIRS'{&» PC,SETDEF sRESTORE DEFAULT C$BRK Ld GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-7 SEQ 0063 GLOBAL SUBROUTINES SECTION 2980 007534 2981 007540 004737 103416 007416 007542 012727 000001 007550 013727 002116 MOV L$DLY,(PC)e 007556 007562 007564 007570 2983 007572 005367 001375 005367 001367 177772 DEC BNE DEC BNE -6(PC) -4 ~22(PC) .-20 2982 007542 007546 007554 007572 2984 007574 007574 000000 000000 104444 005737 001064 004737 004737 005737 001415 052737 2993 007634 2994 007636 2995 007642 2996 007646 2997 007652 2998 007654 2999 007660 3000 007662 001002 004737 004737 004737 000443 005737 001415 052737 3001 007670 3002 007674 3003 007676 3004 007702 3005 007706 3006 007712 3007 007714 3008 007720 3009 007722 DELAY 005737 005737 001002 004737 004737 004737 000423 005737 001415 052737 3010 007730 005737 3011 007734 3012 007736 3013 007742 3014 007746 ,sgiz 007752 001002 004737 004737 004737 000403 3381; 007754 3019 007762 013737 000207 PC , WLKCHK 18 1 ;CHECK WRITE LOCK ;C=1 IS 0.K. sWATT LMORD 177756 002312 18: 002322 : YES ;INVERT THE SWITCH ;NOW SET THE MODES ;00 IT 003532 24 PC, INVRT PC . SETDEF PC.WRTCHR 114 WTBUF S$ OEF . RWB , TSUNT a4 PC, INVRT PC . SETDEF PC . WRTCHR 114 ROBUF 104 O€F .RBO, TSUNT s YES ;INVERT THE SWITCH ;NOW SET THE MODES ;00 IT 003532 BNE JSR JSR JSR AR 18T BEQ BIS 64: BNE JSR JSR JSR BR 64 PC, INVRT PC . SETDEF PC.WRTCHR 114 1 YES ;INVERT THE SWITCH :NOW SET THE MODES ;00 IT 10%: 114: MOV RTS TSUNT , SCHBK+10 PC TsT 38 157 007764 010026 007476 a4 002314 S$: 002322 007764 010026 007476 003532 ;00 CLEAN AND ABORT BNE JSR JSR JSR BR TST BEQ BIS Y 003532 002316 000020 DOCLN ;RUN IN DEFAULT MODE? s YES ,RETURN ;RESTORE DEFAULLT ;GO DO SWITCH CHECK ;00 WE RUN AT 100ips? :NO 1YES,SET THE BIT 24: 002322 ;BREAK TO SUPER TS1IMD 104 PC, SETDEF PC . WRTCHK HSSW 33 PEF . HSS , TSUNT 007764 010026 007476 000030 BREAK 1S7 BNE JSR JSR 1ST BEQ BIS 010026 007270 002320 000040 MOV LWMORD 104422 2985 007576 2986 007602 2987 007604 2988 007610 2989 007614 2990 007620 2991 007622 2992 007630 JSR BCS 002504 17 EXTFEA EXTFEA EXTFEA TRAP C$DCLN ;ARE WE SET? ;RUN WITH READ BUFFERING? :NO :YES SET THE BITS : SUBROUTINE TO INVERT SENSE OF EXT'D FEATURES SWITCH :IWS: : C$BRK ;RUN WITH WRITE BUFFERING? :NO :YES SET THE BITS ;AND UNIT ¢ ;RETURN O TRAP ;ARE WE SET? ;ARE WE SET? #1.(PC)- © M5 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 26-8 SEQ 0064 GLOBAL SUBROUTINES SECTION :OUTPUTS: 012737 012737 012737 012737 012704 004737 000207 002330 INVRT:: ousréx CMOPKTCP. ADL sWRT SUB-SYS MEM :MSG_BUF ADDR $100010, g?ex PC, smcm 100 IT CMDPKT.CP.CMD 96, CMDPKT +CP.CNT 002336 002506 PC :BYTE_COUNT s INVERT THE SWITCH 'RETURN SETUP DEFAULT SET CHAR CMD ADDRESS OF COMMAND PACKET 140004 002330 002474 000012 000040 003532 002330 A1 CHOPKT +CP . CMD HRIYE CHAR CMD #SCHBK ,CMDPKT +CP . ADL #5C +CMDPKT+CP . CNT OOF TSCH, SCHBK +6 TSUNT, sé'-axoxo Pogm +SET UP COMMAND SE UP ADR LO TO POINT TO MSG BUF (MSGPKO) lSET BUFFER EXTENT 1 STORE CHMACTERISTIC CODE IN SCH BLOCK. lNI MDORESS OF CMD PACKET sRETURN TO HANDLE TSOS INTERRUPTS. 3068 3069 005237 003472 L10004: 3070 3071 3072 3073 005237 003474 3074 3075 010110 010110 3076 010110 005237 003476 ENDSRV TSSIN2: : INTFLG :SET INTERRUPT OCCURRED FLAG. RTI TSSIN1:: I L1000S5: 010106 010106 TSSINO TSSINO: : \') ENDSRV TSSIN1 INTFLG-2 :SET INTERRUPT OCCURRED FLAG. RTI v INC TSSIN2 INTFLG-4 1SET INTERRUPT OCCURRED FLAG. NS GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-9 SEQ 0065 GLOBAL SUBROUTINES SECTION 3077 010114 010114 078 010114 3079 010116 010116 3080 010116 3081 010122 010122 082 010122 L10006: 000002 005237 TSSINS:: 003500 L10007: 000002 3083 3084 3085 3086 3087 3 : ; 3 : 3063 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 gigz : 010124 010132 010134 010140 010144 010150 010152 010154 010156 010162 010164 010166 010172 010174 032737 001430 013702 063702 032702 001417 2 111203 142703 000303 005 105737 001401 005 3105 010176 3106 010176 01 111204 142704 01 3109 010206 3110 010210 3111 010210 3112 010212 3113 010212 3114 010214 giiz 010214 3117 010220 ;{ig 010220 050403 000400 002360 003410 000001 177400 003520 177400 500024: 011203 500044: 000402 173170 3120 3121 3122 3123 3124 3125 3126 3127 010222 3128 010222 500014 : 500054: 000207 : H : ; ' i 012701 003540 RTI BGNSRV TSSIN3 INC ENDSRV INTFLG+6 SETCH:: :SET INTERRUPT OCCURRED FLAG. RTI SUBROUTINE TO RETRIEVE RECORD COUNT READ FROM TAPE FOR ERROR PRINTS. INPUTS: OUTPUTS: R3 = RECORD COUNT READ REGISTERS: R2, R3, R4 CALLS: RECTAP::BIT BEQ MOV ADD BIT BEQ INC MOVB BICB SWAB DEC 1ST8 BEQ DEC 500034 : 000401 017703 003420 ENDSRV MOVB 8ICB #M0D . CO, CMDWRD ;READ REV FETCH 14 MSGPKT+MS.RFC,R2 sFIND LAST READ AD. DATARD,R2 #8IT00,R2 ;000 AD., REASSEMBLE . 24 R2 sREC COUNT STARTING (R2),R3 sWITH UPPER BYTE FETCH #177400,R3 R3 R2 sLET R2 := R2 - 01 :LOWER BYTE AD. SWBFLG :IFB SWBFLG NE #0 THEN 500034 R2 iLET R2 := R2 - 01 ;LOWER BYTE AD. ON SWAP (R2),R4 9177400,R4 BIS R4,R3 MOV (R2),R3 BR 500054 MOV @DATARD,R3 RTS PC BR sFETCH LOWER BYTE 50004¢ iLET R3 := (R2) sEVEN AD. FETCH sLET R3 := SDATARD SUBROUTINE TO STORE A SET CHARACTERISTIC COMMAND AS THE FIRST ENTRY IN THE SEQUENCE TABLE. INPUTS OUTPUTS: REGISTERS: CALLS: #CMDSEQ,R1 : : sREAD FWD FETCH % +INIT CMD SEQUENCE TABLE POINTER. B6 GLOBAL AREAS MACRO V0S.03 Fridey 22-Moy-87 03:12 Page 26-10 SEQ 0066 GLOBAL SUBROUTINES SECTION 3129 010226 3130 010232 3131 010236 3132 010242 ;gz 010244 012721 012721 012721 005721 000207 140004 000040 000001 MOV MOV MOV TST RTS PC 3135 ; 3136 3137 3138 : ; : gizg 314] 010246 3 012721 3142 010252 3143 010256 012721 012721 gig 010264 000207 3144 010262 005721 #SCH, (R1)+ oonécn (R1)+ #1,(R1)+ 102010 (Ri)e :SKIP PATTERN LOCATION. SUBROUTINE TO STORE A REWIND COMMAND IN THE SEQUENCE TABLE INPUTS: REGISTERS: OUTPUTS: CALLS: SETRW:: MOV 000001 000001 ;THIS CODE SETS UP A SET cumncvenxsuc 1 COMMAND AS THE FIRST COMMAND IN THE 1 SEQUENCE TABLE, ORWD, (R1)+ MOV MOV ;CMD = REWIND. #1,(R1)+ #1,(R1) 18T 1BRF. ¢ OF OPERATIONS. (Ri)e RTS sSKIP PATTERN. PC sRETURN 3147 ; SUBROUTINE TO EXECUTE ALL COMMANDS IN THE SEQUENCE TABLE ON ALL 3150 H : OUTPUTS : R2 = TERMINATION INDICATOR (O=END OF TABLE,1=EOT) gigg : CALLS: CMDAC, SETUP, EXSUB , CKHAE ,NEXTU,FIRSTU, VFYDAT . 3151 : 3154 010266 012701 003540 3156 010272 021127 177777 3158 010300 004737 011232 3155 010272 3157 010276 3159 010304 010304 001530 104422 500064: 50010%: 003412 011124 003414 3165 010330 3166 010336 3167 010380 3168 010344 3169 010346 3170 010354 3171 010362 3172 010370 3173 010376 3174 010404 ;{;2 010406 023727 001031 105737 001026 063737 063737 013737 043737 023727 002003 012737 003420 104005 013737 003515 ;INIT SEQUENCE TABLE POINTER. (R1),9END sWHILE THERE ARE CMDS IN THE SEQUENCE TABLE. JSR PC,SETUP 1GO SETUP THE COMMAND BLOCK. ce BGE JSR NCNT ,NCNT1 50011$ PC,CMDAC {WHILE THERE ARE RECORDS REMAINING: ;STORE CMD ASCII IN ERROR MESSAGE. cHe BNE CMOWRD , AWRT S00134$ VFYFLG 500144 RANS , RANB RANB . RANS RANS , BRFCNT LENMSK,BRFCNT BRFCNT, 018 500154 #18. ,BRFCNT ;IF CMD IS A WRITE THEN: cMP BREAK TSTE BEQ 003516 003434 003432 003434 003430 003416 000022 #CMDSEQ,R1 BEQ 023737 002116 004737 105737 001435 REGISTERS: EXALL:: MOV 3160 010306 3161 010314 3162 010316 3163 010322 3164 010326 3 TSTB BNE ADD ADD MOV 003432 003434 003416 003416 000022 003416 BIC cHP BGE MOV 500154 : S0007$ RANDOM 500124 : DO A SUPVSR BREAK FIRST. TRAP ;IF IN RANDOM MODE : ;IF DATA IS NOT TO BE VERIFIED THEN: ;LET RANB := RANB + RANS ;GENERATE ;LET RANS := RANS « RANB ;RANDOM sLET BRFCNT := ams sLENGTH ;MASK RANDOM LENGTH 100 NOT ALLOW BYTE COUNT OF LESS THAN 18 sCHANGE COUNT OF 0-17 TO 18. BRFCNT ,CMOPKT+CP.CNT +MOVE BRF TO CMD PACKET. C$BRK GLOBAL AREAS MACRO V0S5.03 Friday 22-May-87 08:12 Page 26-11 SEQ 0067 GLOBAL SUBROUTINES SECTION 3185 010564 017540 000001 017142 85?527 002604 177777 000400 000002 032757 001406 032765 001001 005002 3201 PC.EXSUB PC . CKHAE 004737 004737 012702 004737 91.R2 PC.FIRSTU 500164 : {LET R2 ,ISSUE CMD TO ALL,AWAIT INTS,CHECK STATUS. {CHECK MALT AFTER EACH CMD FLAG. := o1 LSET i{FIND FIRST UNIT ALL UNITS AT BOT/EOT. 003420 DEVTBL(RS), 9END 2100, 0. CrowRD JWHILE THERE ARE MORE UNITS: ;IF CMD IS REVERSE THEN: 003502 £X0.80T EOTFLG(RS) ;IF NOT AT BOT THEN: JLET R2 := 00 ;CLEAR EOT/BOT FLAG. S00214: 000411 032765 001404 032737 001001 003502 500224 500204: JELSE IF CMD IS NOT REVERSE: £X0. €07 EOTFLGCRS) 500334 #CMD . CO, CMDWRD 500244 003420 500234 : 005002 :IF NOT AT EOT OR NOT A MOTION CMD THEN: R2 'CLEAR EOT/BOT FLAG. 004737 000746 017210 020227 000001 001001 500224 : S00174%: R 003412 003420 000655 004737 000645 005202 000207 PC,.NEXTU . R2,01 ,IF ALL UNIT ARE AT EOT/BOT THEN: EXARTN 000412 005237 013737 50016 $ 500254 ORI RRUNE S oS0 K 500244 : 016126 500254: FIND NEXT UNIT JRETURN WITH R2 = #1. NCNT LET NCNT := NCNT + o1 UPDATE RECORD COUNT. CMOWRD , PCHMOWD sSAVE PREVIOUS COMMAND WORD. 003424 500104 S00114: PC,VFYDAT ;IF LAST CMD WAS A WRITE VERIFY, THEN GO sVERIFY THE LAST N RECORDS OF DATA. S0006 ¢ S00074: CLR EXARTN: RTS PC R2 sLET R2 := 00 sSET NORMAL RETURN INDICATOR. ;RETURN, SUBROUTINE TO ISSUE COMMAND TO ALL DEVICES, WAIT FOR ALL INTERRUPTS, AND CHECK ALL STATUS. INPUTS: OUTPUTS ; REGISTERS : CALLS: EXCUTE ,GOWAIT ,NEXTU,FIRSTU. D6 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 26-12 SEQ 0068 GLOBAL SUBROUTINES SECTION 004737 017142 026527 002604 177777 032737 000400 003420 000002 003502 000001 003502 001465 PR 001421 032765 001014 032765 001406 105737 001402 004737 ggggiz JSR ;SET UP FOR FIRST UNIT. T ce DEVTBL(RS), SEND ;WHILE THERE ARE MORE DEVICES: BIT #MOD . CO, CMDWRD BEQ BEQ BIT BNE 8IT BEQ 1sT8 003524 012114 BEQ JSR —— 000402 004737 PC.FIRSTU sooszo. BR 012114 " JSR S00274 500304 #X0.B0T,EOTFLG(RS) 50031 #X0.EO0T ,EOTFLG(RS) 500324 ALLEOT 500334 PC,EXCUTE ;IF CMD IS REVERSE THEN: ;IF NOT AT BOT ;BUT IF AT EOT ;AND ALL OTHERS AT EOT ; THEN EXECUTE REV CMD ;IF NOT ALL AT EOT, FREEZE UNIT(S) AT EOT 500344 ;IF NOT AT BOT AND PC,EXCUTE ;NOT AT EOT, EXEC REV CMD 500354 ;ELSE IF CMD IS NOT REVERSE: SEEEESE RORKKKRR0K SIFANANSS R S00344: 3281 3283 3285 010732 86 ERE 3287 3288 3289 S0031%: 000435 023727 o 003426 000002 000002 003502 016537 005077 002616 172606 003512 032765 000001 003502 032737 000001 003420 001011 032765 001405 001404 001003 T cee BNE BIT BEQ MOV CLR S00364: 105737 003524 001402 004737 012114 BIT BEQ S00374: 004737 012114 000405 BR 500404: CMOLG, #2 500364 #X0.B0T ,EOTFLG(RS) 500364 BTADDR(RS),BTPT aBTPT ;CLEAR BAD SPOT COUNTS WHEN WRITING FROM BOT LET BTPT := BTADDR(RS) JLET @BTPT := 00 #X0,.EO0T ,EOTFLG(RS) BNE BIT 500374 #CMD . CO, CMDWRD 500404 JSR BR PC.EXCUTE 500414 1578 BEQ JSR ALLEOT 500424 PC.EXCUTE ;IF NOT AT EOT OR NOT A MOTION CMD THEN: ;ISSUE CMD TO TSOS ;IFB ALLEOT NE 00 THEN S00424: 500414: 004737 000707 017210 500354: 500274 : PC,NEXTU BR 500264 ;FIND NEXT UNIT IN TEST CYCLE. . E6 GLOBAL AREAS MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 26-13 SEQ 0069 GLOBAL SUBROUTINES SECTION 105737 003517 RPTF%? 003517 RPTFLG 500434: 017142 +IF REPORT HAS BEEN REQUESTED THEN: ;CLR_THE FLAG ;PRINT THE PERFORMANCE REPORT. PC.FIRSTU WVTgl‘.(RS)..E'D 003420 onoo.%o.mo :IF CMD IS REVERSE THEN: 003502 OXO.%Y.EOYFLG(RS) ;IF NOT AT BOT 003502 #X0.EOT ,EOTFLG(RS) 500504 sWHILE THERE ARE MORE DEVICES: ;:BUT IF AT EOT ALLEOT ;AND ALL OTHERS AT EOT PC.GOWAIT : THEN WAIT FOR CMD END :IF NOT ALL AT EOT, DO NOT WAIT 500514 S00514: ;:NOT AT BOT, AND NOT AT EOT 500524 000001 001003 004737 342 011110 003502 " BIT 003420 BIT BNE 105737 003524 004737 012424 3346 011114 S00564: 000724 017210 500534 ;ELSE IF CMD IS FORWARD: #X0.EOT ,EOTFLG(RS) 500544 #CMD. CO, CMDWRD 500554 ALLEOT 500574 PC.GOWAIT S00574: 004737 ;WAIT FOR INT,CHECK STAT S00534: 500454 : +IF NOT AT EOT OR NOT A MOTION CMD THEN sWAIT FOR INT,CHECK STATUS. 50056 4 500554: 3344 011114 3348 011114 3349 011114 3350 3351 011120 3352 011122 3353 011122 3354 PC,GOWAIT PC.GOWAIT 012424 PC.NEXTU ;IFB ALLEOT NE #0 THEN ;FIND NEXT UNIT IN TEST CYCLE. 500444 RTS CSDRPT :SET UP FOR FIRST UNIT. 177777 012424 TRAP PC ;RETURN, F6 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-14 SE@ 0070 GLOBAL SUBROUTINES SECTION 3355 : ggg; ; &:omngus CURRENT CMD AND LOCATION PCMOWD CONTAINS PREVIOUS CMD. ; ; REGISTERS: CALLS: 3356 : ’ : 3359 3360 §§5 3363 011124 3364 011130 3365 011134 3366 011140 013704 004737 112337 112337 3367 011144 3368 011150 111337 013704 3370 011160 3372 011170 003420 011176 gg;} 011174 "Ul H OUTPUTS: CMDAC:: MOV 006440 MOVB (R3)+.STAER1+3 MOVB MOV 112337 006554 MOVB 111337 006556 MOVE 112337 006555 CMDWRD, R4 ;LET R4 PC,GCMOA 006442 003424 := CMOWRD (R3).,STAER1.2 (an.énem« JSR PC Gcrén MOVB (R3)+.STAER7.25 RTS ON ENTRY LOCATION CMDWRD R3, R4, GCMDA JSR MOVEB 006441 3369 011154 004737 011176 3371 011164 THIS SUBROUTINE STORES THE ASCII FOR THE CURRENT COMMAND AND PREVIOUS COMMAND IN THE STANDARD ERROR MESSAGE. (R3).,STAER7.24 (R3),STAER7.26 PC :GET CMD ASC1I. ;R4 = CMD BINARY, sMOVE CMD ASCIi ; sINTO nsc PREVIOUS CMD BINARY. :GET CMD' ISCII ;MOVE CMD ASCII ;INTO MSG, sRETURN. GO EXECUTE NEXT FUNCTION. 3375 3376 3377 ; ; SUBROUTINE TO FIND THE ASCII eouzvnem or m: COMMAND IN R4, ADDRESS OF ASCII 1ST WORD IN 3379 3380 ; : OUTPUTS REGISTERS 3378 : 3333 3 3383 011176 3384 011200 005003 3385 011200 3386 011204 3387 011206 3388 011212 026304 001403 062703 000772 3390 011214 3391 011216 010304 006203 3393 011222 3394 011224 gggz 011230 060403 062703 000207 3389 011214 3392 011220 003752 000002 e BEQ ADD BR .500614: MOV ASR ADD ADD RTS ; 3398 3399 3400 3401 ; ; ; : S‘O% Il 005037 012137 011137 011137 013702 3409 011256 042702 3410 011262 01020 3411 011264 GCMDA:: CLR 500604: 004040 162703 003426 002330 002336 003416 002330 177740 000010 RE = R3 = ADDRESS OF PRESENT COMMAND ASCII CALLS: NOP 3397 3404 011232 3405 011236 3406 011242 3407 011246 3408 011252 INPUTS R3;LET R3 := 00 ;INIT CMD TBL POINTER. CMDTBL(R3),R4 sUNTIL CURRENT CMD IS FOUND: 50061$ #2,R3 ;LET R3 := R3 + 92 :SEARCH CMD TABLE. 500604 R3,R4 R3 ;LET R4 := R3 R4,R3 SCMDASC ,R3 PC ;POINT TO ASCII FOR THAT COMMAND ;RETURN. THIS SUBROUTINE LOADS THE TSOS COMMAND PACKET FROM ONE ENTRY IN THE SEQUENCE TABLE. INPUTS: OUTPUTS;: REGISTERS: R2, R3, CALLS: SETUP:: CLR MOV MOV MOV BIC MOV SuB GENPAT, CMOLG (ano nn érooxv.cp CNT (R1) cromn ONCMD . éR2 R2,R3 #CMD.C3,.R3 ;CLR CMD LOGGING CODE(DISABLES LOGGING) ;LOAD THE COMMAND WORD. ;LOAD THE BYTE/RECORD/FILE COUNT. :SAVE BRF FOR THIS COMMAND. 1GET CMD. ;CLR ALL BUT CMD BITS. 1SAVE IT TWICE. 1POSITION COMMAND? G6 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-15 SEQ 0071 GLOBAL SUBROUTINES SECTION g:lg 011270 001003 011137 002332 3415 011 3416 011306 33:{; 011310 023727 001003 012737 002330 100011 000002 003426 3419 3420 3421 3422 3423 011316 011316 011320 011324 011326 010203 162703 001017 013737 3425 011342 3426 011344 001404 012737 3428 011352 3429 011354 g:g(l) 011354 000403 3‘1‘ 8%{272 3424 011334 3427 3432 3433 3434 3435 3436 3437 032737 012737 003410 000400 000004 000006 002474 3439 011410 011137 002502 3440 011414 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 011422 011424 011426 011432 011434 011442 011450 011452 011456 011462 011466 3452 011470 3453 011474 3454 011476 013737 000412 010203 162703 001006 012737 012737 005721 012137 005037 012137 010203 162703 001010 013737 3455 011504 004737 3456 011510 012737 3457 011516 032737 3458 011524 3459 011526 3460 011534 3461 3462 011542 3463 011544 g:g; 011544 3466 011550 3467 011550 3468 011556 001407 112737 042737 1BR IF NOT. cHe BNE MOV CMOPKT , OWTM 500624 #2,CMDLG +IF CMD IS A WRITE TAPE MARK THEN: 002332 MOV SUB BNE MOV R2,R3 #CMD.CO,R3 14 DATARD, CMDPKT.CP ADL :1IS IT A READ? :BR IF NOT. lIF SO, LOAD THE BUFFER ADDR. 003426 BEQ MOV 500634 #4,CMOLG :LOGGING_CODE IS 4 24: 000001 000432 010203 162703 001014 012737 012737 24 Bngv 500624: 011362 011362 011364 011366 011372 011374 3438 011402 BNE 002330 003426 BIT 500634: 500644: 1%: 000004 000012 003532 002332 002336 000020 003406 002336 002332 003414 003412 003446 3%: 003406 011616 000002 000100 000001 000100 003516 013737 013737 003420 002330 34 R2,R3 OC’Q.CZ.RS 44 #SCHBK CH)PKToCP ADL MOV (R1) 06 BR MOV SuUB BNE MOV MOV TST 003426 MOV S%: 003516 002330 000402 105037 BR MOV SuB BNE MOV BEQ MOVB BIC 500654: 003424 003420 JSR BIT 500664: OSCPCN" F CMO IS A READ REV THEN: :ELSE - IF CMD IS A RCAD FWD: ©6,CMDLG 002332 002330 #M0D . CO, CMDPKT MOV CLR MOV MOV SuB BNE MOV 000005 sWTM LOGGING CODE IS 2. 50064¢ MOV 4a%: 000006 sMOVE BPCR IN 2ND PKT WORD FOR POSITION CMD. BR MOV 002504 gl:l).WKYoZ 1LOGGING CODE IS 6. T+CP.CNT TSUNT, SCHBK+10 s CONTINUE. +1S I7 |A SET CHARACTERISTICS CMD? 1BR_IF NOT sSET UP _ADR LO FOR SET CHAR. ;SET BUFFER EXTENT :ST(RE CHARACTERISTIC CODE IN SCH BLOCK. sUNIT ¢ 34 R2,R3 #CMD.C1:CMD.C2,R3 34 #DIACNT ,CMDPKT«CP.CNT #DIABLK,CMOPKT+CP.ADL (R1)(R1)+,NCNT1 NCNT (R1)+,PATERN R2,R3 sCCNTINE $IS_IT sA DIAGNOSTIC (DIA) CMD? +BR _IF NOT. sLOAD BUFFER EXTENT. ;LOAD BlfFER ADR LOW, sPOINT TO N (NUMBER OF TIMES TO EXECUTE THIS INS 1 SAVE MER OF OPERATIONS sCLEAR OPERATION COUNTER. lSAVE PATTERN CODE FOR CURRENT CMD. 118 IT PC,GENPAT 02 CPDI.G OVFY.C,CMOPKT 1GO_GENERATE THE WRITE PATTERN. sWRITE LOGGING CODE IS 2. +IF DATA VERIFICATION IS REQUIRED: #CMD.CO!CMD.C2,R3 54 DATAWT, CMDPKT+CP. ADL 500654 01 ,VFYFLG OVFY.C,CMOPKT sl WRITE? 1BR _IF NOT. |LOAD WRITE BUFFER LO ORDER. +SET VERIFY FLAG. tCLEAR VERIFY BIT(NOT USED BY HARDWARE). +IF DATA VERIFICATION IS NOT REQUIRED: BR 500664 CLRB VFYFLG 1CLR VERIFY FLAG. MOV MOV CMOWRD , PCMDWD CMDPKT , CMDWRD :SAVE PREVIOUS CMD WORD. 1 SAVE PRESENT CMD WORD. H6 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-16 SEQ 0072 GLOBAL SUBROUTINES SECTION 3469 011564 3470 011570 3471 011572 347 3473 011600 3474 011600 75 011606 3479 011614 003520 010000 002330 004000 002330 002330 003422 TSTB BEQ BIS S00674: MOV ;SET SWAP BIT IN COMMAND. . #BRF.C,CMOPKT ;CLR BRF BIT (INTERNAL ONLY). CMOPKT . CMDSAV :SAVE 1ST WORD OF COMMAND PACKET. PC sRETURN. ; ; THIS SUBROUTINE SETS UP AND CALLS THE APPROPRIATE SUBROUTINE TO GENERATE }:SU#§51“5° PATTERN FOR THE WRITE AND WRITE/VERIFY COMMANDS. - OUTPUTS: : : 013703 006303 013704 005204 ;IF SWAP BYTES IS ENABLED: #SuB.C,CMOPKT RTS H 3485 011616 86 BIC SWBFLG 500674 H R3, R4, REGISTERS: CALLS: Pn’mo. PATR? csupnt::ggx sgvenn.ns ;SETUP PATTERN ROUTINE POINTER gag BRFCNT ,Ra ;SET LENGTH OF WRITE BFR BIC SUB #1.R4 02.R4 ;ROUNDED UP TO NEXT WORD .uxtu FIRST WORD RESERVED <SR JSR RTS ¥ s PC.SPATTBL(R3) PC N — ;GO GENERATE THE APPROPRIATE PATTERN. ;RETURN TO SETUP SUBROUTINE. ;7505 WRITE PATTERN LOOKUP TABLE. USED TO JSR TO THE ;CORRECT DATA PATTERN GENERATING ROUTINE. PATTBL: PATRO:: 1%: 001002 000207 ; INCREMENTING PATTERN. O - 377. MOV := 2%: 9400 02,R4;LET R4 := R4 - 92 ;DECREMENT WORD COUNT. 28 18R IF DONE. cHP BNE MOV R3, #1000 500704 $400,R3 ADD 500704: 0400,R3;LET RS SuB BMI MOV 001002 001000 012703 000764 PATRO PATR1 PATR2 PATR3 PATR4 PATRS PATRG PATR7 PATRS oxboz R3 (R2) UPDATE PATTERN. 'STORE DATA WORD. :IF PATTERN HAS WRAPPED AROUND THEN: ;INIT THE PATTERN AGAIN. BR 14 ;00 IT AGAIN. RTS PC ;RETURN. sALL ONE'S PATTERN, 16 GLOBAL AREAS MACRO V0S5.03 Fridey 22-May-87 08:12 Page 26-17 MOV SUB BMI MOV B8R 0-1,R3 16 R3,(R2)ZROPAT SEQ 0073 GLOBAL SUBROUTINES SECTION 012703 162704 100402 010322 000773 177777 PATR]:: 000002 ZROPAT; RTS 000207 02,Ra PC JALL ONES PATTERN iDECREMENT BYTE€COUNT. iDONE?,BR IF YES. ;IF Noft LOAO NEXT BYTE WITH PATTERN. iDO IT AGAIN. ;RETURN. sALL ZEROES PATTERN. 005003 004737 000207 PATR2:: 011744 CLR JSR RTS R3 ;CLR PATTERN “CGIS'E‘ PC iRETURN.. PC . ZROPAT 1GO GENERATE IT ;ONE BIT WALKING FROM R TO L IN A FIELD OF ZEROES. 012703 PATRS: : 162704 WLKZRO: 00404 1%: MOV SUB BMI MOV ASL ADC B8R RTS 0401 ,R3 INIT PATTERN REGISTER. 92.R4;LET R4 := 6‘ DECREMENT WORD COUNT. 18 obt RS, (R2)20AD DA R3 NPT PATIERN. R3 :ADD CARRY BACK INTO PATTERN. WLKZRO D0 IT AGAIN. PC IRETURN. sZERO BIT WALKING FROM R TO L IN A FIELD OF 1°S. 012703 004737 000207 177376 PATR4: : 011774 MOV JSR RTS #177376,R3 ;INIT PATTERN REGISTER. oc ;RETURN b PC . WLKZRO ;G0 GENERATE ;IT. sALTERNATING ONE AND ZERO BITS WITH ALTERNATE BYTES s COMPLEMENTED. 012703 004737 000207 125125 PATRS: : 011744 MOV JSR RTS 9125125 ,R3 PC,ZROPAT PC ;INIT PATTERN nesxsven ;GO GENERATE IT ;RETURN. ;ALTERNATING BYTES OF 000 AND 377. 012703 162704 100402 177400 PATRG: : 000002 1%: 010322 000773 000207 2%: MOV SUB 8MI MOV BR RTS $177400,R3 02.R4 24 R3,(R2)1% PC ;INIT PATTERN REGISTER. :DEC WORD COUNT. :BR IF DONE. ;LOAD DATA. ;00 IT AGAIN ;RETURN. ;RANDOM PATTERN GENERATOR PATR7:: 003432 003434 GIT: SuB 8MI ADD ADD MOV BR RTS 02,.R4 cIt RANS , RANB RANB , RANS RANS, (R2)+ PATR? PC ;DECREMENT WORD COUNT ;BR IF DONE. ;GET NEW 0. :SAVE o, s CONTINUE. ;RETURN Jb6 GLOBAL AREAS MACRO V05.03 Frigey 22-Mey-87 08:12 Page 26-18 SEQ 0074 GLOBAL SUBROUTINES SECTION 3583 3584 3585 NO PATTERN GENERATION. 012112 PATRS: : RTS PC ;RETURN, THIS SUBROUTINE INITIATES TSOS COMMAND EXECUTION ;’D C’SCCKS FOR TSOS RESPONSE . OUTPUTS: REGISTERS: CALLS: 012114 012737 177777 005337 005737 001011 004737 003436 003436 003436 EXCUTE:: S00714%: ST 012774 ERRDF -0 CEEgReSEREREECEINEEER4SECRELEs X3 aed 017240 002524 003420 140004 010537 003452 017142 026527 002604 177777 012740 017210 000767 013705 016537 003452 002544 016503 005002 002544 020227 000020 012723 062702 177777 000002 000770 105737 001023 002212 002474 S00724%: S00744: S00764: S00774: ;mr TIMEOUT COUNTER. TIMEL {UPDATE TIMEOUT COUNTER. TIMEL 500724 PC ., MOVMSG 2,NSSRM, STAERM WAIT ;IF TIMED OUT: ;MOVE CURRENT PACKET MSG. ;REPORT TSOS NOT READY TRAP LMORD "WORD 'WORD PC, DROPU ;DROP THE UNIT. BIT BEQ cHP BNE MOV JSR #TS.SSR, ATSSR(RS) S0071% CMOWRD, S0073$ RS, RSSAVE PC.FIRSTU sWAIT UNTIL DEVICE IS READY. e DEVTBL(RS),0END BEQ JSR JSR BR S00754: MOV MOV S00734: #-1,TIMEL JSR BR 000200 004737 001405 EC BNE JSR 104455 000002 001405 004737 004737 MOV REPEAT R2, RS, DROPU, ‘MOVMSG, FIRSTU, NEXTU, WSSR. EXCRTN S00754 PC,WSSR PC.NEXTU 500744 RSSAVE , RS MSGPKA(RS ), SCHBK MOV CLR MSGPKA(RS),R3 R2 BEQ MOV ADD BR S0077% #-1,(R3). #2,R2 500764 cve 1ST8 BNE R2, MSGCNT DINT 14 C$ERDF 2 NSSRM STAERM ;RETURN, ;IF WE ARE DOING A SET CHAR CMD THEN: :SAVE CURRENT DEVICE POINTER. iFIND FIRST UNIT. ;WHILE DEVTBL(RS) NE 9END DO ;MAIT FOR UNIT neaov OR TIME OUT, ;FIND NEXT UNIT iRESTORE CURRENT DEVICE POINTER. :SET UP ADR OF MSG PKT IN SCH BLOCK. ;ADR OF THIS UNIT'S MSG PACKET. :CLR COUNTER. sWHILE THERE ARE MORE LOCATIONS: ;INIT THE MSG PACKET WITH ALL 1'S ;UPDATE COUNTER. ;ARE INTERRUPTS DISABLED. :BR IF YES. K6 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-19 SEQ 007S GLOBAL SUBROUTINES SECTION 126527 %2 01 7537 003472 000001 002524 003454 INTFLG(RS), o1 ERRDF 15, TOOMM,STAERM MOV 104455 000017 004727 006120 004737 000434 e STSSR(RS), TSSREG ;IF MORE THAN ONE INTERRUPT HAS OCCURED: FREEZETHE CURRENT STATUS REG FOR PRINT ;REPORT TOO MANY INTERRUPTS. TRAP CSERODF WORD STAERM LMORD ‘WORD 017240 JSR PC,DROPU CLR INTFLG(RS ) ;CLR INTERRUPT FLAG FOR THIS DEV. INC MOV RECCNT(RS) RECCNT(RS ), aDATAWT sLET RECCNT(RS) := RECCNT(RS) « o1 1 THEN UPDATE REC COUNT TO WRITE IT ON TAPE MOV eIt JSR OCMDPKT , 3TSDB(RS) 815 . SSR.STSSR(RS) PC, MOVMSG BR S01004: 005065 052737 105737 001005 005265 016577 003472 000200 003471 003376 003376 171022 012775 002330 002514 002330 1%: S0101%: 000200 012774 81s Iste ERRDF 017240 S0102%: EXCRTN: EXCRTN 1. C, CMOPKT ;DROP THE UNIT 1S TOOMM ;RETURN- UNIT HAS BEEN DROPPED. SET INT ENABLE BIT msmesxra ERRREC EQ 00 THEN 3, TOERM,STAERM :IF 'NOT RETRYING ;LOAD TSDB WITH CMOPKT ADDRESS :IF READY DID NOT DROP THEN: MOVE_ CURRENT MESSAGE PACKET TO COMMON. :THIS INITIATES COMMAND EXECUTION. iREPORT NO 1505 RESPONSE. fRAP JSR PC.DROPU ;DROP THE UNIT RTS PC SRETURN. .MORD ‘WORD "WORD CHERDF 3 TOERM STAERM THIS SUBROUTINE WAITS FOR THE TSOS INERRUPT OR DONE BIT TO SET AND ALLOWS THE OPERATOR TO YRANSFER CONROL TO THE SUPERVISOR UPON APPEARANCE Tlf INTERRUPT OR m%l |ioc BgTES AND ERRORS AND PERFORM OUTPUTS: REGISTERS: CALLS: 012737 104422 023727 001014 012727 000000 013727 000000 005367 001375 177777 003436 MOV 50103%: &EPEIT 003420 000012 102010 BNE DELAY R2, R3. DROPU, MOVMSG, RECUD, CHKERR, LOG, CLRERR. o-1,TIMEL AK CHECK TSSR FOR STATUS ERRORS, RéCOVERY IF NESSASARY. s INIT TIME OUT_COUNTER. sREPEAT UNTIL INTERRUPT OCCURES: aGO TO THE SUPER TO &LW TTY INPUT, CMOWRD, 501044 10. +IF COMMAND WAS REWIND 7 sWAIT RAP EXTRA MSECS EACH LOOP. MOV .WORD C$BRK #10.,.(PC)- O 002116 MOV L$DLY,(PC)- 177772 PEC -6(PC) .WORD BNE O .-4 L6 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Peage 26-20 SEQ 0076 GLOBAL SUBROUTINES SECTION 012466 012472 005367 001367 177756 3679 012474 3680 012502 023727 001404 003420 105010 3682 012512 001014 003420 105410 012514 012727 000014 012522 013727 002116 MOV 012530 005367 177772 BEC 012536 012542 005367 001367 177756 DEC BNE 105737 002212 3678 012474 3681 012504 3683 012514 3684 012514 012520 012526 012534 3685 012544 3686 012544 023727 000000 000000 001375 001003 016502 3690 012556 000406 3692 012560 3693 012564 94 012566 012703 005103 017502 002524 3698 012574 005337 003436 3700 012602 001003 se;z 012572 3697 012574 3699 012600 3701 012604 302 005702 005737 003436 3704 012612 3705 012616 3706 012620 3707 012626 3708 012632 005737 001 016577 005377 004737 003436 3709 012636 012636 012640 012642 012644 3710 012646 003376 170554 012774 ;IF CMOWRD EQ OSFF OR CMDWRD EQ #SFR THEN BNE DELAY 12. ;ADD DELAY FOR SPACE TAPE MARK COMMANDS 1STB BNE MOV S0107%: 000200 001310 3703 0126 501064: MOV ;SET UP A MASK FOR THE DONE BIT. TIMEL :UPDATE TIMEOUT COUNTER. DEC TST LMORD O R2 501114 g;g 012656 004737 012724 3714 012662 3715 012664 3716 01 3717 012670 3718 012674 3719 012700 3720 012704 000417 004737 004737 004737 105737 001006 3711 012652 012703 003472 1ST BNE MOV DEC JSR TIMEL ;IF TIME OUT HAS OCCURRED: 112 RECCNT(RS),3DATAWT a0 PC, MOVMSG :MOVE CURRENT MSG PACKET TO COMMON AREA. 4 ,NOINTM,STAERM ;REPORT NO INTERRUPT. 012774 013060 013250 003463 JSR PC,DROPY JSR PC,CLRERR BR JSR JSR JSR IS8 BNE 501134 PC,MOVMSG PC . RECUD PC . CHKERR WRTYFG 501144 MOV S0112%: -22(PC) -20 TIMEL 501034 TRAP PENDERF ,R3 DROP THE UNIT. C4ERDF .MORD 4 "WORD STAERM "WORD 017240 -w'c; ;REPEAT UNTIL INTERRUPT OR READY OCCURES. 004670 004737 LSDLY,C(PC)e :FETCH DONE BIT. BNE ERROF 104455 006120 © ;FETCH INTERRUPT OCCURRED FLAG. #7S.SSR,R3 R3 @TSSR(RS) ,R2 R3,R2 012..(PC)- LWORD ;IF INTERRUPTS ARE ENABLED. MOV COoM MOV BNE 170560 501074 INTFLG(RS),R2 501104 TST S0111%: DINT BR BIC 501104 : -22(PC) .-20 apmoosr 1054 CMOWRD , SF $01064$ BNE 003472 702 012610 ce BEQ e 501054: 3687 012550 % 012552 3691 012560 501044: DEC BNE NOINTM JLET RS := OENDERF ;CLEAR ALL ERROR FLAGS sMOVE CURRENT MSG. PACKET TO COMMON AREA. {UPDATE THE RECORD COUNT. ;CHECK FOR snrus ERRORS. {IFB WRTYFG EQ 00 THEN M6 GLOBAL AREAS MACRO VO5.03 Fridey 22-May-87 08:12 Page 26-21 SEQ 0077 GLOBAL SUBROUTINES SECTION 012706 012712 012716 004737 012703 004737 JSR PC.LOG ;LOG BYTES AND ERRORS. JSR PC,CLRERR ;CLEAR ALL ERROR FLAGS MOV 012722 OENDERF ,R3 ILET R3 := OENDERF 50114% 50113%: 012722 012722 ' : : : 3 012702 CLRERR: : 003460 S01154: 005022 020203 001375 000207 » 177777 003436 003436 000200 002524 PC ;RETURN IF DONE. SUBROUTINE TO CLEAR FLAGS. INPUTS : REGISTERS : OUTPUTS; CALLS: R3 = LWA 10 BE CLEARED« 2. R2 GBGNFLG,R2 JLET R2 := OBGNFLG P R2-R3 UNTIL R2 EQ R3 RTS pC ;REPEAT LR BNE (R2). 501154 sLET (R2)e := 80 . SUBROUTINE T0 WAIT UNTIL CURRENT UNIT IS READY OR UNTIL TIME OUT. : OUTPUTS: WSSR:: MOV BREAK DEC It ;INIT TIMEOUT COUNTER. \REPEAT UNTIL DEV READY OR TIMEOUT: i{BREAK TO THE SUPERVISOR. TRAP C$BRK TIMEL JUPDATE TIMEOUT COUNTER. §75.S5R,ATSSR(RS) SUNTIL ofS.SSR SETIN aTSSR(RS) OR TIMEL EQ 00 BNE ST 501164 RTS PC : 3 012737 RTS 501164 : 003436 50117%: REGISTERS: CALLS: -1, TIMEL TIMEL sRETURN, SUBROUTINE TO MOVE THE CURRENT MESSAGE PACKET TO THE COMMON AREA AND IO UPgATE THE CURRENT TERMINATION CLASS C OUTPUTS: REGISTERS: CALLS: 017537 013702 042702 010237 006237 016503 002524 003454 177761 003450 003450 002544 003454 MOVMSG: : MOV MOV BIC MOV ASR MOV R2, R3. @TSSR(RS), TSSREG TSSREG, R2 #7SC.TCC,R2 R2,CTCC CTCC T¢ : MSGPKA(RS),R3 ,FREEZE THE STATUS REG CONTENTS {EXTRACT THE TERMINATION CLASS COOE, sAND SAVE IT sADR OF THIS DEVICE'S MSG. N6 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 26-22 SEQ 0078 GLOBAL SUBROUTINES SECTION 005002 020227 001405 012362 062702 501204: 000020 002354 000002 002362 003502 501214 : 003465 005365 003376 032737 100000 002366 105237 023727 003465 003420 102010 005065 003376 001003 000442 032737 6 381; 013170 3819 013170 004000 001436 032737 000400 001007 032737 000400 001002 S 003376 501204 MOV RTS BNE 003450 032737 001453 BR RECUD:: TSTB 000001 001057 R2, BMSGCNT 501214 003420 sWHILE THERE ARE MORE LOCATIONS: (R3)+,MSGPKT(R2) $2,R2 +MOVE _MSG TO COMMON AREA. sUPDATE COUNTER. MSGPKT +MS . XS0, EOTFLG PC ;IF RECORD HAS NOT BEEN LOGGED: BNE 501234 INCB e RECLOG CMDWRD , SRWD s SET_RECORD LOGGED, sIF THIS IS A REWIND CMD: CLR RECCNT(RS) :CLEAR RECORD COUNT, BR 501254 BNE 003424 501224 RECCNT(RS) BIT BEQ S01244%: RECLOG DEC BIT 003420 BIT #8170,CTCC 032737 001417 032765 001013 105737 001406 105737 001403 105737 001 005365 000400 003424 000002 003502 S01274: 003471 . 9X2 . 0PM, MSGPKT +MS . XS2 50123% 50124$ #BRF . C, CMDWRD BEQ BIT BNE BIT BNE INC 501264 #MO0D . CO, CMDWRD 501274 #MOD . CO, PCMDWD 501304 RECCNT(RS) BR 501314 BIT BEQ BIT BNE #M0D . CO, PCMOWD 501324 #X0.B0T,EOTFLG(RS) 501334 BEQ TSTB BEQ 24 VFYFLG 24 003516 003465 003376 24: 104: IS8 TSTB BNE DEC LET RECCNT(RS) sIF TAPE MOVED S0130%: 000423 sMOVE XSTATO TO EOT FLAG. INPUTS: OUTPUTS: REGISTERS: CALLS: ; : ; 3 105757 ce BEQ sCLR COUNTER. SUBROUTINE TO ADJUST THE RECORD COUNT. B 001070 R2 MOV ADD 000770 013737 000207 CLR RECLOG 104 RECCNT(RS) := RECCNT(RS) - #1 +IF BRF USED, UPDATE RECORD COUNT. +IF A FORWARD CMD: +IF PREV CMD WAS A FWD ALSO: s INCREMENT RECORD COUNT. +IF REVERSE CMD: +IF PREVIOUS CMD WAS A REV ALSO: sWHEN NOT AT BOT THEN sCHECK THE ERROR RETRY INDICATOR IF_WE ARE NOT NOW IN ERROR RETRY B7 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-23 SEQ 0079 GLOBAL SUBROUTINES SECTION 013240 S01334: 36 013240 501324: 013240 S01314: 013240 501264 : 013240 501254 : 013240 3846 013240 016577 013246 013246 000207 003376 170140 50123%: S50122%: MOV RECCNT(RS) ,aDATAWT RTS PC ;LET QDATAWT := RECCNT(RS) +RETURN. THIS IS THE ERROR CHECK SUBROUTINE. AFTER INTERRUPT THIS SUBROUTINE IS CALLED TO CHECK THE TSO0S STATUS. IF SPECIAL COND IS SET THEN THE TCC HANDLING SUBROUTINE IS ENTERED. IF THE RFC IS NON ZERO FOR A COMMAND REQUIRING A BPCR, THEN AN ERROR RFC IS REPORTED, INPUTS: OUTPUTS: REGISTERS: CALLS: 032737 100000 003454 023727 001405 003450 000002 001441 CHKERR: : BIT BEQ cHP #7S.SC.TSSREG 501344 cTCC, 02 TSTB ERAREC BEQ 003471 BNE INC 003336 R2, R4, Tcéo-TCCT. 501354 501364 SCCNT(RS) +IF SPECIAL COND STATUS IS SET THEN: ;IF TCC IS NOT 2 THEN: ;IF NOT IN ERROR RECOVERY: ;INC SC COUNTER. S01364: 032737 001004 032737 001412 004000 003454 S01354: 003454 100000 002366 S0137%: 012702 000402 501414: 012702 BIT %is'-}):fl.TSSREG BIT BEQ #7S.UPE, TSSREG 501404 BIT s WHEN NON-EXISTANT MEMO #X2.0PM,MSGPKT+MS . XS2 :AND TAPE NOT MOVED #5,R2 1SET TCCS INDEX BNE MOV 501414 BR 501424 MOV 04 ,R2 BR 501434 MOV CTCC.R2 : TAPE MOVED, SET TCC4 INDEX 501424 : 000402 013702 003450 S0140%: 1SET DETECTED TCC INDEX C7 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-24 SEQ 0080 GLOBAL SUBROUTINES SECTION 006302 004772 501434 PC.aTCCRACR2) 000426 032737 R2 013454 004000 003420 ;CURRENT TCC X 2. 1GO TO THE TCC HANDLING SUBROUTINE. 501444 501344 : $8RF .. CHOURD ;IF BRF IS USED IN THIS CMD THEN: HSGPKT oS RFC ;IF THERE IS AN RFC THEN: RANDOM ;IFB RANDOM EQ #0 ORB VFYFLG NE 80 THEN 002360 003515 501474 003516 VFYFLG 501504 S01474%: me_ HROCNT(RS ) 13, RFCERM, STAERM 003521 003356 IF NOT IN RANDOM OR IF CMD IS WTV: ;IF RFC ERROR REPORTS ARE ALLOWED: UPDATE HARD ERROR COUNT ;REPORT RFC ERROR TRAP JMORD "WORD ‘WORD C$ERHRD 13 RFCERM STAERM S01514: 501504 : 501464 : 501454 : 105737 001403 013737 000207 S0144%: 003467 003422 002330 S501524: BEQ MOV RUERR CMDSAV , CMOPKT ;IF A READ/WRITE ERROR MAS OCCURRED THEN: JRESTORE CMD PACKET AFTER ERROR RECOV. RTS PC JRETURN. TST8 ADDRESSES OF TCC HANDLING ROUTINES FOR TERMINATION CLASS CODES 0 - 7. 013474 013558 0135 013640 013656 014272 014370 014532 TCCRA: TCCO TCC1 TCC2 1 TCCé TCC? SUBROUTINE TO HANDLE TERMINATION CLASS CODE O, UNDEFINED SPECIAL EONDI;ION ERROR. OUTPUTS : REGISTERS: D7 GLOBAL AREAS MACRO V0S5.03 Fridey 22-Mey-87 08:12 Page 26-25 SEQ 0081 GLOBAL SUBROUTINES SECTION 3343 CALLS: 3946 3947 003356 TCCO:: 013506 013510 INC ERRHRD HRDCNT(RS) ;UPDATE HARD ERROR COUNT. 5,SCERM,STAERM ;REPORT SPECIAL CONDITION ERROR. TRAP RTS PC .WORD .WORD .WORD sRETURN, SUBROUTINE TO HANDLE TERMINATION CLASS CODE 1, THIS TCC INDICATES THAT C4ERHRD 5 SCERM STAERM ATTENTION CONDITION. THE DRIVE HAS UNDERGONE A STATUS CHANGE ?WH gS GOING OFFLINE OR COMING ONLINE. T CALLS: TCC1:: 104455 ERRDF TH R4 R2 DROPU 6,ATTNM, STAERM ;REPORT ATTENTION-UNIT OFF LINE. TRAP 000006 006120 004737 000207 6 " STAERM .WORD JSR 017240 RTS PC . DROPU ;DROP THE UNIT. PC C$ERDF L.MORD ATTNM ;RETURN, SUBROUTINE TO HANDLE TERMINATION CLASS CODE 2, TAPE STATUS ALERT. }0 TD-E PROGRAM. RLS, A STATUS CONDITION HAS BEEN ENCOUNTERED THAT MAY HAVE SIGNIFICANCE BITS OF INTEREST INCLUDE TMK, LET, RLL, BOT, EOT. OUTPUTS; REGISTERS: CALLS: 032737 001404 105737 001401 002362 TCC2:: 003514 002362 501534: 003515 0 3989 013572 013574 013574 3951 013600 3992 013602 003516 501554 : 003521 003471 #X0.B0T ,MSGPKT+MS . XSO S01534 TSTB EXPBOT BR TC2RTN BIT #XO.RLS!XO.RLL!X0.TMK!XO0.LET!X0.BOT,MSGPKT +MS XS0 BEQ 501544 BEQ 000433 170002 BIT BEQ BE TSTB BEQ 1ST8 BNE 178 S01534 ;IF AT BOT AND BOT IS EXPECTED: ;RETURN-TCC2 CAUSED BY EXPECTED BOT. +IF 0X0.RLS!XO0.RLL!XO0. TMK!XO0.LET1X0.B0T SETIN MSGPKT+MS.XSO THEN RANDOM 501554 501564 TCC2 CAUSED BY ANYTHING BUT EOT: JIFB RANDON €8 3¢ 0R8 FYFLE & S0 Tren VFYFLG IRE 501574 ERRREC IF NOT IN RANDOM OR IF CMD IS WTV: +IF RFL ERROR REPORT S ARE ALL OMED: +IF WE ARE IN ERROR RECOVERY THEN: E7 GLOBAL AREAS MACRO VO0S.03 Fridey 22-May-87 08:12 Page 26-26 - GLOBAL SUBROUTINES SECTION 3993 013606 3994 013610 3995 001403 105237 3996 013614 000402 gm 013616 005265 003336 4001 013622 005265 003356 3997 013616 4oooii 013622 4002 013626 013626 013630 013632 . 013634 BR 501604: INC 501614 SCCNT(RS) INC HROCNT (RS ) 501614 : ERRHRD 7, TSAM, STAERM :SET UNRECOVERABLE FLAG FOR LOG. ;ELSE - IF NOT IN ERROR RECOVERY: s INCREMENT THE SPEC COND COUNTER. ;UPDATE HARD ERROR COUNT. ;REPORT TAPE STATUS ALERT, TRAP LMORD "WORD 'WORD CSERHRD 7 TSAM STAERM 50154+: 000207 TC2RTN: 4013 4014 4015 4016 4017 4018 4019 ‘02‘402.'. 013654 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 UNREC 501564: 4012 4022 013650 501604 S0157%: « 4007 4008 013636 4021 013640 013640 013642 013644 013646 INCB 104456 000007 004705 006120 4004 013636 4005 4006 013636 3{2 013636 BEQ 003470 104455 000010 004622 006120 004737 000207 RTS PC ;RETURN. : : : ; : : : SUBROUTINE TO HANDLE TERMINATION CLASS CODE3, FUNCTION REJECT. THE SPECIFIED FUNCTION WAS NOT mxum:o efis INTEREST ARE RMR, OFL, VCK, BOT, ILC. WLE, ILA, AND N8 INPUTS; OUTPUTS: REGISTERS: R2,R4 CALLS: DROPU TCC3:: ERRDF : : : : ; : : : : : : ; : ; ; : : RTS PC {RETURN. SUBROUTINE TO HANDLE TERMINATION cuss CODE4, RECOVERABLE ERROR. TAPE POSITION IS RECORD BEYOND WHAT ITS Pbsnmu WHEN THE FUNCTION WAS INITIATED. RE 1o LOG THE ERROR AND TSSUE THE APPROPRIATE RETRY c L 2 WRITE-ERROR-RECOVERY ALGORITHMS CAN BE SELECTED: THE FIRST ONE, VIA BADTSW SWITCH, DOES DETECT BAD SPOTS ON TAPE. IT CALLS Amhe RETRY SUBR UNTIL w: RECORD IS RECOVERED OR 20 BAD SPOTS MAVE BEEN LOGGED. ON REACHING 20 BAD SPOTS LOGGED, A BAD TAPE OVERFLOW MSG IS PRINTED AND THE UNIT DROPPED. THE SECOND ALGORITHM ISSUES THE TSOS WRITE RETRY COMMAND UP TO 16 TIMES BEFORE DROPPING THE UNIT OR PROCEEDING WITH THE NEXT RECORD ON RECOVERY. INPUTS; OUTPUTS: REGISTERS: R2,R4. CALLS: RTLE, EXCUTE, GOWAIT, DROPU, WRTY 017240 JSR 8,FUNRM, STAERM PC,.DROPU ;REPORT FUNCTION REJECT. ;:DROP THE UNIT. TRAP LMORD "WORD 'MORD C$ERDF 8 FUN®M STAERM F7 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 GLOBAL SUBHIUTINES SECTION 25 013656 003426 013664 000002 TCCa:: 002210 003471 cHe BNE TST8 BEQ 1STB BNE 1ST8 BEQ Page - 26-27 CMOLG, 82 501624 BADTSW 501624 ERRREC 501634 ERCVER 501634 SEQ 0083 ;IF CMDLG EQ #2 ANDB BADTSW NE #0 THEN ;IFB ERRREC EQ #0 ANDEB ERCVER NE 00 THEN ERRSOFT 9,RERM,STAERM TRAP CSERSOFT 9 RERM STAERM LMORD .MORD 'MORD 501634 : 1sT8 IREC :IFB IREC EQ 40 THEN INCB INCB ERRREC WRTYER {RETRY FLAG roa EXCUTE SUBR: DON'T UPDATE REC CN ;REWRITE ERROR FLAG FOR WRTY SUBR MOV MOV MOV CMDWRD,WTYWRD ;SAVE WRITE COMMAND PACKET CMDPKT . WTYCMD cmom.cp.cm.wm BNE S8 001072 013737 013737 013737 105237 105237 015146 015144 015150 INCBE INCBE 501664: 013776 103761 S01674%: 027727 012746 014112 014112 014116 g{gg {FIRST RETRY ON YHES RECORD: SUBSEQUENT {RETRIES WITH chc ERRORS BY-PASS THIS SECTION RWERR WRTYFG ;REPEAT WRTYCT(RS) RETRYC RPTCNT PC,WRTY WwRTYER S01674 LOG SUBR F coun um ERRORS m:mv IN mosaess ;COUNT GLOBAL WRITE RETRIES ;CLEAR @ OF neflues PER RECORD ;CLEAR ¢ OF m 1S ;CALL WRITE RETRY ;REPEAT RETRIES ON SAME RECORD 8LO e FBTPT, 040 e aBTPT, 040. ;WHEN 20 BAD SPOTS LOGGED PRINTB #8TMSG2 ;PRINT BAD TAPE OVERFLOW MSG BLO 103423 014100 014104 INC CLR CLR8 JSR 1578 BEQ 501644 soxssi 501704 ;UNTIL RECOVERED OR 20 BAD SPOTS MOV #B8TMSG2, -(SP) ADD C$PNTB 04, 5P TRAP JSR DEC JSR CLR MOV 002514 S01704: CLRB INCB PC,BORERS RECCNT(RS) PC, DROPU RECCNT(RS) PRUCPK , aTSDB(RS) WRTYFG MISCFG ;ERASE BAD RECORD ;DROP UNIT ;REWIND UNIT ;RETRY COMPLETE FLAG ;00 NOT HALT ON THIS CMD FLG G7 GLOBAL AREAS MACRO VO05.03 Fridey 22-Mey-87 08:12 Page 26-28 SEQ 0084 GLOBAL SUBROUTINES SECTION 4090 014.22 013737 015146 003424 014130 MOV WTYWRD , PCMOWD ;RESTORE ORIGINAL WRT CMD AFTER RECOVERY 501654: 000402 105237 S01714 S01644: 003470 UNREC ;LET UNREC :B= UNREC + 01 S0171%: 501724 014550 003426 PC,RTLE ;CHECK FOR RETRY LIMIT EXCEEDED. 4 CL.R2 ;R2=READ RETRY COUNT LIMIT / 2 ga&_.’g‘oz 003460 ;IF READ CMD THEN: nsglgxg.na ;IF RETRY COUNT IS MORE THAN HALF LIMIT: P0PP . C,CMDPKT 014170 014176 :SET OPPOSITE BIT FOR RETRY2. S0174%: 014176 814176 S01734: 003460 TST BNE RETRYC ;IF THIS IS THE ORIGINAL ERROR THEN: 501754 TST8 ERCVER BEQ 501754 ERRSOFT 9.RERM,STAERM 002207 ;REPORT RECOVERABLE ERROR TRAP COERSOFT - WORD nenn "WORD 003460 001000 002213 50175%: RETRYC #MOD.C1,CMOPKT gfigu ;UPDATE RETRY COUNT. :SET RETRY BIT IN CMD PACKET. :IF ERROR RECOVERY ENABLED: 003471 ERRREC 1SET ERROR RECOVERY FLAG. 012114 PC, EXCUTE GOWAIT 002330 §§:§°'S§ 012424 003470 014270 014270 014270 S01764%: STAERM ;PROVIDED OPERATOR HAS ENABLED THE REPORT :POP 2 RTN ADRS FROH STACK. 160 EXECUTE THE RETRY COMMAND. ;G0 WAIT FOR INTERRUPT + CHECK STATUS. ;ELSE IF ERROR RECOVERY IS NOT ENABLED: S01774 INCB UNREC 1SET UNRECOVERABLE ERROR FLAG. S0177%: 000207 S01724: RTS PC sRETURN SUBROUTINE TO HANDLE TERMINATION CLASS CODE S, TAPE POSITION HAS NOT CHANGED. RECOVERABLE ERROR. RECOVERY PROCEDURE IS TO LOG THE ERROR AND RE-ISSUE THE ORIGINAL COMMAND. H7 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-29 SEQ 0085 GLOBAL SUBROUTINES SECTION 4143 4144 4145 4146 4147 4148 4149 INPUTS: OUTPUTS: REGISTERS: CALLS: 014550 003460 4150 JSR TCCS:: TST BNE 4151 R2,R4, RTLE, EXCUTE, GOWAIT, RTLE sCHECK FOR RETRY LIMIT EXCEEDED RE*RYC IIF THIS IS THE ORIGINAL ERRORT 502004 ERRSOFT 10,RERM,STAERM S02004 : 003460 002213 003471 003376 003376 167042 INC 7578 BNE INCB INC MOV rov JSR 012114 012424 JMP S502014%: 003470 502024 : DROPU. ;REPORT RECOVERABLE ERROR. TRAP E:,ERSGT .WORD "WORD RERM STAERM RETRYC ;UPDATE RETRY COUNTER. IREC ;IF ERROR RECOVERY IS ENABLED: 502014 ERRREC :SET ERROR RECOVERY FLAG. RECCNT(RS) ;UPDATE REC COUNT RECCNT(RS), SDATAWT AND INSERT IT INTO WRT BFR (SE3..R2 ;POP 2 RTN ADRS FROM STACK. PC,EXCUTE ;G0 RE-ISSUE THE COMMAND. GOWAIT 1GO WAIT FOR INTERRUPT + CHECK STATUS. ;ELSE IF ERROR RECOVERY IS NOT ENABLED: 502024 INCB UNREC RTS PC :SET UNRECOVERABLE ERROR FLAG. ;RETURN. SUBROUTINE TO HANDLE TERMINATION CLASS CODE 6, TAPE POSITION HAS BEEN LOST. UNRECOVERABLE ERROR. ~THE ONLY VALID RECOVERY PROCEDURE IS TO REWIND AND START OVER AT BOT UNLESS THE TAPE HAS LABELS OR SEQUENCE NUMBERS. ’ THI S DIAGNOSTIC WILL REWIND AND RETRY THE COMMAND ONLY IF DENSITY CHECK IS SET, OTHERWISE THE UNIT WILL BE DROPPED FROM THE TEST SEQUENCE. INPUTS: OQUTPUTS:: REGISTERS: CALLS: 033737 001016 000010 005737 003426 003467 003470 002370 TCC6: : g'lé ggéoog':.flSGPKTofls.XSSaIF X3.DCK NOTSETIN MSGPKT.MS.XS3 THEN ST CMOLG INCB RWERR BEQ INCB " ERROF 50204$ UNREC 11,URERM,STAERM +IF_THERE IS NO DENSITY CHECK THEN: ;IF CMD IS A READ OR WRITE THEN: ;SET RD/WR ERROR FLAG 1SET UNRECOVERABLEeaéoa FLAG. ;REPORT UNRECOVERABLE ERROR. TRAP 5 014370 014376 R2, R4 RTLE, WSSR, EXCUTE, GOWAIT, DROPU CSERDF URERM 17 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-30 SEQ 0086 GLOBAL SUBROUTINES SECTION 0144 las3s :}gz 014426 808389 4195 014432 000436 4197 014434 004737 4199 014444 001004 4196 014434 4198 014440 4200 014446 005737 017240 S0203$ : 014550 003460 JSR PC.DROPY BR 502054 JSR 157 BNE PC,RTLE RETRYC 50206$ ERRSOFT 11,URERM,STAERM « ;REPORT ERROR sELSE-IF TD€R€ Is DENSITY CHECK: ;CHECK FOR RETRY LIMIT EXCEEDED. +IF THIS IS THE ORIGINAL ERROR T ;REPORT DENSITY CHECK ERROR TRAP - WORD "WORD 4201 Qog 014456 4203 014456 005237 4205 014466 001016 4207 014474 4208 014502 4209 014506 4210 014510 4211 014512 gi 014516 012775 004737 012602 012602 004737 000137 4214 014522 4215 014524 3} 014524 000402 4204 014462 4206 014470 4218 014530 4219 4220 014530 4221 014530 4222 4223 105737 105237 105237 50206 : 003460 003521 003471 002350 0127480 RETRYC BNE 2074 TsTe INCB 002514 MOV JSR MOV MOV JSR P 012114 012424 003470 INC 50207%: gge ERRREC ORUCPK , aTSDB(RS) PC, USSR (SP)-,R2 (5P),R2 PC,EXCUTE GOWAIT 502104 INCBE UNREC RTS PC lP(PZRTNANSFRMSlCK ;REISSUE THE COMMAND, ;WAIT FOR INTERRUPT ;ELSE-IF ERR REC DISABLED: :SET UNRECOVERABLE ERROR FLAG. 502104: 50205$: 000207 ;RETURN SUBROUTINE TO HANDLE TERMINATION CLASS CODE 7, FATAL SUBSYSTEM NG COMMANDS OR AT LEAST ITS INTEGRITY IS SERIOUSLY QUEST JONABLE. REFER TO THE FATAL CLASS CODE FIELD IN fl( TSSR REGISTER FOR ERROR. 4227 4228 4229 4230 335 ; ; : : ; ADDITIONAL INFORMATION ON THE TYPE OF FATAL ERROR. INPUTS: OUTPUTS: REGISTERS : R2, R4 CALLS: TCC7:: ERRDF 4225 4226 : 3 014532 014534 014536 014580 104455 000014 004642 006120 4235 014546 423 4237 000207 4240 STAERM :SET ERROR RECOVERY FLAG, sISSl.E A REWIND COMMAND, WAIT FOR SUBSYSTEM READY, ; 4z 4239 ugcm ;IF ERROR RECOVERY IS ENABLED THEN: [l 4234 014542 tl:oeasort ;UPDATE RETRY COUNT, 4224 4233 014532 STAERM DROP UNIT, 004737 017240 JSR RTS ; ; ; THE SUBSYSTEM IS INCAPABLE OF PROPERLY PERF 12,FATSM,STAERM :anovu :REPORT FATAL SUBSYSTEM ERROR. TRAP ;DROP THE UNIT. ;RETURN, .WORD .WORD .WORD CSERDF 12 FATSM STAERM SUBROUT INE T0 CHECK FOR RETRY LIMIY EXCEEM'D PRINTS ERROR MESSAGE IF EXCEEDED AND DROP UNIT UNLESS COMMAND IS A READ. INPUTS; J7 GLOBAL AREAS MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 26-31 SEQ@ 0087 GLOBAL SUBROUTINES SECTION OUTPUTS: REGISTERS: 15 4244 424 S 014550 4246 014554 4247 014556 014556 014560 014562 014564 014566 014572 4250 014574 014576 014576 014602 R2, CALLS: 003426 RTLE:: TST BNE R4, DROPU CMDLG sIF CMD IS NOT A READ OR WRITE THEN: 11,URERM,STAERM ;REPORT UNRECOVERABLE ERROR. 502114 ERRDF TRAP EIEW .WORD .WORD URERM STAERM . WORD 017240 S02114%: 003467 003426 003460 003470 PC , DROPU (SP).,R2 RTLRTN INCB g'r: RWERR CMOLG, #2 ;SET neuo/mne ennoa LAG, F CMD IS A WRT OR WTM: cMP BNE INCB RETRYC, OWRECL 502134 UNREC S502134: 000020 :IF RETRY COUNT HAS REACHED LIMIT: 14 ,RLEXM,STAERM JSR MOV PC,DROPU (SP).,R2 502144 502124 : RETRYC,ORRECL BNE 003470 502154 INCB ERRHRD 502154 : S02144: RTLRTN: ;DROP THE UNIT, ;POP RTN ADRS FROM STACK. ;AND RETURN. 502124 ERRDF 017240 003460 JSR MOV BR :SET UNRECOVERABLE FLAG ;REPORT RETRY LIMIT EXCEEDCD. ;DROP THE UNIT :POP 2 RTN ADRS FROM STACK. (SP)+,R2 RTS PC ;IF RETRY COUNT HAS REACHED LIMIT: TRAP LWORD "WORD "WORD ;POP 2 RTN ADRS FROM STACK. ;RETURN SUBR TO REWRITE A BAD, BUT aecoveam.e WRITTEN RECORD. REWRITE RECORD ON SAME SPOT: REPEAT 4 TIMES. IF ALL 4 REPEATS GOOD aecono 1s aecoveaeo AND A RECOVERABLEmfie ERROR IS LOGGED. IF ANY OF 4 REPEATS BAD, BAD SPOT, ERASE BAD accoao LOG SUSPECTED RETRY AGAIN. RETRY4 TIMES 0 4 REPEATS EACH. IF RECORD NOT GOOD AFTER 4 RETRIES éanse IT, EXIT WITH ERROR FLAG WRTYER SET mmuus RETRY FAILED. THIS ALL SCHEME IS REENTERED 20 TIMES MAX, IE 20 BAD SPOTS MAX ARE ALLOWED. CS$ERDF 14 RLEXM STAERM ;ELSE - CMD IS A READ: UNREC :SET UNRECOVERABLE FLAG 14 ,RLEXM,STAERM ;REPORT RECOVERABLE ERROR. MOV TRAP WORD .WORD "WORD C$ERHRD 14 RLEXM STAERM K7 GLOBAL AREAS MACRO V05.03 Friday 22-Mey-87 08:12 Page 26-32 SEQ 0088 GLOBAL SUBROUTINES SECTION B : : INPUTS: OUTPUTS: ; REGISTERS: WRTY:: ;BEGIN RETRY : CALLS: S0217%: 015356 003464 015532 003462 003462 S02214: 003460 003464 502204: S0223%: ;REPEAT ;REPEAT JSR CLRB JSR PC,BORERS WRTYER PC,REWRT sBACKSPACE /ERASE ONE RECORD ;:CLEAR WRITE RETRY ERROR ;REWRITE RECORD ON SAME SPOT CMPB Q RPTCNT, o4 502224 ILIMIT: RPTCNT T1STB 502224 : BORERS, REWRT ;BEGIN REPEAT INCB 003464 R3,R4 ;COUNT REPEATS 4 REPEATS OR RECOVERED WRT BEQ 502214 ;:END REPEAT INC RETRYC ;COUNT RETRIES TIsT8 WRTYER BR 502164 1STB ERCVER PRINTB @#BTMSG1,RETRYC, <B,RPTCNT> BEQ 502234 S0225¢ ;EXIT RETRY LOOP IF RECOVERED ;IFB ERCVER NE 00 THEN :PRINT SUSPECTED CEAD spor(sp) BISB RETRYC,-(SP) TRAP C$PNTB MOV MOV MOV 502254: ce BNE MOV MOV ADD MOV e BHI MOV ADD MOV 060 016514 RETRYC, 01 502264 8TADDR(RS ) ,BTPT aBTPT,R4 02.R4 R4 .IBTPT R4 040, 502274 8TPT,R3 R3,R4 RECCNT(RS),(R4) ADD ;ON FIRST RETRY, LOGG BAD SPOT 015062 105237 003525 502264: INCB ERSFLG oemscx -(SP) 3,-(SP) SP RO $10,5P ;BTPT IS BOTH THE BAD SPOT COUNTER ;AND THE LOGGING INDEX :IF R4 LOS 040. THEN 1STORE FIRST 20 BAD SPOTS iLET R4 := R4 + R3 LET (R4) := RECCNT(RS) 502274: 4334 015062 RPTCNT,(SP) MOV :ERASE FLAG TO ERASE BAD RECORD . ; L7 GLOBAL AREAS MACRO V0S5.03 Friday 22-May-87 08:12 Page 26-33 SEQ 0089 GLOBAL SUBROUTINES SECTION 4335 4336 4337 4338 4339 4340 434 015066 015072 105037 105037 003467 003462 015076 015076 015104 023727 003460 105737 003464 001274 001413 105737 001410 012746 012746 010600 104414 062706 000004 S02244: 502164 : CLRB CLRB RWERR RPTCNT cMP RETRYC, 04 1578 WRTYER 1578 ERCVER PRINTB #BTMSG3 BEQ 015307 000001 ;LIMIT: 4 RETRIES 502174 ;:END RETRY BEQ 002207 ;CANCELL “LOG" ERROR FLAG ON FAILING RET ;CLEAR REPEAT COUNT FOR NEXT RETRY 502304 502314 ;IFB WRTYER NE #0 THEN ;:IFB ERCVER NE #0 THEN ;PRINT RETRY FAILED MOV oBTMSGS, -(SP) MOV TRAP ADD SP,RO C$PNTB 04,SP MOV 01,-(SP) S0231%: 502304 : RTS PC WTYBRF : .MORD LWORD LMORD O O O BTMSG1: .ASCIZ /#ASUSPECT BAD SPOT AFTER sD1sA RETRY, #D1sA REPEATSN/ BTMSG2: .ASCIZ /#NsABAD TAPE OVERFLOW: WTYCMD: 4359 ;STORAGE FOR WRITE CMD WHILE RETRYING :STORAGE FOR WRITE CMD WORD WHILE RETRYING ;STORAGE FOR WRITE BPCR WHILE RETRYING CHANGE TAPE !#NsN/ M7 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-34 SEQ 0090 GLOBAL SUBROUTINES SECTION 045 116 4360 BTMSG3: .ASCIZ 015353 /#ARETRY FAILED ON BAD SPOT...ERASED!#N/ .EVEN SUBR TO BACSPACE ONE RECORD IF THE ERASE FLAG IS SET, THEN ERASE THAT RECORD INPUTS: ERSFLG CALLS: EXCUTE, GOWAIT, CKHAE OUTPUTS: REGISTERS: :MOV 013737 MOV " #SRR ,CMDWRD MOV CMOWRD,CMDPKT Susg cn&.s MOV MOV :SET COMMAND sLET CMDWRD :' TO SPACE REV m jLET CMOPKT := CMDWRD CLR.BY 9BRF.C CMDPKT.CMDSAV ;LET CMDSAV := ‘6‘. 61 ,CMDPKT+CP. ADL SLET cmpxr.cv u.ET cnou; 1= 90 JSR JSR Pc.excme PC.GOWAIT TSTB ERSFLG JSR 1 = DO ERASE PC, H ; ; ‘ ;WHEN ERASE FLAG IS SET, DO ERASE 003424 002330 003422 JSR pc.crokc ; iLET ERSFLG :B= 90 502324 : RTS PC SUBR TO REWRITE A BADLY WRITTEN RECORD 013737 013737 013737 013737 REWRT: MOV MOV MOV MOV CMOWRD,PCMDWD WTYWRD,CMDWRD WTYCMD, CMOPKT CMDPKT,CMDSAV ;RESTORE WITE Cm PACKET ;LET CMDWRD:= WTYWRD |LET CMOPKT := WTYCMD ; ;LET CMDSAV := CMDPKT N7 GLOBAL AREAS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-35 SEQ 0091 GLOBAL SUBROUTINES SECTION 4402 015562 4403 015570 4404 015576 4405 015604 4406 015610 4407 015614 4408 015620 ::gg 015624 013737 013737 012737 004737 004737 004737 004737 000207 003406 015150 000002 011124 012114 012424 017540 002332 002336 003426 4411 441 44) 4413 4415 105737 003466 105237 003466 001126 442]1 015640 013704 4423 015646 001520 4427 015662 062702 002626 023737 002360 003416 4422 015644 4424 015650 4425 015654 4426 015656 005704 162704 010502 066402 4428 015666 063712 4430 015700 4‘35 015702 101002 163712 4429 015672 4433 015706 4434 015706 :gz 015710 010203 062703 4445 015732 4446 015734 010302 062702 4448 015740 4449 015744 4450 015746 021327 003404 162713 4453 015754 000771 4447 015740 ggé 015752 4454 015756 4455 015756 4456 015760 4457 015764 005212 010203 062703 iLET CMDLG := 92 : : OUTPUTS: REGISTERS: LOG:: R2, R3, R4, CALLS: TSTB BNE ERLOG ;IF DATA AND ERRORS HAVE NOT BEEN LOGGED THEN: ERLOG :SET LOG DONE FLAG. R4 ;IF THERE IS A CODE T 502334 MOV CMOLG,R4 BEQ 502344 TST $GET CURRENT cro Lossms CODE. 016112 92.R4 RS.R2 BINC(R4),R2 003416 ADD BRFCNT, (R2) BHI SuB 502354 MSGPKT+MS.RFC, (R2) MOV ADD R2,R3 #10,R3 ADD cHe 502354: 000010 502364 : 502374 000010 001747 MSGPKT+MS.RFC,BRFCNT ;IF }AOO BRF TO LSW. THE RFC IS LOWER OR THE SAME AS BRF THEN 1SUBTRACT RFC FROM EXPECTED BRF. ;R3 = ADR OF 2ND WORD. (R2).9999. S02374 $1000. ,(R2) ;UPDATE BYTE COUNT (R3) sLET (R3) := (R3) « 01 BR 502364 MOV ADD ns R2 R2 sua ), 9999, $ $1000. ,(R3) BR 502404 nov az R3 R3S INC 502414 : 4458 015764 021227 001747 SCNTBGN, R2 iLET R2 := R3S + 910 502404 : c"suuu: (ns) GT 9999. DO 001750 000010 ;ADJUST THE CODE FOR TABLE INDEX. ;R2 = ADR OF BYTE COUNT LSW. WHILE (R2) GT #999. DO cHb BLE SUB INC 001750 ; INPUTS: INCB 002360 : ; ;RE-WRITE RECORD ; ; SUB MOV ADD ‘“3: 015730 000771 4444 015732 #2,CMDLG PC.CMDAC PC.EXCUTE PC.GOWAIT PC . CKHAE PC sLET CMDOPKT+CP.ADL := DATAWT sLET CMOPKT+CP.CNT := WTYBRF SUBROUTINE TO LOG BYTES READ/WRITTEN. ALSO UPDATES READ/WRITE ERROR COUNTERS. 000002 4437 015714 003404 162712 005213 DATAWT, CMDPKT +CP . ADL WTYBRF.,CMDPKT «CP . CNT : : 003426 4438 015714 021227 001747 4439 015720 4440 015722 444) 015726 RTS 3 4419 015632 4420 015634 MOV JSR JSR JSR JSR : :ig 4418 015626 MOV MOV (R2) sUPDATE BYTE COUNT sLET (R2) := (R2) + @1 iLET R3 02428 |O\MILE saz) GT 9999. DO o 9999, := R2 + 010 :2ND WORD. (R2 = ADR OF 3RD WORD. :3RD WORD. ;R3 = ADR OF 4TH WORD. B8 GLOBAL AREAS MACRO V0S5.03 Friday 22-May-87 08:12 Page 26-36 SEQ 0092 GLOBAL SUBROUTINES SECTION 449 015770 4460 015772 “62“61 015776 4463 016000 4464 016002 4465 016002 003404 162712 005213 000771 4466 016006 105737 001440 003467 4468 016012 4469 016016 066402 062702 016120 002766 4467 016010 4470 016022 010502 105737 003470 4472 016030 4473 016034 062702 005212 000010 4475 016036 000424 4477 016040 005212 4479 016046 001020 448)1 016054 001015 4471 016026 4474 4476 016040 4478 016042 002213 105737 003522 105737 001412 002207 016064 016070 016074 016100 013746 012746 012746 010600 003460 005422 000002 016104 062706 000006 4482 016056 4483 016062 4484 016064 016102 104414 4486 016110 4487 4488 016110 4489 4490 4491 016110 4492 SUB INC 502434; BR INC +IF R/W ERROR, RS,R2 ;4TH WORD. UPDATE ERROR COUNT. ;R2 = ADR OF COUNTER. UNREC ;IS THE ERROR UNRECOVERABLE? $10,R2 (R2) :YES, POINT TO NEXT COUNTER. ;UPDATE THE ERROR COUNTER 50245+ 502464 (R2) ;ELSE - IF ERROR IS RECOVERABLE: ;UPDATE THE ERROR COUNTER IREC ;IF ERROR RECOVERY IS ENABLED: TST8 DROPED ;IF UNIT HAS NOT BEEN DROPPED: TSTB BEQ PRINTB ERCVER 502504 BNE BNE 502474 502504 ONURTY1,RETRYC ;PRINT & OF RETRIES TO RECOVER MOV MOV MOV MOV RETRYC, -(SP) ONURTY1 , -(SP) #2,-(SP) SP,RO ADD 06, SP TRAP C$PNTB ;PROVIDED PRINT HAS BEEN ENABLED 502474 : 502464: 000207 502334 : ; 000000 BINC: 4504 4505 016120 000000 EINC: 4509 ; 4506 016122 :%Z 016124 EINCCR4),R2 SUWRREC , R2 TsT8 502344: 4502 016114 4503 016116 ADD ADD ADD INC 4495 016110 4501 016112 RWERR 50244 4 TSTB 502444: 4500 TSTB BEQ 502504 : 4494 z% 016110 $1000. ,(R2) ;UPDATE BYTE COUNT (R3) sLET (R3) := (R3) + o1 502424 BEQ 4493 016110 4496 4497 016110 502434 BR MOV 50245%: 105737 4480 016050 4485 001404 BLE 001750 000040 000100 000020 000040 RTS PC INDEXES TO BYTE COUNTERS. O 40 100 JWRITE. ;READ REV. READ FWD. INDEXES TO READ/WRITE ERROR COUNTERS. 0O (WRITE, 20 40 tREAD REV. ;READ FWD. IF A WRITE/VERIFY COMMAND IS ISSUED, CONTROL IS THEN | C8 GLOBAL AREAS MACRO V0S.03 Fridey 22-May-87 08:12 Peage 26-37 SEQ 0093 GLOBAL SUBROUTINES SECTION 4510 ; :sig ; 4511 4514 4518 016132 4519 016134 4520 016142 4521 016150 4522 016156 4523 016162 4524 016170 4525 016176 : € 016204 4528 016210 :s : %%3#5: : 4517 016126 016210 105737 001426 013737 012737 012737 004737 013737 012737 012737 004737 003516 003420 104401 000008 016212 003420 104001 000006 016212 INPUTS ; . CALLS: VFYDAT::TSTB 003424 003420 003426 +IF DATA IS TO BE VERIFIED: 50251 $ MOV MOV MOV JSR MOV MOV MOV CMDWRD , PCMOWD #RDR , CMDWRD 04 ,CMDLG PC, VFEXC CMOWRD , PCMDWD #RDF , CMDWRD #6,CMOLG RTS PC JSR 502514: VFEXC. VFYFLG BEQ 003424 003420 003426 000207 CHECK DATA, READ FORWARD, CHECK DATA, THEN CONTINUE TO NEXT COMMAND. ' :giz mmsreaneo TO THIS SUBROUTINE TO READ REVERSE, ; ;SAVE THE PREVIOUS COMMAND WORD. ;COMMAND IS READ REV, :SET UP CMD LOGGING INDEX. ;GO READ ALL THE RECORDS REV. {SAVE THE PREVIOUS COMMAND ;COMMAND IS READ FWD. ;SET UP CMD LOGGING INDEX. PC. VFEXC :GO READ ALL RECORDS FWD. ;RETURN, 4531 4534 : SUBROUTINE TO EXECUTE THE READ AND VERIFY, FORWARD OR REVERSE. 4535 : INPUTS: 4537 ; REGISTERS : VFEXC:: MOV BIC CMDWRD,CMDPKT OBRF. C ., CHOPKT BEQ 502524 4536 ; :ggg ; 4540 016212 454]1 016220 013737 042737 4543 016232 001403 4542 016226 :a; 016234 4546 016242 4547 016242 4548 016250 25533 016256 105737 003420 004000 003520 002330 002330 052737 010000 002330 013737 002330 003422 013737 005037 003410 003412 4552 016262 023737 003412 003414 4553 016270 4554 016272 oozoe; 004737 011124 4557 016302 026527 002604 177777 000400 003420 000002 003502 000001 003502 4555 016276 4556 016302 4558 016310 4559 016312 4560 016320 4561 016322 4562 016330 4563 016332 4564 016340 4565 016342 4566 016346 004737 001 032737 00142 032765 001014 032765 001406 105737 001402 017142 003524 BIS 502524: MOV MOV CLR S02538: R2 CALLS: 1578 002332 4551 016262 OUTPUTS; CMDAC, FIRSTU, VFISU, NEXTU, CKHAE. ;COMMAND PACKET SWBFLG #SWB . C,CMOPKT CMDPKT , CMDSAV ;WHILE NCNT LT NCNT1 DO NCNT ,NCNT1 JSR FIRST B8GE JSR ;IF BYTES ARE TO BE SWAPPED: ;SET SWAB BIT IN CMD PACKET. DATARD, CMDPKT «CP . ADL NCNT te 50254§ PC crmc = READ REV OR FWD. SAVE COMMAND PACKET 1ST WORD. 1SAVE BUFFER START ADDRESS. ;CLEAR NUMBER OF OPERATIONS. {WHILE THERE ARE RECORDS REMAINING: ;STORE CMD ASCII IN ERROR MSG. sSET UP FOR FIRST UNIT. 502554 : "gmzu:6ev1aun5) NE GEND DO :WHILE THERE ARE DEVICES REMAINING: DEVTBL(RS), #END BEQ BIT BEQ BIT BNE 50256§ #M0D . CO, CMDWRD 502574 #X0.80T,EOTFLG(RS) 502604 BEQ 1578 BEQ 502614 ALLEOT 502624 BIT #X0.EOT,EOTFLG(RS) +IF CMD IS REVERSE THEN: +IF NOT AT BOT ;BUT IF AT EOT ;AND ALL OTHERS AT EOT D8 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-38 SEQ 0094 GLOBAL SUBROUTINES SECTION 4567 016350 004737 016440 016354 s THEN READ VERIFY JSR PC.VFISV BR 502634 JSR PC.VFISUV +NOT AT EOT, READ VFY 50264 4 ;ELSE IF CMD IS NOT REVERSE: +IF NOT ALL AT EOT, FREEZE UNIT(S) 502624: 000402 004737 502614 : 016440 +IF NOT AT BOT AND 502634 : 502604 : 000412 032765 001404 032737 001002 000001 004737 016440 003502 S02574: 003420 BIT #X0.EOT ,EOTFLG(RS) BIT 5026 #CMD.CO, CMDWRD 502664 JSR PC,VFISU 502654 : s+IF NOT AT EOT OR NOT A MOTION CMD THEN: ;ISSUE CMD, CHECK STATUS AND DATA. 502664 : 004737 502644 : 017210 000732 016426 004737 005237 013737 016434 000712 016436 000207 017540 003412 003420 PC,NEXTU 1GO FIND THE NEXT UNIT. 502554 502564: PC, CKHAE NCNT CMDOWRD , PCMDWD 003424 ;CHECK FOR HALT AFTER EACH CMD. sUPDATE THE RECORD COUNT, :SAVE PREVIOUS COMMAND WORD 502534 502544 : ;RETURN. PC SUBROUT INE TO ISSUE Cnflb. CHECK STATUS, CHECK DAT INPUTS: OUTPUTS : REGISTERS: CALLS: 013702 062702 003410 000010 020237 001403 003410 012742 S02674: 004737 105737 003522 004737 012424 012114 novwo cHP BEQ MOV 177777 000772 002 VFISU:: S02704%: BR JSR 1ST8 BNE JSR AWAIT INTERRUPT, R2 EXCUTE, GOWAIT, CKDATA. D.gTARDR2 :INIT READ BUFFER POINTER. IH-CILE §2NE DATARD DO R2,DATARD 502704 #-1,-(R2) sUNTIL 8 BYTES HAVE BEEN SET, :INIT READ BUFFER. 502674 PC,EXCUTE DROPED 502714 PC.GOWAIT 160 EXECUTE THE Cm +IF UNIT HAS NOT BEEN DROPPED THEN: 1GO WAIT FOR DONE BIT. E8 GLOBAL AREAS MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 26-39 SE@ 0095 GLOBAL SUBROUTINES SECTION 105737 S02714: 003522 000002 003502 016526 1578 ;IF UNIT HAS NOT BEEN DROPPED THEN: BNE BIT BNE JSR S02724 #X0.B0T,EOTFLG(RS) ;WHEN NOT REVERSED INTO BOT, THEN 502734 PC,CKDATA ;GO VERIFY DATA. RTS PC S0273%: S02724%: SUBROUTINE TO COMPARE DATA BETWEEN READ AND WRITE BUFFERS AND PRINT ERROR MESSAGE ON MISCOMPARE . INPUTS: OUTPUTS: REGISTERS: CALLS: 013703 003416 002360 CKDATA: : MOV SUB BRFCNT,R3 MSGPKT +MS.RFC,R3 BNE 502744 TsT 020337 4655 4656 58 4659 4660 4661 003416 PRINTB 17,WTVERM,DTAERM #DTAER4 S02744%: BR 502754 cHe R3,BRFCNT BLOS 017136 017136 017140 ;PRINT ERROR AND EXIT TRAP ; COMPARE ROUTINE S0276% ERRHRD 17,WTVERM,DTAERM PRINTB @DTAERS,CMDPKT+CP.CNT C$ERHRD . WORD .WORD .WORD 17 WTVERM DTAERM MOV SOTAERS, -(SP) ADD 04SP ;WHEN REC READ IS LONGER ; THAN EXPECTED, PRINT TRAP .MORD "WORD .WORD ;AN ERROR MESSAGE C$ERHRD 17 WTVERM DTAERM MOV MOV CMDPKT+CP.CNT, -(SP) SDTAERS, -(SP) ADD 96, 5P TRAP C$PNTB 062706 010337 005337 005037 ;WHEN NO DATA RECEIVED G TRAP C$PNTB 002336 005360 000536 ;COMPUTE REC LENGTH READ R3 ERRHRD 005337 000001 R2, R3, R4, GCMDA 502764: BR MOV DEC CLR 502774 R3S, CKDCNT CKOCNT CKDFF ;AND EXIT ROUTINE ;SAVE VERIFICATION LENGTH - 1. ;CLEAR @ OF BYTES IN ERROR COUNTER. F8 GLOBAL AREAS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-40 SEQ 0096 GLOBAL SUBROUTINES SECTION CLR 003406 003410 003523 MOV MOV R BEQ $03004 1578 S03014: 017136 (R3) ;REPEAT 017136 SWAP FIRST WORD OF WRT BFR sWHICH CONTAINS THE RECORD COUNT ;REPEAT UNTIL ALL DATA IS COMPARED: R2, CKDCNT ;IF THIS IS THE LAST BYTE THEN: ;g;a s‘?‘o'i? :IF BYTE SWAPPING IS ENABLED THEN: 8IT oe%gc‘:.cxocm ;IF RECORD LENGTH IS ODD THEN: 1578 (R4). avera 105724 JWHEN RUNNING TEST1-SUB 12, e BNE 003520 COUNT "? \31E GUeT ADORESS. 1GET READ BUFFER ADDRESS. 15W8 SWAB S03004: T BYTE ofmn.ns DATARD . R4 503024 (R3). ;LAST BYTE WILL BE IN ;THE UPPER BYTE. & S03044: S03034: S0302%: 121314 BEQ 017140 TST BNE INC INC 003346 003356 (R3).(R4) ;ARE THEY EQUAL. s :BR IF SO. CKDFF i1 ST TIME THRU? 2% VFYCNT(RS) HRDCNT(RS) 18R IF NOT {INC THE VERIFY ERROR COUNTER. :INC THE HARD ERROR COUNT. 17, WTVERM, DTAERM ;REPORT WRITE/VERIFY ERROR. TRAP comflo s "WORD DTAERM .WORD : 017140 003436 177400 003436 177400 01714C 003440 000013 003440 005046 153716 003440 153716 003436 005046 010246 012746 012746 104415 4701 4703 4704 062706 105723 105724 24: INC CKDFFJLET CKDFF BIC MOVB 177400, TINEL (R3),TIME2 MOVE 8IC TM (R4),TIMEL 6177400, TIME2 cs’égros oi1. := CKDFF . 81 vem ,INCREMENT ¢ OF BYTES IN ERROR. 1 SAVE WAS DATA FOR TYPOUT. .CL GARBAGE. SAVE SHOULD BE DATA FOR TYPOUT. iCLEAR GARBAGE. :IF ERROR BYTE COUNT IS LESS THAN 11: 5INTX 8OTAER2,R2,<B,TIMEL>,<B,TIME2> ;PRINT ACTUAL & EXPCECYED “{2, : BISB -(SP) R2,-(5P) TRAP C$PNTX 005226 MOV 000012 ADD 503054 : 34: TSTE 1ST8 (R3). (R&)e TIME2,(SP) CLR BISB MOV ;UPDATE WRITE BUFFER ADDRESS. ;UPDATE READ BUFFER ADDRESS. TIMEL,(SP) o0TAER2, -(SP) $12,5P G8 GLOBAL AREAS MACRO VO0S.03 Fridey 27 -Mey-87 08:12 Page 26-41 S ang GLOBAL SUBROUTINES SECTION 4705 017062 4706 017064 4707 017070 4708 017072 4709 017076 4710 017102 4711 017104 017104 017110 4713 003702 005237 005737 001414 013746 013746 017114 017120 012746 012746 017130 062706 017124 - 105722 020237 010600 017126 104414 1STB 017136 017136 017140 017136 017140 4720 017136 000000 502754: CKDCNT: 000000 CKDFF: ; ; ; : :;gz 105037 003522 4731 017150 732 017156 4733 017160 734 017164 4735 017166 4736 017166 026527 001003 062705 000771 026527 002604 o 017176 104444 :3':.; 017206 005005 001001 016537 000207 002604 002604 4753 017214 177774 @ OF BYTES IN ERROR. MOV MOV CKDCNT, -(SP) CKDFF , -(SP) MOV cofima 177777 002074 105037 003522 RTS PC ;OTHERWISE, RETURN. .WORD O :# OF BYTES TO BE VERIFIED .WORD SDTAERS, -(5P) 3. (sps $10,5P REGISTERS: CALLS: CLRB CLR MOV RTS DROPED RS ;CLR UNIT DROPPED FLAG CLR DEVICE POINTER. DEVTBL(RS), #NINUSE JWHILE DEVICES ARE NOT IN USE: 503104 92,RS ;LET RS := RS + 82 :POINT TO NEXT DEVICE. 503074 DEVTBL(RS), #END ;IF ALL UNITS HAVE BEEN DROPPED THEN: S03114 ;D0 CLEAN CODE AND TERMINATE PASS. TRAP DEVTBL(RS),L$LUN PC SUBROUTINE TO FIND THE NEXT UNIT ; ; : ; REGISTERS: CALLS: NEXTU:: CLRB 503124 : -1. :# OF BYTES IN ERROR COUNTER. SUBROUTINE TO FIND THE FIRST DEVICE IN THE TEST SEQUENCE. BNE DOCLN S0311%: O INPUTS: OUTPUTS: S03074: CMP BNE ADD BR 503104 : cHe ; 4746 4747 4748 :;gg 4752 FIRSTU:: 000002 4744 4745 4751 017210 ;PRINT TRAP 4726 4740 017200 S0306$ #DTAER3,CKDFF , CKDCNT ADD 4724 4725 4741 017200 BEQ PRINTB 000010 4723 4737 017174 4738 017176 ;CKDCNT EQUALS RECORD LENGTH, {IF COMPARE ERROR MAS OCCURED THEN: ;END OF DATA COMPARE REPEAT LOOP. S0277%: 000207 4730 017146 503014 CKDCNT CKDFF 503064: :;ig 017134 4729 017142 BLE INC 1sT MOV MOV 017134 :;55 017140 ;UPDATE BYTE COUNTER. R2, 005275 000003 4714 4715 017134 4716 4717 017134 (R2)- e INPUTS: C$DCLN :SET UNIT ¢ IN “HEADER” FOR ERROR REPORT ;RETURN WITH 1ST DEVICE IN RS. IN THE TEST CYCLE. OUTPUTS; REPEAT DROPED ;CLR UNIT DROPPED FLAG ;REPEAT UNTIL THE NEXT DEVICE IS FOUND. H8 GLOBAL AREAS MACRO V05.03 Friday 22-May-87 08:12 Page 26-42 SEQ 0098 GLOBAL SUBROUTINES SECTION 017214 062705 026527 001772 016537 000207 000002 002604 177774 002604 002074 ADD cMP 92.RS DEVTBL(RS), SNINUSE sUPDATE DEVICE TABLE POINTER. sUNTIL DEVTBL(RS) NE ONINUSE MOV DEVTBL(RS),L$LUN ;SET UNIT ¢ IN "HEADER"” FOR ERROR REPORT sRETURN, BEQ RTS S03124 PC SUBROUTINE TO DROP A DEVICE FROM THE TEST SEQUENCE. INPUTS: OUTPUTS: REGISTERS: CALLS: MOVMSG, PRXST, LOG 003366 002370 000377 002544 : S503134: 000020 177777 000002 002340 012740 002514 012774 157400 S503174: 003326 aeo 1STB BEQ DEC 017450 503204: MSGPKT+MS.XS3,R4 iu #-1,(R3). 02,R2 50313 #GSCPK, 3TSDB(RS) PC,WSSR PC . MOVMSG R4 . 6X3 . RNY 50%15% 16,RNYM, STAERM MOV MOV s INCREMENT THE FATAL ERROR COUNT,. lGET UDIAG ERROR CODE FROM XSTATS, sWHILE THERE ARE noae LOCATIONS: lINIT THE MSG PACKET UITH ALL 1'S o2 sUPDATE COUNTER. s INITIATE A GET STATUS COMMAND. sWAIT A WHILE FOR SSR=1 +MOVE MSG PACKET TO COMMON AREA. +IF WE HAVE A CAPSTAN RUNAWAY THEN: ;REPORT CAPSTAN RUNAWAY HIPP' TACH CNT. ;ELSE-IF NOT A RUNNAWAY: .WORD .WORD .WORD C$ERDF 16 RNYM STAERM 503164 PC,PRXST sPRINT EXTENDED STATUS REGISTERS. RECLOG :IF THE RECORD HAS BEEN LOGGED THEN: 503174 DROPED PC.LOG DORPT 1ST 003326 4805 017404 #377.R4 A(RS) RS JAD':OW THIS UNIT'S MSG PACKET. sCLR_COUNTER. BEQ INCB JSR 003522 015626 003534 003534 BIC nov MOV ADD BR S03144%: MOV JSR JSR e BNE S03164: 003465 013737 013700 FTLCNT(RS) BR S503154: JSR 017452 4803 017376 017376 INC MOV :SET UNIT DROPPED FLAG. ;LOG DATA BYTES - RD/&R ERRORS . +PRINT PERFORMANCE m}nw PASCNT(RS) 503204 PASCNT(RS) TSNP, DROPN TSNP, RO +IF PASCNT(RS) NE #0 THEN sLET PASCNT(RS) := PASCNT(RS) - ¢ :SAVE @ OF UNIT TO BE DROPPED. 1RO=LOGICAL DEVICE NUMBER CSDRPT 18 GLOBAL AREAS TMMACRO V0S.03 Fridey 22-Mey-87 08:12 Page 26-43 SEQ 0099 GLOBAL SUBROUTINES SECTION 4806 017410 DOOU 017410 104451 4809 017412 4810 017420 4811 017422 4812 017426 026527 001410 105737 001005 002604 33 017436 105237 003526 4807 4813 017430 4814 0.7432 4815 017434 4818 017442 4819 4820 017442 4821 017442 000240 000240 000240 105237 000207 4824 017450 000000 003522 012746 012746 010600 104415 062706 005507 000001 017472 017476 017502 017506 017512 017516 017522 017526 017530 017532 013746 013746 013746 013746 013746 012746 012746 010600 104415 062706 002372 002370 002366 002364 002362 006753 000006 000207 DEVTBL(RS), SNINUSE 503214 IREC 503224 INCB STAFLG ;SET START FLAG TO ENABLE REWIND, S0321%: DRORTN: INCB C$DODU ;IF UNIT NOT DROPPED ;IF RECOVERY IS ENABLED THEN: RTS PC DROPED :SET UNIT DROPPED FLAG. DROPN: .WORD O ;@ OF UNIT TO BE DROPPED : ; ; ; ; SUBROUTINE TO PRINT EXTENDED STATUS REGISTERS. INPUTS: OUTPUTS; REGISTERS: CALLE: PRINTX : 105737 002206 003531 MOV OGETSTM, -(SP) MOV 01,-(SP) MOV SP RO TRAP C4PNTX ADD 04,5SP @STAERS,MSGPKT+MS.XS0,MSGPKT+MS.XS1,MSGPKT «MS . XS2,MSGPKT +M$ . XS3, MSGPKT «MS . XS MOV MOV MOV MOV MOV MOV MOV MOV TRAP ADD RTS PC : ; : : 001430 105737 001023 ;RETURN, PRXST:: PRINTX #GETSTM 000016 ‘“‘“Ol 4843 017544 4844 017546 4845 017552 4846 017554 cHP BEQ 1578 BNE NOP NOP NOP 000004 483 4837 4838 4839 4842 017540 177774 002213 017452 017456 017462 017464 017466 4833 017472 :g;; 017536 TRAP ;EXEC BGNDU-ENDDU CODE IF IDU = O 4826 4827 4828 4829 4830 ’ ;DROP THE UNIT 503224: ‘Qcaag 017446 4831 4832 017452 RO CKHAE:: SUBROUTINE TO HALT AFTER EACH COMMAND. INPUTS: OUTPUTS: REGISTERS : R3, R4 CALLS: TSTB HAE ; IFB HAE NE 00 THEN BEQ 503234 1578 MISCFG BNE 503244 MANUAL :IF HALT FLAG IS SET: ;IFB MISCFG EQ #0 THEN ; :IS MANUAL INTERVENTION ALLOWED? MSGPKT +MS . XS4, -(SP) MSGPKT +MS . XS3, -(SP) MSGPKT +MS . XS2, -(SP) MSGPKT+MS.XS1.,-(SP) MSGPKT+MS . XS0, -(SP) OSTAERS, -(SP) .-(SP) RO C$PNTX 016,5P J8 GLOBAL AREAS MACRO V0S.03 Friday 22-May-87 08:12 Page 26-44 SEQ 0100 GLOBAL SUBROUTINES SECTION 4847 104450 103023 003420 011176 306 MOV 004310 MOVB BNCOMPLETE CKHRTN ;BR IF NOT. CMDWRD, R4 ;LET R4 := CMDWRD (R3). , HALTM (R3)e [HALTM.1 ;MOVE CMD ASCII sLET HALTM+1 :B= (R3)e ;INTO MESSAGE. JSR PC,GCMDA MOVB MOVB 104443 (R3),HALTM.2 GMANIL HALTM,TIME1,1,YES ;FETCH ADR OF CMD ASCII. TRAP C $MANI BCC CKHRTN :C HALT - WAIT FOR AN oepnnon Iwcocnm an 000404 .WORD .WORD "WORD WORD 100004: 100004: S03244: 003531 BR 503254 CLRB MISCFG WORD. ;LET MISCFG :B= #0 100004 TIMEl T$CODE HALTM 1 ; 503254: 50323$: CKHRTN: RTS 000207 .EVEN PC ;RETURN ENDMOD .TITLE MISCELLANEOUS SECTIONS .SBTTL REPORT CODING SECTION '00 ; THE REPORT CODING SECTION CONTAINS THE ; "PRINTS" CALLS THAT GENERATE STATISTICAL REPORTS. - L$RPT: : 003452 017142 002604 003376 003326 002604 020472 000004 4885 000012 177777 BGNRPT MOV RS ,RSSAVE JSR PC.FIRSTU 503264 : é'u'jne DEVIBL(RS) NE #END DO DEVTBL(RS), #END BEQ 503274 PRINTS PRINTS :SAVE CURRENT DEVICE POINTER. iFIND THE FIRST UNIT. ;WHILE THERE ARE MORE DEVICES: ORPT1A,DEVTBL(RS),PASCNT(RS),RECCNT(RS) MOV MOV MOV MOV MOV MOV TRAP ADD RECCNT( PASCNT( DEVTBL( ORPTIA, - 04, -(SP) SP.RO C$PNTS 012,5P ORPT18,WRBC+30(RS),WRBC +20(RS ), WRBC+10(RS ), WRBC(RS) K8 MISCELLANEOUS SECTIONS MACRO V0S.03 Fridey 22-May-87 08:12 Page 26-45 SEQ 0101 REPORT CODING SECTION 017704 017710 017714 017720 017724 017730 017734 017736 MOV MOV MOV MOV MOV 002626 002636 002646 002656 020547 000005 g TRAP 000014 C4PNTS MOV MOV MOV MOV RFBC+10(RS), -(SP) RFBC+20(RS).-(5P) BC+30(RS),-(SP) ORPT1D, - (SP) ADD MOV MOV MOV MOV MOV MOV TRAP ADD MOV MOV MOV MOV MOV MOV TRAP ADD 014,5P RFREC(RS), -(SP) RRREC(RS). -(SP) WRREC(RS) . -(SP) ORPTIF,-(5P) 04,-(SP) SP,RO C4PNTS #12,5P RFUNR(RS), -(SP) RRUNR(RS ). -(SP) WRUNR(RS ), -(SP) ORPT1G, -(5P) 04,-(SP) SP.RO C$PNTS #12,5P 014,5P 14, lflPTlD.flFBCoBO(RS).RFBCOZO(RS).NFBCOIO(R%\.'VBC(SFS) > TRAP 4889 000012 003036 003016 002776 021046 000004 000012 002210 PRINTS #RPT1F ,WRREC(RS) ,RRREC(RS),RFREC(RS) PRINTS PRPT1G,WRUNR(RS),RRUNR(RS) ,RFUNR(RS) 1ST8 BEQ S03304: BADTSW 503304 JSR PC,BTRPT PRINTS C4PNTS TRAP ADD PRINTS 4883 os.'-u()sé) ADD #14,5P ORPT1C,RRBC+30(RS),RRBC+20(RS) ,RRBC+10(RS ), RRBC(RS) MOV RRBC(RS), -(SP) MOV RRBC+10(RS), -(SP) MOV RRBC +20(R5 ). -(SP) MOV RRBC+30(RS) ., -(SP) MOV ORPTIC, -(SP) PRINTS 4887 WRBC(RS), -(SP) WRBC+10(RS), -(SP) WRBC +20(R5 ), -(SP) WRBC+30(RS) . -(SP) oRPT18, - (SP) :IFB BADTSW NE 00 THEN ;GO PRINT BAD TAPE SPOTS WHEN N BC(RS), -(SP) Ba” C$PNTS ENABLED ORPT1I,SCCNT(RS),HRDCNT(RS),FTLCNT(RS),VFYCNT(RS) L8 MISCELLANEOUS SECTIONS MACRO v05.03 Fridey 22-May-87 08:12 Page 26-46 REPORT CODING SECTION 012746 012746 010600 104416 062706 004737 021243 000005 33338 020166 000014 017210 JSR 000612 013705 S03274: 003452 BR 503264 MOV RSSAVE RS ;RESTORE CURKENT DEVICE POINTER. RPT EXIT 000167 001130 sFIND THE NEXT UNIT. PC,NEXTU JMP L10010-2-. SUBR TO PRINT BAD TAPES SPOTS DURING THE REPORT PRINTS WRITE RETRIES: BAD TAPE SPOTS: CUMULATIVE COUNT COUNT PER TAPE PASS ONLY, NOT CUMULATIVE. COUNT OF RECOVERABLE WRITE ERRORS EXCLUDES BAD TAPE SPOTS. BTRPT: : PRINTS 003316 ORPT1E,WRTYCT(RS) sPRINT GLOBAL WRITE acm;:mc'm 021117 MOV MOV MOV 000002 4909 002616 163230 4910 020256 4911 4912 MOV ASR FBTPT,R3 R3 PRINTS 021147 000002 C4PNTS MOV MOV MOV MOV R3,-(SP) TRAP ST 503324 : 005744 000001 4923 49524 4925 S50333%: 011446 012746 012746 021234 000002 SP,RO C4PNTS +IF R3 HI 020. THEN : 320 BAD SPOTS IS THE LIMIT OCRLFSP OCRLFSP,-(SP) SP.RO 000004 003512 000002 4921 503314 R3, 920 50%32 $20. .R3 PRINTS ORPT1J, -(SP) ADD 06, SP ;PRINT RECORD ¢ IF BAD SPOTS DETECTED R3 BEQ ce BLOS MOV SP RO TRAP :AND THE LOGGING INDEX ;PRINT @ OF BAD TAPE SPOTS ©ORPT1J.R3 -(SP) ORPTIE, -(SP) 02,-(SP) ADD 96, SP :8TPT_1IS BOTH THE BAD TAPE SPOT COUNTER BTADDR(RS),BTPT MOV 003512 WRTYCT(RS), MOV ADD CLR BTPT,R4 02,R4 R2 ;REPEAT PRINTS ;LET R4 := BTPT . #2 ADD :FETCH A BAD SPOT ID C$PNTS 04,SP 1R2 = PRINT COUNT PER LINE: 10 MAX ORPTIK,(R4) : ;PRINT A BAD SPOT ID MOV MOV MOV (R4),-(SP ) ORPTIK, -( sP) 02.-(SP) M8 MISCELLANEOUS SECTIONS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-47 SEQ 0103 REPORT CODING SECTION MOV TRAP INC ADD cMe 000012 R2 #2.R4 gg gc‘a sLET R2 := R2 « #1 ;COUNT PRINTS ;LET R4 := R4 « 92 ;;NEXT ;IF R2 EQ #10. THEN ; PRINTS OCRLFSP 005744 000001 000012 000012 S0334$ 503314 : 005741 000001 SuB SuB #10..R3 #10. .R2 cHe R2,R3 PRINTS OCRLF BNE 503334 MOV ;LET R3 := R3 - 910. iLET R2 := R2 - 910. . ;UNTIL R2 EQ R3 ;LIMIT: & OF BAD SPOTS X ; MOV MOV ADD LNLIST BEX "ASCIZ /#S23%AURTESASARDRSSISARDF SN/ RPTIF: RPT1G: RPTIE: RPT1J: RPTIK: RPT1I: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCII "ASCIZ OCRLF , -(SP) g}, ;«(’sv) C$PNTS #4,5P /#NsNSAUNIT #D1sS3sAPASS:#D5#S3SARECORD:SDS#N/ /#ABYTES WRITTEN wD3wA,sZ3sA,sZ3%A, $Z3%N/ /#ABYTES READ REV sD3wA.wZ3%A.wZ3%A.%Z 38N/ /#ABYTES READ FWD wD3%A.#Z3wA.wZ3sA.%Z 38N/ /#ARECOVERABLE ERRORS #DS5#S2#DS#S28DSsN/ /#AUNRECOVERABLE ERRORS sDS#S2#D5#S2%DS#N/ /#AWRITE RETRIESHSSHDSEN/ /#NwD2#A BAD SPOTS THIS TAPE PASS PRECEDING RECORD #:/ /wDS®S1/ “sASPEC CONDSS3SAHARDSS3SSAFATALSS3SACOMPARESN" /#S3%DS%S38DS5%S 38DSHS IHDSHNSN,/ TRAP 104425 .SBTTL OCRLFSP, -(SP) TRAP C4PNTS ADD o4, 5P sADJUST BAD SPOT COUNT ;ADJUST PRINT COUNT RTS PC .ASCIZ .ASCIZ .ASCIZ .ASCII “.y ;GO TO NEXT PRINT LINE PAST 10 PRINTS 'mnw' RPT1A: RPT1B: RPTIC: RPTID: SP,RO C$PNTS CSRPT LOAD DEVICE PROTECTION TABLE :;;BLE 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 gom 4 4967 021356 BGNPROT N8 MISCELLANEOUS SECTIONS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-48 SEQ 0104 LOAD DEVICE PROTECTION TABLE 021356 4968 4969 021356 4970 021360 4971 021362 LLER L$PROT : ; 000000 "WORD -1 177777 177777 o Tor OFFSET OF MASS BUS UNIT #: -1 = NOT A MASS BUS DE "WORD -1 497§ 021364 i1P-TBL OFFSET OF DRIVE ®: -1 = NONE, THREE DRIVES PER CONTRO ENDPROT 497 4974 4975 4976 .SBTTL INITIALIZE SECTION :AT THE_INITIALIZE SECTION CMAINS THE CODING THAT IS PERFORMED + THE BEGINNING OF EACH PASS. '-- L$INIT:: 000003 002330 BGNINIT INITIO: BIT ITOIBITLLACMOPKT ;IF CMD PACKET IS NOT ON MODULO 4 BOUNDRY: 1.CMOPKM 4986 012727 000000 013727 000000 005367 001375 005 ;PRINT ERROR MSG, 002116 DEC BNE DEC 177772 177756 BR CHERSF ‘WORD CMOPKM O ‘"WORD ;GO TO SUPERVISOR, WAIT 2 SECONDS. MOV~ $200..(PC)e O WORD MOV LSDLY.(PC)e O WORD DELAY 200. 000310 TRAP BNE INIT10 . CLRFLG +IF CLR COUNTERS FLAG SET: -6(PC) -22(90 503354: TSTE S03376: BEQ CLRB LR 503364 CLRFLG R2 cd R2, OCNTLEN LET R2 1= 40 INIT CLR FLAG. jWHILE R2 NE SCNTLEN BEQ CLR ADD 503404 WRBC(R2) 2,R2 CLR ALL STATISTICAL COUNTERS. JLET R2 := R2 + 92 50337$ 503404: 503364 ; 105737 001406 012737 012737 002205 IS8 RRmw +IF RESET RANDOM VARIABLE FLAG IS SET THEN: 153624 003432 MOV ORANBC.RANB JRESET RANDOM BASE #. 032561 003434 MOV ORANSC.RANS JRESET RANDOM SAVE LOCATION. B9 MISCELLANEOUS SECTIONS MACRO v05.03 Friday 22-May-87 08:12 Page 26-49 SEQ 0105 INITIALIZE SECTION 5011 3012 021514 5013 021514 021514 021520 503414 : 012700 104447 103057 105237 012705 012765 162705 005705 001371 022737 001425 5025 021 SAUDRUN, - (SP) TRAP ADD C4PNTF 04,SP 002116 MOV |6oou.(9c>~ 177772 DEC BNE DEC BNE -6(PC) .-4 ~22(PC) .-20 TRAP C$DCLN 177774 000002 002604 000001 002012 BNCOMPLETE INIT1S ;BRANCH IF NOT STARTING. BCC INIT1S INCB STAFLG :SET START COMMAND FLAG. MOV #6,RS ;LET RS := 96 S0342%: ;REPEAT ;INITIATE UNIT NUMBER TABLE MOV ONINUSE , DEVTBL(RS) 1BY STORING NOT IN USE IN EACH LOCATION. SUB #2,RS LET RS := RS- 92 TST RS JUNTIL RS EQ 0 BNE 503424 cHP #1,LSUNIT ;ONLY ONE UNIT ALLOWED BEQ 50%44 : OK PRINTF 000004 012727 000000 013727 000000 005367 001375 005367 001367 000025 162705 ;TELL 25 THE MAN sWAIT 177756 002012 000002 002604 002604 000034 50344 ; DOCLN gg\L/ INIT1S: 003526 003527 INIT16: 003536 003527 1 ABORT ;LET RS := LSUNIT SHIFT 1 kgwn.ns 50343$: ;nepen SUB 5037 5042 5043 5044 5045 021720 #AUDRUN DELAY ;STORE ALL UNIT &LE RS := RS- @2 ;NUMBERS IN DEVTBL. Rgx gg oevvex.( 1ST RS BNE 5038 5039 5040 5041 ;READ START COMMAND EVENT FLAG. MOV 003526 000006 062706 104444 013705 006305 #EF .START 9EF . START RO C$REFG 012746 012746 010600 104417 READEF MOV TRAP 000v40 503434 iLET DEVTBL(RS) := RS SHIFT -1 slNTIL RS EQ #0 READEF #EF.PWR ;HAS THERE BE A POWER FAILURE? BNCOMPLETE INIT16 ;BRANCH IF NOT. INCB INCB STAFLG PWRFLG ;IF SO - SET THE START FLAG. RFLAGS OPFLAG ;READ AND STORE FLAGS sev BY OPERATOR CLR 1ST8 BNE R3 PWRFLG MOV TRAP 0EF .PUR, RO C$REFG BCC INIT16 ;IF SO - SET THE POWER FAIL FLAG. ;:LET R3 503444 READEF ©EF .NEW TRAP MOV C$RFLA RO, OPFLAG 00 CLEAR EVENT FLAG {IF POMER FAIL MAS NOT OLCURRED THEN: JUPDATE PASS COUNT WHEN C9 MISCELLANEOUS SECTIONS MACRO V0S.03 Friday 22-May-87 08:12 Page 26-50 SEQ 0106 INITIALIZE SECTION 012700 000035 105737 003526 012700 000037 104447 103014 001010 104447 103402 005103 MOV TRAP s SUPERVISOR IS IN NEW PASS 503454 BNE comM 000401 STAFLG OEF .NEW,RO C4REFG ;AND DIAG WAS NEITHER STARTED 503464 READEF #EF .RES :NOR 503474 R3 s IFCOND CC THEN ;LET R3 := COMP R3 MOV TRAP sRESTARTED ;DO IT7 #EF .RES,RO C$REFG 503504 005203 ) R3 :SET 1ST PASS IF NEW PASS AND ;RESTARTING 000401 :SET *sr PASS IF NEW PASS AND : : STARTING ;D0 NOT UPDATE IT ON CONTINUE 1OR ON POWER FAIL 017142 002604 177777 JSR SR PC.FIRSTU R2 LET R2 MP DEVTBLCRS),BEND := 00 (HHILE DEVTBL(RS) NE BEND DO 503534 R2 23.“0 iLET R2 := R2 + 01 ;LET RO := RS SHIFT -1 RO,RO 503544 JINIT DEVICE POINTER, JINIT DEVICE COUNTER. ;GET HARDWARE P TABLE FR%"'MS,WER. C $GPHRD axscow CS THEN (RO), TSDB(RS (RO)+ TSSR(RS) :SAVE TSDB ADDRESS. :SAVE TSSR ADDRESS. (RO)+, TSVCT(RS) ;SAVE INTERRUPT VECTOR ADDRESS. 02, Tsfia(RS) (RO), *sumum (3 f(nS) TSSINT(RS), 01 s3 :SAVE NUMBER OF DRIVE NJ}snve FOR PRINT OUT'S ADD ggmcmn 503554 R3 503564 PASCNT(RS) 1SET UP INTERUPT Paocsssm; cowxuéns ICLEAR INTERRUPT FLAGS. tACTUAL PASSCOUNT LPOATE PER R3 +IF R3 LT 60 THEN tLET PASCNT(RS) := PASCNT(RS) + 01 D9 MISCELLANEOUS SECTIONS MACRO V05.03 Friday 22-Mey-87 08:12 Page 26-51 SEQ 0107 INITIALIZE SECTION 000403 35095 022112 012765 000001 003326 5097 022120 5098 S03564 : S03574 MOV #1 ,PASCNT(RS) ;LET PASCNT(RS) := @1 CLR JSR RECCNT(RS) PC.NEXTU ;CLEAR RECORD COUNT ;00 IT FOR ALL DEVICES. BR S03524 TST R2 S0357%: 3300 022120 S03554: 005065 004737 S03544: 003376 017210 000716 S03534: 005702 001026 S111 BR BNE 012746 012746 010600 104417 062706 005114 000001 012727 000000 013727 000000 005367 001375 005367 001367 000310 503604 PRINTF ©#AUDRPM 000004 DELAY 200. 002116 177772 177756 BREAK 104422 104444 ;IF THERE ARE NO UNITS: ;PRINT ALL UNITS DROPPED, MOV SAUDRPM, - (SP) MOV 3.-(95 MOV ‘RO TRAP C4PNTF ADD 04 ,5P ;GO TO SUPERVISOR, WAIT 2 SECONDS. MOV $200.,(PC)+ O LWORD MOV L$DLY,(PC)e O LWMORD OE -6(PC) -4 BNE DEC ~22(PC) BNE .-20 ;GO TO SUPERVISOR, CHECK TTY. TRAP DOCLN :D0 CLEAN CODE + ABORT PASS. TRAP SETPRI #PRIOO ;LOWER CPU PRIORITY TO O C$BRK C$DCLN S03604: 000000 002213 000020 003536 017142 002604 003530 000340 023770 000004 177777 503624: MOV TRAP TST8 BN; 855 IREC 14 ::DR.OPFLlG +IF ERROR RECOVERY IS ENABLED JSR PC.FIRSTU ;AND AUTO-DROP NOT CALLED, BC'E% %VYBL(RS ).#END CLRB SETVEC TRAPD4 ©4,0TRAP4, 0INTPRI #PRI00,RO C$SPRI THEN SET UP FOR FIRST ;WHILE THERE ARE MORE DEVICES: ;CLEAR TRAP FLAG ;SET VECTOR 4,PRIORTY a6 MOV SINTPRI,-(SP) OTRAPS4, -(SP) E9 MISCELLANEOUS SECTIONS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-52 SEQ 0108 INITIALIZE SECTION 022272 022276 022300 012746 104437 062706 MOV TRAP 012737 000404 000137 003436 1%: MOV BR JMP 503664 : 3 000025 503654 : 002514 cMP BGT MOV DELAY ;INCR TIME1 FROM @1 TO 025 BY 01 503634 TIMEL Hrtl , 925 zots;scpx.msoa(RS) :AND GET UNITS STATUS sWAIT 825.(PC)~ MOV . WORD MOV WORD 002116 <L)80LYL(PC). 177772 8- 012727 000000 013727 000000 NC 01, TIMEL 503654 ADD ;START 3.5 MINUTE COUNTER -6(PC) 177756 DEC -22(PC) -20 MOV TRAP o4 RO C 000004 003530 003366 CLRVEC o4 :CLEAR VECTOR AT 4 TST8 TRAPD4 :IFB TRAPD4 NE 00 THEN FTLCNT(RS) ONODEV, TSSR(RS) ;LET FTLCNT(RS) := FTLCNT(RS) ;PRINT ERROR PRINTF 002524 005543 24 CsCVEC MOV TRAP 48 022446 5149 022450 3150 5151 022452 022452 Sl.'og 5153 022454 5154 02 MOV 017450 010500 DEVTBL(RS),DROPN RS,RO RO RO 000340 24: CLRB SETVEC +RO=LOGICAL DEVICE NUMBER ;DROP THE UNIT TRAPD4 94 ,0TRAP4, OINTPRI TST TRAP C$OCLN #INTPRI, -(SP) ;CLEAR TRAP FLAG :SET VECTOR 4,PRIORTY 36 000004 000003 DELAY COD(IN IDO CLEAN EABORT 023770 000010 TRAP s EXEC _BGNDU- ENDDU CODE IF IDU = DOCLN 003530 ADD 70 BE DROPPED. 1SAVE @ OF UNIT §§§ 53333 35146 022436 S147 022444 @TSSR(RS) 25 ;CHECK FOR ADDRESS iWAIT SP) F9O MISCELLANEOUS SECTIONS MACRO V0S5.03 Fridey 22-May-87 08:12 Page 26-53 SEQ 0109 INITIALIZE SECTION 013727 000000 002116 MOV LSOLY,(PC)- 177772 DEC -G(PC) .WORD BNE 177756 003530 002524 005543 000002 -22(PC) TRAP coévec #4 ;CLEAR VECTOR AT 4 TST8 TRAPD4 ;IFB TRAPD4 NE 00 THEN PRINTF FTLCNT(RS) ONODEV, TSSR(RS) sLET FTLCNT(RS) := FTLCNT(RS) « o1 ;PRINT ERROR 34 MOV TRAP 017450 3533 002604 DEVTBL(RS) ,DROPN RS.“O RO RO 104444 35174 5175 ADD :SAVE @ OF UNIT TO BE DROPPED. 004737 010475 010026 002514 012727 000000 013727 000000 005367 001375 005 000025 a4%: B8GT 503674 34: JSR MOV DELAY PC,SETDEF g;.STSM(RS) TSSR(RS), -(SP) ONODEV , -( SP) g.agsé) C4PNTF . ;RO=LOGICAL DEVICE NUMBER ;:DROP THE UNIT TRAP CODM TRAP C$DCLN s EXEC _BGNDU-ENDDU CODE IF IDV = ;D0 CLEAN EABORT 003127 .-20 CLRVEC BEQ INC 003366 DEC BNE 3333 000004 O ;SET UNIT NUMBER MOV .WORD 025,(PC)- O 002116 MOV L$DLY,.(PC)- 177772 DEC -6(PC) .WORD BNE 177756 002340 002514 000025 MOV DELAY OGSCPK ,3TSDB(RS) 25 ;AND GET UNITS STATUS sWAIT DEC BNE MOV .WORD O -22(PC) .-20 925,.(PC)- O 002116 MOV L$DLY,(PC)- 177772 DEC -6(PC) 177756 DEC BNE .WORD BNE 000200 002524 BIT 000100 002524 BIT BNE O -22(PC) -20 07S.SSR,3TSSR(RS) +IF OTS.SSR SETIN @TSSR(RS) THEN #7S.0FL ,@TSSR(RS) 1IF OTS.OFL NOTSETIN @TSSR(RS) THEN 503704 503714 3644 sEXIT COUNTER WHEN UNIT ON LINE G9 MISCELLANEOUS SECTIONS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-54 SE@ 0110 INITIALIZE SECTION 318 022746 022746 02 S0371%: 013746 012746 012746 010600 003534 PRINTF SOFLINM, TSNP sPRINT UNIT OFF LINE EVERY 10 SEC MOV MOV muup 104417 062706 TSNP, -(SP) oOFLINM, -(SP) C$PNTF ADD 96 ,5P MOV MOV MOV MOV DEVTBL(RS), -(SP) ONRDYM, -(SP) 02,-(SP) SP,RO ADD 06,5P S0372%: 50373$ 503704 : PRINTF 002604 023740 000002 #NRDYM,DEVTBL(RS) TRAP 000006 012737 000402 000001 005237 003440 023727 003016 003440 012727 000000 013727 000000 005367 001375 005367 001367 000144 003440 000013 MOV BR S03754: INC 01, TIME2 503744 TIME2 cHP BGT TIME2, 013 503764 S03744: DELAY 100. ;WAIT FOR UNIT TO BE SET ON-LINE MOV 177772 177756 000137 022320 012700 000004 023727 003404 004737 004737 003436 BREAK BR 503764: JMP S03674: S03644: CLRVEC cHP 000025 BLE 012774 013512 ;ALLOW TERMINAL INTERRUPT 503754 503664 ¢4 TIMEL, #25 503774 JSR PC,MOVMSG JSR PC,TCC1 S0377%: 004737 ;INCR TIME2 FROM #1 TO #13 BY 01 002116 104422 000754 104436 503734: 017210 JSR PC,NEXTU C4PNTF ;CLEAR VECTOR AT 4 $100.,(PC)- .MORD © L.MORD O TRAP C$BRK DEC BNE DEC BNE MOV TRAP +IF OFF LINE FOR 3.5 MINUTES -6(PC) -4 ~22(PC) -20 04 RO C$CEVEC 1GET MESSAGE PACKET ;PRINT ERROR AND DROP OFF LINE UNIT ;REPEAT UNTIL ON LINE OR TIMED OUT. ;SET UP FOR NEXT UNIT. HO MISCELLANEOUS SECTIONS MACRO V05.03 Friday 22-May-87 08:12 Page 26-55 SE@ 0111 INITIALIZE SECTION $ 023136 023142 9 02 000137 105737 001026 10443) 010037 013737 062737 027727 002011 012746 012746 010600 104417 062706 022242 S03634: S03614: 003527 JMP 503624 TSTB PWRFLG BNE 504004 MEMORY DATAWT 003406 003406 004000 160210 ;REQUEST MEMORY FROM SUPER FOR RD/WR BUFFERS. TRAP C$MEM RO,DATAWT MOV DATAWT,DATARD ;SET RD BFR ADDRESS #DATCNT,DATARD SDATAWT,SDATCNT ;WHEN NOT ENOUGH FREE MEMO AVAILABLE 50401$ PRINTF OMEMOM ;WARN OPERATOR MOV OMEMOM, - (SP) MOV ADD CMP BGE 003410 003410 004000 023250 000001 T TRAP 000004 DOCLN 104444 105037 CLRB 105037 CLRBE 012703 004 MEMOM: ;AND ABORT PASS ADD C4PNTF 04 ,5P TRAP C$DCLN ;DIAG MUST BE RE-LOADED IN A CPU WITH LARGER MEMO 504014: S241 ;IFB PWRFLG EQ #0 THEN CHGFLG MOV JSR PENDFLG,R3 PC,CLRERR EXIT INIT PWRFLG ;CLR CHANGE CMD SEQ TBL FLAG. ;LET R3 := OENDFLG :CLEAR ALL FLAGS. ;:CLEAR THE POWER FAIL FLAG. .ASCII /#AFREE MEMO TOO SMALL FOR RD-WR BFRS#N/ .ASCIZ /#ARE-LOAD IN LARGER MEMOSN/ .EVEN TRAP .WORD CHEXIT L10012-. 19 MISCELLANEOUS SECTIONS MACRO VO5.03 Fridey 22-May-87 08:12 Page 26-56 SEQ 0112 INITIALIZE SECTION ENDINIT L10012: 104411 TRAP .SBTTL C$INIT AUTO DROP SECTION :géCYI(N EXECUTED AFTER THE INIT CODE WHEN “ADR" FLAG IS SET BY OPERATOR s SECTION CHEKS FOR A VALID INTERFACE LOCATION. :FROM INTERFACE DROPS UNIT IF NO RESPONSE go- LSAUTO: : 017142 002604 BGNAUTO JSR PC,FIRSTU 177777 003530 gw DEVTBL(RS), #END CLREB TRAPD4 000010 002514 MOV :B= 00 @TSDB(RS),R2 003530 1STE BEQ INC 003366 002514 023644 000002 002514 000100 002524 504044: 50404$ FTLCNT(RS) PRINTF MOV 017450 002340 012740 000200 TRAPD4 ;SET VECTOR & ;ADDRESS TSOS INT ERFACE CLRVEC o4 000004 003366 ; ;LET TRAPD4 SETVEC #4,0TRAP4,SINTPRI 000340 023770 000004 000003 000006 002604 ;FIND FIRST UNIT 504024 : ggne DEVTBL(RS) NE #END DO iCLEAR VECTOR AT MOV MOV MOV SINTPRI, -(SP) oTRAPA, - (SP) #4,-(SP) TRAP C$SVEC MOV 04 RO ADD TRAP ;IFB TRAPD4 NE 00 THEN SAUTODM, TSDB(RS) $10,5P COCVEC sLET FTLCNT(RS) := FTLCNT(RS) + #1 DEVTBL(RS),DROPN :PRINT ERROR MOV MOV MOV MOV TSDB(RS). -(SP) SAUTODM,- (SP) 92,-(5P) RO coémr 133' ;SAVE @ OF UNIT TO BE oaonéeo 22: gg.ao DODU RO BR MOV 504054 pogssspx @TSDB(RS) .usgnlo GET STATUS COMMAND gg_; né.sin.atssa(ns) o!rs.gl:L.avssa(RS) ;IF O7S.SSR SETIN @TSSR(RS) THEN ;IF OTS.OFL SETIN @TSSR(RS) THEN INC FTLCNT(RS) sLET FTLCNT(RS) := FTLCNT(RS) « 01 gé; ;DROP THE UNIT: sRO=LOGICAL DEVICE NUMBER EXEC BGNDU-ENDDU CODE IF IDU = O TRAP C$DODU J9 MISCELLANEOUS SECTIONS MACRO VO0S.03 Fridey 22-Mey-87 08:12 Page 26-57 SEQ@ 0113 AUTO DROP SECTION 5282 023546 023546 023552 013746 012746 023562 010600 023556 023564 023566 ssggz 023572 012746 104417 062706 004737 PRINTF GOFLINM, TSNP 003534 005456 000002 000006 017364 JSR PC,DROPUA 32232 023576 000416 5289 023600 005265 003366 023604 023610 016546 012746 002604 023740 104417 062706 000006 §290 023604 023614 023620 023622 023624 S291 023630 012746 010600 004737 50406: 004737 5298 023640 000647 023642 104461 023647 36 023655 125 124 120 INC FTLCNT(RS) PRINTF ONRDYM,DEVTBL(RS) sLET FTLCNT(RS) := FTLCNT(RS) « o1 JSR PC,DROPUA 504054: 017210 S0403%: 045 L10013: 101 MOV MOV DEVTBL(RS), -(SP) ONRDYM, -(SP) TRAP ADD C4PNTF 96, 5P TRAP C$AUTO 02,-(SP) SP.RO JSR PC,NEXTU B8R 504024 ENDAUTO 102 AUTODM: .ASCII /#ABUS TRAP AT sO6%N/ 040 101 101 g 123 122 2 J SP RO 504104 017364 2 2 v 5,’8% 023644 v . C4PNTF 96, 5P MOV MOV §301 023642 023642 TRAP ADD 504104: 52952967 023634 55299300 023642 BR 000002 5293 023634 5294 5295 023634 MOV TSNP, -(SP) POFLINM, -(SP) 92,-(SP) 504074 : S287 023576 5288 023600 MOV MOV 023703 023706 023711 023714 102 040 040 124 101 117 116 104 122 117 123 023725 023730 023733 023736 5305 023740 101 126 101 116 045 102 105 104 000 101 117 040 045 125 NRDYM: .ASCIZ /#AINTERFACE BAD OR NOT SET TO ABOVE ADsN/ _ASCIZ /#AUNIT sD1sA NOT RDYSN/ K9 MISCELLANEOUS SECTIONS MACRO V0S.03 Fridey 22-May-87 08:12 Page 26-58 SEQ 0114 AUTO DROP SECTION i 045 116 040 131 000 .EVEN DEVICE BUS TRAP HANDLER OUTPUT: TRAPD4 BYTE 1: TRAPED AT & 0: 105237 000002 003530 TRAP4:: INCB RTI .SBTTL CLEANUP CODING SECTION NO TRAP TRAPD4;LET TRAPD4 :B= TRAPD4 . #1 :THE CLEANUP CODING SECTION CONTAINS THE CODING THAT IS PERFORMED : AT THE END OF EACH PASS. K 5323 023776 023776 023776 024002 LSCLEAN:: 004737 017142 026527 001410 004737 002604 016500 104436 004737 002534 000764 JSR 177777 i 012740 017210 JSR 504124: 000002 sFIND FIRST UNIT. DEVTBL(RS). 4END BEQ 504124 JSR PC,WSSR CLRVEC 104432 104412 FIRSTU S0411%: ;WHILE oeviaL(RS) NE OEND DO TSVCT(RS) PC,NEXTU BR S0411% EXIT CLN ;WAIT FOR UNIT READY OR TIMEOUT iRELEASE INTERRUPT VECTORS FOR A\LL sFIND NEXT UNIT. MOV TRAP .EVEN L10014: .SBTTL DROP UNIT SECTION '.0 THE DROP-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE THAT CODE SHALL BE EXECUTg WHEN DODU : TO NO LONGER BE TESTED. sMACRO IS CALLED WHILE IDU FLAG IS NOT SET BY OPERAT TRAP TSVCT(RS) RO C$CvecC CSEXIY .WORD L10014-. TRAP C$CLEAN LS MISCELLANEOUS SECTIONS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-59 SEQ 0115 DROP UNIT SECTION 5349 024040 LSDU: : 010005 006305 012765 016500 104436 177774 002604 mv.s‘_ :g.ns ;RS = LOGICAL DEVICE NUMBER X 2. MOV ONINUSE ,DEVTBL(RS) sSET NOT IN USE FLAG FOR THE DEVICE. CLRVEC TSVCT(RS) 002534 PRINTF 017250 005CeS 000002 SDROPDM, DROPN EXIT DU .EVEN 104453 ;RELEASE THE INTERRUPT VECTOR. MOV TRAP ;PRINT DROP DEVICE MESSAGE L1001S: .SBTTL TSVCT(RS).RO C$CVEC MOV MOV DROPN, -(SP) ODROPOM, - (SP) mnw 000006 5357 5358 5359 BGNDU C4PNTF ADD 96, 5P LHORD 'WORD J$UMP L10015-2-. TRAP CsDU ADD UNIT SECTION '0. : THE ADD-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE : T0 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 . ) 5369 024112 024112 3370 024112 5371 024114 5372 024116 5373 024122 122 L$AV: : BGNAU :gl_v g.as ;RS = LOGICAL DEVICE NUMBER X 2. MOV RO,DEVTBL(RS) :STORE UNIT ¢ IN DEVICE TABLE. MOV MOV ADD MOV MOV MOV (RO),TSDB(RS) (RO)+, TSSR(RS) 02, TSSR(RS) (RO), TSVCT(RS) (RO).TSUNT(RS) (RO) . TSNP :SAVE TSDB ADDRESS. :SAVE TSSR ADDRESS. ;SAVE INTERRUPT VECTOR ADDRESS. 1SAVE NUMBER OF DRIVE 4SAVE FOR PRINT OUT'S #INTPRI MOV SINTPRI, -(SP) MOV TSSINT(RS), -(SP) MOV TSVCT(RS), -(SP) MOV 03, -(SP) TRAP c:évzc GPHARD RO.RO SETVEC TSVCT(RS), TSSINT(RS), :GET HARDWARE P TABLE FROM SUPER, TRAP :SET UP INTERUPT PROCESSING comubns. ;CLEAR INTERRUPT FLAGS. ADD CLR INTFLG(RS) EXIT AU C$GPHRD M9 MISCELLANEOUS SECTIONS MACRO V05.03 Fridey 22-Mey-87 08:12 Page 26-60 SEQ 0116 ADD UNIT SECTION 000167 000000 LWORD .WORD Jsuw L10016-2-. TRAP CsAav ¥ 024210 024212 L10016: 104452 .TITLE HARDWARE TESTS .SBTTL TEST 1: BASIC FUNCTIONS. : TEST TO EXECUTE ALL TSOS FUNCTIONS. BGNMOD T1:: 105037 105037 003515 003514 2 BGNTST CLRE CLRB BGNSUB RANDOM EXPBOT ;CLR THE RANDOM OPERATIONS FLAG. ;CLR EXPECT BOT FLAG. ;SUBTEST 1 - SET CHAR, DRIVE INIT, GET STATUS. TRAP SR EEREEG §33838888888 EERBREEEESS e ik 017142 007072 JSR é’g PC.FIRSTU fi‘sornm 2.NSSRM, STAERM sFIND THE FIRST UNIT. ;INIT DEVICE ;REPORT TSOS NOT READY TRAP .MORD "WORD 'WORD 007526 025134 025110 010266 017142 002604 114: 177777 002544 000012 002564 002564 177477 002574 002564 002604 PC,MDSE 08F SEQO, R2 PC.BFSEQ PC exu 504134 : btgn.e oevfm.um NE 0END DO BEQ MOV ADD 177700 002574 JSR MOV JSR JSR JSR MOV DEVTBL(RS), $END S04144 (R2), TSSCL{RS) $177700, TSSCL(RS) BIC 0177477, TSSSW(RS) PRINTF C$ERDF 2 NSSRM STAERM ;GO DO SETUP'S ;ADR OF CMD SEQ. ;SET UP CMD SEQ. :EXECUTE CMD SE@ ON ALL DEVICES. sFIND THE FIRST UNIT, sWHILE THERE ARE MORE DEVTCES: MSGPKA(RS),R2 ;GET MSG PACKET ADR $12,R2 LET R2 := R2 + #12 ;GET XSTAT2 ADR BIC MOV C$BSUB :STORE CODE LEVEL FROM DTR BYTE, (R2),TS5SW(RS) #CODELM.DEVTBL(RS), TSSCL(RS) ;STORE SWITCH SETTINGS MOV MOV TSSCL(RS), -(SP) DEVTBL(RS), -(SP) Friday 22-May-87 08:12 Page 26-61 SEQ 0117 012746 012746 0041 OOOO%% 000010 PRINT THE TSOS MICROC PRINTF #SWSET,DEVTBL(RS), TSSSW(RS) 002574 002604 004231 000003 000010 017210 S0415%: 504144 : L10020: T1.2: L10021: T1.3: 025220 025110 L10022: PC.NEXTU sFIND NEXT UNIT. 504134 T1.4: L10023: OCODELHs-(SP) sPRINT THE TSOS SWITCH SETTINGS. JSR 010266 3333333 "pand BASIC FUNCTIONS. i & 2 3 §§§§§ B TEST 1: MACRO V0S5.03 #BFSEQ2,R2 PC,BFSEQ PC,EXALL C$ESUB sSUBTEST 2 - REWIND. csssuB SEQ. cMD SEQ ON ALL DEVICES. :CLEAR START FLAG C$ESLB :SUBTEST 3 - WRITE/VERIFY. csasuB +ADR OF CMD SEQ. 1SET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. C$ESLB sSUBTEST 4 - WRITE TAPE MARK, ERASE. csasu 8443 N9 HARDWARE TESTS +ADR OF CMD SEQ. Q. 1EXECUTE CMD SEQ ON ALL DEVICES. lSFT UP CMD SE B10 HARDWARE TESTS TEST 1: MACRO V05.03 Fridey 22-May-87 08:12 Page 26-62 SEQ 0118 BASIC FUNCTIONS. 024514 5461 5462 024516 024516 024516 024520 024524 5466 024530 104403 TRAP T1.5: 104402 012702 004737 004737 PBF SEQ4 PC,BFSEQ PC.EXALL T1.6: 025426 025110 010266 L10025: e 104402 024574 025500 025110 024600 024604 024610 5488 024614 TRAP csBsuB :ADR OF CMD SEQ. :SET UP CMD SEQ. ;EXECUTE CMD SEQ ON ALL DEVICES. TRAP C$ESUB 1SUBTEST 8 - READ REV RETRY. TRAP #BF SEQ7 ,R2 PC,BFSEQ PC.EXALL csBsuB :ADR OF CMD SEQ. :SET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP C$ESUB :SUBTEST 9 - READ FWD RETRY. T1.9: TRAP PBF SEQ8 ,R2 PC,BFSEQ PC.EXALL L10030: C$ESUB ;SUBTEST 7 - WRITE RETRY, BGNSUB PC . EXALL 025604 025110 010266 csBsue ;ADR OF CMD SEQ. :SET UP CMD SEQ. ;EXECUTE CMD SEQ ON ALL DEVICES. TRAP L10027: 104402 104403 PC.EXALL #BF SEQ6 , R2 025552 025110 010266 104403 012702 004737 004737 #BF SEQS ,R2 PC,BFSEQ T1.8: 104402 012702 004737 004737 TRAP L10026: 104403 C$ESUB :SUBTEST 6 - SPACE RECORDS. BGNSUB MOV JSR JSR ENDSUB csBsuB :ADR OF CMD SEQ. :SET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP PC,BFSEQ 010266 024576 024576 024576 ,R2 L10024: 104402 012702 004737 004737 :SUBTEST 5 - SPACE FILES. TRAP 025364 025110 010266 104403 012702 BGNSUB C4ESLB csBsuB sADR OF CMD SEQ. +SET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP C4ESUB Cl0 HARDWARE TESTS TEST 1: MACRO V05.03 Friday 22-May-87 08:12 Page 26-63 SEQ 0119 BASIC FUNCTIONS. 5497 024636 024636 hete 024636 104402 5499 024640 5500 024644 5501 024650 012702 004737 004737 5502 024654 024654 - 024654 71.10: 025636 025110 010266 L10031: 104403 024656 104402 T1.11: SS05 024660 5506 024664 012702 004737 025660 025110 5508 024674 112737 000001 5507 024670 004737 010266 5509 024702 5510 024706 S511 024712 004737 105037 010266 003520 024712 024712 104403 S512 024714 013702 003406 L10032: 5514 024724 50416%: 5513 024720 062702 000012 5515 024724 020237 003406 5516 024730 001402 5519 024738 000773 ggi; 024732 5520 024736 %fi 024736 024742 SS24 024744 5525 024752 5526 024756 5527 024764 5528 024770 5529 024776 5530 025004 §531 025010 5532 025016 §533 025022 5534 025030 §535 025034 5§53 025042 5537 025046 §538 025052 5539 025060 5580 025064 3553 025072 5543 025076 104402 012737 004737 012737 004737 112737 012737 004737 012737 004737 012737 004737 012737 004737 105037 012737 004737 012737 004737 BGNSUB 003523 504174 : T1.12: 104401 003420 016212 000012 002336 016212 000001 003520 000011 002336 016212 000012 002336 016212 104001 003420 016212 000011 002336 016212 003520 000012 002336 016212 000011 002336 016212 TRAP #BFSE10,R2 PC,BFSEQ ;ADR OF CMD SEQ. ;SET UP CMD SEQ. MOVE JSR CLRB 01.SWBFLG PC.EXAL SWBFLG ;ENABLE BYTE SWAPPING MOV omun R2 ;INIT WRITE BUFFER POINTER. ADQ PC.EXALL $10. ;WHILE R2 NE oAmn DO ¢re R2,DATAWT 504164 INCB TiSWB sWRITE/VERIFY RECORDS 3 AND 4. ;DISABLE BYTE SWAPPING. TRAP C$ESUB ;UNTIL 10 BYTES HAVE BEEN SWAPPED. :SWAP DATA BYTES IN WRITE BUFFER. ;SET T1 SWAP BYTES FLAG FOR "CKDATA* SUBR BGNSUB ENDSUB C$BSUB WRITE/VERIFY aecoaos 1 AND 2. 504174 BR MOV JSR MOV JSR MOVE MOV JSR MOV JSR MOV JSR MOV JSR CLRB MOV JSR MOV JSR C$ESUB ;SUBTEST 11 - WTV SWAPPED DATA BYTES. MOV JSR ENDSUB C$BSUB ;ADR OF CMD SEQ. ;SET UP CMD SEQ. ;EXECUTE CMD SE@ ON ALL DEVICES. SWAB -(R2) 5523 024742 024742 #BFSEQ9, R2 PC,BFSEQ PC.EXALL TRAP BEQ 000342 105237 ENDSUB JSR 003520 ;SUBTEST 10- CLEAN. TRAP MOV JSR JSR 5504 024656 024656 BGNSUB ;SUBTEST 12 - READ SWAPPED DATA BYTES. oaon cmmo PC, VFEXC 912, CMOPKT+CP.CNT PC, VFEXC ©1.SWBFLG 011, CMOPKT.CP.CNT PC, VFEXC #12,CMDPKT +CP.CNT PC, VFEXC OROF ,CMOWRD PC, VFEX ui.crogn.cp.cm PC, VFEXC SWBFLG 912, CMOPKT+CP.CNT PC, VFEXC 011 .CMOPKT+CP.CNT PC, VFEXC TRAP C$BSUB :CMD IS READ REV, sVERIFY ODD LENGTH su» (RECORD 4). sCHANGE BYTE COUNT TO 10 {VERIFY EVEN LENGTH SWAP (RECORD 3). :ENABLE BYTE sumxus ;CHANGE BYTE COUNT TO 9. sVERIFY 0DD LENGTH sw (RECORD 2). ;CHANGE BYTE COUNT TO 1 :VERIFY EVEN LENGTH sw (RECORD 1). ;CMD IS READ FWD. ;VERIFY EVEN LENGTH SWAP (RECORD 1). .cnmse BYTE COUNT T0 9. ;VERIFY 00D LENGTH SWAP (RECORD 2). I1DISABLE BYTE SWAPPING ;CHANGE BYTE COUNT TO 10. ;VERIFY EVEN LENGTH SWAP (RECORD 3). :CHANGE BYTE COUNT TO 9. ;VERIFY ODD LENGTH SWAP (RECORD 4). - HARDWARE TESTS TEST 1: MACRO V0S5.03 Fridey 22-May-87 08:12 Page 26-64 SEQ 0120 BASIC FUNCTIONS. 025076 ssqq 025076 104403 3345 025100 105037 5547 025104 025104 ssap 025106 L10033: 003523 104432 000574 5549 5550 ' " 5551 S552 : : gggz 3 5555 025110 TRAP CLR8 TiSWB EXIT TST CALLS: BFSEQ:: MOV #CMDSEQ, R1 557 025114 021227 558 025120 001402 177777 e B8EQ R2), 9END 24 3359 025122 012221 5561 025124 000773 025126 5563 025126 012711 3364 025132 000207 5562 5567 3369 025134 140004 5570 025136 5571 025140 §572 025142 000200 000001 000000 5574 025146 5575 025150 000001 000001 177777 ;WHILE (R2) NE SEND DO 025152 ;INIT SEQ TABLE ADORESS. {WHILE THERE ARE MORE COMMANDS: M~V (R2)+,(R1)e sMOVE COMMANDS TO SEQ TABLE. S0421%: B8R MOV RTS 504204 PEND, (R1) PC ;STORE END OF SEQUENCE CODE. {RETURN. : BASIC FUNCTION COMMAND SEQUENCE BFSEQO: .MORD §57% 025144 100013 76 TRAP .MORD OUTPUTS: REGISTERS: 003540 S0420%: ;CLEAR T1 SWAP BYTES FLAG SUBROUTINE TO MOVE A COMMAND SEQUENCE TO THE SEQUENCE TABLE. INPUTS : R2 = FWA OF COMMAND SEQUENCE. 012701 5556 025114 SCH ;SET CHAR. 200. (1) DRI ;DRIVE INIT. 2) 0 200 1 0 1 1 000000 577 025154 140004 SCH SET CHAR. 20 (3) 33851 033162 025164 GES 2 78 025156 5579 025160 000020 000001 5582 5583 5584 5585 5586 000001 000001 000000 140004 000040 000001 000000 025166 025170 025172 025174 025176 025200 5588 025202 3389 025204 9 100017 177771 02010 3395 033570 50500, 3393 925212 3335 5596 20 1 00002 16 999999 LMORD BFSEQL : 1 1 0 SCH 20 1 0 JGET STATUS. (&) ;SET CHAR. 40. (S) RWD ;REWIND TWICE. 6) END 3 LMORD 2 END CHESUB CSEXIT L10017-. E10 HARDWARE TESTS TEST 1: MACRO V05.03 Friday 22-Mey-87 08:12 Page 26-65 SEQ 0121 BASIC FUNCTIONS. 3597 025220 5598 025222 104105 004000 000001 000001 104105 BFSEQ2: WtV DATCNT 1 1 WTV DATCNT 1 2 WTV DATCNT 1 3 WtV DATCNT 1 sWRITE/VERIFY PAT 1. (7) ;WTV PAT 2. (8) ;WTV PAT 3. (9) ;WTV PAT 4, (10) sWTV PAT S, (11) ;WTV PAT 6. (12) ;WTV PAT 0. a3 ;WRITE TAPE MARK. (14) sWRITE 10 RECORDS. (15) ;ERASE 10 TIMES. (16) ;WRITE TAPE MARK. 17) ;WTM RETRY (18) +SPACE 2 FILES REV. (19) 1SPACE 2 FILES FWD. (20) 4 WTV DATCNT 000010 000000 100011 000001 000001 000000 101011 000001 000001 000000 177777 105410 5653 025374 000002 000001 000000 105010 BFSEQ4: $o-£ gowu BFSEQ3: F10 HARDWARE TESTS Fridey 22-May-87 08:12 SEQ 0122 BASIC FUNCTIONS. ) 5709 025550 i ; ¢ 102010 000000 1177777 (21) +SPACE 2 FILES FWD. (22) sREWIND. (23) :SPACE 7 RECORDS FWD. (24) +SPACE 7 RECORDS REV. (25) :SPACE 7 RECORDS FWD. (26) :SPACE 7 RECORDS REV. (27) sREWIND. (28) iWRITE. (29) ;WRITE RETRY, (30) BFSEQS: BFSEQ6: 3 102010 b +] 5666 5667 025413’8 :SPACE 2 FILES REV. - - o 3 QONFQOHN 3654 025376 & 3 Page 26-66 ;WRITE TAPE MARK. 80”» TEST 1: MACRO V05.03 +SPACE 1 FILE REV, Page 26-67 SEQ 0123 004000 5741 025642 5743 S 5745 025652 S;“l 025656 LY 5748 5749 025660 5750 §757 025700 5753 105001 004000 000001 000001 125001 004000 000001 000001 177777 025702 pe) 101012 000001 000001 000000 102010 000001 000001 000000 BFSEQ9: 104105 BFSE10: 177777 . .WORD 000000 177777 5760 025702 025702 » 000001 o o ; 35739 025636 BFSEQS: : ~ el 8 025634 .WORD o 104001 004000 000001 v 5725 025604 26 025606 3727 025610 025620 025622 025624 025626 025630 : 000001 000001 125401 000001 000001 177777 5731 5732 5733 5734 5735 S 5737 RDR 004000 5721 025576 025600 57%2 025602 5729 025614 BFSEQ7: 104401 & 500—-; 5 gopwgoppg gnp §HH $ g~ oy 2-- z.‘.fl g -g‘ 2 2 2 z 3 & 717 025566 5718 025570 5719 025572 104401 004000 000001 000001 105401 §§ 025552 025554 025556 025560 025562 g 5711 35712 5713 3714 5715 Friday 22-Mey-87 08:12 BASIC FUNCTIONS. : TEST 1: MACRO V0S.03 .WORD -EVEN L10017: ;READ REV. (31) sREAD NEXT REV. (32) sREAD NEXT FWD. (33) sREAD FWD. (34) ;READ PREVIOUS FWD. (35) sREAD PREVIOUS REV. (36) ;CLEAN. (37) ; REWIND (38) +END OF SEQUENCE. ;sWRITE/VERIFY EVEN LENGTH. (39) sWRITE/VERIFY ODD LENGTH. (40) Ve G10 HARDWARE TESTS ENDTST TRAP 5762 .SBTTL TEST 2: DATA RELIABILITY. 5765 :.;EST TO CHECK THE DATA RELIABILITY OF THE TSOS. CSETST | H10 HARDWARE TESTS TEST 2: MACRO V0S5.03 Friday 22-May-87 08:12 Page 26-68 SEQ 0124 DATA RELIABILITY. 3763 025704 = %8 025704 2769 025704 112737 000001 003515 §770 025712 §771 025716 §772 025722 §773 025726 105037 005037 004737 004737 025734 104455 025740 004536 §777 025744 004737 5779 025754 005302 5782 025766 $783 025772 004737 105737 5774 025732 S77S 025734 025736 " 025742 103404 003514 003456 017142 007072 5784 025776 5785 026000 3_7,39' 026004 5788 026010 5789 026010 $790 026014 $§791 026020 5792 026024 5793 026026 g;gsc 026030 §796 026034 007526 010237 005137 11%: 001417 004737 010222 003526 105037 003526 012721 012721 012702 005102 010221 012721 104105 004000 177740 ;CLEAR EXPECT BOT FLAG. ;CLEAR WRITE TAPE MARK FLAG ;FIND THE FIRST UNIT. ;INIT DEVICE ;REPORT TSOS NOT READY 5806 026066 000763 012711 MOV coM az LENMSK LENMSK ;ALLOW MAXIMUM BUFFER. CLRB 504224: S0424$ ; 003434 177741 177777 004737 010266 5811 026100 012701 003540 $813 026106 5814 026110 001752 105237 000240 ;GO DO SETUP'S JSR MOV MOV MOV coM MOV MOV TRAP 50424§ 003524 504254; 2 .WORD STAERM PC,SETRW STAFLG ; BR 504244 BEQ INCB NOP ;CLR START FLAG. OUTV, (R1)+ ODATENT, (R1)ORNOPSC , R2 R2 R2,(R1)+ ORANP, (R1)- PC, SRANCMD(R2) 1ST ; CMD2=REWIND ;LET STAFLG :B= #0 JSR JSR NSSRM .cro 1 = SET CHARACTERISTIC. ;IFB STAFLG NE 0 THEN ;IF STARTING THEN: R1, 9SEQEND 504254 RANB , RANS RANS. R2 MOV C$ERDF L.WORD ;SET UP THE RECORD LENGTH MASK, cHe BGE ADD MOV BIC 026220 ;g% 026074 005702 oohcm R2 50423%: BREAK 004772 042702 JSR BEQ 000007 S804 026062 5815 026114 ;SET THE RANDOM OPERATIONS FLAG. 114 2,NSSRM,STAERM JSR PC,SETCH 1578 STAFLG 010246 020121 003740 g; 0637 003432 013702 003434 5812 026104 #1, RANDOM EXPBOT WTMFLG PC,FIRSTU PC,SOFINIT MOV DEC 003430 003430 5798 026036 5799 026036 S$800 026042 5801 026044 5802 026052 S$808 026070 CLRB CLR JSR JSR .WORD 104422 5807 026070 MOVB 006120 o 026034 5803 026056 BGNTST BCS ERRDF 5778 025750 012702 004000 5780 025756 S$781 025762 T2:: 0177741 ,R2 DO A SUPVSR BREAK FIRST. TRAP C$BRK sFILL SEQ TBL WITH RANDOM CMDS. ;LET RANS := RANS + RANB ;SET UP A RANDOM CMD + BRF. PEND, (R1) ;STORE END OF SEQUENCE CODE IN TABLE. S#CMDSEQ,R1 ;INIT CMD SEQ TBL POINTER, 504234 ALLEOT ;FLAG ALL UNITS @ EOT PC,EXALL R2 ;GO EXECUTE ALL CMDS IN SEQUENCE TABLE. ;REPEAT UNTIL EOT IS REACHED 110 MARDUAPE TESTS MACRL 05.03 Fridey 22-Mey-87 08:12 Page 26-69 -e i TEST 2: DATA RELIABILITY, 027674 PC.TSWEOT PC,RANRD ;WRITE ONE RECORD BEYOND EOT ON ALL UNITS :S0 THAT SHORTER READ STOP DISTANCE SHAL POSITION HEAD IN CLEAN IRG :READ NEV THAT EXTRA REC TO RE- ORNOPSC,CMDSEQ-4 %SEOO‘.OQSEO-IC SEQ-4 R1) :SET_UP READ NEV/FID CMDS, l. OF RECORDS FOR READ REV :® OF RECORDS FOR READ FORWARD. :STORE END OF SEQUENSE CODE IN SEQ TABLE. +6G0 EXECUTE READ REV/FWD OF LAST N RECORDS. ;CLEAR ALL UNITS @ EOT FLAG ST PERFORMANCE REPORT w ;EXECUTE REWIND CMD ON ALL UNITS TRAP .WORD ADDRESSES OF SUBROUTINES USED TO SET UP RANDOM OPERATIONS IN THE DATA RELIABILITY TEST. swnognve TO SET UP READ COMMANDS IN SEQUENCE TABLE. OUTPUTS: REGISTERS : CALLS: 005737 001406 004737 004737 005037 020127 002030 012721 1 a2 WTMFLG 2 4 PC.RAWNTM 1WAS L LAST %D A WRITE? ; NO,GO ; AND SPACE FILE REV i THEN 24 ORDR, (R1)- AHE : YES PUT DOWN TAPE MARK CLEAR THE FLAG :STORE READ REV CMD. CS$EXIT L10034- J10 MARDWARE TESTS MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 26-70 SEQ 0126 TEST 2: DATA RELIABILITY. S872 026314 5873 02632C S878 026326 012721 063737 013702 5876 026336 010221 5878 026344 5879 026350 S880 026352 5881 026356 5882 026362 020127 002007 012721 012721 010221 ssgg; 026370 000207 S87S 026332 042702 004000 003434 003432 003432 177740 POATCNT, (R1)e RANS, RANB RANB . R2 ;SET BRF TO MAX FOR READ RANDOM LENGTHS. ;LET RANB := RANB + RANS :LET R2 := RANB CLR.BY SRNOPSC MOV Aw (R1)+ 2,(R1)+ ;SET RANDOM ¢ OF OPERATIONS. BIC §877 026340 012721 000007 MOV 003740 ce BGE MOV MOV MOV 104001 004000 $883 026364 012721 000007 MOV ADD MOV 2%: MOV RTS PC omo#sc R2 1, 9SEQEND 20 ORDF , (R1)+ oon(:m (R1)+ oabp.uu)- IRANDOM PATTERN. :STORE READ FWD CMD. ;SET BRF TO MAX TO READ RANDOM LENGTHS. ;SET RANDOM & OF OPERATIONS. ;RANDOM PATTERN. 5886 5887 : - SUBROUTINE TO SET UP A WRITE COMMAND IN THE SEQUENCE TABLE, THEN A WRITE TAPE MARK AND SPACE FILE REVERSE. 5889 5890 5891 : : ; INPUTS; oUTPUT REGISTERS 58“ H ggg% ; 5894 026372 012721 5896 026402 5897 026406 5898 026410 005737 001002 005237 5895 026376 5899 026414 3905 004737 000207 104005 RANWR:: MOV 003456 1ST BNE INC 026504 003456 §902 $903 5904 5908 026416 3913 004737 000207 104105 026504 5913 5914 5915 $916 020127 5924 026452 ggg 026454 5927 5928 005721 000207 003740 :STORE WRITE CMD. WTMFLG 1% WTMFLG ;usr cm A WRT? m»:s TURN NO,SET THE FLAG ¢ OF "OPERATIONS, PATTERN. REGISTERS: CALLS: PUTV,(R1)- ssroae WRITE/VERIFY CMD. :STORE BRF, # OF OPERATIONS, PATTERN. SUBROUTINE TO SET UP A WRITE TAPE MARK IN THE SEQUENCE TABLE. INPUTS: OUTPUTS: REGISTERS: CALLS: RAWTM:: CMP BGE MOV MOV MOV 100011 000001 000001 ;STORE BRF, SUBROUTINE TO SET UP A WRITE/VERIFY COMMAND IN THE SEQUENCE TABLE. INPUTS: OUTPUTS: JSR PC,RANW RTS PC 3 5920 026434 002007 5921 026436 012721 5922 026442 012721 5923 026446 012721 RTS PC RANWV:: MOV ; ; ; ; ggi; 5919 026430 1%: : : 012721 SURT, (R1)+ JSR PC,RANW : ; ; S90S ggg 5909 026422 5910 026426 CALLS: 1ST R1,#SEQEND 18 PUTM, (R1)#1,(R1). #1.(R1)+ (Ri). STORE WRITE TAPE MARK CMD. ; :® OF OPERATIONS ;SKIP PATTERNS 1%: RTS PC : SUBROUTINE TO SET UP A SPACE FILE REVERSE IN THE SEQUENCE TABLE. ; INPUTS K10 HARDWARE TESTS MACRO V05.03 Friday 22-May-87 08:12 Page 26-71 SEQ 0127 TEST 2: DATA RELIABILITY, 020127 002007 012721 012721 012721 005721 000207 003740 RASFR: : 105410 e BGE MOV MOV :STORE SPACE FILE REVERSE OIi(Rl)o 10 OF OPERATIONS 01,(R1)+ MOV 000001 R1,#SEQEND 1% OSFR, (R1)+- BRF 'SKIP PATTERNS 14: SUBROUTINE TO STORE BRF g & 23S SEQUENCE TABLE FOR unxré AND WRITE/VERIFY COMMANDS. S: REGISTERS: 012721 063737 013702 042702 010221 012721 003434 32 177740 003432 PATTERN IN COMMAND R2 #DATCNT, (R1)- ;SET BRF TO MAX FOR PATTERN GENERATION. RANDOM BRF WILL BE GENERATED FOR EACH RECORD. MOV RANB . R2 ILET RANB := RANB - RANS iLET R2:= RANB CLR BY ORNOPSC MOV ORANP, (R1 ). ;RANDOM PATTERN. ags 000207 ® OF OPERATIONS, ORNOPSC , R2 RTS PC :SET _RANDOM ¢ OF OPERATIONS. sRETURN, .EVEN L10034: 104401 .SBTTL ENDTST TRAP TEST 3: C4ETST WRITE COMPATABILITY/WRITE UTILITY, 1*TEST 10 WRITE RECORDS FROM BOT TO EOT. 73:: 566 026570 026572 5977 5978 026574 112737 105037 00000 003514 004737 004737 103404 017142 007072 003515 BGNTST MOVB CLRB exfieor;LET EXPBOT :8= 90 JSR JSR PC.FIRSTU PC.SOFINIT BCS ERRDF 104455 :SET THE RANDOM OPERATIONS FLAG. 114 2,NSSRM, STAERM sFIND THE FIRST UNIT, s INIT DEVICE ;REPORT TSOS NOT READY 000002 004536 006120 004737 sCLEAR EXPECT BOT FLAG. TRAP . WORD .WORD .WORD 007526 114: JSR PC,MDSET 1G0 DO SETUP'S CHEROF NSSRM STAERM L10 HARDWARE TESTS TEST 3: MACRO V0S5.03 Friday 22-Mey-87 08:12 012702 004000 3 026616 004737 003430 003430 010222 985 026626 105037 003 980 026604 005302 981 026606 010237 5982 026612 005137 984 026622 986 026632 , 026632 988 026634 5989 026634 §990 026640 §991 026642 5992 026646 5993 026650 004737 995 026654 996 026660 5997 026664 5998 026666 020127 002003 004737 000772 sfi; 026722 6009 026716 026726 026726 504274 : S0430%: 177777 6007 026706 6008 026712 6006 CLRB s R1, #SEQEND DO A SUPVSR BREAK FIRS *acm START FLAG TRAP ;WHILE THERE IS MORE ROOM IN SEQ TABLE: MOV SEND, (R1) :STORE END OF SEQUENCE CODE IN TABLE. ALLEOT ;SET ALL UNITS @ EOT FLAG 105037 004737 003524 010246 CLR8 ALLEOT JSR PC,SETRW 004737 010266 MOV SEND, (R1) EXIT TST JSR PC,EXALL {EXECUTE ALL CMDS IN SEQ TBL ON UNITS. ;INIT SEQ TBL POINTER ;REPEAT UNTIL EOT IS REACHED ;WRITE ONE necoao BEYOND EOT ON ALL UNITS 35S0THAT SHORTER READ STOP DISTANCE s SHALL vosxuou HEAD IN CLEAN IRG GAP ;READ EV THAT EXTRA REC TO RE-POSITION TAPE ;CLEAR ALL UNITS @ EOT FLAG ;STORE REWIND IN SEQ TBL, :STORE END IN SEQ@ TBL, ;EXECUTE REWIND CMD ON ALL UNITS TRAP CSEXIT TRAP CHETST .WORD L10035: 104401 .SBTTL o wz‘soz.'o ENDTST TEST 4: READ COMPATABILITY/READ UTILITY. : TEST TO READ ENTIRE TAPE FORWARD AND REVERSE. '-- 6025 6026 026734 v 026734 6029 026742 T4::; 112737 112737 L10035-. .EVEN 6020 6022 6028 026734 C$BRK ;STORE A WRITE CMD IN SEQUENCE TABLE. PC, TSWEOT 104432 ; 50430+ PC , RANWR 504274 INCB NOP NOP NOP 177777 sCMD 1 = SET CHARACTERISTIC. ; CMD2=REWIND BGE JSR BR JSR 012711 sALLOW MAXIMUM BUFFER. ;LET STAFLG o- 60 027674 003524 6016 6017 026732 026732 e STAFLG PC,EXALL #CMDSEQ, R1 R2 504264 <ca 026730 000002 6015 026732 PC,SETRW 504264: BREAK 026372 004737 6003 026702 6004 6005 JSR JSR MOV TST BEQ 105237 000240 000240 000240 ;SET UP THE RECORD LENGTH MASK. R2 R2 , LENMSK LENMSK JSR ;E.sercu 003740 010266 003540 SDATCNT ,R2 DEC MOV coM 010246 004 012701 005702 00176 026670 026674 026676 026700 MOV 104422 994 026650 oxz;g; 601 6013 SEQ 0128 WRITE COMPATABILITY/WRITE UTILITY. 979 026600 §999 6000 6001 6002 Page 26-72 000001 000001 003515 003514 BGNTST MOVE MOV #1,RANDOM 01 ,EXPBOT :SET THE RANDOM OPERATIONS FLAG. :SET EXPECT BOT FLAG. M10 MARDUARE TESTS TEST 4: MACRO V0S.03 Fridey 22-Mey-87 08:12 6035 026754 6033 026760 6034 026762 026762 026764 026766 026770 6035 6036 026772 004737 004737 103404 JSR 017142 007072 ERRDF 104455 :tl:isormn 2,NSSRM, STAERM ;FIND THE FIRST UNIT. ;INIT DEVICE ;REPORT TSOS NOT READY TRAP CSERDF 'MORD NSSRM STAERM .WORD "WORD 114: 6038 027002 6039 027006 JSR JSR JSR CLRB MOV MOV 6041 027016 PC,MDSET PC,SETCH PC.SETRW = STAFLG sasttsgREEE 88888 s gRacE MOV MOV MOV 6045 027036 g2 §338 fi&figé 332 PC.FIRSTU i’:‘s:g 6037 026776 ;GO DO SETUP'S ;CMD 1 = SET CHARACTERISTIC. ;CMD2=REWIND . ;LET STAFLG :B= 90 OROF , (R1 )+ ooném (R1)e« 077777 (R1)+ ANP, (R1)- ;CMD3 = READ F ;CLEAR START FLAG :SET LENGTH TO MAX FOR UNKNOWN LENGTHS. ;SET RECORD COUNT TO MAX FOR WHOLE TAPE. m.ian ;PATTERN = RANDOM. ALLEOT iFLAG 1O ALLOW ALL UNITS AT €OT T0 READ REV ;STORE END OF SEQUENCE CODE IN TABLE. JSR PC, EXALL {EXECUTE ALL CMDS IN SEQ TBL ON ALL UNITS. MOV MOV MOV MOV MOV MOV JSR #CMDSEQ,R1 ORDR, (R1)+ POATENT, (R1)e 077777,(R1) ORANP, (R1)+ PEND, (R1) PC,EXALL ;INIT CMD SEQ TBL POINTER. ;CMD1 = READ REVERSE, 1SET LENGTH TO MAX FOR UNKNOWN LENGTHS. ;RECORD COUNT = MAX FOR WHOLE TAPE. ;PATTERN = RANDOM. ;STORE END OF SEQUENCE CODE IN TABLE. 36O EXECUTE READ REV, OF ENTIRE TAPE. EXIT TST INCB CLR8 ALLEOT ;CLEAR ALL UNITS @ EOT FLAG TRAP CSEXIT TRAP CSETST TRAP C$ERDF .WORD L10036-. .EVEN L10036: 104401 .SBTTL a2 6063 ENDTST TEST S: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. Y (TM [ 0 ~ i TEST TO EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 6069 6070 027114 6071 027120 6072 6073 6074 6075 6076 SEQ 0129 READ COMPATABILITY/READ UTILITY, 6030 6031 026750 6067 Page 26-73 027126 027132 027136 027140 7S:: 105037 112737 003515 000001 004737 004737 103404 017142 007072 104455 003514 BGNTST CLRE RANDOM ;CLEAR RAMDOM MODE FLAG. JSR ggg 3 PC.FIRSTU :(1: SOFINIT 2.NSSRM, STAERM sFIND THE FIRST UNIT. ;INIT DEVICE ;REPORT TSOS NOT READY MOVE 01,EXPBOT :SET EXPECT BOT FLAG. N10O HARDWARE TESTS MACRO V05.03 Fridey 22-May-87 08:12 Page 26-74 TEST S: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. geries i V9VVV ~Nouvnauwn iHAS LOOP COUNTBE SATISFIED? OUNTER +IF THIS IS THE RIGHT LOCATION TO JMP TO, GO SET 'II)S 'I?T‘GQ‘PDATE SEQ POINTER TO NEXT CMD. : cHe BNE ADD MOV DEL AY ~ POINT TO BRF. 1SAVE BRF én.ocutiou). cHP - AaaaansS 5 43333333 33 28, 334348 3 553 . BR _IF NOT. := Rl « 92 BNE ADD BR INC MOV DEC BEQ ADD BR #0LY.C.(R1) a4 %4 ,R1 ial).TIPE2 sDELAY? :BR IF NOT. ;R1 = LOCATION OF N COUNT. :1SAVE N COUNT. 1GO TO SUPER-WAIT 1 MSEC. 81.(9(:)0 %O&Y.(PC)O :52523 - T 7 04 ,R1 34 .. - 012727 000000 R85 mm +IS THIS A JUMP CMD? MOV 062 011137 TO_SEQ TBL. TBL _TO SEQ TBL. s INIT SEQUENCE TABLE POINTER. sWHILE THERE ARE CMDS LEFT IN SEQUENCE TBLE: cHP BNE ADD 027264 6100 027270 6101 027274 6102 027300 OOIIIIIIIDIOXE N g 23 = i35 3 &3 °eh4aa0e3353s 6077 6078 027150 foe 027146 -22(PC) .-20 iILET Rl := R1 - 04 uP EPC&TLY NCNT1 DO CK NEXT 1POINT TO NEXT CMD. 100 SETe e comie mooe HARDWARE TESTS TEST S: MACRO V0S5.03 Friday 22-May-87 08:12- Page 26-75 SEQ 0131 EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 6123 027422 6124 027430 6125 027432 6126 027436 6127 027442 6128 027450 gi?sg 027452 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 027456 027456 027462 027466 027472 027472 027500 027502 027510 027512 027520 6144 6145 6146 6147 6148 6149 027524 027524 027526 027526 027534 027536 2{:% 027522 6150 027544 6151 027546 6152 gigz 027546 6155 027550 6156 6157 027550 2{28 027550 023737 002103 004737 004737 023727 001002 004737 504354 : 177777 000400 . 000002 003420 MOV 005002 504414 : 000411 032765 001204 032737 001001 cMP BEQ BIT BEQ BIT BNE CLR 000001 003502 000001 003420 504404: 504434: 005002 504344 JSR PC,CMDAC JSR PC,EXSUB :STORE CMD ASCII IN ERROR MSG. sISSlE CMD TO ALL,AWAIT INTS,CHECK STATUS. CMOWRD , 9GES ;IF CMD IS GET STATUSTHEN: 504354 JSR PC,PRXST sPRINT EXTENDED STATUS REGISTERS. JSR PC,CKHAE ;CHECK HALT AFTER EACH CMD FLAG. 91,.R2 :SET ALL UNITS AT BOT/EOT. JSR PC,FIRSTU zFIPD FIRST UNIT sWHILE DEVTBL(RS) NE #END DO ;WHILE THERE ARE MORE UNITS: DEVTBL(RS), #END 504374 #M00D . CO, CMDWRD +IF CMD IS REVERSE THEN: 504404 #X0.B0T ,EOTFLG(RS) ;+IF NOT AT BOT THEN: 504414 R2 ;CLEAR EOT/BOT FLAG. BR 504424 BIT BEQ #X0.EOT ,EOTFLG(RS) 504434 #CMD . CO, CMDWRD BIT BNE CLR ;ELSE IF CMD IS NOT REVERSE: 504444 R2 +IF_NOT AT EOT OR NOT A MOTION CMD THEN: iLET R2 := 00 ;CLEAR EOT/BOT FLAG. 5044454 : 004737 004737 504424 : 017210 504374 : 000001 003412 003414 003524 003426 003414 000002 027674 JSR PC,NEXTU sFIND NEXT UNIT ; BR 504364 cMP BNE MOV INC INCB cMP BNE R2,01 504454 NCNT ,NCNT1 NCNT1 ALLEOT CMOLG, #2 50446 BR 504474 CLRB ALLEOT sWHEN NOT ALL JEOT, CLEAR FLAG INC MOV NCNT CMDWRD,PCMDWD 1UPDATE RECORD COUNT. ;SAVE PREVIOUS COMMAND WORD. JSR PC,TSWEOT +IF ALL UNIT ARE AT EOT/BOT THEN: :FORCE TERMINATION OF COMMAND. sFLAG ALL UNITS AT EOT/BOT TO ALLOW VERIFY OF D sWHEN WRITING IS CURRENT COMMAND ;GO WRITE/READ REV ONE RECORD BEYOND EOT 504464 : 6173 027616 000402 gi'_;z 027620 105037 003524 005237 013737 003412 003420 6178 027624 6179 027630 504364 : 003502 2{;% 027616 6177 027624 cMP NCNT ,NCNT1 BNE 017452 002604 020227 001016 013737 005237 105237 023727 001002 6174 027620 cHe BGE 100017 026527 001426 032737 001406 032765 001001 6162 6163 6164 6165 6166 6167 6168 2%93 027612 003420 017540 000701 017142 000746 027556 027562 027564 027572 027576 027602 027610 011124 010564 003414 004737 012702 004737 6160 027554 6161 027556 003412 504454: 504474 : 003424 Cll HARDWARE TESTS TEST S: 6180 MACRO VOS5.03 Friday 22-May-87 08:12 Page 26-76 SEQ 0132 EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 027636 027640 027640 027644 027646 000671 004737 iy 016126 000601 504324: ; ; : ; : : 027660 027664 027666 027670 027672 012203 005303 00630 016321 003752 012221 012221 012221 000207 H ; : ; 004737 004737 012700 013737 012737 012737 013737 042737 013737 010564 017540 003420 104401 000004 003424 003420 003426 003420 002330 002330 002330 003422 013737 003410 002332 004737 004737 004737 005300 001343 000207 011124 01 017540 PC,VFYDAT BR 50431$ EXIT TST THEN GO :VERIFY THE LAST N RECORDS OF DATA. TRAP .WORD INPUTS : OUTPUTS;: REGISTERS : C$EXIT L10037-. CALLS: R2 = POINTER TO SOFT "P* TABLE R3. (nz). R3 ;R3 = COMMAND TABLE INDEX. 3 CMDTBL(R3),(R1)+ (R2)+,(R1)+ (R2)+.(R1)+ (R2)+.(R1) ;MOVE COMMAND WORD. :MOVE @ OF BYTES. :MOVE & OF OPERATIONS sMOVE PATTERN CODE. gwwmsfmc TO WRITE THEN READ REVERSE ONE RECORD BEYOND EOT H OUTPUTS: REGISTERS: CALLS: CMDAC , EXSUB , CKHAE TSWEOT:: NOP NOP 14: ;IF LAST CMC WAS A WRITE VERIFY, SUBROUTINE TO MOVE A COMMAND FROM THE SOFTWARE P TABLE TO THE COMMAND SEQUENCE TABLE. PTCMDS : : MOV DEC ASL MOV MOV MOV MOV RTS PC ; 000240 000240 504334 JSR 104432 000140 027652 027654 027656 BR JSR PC,EXSUB JSR PC,CKHAE ;WRITE ONE RECORD BEYOND EOT 150 THAT READ SHORTER STOP DISTANCE MOV MOV MOV MOV MOV BIC MOV 1SET UP COUNTER FOR EOT ;LET PCMOWD : sREPOSITION TAPE ILET CMOWRD := SRDR BEFORE EXTRA RECORD BY READING REVERSE MOV #2,R0 CMOWRD,PCMDWD SRDR , CHDWRD 04, CHOLG CMOWRD , CMDPKT 98RF . C , CMDPK CMDPKT , CMDSAV ;SHALL POSITION HEAD IN CLEAN IRG GAP JLET CMOPKT := CMDWRD CLR.BY 9BRF.C LET CMDSAV := CMOPKT DATARD . CMDPKT+CP. A&. JSR PC,CMDAC JSR PC.EXSUB JSR PC,CKHAE DEC RO BNE 14 RTS PC ;THAT RECORD TO ALLOW INEXT COMMAND IN THE :TABLE TO BE EXECUTED ;FOUND EOT YET? :NO,KEEP GOING 1 YES,RETURN D11 HARDWARE TESTS Friday 22-May-87 08:12 Page 26-77 6235 030010 030010 55 SRRSGRERRRRRRALEESEE 030010 L10037: 104401 6237 030012 ENDTST TRAP .TITLE PARAMETER CODING 624 .SBTTL 6243 030012 030014 030014 THE HARDWARE 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. 030024 030026 001032 030067 030032 030034 000060 000776 6258 030036 002022 030076 030044 000000 030046 6259 030050 6260 " 6261 6262 030052 6263 030067 6264 030076 6265 6267 6268 030120 .WORD L10040-L $HARD/2 L$HARD: : GPRMA TSSADR,0,0,160010,177564,YES GPRMD TS5vCT1,2.0,777,60,776,YES 000777 030036 030040 030042 BGNHRD 000042 000031 030052 160010 177564 030030 THE MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS WITH THE OPERATOR. 030014 030016 030020 030022 6257 030024 HARDWARE PARAMETER CODING SECTION BGNMOD 030012 030012 CSETST ENDMOD 6239 6266 SEQ 0133 EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. T$CODE TSSADR T4LOLIM THHILIM .WORD .WORD T$CODE TSSVCTY .WORD .WORD TSLOLIM THHILIM .WORD GPRMD TSSUNT,.4,0,1,0,1,.NO 000001 .WORD .WORD .WORD . WORD 000001 124 126 123 .WORD .WORD .WORD .WORD .WORD EXIT HRD 123 105 105 104 103 114 TSSADR: TSSVCT: TSSUNT: .NLIST .ASCIZ .ASCIZ .ASCIZ .LIST .EVEN .WORD BEX /7TSDB ADDRESS/ /VECTOR/ /SELECT DRIVE 0-1/ BEX ENDHRD SOF TWARE PARAMETER CODING SECTION : TEST S5: MACRO V05.03 777 T$CODE TSSUNT % $LOLIM TS$HILIM T$CODE E11 PARAMETER CODING MACRO VO5.03 Fridey 22-May-87 08:12 Page 26-78 SEQ 0134 SOF TWARE PARAMETER CODING SECTION THE SOF TWARE 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 THE INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. T L$SOFT:: 000130 030726 000001 000130 030745 6285 001130 031050 000400 001130 030774 000001 005130 031171 6291 000001 004130 031145 000001 6293 127044 006032 031222 000377 NEXTSP: RCVERM, 2,400, YES HAEM,2,1,YES IRECM,6,400,YES ii 1113 003130 031101 000001 RRVM,0,400,YES NEXTSP BADTM.4,1.YES ER 30 031020 000001 CLRM,0,1,YES % 003130 031124 .WORD L10041-L$SOFT/2 DINTM,6,1.YES IREM,12,1,YES CHGM, 10,1, YES ENDSP1 CHARM,14,0,377,0,777,YES 555 § 5% 55 538 585 § 559 55 539 584 6 fo i 251 i} MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS WITH THE OPERATOR. T$CODE CLRM T$CODE RRVM T$CODE T4$CODE HAEM T$CODE IRECM T4$CODE T4CODE BADTM T$CODE DINTM T4CODE REM T$CODE CHGM T4CODE T$CODE 377 F11 PARAMETER CODING MACRO V05.03 Fridey 22-May-87 08:12 Page 26-79 SEQ 0135 6294 000000 000777 007052 031247 000037 GPRMD CMD2M,16.0,37,1,33,YES 80008 00003 010052 031255 177777 000001 004000 7 0319 374597 6297 000001 077777 012052 031307 000017 000000 000010 013052 031416 000037 000001 000033 014052 031255 GPRMD GPRMD GPRMD PATTM,24,0,17,0,10,YES CMD3M,26.0,37,1,33,YES BPCRM,30,D,-1,1,DATCNT,YES 177777 6300 000001 004000 015052 031267 177777 6301 6302 6303 0PI 07777 GPRMD 016052 031307 000017 000000 000010 017052 031424 000037 00000 00003 GPRMD GPRMD PATTM,34,D0,17,0,10,YES CMD4M,36.D,37,1,33,YES BPCRM,40,D,-1,1,DATCNT,YES 5858 58858 58558 53558 39555 H9%HS HASHD HEGHH ENGES SOF TWARE PARAMETER CODING SECTION TSLOLIM TSHILIM T$CODE v TSLOLIM THHILIM T$CODE PATTM 17 TSLOLIM THHILIM T$CODE CMO3M 37 TSLOLIM THHILIM T4$CODE TSLOLIM THHILIM T$CODE NUMBM -1 TSLOLIM THHILIM T$CODE PATTH 17 TSLOLIM TSHILIM T4$CODE 7 TSLOLIM TSHILIM G1l1 PARAMETER CODING MACRO V05.03 Fridey 22-May-87 08:12 Page 26-80 SEQ 0136 03125 177777 6304 6305 6306 000001 004000 021052 031267 177777 000001 077777 PATTM,44,0,17,0,10,YES 022052 031307 000017 000000 000010 CMD5M,46.0,37,1,33,YES 023052 031432 000037 000001 6307 6308 6309 6310 000033 BPCRM,50,D,-1,1,DATCNT, YES 024052 031255 177777 000001 004000 NUMBM,52,0,-1,1,77777,YES 025052 031267 177777 o799 07777 PATTM,54,0,17,0,10,YES 026052 031307 000017 000000 000010 6311 ENDSP1: 6312 ENDSP2: 6313 XFER ENDSP2 XFER ENDSP3 CMD6M,56,0,37,1,33,YES 5888 55358 § § 5585 53%%5 HO%HS HOES HaSES HO%HS nEE SOF TWARE PARAMETER CODING SECTION T$CODE 1 TSLOLIM TSHILIM T4$CODE 1 TSLOLIM TSHILIM T$CODE PATTM 17 TSLOLIM TSHILIM T$CODE CMOSM 37 TSLOLIM THHILIM T$CODE BPCRM -1 TSLOLIM TSHILIM T4$CODE NUMBM -1 TSLOLIM T$HILIM T$CODE PATTM 17 TSLOLIM TSHILIM T4CODE T4CODE T$CODE CMD6M 37 TSLOLIM THHILIM T$CODE BPCRM -1 TSLOLIM THHILIM H11 PARAMETER CODING MACRO VOS.03 Fridey 22-May-87 08:12 Page 26-81 SEQ 0137 6314 030516 030516 6315 0 GPRMD 000001 077777 32052 GPRMD NUMBM,62,D,-1,1,77777,YES PATTM,64,0,17,0,10,YES 031307 17 6316 0 GPRMD CMD7M,66.D,37,1,33,YES 6317 6318 6319 000001 077777 036052 031307 000017 GPRMD PATTM,74,0,17,0,10,YES 000000 6320 000010 037052 031454 000037 GPRMD CMD8M,76.D0,37,1,33,YES 000001 6321 000033 031255 177777 6322 000001 004000 041052 031267 177777 000001 6323 077777 042052 031307 GPRMD PATTM,104,0,17,0,10,YES 55 5538 58858 58858 38558 3a%E8 HO%HS BOGES ESES Ene SOF TWARE PARAMETER CODING SECTION T$CODE NUMBM -3 TSLOLIM T$HILIM T$CODE PATTM 17 TSLOLIM TS$HILIM TSLOLIM THHILIM T4$CODE . TSLOLIM THHILIM T$CODE TSLOLIM TSHILIM T$CODE PATTM 17 TSLOLIM THHILIM T$CODE cMosM 37 TSLOLIM THHILIM T$CODE 1 TSLOLIM THHILIM T4CODE 1 TSLOLIM THHILIM T$CODE PATTM 111 PARAMETER CODING MACRO V05.03 Friday 22-Mey-87 08:12 Page 26-82 SEQ 0138 6324 6325 6326 6327 6328 6329 000017 000000 000010 022004 043130 031317 000001 XFER ENDSP3: 016024 046130 031407 000001 ENDSP GPRML FAST,114,1,YES XFERT 006024 001004 XFERT ENDSP4 WTBF,112,1,YES 045130 031367 000001 044130 031350 000001 ENDSP TSMD,106,1,YES XFERT 011024 3 5§ 555 5 853 § 959 § B8 § A SOF TWARE PARAMETER CODING SECTION ENDSP RDBF ,110,1,YES : XFER ENDSP : XFER ENDSP BEX /CLEAR COUNTERS/ /RESET RANDOM VARIABLES/ /HALT AFTER EACH CMD/ /BAD TAPE SPOT DETECTION/ /PRINT RECOVERABLE ERRORS/ /DISABLE INTERRUPTS/ ;I'HIBIT RECOVERY/ CHANGE CMD SEQUENCE ¥ /INHIBIT RFC ERROR REPORT/ /CHARACTERISTICS CODE/ “CMD/2" /W COUNT/ ® OF OPERATIONS/ /PATTERN/ /DEFAWLT SUITCH SETTINGS 2/ /READ BUFFERING /WRITE "FERI’G/ /100ips/ BEX E $LOLIM TSHILIM T$CODE T4CO0E TSMD 1 T$CODE T$CODE FAST 1 T$CODE T$CODE WTBF 1 T4CODE T$CODE RDBF 1 T$CODE T$CODE J11 PARAMETER CODING MACRO V0S.03 Fridey 22-Mey-87 08:12 Page 26-83 Jp— SOF TWARE PARAMETER CODING SECTION 6358 .EVEN 6359 2&‘1’ 031416 103 11 104 G3¢s 031488 6365 031446 103 103 113 ng 198 Coon: caccs go 104 Wn: .Ag&f -83,9. 6362 031424 6366 031454 6367 6368 103 103 ug 115 M 104 %‘fl: : 104 CMD8M: 6369 .:u.;n e /3" A 1% “CMD/4" o "~ .ASCIZ LIST .EVEN / " “CMD/8" BEX 6370 6371 6372 A2 2 i A d A i 6374 ; 2;;9 : DESCRIBED IN "SUPPRG.MEM" (FOR REV C). 6373 e JESRRRFERRRR SRR RN E RPN RPN SRR PSSR E P RN SRR PR NP SRS 6375 6378 6379 031462 6380 6382 6384 6385 032000 032000 032002 032004 PATCH AREA PATCH:: 032000 .BLKW .=, 1377.1 000000 000000 LSLAST:: .SBTTL 6391 ;:DIAG IS PRE-PARAMETERIZED PER TBL .EVEN LMORD LMORD O O .MORD .WORD © L10044-./2-1 HARD CODED P-TBL 3=~ 032004 032006 000000 000003 032010 032012 032014 032016 172522 000224 000000 032016 uog 032016 6402 T ) 64, LASTAD 6389 032010 e e R AND AN ADJUSTMENT TO ACCOUNT FOR THE “LASTAD BIT7* HACK 6388 6396 6397 6398 6399 e ES SRS E SRR IS EESSORSSS B 6386 032004 6387 6392 6393 6394 032004 6395 032004 e BGNSETUP 1 BGNPTAB L10042:; L10044; 000001 .END 172522 224 0 ENDPTAB ENDSETUP K11 PARAMETER CODING MACRO V05.03 Fridey 22-May-87 08:12 Page 26-84 T8 0360 Symbol table ALLEOT 003524 G BTHSG% 01528 ERLFSP 005744 G DATAWT 003406 G AUDRPM AUDRUN AUTODM 005114 G 005146 G 023644 BTRPT BT0 BT1 020224 G 00 G 003120 G C$AU = 000052 C$AUTO= 000061 C$BRK = 000022 DEVTBL 002604 G DFPTBL 002174 G DFTSCH= 000040 G BFSEQ BFSEQO0 025110 G 025134 CHARM CHGFLG 031222 002214 G ASSEMB= 000010 ATTNM 004603 G BADTM BADTSW BENBSW BTMSG3 BTPY 015307 003512 G 031020 002210 G 002326 G BT12 BT3 CHAR 025206 025220 CHGM CHKERR SE 025364 CH.ERI= 000020 G SE BFSEQ7 025500 025552 8 003460 016112 BFSEQ1 SEQ2 BFSEQ3 025312 BFSEQS 025426 BFSEQ8 BFSEQ9 BFSE10 BITO = 000001 G CLRFLG = = = = = = 000020 000040 000100 000200 000400 001000 G G G G G G 8IT11 BIT12 BIT13 BIT14 BIT1S BIT2 = = = = = = BIT7 = 000200 G BIT9 BOE BORERS BPCRM BRCPK C$CLOS= 00003S CsCLP1= C$CVEC= 000036 CKDFF CKHAE CKHRTN BIT1 = 000002 G B8IT10 = 002000 G BIT8 031145 013250 G CH.EAI= 000040 G 025604 025636 025660 BITO3 = 000010 G BITS BIT4 BITS 8176 C$BSEG= 000004 C$BSUB= 000002 C$CEFG= 000045 CKDATA BIT01 = 000002 G BIT02 = 000004 G BIT04 BITOS BIT06 BIT07 BIT08 BIT09 003172 G 003244 G 002220 G CH.ESS= 000200 G BIT00 = 000001 G = = = = 004000 010000 020000 040000 100000 000004 G G G G & G 000010 G 000020 G 000040 G 000100 G = 000400 G = 001000 G = 000400 G 015356 G 031255 002344 G BRFCNT 003416 G BRF .C = 004000 G CTCC 003450 G CvC.C = 040000 G 016526 G 017136 017140 017540 G 017626 DATCNT= 004000 G DATERM 005752 G DIA = 100006 G DIABLK= 003406 G DIACNT= 000020 G C$CLCK= 000062 CSCLEA= 000012 DIAGMC= DINT 002212 G C$DCLN= 000044 DRI DINTM 031101 DLY = G DLY.C = 000020 G C$DODU= 000051 DROPDM C$EDIT= 000003 CS$ERDF= 00005S CS$ERHR= 000056 DROPU CSDRPT= CsDVU = 0000S3 CLRM 030726 C$ESCA= 000010 DTAER4 005337 G CMDASC C4ESEG= 000005 C$ESUB= 000003 DTAERS 005360 G EF .CON= 000036 G CMDLG CMOPKM CMOPKT CMDSAV CMDSEQ CMDSE2 003426 004346 002330 003422 003540 003550 C$EXIT= C$GETB= CS4GETW= C$GMAN= C4GPHR= C4GPLO= EF .NEW= EF. = EF .RB0= EF .RES= EF .RWB= EF .STA= CMDTBL 002222 G G G G G G G 003752 G 003420 G C$ETST= 000001 000032 000026 000027 000043 000042 000030 C$GPRI= 000040 C4INIT= 000011 EF .HSS= 000040 G EINC END CMD3M CMDAM CMDSM CMD6M 031416 031424 031432 031440 C$PNTF= C$PNTS= C4PNTX= C4QI0 = 000017 000016 000015 000377 = ENDERF= ENDFLG= ENDSP ENDSP1 ENDSP2 ENDSP3 ENDSP4 ENDSPS EOTFLG ERCVER CMDSM 031454 CSREFG= 000047 ERRREC CNTEND= 003376 C$REVI= 000003 CMD.CO= CMD.C1= CMD.C2= CMD.C3= CMD.Ca= CMD2M CMD7M CNTBGN= 000001 000002 000004 000010 000020 031247 G G G G G 031446 CNTLEN= 000550 G CODELM 004162 G CP.ADH= 000004 G CP.ADL= 000002 G CP.CMD= 000000 G CS$INLP= C$MANI= C$MEM = C$MSG = CS$OPEN= C$PNTB= 000020 000050 000031 000023 000034 000014 Cs 000007 CS4RESE= 000033 CSRFLA= oooo2%00002 ERLOG ERS ERSFLG CSRPT = EXALL $SPRI= 000041 C4SVEC= 000037 EXCRTN EXCUTE EOSEFG- 000046 EXARTN 00003S 000034 000020 000037 000030 000040 G G G G G G FUNRM 004622 G F$AU = 000015 F$AUTO= 000020 F$B8GN = 000040 F$CLEA= 000007 F$DU = 000016 FS$END = 000041 F$INIT= 000006 F$JMP = 000050 F$MOD = 000000 F$PUR = 000017 FS$RPT = 000012 F$SEG = 000003 F$SOFT= 00000S F$SRV = 000010 030724 030722 003502 G 002207 G F$SUB = F$SW = FS4TEST= GCMDA GENPAT GES = GETSTM GIT GOWAIT GSCPK GSCNTO= GS$DELM= G4$DISP= G4EXCP= GS$HILI= GSLOLI= G$NO = GS$OFFS= 003471 G G$PRMA= 000001 003525 G G4PRML= 000000 016120 177777 G 003472 003526 030726 030470 030472 030664 003466 G = 100411 G = FMT.CO= G FMT.Cl= 000100 G FTL 003366 G F$MSG = 000011 F$PROT= 000021 011124 G 004040 G CMDD G 017142 G 005752 G 005226 G 00527S G DTAERM TAER2 031407 F $HARD= 000004 F$HW = 000013 DTAERS C$ERRO= 000060 CS$ERSF= 000054 FAST FATSM FIRSTU 003522 G 017450 DRORTN = 101012 G 012724 C$ERSO= 000057 S G 017240 G 017364 017442 CLN CL 002204 G = 100013 G EXTFEA 002322 G ESEND = 002100 ES$LOAD= 000035 G 010266 G 010562 012422 012114 G 000014 000001 011176 011616 100017 005507 012110 012424 002340 000200 000372 000003 000400 000002 000001 G$OFSI= 000376 G$PRMD= 000002 G$RADA= 000140 G$RADB= 000000 G$RADD= 000040 GS$RADL= 000120 G$RADO= 000020 G G G G G G L11 PARAMETER CODING MACRO VOS5.03 Fridey 22-May-87 08:12 Page 26-85S SEQ 0141 002110 G 002036 G LAV 024112 6 LSAUTO 023354 G L$AUT 002070 G 2 OO0 QOOOOOOOOOOMOOOOOOOO : NOINTM NRDYM 023740 OO 88 £8 RRNREDN SRR 3 ) aR O i o6 1717} QOOOOOOMOOOOOOOOOMOEO - [ X _1,V] o g 8 007070 017 OOOOOOOOO L$APT 015626 G = 000010 G §§°8§§a§§§§§a 881888 il §25§§§ LSACP = 040000 G 2 o0 LOG LO7 SO0 LN LOE 003442 G 000040 G 000040 G 000167 003430 G E§§§ J00P JMP = J¥.C = JIJMP = LENMSK 003444 G §88 J0C 000041 (=] 000041 000041 000041 000041 = = = = g J55Ee SHHP I$SFT I$SRY IJ4SUB I$TST IS$SET §REES 253X 000041 000040 000041 000041 000041 000041 026536 ~ $M0OD = 000041 I$MSG = IsPROT= I$PTAB= I$PUR = ISRPT = I$SEG = 025076 [ IsAU = 000041 ISAUTO= 000041 ISCLN = 000041 IsDU = 000041 I$HRD = 000041 {OINIY- 000041 024654 024712 -0088 ~— ~ ~ 031171 = 000100 G = 004000 024514 024534 024554 024574 024614 34 gggkgxgx gga@Ry oRTe IXE 031124 024474 AAFAR IRECM IREM ISR G G 024110 024214 025702 024430 024454 ZRA 003521 002213 007764 G OO ONOOOOOOOOOOOOMOOOOOOOOOONOOOOOOOOG 1) IRE IREC INVRY 2 000200 G 021364 021662 021702 003472 G 000340 G 2 = 020000 G IE. = INIT10 INIT1S INIT16 INTFLG INTPRI= 023352 3642 L1001 ii i 002320 G = 010000 G = 000040 G g 003356 G ] IER = 100000 G < IBE oV = 000000 Q < HSSW 004306 G - HELP HOE Lsccp LSCLEA L$CO L ] HALTM 000004 000010 002206 G 030774 S GS$XFER= GS4YES = HAE HAEM &8 % Symbol tsble M11 PARAMETER CODING MACRO V05.03 Fridey 22-May-87 08:12 Page 26-86 SEQ 0142 Symbol table SETDEF 010026 G SETRW SETUP F = R = SFPTBL SOFINI TRAPD4 010246 011232 TRAP4 TSAM 105010 TSBA 204 105410 G STAER4 STAERS STAERG STAER7 STAFLG 75 .C = 002514 G = 000000 = 010000 G 11.; T1. T71.4 71.5 024432 T 003532 G .Y 556 1S.A16= 1S.A17= TS.NBA= TS.NXM= 7S.0FL= 000400 G 001000 G 002000 G 004000 G 000100 G 002534 G 75.SC = 7S.SPE= 1S.5SR= 7S.UPE= TSIMD 100000 020000 000200 040000 002312 TSSCL TSSINT 002564 G 002554 G 030052 TSSINS 010116 G TCCa 013656 G TS 030076 014272 G 014370 G 014532 G TIME2 003440 G TC2RTN TIME1 TOOMM . ABS. TSSIN2 TSSSW Errors detected: 010074 G 010102 G 010110 G 002574 G T4FLAG= 000041 T$FREE= 032016 004727 G 032016 © T4ERRN= 000002 TS$EXCP= 000000 004453 G 000000 « TSSVCT 030067 $ARGC= 000003 T$CODE= 001004 013636 003436 G T$GMAN= 000 001 O (RuW, o . (RW,I,LCL,REL,CON ses Assembler stetistics Work file reads: 303 Work file writes: 295 Size of work file: 28938 \Words Size oof core pool: 19684 Uords E 114 Pages) 75 P s) Opersting system: RSX-11M/PLUS (l.hdor.n)(/\ms) CVTBED CVi Seb/ JShoSVE L JCVTSED 000000 00000S 000002 000000 T$PTAB= 010043 G G G G G 013530 G TCCS TCCé6 TCC7 TENEST= 177777 003454 G TCC2 G WRUNR T$NSO = T4NS1 = T$NS2 = T$PCNT= TSSINO TSSIN1 01 024636 024656 71.10 002514 G 031317 003534 G 002524 G 013454 013474 G TCC3 WRTYCT 003523 G 024226 TSDB TSMD TSNP TSSR TSSADR 013512 G 024216 G T15u8 71.1 T1.11 TS.RMR= 010000 G 000001 000000 000000 000000 003520 G 004231 G SILSYM= 010000 TCC1 T4LSYM= 010000 T1 T$LTNO= 00000S TSVCY 006733 006753 006562 006530 003526 G SVCINS= SUB= SVCTAG= SVCTST= SWBFLG TSLAST= 000001 T$LOLI= 000000 1SC.FC= 177717 G TSSREG 006616 STAER TSHILI= 000010 023770 G 00470S G 1SC.7C= 177761 G 007072 G = 104010 G = 104410 G STAERM 006120 G STAER] 36 T 003530 G T$PTHV= 000001 T$PTNU= 00009’% T1.12 T71.6 T71.8 T$SAVL= 1777 T$SEGL= 177777 T4SIZE= T$SUBN= T$TAGL= 177777 7T1.9 T2 13 T4 T TS$TEMP= T4TEST= T$TSTM= 177777 T4TSTS= 1 T$$AU = 010016 T$$CLE= 010014 T4$$DAT= T$TAGN= 01004S T$$AUT= 010013 T$$SOF= 010041 T$4SRV= 010007 T$4SUB= 010033 T$4SW = 01000 T$$TES= 01003 024476 024516 024536 WTMFLG WTR 024576 003456 G = 101011 = 1041 G 000200 G 005653 100412 G 003470 G 005041 G X$FALS= X$0FFS= X$TRUE= X0.80T= X0.EQOT= 000040 000400 000020 000002 G 000001 G VFISU VFYCNT 16440 G 003 G X0.0ONL= 000100 G X0.RLL= 010000 G TSWEOT VFEXC 16 025704 G "14') 012740 G 031367 002316 G 100011 G UAM = UNIWLK UNL = UNREC URERM T4$PC = T$$PRO= 010011 T$$PTA= 010043 T$$RPT= 010010 WSSR WTBF WTBUF WTM = G 002506 G 015144 015146 sesses GX T$$INI= 010012 1 002776 G =} 026540 G 734 027114 G VFYDAT VFYFLG T$$MSG= 010003 003464 G 003463 G WTVERM WTYBRF WTYCMD WTYWRD XST2 = T$$DVU = 010015 T4$$HAR= TésHUW = 010000 WSM 024742 003316 G WRTYER WRTYFG 027674 G 016212 G 015150 G X$ALWA= 000000 X0.LET= 020000 G 016126 G 003516 G X0.RLS= 040000 G X0.TMX= 100000 G WAITF 007 X2.8BFE= 000100 G WLKZRO 011774 VFY.C = 000100 G WLKCHK G 007416 G WRBC 002626 G WRECL = 000020 G WRR = 105005 G WRREC 002766 G WRT = G WRTCHK WRTCHR WRTY 007270 G 007476 G 014676 G X0.WLK= 000004 G X2.EFE= 000200 G X2.EXT= sssess GX X2.0PM= 100000 G X3.0CK= 000010 G X3.RNY= 157400 G X4 HSS= 100000 G X4 .RCE= 040000 G ZROPAT 011744 $LSTIN= 000001 $LSTTA= 000001
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies