Digital PDFs
Documents
Guest
Register
Log In
AH-T096A-MC
September 1982
299 pages
Original
14MB
view
download
OCR Version
12MB
view
download
Document:
CVTSBA0 TSV05 TSV05 CTRL LT2 SEP 1982 bw
Order Number:
AH-T096A-MC
Revision:
000
Pages:
299
Original Filename:
CVTSBA0__TSV05__TSV05_CTRL_LT2__AH-T096A-MC__SEP_1982_bw.pdf
OCR Text
,TSVOSW, , Wt?VOS CERE LT2 __ CVTSBAO AH-TO96A-MC FICHE 1 OF 2 ;fl;;;luzramgmlam usn ve eo Tsvosi 7 T78V05 ETRL L12 - BNTSBRO. - AH-TO96A-MC 2 OF 2 _ FICHE ol wooemusa BDBEM@@ USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 2 B 1 SEQ 0001 .REM_ IDENTIFICATION ID: AC=TO9SA-MC PRODUCT TITLE: CVTSBAO TSVOS CTRL LT2 AUTHOR : DICK GORDON MAINTAINER: SCOTT SNOWDON DATE: MARCH 08, 1982 THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. NO RESPONSIBILITY IS ASSUMED FOR SOFTWARE ON EQUIPMENT THAT IS NOT AFFILIATED COMPANIES. COPYRIGHT (C) THE USE OR RFLIABILITY SUPPLIED BY DIGITAL 1982,1982 BY DIGITAL EQUIPMENT CORPORAT]ION THE FOLLOWING ARE TRADEMARKS OF DIGITAL EQUIPMENT CORPORATION: DIGITAL DEC PDP DECUS UNIBUS DECTAPE MASSBUS OF OR ITS MACRO M1113 25-MAY-82 09:19 PAGE 3 SEQ@ 0002 et b b VS niN—O NOWVSWN-=SO W O ERROR INFORMATION © PERFORMANCE AND PROGRESS REPORTS O DEVICE INFORMATION TABLES GENERAL INFORMATION PROGRAM ABSTRA(CT SYSTEM REQUIREMENTS RELATED DOCUMENTS AND STANDARDS DIAGNOSTIC HIERARCHY PREREQUISITES ASSUMPTIONS OPERATING INSTRUCTIONS COMMANDS SWITCHES FLAGS HARDWARE QUESTIONS SOF TWARE QUESTIONS EXTENDED P-TABLE DJALOGUE WV O© TEST SUMMARIES O MAINTENANCE HISTORY . L) OON QUICK STARTUP PROCEDURE N " o o o o o o @ O NNNDNMNMNONIN . CONTENTS . TABLE OF . USER DOCUMENTATION — USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 1.0 GENERAL INFORMATION 1.1 PROGRAM ABSTRACT PAGE 4 SEQ 0003 THIS IS A PDP-11/23 RESIDENT DIAGNOSTIC WHICH CHECKS THE FUNCTIONALITY OF A TSVO5 MAGTAPE SUBSYSTEM WHILE CONNECTED TO A PDP-11//23 SYSTEM (Q-BUS). THE PROGRAM PROVIDES ERROR MESSAGES WHICH IDENTIFY FAILING FUNCTIONS THAT AID IN THE REPAIR OF THE DEVICE. THIS DIAGNOSTIC CONSIST OF TWELVE TEST. TEST 1-9 ARE EXECUTED IN SEQUENCE. TEST 10-12 ARE STAND ALONE TEST WHICH ALLOW THE OPERATOR TO PERFORM SPECIFIC FUNCTIONAL TEST ON SCOPE LOOPS ON CERTAIN FUNCTIONS. THIS DIAGNOSTIC HAS BEEN WRITTEN FOR USE WITH THE DIAGNOSTIC R_NTIME SERVICES SOFTWARE (SUPERVISOR). THESE SERVICES PROVIDE THE INTERFACE TO THE OPERATOR AND TO THE SOF TWARE ENVIRONMENT. THIS PROGRAM CAN BE USED WITH XXDP+, ACT, APT, SLIDE AND PAPER TAPE. FOR A COMPLETE DESCRIPTION OF THE RUNTIME SERVICES, REFER TO THE XXDP+ USER'S MANUAL. THERE IS A BRIEF DESCRIPTION OF THE RUNTIME SERVICES IN SECTION 2 OF THIS DOCUMENT. 1.2 SYSTEM REQUIREMENTS PDP=11/23 PROCESSOR AND MEMORY CAUTION:DIAGNOSTIC REQUIRES 32K WORDS OF MEMORY (28K USEABLE AND 4K RESERVED FOR 1/0 PAGE) TSVO5 MAGTAPE SUBSYSTEM (DRIVE AND CONTROLLER) CONSOLE TERMINAL PDP=11 PDP=11 1.3 DIAGNOSTIC SUPERVISOR (HSAAA.SYS VERSION 34 OR LATER) DIAGNOSTIC LOADER/MONITOR (XXDP+) RELATED DOCUMENTS AND STANDARDS DIGITAL EQUIPMENT CORPORATION DOCUMENTS: 1. 2. 3. CHQUS XXDP+ DATE: USERS GUIDE; 14 JULY 1980. DOCUMENT NUMBER AC~F348E-MC TSV0O5 TRANSPORT SUBSYSTEM USER'S GUIDE; DOCUMENT NUMBER EK-TSV05-UG-001 DATE: AUGUST 1982 TSVO5 TRANSPORT SUBSYSTEM TECHNICAL MANUAL:; DOCUMENT NUMBER EK=-TSV05-TM~001 DATE: AUGUST 1982 4. TSVO5 TRANSPORT SUBSYSTEM INSTALLATION MANUAL; DOCUMENT NUMBER EK-TSV0S-IN-001 DATE: AUGUST 1982 1.4 DIAGNOSTIC HIERARCY PREREQUISITES FUNCTIONAL PDP=11/23 CENTRAL PROCESSOR AND MEMURY FUNCTIONAL FUNCTIONAL CONSOLE TERMINAL STANDALONE DIAGNOSTIC SUPERVISOR USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4-1 FUNCTIONAL DIAGNOSTIC LOADER/MONITOR 1.5 SEQ 0004 (XXDP+) ASSUMPTIONS ALL HARDWARE EXCEPT THE HARDWARE UNDER TEST IS ASSUMED TO WORK PROPERLY OR FALSE ERRORS CAN BE REPORTED. B?Erxsge BEINu USED ON THE TSOS TRANSPORT IS A KNOWN GOOD REEL CVTSAA HAS RUN SUCESSFULLY. 2.0 OPERATING INSTRUCTIONS THIS SECTION CONTAINS A BRIEF DESCRIPTION OF THE RUNTIME SERVICES. FOR DETAILED INFORMATION, REFER TO THE XXDP+ USER'S MANUAL (CHQUS). 2.1 COMMANDS THERE ARE ELEVEN LEGAL COMMANDS FOR THE DIAGNOSTIC RUNTIME SERVICES (SUPERVISOR). THIS SECTION LISTS THE COMMANDS AND GIVES A VERY BRIEF DESCRIPTION OF THEM. THE XXDP+ USER'S MANUAL HAS MORE DETAILS. COMMAND EFFECT START START THE DIAGNOSTIC FROM AN INITIAL STATE RESTART START THE DIAGNOSTIC WITHOUT INITIALIZING PRGZEED CONTINUE FROM AN ERROR HALT CONT INUE EXIT CONTINUE AT TEST THAT WAS INTERRUPTED (AFTER “(C) RETURN TO XXDP+ MONITOR (XXDP+ OPERATION ONLY!) ADD ACTIVATE A UNIT FOR TESTING (ALL UNITS ARE DROP PRINT DEACTIVATE A UNIT PRINT STATISTICAL INFORMATION (IF CONSIDERED TO BE ACTIVE AT START TIME BY THE DIAGNOSTIC - SECTION 4.0) DISPLAY FLAGS IMPLEMENTED TYPE A LIST OF ALL DEVICE INFORMATION TYPE THE STATE OF ALL FLAGS (SEE SECTION 2.3) ZFLAGS CLEAR ALL FLAGS (SEE SECTION 2.3) A COMMAND CAN BE RECOGNIZED BY THE FIRST THREE CHARACTERS. YOU MAY, FOR EXAMPLE, TYPE °''STA'’ INSTEAD OF ‘‘START'', 2.1.1 SO OPERATOR COMMANDS THE TSVO5 DIAGNOSTIC IS A PDP-11/23 PROGRAM. CHQUS XXDP+ ALL LOADING AND RUNTIME USERS GUIDE,DOCUMENT DIAGNOSTIC NUMBER AC-F348E-MC. BOOT THE DIAGNOSTIC MEDIA .R VTSB8?? DIAG. RUN-TIME SERVICES REV D. APR 79 (vrsa-A-0 SUPERVISOR COMPATIBLE INSTRUCTIONS CAN BE REFERENCED IN THE THE USER ENTRY IS IN QUOTES. USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4=2 SEQ 0005 vexwTSV05S LOGIC DIAGNOSTIC##ww UgéT IS TSVOS > 2.2 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 THOSE TESTS SPECIFIED IN THE LIST. LIST IS A STRING OF TEST /PASS :DDDDD /FLAGS:FLGS NUMBERS, FOR EXA 'PLE = /TESTS:1:5:7-10, THIS LIST WILL CAUSE TESTS 1,5,7,8,9,10 TO BE RUN. ALL OTHER TESTS WILL NOT BE RUN. EXECUTE DDDDD PASSES (DDDDD = 1 TO 64000) SET SPECIFIED FLAGS. FLAGS ARE DESCRIBED IN SECTION 2.3. /EOP:DDDDD REPORT END OF PASS MESSAGE AFTER EVERY J/UNITS:LIST TEST/ADD/DROP ONLY THOSE UNITS SPECIFIED IN THE LIST. LIST EXAMPLE - /UNITS:0:5:10-12 USE UNITS 0,5,10,11,12 (UNIT NUMBERS = 0-63) DDDDD PASSES ONLY. (DDDDD = 1 TO 64000) EXAMPLE OF SWITCH USAGE: START/TESTS:1-5/PASS:1000/E0P:100 THE EFFECT OF THIS COMMAND WILL BE: 1) TESTS 1 THROUGH 5 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 . START RESTART CONT INUE TESTS PASS FLAGS EOP UNITS X X X X X X X X X PROCEED DROP ADD PRINT DISPLAY X X X X X X X FLAGS ZFLAGS EXIT 2.3 X FLAGS — USER DOCUMENTATON MACRO M1113 25-MAY-82 09:19 PAGE 4-3 SEQ 0006 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 ZFLLAGS 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) INHIBIT EXTENDED ERROR REPORTS (THOSE CALLED BY PRINTX MACRO'S) LOE IER* IBR* IXE* PR] PNT DIRECT MESSAGES TO LINE PRINTER PRINT TEST NUMBER AS TEST EXECUTES UAM ISR UNATTENDED MODE (NO MANUAL INTERVENTION) 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 BOE "BELL'* ON ERROR IDR ADR LoT *ERROR MESSAGES ARE DESCRIBED IN SECTION 3.1 SEE THE XXDP+ USER'S MANUAL FOR MORE DETAILS ON FLAGS. YOU MAY SPECIFY MORE THAN CNE FLAG WITH THE FLAG SWITCH. FOR EXAMPLE, TO CAUSE THE PROGRAM TO LOOP ON ERROR, AND TYPE A "SBELL'' ON ERROR, INHIBIT ERROR REPORTS YOU MAY USE THE FOLLOWING STRING: /FLAGS:LOE:JER:BOE 2.4 HARDWARE QUESTIONS WHEN A DIAGNOSTIC IS STARTED, THE RUNTIME SERVICES WILL PROMPT THE USER FOR HARDWARE INFORMATION BY TYPING '‘CHANGE HW (L) ?*' YOU MUST ANSWER °‘v'' AFTER A START COMMAND UNLESS THE HARDWARE INFORMATION HAS BEEN °''PRELOADED'* USING THE SETUP UTILITY (SEE CHAPTER 14 OF THE XXDP+ USER'S MANUAL). WHEN YOU ANSWER THIS QUESTION WITH A *'v*’, THE RUNTIME SERVICES WILL ASK FOR THE NUMBER OF UNITS (IN DECIMAL). AFTER INITIAL STARTING OF THE PROGRAM (START COMMAND TO THE DIAGNOSTIC SUPERVISOR), THE PROGRAM WILL ISSUE THE °'‘CHANGE HW?'' QUESTION TO ASK If THE HARDWARE PARAMETERS ARE TO BE CHANGED (BY THE OPERATOR). — USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4-4 SEQ 0007 ON A “N'* (NO) RESPONSE TO THE ''CHANGE HW?'' QUESTION, THE DIAGNOSTIC WILL RUN USING THE DEFAULT VALUES FOR ALL QUESTIONS. THE DEFAULT ADDRESS AND VECTOR ARE: TSBA/TSDB = 172520, VECTOR = 224 ON A °'Y*" (YES) RESPONSE TO THE QUESTION, THE FOLLOWING QUESTIONS WILL THEN BE ASKED TO ALLOW THE OPERATOR TC SELECT THE UNITS TO BE TESTED. SOLICITED. AN °'(L)'' INDICATES THAT A LOGICAL RESPONSE IS "Y*" FOR YES, 'N'' FOR NO. BE A VALUE, IF PRESENT, LOCATED TO THE LEFT OF THE QUESTION MARK S THE DEFAULT VALUE THAT WILL BE TAKEN IF ONLY A CARRIAGE RETURN IS TYPED AS A RESPONSE. A "(D)'' IM A QUESTION INDICATES THAT A DECIMAL NUMBER IS REQUIRED AS A RESPONSE. AN ''(0)'' INDICATES AN OCTAL NUMBER IS BEING # UNITS (D) ? TO MADE: <ENTER THE NUMBER OF M7196 CONTROLLERS PRESENT TO BE TESTED> UNIT 0 DEVICE ADDRESS (0) VECTOR (0) 224 ? 172520 ? <ENTER THE ADDRESS OF <ENTER ADDRESS OF VECTOR> INTERRUPT THE ADDRESS AND VECTOR QUESTIONS WILL BE ASKED FOR EACH OF UNITS THE TSBA/TSDB REGISTER> (CONTROLLERS) SPECIFIED IN THE °'# UNITS?'' QUESTION. NUMBERS ARE ASSIGNED IN ORDER, BEGINNING AT 0. SELECTED FOR TESTING AS FOLLOWS: THE NUMBER OF LOGICAL UNIT UP TO FOUR UNITS CAN BE UP TO & TSVO5 CONTROLLERS PER 11/23 AND UP TO 2 DRIVES PER CGNTROLLER 2.5 SOFTWARE QUESTIONS AF._. YOU HAVE ANSWERED THE HARDWARE QUESTIONS OR AFTER A RESTART OR CONTINUE COMMAND, THE RUNTIME SERVICES WILL ASK FOR SOF TWARE PARAMETERS. THESE PARAMETERS WILL GOVERN SOME DIAGNOSTIC SPECIFIC OPERATION MODES. YOU WILL BE PROMPTED BY '‘CHANGE Sw (L) ?*° IF YOU WISH TO CHANGE ANY PARAMETERS, ANSWER BY TYPING "'¥*'. THE SOFTWARE QUESTIONS AND THE DEFAULT VALUES ARE DESCRIBED IN THE NEXT PARAGRAPH(S). THE FOLLOWING QUESTIONS ARE ASKED ON A START, RESTART, THEY ALLOW FLEXIBILITY IN THE WAY THE PROGRAM BEHAVES. CHANGE SW (L) OR CONTINUE. ? <TYPE Y TO CAUSE THE FOLLOWING QUESTIONS TO BE ASKED> INHIBIT ITERATIONS (L) N ? <TYPE ‘'‘Y'' TO PREVENT MULTIPLE ITERATIONS OF CERTAIN TESTS. THIS CAUSES EACH TEST PASS TO RUN AS QUICKLY AS POSSIBLE. ONLY QUICK=RUNNING LOGIC TESTS USE MULTIPLE ITERATIONS.> USER DOCUMENTATION MACRO M1113 2.6 25-MAY-82 09:19 PAGE 4-5 SEQ 0008 EXTENDED P-TABLE DIALOGUE WHEN YOU ANSWER THE HARDWARE QUESTIONS, YOU ARE BUILDING ENTRIES IN A TABLE THAT DESCRIBES THE DEVICES UNDER TEST. THE SIMPLEST WAY TO BUILD THIS TABLE IS TO ANSWER ALL QUESTIONS FOR EACH UNIT TO BE TESTED. IF YOU HAVE A MULTIPLEXED DEVICE SUCH AS A MASS STORAGE CONTROLLER WITH SEVERAL DRIVES OR A COMMUNICATION DEVICE WITH SEVERAL LINES, THIS BECOMES TEDIOUS SINCE MOST OF THE ANSWFRS ARE REPETITIOUS. TO ILLUSTRATE A NORE EFFICIENT METHOD, SUPPOSE YOU ARE TESTING A DEVICE, THE XY11. SUPPOSE THIS DEVICE CONSISTS OF A CONTROL MODULE WITH EIGHT UNITS (SUB-DEVICES) ATTACHED TO IT. THESE UNITS ARE DESCRIBED BY THE OCTAL NUMSERS 0 THROUGH 7. THERE IS ONE HARDWARE PARAMETER THAT CAN VARY AMONG UNITS CALLED THE Q-FACTOR. THIS Q-FACTOR MAY BE 0O OR 1. BELOW IS A SIMPLE WAY TO BUILD A TABLE FOR ONE XY11 WITH EIGHT UNITS. # UNITS (D) ? B8<(R> UNIT 1 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? O0<CR> Q-FACTOR (0) 0 ? 1<CR> UNIT 2 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 1<CR> Q@=FACTOR (0) 1 ? O<CR> UNIT 3 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 2<CR> Q-FACTOR (0) 0 ? <CR> UNIT & CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 3<(R> Q-FACTOR (0) 0 ? <CR> UNIT § CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 4<(R> Q-FACTOR (0) 0 ? <CR> UNIT 6 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 5<CR> Q-FACTOR (0) 0 ? <CR> UNIT 7 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 6<(CR> Q-FACTOR (0) 0 ? 1<CR> UNIT 8 CSR ADDRESS (0) 160000<CR> USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 SUB-DEVICE # (0) ? Q=FACTOR (0) 1 ? PAGE 4-6 SEQ 0009 7<(CR> <CR> NOTICE THAT THE DEFAULT VALUE FOR THE Q=FACTOR CHANGES WHEN A NON-DEFAULT RESPONSE IS GIVEN. BE CAREFUL WHEN SPECIFYING MULTIPLE UNITS! AS YOU CAN SEE FROM THE ABOVE EXAMPLE, THE HARDWARE PARAMETERS DO _NOT VARY SIGNIFICANTLY FROM UNIT TO UNIT. THE PROCEDURE SHOWN IS NOT VERY EFFICIENT. THE RUNTIME SERVICES CAN TAKE MULTIPLE UNIT SPECIFICATIONS HOWEVER. %E;;fiRgUILD THE SAME TABLE USING THE MULTIPLE SPECIFICATION # UNITS (D) ? B8<(R> UNIT 1 CSR ADDRESS (0) ? 160000<(CR> SUB-DEVICE # (0) ? 0,1<(R> Q-FACTOR (0) 0 ? 1,0<CR> UNIT 3 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 2-5<(R> Q-FACTOR (0) 0 ? O0<CR> UNIT 7 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 6,7<CR> Q-FACTOR (0) 0 ? 1<(CR> AS YOU CAN SEE IN THE ABOVE DIALOGUE, THE RUNTIME SERVICES WILL BUILD AS MANY ENTRIES AS IT CAN WITH THE INFORMATION GIVEN IN ANY ONE PASS THROUGH THE QUESTIONS. IN THE FIRST PASS, TWO ENTRIES ARE BUILT SINCE TWO SUB-DEVICES AND Q-FACTORS WERE SPECIFIED. THE SERVICES ASSUME THAT THE CSR ADDRESS IS 160000 FOR BOTH SINCE IT WAS SPECIFIED ONLY ONCE. IN THE SECOND PASS, FOUR ENTRIES WERE BUILT. THIS IS BECAUSE FOUR SUB-DEVICES WERE SPECIFIED. THE '="* CONSTRUCT TE!LS THE RUNTIME SERVICES TO INCREMENT THE DATA FROM THE FIRST NUMBER TO THE SECOND. 2, 3, 4 AND 5 WERE SPECIFIED. IN THIS CASE, SUB-DEVICES (IF THE SUB=-DEVICE WERE SPECIFIED BY ADDRESSES, THE INCREMENT WOULD BE BY 2 SINCE ADDRESSES MUST BE ON AN EVEN BOUNDARY.) THE CSR ADDRESSES AND Q-FACTORS FOR THE FOUR ENTRIES ARE ASSUMED TO BE 160000 AND O RESPECTIVELY SINCE THEY WERE ONLY SPECIFIED ONCE. SPECIFIED IN THE THIRD PASS. THE LAST TWO UNITS ARE THE WHOLE PROCESS COULD HAVE BEEN ACCOMPLISHED IN ONE PASS AS SHOWN BELOW. # UNITS (D) ? B8<(CR> UNIT 1 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? (0-7<CR> Q-FACTOR (0) 0 ? 0,1,0,,,,1,1<CR> USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4-7 SEQ@ 0010 AS YOU CAN SEE FROM THIS EXAMPLE, NULL REPLIES (COMMAS ENCLOSING A NULL FIELD) TELL THE RUNTIME SERVICES TO REPEAT THE LAST REPLY. 2.7 QUICK START=UP PROCEDURE (XXDP+) TO START=UP THIS PROGRAM: 1. BOOT XXDP+ 2. GIVE THE DATE AND ANSWER THE LSI AND 50HZ (IF TKERE IS A CLOCK) QUESTIONS 3. TYPE 'R NAME'', WHERE NAME IS THE NAME OF THE BIN OR BIC FILE FOR THIS PROGRAM 4. TYPE ‘'START" 5. ANSWER THE '‘CHANGE HW'' QUESTION WITH ''v'' 6. ANSWER ALL THE HARDWARE QUESTIONS 7. ANSWER THE ‘'CHANGE SW'' QUESTION WITH 'N'' WHEN YOU FOLLOW THIS PROCEDURE YOU WILL BE USING ONLY THE DEFAULTS FOR FLAGS AND SOFTWARE PARAMETERS. THESE DEFAULTS ARE DESCRIBED IN SECTIONS 2.3 AND 2.5. 3.0 ERROR INFORMATION 3.1 TYPES OF ERROR MESSAGES THERE ARE THREE LEVELS OF ERROR MESSAGES THAT MAY BE ISSUED BY A DIAGNOSTIC: GENERAL, BASIC AND EXTENDED. GENERAL ERROR MESSAGES ARE ALWAYS PRINTED UNLESS THE °''IER'' FLAG IS SET (SECTION 2.3). THE GENERAL ERROR MESSAGE IS OF THE FORM: NAME TYPE NUMBER ERROR MESSAGE ON UNIT NUMBER LWHERE; NAME = DIAGNOSTIC NAME TYPE = ERROR TYPE (SYS FATAL, NUMBER = ERROR NUMBER TST NUMBER PC:XXXXXX DEV FATAL, HARD OR SOFT) UNIT NUMBER = 0 = N (N IS LAST UNIT IN PTABLE) TST NUMBER = TEST AND SUBTEST WHERE ERROR OCCURRED PC:XXXXXX = ADDRESS OF ERROR MESSAGE CALL BASIC ERROR MESSAGES ARE MESSAGES THAT CONTAIN SOME ADDITIONAL INFORMATION ABOUT THE ERROR. THESE ARE ALWAYS PRINTED UNLESS THE "'IER' OR '‘IBR'' FLAGS ARE SET (SECTION 2.3). THESE MESSAGES ARE PRINTED AFTER THE ASSOCIATED GENERAL MESSAGE. EXTENDED ERROR MESSAGES CONTAIN SUPPLEMENTARY ERROR INFORMATION SUCH AS REGISTER CONTENTS OR GOOD/BAD DATA. THESE ARE ALWAYS PRINTED UNLESS THE '‘IER'', "'IBR'' OR ''IXR'* FLAGS ARE SET (SECTION 2.3). THESE MESSAGES ARE PRINTED AFTER THE ASSOCIATED GENERAL ERROR MESSAGE AND ANY ASSOCIATED BASIC ERROR MESSAGES. USER DOCUMENTATION MACRO M1113 25-MAY-82 09:16 PAGE 4-8 SEQ 0011 3.2 SPECIFIC ERROR MESSAGES BELOW ARE SAMPLE ERROR MESSAGES. EACH ERROR MESSAGE OF ERRORS DETECTED BY THIS DIAGNOSTIC. REPRESENTS DIFFERENT TYPES ERROR MESSALt EXAMPLE 1 THIS ERROR IS INDICATIVE OF AN INCORRECT REGISTER OR STATUS WORD RETURNED TO THE DIAGNOSTIC. THE FIRST PART DEFINES THE TEST FUNCTION AND UNIT THAT FAILED. THE SECOND PARY PRIOVIDES THE REGISTER BITS AND THEIR MNEMONICS FOR THE Igg?:RECT REGISTER OR STATUS WORDS. THE THIRD PART IS THE EXPECTED AND RECEIVED TST: 016 FIFO EXERCISER TEST CVTSB HRD ERR 01610 ON UNIT 00 TST 016 SuB 002 PC: 040624 FIFO STATUS (IN WORD 9) INCORRECT AFTER WRITE FIFO TAPE BUS SIGNALS IN WORD #8: PARERR<15> JEOT <12> IFMK IRESV2<14> IRESV1<13> TIDENT<11> ICER <10> TAPE BUS SIGINALS DATMIS<?> ILW<6> - DESIGNATOR <BIT #> <9> IRDY<6> [RWD<2> [IHER <8> [ISPEED<?> IN WORD #9: OUTRDY<S> IONL<S> ILDP<4> [IFBY<1> [FPT<O0> INRDY<4> MESSAGE BUFFER ADDRESS = 047352 MESSAGE BUFFER CONTENTS: WORD #0 EXPD: 100020 RECV: 100020 WORD #1 EXPD: 000012 WORD #2 EXPD: 000000 RECV: 000012 RECV: 000000 WORD #4 EXPD: 000000 RECV: 000000 WORD #3 EXPD: 000010 WORD #5 EXPD: 000000 WORD WORD WORD WORD #6 #7 #8 #9 EXPD: EXPD: EXPD: EXPD: 000000 000000 070217 000074 RECV: 000010 RECV: 000000 RECV: RECV: RECV: RECV: 000000 000000 070217 000034 XOR: 000000 XOR: 000000 XOR: 000000 XOR: 000000 XOR: 000000 XxOR: 000000 XxOR: XOR: XOR: XOR: 000000 000000 000000 000040 ERROR MESSAGE EXAMPLE 2 THIS ERROR SHOWS A FATAL FUNCTION ERROR FROM THE TAPE DRIVE,IN THIS £:$ISQCEDngg¥EsgVERABLE ERROR OCCURED WHICH INDICATES THAT THE CONTROLLER CviSB HRD ERR 00159 ON UNIT 00 TST 001 SuB 005 PC: 026202 TSSR NOT CORRECT AFTER SPACE RECORDS COMMAND TSSR = 100214 TSSR BITS SET: SC,SSR TERMINATION CLASS CODE = UNRECOVERABLE ERROR PACKET ADDRESS = 026420 PACKET WORD # = 140010 PACKET WORD # PACKET WORD # PACKET WORD # = 000010 = 000000 000024 UTER DOCUMENTATION MACRO M1113 25-MAY-B2 09:19 PAGE 4-9 ERROR MESSAGE EXAMPLE 3 THIS ERROR SHOWS THAT THE MOTION BIT DID NOT GET SET WHILE DOING A REWING WITH EXTENDED FEATURES MODE ENABLED. CVTSB HRD ERR 00121 ON UNIT OC TST 001 SuB 002 PC: 023306 MOT BIT (XSTO) NOT SET DURING REWIND (EXTENDED FEATURES MODE) ExPD: 000312 RECV: 000112 XOR: 000200 4.0 PERFORMANCE AND PROGRESS REPORTS AT THE END OF EACH PASS, THE PASS COUNT IS GIVEN ALONG WITH THE TOTAL NUMBER OF ERRORS REPORTED SINCE THE DIAGNOSTIC WAS STARTED. THE 'EOP'' SWITCH CAN BE USED TO CONTROL HOW OFTEN THE END OF PASS MESSAGE IS PRINTED. SECTION 2.2 DESCRIBES SWITCHES. SUCCESSFUL RUN EXAMPLE (PDP-11/23) DR>STA/FLA:PNT:HOE : UAM UNITS (D) ?2 1 UNIT 0 DEVICE ADDRESS (0) 172520 ? <CR> VECTOR (0) 224 ? <CR> CHANGE SW (L) ? N<CR> THE ABOVE COMMAND WILL START THE DIAGNOSTIC. ~THE COMMAND HAS THREE SWITCHES ON WHICH ARE ‘'PRINT EACH TEST NBR AS EXECUTED'' , 'HALT ON ERROR'' AND 'RUN IN UNATTENDED MODE'’. NOTE:THE UAM FLAG SHOULD BE USED TO PREVENT TEST 10-12 FROM BEING EXECUTED UNLESS THE OPERATOR WANTS THESE SPECIFIC TEST. TST: TST: TST: TST: TST: TST: TST: TST: TST: TST: TST: TST: 001 INITIALIZE #3 TEST 002 BASIC WRITE SUBSYSTEM MEMORY TEST Q03 004 005 006 007 008 009 010 011 012 DMA MEMORY ADDRESSING TEST RAM EXERCISER TEST FIFO EXERCISER TEST STATIC TRANSPORT BUS CHECK TRANSPORT BUS INTERFACE CHECK VIA LOOPBACK TEST READ/WRITE DATA PARITY CHECK TEST MISCELLANEOUS LOGIC CHECKS TEST STAND-ALONE MANUAL INTERVENTION NOT EXECUTED TEST STAND-ALONE CONFIGURATION TYPEQUT NOT EXECUTED TEST STAND-ALONE SCOPE LOOPS NOT EXECUTED TEST SEQ@ 0012 USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4-10 SEQ 0013 0 ERRORS NOTE: THE DIAGNOSTIC WILL RUN CONTINUOUSLY UNLESS A PASS LIMIT HAS BEEN SPECIFIED WITH THE ''/PASS:'" SWITCH. PROGRAM RUN TIMES THE AVERAGE RUN TIMES OF TO BE USED AS A THE PROGRAM ARE LISTED BELOW.THESE FIGURES GUIDE. THE TIMING PROCESSOR WITH A LA-34 CONSOLE. WAS DONE ON A PDP-11/23 ARE THE PROGRAM RUNS IN TWO MODES; NO ITERATIONS AND DEFAULT MODE. IN THE NO ITERATIONS MODE, EACH TEST IS RUN ONCE, WITH NO ITERATIONS. I[N THE DEFAULT MODE EACH TEST IS REPEATED BY THE NUMBER OF TIMES INDICATED 8Y THE ITERATION COUNT. NO ITERATIONS MODE IS SELECTED BY ANSWERING THE INHIBIT ITERATIONS QUESTION WITH A *'v'" (YES). TEST NUMBER 1 2 3 & 5 6 7 8 9 THE N/1 SECS. 15 ITER SECS 110 1 10 1 15 17 540 10 120 3 15 17 DEF SECS. 35 50 1 1 6 1 5 0 430 9 110 12 13 TIMES REQUIRED TO RUN TESTS Q.v. DEFAULT 1 THROUGH 9 IN ONE COMMAND: 2 MINS 19 SECONDS 11 MINS 35 SECONDS 5.0 DEVICE INFORMATION TABLES WHENEVER THE PROGRAM IS STARTED, THE VIA THE STA(RT) COMMAND, SUPERVISOR REQUESTS THE FOLLOWING P-TABLES PARAMETER CHANGES: CHANGE HW (L) # UNITS (D) ? ? <ENTER THE NUMBER OF M7196 CONTROLLERS PRESENT TO BE TESTED> UNIT 0 DEVICE ADDRSSS VECTOR (0) 224 ? (0) 172520 ? <ENTER THE ADDRESS OF TSBA/TSDB REGISTER> <ENTER ADDRESS OF VECTOR> THE INTERRUPT THE ADDRESS AND VECTOR QUESTIONS wILL BE ASKED FOR EACH OF THE NUMBER OF MACRO M1113 USER DOCUMENTATION UNITS 25-MAY-82 09:19 PAGE 4-11 SEQ 0014 (CONTROLLERS) SPECIFIED IN THE °'# UNITS?'' QUESTION. NUMBERS ARE ASSIGNED IN ORDER, BEGINNING AT 0. SELECTED FOR TESTING. LOGICAL UNIT UP TO FOUR UNITS CAN BE IN ADDITION, ON A START, RESTART OR CONTINUE THE SUPERVISOR §gofgags CHANGES TO THE SOF TWARE OPERATING PARAMETERS, AS : L CHANGE SW (L) 6.0 TEST 1: ? TEST SUMMARIES INITIALIZE AFTER WRITE CHARACTERISTICS TEST DESCRIPTION: THIS TEST VERIFIES THAT A HARDWARE INITIALIZE COMMAND INVOKED AFTER A WRITE CHARACTERISTICS COMMAND SETS UP THE COMMAND, MESSAGE AND CHARACTERISTIC IN THE CONTROLLER RAM CORRECTLY. IMAGE BLOCKS TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND THIS TEST VERIFIES THAT THE WRITE SUBSYSTEM MEMORY COMMAND WITH A BSELO SELECT CODE OF 0 (NO-OP) EXECUTES CORRECTLY. IT ALSO VERIFIES THAT A WRITE SUBSYSTEM MEMORY COMMAND WITH A NON-ZERO MODE FIELD IS REJECTED. THE TEST FURTHER VERIFIES MICROPROGRAM COMMAND DECODING AND HANDLING SEQUENCES. TEST 3: DMA MEMORY ADDRESSING THIS TEST VERIFIES THAT THE CONTROLLER CAN PROPERLY ADDRESS AND ACCESS ALL AVAILABLE CPU MEMORY (OTHER THAN THAT OCCUPIED BY THE DIAGNOSTIC AND DIAGNOSTIC SUPERVISOR CODE) FOR BOTH READING (DATI) AND WRITING (DATQ). VERIFIED ARE THE LSI-11 BUS DRIVERS FOR ALL AVAILABLE ADDRESS LINES. UP TO THIS POINT ONLY 16 BITS HAVE BEEN USED FOR DMA TRANSFERS. EREA AN R AR AN RAN NN NN AN NN NN NN NN RN AR AT R NRAARNAANRNRANNAARANNARS CAUTION THE LSI BUS DRIVERS FOR ALL AVAIL..3LE ADDRESS LINES ARE ONLY CHECKED WHEN RUNNING ON A 11/23B SYSTEM WITH MORE THAN 128K WORDS OF MEMORY! ERR AR TEST RN AN AN NN AR NN A AN &: RAM EXERCISER TEST C NN RN AN AN AN RN RN NN ANNANNANRANRR AR ENRANRAS USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4-12 THIS TEST USES THE READ AND WRITE RAM (BOTH SINGLE AND 256 LOCATIONS) SELECT CODES OF THE WRITE SUBSYSTEM MEMORY COMMAND TO EXERCISE TEST §: THE CONTROLLER'S RAM MEMORY AND DMA LOGIC EXTENDED FEATURES SWITCH AND TIMERS A,B TEST DESCRIPTION: THIS TEST VERIFIES THE INVERT EXTENDED FEATURES FUNCTION CAN LOGICALLY INVERT THE EXTENDED FEATURES SWITCH AND THAT THE INTERNAL TIMERS A AND B OPERATE CORRECTLY. TEST 6: FIFO EXERCISER TEST DESCRIPTION: THIS TEST USES THE WRITE SUBSYSTEM MEMORY COMMAND TO VERIFY THE CONTROLLER'S FIFO AND ASSOCIATED STATUS AND CONTROL LOGIC. TEST 7: STATIC TRANSPORT BUS INTERFACE TEST TEST DESCRIPTION: WRITE TO TSSR REGISTER TO SOFT INITIALIZE THE CONTROLLER DO WRITE CHARACTERISTICS TO CHECK FOR EXTENDED FEATURES SWITCH IF EXTENDED FEATURES HARDWARE SWITCH CLEAR THEN: DO WRITE SUBSYSTEM WRITE MISCELLANEOUS TO SET EXTENDED FEATURES. D0 WRITE CHARACTERISTICS TO SELECT RESERVED UNIT 7 DO A WRITE SUBSYSTEM READ STATUS IF ANY TRANSPCRT INTERFACE SIGNALS ARE ASSERTED THEN PRINT ERROR TEST 8: TRANSPORT BLS INTERFACE LOOPBACK TEST TEST DESCRIPTION: THIS TEST VERIFIES THE CONTROLLER'S TRANSPORT BUS DRIVERS, RECEIVERS, AND SIGNAL LOOPBACK LOGIC. NOTE THAT THE STATIC TRANSPORT BUS TEST MUST HAVE RUN CORRECTLY FOR THIS TEST TO PROVIDE MEANINGFUL RESULTS. TEST 9: READ/WRITE DATA PARITY TEST TEST DESCRIPTION: THIS TEST VERIFIES THAT THE WRITE DATA PARITY GENERATOR AND THE READ DATA PARITY CHECKER OPERATE PROPERLY. THE TRANSPORT BUS SIGNAL LOOPBACK MODE 1S ENABLED AND A SET WRONG PARITY FUNCTION IS EXECUTED. THEN VARIOUS WRITE SUBSYSTEM MEMORY FUNCTIONS ARE PERFORMED TO WRITE DATA TO AND FROM THE FIFO IN LOOPBACK MODE. THE PROGRAM THEN CHECKS TO INSURE A READ DATA PARITY ERROR OCCURRED. A RESET FIFO IS DONE AND THE READ DATA PARITY SEQ 0015 —— USER DOCUMENTATION MACRO M1113 25-MAY-82 09:19 PAGE 4-13 SEQ 0016 ERROR BIT IS AGAIN TESTED TO INSURE IT CLEARED. FINALLY A CLEAR WRONG PARITY FUNCTION IS DONE AND IT IS VERIFIED THE DATA WORD CAN PASS IN LOOPBACK MODE WITHOUT SETTING READ DATA PARITY ERROR. TEST 10: MANUAL INTERVENTION THE MANUAL INTERVENTION TEST IS A STANDALONE ROUTINE (NOT REALLY A ''TEST'") THAT ALLOWS THE OPERATOR TO CHECK OUT VARIOUS ELEMENTS AND FUNCTIONS OF THE SUBSYSTEM THAT CANNOT BE MANIPULATED BY THE PROGRAM ALONE. WHEN THIS ROUTINE IS STARTED, IT FIRST PRINTS OQUT A MENU OF SELECTABLE SUBTESTS AND THEN WAITS FOR THE OPERATOR TO TYPE IN A SELECTION CODE. THE ONLY WAYS TO EXIT THIS ROUTINE AND RETURN TO THE DIAGNOSTIC SUPERVISOR ARE BY TYPING <CTRL-C> OR SELECTING CODE 6. SELECTION CODES AND SUBROUTINES ARE: OV W= O CODE TEST 11: ROUTINE HELP. PRINTS THIS MENU. TURN ON ALL M7196 LED INDICATORS TURN OFF ALL M7196 LED INDICATORS OFFLINE/ONLINE ATTENTION TEST WRITE-PRITECT TEST PRINT EXTENDED TRANSPORT STATUS EXIT (RETURN TO SUPERVISOR) CONF IGURATION TYPEOUT THIS IS A STANDALONE ROUTINE THAT PRINTS OUT ON THE CONSOLE TERMINAL THE CONFIGURATION OF THE M7196 MODULE AND TSVO5 SUBSYSTEM. SPECIFICALLY, THE FOLLOWING INFORMATION IS PRESENTED: 1.0 STATE OF THE EXTENDED FEATURES SWITCH ON THE M7196: ON (EXTENDED FEATURES ENABLED) OR OFF (EXTENDED FEATURES DISABLED), 2.0 STATE OF THE BUFFERING ENABLE SWITCH ON THE M7196: ON (BUFFERING ENABLED) OR OFF (BUFFERING DISABLED), 3.0 MICROCODE REVSION LEVEL OF THE M7196, 4.0 NUMBER OF TAPE TRANSPORTS CONNECTED TO THE CONTROLLER, 5.0 UNIT SELECT CODE AND STATE (ONLINE/OFFLINE, WRITE ENABLED/PROTECTED) OF EACH CONNECTED TRANSPORT. FOR EACH ON-LINE IN ADDITION, THE PRGGRAM WILL INDICATE, TRANSPORT, WHETHER OR NOT IT IS EQUIPPED WITH THE EXTENDED TAPE STATUS READOUT FEATURE. TEST 12: SCOPE LOOPS THIS IS A STANDALONE ROUTINE PROVIDING A NUMBER OF TIGHT ‘‘SCOPE LOOPS’' USEFUL FOR DEBUGGING BASIC REGISTER ACCESS PROBLEMS WITH THE M7196 MODULE. THESE SCOPE LOOPS CAN BE USED WHEN THE NORMAL "LOOP ON ERROR'‘ OR '‘LOOP ON TEST (SUBTEST)'* FACILITIES DON'T MACRO M1113 25-MAY-82 09:19 PAGE 4~14 SEQ 0017 SEEM TO ALLOW THE OPERATOR TO ZERO IN A PROBLEM IN THE EARLY TESTS (I.E, THE HARDWARE MAY NOT BE RESPONDING TO A REGISTER ACCESS, CAUSING A BUS ERROR TRAP, EVEN THOUGH THE DEVICE ADDRESS SELECTED BY THE PROGRAM MATCHES THE CONFIGURATION SET UP IN THE :czgfggEEDIP SWITCHES). THE FOLLOWING MENU OF SCOPE LOOPS ARE CODE 0 NOAWNIESSWWIN) = USER DOCUMENTATION 8 SCOPE LOOP HELP. PRINT THIS MENU. TSBA READ ACCESS TSSR READ ACCESS INITIALIZE (TSSR WRITE ACCESS) TSDB HIGH BYTE WRITE ACCESS TSDB LOW BYTE WRITE ACCESS TSDB MAINTENANCE-MODE WORD WRITE ACCESS TSDBX (TSSR HIGH BYTE) WRITE ACCESS (EXTENDED FEATURES SWITCH MUST BE ON TO USE SELECTION CODE 7) EXIT (RETURN TO SUPERVISOR) FOR SCOPE LOOPS THAT WRITE INTO REGISTERS, THE PROGRAM PROMPTS THE OPERATOR FOR THE DATA TO BE WRITTEN,LIMITS ON THE DATA PATTENS ARE 0-377, TYPING <RETURN> CAUSES AN EXIT FROM THE SCOPE LOOP BACK TO MENU LEVEL. 7.0 MAINTENANCE HISTORY REVISION A - MAR(CH 1982 TSV2 ~ PROGRAM HEADER MACRO M1113 25-MAY-82 09:19 PAGE 7 SEQ 0018 2 2 LTITLE .SBTTL TSV2 - PROGRAM HEADER PROGRAM HEADER 10 11 000000 12 13 19 000000 LMCALL Sv( ENABLE NLIST .ENABL .=2000 BGNMOD SVC 20 21 002000 002000 22 23 24 002000 TSV2:: : 5 002040 s INITIALIZE SUPERVISOR MACROS ve Y : THE PROGRAM HEADER IS THE INTERFACE BETWEEN %2 29 002000 30 002000 002000 002000 002001 002002 002003 002004 002005 002006 002007 002010 002010 002011 002011 002012 002012 002014 002014 002016 002016 002020 002020 002022 002022 002024 002024 002026 002026 002030 002030 002032 002032 002034 002034 002036 002036 002040 L( BEX,CND ABS,AMA 103 126 124 123 102 000 000 000 101 060 000000 001217 101342 101474 002156 002166 102004 000000 000000 000000 000000 002124 THE DIAGNOSTIC PROGRAM AND THE SUPERVISOR. POINTER BGNSW,BGNSFT,BGNAU,BGNDU,BGNRPT HEADER (VvTSB,A,0,655..0 LSNAME : : ;DIAGNOSTIC NAME LASCII /C/ LASCI1 /v/ LASCII /1/ LASCII /8/ LASCII /8/ .BYTE 0 BYTE O .BYTE 0 LSREV:: sREVISION LEVEL LASCII /A/ LSDEPO: : ;0 LASCII 70/ LSUNIT:: sNUMBER OF UNITS .WORD O LSTIML:: JLONGEST TEST TIME .WORD 655. LSHPCP: : sPOINTER TO H.W. QUES. .WORD LSHARD LSSPCP: : sPOINTER TO S.W. QUES. .WORD LSSOFT LSHPTP: : sPTR. TO DEF. H.W. PTABLE LWORD LSHW LSSPTP: : ;PTR., TO S.W. PTABLE .WORD LS$SW LSLADP:: ;DIAG. END ADDRESS .WORD LSLAST LS$STA:: ;RESERVED FOR APT STATS MWORD O L$CO:: .WORD O LSDTYP:: sDIAGNOSTIC TYPE WORD O LSAPT: : sAPT EXPANSION WORD O LSDTP:: ;PTR. TO DISPATCH TABLE .WORD LSDISPATCH — TSV2 = PROGRAM HEADER PROGRAM HEADER 002042 002042 002044 002044 002046 002046 002050 000000 000000 000000 003 003 000000 000000 000000 003402 022664 000000 000000 022352 022450 000000 003410 104035 000000 021556 022636 022556 021546 000000 000000 002120 000000 MACRO M1113 25-MAY-82 09:19 LSPRIO: LSENVI: LSEXP1: LSMREV: " .WORD " .WORD " .WORD ".BYTE LSEF:: L$SPC:: LSDEVP:: LSREPP:: LSEXP4:: LSEXPS:: LSAUT:: LSDUT:: LSLUN:: LSDESP:: LSLOAD:: LSETP:: LSICP:: LSCCP:: LSACP:: LSPRT:: LSTEST:: LSDLY:: : LSHIME: PAGE 7-1 0 ;FLAGS DESCRIBE HOW IT WAS SETUP 0 ;EXPANSION WORD :SVC REV AND EDIT # CSREVISION CSEDIT 0 ;DIAG. EVENT FLAGS 0 .WORD 0 .WORD LSDVTYP .WORD LSRPT .WORD 0 .WORD 0 -WORD LSAU .WORD LSDU 0 -WORD LSDESC EMT ESLOAD -WORD 0 .WORD LSINIT .WORD LSCLEAN .WORD LSAUTO -WORD LSPROT .WORD .WORD .WORD sDIAGNOSTIC RUN PRIORITY 0 .WORD +WORD -WORD SEQ 0019 : POINTER TO DEVICE TYPE LIST :PTR. TO REPORT CODE ¢PTR. TO ADD UNIT CODE ;PTR. TO DROP UNIT CODE sLUN FOR EXERCISERS TO FILL ;POINTER TO DIAG. DESCRIPTION :GENERATE SPECIAL AUTOLOAD EMT sPOINTER TO ERRTBL ;PTR. TO INIT CODE ;PTR. TO CLEAN-UP CODE :PTR. TO AUTO CODE ¢PTR. TO PROTECT TABLE 0 :TEST NUMBER 0 sDELAY COUNT 0 sPTR. TO HIGH MEM | TSV2 - PROGRAM HEADER DISPATCH TABLE MACRO M1113 25-MAY-82 09:19 .SBTTL PAGE 8 DISPAT(H TABLE I ; ¢ 40 002122 002122 002124 002124 002126 002130 002132 002134 002136 002140 002142 002144 002146 002150 002152 000014 023446 074510 077662 THE DISPATCH TABLE CONTAINS THE STARTING ADDRESS OF EACH TEST. IT 1S USED BY THE SUPERVISOR TO DISPATCH TO EACH TEST. DISPATCH 12 LMORD 12 LSDISPATCH:: T WORD WORD T2 .WORD T3 WORD T4 WORD TS .WORD T6 T7 LWORD .WORD T8 T9 .WORD WORD T10 .WORD T LWORD T12 SEQ 0020 TSV2 ~ PROGRAM HEADER ~ MACRO M1113 DEFAULT HARDWARE P-TABLE 25-MAY-82 09:19 &2 .SBTTL @ PAGE 9 SEQ 0021 DEFAULT HARDWARE P-TABLE [T 45 46 s c zg THE DEFAULT HARDWARE P-TABLE CONTAINS DEFAULT VALUES OF THE TEST-DEVICE PARAMETERS. THE STRUCTURE OF THIS TABLE s 1S IDENTICAL TO THE STRUCTURE OF THE RUN-TIME P-TABLE. 49 002154 002154 002156 0 002156 000003 51 002156 52 002160 172520 000224 000200 53 002162 54 002164 002164 ’ LSHW:: DFPTBL:: BONHW DFPTBL cDEFAULT HARD=-P-TABLE WORD LWORD 172520 224 PRIO4 : : LWORD .WORD L10000: ENDHW L10000~-LSHW/2 : 1ST (OF 2) REGISTERS. INTERRUPT VECTOR INTERRUPT PRIORITY. TSV2 - PROGRAM HEADER SOF TWARE P=-TABLE MACRO M1113 25-MAY-82 09:19 g; .SBTTL PAGE 10 SEQ 0022 SOFTWARE P-TABLE S8 R 59 g? : THE SOFTWARE P-TABLE CONTAINS THE VALUES OF THE PROGRAM ; PARAMETERS THAT CAN BE CHANGED BY THE OPERATOR. ’ BGNSW 000004 64 002166 22 002170 000000 000000 TRANSTST: : NOITS:: -WORD .WORD 0 0 67 68 002172 69 002174 000017 000310 LERRMAX: : GERRMAX: : .WORD .WORD 15, 200. 70 2176 176 71 72 002176 LESW:: L10001-L$SW/2 SFPTBL : : L10001: ENDSW ENDMOD TR PR FEN : ENABLE TEST OF TRANSPORT(S) INHIBIT {}Egzgéon OPTJION. N 63 002166 LWORD SFPTBL 002164 002166 LB 62 002164 IF =1 ...NZ = INHIBIT ITERATE. LOCAL (PER TEST) ERROR LIMIT GLOBAL (PER UNIT) ERROR LIMIT - — TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 ~ SOF TWARE P=-TABLE 8 13 19 20 002176 002176 TSV3:: PAGE 13 SEQ 0023 LTITLE .SBTTL TSV3 - GLOBAL AREAS GLOBAL EQUATES SECTION BGNMOD TSV3 .SBTTL GLOBAL EQUATES SECTION +4 ; THE GLOBAL EQUATES SECTION CONTAINS PROGRAM EQUATES ARE USED IN MORE THAN ONE TEST. 29 33 002176 EQUALS THAT ;s GET STANDARD EQUATES. : BIT DIFINITIONS 040000 020000 010000 004000 002000 001000 000400 000200 000100 000040 000020 000010 000004 000002 000001 100000 8I1T15== 100000 8IT14== 40000 B8I1T13== 20000 8IT12== 10000 BIT11== 4000 B81T10== 2000 8I1T09== 1000 BIT08== 400 8I1T07== 200 81706== 100 B8IT05== 40 B8IT04== 20 B8IT03== 10 B8IT02== 4 8IT01== 2 81700== 1 001000 000400 000200 000100 000040 000020 000010 8179== B8178== BIT7== BITé== B8IT5== BIT4== BIT09 B8IT08 BIT07 BIT06 BITO0S BIT04 000001 8IT1== B8I1T0== BITO1 B8IT00 8173== BIT2== BIT03 BIT0?2 EVENT FLAG _DEFINJITIONS EF32:EF17 RESERVED FOR SUPERVISOR TO PROGRAM COMMUNICATION 000040 000034 EF .START== EF.RESTART== EF.CONTINUE== EF .NEW== gF.PUR== 32. 31. 30. 29. 28. : START COMMAND WAS ISSUED ; RESTART COMMAND WAS ISSUED ¢ CONTINUE COMMAND WAS [SSUED : A NEW PASS HAS BEEN STARTED : A POWER-FAIL/POWER-UP OCCURRED ——————— TSV3 = GLOBAL AREAS GLOBAL EQUATES SECTION MACRO M1113 25-MAY-82 09:19 PAGE 13-1 SEQ 0024 ; PRIORITY LEVEL DEFINITIONS 000340 000300 000240 000200 000140 000100 000040 000000 PRIO7== PRI06== PRIOS== PRIO4== PRI03== PRI02== PRIO1== PRI00== 340 300 240 200 140 100 40 0 ;OPERATOR FLAG BITS 000004 000010 000020 000040 000100 " 000200 000400 001000 002000 004000 010000 020000 040000 100000 35 002176 EVL== LOT== ADR== IDU== ISR== UAM== BOE== PNT== PR]== IXE== IBE== IER== LOE== HOE== .SBTTL 4 10 20 40 100 200 400 1000 2000 4000 10000 20000 40000 100000 KT11 MEMORY MANAGEMENT DEFINITIONS sekT11 vscron ADDRESS 000250 MMVEC= 250 177572 177574 177576 172516 SRO= SR1= SR2= S?g=~8 177572 177574 177576 172516 :*KT11 STATUS REGISTER ADDRESSES ;*USER '‘'I'' PAGE DESCRIPTOR REGISTERS UIPDRO= UIPDR1= UIPDR2= UIPDR3= UIPDR4= UIPDRS= UIPDRé= UIPDR?= .IF NB 177600 177602 177604 177606 177610 177612 177614 177616 s*USER ‘D'’ PAGE DESCRIPTOR REGISTORS UDPDRO= UDPDR1= UDPDR2= UDPDR3= UDPDR4= UDPDRS5= UDPDR6= UDPDR7= 177620 177622 177624 177626 177630 177632 177634 177636 sDEFINE MEMORY MANAGEMENT REGISTERS TSV3 - GLOBAL AREAS MACRO M1113 MEMORY MANAGEMENT DEF INITIONS 25-MAY-82 09:19 PAGE 13-2 -ENDC ;*USER *'I''_PAGE ADDRESS REGISTERS UIPARO= 177640 UIPAR1= 177642 UIPAR2= 177644 UIPAR3= 177646 UIPAR4= 177650 UIPARS= 177652 UIPARG= 177654 }?A:?- 177656 ;s *USER 'b"PAGE ADDRESS REGISTERS UDPARO= 177660 UDPAR1= 177662 UDPAR2= 177664 UDPAR3= 177666 UDPAR4= 177670 UDPARS= 177672 UDPARG= 177674 UDPAR?= 177676 -ENDC -ENDC .IF NB ; *SUPERVISOR ''I'* PAGE DESCRIPTOR REGISTERS SIPDRO= 172200 SIPDR3= SIPDR4= SIPDRS= SIPDRé= S}?ng= 172206 172210 172212 172214 172216 : *SUPERVISOR 'D'* PAGE DESCRIPTOR REGISTERS SDPDRO= SDPDR1= SDPDR2= SDPDR3= SDPDRé4= SDPDR5= SDPDR6= SDPDR7= -ENDC 172220 172222 172224 172226 172230 172232 172234 172236 : *SUPERVISOR '‘I'* PAGE ADDRESS REGISTERS SIPARO= SIPAR1= SIPARZ= SIPAR3= SIPAR4= SIPARS= IPARG= S}?Azg' 172240 172242 172244 172246 17225) 172252 172254 172256 : *SUPERVISOR 'D*' PAGE ADDRESS REGISTERS SDPARO= 1722 SDPAR1= 172262 SDPARZ= 172264 SEQ@ 0025 MACRO M1113 25-MAY-82 09:19 SDPAR3= SDPAR4= SDPARS= SDPARG= SDPAR7= .ENDC -ENDC 300 302 04 06 10 12 14 16 PAGE 13-3 172266 172270 172272 172274 172276 s *KERNEL ‘'I'' PAGE DESCRIPTOR REGISTERS KIPDRO= 1723 KIPDR1= 1723 KIPDR2= KIPDR3= KIPDR4= KIPDRS= KIPDR6= KIPDR?= .1F N8B 1723 1723 1723 1723 1723 1723 ONSHNOONSNO TSV3 =~ GLOBAL AREAS MEMORY MANAGEMENT DEFINITIONS : *KERNEL 'D** PAGE DESCRIPTOR REGISTERS KDPDRO= 1 KDPDR1= 1 KDPDR2= 1 KDPDR3= } KDPDR4= KDPDRS= 1 KDPDR6= 1 KDPDR?= 172336 ek cd e b b b [« V. P1PV fHuwun YOO DO > > 200V RXRXXX N (=] ed e 340 [SYSyayas NNN&NNNN b d b b e - 8 SNNSNNSNNNN d ENDC s *KERNEL ''I'* PAGE ADDRESS REGISTERS KIPARQ= 0 .IF NB s*KERNEL ''D'' PAGE ADDRESS REGISTERS KDPARQO= KDPAR1= KDPAR2= KDPAR3= KDPAR4= KDPARS= KDPAR6= KDPAR?7= ENDC 172360 17 17 17 17 17 17 17 SEQ 0026 25-MAY-82 09:19 PAGE 14 SEQ@ 0027 40 .SBTTL &2 43 : SOME G ENERAL EQUATES. 000004 49 177562 93 94 95 96 010000 004000 002000 001400 000200 000100 000060 000016 5 4 SC= BIE= SCE= 3 RMR= 2 NXM= 1 NBA= 0 HIADDR= 8178 SSR= OFL= 176 FATERR= BIT4!BITS TERCLS= BIT3!BIT2!8IT1 ; CONSOLE INPUT DATA BUFFER s BDVI1 PAGE CONTROL REGISTER sSPECIAL CONDITION sBUS INTERFACE ERROR sSANITY CHECK ERROR sMODIFICATION REFUSED ¢NONEXISTANT MEMORY ERROR ¢NEED BUFFER ADDRESS sEXTENDED ADDRESS BITS +SUB SYSTEM READY ;OFF LINE BIT sFATAL TERMINATION ERROR CODES TERMINATION CODES ;+ BIT DEF INITIONS FOR EXTENDED STATUS REGISTER 0 000001 XSOEOT= O =Moo g =—d i = ] = = ) el g =g ~f VIO NGO = — = = ) ol ) ) o 002000 001000 000400 000200 000100 000040 000020 000010 000004 000002 XSOTMK= XSORLS= XSOLET= XSORLL= XSOWLE= = XSONEF X30ILC= XSOILA= XSOMOT= XSOONL= XSOIE= XSOV(K= XSOPED= XSOWLK= Xxs080T= g Pumg Svug 100000 040000 020000 010000 004000 O 0 BV O D L (XSTO) O = RIN Nn 92 100000 040000 020000 Pumg Pumg 81 82 83 84 85 86 87 88 89 90 s BUS ADDRESS OF CONSOLE INPUT :BIT DEF INITIONS FOR TSSR REGISTER g P 70 71 72 73 74 75 76 77 78 79 80 ; POINTER TO ERROR VECTOR FOR BUS TIME OUT. ¢ INTERRUPT VECTOR FOR CONSOLE INFUT X g $uep $emeg Bong St By Srmmg 63 64 65 66 67 68 69 i 177520 53 54 55 56 57 58 59 60 61 62 7560 S 50 51 52 000060 177560 00 0D 0D O 00 T T €D O T T 47 48 TSVO5 REGISTER AND PACKET DEFINITIONS n 61 44 45 46 ] MACRO M1113 s TAPE MARK DETECTED sRECORD LENGTH SHORT sLOGICAL END OF TAPE sRECORD LENGTH ' ONG ;WRITE LOCK ERROR sNON EXECUTABLE FUNCTION s ILLEGAL COMMAND s ILLEGAL ADDRESS s TAPE IN MOTION s TRANSPORT ON LINE s INTERRUPT ENABLE sVOLUME CHECK BIT sPHASE ENCODED DRIVE sWRITE LOCKED ¢BEGINNING OF TAPE ;END OF TAPE ;4 .8 IT DEF INITIONS FOR EXTENDED STATUS REGISTER 1 ( XST1) (A TSV3 - GLOBAL AREAS TSVOS REGISTER AND PACKET DEFINITIONS TSV3 - GLOBAL AREAS MACRO M1113 25-MAY=82 09:19 TSVOS REGISTER AND PACKET DEFINITIONS 9?7 98 X1.DLT 020000 017375 000400 X1.COR X1.MBZ X1.RBP 0460000 }82 000002 100 101 102 105 106 112 113 114 115 }}9 100000 040000 035400 002000 000200 000100 000077 000007 X1.UNC JUNCORRECTABLE DATA OR HARD ERROR sNOT USED = BIT13 s CORRECTABLE DATA ERROR = BIT12+BIT11+BIT10+BITO+BIT7+BIT6+BITS+BIT4L+BIT3+BIT2+BITO :ALWAYS O = BIT8 sREAD BUS PARITY ERROR = BIT X2.0PM = BIT1S sOPERATION IN PROGRESS (TAPE MOVING) X2.RCE = BIT14 sRAM CHECKSUM ERROR X2.SPARE= BIT13+8IT12+BIT11+B]IT9+BIT8 .NOT USED BY TSVOS (ALWAYS=0) X2.WCF X2.EXTF X2.BUFE X2.REV X2.UNIT = = = = = BIT10 JWRITE CLOCK FAILURE (FIFO NOT EMPTIED BY TRANSPORT) BIT7 ;IF WRITE CHAR CMD THEN = EXTENDED FEATURES ENABLED BIT6 sIF WRITE CHAR CMD THEN = BUFFERING ENABLED 000077 JIF WRITE CHAR CMD THEN = MICROCODE REVISION LEVEL BIT2+BIT1+BITO ;IF GET STATUS THEN = CURRENTLY SELECTED UNIT NO. :(XST3) 1776400 124 125 126 127 000200 000100 000040 000020 000010 }%3 000001 000006 131 132 X3.MDE = 177400 X3.SPARE= BIT7 X3.0P] X3.REV X3.TRF X3.0Ck X3.MBZ X3.RI8 = = = = BITé BITS BIT4 BIT3 =BIT2+BIT1 = BITO sMICRO-DIAGNOSTIC ERROR CODE sNOT USED BY TSVO0S ;OPERATION INCOMPLETE sREVERSE :TRANSPORT RESPONSE FAILURE :DENSITY CHECK JNOT USED ALWAYS O sREVERSE INTO BOT o+ ;BIT DEFINITIONS FOR EXTENDED STATUS REGISTER & ;gz 135 136 137 138 }zg ;sDATA LATE 2! ;BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 3 }%? 128 = BIT1S X1.SPARE= BIT14 $(XST2) 118 119 122 123 SEQ 0028 o+ sBIT DEFINITIONS FOR EXTENDED STATUS REGISTER 2 ;8; 109 110 1M1 ;- 100000 99 PAGE 14~1 s (XST4) 100000 040000 020000 017400 000377 X4.HSP X4.RCE X6.TSM X4.MBZ X4.WRC = = = = = BIT1S JHIGH SPEED BIT14 sRETRY COUNT EXCEEDED BIT13 ; TRANSPORT SPECIAL MODE BIT12+BIT11+BITI10+BIT9+8IT8 ;NOT USED ALWAYS 0 000377 JWRITE RETRY COUNT FIELD 141 142 143 ot : }2% ;TSSR TERMINATION CODES (BIT 0-2) 146 :- 147 148 }gg 151 152 153 000006 000006 TSREJ= UNREC= st : 3«2 6 sDEVICE REGISTER OFFSETS ;COMMAND REJECTED JUNRECOVERABLE ERROR D — — MACRO M1113 TSVOS REGISTER AND PACKET DEFINITIONS 200 201 202 203 204 205 206 207 208 209 210 :TSDB/TSBA REGISTER HIGH BYTE ¢ TSSR REGISTER sTSSR REGISTER HIGH BYTE X ; 000003 TSDB ADDRESS BIT DEFINITIONS A1716 = BIT1+BIT 0 sADDRESS BITS 17:16 ARE IN 1:0 i+ ; 000017 000013 000012 000011 000010 000006 000005 000004 000001 COMMAND DEFINITI ONS P.GETSTAT P.INIT P.CONTROL P.FORMAT P.POSITION P.WRTSUB P.WRITE P.WRTCHAR P.READ JGET STATUS JINITIALIZE ;CONTROL COMMANDS JFORMAT sPOSITION sSUBSYSTEM WRITE JWRITE :UR{{E CHARACTERISTICS 14 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 SEQ@ 0029 s TSDB/TSBA REGISTER b md b md Q=NIW~N 167 168 169 170 17 172 173 174 175 176 177 178 179 180 181 182 000000 000000 000001 000001 000002 000003 ON 166 PAGE 14-2 d SN 154 155 156 157 158 159 160 161 162 163 164 165 25-MAY-82 09:19 ; COMMAND PACKET HEADER WORD BIT DEFINITIONS 100000 040000 020000 010000 007400 000200 000140 000037 .t P.ACK = BIT1S sBUFFER AVAIL FOR CONTROLLER P.Cv(C = BIT14 sCLEAR VOLUME CHECK P.OPP = BIT13 sREVERSE SEQUENCE OF DATA BITS P.SW8 = BIT1?2 :SWAP BYTES IN MEMORY P.MODE = BIT11'B 1T10!8179!BIT8 ;EXTENDED COMMAND MODE FIELD P.IE = 8117 : INTERRUPT ENABLE P.FMT= 8176'8175 :PACKET HEADER TYPE (ALWAYS=0) P.CMD = 37 :MAJOR COMMAND FIELD . CONTROL COMMAND MODE CODES 000000 000400 001000 002000 PC.RELEASE PC.REWIND PC.NOOP PC.IEREW PC.ERASE 002400 = = = = = 0+256. 12256. 2+256. 4+256, 5+256. sRELEASE BUFFER cREWIND :NO-0P JREWIND IMMEDIATE INTERRUPT ¢SECURITY ERASE X ; CONTROLLER RAM DEFINITIONS 000167 000200 000201 000210 000215 000234 RMCHBEG = 167 RMCHEND = 200 RMPKTBEG= 201 RMPKTEND= 210 RMMSGBEG= 215 RMMSGEND= 234 sCHARACTERISTICS 10 DATA BEGIN RAM ADDRESS sCHARACTERISTICS 10 DATA END RAM ADDRESS s COMMAND PACKET BEGIN RAM ADDRESS s COMMAND PACKET END RAM ADDRESS sMESSAGE BUFFER BEGIN RAM ADDRESS sMESSAGE BUFFER END RAM ADDRESS T TSV3 - GLOBAL AREAS TSV3 ~ GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 TSVOS REGISTER AND PACKET DEFINITIONS PAGE 14-3 SEQ@ 0030 OOV 00NO VNN MRg :REGISTER DEFINITIONS IN THE MESSAGE BUFFER 000006 000010 000012 000014 000016 XST0== XST1== XST2== XST3== XST4== 6 8, 10, 12, 14, ;EXTENDED ;EXTENDED SEXTENDED sEXTENDED sEXTENDED STATUS STATUS STATUS STATUS STATUS REGISTER REGISTER REGISTER REGISTER REGISTER O 1 2 3 4 (WORD (WORD (WORD (WORD (WORD 4) 5) 6) 7) 8) 4 :OFFSETS TO WORD LOCATIONS IN PACKET DEFINITIONS 000002 000004 000006 PKLOW 000010 EXBCNT=10 PKH] PKBCNT M =2 =4 = 6 sLOW ORDER CHARACTERISTIC DATA POINTER +HIGH ORDER CHARACTERISTIC DATA POINTER sNUMBER OF BYTES IN DATA PACKET sNUMBER OF BYTES IN EXTENDED DATA PACKET 4 sDATA PACKET OFFSETS FOR WRITE SUBSYTEM COMMAND 000000 000001 000002 000004 BSELO BSEL1T SEL2 =0 =1 =2 SELDATA = & ;BYTE 0 ;BYTE 1 sWORD 2 JWORD 3 ;+ :BSELO SELECT CODES FOR WRITE SUBSYSTEM COMMAND 000000 000001 000002 000003 000004 000005 000006 000007 000010 000011 000020 000021 000022 000023 000024 PW.NOP PW.RDRAM PW.WTRAM PW.RFIFO PW.WFIFO PW.RDSTAT PW.WCTL PW.WFMT PW.WMISC PW.WNPR PW.D22 PW.D11 PW.D13 PW.NO1311 PW.RDEXT =0 =1 ;NO-0P JREAD RAM =2 =3 = 4 =5 = 6 =7 =10 =N JWRITE RAM JREAD FIFO JWRITE FIFO JREAD STATUS SWRITE TAPE CONTROL JWRITE TAPE FORMAT JWRITE MISCELLANEOUS JWRITE NPR CONTROL = 21 = 22 ;DO MICROTEST 11 ;D0 MICROTEST 13 = 24 SREAD EXT. = 20 = 23 :DO MICROTEST 22 ;DISABLE MICROTEST 11 AND 13 TAPE STATUS (NOT SUPPORTED BY ALL TRANSPORTS .t ;BSEL1 CODES FOR WRITE TAPE CONTROL 000200 000100 WC.IFAD WwC.IO0TAD BIT? BIT6 ;IFAD = FORMATTER ADDRESS :ITADO ~ TRANSPORT ADDRESS BIT 0 O - —— 000040 000020 000010 000004 000002 000001 WC.11TAD WC.ISRESV WC. IREW WC. IRWU WC.IFEN wC.1GO PAGE 14=~4 = = = = BITS BIT4 BIT3 BITZ = BIM = BITO SEQ 0031 JITAD1 JIRESVS IREW :IRWU JIFEN 260 TRANSPORT ADDRESS BIT 1 RESERVED #5 REWIND REWIND AND UNLOAD FORMATTER ENABLE X ;BSEL1 CODES FOR WRITE FORMAT 000200 000100 000040 000020 000010 000004 000002 000001 WF.IH]SP = BIT7 WF . IWRT = BIT6 WF.IWFM WF.IEDIT = BIT4 = BIT3 WF.IREV WF . JERASE WF . 13RESV WF . I4RESV = BITS = BIT2 = 8IM = BITO JIMISP J IWRT JIREV JIWFM JIEDIT :1ERASE JIRESV3 JIRESV4 HIGH SPEED WRITE REVERSE WRITE FILE MARK EDIT ERASE RESERVED #3 RESERVED #4 X sBSEL1 CODES FOR WRITE MISCELLANEOUS SUBCOMMAND 000200 000020 000010 000006 000001 MS.EXT MS.RSFIFO MS.RSTAPE MS.ATIN MS.RSD = 8117 = BIT4 = BIT3 = BIT2!BIT? = BITO ;¢ s INVERT SENSE OF EXTENDED FEATURES SWITCH sRESET FIFO AND INPUT PARITY ERRORR sRESET TAPE STATUS IN 2 FLIP-FLOPS SATTENTION TRIGGER FIELD JRESET TIMER A,B THEN DELAY TIMES IN SELZ2 ¢ MS.ATTN SUBCODES 000000 000002 000004 000006 i+ MSA.NOP = MSA.VOL = MSA .NRAM= MSA.FRAM= 0«2 1+2 2#2 3«2 :NO-CP (NOTHING TRIGGERED) s SIMULATE ON-LINE/OFF<LINE TRMNSISTION cFORCE NON-FATAL RAM ERROR (FORCES ERRCODE sFORCE FATAL RAM ERROR (CAUSES SCE TO SET) 54) ; WRITE SUBSYSTEM WRITE NPR BSEL1 BIT DEFINITIONS 000200 000100 000040 000020 NP.IR NP.OUT NP.LOOP NP .WRP = = = = BIT7 BITé BITS BIT4 PR s INTERRUPT REQUEST (0-1 TRANSITION) s TAPE DATA DIRECTION OUT (0= IN) cENABLE TRANSPORT LOOPBACK sWRITE CORRECT PARITY (SET=0 TO WRITE WRONG) . READ STATUS MESSAGE BUFFER BIT DEFINITIONS 000003 100000 040000 020000 010000 = BIT? = BIT6 = BITS = BIT4 = BIT3 = BIT2 = BIT1+8IT0 = BIT15 = BIT14 = BIT13 = BIT12 ;WORD #9 BYTE 2 DATA IN MISS e B0 ® S2.DIM S2.ILW $2.0UTRDY S2. INRDY S2.ATIMR S2.BTIMR S2.UNDEF S1.PARIN S1.12RESV S1.11RESV S1.1E07 Ve 000200 000100 000040 000020 000010 000004 s (UNDEF INED) ILW H OUT RDY H IN RDY H TIMER A FLAG H TIMER B FLAG H ;WORD #8 BYTE 1 PARIN H IRESV2 IRESV1 IEOT L T —4 TSV3 - GLOBAL AREA3 MACRO M1113 25-MAY-82 09:19 TSVOS REGISTER AND PACKET DEFINITIONS r x WORD #8 BYTE 0 i af ol ol ad ol l aX - 3 3 3 -4 =1 f = O =2 NN ) o x SEQ 0032 O — — [=Y O VO g Bumt B G B g e =l ) e mef $amg B G S0.IFBY SO.IFPT e 000001 nunnunnun 004000 002000 001000 PAGE 14-5 =g Peg Prnep B 25-MAY-82 £3:19 0 oo om MACRO M1113 M TSV3 ~ GLOBAL AREAS TSVOS REGISTER AND PACKET DEF INITIONS 25-MAY-82 09:19 PAGE 15 .SBTTL SEQ@ 0033 SPECIAL MACROS AND OPDEFS. X sSAVE GENERAL REGS 1 TO 5 .MACRO JSR .ENDM SAYREG RS ,REGSAV HACRO TO FORCE AN ERROR H:C?? FORCERROR I{gTNDF LISTALL, TAG,NOTSSR .NLIST .IF B NOTSSR ENDC MOV TSSR(RS) ,R1 sREAD TSSR ) FORCER,FORCER ;IS FORCER SET? (LEAVE C BIT ALONE) MOV BNE TAG .NLIST <IIF NDF LISTALL, LLIST .ENDM :BR IF YES .LIST i s MACRO TO FORCE AN EXIT 7O AVOID SECTION ITERATIONS WILL EXIT TO A LABEL [F FORCER IS NEGATIVE SO TO FORCE_ERRGRS AND EXIT ON 1 ERROR SET FORCER TO 177777 TO FORCE ERRORS AND ITERATIONS SET FORCER TO 1. nfggo FORCEXIT TAG '{{2,"”' LISTALL, ) MOV BM] .NLIST FORCER,FORCER TAG NLIST CIIF NDF LISTALL, LIST ENDH ;IS FORCER NEGATIVE? ‘BR IF .LIST HACRO TO INCREMENT ERROR COUNTS .HACRO NLIST NEXT.ERRNO sos.11F NDF LISTALL, .NLIST ERRNO=ERRNO+1 ss:.11F NDF LISTALL, .LIST LIST .ENDM YES O - MACRO M1113 * TSV3 - GLOBAL AREAS SPECIAL MACROS AND OPDEFS. MACRO M1113 397 25-MAY-82 0 9:19 .= .MACRO MOV BIC BIC 8IS .ENDM 000000 EN=0 .SBTTL LY N) e -—h & 412 002176 SEQ 0034 sMACRO T O PERFORM XOR 398 407 PAGE 15-1 . . 000000 XOR A.B A,=(SP) 8.(SP) A8 (SP)+.,8 FORCER : INITIALIZE ERROR NUMBER =~ FORCE ERROR FLAG THE FO LLOWING LOCATIONS MAY BE PATCHED BY T0 0BT AIN THE RESULTS DESCRIBED FOR EACH. FORCER: : 0 THE USER : FORCE TYPE ALL HARD ERRORS (THE ONES CALLED - ; = BY THE MACRO “IFERROR''). AN ERROR NEED NOT - : = EXIST, JUST ASSUME AND TYPE THE MESSAGE. O — TSV3 = GLOBAL AREAS SPECIAL MACROS AND OPDEFS. ] TSV3 - GLOBAL AREAS GLOBAL DATA SECTION 25% MACRO M1113 25-MAY-82 09:19 .SBTTL PAGE 16 SEQ 0035 GLOBAL DATA SECTION 424 425 426 427 4t ;THE GLOBAL DATA SECTION CONTAINS DATA THAT ARE USED ;IN MORE THAN ONE TEST. M 430 JTHE FOLLOWING DATA ARE SET FOR EACH UNJIT AT INIT TIME. 55 2%5 sSINGLE UNIT DEFAULTS (LISTED) ARE IN THE DEFAULT P-~TABLE. 433 002200 434 002202 435 002204 436 002206 437 002210 438 002212 439 002214 000000 000000 000000 000000 000224 000200 000000 EPRTSW: : UNITN:: QvP:: CSRADDR: : IVEC:: IPR]:: TSTCNT:: 442 002222 443 002224 444 002226 445 002230 446 002232 447 002234 448 002236 449 002240 450 002242 451 002302 452 002304 453 002306 454 002310 455 002312 456 002314 457 002316 458 002320 459 002322 460 002466 461 002632 000000 000000 000000 000000 000000 000000 000000 000000 FATFLG:: INTRECV:: EXTFEA:: BENBSW: : EXPD:: RECV:: ERRH] : : ERRLO:: RAMDATA: : RAMSIZ:: RCVHIADD: : RCVLOADD: : COUNT:: 440 002216 441 002220 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 LOOPCNT: : DEVCNT:: DATA:: TSTFLAG:: TSTPTR:: PRMNO: : EXPMSG: : RECMSG:: TMPBFR: : MORD WORD WORD WORD .WORD LWORD WORD O O O O 224 PRIO4 O JPRINT SWITCH JUNIT # UNDER TEST. JQUICK VERIFY FLAG. ;ADDRESS OF CSR FOR CURRENT DEVICE s INTERRUPT VECTOR ;INTERRUPT PRIORITY. JNUMBER OF TESTS RUN IN THIS PASS WORD WORD .WORD WORD -WORD MWORD WORD WORD BLKW .WORD LMWORD .WORD WORD O O 0 O 0 O O O 16, 0 O O O O O O O 100. 100. 80. JSET IF FATAL ERROR IS DETECTED IN TEST JSET IF TAPE INTERRUPT WAS RECEIVED JEXTENDED FEATURES SOFTWARE SW 0=0FF;1=0ON sBUFFER ENABLE SWITCH SW O=OFF:1=0ON SEXPECTED RAM DATA FOR PRAMPKT ROUTINE sRECEIVED RAM DATA FOR PRAMPKT ROUTINE JHIGH ADDRESS MEMORY ERROR ;LOW ADDRESS MEMORY ERROR sDATA READ FROM RAM PACKET OR MESSAGE BUF AREA JRAM DATA SIZE FOR PRAMPKT ROUTINE JRECEIVED BUFFER HIGH ADDRESS JRECEIVED BUFFER LOW ADDRESS JTEST COUNT PATTERN WORD .WORD WORD WORD WORD WORD .BLKB .BLkB .BLKB O O JREMAINING ITERATION COUNT FOR TEST JNUMBER OF DEVICE UNDER TEST JTEST DATA sTEST FLAG WORD ;TSTBLK POINTER JPRINT ROUTINE TEMP JEXPECTED MESSAGE BUFFER DATA JRECEIVED MESSAGE BUFFER DATA . TEMPORARY STORAGE FOR PRINT MACRO M1113 = TEST DATA TABLE 25-MAY-82 09:19 .SBTTL PAGE 17 TSTBLK SEQ 0036 <~ TEST DATA TABLE L g LXE TR PR PR FE PN PN *THIS TABLE CONTAINS TEST DATA USED IN SEVERAL TESTS *IN SEQUENCE THE DATA IS: 478 479 002752 480 002752 481 002754 482 002756 483 002760 484 002762 485 002764 486 002766 487 002770 488 002772 489 002774 490 002776 491 003000 492 003002 493 003004 494 003006 495 003010 496 003012 497 003014 498 003016 499 003020 500 003022 501 502 503 504 505 506 507 003024 003026 003030 003032 003034 003036 003040 2 3 g 003056 6 000000 1772777 000001 000002 000004 000010 000020 000040 000100 000200 000400 001000 002000 004000 010000 TSTBLK: : WORD 0 sALL ZEROS WORD WORD WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD WORD .WORD .WORD WORD .WORD .WORD .WORD WORD .WORD WORD .WORD LWORD LWORD .WORD .WORD .WORD .WORD WORD .WORD .WORD .WORD .WORD BITO BIT1 BIT?2 BIT3 BIT4 BITS BIT6 BIT7 BITS8 BIT9 BIT10 BITIM BIT12 BIT13 BIT14 BIT1S ~(8IT0 “(8IT1 “(BIT?2 “(BIT3 ~CBITS4 ~(BITS ~(8IT6 ~(BIT?7 ~(BIT8 ~(8I1T9 ~c8IT10 “BITN “(BIT12 “(BIT13 ~(BIT14 ~CBIT1S 125252 052525 sDATA FOR WALKING ONES -WORD 177737 177677 177577 177377 176777 175777 173777 167777 157777 137777 077777 125252 052525 003062 ALL ZEROS ALL ONES WALKING ONES WALKING ZEROS ALTERNATING ONES AND ZEROS 1BLEND 1727777 sALL ONES ;DATA FOR WALKING ZEROS JALTERNATING ONES, ZEROS JALTERNATING ONES, ZERO OPPOSITE FROM ABOVE O — TSV3 =~ GLOBAL AREAS TSTBLK .SBTTL PAGE 18 SEQ 0037 GLOBAL ENVIRONMENT STORAGE *STORAGE FOR DEVICE REGISTERS 000000 000000 pumMMy: 0,100000,0,0 0,0,0,0,0,0.0.0 sDUMMY DEVICE REGISTERS... se+«.FOR MULTI-UNIT CHECKOUT. 003112 000000 DUFLG:: .WORD O 100000 000000 003114 000000 NODEV: : .WORD O 000000 000000 003116 000000 000000 000000 000000 000000 000000 000000 TEMPY :: .WoD OOO0O0O0O 003062 003072 549 003156 550 003160 551 003162 552 003164 553 003164 554 003166 555 003170 556 003172 557 003174 558 003176 050000 000000 002000 000000 000000 000000 000000 000000 000000 000000 000000 177777 KTFLG:: KTENABLE: : NXMFLG:: NXMLO: : NXMHI : : T23A:: T238:: T3BFLG:: PST32W:: SIFLAG:: 568 003176 569 003376 570 571 003400 .WORD -WORD .WORD .WORD -WORD .WORD .WORD +WORD .WORD .WORD BADDAT: : GDDAT:: .WORD .WORD LOOPFL:: .WORD CTAB:: CTABM: ; .WORD .WORD .WORD .WORD .WORD CTABE:: sERROR STATISTICS TABLE 000 1 0 100000 10XXXX 160000 = = = : 1eXXXX = UNIT UNIT UNIT UNIT UNIT UNIT BLKW .WORD 64. 0 000000 ERTABL: ERTABE : 000000 SKIPT: .WORD =z 0 :"DROPPED UNIT'' FLAG. sINHIBITS CODE IN ‘'CLEAN=-UP'’, sFLAG TO SAY NO DEVICE. ;SOME TEMP LOCATIONS. ;XXDP+ COMM BLOCK POINTER. :1ST FREE MEMORY ADDRESS... s...AND SIZE (IN WORDS). ;LAST WORD IN FREE SPACE sKT11, MEM AVAIL FLAG ;= .WORD 0 = <24K OR NO KT = 2= NZ = >24K AND KT, JSET BY TEST ROUTINES TO FLAG >28K UNDER TEST JSET IF WE CAN TEST CLEARED OTHERWISE :NXM LO ADDRESS BITS JNXM H1 ADDRESS BITS FOR DAL'S 16-21 :11/23A FLAG 2117238 FLAG ;sTEST 38 FLAG “0 :32W BLOCK ADDRESS FOR 32K START SACTUAL DATA ‘EXPECTED DATA s CONF IGURATION TABLES. sCONFIG WORK. sEND OF MEM TABLE. (1 WORD PER UNIT), 64 UNITS MAX: : : : : 67 .WORD .WORD 0 O 546 00315C 547 003152 548 003154 000000 000000 000000 000000 000060 FREE:: FRESIZ:: FREEHI: .WORD .wORD .WORD OOOONOOOOOOO 537 003132 538 539 540 003134 541 003136 542 003140 543 003142 544 003144 545 003146 TEMP?2: : XXCOMM: : 1 OO0O00 W= OV NI WNSHWNI-LO O VIV N NN VIV TV WA W NN NN PN PRI NN = — 25-MAY-82 09:19 - MACRO M1113 NOT TESTED ONLINE, NO ERRORS ONLINE, ENCOUNTERED XXXX ERRORS DROPPED, NON-EXISTENT DEVICE REGISTER DROPPED, NOT IDLE AT START DROPPED, ENCOUNTERED XXXX ERRORS s1=SKIP SUBTEST 0=NO SKIP OF SUBTEST w TSV3 = GLOBAL AREAS GLOBAL ENVIRONPENT STORAGE MACRO M1113 25-MAY-82 09:19 573 Y .SBTTL PAGE 19 SEQ 0038 GLOBAL TEXT MESSAGES s THE GL OBAL TEXT SECTION CONTAINS FORMAT STATEMENTS, ¢ MESSAGES, AND ASCII INFORMATION THAT ARE USED IN ¢ MORE T HAN ONE TEST. i+ sNAMES O F DEVICES SUPPORTED 586 003402 003402 003402 124 587 995 596 597 598 003410 003410 003410 123 126 LSDVTYP: DEVTYP <TSV05> CASCIZ /TSV0S/ i+ <TEST DE SCRIPTION 052 052 052 LS$DESC:: DESCRIPT <wwxe TSVQ5 LOGIC DIAGNOSTIC -~ REPLACE M7196 IF ERROR tiws> .eegal /xxxx TSVO5 LOGIC DIAGNOSTIC - REPLACE M7196 IF ERROR s/ 599 613 614 615 616 ;+ 617 TSSRBIT:: mbd b ad b ccd acd e o e o b b e b b NN =NININO=NOO 8BNS NN S H =N OCOOWW b aud b b b md b b b b b b ad ad b 003551 003613 000 OO b mdmd SRt b R ON) = = O WO — = b b b b b ON N =2 =2 N O VN~ N 10 —ted O b b S8V VIO S 003545 003607 QOQONMNIN - e NN W b b md md wud md =nd =D nud b b b b = — b ON OO0OO0O0OO0O=NOO——=NIN oo NONININININ NWNRINONONNO WO NN W 003542 OO~ =d 620 003502 621 003522 622 003542 623 003545 624 003551 625 003555 626 003561 627 003565 628 003571 629 003576 630 003603 631 003607 632 003613 633 003620 634 003625 635 003632 636 003637 637 003644 638 639 003652 640 003705 641 003740 642 003777 643 006020 :BIT T0 ASCII CONVERSION FOR TSSR REGISTER o o 618 619 SFIERR: SFHERR: NXR: NXRX: TSSX: LASCIZ .ASCIZ LASCIZ LASCIZ LASCIZ LASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ LASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .EVEN <ASCIZ .ASCIZ <ASCIZ <ASCIZ CASCII .WORD LWORD °SC’ °‘BIE’ °'SCE'’ °RMR’ °'NXM' 1%,2%,3$,48,58,68,7%,88 9%,108,118,12%,13$,148,15%,16% °NBA' 'BITY’ ‘'BITS8' °'SSR' °OFL' 'BITS' ‘BIT4® 'BIT3’ 'BIT2® ‘BIT1® 'BITO’ °'TSSR ERROR AFTER SOFT INIT® °'TSSR ERROR AFTER BUS RESET'® / NON=-EXISTANT DEVICE REGISTER/ /XA ADDRESS: X06/ /XA TSBA,TSSR EXP'D: X06XA,X06XN/ m—o‘_] TSV3 = GLOBAL AREAS GLOBAL TEXT MESSAGES GLOBAL TEXT MESSAGES 644 645 646 647 648 649 650 651 652 653 ggg MACRO M1113 25-MAY-82 09:19 004060 0046117 004123 004152 004215 004221 004256 004300 004335 004407 004457 045 045 040 040 045 040 040 045 040 040 040 101 116 040 040 116 040 040 101 040 040 040 040 04S 125 111 04S 116 111 040 062 062 042 FUSI: USl: NSI: FNOINTR NOINTR: IFAULT: INTX: NOINIT: NSINIT: BRINIT: 656 004527 657 004530 658 004533 659 004567 660 004643 661 004745 662 005013 663 005056 664 005113 665 005206 666 005300 667 005372 668 005460 669 005554 g;? 005645 000 045 045 045 045 122 040 127 124 124 106 105 045 045 045 116 101 116 101 101 040 122 123 123 101 122 116 116 116 000 040 045 040 115 103 111 123 123 126 122 045 045 045 NUL: LASCIZ2 NULCR: .ASCIZ EXPGOT: .ASCIZ EXPGT2: .ASCIZ DUAD12: .ASCIZ PKTRAM:: SCME: LASCIZ WRIMSG: .ASCIZ WRTERR: .ASCI2 RDERR: .ASCIZ SCHERR: ,ASCIZ RETERR: .ASCIZ NOMEM: _ASCIZ MB186: .ASCIZ mM8189: .gSEIZ 672 673 674 LASCIZ JASCII LASCIZ LASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCIZ .EVEN PAGE 19-1 SEQ 0039 /XA TSBA,TSSR REC'D: %06%A,%06/ /INXA/ / UNEXPECTED INTERRUPT/ / INTERRUPT EXPECTED, NOT RECEIVED/ LASCII /INXA/ / NO INTERRUPT WAS GENERATED/ / INTERRUPT FAULT/ /XA C(CPU PC: X06%A TSBA: 206/ / °'BUS-INIT' DIDN'T INITIALIZE CONTROLLER/ 7/ ‘'SOFT-INIT'' DIDN'T INITIALIZE THE DPU/ / °'BUS-RESET'' DIDN'T INITIALIZE THE DPU/ // /IN/ /XA EXP'D: Z06XA, REC'D: %06/ /XNXA EXP'D: Y06XA, ¥O6INZA REC'D: X0%A, %06/ /XA REG(W) WRITTEN TO: Z06XA REG(R) READ; EXP'D: X06XA, REC'D: X06/ .ASCIZ °'RAM (Contents Do Not Match Packet Sent' / CONFIG DOESN'T MATCH MFG. MASTER/ ‘WRITE CHARACTERISTICS Failed’ 'TSSR Incorrect After WRITE Command, More Bits Set Than SSR® 'TSSR Incorrect After READ Command, More Bits Set Than SSR® °‘FATAL ERROR IN SUBTEST - CHECK TAPE,CABLES, TRANSPORT etc.' 'ERROR IN SUBTEST - WRITE DATA RETRY FIVE TIMES FAILED'® °'XNXA eeeex NO NXM ADDRESS=--CANNOT TEST NXM TIMEQUT. ssewxiN' °'INYA tresnncnnnannsnnn 11/23A SYSTEM sosrnnannaennennnedN’ 'INZA sosnnsnnnnnannnnn 11/238 SYSTEM tennnnnnnnneennnadN’ - TSV3 - GLOBAL AREAS TSV3 = GLOBAL AREAS MACRO M1113 GLOBAL ERROR REPORT SECTION 676 677 678 679 680 681 682 683 684 005736 005736 685 005736 005736 005742 0057646 005752 005754 005756 686 005762 687 005766 005766 005766 25-MAY-82 09:19 .SBTTL PAGE 20 SEQ 0040 GLOBAL ERROR REPORT SECTION .t THE GLOBAL ERROR REPORT SECTION CONTAINS THE PRINTB AND PRINTX s CALLS THAT ARE USED IN MORE THAN ONE TEST. ¢ ASCII TEXT STRINGS ARE FOUND [N THE GLOBAL TEXT SECTION. NXRE"R:: 013746 012746 012746 010600 104415 062706 004737 003114 003777 000002 000006 005770 L10002: 104423 BGNMSG NXRERR sNON-EXISTANT DEVICE REGISTER. PRINTX Mov MOV MoV MOV TRAP ADD JSR #NXRX,NODEV NODEV,=(SP) #NXRX,=(SP) ¢NODEV = NEXM ADDRESS. ENDMSG TRAP #2,=(SP) SP,RO CSPNTX PC.EXTEND s PRINT EXTENSION IF REQUIRED. CSMSG : THIS ROUTINE APPENDS A UNIQUE EXTENSION (IF REQUIRED) : TO ANY OF THE ABOVE ERROR SIGNATURES. 694 005770 695 005772 696 005774 697 005776 698 006002 006002 006006 006012 006014 006016 699 006022 005727 000000 001402 004777 012746 012746 010600 1064415 062706 000207 177770 004530 000001 000004 EXTEND: TST EXTA: 0 BEQ JSR 1¢: PRINTX MOV MOV MOV TRAP ADD RTS (PC)+ 18 PC,aEXTA #NULCR #NULCR,=(SP) #1,=-(SP) SP,RO CSPNTX #6,SP PC ; 0 = NO EXTENSION. ; s APPEND EXTENSION TEXT. PRINT A BLANK LINE TSV3 - GLOBAL AREAS PRITSSR = PRINT MACRO M1113 TSSR CONTENTS 25-MAY-82 09:19 4 PAGE 22 SEQ 0041 ;85 .SBTTL PRITSSR = PRINT TSSR CONTENTS 706 707 sROUTINE TO DISPLAY THE CONTENTS, AND BIT DEFINITIONS, OF sTHE TSSR REGISTER. THIS ROUTINE IS NORMALLY CALLED ONLY ;}9 : INPUTS:: ;}g : ;}g :SUBORDINATE ROUTINES: ;}9 : 718 719 720 006024 721 006024 ;- ;83 :BY A MESSAGE PRINTING ROUTINE PRITSSR: 722 006030 723 006032 006032 006034 006040 006044 006046 006050 724 006054 725 006056 726 006062 010446 012746 012746 010600 104414 062706 010400 004737 103410 016044 006064 00607v 006074 006076 006100 728 006104 729 006106 730 006112 731 006114 732 006120 733 0061264 734 006126 735 006130 736 006132 737 0061346 738 006136 739 006140 740 006142 761 006144 012746 012746 010600 104415 062706 010403 042703 001434 012702 012701 005703 001413 000241 006103 103006 011100 112022 001376 112762 006635 000001 727 006064 742 006152 743 006154 744 006156 745 006160 006160 006164 R1 010104 005721 006415 000002 000006 002632 003502 108: 11$: 000054 000763 105042 012746 012746 5%: 001476 177777 13%: 15$: 002632 006606 TSSR CHKAMB CHECK FOR AMBIGUOUS CONTENTS SAVREG MoV PRINTB MoV MOV MoV MOV TRAP ADD MoV JSR BCS R1,.R4 #TS3SRFOR,R4 R4 ,~(SP) #TSSRFOR,~(SP) #2,-(SP) SF RO CSPNTB #6,SP R4 ,RO PC.,CHKAMB 5% PRINTX 000004 CONTENTS OF #AMBTSSR :SAVE GENERAL REGISTERS JSAVE THE TSSR CONTENTS JPRINT THE CONTENTS OF TSSR ;GET TSSR BACK FOR CHKAMB 2ARE CONTENTS AMBIGUOUS ? ;BRANCH IF NOT :SHOW CONTENTS ARE AMBIGUOUS MOV MOV MOV TRAP ADD MOV 8IC BEQ MOV MOV ST BEQ CLC ROL BCC MOV MOVB BNE MOVB #AMBTSSR,=(SP) #1,-(SP) SP.RO CSPNTX #6,SP R4 ,R3 ;CONTENTS OF TSSR #HIADDR'FATERR! TERCLS,R3 sCLEAR ALL MULTIPLE BIT FIELDS 208 ;NO BITS ARE SET #TMPBFR P2 s TEMPORARY ASCII BUFFER #TSSRBIT,R1 JASCI1 EQUIVALENT OfF BITS R3 REMAINING BITS TO CONVERT 158 ;BRANCH WHEN ALL ARE DONE JCLEAR CARRY FOR SHIFTY R3 sSHIFT NEXT BIT TO CARRY 138 sBRANCH IF BIT NOT SET (R1) ,RO SPOINTER TO BIT DEFINITION (RO)+,(R2)+ JMOVE ASCI2 TO BUFFER 118 :MOVE ALL BITS 2 ,,-1(R2) sINSERT A COMMA TO TERMINATE BR 108 ST CLRB PRINTX MOV MOV (Rij+ sPOINT TO NEXT DESCRIPTION JGET THE REMAINING BITS -(R2) sTERMINATE THE LINE W#TSSDEF,#TMPBFR ;PRINT THE BIT DEFINITIONS #TMPBFR,=(SP) #TSSDEF ,-(SP) 006170 006174 006176 006200 766 747 006204 748 006206 749 006212 750 006216 006216 751 006240 752 006242 753 006246 754 006250 755 006252 756 006254 757 006256 758 006262 006262 006264 006270 006274 006276 006300 759 006304 760 006310 761 006312 006312 006314 006320 006324 006326 006330 762 006334 763 006340 006340 006342 006346 006350 006352 764 006356 MACRO M1113 TSSR CONTENTS 012746 010600 104415 062706 000006 010403 042703 016303 177761 006676 010346 012746 012746 010600 104415 062706 010403 042703 001416 006203 006203 006203 016303 010346 012746 012746 010600 104415 062706 042704 001411 010446 000002 007236 #“CTERCLS,R3 TRAP 000006 176377 25$: ADD 8IC 8EQ PRINTX 000006 002200 [, [1]Y MOV MOV MOV SP,RO CSPNTX R4 ,R3 TCOCOD(R3 ,R3 ) #TCOASC,R3 R3,-(SP) sGET THE TSSR _CONTENTS sCLEAR ALL BUT TERMINATION sGET THE TERMINATION CODE MEANING sPRINT THE TERMINATION CODE #TCOASC,=(SP) #2,=(SP) SP,RO CSPNTX #~CFATERR,R3 25$ R3 R3 R3 TSFCOD(R3) ,R3 #TFCASC,R3 R3,=(SP) sTSSR _CONTENTS AGAIN sCLEAR ALL BUT FATAL TERMINATION sDON'T PRINT IF ZERO sALINE TERMINATION CODE FOR INDEX cGET THE FATAL TERMINATION CODE sPRINT THE FATAL TERMINATION CODE #TFCASC,-(SP) #2,-(SP) SP,RO CSPNTX #6,SP #°CHIADDR,R4 308 #TEXASC R4 R4 ,~(SP) :CLEAR ALL BUT EXTENDED ADDRESS sDON'T PRINT IF ZERO :PRINT THE EXTENDED ADDRESS BITS #TEXASC,=(SP) #2,~(SP) TRAP 30$: 000001 062706 000207 000004 772 006360 045 116 045 EPRT2: EPRTY1: 783 784 785 786 787 788 789 045 045 045 045 045 045 116 116 116 116 116 116 045 045 045 045 04S 045 TSSRFOR: TEXASC: TCOASC: TFCASC: TSSDEF: AMBTSSR: 006415 006435 006476 006537 006606 006635 MOV BIC MOV PRINTX 012746 010600 771 006360 #6,SP MOV MOV MOV MOV 006537 000002 062706 013703 104415 ADD MOV MOV MOV MoV TRAP ADD MOV 8IC BEQ ASR ASR ASR MoV 177717 SEQ 0042 #2,-(SP) PRINTX 000006 006435 000002 010346 20$: PAGE 22-1 MOV MOV TRAP 006476 000002 012746 012746 010600 104415 25-MAY-82 09:19 ADD MOV EPRTSU R3 MoV R3 -(SP) PRINTX sPRINT MEAASGE BUFFER ADDRESS ¢PRINT PROPER MESSAGE MOV MOV #1.-(SP) ADD RTS #4,SP PC .ASCI2 "INXA eeeeeREPLACE M7196nsnns’ TRAP .EVEN SP,RO CSPNTX ASCIZ LASCIZ ASCIZ ASCIZ LASCIZ ASCIZ sRETURN TO CALLER 'INXA TSSR = 206° 'XNXA ‘XINXA °INXA 'XINXA 'XINXA ] Extended Address Bits = 206" Termination Class Code = IT* Fatal Termlnat1on Class Code = XT° TSSR Bits Set: TSSR (Contents Are Ambiguous’ D — TSV3 - GLOBAL AREAS PRITSSR = PRINT _ TSV3 - GLOBAL AREAS PRITSSR = PRINT 790 006676 791 006716 792 006741 793 794 795 796 797 798 ggg 006767 007011 007031 007113 007162 007206 801 007236 802 007246 803 007302 804 007313 805 007357 806 MACRO M1113 TSSR CONTENTS 25-MAY-82 09:19 PAGE 22-2 006716 116 126 124 106 122 122 125 106 006741 157 145 141 165 145 145 156 141 006767 162 162 160 156 143 143 162 164 38: 4$: 58$: 6%: 7%: 8$: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ LASCIZ 007246 11 122 102 122 007302 156 145 165 145 007313 164 163 163 163 TSFCOD: 1$: 2%: 3%: 4$: .WORD ~ ASCIZ .ASCIZ .ASCIZ .ASCIZ .EVEN TCOCOD: 18: 2$: .WORD .ASCIZ LASCIZ .EVEN 1$,2$,38,48,58,68,78,88 'Normal Termination' 'Termination Condition' ‘'Tape Status Alert’ ‘Function Reject’ . 'Recoverable Error - Tape Position One Record Down' 'Recoverable Error - Tape Was Not Moved' ‘'Unrecoverable Error' ‘Fatal Controller Error’ 1%,2$,3$,48 ‘ ) ‘Internal Diagnostic Failure’ ‘Reserved' ) ‘'Bus Interface or Sanity Check Error' ‘'Reserved’ SEQ 0043 0 — o =~ PRINT 25-MAY-82 09:19 .SBTTL b b b b cd d ) b = O 000 NIV N = To Yo Jo To To. Yo Yo Yo ] 808 809 810 COMMAND PACKET = PRINT THE ADDRESS/CONTENTS OF COMMAND PACKET .INPUT. PRIPKT:: 010005 005737 001001 005003 010301 108: 010400 006100 006101 010446 010146 012746 012746 010600 007554 000003 062706 010300 001404 010401 004737 010004 005001 012402 000010 104414 010246 010146 012746 012746 010600 104414 15%: 017316 20$: 25$%: R& NUMBER OF WORDS IN PACKET HIGH ORDER COMMAND PACKET ADDRESS ADDRESS OF COMMAND PACKET NOTE: R3 IS IGNORED IF THE KTENABLE FLAG IS CLEAR. SAVREG CLR MOV MOV ROL ROL PRINTB MOV MOV MOV MOV MOV TRAP ADD MOV BEQ MOV JSR MoV CLR Mov PRINTB MOV MOV MOV MOV MOV TRAP 007516 000003 000010 ADD INC cMP BLT 000207 oo — RTS — 045 045 RO R3 MOV TST BNE 003134 — [0 Jo T PRIPKT SEQ 0044 THIS ROUTINE PRINTS THE ADDRESS AND CONTENTS OF A COMMAND PACKET, THIS ROUTINE IS NORMALLY ONLY CALLED FROM A PRINT ROUTINE. PNIPON) = 822 823 007370 824 007370 825 007374 826 007376 827 007402 828 007404 829 007406 830 007410 831 007412 832 007414 833 007416 007416 007420 007422 007426 007432 007434 007436 834 007442 835 007444 836 007446 837 007450 838 007454 839 007456 840 007460 841 007462 007462 007464 007466 007472 007476 007500 007502 842 007506 843 007510 844 007512 845 007514 846 847 007516 848 007554 849 850 PAGE 23 —d MACRO M1113 THE ADDRESS/CONTENTS OF 045 045 PKTFRM: PKTADD: -ASCIZ ASCIZ RO,R5 KTENABLE 10$ R3 R3,R1 R4 ,RO RO R1 #PKTADD ,R1,R4 R4 ,~(SP) R1,=(SP) #PKTADD,=(SP) sSAVE THE REGISTERS sSAVE NO. OF WORDS IN PACKET : ABOVE 28K UNDER TEST? ¢BR IF YES sSET HIGH ORDER ADDRESS TO 0 :COPY HIGH ORDER ADDRESS sGET LOWER ADDRESS sSHIFT BIT 15 INTO C BIT cAND INTO HIGH ORDER. sPRINT PACKET ADDRESS #3,-(SP) SP,R0 CSPNTB #10,5P R3,R0 208 R4 ,R1 PC,SETMAP R?,R4 R (R4)+,R2 #PKTFRM,R1,R2 R2,=(SP) R1,-(SP) :GET HIGH ORDER ADDRESS sBR _IF NOT ABOVE 28K. ;GET LOW ORDER ADDRESS sSETUP PARG6 MAPPING FOR 18 BIT ADDRESS <GET _RETURNED PAR6 ADDRESS BIAS :SAVE WORD NUMBER cGET PACKET CONTENTS sPRINT THE DATA OPKTFRH5-(SP) sNEXT WORD NUMBER sDONE ALL PACKET WORDS? LOOP TILL ALL DONE sRETURN *INIA Packet Word #YD1XA = X06° *INXA Packet Address = X01X0S5° €TM TSV3 = GLOBAL AREAS PRIPKT —_— TSV3 = GLOBAL AREAS PRIBXOR -~ PRINT EXPD, _— MACRO M1113 25-MAY-82 09:19 RECV AND XOR BYTE .SBTTL PAGE 24 SEQ 0045 PRIBXOR = PRINT EXPD, RECV AND XOR BYTE 2 :PRINT EXPECTED DATA, RECEIVED DATA, AND XOR OF THE DATA BYTE sTHIS ROUTINE IS NORMALLY CALLED ONLY FOR PRINT ROUTINES. LINPUTS: R1 R2 RECEIVED DATA RO XOR OF EXPECTED DATA OUTPUT: EXPECTED/RECEIVED DATA 9 870 007612 871 007612 872 007616 873 007620 874 007630 875 007634 876 007636 877 007640 878 007642 007642 007644 007646 007650 007654 007660 007662 007664 879 007670 880 007672 881 882 007674 883 884 PRIBXOR:: SAVREG 010203 012700 040001 040002 040003 010346 010146 010246 012746 012746 010600 104414 062706 010300 000207 045 MOV XOR MoV 177400 8IC BIC PRINTB MOV MOV MOV MOV MOV MOV TRAP ADD MOV RTS 007674 000004 000012 116 045 XORBFOR: .EVE R2.R3 R1,R3 #*(<377>,R0 RO,R1 RO,R2 RO,R3 sSAVE THE REGISTERS JEXPECTED DATA JFORM THE EXCLUSIVE OR JBYTE MASK ;SAVE LOW BYTE RECV JSAVE LOW BYTE EXPD :SAVE LOW BYTE XOR #XORBFOR,R2.R1,RS :PRINT THE MESSAGE R3,-(SP) R1,=(SP) R2,=(SP) #XORBFOR, - (SP) #4,~(SP) SP.RO CSPNTB #12,SP R3,R0 PC LASCIZ ;RO HAS XOR ON RETURN *RETURN TO CALLER "XNXA EXPD: X03XA RECV: X03%A XOR: %03’ €Y —t ~— TSV3 = GLOBAL AREAS PRIXOR - PRINT EXPD, MACRO M1113 RECV AND XOR 25-MAY-82 09:19 PAGE 25 SEQ 0046 .SBTTL PRIXOR = PRINT EXPD, RECV AND XOR * 4 :PRINT EXPECTED DATA, RECEIVED DATA, AND XOR OF THE TWO sTHIS ROUTINE IS NORMALLY CALLED ONLY FOR PRINT ROUTINES. INPUTS: R1 R2 EXPECTED DATA RO XOR OF EXPECTED/RECEIVED DATA SAVREG sSAVE THE REGISTERS R2,R3 SEXPECTED DATA R1,R3 sFORM THE EXCLUSIVE OR O§OR§ggR2,R1,R3" ;PRINT THE MESSAGE RECEIVED DATA JOUTPUT: 904 007742 905 007742 906 007746 907 007750 908 007760 007760 007762 PRIXOR:: 007764 007766 007772 007776 010000 010002 909 010006 910 010010 911 912 010012 913 MOV XOR PRINTB [[1)Y] MOV Moy Mov [(1] MOV TRAP ADD MoV RTS 010012 000004 000012 000207 045 116 045 XORFOR: _ASCIZ EVEN R1,-(SP) R2,=~(SP) #XORFOR,=(SP) #6,-(SP) SP,R0 CSPNTB #12,5P R3.RO PC ;RO _HAS XOR ON RETURN RETURN TO CALLER ‘XNYA EXPD: X06%A RECV: X06XA XOR: 206' —— 25-MAY-82 09:19 EQUIVALENT .SBTTL PAGE 26 PRIEQU -4 MACRO M1113 = PRINT BIT NUMBERS AS ASCII SEQ 0047 =~ PRINT BIT NUMBERS AS ASCII EQUIVALENT X :ROUTINE TO CONVERT BIT VALUES TO ASCII AND PRINT THE STRING sTHIS ROUTINE IS NORMALLY CALLED FROM A PRINT ROUTINE L INPUTS: ; : 010060 010060 010064 PRIEQU: 000207 ;4 RO OCTAL VALUE TO CONVERT SAVREG RTS PC .SBTTL PRIRAM R1 TABLE OF PGINTERS TO ASCII EQUIVALENT :SAVE THE REGISTERS *RETURN TO CALLER -~ PRINT RAM ADDRESS :PRINT CONTROLLER RAM ADDRESS. :THIS ROUTINE IS NORMALLY CALLED ONLY FROM PRINT ROUTINES. LINPUTS: : 010066 PRIRAM: SAVREG 045 RAMFOR: blJ sSAVE R1-R5 UNTIL NEXT RETURN #RAMFOR,R4 MOV #RAMFOR,~-(SP) TRAP ADD RTS CSPNTB #6,5P PC .eagbl *XNXA CONTROLLER RAM ADDRESS = X06' .SBTTL PRIADD MOV MOV 000006 RAM ADDRESS PRINT8 MOV 010116 000002 116 Ré R4 ,=-(SP) sPRINT RAM ADDRESS IN ERROR #2,-(SP) SP,RO SRETURN = PRINT MEMORY ERROR ADDRESS *PRINT MEMORY ADDRESS $THIS ROUTINE IS NORMALLY CALLED ONLY FROM PRINT ROUTINES. : IMPLICIT INPUTS ; ; ERRHI ERRLO = HIGH ORDER ADDRESS - LOW ORDER ADDRESS e TSV3 = GLOBAL AREAS PRIEQU - ———— TSV3 = GLOBAL AREAS PRIADD MACRO M1113 - PRINT MEMORY ERROR ADDRESS 966 967 968 010160 969 010160 970 010164 971 010170 972 010174 973 010176 974 010200 975 010202 010202 010204 010206 010212 010216 010220 010222 g;g 010226 978 010230 979 25-MAY-82 09:19 : ‘PRIADD: 013700 013701 010102 006101 006100 010246 010046 012746 012746 010600 104414 062706 000207 045 002236 002240 010230 000003 000010 116 045 PRIAD: s gg% M + SAVREG MOV MOV MOV ROL ROL PRINTB PAGE 26-1 ERRH] RO ERRLO,R1 R1,R2 R1 RO #PR]IAO,RO,R?2 L.ASCIZ .EVEN 'XNXA MEMORY ERROR ADDRESS = 201X0S° .SBTTL PRITADD - PRINT MEMORY TEST ADDRESS 833 c IMPLICIT INPUTS 990 : :RETURN sTHIS ROUTINE IS NORMALLY CALLED ONLY FROM PRINT ROUTINES. 991 992 010316 010322 010324 010326 1002 010332 010332 010334 010340 010344 010346 010350 1003 010354 JSAVE R1=RS UNTIL NEXT RETURN JGET HIGH ADDRESSS JGET LOW ADDRESS ;COPY LOW ADDRESS JSHIFT BIT 15 10 C BIT JSHIFT INTO HIGH ORDER sPRINT MEMORY ADDRESS IN ERROR R2.-(SP) RO,~-(SP) #PRIAQ,=(SP) #3,-(SP) SP,RO CSPNTB #10,SP PC H JPRINT MEMORY ADDRESS 993 994 010274 995 010274 996 010300 997 010304 998 999 1000 1001 010310 010310 010312 SEQ 0048 MOV MOV MOV MOV MOV TRAP ADD RTS 984 985 ggg —¢ —_ . K .= PRITADD: 013702 013701 002236 002240 010146 012746 012746 010600 010356 000002 104414 062706 010246 012746 012746 010600 104414 062706 002207 000006 010421 000002 000006 ERRH] = HIGH ORDER ADDRESS SAVREG MOV MOV MOV JROL :ROL PRINTB MOV MOV ERRH! ,R2 ERRLO.R1 R1,.R2 R1 RO #PRITO,R1 R1,-(SP) #PRITO,=-(SP) ERRLO MOV MOV TRAP ADD PRINTB MOV MOV MOV MOV TRAP ADD RTS - LOW ORDER ADDRESS #2,-(SP) SP,RO CSPNTB #6,SP #PR]IT1,R2 R2,-(SP) #PRIT1,-(SP) #2,-(SP) SP,RO CS$PNTB #6,SP PC sSAVE R1=-RS UNTIL NEXT RETURN :GET HIGH ADDRESSS JGET LOW ADDRESS ;COPY LOW ADDRESS JSHIFT BIT 1S TO C BIT JSHIFT INTO HIGH ORDER JPRINT MEMORY ADDRESS LOW IN ERROR sPRINT MEMORY ADDRESS HIGH IN ERROR :RETURN € — TSV3 = GLOBAL AREAS MACRO M1113 PRITADD = PRINT MEMORY TEST ADDRESS 1004 1005 010356 1006 010421 1007 1008 1009 1010 045 045 116 116 25-MAY-82 09:19 045 045 PRITO: PRITI: ,ASCIZ .éegal PACE 26-2 'XNXA MEMORY TEST ADDRESS LOW = 206’ ‘XNXA MEMORY TEST ADDRESS HIGH = %06’ SEQ 0049 ———— — TSV3 = GLOBAL AREAS SPACE =~ SPACE RECORDS MACRO M1113 25-MAY-82 09:19 (FORWARD AND REVERSE) COMMAND }8}% LSBTTL PAGE 27 SPACE SEQ 0050 = SPACE RECORDS (FORWARD AND REVERSE) COMMAND 1014 101§ 1016 }8}; ;e : JROUTINE TO ISSUE A SPACE RECORDS ;COMMAND (FORWARD OR REVERSE) 1019 1020 1021 1022 1023 1024 :INPUT: . : R3 H : : NUMBER OF RECORDS TO BE SPACED OVER BIT15 CONTROLS DIRECTION BIT15 = 0 IS FORWARD BIT1S = 1 IS REVERSE }852 : RS }8%3 : REQUIRES A WRITE CHARACTERISTICS DONE PREVIOUSLY 1029 1030 1031 1032 1033 1034 }8%2 :OUTPUT: H : CARRY . H : : RO 1037 1038 1039 H JIMPLICIT OUTPUT: H 1042 1043 1044 1045 ;JSIDE EFFECTS: H : i }82(1) : 1046 1047 010466 1048 010466 1049 010472 1050 010500 1051 010506 1052 010510 1053 010512 1054 010516 1055 010520 1058 1059 1060 1061 010536 010542 0°7546 010552 010562 010566 010570 010574 012727 000000 013727 000000 005367 001375 1062 010554 010554 010560 SET - SPACE RECORDS COMMAND OK CLR - SPACE RECORDS FAILED THE CONTENTS OF R4 IS MOVED TO RO TAPE HAS BEEN MOVED SPACE:: 012737 012737 005703 100403 010337 000407 042703 010337 052737 012704 010465 004737 1034<0 1056 010524 1057 010530 FIRST DEVICE UNIBUS ADDRESS 000764 140010 010660 010650 010652 100000 010652 000400 010650 000000 016250 000250 002116 177772 5%: (110650 108: 15$: SAVREG MOV MOV TST 8MI MOV B8R BIC MOV BIS MOV MOV JSR 8(CS DELAY MOV LWORD MOV WORD DEC BNE #500. ,SDELAY #1460010,80% R3 b} § R3,90% 108 #8IT15,R3 R3,90% #8]78,808 #80% R4 R4, TSDB(RS) PC,WAITF 208 250 #250,(PC)+ O LSDLY,(PC)+ O -6(PC) .4 JSAVE THE GENERAL REGISTERS JSET UP DELAY JSET UP COMMAND, SPACE FORWARD JCHECK FOR DIRECTION :BR, IF REVERSE INDICATED JLOAD UP NUMBER OF RECORDS TO SPACE ;G0 DO COMMAND JCLEAR DIRECTION BIT JLOAD UP NUMBER OF RECORDS TO SPACE sSET REVERSE BIT IN COMMAND PACKET JSET UP R4 WITH PACKET ADDRESS sSEND OUT COMMAND JWAIT FOR SSR :BR, IF SSR IS SET AND OK ;DELAY ABOUT .25 SECONDS Y =4 P 010576 010602 63 010604 1070 010630 1071 010632 1072 010634 1073 010636 1074 010640 1075 010640 1076 010642 005367 001367 005337 001356 000411 016507 012792 025201 201401 000402 000261 090401 000241 010400 000207 177756 010660 000002 000200 20$: 25$: 40$: 60s$: : 708 S£Q 0051 DEC BNE DEC BNE B8R MOV MOV CMP 8EQ B8R SEC BR cLC =22(PC) .=20 SDELAY 15$ 608 TSSR(RS) ,R1 #SSR,R2 R2,R1 408 608 708 ;SET CARRY NO TROUBLE JEXIT ;CARRY CLEAR = ERROR MOV RTS R4 ,RO PC sPASS PACKET ADDRESS SRETURN ;BUMP DELAY COUNTER DOWN ;BR, IF MORE DELAY :BR IF TROUBLE CARRY = (CLEAR JREAD TSSR JSET UP EXPECTED JARE THEY 0K JBR, IF EQUAL = 0K sTROUBLE EXIT ] i TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 PAGE 27-1 ’ SPACE =~ SPACE RECORDS (FORWARD AND REVERSE) COMMAND —————— TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 PAGE 26 =~ SPACE RECORDS (FORWARD AND REVERSE) COMMAND 0 SPACE 1078 1079 1080 1 1088 1089 1090 1091 1092 1093 1094 SEQ 0052 *PACKET FOR SPACE COMMAND 010650 ’ .=<.+1058177770 010650 000000 010652 010654 010656 010660 000000 000000 000000 000000 80%: .WORD :NUMBER OF RECORDS TO BE SPACED OVER WORD 90$: .WORD *COMMAND WORD SDELAY: .WORD .WORD .WORD .EVEN 0 ;DELAY COUNTER =~ WRITE MACRO M1113 25-MAY-82 09:19 CHARACTERISTICS COMMAND }839 .SBTTL PAGE 29 WRTCHR SEQ 0053 = WRITE CHARACTERISTICS COMMAND 1098 1099 1100 s+ H sROUTINE TO ISSUE A WRITE CHARACTERISTICS 1103 1104 1105 1106 JINPUT: . : R4 : RS ADDRESS OF PACKET FROM TEST FIRST DEVICE UN]BUS ADDRESS 1109 1110 1M 1112 JOUTPUT: . : RO : CARRY TSSR CONTENTS SET = WRITE CHARACTERISTICS COMMAND OK }}}2 JIMPLICIT QUTPUT: 1117 1118 1119 : : : 1122 1123 1124 1125 1126 1127 1128 010662 1129 010662 1130 010666 1131 010672 1132 010676 1133 010702 1136 010706 1135 010710 H ;SIDE EFFECTS: : : - 005037 005037 010465 004737 103401 000435 002230 002226 000000 016336 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 010716 010722 010726 010730 010734 010736 010740 010742 010746 010750 010756 012702 032701 001402 052702 020207 001401 000421 062704 011403 032763 001402 000200 000100 005237 002226 1150 010764 1151 010772 1152 010774 032763 001402 005237 000100 }}8} sCOMMAND SO THAT OTHER COMMANDS WILL BE ACCEPTED }}8; : }}}2 REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY : }}g? : 1136 010712 }}zg 8;8;22 WRTCHR:: 016501 10%: 000002 208 : 000100 25%: 000010 000200 002230 408: 000012 458 000012 CLR = WRITE CHARACTERISTICS FAILED MESSAGE BUFFER AND OTHER BUFFERS ALL SET UP SOF TWARE SWITCHES SET AS FOLLOWS: EXTFEA = EXTENDED FEATURES PRESENT BENBSW = BUFFER ENABLE SWITCH ON OR OFF SAVREG CLR CLR MOV JSR BCS BR BENBSW EXTFEA R4 ,TSDB(RS) PC,CHKTSSR 208 60$ MOV BIT BEQ BIS CMP 8EQ BR ADD MOV BIT BEQ #SSR,R2 #OFL,R1 25$% #OFL ,R2 R2.R1 408 60$ #8. R4 (R4) ,R3 #X2.EXTF ,XST2(R3) 45% EXTFEA JSET EXTENDED FEATURES SW SWITCH BIT BEQ INC #X2.BUFE,XST2(R3) 50$ BENBSW ;BUFFER ENABLE SWITCH SET :BR, IF SWITCH NOT SET ;SET SOFTWARE SWITCH FOR ENABLED MOV INC TSSR(RS) ,R1 :SAVE THE GENERAL REGISTERS sCLEAR BUFFER ENABLE SWITCH :CLEAR EXTENDED FEATURES SW SWITCH JSEND OUT COMMAND ;WAIT FOR SSR JBR, IF SSR IS SET AND OK ;BR IF TROUBLE CARRY = CLEAR JREAD TSSR :SET UP EXPECTED sWAS OFF LINE SET IN TSSR :BR, IF NO OFL SET MAKE THEM LOOK ALIKE :ARE THEY 0K ;BR, IF EQUAL = 0K :TROUBLE EXIT sPOINT TO WRT CHARA DATA PACKET :GET ADDRESS OF MESSAGE BUFFER SEXTENDED FEATURES BIT SET? :BR IF NO g BV TSV3 ~ GLOBAL AREAS WRTCHR TSV3 = GLOBAL AREAS WRTCHR =~ WRITE 1153 011000 1154 011000 1155 011002 1156 011004 1157 011006 }}gg 011012 1160 MACRO M1113 25-MAY-82 09:19 CHARACTERISTICS COMMAND 000261 000401 000241 016500 000207 508: 000002 608: 708: SEC BR cLC MOV RTS PAGE 29-1 70% TSSR(RS) ,RO PC SEQ 0054 sSET _CARRY NO TROUBLE JEXIT sCARRY CLEAR = ERROR sRETURN TSSR CONTENTS sRETURN — TSV3 - GLOBAL AREAS =~ POSITION TAPE MACRO M1113 (REWIND) ) b ed ) wd end wd wch D e D D d nd b b ) e cd D d ed b D ) wd D d d d NNNNNNNNNYNNOOrOOOOO O NO35“'\)-‘00@\10\05“'\)—‘000NOU\#WN—'OO@VO‘V\#WN REWIND = POSITION TAPE (REWIND) COMMAND TR T *THIS ROUTINE WILL REWIND THE SELECTED TAPE. CAUTION: THE ROUTINE DOES NOT WAIT FOR BOT TO ARRIVE. ALSO THE CALLER MUST CHECK FOR IN THE TSSR CALLING SEQUENCE: DO A SOFT INIT DO A WRITE CHARACTERISTICS JSR PC,REWIND R RR AT SSR TO SET INPUT: P T P N N e D D wd el d D D e RS FIRST DEVICE UNIBUS ADDRESS RO THE CONTENTS OF R4 1S PASSED TO RO SAVREG MOV MOV MOV JSR 8(s DELAY MOV MWORD MOV WORD DEC BNE DEC BNE #RWPACK R4 R4, TSDB(RS) #360. ,R3 PC,WAITF 208 250. #250.,(PC)+ O LSDLY, (PC)+ O -6(PC) .4 =22(PC) .~20 N T b ol b e wmd d wnd e ) ) b ) ) i el b OV VOOV OOV VOO0 REWIND SEQ 0055 N4 b - LR T P T T OUTPUT b b b b b b - ad and and cud ad —b e ad e cmd cd PAGE 30 .SBTTL 011014 011014 011020 011024 011030 011034 011040 011042 011042 011046 011050 011054 011056 011062 011064 011070 1198 011072 1199 011074 1200 011076 1201 011100 1202 011102 1203 1204 1206 1208 011110 1209 011110 }5}? 011112 1212 25-MAY-82 09:19 COMMAND EWIND:: 012704 010465 012703 004737 103417 011110 000000 000550 016250 012727 000000 013727 000000 005367 001375 005367 001367 000372 005303 001357 000241 010400 000207 011110 102010 000000 108 : 002116 177772 177756 20%: RWPA(CK: DEC BNE CLC MOV RTS R3 108 R4 RO PC JSAVE R1-RS UNTIL NEXT RETURN sGET PACKET ADDRESS JSEND PACKET ADDRESS TO EXECUTE ;ENOUGH TIME FOR 2400° REEL TO REWIND JWAIT FOR SSR TO SET sLEAVE WHEN SSR IS SET JWAIT FOR .25 SECONDS ;BUMP COUNTER DOWN :KEEP GOING JCLEAR CARRY TO SET ERROR ;PASS THE PACKET ADDRESS :RETURN =<, +10>8177770 .WORD WORD 102010 O sPOSTION COMMAND (REWIND) sNOT USED TSV3 = GLOBAL AREAS W 21 21 21 <~ POSITION TAPE v — d b REWIND MACRO M1113 (REWIND) 25-MAY-8?2 09:19 COMMAND PAGE 30-1 SEQ 0056 r TSV3 -~ GLOBAL AREAS MACRO M1113 CKRAM -~ COMPARE RAM TO 1/0 PACKET 25-MAY-82 09:19 -— 1217 .SBTTL 1218 1219 PAGE 31 (KRAM SEQ 0057 - COMPARE RAM TO I1/0 PACKET ot 1220 1221 : ROUTINE TO READ THE FIRST 8 BYTES FROM RAM 12264 JINPUT: }%S% sMEMORY AND COMPARE THIS DATA TO A COMMAND PACKET. 1225 . }gsg : 1229 1230 1231 :OUTPUT: H : CARRY }ggg JIMPLICIT QUTPUT: 1236 1237 : : }%2? ;SIDE EFFECTS: }%2% : 1244 1245 1246 011114 1247 011114 1248 011120 1249 011124 1250 011130 1251 011132 1252 011136 1253 011144 1254 011150 1255 011154 1256 011160 1257 011164 1258 011166 1259 011170 1260 011172 1261 011174 1262 011200 := 1226 : }Sg% : }5%8 1263 011202 1264 0112046 1265 011206 1266 011210 1267 011212 1268 011214 }ggg 011222 Ré RS : CKRAM:: 012701 012702 005003 004737 112765 004737 010265 004737 116511 122124 001401 005203 005202 020227 003761 005703 001402 000241 000401 000261 012737 000207 002242 000201 016336 000000 016336 000000 016336 000000 000000 208: 000210 000010 108 : 002302 308 : 50$: ADDRESS OF THE COMMAND PACKET FIRST DEVICE UNIBUS ADDRESS SET = RAM MATCHES PACKET CLR = RAM DOES NOT MATCH PACKET THE TABLE RAMDATA IS FILLED WITH THE DATA HELD IN RAM, RAMSIZ 1S SET TO 8. FOR PRAMPKT ROUTINE THE SUBSYSTEM IS LEFT IN MAINTENANCE MODE SAVREG MoV MOV CLR JSR MOVB JSR MOV JSR MOVB CMPB BEQ INC INC CMP BLE TST BEQ CLC BR SEC MOV RTS #RAMDATA ,R1 #RMPKTBEG,R2 R3 PC,CHKTSSR #0,TSDB(RS) PC,CHKTSSR R2.,TSDB(RS) PC,CHKTSSR TSBA(RS), (R1) (R1)+,(R4)+ 208 R3 R2 R2,#RMPKTEND 108 R3 30% 508 #8. ,RAMS]2 PC sSAVE THE GENERAL REGISTERS sADDRESS TO SAVE THE RAM DATA ;BYTE ADDRESS OF FIRS: RAM DATA sCLEAR THE ERROR FLAG :WAIT FOR SSR JSET MAINTENANCE MODE :WAIT FOR SSR TO SE~ JSELECT NEXT RAM ADDRESS JWAIT FOR SSR TO SET JREAD THE RAM DATA ;COMPARE TO EXPECTED :BRANCH IF 0K ;SET ERROR FLAG :ADDRESS OF NEXT RAM LOCATION REACHED END YET ? JBRANCH TILL ALL READ :WAS AN ERROR FOUND ? ;BRANCH IF NOT JCLEAR CARRY TO SHOW ERROR JAND EXIT ;SHOW GOOD COMPARE :SETUP RAMSIZ FOR PRAMPKT ROUTINE :RETURN ~ TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CKRAM2 ~ COMPARE RAM TO 1/0 CHARACTERISTICS DATA }5;% .SBTTL PAGE 32 C(KRAM2 SEQ 0058 = COMPARE RAM TO ]/0 CHARACTERISTICS DATA ;0 1274 1275 }%;g : sROUTINE TO READ THE FIRST 8 OR 10 BYTES FROM RAM 1278 1279 1280 }ggg :INPUT: : H Ré : RS 1283 1284 1285 ;OUTPUT: H ; CARRY }%gg JIMPLICIT OUTPUT: 1290 1291 : : sMEMORY AND COMPARE THIS DATA TO A CHARACTERISTICS DATA BLOCK. }%gg : }%3% : 1294 FIRST DEVICE UNIBUS ADDRESS SET = RAM MATCHES PACKET CLR =~ RAM DOES NOT MATCH PACKET THE TABLE RAMDATA IS FILLED WITH THE DATA HELD IN RAM. RAMSIZ IS SET T0O 8. OR 10. FOR PRAMPKT ROUTINE :SIDE EFFECTS: 1‘)95 : 1536 : 1298 1299 1300 011224 1301 011224 .= 1302 1303 1304 1305 ADDRESS OF THE CHARACTERISTICS DATA CKRAM?:: 011230 011234 011240 011242 012701 012702 005003 004737 1307 011254 1308 011260 1309 011264 1310 011270 1311 011274 1312 011276 1313 011300 1314 011302 1315 0113046 1316 011312 1317 011316 1318 011320 1319 011326 1320 011332 1321 011334 004737 010265 004737 116511 122124 001401 005203 005202 012737 005737 001407 012737 020227 003750 000403 1306 011246 1322 011336 1323 011342 1324 011344 1325 011346 1326 011350 1327 011352 1328 011354 THE SUBSYSTEM IS LEFT IN MAINTENANCE MODE 112765 020227 003744 005703 001402 000241 000401 000261 SAVREG MOV MOV CLR JSR 002242 000167 016336 000000 000000 000010 002226 002302 000012 000200 002302 016336 000000 016336 000000 000176 108: 20$: 25¢%: 27$: 30$: MOvV8 JSR MOV JSR MOVB cMPB BEQ INC INC MOV TST BEQ MOV CMP BLE BR CMP BLE TST BEQ cLe B8R SEC #RAMDATA ,R1 #RMCHBEG,R2 R3 PC,CHKTSSR ;SAVE THE GENERAL REGISTERS ;ADDRESS TO SAVE THE RAM DATA ;BYTE ADDRESS OF FIRST RAM DATA ;CLEAR THE ERROR FLAG :WAIT FOR SSR PC,CHKTSSR R2.TSDB(RS) PC,CHKTSSR TSBA(RS), (R1) (R1)+,(R4)+ 208 R3 R2 #8. .RAMSI2 EXTFEA 25$ #10. ,RAMSI2 R2 ,#RMCHEND 108 27% :WAIT FOR SSR TO SET JSELECT NEXT RAM ADDRESS WAIT FOR SSR TO SET READ THE RAM DATA :COMPARE TO EXPECTED :BRANCH IF 0K :SET ERROR FLAG :ADDRESS OF NEXT RAM LOCATION ;ASSUME EXTFEA NOT SET ;1S THE SOFTWARE EXTENDED FEATURES SET :BR, IF NOT SET JSET RAMSIZ FOR EXTEND FEATURES ;AT END OF EXTENDED BUFFER JBR, IF NOT AT END YET ;AT END BRANCH #0,TSDB(RS) RZ,#RMCHEND-2 108 R3 308 50¢ 2SET MAINTENANCE MODE JREACHED END YET ? JBRANCH TILL ALL READ :WAS AN ERROR FOUND ? :BRANCH IF NOT :CLEAR CARRY TO SHOW ERROR JAND EXIT :SHOW GOOD COMPARE }%%g 011356 060207 508: RTS PAGE 32-1 PC po—y TSV3 =~ GLOBAL AREAS MACRO M1113 25-MAY-82 (09:19 CKRAM2 - COMFARE RAM TO 1/0 CHARACTERISTICS DATA SEQ 0059 JRETURN m———— TSV3 - GLOBAL AREAS CKMSG MACRO M1113 25-MAY-82 09:19 =~ COMPARE WRITE C: AR. MESSAGE BUFFERS }g%g PAGE 33 .SBTTL CKMSG SEQ 0060 =~ COMPARE WRITE CHAR. MESSAGE BUFFERS :0 1334 1335 1336 1337 1338 }gzg H ;ROUTINE TO COMPARE A WRITE CHARACTERISTICS EXPD AND RECV ;BUFFER, THE EXPECTED AND RECEIVED BUFFERS ARE STORED FOR :ERROR PRINT ROUTINES. : S INPUT: 1341 1342 1343 : : : RO R1 R2 RECV MESSAGE BUFFER HIGH ORDER ADDRESS RECY MESSAGE BUFFER LOW ORDER ADDRESS EXPD MESSAGE BUFFER ADDRESS 1346 : CARRY SET = MESSAGE BUFFERS MATCH }%ég JIMPLICIT OUTPUT: 1351 1352 1353 ; : : 1356 1357 011360 1358 011360 1359 011364 1360 011370 1361 011374 1362 011400 1363 011402 .= CKMSG: : }gfig ;OUTPUT: }gzg : }ggg : 1364 011406 010037 010137 005737 001403 004737 010001 1366 011412 1367 011414 005003 010205 1365 011410 011264 1370 011426 022221 1371 1372 1373 1374 011430 011432 011436 011440 017316 005004 1368 011416 1369 011422 002304 002306 003134 011164 001401 005203 062704 020427 108 : 002322 002466 15%: CLR -MESSAGE BUFFERS DON'T MATCH EXPMSG RECMSG RCVHIADD BUFFER 1S SET TO EXPD DATA BUFFER IS SET TO RECV DATA SET TO HIGH ORDER ADDRESS OF RECV RCVLOADD SET TO LOW ORDER ADDRESS OF RECV SAVREG MOV MOV ST BEQ JSR MOV RO,RCVHIADD R1.RCVLOAD KTENABLE 108 PC,SETMAP RO,R1 CLR MOV R3 R2,RS *CLEAR ERROR SEEN FLAG :GET EXPD BUFFER ADDRESS (R1) ,RECMSG(R4) :SAVE RECV FOR ERROR REPORT CLR MOV MoV CMP R4 :SAVE R1-RS UNTIL NEXT RETURN :SAVE RECV HIGH ADDRESS :SAVE RECV LOW ADDRESS ;TESTING ABOVE 28K? :BR IF NO ;RETURN ADDRESS BIASED TO PAR6 IN RO ;GET RETURNED ADDRESS BIASED ;0 PAR6 :WORD IN BUFFER (R2) ,EXPMSG(R4) :SAVE EXPD FOR ERROR REPORT (R2)+, (R1) ¢+ SEXPD EQUAL RECV? 1376 011446 032765 000200 000012 BEQ INC ADD CMP 25$ R3 #2.R4 R . #14 BIT oxz EXTF, xer(Rsi;1S EXTENDED FEATURES SET IN EXPD? 1378 011456 1379 011462 CMP BLE RG .16 15$ 1375 011444 1377 011454 1380 1381 1382 1383 1384 0114646 011466 011470 011472 011474 }ggg 011476 003764 001403 020427 003755 005703 001402 000241 000401 000261 000207 006002 000014 25$: BLE 8EQ 000016 50$: 55¢60$: ST 8EQ cLe BR SEC RTS 15§ :BR IF YES :SET ERROR SEEN FLAG sPOINT TO NEXT WORD ADDRESS DONE FIRST 7 WORDS? R IF NO S0$ ;BR IF NO R3 558 ANY eanons SEEN? 8R IF NO :SET FAILURE 60$ PC *DONE Exrenoso FEATURES WORD? en If ssr SUCCESS :RETURN — TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CKMSG2 =~ COMPARE EXPD RECV MESSAGE BUFFERS }ggg PAGE 34 .SBTTL (KMSG2 SEQ 0061 = COMPARE EXPD RECV MESSAGE BUFFERS ;0 1390 1391 1392 1393 1394 : ‘ROUTINE TO COMPARE AN EXPECTED AND RECEIVED MESSAGE ;BUFFER. THE EXPECTED AND RECEIVED BUFFERS ARE STORED FOR :ERROR PRINT ROUTINES. : }ggg S INPUT: 1397 1398 1399 ; : ; }28? : RO R1 R2 RECV MESSAGE BUFFER HIGH ORDER ADDRESS RECV MESSAGE BUFFER LOW ORDER ADDRESS EXPD MESSAGE BUFFER ADDRESS R3 NUMBER OF BYTES TO COMPARE 1402 1403 1404 SOUTPUT: : ; CARRY }28; :IMPLICIT OUTPUT: 1409 1410 ; ; EXPMSG RECMSG BUFFER IS SET TO EXPD DATA BUFFER IS SET TO RECV DATA : ; RCVHIADD RCVLOADD SET TO HIGH ORDER ADDRESS OF RECV SET TO LOW ORDER ADDRESS OF RECV }282 SET =~ MESSAGE BUFFERS MATCH ; 011500 011500 011506 011510 011512 ERMSG2:: 020327 000144 012703 000144 012746 012746 010600 011632 000001 003412 011516 011516 011522 011526 011530 011532 011536 011542 011546 011552 011554 011560 011562 011564 011566 011572 011576 011600 011602 011 011 104417 062706 010037 010137 005737 001403 004737 010001 005004 005005 111264 111164 122221 001401 005205 062704 020403 011 000764 011 011 011 000004 002304 002306 003134 MOV 5% 017316 108: 002322 002466 158: 000001 258: 002001 005705 001402 SAVREG CMP BLE 508 : CLR = MESSAGE BUFFERS DON'T MATCH ;SAVE R1=RS UNTIL NEXT RETURN R3,#RECMSG-EXPMSG;@aD IS COUNT ABOVE MAX ALLOWED? 58 -3aD BR IF NO #REC SG-EXPMSG,R3:aaD PRINTF #DEBUGMSG MOV #DEBUGMSG, = (SP) MOV #1,-(SP) MOV SP RO TRAP CSPNTF ADD #4,SP MOV RO.RCVHIADD MOV R1.RCVLOAD ST KTENABLE BEQ 10$ JSR PC,SETMAP MOV RO,R1 CLR R4 CLR RS MOVB (R2),EXPMSG(R4) MOVB (R1) ,RECMSG(R4) CMPB (R2)+, (R1)+ BEQ 258 INC RS ADD #1,R4 CMP R4 .R3 :WORD IN BUFFER :CLEAR ERROR SEEN FLAG :SAVE EXPD FOR ERROR REPORT :SAVE RECV FOR ERROR REPORT *EXPD EQUAL RECV? “BR IF YES sSET ERROR SEEN FLAG sPOINT TO NEXT BYTE oons ALL BYTES? 8R 158 oo NEXT BYTE 558 ‘BR IF NO BGE 50$ ST RS BEQ :3aD ;SAVE RECV HIGH ADDRESS *SAVE RECV LOW ADDRESS STESTING ABOVE 28K? *BR IF NO ;RETURN ADDRESS BIASED TO PARG IN RO ;GET RETURNED ADDRESS BIASED TO PARG R IF YES “ANY ERRORS SEEN? TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CKMSG2 ~ COMPARE EXPD RECV MESSAGE BUFFERS 1440 011622 1441 011626 000241 CLC 000401 1442 011626 }222 011630 000261 000207 1445 011632 1446 011722 1447 011733 1448 011766 }zgg 012021 120 045 040 056 124 55¢8: 60$: 122 116 040 056 105 117 045 126 056 123 BR SEC RTS DEBUGMSG: FERCM: ASCII ERCM: ASCIZ SIMSG: .ASCIZ TINERR: .esgal PAGE 34-1 SEQ 0062 608 PC sSET FAILURE *SET SUCCESS *RETURN 'PROGRAM INTERNAL ERROR =CKMSG2 MESSAGE BUFFER EXCEEDED-';aaD .ASCIZ 217, /INXA / TSSR_ERROR CODE REC'D = / /... . AFTER DOING SOFT INIT/ /TEST: I.‘/ O NI N SEQ 0063 *PRINT ROUTINE TO FATAL SOFT INIT ERRORS LINPUT: : R1 ‘SIDE EFFECTS: 1463 : 1468 012034 012034 1469 012034 1470 012040 1471 012044 1472 1473 14674 1475 1476 1477 1478 1479 1480 1481 PAGE 35 4 N =2 O O 00 — d b ed d d b b b b - Ll 2k 2k aE 2k 2k 2 X H [o .%o Yo VALV, IV, TV IV, IV, TV ] [¥a) TSV3 =~ GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CKMSG2 ~ COMPARE EXPD RECV MESSAGE BUFFERS 012044 012044 004737 004737 006024 017202 SFIMSG:: L10003: 104423 CONISNTS OF TSSR AT ERROR EXECUTES DROP UNIT TO CEASE TESTING BGNMSG SFIMSG JSR JSR ENDMSG PC.PRITSSR PC . CKDROP TRAP (SMSG :PRINT CONTENTS OF TSSR REGISTER *DROP UNIT, IF ALLOWED .t sPRINT ROUTINE TO PRINT THE CONTENTS Of sTSSR AND A COMMAND PACKET OTHER THAN GET STATUS COMMAND PACKET. LINPUTS: 1484 012046 004737 012700 004737 012062 104423 006024 000004 007370 PKTSSR:: L10004: R1 R4 TSSR CONTENTS ADDRESS OF COMMAND PACKET BGNMSG PKTSSR JSR MOV PC,PRITSSR #6 R0 TRAP CSMSG JSR ENDMSG PC,PRIPKT sPRINT THE CONTENTS OF TSSR REGISTER ;NO. OF WORDS IN PACKET JPRINT THE CONTENTS OF COMMAND PACKET 14 sPRINT ROUTINE TO PRINT THE CONTENTS OF sTSSR AND A GET STATUS COMMAND PACKET. INPUTS: 1501 012064 012064 R1 R4 TSSR_CONTENTS ADDRESS OF COMMAND PACKET BGNMSG PKTGETS PKTGETS:: TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CKMSG2 = COMPARE EXPD RECV MESSAGE BUFFERS 1502 1503 1504 1505 012064 012070 012074 012100 012100 012100 1506 1507 1508 1509 1510 151 1512 1513 1514 1515 1516 1517 012102 AN RORORORORORO RO JSR L10005: 104423 PC,PRITSSR MOV #2,R0 TRAP CEMSG JSR ENDMSG SEQ 0064 PC,PRIPKT sPRINT THE CONTENTS OF TSSR REGISTER sPRINT COMMAND PACKET ;NO. OF WORDS IN GET STATUS PACKET THE CONTENTS OF X ¢PRINT TSSR ERRORS FOR INITIALIZATION TESTS LINPUTS: 004737 006024 SFFMSG:: L10006: 106423 R1 Ré4 TSSR_CONTENTS ADDRESS OF COMMAND PACKET BGNMSG SFFMSG JSR ENDMSG PC,PRITSSR TRAP CSMSG .SBTTL PKTMES sPRINT CONTENTS OF TSSR REGISTER = PRINT TSSR AND MESSAGE BUFFER :PRINT ROUTINE TO PRINT THE CONTENTS OF TSSR AND MESSAGE sBUFFER FOR ERROR REPORTS : INPUTS: b i b o Guur Prur-GuurSuer o e b d e od b ur Gy QoG NONININ) b b b b b S BOOSNO00 H [pS LS NT N1 NT N O 1,N1,8] 1541 006024 000002 007370 . j=l=lelelelolelela) A W WV WN—=OVONOWNSWN=O NO® RS WWW OV b ed D oD nd h b md =D b o’ b b b b D b 012102 1518 012102 1519 012106 012106 012106 004737 012700 004737 PAGE 35-1 004737 010200 010301 004737 104423 006024 PKTMES:: 014242 L10007: R1 R2 CONTENTS OF TSSR LOW ORDER MESSAGE BUFFER BGNMSG PKTMES JSR MOV MOV PC,PRITSSR JSR ENDMSG PC.PRMESS TRAP CSMSG R3 HIGH ORDER MESSAGE BUFFER ADDRESS NOTE: R3 IS IGNORED IF KTENABLE FLAG IS CLEAR R2.R0 R3.R1 sPRINT CONTENTS OF ;LOW ORDER ADDRESS sHIGH ORDER ADDRESS TSSR ;PRINT THE MESSAGFE BUFFER o — — TSV3 = GLOBAL AREAS ADDSSR = PRINT MACRO M1113 TEST ADDRESS AND TSSR 25-MAY-82 09:19 .t .SBTIL PAGE 36 ADDSSR SEQ 0065 = PRINT TEST ADDRESS AND TSSR s INPUTS: : : b el el e b b b 58BN NN ONONO —bd b b b il b b el — NN (=l=lelelalelel=] ; 004737 016501 004737 010274 000002 006024 : ADDSSR: L10010: 106423 4 RS ERRHI ERRLO FIRST DEVICE UNIBUS ADDRESS ~ HIGH ORDER MEMORY TEST ADDRESS LOW ORDER MEMORY TEST ADDRESS BGNMSG ADDSSR JSR Mov JSR PC,PRITADD TSSR(RS) ,R1 PC,PRITSSR TRAP CSMSG .SBTTL MSGEXP = PRINT WRITE CHAR. EXPD-RECV MESSAGE BUFFERS ENDMSG sPRINT MEMORY TEST ADDRESS ¢GET CURRENT TSSR sPRINT THE CONTENTS OF TSSR REGISTER *PRINT ROUTINE TO PRINT WRITE CHARACTERISTIC MESSAGE BUFFER SIMPLICIT INPUTS: ; b cmd cad b b cnd b cd b b b b wud b wnld cud aud and e —b NN oM SN o ; ; ; (elelelelelelelelela) VS WN=OY VOONOY b b e b ed e b b and b VIVALWAWVY . VAvauaiviaiawn [V IV, IV TV I, IV TV TV TV IV 3 b sPRINT ROUTINE TO PRINT THE CONTENTS OF sTSSR AND A MEMORY TEST ADDRESS 012700 005737 001402 012700 004737 104423 000007 002226 000010 014552 MSGEXP:: EXPMSG - EXPECTED MESSAGE BUFFER RECMSG - RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS BGNMSG MSGEXP MOV #7 ,R0 8EQ 5% TST 5%: L10011: EXTFEA MOV #8. R0 TRAP CSMSG JSR ENDMSG PC.,PRMSGEXP sASSUME NO EXT FEATURES cEXT FEATURES SET? sBR _IF NO SEXT FEATURE BUFFER IS 8 WORDS sPRINT EXPD/RECV MESSAGE BUFFERS TSV3 = GLOBAL AREAS FIFEXP MACRO M1113 <~ PRINT FIFO EXP/RECV DATA 25-MAY-82 09:19 1584 .SBTTL 138 PAGE 37 FIFEXP SEQ 0066 = PRINT FIFO EXP/RECV DATA }ggg sPRINT ROUTINE TO PRINT FIFO EXP/RECV DATA 1589 1590 : : R1 1593 : EXPMSG =~ EXPECTED MESSAGE BUFFER (CONTAINS FIFO DATA ONLY BGNMSG FIFEXP PRINTX MOV MoV #FIFIMSG,R1 R1,-(SP) #FIFIMSG,~(SP) ;PRINT BYTES TRANSFERRED #FIF2MSG ;PRINT HEADER MSG }gg} :IMPLICIT INPUTS: }ggg : 1596 012170 012170 1597 012170 012170 012172 012176 012202 012204 012206 010146 012746 012746 010600 106415 062706 012212 012216 012222 0122246 012226 1599 012232 012746 012746 010600 106415 062706 010100 1598 012212 1600 012234 1601 012240 012240 012240 1602 012242 1603 012311 1604 1605 = BYTE COUNT FIFEXP:: 004737 104423 045 045 012242 000002 MOV MOV TRAP ADD 000006 PRINTX 012311 000001 MOV MOV MOV TRAP ADD MOV 000004 015122 JSR L10012: 116 116 RECMSG 045 045 FIFIMSG: FIF2MSG: ENDMSG TRAP .EVEN = RECEJ'ED MESSAGE BUFFER (CONTAINS FIFO DATA ONLY) #2,-(SP) SP,RO CSPNTX #6,SP #FIF2MSG,=(SP) #,-(SP) SP,RO CSPNTX #6,SP R1.RO PC,PRBYTEXP CSMSG ASCIZ LASCIZ JGET BYTE COUNT sPRINT FIFO BYTES IN ERROR °*XNXA NUMBER OF BYTES TRANSFERRED = %u2° "INXA FIFO DATA BYTUS IN ERROR:' TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 MSGSTAT ~ PRINT STATUS HEADER AND MESSAGE BUFFERS }ggg .SBTTL PAGE 38 SEQ 0067 MSGSTAT = PRINT STATUS HEADER AND MESSAGE BUFFERS ;0 1609 }g}? : JPRINT ROUTINE TO PRINT MESSAGE BUFFER EXPD/RECV 1612 : }g}z JIMPLICIT INPUTS: 1615 1616 1617 : . : 1620 012350 012350 1621 012350 1622 012354 1623 012356 012701 012100 001410 BGNMSG MSGSTAT:: MOV 10$: MOV BEQ 012360 012362 012366 012370 012372 1625 012376 010046 012746 010600 104415 062706 000766 }g}g : 1624 012360 1626 012400 1627 012404 1628 012410 012410 012700 004737 1629 0126410 104423 1630 012412 1631 012430 1632 012472 1633 012563 1634 012654 1635 012745 1636 013007 012430 045 045 045 045 045 045 1637 012412 EXPMSG <~ EXPECTED MESSAGE BUFFER RECMSG <~ RECEIVED MESSAGE BUFFER RCVH]ADD~ RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD~ RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS PRINTX 000001 000004 000012 014552 208: L10013: 012472 116 116 116 116 116 116 012563 045 045 045 045 045 045 MSGSTAT #STATCOD ,R1 (R1)+,R0 208 RO JASCI1 ADDRESS TABLE ;DONE ALL MSG LINES? :BR IF YES JPRINT STATUS BIT NAMES #10.,R0 PC,PRMSGEXP ;DO ANOTHER MSG LINE JNUMBER OF WORDS IN A READ STATUS BUFFER JPRINT EXPD/RECV MESSAGE BUFFERS MOV MOV MOV TRAP ADD BR RO,-(SP) #1,-(SP) SP,R0 CSPNTX #6,SP 108 TRAP C$MSG MOV JSR ENDMSG STATCOD: 18:.ASCIZ 28:.ASCIZ 38:.ASCIZ 4$:.ASCIZ 5%:.ASCIZ 6$:.ASCIZ .WORD 18,2%,3$,4%,5%,68.,0 °'INXA Tape Bus Signals in Word #8:° 'INXA PARERR<1S5> [EOT <12> IFMK <9> [RDY<6> 'INXA IRESV2<14> [IDENT<11> [IHER <8> JONL<S> 'INXA IRESV1<13> ICER <10> [ISPEED<7> ILDP<4> ‘INXA Tape Bus Signals in Word #9:° 'INZA DATMIS<7> ILW<6> OUTRDY<S> INRDY<4>® -EVEN 1638 1639 1640 }gfi} .SBTTL MSGLOOP - PRINT LOOPBACK HEADER AND MESSAGE BUFFERS ;# 1643 : }gzg JIMPLICIT INPUTS: 1648 1649 1650 : : : 1653 013064 BGNMSG MSGLOOP:: MoV }gzg JPRINT ROUTINE TO PRINT MESSAGE BUFFER EXPD/RECV }225 013064 1654 013064 . 012701 013126 EXPMSG <~ EXPECTED MESSAGE BUFFER RECMSG - RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD~- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS MSGLOOP #LOOPCOD,R1 sASCI1 ADDRESS TABLE JRWD<2>* IFBY<I>® [IFPT<0>’ TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 MSGLOOP = PRINT LOOPBACK HEADER AND MESSAGE BUFFERS 1660 013120 1661 013124 013124 013124 1662 1663 013126 1664 013146 1665 013221 1666 013320 1667 013417 000001 000004 20$: 000012 014552 L10014: 104423 013146 04 013 T e e e 1, ] 1659 013114 010046 012746 010600 104415 062706 000766 012700 004737 10$: T 013074 013076 013102 013104 013106 1658 013112 012100 001410 L T 1655 013070 1656 013072 1657 013074 013320 045 LOOPCOD: 1$:.ASC 2%:.ASC 38:.ASC 48:.ASC 58:.ASC 6%:.ASC 78:.ASC PAGE 38-1 MOV BEQ PRINTX Mov (R1)+,R0 208 RO RO,=(SP) MOV MoV TRAP ADD #1,-(SP) SP,RO CSPNTX #4,SP MOV J SR E NDMSG #10. ,RO PC,PRMSGEXP T RAP CSMSG B8R INXA *XNXA *XNXA 'INXA *ANXA *XNZA EvéfiN!A 108 SEQ 0068 ;DONE ALL MSG LINES? :BR IF YES sPRINT STATUS BIT NAMES :DO ANOTHER MSG LINE sNUMBER OF WORDS IN A READ STATUS BUFFER ;PRINT EXPD/RECV MESSAGE BUFFERS .WORD 1%,2%,3%,4%,5%,6%,7%.0 Tape Bus Loopback Signals in Word #8:°' PARERR<15> IRESV2<14> IHISP=>1EOT<12> IWRT=>1IDENT<11> IWFM =>1FMK<09> IEDIT=>IHER <08> ITADO=>IRDY<06> ITAD1=>IONL <05> IREW =>1DBY<03> IRW =>]RWD <02> 160 =>IFPT<00>* IRESV1<13>* IREV =>ICER <10>°* IFAD =>ISPEED<(Q7>’ IERASE=>ILDP <04>' IFEN =>[FBY <01>°* TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 MSGSUB = PRINT WRITE SUBSYSTEM MESSAGE BUFFER PAGE 39 SEQ 0069 }g;g .SBTTL MSGSUB = PRINT WRITE SUBSYSTEM MESSAGE BUFFER ;+ 1676 }ggg H sPRINT ROUTINE TO PRINT MESSAGE BUFFER EXPD/RECV 1679 H 1682 1683 1684 : : : }ggg :IMPLICIT INPUTS: }232 EXPMSG <= EXPECTED MESSAGE BUFFER RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS : 1687 013742 013742 1688 013742 1689 013746 1690 013752 013752 013752 1691 012700 004737 000012 014552 MSGSUB:: L1001S: 104423 RCVLOADD- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS BGNMSG MSGSUB MOV JSR ENDMSG #10. ,RO PC,PRMSGEXP TRAP CSMSG .SBTTL MEMADD - PRINT MEMORY ADDRESS DATA ERROR ;SIZE OF WRITE SUBSYSTEM BUFFER :PRINT EXPD/RECV MESSAGE BUFFERS 1692 1693 1694 1695 }ggg ;0 1698 }933 H JPRINT ROUTINE TO PRINT MEMORY ADDRESS DATA COMPARE ERROR };85 JIMPLICIT INPUTS: 1703 1704 1705 };89 : : : : 1708 013754 1709 1710 1711 1712 013754 013754 013760 013764 013770 004737 013701 013702 004737 013774 013774 104423 1713 013774 010160 002232 002234 007742 MEMADD:: L10016: ERRHI ERRLO EXP RECV = = BGNMSG MEMADD JSR MOV MOV JSR ENDMSG PC,PRIADD EXPD ,R1 RECV.R2 PC,PRIXOR TRAP CSMSG MEMORY ERROR HIGH ORDER ADDRESS MEMORY ERROR LOW ORDER ADDRESS EXPECTED DATA RECEIVED DATA ;PRINT MEMORY ADDRESS IN ERROR JGET EXPD DATA JGET RECEIVED DATA ;PRINT EXPD/RECV — TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 PAGE 40 SEQ 0070 s 4 .SBTTL PRAMPKT = PRINT RAM AND PACKET DATA b SNNNN ~N -~ NNNNN NNNNNNNNNNNNNNNNSNNNSNYN N ba ~ [PV VIV IV TV TN TV TN TON] ST, ST, VT, N1, N1,87 , 87, N7 U7 S gy -0 VOO NOWNE NN = OV VAN W =20V PRAMPKT = PRINT RAM AND PACKET DATA ) b :PRINT ROUTINE TO DISPLAY RAM/PACKET DATA d SWHEN THE RAM DATA DOES NOT MATCH. b D ed s D éINPUTS: é Ré POINTER TO COMMAND PACKET gIHPLICIT INPUTS: D d d D g d b od b b 013776 013776 41 014010 o - 8 014012 014014 014024 014026 0164032 014036 014046 014052 (=] b cad cnd b b and b el cud wd wd b : -l b DATA AS READ FROM THE RAM RAMS 12 NUMBER OF BYTES IN PACKET IF RAMSI2=0 THEN DEFAULT TO 8. IHPLICIT OUTPUTS: 014002 0 014006 42 43 44 45 46 47 48 49 RAMDATA 014066 014070 014074 014100 4 102 4 106 PRAMPKT : 012701 005002 122124 000436 116105 116403 042703 116137 116437 010346 013746 013746 010246 4150 4154 14156 045 4 }16 4122 4124 4130 4132 4136 4140 4142 4146 SAVREG MOV 5$: 001005 012746 012746 010600 104414 062706 005202 005737 001404 020237 003724 000403 020227 002720 005037 000207 4 112 4 114 002242 RAMSIZ CLR CMPB BNE SET 10 0 ' R2 (R1)+,(R4)+ 7$ FORCERROR 17727277 177777 177400 177777 177777 78: 002234 002232 014156 000005 108 : 002302 000010 002302 116 045 #177400,R3 MOV R3,=(SP) MOV MOV MOV MOV MOV MOV TRAP ADD INC TST 158: 208: 25%: BEQ CMP BLE BR cmp 8LY CLR RAMASC: .ASCIZ 002302 7$ ,NOTSSR 108 =1(R1) ,RS -1(R4).R3 RS,R3 BIC MOVB MOVB PRINTB 002232 002234 000014 BR Move MOvV8 XOR RTS :SAVE R1-RS UNTIL NEXT RETURN #RAMDATA ,R1 :DATA FROM THE RAM ¢INIT BYTE NUMBER s COMPARE EXPECTED, RECEIVED :BR IF NO MATCH ‘@aD s6cT ke V RAM DATA sGET EXPD PACKET DATA :XOR EXPD/RECV cLOW BYTE ONLY -1(R1),RECV sGFY RECEIVED RAM DATA -1(R4).EXPD ;GE. EXPECTED RAM DATA #RAMAS(C ,R2,RECV,EXPD,R3 EXPD,~(SP) RECV,=(SP) R2.-(SP) #RAMASC ,~(SP) #5,~(SP) SP.RO CSPNTB #14,5P R2 RAMS12 sUPDATE BYTE COUNT sDEFAULT T0 8.? 15$ R2,RAMS 12 5% 25$ R2,#48. 5% RAMS 12 :BR IF YES sDONE ALL BYTES? .BR IF NO :DONE DEFAULT NUMBER OF BYTES? :BR_IF NO sSET DEFAULT RAMS]Z PC °'XINXA BYTE: :RETURN XD2XA RAM: Z03XA Packet: X¥03%A XOR:X03' TSV3 - GLOBAL AREAS MACRO M1113 PRAMPKT = PRINT RAM AND PACKET 1764 1765 1766 DATA 25-MAY-82 09:19 .EVEN PAGE 40-1 SEQ 0071 e — TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 ] PRMESS <~ PRINT CONTENTS OF MESSAGE BUFFER };gg .SBTTL PAGE 41 PRMESS SEQ 0072 = PRINT CONTENTS OF MESSAGE BUFFER ;0 1770 b4 1772 1773 1774 : :THIS ROUTINE PRINTS THE CONTENTS OF sTHE 7 OR 8 WORD MESSAGE BUFFER RETURNED BY THE :TSv=05. : 1775 1776 1777 1778 :INPUT: : : RO : R1 LOW ORDER ADDRESS OF MESSAGE BUFFER HIGH ORDER ADDRESS OF MESSAGE BUFFER };gg : };gg sTHIS ROUTINE IS NORMALLY CALLED FROM A PRINT ROUTINE 1783 1784 1785 014242 1786 014° 1727 L2646 .wo 014250 1789 014254 1790 014256 1791 014260 1792 014262 1793 014264 1794 014266 014266 M 014270 014272 014276 014302 014304 014306 1795 014312 014312 014316 014322 01643246 014326 1796 014332 1797 014334 1798 014336 1799 014340 1800 014342 1801 014346 1802 014350 014350 014352 014354 014360 014364 014366 014370 1803 014374 1804 0164376 1805 014402 PRMESS: 010005 005737 001001 005001 010103 006100 006101 010546 010146 012746 012746 010600 104415 062706 012746 012746 010600 104415 062706 005004 010501 010300 001403 004737 010005 012546 010446 012746 012746 010600 104415 062706 005204 020427 003005 003134 108 : 014420 000003 000010 014465 000001 000004 017316 208: 014523 000003 000010 000007 NOTE: R IS IGNORED IF KTENABLE FLAG IS CLEAR SAVREG MOV TST BNE CLR MOV ROL ROL PRINTX MOV MOV MoV MOV MOV TRAP ADD PRINTX MoV MOV MOV TRAP ADD CLR MOV MOV BEQ JSR MOV PRINTX MoV MOV MOV MOV MOV TRAP ADD INC CMP BGT RO,RS KTENABLE 108 R1 R1,R3 RO R1 #PROASC.R1,RS RS.,=(SP) R1,=(SP) #PROASC ,~(SP) #3,-(SP) SP,RO CSPNTX #10,sP #PRIASC #PRIASC ,~(SP) #1,-(SP) SP,RO CSPNTX #6,5P Ré RS.R1 R3,.RO 208 PC,SETMAP RO,.RS #PRASC,R4,(RS)+ (RS5)+,=(SP) Ré,=-(SP) #PRASC,=-(SP) #3,-(SP) SP,R0O CSPNTX #10,SP R4 RG A7 50¢, :SAVE THE REGISTERS ;SAVE LOW ORDER ADDRESS ;ADDRESS ABOVE 28k? :BR IF YES ;SET HIGH ORDER ADDRESS TO 0 :SAVE HIGH ORDER ADDRESS :SHIFT BIT1S TO € BIT JSHIFT TO HIGH ORDER FOR PRINTOUT ;PRINT MESSAGE BUFFER ADDRESS :PRINT HEADER FOR CONTENTS :NUMBER OF THE NEXT WORD ;(OPY LOW ORDER ADDRESS :COPY HIGH ORDER ADDRESS :BR IF NOT ABOVE 28k SETUP PAR ADDRESS IN RO ;GET PAR FORMAT ADDRESS ABOVE 28K ;PRINT THE CONTENTS OF MEMORY BUFFER ;NUMBER OF THE NEXT ;DONE ALL YET ? sBRANCH IF ALL DONE — TSV3 ~ GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 = PRINT CONTENTS OF MESSAGE BUFFER 000012 50$: b 045 045 045 000200 — 002761 032763 001355 000207 oo~ 1806 014404 1807 014406 1808 014414 14416 —b b b PRMESS 045 045 045 PROASC: PR1ASC: PRASC: PAGE 41-1 SE@ 0073 20$ :PRINT FIRST 7 WORDS 208 ;PRINT EXTENDED STATUS WORD BLY BIT BNE #X2.EXTF ,XST2(R3); EXTENDED FEATUTES ON ? RTS PC . *'INXA Message Buffer Address = 201205' :RETURN *INTA Message Buffer Contents: *INXA WordXD1%A: %0° [ TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 b o oo~ wwgwwwwwuwm VIS WN=O VB NOWVES NN~ OV PRMSGEXP = PRINT EXPD/RECV MESSAGE BUFFERS b PRMSGEXP = PRINT EXPD/RECV MESSAGE BUFFERS N = = NUMBER OF WORDS IN BUFFER IMPLICIT INPUTS: EXPMSG - EXPECTED MESSAGE BUFFER RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS Ve ®s 0o Ty ©g 8,0, 0,00 RO ~ [V,] o o~ - o PRMSGEXP: : 0 1839 014622 010005 013700 010004 013701 006100 006101 014642 014644 014650 014654 014656 014660 014670 002306 002304 RO,R5 RCVLOADD,RO RO,R4 RO R1 MOV 062706 000010 012746 012746 010600 014777 000001 062706 005004 000004 002322 002466 MOV MOV 104415 014670 014672 014674 014676 014700 014704 014710 014712 014714 014720 014722 014724 014726 014730 SAVREG MOV Mov MOV ROL ROL PRINTX Mov MOV MOV Mov Mov TRAP ADD PRINTX Mov MoV MOV TRAP ADD 104415 1847 1848 1849 1850 1851 .SBTTL SEQ 0074 ROUTINE TO PRINT EXPECTED AND RECEIVED MESSAGE BUFFERS 010446 010146 012746 012746 010600 1840 1841 1842 1843 1844 1845 1846 4 PAGE 42 014732 000003 CLR 208 : MOV MOV XOR PRINTX MOV MoV MoV Moy [, [1]"] MoV MoV TRAP ADD 015035 000005 000014 000207 50$: INC , (q' 8GE B8R RTS RCV} IADD ,R1 #PRMSGC,R1,R4 R4 ,=(SP) R1,=(SP) :SAVE R1=R5 UNTIL NEXT RETURN sSAVE NUMBER OF WORDS sGET RECV LOW ADDRESS sCOPY LOW ADDRESS sGET RECV HIGH ADDRESS JSHIFT BIT15 TO C BIT sSHIFT TO HIGH ORDER FOR PRINTOUT sPRINT MESSAGE BUFFER ADDRESS #PRMS , = GC (SP) #3,-(S>) SP.RO CSPNTX #10,SP #PRMSG1 #PRMSG1,~(SP) cPRINT HEADER FOR CONTENTS #,=-(SP) SP.RO CSPNTX 86 ,SP R& SEXPMSG,R1 #RECMSG.R2 (R1) RO ;NUMBER OF THE CURRENT WORD JGET EXPD BUFFER ADDRESS JGET RECV BUFFER ADDRESS RO.RS ;XOR EXPD/RECYV (R2) .R3 JGET EXPD :GET RECV #PRMSG2, (R1)+. (R2)+,R3 R4, R3,-(SP) (R3)+,=(SP) (R1)+.=(SP) Ré,=(SP) #PRMSG2,-(SP) 25,-(SP) SP RO CSPNTX a14.5P R4 RS 50$ 208 PC ;NUMBER OF THE NEXT ;DONE ALL YET? :BR IF YES ;00 ANOTHER JRETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 b b b oo 045 — }ggg 015035 045 045 — 1852 1853 014732 1854 014777 b PRMSGEXP = PRINT EXPD/RECV MESSAGE BUFFERS 045 045 045 PRMSGO: PRMSG1: PRMSGZ: .ASCIZ .ASCIZ .eeg#l PAGE 42-1 SEQ 0075 'XNYA Message Buffer Address = X01X0S°* 'INXA Message Buffer Contents:' *INTA WORD #XD2YA EXPD: X06%A RECV: X¥06%ZA XOR: %06’ — ———— TSV3 = GLOBAL AREAS MACRO M1113 PRBYTEXP = PRINT ERROR BYTES 25-MAY-82 09:19 IN EXP/REC MESSAGE BUFFER 1859 1860 1861 '0 1862 1863 1864 1865 1884 015166 1885 015172 1886 015202 1887 015204 1888 015206 1889 015212 1890 015220 1891 015222 015222 015224 015230 015234 015236 015242 015246 015250 015252 1892 015256 1893 015266 1894 015270 1895 015270 1896 015300 1897 015300 1898 015302 1899 015304 1900 015306 1901 10 SEQ 0076 PRBYTEXP = PRINT ERROR BYTES IN EXP/REC MESSAGE BUFFER ROUTINE TO PRINT ERROR BYTES IN MESSAGE BUFFERS ONLY THE FIRST 8 ERRORS ENCOUNTERED ARE PRINTED DUE TO SCREEN SPACE RO 1866 1867 1868 1869 1870 1871 1872 015122 1873 015122 1874 015126 1875 015130 1876 015134 1877 015136 1878 015142 1879 015146 1880 015150 1881 015154 1882 015160 1883 015162 .SBTTL PAGE 43 = NUMBER OF BYTES IN BUFFER IMPLICIT INPUTS: EXPMSG RECMSG = EXPECTED MESSAGE BUFFER = RECEIVED MESSAGE BUFFER bRBYTEXP:: 010005 005037 005004 012701 012702 111100 042700 110037 111203 042703 116337 SAVREG MOV CLR CLR 002320 002322 002466 208: 177400 015470 010346 013746 013746 010446 012746 012746 010600 104415 062706 002320 002320 0156472 015470 013746 012746 012746 010600 106415 000014 30s%: 35¢: 002320 015423 000002 #2c<$77>.R0 MOVB BIC (R2),R3 #4C<877> 83 BEQ 308 CMP BHI PRINTX MOV (R1),RO RO,PRBEXP R3,PRBREC RO.R3 (R1)¢+,(R2)+ PRMNO PRMNO, #8. 308 508: PRBREC, = (SP) PRBEXP.~ (SP) BR 35$ FORCERROR 27$,NOTSSR R4 R4 RS BGE BR PRINTX S0$ 208 #PRBTOT,PRMNO MOV MOV #2,-(SP) SP,RO MOV MOV TRAP ¢FOR ERROR REPORT XOR EXPD/RECV :EXPD = RECV? :BR IF YES :UPDATE ERROR COUNT R3 MOV MOV INC CMP sSAVE R1=R5 UNTIL NEXT RETURN +SAVE NUMBER OF BYTES sINIT ERROR COUNT sNUMBER OF THE CURRENT BYTE ¢GET EXPD BUFFER ADDRESS sGET RECV BUFFER ADDRESS +GET EXPD BYTE sCLEAR UPPER BYTE ¢SAVE FOR ERROR REPORT sGET RECV BYTE ¢CLEAR UPPER BYTE ¢PRINTED 8? :BR IF YES lPRB?éGR4 ,PRBEXP,PRBREC,R3 MOV RG,=(SP) MOV #PRBMSG, = (SP) MOV #S,=(SP) MOV SP,RO TRAP CSPNTX ADD #14,SP FORCEXIT 508 015336 000005 005204 020405 002001 000717 BIC MOVB INC 000010 27$: 000404 NEXPMSG,R1 #RECMSG.R2 MOVB XOR CMPB 122122 001431 005237 023727 101023 MOV MOV MOVB 177400 015472 RO,RS PRMNO R4 PRMNO, = (SP) #PRBTOT,=(SP) CSPNTX ;33D ;aaD s9aD saaD cNUMBER OF THE NEXT sDONE ALL YET? :BR IF YES :DO ANOTHER sPRINT TOTAL ERROR COUNT | TSV3 = GLOBAL AREAS MACRO M1113 PRBYTEXP = PRINT ERROR BYTES 1902 1903 1904 1905 1906 1907 1908 1909 25-MAY-82 09:19 IN EXP/REC MESSAGE BUF FER 015334 015330 062706 000207 000006 015336 015423 0645 045 116 015470 015472 000000 000000 116 ADD #6,SP .ASCIZ .ASCIZ 'INXA .WORD .WORD 0 0 RTS 045 045 PRBMSG: PRBTOT: PRBEXP: PRBREC: PAGE 43-1 .EVEN PC SEQ 0077 sRETURN BYTE #XD2¥A EXPD: X03X¥A RECV: X¥03%¥A ‘ANXA NUMBER OF BYTES IN ERROR = XD?2' JEXPD JRECV XOR: %03’ — TSV3 - GLOBAL AREAS MACRO M1113 W= O 000 N NN = = PRINT EXPD/RECV WORD DATA VIS b b b d b b o b b b b b OO -t PN VOOV OOVOO0 POPONIND = b e d o od b b 00003 b l EXPREC 1926 1927 25-MAY-82 09:19 ;4 .SBTTL PAGE 44 EXPREC SEQ 0078 =~ PRINT EXPD/RECV WORD DATA :PRINT ROUTINE TO DISPLAY EXPD/RECV DATA L INPUTS: ; ; 0 1 547’ 0 1 S47 o [ 5474 0 5500 0 1 5500 0 1 5500 1 004737 104423 007742 EXPREC:: L10017: R1 RECEIVED DATA BGNMSG EXPREC JSR ENDMSG PC.PRIXOR TRAP (SMSG R2 EXPECTED DATA :PRINT THE DATA —-—d b VO S8 SN — —d d b b wnd wd cad i el ) b i VOOV OVOOO0OOVOVOO wwwwr\q S UNWNWWWWNW N=200BNOWN WN=O Y TSV3 = GLOBAL AREAS MACRO M1113 EXPBREC ~ PRINT EXPD/RECV BYTE DATA 25-MAY-82 09:19 bRg PAGE 45 .SBTTL SEQ 0079 EXPBREC = PRINT EXPD/RECV BYTE DATA 'PRINT ROUTINE TO DISPLAY BYTE EXPD/RECV DATA @ INPUTS: RECEIVED DATA BYTE EXPECTED DATA BYTE ®e By %o ol ~N 0 R1 502 004737 5506 104423 007612 BGNMSG EXPBREC:: L10020: EXPBREC JSR PC.PRIBXOR TRAP CSMSG .SBTTL RAMERR ENDMSG :PRINT THE DATA = PRINT RAM AND PACKET DATA : 4 :PRINT ROUTINE TO DISPLAY RAM/PACKET DATA L INPUTS: Ré POINTER TO COMMAND PACKET IMPLICIT INPUTS: RAMDATA RAMS 12 DATA AS READ FROM THE RAM NUMBER OF BYTES IN PACKET IF RAMSIZ2=0 THEN DEFAULT TO 8. ;IMPLICIT OUTPUTS: 510 510 510 514 514 514 004737 104423 013776 RAMERR:: L10021: * ¢ RAMS 12 SET T0 0 BGNMSG RAMERR JSR ENDMSG PC.PRAMPKT TRAP CSMSG .SBTTL RAMTADD = PRINT TEST ADDRESS, RAM AND PACKET DATA ;PRINT RAM/PACKET DATA :PRINT ROUTINE TO DISPLAY RAM/PACKET DATA L INPUTS: TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 RAMTADD =~ PRINT TEST ADDRESS, RAM AND PACKET DATA PAGE 45-1 R4 SEQ 0080 POINTER TO COMMAND PACKET IMPLICIT INTUTS: RAMDATA RAMS 12 DATA AS READ FROM THE RAM NUMBER OF BYTES IN PACKET ERRHI ERRLO HIGH ORDER TEST ADDRESS LOW ORDER TEST ADDRESS IF RAMSIZ=0 THEN DEFAULT TO 8. IMPLICIT OUTPUTS: 004737 004737 010274 013776 SET T0 0 BGNMSG RAMTADD JSR JSR PC,PRITADD PC,PRAMPKT TRAP CSMSG .SBTTL RAMEXP RAMTADD :: L10022: 104423 RAMS 12 ¢ ENDMSG sPRINT TEST ADURESS sPRINT RAM/PACKET DATA = PRINT RAM EXPD/RECV DATA [ *PRINT ROUTINE TO DISPLAY EXPD/RECV DATA LINPUTS: : : : 042701 042702 004737 004737 104423 177400 177400 RAMEXP:: 010066 007742 R1 RECEIVED DATA R4 CONTROLLER RAM ADDRESS R2 BGNMSG RAMEXP 8IC BIC #+C<377>,R1 #4C<377>,R2 JSR JSR L10023: EXPECTED DATA ENDMSG PC.PRIRAM PC.PRIXOR TRAP CSMSG .SBTTL TIMEXP s+ [4 LINPUTS; : R1 R2 sPRINT THE RAM ADDRESS sPRINT THE DATA =~ PRINT TIMER A,B AND EXP/REC *PRINT ROUTINE TO DISPLAY EXPD/RECV DATA “AND TIMER A,B HEADER MESSAGE ; sSAVE EXPD RAM DATA BYTE :SAVE EXPD RAM DATA BYTE RECEIVED DATA EXPECTED DATA TSV3 ~ GLOBAL AREAS TIMEXP MACRO M1113 <~ PRINT TIMER A,B AND EXP/REC 25-MAY-82 09:19 2031 2032 2033 015552 015552 015556 015562 015564 015566 2035 015572 2036 015576 015576 5037 015576 8 %%zg 015600 SEQ 0081 .- 015552 2034 015552 PAGE 45-2 TIMEXP:: (012746 012746 010600 104415 062706 004737 015600 000004 007742 L10024: 116 TIMEXP PRINTX #TIMSGO JPRINT HEADER MOV MOV TRAP ADD JSR ENDMSG #,-(SP) SP,RO CSPNTX #6,SP PC,PRIXOR :PRINT THE DATA TRAP CSMSG -ASCIZ "XNXA TIMER A STATUS IS IN BIT 3XNXA TIMER B STATUS IS IN BIT 2° MOV 000001 104423 045 BGNMSG 045 TécggO: #TIMSGO,-(SP) TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 BADSSR = PRINT TSSR ERRORS ON DATA TRANSFERS .SBTTL PAGE 46 SEQ 0082 BADSSR = PRINT TSSR ERRORS ON DATA TRANSFERS i+ R2 R1 CONTENTS OF TSSR DATA WRITTEN (8 BITS) BGNMSG BADSSR ®e ®e®s e & éPRINT ROUTINE FOR TSSR ERRORS ON DATA TRANSFERS éINPUTS: 2055 015700 015700 2056 015700 2057 015702 2058 015706 015706 015710 015714 015720 015722 015724 2059 015730 2060 015732 2061 015736 015736 015736 2062 015740 2063 010246 042702 010246 012746 012746 010600 104414 062706 012602 004737 104423 045 BADSSR:: 177400 BIC 015740 000002 000006 006024 L10025: 116 MOV 045 XFERASC: PRINTB MOV MOV MOV MOV TRAP ADD MoV JSR ENDMSG TRAP R2,=-(SP) #197400,R2 #XFERASC,R2 :SAVE DATA TRANSFERRED sGET JUST ONE BYTE R2,=-(SP) #XFERASC,-(SP) #2,=-(SP) SP RO CSPNTB #6,SP (SP)+ R2 PC,PRITSSR C$MS6 LASCIZ ;RESTORE R2 sDECODE TSSR CONTENTS 'AINXA Data Transferred = X03' TSV3 - GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2065 2066 2067 2068 3898 25-MAY-82 09:19 .SBTTL PAGE 47 GLOBAL SUBROUTINES SECTION X . THE GLOBAL SUBROUTINES SECTION CONTAINS THE SUBROUTINES : THAT ARE USED IN MORE THAN ONE TEST. SEQ 0083 TSV3 - GLOBAL AREAS SOFINIT - SOFT MACRO M1113 INITIALIZE OF 25-MAY-82 09:19 CONTROLLER 2073 2074 2075 .SBTTL PAGE 48 SEQ 0084 SOFINIT = SOFT INITIA' I2E OF CONTROLLER MR sROUTINE TO DO A SOFT INITIALIZE OF THE CONTROLLER :8Y WRITING INTO THE TSSR REGISTER. AFTER THE INIT, sTHE TSSR REGISTER IS TESTED FOR ERRORS. ANY ERRORS ;DETECTED SHOULD BE TREATED AS DEVICE FATAL ERRORS. LINPUTS: ' [4 . [4 . [ - [4 RS ADDRESS OF FIRST REGISTER OUTPUTS:: . * RO CARRY . (4 . [ . [ CONTENTS OF TSSR, IF ERROR SET IF INIT WAS OKAY CLEAR IF FATAL ERROR . [4 . [ CALLING SEQUENCE: . [ . [4 . [ . [ - [4 MoV JSR BCS ERRDF #ADDRESS RS PC,SOFINIT CONTINUE sREPORT FATAL ERROR [ [4 -‘-‘-'—'-00008000 SWN=OV~N WV 2100 SOFINIT:: 016000 16006 16012 16016 16020 16026 16030 16032 16034 16036 16040 16042 012765 004737 016500 010004 062704 052704 020400 001402 000241 000401 000261 000207 000000 016250 000002 SAVREG 000002 MOV JSR Mov MOV 176277 002200 5%: 108 : s SAVE THE REGISTERS #0,TSSR(RS) PC,WAITF TSSR(RS) RO RO,R4 s DO THE INIT, s WAIT FOR SSR sGET THE TSSR REGISTER :TSSR CONTENTS 5% sBRANCH IF OKAY 108 ;60 TO EXIT BIC BIS CMP B8EQ CLC B8R #*C<HIADDR!OFL>,R4 #SSR!NBA,R4 ;R4 HAS EXPECTED CONTENTS R4 RO sONLY EXPECTED BITS SET ? RTS PC SEC sCLEAR THE CARRY FOR ERROR sSET THE CARRY BIT ¢cRETURN TO CALLER - WA= OO0 NO VIS WNIN 20000~y 25-MAY-82 09:19 .SBTTL PAGE 49 (HKAMB SEQ 0085 =~ CHECK TSSR FOR AMBIGUITY bR4 :THIS ROUTINE TESTS THE CONTENTS OF THE TSSR REGISTER sFOR AMBIGUITY L INPUT: RO CONTENTS OF TSSR ; RO CONTENTS OF TSSR : CARRY SET -~ NO AMBIGUITY SAVREG MOV BIT RO,R4 #SC,RO ;SAVE THE GENERAL REGISTERS ‘CONTENTS OF TSSR YIS BIT 15 SET 2 458 *RETURN WITH SUCCESS : tOUTPUT: & & 28 b b b b b b e b ek b e 55 S ANWNNININ) =2 =2 = OOV OONSNO b purd b b md b ooed b b b md b b - CHKAMB: o o OOOOOOOOOOOOSOOOOOOOOOOO ; (o o T o Yo Yo Yo Yo Yo Yo Yo Yo 3 oo NO WV QOB NOWVEWN=O VR NO NS WA =0V b o b b O VWV b e crd b b i eh b b o b md md SNBSS B 8 B 8 b cd b b b d o b e b e d D ad e D e D b o D D o D b e B WIWWWHIW NN W W NN NN N NI NI NI NINI N = —b b b i ot USTANI NI N NN NN STNL NN NTNTNES TN SN NTNT NI SN IS TN NN TN ST N TSN NTNT ST N1, ST NT NT,NT,NT,NT §7 N TSV3 -~ GLOBAL AREAS MACRC M1113 CHKAMB = CHECK TSSR FOR AMBIGUITY 010004 032700 001004 032700 001023 000424 032700 001011 032700 001414 042704 020427 001007 000410 032700 001002 000241 000401 000261 000207 100000 174077 000200 58: 000040 177761 000016 000040 BNE BIT BNE 5% ‘BRANCH IF YES #~C<NBA!OFL'SSR!HIADDR> ,RO ;ANY OTHER BITS SET ? 408 :MUST BE AN ERROR BIT BNE 8Ir BcQ #SSR,RO 108 #8IT5,R0 408 BR 8IC #*CTERCLS,R4 B8R 8IT BEQ 8Ir BNE 45% #8175,R0 45% #8IT2!BIT1,R0 459% CMP BNE 108: 000006 40$: 45%: 508: CLR - AMBIGUOUS CONTENTS gkc SEC RTS R4, #16 408 508 PC ;1S READY BIT SET ? sBRANCH IF READY BIT IS SET. cIS FATAL ERROR BIT SET ? <ERROR IF NOT sCLEAR ALL BUT TERMINATION COuE sALL THREE BITS MUST BE SET cERROR IF NOT SET ;0K IF ALL ARE SET c1S FATAL ERROR BIT SET ? sERROR IF BIT IS SET WITH SSR ;IS THIS A FUNCTION REJECT :BR, IF TSSR IS OK sAMBIGUOUS CONTENTS s SHOW SUCCESS = NO AMBIGUITY JRETURN TO CALLER —— TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 (09:19 ENAINT ,DSBINT -~ ENABLE/DISABLE INTERRUPTS %}gg .SBTTL PAGE 50 SEQ@ 0086 ENAINT,DSBINT - ENABLE/DISABLE INTERRUPTS 2164 : DEFAULT DISPLAY INTERRUPT HANDLERS. g}gg : OTHERWISE. SAVE DPU’REGISTERS AND DISMISS. 2165 : 2168 ’ 5}93 2171 g};g 2174 ; BIT DEFINITIONS FOR ''INTMASK'* AND '‘INTFLAG'® BYTES: 000200 000 g};g 016145 000 2179 2180 016146 2181 %}gg 016150 ) 000001 2175 016144 2176 if DISPLAY TIME-OUT, REPORT DEV FATAL, AND ABORT PASS. IOKCKINBIT7 10KSTP=81T0 INTMASK : BYTE 0 INTFLAG: .BYTE 0 : INTERRUPT FLAG ==~ SAYS WE GOT ONE (IF POSITIVE) 000000 2185 016152 2186 016154 2187 016160 010046 013700 012720 ENAINT: MOV MOV MOV 2189 016170 2190 016172 012600 011646 2194 2195 016204 2196 016206 g}gg 016214 011646 012766 000002 2188 016164 2191 016174 g;gg 016202 000000 012720 012766 000002 : EXPECT *'STOP'* INTERRUPT. { INTERRUPT MASK =- SAYS EXPECTING INTERRUPTS ;SAVED INTERRUPT VECTOR: INTVEC: .WORD 0 :SAVE CPU PC INTCPC: .WORD 0 2184 ; DON'T CHECK FOR BAD INTERRUPTS - TEST WILL. :SUBROUTINE TO ENABLE xnrennuprs 002210 016216 000340 000000 000340 MOV 000002 000002 MOV MOV MOV RTI RO,=(SP) IVEC.RO #INTR, (RO)+ :SAVE RO SGET POINTER TO VECTORS *SET UP INTERRUPT VECTOR (SP)+,R0 (SP) ,~(SP) ;RESTORE RO #PRIO0%, (RO)+ #0,2(SP) :SET CPU TO LEVEL 0 ;SUBROUTINE TO DISABLE INTERRUPTS (RAISE PRIORITY TO LEVEL 7) DSBINT: MOV (SP) ,=(SP) MOV #PR107.,2(sP) RTI TSV3 ~ GLOBAL AREAS INTR MACRO M1113 = INTERRUPT HANDLERS 25-MAY-82 09:19 338? 2202 g}gg}g 2203 016216 2204 0162246 2205 016230 2206 016236 %ggg 016240 2209 2210 016246 2211 016246 016246 016246 2212 2213 INTR 012737 105037 132737 001003 152737 000002 000001 016145 000001 000001 002224 016144 016145 " PAGE 51 SEQ 0087 .SBTTL INTR BGNSRV INTR sDEFINE INTERRUPT ENTRY MoV #1,INTRECV sSET FLAG TO SHOW INTERRUPT RECEIVED CLR8 8l1T18 BNE 8I1s8 = INTERRUPT HANDLERS INTFLAG #10KSTP,INTMASK 18 #10KSTP,INTFLAG sCLEAR FLAG TO SAY WE GOT INTERRUPT ;EXPECTING STOP INTERRUPT? :BR IF YES ;NO. SET THE ERROR FLAG. :SAVE REGISTERS, MSG BUFFER, ETC. 18: ENDSRV L10026: RTI TSV3 ~ GLOBAL AREAS WAITF MACRO M1113 = WAIT FOR SUBSYSTEM READY 25-MAY-82 09:19 gg}g +SBTTL PAGE 52 WAITF SEQ 0088 = WAIT FOR SUBSYSTEM READY %g}g s SUBROUTINE TO WAIT FOR THE SUBSYSTEM READY FLAG 2219 2220 %%%} s INPUTS: : ; RS 2223 2224 2225 2226 %g%g .OUTPUTS H : RO : CARRY : 2229 016250 2230 016252 016252 2231 016254 2232 016260 000401 2235 016266 2236 016270 016270 016274 016276 016302 016304 016310 100420 g%gz 016204 016312 016316 2237 016320 2238 016322 2239 016324 2240 016326 2241 016330 2242 016332 2243 016334 104422 012746 016500 105700 012727 000000 013727 000000 005367 001375 005367 001367 005316 001356 000241 000401 000261 005326 000207 003000 000002 WAITF:: BR BREAK TRAP 18: MoV 28: MoV 000001 002116 177772 177756 CONTENTS OF LAST TSSR READ SET = READY BIT SET CLR = TIMEOUT WAITING FOR READY 18 TST8 C$BRK #3000,=(SP) TSSR(R5) ,R0 RO BMI DELAY Mov .WORD MoV .WORD DEC BNE 3s 1 #1,(PC)+ 0 LSDLY, (PC)+ 0 =6(PC) b DEC 3s: 4$: ADDRESS OF FIRST DEVICE REGISTER BNE DEC BNE CLC B8R SEC DEC RTS =22(PC) .~20 (SP) 2% 43 (SP)+ PC sNOP WHEN SUPER FIXED : DO A SUPVSR BREAK FIRST. ;300 MSEC TIMER sREAD THE TSSR REGISTER sTEST FOR READY BIT SET s EXIT ON STOP FLAG. ; WAIT 100 USEC sREDUCE DELAY COUNT RETRY UNTIL TIMER EXPIRES = 0, CONTROLLER STILL RUNNING... ....OR HUNG-UP AFTER 300 MSEC. 1, CONTROLLER IS STOPPED. RESTORE STACK WITHOUT CHANGING CARRY BIT TSV3 = GLOBAL AREAS MACRO M1113 ! CHKTSSR = CHECK TSSR FOR READY 25-MAY-82 09:19 5322 .SBTTL PAGE 53 SEQ 0089 C(HKTSSR = CHECK TSSR FOR READY 2247 2248 2249 ot : ;THIS ROUTINE WAITS FOR READY IN THE TSSR 2252 2253 %5?% : INPUT: : 2256 2257 2258 2259 :OUTPUT: : : RO : CARRY 2262 2263 2264 016336 2265 016336 2266 016342 2267 016344 2268 016350 2269 016352 ;- g%gg JAND TESTS FOR AMBIGUOUS BIT SETTINGS IN TSSR. : %52? 2270 016356 2271 016360 2272 016364 2273 016366 2274 016370 2275 016372 2276 016374 RS : 004737 103014 004737 103006 032700 001405 032700 001402 000241 000401 000261 000207 016250 CHKTSSR: 016044 100000 074000 108: 15$: 20$: JSR 8CC JSR B8CC BIT BEQ BIT BEQ cLC B8R SEC RTS ADDRESS OF CSR REGISTERS CONTENTS OF TSSR SET = OKAY CLR = NOT READY AMBIGUOUS, OR SC SET PC,WAITF 208 PC,CHKAMB 108 #SC.RO :WAIT FOR READY :BRANCH IF TIME OUT ;TSSR AMBIGOUS? ;BR IF YES JSPECIAL CONDITION SET? 208 :Bn IF NO :SET FAILURE : ;SET SUCCESS JRETURN TO CALLER 15$% #<SCE!BIE 'RMR!NXM>,R0 15% PC *BR IF NO 2. NY ERROR BITS SET? - TSV3 - GLOBAL AREAS XNXM MACRO M1113 25-MAY-82 09:19 -~ CHECK FOR NONEXISTENT MEMORY PAGE 54 LSBTTL XNXM = CHECK FOR NONEXISTENT MEMORY 2280 2281 %%g% ;0 : ROUTINE TO TEST FOR A NEXM IN THE RANGE (R1) THRU (R2). : ON RETURN, IF *C'' = 1, (R1) = NEXM ADDRESS. : *'C'* = 0, ALL ADDRESSES OK. 2284 2285 2286 %%gg :CALL: : : : MOV ADR1,R1 MOV ADRZ2,R2 JSR PC,NXM RE TURN ;TEST *'C'' AND PROCEED. XNXM: MOV MOV CLR ST #28,a04 #PRIOG ,an6 R3 (R1) cMp BEQ ADD B8R R1,R2 3$ #2,.R1 1$ COM MOV RTI CLRVEC MoV TRAP TST BEQ SEC RTS R3 #3$,(SP) PC .SBTTL TSTLOOP = CHECK ITERATION COUNT %538 2289 016376 2290 016404 2291 016412 2292 016414 2293 2294 016416 2295 016420 2296 016422 %%gg 016426 2299 016430 2300 016432 2301 016436 2302 016440 016440 0164446 2303 016446 2304 016450 2305 016452 2306 016454 2307 2308 2309 2310 5%}} 012737 012737 005003 005711 020102 001407 062701 000772 005103 012716 000002 012700 104436 005703 001401 000261 000207 016430 000200 000004 000006 1$: 000002 016440 000004 28: 3s: #4 #4,R0 CS$CVEC R3 YA s SET BUSERR VECTOR. JFLAG. ;TEST THE ADDRESS(ES). s1F ANY TRAP, CONTINUE AT 28. ;OTHERWISE, CONTINUE HE®c. ;BR IF FINISHED (NO NEXM'S). ;SET NEXT ADDRESS... J...AND CONTINUE. ;GOT ONE, SET FLAG... J.+.AND DISMISS INTERRUPT... :...AND GIVE BACK THE VECTOR. :DID WE CATCH ONE ?? sNO, '°C'* = 0, SKIP NEXT. JYES, ''C'' = 1, (R1) = NEXM ADDR. ;0 2313 2314 ; SUBROUTINE TO EXECUTE TEST ITERATIONS. s EXIT WITH *°C** SET IF LOOPS ALLOWED AND LOOP COUNT NON-ZERO. 2317 2318 2319 016456 2320 016456 2321 016462 2322 016464 2323 016470 2324 016472 2325 016476 2326 016500 2327 016502 2328 0165% 2329 0165L> ; CALL: LOOPTO : TSTLOOP:: ST BNE TST BM] DEC BNE 1$: cLC B8R 28: SEC 3s: RTS g;}g ; LOOP COUNTER 1S SET BY 'BEGIN.TEST'* MACRO. 005737 001006 005737 100403 005337 001002 000241 000401 000261 000207 002170 002204 002216 ARG NOITS 18 QvP 18 LOOPCNT 23 3s PC ; ITERATIONS INHIBITED? : YES. : NO. ;LOOPS DISALLOWED IN QUICK PASS. ; BUMP LOOP COUNTER. ;LOOP DISALLOWED, OR DONE. ;LOOP ENABLED. SEQ 0090 [T— o SV3 - GLOBAL AREAS TSTLOOP = CHECK MACRO M1113 ITERATION COUNT 25-MAY-82 09:19 PAGE 55 N7 SEQ 0091 2331 2332 %%gz .SBTTL TSTSETUP = PRINT TEST NAME AND INIT ERROR COUNTS ;+ 2335 2336 2337 : PRINT THE NUMBER AND NAME OF EACH TEST AS WE GO ALONG. s INCREMENT ‘‘TESTK'® TO INDICATE THE NUMBER OF TESTS : IN THE CURRENT RUN SEQUENCE. S%%% : CLEAR THE ERROR COUNTER AND SIGNATURE EXTENSION FLAGS. 2340 2341 :INPUT: : 2344 2345 .ourpur : ngg ;IMPLICIT OUTPUTS: %%2? : ggg% :SIDE EFFECTS: 2354 2355 2356 2357 2358 2359 016510 2360 016510 2361 016512 2362 016516 2363 016522 2364 016526 2365 016532 2366 016536 2367 016540 2368 016544 2369 016546 2370 016550 2371 016556 016556 016560 016562 016564 2372 016566 2373 016570 2374 016576 016576 016600 016602 016604 2375 016606 2376 016614 016614 016620 2377 016622 : : ; i- %gzg : %%29 : 010046 005037 005037 005037 105037 013700 006300 005737 001430 100010 052760 104455 000001 003740 005736 000407 052760 003154 016756 005772 016144 002202 003114 160000 003176 160001 003176 104455 000002 004335 000000 012737 013700 104451 RO POINTER TO TEST ID ASCIZ STRING RS ADDRESS OF FIRST DEVICE REGISTER TSTCNT INTERRUPT LEVEL IS RASIED TO LEVEL OF THE DEVICE UNDER TEST TSTSETUP:: MOV CLR CLR CLR CLRB MoV ASL TST BEQ BPL BIS ERRDF TRAP WORD .WORD .WORD BR 3$: BIS ERRDF TRAP WORD 177777 002202 003112 2%: UPDATED TO COUNT TESTS PERFORMED SINCE START OR RESTART .WORD WORD MOV DODU MOV TRAP DOCLN RO,-(SP) JSAVE THE TEST ID MESSAGE SIFLAG : CLEAR ''SOFT INIT'' FLAG ERRK : CLEAR LOCAL ERROR COUNTER. EXTA ;s CLEAR ERROR EXTENSION FLAG. INTMASK ; CLEAR INTERRUPT MASK (CHECK ERROR) UNJTN,RO ;s GET THE UNIT NUMBER, RO ; ... AND MAKE IT A WORD OFFSET. NODEV ; DID STARTUP FIND THE DEVICE? 4$ : BR IF YES 3s : BR IF NOT IDLE #160000,ERTABL(R0O) ; FLAG ERROR IN THE ERROR TABLE 1,NXR,NXRERR ; NO DEVICE HERE == PRINT IT CSERDF 1 NXR NXRERR P4 3 #160001 ,ERTABL (R0) : FLAG ERROR IN THE ERROR TABLE 2,NOINIT : DEVICE NOT IDLE CSERDF 2 NOINIT O #-1,DUFLG UNITN UNITN,RO C$DODU : DROP THE UNIT : ABORT THE PASS 016622 %%;3 016624 2380 016626 16626 2381 016630 2382 016634 2383 016636 2384 016640 016640 016642 016646 016652 016654 016656 2385 016662 2386 016666 016666 016672 2387 016674 2388 016676 2389 016702 2390 016704 2391 MACRO M1113 TEST NAME AND 25-MAY-82 09:19 INIT ERROR COUNTS 104444 000423 104421 032700 001412 011600 010046 012746 012746 010600 104417 062706 005237 013700 104441 005726 013705 000207 045 48: 001000 016704 000002 000006 0022164 18: 002212 5$: 002206 123 PAGE 55-1 0645 TNAM: SEQ 0092 TRAP BR CSDCLN 5% RFLAGS TRAP BIT BEQ MoV PRINTF Mov Mov MOV Mov TRAP ADD INC SETPRl MoV TRAP TST MOV RTS _ASCIZ .EVEN RO CSRFLA #PNT ,RO 1% (SP) RO #TNAM,RO RO,=(SP) #TNAM, = (SP) #2,~(SP) SP,R0 CSPNTF #6,SP TSTCNT PRI IPRI,RO CSSPRI (SP)+ CSRADDR,RS PC ‘'XSXTXA Test' ; GET THE OPERATOR FLAGS. ¢ PRINT THE TEST NUMBERS? ¢ BR IF NO ;GET THE ID MESSAGE cDISPLAY THE TEST ID ; BUMP TEST COUNTER. sPRIORITY THAT OF DEVICE sFIX UP THE STACK ; ADDRESS OF TSV REGISTERS ON UNIBUS T TSV3 = GLOBAL AREAS TSTSETUP = PRINT — TSV3 - GLOBAL AREAS TSTEND MACRO M1113 = PRINT ERRORS RECEIVED 25-MAY-82 09:19 .SBTTL PAGE 56 SEQ 0093 TSTEND AT END OF EACH TEST, = PRINT ERRORS RECEIVED PRINT THE NUMBER OF ERRORS RECEIVED IF NORMAL ERROR REPORTING IS DISABLED (FLA:IER). 2398 016720 016720 2399 016722 24600 016726 2401 016730 016730 016734 016740 016744 5425 017102 426 017104 2427 017110 2428 017112 2429 017116 2430 017122 2431 017126 2432 017130 2433 017136 2434 017140 017140 2435 017142 26436 017146 2437 017150 2438 017156 017156 017160 017162 TRAP 020000 BIT BEQ 016756 016760 000002 —t 000000 045 105 b 000006 nNO N == 2602 016754 2403 2404 016756 2405 016760 24606 016777 24607 2408 2409 2410 2411 2412 26413 017044 2414 017050 2415 017052 2416 017056 2417 017060 2418 017064 2419 017066 24620 017072 2621 017074 2422 017076 2423 017100 2424 STEND RFLAGS 18: 122 PRINTF Mov MOV MOV MOV TRAP ADD RTS ERRK: 0 ESUM: LASCIZ EMAXDU: .ASCIZ .t .SBTTL RO CSRFLA RO,#IER 18 #ESUM, ERRK ERRK,=(SP) : BR IF ""IER'' NOT SET. . PRINT ERROR COUNT. #ESUM,=(SP) #2,~(SP) /XA XDXA ERRORS/ : LOCAL ERROR COUNT. /ERROR LIMIT REACHED -~ DROPPING UNIT/ INCERK = INCREMENT LOCAL ERROR COUNT ; ROUTINES TO INCREMENT LOCAL ERROR COUNT AND CHECK FOR LIMIT: 005237 010046 013700 006300 062700 005210 032710 001001 005310 012600 000207 010046 013700 006300 016000 042700 020037 103004 023737 103417 104421 032700 001013 012737 106455 000004 016777 016756 INCERK: 002202 003176 INC 81T BNE 007777 18: MOV RTS MOV ASL MOV 8IC 003176 170000 002174 002172 1$: 000040 177777 DEC CKEMAX: MOV 002202 016756 INC MOV MOV ASL ADD 003112 CMP BHIS CMP BLO RFLAGS TRAP ERRK RO,=(SP) UNJTN,RO GET UNIT NUMBER, #ERTABL ,RO RO GETS ADDRESS OF ERROR TABLE ENTRY. INCREMENT THE DEVICE ERROR COUNT DID WE OVERFLOW THE FIELD? B8R IF NO. YES == BACK IT uUP T0 7777. RO (RO) #7777, (R0O) 18 (RO) (SP)+,R0 PC RO,~(SP) UgITN.RO R ERTABL (R0O) ,RO #170000,R0 ?2.GERRHAX ERRK , LERRMAX 2% RO CSRFLA 8IT #10U,RO MOV #-1,DUFLG TRAP ESERDF BNE ERRDF .WORD .WORD §§CEE"5~T LOCAL ERROR COUNT 2% 4 EMAXDU EMAXDU «oo AND MAKE IT A WORD OFFSET. RESTORE RO RETURN TO CALLER. SAVE RO GET UNIT NUMBER «o. AND MAKE IT A WORD OFFSET GET ERROR TABLE ENTRY EXTRACT ERROR COUNT FIELD ég ?%Oeeg LIMIT EXCEEDED FOR THIS UNIT? IS LOCAL LIMIT EXCEEDED FOR THIS TEST? B8R _IF NO GET OPERATOR FLAGS IS DROPE%NG INHIBITED? BR IF NO == DROP THE UNIT TSV3 = GLOBAL AREAS INCERK MACRO M1113 25-MAY-82 09:19 = INCREMENT LOCAL ERROR COUNT 017164 2439 017166 017166 017172 2440 017174 017174 2441 017176 2442 017200 2443 060000 013700 104451 104444 012600 000207 002202 2s: .WORD DODU MOV TRAP DOCLN TRAP MOV RTS PAGE 56-1 SEQ 0094 0 UNITN UNITN,RO c$poou CSDCLN (SP)+,R0 PC ¢ RESTORE RO ¢ RETURN TO CALLER TSV3 ~ GLOBAL AREAS CKDROP =~ CHECK IF MACRO M1115 25-MAY-82 09:19 UNIT SHOULD BE DROPPED 5222 .SBTTL PAGE 57 CKDROP SEQ 0095 = CHECK IF UNIT SHOULD BE DROPPED ;+ Szzg 2449 017202 2450 017204 2451 017214 017214 2452 017216 2453 017222 2454 017224 2455 017226 2456 017234 017234 017240 2457 017242 017242 2458 017244 2459 017246 2460 2461 2462 2463 gzgg ; CHECK IF UNIT SHOULD BE DROPPED 010046 104421 032700 001010 011600 012737 013700 104451 000040 177777 DODUY 002202 104444 012600 000207 1$: MOV TRAP DOCLN TRAP MoV RTS .SBTTL %229 2468 017250 2469 017250 2470 017254 2471 2472 003112 CKDROP: MOV RO,=(SP) FORCERRNR 1$,NOTSSR RFLAGS RO TRAP CSRFLA BIT #1DU,RO BNE 18 MOV (SP) RO MOV #-1,DUFLG UNITN UNITN,RO C$DODU :ABORT THE PASS CSDCLN (SP)+,RO PC CONFIG =~ DETERMINE CONFIGURATION OF SYSTEM : SUBROUTINE = DETERMINE CONF]GURATION OF TSVOS SYSTEM. 004737 000207 015774 CONFIG: JSR RTS PC.SOFINIT PC TSV3 - GLOBAL AREAS KTON,KTOFF MACRO M1113 25-MAY-82 09:19 ~ ENABLE/DISABLE MEMORY MANAGEMENT %2;2 .SBTTL 52;g ; 2479 017256 2480 017262 2481 017264 2482 017272 2483 2484 2485 2486 gzgg 005737 001403 012737 000207 2489 017274 2490 017300 26491 017302 2492 017304 2493 017306 gzgg 017314 005737 001405 000240 000240 012737 000207 2496 003132 000001 KTON,KTOFF SEQ 0096 - ENABLE/DISABLE MEMORY MANAGEMENT SUBROUTINE = ENABLE MEM MGT. KTON: 177572 PAGE 58 1¢: TST BEQ MOV RTS KTFLG 1% #1,SRO PC ; GOT KT? ; NO. ; YES. ENABLE KT11, . : SUBROUTINE = DISABLE MEM MGT. 003132 000000 KTOFF: 177572 1$: TST BEQ NOP NOP MOV RTS KTFLG 18 : GOT KT11? : NO. #0,SR0 PC ; DISABLE KT, —_— —— —_— —— TSV3 - GLOBAL AREAS MACRO M1113 = SETUP PARG6 MAPPING SETMAP 25-MAY-82 09:19 gzgg LSBTTL PAGE 59 SETMAP SEQ 0097 - SETUP PAR6 MAPPING 2500 2501 2502 2503 %ggg .t : ;THIS ROUTINE SETS UP KERNEL PARS TP HANDLE ;AN 18 BIT ADDRESS. THE OFFSET INTO THE PAGE 2506 2507 2508 JINPUTS: : : RO %g}; ;OUTPUTS: 2513 2514 2515 2516 2517 017316 2518 017316 2519 017322 2520 017326 2521 017330 2522 2523 H RO N CARRY : = SETMAP: SAVREG 787 8EQ MOV .REPT ASR ;1S RETURNED BIASED TO PARS. gg?g H 005737 001433 010102 000006 003132 ggsg 2526 017362 2527 017366 2528 017372 2529 017374 2530 017400 2531 017404 2532 017410 2533 217412 2534 017414 2535 017416 gggg 017420 R1 RgzDR 042701 020137 103011 010137 042702 062702 010200 000261 000401 000241 000207 000177 003132 172354 160000 140000 10$: 15%: 8I1C CMP BHIS MOV 8IC ADD MOV SEC B8R cLC RTS HIGH ORDER ADDRESS BITS LOW ORDER ADDRESS BITS OFFSET INTO BLOCK WITH PAR6 BIAS (1.E. SET IF SUCCESS CLR IF ERROR KTFLG 108 R1,R2 6 RO R1 ”7?77,R1 R1,_KTFLG 108 R1,3#KIPARG #160000,R2 #140000,R2 R2.R0O 15% PC THE ADDRESS) JSAVE R1=R4 UNTIL NEXT RETURN ;SYSTEM HAVE ABOVE 28k? :BR IF NO ;SAVE LOW ORDER BITS ;CONVERT WORD ADDRESS TO 32w BLOCKS JMAKE 1T DOUBLE PRECISION JALINE FOR LOWER 4K BOUNDARY JHIGHER THAN EXISTING MEMORY? :BR IF YES +SETUP MAPPING REGISTER PAR6 JSETUP DISPLACEMENT IN PAGE :ADD IN PAR6 BIAS :RETURN IN RO JSET SUCCESS : JSET FAILURE :RETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 FILLMEM ~ FILL MEMORY WITH BACKGROUND PATTERN .SBTTL + PAGE 60 SEQ@ 0098 FILLMEM - FILL MEMORY WITH BACKGROUND PATTERN FILL MEMORY WITH A BACKGROUND PATTERN INPUTS: RO = BACKGROUND PATTERN FREE KTFLG = FIRST LOCATION AVAILABLE TO DIAGNOSTIC = SET TO HIGHEST MEMORY LOCATION IF > 28k, OUTPUTS: 2 25 2554 017422 %5 55 017422 556 017426 2557 017432 2558 017436 2559 017440 2560 017444 2561 017446 2562 017450 2563 017452 2564 017456 2565 017460 2566 017464 2567 017466 2568 2569 2570 257 2572 2573 0172536 2574 017542 2575 017544 2576 017550 017656 NONE F ILLMEM: 004737 010003 013701 013702 010321 005302 003375 005737 001477 004737 005000 013701 000006 004737 010320 020027 103774 162700 062737 023737 001427 005737 001407 013704 042704 022704 001415 005737 001410 023727 103001 000403 012737 000137 004737 000207 017274 003124 003126 108: 003132 SAVREG JSR MOV MOV MOV MOV DEC 8GT 003152 308 : 160000 020000 000200 172354 172354 003132 007600 000020 017542 017274 172516 $ $: $: $: YES. ENABLE KT, R1 RO sCONVERT BLOCKS TO WORDS sMAKE IT DOUBLE PRECISION JSR PC,SETMAP sSETUP PARG MAPPING REGISTER sCLEAR C BIT MOV CMP BLO sus ADD R3,(RO)+ RO,#160000 308 #20000,R0 #200,3#KIPAR6 sSTORE TEST PATTERN IN >28K ADDRESS sEND OF PAR6 MAPPING AREA? :BR IF NO sBACKUP INTO PAR6 MAPPING BEGIN ;POINT TO NEXT 4K BLOCK >28K. BEQ 508 ‘BR IF YES a¥KIPARG KTFLG ;END OF MEMORY? T23A $11/723A? SRO,R4 :GET SRO CONTENTS CMP BEQ ST BEQ CMP BHIS #16,R4 508 1238 45$ S#KIPARG, #7600 408 *SEE IF PAGE 7 SEXIT IF THERE 21172382 :NO KEEP GOING ;REACHED 18 BITS? SYES MOV JMP JSR RTS #20,SR3 308 PC.KTOFF PC sSET 22 BIT RELOCATION sKEEP GOING ON ETC. ; DISABLE KT. BIC 172354 s ROL RghDR MOV 358 GOT KT? sHIGH ORDER ADDRESS START sGET >28K START ADDRESS (IN 32w BLOCKS) BEQ 003146 s RO ZST3ZU.R1 ST 177572 177761 000016 : NO. GET OQUT. PC,KTON CMP 003144 55% JSR cLC 017316 cGET FIRST FREE LOCATION sSIZE OF FREE SPACE BELOW 28K. ¢STORE A BACKGROUND WORD sDONE ALL MEMORY IN FREE SPACE? ;BR IF NO KTFLG CLR "ggPT :SAVE R1-RS UNTIL NEXT RETURN sDISABLE KT. sCOPY TEST PATTERN 108 TST BEQ 017256 PC,KTOFF RO,R3 FREE ,R1 FRESIZ ,R2 R3.(R1)+ R2 B8R 358 2177761 .R4 45$ *NO KEEP GOING sCLEAR ALL BUT PAGE NUMBER :NO KEEP GOING TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 07:19 FILLMEM - FILL MEMORY WITH BACKGROUND PATTERN 2596 2597 PAGE 60-1 SEQ 0099 TSV3 -~ GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CMPMEM < COMPARE MEMORY TO BACKGROUND PATTERN 5238 .SBTTL PAGE 61 (CMPMEM SEQ 0100 <~ COMPARE MEMORY TO BACKGROUND PATTERN . + %285 : COMPARE MEMORY WITH A BACKGROUND PATTERN 2603 2604 2605 2606 : : : : 2609 2610 2611 * OUTPUTS: ; ; CARRY gg}g * IMPLICIT OUTPUTS: 2616 2617 2618 2619 2620 2621 017660 2622 017660 2623 017664 2624 017666 2625 017672 2526 017676 2627 017702 ; ; : ; ;CMPMEM: 010003 004737 013701 013702 020311 017274 003124 003126 2629 2630 2631 2632 010137 005037 010337 011137 002240 002236 002232 002234 328; : gg}% : 2628 017704 017706 017712 017716 017722 2633 017726 001411 000474 2634 017730 2635 017732 2636 017734 2637 017736 2638 017742 2639 017744 2640 017750 2641 017752 2642 2643 005721 005302 003362 005737 001472 004737 005000 013701 000006 2646 020006 2647 020012 2648 020014 2649 020016 2650 020022 2651 020024 2652 020026 2653 020030 2654 020032 2655 020034 042701 010046 010146 004737 010004 012601 012600 020314 001411 010037 522§ INPUTS: 108: 15¢: 003132 017256 003152 KTFLG CARRY = SET TO HIGHEST MEMORY LOCATION IF > 28K. =~ SET IF NO ERROR = CLR IF ERROR ERRH] ERRLO EXPD RECV = =~ SAVREG MOV JSR MOV MOV (MP RO,R3 PC.KTOFF FREE ,R1 FRESIZ.R2 R3, (R1) :SAVE R1-RS UNTIL NEXT RETURN :COPY TEST PATTERN *DISABLE KT. SGET FIRST FREE LOCATION :SIZE OF FREE SPACE BELOW 28K. SFREE SPACE LOCATION EQUAL TO EXPD? MOV CLR MOV MOV R1,ERRLO ERRH] R3,EXPD (R1) ,RECV *SAVE ADDRESS IN ERROR *NO HIGH ADDRESS :SAVE EXPD FOR ERROR REPORT *SAVE RECV FOR ERROR REPORT TST DEC BGT ST BEQ JSR CLR MOV .REPT ROL (R1)+ R2 108 KTFLG 55¢ PC.KTON RO PST32W,R1 6 R1 :POINT TO NEXT ADDRESS :DONE ALL MEMORY IN FREE SPACE? *BR IF NO : GOT KT? : NO. GET OUT. : YES. ENABLE KT. *HIGH ORDER ADDRESS START :GET >28K START ADDRESS (IN 32w BLOCKS) ;CONVERT BLOCKS TO WORDS BIC MOV MOV JSR MOV MOV MOV CMP BEQ MOV #177.R1 RO,=(SP) R1.=(SP) PC.SETMAP RO.R& (SP)+,R1 (SP)+.RO R3, (R{) 32¢ RO,ERRHI ;ALINE 4K BOUNDARY *SAVE HIGH ORDER *SAVE LOW ORDER :SETUP PAR6 MAPPING REGISTER ;COPY ADDRESS BIASED TO PAR6 :RESTORE LOW ORDER IN NON PARS FORMAT :RESTORE HIGH ORDER IN NON PARG FORMAT SABOVE 28K LOCATION EQUAL EXPD? ‘BR IF VES sSAVE HIGH ORDER IN ERROR B8EQ B8R 017316 308: ERROR HIGH ADDRESS ERROR LOW ADDRESS EXPECTED DATA RECEIVED DATA 15¢$ 508 Rghon RO 000177 002236 RO = BACKGROUND PATTERN FREE = FIRST LOCATION AVAILABLE TO DIAGNOSTIC ‘BR IF YES : SMAKE IT DOUBLE PRECISION — TSV3 -~ GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 CMPMEM ~ COMPARE MEMORY TO BACKGROUND PATTERN 2656 020040 2657 020044 2658 020050 2659 020054 2660 020056 2661 020062 2662 020064 2663 020070 2664 020074 2665 020076 2666 020102 2667 020110 2668 020116 2669 020120 2670 020124 2671 020126 2672 020130 2673 020134 2674 020136 2675 010137 010337 011437 000421 062701 005500 062704 020427 103755 162704 062737 023737 101744 004737 000241 000403 0064737 000261 000207 002240 002232 002234 MOV MOV MOV 000002 328: 000002 160000 020000 000200 172354 017274 017274 172354 003132 50$: 55$: 60$: BR ADD ADC ADD CMP BLO SuB ADD CMP BLOS JSR cLC BR JSR SEC RTS PAGE 61~1 R1,ERRLO R3,EXPD (R&) ,RECV 508 #2,R1 RO #2,Ré R4 ,#160000 308 #20000,R4 #200,3#KIPARG INKIPARG ,KTFLG 308 PC.KTOFF 60$ PC,KTOFF PC SEQ@ 0101 ;SAVE LOW ORDER IN ERROR SSAVE EXPD FOR ERROR REPORT sSAVE RECV FOR ERROR REPORT sUPDATE NON PAR6 ADDRESS sMAKE IT DOUBLE PRECISION ADD cUPDATE PAR FORMAT ADDRESS ;END OF PAR6 MAPPING AREA? :BR IF NO ¢BACKUP INTO PAR6 MAPPING BEGIN ¢POINT TO NEXT 4K BLOCK >28K. cEND OF MEMORY? sBR IF NO s TURN OFF MEMORY MAPPING ¢SET FAILURE ‘TURN OFF MEMORY MAPPING 1SET SUCCESS s — - TSV3 - GLOBAL AREAS REGSAV MACRO M1113 = SAVE R1=RS5 ON STACK 2677 2678 2679 2680 25-MAY-82 09:19 .SBTTL X : SROUTINE TO PAGE 62 REGSAV SEQ 0102 =~ SAVE R1=RS ON STACK %gg; JSAVE R1 THROUGH RS ON THE STACK 2683 2684 JCALLING SEQUENCE: : %ggg H 2687 2688 2689 cTHIS IS A COOROUTINE WHICH TRANSFER CONTROL BACK TO sTHE CALLING ROUTINE. AT THE END OF THE CALLING ROUTINE, sTHE RTS PC RETURNS CONTROL TO THIS ROUTINE TO RESTORE 2692 2693 2694 2695 2696 2697 020140 2698 020140 2699 020142 2700 020144 2701 020146 2702 020150 2703 020152 2704 020156 2705 020160 2706 020162 2707 020164 2708 020166 2709 020170 2710 020172 2T sTHIS ROUTINE SHOULD ONLY BE CALLED FROM ROUTINES WHICH ARE JCALLED VIA A JSR PC INSTRUCTION : - ggg? JSR RS ,REGSAV JREGISTERS. 010446 010346 010246 010146 010546 016605 004736 012601 012602 012603 012604 012605 000207 REGSAV: 000012 MOV MOV MOV MOV MOV MOV JSR MOV MOV MoV MOV MOV RTS R4,-(SP) R3,=-(SP) R2,=(SP) R1,-(SP) RS,~(SP) 10. (SP) RS PC.a(SP)+ (SP)+,R1 (SP)+,R2 (SP)+ ,R3 (SP)+,R4 (SP)+,RS PC - R TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 GETPAT =~ GET 8 BIT PATTERN FROM OPERATOR %;}2 "8 PAGE 63 .SBTTL GETPAT SEQ 0103 =~ GET 8 BIT PATTERN FROM OPERATOR 4 2718 : %;}g JROUTINE TO REQUEST AN 8 BIT DATA PATTERN FROM THE OPERATOR 2718 2719 2720 2721 2722 2723 s INPUTS: : R NONE. : ;OUTPUTS: : g;%g : 2726 2727 2728 2729 2730 2731 2732 020174 2733 020174 ;CALLING SEQUENCE: : : JSR PC,GETPAT H .= 2734 020200 020200 020202 020204 020206 020210 020212 020214 020216 020220 2735 020220 020220 2736 020222 5;%; 020226 GETPAT:: 1$: 104443 000406 020230 000022 020232 000377 000000 000377 103367 013700 000207 100008: 020230 2739 2740 1o 2743 020230 g;zg 020232 RO SAVREG GMANID TRAP BR .WORD .WORD .WORD .WORD .WORD .WORD OCTAL NUMBER FROM THE OPERATOR -SAVE THE GENERAL REGISTERS DATASC,PATDAT,0,377.0.377.NO CSGMAN 10000$ PATDAT TSCODE DATASC 377 TSLOLIM TSHILIM BNCOMPLETE 1$ BCC 1% MOV PATDAT RO RTS PC :RETRY IF ERROR :DATA PATTERN FROM OPERATOR :RETURN TO CALLER ot ;LOCAL DATA AREA 000000 105 116 124 PATDAT: DATASC: .WORD .gsgbz 0 :TEMPORARY STORAGE FOR DATA "ENTER DATA PATTERN® TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 (09:19 GETSEL =~ ISSUE MENU AND GET OPERATOR RESPONSE 2;2; .SBTTL - PAGE 64 GETSEL SEQ 0104 = ISSUE MENU AND GET OPERATOR RESPONSE o+ 2749 2750 2751 : *ROUTINE TO ISSUE A MENU AND GET :THE OPERATOP'> RESPONSE. 2752 : 2753 2754 2755 :INPUTS: : : RO 2758 2759 :OUTPUTS: : ADDRESS OF ASCIZ STRING OF MENU ; R1 MAXIMUM ALLOWABLE OPERATOR RESPONSE %;g? : RO NUMBER OF THE OPERATOR'S SELECTION 2762 2763 2764 020256 2765 020256 2766 020262 2767 020264 i SAVREG MOV MOV RO,R2 R2.R3 BEQ PRINTF MOV MOV MOV MOV TRAP ADD BR GMANID TRAP BR .WORD .WORD .WORD "WORD JWORD "WORD 38 :BRANCH IF ALL LINES DISPLAYED #SELASC,(R3)+ :DISPLAY THE MENU (R3)+,=(SP) #SELASC,~(SP) #2.-(SP) SP.R0 CSPNTF #6,SP 2 MENASC,MENRES,D,=1,0,=-1,NO CSGMAN 100018 MENRES T$CODE MENASC =1 TSLOLIM TSHILIM 5;29 28: 001412 012346 012746 012746 010600 104417 062706 000764 020442 000002 000006 38: 104443 000406 020476 000042 020447 177777 000000 177777 012746 012746 010600 104417 062706 000735 000207 045 045 105 020476 020374 000001 000004 P 103352 013700 020001 101411 10001$: oo 2777 020350 020350 020354 020360 020362 020364 2778 020370 2779 020372 2780 020374 2781 020442 2782 020647 1$: 005713 — b b 2769 020270 2770 020272 020272 020274 020300 020304 020306 020310 2771 020314 2772 020316 020316 020320 020322 020324 020326 020330 020332 020334 020336 2773 020336 020336 2776 020340 2775 020344 2776 020346 010002 010203 [V 2768 020266 GETSEL:: 045 045 166 ST (R3) :SAVE GENERAL REGISTERS :SAVE THE MENU ADDRESS *START OF MENU STRING SEND OF ASCII ? BNCOMPLETE 18 ;RETRY IF ERROR BCC 18 MOV MENRES, RO :GET THE OPERATOR'S REPLY CMP RO,R1 “COMPARE TO MAXIMUM ALLOWED BLOS S *BRANCH IF OK PRINTF #MENERR *DISPLAY ERROR TMESSAGE MOV #MENERR , - (SP) MOV #1,-(SP) MOV SP.R0 TRAP CSPNTF ADD 86, 5P BR 1$ :RETRY 58 RTS PC *RETURN TO CALLER MENERR: .ASCIZ “INXA te+ Menu Selection Too Large sws’ SELASC: .ASCIZ °*XNXT® ) MENASC: .ASCIZ ‘Enter Menu Selection: ' —_— —_— _ TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 GETSEL =~ ISSUE MENU AND GET OPERATOR RESPONSE 2783 2784 020476 000000 MENRES: .EVEN PAGE 64=1 WORD SEQ 0105 O I | TSV3 -~ GLOBAL AREAS MACRO M111 3 2 S-MAY-82 09:19 = CHECK MANUAL INTERVENTIO N LE GALITY CHKMAN 2786 2787 . .SBTTL PAGE 65 CHKMAN SEQ 0106 - CHECK MANUAL INTERVENTION LEGALITY éROUTINE TO TEST FOR MANUAL INTERVENTION LEGALITY. éINPUT: NONE . é éOUTPUT: CARRY 0 1 MANUAL INTERVENTION NOT ALLOWED MANUAL INTERVENTION IS OK SIDE EFFECTS: A MESSAGE IS D ISPLAYED WARNING THAT TEST IS NOT EXECUTED I F MANUAL INTERVENTION IS NOT ALLOWED. 020500 020500 2810 020504 020504 2811 020506 020506 2812 020510 020510 020514 020520 020522 020524 2813 020530 2814 020532 2815 2816 020534 2817 CHKMAN:: 104450 045 sSAVE THE REGISTERS TRAP CSMANI gEgHPLET$‘1S 103411 012746 012746 010600 104417 062706 000241 000207 SAVREG MANUAL 1%: PRINTF MOV MOV MOV TRAP ADD cLC RTS NOMAN: _ASCIZ 020534 000001 000004 116 045 .even #NOMAN #NOMAN, = (SP) #1,-(SP) SP,RO CSPNTF #6,SP PC 'INXA t++ Manual sSEE IF MANUAL INTERVENTION 0K sBRANCH IF ALLOWED ¢PRINT THE WARNING MESSAGE JCLEAR CARRY FOR ERROR JRETURN Intervention not Allowed - Test Aborted ve+* TSV3 - GLOBAL AREAS MACRO M1113 25-MAY-82 09:19 ENVIRN = SETUP FREE DIAGNOSTIC SPACE .SBTTL PAGE 66 ENVIRN SEQ 0107 - SETUP FREE DIAGNOSTIC SPACE * SUBROUTINE TO SET-UP VARIOUS ENVIRONMENTAL PARAMETERS. 2823 020630 020630 2824 020632 2825 020636 2826 020644 2827 020650 2828 020656 2829 020662 2830 020670 2831 020672 2832 020674 2833 020700 2834 020704 2835 020710 2836 020714 2837 020716 2838 020722 2839 020724 2840 020730 2841 020734 2842 020736 2843 020740 2844 020744 2845 020750 2846 020754 2847 020756 2848 020762 2849 020764 2850 020766 2851 020772 2852 021000 2853 021002 021002 021006 021012 021014 021016 2854 021022 2855 021024 2856 021030 2857 021032 021032 021036 021042 021044 021046 2858 021052 2859 104431 010037 062737 011037 162737 013702 162737 005302 001373 013700 063700 162700 010037 000240 012701 010102 062702 004737 103001 000445 013701 062701 012702 005212 013703 020103 001017 005237 042737 000240 ENVIRN: MEMORY 003124 000092 003126 000004 002012 000007 003126 SuB 108: 177520 000001 177520 15$: 003144 170000 000004 003146 012746 012746 010600 005645 000001 062706 000207 000004 sus DEC BNE MoV JSR 8CC BR MOV ADD Mov INC 177520 MOV CMP BNE INC 8IC NOP 002120 PRINTF MOV MOV MOV TRAP ADD 20$: 40$: RO CSMEM RO,FREE #2 FREE (R6) FRESIZ MOV ADD SUB MOV NOP MOV MOV ADD 000002 016376 062706 104417 003126 177520 005554 000001 000413 005237 000240 003124 003124 003126 000002 003130 012746 012746 010600 104417 TRAP MOV ADD MOV BR INC NOP PRINTF MOV MOV MOV TRAP ADD RTS s GET 1ST FREE ADDRESS... :...AND WORD COUNT, GET NUMBER OF UNITS TAKE AWAY 7 WORDS PER UNIT FREE ,RO FRESIZ,RO #2,R0 RO,FREEHI sGET FIRST FREE ADDRESS ¢POINT TO LAST FREE ADDRESS :BACKUP 1 WORD :STORE LAST FREE ADDRESS AR ARARNNANANRARAANAAAAANARDAARANANARANRANNNADY #BDVP(R,R1 R1.R2 #2.R2 PC,XNXM 158 40$ B8DVPCR,R1 #1,R1 #8DVP(CR,R2 (R2) BDVPCR,R3 R1,R3 208 T23A #170000,LSHIME #M8186 #MB186,~(SP) :GET BDV11_PCR ADDRESS :COPY T0 R? :SET THE RANGE sSEE _IF WE HAVE ONE cOK TO SET FLAGS RETURN WITH FLAGS CLEAR :SAVE PCR CONTENTS sADD ONE TO IT :GET 8DV11 PCR ADDRESS sTRY TO WRITE TO IT sGET RESULTS sDID 1T CHANGE? :NO, MUST BE 11/238 :SET THE FLAG sSUPERVISOR COULD BE WRONG ;BR 408 FOR RELEASE sTELL THE SYSTEM TYPE #1,-(SP) SP,RO CSPNTF #4,SP 40$ 1238 #M8189 #MB8189,~(SP) #1,-(SP) JRETURN ;SET THE FLAG sBR 408 FOR RELEASE sTELL THE SYSTEM TYPE SP,RO CSPNTF #6,SP PC JRETURN TSV3 = GLOBAL APEAS MACRO M1113 25-MAY-82 09:19 = SETUP KT11 MEMORY MANAGEMENT REGISTERS KTINIT s+ .SBTTL PAGE 67 SEQ 0108 KTINIT - SETUP KT11 MEMORY MANAGEMENT REGISTERS *ROUTINE TO INIT KT-11 L4 ¢ - 2888 021170 2889 2890 021172 2891 021176 2892 2893 021200 2894 2895 021204 2896 KTINIT: 003132 003134 002120 001577 000004 021172 000004 177572 002120 000177 000004 172340 077406 KTFLG KTENABLE LSHIME , #1577 MOV MOV SNERRVEC,RO #28, JFERRVEC BLOS ST NOP MOV 003132 003132 177740 CLR CLR CMP 177600 LSHIME .KTFLG #1177 ,KTFLG CLR RO MOV MOV MOV ADD CMP 000200 002000 a¥SRO BIC MOV 1$: 9% RO, BNERRVEC #K1PARO,R1 #77406,-40(R1) RO, (R1)+ #200,R0 72.:2000 BNE MOV #177600,~(R1) BR 9% 012716 000002 021200 28: MOV #6$, (SP) 010037 000004 6$: MOV RO,3#ERRVEC 9s: RTS PC 000207 RTI P PN PN IS TN TN 005037 005037 023727 101444 013700 012737 005737 000240 013737 042737 010037 005000 012701 012761 010021 062700 020027 001367 012741 000405 LR TR FRE FE FE FE FE FIE FE FI PR FE POV WWWNN = =2 OO SNONNNONONSONSNOO 0000000000 =4 NIRINININININININNININ NININNNINININININ NN 00 0D 00 00 00 0O 00 0o 0O OO 00 0o OO 0D OO 00000000~ N~ NN VS WN=O OV~ [« 3V, 2868 021054 2869 021054 Y [4 INIT >28K MEMORY FLAG INIT TEST >28K FLAG ggf ENOUGH MEMORY (>28K)? SAVE OLD ERR VEC PTR. SET ERR VEC PTR, GOT KT11? (TRAP_IF NO). YES. SET KT FLAG. RESTORE OLD ERR VEC PTR, RO = AR DATA. R1 = Kl REGS PTR, SET DESCRIPTOR REG. SET KIPAR REG. BUMP AR DATA BY ‘'4K‘‘, AT '170'%? NO. YES. SET KTPAR7 FOR 1/0. SET UP RETURN RTI TO NEXT LOCATION RESTORE OLD ERR VEC PTR. — TSV3 = GLOBAL AREAS KTINIT <« SETUP KT11 MACRO M1113 25-MAY=-82 09:19 MEMORY MANAGEMENT REGISTERS PAGE 68 SEQ 0109 2898 %ggg X N SUBROUTINE TO SEYT EXTENDED FEATURES SWITCH %38} : Requires that SOFINIT and WRTCHR have been done previous to call. 2903 2904 2905 2906 2907 2908 2909 2910 %3}5 021206 : JINPUTS: N RS CURRENT UNIT NUMBER ;OUTPUTS: ] . : The Extended Features Switch is set. : .= INVERT:: 2913 021206 2914 021212 2915 021214 2916 021222 2917 021230 005737 001020 012737 012737 012737 002226 2919 021244 2920 021250 2921 021254 2922 . 2923 ' 012704 004737 000207 021260 010662 2918 021236 ggglg 012737 : 100206 021270 000006 100010 1ST BNE MOV MOV MOV EXTFEA 18 #100206,CMDPKT #USMBK , CMDPK T +2 #6,CMDPKT+6 : : : : ; 1$: MOV JSR RTS #CMDPKT R4 PC,WRTCHR PC : SET CMDPKT INTO R4 ;DO IT : RETURN H COMMAND PACKET. 021260 021262 021266 021270 MOV %g%g 021260 = 2928 021260 2929 021262 2930 021264 sgg; 021266 000000 000000 000000 900000 CMDPKT:: O 0 0 0 2933 53§§ 2936 021270 2937 021272 2938 021274 ggzg . 000000 000000 000000 #100010, WSMBK <. +3>R177774 1S SWITCH SET? YES,EXIT STAGE RIGHT!(or the next one outa town') WRT SUB=SYS MEM (MD MSG BUF ADDR BYTE COUNT : INVERT THE SWITCH JMUST BE ON MOD 4 BOUNDRY. J1ST ;¢ND s3RD J4TH WORD WORD WORD WORD IS IS ]S IS TSOS COMMAND. THE BUFFER LOW ADDRESS. THE BUFFER HIGH wDDRESS. THE BYTE/RECORD/FILE COUNT. WRITE SUB-SYSTEM MEMORY CHARACTERISTIC BLOCK. WSMBK:: 0 0 0 .EVEN :1ST WORD:: SEL 0 :2ND WORD:: SEL 2 :3RD WORD:: SEL & TSV3 ~ GLOBAL AREAS KTINIT =~ SETUP KT11 MACRO M1113 25-MAY=-82 09:19 MEMORY MANAGEMENT REGISTERS 2942 ¢ PAGE 69 SEQ 0110 %322 : 2945 2946 2947 2948 : : INPUTS: SOUTPUTS: : The NXMFLG is set if we can test. gggg . : 2951 %gg% 021276 005037 005037 005037 005737 001407 023727 103406 004737 2964 021342 2965 021346 2966 021350 2967 021356 2968 021360 2969 021366 2970 021370 005737 001413 023727 101023 023727 103403 004737 2971 021374 2972 021376 2973 021404 2974 021406 2975 021412 2976 021420 2977 021424 2978 021426 2979 021430 021430 021434 021440 021442 021444 ggg? 021450 The NXMLO and NXMH] addresses are setup. MEMCK : : 2954 021276 2955 021302 2956 021306 2957 021312 2958 021316 2959 021322 2960 021324 2961 021332 2962 021334 2963 021340 SUBROUTINE TO CHECK WETHER OR NOT WE'LL TEST NXM 000427 000411 023727 103410 004737 003136 003140 003142 003146 002120 007777 021452 003144 1$: 002120 005777 002120 003777 2%: 021452 002120 021452 062737 005237 000411 000410 000077 003136 012746 012746 010600 104417 062706 000207 005460 000001 001577 003142 4$: 138: 14$: SAVREG CLR CLR CLR ST BEQ CMP BLO JSR NXMFLG NXMLO NXMH ] 1238 1$ LSHIME #7777 28 PC NXMTST ;SAVE THE REGISTERS :CLEAR THE FLAG sCLEAR THE TEST ADDRESS LO JCLEAR THE TEST ADDRESS HI xs IT A 1172382 NO : GREATER THAN 128K NO serup THE ADDRESS TST BEQ CMP BHI CMP BLO JSR T23A 43 LSHIME #5777 148 LSHIME #3777 43 PC NXMTST 1S 1T A 11/23A :NO GREATER THAN 96K ;YES,23A/7238 WITH 128K MEMORY *GREATER THAN 64K BUT LESS THAN 92K? :NO, CHECK 24K :SETUP THE ADDRESS CMP BLO JSR LSHIHE 2ns77 148 PC NXMTST ;GREATER THAN 24K BUT LESS THAN 64K? JNO, TELL THEM AND EXIT WITH FLAG CLEAR ;SETUP THE ADDRESS BR B8R ADD INC B8R B8R 13$ 13§ #77 ,NXMH] NXMF LG 15¢ 15% SSET THE FLAG AND EXIT ;FOOL THE 11702 & :SET THE FLAG JEXIT :NOP FOR PRINTOUT 15%: PRINTF MOV MOV MOV TRAP ADD RTS %ggg o+ : SUBROUTINE TO SETUP THE NXM ADDRESS FOR TESTING %ggg ;0UTPUTS :NXMLO NXMH] 000004 2982 2983 2989 2990 021452 2991 021456 2992 021462 2993 021466 013701 062701 042701 010102 002120 000200 000177 - NXMTST: MOV ADD BIC MOV #NOMEM #NOMEM, - (SP) #1,-(SP) SP,RO CSPNTF 86 ,SP PC *SET THE FLAG AND EXIT LSHIHE R1 #200.R n7? Rl R1,R2 11/03 JTELL THEM & EXIT =««NO PRINT*taee ;RETURN :SETUP WITH NXM ADDRESS :GET TOP OF MEMORY sMAKE IT [/0 BLOCK OR OTHER NXM ;RESAVE RESULTS TSV3 - GLOBAL AREAS KTINIT < SETUP KT11 2994 2995 2996 2997 0215064 2998 2999 3000 3001 021534 3002 021540 3003 021544 3004 3005 3006 3007 3008 021546 MACRO M1113 25-MAY-82 09:19 MEMORY MANAGEMENT REGISTERS 060006 010137 000012 042702 010237 000207 003140 177700 003142 .REPT ASL .ENDR MOV .REPT ASR .ENDR BIC MoV RTS ENDMOD PAGE 69-1 6 R1 SEQ 0111 sPUT IN PLACE FOR XFER R1,NXMLO 10. R2 sSAVE TEST ADDRESS LOW ¢PUT IN PLACE FOR XFER #177700,R2 R2,NXMH] PC sDON'T WANT ILA! +SAVE TEST ADDRESS HIGH sRETURN 1 1 oo Voo~ TSV6 = MISCELLANEQUS SE CTIONS MACRO M1113 25-MAY-82 09:19 KTINIT = SETUP KT 1 MEMORY MANAGEMENT REGISTERS 021546 021546 TSV4:: 9 I PAGE 71 LTITLE TSV4 - MISCELLANEOUS SECTIONS BGNMOD TSV4 SEQ@ 0112 TSV4 - MISCELLANEOUS SECTIONS PROTECTION TABLE MACRO M1113 18 19 021546 021546 20 021546 21 021556 22 177777 177777 177777 25-MAY-82 09:19 LSPROT:: J PAGE 9 72 SEQ 0113 .SBTTL PROTECTION TABLE BGNPROT ézgzgor -1, =1, =1, =1 JNO DEVICE PROTECTION REQUIRED. TSV4 - M] SCE LLA EOUS SECTIONS INITIALIZ ES ECrY MACRO M1113 25-MAY-82 09:19 .SBTTL K 9 PAGE 73 SEQ 0114 INITIALIZE SECTION s sTHE INITIALIZE SECTION CONTAINS THE CODING THAT IS PERFORMED sAT THE BEGINNING OF EACH PASS. SIF *'START'' OR "RESTART'', SET QUICK-PASS FLAG AND BUS-INIT. :IF "'CONTINUE", NOTHING IS REQUIRED. INSERT TEMPORARY JUMP TO ODT 37 021556 021556 38 021556 39 021562 40 021566 41 021574 42 021600 43 021604 44 021610 021610 021614 45 021616 021616 46 021620 47 021626 48 021630 49 021634 50 021636 51 021642 52 021644 53 021650 54 021652 55 021660 56 021662 57 021666 021666 021672 58 021674 021674 59 021676 O 005C37 005037 012737 005037 005037 005037 002226 003136 006360 003154 003134 002302 012700 104447 000036 103023 023737 103070 005737 100472 013701 006301 005761 001516 032761 001060 002202 LSINIT:: 40$: 002200 002012 TST 002202 003176 18: 000040 104447 103031 104433 081716 ERTABL (R1) NXTU INIT .WORD READEF Mov TRAP CSEXIT sSET UP PRIMARY MESSAGE FOR REPLACEMENT sCLEAR *'SOFT INIT'' FLAG sCLEAR TEST ABOVE 28K FLAG sCLEAR RAM SIZE FOR RAMERR ROUTINE sUNIT IN RANGE? sBR IF NO. sDROPPED UNIT? :BR IF YES +DROPPED? :DO NOTHING IF '°CONTINUE'’. L10030-. #EF .NEW #EF .NEW,RO CSREFG sTAKE NEXT UNIT IF NOT NEW PASS. BCOMPLETE 2% 8CS 28 103404 012700 8Ir BNE EXIT UNITN,R1 R1 ERTABL (R1) SETV BNCOMPLETE NXTU 8cC NXTU READEF #EF.START MoV #EF .START RO TRAP CSREFG 103052 012700 104447 DUFLG NXTU TRAP 000035 #EF.CONTINUE #EF . CONTINUE RO CSREFG BMI MOV ASL TST BEQ 003176 000416 EXTFEA NXMFLG #EPRT1,EPRTSW SIFLAG KTENABLE RAMS 12 BNCOMPLETE 1% 8CC 1$ CMP UNITN,LSUNIT BHIS 4$ 104432 012700 104447 CLR CLR MOV CLR CLR CLR READEF MoV TRAP 003112 040000 BGNINIT READEF MOV TRAP 000037 2%: #EF .RESTART #EF .RESTART RO CSREFG BNCOMPLETE 31$ BCC M} BRESET TRAP CSRESET ;1ST PASS, BUS-INIT... sBUS RESET. TSV4 = MISCELLANEOUS SECTIONS INITIALIZE SECTION 65 021720 66 021724 67 021730 68 021734 69 v 7 72 021740 73 021744 76 021744 75 021752 76 77 78 79 021756 021762 021766 021770 80 021774 81 021776 82 022000 gz 022004 85 022010 86 022010 87 022016 88 022022 022022 89 022024 90 022030 91 022036 92 022040 93 022046 94 022050 022050 95 022052 96 022054 97 022054 98 022062 99 022064 100 022070 101 022072 022072 065037 005037 005037 005037 003400 012737 004737 004737 012700 005020 020027 103774 000404 177777 020630 021054 003176 002204 022054 012737 005037 177777 002220 023727 101752 005737 001747 104421 105 022102 022102 106 022104 }8; 022106 104424 000741 022106 022112 110 022114 022114 111 022116 112 022122 113 022126 114 022130 002204 31s: 002202 002202 002202 002012 177777 003112 001343 013700 104442 103342 005037 005237 012001 010137 002012 002220 208: 308: 104444 000240 032700 109 022106 : : : 003376 005037 000137 102 022074 }82 022100 002214 002222 002144 003146 005037 104422 005237 023737 103423 012737 000401 MACRO M1113 000001 003112 002220 002206 TSTCNT FATFLG T23A 1238 #340,-(SP) #208,-(SP) 0.007 SKIPT MoV JSR JSR MoV CLR cMP BLO BR #-1,QvP PC,ENVIRN PC KTINIT #ERTABL ,RO (RO) + RO,#ERTABE 308 48 CLR JMP SETU: ¢:RETURN TO DEBUGGER ;. 3ENTER THE DEBUGGER sCLEAR THE SUBTEST ''SKIPPER'’ :...QUICK VERIFY,.. sSET ENVIRONMENT. sINITIALIZE KT MEMORY MANAGEMENT sCLEAR THE ERROR TABLE SINIT UNIT NUMBER... sCLEAR COUNT OF DEVICES RUNNING C$BRK UNITN UNITN,LSUNIT SETU #-1,DUFLG 18 C$DCLN LSUNIT M NEWPAS DEVCNT #1SR,RO DORPT TRAP BR CSDRPT NEWPAS s...AND SET NEXT UNIT NUMBER. sABORT, NO MORE UNITS. sHOW MANY UNITS SELECTED? sBR _IF ONLY 1 sARE ANY STILL RUNNING? :BR IF NO CSRFLA NEWPAS GPHARD UNITN,RO MoV UNITN,RO TRAP CSGPHRD BNCOMPLETE NXTU 8cc NXTU MoV sNUMBER OF TESTS RUN IN PASS sCLEAR FATAL ERROR COUNT JCLEAR 11/23A FLAG sCLEAR 11/238 FLAG #=1,UNITN DEVCNT BIT CLR INC MOV SEQ 0115 :GO REPORT THE STATUS NEWPAS RO BNE 9 QvP PASRPT BEQ RFLAGS TRAP 108: L PAGE 73-1 CLR CLR CLR CLR MoV Mov JMP CLR 4$: NEWPAS: MOV CLR NXTU: BREAK TRAP INC CMP BLO MoV BR DOCLN TRAP 118: NOP PASRPT: CMP BLOS TST 000100 002202 25-MAY-82 09:19 DUFLG DEVCNT (RO) +,R1 R1,CSRADOR sSHOULD WE PRINT STATISTICS ;BR IF NO sGET UNIT N P-TABLE POINTER. sBR IF UNIT NOT AVAILABLE. :CLEAR 'DROPPED'* FLAG. ;GET 1ST REGISTER ADDRESS. ;ADDRESS OF REGISTERS OF UNIT UNDER TEST TSV4 = MISCELLANEOUS SECTIONS INITIALIZE SECTION MACRO M1113 25-MAY-82 09:19 012001 MOV MOV MOV 1$: N9 PAGE 73-2 (RO) + ,R1 (RO) ,R2 R2,IPR] R1,IVEC MOV MOV MOV #INTR,(R1)+ TST QvP 8EQ SEQ@ 0116 sGET VECTOR ADDRESS. sGET INTERRUPT PRIORITY sSET INTERRUPT PRIORITY. sSET INTERRUPT VECTOR POINTER... s...VECTOR... s++-AND PRIORITY, IPR],(R1)+ 5% ;1ST PASS ?? sNO, SKIP THE PASS 1 STUFF. :1ST PASS, CHECK THAT DEVICE ADDRESSES ARE VALID, AND :THAT THE DISPLAY STATUS IS PROPERLY INITIALIZED. 013701 006301 052761 005037 023727 101416 104421 0 022274 002202 100000 005772 002012 032700 001412 001000 013746 012746 012746 010600 104417 062706 002202 005037 013701 010102 062702 004737 103005 010137 012737 Mov 003176 UNITN,R1 R1 #BIT15,ERTA (R1) BL EXTA 000001 M LSUNIT. 108 RO CSRFLA #PNT ,RO 10% #PUNIT,UNITN UNITN,=(SP) 022304 :SAY DEVICE RUNNING sCLEAR ERROR EXTENSION FLAG. JARE WE TESTING MULTIPLE UNITS? ¢BR IF NO. ;YES == GET OPERATOR FLAGS. sSHOULD WE PRINT UNIT #? sBR IF NOT. sPRINT THE UNIT # 000002 000006 108: 003114 002206 000002 016376 003114 177777 CLR MOV MOV ADD NODEV CSRADDR,R1 R1,R2 #TSSR,R2 MOV MOV R1,NODEV #-1,DUFLG JSR 8cC 003112 2$: PC,XNXM 2$ sADDRESS OF FIRST REGISTER ¢START OF REGISTERS sADDRESS OF TSSR REGISTER sTEST BOTH CONTROLLER REGISTERS... :...AND BR IF ALL OK. sFLAG DEVICE AS NON-EXISTENT sDROP THIS UNIT. SFINALLY, SET CPU PRIORITY AND WE'RE DONE. 022274 022274 022302 156 157 022304 158 012790 10444’ §s: 000000 L10030: 1044611 045 116 045 PUN]IT: SETPRI MOV TRAP ENDINIT #PRI00 #PR100,RO cENABLE INTERRUPTS. C$SPRI TRAP CSINIT <ASCIZ /XNINXAvtsvs TESTING UNIT XD2XA tenne/ .EVEN TSv4 = MISCELLANEOUS SECTIONS ADD AND DROP UNITS SECTIGNS MACRO M1113 25-MAY-82 09:19 160 161 .SBTTL : THE ADD-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE i e b bl b ADD AND DROP UNITS SECTIONS ¢ TO BE (A) ADDED TO THE TEST LIST FOR THE FIRST TIME, H OR (B) RE~INSERTED IF IT HAD BEEN PREVIOUSLY DROPPED. = ~N~N~worOr N=00V0 — SEQ@ 0117 s bt OO o ~NO N W gy 162 N_9 PAGE 74 LSAU:: 010001 022356 052363 052761 042761 022372 022374 022400 022404 022406 022410 010046 012746 012746 010600 104417 062706 000006 022414 022416 022420 000167 000026 045 116 022446 022446 022446 100000 040000 003176 RO,R1 R1 : GET UNIT TO BE ADDED : MAKE IT A WORD INDEX B8IC #40000,ERTABL (R1) : CLEAR THE 'DROPPED'’ BIT MOV #1$,-(SP) PRINTF MOV 022420 000002 ] 5$: L10031: 104452 MOV ASL BIS 003176 045 BGNAU MOV MOV TRAP ADD EXIT .WORD JWORD LASCIZ -EVEN #100000,ERTABL (R1) #1$,R0 RO,~(SP) TRAP : SET THE “'ACTIVE' BIT #2,<(SP) SP.RO CSPNTF #6,SP AU JSJMP L10031-2-. /INYA UNIT %DXA ADDED/ ENDAU +e (RO) ; UNUSED. C$SAU THE DROP=UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE TO BE REMOVED FROM THE TEST LIST. SUPVSR DOES THE °‘DROPPING''. THIS IS JUST TO TELL THE MAN. *'DROPPED'* UNITS ARE RE-SELECTED ON OPERATOR ‘'STA'* OR *‘ADD'* COMMAND, OTHERWISE REMAIN INACTIVE. THE ‘DISPLAY'' COMMAND WILL PRINT ALL DROPPED UNITS, AND THE P~TABLES OF WHICH ARE STILL ACTIVE. THOSE UPON ENTRY, RO CONTAINS THE UNIT TO BE DROPPED. 189 022450 190 191 192 193 194 022450 022450 022456 022460 022462 022470 012737 01000! 006301 052761 000240 022476 022500 022504 022510 022512 022514 010046 012746 012746 010600 104417 062706 022520 022522 000167 000030 196 022520 177777 140000 000240 022524 000002 000006 003112 003176 00240 L$DU:: BGNDU MOV MOV ASL #-1,DUFLG RO.R1 R1 0140000 ERTABL (R1) 240 240,240 PRINTF Mov MOV MOV MoV TRAP ADD EX1T .WORD .WORD ~#1$,RO RO, =(SP) #1%,-(SP) #2,-(SP) SP,RO CSPNTF #6,SP bu JSUMP L10032-2-. ¢ SAY DROPPED s MMMM ADD AND DROP UNITS SECTIONS }gg 022524 045 116 199 022554 200 022554 022554 MACRO M1113 045 25-MAY-82 09:19 18: L10032: 104453 [ .gegfil /2INYA B 10 PAGE 741 UNIT XDXA DROPPED/ ENDDU TRAP csbu 585 ; AUTO-DROP CODE SECTION. 203 022556 022556 204 022556 LSAUTO:: 205 022562 206 022566 207 022572 208 022574 022574 022600 022602 022606 022610 022614 022616 022622 209 022624 210 022626 211 022630 212 022634 213 022634 022634 022634 013705 002206 004737 103420 016250 012703 012727 000000 013727 000000 005367 001375 005367 001367 005303 001357 004737 104461 000550 108: 000372 002116 177772 177756 017202 208: L10033: SEQ 0118 BGNAUTO Mov MOV JSR BCS DELAY MOV .WORD Mov LWORD DEC BNE DEC BNE DEC BNE JSR CSRADDR RS ;POINT TO DEVICE REGISTER PC,WAITF 208 250, #250.,(PC)+ 0 LSDLY,(PC)+ O -6(PC) =4 =22(PC) .=20 R3 108 PC,CKDROP cWAIT FOR SSR TO SET ;LEAVE WHEN SSR IS SET JWAIT FOR .25 SECONDS #360. RS ENDAUTO TRAP cENOUGH TIME FOR 2400°' REEL TO REWIND ;BUMP COUNTER DOWN ;KEEP GOING ;TRY AND DROP UNIT ¢ UNUSED. CSAUTO - TSV4 - MISCELLANEOUS SECTIONS — TSV4 ~ MISCELLANEOUS SECTIONS ~MACRO M1113 [AS1,S 1, 1,1, N1, ¥ PON) b b —d b 2 OOVB®~NO N CLEAN-UP AND REPORT CODING SECTIONS 25-MAY-82 09:19 c 10 PAGE 75 SEQ@ 0119 .SBTTL CLEAN-UP AND REPORT CODING SECTIONS XX : 221 222 022636 022636 223 022636 226 022642 225 022646 226 227 228 022650 229 022656 230 022662 231 022662 THE CLEANUP CODING SECTION CONTAINS THE CODING THAT IS ; EXECUTED AT THE END OF EACH PASS (OR SUB=PASS). : USE TO RETURN DEVICE UNDER TEST TO A NEUTRAL STATE. 013705 005737 100405 012765 004737 BGNCLN LSCLEAN:: 002206 003112 000000 016250 MOV TST BM! 000002 18 MOV JSR 28: ENDCLN L10034: 104412 TRAP CSRADDR,RS DUFLG 18 #0,TSSR(RS) PC.WAITF JPOINT TO DEVICE REGISTER 2 'DROPPED’* FLAG IS SET ON... J.+.AND GROSS CONTROLLER FAULT... :...DON'T TRY TO XCT CLEANUP CODE. ;DO SOFT INIT CSCLEAN I4e 2 236 022664 022664 237 022664 022664 022670 022674 022676 022700 238 022704 239 022706 240 022710 241 022712 242 022716 243 022720 244 022722 245 022724 266 022726 247 022732 248 022734 249 022740 022740 022776 ; : THE REPORT CODING SECTION CONTAINS THE "PRINTS'' CALLS THAT GENERATE STATISTICAL REPORTS. LSRPT:: 012746 012746 010600 023126 000001 062706 010246 010346 010446 012704 005003 011402 001467 000004 104416 100066 032702 001015 042702 010246 010346 012746 012746 010600 104416 062706 000446 020227 001012 010346 012746 18: 040000 170000 #DEVSUM #DEVSUM,-(SP) ADD MOV MOV MOV MOV #6,SP R2,-(SP) CLR MOV 2$: SP,RO CSPNTS R3.-(SP) R4,.-(SP) #ERTABL R4 ; R3 GET START OF ERROR TABLE. : CLEAR UNIT NUMBER 22 (R4) .R2 ; GET ERROR TABLE ENTRY & TEST IT. BIT BNE BIC #B8IT14,R2 2% #°C7777 ,R2 : WAS UNIT DROPPED? : BR IF YES s GET ERROR COUNT FIELD MOV #DEVONL ,~(SP) MOV MOV TRAP ADD 000010 #1,-(SP) ggf PRINTS MOV MOV 023163 000003 023233 PRINTS MOV MOV MOV TRAP 003176 160000 BGNRPT B8R cMp #DEVONL ,R3,R2 R2,-(SP) ; PRINT R3.-(SP) #3,-(SP) SP.RO CSPNTS #10,SP (33 R2.#160000 3s BNE PRINTS #DEVNXR,R3 MOV #DEVNXR,=(SP) MOV : ZERO IF UNIT NOT RUN R3,-(SP) s WAS UNIT NON-EXISTENT? ; BR IF NO 023002 023006 023010 023012 012746 010600 104416 062706 000006 255 023020 020227 160001 170000 308: 023376 000003 000010 000002 48: 003376 L10035: 045 040 &H o 045 045 045 045 045 b 104425 (=] 272 023163 273 023233 274 023315 275 023376 276 277 278 023446 279 280 020427 103701 012604 012603 012602 000006 b 269 270 271 023126 010246 010346 012746 012746 010600 104416 062706 062704 005203 3s: 023315 000002 b 266 023120 267 025122 268 023i24 023124 023124 010346 012746 012746 010600 104416 062706 000414 042702 b 257 023026 023026 023030 023034 023040 023042 023044 258 023050 259 023052 260 023056 023056 023060 023062 023066 023072 023074 023076 261 023102 262 023106 263 023110 264 023114 265 023116 001012 d 256 023024 000431 000002 COOO— —d b —d —d ON 254 023016 040 040 DEVSUM: DEVONL: DEVNXR: DEVNRD: DEVDRO: D10 PAGE 75-1 ed 25-MAY-82 09:19 SEQ 0120 MOV MOV TRAP ADD #2,~(SP) SP.RO CSPNTS #6,SP CMP R2,#160001 B8R BNE PRINTS MOV MOV MOV MOV TRAP ADD BR BIC PRINTS MOV MOV MOV MOV MOV TRAP ADD ADD INC CMP BLO MOV MOV MOV ENDRPT 48 30$ #DEVNRD,R3 R3,~(SP) #DEVNRD, = (SP) #2.-(SP) SP.RO CSPNTS #6,SP /13 #°C7777.R2 #DEVDRO.R3,R2 R2,~(SP) R3.~(SP) #DEVDRO, = (SP) #3,-(SP) SP.RO CSPNTS #10,SP #2.R4 R3 R4, #ERTABE 18 (SP)+,R& (SP)+.R3 (SP)+.R2 s WAS UNIT NOT READY AT STARTUP? ¢ BR IF NO. : UNUSED. TRAP CS$RPT _ASCIZ .ASCIZ .ASCIZ .ASCIZ .23 /XNXADEVICE STATUS SUMMARY:IN/ /XA UNIT XD3ZA ONLINE, ERRORS = XDIN/ /XA UNIT XD3ZA DROPPED, NON-EXISTENT REGISTERIN/ /XA UNIT XD3ZA DROPPED, NOT READY AT STARTUPIN/ /%A UNIT XD3ZA DROPPED, ERRORS = XDIN/ ENDMOD - TSV6 = MISCELLANEOUS SECTIONS ~ MACRO M1113 CLEAN-UP AND REPORT CODING SECTIONS TSVS - HARDWARE TESTS MACRO M1113 CLEAN-UP AND REPORT CODING SECTIONS 25-MAY-82 09:19 1 2 9 10 023446 16 023446 24 TSVS PAGE 77 E 10 .TITLE TSV5 ~ HARDWARE TESTS BGNMOD TSV5 SEQ 0121 TSVS ~ HARDWARE TESTS TEST 1: INITIALIZE MACRO TM" 113 AFTER WRITt 25-MAY-82 09:19 CHARACTERISTICS 59 TEST s TEST DESCRIPTION: 30 n 32 %2 : : ; : %2 : TEST STEPS: 37 38 39 H : : 41 : H 62 43 : : 44 I~ 45 46 47 023446 023446 53 023446 56 023452 55 023456 56 023464 gg 023464 012700 004737 012737 024102 016510 000012 024356 59 023470 60 023474 012703 0127046 012764 002764 024040 63 023506 64 023512 65 023514 66 023516 023516 023520 023522 67 023524 004737 103405 010001 015774 68 73 023556 76 023560 75 023562 76 023562 103407 010001 78 023576 REPEAT FOR LOOPCNT BEGIN Do WRITE CHARACTERISTICS command. 1f the NBA bit in the TSSR register is NOT=0 then Print Error. Write to TSSR register to soft END It controller RAM 000006 T13L00P: s 104455 000145 024267 012046 005237 002222 000000 016336 002222 initialize the controller 310-377 NOT=0 then Print Error T:: sASCII MESSAGE TO IDENTIFY TEST ;DO INITIAL TEST SETUP MOV JSR #TST1310,R0 PC,TSTSETUP #10.,L00PCNT ;PERFORM 10 ITERATIONS JSR PC,T13REST SET PACKET TO START-UP VALUES MOV MoV MOV #1STBLK+10. ,R3 #T13PACKET R4 ;START OF TEST DATA sGET THE ADDRESS OF COMMAND PACKET sSTART WITH MINIMUM ALLOWABLE VALUE JSR BCS MOV ERRDF PC,SOFINIT 108 RO,R1 ERRNO,SFIERR,SFIMSG SWRITE TO TSSR TO SOFT INITIALIZE :BR IF SOFT INIT OKAY ;SAVE CONTENTS OF TSSR ;DEVICE FATAL DURING IN]IT TRAP CSERDF .WORD 100 .WORD SFIERR .WORD SFIMSG MOV #8. ,PKBCNT(RS) 012034 005037 010465 004737 023562 023564 023566 023570 77 023572 000010 002216 104455 000144 003652 69 023526 70 023532 71 023536 72 023542 This test verifies that a Hardware Initialize command invoked after a Write Characteristics command sets up the Command, Message and Characteristic image blocks in the controller ram correctly. BGNTST 004737 g} 85%282 1: INITIALIZE AFTER WRITE CHARACTERISTICS g sg 40 F 10 SEQ 0122 .SBTTL I PAGE 78 ;Do WRITE CHARACTERISTICS command. 108: CLR MOV JSR FATFLG R4 ,TSDB(RS) PC,CHKTSSR FORCERROR 12% 128: 8CS 15% MOV RO,.R1 NEXT.ERRNO ERRDF ERRNO,T13SSR,PKTSSR 15%: ckLoop INC FATFLG sCLEAR FATAL ERROR FLAG sSET THE PACKET AL)DRESS TO EXECUTE JWAIT FOR SSR TO SET .88DFORCE ERROR IF FORCER=1 :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP LWORD LWORD .WORD cSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET CSERDF 101 T13SSR PKTSSR TSVS = HARDWARE TESTS ~ MACRO M1113 TEST 1: INITIALIZE AFTER WRITE 023576 79 023600 80 023604 81 023610 82 023614 gz 023616 104406 016501 012702 032701 001402 052702 100 023700 101 023700 023700 023702 023706 102 023706 103 104 023710 105 023714 106 023716 107 023722 108 023726 109 023732 110 023736 111 023742 112 023752 113 023754 114 023756 115 023756 023756 023760 023762 023764 116 023766 117 023772 023772 118 023774 023774 023776 10 TSSR(RS) ,R1 #SSR,R2 #OFL ,R1 25% #OFL ,R2 TRAP JGET THE CONTENTS OF TSSR CSCLP SJEXPECTED CONTENTS OF TSSR ;1S OFF=-LINE BIT SET ? sBRANCH IF NOT OFF-LINE sSET OFF=-LINE IN EXPECTED DATA :1f the NBA bit in the TSSR register is NOT=0 then Print Error. 258: 27%: FORCERROR 27% (MP R2,R1 BEQ 308 NEXT.ERRNO ERRR°D ERRNO,T13NBA,PKTSSR sNBA NOT ZERO 308: CxLOOP ;LOOP ON ERROR ? 020201 001404 104456 000146 026214 012046 104406 9 95 023654 96 023654 97 023660 98 023674 99 023676 MOV BIT BEQ 8IS 000100 PAGE 78-1 SEQ 0123 MOV 000200 000100 86 023622 023646 023650 92 023652 023652 CHARACTERISTICS 000002 85 87 023622 88 023636 89 023640 90 023642 91 023642 023642 023646 25-MAY-82 09:19 ;33D sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH TRAP .WORD .WORD .WORD CSERHRD 102 T13NBA PKTSSR TRAP CSCLPY ;Write to TSSR register to soft initialize the controller 004737 015774 40$: 103405 010001 42$: 104455 000147 0Nn3452 0:2034 012704 005002 105065 004737 010465 004737 116501 000310 000000 016336 000000 016336 000000 60$: 104406 104410 000426 62%: 002222 MOV RO,n1 NEXT.ERRNO ERRDF ERRNO,SFIERR,SFIMSG SWRITE TO TSSR TO SOFT INITIALIZE ;aab sBR JF SOFT INIT OKAY ;SAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT TRAP .WORD .WORD .WORD CSERDF 103 SFIERR SFIMSG :1t controller RAM 310-377 NOT=0 then Print Error 50s: 120102 001406 104455 000150 024155 015530 005237 JSR PC,SOFINIT FORCERROR 428 B8CS 508 708 : mov #310,R4 CLR R2 CLRB TSDB(RS) JSR PC,CHKTSSR MOV R4, TSDB(RS) JSR PC,CHKTSSR MOVB TSBA(RS) ,R1 FORCERROR 628 ,NOTSSR CMPB R1,R2 BEQ 708 NEXT.ERRNO ERRDF ERRNO,T13MEM,RAME XP ;START WITH LOC 310 sMEMORY EXPECTED SHOULD BE 000000 sSET MAINTENANCE MODE JWAIT FOR SSR READY sSELECT RAM ADDRESS sWAIT FOR SSR READY cREAD LOC CONTENTS .e8D :CHECK MEMORY FOR 000000 ;BRANCH IF DATA OKAY sMEMORY NOT ZERO AFTER INIT. INC CKLOOP FATFLG TRAP WORD LWORD .WORD sSET THE FATAL ERROR FLAG ESCAPE TS7T JEXIT ON FATAL ERROR CSERDF 104 T13MEM RAMEXP TRAP cscLpP TRAP .WORD CSESCAPE L10036-. — TSVS - HARDWARE TESTS ~ MACRO M1113 TEST 1: INITIALIZE AFTER WRITE 119 120 024000 121 024002 }gg 024006 124 125 024010 126 024014 127 024016 128 024022 005204 020427 001347 005737 001402 000400 017202 016456 130 024030 000137 023464 024034 024036 104432 000366 131 024034 132 024034 103002 828: 002222 004737 004737 129 024026 25-MAY-82 09:19 CHARACTERISTICS 1608: 1658 INC CMP PAGE 78-2 R4 R, #4600 SEQ 0124 ;LOOK AT NEXT RAM LOC. *AT TOP OF RAM ADDRESS SPACE BNE 60§ *BRANCH TILL ALL MEMORY TESTED ST BEQ JSR FATFLG 1608 ;ANY FATAL ERRORS ? *BRANCH IF NOT ;TRY TO DROP THE UNIT 165$ ‘BR IF YES JSR PC,CKDROP PC TSTLOOP JMP T13L00pP EXIT TST BCC :DONE ALL ITERATIONS? SLOOP UNTIL ITERATION COUNT DONE TRAP .WORD CSEXIT L 10036-. INITIALIZE 25-MAY-82 09:19 CHARACTERISTICS PAGE 79 110 SEQ 0125 i sLOCAL STORAGE FOR THIS TEST 024040 024040 024042 024044 024046 024050 000000 000010 024050 024050 024052 024054 024056 024062 000000 000016 000000 T13PACKET: .WORD .WORD WORD ‘WORD 100004 T13DATA: .gggg "WORD .WORD 024062 T13BFR: 100004 5130ATA s COMMAND PACKET FOR TEST sWRITE CHARACTERISTICS COMMAND, WITH ACK sADDRESS UF CHARACTERISTICS BLOCK 8. ;STARTING VALUE OF BLOCK SIZE 51sern ;ADDRESS OF MESSAGE BUFFER 14, :LENGTH OF MESSAGE BUFFER 0,0 b &~ N ) e Vi Onet OO —b — I, ——b VIR ~NNnND —— =t b — wnd .BLkwW 8. sLOCAL TEXT MESSAGES FOR TEST — —h 9 024102 160 024155 161 162 024214 163 024267 164 AFTER WRITE WN W NOVE NN 2OV NO NS WORNO — D ad ed D D d D d e D d D d nd and D oD ud e h VAN VIVIWAWNE BB 0SNwwN : MACRO M1113 on — TSVS ~ HARDWARE TESTS ;CHARACTERISTICS DATA BLOCK sMESSAGE BUFFER 1ST131D: T13MEM: .23%#2 LASCIZ 'Initialization After WRITE CHARACTERISTICS® ‘Incorrect RAM Data After Init’ T13NBA: .ASCIZ °'WRITE CHARACTERISTICS Command Not Accepted’ T13SSR: .ASCIZ ‘'Contents of TSSR Incorrect After WRITE CHARACTERISTICS® TSVS = HARDWARE TESTS ~ MACRO M1113 TEST 1: INITIALIZE AFTER WRITE 25-MAY-82 09:19 CHARACTERISTICS PAGE 80 J 10 SEQ 0126 166 }93 sROUTINE TO RESTORE COMMAND PACKET TO START=UP (DEFAULT) VALUES N 172 l- 173 174 175 024356 176 024356 177 0246362 178 026366 179 024372 180 024376 181 024400 182 024404 183 024410 184 024412 185 024416 186 024420 187 024422 188 024424 024424 024424 .EVEN T13REST: 012701 012721 012721 005021 012721 012721 005021 012721 005021 005011 000207 104401 024040 100004 024050 000010 024062 000016 SAVREG MOV MOV MOV (LR MOV MOV CLR MOV (LR CLR RTS ENDTST #T13PACKET R1 #100004,(R1)+ #T13DATA,(R1)+ (R1)+ #8.,(R1)+ JTI3BFR,(R1)+ (R1)+ #6.,(R1)+ (R1)+ (R1) PC sSAVE THE REGISTERS JSTART OF THE PACKET ;WRITE CHARACTERISTICS WITH ACK ;ADDRESS OF CHAR DATA BLOCK cEXTENDED ADDRESS :SIZE OF DATA BLOCK IN BYTES :ADDRESS OF MESSAGE BUFfFER ;LENGTH OF MESSAGE BUFFER :RETURN L10036: TRAP CSETST p——ee ~ TSVS = HARDWARE TESTS ~ MACRO M1113 TEST 1: INITIALIZE AFTER WRITE 25-MAY-82 09:19 CHARACTERISTICS 190 | }g; o .SBTTL PAGE 81 SEQ 0127 TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND 193 194 195 196 197 : ;THIS TEST VERIFIES THAT THE WRITE SUBSYSTEM MEMORY COMMAND WITH A *BSELO SELECT CODE OF O (NO-OP) EXECUTES CORRECTLY. IT ALSO SVERIFIES THAT A WRITE SUBSYSTEM MEMORY COMMAND WITH A NON=-2ERO ;MODE FIELD IS REJECTED. THE TEST FURTHER VERIFIES MICROPROGRAM 200 201 024426 024426 206 024426 207 024432 .= ;gg 208 024436 209 024444 210 024444 024444 024444 211 024446 212 024452 213 024456 024456 026462 214 024464 215 024464 024464 216 024466 217 024472 221 024474 222 024476 024476 024500 024502 024504 223 024506 224 024506 225 024512 226 024516 230 024520 231 024522 024522 024524 024526 024530 232 024532 233 024532 234 024536 235 024542 236 024546 237 024552 238 024556 239 024560 243 024562 024562 024564 :COMMAND DECODING AND HANDLING SEQUENCES. 012700 004737 012737 104402 004737 704737 012700 104441 104404 004737 103405 010001 026241 016510 000026 MOV JSR T14L00P: 026306 026344 58 015774 025600 010662 108: 010001 103407 010001 104455 000313 002222 002224 025160 000000 016336 118: #TST141D.RO PC,TSTSETUP #20.,LOOPCNT B8GNSUB PC,T14REST PC.T14RST #PRIOO BGNSEG 12:: ;ASCI1 MESSAGE TO IDENTIFY TEST :DO INITIAL TEST SETUP *PERFORM 20 ITERATIONS 3///77/7//7/777//7 BEGIN SUBTESTY ////77/7/777 12.1: TRAP (C$BSUB ;SET PACKET TO INITIAL VALUES *SET PACKET TO INITIAL VALUES JLOWER PRIORITY TO ALLOW INTERRUPTS MOV #PRI00,R0 TRAP C$SPRI 3555533>>3>>> BEGIN SEGMENT >>>>>>>>%>>> TRAP C$BSEG ;DO SOFT INIT OF CONTROLLER JSR BCS MOV ERRDF PC.SOFINIT 108 RO.R1 ERRNO,SFIERR,SFIMSG MOV JSR BCS #T14PK2, R4 PC.WRTCHR 11$ :SUBROUTINE NEEDS PACKET ADDRESS SI1SSUE WRITE CHARACTERISTICS :BR, IF COMMAND [SSUED OK *SAVE CONTENTS OF TSSR *WRITE CHARACTERISTISC FAILED TRAP CSERHRD .WORD 202 "WORD WRTMSG JWORD SFIMSG CLR CLR MOV MOV JSR FATFLG INTRECV #T14PACKET, R4 R&,TSDB(RS) PC.CHKTSSR ;CLEAR FATAL ERROR FLAG *CLEAR INTERRUPT RECEIVED FLAG SSET UP NEW WRT. SUBSYS MEM. COMMAND :SET THE PACKET ADDRESS *WAIT FOR SSR TO SET MOV ERRHRD 104456 000312 005056 012034 005037 005037 012704 010465 004737 MOV JSR JSR SETPR] 000000 104455 000311 003652 012034 012704 004737 103405 002216 BGNTST B8CS MOV ERRDF RO.R1 ERRNO,WRTMSG, SF IMSG 15$ RO,R1 ERRNO, T14SSR,PKTSSR ‘BR IF SOFT INIT = OK JSAVE CONTENTS OF TSSR JDEVICE FATAL ERROR DURING INIT TRAP .WORD .WORD WORD :BR IF CARRY SET (GOOD RETURN) CSERDF 201 SFIERR SFIMSG :SAVE CONTENTS OF TSSR :DEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 203 TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND 024566 024570 244 024572 245 024576 024576 246 024600 024600 024602 247 024604 248 024610 252 024612 025773 012046 005237 002222 104406 104410 000074 005737 001004 104456 000314 026063 012046 016501 012702 032701 002224 000002 000200 000100 000100 001404 104456 000315 025622 012046 004737 103405 15$: 011114 25$: 30$: 35$: 104456 024674 271 024676 024676 024676 272 273 274 024700 024700 024700 275 276 024702 277 024706 278 024710 279 024714 INC CKLOOP FATFLG ESCAPE SEG TST BNE ERRHRD 22$: 000316 004745 015510 PAGE 81-1 MOV MOV BIT BEQ BlS CMP BEQ ERRHRD L 10 INTRECV 228 ERRNO, T14NINT ,PKTSSR TSSR(RS) ,R1 #SSR,R2 #OFL ,R1 258 #OFL ,R2 R2,R1 308 ERRNO, T14NBA ,PKTSSR SEQ 0128 sSET FATAL ERROR FLAG cLOOP ON ERROR, ;BY=-PASS SUBTEST IF FATAL ERROR TRAP .WORD sDID AN INTERRUPT OCCUR ? JSR 8CS ERRHRD PC, CKRAM 59§ ERRNO,PKTRAM,RAMERR TRAP .WORD -WORD .WORD sGET THE CONTENTS OF TSSR sEXPECTED CONTENTS OF TSSR s1S OFF-LINE BIT SET ? ¢BRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY JF MATCH ¢NBA NOT ZERO TRAP 017202 TST 60$: CSESCAPE 10000$-. CSERHRD 204 T14NINT PKTSSR CSERHRD 205 T14NBA PKTSSR ¢CHECK RAM TO MEMORY sTHEY DON'T MATCH TRAP .WORD -WORD .WORD CSERHRD 206 PKTRAM RAMERR s <KL END SEGMENT <<<<<<<<<<<LK 100008 : ENDSUB BEQ JSR CSCLPT sRAM 0K GO ON TRAP CSESEG SNNANANANANANAANNYL END SUBTEST NNV L10040: 104403 002222 T14SSR PKTSSR sBRANCH IF YES 104405 005737 001402 004737 IF FLAG ?gIP .WORD .WORD -WORD ENDSEG 59¢. .WORD .WORD FATFLG sANY FATAL ERRORS PC,CKDROP ;TRY TO DROP THE UNIT 60% sBRANCH [F NOT ? TRAP C$ESUB - TSVS ~ HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND PAGE 82 M0 SEQ 0129 R STEST 2, SUBTEST 2 *CHECK THAT NON-ZERO MODE BITS BEING SET CAUSES *WRITE SUBSYSTEM MEMORY COMMAND TO BE REJECTED 024714 2 293 024724 294 024730 295 024734 296 024740 024740 297 298 024742 299 024746 303 024750 304 024752 024752 024754 024756 024760 305 024762 306 024762 307 024766 311 024770 312 024772 106402 TRAP 012700 000000 012704 004737 004737 025600 026306 026344 104441 OV ~NO NS W AN WNNN NN N PN =b b cad b o ==d b 025040 325 022842 025042 326 025044 025044 025046 5¢: 004737 103405 010001 015774 104410 000074 #T14PK2 R4 PC,T14REST PC,T14RST sRESTORE BCS ERRDF 010662 108: sGET TAE sRESTORE MOV TRAP #PRI100,RO C$SPRI ADDRESS OF COMMAND PACKET RACKET TO STARTING VALUES KET TO STARTING VALUES $25>5>>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> JSR MOV ERRHRD 002224 025160 007000 000000 016250 118: CLR MOV 8IS MOV JSR BCS MOV ERRDF 15%: PC,SOFINIT 108 RO,R1 ERRNO, SFIERR,SF IMSG ;DO SOFT INIT OF CONTROLLER ¢BR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP .WORD .WORD .WORD BCS 104455 104406 MOV JSR JSR JSR 104456 000320 005056 000321 025773 012046 cLOWER PRIORITY TO ALLOW INTERRUPTS MOV 000317 003652 012034 005037 012704 052714 010465 004737 103405 010001 #PRI0O TRAP 104455 004737 103405 010001 csBsue SETPR] BGNSEG 104404 012034 4 025032 I111171171717 BE?%NZSUBTEST 1111771117717 BGNSUB PC,WRTCHR 118 RO,R1 ERRNO,WRTMSG, SF IMSG INTRECV #T14PACKETR4 , #007000, (R4) R4, TSDB(RS) PC.WAITF 15$ RO,R1 ERRNO, T14SSR,PKTSSR CKLOOP ESCAPE sISSUE WRITE CHARACTERISTICS sBR, IF COMMAND ISSUEV OK :SAVE CONTENTS OF TSSR sWRITE SUBSYSTEM MEMORY FAILED TRAP .WORD .WORD -WORD CSERDF 207 SFIERR S IMSG CSERHRD 208 WRTMSG SF IMSG sCLEAR INTERRUPT RECEIVED FLAG sSET=UP WITH WRT SUBSYS MEM PACKET sNON-ZERO COMMAND MODE BITS sSET THE PACKET ADDRESS ¢WAIT FOR SSR TO SET s8R IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF -WORD 209 ;LOOP ON ERROR, SEG C$BSEG .WORD .WORD IF FLAG ;sxP :BY-PASS CHECKS IF FATAL ERROR TRAP .WORD T14SSR PKTSSR cscLP CSESCAPE 100008~. MACRO M1113 25-MAY-82 09:19 327 025050 328 025054 332 025056 025056 C25060 025062 025064 333 025066 334 025072 335 025076 005737 001006 104456 000322 026063 012046 016501 012702 032701 002224 000002 100206 000100 000100 339 025112 343 025114 025116 025116 025120 025122 104456 000323 025676 012046 345 0251264 346 025130 004737 103405 025132 025134 025136 025140 104456 000324 004745 015510 025142 352 353 025144 025144 025144 001404 011114 TST BNE ERRHRD 22%: 25$: 308: 35¢: Mov MOV BIT BEQ BIS CMP BEQ ERRHRD PAGE 82-1 INTRECV 22% ERRNO, T14NINT ,PKTSSR TSSR(RS) ,R1 #S.!SSR!TSREJ,R2 #CFL ,R1 25% #OFL ,R2 R2,R1 308 ERRNO, T142REJ ,PKTSSR SEQ 0130 :DID AN INTERRUPT OCCUR ? ¢BRANCH IF YES TRAP .WORD .WORD .WORD cGET THE CONTENTS OF TSSR SEXPECTED CONTENTS OF TSSR ;1S OFF=-LINE BIT SET ? sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? cOKAY IF MATCH s COMMAND NOT REJECTED TRAP .WORD .WORD .WORD JSR BCS ERRHRD ENDSEG PC,CKRAM 59% ERRNO, PKTRAM, RAMERR 104403 CSERHRD 2n T142REJ PKTSSR sCHECK RAM TO MEMORY sTHEY DON'T MATCH + <€KLL END TRAP .WORD .WORD .WORD CSERHRD 212 PKTRAM RAMERR SEGMENT <<<<<K<<<<<<LK " TRAP ENDSUB T14NINT PKTSSR JRAM 0K GO ON 104405 59%: CSERHRD 210 CSESEG SNANMANAANANANL END SUBTEST NN\ L1004, TRAP C$ESUB —_—a TSVS = HARDWARE TESTS TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND MACRO M1113 25-MAY=82 09:19 TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND 355 025146 025146 025150 356 357 EXIT 104432 001246 376 378 380 025600 381 025600 382 025602 383 025604 38§ 025606 386 387 025610 388 025610 389 025612 390 025614 ggg 025616 025160 TST JALL DONE THIS TEST .=<.+10>8177770 T14PACKET: WORD 100206 .WORD T14DATA LWORD O .WORD 6. T14DATA: 1T148S0: .BYTE 0 T148S1: .BYTE 0 T14BS2: .WORD LMWORD O T14BFR: .BLKW 128. 100206 025170 000000 000006 000 000 000000 000000 025600 T14PK2: 100204 025610 000000 000010 025176 000000 000400 000000 T14DTA: 000000 TRAP .WORD CSEXIT L10037-. ;COMMAND PACKET FOR TEST JWRITE SUBSYSTEM MEM. COMMAND, WITH IE, ACK JRDDRESS OF CHARACTERISTICS BLOCK sSTARTING VALUE OF BLOCK SIZE JCHARACTERISTICS DATA BLOCK ;BSELO BYTE :BSEL1 BYTE :BSEL1 WORD :DATA JMESSAGE BUFFER .=<.+10>8177770 .WORD .WORD .WORD .WORD 100204 T14DTA 0 8. .WORD .WORD LWORD .WORD T14BFR 0 256. 0.0 . ;COMMAND PACKET FOR TEST JWRITE CHARA. MEM, CMND., WITH 1E, ACK ;ADDRESS OF SELECT DATA BLOCK ;STARTING VALUE OF BLOCK SIZE JSELECT DATA BLOCK ;ADDRESS OF MESSAGE BUFFER JLENGTH OF MESSAGE BUFFER i JLOCAL TEXT MESSAGES FOR TEST 395 405 SEQ 0131 ;LOCAL STORAGE FOR THIS TEST 393 394 398 025622 399 025676 400 025773 401 026063 402 026155 282 026241 8 11 o4 %gg 360 362 364 025160 365 025160 366 025162 367 025164 368 025166 369 025170 370 025170 371 025171 372 025172 373 025174 %;g 025176 PAGE 83 127 127 103 105 111 102 1¢2 122 157 170 156 141 111 111 156 160 143 163 T14NBA: _ASCIZ T142REJ: T14SSR: .ASCIZ T14NINT: TI14TSBA: TST14]D: EVEN °"WRITE SUBSYSTEM MEMORY Command Not Accepted' LASCIZ ‘'WRITE SUBSYSTEM MEMORY Not Rejected With Non-Zero Mode Field® ‘Contents of TSSR Incorrect After WRITE SUBSYSTEM MEMORY'® ASCIZ ‘'Expected Interrupt Not Received On WRITE SUBSYSTEM MEMORY'’ .ASCIZ ‘'Incorrect TSBA Address After WRITE SUBSYSTEM MEMORY' LASCIZ 'Basic WRITE SUBSYSTEM MEMORY Command® -| TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND PAGE 84 cn SEQ 0132 407 408 409 410 4 :ROUTINE TO RESTORE COMMAND PACKET TO START=UP (DEFAULT) VALUES sWRITE SUBSYSTEM MEMORY COMMAND 415 026306 616 026306 617 026312 418 026316 419 026322 620 026326 621 026330 422 026334 423 026336 424 026340 425 026342 426 627 428 026344 429 026344 430 026350 431 026354 432 026360 433 026364 434 026366 435 026372 436 026376 437 026400 438 026406 439 026406 440 026410 441 026414 662 026416 026416 026416 T14REST: 012701 012721 012721 005021 012721 005021 005021 005011 000207 MOv Mov MoV 000006 MOV CLR 104401 #T14PACKET ,R1 #100206, (R1) + #T14DATA, (R1)+ CLR CLR CLR RTS T14RST: 012701 012721 012721 005021 012721 012721 005021 012721 005021 005011 005037 000207 SAVREG 025160 100206 025170 025600 SAVREG MOV Mov MoV #T14PK2 R #100204,(R1)+ #T14DTA,(R1) ¢ 025176 MOV MOV #T14BFR, (R1)+ 000400 MoV 100204 025610 000010 025176 CLR CLR CLR CLR CLR RTS ENDTST (R1)+ #8..(R1)+ (R1)+¢ #256.,(R1)+ (R1)+ (R1) T148FR PC sSAVE THE REGIST ERS sSTART OF THE PACKET sWRITE SUBSYSTEM MEM, WITH ACK, IE sADDRESS OF DATA BLOCK sEXTENDED ADDRES S sSIZE OF DATA BLOCK IN BYTES sCLEAR BSELO AND BSEL1T sCLEAR SELZ2 sCLEAR DATA AREA sRETURN :SAVE THE REGIST ERS ¢START OF THE PACKET sWRITE CHARA. WITH ACK, IE sADDRESS OF CHARAISTICS DATA BLOCK sEXTENDED ADDRES S sSIZE OF DATA BLOCK IN BYTES sMESSAGE BUFFER ADDRESS +LENGTH OF MESSAGE BUFFER sCLEAR 1ST LOC IN MESSAGE BUFFER ;s RETURN L10037: TRAP CSETST — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 2: BASIC WRITE SUBSYSTEM MEMORY COMMAND 444 PAGE 85 ] D 1 SEQ 0133 — TSVS = HARDWARE TESTS 25-MAY-82 09:19 229 .SBTTL 448 449 450 TEST 453 454 455 456 457 : : : : : 22? ; TEST STEPS 462 463 : : REPEAT FROM 1 BEGIN 223 : used for DMA transfers. : : : : ; - TO LOOPCNT . Do Subtest 1 END . - Verify GET STATUS selected locations Do Subtest 2 - Verify message packets selected locations Do Subtest 3 - Verify Characteristic data selected locations Do Subtest 4 ~ Verify NXM to selected invalid addresses BGNTST 477 C26420 012700 030450 479 026430 480 026436 012737 005237 000012 003150 483 0266446 484 This test verifies that the controller can properly address and access all available (PU memory (other than that occupied by the diagnostic and diagnostic supervisor code) for both reading (DATI) and writing (DATO). Verified are the LSI-11 Bus drivers for all available address lines. Up to this point only 16 bits have been : 464 23; 026442 3: DMA MEMORY ADDRESSING : s TEST DESCRIPTION 478 026426 SEQ 0134 s ; TEST 3 22} 465 466 467 468 469 470 47 672 026420 026420 EN PAGE 86 004737 004737 016510 #TST1210,R0 ;ASCI1 MESSAGE TO IDENTIFY TEST MoV INC #10. ,LOOPCNT T38FLG sPERFORM 10 ITERATIONS sSET TEST FLAG JSR 002216 021276 JSR T12L00P: T3:: MOV PC,TSTSETUP PC.MEMCK ;DO INITIAL TEST SETUP s CHECK MEMORY ;LOOP ON TEST LABEL — TSVS < HARDWARE TESTS MACRO M1113 TEST 3: DMA MEMORY ADDRESSING o — TSVS = HARDWARE TESTS ~ MACRO M1113 TEST 3: SUBTEST 1: 25-MAY-82 09:19 GET STATUS SELECTED LOCATIONS 239 .SBTTL PAGE 87 F1N SEQ 0135 TEST 3: SUBTEST 1: GET STATUS SELECTED LOCATIONS 144 238 : TEST 3: SUBTEST 1: 23? : SUBTEST DESCRIPTION: 492 493 : : This subtest verifies the controller can fetch a get status command from all available memory locations. ) 495 4% : : all available memory to a background pattern of 125252. . A Get Status command is then executed to various addresses in zgg : “ : 497 : 500 501 502 503 : : : : 289 . 508 509 510 S1 : : : ; 282 516 517 518 026450 519 026454 520 026456 521 026456 522 026460 026460 026462 026464 3 026466 524 525 026470 526 026470 527 026476 528 026500 529 026504 530 026510 531 026514 532 026530 533 026532 534 026534 535 026534 026534 each available memory 4k word block. are determined by floating a 1 BEGIN o Write to TSSR to soft initialize Do a WRITE CHARACTERISTICS to setup a message buffer RESEeINfOR SELECTED VALID ADDRESSES IN DIAGNOSTIC FREE SPACE AND ABOVE 32« END END Get a valid modulo-4 test address Do a GET STATUS command from the test address BGNSUB $/1//117/77/7 BEGIN SUBTEST ///711/117/ 13.1: TRAP (sBsuB 104402 004737 103405 015774 010001 104455 000455 003652 012034 012704 004737 005037 010465 004737 030240 031620 003134 000000 016336 . ;Write to TSSR to soft initialize JSR PC,SOFINIT BCS 15% NEXT.ERRNO MOV RO,R1 ERRDF ERRNO,SFIERR,SFIMSG ;D0 SOFT INIT OF CONTROLLER ;B8R IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP .WORD .WORD .WORD CSERDF 301 SFIERR SFIMSG ;00 a WRITE CHARACTERISTICS to setup a message buffer 15%: MOV #T12PACKET R4 sGET THE AODRESS OF COMMAND PACKET JSR PC,T12SWRT cRESTORE PACKET TO STARTING VALUES CLR MOV 103405 010001 104455 The various addresses then a 0 through the address bits. TEST STEPS: : 313 5146 026446 026446 615 026446 Two word blocks are tested one at a time by first setting 178: KTENABLE R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 17% BCS 208 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T12WRTSSR,PKTSSR :TURN OFF KT=-11 sSET THE PACKET ADDRESS ;WAIT FOR SSR TO SET sBR IF SSR SET IN CHKTSSR :SAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF f — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 3: SUBTEST 1: GET STATUS SELECTED LOCATIONS 026536 026540 026542 536 537 538 539 540 026544 541 026550 542 026556 543 026560 544 026560 545 026564 546 026566 547 026570 548 026574 549 026576 561 026654 562 026660 563 026674 564 026676 565 026700 566 026700 026700 026702 026704 026706 567 026710 026710 568 026712 569 026712 570 026722 571 026726 572 026730 573 026734 574 026740 575 026742 576 026746 577 026750 578 026756 579 026762 580 026766 581 026772 026772 026772 582 026774 PAGE 87-1 SEQ 0136 000456 030552 012046 .WORD .WORD .WORD 302 T12WRTSSR PKTSSR ;Verify a Get Status can be fetched from each address ;6et a valid modulo=4 test address 005037 005037 012702 002222 030310 030314 005037 012201 005000 005737 001407 016200 042700 012737 004737 103034 013704 013703 004737 062703 050304 004737 010465 004737 003134 :Do0 a GET STATUS command from the test address 208: T121L00P"0v CLR MOV CLR TST 030310 177776 177774 000001 031316 BEQ MOV 003134 BIC 25$: 030304 030302 031666 177774 017274 000000 016336 103405 010001 328: 104455 104403 005737 Jo ! 8CC MOV MoV JSR 8IC 8IS ;CLEAR FATAL ERROR FLAG #T12BLK,R2 JPOINT TO TEST PATTERN TABLE KTENABLE (R2)+.R1 ;TURN OFF ABOVE 28K TEST FLAG ;GET TEST PATTERN ADDRESS JASSUME NO TEST ABOVE 28k JTEST ABOVE 28K THIS TIME? T12KT RO T12KT 258 -2(R2) RO #4C<A1716>.R0 #1 ,KTENABLE PC,T12CONVERT 65% T12LOADD R4 T12H]ADD ,R3 PC,T12SETGET #°C<A1716> ,R3 R3.R4 JSR PC_KTOFF MOV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 328 BCS 408 MOV RO.R1 NEXT.ERRNO ERRDF JTEST ABOVE 28K SWITCH :BR IF NO JGET TEST PATTERN AGAIN SSAVE 18 BIT ADDRESS ONLY ;TURN ON ABOVE 28K TEST FLAG ;CONVERT TEST PATTERN TO TEST ADDRESS :BR IF INVALID PACKET ADDRESS sCOPY CURRENT PACKET LOW ADDRESS ;COPY CURRENT PACKET HIGH ADDRESS JSETUP CURRENT PACKET 1O GET STATUS s SAVE ADDRESS BITS 17+16 JSETUP 18 BIT PACKET ADDRESS JTURN OFF KT=-11 JSET THE PACKET ADDRESS TO EXECUTE ;WAIT FOR SSR TO SET ;BR IF SSR SET IN CHKTSSR JSAVE CONTENTS OF TSSR ERRNO,T12GETSSR,PKTGETS ;DEVICE FATAL SSR FAILED TO SET -WORD .WORD 408 : 104406 005737 001407 012737 012702 000137 004737 v FATFLG TRAP 000457 030476 012064 020227 103002 000137 005737 003012 CLR CLR 65$: 030446 70%: 003132 002222 FORCEXIT CMP 026560 030310 000001 030314 026560 017274 CKLOOP BHIS JMP TST 8GT TST 030310 80$: 8EQ MOV MOV JMP JSR ENDSUB TST ;LOOP ON ERROR, 80% R2,.#T12T18BE 70$ T121L00P .WORD IF FLAG SET TRAP KTFLG ;ANY MEMORY ABOVE 28K ON SYSTEM? T121L00P PC,KTOFF cscLP :BR [F YES :BR IF NO JSET SWITCH JRESET TEST PATTERN TABLE ;D0 ABOVE 28K TESTING ;TURN OFF kTIM SNAMNAANAANANANANANN END SUBTEST AN\ L10043: FATFLG PKTIGETS ;DONE ALL TSTBLK TEST PATTERNS? ;DONE ABOVE 28Kk TESTING T00? 80$ a1,712KT #T12BLK R2 303 T12GETSSR :BR IF YES ;D0 ANOTHER MODULO- & ADDRESS T12KT 808 CSERDF JANY FATAL ERRORS ? TRAP CSESUB TSVS = HARDWARE TESTS TEST 3: SUBTEST 1: 583 027000 584 027002 ggz 027006 MACRO M1113 25-MAY-82 09:19 GET STATUS SELECTED LOCATIONS 061402 004737 017202 1008: BEQ JSR PAGE 87-2 1008 PC,CKDROP H1N SEQ 0137 sBRANCH IF NOT ;TRY TO DROP THE UNIT 1 1 TSVS = HARDWARE TESTS TEST 3: SUBTEST 2: MACRO M1113 25-MAY-82 09:19 PAGE 88 In MESSAGE PACKETS TO SELECTED LOCATIONS ggg .SBTTL SEQ 0138 TEST 3: SUBTEST 2: MESSAGE PACKETS TO SELECTED LOCATIONS ste gg? : TEST 3: SUBTEST 2: gg% ; SUBTEST DESCRIPTION: 594 595 596 597 598 599 : : : : : : This subtest verifies the controller can deposit message packets to all available memory locations. . Write Characteristics commands are executed with message buffer addresses set to various addresses in each available memory location. ) ) The various addresses are determined by floating a 1 then a 0 28? : 602 603 604 605 s TEST STEPS: : : BEGIN L. : Write to TSSR to soft initialize ggg : 289 : 610 611 612 613 614 615 623 027014 624 027016 625 027016 626 027020 027020 027022 027024 627 027026 628 629 027030 630 027030 631 027034 632 02704C 633 027044 634 027050 635 027054 636 027070 637 027072 638 027074 RESEeINFOR SELECTED ADDRESSES IN DIAGNOSTIC FREE SPACE AND ABOVE 32k END - END Get a valid modulo-4 test address Set the gacket message buffer to the TEST ADDRESS Do a WRITE CHARACTERISTICS Restore the test message buffer to background pattern BGNSUB s//1////7//777 BEGIN SUBTEST /////77177/ 13.2: TRAP cs8su8 106402 620 621 622 027010 Do a WRITE CHARACTERISTICS to setup a message buffer to compare : : H : : : 617 618 027006 027006 619 027006 through the address bits. . 004737 103405 015774 104455 000460 003652 012034 010465 004737 103405 010001 BCS 15§ NEXT.ERRNO MOV RO,R1 ERRDF ERRNO,SFIERR,SF IMSG 010001 012704 004737 004737 o :Write to TSSR to soft initialize JSR PC,SOFINIT 030240 031620 017274 000000 016336 ;DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP .WORD .WORD .WORD CSERDF 304 SFIERR SFIMSG ;Do a WRITE CHARACTERISTICS to setup a message buffer to compare 158: MOV #T12PACKET R4 cGET THE ADDRESS OF COMMAND PACKET JSR PC,T12SWRT sSET PACKET TO WRITE CHARACTERISTICS JSR PC.KTOFF MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 17% 8(S 208 MOV RO,R1 NEXT.ERRNO sTURN OFF KT-11 ;SET THE PACKET ADDRESS SWAIT FOR SSR TO SET :BR IF SSR SET IN CHKTSSR ;SAVE CONTENTS OF TSSR €39 027074 027074 027076 027100 027102 17$: 104455 000461 ERRDF SEQ 0139 ERRNO, T12WRTSSR,PKTSSR ;DEVICE FATAL SSR FAILED ; 0 SET TRAP .WORD .WORD .WORD 030552 012046 CSERDF 305 T12WRTSSR PKTSSR :Get a valid modulo=4 test address ;Set the packet message buffer to the test address 644 027104 645 027110 646 027114 647 027114 648 027116 649 027120 650 027124 651 027130 652 027134 653 027136 654 027142 655 027146 656 027152 657 027160 658 027166 659 027172 6¢0 027176 $&1 027202 662 027216 663 027220 664 027222 665 027222 027222 027224 027226 027230 666 027232 027232 667 027234 668 027234 669 027244 670 027250 671 027252 672 027256 673 027262 027262 027262 674 027264 675 027270 676 027272 677 027276 678 679 680 005037 012703 012301 010100 042700 042701 004737 103402 000137 012704 004737 013737 013737 004737 010465 004737 :00 @ WRITE CHARACTERISTICS 208: 002222 030314 BIC 8127774 ,R0 MOV 177774 258: 508: 104406 020327 103002 000137 004737 106403 005737 001402 004737 150%: 030446 027114 017274 1608: 002222 017202 #3,R1 PC.T12CONVERT 258 1508 #T12PACKET R4 PC,T12SWRT MOV JSR MOV JSR T12HI , T12DATA+2 ADD PC,KTOFF R4 TSDB(RS) PC.CHKTSSR BCS 508 ERRDF ERRNO,T12WRTSSR,PKTSSR T12L0ADD, T12DATA FORCERROR 328: 000462 030552 012046 (R3)+,R1 R1,R0 BIC JSR BCS JMP MOV JSR MOV 030250 030252 103405 010001 1046455 FATFLG #T12BLK,R3 000003 031316 027234 030240 031620 030304 030302 017274 000000 016336 CLR MOV T122L00P: MOV : 1808 328 MOV RO.R1 NEXT.ERRNO CKLOOP FORCEXIT CMP BHIS JMP sCLEAR FATAL ERROR FLAG cPOINT TO TEST PATTERN TABLE sGET TEST PATTERN ADDRESS :GET ADDRESS ALL '‘18 BITS' sLEAVE ONLY A17 AND A16 sGET RID OF A17 AND A6 sCONVERT TEST PATTERN TO TEST ADDRESS sBR_IF VALID MESSAGE BUFFER ADDRESS sGET ANOTHER TEST PATTERN TO TRY sSET THE COMMAND PACKET ADDRESS sSETUP T12PACKET TO WRITE CHAR. sSETUP LOW ORDER MESSAGE BUFFER ADD. sSETUP HIGH ORDER MESSAGE BUFFER ADD. ;TURN OFF KT=-11 sSET THE PACKET ADDRESS TO EXECUTE cWAIT FOR SSR TO SET :BR IF SSR SET IN CHKTSSR sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET :LOOP ON ERROR, 1608 R3,#T121BE 1608 T122L00P TRAP CSCLP? T12WRTSSR sDONE ALL TST12BLK TEST PATTERNS? sBR IF YES ;DO _ANOTHER MODULO- & ADDRESS PC,KTOFF :TURN OFF ST FATFLG sANY FATAL ERRORS ? cBRANCH [F NOT 1808 PC, CKDROP PKTSSR IF FLAG SET JSR ENDSUB 8EQ JSR CSERDF 306 TRAP .WORD .WORD .WORD KT11 SNAANMAANANNAN END SUBTEST \\AANNW L10044 TRAP C$SESUB sTRY TO DROP THE UNIT e e ) TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 PAGE 88-1 TEST 3: SUBTEST 2: MESSAGE PACKETS TO SELECTED LOCATIONS 23% .SBTTL K 11 SEQ 0140 TEST 3: SUBTEST 3: CHARACTERISTIC DATA SELECTED LOCATIONS 4t ggg s ggg ; SUBTEST DESCRIPTION: 688 689 690 : : : This subtest verifies the controller can fetch a Write Characteristics data block from all available memory locations. . 692 623 ggé : : : characteristic data blocks at various memory addresses. The various memory addresses are determined by floating a 1 then a 0 through the address bits. 696 697 698 s : ; 691 H 933 : ;%} : 703 704 705 706 707 708 709 : : : ; . : : 712 027276 027276 13 027276 714 715 716 027300 717 718 719 720 TEST 3: 027304 027306 027306 027310 027310 027312 027314 221 027316 TEST STEPS: BEGIN L. Write to TSSR to soft initialize RESEGINFOR SELECTED VALID ADDRESSES IN DIAGNOSTIC FREE SPACE AND ABOVE 32K END END Get a valid test address L ) Set the test packet characteristics data pointer to the test address. . Store expected characteristic data in test address block Do a WRITE CHARACTERISTIC command /11777777777 BEGIN SUBTEST /777777777 13.3: TRAP csBsSUB 104402 004737 103405 015774 010001 104455 000463 003652 012034 005037 005037 012703 002222 030310 030314 005037 012301 010100 003134 731 027350 042701 000003 732 027354 Write Characteristics commands are executed with BGNSUB 722 723 027320 726 027326 725 027330 726 027334 727 027334 728 027340 729 027342 730 0273446 SUBTEST 3: 042700 005737 177774 030310 ;Write to TSSR to soft initialize JSR PC,SOFINIT BCS 208 NEXT.ERRNOQ MOV RO,R1 ERRDF ERRNO,SFIERR, SF IMSG :Get a valid test address : (LR FATFLG CLR T12KT MOV #T128LK,R3 T123L00P: CLR KTENABLE MOV (R3)+,R1 MOV R1,R0 BIC 2177774 ,R0 ST T12KT 8I1C #3 .R1 ;DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR ;DEVICE FATAL ERROR DURING INIY TRAP .WORD .WORD .WORD sCLEAR FATAL ERROR FLAG sTEST ABOVE 28K SWITCH sPOINT TO TEST PATTERN TABLE :TURN OFF ABOVE 28K TEST FLAG SGET TEST PATTERN ADDRESS sGET ADDRESS ALL ‘18 BITS* JLEAVE ONLY A17 AND A16 JGET RID OF A17 AND A16 sTEST ABOVE 28K THIS TIME? CSERDF 307 SFIERR SFIMSG — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 PAGE 89 TEST 3: SUBTEST 3: CHARACTERISTIC DATA SELECTED LOCATIONS ek — 733 027360 734 027362 735 027366 736 027372 737 027400 738 027404 ;29 027406 0 741 027412 742 027416 743 027422 744 027430 745 027436 746 747 027442 748 027446 749 027452 750 027456 751 027472 752 027474 753 027476 754 027476 027476 027500 027502 027504 755 027506 027506 756 027510 757 027510 758 027514 759 027516 760 027522 761 027526 762 027530 763 027534 764 027536 765 027544 766 027550 767 027554 768 027560 769 027562 770 027566 771 027570 772 027574 773 001407 016300 177776 012737 004737 000001 031316 000137 027510 012704 030240 013764 030304 0462700 103402 004737 177774 031620 013764 004737 030302 031730 004737 010465 004737 017274 000000 016336 BEQ MOV BIC 003134 MOV JSR BCS 000002 000004 030552 012046 408: 608 104406 000137 005737 003012 005737 001407 012737 012703 000137 004737 027334 030310 104403 005737 001402 004737 308 L. ‘BR IF VALID TEST ADDRESS 60 MOV #T12PACKET R4 sGET THE ADDRESS OF COMMAND PACKET MOV T1éLOADD,PKLOU(R4) JSTORE CHAR. DATA PTR LOW ADDRESS JSR PC,T12SWRT 65%: 030310 708 : 75$: 32% B8(CS MOV 40$ RO,R1 ERRDF ERRNO, T12WRTSSR,PKTSSR NEXT.ERRNO ckLoor CMP 002222 017202 ;TURN ON ABOVE 28K TEST FLAG JCONVERT TEST PATTERN TO TEST ADDRESS :SAVE 18 BIT ADDRESS ONLY JMP ;GET NEXT TEST PATTERN pointer to the test address JRESTORE PACKET TO STARTING VALUES JSTORE CHAR. DATA PTR HIGH ADDRESS JSTORE EXPECTED DATA IN DATA BLOCK :TURN OFF KT=11 JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TQO SET ;BR JF SSR SET [N CHKTSSR JSAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP .WORD LWORD .WORD ;LOOP ON ERROR, IF FLAG SET TRAP R3,#T12TBE JDONE ALL TSTBLK TEST PATTERNS? JMP TST BGT TST 8EQ MoV MOV JMP JSR T123L00P T12KT 708 KTFLG 708 ”,T12KT #T128LK ,R3 T123L00P PC,KTOFF ;BR IF YES :DO ANOTHER MODULO- 4 ADDRESS ;DONE ABOVE 28K TESTING T0O0? JBR IF YES sANY MEMORY ABOVE 28K ON SYSTEM? :BR IF NO JSET SWITCH JRESET TEST PATTERN TABLE ;DO ABOVE 28K TESTING ;TURN OFF KT11 TST 8EQ JSR FATFLG 75% PC,CKDROP JANY FATAL ERRORS ? ;BRANCH IF NOT JTRY TO DROP THE UNIT BHIS 003132 000001 030314 027334 017274 #1 ,KTENABLE PC,T12CONVERT #2C<A1716>,R0 MOV T12HIADD ,PKH]I (R4) JSR PC,T12CHAR ;Do a WRITE CHARACTERISTIC command JSR PC,KTOFF MOV R4 ,TSDB(RS) JSR PC,CHKTSSR 32%: 030446 :BR IF NO JGET TEST PATTERN AGAIN FORCERROR 104455 000464 103002 258 =2(R3) R0 :Set the test packet characteristics data 305: 103405 010001 020327 SEQ 0141 ENDSUB 65$ AR CSERDF 308 T12WRTSSR PKTSSR cscLPY RNNNY EE?OBE?TEST VAL TRAP CSESUB ol omd TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 PAGE 89-1 TEST 3: SUBTEST 3: CHARACTERISTIC DATA SELECTED LOCATIONS TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 3: SUBTEST &: NXM TO SELECTED INVALID ADDRESSES ;;2 .SBTTL ;00 SEQ 0142 TEST 3: SUBTEST &4: NXM TO SELECTED INVALID ADDRESSES ;;g ¢ ;gg * SUBTEST DESCRIPTION: 781 : 782 783 784 785 786 787 788 . : 791 : 792 793 : : 795 796 797 798 799 800 gg; . : : : : : : 803 ; 794 : : H : : 811 i g?g AANARANRANRANRNNNNNRENRANANRRANRNAANANRRANRANANANNNRNAARRARNNNNNNNNNR CAUTION The LSI BUS drivers for all available address Lines(16~21) are only checked when running on a 117238 system with more than 128K words of memory! AARNEANRARANRAR NN A RN RRNARNRNN RN RANANRNNEN AN NARARAANNANRNRANANNARRARS TEST STEPS: BEGIN Write to TSSR to soft initialize Do a write characteristic command Invert the extended features switch REPEAT FOR SELECTED NON-EXISTENT MEMORY ADDRESSES BEGIN : 814 027574 027574 104402 817 027576 005737 818 027602 818 027604 If TSSR register NXM bit not set then print error message END 001002 000137 /11777177777 BEGIN SUBTEST /7177717777 13.4: TRAP 003136 ST BNE JMP 030164 gg} 823 02761CG 824 027614 825 027616 826 027616 827 027620 027620 027622 END Get an invalid test address Set the test packet characteristics data pointer to the test address. Do a WRITE CHARACTERISTIC command BGNSUB 027574 . register is set when attempting to fetch data (a characteristic data block) from selected nonexistent locations. If NXM fails to set it is Llikely that an LSI-11 Bus driver is failing to assert an address line. Addresses tested include all combinations of high-order address bits (i.e bits 16=21). : 804 805 806 807 808 SUBTEST 4: This subtest verifies the NXM error bit in the TSSR : : : : : : ;gg i TEST 3: 1 PAGE 90 NXMFLG 108 NOEXTF . (s83UB ;GOT ENOUGH MEMORY? JIF SET STAY ;LEAVE IF NOT SET ;Write to TSSR to soft initialize 004737 103405 010001 104455 000465 015774 10$: JSR PC,SOFINIT BCS 118 NEXT.ERRNO MOV RO,R1 ERRDF ERRNO,SFIERR,SFIMSG ;DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD 309 027624 8 027626 829 830 831 027630 027630 832 027632 833 027636 834 027642 835 027646 836 027652 837 027656 838 027672 839 027674 840 027676 841 027676 027676 027700 027702 027704 842 027706 027706 843 027710 844 845 846 847 027714 848 027720 849 027720 850 027726 851 027734 852 853 854 855 856 027734 857 027740 858 027744 859 027752 860 861 862 027760 863 027764 864 027770 865 027774 866 030010 867 030012 868 030014 869 030014 030014 030016 030029 030022 870 030024 871 030030 030030 PAGE 90-1 SEQ 0143 063652 012034 .WORD .WORD SFIERR SFIMSG TRAP CSCLPT ;Do a WRITE CHARACTERISTIC command so to invert switch 104406 012704 004737 005037 010465 004737 11$: 030240 031620 003134 000000 016336 MOV JSR #T12PACKET,RS PC,T12SWRT BCS MOV 15%: 104455 000466 17% RO,.R1 NEXT.ERRNO ERRDF ERRNO,T12WRTSSR,PKTSSR sGET THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES :;TURN OFF KT-11 ¢SET _THE PACKET ADDRESS sWAIT FOR SSR TO SET sBR IF SSR SET IN CHKTSSR sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP 030552 012046 004737 cLOOP IF SELECTED CLR KTENABLE MOV R4,TSDB(RS) JSR PC,CHKTSSR FORCERROR 15¢ 103405 010001 104406 CKLOOP 17%: 021206 CKLOOP JSR <LOOP IF SELECTED PC, INVERT s INVERT THE SWITCH CSERDF 310 T12WRTSSR -WORD -WORD -WORD PKTSSR TRAP CSCLPT ;Get an invalid test address 005037 002222 013737 013737 003142 003140 208 : 030302 030304 25%: CLR MOV MOV T124L00P: FATFLG sCLEAR FATAL ERROR FLAG NXMH] , T12HIADD NXMLO, T12LOADD ¢SAVE TEST ADDRESS HIGH sSAVE TEST ADDRESS LOW ;Set the test packet characteristics data pointer to the . 012704 004737 013764 013764 030240 031620 030304 030302 004737 010465 004737 017274 000000 016250 test address. 308: 000002 000004 000467 030552 012046 005237 104406 #T12PACKET,R4 MOV T12L0ADD, PKLOW(R4) JSR MOV PC,T12SWRT T12HIADG . PKHI (R4) ;D0 a WRITE CHARACTERISTIC command 103407 010001 328: 106455 MOV JSR PC,KTOFF MOV R&4.TSDB(RS) JSR PC.WAITF FORCERROR 328 BCS 408 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T12WRTSSR,PKTSSR ¢GET THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES sSTORE CHAR. DATA PTR LOW ADDRESS sSTORE CHAR. DATA PTR HIGH ADDRESS sTURN OFF KT=-11 sSET _THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET sBR IF SSR SET IN CHKTSSR :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD 002222 40$: INC (kLOOP FATFLG CSERDF In T12WRTSSR -WORD .WORD PKTSSR A CsCLPY sSET FATAL ERROR FLAG <LOOP ON ERROR, IF FLAG ¥STP —f —f TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 3: SUBTEST 4: NXM TO SELECTED INVALID ADDRESSES 25-MAY-8?2 09:19 TEST 3: SUBTEST 4: NXM TO SELECTED INVALID ADDRESSES 872 030032 873 030042 030042 030044 874 , 875 030046 876 030046 877 030052 878 030066 879 030072 880 030074 881 030074 882 030102 883 030110 030110 030112 030114 030116 884 885 030120 887 030132 888 030136 889 030140 890 030144 891 030146 892 030152 893 030154 89¢ 030160 895 030164 896 030164 897 030164 898 030170 030170 030170 899 030172 900 030176 901 030200 902 030204 903 030210 904 030212 905 030216 906 030216 907 030222 908 030226 030226 030230 8 12 PAGE 90-2 SEQ 0144 FORCERROR ESCAPE 106410 000124 458 ,NOTSSR SuUB . — MACRO M1113 ;BY=PASS SUBTEST IF FATAL ERROR TRAP . ig; TSSR register NXM bit not set 000002 MOV TSSR(RS) ,R1 ;GET TSSR CONTENTS 032701 001012 004000 8Ir BNE #NXM,R1 60s sNXM SET? :BR IF YES 013737 013737 030304 030302 MOV T12LOADD,ERRLO 002240 002236 528: 52% NEXT.ERRNO MOV T12HIADD ,ERRH] ERRHRD ERRNO, T18NXM,ADDSSR 104456 000470 JMEMORY TEST ADDRESS LOW ;JMEMORY TEST ADDRESS HIGH sREPORT ADDRESS AND TSSR ERROR 60$: 104406 101004 TRAP CSERHRD .WORD ADDSSR .WORD .WORD 031207 012126 005737 001012 013700 005200 020027 L10046-. then print error message 016501 FORCERROR CSESCAPE .WORD FORCEXIT 003144 030302 000077 010037 000137 030302 027734 004737 017274 106403 005737 002222 CxLOOP 658: 75%: 008 NOEXTF: TST BNE MOV 026446 1058 017274 003150 RO, T12HIADD sSETUP NEW HIGH ORDER ADDRESS JSR PC,KTOFF :TURN OFF KT11 TST FATFLG sANY FATAL ERRORS ? JSR JSR PC,CKDROP PC,TSTLOOP sTRY TO DROP THE UNIT sSHOULD WE DO ITERATIONS? JMP T12L00P sLOOP UNTIL ITERATION COUNT DONE JSR PC,KTOFF JMP BC(C 90$ T184L00P 1008 1058 T38FLG TST ;DONE A21-A16? :BR IF YES :DO ANOTHER NON-EXISTENT ADDRESS SNANAANAMNANANANN END SUBTEST \\\\A\\\\\W\L L10046: TRAP CSESUB ;BRANCH [F NOT ;BR IF NO :TURN OFF MEMORY MANAGEMENT sCLEAR TEST FLAG sALL DONE THIS TEST TRAP WORD R csCLP JIS IT A 11/723A? ;YES WERE DONE sGET CURRENT HIGM ADDRESS MOV (LR ExIT 106432 001542 T23A 90% T12HIADD,RO TRAP ;GET NEXT ADDRESS BEQ 1008: 90$% RO RO, 477 ENDSUB 017202 016456 ;LOOP ON ERROR, IF FLAG SET INC (mMP BHI 312 T12NXM CSEXIT L10042-. 4 sLOCAL STORAGE FOR THIS TEST 16 918 030240 919 030240 030240 100004 .=<.+10>8177770 T12PACKET: .WORD 100004 s COMMAND PACKET FOR TEST sMRITE CHARACTERISTICS COMMAND, WITH ACK - TSVS = HARDWARE TESTS TSVS = HARDWARE TESTS TEST 3: SUBTEST &: 920 030242 921 030244 NXM TO SELECTED 000010 924 030250 925 030250 030262 000000 000016 000000 3%? 030262 932 933 934 935 ggg 030302 030304 030306 030310 030312 .WORD LMWORD T12DATA 0 8. ;STARTING VALUE OF BLOCK SIZE .WORD LMORD .WORD LWORD T128FR 0 14, 0,0 JCHARACTERISTICS DATA BLOCK ;LOW ADDRESS OF MESSAGE BUFFER .BLKW 8. ;MESSAGE BUFFER INVALID ADDRESSES .WORD T12DATA: 000000 T12HIADD: T12L0ADD: T12PARG: T12KT: T1247ST: .MWORD LMWORD .WORD .MORD .WORD : + 938 939 942 943 944 945 946 947 948 PAGE 90-3 T128FR: 000000 000000 000000 000000 000000 : :TABLE OF ADDRESSES 030314 030316 030320 030322 030324 030326 030330 949 030332 950 030334 951 030336 952 030340 953 030342 954 0303446 955 030346 956 030350 957 030352 958 030354 959 030356 960 030360 961 030362 962 030364 963 030366 964 030370 965 030372 966 030374 967 030376 968 030400 969 030402 970 030404 971 030406 972 030410 973 030412 974 030414 975 030416 976 030420 000001 000002 000003 000005 000006 000007 000011 000012 000013 000021 000022 000023 000041 000042 000043 000101 000102 000103 000201 000202 000203 000401 000402 000403 001001 001002 001003 002001 002002 002003 004001 004002 004003 010001 010002 ¢ 12 25-MAY-82 09:19 030250 000000 3%% 030246 926 030252 927 030254 ggg 030256 MACRO M1113 T128LK: .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD LWORD .WORD .WORD .WORD .WORD .WORD LMORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD LWORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD 000001 000002 000003 000005 000006 000007 000011 000012 000013 000021 000022 000023 000041 000042 000043 000101 000102 000103 000201 000202 000203 000401 000402 000403 001001 001002 001003 002001 002002 002003 004001 004002 004003 010001 010002 SEQ 0145 ;ADDRESS OF CHARACTERISTICS BLOCK :HIGH ORDER OF MESSAGE BUFFER JLENGTH OF MESSAGE BUFFER O O 0 0 O :HIGH ADDRESS :LOW ADDRESS JADDRESS IN PAR FORMAT JTEST ABOVE 28K SWITCH ;ADDRESS TEST BIT TSVS = HARDWARE TESTS TEST 3: 977 030422 978 0304246 979 030426 980 030430 981 030432 982 983 984 985 986 ggg MACRO M1113 25-MAY-82 09:19 SUBTEST 4: NXM TO SELECTED INVALID ADDRESSES 030434 030436 030440 30442 030444 030446 010003 020001 020002 020003 040001 WORD .WORD .WORD .WORD .WORD 040002 040003 100001 100002 100003 177777 T12TBE: M 989 992 030450 993 030476 994 030552 995 030641 996 030737 997 031025 998 031116 1883 031207 1001 .WORD .WORD .WORD .WORD .WORD .WORD PAGE 90-4 SEQ 0146 010003 020001 020002 020003 040001 040002 040003 100001 100002 100003 177777 4 sLOCAL TEXT MESSAGES FOR TEST 104 103 103 115 102 105 127 124 115 157 157 145 141 170 162 123 101 156 156 163 143 160 151 123 TST121D: T12GETSSR: T12WRTSSR: T12MSGBUF: T12BKGND: T12NINT: T120PR: T12NXM: EVEN +ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ LASCIZ 'DMA Memory Addressing’ ‘Contents of TSSR Incorrect After GET STATUS® ‘Contents of TSSR Incorrect After WRITE CHARACTERISTICS® ‘Message Buffer Contents Incorrect After WRITE CHARACTERISTICS® 'Background Pattern Disturbed By WRITE CHARACTERISTICS® ‘'Expected Interrupt Not Received On WRITE CHARACTERISTICS® ‘Write Characteristic data in ram does not match expected’ °TSSR NXM bit failed to set when non-existent memory address specifi TSVS ~ HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 3: SUBTEST &4: NXM TO SELECTED INVALID ADDRESSES SEQ 0147 o md b b b b OV NOWVSHWN=O INPUTS: RO R1 HIGH ORDER ADDRESS BITS LOW ORDER ADDRESS BITS b b e OUPTUTS: T12PAR6 = ADDRESS BIASED TO PAR6 IF >28K UNDER TEST T12HIADD = HIGH ORDER ADDRESS IN NON PAR6 FORMAT T12L0ADD = LOW ORDER ADDRESS IN NON PARG FORMAT C BIT = 1 IF GOOD ADDRESS RETURNED C 8IT = 0 IF TEST PATTERN DID NOT YIELD A VALID ADDRESS 1023 031316 1024 031316 1025 031322 1026 031326 1027 031332 1028 031336 1029 031342 1030 031344 1031 031350 1032 031354 1033 031360 1034 031362 1035 031366 1036 031372 1037 031376 1038 031402 1039 031406 1040 031410 1041 031412 1042 031416 1043 031420 1044 031424 1045 031426 1046 031430 1047 031434 1048 031436 1049 031436 1050 031442 1051 031444 1052 031450 1 10 1056 1057 1058 1059 E 12 1R sROUTINE TO CONVERT A TEST PATTERN TO A VALID ADDRESS IN DIAGNOSTIC FREE SPACE : DIAGNOSTIC FREE SPACE 1S BETWEEN THE END OF THE DIAGNOSTIC AND THE BEGINNING OF THE SUPERVISOR. THIS IS ALWAYS BELOW 24K. IF MEMORY ABOVE 28k SPECIFIED (VIA R1) THEN PAR 6 IS SET TO THE RELOCATION BASE. NN b b b b b b d b wed b d (=lelololelelalelolele) 1003 1004 1005 1006 1007 1008 PAGE 91 031464 031466 031472 031476 T 12CONVERT: 005037 005037 005037 042701 010005 004737 013702 062702 060102 042702 013703 162703 010237 010237 020203 101007 020237 103007 005737 001004 000424 162702 000754 005737 001420 005737 001413 004737 010500 010037 010201 004737 010037 103403 SAVREG CLR CLR CLR BIC 030304 030302 030306 170000 MOV JSR MOV ADD ADD 017274 003124 000020 000003 003130 000020 030304 030306 25%: 003134 003134 003132 017256 030302 017316 030306 su8 MOV MOV cMpP BHI CMP BHIS 003124 000020 BIC MOV 35¢: 50%: TST BNE BR sue BR TST BEQ TST 8EQ JSR MOV MOv MOV JSR MOV BCS T12LOADD T12HIADD T12PAR6 #°C<7777>.R1 RO,RS PC.KTOFF FREE,R2 #16. .R2 R1,R2 #3.R2 FREEHI ,R3 #16. RS R2,T12L0ADD R2. T12PARG R2.R3 35% R2,FREE 50§ KTENABLE 508 90% #16..R2 JSAVE R1=RS UNTIL NEXT RETURN JCLEAR LOW ADDRESS JCLEAR HIGH ADDRESS JCLEAR PARG6 BIASED ADDRESS sFORCE TO LOWER 12 BITS OF ADDRESS ;SAVE HIGH ORDER ADDRESS BITS JSHUTOFF MEMORY MANAGEMENT ;GET FIRST FREE ADDRESS SIN CASE TEST PATTERN=0 JADD IN TEST PATTERN JMAKE IT MODULO-4 JGET LAST FREE ADDRESS SAVE AT LEAST 8 WORDS (IN CASE MESSAGE BUFFER) ;SAVE POSSIBLE LOW ADDRESS ;SAVE IT IN PARG BIASED T0O ;1S THIS ADDRESS ABOVE FREE SPACE? ;B8R JF YES :1S IT IN FREE SPACE? :BR IF YES- ITS GOOD JTESTING ABOVE 28k? :BR IF YES ;sBR IF NOT IN FREE SPACE JFORCE FIT THE TEST PATTERN 258 sTRY THIS TEST PATTERN ADDRESS KTENABLE 100$ KTFLG sTESTING ABOVE 28k? :BR IF NO PC,SETMAP ?0 T12PARG 05s sANY MEMORY ABOVE 28k? :BR _IF NO sTURN ON MEMORY MANAGEMENT :GET HIGH ORDER ADDRESS sSAVE POSSIBLE HIGH ADDRESS sGET COMPUTED LOW ORDER ADDRESS sRETURN PARG BIASED ADDRESS IN RO ;COPY PARG6 BIASED ADDRESS sBR IF VALID ADDRESS ——d — — — MACRO M1113 25-MAY-82 09:19 1060 031500 1061 031502 1062 0315064 }062 031506 060241 000401 000261 90$: SEQ 0148 CLC 105% B8R SEC RTS 1008: 1058: 000207 PAGE 91-1 PC sCLR C BIT FOR FAILURE *SET SUCCESS JRETURN 1 b g :ROUTINE TO READ THE FIRST 2 BYTES FROM RAM sMEMORY AND COMPARE THIS DATA TO A COMMAND PACKET. Ré RS ADDRESS OF THE COMMAND PACKET FIRST DEVICE UNIBUS ADDRESS CARRY SET = RAM MATCHES PACKET CLR = RAM DOES NOT MAT(CH PACKET OUTPUT: IMPLICIT OUTPUT: THE TABLE RAMDATA IS FILLED WITH THE DATA HELD IN RAM. RAMSIZ SET TO 2 FOR PRAMPKT ROUTINE SIDE EFFECTS: THE SUBSYSTEM IS LEFT IN MAINTENANCE MODE - e AR X FE FIN NI FN FI I PR FE FE TN FE TN T PN TN PN PN LINPUT: 1095 031520 1096 031524 1097 031526 1098 031532 1099 031540 1100 031544 1101 031550 1102 031554 1103 031560 1104 031562 1105 031564 1106 031566 1107 031570 1108 031574 1109 031576 1110 031600 1111 031602 1112 031 1113 031606 1114 031610 ;}}2 031616 012701 012702 005003 004737 112765 004737 010265 004737 116511 122124 001401 005203 005202 020227 002761 005703 001402 000241 000401 000261 012737 000207 2CKRAM:: SAVREG 002242 000201 016336 000000 016336 000000 016336 000000 000000 MOV MOV ;gflPKTBEG.RZ Mov8 #0,TSDB(RS) MOV R2,TSDB(RS) MOvVB TSBA(RS), (R1) CLR JSR 108 : JSR JSR 208 : 000203 (MPB BEQ INC INC CMP BLT TST 8EQ 000002 002502 308 : 50%: CLC BR SEC MOV RTS #RAMDATA R1 PC,CHKTSSR sSAVE THE GENERAL REGISTERS sADDRESS TO SAVE THE RAM DATA sBYTE ADDRESS OF FIRST RAM DATA sCLEAR THE ERROR FLAG SWAIT FOR SSR sSET MAINTENANCE MODE PC,CHKTSSR SWAIT FOR SSR TO SET PC,CHKTSSR sWAIT FOR SSR TO SET sREAD THE RAM DATA (R1)+,(R4)+ 208 R3 R2 R2 ,#RMPKTBEG+2 108 R3 308 508 #2 ,RAMS12 PC sSELECT NEXT RAM ADDRESS s COMPARE TO EXPECTED ¢BRANCH IF 0K sSET ERROR FLAG sADDRESS OF NEXT RAM LOCATION :DONE 2 BYTES? :BR IF NO cWAS AN ERROR FOUND ? sBRANCH [F NOT sCLEAR CARRY TO SHOW ERROR sAND EXIT s SHOW GOOD COMPARE sSETUP RAMS]2 sRETURW ok TSVS = HARDWARE TESTS TEST 3: SUBTEST &: NXM TO SELECTED INVALID ADDRESSES MACRO M1113 25-MAY-82 09:19 TEST 3: SUBTEST &: NXM TO SELECTED INVALID ADDRESSES PAGE 91-2 12 SEQ 0149 e ed=lelelalelelelelelelale] :ROUTINE TO SETUP PACKET TO WRITE CHARACTERISTICS T12SWRT: 012701 012721 012721 030240 100004 MOV CLR MOV 31662 ?Ex 000016 MOV CLR CLR RTS 000207 NT12PACKET,R1 #100004, (R1)+ #T12DATA,(R1)+ (R1) + #8., (R1)+ ?;}gsra.<n1)+ + 4., (R1)+ (R1)+ (R1) PC :SAVE THE REGISTERS :START OF THE PACKET :WRITE CHARACTERISTICS WITH ACK :ADDRESS OF CHAR DATA BLOCK *EXTENDED ADDRESS *SIZE OF DATA BLOCK IN BYTES *ADDRESS OF MESSAGE BUFFER ;LENGTH OF MESSAGE BUFFER :RETURN VWAV VAWVAWWAWIW S BN I8 85 85 85 85 B 8 8 WU W N ;0 b D :ROUTINE TO SETUP A GET STATUS COMMAND PACKET AT CURRENT PACKET ADDRESS : D - —d D b D : ; b b b ad e wd D b wd wd cod = b b b 010401 005737 001404 010300 004737 010001 012700 052700 010021 005021 000207 R3 MOV 003134 ST BEQ MOV 017316 000017 100000 JSR 108: HIGH ORDER PACKET ADDRESS R% LOW ORDER PACKET ADDRESS NOTE: R3 IS IGNORED IF KTENABLE FLAG CLEAR T12SETGET: SAVREG R4 R KTENABLE 108 R3.R0 PC.SETMAP MOV RO.R1 MOV RO, (R1)+ MOV 8IS CLR RTS OO OO :SAVE THE REGISTERS SGET LOW ORDER ADDRESS STESTING ABOVE 28K? ‘SR IF NO *GET MIGH ORDER ADDRESS *RETURN ADDRESS BIASED TO PAR6 IN RO *GET ADDRESS #P_GETSTATUS.RO :GET STATUS COMMAND CODE NO IE #P.ACK,RO ‘SET ACK (Ri)+ PC SSTORE GET STATUS IN PACKET *CLEAR UNUSED WORD *RETURN :0 b SROUTINE TO SETUP A CHARACTERISTIC DATA BLOCK AT A TEST ADDRESS T12CHAR: N P b OOOO&OOOO O b wd b cud b wd b wd b NN NN —d wd MOV 030250 030262 31654 SAVREG MOV 000010 D ccd d ) D d D d b b b wd e d el NN W W NN N RV PO NI RO PO NI PO D D e = = D D L] 31750 030250 030304 003134 030306 108: SAVREG MOV MOV ST BEQ MOV MOV MOV #T12DATA,RO T12L0ADD .R1 KTENABLE 108 T12PARG.R1 (RO)+, (R1)+ (RO)+. (R1)+ ;SAVE R1-RS UNTIL NEXT RETURN SGET T12PACKET DATA POINTER *ASSUME NOT ABOVE 28K STESTING ABOVE 28K? *BR IF NO *SET TEST ADDRESS ABOVE 28K *STORE DATA WORD 1 *STORE DATA WORD 2 — TSVS = HARDWARE TESTS TSVS = HARDWARE TESTS TEST 3: 1174 1175 1176 }};; SUBTEST 4: 031762 031766 031766 031770 012021 012021 012021 000207 1179 031772 031772 031772 MACRO M1113 25-MAY-82 09:19 NXM TO SELECTED INVALID ADDRESSES MOV MOV MOV RTS ENDTST 104401 PAGE 91-3 (RO)+, (R1)+ (RO)+,(R1)+ (RO)+,(R1)¢ PC SEQ 0150 sSTORE DATA WORD 3 sSTORE DATA WORD 4 :STORE DATA WORD 5 sRETURN L10042: TRAP CSETST — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 3: SUBTEST 4: NXM TO SELECTED INVALID ADDRESSES 1181 PAGE 92 I 12 SEQ 0151 TSVS - HARDWARE TESTS TEST &: MACRO M1113 RAM EXERCISER TEST 25-MAY-82 09:19 SEQ 0152 1183 LSBTTL TEST 4: RAM EXERCISER TEST 1186 sTHIS TEST USES THE READ AND WRITE RAM (BOTH SINGLE AND 256 }}gg :TO EXERCISE THE CONTROLLER'S RAM MEMORY AND DMA LOGIC 1190 . 1187 | J 12 PAGE 93 ;LOCATIONS) 1191 031774 1198 005737 001402 002214 1201 032006 012700 034433 1200 032002 1202 032012 1203 032016 1204 032024 1205 1206 }ggg 005237 004737 012737 003400 016510 000005 108: 002216 TISLOOP: . : STEST &, 1209 : 1212 1213 032024 032024 0320246 1214 032026 032026 .= }S}? ; 032032 1215 032034 1216 032040 1217 032042 1218 032046 1219 032052 104402 012700 104441 005737 001402 000137 004737 004737 1220 032056 004737 1225 032064 1226 032066 010001 1221 032062 032066 032070 032072 032076 1227 032076 1228 032076 1229 032102 1230 032106 1234 032110 1235 032112 032112 032114 03216 032120 1236 032122 103405 000000 003400 032324 034452 034524 015774 103405 033350 010662 208: 000400 TSTCNT 108 SKIPT #TST1SID RO PC,TSTSETUP #5.LOOPCNT JCHECK FOR RUN MODE :BR, IF NOT ONLY PROGRAM RUN JSET SKIP Sw JASCI1 MESSAGE TO IDENTIFY TEST ;D0 INITIAL TEST SETUP *PERFORM 5 ITERATIONS THIS SUBTEST WRITES THE ADDRESS (8 BITS) RAM MEMORY SINGLE WORD (8 BITS) MODE BGNSUB INTO THE $/171111171117 BEGIN SUBTEST /771111111171 T4.1: TRAP csBsSUB ;LOWER PRIORITY TO ALLOW INTERRUPTS MOV #PRI0OO,RO SETPRI #PRI00 TST BEQ JMP JSR JSR SKIPT 108 50% PC,TI1SREST PC.T15RT2 ;SHOULD WE SKIP THIS SUBTEST :BR, IF NOW SKIP REQUIRED JSKIP SUBTEST JSET COMMAND PACKET *SET UP OTHER COMMAND PACKET B8CS 208 :BR IF INIT WAS OK PC.SOF INIT RO.R1 ERRNO, SFIERR, SFIMSG TRAP :CONTENTS OF TSSR REGISTER SFATAL ERROR TSSR WAS NOT OK TRAP WORD .WORD .WORD #T1SPACKET,R4 PC,WRTCHR :SUBROUTINE NEEDS PACKET ADDRESS SISSUE WRITE CHARACTERISTICS MOV ERRHRD RO,R1 ERRNO,WRTMSG,SFIMSG sSAVE CONTENTS OF TSSR JWRITE CHARACTERISTISC FAILED TRAP WORD WORD MoV #256..R3 ;STARTING ADDRESS FOR RAM WR]TE 23‘ CSSPR] :DO INITIALIZE ON CONTROLLER MOV JSR BCS 238: T4:: SUBTEST 1 JSR 010001 104456 000622 005056 012034 012703 TST BEQ INC MOV JSR MOV MOV ERRDF 104455 000621 003652 012034 012704 004737 108: THE WRITE SUBSYSTEM MEMORY COMMAND BGNTST 031774 1198 031774 1199 032000 SELECT CODES OF CSERDF 401 SFIERR SFIMSG ;BR, IF COMMAND ]SSUED 0K .WORD CSERHRD 402 WRTMSG SF IMSG -nf a=d —_— ——— 4&: MACRO M1113 RAM EXERCISER TEST 000001 000002 25-MAY-82 09:19 €34061 034060 034062 034050 L6064 00,000 016336 25$: PAGE 93-1 #1,715881 #2,7158S0 sSIZE OF TRANSFER MOV MOV Move MOV R3,T1552 sADDRESS FOR RAM R3,T15s3 cDATA FOR WRITE (ADDRESS) s ISSUE COMMAND ATi5PK2.RG R&.TSDB(RS) PC,CHKTSSR 30§ ERRNO, T15SSR,PKTSSR b b b SR o (=1 i=lelelolelolela] W WW WWNWWWNWNWW ~N NN NNRNININNINN N N NININLNININININ N Ve S WWWNNININ) = = &H» O NSO SNOONN 5 032210 b cnd b ed b — ¢WRITE RAM ‘‘COMMAND’’ cWRITE SUBSYS MEM PACKET ¢WAIT FOR SSR ¢8R, IF NO ERROR ;ERROR, SAVE TSSR sTSSR NOT CORRECT AFTER WRITE SUB MEM TRAP .WORD .WORD 012046 .WORD ESCAPE 104410 000122 30$: 104406 CSERHRD 403 TI5SSR PKTSSR sDON'T CONTINUE IF ERROR ON WRITE TRAP CkLOoOP :SCOPE LOOP CSESCAPE .WORD L10050-. TRAP CsCLP 4 b cub b D —d ol NONININNININNININININI NN N o ONONON O NN W ALY ALY, WA= O 000 ~NO W 032202 032204 1252 032206 032206 SEQ 0153 Move Movs RO.R1 032200 1251 032202 and TSVS = HARDWARE TESTS TEST 70 032256 032256 032260 032262 032264 1271 032266 032266 1272 032270 1273 032274 1274 032276 1275 032300 1279 032302 032302 032304 032306 032310 1280 032312 032312 1281 032314 1282 032316 1283 032322 1284 032324 032324 005203 020327 001351 005002 005303 110337 010337 112737 010465 004737 103405 010001 010000 034064 034062 000001 000000 016336 408: 034060 013701 010302 438: 033412 001404 104406 005303 020327 001340 106406 R3,T1583 R3.T1552 43§ ERRNO, T15SSR,PKTSSR (KLOOP 45%: kLoop 50%: DEC CMP BNE ckLoopP 000377 sCi EAR QUT R2 HIGH BITS :SET BACK 10 7777 sCET DATA PATTERN BACK IN SHAPE +ADDRESS FOR RAM READ RO,R1 BEQ ERRHRD 104456 000625 034345 015502 R2 R3 25% MOV MOV MOV (MPB 120102 sNEXT ADDRESS #1.115850 R4 . TSDB(RS) PC.CHKTSSR ERRDF 012046 R3 R3,#10000 MOvV8 MOV MOV8 MOV JSR B8(CS 104455 000624 034066 104406 INC CMP BNE CLR DEC SEND OF RAM MEMORY CHECK sLOOP TILL ALL RAM WRITTEN cREAD RAM COMMAND sSEND OUT PACKET ADDRESS TO CONTR. sWAIT FOR READY, NON-AMB]GUOUS ¢BR, IF NO PROBLEM :SAVE TSSR cTSSR NOT CORRECT :SCOPE LOOP T158FR+20,R1 R3,R2 R1,R2 4 5$ ERRNO, T15AM4 ,EXPBREC sGET RAM READ DATA sSET UP FOR COMPARE sCHECK WITH DATA WRITTEN 40% CSERDF 404 T15SSR TRAP CSCLPY .WORD sBR IF OK, DATA IN = DATA OUT SWRITTEN DATA NOT = TO READ TRAP < SCOPE LOOP R3 R3,#255. TRAP -WORD .WORD PKTSSR CSERHRD .WORD +WORD 405 T15AMS EXPBREC TRAP CSCLP TRAP cscLet sDROP DATA COUNTER (PATTERN) ;AT BOTTOM YET :8R, IF MORE TO CHECK ;SCOPE LOOP - —_— &4: MACRO M1113 RAM EXERCISER TEST 1285 0%%%56 0 6 6 032326 25-MAY-82 09:19 ENDSUB 104403 PAGE 93-2 SEQ 0154 SMNAVAMMANNAANNAN END SUBTEST NAANNANANL L10050: TRAP C$Fsus - TSVS = HARDWARE TESTS TEST TSVS = HARDWARE TESTS TEST 4: MACRO M1113 RAM EXERCISER TEST 25-MAY-82 09:19 1288 1289 032330 1290 1291 1292 1293 032330 032330 1309 032362 1310 032366 1311 032372 1315 032374 1316 032376 032376 032400 032402 032404 1317 032406 1318 032406 1319 032414 1320 032420 1321 032424 1322 032432 004737 004737 004737 103405 010001 034452 034524 015774 104455 000626 003652 012034 012704 004737 103405 010001 20$: 033350 010662 104456 000627 005056 012034 112737 012704 012703 112737 105037 010337 010465 004737 1327 032454 1331 032456 010001 103405 032456 032460 032462 032464 1332 032466 032466 1333 1334 1335 032470 1336 032472 005203 020327 1338 032500 005303 1337 032476 2//7/7/7777//7 BEGIN SUBTEST //7/77/7/77/ 14.2: TRAP ($BSUB Mg : STEST 4, SUBTEST 2 . ; ; THIS SUBTEST WRITES RAM WITH ALL ZEROS ; THEN WALKS AN ALL ONES WORD DOWN THROUGH MEMORY 1323 032436 1324 032442 1325 032446 1326 032452 SEQ 0155 104402 1294 032352 032354 032356 032360 1308 032362 M 12 BGNSUB 1295 1296 }%g; 1299 032332 1300 032336 1301 032342 1302 032346 1306 032350 1307 032352 PAGE 94 000001 034050 000400 000002 034004 034062 000000 016326 104456 000630 034066 012046 034060 308: PC,T1SREST PC.T15RT2 PC.SOFINIT 20$ RO,R1 ERRNO, SFIERR, SF IMSG MOV JSR BCS MOV ERRHRD #T1SPACKET,R4 PC.WRTCHR 25% RO.R1 ERRNO,WRTM SFSG, IMSG 010000 35%: ;RESTORE PACKET FOR WRITE CHARA *RESTORE PACKET FOR WRT SUB SYS MEM ;D0 INITIALIZE ON CONTROLLER :BR IF INIT WAS OK *CONTENTS OF TSSR REGISTER SFATAL ERROR TSSR WAS NOT OK TRAP WORD .WORD -WORD MOVB MOV MOV Move CLRB #1,T158S1 #T15PK2 R4 #256. ,R$ #2,T158B50 T15s3 :STARTING ADDRESS IN RAM SWRITE RAM COMMAND :SET DATA TO 000 R3,T1552 R4 .TSDB(RS) PC.CHKTSSR SADDRESS TO PACKET DATA AREA *SEND OUT PACKET ADDRESS ‘WAIT FOR SSR MOV ERRHRD RO,R1 ERRNO,T15SSR,PKTSSR SSAVE TSSR :TSSR NOT CORRECT CKLOOP :BR, IF NO PROBLEM :SCOPE LOOP INC CMP R3 R3,#10000 :NEXT ADDRESS SEND OF RAM MEMORY CHECK DEC R3 sSET BACK T0 7777 BNE 308 WRTMSG SFIMSG ;SET SIZE OF TRANSFER 1 BYTE SSET NEW PACKET ADDRESS MOV MOV JSR 33§ CSERDF 406 SFIERR SFIMSG :SUBROUTINE NEEDS PACKET ADDRESS SISSUE WRITE CHARACTERISTICS *BR, IF COMMAND ISSUED OK SSAVE CONTENTS OF TSSR ‘WRITE CHARACTERISTISC FAILED TRAP CSERHRD WORD 407 ‘WORD -WORD BCS 338: 104406 001357 034061 258: JSR JSR JSR BCS MOV ERRDF :BR, MORE RAM TO GO TRAP .WORD -WORD "WORD CSERHRD 408 T15SSR PKTSSR TRAP C$CLPY 1339 032502 005002 112737 010337 010465 004737 103405 010001 000001 034062 25-MAY-82 09:19 SEQ@ 0156 034060 000000 016336 1353 032552 1357 032554 032554 032556 032560 032562 1358 032564 032564 1359 1360 1361 1362 1363 032566 032572 0326350 032606 032612 1364 032616 1365 032620 1369 032622 032622 032624 032626 032630 1370 032632 032632 1371 032634 1372 032642 1373 032646 1374 032652 1375 032654 1379 032656 032656 1380 1381 1382 1386 032666 032672 032674 032676 032676 032700 032702 032704 1387 032706 000631 034066 012046 106406 013701 120102 001404 418: 033412 012702 112737 112737 010465 004737 103405 010001 428: 000377 000002 000377 000000 016336 MOV ERRHRD 000001 000000 016336 034060 Movse MOV 448: 104456 000635 034142 015502 45%: PC,CHKTSSR 418 RO,R1 T15BFR+20,R1 R1,.R2 428 ERRNO, T15AM3 EXPBREC #000377,R2 #2,7158S0 #000377,715S3 R4,TSDB(RS) PC,CHKTSSR 438 RO,R1 ERRNO,T15SSR,PKTSSR #1,T15850 R4 .TSDB(RS) ERRD# ERRNO, T15SSR,PKTSSR CkLooP sADDRESS TO BE READ TO PACKET DATA ¢ SEND OUT PACKET ADDRESS cWAIT FOR SSR TO SET sBR, IF ALL IS WELL sSAVE TSSR s TSSR NOT CORRECT TRAP PC.CHKTSSR RO,R1 T158FR+20,R1 R1,R? 45% ERRNO, T15AM2 ,EXPBREC .WORD .WORD .WORD CSERHRD 409 T15SSR PKTSSR TRAP CSCLP ¢PICK UP READ DATA sB0TH SHOULD BE 00000000 BINARY s8R, IF DATA IS GOOD s CHARACTERISTICS DATA NOT CORRECT TRAP CSERHRD sSET ALL ONES WORD .WORD .WORD .WORD 410 TRAP csCLP1 T15AM3 EXPBREC sWRITE RAM COMMAND sALL ONES PATTERN sPASS PACKET ADDRESS TO CONTR. sWAIT FOR SSR ¢BR, IF OK (NO ERROR) :SAVE TSSR ¢ TSSR NOT CORRECT :SCOPE LoOOP 48 CMPB BEQ ERRHRD cREAD RAM COMMAND :SCOPE LOOPER JSR 8(s MOV ¢SET TO ALL ZEROS +SCOPE LOOP CKLOOP MOV 033412 R4, TSDB(RS) CKLOOP Move MOV JSR 8(S 43$: R3,T1582 CKLOOP MOv8 104455 000634 034066 012046 013701 120102 001404 ERRNO,T15SSR,PKTSSR MoV 034060 034064 000633 034066 012046 112737 010465 004737 103405 010001 ERRHRD CMPB BEQ ERRHRD 104456 104406 R2 #1,715850 MOV 104456 000632 034243 015502 104406 CLR Move MOV MOV JSR BCS MOV 104456 032540 1350 032542 032542 1351 032544 1352 032550 PAGE 94~1 wd MACRO M1113 &: RAM EXERCISER TEST ¢cSET UP FOR RAM READ s ISSUE RAM READ sWAIT FOR SSR TO SET ¢BR, IF OK (NO ERROR) sSAVE TSSR sTSSR NOT CORRECT 41 T15SSR TRAP cscLPl TRAP -WORD .WORD .WORD sPICK UP REC'D DATA sCHECK WITH DATA WRITTEN sBR IF 0K, DATA IN = DATA OUT ;WRITTEN DATA NOT = TO READ TRAP .WORD :SCOPE LOOP CSERARD TRAP -WORD -WORD .WORD .WORD W0 ) PKTSSR CSERDF 412 T15SSR PKTSSR CSERHRD 613 T15AM2 EXPBREC - TSVS ~ HARDWARE TESTS TEST TSVS = HARDWARE TESTS TEST &: MACRO M1113 RAM EXERCISER TEST 032706 1388 032710 1389 032712 }gg? 032716 104406 005303 020327 001271 1392 032720 032720 93 032720 000377 25-MAY-82 09:19 DEC CMP BNE ENDSUB 104403 PAGE 94-2 R3 R3,#255. 40% SEQ 0157 TRAP sDROP RAM ADDRESS POINTER sAT START YET CSCLPY ;BR, IF MORE RAM TO CHECK SVAAMANANAANNAL END SUBTEST AN\ L10051: TRAP ($ESUB TSVS = HARDWARE TESTS TEST 4&: HA%RO M1113 RAM EXERCISER TES 25-MAY-82 09:19 1396 1397 1398 1399 BGNSUB c$8su8 TRAP M 4 :TEST 4, SUBTEST 3 T1HIS SUBTEST WRITES RAM WITH ALL ONES THEN WALKS AN ALL ZEROS WORD DOWN THROUGH MEMORY 032724 032730 032732 032736 032742 032746 032752 032754 032756 005737 001402 000137 004737 004737 004737 103405 003400 033326 034452 034524 015774 108: 010001 ERRDF 104455 012704 004737 103405 20$: 033350 010662 ERRHRD 000001 034050 000400 000002 000377 034062 000000 016336 034066 012046 1442 1443 033076 1444 033100 1445 033104 005203 020327 001357 208 RO,R1 ERRNO,SFIERR,SFIMSG sFATAL ERROR TSSR WAS NOT OK TRAP #T15PACKE R4 T PC,WRTCHR 034061 034060 034064 25$: 308: 010000 Movs MOV MOV MOv8 MOv8 Mov MOV JSR BCS MOV ERRHRD 33s: CSERDF 414 SFIERR SFIMSG 25% ERRNO,WRTMSG, SFIMSG s SUBRQUTINE NEEDS PACKET ADDRESS sISSUE WRITE CHARACTERISTICS ;BR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED .WORD -WORD 104456 000640 104406 PC,SOFINIT TRAP 000637 005056 012034 033074 MOV MOV 1046456 PC.TI15REST PC,T15RT2 s CHECK RUN MODE :BR, IF NO SKIP :SKIP SUBTEST cRESTORE PACKET FOR WRITE CHARA sRESTORE PACKET FOR WRT SUB SYS MEM ;00 INITIALIZE ON CONTROLLER s8R IF INIT WAS 0K cCONTENTS OF TSSR REGISTER .WORD .WORD JSR 8CS 010001 112737 012704 012703 112737 112737 010337 010465 004737 103405 010001 TST BEQ JMP JSR JSR JSR 8(s MOV 000636 003652 012034 1441 I117171717777 BE?{N}SUBTEST 111111717777 104402 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1414 1415 c13 SEQ 0158 1395 032722 032722 032722 PAGE 95 #1,T15881 2T15PK2 R4 #256. RS #2, 715850 #377.715s3 R3,T15s2 R4 ,TSDB(RS) P(,CHKTSSR 33§ RO,R1 ERRNO,T15SSR,PKTSSR (kLOOP INC (MP BNE WRTMSG SFIMSG sSET SIZE TO 1 BYTE sSET NEW PACKET ADDRESS sSTARTING ADDRESS IN RAM sWRITE RAM COMMAND :SET DATA 10 377 sADDRESS TO PACKET DATA AREA sSEND OUT PACKET ADDRESS sWAIT FOR SSR :BR, IF NO PROBLEM sSAVE TSSR s TSSR NOT CORRECT ;SCOPE LOOP R3 R3,#10000 308 CSERHRD 415 sNEXT ADDRESS cEND OF RAM MEMORY CHECK ;BR, MORE RAM TO GO TRAP -WORD .WORD TRAP CSERHRD 416 T15SSR PKTSSR CSCLP TSVS = HARDWARE TESTS TEST &: MACRO M1113 RAM EXERCISER TEST 1446 033106 1447 033110 1448 033114 1449 033122 1450 033126 1451 033132 1652 033136 1453 033140 1457 033142 033142 033144 033146 033150 1458 033152 033152 005303 112702 112737 010337 010465 004737 103405 010001 104406 033154 033160 033162 033164 013701 120102 001404 1466 1467 1468 1469 1470 033174 033200 033206 033214 033220 012702 012737 112737 010465 004737 1472 033226 1476 033230 033230 033232 033234 03323¢ 1477 033240 010001 1478 1479 1480 1481 1482 1486 112737 010465 004737 103405 010001 1471 033224 033240 033242 033250 033254 033260 033262 033264 033264 033266 033270 033272 1487 033274 1488 033300 1489 033302 1493 033304 033304 033306 033310 033312 1494 033314 033314 034060 104456 000641 034066 012046 1459 1460 1461 1465 033164 033166 033170 033172 000377 000001 034062 000000 016336 25-MAY-82 09:19 104456 000642 034243 015502 103405 418: 033412 000377 000002 000377 000000 016336 034060 034064 428: 43$: 000001 000000 016336 034060 033412 001404 104456 000645 034162 015502 104406 :SET BACK TO 7777 *SET TO ALL ONES *READ RAM COMMAND *ADDRESS TO BE READ TO PACKET DATA <SEND OUT PACKET ADDRESS SWAIT FOR SSR TO SET :BR, IF ALL IS WELL *SAVE TSSR STSSR NOT CORRECT :SCOPE LOOP TRAP WORD .WORD .WORD CSERHRD 417 T15SSR PKTSSR TRAP (S$CLP1 TRAP .WORD WORD .WORD CSERHRD 418 T15AmM3 EXPBREC T158FR+20,R1 R1,R2 428 ERRNO,T15AM3,EXPBREC :PICK UP READ DATA :BOTH SHOULD BE 11111111 BINARY :BR, IF DATA IS GOOD :CHARACTERISTICS DATA NOT CORRECT MOV MOV MOVB MOV JSR #000377.R2 #2.715850 #000377.T15s3 R4, TSDB(RS) PC.CHKTSSR ;SET ALL ONES WORD SWRITE RAM COMMAND sALL ONES PATTERN *PASS PACKET ADDRESS TO CONTR. ‘WAIT FOR SSR RO,R1 ERRNO, T1SSSR,PKTSSR *SAVE TSSR :TSSR NOT CORRECT 438 CKLOOP MoV (MP8 BEQ ERRHRD 458 : R3 #377.R2 #1.T158S0 R3.T1552 R&.TSDB(RS) PC.CHKTSSR 418 RO,R1 ERRNO,T15SSR,PKTSSR SEQ 0159 MOV CMPB BEQ ERRHRD MOvE MoV JSR 8CS MOV ERRHRD 448: D 13 CKLOOP MOV ERRHRD 104456 000644 034066 012046 013701 120102 DEC MOove MOVB MOV MOV JSR BCS MOV ERRHRD BCS 104456 000643 034066 012046 104406 358: 408: PAGE 95-1 CKLOOP :BR, IF OK (NO ERROR) :SCOPE LOOP #1,T158S0 R4 . TSDB(RS) PC.CHKTSSR 48 RO,R1 ERRNO,T15SSR,PKTSSR T158FR+20,R1 R1.R2 «5$ ERRNO,T15AM2,EXPBREC ;SET UP FOR RAM READ *ISSUE RAM READ SWAIT FOR SSR TO SET *BR, IF 0K (N~ "ROR) *SAVE TSSR :TSSR NOT CORRECT TRAP .WORD .WORD .WORD CSERHRD 419 T1S5SSR PKTSSR TRAP CSCLP1 TRAP .WORD .WORD .WORD 420 T15SSR PKTSSR CSERHRD :PICK UP REC'D DATA SCHECK WITH DATA WRITTEN :BR IF OK, DATA IN = DATA OUT :WRITTEN DATA NOT = TO READ ;SCOPE LOOP TRAP LWORD .WORD .WORD CSERHRD 421 T15AM2 EXPBREC TRAP CS$CLPY | TSVS ~ HARDWARE TESTS TEST &: MACRO M1113 RAM EXERCISER TEST 1495 033316 1496 033320 1497 033324 1498 1499 033326 1500 033326 033326 033326 065303 020327 001271 25-MAY-82 09:19 DEC CMP BNE 000377 508$: 104403 ENDSUB PAGE 95-2 R3 R3,#255. 4«0% 13 SEQ 0160 :DROP RAM ADDRESS POINTER ;AT START VYET :BR, IF MORE RAM TO CHECK SNANNAANNAANNNANY END SUBTEST ANNVAAALNNWWL L10052: TRAP C$ESUB TSVS - HARDWARE TESTS 000137 032024 1046432 001216 63%: J3SR BCC JMP EXIT PC,TSTLOOP 638 T15L00P TST ;DO WE NEED TO ITERATS TEST ? ¢BRANCH IF NOT sEXECUTE AGAIN ;ALL DONE THIS TEST TRAP .WORD CSEXIT L10047-. sLOCAL STORAGE FOR THIS TeST 033350 =<, +10>8177770 100204 033360 000000 000010 O ~NO W 26 033372 033372 000000 000400 000000 000000 T15PACKET: .WORD .WORD .WORD .WORD T15DATA: .WORD -WORD -WORD .WORD T158FR: .BLKW 100204 T15DATA sCOMMAND PACKET FOR TEST JWRITE CHARACTERISTICS COMMAND, WITH [E, ACK sADDRESS OF CHARACTERISTICS BLOCK sSTARTING VALUE OF BLOCK SIZE 15BFR s CHARACTERISTICS DATA BLOCK cADDRESS OF MESSAGE BUFFER 5 ;LENGTH OF MESSAGE BUFFER 5 sMESSAGE BUFFER *WRITE SUBSYSTEM MEMORY COMMAND PACKET VW NO QO (=] &~ gyn 034050 - o r 034054 o LR wn 016456 103002 SEQ 0161 14 2 2 %2 033364 W WIWNINNA 004737 (=l =1 ] 1 1 1 1 1 1 1 1 033342 033344 =2 OOV 0 0 033330 033334 033336 033342 F 13 0O VWAL o NO NSOV ~ 1502 1503 1506 1505 1506 RAM EXERCISER TEST PAGE 96 —-ONO—~ 4: 25-MAY-82 09:19 100206 034060 000000 000006 000 000 000000 000000 T15PK2: T158F2: T158S0: T158S1: T15S2: T1583: .=<.+10>8177770 .WORD .WORD .WORD .WORD 100206 T158F2 0 6. ;WRITE SUB SYS MEM COMMAND, IE AND ACK sADDRESS OF SELECT BLOCK DATA sSIZE OF DATA PACKET .EVEN .BYTE .BYTE .WORD .WORD olelale] TEST MACRO M1113 ;BSELO AREA ;BSEL1 AREA JSEL 2 AREA JDATA AREA TSVS - HARDWARE TESTS TEST &: HA%RO M1113 RAM EXERCISER TES 25-MAY-82 09:19 G 13 PAGE 97 SEQ 0162 1547 1548 1549 H ;LOCAL TEXT MESSAGES FOR TEST 1331 1552 034066 1553 034142 1554 034243 1555 034345 1556 034433 1557 127 127 127 127 122 122 122 122 122 101 111 111 111 111 115 3 TI5SSR: .ASCIZ T15AM2: _ASCIZ T15AM3: _ASCIZ T15AM4: _ASCIZ TSTI5ID: .EVEN ‘WRITE °'WRITE °WRITE 'WRITE .ASCIZ SUBSYSTEM MEMORY SUBSYSTEM MEMORY SUBSYSTEM MEMORY SUBSYSTEM MEMORY °'RAM Exerciser’ Command COMMAND COMMAND COMMAND Not Accepted® Failed On All Ones Word Read Back' Failed On ALl Zeros Word Read Back' Failed On Address Test' 1560 sROUTINE TO RESTORE COMMAND PACKET TO START-UP (DEFAULT) VALUES 1563 1564 1565 034452 1566 034452 1567 034456 1568 034462 1569 034466 1570 034472 1571 034474 ;= }gg} ;WRITE SUBSYSTEM MEMORY COMMAND 1572 034500 1573 034504 1574 034506 1575 034512 1576 034514 1577 034516 1578 034522 1579 1580 1581 0345264 1582 034524 1583 034530 1584 034534 1585 034540 1586 034544 1587 034546 1588 034552 1589 034554 1590 034556 1591 034560 1592 034562 034562 034562 T1SREST: 012701 012721 012721 005021 012721 012721 005021 012721 005021 005011 005037 000207 033350 100204 033360 000010 033372 000400 033372 005021 012721 005021 005021 005011 000207 104401 034050 100206 034060 000006 #T15PACKET R1 #100204,(R1)+ #T15DATA, (R1)+ (R1)+ #8.,(R1)+ CLR MOV CLR CLR CLR RTS (R1)+ #256.,(R1)+ (R1)+ (R1) T158FR PC sCLEAR 1ST LOC ;RETURN SAVREG Mov Mov MoV #T15PK2 ,R1 #100206,(R1)+ #T158F2,(R1)+ :SAVE THE REGISTERS ;START OF THE PACKET SWRITE SUBSYSTEM MEM. WITH ACK, IE ;ADDRESS OF DATA BI OCK MOV T15RT2: 012701 012721 012721 SAVREG MoV MOV MOV CLR MOV CLR MoV ‘LR (LR CLR RTS ENDTST #T158FR, (R1)+ (R1)+ #6.,(R1)+ (R1)+ (R1)+ (R1) PC :SAVE THE REGISTERS ;START OF THE PACKET JWRITE SUBSYSTEM MEM. WITH ACK, IE sADDRESS OF CHARAISTICS DATA BLOCK sEXTENDED ADDRESS sSIZE OF DATA BLOCK IN BYTES sADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER IN MESSAGE BUFFER sEXTENDED ADDRESS sSIZE OF DATA B.OCK IN BYTES sRETURN L10047: TRAP CSETST TSVS = HARDWARE TESTS TEST S5: MACRO M1113 25-MAY-82 09:19 EXTENDED FEATURES SWITCH AND TIMERS A,B <+ +* 1595 1596 1597 1598 1599 1600 PAGE 99 H 13 SEQ 0163 .SBTTL TEST 5: EXTENDED FEATURES SWITCH AND TIMERS A,8 TEST DESCRIPTION: This test verifies the Invert Extended Features function can logically invert the Extended features switch and that the internal timers A and B operate correctly. 1601 1602 1603 TEST STEPS: REPEATN‘OR LOOPCNT BEGI Do Subtest 1 Do Subtest 2 END 3 034564 034564 8 034564 9 034570 0 034574 1 034602 - Verify Extenned Features Switch - Verify Timers A.B BGNTST 012700 004737 012737 036642 016510 000012 MOV 002216 JSR 116L00P MOV o #TST161D,RO PC,TSTSETUP #10.,LOOPCNT ;ASCII MESSAGE TO IDENTIFY TEST ;D0 INITIAL TEST SETUP *PERFORM 10 ITERATIONS TSVS - HARDWARE TESTS TEST 5: SUBTEST 1: MACRO M1113 25-MAY-82 09:19 VERIFY EXTENDED FEATURES TEST }ggg PAGE 100 SEQ 0164 .SBTTL TEST 1626 1627 s : TEST 5: }g%g : SUBTEST DESCRIPTION: 1631 : 1628 5: SUBTEST 1: VERIFY EXTENDED FEATURES TEST SUBTEST 1: : 1632 1633 1634 1635 1636 This subtest verifies that the Invert Sense of Extended features : : H : : 1637 : 1639 1640 1641 1642 1643 1644 : : : : : : 1638 Switch function (Write Subsystem Memory,Write Misc command) operates properly. . . . First the state of the Extended Features switch is read in the message packet supplied by the write characteristics command. Then, the sense of the switch is logically inverted. L. A Write characteristics command is executed and it is verified that the Extended status register (XST4) is returned when in Extended mode, and not returned if not in extended mode. The subtest also verifies that specifying a Message Buffer : 1645 address with any of bits 21-19 ,set will cause the command to be rejected. TEST STEPS: ; 1646 1647 1648 1649 }gg? : : BEGIN ) L. : Write to TSSR regtster to soft initialize the controller : Do WRITE CHARACTERISTICS to check for Extended Features Switch : %SESxtended Features Hardware Switch CLEAR 1652 : (+ Verify Extended Features switch can be Inverted to SET +) 1653 1656 1655 1656 }2;5 : H : : : Do Write Subsystem Write Miscellaneous to SET Extended Features. OC a WRITE CHARACTERISTICS with an extended characteristic word Compare the controller ram to the extended characterisword tic It Data word in controller ram NOT= to word sent Tnen Print Error Eng Message Buffer Data Length NOT= 12. Then Print Error 1659 1660 1661 : : : (* Verify Extended Features switch can be Inverted to CLEAR *) Do Write Subsystem Write Miscellaneous to CLEAR Extended Features. Do a WRITE CHARACTERISTICS without an extended characteristic word 1664 : }gg% : 1665 1666 1667 1668 1669 : : H : H 1672 034602 034602 034602 1673 1674 1675 034604 1676 1677 034604 1678 034610 ENgfl?essage Buffer Data Length NOT= 10. (« Verify Function Reject when Message Buffer 21-19 are non-zero *) Write to TSSR register to soft initialize the controller REPEAT FOR MESSAGE BUFFER ADDRESS bits <21:19> FROM 0 TQ 7 D0 a WRITE CHARACTERISTICS with a ngssage_address bit<21:19> non-zero It TSSR termination code NOT= Function Reject Then Print Error END-REPEAT BGNSUB $//171117117717 BEGIN SUBTEST /777111117 15.1: 104402 TRAP 5$: 004737 103405 Then Print Error 015774 H ) ) Write to TSSR register to soft JSR B(CS PC,SOF INIT 108 (s8suB L initialize the controller ;WRITE TO TSSR TO SOFT INITIALIZE :BR IF SOFT INIT OKAY TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST S: SUBTEST 1: VERIFY EXTENDED FEATURES TEST 1679 034612 1680 034614 034614 034616 034620 : 034622 1 1 682 034624 1 683 034630 1 684 034634 685 034640 1 686 034644 1 687 034660 1 688 034662 1 689 034664 1 690 034664 1 034664 034666 054670 034672 1691 034674 1692 034700 034700 1693 169 1695 1696 1697 034702 1698 034706 1699 034714 1700 034716 };01 034722 010001 MOV ERRDF 104455 000764 003652 01203¢ 004737 005037 012704 004737 sSAVE CONTENTS OF TSSR ;DEVICE FATAL DURING INIT TRAP CSERDF 500 SFIERR .WORD .WORD SFIMSG Do WRITE CHARACTERISTICS to check for Extended Features Switch JSR PC,T16REST cRESTORE PACKET DEFAULTS CLR FATFLG sCLEAR FATAL ERROR FLAG MOV #T16PACKET R4 sGET THE ADDRESS OF COMMAND PACKET JSR PC.WRTCHR :D0 WRITE CHARACTERISTICS COMMAND FORCERROR 12% :@8DFORCE ERROR IF FORCER=1 040010 002222 040170 010662 010001 005237 RO,R1 ERRNO,SF IERR,SF IMSG SEQ 0165 .WORD 103407 106455 000765 036712 012046 PAGE 100-1 128: 8CS 158 ¢BR IF CARRY SET (GOOD RETURN) ERRDF ERRNO,T16SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF MoV RO,R1 NEXT.ERRNO sSAVE CONTENTS OF TSSR 501 .WORD 002222 15$%: 104406 INC C(KLOOP FATFLG sSET FATAL ERROR FLAG .WORD .WORD T16SSR PKTSSR cLOOP ON ERROR, IF FLAG SET TRAP cscLPl If Extended Features Hardware Switch Clear then: 012701 032761 001402 000137 012703 040212 000200 004737 012704 010465 004737 040150 040240 000000 016336 (» Verify Extended Features switch can be Inverted to SET ¢) REPEATY FOR TEST PATTERNS IN TSTBLK TABLE MOV #T168FR R sMESSAGE BUFFER ADDRESS 000012 035266 002764 #X2.EXTF ,XST2(R1) 208 sEXTENDED FEATURES SWITCH CLEAR? 'BR IF YES Mov #TSTBLK+10. ,R3 :START OF 2008 TEST DATA Do Write Subsystem Write Miscellaneous to SET Extended Features. 103407 010001 328 : 1046455 00C766 036747 012046 005237 BIT BEQ JMP JSR PC,T16SEXT MoV #T16PK2 R4 MOV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 328 sSETUP PACKET FOR WRITE MISC INVERT sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET -@9DFORCE ERROR IF FORCER=1 MOV RO.R1 NEXT.ERRNO sSAVE CONTENTS OF 8(s 408 ERRDF ERRNO,T162SSR,PKTSSR :BR IF CARRY SET (GOOD RETURN) TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD LWORD 002222 408%: 106406 125252 040170 000020 002312 010662 002312 000006 040210 INC ckLooP FATFLG .WORD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TRAP CSERDF 502 T162SSR PKTSSR CSCLPY HODO a WRITE CHARACTERISTICS with an extended characteristic word MoV #125252,0 llePACKET R4 sSETUP TEST DATA FOR EXTENDED WORD :GET THE ADDRESS OF COMMAND PACKET MOV #16. ,PKBCNT (R4) :STORE MESSAGE PACKET SIZE JSR PC,WRTCHR :D0 WRITE CHARACTERISTICS COMMAND MOV DATA,T16DATA+10 sSTORE TEST DATA IN EXTENDED WORD — _— TSVS =~ HARDWARE TESTS TEST 5: SUETEST 1: 1722 035036 1723 035052 1724 035054 1725 035056 1726 035056 035072 104406 ] 016501 012702 062702 001404 035126 035126 035130 035132 1064456 000770 037060 015474 035134 104406 1742 035142 004737 1738 035134 1739 1740 1761 035136 1743 035146 17644 035162 1745 035164 1746 035164 035164 035166 035170 035172 1747 035174 035174 1748 1749 1750 1751 1752 1753 035176 035202 035206 035212 035222 1754 035224 1755 035226 1756 035226 035226 035230 035232 035234 1757 035236 758 035236 012704 002222 000000 040212 000020 1064406 016201 012702 040212 (kLOOP INC JSET FATAL ERROR FLAG : I1f the TSBA Address Register NOT= Expected Then Print Error MOV TSBA(RS) ,R1 JGET TSBA REGISTER CONTENTS MOV #T168BFR,R2 JSTART OF THE DATA BUFFER ADD #16. ,R2 JEXPECTED CONTENTS OF TSBA FORCERROR 728 ,NOTSSR ;@8DFORCE ERROR ]F FORCER=1 CMP R1.R s COMPARE EXPECTED TO RECEIVED 628%: 80$ ;LOOP ON ERROR, IF FLAG SET TRAP CSERDF 503 T16SSR PKTSSR cscLP *ERROR IF NOT EQUAL 72%: 80%: (kLOOP : H Compare the controller ram to the extended characterisword tic It Data word in controller ram NOT= to word sent Then Print Error MOV #T16DATA RS sGET CHARACTERISTIC DATA ADDRESS JSR PC.CKRAHé 92%: 1008: CkLOOP : 1t Message Buffer Data Length MOV #T16BFR,R2 MOV 2(R2) R MOV #12.,.R2 FORCERROR 1128 .NOTSSR cMP R1,R2 000002 000014 BEQ 1128: 1208: 1208 NEXT.ERRNO ERRHRD ERRNO,T16LEN,EXPREC (kLOOP JPRINT THE ERROR & EXPD/RECV ;LOOP ON FRROR, FORCERROR 92% 8CS 1008 NEXT.ERRNO ERRHRD ERRNO,PKTRAM,RAMERR 001404 104406 FATFLG TRAP .WORD .WORD .WORD NEXT.ERRNO ERRHRD ERRNO,T16TSBA,EXPREC 020102 104456 000772 037162 015474 ;@8DFORCE ERROR IF FORCER=1 ;BR JF CARRY SET (GOOD RETURN) JSAVE CONTENTS OF TSSR 508 : 011224 104456 000771 004745 015510 423 sDEVICE FATAL SSR FAILED TO SET BEQ 040200 50¢ RO,R1 NEXT.ERRNO ERRDF ERRNO,T16SSR,PKTSSR 103404 012702 SEQ 0166 428%: 020102 1735 035122 1736 035124 1737 035124 B8CS MOV K 13 PAGE 100-2 FORCERROR 103407 010001 104455 000767 036712 012046 005237 1729 1730 035074 1731 035100 1732 035106 1733 035110 1734 035120 25-MAY-82 09:19 VERIFY EXTENDED FEATURES TEST 035056 035060 035062 035064 1727 035066 1728 035072 MACRO M1113 TRAP .WORD .WORD .WORD CSERHRD S04 T16TSBA EXPREC TRAP cscLP ]F FLAG SET ;DOES RAM DATA EQUAL DATA SENT? .@a8DFORCE ERROR IF FORCER=1 ;BR IF YES JREPORT THE RAM ERROR(S) TRAP .WORD .WORD .WORD ;LOOP ON ERROR, IF FLAG SET 1P NOT= sGET :GET SGET 12. Then Print Error CSERHRD 505 PKTRAM RAMERR cscLP MESSAGE BUFFER ADDRESS RECV DATA FIELD LENGTH EXPD DATA FIELD LENGTH ;88DFORCE ERROR IF FORCER=1 ;COMPARE EXPECTED TO RECEIVED :ERROR IF NOT EQUAL JPRINT THE ERROR & EXPD/RECV TRAP MORD .WORD MWORD ;LOOP ON ERROR, IF FLAG SET TRAP CSERHRD 506 T16LEN EXPREC CSCLPY TSVS ~ HARDWARE TESTS TEST S: SUBTEST 1: 004737 1761 035246 1762 035250 010001 035250 035252 035254 035256 1763 035260 035260 };gg 035262 25-MAY-82 09:19 VERIFY EXTENDED FEATURES TEST 1759 035240 1760 035244 MACRO M1113 103405 015774 104406 000137 125$: 035446 : 1767 035266 1768 1769 035266 1770 035272 1771 035276 1772 035302 1773 035306 1774 035322 1775 035324 1776 035326 1777 035326 035326 035330 035332 035334 1778 035336 1779 035342 1780 035342 1781 1782 1783 1784 1785 1786 1787 1788 2008: 004737 012704 010465 004737 103407 010001 036747 012046 005237 035402 035404 035406 035410 104455 000774 036712 012046 2408: 00170 0CGCT(6 010662 H 000006 103407 010001 1790 035412 1791 035416 035416 1792 1793 035420 1794 035424 012702 1796 035432 001404 005237 242%: 002222 104406 013701 1795 035430 020102 035434 035436 002222 104406 012704 012764 004737 1797 035434 1798 035434 2328: 104455 000773 035344 035350 035356 035362 035376 035400 035402 1789 035402 : 040150 040240 000009 016336 104456 000775 040214 250%: ; 000012 JWRITE TO TSSR TO SOFT INITIALIZE MOV ERRDF RO,R1 ERRNO,SFIERR,SFIMSG JSAVE CONTENTS OF TSSR :DEVICE FATAL DURING INIT 1288 CkKLOOP :BR IF SOFT INIT OKAY ;LOOP IF SELECTED 3008 TRAP .WORD .WORD .WORD CSERDF 506 SFIERR SFIMSG TRAP cscLP : (v Verify Extended Features switch can be Inverted to CLEAR ¢) Do Write Subsystem Write Miscellaneous to CLEAR Extended Features. JSR PC,T16SEXT JSETUP PACKET FOR WRITE MISC INVERT MoV lT16PK2 R4 :GET WRITE SUBSYSTEM COMMAND PACKET MOV R4.TSDB(RS) JSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 2328 ;@aDFORCE ERROR IF FORCER=1 8(CS 2408 :BR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T162SSR,PKTSSR ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF INC CKLOOP FATFLG .WORD .WORD .WORD ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP S07 T162SSR PKTSSR cscLP DO a WRITE CHARACTERISTICS without an extended characteristic word MOV #TI16PACKET R4 ;GET THE ADDRESS OF COMMAND PACKET MOV #14. ,PKBCNT (R4) :STORE MESSAGE PACKEY SIZE JSR PC.URTCHR ;D0 WRITE CHARACTERISTICS COMMAND FORCERROR 2428 :@8DFORCE ERROR ]F FORCER=1 8CS 2508 ;B8R IF CARRY SET (GOOD RETURN) MOV RO,.R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T16SSR,PKTSSR INC ckLOOP FATFLS CMP R1 Ré :DEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP 1t Hessag8 Buffer Data Length NOT= 10. Then Print Error MOV F JGET RECV DATA FIELD LENGTH MOV #10. SGET EXPD DATA FIELD LENGTH BEQ 2628%: SEQ 0167 PC,SOFINIT JMP 1766 L JSR BCS 104455 000772 003652 012034 PAGE 100-3 2708 NEXT.ERRNO ERRHRD ERRNO,T16LEN,EXPREC CSERDF 508 T16SSR PKTSSR cscLet :COMPARE EXPECTED TO RECEIVED :ERROR IF NOT EQUAL JPRINT THE ERROR & EXPD/RECV TRAP .WORD CSERHRD 509 TSVS ~ HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST S5: SUBTEST 1: VERIFY EXTENDED FEATURES TEST 035440 035442 037162 015474 035444 104406 1799 035444 1800 18 1804 035446 1805 1806 035446 1807 1808 035454 1809 035454 1810 035460 1811 035466 1812 1813 1814 1815 035500 1816 035504 1817 035510 1818 035514 1819 035530 1820 035532 1821 035534 1822 035534 035534 035536 035540 035542 1823 035544 1824 035550 035550 1825 1826 1827 035552 1828 035556 1829 035560 1830 035564 1831 035570 1832 035600 1833 035602 1834 035604 1835 035604 035604 035606 035610 035612 1836 035614 035614 1827 035616 1835 035626 1839 035632 1840 035640 1841 035642 1842 PAGE 100-~4 "1 SEQ 0168 .WORD : 2708 CKLCIP $00s: Write to TSSR register ;LOOP ON ERROR, T16LEN .WORD EXPREC TRAP C$CLP IF FLAG SET (» Verity Function Reject when Message Buffer 21-19 are non-zero *) 012737 000001 012704 012764 013700 000003 0460170 000016 002312 010037 010465 004737 040202 000000 016250 002312 ?203: $258: 000006 3428: 104455 000776 036712 012046 005237 002222 3508: MoV MOV MOV #T16PACKET R4 #14. ,PKBCNT(R4) DATA,RO sGET THE ADDRESS OF COMMAND PACKET sSTORE MESSAGE PACKET SIZE ;GET TEST DATA AghDR RO sSHIFT INTO BITS 21:19 3 MOV RO,T16DATA+2 MOV R4, TSDB(RS) JSR PC,WAITF FORCERROR 3428 sSTORE BUFFER ADDRESS BITS 21:19 sSET _THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR -3aDFORCE ERROR IF FORCER=1 MOV RO.R1 NEXT.ERRNO sSAVE CONTENTS OF B(CS 3508 ERRDF ERRNO,T16SSR,PKTSSR sBR IF CARRY SET (GOOD RETURN) TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF INC {KLoOP FATFLG sSET FATAL ERROR FLAG :LOOP ON ERROR, [f TSSR termination code NOT= function Reject 000002 MOV MOV 000016 000006 TSSR(RS) ,R1 R1,R2 352%: 000777 037274 012046 FLAG SET TRAP 104406 005237 023727 002312 002312 000137 035454 000007 cscLPl Then Print Eiror *CLEAR TC<2:0> EXPD *SET EXPD TC<2:0>= FUNCTION REJECT CMP R1,R2 ;EXPD EQUAL RECV? 3528 ,NOTSSR 3608 ‘BR IF YES NEXT.ERRNO ERRHRD :@aDFORCE ERROR IF FORCER=1 ERRNO, T16REJ,PKTSSR ;DEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD : 3608 PKTSSR #TERCLS.R2 #TSREJ,R2 BEQ 104456 ;GET RECV TSSR :COPY RECV TSSR IF .WORD 510 T16SSR BIC 8IS FORCERROR 020102 001404 101002 REPEAT FOR MESSAGE BUFFER ADDRESS bits <21:19> FROM 0 T0 7 .WORD LWORD 104406 016501 010102 042702 052702 initialize the controller MOV #1,DATA JSTART AT BITS<21:19>=001 D0 a WRITE CHARACTERISTICS with a message address bit<21:19> non-zero LREPT 103407 010001 to soft CKLOOP FORCEX]T INC DATA CMP DATA,#7 BHI 3708 JMP 3258 END-REPEAT ;LOOP ON ERROR, 3708 ‘WORD IF FLAG SET TRAP ;GET NEXT TST PATTERN :DONE AiLL DATA? ‘BR IF YES DO ANOTHER TEST PATTERN CSERHRD 511 T16REJ PKTSSR CSCLP1 TSVS = HARDWARE TESTS TEST MACRO M1113 25-MAY-82 09:19 5: SUBTEST 1: VERIFY EXTENDED FEATURES TEST 1843 035646 1844 035646 035646 035646 1845 1846 035650 1847 035654 1848 035656 1849 035662 1850 1851 1852 1853 1854 3708: PAGE 100-5 N 13 SEQ 0169 ENDSUB s/1/1////77/7 END SUBTEST /1777777717 L10054: 104403 005737 001402 004737 002222 017202 4508 TST BEQ JSR FATFLG 4608 PC,CKDROP sANY FATAL ERRORS ? sBRANCH IF NOT +TRY TO DROP THE UNIT TRAP CSESUB TSVS =~ HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 5: SUBTEST 2: VERIFY TIMERS A.B }ggg .SBTTL 1858 1859 1860 R ; TEST 5: : 1863 1864 1865 1866 }ggg : : : : : 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 }ggg : : : : : : : : : : : : : : : : : : : : }gg% 035662 1892 035664 1893 1894 1895 1896 TEST SEQ 0170 5: SUBTEST 2: VERIFY TIMERS A,B SUBTEST 2: : SUBTEST DESCRIPTION: 1890 035662 035662 1891 PAGE 101 035664 035670 035672 035674 035674 035676 035700 035702 1897 1898 035704 1899 035710 1900 035714 1901 035720 1902 035726 1903 035732 1904 035746 1905 035750 1906 035752 This subtest verifies that timers A,B can be reset and that Timer A is twice the frequency of Timer B. Timer A has a period of 25 microseconds and Timer B has a period of 50 microseconds. The timers are checked at 1, 28, 53, and 78 micoseconds. TEST STEPS: . . Write to TSSR reg1ster to soft initialize the controller Do WRITE CHARACTERISTICS to setup a Message Buffer (v Verify Timers A,B after RESET TIMER with 0 microsecond delay +) Do a Write Control RESET TIMER with 1 microsecond delay Do a Write Subsystem READ STATUS If Timer A NOT= 0 Then Print Error If Timer B NOT= 0 Then Print Error (+ Do If It Do If It Do If If Verify Timers A,B after RESET TIMER with 28 microsecond delay *) a Write Control RESET TIMER with 28 microsecond delay Timer A NOT= 1 Then Print Error Timer B NOT= 1 Then Print Error ) a Write Timer A Timer B a Write Timer A Timer 8 Control NOT= 0 NOT= 1 Control NOT= 1 NOT= 0 RESET TIMER with 53 microsecond delay Then Print Error Then Print Error i RESET TIMER with 78 microsecond delay Then Print Error Then Print Error BGNSUB 104402 004737 103405 010001 : 5s: 015774 104455 000777 003652 012034 004737 005037 012704 012764 004737 103407 010001 040010 002222 040170 000010 010662 : 108: 000006 . $/1/171777777 BEGIN SUBTEST /771711711117 15.2: . Write to TSSR register to soft initialize the controller JSR BCsS MOV ERRDF PC,SOF INIT 108 RO,R1 ERRNO, SFIERR,SF IMSG TRAP C$8sUB ;WRITE TO TSSR TO SOFT INITIALIZE ;BR [F SOFT INIT OKAY sSAVE CONTENTS OF TSSR ;DEVICE FATAL DURING INIT TRAP .WORD .WORD .WORD CSERDF 511 SFIERR SFIMSG Do WRITE CHARACTERISTICS to setup a Hessage Buffer JSR PC,T16REST sRESTORE PACKET DEFAULTS CLR FATFLG sCLEAR FATAL ERROR FLAG MoV #T16PACKET R4 sGET THE ADDRESS OF COMMAND PACKET MoV #8. ,PKBCNT (R4) sMESSAGE PACKET SIZE NO EXTEND JSR PC,WRTCHR ;D0 WRITE CHARACTERISTICS COMMAND FORCERROR 12% :@9DFORCE ERROR IF FORCER=1 B(CS 15% :BR IF CARRY SET (GOOD RETURN) MoV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO TSVS < HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST S: SUBTEST 2: VERIFY TIMERS A.B 1907 035752 035752 035754 035756 035760 1908 035762 1909 035766 1910 035766 104455 001000 036712 012046 005237 002222 104406 1911 1912 1913 035770 1914 035774 1915 036000 1916 036004 1917 036010 1918 036014 1919 036020 1920 036034 1921 036036 1922 036040 1923 036040 036040 036042 036044 036046 1924 036050 1925 036054 036054 1926 1927 1928 036056 1929 036060 1930 036064 1931 036070 1932 036074 1933 036100 1934 036104 1935 036114 1936 036116 1937 036120 1938 036120 036120 036122 036124 036126 1939 036130 1940 036130 1941 012700 013701 004737 012704 010465 004737 000001 036632 040122 040240 000000 016336 005237 002222 104406 005002 042702 042702 012700 016001 042701 sDEVICE FATAL SSR FAILED TO SET 15$: INC CKLOOP FATFLG sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET 000001 036634 1945 036146 1946 036152 1947 036156 1948 036162 012704 010465 004737 0460240 000000 016336 004737 040122 TRAP CSERDF 512 T16SSR PKTSSR CSCLP1 (* Verity Timers A,B after RESET TIMER with 1 microsecond delay *) 328: Do a Write Control RESET TIMER with 1 microsecond delay MOV #MS . RSD RO JRESET TIMER COMMAND MOV T16D01,R1 ;1 MICROSECOND DELAY JSR PC,T16WMISC JSETUP T16PK2 COMMAND PACKET MOV #T16PK2.R4 SGET WRITE SUBSYSTEM COMMAND PACKET MoV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 32¢ ;@ODFORCE ERROR [F FORCER=1 8CS 408 ;sBR IF CARRY SET (GOOD RETURN) [ [1]") RO.R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T162SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET 40$: CKLOOP : 1f Timer A NOT= 0 INC FATFLG If Timer B8 NOT= 0 CLR 8IC 8IC MOV MGV 8lc JSET FATAL ERROR FLAG ;LOOP ON ERROR, Then Print Error R2 #S2.ATIM, R2 #S2.8TIM R2 #T168FSTA,RO 2(R0O) R If FLAG SET TRAP CSERDF 513 T162SSR PKTSSR CSCLP JINIT EXPD sTIMER A EXPD=0 ;TIMER B EXPD=0 cGET RECV READ STATUS ;GET RECV BYTE 2 0‘C<52.ATIH!SZ.BTIH>.R1 sSAVE TIMER A:B RECV ONLY 72%: 80$: ckLOOP : TRAP .WORD .WORD .WORD Then Print Error fFORCERROR 728 ,NOTSSR cMpP R2.R1 BEQ 80 NEXT.ERRNO ERRHRD ERRNO,T16TO1,TIMEXP 020201 001404 012700 013701 TRAP .WORD .WORD .WORD : : 177763 1942 036132 1943 036136 1944 036142 ERRNO,T16SSR,PKTSSR 000010 000004 040232 000002 104406 SEQ 0171 ERRDF : 104456 001002 037411 015552 C 14 128: 103407 010001 104455 001001 036747 012046 PAGE 101-1 ;a8 JEXPD EQUAL RECV? ;BR IF YES JREPORT ERROR TRAP .WORD WORD WORD ;LOOP ON ERROR, IF FLAG SETY TRAP CSERHRD 514 T16T01 TIMEXP cscLP Do a Write Control RESET TIMER with 28 microsecond delay MOV MOV JSR #MS _RSD RO 1716028 ,R1 PC,T16WMISC MOV #T16PK2 R4 mov R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 1128 SJRESET TIMER COMMAND 228 MICROSECOND DELAY ;SETUP T16PK2 COMMAND PACKET sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR 1O SET ;8aDFORCE ERROR IF FORCER=1 pa—— TSVS < HARDWARE TESTS TEST 5: SUBTEST 2: 1949 036176 1950 036200 1951 036202 1952 036202 036202 VERIFY TIMERS A,B 036204 036206 036210 1953 036212 036216 104406 036220 036222 036226 036232 036236 005002 052702 052702 012700 016001 1955 1956 1957 1958 1959 1960 1961 1962 036242 1963 036246 1964 036256 1965 036260 1966 036262 1967 036262 036262 036264 036266 036270 1968 036272 1969 036272 1970 1971 036274 1972 036300 1973 036304 1974 036310 1975 036314 1976 036320 1977 036324 1978 036340 1979 036342 1980 036344 1981 036344 036344 036346 036350 036352 1982 036354 1983 036360 036360 1984 1985 1986 036362 1987 036364 1988 036370 1989 036374 1990 036400 25-MAY-82 09:19 163407 010001 104455 001003 036747 012046 005237 1954 036216 MACRO M1113 042701 1128: 002222 It Timer A NOT= 1 177763 013701 004737 012704 010465 004737 104406 005002 042702 052702 012700 016001 CMP R2.R1 1728 ,NOTSSR ;aab JEXPD EQUAL RECV? : Do a Write Control RESET TIMER with 53 microsecond delay MOV #MS_.RSD RO JRESET TIMER COMMAND 2208: :BR IF YES ;REPORT ERROR ;LOOP ON ERROR, MCV JSR : : 000010 900004 040232 000002 l‘C<S§.ATIH!SZ.BrIH>,R1 JSAVE T/MER A:B RECV ONLY CKLOOP 2128: 002222 8IC 1808$: 0640240 000000 016336 T16D53,R1 PC,T16WMISC MOV AT16PK2 R4 MOV F&,TSDB(RS) JSR ?C,CHKTSSR FORCERROR 212% B8CS 2208 MOV RO,R1 NEXT.ERRNO TRAP .WORD .WORD .WORD IF FLAG SET TRAP sDEVICE FATAL SSR FAILED TO SET INC CKLOOP FATFLG ;sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET If Timer A NOT= 0 Then Print Error It Timer 8 NOT= 1 Then Print Error CLR R2 JINIT EXPD 8IC #S2.ATIM,R2 JTIMER A EXPD=0 8IS #S2.8TIM,R2 #T168BFSTA,RO 2(R0) ,R1 CSCLP JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;88DFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) JSAVE LOonNTEMTE of TecD ERRNO,T162SSR,PKTSSR ) CSER]HRD 516 T16T728 TIMEXP ;53 MICROSECOND DELAY JSETUP T16PK2 COMMAND PACKET ERRDF MOV MOV CSCLP JINIT EXPD :TIMER A EXPD=1 :TIMER B EXPD=1 JGET RECV READ S ATUS ;GET RECV BYTE 2 1728%: 036636 040122 515 T162SSR PKTSSR Then Print Error 8EQ 180% NEXT.ERRNO ERRHRD ERRNO,T16T28,TIMEXP 103407 010001 104455 001005 036747 012046 005237 JDEVICE FATAL SSR FAILED TO SET TRAP CSERDF sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TRAP Then Print Error R2 #S2.ATIM R2 #S2.8TIM R2 #T168BFSTA,RO 2(R0O) ,R1 FORCERROR 001404 000001 FATFLG I1f Timer B NOT= 1 CLR 8IS 8IS [ [0]'] MOV ;sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR .WORD WORD .WORD : 020201 012700 8CS 1208 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T162SSR,PKTSSR INC CKXLOOP 000010 000004 040232 000002 104406 SEQ 0172 1208: H 104456 001004 037510 015552 D 14 PAGE 101-2 JTIMER B EXPD=1 JGET RECV READ STATUS JGET RECV BYTE 2 TRAP .WORD MWORD WORD CSERDF 517 T162SSR PKTSSR TRAP CSCLPY TSVS - HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 5: SUBTEST 2: VERIFY TIMERS A,B 1991 1992 1993 1994 1995 1996 036404 036410 036420 036422 036424 036424 036426 036430 0462701 001006 037610 015552 104406 1999 036436 2000 036442 2001 036446 2002 036452 2003 036456 2004 036462 012700 013701 004737 012704 010465 004737 2006 036502 2007 036504 103407 010001 036506 036510 036512 036514 2010 036516 2011 036522 036522 104455 001007 036747 012046 005237 2014 036524 2015 036526 2016 036532 2017 036536 2018 036542 005002 052702 042702 012700 016001 7020 036552 2021 036562 2022 036564 2023 036566 2024 036566 036566 036570 036572 036574 2025 036576 036576 272%: 104456 : 2808 042701 #2C<S2.ATIM!S2 BTIM>,R] :SA;E TIMER A:B RECV ONLY CMP BEQ R2,R1 2808 :BR IF : 3208 cKLoOP ;REPORT ERROR #"S.RSD,RO MOV JSR MoV Mov T16D78 ,R1 PC,T16WMISC #T16PK2 R4 R4 ,TSDB(RS) 8(s 3208 ERRDF ERRNO,T162SSR,PKTSSR MoV RO,R1 NEXT.ERRNO INC (KLOOP FATFLG #T168BFSTA RO BIC #4C<S2.ATIM!S2.BTIM> ,R1 CMP R2.R1 2(R0O) ,R1 FORCERROR BEQ 372%: 380%: ;DEVICE FATAL SSR FAILED TO SET 002222 IST BEQ TRAP .WORD .WORD .WORD PKTSSR Al CSCLPT TRAP CSERHRD CSERDF 519 T162SSR ¢GET RECV READ STATUS sGET RECV BYTE 2 cSAVE TIMER A:B RECV ONLY ;daD sEXPD EQUAL RECY? :BR IF ERRNO,T16T78, TIMEXP cREPORT ERROR C(KLOOP CSCLP sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET .@3DFORCE ERROR [F FORCER=1 s8R IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR 380s NEXT.ERRNO ERRHRD 3728 ,NOTSSR TIMEXP ;78 MICROSECOND DELAY sSETUP T16PK2 CNOMMAND PACKET ¢GET WRITE SUBSYSTEM COMMAND PACKET sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG ;STP MOV MoV TRAP CSERHRD 518 T16753 SRESET TIMER COMMAND YES ;LOOP ON ERROR, .WORD [F FLAG SET TRAP 520 T16778 TIMEXP cscLPt /117771777777 END SUBTEST /7711171111 L10055: 104403 005737 001402 TRAP ;LOOP ON ERROR, IF FLAG SET ENDSUB 2 2029 036602 2030 036606 YES Then Print Errcr If Timer A NOT= 1 If Timer 8 NOT= 0 Then Print Error CLR R2 SINIT EXPD 8IS #52.ATIM, R2 cTIMER A EXPD=1 8IC #52.8TIM,R2 sTIMER B8 EXPD=0 020201 001404 104406 SEXPD EQUAL RECV? .WORD .WORD JSR PC,CHKTSSR FORCERROR 3128 000010 000004 0460232 000002 177763 104456 001010 037710 015552 2723 ,NOTSSR NEXT.ERRNO ERRHRD ERRNO,T16T53, TIMEXP MOV 312%: 104406 SEQ 0173 Do a Write Control RESET TIMER with 78 microsecond delay 000001 036640 040122 060240 000000 014336 002222 E 14 8IC FORCERROR 020201 001404 036434 2019 036546 177763 PAGE 101-3 FATFLG 4608 sANY FATAL ERRCRS ? <BRANCH [F NOT TRAP ($ESuB TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST S: SUBTEST 2: VERIFY TIMERS A.B 2031 036610 2032 036614 004737 004737 017202 016456 2034 036622 2035 036626 2036 2037 2038 036626 036626 2039 036630 000137 034602 3033 036620 2040 103002 104432 001524 460%: 465$: JSR JSR PAGE 101-4 F 14 SEQ 0174 PC,CKDROP PC,TSTLOOP sTRY TO DROP THE UNIT ;SHOULD WE DO ITERATIONS? 8CC 4658 T16L00P SLOOP UNTIL ITERATIONS DONE EXIT TST /777777777 EXIT YEST /717777777 TRAP CSEXIT .WORD L10053-. JMP :BR IF NO — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:°9 TEST 5: SUBTEST 2: VERIFY TIMERS A,.B8 2062 3032 000001 000040 000076 000142 T16001: T16028: T16D53: T16078: 105 127 127 2061 037510 1264 2065 2066 2067 2068 2069 040010 170 122 122 040170 2072 040020 2073 040024 2074 040026 2075 040032 2076 040036 2077 040040 2078 040044 2079 040046 2080 040050 2081 040054 2082 2083 012720 005020 012720 012720 005020 012720 005020 005010 005037 000207 040200 T16TSBA:.ASCIZ TI6LEN:.ASCIZ T16REJ:.ASCIZ T16701:.ASCIZ ‘'Bus Address Register (TSBA) Incorrect after Write Charactetistics’ ‘'Data Field Length in Message Buffer Incorrect after Write Characteristics’ °'TSSR Function Reject Not Returned When Non-Existent Buffer Address Specifie ‘'Timer A,B Incorrect after Reset Timer with 1 microsecond Delay’ 155 155 T167153:.ASCIZ 116778:.Ag5é£ ‘'Timer A,B Incorrect after Reset Timer with 53 microsecond Delay’ ‘Timer A,B Incorrect after Reset Timer with 78 microsecond Delay’ T163SSR:.ASCIZ ‘WRITE SUBSYSTEM (Read Status) Failed’ T16728:.ASCIZ MoV #T16PACKET RO sPACKET ADDRESS rov CLR MOV Mov CLR MOV CLR CLR CLR RTS #T16DATA, (RO) + (RO)+ #10..(RO)+ #T16BFR, (RO) ¢ (RO)+ #20.,(R0O)+ (RO) + (RO) T168FR PC sADDRESS OF CHAR DATA BLOCK ;EXTENDED ADDRESS :SIZE OF MESSAGE PACKET sMESSAGE BUFFER ADDRESS sCLEAR EXTENDED BUFFER ADDRESS sLENGTH OF MESSAGE BUFFER sCLEAR ESS,ENB,EAI ERI] SCLEAR EXTENDED FEATURES WORD sCLEAR 1ST LOCATION IN MESSAGE BUFFER H MoV 000012 040212 000024 040212 #100004, (RO) + sWRITE CHARACTERISTICS WITH ACK it : CLEAR MESSAGE BUFFER 012701 012702 105021 005302 003375 000207 040212 000026 T16CLRBUF : SAVREG MoV MOV 108: CLRB DEC 8GT RTS #T16BFR R #T16BEND-T168FR,R2 (R1)+ R2 108 PC ¢ ; SETUP T16PK2 PACKET FOR READ STATUS T16SRD: tJS' . 'Timer A.B Incorrect after Reset Timer with 28 microsecond Delay’ i : SET DEFAULT PACKET e T16REST: 100004 %832 2098 040102 163 164 123 155 155 151 151 - .ASCIZ ‘Extended Features Switch and Timers A,B' ‘WRITE CHARACTERISTICS Failed’ °*WRITE SUBSYSTEM (Write Misc) Failed’ 151 124 124 012700 2086 040056 2087 040056 2088 040062 2089 040066 2090 040072 2091 040074 2092 040076 2093 040100 2094 2095 %839 ;1 MICROSECOND DELAY (ACTUALLY .8 MIC) ;28 MICROSECOND DELAY (.8 MICROS PER) 253 MICROSECOND ;78 MICROSECOND TST161D: T16SSR: .ASCIZ T162SSR:.ASCIZ 111 165 141 123 151 012720 166 111 111 122 102 104 124 124 2070 040010 2071 040014 1 40 76 142 cLOCAL TEXT MESSAGES FOR TEST 127 2062 037610 %822 037710 .WORD .WORD .WORD .WORD b 4 2056 037013 2057 037060 2058 037162 2059 037274 2060 037411 SEQ 0175 ;LOCAL STOKAGE FOR THIS TEST 2050 2053 036642 2054 036712 2055 036747 G 14 o+ 5822 2045 036632 2046 036634 2047 036636 ggzg 036640 PAGE 102 : sSAVE R1-RS UNTIL NEXT RETURN sGET MESSAGE BUFFER ADDRESS ;SIZE OF MESSAGE BUFFER IN BYTES cCLEAR A BYTE :DONE? :BR_IF NO sRETURN — TSVS = HARDWARE TESTS TEST S: SUBTEST 2: 1 040112 2 040116 3 040120 VERIFY TIMEFS A.8 004737 012700 112720 105010 SEQ 0176 JSR MOV MOVB CLRB 000207 RTS PC,T16CLRBUF #T16DT2.RO #PW . RDSTATUS, (RO) + (RO) PC JCLEAR JWRITE ;STORE JCLEAR ;RETURN MESSAGE BUFFER SUBSYSTEM DATA BUFFER READ STATUS COMMAND IN 8SELO BSEL1 ) o eod d b ; SETUP T16PK2 PACKET FOR WRITE MISC. ; H : 040056 INPUT: RO R1 T16WM]ISC: SAVREG JSR 040250 000010 MOV MOov8 &H MOVB MOVB o b R o b b D 004737 012702 112722 RTS D b d o H 14 CONTAINS WR, TE MISC FUNCTION CODE (BSEL1) CONTAINS DELAY (TIMES 800 NS) FOR BSEL? PC.T16CLRBUF #T16DT2 R2 #PW . WMISC,(R2)+ RO, (R2)+ R1,(R2) PC 2 JSAVE R1=RS UNITL NEXT RETURN ;CLEAR MESSAGE BUFFER JWRITE SUBSYSTEM DATA BUFFER sSTORE WRITE MISCELLANEOUS IN BSELO sSTORE WRITE MISC CODE IN BSEL1 ;STORE DELAY (RESET TIMER) IN BSEL?2 ;RETURN o (¥ prd o D e s SETUP T16PK2 PACKET FOR WRITE MISC. INVERT EXTENDED FEATURES SWITCH 040250 000010 000200 TI16SEXT: MOV MOvV8 :?gfl #T16DT2,R0 #PW. WM SC,(RO)+ g?S.EXY.(RO) JWRITE SUBSYSTEM DATA BUFFER cSTORE WRITE MISCELLANEOUS IN BSELO :gg?fignlNVERT EXTENDED FEATURES IN BSEL1 .=<. +10>8177770 EURITE CHARACTERISTICS COMMAND PACKET 100004 3 040200 000000 000012 o b ol ) D S ad ) ) ol oD i — emd wh nd d wnd el 040170 NOWVSBUWN =20V NO VNS WA =00 b D ced D e b ) el b wd wad D PAGE 102-1 o ) D D d MNINININININI NI NN N b b b b b b b b ek b O D00 NON V&S (NN = 25-MAY-82 09:19 040056 040250 000005 ) i d o O s SoaIGAr 0B RIRIRAC2 b NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN 2099 040102 2100 040106 MACRO M1113 040212 000000 000024 000000 000000 T16PACKET. .WORD .WORD T16DATA: cCOMMAND PACKET FOR TEST SWRITE CHARACTERISTICS COMMAND, WITH ACK sADDRESS OF CHARACTERISTICS BLOCK .WORD .WORD 100004 T16DATA 0 10. sMESSAGE PACKET SIZE .WORD T16BFR sCHARACTERISTICS DATA BLOCK sADDRESS OF MESSAGE BUFFER .WORD .WORD .WORD .WORD 0 20, 0 0 SEXTENDED FEATURES WORD 0 0 ;BEGIN MESSAGE BUFFER sMESSAGE TYPE sDATA FIELD LENGTH sLENGTH OF MESSAGE BUFFER sESS,ENB,EA ER] I sMESSAGE BUFFER 000000 000000 T16BFR: .WORD .WORD — ek TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST S5: SUBTEST 2: VERIFY TIMERS A,B (=] » o =4 nN N WN oo 64 040232 S 040240 1N ~No b ad b e ) D T16BFSTA: T168END: I 14 0 0 O O 0 O .BLKB 6 . SEQ 0177 ;RBPCR JXSTO JXST1 XST2 XST3 JXSTL JREAD (ALWAYS PRESENT FOR WRITE SUBSYSTEM STATUS AND WRITE JEND OF MESSAGE BUFFER FIFO BUFFER SWRITE SUBSYSTEM READ STATUS COMMAND PACKET 040240 b wnd wd e b wd al —b ad ad el WS LS LWORD .WORD LWORD .WORD .WORD LWORD 79 040246 4 78 040250 79 040250 85 040354 040354 040354 100006 T16PK2: 040250 000000 000012 000 000 000000 .WORD .WORD .WORD .WORD T16072: .WORD .8LK8 ENDTST 104401 P .WRTSUB!P.ACK T 16072 0 1 0. lc g=]=1=] 2 w b o e e 60 040222 61 040224 000000 000000 000000 000000 000000 000000 oo d e 59 040220 oo NS TN NN N NTNT S VST NI N NTNTNTNTNT.NT NT.N 2158 040216 PAGE 102-2 4. SWRITE SUBSYSTEM WITH ACK 2LOW ADDRESS OF DATA BLOCK cHIGH ADDRESS OF DATA BLOCK JMINIMUM MESSAGE PACKET SIZE :DATA BLOCK ;BSELO JBSELT JSELZ JWRITE FIFO DATA QUTPUT BUFFER L10053: TRAP CSETST — 6: FIFO EXERCISER MACRO M1113 25-MAY-82 09:19 I I TN W W Y .SBTTL TEST 6: FIFO EXERCISER TEST DESCRIPTION: This test uses the Write Subsystem Memory command to verity the controller's FIFO and associated status and control logic. TEST S TEPS: N PR R iy b I N cd o cod e ed b b 0O O 0 0 O V0O 0 2IRRREN2S b N NININININININININ 2188 2189 LN PR NN FE PR PN T 2200 2210 040356 040356 2215 040356 2216 040362 2217 340366 2218 040374 2219 040400 2220 040404 2221 PAGE 104 SEQ 0178 + P TSVS « HARDWARE TESTS TEST REPEAT FOR LOOPCNT BEGIN Do Do Do Do Do Subtest Subtest Subtest Subtest Subtest 1 2 3 & 5 ENDDo Subtest 6 = = -~ FIFO FIFO FIFO FIFO FIFO - FIFO Verify Reset FIFO test BGNTST 012700 004737 012737 004737 005037 046606 016510 000012 017274 003134 002216 Initialize status test Write Single Byte test Write Multiple Bytes test Verify ILW Status test Input Ready test 16 MoV #TST1710,R0 JASCII MESSAGE TO IDENTIFY TEST MoV JSR 117L00P L #10. ,LOOPCNT PC,KTOFF KTENABLE ;PERFORM 10 ITERATIONS cSHUT OFF MEMORY MANAGEMENT sREALLY SHUT DOWN KT-11 JSR PC,TSTSETUP ;DO INITIAL TEST SETUP TSVS =~ HARDWARE TESTS TEST 6: SUBTEST 1: FIFO MACRO M1113 INITIALIZE g%gz 25-MAY-82 09:19 STATUS TEST LSBTTL 22 PAGE 105 TEST 2227 2228 %ggg : TEST 6: SUBTEST 1: : : SUBTEST DESCRIPTION: 2231 : 2232 2233 2234 2235 2236 %ggg : : : : : : 2239 2240 2241 2242 2243 2244 2245 2246 s : : : : : : : 22647 that the FIFO status is in the correct initial state after the controller is initialized (Input Ready TRUE, Output Ready and Data In Miss FALSE). These status signals are checked by the controller's self-test sequence, so this subtest is actually more of a partial check of the Read Status function than the FIFO status. TEST STEPS: P 2250 040404 0460404 2281 040404 2252 2253 040406 2254 040406 2255 040412 2256 040414 2257 040416 040416 040420 0460422 040624 2258 2259 040426 2260 040432 2261 040436 2262 040442 2263 040456 2264 040460 2265 0460462 2266 040462 0606462 040464 060466 040470 2267 040472 2268 0460476 2269 040476 2270 6: SUBTEST 1: FIFO INITIALIZE STATUS TEST This test verifies, by using the Read Status select code, : 5545 SEQ 0179 BEGIN . Write to TSSR to soft initialize Do a WRITE CHARACTERISTICS to setup a message buffer Do a WRITE SUBSYSTEM Read Status If Input Ready NOT=1 Then Print Frror It Output Ready NOT=0 Then Print Error e It Data In Miss NOT=0 Then Print Error BGNSLB s///1/7//77/7 BEGIN SUBTEST /777171177 T6.1: 104402 004737 103405 010001 104455 001130 003652 012034 ' 005037 012704 004737 TRAP 015774 002222 050200 010662 : 58: : 10$: 103407 010001 42$: 104455 001131 046625 012046 005237 104406 002222 508: : cs8sus Write to TSSR register to soft initialize the controller JSR BCS MOV ERRDF PC,SOFINIT 108 RO,R1 ERRNO,SFIERR,SFIMSG sWRITE TO TSSR TO SOFT INITIALIZE ;BR IF SOFT INIT OKAY sSAVE CONTENTS OF TSSR ;DEVICE FATAL DURING INIT TRAP CSERDF LWORD 600 .WORD SFIERR .WORD SFIMSG Do a WRITE CHARACTERISTICS to setup a nessafe buffer CLR FATFLG ;CLEAR FATAL ERROR FLAG MOV #T17PACKET R4 sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR :DO WRITE CHARACTERISTICS COMMAND FORCERROR 429 -@8DFORCE ERROR [F FORCER=1 8(Cs 508 ¢BR IF CARRY SET (GOOD RETURN) MOV RO.R1 sSAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T17SSR,PKTSSR ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 601 LMWORD T17SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG (kLOOP sLOOP ON ERROR, IF FLAG SET TRAP cscLP Do a Write Subsystem READ STATUS ————— TSVS ~ HARDWARE TESTS TEST 6: SUBTEST 1: 2271 040500 2272 040504 2273 040510 2274 040514 2275 040520 2276 040534 2277 040536 2278 040540 2279 040540 040540 040542 040544 040546 2280 040550 2281 040554 040554 2282 2283 040556 2284 040562 2285 040566 2286 040572 2287 040574 2288 040576 2289 040602 2290 040606 2291 2292 2293 040612 2294 040614 2297 040630 2298 040634 2299 040644 2300 040646 2301 040646 4 0 2302 040656 040656 2303 2304 040660 040660 040660 2305 2306 040662 2307 040666 2308 040670 2309 0460674 2310 MACRO M1113 FIFO INITIALIZE 004737 012704 010465 004737 25-MAY-82 09:19 STATUS TEST 047764 050350 000000 JSR 103407 010001 001132 0466726 012046 005237 628: 005000 012701 012702 012703 004737 PC,T17SRD ¢SETUP PACKET FOR READ STATUS sGET WRITE SUBSYSTEM COMMAND PACKET sSET _THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET 8CS MOV 708 RO,R1 - 8aDFORCE ERROR IF FORCER=1 ¢8R IF CARRY SET (GOOD RETURN) +SAVE CONTENTS OF TSSR ERRDF ERRNO,T173SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET NEXT.ERRNO TRAP .WORD LWORD 002222 104406 004737 012701 012702 012221 011211 052711 042711 042711 SEQ 0180 MOV #T17PK2 R4 MoV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 623 N16336 104455 L 14 PAGE 105-1 708: INC (KLOOP .WORD :SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET FATFLG TRAP MOV 050242 MOV MOV MOV 000020 000040 000200 CLR PC,T17SETEXP #TI7EXSTA,R] #T17BFSTA,R2 (R2)+,(R1)+ (R2),(R1) MOV MOV MOV JSR #T178FR,R1 #T17EXP,R2 #20. ,R3 PC,CKMSG2 B(CS 90$ ERRHRD ERRNO,T171CMP,MSGSTAT FORCERROR 103404 828: sSET sGET cGET sSET sSET ¢SET sSET 828 ,NOTSSR NEXT.ERRNO sHIGH RECV ADDRESS FOR CKMSG2 :LOW RECV ADDRESS FOR CKMSG2 sEXPD ADDRESS ¢NUMBER OF BYTES TO COMPARE sEXPD EQUAL RECV? ;83D :BR IF YES cREPORT ERROR .WORD JWORD 90$: c(KLoOP ;LOOP ON ERROR, ENDSUB 002222 017202 TST 1608 : BEQ JSR .WORD IF FLAG SET TRAP CSERHRD 603 T171CMP MSGSTAT cscLePt /11177777777 END SUBTEST /7717111111 L10057: 104403 005737 001402 004737 CSCLPT WORDS 0-7 EXPD=RECV EXPECTED READ STATUS RECV READ STATUS EXPD WORD #8 = RECV TEMP EXPD WORD #9 = RECV TEMP EXP INPUT READY= TRUE EXP OUTPUT READY= FALSE TRAP 104406 PKTSSR 8IS #52. INRDY, (R1) BIC #S2.0UTRDY, (R1) 8IC #S2.DIM, (R1) ;SET EXP DATA IN MISS = FALSE I1f Input Ready NOT 1 then Print Error 1f Outpu;oReady NOT=0 or Data in Miss NOT=0 Then Print Error 050222 046362 000024 011500 001133 047145 012350 602 T173SSR Sg; WORDS 0-7_of expd message buffer = to recv since not testing 050146 046402 104456 CSERDF FATFLG 160% PC,CKDROP sANY FATAL ERRORS :BRANCH ]F NOT sTRY ? TO DROP THE UNIT TRAP CSESUB 3 TSVS = HARDWARE TESTS TEST 6: SUBTEST 2: MACRO M1113 FIFO WRITE 25-MAY-82 09:19 SINGLE BYTE TEST %%}% .SBTTL PAGE 106 TEST N 14 SEQ 0181 6: SUBTEST 2: FIFO WRITE SINGLE BYTE TEST c+h 2314 %g}g ; TEST 6: SUBTEST 2: %é}g s SUBTEST DESCRIPTION: 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 233 2332 2333 2334 2335 2336 S%g; : This subtest verifies the ability of the FIFO to correctly : pass a single data byte from ingut to output. For each : of 256 data values (0-377 octal) the following is done: : 1. Initial FIFO status is checked : 2. The Write FIFO func.ion, specifying a count of : one byte to be written is executed. . : 3. Read Status is executed and FIFO status is checked. : 4. Read FIFO is executed and the data and final status : is checked. : s TEST STEPS: : ; BEGIN o : Write to TSSR to soft initialize : Do a WRITE CHARACTERISTICS to setup a message buffer : Do a Write Subsystem READ STATUS : It Input Ready NOT=1 Then Print Error : It Output Ready NOT=0 Then Print Error : It Data In Miss NOT=0 Then Print Error 2339 2340 2341 2342 : : : : 7343 : 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2356 040674 040674 2357 040674 : : : : : : : H : : END If It If Do 1t Do If It If Input Ready NOT=1 Then Print Error Output Ready NOT=1 Then Print Error Data In Miss NOT=0 Then Print krror Write Subsystem READ FIFO with byte count equal to 1 Data read from FIFO NOT= to Data sent Then Print Error a Write Subsystem READ STATUS Input Ready NOT=1 Then Print Error Output Ready NOT=0 Then Print Error Data In Miss NCT=0 Then Print Error s/1///1/7/7// BEGIN SUBTEST //1/17/117 16.2: TRAP cs8su8 104402 : 2360 040676 004737 2362 040794 2363 040706 040706 040710 040712 010001 2361 040702 Do a Write Subsystem READ STATUS BGNSUB 2358 2359 040676 REPEAT FOR DATA FROM O TO 377 OCTAL BEGIN . Do a Write Subsystem WRITE NPR to set tape direction out Do a Write Subsystem WRITE FIFO with byte count equal to 1 103405 104455 001133 003652 015774 5s: Write to TSSR register to soft initialize the controller JSR PC,SOFINIT SWRITE TO TSSR TO SOFT INITIALIZE MoV ERRDF RO,R1 ERRNO,SFIERR,SFIMSG sSAVE CONTENTS OF TSSR ;DEVICE FATAL DURING INIY TRAP .WORD .WORD BCS 108 :BR IF SOFT INIT OKAY CSERDF 603 SFIFRR TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 6: SUBTEST 2: FIFO WRITE SINGLE BYTE TEST 040714 2 364 2365 040716 2366 0460722 2367 0460726 2368 040732 2369 040746 2370 060750 2371 040752 2372 04C752 040752 040760 2373 040762 2374 0460766 040766 2375 2376 040770 2377 040774 2378 041000 2379 041004 2380 041010 2381 041024 2382 041026 2383 041030 2384 041030 041030 041032 041034 041036 2385 041040 2386 041044 041044 2387 2388 041046 2389 041052 2390 041056 2391 041062 2392 041064 2393 041066 2394 041072 2395 041076 2396 2397 2398 041102 2399 041104 2400 041110 2401 041114 26402 041120 2403 041124 2604041134 2405 041136 2406 041136 041136 041140 041142 012034 005037 012704 004737 002222 050200 010662 10s: 001134 066625 012046 005237 42%: 002222 50$: 012702 012703 004737 628: 002222 708: 001136 047145 RO,R1 ERRDF ERRNO,T17SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET S0s NEXT.ERRNO CSERDF 604 TRAP INC CKLOOP FATFLG T17SSR PKTSSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG ;s;P 708 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T173SSR,PKTSSR INC CkLOOP FATFLG :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET sSET FATAL ERROR FLAG sLOOP UN ERROR, CSERDF 605 T173SSR TRAP .WORD .WORD -WORD PKTSSR IF FLAG ;STP A Set WORDS 0-7 of expd message buffer = to recv since not testing JSR PC,T17SETEXP ;SET WORDS 0-7 EXPD=RECV MOV #T17EXSTA R SGET EXPECTED READ STATUS 050146 046402 050242 MOV MOV #T178BFSTA,R2 (R2)+,(R1)+ CLR MOV MOV MOV JSR #T178FR,R1 #T17EXP,R2 #20. ,R3 PC,CKMSG2 B8(CS 90$ ERRHRD ERRNO,T171CMP,MSGSTAT cscLP1 sGET RECV READ STATUS sSET EXPD WORL #8 = RECV TEMP MOV (R2),(R1) sSET EXPD WORD #9 = RECV TEMP 8IS #52.INRDY, (R1) sSET EXP INPUT READY= TRUE BIC #S2.0UTRDY, (R1) sSET EXP OUTPUT READY= FALSE 8IC #52.DIM, (R1) ;SET EXP DATA IN MISS = FALSE {: 6nput Ready NOT=1 then Print Error utpugoReady NOT=0 or Data in Miss NOT=0 Then Print Error 000020 000040 000200 050222 046362 000024 011500 FORCERROR 103404 104456 MOV sGET THE ADDRESS OF COMMAND PACK ET :DO WRITE CHARACTERISTICS COMMAND c33DFORCE ERROR IF FORCE R=1 sBR IF CARRY SET (GOOD RETURN) ¢SAVE CONTENTS OF TSSR 8CS 104406 005000 012701 #T17PACKET R4 SFIMSG CSCLPT Do a Write Subsystem READ STATUS JSR PC.T17SRD sSETUP PACKET FOR READ STATUS MoV #T17PK2 R4 sGET WRITE SUBSYSTEM COMMAND PA( KET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR ;WAIT FOR SSR TO SET FORCERROR 62$% c33DFORCE ERROR IF FORCE R=1 047764 050350 000000 016336 104455 004737 012701 012702 012221 011211 052711 042711 042711 MOV .WORD .WORD .WORD 103407 010001 001135 046726 012046 005237 SEQ 0182 Do a WRITE ( HARACTERISTICS to setup a message buffer CLR FATFLG cCLEAR FATAL ERROR FLAG B(CS 104406 004737 012704 010465 004737 N 14 JSR PC,WRTCHR FORCERROR 429% 103407 010001 104455 PAGE 106~1 82%: NEXT.ERRNO 828 .NOTSSR sHIGH RECV ADDRESS FOR CKMSGZ2 sLOW RECV ADDRESS FOR CKMSG? cEXPD ADDRESS ¢cNUMBER OF BYTES TO COMPARE sEXPD EQUAL RECV? ;33D sBR IF YES sREPORT ERROR TRAP +WORD .WORD CSERHRD 606 T1721CmpP TSVS = HARDWARE TESTS TEST 6: SUBTEST 2: 041144 24607 041146 041146 2408 2409 2610 041150 2411 041156 2612 2613 041156 2614 041162 2415 041166 2616 061172 2617 061176 2418 041202 2619 061216 2620 041220 2621 041222 2622 041222 041222 061226 041226 041230 2423 061232 2624 061236 041236 2625 24626 041240 2627 041244 2628 041250 2429 041254 2630 041260 2631 041264 2432 061270 2633 041304 2634 041306 2635 041310 2436 041310 041310 041312 041314 041316 2637 041320 2438 041324 041324 2439 2440 2441 041326 2642 061332 2643 041336 2444 041342 2445 041346 2646 041362 2447 041364 2448 041366 2449 041366 041366 041370 MACRO M1113 25-MAY-82 09:19 FIFO WRITE SINGLE BYTE TEST 012350 99%: 104406 012737 012700 000000 000100 050026 050350 000000 016336 002312 : H 001137 046773 012046 005237 002222 104406 012700 012701 006737 012704 010465 004737 000001 002312 050052 050350 000000 016336 105$: H 047036 012046 005237 004737 012704 010465 004737 047764 050350 000000 016336 1108: . 104455 001141 cscLP JGET FIRST DATA ;REPEAT LABEL . ;SET TAPE MOV MOV JSR #T17PK2 R4 R4 ,TSDB(RS) PC,CHKTSSR JGET WRITE SUBSYSTEM COMMAND PACKET ;SET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET 8CS 105% :BR IF CARRY SET (GOOD RETURN) PC,T17SNPR 1028 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T174SSR,PKTSSR INC ckLOOP DIRECTION OUT ;SETUP T17PK2 FOR WRITE NPR ;88DFORCE ERROR ]F ;SAVE CONTENTS OF FORCER=1 TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD WORD .WORD FATFLG JSET FATAL ERROR FLAG sLOOP (N ERROR, IF FLAG SET TRAP Do a Write Subsystem WRITE FIFO with byte count equal to 1 Mov #1.R0 JWRITE 1 BYTE MOV #DATA _R1 JFIFO WRITE DATA ADDRESS PC,T17WFIF 1108 MoV RO.R1 ERRDF ERRNO,T17SSSR,PKTSSR INC CKLOOP 607 T174SSR PKTSSR CSCLP :SETUP T17PK2 FOR WRITE FIFO JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE ;WAIT FOR SSR TO SET ;@80FORCE ERRUR [F FORCER=1 ;BR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR NEXT.ERRNO FATFLG sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD .WORD .WORD 608 T175SSR PKTSSR TRAP cscLP sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET Do a Write Subszstem READ STATUS PC,T17SRD JSETUP PACKET FOR READ STATUS JSR MOV #T17PK2 R4 ;GET WRITE SUBSYSTEM COMMAND PACKET R4, TSDB(RS) PC,CHKTSSR ;SET THE PACKET ADDRESS TO EXECUTE :WAIT FOR SSR TO SET 8CS MOV 1208 RO.R1 sBR [F CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR ERRDF ERRNO,T173SSR,PKTSSR FORCERROR 1128: TRAP #NP.QUT RO MOV JSR 103407 010001 MSGSTAT MOV JSR 1078: 104406 #0,DATA LWORD [F FLAG SET Do a Write Subsystem WRITE NPR to set tape direction out 8(CS 002222 . Mov AT17PK2 R4 Mov R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 107¢ 103407 010001 104455 001140 ;LOOP ON ERROR, FORCERROR 1028: 104455 SEQ 0183 for DATA from 0 to 377 MOV JSR 103407 010001 8 15 CKLOOP Repeat 1008: PAGE 106-2 NEXT.ERRNO 112% ;880FORCE ERROR IF FORCER=1 sDEVICE FATAL SSR FAILED TO SET TRAP .WORD CSERDF 609 TSVS = HARDWARE TESTS TEST 6: SUBTEST 2: 041372 061376 2450 041376 2451 041402 0416402 2652 2453 0414046 2654 041410 2455 04146146 2456 041420 2457 041422 2458 0414246 2459 041430 2460 04146346 2461 2462 2663 041440 2464 041442 2665 041446 2466 0641452 2467 041456 2468 041462 24669 041472 2470 0461474 2671 0461474 0461476 0461476 041500 041502 2672 041504 %73 041506 2474 2475 041506 2476 041512 2677 0641516 2478 041522 26479 041526 2480 041532 2481 041546 2482 041550 2483 041552 2484 041552 0461552 061554 061556 041560 2485 041562 2486 041566 041566 2487 FIFO WRITE 046726 012046 005237 002222 104406 004737 012701 012702 050146 046402 000020 000040 000200 005000 012701 050222 012703 004737 000024 011500 012702 25-MAY-82 09:19 SINGLE BYTE TEST 1208: : 050242 012221 011211 052711 052711 042711 : : 046362 104456 0011462 0647323 012350 104406 012700 004737 012704 010465 004737 000001 050106 050350 000000 016336 104406 004737 012701 012702 2692 0641610 2493 011211 013721 050146 046402 050242 SEQ 0184 .WORD .WORD INC CKLOOP FATFLG MOV NT17BFSTA.R2 ;GET RECV READ STATUS MoV #T17EXP.R2 :EXPD ADDRESS T173SSR PKTSSR JSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSCLPY Set WORDS 0-7 of expd message buffer = to recv since not testing JSR PC,T17SETEXP ;SET WORDS 0-7 EXPD=RE(CV MOV #TI7EXSTA, R ;GET EXPECTED READ STATUS MOV (R2)+,(R1)+ JSET EXPD WORD #8 = RECV TEMP MOV (R2).(R1) sSET EXPD WORD #9 = RECV TEMP 8IS #S2. INRDY (R1) :SET EXP INPUT READY= 1 BIS #S2. OUTRDY (R1) sSET EXP OUTPUT READY= 1 BIC #52.DIM, (RT) ;SET EXP DATA IN MISS = 0 If Input Ready NOT=1 then Print Error 1f Output Ready NOT=1 or Data in Miss NOT=0 Then Print Error CLR RO sHIGH RECV ADDRESS FOR (KMSG?2 MOV #T178FR,R1 ;LOW RECV ADDRESS FOR CKMSG?2 140%: CKLOGP : Do Write Subsystem READ FIFO with byte count equal to 1 MOV #1,R0 sSET READ BYTE COUNT JSR PC,T17RFIF sSETUP T17PK2 FOR READ FIFO MOV lTl?PKZ.Rk :GET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR SWAIT FOR SSR TO SET FORCERROR 142% -@@DFORCE ERROR IF FORCER=1 BCS 1508 :BR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T176SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 611 .WORD T176SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG CKLOOP :LOOP ON ERROR, IF FLAG SET TRAP cscLPt Set WORDS 0-7 of exgd message buffer = to recv since not testing 1428 : 002222 c15 132%: 103407 010001 104455 001143 047102 012046 005237 PAGE 106-3 MOV #20. ,R3 JSR PC.,CKMSG2 FORCERROR 1328.,NOTSSR BCS 1408 NEXT.ERRNO ERRHRD ERRNO,T173CMP_MSGSTAT 103404 2488 041570 2489 041576 2490 041600 2491 041604 MACRO M1113 1508%: H 002312 JSR MOv MOV MOV : PC,T17SETEX #T17EXSTA,RY #T17BFSTA,R2 DATA, (R1)+ ;NUMBER OF BYTES TO COMPARE sEXPD EQUAL RECV? ) :BR IF YES JREPORT ERROR TRAF LWORD WD LWORD ;LOOP ON ERROR, IF FLAG SEY TRAP CSERHRD 610 T173CMP MSGSTAT CSCLP SET UORDS 0-7 EXPD=RECV :GET EXFECTED READ STATUS :GEY RECV READ STATUS sSET EXPD WORD #8 = COUNT DATA MOV (R2),(R1) sSET EXPD WORD #9 = RECV (NOT TESTING) If Data read from FIFO NOT= to Data sent Then Print Error TSVS < HARDWARE TESTS TEST 6: SUBTEST 2: 2694 2495 041612 2496 041614 2497 041620 2498 061626 2499 041630 2500 041634 2501 041644 2502 041646 2503 041646 061646 041650 061652 061654 2504 041656 2505 041656 2506 2507 041660 2508 041664 2509 041670 2510 0416746 2511 041700 2512 041714 2513 041716 2514 041720 2515 041720 0641720 0641722 061724 061726 2516 041730 2517 061734 061734 2518 2519 041736 2520 041742 2521 041746 2522 041752 2523 041754 2524 041756 2525 041762 2526 041766 2527 2528 2529 041772 2530 041776 2531 042000 2532 042006 2533 042010 2534 042014 2535 042026 2536 042026 2537 042026 062026 0462030 042032 MACRO M1113 FIFO WJRITE 005000 012701 012702 012703 004737 25-MAY-82 09:19 SINGLE BYTE 047764 050350 000000 016336 ;REPORT ERROR 1608 : CkLOOP ;LOOP ON ERROR, : Do a Write Subsystem READ STATUS JSR PC,T17SRD sSETUP PACKET FOR READ STATUS MOV #T17PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET MOV R4,TSDB(RS) ;SET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR ;WAIT FOR SSR TO SET FORCERROR 162% ;@8@DFORCE ERROR [F FORCER=1 8(Cs 1708 ;BR IF CARRY SET (GOOD RETURN) MoV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO 103407 010001 1628: 104455 001145 046726 012046 005237 002222 104406 004737 012701 012702 012221 011211 052711 042711 042711 050146 046402 050242 000020 000040 000200 005000 012701 012702 012703 004737 050222 046362 000024 011500 170$: : : ; 103404 104456 001146 047407 The data is in WORD #8 of the message buffer JHIGH RECV ADDRESS FOR CKMSGZ2 ;LOW RECV ADDRESS FOR CKMSGZ2 JEXPD ADDRESS ;NUMBER OF BYTES TO COMPARE SEXPD EQUAL RECV? ;o8 ;BR IF YES 152%: 103404 004737 012704 010465 004737 SEQ 0185 CLR RO MOV #T17BFR,R1 MOV #T17EXP ,R2 MOV #18. .R3 JSR PC,CKMSG2 FORCERROR 1528 ,NOTSSR 8(S 1608 NEXT.ERRNO ERRHRD ERRNO,T172CMP, MSGSUB 050222 046362 000022 011500 104406 D15 TEST : 104456 001144 047227 013742 PAGE 106~4 172%: ERRDF INC CxLOOP ERRNO, T173SSR,PKTSSR TRAP .WORD .WORD .WORD IF FLAG SET TRAP :DEVICE FATAL SSR FAILED TO SET FATFLG CSERHRD 612 T172CHP MSGSUB CSCLP TRAP CSERDF .WORD .WORD .WORD 613 T173SSR PKTSSR TRAP LMWORD .WORD CSERHRD 614 T174CMP ;5€1 FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP cscLm Set WORDS 0-7 of expd message buffer = to recv since not testing JSR PC,T17SETEXP sSET WORDS 0-7 EXPD=RECV MOV #T17EXSTA, R JGET EXPECTED READ STATUS MoV #T178FSTA R2 ;GET RECV READ STATUS MOV (R2)+,(R1)+ sSET EXPD WORD #8 = RECV TEMP MOV (R2),(R1) sSET EXPD WORD #9 = RECV TEMP 8IS #S2. INRDY, (R1) sSET EXP INPUT READY= 1 8IC #S2.0UTRDY, (R1) sSET EXP OUTPUT READY= 0 8IC #52.0IM,(R1) ;SET EXP DATA IN MJSS = 0 It Input Ready NOT=1 then Print Error . I1f Output Ready NOT=0 or Data in Miss NOT=0 Then Print Error CLR RO cHIGH RECV ADDRESS FOR CKMSGZ MOV #T178FR,R1 cLOW RECV ADDRESS FOR CKMSGZ MOV #T17EXP,R2 ;EXPD ADDRESS MOV #20. ,R3 ;NUMBER OF BYTES TO COMPARE JSR PC,CKMSG2 FORCERROR 1728 .NOTSSR BCS 1808 NEXT.ERRNO ERRHRD ERRNO,T174CMP MSGSTAT JEXPD EQUAL RECV? ;a8 ;BR IF YES ;REPORT EQROR TSVS = HARDWARE TESTS TEST 6: SUBTEST 2: 0462034 2538 042036 042036 2539 042040 2560 042050 2561 042054 2562 042062 2543 042064 ggzg 062070 2546 042070 042070 MACRO M1113 FIFO WRITE 25-MAY-82 09:19 SINGLE BYTE 012350 180%: 104406 005237 023727 101002 000137 TEST 002312 002312 041156 000377 205$: PAGE 106-5 CKLOOP FORCEXIT 2058 INC DATA CMP DATA 4377 BHI 2058 JMP 1008 ENDSUB 2547 042070 104403 2548 062072 2549 042076 2550 042100 2551 042104 2552 005737 001402 004737 3 SEQ 0186 LWORD ;LOOP ON ERROR, IF FLAG SET TRAP ;33D JGET NEXT TEST DATA ;DONE 0 TO 377? ;BR IF YES :DO ANOTHER TEST PATTERN 017202 2608 : TST BEQ JSR CSCLP $/1/1/77777/7 END SUBTEST /7117177117 L10060: TRAP 002222 MSGSTAT FATFLG 2608 PC,CKDROP sANY FATAL ERRORS ? ;BRANCH IF NOT ¢TRY TO DROP THE UNIT CSESUB TSVS = HARDWARE TESTS TEST 6: SUBTEST 3: MACRO M1113 25-MAY-82 09:19 FIFO WRITE MULTIPLE BYTES TEST %ggg .SBTTL 2556 PAGE 107 SEQ 0187 TEST 6: SUBTEST 3: FIFO WRITE MULTIPLE BYTES TEST see 2557 2558 ggzg : TEST 6: SUBTEST 3: : ; SUBTEST DESCRIPTION: 2561 2562 2563 2564 2565 2566 2567 2568 2569 : : : : : : : : : 257 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 s TEST STEPS: H . BEGIN L : Write to TSSR to soft initialize : Do a WRITE CHARACTERISTICS to setup a message buffer : Do a write Subsystem READ STATUS : It Input Ready NOT=1 Then Print Error : If Output Ready NOT=0 Then Print Error : If Data In Miss NOT=0 Then Print Error : If Last Word NOT=0__ Then Print Error : REPEAT FOR DATA 0 YO 377, 377 TO O, FLOATING 1°S,0°S AND ALL 1°S/C'S : REPEAT FOR BYTE COUNT 2 TO 64 DECIMAL : BEGIN ) ) : Do a Write Subsystem WRITE NPR to set tape direction out : Do a Write Subsystem WRITE FIFO : Do a Write Subsystem READ STATUS : If Input Ready NOT=1 Then Print Error H If Output Ready NOT=1 Then Print Error : If Data In Miss NOT=0 Then Print Error H If Last Word NOT=0 Then Print Error : Do Write Subsystem RZAD FIFO ) : 1f Data read from 7[FO NOT= to Data sent Then Print Error : Do a Write Subsystem READ STATUS : If Input Ready NOT=1 Then Print Error : It Output Ready NOT=0 Then Print Error : If Data In Miss NOT=0 Then Print Error : If Last Word NOT=0 Then Print Error H END 2570 : 5288 : 2601 82%}82 2602 042104 2605 042106 2606 042112 2607 042114 2608 042116 END BGNSUB 11111111111 BE?IN SUBTESY /71171117 104402 TRAP 2603 2604 042106 This subtest verifies the ability of the FIFO to correctly pass a multiple data bytes from input to output. The following se?uence is done with various data patterns and byte counts from 2 to 64. 1. Initial FIFO status is checked 2. The Write FIFO function. ) 3. Read Status is executed and FIFO status is checked. 4. Read FIFO is executed and the data and final status is checked. : 004737 103405 010001 015774 5s: cs8sus Write to TSSR register to soft initialize the controller JSR 8CS MOV ERRDF PC,SOF INIT 108 RO,R1 ERRNO,SFIERR,SF IMSG sWRITE TO TSSR TO SOFT INITIALIZE ;BR IF SOFT INIT OKAY sSAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT TSVS = HARDWARE TESTS TEST 6: SUBTEST 3: MACRO M1113 25-MAY-82 09:19 FIFO WRITE MULTIPLE BYTES TEST 104455 001146 003652 012034 NISERIVRSR 005037 012704 004737 002222 050200 010662 042246 2630 042250 2631 042254 0462254 2632 2633 042256 2634 042262 2635 042266 2636 042272 2637 042274 2638 042276 2639 042302 2640 042306 2641 042312 2642 2643 2644 2645 042316 2646 042320 2647 042324 2648 042330 2649 042334 2650 042340 2651 042350 108: FORCERROR 42%: 002222 508: 103407 010001 628%: 104455 001150 046726 012046 005237 428 002222 004737 012701 012702 012221 01121 052711 042711 042711 042711 000020 000040 000200 000100 005000 012701 012702 012703 004737 050222 046362 000024 011500 050146 046402 050242 708: SFIERR SFIMSG :88DFORCE ERROR IF FORCE R=1 :BR IF CARRY SET (GOOD RETURN) MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T17SSR,PKTSSR sDEVICE FATAL SSR FAILEDT;RPSET INC sSET FATAL ERROR FLAG cxLoop FATFLG ;SAVE CONTENTS OF TSSR .WORD :LOOP ON ERROR, IF FLAG ¥SIP CSERDF 615 T17SSR PKTSSR cscLPl Mov #T17PK2 R4 MOV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 62% sGET WRITE SUBSYSTEM COMMAND PA( KET cSET THE PACKET ADDRESS TO EXECUTE MOV RO,R1 NEXT.ERRNO ;SAVE CONTENTS OF 8CS 70% ERRDF ERRNO,T173SSR,PKTSSR JWAIT FOR SSR TO SET ;88DFORCE ERROR IF FORCE R=1 :BR IF CARRY SET (GOOD RETURN) TSSR sDEVICE FATAL SSR FAILEDT;RPSET .WORD 104406 103404 508 Do a Write Subsystem READ STATUS JSR PC,T17SRD sSETUP PACKET FOR READ STATUS 047764 050350 000000 016336 CSERDF 614 Do a WRITE CHARACTERISTICS to setup a message buffer CLR FATFLG JCLEAR FATAL ERROR FLAG MOV #T17PACKET R4 sGET THE ADDRESS OF COMMAND PACK ET JSR PC_WRTCHR ;00 WRITE CHARACTERISTICS COMMAND BCS 104406 2625 0642220 2626 042234 2627 042236 2628 042240 2629 042240 SEQ 0188 -WORD 104455 004737 012704 010465 004737 6 15 TRAP 103407 010001 012046 005237 PAGE 107-1 INC (KLOOP .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG %EIP FATFLG Set WORDS 0-7 of expd message buffer = to recv since not testing JSR PC,T17SETEXP ;SET WORDS 0-7 EXPD=RECV MoV #TI17EXSTA,R] SGET EXPECTED READ STATUS MOV MOV MOV #T17BFSTA,R? (R2)+,(R1)+ (R2), (R1) sGET RECV READ STATUS SSET EXPD WORD #8 = RECV TEMP SET EXPD WORD #9 = RECV TEMP 8I1C #S2.DIM, (R1) sSET EXP DATA IN MISS = 0 MOv MOV JSR #T17EXP,R2 #20.,R3 PC,CKMSG2 cNUMBER OF BYTES TO COMPARE cEXPD EQUAL RECV? 8(s 908 BIS 8IC #S2. INRDY, (R1) #S2.0UTRDY, (R1) sSET EXP INPUT READY= 1 sSET EXP OUTPUT READY= 0 8IC #S2.1LW, (R1) . <SET EXP LAST WORD (ILW)=0 It Input Ready NOT=1 then Print Error It Output Ready NOT=0 or Data in Miss NOT=0 Then Print Error If Last Word NOT=0 Then Print Error CLR RO sHIGH RECV ADDRESS FOR CKMSG? MOV #T178BFR,R1 cLOW RECV_ADDRESS FOR CKMSG2 FORCERROR 828 ,NCTSSR sEXPD_ADDRESS ;8D <BR IF YES CSERDF 616 T173SSR PKTSSR CSCLP TSVS - HARDWARE TESTS TEST 6: SUBTEST 3: 2652 04,352 2653 042352 062352 042354 042356 042360 2654 042362 042362 2655 2656 2657 2658 2659 2660 2661 2662 042364 2663 042372 2664 042372 2665 042400 2666 2667 042400 2668 042404 2669 042410 2670 0426414 2671 042420 2672 042424 2673 042440 2674 042442 104456 001151 047145 012350 104406 012737 000001 002314 012737 000002 002310 012700 004737 012704 010465 004737 000100 050026 050350 000000 016336 PAGE 107-2 2692 042530 2693 042534 2694 042536 2695 042540 2696 042542 2697 042544 012700 110021 005300 005302 003374 022737 1064455 001152 046773 012046 005237 90% : CKLOOP s s M M REPEAT FOR TSTFLAG =1 =2 =3 95$: 100$: : 1058: 104406 001006 001005 050126 046504 002310 000001 : 002314 1108: 000002 002314 000377 000003 1158: 1208 : 002314 SEQ 0189 82%: 102%: 002222 H 15 NEXT.ERRNO ERRHRD ERRNO,T171CMP MSGSTAT 103407 010001 004737 012701 013702 022737 001005 005000 110021 005200 005302 003374 022737 2698 042552 25-MAY-82 09:19 FIFO WRITE MULTIPLE BYTES TEST 2675 042444 2676 042444 04624644 042446 042450 042452 2677 042454 2678 042460 042460 2679 2680 042462 2681 042466 2682 042472 2683 042476 2684 042504 2685 042506 2686 042510 2687 042512 2688 042514 2689 042516 2690 042520 2691 042526 MACRO M1113 125$: [ 1] JREPORT ERROR TRAP .WORD .WORD WORD ;LOOP ON ERROR, IF FLAG SET TRAP BYTE COUNT 2 TO 64 DECIMAL FOR INCREMENT TEST PATTERN FOR DECREMENT TEST PATTERN FOR TSTBLK TABLE PATTERN #1_TSTFLAG CSERHRD 617 T171CMP MSGSTAT cscLP1 :TEST PATTERN FLAG MOV #2,COUNT JGET FIRST BYTE COUNT ] Do a Write Subsystem WRITE NPR to set tape direction out MOV #NP.OUT,RO JSET TAPE DIRECTION OUT JSR PC,T17SNPR JSETUP T17PK2 FOR WRITE NPR [, [1]"] #T17PK2 R4 :GET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) JSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 1028 ;8aDFORCE ERROR IF FORCER=1 B(CS 105¢ ;BR IF CARRY SET (GGOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T174SSR,PKTSSR JDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 618 WORD T174SSR .WORD PKTSSR INC FATFLG JSET FATAL ERROR FLAG CKLOOP :LOOP ON ERROR, ]F FLAG SET TRAP CSCLP? Do a Write Subsystem WRITE FIFO JSR PC,T17CLEXP JCLEAR EXPD BUFFER MOV #T17WFDATA R JEXPD WRITE FIFO DATA BUFFLR KoV COUNT ,R2 TEST PATTERN SIZE CMP #1,TSTFLAG s INCREMENT PATTERN THIS TIME THRU? BNE 115% :BR IF NO CLR RO JINCREMENT TEST PATTERN Mmovs RO,(R1)+ JSTORE INCREMENT TEST BYTE INC RO :SET NEXT PATTERN DEC R2 ;DONE? 86T 1108 :BR IF NO (MP #2,TSTFLAG :DECREMENT PATTERN THIS TIME THRU? BNE Mov MOove DEC DEC 86T CMP BNE 1288 #377.R0 RO, (R1)+ RO R2 120% #3, TSTFLAG 1355 :BR If NO JDECREMENT TEST PATTERN sSTORE DECREMENT TEST BYTE ;SET NEXT PATTERN :DONE? :BR IF NO JTSTBLK PATTERNS THIS TIME THrU? :BR IF NO — TSVS ~ HARDWARE TESTS TEST 6: SUBTEST 3: 2699 €42554 2700 042560 2701 042562 2702 042564 2703 042566 2704 042566 2705 042572 2706 042576 2707 042602 2708 042606 2709 042612 2710 042616 2711 042632 2712 042634 2713 062636 2714 042636 042636 ' 2715 042646 2716 042652 042552 2717 2718 2719 042654 2720 042660 2721 042664 2722 042670 2723 042574 2724 042710 2725 04712 2726 042714 2727 042714 0462714 042716 042720 042722 2728 042724 2729 042730 2732 042732 2733 042736 2734 042742 2735 042746 2735 042750 2737 042752 2738 042756 2739 042762 2740 042766 2741 2742 2743 042772 2744 0462774 2745 043000 MACRO M1113 25-MAY-82 09:19 FIFO WRITE MULTIPLE BYTES TEST 012700 112021 002752 005302 003375 013700 012701 004737 012704 010465 004737 002310 046504 050052 050350 000000 016336 130%: 135¢%: 001153 047036 012046 005237 002222 1508: ;DONE? :BR IF NO MOV MOV COUNT RO #T17WFDATA R JFIFO BYTE COUNT JFIFO WRITE DATA ADDRESS (1)) ST17PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET PC.T17WFIF R&,TSDB(RS) JSETUP T17PK2 FOR WRITE FIFO JSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR FORCERROR 1428 JWAIT FOR SSR TO SET ;33DFORCE ERROR IF MOV RO,R1 NEXT.ERRNO JSAVE CONTENTS OF 8CS 150¢ ERRDF ERRNO,T175SSR,PKTSSR FORCER=1 ;BR IF CARRY SET (GOOD RETURN) TSSR JDEVICE FATAL SSR FAILED 10 SET TRAP WORD : 1578 104455 001154 INC CKLOOP FATFLG WORD SSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SEY TRAP 104406 004737 012701 012702 012221 011211 052711 052711 042711 062711 000020 000040 000200 000100 005000 012701 012702 050222 046362 050146 046402 050242 cscLP MOV R4,TSDB(RS) JSR PC,CHKTSSR FORCERROR 157¢ sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@8DFORCE ERROR IF FORCER=1 MOV RO.R1 NEXT.ERRNO ;SAVE CONTENTS OF 8CS 1608 ERRDF ERRNO,T173SSR,PKTSSR ;BR IF CARRY SET (GOOD RETURN) TSSR sDEVICE FATAL SSR FAILED TO SET TRAP WORD .WORD 002222 CSERDF 619 T175SSR PKTSSR Do a Write Subsystem R:AD STATUS JSR PC,T17SRD JSETUP PACKET FOR READ STATUS MOV #T17PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET 047764 050350 000000 016336 103407 010001 046726 012046 005237 R2 1308 DEC 86T JFLOAT 1°S/0°S ETC. TEST TABLE JSTORE A TSTBLK BYTE WORD 104406 004737 012704 010465 004737 SEQ 0190 #TSTBLK RO (RO)+,(R1)+ MOV 142$: 104455 115 MOV MOVB JSR 103407 010001 PAGE 107-3 160$: INC ckLooP FATFLG -WORD ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP Set WORDS 0-7 of expd message buffer = to recv since not testing JSR PC,T17SETEXP ;SET WORDS 0-7 EXPD=RE(CV MOV #TI7EXSTA,R] SGET EXPECTED READ STATUS MOV MOV MoV #T17BFSTA R2 (R2)+,(R1)+ (R2), (R1) sGET RECV READ STATUS sSET EXPD WORD #8 = RECV TEMP SET EXPD WORD #9 = RECV TEMP 8IS #52.0UTRDY, (R1) sSET EXP OUTPUT READY= 1 8IS #S2.INRDY, (R1) sSET EXP INPUT READY= 1 BIC #52.DIM, (R1) sSET EXP DATA IN MISS = 0 8IC #S2.1LW, (R1) . sSET EXP LAST WORD (ILW)=0 It Input Ready NOT=1 then Print Error It Output Ready NOT=1 or Data in Miss NOT=0 Then Print Error CLR RO cHIGH RECV ADDRESS FOR CKMSG?2 MOv #T17BFR,R1 :LOW RECV ADDRESS FOR CKMSG2 MOV #T17EXP,R2 sEXPD ADDRESS CSERDF 620 T173SSR PKTSSR cscLPl TSVS = HARDWARE TESTS TEST 6: SUBTEST 3: 746 043004 2747 043010 2748 043014 2749 043024 2750 043026 2751 063026 MACRO M1113 FIFO WRITE MULTIPLE BYTES TEST 012703 004737 000024 011500 162%: 104456 001155 170$: 043170 2779 043172 043172 2780 2781 2782 0463174 2783 043200 2784 043204 2785 043210 2786 043214 2787 043230 002222 002310 ERRNO,T173CMP,MSGSTAT 2".zPORT ERROR TRAP CKLoop CSERHRD ;LOOP ON ERROR, PC. T17RFIF #T17PK2 R4 R4 ,TSDB(RS) PC,CHKTSSR FORCERROR 172% 8(Cs 1808 ERRDF ERRNO,T176SSR,PKTSSR MOV RO,R1 NEXT.ERRNO 621 T173CMP MSGSTAT .WORD IF FLAG SET TRAP CsCLP ;SET READ BYTE COUNT JSETUP T17PK2 FOR READ FIFO JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;88DFORCE ERROR IF FORCER=1 ;sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP 1808$: INC CKLOOP FATFLG sSET FATAL ERROR FLAG CSERDF ;LOOP ON ERROR, PKTSSR IF FLAG SET TRAP CSCLPY It Data read from FIFO NOT= to D ata sent Then Print Error CLR RO JHIGH RECV ADDRESS FOR CKMSG?2 MOv #T17WFDATA R2 2GET EXPECTED ADDRESS FOR CKMSG2 MOV #T178FSTA R sGET RECEIVED ADDRESS FOR CKMSG2 MOV COUNT,R3 JNUMBER OF BYTES TO COMPARE JSR PC,CKMSG2 JEXPD EQUAL RE(CV? FORCERROR 1928 .NOTSSR caab B8CS 2008 ;BR IF YES 1928$: : 2008 047764 050350 000000 016336 622 T176SSR .WORD NEXT.ERRNO Mov COUNT ,R1 ERRHRD ERRNO,T175CMP,FIFEXP sGET BYTE COUNT JREPORT ERROR TRAP .WORD .WORD 104406 103407 ERRHRD MOV JSR 046504 050242 002310 011500 104456 001157 047472 012170 004737 012704 010465 004737 ;BR +F YES MOV 103406 013701 1708 NEXT.ERRNO WORD .WORD 104406 005000 012702 012701 013703 004737 JNUMBER OF T /TES TO COMPARE :Exso Ef.al RECV? BCS JSR 172%: 104455 001156 2 2769 043122 2770 043124 2771 043130 2772 043134 2773 043140 2774 043144 2775 043154 2776 043156 2777 043156 2778 043162 SEQ 0191 Do Write Subsystem READ FIFO MoV COUNT RO 002310 050106 050350 000000 016336 103407 010001 047102 012046 005237 J 1 .WORD .WORD 104406 013700 004737 012704 010465 004737 PAGE 107-4 MOV #20. ,R3 JSR PC,CKMSGZ FORCERROR 1628 ,NOTSSR 103404 047323 012350 2755 043040 2756 043044 2757 043050 2758 043054 25-MAY-82 09:19 .WORD cxLoop ;LOOP ON ERROR, IF FLAG SET TRAP CSERHRD 623 T175CmP FIFEXP cscLP Do a Write Subsystem READ STATUS JSR PC,T17SRD sSETUP PACKET FOR READ STATUS MOV #T17PK2 R4 sGET WRITE SUBSYSTEM COMMAND PACKET nmov R4, TSDB(RS) sSET _THE PACKET ADDRESS TO EXECUTE JSR PC.CHKTSSR FORCERROR 212% B(S 2208 :WAIT FOR SSR TO SET :9aDFORCE ERROR [F FORCER=1 :BR IF CARRY SET (GOOD RETURN) [ TSVS ~ HARDWARE TESTS | TEST 6: SUBTEST 3: 2788 043232 2789 043234 2790 043234 063234 043236 0463240 043242 2791 043244 2792 043250 063250 2793 2794 043252 2795 043256 2796 043262 2797 043266 2798 043270 2799 043272 2800 043276 2801 043302 2802 043306 2803 2804 2805 043312 2806 043314 2807 043320 2808 043324 2809 043330 2810 043334 2511 043344 2812 043346 2813 043346 043354 2814 043356 063356 2815 043360 2816 043370 2817 043374 2818 043402 2819 043404 2820 043410 2821 043414 2822 043422 2823 043424 2824 043430 2825 043430 043430 043430 2826 2827 043432 2828 043436 2829 043440 2830 043444 2831 2832 MACRO M1113 25-MAY-82 (09:19 FIFO WRITE MULTIPLE BYTES TEST 010001 mMov 212$: 104455 001160 046726 012046 005237 005000 012701 012702 012703 004737 002222 2208: 050146 046402 050242 000020 000040 000200 000100 RO,R1 NEXT.ERRNO ERRDF ERRNO,T173SSR,PKTSSR +SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP 050222 046362 000024 011500 INC CKLOOP FATFLG FORCERROR B8CS 2328: 001161 0467407 012350 sSET FATAL ERROR FLAG <LOOP ON ERROR, 2408: 005237 023727 002310 002310 000137 005237 023727 042400 002314 002314 042372 2408 2328 ,NOTSSR IF FLAG SET TRAP cscLPl NEXT.ERRNO ERRHRD ERRNO, T174CMP ,MSGSTAT saab :BR IF YES JREPORT ERROR CkLOOP FORCEXIT 000077 000003 2508: 255%: INC CMP BHI JMP INC cMP BHI JMP ;LOOP ON ERROR, 2508 TRAP COUNT COUNT 477 002222 DO _ANOTHER BYTE COUNT 255% 95$ :DO ANOTHER TEST PATTERN TSTFLAG TSTFLAG,#3 TST 260%: JSn CSERHRD 625 T174CMP MSGSTAT cscLP sDONE 0 1O 77 sBR IF YES 2508 1008 ENDSUB 8¢Q .WORD IF FLAG SET TRAP saaD sGET NEXT BYTE COUNT sGET NEXT TEST PATTERN CODE sDONE INC,DEC,TSTBLK PATTERNS? ¢BR IF YES 2171711777777/ END SUBTEST 1/71/11171/7 L10061: 104403 017202 PKTSSR .WORD .WORD LWORD 104406 005737 001402 004737 CSERDF 624 T173SSR It Input Ready NOT 1 then Print Error 1f Outpugofleady NOT=0 or Data in Miss NOT=0 Then Print Error CLR sHIGH RECV ADDRESS FOR (KMSG? MOV #T178FR,R1 :LOW RECV ADDRESS FOR CKMSG2 MOV #TI7EXP R2 cEXPD ADDRESS MOV #20..R3 cNUMBER OF BYTES TO COMPARE JSR PC,CKMSG2 cEXPD EQUAL RECV? 104456 101002 000137 SEQ 0192 Set WORDS 0-7 of expd message bufggr to recv since not testing JSR PC,T17SETEXP T WORDS 0=7 EXPD=RECV MOV 0117EXSTA R1 JGET EXPECTED READ STATUS MOV lT17BFSTA RZ JGET RECV READ STATUS MOV (R2)+, (R15+ JSET EXPD WORD #8 = RECV TEMP MOV (R2). (R1) JSET EXPD WORD #9 = RECV TEMP 8IS #S2. INRDV (R1) SSET EXP INPUT READY= 1 BIC #S2. OUTRDY (R1) ;SET EXP OUTPUT READY= 0 8IC #S2.DINM, (R1) JSET EXP DATA IN MISS = 0 BIC #S2.1LW, (R1) JSET EXP LAST WORD (ILW)=0 103404 101002 K 15 LWORD .WORD 104406 004737 012701 012702 012221 01121 052711 042711 042711 04271 PAGE 107-5 FATFLG JANY FATAL ERRORS ? PL CKDROP ¢TRY TO DROP THE UNIT 2608 :BRANCH IF NOT TRAP {SESUB TSVS = HARDWARE TESTS TEST 6: 2833 SUBTEST 3: MACRO M1113 | 25-MAY-82 09:19 FIFO WRITE MULTIPLE BYTES TEST PAGE 107-6 L 15 SEQ 0193 = TSVS = HARDWARE TESTS TEST 6: SUBTEST &: MACRO M1113 FIFO VERIFY 25-MAY-82 09:19 [LW STATUS .SBTTL PAGE 108 TEST SEQ 0194 6: SUBTEST 4: FIFO verify ILW Status c+e s TEST 6: SUBTEST 4: SUBTEST DESCRIPTION: This subtest verifies that reading the FIFO when it is empty causes the Last Word (ILW) status to assert. TEST STEPS: BEGIN Write to TSSR to soft initialize Do Write Subs‘stem READ FIFO with byte count equal Do a Write Subsystem READ STATUS If Input Ready NOT=1 Then Print Error END 2857 043444 043444 043444 2858 2859 2860 043446 2861 043446 2862 063452 2863 043454 2864 043456 043456 043460 0643462 043464 2865 2866 043466 2867 043472 2868 043476 2869 042502 2870 043516 2871 043520 2872 043522 2873 043522 043522 043524 043526 043530 2874 043532 2875 043536 063536 2876 2877 2878 043540 2879 043544 2880 043550 to 1 If Output Ready NOT=0 Then Print Error I1f Data In Miss NOT=0 Then Print Error If Last Word (ILW) NOT=1 Then Print Error BGNSUB 11111171177 BE?éN‘SUBTEST 1111111117 104402 TRAP %S 004737 103405 015774 010001 002222 050200 010662 ;WRITE TO TSSR TO SOFT IMITIALIZE ;JBR IF SOFT INIT OKAY : PC,SOFINIT 108 RO,R1 ERRNO, SF IERR,SF IMSG :SAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT 108: Do a WRITE CHARACTERISTICS to setup a message buffer CLR FATFLG MOV #T17PACKET R4 JSR PC,WRTCHR FORCERROR 42% 8(CS 62%: 104455 001162 0646625 508 MOV RO.R1 NEXT.ERRNO ERRDF ERRNO,T17SSR,PKTSSR .WORD 002222 508: INC (KLOOP FATFLG 050350 : :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP sSET FATAL ERROR FLAG LWORD JSR PC.T17RFIF #T17PK2 R4 CSERDF 626 T17SSR PKTSSR ;LOOP ON ERROR, IF FLAG SET Do Write Subsystem READ FIFO with byte count equal to 1 MOV #1,R0 sSET READ BYTE COuwTY MOV SFIMSG :BR IF CARRY SET (GOOD RETURN) TRAP 000001 050106 CSERDF 625 SFIERR sCLEAR FATAL ERROR FLAG sGET THE ADDRESS OF COMMAND PACKET ;DO WRITE CHARACTERISTICS COMMAND -@dDFORCE ERROR IF FORCER=1 MORD .WORD 104406 012700 004737 012704 JSR 8CS WORD .WORD 103407 010001 012046 005237 initialize the controller TRAP 001161 003652 012034 005037 012704 004737 Write to TSSR register to soft MOV ERRDF 104455 csBsuBs cscLP sSETUP T17PK2 FOR :tAD FIFO sGET WRITE SUBSYSTEM COMMAND PACKET TSV5 = HARDWARE TESTS TEST 6: SUBTEST &: 2881 043554 2882 043560 2883 043564 2884 043600 2885 043602 2886 043604 2887 043604 043604 063606 043610 043612 2888 043614 2889 043620 9 043620 2891 2892 043622 2893 043626 2894 043632 2895 043636 2896 043642 2897 043656 2898 043660 2899 043662 2900 043662 043662 043664 063666 043670 2901 043672 2902 043676 043676 2903 2904 043700 2905 043704 2906 043710 2907 043714 2908 043716 2909 043720 2910 043724 2911 043730 2912 043736 2913 2914 2915 2916 043740 2917 043742 2918 0643746 2919 043752 2920 043756 2921 043762 2922 043772 2923 043774 2924 043774 043774 043776 0644000 MACRO M1113 FIFO VERIFY 010465 004737 25-MAY-82 09:19 ILW STATUS 000000 016336 1428: MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 1428 8CSs 1508 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T176SSR,PKTSSR 1508 : INC CKLOOP 103407 010001 104455 001163 047102 012046 005237 002222 104406 004737 012704 010465 004737 047764 050350 000000 016336 : 103407 010001 104455 001164 046726 012046 005237 162%: 002222 104406 004737 012701 012702 012221 011211 052711 042711 042711 052711 005000 012701 012702 012703 004737 050146 046402 170%: : 050242 000020 000040 000200 000100 : : H 059222 046362 000024 011500 172%: FATFLG SEQ 0195 JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;3aDFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO Sk7 TRAP .WORD .WORD .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSERDF 627 T176SSR PKTSSR CsCLPI Do a Write Subsystem READ STATUS JSR PC,T17SRD JSETUP PACKET FOR READ STATUS Mov lT17PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET MOV RA.TSDB(RS) SSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 162% ;8a8DFORCE ERROR IF FORCER=1 8CS 170% ;BR IF CARRY SET (GOOD RETURN) MOV RO,R1 JSAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T173SSR,PKTSSR SDEVICE FATAL SSR FAILED TO SET TRAP CSERDF LWORD 628 .WORD T173SSR .WORD PKTSSR INC FATFLG JSET FATAL ERROR FLAG (KLOOP ;LOOP ON ERROR, IF FLAG SET TRAP CSCLP Set WORDS 0-7 of expd message buffer = to recv since not testing JSR MOV MoV 103404 104456 001165 047546 PAGE 108-1 PC,T17SETEXP lT17EXSTA R1 lTl?BFSTA.RZ ;SET WORDS 0-7 EXPD=RECV .GET EXPECTED READ STATUS JGET RECV READ STATUS MOV (R2)+,(R1)+ JSET EXPD WORD #8 = RECV TEMP MOV (R2),(R1) JSET EXPD WORD #9 = RECV TEMP 8IS #S2. INRDY, (R1) ;SET EXP INPUT READY= 1 BIC #S2.0UTRDY, (R1) JSET EXP OUTPUT READY= 0 BIC #S2.DIM, (R1) JSET EXP DATA IN M]SS = 0 8IS #S2.1LW,(R1) JSET EXP LAST WORD (ILW)=1 1f Input Ready NOT=1 then Print Error 1f Output Ready NOT=0 or Data in Miss NOT=0 Then Print Error It Last Word (ILW) NOT=1 Then Print Error CLR RO :HIGH RECV ADDRESS FOR CKMSG2 MOV #T178FR,R1 sLOW RECV ADDRESS FOR CKMSG2 MoV #T17EXP,R2 SEXPD ADDRESS MOV #20.,R3 :NUMBER OF BYTES TO COMPARE JSR PC,CKMSG2 EXPD EQUAL RECV? FORCERROR 1728 ,NOTSSR ; 98D B8CS 1808 ‘BR IF YES NEXT.ERRNO ERRHRD ERRNO,T176CMP,MSGSTAT ;REPORT ERROR TRAP .WORD JWORD CSERMRD 629 T176CMP — TSVS ~ HARDWARE TESTS TEST 6: SUBTEST &: 064002 2925 044004 2026 044004 2927 044006 044006 MACRO M1113 FIFO VERIFY 012350 25-MAY-82 09:19 [LW STATUS 1808: 104406 PAGE 108-2 104403 2929 044010 2930 044014 2931 0464016 2932 0464022 2933 2934 C05737 001402 004737 SEQ 0196 .WORD sLOOP ON ERRCR, IF FLAG SET (CkLOOP TRAP ENDSUB 2028 044006 8 017202 2608 : TST 8EQ JER csCLP! /1117177177777 END SUBTEST /71771711717 L10062: TRAP 002222 MSGSTAT FATFLG 2608 PC,CKDROP sANY FATAL ERRORS ? ¢BRANCH IF NOT :TRY TO DROP THE UNIT ($ESUB ——— — TSVS ~ WARDWARE TESTS TEST 6: SUBTEST S: MACRO M1113 FIFO VERIFY 2936 2937 2938 2939 2940 2943 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 .SBTTL 2982 2983 044044 2984 044050 2985 044054 2986 064060 TEST SEQ 0197 6: SUBTEST 5: FIFO verity Input Ready P TEST 6: SUBTEST §: . SUBTEST DESCRIPTION: This subtest verifies t.at writing 64. bytes into the FIFO without reading any out causes the Input Ready status to negate. The Subtest then verfiies that writing a 65th byte into the FIFO causes the Data In Miss status to assert. Next it is verified that the original 64 bytes can be read out correctly and that the data has not been corrupted. TEST STEPS: BEGIN Write to TSSR to soft initialize Do Do Do Do It If If Do Do If If a WRITE CHARACTERISTICS to setup a message buffer a Write Subsystem WRITE NPR to set tape direction out a Write Subsystem WRITE FIFO 64. bytes incrementing pattern a Write Subsystem READ STATUS Input Ready NQOT=0 Then Print Error Output Ready NOT=1 Then Print Error Data In Miss NOT=0 Then Print Error a Write Subsystem WRITE FIFO 1 byte for a total of 65. written a Write Subsystem READ STATUS Input Ready NOT=0 Then Print Error Output Ready NOT=1 Then Print Error Do If Do If }; Write Subsystem READ FIFO Data read from FIFO NOT= to Data sent Then Print Erros a Write Subsystem READ STATUS Input Ready NOT=1 Then Print Error Output Ready NOT:? Then Print Error Data In Miss NOT= Then Print Error I1f Data In Miss NOT=1 END Then Print Error BGNSL3 /117717777777 BEGIN SUBTEST //,7/11177/ T 104402 2976 2977 044024 2978 044024 2979 044030 2980 044032 2981 044034 044034 044036 PAGE 109 XX Ve 0o 0y 8¢ %0 B¢ e B B¢ B Ta B Ve o Vo0 Ve VeV VW Ve Ve Ve VeV VBN, B, Ve N, 2974 044022 044022 044022 2975 25-MAY-82 09:19 INPUT READY IRAP ($BSUB Write to TSSR register to soft initiatize the controller 004737 103405 010001 015774 104455 001165 003652 012034 005037 012704 004737 002222 050200 010662 JSR PC,SOFINIT MOV ERRDF RO,R1 ERRNO,SFIERR,SFIMSG BCS i0s: 108 sWRITE TO TSSR TO SOFT INITIALIZE ;BR IF SOFT INIT OKAY sSAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT TRAP Do 5 WRITE CHARACTERISTICS to setup a message buffer CLR FATFLG JCLEAR FATAL ERROR FLAG MoV #T17PACKET R4 JSR PC,WRTCHR FORCERROR 42% .WORD .WORD WORD CSERDF 629 SFIERR SFIMSG sGET THE ADDRESS OF COMMAND PACKET ;DO WRITE CHARACTERISTICS COMMAND ;83DFORCE ERROR IF FORCER=1 TSVS = HARDWARE TEST 6: SUBTEST 2987 0440746 2988 044076 2989 044100 2990 044100 044100 04102 0464104 044106 2991 044110 2992 044114 2993 0646116 2994 2995 044116 2996 044122 2997 044126 2998 044132 2999 044136 3000 0464142 3001 044156 3002 044160 3003 044162 3004 044162 0466162 044166 044166 0464170 3005 044172 3006 044176 3007 0464176 3008 3009 044200 3010 044206 3011 044212 3012 044216 3013 044220 3014 044222 3015 044226 3016 044226 3017 044230 3018 044234 012 T23230 3020 0442446 3021 044250 3022 044254 3023 044260 3026 044276 3025 044276 3026 044300 3027 044300 0464300 044302 044304 0446306 3028 044310 3029 044314 TESTS S: MACRO M1113 FIFO VERIFY 25-MAY-82 09:19 INPUT READY 103407 010001 104455 001166 046625 012046 005237 002222 104406 012700 004737 000100 050026 010465 004737 000000 016336 012704 428: BLS 508 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T17SSR,PKTSSR 508: INC CKLOOP : 1008: 050350 104406 012737 032701 01702 005000 110021 005200 005302 003374 013700 012701 OUwrIT 012704 010465 0L4L737 000100 046504 000100 002310 1028: 1058: INC CKLOOP : 1108: 002310 066504 G3U05¢ 050350 000000 016336 103407 010001 104455 001170 047036 012046 005237 142%: 002222 #T17PK2.R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 102% 8(s 105$ MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T174SSR,PKTSSR 103407 002222 FATFLG 1508: SEQ 0198 :BR IF CARRY SET (GOOD RETURN) ;SAVE (ONTENTS OF TSSR JDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD * sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CS$ERDF 630 T17SSR PKTSSR cscLP Do a Write Subsystem WRITE NPR to set tape direction out mov #NP.OUT RO sSET TAPE DIRECTION OUT JSR PC, T17SNPR :SETUP T17PK2 FOR WRITE NPR MoV 010001 104455 001167 046773 012046 005237 PAGE 109-1 FATFLG ;GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET ;@8DFORCE ERROR [F FORCER=1 :BR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD cSET FATAL, ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSERDF 631 T174SSR PKTSSR cscLet Do a Write Subsystem WRITE FIFO 64. bgtes 1ncrement1ng pattern MOV #64. ,COUNT SWRITE 64 BYTES MOV #T°*7WFDATA R SEXPD WRITE FIFO DATA BUFFER MOV #64. ,R2 sTEST PATTERN SIZE CLR RO SINCREMENT TEST PATTERN MOove RO,(R1)+ sSTORE INCREMENT TEST BYTE INC RO sSET NEXT PATTERN DEC R2 ;DONE? 86T 1108 ;BR IF NO MoV COUNT RO sFIFO BYTE COUNT MOV #T17WFDATA R sFIFO WRITE DATA ADDRESS JSR PC,TI17WFIF JSETUP TI17PKZ FON wRilE firo Mov #T17PK2 R4 :GET WRITE SUBSYSTEM COMMAND PACKET MOV R4 ,TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR :HAII FOR SSR TO SET FORCERROR 1428 -8@DFORCE ERROR [F FORCER=1 BCS 1508 ;BR IF CARRY SET (GOOD RETURN) MOV RO.R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T175SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET INC (KLOOP FATFLG sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP .WORD .WORD .WORD (SERDE 632 T17SSSR PKTSSR TSVS = HARDWARE TESTS TEST 6: 3030 3031 SUBTEST S: 044314 3035 044316 3036 044322 3037 044326 3038 044332 3039 044336 3040 044352 3041 044354 3042 044356 3043 044356 MACRO M1113 FIFO VERIFY INPUT READY PAGE 109-2 E 16 SEQ 0199 104406 004737 012704 010465 004737 TRAP 047764 050350 000000 016336 : H : : 157¢%: 104455 002222 104406 004737 012701 012702 012221 011211 042711 052711 042711 005000 012701 012702 012703 004737 050146 046402 050242 160$: : 000020 000040 000200 050222 046362 000024 011500 1628 : 1708 : 104406 012700 012701 004737 000001 046504 050052 010465 004737 000000 016336 103407 PC,T17SRD #T17PK2 R4 R4, TSDB(RS) PC,CHKTSSR JSETUP PACKET FOR READ STATUS JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET 8(Cs MOV 160% RO.R1 :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ERRDF ERRNQO,T173SSR,PKTSSR 157¢ NEXT.ERRNO ;@8DFORCE ERROR [F FORCER=1 cDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD -WORD INC FATFLG sSET FATAL ERROR FLAG JSR MoV MOv MoV MoV BIC 8IS 8IC CLR MoV MoV MOV JSR PC,T17SETEXP #T17EXSTA,RY &T178FSTA,R2 (R2)+,(R1)+ (R2),(R1) #S2. INRDY, (R1) #52.0UTRDY, (R1) #S2.DIM,(R1) RO #T17BFR R #T17EXP ,R2 #20. ,R3 PC,CKMSG2 :SET WORDS 0-7 EXPD=RECV sGET EXPECTED READ STATUS sGET RECV READ STATUS JSET EXPD WORD #8 = RECV TEMP SSET EXPD WORD #9 = RECV TEMP ;SET EXP INPUT READY= 0 ;SET EXP OUTPUT READY= 1 JSET EXP DATA IN MISS = 0 sHIGH RECV ADDRESS FOR CKMSG? LOW RECV ADDRESS FOR CKMSG?2 JEXPD ADDRESS JNUMBER OF BYTES TO COMPARE ;EXPD EQUAL RECV? 8CS 1708 ;BR IF YES ERRHRD ERRNO,T173(MP MSGSTAT CKLOOP 050350 : CSERDF 633 T173SSR PKTSSR ;LOOP ON ERROR, IF FLAG SET TRAP CSCLP Set WORDS 0-7 of expd message buffer = to recv since not testing 1628 .NOTSSR NEXT.ERRNO seaD ;REPORT ERROR TRAP WORD 047323 012350 012704 JSR MOV MOV JSR CS$CLPT a Write Subsystem READ STATUS Input Ready NOT=0 Then Print Error Output Ready NOT=1 Then Print Error Data In Miss NOT=0 Then Print Error FORCERROR 103404 104456 001172 Do It If It FORCERROR 103407 010001 001171 046726 012046 005237 3C49 044404 3050 044410 3051 044412 3052 044414 3053 044420 3054 044424 3055 044430 3056 044432 3057 044436 3058 044442 3059 044446 3060 044452 3061 044462 3062 044464 3063 044464 044464 044466 044470 044472 3064 044474 044474 3065 3069 306 3068 044476 3069 044502 3070 044506 3071 044512 3072 044516 3073 044522 3074 044526 3075 044542 25-MAY-82 09:19 ckLoOP :LOOP ON ERROR, WORD .WORD IF FLAG SET TRAP CSERHRD 634 T173(mpP MSGSTAT cscLP Do a Write Subsystem WRITE FIFO 1 b;te for a total of 65. written MOV MOV JSR MOV MOV JSR #1,R0 #T17WFDATA R PC,TI7WFIF #Ti7PK2.R4 R4, TSDB(RS) PC,CHKTSSR FORCERROR 8CS 180 172% sFIFO BYTE COUNT sFIFO WRITE DATA ADDRESS sSETUP T17PK2 FOR WRITE FIFO ;GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET -@8DFORCE ERROR [f FORCER=1 ¢BR IF CARRY SET (GOOD RETURN) TSVS = HARDWARE TESTS TEST 6: SUBTEST S: 3076 044544 3077 044546 3078 044546 0445646 044550 044552 044556 3079 044556 3080 044562 3081 064562 3082 3083 3084 3085 3086 044564 3087 044570 3088 044574 3089 044600 3090 044604 3091 044620 3092 044622 3093 044624 3094 044624 064626 0464626 0464630 0464632 3095 044634 3096 044640 044640 3097 3098 044642 3099 044646 3100 044652 3101 044656 3102 044660 3103 044662 3104 044666 3105 044672 3106 044676 3107 044700 3108 044704 3109 044710 3110 044714 3111 044720 3112 044730 3113 044732 3116 064732 044732 044734 044736 044740 3115 044742 064742 3116 3117 044744 MACRO M1113 FIFO VERIFY 25-MAY-82 09:19 INPUT READY 010001 104455 001173 047036 012046 005237 002222 104406 004737 012704 010465 004737 047764 050350 000000 016336 005237 104406 004737 012701 012702 012221 011211 042711 052711 052711 005000 012701 012702 012703 004737 050146 046402 1808$: INC CKLOOP : : : : 190$: : 050242 (050222 0466362 000024 011500 103404 1928: 200$: 104406 013700 002310 : FATFLG ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSERDF 635 T175SSR PKTSSR cscLPt Do a Write Subsystem READ STATUS It Input Ready NOT=0 Then Print Error If Output Ready NOT=1 Then Print Error 1f Data In Miss NOT=1 Then Print Error JSR PC.T17SRD ;SETUP PACKET FOR READ STATUS MOV lTl?PKZ.R‘ GET WRITE SUBSYSTEM COMMAND PACKET MOV R4 ,TSDB(RS) ;SET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FIOR SSR TO SET FORCERROR 187% ;88DFORCE ERROR : FORCER=1 8(CS 190% :BR IF CARRY SET (GOOD RE .URN) MOV RO.R1 :SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T173SSR,PKTSSR JDEVICE FATAL SSR FAILED T SET TRAP CSERDF .WORD 636 .WORD T173SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG CKLOOP ;LOOP ON ERROR, IF FLAG SETY TRAP CSCLP Set WORDS 0-7 of expd message buffer - to recv since not testing JSR PC,T17SETEXP ;SET WORDS 0-7 EXPD=RcCV MOV #TI7EXSTA,R1 sGET EXPECTED READ STATUS MOV 000020 000040 000200 104456 001175 047323 012350 SEQ 0200 172%: 187$%: 002222 F 16 mov RO,R1 NEXT.ERRNO ERRDF ERRNO,T175SSR,PKTSSR 103407 010001 104455 001174 046726 012046 PAGE 109-3 #T17BFSTA.R2 MOV (R2)+,(R1)+ MOV (R2) ., (R1) 8IC #S2.INRDY, (R1) BIS #S2.0UTRDY, (R1) BIS #S2.DINM,(R1) CLR RO MOV #T178FR,R1 MOV #T17EXP,R2 MoV #20. ,R3 JSR PC.CKMSG2 FORCERROR 1928 ,NOTSSR B8CS 2008 NEXT.ERRNO ERRHRD ERRNO,T173CMP,MSGSTAT CkLOOP . Do Write Subsystem READ FIFO MoV COUNT RO :GET RECV READ STATUS sSET EXPD WORD #8 = RECV TEMP JSET EXPD WORD #9 = RECV TEMP ;SET EXP INPUT READY= 0 ;SET EXP OUTPUT READY= 1 ;SET EXP DATA IN M]SS = 1 sHIGH RECV ADDRESS FOR CKMSG2 ;LOW RECV ADDRESS FOR CKMSG?2 :EXPD ADDRESS ;NUMBER OF BYTES TO COMPARE EXPD EQUAL RECV? ;a8D :BR IF YES ;REPORT ERROR ;LOOP ON ERROR, TRAP MORD .WORD .UORD IF FLAG SET TRA? sSET READ BYTE COUNT CS$ZRHRD 637 T173CMP MSGSTAT ($CLP —— TSVS = HARDWARE TESTS TEST VS WIN=0O Y b i o b o b e b SUBTEST §: 8 044750 b N LN N AN N N N NN PINIPNININININ) = = 6: (W754 044760 044764 044770 045004 MACRC M1113 FIFO VERIFY 004737 012704 010465 004737 010001 2128: WWWWIN 005000 012702 012701 S WNW W 013703 004737 Oro0 wd b — b NOOO VN &H & OO b b e b ved b o wnd e b o 1V, LV LV, IV IV JV TV LN LV JV 1V IV IV [V 1V 1V ] VIS W =200 b b b and b b et b 002222 2208: 8CS 220 ;BR IF CARRY SET (GOOD RETURN) ERRDF ERRNO,T176SSR,PKTSSR 212% MOV RO,R1 NEXT.ERRNO INC CKLOOP MOV MOV MOV ;88DFORCE ERROR IF ;SAVE CONTENTS OF FATFLG FORCER=1 TSSR JDEVICE FATAL SSR FAILED TO SET TRAP ;SET FATAL ERROR FLAG JLOOP ON ERROR, JSR 002310 #TT17WFDATA R2 #T17BFSTA R1 COUNT R3 PC.,CKMSG?2 FORCERROR 2328: CSERDF IF 638 T176SSR PKTSSR .WORD FLAG SET 240 2328 .NOTSSR NEXT.ERRNO MOV COUNT . R1 ERRHRD ERRNO,T175CMP,FIFEXP :GET RECEIVED ADDRESS FOR CKMSG?2 ;NUMBER OF BYTES TO COMPARE JEXPD EQUAL RECV? saaD :BR IF YES ;GET BYTE COUNT JREPORT ERROR .WORD WORD : 2408 CkLOOP ;LOOP ON ERROR, .WORD IF FLAG SET TRAP 047764 050350 000000 016336 252%: 104455 104406 050146 260%: CSERMHRD 639 T175CMP FIFEXP cscLm Do a Write Subsystem READ STATUS If Input Ready NOT=1 Then Print Error It Output Ready NOT=0 Then Print Error If Data In Miss NOT=1 Then Print Error JSR PC.T17SRD cSETUP PACKET FOR READ STATUS MOV #T17PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO TXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 252% ;@8DFORCE ERROR IF FORCER=1 BCS 260 sBR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T173SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET TRAP 002222 csaLP sGET EXPECTED ADDRESS FOR (KMSGZ2 TRAP 103407 010001 004737 JSETUP T17PK2 FOR READ FIFO JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET 8CS 104406 001200 046726 012046 005237 PC,T17RFIF #T17PK2 R4 R4, TSDB(RS) PC,CHKTSSR If Data read from FIFO NOT= to Data sent Then Print Error CLR RO JHIGH RECV ADDRESS FOR CKMSG?2 046504 050242 002310 011500 104456 001177 047472 012170 004737 012704 010465 004737 JSR MoV MOV JSR TRAP 103406 013701 SEQ 0201 .WORD .WORD 104406 —d b cd el b nd b ) kb oD d WWWWWIWWWWWWIW. b b NN W 005237 G 16 PAGE 109-4 FORCERROR 103407 001176 047102 012046 3141 045076 045076 WVIVAWVIVAWVIWA S & READY 05010¢ 050350 000000 016336 104455 NN NN NN NN INPU1 25-MAY-82 09:19 INC (KLOOP FATFLG sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF .WORD .WORD .WORD FLAG SET TRAP Set WORDS 0-7 of expd message buffer = to recy since not testing JSR PC,T17SETEXP ;SET WORDS 0~7 EXPD=RECV CSERDF 640 T173SSR PKTSSR cscLPt NN N WA A SUBTEST WVSWN—=O SINIINC R ORRRRROD NN N N N NN N NN W 6: : MACRO M1113 FIFO VERIFY [=] =lelololelelelele] = SOV N bbb NN PN = NN ~N -~ O NNNNNI IV [o]=] Qubdad bt VOO "N — O b b d i b ) b TEST N TSVS = HARDWARE TESTS 012703 004737 25-MAY-82 09:19 INPUT READY 046402 050242 045254 3176 045256 045256 3177 3178 045260 045260 045260 3179 3180 045262 3181 045266 3182 045270 3183 045274 3184 3185 3186 8(s 2808 ‘BR IF YES ERRHRD ERRNO,T174CMP MSGSTAT #T17BFSTA R2 (R2)+,(R1)+ (R2),(R1) #52.INRDY, (R1) #52.0UTRDY, (R1) #S52.DIM, (R1) RO FORCERROR 272$%: 104456 JSR #T17BFR,R1 #T17EXP,R2 #20. ,R3 PC,CKMSG2 MOV MOV MOV 103404 5246 #TI17EXSTA R sGET EXPECTED READ STATUS cGET RECV READ STATUS ;SET EXPD WORD #8 = RECV TEMP sSET EXPD WORD #9 = RECV TEMP sSET EXP INPUT RzADY= 1 sSET EXP OUTPUT READY= 0 sSET EXP DATA IN MISS = 1 sHIGH RECV ADDRESS FOR (KMSG2 cLOW RECV ADDRESS FOR CKMSG2 cEXPD ADDRESS ¢cNUMBER OF BYTES TO COMPARE :§§SD EQUAL RECV? MOov MoV MOV BIS 8IC 8IS CLR 050222 046362 000024 011500 H1 SEQ 0202 Mov 000020 000040 000200 PAGE 109-5 2728 ,NOTSSR NEXT.ERRNO cREPORT ERROR TRAP 001201 047407 012350 280$: 104406 ckLoopP ;LOOP ON ERROR, ENDSUB 002222 017202 TST BEQ 300s: JSR IF /17177777777 END SUBTEST L10063: 104403 005737 001402 004737 .WORD .WORD LWORD FLAG SET TRAP FATFLG sANY FATAL PC,CKDROP :TRY TO DROP THE UNIT 3008 ERRORS ;BRANCH IF NOT ? CSERHRD 641 T174(MP MSGSTAT CSCLPT //1/111717 TRAP CS$ESULB TSVS = HARDWARE TESTS TEST 6: SUBTEST 6: MACRO M1113 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TESY .SBTTL SYRARENLS Nooe TEST SEQ 0203 6: SUBTEST 6: FIFO Verify Reset FIFO Test T4 OO0 P TEST 6: SUBTEST 6: * SUBTEST DESCRIPTION: VO ®9 Ve B Ve 0000 00 000 950000009009 0% 0080090000005 %006009;969%¢ 9, b b o b b o e b o - W 3188 PAGE 110 3199 This subtest verifies that the Reset FIFO function within the Write Miscellaneous Control 1 function initializes the FIFO to correct intial status. The following steps are performed: L. 1. Reset an already initialized FIFO and check for proper status. FIFO and verity that after each block of bytes is written the FIFO can be be reset to it's initial state. TEST STEPS: EGIN Write to TSSR to soft initialize Do a WRITE CHARACTERISTICS to setup a message puiier Do a Write Subsystem Write Misc to Reset FIFO Do a Write Subsystem READ STATUS . If all Tape Status 2 (ICER,IFMK,IHER) flip~flop signals NOT=0 Then Print Error Do a Write Subsystem WRITE NPR to set tape direction out REPEAT FOR BYTE COUNT 1 BEGIN Do Do Do It END TO 65. a Write Subsystem WRITE FIFC with the current byte count a Write Subsystem Write Misc to Reset FIFO a Write Subsystem READ STATUS all Tape Status 2 (ICER,IFMK, IHER. signals NOT=0 Then Print Error BGNSUB T Write to TSSR register 015774 104455 to soft TRAP JSR PC,SOFINIT sWRITE TO TSSR TO SOFT INITIALIZE MOV ERRDF RO,R1 ERRNO,SFIERR,SFIMSG sSAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT 8(s 108 sBR JF SOFT INIT OKAY .WORD .WORD 002222 050200 010662 ($BSUB initialize the controller TRAP .WORD 012034 005037 012704 004737 flip-flop 11117111177 BE?IN SUBTEST 7771771117 104402 004737 103405 010001 . 2. Write a varying number of bytes (1-65.) into the CSERDF 641 SFIERR SFIMSG Do a WRITE CHARACTERISTICS to setup a message buffer CLR FATFLG JCLEAR FATAL ERROR FLAG MOV #T17PACKET R4 :GET THE ADDRESS OfF COMMAND PACKEY JSR PCL _WRTCHR FORCERROR 423 ;D0 WRITE CHARACTERISTICS COMMAND ;Q3DFORCE ERROR IF FORCER=1 TSVS = HARDWARE TESTS TEST 6: SUBTEST 6: 3239 045346 3240 045350 3261 045352 3242 045352 045352 (45354 045356 045360 3243 045362 3244 045366 045366 3245 3246 045370 3c47 045376 3248 045400 3249 045404 3250 045410 3251 045424 3252 045426 3253 045430 3254 045430 045430 045432 045434 045436 3255 045440 3256 045444 045444 MACRO M1113 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TEST 103407 010001 002222 S0s: ngNNdd-‘dg S ONOMNO SO NNINO S NO :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF INC CKLOOP .WORD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET FATFLG S TRAP Do a Write Subsystem Write Misc to Reset FIFO 050004 050350 000000 016336 628: 104455 002222 708: 104406 104406 004737 012701 BCS 708 sBR IF CARRY SET (GOCD RETURN) MoV RO,R1 NEXT.ERRNO ERRDF ERRNO,T172SSR,PKTSSR JGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET -@3DFORCE ERROR I[F FORCER=1 :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF 005000 INC CKLOOP FATFLG .WORD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET 643 T172¢SSR PKTSSR CSCLP Do a Write Subsystem READ STATUS ) It all Tape Status 2 (ICER,IFMK, IHER) flip~-flop signals NOT=0 Then Print Error JSR PC,T17SRD sSETUP PACKET FOR REAU STATUS MOV #T17PK2 R4 :GET WRITE SUBSYSTEM COMMAND PACKET MOV R4 ,TSDB(RS) ¢SET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 77% .@8DFORCE ERROR IF FORCER=1 8CS 80$ sBR IF CARRY SET (GOOD RETURN) MOV RO,R1 :SAVE CONTENTS OF TSSR 047764 050350 000000 016336 77%: NEXT.ERRNO tRRDF ERRNO, T173SSR,PKTSSR cDEVICE FATAL SSR FAILED TO SETV TRAP LWORD 002222 80$: 050146 046402 050242 002000 001000 000400 000002 (SCLPI cSETUP PKT FOR WRITE MISC RESET FIFO TRAP 104455 001204 046726 012046 005237 PKTSSR PC,T17RSFIF LWORD .WORD 005237 642 TI17SSR JSR MoV #T17PK2 R4 MOV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 62% 103407 010001 VIV WAWMWAWVIAWVMIVWMIAWVAWNWD VWAV AWVMTA VA AVWVIAWVLWA O AN NEXT.ERRNO ERRDF ERRNO,T17SSR,PKTSSR . 103407 010001 004737 012704 010465 004737 3269 045506 :BR IF CARRY SET (GOOD RETURN) Ry, « LWORD .WORD 104406 004737 012704 010465 004737 S.é MOV 428: J 16 SEQ 0204 BCS 104455 001202 046625 012046 005237 PA'¢ 110-1 T173SSR PKTSSR INC CKLOOP FATFLG sSET FATAL ERROR FLAG cL00P ON ERROR, IF FLAG SET JSR PC,T17SETEXP sSET WORDS 0-7 EXPD=RECV (NOT TESTING) MOV MOV 000002 .WORD .WORD (SERDF 644 MOV BIC 8IC 8IC MOV CLR #TI17EXSTA,RT #T17BFSTA R2 (R2), (R1) #51.1CER,(R1) #S1.1FMK, (R1) #51, IHER, (R1) 2(R2) ,2(R1) RO TRAP (SCLP cGET EXPECTED READ STATUS sGET RECV READ STATUS :SET EXPD WORD #8 = RECV TEMP sSET EXPD ICER =0 sSEV EXPD IFMK =0 sSET EXPD IMER =0 cSET EXPD WORD #9 = RELV (NOT TESTING) sHIGH RECV ADDRESS FOR CKMSG? TSVS ~ HARDWARE TESTS TEST 6: SUBTEST 6: 3281 045566 3282 045572 3283 0645576 3284 045602 3285 045606 3286 045616 3287 045620 3288 045620 045620 065622 045624 045626 3289 045630 045630 3291 3292 045632 3293 045636 3294 045642 3295 045646 3296 045652 3297 045656 3298 045672 3299 045674 3300 045676 3301 045676 045704 3302 045706 3303 045712 045712 3304 3305 3306 045714 3307 045720 3308 045724 3309 045726 3310 045730 3311 045732 3312 045734 3313 3314 3315 045736 3316 3317 045744 3318 045744 3319 045750 3320 045754 3321 045760 3322 045764 3323 045770 3324 045774 3325 046010 3326 046012 3327 046014 MACRO M1113 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TEST 012701 012702 012703 004737 050222 066362 000024 011500 MoV MOV Mov JSR 92%: 104456 001205 047654 012350 100$: 928 ,NOTSSR 8(s 100 ERRHRD ERRNO,T177CMP,MSGSTAT NEXT.ERRNO SEXPD EQUAL RECV? ;83D :BR IF YES ;REPORT ERROR TRAP CkLOOP ;LOOP ON ERROR, .WORD IF FLAG SET JSET TAPE DIRECTION OUT MOV MOV JSR #T17PKZ . ne R4 ,TSDB(RS) PC,CHKTSSR JGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET 8CS 120 :BR JF CARRY SET (GOOD RETURN) ERRDF ERRNO,T174SSR,PKTSSR PC_T17SNP8 FORCERROR 002222 1208: 104406 012737 000001 013700 012701 004737 012704 010465 004737 002310 046402 050052 050350 000000 016336 CSCLP NP .OUT RO JSETUP T17PK2 FOR WRITE NPR 1128 MOV RO,R1 NEXT.ERRNO ;88DFORCE ERROR IF ;SAVE CONTENTS Of FORCER=1 TSSR JDEVICE FATAL SSR FAILED TO SET TRAP WORD CSERDF 646 -WORD PKTSSR WORD 046402 000100 MSGSTAT MOV JSR 112$: 012701 012702 005000 110021 005200 005302 003374 CzERHRD 645 TI177CMP Do a W ite Subsystem WRITE NPR to set tape direction out 000100 050026 050350 000000 016336 104455 103407 010001 PC,CKMSG2 TRAP 103407 010001 001206 046773 012046 005237 sLOW RECV ADDRESS FOR (KMSG2 <EXPD ADDRESS ¢cNUMBER OF BYTES TO COMPARE LWORD .WORD 104406 012700 004737 012704 010465 004737 SEQ 0205 #T178FR,R1 #T17EXP,R2 #20. ,R3 FORCERROR 103404 K 16 PAGE 110-2 INC CKLOOP FATFLG ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP T174SSR cscLP Setup incrementing pattern in FIFO data buffer 1308: MOV MOV CLR Move INC DEC 8GT 002310 : #TI17EXSTA,RT #64. .R2 RO RO, (R1)+ RO R 1508: sSTORE INCREMENT TEST BYTE sSET _NEXT PATTERN sDONE? 1308 REPEAT FOR BYTE COUNT 1 sEXPD WRITE FIFO DATA BUFFER cTEST PATTERN SIZE s INCREMENT TEST PATTERN :BR IF NO TO 6S. MOV #1,COUNT sGET FIRST BYTE COUNT Do a Write Subsystem WRITE FIFO with the current byte count MOV Mov JSR COUNT RO #T17EXSTA R PC,T17WF IF MOV #T17PK2 R4 Mov R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 1528 8(S 160 MOV RO.R1 NEXT.ERRNO sREPEAT LOOP LABEL <FIFO BYTE COUNT sFIFO WRITE DATA ADDRESS sSETUP T17PK2 FOR WRITE FIFO SGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET ;938DFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR — TSVS « HARDWARE TESTS TEST | 6: SUBTEST 6: 3328 046014 0466014 046022 3329 046024 3330 046030 046030 3331 3332 3333 046032 3334 046036 3335 046042 3336 046046 3337 046052 3338 046066 3339 046070 3340 046072 3341 046072 046072 046074 046076 046100 3342 046102 3343 046106 ‘ 046106 MACRO M1113 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TEST 104455 001207 047036 012046 005237 152$: 002222 160$: 162$: 002222 : 1708 104406 3345 3346 3347 3348 046110 3349 046114 3350 046120 3351 046124 3352 046130 3353 046144 3354 046146 3355 046150 3356 046150 046150 046152 046154 046156 3357 046160 3358 046164 046164 3359 046166 3360 046172 3361 046176 3362 046202 3363 046204 2364 046210 3365 046214 3366 046220 3367 046226 3368 046230 3369 046234 ERRDF INC CxLOOP ERRNO, T175SSR,PKTSSR FATFLG 047764 050350 000000 016336 012701 012702 011211 0642711 062711 062711 016261 177%: s SAVE CONTENTS OF INC ckLooP 1708 FATFLG 012702 sBR IF CARRY SET (GOOD RETURN) TSSR cDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD .WORD 648 T172SSR TRAP CSCLP .WORD sSET FATAL ERROR FLAG LOOP ON ERROR, IF FLAG SET MOV #T17PK2 R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 177% cGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET - @3DFORCE ERROR IF FORCER=1 MoV RO,R1 NEXT.ERRNO ERRDF ERRNO,T173SSR, PXTSSR :SAVE CONTENTS OF 1808 sBR IF CARRY SET (GOOD RETURN) TSSR sDEVICE FATAL SSR FAILED TO SET LWORD LWORD 002222 1808$: 050146 046402 050242 050222 046362 PKTSSR ) TRAP 002000 001000 000400 000002 cscLP MOV RO.R1 NEXT.ERRNO ERRDF ERRNO,T172SSR,PKTSSR 8(Cs 104455 001211 104406 004737 PKTSSR It all Tape Status 2 (ICER,IFMK,IHER) flip~tlop signals NOT=0 Then Print Error JSR PC.T17SRD sSETUP PACKET FOR READ STATUS 103407 010001 046726 012046 005237 .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP 647 7175SSR sSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET .88DFORCE ERROR [F FORCER=1 Do a Write Subsystem READ STATUS 004737 012704 010465 004737 sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 162 8(CS 104455 005237 SEQ 0206 Do a Write Subsystem Write Misc to Reset FIFO JSR PC,T17RSFIF sSETUP PKT FOR WRITE MISC RESET FIFO MOV #T17PK2 R4 SGET WRITE SUBSYSTEM COMMAND PACKET 050004 050350 000000 016336 103407 010001 001210 046662 012046 L 16 LWORD .WORD 104406 004737 012704 010465 004737 PAGE 110-3 000002 .WORD CSERDF 649 T173SSR PKTSSR INC CkLOOP FATFLG sSET FATAL ERROR FLAG cLOOP ON ERROR, IF FLAG SET JSR MOV MOV MOV 8IC 8IC BIC MOV CLR MOV MOV PC,T17SETEXP #T17EXSTA,RY #T17BFSTA,R2 (R2), (R1) #S1.1CER, (R1) #S1.1FMK, (R1) #S1. IHER, (R1) 2(R2) ,2(R1) RO #T178FR,R1 #T17EXP,R2 ;SET WORDS 0-7 EXPD=RECV (NOT TESTING) sGET EXPECTED READ STATUS sGET RECV READ STATUS SSET EXPD WORD #8 = RECV TEMP sSET EXPD ICER =0 sSET EXPD IFMK =0 SSET EXPD IMER =0 sSET EXPD WORD #9 = RECV (NOT TESTING) cHIGH RECV ADDRESS FOR CKMSG2 cLOW RECV ADDRESS FOR (KMSG2 <EXPD ADDRESS TRAP CSCLPY iSVS = + .RDWARE TESTS TEST 6: SUBTEST 6: 3370 046240 3371 046244 3372 046250 3373 046260 3374 046262 3375 066262 066262 0646264 0466266 046270 3376 V46272 046272 3377 3378 3379 046274 3380 046274 3381 0463046 3382 046310 3383 046316 3384 046320 gggz 046324 012703 004737 1928: 104456 001212 047654 012350 2008: 104406 2508 : 005237 023727 101002 000137 3389 046326 3290 046332 3391 046334 005737 001402 004737 3397 046352 046352 3398 046354 000024 011500 103404 104403 046340 046344 046346 046352 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TEST 3387 046324 046324 3388 046324 3392 3393 3394 g;gg MACRO M1113 002310 002310 045744 000101 260%: PAGE 110~4 8 SEQ 0207 MoV #20.,R3 JSR PC,CKMSG2 FORCERROR 1928 ,NOTSSR BCS 2008 NEXT.ERRNO ERRHRD ERRNO,T177CMP,MSGSTAT sNUMBER OF BYTES TO COMPARE +EXPD EQUAL FECV? ;a0 sBR IF YES CkLOOP sLOOP ON ERROR, IF FLAG SET TRAP FORCEXIT 2608 INC COUNT CMP COUNT , #65. BHI 2603 JMP 1508 ENDSUB 004737 103002 000137 104432 002112 002222 017202 016456 040404 3008: 305$: ;REPORT ERROR TRAP .WORD .WORD WORD CSERHRD 650 T177(MP MSGSTAT CS$CLPT sGET NEXT BYTE COUNT cDONE ALL BYTES? ;BR IF YES ;D0 ANOTHER BYTE COUNT /11177777777 END SUBTEST /7717117177117 L10064: TRAP CSESUB TST BEQ JSR JSR BCC JMP FATFLG 3008 PC,CKDROP PC,TSTLOOP 305$ T17L00P ;00 ITERATIONS? ;BR IF NO sLOOP UNTIL ITERATIONS DONE EXIT TST /111177777 EXIY YESY /7171117717 TRAP CSEXIT WORD L10056-. sANY FATAL ERRORS ? ;BRANCH IF NOT sTRY TO DROP THE UNIT - - TSVS - HARDWARE TESTS l TEST —— MACRO M1113 e 25-MAY=-82 09:19 6: SUBTEST 6: FIFO VERIFY RESET FIFO TEST 3401 3282 3413 046362 3414 046362 3415 046364 3416 045366 3417 046370 3418 046372 3419 046374 3420 046376 3421 046400 3422 046402 gzgz 046504 SEQ 0208 i+ sLOCAL STORAGE FOR THIS TEST 3405 3406 046356 3407 3408 046356 3409 046357 3410 046360 gz}g 046361 PAGE 111 T17MSK : 377 037 360 000 .BYTE BYTE .BYTE .BYTE T17EXP: 000000 000000 000000 000000 000000 000000 000000 00000 WORD MWORD .WORD .WORD WORD LWORD LWORD MWORD T17EXSTA: .BLKB T17EXEND: ~(<000> ~(<340> “(<017> O 0 O O O O 0 O N 66. gz%g 046504 T17WFDATA: 3427 3428 3429 3430 3431 046606 3432 046625 3433 046662 3434 046726 3435 046773 3436 047036 3437 047102 3438 047145 3439 0467227 3440 047323 3441 0647407 3442 047472 3443 047546 gzzg 047654 o+ cLOCAL TEXT MESSAGES FOR TEST := 106 127 127 127 127 127 127 106 122 106 106 122 106 106 3446 3447 111 122 122 122 122 122 122 111 145 m 111 145 111 m 106 111 111 111 111 111 111 106 141 106 106 141 106 106 .BLKB 66. TST171D: T17SSR: .ASCIZ T172SSR:.ASCIZ T173SSR:.ASCIZ T174SSR:.ASCIZ T175SSR:.ASCIZ T176SSR:.ASCIZ T171CMP:.ASCIZ T172CMP:.ASCIZ T173CMP:.ASCIZ T174CMP: . ASCIZ T175CMP:.ASCIZ T176CMP: ASCIZ Tl??CHP:.gsgéZ sBEGIN EXPECTED DATA BUFFER sMESSAGE TYPE ;DATA FIELD LENGTH ;RBPCR JXSTO JXST JXST2 JXST3 sXST4 (ALWAYS PRESENT FOR WRITE SuB.) JEXPECTED READ STATUS AND WRITE FIFO DATA cEND EXPECTED DATA BUFFER sWRITE FIFO EXPECTED DATA BUFFER ) LASCIZ °‘'FIFO Exerciser’' ‘WRITE CHARACTERISTICS Failed' °'WRITE SUBSYSTEM (Write Misc) Failed’ ‘'WRITE SUBSYSTEM (Read Status) Failed' °'WRITE SUBSYSTEM (Write Npr) Failed' °'WRITE SUBSYSTEM (Write FIFO) Failed’ °WRITE SUBSYSTEM (Read FIFO) Failed® L. 'FIFO Status in WORD #9 Incorrect after Initialize® 'Read FIFO Data not equal to Write FIFO , Data is in WORD #8° 'FIFO Status (In WORD #9) Incorrect after WRITE FIFO' °FIFO Status (In WORD #9) Incorrect after READ FIFO' 'Read FIFO Data not equal to Write FIFO Data’ 'FIFO Status (In WORD #9) Incorrect after READ FIFO from an Empty FIFQ® 'FIFO Status (In WORD #9) Incorrect after RESET FIFQ' gzzg ¢ s CLEAR MESSAGE BUFFER 3450 047740 3451 047740 3452 047744 3453 047750 3454 047754 3455 047756 3456 047760 3457 0647762 T17CLRBUF : SAVREG MOV MOV 108: CLRB DEC BGT RTS 012701 012702 105021 005302 003375 000207 sMASK OF UNTESTED BITS IN READ STATUS BYTES JUNTESTED BITS ARE SET TO 1 ;BYTE 0 MASK JBYTE 1 MASK (PARERR,IRESVZ,IRESV1) JBYTE 2 (TIMER A,TIMER B,UNDEFINED<1:0>) ;MAKE IT EVEN #T178FR,R1 #T17BEND-T17BFR,R2 (R1)+ R2 108 PC : sSAVE R1-RS UNTIL NEXT RETURN :GET MESSAGE BUFFER ADDRESS :SIZE OF MESSAGE BUFFER IN BYTES sCLEAR A BYTE sDONE? ;B8R IF NO sRETURN — TSVS = HARDWARE TESTS TEST 6: SUBTEST 6: 3458 3459 3460 3461 3462 047764 3463 047764 3464 0647770 3465 047774 3466 050000 3467 050002 3468 3469 3470 34 3472 050004 3473 050004 3474 050010 3475 050014 3476 050020 347; 050024 PACRO M1113 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TEST PAGE 111-1 0 SEQ 0209 I 4 : SETUP T17PK2 PACKET FOR READ STATUS 004737 012700 112720 105010 047740 050360 000005 T17SRD: JSR MOV PC,T17CLRBUF #T17DT2,R0 RTS PC MOovB CLRB 000207 #PW . RDSTATUS, (RO) + (RO) sCLEAR MESSAGE BUFFER sWRITE SUBSYSTEM DATA BUFFER sSTORE READ STATUS COMMAND IN BSELO sCLEAR BSEL1 ¢RETURN i+ : SETUP T17PKZ PACKET FOR WRITE MISC RESET FIFO 004737 012700 112720 112710 000207 047740 050360 000010 000030 §;7RSFIF: JSR MOV MOv8 MOvVB RTS PC,T17CLRBUF #T17DT2 RO #PW.WMISC, (RO) + sCLEAR MESSAGE BUFFER sWRITE SUBSYSTEM DATA BUFFER sSTORE WRITE MISCELLANEOUS IN BSELO PC *RETURN W#MS.RSFIF!MS.RSTAP, (RO) ;STORE BSEL1 CLEAR FIFO CODES ;+ : SETUP T17PK2 PACKET FOR WRITE NPR * INPUT: 86 3487 050026 3492 050046 3493 050050 3494 3495 3496 3497 3498 3499 3500 3501 3502 050052 3503 050052 3504 050056 3505 050062 004737 012701 112721 052700 110011 000207 047740 050360 000011 000020 ; RO CONTAINS BSEL1 NPR DATA : SETS NP.WRP SINCE IF O IT WRITES WRONG PARITY. T17SNPR: JSR MOV MOVB BIS MOVB RTS PC.T17CLRBUF #Ti70T2.R1 ;CLEAR MESSAGE BUFFER *WRITE SUBSYSTEM DATA BUFFER #NP.WRP,RO RO, (R1) ‘DON'T WRITE WRONG PARITY *STORE NPR DATA IN BSEL1 #PW.WNPR, (R1)+ PC :STORE WRITE NPR IN BSELO *RETURN "0 ¢ SETUP T17PK2 PACKET FOR WRITE FIFO : INPUT: ; : T17WFIF: 004737 012702 112722 110022 005022 112122 005300 003375 000207 047740 050360 000004 RO CONTAINS BYTE COUNT R1 CONTAINS DATA PATTERN BLOCK ADDRESS SAVREG JSR MOV MOVB MOVB 108: CLR MOVB DEC BGT RTS PC.T17CLRBUF #Ti7p72.R2 #PW.WFIFO, (R2)+ RO, (R2)+ (R2)+ (R1)+,(R2)+ RO 108 PC :SAVE R1-RS UNTIL NEXT RETURN SCLEAR MESSAGE BUFFER ‘WRITE SUBSYSTEM DATA BUFFER *STORE WRITE FIFO IN BSELO *STORE BYTE COUNT IN BSEL1 :CLEAR SEL2 (UNUSED) *STORE DATA PATTERN BYTE *DONE ALL BYTES? *BR IF NO *RETURN [ TSVS = HARDWARE TESTS TEST 6: SUBTEST 6: MACRO M1113 25-MAY=82 09:19 FIFO VERIFY RESET FIFO TEST PAGE 111=2 E SEQ 0210 gg;z ; SETUP T17PK2 PACKET FOR READ FIFO 3517 : INPUT: gg}g 3520 050106 3521 050106 3522 050112 3523 050116 3524 050122 gggg 050124 : 004737 012701 112721 110021 000207 047740 050260 000003 3529 050126 012701 012700 105021 005300 003375 000207 046362 000122 T17CLEXP: 108: MOV MOV CLRB DEC BGT RTS #T17EXP,R1 #T17EXEND=T17EXP,RO (R1)+ RO 108 PC :GET EXPD ADDRESS sGET EXPD SIZE :CLEAR A BYTE :DONE? :BR IF NO *RETURN ;Set WORDS 0-7 of expd message buffer = to recv since not testing 012702 012703 012700 012322 005300 003375 000207 %ggg 050200 gggz 046362 050222 000010 T17SETEXP: 5% : MoV MoV MOV MOV DEC BGT RTS #T17EXP,R2 #T178FR.R3 #8. RO (R3)+, (R2)+ RO 5 PC :GET EXPD ;GET READ STATUS RECV BUFFER ;SET WORDS 0-7 EXP=RECV :SET EXPD=RCCV ;DONE WORDS 0=-7 WORDS? :BR IF NO :RETURN .=<.+10>8177770 ‘WRITE CHARACTERISTICS COMMAND PACKET 3556 050200 3557 050202 3558 050204 gggg 050206 100004 050210 000000 000012 3561 050210 3562 050210 3563 050212 3564 050214 3565 050216 %ggg 050220 050222 000000 000024 000000 000000 3568 %293 3571 050222 3572 050222 3573 050224 ;CLEAR MESSAGE BUFFER JWRITE SUBSYSTEM DATA BUFFER :STORE READ FIFO IN BSELO ;STORE BYTE COUNT IN BSEL1 sRETURN o+ 3541 050146 3542 050152 3543 050156 3544 050162 3545 050164 3546 050166 ggzg 050170 3555 050200 PC,T17CLRBUF #T17D72.R1 #PW.RFIFO, (R1)+ RO, (R1)+ PC ; CLEAR EXPECTED DATA MESSAGE BUFFER %%89 3540 050146 JSR MoV MOVB MOVB RTS :# ggsg 3530 050126 3531 050132 3532 050136 3533 050140 3534 050142 3535 050144 3536 3537 T17RFIF: RO CONTAINS SEL2 BYTE COUNT T17PACKET: T17DATA: .WORD WORD WORD .WORD 100004 TI17DATA O 10. .WORD MWORD .WORD L.WORD WORD TI17BFR O 20. 0 O :COMMAND PACKET FOR TEST ;WRITE CHARACTERISTICS COMMAND, WITH ACK ;ADDRESS OF CHARACTERISTICS BLOCK ;MINIMUM MESSAGE PACKET SIZE ;CHARACTERISTICS DATA BLOCK ;ADDRESS OF MESSAGE BUFFER ;LENGTH OF MESSAGE BUFFER ;ESS,ENB,EA ERI ] ;EXTENDED FEATURES UNIT NO. El.. JMESSAGE BUFFER FOR ALL TEST 6 COMMANDS 000000 000000 T17BFR: WORD .WORD O O :BEGIN MESSAGE BUFFER ;MESSAGE TYPE ;DATA FIELD LENGTH — TSVS = HARDWARE TESTS TEST 6: SUBTEST 6: 3574 050226 3575 050230 3576 050232 3577 050234 3578 050236 3579 050240 3580 050242 %ggg 050342 3594 050360 3595 050360 3596 050361 3597 050362 gggg 050364 3600 050466 050466 050466 3601 25-MAY-82 09:19 FIFO VERIFY RESET FIFO TEST 000000 000000 000000 000000 000000 000000 %2%2 3586 3588 050350 3589 050350 3590 050352 3591 050354 gggg 050356 MACRO M1113 PAGE 111-3 F WORD O WORD 0 WORD 0 WORD 0 WORD O MWORD O T17BFSTA: .BLKB 64. T17BEND: SEQ 0211 :RBPCR JXSTO IXST1 IXST2 JXST3 :XST4 (ALWAYS PRESENT FOR WRITE SUBSYSTEM :READ STATUS AND WRITE FIFO BUFFER ;END OF MESSAGE BUFFER WRITE SUBSYSTEM READ STATUS COMMAND PACKET 050350 100006 050360 000000 000012 000 000 000000 T17Pr2: T17D0T2: .=<, +10>8177770 .WORD .WORD WORD .WORD P,.WRTSUB'P.ACK T17DT?2 O 10. .BYTE .BYTE WORD .BLKB 0 0 O 66. ENDTST 104401 JWRITE SUBSYSTEM WITH ACK ;LOW ADDRESS OF DATA BLOCK :HIGH ADDRESS OF DATA BLOCK sMINIMUM MESSAGE PACKET SIZE :DATA BLOCK ;BSELO ;BSELT ;SEL2 ;WRITE FIFO DATA OUTPUT BUFFER L10056: TRAP CSETST TSVS -~ HARDWARE TESTS TEST «: STATIC MACRO M1113 TRANSPORT BUS 25-MAY-82 09:19 INTERFACE 1EST %ggz 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 050470 050470 3628 050470 3629 050474 3630 050500 3631 050506 3632 . 3633 050506 3634 050506 3635 050512 3636 050514 3637 050516 050516 050520 050522 3638 050524 3639 3640 050526 3641 050532 3642 050536 3643 050542 3644 050556 3645 050560 3646 050562 3647 050562 050562 050564 050566 050570 3648 050572 3649 050576 3650 050576 3651 3652 365, 050600 PAGE 112 SEQ 0212 .SBTTL TEST 7: STATIC TRANSPORT BUS INTERFACE TEST .t : TEST DESCRIPTION: ; : : TEST STEPS: : : REPEAT FOR LOOPCNT : BEGIN ) . : Write to TSSR register to soft initialize the controller : Do WRITE CHARACTERISTICS to check for Extended Features Switch : It Extended Features Hardware Switch Clear then: : Do Write Subs¥stem Write Miscellaneous to Set Extended Features. : Do WRITE CHARACTERISTICS to select reserved unit 7 : Do a Write Subsystem READ STATUS : If any transport interface signals are asserted then Print Error : END Ha BGNTST 012700 004737 012737 051176 016510 000012 004737 103405 010001 015774 104455 001274 003652 012034 005037 012704 004737 002222 051660 010662 002216 T7:: #TST18ID,R0 sASCI1 MESSAGE TO IDENTIFY TEST PC,TSTSETUP ;DO INITIAL TEST SETUP #10.,LOOPCNT sPERFORM 10 ITERATIONS T18LOOP: ] L : Write to TSSR register to soft initialize the controller 58: JSR PC,SOF INIT SWRITE TO TSSR TO SOFT INITIALIZE BCS 108 sBR IF SOFT INIT OKAY MOV RO,R1 sSAVE CONTENTS OF TSSR ERRDF ERRNO,SFIE SFRR, IMSG sDEVICE FATAL DURING INIT TRAP CSERDF .WORD 700 .WORD SFIERR .WORD SFIMSG MoV JSR Mov : 108: 103407 010001 104455 001275 051235 012046 005237 128: 002222 104406 158: : 012701 051702 : Do WRITE CHARACTERISTICS to check for Extended Features Switch CLR FATFLG sCLEAR FATAL ERROR FLAG MOV #T18PACKET R4 ;GET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR ;D0 WRITE CHARACTERISTICS COMMAND FORCERROR 12% ;380FORCE ERROR IF FORCER=1 BCS 15% :BR IF CARRY SET (GOOD RETURN) MoV RO,R1 sSAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T18SSR,PKTSSR ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 701 .WORD T18SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG (kLOooOP :LOOP ON ERROR, IF FLAG SET TRAP cscLP It Extended Features Hardware Switch Clear then: Do Write Subsystem Write Miscellaneous to Set Extended Features. MoV #T18BFR,R1 sMESSAGE BUFFER ADDRESS TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 7: STATIC TRANSPORT BUS INTERFACE TEST 051526 051730 000000 016336 BIT BNE JSR MOV MOV JSR 22$: 104455 001276 051272 012046 005237 criapxz R4 R4, TSDB(RS) PC.CHKTSSR 228 BCS 308 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T182SSR,PKTSSR ngENDEQSFEATURES SWITCH SET? sSETUP PACKET FOR WRITE MISCELLANEOUS :GET WRITE SUBSYSTEM COMMAND PACKET :SET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET ;8dDFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET CSERDF 702 T182SSR .WORD .WORD 002222 : 308 002222 051600 010662 103407 010001 42$: 104455 001277 051235 012046 005237 xxz EXTF,XST2(R1) 3 T18SMISC TRAP 104406 005037 012704 004737 SEQ 0213 FORCERROR 103407 010001 INC CKLOOP FATFLG sSET FATAL ERROR FLAG :LOOP ON ERROR, PKTSSR .WORD IF FLAG SET TRAP CSCLP1 Do WRITE CHARACTERISTICS to select reserved unit 7 CLR FATFLG sCLEAR FATAL ERROR FLAG MoV #T18PACKET,Ré sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR :DO WRITE CHARACTERISTICS COMMAND FORCERROR 42% :3aDFORCE ERROR IF FORCER=1 BCS 508 sBR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T18SSR,PKTSSR ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD .WORD T18SSR PKTSSR TRAP CS$CLPT .WORD 002222 104406 012701 013700 105021 004737 012704 010465 004737 051506 051730 000000 016336 - 3681 3682 050744 3683 050750 3684 050754 3685 050756 3686 050760 3687 3688 050762 3689 050766 3690 050772 3691 050776 3692 051002 3693 051016 3694 051020 3695 051022 3696 051022 051022 051024 051026 051030 012704 010465 004737 000012 50$: 60$: 005300 003375 INC CKLOOP FATFLG MOV MOV #T18BFR,R1 T18DATA+4 RO 010001 62$: sGET MESSAGE BUFFER ADDRESS sSIZE OF MESSAGE BUFFER IN BYTES sCLEAR A BYTE sDONE? H:]R IF NO CLRB (R1)+ DEC RO 8GT 60% Do a Write Subsystem READ STATUS JSR PC,T18SRD JSETUP PACKET FOR READ STATUS MOV #T18PK2,R% ;GET WRITE SUBSYSTEM (CMMAND PACKETY MOV R4 ,TSDB(RS) sSET THE PACKET ADDRESS TO SXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 103407 703 sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET Clear message buffer O~ 050734 3678 050736 3679 050742 0 050742 000200 VAW 3675 050724 3676 050726 3677 050726 032761 001026 004737 (=d=J 3654 050604 3655 050612 3656 050614 3657 050620 3658 050624 3659 050630 3660 050634 3661 050650 3662 050652 3663 050654 3664 050654 050654 050656 050660 050662 3665 050664 3666 050670 050670 3667 3668 3669 3670 050672 3671 050676 PAGE 112-1 708 8CS MOV RO.R1 NEXT.ERRNO ERRDF 623 ERRNO,T183SSR,PKTSSR ;8aDFORCE ERROR IF FORCER=? sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD CSERDF 704 T183SSR PKTSSR TSVS < HARDWARE TESTS TEST 7: 1 MACRO M1113 25-MAY-82 09:19 STATIC TRANSPORT BUS INTERFALL TEST 3697 051032 3698 051036 051036 699 3700 3701 3702 3703 051040 3704 3705 051044 3706 051046 3707 051052 3708 051056 3709 051062 3710 051066 3711 051076 3712 051100 3713 051100 051100 051102 051106 051106 3714 051110 3715 051110 005237 002222 104406 004737 051550 005000 012701 012702 012703 004737 051702 051146 000012 011500 : : : 103404 82$: 104456 001301 051403 012350 90$: 104406 005737 001402 004737 004737 002222 3721 051132 3722 051136 3723 051136 051136 3724 051140 000137 050506 103002 104432 000606 INC CKLOOP FATFLG SEQ 0214 JSET FATAL ERROR FLAG 2LOOP ON ERROR, IF FLAG SET TRAP 917202 016456 1608: 165$: cscLP1 Set first 8 words of expd message buffer = to recv since not testing Set unused bits in Read Status expd equal rcvd JSR PC,T18SETEXP :SET SOME EXPD TO RECV It any transport interface signals are asserted then Print Error CLR RO sHIGH RECV ADDRESS FOR CKMSGZ2 MOV #T18BFR,R1 :LOW RECV ADDRESS FOR CKMSGZ2 MOV #T18EXP,R2 ;EXPD ADDRESS MOV #10 ,R3 ;NUMBER OF WORDS TO COMPARE JSR PC,CKMSG2 ;EXPD EQUAL RECV? FORCERROR 823 ,NOTSSR ;aaD BCS 90$ ;BR IF YES NEXT.ERRNO ERRHRD ERRNO,T18CMP,MSGSTAT <REPORT ERROR TRAP CSERHRD LWORD 705 .WORD T18(MP .WORD MSGSTAT C<LOOP .LOOP ON ERROR, IF FLAG SET TRAP 3716 051112 3717 051116 3718 051120 3719 051124 3720 05113C 708: PAGE 112-2 TST BEQ JSR JSR FATFLG 1608 PC,CKDROP PC,TSTLOOP sANY FATAL ERRORS ? ;BRANCH IF NOT sTRY TO DROP THE UNIT ;DO ITERATIONS? JMP T18LO0OP sLOOP UNTIL ITERATIONS DONE BCC EXIT 1658 CSCLP1 :BR IF NO TST TRAP .WORD CSEXIT L10065-. 3727 3728 - T18MSK: 377 037 100 000 3737 051146 3738 051146 3739 051150 3740 051152 3741 051156 3742 051156 3743 051160 3744 051162 3745 051164 3746 051166 g;z; 051170 009000 000000 000000 0000C0 000000 000000 000000 000000 000000 000000 3749 051172 g;g? 051174 377 000000 T18EXP: 020 T18xSs: 3752 3753 3735 3756 051176 3757 051235 3758 051272 3759 051336 %;g? 051403 ~(<000> ~(<340> ~(<277> 0 ¢MASK ;BYTE ;BYTE ;BYTE sMAKE WORD MWORD .WORD WORD WORD WORD WORD WORD .WORD .WORD O 0 0 0 0 O 0 O 0 0 EXPECTED DATA BUFFER sMESSAGE TYPE ;DATA FIELD LENG +RBPCR sXSTO . JXST1 JXST2 JXST3 sXST4 (ALWAYS PRESENT FOR WRITE SuB) sREAD STATUS BYTE 1/0 READ STATUS BYTE 2 .BYTE LWORD 377,020 O cREAD STATUS BYTE 0/1 EXPECTED BASE ¢READ STATUS BYTE 2 EXPECTED BASE .BYTE BYTE BYTE .BYTE 123 127 127 127 124 164 122 122 122 162 141 111 111 111 141 - TST18ID: T18SSR: .ASCIZ T182SSR:.ASCIZ T183SSR:.ASCIZ T18CMP: .gegfil .ASCIZ ‘Static Transport Bus Interface’ ‘WRITE CHARACTERISTICS Failed® °'WRITE SUBSYSTEM (Write Misc) Failed’ ‘'WRITE SUBSYSTEM (Read Status) Failed' ‘Transport Bus Interface Signals NOT Negated After Unit 7 Selected’ g %;gg ¢ SETUP T18PK2 PACKET FOR READ STATUS T18SRD: 012700 112720 105010 000207 051740 000005 SAVREG MOV MOV8 CLR8 RTS #T18DT2,R0O #PW_RDSTATUS, (RO) + (RO) PC %;;g i+ ¢ SETUP T18PK2 PACKET FOR WRITE MISC. 3776 051526 3777 051526 3778 051532 3779 051536 3780 051542 T18SMISC: SAVREG MOV MOVB MOvB 3781 051546 3782 3783 OF UNUSED BITS IN READ STATUS BYTES 0 MASK 1 2 IT EVEN i+ cLOCAL TEXT MESSAGES FOR TEST 3762 3763 3766 051506 3767 051506 3768 051512 3769 051516 3770 051522 3771 051524 3772 3773 SEQ 0215 . sLOCAL STORAGE FOR THIS TEST 3750 3731 051142 3732 051142 3733 051143 3734 0511446 g;gg 051145 PAGE 113 —a TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 7: STATIC TRANSPORT BUS INTERFACE TEST 012700 112720 112710 000207 051740 000010 000200 RTS #T18DT2,R0 #PW_ WMISC, (RO) + #MS . EXT, (RO) PC :SAVE R1-R5 UNTIL NEXT RETURN SWRITE SUBSYSTEM DATA BUFFER sSTORE READ STATUS COMMAND IN BSELO sCLEAR BSEL1 ;RETURN sSAVE R1-R5 UNTIL NEXT RETURN SWRITE SUBSYSTEM DATA BUFFER cSTORE WRITE MISCELLANEOUS IN BSELO sSTORE INVERT EXTENDED FEATURES IN BSEL sRETURN TSVS ~ HARDWARE TESTS TEST 7: MACRO M1113 25-MAY-82 09:19 STATIC TRANSPORT BUS INTERFACE TEST PAGE 113-1 K SEQ 0216 ;Set first 8 words of expd message buffer = to recv since not testing 000207 b b ~N~N &~ NN - —b b b AW [=l=l=] Set unused bits in Read T18SETEXP: MOV MOV MOV 051146 051702 000010 5¢: o o 3789 051554 3790 051560 3791 051564 3792 051566 3793 051570 3794 051572 3795 051576 3796 051602 3797 051610 3798 051612 3799 051614 3800 051616 3801 051620 3802 051624 3803 051630 3804 051634 3805 051640 3806 051644 3807 051650 3808 olelelelololelalela) b el o b ) ) b b b b 3787 051550 3788 051550 WWNW&NNNN : 000002 000002 000002 000002 000002 000003 000003 MOV DEC 8GT MOV MOV MOV MOV 8IC 8IC 8IS MOV BIC 8IC 8IS CLRB CLRB RTS 051660 tatus expd equal rcvd #T18EXP,R2 #T18BFR,R3 #8. R0 (R3)+,(R2)+ RO 5% #T18MSK,R1 T18xS, (R2) T18Xx5+2,2(R2) (R3) ,RO (R1) ,RO RO, (R2) RO, (R2) 2(R3) R0 2(R1),RO RO,2(R2) RO,2(R2) 3(R2) 3(R3) PC JGET EXPD JGET READ STATUS RECV BUFFER JSET FIRST 8 WORDS EXP=RECV :SET EXPD=RECV ;DONE FIRST 8 WORDS? ;JBR IF NO JGET -UNUSED BIT MASK sSETUP BASE EXPECTED BYTE 1/0 JSETUP BASE EXPECTED BYTE 2 sGET RECV BYTE 1 AND BYTE 0 JCLEAR ALL BUT UNUSED sCLEAR UNUSED IN EXP :SET UNUSED EXPD=RECV FOR COMPARE ;GET RECV BYTE 2 sCLEAR ALL BUT UNUSED ;CLEAR UNUSED IN EXPD ;SET UNUSED EXPD=RECV FOR COMPARE sCLEAR EXPD BYTE 3 (UNUSED) JCLEAR RECYV BYTE 3 (UNUSED) :RETURN =<, +10>8177770 :WRITE CHARARTERISTICS COMMAND PACKET 3825 051676 3826 051700 3827 3828 3829 051702 3830 051702 3831 051704 3832 051706 3833 051710 3834 051712 3835 051714 3836 051716 3837 051720 3838 051722 3839 051724 3840 3841 3842 100004 051670 000000 000012 051702 000000 000024 000000 000007 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 T18PACKET: .WORD -WORD -WORD -WORD T18DATA: s COMMAND PACKET FOR TEST sWRITE CHARACTERISTICS COMMAND, WITH ACK sADDRESS OF CHARACTERISTICS BLOCK sMESSAGE PACKET MINIMUM SI2E sCHARACTERISTICS DATA BLOCK cADDRESS OF MESSAGE BUFFER -WORD .WORD sLENGTH OF MESSAGE BUFFER cESS,ENB EAI ERI sSELECT RESERVED UNIT 7 .WORD .WORD T18BFR: .WORD -WORD -WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD OO0O0O0O0O0O0000O 3815 051660 3816 051660 3817 051662 3818 051664 3819 051666 3820 3821 051670 3822 051670 3823 051672 3824 051674 JMESSAGE BUFFER :MESSAGE TYPE sDATA FIELD LENGTH JRBPCR JXSTO JXSTH IXST2 *XST4 (ALWAYS PRESENT FOR WRITE SUBSYSTEM SREAD STATUS BYTE 1/0 RETURNED *READ STATUS BYTE 2 EURITE SUBSYSTEM READ STATUS COMMAND PACKET [ 3844 3846 051730 3847 051730 3848 051732 3849 051734 ggg? 051736 3852 051740 3853 051740 3854 051741 3855 051742 3856 051744 3857 3858 3859 051746 051746 051746 051730 100006 051740 000000 000010 000 000 000000 000000 T18PK2: T18072: — d L SEQ 0217 .=<,+10>8177770 .WORD .WORD .WORD .WORD P.WRTSUB!P.ACK T18DT? 0 8. sWRITE SUBSYSTEM WITH A(K sLOW ADDRESS OF DATA BLOCK sHIGH ADDRESS OF DATA BLOCK ¢BUFFER EXTENT .BYTE BYTE LWORD WORD 0 0 0 O sDATA BLOCK sBSELO sBSEL1 sSEL2 :DATA ENDTST 104401 PAGE 113-2 L10065: TRAP CSETST — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 7: STATIC TRANSPORT BUS INTERFACE TEST MACRO M1113 25-MAY-82 09:19 INTERFACE LOOPBACK TEST 3881 3882 051750 051750 3887 051750 3888 051754 3889 051760 3890 051766 3891 .SBTTL + P LR TR PR FE TR FE FE YR FE TN FE PR FE FE FE FE PN ¥ TSVS = HARDWARE TESTS TEST 8: TRANSPORT BUS PAGE 114 TEST SEQ 0218 8: TRANSPORT BUS INTERFACE LOOPBACK TEST TEST D ESCRIPTION: This test verifies the controller's Transport Bus drivers, receivers, and signal loopback logic. Note that the Static Transport Bus test must have run correctly for this test to provide meaningful results. TEST STEPS: REPEAT FOR LOOPCNT BEGIN Do Do Do ENDDo Subtest Subtest Subtest Subtest 1 2 3 4 = - Loopback Loopback Loopback Loopback BGNTST 012700 004737 012737 060 162 016 510 000 012 002216 T19L00P: MOV JSR MOV #TST1910,R0 PC,TSTSETUP #10. ,LOOPCNT Control signals test Read/Write signals test Write Strobe test Read Strobe test T8:: JASCII MESSAGE TO IDENTIFY TEST ;D0 INITIAL TEST SETUP :PERFORM 10 ITERATIONS —a MACRO M1113 25-MAY<82 09:19 PAGE 115 TSVS = HARDWARE TESTS 8: SUBTEST 1: LOOPBACK CONTROL TEST SIGNAL TEST 3893 .SBTTL TEST SEQ 0219 8: SUBTEST 1: LOOPBACK CONTROL SIGNAL TEST s be SUBTEST DESCRIPTION: APy SN P S s TEST 8: SUBTEST 1: TEST STEPS: YT YA YA Y YA S S This subtest verifies the Transport Control loopback path can transmit and receive correctly. The control signals are all loopback signals other than the read/write data (IW<7:0> and IR<7:0>). BEGIN PR P FE PI PR FE PR PN PN P N P TN T A W T T TNTR WA WA YA WA WA The loopback signals IFAD,ITADO,ITAD1 are the tape unit select lines. Since reserved unit 7 must remain selected these signals are always set low. This further means the signals they drive (ISPEED,IRDY,IONL) are only tested in the low state. Write to TSSR register to soft initialize the controller Do WRITE CHARACTERISTICS to check for Extended Features Switch It Extended Features Hardware Switch Clear then: Do Write Subs;stem Write Miscellaneous to Set Extended Features. Do WRITE CHARACTERISTICS to select reserved unit 7 and setup BUFFER Do a Wrize Subsystem WRITE NPR to set tape direction out and Loopback Do Write Subsystem Write Control to CLEAR loogback signals group 1. Do Write Subslstgm Write Format to CLEAR loopback signals $r9up 2. (the loopback signals have to be cleared here due to the flip-flops that are set on a 1 to 0 transition (IHER,IFMK,ICER)) Do a Write Subsystem Write Misc to Reset Tape Status F-FLOPS Do a Write Subsystem READ STATUS It all Tape Status 2 (ICER,IFMK,IHER) signals NOT=0 Then Print Error RESEAT FOR ALL MR ZETIEIEIALEIE IN TSTBLK TABLE GIN Do Write Subsystem Write Control to Drive loogback signals group_1. Do Write Subs‘stem Write Format to Drive loopback signals group 2. Do a Write Subsystem READ STATUS It 3940 051766 051766 051766 3941 3942 3943 051770 3944 051770 3945 051774 3946 051776 3947 052000 TEST PATTERNS . loopback data NOT= data sent Then Print Error Do a Write Subsystem Write Misc to Reset Tape Status F~FLOPS Do a Write Subsystem READ STATUS ) END It all Tape Status 2 (ICER,IFMK,IHER) signals NOT=0 Then Print Error BGNSUB flip-flop /11177777777 BEGIN SUBTEST /771711117 " 104402 004737 103405 010001 . flip=flop 015774 TRAP ($BSUB Write tc TSSR register to soft initialize the controller JSR BCS ¢cWRITE TO TSSR TO SOFT INITIALIZE sBR IF SOFT INIT OKAY sSAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT MOV ERRDF PC,SOFINIT 108 RO,R1 ERRNO,SFIERR,SFIMSG TSVS = HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST 1: LOOPBACK CONTROL SIGNAL TEST N52000 012034 3949 052010 005037 012704 004737 3951 052020 3952 052024 3953 052040 3954 052042 3955 052044 3956 052044 052044 052046 052050 052052 3957 052054 3958 052060 052060 3961 052062 3962 052066 3963 052074 3964 052076 3965 052102 3966 052106 3967 052112 002222 062310 010662 FORCERRO?ss 103407 010001 12%: 104455 001441 060223 012046 005237 002222 15$: 104406 012701 032761 001076 0047.7 012704 010465 004737 1046455 001442 060260 012046 005237 000012 BIf BNE JSR 22%: 002222 308: TRAP -WORD .WORD .WORD FATFLG sSET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG ?E;P #X2.EXTF XST2(R1) 308 PC,T19SEXT MOV #T19PK2 R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 22% BCS 308 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T192SSR,PKTSSR INC cKLooP T19SSR PKTSSR csCLP1 sEXTENDED FEATURES SWITCH SET? ¢BR IF YES sSETUP PACKET FOR WRITE MISC INVERY sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS 70 EXECUTE sWAIT FOR SSR TO SET ;3aDFORCE. ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET -WORD -WORD -WORD FATFLG FORCERROR 428%: 002222 CSERDF 801 sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG ?E;P CSERDF 802 T192SSR PKTSSR CsCLP? Do WRITE CHARACTERISTICS to select reserved unit 7 CLR FATFLG sCLEAR FATAL ERROR FLAG MOV #TT19PACKET R4 sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR :D0 WRITE CHARACTERISTICS COMMAND 002222 062310 010662 104455 104406 sDEVICE FATAL SSR FAILED TO SET TRAP 010001 005237 INC CKLOOP :39DFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR Do Write Subsystem Write Miscellaneous to Set Extended Features. MoV #T198FR,R1 sMESSAGE BUFFER ADDRESS 062162 062460 000000 016336 104406 005037 012704 004737 128 BCS MoV RO,R1 NEXT.ERRNO ERRDF ERRNO,T19SSR,PKTSSR If Extended Features Hardware Switch Clear then: 062332 000200 CSERDF 800 SFIERR .WORD SFIMSG Do WRITE CHARACTERISTICS to check for Extended Features Switch CLR FATFLG sCLEAR FATAL ERROR FLAG MoV #T19PACKET, R4 sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR ;D0 WRITE CHARACTERISTICS COMMAND 103407 052224 SEQ@ 0220 TRAP .WORD .WORD 103407 010001 052144 3973 052146 3974 052152 052152 3975 3976 052154 B8 104455 052006 3950 052014 PAGE 115-1 50%: 42% 8(S MOV 508 RO.R1 ERRDF ERRNO,T19SSR,PKTSSR NEXT.ERRNO INC ckLoop FATFLG ;33DFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD -WORD .WORD sSET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG ¥SIP CSERDF 803 T19SSR PKTSSR cscLP TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 8: SUBTEST 1: LOOPBACK CONTROL SIGNAL TEST 3986 3987 052226 3988 052232 3989 052236 3990 052242 3991 052246 3992 052252 3993 052256 3994 052272 3995 052274 012700 052700 004737 012704 010465 004737 4014 052370 4015 052372 4016 052372 052372 052374 052376 052400 4017 052402 4018 052406 052406 4019 052410 4020 052412 4021 052416 4022 052422 4023 052426 4024 052432 4025 0526446 4026 052450 4027 052452 4028 052452 052452 052454 052456 052460 MOV 000000 62%: 002222 Se Be ®e 0, 70$: v00200 000100 000040 062122 062460 000000 016336 82§: 104455 002222 90$: 062142 062460 000000 016336 FATFLG TRAP sSET FATAL ERROR FLAG .WORD :LOOP ON ERROR, IF FLAG SET TRAP 102$: CSERDF 804 T194€:m PKTS3R cscLP1 Do Write Subsystem Write Control to CLEAR loogback signals group 1. Do Write Subslstem Write Format to CLEAR loop ack signals ?{ggpflops (the loopbac signals have to be cleared here due to the that a;a set on a 1 to 0 transition (IHER,IFMK,ICER)) SWRITE 0°S CLR BIC #WC.IFAD,RO sIFAD MUST ALWAYS =0 8IC #WC.I0TAD,RO :ITADO MUST ALWAYS =0 8I( #WC.I1TAD,RO cITAD1 MUST ALWAYS =0 JSR PC,T19WCTL ¢SETUP PACKET FOR WRITE CONTROL Mov #T19PK2,R4 sGET WRITE SUBSYSTEM COMMAND PACKET Mov R4, TSDB(RS) ¢SET _THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET JSR PC.CHKTSSR FORCERROR 82% :33DFORCE ERROR IF FORCER=1 8CS 90$ :BR IF CARRY SET (GOOv RETURN) MoV RO,R1 :SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T197SSR,PKTSSR INC ckLoOP FATFLG CLR JSR MOov MOV RO PC,T19WFMT #T19PK2 R4 R4, TSDB(RS) sDEVICE FATAL SSR FAILED TO SET TRAP sSET _FATAL ERROR FLAG <LOOP ON ERROR, .WORD IF FLAG SET TRAP CSERDF 805 T197SSR PKTSSR cscLPl BCS Mov RO,R1 ¢SET FORMAT DRIVE DATA=0 sSETUP PACKET FOR WRITE FORMAT ¢GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET ;9aDFORCE ERROR IF FORCER=1 s8R IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ERRDF ERRNO,T198SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET PC,CHKTSSR FORCERROR 010001 012046 INC ckLoop JSR 103407 104455 001446 060612 sDEVICE FATAL SSR FAILED TO SET .WORD .WORD 104406 005000 004737 012704 010465 004737 NEXT.ERRNO ERRDF ERRNO,T194SSR,PKTSSR JGET WRITE SUBSYSTEM COMMAND PACKET sSET _THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET :3aDFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR .WORD LWORD 103407 010001 001445 060543 012046 005237 #119PK2,R4 MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 62$ 708 8CS MOV RO,R1 016336 104406 005000 042700 042700 042700 004737 012704 010465 004737 SEQ 0221 MOV 103407 010001 060371 012046 005237 C Do a Write Subsysaem WRITE NPR to set tape direction out and Loopback #NP.OUT cSET TAPE DIRECTION OUT BIS #NP.LOOP,RO :SET LOOPBACK ENABLE PC, TTOSNPR JSR sSETUP T19PK2 FOR WRITE NPR 000100 104455 001444 PAGE 115-2 1108 NEXT.ERRNO 102$ TRAP .WORD WORD .WORD CSERDF 806 T198SSR PKTSSR TSVS = HARDWARE TESTS TEST 8: SUBTEST 1: 64029 052462 64030 052466 052466 4031 4032 052470 4033 0526476 4034 052500 4035 052506 4036 052510 4037 052526 4038 052526 4039 052530 4040 052530 052530 052532 052534 052536 4041 052540 4042 052544 052544 4043 4044 4045 4046 052546 4047 052552 4048 4049 4050 4051 052556 052562 052566 052602 4052 0526064 4053 052606 4054 052606 052606 052610 052612 052614 4055 052616 4056 052622 052622 4057 052626 4058 052630 4059 052634 4060 052640 4061 052642 4062 052646 4063 052652 4064 052656 4065 052664 4066 052666 4067 052672 4068 052676 4069 052702 4070 052706 4071 052716 4072 052720 4073 052720 052720 MACRO M1113 25-MAY-82 09:19 LOOPBACK CONTROL SIGNAL TEST 005237 002222 1108: 104406 004737 062000 010465 004737 000000 016336 012704 : 062460 103407 010001 104455 001447 060260 012046 005237 1228: 002222 130%: 104406 004737 012704 010465 004737 : : : 061760 062460 000000 016336 104406 004737 012701 012702 011211 042711 042711 042711 016261 005000 012701 012702 012703 004737 1328: 002222 1408: 062220 060062 062352 002000 001000 000400 000002 000002 062332 060042 000024 011500 103404 104456 0 SEQ 0222 INC CKLOOP FATFLG MOV lTi9PK2.R4 ERRDF ERRNO,T192SSR,PKTSSR INC CxLOOP FATFLG cSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET ) ) ) TRAP cscLP Do a Write Subsystem Write Misc to Reset Tape Status F-FLOPS JSR PC,T19RSFIF sSETUP PKT FOR WRITE MISC Reset Tape Status F=FLOPS 1528: sGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 122% 8(Cs 130% MOV RO,R1 NEXT.ERRNO . Do a Write Subsystem If all Tape Status 2 signals NOT=0 Then JSR PC,T19SRD MOV #T19PK2 R4 MOV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 132% 8(CS 1408 103407 010001 104455 001450 060324 012046 005237 PAGE 115-3 sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@aDFORCE ERROR [F FORCER=1 :BR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR FATFLG JSR PC,T19SETEXP MOV #TI19EXSTA,R1T MOV #T198FSTA R2 MOV (R2), (R1) BIC #S1.1CER, (RT) BIC #S1.1FMK, (R1) BIC #S1.IHER, (R1) MOV 2(R2) ,2(R1) CLR RO MOV #T198FR,R1 MOV #TI9EXP,R2 MOV #20. ,R3 JSR PC.,CKMSG2 FORCERROR 1528 ,NOTSSR 8CS 160% NEXT.ERRNO ERRHRD TRAP .WORD LWORD .WORD CSERDF 807 T192SSR PKTSSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CsCLPY READ STATUS ) (ICER,IFMK,IHER) flip-flop Print Error sSETUP PACKET FOR READ STATUS cGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET ;@aDFORCE ERROR ]F FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T193SSR,PKTSSR INC CKLOOP ¢cDEVICE FATAL SSR FAILED TO SET ERRNO,T197CMP,MSGLOOP sDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD sSET FATAL ERROR FLAG c:LOOP ON ERROR, IF FLAG SET CSERDF 808 T193SSR PKTSSR TRAP cscLP :SET WORDS 0~7 EXPD=RECV (NOT TESTING) sGET EXPECTED READ STATUS sGET RECV READ STATUS SET EXPD WORD #8 = RECV TEMP JSET EXPD ICER =0 SSET EXPD IFMK =0 sSET EXPD IHER =0 sSET EXPD WORD #9 = RECV (NOT TESTING) cHIGH RECV ADDRESS FOR CKMSG?2 sLOW RECV ADDRESS FOR CKMSG?2 sEXPD ADDRESS ;NUMBER OF BYTES TO COMPARE sEXPD EQUAL RECV? saaD ;JBR IF YES ;REPORT ERROR TRAP CSERHRD — TSVS = HARDWARE TESTS TEST 8: SUBTEST 1: 052722 052724 052726 4074 052730 061451 061263 013064 104406 052760 052764 005037 012703 012300 010337 042700 042700 042700 010037 052770 052774 4088 4089 053000 4090 40N 25-MAY-82 09:19 LOOPBACK CONTROL SIGNAL TEST 052730 4075 4076 052732 MACRO M1113 1608: 057774 002752 002316 000200 000100 000040 002312 002312 062244 004737 012704 010465 004737 062122 062460 000000 016336 : 2008: : ;3aD 002222 2208: : b N W ;aaD 104406 T19PREV #TSTBLK ,R3 MOV BIC BIC BIC MOV R3,TSTPTR #WC.IFAD,RO #MIC.I0TAD,RO #WC.J1TAD,RO RO,DATA MOV 2328: .WORD IF FLAG SET TRAP SGET A TEST PATTERN Do Write Subsystem Write Control ;SAVE POINTER INTO JIFAD MUST ALWAYS sITADO MUST ALWAYS JITAD1 MUST ALWAYS sSET DATA PATTERN 240%: MSGLOOP csCLP TSTBLK = =0 =0 to Drive loopback signals group 1. CALL T19CNVT TO SETUP WRITE CONTROL PATTERN MOV DATA,RO JGET TEST PATTERN JSR PC,TI9CNVT sCONVERT PATTERN TO CONTROL DRIVE MASK ;RO CONTAINS WRITE CONTROL DATA HERE JSR PC,TI9WCTL sSETUP PACKET FOR WRITE CONTROL MOV #T19PK2 R4 ;GET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR SWAIT FOR SSR TO SET 212% -@8DFORCE ERROR IF FORCER=1 8(CS 2208 ERRDF ERRNO,T137SSR,PKTSSR sDEVICE FATAL SSR FAILED 'O SET INC CkLOOP FATFLG sSET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG SET MOV RO,R1 NEXT.ERRNO ¢BR IF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR TRAP .WORD WORD .WORD CSERDF 810 T197SSR TRAP CSCLP? PKTSSR Do Write Subsystem Write Format to Drive loopback signals group 2. CALL T19CNVT TO SETUP WRITE CONTROL PATTERN MOV DATA,RO JGET TEST PATTERN JSR PC,TI9CNVT sCONVERT PATTERN TO FORMAT DRIVE MASK RO cWRITE FORMAT DATA RETURNED IN HIGH BYTE JSR MOV MOV JSR PC,T19WFMT #T19PK2 R4 R4, TSDB(RS) PC,CHKTSSR SSETUP PACKET FOR WRITE FORMAT sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE ¢WAIT FOR SSR TO SET 8(CS 2408 ¢BR IF CARRY SET (GOOD RETURN) ERRDF ERRNO,T198SSR,PKTSSR MOV RO,R1 NEXT.ERRNO 232% :83DFORCE ERROR IF FORCER=1 :SAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SETV TRAP .WORD .WORD 002222 809 T197CMP JINIT 1-0 TRANSITION FLAG JGET FIRST PATTERN ADDRESS (R3)+,R0 FORCERROR 103407 010001 104455 001453 060612 012046 005237 ;LOOP ON ERROR, CLR MOV SWAB 062142 062460 000000 016336 b b b WWWWWC_N.WWWNW VWA WAV WAIWIAWN b b idodclslelelolalelelale W W b el kb b b — R 3110 124 26 30 30 30 002312 062244 (KLOOP FORCERROR 212%: 104406 013700 004737 000300 004737 012704 010465 004737 SEQ 0223 REPEAT FOR ALL TEST PATTERNS IN TSTBLK TABLE 103407 010001 4103 053056 4104 053062 4105 053066 4106 053070 4107 053074 4108 053100 4109 053104 3 .WORD .WORD 013700 004737 1046455 001452 060543 012046 005237 PAGE 115<4 INC (KLOOP FATFLG .WORD JSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSERDF 811 T198SSR PKTSSR CSCLPY TSVS = HARDWARE T STS TEST 8: SUBTEST 1. 053214 4127 053216 4128 053222 053222 6129 4130 053224 4131 053230 4132 053234 4133 053240 4134 053244 4135 053250 4136 053254 4137 053260 4138 053262 4139 053264 4140 053266 4141 053270 4142 053272 6143 053274 4144 053300 4145 053302 4146 053304 4147 053306 4148 053310 4149 053312 4150 053314 4151 053320 4152 053322 4153 053324 4154 053326 4155 053330 4156 053332 4157 053334 4158 4159 053336 4160 053342 4161 053344 4162 053350 4163 053352 4164 053354 4165 053356 4166 053360 4167 053364 4168 053370 25-MAY-82 09:19 LOOPBACK CONTROL SIGNAL TEST 004737 012704 010465 004737 4125 053206 4126 053206 MACRO M1113 061760 062460 000000 016336 : 2528: 012046 005237 SEQ 0224 JSR MOV MOV JSR PC,T19SRD #TI19PK2 R4 R4 'SDB(RS) PC 4KTSSR 8CS MOV 2608 RO,R1 ERRDF ERRNO,T193SSR,PKTSSR 252% NEXT .ERRNO sSETUP PACKET FOR READ STATUS ¢GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET :33DFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR ¢DEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD 002222 104406 004737 012701 012702 013711 013700 013703 012704 040411 030400 001403 030403 001001 050411 012704 040411 030400 001403 030403 001001 050411 012704 040611 030400 001403 030403 001001 050411 011100 062220 060062 062352 002312 057774 002312 000400 012704 050400 0046000 260$: INC CKLOOP : If Lloopback data NOT= data sent Then Print Error ;CLRENT BIS MoV 8lC 8IT Ré4, (R1) #S1.1FMK R4 R4, (R1) R4 ,RO 8IT BNE 8IS R4 ,R3 2808 R4, (R1) BIC BIT R4, (R1) R4 ,RO BIT R4 ,R3 MOV 040000 275s 275s 2808 #S1.1CER,RG 2858 285$ MOV #S1.]11DENT R4 ;BR IF NO =0? s8R _IF NO sSET EXPD IHER =1 sSETUP IFMK EXPECTED SSET EXPD IFMK =0 sPREVIOUS =1? :BR IF NO =0? :CURRENT :BR IF NO :SET EXPD IFMK =1 JSETUP ICER EXPECTED JSET EXPD ICER =0 ;PREV]IOUS =1? :BR IF NO 0? :CURRENT :BR IF NO BEQ 288s R4 ,R3 s 1IDENT sASSUME EXPD=1 sPREVIOUS IIDENT=1? ;B8R IF NO ;IS CURRENT 1IDENT=1? BIC R4 RO JSET -XPD=0 BIS 8IC #S1.11RES,RO #S1.PARERR,RO s IGNORE PARERR BIS BIT 288%: R4, (R1) Ré4, (R1) 8IS JSET EXPD ICER =1 MOov (R1),RO ;GET EXPD WORD It previous 11DENT=1 and current is JIDENT=1 then EXPD= 0 else 1 BEQ 020000 100000 ;SET WORDS 0=7 EXPD=RECV (NOT TESTING) JGET EXPECTED READ STATUS R4 ,R3 BNE 057774 cscLP? BIT BEQ 285s: : TRAP sSET FATAL ERROR FLAG cLOOP ON ERROR, IF FLAG SET R4 RO BEQ 2808$: PKTSSR 81T BNE 002000 .WORD JGET RECV READ STATUS sSET EXPD WORD #8 TO TEST DATA FIRST ;GET PREVIOUS DATA PATTERN :GET CURRENT PATTERN JSETUP IHER EXPECTED JSET EXPD IHER =0 ;PREVIOUS =1? 8i1C 2758: 812 T193SSR PC,TI9SETEXP #TI9EXSTA,R] #T19BFSTA,R2 DATA, (R1) T19PREV,RO DATA,R3 #S1.]IHER RS BEQ 001000 FATFLG CSERDF JSR MOV MOV MOV MOV MOV MOV BIT 042700 F Do a Write Subs‘stem READ STATUS FORCERROR 103407 010001 104455 001454 060324 PAGE 115-5 BIS R4 RO R4, TI9PREV 288$ #S1. 12RES.RO ;BR IF NO JIRESV2 EXPD ALWAYS=1 JIRESV1 EXPD ALWAYS=1 TSVS = HARDWARE TESTS TEST 8: SUBTEST 1: 6169 053374 4170 053400 4171 053402 4172 053406 4173 053410 4174 053416 4175 053420 6176 053424 €177 053430 4178 053434 6179 053440 4180 053450 4181 053452 6182 053452 053452 053454 053456 053460 4183 053462 053462 4184 4185 053464 4186 053470 4187 053474 4188 053500 4189 053504 4190 053520 4191 053522 4192 053524 4193 053524 053524 053526 053530 4194 053534 6195 053540 053540 4196 6197 053542 4198 053546 4199 053552 4200 053556 4201 053562 4202 053576 4203 053600 4204 053602 4205 053602 MACRO M1113 25-MAY-82 09:19 LOOPBACK CONTROL SIGNAL TEST 032712 001402 052700 010011 016261 000002 004737 062332 060042 000024 011500 100000 100000 000002 2908: 3028: 061351 013064 3108: 104406 004737 012704 010465 004737 062000 062460 000000 016336 : 060260 012046 005237 #T198FR,R1 #T19EXP,R2 #20. ,R3 PC,CKMSG2 BCS 3108 ;BR IF YES ERRHRD ERRNO,T198CMP,MSGLOOP 3028 ,NOTSSR NEXT.ERRNO 002222 061760 062460 000000 016336 330%: H #T19PK2 R4 R4.TSDB(R5) PC,CHKTSSR 322% 8CS 330 ERRDF ERRNO,T192SSR,PKTSSR MoV RO.R1 NEXT.ERRNO INC CKLOOP FATFLG 053616 4208 053620 4209 053624 4210 053630 104406 004737 012701 012702 ;REPORT ERROR 062220 060062 062352 3508 : T198CMP MSGLOOP cscLP STATUS :GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET :@aDFORCE ERROR IF FORCER=1 s8R IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET sSET FATAL ERROR FLAG sLOOP ON ERROR, JWORD CSERDF 814 T192SSR PKTSSR IF FLAG SET TRAP 3428 B8CS 3508 ERRDF ERRNO,T193SSR,PKTSSR MoV RO,R1 NEXT.ERRNO ;3aDFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP 002222 CSERHRD 813 CSCLP Do a Urlte Subszstem READ STATUS JSR sSETUP PACKET FOR READ STATUS MOV #T19PK2 R4 sGET WRITE SUBSYSTEM COMMAND PACKET MOV R4.TSDB(RS) :SET_THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR sWAIT FOR SSR TO SET FORCERROR 3428 : 104455 005237 caaD .WORD .WORD 103407 010001 4206 053612 sSET IN EXPD :SETUP FINAL EXPD IN WORD #8 TRAP .WORD .WORD .WORD CKxLOOP :LOOP ON ERROR, IF FLAG SET TRAP Do a Write Subsystem Write Misc to Reset Tape Status F-FLOPS JSR PC,TI9RSFIF sSETUP PKT FOR WRITE MISC Reset 001457 4207 053616 sIS PARERR SET IN RECV? :BR_IF TRAP 104406 004737 012704 010465 004737 MoV MOV MOV JSR :SET EXPD WORD #9 = RECV (NOT TESTING) JHIGH RECV ADDRESS FOR CKMSG?2 ;LOW RECV ADDRESS FOR CKMSGZ2 SEXFD ADDRESS ;NUMBER OF BYTES TO COMPARE JEXPD EQUAL RECV? FORCERROR 3228%: 104455 001456 SEQ 0225 #S1.PARERR, (R2) 290% #S1.PARERR,RO RO, (R1) %6R2).2(R1) MOV Mov JSR 103407 010001 6 8IT BEQ BIS MoV ?Ex FORCERROR 103404 104456 001455 PAGE 115-6 CSERDF .WORD WORD .WORD 815 T193SSR PKTSSR TRAP CSCLPY INC CKLOOP FATFLG sSET FATAL ERROR FLAG cLOOP ON ERROR, IF FLAG SET JSR PC,T19SETEXP sSET WORDS (=7 EXPD=RECV (NOT TESTING) sGET EXPECTED READ STATUS sGET RECV READ STATUS MOV MOV #T19EXSTA,R1 #T19BFSTA,R2 TSVS = HARDWARE TESTS TEST 8: 25-MAY-82 09:19 SUBTEST 1: LOOPBACK CONTROL SIGNAL TEST 6211 053634 4212 053636 6213 053642 6216 053646 6215 053652 4216 053660 6217 053662 4218 053666 4219 053672 6220 053676 4221 053702 4222 053712 4223 053714 4224 053714 053714 053716 053720 053722 4225 053724 4226 053724 4227 053726 4228 053734 4229 053740 4230 053744 4231 053746 4232 053752 4233 4234 053752 053752 4235 053752 4236 053754 4237 053760 4238 053762 4239 053766 4240 4241 4242 4243 4244 MACRO M1113 01121 042711 042711 042711 016261 005000 012701 012702 012703 004737 002000 001000 000400 000002 000002 062332 060042 000024 011500 103404 3628: 104456 001460 061263 012350 SEQ 0226 MOV (R2), (R1) 8IC #S1.1CER, (RT) BIC #S1.1FMK, (R1) BIC #S1.IHER, (R1) Mov 2(R2) ,2(R1) (LR RO MOV #T198FR,R1 Mov #T19EXP,R2 Mov #20. ,R3 JSR PC,CKMSG2 FORCERROR 362$ ,NOTSSR BCS 3708 NEXT.ERRNO ERRHRD ERRNO,T197CMP,MSGSTAT 3708: 002312 002316 003062 052742 057774 4008 : cxLoOP sSET EXPD WORD #8 = RECV TEMP sSET EXPD ICER ¢SET EXPD IFMK sSET EXPD IHER sSET EXPD WORD sHIGH RECV ADDRESS FOR (KMSG2 s.0W RECV ADDRESS FOR CKMSG2 <EXPD ADDRESS ¢NUMBER OF BYTES TO COMPARE sEXPD EQUAL RECV? %0 #5= RECV (NOT TESTING) ;930 :BR IF YES ¢REPORT ERROR TRAP Mov Mov CMP BHIS JMP DATA, T19PREV TSTPTR,R3 R3 ,#TBLEND 4008 2008 017202 4608: TST BEQ JSR MSGSTAT TRAP cscLP ;SETUP PREVIOUS DATA FOR EXPD CALC. sRESTORE CURRENT TSTBLK POINTER sEND OF TSTBLK? sBR IF YES :DO NEXT TSTBLK PATTERN /1117711717777 END SUB;EST 11117117777 L1006 104403 002222 CSERHRD 816 T197CMP .WORD ;LOOP ON ERROR, IF FLAG SET ENDSUB 005737 001402 004737 H .WORD WORD 104406 013737 013703 020327 103002 000137 PAGE 115-7 FATFLG 4608 PC,CKDROP sANY FATAL ERRORS ? ¢BRANCH [F NOT sTRY TO DROP THE UNIT TRAP C$ESUB 4246 4247 4248 4249 4250 4251 4252 4253 4254 .SBTTL PAGE 116 TEST SEQ 0227 8: SUBTEST 2: LOOPBACK READ/WRITE SIGNALS TEST XY P TEST 8: SUBTEST 2: This subtest verifies the Read/Write data loopback path. The Read/Write data signals are [R<7:0> and IW<7:0> respectively. TEST STEPS: RESEG}NFOR ALL 4283 4284 053770 4285 053770 4286 053774 4287 053776 4288 054000 054000 054002 054004 054006 4289 4290 054010 4291 054014 4292 054020 4293 054024 4296 056040 4295 054042 4296 054044 104402 004737 103405 010001 104455 001460 003652 012034 005037 012704 004737 103407 010001 o - END %s 015774 002222 062310 010662 (-N-N N NN o o L= R YR A FE B FETEFE 053766 053766 It Data read from FIFO NOT= to Data sent Then Print Error Do a Write Subsystem READ STATUS AR TETE YR IE 4281 4282 053766 TEST PATTERNS IN TSTBLK TABLE Write to TSSR register to soft initialize the controller Do WRITE CHARACTERISTICS to check for Extended Features Switch If Extended Features Hardware Switch Clear then: Do Write Subs;stem Write Miscellaneous to Set Extended Features. Do WRITE CHARACTERISTICS to select reserved unit 7 and setup BUFFER Writ: Subsystem WRITE NPR to set tape direction out and Loopback WRITE NPR to set loopback and tape direction OUT . WRITE FIFO with byte count equal to 1 and Tape direction OUT READ FIFO with tape direction OUT to load tape out write latch WRITE NPR to set loopback and tape direction IN . WRITE FIFO with byte count equal to 1 and Tape direction IN strobe loopback data into FIFO, Do a READ FIFQ with tape direction IN to read data PRFE TRPR FE FE PR FR PN PR TR P PR TN PN N T * SUBTEST DESCRIPTION: . M 108: If Input Ready NOT=1 If Output Ready NOT=0 If Data In Miss NOT=0 Then Print Error Then Print Error Then Print Error B8GNSUB I11111177717 8E$éNZSUBTEST 1111717117 Write to TSSR register to soft initialize the contrcller JSR PC,SOFINIT SWRITE TO TSSR TO SOFT INITIALIZE MOv ERRDF RC,R1 ERRNO,SFIERR,SFIMSG JSAVE CONTENTS OF TSSR ;DEVICE FATAL DURING INIT 8CS 108 o T TRAP csBSUB :BR IF SOFT INIT OKAY TRAP .WORD .WORD LWORD CSERDF 816 SFIERR SFIMSG Do WRITE CHARACTERISTICS to check for Extended Features Switch CLR FATFLG cCLEAR FATAL ERROR FLAG MOV #TI19PACKET R4 ;sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR FORCERROR 12% 8CS MOV 15¢ RO,R1 NEXT.ERRNO ;DO WRITE CHARACTERISTICS COMMAND -@aDFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR - TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 8: SUBTEST 2: LOOPBACK READ/WRITE SIGNALS TEST TEST TSVS = HARDWARE TESTS TEST 8: SUBTEST 2: 4297 054044 054044 054046 054050 054052 4298 054054 4299 054060 054060 4300 4301 4302 054062 4303 054066 4304 054074 4305 054076 4306 054102 4307 054106 4308 054112 4309 054116 4310 054132 6311 054134 4312 054136 4313 054136 056136 054140 054142 054144 4314 054146 6315 054152 054152 4316 4317 054154 4318 054160 4319 054164 4320 054200 4321 054202 4322 054204 4323 054204 054204 054206 054210 054212 4324 054214 4325 054220 054220 4326 4327 4328 6329 054222 4330 054226 4331 054232 4332 4333 4334 4335 4336 4337 054240 054244 054250 054254 054260 4338 054264 MACRO M1113 25-MAY-82 09:19 LOOPBACK READ/WRITE SIGNALS TEST 104455 001461 060223 012046 005237 128: 002222 15%: 104406 012701 032761 001026 004737 012704 010465 004737 062332 000200 : : 000012 062162 062460 000000 016336 103407 010001 104455 001462 060260 012046 005237 22%: 002222 308: 104406 012704 004737 : 062310 010662 103407 010001 104455 001463 060223 012046 005237 428%: 002222 508: 104406 J SEQ 0228 ERRND,T19SSR,PKTSSR JDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 817 .WORD T19SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG CkLOOP ;LOOP ON ERROR, IF FLAG SET . TRAP CSCLPI It Extended Features Hardware Switch Clear then: Do Write Subsystem Write Miscellaneous to Set Extended Features. MOV #T198FR,R1 JMESSAGE BUFFER ADDRESS 8IT #X2.EXTF ,XST2(R1) SEXTENDED FEATURES SWITCH SET? BNE 308 :BR IF YES JSR PC,T19SEXT sSETUP PACKET FOR WRITE MISC INVERT MOV #T19PK2 R4 SGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR SWAIT FOR SSR TO SET FORCERROR 22% @aDFORCE ExRO® IF FORCER=1 8CS 308 ¢cBR IF CARRY SET (GOOD REI1unN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T192SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 818 .WORD T192SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG CKLOOP ;LOOP ON ERROR, IF FLAG SET . TRAP cscLP Do WRITE CHARACTERISTICS to select reserved unit 7 MOV #T19PACKET R4 JGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR ;DO WRITE CHARACTERISTICS COMMAND FORCERROR 4298 -@@DFORCE ERROR IF FORCER=1 B8CS 508 :BR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T19SSR.PKTSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 819 .WORD T19SSR .WORD PKTSSR INC FATFLG sSET FATAL ERROR FLAG CKLOOP ;LOOP ON ERROR, IF FLAG SET TRAP 012703 012337 002752 002312 010337 002316 012700 052700 004737 012704 010465 000100 000040 062022 062460 000000 042737 ERRDF PAGE 116-~1 177400 cscLP ; 002312 REPEAT FOR ALL TEST PATTERNS IN TSTBLK TABLE MOV #TSTBLK ,R3 JGET FIRST PATTERN ADDRESS 1008: MOV (R3)+ DATA JGET A TEST PATTERN H BIC #-C<3P7>,DATA ;DATA IS BYTE Mov R4, TSDB(RS) ;SET THE PACKET ADDRESS TO EXECUTE MOV R3,TSTPIR sSETUP CURRENT TSTBLK POINTER Do a WRITE NPR to set loopback and ta?e direction OUT MOV #NP.OUT RO ;SET TAPE DIRECTION OUT 8IS #NP.LOOP,RO :SET LOOPBACK JSR PC,T19SNPR sSETUP T19PK2 FOR WRITE NPR MOV #T19PK2 R4 ;GET WRITE SUBSYSTEM COMMAND PACKET 8: SUBTEST 2: 4339 054270 6340 0546274 4341 054310 4342 054312 4343 054314 4344 054314 054314 054316 054320 054322 4345 056324 4346 054330 054330 4347 4348 054332 4349 054336 4350 054342 6351 054346 4352 054352 4353 054356 4354 054362 4355 054376 4356 054400 4357 054402 4358 054402 054402 054404 054406 054410 4359 054412 4360 054416 054416 4361 4362 054420 4363 054424 4364 054430 4365 054434 4366 054440 4367 054444 4368 054460 4369 054462 4370 054464 4371 054464 054464 054466 054470 054472 4372 054474 4373 054509 054500 4374 4375 054502 4376 054504 4377 054510 4378 054514 4379 054520 4380 054524 25-MAY=-82 09:19 LOOPBACK READ/WRITE SIGNALS TEST 004737 016336 1028: 012046 005237 002222 000001 062066 :BR ]F CARRY SET (GOOD RETURN) ;83DFORCE ERROR ]F FORCER=1 MOV RO,R’ NEXT.ERRNO ERRDF ERRNO,T194SSR,PKTSSR MOV JSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF 820 TI194SSR .WORD FATFLG PKTSSR JSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET to 1 TRAP CSCLP and Tape direction OUT MOV #1,R0 #DATA,R1 URITE 1 BYTE sFIFO WRITE DATA ADDRESS MOV MOV JSR #T19PK2 R& R4.TSDB(RS) PC,CHKTSSR cSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET B8CS 1108 :BR IF CARRY SET (GOOD RETURN) JSR PC, T1OWFIF FORCERROR 1078: ;SETUP T19PK2 FOR WRITE FIFO cGET WRITE SUBSYSTEM COMMAND PACKET 107$ ;93DFORCE ERROR IF MOV RO.R1 NEXT.ERRNO ERRDF ERRNO,T195SSR,PKTSSR JSAVE CONTENTS OF FORCER=1 TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP 002222 000001 062046 062460 000000 016336 INC FATFLG sSET FATAL ERROR FLAG .WORD WORD .WORD 1108: ckLOOP : Do a READ FIFO with tape direction OUT to load tape out write 1228: ;LOOP ON ERROR, IF FLAG SET TRAP 000040 062022 062460 000000 016336 821 T195SSR PKTSSR CsCLP latch ;SET READ BYTE COUNT SETUP T19PK2 FOR READ FIFO :GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;93DFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) ERRDF sDEVICE FATAL SSR FAILED TO SETY MOV RO,R1 NEXT.ERRNO ;SAVE CONTENTS OF ERRNO,T196SSR,PKTSSR TSSR .WORD .WORD 002222 CSERDF MOV #1,R0 JSR PC.T19RFIF MOV #TI9PK2 R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 122$% 8CS 1308 TRAP 104406 005000 052700 004737 012704 010465 004737 105$ Do a WRITE FIFO with byte count equal 103407 010001 005237 8CS : 062460 000000 016336 104406 104455 001466 060500 012046 JWAIT FOR SSR TO SET 1028 105$: 002312 104455 012700 004737 012704 010465 004737 PC,CHKTSSR INC CKLOOP 103407 010001 001465 060434 012046 005237 SEQ@ 0229 .WORD .WORD 104406 012700 012701 004737 012704 010465 004737 K JSR FORCERROR 103407 010001 104455 001464 060371 PAGE 1162 ey TEST MACRO M1113 1308 : INC CKLOOP : Do a WRITE NPR to set (LR BIS JSR MOV MOV JSR FATFLG RO #NP.LOOP,RO PC.TI9SNPR #T19PK2 R4 R4,TSDB(RS) PC,CHKTSSR -WORD PKTSSR TRAP CSCLP JSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET loopback and tape direction IN CSERDF 822 T196SSR sCLR NP.QUT TO SET TAPE DIRECTION IN SET LOOPBACK :SETUP TI19PK2 FOR WRITE NPR cGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET = TSVS = HARDWARE TESTS TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 8: SUBTEST 2: LOOPBACK READ/WRITE SIGNALS TEST 4381 054530 054544 054546 4382 4383 4384 4385 054550 054550 054550 054552 054554 054556 4386 054560 4387 054564 054564 4388 4389 054566 4390 054572 4391 054576 4392 054602 4393 054606 4394 054612 4395 054616 4396 054632 4397 054634 4398 054636 4399 054636 054636 054640 054642 054644 4400 054646 4401 054652 B8CS 1428: 104455 001467 060371 012046 005237 012700 012701 004737 012704 010465 004737 002222 1508: 000001 002312 062066 062460 000000 016336 1628: 104455 104406 44046 054654 4405 054660 4406 054664 4407 054670 4408 054674 4409 054700 4410 054714 4411 054716 4412 054720 012700 004737 012704 010465 004737 142¢% MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T194SSR,PKTSSR ;@aDFORCE ERROR IF FORCER=1 :BR IF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF INC C(kLOOP FATFLG JSET FATAL ERROR FLAG 002222 1708: B(S 170$ :BR IF CARRY SET (GOOD RETURN) ERRDF ERRNO,T195SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET MOV RO,R1 NEXT.ERRNO ;SAVE CONTENTS OF TSSR TRAP INC CKLOOP FATFLG sSET FATAL ERROR FLAG WORD IF FLAG SET TRAP Do a READ FIFQ with tape direction IN to read data 182$: MOV #1,R0 JSR PC,T19RFIF Mov #T19PK2,R4 MoV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 182% BCS 1908 MOV RO,R1 NEXT.ERRNO CSCLPT ERRDF ERRNO,T196SSR,PKTSSR JSET READ BYTE COUNT sSETUP T19PK2 FOR READ FIFO sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET ;8aDFORCE ERROR IF FORCER=1 :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP 002222 1908 : 062220 062332 PKTSSR :LOOP ON ERROR, 001471 2 000002 CSERDF 824 T195SSR If Data read from FIFO NOT= to Data sent Then Print Error 000001 062046 062460 000000 016336 104455 106406 004737 012701 012702 013711 016261 005000 012701 PKTSSR ;LOOP ON ERROR, IF FLAG SET .WORD .WORD 103407 010001 005237 .WORD 823 T194SSR TRAP CSCLP1 Do a WRITE FIFO with byte count equal to 1 and Tape direction IN MOV #1,R0 :WRITE 1 BYTE MOV #DATA ,R1 sFIFO WRITE DATA ADDRESS JSR PC,TI9WFIF JSETUP T19PK2 FOR WRITE FIFO MOV #T19PK2 R4 sGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) cSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 162 ;@aDFORCE ERROR IF FORCER=1 103407 010001 001470 060434 012046 005237 150 SEQ@ 0230 .WORD LWORD 104406 054652 4413 054720 054720 054722 054724 054726 4414 054730 4415 054734 054734 4416 054736 4417 054742 4418 054746 4419 054752 4420 054756 4621 054764 4422 054766 FORCERROR 103407 010001 L PAGE 116-3 INC (kLooP FATFLG JSR MoV PC,T19SETEXP #TI19EXSTA,R] MoV 000002 MOV MOV CLR MOV .WORD WORD .WORD CSERDF 825 T196SSR PKTSSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP csCLPY ;SET WORDS 0-7 EXPD=RECV (NOT TESTING) :GET EXPECTED READ STATUS #T198FSTA ,R2 sGET RECV READ STATUS 2(R2) ,2(R1) RO #T198FR,R1 sSET EXPD WORD #9 = RECV (NOY TESTING) cHIGH RECV ADDRESS FOR CKMSG?2 sLOW RECV ADDRESS FOR CKMSG2 DATA, (R1) sSET EXPD WORD #8 = DATA TSVS = HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST 2: LOOPBACK READ/WRITE SIGNALS TEST 4423 054772 6624 054776 6425 055002 4426 055006 4427 055016 4428 055020 4429 055020 055020 055022 055024 055026 4430 055030 055030 4435 055032 4436 055036 4437 055042 4438 055046 4439 055052 4440 055066 4441 055070 4442 055072 4443 055072 055072 055074 055076 055100 4444 055102 4445 055106 055106 4446 055110 4447 055114 4448 055120 4449 055124 4450 055126 4451 055130 4452 055134 4453 055140 4456 055144 4455 055146 4456 055152 4457 055156 4458 055162 4459 055166 4460 055176 4461 055200 4462 055200 055200 055206 4463 055210 4464 055210 012702 012703 004737 060042 000022 011500 #T19EXP,R2 #18. ,R3 JSR PC,CKMSG2 FORCERROR 2028 ,NOTSSR 202%: 013742 2108: 104406 004737 012704 010465 004737 103407 010001 001473 060324 012046 005237 104406 004737 012701 012702 012221 011211 052711 062711 042711 005000 012701 012702 012703 004737 2128: 001474 061200 012350 106406 ¢EXPD ADDRESS ¢NUMBER OF BYTES TO COMPARE EgPD EQUAL RECV? BCS 2108 sBR IF YES ERRHRD ERRNO, T192(MP,MSGSUB cREPORT ERROR NEXT.ERRNO CKLOOP ;LOOP ON ERROR, TRAP .WORD WORD .WORD IF FLAG SET TRAP JSR PC,CHKTSSR FORCERROR 2128 8(Cs 2208 MOV RO,R1 NEXT.ERRNO 002222 CgERHRD 826 T199CMP MSGSUB cscLP1 ERRDF ERRNO,T193SSR,PKTSSR sWAIT FOR SSR TO SET c@3DFORCE ERROR IF FORCER=1 s8R IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP : 2208 062220 060062 062352 000020 000040 000200 827 .WORD PKTSSR TRAP cscLP1 FATFLG sSET FATAL ERROR FLAG <LOOP ON ERROR, IF FLAG SET JSR MOV MOV MOV MOV PC,T19SETEXP #TI19EXSTA,RI #TI19BFSTA R2 (R2)+,(R1)+ (R2), (R1) sSET WORDS 0-7 EXPD=RECV (NOT TESTING) sGET EXPECTED READ STATUS sGET RECV READ STATUS sSET EXPD WORD #8 = RECV TEMP ¢SET EXPD WORD #9 = RECV TEMP cSET EXP INPUT READY= 1 sSET EXP OUTPUT READY= 0 CLR MOV RO #T196FR,R1 MOV 232%: #S2. INRDY (R1) #S2. OUTRDV (R1) 052 DIM, (R1) #719EXP,R2 sSET EXP DATA IN MISS = 0 :HIGH RECV ADDRESS FOR CKMSG2 sLOW RECV ADDRESS FOR CKMSG2 EXPD ADDRESS ¢NUMBER OF BYTES TO COMPARE Eggb EQUAL RECV? MOV #20.,R3 JSR PC,CKMSG2 FORCERROR 232% ,NOTSSR BCS 2408 :BR IF YES ERRHRD sREPORT ERROR NEXT.ERRNO ERRNO,T196(CMP ,MSGSTAT TRAP .WORD .WORD 240%: T193SSR INC BIS BIC BIC 062332 060042 000024 011500 CSERDF .WORD .WORD 103404 1046456 SEQ 0231 Do a Write Subsystem READ STATUS If Input Ready NOT=1 Then Print Error [f Output Ready NOT=0 Then Print Error 1f Data In Miss NOT=0 Then Print Error JSR PC,T19SRD sSETUP PACKET FOR READ STATUS MOV #TI9PK2.RG sCET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE 061760 062460 000000 016336 104455 M MOV MOV 103404 104456 001472 061440 PAGE 116-4 (KLOOP ;LOOP ON ERROR, JWORD IF FLAG SET TRAP CSERHRD 828 T196(MP MSGSTAT cscLr TEST 8: SUBTEST 2: LOOPBACK READ/WRITE SIGNALS TEST 4465 4466 4467 055212 4468 055222 4469 055226 013703 020327 002316 003062 4471 055234 000137 054226 4470 055232 22;5 052340 103002 4474 055240 055240 s 055240 104403 4476 055242 4477 055246 4478 055250 005737 001402 004737 22;3 055254 4481 N FORCEXIT 255¢ MOV TSTPTR,R3 CMP R3,ATBLEND BHIS 255$: JMP 255$ 1008 ENDSUB SEQ 0232 ;aaD JRESTORE CURRENT TSTBLK POINTER JEND OF TSTBLK? :BR IF YES :DO ANOTHER TSTBLK PATTERN J/1//7/7777/7 END SUBTEST /777777777 £10070: TRAP 002222 017202 2608 : ST BEQ JSR FATFLG 2608 PC,CKDROP ;ANY FATAL ERRORS ? :BRANCH IF NOT cTRY TO DROP THE UNIT CSESUB ) [;SVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 PAGE 116-5 { TSVS - HARDWARE TESTS TEST 8: SUBTEST 3: MACRO M1113 25-MAY-82 09:19 PAGE 117 LOOPBACK WRITE STROBE TEST 2282 SEQ 0233 SBTTL 4485 TEST ; TEST 8: SUBTEST 3: 2238 ; SUBTEST DESCRIPTION: 4490 4491 4492 : : : 2232 : 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 s H : s : : : : : : : 4506 4507 This subtest verifies the Write Strobe loopback path can strobe data from the FIFO to the Data lines. The signal IRESV3 drives IWSTR (write strobe) to write data from the FIFO to the tape data out latch. TEST STEPS: : : 4508 4509 4510 451N 4512 REPEAT FOR ALL TEST PATTERNS IN TSTBLK TABLE BEGIN . Write to TSSR register to soft initialize the controller Do WRITE CHARACTERISTICS to check for Extended Features Switch if Extended Features Hardware Switch Clear then: Do Write Subs;stem Write Miscellaneous to Set Extended Features. Do WRITE CHARACTERISTICS to select reserved unit 7 and setup BUFFER Do a Write Subsystem WRITE NPR to set tape direction out and Loopback : : : : : 64513 64514 : : 4515 : 4518 055254 4520 4521 4522 4523 4526 8: SUBTEST 3: LOOPBACK WRITE STROBE TEST J4e 2239 4519 8 3 055254 055254 055256 055256 055262 055264 055266 055266 055270 055272 055274 4525 4526 055276 4527 055302 4528 055306 4529 055312 4530 055326 4531 055330 4532 055332 4533 055332 Do Do Do Do Do Do Do a a a a a a a WRITE NPR to set loopback and tape direction OUT WRITE FORMAT to set IRESV3==>IWSTR = 1 WRITE WRITE WRITE WRITE WRITE FIFO with byte count equal to 1 and Tape direction OUT FORMAT to set IRESV3==>IWSTR = 0 to load write data latch FORMAT to set IRESV3==>IWSTR = 1 NPR to set loopback and tape direction IN ) FIFO with byte count equal to 1 and Tape direction IN to strobe loopback data into FIFO. Do a READ FIFO with tape direction IN to read data It Data read from FIFO NOT= to Data sent Then Print Error BGNSUB 104402 004737 103405 010001 : 015774 104455 001474 003652 012034 005037 012706 004737 002222 062310 010662 5¢: : 10$: 103407 010001 128: s///171/777/77 BEGIN SUBTEST ///1/71717/ ) 18.3: L TRAP csBsus Write to TSSR register to soft initialize the controller JSR B(S MOV ERRDF cWRITE TO TSSR TO SOFT INITIALIZE ;BR IF SOFT INIT OKAY :SAVE CONTENTS OF TSSR sDEVICE FATAL DURING INIT TRAP (SERDF PC,SOFINIT 108 RO,R1 ERRNO,SFIERR,SFIMSG .WORD 828 LWORD SFIERR LMWCRD SFIMSG Do WRITE CHARACTERISTICS to check for Extended Features Switch CLR FATFLG sCLEAR FATAL ERROR FLAG )] #T19PACKET R4 sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR :DO WRITE CHARACTERISTICS COMMAND FORCERROR 12% +93DFORCE ERROR IF FORCER=1 B8CS 15$ ¢BR IF CARRY SET (GOOD RETURN) MOV RO.R1 sSAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T19SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SEY TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 8: SUBTEST 3: LOOPBACK WRITE STROBE TEST 055332 055340 4534 055342 4535 055346 055346 4538 055350 6539 055354 4540 055362 6541 055364 4542 055370 4543 055374 4544 055400 4545 055404 4546 055420 4547 055422 4548 055424 4549 055424 0556424 055426 055430 055432 4550 055434 4551 055440 055440 4552 4553 055442 4554 055446 4555 055452 4556 055466 4557 055470 4558 055472 4559 055472 055472 055474 055476 055500 4560 055502 4561 055506 055506 4564 055510 4565 055514 4566 055520 4567 055526 4568 4569 055532 4570 055536 4571 055542 4572 055546 4573 055552 4574 055556 4575 055562 PAGE 117-1 C SEQ 0234 104455 001475 060223 012046 005237 TRAP 002222 104406 012701 032761 001026 004737 012704 010465 004737 062332 000200 If Extended Features Hardware Switch Clear then: BIT BNE 062162 062460 000200 016336 JSR MOV MOV #X2.EXTF XST2(R1) 308 PC,T19SEXT #T19PK2 R4 R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 22% 22%: IF FLAG SET TRAP 002222 062310 010662 JSETUP PACKET FOR WRITE MISC INVERT JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET :39DFORCE ERROR IF FORCER=1 B8CS 308 :BR IF CARRY SET (GOOD RETURN) ERRDF ERRNO,T192SSR,PKTSSR MOV RO,R1 NEXT.ERRNO INC sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP : Do WRITE CHARACTERISTICS to select reserved unit 7 50$: 104406 002752 002312 177400 002316 000100 000000 016336 .WORD ;LOOP ON ERROR, IF FLAG SET . TRAP CSERDF 830 T192SSR PKTSSR CSCLP PV #T19PACKET R4 JSR PC,WRTCHR FORCERROR 42% ;GET THE ADDRESS OF COMMAND PACKET ;DO WRITE CHARACTERISTICS COMMAND ;@aDFORCE ERROR IF FORCER=1 MOV RO,R1 ;SAVE CONTENTS OF TSSR ERRDF ERRNO,T19SSR,PKTSSR 508 :BR IF CARRY SET (GOOv RETURN) NEXT.ERRNO INC CKLOOP FATFLG #TSTBLK,R3 BIC #2C<377> ,DATA L [0)] MOV .WORD .WORD .WORD ;LOOP ON ERROR, IF FLAG SET cGET FIRST PATTERN ADDRESS sGET A TEST PATTERN R3,TSTPTR JSETUP CURRENT TSTBLK POINTER #NP.LOOP,RO PC,T19SNPR #T19PK2,R4 MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 1028 CSERDF 831 T19SSR PKTSSR CSCLP IN TSTBLK TABLE (R3)+ ,DATA Do a WRITE NPR to set MOV #NP.OUT RO 8IS JSR TRAP ;SET FATAL ERROR FLAG TEST PATTERNS MOV MOV sDEVICE FATAL SSR FAILED TO SET TRAP REPEAT FOR ALL 002312 sSET FATAL ERROR FLAG CKLOOP 42$: 002222 FATFLG 30$: 8CS 1046455 CSCLP1 SEXTENDED FEATURES SWITCH SET? :BR IF YES .WORD - WORD 103407 010001 001477 060223 012046 005237 ;LOOP ON ERROR, . CSERDF 829 T19SSR PKTSSR Do Wrise Subsystem Write Miscellaneous to Set Extended Features. MOV #T198FR,R1 JMESSAGE BUFFER ADDRESS 000012 104406 012704 004737 sSET FATAL ERROR FLAG : : 104455 001476 005237 FATFLG CkLOOP 103407 010001 060260 012046 INC 15%: .WORD .WORD .WORD :DATA IS BYTE loopback and ta?e direction OUY ;SET TAPE DIRECTION OUT ;SET LOOPBACK JSETUP T19PK2 FOR WRITE NPR :GET WRITE SUBSYSTEM COMMAND PACKET *SET THE PACKET ADDRESS TO EXECUTE :WAIT FOR SSR TO SET ;@aDFORCE ERROR IF FORCER=1 TSVS = HARDWARE TESTS TEST 8: SUBTEST 3: 4576 055576 4577 055600 4578 055602 4579 055602 055602 104455 001500 060371 012046 005237 055700 104406 4598 055712 4599 055716 4600 055722 4601 055726 4602 055732 4603 055746 4604 055750 4605 055752 4606 055752 055752 055754 055756 055760 4607 055762 4608 055766 055766 4609 4610 055770 4611 055772 4612 055776 4613 056002 4614 056006 4615 056012 4616 056026 4617 056030 TEST 103407 010001 104455 001501 060612 012046 005237 4595 4596 055702 4597 055706 25-MAY-82 09:19 LOOPBACK WRITE STROBE 0556064 055606 055610 4580 055612 4581 055616 055616 4582 4583 055620 4584 0556246 4585 055630 4586 055634 4587 055640 4588 055644 4589 055660 4590 055662 4591 055664 4592 055664 0556664 055666 055670 055672 4593 055674 4594 055700 MACRO M1113 102$: 002222 104406 012700 004737 012704 010465 004737 000002 062142 062460 000000 016336 012700 012701 000001 002312 012704 010465 004737 062460 000000 016336 004737 005000 004737 012704 010465 004737 : 103407 010001 INC TRAP .WORD LWORD .WORD FATFLG CSERDF 832 T194SSR PKTSSR 1408 : FATFLG TRAP .WORD .WORD .WORD CSERDF 833 T198SSR PKTSSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CsCLP1 Do a WRITE FIFO with byte count equal to 1 and Tape direction OUT MOV #1,R0 SWRITE 1 BYTE MOV #DATA R1 sFIFO WRITE DATA ADDRESS JSR : 062142 062460 000000 016336 sDEVICE FATAL SSR FAILED TO SET CKLOOP 132%: 104406 INC CKkLOOP :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR 1208 : 062066 002222 8CS 1058 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T194SSR,PKTSSR SEQ 0235 112$: : 103407 010001 104455 001502 060434 012046 005237 0 sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP cscLPl Do a WRITE FORMAT to set IRESV3==>]WSTR = 1 MOV #WF . I3RES,RO s IRESV3==>1WSTR=1 JSR PC,T19WFMT JSETUP T9PK2 FOR WRITE FORMAT MOV #TI19PK2 R4 sGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR sWAIT FOR SSR TO SET FORCERROR 112¢% -80DFORCE ERROR IF FORCER=1 8CS 1208 ¢BR IF CARRY SET (GOOD RETURN) MOV RO,R1 sSAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T198SSR,PKTSSR JDEVICE FATAL SSR FAILED TO SET 1058: 103407 010001 002222 PAGE 1172 PC.T1§HFIF MOV #T19PK2,R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 132% 8CS 140% MOV RO,R1 NEXT.ERRNO _ ERRDF ERRNO,T195SSR,PKTSSR INC CxLOOP FATFLG JSETUP T19PK2 FOR WRIVE FIFO sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET @8DFORCE ERROR [F FORCER=1 sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD .WORD .WORD 834 T195SSR PKTSSR TRAP CSCLP sSET FATAL ERROR FLAG ;LOOP ON ERROR, [F FLAG SET Do @ WRITE FORMAT to set IRESV3==>IWSTR = (0 CLR RO ;SET JRESV3==>1WSTR=0 JSR PC,T19WFMT sSETUP T9PK2 FOR WRITE FORMAT MOV #T19PK2 R4 ;GET WRITE SUBSYSTEM COMMAND PACKET MoV R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 152% ;88DFORCE ERROR ]F FORCER=1 BCS 160$ :BR IF CARRY SET (GOOD RETURN) MOV RO,R1 :SAVE CONTENTS OF TSSR [ TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 8: SUBTEST 3: LOOPBACK WRITE STROBE TEST 4618 056032 4619 056032 056032 056034 056036 056040 4620 056042 4621 056046 056046 4622 4623 056050 4624 056054 4625 056060 4626 056064 4627 056070 4628 056074 4629 056110 4630 056112 4631 056114 4632 056114 056114 056116 056120 056122 4633 056124 4634 056130 056130 4637 056132 4638 056134 4639 056140 4640 056144 4641 056150 4642 056154 4643 056160 4644 4645 4646 4647 056174 056176 056200 056200 056200 056202 056204 056206 4648 056210 4649 056214 056214 4650 4651 056216 4652 056222 4653 056226 4654 056232 4655 056236 4656 056242 4657 056246 4658 056262 4659 056264 152%: 104455 001503 060612 012046 005237 002222 005237 000002 062142 062460 000000 016336 002222 Do a WRITE FORMAT to set 010001 FATFLG TRAP sSET FATAL ERROR FLAG .WORD ;LOOP ON ERROR, IF FLAG SET TRAP JRESV3==>IWSTR = 1 MOV JSR MOV [ []" JSR #WF . I3RES,RO PC,TI1OWFMT #TI9PK2 R4 R4, TSDB(RS) PC,CHKTSSR 8CSs 180¢ ERRDF ERRNO,T198SSR,PKTSSR FORCERROR 1808 : H 000040 062022 062460 000000 016336 172% MOV RO.R1 NEXT.ERRNO INC CKLOOP 000001 002312 062066 062460 000000 016336 PKTSSR cscLP1 ;@8DFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) TSSR JDEVICE FATAL SSR FAILED TO SET TRAP sSET FATAL ERROR FLAG ;LOOP ON ERROR, -WORD IF FLAG SET TRAP CSERDF 836 T198SSR PKTSSR cscLP Do a WRITE NPR to set loopback and tape direction IN CLR RO JCLR NP.OUT TO SET TAPE DIRECTION IN 8IS JSR MOV MoV JSR #NP.LOOP,RO PC.T19SNPR #TI9PK2 R4 R4, TSDB(RS) PC,CHKTSSR JSET LOOPBACK :SETUP TI9PK2 FOR WRITE NPR JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET 8CS 190% :BR IF CARRY SET (GOOD RETURN) 182% :@8DFORCE ERROR IF FORCER=1 MOV RO,.R1 JSAVE CONTENTS OF TSSR ERRDF ERRNO,T194SSR,PKTSSR JDEVICE FATAL SSR FAILED TO SET NEXT.ERRNO TRAP -WORD .WORD 002222 CSERDF 835 T198SSR ;IRESV3==>1WSTR=1 JSETUP T9PK2 FOR WRITE FORMAT JGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET JSAVE CONTENTS OF FATFLG FORCERROR 1828%: 104406 103407 sDEVICE FATAL SSR FAILED TO SET .WORD .WORD 104455 001505 012700 012701 004737 012704 010465 004737 ERRNO,T198SSR,PKTSSR : 103407 010001 060371 012046 005237 ERRDF 1608: 1728: 104406 005000 052700 004737 012704 010465 004737 SEQ 0236 NEXT.ERRNO INC CkLOOP 103407 010001 104455 001504 060612 012046 E .WORD .WORD 104406 012700 004737 012704 010465 004737 PAGE 117-3 .WORD PKTSSR TRAP cscLpm 1908 : INC CKLOOP H Do a WRITE FIFO with byte count equal to 1 and Tape direction IN FATFLG CSERDF 837 T194SSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET MOV #1,R0 HRITE 1 BYTE JSR MOV MOV PC,TIOWFIF 0T19PK2 R4 R4, TSDB(RS) :SETUP T19PK2 FOR WRITE FIFO JGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE MOV JSR lDATA R1 PC,CHKTSSR JWAIT FOR SSR TO SETY 2108 :BR IF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR FORCERROR 8CS MOV JFIFO WRITE DATA ADDRESS RO,R1 2028 :@aDFORCE ERROR IF FORCER=1 — TSVS -~ HARDWARE TESTS TEST 8: SUBTEST 3: MACRO M1113 25-MAY-82 09:19 LOOPBACK WRITE STROBE 4660 056266 4661 056266 056266 056270 056272 056274 4662 056276 4663 056302 056302 4664 4665 056304 4666 056310 4667 056314 4668 056320 4669 056324 4670 056330 4671 056344 4672 056346 4673 056350 4674 056350 056350 056352 056354 056356 4675 056360 4676 056364 056364 4677 4678 056366 4679 056372 4680 056376 4681 056402 4682 056406 4683 056414 4684 056416 4685 056422 4686 056426 4687 056432 4688 056436 4689 056446 4690 056450 4&E91 056450 056450 056452 056454 056456 4692 056460 056460 4693 4694 4695 056462 4696 056472 4697 056476 4698 056502 4699 056504 2;8? 056510 104455 001506 060434 012046 005237 002222 104406 012700 004737 012704 010465 004737 TEST 2108: INC CKLOOP FATFLG 230s: 104406 004737 012701 012702 0137 016261 005000 012701 012702 012703 004737 062220 060062 062352 P 000002 . 000002 062332 060042 000022 011500 103404 2428%: 104456 001510 061523 013742 2508: 104406 013703 020327 002316 003062 000137 055514 103002 NEXT.ERRNO ERRNO, T195SSR,PKTSSR 2228: 002222 SEQ 0237 ERRDF 103407 010001 104455 001507 060500 012046 005237 F 202$: : 000001 062046 062460 000000 016336 PAGE 117-4 TRAP .WORD .WORD .WORD CSERDF 838 T195SSR PKTSSR ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET ) ) ) TRAP CSCLP1 Do a READ FIFO with tape direction IN to read data MOV #1,R0 JSET READ BYTE COUNT JSR PC,TI9RFIF sSETUP T19PK2 FOR READ FIFO MOV #T19PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) JSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 222% ;88DFORCE ERROR IF FORCER=1 BCS 2308 :BR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T196SSR,PKTSSR JDEVICE FATAL SSR FAILED TO SETV TRAP CSERDF .WORD 839 .WORD T196SSR .WORD PKTSSR INC FATFLG JSET FATAL ERROR FLAG CKLOOP sLOOP ON ERROR, IF FLAG SET . TRAP CsCLP It Data read from FIFO NOT= to Pata sent Then Print Error JSR PC,T19SETEXP SET WORDS 0=7 EXPD=RECYV (NOT TESTING) MOV #T19EXSTA R ;GET EXPECTED READ STATUS MOV #T19BFSTA ,R2 sGET RECV READ STATUS MoV DATA, (R1) JSET EXPD WORD #8 = DATA MOV 2(R2),2(R1) CLR RO MOV #T198FR,R1 MOV #T19EXP.R2 MOV #18. .R3 JSR PC,CKMSG2 FORCERROR 2428 ,NOTSSR B8CS 2508 NEXT.ERRNO ERRHRD ERRNO,T19WSTR,MSGSUB CKLOOP sSET EXPD WORD #9 = RECV (NOT TESTING) JHIGH RECV ADDRESS FOR CKMSG2 ;LOW RECV ADDRESS FOR CKMSG?2 sEXPD ADDRESS JNUMBER OF BYTES TO COMPARE JEXPD EQUAL RECV? casb :BR IF YES JREPORT ERROR TRAP .WORD .WORD .WORD ;LOOP ON ERROR, IF FLAG SET TRAP FORCEXIT 255% MOV TSTPTR,R3 CMP R3,#TBLEND ;aaD JRESTORE CURRENT TSTBLK POINTER :END OF TSTBLK? JMP ;D0 ANOTHER TSTBLK PATTERN BHIS 255%: JDEVICE FATAL SSR FAILED TO SET 255s 1008 :BR IF YES CSERHRD 840 T19WSTR MSGSUB CSCLP TSVS = HARDWARE TESTS TEST 8: SUBTEST 3: 4702 056510 056510 4703 056510 4704 4705 4706 4707 056512 056516 056520 056524 MACRO M1113 25-MAY-82 09:19 LOOPBACK WRITE STROBE TEST PAGE 117-5 SEQ 0238 ENDSUB /11777177777 END SUBTEST /77711171717 L10071: 104403 005737 001402 004737 6 TRAP 002222 017202 2608$: TST BEQ JSR FATFLG 260$ PC,CKDROP sANY FATAL ERRORS ? sBRANCH IF NOT :TRY TO DROP THE UNIT C$SESUB — TSVS = HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST & LOOPBACK READ STROBE 4709 4710 471 6712 713 6714 6715 6716 4717 4718 4719 4720 4721 4722 4723 4724 4725 6726 4727 4728 4729 4730 473 4732 4733 6734 4735 4736 4737 4738 4739 4740 “7461 4742 4743 4744 056524 056524 056524 4745 4746 056526 4747 056526 4748 056532 4749 056534 4750 056536 056544 4751 4752 056546 4753 056552 64754 056556 4755 056562 4756 056576 4757 056600 4758 056602 4759 056602 TEST .SBTTL PAGE 118 TEST SEQ 0239 8: SUBTEST 4 LOOPBACK READ STROBE TEST a4 s TEST 8: SUBTEST &: This subtest verifies the Read Strobe loopback path can strobe the data from the Data lines to the FIFO. The srgnal IRESV4 drives IRSTR (read strobe) from the data lines to the FIFO. RESEeINFOR ALL TEST PATTERNS IN TSTBLK TABLE LB TR YR FE TR FE FE FE FE 104402 004737 103405 010001 015774 005037 012704 004737 §s.: Write to TSSR register to soft initialize the controller BGNSUB s//1//7/7/77/ BEGIN SUBTEST /777111777 Do WRITE CHARACTERISTICS to check for Extended Features Switch I1f Extended Features Hardware Switch Clear then: Do Write Subs¥stem Write Miscellaneous to Set Extended Features. Do WRITE CHARACTERISTICS to select reserved unit 7 and setup BUFFER Do a Write Subsystem WRITE NPR to set tape direction out and Loopback Do a WRITE NPR to set loopback and tape direction OUT Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 . Do a WRITE FIFO with byte count equal to 1 and Tape direction OUT Do a READ FIFO with tape direction OUT to load tape out write latch Do a WRITE NPR to set loopback and tape direction IN Do a WRITE FORMAT to set IRESV4==>IRSTR = 0 to write loop data to FIFO Do a2 a WRITE FORMAT to set IRESV4==>IRSTR = (to_strobe loopback data into FIFO.) Do a READ FIFOQ with tape direction IN to read data ENle Data read from FIFO NOT= to Data sent Then Print Error Write to TSSR register to soft . . initialize the controller JSR PC,SOFINIT JWURITE TO TSSR TO SOFT INIVIALIZE MOV RO,R1 ;SAVE CONTENTS OF B8CS ERRDF 1046455 001510 003652 012034 to write TEST STEPS: FEFE YR FE FE YRFE FE YR FE TR FE FI PN PN TN PN PN PN Y SUBTEST DESCRIPTION: 108 ERRNO,SFIERR,SF IMSG o " TRAP :BR IF SOFT INIT OKAY TSSR JDEVICE FATAL DURING INIT TRAP .WORD 002222 062310 010662 . 10$: .WORD .WORD Do WRITE CHARACTERISTICS to check for Extended Features Switch CLR FATFLG MOV #T19PACKET R4 BCS MOV 15% RO,R1 ERRDF ERRNO,T19SSR,PKTSSR JSR PC,WRTCHR FORCERROR 12% 103407 010001 12%: NEXT.ERRNO ($BSUB CSERDF 840 SFIERR SFIMSG JCLEAR FATAL ERROR FLAG JGET THE ADDRESS OF COMMAND PACKET ;00 WRITE CHARACTERISTICS COMMAND s@38DFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAJLED TO SET TSVS - HARDWARE TESTS TEST 8: 056610 4760 056612 4761 056616 056616 056620 056624 056632 056634 4768 056640 4765 056644 4770 056650 4771 056654 4772 056670 4773 056672 4774 056674 4775 056674 056674 056676 056700 056702 4776 056704 4777 056710 056710 4778 4779 056712 4780 056716 4781 056722 4782 056736 4783 056740 4784 056742 4785 056742 056742 056744 104455 001511 060223 012046 005237 012701 032761 001026 004737 012704 010465 004737 TEST 002222 15%: 005237 062332 000200 INC CKLOOP BIT BNE JSR 000012 062162 062460 000000 016336 SEQ 0240 8CSs MOV 22$: 30$: TRAP cscLPY 062310 010662 SEXTENDED FEATURES SWITCH SET? :BR IF YES ¢SETUP PACKET FOR WRITE MISC INVERT 308 sBR IF CARRY SET (GOOD RETURN) RO,R1 NEXT.ERRNO ERRDF ERRNO,T192SSR,PKTSSR INC (kKLOOP FATFLG ¢GET WRITE SUBSYSTEM COMMAND PACKET sSET _THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET :83DFORCE ERROR IF FORCER=1 sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF sSET FATAL ERROR FLAG 42%: .WORD sLOOP ON ERROR, IF FLAG SET MOV #TI19PACKET R4 TRAP 8CS 50% ERRDF ERRNO,T19SSR,PKTSSR ;SAVE CONTENTS OF TSSR cDEVICE FATAL SSR FAILED 7O SET TRAP WORD .WORD 50%: 056756 056760 056764 056770 056776 002752 057002 057006 057012 057016 057022 057026 057032 000100 000040 002316 000000 016336 c 002312 FATFLG REPEAT FOR ALL 1008: MOV MOV BIC MOV #4C<377>,DATA R3,TSTPTIR Do a WRITE NPR to set MOV #NP.OUT,RO BIS JSR #NP.LOOP,RO PC,TT9SNPR MOV R&, TSDB(RS) MOV #1i9PK2, R4 JSR PC.CHKTSSR FORCERROR 1028 CSERDF 843 T19SSR .WORD PKTSSR TRAP CS$CLPY sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TEST PATTERNS #TSTBLK,R3 (R3)+,DATA cscePl :BR IF CARRY SET (GOOv RETURN) MOV RO.R1 NEXT.ERRNO INC (KLoOP PKTSSR ;DO WRITE CHARACTERISTICS COMMAND ;@88DFORCE ERROR [F FORCER=1 001513 002222 842 T192SSR sGET THE ADDRESS OF COMMAND PACKET JSR PC,WRTCHR FORCERROR 42% 104455 PKTSSR #X2.EXTF XST2(R1) 308 PC.T19SEXT Do WRITE CHARACTERISTICS to select reserved unit 7 103407 010001 004737 .WORD .WORD .WORD .WORD 002222 CSERDF 841 T19SSR .WORD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET FATFLG MOV #T19PK2 R4 MOV R4 ,TSDB(RS) JSR PC,CHKTSSR FORCERROR 228 104406 012704 004737 l 1f Extended features Hardware Switch Clear then: Do Write Subsystem Write Miscellaneous to Set Extended Features. MOov #T198FR,R1 cMESSAGE BUFFER ADDRESS 103407 010001 104455 001512 060260 012046 PAGE 118-1 TRAP 104406 4786 056752 4787 056756 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 25~MAY-82 09:19 SUBTEST 4 LOOPBACK READ STROBE 056602 4764 64765 4766 4767 MACRO M1113 IN TSTBLK TABLE sGET FIRST PATTERN ADDRESS sGET A TEST PATTERN *DATA IS BYTE :SETUP CURRENT TSTBLK POINTER loopback and ta?e direction QUT :SET TAPE DIRECTION OUT :SET LOOPBACK SSETUP T19PK2 FOR WRITE NPR :GET WRITE SUBSYSTEM COMMAND PACKET :SET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET ;8aDFORCE ERROR If FORCER=1 TSVS = HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST 4 LOOPBACK READ STROBE TEST 4802 057046 4803 057050 4804 057052 4805 057052 057052 057054 057056 057060 4806 057062 4807 057066 057066 4808 4809 057070 4810 057074 4811 057100 4812 057104 4813 057110 4814 057114 4815 057130 4816 057132 4817 057134 4818 057134 057134 057136 057140 057142 4819 057144 4820 057150 057150 4821 4822 057152 4823 057156 4824 057162 4825 057166 4826 057172 4827 057176 4828 057202 4829 057216 4830 057220 4831 057222 4832 057222 057222 057224 057226 057230 4833 057232 4834 057236 057236 4835 4836 057240 4837 057244 4838 057250 4839 057254 4840 057260 4841 057264 4862 057300 4843 057302 163407 010001 1028 : 104455 001514 060371 012046 005237 002222 105$: 000001 062142 062460 000000 016336 ERRNO,T194SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET sSAVE CONTENTS OF TSSR TRAP INC (KLOOP .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET FATFLG TRAP PC,TI19WFMT 002222 1208 : JGET WRITE SUBSYSTEM COMMAND PACKET ;SET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET BCS 1208 sBR IF CARRY SET (GOOD RETURN) 112% ;88DFORCE ERROR IF FORCER=1 MOV RO,R1 NEXT.ERRNO ERRDF sSAVE CONTENTS OF ERRNO,T198SSR,PKTSSR TSSR sDEVICE FATAL SSR FAILED TO SET INC CkLooOP FATFLG MOV sLOOP ON ERROR, IF FLAG SET #1,R0O . TRAP #DATA R1 MOV #T19PK2 R4 104406 1408 : CkLoopP PC,T1OWFIF 016336 CSCLP to 1 and Tape direction OUT ;SETUP T19PK2 FOR WRIIE FIFO JGET WRITE SUBSYSTEM COMMAND PACKET ;JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET :@8DFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF FATFLG sSET FATAL ERROR FLAG .WORD 846 T195SSR PKTSSR ;LOOP ON ERROR, IF FLAG SET . 000001 062046 062460 000000 PKTSSR sFIFO WRITE DATA ADDRESS MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 132% 8CS 1408 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T195SSR,PKTSSR INC CSERDF 845 T198SSR JWRITE 1 BYTE MOV JSR .WORD ;SET FATAL ERROR FLAG WORD WORD 002222 CSCLP JSETUP T9PK2 FOR WRITE FORMAT Do a WRITE FIFO with byte count equal 132%: PKTSSR #TI9PK2 R4 R4, TSDB(RS) PC,CHKTSSR ) 000001 002312 062066 062460 000000 016336 CSERDF 844 TI194SSR MOV MOV JSR .WORD .WORD 104455 103407 010001 ERRDF FORCERROR 103407 010001 012700 004737 012704 010465 004737 s8R IF CARRY SET (GOOD RETURN) TRAP 104406 001516 060434 012046 005237 105% MOV RO,R1 NEXT.ERRNO JSR 1128: 104455 012700 012701 004737 012704 010465 004737 BCS Do a WRITE FORMAT to set IRESV4==>]RSTR = 1 MOV #WF . I4RES RO JIRESV4==>]RSTR=1 103407 010001 001515 060612 012046 005237 SEQ 0241 WORD JWORD 104406 012700 004737 012704 010465 004737 J PAGE 118-2 . . TRAP (SCLP1 Do a READ FIFO with tape direction OUT to load tape out write latch MoV #1,R0 cSET READ BYTE COUNT JSR PC,TI9RFIF JSETUP T19PK2 FOR READ FIFO MOV #T19PK2 R4 ;JGET WRITE SUBSYSTEM COMMAND PACKET MOV R4,TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 152% ;88DFORCE ERROR [F FORCER=1 8(CS MOV 160% RO.R1 :BR IF CARRY SET (GOOD RETURN) JSAVE CONTENTS OF TSSR - — TSVS = HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST & LOOPBACK READ STROBE 4844 057304 4845 057304 057304 057306 057310 057312 4846 057314 4847 057320 057320 (848 4849 (057322 <850 057324 4851 057330 4852 057334 4853 057340 4854 057346 4855 057350 4856 057364 4857 057366 4858 057370 4859 057370 057370 057372 057374 057376 4860 057400 4861 (057404 057404 4862 4863 057406 4864 057410 4865 057414 4866 057420 4867 057424 4868 057430 4869 057444 4870 0S7446 4871 057450 4872 057450 057450 057452 057454 057456 4873 057460 4874 057464 057464 4875 4876 057466 4877 057472 4878 057476 4879 057502 4880 057506 4881 057512 4882 057526 4883 057530 4884 057532 4885 057532 104455 001517 060500 012046 005237 002222 104406 005000 052700 004737 012704 01046S 004737 TEST 005237 JDEVICE FATAL SSR FAILED TO SET 1608%: INC CKLOOP JSET FATAL ERROR FLAG ;LOOP ON ERROR, JF FLAG SET 005000 004737 012704 010465 004737 012700 004737 012704 010465 004737 2028%: 000001 062142 062460 000000 016336 CS$CLPI TRAP .WORD .WORD .WORD CSERDF 848 T194SSR PKTSSR TRAP cscLP INC CKLOOP 062142 062460 000000 016336 104406 TRAP 190%: : 002222 CSERDF 847 T196SSR PKTSSR 182%: 103407 010001 104455 001521 060612 012046 005237 FATFLG TRAP .WORD .WORD .WORD Do a WRITE NPR to set loopback and tape direction IN CLR RO sCLR NP.OUT TO SET TAPE DIRECTION IN 8IS #NP.LOOP,RO JSET LOOPBACK JSR PC,T19SNPR JSETUP T19PK2 FOR WRITE NPR MOV #TI9PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET MOV R4 ,TSDB(RS) JSET THE PACKET ADDRESS TO EXECUTE JSR PC,CHKTSSR JWAIT FOR SSR TO SET FORCERROR 182% :@3DFORCE ERROR IF FORCER=1 8CS 1908 ;BR IF CARRY SET (GOOD RETURN) MOV RO,R1 ;SAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO, T194SSR,PKTSSR JDEVICE FATAL SSR FAILED TO SET 000040 062022 062460 000000 016336 104406 SEQ 0242 152%: : 002222 K NEXT.ERRNO ERRDF ERRNO,T196SSR,PKTSSR 103407 010001 104455 001520 060371 012046 PAGE 118-3 2108: N 103407 010001 222%: FATFLG ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET Do a WRITE FORMAT to set JRESV4==>]RSTR = 0 CLR RO JSET IRESV4==>]RSTR=0 JSR PC,T19WFMT MOV #T19PK2 R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 202% BCS 2108 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T198SSR,PKTSSR INC CkLOOP FATFLG :SETUP T9PK2 FOR WRITE FORMAY JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@aDFORCE ERROR IF FORCER=1 :BR IF CARRY SET (GOOD RETURN) JSAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD :SET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TRAP CSERDF 849 T198SSR PKTSSR CsCLP Do a WRITE FORMAT to set IRESV&==>IRSTR =1 MOV #WF . J4RES RO ;IRESV4==>IRSTR=1 JSR PC,TI9WFMT JSETUP T9PK2 FOR WRITE FORMAT MOV #T19PK2 R4 JGET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 222% 8CS 2308 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T198SSR,PKTSSR JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET :8aDFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) JSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET — TSVS = HARDWARE TESTS TEST 8: 25-MAY-82 09:19 SUBTEST 4 LOOPBACK READ STROBE 057532 057534 057540 4886 057542 4887 057546 057546 4888 4889 057550 4890 057554 4891 057560 4892 057564 4893 057570 4894 057574 4895 057610 4896 057612 4897 057614 4898 057614 057614 057616 057620 057622 4899 057624 4900 057630 005237 012700 004737 012704 010465 004737 106455 001523 060500 012046 005237 4909 057666 4910 057672 4911 057676 057714 057716 057720 057722 4916 057724 057724 4917 4918 4919 057726 4920 057736 4921 057742 4922 057746 4923 057750 4924 057754 4925 4926 057754 057754 2308: L SEQ 0243 000001 062046 062460 000000 016336 FATFLG MOV #TI19PK2 R4 B8CS 290$ ERRDF ERRNO,T196SSR,PKTSSR MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 2828 282%: PKTSSR TRAP cscLP sSET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG SET MOV RO,R1 NEXT.ERRNO JGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@9DFORCE ERROR IF FORCER=1 :BR ]F CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAJLED TO SET TRAP 002222 290$: 062220 060062 JSR MOV MOV 062352 002312 000002 MOV 000002 FATFLG PC, T19SETEXP #TI9EXSTA,R1 #T19BF STA.R2 DATA, (R1) MOV 2(R2),2(R1) CLR RO MOV #T198FR,R1 MOV #T19EXP.R2 MOV #18..R3 JSR PC,CKMSG2 FORCERROR 302$ ,NOTSSR 062332 060042 000022 011500 3028: 104456 INC CKLOOP ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF .WORD .WORD .WORD FLAG SET TRAP 1f Data read from FIFO NOT= to Data sent Then Print Error 103404 SEXPD ADDRESS :NUMBER OF BYTES TO COMPARE SEXPD EQUAL RECV? saaD 3108 ‘BR IF YES ERRHRD ERRNO,T19RSTR,MSGSUB :;REPORT ERROR 104406 002316 003062 056764 355¢: CKLOOP :LOOP ON ERROR, .WORD IF FLAG SET TRAP FORCEX]T 355¢ MOV TSTPTR.R3 ;aaD SRESTORE CURRENT TSTBLK POINTER 8HIS ‘BR IF YES CMP R3,#TBLEND JMP 1008 ENDSUB 355$ CscLP :SET EXPD WORD #9 = RECV (NOT TESTING) :HIGH RECV ADDRESS FOR CKMSG2 ;LOW RECV ADDRESS FOR CKMSG2 .WORD -WORD 3108: 851 T196SSR PKTSSR *SET EXPD WORD #8 = DATA BCS NEXT.ERRNO CSERDF ;SET WORDS 0=7 EXPD=RECV (NOT TESTING) :GET EXPECTED READ STATUS *GET RECV READ STATUS TRAP 001524 061630 013742 013703 020327 103002 000137 INC ckLoop CSERDF 850 T198SSR TRAP .WORD .WORD .WORD Do a READ FIFO with tape direction IN to read data MOV #1,R0 JSET READ BYTE COUNT JSR PC,TI9RFIF JSETUP T19PK2 FOR READ FIFO 103407 010001 004737 012701 012702 013711 016261 005000 012701 012702 012703 004737 057702 057712 057714 057714 002222 104406 104406 4901 4902 057632 4903 057636 4904 057642 4905 057646 4906 057652 4907 057660 4908 057662 TEST PAGE 118-4 166455 057630 4912 4913 4914 4915 MACRO M1113 CSERHRD 852 T19RSTR MSGSUB CSCLPY SEND OF TSTBLK? :DO ANOTHER TSTBLK PATTERN s/11111111111 END SUBTEST 7771111111 L10072: — TSVS ~ HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 8: SUBTEST 4 LOOPBACK READ STROBE TEST 057754 104403 4928 057756 4929 057762 4930 057764 005737 001402 004737 927 4931 057770 4932 4933 057770 057770 057772 4934 4935 104432 002602 PAGE 118-5 M SEQ 0244 TRAP 002222 017202 360$: C$ESUB TST BEQ JSR PC,CKDROP sTRY TO DROP THE UNIT EXIT TST /117111777 EXIT TEST /1777777777 TRAP CSEXIT .WORD L10066~. FATFLG 3609 sANY FATAL ERRORS ? :BRANCH IF NOT e TSVS = HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST & LOOPBACK READ STROBE TEST (937 4938 PAGE 119 SEQ 0245 X :LOCAL STORAGE FOR THIS TEST 2325 057774 000000 T19PREV: b .WORD 4 0 ;DRIVE SIGNAL 1-0 TRANSITION FLAG 4943 4944 ¢ LOOPBACK DRIVE SIGNAL TABLE ¢ THIS TABLE IS USED BY T19CNVT TO SETUP 4947 : WRITE CONTROL SIGNALS ARE OF FORM W(C.XXX 2322 ¢ A DRIVE PATTERN FROM THE TEST DATA INPUT PATTERN. 2323 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 ¢ WRITE FORMAT SIGNALS ARE OF FORM WF.XXXX 057776 057776 060000 060002 060004 060006 060070 060012 060014 060016 060020 060022 060024 060026 060030 4965 060032 2329 060034 4968 060036 4969 4970 060036 4971 060037 4972 060040 23;2 060041 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 060042 060042 060044 060046 060050 060052 060054 060056 060060 060062 T19BFCTL: 000001 000002 000004 WC. IRWU 000010 002000 000040 000100 000200 004000 010000 020000 040000 100000 000000 WC. IREW WF . JERASE+256. WC.I1TAD WC.I0TAD WC.IFAD WF.JIEDIT*256. WF . IWFM*256, WF . JIREV*256. WF . IWRT*256, WF . IHISP*256, .WORD 0 000000 000000 WORD WORD 377 037 360 .BYTE BYTE BYTE 000 .BYTE T19EXP: 000000 000000 000000 000000 000000 000000 000000 000000 WORD .WORD .WORD .WORD .WORD WORD WORD .WORD T19EXSTA: .BLKB T19EXEND : s ¢ 4,987 4989 O 0 T19MSK : 2832 060162 4990 4991 4992 4993 WC.160 WC.IFEN ~(<000> “(<340> ~(<017> O 0 0 0 0 0 0 O 0 64. ;WRITE CONTROL DRIVE SIGNALS :160==>FPT DATA<O> s IFENs=>]FBY DATALI> : IRWU==>IRWD DATA<2> s IREW==>1DBY DATA<3> sIFAD==>ILDP DATA<SL> sITAD1==>ICNL DATA<S> ;ITADO==>IRDY DATA<6> s IERASE==>SPEED DATAL7> sIEDIT==>IHER DATA<8> : IWFM==> [ FMK DATA<9> ;IREV==>ICER DATA<10> :IWRT==>IIDENT DATA<I1> sIHISP==>1EOT DATA<12> s IRESV2 (UNUSED)DATA<13> s IRESV1 (UNUSED)DATA<14> cPARERR (UNTESTED)DATA<1IS5> sMASK OF UNTESTED BITS IN READ STATUS BYTES sUNTESTED BITS ARE SEi T0 1 ;BYTE 0 MASK sBYTE 1 MASK (PARERR,IRESVZ2, IRESV1) ;BYTE 2 (TIMER A,TIMER B,UNDEF INED<1:0>) JMAKE IT EVEN ;BEGIN EXPECTED DATA BUFFER sMESSAGE TYPE ;DATA FIELD LENGTH :RBPCR JXSTO $XST1 JXST2 JXST3 sXST4 (ALWAYS PRESENT FOR WRITE SuB.) ;EXPECTED READ STATUS AND WRITE FIFO DATA ;END EXPECTED DATA BUFFER sLOCAL TEXT MESSAGES FOR TEST 060162 060223 060260 060324 124 127 127 127 162 122 122 122 141 111 111 111 3 TST191D: T19SSR: .ASCIZ T192SS . ASCIZ R: T193SSR:.ASCIZ .ASCIZ ‘'Transport Bus Interface Loopback' ‘WRITE CHARACTERISTICS Failed® ‘'WRITE SUBSYSTEM (Write Misc) Failed' ‘'WRITE SUBSYSTEM (Read Status) Failed' TSVS - HARDWARE TESTS nd b D d o d o d d 5000 060742 5001 061036 5002 061124 5003 061200 5004 061263 5005 061351 5006 061440 5007 061523 5008 061630 5009 5010 501 5012 5013 5014 5015 061734 5016 061734 5017 061740 5018 061744 5019 061750 5020 061752 5021 061754 5022 061756 ed e 060371 060434 060500 060543 060612 060660 ad o 4996 4995 4996 4997 4998 4999 25-MAY-82 09:19 SUBTEST & LOOPBACK REAC STROBE TEST - =2 PO ONO NN ONINININD nN S NOWS OISO NNV ~ 8: b TEST MACRO M1113 PAGE 119-1 8 SEQ 0246 122 122 122 122 122 111 111 111 111 111 T194SSR:.ASCIZ T195SSR:.ASCIZ T196SSR:.ASCIZ T197SSR:.ASCIZ T198SSR:.ASCIZ °'WRITE 'WRITE ‘'WRITE 'WRITE ‘'WRITE 145 141 145 m 141 157 145 157 157 141 160 141 106 160 156 141 157 157 T192(MP: ASCIZ T193(MP:.ASCIZ T195CMP: . ASCIZ ‘'Read FIFO Data not equal to Write FIFO , Data is in WORD #8° ‘'Tape Status 2 (in WORD #8) Incorrect after RESET TAPE' ‘Read FIFO Data not equal to Write FIFO Data’ °FIFO Status (in WORD #9) Incorrect after READ FIFO' ‘'Tape Status 2 (in WORD #8) Incorrect after RESET TAPE' ‘Control Signal Loocback Data Error, Data is in WORD #8° 'Read/Write Loopback Data Error, Data is in WORD #8° ) ‘Loopback Data Error when strobed by Write strobe, Data is in WORD #8° ‘Loopback Data Error when strobed by Read Strobe, Data is in WORD #8' m 106 T191CMP: . ASCIZ T196CMP:.ASCIZ T197CMP:.ASCIZ T198(MP: . ASCIZ T199CMP: . ASCIZ TI9WSTR:.ASCIZ T19RSTR:.ASCIZ SUBSYSTEM SUBSYSTEM SUBSYSTEM SUBSYSTEM SUBSYSTEM (Write Npr) Failed' (Write FIFO) Fajiled® (Read FIFO) Failed' (Write Control) Failed’ (Write Format) Failed' = = 'FIFO Status in WORD #9 Incorrect after Initialize' .EVEN .4 ; CLEAR MESSAGE BUFFER T19CLRBUF : 062332 000120 SAVREG 108: ; MoV MOV #T198FR,R1 #T19BEND-T19BFR,R2 RTS PC CLR8 DEC BGT (R1)+ R2 108 sSAVE R1=R5 UNTIL NEXT RETURN ;GET MESSAGE BUFFER ADDRESS ;SIZE OF MESSAGE BUFFER IN BYTES sCLEAR A BYTE :DONE? :BR_IF NO sRETURN . é : SETUP T19PK2 PACKET FOR READ STATUS 5027 061760 5028 061760 5029 061764 5030 061770 5031 061774 503% 061776 061734 062470 000005 T19SRD: JSR Mov MOVB CLRB RTS PC, T19CLRBUF #T190T2,R0 #PW.RDSTATUS, (RO) ¢ (RO) PC sCLEAR SWRITE sSTORE ;CLEAR sRETURN MESSAGE BUFFER SUBSYSTEM DATA BUFFER READ STATUS COMMAND IN BSELO BSEL1 .t ; 5037 062000 5038 062000 5039 062004 5040 062010 5041 062014 SOL% 062020 061734 062470 000010 000030 SETUP T19PK2 PACKET FOR WRITE MISC Reset Tape Status F-FLOPS T19RSFIF: JSR MOV MOVB :?ge PC, T19CLRBUF #T19072,R0 #PW.WMISC,(RO)+ ggS.RSFlF!HS.RSTAP,(RO) sCLEAR MESSAGE BUFFER sWRITE SUBSYSTEM DATA BUFFER sSTORE WRITE MISCELLANEOUS IN BSELO ;SE?SSNBSEL1 CLEAR FIFO CODES ,'0 : SETUP T19PK2 PACKET FOR WRITE NPR * INPUT: ; RO CONTAINS BSEL1 NPR DATA : SETS NP.WRP SINCE IF 0 IT WRITES WRONG PARITY. r -— TSVS = HARDWARE TESTS MACRO M1113 25-MAY=8¢ 09:19 TEST 8: SUBTEST & LOOPBACK READ STROBE TEST 5051 5052 062022 5053 062022 5054 062026 5055 062032 5056 062036 5057 062042 SO0S58 062044 5059 5060 004737 061734 112721 052700 110011 000207 000011 000020 012701 ;T19SNPR: 062470 JSR MOV MOVB BIS MOVB RTS PAGE 119-2 C PC,T19CLRBUF ;CLEAR MESSAGE BUFFER #PW.WNPR, (R1)+ #NP . WRP,RO RO, (R1) PC ;STORE WRITE NPR IN BSELO ;DON'T WRITE WRONG PARITY ;STORE NPR DATA IN BSEL1 :RETURN 0719DT2.R1 JWRITE SUBSYSTEM DATA BUFFER X 282} : SETUP T19PK2 PACKET FOR READ FIFO 5063 : gggg 5066 062046 5067 062046 5068 062052 5069 062056 5070 062062 28;5 062064 SEQ 0247 : 004737 012701 112721 110021 000207 061734 062470 000003 INPUT: T19RFIF. RO CONTAINS SEL2 BYTE COUNT JSR MoV MOVS MOVB RTS PC, T19CLRBUF #T19DT2,R1 #PW.RFIFO, (R1)+ RO, (R1)+ PC ;CLEAR MESSAGE BUFFER JWRITE SUBSYSTEM DATA BUFFER :STORE READ FIFO IN BSELO ;STORE BYTE COUNT IN BSEL1 JRETURN ;+ gg;z : SETUP T19PK2 PACKET FOR WRITE FIFO 5075 5076 : : 5079 062066 5080 062066 S081 062072 5082 062076 S083 062102 5084 062106 TI9WFIF: gg;g : 004737 012702 112722 110022 5085 062110 005022 5088 062116 gggg 062120 003375 090207 5086 062112 5087 062114 112122 005300 RO CONTAINS BYTE COUNT R1 CONTAINS DATA PATTERN BLOCK ADDRESS 061734 062470 000004 108: SAVREG JSR MOV MOV8 MOVB PC,T19CLRBUF #T19DT2.R2 #PW.WFIFO, (R2)+ RO, (R2)+ :SAVE R1=RS UNTIL NEXT RETURN ;CLEAR MESSAGE BUFFER JWRITE SUBSYSTEM DATA BUFFER ;STORE WRITE FIFO IN 8SELO ;STORE BYTE COUNT IN BSEL1 MOVB DEC (R1)+,(R2)+ RO :STORE DATA PATTERN BYTE ;DONE ALL BYTES? CLR 86T RTS v (RO) + 108 PC ;CLEAR SEL2 (UNUSED) :BR IF NO :RETURN . ¢ ggg; ; SETUP T19PK2 FOR WRITE CONTROL 5093 : gggg 5096 062122 5097 062122 5098 062126 5099 062132 5100 062136 g}g; 06214C INPUT: : 004737 012701 112721 110021 000207 061734 062470 000006 INPUT: TI19WCTL: RO CONTAINS DRIVING DATA PATTERN JSR MOV MOVB MOVB RTS PC.T19CLRBUF #T19DT2,R* #PW.WCTL,(R1)+ RO, (R1)+ PC :CLEAR MESSAGE BUFFER ;WRITE SUBSYSTEM DATA BUFFER ;STORE WRITE CONTROL IN BSELO ;STORE DATA WORD IN BSEL1 :RETURN ;0 g}gz ; SETUP T19PK2 FOR WRITE FORMAT TRANSPORT REGISTER 5105 : INPUT: 2}89 H RO CONTAINS DRIVING DATA PATTERN TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 8: SUBTEST & LOOPBACK READ STROBE TEST 5108 062142 5109 062142 004737 061734 §111 062152 5112 062156 112721 110021 000007 5110 062146 g}}z 062160 012701 TI9WFMT: 062470 JSR MOV MOVB MOVB 000207 PAGE 119-3 RTS ) SEQ 0248 PC,T19CLRBUF ;CLEAR MESSAGE BUFFER #T19DT2 R1 sWRITE SUBSYSTEM DATA BUFFER PC <RETURN #PW.WFMT, (R1)+ RO, (R1)+ *STORE WRITE FORMAT [N BSELO *STORE DATA WORD IN BSEL1 ;0 g}}g 5117 062162 5118 062162 5119 062166 §120 062172 g}g; 062176 : SETUP T19PK2 PACKET FOR WRITE MISC. 012700 112720 112710 000207 062470 T19SEXT: 000010 000200 MoV MOVB MOVB RTS #TI19DT2,RO INVERT EXTENDED FEATURES SWITCH ;WRITE SUBSYSTEM DATA BUFFER #PW.WMISC,(R0)+ #MS.EXT, (RO) PC :STORE WRITE MISCELLANEOUS IN BSELO :STORE INVERT EXTENDED FEATURES IN BSEL1 sRETURN ;4 g}gz 5125 062200 : CLEAR EXPECTED DATA MESSAGE BUFFER 5126 062200 5127 062204 012701 012700 5129 062212 5130 062214 g};} 062216 005300 003375 000207 5128 062210 105021 060042 000120 5133 5137 062220 5138 062224 5139 062230 5140 062234 5141 062236 5142 062240 5143 062242 3148 108 : MOV MOV #T19EXP.R1 #T19EXEND-T19EXP, RO ;GET EXPD ADDRESS :GET EXPD SI2E DEC BGT RTS RO 108 PC :DONE? :BR IF NO *RETURN CLRB (R1)+ SCLEAR A BYTE Mg ?1%‘5 5136 062220 T19CLEXP: :Set WORDS 0-7 of expd message BUFFER = to recv since not testing 012702 012703 012700 012322 005300 003375 000207 060042 062332 000010 T19SETEXP: 5¢: . MOV MOV MOV MOV DEC BGT RTS #T19EXP,R2 #T198FR.R3 #8. RO (R3)+, (R2)+ RO 5 PC :GET EXPD :GET READ STATUS RECV BUFFER ;SET WORDS 0-7 EXP=RECV :SET EXPD=RECV :DONE WORDS 0=~7 WORDS? :BR IF NO *RETURN g}fig : CONVERT A TEST PATTERN DATA WORD TO LOOPBACK DRIVE SIGNALS 5148 * INPUTS: 5149 212? . : g}gg > IMPLICIT INPUTS: g;gg : TI9BFCTL 2}29 5158 : RO - LOW BYTE CONTAINS WRITE CONTROL DATA 5161 062244 T19CNVT: SAVREG MOV CLR #T198FCIL,RY R2 * OUTPUTS: g}gg 5162 062244 5163 062250 5164 062256 RO : 012701 005002 057776 TEST PATTERN =~ CONTAINS WRITE CONTROL / WRITE FORMAT CONVERSION BITS = HIGH BYTE CONTAINS WRITE FORMAT DATA :SAVE R1=RS UNTIL NEXT RETURN +CONVERSION TABLE ADDRESS sINIT RESULT OF CONVERSION TSVS - HARDWARE TESTS TEST 8: MACRO M1113 25-MAY-82 09:19 SUBTEST & LOOPBACK READ STROBE 5165 062256 5166 062262 5167 062264 5168 062266 5169 062270 5170 062272 5171 062274 5172 062276 g};z 062300 012703 006000 103001 051102 005721 005303 003372 010200 000207 5175 5176 g}gg 062310 000020 TEST 108: 20$: PAGE 119-4 MoV ROR BCC 8IS TST DEC BGT MOV RTS E 4 #16. ,R3 RO 208 (R1) ,R2 (R1)+ R3 108 R2.RO PC SEQ 0249 :BIT COUNT ;1S THIS BIT EQUAL TO 12 :BR IF NO JSET CONVERTED BIT JPOINT TO NEXT BIT IN CONVERSION TABLE :DONE? <BR IF NO :COPY RESULT RETURN .=<. +10>8177770 g}g} JWRITE CHARACTERISTICS COMMAND PACKET 5183 062310 5184 062310 T19PACKET: LWORD 5185 062312 5186 062314 g}gg 062316 100004 062320 000000 000012 5189 062320 5190 062320 5191 062322 5192 062324 5193 062326 g}gg 062330 062332 000000 000024 000000 000007 5196 g}gg 5199 062332 5200 062332 5201 062334 5202 062336 5203 062340 5204 062342 5205 062344 5206 062346 5207 062350 5208 062352 gg?g 062452 5222 062470 5223 062470 5224 062471 5225 062472 100004 T19DATA O 10. .WCRD MWORD .WORD .WORD .WORD T198FR O 20. 0 7 ;ADDRESS OF CHARACTERISTICS BLOCK JMINIMUM MESSAGE PACKET SIZE JCHARACTERISTICS DATA BLOCK ;ADDRESS OF MESSAGE BUFFER JLENGTH OF MESSAGE BUFFER ;ESS,ENB EA] ER] JEXTENDED FEATURES UNIT NO. <MESSAGE BUFFER FOR ALL TEST 8 COMMANDS 000000 000000 000000 000000 000000 000000 000000 000000 g%}} 5214 5216 062460 5217 062460 5218 062462 9219 062464 255(1) 062466 T19DATA: .WORD MWORD .WORD ;COMMAND PACKET FOR TEST JWRITE CHARACTERISTICS COMMAND, WITH ACK T198FR: WORD .WORD JWORD LWORD WORD WORD WORD .WORD T19BFSTA: .BLKB T19BEND : O 0 O 0 0 0 O 0 64. sBEGIN MESSAGE BUFFER sMESSAGE TYPE sDATA FIELD LENGTH ;RBPCR JXSTO JXST1 JXST2 JXST3 ;XST4 (ALWAYS PRESENT FOR WRITE SUBSYSTEM sREAD STATUS AND WRITE FIFO BUFFER sEND OF MESSAGE BUFFER ;WRITE SUBSYSTEM READ STATUS COMMAND PACKET 062460 100006 062470 000000 000012 000 000 000000 T19PK2: T19072: .=<.+10>8177770 .WORD .WORD LWORD .WORD P.WRTSUB!P.A(K T19DT?2 O 10. SWRITE SUBSYSTEM WITH ACK cLOW ADDRESS OF DATA BLOCK sHIGH ADDRESS OF DATA BLOCK sMINIMUM MESSAGE PACKET SIZE .BYTE .BYTE .WORD 0 0 0 :DATA BLOCK ;BSELO ;BSEL :SELZ T SVS - HARDWARE v cST TESTS MACRO M1113 25-MAY=-82 09:19 8: SUBTEST & LOOPBACK READ STROBE TEST 5226 062474 5227 5228 5229 062574 062574 062574 .BLKB ENDTST 104401 PAGE 119-5 F 4 SEQ 0250 64. sWRITE FIFO DATA OUTPUT BUFFER L10066: TRAP CSETST TSVS = HARDWARE TESTS ~ MACRO M1113 TEST 9: g%g; READ/WRITE DATA PARITY TEST 25-MAY-82 09:19 ¢ g%%z : 5235 : 5241 5242 5243 : : : 5246 ggzg : : 5236 5237 5238 5239 5240 52644 52645 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 §§;§ 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 .SBTTL PAGE 120 TEST SEQ 0251 9: READ/WRITE DATA PARITY TEST TEST DESCRIPTION: : : : : : This test verifies that the Write Data Parity generator and the Read Data Parity checker operate groperly. The Transport Bus signal loopback mode is enabled and a Set Urong parity function is executed. Then various Write Subsystem Memory functions are performed to write data to and from the FIFO in Loopback mode. : ; error bit is again tested to insure it cleared. Finally a Clear.urong parity function is done The program then checks to insure a Read Data parity error occurred. A Reset FIFO is done and the Read Data parity and it is verified the data word can pass in loopback mode without setting Read Data parity error. ‘ s TEST STEPS: : s : : : : : : ; H : : : ; : : : : : : : ; : : : : ; : . : : : : : : : REPEAT FOR LOOPCNT BEGIN . L. Write to TSSR register to soft initialize the controller Do WRITE CHARACTERISTICS to check for Extended Features Switch If Extended Features Hardware Switch Clear then: Do Write Subsystem Write Miscellaneous to Set Extended Features. Do WRITE CHARACTERISTICS to select reserved unit 7 and setup BUFFER REPEAT FOR ALL TEST PATTERNS IN TSTBLK TABLE BEGIN (v Verify Write Wrong Parity Sets Parity Error *) Do a WRITE NPR to set loopback and tape direction OUT and SET Write Urong Parity. Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strobe high) Do a WRITE FIFO with byte count equal to 1 and Tape direction OUT Do a READ FIFO with tape direction OUT to load tape out write latch (this is vhen wrong parit‘ (IWP) is set) Do a WRITE -ORMAT to set IRESV4==>IRSTR = 0 (sets read strobe low) (Read Strobe sets PAR IN H [Parity Error]) Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strobe high) Do a Write Subsystem READ STATUS If Read Data parity error NOT=1 Then Print Error Do a Write Misc to RESET FIFO Do a Write Subsystem READ STATUS It Read Data parity error NOT=0 Then Print Error (v Verif{ Data can be transferred without a Parity Error v) Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strcoe high) Do a WRITE NPR to set loopback and tape direction OUT and CLEAR Write Wrong Parat{. Do a WRITE FIFO with byte count equal to 1 and Tape direction QUT Do a READ FIFO with tape direction OUT to load tape out write latch Do a WRITE FORMAT to set IRESV4==>IRSTR = 0 (sets read strobe low) (Read Strobe should NOT set PAR IN H [Parity Error] here) Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strobe high) Do a Write Subsystem READ STATUS ) It Read Data parity error NOT=0 Then Print Error TSVS - HARDWARE TESTS TEST 9: MACRO M1113 READ/WRITE DATA PARITY TEST 25-MAY-82 09:19 : 52N 5292 062576 062576 5297 062576 5298 062602 5299 062606 5300 062614 5301 5302 062614 062614 062614 S%OS 5 04 062616 ] 305 062616 S3 ) 307 062624 5 308 062626 H SEQ 0252 END BGNTST 012700 004737 012737 002216 MOV JSR T20LOOP: MoV 19 #7ST2010,R0 PC,TSTSETUP sASCII MESSAGE TO IDENTIFY TEST ;DO INITIAL TEST SETUP #10. ,LOOPCNT JPERFORM 10 ITERATIONS BGNSUB 104402 004737 103405 010001 §s 015774 012034 062636 062642 005037 012704 004737 005237 : 002222 066360 010662 108: 128: 002222 PC,SOFINIT JWRITE TO TSSR TO SOFT INITIALIZE MOV ERRDF RO,R1 ERRNO,SF IERR, SF IMSG ;SAVE CONTENTS OF TSSR ;DEVICE FATAL DURING INIT TRAP 108 o initialize the controller TRAP -WORD LWORD Do WRITE CHARACTERISTICS to check for Extended Features Switch CLR FATFLG MOV #T20PACKET R4 JSR PC,WRTCHR FORCERROR 12% 15% MoV RO,R1 ERRDF ERRNO,T20SSR,PKTSSR NEXT.ERRNO 066402 000200 ;@aDFORCE ERROR IF FORCER=1 ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD JSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET If Extended Features Hardware Switch Clear then: 22%: ) TRAP 901 T-0SSR PKTSSR (SCLP1 Do Write Subsystem Write Miscellaneous to Set Extended Features. MOV #T208FR,R1 JMESSAGE BUFFER ADDRESS 8Iv #X2.EXTF ,XST2(R1) SEXTENDED FEATURES SWITCH SET? BNE JSR 066276 066530 000000 016336 SFIERR SFIMSG :BR IF CARRY SET (GOOD RETURN) : 000012 CSERDF 900 JCLEAR FATAL ERROR FLAG JGET THE ADDRESS OF COMMAND PACKET ;DO WRITE CHARACTERISTICS COMMAND 15%: : FATFLG csBssus :BR IF SOFT INIT OKAY INC CkLOOP 103407 001606 065246 JSR to soft .WORD WORD 010001 104455 ) 8(CS 104406 012701 032761 001026 004737 012704 010465 004737 _ .WORD 103407 010001 104455 001605 065211 012046 111171717777 BE?&N’SUBTEST 1/1/1/1777/ Write to TSSR register 8CS 104455 062634 062766 062770 PAGE 120-1 308 PC,T20SEXT MOV #T20PK2, R4 8(CS 308 ERRDF ERRNO,T202SSR,PKTSSR :BR IF YES JSETUP PACKET FOR WRITE MISC INVERT :GET WRITE SUBSYSTEM COMMAND PACKET MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 22% sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;88DFORCE ERROR [F FORCER=1 MOV RO,R1 NEXT.ERRNO ;SAVE CONTENTS OF :BR IF CARRY SETV (GOOD RETURN) TSSR DEVICE FATAL SSR FAILED TO SEV TRAP LWORD LWORD CSERDF 902 T202SSR TSVS =~ HARDWARE TESTS ~ MACRO M1113 TEST 9: READ/WRITE DATA PARITY TEST 062772 5334 062774 5335 063000 063000 5336 5337 063002 5338 063006 5339 063012 5340 063026 5341 063030 5342 063032 5343 063032 063032 063034 063036 06304 5344 063042 5345 063046 063046 5348 €365 063050 5350 063054 $351 063060 5352 063066 5353 5354 5355 063072 5356 063076 5357 063102 5358 063106 5359 063112 5360 063116 5361 063122 5362 063126 5363 063142 5364 0631446 5365 063146 5366 063146 063146 063150 063152 063156 5367 063156 5368 063162 063162 5369 5370 063164 5371 063170 5372 063174 5373 063200 5374 063204 5375 063210 5376 063224 5377 063226 5378 063230 012046 005237 25-MAY-82 09:19 002222 308 : 104406 012704 004737 : 066360 010662 103407 010001 428%: 104455 001607 065211 012046 005237 002222 508: 104406 012703 012337 042737 002312 177400 010337 002316 012700 000100 000040 000020 066146 132700 042700 004737 012704 010465 004737 s 002752 002312 1008: : : 066530 1028 : 104406 012700 004737 012704 010465 004737 103407 010001 000001 066242 066530 000000 016336 FATFLG INC ckLOOP FATFLG 105%: H SEQ 0253 . WORD PKTSSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP C$CLP Do WRITE CHARACTERISTICS to select reserved unit 7 MOV #T20PACKET R4 ;GET THE ADDRESS OF COMMAND PACKET JSR PC.WRTCHR :D0 WRITE CHARACTERISTICS COMMAND FORCERROR 42$ ;88DFORCE ERROR ]F FORCER=1 8(CS 508 sBR IF CARRY SET (GOOD RETURN) MOV RO,R1 cSAVE CONTENTS OF TSSR NEXT.ERRNO ERRDF ERRNO,T20SSR,PKT3SR JDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 903 .WORD TZ20SSR .WORD cSET FATAL ERROR FLAG +LOOP ON ERROR, IF FLAG SET TRAP MOV #TSTBLK ,R3 JGET FIRST PATTERN ADDRESS 8IcC c*c<377> DATA ;DATA IS BYTE MoV MoV PKTSSR cscLPt (R3)+,DATA JGET A TEST PATTERN R3., TSTPTR JSETUP CURRENT TSTBLK POINTER Do a WRITE NPR to set Loopback and tape direction OUT and and SET Write Wrong Parntg MOV #NP.OUT RO T TAPE DIRECTION OUT 8IS NP, LOOP RO SET LOOPBACK 8IC #NP.WRP,RO :SET WRITE WRONG PARITY (INVERTED) JSR PC TZOHNPR JSETUP T20PK2 FOR WRITE NPR MOV 000000 016336 002222 INC CKLOOP 1 REPEAT FOR ALL TEST PATTERNS IN TSTBLK TABLE 103407 010001 104455 001610 065357 012046 005237 PAGE 120-2 #T20PK2,R4 MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 1028 8(CS 105% MOV RO,R1 NEXT.ERRNO ERRDF ERRNO, T204SSR,PKTSSR INC CKLOOP FATFLG JSR [ [1]" PC TZOHFHT lTéOPKZ R4 ;GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;8dDFORCE ERROR IF FORCER=1 :BR JF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD LWORD .WORD 904 T204SSR PKTSSR sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP cscLP Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strobe high) MoV #WF, 14RES RO IRESV4==>IRSTR =1 MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 112% B(S 1208 MOV RO.R1 NEXT.ERRNO SETUP T20PK2 FOR WRITE FORMAT :GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET ;@8DFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR " ) r TSVS = HARDWARE TESTS TEST 9: MACRO M1113 READ/WRITE DATA PARITY TEST 5379 063230 063230 063232 063234 063236 5380 063240 5381 063244 063244 5382 5383 063246 5384 063252 5385 063256 5386 063262 5387 063266 5388 063272 5389 063276 5390 063312 5391 063314 5392 063316 5393 063316 063316 063320 002222 1208: 000001 002312 066206 066530 000000 016336 MOV JSR 002222 104406 : 1608 5613 063420 5414 0634264 5415 063430 5416 063434 5417 063440 5418 063454 5419 063456 5420 063460 000001 066166 066530 000000 016336 103407 010001 *SET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET BCS 160 sBR IF CARRY SET (GOOD RETURN) ERRDF ERRNO,T205SSR,PKTSSR INC CkLOOP FATFLG 152% :8aDFORCE ERROR IF FORCER=1 MOV RO,R1 NEXT.ERRNO sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF LWORD 906 .WORD T205SSR .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET ] ) TRAP PC, T20RFIF MoV #T20PK2,R4 066242 066530 000000 016336 PKTSSR (SCLP1 BCS 180% MoV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 172$ MOV RO,R1 NEXT.ERRNO ERRDF sSETUP T20PK2 FOR READ FIFO :GET WRITE SUBSYSTEM COMMAND PACKET :SET Thc PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SET ;3@DFORCE ERROR IF FORCER=1 s8R IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF ERRNO,T206SSR,PKTSSR TSSR sDEVICE FATAL SSR FAILED TO SET .WORD .WORD 104406 004737 SSETUP T20PK2 FOR WRITE FIFO $GET WRITE SUBSYSTEM COMMAND PACKET TRAP 002222 PKTSSR R4, TSDB(RS) PC.CHKTSSR JSR 172%: 104455 005000 004737 012704 010465 PC,T20WFIF #TO0PK2,R4 ) 010001 001613 065466 012046 005237 .WORD :SET FATAL ERROR FLAG <LOOP ON ERROR, IF FLAG SET 905 T208SSR Do a READ FIFO with tape direction OUT to load tape out write latch (this is when wrong parity (IWP) is set) MOV #1,R0 ;SET READ BYTE COUNT 103407 5407 063400 063400 063402 063404 063406 5408 063410 5409 063414 063414 5610 5411 5412 063416 sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF FATFLG FORCERROR 152¢%: 104455 INC CKLOOP JSR MOV 010001 012700 004737 012704 010465 004737 ERRNO, T208SSR,PKTSSR TRAP CSCLP1 Do a WRITE FIFO with byte count equal to 1 and Tape direction OUT MOV #1,R0 ;WRITE 1 BYTE MOV #DATA,R1 SFIFO WRITE DATA ADDRESS 103407 005237 ERRD. .WORD .WORD 104406 012700 012701 004737 012704 010465 004737 J PAGE 120-3 SEQ 0254 1128: 104455 001611 065531 012046 005237 25-MAY-82 09:19 180$: INC ckLooP .WORD CSERDF 907 T206SSR PKTSSR FATFLG sSET FATAL ERROR FLAG RO PC, T20WFMT sIRESV4==>IRSTR = 0 sSETUP T20PK2 FOR WRITE FORMAT R&,TSDB(RS) PC,CHKTSSR sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET 2008 :BR IF CARRY SET (GOOD KETURN) ;LOOP ON ERROR, IF FLAG SET TRAP CSCLP Do a WRITE FORMAT to set JRESV4==>IRSTR = 0 (sets read strobe low) (Read Strobe sets PAR IN H (Parity Errorl) CLR JSR MOV MOV JSR lTéOPKZ,R4 FORCERROR 8CS MOV RO.R1 NEXT.ERRNO 192% :GET WRITE SUBSYSTEM COMMAND PACKET :@aDFORCE ERROR IF ;SAVE CONTENTS OF TSSR FORCER=1 — TSVS = HARDWARE TESTS TEST MACRO M1113 9: READ/WRITE DATA PARITY TEST 5421 063460 063460 063462 063464 063466 5422 063470 5423 063474 063474 5424 5425 063476 5426 063502 56427 063506 5428 063512 5429 063516 5430 063522 5431 063536 5432 063540 5433 063542 5436 063542 063542 063544 063546 063550 5435 063552 5436 063556 063556 5437 5438 063560 5439 063564 5440 063570 5441 063574 5442 063600 5443 063614 5444 063616 5445 063620 5446 063620 063620 063622 063624 063626 5447 063630 5448 063634 063634 5449 5450 063636 5451 063642 5452 063646 5453 063652 5456 063654 5455 063662 5456 063666 5457 063670 5458 063674 5459 063700 5460 063704 5461 063710 5462 063720 25-MAY=-82 09:19 065531 012046 005237 002222 200$: 000001 066242 066530 000000 016336 212%: 002222 220$: 012703 004737 103404 AT20PK2,R4 .WORD 066126 066530 000000 016336 :GET WRITE SUBSYSTEM COMMAND PACKET R4, TSDB(RS) *SET THE PACKET ADDRESS TO EXECUTE JSR PC.CHKTSSR FORCERROR 2128 SWAIT FOR SSR TO SET :@aDFORCE ERROR IF FORCER=1 MOV RO,R1 NEXT.ERRNO :SAVE CONTENTS OF ERRDF INC CKLOOP 2208 :BR IF CARRY SET (GOOD RETURN) ERRNO,T208SSR.PKTSSR TSSR :DEVICE FATAL SSR FAILED TO SET FATFLG PC,T20SRD 909 .WORD PKTSSR ;SET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TRAP :SETUP PACKET FOR READ STATUS JSR PC.CHKTSSR *WAIT FOR SSR TO SET R4, TSDB(RS) 2328 BCS 2408 ERRDF ERRNO,T203SSR,PKTSSR MOV RO,R1 NEXT.ERRNO :SET THE PACKET ADDRESS TO EXECUTE ;@aDFORCE ERROR IF FORCER=1 ;BR IF CARRY SET (GOOv RETURN) :SAVE CONTENTS OF TSSR INC CKLOOP FATFLG ;DEVICE FATAL SSR FAILED TO SET TRAP ;SET FATAL ERROR FLAG . It Read Data arvt; error NOT=1 JSR PC,T20SETEXP 066334 000002 100000 066402 011500 000002 CSCLPY :GET WRITE SUBSYSTEM COMMAND PACKET WORD .WORD 065062 066422 T208SSR #T20PK2,R4 FORCERROR 2408 CSERDF .WORD MOV MOV 002222 PKTSSR IF FLAG SET TRAP CSCLP1 Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strobe high) MOV #WF . 14RES RO :IRESV4==>IRSTR = 1 JSR PC,T20WFMT :SETUP T20PK2 FOR WRITE FORMAT JSR 232%: 908 T208SSR :LOOP ON ERROR, Do a Write Subs‘stem READ STATUS 104406 004737 012701 012702 011211 016261 052711 005000 012701 012702 MOV CKLOOP ;SET FATAL ERROR FLAG -WORD 103407 010001 005237 ;DEVICE FATAL SSR FAILED TO SET TRAP CSERDF TRAP 104406 104455 001616 065312 012046 FATFLG BCS 104455 004737 012704 010465 004737 ERRNO,T208SSR,PKTSSR INC MOV 103407 010001 001615 065531 012046 005237 ERRDF .WORD .WORD 104406 012700 004737 012704 010465 004737 SEQ 0255 192$: 104455 001614 K PAGE 120-4 MOV #TO0EXSTA,R1 BCS 2608 MOV #T20BFSTA.R2 MOV (R2), (R1) MOV 2(R2) ,2(R1) BIS #S1.PARERR, (R1) CLR RO MOV #T208FR,R1 MOV #T20EXP.R2 MOV #20..R3 JSR PC,CKMSG2 FORCERROR 252%.NOTSSR :LOOP ON ERROR, .WORD CSERDF 910 T203SSR PKTSSR IF FLAG SET TRAP CSCLPI Then Print Error ;SET WNARDS 0<7 EXPD=RECV (NOT TESTING) :GET EXPECTED READ STATUS :GET RECV READ STATUS $SET EXPD WORD #8 = RECV TEMP :SET EXPD WORD #9 = RECV (NOT TESTED) :SET EXP PAR ERR =1 :HIGH RECV ADDRESS FOR CKMSG2 :LOW RECV ADDRESS FOR CKMSG2 SEXPD ADDRESS :NUMBER OF BYTES TO COMPARE *EXPD EQUAL RECV? :aab :BR IF YES — TSV5 = HARDWARE TESTS ~ MACRO M1113 TEST 9: READ/WRITE DATA PARITY TEST 25-MAY-82 09:19 5463 063722 5464 063722 063722 063726 063726 063730 5465 063732 063732 5466 5467 063734 5468 0637640 5469 063744 2608: 104406 012700 004737 000020 066262 010465 004737 000000 016336 012704 004737 066334 5483 064026 012702 066422 5482 064022 5484 064032 95485 064034 5486 064042 5487 064046 5488 064050 56489 064054 5490 064060 5491 064064 5492 064070 5493 064100 5494 064102 5495 064102 064102 v64106 064106 064110 5496 064112 064112 5497 5498 5499 064114 5500 064120 5501 064124 5502 0664130 5503 064134 5506 064140 : 066530 5470 063750 5471 063754 5472 063760 5473 063774 5474 063776 5475 064000 5476 064000 064000 064002 064004 064006 5477 064010 5478 064014 064014 5479 5480 5481 064016 2828: 002222 290$: 104406 012701 011211 016261 042711 005000 012701 012702 012703 004737 : : 065062 000002 100000 000002 065042 103404 012700 004737 3028 : 012704 010465 004737 3208 : 000001 066242 066530 000000 016336 ) i Do a Write Misc to RESET FIFO MOV #MS.RSFIF RO JSR PC,T20WMISC : : #T20PK2, R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 282% 8CS 2908 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T202SSR,PKTSSR INC CKLOOP ‘ FATFLG ;REPORT ERROR TRAP .WORD LWORD LWORD ;LOOP ON ERROR, IF FLAG SET TRAP CSERHRD 911 T20SWP MSGSTAT CSCLP1 JSET RESET FIFO COMMAND ;SETUP T20PK2 FOR WRITE MISC .GET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@3DFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP LWORD .WORD .WORD sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSERDF 912 T202SSR PKTSSR ) cscLe Do a Write Subsystem READ STATUS I1f Read Data parity error NOT=0 Then Print Error JSR PC,T20SETEXP :SET WORDS Q=7 EXPD=RECV (NOT TESTING) MOV 000024 011500 . 104400 CKLOOP MOV 066402 104456 001621 065706 012350 NEXT.ERRNO ERRHRD ERRNO,T20SWP,MSGSTAT MOV 103407 010001 104455 001620 065246 012046 005237 L SEQ 0256 2528: 104456 001617 065577 012350 PAGE 120-5 #TéOEXSTA.R1 #T208FSTA ,R2 MOV (R2),(R1) MOV 2(R2) ,2(R1) BIC #S1.PARERR, (R1) CLR RO MOV #T20BFR,R1 MOV #T20EXP,R2 MoV #20.,R3 JSR PC.,CKMSG2 FORCERROR 3028 ,NOTSSR BCS 3208 NEXT.ERRNO ERRHRD ERRNO, T20RSF ,MSGSTAT CKLOOP JGET EXPECTED READ STATUS sGET RECV READ STATUS ;sSET EXPD WORD #8 = RECV TEMP sSET EXPD WORD #9 = RcCV (NOT TESTED) JSET EXP PAR ERR =0 sHIGH RECV ADDRESS FOR CKMSG2 cLOW RECV ADDRESS FOR CKMSGZ2 JEXPD ADDRESS sNUMBER OF BYTES TO COMPARE JEXPD EQUAL RECV? .aaD ;BR IF YES ;REPORT ERROR TRAP .WORD .WORD LWORD CSERHRD 913 T20RSF MSGSTAT ;LOOP ON ERROR, IF FLAG SET ) . ) TRAP CSCLP (+ Verify Data can be transferred without a Parity Error *) Do a WRITE FORMAT to set IRESV4==>IRSTR = 1 (sets read strobe high) MOV JSR Mov #WF . I4RES RO PC, T20WFMT #T0PK2 R4 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 3328 SJIRESV4==>IRSTR = 1 SSETUP T20PK2 FOR WRITE FORMAT JGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@aDFORCE ERROR IF FORCER=1 TSVS =~ HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 TEST 9: READ/WRITE DATA PARITY TEST 5505 064154 5506 064156 104455 001622 065531 012046 005237 332¢: -y nN o o Y [,¥] 012700 052700 052700 004737 012704 010465 004737 002222 : 3408 000100 000040 000020 066146 066530 000000 016336 N ~N H N A VAN VAVAWVIVAWAWLA WVIVAVAWVAIWVAWAY 064356 064362 064366 064372 064376 ERRNO,T208SSR,PKiSSR INC CKLOOP sBR IF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD ¢SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET FATFLG sCLEAR WRITE WRONG PARITY (INVERTED) sSETUP T20PK2 FOR WRITE NPR #T20PK2, R4 ;SET LOOPBACK sGET WRITE SUBSYSTEM COMMAND PACKET R4, TSDB(RS) sSET THE PACKET ADDRESS TO EXECUTE 3608 ¢BR IF CARRY SET (GOOD RETURN) ERRNO, T204SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET JSR PC,CHKTSSR FORCERROR 352% MOV RO,R1 NEXT.ERRNO cWAIT FOR SSR TO SET -@3DFORCE ERROR IF FORCER=1 :SAVE CONTENTS OF TSSR TRAP 002222 : 3608 INC CKLOOP FATFLG 915 T204SSR PKTSSR TRAP cscLe sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET ) Do a WRITE FIFO with byte count equal to 1 and Tape direction OUT MOV #1,RO JWRITE 1 BYTE MOV #DATA,R1 SFIFO WRITE DATA ADDRESS 000001 002312 066206 066530 000000 016336 JSR PC, T20WFIF Mov #TI0PK2 R4 8(Cs 3808 MOV R4, TSDB(RS) JSR PC,CHKTSSR FORCERROR 372% 372%: 002222 104406 012700 004737 012704 010465 004737 000001 066166 066530 000000 016336 CSERDF WORD .WORD .WORD MoV RO,R1 NEXT.ERRNO ERRDF ERRNO, T205SSR,PKTSSR sSETUP T20PK2 FOR WRITE FIFO cGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE SWAIT FOR SSR TO SET - @3DFORCE ERROR IF FORCER=1 :BR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 916 LWORD 005237 cscLP #NP.WRP RO PC,T20WNPR MOV ERRDF PKTSSR :SET TAPE DIRECTION OUT #NP.LOOP,R(C MOV CSERDF 914 T208SSR #NP.OUT RO BIS 8IS JSR 5528: 104455 41 42 43 44 45 46 ERRDF MOV 103407 010001 064346 39 064350 40 064354 064354 3408 8(S 104406 012700 012701 004737 012704 010465 004737 BCS MOV RO,R1 NEXT.ERRNO TRAP 104455 001623 065357 012046 005237 SEQ 0257 Do a WRITE NPR to set loopback and tape direction OUT and and CLEAR Write Wrong Parity. 103407 010001 064260 5525 064262 5526 064266 064266 5527 M .WORD LWORD 104406 = o &» N=20O OV NOWVISWN= OY ALY LV, IV, LV IV IV [V IV IV [V ]V [V IV EENV IV] WVIWMWVIWVIVIAWVIVIVIAVIVVA AW L8] NN = bbb b b b b ek =t O 5507 064160 5508 064160 103407 010001 PAGE 120-6 380$: INC CKLOOP FATFLG .WORD ¢SET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG SET T205SSR PKTSSR TRAP CsCLP Do a REA21F£50 with tape direction OUT to load tape out write latch MOV , sSET READ BYTE COUNT JSR MOV MOV JSR PC.T20RFIF #TO0PK2,R4 R4, TSDB(RS) PC.CHKTSSR sSETUP T20PK2 FOR READ FIFO sGET WRITE SUBSYSTEM COMMAND PACKET sSET _THE PACKET ADDRESS TO EXECUTE ;WAIT FOR SSR TO SET TSVS = HARDWARE TESTS TEST MACRO M1113 9: READ/WRITE DATA PARITY TEST VIVAWVAVIWAWVILA . W Al Al Al Al VA IV RV, IV, ] 9547 064402 5548 0646416 5549 064420 5550 064422 5551 064422 064422 064424 5564 064502 5565 064502 064502 064504 064506 064510 5 566 064512 5 567 064516 064516 5 568 5 5 69 064520 P S 70 064524 5 5 71 064530 5 572 064534 5573 064540 5574 064544 5575 064560 5576 064562 5577 064564 5578 064564 0 2 5579 064574 5580 064600 064600 5581 5582 5583 064602 5584 064606 5585 064612 5586 064616 5587 064622 5588 064636 25-MAY-82 09:19 392$: 002222 4008: 066242 066530 000000 016336 002222 420$: 000001 066242 066530 000000 016336 sDEVICE FATAL SSR FAILED TO SET TRAP ckLoopP .WORD 104406 PC,T20WFMT JSETUP T20PK2 FOR WRITE FORMAT JGET WRITE SUBSYSTEM COMMAND PACKET JSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;@8DFORCE ERROR ]F FORCER=1 IF FLAG SET TRAP CsCLP Do a WRITE FORMAT to set JRESV4==>]RSTR = 0 (sets read strobe low) égead Strobe sets PAR IN H [Parity Errorl) CLR JJRESV4==>IRSTR = 0 ;LOOP ON ERROR, #T20PK2,Ré MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 4128 8(s 4208 MOV RO,R1 NEXT.ERRNO ERRDF ERRNO,T208SSR,PKTSSR INC C(KLOOP MOV 066126 066530 000000 016336 4408: PKTSSR ;SET FATAL ERROR FLAG :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 918 .WORD FATFLG ;SET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET IRESV4==>IRSTR = 1 #TS0PK2,R4 sIRESV4==>IRSTR = 1 SSETUP T20PK2 FOR WRITE FORMAT cGET WRITE SUBSYSTEM COMMAND PACKET cSET THE PACKET ADDRESS TO EXECUTE JWAIT FOR SSR TO SET ;8aDFORCE ERROR IF FORCER=1 BCS MOV 4408 RO.R1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ERRDF ERRNC,T208SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET NEXT.ERRNO INC (kLoopP FATFLG TRAP sSET FATAL ERROR FLAG sLOOP ON ERROR, It .WORD FLAG SET TRAP Do a Write Subsagtem READ STATUS PC 120$ JSR sSETUP PACKET FOR READ STATUS MOV #TS0PK2,R4 BCS 4608 MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 4528 T208SSR PKTSSR TRAP cscLe (sets read strobe high) .WORD .WORD 002222 CSERDF 917 T206SSR FATFLG MOV R4, TSDB(RS) JSR PC.CHKTSSR FORCERROR 4328 432%: 106455 103407 :39DFORCE ERROR IF FORCER=1 sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ERRNO,T206SSR,PKTSSR Do a WRITE FORMAT to set MOV MWF . 14RES RO JSR PC, T20uFMT 103407 010001 004737 012704 010465 004737 392% .WORD 104406 001627 065531 012046 005237 INC JSR 612%: 104455 012700 004737 012704 010465 004737 ERRDF MOV 103407 010001 001626 065531 012046 005237 FORCERROR 400$ 8CS MoV RO,R1 NEXT.ERRNO .WORD .WORD 104406 005000 004737 012704 010465 004737 N SEQ 0258 103407 010001 104455 001625 065466 012046 005237 PAGE 120-7 CSERDF 919 T208SSR PKTSSR (scLP1 sGET WRITE SUBSYSTEM COMMAND PACKET sSET THE PACKET ADDRESS TO EXECUTE sWAIT FOR SSR TO SETY :9dDFORCE ERROR IF FORCER=1 :BR IF CARRY SET (GOOD RETURN) TSVS = HARDWARE TESTS TEST 9: READ/WRITE DATA PARITY TEST 5589 064640 5590 064642 5591 064642 064642 064644 066646 064650 5592 064652 5593 064656 064656 5594 5595 064660 5596 064664 5597 044670 5598 064674 5599 064676 5600 064704 5601 064710 5602 064712 5603 064716 5604 064722 5605 064726 5606 064732 5607 064742 5608 064744 5609 064744 064744 064746 064750 064752 5610 064754 064754 5611 5612 064756 5613 064766 5614 064772 5615 064776 5616 065000 5617 065004 5618 5619 065004 065004 065004 5621 065006 5622 065012 5623 065014 5624 065020 5625 065020 5626 065024 5627 065026 5628 065032 5629 065032 5630 5631 MACRO M1113 065032 065034 25-MAY-82 09:19 010001 104455 001630 065312 012046 005237 MOV 4528: 002222 4608 : : 066334 065062 066422 000002 RO,R1 NEXT.ERRNO ERRDF ERRNO,T203SSR,PKTSSR 100000 066402 065042 000024 011500 FATFLG SEQ 0259 sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP MOV #TO0EXSTA,R1 sSET FATAL ERROR FLAG 4808%: MOV #T208FSTA,R2 MOV 2(R2) ,2(R1) (R2),(R1) B{g ggI.PARERR.(R1) MOV MOV MOV JSR #T208FR,R1 #T20EXP,R2 #20. ,R3 PC,CKMSG2 BCS 4808 472% ,NOTSSR NEXT.ERRNO ERRHRD ERRNO,T20CWP,MSGSTAT 063054 CKLOOP FORCEX]T 002316 003062 :GET EXPECTED READ STATUS sGET RECV READ STATUS sSET EXPD WORD #8 = RECV TEMP sSET EXPD WORD #9 = RECV (NOT TESTED) sSET EXP PAR ERR =0 sHIGH RECV ADDRESS FOR CKMSG2 sLOW RECV ADDRESS FOR CKMSG2 cEXPD ADDRESS ¢sNUMBER OF BYTES TO COMPARE sEXPD EQUAL RECV? ;3aD :BR IF YES ¢REPORT ERROR :LOOP ON ERROR, 555¢ [ [0]"] CMP TSTPTR,R3 R3,#TBLEND JMP 1008 BHIS 555¢%: 5588 ENDSUB TRAP 002222 004737 103002 000137 016456 017202 050506 ST 5608: MSGSTAT cscLe ;aaD :END OF TSTBLK? JBR IF YES ;D0 ANOTHER TSTBLK PATTERN . /11171777777 END SUBTEST ///11/17/17 L10074 TRAP CSESUB BEQ JSR FATFLG 5608 PC,CKDROP sANY FATAL ERRORS ? JSR PC,TSTLOOP DO {;E:STIONS’ JMP T18L00P LOOP UNTIL ITERATIONS DONE EXIT IST /111171777 EXIY YESY /7717111117 TRAP ? EX1Y BCC 565%: LWORD IF FLAG SET TRAP CSERHRD 921 T20CWP JRESTORE CURRENT TSTBLK POINTER 104403 005737 001402 004737 PKTSSR cLOOP ON ERROR, .WORD .WORD 104406 104432 001610 .WORD CSERDF 920 T203SSR IF FLAG SET TRAP CSCLP1 It Read Data 8ar1ty error NOT=0 Then Print Error JSR PC, T20SETEXP ;SET WORDS 0-=7 EXPD=RECV (NOT TESTING) FORCERROR 472%: 104456 001631 066007 012350 INC CKLOOP MOV 000002 103404 013703 020327 103002 000137 8 .WORD .WORD 104406 004737 012701 012702 011211 016261 042711 005000 012701 012702 012703 004737 PAGE 120-8 5658 ¢BRANCH [F NOT sTRY TO DROP THE UNIT .WORD 0073-. TSVS - HARDWARE TESTS TEST 9: MACRO M1113 25-MAY-82 09:19 READ/WRITE DATA PARITY TEST PAGE 121 SEQ 0260 i sLOCAL STORAGE FOR THIS TEST 5637 5638 065036 5639 5640 065036 5641 065037 5642 065040 ;643 065041 5645 065042 T20MSK: 377 037 360 000 *(<000> AC<3460> 6C<017> T20EXP: 000000 000090 000000 000000 000000 000000 000000 000000 .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD T20EXSTA: .BLKB T20EXEND: 0 0 0 0 0 0 0 0 6 4. ¢ ¢MASK OF UNTESTED BITS IN READ STATUS JUNTESTED BITS ARE SET TO 1 ;BYTE 0 MASK ;BYTE 1 MASK (PARERR,IRESVZ2, IRESV1) ;BYTE 2 (TIMER A,TIMER B,UNDEF INED<1:0>) JMAKE IT EVEN JBEGIN EXPECTED DATA BUFFER JMESSAGE TYPE sDATA FIELD LENGTH JRBP(R JXSTO JXST1 IXST2 JXST3 JXST4 (ALWAYS PRESENT FOR WRITE SuB.) SEXPECTED READ STATUS AND WRITE FIFO DATA JEND EXPECTED DATA BUFFER 1ST201D: T20SSR: ,ASCI T202SSR: .ASCI T203SSR:.ASC] T204SSR: .ASC] T205SSR: . ASC] T206SSR:.ASC] T208SSR:.ASCI T20SWP: ,ASCI T20RSF: T20CWP: .ASC] .ASCI NINNNNNNNNN N b b b b P b b b e G b i G b b amd b cd G S nd b o Y d P b —d e b e e b b e b d b b SN EPONONNONNIRND VIR NN NN W b NININD N NN NN N NN e b b e b e b b el b NONINLNLNLALNL NN POND) 5659 5660 065162 5661 065211 5662 065246 5663 065312 5664 065357 5665 065422 5666 065466 5667 065531 5668 065577 5669 065706 5670 066007 5671 b sLOCAL TEXT MESSAGES FOR TF3T .EVEN LASCIZ 'Read/Write Data Parity’ 'WRITE CHARACTERISTICS Failed’ *WRITE SUBSYSTEM (Write Misc) Failed’ 'WRITE SUBSYSTEM (Read Status) Failed' ‘WRITE SUBSYSTEM (Write Npr) Failed’ 'WRITE SUBSYSTEM (Write FIFO) Failed’ ‘WRITE SUBSYSTEM (Read FIFO) Failed’ ‘WRITE SUBSYSTEM (Write Format) Failed' 'Read Data Parity i Error (PARERR) Failed i to Set after Write Wron ? 'Read D ata Parity Error 'Read D ata Parity Error i+ 5675 5676 066102 5677 066102 5678 066106 5679 066112 5680 066116 5681 066120 5682 066122 5683 066124 5684 5685 5688 066126 5689 066126 s CLEAR MESSAGE BUFFER T20CLRBUF : SAVREG 012701 012702 105021 005302 003375 000207 108 : MOV MOV CLRB DEC BGT RTS #T20BFR .R1 #T20BEND-T20BFR,R2 (R1)+ R 108 PC sSAVE R1-RS UNTIL NEXT RETURN sGET MESSAGE BUFFER ADDRESS :SIZE OF MESSAGE BUFFER IN BYTES cCLEAR A BYTE sDONE? «BR_IF NO sRETURN ¢ ; SETUP T20PK2 PACKET FOR READ STATUS 004737 066102 T20SRD: JSR PC,T20CLRBUF Parity’ (PARERR) Failed to Clear after RESET FIFO° (PARERR) occurred in Data Loopback’ :CLEAR MESSAGE BUFFER TSVS = HARDWARE TESTS ~ MACRO M1113 TEST 9: READ/WRITE DATA PARITY TEST 5690 066132 5691 066136 5692 066142 5693 066144 5694 5695 5696 012700 112720 105010 000207 25-MAY-82 09:19 MOV Move CLRB RTS #T200T2,RO #PW . RDSTATUS, (RO) + (RO) PC : SETUP T20PK2 PACKET FOR WRITE NPR : INPUT: g;gg : 5702 5703 066146 5704 066146 .= T20WNPR: 004737 066102 112721 110011 000207 000011 012701 066540 RO CONTAINS BSEL1 NPR DATA JSR MOV Move MOVB RTS PC,T20CLRBUF #T20DT2,R1 #PW.WNPR, (R1)+ RO, (R1) PC ; SETUP T20PK2 PACKET FOR READ FIFO 5713 : 5716 066166 5717 066166 004737 066102 T20RFIF: 5719 066176 5720 066202 112721 110021 000003 g;}g 2;55 066204 : 012701 INPUT: 066540 JSR MOV [ [0]Y:] MOovB 000207 RTS ;0 PC,T20CLRBUF lTéODTZ.Rl #PW.RFIFO, (R1)+ RO, (R1)+ PC ; SETUP T20PK2 PACKET FOR WRITE FIFO 5725 5726 : : 5729 066206 5730 066206 5731 066212 T20WF IF: 004737 5733 066222 5734 066226 112722 110022 g;gg 5735 066230 5736 066232 5737 066234 5738 066236 5739 066240 §740 5741 :STORE WRITE NPR [N BSELO JSTORE NPR DATA IN BSEL1 ;RETURN RO CONTAINS SEL2 BYTE COUNT g;gz 5732 066216 :CLEAR MESSAGE BUFFER :WRITE SUBSYSTEM DATA BUFFER o+ g;}; 5718 066172 JWRITE SUBSYSTEM DATA BUFFER JSTORE READ STATUS COMMAND IN BSELO ;CLEAR BSEL1 ;RETURN .t 5699 5706 066156 5707 066162 5708 066164 5709 §710 ) SEQ 0261 066540 000005 gggg 5705 066152 PAGE 121-1 INPUT: : 012702 005022 112122 005300 003375 000207 ;CLEAR MESSAGE BUFFER JWRITE SUBSYSTEM DATA BUFFER :STORE READ FIFO IN BSELO :STORE BYTE COUNT IN BSEL1 :RETURN RO CONTAINS BYTE COUNT R1 CONTAINS DATA PATTERN BLOCK ADDRESS 066102 066540 000004 SAVREG JSR :SAVE R1-RS UNTIL NEXT RETURN ;CLEAR MESSAGE BUFFER #PW. WFIFO, (R2)+ RO, (R2)+ :STORE WRITE FIFO IN BSELO :STORE BYTE COUNT IN BSEL1 (R1)+,(R2)+ RO 108 PC :STORE DATA PATTERN BYTE ;DONE ALL BYTES? :BR IF NO ;RETURN MOV #T20DT2,R2 CLR (RO) + MOVB MOVB 108: PC,T20CLRBUF MOV DEC BGT RTS A JWRITE SUBSYSTEM DATA BUFFER sCLEAR SEL2 (UNUSED) g;fi% s SETUP T20PK2 FOR WRITE FORMAT TRANSPORT REGISTER 5744 : 5745 5746 : INPUT: RO CONTAINS DRIVING DATA PATTERN — TSVS =~ HARDWARE TESTS TEST 9: MACRO M1113 READ/WRITE DATA PARITY TEST 5747 066242 3748 066242 5749 066246 5750 066252 5751 066256 5752 066260 5753 5754 5755 5756 5757 5758 066262 5759 066262 5760 066266 5761 066272 5762 066274 5763 5764 5765 5766 066276 5767 066276 5768 066302 5769 066306 5770 066312 5771 5772 5773 S774 066314 5775 066314 5776 066320 5777 066324 5778 066326 5779 066330 5780 066332 5781 5782 004 012 112721 110 000 066102 066540 000007 25-MAY-82 09:19 T20WFMT: JSR MOV MOVB MOVB RTS 3 SEQ 0262 PC, T20CLRBUF ;CLEAR MESSAGE BUFFER #PW.WFMT,(R1)+ RO, (R1)+ PC *STORE WRITE FORMAT IN BSELO :STORE DATA WORD IN BSEL1 *RETURN #T20DT2,R1 :0 SWRITE SUBSYSTEM DATA BUFFER : SETUP T20PK2 PACKET FOR WRITE MISC. : 0 1 1 0 066540 000010 RO CONTAINS WRITE MISC DATA T20WMISC: MOV MOVB MOVB RIS #T20DT2,R1 :WRITE SUBSYSTEM DATA BUFFER PC ;STORE WRITE MISCELLANEOUS IN BSELO ;STORE INVERT EXTENDED FEATURES IN BSEL1 *RETURN #PW.WMISC,(R1)+ RO, (R1) ;0 : SETUP T20PK2 #ACKET FOR WRITE MISC. INVERT EXTENDED FEATURES SWITCH 0 1 1 0 066540 000010 000200 iZOSEXT: MOV MOVB MOVB RTS #T20DT2.RO #PW.WMISC, (RO)+ #MS.EXT, (RO) PC .‘0 ;WRITE SUBSYSTEM DATA BUFFER ;STORE WRITE MISCELLANEOUS IN BSELO :STORE INVERT EXTENDED FEATURES IN BSEL1 *RETURN : CLEAR EXPECTED DATA MESSAGE BUFFER 012701 012700 105021 005300 003375 000207 065042 000120 T20CLEXP: MOV 108 : I MOV CLRB DEC BGT RTS #T20EXP,R1 #T20EXEND=-T20EXP,RO (RD)+ RO 108 PC ;GET EXPD ADDRESS <GET EXPD SIZE SCLEAR A BYTE :DONE? :BR IF NO *RETURN g ;Set WORDS 0-7 of expd message BUFFER = to recv since not testing 5785 066334 065042 066402 000010 T20SETEXP: MOV Mov 5%: MOV MOV DEC 8GT RTS #T20EXP,R2 #T20BFR,R3 #8. RO (R3)+,(R2)+ RO 5% PC :GET EXPD sGET READ STATUS RECV BUFFER sSET WORDS 0-7 EXP=RECV sSET EXPD=RECV ;DONE WORDS 0~7 WORDS? ;BR_IF NO sRETURN :WRITE CHARACTERISTICS COMMAND PACKET 5801 5802 066360 5803 066360 5804 066362 5805 066364 5806 066366 PAGE 121-2 100004 066370 000000 000012 T20PACKET: .WORD .WORD WORD .WORD 100004 T20DATA O 10. sCOMMAND PACKET FOR TEST ;WRITE CHARACTERISTICS COMMAND, WITH ACK sADDRESS OF CHARACTERISTICS BLOCK sMINIMUM MESSAGE PACKET SIZE — 9: READ/WRITE DATA PARITY TEST 5807 5808 066370 5809 066370 5810 066372 5811 066374 5812 066376 5813 066400 5814 5815 5818 066402 5819 066402 5820 066404 5821 066406 5822 066410 5823 066412 5824 066414 5825 066416 5826 066420 5827 066422 2823 066522 066402 000000 000024 000000 000007 25-MAY-82 09:19 T20DATA: -WORD -WORD .WORD +WORD .WORD PAGE 121-3 F T208FR L] TEST MACRO M1113 NONO o TSVS = HARDWARE TESTS SEQ 0263 ¢CHARACTERISTICS DATA BLOCK sADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER I ER] sESS,ENB,EA ;EXTENDED FEATURES UNIT NO. sMESSAGE BUFFER FOR ALL TEST 17 COMMANDS 000000 000000 000000 000000 000000 000000 000000 000000 T20BFR: .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD T20BFSTA: T20BEND: 0 0 0 0 0 8 0 .BLKB 64. JBEGIN MESSAGE BUFFER JMESSAGE TYPE sDATA FIELD LENGTH JRBPCR JXSTO JXST1 JXST2 JXST4 (ALWAYS PRESENT FOR WRITE SUBSYSTEM JREAD STATUS AND WRITE FIFQ BUFFER cEND OF MESSAGE BUFFER :WRITE SUBSYSTEM READ STATUS COMMAND PACKET 5835 066530 5836 066530 5837 066532 5838 066534 5839 066536 5840 5841 5842 5843 5844 5845 5846 5847 5848 066540 066540 066541 066542 066544 066644 066644 066644 066530 100006 T20PK2: 066540 000000 000012 000 000 000000 .=<.+10>8177770 .WORD +WORD .WORD .WORD P.WRTSUB!'P.ACK 120072 0 10. JWRITE SUBSYSTEM WITH ACK ;LOW ADDRESS OF DATA BLOCK JHIGH ADDRESS OF DATA BLOCK JMINIMUM MESSAGE PACKET SIZE .WORD .BLK8B 0 0 0 64. ;DATA BLOCK ;BSELO ;BSEL1 JSEL2 SWRITE FIFO DATA OUTPUT BUFFER T20DT2: ENDTST 104401 L10073: TRAP CSETST _— TSVS = HARDWARE TESTS _ MACRO M1113 TEST 10: MANUAL INTERVENTION 25-MAY-82 09:19 .SBTTL PAGE 122 SEQ 0264 TEST 10: MANUAL INTERVENTION sTHE MANUAL INTERVENTION TEST IS A STANDALONE ROUTINE (NOT REALLY A '‘TEST') sTHAT ALLOWS THE OPERATOR TO CHECK OUT VARIOUS ELEMENTS AND FUNCTIONS OF sTHE SUBSYSTEM THAT CANNOT BE MANIPULATED BY THE PROGRAM ALONE. WHEN sTHIS ROUTINE IS STARTED, IT FIRST PRINTS OUT A MENU OF SELECTABLE sSUBTESTS AND THEN WAITS FOR THE OPERATOR TO TYPE IN A SELECTION CODE. sTHE ONLY WAYS TO EXIT THIS ROUTINE AND RETURN TO THE DIAGNOSTIC SUPERVISOR sARE BY TYPING <CTRL=-C> OR SELECTING CODE 7. sSELECTION CODES AND SUBROUTINES ARE: [4 [ [4 [4 [4 [ [4 [ . [4 [4 [ CODE 0 NOMANA SN — — ROUTINE HELP. PRINTS THIS MENU, TURN ON ALL M7196 LED INDICATORS TURN OFF ALL M7196 LED INDICATORS OFFLINE/ONLINE ATTENTION TEST WRITE-PROTECT TEST INITIATE TRANSPORT SERVO EXERCISER PRINT EXTENDED TRANSPORT STATUS EXIT (RETURN TO SUPERVISOR) [ [4 ;EACH MENU ITEM CORRESPONDS TO A SUBTEST, AS FOLLOWS: 4 4 [4 [4 sPRINTS OUT THE MENU ON THE CONSOLE TERMINAL. sCAUSES ALL THREE LED INDICATORS ON THE M7196 MODULE 2TO BE ILLUMINATED. AFTER INITIATING THIS ROUTINE, THE OPERATUOR sSHOULD OBSERVE THE LED'S AND VERIFY THAT THEY ARE INDEED ALL LIT. sTHIS ROUTINE FIRST USES THE WRITE SUBSYSTEM MEMORY COMMAND TO ¢SET THE FORCE WRONG PARITY FLIP-FLOP, WHICH SERVES TO D®IVE THE :"PROCESSOR NOT OK'' LED. THEN IT ENTERS A LOOP THAT CON NUALLY sWRITES THE LOW BYTE OF TSDB AND READS THE TSSR. THESE LATTER TwO sOPERATIONS WILL CAUSE THE °NOT SSR'* AND 'DRIVING BUS'' LED'S TO sGLOW == THEY ARE NOT REALLY LIT AT ALL TIMES BUT SHOULD APPEAR sREASONABLY VISIBLE. :INITIALIZES THE CONTROLLER TO CAUSE ALL LED'S TO EXTINGUISH. sTHIS ROUTINE INITIALIZES THE CONTROLLER, ISSUES A sWRITE CHARACTERISTICS COMMAND TO ENABLE ATTENTION INTERRUPTS, cISSUES A MESSAGE BUFFER RELEASE COMMAND, PRINTS A MESSAGE ON THE sCONSOLE TERMINAL INSTRUCTING THE OPERATOR TO TOGGLE THE ON-LINE ;SWITCH ON THE TRANSPORT, THEN WAITS FOR AN ATTENTION INTERRUPT. sEACH TIME THE TRANSPORT TRANSITIONS FROM ON-LINE TO OFF-LINE OR sVICE-VERSA, AN ATTENTION INTERRUPT SHOULD BE GENERATED. THE PROGRAM sWILL REPORT THE INTERRUPT AND THE CURRENT STATE OF THE TRANSPORT, TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 25-MAY-82 09:19 PAGE 122-1 H SEQ 0265 ;THE OPERATOR SHOULD VERIFY THAT THE REPORTED STATE MATCHES THE ;STATE INDICATED BY THE LED ON THE FRONT PANEL OF THE TRANSPORT. :IN ADDITION, WHEN THE TRANSPORT IS PLACED OFF=LINE, THE PROGRAM ;ISSUES A SEQUENCE OF TAPE-MOTION COMMANDS (READ, WRITE, POSITION, ETC. ;AND VERIFIES THAT, FOR EACH COMMAND, FUNCTION REJECT TERMINATION ;RESULTS, ALONG WITH THE NON-EXECUTABLE FUNCTION (NEF) ERROR BIT BEING :THIS ROUTINE INSTRUCTS THE OPZRATOR TO MOUNT A SCRATCH s TAPE REEL THAT DOES NOT HAVE A WRITE-ENABLE RING INSTALLED, THEN ;WAITS FOR THE OPERATOR TO RESPOND THAT THIS HAS BEEN ACCOMPLISHED. ;UPON THE RESPONSE., THE PROGRAM VERIFIES THAT THE TRANSPORT SHOWS ;A WRITE-PROTECTED STATUS, THEN ATTEMPTS TO WRITE DATA ON THE sTAPE AND EXPECTS THE APPROPRIATE ERROR TERMINATION INDICATING THAT :THE WRITE FUNCTION COULD NOT BE PERFORMED BECAUSE THE REEL IS ;WRITE-PROTECTED. IF ;AN ERROR IS REPORTED. THE APPROPRIATE TERMINATION IS NOT RECEIVED, s INSTRUCTS THE OPERATOR TO PLACE THE TAPE TRANSPORT(S) sON=LINE (IF ANY ARE OFF-LINE) THEN ATTEMPTS TO PERFORM AN EXTENDED :STATUS READOUT. FOR EACH TRANSPORT EQUIPPED WITH THIS FEATURE, :THE PROGRAM FORMATS AND PRINTS OUT THE RESULTING STATUS. : TRANSPORT IS NOT EQUIPPED WITH THIS FEATURE, ;SUCH IS ISSUED. 5937 066646 066646 5942 066646 066646 5943 066650 5944 066652 5945 066656 5946 066660 5947 066660 5948 066664 5949 066670 5950 066674 5951 066676 5952 066702 5956 066702 5957 066706 5958 066714 5959 066720 5960 066722 5961 066724 5962 066730 5963 066732 066732 066736 066740 066744 066746 A MESSAGE IF THE INDICATING BGNTST 104421 001403 012700 000402 072230 218 012700 004737 004737 103402 000137 073345 016510 020500 3s: 071430 228 005037 012737 004737 103427 010001 032701 001023 002222 176750 015774 012727 000000 013727 000000 005367 000250 000200 002116 177772 071442 2s: S$: RFLAGS RO T10:: :GET OPERATOR FLAGS BEQ MOV 218 #T38NE RO :BR, IF OK TO RUN J'TEST NOT EXECUTED*' MOV #73810,R0 sTEST 1D MESSAGE JSR PC,CHKMAN ;1S MANUAL INTERVENTION ALLOWED? B8R JSR BCS 3s PC,TSTSETUP 22% TRAP :JUMP IF NOT FIRST TEST ;DO THE COMMON SETUP ;BR, IF MANUAL INTER ALLOWED JMP 648 :JUMP IF NOT ALLOWED CLR MOV JSR FATFLG #65000.,T38DLY PC,SOFINIT ;CLEAR THE FATAL ERROR FLAG :SET UP DELAY COUNTER ;DO A SOFT INIT MOV 81T RO,R1 #SSR,R1 ;CONTENTS OF TSSR REGISTER sCHECK FOR TSSR SET BCS BNE DELAY 23§ 238 250 CSRFLA *BRANCH IF OK ;KEEP GOING IF NOT SET ;CALL DELAY ROUTINE MOV .WORD #250,(PC) O .WORD DEC O ~6(PC) MOV LSDLY, (PC) + — —_ TSVS = HARDWARE TESTS TEST 10: MANUAL 066752 066754 066760 5964 066762 5965 066766 5966 066770 066770 066772 066774 066776 5967 067000 5968 067004 5969 067010 5970 067014 MACRO M1113 INTERVENTION 0061375 005367 001367 005337 001352 104455 001751 003652 012034 012700 012701 004737 010004 073372 000006 5991 067114 012704 072150 5993 067124 5997 067126 5998 067130 067130 067132 067134 067136 5999 067140 6000 067140 6001 067146 gggg 067154 004737 103405 6$: 108: 073241 000001 000004 073776 015774 072170 100$: 010662 MoV MOV #MIMENU,RO #6,R1 R4 368 (R4) 28 10% 158 20% 25% 358 63% #T38MS? JSR JSR 8CS MoV ERRDF PC,T38REST PC,SOFINIT 100$ RO.R1 ERRNO,SFIERR,SFIMSG MOV UNTTN, T38DSW MOV #T38PK2 R4 Mov ERRHRD 005056 012034 000000 000011 071450 071461 071460 1108: PC,GETSEL RO,Ré4 ASL JMP .WORD .WORD WORD .WORD .WORD +WORD .WORD PRINTF 8CS 104456 001753 112737 012704 138DLY 5$ ERRNO,SFIERR,SFIMSG JSR 010001 112737 DEC BNE ERRDF JSR MoV 067024 gggg 6006 067160 23$: 020256 002202 5992 067120 l SEQ 0266 071442 104455 001752 003652 012034 013737 012746 012746 010600 104417 062706 004737 004737 103405 010001 PAGE 122-2 177756 5971 067016 5972 067020 5973 067026 5974 067026 5975 067030 5976 067032 5977 067034 5978 067036 5979 067040 5980 067042 067042 067046 067052 067054 067056 5981 067062 5982 067066 5983 067072 5987 067074 5988 067076 067076 067100 067102 067104 gggg 067106 006304 000174 066702 067042 067324 067556 070212 071146 071424 25-MAY-82 09:19 PC,WRTCHR 1108 RO,R1 ERRNO,WRTMSG, SF IMSG ;BUMP COUNTER DOWN ;BR, IF MORE TIME LEFT ¢REPORT FATAL ERROR TRAP .WORD +WORD .WORD sMENU OF MANUAL INTERVENTIONS sMAXIMUM ALLOWED SELECTION Move MOV #0,7388S1 #17 738850 #T3RPACKET,Ré 000000 MoV R4, TSDB(RS) CSERDF 1001 SFIERR SFIMSG sCONVERT TO WORD OFFSET :JUMP TO PROPER LOOP RETYPE THE MENU : 1 TURN ON LED'S ¢ 2 TURN OFF LED'S : 3 ONLINE ATTENTION s & WRITE PROTECT : 5 EXTENDED TRANSPORT STATUS s 6 LEAVE THE TEST sTELL OPERATOR TO CNTRL=-C FOR EXIT MOV #138MS2,~(SP) MoV #1,-(SP) MOV SP,RO TRAP CSPNTF ADD #4,SP sSET PACKET TO INITIAL VALUES sD0O SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD 1002 .WORD SFIERR .WORD SFIMSG sSET UNIT NUMBER < SUBROUTINE NEEDS PACKET ADDRESS sI1SSUE WRITE CHARACTERISTICS sBR, IF COMMAND ISSUED OK cSAVE CONTENTS OF TSSR SWRITE CHARACTERISTISC FAILED TRAP .WORD .WORD .WORS MOv8 .=b =22(PC) .=20 :GO GET THE OPERATORS SELECTION ¢GET NUMBER FROM ROUTINE sCLEAR BIT #4 CSERHRD 1003 WRTMSG SFIMSG JWRITE MISC COMMAND sSET UP NEW WRT. SUBSYS MEM. COMMAND sNOTE: THIS COMMAND TURNS ON THE PROCESSOR FAIL LED 010465 BNE DEC BNE sSET THE PACKET ADDRESS TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 6007 067164 6008 067170 6009 067172 6013 067174 067174 067176 067200 067202 6014 067204 067204 6015 067206 067206 067212 6016 067214 6017 067220 6018 067226 6019 067230 6020 067234 6021 067242 6022 067246 6023 067252 6024 067256 6025 067262 6026 067266 067266 067272 6027 067274 6028 067300 6029 067302 6030 067306 6031 067312 6032 067316 6033 067320 6034 067322 6035 6036 067324 067324 6037 067344 6038 067350 6042 067352 6043 067354 0673564 067356 067360 067362 6044 067364 6045 067364 6046 067372 6047 067376 6048 067402 6052 067404 6053 067406 067406 004737 103405 010001 25-MAY-82 09:19 016336 : 1508 104406 012700 000340 005037 032737 001005 005237 052737 071434 000160 106441 0714634 000100 000060 071436 070730 071440 000340 177560 177560 701$: 177777 128: 001750 148: 000000 000062 ERRDF ERRNO, T38SSR,PKTSSR 15%: 073241 000001 000004 015774 RO,R1 #PR107 cLR 8IT BNE INC BIS TTION2 #100,3#TTICSR 7018 TTION? MOV Mov MOV MOV MOV MOV NOP MOV Move MOV PRINTF MOV ERRDF #100,@#TTICSR #TTIVEC,R1 (R1),TVSAV2 #5908, (R1)+ (R1) ,TPSAV2 #PR]I07, (R1) #PR100 103405 010001 104456 cWAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD PKTSSR sRAISE THE PRIORITY TRAP cscLP1 MOV TRAP #PR107 ,RO sASSUME INTERRUPTS ARE ENABLED sARE TTl INTERRUPTS ON ? sSTART OF TT] VECTORS cSAVE THE CURRENT TT] VECTOR cSET NEW INTERRUPT ROUTINE SSAVE THE VECTOR PRIORITY ¢USE PRIORITY SEVEN ;LOWER INTERRUPT BR LEVE#OV 128 :DATA TO WRITE TO TSDB sALLOW OPERATOR TO TYPE “C sSET=UP INNER LOOP ¢WRITE DATA TO TSDB sREAD TSSR REDUCE INNER COUNT cLOOP TILL EXPIRES sLOOP UNTIL HALTED #T38MS2 sTYPE #1000. ,R2 R1,TSDB(RS) ;gSR(RS).RO 148 PC,SOFINIT 2008 RO,R1 ERRNO, SFIERR,SF IMSG CNTL C TO EXIT MOV MOV MoV TRAP ADD ;DO SOFT INIT OF CONTROLLER sBR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR ¢DEVICE FATAL ERROR DURING INIT TRAP -WORD -WORD -WORD 002202 072150 010662 072170 MOV MOV JSR BCS ML ERRHRD UNITN, T38DSW #T38PK2 R4 PC.WRTCHR 2108 ERRNO, WRTMSG, SF IMSG CS$SPRI sBRANCH IF YES cFLAG SET IF INTERRUPTS OFF ¢ENABLE INTERRUPTS TRAP 001755 003652 012034 013737 012704 004737 SEQ 0267 cLOOP ON ERROR, IF FLAG SET SETPRI] JSR BCS 1046455 1508 CKLooP DEC BNE BR 000766 012746 012746 010600 104417 062706 004737 103405 010001 PC,CHKTSSR SETPR] 000000 J JSR BCS MOV 1046455 001754 072646 012046 PAGE 122-3 sSET UNIT NUMBER sSUBROUTINE NEEDS PACKET ADDRESS sISSUE WRITE CHARACTERISTICS sBR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED TRAP #PR100,RO CSSPRI #738MS2,-(SP) #1,-(SP) SP,RO CSPNTF ns,SP CSERDF 1005 SFIERR SFIMSG CSERHRD — TSVS = HARDWARE® TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 067410 067412 067414 25-MAY-82 09:19 Qe %o 0 o S 000000 000025 07 1450 000000 071461 071460 R A Al AAARARE 108: 2 2 MOv8 Move MOV MoV JSR B(CS MOV ERRDF 104455 001757 104441 2508: e A A I s I I I #0,738851 #25.738850 #T3BPACKETR4 , R4, TSDB(RS) PC.CHKTSSR 2s0s RO,R1 ERRNO, T38SSR,PKTSSR 071434 000100 CLR 177560 I I R I T I I I I Y S 2 222222 177560 7108: 000004 000000 002224 015774 #PRIO7 sCLEAR BIT #4 sSTOP DRIVE TEST 22 ;SET UP NEW WRT. SUBSYS MEM. COMMAND sSET _THE PACKET ADDRESS ;WAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) ¢SAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET SETPRI 208: NOP .WORD .WORD IF FLAG SET sRAISE THE PRIORITY #PR107, (R1) sSET NEW INTERRUPT ROUTINE sSAVE THE VECTOR PRIORITY sUSE PRIORITY SEVEN cLOWER INTERRUPT BR LEVEL 2608 PRINTF #T38MS2 sTELL'EM WHAT TO TYPE #PR100 CLR JSR 8(S PC,SOFINIT ERRDF ERRNO,SFIERR,SFIMSG INTRECV 3008 CS$SPR] sBRANCH IF YES BR MOV #PR107,RO sFLAG SET IF INTERRUPTS OFF cENABLE INTERRUPTS sSTART OF TTI VECTORS sSAVE THE CURRENT TTI VECTOR sALLOW CNTL C cLOOP UNTIL STOPPED SETPR] MOV TRAP TTION2 #100,a#TTICSR #PR100 PKTSSR CSCLPT sASSUME INTERRUPTS ARE ENABLED cARE TTI INTERRUPTS ON ? (R1),TVSAV2 #5908, (R1)+ (R1), TPSAV2 CSERDF 1007 T38SSR TRAP TTION2 #100,3#TTICSR #TTIVEC.R1 MOV 260$: 073241 000001 1006 WRTMSG SFIMSG 2122222222223 ;LOOP ON ERROR, 7108 000000 6085 067554 ckLoop SETPRI] 000340 071434 000100 000060 071436 070730 071440 000340 010001 Al . WORD -WORD .WORD TRAP .WORD 072646 012046 012700 6097 067620 SEQ 0268 THIS WRITE SUB-SYSTEM MEMORY COMMAND JUST HOLDS THE LEDS OFF 016336 104406 6088 067556 067556 067562 067566 067570 067572 6089 067576 067576 067602 6090 067604 6091 067610 6092 067614 6096 067616 K 061756 005056 012034 AL AAALARE 6059 067416 6060 067416 6061 067424 6062 067432 6063 067436 6064 067442 6065 067446 6066 067450 6070 067452 067452 067454 067456 067460 PAGE 122-4 MoV TRAP MOV MOV MOV TRAP #PRI00,RO CSSPRI #738MS2,~-(SP) 1 ,-(SP) SP,RO CSPNTF ADD #, SP MOV TRAP #PRI00,RO sLOWER PRIORITY TO ALLOW INTERRUPTS ¢CLEAR INTERRUPT RECEIVED FLAG sD0 SOFT INIT OF CONTROLLER ¢BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING IN]Y CSSPRI — TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 067620 067622 067624 067626 6098 067630 6099 067630 6100 067636 6101 067644 6102 067650 6103 067654 6107 067656 6108 067660 067666 6109 067670 6110 067670 6111 067674 6112 067700 6113 067704 6120 067732 6124 067734 067734 067736 067740 067742 6125 067744 067744 6126 067746 067746 067752 067756 067760 067762 6127 067766 067766 067772 067776 070000 070002 6128 070006 070006 070012 6129 070014 6130 070020 6131 070026 6132 070030 6133 070034 6134 070942 6135 070046 25-MAY-82 09:19 164455 001760 003652 012034 013737 012737 012704 004737 103405 010001 002202 000040 072150 072170 072166 3008: 010662 ERRHRD 000100 000200 3508: 062706 000004 012746 012746 010600 073241 000001 062706 000004 012700 000340 005037 032737 CSERDF 071434 000100 071434 000100 000060 071436 sSET UNIT NUMBER IN PACKET cENABLE ATTENTION INTERRUPTS ¢ SUBROUTINE NEEDS PACKET ADDRESS s ISSUE WRITE CHARACTERISTICS ¢BR, IF COMMAND ISSUED OK ¢SAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED TRAP SETPR] 177560 CLR 8IT BNE INC 8IS MOV MOV WRTMSG SFIMSG R2 TSSR(RS) ,R1 JMAKE SURE ALL IS CLEAR JGET TSSR STATUS ;1S OFL SET sBR, IF OFL IS NOT SET JSET OFL IN EXPECTED :SET UP EXPECTED ;1S EVERYTHING OK :BR, IF ALL IS WELL ;DEVICE FATAL SSR FAlLEDT;RPSET ERRNO, T38SST,PKTSSR JWAIT FOR SSR TO SET -WORD -WORD -WORD <LOOP ON ERROR, IF FLAG ;gxp #T38MS1 sTELL OPERATOR TO TOGGLEngvlTCH #T38MS?2 #PR]07 TTION2 MoV sASSUME INTERRUPTS ARE ENABLED ¢ARE #100,9#TTICSR SFLAG SET IF INTERRUPTS OFF ¢ENABLE INTERRUPTS (R1) ,TVSAV2 :SAVE THE CURKFNT TT] VECTOR #TTIVEC R INTERRUPTS ON ? sBRANCH IF YES cSTART OF TT1 VECTORS CSCLP #738MS2,~(SP) TRAP TTI PKTSSR MOV MOV MOV TRAP ADD #100.3#TTICSR 7208 TTION? 1010 138SST MOV TRAP ADD sTELL OPERATOR TO DO ~C T0 EXIT JRAISE THE PRIORITY CSERHRD #738MS1,-(SP) #,-(SP) SP,RO CSPNTF #4,SP MoV PRINTF CSERHRD 1009 sSET UP NEW PACKET FOR MESS BUF REL sMESSAGE BUFFER RELEASE ,ACK,CVC=1 CMD (xLooP PRINTF 177560 1008 SFIERR SF IMSG #T738PK3,R4 R4, TSDB(RS) : 3208 BEQ ERRHRD 073146 000001 310s RO,R1 ERRNO,WRTMSG, SF IMSG PC,WAITF 000002 000100 012746 012746 010600 UNITN, T38DSW #8115, T38EA] #T38PK2 R4 PC,WRTCHR -WORD -WORD -WORD 310$: 072200 000000 016250 104406 104441 MOV MOV MOV MOV 001762 073056 012046 104417 SEQ 0269 .WORD -WORD .WORD JSR BCS 104456 104417 L TRAP 104456 001761 005056 012034 012704 010465 004737 005002 016501 032701 001402 052702 052702 020201 001404 PAGE 122-5 #1,-(SP) SP,RO CSPNTF #4,SP #PR107 RO CSSPR] TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENT ION 6136 070052 6137 070056 6138 070062 6139 070066 2 6140 070074 6141 070076 6142 070102 6143 070104 6144 070106 070106 070112 070116 070120 070122 6145 070126 6146 070132 6147 070136 6148 070140 070140 070144 070150 070152 070154 6149 070160 6150 070162 070162 070166 070172 070174 070176 6151 070202 6152 070206 6153 070212 070212 070214 070216 070220 070222 070224 070226 6154 070226 070226 6155 070230 6156 070234 6157 070236 6158 070242 6159 070242 6160 070246 6164 070250 6165 070252 070252 070254 070256 070260 6166 070262 012721 011137 012711 012700 104441 000240 005737 001001 000773 012746 012746 010600 104417 062706 016501 032701 001011 070730 071440 000340 002224 072736 000001 062706 000410 000004 012746 012746 010600 104417 062706 005037 000137 073022 000001 000004 002224 067630 104443 000404 073774 000120 073305 177777 SETPRI #PRI00 sSET _NEW INTERRUPT ROUTINE sSAVE THE VECTOR PRIORITY sUSE PRIORITY SEVEN sLOWER INTERRUPT BR LEVEL INTRECV 3708 sALLOW CONTROL C sDID AN INTERRUPT OCCUR ? ¢BRANCH IF YES NOP TSt BNE BR PRINTF PRINTF BR PRINTF #Pr107, (RD) 3608 #T3BINT TSSR(RS) ,R1 #OFL R 3808 #T380NL 3908 #T380FL MOV TRAP 3908: 258: CLR JMP GMANIL INTRECV 300 T38MSG,T38DAT,=1.NO ;" INTERRUPT RECEIVED'' sREAD TSSR STATUS sCHECK THE OFF=LINE BIT sBR, MOV MOV MOV TRAP ADD 004737 015774 27 sALMOST DONE MoV MOV MOV TRAP ADD :"DRIVE 1S NOW OFF-LINE'’ sCLEAR INTERRUPT FLAG 010001 MOV ERRDF 104455 400$: CKLOOP SP,RO CSPNTF #4,SP #6,SP cTRY AGAIN sWAIT FOR OPERATOR TO MOUNT TAPE 1 0000s$: BR .WORD .WORD -WORD -WORD 8c( sRETURN TO MAIN MENU PC,SOFINIT s00 SOFT INIT OF CONTROLLER ¢BR IF SOFT INIT = OK +SAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT RO,R1 ERRNO, SFIERR, SF IMSG #T380NL ,~(SP) #1,-(SP) SP,RO CSPNTF 28 4008 #4,S5P MOV TRAP ADD ;DID OPERATOR SAY °YES*® ? ¢BRANCH [F YES JSR SP,RO CSPNTF #T380FL ,~(SP) 3 BNE BCS #T3BINT ,-(SP) #1,-(SP) MOV sRETRY IF ERROR JMP CS$SPRI IF DRIVE IS OFF-LINE :'"DRIVE 1S NOW ON-LINE‘’ BNCOMPLETE 25% T38DAT 278 #PR100,RO sWAIT SOME MORE FOR INTERRUPT Mov 073774 066702 001763 003652 012034 SEQ 0270 #5908, (R1)+ (R1), TPSAV2 MOV BIT BNE 3808 : " TRAP 000137 103405 3708: 000004 000002 000100 072766 000001 103371 005737 001002 3608: PAGE 122-6 MOV MOV MOV 000000 012746 012746 010600 104417 25-MAY-82 09:19 TRAP -WORD sLOOP IF SELECTED -WORD .WORD CSGMAN 100008 T38DAT TS$CODE T?BHSG 25% CSERDF 1N SFIERR SFIMSG - i TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 070262 6167 070264 6168 070272 6169 070276 6170 070302 6174 070304 6175 070306 070306 070310 070312 070314 6176 070316 070316 6177 070320 6178 070324 6179 070326 6180 070332 6181 070334 6185 070336 070336 070340 070342 070344 6186 070346 6187 070352 070352 6188 070354 6189 070360 6190 070362 6191 070366 6192 070374 6193 070400 6194 070404 6195 070410 6196 070414 6197 070420 6198 070422 6202 070424 070424 070426 070430 070432 6203 070434 070434 6204 070436 6205 070442 6206 070444 6207 070450 6208 070452 6212 070454 070454 070456 070460 070462 6213 070464 070464 6214 070466 164406 013737 012704 002202 072150 010662 25-MAY-82 09:19 072170 MOV Mov JSR 8CS MOV 010001 ERRHRD 104456 001764 005056 012034 104406 013701 010102 052702 020102 001406 4108: 071474 ERRHRD 104456 001765 072464 015474 005237 104406 005737 001402 000137 017737 012704 010465 004737 016501 012702 020102 001404 002222 002222 066702 112532 072220 000000 016250 000002 104406 072222 435%: 100206 106456 001766 072400 012046 013701 010102 052702 020102 001404 4308: 071474 001767 072525 015474 104406 000137 4508$: 066702 4108 RO,R1 ERRNO,WRTMSG, SF IMSG sLOOP IF SELECTED T38BFR+6,R1 R1,R2 #BIT2,R2 R1,R2 4308 ERRNO, T38WRL ,EXPREC sPICK UP XSTO CONTENTS cWAS THE DRIVE NOT WRITE LOCKED :BR, IF FLAG NCT SET 2% aFREE, T38WR #T138PK4 R4 R4, TSDB(RS) PC,WAITF TSSR(RS) ,R1 #SC!SSR!BIT1!BIT2,R2 R1,R2 4408 ERRNO, T38WRT,PKTSSR C(KLOOP 4 ERRNO, T38WLE ,EXPREC (kKLOOP JMP CSERHRD 1013 T38WRL EXPREC cscLP1 sSET UP WRITE BUFFER ADDRESS sGET PACKET ADDRESS sSET _THE PACKET ADDRESS cWAIT FOR SSR TO SET sGET TSSR sSET UP EXPECTED sARE THEY EQUAL (CORRECT) ¢BR, IF CORRECT STATUS s"'TSSR INCORRECT AFTER WRITE COMMAND CSERHRD 1014 T38WRT IF FLAG % sREAD XSTO CONTENTS PKTSSR cscLP ¢SET UPR EXPECTED sSET THE WRITE LOCK ERROR BIT (XSTO) sWAS THE BIT SET ¢BR, IF IT WAS (GOOD) ¢"WRITE LOCK ERROR BIT N? sLOOP IF SELECTED 28 cscLP sRE=-WRITE MENU <LOOP ON ERROR, T38BFR+6,R1 1012 WRTMSG SFIMSG sBR, IF ALL IS WELL (OK) :'WRITE LOCKED BIT IS NOT SET ETC."’ FATFLG MOV MOV MOV JSR MOV MOV CSERHRD cARE THEY CORRECT TST BEQ JMP 435% CsCLP1 sSET UP EXPECTED sSET UP THE WRITE LOCKED BIT sSET FATAL FLAG ;LOOP IF SELECTED BIS CMP 8EQ ERRHRD 104456 #T38PK2.R4 PC.WRTCHR sSET UNIT NUMBER s SUBROUTINE NEEDS PACKET ADDRESS sISSUE WRITE CHARACTERISTICS s8R, IF COMMAND ISSUED OK +SAVE CONTENTS OF TSSR ¢WRITE CHARACTERISTISC FAILED FATFLG MOV MOV 004000 UNITN, T38DSW SEQ 0271 INC C(KLOOP CMP BEQ ERRHRD 4408 N ckLOOP MOV MOV 81S CMP BEQ 000004 PAGE 122-7 :G0 BACK TO MENU CSERHRD 1015 T38uWLE EXPREC ($CLPY TSVS = HARDWARE TEST, MACRO M1113 TEST 10: MANUAL INTERVENTION 6215 6216 6217 6218 6219 070472 6220 070472 070472 070476 070502 070504 070506 6221 070512 6222 070516 6223 070522 6227 070524 6228 070526 070526 070530 070532 070534 6229 070536 6230 070544 6231 070550 6232 070554 6236 070556 6237 070560 070560 070562 070564 070566 6238 070570 6239 070570 6240 070576 6241 070604 6242 070610 6243 070614 6244 070620 6245 070622 6249 070624 070624 070626 070630 070632 6250 070634 070634 6251 070636 070636 070642 6252 070644 6253 070650 6254 070656 6255 070660 6256 070664 6257 070672 6258 070676 6259 070702 6260 070706 25-MAY-82 09:19 sNENRAAAAA AR PAGE 122-8 8 SEQ 0272 AR N AARNAN R RN AN NN ANARARNAARNANANANARN NN RN NRRNACNNNAS SERVO EXERCISER NO LONGER USED SARNEN A AN AARNANAANAIN NN 012746 012746 010600 072305 000001 062706 004737 004737 103405 010001 000004 073776 015774 104414 PRINTB JSR JSR 8(S ERRDF 104455 001770 003652 012034 013737 012704 004737 103405 010001 NN #T38MS3 °C,T38REST PC,SOFINIT 5008 RO,R1 ERRNO, SFIERR,SF IMSG AN AAR NN AN AR NANNNNNNNRANNNNIRNS :''EXE ANY OTHER MENU SELECTION TO STOP Mov #T38MS3,-(SP) MOV MOV TRAP ADD #1,-(SP) SP,RO CSPNTB #4,SP TRAP CSERDF .WORD .WORD SFIERR SFIMSG TRAP CSERHRD WORD WORD WRTMSG SFIMSG sSET PACKET TO INITIAL VALUES :DO SOFT INIT OF CONTROLLER ¢BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT LWORD 002202 072150 010662 072170 500$: MOV MOV JSR BCS MOV ERRHRD 104456 001771 005056 UNITN, T38DSW #T38PK2.R4 PC.WRTCHR 5108 ERRNO,WRTMSG, SFIMSG 000000 000029 071450 000000 016336 071461 071460 510$: #0, 738851 #20,738850 #T38PACKET, R4 R4, TSDB(RS) PC.CHKTSSR 5508 RO,R1 ERRNO, T38SSR,PKTSSR 104455 001772 072646 012046 104406 SETPR] 000340 071634 000100 071434 000100 000060 071436 070730 071440 ckLooP TRAP CSERDF .WORD PKTSSR TRAP cscLPl MOV TRAP #PR107,RO CSSPRI 177560 177560 CLR 8Ir BNE INC 8IS MOv Mov MOV MOV ;LOOP ON ERROR, IF FLAG SET #PR107 TTION2 #100,3#TTICSR 555% TTION2 #100,8#TTICSR #TTIVEC ,R1 (R1) ,TVSAV2 #5908, (R1) + (R1), TPSAV2 1017 sCLEAR BIT #4 sEXECUTE DRIVE TEST 22 sSET 1JP_NEW WRT. SUBSYS MEM. COMMAND sSET THE PACKET ADDRESS sWAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET .WORD .WORD 5508: 1016 ¢SET UNIT NUMBER sSUBROUTINE NEEDS PACKET ADDRESS sISSUE WRITE CHARACTERISTICS sBR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED .WORD 012034 112737 112737 012704 010465 004737 103405 010001 AN RN R RN sRAISE THE PRIORITY sASSUME INTERRUPTS ARE ENABLED sARE TTI INTERRUPTS ON ? ¢BRANCH IF VES cFLAG SET IF INTERRUPTS OFFf sENABLE INTERRUPTS sSTART OF TT] VECTORS sSAVE THE CURRENT TT] VECTOR ;SET_NEW INTERRUPT ROUTINE sSAVE THE VECTOR PRIORITY 1018 T3B8SSR TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 PAGE 122-9 ¢ TEST 10: MANUAL INTERVENTION 6261 070712 6262 070716 070716 070722 6263 070724 6264 070726 012711 000340 012700 104441 000240 000776 000000 MOV SETPRI 5608: N NOP B8R #PRIO07, (R1) #PR100 5608 SEQ 0273 sUSE PRIORITY SEVEN cLOWER INTERRUPT BR LEVE:.'Ov TRAP :LOOP AWHILE #PR100,RO C$SPR] sSTAY IN "'TIGHT'' LOOP +PROCESS CONSOLE INTERRUPTS 6269 070730 010046 113700 042700 122700 001075 012766 005066 013737 013737 112737 112737 012704 010465 012737 004737 016501 032701 001017 012727 000000 013727 000000 005367 001375 005367 001367 005337 001352 004737 103405 010001 : 5908 177562 000200 000015 066702 000004 071436 071440 000025 000000 071450 000000 176750 016250 000002 000200 000060 000062 071460 071461 6 6 6305 071152 004737 004737 MOov CLR Mov MOV Movs Movs MOV MOV MOV JSR MOV 8IT BNE #28,2(SP) 4(SP) TVSAV2, Q#TTIVEC 592%: DELAY 000250 591$ sSAVE WORK REGISTCR sCET THE OPERATOR INPUT sSTRIP OFF PARITY BIT ¢1S IT A CARRIAGE RETURN ? sJUST EXIT IF NOT JRETURN TO MASTER MENU sFORCE PRIORTY 0 ;RESTORE VECTOR TPSAVY .a#TTIVEC+D ¢RESTORE SUPER PRIORTY #25,138850 sSTOP DRIVE TEST 22 #0, 738851 sCLEAR BS1 #T$8PACKET,RG sSET UP NEW WRT. SUBSYS MEM. COMMAND R4, TSDB(RS) #65000.,738DLY PC.WAITF TSSR(RS) ,R1 #SSR,R1 5958 250 sSET THE PACKET ADDRESS sSET UP DELAY COUNTER DO A WAIT FOR SSR sCONTENTS OF TSSR REGISTER cCHECK FOR TSSR SET sKEEP GOING IF NOT SET sCALL DELAY ROUTINE 6250.(PC)0 002116 b‘DLV.(PC)* 177772 -6(PC) 177756 =22(PC) =20 =4 071442 DEC 016336 595$: JSR 8(s MOV ERRDF 106455 001773 072646 012046 104406 005737 001403 042737 012600 000002 RO,=(SP) a#TTIBFR,RO #200,R0 #15,R0 BIC CMPB BNE 000002 071442 Mov MOv8 T38DLY 592¢ PC,CHKTSSR 580% RO,R1 ERRNO, T38SSR,PKTSSR ;BUMP COUNTER DOWN sBR, IF MORE TIME LEFT sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) ;SAVE CONTENTS OF TSSR ;DEVICE FATAL SSR FAILED TO SET TRAP .WORD 580$: 071434 000100 073776 015774 CKLOOP TST 177560 591%: 35%: BEQ 8IC MOV RT] JSR JSR :LOOP ON ERROR, TTIONZ2 5918 #100,8#TTICSR (SP)+ RO PC,T38REST PC,SOFINITY IF .WORD FLAG SET TRAP sARE SUPER INTERRUPTS ENABLED ;BR, IF YES sRESTORE REGISTER RESTORE REGISTER sRETURN sSET PACKET TO INITIAL VALUES :D0 SOFT INIT OF CONTROLLER CSERDF 1019 T38SSR PKTSSR cscLPl — TSVS = HARDWARE TESTS MACRO M1113 25-MAY-82 09:19 PAGE 122-10o TEST 10: MANUAL INTERVENTION 6306 071156 6310 071160 6311 071162 071162 071164 071166 071170 6312 071172 071172 6313 071174 6314 071200 6315 6316 071204 6317 071206 6318 071212 6319 071214 6320 071216 6321 071224 6322 071230 6323 071234 6327 071236 6328 071240 071240 071242 071244 071246 6329 071250 071250 6330 071252 6331 071260 6332 071266 6333 071272 6334 071276 6335 071304 6336 071310 6337 071314 6338 071320 6339 071322 071322 071326 071330 071334 071336 071342 071344 071350 6340 071352 6341 071356 6342 071360 6343 071364 6344 071366 6348 071370 071370 071372 071374 071376 6349 071400 163405 010001 BCS MOV ERRDF 1046455 001774 003652 012034 600$: 104406 012701 012702 010221 022701 001401 000773 013737 012704 004737 103405 002202 072150 010662 072170 605$: 012727 000000 013727 000000 005367 001375 005367 001367 005337 001352 004737 103405 010001 610$: 000000 000024 071450 000000 000144 016250 000002 000200 071461 071460 071442 620$: MOV MOV MOV JSR MOV 8lr BNE CSERDF TRAP .WORD .WORD .WORD 1020 SFIERR SFIMSG T RAP csCLP #T38BFR,R1 #125252,R2 sADDRESS OF MESSAGE BUFFER JALTERNATING 1°S AND 0°S R2, (R1)+ sCLEAR OUT THE MESSAGE BUFFER SEND OF BUFFER YET sBR, IF AT END OF BUFFER sNOT AT END KEEP GOING ¢SET UNIT NUMBER s SUBROUTINE NEEDS PACKET ADDRESS sISSUE WRITE CHARACTERISTICS sBR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR #T38EB.R1 6058 6018 UNITN, T38DSW #T38PK2 R4 PC,WRTCHR 610s RO,R1 ERRNO,WRTMSG, SF IMSG sWRITE CHARACTERISTISC FAILED TRAP .WORD .WORD «WORD sLOOP IF SELECTED #0,7388S1 024738850 #T38PACKER4 T R4 ,TSDB(RS) #1600, ,7380LY PC.WAITF TSSR(RS) ,R1 DELAY 000250 sBR IF SOFT INIT = 0K +SAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT <LOOP ]F SELECTED CKLOOP MOvV8 Move CSERHRD 1021 WRTMSG SFIMSG TRAP cscLPt sCLEAR BIT #4 sREAD EXTENDED DRIVE STATUS sSET UP NEW WRT. SUBSYS MEM. COMMAND sSET THE PACKET ADDRESS sSET UP DELAY ROUTINE sWAIT AWHILE FOR SSR TO SET cSEE IF 1T REALLY DID sJUST CHECK THAT BIT :BR, IF SSR IS SET sDELAY ABOUT .25 SEC 8250.(PC)0 002116 bSDLY.(PC)O 177772 -6(PC) =4 177756 =22(P() 071442 016336 , 630$: 650%: T38DLY 6208 DEC BNE JSR 8CS 6508 ERRDF ERRNO, T38SSR,PKTSSR MoV 1046455 001776 072646 012046 MOV Mov ERRHRD 001775 005056 012034 012704 010465 012737 004737 016501 032701 001017 CMP BEQ B8R MOV 104456 104406 112737 112737 MOV JSR BCS 010001 RO,R1 ERRNO, SFIERR, SF IMSG CKLOOP MOov MoV 601$: 600$ SEQ 0274 CkLoop PC,CHKTSSR RO,R1 sSTART DELAY COUNT DOWN sBR, IF COUNTER IS NOT AT DONE sWAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) +SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET :LOOP ON ERROR, IF TRAP .WORD -WORD .w RD FLAG SET PKTSSR TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 071400 6350 071402 6351 071406 6352 071410 6353 071414 6354 071420 6355 6356 6357 071424 6358 071430 071430 071432 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 071434 6371 071436 gg;% 071440 6374 G71442 6376 6378 071450 6379 071450 6380 071452 6381 071454 6382 071456 6383 071460 6384 071460 6385 071461 6386 071462 6387 071464 6388 071466 6389 072142 6390 63N 6393 6395 072150 6396 072150 6397 072152 6398 072154 6399 072156 6400 6401 6402 072160 6403 072160 6404 072162 6405 072164 6406 072166 6407 072170 104406 012700 005001 005037 004737 000137 003134 074034 066702 000137 000200 104432 003054 25-MAY-82 09:19 071506 638: 64$: PAGE 122-11 3 SEQ 0275 TRAP CSCLPT Mov CLR CLR JSR JMP #1388FR+20,R0 R1 KTENABLE PC,T38MBP 23 ¢MESSAGE BUFFER ADDRESS sNO HIGH ORDER ADNRESS BITS sNO KT11 STUFF EITHER 260 PRINT MESSAGE BUFFER CONTENTS :GO BACK TO MENU JMP EXIT 200 TST JREALLY RETURN TO THE SUPERVISOR sLEAVE TEST TRAP .WORD CSEXIT L10075-. ot ;LOCAL TEXT MESSAGES FOR TEST .= sLOCAL STORAGE FOR THIS TEST o= .t +LOCAL STORAGE FOR THIS TEST .= 000000 000000 000000 TTIONZ: TVSAV2: TPSAVZ2: 000000 071450 T38DLY: 140006 071460 000000 000012 000 000 000000 000000 000000 072150 140004 072160 000000 000012 071466 000000 000400 000000 000000 .WORD WORD LWORD O O .WORD O L=<, +10>8177770 T38PACKET: WORD 140006 .WORD T38TAD LMORD 0 LWORD 10. T38TAD: 71388S0: .BYTE 0 1388S1: .BYTE 0 1388S2: .WORD 0 LWORD O T38BFR: .BLKW 150. T38EB: .WORD T38PK2: sWORD SET IF SUPERVISOR TTI INTER OFF sSAVE TTI VECTOR ¢SAVE TT1 PRIORITY sDELAY COUNTER FOR TEST sCOMMAND PACKET FOR TEST SWRITE SUBSYSTEM MEM. CMD, ACK,CV(C=1 sADDRESS OF CHARACTERISTICS BLOCK :STARTING VALUE OF BLOCK SIZE sCHARACTERISTICS DATA BLOCK ;BSELO BYTE ;JBSELT BYTE ;BSEL1 WORD :DATA JMESSAGE BUFFER JEND OF BUFFER ADDRESS =<, +10>8177770 .WORD .WORD LWORD .WORD 140004 T38DTA O 10. .WORD LWORD .WORD T38EAI: .WORD T38DSW: .WORD T38BFR 0 256. O O T38DTA: O sCOMMAND PACKET FOR TEST SWRITE CHARA. MEM, CMND., ACK,Cv(=1 cADDRESS OF SELECT DATA BLOCK sSTARTING VALUE OF BLOCK SIZE sSELECT DATA BLOCK ;ADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER ;EAI BIT WORD ;DRIVE SELECT WORD ETC TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 6409 6411 072200 6412 072202 6413 0722064 6414 072206 22}2 072210 25-MAY-82 09:19 f SEQ 0276 072200 140212 000000 000000 000000 000000 T38PK3: gz}g 6420 6422 6423 6424 gzsg PAGE 122-12 =<, +10>8177770 .WORD 140212 WORD 0 LWORD 0 WORD 0 WORD O JMESSAGE BUFFER RELEASE COMMAND ;NOT USED sNOT USED :NOT USED sNOT USED JWRITE TAPE PACKET 072220 072222 072224 072226 072220 140005 000000 000000 000400 T38PK4: T38WR: T38SIZ: 6427 6428 6429 6430 6431 JWRITE, ACK, CVC=1 COMMAND ;ADDRESS OF WRITE BUFFER ¢MORE ADDRESS OF WRITE BUFFER :SIZE OF RECORD it sLOCAL TEXT MESSAGES FOR TEST = 6432 6433 6434 6435 6437 .=<.+10>8177770 .WORD 140005 .WORD O .WORD 0 .WORD 256. 6438 072230 6439 072305 6440 072400 6441 072464 6442 072525 6443 072572 64466 072646 6445 072736 6446 072766 6447 073022 6448 073056 6449 073146 6450 073241 6451 073305 22?% 073345 123 045 124 127 127 127 103 045 045 045 103 045 045 m 115 164 116 123 122 122 122 157 116 116 116 157 116 116 163 141 141 045 123 111 111 111 156 045 045 045 156 045 045 040 156 6454 073372 2222 073406 073416 073665 073470 073730 073516 073773 6457 073416 6458 073470 6459 073516 6460 073550 6461 073603 6462 073637 6463 073665 6464 073730 6465 073773 6466 6467 012 012 on on on 011 on on 000 123 011 061 062 063 064 065 066 105 060 011 011 011 011 011 011 T38BNE: T38MS3: T38WRT: T38WRL: T38WLE: T38NBA: T38SSR: T3BINT: T3BONL: T38BOFL: T138SST: T38MS1: T38MS2: T38MSG: T138ID: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCIZ .ASCIZ .gegfil ‘'Stand-alone Manual Intervention Not Executed® ‘'INXA Type <RETURN> To Stop Servo Exerciser, Return To Menu' ‘TSSR Not Correct After WRITE, With WRITE PROTECT On' ‘WRITE LOCKED Bit Not Set In XSTO' °‘WRITE LOCK ERROR Bit Not Set In XSTO' ‘'WRITE SUBSYSTEM MEMORY Command Not Accepted’ ‘Contents of TSSR Incorrect After WRITE SUBSYSTEM MEMORY' ‘INXA Interrupt Received’ ‘*INXA Orive Is Now ON-LINE' 'XNXA Drive Is Now OFF-LINE’ ‘Contents Of TSSR Incorrect After MESSAGE BUFFER RELEASE® ‘INXAToggle ON-LINE Switch to Generate ATTENTION Interrupts’ ‘'INXAType RETURN To Return To MenulN' 'Is Write-Protected Tape Mounted' ‘Manual Intervention®' MIMENU: .WORD .WORD 1%.28.3%.4%.5%,6% 8$,9%,108,0 1$: 2%: 3s: 4S$: 58: 683: 8s: 9s: 108 <12>°SELECT OPERATION FROM FOLLOWING OPTIONS:® <12 0 Display This Menu’ 1 Turn On ALL M7196 LED’'s® ° 2 Turn Off ALL M7196 LED'’s® 3 Offline/Online Attention® ° 4 Write Protect Test' A 5 Print Extended Transport Status’ ° 6 Return to Diagnostic Supervisur' ' <ASCIZ LASCIZ LASCIZ ASCIZ2 LASCIZ LASCIZ LXTH 0 ASCIZ LASCIZ .EVEN — - TSVS = HARDWARE TESYS MACRO M1113 TEST 10: MANUAL INTERVENTION 6469 25-MAY-82 09:19 PAGE 122-13 9 SEQ 0277 ;LOCAL STORAGE FOR THIS TEST ol 6472 073774 6473 073776 6474 073776 6475 074002 6476 074006 6477 074012 6478 074016 6479 074020 012701 012721 012721 005021 012721 6480 074024 005021 6481 074026 6482 074030 6483 074032 6484 6485 ‘- 000000 071450 140206 071460 000006 T38DAT: .WORD T38REST: SAVREG MOV MOV MOV CLR MOV CLR 005021 005011 000207 CLR CLR RTS 6486 6487 R : 6491 : 6493 H 6498 6499 6500 6501 074034 6592 074034 6503 074040 6504 074042 6505 074046 6506 074050 6507 074052 6508 074054 6509 074056 6510 074060 074060 ; - 6488 6489 6490 O ;LOGICAL RESPONSE TO QUESTION #T38PACKET,R1 #140206, (R1)+ #T38TAD. (R1)+ (R1)+ #6..(R1)+ :SAVE THE REGISTERS *START OF THE PACKET SWRITE SUBSYSTEM MEM. WITH ACK,CVC=1 *ADDRESS OF DATA BLOCK SEXTENDED ADDRESS :SIZE OF DATA BLOCK IN BYTES (R1)+ (R1) PC <CLEAR SEL2 JCLEAR DATA AREA *RETURN (R1)+ :CLEAR BSELO AND BSEL1 STHIS ROUTINE PRINTS THE CONTENTS OF ;THE 256 BYTE MESSAGE BUFFER RETURNED BY THE JTSVv=05. 6492 s INPUT: 6494 6495 gzgg ; ; ; 074062 074064 074070 074074 074076 074100 6511 074104 074104 074110 074114 074116 074120 6512 074124 6513 074126 T38MBP: 010005 005737 001001 005001 010103 006100 006101 003134 9108: 010546 010146 012746 012746 010600 104415 062706 012746 012746 010600 104415 062706 010501 010300 RC LOW ORDER ADDRESS OF MESSAGE BUFFER R1 HIGH ORDER ADDRESS OF MESSAGE BUFFER NOTE: R1 IS IGNORED IF KTENABLE FLAG IS CLEAR SAVRZG MOV ST BNE CLR MOV ROL ROL PRINTX RO,RS KTENABLE 9108 R1 R1,R3 RO R1 #T38ASO,R1,RS 074336 :SAVE THE REGISTERS *SAVE LOW ORDER ADDRESS :ADDRESS ABOVE 28K? ‘BR IF YES SSET HIGH ORDER ADDRESS TO 0 *SAVE HIGH ORDER ADDRESS SSHIFT BIT1S 10 € BIT “SHIFT TO HIGH ORDER FOR PRINTOUT :PRINT MESSAGE BUFFER ADDRESS MOV MOV MOV 000003 000010 074403 PRINTX #T38AS1 ;PRINT HEADER FOR CONTENTS 000001 000004 MOV MOV RS,R1 R3.RO :COPY LOW ORDER ADDRESS :COPY HIGH ORDER ADDRESS RS,=~(SP) R1.-(SP) #T58AS0,~(SP) MOV MOV TRAP ADD #3,~(SP) SP.RO CSPNTX #10,SP MOV #138AS1,-(SP) MOV MOV TRAP ADD #1,~(SP) SP.RO CSPNTX 2,SP TSVS = HARDWARE TESTS MACRO M1113 TEST 10: MANUAL INTERVENTION 6514 074130 6315 074132 6516 074136 6517 074140 6518 074144 6519 074146 6520 074152 6521 074154 6522 074156 6523 074162 6524 074164 6525 074166 6526 074170 6527 074172 6528 074174 6529 074200 6530 074202 6531 0746204 6532 074210 6533 074212 6534 074216 6535 074222 074222 074224 074226 074232 074236 074240 074242 6536 074246 6537 074252 6538 074254 074254 074256 074260 074264 074270 074272 074274 6539 074300 6540 074304 6541 074306 6542 074312 6543 074314 6544 074322 6545 074324 6546 074326 6547 074332 6548 074334 6549 6550 074336 6551 074403 6552 074441 6553 074460 6554 6555 074504 6556 074506 001403 004737 010005 010537 011504 022704 001417 010403 042704 000241 006004 006004 006004 006004 042703 060403 010325 020527 001355 013705 012704 012546 010446 012746 012746 010600 104415 062706 005037 000412 012546 010446 012746 012746 010600 104415 062706 005237 005204 020427 003010 023727 001401 000753 074504 9138: 9118: 125252 BEQ JSR MOV MOV MoV CMP H 170377 177760 072142 9128: 9158: 913s PC,SETMAP RO.RS RS T38CNT 9128 8IC #170377.R¢ cLe ROR ROR ROR ROR BIC ADD MOV CMP BNE MOV MOV PRINTX s8R _IF NOT ABOVE 28K sSETUP PAR ADDRESS IN RO sGET PAR FORMAT ADDRESS ABOVE 28k cHOLD ADDRESS ¢GET BUFFER ENTRY sCHECK FOR NO LOAD CONDITION ;BR, IF BUFFER WASN'T LOADED sMAKE COPY (R§) R4 #125852,R4 BEQ MOV 074504 000001 PAGE 122-14 SEQ 0278 017316 R4 ,R3 R R4 R4 R4 #177760.R3 R4 .R3 R3. (RS)+ RS #T3BEB 911s T38CNT,RS #1,R4 sONLY BITS 11,10,9 AND 8 ARE SAVED ¢CLEAR CARRY 211 70 10 BIT POSITION ;10 70 9 BIT POSITION ;9 T0 8 BIT POSITON ;8 7O 7 BIT POSITION JONLY BITS 3,2,1 AND O ARE SAVED :"'OR'EM TOGETHER sPUT BACK IN BUFFER sEND OF BUFFER YET sBR, IF NOT AT END YET sPUT ADDRESS BACK #T38ASN.R4, (RS)+ *START BYTE NUMBER AT ONE :PRT MEM BUFFER W/NEWLINE MOV MOV 074460 000003 CLR 920$ : B8R PRINTX T38CNT 074504 045 045 045 045 116 116 101 116 MOV TRAP SP.RO CSPNTX #10,SP 921$ #T38ASC,R4,(RS)+ MOV MOV (RS)+,~(SP) R4 ,~(SP) MOV 9218: 000004 9258: 50$: 045 045 040 045 INC INC CMP BGT CMP BEQ T38CNT R4 RG,#128. 508 T38CNT, #4 925$ (LR BR RIS T38CNT 9158 PC B8R T38ASO: .ASCIZ T38AS1: .ASCIZ T38ASC: .ASCIZ T3BASN: .gegaz T38CNT: .WORD ENDTST 9208 #3,-(SP) ADD MOV 000200 074504 #T38ASN, - (SP) sCLEAR COUNTER sSKIP OTHER PRINT :PRINT THE CONTENTS OF MEMOR: 3UFFER 074441 000003 000010 074504 (RS)+,~(SP) R4 .- ($P) MOV MOV 000010 074504 005037 000733 000207 000000 25-MAY-82 09:19 ;BUMP COUNTER JNUMBER OF THE NEXT :DONE ALL YET ? JBRANCH IF ALL DONE ;DONE FOUR YET :BR, ]F THREE DONE ;KEEP GOING ;sCLEAR COUNTER JRETURN sPRINT WITH NEW LINE ‘INIA Message Buffer Address 201205° ‘INIA Message Buffer (ontents:'® ‘YA XD4YA: %03° "INIA ByteXD4IA: 203° :COUNTER FOR PRINT MOV TRAP ADD #138ASC.~(SP) #3,-(SP) SP,RO CSPNTX #10,SP — _— TSVS = HARDWARE TESTS TEST 10: MANUAL 074506 074506 MACRO M1113 INTERVENTION 104401 25-MAY-82 09:19 PAGE 122-15 l SEQ 0279 L10075: TRAP CSETST — TSVS = HARDWARE TESTS TEST 11: MACRO M1113 CONFIGURATION TYPEOUT 25-MAY-82 09:19 <SBTTL PAGE 123 SEQ 0280 TEST 11: CONFIGURATICN TYPFOUT 1.0 STATE OF THE EXTENDED FEATURES SWITCH ON THE M7196: ON (EXTENDED FEATURES ENABLED) OR OFF (EXTENDED FEATURES DISABLED), 2.0 STATE OF THME BUFFERING ENABLE SWITCH ON THE M7196: ON (BUFFERING ENABLED) OR OFF (BUFFERING DISABLED), 3.0 MICROCODE REVSION LEVEL OF THE M7196, 4.0 NUMBER OF TAPE TRANSPORTS CONNECTED TO THE CONTROLLER, 5.0 UNIT SELECT CODE AND STATE (ONLINE/OFFLINE, WRITE ENABLED/PROTECTED) OF EACH CONNECTED TRANSPORT. IN ADDITION, THE PROGRAM WILL INDICATE, FOR EACH ON-LINE TRANSPORT, WHETHER OR NOT IT IS EQUIPPED WITH THE EXTENDED TAPE STATUS READOUT FEATURE. Ve 0o WaB0 8% 03 %003 Ve Ve Be0e0080%e 0, sTHIS IS A STANDALONE ROUTINE THAT PRINTS OUT ON THE CONSOLE TERMINAL s THE CONFIGURATION OF THE M7196 MODULE AND TSV0S SUBSYSTEM. SPECIFICALLY, sTHE FOLLOWING INFORMATION IS PRESENTED: s THE OPERATOR IS EXPECTED TO READ THE PRINTOUT AND VERIFY THAT IT MATCHES sTHE ACTUAL CONFIGURATION AT HAND. IF, FOR EXAMPLE, THE PROGRAM INDICATES sTHAT IT *'SEES'' TWO TRANSPORTS CONNECTED WHEN IN FACT ONLY ONE IS PRESENT, cTHE OPERATOR MUST INTERPRET THIS AS AN ERROR AND ATTEMPT TO FIND THE sCAUSE (BAD CABLE, FAULTY UNIT-SELECT DECODING IN THE TRANSPORT, ETC.). s[SINCE_THE CONTROLLER CAN ONLY ACCESS UNIT O IF IT IS IN “‘STANDARD'’ ;MODE, THE PROGRAM WILL FORCE THE MODULE INTO EXTENDED MODE VIA THE ;WRITE SUBSYSTEM MEMORY COMMAND IN ORDER TO SCAN FOR CONNECTED TRANSPORTS.] sTHIS ROUTINE, WHEN ITS ACTIONS ARE COMPIETED, WILL EXIT BACK TO THE sDIAGNOSTIC SUPERVISOR SO THAT IF ADDITIONAL UNITS (CONTROLLERS) ARE sSELECTED (E.G., FROM THE INITIAL STARTUP DIALOG), THE ROUTINE WILL BE JREENTERED SO THAT THEIR CCNF IGURATIONS CAN BE PRINTED. 6596 074510 074510 6601 074510 074510 6602 074512 6603 074514 6604 074520 BGNTST 104421 001403 103402 000137 004737 103405 010001 074556 104455 002115 076503 m RFLAGS RO sGET OPERATOR FLAGS 8EQ MOV BR 108 #T39NE ,RO 118 :BR, IF OK TO RUN :''TEST NOT EXECUTED'’ cJUMP OUT OF TEST IF NOT TRAP CSRFLA 077632 016510 020500 108: MOV #7ST3910,R0 sTEST ID MESSAGE 075720 208 JSR 8CS JMP PC,CHKMAN 208 648 s 1S MANUAL INTERVENTION ALLOWED? sBR, IF MANUAL INTERVENTION ALLOWED JSR 8(s PC,SOF INIT 25% :D0 SOFT INIT OF CONTROLLER sBR IF SOFT INIT = 0K ERRNO,SFIERR,SFIMSG ;DEVICE FATAL ERROR DURING INITY 015774 118¢: JSR MOV ERRDF PC,TSTSETUP RO,R1 ;00 THE COMMON SETUP sJUMP TO OUT IF NOT +SAVE CONTENTS OF TSSR TRAP LWORD CSERDF 1101 i TSVS = HARDWARE TESTS TEST 11: MACRO M1113 CONFIGURATION TYPEOUT 074560 074562 6618 074564 074564 6619 074566 6620 074574 6621 074600 6622 074604 6626 074606 6627 074610 074610 074612 074614 074616 6628 074620 074620 6629 074622 6630 074626 074626 074632 074636 074640 074642 6631 074646 6632 074652 6633 074654 074654 074660 074664 074666 074670 6634 074674 6635 074676 074676 074702 074706 074710 074712 6636 074716 074716 074722 074726 074730 074732 6637 074736 6638 074742 6639 074744 074744 074750 074754 074756 074760 6640 074764 6641 074766 074766 074772 074776 25-MAY-82 09:19 003652 012034 104406 013737 012704 004737 103405 010001 25$: 002202 076430 010662 076450 MOV 50$ ERRNO ,WRTMSG, SFIMSG 075760 012746 012746 010600 077351 000001 062706 032701 001011 000004 000200 012746 012746 010600 104415 062706 000410 077475 000001 012746 012746 010600 104415 062706 012746 012746 010600 104415 062706 032701 001011 UNITN,T39DSW #T39PK2 R4 PC , WRTCHR 50$: 0775064 000001 000004 077423 000001 BIY BNE PRINTX 1008: 077475 000001 012746 012746 010600 077504 000001 BR PRINTX .WORD .WORD SFIERR SFIMSG TRAP CsCLP ¢SET UNIT NUMBER s SUBROUTINE NEEDS PACKET ADDRESS ;ISSUE WRITE CHARACTERISTICS s8R, IF COMMAND [SSUED OK sSAVE CONTENTS OF TSSR cWRITE CHARACTERISTISC F?gksb ;LOOP IF SELECTED T398FR+12,R1 #T39SFS #8177 ,R1 100% #T390FF 110% #T390N CSERHRD 1102 .WORD .WORD WRTMSG TRAP CSCLPT MOV MOV MOV TRAP ADD #T39SFS,=~(SP) #1,=(SP) SF IMSG sGET XST2 STATUS FROM MESSAGE BUFFER :"'STATE OF EXTENDED FEATURES SW sCHECK STATE OF E.F.S. sBR, IF EXT. FEA. SW. IS ON ;IO CSPNTX #6,SP OFF" MoV MoV MOV TRAP ADD ;SKIP OTHER PRINT STATEMENT [4 #T390FF ,-(SP) #1,-(SP) SP,RO CSPNTX #4,5P #T390N,~(SP) #1,-(SP) 1108: 000004 000100 012746 012746 010600 104415 062706 000410 CKLOOP MOV PRINTX 000004 SEQ 0281 sLOOP IF SELECTED RO,R1 002116 005056 012034 104415 K ckLooP 104456 104406 013701 PAGE 123-1 PRINTX 8IT BNE PRINTX #73958S #8176, ,R1 1208 #T390FF . ADD :'STATE OF BUFFERING SWITCH =*' 1208 : B8R PRINTX 1308 #T390N #6,SP #139SBS,~(SP) MOV MOV MOV TRAP ADD #4,5P MOV MOV #,-(SP) TRAP ADD #46,5P MoV MOV MOV #T390N,~(SP) #1,-(SP) SP.RO :CHECK_STATE OF BUFFERING SW iBR, IF BUFFERING 15 ON MOV 000004 SP,RO CSPNTX ;SKIP OTHER PRINT STATEMENT #1,-(SP) SP,RO CSPNTX #1390FF ,~(SP) SP,RO CSPNTX MACRO M1113 25-MAY-82 09:19 PAGE 123-2 TSVS = HARDWARE TESTS CONF IGURATION TYPEOUT TEST 11: 075000 075002 6642 075006 6643 075012 6644 075016 104415 062706 042701 010137 000004 177700 077570 013746 012746 012746 010600 077570 077513 000002 ) 062706 6645 075042 004737 6646 075046 103405 6650 075050 010001 6651 075052 075052 104455 075054 002117 075056 003652 075060 012034 6652 075062 075062 104406 6653 075064 013737 6654 075072 012704 6655 075076 004737 6656 075102 103405 6660 075104 010001 6661 104456 002120 005056 012034 000006 015774 104415 6666 6667 075142 6668 075146 6669 075152 6670 075156 6671 075160 6675 075162 075162 075164 075166 075170 6676 075172 075172 6677 075174 6678 104406 005737 001036 112737 112737 012704 010465 004737 103405 010001 012704 TRAP CSPNTX ADD _ #4,SP ONLY LEAVE MICROCODE REV LEVEL :LOAD UP REV LEVEL , :"MICROCODE REVISION LEVEL =000XXY: 0177700 R1 BIC PRINTX T39RL 0T39HCL T39RL MOV JSR BCS PC,SOF INIT ERRDF ERRNO, SFIERR, SF IMSG 140s SP,RO CSPNTX #6,SP TRAP CSERDF .WORD .WORD SFIERR SFIMSG TRAP cscLP TRAP CSERHRD .WORD -WORD WRTMSG SFIMSG TRAP CSCLP :DO SOFT INIT OF CONTROLLER ¢BR IF SOFT INIT = 0K :SAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT .WORD 1408: 002202 076430 010662 076450 CKLOOP #T39PK2 R4 JSR 8CS PC.WRTCHR 1508 MOV ERRHRD no R1 ERRNO, WRTMSG, SF IMSG sSET UNIT NUMBER s SUBROUTINE NEEDS PACKET ADDRESS s ISSUE WRITE CHARACTERISTICS :BR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED .WORD 1508: 002226 000200 000010 075730 000000 016336 CkLOOP TST BNE 075741 075740 MOVB MOv8 MOV MOV JSR 8CS MOV ERRHRD <LOOP IF SELECTED EXTFEA 1748 #200, 739851 SWRITE MISCELLANEOUS CONT/READ STATUS sFUNCTION SELECTION BIT (TURN ON EXTFEA HW SWITCH) SWRITE SUBSYS MEM PACKET #10, 739850 #T3IOPACKET R4 R4, TSDB(RS) PC.CHKTSSR s ISSUE COMMAND 1608 :WAIT FOR SSR :BR, IF NO ERROR ERRNO, T39NBA,PKTSSR :TSSR NOT CORRECT AFTER ?:T MISCELLANEOUS RO,R1 :ERROR, SAVE TSSR .WORD 076430 CKLOOP MOv RN AN AR cLOOP IF SELECTED #T39PK2,R4 AN RN AR R A RO 010662 JSR PC.WRTCHR 1105 T39NBA PKTSSR TRAP cscLPY - SUBROUTINE NEEDS PACKET ADDRESS AR AN AN AN A NN AN RN AN R RARRAEAANRRERANNNRER RN RN NN NN O RN AR AN R RN O RN R RN RN CSERHRD -WORD 0 NN 1104 sCHECK FOR EXTENDED FEATURES SW SWITCH :BR IF SWITCH IS ON WORD 1608: 1103 cLOOP IF SELECTED UNITN, T390SW MOV MOV AN 004737 #TIIMCL ,=(SP) #2,~(SP) Mov TRAP ADD :WRITE CHARACTERISTICS COMMAND (CALL TO WRTCHR) 3 6684 075200 T39RL,-(SP) Mov MOV MOV 104456 002121 077205 012046 104406 1308: SEQ 0282 A NN AN R AR NN AN AN R AN AR R NAREARANRARED s1SSUE WRITE CHARACTERISTICS - TSVS = HARDWARE TESTS TEST 11: MACRO M1113 CONF IGURATION TYPEQUT 6685 075204 6689 075206 6650 075210 075210 075212 075214 075216 075220 075220 075222 075226 075234 075240 075244 075246 075250 075250 075252 075254 075256 6702 075260 075260 6703 6704 075262 6705 075266 6706 075272 6707 075274 075274 075300 075304 075310 075312 075314 6708 075320 6709 075324 075324 075330 075334 075340 075342 075344 6710 075350 6711 075354 6712 075360 6713 075362 075362 075366 075372 075376 075400 075402 6714 075406 6715 075410 075410 075414 075420 075424 25-MAY-82 09:19 163405 010001 ERRHRD 002202 002202 076430 010662 CKLOOP 1748: 175$: CLR MOV MOV JSR 8CS ERRHRD 1808$: 016501 032701 001414 000002 000100 013746 012746 012746 010600 002202 062706 000137 000006 075654 013746 012746 012746 010600 002202 077010 000002 062706 013701 032701 001013 000006 075754 000004 013746 012746 012746 010600 104415 062706 000412 002202 077126 000002 013746 012746 012746 010600 076450 1708: MOV 104406 104415 CSERHRD TRAP .WORD 104456 002123 005056 012034 104415 SEQ 0283 sBR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED MO 002122 005056 012034 013737 012704 004737 103405 010001 M BCS 104456 104406 005037 PAGE 123-3 : 1908 +SCOPE LOOP UNITN UNITN,T390SW #T39PK2,Ré PC,WRTCHR 1808 RO,R1 ERRNO,WRTMSG, SF IMSG ckLoop MOV 8IT BEQ PRINTX TSSR(RS) ,R1 2008 #T390F2,UNITN C$CLP TRAP .WORD .WORD .WORD CSERHRD 1107 TRAP sGET TSSR STATUS sCHECK FOR OFF~LINE :BR, IF DRIVE IS ON-LINE :'DRIVE NUMBER XX IS 0FF;66~E" 076744 000002 MOV 200$: JMP PRINTX MoV BIT BNE PRINTX 000006 002202 077053 000002 TRAP sSET TO DRIVE 0 sSET UNIT NUMBER s SUBROUTINE NEEDS PACKET ADDRESS sISSUE WRITE CHARACTERISTICS ;BR, IF COMMAND ISSUED OK sSAVE CONTENTS OF TSSR sWRITE CHARACTERISTISC FAILED sLOOP IF SELECTED #OFL ,R1 .WORD .WORD 1106 WRTMSG SFIMSG 210%: B8R PRINTX 2508 #T390N2,UNITN T398FR+6,R1 #8172.R1 2 108 #T39WPN,UNITN 2208 #T39WRT,UNITN MOV MOV TRAP ADD sD0 NOT TRY TO GET ANYMORE INFO. :"DRIVE NUMBER XX IS ON-LINE'’ SF IMSG CSCLPT UNITN,=(SP) #T390F2,-(SP) #2,-(SP) SP,RO CSPNTX #6,SP UNITN,=(SP) #T390N2,-(SP) #2,-(SP) SP,RO CSPNTX MOV MOV MOV MOV TRAP ADD #6.SP MOV MOV MOV MOV TRAP ADD #T39WPN,~(SP) #2,-(SP) SP,RO CSPNTX #6,SP sREAD EXTENDED STATUS (XSTO) s1S DRIVE WTITE PROTECTED :BR, IF WRITE PROTECTED :'DRIVE NUMBER IS NOT WRT PRO' sSKIP QVER WRTMSG :"DRIVE NUMBER XX IS URT"SRO” v MOV MOV MOV UNITN,=(SP) UNITN, =(SP) #T39WRT ,~(SP) #2,-(SP) - TEST 11: MACRO M1113 CONFIGURATION TYPEOUT 075426 075430 6716 075434 6717 075442 6718 075450 6719 075456 104415 125252 000000 004737 016501 032701 001017 000024 075730 000000 000144 016250 000002 000200 076046 075741 075740 075724 : 2208 222%: Mov MOv8 Move Mov MoV MOV JSR MOV BIT BNE DELAY PAGE 123~4 N #125252,1398FR+100 #0,7398S1 #24 739850 #T39PACKET,R4 R4, TSDB(RS) #100.,T390LY PC.WAITF TSSR(RS) ,R1 #SSR,R1 225% 250 SEQ 0284 TRAP ADD sSET 1 LOC TO KNOWN VALUE JEXTENDED TAPE STATUS cEXTENDED TAPE STATUS sWRITE SUBSYS MEM PACKET s ISSUE COMMAND sSET UP DELAY ROUTINE CSPNTX #6,SP sWAIT AWHILE FOR SSR TO SET ¢SEE IF 1T REALLY DID sJUST CHECK THAT BIT sBR, IF SSR IS SET ;DELAY ABOUT .25 SEC 012727 000250 013727 000000 002116 ESDLY.(PC)O 177772 -6(PC) 177756 BNE =22(PC) .=20 .WORD PKTSSR TRAP cscLPt 000000 005367 001375 005367 001367 005337 001352 004737 103405 010001 075562 075564 075566 6736 075570 075570 6737 075572 6738 075600 6739 075602 075602 075606 075612 075616 075620 075622 6740 075626 6741 075630 075630 075634 075640 075644 075646 075650 6742 075654 6743 075660 6744 075666 6745 075670 6746 075674 075674 075700 000006 25-MAY-82 09:19 ~ TSVS = HARDWARE TESTS .4 075724 T39DLY 2228 225$: 016336 P(,CHKTSSR 2308 RO.R1 ERRNO, T39NBA,PKTSSR 104456 002124 077205 012046 104406 023727 001013 230$: 076046 013746 012746 012746 010600 002202 076651 000002 062706 000412 000006 013746 012746 012746 010600 002202 076562 000002 104415 000006 002202 002202 001402 000137 075226 012746 012746 076500 000001 6250.(PC)+ 125252 CKLOOP CMP BNE PRINTX 2408: 000003 250%: 63%: BR PRINTX INC cMP BEQ JMP PRINTX sSTART DELAY COUNT DOWN ¢BR, IF COUNTER IS NOT AT DONE ¢WAIT FOR SSR :BR, ]F NO ERROR cERROR, SAVE TSSR sTSSR NOT CORRECT AFTER WRT. MISCELLANEOUS TRAP CSERHRD 1108 -WORD T39NBA -WORD :LOOP IF SELECTED T398FR+100,#125252 2408 #T39ETN,UNITN 2508 #T39ETS ,UNITN UNITN #3 UNITN, 638 1759 #T3ONFL sDID LOC GET OVER WRITTEN sBR, IF IT DIDN'T GET ETC. :"DRIVE DOESN'T HAVE EXT TAPE STATUS :SK] P OVER MOV MOV MOV MOV TRAP ADD J'DRIVE HAS EXT TAPE STATUS' :BUMP DRIVE NUMBER ¢AT END OF DRIVES YET ¢BR, IF NO MORE DRIVES <D0 NEXT DRIVE sNEW LINE MOV MOV MOV MOV TRAP ADD MOV MOV UNITN,=(SP) #T39ETN,~(SP) #2,=-(SP) CSPNTX #6,SP UNITN,~(SP) #T39ETS,=(SP) #2.,-(SP) SP.RO CSPNTX #6,5P #TIONFL ,~(SP) #1,-(SP) TSVS = HARDWARE TESTS TEST 11: MACRO M1113 25-MAY-82 09:19 PAGE 123-5 y CONFIGURATION TYPEOUT 075704 075706 075710 6747 075714 6748 075720 075720 010600 104415 062706 000137 1064432 000004 000200 668 JMP EXIT 200 ST SEQ 0285 sRETURN TO SUPERVISOR ¢EXIT THIS SECTION 001736 Mov TRAP ADD SP,RO CSPNTX #4,SP TRAP CSEXIT .WORD .4 L10076~ sLOCAL TEXT MESSAGES FOR TEST sLOCAL STORAGE FOR THIS TEST 6756 075724 6758 6760 075730 6761 075730 6762 075732 6763 075734 6764 075736 6765 075740 6766 075740 6767 075741 6768 075742 6769 075744 6770 075746 6771 6772 6774 6776 076430 6777 076430 6780 076436 6781 6782 6783 076440 6784 076440 6785 076442 6786 076444 6787 076446 6788 076450 6790 6792 076460 6793 076462 6794 6795 6796 6798 6800 076470 6801 076472 6802 076474 6803 076476 6804 6805 6806 000000 075730 140006 075740 000000 000012 000 000 000000 000000 076430 140004 T39DLY: .WORD 0 =<, +10>8177770 T39PACKET: .WORD 140006 .WORD T39TAD .WORD 0 .WORD 10. T39TAD: T398S0: .BYTE 0 139881: .BYTE 0 T398S2: .WORD 0 .WORD 0 T398FR: .BLKW 150. T39PK2: 076440 000000 000012 075746 000000 000400 000000 000000 076460 14640012 000000 140005 000000 000000 000400 LWORD .WORD .WORD .WORD 140004 T39DTA 0 10. T39DTA: T398FR -WORD .WORD 0 LWORD 256. T39EAl: .WORD 0 T39DSW: .WORD 0 =<, +10>8177770 T39PK3: .WORD 160012 .WORD 0 JWRITE 076470 .=<. +10>8177770 s COMMAND PACKET FOR TEST SWRITE SUBSYSTEM MEM. CMD, ACK,Cv(C=1 sADDRESS OF CHARACTERISTICS BLOCK :STARTING VALUE OF BLOCK SIZE sCHARACTERISTICS DATA BLOCK ;BSELO BYTE sBSEL1 BYTE ;BSEL1 WORD JDATA :MESSAGE BUFFER s COMMAND PACKET FOR TEST sWRITE CHARA. MEM. (MND., ACK,CV(C=1 sADDRESS OF SELECT DA/A BLOCK ;STARTING VALUE OF BLOCK SIZE ¢SELECT DATA BLOCK sADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER sEAI BIT WORD sDRIVE SELECT WORD ETC sMESSAGE BUFFER RELEASE COMMAND sNOT USED TAPE PACKET .=<, +10>8177770 140005 O 0 T39S12: 256. T39Pk4: T39WR: ¢DELAY COUNTER FOR TEST .WORD .WORD .WORD .WORD ;WRITE, ACK, CVC=1 (OMMAND sADDRESS OF WRITE BUFFER sMORE ADDRESS OF WRITE BUFFER :SIZE OF RECORD TSVS = HARDWARE TESTS TEST 11: MACRO M1113 CONFIGURATION TYPEOUT 25-MAY-82 09:19 6807 6808 6809 6810 PAGE 123-6 ¢ SEQ 0286 N :LOCAL TEXT MESSAGES FOR TEST = 6811 6812 6813 6814 6815 076500 6816 076503 6817 076562 6818 076651 6819 076744 6820 077010 6821 077053 6822 077126 6823 077205 gggg 077261 045 123 045 045 045 045 045 045 127 103 116 164 116 116 116 116 116 116 122 157 000 141 045 045 045 045 045 045 111 156 T39NFL: T39NE: T39ETS: T39ETN: T390F2: T390N2: T39WRT: T39WPN: T39NBA: T39SSR: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ ,ASCIZ ,ASCIZ .ASCIZ .ASCIZ ‘XN’ ) ) ‘'Stand-alone Configuration Typeout Not Executed’ ‘'INYA Extended Tape Status Availiable, Drive Number 202’ ‘'INZA Extended Tape Status NOT Availiable, Drive Number %D2° ‘'INIA Drive Number XD2XA Is Off-Line’ 'INXA Drive Number XD2XA Is On-Line’ 'INXA Drive Number XD2XA Is Write Protected’ 'INXA Drive Number ID2XA Is NOT Write Protected’ °WRITE SUBSYSTEM MEMORY Command Not Accepted’ ‘Contents of TSSR Incorrect After WRITE SUBSYSTEM MEMORY' 6826 077351 6827 077423 6828 077475 6829 077504 gg%? 077513 045 045 045 045 045 116 116 101 101 116 045 045 040 040 045 T39SFS: T139sBS: T390FF: T390N: T39MCL: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .23%#2 'INXA State Of Extended Features Switch 'XINXA State Of Buffering Switch ‘XA OFF° ‘XA ON ° ) ) *INYA M7196 Microcode Revision Level 6832 077570 6833 6834 6835 6836 6837 000000 T39RL: .WORD .EVEN EVEN O 6840 077572 6841 077574 6842 077574 6843 077600 6844 077606 6845 077610 6846 077614 6847 077616 6848 077622 6849 077624 6850 077626 6851 077630 6852 6853 6854 000000 6839 é83¢ 6857 077632 6858 6859 077660 077660 077660 6860 =° = =302’ i+ ;LOCAL STORAGE FOR THIS TEST 012701 012721 012721 005021 012721 005021 005021 005011 000207 - T39DAT: .WORD T39REST: SAVREG Mov Mov Mov CLR MoV CLR CLR CLR RTS 075730 140006 075740 000006 O ;LOGICAL RESPONSE TO QUESTION #T39PACKET,R1 #140006, (R1) + #T39TAD, (R1)+ (R1)+ #6.,(R1)+ (R1)+ (R1)+ (R1) PC sSAVE THE REGISTERS ;START OF THE PACKET ;WRITE SUBSYSTEM MEM. WITH ACK,CV(=1 sADDRESS OF DATA BLOCK sEXTENDED ADDRESS ;SIZE OF DATA BLOCK IN BYTES sCLEAR BSELO AND BSEL1 :CLEAR SEL? sCLEAR DATA AREA sRETURN N sLOCAL TEXT MESSAGES FOR TEST 103 104401 157 15¢ - T1ST391D: .EVEN ENDTST .ASCIZ ‘Configuration Typeout’ L10076: TRAP CSETST TSVS = HARDWARE TESTS TEST 12: SCOPE LOOPS MACRO M1113 25-MAY-82 09:19 PAGE 124 SEQ 0287 .SBTTL TEST 12: SCOPE LOOPS THIS 1S A STANDALONE ROUTINE PROVIDING A NUMBER OF TIGHT ''SCOPE LOOPS'' USEFUL FOR DEBUGGING BASIC REGISTER ACCESS PROBLEMS WITH THE M7196 MODULE. THESE SCOPE LOOPS CAN BE USED WHEN THE NORMAL "LOOP_ON ERROR'’ OR ‘‘LOOP ON TEST (SUBTEST)'' FACILITIES DON'T SEEM TO ALLOW THE OPERATOR TO ZERO IN A PROBLEM IN THE EARLY TESTS (1.E, THE HARDWARE MAY NOT BE RESPONDING TC A REGISTER ACCESS, CAUSING A BUS ERROR TRAP, EVEN THOUGH THE DEVICE ADDRESS SELECTED BY THE PROGRAM MATCHES THE CONFIGURATION SET UP IN THE 2°2?f:gEEDIP SWITCHES). THE FOLLOWING MENU OF SCOPE LOOPS ARE SCOPE LOOP NO NN 2O CODE HELP. PRINT THIS MENU. TSBA READ ACCESS TSSR READ ACCESS 8 EXIT (RETURN TO SUPERVISOR) INITIALIZE (TSSR WRITE ACCESS) TSDB HIGH BYTE WRITE ACCESS TSDB LOW BYTE WRITE ACCESS TSDB MAINTENANCE-MODE WORD WRITE ACCESS TSDBX (TSSR HIGH BYTE) WRITE ACCESS (EXTENDED FEATURES SWITCH MUST BE ON TO USE SELECTION CODE ?7) FOR SCOPE LOOPS THAT WRITE INTO REGISTERS, THE PROGRAM PROMPTS THE OPERATOR FOR THE DATA TO BE WRITTEN. TYPIN5 <RETURN> CAUSES AN EXIT FROM THE SCOPE LOOP BACK TO MENU LEVEL. 6901 077662 077662 6906 077662 077662 6907 077664 6908 077666 6909 077¢72 6910 077674 6911 077700 6912 077704 6913 077710 6914 077712 6915 077716 6916 077722 6917 077724 6921 077726 077726 077730 BGNTST 104421 001403 012700 000402 012700 004737 004737 103402 000137 004737 103405 010001 104455 002261 101255 101322 016510 020500 100376 015774 "o RFLAGS RO :GET OPERATOR FLAGS BEQ 1$ :BR, IF OK TO RUN TRAP CSRFLA MOV #T4ONE ,RO 2*TEST NOT EXECUTED' MOV JSR JSR #TST40ID,RO PC,TSTSETUP PC,CHKMAN sTEST ID MESSAGE ;00 THE COMMON SETUP sSEE _IF HANU?L INTERVENTION ALLOWED sCARRY SET IF INTERVENTION ALLOWED B8R 8CS JMP JSR 8CS MoV ERRDF 1008 28 648 PC,SOFINIT 5% RO,R1 ERRNO,SFIERR, SFIMSG SJUST EXIT IF NOT I SEXIT IF NO MANUAL INTERVENTICN ;D0 A SOFT INIT sBRANCH IF OK ¢CONTENTS OF TSSR REGISTER cREPORT FATAL ERROR TRAP .WORD CSERDF 1201 TSVS = HARDWARE TESTS TEST 12: SCOPE LOOPS 077732 077734 6922 077736 6923 077742 6924 077746 6925 077752 6926 077754 6927 077756 6928 077762 6929 077764 6930 077770 6931 077772 077772 077776 003652 012034 012700 012701 004737 005700 001760 020027 001015 005737 001012 000004 077716 012700 000340 005037 032737 001005 005237 052737 012701 011137 100406 012721 011137 01271 012700 104441 006304 000174 077716 100136 6963 6964 6965 6966 6967 100146 100152 100154 100156 002226 062706 000137 010004 000100 100406 000100 000060 100410 100310 100412 000340 3s: 177560 177560 000000 012703 060503 011300 000776 000002 PC,GETSEL RO 2$ RO, #7 YES. #EXFMSG JMP 2$ RO,R4 :6G0 BACK TO BASIC MENU sSAVE THE MENU SELECTION "o cRAISE THE PRIORITY MOV SETPRI 8ls MOV MOV MOV Mov MOV #PRI07 TTION zIOO,BITTICSR TTION #100,a0TTICSR ATTIVEC .R1 (R1), TVECSAV #6088, (R1)+ (R1) . TPRISAV #PR107, (R1) #PR100 8R Mov ADD MOV BR ¢+ CHECK ZOR EXTENDED FEATURES SET ;WARN OPERATOR EXTENDED QSCTURES CLEAR #EXFMSG,=(SP) MOV #1,-(SP) MOV SP,RO TRAP CSPNTF ADD #6,SP v TRAP cASSUME INTERRUPTS ARE ENABLED sARE TTI sSAVE THE CURRENT TTI VECTOR sSET _NEW INTERRUPT ROUTINE sSAVE THE VECTOR PRIORITY cUSE PRIORITY SEVEN cLOWER INTERRUPT BR LEVEL MOV TRAP :TSBA READ ACCESS ¢ TSSR READ ACCESS sTSSR WRITE ACCESS cTSDB HIGH BYTE WRITE ACCESS ;TSDB LOW BYTE WRITE ACCESS cTSDB MAINTENANCZ MODE sTSDBX WRITE ACCESS cLEAVE THE TEST TSDB(RS) (R5) ,RO 128 cREAD TSBA REGISTER #TSSR,R3 RS.R3 sADDRESS OF TSSR REGISTER sPOINT YO TSVOS5°'S REGISTERS (R$) RO CS$SPR] sBRANCH IF YES sFLAG SET IF INTERRUPTS OFFf sENABLE INTERRUPTS ¢START OF TTI VECTORS sRETYPE THE MENU 188% #PR107 ,RO INTERRUPTS ON ? sCONVERT TO WORD OFFSET +JUMP TO PROPER LOOP JMP .WORD -WORD -WORD .WORD -WORD .WORD .WORD -WORD .WORD CLRB 18%: sREPEAT MENU IF PRINTF MOV 15%: :GO GET THE OPERATORS SELECTION JWAS ZERO SPECIFIED ? sBR, IF IT IS O EXTFEA ASL 6$: sMENU OF SCOPE LOOP SELECTIONS SFIERR SFIMSG sMAXIMUM ALLOWED SELECTION 3s SETPRI 100146 100160 100200 100224 100250 100270 100402 105065 011500 000776 #8. ,R1 -WORD .WORD 3s BNE INC 4$: #SCMENU,RO SEQ 0288 JEXTENDED TSSR ? sBRANCH [F NOT CLR 8IT 000000 100114 Mov MOV JSR TST BEQ CMP BNE TST BNE 000007 101177 000001 104441 5$: 100414 000010 020256 012746 012746 010600 104417 6952 100124 6953 100126 6954 100130 6955 100132 6956 100134 6957 6958 6959 100136 6960 100142 6961 100144 6962 MACRO M1113 25-MAY-82 09:19 PAGE 124~1 ; sENTER MAINTENANCE MODE cLOOP UNTIL HALTED JREAD TSSR REGISTER sLOOP UNTIL STOPPED #PRI00,RO C$SPRI TSVS = HARDWARE TESTS TEST 12: SCOPE LOOPS MACRO M1113 6968 6969 100160 6970 100164 6971 100166 6972 100172 6973 100174 6974 100176 004737 010001 012703 060503 010113 000776 020174 6977 100200 6978 100204 6979 100210 6980 100212 6981 100216 6982 100220 2232 100222 105065 004737 010001 012703 060503 110113 000776 000000 020174 6985 6986 6987 6988 6989 6990 6991 gggg 100226 100230 100234 100236 100242 100244 100246 105065 004737 010001 012703 060503 000000 020174 6994 6995 6996 6997 100250 100254 100256 100262 004737 010001 012703 060503 & gggg 100264 208: 000002 228 25$: 000001 278: 308 : 000000 110113 000776 020174 000776 7002 7003 7004 7005 7006 ;88; 004737 010001 012703 060503 110113 000776 7014 7015 7016 7017 7018 7019 7020 7021 SEQ 0289 JSR MOV MOV ADD MOV BR PC,GETPAT RO,R1 #TSSR,R3 R5,R3 R1,(R3) 228 sREAD THE DATA PATTERN sDATA PATTERN FOR LOOP sADDRESS OF TSSR sPOINT TO TSVOS5°'S REGISTERS JWRITE DATA TO TSSR .LOOP CLRB JSR MOV MoV ADD Movse BR TSDB(RS) PC,GETPAT RO,R1 #TSDBH,R3 R5.R3 R1,(R3) 278 JENTER MAINTENANCE MODE sREAD THE DATA PATTERN sDATA PATTERN FOR LOOP ;ADDRESS OF HIGH BYTE OF TSDB sPOINT TO TSV0S5°S REGISTERS sWRITE THE DATA TO TSDB, HIGH BYTE ;LOOP UNTIL STOPPED CLRB JSR MOV Mov ADD TSDB(RS) PC,GETPAT RO,R1 #7508,R3 R5,R3 sENTER MAINTENANCE MODE sREAD THE DATA PATTERN ;DATA PATTERN FOR LOOP sADDRESS OF TSSR sPOINT TO TSVO5°'S REGISTERS R1,(R3) 328 SWRITE DATA TO TSSR, LOW BYTE sLOOP UNTIL HALTED BY OPERATOR 35%: JSR MOV Mov ADD PC,GETPAT RO,R1 #7508,R3 RS,R3 JREAD THE DATA PATTERN sDATA PATTERN FOR LOOP sSELECT T5D8B sPOINT TO TSVO5°S REGISTERS BR 37% sLOOF UNTIL HALTED JSR MoV MOV ADD Mov8s B8R PC,.GETPAT RO,R1 #TSSRH,R3 R5,R3 R1,(R3) 423 sREAD THE DATA PATTERN sSAVE THE DATA PATTERN sBYTE ADDRESS OF TSSR, HIGH BYTE sPOINT TO TSVO5°'S REGISTERS sWRITE THE DATA TO REGISTER sLOOP UNTIL HALTED 40$: 000003 42%: 7009 7010 701 F Move BR 37%: 020174 PAGE 124=2 328: 000000 010113 ;88? 100266 100270 100274 100276 100302 100304 100306 25-MAY=-82 09:19 Mov R1,(R3) ;WRITE THE DATA PATTERN ¢ -PROCESS CONSOLE INTERRUPTS 100310 100312 100316 100322 100326 100330 100336 100342 7022 100350 7023 100356 7024 100362 N10046 113700 042700 122700 001021 012766 005066 013737 013737 005737 001403 60$: 177562 000200 000015 077716 000004 1006410 100412 100406 000002 000060 000062 Mov Move 81( CMPB BNE MoV CLR MOV MoV TST 8EQ RO,=(,P) S4TTIBFR,RO #200,R0 #15.R0 613 #2$,2(SP) 4 (SP) TVECSAV,@#TTIVEC TPRISAV,3#TTIVEC+2 TTION 61% sSAVE WORK REGISTER sGET THE OPERATOR INPUT ;STRIP OFF PARITY BIT s1S IT A CARRIAGE RETURN ? cJUST EXIT IF NOT sRETURN TO MASTER MENU ;FORCE PRIORITY ZERO sRESTORE SUPERVISOR VECTOR sRCSTCRE SUPERVISOR PRIORITY ¢ARE SUPERVISOR INTERRUPTS ENABLED ? sBRANCH [F YES [ | TSVS = HARDWARE TESTS TEST 12: SCOPE LOOPS 7025 100364 7026 100372 ;ggg 100374 | 042737 012600 000002 7029 100376 7030 100376 100376 104432 ;8%5 100402 000137 100400 000736 MACRO M1113 25-MAY-82 09:19 6 SEQ 0290 000100 177560 61%: 648 63$: 000200 65$%: 7033 BIC MOV RT] #100,a#TTICSR (SP)+,R0O JTURN OFF TT] INTERRUPTS JRESTORE REGISTER JRETURN FROM INTERUPT EXIT ST :E).T THE TEST JMP 200 TRAP JRETURN TO SUPERVISOR JWORD CSEXIT L10077-. ot 7034 sLOCAL STORAGE FOR THIS TEST 7037 100406 7038 100410 ;828 100412 000000 000000 TTION: TVECSAV: TPRISAV: 000000 70461 7042 .WORD .MWORD .WORD 0 0 0 JWORD SET IF SUPERVISOR TTl INTER OFF JSAVE TT] VECTOR JSAVE TT] PRIORITY 1 ;822 :MENU FOR OPERATOR INPUT FOR SCOPE LOOPS 7045 7046 7047 100414 ;828 100430 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 PAGE 124-3 100446 100521 100547 100573 100617 100661 100720 100756 101024 101073 101136 101137 101177 101255 101322 101336 101336 101336 7068 101340 100446 100720 100521 100756 100547 101024 012 012 on on on on 011 011 on 0n 000 124 045 123 123 123 o1 061 062 063 064 065 066 067 070 105 060 011 011 011 011 011 011 011 011 171 116 164 143 160 045 141 157 SCMENU: .EVEN .WORD .WORD 18: ASCIZ 2$%: ASCIZ 3$: LASCIZ 4$: .ASCIZ 58: .ASCIZ2 6$3: LASCIZ 78: LASCIZ 8s: LASCIZ 9s: LASCIZ 108. LASCIZ 118: LASCIZ2 128: -ASCIZ EXFMSG: .ASCIZ TLONE: _ASCIZ TST40ID: .EVEN ENDTST 1$,2$.3%.4%.58.6$% 7$,8%,9%,10%,11%,12%.0 <12>°'SELECT SCOPE LOOP FROM FOLLOWING OPTIONS:"® <12 0 Display This Menu’ ° 1 TSBA Read Access’ ' 2 TSSR Read Access' ' 3 Initialize (TSSR Write Access,' ° 4 TSDB High Byte Write Access' 5 TSDB Low Byte Write Access’ °* 6 TSDB Maintenance Mode Write Access® ° 7 TSDBX (TSSR High Byte) Write Access'’ 8 Return to Diagnostic Supervisor'® ‘'Type RETURN To Stop Scope Loops' °XINYA *++ Extended Features Switch Not On wes ° 'Stand-alone Scope Loops Not Executed' .ASCIZ 'Scope Loops' L10077: 104401 ENDMOD TRAP CSETST TSV6 = PARAMETER CODING MACRO M1113 TEST 12 : SCOPE LOOPS 1 I4 12 18 19 101340 101340 20 21 22 23 24 25 26 27 28 29 30 31 32 101340 101340 101342 33 346 101342 101342 101344 101346 101350 35 101352 101352 36 101354 101356 101360 25-MAY-82 09:19 TSv6:: s ¢ ; s ; LTITLE TSV6 = PARAMETER CODING B8GNMOD TSV6 .SBTTL HARDWARE PARAMETER CODING SECTION THE HARDWARE PARAMETER CODING SECTION CONTAINS MACROS THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES. THE MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE THE INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS WITH THE OPERATOR. BGNHRD 000010 LSHARD:: .WORD -WORD .WORD GPRMA 160010 177776 001031 101416 000000 000776 ) T -t O [e Yo XV} [ b b — et P O .WORD L10100~LSHARD/2 GPRMA .WORD 000031 101362 - 2? 101442 SEQ 0291 14e s 37 101362 101362 38 101362 39 101416 PAGE 126 L10100: HPMI: HPM2: HPM3: .WORD .WORD .WORD .WORD : GPRMD ENDHRD .EVEN ASCI2Z LASCIZ .ASCI12 JEVEN HPM1,0,0,160010,177776,YES sGET TSBA/TSDB REGISTER ADDRESS. HPM2,2,0,0,776,YES sGET VECTOR ADDRESS. T$CODE HPM1 TSLOLIM TSHILIM T$CODE HPM?2 TSLOLIM TSHILIM HPM3,4,0,340,0,7,YES 'DEVICE ADDRESS (TSBA/TSDB) *INTERRUPT VECTOR ° *INTERRUPT PRIORITY y sGET INTERRUPi PRIORITY, ° TSV6 =~ PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 25-MAY-82 09:19 .SBTTL s 4«8 THE SOF TWARE PARAMETER CODING SECTION CONTAINS MACROS s THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES. 49 50 THE ¢ MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE ¢ INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE 51 s MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS g% ; WITH THE OPERATOR. 54 101472 101472 101474 55 56 101474 1014746 101476 101500 57 S8 59 101502 62 63 64 65 66 SOFTWARE PARAMETER CODING SECTION s4e 47 &1 127 SEQ 0292 44 P PAGE BGNSFT 000003 .WORD L10101=-LS$SOFT/2 LS$SOFT:: 2 GPRML SPM1,0,-1,YES 001130 101532 177777 : : 101502 101502 101532 101562 101612 L10101: 105 111 120 120 o8 116 116 105 105 101 110 122 122 SPM1: SPM4: SPM6: SPM7: GPRML .WORD .WORD LWORD GPRMD GPRMD ENDSFT SPM4.,2.,-1,YES T$CODE SPM4& =1 SPM6,4,0,7777,0,7777,YES SPM?7.,6,0,7777,0,7777,YES JASCIZ LASCIZ .ASCIZ +ASCIZ SBTTL 'ENABLE TRANSPORT TESTS "INHIBIT ITERATIONS °'PER TEST ERROR LIMIT °'PER UNIT ERROR LIMIT PATCH AREA > GET TRANSPORT TEST FLAG. ; GET ITERATION CONTROL. s GET LOCAL ERROR LIMIT ; GET GLOBAL ERROR LIMIT EVEN ° ' ° ° 98 s FINALLY A GENEROUS PATCH AREA. 71 s AND AN ADJUSTMENT TO ACCOUNT FOR THE "LASTAD BIT7'' HACK 74 ;g 101642 PATCH:: ;% : DESCRIBED IN °‘'SUPPRG.MEM'' (FOR REV (). ;g 101642 Bkw 80 82 102000 102000 102000 102002 000000 000000 83 102004 84 000001 102004 32. .=, 137741 Lgsgzb LSLAST:: LWORD .WORD ENDMOD .END O O JSET LAST USED ADDRESS. -— — TSV6 ~ PARAMETER CODING MACRO M1113 SYMBOL TABLE ADDSSR ADR = AMBTSS ASSEMB= A1716 = BADDAT BADSSR BDVPCR= BENBSW BIE = 012126 000020 006635 000010 000003 003156 015700 6 6 6 G 177520 G 002230 G 040000 000001 G 000001 G 8IT0 = BIT00 = B8IT01 = 000002 G BIT02 = 000004 G BIT03 = 000010 G BIT04 = 000020 G BITOS = 000040 G BITO06 = 000100 G 817107 = 000200 G BIT08 = 000400 G BIT09 = 001000 G BIT1 = 000002 G B8IT10 = 002000 G 8IT11 = 004000 G BIT12 = 010000 G BIT13 = 020000 G B8IT14 = 040000 G BIT15 = 100000 G BIT2 = 000004 G BIT3 = 000010 G BIT4¢ = 000020 G BITS = 6 BIT6 = 000100 G BIT? = 000200 G BIT8 = 000400 6 8119 = 001000 G BOE = 000400 G BRINIT 004457 BSELO = 000000 BSEL1 = 000001 CHKAMB 016044 CHKMAN 020500 6 CHKTSS 016336 CKDROP 017202 CKEMAX 017102 CKMSG_ 011360 6 CkMSG2 011500 6 CKRAM 011114 6 CKRAM2 011224 G CMDPKT 021260 6 CMPMEM 017660 CONFIG 017250 COUNT CSRADD CTAB CTABE CTABM 002310 002206 003164 003176 003164 G 6 6 6 6 C$AU_ = C$AUTO= C$BRK = C$BSEG= c$8suB= CSCEFG= C$CLCK= 25-MAY=82 09:19 000052 000061 000022 000004 000002 000045 000062 CSCLEA= 000012 C$CLOS= 000035 C$CLP1= 000006 CSCVEC= 000036 CSDCLN= 000044 C$DODU= 000051 CSDRPT= 000024 C$0U = 000053 CSEDIT= 000003 CSERDF= 000055 CSERHR= 000056 CSERRO= 000060 CSERSF= 000054 CSERSO= 000057 CSESCA= 000010 CSESEG= 000005 CSESUB= 000003 CSETST= 000001 CSEXIT= 000032 C$GETB= 000026 CSGETW= 000027 CSGMAN= 000043 C$GPHR= 000042 C$GPLO= 000030 C$GPRI= 000040 CSINIT= 000011 CSINLP= 000020 CSMANI= 000050 CSMEM = 000031 CSMSG = 000023 CSOPEN= 000034 CSPNTB= 000014 CSPNTF= 000017 CSPNTS= 000016 CSPNTX= 000015 C$QI0 = 000377 CSRDBU= 000007 CSREFG= 000047 CSRESE= 000033 CSREVI= 000003 CSRFLA= 000021 CSRPT = 000025 CSSEFG= 000046 CS$SPRI= 000041 CSSVEC= 000037 C$TPRI= DATA DATASC DEBUGM DEVCNT 000013 002312 6 020232 011632 002220 G PAGE 127-1 SEQ 0293 DEVDRO DEVNRD DEVNXR DEVONL DEVSUM DFPTBL DIAGMC= 023376 023315 023233 023163 023126 002156 G 000000 DUADT2 004643 FIF2MS FILLME FNOINT FORCER FREE 012311 017422 004215 002176 6 003124 6 DICEB = 000001 DSBINT 016204 DUFLG 003112 6 DUMMY 003062 EF.CON= 000036 G EF .NEW= 000035 G EF .PWR= 000034 G EF .RES= 000037 G EF.STA= 000040 G EMAXDU 016777 EN = 000000 ENAINT 016152 ENVIRN 020630 EPRTSW 002200 G EPRT1 006360 EPRT2 006360 ERCM 011733 ERRHI 002236 G ERRK 016756 ERRLO 002240 G ERRNO = 002261 ERRVEC= 000004 G ERTABE 003376 ERTABL 003176 ESUM 016760 EVL = 000004 G EXBCNT= 000010 EXFMSG 101177 EXPBRE 015502 6 EXPD 002232 6 EXPGOT 004533 EXPGT2 004567 EXPMSG 002322 6 EXPREC 015474 G EXTA 005772 EXTEND 005770 EXTFEA 002226 6 ESEND = 002100 ESLOAD= 000035 FATERR= 000060 FATFLG 002222 G FERCM 011722 FIFEXP 012170 6 FIFIMS 012242 FREEHI FRESIZ FUSI FSAU = F$AUTO= F$BGN = FSCLEA= 003130 003126 6 004117 000015 000020 000040 000007 F$OU = 000016 FSEND = 000041 FS$HARD= 000004 FSHW = 000013 FSINIT= 000006 FSJMP = 000050 F$MOD = 000000 FSMSG = 000011 FSPROT= 000021 FSPWR = 000017 FSRPT = 000012 FS$SEG = 000003 F$SOFT= 000005 F$SRV = 000010 F$su8 = 000002 F$SW = 000014 FSTEST= 000001 GDDAT 003160 6 GERRMA 002174 G GETPAT 020174 6 GETSEL 020256 G GSCNTO= 000200 GSDELM= 000372 GSDISP= 000003 GSEXCP= 000400 GSHILI= 000002 GSLOLI= 000001 GSNO = 000000 GSOFFS= 000400 GS$OFSI= 000376 GSPRMA= 000001 GSPRMD= 000002 GSPRML= 000000 GSRADA= 000140 GSRADB= 000000 GSRADD= 000040 GSRADL= 000120 GSRADO= 000020 GSXFER= 000004 GSYES = 000010 HIADDR= 001400 HOE = 100000 G HPM1 101362 HPM? 101416 HPM3 101442 IBE = IDU = 1ER = IFAULT INCERK 010000 6 000040 6 020000 G 004256 017044 INTCPC INTFLA INTMAS INTR INTREC INTVEC INTX 016150 016145 016144 016216 6 002224 G 016146 004300 INVERT 021206 6 I0KCK1= 000200 10kSTP= 000001 IPR] 002212 6 ISR = 000100 G IVEC 002210 6 IXE = 004000 G ISAU_ = 000041 ISAUTO= 000041 ISCLN = 000041 I$DU = 000041 ISHRD = 000041 ISINIT= 000041 I$MOD = 000041 I$MSG = 000041 I$PROT= 000040 ISPTAB= 000041 ISPWR = 000041 ISRPT = 000041 I$SEG = 0000641 ISSETU= 000041 ISSFT = 000041 I$SRV = 000041 [$SUB = 000041 ISTST = 000041 JSJMP = 000167 KIPARO= 172340 KIPAR1= 172342 KIPAR2= 172344 KIPAR3= 172346 KIPAR4= 172350 KIPARS= 172352 KIPARG= 172354 KIPAR?= 172356 KIPDRO= 172300 KIPDR1= 172302 KIPDR2= 172304 KIPDR3= 172306 KIPDR4= 172310 KIPDRS= 172312 KIPDR6= 172314 KIPDR?= 172316 KTENAB 003134 6 KTFLG 003132 G KTINIT 021054 KTOFF KTON LERRMA LERRNG= LISTAL= 017274 017256 002172 6 000000 000001 TSV6 - PARAMETER CODING MACRO M1113 SYMBOL TABLE LOE = LOOPCN LOOPCO LOOPFL LoT = LSACP LSAPT L$AU LSAUT LSAUTO LSCCP LSCLEA L$CO LSDEPO LSDESC LSDESP LSDEVP LSDISP LSOLY LSOTP LSDTYP LSOV LSOUT LSOVTY LSEF LSENVI LSETP LSEXP1 LSEXP4 LSEXP5S LSHARD LSHIME LSHPCP LSHPTP LSHW LSICP LSINIT LSLADP LSLAST LSLOAD LSLUN LSMREV LSNAME LSPRIO LSPROT LSPRT LSREPP LSREV LSRPT LSSOFT L$SPC L$SPCP LSSPTP LSSTA LSSW LSTEST LSTIML 040000 6 002216 G 013126 003162 6 000010 G 002110 G 002026 6 022352 G 002070 G 022556 6 002106 G 022636 6 002032 G 002011 G 003410 6 LSUNIT L10000 L10001 L10002 L10003 L10004 L10005 L10006 L10007 L10010 L10011 L10012 L10013 L10014 L10015 002116 002040 002034 022450 002072 003402 002052 002044 002102 002046 L10021 L10022 L10023 L10024 L10025 L10026 L10030 L10031 L10032 L10033 L10034 L10035 L10036 L10037 L100640 L10041 L10042 L10043 L10044 L10045 L10046 L10047 L10050 L10051 L10052 L10053 L10054 L10055 L10056 L10057 002076 G 002060 G 002124 G G G G 6 G G 6 6 G G 002064 6 002066 G 101342 G 002120 G 002016 G 002022 G 002156 6 002104 G 021556 G 002026 G 102004 G 002100 G 002074 G 002050 G 002000 G 002042 G 021546 G 002112 G 002062 G 002010 6 022664 G 101474 G 002056 6 002020 G 002024 G 002030 G 002166 6 002114 G 002014 6 L10016 L10017 L10020 L10060 L10061 L10062 L10063 L10064 L10065 L10066 L10067 L10070 25-MAY-82 09:19 PAGE (002012 G 002164 002176 005766 012044 012062 012100 012106 012124 012142 012166 012240 012410 013124 013752 L10071 L10072 L10073 L10074 L10075 L10076 L10077 L10100 L10101 MEMADD MEMCK MENASC MENERR MENRES MIMENU 015514 015526 015550 015576 015736 016246 022302 022446 022554 022634 022662 023124 024424 026416 024700 025144 031772 026772 027262 027560 030170 034562 032326 032720 033326 040354 035646 036600 050466 040660 MSA.NR= MSA. V0= MSGEXP MSGLOO MSGSTA MSGSUB MS.ATT= MS.EXT= MS.RSD= MS.RSF= 013774 015500 015506 042070 043430 0644006 045260 046324 051746 062574 053752 055240 127-2 056510 057754 066644 065004 074506 077660 101336 101362 101502 013754 G 021276 G 020447 020374 020476 073372 MMVEC = 000250 MSA.FR= 000006 MSA.NO= 000000 000004 000002 012144 6 013064 G 012350 6 013742 G 000006 000200 000001 000020 MS.RST= 000010 MB8186 005554 MB189 005645 NBA = 002000 NEWPAS 022010 NODEV 003114 G NOEXTF 030164 NOINIT 004335 NOINTR 004221 NOITS 002170 G NOMAN 020534 NOMEM 005460 NP.IR = 000200 NP.LOO= 000040 NP.OUT= 000100 NP.WRP= 000020 NSI 004152 NSINIT 004407 NUL 004527 NULCR 004530 NXM = NXMFLG NXMHI NXMLO NXMTST NXR NXRERR NXRX NXTU 004000 003136 003142 003140 021452 003740 005736 003777 022022 G G 6 G K SEQ 0294 OFL = ONEFIL= 0$APTS= 0$AU = 0$8GNR= 0$8GNS= 0$OU = OSERRT= 0$GNSW= 0$SPOIN= 0$SETU= PASRPT PATCH PATDAT PC.ERA= PC.I1ER= PC.NOO= PC.REL= PC.REW= PKBCNT= PKHI = PKLOW = PKTADD PKTFRM PKTGET PKTMES PKTRAM PKTSSR 000100 000000 000000 000001 000001 000001 000001 000000 000001 000001 000000 022054 101642 6 020230 002400 002000 001000 000000 000400 000006 000004 000002 007554 007516 012064 012110 004745 012046 6 6 G G PNT = 001000 G PRAMPK 013776 PRASC 014523 PRBEXP 015470 PRBMSG 015336 PRBREC 015472 PRBTOT 015423 PRBYTE 015122 6 PRI = 002000 G PRIADD 010160 PRIAO 010230 PRIBXO 007612 PRIEQU 010060 PRIPKT 007370 PRIRAM 010066 PRITAD 010274 PRITSS 006024 PRITO 010356 PRIT1 010421 PRIXOR 007742 G PRI00 = 000000 6 PRIOT = 000040 G PRIOZ2 = 000100 G PRIO3 = 000140 G PRI04 = 000200 6 PRIOS = 000240 6 PRI0é = 000390 6 PRIO7 = 000340 6 PRMESS 014242 PRMNO PRMSGE PRMSGO PRMSG1 PRMSG2 PROASC PRIASC PST32¢ PUNIT PW.D11= PW.D13= PW.D22= PW.NOP= PW.NO1= PW.RDE= 002320 G 014552 6 014732 014777 015035 014420 014465 003152 6 022304 000021 000022 000020 000000 000023 000024 PW.RDR= PW.RDS= PW.RFI= Pw.WCT= PW.WFI= PW.WFM= PW.WMI= PW.WNP= PW.WTR= P.ACK = P.CMD = P.CONT= P.CVC = 0G0001 000005 000003 RAMTAD RCVHIA RCVLOA RDERR RECMSG RECV REGSAV RETERR REWIND 015516 G 002304 G 002306 G 005206 002466 G 002234 6 020140 005372 011014 G 000006 000004 000007 000010 000011 000002 100000 000037 000012 040000 P.FMT = 000140 P.FORM= 000011 P.GETS= 000017 P.1IE = 000200 P.INIi= 000013 P.MODE= 007400 P.OPP = 020000 P.POSI= 000010 P.READ= 000001 P.Sw8 = 010000 P.WRIT= 000005 P.WRTC= 000004 P.WRTS= 000006 Qvp 002204 G RAMASC 014156 RAMDAT 002242 G RAMERR 015510 G RAMEXP 015530 6 RAMFOR 010116 RAMSIZ 002302 G — TSV6 = F \RAMETER CODING MACRO M1113 SYMBOL TABLE RMCHBE= RMCHEN= RMMSGB= RMMSGE= 000167 000200 000215 000234 RMPKTB= 000201 RMPKTE= 000210 RMR = 010000 RWPACK 011110 SC = 100000 SCE__ = 020000 SCHERR 005300 SCME 005013 SCMENU 100414 SDELAY 010660 SELASC 020442 SELDAT= 000004 SEL2 = 000002 SETMAP 017316 SETU 022106 SFFMSG 012102 SFHERR 003705 SFIERR 003652 SFIMSG 012034 SFPTBL 002166 SIFLAG 003154 SIMSG 011766 SKIPT 003400 SOFINI 015774 SPACE 010666 SPM1 101502 SPM4 101532 SPM6 101562 SPM7 101612 SRO = 177572 SR1 = 177574 SR2 = 177576 SR3 = 172516 SSR_ = 000200 STATLO 012412 SvCGSL= 000000 SVCINS= 000000 svcsus= 000001 SVCTAG= 000000 SVCTST= SSLSYM= 50.108= S0.1FB= $0.1FP= S0.ILD= S0.ION= S0.IRD= S0. IRW= $0.1SP= S1.1CE= .$1.1E0= .| S1.1FM= S1.IHE= 000001 010000 000010 000002 000001 000020 000040 000100 000004 000200 002000 010000 001000 000400 $1.110= S1.11R= S1.12R= S1.PAR= S2.ATI= $2.8T1= S2.DIM= $2.1LwWw= 6 6 G G G 6 25-MAY-82 09:19 004000 020000 040000 100000 000010 000004 000200 000100 S2.INR= 000020 §2.0UT= 000040 $2.UND= 000003 TBLEND= 003062 6 TCOASC 006476 TCOCOD 006676 TEMP1 003116 6 TEMP2 003120 G TERCLS= 000016 TESTNO= 000014 TEXASC 006435 TFCASC 006537 TIMEXP 015552 G TIMSGO 015600 TINERR 012021 TMPBFR 002632 6 TNAM 016704 TPRISA 100412 TPSAV2 071440 TRANST 002166 G TSBA = 000000 6 TSBAH = 000001 G 1SD8 = 000000 G TSDBH = 000001 6 TSFCOD 007236 TSREJ = 000006 TSSDEF 006606 TSSR = 000002 G TSSRBI 003502 6 TSSRFO 006415 TSSRH = 000003 G TSSX 004020 TSTBLK 002752 G TSTCNT 002214 6 TSTEND 016720 TSTFLA TSTLOO TSTPTR TSTSET TST121 TST131 TST141 TST1S1 TST161 TST171 TST181 TST191 TST201 TST391 002314 016456 002316 016510 030450 024102 026241 034433 036642 046606 051176 060162 065162 077632 G G G 6 PAGE TST401 TSV2 TSV3 TSV4 TSVS TSV6 TTIBFR= TTICSR= TTION TTION2 TTIVEC= TVECSA TVSAV2 T$SARGC= T$CODE= TSERRN= T$SEXCP= T$FLAG= TSGMAN= TSHILI= TSLAST= T$LOLI= TSLSYM= TSLTINO= TSNEST= TSNSO = TSNS1 = T$NS2 = TSNS3 = T$PTNU= T$SAVL= TSSEGL= T$SEKO= T$SUBN= TSTAGL= TSTAGN= TSTEMP= TSTEST= T$TSTM= T$1STS= T$$SAU = T$$SAUT= TSSCLE= 127-3 L 7 SEQ@ 0295 101322 002000 G 002176 6 021546 G 110 T T12 T128FR 066646 6 074510 6 077662 6 030262 177562 G 177560 6 100406 T12CHA T12CKR T12CON 031730 031510 6 031316 023446 6 101340 6 T128KG T128LK 030737 030314 T158FR T158F2 715850 715851 T15DAT T15L00 TI1S5PAC T15PK2 071434 000060 G 100410 T12DAT T120PR T12GET 030250 031116 030476 TISRES TI5RT2 TI5SSR 11552 000000 000040 000000 T12MSG T12NIN T12NXM 030641 031025 031207 T16CLR T16DAT T160T2 071436 000001 001130 002261 000776 000001 000000 010000 000014 177777 000000 000005 000002 000003 000000 177777 T12HIA T12KT T12LOA T12L00 T12PAC T12PAR T12SET T12SWR T12TBE T12WRT T121L0 T122L0 T123L0 T1264L0 T1247S T13BFR 030302 030310 030304 026446 030240 030306 031666 031620 030446 030552 026560 027114 027334 027734 030312 024062 177777 010000 000000 177777 010102 000000 000014 177777 000001 010031 T13DAT TI13LCO T13MEM TI13NBA T13PAC T13RES T13SSR T14BFR T14BS0 114851 024050 023464 024155 024214 024040 024356 024267 025176 025170 025171 010034 010032 010100 010000 01003 010025 010027 010035 010000 010101 010026 010074 010001 T14DAT T14DTA T14L00 TI14NBA T14NIN T14PAC T14PK2 T14RES T14RST T14SSR T141SB T142RE T15AMZ 025170 025610 024444 025622 026063 025160 025600 026306 026344 025773 026155 025676 034142 010033 T$SDU = T$$SHAR= TSSHW = T$SINI= TSSMSG= T$$SPRO= T$SRPT= T$$SEG= T$$S0F= T$$SRV= T$$SUB= T$$Sw = TS$TES= 010077 n 023446 6 T14BS2 T1SAM3 T15AM6 025172 034243 034345 71583 T16BEN T16BFR T16BFS T16001 716028 T16D53 V14078 TI6LEN T16L00 T16PAC T16PK2 T16RES T16RES T16SEX T16SRD (033372 034060 034060 034061 033360 032024 033350 034050 034452 034524 034066 034062 034064 040240 040212 040232 040056 040200 040250 036632 036634 036636 036640 037162 034602 040170 040240 037274 040010 040150 040102 T16SSR T1671S8 716701 716128 716753 116778 T16WMI T162SS T163sS T17BEN 036712 037060 037411 037510 037610 037710 040122 036747 037013 050342 T17BFS T17CLE TI17CLR T17DAT T170T2 TI17EXE TI7EXP TI17EXS T17L00 TI7MSK T17PAC T17PK2 TI7RFI 050242 050126 047740 050210 050360 046504 046362 046402 040404 046356 050200 050350 050106 T178FR T17RSF T17SET 050222 050004 050146 TSV6 =~ PARAMETER CODING MACRO M1113 SYMBOL TABLE T17SNP T17SRD T17SSR TI7WFD TI7WFl T171CM T172CM T172SS T173CM T173SS T174CM T174SS T175C(M T1755S T176CM T176SS T177CM T18BFR T18CMP T18DAT T180T2 T18EXP T18L00 T18MSK T18PAC T18Pk2 T18SET T18SMI T18SRD T18SSR T18xS T182S8S 7183sS TI9BEN T198FC TI9BFR T198FS TI9CLE TI9CLR TI9CNV T19DAT T190T2 T19EXE TI1GEXP T19EXS T19L00 TI9MSK TI9PAC T19PK2 TI9PRE TI9RFI TI19RSF TI9RST T19SET TI19SEX T19SNP 050026 047764 046625 046504 050052 047145 047227 046662 047323 046726 047407 046773 047472 047036 047546 047102 047654 051702 051403 05167C 051740 051146 050506 051142 051660 051730 051550 051526 051506 051235 051172 051272 051336 062452 057776 062332 062352 062200 061734 062244 062320 062470 060162 060042 060062 051766 060036 062310 062460 057774 062046 062000 061630 062220 062162 062022 T19SRD 061760 T19SSR TIWCT TI9WF1 TI9WFM T19WST T191CM T192CM 7192SS T193CM 7193SS 7194SS T195CM T195SS T196CM 1196SS T197CM T1978S T198CM 1198SS T199CM T2 12.1 12.2 T20BEN T20BFR T20BFS T20CLE T20CLR T20CWP T20DAT 120072 T20EXE T20EXP T20EXS T20L00 T20MSK T20PAC T20PK2 T20RFI T20RSF T20SET T20SEX T20SRD T20SSR T20SWwP T20WFI T20WFM T20WwMI T20WNP 1202SS T203SS T204SS 7205SS T206SS 7208ss T23A 1238 25-MAY=-82 09:19 060223 062122 062066 062142 061523 060660 060742 060260 061036 060324 060371 061124 060434 061200 060500 061263 060543 061351 060612 061440 024426 6 024444 024714 066522 066402 066422 066314 066102 066007 066370 066540 065162 065042 065062 062614 065036 066360 066530 066166 065706 066334 066276 066126 065211 065577 066206 066242 066262 066146 065246 065312 065357 065422 065466 065531 003144 6 003146 G T3 T3BFLG 73.1 13.2 13.3 13.4 T38ASC T38ASN T38AS0 T38AS1 T38BFR 7388S0 7388S1 738852 T38CNT T38DAT T38DLY 138DSW T38DTA T38EAI T38EB T38ID0 T38INT T38MBP T38MSG T38MS1 T38MS2 T38Ms3 T38NBA T38NE T380FL T38ONL T38PAC 138Pk2 738PK3 138PKé4 T38RES 738512 T38SSR T38SST T38TAD T3BWLE T38WR T38WRL T38WRT T398FR 139850 139851 139852 T39DAT T390LY T390SW T39DTA T39EAl T39ETN T39ETS 139Mci PAGE 127-4 M SEQ 0296 026420 G 003150 G 026446 027006 027276 027574 074441 074460 074336 074403 071466 071460 071461 071462 074504 073774 071442 072170 072160 072166 072142 T39NBA T39NE T3ONFL T390FF T390F2 T390N T390N2 T39PAC T39Pk2 T39PK3 T39PK4 T39RES T39RL 139s8S T39SFS T39S1Z T39SSR T39TAD T39WPN T39WR T39WRT 073305 073146 073241 072305 072572 072230 073022 072766 071450 072150 072200 072220 073776 072226 072646 073056 071460 072525 072222 072464 072400 075746 075740 075741 075742 077572 075724 076459 076440 0764/,6 076651 146.3 T4ONE 15 15.1 15.2 76 16.1 16.2 16.3 76.4 76.5 16.6 17 T8 78.1 18.2 78.3 78.4 79 79.1 UAM = UNITN UNREC = USI WAITF WC.1FA= WwC.IFE= WC.160= WC.IRE= WC.IRW= WwC.10T= 077513 WC.ISR= 000020 073345 072736 074034 074562 T4 T4.1 T4.2 077205 076503 076500 077475 076744 077504 077010 075730 076430 076460 076470 077574 077570 077423 077351 076476 077261 075740 077126 076472 077053 031774 6 032024 032330 032722 101255 034564 G 034602 035662 040356 G 040404 040674 042104 043444 044022 045274 050470 051750 051766 053766 055254 056524 062576 062614 000200 002202 000006 004123 016250 000200 000002 000001 000010 000004 000100 We. ] 17= 000040 6 6 G 6 6 G WF.IED= WF.IER= WF.1HI= WF.IRE= wF . IWF= WF . IWR= WF.I3R= WF . 14R= WRTCHR WRTERR WRTMSG WSMBK XFERAS ANXM XORBFO XORFOR XST0 = XST1 = XST2 = XST3 = XST4 = 000010 000004 000200 000040 000020 000100 000002 000001 010662 005113 005056 021270 015740 016376 007674 010012 000006 000010 000012 000014 000016 Xs080T= 000002 XSOEOT= 000001 XSOIE = 000040 G 6 G G 6 6 G XSOILA= 000400 XS0ILC= 001000 XSOLET= 020000 XSOMOT= 000200 XSONEF= 002000 XSOONL= 000100 XSOPED= 000010 XSORLL= 010000 XSORL3= 040000 XSOTMK= 100000 XSOVCKk= 000020 XSOWLE= 004000 XSOWLK= 000004 XXCOMM 003122 6 X$ALWA= 000000 X$FALS= 000040 X30FFS= 000400 X$TRUE= 000020 X1.COR= 020000 X1.0LT= 100000 X1.M82= 017375 X1.RBP= 000400 X1.SPA= 0400G0 X1.UNC= 000002 X2.8UfF= 000100 X2.ExT= 000200 X2.0PM= 100000 X2.RCE= 040000 X2.REV= 000077 X2.SPA= 035400 X2.UNI= 000007 X2.WCF= 002000 Xx3.DCK= 000010 TSV6 = PARAMETER CODING MACRO M1113 SYMBOL TABLE x3.M82= 000006 X3.MDE= 177400 X3.0PI= 000100 X3 X3. X3. . ABS. 102004 000000 ERRORS DETECTED: O 25~MAY-82 09:19 00040 PAGE 127-5 X3.TRF= 000020 X4 .HSP= 100000 000 001 VIRTUAL MEMORY USED: 31032 WORDS ( 122 PAGES) DYNAMIC MEMORY: 20346 WORDS ( 78 PAGES) ELAPSED TIME: 00:38:31 CVTSBAQ,CVTSBAO=SV(C/ML,TSVIB,TSV22B,TSV3B,TSV4L,TSVS58, TSV 4 SEQ 0297 X4 .M8 X4 .RC mey ’ 017400 040000 X4, TSM= 020000 X4.WR(C= 000377
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies