Digital PDFs
Documents
Guest
Register
Log In
AH-T179A-MC
September 1982
145 pages
Original
69MB
view
download
OCR Version
87MB
view
download
Document:
CVTSEA0 TSV05 TSV05 DATA REL SEP 1982 bw
Order Number:
AH-T179A-MC
Revision:
000
Pages:
145
Original Filename:
CVTSEA0__TSV05__TSV05_DATA_REL__AH-T179A-MC__SEP_1982_gray.pdf
OCR Text
TSV0 - - CVTSEAQ TSVOS DATA RELIABILITY 2 MACRO M1113 B 1 25-MAY-82 09:51 PAGE 2 .REM_ g 9 - SEQ 0001 IDENTIFICATION 10 PRODUCT CODE: AC=T178A=MC 12 }z PRODUCT NAME: CVTSEAO TSVOS DATA RELIABILITY 15 16 PRODUCT DATE: (08-MAR-82 18 }3 MAINTAINER: SCOTT SNOWDON 21 %% AUTHOR : DICK GORDON 24 25 26 5 29 30 3 gg 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. 34 35 NO RESPONSIBILITY IS ASSUMED FOR SOF TWARE ON EQUIPMENT THAT IS NOT THE USE SUPPLIED OR BY RELIABILITY OF DIGITAL OR ITS gg AFFILIATED COMPANIES. %g COPYRIGHT (C) 1982,1982 BY DIGITAL EQUIPMENT CORPORATION 2? | THE FOLLOWING ARE TRADEMARKS OF DIGITAL EQUIPMENT CORPORATION: 42 22 DIGITAL DEC 45 PDP DECUS UNIBUS DECTAPE MASSBUS MACRO M1113 25-MAY-82 09:51 48 49 c PAGE 3 g CVTSEAQO TSVOS DATA RELIABILITY .1 SEQ 0002 USER DOCUMENTATION TABLE OF CONTENTS 50 51 GLOSSARY 1.0 GENERAL INFORMATION 1.1 PROGRAM ABSTRACT 1.1.1 1.1.2 1.1.3 1.1.4 1.2 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/OPERAT IONAL SELECTIVE WRITE-ERROR-RECOVERY 1.1.4.3.2 OPERATIONAL WRITE-ERROR-RECOVERY 1.1.4.4 DIAGNOSTIC TIMING ADJUSTMENT SYSTEM REQUIREMENTS 1.2.1 1.2.2 2.0 FUNCTIONAL DESCRIPTION STRUCTURE OF PROGRAM HARDWARE REQUIREMENTS SOFTWARE REQUIREMENTS 1.3 RELATED DOCUMENTS AND STANDARDS 1.4 DIAGNOSTIC HIERARCHY PREREQUISITES 1.5 ASSUMPTIONS OPERATING INSTRUCTIONS 2.1 HARDWARE PARAMETERS 2.2 SOF TWARE PARAMETERS 2.2.1 2.2.2 2.3 2.4 TSO5 COMMAND LIST DATA PATTERNS EXAMPLES OF SOF TWARE PARAMETER DIALOGUE 2.3.1 BASIC FUNCTION AND DATA RELIABILITY 2.3.2 2.3.3 SCOPE LOOP SET UP IN BASIC FUNCTIONS SCOPE LOOP SET UP IN DATA RELIABILITY WITH ALL ERROR REPORTING ENABLED EXECUTION TIMES — CVTSEAO TSVO5S DATA RELIABILITY 105 106 107 108 109 110 }}5 MACRO M\i13 25-MAY-82 09:51 D .1 PAGE 3-1 2 4.1 2.4.2 3.0 SEQ 0003 SYSTEM CONFIGURATION TEST EXECUTION TIMES ERROR INFORMATION 3.1 ERROR REPORTING 113 3.1.1 ERROR #1 - COMMAND PACKET ADDRESS IS NOT ON A 115 3.1.2 ERROR #2 - TSOS NOT READY 114 116 117 }}g 3.1.3 3.1.4 3.1.5 120 121 122 123 124 125 126 }gg 135 136 137 138 139 140 12} ERROR #3 ~ NO RESPONSE ERRORS ERROR #4& - 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 129 130 131 132 }gz 3.1.6 3.1.7 3.1.8 3.1. 3.1.10 3.2 UNDEFINED SPECIAL CONDITION ATTENTION CONDITION TAPE STATUS ALERT FUNCTION REJECT RECOVERABLE ERROR RECOVERABLE ERROR UNRECOVERABLE ERROR FATAL SUBSYSTEM ERROR ERROR HALTS 5.0 TEST SUMMARIES 5.1 TEST i = BASIC FUNCTIONS 5.3 5.4 3.9 TEST 3 = WRITE COMPATABILITY/WRITE UTILITY TEST & = READ COMPATABILITY/READ UTILITY TEST 5 = RANDOM/OPERATOR SELE.TED COMMAND SEQUENCE 5.2 145 146 }2; TCCO, TCC1, TCC2, TCC3, TCC4, TCCS5, TCC6, TCC7, ERROR #16 = CAPSTAN RUNAWAY ERROR #17 = DATA COMPARE ERRORS PERFORMANCE REPORT 144 ERROR #5 = ERROR #6 ERROR #7 ERROR #8 ERROR #9 ERROR #10ERROR #11ERROR #12- ERROR #13 - RFC NON-ZERO ERROR ERROR #14 - RETRY LIMIT EXCEEDED ERROR #15 = TOO MANY INTERRUPTS 4.0 143 MODULO & BOUNDRY TEST 2 = DATA RELIABILITY —=OVRNO NS WN=O b e d D e e e d —h e OO T VAW 149 6.0 DEVICE INFORMATION 6.1 of 6.3 GENERAL Q-BUS INTERFACE SPECIFICATIONS BIT DEFINITIONS FOR TSVO5/TSOS REGISTERS 6.3.1 TSV05/7TS05 REGISTER SUMMARY 2 _ TSVOS STATUS REGISTER (TSSR) 2.1 TSVOS EXTENDED DATA BUFFER REGISTER (TSDBX) 3 EXTENDED STATUS REGISTER 0 (XSTATO) & 5 EXTENDED STATUS REGISTER 1 (XSTAT1) EXTENDED STATUS REGISTER 2 (XSTAT2) ) d d D e e d EE A S CVTSEAQ TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 E 1 PAGE 3-2 6.3.6 6.3.7 7.0 DIAGNOSTIC WISTORY SEQ 0004 EXTENDED STATUS REGISTER 3 (XSTAT3) EXTENDED STATUS REGISTER & (XSTAT4) CVTSEAOQ TSVO5S DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 F 1 PAGE 4 NN —_ VOO O 0 _A—b-n-n..n—n_._.-n-b-n_a;—n_n_._n_a_.-l_n_a_n-n—a_... O O 00 00 0o 00000000 N NNNNNNN N~ S NN = SEQ 0005 198 1.0 GENERAL INFORMATION 1.1 PROGRAM ABSTRACT 1.1.1 FUNCTIONAL DESCRIPTION THIS PROGRAM CAN BE USED AS A BASIC FUNCTION TEST, A DATA RELIABILITY TEST, OR A COMPATABILITY TEST. 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. 1.1.3 MEMORY MAP 0! ] i : ! VECTOR AREA ] ] i STACK 2000 ! i b b NNN b o e VOO NONN S W) = ] ! ] DIAGNOSTIC ! DIAGNOSTIC SUPERVISOR i i ! ! 41000 ! i i I ! 72000 g- i ; 77777 - : i i — : i : RN | 400 ! i 220 i 4 i XXDP+ g i : - FREE MEMORY SPACE FOR WR/RD BFRS OR OTHER PUROSES NN NN NN SN WWWWWWWWNINND OV CVTSEAO TSVO5S DATA RELIABILITY MACRO M1113 6 1 PAGE 4~1 25-MAY-82 09:51 SEQ 0006 IS ALLOCATED BY THE SUPERVISOR ON REQUEST OR CHOOSEN gspg:e?gszflER TO RESIDE BETWEEN THE DIAG AND THE 1.7.4 DIAGNOSTIC INFORMATION 1.1.4.1 SCOPE THIS DIAGNOSTIC CAN TEST ONE CONTROLLER AND UP TO Z DRIVES. ARE ASSIGNED LOGICAL DRIVE NUMBERS 0 - 1 BY THE DIAGNOSTIC. THE 2 DRIVES THERE ARE 5 TESTS IN THIS PROGRAM: TEST 1 = BASIC FUNCTIONS. TEST 2 = DATA RELIABILITY, TEST 3 = WRITE COMPATABILITY/WRITE UTILITY, TEST & = READ COMPATABILITY/READ UTILITY. TEST 5 - RANDOM/OPERATOR SELECTED SEQUENCE UTILITY. 1.1.4.2 ERROR RECOVERY ) ERROR RECOVERY IS PERFORMED ON READ, WRITE AND WRITE TAPE MARK FUNCTIONS 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 PROCEDURES, REFER TO SECTION 3.0 (ERROR REPORTING) OF THIS LISTING. 1.1.4.3 WRITE ERROR RECOVERY THERE ARE 2 , SELECTABLE WRITE-ERROR-RECOVERY ALGORITHMS USED BY THIS DIAGNOSTIC: 1. 2. MEDIA/OPERATIONAL SELECTIVE ALGORITHM OPERATIONAL ALGORITHM BY DEFAULT THE DIAGNOSTIC SELECTS THE FIRST ALGORITHM TO IDENTIFY MEDIA RELATED WRITE ERRORS FROM OPERATIONAL ONES. TO SELECT THE SECOND ALGORITHM: ANSWER 'Y*' TO CHANGE Sw (L) ANSWER 'N*' TO ? BAD TAPE SPOT DETECTION (L) Y ? 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 SCOPE THIS ALGCRITHM IDENTIFIES MEDIA RELATED WRITE ERRORS FROM OPERATIONAL ONES. ALGORITHM A WRITE RETRY SUBROUTINE IS CALLED BY THE RECOVERABLE ERROR SUBROUTINE WHICH IS ENTERED UPON DETECTIION OF A WRITE RECOVERABLE ERROR. THE WRITE RETRY SUBROUTINE ATTEMPTS TO REWRITE THE RECORD IN SAME SPOT ON TAPE & TIMES CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 25-MAY=82 09:51 H 1 PAGE 4=2 SEQ 0007 IF ALL & REPEATS ARE GOOD, THE RECORD IS CONSIDERED AS RECOVERED AND A RECOVERABLE WRITE ERROR IS LOGGED AT THAT RECORD NUMBER. IF ANY OF THE & REWRITE ATTEMPTS FAIL, THE ROUTINE WILL ERASE THE BAD RECORD, AND LO BAD SPOT AT THAT RECORD _NUMBER,THE ROUTINE WILL THEN ATTEMPT TO WRITE THE RECORD AGAIN 3 INCHES FURTHER DOWN TAPE AND RETRY THIS SEQUENCE & TIMES, FOR UP TO & REPEATS EACH. IF A RECORD CANNOT BE WRITTEN WITHOUT RECOVERABLE ERRORS THEN THE ROUTINE WILL ERASE THE RECORD AND AFTER & RETRIES, REPORT RETRY FAILED ON BAD SPOT. THE RECOVERABLE ERROR SUBROUTINE THEN CONTINUES TO CALL THE WRITE RETRY SUBROUTINE, WHICH REISSUES THE GROUP OF & RETRIES, UNTIL THE RECORD IS RECOVERED OR 20 BAD SPOTS WAVE 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: A BAD TAPE OVERFLOW MESSAGE IS PRINTED AND THE UNIT IS REWOUND, THEN DROPPED. DURING THE RECOVERY PROCESS, IT IS NECESSARY TO PERFORM SEVERAL TAPE POSITIONING OPERATIONS: SPACE REVERSE, ERASE. IF A POSITION ERROR IS DETECTED IN THE STATUS WORD DURING THOSE OPERATIONS, THEN THE RECOVERY ATTEMPT IS — e b o D e b d b VONOWVSWN=O WWWWWWWWNWW 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 TG 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, THE BAD SPOTS ON TAPE ARE IDENTIFIED AS THEY ARE DETECTED. SINCE THE BAD RECORDS ARE ERASED UNTIL RECOVERED, THE BAD SPOT ACTUALLY PRECEDES THE RECORD NUMBER THAT IDENTIFIES IT. THE NUMBER OF REPEATS AND RETRIES ATTEMPTED IS PRINTED, FROM WHICH THE LENGTH 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 BOT TO WHERE THE DIAGNOSTIC IS HALTED SEFORE 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'’. i | | THE NUMBER OF WRITE RETRIES, CUMULATIVE FROM PASS TO PASS, IS A GLOBAL COUNT OF HOW MANY TIMES THE GROUP OF 4 RETRIES HAS BEEN CALLED. THE NUMBER OF WRITE RECOVERABLE ERRORS EXCLUDES BAD TAPE SPOTS CVTSEAO TSVOS DATA RELIABILITY ' MACRO M1113 I 25-MAY=-82 09:51 1 PAGE 4=3 SEQ 0008 AND REFLECTS THE SPECIFICATIONS OF THE WARDWARE UNDER TEST. TO CLEAR CUMULATIVE COUNTS, ANSWER "Y' TO: CLEAR COUNTERS (L) Y 2. THE BAD TAPE SPOTS COUNT IS THEN CLEARED WHEN WRITING THE TAPE FROM 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 Sus 000 PC: 012100 RECOVERABLE ERROR WRT CMD FAILED - UNIT 0 PREVIOUS CMD WAS WRT CMDPKT 100205 026600 000000 003107 XSTO 000350 SUSPECT SUSPECT SUSPECT SUSPECT PASS: 1 TSBA 002406 RFC 000000 TSSR TCC 100210 & XST1 XsT12 100400 000000 000002 BAD BAD BAD BAD SPOT SPOT SPOT SPOT AFTER AFTER AFTER AFTER XST3 1 2 3 & RETRY, RETRY, RETRY, RETRY, RECORD: 6 XST4 000000 2 1 1 3 RETRY FAILED ON BAD SPOT...ERASED' REPEAT REPEAT REPEAT REPEAT SUSFECT 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 0 PASS: 1 RECORD:10210 PREVIOUS CHD HAS WRT CMDPK 100205 026600 000000 004000 ST0 000350 TCC 002406 000000 100210 000002 XsT2 100010 XST3 000000 1 RECORD 10210 RECOVERED ON RETRY # 1 L XST4 000000 DR>PRI UNIT 0 PASS: BYTES WRITTEN BYTES READ REV BYTES READ REV 0,272,279.6 0,301,123, 654 0,301,120,381 WRT RDR RDF CVTSEAQ TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 J 1 PAGE 4=4 SEQ 0009 RECOVERABLE ERRORS UNRECOVERABLE ERRORS WRITE RETRIES 1 0 3 0 0 0 0 2 BAD SPOTg THletAPE PASS PRECEDING RECORD #: SPEC COND o> 2 HARD 0 FATAL 0 COMPARE 0 THIS EXAMPLE SHOWS: RECORD 6 RECOVERED ON 2ND RETRY GRO!.P THE 2 BAD_SPOTS RESIDE IN A 18 INCH ERASE GAP BETWEEN RECORDS 5 AND 6 RECORD 10210 RECOVERED ON 1ST RETRY OF 4 GOOD REPEATS 3 WRITE GROUP RETRIES ATTEMPTED, RESULTING IN: 1 RECOVERABLE WRT ERR FROM RECORD 10210 2 BAD SPOTS BETWEEN RECORDS 5 AND 6 1.1.4.3.2 OPERATIONAL WRITE-ERROR-RECOVERY ALGORITHM WHEN THIS ALGORITHM IS SELECTED, THE TSVOS WRITE RETRY COMMAND IS ISSUED UP TO 16 TIMES OR UNTIL RECORD IS RECOVERED, ON A WRITE RECOVERABLE ERROR. THE WRITE RETRY COMMAND CONSISTS OF A SPACE REVERSE OVER _THE BAD RECORD, THEN AN ERASE OF 3 INCHES OF TAPE AND REWRITE OF THE RECORD. THAT COMPOSITE COMMAND DOES NOT ALLOW THE DETECTECTION OF BAD SPOTS ON TAPE. THEREFORE NO BAD TAPE SPOTS STATUS IS PRINTED. IF RECORD CANNOT BE RECOVERED AFTER 16 WRITE RETRY COMMANDS, A RETRY LIMIT EXCEEDED IS FLAGGED AND UNIT IS DROPPED. 1.1.4.4 DIAGNOSTIC TIMING ADJUSTMENT A NUMBER OF SUPERVISOR TIMING DELAY MACROS, KNOWN AS WATCH DOG DELAYS, ARE CALLED BY THE DIAGNOSTIC TO WAIT FOR VARIOUS COMMANDS COMPLETION. THESE DELAYS ARE NOT CALIBRATED AND SIMPLY EXPANDS INTC AN INLINE NESTED LOOP PAIR. THE COUNT FOR THE OUTER LOOP COMES FROM THE VARIABLE ARGUMENT SUPPLIED BY THE DELAY CALLS. THE COUNT FOR THE INNER LOOP COMES FROM THE FIXED “‘HEADER' ELEMENT *LSDLY"'. AS THE DIAGNOSTIC IS RUN ON DIFFERENT CPU'S, THESE DELAYS WILL VARY IN LENGTH WITH MEMORY SPEED. IF TIME-OUT OCCURS WHEN NO APPARENT MALFUNCTIONS IN THE TAPE UNIT IS EVIDENT, ALL TIMINGS OF THE DIAGNOSTIC MAY BE ADJUSTED TO MATCH MEMORY SPEED AND NOT RESULT IN TIME-QUTS, BY PATCHING THAT FIXED DELAY ELEMENT °“‘LSDLY''. A PRESET COUNT OF 500 RESIDES AT “'LSDLY'* IN LOCATION 2116 OF THE "HEADER'' SECTION. 1.2 SYSTEM REQUIREMENTS CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 K 1 PAGE 4=5 SEQ 0010 1.2.1 HARDWARE REQUIREMENTS PDP=11/23 PROCESSOR WITH 32k CR MORE OF MEMORY CONSOLE DEVICE (VT52,LA36,ETC.) PROGRAM LOAD DEVICE TSV05/7S05 1.2.2 SOFTWARE REQUIREMENTS DIAGNOSTIC SUPERVISOR 1.3 RELATED DOCUMENTS AND STANDARDS DIGITAL EQUIPMENT CORPORATION DOCUMENTS: 1. 2. CIOPMAQ XXDP+ PROGRAMMER'S DATE: 14 JULY 1980. MANUAL; DOCUMENT NUMBER AC-S296A~AC TSVO5 TRANSPORT SUBSYSTEM USER'S GUIDE; DOCUMENT NUMBER EK-TSV0S5-UG-001 DATE: AUGUST 1982 3. TSVO5 TRANSPORT SUBSYSTEM TECHNICAL MANUAL; DOCUMENT NUMBER EK-TSV0S-TM=001 DATE: AUGUST 1982 4. TSVO5 TRANSPORT SUBSYSTEM INSTALLATION MANUAL; DOCUMENT NUMBER EK-TSV0S~IN-001 DATE: AUGUST 1982 1.4 DIAGNOSTIC HIERARCHY PREREQUISITES ORDER OF HOST CPU DIAGNOSTIC USAGE: 1) CONTROL LOGIC PROGRAM - ALL TESTS. (VTSA,VTSB,VTSC,VTSD) 2) DATA RELIABILITY PROGRAM: 3; 82?1‘.:2‘&‘%}{"1‘:5‘?{5:. 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. CVTSEAO TSVO5S DATA RELIABILITY Vi }% 14 MACRO M1113 25-MAY-82 09:51 L 1 PAGE 4=6 VTSA,VTSB,VTSC, AND VTSD HAVE ALL SUCESSFULLY RUN WITHOUT ERRORS. SEQ 0011 [ w i CVTSEAD TSVOS DATA RELIABILITY VIV AWMV Vi W&V\U‘M\h\fl\h\fi\h\h\fl NONINININIPNONININ) =bss SIFRRUR2ET NV NN ~=O V0 vNOr i ! NN - (= 1Y) | MACRO M1113 25-MAY-82 09:51 n PAGE S SEQ 0012 2.0 OPERATING INSTRUCTIONS THIS SECTION CONTAINS A BRIEF DESCRIPTION OF THE RUNTIME SERVICES. FOR DETAILED INFORMATION, REFER TO THE XXDP+ USER'S MANUAL (CHOUS). COMMANDS THERE ARE ELEVEN LEGAL COMMANDS FOR THE DIAGNOSTIC RINTIME SERVICES (SUPERVISOR). THIS SECTION LISTS THE COMMANDS AND GIVES A VERY BRIEF JESCRIPTION OF THEM. COMMAND START RESTART CONT INUE PROCEED EXIT ADD DROP PRINT THE XXDP+ USER'S MANUAL HAS MORE DETAILS. EFFECT START THE DIAGNOSTIC FROM AN INITIAL STATE START THE DIAGNOSTIC WITHOUT INITIALIZING CONTINUE AT TEST THAT WAS INTERRUPTED (AFTER “C) CONTINUE FROM AN ERROR HALT RETURN TO XXDP+ MONITOR (XXDP+ OPERATION ONLY!) ACTIVATE A UNIT FOR TESTING (ALL UNITS ARE CONSIDERED TO BE ACTIVE AT START TIME DEACTIVATE A UNIT PRINT STATISTICAL INFORMATION (IF IMPLEMENTED DISPLAY BY THE DIAGNOSTIC) TYPE A LIST OF ALL DEVICE INFORMATION ZFLAGS CLEAR ALL FLAGS FLAGS TYPE THE STATE OF ALL FLAGS A COMMAND CAN BE RECOGNIZED BY THE FIRST THREE CHARACTERS. YOU MAY, FOR EXAMPLE, TYPE ''STA'* INSTEAD OF °“'START'', SO OPERATOR COMMANDS THE TSVO5 DIAGNOSTIC IS A PDP=-11/23 DIAGNOSTIC SUPERVISOR COMPATIBLE PROGRAM. ALL LOADING AND RUNTIME INSTRUCTIONS CAN BE REFERENCED IN THE PDP=11 PROGRAMMER'S MANUAL ‘‘CIQPMAQ XXDP+ PROGRAMMERS MANUAL, N'JMBER AC-S296A-AC. THE USER ENTRY IS IN QUOTES. BOOT THE DIAGNOSTIC XXDP MEDIA (4MDLBO XXDP+ DL MONITOR 28K BOOTED VIA UNIT 0 ENTER DATE (DD-MMM-YR): ‘‘ ENTER DATE OR JUST <CR> ** RESTART ADDRESS: 153726 S0 HZ? N ' <CR> LSI? N " Y<CR> ** THIS IS XXDP+. TYPE "H'' OR "H/L'' FOR DETAILS R VTSEAD VISEAOBINDRS LOADED DIAG. RUN-TIME SERVICES REV D. APR 79 pa— — CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 e 25-MAY-82 09:51 ——— e et — N1 PAGE S5-1 SEQ@ 0013 CVTSE~-A-0 TSVO5 DATA RE TABILITY UNIT IS TSVO5 SWITCHES THERE ARE SEVERAL SWITCHES WHICH ARE USED TO MODIFY SUPERVISOR OPERATION. THESE SWITCHES ARE APPENDED TO THE LEGAL COMMANDS. ALL OF THE LEGAL SWITCHES ARE TABULATED BELOW WITH A BRIEF DESCRIPTION OF EACH. " IN THE DESCRIPTIONS BELOW, A DECIMAL NUMBER IS DESIGNATED BY ‘DDDDD'’. SWITCH EFFECT /TESTS:LIST EXECUTE ONLY THOJE TESTS SPECIFI ED_IN THE LIST. LIST 1S A STRING OF T EST NUMBERS, FOR EX/APLE - /TEST $:1:5:7-10 ;17 THIS LIST WILL CAUSE TESTS 1,5,7.8, /PASS :DDDDD /FLAGS:FLGS /EOP:DDDDD JUNITS:LIST 9.10 10 BE RUN. ALL OTHER TESTS WILL NOT B RUN. EXECUTE DDDDD PASSES (DDDDD = 1 T 0 64000 SET SPECIFIED FLAGS. REPORT END OF PASS MESSAGE AFTER EVERY DDDDD PASSES ONLY. (DDDDD = 1 TO 64000) TEST/ADD/DROP ONLY THOSE UNITS SPECIFIED IN THE LIST. LIST EXAMPLE = /UNITS:0:5:10-12 USE UNITS 0,5,10,11,12 (UNIT NUMBERS = 0-63) EXAMPLE OF SWITCH USAGE: START/TESTS:1-5/PASS:1000/E0P: 100 THE EFFECT OF THIS COMMAND WILL BE: 1) TESTS 1 THROUGH S WILL BE EXECUTED, 2) ALL UNITS WILL TESTED 1000 TIMES AND 3) THE END OF PASS MESSAGES WILL 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"", A - YOU MAY, BELOW IS A TABLE THAT SPECIFIES WHICH SWITCHES CAN BE USED BY EACH COMMAND . TESTS START RESTART CONT INUE PROCEED 9ROP ADD FRINT DISPLAY FLAGS IFLAG* EXIT ks X PASS X X X FLAGS EOP X X “ x X X X UNITS X X X X X CVTSEAO TSVO5S DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 B 2 PAGE 5-2 SEQ 0014 FLAGS FLAGS ARE USED TO SET UP CERTAIN OPERATIONAL PARAMETERS SUCH AS LOOPING ON ERROR. ALL FLAGS ARE CLEARED AT STARTUP AND REMAIN CLEARED UNTIL EXPLICITLY SET USING THE FLAGS SWITCH. FLAGS ARE ALSO CLEARED AFTER A START COMMAND UNLESS SET USING THE FLAG SWITCH. THE ZFLAGS COMMAND MAY ALSO BE USED TO CLEAR ALL FLAGS. WITH THE EXCEPTION OF THE START AND ZFLAGS COMMANDS, NO COMMANDS AFFECT THE STATE OF THE FLAGS; THEY REMAIN SET OR CLEARED AS SPECIFIED BY THE LAST FLAG SWITCH. FLAG EFFECT HOE HALT ON ERROR = CONTROL IS RETURNED TO RUNTIME SERVICES COMMAND MODE LOOP ON ERROR INHIBIT ALL ERROR REPORTS INHIBIT ALL ERROR REPORTS EXCEPT FIRST LEVEL (FIRST LEVEL CONTAINS ERROR TYPE, NUMBER, PC, TEST AND UNIT) LOE IER* IBR* IXE INHIBIT EXTENDED ERROR REPORTS (THOSE CALLED BY PRINTX MACRO'S) PRI PNT DIRECT MESSAGES TO LINE PRINTER PRINT TEST NUMBER AS TEST EXECUTES UAM UNATTENDED MODE (NO MANUAL INTERVENTION) BOE ISR IDR ADR Lor "BELL'' ON ERROR INHIBIT STATISTICAL REPORTS (DOES NOT APPLY TO DIAGNOSTICS WHICH DO NOT SUPPORT STATISTICAL REPORTING) INHIBIT PROGRAM DROPPING OF UNITS EXECUTE AUTODROP CODE 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, TO CAUSE THE PROGRAM TO LOOP ON ERROR, INHIBIT ERROR REPORTS AND TYPE A "BELL'* ON ERROR, YOU MAY USE THE FOLLOWING 3TRING: /FLAGS::LO IER:BO E E 2.1 HARDWARE PARAMETERS ON A *N'' RESPONSE TO_''CHANGE HW?'', THE DIAG_SHALL RUN ASSUMING ONE UNIT AT TSDB = 172520 WITH A 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 THE LEFT OF THE QUESTION MARK IS THE DEFAULT VALUE THAT WILL BE TAKEN ON A CARRIAGE PETURN RESPONCE. CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 ¢ 2 PAGE 5-3 SEQ@ 0015 TSDB ADDRESS (0) 172520 ? VECTOR (0) 224 ? SELECT DRIVE 0-1 (0) ? THE VALIDITY OF THESE PARAMETERS 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. THAT CODE FIRST TESTS THE ADRRESS OF THE TSDB(S). IF NO RESPONSE, IT DROPS THE UNIT(S) WITH THE FOLLOWING MESSAGE : IMMEDIATELY BUS TRAP AT XXXXXX (_XXXXXX = TSDB AD ) INTERFACE BAD OR NOT SET TO ABOVE ADDRESS. ON A RESPONSE FROM THE INTERFACE, THE UNITS THAT ARE NOT READY OR NOT ON-LINE ARE DROPPED IMMEDIATELY. THE HARDWARE TESTS SHALL THEN BE RUN ON RESPONDING UNITS. IF THE "'ADR'' FLAG IS NOT SET, DRIVE IS CHECKED. THE READY AND OFF=LINE STATUS OF THE A MESSAGE SHALL BE PRINTED EVERY SO OF TEN TO WARN THE OPERATOR OF DRIVES BEING NOT READY OR OFF=-LINE. THESE DRIVES SHALL BE DROPPED AFTER A REASONABLE AMOUNT OF TIME. 2.2 SOFTWARE PARAMETERS THEY ALLOW FLEXABILITY IN THE WAY 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 ? DEFAULT SWITCH SETTINGS (L) 100IPS (L) N ? WRITE BUFFERING (L) N ? (SEE NOTE1:) Y ? | CVTSEAO TSVOS DATA RELIABILITY | MACRO M1113 25-MAY-82 09:51 D 2 PAGE 5<4 SEQ 744 READ BUFFERING (L) N ? 747 748 ANSWERING NO TO THE DEFAULT SWITCH QUESTION WILL CAUSE THE 100 IPS QUESTION TO BE ASKED. 750 4] ANSWERING YES TO THE 100 IPS QUESTION WILL INHIBIT THE LAST TWO QUESTIONS. 753 134 ANSWERING NO TO THE 100 IPS QUESTION WILL CAUSE THE WRITE BUFFERING QUESTION TO BE ASKED. 756 414 ANSWERING YES TO THE WRITE BUFFERING QUESTION WILL INHIBIT THE LAST QUESTION. 759 760 ANSWERING NO TO THE WRITE BUFFERING QUESTION WILL CAUSE THE READ BUFFERING QUESTION TO BE ASKED. i 762 763 764 765 NOTE1: 768 769 770 771 772 773 774 775 776 CHARACTERISTICS CODE (0) 40 2 CMD/2 (D) 13 ? BRP. CONT (3) 1 2 # OF OPERATIONS (D) 1 2 PATTERN (D) 72 CMD/3 (D) 4 BRF. COUNT (D) 2048 2 # OF OPERATIONS (D) 32000 ? PATTERN (D) 7 2 CMD/4 (D) 3 ? BRF COUNT (D) 2048 ? # OF OPERATIONS (D) 32000 ? PATTERN (D) 7 ? CMD/S (D) 2 ? 68 777 778 779 780 781 782 783 784 * 785 786 787 788 789 790 791 792 793 79 795 19 798 799 800 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: BRF_COUNT (D) 2048 ? # OF OPERATIONS (D) 32000 ? PATTERN (D) 7 ? CMD/6 (D) 13, 2 BRF_COUNT (D) 1 2 # OF OPERATIONS (D) 1 ? PATTERN (D) 7 ? CMD/7 (D) 27. ? BRF COUNT (D) 2048 ? # OF OPERATIONS (D) 32000 ? PATTERN (D) 7 ? CMD/8 (D) 27. ? BRF_COUNT (D) 2048 ? # OF OPERATIONS (D) 32000 ? PATTERN (D) 7 ? NOTE: 0016 (0,20,40,200) (OCTAL) (DECIMAL) (155> (BECIMAL) (1-32k) (DECIMAL) (0-8) (DECIMAL) (1-27) (DECIMAL) (1-2k) (DECIMAL) (1-32K) (DECIMAL) (0-8) ~ (DECIMAL) (1-27) (1-2k) (1-32K) (0-8) (1-27) (1-2k) (1-32K) (0-8) (1-27) (1-2k) (1-32k) (0-8) (1-27) (1-2k) (1-32k) (0-8) (1-27) (1-2) (1-32K) -8) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) (DECIMAL) THE_PROGRAM AUTOMATICALLY INSERTS A CHARACTERISTIC CODE OF AS THE FIRST COMMAND IN THE SEQUENCE TABLE. IF A DIFFERENT CHARACTERISTIC IS DESIRED, THE OPERATOR SHOULD 40 CVTSEAO TSVO5 DATA RELIABILITY MACRO M1113 E 25-MAY-82 09:51 801 802 803 804 805 807 2.2.1 COMMAND LIST FOR USE IN SOFTWARE DIALOGUE. CODE 811 812 813 814 1= 2= 3= 4= 815 5= 818 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 COMMAND DRI RDF RDR WRT 6 = 7= 8 = 9 = 10 = 11 = 12= 13 = 14 = 15 = 16 = 17 = 18 = 19 = 20 = 21 = 22 = 23 = SRF SRR RNR RNF RPF RPR WRR RWD MBR WIM WIR SFF SFR GES ERS UNL CLN SCH 25 = JMP 27 = 2.2.2 END DESCRIPTION DRIVE INITIATE. READ FORWARD. READ REVERSE. WRITE. WV 26 = DLY 843 84 WRITE/VERIFY. . IE. WRITE N RECORDS; READ REVERSE AND CHECX N RECORDS OF DATA; READ FORWARD AND CHECK N RECORDS. SPACE RECORDS FORWARD. SPACE RECORDS REVERSE. READ NEXT REVERSE, IE. SPACE FWD, READ REV. READ NEXT FORWARD, IE. READ FWD, SPACE REV. READ PREVIOUS FWD, IE. SPACE REV, READ FWD. READ PREVIOUS REV, IE. READ REV, SPACE FuD. WRITE RETRY. REWIND. MESSAGE BUFFER RELEASE. WRITE TAPE MARK. WRITE TAPE MARK RETRY. SPACE FILES FORWARD. SPACE FILES REVERSE. GET EXTENDED STATUS. ERASE 3 INCHES OF TAPE. UNLOAD, CLEAN TAPE SET DEVICE CHARACTERISTIC. WHERE BRF=200, 40, 20, 0. 200 = ENABLE SKIP TAPE MARKS STOP (STOP AT LOGICAL EOT) 40 = ENABLE ATTENTION INTERRUPTS. 20 = ENABLE MESSAGE BUFFER RELEASE INTERRUPTS. SEE_TSV0S5/TS0S PROGRAMMING SPECIFICATION FOR DESCRIPTION. JUMP TO THE NTH COMMAND IN THE COMMAND SEQUENCE TABLE, WHERE N IS DEFINED IN THE BRF FIELD. THE NUMBER OF JUMPS IS ENTERED IN THE # OF OPERATIONS FIELD DELAY ‘N MILISECONDS WHERE N IS DEFINED IN THE # OF OPERATIONS. END OF COMMAND SEQUENCE. DATA PATTERN LIST FOR USE IN SOFTWARE DIALOGUE. 89 PATTERN # 851 0 852 853 854 855 856 857 SEQ 0017 ENTER THAT CHARACTERISTIC CODE. A TOTAL OF 7 COMMANDS MAY BE ENTERED IN ADDITION TO THE SET CHARACTERISTICS COMMAND. IF THE OPERATOR WISHES TO USE LESS THAN 7 COMMANDS, AN END COMMAND MUST BE ENTERED AND THEN A CONTROL Z (*2) CAN BE ENTERED TC TERMINATE SOF TWARE DIALOGUE. 809 846 87 2 PAGE 5-5 1 2 3 4 5 6 DESCRIPTION. INCREMENTING PATTERN. 0 - 377. ALL "1°"'S PATTERN. ALL 0'"'S PATTERN. "1 BIT WALKING FROM R TO L IN A FIELD OF '0'TMS. “0'* BIT WALKING FROM R TO L IF A FIELD OF "“1'"S. ALTERNATING *“1°* AND *0'* "BITS WITH ALTERNATE BYTES COMPLIMENTED. ALTERNATING BYTES OF 000 AND 377. CVTSEAO TSVOS DATA RELIABILITY 858 859 MACRO M1113 25-MAY-82 09:51 7 8 F 2 PAGE 5-6 RANDOM DATA PATTERN. NO PATTERN GENERATION. SEQ@ 0018 . CVTSEAQ TSVO5 DATA RELIABILITY MACRO M1113 2.3 25-MAY-82 09:51 EXAMPLES OF 6 PAGE 6 2 SEQ 0019 SOFTWARE DIALOGUE CHANGE HW (L) ? #UNITS (D) ? TSDB ADDRESS (0) 172520 ? VECTOR (0) 224 ? SELECT DRIVE 0-1 (0) ? FOLLOWS: CHANGE SwW (L) ? 2.3.1 BASIC FUNCTION AND DATA RELIABILITY WITH ALL ERROR REPORTING ENABLED A) B) C) D) RECEIVE PROMPT (DR>) ENTER STA/TES:1=2<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE: CHANGE sw (L) ? Y<CR> CLEAR COUNTERS (L) N ? Y<CR> RESET RANDOM VARIABLES (L) N ? PRINT RECOVERABL" ERRORS (L) N ? HALT AFTER EACH ‘MD (L) N ? INHIBIT RECOVERY (L) N ? BAD TAPE SPOT DETECTION (L) Y ? DISABLE INTERRUPTS (L) N ? INHIBIT RFC ERROR REPORT (L) N ? CHANGE CMD SEQUENCE (L) N ? DEFAULT SWITCH SETTINGS (L) Y ? 2.3.2 <CR> Y<CR> <CR> <CR> <CR> <CR> <CR> <CR> <CR> TO SET UP A SCOPE LOOP FOR A FAILURE IN BASIC FUNCTIONS. A) B) C) D) RECEIVE PROMPT (DR>) ENTER STA/TES:1/FLA:LOE:IER:ISR: IDU<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE : CHANGE S¥ (L) ? CLEAR COUNTERS (L) N ? 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 ? Y<CR> Y<CR> N<CR> N<CR> N<CR> N<CR> N<CR> N<CR> MACRO M1113 25-MAY-82 09:51 H 2 PAGE 6-1 SEQ 0020 INHIBIT RFC ERROR REPORT (L) N ? Y<CR> CHANGE CMD SEQUENCE (L) N ? DEFAULT SWITCH SETTINGS (L) Y ? 2.3.3 N<CR> <CR> TO SET UP A SCOPE LOOP FOR A FAILURE IN DATA RELIABILITY A) RECEIVE PROMPT (DR>) B) C) D) ENTER STA/TES:5/FLA:IER:ISR:IDU/EOP:1000<CR> ANSWER HARDWARE QUESTIONS. PROCEED WITH THE FOLLOWING DIALOGUE : - CHANGE SW (L) ? Y<CR> CLEAR COUNTERS (L) N ? 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 REPORT (L) N ? CHANGE CMD SEQUENCE (L) N ? CHARACTERISTICS CODE (0) 40 ? CMD/2 (D) 5 ? BRF COUNT (D) 2048 ? # OF OPERATIONS PATTERN (D) 7 ? (p) # OF OPERATIONS (p) CMD/3 (D) S ? BRF (D) 2048 ? PATTERN (D) 7 Y<CR> N<CR> N<CR> N<CR> N<CR> N<CR> Y<CR> Y<CR> Y<CR> 40<CR> 13<CR> 1<CR> 10 ? 10 ? CMD/4& (D) § ? BRF (D) 2048 ? 1<CR> 1<CR> 4<CR> 1000<CR> (REWIND) (WRITE) 10000<CR> 1<CR> 27<CR> <D (END) 2.4 EXECUTION TIMES SYSTEM CONFIGURATION PDP11/23 nog MEMORY LA36 TSV05/7S05 TEST EXECUTION TIMES (2400 FT. TAPE) e 2.4.2 NOTE: VIS N — CVISEAQ TSVO5 DATA RELIABILITY = BASIC FUNCTIONS - 30 SECONDS PER PASS. = DATA RELIABILITY = 45 MINUTES PER PASS. = WRITE COMPATABILITY = 20 MINUTES PER PASS. = READ COMPATABILITY = 20 MINUTES PER PASS. = RANDOM/OPERATOR SELECTED SEQUENCE -20 MINUTES PER PASS. ALL EXECUTION TIMES ARE SHOWN FOR ONE DRIVE OEPRATION. CVTSEAQ TSVOS5S DATA RELIABILITY MACRO M1113 I 25-MAY-82 09:51 2 PAGE 6-2 SEQ 0021 3.0 ERROR INFORMATION 3.1 ERROR REPORTING ALL _ERROR REPORTS EXCEPT FOR ERRORS #1 AND #17 INCLUDE A DUMP OF THE FOLLOWING INFORMATION: ERROR #, TEST #, SUBTEST #, PROGRAM COUNTER UNIT #, COMMAND, PREVIOUS COMMAND, PASS COUNT, # OF RECORDS FROM BOT, RECORD READ COUNT, THE COMMAND PACKET, TSSR, TCC, TSBA, RFC, AND THE EXTENDED STATUS REGISTERS (SEE 2.3.14.1 FOR LIST OF COMMANDS). STANDARD ERROR REPORT FORMAT: NONWN SWN=O S S S d D e OV d N— S i D —d D e k=D OO0O0O0O0000000 B SUB XXX PC: XXXXXX XXX CMD FAILED = UNIT X PASS: XXXXX RECORD: XXXXX PREVIOUS CMD WAS XXX * RECORD READ: XXXXX * CMDPKT TSBA RFC TSSR TCC XXXXXX XXXXXX XXXXXX XXXXXX X XXXXXX XXXXXX XXXXXX XSTO XXXXXX XsT1 XXXXXX i S Y S P S ey 38INSRSRS8S CVTSE SFT ERR XXXXX TST XXX (ASCII ERROR MESSAGE) XST2 XXXXXX XST3 XXXXXX 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 sgfigfigng;GHT2AVE CAUSED RECORD COUNT TO BE ERRONEOUSLY IN TEST 2, IF DIAGNOSTIC IS RESTARTED OR CONTINUED, RECORD COUNT IS RESET-f0. ZERD ALTHOUGH THE TAPE 19 NOT REWBUME” This Is NECESSARY BECAUSE THERE IS NO ACCURATE WAY TO DETERMINE ON WHAT RECORD COUNT OF WHICH UNIT THE DIAGNOSTIC WAS HALTED BEFORE RESTARTING OR CONTINUING. IT IS SUGGESTED THAT A ‘PRINT'' BE REQUESTED WHEN HALTING DIAG TO GET A PRINT OF THE RECORD COUNT WHEN WALTED. EXAMPLE OF AN ERROR REPORT: CVTSE SFT ERR 00009 TST 002 RECOVERABLE ERROR WRT CMD FAILED = UNIT 2 ggegxous CMD HAS URT 100005 051766 000000 002326 000000 PASS: 100210 SsuB 000 - 4 2 PC: 010606 RECORD: 254 CVTSEAOD TSVO5 DATA RELIABILITY MACRO M1113 2 ) e SEQ 0022 XST1 000002 XST2 100004 XST3 000000 XST4 040055 ) D ol ZZEERRERETRESR D D 036 837 J PAGE 6-3 000371 XST0 000350 D 1032 033 8%2 25-MAY-82 09:51 3.1.1 0 ERROR #1 = COMMAND PACKET ADDRESS NOT ON A MODULO 4 BOUNDRY: IF THIS ERROR IS REPORTED, THE PROGRAM DID NOT LOAD PROPERLY. 3.1.2 ) cd el e NOVESW N — 8°°°°°° viviwviwvviunawn i Vi =di=1=] o =D d e 3.1.3 OV 3.1.4 1063 1064 1065 1066 1067 1068 }898 ERROR #3 - NO RESPONSE ERROR: ONCE THE TSDB IS LOADED, THE TSO5 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. d - }82% ERROR #2 - TSOS5 NOT READY: BEFORE ANY COMMAND IS ISSUED TO THE TSOS, THE SUBSYSTEM READY BIT IN THE TSSR IS CHECKED. IF THE SSR IS NOT SET, THE PROGRAM REPORTS THE NOT READY ERROR. THIS IS A FATAL DEVICE ERROR AND nglgSV}gEugékL BE DROPPED FROM THE TEST SEQUENCE UNLESS THE IDU D ) D i D D D e THIS IS A _SYSTEM FATAL ERROR AND THE PROGRAM MUST BE RELOADED TO CORRECT 1IT. ERROR #4 - NO INTERRUPT ERROR: COMMAND WAS ISSUED AND NO INTERRUPT RECEIVED. THE PROGRAM REPORTS THAT NO INTERRUPT OCCURRED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. : 3.1.5 SPECIAL CONDITION ERRORS: 1071 1072 1073 ;8;? IF, DURING EXECUTION, AN INCIDENT OCCURS FORCING THE TSSR SPECIAL CONDITION BIT TO SET, THE PROGRAM WILL SELECT ONE OF 8 ERROR HANDLING ROUTINES, DEPENDING ON THE TERMINATION CLASS CODE. 1076 }8;; THE TERMINATION CLASS CODES IN THE TSSR ARE PROCESSED AS FOLLOWS WHEN SPECIAL CONDITION IS SET: 1079 }gg? 3.1.5.1 ERROR #5 - TERMINATION CLASS CODE 0, UNDEFINED SPECIAL CONDITION 1082 }832 1085 }8%9 1088 THE ERROR IS REPORTED, A HARD ERROR IS LOGGED AND THE PROGRAM PROCEEDS NORMALLY. 3.1.5.2 ERROR #6 - TERMINATION CLASS CODE 1, ATTENTION CONDITION THIS TCC INDICATES THAT THE DRIVE HAS UNDERGONE A STATUS CHANGE OO0 MACRO M1113 25-MAY-82 09:51 K 2 PAGE 6-4 SEQ 0023 SUCH AS GOING OFFLINE OR COMING ONLINE. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 3.1.5.3 ERROR #7 - TERMINATION CLASS CODE 2, TAPE STATUS ALERT A STATUS CONDITION HAS BEEN ENCOUNTERED THAT MAY HAVE SIGNIFICANCE TO_THE PROGRAM. BITS OF INTEREST INCLUDE TMK, RLS, LET, RLL, EOT. ACTION TAKEN DEPENDS ON THE TEST BEING EXECUTED. IF THE CONDITION IS UNEXPECTED, THE ERROR IS REPORTED AND A HARD ERROR IS LOGGED. THE PROGRAM PROCEEDS NURMALLY. 3.1.5.4 ERROR #8 - TERMINATION CLASS CODE 3, FUNCTION REJECT THE SPECIFIED FUNCTION WAS NOT INITIATED. BITS OF INTEREST ARE RMR, OFL, VCK, BOT, ILC, WLE, ILA, AND NBA. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE 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 IS RECOVERED, RETRY LIMIT EXCEEDED IS REPORTED AS DESCRIBED IN ERROR #14 BELOW. 3.1.5.6 ERROR #10 - TERMINATION CLASS CODE 5, RECOVERABLE ERROR TAPE POSITION HAS NOT CHANGED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND RE-ISSUE THE ORIGINAL COMMAND. IF RETRY LIMIT IS REACHED BEFORE THE ERROR IS RECOVERED, RETRY LIMIT EXCEEDED IS REPORTED AS DESCRIBED IN ERROR #14 BELOW. 3.1.5.7 ERROR #11 - TERMINATION CLASS CODE 6, UNRECOVERABLE ERROR TAPE POSITION HAS BEEN LOST. THE ONLY VALID RECOVERY PROCEDURE IS TO REWIND AND START OVER AT BOT UNLESS THE TAPE HAS LABELS OR SEQUENCE NUMBERS. IF DENSITY CHECK IS SET THIS DIAGNOSTIC WILL REWIND AND RETRY THE COMMAND, OTHERWISE THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. S PW VIS WN=O0 — — e d d b e d d wd b d D o D cnd D W d D e e e D d cd d D D d D cd D D d e ) D d D D cd e ) D e d D D d D ) D D cd e D D d d d d d D e D D D cd D WRONNNDNNNNNIIN S b b b b i = =L D e d D D d ad d ) D D d D d D d d b ) D D d ad D D agOOO 28 3332 ) D nd D D d d 3233238 CVTSEAQ TSVOS5 DATA RELIABILITY 3.1.5.8 ERROR #12 - TERMINATION CLASS CODE 7, FATAL SUBSYSTEM ERROR THE SUBSYSTEM IS INCAPABLE OF PROPERLY PERFORMING COMMANDS OR AT LEAST ITS INTEGRITY IS SERIOUSLY QUESTIONABLE. REFER TO THE FATAL CLASS CODE FIELD IN THE TSSR REGISTER FOR ADDITIONAL INFORMATION ON THE TYPE OF FATAL ERROR. THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. MACRO M1113 25-MAY-82 09:51 3.1.6 3.1.7 D e ) D ) D ) D ) i D ) D e WN) v oo 3.1.8 o NNNOONON SERIRRREC28TRIRRR AFTER EXECUTION, THE RESIDUAL FRAME COUNT IS NON-ZERO, THE THE PROGRAM THEN THE REPORTING AND LOGGING OF THESE ERRORS ERROR #14 = RETRY LIMIT EXCEEDED: ON A READ COMMAND THIS ERROR IS LOGGED AS A HARD ERROR AND THE PROGRAM PROCEEDS NORMALLY. ERROR #15 = TOO MANY INTERRUPTS: IF MORE THAN ONE INTERRUPT OCCURS PER COMMAND, THIS ERROR IS REPORTED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. 3.1.9 ERROR #16 = CAPSTAN RUNAWAY: CAPSTAN DID NOT STOP WITHIN ACCEPTABLE WINDOW AFTER LAST COMMAND. THE PROGRAM WILL ISSUE A GET STATUS COMMAND BEFORE REPORTING THE ERROR SO THAT THE DEAD TRACK FIELD IN EXTENDED STATUS REGISTER 2 WILL CONTAIN THE TACH COUNT WHEN THE TAPE STOPPED. THIS IS A FATAL DEVICE ERROR AND THE DEVICE WILL BE DROPPED FROM THE TEST CYCLE UNLESS THE IDU OPTION IS USED. ~ LY SEQ 0024 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. D d d d D D d D wd D D PAGE 6-5 u;gosg;?s NORMALLY. D ) D d d — e cd e D e D D cd e ) cd ) - D ) —d D d D — L N N oo d wd —d b ) ) d e et d D b —d D b d DT D o ) DI ) 82 83 2 ERROR #13 = RFC NON-ZERO ERROR: IF, PR — g? PN ) D o — 78 79 L ERROR IS REPORTED AND A HARD ERROR IS LOGGED. ) d— ) i d cd — D D d Ossmmmm\nmvvmwbbb aflombw-‘OOQVS d CVTSEAO TSVOS DATA RELIABILITY 3.1.10 ERROR #17 - DATA COMPARE ERROR: IF A DATA VALIDATION ERROR OCCURS DURING A WRITE/VERIFY COMMAND, THE PROGRAM PRINTS WHAT THE DATA SHOULD HAVE BEEN AND WHAT THE DATA WAS, AND PRINTS THE BYTE AND RECORD NUMBER THE ERROR OCCURRED ON. ONLY THE FIRST 10 BYTES IN ERROR PER RECORD ARE PRINTED. THE TOTAL # OF BYTES IN ERROR PER RECORD IS ALSO PRINTED. A HARD ERROR IS LOGGED AND THE PROGRAM PROCEEDS NORMALLY. 3.2 ERROR HALTS ERROR HALTS ARE SUPPORTED PER DESCRIBED IN THE PREVIOUS SECTION WITH /FLAG:HOE. THERE ARE NO OTHER HALTS. 4.0 PERFORMANCE REPORT UNIT X PASS:XXXXX RECORD : XXXXX BYTES WRITTEN XXX, XXX,XXX,XXX BYTES READ REV XXX,XXX,XXX,XXX BYTES READ FWD XXX, XXX,XXX, XXX CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 1203 1204 25-MAY-82 09:51 n2 PAGE 6-6 RECOVERABLE ERRORS }%82 UNRECOVERABLE ERRORS 1207 1208 1209 1210 121 121% 121 1214 1215 1219 }5}3 SPEC COND XXXXX HARD XXXXX SEQ 0025 WRT XXXXX RDR XXXXX XXXXX FATAL XXXXX XXXXX RDF XXXXX XXXXX COMPARE XXXXX 5.0 TEST SUMMARIES 5.1 TEST 1 - BASIC FUNCTIONS. }%58 EXECUTES AND VERIFIES CORRECT COMPLETION OF ALL TSOS FUNCTIONS. 1221 1222 SUBTEST 1 1229 1230 }%3} SUBTEST 2 = REWIND. + REWIND. + REWIND AT BOT. 1233 1234 1235 1236 1237 1238 1239 }52? SUBTEST 3 = WRITE/VERIFY. + WRITE/VERIFY PATTERN 1. + WRITE/VERIFY PATTERN 2. + WRITE/VERIFY PATTERN 3. + WRITE/VERIFY PATTERN 4. + WRITE/VERIFY PATTERN S. + WRITE/VERIFY PATTERN 6. + WRITE/VERIFY PATTERN 0. 1242 SUBTEST & = WRITE TAPE MARK, ERASE. 1249 1250 1251 1252 SUBTEST S = SPACE FILES. + SPACE 2 FILES REVERSE. + SPACE 2 FILES FORWARD. + SPACE 2 FILES REVERSE. 1255 1256 1257 1258 1259 SUBTEST 6 1223 1224 1225 1226 }ggg 1243 1244 1245 1246 }52; = SET CHAR, DRIVE INIT, GET STATUS. + SET CHARACTERISTIC 200. + + + + + }522 DRIVE INITIATE. SET CHARACTERISTIC 20. GET STATUS SET CHARACTERISTIC 40. PRINT TSO5 MICROCODE LEVEL (PASS 1 ONLY) + WRITE + WRITE + ERASE + WRITE + WRITE TAPE MARK. 10 RECORDS 10 TIMES TAPE MARK. TAPE MARK RETRY. + SPACE 2 FILES FORWARD. = SPACE RECORDS. + REWIND. + SPACE 7 RECORDS FORWARD. + SPACE 7 RECORDS REVERSE. + SPACE 7 RECORDS FORWARD. CVTSEAD TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 N 2 PAGE 67 SPACE 7 RECORDS REVERSE. SUBTEST 7 URITE RETRY. SUBTEST 8 = READ REV RETRY. + REWIND. -+ WRITE DATA. + WRITE RETRY. + READ REVERSE. + + SUBTEST 9 READ NEXT REVERSE. READ NEXT FORWARD. = READ FWD RETRY. + READ FORWARD. + + READ PREVIOUS FORWARD. READ PREVIOUS REVERSE. SUBTEST 10 = CLEAN, + CLEAN. + REWIND. 4+ttt + WRITE/VERIFY EVEN LENGTH (RECORD 1). WRITE/VERIFY ODD LENGTH (RECORD 2). SET DATA BYTE SWAP, WRITE/VERIFY EVEN LENGTH (RECORD 3). WRITE/VERIFY ODD LENGTH (RECORD 4). CLEAR DATA BYTE SWAP. O R = READ SWAPPED DATA BYTES. R SUBTEST 12 =~ URITE/VERIFY SWAPPED DATA BYTES. R SUBTEST 11 LA SRIFANANISSS JEGKRER 28 + - — d D 'gNaa AR WY —3 d e D ad cd e d D d D D ) D d ) e D b- b NN NONINININININININ N NN NN NNN N~ NNN o SEQ 0026 READ REV RECORD 4. READ REV RECORD 3. SET DATA BYTE SWAP. READ REV RECORD 2. READ REV RECORD 1. READ FWD RECORD 1. READ FWD RECORD 2. CLEAR DATA BYTE SWAP. READ FWD RECORD 3. READ FWD RECORD 4. CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 8 PAGE 7 3 SEQ 0027 }ggg 5.2 TEST 2 - * NN N N N N N N NN N N N NN NN N N N NN N N N W N W RRERRRPRRRRN ww&wwwwu WWWWWWAINNNONNNNINNN = b e e b a —a a a a0 00 NOWVNSWN = OOVRNOWVNSWN=OO IR VS WN=OVRNOVMS WSOV N NS WN <OV 1303 1304 1305 1306 DATA RELIABILITY. 1. THE TAPE IS INITIATED WITH THE FOLLOWING COMMANDS : SET CHARACTERISTIC 40 REWIND WRITE 64 RECORDS OF RANDOM LENGTH AND DATA 1 1 1 1 } 2. 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. 3. AT _THE END OF EACH PASS, A REWIND COMMAND IS ISSUED AND A PERFORMANCE REPORT IS PRINTED. NOTE: 5.3 TEST 3 - ) D D ) ) D D ad D —d b D ) D ) ) D —d D D el ) wvivawiawnvinanawn — ) ) D e o D WWWWWWWW IF A RESTART COMMAND IS USED TO INITIATE TEST 1, THE INITIAL REWIND COMMAND IS NOT ISSUED. 5.4 TEST & - f REWINDS AND WRITES RECORDS OF RANDOM LENGTHS | READ COMPATABILITY/READ UTILITY. REWINDS AND READS ENTIRE TAPE, FORWARD AND REVERSE. 5.5 TEST 5 - 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 6.1 GENERAL THE TSO5 TAPE SUBSYSTEM CONSISTS OF A TSVOS Q-BUS CONTROLLER CONNECTED TO A TSOS DRIVE. FROM A SOF TWARE VIEWPOINT B?ISAsgNFIGURATION IS UNIQUE (FOR A Q-BUS DEVICE) IN A NUMBER A. ONLY ONE REGISTER MAY BE WRITTEN - TSDB (TAPE SYSTEM DATA BUFFER), B. TWO REGISTERS MAY BE READ = TSSR AND TSBA (TAPE SYSTEM STATUS REGISTER AND TAPE SYSTEM BUS ADDRESS REGISTER), C. COMMANDS ARE NOT WRITTEN TO THE DRIVE; RATHER, COMMAND POINTERS ARE WRITTEN WHICH POINT TO COMMAND PACKETS SOME- WHERE IN CPU MEMORY. THE COMMAND POINTER IS USED BY THE TSO5 SUBSYSTEM TO FETCH THE WORD(S) WITHIN THE COMMAND PACKET. | WRITE COMPATABILITY/WRITE UTILITY. AND RANDOM DATA FROM BOT TO EOT. ) D ) D D D cd D ) D 1 } THE WORDS WITHIN THE COMMAND PACKET ARE: Jetsellieliatyiyiiis gt —c—e l . CVTSEAQ TSVOS DATA RELIABILITY MACRO M1113 c3 PAGE 7-1 25-MAY-82 09:51 SEQ 0028 ) 358 359 1. 360 361 D D D e D 2. 3. 332§ &. 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. i IF EITHER OF THE ABOVE CONDITIONS IS UNTRUE AT ‘‘JOB DONE' OR "'COMMAND INITIATION'' TIME,IT MAY BE NECESSARY 373 E. EXTENDED STATUS REGISTERS ARE NOT READ DIRECTLY FROM DRIVE REGISTERS; RATHER, A '‘GET STATUS'' COMMAND IS ISSUED WHICH WILL CAUSE THE TSOS TO TRANSFER EXTENDED ) e ) D s 364 365 366 367 368 369 TO GET THE EXTENDED STATUS REGISTERS TO DETERMINE WHAT ACTION IS TO BE TAKEN AND/OR LOG THE ERROR INFORMATION. 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. F. e d W THE TSDB MUST BE WRITTEN WITH A DATO INSTRUCTION TO PROPERLY WRITE THE COMMAND POINTER. A DATOB WILL CAUSE A MAINTENANCE FUNCTION. A DATO TO THE TSSR WILL CAUSE SUBSYSTEM INIT. - (1] W D d ) ) ) D i d D d e 8 Sggg Ng\fl & BEYIREES =0V NOWVIS~ d D ) ) D 370 g;} COMMAND PACKETS MUST RESIDE ON DIVIDE BY FOUR MEMORY BOUNDARIES (AS OPPOSED TO DIVIDE BY 2 OR WORD BOUNDARIES) . CVTSEAQD TSVOS DATA RELIABILITY MACRO M1113 6.2 25-MAY-82 09:51 0D 3 PAGE 8 SEQ 0029 Q-BUS INTERFACE SPECIFICATIONS TSV05/ TS05 INT. VECTOR UNIBUS ADDRESS REGISTER FIRST 224 772520 772522 TSBA/TSDB TSSR ' CVTSEAQO TSVO5 DATA RELIABILITY MACRO M1113 E 3 PAGE 9 25-MAY-82 09:51 SEQ 0030 }282 6.3 BIT DEFINITIONS FOR TSV05/TSO5 REGISTERS 1405 1406 }28; 6.3.1 TSV05/TSOS REGISTER SUMMARY 1409 1410 15 1412 1413 'A15! (RZ0) TSBA i i 'A14!A131A12! i i TETTE !AT1!A10!A09! 'AOB!AO7!A06' T 'AOS!AO4'AO3! 'AO2!AO1!ACO! 1415 1416 'P1S! W/0) TSDB i+ i 1P14!P13IP12! b i TE TR !P11!P10!P09! 'POB!PO7!PO6! 'POS!PO4!PO3! R TR T b e e !'PO2!P17!P16! 1418 1419 'SC ! ! O !SCE!RMR! !NXM!NBA!A17! 'A16!SSR!OFL! !'FC1!FCO!TC2! 'TC1!TCO! O ! (R©0) TSSR ¢ ! ! ¢ 1! % 0 PM OO0 0o gy 1420 1421 1422 + 14 + ¢ 13 + 12 + 1 + BT ! 10! 0! 0! W0 TSpBX i i d T d ¢ 10 + 09 tocet 08 07 toe=t 'P21P20!P19! IP1B! b i 06 + 05 + ¢ 04 tomed 03 02 01 00 ¢ tecctocatocnay (TSDBX EXISTS ONLY WHEN ENABLED BY THE EXTENDED 1426 1427 'TMK! XSTO i 8 1429 1430 ES7¥¢ DLT! ¢ ' O!COR! O ! !0!0!'O0!RBP!O'!O!''O0!'!0'O0"' 'O 'UN'O' ! § ! 1% %t ¢ 11?1 :] 23 % ! §' ' 1 1} 1432 1433 'OPM! P 'RCE! O ! 0 ! ! O !WCF! O ! ! O !'RL7!RL6! 'RLS'RL4'RL3! 'RL2!RL1'RLO! A TR TR I T S T I A et O At i e B st Al 1435 1436 1438 1439 1440 1441 }22% 14644 1445 1446 1447 1448 1449 1450 1451 }22% }22? 1456 1457 1458 1459 ! 'RLS!LET!RLL! B i !'WLE!NEF!ILC! R T MICRO DIAGNOSTIC ERROR CODE XST3 i 'HSP! RCE! 0!O0 XST4 & 1 i i 0 0 O tommt tecctocctocnt tecctecctecct 'ILA!MOT!ONL' T ' 0 !OPI! RN A 0! i tecctocntonnt 'IE 'VCK'PED' i i O 'WLK!BOT!EOT! !REV!TRFIDCK! ! 0 ! O 'RIB! tecctecctenct teccteccteced e e N I T B WRITE RETRY COUNT A ! i TERMINATION CLASS CODES (TSSR TCO-T(C2): 0 = 1 = 2 3 & = = = 5 6 7 = = = NORMAL TERMINATION ATTENTION CONDITION TAPE STATUS ALERT FUNCTION REJECT RECOVERABLE ERROR - TAPE POSITION = ONE RECORD DOWN TAPE FROM START OF FUNCTION RECOVERABLE ERROR = TAPE NOT MOVED UNRECOVERABLE ERROR = TAPE POSITION LOST FATAL CONTROLLER ERROR FATAL CLASS CODES (TSSR FCO-FC1): 0 1 2 3 = = = = MICRO DIAGNOSTIC FAILURE. SEE ERROR CODE BYTE (XST3) FOR FAILED FUNCTION. RESERVED NOT USED RESERVED FOR FUTURE USE ALWAYS READ AS A 0 CVTSEAQD TSVOS DATA RELIABILITY MACRO M1113 F 3 PAGE 10 25-MAY-82 09:51 SEQ 0031 1461 146 146 1464 1465 1466 }22; 6.3.2 TSVO5S STATUS REGISTER (TSSR) e Q-BUS ADDRESS + 2 = READ ONLY 1469 15 1470 + 14n 1472 }2;; 1479 1480 1481 1482 1483 13 ¢ + tomet BIT NAME 15 s¢ B o o TCC - o S jecojocctoccd 08 ¢ 07 + 06 + + 05 ¢ 04 + 03 02 01 ¢+ tecctccctecest + + !'A16!SSR!OFL! 'FC1!FCO!TC2! !TC1!TCO! O ! ¥ ¢ ' BY!® '} '} OGR! I ! 72 jecctecatccnd jaced ¢ fme P o SPECIAL CONDITION. WHEN SET, INDICATES THAT THE LAST COMMAND DID NOT COMPLETE WITHOUT INCIDENT. SPECIFICALLY, EITHER AN ERROR WAS DETECTED OR AN EXCEPTION CONDITION OCCURRED. EXCEPTION CONDITIONS CAN BE TAPE MARKS ON READ THE TERMINATION CLASS BITS ARE SOMETHING OTHER THAN O (UNLESS RMR IS THE ONLY ERROR = SEE RMR). - - 1493 13 SCE FCO 1495 }289 RESERVED (ALWAYS A 0) SANITY CHECK ERROR-SETS WHEN THE CONTROLLER DETECTS AN ABNORMAL CONDITION WITHIN ITSELF DURING EXECUTION OF IT'S FUNCTIONS AND THE PROBLEM IS SERIOUS ENOUGH THAT A MESSAGE PACKET IS NOT STORED. 12 RMR S 11 NXM 4/5 ;g}f REGISTER MODIFICATION REFUSED. SET BY THE TSVOS WHEN A _COMMAND POINTER IS LOADED INTO TSDB AND SUB=-SYSTEM READY (SSR) IS NOT SET. NOTE THAT THIS BIT CAUSES SPECIAL CONDITICN BUT NO TERMINATION CLASS (IN FACT, THE TSO5 NEVER SEES THIS ERROR) BECAUSE ON A SYSTEM WITH NO BUGS, THIS BIT MAY COME UP ON AN ATTENTION MESSAGE. IF ATTNS ARE NOT ENABLED, THIS BIT COMING UP IS AN INDICATION OF EITHER A FATAL CONTROLLER ERROR OR A SOF TWARE BUG. NON-EXISTENT MEMORY. SET BY THE TSVOS WHEN TRYING TO TRANSFER TO OR FROM A MEMORY LOCATION WHICH DOES NOT EXIST. MAY OCCUR WHEN FETCHING THE COMMAND PACKET, FETCHING OR STORING DATA, OR STORING THE MESSAGE PACKET. 10 NBA S 00 + DEFINITION - RMR, AND NXM. % 1515 1516 1517 09 REVERSE MOTION AND AT BOT, EOT WHILE MAY ALSO BE SET BY THE ERROR BITS CONTAINED IN THE TSSR REGISTER: SCE, }23} 1509 1510 151 1512 10 COMMANDS, 1488 }283 1499 1500 1501 1502 1503 1504 1505 1506 ;ggg 11 tecctccctec=t WRITING, ETC. 1487 1498 tecct jeccteccctccnd 1484 1485 1486 1494 12 'SC ! ! O !SCE!RMR! !NXM!NBA!A17! : +4¢ ¢ §8 $3 & ! 1‘73 1474 1475 1476 1% + NEED BUFFER ADDRESS. WHEN SET, INDICATES THAT THE TSO5 NEEDS A MESSAGE BUFrER ADDRESS. THIS BIT IS CLEARED DURING THE SET CHARACTERISTICS - 3 | CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 PAGE6 10-1 }g}g SEQ 0032 COMMAND (IF A GOOD ADDRESS WAS GIVEN). 1520 1521 152% }gg‘ 09 A7 S BUS ADDRESS BIT 17. A17_AND A16 (BIT 08) TRACK THE VALUES OF BITS 17 AND 16 OF THE TSBA REGISTER. LOADED FROM TSDB BITS 01-00 WHEN TSDB IS WRITTEN. }gsz 08 A16 ) BUS ADDRESS BIT 16. 1527 07 SSR S SUB=-SYSTEM READY. 1528 }g%g WHEN SET, INDICATES THAT THE TSV05/TS05 SUBSYSTEM IS NOT BUSY AND IS READY TO ACCEPT A NEW COMMAND POINTER. 1531 1532 1533 }ggg 06 OFL S,1.,3 1536 05 FO1 7 1537 SEE A17 (BIT 09). 1538 1539 OFF=LINE. WHEN SET, INDICATES THAT THE TSOS5 IS OFF=LINE AND UNAVAILABLE FOR ANY TAPE MOTION COMMANDS. THIS BIT CAN CAUSE A TERMINATION CLASS OF 1 (ON ATTN INTERRUPT) OR 3 (RESULTS IN NEF). FATAL TERMINATION CLASS 01. 04) ARE USED TO INDICATE FC1 AND FCO (BIT THE TYPE OF FATAL ERROR WHICH HAS OCCURRED ON THE TS0S5. THESE BITS ARE VALID ONLY WHEN SC IS SET AND THE }gz? TERMINATION CLASS CODE BITS ARE ALL SET (111), 04 FCO 7 FATAL TERMINATION CLASS 00. 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 }ggg 03 T1C2 S TERMINATION CLASS BIT 02. THIS BIT, ALONG WITH THE TC1 AND TCO BITS, ACT AS AN OFFSET VALUE WHENEVER AN ERROR OR EXCEPTION CONDITION OCCURS ON A COMMAND. EACH OF THE EIGHT POSSIBLE VALUES OF THIS FIELD REPRESENT A PARTICULAR CLASS OF ERRORS OR EXCEPTIONS. THE CONDITIONS IN EACH CLASS HAVE SIMILAR SIGNIFICANCE AND, AS APPLICABLE, RECOVERY PROCEDURES. THE CODE PROVIDED IN THIS FIELD IS EXPECTED TO BE UTILIZED AS AN OFFSET INTO A DISPATCH TABLE FOR HANDLING OF THE CONDITION. }ggg 02 T1C1 S TERMINATION CLASS BIT 01. SEE TC2 (BIT 03). }ggg 01 TCO S TERMINATION CLASS BIT 00. SEE TC2 (BIT 03). 1560 1561 00 - - NOT USED. ~N ViAW 1 1 1 O 1 1 1 SHRRGR }gfi% Q-BUS ADDRESS + 2 = WRITE ONLY SUBSYSTEM INITIALIZE (ALWAYS A 0) SEE FC1 (BIT 05). |' CVTSEAQ TSVOS DATA RELIABILITY MACRO M1113 H 3 PAGE 11 25-MAY-82 09:51 SEQ 0033 1569 }g;? 6.3.2.1 TSVOS5 EXTENDED DATA BUFFER REGISTER (TSDBX) 1572 1573 1575 1576 }g;; 07 ! ! TSDBX ! P 1583 : NAME T(C DEFINITION 15 8T - BOOT COMMAND BIT. WHEN WRITTEN TO A 1,WITH SSR=1, CAUSES THE TAPE TO BE REWOUND TO 80T, THE FIRST TAPE RECORD TO BE SKIPPED, AND THE 1585 }ggg SECOND RECORD TO BE LOADED INTO CPU MEMORY SPACE STARTING AT LOCATION 0. :'lggg 14-12 1590 11-08 P<21:18> 1591 }gg% }gg‘; }ggg RESERVED (ALWAYS A 0) 6.3.3 RESERVED (ALWAYS A 0) EXTENDED STATUS REGISTER 0 (XSTATO) 1602 15 }ggg :m:: 1607 1608 1609 BIT NAME 15 T 1612 1613 e o 146 13 - TCC - - 5.2 1614 1622 1623 1624 1625 12 11 10 09 sRLS.:LE'l'aflLL''ULE‘NEF'ILC' }2}2 1617 1618 1619 1620 1621 COMMAND POINTER BITS 21-18. WHEN THE TSDBX IS WRITTEN AND SSR=1, THE DATA IS LOADED INTO BITS 21-18 OF THE INTERNAL TSBA REGISTER. 07-00 1600 1601 } g} ? (TSDBX EXISTS ONLY WHEN ENABLED BY THE EXTENDED FEATURES SWITCH ON THE M7196) BIT 1584 1596 1597 'P2‘|'P20'P19' 'P'B! s $moet bommbocmtenet teeetecctbocet boaet 1579 }gg(‘) 1582 - 0 ' 0 ' 08 07 06 'ILA'MT'WL' 05 'IE 04 'VCK'PED' RLS 2 02 @ = - TAPE MARK DETECTED. SET WHENEVER A TAPE MARK COMMAND AND AS A RESULT OF THE WRITE TAPE MARK WAS DETECTED DURING A READ, 01 GO 'ULK'BOT'EOT' DEFINITION OR WITE TAPE MARK RETRY COMMANDS. 14 03 SPACE, OR SKIP RECORD LENGTH SHORT THIS BIT INDICATES THAT EITHER THE RECORD'S LENGTH WAS SHORTER THAN THE BYTE COUNT ON READ OPERATIONS, SPACE RECORD OPERATION ENCOUNTERED A TAPE MRK OR BOT BEFORE THE POSITION COUNT WAS EXHAUSTED, OR A SKIP TAPE MARKS ~ COMMAND WAS TERMINATED BY ENCOUNTERING BOT OR A DOUBLE TAPE MARK (IF THAT OPERATIONAL MODE IS ENABLED SEE LET) PRIOR TO EXHAUSTING THE POSITION COUNTER VoV~ MACRO M1113 I 25-MAY-82 09:51 13 LET 2 LIS IS 33 M d D d D e 12 RLL 2 e D e ) e LOGICAL END OF TAPE. 1651 SET ONLY ON THE SKIP TAPE MARKS COMMAND WHEN EITHER TWO CONTIGUOUS TAPE MARKS ARE DETECTED OR WHEN MOVING OFF OF BOT AND THE FIRST RECORD ENCOUNTERED IS A TAPE MARK. THE SETTING OF THIS BIT WILL NOT OCCUR UNLESS THIS MODE OF TERMINATION IS ENABLED THROUGH USE OF THE SET CHARACTERISTICS COMMAND. RECORD LENGTH LONG. WHEN SET, THIS BIT INDICATES THAT THE RECORD READ WAS LONGER THAN THE BYTE COUNT SPECIFIED. 11 WLE 3.6 WRITE LOCK ERROR. WHEN SET, INDICATES THAT A WRITE OPERATION WAS ISSUED BUT THE MOUNTED TAPE DID NOT CONTAIN A WRITE ENABLE RING OR THE WRT LOCK SWITCH ACTIVATED DURING THE OPERATION. 10 NEF 3 NON-EXECUTABLE FUNCTION. WHEN SET, INDICATES THAT THE COMMAND COULD NOT BE EXECUTED DUE TO ONE OF THE FOLLOWING CONDITIONS: ) d d D d — SE0 0034 = o — 3 PAGE 11-1 D e ) e o0 D d e CVTSEAD TSVOS DATA RELIABILITY = THE COMMAND DIRECTION BUT SPECIFIED THE TAPE REVERSE WAS TAPE ALREADY POSITIONED AT BOT. THE ISSUING OF ANY MOTION COMMAND EXCEPT - g §$§$$8§&$$S$S$ D =D D b D 25-MAY-82 09:51 J = WOV ILC WHEN THE VOLUME CHECK BIT IS SET. ANY _COMMAND, EXCEPT GET STATUS OR DRIVE INITIALIZE, WHEN THE TSO5 IS OFF<-LINE. ANY WRITE COMMAND WHEN THE TAPE CONTAIN A WRITE STATUS = WLS). ILLEGAL COMMAND. AND CITHER MODE FIELD VS D D D d —_—d e 09 DOES NOT ENABLE RING (WRITE LOCK SET WHEN A COMMAND IS ISSUED ITS COMMAND FIELD OR ITS COMMAND CONTAINS CODES WHICH ARE NOT SUPPORTED BY THE TS05. 08 ILA 07 MoT ILLEGAL ADDRESS. TAPE IS MOVING. 06 05 ON LINE. WHEN SET, INDICATES THAT THE TSO5 ON-LINE AND OPERABLE. IE INTERRUPT ENABLE. ‘I:NTERRLPT 1677 04 (MORE THAN 18 BITS OR ODD WHEN AN EVEN ADDRESS IS REQUIRED.) e D — SEQ 0035 = d ) D i - oMM 3 PAGE 12 D D MACRO M1113 VOV W | CVTSEAO TSVOS DATA RELIABILITY V(K ENABLE REFLECTS THE BIT SUPPLIED STATE ON OF THE IS 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 (CVC) BIT IN THE COMMAND HEADER WORD. CAN CAUSE A TERMINATION CLASS OF 3. THIS BIT 03 PED 02 WLK s.3 SET, INDICATES THAT THE TAPE _DOES NOT HAVE A WRITE-ENABLE RING INSTALLED. THE TAPE IS, THEREFORE, WRITE PROTECTED. 01 8or $.3 BEGINNING OF TAPE. 00 EOT 5.2 END OF TAPE. THIS BIT IS SET WHENEVER THE TAPE IS POSITIONED AT OR BEYOND THE END OF TAPE PHASE ENCODED DRIVE. ALWAYS SET, INDICATES THAT THE TSO5 IS CAPABLE OF READING AND WRITING ONLY 1600 BPI PHASE ENCODED DATA. WRITE LOCKED. WHEN MOUNTED REEL OF WHEN SET, INDICATES THAT THE TAPE IS POSITIONED AT THE LOAD POINT AS ?figgffb BY THE BOT REFLECTIVE STRIP ON THE REFLECTIVE STRIP. CVTSEAOD TSVOS5S DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 PAGEK 1; ) ) D D ~ DD D P Po EIFKR W) = SSONOWJ\U‘ NSO OBV N W=D 38 6.3.4 15 cd i DLT! ! ! NAME 13 12 tecctecctecct ! O !COR! O ! ! H : ! 11 10 09 jecctecctocet 08 07 06 tecctccctecct 05 06 03 feccteccteccd 'O 'O 'O 'RBP!O'O!''O0O'O'O"' ! ! ! ! ! ! ! ! ! $ : DEFINITION B DATA LATE. SET WHEN THE FIFO IS FULL ON A READ OR_ EMPTY ON A WRITE. THESE CONDITIONS OCCUR WHENEVER THE Q-BUS LATENCY EXCEEDS THE DATA TRANSFER RATE OF THE TSOS. . NOT USED. S CORRECTABLE DATA. CORRECTABLE DATA ERROR HAS BEEN ENCOUNTERED. D ) D D D NSNNNNN SNNSNNN WW W NN 02 01 00 feccteccteced 'O 'UNC'O' S S $ : (ALWAYS A 0) RESERVED (ALWAYS A 0) 4 D el d D d — e 14 TCC ) i D D ) D D EXTENDED STATUS REGISTER 1 (XSTAT1) tecet BIT SEQ 0036 07-02 ¢ 00 READ BUS PARITY ERROR. SET WHEN CONTROLLER DETECTS A PARITY ERROR ON THE READ DATA LINES OF THE TRANSPORT BUS. RESERVED (ALWAYS A 0) 4 UNCORRECTABLE DATA ERROR. CVTSEAO TSVOS5S DATA RELIABILITY 1740 1741 1742 1743 MACRO M1113 L 25-MAY-82 09:51 6.3.5 3 PAGE 14 SEQ 0037 EXTENDED STATUS REGISTER 2 (XSTAT2) 15 14 13 12 11 boeedt v 'OPM! !RCE! 0 ! O ! toeet ¢+ 08 ! O !WCF! O ! %% % % 07 06 05 ! O !RL7!RL6! %®E®E %R % 04 03 02 'RLS!RL4!RL3! R® R % 01 BIT NAME TCC DEFINITION 15 OoPM 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. 3% R (TAPE MOVING) RESERVED (ALWAYS A 0) wCF 7 WRITE CLOCK FAILURE. SET DURING A WRITE TO INDICATE THAT THE FIFO IS NOT BEING EMPTIED BY THE TRANSPORT. 09-08 RESERVED (ALWAYS A 0) 07-00 RL 7-0 REVISION LEVEL. 00 'RL2!RL1!RLO! +3% 10 % 09 ¢ 13-1 & 10 & 1 < CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 1772 1773 };;g 1776 1777 1778 25<MAY -82 09:51 6.3.6 } ;gg SEQ 0038 EXTENDED STATUS REGISTER 3 (XSTAT3) ’ g 15 };g? 1783 1784 1785 n3 PAGE 15 14 % BIT 13 12 11 10 09 08 MICRO DIAGNOSTIC ERROR CODE NAME TCC 07 06 s 0 ;OPlz 05 04 03 ;REV;T“F;DCK; o o MICRO DIAGNOSTIC ERROR CODE. };8? 07 RESERVED (ALWAYS A‘pr 1792 1793 };gg 06 0PI 6 OPERATION INCOMPLETE. SET WHEN A READ, SPACE, OR_ SKIP OPERATION HAS MOVED 25 FEET OF TAPE WITHOUT DETECTING ANY DATA ON THE TAPE. 1796 };gg 05 REV S DIRECTION OF CURRENT OPERATION WAS REVERSE (BUT IS O IF REWIND OR FORWARD) };33 04 - - RESERVED (ALWAYS A 0) 1801 1802 }ggz 03 (kK S.6 DENSITY CHECK. SET WHEN A PE IDENTIFICATION BURST (IDB) WAS NOT MOVING OFF OF BOT. 1805 02-01 1808 1809 1810 }g}} 00 6.3.7 00 g 0 s 0 sfllfli > 15 10 08 1813 }g}g 01 DEFINITION };%g 1807 02 (SEE LIST OF CODES BELOW). DETECTED WHEN RESERVED (ALWAYS A 0) RIB 2 REVERSE INTO BOT. A READ, SPACE, OR SKIP COMMAND ALREADY IN PROGRESS HAS ENCOUNTERED THE BOT MARKER WHEN MOVING TAPE IN THE REVERSE DIRECTION. TAPE MOTION WILL BE HALTED AT BOT. , EXTENDED STATUS REGISTER & (XSTAT4) 1816 1817 1818 15 1% 12 11 10 09 }gg? ;HSP; ;RCE; 0 ; 0 0 0 0 1822 $usnt fusctesstennt fesstensfened jesstesstesnd Susnbesdencd PO 1823 1824 1825 1826 1 827 BIT >o NAME o TC(CC - - 13 DEFINITION - o - 08 0 2 07 06 05 04 03 02 01 00 WRITE RETRY COUNT E P — CVTSEAO TSVOS DATA RELIABILITY MACRO M1113 25-MAY-82 09:51 PAGEB 1?-1 1830 1 1831 183% 183 1834 1835 1836 1837 1838 1839 1840 1841 184% 184 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 15 HSP S SEQ 0039 HIGH SPEED. WHEN SET,INDICATES THAT THE TRANSPORT IS OPERATING IN MiGH SPEED MODE.(100IPS) WHEN CLEAR,THE TRANSPORT IS OPERATING IN LOW SPEED MODE.(25IPS) 16 RCE 13-8 7-0 WRC 6 RETRY COUNT EXCEEDED. WHEN SET,INDICATES THAT THE CONTROLLER WAS BUFFERING WRITE DATA AND COULD NOT SUCESSFULLY OUTPUT THE BUFFERED RECORD WITHIN THE SPECIFIED NUMBER OF RETRIES. CAUSES TAPE POSITION LOST TERMINATION. - RESERVED (ALWAYS A 0) ) WRITE RECOUNT COUNT STATISTIC. THIS FIELD INDICATES, WHEN THE CONTROLLER IS BUFFERING WRITE DATA RECORDS, THE TOTAL NUMBER OF CONTROLLER INITIATED RETRIES PERFORMED IN ORDER TO WRITE THE PREVIOUS BUFFERED RECORD. THIS COUNT IS CLEARED AFTER IT IS DISPLAYED. 7.0 DIAGNOSTIC HISTORY REVISION A = MAR 1982 = MODIFIED CZTSHC FROM TS11 FOR TSVO5S PROGRAM HEADER AND TABLES 4 MACRO M1113 25-MAY-82 09:51 PAG% 16 SEQ 0040 +TITLE PROGRAM HEADER AND TABLES .SBTTL PROGRAM HEADER .ENABL = 002000 ABS,AMA 2000 e : : THE PROGRAM HEADER IS THE INTERFACE BETWEEN THE DIAGNOSTIC PROGRAM AND THE SUPERVISOR. POINTER BGNRPT,BGNSW T ,BGNAU,BG ,BGNSF NDU L SNAME 000000 005000 027732 030040 002174 002204 032004 000000 000000 000001 000000 002124 000000 000000 HEADER CVTSE,.A,0,5000,1 ;DIAGNOSTIC NAME LSREV:: sREVISION LEVEL LSDEPO: : :0 LSUNIT:: :NUMBER OF UNITS LSTIML:: sLONGEST TEST TIME LSHPCP: : sPOINTER TO H.W. QUES. LSSPCP:: sPOINTER TO S.W. QUES. LSHPTP: : :PTR. TO DEF. H.W. PTABLE LSSPTP:: ;PTR. TO S.W. PTABLE LSLADP: : sDIAG. END ADDRESS LSSTA:: sRESERVED FOR APT STATS L$CO:: LSDTYP:: ;DIAGNOSTIC TYPE LSAPT:: sAPT EXPANSION LSDTP:: sPTR. TO DISPATCH TABLE LSPRIO:: sDIAGNOSTIC RUN PRIORITY LSENV]:: sFLAGS DESCRIBE HOW IT WAS SETUP +ASCII LASCII <ASCII <ASCII +ASCII .BYTE .BYTE /7C/ /7v/ /T/ /S/ /E/ 0 0 LASCII /A LASCII 70/ WORD O .WORD 5000 «WORD LSHARD «WORD LSSOFT «WORD LSHW «WORD LSSW «WORD LSLAST WORD O WORD O LWORD 1 WORD O «WORD LSDISPATCH WORD O LWORD O .BYTE 0 PROGRAM HEADER AND TABLES PROGRAM HEADER 000000 003 003 000000 000000 000000 002164 017546 000000 000000 024030 023756 000000 002136 104035 000000 021302 023714 023272 021274 000000 000000 65 000000 MACRO M1113 25-MAY-82 09:51 C & PAGE 16-1 LSEXP1:: ;EXPANSION WORD LSMREV:: sSVC REV AND EDIT # LSEF:: sDIAG. EVENT FLAGS SEQ 0041 .WORD CSREVISION CSEDIT .WCRD .WORD LSSPC:: LSDEVP:: : POINTER TO DEVICE TYPE LIST LSREPP:: ;PTR. TO REPORT CODE 0 0 0 0 LSDVTYP LSRPT LSEXP4:: 0 LSEXPS:: LSAUT:: sPTR. TO ADD UNIT CODE LSDUT:: sPTR. TO DROP UNIT CODE LSLUN:: ;LUN FOR EXERCISERS TO FILL LSDESP:: ;POINTER TO DIAG. DESCRIPTION LSLOAD:: sGENERATE SPECIAL AUTOLOAD EMT LSETP:: ;POINTER TO ERRTBL LSICP:: sPTR. TO INIT CODE LSCCP:: ;PTR. TO CLEAN-UP CODE : LSACP: :PTR. TO AUTO CODE LSPRT:: ;PTR. TO PROTECT TABLE LSTEST:: s TEST NUMBER LSDLY:: ;DELAY COUNT LSHIME:: sPTR. TO HIGH MEM 0 LSAU «WORD LSDU .WORD 0 .WORD LSDESC EMT ESLOAD .WORD 0 -WORD LSINIT .WORD LSCLEAN .WORD LSAUTO «WORD LSPROT -WORD 0 -WORD 0 .WORD 0 PROGRAM HEADER AND TABLES MACRO M1113 DISPATCH TABLE 25-MAY-82 09:51 D 4 PAGE 17 SEQ 0042 72 .SBTTL 7 DISPATCH TABLE 144 75 ; THE DISPATCH TABLE CONTAINS THE STARTING ADDRESS OF EACH TEST. 78 ’ ;9 s IT IS USED BY THE SUPERVISOR TO DISPATCH TO EACH TEST. 79 002122 002122 002124 002126 002126 002130 002132 8 002134 000005 DISPATCH S LSDISPATCH:: 024134 025622 026456 026652 027032 87 gg .SBTTL 90 144 93 ’ 3} .WORD § WORD WORD .WORD WORD .WORD T1 T2 T3 T4 TS5 DESCRIPTIVE TEXT ;2 LINES OF TEXT PRINTED TO THE OPERATOR TO IDENTIFY THE DIAGNOSTIC AND THE DEVICE UNDER TES 94 002136 002136 002136 002141 002144 002147 002152 002155 002160 002163 104 101 105 101 114 131 105 000 101 040 114 102 m 040 123 124 122 m m 124 124 124 95 002164 002164 002164 002167 124 060 123 065 126 000 LSDESC:: DESCRIPT DEVTYP LSDVTYP:: <DATA RELIABILITY TEST> .ASCIZ /DATA RELIABILITY TE LASCIZ /TSv0S/ <TSVOS> .EVEN PROGRAM HEADER AND TABLES 25-MAY-82 09:51 .SBTTL E & PAGE 18 SEQ 0043 DEFAULT HARDWARE P-TABLE 144 D SRER288289 DEFAULT HARDWARE P-TABLE MACRO M1113 ; THE DEFAULT HARDWARE P-TABLE CONTAINS DEFAULT VALUES OF D ed e : THE TEST-DEVICE PARAMETERS. THE STRUCTURE OF THIS TABLE R e S R Y N2S38SR — d ; IS IDENTICAL TO THE STRUCTURE OF THE RUN-TIME P-TABLE. 002172 002172 002174 002174 002174 002176 002200 002202 002202 000003 BGNHW DFPTBL .WORD LSHW:: DFPTBL:: 172520 000224 000000 .WORD .WORD .WORD L10000: 172520 224 O ENDHW ;TSDB ADDRESS. sVECTOR ADDRESS. sDRIVE ~#0 FOR DEFAULT L10000~-L $HW/2 PROGRAM HEADER AND TABLES SOF TWARE P-TABLE 114 NOWN d F & PAGE 19 SEQ 0044 SOFTWARE P-TABLE : YHE SOF TWARE P-TABLE CONTAINS THE VALUES OF THE PROGRAM PARMETERS THAT CAN BE CHANGED BY THE OPERATOR. - OV ) D 25-MAY-82 09:51 .SBTTL PON) b cd e i s — ad o MACRO M1113 BGNSW SFPTBL .WORD 8 oS ooons CLRFLG:: .BYTE RRANV:: .BYTE HAE:: .BYTE ERCVER:: .BYTE BADTSW: : éegf 1 0 0 0 (1) sCLEAR COUNTERS FLAG. *RESET RANDOM VARIABLES EACH PASS FLAG. HAIJ AFTER EACH COMMAND FLAG. DINT:: .BYTE IREC:: .BYTE CHGFLG:: .BYTE BYTE 0 0O O 0 ;sDISABLE INTERRUPTS FLAG. sINHIBIT ERROR RECOVERY FLAG. :CHANGE CMD SEQ TABLE FLAG. s SPARE . PIRE:: .BYTE CHAR: : CH.EAI sCHARACTERISTICS CODE (DEFAULT = 40). JCOMMAND 2 (DEFAULT = REWIND). 1 ) —d ) D — 13. .WORD WORD .WORD RANP & DATCNT .WORD RANP .WORD DATCNT ) ——d .WORD sINHIBIT RESIDUAL FRAMECOUNT ERROR REPORT FLAG. 2SPARE. .WORD RANP JPATTERN (DEFAULT = RANDOM). ) ) ——d O .WORD DATCNT BYTE COUNT (DEFAULT = MAX BUFFER SIZE). ) —d CMDD:: 0 BYTE sENABLE RECOVERABLE ERROR PRINTS FLAG. gAfiREAPE SWITCH TO REWRITE ON SAME SPOT £ DETECT BAD TAPE .WORD .WORD .WORD -WORD .WORD RANP ) D ) D .WORD -WORD WORD .WORD LWORD .WORD D N N 8 N *NUMBER OF OPERAT IONS 32000. JNUMBER OF OPERATIONS (DEFAUI.Y = 32000). 3 sCOMMAND & (DEFAULT = READ REV) 32000. 2 32000. JPATTERN JCOMMAND 3 (DEFAULT = WITE .’BVTE COUNT (DEFAULT = MAX BUFFER SIZE). JPATTERN (DEFAULT = RANDOM). BYTE COUNT (DEFAULT = MAX BUFFER SIZE). sNUMBER OF OPERATIONS (DEFAULT = 32, 000) sCOMMAND S5 (DEFAULT = READ FW) ;NUMBER OF OPERATIONS (DEFAULT = 32,000). PATYERN (DEFAULT = RANDOM) . .WORD 27. SEND OF CMD SEQ TABLE CODE (DEF) OR CMD 7 .WORD .WORD 32000. RANP sNUMBER OF OPERATIONS (DEFAULT = 32000). sPATTERN (DEFAULT = RANDOM). RANP DATCNT JPATTERN BYTE COUNT (DEFAULT = MAX BUFFER SIZE). .WORD 27. :END OF CMD SEQ TABLE CODE (DEF) OR CMD 8 .WORD 32000. sNUMBER OF OPERAHWS (DEFAULT = 32000). .WORD UTBUF.: HSSW:: 1 s COMMAND 6 (DEFAULT = REWIND). BYTE COUN JNUMBER OF WERATIWS .WORD TSIMD:: RDBUF:: sBYTE COUNT 15 1 1 .WORD RSN RRRS 251 o ) ) ) NNNNO — e L10001-LS$SW/2 SFPTBL:: ) w—d D OO VIV BB BN ) D ) cd - D e b D ) ) D b STRIEAAERTEN LSSW:: .WORD .WORD .WORD WORD .WORD DATCNT RANP 1 O O O *BYTE COUNT (DEFAULT = MAX BUFFER SIZE). JPATTERN (DEFAULT = RANDOM). *DEZAULT SWITCH SE"!NG *ENABLE READ BUFFERING JENABLE WRITE BUFFERING JRUN AT 100IPS SWITCH PROGRAM HEADER AND TABLES SOF TWARE P-TABLE 174 002322 };z 002324 177 002326 002326 178 179 002326 060000 000000 MACRO M1113 25-MAY-82 09:51 EXTFEA::.WORD BENBSW::.WORD L10001: ENDSW ENDMOD 0 0 G &4 PAGE 19-1 SEQ 0045 sEXTENDED FEATURES SOF TWARE SW 0=0FF;1=0N sBUFFER ENABLE SOF TWARE SW 0=0FF;1=ON SOF TWARE P=-TABLE 19 19 194 MACRO M1113 25-MAY-82 09:51 T PROGRAM HEADER AND TABLES H & PAGE 20 SEQ 0046 .TITLE GLOBAL AREAS .SBTTL GLOBAL EQUATES SECTION 203 204 002326 205 206 207 208 209 210 211 002326 BGNMOD 144 ; THE GLOBAL EQUATES SECTION CONTAINS PROGRAM EQUATES THAT s ARE USED IN MORE THAN ONE TEST. EQUALS s BIT DIFINITIONS BIT15== 100000 BIT14== 40000 B8IT13== 20000 BIT12== 10000 BIT11== 4000 B8IT10== 2000 B8IT09== 1000 BIT08== 400 BIT07== 200 BIT06== 100 BIT0S5== 40 BITO04== 20 8I1T03== 10 BIT02== & BIT01== 2 BIT00== 1 BIT9== BIT8== BIT7== BITé== BITS== BITé== BIT3== BIT2== BIT1== BITO== BITO09 BIT08 BITO0? BIT06 BITO0S BIT04 BIT03 BIT0? BITO1 BIT00 s EVENT FLAG DEFINITIONS : EF32:EF17 RESERVED FOR SUPERVISOR TO PROGRAM COMMUNICATION EF .START== EF .RESTART== EF.CONTINUE== EF .NEW== EF .PWR== 32. 31. 30. 29. 28. s PRIORITY LEVEL DEFINITIONS 000340 000300 PRI07== 340 PRI06== 300 : s s s s START COMMAND WAS ISSUED RESTART COMMAND WAS ISSUED CONTINUE COMMAND WAS ISSUED A NEW PASS HAS BEEN STARTED A POWER=-FAIL/POWER=-UP OCCURRED { | ' GLOBAL AREAS MACRO M1113 ' GLOBAL EQUATES SECTION 25-MAY-82 09:51 PAGE 20-1 SEQ 0047 PRIOS== 240 PRIO4== 200 PRIO3== 140 PRI0O2== 100 PRIOT== &0 PRI00== 0 JOPERATOR FLAG BITS EVlL== 4 LOT== 10 ADR== 20 IDU== ISR== UAM== BOE== PNT== PR]== IXE== IBE== 1ER== LOE== HOE== 40 100 200 400 1000 2000 4000 10000 20000 400090 100000 : REGISTER USAGE. RO R1 R2 R3 Ré R5 R6 R7 = = = = = = = = PASSES PARAMETERS TO/FROM DIAGNOSTIC SUPERVISOR. COMMAND SEQUENCE TABLE POINTER. GENERAL PURPOSE REGISTER. GENERAL PURPOSE REGISTER. GENERAL PURPOSE REGISTER. CURRENT LOGICAL DEVICE NUMBER X 2. STACK POINTER. PROGRAM COUNTER. ;THE FOLLOWING ARE BIT DEFINITIONS FOR THE TSSR REGISTERS. 177761 75.5C==100000 TS.UPE==40000 1S.SPE==20000 TS.RMR==10000 TS .NXM==4000 TS.NBA==2000 1S.A17==1000 TS.A16==400 TS.SSR==200 TS.0FL==100 TSC.FCC==177717 TSC.TCC==177761 sSPECIAL CONDITION BIT. sUNIBUS PARITY ERROR sSERIAL BUS PARITY ERROR. sREGISTER MODIFICATION REFUSED. sNON=EXISTENT MEMORY. sNEED BUFFER ADDRESS. ;BUS ADDRESS BIT 17. sBUS ADDRESS BIT 16. sUNIT READY BIT. sOFF LINE. sFATAL CLASS CODE MASK. sTERMINATION CLASS CODE MASK. sTHE FOLLOWING ARE BIT DEFINITIONS FOR THE COMMAND WORD 100000 040000 020000 010000 ACK.C==100000 CvC.C==40000 OPP.(C==20000 SWB.(==10000 sACKNOWLEDGE BIT sCLEAR VOLUME CHECK. sOPPOSITE BIT :SWAP BYTE BIT 002000 001000 000400 000200 000100 000100 000040 000040 000020 000020 000010 000004 000002 000001 A0D. C3==4000 BRF .C==4000 MOD. (2==2000 MOD.C1==1000 MOD.C0==400 1E.C==200 FMT.C1==100 VFY.C==100 FMT.C0==40 JMP.(C==40 CMD.C DLY.C CMD.C SEQ 0048 sMODE BIT 3 :BYTE/RECORD/F ILE COUNT FLAG BIT. NOT USED SSogsgf BgT USED INTERNALLY BY THIS PROGRAM ONLY. 0 lNTERflUPT ENABLE :FORMAT BIT 1 WRITE VERIFY FLAG BIT. sNOT USED BY TS0S. INTERNAL USE ONLY. sFORMAT BIT 0. :JUMP BIT-TO DIRECT THIS PROGRAM TO JUMP TO sA CERTAIN LOCATION IN THE COMMAND SEQUENCE TABLE. INTERNAL USE ONLY. sCOMMAND BIT & INSERT DS%AV3 INTERNAL USE ONLY. ;BIT DEFINITIONS FOR DEVICE CHARACTERISTICS. 000200 000040 000020 000040 CH.ESS==200 CH.EAI==40 CH.ERI==20 DF TSCH==CH.EAI sENABLE SKIP TAPE MARKS STOP (STOP AT LOGICAL EOT). sENABLE ATTENTION INTERRUPTS. :ENABLE MESSAGE BUFFER RELEASE INTERRUPTS. :DEFAULT CHARACTERISTICS CODE. ;BIT DEFINITIONS FOR EXTENDED CONTROL WORD 000040 000030 000020 EF .HSS==40 EF .RWB==30 EF .RBO==20 sENABLE HIGH SPEED SELECT sENABLE BOTH READ & WRITE BUFFERING ;ENABLE READ BUFFERING ONLY sTHE FOLLOWING INDICATES THE RELATIVE POSITIONS OF THE STATUS WORDS :IN THE MESSAGE BUFFER. 000004 000006 000010 000012 000014 000016 MS.RFC==4 MS.XS1 sSNO 26 264 265 266 267 268 269 270 2n 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 N 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 004000 004000 PAGE 20-2 ¢ 3 174 O nnn n nnn — —d —d ON 253 254 235 256 257 258 259 260 ggl = | 25-MAY-82 09:51 -NoWw I &~ mHmunnnn nnnnnNon —-—NH=ON o © MACRO M1113 | GLOBAL EQUATES SECTION wne GLOBAL AREAS MS.XS2 MS.XS3= MS.XS4==16 sRESIDUAL FRAME COUNT. sEXT STATUS REG 0 sEXT STATUS REG 1 sEXT STATUS REG 2 sEXT STATUS REG 3 sEXT STATUS REG 4 ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 0. 100000 040000 020000 010000 000100 000002 000001 X0.TMk==100000 X0.RLS==40000 X0.LET==20000 X0.RLL==10000 X0.0NL==100 X0.WLK== X0.807==2 X0.E0T==1 s TAPE MARK. sRECORD LENGTH SHORT. :LOGICAL EOT :RECORD LENGTH LONG. sON LINE BIT. :WRITE LOCK BIT :BOT BIT. :EOT BIT. ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 2. GLOBAL AREAS MACRO M1113 GLOBAL EQUATES SECTION g10 1 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 160000 000200 000100 25-MAY-B2 09:51 PAGE 20-3 X2. OPH==100000 X2.EFE==200 xe. 8FE-=100 SEQ 0049 sOPERATION IN PROGRESS, TAPE MOVING sEXTENDED FEATURES ENABLED ;BUFFERING ENABLED ;THE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 3. 000010 157400 X3.DCk==10 X3.RNY==157400 sDENSITY CHECK. sCAPSTAN RUNAWAY UDIAG ERROR CODE. sTHE FOLLOWING ARE BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 4. 100000 040000 X4 .HSS==100000 X4.RCE== 40000 sHIGH SPEED SWITCH INDICATING 100IPS sRETRY COUNT EXCEEDED sTHE FOLLOWING DEFINITIONS SHOW THE RELATIVE POSITIONS OF THE COMMAND sPACKET ENTRIES. 000000 000002 000004 000006 CP.CMD== CP.ADL== CP.ADH== CP.CNT== sCMDPKT+0==TS05 COMMAND. ;CMDPKT+2==BUFFER ADDRESS LOW. sCMDPKT+4==BUFFER ADDRESS HIGH. sCKDPKT+6==BYTE/F ILE/RECORD COUNT sMISCELLANEOUS DEFINITIONS. 000340 000012 INTPRI==FRI07 SCHCNT==12 000020 000020 004000 MSGCNT==20 DIACNT==20 DATCNT==2048. 177740 000007 000020 000020 153624 032561 177774 177740 RNOPSC==177740 RANP==7 RRECL==16. WRECL==16. sPRIORITY TO BE USED IN INTERRUPT STATE. sARBITRARY BYTE LENGTH FOR CHARACTERISTIC sBUFFER LENGTH. (EVEN #) sMESSAGE BUFFER LENGTH IN BYTES. (EVEN #) sDIAGNOSTIC COMMAND BUFFER EXTENT. sMAXIMUM RECORD LENGTH IN BYTES, sTHIS COUNT SHOULD BE A MULTIPLE OF 256 TO INSURE sPROPER READ/WRITE BUFFER ALLUCATION BY THE SUPER. sRANDOM # OF OPERATIONS MASK. sCODE TO SELECT RANDOM PATTERN. sREAD RECOVERY ATTEMPT LIMIT. sWRITE RECOVERY ATTEMPT LIMIT. RANBC==153624 sCONSTANT USED TO RESET RANDOM # GENERATOR BASE. RANSC==32561 CONSTANT USED TO RESET RANDOM # SAVE LOCATION. NINUSE==177774 :NOT IN USE CODE FOR DEVICE STATE TABLE. NCMD.C==ACK.C!CVC.C!OPP. C'SUB.C'HOD C3!MOD.C2!MOD.C1!MOD.CO!IE.C!FMT.CT!FMT.CO ;:NOT “'COMMAND* BITS. sTHE FOLLOWING DEFINES THE COMMAND WORD FOR EACH TSOS COMMAND. 100013 DRI== ACK.C!CMD.C3!CMD.C1:!CMD.CO 104001 RDF== ACK.C!BRF.C!CMD.CO 104401 RDR== ACK.C!BRF.C!MOD.CO!CMD.CO 104005 WRT== ACK.C!BRF.C!CMD.CO!CMD.C2 sWRITE COMMAND sDRIVE INIT. sREAD FORWARD sREAD REVERSE GLOBAL AREAS MACRO M1113 GLOBAL EQUATES SECTION 25-MAY-82 09:51 PAGE 204 SEQ 0050 367 ggg 164105 WIv== ACK.C'BRF.C!VFY.C!CMD.CO!CMD.C2 :WRITE VERIFY 370 104010 SRF== ACK.C'BRF.C!CMD.C3 373 104410 SRR== ACK.C'BRF.C'MOD.CO!CMD.C3 376 g;g 105407~ RNR== ACK.C'BRF.C'MOD.C1!MOD.CO!CMD.CO ;READ REV RETRY1 = REREAD NEXT REVERSE, IE. SPACE FWD, READ REVERSE 379 ggg 125401 RNF== ACK.C'BRF.C'OPP.C'MOD.C1'MOD.CO'CMD.CO ;READ REV RETRY2 = REREAD NEXT FORWARD, IE.READ FORWARD, SPACE REVERSE 382 105001 RPF== ACK.C'BRF.C'MOD.C1!CMD.CO 385 125001 RPR== ACK.C'BRF.C'OPP.C'MOD.C1!CMD.CO ;READ FWD RETRY2 - REREAD PREVIOUS REVERSE, IE. READ REVERSE, SPACE FORWARD 388 105005 WRR== ACK.C'MOD.C1!BRF.C!CMD.C2'!CMD.CO 391 102010 RWD== ACK.C!MOD.C2!CMD.C3 394 100012 MBR== ACK.C!CMD.C3!CMD.C1 397 100011 WIM== ACK.C'CMD.C3!'CMD.CO §;} 3;'3 ggz %39 ggg §3§ ggg ggg ;SPACE RECORD FORWARD :SPACE RECORD REVERSE ;READ FWD RETRY1 = REREAD PREVIOUS FORWARD, IE. SPACE REVERSE. READ FORWARD :WRITE RETRY sREWIND COMMAND ' ;MESSAGE BUFFER RELEASE ;WRITE TAPE MARK. 400 101011 WIR== ACK.C'MOD.C1!CMD.C3!CMD.CO 403 105010 SFF== ACK.C!BRF.C!MOD.C1!CMD.C3 406 105410 SFR== ACK.C!'BRF.C'MOD.CO'MOD.C1!CMD.C3 409 100017 GES== ACK.C'CMD.CO'CMD.C1'CMD.C2!CMD.C3 412 100411 ERS== ACK.C'MOD.CO'CMD.C3'CMD.CO 415 100412 UNL== 418 2}3 101012 CLN== ACK.C'MOD.C1'CMD.C3'CMD.C1 ;ERASE TAPE. 25} 140004 SCH== ACK.C'CVC.C'CMD.C2 423 140006 WSM== ACK.C!CVC.C!CMD.C2!CMD.C1 zg} 28? 23; 2}? 2}2 2}9 ;WRITE TAPE MARK RETRY. sSPACE FILE FORWARD sSPACE FILE REVERSE ;GET EXTENDED STATUS ;ERASE 3 INCHES OF TAPE ACK.C'MOD.CO'CMD.C3'CMD.C1 ;UNLOAD COMMAND ;SET DEVICE CHARACTERISTICS. JWRITE SUB-SYS MEM . 25-MAY-82 09:51 L PAGE 20-5 SEQ 0051 100006 DIA== ACK.C!CMD.C2!CMD.C1 ;DIAGNOSTICS. 000040 JMP== JMP.( sJUMP TO "W''TH COMMAND 000020 DLY== DLY.C sDELAY ‘N'* MS. 177777 END== 177777 ;END OF COMMAND SEQUENCES .SBTTL GLOBAL DATA SECTION J44 : THE GLOBAL DATA SECTION CONTAINS DATA THAT ARE USED : IN MORE THAN ONE TEST. : 002330 000000 000000 000000 000000 . = CMDPKT:: 0 0 9 460 002344 002340 100017 <.+3>8177774 0 0 : 453 002340 COMMAND PACKET. sMUST BE ON MOD & BOUNDRY. s1ST WORD IS TSO5 COMMAND. 22ND WORD IS THE BUFFER LOW ADDRESS. s3RD WORD IS THE BUFFER HIGH ADDRESS. s4TH WORD IS THE BYTE/RECORD/FILE COUNT. GET STATUS COMMAND PACKET. : = GSCPK:: .WORD <. +3>R177774 GES sMUST BE ON MOD 4 BOUNDRY. : MESSAGE BUFFER RELEASE COMMAND PACKET. 002344 . s <. +3>R177774 100012 BRCPK:: .WORD MBR : REWIND COMMAND PACKET (USED IN ERROR RECOVERY ONLY) 002350 sMUST BE ON MOD & BOUNDRY. = <. +3>8177774 RWCPK:: .WORD RWD 272 : WORK AREA FOR ANALYSIS OF MESSAGE PACKET CONTENTS. 474 002354 475 MSGPKT:: 467 468 002350 469 002352 470 102010 000001 +WORD .BLKW sMUST BE ON MOD & BOUNDRY. 1 8. s1ST WORD:: MESSAGE TYPE. 22ND WORD:: DATA FIELD LENGTH. s3RD WORD:: RESIDUAL FRAME COUNT. 24TH WORD:: XSTATO 2STH WORD:: XSTAT1 s6TH WORD:: XSTAT s7TH WORD:: XSTAT Fa T GLOBAL AREAS MACRO M1113 GLOBAL EQUATES SECTION GLOBAL AREAS MACRO M1113 GLOBAL DATA SECTION 481 25-MAY-82 09:51 PAGE 20-6 48 : 484 002374 485 002414 486 002434 487 002454 MSGPKO:: MSGPK1:: MSGPK2:: MSGPK3:: 489 490 : 48 488 491 002474 43 002476 - " MESSAGE PACKETS. .BLKW .BLKW .BLKW .BLKW 8. 8. 8. 8. MSGCNT CH.EAI ViV i N = b b d cd b d b wnd s O VRN NS WN - oo 002514 002374 2STH WORD:: HSP & BUFFER CONTROL ON EXT'D FEATURES TSSINT:: TSSINO TSSINI TSSIN2 526 5 : TSSIN3 000000 000000 000000 :1ST WORD:: SEL 0 :2ND WORD:: SEL 2 :3RD WORD:: SEL 4 & & & :TS05 ;TS05 :TS05 ;DATA DATA BUFFER ADDRESSES. STATUS REGISTER ADDRESSES. VECTOR ADDRESSES. BUFFER ADDRESS REGISTER. :DEVICE 0. :DEVICE 1. :DEVICE 2. :DEVICE 3. ADDRESSES OF INTERRUPT HANDLING ROUTINES. 521 002554 522 002556 523 002560 254 002562 sDEVICE 0. :DEVICE 1. :DEVICE 2. :DEVICE 3. TSOS CODE LEVELS, WILL BE STORED AFTER SCH CMD IN BASIC FUNCTION TEST TSSCL:: 0 0 0 0 : #0 #1 # # ADDRESSES OF MESSAGE PACKETS. MSGPK3 000000 DEVICE DEVICE DEVICE DEVICE TSOS REGISTER ADDRESSES. MSGPKA:: MSGPKO MSGPK 1 MSGPK2 : FOR FOR FOR FOR WRITE SUB-SYSTEM MEMORY CHARACTERISTIC BLOCK. TSDB:: .BLKW TSSR:: .BLKW TSVCT:: .BLKW TSBA==TSDB : PACKET PACKET PACKET PACKET :3RD WORD:: MSG BUFFER LENGTH (BYTES) :4TH WORD:: CHARACTERISTICS WORD(SET BY SETUP ROUTINE). WSMBK:: 0 0 0 : sMESSAGE sMESSAGE :MESSAGE sMESSAGE ;1ST WORD:: MSGPKT ADDR LOCSET UP BY EXCUTE ROUTINE). 22ND WORD:: MSGPKT ADDR HI. 0 505 506 002514 507 002524 508 002534 s8TH WORD:: XSTATé SET CHARACTERISTIC BLOCK. SCHBK:: MSGPKO 0 : SEQ 0052 :DEVICE :DEVICE :DEVICE :DEVICE 0 1 2 3 : TSO5 EXT. FEA & BUF. ENA SW'S, WILL BE STORED AFTER SCH CMD IN BASIC FUNCTION TEST TSS5SW:: 0 0 0 sDEVICE 0 sDEVICE 1 +DEVICE 2 GLOBAL AREAS MACRO M1113 GLOBAL DATA SECTION 533 002602 25-MAY-82 09:51 060000 RS WILL ALWAYS CONTAIN THE PRESENT LOGICAL UNIT NUMBER X 2. DEVTBL:: 002626 BTADDR:: BTO 8T1 BT2 BT3 : COUNT R AREA. CNTBGN=. WRBC:: .BLKW RRBC:: .BLKW RFBC:: WRREC:: WRUNR:: RRREC:: RRUNR:: RFREC:: RFUNR:: .BLKW BT2:: BT3:: WRTYCT:: PASCNT:: 003376 000550 000000 003406 000000 000000 000000 000000 20 20 20 .BLKW .BLKW .BLKW .BLKW .BLKW .BLKW 4 & & & & & .BiKW .BLKW 21. 21. .BLKW .BLKW .BLKW .BLKW 21. 21. & & ;BYTES WRITTEN. :BYTES READ REV. *BYTES READ FWD. *RECOVERABLE WRITE ERRORS. :UNRECOVERABLE WRITE ERRORS. :RECOVERABLE READ REV ERRORS. *UNRECOVERABLE READ REV ERRORS. *RECOVERABLE READ FWDERRORS. :UNRECOVERABLE READ FWD ERRORS. SUNIT 0 BAT TAPE SPOTS LOG *UNIT 1 BAT TAPE SPOTS LOG SUNIT 2 BAT TAPE SPOTS LOG SUNIT 3 BAT TAPE SPOTS LOG *WRITE RETRY COUNTER :PASS COUNT. SCCNT:: .BLKW VFYCNT:: .BLKW HRDCNT:: .BLKW FTLCNT:: .BLKW 4 & & & *SPECIAL CONDITION COUNT. *COUNT OF TSOS DATA COMPARE ERRORS. :COUNT OF HARD ERRORS. :COUNT OF FATAL ERRORS. RECCNT:: & ;NUMBER OF RECORDS FROM BOT: CNTEND=. .BLKW CNTLEN==CNTEND=-CNTBGN : : 589 003406 590 591 003410 592 003412 593 003414 594 003416 NINUSE NINUSE END "WRTY'' TO LOG BAD TAPE SPOTS ON UNITS UNDER TEST BT0:: BT1:: 578 003356 579 003366 0 581 003376 NINUSE NINUSE BAD TAPE TABLE POINTER: USED BY WRITE RETRY ROUTINE : 0 561 002626 562 002666 563 002726 .WORD .WORD .WORD .WORD .WORD : 003244 sDEVICE 3 UNIT NUMBERS OF ALL DEVICES BEING TESTED(1-4). WHEN DEVICE IS NOT IN USE, IT,S LOCATION WILL = =3. ; 003046 S SEQ 0053 0 ; ; 177774 177774 177774 177774 177777 B PAGE 20-7 :END OF STATICTICAL COUNTERS. CLEARED :LENGTH OF STATISTICAL COUNTER AREA. THE FOLLOWING ARE THE DEFINITIONS OF VARIABLES USED BY THE PROGRAM. DATAWT:: .WORD DIABLK==DATAWT DATARD:: .WORD NCNT:: .WORD NCNT1:: .WORD BRFCNT:: .WORD 0 0 0 0 0 ON REWIND :AND WHEN RESTARTING OR CONTINUING TEST 2. ;WRITE BUFFER ADDRESS. :WRITE BUFFER ALSO USED FOR DIAG CMD. *READ BUFFER ADDRESS. *STORAGE FOR VALUE OF N. :TEMP STORAGE FOR VALUE OF N. :STORAGE FOR BPCR VALUE. GLOBAL AREAS MACRO M1113 GLOBAL DATA SECTION 177777 177777 177777 000000 000000 000000 25-MAY-82 09:51 PAGE 20-8 CMDWRD:: CMDSAV:: PCMDWD:: 003460 END 0 0 153624 32561 O O 0 0 CTCC:: .WORD RSSAVE:: .WORD 0 0 PATERN:: .WORD TSSREG:: WTMFLG:: .WORD .WORD s CONTAINS COMMAND WORD BEING EXECUTED PRESENTLY. :SAVE LOCATION FOR CMD WORD DURING ERROR RECOVERY sCONTAINS PREVOUS COMMAND WORD s CURRENT COMMAND LOGGING CODE :RANDOM WRITE LENGTH MASK, TO BE SET UP BY TESTS :RANDOM # GENERATOR BASE. :RANDOM # SAVE LOCATION. :TIME COUNT 1. sTIME COUNT 2. sJMP COMMAND LOOP COUNT. sJMP COMMAND LOCATION COUNT. 0 sPATTERN SELECT CODE. 0 O sCURRENT STATUS REGISTER. sWRITE TAPE MARK FLAG sCURRENT TERMINATION CLASS CODE. sLOCATION FOR SAVING CURRENT DEVICE POINTER. ERROR FLAG AREA, THESE FLAGS ARE CLEARED DURING INITIALIZATION AND : 000000 .WORD END END CMDLG:: .WORD LENMSK:: .WORD RANB:: .WORD RANS:: .WORD TIME1:: .WORD TIME2:: .WORD JLOOP:: .WORD JLOC:: .WORD H 616 003460 617 003462 618 003463 619 003464 620 003465 .WORD .WORD SEQ 0054 AFTER EACH COMMAND IS COMPLETED. BGNFLG=. RETRYC:: .WORD RPTCNT:: .BYTE WRTYFG:: .BYTE WRTYER:: .BYTE RECLOG:: .BYTE ERLOG:: .BYTE RWERR:: .BYTE UNREC:: .BYTE ERRREC: : éeELE 0 0 0 0 0 0 0 0 0 :# OF RECOVERY ATTEMPTS EXECUTED. :WRITE REPEAT ON SAME SPOT CNTR: 4 PER WRITE RETRY ;WRITE RETRY ON SAME SPOT IN PROGRESS FLAG ;WRITE RETRY ON SAME SPOT ERROR FLAG :RECORD COUNT HAS BEEN UPDATED FOR THIS RECORD. ;DATA BYTES AND ERRORS HAVE BEEN LOGGED FOR THIS RECORD. :READ/WRITE ERROR HAS OCCURED. sUNRECOVERABLE ERROR HAS OCCURED. :ERROR RECOVERY MODE. ENDERF=, : ADDITIONAL FLAGS, THESE FLAGS ARE CLEARED DURING INITIALIZATION. INTFLG:: .BLKW EOTFLG:: .BLKW BTPT:: .WORD EXPBOT:: .BYTE RANDOM:: .BYTE RPTFLG:: .BYTE VFYFLG:: .BYTE SWBFLG:: .BYTE IRE:: .BYTE DROPED:: .BYTE T1SwWB:: .BYTE ALLEOT:: .BYTE ERSFLG:: .BYTE 003526 ENDFLG=. : 651 003526 000 STAFLG:: & 4 0 0 0 0 0 0 0 0 0 0 0 s INTERRUPT OCCURRED FLAGS FOR EACH DEVICE. :EOT/BOT FLAGS FOR EACH DEVICE (XSTATO). :BAD TAPE SPOT POINTER TO BTO-BT3 VIA BTADDR sBOT IS EXPECTED, DO NOT ABORT ON BOT/FUNC RTI. :RANDOM EVERYTHING FLAG. :SET DURING WRITE/VERIFY COMMAND. :PERFORMANCE REPORT HAS BEEN REQUESTED. sENABLES SWAP BYTE FUNCTION WHEN NOT EQUAL TO ZERO. sINHIBIT RESIDUAL FRAME COUNT ERROR REPORT. :CURRENT UNIT HAS BEEN DROPPED sTEST1 SWAP BYTES FLAG :ALL UNITS @ EOT FLAG sERASE FLAG: DO ERASE AFTER A SPACE REV TO DELETE BADLV WRITTEN RECORD. 1 TO & ERASES LEAVING A 3 TO 12 INCH GAP MAY RESULT. .EVEN ADDITIONAL FLAGS, THESE FLAGS ARE CLEARED ONLY AFTER BEING CHECKED. .BYTE 0 sSTART FLAG = SET BY INIT CODE IF STARTING. GLOBAL AREAS MACRO M1113 GLOBAL DATA SECTION 68 88§§§o 000 000 000 000000 000000 25-MAY-82 09:51 PAGE 20-9 SEQ 0055 PWRFLG:: .BYTE TRAPDG:: .BYTE MISCFG:: .BYTE TSUNT:: +WORD TSNP: : WORD 0 0 0 O 0 sPOWER FAILURE FLAG = SET ONLY DURING INIT. sTRAPED AT & FLAG MISCELLANEOUS FLAG :NUMBER OF THE UNIT UNDER TEST PLUS HSSPEBUF sFOR PRINT OUT UNIT # ONLY OPERATOR FLAG SETTINGS PASSED BY DIAG. SUPERVISOR IN A 16 BIT WORD SEE GLOBAL EQUATES SECTION FOR FLAG BIT LIST 000000 OPFLAG:: éegzb 0 sREAD ONLY OPERATOR FLAG WORD sTHE FOLLOWING IS THE COMMAND SEQUENCE TABLE. THE TABLE ¢HAS DEFAULT VALUES AT PROGRAM LOAD AS SHOWN. THESE VALUES :CAN BE UPDATED BY A TEST OR BY OPERATOR INPUT. 668 003540 669 003542 - 670 003544 671 003546 672 003550 673 003552 674 003554 675 003556 676 003560 CMDSEQ:: -WORD .WORD WORD WORD CMDSEZ2:: .WORD WORD WORD .WORD .WORD «WORD RANP RDR DATCNT :RANDOM PATTERN. :READ REV. :MAX BUFFER LENGTH. -WORD .WORD «WORD RANP RDF DATCNT :RANDOM PATTERN, .WORD 003754 003756 003760 003762 706 707 003764 708 003766 sREWIND. ;BYTE COUNT. sONCE. sPATTERN. sWRITE. sMAX BUFFER LENGTH. RANP WRT DATCNT .WORD 701 702 703 704 705 1 O RWD 1 1 sSET CHARACTERISTICS. .WORD «WORD «WORD .WORD 695 003744 696 003746 697 003750 698 699 700 003752 SCH CH.EAI .WORD .WORD JWORD JWORD .WORD .BLKW SEQEND:: .WORD .WORD .WORD .uono .WORD 32000. 32000. 32000. RANP RWD 1 1 RANP 40. END END END END :32,000 RECORDS. :32,000 RECORDS :READ FWD. +MAX BUFFER LENGTH. 232,000 RECORDS. *RANDOM PATTERN. *REWIND. sBYTE COUNT. sONCE. *PATTERN. ;EXTENSTION TO DOUBLE BUFFER SIZE :SOFT END OF SEQUENCE TABLE. END :HARD END or ssousuce TABLE. .WORD .WORD .WORD .WORD .WORD DRI RDF RDR WRT WTV :DRIVE INIT. *READ FORWARD. *READ REVERSE. *WRITE *WRITE/VERIFY. (WRITE ALL aecoaos ROR AND ;CHECK DATA ON ALL RECORDS, RDFAND .WORD .WORD SRF SRR :SPACE 'N'*' RECORDS FORWARD. :SPACE 'N'* RECORDS REVERSE. ;THE FOLLOWING IS THE TSOS COMMAND TABLE CMDTBL:: :CHECK DATA ON ALL RECORDS.) .r_._____ GLOBAL AREAS MACRO M1113 GLOBAL DATA SECTION PAGE 20-10 22388222 «WORD .WORD .WORD .WORD .WORD «WORD .WORD .WORD WORD .WORD +WORD .WORD .WORD .WORD +WORD +WORD +WORDC WORD +WORD .WORD Py NNN= YOO = =NO P el el D00 ) il el el ) ) e oOoNO 105401 125401 [« ~N e N (=] =] — o gggbo 225 el 709 003770 710 003772 711 003774 712 003776 713 004000 714 004002 715 004004 716 004006 717 004010 718 004012 719 004014 25-MAY-82 09:51 777 RNR RNF RPF RPR WRR RWD MBR WTM WITR SFF SFR GES ERS UNL (LN SCH DIA JMP OLY END SEQ 0056 :READ NEXT REVERSE. I.E., SPACE FWD, READ REVERSE. :READ NEXT FORWARD, I.E., READ FORWARD, SPACE REVERSE. ;READ PREVIOUS FORWARD. [.E., SPACE REVERSE, READ FORWARD :READ PREVIOUS REVERSE. I.£.; READ REVERSE, SPACE FORWARD :WRITE RETRY, :REWIND. :MESSAGE BUFFER RELEASE WRITE TAPE MARK :WRITE TAPE MARK RETRY. :SPACE "N'* FILES FORWARD. :SPACE 'N'* FILES REVERSE. :GET EXTENDED STATUS. :ERASE 3 INCHES OF TAPE. :REWIND AND UNLOAD. :CLEAR TAPE, :SET CHARACTERISTICS. :DIAGNOSTIC COMMAND. :JUMP TO THE NTH COMMAND IN THE SEQUENCE. :DELAY “N'* WS, :END OF COMMAND TABLE i +ASCII .ASCII +ASCI1 LASCII /RDF/ /RDR/ /WRT/ /WTV/ /SRf/ /SRR/ /RNR/ /RNF/ /RPF/ /RPR/ /WRR/ /RWD/ /MBR/ /WTM/ /WTR/ /SFF/ /SFR/ /GES/ /ERS/ /UNL/ /7CLN/ /SCH/ /DIA/ 7 'a) P =4 o 115 120 LASCII /7JMP/ 104 114 13 ASCII /DLY/ 104 ASCII /END/ 105 — 116 - 112 i — WSOV S S NINNOOONONNIN i d D D D e e JASCII /DRI/ - cd = NNNNNO OSSN0 — =t = PO =NONINOONINGDG OO SWWNONNIWVINSNNONONNINOY o LASCII e NDNOON &SNS SN O=aNO OONNONININN= =N +ASCI1 +ASCI1 +ASCII +ASCII1 .ASCI1 .ASCI1 +ASCII LASCII +LASCI1 LASCII +LASCI1 LASCI1 +ASCI1 +LASCII .ASCI1 +ASCII LASCII LASCI] :: R 759 760 004150 761 762 763 004153 764 765 004156 WWWVWVNIWW NNV NN TONDWW D e ) ) e e e e — e gWNNN-‘-‘O O WwWO W N e i e e b d NNONOCONINNN=NNNNNNNND i e i DNDNDNNO NN S THE FOLLOWING TABLE CONTAINS THE ASCII FOR EACH COMMAND. sDRIVE INIT. sREAD FORWARD. sREAD REVERSE. ;WRITE :WRITE/VERIFY. (WRITE ALL RECORDS, RDR AND CHECK DATA :ON ALL RECORDS, RDF AND CHECK DATA ON ALL RECORDS.) :SPACE ‘N RECORDS FORWARD. :SPACE ‘N'* RECORDS REVERSE. :READ NEXT REVERSE. I.E., SPACE FWD READ REVERSE. :READ NEXT FORWARD, I.E.. REAU FORWARD, SPACE REVERSE. sREAD PREVIOUS FORWARD. {E., SPACE REVERSE, READ FORWARD :READ PREVIOUS REVERSE. IE., READ REVERSE, SPACE FORWARD :WRITE RETRY., sREWIND. :MESSAGE BUFFER RELEASE SWRITE TAPE MARK :WRITE TAPE MARK RETRY. :SPACE ‘N’ FILES FORWARD. :SPACE 'N'* FILES REVERSE. :GET EXTENDED STATUS. :ERASE 3 INCHES OF TAPE. :REWIND AND UNLOAD. :CLEAN TAPE. :SET CHARACTERISTICS. WHERE BRF=200, 40, 20, 0. :SEE_TSV0S/TSOS PROGRAMMING SPECIFICATION FOR DESCRIPTION. :DIAGNOSTICS. ~SEE TSV0S/TS05 PROGRAMMING SPECIF ICATION :FOR DESCRIPTION. ODT MUST BE USED TO LOAD DIAGNOSTIC DATA :INTO THE WRITE BUFFER BEFORE THIS CMD IS ISSUED. :JUMP TO THE NTH COMMAND IN THE COMMAND :SEQUENCE TABLE, WHERE N IS DEFINED IN :THE # OF OPERATIONS. :DELAY “N'* MS, WHERE N IS DEFINED IN :THE # OF OPERATIONS. ZEND OF COMMAND SEQUENCE. ———— | GLOBAL AREAS MACRO M1113 | GLOBAL DATA SECTION 25-MAY-82 09:51 PAGE 20-11 SEQ 0057 .EVEN .SBTTL GLOBAL TEXT SECTION s 4 ¢ THE GLOBAL TEXT SECTION CONTAINS FORMAT STATEMENTS, s MESSAGES, AND ASCII INFORMATION THAT ARE USED IN : MORE THAN ONE TEST. : FORMAT STATEMENTS USED IN PRINT CALLS OO b d =N VO e BEX CODELM:: LASCIZ SWSET:: +ASCIZ .EVEN HALTM:: +ASCIZ : CMDPKM: /INTAUNIT ZD1XA TSO5S CODE LEVEL X03XININ/ /INTAUNIT XZD1XA TSOS SWITCH SETTINGS XO3XNIN/ WTVERM: : : TOERM: /DATA COMPARE ERROR/ /UNDEF INED SPEC COND/ /RFC NON ZERO/ /TSVOS NOT READY/ .> wn >»Wn &) ne g g g g () alalalalalalalalalolololalialaliciaicialy) RFCERM: : NSSRM: : RLEXM: : ATTNM:: .ASC FUNRM: : .ASC FATSM: : P B =t O g 3 Prd g B > . UNJWLK: CRLF:: CRLFSP:: 0 B OFLINM: GETSTM:: NODEV:: o St By B oy b ot ot g g Pog g B DTAER2:: DTAERS3:: DTAERG:: DTAERS:: NURTY1:: NNNNNNNNNN : AUDRUN: w mwununmeee : URERM: : DROPDM: AUDRPM:: 0) e NOINTM:: TSAM:: +ASC : .ASC TOOMM: RNYM: : RERM: : /XXX CMD = TYPE <CR> TO CONTINUE/ /CMD PACKET ADR NOT ON MODULO 4 BOUNDARY: RELOAD!/ /NO TSVO5 RESPONSE/ SCERM:: VION = WNINSNONON S NNVVTNIWO NO O SO = ) e i h h d d d cd ch d d d d wd e e e b d wd d e o WO SNV el 045 — e 826 005744 827 828 viviviwviviwvaiuaiavainananaifow eSS SO & W vivwnwna A¥.] v NOWWVIWN S~ S NVINSHSOWN - NO WO N S2ERES & VIVAVAVAWAA b e e VIS W =O VRNV e b b b b WN=O RO0o 0o Co 0o Co Co Co Co 0o Co 809 004753 RRIRVI]RVR\R OO = wd b e el e e e vl o 793 == NO=O0O00000 = =uwauOO=O=0ONNONO = =D OO R =L DL RO N= Y= Y= WVNNWVWOOAN—= 3 794 004306 795 004346 796 797 004430 v 791 004162 792 004231 il —d «NLIST OO0 —Ot e aid e cd OO OO = e e d b © = wd e b &H OWN=800ONN =N NON =N N) =2 ) e /RETRY LIMIT EXCEEDED/ /DRIVE OFF LINE/ /FUNCTION REJECT/ /FATAL SUBSYSTEM ERROR/ /NO_INTERRUPT/ /TAPE STATUS ALERT/ /T00 MANY INTERRUPTS/ /CAPSTAN RUNAWAY=GET STATUS RESULTS:/ /RECOVERABLE ERROR/ /UNRECOVERABLE ERROR/ /INTADROPPED UNIT XD13IN/ /INTZAALL UNITS DROPPEDININ/ /INZADIAGNOSTIC ONLY SUPPORTS ONE CONTROLLERININ/ "INZABYTE : ID4IS2YAWAS : 3BBXS2XAS/B: XBBIN'' ZD4XA BYTES IN ERROR OUT OF XD4IN' /3ANO DATA READIN/ /ZARECORD TOO LONG: >X04XA BYTESIN/ /XARECOVERED ON RETRY #XD2IN/ /ZADRIVE ZD1XA OFF LINEIN/ /ZAGET STATUS CMD RESULTS:IN/ /INZABUS TRAP AT Z06XN/ /ZAINTERFACE BAD OR TSDB NOT SET TO ABOVE ADDRESSIN/ 51;;0"TAPE IS WRITE-LOCKED ANL WILL CAUSE ERRORSw®wws/ /INXS7/ BEX e ————— -— " GLOBAL AREAS MACRO M 1}13 ' GLOBAL ERROR REPORT SECT 25-MAY-82 09:51 PAGE 20-12 6 — p—— 5 SEQ 0058 .SBTTL GLOBAL ERROR REPORT SECTION 144 ; THE GLOBAL ERROR REPORT SECTION CONTAINS THE PRINTB AND PRINTX A ¢ THAT ARE USED IN MORE THAN ONE TEST. ITCALLS.. ALSO INCLUDES THE l A MESSAGES '~ o> I ASCLL§'HES : THAT ARE USED BY THE PRINTB AND PRINTX 844 005752 003376 BGNMSG : DTAERM: DATERM: :PRINTB DTAERM #STAER1, ,PASCNT (R5)TSNP ,RECCNT(RS) RECCNT(RS) ,=(SP) PASCNT(RS) ,=(SP) TSNP, =(SP) #STAER1,~(SP) #4,-(SP) 845 006006 006006 000012 12746 PRINTB 006530 000001 #STAER7 #STAER7 ,-(SP) #1,-(SP) R2.RECRED R3,TIME1 R4, TIME2 RECRED,R2 sRESTORE R2 R3_,RECRED TIME1,R3 TIME2 R4 #STAER6 ,RECRED 007066 006562 000002 RS — b e S055 ADD sSAVE R2 :SAVE R3 :SAVE R4 PC,RECTAP 006104 SP.RO CSPNTB #12,5P sRETRIEVE RECORD READ s SAVE RECORD READ sRESTORE R3 sRESTORE R4 sPRINT RECORD READ RECRED,~(SP) #STAERG,~(SP) #2,-(SP) SP.RO 000006 EXIT CSPNTB #6,5P MSG JSJMP L10002-2~. L10002: 104423 d b 003376 d o — 861 ENDMSG TRAP e gWNNNNN — b b SS55558 585 b b b .EVEN 006436 BGNMSG STAERM:: STAERM: :PRINTB CSMSG STAERM #STAER1, TSNP ,PASCNT(R5) ,RECCNT(RS) RECCNT(RS) ,~(SP) PASCNT(RS) ,~(SP) TSNP, =(SP) #STAER1,-(SP) | . GLOBAL AREAS 006140 006144 006146 006150 006246 25-MAY-82 09:51 012746 010600 000004 062706 000012 012746 012746 01 006530 000001 104414 000004 002330 177740 004 010337 010064 010064 013746 007066 006562 000002 ENTN - ) 38ERE5RE RRRRRa8288 §ihgREzzRReB2 NoRRSNIZRBAR g | GLOBAL MACRO M1113 ERROR RE PORT SECTION 000006 012746 012746 010600 104415 062706 013746 006616 000001 H PAGE 20-13 S SEQ 0059 #4,-(SP) PRINTB SP,RO CSPNTB #2,5P #STAER? #STAER7 ,~(SP) MOV BIC DEC ST BNE JSR MOV PRINTB 500008: PRINTX CMDPKT ,R2 #177740,R2 R2 R2 500008 PC,RECTAP R3.RECTAP #STAER6,RECRED ;IF CMD IS A READ s AND . 3THEN RETRIEVE sTYPE RECORD READ RECRED,~(SP) #STAERG,~(SP) #STAER2 #STAER2,~(SP) #1,-(SP) SP,RO PRINTX CTCC,=(SP) TSSREG, = (SP) MSGPKT+MS.RFC,~(SP) @TSDB(RS) .~(SP) CMDPKT, = ($P) #STAERS, - (SP) 26,~(SP) SP.RO CSPNTX PRINTX { #16,5P #STAERG ,CMDPKT+2,4, CMDPK CMDPKT +6 T CMDPKT+6,~(SP) CMDPKT +4 ,~(SP) CMDPKT+2,=(SP) #STAERS ,~(SP) #6,-(SP) 874 006366 PRINTX SP.RO CSPNTX f12,sp AD lSTAERS.HSGPKTOHS.XSO.HSGPKT*HS.XS1.HSGPKT*HS.XS£6HSGPK7 +MS.XS3 MSGPKT+MS . XS v MSGPK . XS4 T+MS ,~(SP) MSGPKT+MS XS3,~(SP) MSGPKT+MS.XS2,~(SP) MSGPK . XS1,~(SP) T+MS MOV MSGPKT+M . XS0,~(SP S ) #STAERS ,~(SP) MACRO M1113 25-MAY-82 09:51 | GLOBAL ERROR REPORT SECTION 15 PAGE 20-14 SEQ 0060 ! 006413 012746 000006 MOV ! 006426 TRAP | ' | 006422 010600 006426 875 0064 006432 - 006436 062706 000167 000432 877 878 006436 045 101 006530 045 101 881 006562 882 006616 883 006675 884 006733 885 006740 886 006745 887 006753 888 007027 890 gg} 007066 893 007070 007070 — 007070 104415 045 045 045 045 045 045 045 045 000000 104423 MOV 000016 123 116 117 117 117 117 101 117 EXIT MSG /%APREVIOUS CMD WAS STAER6: STAER2: STAER3: STAER&G: XXX 2 .ASCIZ /%S11%3A+ RECORD READ:ZDSZA .ASCIZ /xuzAcnopxtzszxnrsaazs4zAnrcxsszArssazsszarcczu/ .ASCIZ /zoszszzoezszzosxszxoezszzo1xuz .ASCII /%06IN/ JASCII /7%06IN/ JASCIZ /%06IN/ STAERS: .ASCII /!Axs70184!AXSfl!S‘!AxST2!S£!AX$TSZSL!AXST‘!N/ .t§§§z /xoezszzoezszzosxszzoszszzoozu/ -EVEN RECRED: .WORD L10003: 0 :RECORD READ FROM TAPE ENDMSG TRAP ) 906 907 908 3?3 *ROUTINE TO DO A SOFT INITIALIZE OF THE CONTROLLER :BY 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. g}; L INPUTS: 3}2 ; 915 : 918 $ 359 : 923 JSJMP L10003-2-. STAER?: .ASCIZ 901 922 LWORD .WORD 120 061 045 066 066 066 066 130 066 : THE GLOBAL SUBROUTINES SECTION CONTAINS THE SUBROUTINES 919 #16,SP BEX /ZAXXX CMD FAILED = UNIT 3D1ZS3ZAPASS:XD5%S3ZARECORD : ZDSIN/ 898 8}9 CSPNTX ADD NLIST STAER1: .eegéz .SBTTL 902 903 SP,RO 130 895 ggg #6,~(SP) 3 GLOBAL SUBROUTINES SECTION + : THAT ARE USED IN MORE THAN ONE TEST. RS :OUTPUTS: : RO CARRY CURRENT UNIT NUMBER CONTENTS OF TSSR, IF ERROR SET IF INIT WAS OKAY CLEAR IF FATAL ERROR :CALLING SEQUENCE: : JSR PC.FIRSTU CSMSG ~ o~ GLOBAL AREAS (P —————————————————— . —————————————— — ———————————————— t——e - GLOBAL AREAS MACRO M1113 . GLOBAL SUBROUTINES SECTION e .~ 25-MAY-82 09:51 H s H e J PAGE 20-15 JSR B(CS ERRDF 5 SEQ 0061 PC,SOFINIT CONT INUE JREPORT FATAL ERROR SOFINIT:: 000000 935 007110 936 007114 937 007116 002524 2%: ?gx MOV 00 aTSSR(RS) 0360 as BCS 33 JSR DELAY 000250 s (SAVREG) SAVE THE REGISTERS UR?TY?SRlualT TO BE READY PC, UAITF 2 WAIT FOR SSR 250 MOV .WORD MOV .WORD DEC 002116 177772 BNE 177756 938 007146 002524 3s: 176277 002200 DEC BNE MOV JGET THE TSSR REGISTER R4 ,RO :ONLY EXPECTED BITS SET ? RO,.R4 :TSSR CONTENTS l‘C(TS.Al?'TS.A16'TS 0FL> R4 #TS.SSR!TS.NBA,R4 R‘ HAS EXPECTED CONTENTS BEQ 58 CLC 108: aTSSR(RS) ,RO MOV BIC BIS CMP 5%: R3 2% BR SEC RTS #250,(PC)+ S‘DLV.(PC)O gg£PC’ =22(PC) 0 JBRANCH IF OKAY JCLEAR THE CARRY FOR ERROR 108 260 TO EXIT sSET THE CARRY BIT PC RETURN TO CALLER * SUBROUTINE TO WAIT FOR THE SUBSYSTEM READY FLAG :INPUTS: RS CURRENT UNIT NUMBER ;OUTPUTS: ; ; 104422 012746 017500 970 007222 222 105700 100420 012727 RO CARRY CONTENTS OF LAST TSSR READ SET = READY BIT SET CLR = TIMEOUT WAITING FOR READY WAITF:: BREAK 005670 002524 000025 2%: MoV MOV TSTB 8M] DELAY : DO A SUPVSR BREAK FIRST. #3000. ,-(SP) aTSSR(RS) ,RO RO 3$ 25 : 300 MSEC TIMER. JREAD THE TSSR REGISTER sTEST FOR READY BIT SET s EXIT ON STOP FLAG. TRAP C$BRK MOV #25.(PC)+ : WAIT 25-MAY-82 09:51 PAGE 20-16 SEQ 0062 007226 0072 0072 .WORD, MOV .WORD DEC 007236 007242 007244 007250 971 007252 972 007254 973 007256 974 007260 975 007262 976 007264 977 007266 978 979 980 38: is: 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 003 004 005 006 007 008 009 007270 010 007270 011 007274 012 007300 013 007302 014 007304 015 007306 016 007310 017 007312 018 007320 019 007322 020 007326 4 (SP) 28 BR 4 : C =0, CONTROLLER STILL RUNNING... i...0R HUNG-UP AFTER 300 MSEC. DEC (sP)e :RESTORE STACK WITHOUT CHANGING CARRY BIT SEC :RETRY UNTIL TIMER EXPIRES 1, CONTROLLER IS STOPPED. 4 :ROUTINE TO ISSUE A WRITE CHARACTERISTICS COMMAND AND CHECK FEATURES Hmmn R4 ADDRESS OF COMMAND PACKET CURRENT UNIT NUMBER REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY RS OUTPUT: RO CARRY TSSR CONTENTS SET = WRITE CHARACTERISTICS COMMAND OK CLR = WRITE CHARACTERISTICS FAILED IMPLICIT OUTPUT: SOFTWARE SWITCHES SET AS FOLLOWS: EXTFEA = EXTENDED FEATURES PRESENT BENBSW = BUFFER ENABLE SWITCH ON OR OFF SIDE EFFECTS: WRTCHK: : 108: 40$: 000200 MOV TST R4 ,aTSDB(RS) PC,WAITF 45%: sSEND OUT COMMAND sWAIT FOR SSR 403 ;BR, IF SSR IS SET AND Ok (R4)+ (R4) ,R2 sSTEP IT :POINT TO WRT CHARA DATA PACKET EXTFEA sSET EXTENDED FEATURES SW SWITCH 60$ (R2) ,R3 IXZ EFE.MS.XS2(R3) 000012 4 =22(PC) =20 DEC BNE cLe :REDUCE DELAY COUNT BNE DEC BNE 0 : LSDLY,PC)+ 0 =6(PC) :BRIF TROUBLE CARRY = CLEAR :GET ADDRESS OF MESSAGE BUFFER ngENDEg FEATURES BIT SET? A~ GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1021 007326 38 Y o ~ 0073 6 28 007350 032763 00140 00523 000100 PAGE 20-17 SEQ 0063 000012 002324 508 558: 608: 708: 002524 31 BIT BEQ INC #X2.BFE ,MS.XS2(R3) 508 BENBSW SEC BR CLC MOV 708 RTS @TSSR(RS) ,RO PC ;BUFFER ENABLE SWITCH SET BRf IF SWITCH NOT SET SOFTWARE SWITCH FOR ENABLED SET CARRY NO TROUBLE :EXI CARRY CLEAR = ERROR :RETURN TSSR CONTENTS sRETURN - W N cd e e d e D e h d ooooogoo 2588 Vigs g 25-MAY-82 09:51 *ROUTINE TO CHECK WRITE LOCK CONDITION - 033 : INPUT: : : 1 1041 007356 1042 007356 1043 007362 1044 007366 1045 007370 104¢ 007372 1047 007374 1048 007376 1049 007400 1050 007406 1051 887410 108: 408: 000004 000006 017156 ADDRESS OF COMMAND PACKET MoV R4, aTSDB(RS) BCS 408 RS : WLKCHK: 002514 007204 R4 JSR BR TST MOV MOV BIT BEQ ERRHRD JSR 55¢: 982: CURRENT UNIT NUMBER PC.WAITF 608 (R4) + (R4) ,R2 (R2) .R3 #X0.WLK ,MS.XSO(R3) 558 1,UNIWLK PC,DROPU BR 60$ B8R 708 RTS PC SEC cLe ;SEND OUT COMMAND :WAIT FOR SSR :BR, IF SSR IS SET AND OK :BR IF TROUBLE CARRY = CLEAR SSTEP IT :POINT TO WRT CHARA DATA PACKET :GET ADDRESS OF MESSAGE BUFFER ;1S UNIT WRITE LOCKED? :NO,PROCEED WITH TESTING :TAPE IS WRITE LOCKED :DROP IT SEXIT WITH CARRY=0 :SET CARRY NO TROUBLE SEXIT :CARRY CLEAR = ERROR :RETURN 14 - :ROUTINE TO ISSUE A WRITE CHARACTERISTICS COMMAND :INPUT: ; ; : Ré ADDRESS OF COMMAND PACKET RO TSSR CONTENTS RS CURRENT UNIT NUMBER REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY Iourpuv TRAP .WORD -WORD -WORD g‘ERHRD gNlUlK N~ GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 nSs PAGE 20-18 : CARRY ; SEQ 0064 SET = WRITE CHARACTERISTICS COMMAND OK CLR = WRITE CHARACTERISTICS FAILED SIMPLICIT OUTPUT: CEEEREREE L o [ v *SIDE EFFECTS: 010475 00473; 002514 007204 : WRTCHR: 0$: MOV - B8R 000241 017509 002524 o 007460 JSR BCS SEC S 007436 007442 60$: 708: BR CLC MOV R4, 3TSDB(RS) :SEND OUT COMMAND 50§ :BR, IF SSR IS SET AND OK PC.WAITF *WAIT FOR SSR 608 | :BR IF TROUBLE CARRY = CLEAR :SET CARRY NO TROUBLE 70$ SEXIT :CARRY CLEAR = ERROR @TSSR(RS) ,RO *RETURN TSSR CONTENTS PC sRETURN 4 *ROUTINE TO DO SET UP OF RUNNING CONDITIONS :INPUTS:: NN Ve cdadaadaeaaaauesD00 RS CURRENT UNIT NUMBER JOUTPUTS: :CALLING SEQUENCE : ; : : : : JS JSR BCS ERRDF JSR PC,FIRSTU PC,SOF INIT CONTINUE PC,MDSET MDSET:: BREAK 007470 007474 004737 004737 007766 007356 007502 007506 007510 012727 000000 013727 000000 005367 000001 007516 002116 177772 JSR JSR BCS DELAY sREPORT FATAL ERROR : DO A SUPVSR BREAK FlRS;iAP PC,SETDEF PC,WLKCHK 1% 1 sRESTORE DEFAULT sCHECK WRITE LOCK :C=1_1IS 0.K. SWAIT MoV . WORD MOV .WORD DEC C$BRK p 81.(96)0 b‘bLV,(PC)* =-6(PC) N~ GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 007522 007526 00137 005367 007530 00136 007532 104422 1125 007532 1126 007534 007534 1127 007536 1128 007542 1129 007544 1130 007550 104444 25-MAY-82 09:51 002312 004737 007270 18: 007766 1139 007612 00141 052737 005737 001002 004737 004737 004737 00044 1140 007614 1141 007620 1142 007622 005737 001415 052737 1144 007634 1145 007636 1146 007642 1147 007646 001002 004737 004737 004737 1143 007630 1148 007652 1149 007654 1150 007660 1151 007662 1152 007670 1153 007674 1154 007676 1155 007702 1156 007706 005737 000423 005737 001415 052737 005737 000040 002322 003532 007724 007766 007436 28: 002316 38: 000030 002322 003532 48: 002314 58: }}gg 007712 001002 004737 004737 004737 000403 007724 007766 007436 }}23 007714 013737 003532 }}gg 007722 000207 :BREAK TO SUPER DOCLN ;DO CLEAN AND ABORT ST BNE 003532 PC,SETDEF ST HSSW ST BEQ BIS WTBUF 58 #EF .RWB, TSUNT :RUN WITH WRITE BUFFERING? *NO *YES SET THE BITS BNE JSR JSR JSR 48 PC, INVRT PC.SETDEF PC.WRTCHR YES :INVERT THE SWITCH *NOW SET THE MODES 00 IT ST BEQ BIS ST RDBUF 108 #EF .RBO, TSUNT EXTFEA ;RUN WITH READ BUFFERING? *NO *YES SET THE BITS :ARE WE SET? BR BR 11$ EXTFEA 11$ :ARE WE SET? 6$ PC, INVRT PC.SETDEF PC.WRTCHR *YES *INVERT THE SWITCH *NOW SET THE MODES :00 IT 108: MOV TSUNT, SCHBK+10 ;AND UNIT # 11$: RTS PC :RETURN 11$ : INVRT :: CSDCLN :D0 WE RUN AT 100IPS? SOUTPUTS: 002330 TRAP *NO *YES,SET THE BIT *ARE WE SET? SYES *INVERT THE SWITCH *NOW SET THE MODES 00 IT S INPUTS: : : : 140006 ($BRK 38 #EF .HSS, TSUNT EXTFEA 2 PC, INVRT PC.SETDEF PC.WRTCHR 1167 1168 1169 1170 012737 TRAP BNE :RESTORE DEFAULT ; SUBROUTINE TO INVERT SENSE OF EXT'D FEATURES SWITCH 1171 o4 222(PC) :GO DO SWITCH CHECK }}gg 1172 1173 1174 1175 007724 1176 007724 BNE DEC BEQ BIS ST BNE JSR JSR JSR BR i PC.WRTCHK :RUN IN DEFAULT MODE? :YES,RETURN BNE JSR JSR JSR 6$: 002504 TS1MD 108 JSR ST 007724 007766 007436 000020 002322 BREAK JSR 1131 007554 005737 002320 1132 007560 1133 007562 1134 007570 1135 007574 1136 007576 1137 007602 1138 007606 SEQ 0065 177756 005737 001064 004737 PAGE 20-19 MOV #WSM, CMDPKT+CP. CMD ;WRT SUB=SYS MEM .=20 GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 177 007732 012737 o o ~ ~ o o purd MOV JSR RTS SETDEF 140004 002330 002474 002330 6 SEQ 0066 #WSMB , CMDPKT+CP.ADL K #6,CMDPKT+CP. CNT #100010, WSMBK #CMDPKT . Ré PC,WRTCHR PC sMSG BUF ADDR :BYTE COUNT ;BYT *INVERT THE SWITCH : D0 IT *RETURN Mov Mov MoV 002332 Mov Mov MOV MOV 002504 RTS ADDRESS OF COMMAND PACKET #SCH,R1 R1,CMDPKT+CP,CMD #SC , CMDPKT+CP.A HBK DL #SCHCNT ,CMDPKT+CP.CNT #DFTSCH, SCHBK +6 TSUNT,SCHBK+10 #CMDPKT R4 PC sWRITE CHAR CMD sSET UP COMMAND sSET UP ADR LO TO POINT TO MSG BUF (MSGPKO) sSET BUFFER EXTENT iSYORE CHARACTERISTIC CODE IN SCH BLOCK. s UNIT S :AD?RESS OF CMD PACKET URN MODULES TO HANDLE TSO5 INTERRUPTS. —3 10040 10040 10040 005237 003472 TSSINO:: L10004: 000002 g 003474 &oH TS5INO INC ENDSRV INTFLG sSET INTERRUPT OCCURRED FLAG. BGNSRV TS5IN1 INC ENDSRV INTFLG#+2 sSET INTERRUPT OCCURRED FLAG. RTI 003476 TSSIN2:: L10006: 000002 005237 TSSIN1:: L10005: 000002 005237 BGNSRV RTI N b b 005237 b— b b d ) OO0O0O0O0O — OO0O0O0 ws ~OVe -0 MOV B : SUBROUTINE TO SETUP DEFAULT SET CHAR CMD : INPUT S: 007766 OO0O0O0O0O W - b -— o wnho MoV MOV R4 W ) D ) D i cd e — el e b N b b _— e o - ed —2 b o b b — o P o N NN 002332 002336 002506 b 1 1 NININININININININI N = ) D - D D } 000267 002506 000006 100010 002330 007436 PAGE 20-20 10UTPU TS: OO OO00O0 ) D ) ) D 1 1 1 1 1 1 00 0o 00 0o &R SR28ERIRARIC2ETRIRARER D - D ) D D e- b e e d 1 78 007740 1 1 1 1 1 1 1 1 1 1 25-MAY-82 09:51 BGNSRV TS5IN2 INC ENDSRV INTFLG+4 sSET INTERRUPT OCCURRED FLAG. RTI 003500 TSSIN3:: BGNSRV TSSIN3 INC ENDSRV INTFLG+6 sSET INTERRUPT OCCURRED FLAG. MACRO M1113 GLOBAL SUBROUTINES SECTION 010062 s 010062 25-MAY=82 09:51 1225 ; : : ; : 1226 1227 1228 1229 }gg? : 032737 001430 013702 063702 032702 001417 005202 111203 142703 000303 005302 105737 001401 005302 1247 010136 1248 010136 1249 010140 1250 010144 111204 142704 050403 1251 010146 000400 002360 003410 000001 177400 003520 017703 1259 010160 }ggg 010160 000207 500028: 011203 500048: 000402 173230 003540 1272 010172 1273 010176 012721 012721 000040 000001 ;5;2 010204 000207 1274 010202 1277 1278 50001$: 500058: 012701 : : ; ; ; : 012721 005721 _1 RTI SUBROUTINE TO RETRIEVE RECORD COUNT READ FROM TAPE FOR ERROR PRINTS. INPUTS OUTPUTS: R3 = RECORD COUNT READ REGISTERS: R2, R3, Ré CALLS: RECTAP::BIT BEQ MOV ADD BIT BEQ INC MOVB BICB SWAB DEC ISTB BEQ DEC 177400 1262 1263 1264 1265 1266 1267 1268 1269 010162 1270 010162 1271 010166 003420 50003$: 000401 1252 010150 1253 010150 1254 010152 1255 010152 1256 010154 }525 010154 SEQ 0067 L10007: 000002 1232 010064 1233 010072 1234 0100764 1235 010100 1236 010104 1237 010110 1238 010112 1239 010114 1240 010116 1241 010122 1242 010124 1243 010126 1244 010132 ;522 010134 f PAGE 20-21 SETCH:: 140004 (R2).Ré4 #177400.Ré4 R4 ,R3 MOV (R2) ,R3 BR 50005$ MOV aDATARD,R3 RTS PC BR ;FETCH LOWER BYTE 500048 :LET R3 := (R2) :EVEN AD. FETCH :LET R3 := aDATARD :READ FWD FETCH : SUBROUTINE TO STORE A SET CHARACTERISTIC COMMAND AS THE FIRST ENTRY IN THE SEQUENCE TABLE. INPUTS: OUTPUTS: REGISTERS: CALLS: MOV #CMDSEQ,R1 ;INIT CMD SEQUENCE TABLE POINTER. MOV MOV #DFTSCH, (R1)+ #1,(R1)+ , :COMMAND AS THE FIRST COMMAND IN THE *SEQUENCE TABLE. ST RTS PC : #MOD . CO, CMDWRD :READ REV FETCH 50001$ MSGPKT+MS.RFC,R2 ;FIND LAST READ AD. DATARD ,R2 #81T00.R2 ;00D AD., REASSEMBLE 500028 R2 ;REC COUNT STARTING (R2).R3 :WITH UPPER BYTE FETCH #177400.R3 R3 R2 ;LET R2 := R2 = M :LOWER BYTE AD. SWBFLG :IFB SWBFLG NE #0 THEN 50003$ R2 :LET R2 := R2 = M :LOWER BYTE AD. ON SWAP MOVB BICB BIS MOV : 7 #SCH, (RT)+ :THIS CODE SETS UP A SET CHARACTERISTIC (R1)+ :SKIP PATTERN LOCATION. SUBROUTINE TO STORE A.REWIND COMMAND IN THE SEQUENCE TABLE INPUTS : ! osMm | GLOBAL AREAS GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 1279 1280 1283 010206 1284 010212 1285 010216 012721 012721 012721 }ggg 0102264 000207 1286 010222 : OUTPUTS: ; CALLS: : }ggg 005721 102010 000001 000001 TST RTS ; ; : : : }532 : 6 SEQ 0068 REGISTERS: SETRW:: MOV MOV MOV 1289 1290 1291 1292 1293 D PAGE 20-22 #RWD, (R1)+ #1,(R1)+ #1.(R1)+ :CMD = REWIND. *BRF. :# OF OPERATIONS. (R1)+ :SKIP PATTERN. PC *RETURN SUBROUTINE TO EXECUTE ALL COMMANDS IN THE SEQUENCE TABLE ON ALL DEVICES. INPUTS: OUTPUTS: R2 = TERMINATION INDICATOR (0=END OF TABLE,1=EOT) REGISTERS: , CALLS: CMDAC, SETUP,EXSUB, CKHAE ,NEXTU, F IRSTU, VFYDAT. 1296 010226 012701 003540 EXALL:: MOV #CMDSEQ,R1 ;INIT SEQUENCE TABLE POINTER. 1298 010232 021127 177777 cMP (R1) ,#END ;WHILE THERE ARE CMDS IN THE SEQUENCE TABLE. 1300 010240 1301 010244 010244 1302 010246 1303 010254 1304 010256 1305 010262 1306 010266 1307 010270 1308 010276 1309 010300 1310 010304 1311 010306 1312 010314 1313 010322 1314 010330 1315 010336 1316 010344 };}; 010346 004737 011172 PC,SETUP 104422 023737 ;G0 SETUP THE COMMAND BLOCK. : DO A SUPVSR BREAK FIRST. 002116 004737 105737 001435 023727 001031 105737 001026 063737 063737 013737 0s>?37 023727 002003 012737 003412 1319 010354 }§5g 010354 013737 1297 010232 1299 010236 001530 500068 : BEQ JSR 500108: BREAK 003414 003434 003432 BGE JSR TSTB BEQ CMP BNE TSTB BNE ADD 003434 003430 003416 003416 003416 000022 MOV BIC CMP 000022 003416 003416 002336 011064 003515 003420 104005 003516 003432 003434 1322 010362 1323 1324 010362 1325 1326 010362 1327 010362 1328 010366 1329 010372 ;;gg 010376 1332 010402 1333 010402 1334 010410 CMP NCNT,NCNT1 | TRAP ;WHILE THERE ARE RECORDS REMAINING: BGE MOV 500118 PC, CMDAC RANDOM 50012$ CMDWRD , #WRT 50013$ VFYFLG 50014$ RANS , RANB RANB , RANS RANS . BRF CNT LENMSK ,BRFCNT BRFCNT.#18. 50015$ #18. ,BRFCNT MOV BRFCNT,CMDPKT+CP.CNT ADD 50015$: 50007$ : C$BRK ;STORE CMD ASCII IN ERROR MESSAGE. *IF IN RANDOM MODE : , ;IF CMD IS A WRITE THEN: :IF DATA IS NOT TO BE VERIFIED THEN: ;LET RANB := RANB + RANS :LET RANS := RANS + RANB :GENERATE :RANDOM :LET BRFCNT := RANS :LENGTH :MASK RANDOM LENGTH. ;DO NOT ALLOW BYTE COUNT OF LESS THAN 18 : ;CHANGE COUNT OF 0-17 TO 18. . ;MOVE BRF TO CMD PACKET. 500148 : 50013$: 004737 004737 012702 004737 026527 001426 500128: 010524 017456 000001 017060 002604 , JSR JSR MOV PC.EXSUB PC . CKHAE #1.R2 CMP DEVTBL (RS) , #END JSR 177777 500168 : BEQ PC.FIRSTU 50017$ | ;ISSUE CMD TO ALL.AWAIT INTS.CHECK STATUS. :CHECK HALT AFTER EACH CMD FLAG. :LET R2 3= M ;SET ALL UNITS AT BOT/EOT. ;FIND FIRST UNIT. ;WHILE THERE ARE MORE UNITS: - | | GLOBAL AREAS MACRO M1113 25-MAY-82 09:51 GLOBAL SUBROUTINES SECTION 1335 010412 1336 010420 1337 010422 1338 010430 }gzg 010432 1341 010434 134§ 010434 1343 010436 1344 010436 1345 010444 1346 010446 1347 010454 1348 010456 1349 }gg? 010456 032737 001406 032765 00100 005002 000400 003420 000002 003502 032765 001404 032737 001001 000001 003502 000001 003420 005002 017126 1357 010466 1358 010466 020227 000001 }332? 010474 000412 1362 010476 1363 010476 }3322 010502 005237 013737 1366 010510 1367 010512 000746 001001 003412 003420 500228: 50017$: 1371 010516 1372 010520 1373 010520 000645 500258: 003424 50011$: 016044 500078: 005002 000207 #MOD . CO, CMDWRD ;1F CMD IS REVERSE THEN: 500208 #%0.80T ,EOTFLG(RS) :1F NOT AT BOT THEN: 50021$ R2 ;LET R2 := #0 ;CLEAR EOT/BOT FLAG. BR 50022$ BIT BEQ BIT BNE #X0.EOT ,EOTFLG(RS) 50023$ #CMD. CO, CMDWRD 50024$ CLR R2 JSR PC ,NEXTU :FIND NEXT UNIT CMP R2,41 ;IF ALL UNIT ARE AT EOT/BOT THEN: BR EXARTN INC MOV NCNT :LET NCNT := NCNT + #1 :UPDATE RECORD COUNT. CMDWRD ,PCMDWD sSAVE PREVIOUS COMMAND WORD. BR 500108 JSR PC,VFYDAT BR 50006$ CLR R2 B8R EXARTN: RTS PC 1376 1377 1378 1379 1380 1381 : : : : ; 1382 }ggz 1385 010524 1386 010530 1387 010530 1388 010536 1389 010540 1390 010546 1391 010550 BIT BEQ BIT BNE CLR BNE 000655 004737 };;g 010522 SEQ 0069 :ELSE IF CMD IS NOT REVERSE: sIF NOT AT EOT OR NOT A MOTION CMD THEN: JCLEAR EOT/BOT FLAG. 500248: 1368 010512 }ggg 500208: 50023$: 004737 1359 010472 PAGE 20-23 500218 : 000411 1352 010460 1353 1354 010460 1355 010460 1356 010464 , E 6 : 004737 017060 026527 001465 032737 001421 032765 002604 177777 000400 003420 000002 003502 500168 50025$ ;RETURN WITH R2 = #1. ;IF LAST CMD WAS A WRITE VERIFY, THEN GO JVERIFY THE LAST N RECORDS OF DATA. ;LET R2 := #0 ;SET NORMAL RETURN INDICATOR. *RETURN. SUBROUTINE TO ISSUE COMMAND TO ALL DEVICES. WAIT FOR ALL INTERRUPTS, AND CHECK ALL STATUS. INPUTS: OUTPUTS: REGISTERS: CALLS: EXSUB:: JSR 500268: CMP BEQ BIT BEQ BIT EXCUTE,GOWAIT ,NEXTU,F IRSTU. PC,FIRSTU :SET UP FOR FIRST UNIT. DEVTBL (RS) , #END 50027$ #MOD . CO, CMDWRD 500308 #X0.B0OT,EOTFLG(RS) ;WHILE THERE ARE MORE DEVICES: ;IF CMD IS REVERSE THEN: :IF NOT AT BOT g 10602 000402 R 004737 o POND = i = b w o b b— —— b OO0O0O0OO0O0 — 82 2 3FELR &&K SIKIIER ShSvmoo )3 OO00C 001014 032765 001406 105737 001402 004737 © OO0 perd o o 010556 OO0 SRR aR 2R28%E b D D ) D p D b[ - —_ PR ¥ O O O O ERENNEEDESAN & 88 B NN WINWNNW wd NONININININD b o cd cd cd cd = d e b 0 WN=O VRNV WN=O ~Nown 25-MAY-82 09:51 000001 SEQ 0070 012054 50033s: 50032$: 012054 50031s: 000435 023727 001011 032765 001405 003512 032765 001404 032737 001003 000001 003502 000001 003420 }22? 010664 004737 012054 1426 010670 1427 010672 1428 010672 1429 010676 1430 010700 1431 1432 010704 1433 1434 010704 1435 1436 010704 }237 010704 000405 SN wviun o pary —d o d o 0000 O 002616 172646 D D ) D d 016537 005077 b 003502 D d e 50031% #X0.EOT ,EOTFLG(RS) 5 b3 sBUT IF AT EOT sAND ALL OTHERS AT EOT JSR PC,EXCUTE : THEN EXECUTE REV CMD sIF NOT ALL AT EOT, FREEZE UNIT(S) AT EOT BR 500348 :IF NOT AT BOT AND JSR PC,EXCUTE ;NOT AT EOT, EXEC REV CMD BR 50035$ ;ELSE IF CMD IS NOT REVERSE: CMP CMDLG, #2 BIT #X0,B0T ,EOTFLG(RS) : 500348 000002 b D ed BEQ 003524 000002 e BNE BIT 003502 003426 38 1439 010710 1440 010712 1441 010712 1442 010716 1443 010720 1444 010724 010724 1445 010726 1446 010726 1447 010732 PAGE 20-24 105737 001402 004737 : 500308 BNE 50037%: 003524 MOV BTADDR(RS) ,BTPT : BIT BEQ BIT BNE #X0.EOT ,EOTFLG(RS) 50037 #CMD. CO, CMDWRD 500408 JSR PC.EXCUTE BR 500418 TSTB ALLEOT JSR PC.EXCUTE JSR PC.NEXTU BR 50026% TST8 8EQ RPTFLG 500438 :IF REPORT HAS BEEN REQUESTED EEN REQUESTED THEN: THEN CLRB DORPT RPTFLG sCLR_THE FLAG, sPRINT THE PERFORMANCE REPORT. CLR : 500368 500408: BEQ 012054 50036$ - aBTPT 500428 CLEAR BAD JLET SPOTBTPT COUNTS WHE WRITING I . FRiy T WHEN := QTADDR(AS) ;LET @BTPT := #0 sIF NOT AT EOT OR NOT A MOTION CMD THEN: sISSUE CMD TO TSO5 sIFB ALLEOT NE #0 THEN : 500428 500418: 004737 017126 000707 105737 001403 105037 003517 50027%: 003517 104424 004737 : 500358 017060 50043$: 50044$: JSR PC,FIRSTU sFIND NEXT UNIT IN TEST CYCLE. sSET UP FOR FIRST UNIT, TRAP CSDRPT (AT~ GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION S | GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1448 010732 1449 010740 1450 010742 1451 010750 145% 010752 1453 010760 14564 010762 1455 010770 1456 010772 1457 010776 1458 011000 1459 1460 011004 1461 1462 011004 1463 011006 }22? 011006 1466 011012 1467 1468 1469 011012 1470 011012 1471 011014 026527 001450 032737 001421 032765 001014 032765 001406 105737 001402 004737 004737 004737 105737 001402 004737 003502 000001 003502 .G 6. : PAGE 20~25 CMP 003524 012364 SEQ 0071 DEVTBL(RS) ,#END ;WHILE THERE ARE MORE DEVICES: BEQ BIT BEQ BIT BNE BIT BEQ 1ST8 BEQ JSR 50045% #MOD. CO, CMDWRD 500468 #X0.B0OT ,EOTFLG(RS) 50047% #X0.EOT ,EOTFLG(RS) 500508 ALLEOT 50051% PC,GOWAIT BR 50052% JSR PC,GOWAIT sWAIT FOR INT,CHECK STAT BR 500538 sELSE IF CMD IS FORWARD: BIT BEQ BIT BNE #X0.EOT ,EOTFLG(RS) 500548 #CMD.CO, CMDWRD 50055% JSR PC.GOWAIT BR 50056% TSTB BEQ JSR ALLEOT 50057% JSR PC.NEXTU BR 500448 RTS PC sIF CMD IS REVERSE THEN: ;IF NOT AT BOT ;BUT IF AT EOT sAND ALL OTHERS AT EOT sTHEN WAIT FOR CMD END :IF NOT ALL AT EOT, DO NOT WAIT 50050s: 012364 ;NOT AT BOT, AND NOT AT EOT 500478: 000001 003502 000001 003420 500468: 500548 : 012364 003524 500558 : 012364 :IF NOT AT EOT OR NOT A MOTION CMD THEN: sWAIT FOR INT,CHECK STATUS. :IFB ALLEOT NE #0 THEN PC,GOWAIT 500568 : 004737 1493 011060 1494 011062 }232 011062 000724 }ggz 000002 A 50057s: }23} 011054 1500 003420 000420 000405 1501 1502 000400 e 500528: 1480 011040 1481 0711042 1482 011042 1497 1498 1499 177777 000402 032765 001404 032737 001003 1486 011054 1487 1488 011054 1489 1490 011054 002604 D 500518: 1472 011014 1473 011022 1474 011024 1475 011032 1476 011034 1477 }2;8 011034 1483 011046 }232 011050 25<MAY-82 09:51 T 000207 017126 50053s$: 500458: : H H : H : : sFIND NEXT UNIT IN TEST CYCLE. sRETURN, THIS SUBROUTINE STORES THE ASCII FOR THE CURRENT COMMAND AND PREVIOUS COMMAND IN THE STANDARD ERROR MESSAGE. ON ENTRY LOCATION CMDWRD CONTAINS CURRENT CMD AND LOCATION PCMDWD CONTAINS PREVIOUS CMD. INPUTS: OUTPUTS: REGISTERS: CALLS: R3, Ré. GCMDA (2T~] f MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY=82 09:51 013704 004737 0034%0 013136 CMDAC:: MOV JSR 1508 011100 112337 00644 MOVB 1511 011114 004737 011136 1513 011126 1514 011130 112337 111337 006555 006556 112337 006440 CMDWRD ,R4:LET R4 := CMDWRD ;R4 = CMD BINARY. PC, GCMDA :GET CMD ASCII. MOVB mbnummg *MOV CMD ASCII E S INTO MSG. :Ré = PREVI CMD OUS BINARY. (R3)+.STAER1+ 1509 011106 111337 442 1510 011110 013704 003424 MOVB MOV (R3),STAER1+4 PCMDWD , R 1512 011120 MOVB (R$)+,STAER7+24 }g}g 011134 112337 000207 JSR 006554 PC, GCMDA MOVB MOVEB (R3)+.STAER7+25 (R3),STAER7+26 RTS 1517 1518 1519 ; : PC : ; INPUTS : OUTPUTS : }ggz ; CALLS: 1522 1527 011140 : 005003 026304 1528 011144 1529 011146 001403 062703 1531 011154 1532 011154 1533 011156 1534 011160 1535 011162 1536 011164 010304 006203 000240 060403 062703 1530 011152 }ggz 011170 000772 000207 CMP 000002 50061$: 004040 ; ; ; ; ; ;gzg ; 005037 012137 011137 011137 013702 042702 01020 162703 001003 1556 011236 1557 011240 000464 023727 1555 011232 1558 011246 }ggg 011250 1561 011256 011137 001003 012737 003426 002330 002336 003416 002330 177740 002332 MOV ASR NOP ADD ADD R3,R¢ R3 BR 100011 000002 003426 2%: 500628: : INTO MSG. ;RETURN. GO EXECUTE NEXT FUNCTION. sINIT CMD TBL POINTER. ;UNTIL CURRENT CMD IS FOUND: :LET R3 := R3 + #2 50060$ ;LET R4 := R3 R4 ,R3 #CMDASC,R3 PC ;SEARCH CMD TABLE. sPOINT 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: MOV 002330 :MOVE CMD ASCII R¢ = PRESENT COMMAND WORD. R3 = ADDRESS OF PRESENT COMMAND ASCII. CMDTBL (R3) ,Ré4 50061$ #2.R3 SETUP:: CLR MOV MOV MOV MOV BIC MOV SUB BNE 000010 :GET CMD ASCII. R3;LET R3 := #0 BEQ ADD RTS 1539 1540 1541 1542 1543 1546 011172 1547 011176 1548 011202 1549 011206 1550 011212 1551 011216 1552 011222 1553 011224 1554 011230 REGISTERS: GCMDA:: CLR 500608: 003752 : SUBROUTINE TO FIND THE ASCII CQUIVILENT OF THE COMMAND IN Ré. ADDRESS OF ASCII 1ST WORD IS RETURNED IN R3. 1520 1521 1525 011136 1526 011140 4 6 SEQ 0072 1505 011064 1506 011070 1507 011076 H PAGE 20~26 BR CMP BNE MOV GENPAT. CMDLG (R1)+,CMDPKT (R1), CMDPKT+CP. CNT (R1) ,BRFCNT CMDPKT ,R2 #NCMD. C,R2 R2.R3 #CMD.C3.R3 28 ;CLR CMD LOGGING CODE (DISABLES LOGGING) :LOAD THE COMMAND WORD. :LOAD THE BYTE/RECORD/FILE COUNT. *SAVE BRF FOR THIS COMMAND. *GET CMD. :CLR ALL BUT CMD BITS. :SAVE IT TWICE. *POSITION COMMAND? *BR IF NOT. 3s CMDPKT , #WTM :IF (MD IS A WRITE TAPE MARK THEN: (R1),CMDPKT+2 50062% #2,CMDLG :MOVE BPCR IN 2ND PKT WORD FOR POSITION CMD. ;W LOGGING CODE IS 2. (AT~ ' GLOBAL AREAS | ! | GLOBAL AREAS MACRO M1113 . GLOBAL SUBROUTINES SECTION l 156% 011256 1563 011260 1564 011264 1565 011266 1566 011274 1567 011302 1568 011304 1569 1570 011312 1571 011314 1572 011314 1573 1574 011322 1575 011322 1576 011324 1577 011326 1578 011332 1579 011334 1580 011342 1581 011350 1582 011354 1583 011362 1584 011364 1585 011366 1586 011372 1587 011374 1588 011402 1589 011410 1590 011412 1591 011416 1592 011422 1593 011426 1594 011430 1595 011434 1596 011436 1597 011444 1598 011450 1599 011456 1600 011464 1601 011466 1602 011474 1603 1604 011502 1605 011504 1606 011504 1607 1608 011510 1609 011510 1610 011516 1611 011524 1612 011530 1613 011532 1614 1615 011540 1616 011540 1617 011546 1618 011554 010203 162703 001017 013737 032737 001404 012737 25-MAY-82 09:51 6 SEQ 0073 MOV SUB BNE 000001 003410 000400 002332 002330 000004 003426 000006 I PAGE 20-27 003426 MOV BIT 500638: 500648: 18: 002332 002336 A ¥ 002336 002332 58: 003516 002330 50065$: 003516 003420 002330 003520 003424 003420 010000 002330 004000 002330 002330 003422 BR 500648 MOV #6,CMDLG B8R MOV SUB BNE 500668: BR 3s TSUNT, SCHBK+10 MOV SUB R2.R3 #CMD.C1!CMD.C2,R3 MOV MOV ST MOV CLR MOV MOV SUB #DIACNT,CMDPKT+CP. CNT #DI . CMDPKT+CP. ABLK ADL (R1)+ (R1)+,NCNT1 NCNT (R1)+,PATERN R2.R #CMD.CO!CMD.C2.R3 MOV JSR DATAWT, CMDPKT+CP.ADL PC,GENPAT BIT BEQ 3s 13 #2.CMDLG #VFY,C,CMDPKT 500658 MOVB BIC #1,VFYFLG #VEY.C,CMDPKT BR 50066% CLRB VFYFLG MOV MOV CMDWRD , PCMDWD CMDPKT . CMDWRD IF IF T 0AD THE BUFFER ADDR. S A READ REV THEN: ;LOGGING CODE IS 4. ELSE = IF CMD IS A READ FWD: ;LOGGING CODE IS 6. sA SET CHARACTERISTICS CMD? sBR IF NOT. sSET UP ADR LO FOR SET CHAR. JSET BUFFER EXTENT sSTORE CHARACTERISTIC CODE IN SCH BLOCK. JUNIT # sCONTINUE. JIS IT sA DIAGNOSTIC (DIA) CMD? JBR IF NOT. sLOAD BUFFER EXTENT. sLOAD BUFFER ADR LOW. sPOINT TO N (NUMBER OF TIMES TO EXECUTE THIS INS ;SAVE NUMBER OF OPERATIONS JCLEAR OPERATION COUNTER. :?gv;TPAtTERN CODE FOR CURRENT CMD. A WRITE? JBR !F NOT. sLOAD WRITE BUFFER LO ORDER. G0 GENERATE THE WRITE PATTERN. sWRITE LOGGING CODE IS 2. sIF DATA VERIFICATION IS REQUIRED: sSET VERIFY FLAG. sCLEAR VERIFY BIT(NOT USED BY HARDWARE). sIF DATA VERIFICATION IS NOT REQUIRED: sCLR VERIFY FLAG. BEQ BIS SWBFLG sSAVE PREVIOUS CMD WORD. sSAVE PRESENT CMD WORD. :IF SWAP BYTES IS ENABLED: #5u8.C,CMDPKT sSET SWAP BIT IN COMMAND. BIC #BRF . C,CMDPKT sCLR BRF BIT (INTERNAL ONLY). :§A¥5R;ST WORD OF COMMAND P(CKET. TSTB 500678: #CMD.C2,R3 48 #SC , CMDPKT+CP. HBK ADL #SCHCNT, CMDPKT+CP. CNT (R1 , SCHBK ) +6 MOV READ? 3s R2.R3 MOV MOV MOV BNE 002332 003426 002330 500638 #6,CMDLG BNE 38: #M0D ., CO, CMOPK T BEQ MOV MOV 002504 R2,R3 #CMD.CO,R3 1$ DATARD , CMDPKT +CP. ADL MOV RTS 50067% CMDPKT . CMDSAV PC | GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 1619 i ! SEQ 0074 THIS SUBROUTINE SETS UP AND CALLS THE APPROPRIATE SUBROUTINE TO GENERATE OUTPU $ REGIS TERS: CALLS: 1624 013703 006 :MoV GENPAT: 002 011620 JSR RTS R2, R3, Ré4. PATRO = PATR? :grsnn.ns :SETUP PATTERN ROUTINE POINTER gzrcnr.ac :SET LENGTH OF WRITE BFR #1,R% #2 R4 2araur.a2 ;ROUNDED UP TO NEXT WORD *WITH FIRST WORD RESERVED *FOR RECORD COUNT PC.PATTBL(R3) PC ;GO GENERATE THE APPROPRIATE PATTERN. *RETURN TO SETUP SUBROUT INE. Sg\AWNO HOOON OOONVNNN: VY PATTBL: PATRO PATR1 PATR2 PATR3 PATR4 PATRS PATR6 PATR?7 PATR8 nNO b b b b e b b b b b i b - NP (=lelelelelelele]e] ;TS05 WRITE PATTERN LOOKUP TABLE. USED TO JSR TO THE sCORRECT DATA PATTERN GENERATING ROUTINE. s INCREMENTING PATTERN. 000400 000002 012703 }660 011670 661 1662 011674 1663 011674 000764 }665 011676 000207 1 6 }zgu?§SlRED PATTERN FOR THE WRITE AND WRITE/VERIFY COMMANDS. 162 1625 1626 1627 011553 1628 01156, 1629 011564 1630 011570 1631 011572 1632 011576 1633 011602 1634 011606 1635 011612 1636 011616 1637 1638 1639 1640 1641 011620 1642 011622 1643 011624 1644 011626 1645 011630 1646 011632 1647 011634 1648 011636 1649 011640 1650 1651 1652 1653 011642 1654 011646 1655 011652 J PAGE 20-28 #400,R3:LET R3 := #400 PATRO:: 1$: #2,R4;LET R4 := R4 - #2 ;DECREMENT WORD COUNT. 28 001002 001000 R3, (R2)+ #1002,R3 ggbgagoo 000400 #400,R3 500708: 2%: 0 - 377. :BR IF DONE *STORE DATA WORD. *UPDATE PATTERN. :IF PATTERN HAS WRAPPED AROUND THEN: ;INIT THE PATTERN AGAIN. BR 18 ;D0 IT AGAIN. RTS PC :RETURN. sALL ONE'S PATTERN. 012703 1674 1675 011716 000207 177777 000002 PATR1:: MOV IROPAT: sus BMI MOV BR #-1,R3 #2 R4 1$ sALL ONES PATTERN;. sDECREMENT BYTE COUNT. ;DONE? ,BR IF YES. 1$: PC sRETURN, RTS R3, (R2)+ ZROPAT sIF NOT LOAD NEXT BYTE WITH PATTERN. ;D0 IT AGAIN. (AT~ | | | GLOBAL AREAS MACRO M1113 25-MAY<82 09:51 GLOBAL SUBROUTINES SECTION 1676 }g;‘ 1679 011720 1680 011722 }gfi; 011726 00500 004737 000207 012703 1687 011740 1688 011742 1689 011744 1690 011746 1691 011750 100404 01032 00630 005503 000771 011704 }ggg 011764 000401 162704 000002 000207 }ggg 1696 011754 1697 011760 . 012703 004737 000207 177376 011734 012703 004737 000207 };}g 012016 000207 125125 011704 177400 000002 00077 WLKZRO: SUB BMI MOV ASL ADC BR :: MOV JSR RTS :: MOV JSR RTS :: MOV SUB BMI] MOV B8R RTS };}9 #401,R3 :INIT PATTERN REGISTER. 18 R3, (R2)+ R3 R3 WLKZRO :BR IF DONE. :LOAD DATA, *SHIFT PATTERN. :ADD CARRY BACK INTO PATTERN. :D0 IT AGAIN. #2,R4;LET R4 := R4 - #2 ;DECREMENT WORD COUNT. PC *RETURN. #177376,R3 PC,WLKZRO PC sINIT PATTERN REGISTER. :GO GENERATE :IT. *RETURN. #125125,R3 PC,ZROPAT PC :INIT PATTERN REGISTER. :GO GENERATE IT. *RETURN. #177400,R3 #2.R4 2% R3, (R2)+ :INIT PATTERN REGISTER. :DECREMENT WORD COUNT. :BR IF DONE. :LOAD DATA, PC :RETURN., 18 DO IT AGAIN. JRANDOM PATTERN GENERATOR 1718 012020 1719 012026 1720 012026 1721 012034 1722 012042 162704 100411 063737 063737 013722 };gg 012050 000207 000764 };59 1730 1731 1732 PATR3:: MOV ;ALTERNATING BYTES OF 000 AND 377. 012703 162704 100402 010322 };53 012052 :CLR PATTERN REGISTER. :GO GENERATE IT. *RETURN. :COMPLEMENTED. 1709 012000 1710 012 1711 012010 1712 612012 1723 012046 R3 PC,ZROPAT PC ;ALTERNATING ONE AND ZERO BITS WITH ALTERNATE BYTES };8; 1713 012014 SEQ 0075 ;ZERO BIT WALKING FROM R TO L IN A FIELD OF 1°S. };8; };82 011776 PATR2:: CLR JSR RTS RTS 1700 1703 011766 1704 011772 6 ;ONE BIT WALKING FROM R TO L IN A FIELD OF ZEROES. 1685 011730 }23% 011752 K ;ALL ZEROES PATTERN. }2%2 1686 011734 PAGE 20-29 000002 003434 003432 003434 : SUB BMI ADD ADD MOV BR RTS #2,R4 GIT RANS ,RANB RANB,RANS RANS, (R2)+ ;GET NEW #. JSAVE #. PC JRETURN PATR? ;:DECREMENT WORD COUNT :BR IF DONE. +CONT INUE. NO PATTERN GENERATION. 000207 :: RTS PC :RETURN. THIS SUBROUTINE INITIATES TSOS COMMAND EXECUTION AND CHECKS FOR TSOS RESPONSE. INPUTS: NO~NW N = (NN N=N~N 003436 003436 ——da 23833 177777 1751 012134 1752 012136 1753 012142 1754 012146 1780 012246 1781 012254 012254 012256 012260 012262 CALLS: 003436 ST BNE 012734 JSR ERRDF JSR 000200 002524 003420 140004 002604 50072$: b 177777 003452 002544 50075$: 002474 50073$: 002544 ot 000020 | TIME1 sINIT TIMEOUT COUNTER. IWAIT :UPDATE. TIMEOUT COUNTER. :IF TIMED OUT: PC,MOVMSG :MOVE CURRENT PACKET MSG. 50072$ 2,NSSRM,STAERM *REPORT TSOS NOT READY TRAP 177777 000002 50077$: 002212 PC,DROPU :DROP THE UNIT. .WORD .WORD (CSERDF 2 NSSRM STAERM EXCRTN *RETURN. BIT BEQ CMP BNE MoV #TS.SSR,aTSSR(RS) 50071$ CMDWRD , #SCH 50073$ RS,RSSAVE sWAIT UNTIL DEVICE IS REAOY. CMP DEVTBL(RS) ,#END JSR JSR PC,WSSR PC.NEXTU BR 50074$ MOV MOV RSSAVE ,RS MSGPKA(RS) , SCHBK MOV MSGPKA(RS) ,R3 ;ADR OF THIS UNIT'S MSG PACKET. CMP R2,#AMSGCNT ;WHILE THERE ARE MORE LOCATIONS: MOV ADD #-1,(R3)+ #2,R2 sINIT THE MSG PACKET WITH ALL 1°S :UPDATE COUNTER. BR 50076$ TSTB DINT ;ARE INTERRUPTS DISABLED. :IF MORE THAN ONE INTERRUPT HAS OCCURED: JSR CLR BEQ 000770 104455 DROPU, MOVMSG, FIRSTU, NEXTU, WSSR. B8R BEQ 012700 017126 105737 001023 126527 003412 017537 R2, R3. WORD 003452 017060 020227 001405 012723 062702 REGISTERS: EXCUTE:: MO v #-1,TIME 718: :REPEAT 50071 DEC TIME1 017156 1750 012126 1770 012214 1771 012216 1772 012222 1773 1774 012226 1775 012230 1776 012230 1777 012234 1778 012236 1779 012244 : g8 1744 012110 1745 012114 1746 1747 012116 1748 012116 1749 012124 1755 012146 1756 012154 1757 012156 1758 012162 1759 1760 012166 1761 0121 1762 012170 1763 012174 1764 1765 012202 1766 012202 1767 012206 1768 012210 1769 012210 OUTPUTS: SR 012100 012102 012104 012106 P ; 012737 6 SEQ 0076 1733 1734 1735 1736 1737 012054 1738 01206 1739 01206 1740 012066 1741 012072 174% 012074 1743 012100 L PAGE 20-30 > 25-MAY-82 09:51 BNE PC.FIRSTU 50075$ R2 500778 1$ 003472 000001 Sf:’ %8{552("5"'1 002524 003454 MOV BTSSR(RS), TSSREG ERRDF (AT~ GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 15,TOOMM,STAERM ;IF WE ARE DOING A SET CHAR CMD THEN: :SAVE CURRENT DEVICE POINTER. *FIND FIRST UNIT. ;WHILE DEVTBL(RS) NE #END DO ;WAIT FOR UNIT READY OR TIME OUT, :FIND NEXT UNIT. ;RESTORE CURRENT DEVICE POINTER. :SET UP ADR OF MSG PKT IN SCH BLOCK. :CLR COUNTER. *BR IF YES. :FREEZE THE CURRENT STATUS REG FOR PRINT ;REPORT TOO MANY INTERRUPTS. TRAP .WORD "WORD .WORD CSERDF 15 TOOMM STAERM GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 3N NN s e O000O0O 003472 000200 003471 D — et OO0 sSNooonnvoN N ] JSR BR : 501008 50101s: 000200 012734 ————————————— e e, 2 SEQ 0077 PC,DROPU ;DROP THE UNIT EXCRTN sRETURN = UNIT HAS BEEN DROPPED. CLR 8IS 1ST8 BNE INC MoV INTFLG(RS) #1E.C,CMDOPKT sCLR INTERRUPT FLAG 7R THIS DEV. :SET INT ENABLE BIT. RECCNT(RS) RECCNT(RS) ,aDATAWT sLET RECCNT(RS) := RECCNT(RS) + 1 s THEN UPDATE REC COUNT TO WRITE IT ON TAPE Mov #CMDPKT ,aTSDB(RS) ;LOAD TSDB WITH CMDPKT ADDRESS BIT BEQ JSR ERRDF gg?bgik.aTSSR(RS) :IF READY DID NOT DROP THEN: PC,MOVMSG sMOVE CURRENT MESSAGE PACKET TO COMMON. ES?S%E:IFB ERRREC EQ #0 THEN 3,TOERM,STAERM s IF NOT RETRYING sTHIS INITIATES COMMAND EXECUTION. sREPORT NO TSO5 RESPONSE. TRAP CSERDF .WORD WORD TOERM STAERM LWORD e e 017156 002330 OO0O00O0O000O0 017156 JSR 50102%: EXCRTN: RTS s 177777 WVAIG) 012737 PC,DROPU :DROP THE UNIT PC sRETURN, :: MOV : ;REPEA #-1,TIME BREAK 001014 012727 000 003420 CMP BNE DELAY 000012 CMDWRD , #RWD 501048 10. 177772 177756 501048: 501058: CMP BEQ (MP BNE JINIT TIME OUT COUNTER. JREPEAT UNTIL INTERRUPT OCCURES: 26O TO THE SUPER TO ALLOW TTY INPUT. 002116 023727 003420 001404 023727. 003420 001014 3 THIS SUBROUTINE WAITS FOR THE TSOS INERRUPT OR DONE BIT TO SET AND ALLOWS THE OPERATOR TO TRANSFER CONROL TO THE SUPERVISOR. UPON APPEARANCE OF THE INTERRUPT OR DONE, CHECK TSSR FOR STATUS ERRORS, LOG BYTES AND ERRORS AND PERFORM ERROR RECOVERY IF NESSASARY. INPUTS: OUTPUTS: REGISTERS: R2, R3. CALLS: DROPU, MOVMSG, RECUD, CHKERR, LOG, CLRERR. Se%etencnengngn, ] o O 004737 000434 ———————————— LI PAGE 20-31 003376 003376 OO0 -.-n;-a — d b b =leleleleleleTele l] D e T s IO JOS S Y R G Y 3233323333 & FRSR NNNNNN 1782 012264 }783 012270 25-MAY-82 09:51 e r—— CMDWRD ,#SFF 50105% CMDWRD ,#SFR 50106% TRAP sIF COMMAND WAS REWIND THEN: sWAIT EXTRA MSECS EACH LOOP. MOV .WORD MOV WORD DEC BNE DEC BNE C$BRK #10.,(PC)+ O LSDLY,(PC)+ O -6(PC) b =22(PC) .~20 sIF CMDWRD EQ #SFF OR CMDWRD EQ #SFR THEN oo — 1826 012454 012454 012727 000000 25-MAY-82 09:51 N PAGE 20-32 DELAY 000014 SEQ 0078 12. ;ADD DELAY FOR SPACE TAPE MARK COMMANDS 002116 ~ vi NO NOVSOOO0 NN NN sy oo DN viviviviiuviuainivie SOV NV WN=OO s3aEazEs 3 NNV ~ 4 il WWWWWWNN R i ) D D nd D b cd D nd D D D b d — [+ ] 177756 560 012604 1852 012606 1853 012612 1854 012616 1855 1856 012622 50106%: 002212 000406 000200 005337 003436 001310 005737 001022 016577 005377 004737 50107%: 501108: 004737 004737 50111$: 003436 004737 105737 INTFLG(R5) ,R2 BR 501108 MOV :;S.SSR.R3 MOV aTSSR(RS) ,R2 DEC 170620 TST BNE 50103s TST ERRDF 012664 50112%: TIME1 251118 MOV DEC JSR ;FETCH INTERRUPT OCCURRED FLAG. ;SET UP A MASK FOR THE DONE BIT. sFETCH DONE BIT. sUPDATE TIMEOUT COUNTER. sREPEAT UNTIL INTERRUPT OR READY OCCURES. TIME1 TIME1 50112$ RECCNT(RS) ,aDATAWT aDATAWT PC ,MOVMSG :IF TIME OUT HAS OCCURRED: sMOVE CURRENT MSG PACKET TO CUOMMON AREA. 4 ,NOINTM,STAERM ;REPORT NO INTERRUPT. TRAP WORD «WORD «WORD CSERDF 4 NOINTM STAERM #ENDERF ,R3 BR 501138 JSR JSR JSR TST8 PC,MOVMSG PC,RECUD PC,CHKERR WRTYFG sMOVE CURRENT MSG. PACKET TO COMMON AREA. sUPDATE THE RECORD COUNT. sCHECK FOR STATUS ERRORS. :IFB WRTYFG EQ #0 THEN JSR MOV JSR PC,LOG #ENDERF ,R3 :LOG BYTES AND ERRORS. RTS PC PC,DROPU PC,CLRERR 50114$ PC,CLRERR -DROP THE UNIT. :LET RS := WENDERF :CLEAR ALL ERROR FLAGS :LET R3 := WENDERF sCLEAR ALL ERROR FLAGS 501148%: 50113$: =22(PC) =20 JSR MOV JSR BNE 015544 003472 012664 000207 =-6(PC) =4 O LSDLY,(PC)+ O s IF INTERRUPTS ARE ENABLED. R3,R2 TST BNE 017156 003472 012734 013020 013166 003463 MOV BNE 003436 000417 g6?57‘ BIC 104455 000004 004670 004737 TST COM 002524 003376 170614 012734 DEC BNE DEC BNE BNE 003472 012703 005103 017502 040302 #12.,(PC)+ LWORD Mov LWORD 177772 105737 001003 016502 MOV sRETURN IF DONE. (2] GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 B PAGE 20-33 7 SEQ 0079 SUBROUTINE TO CLEAR FLAGS. INPUTS : R3 = LWA TO BE CLEARED + 2. OUTPUTS: REGISTERS: 1 1878 012664 1879 012670 1880 012670 1881 012672 1882 012674 1883 012676 1884 CALLS: 012702 003460 R2 :: MOV #BGNFLG,R2 : JREPEAT 005022 020203 001375 000207 CLR CMP BNE (R2)+ R2,R3 50115% RTS sLET R2 := #BGNFLG JLET (R2)+ := #0 JUNTIL R2 EQ R3 PC iggfi?grlus TO WAIT UNTIL CURRENT UNIT IS READY OR UNTIL TIME OUT. OUTPUTS: REGISTERS: CALLS: 1893 012700 1894 012706 1895 012706 012706 1896 012710 1897 012714 1898 012722 1899 012724 1900 012730 1901 012732 1902 012732 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 012734 1914 012742 1915 012746 1916 012752 1917 012756 1918 012762 1919 012766 1920 012770 1921 012770 1922 012774 1923 012776 1924 013002 1925 1926 013006 012737 104422 001366 177777 003436 000200 003436 WSSR:: 501168%: 002524 003436 Mov BREAK 50117$: sINIT TIMEOUT COUNTER. sREPEAT UNTIL DEV READY OR TIMEOUT: sBREAK TO THE SUPERVISOR. TRAP C$BRK DEC BIT BNE TIME1 :UPDATE TIMEOUT COUNTER. #TS.SSR,@TSSR(R5) ;UNTIL #TS.SSR SETIN @TSSR(RS) OR TIME1 EQ #0 50117% BNE 50116% RTS PC TST 000207 #=1,TIMET TIME1 sRETURN, SUBROUTINE TO MOVE THE CURRENT MESSAGE PACKET TO THE COMMON AREA AND TO UPDATE THE CURRENT TERMINATION CLASS CODE. INPUTS: OUTPUTS: REGISTERS: CALLS: 017537 002524 003454 006 016503 005002 002544 020227 000020 062702 002354 000002 000770 003454 MOVMSG:: MOV MOV BIC Mov @TSSR(RS) ,TSSREG TSSREG,R2 #TSC.TCC,R2 R2,CTCC sAND SAVE IT MOV MSGPKA (RS) ,R3 ;ADR OF THIS DEVICE'S MSG. CMP R2,#MSGCNT ;WHILE THERE ARE MORE LOCATIONS: MOV ADD (R3)+,MSGPKT (R2) #2.R2 :MOVE MSG TO COMMON AREA. :UPDATE COUNTER. BR 501208 ASR 501208: R2, R3. CLR BEQ cTec - R2 50121$ sFREEZE THE STATUS REG CONTENTS sEXTRACT THE TERMINATION CLASS CODE, :CLR COUNTER. o GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 927 013010 WIWWWN WN=O 9 013016 013737 000207 002362 PAGE 20-34 SEQ 0080 003502 501218 ggGPKTOHS.XSO.EOTFLG sMOVE XSTATO TO EOT FLAG. REGISTERS: CALLS: o~ o N W —n —3 W OO0O0O0O0O0O (=l=lel=) SARRRRRRV/RLRLY ViV visvawviwnawwnn o~ VIS W N = 105737 o OCO0O0O00O0O0 D e D e D e e D e D d e d e D e d e e O OVOO — e VOOV MoV RTS SUBROUTINE TO ADJUST THE RECORD COUNT. l NPUTS:B OUTPUTS: D D e e D D OOV OOV OO OOVOO 0O 28 013010 25-MAY-82 09:51 003465 RECUD: : sIF RECORD HAS NOT BEEN LOGGED: RECCNT (RS5) #8IT0 cTcc :IF TAPE MOVED 003450 DEC BIT 100000 002366 BIT 003465 003420 102010 INCB CMP 000431 005265 RECLOG 003376 000001 003376 032737 ISTB BNE 501248: CMDWRD , #RWD 501248 RECCNT(RS) BR 50125% BIT #BRF . C, CMDWRD 003420 000400 003420 BIT 000400 003424 BIT INC 50126% #MOD. CO, CMDWRD 50127% #MOD. CO,PCMDWD 501308 RECCNT(RS) BR 501318 BIT #MOD. CO,PCMDWD : 501308 000412 032737 001406 032765 001002 005365 1969 013156 197 1971 013156 1972 1973 013156 1974 1975 1976 013156 1977 1978 013156 1979 1980 013156 1981 013156 1982 1983 013164 000400 003424 000002 003502 50127$: DEC 50132% #X0.BOT ,EOTFLG(RS) 50133$ RECCNT(RS) MoV RECCNT(RS) ,aDATAWT 8IT 003376 sLET RECCNT(RS) := RECCNT(RS) - m 50123 #X2.0PM,MSGPKT+MS.XS2 50123$ RECLOG CLR 004000 003376 50122% sSET_RECORD LOGGED, sIF THIS IS A REWIND CMD: sCLEAR RECORD COUNT, :IF BRF USED, UPDATE RECORD COUNT. sIF A FORWARD CMD: sIF PREV CMD WAS A FWD ALSO: s INCREMENT RECORD COUNT. s IF REVERSE CMD: :IF PREVIOUS CMD WAS A REV ALSO: ;WHEN NOT AT BOT THEN sDECREMENT RECORD COUNT. 50133s: 50132%: 50131s: 50126%: 50125s%: 016577 003376 170222 50123s: 50122%: sLET QDATAWT := RECCNT(RS) oo GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION | GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 1986 013164 SEEFSEERE 1985 1986 1987 1988 1989 1990 25-MAY-82 09:51 PAGE 20-35 SEQ 0081 000207 RTS PC sRETURN. THIS IS THE ERROR CHECK SUBROUTINE. AFTER INTERRUPT THIS SUBROUTINE IS CALLED TO CHECK THE TSOS STATUS. IF SPECIAL COND IS SET THEN THE TCC WANDLING 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: 166 174 032737 100000 003454 332 023727 003450 000002 2000 013206 2001 013212 288% 013214 2 2004 013220 2005 2006 013220 2007 013220 2008 013226 2009 013230 2010 013236 2011 013240 2012 013240 2013 013246 38}2 013250 105737 001002 005265 003471 003336 004000 003454 040000 003454 032737 001003 012702 100000 2026 015270 2027 013270 5858 013272 006302 004772 002366 000402 012702 50135s: 50137s: 000005 501418: 000004 #TS.SC.TSSREG ;IF SPECIAL COND STATUS IS SET THEN: 501348 CTCC, 42 ;1F TCC IS NOT 2 THEN: 50135s ERRREC :IF NOT IN ERROR RECOVERY: BNE INC 50136$ SCCNT(RS) BIT BNE BIT #TS.NXM,TSSREG sINC SC COUNTER. BEQ 50137% sWHEN NON-EXISTANT MEMO #TS.UPE,TSSREG 501408 BIT BNE MoV #5,R2 BR 501428 Mov #4 ,R2 BR 501438 Mov CTCC.R2 ASL R2 #X2.0PM MSGPKT+MS.XS2 5014198 sAND TAPE NOT MCVED sSET TCC5 INDEX sTAPE MOVED, SET TCC4 INDEX 501428: 000402 501408 : 003450 501438: 013372 2030 013276 2031 013300 2032 013300 032237 004000 2034 013310 005737 002360 2036 013316 105737 001403 105737 001411 003515 2040 013332 TSTB 032737 001004 032737 001412 073702 2038 013324 BEQ TCCO=-TCC7. 501368: 2016 013254 2017 013256 201% 013256 201 2020 013262 2021 2022 013262 2023 013264 2g§fi 013264 ¥ CHKERR:: BIT BEQ CMP R2, R4. 000426 003420 50134$: JSR PC,aTCCRA(R2) BR 501448 BIT #BRF . C, CMDWRD TST MSGPKT+MS.RFC TSTB RANDOM TSTB VFYFLG BEQ BEQ BEQ 003516 501478: BEQ 50145% 501463 50147% 501508 sSET DETECTED TCC INDEX sCURRENT TCC X 2. :GO TO THE TCC HANDLING SUBROUTINE. :IF BRF IS USED IN THIS CMD THEN: sIF THERE IS AN RFC THEN: :IFB RANDOM EQ #0 ORB VFYFLG NE #0 THEN wgwwwww 332 336 34 34 34 OSSO bddeDh 2041 204% 204 2044 2045 elelelelelele) 105737 001006 005265 25-MAY-82 09:51 PAGE 20-36 TST8 003521 SEQ 0082 IRE ?zf 3gggfi¥<a5) ERRHRD 13,RFCERM,STAERM 003356 104456 IF RFélzkggz gnga¥g°:RgaA£{OSEg - . sREPORT UPDATERFC HARD ER ERROR : H ROR COUN . TRAP CSERHRD .WORD .WORD RFCERM STAERM .WORD 35 013352 2046 2047 013354 2048 2049 013354 2050 2051 013354 2052 2053 013354 2054 2055 013354 2056 013354 2057 013360 2058 013362 2059 2060 013370 2061 013370 2062 2063 2064 2065 013372 2066 013374 2067 013376 2068 013400 2069 013402 2070 013404 2071 013406 2072 013410 2073 2074 2075 2076 2077 2078 2079 2080 2081 013412 2082 013416 013416 013420 013422 013424 2083 013426 2084 2085 2086 2087 2088 2089 T 13 50151s: 501508: 501468: 501458$: 105737 001403 013737 501448: 003467 003422 002330 501528: 000207 TST8B 41, RWERR S MoV CMDSAV, CMDPKT RTS PC sIF A READ/WRITE ERR ITE ERROR HAS OCCURRED THEN s sRESTORE CMD PACKET AFTER ERROR RECOvV. sRETURN. ADDRESSES OF TCC HANDLING ROUTINES FOR TERMINATION CLASS CODES 0 - 7. 013412 013430 013446 013556 013574 014210 014306 014450 TCCRA: TCCO TCC1 TCC2 TCC3 TCC4 TCCS TCC6 TCC7 SUBROUTINE TO HANDLE TERMINATION CLASS CODE CONDITION ERROR UNDEF NED SPECIA P L E 0, 0, UNDEFI INPUTS: OUTPUTS: REGISTERS: CALLS: 005265 104456 000005 004475 006120 000207 003356 TCCO:: INC ERRHRD HRDCNT (R5) 5,SCERM,STAERM ;UPDATE HARD ERROR COUNT. ;REPORT SPECIAL CONDITION ERROR. TRAP WORD RTS PC CSERHRD 5 sRETURN. SUBROUTINE TO HANDLE TERMINATION CLASS CODE 1, ATTENTION THIS TCC INDICATES THAT THE DRIVE HAS UNDERGONE A SIA%US Eaxaéglon . ?ggsrg§ GOING OFFLINE OR COMING ONLINE. o GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 PAGE 20-37 D — 017156 WN - N JSR RTS PC.DROPU PC sREPORT ATTENTION-UNIT OFF LINE. TRAP CSERDF WORD 6 ATTNM WORD .WORD STAERM ;DROP THE UNIT. sRETURN, REGISTERS: CALLS: (=11~ D d kb b b d e 032737 001404 105737 001401 000002 002362 TCC2:: 003514 d o D o 032737 D e 170002 002362 50153$: D 001427 b d b d d 105737 001403 105737 001421 003515 50155$: - o v W 003521 003471 » o W 003336 005265 003356 o W W TSTB EXPBOT BR TC2RTN BIT #X0.RLS'X0.RLL 'X0.TMK!X0.LET!X0.B0T ,MSGPKT+MS. XS0 BEQ 50154% TST8 RANDOM TST8 VFYFLG 1ST8 IRE BEQ : 501608 501618: 50153% 50153s sIF AT BOT AND BOT IS EXPECTED: JRETURN=TCC2 CAUSED BY EXPECTED BOT. sIF #X0.RLS'X0.RLL'X0.TMK'X0.LET!X0.BOT SETIN MSGPKT+MS.XSO THEN 50155% sIF TCC2 CAUSED BY ANYTHING BUT EOT: ;IFB RANDOM EQ #0 ORB VFYFLG NE #0 THEN 50156% IF RFE ERROR REPORT ARE ALLOWED: S ~ '" ?gge gg;ggg s o SET ENEMIE LS (R Secone INC SCCNT(RS) s INCREMENT THE SPEC COND COUNTER. INC ERRHRD HRDCNT (RS) 7,TSAM,STAERM BEQ 003470 005265 104456 W b — 105737 001016 105737 001403 105237 #X0.8B0T ,MSGPKT+MS . XS0 BEQ BEQ 003516 000402 W OOOOOgO (=l=T-] pury o 013512 BIT BEQ 000433 d WWW*WWWWNNNNNNNNNN—' b d ed o b NOMWL 6,ATTNM,STAERM INPUTS: OUTPUTS: D e b ERRDF SUBROUTINE TO HANDLE TERMINATION CLASS CODE 2, TAPE STATUS ALERT. D d D e cd cd e cd — b e e b e SIS US NS SN TN R2,Ré4 DROPU A STATUS CONDITION HAS BEEN ENCOUNTERED THAT MAY HAVE SIGNIFICANCE TO THE PROGRAM. BITS OF INTEREST INCLUDE TMK, RLS, LET, RLL, BOT, EOT. o TN S ]NNNINNNIN NN NP NN NN N NN NN N~N TCC1:: [+ - ENT. SNRNANEX XV d d d J\oggwgc d =D WWW =lelelelele ) OUTPUTS: REGISTERS: CALLS: SEQ 0083 BR 50160% 50161% . H IF WE ARE IN ERROR RECOVERY THEN: : 2 ’ - JUPDATE HARD ERROR COUNT. sREPORT TAPE STATUS ALERT. . ¥s TRAP CSERHRD WORD .WORD TSAM STAERM WORD 7 25-MAY-82 09:51 PAGE 20-38 50157%: 2121 013554 501568: 2143 013554 2144 2145 013554 2146 2147 4«8 501548: TC2RTN: PRTN TR T 000207 LA TR TR VS WN=OY ViV S — e d d d d e RN ek =D - b NN 2128 013554 013556 013556 TCC3:: 104455 RTS SEQ 0084 PC sRETURN, SUBROUTINE TO HANDLE TERMINATION CLASS CODE 3, FUNCTION REJECT. THE SPECIFIED FUNCTION WAS NOT INITIATED. BITS OF INTEREST ARE RMR, OFL, VCK, BOT, ILC, WLE., ILA, AND NBA. INPUTS: OUTPUTS: REGISTERS: CALLS: ERRDF R2.R4 DROPU 8,FUNRM,STAERM sREPORT FUNCTION REJECT. TRAP .WORD 215 7 013566 2158 013572 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 217 2172 2173 2174 2175 2176 2177 2178 013574 2179 013602 2180 013604 2181 013610 2182 013612 2183 013616 2184 013620 2185 013624 2186 013626 013626 013630 013632 013634 2187 0 004737 000207 017156 JSR RTS 3 S : : : : : : : : : : 3 : : : 3 023727 001125 105737 001522 105737 001007 105737 001404 104457 000011 005017 006120 003426 002210 003471 002207 000002 TCCé:: PC.DROPU «WORD . :DROP THE UNIT. PC CSERDF 8 FUNRM STAERM sRETURN, SUBROUTINE TO HANDLE 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. 2 WRITE-ERROR-RECOVERY ALGORITHMS CAN BE SELECTED: THE FIRST ONE, VIA BADTSW SWITCH, DOES DETECT BAD SPOTS ON TAPE. IT CALLS A WRITE RETRY SUBR UNTIL THE RECORD IS RECOVERED OR 20 BAD SPOTS HAVE 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: REG{STERS: R2.R4. CALCS: CMP BNE T1STB BEQ 1ST8 BNE 1ST8 : RTLE, EXCUTE, GOWAIT, DROPU., WRTY cnmg 22 50162$ BADTSW 50162 gms& ;IF CMDLG EQ #2 ANDB BADTSW NE #0 THEN ;IFB ERRREC EQ #0 ANDB ERCVER NE #0 THEN ERCVER BEQ 50163$ ERRSOFT 9,RERM,STAERM ; TRAP .WORD .WORD «WORD CSERSOF T 9 RERM STAERM (2]~ GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION )b SEQ 0085 - IST8 ?253 002213 003463 50166$: 003316 014614 003464 2211 013752 2212 2213 013752 2214 013760 2215 013765 50167$: 167534 000050 015155 000001 2220 014022 2221 2222 014030 2223 014030 2224 014034 2525 014040 2226 2227 014046 2228 2229 014046 2230 014050 22;1 014050 2232 2233 014054 2234 2235 014054 2236 014056 22%; 014056 2238 014062 2239 014070 012775 002350 105037 105237 003463 013737 HEN CMDWRD,WTYWRD INC CLR CLRB gg;z;g ATE R ;FIRST RETRY ON THIS RECORD: SUBSEQUENT BY=-PASS TH ;SAVE WRITE COMMAND gncxes T S S CMDPKT .WTYCMD CMDPKT+CP.CNT, WTYBRF RWERR :LOG SUBR FLAG: COUNT WRT ERRORS WRTYFG *RETRY IN PROGRESS FLAG :REPEAT WRTYCT(RS) ;:COUNT GLOBAL WRITE RETRIES *CLEAR # OF RETRIES PER RECORD :CLEAR # OF REPEATS RETRYC RPTCNT 5&?3?5' CMP aBTPT ,#40. cMP cue aBTPT, 1Pt #40. PRINTB #BTMSG2 BLO :REWRITE ERROR FLAG FOR WRTYSUBR YT, T :RETRIES WITH TCC4 ERRORS #g?e ’SQ#EA¥“£E$R?E§“5~ SAME RECOR 50167$ ’ — 50166$ sUNTIL RECOVERED OR 20 BAD SPOTS *WHEN EN 20 BAD SPOTS LOGGED :PRINT BAD TAPE OVERFLOW MSG MOV #BTMSG2,~(SP) MOV SP_ RO MoV JSR PC,BORERS ;ERASE BAD RECORD JSR CLR PC.DROPU RECCNT (RS) :DROP UNIT DEC 06 : MOV BEQ 000050 :1FB IREC EQ #0 THE ;RETRY FLAG FOR EXCUTE SUBR: DON'T WRTYER MOV MOV INCB INCB 003467 IREC 22&3@% INCB ;aga 167544 K 002514 50170$: 003424 RECCNT (RS) ’ MOV #RWUCPK,aTSDB(RS) sREWIND UNIT CLRB INCB MOV WRTYFG MISCFG :RETRY COMPLETE FLAG :DO NOT HALT ON THIS CMD FLG *RESTORE ORIGINAL WRT CMD AFTER RECOVERY BR 50171$ INCB UNREC BR 50172$ WTYWRD , PCMDWD : 501658 000402 105237 : 501648 003470 ;LET UNREC :B= UNREC + #1 : 50171$: 000454 004737 023727 003411 014466 003426 000002 #1,-(SP) o JSR CMP BLE PC,RTLE 3 CMDLG, #2 5017§£ 3 :CHECK FOR RETRY LIMIT EXCEEDED. :IF READ CMD THEN: » e oo | PAGE 20-39 ~ N 2193 013654 2194 013660 2195 2196 013662 2197 013670 2198 013676 2199 013704 2200 013710 2201 2202 013714 25-MAY-82 09:51 — d e 219% 013650 - OO0 2188 013636 2189 0 33 2190 01364 2191 013644 OO == SOOOSO VIVWNWW svu.nv\-om . GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION MACRO M1113 25-MAY-82 09:51 PAGE 20~40 . GLOBAL SUBROUTINES SECTION 5260 014072 261 014076 254 014100 014104 2242 014106 012702 20 02370 00540 052737 000020 003460 020000 002330 %%46 014114 7 SEQ 0086 MOV ASR CMP BLT BIS #RRECL ,R2 R2 RETRYC,R2 50174$ #0PP.C,CMDPKT TST BNE RETRY(C 50175% sR2=READ RETRY COUNT LIMIT /7 2 sIF RETRY COUNT IS MORE THAN WALF LIMIT: ;SET OPPOSITE BIT FOR RETRYZ. 50174$: 2248 014114 50173s: 003460 002207 TSTB sIF THIS IS THE ORIGINAL ERROR THEN: ERCVER BEQ 50175% ERRSOFT 9,RERM,STAERM ;REPORT RECOVERABLE ERROR TRAP LWORD «WORD +WORD 003460 001000 002213 50175$: 002330 012054 012364 000402 105237 003470 INC 8IS RETRYC lHOD C1,CMDPKT BNE INCB MOV 50176$ ERRREC (SP)+,R2 JSR JMP PC.EXCUTE GOWAIT BR 50177% INCB UNREC MOV 50176%: STAERM IREC sUPDATE RETRY COUNT. ;SET RETRY BIT IN CMD PACKET. :IF ERROR RECOVERY ENABLED: sSET ERROR RECOVERY FLAG. sPOP 2 RTN ADRS FROM STACK. (SP)+ _R2 ;GO EXECUTE THE RETRY COMMAND. ;GO WAIT FOR INTERRUPT + CHECK STATUS. sELSE IF ERROR RECOVERY IS NOT ENABLED: sSET UNRECOVERABLE ERROR FLAG. 50177%: 50172%: 000207 Ve Ne N800, 0, 2263 014170 5264 014174 265 2266 014200 2267 014202 2268 014202 2269 2270 014206 2271 2272 014206 2272 014206 9 RERM ;PROVIDED OPERATOR HAS ENABLED THE REPORT TSTB 003471 CSERSOFT 004737 005737 001004 014466 003460 TCCS:: RTS PC sRETURN SUBROUTINE TO HANDLE TERMINATION CLASS CODE 5, RECC.ERABLE ERROR. TAPE POSITION HAS NOT CHANGED. RECOVERY PROCEDURE IS TO LOG THE ERROR AND RE-ISSUE THE ORIGINAL COMMAND. INPUTS: OUTPUTS: REGISTERS: CALLS: JSR TST R2.R RTLE "EXCUTE, GOWAIT, DROPU. PC,RTLE RETRYC BNE 502008 ERRSOFT 10,RERM,STAERM sCHECK FOR RETRY LIMIT EXCEEDED sIF THIS IS THE ORIGINAL ERROR THEN: ;REPORT RECOVERABLE ERROR. TRAP CSERSOF T .WORD «WORD RERM STAERM WORD 003460 502008: INC RETRYC sUPDATE RETRY COUNTER. 10 o | | GLOBAL AREAS aNNNNNNNNNNNNNNNNNNNNNN WWWWWWWWW RORORS N W) = S388SRORSRS 5289 014%33 290 01424 2291 014244 229§ 014250 2293 014254 2296 014262 2295 014264 2296 014266 2297 014272 2298 2299 014276 2300 014300 105737 25-MAY-82 09:51 PAGE 20-41 002213 TST8 BNE INCB INC MOV 167124 000402 MoV MOV JSR JMP 502018: 105237 502028: 000207 SEQ 0087 IREC ;IF ERROR RECOVERY IS ENABLED: (SP)+,R2 (SP)+,R2 PC,EXCUTE GOWAIT sPOP 2 RTN ADRS FROM STACK. 502018 ERRREC sSET ERROR RECOVERY FLAG. RECCNT(RS) sUPDATE REC COUNT RECCNT(RS) ,aDATAWT sAND INSERT IT INTO WRT BFR BR 50202$ INCB UNREC RTS PC ;GO RE-ISSUE THE COMMAND. ;GO WAIT FOR INTERRUPT ¢ CHECK STATUS. sELSE IF ERROR RECOVERY IS NOT ENABLED: sSET UNRECOVERABLE ERROR FLAG. sRETURN. SUBROUTINE TO HANDLE TERMINATION CLASS CODE 6, UNRECOVERABLE ERROR. TAPE POSITION HAS BEEN LOST. THE ONLY VALID RECOVERY PROCEDURE b o d d e OCOVBNOWVSWNN=O d IS TO REWIND AND START OVER AT BOT UNLESS THE TAPE HAS LABELS OR SEQUENCE NUMBERS. THIS DIAGNOSTIC WILL REWIND AND RETRY THE COMMAND ONLY IF DENSITY CHECK IS SET, OTHERWISE THE UNIT WILL BE DROPPED FROM THE TEST SEQUENCE. INPUTS: OUTPUTS: REGISTERS: b e d CALLS: 033737 001016 000010 5737 1404 105237 105237 003426 002370 TCC6:: 003467 003470 : 502048 104455 000013 005041 006120 004737 2334 014362 004737 005737 001004 017156 014466 003460 50203$: X P O 000436 —— 2 — 014 2328 014344 2329 2330 014350 R2, Ré RTLE, WSSR, EXCUTE, GOWAIT, DROPU BIT BNE ggéggg.HSGPKTOHS.XS3:IF X3.DCK NOTSETIN MSGPKT+MS.XS3 THEN TST CMDLG BEQ INCB INCB 502048 RWERR UNREC ERRDF 11,URERM,STAERM JSR PC.DROPU BR 50205% JSR TST BNE ERRSOFT PC,RTLE RETRY(C 50206$ 11,URERM,STAERM sIF THERE IS NO DENSITY CHECK THEN: sIF CMD IS A READ OR WRITE THEN: :SET RD/WR ERROR FLAG, :SET UNRECOVERABLE ERROR FLAG. ;REPORT UNRECOVERABLE ERROR. TRAP s?ERDF «WORD «WORC URERM .WORD STAERM sREPORT ERROR + DROP UNIT. sELSE~IF THERE IS DENSITY CHECK: sCHECK FOR RETRY LIMIT EXCEEDED. :IF THIS IS THE ORIGINAL ERROR THEN: sREPORT DENSITY CHECK ERROR TRAP .WORD «WORD .WORD : 502068 %%ERSOFT URERM STAERM (2]~] GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 005237 105737 003460 003521 sUPDATE RETRY COUNT. BNE INCB MOV JSR 50207% ERRREC #RWCPK ,@TSDB(RS) PC,WSSR MOV JSR (SP)+.R2 PC,EXCUTE BR 502108 INCB UNREC RTS PC IRS (SP)+,R2 JMP GOWAIT s IF ERROR RECOVERY IS ENABLED THEN: sSET ERROR RECOVERY FLAG, sISSUE A REWIND COMMAND, ;WAIT FOR SUBSYSTEM READY, ;POP 2 RTN ADRS FROM STACK. sREISSUE THE COMMAND, sWAIT FOR INTERRUPT ;ELSE~IF ERR REC DISABLED: sSET UNRECOVERABLE ERROR FLAG. 50210s: : 502058 000207 sRETURN SUBROUTINE TO HANDLE TERMINATION CLASS CODE 7, FATAL SUBSYSTEM ERROR. THE SUBSYSTEM IS INCAPABLE OF PROPERLY PERFORMING COMMANDS OR AT LEAST ITS INTEGRITY IS SERIOUSLY QUESTIONABLE. REFER TO THE FATAL CLASS CODE FIELD IN THE TSSR REGISTER FOR ?ggb;éONAL INFORMATION ON THE TYPE OF FATAL ERROR. OUTPUTS: REGISTERS: CALLS: TCC7:: ERRDF R2, R4 12,FATSM,STAERM ;REPORT FATAL SUBSYSTEM ;::ga. .WORD -WORD 014456 014460 014464 OCOO0O0O0O0O0O0CO 321 RETRYC MOV : 502078 SEQ 0088 INC 1ST8 002514 014450 014450 014452 014454 EREYIINIRNILLs —~ 3“\00“500'\0—30 ASTNLSTNTNTNTNTNT NV ST NT NT.NY NN PAGE 20-42 017156 JSR RTS :DROP THE UNIT. ~ PC,DROPU PC CSERDF 12 FATSM STAERM sRETURN, SUBROUTINE TO CHECK FOR RETRY LIMIT EXCEEDED. PRINTS ERROR MESSAGE };P5¥§EEDED AND DROP UNIT UNLESS COMMAND IS A READ. OUTPUTS: REGISTERS: CALLS: 005737 0 003426 104455 RTLE:: TST BNE ERRDF CMDLG R2, Ré. DROPU sIF CMD IS NOT A READ OR WRITE THEN: 502118 11,URERM,STAERM ;REPORT UNRECOVERABLE ERROR. 000013 017156 JSR MOv BR PC,DROPY (SP)+,R2 RTLRTIN :POP sDROP THE UNIT, o .WORD .WORD .WORD RTN ADRS FROM STACK. sAND RETURN. %?ERDF URERM STAERM o 25-MAY-82 09:51 ViV RN NON NN NN NN WWWWWWWWWW RRRERRRERY EREERELEE WN=O VBN NN WN—=O tua: O VAV AW= OO NN W GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION &2 purd N O 2 2395 014554 2396 014560 2397 014562 2 398 2399 014562 24600 014564 2601 014564 2402 014572 2403 014574 2404 014600 014600 014602 014604 014606 2405 014610 2406 014612 o o b b b b b 0 282 — 4514 b 000000000 2387 014516 OANN=—WN & NONONN OWNWVI=WN WN=N =W NNOONOMWNT N=NONNN 25-MAY-82 09:51 50211%: 003467 003426 000002 003460 000020 RWERR BNE 50212§ CMP BNE INCB ERRDF 017156 50213s: 000020 502128: 003470 50215$: :SET READ/WRITE ERROR FLAG. CMDLG, #2 :IF CMD IS A WRT OR WTM: RETRYC,#WRECL ;IF RETRY COUNT HAS REACHED LIMIT: 502138 / UNREC s SET UNRECOVERABLE FLAG 14 ,RLEXM,STAERM ;REPORT RETRY LIMIT EXCEEDED. JSR MoV PC,DROPY (SP)+,R2 BR 502148 CMP RETRYC,#RRECL INCB ERRHRD UNREC MOV (SP)+,R2 BNE 50214$: 000207 7 SEQ 0089 INCB CMP 003470 003460 R PAGE 20-43 PTLRTN: RTS ;DROP_THE UNIT. LWORD «WORD «WORD ;POP 2 RTN ADRS FROM STACK. ;ELSE = CMD IS A READ: 502158 ;IF RETRY COUNT HAS MIT: REACHED LIMI $ REACH sSET UNRECOVERABLE FLAG 14 ,RLEXM,STAERM ;REPORT RECOVERABLE ERROR. TRAP .WORD «WORD .WORD sPOP 2 RTN ADRS FROM STACK. PC sRETURN SUBR TO REWRITE A BAD, BUT RECOVERABLE WRITTEN RECORD. REWRITE RECORD ON SAME SPOT: REPEAT & TIMES. IF ALL & REPEATS GOOD, RECORD IS RECOVERED AND A RECOVERABLE WRITE ERROR 1S LOGGED. IF ANY OF 4 REPEATS BAD, ERASE BAD RECORD, LOG SUSPECTED BAD SPOT, RETRY AGAIN. RETRY & TIMES, UP TO & REPEATS EACH. IF_RECORD NOT GOOD AFTER 4 RETRIES, ERASE IT, EXIT WITH ERROR FLAG WRTYER SET, PRINTING RETRY FAILED. THIS ALL SCHEME IS REENTERED 20 TIMES MAX. SPOTS MAX ARE ALLOWED. INPUTS: OUTPUTS: REGISTERS: CALLS: 6 242; 014614 WRTY:: 2428 014614 50217%: 004737 015274 004737 015450 105037 003464 50221$: IE 20 BAD R3.R4 BORERS, REWRT ;BEGIN RETRY :BEGIN REPEAT JSR CLRB JSR CSERDF 14 RLEXM STAERM PC,BORERS WRTYER PC,REWRT :REPEAT sREPEAT sBACKSPACE/ERASE ONE RECORD sCLEAR WRITE RETRY ERROR sREWRITE RECORD ON SAME SPOT CSERHRD 14 RLEXM STAERM o . GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2436 014630 2437 014634 2438 0 25-MAY-82 09:51 PAGE 20-44 SEu 0090 00366% 000004 6 BEQ 003464 TSTB 50222%: 502208: 003460 003464 2447 014664 2448 2449 014666 2450 014666 2451 014672 2452 014674 014674 014676 014702 014706 014712 014716 014720 014722 2453 014726 2454 014726 2455 014734 2456 014736 2457 014744 2458 014750 2459 014754 2460 014760 2461 014764 2462 014766 2463 014772 2464 014774 2465 2466 015000 2467 2468 015000 2471 015010 2472 2473 015014 2474 015014 2472 015022 247 2477 015024 2478 015024 2479 015030 2480 015032 2481 015036 2482 015040 015040 015044 50223s: : RECOVER g WRTYER BEQ 50221$ :END REPEAT INC TST8 BNE BR 002207 : 502228° RETRY(C :COUNT RETR 50223% 502168 ;EXIT RETRY LOOP IF RECOVERED WRTYER Y TSTB ERCVER PRINTB #BTMSG1,RETRYC,<B,RPTCNT> BEQ e — :1FB ERCVER NE #0 THEN 50225$ 003462 ’ :PRINT SUSPECTEDCBAD SPOT( ) -(SP BISB RPTCNT,(SP) MOV RETRYC .=(SP) MOV 000003 #8TMSGT = (SP) MOV #3,-(SP) MOV 062706 000010 023727 003460 000001 002616 003512 2 50225$: 000050 060304 016514 SP.RO TRAP 003512 003376 CSPNTB ADD CMP RETRYC,#1 :gg 2arzz.a4 BHI 50227% #10,5P :ON FIRST RETRY, . : H THE BAD SPOT COUNTER :AND THE LOGGING INDEX . ;IF R4 LOS #40. THEN MOV ADD Mov BTPT,R3 R3 .Ré& RECCNT(RS),(R4) INCB CLRB CLRB ERSFLG RWERR RPTCNT BNE CMP RETRYC ., #4 TST8 WRTYER :STORE FIRST 20 BAD SPOTS SLET R4:= R4 + R3 :LET (R4) := RECCNT(RS) 50227%: 105237 50226%: 003525 003467 003462 003460 003464 002207 015225 000001 000004 : 502248 502168: JERASE FLAG TO ERASE BAD RECORD .CANCELL ‘LOG'* ERROR FLAG ON FAILING RET sCLEAR REPEAT COUNT FOR NEXT RETRY LIMIT: & RETR 50217% o JEND RETRY ?gga 28%32: PRINTB #BTMSG3 BEQ 502318 e ;IFB WRTYER NE #0 THEN IFB ERCVER NE #0 THEN sPRINT RETRY FAILED "0 v MOV #BTMSG3,~(SP) #1,-(SP) GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 015050 015052 015056 010600 104414 062706 2483 2484 015060 2485 2486 015060 %2%; 015060 000207 2489 015062 2490 015064 2491 015066 000000 000000 000000 2492 2493 01507 01507 015076 015101 015104 015107 015112 015115 015120 015123 015126 015131 015134 015137 015142 015145 015150 015153 2494 015155 015160 015163 015166 015171 015174 015177 015202 015205 015210 015213 015216 015221 015224 2495 015225 015230 015233 015236 015241 015244 015247 015252 015255 015260 015263 015266 25-MAY-82 09:51 PAGE 20-45 SEQ 0091 Mov TRAP ADD 000004 SP,RO CSPNTB #4,SP 50231s: * 045 125 105 040 104 120 040 124 040 061 040 124 054 104 101 105 101 116 045 101 104 101 040 105 114 072 110 107 124 105 116 000 045 105 131 101 105 117 102 040 117 056 122 105 502308: 101 123 103 102 123 120 124 101 040 117 123 124 105 045 045 122 122 122 104 101 105 131 101 RTS PC WTYCMD: .WORD WTYWRD: .WORD WTYBRF: .WORD O 0 O BTMSG1: /%ASUSPECT BAD SPOT AFTER ZD1ZA RETRY, XD1XA REPEATAN/ .ASCIZ sSTORAGE FOR WRITE CMD WHILE RETRYING sSTORAGE FOR WRITE CMD WORD WHILE RETRYING :STORAGE FOR WRITE BPCR WHILE RETRYING 106 040 045 061 040 120 124 000 045 122 105 045 116 102 040 120 117 122 117 040 101 105 101 041 045 045 101 124 105 126 106 127 103 116 040 120 045 116 BTMSG2: .ASCIZ /XNXABAD TAPE OVERFLOW: CHANGE TAPE!'INZN/ 101 124 040 11 104 116 101 123 124 056 101 104 122 122 106 114 040 040 104 120 056 105 123 041 BTMSG3: .ASCIZ /XARETRY FAILED ON BAD SPOT...ERASED!XN/ = ':1 GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2496 2497 2498 2499 015271 045 25-MAY-82 09:51 116 PAGE 20-46 000 2500 .EVEN : : SUBR TO BACSPACE ONE RECORD IF THE ERASE FLAG IS SET, THEN ERASE THAT RECORD : : OUTPUTS: REGISTERS: ; 2501 2502 5282 ; INPUTS : ERSFLG CALLS: EXCUTE, GOWAIT, CKHAE 2505 015274 2506 015302 2507 015310 2508 015316 2509 015326 2510 015332 2511 015340 2512 015344 2513 015350 2514 015354 2515 015360 2516 015364 2517 015370 2518 015372 013737 012737 013737 042737 013737 012737 005037 004737 004737 004737 004737 105737 001426 013737 003420 104410 003420 004000 002330 000001 003426 011064 012054 012364 017456 003525 003424 003420 002330 002330 003422 002332 003420 003424 BORERS: :MOV MOV MOV BIC MOV MOV CLR JSR JSR JSR JSR TSTB BEQ MOV 2520 015406 013737 003420 002330 MOV 2519 015400 2521 015414 012737 013737 2522 015422 2523 015426 2524 015432 2525 015436 5;39 015442 004737 004737 004737 004737 105037 2528 015446 Sg%g 015446 000207 100411 002330 011064 072054 012364 017456 003525 003420 2533 015450 2534 015456 2535 015464 2536 015472 2537 015500 2538 015506 2539 015514 2540 015522 2541 015526 2542 015532 2543 015536 ggzg 015542 2546 2547 2548 2549 2550 2551 MOV 003422 MOV 502328: 5%%5 : 013737 013737 013737 013737 013737 013737 012737 004737 004737 004737 004737 000207 003420 015064 015062 002330 003406 015066 000002 011064 012054 012364 017456 003424 003420 002330 003422 002332 002336 003426 SEQ 0092 . CMDWRD,PCMDWD ;SET COMMAND TO SPACE REV #SRR, CMDWRD *LET CMDWRD := #SRR : CMDWRD,CMDPKT :LET CMDPKT := CMDWRD CLR.BY #BRF.( #BRF . C,CMDPKT CMDPKT,CMDSAV ;LET CMDSAV := CMDPKT #1,CMDPKT+CP.ADL :LET CMDPKT+CP.ADL := #1 CMDLG ;LET CMDLG := #0 : PC, CMDAC ; PC.EXCUTE : PC.GOWAIT : PC . CKHAE : ERSFLG ;WHEN ERASE FLAG IS SET, DO ERASE 50232$ CMDWRD , PCMDWD ;LET PCMDWD := CMDWRD : #ERS, CADWRD :LET CMDWRD := #ERS CMDPKT ., CMDSAV :LET CMDSAV := CMDPKT : CMDWRD , CMDPK T JSR JSR JSR JSR CLRB PC, CMDAC PC.EXCUTE PC.GOWAIT PC . CKHAE ERSFLG RTS PC - *LET CMDPKT := CMDWRD - ; ;LET ERSFLG :B= #0 SUBR TO REWRITE A BADLY WRITTEN RECORD REWRT:: MOV MOV MOV MOV MOV MOV MOV JSR JSR JSR JSR RTS : : ; : : ; 1 = DO ERASE CMDWRD,PCMDWD ;RESTORE WRITE COMMAND PACKET WTYWRD,CMDWRD :LET CMDWRD := WTYWRD WTYCMD,CMDPKT :LET CMDPKT := WTYCMD CMDPKT,CMDSAV :LET CMDSAV := CMDPKT : DATAWT,CMDPKT+CP.ADL ;LET CMDPKT+CP.ADL := DATAWT WTYBRF ,CMDPKT+CP.CNT :LET CMDPKT+CP.CNT := WTYBRF #2,CMDLG :LET CMDLG := #2 PC . CMDAC PC.EXCUTE ;RE=WRITE RECORD PC.GOWAIT : PC . CKHAE ; PC SUBROUTINE TO LOG BYTES READ/WRITTEN. ALSO UPDATES READ/WRITE ERROR COUNTERS. INPUTS: OUTPUTS: REGISTERS: R2, R3, R4. CALLS: [ GLOBAL AREAS SSSLTRALAUAR oo N ey oo — d e e e D d e wn Vi ) e e i D v O (=l=lololeleleleleleletala) W 200«3 Smmmmmmwm TLLTSS o0 NN LSS SN N TN TN ST NTNT NI 8]NN N v wvivivawvivaiviaw v o —OVvo W VN VW MACRO M1113 GLOBAL SUBROUTINES SECTION 15624 15624 2576 015644 2577 2578 015646 2579 015650 2580 015650 2581 015652 2582 015656 2583 015656 2584 015662 2585 015664 2586 015670 2 587 2588 015672 2589 015674 2590 015674 2591 015676 2592 015702 2593 015702 2594 015706 2595 015710 2596 015714 2 597 2598 015716 2599 015720 2600 015720 2601 015724 2602 015726 2603 015730 2604 015734 2605 015740 2606 015744 2607 015746 2608 015752 25-MAY-82 09:51 LOG:: 003466 003426 010203 062703 000010 021227 001747 005213 010302 062702 000010 021327 001747 005212 010203 062703 021227 003404 162712 005213 000010 001747 001750 000771 105737 003467 016036 002766 003470 005212 003416 000010 INCB ERLOG ;SET LOG DONE FLAG. gfig MOV 28222‘ RS.R2 gz? SUB S3F THERE 1S ACObECTHEN: ODE" y BINC (R4) ,R2 'ADJUST THE CODEBYT FOR ua.e INDE : *R2 = ADR OF #CNTBGNR2 , BRFCNT, (R2) ggg;§;4ns.nrc.anrc~r ADD 502368: LSW. THE RFC IS LOWER OR THE SAME AS BRF :SUBTRACT RFC FROM EXPECTED BRF. #10,R3 :R3 3 = ADR OF 2ND WORD. L SN 50237$ SUB INC #1000. , (R2) ;UPDATE BYTE COUNT (R3) :LET (R3) := (R3) + #1 BR 502368 Ty MoV R3R2, 5L :2ND WORD. = RS R3 + + & #10 ET R2 := : R2 = = ADR OF 3RD WORD " :WHILE (R3) GT #999. DO CMP BLE SUB INC (R3),#999. 502418 #1000. , (R3) :UPDATE BYTE COUNT (R2) ;LET (R2) := (R2) + #1 BR 502408 P MOV MoV 502428: YORBOUS So INDEX. :WHILE (R2) GT #999. DO (R2) ,#999. CMP BLE 502408: T LE :ADD BRF TO LSW. :IF MSGPKT+MS.RFC, (R2) ey g 001750 000771 :IF DATA AND ERRORS HAVE 3 NOT BEEN BEEN LOGGED THEN: THEN ADD ADD 001750 000771 ERLO ERLOG ADD 016030 002360 TSTB It R 000002 163712 8 SEQ 0093 003466 6 002360 C PAGE 2047 R2,R3 R2.R3, 2 :3RD WORD. LET R3 := R2 + #10 - + ;RS 3 = ADR OF 4TH WORD o :WHILE (R2) GT #999. DO CMP BLE (R2) ,#999. 502438 SUB INC #1000. , (R2) :UPDATE BYTE COUNT (R3) :LET (R3) := (R3) + M1 BR 50242$ . TSTB 353 ADD ?g?e BEQ ADD INC RWERR 2 3?233’ EINC(R4) ,R2 o 55225""5 50245$ #10,R2 (R2) IF R/W ERROR, RZ/ : 2 :4TH WORD. iono = UPDATE ERROR COUNT & | g neann F IS THE ERROR e UNRE R ? :YES, POINT TO NEXT COUNTER. :UPDATE THE ERROR COUNTER " THEN 2 2610 015754 2611 015756 261% 015756 2613 015760 2614 015764 2615 015766 2616 015772 2617 015774 2618 016000 2619 016002 016002 016006 016012 016016 016020 25-MAY-82 09:51 000424 502458: 002213 BR BNE 003522 ;ELSE = IF ERROR IS RECOVERABLE: 502468 50247 ; DROPED TSTB ERCVER PRINTB #NURTY1,RETRYC BEQ 003460 005422 000002 SEQ 0094 TSTB BNE 002207 000207 2636 016030 2637 016032 2633 016034 000000 000040 000100 2640 016036 2641 016040 2642 016042 000000 000020 000040 : ;1F UNIT HAS NOT BEEN DROPPED: 502508 502508 :PRINT # OF RETRIES TO necove:o v MOV MOV MOV TRAP 000006 2620 2621 016026 2622 2623 016026 2624 2625 2626 016026 2627 2628 016026 2629 2630 016026 2631 2632 016026 26%2 016026 3 50247%: : 502468 502448: 50234$: 50233$: : BINC: : EINC: ; : ; 105737 003516 003420 104401 012737 RTS PC INDEXES TO BYTE COUNTERS. 0 ;WRITE. 40 *READ REV. 100 *READ FWD. INDEXES TO READ/WRITE ERROR COUNTERS. 0 ;WRITE. 20 *READ REV. 40 : 104001 003424 003420 *READ FWD. IF A WRITE/VERIFY COMMAND IS ISSUED, CONTROL IS THEN TRANSFERRED TO THIS SUBROUTINE TO READ REVERSE, CHECK DATA, ?sgargoauAno. CHECK DATA, THEN CONTINUE TO NEXT COMMAND. OUTPUTS: REGISTERS: CALLS: VFYDAT::TSTB 003424 003420 003426 RETRYC,=(SP) #NURTY1,=-(SP) #2,-(SP) SP,RO #6,SP :PROVIDED PRINT HAS 8225 E NABLED 502508 : : ; 2657 016074 2658 016100 2659 016106 PAGE 20-48 BEQ MOV MOV MOV JSR MOV MoV VFEXC. VFYFLG 50251$ CMDWRD , PCMDWD #RDR, CMDWRD #4,CMDLG PC,VFEXC CMDWRD , PCMDWD #RDF , CMDWRD :1F DATA IS TO BE VERIFIED: ;SAVE THE PREVIOUS COMMAND WORD. *COMMAND IS READ REV +SET UP CMD LOGGING INDEX. :GO READ ALL THE RECORDS REV. +SAVE THE PREVIOUS COMMAND WORD. sCOMMAND IS READ FWD. — . GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2660 016114 2661 016122 012737 004737 2663 016126 2664 016126 000207 25-MAY-82 09:51 000006 016130 PAGE 20-49 SEQ 0095 003426 50251s: MOV JSR #6,CMDLG PC,VFEXC RTS PC sSET UP _CMD LOGGING INDEX. ;GO READ ALL RECORDS FwD. sRETURN, ?ggfi?g!lNE TO EXECUTE THE READ AND VERIFY, FORWARD OR REVERSE. OUTPUTS: REGISTERS: R2 CALLS: 2675 016130 2676 016136 2677 016144 2678 016150 2679 016152 2680 2681 016160 2682 016160 2683 016166 268? 016174 268 2686 016200 2687 016200 2688 016206 2689 016210 2690 016214 2691 016220 2692 016220 2693 016226 2694 016230 2695 016236 2696 016240 2697 016246 2698 016250 2699 016256 2700 016260 2701 016264 2702 016266 2703 2704 016272 2705 2706 016272 2707 016274 2708 016274 013737 042737 105737 001403 052737 003420 004000 003520 002330 002330 010000 002330 013737 013737 005037 002330 003410 003412 003422 002332 023737 002062 004737 004737 003412 003414 011064 017060 026527 002604 177777 000400 003420 000002 003502 000001 003502 004737 geg;ig.cnopxr BIS #5WB.C,CMDPKT Mov MOV CLR ;COMMAND PACKET = READ REV OR FWD. 50252% CMDPKT, CMDSAV 50255§: :1F NCNT 325 ggzgggAC g?? 225?5:T.EOTFLG(RS) IF BYTES BY ARE " oT 0 I Sves WAPPED : ;SET SWAB BIT IN CMD PACKET. DATARD ,CMDPKT+CP.ADL 50253s: UMILE NCNT LT NCNT1 00 :SAVE COMMAND PACKET 1ST WORD. ;SAVE BUFFER START ADDRESS. sCLEAR NUMBER OF OPERATIONS. ;WHILE THERE ARE , RECOR sSTORE CMD ASCII IN ERROR MSG. JS?UHILEPCBEégg{?RS) NE #END DO;as}LgPngzfriggrbgv{CES REMAINING: L0, :IFc:leiTR:::RSE e sIF : 003524 225?237.EOTFLG(RS) 28526¥ 016356 JSR PC,VFISU B8R 502638 JSR PC,VFISU sNOT AT EOT, READ VFY BR 502648 ;ELSE IF CMD IS NOT REVERSE: BIT #X0.EQT ,EOTFLG(RS) BEQ : 502628 000402 004737 ?égs BEQ : 502528 CMDWRD,CMDPKT g?% ?E?& 50261s: 016356 2710 016300 2712 016300 VFEXC:: MOV CMDAC, FIRSTU, VFISU, NEXTU, CKHAE. 50262% ;BUT IF AT EOT sAND ALL OTHERS AT EOT ;THEN READ VERIFY sIF NOT ALL AT EOT, FREEZE UNIT(S) :IF NOT AT BOT AND 50263$: 50260$: 000412 032765 001404 000001 003502 50257$: 50265% r GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2717 016312 2718 016320 2719 016322 2720 %755 016322 25-MAY-82 09:51 032737 001002 000001 004737 016356 2728 016332 2729 016334 2730 016334 2731 016340 g;gg 016344 2734 016352 2735 016354 %;gg 016354 003420 502658: BIT BNE #CMD. CO, CMDWRD 502668 JSR PC,VFISU JSR PC.NEXTU BR 502558 JSR INC MOV PC, cxune NCNT CMDWRD,PCMDWD BR 502538 RTS PC 004737 502648 : 017126 000732 004737 005237 013737 017456 003412 003420 502568 : 003424 000712 50254$: 000207 : : : : ; g;zz ; CALLS: 013702 062702 003410 000010 VFISU:: MOV ADD 2748 016366 020237 003410 CMP 5;2? 016374 012742 177777 001403 502678 : BEQ 2752 016400 000772 2753 016402 2754 016402 2755 016406 2756 016412 g;;; 016414 004737 105737 001002 004737 012054 003522 2759 016420 2760 016420 2761 016424 2762 016426 2763 016434 5;22 016436 105737 001006 032765 001002 004737 003522 2766 016442 2767 2768 016442 2769 016442 2772 2773 ;ISSUE CMD, CHECK STATUS AND DATA. 502708: 012364 000002 50271$: 003502 016444 ;GO FIND THE NEXT UNIT. ;CHECK FOR HALT AFTER EACH CMD. *UPDATE THE RECORD COUNT. *SAVE PREVIOUS COMMAND WORD. ;RETURN. SUBROUTINE TO ISSUE COMMAND, AWAIT INTERRUPT, CHECK STATUS, CHECK DATA. INPUTS: OUTPUTS: REGISTERS: R2 2745 016356 2746 016362 2749 016372 ;1F NOT AT EOT OR NOT A MOTION CMD THEN: 502668 : 2738 2739 2740 2741 2742 2747 016366 8 SEQ 0096 grgz 016326 2725 016326 %;59 016326 F PAGE 20-50 EXCUTE, GOWAIT, CKDATA. DATARD R2 8., ;INIT READ BUFFER POINTER. ;WHILE nz NE DATARD DO R2,DATARD 50270$ ;UNTIL 8 BYTES WAVE BEEN SET. MOV #-1,-(R2) B8R 50267$ JSR TSTB BNE JSR PC,EXCUTE DROPED 502718 PC,GOWAIT TSTB BNE BIT BNE JSR DROPED ;IF UNIT HAS NOT BEEN DROPPED THEN: 50272 #%0.80T,EOTFLG(RS) ;WHEN NOT REVERSED INTO BOT, THEN 50273 PC,CKDATA ;GO VERIFY DATA. RTS PC :INIT READ BUFFER. ;G0 EXECUTE THE COMMAND. :1F UNIT HAS NOT BEEN DROPPED THEN: ;G0 WAIT FOR DONE BIT. 502738 : 000207 502728 : ; : SUBROUTINE TO COMPARE DATA BETWEEN READ AND WRITE BUFFERS AND PRINT ERROR MESSAGE ON MISCOMPARE . GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINCS SECTION 8 2779 016444 2780 016450 2781 016454 2782 016456 2783 016460 016460 016462 016464 016466 2784 016470 0 0 016504 2785 016510 2786 016512 2787 016512 2788 016516 2789 016520 25-MAY-82 09:51 PAGE 20-51 SEQ 0097 INPUTS: OUTPUTS: REGISTERS: CALLS: 003416 002360 CKDATA: :MOvV SuB TST BNE ERRHRD RZ. R3, R&. CMDA BRFCNT,R3 HSGPKT*HS RFC,R3 R3 sWHEN NO DATA RECEIVED 502748 17,WTVERM,DTAERM sPRINT ERROR AND EXIT TRAP 000021 -WORD -WORD PRINTB 005337 000001 020337 101417 #DTAER4 : 502748 003416 BR 50275$ CMP R3,BRF CNT BLOS ERRHRD 17,WTVERM,DTAERM s THAN EXPECTED, PRINT TRAP «WORD -WORD . WORD ;AN ERROR MESSAGE CSERHRD 17 WTVERM DTAERM CMDPKT+CP.CNT,=(SP) #DTAERS ,-(SP) : 502768 017054 017054 017056 BR 50277 MOV DEC R3, CKDCNT CKDCNT CLR MOV R2 DATAWT ,R3 CLR 003406 003410 003523 MOV TSTB BEQ SWAB : 503008 50301$: 017054 017054 CKDFF DATARD R4 T1SW8 503008 (R3) :REPEAT sAND EXIT ROUTINE sSAVE VERIFICATION LENGTH - 1. sCLEAR # OF BYTES IN ERROR COUNTER. sINIT BYTE COUNTER :GET WRITE BUFFER ADDRESS. :GET READ BUFFER ADDRESS, sWHEN RUNNING TEST1-SuB 12, :SWAP FIRST WORD OF WRT BFR ;WHICH CONTAINS THE RECORD COUNT sREPEAT UNTIL ALL DATA IS COMPARED: CMP R2,CKDCNT sIF THIS IS THE LAST BYTE THEN: TSTB SWBFLG sIF BYTE SWAPPING IS ENABLED THEN: BNE 003520 000001 sWHEN REC READ IS LONGER 50276$ 000006 032737 #DTAERS ,~(SP) #1,-(SP) #4,SP PRINTB #DTAERS,CMDPKT+CP.CNT 002336 005360 000002 1 10? 00 s COMPARE ROUTINE CSERHRD 17 WTVERM DTAERM SP.RO CSPNTB 000004 016526 2790 016530 016530 016534 2801 016610 2802 016612 2803 2804 016614 2805 2806 016614 2807 016614 2808 016620 2809 016622 2810 016626 2811 016630 sCOMPUTE REC LENGTH READ BEQ BIT 505028 503038 #8700, CKDCNT :IF RECORD LENGTH IS ODD THEN: 2812 016636 2813 016640 %812 016642 25-MAY-82 09:51 PAGE 20-52 SEQ 0098 006100 %818 016644 50303s: : 503028 017056 003346 003356 BNE INC INC ERRHRD 28 VFYCNT(RS) HRDCNT(RS) 17,WTVERM,DTAERM 111 042 111 042737 023727 002017 017056 6 1776400 0 177400 017056 003436 016754 016760 012746 012746 005226 000004 016770 5856 016774 062706 000012 2838 016774 2839 016776 2840 017000 2841 017002 2842 017006 2843 017010 2844 017014 2845 017020 2846 017022 017022 017026 105723 SREITHSY EQUAL. CKDFF 003436 INC CKDFF:LET CKDFF BIC 0177400 TIME1 MOVB MOV8 BIC CMP BGE 003440 000013 :1 ST TIME THRU? :BR IF NOT. :INC THE VERIFY ERROR COUNTER. sINC THE HARD ERROR COUNT. sREPORT WRITE/VERIFY ERROR. TRAP CSERHRD 17 013746 013746 2746 738 017054 017056 005275 000003 000010 := CKDFF + #1 ) TIME2 0177400 TIME2 CKDFF ,#11. 50305$ :SAVE WAS DATA FOR TYPOUT. sCLEAR GARBAGE. sSAVE SHOULD BE DATA FOR TYPOUT. sCLEAR GARBAGE. :IF ERROR BYTE COUNT IS LESS THAN 11: #DTAER2,R2,<B,TIME1>,<B,TIME2>;PRINT ACTUAL & EX?ECTED DAI?P 50305s: (R3)+ (R4)+ (R2)+ R2,CKDCNT 50301$ PRINTB CKDCNT CKDFF 50306 $ #DTAER3,CKDFF ,CKDCNT sUPDATE sUPDATE sUPDATE <END OF TIMEZ2, (SP) =(SP) TIME1, (SP) R2,-($P) MOV #DTAER2,~(SP) TRAP ADD CSPNTX #2,sP MOV MoV 017054 017054 017056 (R4),TIME1 WTVERM DTAERM ;INCREMENT # OF BYTES IN ERROR. 8IS8 CLR 8IS8 MOV 3s: 005237 005737 001414 062706 28: PRINTX 153716 105722 020237 sLAST BYTE WILL BE IN :THE UPPER BYTE. UORD 003440 017046 (R3), (R4) 38 (R&)+ WORD 005046 153716 2847 C BEQ TST 253 S~ H WWIWROW NNNNNVO =0 83 Vi & & nNO 83 — o 12 NNNO NS OO~ = i — \VNONNS 50304%: 2828 016676 2829 016702 2830 016706 2831 016714 2832 016720 2833 016726 2834 016734 2835 016736 016736 016740 503048 (R3)+ ISTB 81 5816 016644 2820 016644 2821 016644 2822 016646 BNE IST8 #4,~(SP) SP.RO WRITE BUFFER ADDRESS. READ BUFFER ADDRESS. BYTE COUNTER. DATA COMPARE REPEAT LOOP. sCKDCNT EQUALS RECORD LENGTH, :IF COMPARE ERROR HAS OCCURED THEN: sPRINT # OF BYTES IN ERROR. MOV MOV CKDCNT = (SP) CKDFF ,=(SP) MOV #DTAER3, = (SP) MOV TRAP ADD SP.RO CSPNTB #10,5P MOV #3,-(SP) TM1 GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 2848 017052 2849 %gg? 017052 2852 017052 %gg‘ 017052 2855 017054 2856 017056 2857 2858 2859 2860 2861 286§ 286 2864 017060 2865 017064 2866 017066 2867 017074 2868 017076 2869 017102 04 04 12 14 14 16 16 50277%: 502758$: 000207 000000 000000 3 : 3 : : 105037 005005 026527 001003 062705 000771 026527 001001 003522 002604 177774 000002 002604 177777 50310s: 000207 002604 002074 50311s: L LA TR IR 003522 2 2902 017156 2903 017162 CALLS: BR g:g MOV RTS DROPED ;CLR UNIT DROPPED FLAG RS :CLR DEVICE POINTER. DEVTBL (RS) ,ANINUSE ;WHILE DEVICES ARE NOT IN USE: 503108 #2.RS ;LET RS := RS + #2 :POINT TO NEXT DEVICE. 503078 §8§¥?§‘"5"'E"° :IF ALL UNITS HAVE BEEN DROPPED THEN: :REPEAT 177774 8?5 016537 002604 002074 MOV 003366 002370 DEVTBL (RS) ,LSLUN PC ;SET UNIT # IN "HEADER'' FOR ERROR REPORT *RETURN WITH 1ST DEVICE IN RS. REGISTERS: CALLS: NEXTU:: CLRB 50312s: :DO CLEAN CODE AND TERMINATE PASS. TRAP CSDCLN SUBROUTINE TO FIND THE NEXT UNIT IN THE TEST CYCLE. INPUTS: Ou. “!fS: 002604 005265 013704 :# OF BYTES TO BE VERIFIED =1. *# OF BYTES IN ERROR COUNTER. REGISTERS: 000002 026527 0 0 OUTPUTS: 062705 N (2] O ~ 17136 1 };146 ;OTHERWISE, RETURN. DOCLN ADD RTS PETETE) 2888 017132 2889 017132 105037 PC gganogrxns TO FIND THE FIRST DEVICE IN THE TEST SEQUENCE. FIRSTU:: CLRB CLR 50307%: CMP BNE ADD 104444 016537 RTS CKDCNT: JWORD CKDFF: JWORD EE2 RER 2886 017126 SEQ 0099 50306$: R 24 PAGE 20-53 DROPED :CLR UNIT DROPPED FLAG :REPEAT UNTIL THE NEXT DEVICE IS FOUND. #2,RS ggg{gg‘*S’-'"'""Sf DEVTBL (RS) ,LSLUN PC ;UPDATE DEVICE TABLE POINTER. *UNTIL DEVTBL(RS) NE #NINUSE sSET UNIT # IN "HEADER' FOR ERROR REPORT *RETURN. ?ggfiOngNE TO DROP A DEVICE FROM THE TEST SEQUENCE. OUTPUTS: REGISTERS: CALLS: DROPU:: INC MoV MOVMSG, PRXST, LOG FTLCNT(RS) MSGPKT+MS.XS3,R¢ s INCREMENT THE FATAL ERROR COUNT. ;GET UDIAG ERROR CODE FROM XSTAT3, GLOBAL AREAS ~~ MACRO M1113 GLOBAL SUBROUTINES SECTION 2904 017166 2905 017172 2906 017176 2907 017200 2908 017200 2909 017204 2910 017206 gg}; 017212 25-MAY-82 09:51 042704 016503 005002 000377 002544 020227 001405 012723 062702 000020 004737 017370 2926 017262 2927 017262 2928 017266 2929 017270 ggg? 017274 105737 001404 105237 004737 003465 2932 017300 2933 017300 017300 2934 017302 2935 017306 sggg 017310 2938 017314 2939 017314 2940 017322 2941 017326 017326 2942 2943 2944 017330 2945 017336 2946 017340 2947 017344 2948 017346 2949 017350 2950 017352 2951 017354 2952 2953 017360 2954 BIC MOV CLR 002340 012700 012734 157400 BEQ MOV 002514 503148: ADD BR 50313$ MOV #GSCPK,aTSDB(RS) PC,WSSR PC HOVHSG JINITIATE A GET STATUS COMMAND. :WAIT A WHILE FOR SSR=1 JMOVE MSG PACKET TO COMMON AREA. 16 ,RNYM,STAERM JREPORT CAPSTAN RUNAWAY WITH TACH CNT. TRAP CSERDF R330x3-RNY 503158: 503168: 003522 015544 50317s: 013737 013700 sIF WE HAVE A CAPSTAN RUNAWAY THEN: -WORD 000402 005765 001402 005365 503143 JWHILE THERE ARE HORE LOCATIONS: #-1,(R3)+ ;INIT THE MSG PACKET WITH ALL 1°S #2.R2 :LET R2 := R2 + #2 :UPDATE COUNTER. 104455 00002 004753 006120 104424 #377.R4 HSGPKA(RS) R3 JADR OF THIS UNIT'S MSG PACKET R2 LET R2 := #0 R COUNTER. 50313s: CUHILE R 2 NE OHSGCNT DO R2,#MSGCNT 000770 012775 004737 004737 020427 001005 8 SEQ 0100 177777 000002 2913 017216 2914 017220 2915 017220 2916 017226 2917 017232 2918 017236 2919 017242 2920 017244 017244 017246 017250 017252 2921 2922 017254 2923 017256 %gsg 017256 J PAGE 20-54 003326 003534 003534 503168 JELSE=IF NOT A RUNNAWAY: | JSR PC,PRXST :PRINT EXTENDED STATUS REGISTERS. TSTB §5§%9§ :IF INCB JSR PC,LOG 017366 MoV MOV DODU 104451 DROPED DORPT BEQ DEC 503208: 16 RNYM STAERM BR DROPUA: TST 003326 .WORD .WORD THE RECORD HAS BEEN LOGGED THEN: JSET UNIT DROPPED FLAG. :LOG DATA BYTES + RD/WR ERRORS. JPRINT PERFORMANCE REPORT gsggg;(RS) PASCNT(RS) TSNP ,DROPN TSNP.RO RO TRAP sIF PASCNT(RS) NE #0 THEN JLET PASCNT(RS) CSDRPT := PASCNT(RS) - M JSAVE # OF UNIT TO BE DROPPED. *RO=LOGICAL DEVICE NUMBER 2DROP THE UNIT TRAP C$DODU ;EXEC BGNDU-ENDDU CODE IF IDU = 0 026527 001410 105737 001005 000240 000240 000240 105237 002604 177774 CMP BEQ 002213 1ST8 NOP NOP 003526 INCB 503228 : gsgg?k(RS).ONINUSE IREC 50322% STAFLG JIF UNIT NOT DROPPED ;IF RECOVERY IS ENABLED THEN: ;SET START FLAG TO ENABLE REWIND, r MACRO M1113 25-MAY<82 09:51 GLOBAL SUBROUTINES SECTION 2955 017360 2956 017360 105237 000207 003522 %ggg 017366 000000 2960 8 SEQ 0101 50321$: DRORTN: INCB RTS PC DROFED sSET UNIT DROPPED FLAG. WORD O s# OF UNIT TO BE DROPPED DROPN: R K PAGE 20-55 >R | GLOBAL AREAS RETURN. %UBR?gTINE TO PRINT EXTENDED STATUS REGISTERS. OUTPUTS: REGISTERS: CALLS: 2967 017370 017410 017414 017420 017426 017430 017434 017440 017450 2746 2746 005507 000001 062706 000004 013746 013746 013746 013746 013746 012746 0}2746 002372 002370 002366 002364 002362 006753 000006 062706 000016 PRXST:: PRINTX #GETSTM MOV MOV MOV TRAP PRINTX #GETSTM,=(SP) #1,-(SP) SP,RO szPNTX #STAERS,MSGPKT+MS.XS0,MSGPKT+MS.XS1,MSGPKT+MS. xsz nscrxrons XS3,MSGPKT+MS . XS MOV MSGPKT+MS.XS3,=(SP) MSGPKT+MS.XS2,=(SP) MOV MOV #STAERS ,=(SP) #6,-(SP) MOV MOV MOV TRAP ADD RTS PC MSGPKT+MS . XS4, =(SP) MOV MoV MSGPKT+MS.XS1,~(SP)| MSGPKT+MS . XS0, ~(SP) | SP.RO CSPNTX #16,5P SUBROUTINE TO HALT AFTER EACH COMMAND. INPUTS: OUTPUTS: REGISTERS: R3, R4 CALLS: CKHAE:: TSTB BEQ TSTB BNE HAE;IFB HAE NE #0 THEN 50323$ MISCFG 503248 ;IFB MISCFG EQ #0 THEN BNCOMPLETE CKHRTN b o s e} gEeRsE K = 2987 017516 2988 017522 017522 017524 017526 7530 8 — e MOV MOVB MOVB MOVB CMDWRD , R4 JSR PC,GCMDA :IF HALT FLAG IS SET: (R$)+,HALTM : ;1S MANUAL INTERVENTION ALLOWED? :BR IF NOT. | i TRAP ! CSMANI BCC CKHRTN :LET R4 := CMDWRD : COMMAND WORD. :FETCH ADR OF CMD ASCII. :MOVE CMD ASCII (R3)+.HALTM+1 ;LET HALTM+1 :B= (R3)+ (R3),HALTM+2 :INTO MESSAGE. GMANIL HALTM,TIME1,1,YES :HALT - WAIT FOR AN OEPRATOR INPUT. TRAP CSGMAN BR 100008 .WORD TIME1 .WORD TSCODE .WORD HALTM LWORD 1 GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 25-MAY-82 09:51 2995 017544 2996 2997 017544 2998 017544 2999 3000 3001 017546 3002 3003 3004 3005 3006 3007 3008 3009 10000$: 100008: 000402 105037 503248: 003531 50325¢ CLRB MISCFG 50323s: CKHRTN: RTS .EVEN 000207 JLET MISCFG :B= #0 3 PC JRETURN ENDMGD TITLE MISCELLANEOUS SECTIONS .SBTTL REPORT CODING SECTION s4e : THE REPORT CODING SECTION CONTAINS THE : 'PRXNTS" CALLS THAT GENERATE STATISTICAL REPORTS. 3012 3013 017546 017546 3014 017546 3015 017552 3016 017556 3017 017556 3018 017564 3019 017566 017566 017572 017576 017602 017606 017612 017614 017616 017622 017626 017632 017636 017642 017646 017652 017654 017656 016546 016546 016546 016546 012746 012746 010600 104416 2706 000014 017662 017666 017672 017676 017702 016546 016546 016546 016546 012746 002666 002676 002706 002716 020536 3021 017662 5o 50325$: gg}? 3020 017622 8 SEQ 0102 017536 2989 017536 2991 017536 299% 017540 144 017540 L PAGE 20-56 010537 004737 003452 017060 026527 001562 002604 016546 016546 016546 012746 012746 010600 104416 062706 003376 003326 002604 020410 000004 000012 002626 002636 00264 002656 020465 000005 LSRPT:: 177777 BGNRPT MOV RS,RSSAVE sSAVE CURRENT DEVICE POINTER. JSR PC,FIRSTU sFIND THE FIRST UNIT. 50326%: :WHILE DEVTBL(RS) NE #END DO *WHILE THERE ARE MORE DEVICES: CMP DEVTBL (RS) ,#END BEQ 50327% _ PRINTS #RPT1 (RS) A,DEV ,PASCNT(RS) ,RECCNT(R3) TBL MoV MOV MOV ¢ MOV MOV MOV TRAP PRINTS PRINTS RECCNT(RS) ,=(SP) PASCNT(RS) ,=(SP) DEVTBL (RS) ,~(SP) #RPTIA,=(SP) #6,-(SP) SP.RO CSPNTS #12,5P #RPT1B,WRBC+30(RS) URBC‘ZO(RS).URBC*‘O(RS) URBC(RS) HOV MOV MOV MOV MOV MOV TRAP ADD WRBC(RS) ,~(SP) WRBC+10(RS) .~(SP) WRBC+20(RS) ,=(SP) WRBC+30(RS) ,~(SP) #RPT1B,~(SP) #5,-(SP) SP,‘RO CSPNTS #14.S MOV MOV MOV MOV MOV RRBC(RS) ,~(SP) RRBC+10(RS) .~(SP) RRBC+20(RS) -(SP) RRBC+30(RS) -(SP) #RPTIC, -(SP) ORPTIC.RRBCOSO(RS).RRBC*ZO(RS).RR8C010(R5).RRBC(RS) 017706 017712 017714 017716 3022 017722 017722 MACRO M1113 25-MAY-82 09:51 PAGE 20-57 M SEQ 0103 000005 PRINTS #5,-(SP) Mov MOV SP,RO TRAP CSPNTS #14,SP ADD #RPT1D ,RFBC+30(R5) ,RFBC+20(RS5) ,RFBC+10(RS) ,RFBC( RS) RFBC(RS) ,=(SP) RFBC+10(RS) ,~(SP) RFBC+20(RS5) ,~(SP) RFBC+30(RS5) ,~(SP) #RPT1D,=(SP) #5,-(SP) SP,RO CEPNTS 017756 3023 017762 017762 017766 017772 PRINTS #14,5P #RPT1F ,WRR ,RRREC EC(R (R5) ,RFREC(RS) S) RFREC(RS) ,~(SP) RRREC(RS) ,~(SP) WRREC(RS5) ,=(SP) #RPT1F ,~(SP) 000004 #4,-(SP) 000012 3024 PRINTS 003036 SP,RO CSPNTS #2,sP #RPT1G,WRUNR(RS) ,RRUNR(RS) ,RFUNR(RS) RFUNR(RS) ,=(SP) RRUNR(RS) ,~(SP) WRUNR(RS) ,=(SP) #RPT1G,~(SP) #4,-(SP) 000004 0 3025 020052 3026 020056 302; 020060 302 3029 020064 3030 020064 020120 3031 020124 3032 3033 020130 3034 020132 3035 020132 3036 020136 020136 020140 037 SP.RO CSPNTS 000012 002210 TSTB BEQ 020142 : 503308 003452 503308 ;GO PRINT BAD TAPE SPOTS WHEN 3 #12,sP ENABLED #RPT1I,S ,HRDCNT (RS) CCNT ,FTLCNT(RS) (RS) ,VFYCNT (RS ) v VFYCNT(RS) ,~(SP) FTLCNT(RS) ,~(SP) HRDCNT (RS) ,~(SP) SCCNT(RS) ,~(SP) #RPT11,-(SP) #5,-(SP) SP.RO CSPNTS 000014 017126 013705 :1FB BADTSW NE #0 THEN JSR PC,BTRPT PRINTS 003346 003366 003356 003336 021161 000005 000612 BADTSW JSR 50327s: 000167 001130 PC,NEXTU BR 50326% MoV EXIT R5SAVE ,RS RPT #14,5P sFIND THE NEXT UNIT. sRESTORE CURRENT DEVICE POINTER. .WORD : SUBR TO PRINT BAD TAPES SPOTS DURING THE REPORT PRINTS JSJMP L10010-2-. >»= MISCELLANEOUS $ E REPORT CODING S E MISCELLANEOUS SECTIONS REPORT CODING SECTION MACRO M1113 25<-MAY=82 09:51 : 0 : d e — -— SEQ 0104 WRITE RETRIES: CUMULATIVE COUNT COUNT OF RECOVERABLE WRITE ERRORS EXCLUDES BAD TAPZ SPOTS. #RPT1E ,WRTYCT(RS) :PRINT GLOBAL WRITE RETRY COUNT MOV MOV MOV MOV [+ & 2 ~N o N N BAD TAPE SPOTS: COUNT PER TAPE PASS ONLY, NOT CUMULATIVE. BTRPT:: PRINTS 003316 021035 000002 d —“0000 W~ N — o = N 3041 3042 3043 020145 0201 ‘ PAGE 20-58 000006 002616 163312 003512 MOV :gx BTADDR(RS) ,BTPT gerpr.as PRINTS #RPT1J,R3 :PRINT # OF BAD TAPE SPOTS . 3049 020226 3050 020230 3051 020234 gggg 020236 001457 020327 101402 012703 3054 020242 3055 020242 ST 000024 50331$ R3,4#20. MOV #20. .R3 BLOS 000024 : 503328 005744 000001 :IF R3 HI #20. THEN 50332s PRINTS CSPNTS MOV MOV MOV R3,=(SP) #RPT1J,=(SP) #2,-(SP) MOV TRAP SP.RO CSPNTS ADD #6,SP ;PRINT RECORD # IF BAD SPC'S DETECTED R3 BEQ CMP : ;20 BAD SPOTS IS THE LIMIT #CRLFSP : MOV MOV #CRLFSP,=(SP) #1,-(SP) TRAP CSPNTS MOV 3058 020272 005002 020274 011446 000004 003512 000002 50333s: 012746 3066 02035 3067 020356 000002 000012 :REPEAT PRINTS ;LET R4 := BTPT + #2 #RPTIK, (R4) ADD :FETCH A BAD SPOT ID INC ADD CMP BNE 000012 000012 R2 #2.R4 R2.4#10. 505348 PRINTS #CRLFSP :PRINT A BAD SPOT ID #10. ,R3 #10..R2 #4,SP MOV :LET R2 := R2 + #1 :COUNT PRINTS SLET RG := R4 + #2 :NEXT +IF R2 EQ #10. THEN : (R4) ,=(SP) MOV MOV #RPTIK,~(SP) #2,-(SP) ADD #6,SP SP,RO CSPNTS ;GO TO NEXT PRINT LINE PAST 10 PRINTS MOV MOV #CRLFSP,~(SP) #1,-(SP) ADD #4,SP TRAP SUB SUB SP,RO :R2 = PRINT COUNT PER LINE: 10 MAX : MOV TRAP 005744 000001 000004 162702 BTPT,R4 #2.R4 R2 021152 000002 000006 001014 MOV ADD CLR SP,RO TRAP ADD #6,SP ;BTPT 1S BOTH THE BAD TAPE SPOT COUNTER sAND THE LOGGING INDEX 021065 000002 000006 WRTYCT(RS) ,=(SP) #RPTIE,=(SP) #2,-(SP) :LET R3 := R3 - #10. :LET R2 := R2 - #10. CSBuTS ;ADJUST BAD SPOT COUNT :ADJUST PRINT COUNT e e MISCELLANEOUS SECTION S REPORT CODING SECTION 3068 3069 02036% 3070 020362 gg;; 0203664 3073 020366 3074 020366 020366 020372 020376 020400 020402 38;2 020406 3077 3078 020410 3079 020465 020536 3081 020607 2 020657 3083 020713 84 020764 3085 021035 3086 021065 3087 021152 3088 021161 3089 021235 3090 3091 3092 3093 021272 021272 Son 021272 MACRO M1113 25-MAY-82 09:51 8 SEQ 0105 50334$: 020203 001343 s CMP R2,R3 PRINTS #CRLF BNE 50331%: 012746 012746 010600 104416 062706 000207 005741 000001 045 045 045 045 045 045 045 045 045 045 045 045 116 101 101 101 123 101 101 101 116 104 101 123 104425 PAGE 20-59 000004 503335 ;UNTIL R2 EQ R3 :LIMIT: # OF BAD SPOTS : RTS PC 045 102 102 102 065 122 125 127 045 065 123 063 RPT1A: RPTIB: RPT1C: RPTID: RPT1F: RPT1G: RPT1E: RPT1J: RPTI1K: RPT1I: L10010: NLIST LASCIZ .ASCIZ .ASCIZ .ASCII LASCIZ .ASCIZ .ASCIZ .ASCIZ LASCIZ .ASCIZ .ASCII LASCIZ LIST EVEN MOV MOV MOV TRAP ADD #CRLF ,=(SP) #1,-(SP) SP.RO CSPNTS #6,SP BEX /XNXNZAUNIT XD1XS3YAPASS:XDSZS3XAR:ZDSIN/ ECORD /XABYTES WRITTEN XD3%A,%Z3XA,XZ3%A,%XZ3IN/ /XABYTES READ REV XD3XA,%Z3%A,%Z3%A,%Z3IN/ /XABYTES READ FWD XD3XA,%Z3%A,%Z3%A,%Z33IN/ /XS23XAWRTXS4&YARDRXS4XARDF IN/ /XARECOVERABLE ERRORS XDSZS2XDSXS2XDSIN/ /XAUNRECOVERABLE ERRORS XDS5XS2%D5%S2ZDSIN/ /XAWRITE RETRIESYS8IDSIN/ /XINXD2XA BAD SPOTS THIS TAPE PASS PRECEDING RECORD #:/ /%DS5%S1/ ‘'‘YASPEC CONDXS3XAHARDXS3XAFATALZYS3YACOMPAREIN'' /%S3%DSXS3XDSXS3XDSYSIADSININ/ BEX ENDRPT TRAP 3095 .SBTTL 3097 3098 144 sTABLE FOR SUPERVISOR TO IDENTIFY THE P-TBL FOR THE LOAD DEV CSRPT LOAD DEVICE PROTECTION TABLE %?33 sTHE SUPERVISOR USES THE TBL TO WARN THE OPERATOR WHEN HE TRIES TO TEST THE LOAD DEV 3101 3102 021274 3103 021274 L$PROT:: 3104 021274 3105 021276 3106 021300 g;gg 021302 3109 i 3112 5112 3115 3116 021302 000000 177777 177777 BGNPROT .WORD 0 .WORD =1 .WORD =1 ENDPROT .SBTTL ;P=TBL OFFSET OF TSDB ;P=TBL OFFSET OF MASS BUS UNIT #: =1 = NOT A MASS BUS DE | ;P=TBL OFFSET OF DRIVE #: =1 = NONE, THREE DRIVES PER CONTRO INITIALIZE SECTION 144 s THE INITIALIZE SECTION CONTAINS THE CODING THAT IS PERFORMED ; AT THE BEGINNING OF EACH PASS. BGNINIT MISCELLANEOUS SECTIONS INITIALIZE SECTION 021302 3117 3118 021302 3119 021310 3120 021312 021312 021314 021316 021320 3121 021322 021322 0213%6 021330 021334 021336 021342 021344 021350 3122 021352 3123 3124 021354 3125 3126 021354 3127 021360 3128 021362 3129 021366 3130 021370 3131 021370 3132 021374 3133 021376 g}gg 021402 020227 001405 005062 062702 3136 021406 000770 3137 021410 3138 3139 021410 3140 3141 021410 3142 021414 g}zz 021416 3145 021424 3146 3147 021432 3148 021432 021432 021436 3149 021440 021440 3150 021442 3151 021446 3152 021452 3153 021452 3154 021460 3155 021464 3156 021466 3157 021470 MACRO M1113 25-MAY-82 09:51 PAGE 20-60 C SEQ 0106 LSINIT:: 032727 001421 000003 002330 INIT10: gé; ;IF CMD PACKET IS NOT ON MODULO 4 BOUNDRY: ERRSF 1,CMDPKM 104454 000001 004346 000000 012727 000000 013727 000000 005367 001375 005367 001367 000753 ggg;giaxt1.ccnopxr :PRINT ERROR MSG, CSERSF 1 WORD .WORD CMDPKM LWORD O ;GO TO SUPERVISOR, WAIT 2 SECONDS. MOV #200.,(PC)+ WORD O MOV LSDLY, (PC)+ WORD O DEC -6(PC) BNE b DEC =22(PC) BNE .=20 DELAY 200. 000310 002116 177772 177756 BR INIT10 TRAP : 50335$: 105737 001413 105037 005002 002204 TSTB CLRFLG :IF CLR COUNTERS FLAG SET: BEQ 50336$ CLRB CLRFLG sINIT CLR FLAG. CLR B2 :LET R2 := #0 503378: :WHILE R2 NE #CNTLEN DO CMP R2 ,#CNTLEN 002204 000550 BEQ 002626 CLR 000002 503408: 5035408 WRBC (R2) ADD #2.R2 BR 50337$ ;g;a §3§?¥s :CLR ALL STATISTICAL COUNTERS. ;LET R2 := R2 + #2 50336$: 105737 001406 012737 002205 153624 003432 MOV #RANBC , RANB ;RESET RANDOM BASE #. 012737 032561 003434 MOV #RANSC , RANS ;RESET RANDOM SAVE LOCATION. READEF #EF.START 50341$: 012700 104447 103057 105237 012705 012765 16270 005705 001371 022737 000040 BNCOMPLETE 003526 000006 177774 000002 000001 002604 INCB MOV 50342$: ;REPEAT MOV SUB ST 002012 BNE CMP STAFLG #6,RS ;IF RESET RANDOM VARIABLE FLAG IS SET THEN: :READ START COMMAND EVENT FLAG. MOV INIT1S :LET RS := #6 TRAP :BRANCH IF NOT srAntxuc.Bcc #2.RS — sINITIATE UNIT NUMBER TABLE ;BY STORING NOT IN USE IN EACH LOCATION. :LET RS := RS - #2 :UNTIL RS EQ #0 503428 #1,LSUNIT CSREFG ;SET START COMMAND FLAG. #NINUSE ,DEVTBL (RS) RS #EF .START,RO ;ONLY ONE UNIT ALLOWED MIS ELLANEOUS SECTIONS ALIZE SECTION MACRO M1113 25-MAY-82 09:51 PAGE 20-61 ° 001425 012746 012746 010600 104417 062706 012727 000000 013727 000000 3161 021558 3163 021556 60 3169 021576 3170 3171 021600 021600 021604 3172 021606 021606 3173 021610 ;172 021614 3176 021620 0216 001367 104444 BEQ 005146 000001 177756 DOCLN 5034$: MOV ASL Mov ASR TST BNE 000034 o~ 2 o N pige 283EIRR ek ) WWWW — b b d e b WWWWWWW LSUNIT RS RS JLET RS := LSUNIT SHIFT 1 #6,SP MOV WORD #25,(PC)+ O .WORD DEC O -6(PC) DEC BNE =22(PC) .=20 TRAP CSDCLN INCB INCB INIT16: RFLAGS 003536 g%?a 003527 BNE BCC ISTB BNE 50347%: LSDLY,(PC)+ sSTORE ALL UNIT 503433 sHAS ThCRE BE A POWER FAILURE? MoV TRAP :BRANCH IF NOT. #EF .PWR RO CSREFG STAFLS PWRFLG 8CC INITi6 ;1F SO = SET THE STAR{ FLAG. :IF SO = SET THE POWER FAIL FLAG. OPFLAG ;READ AND STORE FLAGS SET BY OPERATOR WU S0 OBFLAG gaRFLG R 6 Sxr'gouen FAIL HAS NOT oc565320‘¥52£ e 503448 READEF #EF .NEW 50345$ STAFLG 503468 READEF #EF .RES 000037 005103 CSPNTF DEVTBL (RS ) RS sUNTIL RS EQ #0 BNCOMPLETE INIT16 003526 003527 #AUDRUN, = (SP) #1,-(SP) SP,RO : = RS = #2 ;LET RS :NUMBERS IN DEVTBL. R5,CEVTBL (RS) .LET DEVTBL(RS) := RS SHIFT =1 INIT1S: READEF #EF.PWR 103402 005203 sABORT 503438: s REPEAT sus #2,R5 003526 €00401 JWAIT Mov MoV MOV TRAP ADD MOV 000035 012700 104447 25 177772 000002 002604 002604 001020 ;0K sTELL THE MAN 002116 162705 010565 006265 005705 001370 104421 010037 005003 105737 DELAY 000025 002012 103004 105237 105237 50348 #AUDRUN “ 000004 013705 006305 012700 104447 PRINTF SEQ 0107 BCS COoM 503478 R3 BR 503508 INC R3 ;UPDATE PASS COUNT WHEN TRAP :SUPERVISOR IS IN NEW PASS CSREFE"TO :AND DIAG WAS NEITHER STARTED sNOR JIFCOND CC THEN sLET R3 := COMP R3 MOV TRAP JRESTARTED 00 IT ;SET _1ST PASS IF NEW PASS AND sRESTARTING #EF .RES.RO CSREFG LANEOUS S CTIONS IZE SECTION SRLRRRAS Ze — WWIWWNWWW P e N24] S l MACRO M1113 25-MAY-82 09:51 021672 021672 021674 021674 000401 503468: 005203 50351%: 3200 021676 3201 3202 021676 3203 021676 3204 021702 3205 021704 3206 021704 3207 021712 3208 021714 3209 021716 3210 021720 3211 021722 021722 3212 021724 3213 021726 3214 021732 3215 021736 3216 021744 3217 021750 3218 021754 3219 021760 021760 50345S$: w SEQ 0108 503508: 3198 021676 004737 005002 017060 026527 002604 503448: 177777 503528: 002514 002524 011037 003534 012746 016546 016546 012746 104437 062706 000340 002554 002534 000003 BR 50351$ INC R3 :OR ON POWER FAIL JSR CLR PC,FIRSTU R’ :LET R2:= #0 cMP sINIT DEVICE COUNTER. DEVTBL (RS) , #END BEQ INC :gx 50353$ R2 GPHARD RO,RO BCC 503548 MOV (RO)+, TSSR(RS) gg.RO ;LET R2 := R2 + M1 :LET RO := RS SHIFT =1 :GET HARDWARE P TABLE FR?SAEUPERESGPHRD ;IFCOND CS THEN (RO), TSDB(RS) :SAVE TSDB ADDRESS. *SAVE TSSR ADDRESS. ADD #2,TSSR(RS) MOV MOV SETVEC (RO), TSUNT (RS) :SAVE NUMBER OF DRIVE (RO). TSNP *SAVE FOR PRINT OUT'S TSVCT(RS),TSSINT(RS) ,#INTPRI MOV (RO)+, TSVCT(RS) :SAVE INTERRUPT VECTOR ADDRESS. mp 003326 000403 N s ST BGE INC R3 50356$ PASCNT (RS) 003326 : 503568 BR 50357$ MOV 50355$ 10 ’ 000716 503548: 50353s: TSSINT(RS) ,=(SP) TSVCT(RS) ,~(SP) #3,-(SP) CSSVEC LT AT :IF R3 LT #0 THEN ;LET PASCNT(RS) := PASCNT(RS) + #1 #1,PASCNT(RS) :LET PASCNT(RS) := #1 CLR JSR RECCNT (RS) PC,NEXTU :CLEAR RECORD COUNT :D0 IT FOR ALL DEVICES. BR 50352$ 50355%: 003376 017126 #INTPRI ,=(SP) #10,SP :SET UP INTERUPT Paocessxnc CONDITIONS. 50357%: 005065 004737 MOV MOV MOV MOV 000010 000001 :INIT DEVICE POINTER. UHILE DEVIBL(RS) NE #END DO BEQ 012765 :SET 1ST PASS IF NEW PASS AND *STARTING :DO NOT UPDATE IT ON CONTINUE MOV 003472 3226 022022 3227 3228 022026 3229 022030 3230 022030 3231 3232 022036 3233 3234 022036 3235 3236 022036 3237 022036 32;3 022042 32 3240 022046 3241 022050 E PAGE 20-62 MISCELLANEOUS SECTIONS INITIALIZE SECTION 3242 3243 022050 244 022052 245 022054 022054 022060 022064 022066 022070 3246 022074 022074 022100 022102 022106 022110 022114 022116 022122 3247 022124 022124 3248 022126 022126 3249 3250 022130 3251 3252 3253 022130 022130 022134 3254 022136 012746 012746 010600 104417 062706 012727 000000 013727 000000 005367 001375 005367 001367 026527 001421 105037 022174 012746 F R2 503608 PRINTF #AUDRPM 005114 000001 000004 DELAY 200. 000310 ;IF THERE ARE NO UNITS: sPRINT ALL UNITS DROPPED, Mov #AUDRPM, = (SP) #1,-(SP) ADD ;GO TO SUPERVISOR, WAIT 503£C0ND$. £200., (PO)+ LSDLY, (PC)+ 177772 ~6(PC) R =22(PC) =20 177756 BNE ;GO TO SUPERVISOR, CHECKY;;;. BREAK 000000 002213 000020 003536 017060 002604 177777 003530 000340 023706 000004 000003 : 503628 000001 C$BRK DOCLN ;DO CLEAN CODE + ABORT PASS. SETPRI #PRIOO ;LOWER CPU PRIORITY TO O TST8 IREC 1$ :IF ERROR RECOVERY IS ENABLED PC.FIRSTU sAND AUTO-DROP NOT CALLED, THEN SET UP FOR FIRST sWHILE THERE ARE MORE DEVICES: BNE BIT BNE JSR CMP BEQ CLRB SETVEC CSDCLN #PRI00,RO C$SPRI 1:DR.0PFLAG ?EVTBL(RS).OEND TRAPD4 #4 ATRAPL ,#INTPRI sCLEAR _TRAP FLAG sSET VECTOR 4 ,PRIORTY 36"°v #INTPRI ,=(SP) #TRAPS ,~(SP) 000010 012737 000404 000137 SEQ 0109 002116 104444 3260 022160 3261 022166 3262 022170 PAGE 20-63 TST BNE 104422 3256 022144 3257 022152 3258 022154 3272 022242 3273 022250 3274 022252 3275 022260 25-MAY-82 09:51 005702 001026 012700 104441 105737 001033 032737 001027 004737 3264 3265 022222 3266 022230 3267 022232 3268 3269 022236 3270 022236 MACRO M1113 ADD 003436 MOV #1,TIME 023060 JMP 503638 005237 003436 INC TIME1 023727 003134 012775 003436 000025 002340 002514 CMP BGT TIME1,#25 48 #GSCPK,aTSDB(RS) DELAY 50365$ 25 sSTART 3.5 MINUTE COUNTER sINCR TIME1 FROM #1 TO #25 BY M sAND GET UNITS STATUS sWAIT #4 ,-(SP) #3,-(SP) CSSVEC 25-MAY-82 09:51 PAGE 20-64 6 SEQ 0110 000025 #25,(PC)+ 002116 LSDLY,(PC)+ 177756 ~ 003530 003366 002524 005543 000002 000006 002604 3284 022366 022 3285 3286 022370 022370 3287 3288 022372 3289 022376 022376 022402 022406 022412 02242 3290 022424 3291 822230 02245 3292 022460 022460 022464 3293 022466 3294 022472 3295 022474 3296 022500 022500 022504 gszC) 177772 000004 332 25N Jhg OofNON S NN 012727 000000 013727 000000 005367 OO0 022260 022264 266 272 %zg 88 o ¥ MACRO M1113 Nfifififi§8 MISCELLANEOUS SECTIONS INITIALIZE SECTION 104451 #4 sCLEAR VECTOR AT & TRAPD4 ;IFB TRAPD4 NE #0 THEN FTLCNT(RS) #NODEV, TSSR(RS) sLET FTLCNT(RS) := FTLCNT(RS) + a1 sPRINT ERROR 2% CSCVEC TSSR(RS) ,=(SP) #NODEV,=(SP) #2,-(SP) DEVTBL (R5) ,DROPN R5,R0 RO RO ADD sSAVE # OF UNIT TO BE DROPPED. SP,RO CSPNTF #6,SP sRO=LOGICAL DEVICE NUMBER :DROP THE UNIT C$boDU : EXEC_BGNDU-ENDDU CODE IF Ibvu =0 ;D0 CLEAN BABORT CSDCLN 104444 105037 003530 012746 012746 012746 012746 000340 023706 000004 000003 005775 000010 002524 000025 TRAPD4 #4 ATRAPS ,#INTPR] TR sCLEAR TRAP FLAG sSET VECTOR 4,PRIORTY 36H0 #INTPRI ,=(SP) #TRAPS ,~(SP) #4,-(SP) #3,-(SP) CSSVEC @TSSR(RS) 25 sCHECK FOR ADDRESS sWAIT #10,5P 825.(PC)0 002116 530L'.(PC)0 177772 -629() 177756 <22(PC) 000004 105737 001424 005265 =22(PC) -20 003530 003366 002524 005543 =20 £4 sCLEAR VECTOR AT & TRAPD4 :IFB TRAPD4 NE #0 THEN FTLCNT(RS) #NODEV, TSSR(RS) sLET FTLCNT(RS) := FTLCNT(RS) + a1 sPRINT ERROR 3 CSCVEC TSSR(RS) ,~(SP) #NODEV,~(SP) Z w B =3 NSO O w gu-aa3 m —Wn dasl MISCELLANEOUS INITIALIZE MACRO M1113 25-MAY-82 09:51 PAGE 20-65 : 000002 000006 002604 017366 MOV ASR pODU DEVTBL (R5) ,DROPN R5,RO RO RO 003127 A ¥ 007766 002514 012727 000000 000025 3s: BGT JSR MOV DELAY MOV TRAP ADD sSAVE # OF UNIT TO BE DROPPED. JRO=LOGICAL DEVICE NUMBER JDROP THE UNIT PC,SETDEF gg.iTSDB(RS) 012727 000000 013727 0000 000025 002514 MoV DELAY #GSCPK,aTSDB(RS) 25 JAND GET UNITS STATUS JWAIT 002116 bdDd o d W WWWWWWW W WWILWWWW CSDCILN MOV .WORD MOV WORD #25,(PC)+ O LSDLY,(PC)+ O BNE DEC BNE .b =22(PC) .=20 MOV WORD #25,(PC)+ O MOV WORD DEC BNE gsg 177772 177756 -6(PC) LSDLY,(PC)+ O -6(PC) .4 =22(PC) 000200 002524 #TS.SSR,ATSSR(RS) JIF #TS.SSR SETIN QTSSR(RS) THEN 000100 002524 #TS.OFL ,@TSSR(RS) sIF #TS.OFL NOTSETIN @TSSR(RS) THEN 50370% 503718 503648 50371%: 003534 005456 000002 3319 3320 022710 3321 3322 022710 3323 022712 3324 022712 022712 TRAP DEC 177756 002340 c$poDU JSET UNIT NUMBER 002116 012775 TRAP 50367% 177772 3309 022604 3310 022612 022612 SP,RO CSPNTF #6,5P ; EXEC BGNDU-ENDDU CODE IF IDU = 0 ;D0 CLEAN BABORT DOCLN 1046444 004737 010475 #2,-(SP) MOV 1 3302 022540 022540 3303 3304 022542 3305 3306 022544 3307 022550 3308 022554 022554 SEQ 0111 PRINTF #OFLINM, TSNP SEXIT COUNTER WHEN UNIT ON LINE sPRINT UNIT OFF LINE EVERY 10 SEC 000006 MOV MOV MOV MOV TRAP ADD TSNP, =(SP) #OFLINM, -(SP) #2,-(SP) SP,.RO CSPNTF #6,5P MOV DEVTBL(RS) ,=(SP) 50372s: 000412 016546 50370s: 002604 50373s PRINTF #NRDYM,DEVT (RS) BL MACRO M1113 25-MAY-82 09:51 PAGE 20-66 1 9 SEQ 0112 023656 000002 MOV TRAP ADD 000006 012737 000001 005237 003440 023727 003016 003440 012727 000000 013727 000000 000144 000402 023010 3335 023012 3012 3336 023014 003440 3345 023044 3346 3347 023050 3348 3349 023050 3350 3351 023054 3352 3353 023060 50373s: 50375$: 000013 50374$: MOV BR #1,TIME2 INC TIME2 505748 CMP :INCR TIME2 ol FROM s #1 TO 503768 100. sWAIT FOR UNIT TO BE SET ON~-LINE 177772 177756 BREAK 50367%: : 503648 000004 003436 000025 ;ALLOW TERMINAL INTERRUPT JMP 50366$ CLRVEC #4 :CLEAR VECTOR AT & CMP e TIME1,#25 Inel IF OFF OFF LINE MINUTES :IF LINE FOR FOR 3.5 3. 50377s: JMP 50362% TSTB PWRFLG BNE 504008 023166 MOV 004000 ADD gg: #100.,(PC)+ O LSDLY, (PC)+ O -6(PC) b %C ; 22&32c :GET MESSAGE PACKET :PRINT ERROR AND DROP OFF LINE UNIT :SET UP FOR NEXT uux$.° OR T —S A ;IFB PWRFLG EQ #0 THEN MEMORY DATAWT 06 003406 004000 160272 o’ ?2XP ;REPEAT UNTIL ON LINE JSR PC,NEXTU 017126 003527 o 50375% JSR PC,MOVMSG JSR PC.TCCT 50363$: 503618%: MOV WORD MOV .WORD DEC BNE BR 012734 013430 022160 BY # ¥ v 002116 50376%: #13 CSPNTF #6,5P TIME2,#13 BGT DELAY 022236 3341 023022 023022 023026 3342 023030 #NRDYM, = (SP) #2,-(SP) SP,RO MOV MOV DATAWT ,DATARD #DATCNT,DATARD 2825?2"'”"‘“’ PRINTF #MEMOM ;REQUEST MEMORY FROM SUPER FOR RD/WR BUFFERS. ;809 canen ;SET RD BFR ADDRESS e ;WHEN NOT ENOUGH FREE MEMO AVAILABLE :WARN OPERATOR MoV #MEMOM, - (SP) MISCELLANEOUS SECTIONS INITIALIZE SECTION 023126 023130 023132 023134 3363 023140 023140 3364 gggz 023142 012746 010600 104417 062706 MACRO M1113 25-MAY-82 09:51 3374 023162 023162 023164 3375 023166 023171 023174 023177 023202 023205 023210 023213 023216 02322 023224 023227 023232 3376 023234 023237 023242 023245 023250 023253 023256 023261 023264 3377 3378 3379 023270 023270 3380 023270 3381 SEQ 0113 000001 000004 DOCLN 104444 504018: gggz 023142 3369 023142 3370 023146 3371 023152 %g;% 023156 J PAGE 20-67 ;AND ABORT PASS Mov Mov TRAP ADD #1,-(5P) SP,RO CSPNTF #4,SP TRAP CSDCLN :DIAG MUST BE RE<~LOADED IN A CPU WITH LARGER MEMO 504008 : 105037 012703 004737 105037 104432 000104 045 122 040 115 124 040 101 040 122 104 122 106 045 045 105 117 040 040 122 122 105 045 104411 002214 003526 012664 003527 101 105 115 117 117 123 114 106 040 055 040 122 116 101 055 101 m 114 107 040 115 116 106 105 105 040 117 115 114 117 122 127 102 123 MEMOM: 122 114 104 116 101 105 115 117 000 CLRB MoV JSR CLRB CHGFLG #ENDFLG,R3 PC,CLRERR PWRFLG EXIT INIT ;CLR_CHANGE CMD SEQ TBL FLAG. sLET R3 := #ENDFLG sCLEAR ALL FLAGS. sCLEAR THE POWER FAIL FLAG. .ASCII /XAFREE MEMO TOO SMALL FOR RD-WR BFRSIN/ .ASCIZ /XARE=-LOAD IN LARGER MEMOXN/ TRAP .WORD CSEXIT L10012-. TRAP CSINIT .EVEN L10012: .SBTTL ENDINIT AUTO DROP SECTION 144 3384 3385 gggg ;SECTION EXECUTED AFTER THE INIT CODE WHEN ‘‘ADR'* FLAG IS SET BY OPERATOR sSECTION CHEKS FOR A VALID INTERFACE LOCATION. DROPS UNIT IF NO RESPONSE sFROM INTERFACE 3388 3389 023272 023272 LSAUTO:: BGNAUTO MISCELLANEOUS SECTIONS AUTO DROP SECTION 90 3391 023272 339 MACRO M1113 004737 017060 026527 001525 002604 105037 25-MAY-82 09:51 177777 003530 PAGE 20-68 ¥ SEQ 0114 JSR PC,FIRSTU sFIND FIRST UNIT 50402%: sWHILE DEVTBL(R5) NE #END DO H CMP DEVTBL (R5) ,#END BEQ 50403$ CLRB TRAPD4 sLET _TRAPD4 :B8= #0 SETVEC #4,#TRAP4,#INTPR] 012746 sSET VECTOR 4 Mov MOV MOV #INTPRI ,=(SP) #TRAPG ,=(SP) #4,~(SP) #3,-(SP) 000010 002514 O NO Ny 700 wvi —-— 023334 3397 023340 3398 023344 023344 023350 3399 023352 3400 023356 28 di — & Mov Mov aTSDB(RS) ,R2 000004 003530 TST8 BEQ INC 003366 017366 TRAPD4 504048 FTLCNT(RS) MoV sCLEAR VECTOR AT & :IFB TRAPD4 NE #0 THEN PRINTF #AUTODM,TSDB(RS) 002514 023562 000002 000006 002604 sADDRESS TSO5 INTERFACE CLRVEC #4 sLET FTLCNT(RS) DEVTBL (R5) ,DROPN zgx gg.RO DODU RO sPRINT ERROR TRAP ADD CSSVEC #10,5P Mov TRAP #4,R0 CSCVEC := FTLCNT(RS) + m Mov MOV MOV MOV ISSP TSDB(RS) ,=(SP) #AUTODM, = (SP) #2,-(SP) SP,RO C:PNTF ;SAVE # OF UNIT TO BE DROPPED. :RO=LOGICAL DEVICE NUMBER :DROP THE UNIT: EXEC BGNDU-ENDDU CODE IF IDU = 0 TRAP 000452 002340 012700 000200 002514 000100 002524 : 504048 002524 BR Mov BIT BEQ BIT BEQ INC 003366 003534 005456 000002 N 000006 017302 50405% #GSCPK,aTSDB(RS) JSR PC,WSSR #T5.SSR,aTSSR(RS) 504068 #TS.OFL ,@TSSR(RS) 50407% FTLCNT(RS) PRINTF #OFLINM, TSNP JSR PC,DROPUA SEND GET STATUS COMMAND WAIT :IF #TS.SSR SETIN @TSSR(RS) THEN sIF #TS.OFL SETIN @TSSR(RS) THEN sLET FTLCNT(RS) := FTLCNT(RS) + m MOV MOV MOV MOV TRAP ADD S v 504078: S segeses 023504 8 023510 000416 005265 003366 504968: BR INC C$DODUY 504108 FTLCNT(RS) PRINTF #NRDYM,DEVT (RS) BL sLET FTLCNT(RS) := FTLCNT(RS) + M TSNP, =(S?) #OFLINM,~(SP) #2,-(SP) SP.RO CSPNTF #6,5P MISCELLANEOUS SECTIONS AUTO DROP SECTION 023522 023526 023532 0235 023540 023542 32%9 023546 25-MAY-82 09:51 000006 017302 3430 023552 gzg% 023552 50405$: 3433 023556 gzgg 023560 L SEQ 0115 JSR PC,DROPUA 50410$: 004737 PAGE 20-69 00§606 023656 000002 3428 023552 A 017126 000647 50403$: fR 3438 023562 023565 023570 023573 023576 023601 023604 3439 023605 023610 023613 023616 023621 023624 023627 023632 023635 023640 023643 023646 023651 023654 3440 023656 023661 045 125 124 120 124 117 116 045 116 122 103 102 040 040 124 105 124 101 126 101 116 045 116 101 123 122 040 040 066 102 040 101 101 045 045 AUTODM: .ASCII 101 124 106 105 101 117 116 040 124 117 102 105 104 000 101 111 mm 105 101 040 104 122 117 123 040 040 117 040 045 .ASCIZ /XAINTERFACE BAD OR NOT SET TO ABOVE ADIN/ _ASCIZ /%AUNIT XD1%A NOT RDYIN/ 023667 023672 023675 023700 023703 061 040 124 104 116 045 116 040 131 000 101 117 122 045 3441 3442 040 045 3443 3444 NRDYM: 105237 000002 003530 /XABUS TRAP AT X06IN/ .EVEN : TRAP CSAUTO ENDAUTO 104 3 3 33222 3447 023706 3448 023712 125 124 DEVTBL (RS) ,=(SP) #NRDYM,=(SP) #2,-(SP) SP,RO CSPNTF #6,5P 50402% 104461 L10013: MOV MoV MoV MOV TRAP ADD JSR PC,NEXTU 3436 023560 023560 437 023560 023664 . 016546 012746 012746 010600 104417 062706 004737 MACRO M1113 DEVICE BUS TRAP HANDLER OUTPUT: TRAPD4 BYTE 1: TRAPED AT & TRAPS:: INCB RTI 0: NO TRAP TRAPDS;LET TRAPD4 :B= TRAPDG + M MISCELLANEOUS SECTIONS AUTO DROP SECTION MACRO M1113 25-MAY-82 09:51 .SBTTL PAGE 20-70 M SEQ 0116 CLEANUP CODING SECTION : *THE_CLEANUP CODING SECTION CONTAINS THE§ CODING PERFORMED IS PERF oot THAT IS : AT THE END OF EACH PASS. 3458 023714 023714 3460 023714 BGNCLN LSCLEAN:: 004737 017060 026527 002604 JSR 177777 012700 JSR PC,WSSR CLRVEC 002534 3469 023742 3468 023746 3463 023750 023750 023750 023752 023754 023754 023754 PC,FIRSTU 504118: sWHILE DEVTBL(RS5) NE #END DO CMP DEVTBL (R5) ,#END BEQ 50412% 017126 JSR 000764 50412%: 104432 000002 TSVCT(RS) PC,NEXTU BR 504118 EXIT CLN ¢FIND FIRST UNIT. sWAIT FOR UNIT READY OR TIMEOUT, :RELEASE INTERRUPT VECTORS FOR ALL DEV. sFIND NEXT UNIT. .EVEN L10014: 104412 .SBTTL Mov TRAP TSVCT(RS) RO CSCVEC TRAP .WORD,_. SEXI L10014 TRAP CSCLEAN ENDCLN DROP UNIT SECTION 244 : THE DROP-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE THAT CODE SHALL BE EXECUTED WHEN DODU : TO NO LONGER BE TESTED. HACRO 1S CALLED WHILE IDU FLAG IS NOT SET BY OPERATOR 3484 023756 5 023756 348 3486 023756 3489 023770 023770 023774 3490 023776 023776 024002 006 024012 024014 L$DU:: 010005 006305 012765 BGNDU MOov 177774 002534 017366 005065 000002 002604 RO.R5 :RS = LOGICAL DEVICE NUMBER X 2. ASL MoV RS #NINUSE ,DEVTBL (R5) CLRVEC TSVCT(RS) sSET NOT IN USE FLAG FOR THE DEVICE. :RELEASE THE INTERRUPT VECTOR. HOV TSVCT(RS) RO PRINTF #DROPDM,DROPN sPRINT DROP DEVICE HESSAGE MOV MOV MOV MOV TRAP CSCVEC DROPN,=(SP) #DROPEM, = (SP) #2,-(SP) SP,RO CSPNTF MISCELLANEOUS SECTIONS DROP UNIT SECTION 024016 3491 024022 024022 > 024024 3493 3494 024026 024026 024026 062706 MACRO M1113 25-MAY-82 09:51 000006 PAGE 20-71 EXIT 000167 000000 L10015: 104453 .SBTTL SEQ 0117 bU ADD #6,SP .WORD «WORD JSJMP L10015-2-. TRAP csou ENDDU ADD UNIT SECTION 144 : THE ADD-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE : JO 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. 3504 024030 024030 3505 024030 LSAU 010005 :g{ gg.RS sR5 = LOGICAL DEVICE NUMBER X 2. 002604 MoV RO,DEVTBL (RS) sSTORE UNIT # IN DEVICE TABLE. 002514 MoV MOV ADD (RO) ,TSDB(RS) (RO)+,TSSR(RS) #2,TSSR(RS) sSAVE TSDB ADDRESS. sSAVE TSSR ADDRESS. GPHARD 002524 Mov RO,RO (RO), TSVCT(RS) 000340 000003 024116 000010 024122 003472 3520 3521 3522 3523 024132 024132 024132 ;GET HARDWARE P TABLE FROM SUPER. TRAP Mov Mov MOV #INTPRI ,=(SP) TSSINT(RS) ,~(SP) TSVCT(RS) ,=(SP) TRAP ADD CSSVEC #10,SP .WORD «WORD JSJMP L10016~2-. TRAP CSAU Mov 000167 000000 CLR INTFLG(RS) EXIT AU CSGPHRD sSAVE INTERRUPT VECTOR ADDRESS. Mov (RO) , TSUNT(RS) s SAVE NUMBER OF DRIVE MoV (RO) , TSNP :SAVE FOR PRINT OUT'S SETVEC TSVCT(RS5),TSSINT(RS) ,#INTPRI 003534 024126 024126 024130 IF #3,-(SP) ¢SET UP INTERUPT PROCESSING CONDITIONS. :CLEAR INTERRUPT FLAGS. .EVEN 104452 L10016: ENDAU .TITLE HARDWARE TESTS .SBTTL TEST 1: BASIC FUNCTIONS. HARDWARE TESTS BASIC FUNCTIONS. 25-MAY-82 09:51 ] 8 10 J4e ; TEST TO EXECUTE ALL TSO5 FUNCTIONS. 024134 BGNMOD 0 24134 024134 9 024134 352? 024140 3542 024144 024144 3 024144 54 3544 024146 3545 024152 3546 024156 3547 024160 8 3549 024170 3550 024174 3554 024214 3555 024214 3556 024222 3557 024224 3558 024230 3559 024234 3560 024240 3561 024246 3562 024252 3563 024260 024260 024264 024270 024274 024300 024302 024304 3564 3565 024310 T:: 105037 105037 003515 003514 104402 004737 004737 103404 BGNTST CLRB CLRB .1 RANDOM :CLR THE RANDOM OPERATIONS FLAG. EXPBOT BGNSUB *CLR EXPECT BOT FLAG. ;SUBTEST 1 = SET CHAR, DRIVE INIT, GET STATUS. TRAP 017060 007072 JSR JSR BCS ERRDF 104455 PC,FIRSTU ;FIND THE FIRCT UNIT. 2.NSSRM, STAERM ;REPORT TSO5 NOT READY ?$§sor1~17 ($BSUB *INIT DEVICE 000002 004536 006120 TRAP CSERDF WORD .WORD .WORD 004737 012702 004737 004737 004737 007466 026527 002604 118: 002544 000012 002564 177700 002574 177477 002564 JSR MOV JSR JSR JSR 017060 177777 002564 002574 ;G0 DO SETUP'S PC,BFSEQ PC.EXALL :SET UP CMD SEQ. :EXECUTE CMD SEQ ON ALL DEVICES. :ADR OF CMD SEQ. ES?Sl?Sgg NE #END DO :SA?EET?SE;éRE;EUgé;E DEVI Mov ADD MoV MSGPKA (RS) ,R2 ;GET MSG PACKET ADR, MoV #172477,TS5SW(RS) 50413$: JWHILE D CMP 504148 BEQ DEVTBL (RS) ,#END 8IC BIC PRINTF 2 NSSRM STAERM PC,MDSET #BF SEQO, R2 : py 1;55R¥SSCLik§; i S 4 'ggone CODE Lségf'r53$‘$¥a‘°“i 3 YTE. : #CODELM.DE (R5) , TSSCL(RS) VTBL WITCH SETT i a oo e MOV MOV TSSCLCRS) ,~(SP) DEVTBL(RS) ,~(SP) MOV 000003 #CODELM, ~(SP) MOV #3,-(SP) MOV 002574 000010 SP.RO TRAP 000010 000003 3566 PAGE 20-72 SEQ 0118 —_ g‘: WW WWWWWWW Vi vi WW W W o N SLRUK TEST 1: MACRO M1113 PRINTF CSPNTF :PRINT THE TSOS nxcaocooeofsvst v #SWSET,DEVTBL(RS), TSSSW(RS) MOV MOV MOV MOV 3 TSSSW(RS) ,~(SP) DEVTBL(RS) ,~(SP) #SWSET,~(SP) MOV #3,-(sP) SP.RO D 10,5P TRAP CSPNTF HARDWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. 3567 024340 3568 024340 3569 3570 024344 3571 024346 3572 004737 25-MAY-82 09:51 017126 000723 L10020: 104403 3575 024350 024350 024350 3576 3577 024352 3578 024356 3579 024362 3580 024366 3581 024372 024372 024372 3582 3583 024374 024374 024374 3584 3585 024376 3588 024412 024412 024412 3589 3590 024414 024414 024414 3591 3592 024416 3593 024422 3594 024426 3595 024432 024432 024432 3596 3597 024434 34 35 3599 024436 3600 024442 3601 024446 3602 024452 024452 024452 3603 3604 024454 024454 .2 104402 012702 004737 004737 105037 025124 003526 L10021: 104403 T1.3: 104402 012702 004737 004737 025136 025026 010226 L10022: T1.4: 104402 025230 025026 010226 L10023: T1.5: 104402 104403 BR PC,NEXTU sFIND NEXT UNIT. 504138 ENDSUB BGNSUB MoV JSR JSR CLRB ENDSUB TRAP CSESUB TRAP csBsuB sSUBTEST 2 = REWIND. #BF SEQ1,R2 PC,BFSEQ PC,EXALL STAFLG sADR OF CMD SEQ. sSET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. sCLEAR START FLAG TRAP BGNSUB MoV JSR JSR ENDSUB #BF SEQ2,R2 PC,BFSEQ PC,EXALL BGNSUB :EXECUTE CMD SEQ ON ALL DEVICES. #BF SEQ3,R2 PC,BFSEQ PC,EXALL BGNSUB L1002¢4: T1.6: CSESUB sSUBTEST 5 = SPACE FILES. #BF SEQ4 ,R2 PC,BFSEQ PC,EXALL csBsuB ;ADR OF CMD SEQ. sSET UP (CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP BGNSUB C$BsSUB sADR OF CMD SEQ. sSET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP MoV JSR JSR ENDSUB CSESUB ;SUBTEST 4 = WRITE TAPE MARK, ERASE. TRAP 025302 025026 010226 csBsuB ;ADR OF CMD SEQ. <SET UP CMD SEQ. TRAP Mov JSR JSR ENDSUB CSESUB ;SUBTEST 3 - WRITE/VERIFY. TRAP 104403 012702 004737 004737 JSR SEQ@ 0119 TRAP 104403 012702 004737 004737 50415%: 504148: 3573 024346 C 10 PAGE 20-73 sSUBTEST 6 = SPACE RECORDS. CSESUB HARDWARE TESTS TEST 1: 024454 PAGE 20-74 104402 TRAP L10025: 104403 (=] 024474 024474 024476 o w N 024512 8 8 024514 024514 024514 3620 024516 3624 3625 024534 024534 024534 3626 3627 024536 3628 024542 3629 024546 T.7: 104402 L10026: 71.8: 025470 025026 010226 L10027: 7T1.9: 025522 025026 010226 L10030: 71.10: 025554 025026 010226 L10031: 104403 104402 012702 CSESUB sSUBTEST 7 = WRITE RETRY. ENDSUB #BF SEQ6,R2 PC,BFSEQ PC,EXALL BGNSUB MoV JSR JSR ENDSUB #BF SEQ7 ,R2 PC,BFSEQ PC,EXALL sADR OF CMD SEQ. sSET UP CMD SEQ. :EXECUTE CMD SEQ ON ALL DEVICES. #BF SEQ8 ,R2 PC,BFSEQ PC,EXALL 025576 csesuB TRAP CSESUB TRAP csBsuB sSUBTEST 10- CLEAN. #BF SEQ9,R2 PC,BFSEQ PC,EXALL BGNSUB MOV CSESUB sADR OF CMD SEQ. sSET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. sADR OF CMD SEQ. sSET UP CMD SEQ. ;EXECUTE CMD SEQ ON ALL DEVICES. TRAP T1.11: csBsuB sSUBTEST 9 = READ FWD RETRY. BGNSUB MoV JSR JSR ENDSUB CSESUB ;SUBTEST 8 = READ REV RETRY. BGNSUB MoV JSR JSR ENDSUB csssus ;ADR OF CMD SEQ. sSET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP 104403 012702 004737 004737 BGNSUB TRAP 104402 34 024556 35 024562 36 024566 :SET UP CMD SEQ. sEXECUTE CMD SEQ ON ALL DEVICES. TRAP 104403 104402 :ADR OF CMD SEQ. TRAP 104402 012702 004737 004737 #BF SEQ5,R2 PC,.BFSEQ PC,EXALL TRAP MoV JSR JSR 104403 012702 004737 004737 MoV JSR JSR ENDSUB csBsuB TRAP 012702 004737 004737 3631 3632 024554 024554 3 024554 0 3640 024576 D10 SEQ@ 0120 N ~ & ~ o~ — ~ 25-MAY-82 09:51 012702 004737 004737 o N &H b b b ¥ RRRE 88 b cubd BASIC FUNCTIONS. 024472 [« AV P AV ],N) - B 5 MACRO M1113 CSESUB sSUBTEST 11 = WTV SWAPPED DATA BYTES. #BFSE10,R2 sADR OF CMD SEQ. TRAP ($BsuB HARDUARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. 3641 024602 36k§ 024606 024612 3644 026620 3645 024624 3646 0246 024630 024630 3647 024632 3648 024636 3649 02464 3650 024642 3651 024646 004737 004737 112737 004737 105037 104403 013702 062702 020237 001402 gggg 024650 000342 3654 024652 3655 024654 gggg 024654 000773 105237 25-MAY-82 09:51 025026 010226 000001 010226 003520 016130 3666 024726 112737 012737 11.12: 000012 000001 000011 016130 000012 3667 024736 3668 024740 3669 024746 004737 012737 004737 016130 104001 016130 3671 024760 3672 024764 3673 024770 3674 0264776 004737 105037 012737 004737 016130 003520 000012 016130 gg;g 025010 004737 016130 3670 024752 3675 025002 012737 012737 3678 025014 025014 - 025014 104403 gggg 025016 105037 3682 025022 025022 = 025024 104432 000574 3684 3685 3686 3687 3688 504178 : 003523 004737 012737 004737 ;SET UP CMD SEQ. *WRITE/VERIFY RECORDS 1 AND 2. #1.SWBFLG PC.EXALL SWBFLG CMP BEQ R2,DATAWT 50417% BR 504168 INCB T1SW8B *ENABLE BYTE SWAPPING. *WRITE/VERIFY RECORDS 3 AND 4. :DISABLE BYTE SWAPPING. TRAP ;INIT WRITE BUFFER POINTER. 000011 000011 003420 002336 003520 002336 TRAP ($BSUB :CMD IS READ REV. :VERIFY ODD LENGTH SWAP (RECORD 4). JSR PC,VFEXC *VERIFY EVEN LENGTH SWAP (RECORD 3). 002336 #1.SWBFLG MOV #12,CMDPKT+CP. CNT MOV #11,CMDPKT+CP. CNT MOV JSR L10033: #12,CMDPKT+CP. CNT MOVB JSR CLRB MOV JSR 002336 ;SUBTEST 12 = READ SWAPPED DATA BYTES. #RDR, CMDWRD PC,VFEXC JSR MOV JSR 003420 ;SET T1 SWAP BYTES FLAG FOR ‘‘CKDATA'* SUBR MOV JSR MOV JSR 002336 :SWAP DATA BYTES IN WRITE BUFFER. BGNSUB MOV 002336 #11,CMDPKT+CP.CNT PC,VFEXC :CHANGE BYTE COUNT TO 10. *ENABLE BYTE SWAPPING. :CHANGE BYTE COUNT TO 9. *VERIFY ODD LENGTH SUAP (RECORD 2). :CHANGE BYTE COUNT TO 10. PC,VFEXC #RDF, CMDWRD PC,VFEXC :VERIFY EVEN LENGTH SWAP (RECORD 1). *CMD IS READ FWD. :VERIFY EVEN LENGTH SWAP (RECORD 1). PC,VFEXC SWBFLG #12,CMDPKT+CP. CNT PC,VFEXC :VERIFY ODD LENGTH SWAP (RECORD 2). :DISABLE BYTE SWAPPING. :CHANGE BYTE COUNT TO 10. *VERIFY EVEN LENGTH SWAP (RECORD 3). #11,CMDPKT+CP. CNT PC,VFEXC :CHANGE BYTE COUNT TO 9. *CHANGE BYTE COUNT TO 9. SVERIFY ODD LENGTH SWAP (RECORD 4). ENDSUB TRAP 003523 CLRB T1SW8 EXIT TST ; ; : ; suenourxne TO MOVE A COMMAND SEQUENCE TO THE SEQUENCE TABLE. INPUTS: ourPurs REGISTERS: CALLS: CSESUB :CLEAR T1 SWAP BYTES FLAG TRAP .WORD ; CSESUB ;UNTIL 10 BYTES HAVE BEEN SWAPPED. SWAB =(R2) 3662 0264702 3663 024706 MOVB JSR CLRB ENDSUB PC,BFSEQ PC.EXALL MOV DATAHT R2 ADD #10., 504168: :WHILE R2 NE~ DATAHT DO 003406 104401 016130 3664 024714 3665 024722 JSR JSR 003520 003406 000012 104402 012737 004737 012737 SEQ 0121 L10032: 3658 024660 024660 024660 3659 024662 3660 024670 3661 024674 PAGE 20-75 R2 = FWA OF COMMAND SEQUENCE. CSEXIT L10017-. HARDWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. 3690 02502 3691 02503 25-MAY-82 09:51 012701 003540 021227 001402 012221 177777 012711 000207 177777 504218: SEQ 0122 ;WHILE (R2) NE #END DO FSEQ:: Mov : 04208 (P #CMDSEQ,R1 (R2) ,WEND BEQ 504218 B8R 504208 MOV #END, (R1) MOV 000773 F10 PAGE 20-76 RTS (R2)+,(R1)+ PC ADDRESS. SEQ T ADORESS JA0LE 569 47 ;WHILE THERE ARE MORE COMMANDS: JINIT ;MOVE COMMANDS TO SEQ TABLE. ;STORE END OF SEQUENCE CODE. *RETURN. BASIC FUNCTION COMMAND SEQUENCE 3705 025054 140004 BFSEQOD: .WORD SCH 200 :SET CHAR. 1 0 ?ax SET CHAR. 20 &) :GET STATUS. (4) SET CHAR. 40 (5) ;REWIND TWICE. (6) wTV DATCNT ;WRITE/VERIFY PAT 1. (?7) wTvV ;WTV PAT 2. (8) :WTV PAT 3. 9 2WTV PAT 4. (10) 20 1 0 ges [ 1 gcu 40 1 BFSEQ2: 000001 2 0 END } - O WVl — &O 2 83 —_ o 0 ?ATCNT :82 > ) END ?uo .WORD ey 3729 025132 3730 025134 3731 3732 025136 3733 025140 n (2) gcu BFSEQ1: 200. ;DRIVE INIT. 1 .WORD . WTv ?ATCNT 3 wTvVv ?AYCNT HARDWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. 25-MAY-82 09:51 G 10 PAGE 20-77 SEQ@ 0123 3747 025174 3748 025176 4 wrTV ?AYCNT 3749 025200 5 wrv ?ATCNT ) wTV ?ATCNT .WORD BFSEQ3: sWTV PAT 5. n sWTV PAT 6. (12) :WTV PAT 0. a3 sWRITE TAPE MARK. (14) sWRITE 10 RECORDS. (15) sERASE 10 TIMES. (16) sWRITE TAPE MARK. an sWTM RETRY 18 sSPACE 2 FILES REV. 19 sSPACE 2 FILES FuwD. (20) sSPACE 2 FILES REV. 21 sSPACE 2 FILES FwD. (22) sREWIND. (23) 0 END WTM 1 1 0 WRT DATCNT 10 1 ERS 10 WTM 1 §782 025300 .WORD %784 025302 3801 3802 025344 3803 025346 BFSEQ4: 000000 105010 000002 000001 000000 105410 000001 000002 000000 105010 000001 000002 000000 177777 102010 000001 END .WORD BFSEQS: BASIC FUNCTIONS. Z o S o NN u b - (24) b ] OASNOON sSPACE 7 RECORDS REV. (25) sSPACE 7 RECORDS FWD. (26) sSPACE 7 RECORDS REV. 27) sREWIND. (28) JWRITE. 29 sWRITE RETRY. (30) | -] BFSEQ6: sSPACE 7 RECORDS FwD. o - NV o b WA VIV SN NN = .WORD 004 000001 000001 100011 000001 000001 000000 105410 000001 000001 000000 177777 104401 OO0O0000O =1} SEQ 0124 060001 Tttt T T OVBNO NS WO 8 3&&&&&1&&1&&&§&' OO RN OO00000 NN b o cd cd e wd e cd cnd NNNRNNINN ) CONO NS WN) = OV NS WN v\ 3gegEsaeee SR 3829 025430 3830 025432 3831 025434 3832 025436 3833 025440 3834 025442 3835 025444 H 10 PAGE 20-78 R R R R ey SRROSINIISESER 3804 025350 3805 025352 3806 025354 3807 025 25-MAY-82 09:51 O—l—'z MON=-=W0nO o o o TEST 1: MACRO M1113 004000 000001 000001 105401 004000 000001 000001 125401 004000 sWRITE TAPE MARK. sSPACE 1 FILE REV. .WORD BFSEQ7: 000001 000001 177777 104001 —4 HARDWARE TESTS sREAD REV. (31 sREAD NEXT REV. (32) JREAD NEXT FWD. (33) sREAD FWD. (34) .WORD BFSEQS8: HARDWARE TESTS MACRO M1113 TEST 1: BASIC FUNCTIONS. 3861 025524 3862 025526 3863 025530 3864 025532 3865 025534 3866 025536 3867 025540 3868 025542 3869 025544 3870 025546 3871 025550 %ggg 025552 3874 025554 3875 025556 3876 025560 3877 025562 3878 025564 .WORD 101012 BFSEQ9: .WORD 000001 000001 000 102010 3884 025576 3885 025600 3886 025602 3887 025604 025606 3889 025610 3890 025612 3891 025614 3892 025616 104105 000012 000001 000000 104105 000011 000001 000000 177777 3893 3894 3895 025620 025620 L 025620 SEQ 0125 DATCNT 1 000001 125001 004000 000001 000001 177777 000001 000001 000000 110 PAGE 20-79 004000 000001 000001 105001 00400 79 025566 3880 025570 3881 025572 3882 025574 25-MAY-82 09:51 177777 .WORD BFSE10: .WORD .EVEN L10017: 104401 3897 3898 .SBTTL 3899 144 3902 025622 025622 12:: %?’8? 1 RPF DATCNT 1 1 RPR DATCNT 1 1 END CLN 1 1 0 RWD 1 1 0 :READ PREVIOUS FWD. (35) ;READ PREVIOUS REV. (36) :CLEAN. (37 ;REWIND (38) END ;END OF SEQUENCE. wTV 12 1 0 wTV 11 1 0 END ;WRITE/VERIFY EVEN LENGTH. (39) :WRITE/VERIFY ODD LENGTH. (40) ENDTST TRAP CSETST TEST 2: DATA RELIABILITY. s TEST TO CHECK THE DATA RELIABILITY OF THE T1SO0S. 3904 025622 3905 025630 3906 025634 3907 025640 3908 025644 025650 3910 025652 025652 025660 112737 105037 005037 004737 004737 103404 104455 006120 000001 003514 003456 017060 007072 003515 BGNTST MOVB CLRB CLR JSR JSR #1,KANDOM EXPBOT WIMFLG PC,FIRSTU PC.SOFINIT :SET THE RANDOM OPERATIONS FLAG. :CLEAR EXPECT BOT FLAG. *CLEAR WRITE TAPE MARK FLAG *FIND THE FIRST UNIT. SINIT DEVICE ERRDF 2.NSSRM,STAERM JREPORT TSOS NOT READY BCS 11§ _ TRAP CSERDF .WORD STAERM HARDWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY. 3911 3912 025662 3913 025666 3914 025672 3915 025674 3916 025700 3917 025704 3918 025710 3919 025714 3920 025716 3921 025722 3922 3923 025726 3926 025726 3925 025732 3926 025736 3927 025742 3928 025744 §329 025746 25-MAY-82 09:51 007466 004000 118: MOV R2,LENMSK ;ALLOW MAXIMUM BUFFER. BEQ JSR CLRB 50422%: 104105 004000 177740 LENMSK ~ STAFLG 504248 PC,SETRW STAFLG :CMD 1 = SET CHARACTERISTIC. :IFB STAFLG NE #0 THEN TV, (R1)+ MOV #RNOPSC .R2 MOV #RANP, (R1) + COM MOV :IF STARTING THEN: ; CMD2=REWIND ;LET STAFLG :B= #0 MoV MOV 000007 ;G0 DO SETUP'S :SET UP THE RECORD LENGTH MASK, TSTB 010206 003526 :CLR START FLAG. #DATCNT, (R1)+ R2 R2,(R1)+ 50423$: BREAK : DO A SUPVSR BREAK FIRST. TRAP 3932 3933 025754 3934 025754 3935 025760 3936 025762 3937 025770 3938 025774 3939 026000 3940 3941 026004 504248: 003740 003432 003434 177741 026136 004737 : 504258 NNNONNN=NYN WO WWW—=WWWWW N=2NNN=NNN~N b O — RANB , RANS RANS ;R2 #177741 .82 B8R 504248 MOV BEQ &gge NOP JSR 003544 003554 003517 JSR MOV COM MOV MOV ($BRK ;FILL SEQ TBL WITH RANDOM CMDS. 504258 BIC MOV ST 027612 W ADD MOV JSR 003524 SHrnonowv R1,#SEQEND JSR 177777 010226 026176 177740 003544 003544 177777 010226 003524 000001 003540 010206 CMP BGE 003434 003540 gc-.-. -t O 3953 026040 3954 3955 3956 3957 026044 3958 026050 3959 026056 3960 026062 PC,MDSET :BATCNT.RZ JSR PC,SETCH 003526 025752 3944 026012 3945 3946 026016 3947 026022 3948 026024 JSR SEQ 0126 ggg COM 392? 025752 J 10 PAGE 20-80 :LET RANS PC,3RANCMD (R2) := RANS + RANB :SET UP A RANDOM CMD + BRF. #END, (R1) ;STORE END OF SEQUENCE CODE IN TABLE. #CMDSEQ,R1 R2 ;INIT CMD SEQ TBL POINTER, :REPEAT UNTIL EOT IS REACHED ALLEOT ;FLAG ALL UNITS @ EOT PC,EXALL ;GO EXECUTE ALL CMDS IN SEQUENCE TABLE. 50423$ PC, TSWEOT PC,RANRD ;WRITE ONE RECORD BEYOND EOT ON ALL UNITS :S0 THAT SHORTER READ STOP DISTANCE :SHALL POSITION HEAD IN CLEAN IRG GAP ;READ REV THAT EXTRA REC TO RE-POSITION THE TAPE #RNOPSC ,CMDSEQ+4 CMDSEQ+4 CMDSEQ+4, CMDSEQ+14 #END, (R1) JSR PC,EXALL CLRB ALLEOT MOVB #1,RPTFLG MOV #CMDSEQ,R1 JSR PC,SETRW :SET UP READ REV/FWD CMDS, :# OF RECORDS FOR READ REV. :# OF RECORDS FOR READ FORWARD. ;STORE END OF SEQUENSE CODE IN SEQ TABLE. ;GO EXECUTE READ REV/FWD OF LAST N RECORDS. :CLEAR ALL UNITS @ EOT FLAG ;REQUEST PERFORMANCE REPORT DURING REWIND. :INIT SEQ TBL POINTER, ;STORE REWIND IN SEQ TBL. HARDWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY. 3967 026122 §968 26126 969 3970 026132 026132 01271 004737 25-MAY-82 09:51 177777 010226 K 10 PAGE 20-81 SEQ@ 0127 #END, (R1) MoV JSR PC,EXALL EXIT 104432 000320 sSTORE END IN SEQ TBL, sEXECUTE REWIND CMD ON ALL UNITS ST TRAP «WORD CSEXIT L10034~. ADDRESSES OF SUBROUTINES USED TO SET UP RANDOM OPERATIONS IN THE DATA RELIABILITY TEST. 3975 026136 3976 026140 3977 026142 3978 026144 3979 026146 3980 026150 3981 026152 RANCMD : RANWV RANWR RANWR RANWR RANWR RANWR RANWR RANWR RANRD RANRD RANRD RANRD RANRD RANRD RANRD RANRD 3982 026154 3983 026156 3984 026160 3985 026162 3986 026164 3987 026166 3988 026170 3989 026172 3330 026174 026176 JWRITE/VERIFY. JWRITE. JWRITE. JWRITE. JWRITE. JWRITE. JWRITE. JWRITE. JREAD. JREAD. JREAD. JREAD. sREAD. JREAD. sJREAD. sREAD. SUBROUTINE TO SET UP READ COMMANDS IN SEQUENCE TABLE. INPUTS: OUTPUTS: REGISTERS: R2 CALLS: 005737 003456 ST 026346 1$: MOV ADD MOV 003432 177740 000007 003740 WTMFLG 1$ PC.RAWTM PC.RASFR WTMFLG R1,#SEQEND 28 #RDR, (R1) + #DATCNT, (R1)+ RANS , RANB RANB.R2 BIC MOV MOV #RNOPSC ,R2 R2, (R1)+ #RANP, (R1)+ BGE 28 CMP 104001 4018 026302 4019 026306 4020 4021 BEQ JSR JSR CLR (NP BGE MOV R1,#SEQEND 004000 MOV MOV , (R1)+ #RDF #DATCNT, (R1)+ 000007 MOV #RANP, (R1) + MOV 2$: RTS PC R2, (R1)+ sWAS LAST CMD A WRITE? :NO,GO AHEAD :YES PUT DOWN TAPE MARK sAND SPACE FILE REV sTHEN CLEAR THE FLAG sSTORE READ REV CMD. ;SET BRF _TO MAX FOR READ RANDOM LENGTHS. sLET RANB := RANB + RANS sLET R2 := RANB CLR.BY #RNOPSC sSET RANDOM # OF OPERATIONS. sRANDOM PATTERN. sSTORE READ FWD CMD. sSET BRF TO MAX TO READ RANDOM LENGTHS. sSET RANDOM # OF OPERATIONS. sRANDOM PATTERN. SUBROUTINE TO SET UP A WRITE COMMAND IN THE SEQUENFE TABLE, HARDWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY, 402 402 4024 4025 4026 4027 4028 4029 026310 4030 026314 4031 026320 4032 026324 4033 026326 4034 026332 4035 4036 4037 4038 4039 4040 4041 4042 4043 026334 4066 026340 4045 526344 4046 4047 4048 4049 4050 4051 4052 4053 4054 026346 4055 026352 4056 026354 4057 026360 4058 026364 4059 026370 4060 026372 4061 4062 4063 4064 25-MAY-82 09:51 : : : : H : 012721 004737 005737 001002 005237 000207 104005 026422 003456 003456 020127 002007 012721 012721 012721 005721 000207 003740 100011 000001 000001 003740 105410 000001 000001 1$ WTMFLG RTS PC JYES.RETURN :NO,SET THE FLAG REGISTERS: CALLS: sSTORE WRITE/VERIFY CMD. sSTORE BRF, # OF OPERATIONS, PATTERN. ?ggg?ngNE TO SET UP A WRITE TAPE MARK IN THE SEQUENCE TABLE. OUTPUTS: REGISTERS: CALLS: MOV MOV MoV ;;; pe R1,#SEQEND 1$ #UTM, (R1)+ #1,(R1)+ #1,(R1)+ (R1)+ :STORE WRITE TAPE MARK CMD. :BRF :# OF OPERATIONS :SKIP PATTERNS fflgfi?g""‘ TO SET UP A SPACE FILE REVERSE IN THE SEQUENCE TABLE. OUTPUTS: REGISTERS: CALLS: MOV MOV MOV : JLAST CMD A WRT? OUTPUTS: RASFR: : CMP BGE 18: JSTORE WRITE CMD. sSTORE BRF, # OF OPERATIONS, PATTERN. ?ggsggflflf TO SET UP A WRITE/VERIFY COMMAND IN THE SEQUENCE TABLE. RAWTM: : CMP BGE : 3 3 : : 020127 002007 012721 012721 012721 005721 000207 WTMFLG BNE INC MITV,(R1)+ ‘;g PC.R:?U 18: 4066 INPUTS: OUTPUTS: REGISTERS: CALLS: RANWV: : MOV : 3 3 : $ 4065 4067 €068 026374 4069 026400 4070 026402 4071 026406 4072 026412 4073 026416 4074 026420 4075 4076 4077 18: SEQ 0128 THEN A WRITE TAPE MARK AND SPACE FILE REVERSE. TST 3 3 3 104105 026422 L1 RANWR::: MOV #URT,(R1)+ JSR PC,RANVW 3 : 012721 004737 000207 PAGE 20-82 ;;g i R1,#SEQEND 1$ #SFR, (R1)+ ., (R1)+ #1.(R1)+ (R1)+ SUBROUTINE TO STORE BRF, :STORE SPACE FILE REVERSE *BRF :# OF OPERATIONS :SKIP PATTERNS # OF OPERATIONS, PATTERN IN COMMAND SEQUENCE TABLE FOR WRITE AND WRITE/VERIFY COMMANDS. HARDWARE TESTS MACRO M1113 TEST 2: DATA RELIABILITY. 25-MAY-82 09:51 PAGE 20-83 SEQ 0129 4079 4080 4081 2gg§ ; : ; INPUTS: OUTPUTS: REGISTERS: RANW:: MOV #DATCNT, (R1)+ ADD MOV BIC MOV MOV RANS , RANB RANB,R2 #RNOPSC ,R2 R2,(R1)+ #RANP, (R1)+ ; 4084 026422 4085 4086 026426 4087 0264634 4088 026440 4089 026444 4090 026446 2335 026452 012721 004000 063737 013702 042702 010221 012721 003434 003432 177740 000207 003432 0600007 S 026454 CALLS: RTS PC 4093 4094 4095 026454 026454 Mm10 R2 :SET BRF TO MAX FOR PATTERN GENERATION. ;RANDOM BRF WILL BE GENERATED FOR EACH RECORD. *LET RANB := RANB + RANS :LET R2 := RANB CLR.BY #RNOPSC :SET RANDOM # OF OPERATIONS. *RANDOM PATTERN. :RETURN. .EVEN L10034: 104401 ENDTST TRAP 2835 .SBTTL 4099 TEST 3: WRITE COMPATABILITY/WRITE UTILITY. I+e 2}8? : TEST TO WRITE RECORDS FROM BOT TO EOT. 4102 4103 026456 bt 026456 3:: 4105 026456 2}39 026464 112737 105037 000001 003514 4108 026470 4109 026474 004737 004737 017060 007072 4110 026500 4111 026502 103404 026502 026504 026506 i 026510 104455 000002 004536 006120 4113 026512 4114 026516 4115 026522 4116 026526 4117 026530 4118 4119 026540 4120 026544 4121 026550 004737 012702 005302 010237 005137 004737 004737 105037 . CSETST 007466 004000 003430 003430 010162 010206 003526 026550 104422 4123 026552 4124 026552 020127 003740 4126 026560 004737 026310 4125 026556 4127 026564 002003 000772 003515 BGNTST MOVB CLRB #1,RANDOM :SET THE RANDOM OPERATIONS FLAG. EXPBOT ;LET EXPBOT :B= #0 ;CLEAR EXPECT BOT FLAG. JSR JSR PC,FIRSTU PC.SOFINIT ;FIND THE FIRST UNIT. *INIT DEVICE ERRDF 2,NSSRM,STAERM ;REPORT TSOS NOT READY BCS 11$ TRAP WORD .WORD .WORD CSERDF 2 NSSRM STAERM 118: JSR PC.MDSET :G0 DO SETUP'S MOV #DATCNT,R2 :SET UP THE RECORD LENGTH MASK. DEC R2 MOV R2,LENMSK ;ALLOW MAXIMUM BUFFER. COM LENMSK JSR PC,SETCH ;CMD 1 = SET CHARACTERISTIC. JSR PC.SETRW *CMD2=REWIND CLRB ~ STAFLG ;LET STAFLG :B= #0 :CLEAR START FLAG 504268: BREAK : DO A SUPVSR BREAK FIRST. TRAP 50427%: CMP R1,#SEQEND JSR PC .RANWR BGE BR 504308 50427 C$BRK ;WHILE THERE IS MORE ROOM IN SEQ TABLE: ;STORE A WRITE CMD IN SEQUENCE TABLE. HARDWARE TESTS MACRO M1113 25-MAY-B82 09:51 TEST 3: WRITE COMPATABILITY/WRITE UTILITY. 4128 026566 6129 026566 4130 026572 4131 026576 4132 026602 4133 026604 6134 026606 4135 026612 6136 026614 4137 026616 138 026620 9 6140 504308 : 027612 MOV JSR MOV TST BEQ INCB NOP NOP NOP JSR 105037 004737 012711 003524 010206 177777 CLRB ALLEOT JSR PC,SETRW MOV #END, (R1) 004737 4147 4148 026644 026644 - 026646 104432 000002 177777 010226 003540 003524 010226 #END, (R1) PC,EXALL #CMDSEQ,R1 ¥4 50426% ALLEOT PC,TSWEOT JSR PC,EXALL EXIT 4150 4151 4152 026650 4% SEQ 0130 012711 004737 012701 005702 001761 105237 000240 000240 000240 004737 6141 6142 026624 4143 026630 6144 026634 2}22 026640 026650 026650 N10 PAGE 20-84 sSTORE END OF SEQUENCE CODE IN TABLE. SEXECUTE ALL CMDS IN SEQ TBL ON UNITS. JINIT SEQ TBL POINTER, sREPEAT UNTIL EOT IS REACHED sSET ALL UNITS @ EOT FLAG sWRITE ONE RECORD BEYOND EOT ON ALL UNITS 2SO THAT SHORTER READ STOP DISTANCE +sSHALL POSITION HEAD IN CLEAN IRG GAP sREAD REV THAT EXTRA REC TO RE-POSITION TAPE sCLEAR ALL UNITS @ EOT FLAG sSTORE REWIND IN SEQ TBL, sSTORE END IN SEQ TBL, § JEXECUTE REWIND CMD ON ALL UNITS TST TRAP .WORD » CSEXIT L10035~-. TRAP CSETST .EVEN L10035: 104401 ENDTST 2}22 .SBTTL 4157 2}?8 44 s TEST TO READ ENTIRE TAPE FORWARD AND REVERSE. 4160 4161 026652 162 026652 T4:: 6163 026652 4}22 026660 112737 112737 000001 000001 4166 026666 4167 026672 4168 026676 4169 026700 004737 004737 103404 017060 007072 026700 026702 026704 170 026706 104455 000002 004536 006120 4171 026710 4172 026714 4173 026720 4176 026724 004737 004737 004737 105037 4175 026730 : 012721 007466 010162 010206 003526 104001 003515 003514 11%: TEST 4: READ COMPATABILITY/READ UTILITY. BGNTST MOVB MOVB #1,RANDOM #1,EXPBOT sSET THE RANDOM OPERATIONS FLAG. sSET EXPECT BOT FLAG. JSR JSR BCS ERRDF PC,FIRSTU PC,SOFINIT 11$ 2.NSSRM,STAERM JFIND THE FIRST UNIT. JINIT DEVICE JSR PC.MDSET JSR PC,SETCH JSR PC,SETRW CLRB STAFLG ;LET STAFLG :B= MOV #RDF, (R1)+ JREPORT TSO5 NOT READY TRAP .WORD .WORD .WORC CSERDF 2 NSSRM STAERM 2GO DO SETUP'S sCMD 1 = SET CHARACTERISTIC. :CMD2=REWIND. #0 sCLEAR START FLAG :CMD3 = READ FORWARD. HARDWARE TESTS MACRO M1113 25-MAY-82 09:51 TEST 4: READ COMPATABILITY/READ UTILITY. 4176 026736 4177 026740 SEQ 0131 004000 077777 MOV MOV #DATCNT, (R1)+ 877777, (R1)+ 4179 026750 012711 177777 MOV JSR INCB MOV MOV MOV MOV MOV MOV JSR CLRB #END, (R1) PC,EXALL ALLEOT #CMDSEQ,R1 #RDR, (R1)+ #DATCNT, (R1)+ #77777.(R1)+ #RANP, (R1)+ #END, (R1) PC,EXALL ALLEOT 4191 027024 EXIT TST 4178 026744 4180 026754 4181 026760 4182 026764 4183 026770 4184 026774 4185 027000 4186 027004 4187 027010 4188 027014 2}33 027020 027024 027026 4192 4193 4194 4195 027030 027030 . 027030 012721 012721 B N PAGE 20-85 012721 004737 105237 012701 012721 012721 012721 012721 012711 004737 105037 000007 MOV 010226 003524 003540 104401 004000 077777 000007 177777 010226 003524 104432 000002 L10036: 104401 .SBTTL 4199 I+ 4202 4203 027032 4204 027032 TS5:: 258? :STORE END OF SEQUENCE CODE IN TABLE. *EXECUTE ALL CMDS IN SEQ TBL ON ALL UNITS. sFLAG TO ALLOW ALL UNITS AT EOT TO READ REV *INIT CMD SEQ TBL POINTER. :CMD1 = READ REVERSE. *SET LENGTH TO MAX FOR UNKNOWN LENGTHS. *RECORD COUNT = MAX FOR WHOLE TAPE. :PATTERN = RANDOM. :STORE END OF SEQUENCE CODE IN TABLE. :GO EXECUTE READ REV. OF ENTIRE TAPE. *CLEAR ALL UNITS @ EOT FLAG TRAP .WORD CSEXIT L10036~. TRAP CSETST TRAP .WORD .WORD .WORD CSERDF 2 NSSRM STAERM ENDTST TEST 5: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. : TEST TO EXECUTE 4205 027032 258? 027036 105037 112737 003515 000001 4208 027044 4209 027050 004737 004737 017060 007072 4210 027054 *PATTERN = RANDOM. .EVEN z}g; 4211 027056 #RANP, (R1) + :SET LENGTH TO MAX FOR UNKNOWN LENGTHS. :SET RECORD COUNT TO MAX FOR WHOLE TAPE. 103404 027056 027060 027062 e 027064 104455 000002 004536 006120 4213 027066 4214 027072 4215 027100 4216 0271064 4217 027112 4218 027116 4219 027122 4220 027126 4221 027132 4222 027136 4223 027142 004737 113737 004737 013737 012702 004737 004737 004737 004737 004737 004737 007466 002216 010162 002220 002222 027570 027570 027570 027570 027570 027570 003514 BGNTST CLRB MOVB RANDOM #1,EXPBOT ;CLEAR RAMDOM MODE FLAG. :SET EXPECT BOT FLAG. JSR JSR PC,FIRSTU PC.SOFINIT ;FIND THE FIRST UNIT. SINIT DEVICE ERRDF 2,NSSRM,STAERM ;REPORT TSOS NOT READY BCS 003521 003542 118: OPERATOR SELECTED COMMAND SEQUENCE. JSR MOVB 11$ PC.MDSET PIRE,IRE JSR PC,SETCH MOV CHAR, CMDSEQ+2 MOV #CMDD , R2 JSR PC,PTCMDS JSR PC.PTCMDS JSR PC.PTCMDS JSR PC.PTCMDS JSR PC.PTCMDS JSR PC.PTCMDS ;G0 DO SETUP'S :MOVE INHIBIT RFC ERROR REPORT FLAG. SCMD 1 = SET CHARACTERISTIC. :MOVE CHAR CODE FROM P TBL TO SEQ TBL. :R2 POINTS TO CMD2 IN SOFT P TABLE. *MOVE CMD g FROM P TBL TO SEQ TBL. *MOVE CMD 3 FROM P TBL TO SEQ TBL. *MOVE CMD 4 FROM P TBL TO SEQ TBL. :MOVE CMD S FROM P TBL TO SEQ TBL. :MOVE CMD 6 FROM P TBL TO SEQ TBL. :MOVE CMD 7 FROM P TBL TO SEQ TBL. cn HARDWARE TESTS MACRO M1113 25-MAY-82 09:51 PAGE 20-86 TEST §5: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. a@ bk —d N NN~ 0000 SRERSSES NPT ~ BEBDDEDDNNNNN 2264 02714 5 0 715 004737 005037 027570 105037 012701 003540 021127 177777 27174 00 JSR CLR CLRB MOV BEQ 000040 CMP BNE ADD 000002 003444 003442 MOV 003442 003540 003444 027316 4252 027320 4253 027324 4254 027326 4255 027332 000020 4266 027374 4267 027374 4268 027400 4269 027404 4270 027410 4271 027410 4272 027416 2$: 012727 000000 013727 000000 000001 sMOVE END CMD FROM P TBL TO SEQ TBL. sCLEAR JMP CMD LOOP COUNT. :CLEAR START FLAG 6%: 7$: 50432$ #JMP.C, (R1) 6$ #2.R1 (R1)+,JLOC :LET R1 CMP (R1)+,JL00P BNE 1% ADD #2,R1 BR 3 JLOOP INC MOV DEC BEQ 3§ #DLY.C,(R1) 4$ #4 R 28 (R1),TIME2 DELAY 1 177772 177756 000004 ADD 011172 4$: 003414 504338: 011064 017370 BGE Mov 177777 38 PC,SETUP :LET R1 sWHILE ncur LT NCNT1 DO CMP 50435%: 017456 000001 017060 #4,R1 c NCNT1 5043Zs JSR PC,CMDAC JSR PC,EXSUB CMP CMDWRD , #GE S BNE 50435% JSR PC,PRXST 008450 100017 002604 BR JSR TIME2 78 : 504368 JSR PC,CKHAE #1.R2 ;POINT TO BRF. :SAVE BRF (LOCATION). sINIT CMD SEQ TABLE POINTER. :DECR LOCATION COUNTER. sIF THIS IS THE RIGHT LOCATION TO JMP TO, GO SET :IF NOT, UPDATE SEQ POINTER TO NEXT CMD. :D0 IT AGAIN. JLOC CMP BNE ADD DEC BNE := R1 + #2 UPDATE THE LOOP COUNT. #CMDSEQ,R1 002116 003440 ;1S }“ISO? JUMP (MD? sIF NOT, JMP AGAIN. :IF SO, "ADJUST SEQ POUNTER :AND GO TO NEXT COMMAND. #10,R1 MOV :INIT_SEQUENCE TABLE POINTER. sWHILE THERE ARE CMDS LEFT IN SEQUENCE TBLE: :HAS LOOP COUNT BE SATISFIED? ADD BR 000004 003440 003412 4260 027350 4261 027354 4262 027360 4263 027366 4524 027370 1$: 000010 022711 001026 062701 011137 PC,PTCMDS JLOOP STAFLG #CMDSEQ,R1 3s: :WHILE (RT) NE #END DO 50431$: CMP (a1) #END 000002 4245 027250 4246 4247 027252 4248 027256 SEQ 0132 sDELAY? :BR IF NOT. sR1 = LOCATION OF N COUNT. SAVE N _COUNT. :GO TO SUPER-WAIT 1 MSEC. MOV WORD MoV LWORD DEC BNE DEC BNE := R1 + # #1,(PC)+ O LSDLY,(PC)+ 0 -6(PC) .4 =22(PC) .=20 ;POINT TO NEXT CMD. :GO CHECK NEXT CMD. ;GO SETUP THE COMMAND BLOCK. sWHILE THERE ARE RECORDS REMAINING: sSTORE CMD ASCII IN ERROR MSG. sISSUE CMD TO ALL,AWAIT INTS,CHECK STATUS. sIF CMD IS GET STATUS THEN: sPRINT EXTENDED STATUS REGISTERS. sCHECK HALT AFTER EACH CMD FLAG. :SET ALL UNITS AT BOT/EOT. JSR PC,FIRSTU ;FIND FIRST UNIT. ;WHILE DEVTBL(RS) NE #END DO’ sWHILE THERE ARE MORE UNITS: CMP DEVTBL (R5) ,#END BEQ 504379 D 11 HARDWARE TESTS MACRO M1113 25-MAY-82 09:51 PAGE 20-87 TEST 5: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. 4273 027420 6274 0274% 4275 027430 032737 001406 6577 027640 005002 4279 027442 4280 027442 4281 027444 4282 027444 000411 4283 027452 4284 027454 4285 027462 4289 027464 428 4288 027464 4289 4290 027466 4291 4292 027466 4293 027466 4294 4295 027472 4296 027474 4297 027474 4298 027500 4299 027502 4300 027510 4301 027514 4302 027520 4303 027526 4304 027530 4 305 4306 027534 4307 4308 027534 4309 027536 4%10 027536 4312 027542 4313 027542 431g 027546 631 4316 027554 4317 027556 4318 027556 4319 4320 4321 027562 4322 027564 4323 4324 027564 032765 001001 000400 003420 000002 003502 BIT 504418: 000001 003502 000001 003420 504408: 50443$: 005002 SEQ 0133 #MOD ., CO, CMDWRD BEQ BIT BNE CLR 504408 #%0.B0T,EOTFLG(RS) 504418 R2 B8R 504428 BIT BEQ BIT BNE #X0.EOT ,EOTFLG(RS) 504438 #CMD . CO, CMDWRD 504448 CLR R2 ;1F CMD IS REVERSE THEN: :1F NOT AT BOT THEN: ;CLEAR EOT/BOT FLAG. ;ELSE IF CMD IS NOT REVERSE: ;1E NOT AT EOT OR NOT A MOTION CMD THEN: SLET R2:= #0 :CLEAR EOT/BOT FLAG. 504448: 004737 : 504428 017126 000746 020227 004737 50437%: 000001 003412 003414 003426 000002 JSR PC,NEXTU sFIND NEXT UN'T BR 504368 : CMP R2,41 ;IF ALL UNIT ARE AT EOT/BOT THEN: ?gg 504458 :czrincut1 ;FORCE TERMINATION OF COMMAND. INCB gzg ALLEOT gsgkggoz ;FLAG ALL UNITS AT EOT/BOT TO ALLOW VERIFY OF D ;WHEN WRITING IS CURRENT COMMAND JSR PC,TSWEOT ;GO WRITE/READ REV ONE RECORD BEYOND EOT BNE 027612 y : 504468 000402 105037 003524 005237 013737 003412 003420 000671 004737 000601 104432 000140 016044 : 504458 : 504478 003424 BR 504478 CLRB ALLEOT ;WHEN NOT ALL @EOT, CLEAR FLAG INC NCNT ;UPDATE RECORD COUNT. BR 504338 MOV 504348: 504328: JSR CMDWRD,PCMDWD PC,VFYDAT BR 504318 EXIT TST :SAVE PREVIOUS COMMAND WORD. ;IF LAST CMD WAS A WRITE VERIFY, THEN GO :VERIFY THE LAST N RECORDS OF DATA. TRAP .WORD SUBROUTINE TO MOVE A COMMAND FROM THE SOFTWARE P TABLE TO THE COMMAND SEQUENCE TABLE. CSEXIT L10037-. EN HARDWARE TESTS MACRO M1113 25-MAY-82 09:51 PAGE 20-88 TEST 5: EXECUTE OPERATOR SELECTED COMMAND SEQUENCE. : : : o SOOOOOS ONNNO‘gU‘N 4 1 234? 027610 — 338 4339 027606 D ) 4333 027570 4334 027572 PONONIND NN OoONNNNNO OO N = b b =2 (NN 3 4348 027612 4349 027614 4350 027616 4351 027622 4352 4353 027626 4354 027632 4355 027640 4356 027646 4357 027654 4358 027662 4359 027670 MOV MOV MOV MOV RTS PC 000240 4371 027726 4372 027730 4373 4377 4378 027730 4379 4380 4381 4382 R3. (R2)+,R3 R3 R3 sR3 = COMMAND TABLE INDEX. CMDTBL(R3),(R1)+ (R2)+,(R1)+ (R2)+,(R1)+ (R2)+,(R1)+ JMOVE JMOVE sMOVE ;MOVE COMMAND WORD. # OF BYTES. # OF OPERATIONS. PATTERN CODE. : %ggG?gTINE TO WRITE THEN READ REVERSE ONE RECORD BEYOND EOT : : OUTPUTS: REGISTERS: CALLS: CMDAC,EXSUB, CKHAE TSHEOT::NggP 010524 017456 JSR PC,EXSUB JSR PC,CKHAE 000002 MOV #2.,R0 sSHALL POSITION HEAD IN CLEAN IRG GAP sSET UP COUNTER FOR EOT MOV MOV MOV BIC #RDR, CMDWRD #4,CMDLG CMDWRD , CMDPKT #BRF .C,CMDPKT sLET CMDWRD := #RDR :BEFORE EXTRA RECORD :BY READING REVERSE JLET CMDPKT := CMDWRD CLR.BY #BRF.C 003424 1$: MOV CMDWRD ,PCMDWD sWRITE ONE RECORD BEYOND EOT +SO THAT READ SHORTER STOP DISTANCE ;LET PCMDWD := CMDWRD :REPOSITION TAPE MOV CMDPKT ,CMDSAYV sLET CMDSAV := CMDPKT ;THAT RECORD TO ALLOW MOV DATARD ,CMDPKT+CP.ADL JNEXT COMMAND IN iHE JSR PC,CMDAC sTABLE TO BE EXECUTED JSR PC,EXSUB JSR PC,CKHAE DEC RO sFOUND EOT YET? BNE 1 :NO,KEEP GOING 002332 017456 4365 027722 4366 027724 4367 4368 4369 4370 027726 027726 R2 = POINTER TO SOFT 'P'’* TABLE CALLS: DEC ASL H 4347 INPUTS: OUTPUTS: REGISTERS: PTCMDS: :MOV 003752 SEQ@ 0134 000207 RTS PC JYES,RETURN .EVEN 104401 L10037: ENDTST TRAP ENDMOD -TITLE PARAMETER CODING .SBTTL HARDWARE PARAMETER CODING SECTION BGNMOD 14t : THE HARDWARE PARAMETER CODING SECTION CONTAINS MACROS : THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES. THE CSETST PARAMETER CODING MACRO M1113 HARDWARE PARAMETER CODING SECTION 4383 4384 4385 4386 (387 4388 4389 027730 027730 4390 027732 PAGE 20-89 FN SEQ 0135 s MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE s INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE s MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS s WITH THE OPERATOR. J-BGNHRD 000042 4391 027732 027732 027734 027736 027740 4392 027742 027742 027744 027746 027750 027752 4393 027754 027754 027756 027760 027762 027764 4394 027766 4395 027766 024004 4396 4397 027770 4398 030005 4399 030014 124 126 123 4400 4401 4402 25-MAY-82 09:51 .WORD L10040~L$HARD/2 LSHARD: : 000031 027770 160010 177564 001032 030005 000777 000060 000776 GPRMA TS5ADR,0,0,160010,177564,YES GPRMD TS5v(T1,2,0,777,60,776,YES GPRMD 002022 030014 000001 000000 000001 TS5UNT,4,0,1,0,1.NO EXIT HRD 123 105 105 104 103 114 .NLIST TS5ADR: .ASCIZ TSSvCT: .ASCIZ TSSUNT: .ASCIZ LIST .EVEN 4403 030036 TSCODE TSSADR TSLOLIM TSHILIM .WORD LWORD WORD .WORD .WORD TSCODE TSSVCT 777 TSLOLIM TSHILIM .WORD .WORD WORD .WORD .WORD TSCODE TSSUNT 1 TSLOLIM TSHILIM .WORD TSCODE BEX /TSDB ADDRESS/ /VECTOR/ /SELECT DRIVE 0-1/ BEX ENDHRD .EVEN - 030036 L10040: 4405 .SBTTL 4408 4409 4410 4N 4412 4413 4414 44615 4416 030036 s THE SOFTWARE PARAMETER CODING SECTION CONTAINS MACROS s THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES THE s MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE s INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE s MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS ; WITH THE OPERATOR. - 030036 030040 4417 030040 030040 .WORD .WORD WORD WORD SOFTWARE PARAMETER CODING SECTION 144 000302 000130 BGNSFT LSSOFT:: .WORD L10041-LSSOFT/2 GPRML CLRM,0,1,YES .WORD TSCODE PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 030042 030044 4418 030046 030046 030050 030052 4419 030054 030054 030056 030060 4420 030062 030062 030064 030066 4421 030070 030070 030072 030074 4422 030076 030076 4423 030100 030100 030102 030104 4424 030106 030106 030110 030112 4425 030114 030114 030116 030120 4426 030122 030122 030124 030126 4427 030130 030130 4428 030132 030132 030134 030136 030140 030142 4429 030144 030144 030146 030150 030152 030154 4430 030156 030156 030160 030162 030164 030166 030644 000001 000130 030663 000400 001130 030766 000400 001130 030712 000001 003130 031042 000400 004024 002130 030736 000001 003130 031017 000001 005130 031107 000001 004130 031063 000001 127044 006032 031140 000377 000000 000777 007052 031165 000037 000001 000033 010052 031173 177777 000001 004000 . 25-MAY-82 09:51 PAGE 20-90 6 1N GPRML RRVM,0,400,YES GPRML RCVERM,2,400,YES GPRML HAEM,2,1,YES GPRML IRECM,6,400,YES XFERT NEXTSP GPRML BADTM,4,1,YES NEXTSP: GPRML DINTM,6,1,YES GPRML IREM,12,1,YES GPRML CHGM,10,1,YES XFERF ENDSP1 GPRMD (HARM,14,0,377,0,777,YES GPRMD (MD2M,16,D,37,1,33,YES GPRMD BPCRM,20,D,=1,1,DATCNT,YES SEQ 0136 «WORD WORD CLRM 1 .WORD .WORD .WORD TSCODE RRVM 400 .WORD «WORD .WORD TSCODE RCVERM 400 .WORD .WORD WORD TSCODE HAEM 1 .WORD «WORD .WORD TSCODE IRECM 400 .WORD TSCODE .WORD .WORD WORD TSCODE BADTM 1 .WORD .WORD WORD TSCODE DINTM 1 .WORD .WORD WORD TSCODE IREM 1 .WORD .WORD .WORD TSCODE CHGM 1 .WORD TSCODE .WORD .WORD WORD .WORD .WORD TSCODE CHARM 377 TSLOLIM TSHILIM .WORD .WORD .WORD .WORD +WORD TSCODE CMDZ2M 37 TSLOLIM TSHILIM .WORD .WORD WORD .WORD .WORD TSCODE BPCRM -1 TSLOLIM TSHILIM PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION - 030170 030172 030176 030176 030200 4432 030202 030202 030204 030206 030210 030212 4433 030214 030214 030216 030220 030222 030224 4434 030226 030226 030230 030232 030234 030236 4435 030240 030240 030242 030244 030246 030250 4436 030252 030252 030254 030256 030260 030262 4437 030264 030264 030266 030270 030272 030274 4438 030276 030276 030300 030302 030304 030306 4439 030310 030310 030312 030316 030320 4440 030322 030322 030324 030326 011052 031205 177777 000001 077777 012052 031225 000017 000000 000010 013052 031334 000037 000001 000033 014052 031173 177777 000001 004000 015052 031205 177777 000001 077777 016052 031225 000017 000000 000010 017052 031342 000037 000001 000033 020052 031173 177777 000001 004000 021052 031205 177777 25-MAY-82 09:51 PAGE 20-91 H1N GPRMD PATTM,24,0,17,0,10,YES GPRMD CMD3M,26,0,37,1,33,YES GPRMD BPCRM,30,D,=1,1,DATCNT,YES GPRMD NUMBM,32,D,=1,1,77777,YES GPRMD PATTM,34,0,17,0,10,YES GPRMD (MD4M,36,D,37,1,33,YES | GPRMD GPRMD BPCRM,40,D,~-1,1,DATCNT,YES NUMBM,42,D,=1,1,77777,YES 000001 077777 022052 031225 000017 SEQ 0137 .WORD "WORD WORD “WORD “WORD TSCODE NUMBM =1 TSLOLIM TSHILIM .WORD "WORD ‘WORD “WORD “WORD TSCODE PATTM 17 TSLOLIM TSHILIM .WORD WORD WORD "WORD .WORD TSCODE CMD3M 37 TSLOLIM TSHILIM .WORD .WORD "WORD WORD -WORD TSCODE BPCRM =1 TSLOLIM TSHILIM .WORD “WORD WORD "WORD .WORD TSCODE NUMBM -1 TSLOLIM TSHILIM .WORD ‘WORD WORD -WORD WORD TSCODE PATTM 17 TSLOLIM .WORD “WORD WORD -WORD WORD T$CODE CMD4M 37 TSLOLIM TSHILIM .WORD .WORD WORD "WORD .WORD TSCODE BPCRM =1 TSLOLIM TSHILIM .WORD -WORD "WORD TSCODE NUMBM =1 WORD TSHILIM "WORD GPRMD PATTM,44.D,17,0,10,YES .WORD WORD WORD TSHILIM TSLOLIM TSCODE PATTM 17 | | PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 330 0332 4441 030334 34 060000 000010 023052 031350 000037 000001 000033 024052 030356 4443 030360 030360 030362 030364 030370 4444 030372 030372 0 2 4445 030404 030404 4446 030406 030406 4447 030410 030410 000001 004000 000001 077777 026052 031225 000017 000000 000010 002004 076004 027052 031356 25-MAY-82 09:51 GPRMD 030456 4451 030460 030460 030462 033052 031364 CMD5M,46,0,37,1,33,YES SEQ 0138 TSLOLIM TSHILIM T$CODE TSLOLIM TSHILIM GPRMD T$CODE B:CRH TSLOL IM GPRMD GPRMD NUMBM,52,D,-1,1,77777 ,YES PATTM,54,0,17,0,10,YES TSHILIM T$CODE NUMEN TSLOLIM TSHILIM T$CODE PATTM 17 TSLOLIM XFER ENDSP2 ENDSP1: XFER ENDSP3 ENDSP2: GPRMD CMD6M,56,D,37,1,33,YES GPRMD 032052 031225 000 In CMD5M 37 GPRMD 000001 077777 PAGE 20-92 GPRMD BPCRM,60,D,=1,1,DATCNT,YES NUMBM,62.D,-1,1,77777,YES PATTM,64,0,17,0,10,YES TSHILIM TSCODE T$CODE TSLOLIM TSHILIM TSCODE BPCRM -1 TSLOLIM TSHILIM TSCODE NUMBN TSLOLIM TSHILIM TSCODE PATTH 17 GPRMD CMD7M,66,0,37,1,33,YES TSLOL IM TSHILIM T$CODE CMD7M PARVMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 030464 030466 030470 4452 030472 030472 0 4455 030530 40 4456 030542 030542 030544 030546 030550 030552 4457 830524 830556 030562 030564 4458 030566 66 PAGE 20-93 Jn 000037 000033 000001 004000 0 4454 030516 25-MAY-82 09:51 000001 077777 036052 031225 000017 000000 000010 037052 031372 000037 000001 000033 040052 031173 177777 000001 004000 041052 031205 177777 000001 077777 042052 031225 000017 000000 000010 022004 043130 031235 000001 016024 046130 031325 000001 SEQ@ 0139 37 GPRMD BPCRM,70,D,=1,1,DATCNT,YES TSLOLIM TSHILIM T$CODE B¥CRH TSLOLIM GPRMD GPRMD NUMBM,72,D,-1,1,77777 ,YES TSHILIM T$CODE PATTM,74,0,17,0,10,YES 1 TSLOLIM TSHILIM TSCODE PATTM GPRMD GPRMD GPRMD GPRMD CMD8M,76,D0,37,1,33,YES BPCRM,100,D,~1,1,DATCNT,YES NUMBM,102,D,-1,1,77777,YES PATTM,104,0,17,0,10,YES 17 TSLOLIM TSHILIM TSCODE CMDEM 37 TSLOLIM TSHILIM TSCODE B:CRH TSLOLIM TSHILIM TSCODE NUMBM =1 TSLOLIM TSHILIM TS$CODE PATTM 17 TSLOLIM XFER ENDSP3: GPRML ENDSP TSMD,106,1,YES XFERT ENDSP GPRML FAST,114,1,YES TSHILIM T$CODE TSCODE TSMD 1 T$CODE TSCODE :AST PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 4463 030620 030620 4464 030602 030622 030624 030626 4465 030630 030630 4466 030632 030632 030634 030636 4467 030640 030640 4468 030642 030642 4469 030644 4470 030644 25-MAY-82 09:51 045130 031305 000001 006024 002004 001004 4471 4472 4473 4474 030646 4475 030663 4476 030712 4477 030736 4478 030766 4479 031017 4480 03104 4481 03106 4482 031107 4483 031140 4484 031165 4485 031173 4486 031205 4487 031225 4488 031235 4489 031266 4490 031305 4491 031325 4492 4493 4494 4495 4496 031334 4497 031342 4498 031350 4499 031356 4500 031364 4501 031372 4502 4503 4504 4505 4506 ‘507 XFERT ENDSP4 GPRML WTBF,112,1,YES XFERT ENDSP GPRML RDBF,110,1,YES ENDSPS: XFER ENDSP ENDSP4: XFER ENDSP ENDSP: 030644 K1 SEQ 0140 011024 044130 031266 000001 PAGE 20-9% L10041: 103 122 110 102 120 104 111 103 111 103 103 102 043 120 104 122 127 061 114 105 101 101 122 111 116 110 116 110 115 122 040 101 105 105 122 060 105 123 114 104 111 123 110 101 110 101 104 106 117 126 106 101 111 060 CLRM: RRVM: HAEM: BADTM: RCVERM: DINTM: IRECM: CHGM: IREM: CHARM: CMD2M: BPCRM: NUMBM: PATIM: TSMD: RDBF: WIBF: FAST: 103 103 103 103 103 103 115 115 115 115 115 115 104 104 104 104 104 104 CMD3M: CMD4M: CMDSM: CMDGM: CMD7M: CMDBM: .WORD T$CODE .WORD .WORD .WORD T$CODE WTBF 1 .WORD TSCODE .WORD .WORD .WORD TSCODE RDBF 1 .WORD TSCODE .WORD TSCODE ENDSF T -EVEN .EVEN NLIST .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ 'LIST -EVEN BEX /CLEAR COUNTERS/ /RESET RANDOM VARIABLES/ /WALT AFTER EACH CMD/ /BAD TAPE SPOT DETECTION/ /PRINT RECOVERABLE ERRORS/ /DISABLE INTERRUPTS/ /INMIBIT RECOVERY/ /CHANGE CMD SEQUENCE/ /INMIBIT RFC ERROR REPORT/ /CHARACTERISTICS CODE/ ‘‘CMD/2" /BRF COUNT/ /4 OF OPERATIONS/ /PATTERN/ /DEFAULT SWITCH SETTINGS?/ /READ BUFFERING/ /WRITE BUFFERING/ /1001PS/ BEX NLIST .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ BEX ‘'CMD/3"" *'CMD/4"" ''CMD/S" ''CMD/6" ‘'CMD/7 ‘‘CMD/8" BEX -LIST -EVEN AR AR RN R AR AR R AN R RN AN AR AN R AN RN R AR N AR R AR RN RO RRS PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 25-MAY-82 09:51 PAGE 20-95 LN SEQ 0141 R L L L L L L LTI PATCH AREA AND AN ADJUSTMENT TO ACCOUNT FOR THE ‘‘LASTAD BIT7'' HACK DESCRIBED IN °‘SUPPRG.MEM'* (FOR REV (). PATCH:: 032000 .BLKW 64. .=, 137741 LASTAD 000000 000000 LSLAST:: .SBTTL .EVEN .WORD LWORD 0 O WORD WORD O L10044~./2-1 ENDMOD HARD CODED P-TBL 144 :DIAG IS PRE-PARAMETERIZED PER TBL 4529 032004 4530 032004 4531 4532 4533 4534 032004 032006 032010 032010 032012 032014 032016 032016 4535 032016 4536 4537 BGNSETUP 1 000000 000003 172522 BGNPTAB L10042: 000224 000000 L10044: 000001 .END 172522 223 ENDPTAB ENDSETUP 017060 000040 000100 003366 004642 O0OOO. O OO0 OHOmOOHOHOOOEO &~ N N 2 o »H o o (a1l T T 1) (] C$SVEC= 000037 1} 2 CNTBGN= 002626 CNTEND= 003376 CNTLEN= 000550 CODELM 004162 CP.ADH= 000004 CP.ADL= 000002 G CP.CMD= 000000 G Pl oMo o o W = > = <o w FSJMP = 000050 F$MOD = 000000 FSMSG = 000011 FSPROT= 000021 FSPWR = 000017 FSRPT = 000012 FSSEG_= 000003 F$SOFT= 000005 FSSRV = 000010 F$SUB = 000002 FS$SW = 000014 FSTESi= 000001 GCMDA 011136 GENPAT 011556 GES = 100017 GETSTM 005507 GIT 012050 GOWAIT 012364 GSCPK 002340 (21211 BIT15 = 100000 G BIT2 = 000004 G BIT3 = 000010 G BIT4 = 000020 G BITS = 000040 G BIT6 = 000100 G BIT7? = 000200 G BIT8 = 000400 G BIT9 = 001000 G BOE = 000400 G BORERS 015274 G BPCRM 031173 BRCPK 002344 G BRFCNT 003416 6 BRF.C = 004000 6 (=) BGNFLG= 003460 BINC 016030 BITO = 000001 G BITO0 = 000001 G BITO1 = 000002 G BIT02 = 000004 G BITO3 = 000010 G BIT04 = 000020 G BITO5 = 000040 G BIT06 = 000100 G BIT07 = 000200 G BITO8 = 000400 G BIT09 = 001000 G BIT1 = 000002 G BIT10 = 002000 G BIT11 = 004000 G BIT12 = 010000 G BIT13 = 020000 G BIT14 = 040000 G C$DODU= 000051 CSDRPT= 000024 CSDU = 000053 CSEDIT= 000003 CSERDF= 000055 CSERHR= 000056 CSERRO= 000060 CSERSF= 000054 CSERSO= 000057 GSRADO= 000020 (2121} FIRSTU FMT.CO= FMT.C1= FTLCNT (A1l a1 T 003514 010524 002322 oo EXPBOT EXSUB EXTFEA o0 CSTPRI= 0000 0034 0034 0040 0057 0026 0021 00884 DATARD DATAWT DATCNT= DATERM DEVTBL DFPTBL DFTSCH= acoomomomos OHNNOWVOO —— O/~ NOOOW ~ SO W o o - — P (=] SEQ 0142 O BTADDR BTMSG1 PAGE 20-96 (] 25-MAY-82 09:51 oconooos MACRO M1113 &N =N N = OHNNNOONINVIVVOON PARAMETER CODING SYMBOL TABLE SEQ 0143 a1l ala OO OOOmOOOOOOOOe MSGPK3 MS.RFC= MS.XS0= MS.XS1= MS.XS2= MS.XS3= MS.XSé= NCMD.C= NCNT NCNT1 NEXTSP NEXTU NOINTM NRDYM 05 0046 OOOOOOOOO MSGPK1 MSGPK2 RRUNR RRVM =4 o =4 o N o ol e A T T o LA T lalalalalalalalalalala e Al Al MSGPKA MSGPKT MSGPKO = 105001 G RPR = 125001 G RPTCNT 003462 G RPTFLG 003517 G ] o e e 72 MOD.(C2= MOD.C3= MOVMSG MSGCNT= RPF o p-d AT AT ) - w e [ [ [ [ L [ 30 002070 T L LSAUT i IXE = 004000 ISAU_ = 000041 ISAUTO= 000041 ISCLN = 000041 I$DU = 000041 ISHRD = 000041 ISINIT= 000041 ISMOD = 000041 I$MSG = 000041 ISPROT= 000040 ISPTAB= 000041 ISPWR = 000041 ISRPT = 000041 I$SEG = 000041 ISSETU= 000041 ISSFT = 000041 ISSRV = 000041 ISSUB = 000041 ISTST = 000041 JLOC 003444 JLOOP 003442 JMP = 000040 JMP.C = 000040 JSJMP = 000167 LENMSK 003430 LOE = 040 026346 G 030766 031266 G RDF = 104001 G RDR = 104401 G RECCNT 003376 G RECLOG 003465 G RECRED 007066 RECTAP 010064 G RECUD 013020 G RERM 005017 G RETRYC 003460 G REWRT 015450 6 RFBC 002726 G RFCERM 004521 G RFREC 003026 G RFUNR 003036 G RLEXM 004556 G RNF = 125401 G RNOPSC= 177740 G RNR = 105401 G RNYM 004753 G m (=) F e e e o e o d e nd e e e o e e 021620 N RAWTM RCVERM RDBF e INIT16 021302 021600 PAGE 20-97 b= =d=i=l=l=l=1=T=T=] == =d=d=l=l=l~lelwT=] o =1 OO0 O0O0O0O0O0O0O0O INITI0 INIT15 = HAE 002206 G HAEM 030712 HALTM 004306 G HELP = 000000 HOE = 100000 G HRDCNT 003356 G HSSW 002320 G IBE = 010000 G IDU = 000040 G IER_ = 020000 G IE.C__= 000200 G e e e e 12 e 1a 12 12 12 10 ) LSCCP e [ [ GSXFER= 000004 GSYES = 000010 SYMBOL TABLE 25-MAY-82 09:51 [ MACRO M1113 [ PARAMETER CODING G G ¢ 003016 G 030663 RTLE 014466 G RSSAVE SCCNT SCERM SCH = SCHBK SCHCNT= SEQEND SETCH 003452 G 003336 G 004475 G 140004 G 002474 G 000012 G 003740 G 01016% g RTLRTN RWCPK RWD = RWERR 014612 002350 G 102010 G 003467 G PARAMETER CODING SYMBOL TABLE MACRO M1113 SETRW 010206 G SETUP 011172 G SFF_ = 105010 G SFPTBL 002204 G SFR = 105410 G SOFINI 007072 G TRAP4 023706 G TSAM 004705 G TSBA = 002514 G TSC.FC= 177717 G TSC.TC= 177761 G TSDB 002514 G TSMD 031235 TSNP 003534 G TSSR 002524 G TSSREG 003454 G TSUNT 003532 G STAER1 006436 STAERZ2 006616 STAERS 006675 STAERG 006733 STAERS 006753 STAER6 006562 STAER7 006530 STAFLG 003526 G SvCGBL= 000000 SVCINS= 000001 TSVCT svCsus= 000000 013372 013412 G 013430 6 013446 6 013556 6 013574 G 014210 G 074306 G TCC7 TC2RTN TIME1 TIME2 TOERM TOOMM TRAPD4 014450 6 013554 3436 G 003440 G 004453 G 004727 G 003530 G . ABS. 032016 000000 ERRORS DETECTED: 002534 G TS.A16= 000400 G TS.A17= 001000 G TS.NBA= 002000 G TS.NXM= 004000 G TS.0FL= 000100 G TS.RMR= 010000 G 1S.SC = 100000 G TS.SPE= 020000 G 1S.SSR= 000200 G TS.UPE= 040000 G TSIMD 002312 G TS5ADR 027770 TSS5CL_ 002564 G TSSINT 002554 G TSS5INO 010034 G TS5IN1 010042 G TS5IN2 010050 G SVCTAG= 000000 SVCTST= 000000 SWBFLG 003520 G SwB.C = 010000 G SWSET 004231 SSLSYM= 010000 TCC2 TCC3 TCC4 TCCS TCCé PAGE 20-98 B 12 SEQ 0144 SRF = 104010 G SRR = 104410 6 STAERM 006120 G TCCRA TCCO TCC1 25-MAY-82 09:51 TSS5IN3 010056 G TS5SW_ 002574 G TSSUNT 030014 TS5VCT 030005 TSARGC= 000003 TSCODE= 001004 TSERRN= 000002 TSEXCP= 000000 TSFLAG= 000041 TSFREE= 032016 TSGMAN= 000000 TSHILI= 000010 O TSLAST= 000001 TSLOLI= 000000 TSLSYM= 010000 TSLTNO= 000005 TSNEST= 177777 TSNSO = 000000 TSNS1 = 000005 T$NS2 = 000002 TSPCNT= 000000 TSPTAB= 010043 T$SPTHV= 000001 T$SPTNU= 000001 T$SAVL= 177777 T$SEGL= 177777 T$SIZE= 000005 TSSUBN= 000000 TSTAGL= 177777 TSTAGN= 010045 TSTEMP= 000000 TSTEST= 000005 T$TSTM= 177777 T$TSTS= 000001 T$$AU = 010016 T$SAUT= 010013 T$SSCLE= 010014 TSSDAT= 010044 T3$DU = 010015 TSSHAR= 010040 T$SHW = 010000 T$SSINI= 010012 T$SMSG= 010003 T$SPC = 000001 T$$SPRO= 010011 T$SPTA= 010043 T$SRP1= 010010 T$$SOF= 010041 T$SSRV= 010007 T$$5UB= 010033 T$$SW = 010001 TSSTES= 010037 000 001 VIRTUAL MEMORY USED: 26197 UORDS ( 103 PAGES) DYNAMIC MEMORY: 20346 WORDS ( 78 PAGES) ELAPSED TIME: 00:17:56 CVTSEAO, CVTSEAQ/~SP=SVC34R/ML, TSVIE,CVTSEA.SRC/EN:AMA:ABS/DS: GBL T1 TIswB 1.1 T1.10 T1.11 T1.12 024134 G 003523 6 024144 024554 024574 024660 024350 024374 024414 024434 024454 T1.2 1.3 T1.4 T1.5 1.6 11.7 71.8 1.9 T2 T3 T4 15 TSWEOT UAM 024474 024514 024534 025622 G 26456 6 026652 G 27032 G 027612 G = 000200 6 UNIWLK 005653 UNL = 100412 G UNREC 003470 G URERM 005041 G VFEXC 016130 ¢ VFISU 016356 G VFYCNT VFYDAT VFYFLG VFY.C 003346 G 016044 G 003516 G = 000100 G 007204 G 007356 G 011734 002626 G WAITF WLKCHK WLKZRO WRBC WRECL = WRR = WRREC WRT = WRTCHK WRTCHR 000020 G 105005 G 002766 G 104005 G 007270 6 007436 G WRTY WRTYCT WRTYER WRTYFG WRUNR WSM = WSMBK WSSR WTBF 014614 G 003316 6 003464 G 003463 G 002776 G 140006 G 002506 G 012700 6 031305 WIBUF 002316 G WwiM = 100011 G WTMFLG 003456 G WIR = 101011 G WIV = 104105 G WTVERM 004430 G WTYBRF 015066 WTYCMD 015062 WIYWRD 015064 XSALWA= 000000 XSFALS= 000040 XSOFFS= 000400 X$TRUE= 000020 X0.80T= 000002 G X0.E0T= 000001 G X0.LET= 020000 G X0.0NL= 000100 G X0.RLL= 010000 G X0.RLS= 040000 G X0.TMK= 100000 G X0.WLK= 000004 G X2.8FE= 000100 G X2.EFE= 000200 G X2.0PM= 100000 G X3.0Ck= 000010 G X3.RNY= 157400 G X4 .HSS= 100000 G X4 .RCE= 040000 G ZROPAT 011704 SLSTIN= 000001 $LSTTA= 000001
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies