Digital PDFs
Documents
Guest
Register
Log In
AH-T094A-MC
September 1982
219 pages
Original
100MB
view
download
OCR Version
132MB
view
download
Document:
CVTSAA0 TSV05 TSV05 CTRL LT1 SEP 1982 bw
Order Number:
AH-T094A-MC
Revision:
000
Pages:
219
Original Filename:
CVTSAA0__TSV05__TSV05_CTRL_LT1__AH-T094A-MC__SEP_1982_gray.pdf
OCR Text
T5V03 TSVO5 CTRL BUTERR0T © Friohe 1 onC, amemt e [NETA] LT 3 T5V03 TVO8iEak0 T Ficee s or 2 o~ HOEIIRD — - : USER DOCUMENTATION MACRO M1113 25-MAY<-82 08:41 PAGE 2 - 5 IDENTIF ICATION PRODUCT ID: AC=TO93A=MC PRODUCT TITLE: CVTSAAO TSVOS CTRL LT1 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. THE USE SUPPLIED OR BY RELIABILITY OF DIGITAL OR ITS COPYRIGHT (C) 1982,1982 BY DIGITAL EQUIPMENT CORPORATION THE FOLLOWING ARE TRADEMARKS OF DIGITAL EQUIPMENT CORPORATION: DIGITAL DEC \ PDP DECUS UNIBUS DECTAPE T A g SR AR ) > .REM_ NO RESPONSIBILITY IS ASSUMED FOR SOFTWARE ON EQUIPMENT THAT IS NOT AFFILIATED COMPANIES. A MASSBUS 0% - SEQ 0001 | USER DOCUMENTATION ~~ MACRO M1113 25-MAY-82 08:41 PAGE 3 . L S cwaDaaas VSN =O NN NOWVMSWNN=O W O o PERFORMANCE AND PROGRESS REPORTS . ERROR INFORMATION &~ TABLE OF CONTENTS o B o 5.0 7.0 GENERAL INFORMATION PROGRAM ABSTRACT SYSTEM REQUIREMENTS RELATED DOCUMENTS AND STANDARDS DIAGNOSTIC HIERARCHY PREREQUISITES ASSUMPTIONS OPERATING INSTRUCTIONS COMMANDS SWITCHES FLAGS : HARDWARE GUESTIONS SOF TWARE QUESTIONS EXTENDED P=TABLE DIALOGUE QUICK STARTUP PROCEDURE DEVICE INFORMATION TABLES TEST SUMMARIES MAINTENANCE HISTORY SEQ 0002 r— | | | USER DOCUMENTAT ION MACRO M1113 25-MAY-82 08:41 PAGE 4 SEQ 0003 | y 1.0 GENERAL INFORMATION 1.1 PROGRAM ABSTRACT —~— THIS IS A PDP=11/23 RESIDENT DIAGNOSTIC WHICH CHECKS THE FUNCTIONALITY OF A TSVOS5S MAGTAPE SUBSYSTEM WHILE CONNECTED TO A PDP=11//23 SYSTEM (Q=BUS). THE PROGRAM PROVIDES ERROR MESSAGES FUNCTIONS THAT AID IN THE REPAIR OF THE DEVICE. WHICH ELEVEN TEST WHICH ARE EXECUTED IN SEQUENCE. IDENTIFY FAILING THIS DIAGNOSTIC CONSIST OF THIS DIAGNOSTIC HAS BEEN WRITTEN FOR USE WITH THE DIAGNOSTIC RUNTIME 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 I.E. 4K FOR 1/0 PAGE) TSVOS MAGTAPE SUBSYSTEM (DRIVE AND CONTROLLER) CONSOLE TERMINAL PDP=11 DIAGNOSTIC SUPERVISOR (HSAAA.SYS VERSION 34 OR LATER) PDP=11 DIAGNOSTIC LOADER/MONITOR (XXDP+) 1.3 RELATED DOCUMENTS AND STANDARDS DIGITAL EQUIPMENT CORPORATION DOCUMENTS: 1. 2. CHQUS XXDP+ USERS GUIDE; DATE: 14 JULY 1980. DOCUMENT NUMBER AC~F348E-M(C TSVO5 TRANSPORT SUBSYSTEM USER'S GUIDE; DOCUMENT NUMBER EK-TSV05-UG-001 DATE: AUGUST 1982 3. TSVO5 TRANSPORT SUBSYSTEM TECHNICAL MANUAL; DOCUMENT NUMBER EK=TSV0S5-TM=-001 DATE: AUGUST 1982 , 4. TSVOS5 TRANSPORT SleYST(H INSTALLATION MANUAL:; DOCUMENT NUMBER EK~-TSVO5-IN-001 DATE: AUGUST 1982 1.4 DIAGNOSTIC HIERARCY PREREQUISITES FUNCTIONAL PDP=11/23 CENTRAL PROCESSOR AND MEMORY FUNCTIONAL CONSOLE TERMINAL FUNCTIONAL STANDALONE DIAGNOSTIC SUPERVISOR FUNCTIONAL DIAGNOSTIC LOADER/NMONITOR (XXDP+) USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4~1 SEQ 0004 1.5 ASSUMPTIONS ALL HARDWARE EXCEPT THE HARDWARE UNDER TEST IS ASSUMED TO WORK PROPERLY OR FALSE ERRORS CAN BE REPORTED. B.F‘ET;::E BEING USED ON THE TSOS TRANSPORT IS A KNOWN GOOD REEL 2.0 OPERATING INSTRUCTIONS THIS SECTION CONTAINS A BRIEF DESCRiPTION OF THE RUNT IME SERVI(ES FOR DETAILED INFORMATION, REFER TO THE XXDP+ USER'S MANUAL 2.1 (CHQUS). COMMANDS THERE ARE ELEVEN LEGAL commos 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 CONT INUE START THE DIAGNOSTIC WITHOUT INITIALIZING CONTINUE AT TEST THAT WAS INTERRUPTED (AFTER “C) PROCEED EXIT ADD CONTINUE FROM AN ERROR HALT RETURN TO XXDP+ MONITOR (XXDP+ OPERATION ONLY!) ACTIVATE A UNIT FOR TESTING (ALL UNITS ARE CONSIDERED TO BE ACTIVE AT START TIME DROP DEACTIVATE A URIT PRINT PRINT STATISTICAL INFORMATION (IF IMPLEMENTED BY THE DIAGNOSTIC = SECTION 4.0) TYPE A LIST OF ALL DEVICE INFORMATION TYPE THE STATE OF ALL FLAGS (SEE SECTION 2.3) CLEAR ALL FLAGS (SEE SECTION 2.3) DISPLAY FLAGS ZFLAGS 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 TSVOS DIAGNOSTIC IS A PDP=11/23 PROGRAM. DIAGNOSTIC SUPERVISOR COMPATIBLE ALL LOADING AND RUNTIME INSTRUCTIONS CAN BE REFERENCED IN THE CHQUS XXDP+ USERS GUIDE ,DOCUMENT # NUMBER AC~F348E-MC. THE USER ENTRY IS IN QUOTES. BOOT THE DIAGNOSTIC HEDIA .R VISA?? lc)\ll?(sii Rt%-TIHE SERVICES REV D. APR 79 ""TSVO5 LOGIC DIAGNOSTICwww» UDJ” IS TSv05 USER DOCUMENTATION MACRO M1113 2.2 25-MAY-82 08:41 PAGE 4-2 SEQ 0005 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, 3 IN THE DESCRIPTIONS BELOW, A DECIMAL NUMBER IS DESIGNATED BY . «, SWITCH EFFECT JTESTS:LIST EXECUTE ONLY THOSE TESTS SPECIFIED IN | /PASS :DDDDD /FLAGS:FLGS THE LIST. LIST IS A STRING OF ‘DDDDD'’. TEST NUMBERS, FOR EXAMPLE = /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) ?5752255651503FLAGS. FLAGS ARE DESCRIBED /EOP:DDDDD REPORT END OF PASS MESSAGE AFTER EVERY JUNITS:LIST TEST/ADD/DROP ONLY THOSE UNITS SPECIFIED DDDDD PASSES ONLY. (DDDDD = 1 TO 64000) IN THE LIST. LIST EXAMPLE = /UNITS:0:5:10-12 USE UNITS 0,5,10,11,12 (UNIT NUMBERS = 0-63) EXAMPLE OF SWITCH USAGE: . START/TESTS:1-5/PASS:1000/E0P:100 THE EFFECT _OF THIS COMMAND WILL BE: 1) TESTS 1 THROUGH S WILL BE EXECUTED, 2) ALL UNITS WILL TESTED 1000 TIMES AND 3) THE END OF "“PASS MESSAGES WILL BE PRINTED AFTER EACH 100 PASSES ONLY. A SWITCH CAN BE RECOGNIZED BY THE FIRST THREE CHARACTERS. FOR EXAMPLE, TYPE ''/TES:1-5'" INSTEAD OF '‘/TESTS:1-5"". YOU MAY, BELOW IS A TABLE THAT SPECIFIES WHICH SWITCHES CAN BE USED BY EACH COMMAND. FLAGS x X X EOP UNITS = s X X FLAGS X >xX > START RESTART CONT INUE PROCEED DROP ADD \ PRINT DISPLAY PASS € TESTS X X X ZFLAGS EXIT 2.3 FLAGS —— e — 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 -—dr-“" USER DOCUMENTATION, MACRO M1113 25-MAY-82 08:41 PAGE 4-3 SEQ 0006 \ \ ARE ALSO CLEARED AFTER A START COMMAND UNLESS SET USING THE FLAG SWITCH. THE ZFLAGS COMMAND MAY ALSO BE USED TO CLEAR ALL FLAGS. WITH THE EXCEPTION OF THE START AND ZFLAGS COMMANDS, NO COMMANDS AFFECT THE STATE OF THE FLAGS: THEY REMAIN SET OR CLEARED AS SPECIFIED BY THE LAST FLAG SWITCH. FLAG EFFECT HOE HALT ON ERROR = CONTROL IS RETURNED TO RUNTIME SERVICES COMMAND MODE LOE IER* LOOP ON ERROR INHIBIT ALL ERROR REPORTS IBR+ 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) IXE* PRI DIRECT MESSAGES TO LINE PRINTER PNT PRINT TEST NUMBER AS TEST EXECUTES UAM UNATTENDED MODE (NO MANUAL INTERVENTION) BOE ISR "BELL'' ON ERROR . IDR ADR INHIBIT STATISTICAL REPORTS (DOES NOT APPLY TO DIAGNOSTICS WHICH DO NOT SUPPORT STATISTICAL REPORTING) INHIBIT PROGRAM DROPPING OF UNITS EXECUTE AUTODROP CODE Lor LOOP ON TEST - *ERROR MESSAGES ARE DESCRIBED IN SECTION 3.1 SEE THE XXDP+ USER'S MANUAL FOR SPECIFY MORE THAN ONE FLAG WITH - T9-.CAUSE THE PROGRAM TO LOOP ON AND-JYPE A "BELL'' ON ERROR, YOU MORE DETAILS ON FLAGS. YOU MAY THE FLAG SWITCH. FOR EXAMPLE, ERROR, INHIBIT ERROR REPORTS MAY USE THE FOLLOWING STRING: /FLAGS:LOE: IER: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 °‘Y'' 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 ''Y*', 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). 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: . USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4=& ~ SEQ 0007 TSBA/TSDB = 172520, VECTOR = 224 ON A *Y'"* (YES) RESPONSE TO THE QUESTION, THE FOLLOWING QUESTIONS WILL THEN BE ASKED TO ALLOW THE OPERATOR TO SELECT THE UNITS TO BE TESTED. A VALUE, IF PRESENT, LOCATED TO THE LEFT OF THE QUESTION MARK IS THE DEFAULT VALUE THAT WILL BE TAKEN IF ONLY A CARRIAGE RETURN IS TYPED AS A RESPONSE. A *'(D)"* IN A QUESTION INDICATES THAT A DECIMAL NUMBER IS REQUIRED AS A RESPONSE. AN "(0)'* INDICATES AN OCTAL NUMBER IS BEING .s.e.L,xggeeés s 'x‘goxwes THAT A LOGICAL RESPONSE IS # UNITS (D) ? 10 BE MADE: <ENTER THE NUMBER OF M7196 CONTROLLERS PRESENT TO BE TESTED> UNIT 0 DEVICE ADDRESS VECTOR (0) 224 ? (0) 172520 ? <ENTER THE ADDRESS OF THE TSBA/TSDB REGISTER> . <ENTER ADDRESS OF INTERRUPT VECTOR> THE ADDRESS AND VECTOR QUESTIONS WILL BE ASKED FOR EACH OF THE NUMBER OF UNITS (CONTROLLERS) SPECIFIED IN THE ''# UNITS?"* QUESTION. NUMBERS ARE ASSIGNED IN ORDER, BEGINNING AT 0. LOGICAL UNIT UP TO FOUR UNITS CAN BE SELECTED FOR TESTING AS FOLLOWS: UP TO & TSVO5 CONTROLLERS PER 11/23 AND UP TO 2 DRIVES PER CONTROLLER 2.5 SOFTWARE QUESTIONS AFTER 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 BEMAVES. OR CONTINUE. CHANGE SW (L) ? <TYPE Y TO CAUSE THE FOLLOWING OUESTIMS 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.> 2.6 EXTENDED P-TABLE DIALOGUE WHEN YOU ANSWER THE HARDWARE QUESTIONS, YOU ARE BUILDING ENTRIES | | USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4-5 I | IN A TABLE THAT DESCRIBES THE DEVICES UNDER T WAY TO BUILD THIS TABLE IS TO ANSWER ALL QUES UNIT TO BE TESTED. IF YOU HAVE A MULTIPLEXED A MASS STORAGE CONTROLLER WITH SEVERAL DRI DEVICE WITH SEVERAL LINES, THIS BECOMES TE THE ANSWERS ARE REPETITIOUS. TO ILLUSTRATE A MORE 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 NUMBERS 0 THROUGH 7. THERE IS ONE HARDWARE PARAMETER THAT CAN VARY AMONG UNITS CALLED THE Q-FACTOR. THIS Q=FACTOR MAY BE O OR 1. BELOW IS A SIMPLE WAY TO BUILD A TABLE FOR ONE XY11 WITH EIGHT UNITS. # UNITS (D) ? B<(R> UNIT 1 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 0<CR> Q-FACTOR (0) 0 ? 1<CR> UNIT 2 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 1<CR> Q=FACTOR (0) 1 ?2 O0<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<(CR> Q-FACTOR (0) 0 ? <(R> UNIT 5 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 4<(CR> Q=FACTOR (0) 0 ? <CR> UNIT 6 CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 5<CR> Q-FACTOR (0) 0 ? UNIT 7 <(R> - CSR ADDRESS (0) ? 160000<CR> SUB-DEVICE # (0) ? 6<CR> Q-FACTOR (0) 0 ? 1<CR> UNIT 8 CSR ADDRESS (0) 160000<CR> SUB-DEVICE # (0) ? 7<(CR> Q-FACTOR (0) 1 ? <(R> SEQ 0008 hna , USER DOCUMENTATION | MACRO M1113 25-MAY-82 08:41 PAGE 4-6 SEQ 0009 NOTICE THAT THE DEFAULT VALUE FOR THE Q=FACTOR CHANGES WHEN A NON=-DEFAULT RESPONSE IS GIVEN. MULTIPLE UNITS! BE CAREFUL WHEN SPECIFYING 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. IFE:;SREUILD THE SAME TABLE USING THE MULTIPLE SPECIFICATION # UNITS (D) ? B8<(CR> CSR ADDRESS (0) ? 160000<CR> ‘. UNIT 1 SUB-DEVICE # (0) ? 0,1<CR> Q-FACTOR (0) 0 ? 1,0<CR> UNIT 3 CSR ADDRESS (0) ? 160C00<CR> SUB-DEVICE # (0) ? 2-5<(R> Q=FACTOR (0) 0 ? 0<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 TELLS 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. THE LAST TWO UNITS ARE SPECIFIED IN THE THIRD PASS. 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> @-FACTOR (0) 0 ? 0,1,0,,,.1,1<CR> AS YOU CAN SEE FROM THIS EXAMPLE, NULL REPLIES (COMMAS ENCLOSING A NULL FIELD) TELL THE RUNTIME SERVICES TO REPEAT THE LAST REPLY. . USER DOCUMENTATION MACRC M1113 25-MAY-82 08:41 2.7 QUICK START=UP PROCEDURE PAGE 4~7 SE@ 0010 (XXDP+) TO START=UP THIS PROGRAM: . 1. BOOT XXDP+ 2. TYPE 'R NAME', WHERE NAME IS THE NAME OF THE BIN OR BIC FILE FOR THIS PROGRAM 3. TYPE "'START" 4. ANSWER THE '‘CHANGE HW'' QUESTION WITH ‘v 5. ANSWER ALL THE HARDWARE QUESTIONS 6. ANSWER THE ‘'CHANGE SW'' QUESTION WITH 'N'* WHEN YOU FOLLOW THIS PROCEDURE YOU WILL BE USING ONLY THE DEFAULTS FOR FLAGS AND SOF TWARE 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 TST NUMBER PC:XXXXXX +WHERE; NAME = DIAGNOSTIC NAME TYPE = ERROR TYPE (SYS FATAL, DEV FATAL, HARD OR SOFT) NUMBER = ERROR NUMBER 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', “IBRTM OR "‘IXE' FLAGS ARE SET (SECTION 2.3). THESE MESSAGES ARE PRINTED AFTER THE ASSOCIATED GENERAL ERROR MESSAGE AND ANY ASSOCIATED BASIC ERROR MESSAGES. 3.2 SPECIFIC ERROR MESSAGES BELOW ARE SAMPLE ERROR MESSAGES. EACH ERROR MESSAGE OF ERRORS DETECTED BY THIS DIAGNOSTIC. REPRESENTS DIFFERENT TYPES USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4-8 ~ SEQ 0011 ERROR MESSAGE 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 PART PRIOVIDES THE REGISTER BITS AND THEIR MNEMONICS FOR THE lgg?:RECY REGISTER OR STATUS WORDS. THE THIRD PART IS THE EXPECTED AND RECEIVED TST: 016 FIFO EXERCISER TEST - CVTSA 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: - DESIGNATOR <BIT # PARERR<1S> IEOT <12> IFMK <9> IRDY<6> IRWD<2> IRESV2<14> IRESVI<13> 1IDENT<11> ICER <10> IHER <8> ISPEED<7> TAPE BUS SIGINALS IN WORD #9: IONL<S> ILDP<4> IFBY<1> IFPT<O> DATMIS<7> ILW<6> OUTRDY<S> INRDY<4> MESSAGE BUFFER ADDRESS = 047352 MESSAGE BUFFER CONTENTS: WORD #0 EXPD: 100020 WORD #1 EXPD: 000012 WORD #2 EXPD: WORD #3 EXPD: WORD #4 EXPD: WORD #5 EXPD: WORD #6 EXPD: WORD #7 EXPD: WORD #8 EXPD: WORD #9 EXPD: 000000 000010 000000 000000 000000 000000 070217 000074 RECV: 100020 RECV: 000012 RECV: RECV: RECV: RECV: RECV: RECV: RECV: RECV: 000000 000010 000000 000000 000000 000000 070217 000034 XOR: 000000 XOR: 000000 XOR: XOR: XxOR: XOR: XOR: XOR: XOR: XOR: 000000 000000 000000 000000 000000 000000 000000 000040 ERROR MESSAGE EXAMPLE 2 THIS ERROR SHOWS A FATAL FUNCTION ERROR FROM THE TAPE DRIVE,IN THIS Ag;TSQCEbefg??gsgvsaABLE ERROR OCCURED WHICH INDICATES THAT THE CONTROLLER CVTSA 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 = 026 20 PACKET WORD # 40010 PACKET WORD # Z 000010 PACKET WORD # PACKET WORD # = 000000 = 000024 ERROR MESSAGE EXAMPLE 3 THIS ERROR SHOWS THAT THE MOTION BIT DID NOT GET SET WHILE DOING A REWING - | USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4~9 SEQ OO; WITH EXTENDED FEATURES MODE ENABLED. CVTS HRD ERR 00121 ON UNIT 00 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 UNITS (D) ? 1 UNIT 0 DEVICE ADDRESS (0) 172520 ? <(R> VECTOR (0) 224 ? <(R> CHANGE SW (L) ? N<CR> THE ABOVE COMMAND WILL START THE DIAGNOSTIC. THE COMMAND HAS TWO g:gggfigs ON WHICH ARE ‘PRINT EACH TEST NBR AS EXECUTED'' AND ‘HALT ON TST: TST: TST: TST: TST: TST: TST: TST: TST: TST: TST: 001 INITIALIZE M 002 WRAP DATA HIGH BYTE TEST 003 WRAP DATA LOW BYTE TEST 004 RAM TEST 005 INITIALIZE 2 TEST 006 COMMAND REJECT TEST 007 WRITE CHARACTREISTICS TEST 008 VOLUME CHECK 009 COMPLETION INTERRUPT TEST 010 BASIC PACKET PROTOCOL TEST 011 NON~TAPE-MOTION COMMANDS TEST 0 ERRORS NOTE: THE DIAGNOSTIC WIL. RUN CONTINUOSLY UNLESS A PASS NUMBER LIMIT HAS BEEN SPECIFIED WITH THE °'/PASS:'' SWITCH. PROGRAM RUN TIMES THE AVERAGE RUN TIMES OF THE PROGRAM ARE LISTED BELOW.THESE FlGURSS TO BE USED AS A_GUIDE. THE TIMING WAS DONE ON A PDP=11/2 PROCESSOR WITH A LA34 CONSOLE. ARE . USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 THE PROGRAM RUNS IN TWO MODES:; NO ITERATIONS THE ITERATION PAGE 4-10 SEQ 0013 NO TER TIONS AND DEFAULT MODE. DEFAULT MODE EACH TEST IS REPEATED 8 THE NUMBER OF TIMES COUNT. TEST NUMBER 1 N/1 SECS. 1 ITER SECS 30 DEF SECS. 29 n 8 n 3 1 1 25 5 25 20 1 20 1 10 8 120 140 475 20 10 20 2 INDICATED BY (YES). 9 7 95 135 450 0 9 0 1 THE TIMES REQUIRED TO RUN TESTS 1 Q.v. DEFAULT THE IN THE = NO ITERATION. MODE IS SELECTED BY ANSWERING THE INHIBIT ITERATIONS QUESTION WITH A “'v'* 2 3 4 5 6 7 8 9 10 IN MODE, EACH TEST ISRUN ONCE, WITH NO ITERATIONS. THROUGH 12 IN ONE COMMAND: 1 _MIN 57 SECONDS 12 MINS 5.0 DEVICE INFORMATION TABLES WHENEVER THE PROGRAM IS STARTED, VIA THE STA(RT) COMMAND, z::.SgEERVISOR REQUESTS THE FOLLOWING P=TABLES PARAMETER -) CHANGE HW (L) ? # UNITS (D) 7 <ENTER THE NUMBER OF M7196 CONTROLLERS PRESENT TO BE TESTED> DEVICE ADDRESS (0) 172520 ? <EN\CR THE ADDRESS OF THE UNIT 0 VECTOR (0) 224 ? TSBA/TSDB REGISTER> 6E?TSR ADDRESS OF INTERRUPT THE ADDRESS AND VECTOR QUESTIONS WILL BE ASKED FOR EACH OF THE NUMBER OF UNITS (CONTROLLERS) SPECIFIED IN THE '# UNITS?'* QUESTION. LOGICAL UNIT NUMBERS ARE ASSIGNED IN ORDER, BEGINNING AT 0. UP TO FOUR UNITS CAN BE SELECTED FOR TESTING. IN ADDIT]ON ON A START, RESTART OR CONTINUE THE SUPERVISOR ?58?53;5 CHANGES TO THE SOF TWARE OPERATING PARAMETERS, AS USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4-11 B 2 SEQ 0014 CHANGE SW (L) ? ¥ g INHIBIT ITERATIONS (L) N ? 6.0 TEST TEST SUMMARIES 1: BUS RESET TEST THIS TEST VERIFIES THAT THE M7196 MODULE'S DEVICE REGISTERS ARE ACCESSIBLE ON THE BUS (SUBTEST 1) AND THEN CHECKS THAT THE BUILT=IN INITIALIZATION SELF-TEST MICRODIAGNOSTIC DID NOT FIND ANY BASIC PROBLEMS IN THE MODULE. AREAS OF LOGIC TESTED BY THE SELF-TEST SEQUENCE ARE AS FOLLOWS: ROM AND PIPELINE REGISTER, SEQUENCER, INTERNAL BUSES, 2901 MICROPROCESSOR, AND, RAM. THIS TEST INITIALIZES THE CONTROLLER BY ISSUING THE BUS INIT SIGNAL VIA A RESET INSTRUCTION, OR BY WRITING INTO THE TSSR REGISTER, WAITS A PERIOD OF TIME (TO ALLOW THE CONTROLLER'S INITIALIZATION MICRODIAGNOSTIC SEQUENCE TO BE COMPLETED), AND THEN CHECKS THE CONTENTS OF THE TSSR REGISTER. SUCCESSFUL INITIALIZATION IS INDICATED BY SUBSYSTEM READY (SSR) AND NEED BUFFER ADDRESS (NBA) BITS BEING SET (1) AND ALL OTHER BITS (EXCEPT A17 AND A16 AND OFL, WHICH ARE IGNORED FOR THIS TEST) BEING CLEAR (0). IF THE CONTENTS OF TSSR ARE NOT AS EXPECTED, AN ERROR REPORT IS ISSUED LISTING THE EXPECTED DATA, ACTUAL DATA, AND THE DISCREPANCIES. i 5 .. » “ TS PR 1 4% i ) s o v ‘s THE ERROR REPORT ANALYZES THE TSSR CONTENTS AND DISCERNS AND REPORTS ONE OF THREE POSSIBILITIES: 1. TSSR _CONTENTS ARE AMBIGUOUS (ANY OF BITS 11-14 ARE SET, OR STATES OF SSR AND SC BITS DO NOT CORRESPOND TO THE APPARENT ERROR CODE IN BITS 0-5): INDICATES THAT THE TSSR _CONTENT CANNOT BE TRUSTED. INDICATES A CATASTROPHIC CONTROLLER MALFUNCTION. THIS IS A FATAL ERROR (EXECUTION IS ABORTED). FIELD ACTION WOULD BE TO REPLACE THE M7196. IF THE M7196 ITSELF IS BEING DEBUGGED, THE PROGRAM SHOULD BE RESTARTED WITH LOOP ON ERROR ENABLED IN ORDER TO PROBE FOR THE PROBLEM. 2. TEST SSR =0, SC = 0 AMD THE ERROR CODE IN BITS 0-5 IS IN THE RANGE 17-13: THIS IS A FATAL ERROR. THE ERROR CODE IS DECODED AND THE APPROPRIATE DESCRIPTION GIVEN. INDICATES THAT A SERIOUS PROBLEM EXISTS. 2: WRAP DATA - HIGH BYTE THIS TEST VERIFIES OPERATION OF: 1. PART OF THE 11/23 BUS INTERFACE SECTION OF THE M7196 MODULE: PART OF THE INPUT FILE (TSDB HIGH BYTE), PART OF THE OUTPUT FILE (TSSR WIGH BYTE AND TSBA, BOTH B g A ) y = : 1o NS : (o USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4=12 ¢ SEQ@ 0015 BYTES), PART OF THE DCOOS TRANSCEIVER CIRCUITS (ADDRESS DECODER, BDAL DRIVERS, HIGH BYTE OF INTERNAL DAL BUS 2:;vsgg§é AND BASIC PROGRAMMED [/0 CONTROL SEQUENCES 2. PART OF 2901 MICROPROCESSOR ELEMENTS (Q-REGISTER, ~ REGISTER 0, ROTATE AND NEGATE FUNCTIONS 3. Y AND SOURCE BUSES; 4. BASIC MICROPROGRAM SEQUENCES. THE_PROGRAM WRITES A TEST DATA BYTE INTO THE HIGH BYTE OF TSDB, WAITS FOR THE SSR BIT IN TSSR TO SET, THEN CHECKS THE CONTENTS OF BOTH TSBA AND TSSR, THE MODULE IS FUNCTIONING CORRECTLY IF DATA WRITTEN APPEARS IN BOTH BYTES OF TSBA AND THE FINAL CONTENT OF TSSR IS CORRECT (SAME AS AFTER INITIALIZATION EXCEPT FOR BITS 8 AND 9, WHICH SHOULD CONTAIN BITS 8 AND 9 OF THE DATA PATTERN WRITTEN. AN ERROR IS REPORTED AND A DESCRIPTIVE ANALYSIS GIVEN IF A DISCREPANCY IN TSBA OR TSSR IS DETECTED. THE ANALYSIS LISTS LIKELY FAULTY CANDIDATES FROM THE LOGIC ELEMENTS LISTED ABOVE. THE TEST IS REPEATED FOR ALL COMBINATIONS OF TEST DATA BYTES (0-377 OCTAL). TEST 3: WRAP DATA - LOW BYTE THIS TEST FURTHER VERIFIES OPERATION OF MANY OF THE SAME ELEMENTS TESTED IN TEST 2, AND ADDITIONALLY VERIFIES: 1. LOW BYTE OF THE TSDB INPUT FILE REGISTER, 2. LOW BYTE OF INTERNAL DAL BUS DRIVERS ON THE DCO0S 3. BASIC FUNCTIONING OF PARTS OF THE RAM. TRANSCEIVER CIRCUITS, THE PROGRAM WRITES A TEST DATA BYTE INTO THE LOW BYTE OF TSDB, WAITS FOR THE SSR BIT IN TSSR TO SET, THEN CHECKS THE CONTENTS OF BOTH TSBA AND TSSR. THE MODULE IS FUNCTIONING CORRECTLY IF DATA WRITTEN APPEARS IN BOTH BYTES OF TSBA AND THE FINAL CONTENT OF TSSR IS CORRECT (SAME AS AFTER INITIALIZATION EXCEPT FOR BITS 8 AND 9, WHICH SHOULD CONTAIN BITS 8 AND 9 OF THE DATA PATTERN WRITTEN. AN ERROR IS REPORTED AND A DESCRIPTIVE ANALYSIS GIVEN IF A DISCREPANCY IN TSBA OR TSSR IS DETECTED. THE ANALYSIS LISTS LIKELY FAULTY CANDIDATES FROM THE LOGIC ELEMENTS LISTED ABOVE. THE TEST IS REPEATED FOR ALL COMBINATIONS OF TEST DATA BYTES (0-377 OCTAL). TEST 4&: RAM TEST THIS TEST VERIFIES THAT ALL LOCATIONS OF THE RAM ON THE M7196 USER DOCUMENTATION MACRO M1113 | 25-MAY-82 08:41 PAGE 4-13 2 CAN PROPERLY STORE AND READ BACK ALL DATA PATTERNS, AND THAT EACH RAM LOCATION IS UNIQUELY ADDRESSED (I.E., THAT ONE AND ONLY ONE LOCATION IS ACCESSED BY ANY PARTICULAR ADDRESS). THE BYPRODUCT OF THESE TESTS IS A VERIFICATION OF TWO REGISTERS IN xgs 2901 AND THE CAPABLITY OF THE 2901 TO CORRECTLY PERFORM AN TEST §: SECOND INITIALIZATION TEST THIS TEST VERIFIES THE SAME ELEMENTS AS DID INITIALIZATION TEST #1 AND ALSO CHECKS THAT CERTAIN PARTS OF RAM IS CLEARED TO ZERO AND THAT 2901 REGISTERS 10 AND 11 ARE ALSO CLEARED TO ZERO. THIS IS A CONFIDENCE CHECK OF A PART OF THE SELF-TEST SEQUENCE (1.E., THAT IT IS REALLY BEING EXECUTED). FOR EACH OF TWO SUBTESTS (ONE FOR INITIALIZING VIA A BUS INIT, THE OTHER FOR }gl;ég%é%‘gg BY WRITING INTO THE TSSR), THE FOLLOWING SEQUENCE 1. EACH RAM LOCATION AND 2901 REGISTERS 10 AND 11 ARE SET TO ALL 1'S BY USING WRITES INTO THE TSDB REGISTER (LOW BYTE AND MAINTENANCE MODE WORD WRITES). 2. 3. THE CONTROLLER IS INITIALIZED AND THE VARIOUS CHECKS ON ;gsrggSQDDESCRIBED IN INITIALIZATION TEST #1 ARE #1°'S (377 OCTAL) ARE WRITTEN INTO THE LOW BYTE OF TSDB, WHICH SHOULD CAUSE RAM LOCATION O TO BE WRITTEN TO ALL 1°S SINCE 2901 REGISTERS 10 AND 11, SPECIFYING THE RAM ADDRESS, SHOULD BE 0. RAM LOCATION O IS VERIFIED BY WRITING A WORD OF ZEROS INTO THE TSDB. THE RESULTING LOW BYTE OF TSBA SHOULD CONTAIN ALL 1°S. 4. TEST THE ENTIRE RAM IS SCANNED. LOCATION O SHOULD CONTAIN ALL 1°S AND THE REMAINING LOCATIONS, EXCEPT FOR THE MESSAGE BUFFER IMAGE AREA, SHOULD CONTAIN 0. DISCREPANCIES ARE REPORTED. AN ERROR AT THIS POINT IS MOST LIKELY DUE TO A ROM, PIPELINE OR SEQUENCER PROBLEM OR A TIMING PROBLEM. é6: COMMAND REJECT THIS TEST VERIFIES THAT ALL COMMANDS OTHER THAN WRITE CHARACTERISTICS ARE REJECTED DUE TO THE NEED BUFFER ADDRESS (NBA) BIT BEING SET IN TSSR, AND THAT THE TSBA AND TSSR REGISTERS ARE LEFT IN THE PROPER STATE AFTER EACH COMMAND IS REJECTED. THIS TEST CHECKS MICROPROCESSOR SEQUENCING, BASIC COMMAND DECODING AND DATI DMA HANDLING. THIS TEST CONTAINS TWO SUBTESTS: SUBTEST 1 SEQUENCES THROUGH ALL COMMAND WORDS (OTHER THAN WRITE CHARACTERISTICS) WITH THE INTERRUPT ENABLE (IE) BIT CLEAR AND VERIFIES THAT AN INTERRUPT IS NOT GENERATED BY THE REJECTED COMMAND; SUBTEST 2 PERFORMS SIMILARLY TO SUBTEST 1 BUT SEQ@ 0016 USER DOCUMENTATION MACRO M1113 25-MAY-82 08:41 PAGE 4=~14 2 SETS THE IE BIT IN EACH COMMAND WORD AND VERIFIES THAT AN INTERRUPT IS GENERATED WHEN THE COMMAND IS REJECTED. TEST 7: WRITE CHARACTERISTICS THIS TEST VERIFIES BASIC OPERATION OF THE WRITE CHARACTERISTICS COMMAND. IT VERIFIES THAT THE COMMAND BLOCK AND CHARACTERISTICS DATA BLOCK ARE FETCHED PROPERLY FROM CPU MEMORY, THE NEED BUFFER ADDRESS (NBA) BIT IN TSSR IS HANDLED PROPERLY, AND THAT A PROPER MESSAGE PACKET IS STORED, WHERE APPROPRIATE. THIS TEST DOES NOT CHECK THAT THE VARIOUS FUNCTIONS ENABLED BY CHARACTERISTIC MODE DATA BITS OPERATE PROPERLY; THE FUNCTIONING OF THESE BITS IS VERIFIED IN SUBSEQUENT TESTS. ALL COMMANDS EXECUTED IN THIS TEST HAVE THE INTERRUPT ENABLE (IE) BIT CLEARED TO ZERO, SO NO INTERRUPTS SHOULD BE GENERATED. HOWEVER, THE PROGRAM RUNS AT PROCESSOR PRIORITY O, WITH THE INTERRUPT SERVICE ROUTINE SET UP TO FLAG UNEXPECTED INTERRUPTS. IF AN INTERRUPT OCCURS, A PROBLEM EXISTS IN EITHER THE 11/23 BUS INTERFACE SECTION OR IN THE ROM OR PIPELINE. TEST 8: VOLUME CHECK THIS TEST VERIFIES THAT THE VOLUME CHECK (VCK) BIT, A FLAG HELD WITHIN THE M7196 AND APPEARING IN XSTO, IS SET BY INITIALIZE AND CLEARED BY EXECUTING A WRITE CHARACTERISTICS COMMAND WITH THE CVC BIT SET. IT IS ALSO VERIFIED THAT A WRITE CHARACTERISTICS COMMAND WITH THE CVC BIT CLEAR DOES NOT AFFECT THE STATE OF THE VOLUME CHECK BIT. THE ACTUAL FUNCTION OF VOLUME CHECK, THAT OF PREVENTING OR ALLOWING A TAPE MOTION COMMAND DEPENDING UPON WHETHER VOLUME CHECK IS SET OR CLEAR, IS NOT CHECKED BY THIS TEST; THIS FUNCTIONALITY IS CHECKED IN THE INDIVIDUAL TESTS OF TAPE MOTION COMMANDS. TEST 9: COMPLETION INTERRUPT THIS TEST VERIFIES THAT AN INTERRUPT IS GENERATED AT THE COMPLETION OF THE WRITE CHARACTERISTICS COMMAND IF THE INTERRUPT ENABLE (IE) BIT IN THE COMMAND HEADER WORD IS SET. THIS TEST CHECKS THE FUNCTIONING OF THE INTERRUPT LOGIC AND BASIC PROCESSING OF THE IE BIT. THE SEQUENCES OF TEST 7 ARE REPEATED, EXCEPT THAT THE INTERRUPT SERVICE ROUTINE IS SET UP TO EXPECT INTERRUPTS AND EACH WRITE CHARACTERISTICS COMMAND IS ISSUED WITH THE IE BIT SET (1). IT IS VERIFIED, WHERE APPROPRIATE, THAT THE IE STATUS BIT IN XSTO OF ANY MESSAGE PACKET IS SET AND THAT A COMPLETION INTERRUPT IS GENERATED. FINALLY, A SEQUENCE OF TWO COMMANDS ARE ISSUED, THE FIRST WITH IE=1 AND THE SECOND WITH IE=0. IT IS VERIFIED THAT NO INTERRUPT IS GENERATED AFTER THE SECOND COMMAND AND THAT THE IE BIT IN XSTO IS 0. TEST 10: BASIC PACKET PROTOCOL THIS TEST VERIFIES BASIC OPERATION OF THE MESSAGE BUFFER RELEASE COMMAND, THE FUNCTION OF THE ACK BIT IN THE COMMAND HEADER WORD, AND THE REGISTER MODIFICATION REFUSED (RMR) LOGIC. SE@ 0017 USER DOCUMENTATION TEST MACRO M1113 25-MAY-82 08:41 ' PAGE 4-15 11: NON-TAPE MOTION COMMANDS THIS TEST VERIFIES PROPER OPERATION OF THE INITIALIZE COMMAND. TWO SUBTESTS APF USED. THE FIRST VERIFIES THAT THE COMMAND RUNS TO COM STION AND STORES A VALID MESSAGE PACKET. THE SEC ) VERIFIES THAT NON-ZERO VALUES IN THE COMMAND MUOE FIELD CAUSES COMMAND REJECT. 7.0 MAINTENANCE HISTORY REVISION A - MARCH 1982 - SEQ 0018 SEQ 0019 LTITLE 002000 002000 002000 PROGRAM HEADER <MCALL svC «ENABLE «NLIST -ENABL SVC =2000 TSV2:: TSV2 - PROGRAM HEADER .SBTTL s INITIALIZE SUP&‘ESOP. MACROS LC BEX,CND ABS,AMA BGNMOD TSV2 144 : THE PROGRAM HEADER 1S THE INTERFACE BETWEEN : THE DIAGNOSTIC PROGRAM AND THE SUPERVISOR. POINTER BGNSW,BGNSFT,BGNAU,BGNDU,BGNRPT LSNAME : : LSREV:: 060 000000 001217 045634 045766 002154 002164 046404 000000 000000 000000 000000 002124 LSDEPO:: LSUNIT:: LSTIML:: LSHPCP: : LSSPCP:: LSHPTP: : LSSPTP:: LSLADP: : LS$STA:: L$CO:: LSDTYP:: LSAPT:: LSDTP:: HEADER LASCII LASCII LASCII LASCII LASCII BYTE BYTE BYTE CVTSA.A,0,655..0 /C/ 7v/ /17 /87 /A/ O 0 0 ;DIAGNOSTIC NAME sREVISION LEVEL LASCII /A/ LASCII 70/ WORD 0 .WORD 655. .WORD LSHARD .WORD LSSOFT LWORD LSHW .WORD LSSW .WORD LSLAST LWORD O WORD 0 WORD O LWORD O .WORD LSDISPATCH H) sNUMBER OF UNITS :LONGEST TEST TIME ;POINTER TO H.W. QUES. sPOINTER TO S.W. QUES. sPTR. TO DEF. H.W. PTABLE sPTR. TO S.W. PTABLE ;DIAG. END ADDRESS JRESERVED FOR APT STATS sDIAGNOSTIC TYPE sAPT EXPANSION ;PTR. TO DISPATCH TABLE TSV2 = PROGRAM HEADER PROGRAM HEADER 000000 000000 000000 003 003 000000 000000 000000 003376 022654 000000 000000 022342 022440 000000 003404 104035 000000 021546 022626 022546 021536 000000 000000 3 000000 MACRO M1113 25-MAY-82 08:41 LSPRIO:: PAGE 7-1 SEQ@ 0020 ;DIAGNOSTIC RUN PRIORITY .WORD LSENVI:: — sFLAGS DESCRIBE HOW IT WAS SETUP LSEXP1:: JEXPANSION WORD LSMREV:: LSEF:: LSSPC:: LSDEVP:: LSREPP: : LSEXP4:: LSEXPS:: LSAUT:: LSDUT:: LSLUN:: LSDESP: : LSLOAD:: LSETP:: LSICP:: L$CCP:: LSACP:: LSPRT:: LSTEST:: LSDLY:: LSHIME:: .WORD :SVC REV AND EDIT # .BYTE .BYTE WORD WORD CSREVISION CSEDIT sDIAG. EVENT FLAGS O O WORD O .WORD LSDVTYP .WORD LSRPT WORD O .WORD 0 .WORD LSAU .WORD LS$SDU s 8 .WORD LSDESC EMT . ESLOAD WORD O .WORD LSINIT .WORD LSCLEAN .WORD LSAUTO .WORD LSPROT WORD 0 WORD O WORD O s POINTER TO DEVICE TYPE LIST ;PTR. TO REPORT COLE ;PTR. TO ADD UNIT CODE ;PTR. TO DROP UNIT CODE sLUN FOR EXERCISERS TO FILL sPOINTER TO DIAG. DESCRIPTION sGENERATE SPECIAL AUTOLOAD EMT sPOINTER TO ERRTBL sPTR. TO INIT CODE sPTR. TO CLEAN-UP CODE ;PTR. TO AUTO CODE sPTR. TO PROTECT TABLE sTEST NUMBER sDELAY COUNT sPTR. TO HIGH MEM TSV2 = PROGRAM HEADER DISPATCH TABLE — MACRO M1113 25-MAY-82 08:41 g? .SBTTL PAGE 8 DISPATCH TABLE 35 144 E gg s IT IS USED BY THE SUPERVISOR TO DISPATCH TO EACH TEST. © 36 s THE DISPATCH TABLE CONTAINS THE STARTING ADDRESS OF EACH TEST. 39 40 002122 002122 002124 002124 002126 002130 002132 002134 002136 002140 ’002142 002144 002146 002150 ) 000013 023436 023656 024354 025046 026402 027506 030764 034352 035256 040372 043474 DISPATCH 11 LWORD LSDISPATCH: : WORD WORD .WORD WORD WORD .WORD LWORD .WORD MWORD .WORD MWORD 11 T1 T2 T3 T4 TS T6 T7 T8 T9 T10 T SEQ 0021 TSV2 = PROGRAM HEADER MACRO M1113 DEFAULT HARDWARE P-TABLE 25-MAY-82 08:41 PAGE 9 J 2 SEQ 0022, «SBTTL DEFAULT HARDWARE P-TABLE 144 ; THE DEFAULT HARDWARE P-TABLE CONTAINS DEFAULT VALUES OF : THE TEST-DEVICE PARAMETERS. THE STRUCTURE OF THIS TABLE : IS IDENTICAL TO THE STRUCTURE OF THE RUN-TIME P-TABLE. 000003 51 52 002154 54 002160 55 002162 002162 i LSHW:: BGNHW DFPTBL :DEFAULT HARD-P=-TABLE WORD WORD .WORD ENDHW 172520 224 PRIOG ; 1ST (OF 2) REGISTERS. s INTERRUPT VECTOR s INTERRUPT PRIORITY. .WORD L10000~LSHW/2 DFPTBL:: 172520 000224 000200 L10000: A} 2, TSV2 = PROGRAM HEADER SOF TWARE P-TABLE MACRO M1113 25-MAY-82 08:41 .SBTTL PAGE 10 - SEQ 0023 SOFTWARE P-TABLE 144 : THE SOFTWARE P-TABLE CONTAINS THE VALUES OF THE PROGRAM : PARAMETERS THAT CAN BE CHANGED BY THE OPERATOR. 000004 64 65 002164 29 002166 68 69 002170 70 002172 71 002174 002174 72 73 002174 SFPTBL LSSW:: SFPTBL:: L10001-L$SW/2 000000 000000 TRANSTST:: NOITS:: «WORD -WORD ENABLE TEST OF TRANSPORT(S) IF =1 INHIBIT ITERATION OPTION. 000017 000310 LERRMAX:: GERRMAX:: .WORD .WORD .NZ = INHIBIT ITERATE. LOCAL (PER TEST) ERROR LIMIT GLOBAL (PER UNIT) ERROR LIMIT L10001: TSV3 = GLOBAL AREAS SOF TWARE P-TABLE MACRO M1113 25-MAY-82 08:41 PAGE 13 .TITLE TSV3:: .- - SEQ@ 0024 TSV3 = GLOBAL AREAS .SBTTL GLOBAL EQUATES SECTION BGNMOD TSV3 .SBTTL GLOBAL EQUATES SECTION 144 : THE GLOBAL EQUATES SECTION CONTAINS PROGRAM EQUATES THAT ¢ ARE USED IN MORE THAN ONE TEST. 29 33 002174 EQUALS ; GET STANDARD EQUATES. : BIT DIFINITIONS 100000 81T15== 100000 BIT14== 40000 B8IT13== 20000 8IT12== 10000 BIT11== 4000 B8IT10== 2000 B8IT09== 1000 BIT08== 400 BIT07== 200 BIT06== 100 BIT05== 40 BITO4== 20 8IT03== 10 BIT02== 4 BITO01== 2 81T00== 1 BIT9== eIr8== BiT7== BITé== BIT5== BITé== BIT3== BIT2== BITi1== BITO== b BIT09 BIT08 BIT07 BIT06 BIT05 BITO04 BITO03 BIT02 BIT01 BIT00 - - 000036 000035 000034 T 0000 see. MMMMMe. s, * EVENT FLAG DEF INITIONS EF32:EF17 RESERVED FOR SUPERVISOR TO PROGRAM COMMUNICATION «START== +RESTART== .CONTINUE== .gsgff gZ. 1. 30. 58. s : : ¢ START COMMAND WAS ISSUED RESTART COMMAND WAS ISSUED CONTINUE COMMAND WAS ISSUED A NEW PASS HAS BEEN STARTED A POWER-FAIL/POWER-UP OCCURRED TSV3 = GLOBAL AREAS GLOBAL EQUATES SECTION MACRO M1113 25-MAY-82 08:41 PAGE 13-1 SEQ 0025 : PRIORITY LEVEL DEFINITIONS 000340 00 PRIO7== 340 PRIO6== 300 PRIOS== 240 PRIO4== 200 PRI0O3== 140 PRI02== 100 PRIOT== 40 PRIOO== 0 JOPERATOR FLAG BITS EVL== LOT== ADR== IDU== ISR== == BOE== PNT== PR]== i 35 002174 000250 177572 177574 177576 172516 4 10 20 40 100 200 400 1000 2000 IXE== IBE== IER== LOE== HOE== 4000 10000 20000 40000 100000 .SBTTL MEMORY MANAGEMENT DEF INITIONS SRO= 177572 177574 177576 172516 KT11 ;*KT11 VECTOR ADDRESS MMVEC= 250 :*KT11 STATUS REGISTER ADDRESSES SR1= SR2= SR3= .IF N8 \ s *USER “'I'' PAGE DESCRIPTOR REGISTERS UIPDRO= 177600 UIPDR1= UIPDR2= UIPDR3= UIPDRé= UIPDRS= UIPDR6= UIPDR7= .IF NB s *USER ‘D" PAGE DESCRIPTOR REGISTORS UDPDRO= 177620 UDPDR1= UDPDR2= UDPDR3= UDPDRé= UDPDRS= UDPDR6= UDPDR7= 177636 ;DEFINE MEMORY MANAGEMENT REGISTERS TSV3 = GLOBAL AREAS MACRO M1113 MEMORY MANAGEMENT DEF INITIONS 25-MAY-82 08:41 PAGE 13-2 SEQ 0026 ENDC s *USER 'fl"PAGE ADDRESS REGISTERS UIPARO= 177640 UIPAR1= 177642 UIPAR2= 177644 UIPAR3= 177646 UIPAR4= 177650 UIPARS= 177652 UIPARG= 177654 U}:Az;- 177656 ;s *USER 'fi"PAGE ADDRESS REGISTERS UD PARO= 177660. UDPAR1= 177662 UDPAR2= 177664 UDPAR3= 177666 UDPAR%= 177670 UDPARS= 177672 UDPARG= 177674 UDPAR?= 177676 NNNNNNNNY NN SIPDRO= SNV gwuw HSNOONSNO : OSNVOONSNO <ENDC .ENDC oiF 'SUPERVISOR *'I'* PAGE DESCRIPTOR REGISTERS h =D e e d b B b o e b b e NN NNNNNNDN NN NN nNO NOPONONIN nNONON D NN be s *SUPERV SDPDRO= SDPDR1= SDPDR2= SDPDR3= SDPDRé4= SDPDRS= SDPDR6= SDPDR7= .ENDC "'I'* PAGE ADDRESS REGISTERS VIS SN i e e e o oo NNNg — e NNNN b bt 2 w — o~ U] i bed SIPAR2= SIPAR3= SNNNNNNNNDN NOPNONLNONINONON NONONINONLNLNOND b bt s *SUPERV SIPARQ= SIPAR1= D'’ PAGE DESCRIPTOR REGISTERS SSNO .IF NB oSO SIPDR2= SIPDR3= SIPDR4= SIPDRS= SIPDR6= SIPDR7= D'’ PAGE ADDRESS REGISTERS oo =] SIPDR1= TSV3 = GLOBAL AREAS MACRO M1113 MEMORY MANAGEMENT DEF INITIONS 25<MAY<82 08:41 PAGE 13-3 B 3 SEQ 0027 D d e o e — SNNNNNNNN RN O NOONSNO J W N D s *KERNEL GE ISTERS NOONSSNOM ‘ o> b e e b d e - KIPDRS= KIPDR6= KIPDR?7= .IF NB e KIPDR?2= KIPDR3= KIPDR4= NNNNNNNN NN WWWWWWWW B oD oD e OO0 O SDPAR3= 1 SDPARG= 1 SDPARS= 1 SDPARG= 1 SDPAR7= 1 ENDC ENDC 'KERgEL "'1'' PAGE DESCRIPTOR REGISTERS KIPDR KIPDR1= 'KERNEL "'I'' PAGE ADDRESS REGISTERS KIPARO= 172340 KIPAR1= 172342 KIPAR2= 172344 KIPAR3= 172346 KIPAR4= 172350 KIPARS= 172352 KIPARG= 172354 K}:A=;= 172356 s*KERNEL 'D'' PAGE ADDRESS REGISTERS KDPARO= 172360 KDPAR1= 172362 KDPAR2= KDPAR3= KDPAR4= KDPARS= KDPARG= KDPAR7= +ENDC 172364 172366 172370 172372 172374 172376 TSV3 = GLOBAL AREAS MACRO M1113 TSVOS REGISTER AND PACKET DEFINITIONS 25-MAY-82 08:41 SEQ 0028 2? _ b 2‘ 45 46 &7 48 49 g? 000004 000060 177560 177562 177520 ERRVEC== TTIVEC== TTICSR== TTIBFR== BDVPCR== 52 65 000060 e 4 60 177560 177562 177520 4 ; s s s : POINTER TO ERROR VECTOR FOR BUS TIME OUT. INTERRUPT VECTOR FOR CONSOLE INPUT BUS ADDRESS OF CONSOLE INPUT CONSOLE INPUT DATA BUFFER BDV11 PAGE CONTROL REGISTER 3¢ 60 61 62 63 64 TSVOS REGISTER AND PACKET DEFINITIONS sBIT DEFINITIONS FOR TSSR REGISTER 100000 040000 020000 010000 004000 002000 001400 000200 59 «SBTTL H s SOME GENERAL EQUATES. gz ss 56 S7 S8 PAGE 14 000100 000016 SC= BIT1S BIE= BIT14 SCE= BIT13 RMR= BIT12 NXM= BITI NBA= BIT10 HIADDR= BIT9!BITS8 SSR= BIT? JNONEXISTANT MEMORY ERROR sNEED BUFFER ADDRESS sEXTENDED ADDRESS BITS sSUB SYSTEM READY FATERR= BIT4!BITS sFATAL TERMINATION ERROR CODES OFL= BIT6 TERCLS= BIT3!BIT2!BIT1 sSPECIAL CONDITION :BUS INTERFACE ERROR sSANITY CHECK ERROR sMODIFICATION REFUSED sOFF LINE BIT ;TERMINATION CODES 68 71 72 73 e 76 77 78 79 80 81 82 83 85 86 :BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 0 2 (XSTO) 3 100000 040000 020000 01 004000 002000 001000 000400 000200 000100 e XSOTMK= BIT1S ASORLS= BIT14 XSOLET= BIT13 XSORLL= BIT12 XSOWLE= BIT11 XSONEF= BIT10 XSOILC= BIT9 XSOILA= BITS8 XSOMOT= BIT? XSOONL= BITé 000040 XSOIE= 88 000010 XSOPED= BIT3 90 000002 XS0BOT= BIT1 59 35 G3 A i 94 000020 000004 000001 BITS XSOVCK= BIT4 sLOGICAL END OF TAPE sRECORD LENGTH LONG sWRITE LOCK ERROR JNON EXECUTABLE FUNCTION s ILLEGAL COMMAND sILLEGAL ADDRESS sTAPE IN MOTION s TRANSPORT ON LINE s INTERRUPT ENABLE sVOLUME CHECK BIT sPHASE ENCODED DRIVE XSOWLK= BIT?2 JWRITE LOCKED XSOEOT= BiTO sEND OF TAPE : I TETE) 87 sTAPE MARK DETECTED JRECORD LENGTH SHORT sBEGINNING OF TAPE §;7?5FINITIONS FOR EXTENDED STATUS REGISTER 1 TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 TSVOS REGISTER AND PACKET DEFINITIONS 000002 JDATA LATE sNOT USED ; CORRECTABLE DATA ERROR X1.RBP X1.UNC JREAD BUS PARITY ERROR sUNCORRECTABLE DATA OR HARD ERROR = 01712081711081?100817908177081760817508174081730817208170 JALWAYS 0 = BITS8 = BIT1 :0 sBIT DEFINITIONS FOR EXTENDED STATUS REGISTER 2 s (XST2) 100000 0 ) 8 b b b b b X2.0PM = BIT1S sOPERATION IN PROGRESS (TAPE MOVING) X2.RCE = BIT14 :RAM CHECKSUM ERROR X2.SPARE= BIT13+BIT12+BIT11+BIT9+BIT8 ;NOT USED BY TSVOS (ALWAYS=0) X2.WCF = BIT10 sWRITE CLOCK FAILURE (FIFO NOT EMPTIED BY TRANSPORT) X2.EXTF = BIT? sIF WRITE CHAR CMD THEN = EXTENDED FEATURES ENABLED X2.BUFE = BITé sIF WRITE CHAR CMD THEN = BUFFERING ENABLED X2.REV = 000077 sIF WRITE CHAR CMD THEN = MICROCODE REVISION LEVEL X2.UNIT = BIT2+BIT1+BITO ;IF GET STATUS THEN = CURRENTLY SELECTED UNIT NO. 4 ;BIT DEFINITIONS FOR EXTENDED STATUS REGISTER 3 ; (XST3) P PO I P X3.MDE P Y O o o0 0 0 P )O O W RO 2 30 00 O A I R0 = S B 8 VIS BB N o O o SEQ 0029 X1.DLT = BIT1S X1.SPARE= BIT14 X1.COR = BIT13 X1.M82 b s b AR wN-aoooowo\nwa-ooawouawwdoomwgmgwgdgs 97 98 PAGE 14~1 000001 = 177400 X3.SPARE= BIT? X3.0P1 = BITé X3.REV = BITS X3.TRF = BIT4 X3.0CK = BIT3 X3.MBZ =BIT2+BIT1 X3.RIB = BITO sMICRO-DIAGNOSTIC ERROR CODE sNOT USED BY TSVOS sOPERATION INCOMPLETE sREVERSE : TRANSPORT RESPONSE FAILURE sDENSITY CHECK sNOT USED ALWAYS 0 sREVERSE INTO BOT o4 :B§§72§FINITIONS FOR EXTENDED STATUS REGISTER & 100000 040000 020000 017400 000377 X4.HSP X4.RCE X4.TSM = BITI15 = BIT14 = BIT13 sHIGH SPEED sRETRY COUNT EXCEEDED : TRANSPORT SPECIAL MODE X4.WRC = 000377 sWRITE RETRY COUNT FIELD X4.MBZ = BIT12+BIT11+BIT10+BIT9+BIT8 ;NOT USED ALWAYS 0 4 :TSSR TERMINATION CODES (BIT 0-2) 000006 000006 TSRE J= UNREC= 3%2 6 e :DEVICE REGISTER OFFSETS s COMMAND REJECTED sUNRECOVERABLE ERROR TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 TSVOS REGISTER AND PACKET DEFINITIONS 154 155 156 157 158 159 160 161 162 163 000000 000000 000001 006001 000002 000003 164 200 201 202 203 204 205 206 207 208 209 210 0 0 1 1 2 3 SEQ 0030 ;TSDB/TSBA REGISTER ;TSDB/TSBA REGISTER HIGH BYTE :TSSR REGISTER sTSSR REGISTER HIGH BYTE 4 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 TSBA== TSDB== TSBAH== TSDBH== TSSR== TSSRH== PAGE 14-2 : TSDB ADDRESS BIT DEFINITIONS 000003 A1716 = BIT1+8ITO sADDRESS BITS 17:16 ARE IN 1:0 COHHAND DEF INITIONS 000017 000013 000012 000011 000010 000006 000005 000004 000001 P GETSTAT P.INIT P.CONTROL P.FORMAT P.POSITION P.WRTSUB P.WRITE P.WRTCHAR P.READ =17 =13 =12 =1 =10 =6 =5 =4 =1 sGET STATUS s INITIALIZE CONTROL COMMANDS : FORMAT :POSITION SUBSYSTEH WRITE WRITE HRXTE CHARACTERISTICS sREAD i+ : COMMAND PACKET HEADER WORD BIT DEFINITIONS 100000 040000 020000 010000 007400 000200 000140 00003 P.ACK P.CVC P.OPP P.SWB = BIT15 = BIT14 sBUFFER AVAIL FOR CONTROLLER sCLEAR VOLUME CHECK = BIT13 = BIT12 REVERSE SEQUENCE OF DATA BITS WAP BYTES IN MEMORY P.FMT= BIT6!BITS P.CMD = 37 :PACKET HEADER TYPE (ALWAYS=0) sMAJOR COMMAND FIELD P.MODE P.I1E = BIT11! 81710'8179'8178 sEXTENDED COMMAND MODE FIELD = BIT? : INTERRUPT ENABLE CONTROL COMMAND MODE CODES 000000 000400 001000 002000 PC.RELEASE PC.REWIND = 0+256. = 1%256. sRELEASE BUFFER sREWIND PC.IEREW PC.ERASE = 4+256. = 5%256. sREWIND IMMEDIATE INTERRUPT sSECURITY ERASE PC.NOOP 002400 = 2+256. :NO-0P i ; 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 :COMMAND PACKET END RAM ADDRESS :MESSAGE BUFFER BEGIN RAM ADDRESS sMESSAGE BUFFER END RAM ADDRESS v D OV NOWVS~sWNS PAGE 14-3 SEQ 0031 :REGISTER DEFINITIONS IN THE MESSAGE BLf7ER 000006 — e e o e DSLSLSLSI SN NN ST N1 TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 TSV0 EGISTER AND PACKET DEFINITIONS 000016 XST0== 6 XST1== 8, Xs12==10. XST3== 12. XSTé== 14, sEXTENDED sEXTENDED sEXTENDED ;EXTENDED sEXTENDED STATUS REGISTER O (WORD &) STATUS REGISTER 1 (WORD 5) STATUS REGISTER 2 (WORD 6) STATUS REGISTER 3 (WORD 7) STATUS REGISTER 4 (WORD 8) OFFSETS TO WORD LOCATIONS IN PACKET DEFINITIONS 000002 000004 000006 PKLOW =2 ;LOW ORDER CHARACTERISTIC DATA POINTER PKBCNT = 6 sNUMBER OF BYTES IN DATA PACKET 000010 EXBCNT=10 PKHI =4 sHIGH ORDER CHARACTERISTIC DATA POINTER sNUMBER OF BYTES IN EXTENDED DATA PACKET i+ sDATA PACKET OFFSETS FOR WRITE SUBSYTEM COMMAND 000000 000001 000002 000004 BSELO BSELT SEL2 =0 =1 =2 SELDATA = & ;BYTE 0 :BYTE 1 sWORD 2 sWORD 3 i+ sBSELO SELECT CODES FOR WRITE SUBSYSTEM COMMAND PW.RDRAM PW.WTRAM PW.RFIFO PW.WFIFO PW.RDSTAT PW.WCTL =0 =1 =2 =3 =4 =5 =6 :NO-0P sREAD RAM sWRITE RAM sREAD FIFO PW.WFMT PW.WMISC PW.WNPR =7 =10 =1n sWRITE FIFO sREAD STATUS sWRITE TAPE CONTROL sWRITE TAPE FORMAT sWRITE MISCELLANEOUS sWRITE NPR CONTROL PW.D11 = 21 :DO MICROTEST 11 PW.D22 PW.D13 PW.NO1311 PW.RDEXT = 20 = 22 = 23 = 24 ;D0 MICROTEST 22 :DO MICROTEST 13 sDISABLE MICROTEST 11 AND 13 sREAD EXT. TAPE STATUS (NOT SUPPORTED BY ALL TRANSPORTS WR BIT? BITé sIFAD = FORMATTER ADDRESS sITADO - TRANSPORT ADDRESS BIT 0 TSV3 = GLOBAL AREAS MACRO M11 13 25-MAY=82 08:41 TSVOS REGISTER AND PACKET DEFINIT IONS 000040 000020 000010 000004 000002 000001 WC.I1TAD WC. ISRESV WC. IREW wC. IRWU Wl IFEN WC.160 = BITS SEQ 0032 sITAD1 <« TRANSPORT ADDRESS BIT 1 IRESVS = RESERVED #5 = BIT4 = BIT3 = BIT2 .IREH JIRWU ISEN = BIT = BITO = REWIND = REWIND AND UNLOAD = FORMATTER ENABLE BSEL1 CODES FOR WRITE FORMAT 000200 000100 000040 000020 000010 000004 000002 000001 ur IHISP = BIT? WF. IWRT = BITé WF.IWFM WF.IEDIT = BIT4 = BIT3 WF . IREV WF . IERASE WF . I3RESV WF . I4RESV JIHISP JIMRT = BITS JIREV JIWFM JIEDIT sIERASE JIRESV3 sIRESV4 = BIT2 = BIT = BITO = HIGH SPEED = WRITE = REVERSE = WRITE FILE MARK = EDIT - ERASE = RESERVED #3 = RESERVED #4 GSEL1 CODES FOR WRITE MISCELLANEOUS SUBCOMMAND 000200 000020 000010 000006 000001 HS EXT MS.RSFIFO MS.RSTAPE MS.ATTN HS RSD = = = = = BIT? BIT4 BIT3 BIT2! BITO s INVERT SENSE OF EXTENDED FEATURES SWITCH sRESET FIFO AND INPUT PARITY ERRORR sRESET TAPE STATUS IN 2 FLIP-FLOPS sATTENTION TRIGGER FIELD sRESET TIMER A,B THEN DELAY TIMES IN SEL2 (+2 1#2 2#2 3#2 sNO-OP (NOTHING TRIGGERED) sSIMULATE ON-LINE/OFF=LINE TRANSISTION sFORCE NON-FATAL RAM ERROR (FORCES ERRCODE 54) sFORCE FATAL RAM ERROR (CAUSES SCE TO SET) HS ATTN SUBCODES 000000 000002 000004 000006 MSA.NOP = MSA.VOL = MSA.NRAM= MSA.FRAM= i+ ¢ WRITE SUBSYSTEM WRITE NPR BSEL1 BIT DEFINITIONS 000200 000100 000040 00002 NP.IR NP.OUT NP.LOOP NP WRP = BIT7 = BITé s INTERRUPT REQUEST (0-1 TRANSITION) s TAPE DATA DIRECTION OUT (0= IN) = BITS = BIT4 sENABLE TRANSPORT LOOPBACK sWRITE CORRECT PARITY (SET=0 TO WRITE WRONG) PR TR TR T PR PR (UNDEFINED) OUT RDY H IN RDY H TIMER A FLAG H TIMER B FLAG H R s WORD #8 BYTE 1 PARIN H IRESV2 IRESV1 IEOT L TE PR 8IT0 HORD #9 BYTE 2 ?CTA IN MISS LA — i e e = N\ AN S NON -~ WSS & sy vy s e ey i ottt — — [y naunmuunnununnunnn DODDODDODODODD®D 3 Pt k2 000200 000100 000040 000020 000010 000004 000003 100000 040000 020000 010000 [+ +] READ STATUS MESSAGE BUFFER BIT DEFINITIONS w 268 269 270 2n 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 2N 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 PAGE 14=4 TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 TSVOS REGISTER AND PACKET DEFINITIONS 325 326 327 328 329 330 33 332 333 334 335 %gg 004000 002000 001000 000400 000200 000100 000040 000020 000010 000004 000002 000001 S1.1IDENT S1.1CER S1.1FMK S1.IHER S0.ISPEED S0.IRDY S0. IONL SO.ILDP S0.1DBY S0.IRWD S0.IFBY SO.IFPT PAGE 14=5 = BITN = BIT10 = BIT9 = BIT8 = BIT?7 = BIT6 = BITS = BIT4 = BIT3 = BIT2 = BIT1 = BITO . SEQ 0033 : I1IDENT H 3 ICER H ; IFMK H : IHER H .HORD #8 BYTE O ISPEED H : IRDY L 3 IONL L 3 ILDP L : IDBY L 3 IRWD L : : IFBY L IFPT L TSV3 = GLOBAL AREAS MACRO M1113 WWWW viviunawna W) - O OVBN NS W= ©o RRERRRRRY r SPECIAL MACROS AND OPDEFS. 25-MAY-82 08:41 +SBTTL PAGE 15 SEQ 0034 SPECIAL MACROS AND OPDEFS. i sSAVE GENERAL REGS 1 TO S «MACRO JSR .ENDM SAVREG R5,REGSAV HACRO TO FORCE AN ERROR "tf?? FORCERROR .1{2 NDF LISTALL, TAG,NOTSSR .NLIST .IF B NOTSSR eoe TM TSSR(RS) ,R1 ;READ TSSR 4 FORCER,FORCER ;IS FORCER SET? (LEAVE C BIT ALONE) MOV BNE TAG NLIST IF NOF LISTALL, :BR IF YES .LIST -ENDM HACRO TO FORCE AN EXIT TO AVOID SECTION ITERATIONS WILL EXIT TO A LABEL IF FORCER IS NEGATIVE SO TO FORCE_ERRORS AND EXIT ON 1 ERROR SET FORCER TO 177777 TO FORCE ERRORS AND ITERATIONS SET FORCER TO 1. .HACRO FORCEXIT TAG «NLIST «IIF NDF LISTALL, .NLIST LIST MoV FORCER,FORCER NLIST BMI TAG .llF NDF LISTALL, LIST .ENDH ;IS FORCER NEGATIVE? :BR IF YES .LIST HACRO TO INCREMENT ERROR COUNTS HACRO «NLIST NEXT.ERRNO :::.11F NDF LISTALL. «NLIST ERRNO=ERRNO+1 ....1lf NDF LISTALL. LIST LIST .ENDM £4 TSV3 = GLOBAL AREAS MACRO M1113 SPECIAL MACROS AND OPDEFS. 397 BIC BIC BIS .ENDM 000000 2}; 419 EN=0 .SBTTL XOR A.B A,=(SP) B,(SP) A.B (SP)+,B FORCER : INITIALIZE ERROR NUMBER = FORCE ERROR FLAG “ o ; - o~ &~ .MACRO MOV -— —2 - 416 SEQ 0035 - 2}% 414 415 002174 3 PAGE 15-1 JMACRO TO PERFORM XOR 398 399 400 401 402 403 404 282 407 408 25-MAY-82 08:41 THE FOLLOWING LOCATIONS MAY BE PATCHED BY THE USER : TO OBTAIN THE RESULTS DESCRIBED FOR EACH. 000000 " FORCER: : 0 ; FORCE TYPE ALL HARD ERRORS (THE ONES CALLED = : = BY THE MACRO “‘IFERROR''). AN ERROR NEED NOT = : = EXIST, JUST ASSUME AND TYPE THE MESSAGE. TSV3 = GLOBAL AREAS GLOBAL DATA SECTION MACRO M1113 25-MAY-82 08:41 2%% .SBTTL beb 425 426 430 ll:g% 440 002214 441 002216 442 002220 443 002222 444 002224 445 002226 2230 447 002232 448 002234 449 002236 450 002240 4351 452 002302 454 002306 455 002310 456 002312 457 002314 458 002316 459 002320 460 002464 461 002630 GLOBAL DATA SECTION .-- 459 436 002204 437 002206 438 002210 439 002212 SEQ 0036 THE GLOBAL DATA SECTION CONTAINS DATA THAT ARE USED :IN MORE THAN ONE TEST ‘27 433 002176 434 002200 435 002202 PAGE 16 THE FOLLOWING DATA ARE SET FOR EACH UNIT AT INIT TIME. SINGLE UNIT DEFAULTS (LISTED) ARE IN THE DEFAULT P-TABLE. 000000 (00000 000000 000000 000224 000200 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 EPRTSU UNITN:: QVP:: CSRADDR: : IVEC:: IPRI:: TSTCNT LOOPCNT DEVCNT FATFLG INTRECV EXTFEA BENBSW EXPD:: RECV:: ERRHI : ERRLO: RAMDATA WORD WORD WORD WORD .WORD .WORD WORD WORD WORD WORD «WORD WORD «WORD WORD WORD WORD WORD .BLKW 0 0 0 O 224 PRIO4 0 O 0 0 0 0 0 0 0 0 O 16. WORD 0 RAMS 12 WORD RCVLOADD WORD RCVHIADD COUNT : DATA:: TSTFLAG TSTPTR PRMNO : EXPMSG: : RECMSG: : TMPBFR: : WORD WORD WORD WORD WORD .BLKB .BLKB .BLkB sPRINT SWITCH sUNIT # UNDER TEST. sQUICK VERIFY FLAG. sADDRESS OF CSR FOR CURRENT DEVICE s INTERRUPT VECTOR ;INTERRUPT PRIORiTY. INUMBER OF TESTS RUN IN THIS PASS sREMAINING ITERATION COUNT FOR TEST :NUMBER OF DEVICE UNDER TEST sSET IF FATAL ERROR IS DETECTED IN TEST sSET_IF TAPE INTERRUPT WAS RECEIVED :EXTENDED FEATURES SOF TWARE SY 0=0FF; 1-0‘ :BUFFER ENABLE SWITCH SW 0=OFF ;1=ON :EXPECTED RAM DATA FOR PRAMPKT ROUTINE sRECEIVED RAM DATA FOR PRAMPKT ROUTINE :HIGH ADDRESS MEMORY ERROR :LOW ADDRESS MEMORY ERROR sDATA READ FROM RAM PACKET OR MESSAGE BUF AREA 0 :RAM DATA SIZE FOR PRAMPKT ROUTINE 0 :RECEIVED BUFFER LOW ADDRESS 0 0 0 0 0 100. 100. 80. :RECEIVED BUFFER HIGH ADDRESS sTEST COUNT PATTERN sTEST DATA sTEST FLAG WORD sTSTBLK POINTER sPRINT ROUTINE TEMP sEXPECTED MESSAGE BUFFER DATA sRECEIVED MESSAGE BUFFER DATA s TEMPORARY STORAGE FOR PRINT | TSV3 = GLOBAL AREAS TSTBLK MACRO M1113 25-MAY-82 08:41 PAGE 17 L 3 = TEST DATA TABLE 222 .SBTTL TSTBLK SEQ 0037 = TEST DATA TABLE 22; sTHIS TABLE CONTAINS TEST DATA USED IN SEVERAL TESTS 293 sIN SEQUENCE THE DATA IS: &N 472 473 474 3 3 3 3 477 478 479 002750 480 002750 481 002752 482 002754 483 002756 484 002760 485 002762 486 002764 487 002766 488 002770 489 002772 490 002774 491 002776 i 2;2 492 003000 493 003002 494 003004 495 003006 496 003010 497 003012 498 003014 499 003016 3020 S01 003022 502 003024 S03 003026 3030 S05 003032 3034 S07 003036 08 003040 S09 003042 510 003044 511 003046 $1§ 003050 513 003052 514 0030 515 3 000000 177777 000001 000002 000004 000010 000020 000040 000100 000200 000400 001000 002000 004000 010000 020000 040000 177776 177775 177773 177767 177737 177677 177577 177377 176777 175777 173777 167777 157777 137777 077777 125252 052525 003056 TSTBLK:: ALL ZEROS ALL ONES WALKING ONES WALKING ZEROS ALTERNATING ONES AND ZEROS WORD WORD .WORD WORD .WORD .WORD .WORD .WORD .WORD WORD .WORD .WORD .WORD WORD .WORD WORD .WORD .WORD .WORD .WORD WORD LWORD .WORD .WORD WORD WORD WORD .WORD LWORD .WORD .WORD WORD .WORD .WORD WORD TBLEND==, O 177777 BITO BIT BIT BIT BIT4 BITS BIT6 BIT7 BITS BIT9 BIT10 BITN Blflg BIT1 BIT14 BITI1S “CBITO “(CBIT1 “(CBIT “(BIT “(CBITS “(BI 79 “(CBIT “(CBITS8 “CBITY “CBIT10 “(CBITN “(BI "g “(CBIT1 “(CBIT14 “CBIT1S 125 Sg 05252 sALL ZEROS sJALL ONES sDATA FOR WALKING ONES sDATA FOR WALKING ZEROS JALTERNATING ONES, ZEROS JALTERNATING ONES, ZERO OPPOSITE FROM ABOVE TSV3 = GLOBAL AREAS MACRO M1113 GLOBAL ENVIRONMENT STORAGE 25-MAY-82 08:41 g;; .SBTTL g;g §21 003056 522 003066 §52 PAGE 18 SEQ 0038 GLOBAL ENVIRONMENT STORAGE $STORAGE FOR DEVICE REGISTERS 000000 000000 100000 000000 000000 000000 DUMMY: o 1ooooo 0,0 0.0,0,0,0,0,0.0 :DUMMY DEVICE REGISTERS... :...FOR MULTI=UNIT CHECKOUT. 525 526 003106 527 000000 DUFLG: : .WORD 0 ggg 003110 000000 NODEV: : JWORD O 5§30 003112 000000 TEMPY : : LWORD 0 :SOME TEMP LOCATIONS. 5§32 003116 5§33 003120 5§34 003122 535 003124 000000 000000 000000 000000 XXCOMM: : FREE: : FRESIZ:: FREEHI: .WORD "WORD JWORD "WORD 0 0 0 0 :XXDP+ COMM BLOCK POINTER. *1ST FREE MEMORY ADDRESS... ‘...AND SIZE C(IN WORDS). ;LAST WORD IN FREE SPACE 5§31 003114 000000 TEMP2: : 5§36 003126 000000 KTFLG: : 537 538 539 003130 000000 540 003132 000000 543 003140 544 003142 000000 000000 546 003146 002000 541 003134 000000 542 003136 000000 545 003144 547 003150 548 003152 549 003154 550 003156 000000 000000 000000 000000 000000 551 003160 5§52 003160 000000 553 003162 554 003164 5§55 003166 556 003170 557 003172 000000 000000 000000 177777 §§$ : WORD JWORD O 0 KTENABLE : : LWORD 0 NXMLO: : NXMH] : : "WORD "WORD 0 0 T3BFLG: : "WORD NXMFLG: : T23A:: 1238:: PST32W: : SIFLAG:: BADDAT:: GDDAT: : LOOPFL: : CTAB: : CTABM: : "WORD :FLAG TO SAY NO DEVICE. xr11 MEM AVAIL FLAG WORD 0 = <24k OR NO KT = - NZ = >24K AND KT. *SET BY TEST ROUTINES TO FLAG >28K UNDER TEST :SET IF WE CAN TEST CLEARED OTHERWISE *NXM LO ADDRESS BITS :NXM HI ADDRESS BITS FOR DAL'S 16~21 "WORD "WORD O 0 :11/23A FLAG :11/238 FLAG "WORD 2000 320 BLOCK ADDRESS FOR 32K START 0 WORD -WORD .WORD "WORD O 0 0 O JWORD 0 "WORD CTABE:: 0 :"DROPPED UNIT* FLAG. B SINHIBITS CODE IN ‘‘CLEAN-UP'. "WORD "WORD "WORD 0 0 0 =1 STEST 38FLAG 0 :ACTUAL DATA JEXPECTED DATA :CONFIGURATION TABLES. *CONFIG WORK. ;END OF MEM TABLE. ;ERROR STATISTICS TABLE (1 WORD PER UNIT), 64 UNITS MAX: 560 561 ; : 0 100000 e = UNIT NOT rssreo UNIT ONLINE, NO ERRORS ggg ; 14XXXX = UNIT DROPPED. ENCOUNTERED XXXX snaons 562 563 564 567 003172 568 003372 569 570 003374 : ; ; 000000 000000 10XXXX 160000 160001 ERTABL : BLKW ERTABE : SKIPT: = = = "WORD .WORD O UNIT ONLINE. ENCOUNTERED XXXX ERRORS UNIT DROPPED, NON-EXISTENT oevxcs REGISTER UNIT DROPPED. NOT IDLE AT STAR 64. 0 :1=SKIP SUBTEST 0=NO' SKIP OF SUBTEST TSV3 = GLOBAL AREAS GLOBAL TEXT MESSAGES MACRO M1113 25-MAY-82 08:41 PAGE 19 SEQ 0039 g;g 14+ 5§74 575 5§76 .SBTTL GLOBAL TEXT MESSAGES : THE GLOBAL TEXT SECTION CONTAINS FORMAT STATEMENTS, : MESSAGES, AND ASCII INFORMATION THAT ARE USED IN : MORE THAN ONE TEST. i : 578 579 580 581 i+ gg% :NAMES OF DEVICES SUPPORTED 584 585 003376 003376 003376 124 123 126 586 DEVTYP LSDVTYP:: LASCIZ -EVEN <TSVOS> /TSV0S/ 588 ggg i+ STEST DESCRIPTION 591 83%282 ol 003404 052 052 052 612 613 614 615 g}g 618 /xxx% TSVOS LOGIC DIAGNOSTIC = REPLACE M7196 IF ERROR #+#s/ :BIT TO ASCII CONVERSION FOR TSSR REGISTER 003536 003541 003545 621 0035 622 0035 623 003545 624 003551 625 003555 626 003561 627 003565 628 003572 629 003577 123 1o§ 12 122 116 116 102 102 123 103 1 103 115 130 102 11 11 122 630 003603 '23252 i+ 619 003476 620 003516 DESCRIPT <#x#+ TSVOS LOGIC DIAGNOSTIC = REPLACE M7196 IF ERROR ##w#> 003577 117 003603 106 X TSSRBIT:: .WORD 000 105 105 122 115 101 124 124 122 1$: 28: 3s: 4$: Ss: 6$: 78: 8$: 9%: LASCIZ .ASCIZ JASCIZ JASCIZ JASCIZ LASCIZ LASCIZ .ASCIZ .ASCIZ sc* 'BIE" *SCE® 'RMR® "NXM* °NBA' 'BITY’ ‘'BITS8' *SSR’ 126 126 126 124 126 11$: 128: 13$: 14$: 158: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ 003607 114 108: .ASCIZ .WORD 1%,2$,3%,4$,5$.68,7%.8% 95.108,11¢,128.13$,148,158,168 °'OFL® 631 003607 632 003614 633 003621 634 003626 635 003633 102 102 102 102 102 102 m 124 638 003646 639 003701 124 124 123 123 1? SFIERR: .ASCIZ °TSSR ERROR AFTER SOFT INIT® 123 SFHERR: .ASCIZ °'TSSR ERROR AFTER BUS RESET® ggg 003640 640 003734 641 003773 642 004014 643 004054 040 045 045 045 111 m 11 111 11 040 101 101 101 116 040 0640 040 168: NXR: NXRX: TSSX: '?3552 .ASCIZ .ASCIZ .ASCII LASCIZ °*BITS® 'BIT4" ‘'BIT3' ‘'BIT2' *BIT1® '8I1T0" / NON-EXISTANT DEVICE REGISTER/ /%A ADDRESS: %06/ /%A TSBA,TSSR EXP'D: X06%A.Z06IN/ /%A TSBA.TSSR REC'D: X06%A. %06/ TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08.41 644 004113 645 0046117 646 0046146 647 004211 648 004215 649 004252 650 004%74 651 004331 652 004403 22‘ 004453 045 040 0 045 0 040 045 040 040 040 116 040 040 116 040 040 101 040 040 040 045 125 111 045 116 111 040 042 042 042 FUSI: USI: NSI: FNOINTR NOINTR: IFAULT: INTX: NOINIT: NSINIT: BRINIT: 655 004523 656 004524 657 004527 000 045 045 116 101 000 040 NUL : ASCIZ NULCR: .ASCIZ EXPGOT: .ASCIZ // /IN/ /%A EXP'D: X06XA, 659 004637 660 004741 661 005007 045 122 040 127 124 124 106 101 101 040 040 115 103 111 123 123 126 DUAD12: .ASCIZ PKTRAM: SCME: .ASCIZ /XA REG(W) WRITTEN TO: Z06XA REG(R) READ; EXP°'D: %06%A, REC'D: %06/ .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.' GLOBAL TEXT MESSAGES 658 004563 662 005052 663 005107 00520 665 005274 005 667 005454 668 005550 ggg 005641 671 672 045 105 045 045 045 116 122 123 123 101 122 116 116 116 045 122 045 045 045 LASCI! LASCIZ .ASCIZ .ASCIZ .,ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ EXPGT2: .ASCIZ WRTMSG: WRTERR: RDERR: SCHERR: RETERR: NOMEM: MB186: MB189: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCIZ ,23&]‘1 PAGE 19-1 SEQ 0040 /INZA/ / UNEXPECTED INTERRUPT/ / INTERRUPT EXPECTED, NOT RECEIVED/ JASCII /INXA/ / NO INTERRUPT WAS GENERATED/ / INTERRUPT FAULT/ /!A. CPU PC: Z06XA TSBA: %06/ / .BUS-INIT DIDN'T INITIALIZE CONTROLLER/ 7/ %OFT-INItu DIDN'T INITIALIZE THE DPU/ / ‘'BUS-RESET'' DIDN'T INITIALIZE THE DPU/ REC'D: %06/ /INZA EXP'D: !06fA. X06INXA REC'D: X0XA, 206/ ( i ‘'ERROR IN SUBTEST = WRITE DATA RETRY FIVE TIMES FAILED® °XINXA tetex NO NXM ADDRESS==CANNOT TEST NXM TIMEOUT. seessaiN’ ‘INXA tevansnnanannnnan 11/23A SYSTEM tesnsnnnnnasannasdN’ "INZA terecnnnannnnnnnn 11/238 SYSTEM tannannennnannensIN® TSV3 = GLOBAL AREAS MACRO M1113 GLOBAL ERROR REPORT SECTION 675 676 677 678 679 680 006 698 006016 PAGE 20 SEQ 0041 .SBTTL GLOBAL ERROR REPORT SECTION Ld THE GLOBAL ERROR REPORT SECTION CONTAINS THE PRINTB AND PRINTX CALLS THAT ARE USED IN MORE THAN ONE TEST. : ASCII TEXT STRINGS ARE FOUND IN THE GLOBAL TEXT SECTION. & 683 005732 00573 684 00573% 005732 005736 005742 005746 005750 005752 685 005756 686 005762 005762 005762 687 688 689 690 691 €92 693 005764 694 005766 695 005770 696 005772 697 005776 005776 006002 25-MAY-82 08:41 NXRERR: : 013746 012746 012746 010600 104415 0627 004737 003110 003773 000002 NXRERR sNON-EXISTANT DEVICE REGISTER. :RINTX #NXRX ,NODEV NODEV,=(SP) #NXRX ,=(SP) sNODEV = NEXM ADDRESS. #2,~(SP) SP,RO CSPNTX #6,SP 000006 005764 L10002: 104423 BGNMSG ENDMSG TRAP PC,EXTEND ¢ PRINT EXTENSION IF REQUIRED. CSMSG : THIS ROUTINE APPENDS A UNIQUE EXTENSION (it REQUIRED) : 005727 000000 001402 004777 012746 012746 010600 000207 177770 004524 000701 000004 TO ANY OF THE ABOVE ERROR SIGNATURES. EXTEND: TST EXTA: 0 BEQ JSR 1$: PRINTX MOV MoV Mov TRAP ADD RTS (PC)+ 1$ PC,IEXTA #NULCR #NULCR,=(SP) #1,-(SP) SP,RO CSPNTX #6,SP PC : 0 = NO EXTENSION. ¢ APPEND EXTENSION TEXT. ¢ PRINT A BLANK LINE TSV3 = GLOBAL AREAS MACRO M1113 PRITSSR = PRINT TSSR CONTENTS 25-MAY-82 08:41 PAGE 22 D 4 SEQ 0042 ;81 .SBTTL 70 PRITSSR = PRINT TSSR CONTENTS I 705 706 :ROUTINE TO DISPLAY THE CONTENTS, AND BIT DEFINITIONS, OF ;8; :BY A MESSAGE PRINTING ROUTINE ;gg +INPUTS : m : ;}z :SUBORDINATE ROUTINES: ;}z : 717 718 719 006020 720 006020 ;= ;THE TSSR REGISTER, THIS ROUTINE IS NORMALLY CALLED ONLY R1 CHKAMB PRITSSR: SAVREG CONTENTS OF TSSR CHECK FOR AMBIGUOUS CONTENTS 721 006024 010104 MOV R1,Ré 006026 006030 010446 012746 MOV MOV R4 ,=(SP) #TSSRFOR,=(SP) 006040 010600 MOV SP,RO 722 006026 006034 006042 006044 723 006050 724 006052 725 006056 726 006060 006060 006064 006070 006072 006074 012746 PRINTB 006411 000002 104414 062706 000006 004737 016034 010400 103410 012746 012746 010600 104415 062706 001476 730 006110 731 006114 012702 012701 002630 003476 732 006120 733 006122 734 006126 735 006126 736 006130 737 006132 738 0061364 739 006136 7640 006140 7641 006146 71.; 006150 743 006152 744 006154 006154 006160 005703 001413 000241 103 103006 MOV JSR BCS PRINTX MOV MOV MOV 000004 010403 042703 001434 TRAP ADD 006631 000001 727 006100 728 006102 729 006106 MOV 58: 108: 112022 112762 005721 118: 000054 000763 105042 012746 012746 177777 138: 158: 002630 006602 :SAVE THE TSSR CONTENTS :PRINT THE CONTENTS OF TSSR #2,-(SP) CSPNTB #6,SP R4 .RO PC. CHKAMB 5$ #AMBTSSR #AMBTSSR, = (SP) #,-(SP) SP,RO :GET TSSR BACK FOR CHKAMB :ARE CONTENTS AMBIGUOUS ? *BRANCH IF NOT :SHOW CONTENTS ARE AMBIGUOUS CSPNTX #6,SP MOV BIC R4.R3 :CONTENTS OF TSSR #HIADDR!FATERR! TERCLS,R3 ;CLEAR ALL MULTIPLE BIT FIELDS MOV MOV #TMPBFR,R2 #TSSRBIT,R1 BEQ 011100 00137 TRAP ADD #TSSRFOR,R& :SAVE GENERAL REGISTERS 208 TST BEQ cLC ROL BCC R3 138 MOVB (RO)+,{R2)+ MOV BNE R3 158 (R1) RO 118 :NO BITS ARE SET ;TEMPORARY ASCII BUFFER ;ASCII EQUIVALENT OF BITS ;REMAINING BITS TO CONVERT ;BRANCH WHEN ALL ARE DONE :CLEAR CARRY FOR SHIFT ;SHIFT NEXT BIT TO CARRY ;BRANCH IF BIT NOT SET :POINTER TO BIT DEFINITION :MOVE ASCIZ TO BUFFER :MOVE ALL BITS MOVB #°,,-1(R2) :INSERT A COMMA TO TERMINATE BR 108 :GET THE REMAINING BITS TST CLRB PRINTX MOV MOV (R1)+ ;POINT TO NEXT DESCRIPTION ~=(R2) :TERMINATE THE LINE #TSSDEF ,#TMPBFR :PRINT THE BIT DEFINITIONS #TMPBFR.=(SP) #TSSDEF .=(SP) TSV3 = GLOBAL AREAS MACRO M1113 PRITSSR = PRINT TSSR CONTENTS 25-MAY-82 08:41 000002 MoV MOV 000006 PAGE 22-1 SEQ 0043 lZ =(SP) P,RO CSPNTX #6,SP 208: 177761 R4 ,R3 #~CTERCLS,R3 TCOCOD(R3) ,R3 #TCOASC,R3’ 006672 sGET THE TSSR CONTENTS sCLEAR ALL BUT TERMINATION sGET THE TERMINATION CODE MEANING sPRINT THE TcRMINATION CODE 006472 000002 000006 016303 010346 177717 l‘gFATERR.R3 007232 R3 R3 R3 TSFCOD(R3) ,R3 orrCAsc R3’ 3,-(SP) 006533 000002 000006 176377 n~£n1Aooa R4 25$: crexasc R4 4,~(SP) créxAsc -(SP) 006431 000002 sTSSR_CONTENTS AGAIN sCLEAR ALL BUT FATAL TERMINATION sDON'T PRINT IF ZERO sALINE TERMINATION CODE FOR INDEX sGET THE FATAL TERMINATION CODE sPRINT THE FATAL TERMINATION CODE sCLEAR ALL BUT EXTENDED ADDRESS sDON'T PRINT IF ZERO sPRINT THE EXTENDED ADDRESS BITS #2,-(SP) SP_RO CSPNTX 000006 002176 #6,SP 30s: sgarsuLR2 sPRINT MEAASGE BUFFER ADDRESS sPRINT PROPER MESSAGE 000001 000004 RRRRK|R\R TCOoCoD: b e b d b e — b wvivawnawvinaanawbn [ Y« Yo Yo Xe Yo No N 006763 d b 006735 b b b : — 786 787 006631 788 789 006672 sRETURN TO CALLER JASCIZ +EVEN -WORD "INIA tee2oREPLACE M7196%wnnn’ LASCIZ ‘INXA TSSR = %06° LASCIZ '!N!A Extended Address Bits = 206 LASCIZ ‘2INZA Termination Class Code = XT° LASCIZ ‘'INZA Fatal Termination Class Code = XT' LASCIZ °"INXZA TSSR Bits Set: XT° +ASCIZ °'INXA TSSR Contents Are Ambiguous' 1$,28,38,48,58,68,78,88 . ' TSV3 = GLOBAL AREAS MACRO M1113 PRITSSR = PRINT TSSR CONTENTS 25-MAY-B2 08:41 790 006712 791 006735 792 006763 793 007005 794 007025 795 007107 796 007156 797 007202 116 124 124 106 122 122 125 106 157 145 141 165 145 145 156 141 162 162 160 156 143 143 162 164 799 800 007232 007242 007276 007307 802 007276 803 007307 ggg 007353 122 102 122 145 165 145 163 163 163 801 007242 111 156 164 PAGE 22-2 18: 2%: 3$: 4$: 5§$: 6$: 7% 8% .ASCIZ LASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .eeg‘l ‘'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' TSFCOD: .WORD 1$,2%.3$8.4$ .ASCIZ .ASCIZ .eegfil 'Reserved' . 'Bus Interface or Sanity Check Error' 'Reserved’ 18: 28: 3%: 4$: .ASCIZ ‘'Internal Diagnostic Failure® SEQ 0044 TSV3 = GLOBAL AREAS PRIPKT MACRO M1113 25-MAY-82 08:41 = PRINT THE ADDRESS/CONTENTS OF COMMAND PACKET 807 808 b3 .SBTTL PAGE 23 PRIPKT SEQ 0045 = PRINT THE ADDRESS/CONTENTS OF COMMAND PACKET 4 INPUT: RO R3 Ré4 NUMBER OF WORDS IN PACKET HIGH ORDER COMMAND PACKET ADDRESS ADDRESS OF COMMAND PACKET NOTE: R3 IS IGNOCRED IF THE KTENABLE FLAG IS CLEAR. 7 e %0 8090899, %0, sTHIS ROUTINE PRINTS THE ADDRESS AND CONTENTS OF A COMMAND PACKET. IHIS ROUTINE IS NORMALLY ONLY CALLED FROM A PRINT ROUTINE. mgawmaaa - OV ~NOWVS PRIPKT:: RO,RS KTENABLE 108 003130 826 007376 827 007400 828 007402 829 007404 830 007406 831 007410 83¢ 887412 R3 R3.R1 R4 RO RO 108: R1 cpxero R1,Ré R4, =(SP) R1.=(SP) 007550 000003 #3,-(SP) SP.RO CSPNTB #10,SP R3,R0 15%: 208 R&4,R1 017306 PC.SETMAP ng.n4 R (R4)+,R2 #PKTFRM,R1,R2 208: 012402 010246 R2,=(SP) R1.=(SP) 007512 000003 :SETUP PARG6 MAPPING FOR 18 BIT ADDRESS sGET_RETURNED PAR6 ADDRESS BIAS :SAVE WORD NUMBER :GET PACKET CONTENTS :PRINT THE DATA . 3,=(SP) BLT RTS —— sGET HIGH ORDER ADDRESS :BR_IF NOT ABOVE 28K. :GET LOW ORDER ADDRESS :errnn -(SP) 000010 oo sSAVE THE REGISTERS sSAVE NO. OF WORDS IN PACKET sABOVE 28K UNDER TEST? sBR_IF YES sSET HIGH ORDER ADDRESS TO 0 :COPY HIGH ORDER ADDRESS sGET LOWER ADDRESS sSHIFT BIT 15 INTO C BIT sAND INTO HIGH ORDER. ¢PRINT PACKET ADDRESS #PKTADD , = (SP) 000010 — l 045 PKTFRM: PKTADD: +ASCIZ .ASCIZ -EVEN sNEXT WORD NUMBER sDONE ALL PACKET WORDS? sLOOP TILL ALL DONE ETURN *INZA Packet Word #XD1ZA = 206° 'INZA Packet Address = X01205° TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 PRIBXOR = PRINT EXPD, RECV AND XOR BYTE ggl .SBTTL PAGE 24 SEQ 0046 PRIBXOR = PRINT EXPD, RECV AND XOR BYTE 855 ggg mur EXPECTED DATA, RECEIVED DATA, AND XOR OF THE DATA BYTE :THIS ROUTINE IS NORMALLY CALLED ONLY FOR PRINT ROUTINES. 858 859 .mpurs : w : 860 : 86 :0UTPUT 867 - §§, ; 868 869 007605 870 007606 871 007612 012700 875 007632 876 007634 007636 007640 007642 007644 007650 00765¢ 874 007630 877 007636 007656 007660 RO XOR OF EXPECTED/RECEIVED DATA EXPECTED DATA nz R3 :SAVE THE REGISTERS *EXPECTED DATA XOR MOV R1.R3 #4C<377>,R0 :FORM THE EXCLUSIVE OR *BYTE MASK 040002 040003 BIC BIC RO.R2 RO_R3 SAVE LOW BYTE EXPD E LOW BYTE XOR 010346 010146 010246 012746 012746 010600 MOV MOV MOV MOV MOV MOV a3. (SP) R1.=(SP) R2.=(SP) #XORBFOR, = (SP) #4,~(SP) P.RO MOV R3,R0 :RO HAS XOR ON RETURN LASCIZ "INXA EXPD: %03%A RECV: X03%A XOR: %03° 040001 104414 062706 878 007664 010300 gg} 007670 045 g;g 007666 RECEIVED DATA R2 PRIBXOR:: SAVREG MOV 010203 872 007614 873 007624 R1 177400 BIC RO,R1 *SAVE LOW BYTE RECV PRINTB cxoneron R2,R1 n3 mm THE MESSAGE 007670 000004 000012 000207 TRAP ADD RTS 116 045 XORBFOR: e CSPNTB #12,SP PC *RETURN TO CALLER TSV3 = GLOBAL AREAS PRIXOR MACRO M1113 = PRINT EXPD, RECV AND XOR 25-MAY-82 08:41 885 .SBTTL PAGE 25 PRIXOR SEQ 0047 = PRINT EXPD, RECV AND XOR '0 PRINT EXPECTED DATA, RECEIVED DATA, AND XOR OF THE TWO THIS ROUTINE IS NORMALLY CALLED ONLY FOR PRINT ROUTINES. .INPUTS R1 R2 RECEIVED DATA EXPECTED DATA 1OUTPUT: XOR OF EXPECTED/RECEIVED DATA PRIXOR:: 905 007742 010203 007754 010346 R2,R3 R1.R3 :SAVE THE REGISTERS :EXPECTED DATA :FORM THE EXCLUSIVE OR :gon;ga,R2,R1,R3’ ;PRINT THE MESSAGE R1.=(SP) R2.=(SP) 010006 000004 cxonroa -(SP) 4,=(SP) 000012 R3.RO PC 116 045 XORFOR: ;RO HAS XOR ON RETURN sRETURN TO CALLER *INZA EXPD: X06XA RECV: XZ06XA XOR: X06' TSV3 = GLOBAL AREAS PRIEQU MACRO M1113 25-MAY-82 08:41 = PRINT BIT NUMBERS AS ASCII EQUIVALENT g}g .SBTTL PAGE 26 PRIEQU SEQ 0048 = PRINT BIT NUMBERS AS ASCII EQUIVALENT 918 *ROUTINE TO CONVERT BIT VALUES TO ASCII AND PRINT THE STRING g%; * INPUTS 923 ; 926 ‘- 358 :THIS ROUTINE IS NORMALLY CALLED FROM A PRINT ROUTINE ggg 927 928 010054 929 010054 3§? 010060 : PRIEQU: 000207 941 PRIRAM 944 945 : = 943 : PRIRAM: 010446 012746 012746 010600 104414 062706 000207 045 010112 000002 000006 116 R4 RAM ADDRESS SAVREG PRINTB MOV #RAMFOR,R& R4, =(SP) MOV MOV MOV TRAP ADD RTS 045 RAMFOR: .ASCIZ “EVEN ggg , .SBTTL #RAMFOR ,~(SP) #2,~(SP} SP.RO CSPNTB #6,SP PC ;SAVE R1-RS UNTIL NEXT RETURN *PRINT RAM ADDRESS IN ERROR :RETURN "INYA CONTROLLER RAM ADDRESS = %06° PRIADD = PRINT MEMORY ERROR ADDRESS ; 958 *PRINT MEMORY ADDRESS 961 9, : IMPLICIT INPUTS ; gzg = PRINT RAM ADDRESS $ INPUTS: : 957 .SBTTL :SAVE THE REGISTERS *RETURN TO CALLER :THIS ROUTINE IS NORMALLY CALLED ONLY FROM PRINT ROUTINES. 942 95 PC : :PRINT CONTROLLER RAM ADDRESS. 323 951 010112 9s§ SAVREG RTS TABLE OF POINTERS TO ASCII EQUIVALENT ;0 937 938 010070 010074 010100 010102 010104 323 010110 OCTAL VALUE TO CONVERT R1 932 933 934 ggz 96 010062 947 010062 948 010066 010066 RO :THIS ROUTINE IS NORMALLY CALLED ONLY FROM PRINT ROUTINES. : ; ERRHI ERRLO = HIGH ORDER ADDRESS - LOW ORDER ADDRESS TSV3 = GLOBAL AREAS PRIADD MACRO M1113 = PRINT MEMORY ERROR ADDRESS 25-MAY-82 08:41 965 966 SEQ 0049 : - 967 010154 968 010154 PRIADD: SAVREG 969 010160 013700 002234 970 010164 PAGE 26~1 013701 MOV ERRHI,RO MOV ROL ROL PRINTB MOV R1,R2 R1 RO #FRIAO, no R2 R2,=(SP) 002236 MOV 010200 010046 010202 012746 010224 010206 012746 000003 MOV MOV MOV RO.=(SP) #PRIAD,~(SP) #3,-(SP) RTS PC 971 010170 972 010172 973 010174 974 010176 010176 010102 006101 006100 010212 010214 010216 010600 104414 062706 000010 g;; 010224 045 116 010246 3;2 010222 000207 g’g} MOV TRAP ADD 045 PRIAO: ;0 ERRLO.R1 SP.RO CSPNTB #10,SP *GET HIGH ADDRESSS :GET LOW ADDRESS +COPY LOW ADDRESS *SHIFT BIT 15 TO C BIT *SHIFT INTO HIGH ORDER :PRINT MEMORY ADDRESS IN ERROR ;RETURN .e\s'gz *INYA MEMORY ERROR ADDRESS = %01%05° .SBTTL PRITADD = PRINT MEMORY TEST ADDRESS 983 984 : JPRINT MEMORY ADDRESS 33; : IMPLICIT INPUTS 989 1 ggg :SAVE R1=RS UNTIL NEXT RETURN sTHIS ROUTINE IS NORMALLY CALLED ONLY FROM PRINT ROUTINES. m ERRHI : 992 994 010270 995 010274 013702 002234 996 010300 013701 002236 997 998 999 010304 010 010312 010316 010 010322 1001 010326 010326 010330 010336 010340 010342 010344 1002 010350 = LOW ORDER ADDRESS - 993 010270 1000 010304 ERRLO = HIGH ORDER ADDRESS PRITADD: SAVREG MOV ERRHI ,R2 MOV ERRLO.R1 :MOV ROL SROL R1,R2 R1 RO 010146 012746 010352 012746 000002 010600 MOV MOV MOV MOV R1,=(SP) #PRITO,~(SP) #2,-(SP) SP.RO 062706 000006 ADD #6,SP 010246 012746 010415 012746 000002 010600 MOV MOV MOV MOV R2,=(SP) #PRIT1,=(SP) #2,-(SP) SP.RO 062706 000006 ADD #6,5P 104414 104414 0060207 PRINTB TRAP PRINTB TRAP RTS #PRITO,R1 :SAVE R1=RS UNTIL NEXT RETURN :GET HIGH ADDRESSS :GET LOW ADDRESS :COPY LOW ADDRESS *SHIFT BIT 15 TO C 8IT *SHIFT INTO MIGH ORDER :PRINT MEMORY ADDRESS LOW IN ERROR CSPNTB #PRIT1,R2 :PRINT MEMORY ADDRESS HIGH IN ERROR (SPNTB PC :RETURN TSV3 = GLOBAL AREAS MACRO M1113 PRITADD = PRINT MEMORY TEST ADDRESS 045 1" g n 25-MAY-82 08:41 045 045 PRITO: PRITI: +ASCIZ .eegfil PAGE 26-2 L INYA MEMORY TEST ADDRESS LOW = %06° "/N%A MEMORY TEST ADDRESS HIGH = %06' SEQ@ 0050 TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 PAGE 27 = SPACE RECORDS (FORWARD AND REVERSE) COMMAND SPACE }8}5 .SBTTL = SPACE RECORDS (FORWARD AND REVERSE) COMMAND 1013 1014 1015 ¢ ; *ROUTINE TO ISSUE A SPACE RECORDS }8}3 :INPUT: 1020 1021 1022 1023 }85'3 : : ; : : RS }859 : REQUIRES A WRITE CHARACTERISTICS DONE PREVIOUSLY }853 $OUTPUT: 1030 1031 ; ; CARRY SET = SPACE RECORDS COMMAND OK CLR = SPACE RECORDS FAILED }gg : RO THE CONTENTS OF R4 IS MOVED TO RO 1036 3 }8}‘7’ b SPACE SEQ 0051 *COMMAND (FORWARD OR REVERSE) }8% NUMBER OF RECORDS TO BE SPACED OVER BIT15 CONTROLS DIRECTION BIT1S = 0 IS FORWARD BIT1S = 1 IS REVERSE FIRST DEVICE UNIBUS ADDRESS JIMPLICIT OUTPUT: 1039 : 1040 1041 TAPE HAS BEEN MOVED : *SIDE EFFECTS: 1042 1043 : : 1044 - 1045 1046 010462 1047 010462 1048 010466 012737 1050 010502 005703 1049 010474 SPACE:: 012737 000764 140010 1051 010504 1os§ 010506 100403 010337 010642 1054 010514 042703 100000 1056 010526 052737 1053 R3 010512 000407 1055 010520 010337 010642 1057 010532 010640 012704 000400 1058 010536 010465 000000 1059 010542 1060 010546 004737 1061 010550 103420 010554 000000 0105 010564 ooooog 005367 016240 010650 010640 108: 158: #500. , SDELAY #140010,80$ SSET UP commo sme F ORWARD BM] MOV as 90$ an. IF REVERSE INDICATED :LOAD UP NUMBER OF RECORDS TO SPACE BIC oams R3 BIS mn aos BR MOV MOV MOV JSR 3 10§ R3,908" #80$ RG, r§oms> PC.WAITF BCS 20§ 010550 012727 000250 MOV #250,(PC)+ 010556 MOV 010570 013727 002116 001375 177772 : SAVE me seuem. REGISTERS *SET UP D MOV ST 58: 010640 SAVREG MOV DELAY 250 WORD 0 .WORD DEC -6(PC) BNE 5sou.(mo .4 :CHECK FOR DIRECTION :GO DO COMMAND ch DIRECTION BIT D UP NUMBER OF RECORDS TO SPACE ser REVERSE BIT IN COMMAND PACKET *SET UP R4 WITH PACKET ADDRESS *SEND OUT COMMAND um rou SSR F SSR 1S SET AND OK :DELAY Aaouf .25 SECONDS TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:(1 PAGE 27-1 = SPACE RECORDS (FORWARD AND REVERSE) COMMAND SPACE 010572 010576 1oe§ 010600 1063 010604 1064 010606 1065 010610 1066 010614 005367 001367 005337 001356 000411 016501 012702 1069 010626 1070 010626 1071 010630 1072 010632 1073 010634 1074 010634 1075 010636 000402 000261 000401 000241 1067 010620 1068 010622 020201 001401 010400 000207 177756 010650 000002 000200 20$: 258: 408: 608: 708: DEC BNE DEC BNE BR MOV MOV CMP BEQ BR SEC BR CLC MOV RTS =22(PC) =20 SDELAY 158 608 TSSR(RS) ,R1 #SSR,R2 R2,R1 408 608 SEQ 0052 :BUMP DELAY COUNTER DOWN :BR, IF MORE DELAY :BR IF TROUBLE CARRY = CLEAR *READ TSSR *SET UP EXPECTED *ARE THEY OK :BR, IF EQUAL = OK 70$ :TROUBLE EXIT *SET CARRY NO TROUBLE SEXIT *CARRY CLEAR = ERROR R4 ,RO PC :PASS PACKET ADDRESS *RETURN TSV3 = GLOBAL AREAS SPACE MACRO M1113 25-MAY-82 08:41 = SPACE RECORDS (FORWARD AND REVERSE) COMMAND PAGE 28 SEQ 0053 EPAcxer FOR SPACE COMMAND % COMMAND uoao 000000 808: 000000 908 000000 SDELAY: NUHBER OF RECORDS TO BE SPACED OVER WORD - WORD -WORD .WORD .EVEN 0 ¢DELAY COUNTER TSV3 = GLOBAL AREAS WRTCHR MACRO M1113 25-MAY-82 08:41 = WRITE CHARACTERISTICS COMMAND SEQ 0054 }332 .SBTTL 1097 1098 1099 PAGE 29 WRTCHR = WRITE CHARACTERISTICS COMMAND i+ ; sROUTINE TO ISSUE A WRITE CHARACTERISTICS }}8? ;COMMAND SO THAT OTHER COMMANDS WILL BE ACCEPTED 1102 1103 1104 1105 : INPUT: : : R4 : RS }}89 H 1108 ADDRESS OF PACKET FROM TEST FIRST DEVICE UNIBUS ADDRESS REQUIRES A CALL TO SOFINIT BE DONE PREVIOUSLY SOUTPUT: 1109 1110 1111 : : : }}}% RO CARRY H TSSR CONTENTS SET = WRITE CHARACTERISTICS COMMAND OK CLR = WRITE CHARACTERISTICS FAILED }}}g JIMPLICIT OUTPUT: 1116 : 1117 1118 MESSAGE BUFFER AND OTHER BUFFERS ALL SET UP : : }}53 SOF TWARE SWITCHES SET AS FOLLOWS: EXTFEA = EXTENDED FEATURES PRESENT : 1121 1122 1123 1124 1125 1126 1127 010652 1128 010652 1129 010656 1130 010662 1131 010666 1132 010672 1133 010676 1134 010700 1135 010702 1136 010706 1137 010712 1138 010716 1139 010720 1140 010724 1141 010726 114; 010730 1143 010732 1144 010736 1145 010740 1149 010746 }}23 8}3522 011403 032763 oo1ao; 005237 1149 010754 1150 010762 1151 010764 032763 00140 005237 BENBSW = BUFFER ENABLE SWITCH ON OR OFF 3 *SIDE EFFECTS: 3 ; o WRTCHR: : 005037 005037 010465 004737 103401 000435 016501 012702 032701 001402 052702 020201 001401 000421 062704 002226 002224 000000 016326 108: 000002 000200 000100 20$: 000100 258: 000010 000200 408: 000012 002224 000100 002226 - 000012 SAVREG CLR CLR MOV JSR BCS BR MOV MOV BIT BEQ BIS (MP BEQ BR ADD MOV BIT BEQ INC (R&) ,R3 #X2.EXTF ,XST2(R3) 45 EXTFEA :ARC THEY OK :BR, IF EQUAL = OK :TROUBLE EXIT , sPOINT TO WRT CHARA DATA PACKET :GET ADDRESS OF MESSAGE BUFFER ;EXTENDED FEATURES BIT SET? :BR IF NO :SET EXTENDED FEATURES SW SWITCH BIT BEQ INC #X2.BUFE,XST2(R3) 5C$ BENBSW :BUFFER ENABLE SWITCH SET :BR, IF SWITCH NOT SET :SET SOFTWARE SWITCH FOR ENABLED BENBSW EXTFEA R4, TSDB(RS) PC.CHKTSSR 208 608 TSSR(RS) ,R1 #SSR,R2 #OFL .R1 258 #OFL ,R2 R2,R1 408 ;SAVE THE GENERAL REGISTERS ;CLEAR BUFFER ENABLE SWITCH ;CLEAR EXTENDED FEATURES SW SWITCH :SEND OUT COMMAND *WAIT FOR SSR :BR, IF SSR IS SET AND OK :BR IF TROUBLE CARRY = CLEAR *READ TSSR :SET UP EXPECTED :WAS OFF LINE SET IN TSSR :BR, IF NO OFL SET :MAKE THEM LOOK ALIKE 608 #8. .R4 TSV3 - GLOBAL AREAS WRTCHR MACRO M1113 25-MAY-82 0 8:41 = WRITE CHARACTERISTICS COMMAND 115% 010770 1153 010770 1154 010772 1155 010774 1156 010776 1157 011002 1158 1159 000261 000401 000241 016500 000207 508: 000002 608: 708: SEC BR CLC MOV RTS PAGE 29-1 708 TSSR(RS) ,RO PC SEQ 0055 sSET _CARRY NO TROUBLE (EXIT s CARRY CLEAR = ERROR :RETURN TSSR CONTENTS :RETURN TSV3 - GLOBAL AREAS REWIND 25<MAY-82 08:41 (REWIND) COMMAND py p— MACRO M1113 .SBTTL D ) D ) e d —_ ©0 00 0o Co 00 00000 00~~~ <~ /W NON RN o R RN 00000000 28 RN 30R 09,0000 AR AR00 002B IIIFNNANIIZZIITIRAL =~ POSITION TAPE PAGE 30 REWIND SEQ 0056 = POSITION TAPE (REWIND) COMMAND 4 :THIS ROUTINE WILL REWIND THE SELECTED TAPE. d e CAUTION: THE ROUTINE DOES NOT WAIT FOR BOT TO ARRIVE. ALSO THE CALLER MUST CHECK FOR ) D D e SSR TO SET IN THE TSSR ) D CALLING SEQUENCE: ) D D D D D DO A SOFT INIT DO A WRITE CHARACTERISTICS JSR PC,REWIND INPUT: FIRST DEVICE UNIBUS ADDRESS RO THE CONTENTS OF R4 IS PASSED TO RO d cd ) b ) ) ) ) b ) D D - D RS OUTPUT 011004 011004 011010 — 012704 011100 004737 016240 011014 011020 010465 012703 011030 103417 011024 011032 011032 011036 011040 011044 011046 011052 011056 011060 1197 011062 1198 011064 1199 011066 1200 011070 1201 011072 1202 1203 1205 1207 011100 1208 011100 1209 011102 1519 EWIND:: 012727 000000 013727 000000 005367 061375 005367 001367 005303 001357 000241 010400 000207 ~ 011100 102010 000000 000550 108: 000372 002116 177772 177756 208: RWPACK: SAVREG MOV #RWPACK, R4 :SAVE R1-RS UNTIL WEXT RETURN *GET PACKET ADDRESS MOV MOV R4 rsoe(as> #360. .R :SEND PACKET ADDRESS TO EXECUTE :ENOUGH TIME FOR 2400° REEL TO REWIND BCS 20§ :LEAVE WHEN SSR IS SET JSR DELAY MOV WORD MOV WORD DEC BNE DEC BNE DEC BNE cLC MOV RTS PC UAITF 250. #250.,(PC)+ 0 LSDLY, (PC)+ O -6(PC) .=22(PC) =20 R3 108 R4 RO PC *WAIT FOR SSR TO SET :WAIT FOR .25 SECONDS :BUMP COUNTER DOWN *KEEP GOING *CLEAR CARRY TO SET ERROR :PASS THE PACKET ADDRESS *RETURN .=<.+10>8177770 .WORD WORD 102010 0 ;POSTION COMMAND (REWIND) *NOT USED TSV3 = GLOBAL AREAS REWIND 1212 1213 1214 <~ POSITION TAPE MACRO M1113 25-MAY-82 08:41 (REWIND) COMMAND PAGE 30-1 ~ SEQ 0057 TSV3 = GLOBAL AREAS CKRAM PAGE 31 (KRAM SEQ 0058 = COMPARE RAM TO 1/0 PACKET :0 :ROUTINE TO READ THE FIRST 8 BYTES FROM RAM sMEMORY AND COMPARE THIS DATA TO A COMMAND PACKET. :INPUT: R4 ADDRESS OF THE COMMAND PACKET CARRY SET = RAM MATCHES PACKET CLR = RAM DOES NOT MATCH PACKET RS FIRST DEVICE UNIBUS ADDRESS OUTPUT: IMPLICIT OUTPUT: THE TABLE RAMDATA IS FILLED WITH THE DATA HELD IN RAM, RAMSIZ IS SET TO 8. FOR PRAMPKT ROUTINE SIDE EFFECTS: 016326 00000 016326 000000 016326 000000 o = YNNI WN - Ny 002240 000201 000000 108: 208: 000210 000207 SAVREG MOV MOV :CLEAR THE ERROR FLAG MOVB JSR #0.TSDB(RS) PC.CHKTSSR :SET MAINTENANCE MODE :WAIT FOR SSR TO SET JSR MOVB CMPB PC.CHKTSSR TSBA(RS),(R}) (R1)+,(R4)+ MOV *WAIT FOR SSR *SEL.ECT NEXT RAM ADDRESS BEQ INC INC 208 R3 R2 *BRANCH IF OK :SET ERROR FLAG :ADDRESS OF NEXT RAM LOCATION BLE 10§ CMP cLe 002300 PC.,CHKTSSR R2.TSDB(RS) BEQ 000010 :SAVE THE GENERAL REGISTERS :ADDRESS TO SAVE THE RAM DATA :BYTE ADDRESS OF FIRS: RAM DATA R3 ST 308: 508: #RAMDATA,R1 #RMPKTBEG, R2 CLR JSR ggss ~N - —-—afOW -y NN = 8 - - - — o N 8° -\ WO 2385238238 8 VIV = N, ON N ggee o wwhon B NN S=NNNININN WO~ ERE33 - 53] (=1=] ON =N WO W833 e e o e wnd e e b wd b e e PONININ) b ad b cd b b o : CKRAM: purd b b b cmd =D b b D d ed d b b b b d b d b d i o d b wd b ) mch b d e D md o b e i D PSROSHNNIRRERRERSHRNS SRR THE SUBSYSTEM IS LEFT IN MAINTENANCE MODE b nh — v W o 25-MAY-82 08:41 «SBTTL OO0 0O0O0O0O0O0O0O0O0O0O0O0O0OOOODOO0O0 VIV AVIVVES S S BB BN W PNININ) = b b s S&I& FERSE 0 QNOM&MN-‘OO“NOM&WN-‘OO& LEGR WIWWWNNNONNINN WN = O VROV WN = O V00O b b oD ) nd b D md md D d o b e e b D b D = b D b d D b o e ) b D b D ) =8 b 2- e D e i e i i e NININI NN N NN N NN NN N NN NN N NN N AN NN RN NN NN S LS AN S SIS TS TS LS LS ST ST N N T ST NTN h b b e md NN MACRO M1113 = COMPARE RAM TO 1/0 PACKET BR SEC MoV RTS R2, #RMPKTEND R3 308 508 #8. ,RAMSIZ PC :WAIT FOR SSR TO SET *READ THE RAM DATA *COMPARE TO EXPECTED :REACHED END YET ? :BRANCH TiLL ALL READ :WAS AN ERROR FOUND ? *BRANCH IF NOT :CLEAR CARRY TO SHOW ERROR *AND EXIT :SHOW GOOD COMPARE :SETUP RAMSIZ FOR PRAMPKT ROUTINE *RETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CKRAM2 =~ COMPARE RAM TO 1/0 CHARACTERTSTICS DATA 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 :MEMORY AND COMPARE THIS DATA TO A CHARACTERISTICS DATA BLOCK. DATA HELD IN RAM. RAMSIZ 1S SET TO 8. OR 10. FOR PRAMPKT ROUTINE :SIDE EFFECTS: 3 THE SUBSYSTEM IS LEFT IN MAINTENANCE MODE 3 : o= CKRAM?:: 012701 012702 005003 004737 112765 904737 010265 004737 116511 122124 001401 005203 005202 012737 005737 001407 012737 020227 000010 002224 002300 000012 000200 002300 1320 011324 1321 011326 000403 020227 000176 1323 011334 1324 011336 1325 011340 1326 011342 1327 011344 005703 001402 000241 000401 00026 1322 011332 THE TABLE RAMDATA IS FILLED WITH THE : : : : 1293 1294 1295 1296 1297 1298 1319 011322 = COMPARE RAM TO I1/0 CHARACTERISTICS DATA : s INPUT: : : R4 ADDRESS OF THE CHARACTERISTICS DATA 3 31 FIRST DEVICE UNIBUS ADDRESS : :OUTPUT: : : CARRY SET = RAM MATCHES PACKET CLR = RAM DOES NOT MATCH PACKET : : sIMPLICIT OUTPUT: 3 1289 1290 129 1292 1301 011220 1302 011224 1303 011230 1304 011232 1305 011236 1306 011244 1307 011250 1308 011254 1309 011260 1310 011264 1311 011266 1312 011270 1313 011272 1314 011276 1315 011302 1316 011306 1317 011310 1318 011316 CKRAM2 SEQ 0059 :ROUTINE TO READ THE FIRST 8 OR 10 BYTES FROM RAM 1283 1284 1285 1286 1287 1288 1299 011214 1300 011214 .SBTTL T PAGE 32 003750 003744 002240 000167 016326 000000 016326 000000 016326 000000 000000 108: 20$: SAVREG MOV #RAMDATA ,R1 MOV #RMCHBEG,R2 CLR R3 JSR PC,CHKTSSR MOVB #0,TSDB(RS) JSR PC,CHKTSSR MOV R2,TSDB(RS) JSR PC,CHKTSSR MOVB TSBA(RS), (R1) CMPB (R1)+, (R4)+ BEQ 208 INC R3 INC R2 MOV #8. ,RAMSI2 ST EXTFEA BEQ 25$ MOV #10. ,RAMSI2 CMP R2,#RMCHEND BLE 25s: 278: 308: 10§ BR CMP 278 R2,#RMCHEND=2 ST BEQ CLC BR SEC R3 308 BLE 10§ 508 :SAVE THE GENERAL REGISTERS *ADDRESS TO SAVE THE RAM DATA :BYTE ADDRESS OF FIRST RAM DATA :CLEAR THE ERROR FLAG SWAIT FOR SSR :SET MAINTENANCE MODE *WAIT FOR SSR TO SET *SELECT NEXT RAM ADDRESS :WAIT FOR SSR TO SET *READ THE RAM DATA :COMPARE TO EXPECTED *BRANCH IF OK *SET ERROR FLAG *ADDRESS OF NEXT RAM LOCATION *ASSUME EXTFEA NOT SET ;1S THE SOFTWARE EXTENDED FEATURES SET *BR, IF NOT SET *SET RAMSIZ FOR EXTEND FEATURES *AT END OF EXTENDED BUFFER : C sREACHED END YET ? sBRANCH TILL ALL READ sWAS AN ERROR FOUND ? sBRANCH IF NOT :ghsAR fARRY TO SHOW ERROR : EXIT sSHOW GOOD COMPARE . TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CKRAM2 = COMPARE RAM TO 1/0 CHARACTERISTICS DATA }g%g 011346 0060207 508: RTS PAGE 32-1 PC SEQ 0060 sRETURN TSV3 = GLOBAL AREAS CKMSG MACRO M1113 25-MAY-82 08:41 = COMPARE WRITE CHAR. MESSAGE BUFFERS }gg PAGE 33 .SBTTL ;0 (KMSG SEQ 0061 = COMPARE WRITE CHAR. MESSAGE BUFFERS 1334 1333 : 1335 }ggg ;BUFFER. THE EXPECTED AND RECEIVED BUFFERS ARE STORED FOR :ERROR PRINT ROUTINES. ;ROUTINE TO COMPARE A WRITE CHARACTERISTICS EXPD AND RECV };gg : INPUT: 1340 1341 : : }?32‘ 1345 : *OUTPUT: R2 EXPD MESSAGE BUFFER ADDRESS : CARRY SET = MESSAGE BUFFERS MATCH }fi% SIMPLICIT OUTPUT: 1350 : EXPMSG BUFFER IS SET TO EXPD DATA : RCVLOADD SET TO LOW ORDER ADDRESS OF RECV mg }3329 : 1351 1352 : : 1355 1356 011350 1357 011350 CKMSG:: 3?2 1358 011354 1359 011360 1360 011364 1361 011370 1362 011372 1363 011376 002302 002304 003130 108: 1367 011406 1368 011412 1369 011416 002320 002464 1372 011424 1373 011430 000002 000014 1375 011436 000200 1377 011 000016 1370 011420 1371 011422 1374 011434 1376 011444 1378 011 1379 011 1380 011 1381 011 1382 011 1383 011 }% 011 SAVREG 158: 258: 558: 608: RO,RCV 4IADD R1.RCVLOAD :SAVE R1=RS UNTIL NEXT RETURN :SAVE RECV HIGH ADDRESS *SAVE RECV LOW ADDRESS :TESTING ABOVE 28K? JSR PC,SETMAP ;RETURN ADDRESS BIASED TO PAR6 IN RO CLR CLR R4 R3 MOV MOV CMP (R2) ,EXPMSG(R4) :SAVE EXPD FOR ERROR REPORT (R1) .RECMSG(R4) :SAVE RECV FOR ERROR REPORT (R2)+,(R1)+ :EXPD EQUAL RECV? MOV MOV BEQ INC 10$ RO.R1 R2,RS *BR IF NO :GET RETURNED ADDRESS BIASED i0 PAR6 :WORD IN BUFFER :CLEAR ERROR SEEN FLAG :GET EXPD BUFFER ADDRESS 258 R3 *BR IF YES :SET ERROR SEEN FLAG 15§ “BR IF NO ADD CMP #2.R6 R4 #14 BIT #X2.EXTF ,XST2(RS) ;IS EXTENDED FEATURES SET IN EXPD? cMP RG 416 TST BEQ cLC BR SEC R3 558 BEQ 508: BUFFER IS SET TO RECV DATA SET TO HIGH ORDER ADDRESS OF RECV KTENABLE BLE 000012 CLR =MESSAGE BUFFERS DON'T MATCH ST BEQ 017306 RECV MESSAGE BUFFER HIGH ORDER ADDRESS RECV MESSAGE BUFFER LOW ORDER ADDRESS RECMSG RCVHIADD MOV MOV 1364 011400 1365 011402 1366 011404 RO R1 BLE RTS 508 15§ 608 PC :POINT TO NEXT WORD ADDRESS :DONE FIRST 7 WORDS? :BR IF NO :DONE EXTENDED FEATURES WORD? *BR IF NO *ANY ERRORS SEEN? *BR IF NO *SET FAILURE : *SET SUCCESS *RETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CKMSG2 = COMPARE EXPD RECV MESSAGE BUFFERS }ggg PAGE 34 .SBTTL 1389 (CKMSG2 <= COMPARE EXPD RECV MESSAGE BUFFERS : 1390 1391 1392 1393 :ROUTINE TO COMPARE AN EXPECTED AND RECEIVED MESSAGE ;BUFFER. THE EXPECTED AND RECEIVED BUFFERS ARE STORED FOR :ERROR PRINT ROUTINES. : 33'5’ + INPUT: 1396 1397 1398 : : : 1401 1402 1403 SOUTPUT: : }289 SIMPLICIT OUTPUT: 1408 1409 1410 : : : }238 RO R1 R2 : : }28§ : }2}3 RECV MESSAGE BUFFER HIGH ORDER ADDRESS RECV MESSAGE BUFFER LOW ORDER ADDRESS EXPD MESSAGE BUFFER ADDRESS R3 NUMBER OF BYTES TO COMPARE CARRY SET = MESSAGE BUFFERS MATCH CLR = MESSAGE BUFFERS DON'T MATCH EXPMSG RECMSG RCVHIADD : 1413 1414 011470 1415 011470 1416 011476 1417 011500 SEQ 0062 BUFFER IS 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 . CKMSG2:: 020327 003412 000144 SAVREG CMP BLE :SAVE R1=RS UNTIL NEXT RETURN R3,#RECMSG-EXPMSG:@aD IS COUNT ABOVE MAX ALLOWED? 58 -3aD BR IF NO 1418 011502 012703 000144 MOV 011506 011512 011516 011520 011522 1420 011526 1421 011532 1422 011536 1423 011542 1624 011546 1425 011550 1426 011552 1427 011554 1428 011556 1429 011 1430 011566 1431 0115720 1432 011572 1433 011574 1434 011600 012746 012746 010600 104417 062706 010037 010137 005737 001403 004737 010001 005004 005005 111264 111164 122221 001401 005205 062704 020403 011622 000001 MOV MOV MOV TRAP ADD MOV MOV ST BEQ JSR MOV CLR CLR MOVB MOVB CMPB BEQ INC ADD CMP #DEBUGMSG #DEBUGMSG, = (SP) #1,-(SP) SP,RO CSPNTF #6,SP RO.RCVHIADD R1.RCVLOAD KTENABLE 10$ PC,SETMAP RO,R1 R4 RS (R2),EXPMSG(R4) (R1),RECMSG(R4) (R2)+,(R1)+ 258 RS #1.Ré R4 .R3 :SAVE RECV HIGH ADDRESS :SAVE RECV LOW ADDRESS :TESTING ABOVE 28K? *BR IF NO :RETURN ADDRESS BJASED TO PAR6 IN RO :GET RETURNED ADDRESS BIASED TO PARG *WORD IN BUFFER :CLEAR ERROR SEEN FLAG :SAVE EXPD FOR ERROR REPORT ;SAVE RECV FOR ERROR REPORT :EXPD EQUAL RECV? :BR IF YES :SET ERROR SEEN FLAG sPOINT TO NEXT BYTE :DONE ALL BYTES? BR 158 :DO NEXT BYTE 1419 011506 1435 011602 002001 1437 011606 1438 011610 005705 001402 1436 011604 000764 002302 002304 003130 PRINTF 58: 017306 108: 002320 002464 15$: 000001 258: BGE 508: TST BEQ #RECMSG-EXPMSG,RS; aaD 508 RS 558 ;aaD ‘BR IF YES *ANY ERRORS SEEN? :BR IF NO TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CKMSG2 =~ COMPARE EXPD RECV MESSAGE BUFFERS 1639 011612 1440 011614 14461 011616 }22 011620 000241 000401 000261 000207 1444 011622 1445 011712 1446 011723 1447 011756 120 045 040 056 }zzg 012011 124 558%: 60$: 122 116 040 056 105 117 045 124 056 123 CLC BR SEC RTS DEBUGMSG: FERCM: ASCII ERCM: ASCIZ SIMSG: .ASCIZ TINERR: .esgzl PAGE 34-1 608 PC 5 SEQ 0063 :SET FAILURE Eser success *RETURN +ASCIZ 'PROGRAM INTERNAL ERROR =CKMSG2 MESSAGE BUFFER EXCEEDED=-'; /ZINZA 1217 / TSSR ERROR CODE REC'D = / /.. .« AFTER DOING SOFT INIT/ /TEST: TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CKMSG2 <~ COMPARE EXPD RECV MESSAGE BUFFERS 1451 145 145 1454 }222 SEQ 0064 s¢ 3 sPRINT ROUTINE TO FATAL SOFT INIT ERRORS 1457 1458 sINPUT: 3 }223 3 }221 sSIDE EFFECTS: }224 3 1465 1466 1467 012024 ;TM 012024 1468 012024 1469 012030 1470 012034 012034 012034 1471 1472 1473 004737 004737 006020 017172 1484 012036 1485 012042 1486 012046 1487 012052 012052 012052 CONTENTS OF TSSR AT ERROR EXECUTES DROP UNIT TO CEASE TESTING BGNMSG SFIMSG JSR JSR ENDMSG PC,PRITSSR PC,CKDROP TRAP CSMSG sPRINT CONTENTS OF TSSR REGISTER ¢DROP UNIT, IF ALLOWED 3 sPRINT ROUTINE TO PRINT THE CONTENTS OF sTSSR AND A COMMAND PACKET OTHER THAN GET STATUS COMMAND PACKET. 1476 477 1478 1479 1480 1481 1482 1483 012036 012036 R1 SFIMSG:: L10003: 104423 }2;? 1488 1489 1490 PAGE 35 s INPUTS: : 3 R1 3 R4 3 ;= 004737 012700 004737 104423 006020 PKTSSR:: 000004 007364 L10004: TSSR CONTENTS ADDRESS OF COMMAND PACKET BGNMSG PKTSSR JSR PC,PRITSSR MOV JSR n,‘RO PC,"PRIPKT TRAP CSMSG ENDMSG PRINT THE CONTENTS OF TSSR REGISTER OF WORDS IN PACKET PRINT THE CONTENTS OF COMMAND PACKET e JPRINT ROUTINE TO PRINT THE CONTENTS OF ;23} JTSSR AND A GET STATUS COMMAND PACKET. 1493 1494 1495 s INPUTS: 3 3 R1 1498 1499 1500 012054 - }239 3 012054 TSSR CONTENTS R4 ADDRESS OF COMMAND PACKET BGNMSG PKTGETS PKTGETS:: TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CKMSG2 =~ COMPARE EXPD RECV MESSAGE BUFFERS 1501 012054 1302 012060 1503 012064 1504 012070 1505 1506 1507 1508 012070 012070 004737 012700 004737 006020 L10005: 104423 : 1515 1516 012072 012072 012076 012076 004737 006020 . ORI VIV IV IV 1V, ] SRISEN britvitvtvtv #2.RO PC.PRIPKT TRAP CSMSG :PRINT THE CONTENTS OF TSSR REGISTER :NO. OF WORDS IN GET STATUS PACKET :PRINT THE CONTENTS OF COMMAND PACKET : TSSR_CONTENTS Ré ADDRESS OF COMMAND PACKET BGNMSG SFFMSG JSR ENDMSG PC,PRITSSR TRAP CSMSG .SBTTL PKTMES :PRINT CONTENTS OF TSSR REGISTER ) = PRINT TSSR AND MESSAGE BUFFER :PRINT ROUTINE TO PRINT THE CONTENTS OF TSSR AND MESSAGE sBUFFER FOR ERROR REPORTS INPUTS: R1 CONTENTS OF TSSR BGNMSG PKTMES JSR PC,PRITSSR JPRINT CONTENTS OF TSSR MOV JSR ENDMSG R1 PC,PRMESS :HIGH ORDER ADDRESS sPRINT THE MESSAGE BUFFER R2 LOW ORDER MESSAGE BUFFER R3 HIGH ORDER MESSAGE BUFFER ADDRESS NOTE: R3 IS IGNORED IF KTENABLE FLAG IS CLEAR It RUKY S RN SFFMSG:: L10006: 104423 W W S 1517 012072 1518 012076 s PC,PRITSSR MOV JSR ENDMSG :INPUTS: : : R1 1513 o o i+ :PRINT TSSR ERRORS FOR INITIALIZATION TESTS 1510 1511 1512 (VI IV IV IV (W IV IV IV IV.] JSR 000002 007364 PAGE 35-1 012100 012100 012100 012106 012106 012110 012114 012114 012114 004737 010200 010301 004737 104423 006020 PKTMES:: MOV 014232 L10007: TRAP R%.RO CSMSG ;LOW ORDER ADDRESS SEQ 0065 TSV% = GLOBAL AREAS ADDSSR MACRO M1113 = PRINT TEST ADDRESS AND TSSR 25-MAY-82 08:41 }32 .SBTTL PAGE 36 ADDSSR SEQ 0066 = PRINT TEST ADDRESS AND TSSR o4 1544, :PRINT ROUTINE TO PRINT THE CONTENTS OF }gzz : INPUTS : 1549 : 1ss§ 1 012116 1555 012116 ADDSSR:: }gzg :TSSR AND A MEMORY TEST ADDRESS 1550 }g§1 1554 012116 1556 012122 1557 012126 1558 012132 1360 RS : : 012132 012132 004737 016501 004737 010270 000002 006C20 L10010: 104423 11§g12 FIRST DEVICE UNIBUS ADDRESS ERRHI ERRLO HIGH ORDER MEMORY TEST ADDRESS LOW ORDER MEMORY TEST ADDRESS BGNMSG ADDSSR JSR MOV JSR ENDMSG PC,PRITADD TSSR(RS) ,R1 PC,PRITSSR TRAP CSMSG .SBTTL MSGEXP = PRINT WRITE CHAR. EXPD-RECV MESSAGE BUFFERS :0 1563 : }ggg SIMPLICIT INPUTS: 1568 : }ggg :PRINT ROUTINE TO PRINT WRITE CHARACTERISTIC MESSAGE BUFFER 1569 1570 }g;; 1573 012134 012134 1574 012134 1575 012140 1576 012144 1577 012146 1573 012152 1579 012156 012156 012156 1580 1581 ;PRINT MEMORY TEST ADDRESS :GET CURRENT TSSR *PRINT THE CONTENTS OF TSSR REGISTER 012700 005737 001402 012700 004737 104423 000007 002224 000010 014542 : : : EXPMSG RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD= RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD=- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS = EXPECTED MESSAGE BUFFER " BGNMSG MSGEXP MOV TST BEQ MOV #7.R0 EXTFEA {3 #8. .RO MSGEXP:: 58: JSR ENDMSG L10011: . TRAP PC . PRMSGE XP CSMSG ;ASSUME NO EXT FEATURES *EXT FEATURES SET? :BR IF NO *EXT FEATURE BUFFER IS 8 WORDS *PRINT EXPD/RECV MESSAGE BUFFERS TSV3 = GLOBAL AREAS FIFEXP MACRO M1113 = PRINT FIFO EXP/RECV DATA 25-MAY-82 08:41 Y .SBTTL PAGE 37 FIFEXP SEQ 0067 = PRINT FIFO EXP/RECV DATA :PRINT ROUTINE TO PRINT FIFO EXP/RECV DATA R1 = BYTE COUNT 46 46 46 012232 000002 000006 012301 000001 L10012: - EXPMSG = EXPECTED MESSAGE BUFFER (CONTAINS FIFO DATA ONLY = RECEIVED MESSAGE BUFFER (CONTAINS FIFO DATA ONLY) BGNMSG FIFEXP PRINTX MoV Mov Mov MOV TRAP ADD PRINTX #FIFIMSG,R1 MoV TRAP ADD MoV JSR 015112 oo RECMSG Mov MoV 000004 - o VY ~ H O=0000 OO b FIFEXP:: =00 O - d ek NvNoOOrOONONO OWWWWNIN = = L0000 NI I e I e B 3% 888 e P o ] I I I SRR IR e W Y S S S N SIMPLICIT INPUTS: 045 045 FIFIMSG: FIF2MSG: ENDMSG TRAP .EVEN R1,=(SP) sPRINT BYTES TRANSFERRED #FIFIMSG,=(SP) ". -(SP) #FIF2MSG,=(SP) #1,-iSP) $P.RO CSPNTX #4,SP R1.RO PC.PRBYTEXP CSMSG +ASCIZ +ASCIZ sPRINT HEADER MSG sGET BYTE COUNT sPRINT FIFO BYTES IN ERROR *INXZA NUMBER OF BYTES TRANSFERRED = Xv2' 'ANXA FIFO DATA BYTES IN ERROR:' TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 MSGSTAT = PRINT STATUS HEADER AND MESSAGE BUFFERS 1606 1607 1608 1609 1610 1611 1612 1613 X JSBTTL 3 012340 1620 012340 1621 012344 1622 012346 1623 012350 012350 8}2352 MSGSTAT: 1617 1618 1619 012340 BGNMSG MSGSTAT . 010046 012746 012402 108: 000001 L10013: N 012553 STATCOD: 1$:.ASC 2%:.ASC 38:.ASC 48: .ASC 58:.ASC 68:.ASC . s b0 B g T Y ¥ 2 [ S e e Y oA oooononO NN 012 BEQ PRINTX MOV 208 RO RO,=(SP) :BR IF YES :PRINT STATUS BIT NAMES MOV #1.-(SP) TRAP ADD CSPNTX #6,SP MOV #10. RO :DONE ALL MSG LINES? SP.RO BR 208: 000012 014542 B S 045 045 045 045 045 045 ;ASCII ADDRESS TABLE (R1)+,R0 MOV 104423 012420 #STATCOD,R1 MoV ey By b 004737 MOV 10§ ;DO ANOTHER MSG LINE JSR PC,PRMSGEXP :PRINT EXPD/RECV MESSAGE BUFFERS TRAP CSMSG NNNNNN 012701 012100 001410 1640 1641 1642 *NUMBER OF WORDS IN A READ STATUS BUFFER .WORD 1$,2%,3%.,4%8,5%,68.0 'INXA Tape Bus Signals in Word #8:° *INXA *INXA 'INXA PARERR<1S5> IRESV2<14> IRESV1<13> IEOT <12> [1IDENT<11> ICER <10> [IFMK [IHER ISPEED<7?> 'INXA Tape Bus S1?nals in Word #9:° EVészA DATMIS<7> [ILW<6> OUTRDY<S> «SBTTL <9> <8> IRDY<6> JONL<S> ILDP<4> INRDY<4>® MSGLOOP = PRINT LOOPBACK HEADER AND MESSAGE BUFFERS *PRINT ROUTINE TO PRINT MESSAGE BUFFER EXPD/RECV SIMPLICIT INPUTS: 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 013054 013054 1653 013054 MSGSTAT = PRINT STATUS HEADER AND MESSAGE BUFFERS EXPMSG = EXPECTED MESSAGE BUFFER RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD=- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS 000004 1630 012420 1631 012462 1632 012553 1633 012644 1634 012735 1635 012777 1636 1637 1638 1639 SEQ 0068 IMPLICIT INPUTS: ; ; : : 1628 1629 012402 . - :PRINT ROUTINE TO PRINT MESSAGE BUFFER EXPD/RECV 1614 1615 1616 1626 012374 1627 012400 012400 012400 PAGE 38 EXPMSG = EXPECTED MESSAGE BUFFER BGNMSG MSGLOOP MoV #LOOPCOD,R1 RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS 012701 013116 MSGLOOP:: sASCII ADDRESS TABLE IRWD<2>* [IFBY<1I>"® IFPT<0>* — TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 MSGLOOP = PRINT LOOPBACK HEADER AND MESSAGE BUFFERS 1654 013060 1655 013062 1656 013064 013064 013066 013072 0130764 013076 1657 013102 1658 013106 1659 013110 1660 013114 013114 1661 013116 - -t o ~ 1662 013116 1663 013136 1664 013211 1665 013310 1666 013407 1667 013506 1668 013605 }293 013704 012100 108: 001410 010046 012746 010600 104415 062706 000766 012700 004737 000001 000004 000012 014542 208 : L10014: 104423 013136 045 045 045 045 045 045 045 013217 116 116 116 116 116 116 116 013310 045 045 045 045 045 045 045 MOV BEQ PRINTX PAGE 38-1 (R1)+,R0 208 RO MOV MOV MOV TRAP ADD RO,=(SP) #1,-(SP) SP,RO CSPNTX ¥4 ,SP MOV JSR ENDMSG #10. ,RO PC,PRMSGEXP TRAP CSMSG BR 108 SEQ 0069 ;DONE ALL MSG LINES? sBR IF YES sPRINT STATUS BIT NAMES ;D0 ANOTHER MSG LINE sNUMBER OF WORDS IN A READ STATUS BUFFER sPRINT EXPD/RECV MESSAGE BUFFERS LOOPCOD: .WORD 1%,2%,3%,4%,5%,6%,78.0 1$:.ASCIZ 'INXA Tape Bus Loopback Signals in Word #8:' 28:.ASCIZ 'INZA PARERR<15> IRESV2<14> 3$:.ASCIZ °INXA IHISP=>IEOT<12> IWRT=>IIDENT<11> 4$:.ASCIZ °INXA IWFM =>IFMK<09> IEDIT=>IHER <08> 58:.ASCIZ 'INXA ITADO=>IRDY<06> ITADT1=>IONL <05> 68:.ASCIZ 'INXA IREW =>IDBY<03> IRWU =>IRWD <02> 7s:'ASCIzEVEszA IGO0 =>IFPT<00>' IRESV1<13>* IREV =>ICER <10>° IFAD =>ISPEED<07>* IERASE=>ILDP <04>°* IFEN =>IFBY <01>°' TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 MSGSUB = PRINT WRITE SUBSYSTEM MESSAGE BUFFER «SBTTL s+ PAGE 39 SEQ@ 0070 MSGSUB = PRINT WRITE SUBSYSTEM MESSAGE BUFFER :PRINT ROUTINE TO PRINT MESSAGE BUFFER EXPD/RECV SIMPLICIT INPUTS: EXPMSG = EXPECTED MESSAGE BUFFER BGNMSG MSGSuB MOV JSR ENDMSG #10.,R0 PC,PRMSGEXP TRAP CSMSG .SBTTL MEMADD = PRINT MEMORY ADDRESS DATA ERROR RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD=- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS RCVLOADD- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS 012700 004737 000012 014542 : MSGSUB: L10015: 104423 i+ sSIZE OF WRITE SUBSYSTEM BUFFER sPRINT EXPD/RECV MESSAGE BUFFERS *PRINT ROUTINE TO PRINT MEMORY ADDRESS DATA COMPARE ERROR SIMPLICIT INPUTS: ; : : : 707 013744 013744 708 013744 004737 013701 013702 004737 104423 010154 MEMADD:: 007736 ERRHI ERRLO EXP RECV = MEMORY ERROR HIGH ORDER ADDRESS = MEMORY ERROR LOW ORDER ADDRESS = EXPECTED DATA = RECEIVED DATA BGNMSG MEMADD JSR MOV MOV PC,PRIADD EXPD ,R1 RECV,R2 R L10016: ENDMSG TRAP PC.PRIXOR CSMSG sPRINT MEMORY ADDRESS IN ERROR :GET EXPD DATA sGET RECEIVED DATA sPRINT EXPD/RECV | TSV3 = GLOBAL AREAS MACRO M1113 i = PRINT RAM AND PACKET DAT: 25-MAY-82 08:41 .SBTTL 4 D o PAGE 40 SEQ@ 0071 PRAMPKT = PRINT RAM AND PACKET DATA *PRINT ROUTINE TO DISPLAY RAM/PACKET DATA i :WHEN THE RAM DATA DOES NOT MATCH. D i D : INPUTS: : R4 POINTER TO COMMAND PACKET e e D i D SIMBLICIT INPUTS: ; IMPLICIT OUTPUTS: : PRAMPKT: 012701 005002 122124 001005 b i D i D D D D D e NNNNNNNNNY -3 ~ LKRURZE IF RAMSIZ=0 THEN DEFAULT TO 8. o 743 014014 i 177777 177777 78: 002232 002230 b XOR RS,R3 MOVB 78.NOTSSR =1(R&).R3 =-1(R1) ,RECV =-1(R4) ,EXPD MOV R3,=(SP) :LOW BYTE ONLY MOV MOV MOV MOV TRAP 108: &»O , R2,=(SP) #5,-(SP) SP.RO CSPNTB #14,SP R2 :UPDATE BYTE COUNT RAMS ]2 208: 258: RTS PC RAMAS(: .ASCIZ °'INYA 158: 045 ST - :GET RECEIVED RAM DATA :GET EXPECTED RAM DATA #RAMASC , = (SP) BEQ CMP BLE BR CMP BLT CLR b 000010 ADD INC ;aab *GET RECV RAM DATA :XOR EXPD/RECV #177400,R3 MOVB MOVB :SAVE R1-RS UNTIL NEXT RETURN :DATA FROM THE RAM SINIT BYTE NUMBER :COMPARE EXPECTED, RECEIVED *BR IF NO MATCH *GET EXPD PACKET DATA 014146 b b d o 108 -1(R1).RS EXPD,=(SP) RECV,=(SP) 002300 b BR MOVB MOV MOV 002300 b R2 (R1)+, (R4)+ 78 002230 002232 000014 e CLR CMPB BNE BIC 000005 b #RAMDATA,R1 YRAMASC,R2,R£CV,EXPD,R3 116 b SAVREG MOV PRINTB 002300 b OO00O0O0O0O0O0O0O000O0 SET T0 0 FORCERROR o~ o — o~ e O N =2 VOO NO NS W °°§VN NNNSNN = wvivawviwvaauaiwvainanaw - ~ b b d b b d ~ ~ b b D b d 58: 177400 177777 177777 NN — 0436 002240 RAMSIZ *DEFAULT TO 8.2 158 R2,RAMSI2 5$ 25% R2,48. 58 RAMS]2 ‘BR IF YES :DONE ALL BYTES? :BR IF NO : *DONE DEFAULT NUMBER OF BYTES? :BR IF NO :SET DEFAULT RAMSIZ X03%A Packet: X03XA XOR:%03" BYTE: ¥D2%A RAM- *RETURN TSV3 = GLOBAL AREAS MACRO M1113 PRAMPKT = PRINT RAM AND PACKET DATA 1763 1764 1765 25-MAY-82 08:41 PAGE 40-1 N6 SEQ 0072 +EVEN AACRO M1113 25-MAY-82 08:41 <~ PRINT CONTENTS OF MESSAGE BUFFER 1767 1768 ‘0 1769 1770 PRMESS SEQ@ 0073 <= PRINT CONTENTS OF MESSAGE BUFFER THIS ROUTINE PRINTS THE CONTENTS OF 17 1772 THE 7 OR 8 WORD MESSAGE BUFFER RETURNED BY THE 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 014232 1785 014232 1786 014236 1787 014240 1788 014244 1789 014246 1790 014250 1791 014252 1792 014254 1793 014256 Exnrur: RO LOW ORDER ADDRESS OF MESSAGE BUFFER R1 HIGH ORDER ADDRESS OF MESSAGE BUFFER NOTE: R1 IS IGNORED IF KTENABLE FLAG IS CLEAR THIS ROUTINE IS NORMALLY CALLED FROM A PRINT ROUTINE PRMESS: sSAVE THE REGISTERS sSAVE LOW ORDER ADDRESS :ADDRESS ABOVE 28K? :BR_IF YES sSET _HIGH ORDER ADDRESS TO 0 003130 108: - OO0 R1 #PROASC,R1,RS .=(SP) 014410 000003 R1,=(SP) #PROASC ,=(SP) #3,-(SP) 000010 #10,SP CSPNTX #PRIASC 014455 000001 lPRIASC -(SP) sPRINT HEADER FOR CONTENTS #1,-(SP) 000004 sNUMBER OF THE NEXT WORD :COPY LOW ORDER ADDRESS S 004737 :SAVE HIGH ORDER ADDRESS sSHIFT BIT15 TO C BIT sSHIFT TO HIGH ORDER FOR PRINTOUT ;PRINT MESSAGE BUFFER ADDRESS SP_RO WO NSOV —-Oa VIO~ 82288'2‘232 - OOWVN 8NN 3333 SrR S888328% 014256 014260 014262 014266 014272 014274 014276 1794 014302 014302 014306 014312 014314 014316 1795 014322 1796 014324 1797 014326 1798 014330 1799 014332 1800 014336 1801 014340 014340 014342 014344 014350 014354 014356 014360 1802 014364 1803 014366 1804 014372 .SBTTL PAGE 41 20 017306 PC,SETMAP 208: 0.R5 RO, :COPY HIGH ORDER ADDRESS BR IF NOT ABOVE 28k sSETUP PAR ADDRESS IN RO :GET PAR FORMAT ADDRESS ABOVE 28K #PRASC R4, (R5) + :PRINT THE CONTENTS OF MEMORY BUFFER (RS)+,=(SP) 014513 000003 000010 000007 sNUMBER OF TNE NEXY :DONE ALL YET :BRANCH IF ALL DONf ———— TSV3 = GLOBAL AREAS PRMESS TSV3 = GLOBAL AREAS PRMESS MACRO M1113 25-MAY-82 08:41 =~ PRINT CONTENTS OF MESSAGE BUFFER 1805 014374 1806 014376 002761 032763 1807 014404 001355 1810 014410 1811 014455 }g}% 014513 045 045 045 }383 014406 000200 BLT 000012 000207 508: 116 116 116 045 045 045 PAGE 41-1 SEQ 0074 208 :PRINT FIRST 7 WORDS 208 sPRINT EXTENDED STATUS WORD BIT #X2 .EXTF ,XST2(R3) ;EXTENDED FEATUTES ON ? RTS PC BE PROASC: .ASCIZ PR1ASC: .ASCIZ PRASC: .esg#l sRETURN ‘'INXA Message Buffer Address = %01%05° 'INXA Message Buffer Contents:® *INZA WordXD1XA: X0° TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 perd WN=O O~V W — b b 4 b D D d ) o D D D e «SBTTL PAGE 42 SEQ €075 PRMSGEXP = PRINT EXPD/RECV MESSAGE BUFFERS :ROUTINE TO PRINT EXPECTED AND RECEIVED MESSAGE BUFFERS N vt ad v v SRESE »H D ed oy oo PRMSGEXP = PRINT EXPD/RECV MESSAGE BUFFERS H RO = NUMBER OF WORDS IN BUFFER SIMPLICIT INPUTS: 3 5 6 s 3 gz $ 010446 010146 012746 012746 010600 104415 062706 000010 014616 012746 818%46 014767 000001 014626 014626 1839 014632 104415 062706 005004 1843 014646 011203 — D ) b D d 829 014542 830 014542 831 014546 832 014550 833 014554 834 014556 835 014562 836 014564 837 014566 014566 014570 014572 014576 014602 014604 4606 1840 014634 1841 014640 1842 014644 1844 014650 1845 014660 014660 010005 013700 010004 013701 006100 006101 012701 012702 011100 002320 002464 #10,SP MOV SP,RO TRAP ADD CLR 000004 20$: 1848 014714 002001 0952 020405 000752 000207 015025 000005 CSPNTX #4,SP R4 WEXPMSG,R1 #RECMSG.R2 (R1),RO MOV (R2)+,=(SP) R3,-(SPJ INC (MP (R1)+,=(SP) Ré,=($P) #PRMSG2,-(SP) #5,-(SP) SP.RO CSPNTX #14,SP R4 R4 ,RS BR RIS 208 PC BGE 508: sPRINT HEADER FOR CONTENTS XOR PRINTX MOV MOV MOV MOV TRAP ADD 000014 sSAVE R1-RS UNTIL NEXT RETURN sSAVE NUMBER OF WORDS sGET RECV LOW ADDRESS sCOPY LOW ADDRESS JGET RECV HIGH ADDRESS JSHIFT BIT1S TO C BIT sSHIFT TO HIGH ORDER FOR PRINTOUT :PRINT MESSAGE BUFFER ADDRESS sNUMBER OF THE CURRENT WORD :GET EXPD BUFFER ADDRESS :GET RECV BUFFER ADDRESS :GET EXPD (R2),R3 :GET RECV RO.R :XOR EXPD/RECV #PRM R4, (R1)+, SG2 (R2)+,R3 MOV MOV MOV MOV MOV 012746 012746 010600 104415 062706 RO.RS RCVLOADD RO RO,.Ré RCVHIADD ,R1 RO R1 #PRMSGO,R1,Ré R4,.=(SP) R1,-(SP) #PRMSGO,~-(SP) #3,-(SP) SP,RO CSPNTX ADD 012146 010446 014670 014674 014700 014702 014704 1849 014716 1850 014720 014722 000003 PRMSGEXP: : SAVREG MOV MOV MOV MOV ROL ROL PRINTX MOV MOV MOV MOV MOV TRAP MOV 012246 1846 014710 1847 014712 002302 RCVLOADD- RECEIVED MESSAGE BUFFER LOW ORDER ADDRESS 010346 014662 014664 014666 002304 EXPMSG = EXPE CTE D MESSAGE BUFFER RECMSG = RECEIVED MESSAGE BUFFER RCVHIADD- RECEIVED MESSAGE BUFFER HIGH ORDER ADDRESS 508 :NUMBER OF THE NEXT :DONE ALL YET? :BR IF YES :DO_ANOTHER :RETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 PRMSGEXP = PRINT EXPD/RECV MESSAGE BUFFERS 1851 1852 014722 1853 014767 }g?s' 015025 1856 045 045 045 116 ”g 045 045 045 PAGE 42-1 SEQ 0076 PRMSGO: .ASCIZ PRMSG1: .ASCIZ PRMSG2: eeg'x‘z ) ‘'INXA Message Buffer Address s !01205' 'INXA Message Buffer Conte 'INSA WORD #ZD2ZA EXPD: zom RECV: %06%A XOR: %06° TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 PRBYTEXP = PRINT ERROR BYTES IN EXP/REC MESSAGE BUFFER 1858 1859 1860 1861 186§ 186 1864 1865 1866 1867 1868 1869 & .SBTTL PAGE 43 SEQ 0077 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 - NUMBER OF BYTES IN BUFFER SIMPLICIT INPUTS: 1878 015136 1879 015140 1880 015144 1881 015150 1882 015152 1883 015156 1884 015162 1885 015172 1886 015174 1887 015176 1888 015202 1889 015210 1890 015212 015212 015214 015220 015224 015226 015232 015236 015240 015242 1891 015246 1892 015256 010005 002316 06 002316 002316 000010 278: 015462 015460 RO,RS PRMNO R4 000014 30%: 35¢%: sNUMBER OF THE CURRENT BYTE sGET EXPD BUFFER ADDRESS sGET RECV BUFFER ADDRESS *GET EXPD BYTE BIC #4Cc<$77>.R0 :CLEAR UPPER BYTE MOVB BIC (R2),R3 #4C<$77>.R3 :GET RECV BYTE :CLEAR UPPER BYTE MOVB MOVB XOR CMPB BEQ INC CMP BHI PRINTX MOV BR (R1),RO RO,PRBEXP R3,PRBREC RO,R3 (R1)+,(R2)+ 308 PRMNO PRMNO, #8. 308 *SAVE FOR ERROR REPORT :FOR ERROR REPORT :XOR EXPD/RECV SEXPD = RECV? :BR IF YES *UPDATE ERROR COUNT *PRINTED 82 *BR IF YES #PRBMSG,R4,PRBEXP,PRBREC,R3 R3,=(SP) 35 FORCERROR 27$,.NOTSSR INC CMP R4 R4 RS B8R 208 BGE 508: sSAVE R1=R5 UNTIL NEXT RETURN *SAVE NUMBER OF BYTES SINIT ERROR COUNT #EXPMSG,R1 #RECMSG.R2 MOV PRBREC, =(SP) MOV PRBEXP . ~(SP) MOV R4, =(SP) MOV #PRBMSG, = (SP) MOV #5,=(SP) MOV SP.RO TRAP CSPNTX ADD #14,SP FORCEXIT 508 015326 000005 002316 015413 000002 = EXPECTED MESSAGE BUFFER = RECEIVED MESSAGE BUFFER MOV MOV MOVB 015462 1896 015270 015300 015304 015310 015314 015316 208: 177400 1893 015260 1894 015260 1895 015270 1897 015272 1898 015274 1899 015276 1900 015300 MOV CLR CLR 177400 015460 4415 EXPMSG RECMSG PRBYTEXP:: SAVREG 002320 002464 o 1873 015116 1874 015120 1875 015124 1876 015126 1877 015132 =OO0O0—= g—DOOOOOOO O = =d = b =D d b oNOON -lg IR o~ 1870 1871 015112 1872 015112 : : ;@aD :aaD ;aaD ;aaD *NUMBER OF THE NEXT :DONE ALL YET? 50§ ‘BR IF YES PRINTX MOV #PRBTOT.PRMNO PRMNO, - (SP) sPRIN" TOTAL ERROR (OUNT MOV #2,-(SP} TRAP CSPNTX MOV MOV #PRBTOT,~(SP) SP,R0 :D0 ANOTHER TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 000006 ©O0 045 045 116 116 000000 000000 [o] B e b — e e g e O 22222 & v 233 062706 000207 o0 PRBYTEXP = PRINT ERROR BYTES IN EXP/REC MESSAGE BUFFER PRBMSG: PRBTOT: PRBEXP: PRBREC: 6 SEQ 0078 ADD #6,SP +ASCIZ +ASCIZ .EVEN ' INXA BYTE #XD2XA_ EXPD: X03%A RECV: %03%A 'ANXA NUMBER OF BYTES IN ERROR = %D2°' RTS 045 045 PAGE 43-1 «WORD «WORD PC 0 0 sRETURN sEXPD sRECV XOR: %03° TSV3 = GLOBAL AREAS MACRO M1113 = PRINT EXPD/RECV WORD DATA VNS W=D N=OOVRNO 3d-‘dddddddddd S92 000000008030 T EXPREC : 0 15470 25 015470 104423 &S 004737 — b 1926 «SBTTL PAGE 44 EXPREC SEQ 0079 = PRINT EXPD/RECV WORD DATA :PRINT ROUTINE TO DISPLAY EXPD/RECV DATA : INPUTS 0 015464 815463 o 19 25-MAY-82 08:41 007736 EXPREC:: L10017: R1 R2 RECEIVED DATA EXPECTED DATA BGNMSG EXPREC JSR ENDMSG PC,PRIXOR TRAP CSMSG ;PRINT THE DATA 25-MAY-82 08:41 7 PAGE 45 SEQ 0080 d d RR R Sesassosas OO W =0 SERRSRARS SOO TSV3 = GLOBAL AREAS MACRO M1113 EXPBREC = PRINT EXPD/RECV BYTE DATA .SBTTL 4 EXPBREC = PRINT EXPD/RECV BYTE DATA d d D D D D d e :PRINT ROUTINE TO DISPLAY BYTE EXPD/RECV DATA : INPUTS: R1 RECEIVED DATA BYTE EXPECTED DATA BYTE 1547% 004737 6 015476 104423 007606 EXPBREC PC.PRIBXOR TRAP CSMSG «SBTTL RAMERR sPRINT THE DATA = PRINT RAM AND PACKET DATA fpaxur ROUTINE TO DISPLAY RAM/PACKET DATA gINPUTS: R4 POINTER TO COMMAND PACKET IMPLICIT INPUT S: DATA AS READ FROM THE RAM NUMBER OF BYTES IN PACKET IF RAMSIZ=0 THEN DEFAULT TO 8. A TETE T TR FA A PE PE TR TR ) : IMPLICIT OUTPU TS: MR 32 FRRRRRRRL222R2 BGNMSG EXPBREC::s JSR ENDMSG L10020: &~ WN=O VBNV 2 i - b cd b e D b :5-‘ -‘-‘-‘-‘-‘-.-.-‘-‘:;:;:;:;:;-‘-‘ VO AARARRRRRR — — d e R2 55 55 5500 5504 55 04 55 04 004737 104423 013766 RAMERR: : L10021: i+ RAMS 12 SET T00 BGNMSF RAMERR JSR ENDMSG PC,PRAMPKT TRAP CSMSG .SBTTL RAMTADD = PRINT TEST ADDRESS, RAM AND PACKET DATA sPRINT RAM/PACKET DATA *PRINT ROUTINE TO DISPLAY RAM/PACKET DATA P INPUTS: TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 RAMTADD = PRINT TEST ADDRESS, RAM AND PACKET DATA 1979 : PAGE 45-1 }gg? H }38% sIMPLICIT INPUTS: 1984 1985 1986 1987 : 3 3 H }gg? JIMPLICIT OUTPUTS: 1992 1993 1994 1995 015506 3 - }833 : 015506 1996 015506 1997 015512 1998 015516 1999 015516 015516 004737 004737 010270 013766 2000 2001 POINTER TO COMMAND PACKET RAMDATA RAMSI2 DATA AS READ FROM THE RAM NUMBER OF BYTES IN PACKET IF RAMSIZ=0 THEN DEFAULT TO 8. HIGH ORDER TEST ADDRESS ERRHI ERRLO RAMSIZ BGNMSG RAMTADD:: L10022: 104423 R4 SEQ 0081 LOW ORDER TEST ADDRESS SET TO 0 RAMTADD JSR JSR PC,PRITADD PC ,PRAMPKT TRAP CSMSG .SBTTL RAMEXP ENDMSG JPRINT TEST ADDRESS JPRINT RAM/PACKET DATA = PRINT RAM EXPD/RECV DATA 2005 %882 sPRINT ROUTINE TO DISPLAY EXPD/RECV DATA 2006 2007 2008 2009 :INPUTS: 3 F R1 3 R2 pe gg}? 2012 2013 015520 015520 2014 015520 2015 015524 2016 015530 2017 015534 2018 015540 015540 2019 015540 : 042701 042702 004737 004737 104423 177400 177400 010062 007736 RAMEXP:: L10023: 583? i+ Ré& RECEIVED DATA EXPECTED DATA CONTROLLER RAM ADDRESS BGNMSG RAMEXP BIC BIC JSR JSR ENDMSG #C<377>,R1 #4C<377> ,R2 P. ,PRIRAM PC,PRIXOR TRAP CSMSG .SBTTL TIMEXP RAM DATA BYTE RAM DATA BYTE RAM ADDRESS DATA = PRINT TIMER A,B AND EXP/REC 2022 2023 3 sPRINT ROUTINE TO DISPLAY EXPD/RECV DATA 2026 2027 2028 2029 s INPUTS: : 3 R1 3 R2 gggg JSAVE EXPD sSAVE EXPD JPRINT THE :PRINT THE sAND TIMER A,B HEADER MESSAGE RECEIVED DATA EXPECTED DATA TSV3 = GLOBAL AREAS TIMEXP MACRO M1113 = PRINT TIMER A,B AND EXP/REC 25-MAY-82 08:41 2030 2031 2032 01554 01554 2033 01554 015542 015546 015552 015554 015556 2034 015562 2035 015566 015566 PAGE 45-2 SEQ 0082 .TIMEXP: : 012746 012746 010600 104415 062706 004737 R 015566 104423 2037 %%%g 015570 045 015570 000001 TIMEXP PRINTX MOV #TIMSGO #TIMSGO,=(SP) MOV TRAP ADD JSR ENDMSG SP,RO CSPNTX #4,SP PC.PRIXOR TRAP CSMSG MOV 000004 007736 L10024: 116 BGNMSG 045 TécggO: <ASCIZ :PRINT HEADER #1,-(SP) ;PRINT THE DATA "INXA TIMER A STATUS IS IN BIT 3XNXA TIMER B STATUS IS IN BIT 2° TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 BADSSR = PRINT TSSR ERRORS ON DATA TRANSFERS .SBTTL PAGE 46 SEQ 0083 BADSSR = PRINT TSSR ERRORS ON DATA TRANSFERS .‘0 *PRINT ROUTINE FOR TSSR ERRORS ON DATA TRANSFERS : INPUTS: R1 205% ' 2054 015670 015670 2055 015670 2056 015672 2057 015676 BADSSR:: 015730 000002 0 2058 015720 2059 015722 2060 015726 015726 015726 2061 015730 2062 000006 006020 104423 045 L10025: 116 DATA WRITTEN (8 BITS) BGNMSG BADSSR MOV BIC 177400 045 XFERASC: CONTENTS OF TSSR R2 PRINTB MOV MOV MOV Mov TRAP ADD MOV JSR ENDMSG TRAP R2,=(SP) #177400,R2 #XFERASC,R2 R2,=(SP) #XFERASC,=(SP) sSAVE DATA TRANSFERRED sGET JUST ONE BYTE #2,-(SP) SP,RO CSPNTB #6,SP (SP)+,R2 PC,PRITSSR CSMSG .ASCIZ sRESTORE R2 sDECODE TSSR CONTENTS °'2INXA Data Transferred = X03°' TSV3 = GLOBAL AREAS MACRO M1113 GLOBAL SUBROUTINES SECTION 2064 2065 2066 5067 2069 2070 25-MAY-82 08:41 .SBTTL PAGE 47 6 SEQ 0064 | ! X GLOBAL SUBROUTINES SECTION '8 a4 : THE GLOBAL SUBROUTINES SECTION CWTAINS THE SUBROUTINES : THAT ARE USED IN MORE THAN ONE TEST. i MACRO M1113 25-MAY-82 08:41 SOFINIT « SOFT INITIALIZE OF CONTROLLER +SBTTL PAGE 48 SEQ 0085 SOFINIT = SOFT INITIALIZE OF CONTROLLER 4 ' i ROUTINE TO DO A SCFT INITIALIZE OF THE CONTROLLER :BY WRITING INTO THE TSSR REGISTER. AFTER THE INIT, ;THE_TSSR REGISTER IS TESTED FOR ERRORS. ANY ERRORS DETECTED SHOULD BE TREATED AS DEVICE FATAL ERRORS. .INPUTS i RS gOUTPUTS: RO CARRY ADDRESS OF FIRST REGISTER CCNTENTS OF TSSR, IF ERROR SET IF INIT WAS OKAY CLEAR IF FATAL ERROR CALLING SEQUENCE: MOV JSR BCS ERRDF #ADDRESS ,RS PC,SOFINIT CONT INUE SOFINIT:: 02 015770 012765 8?2%28 016500 000002 6010 6014 6 042704 052704 020400 176277 002200 MOV JSR MOV b b 108: PC,WAITF TSSR(RS) ,RO : SAVE THE REGISTERS : DO THE INIT. : WAIT FOR SSR :GET THE TSSR REGISTER RO, R4 ;TSSR CONTENTS #*C<HIADDR!OFL>,Ré4 #SSR!NBA, R4 ;R4 HAS EXPECTED CONTENTS 8EQ 5% CLC 5% #0,TSSR(RS) Mov BIC BIS CMP B =D ot e D b 16002 SAVREG 000002 sREPORT FATAL ERROR BR SEC RTS R4 RO 108 PC :ONLY EXPECTED BITS SET ? sBRANCH IF OKAY sCLEAR THE CARRY FOR ERROR ;GO TO EXIT sSET THE CARRY BIT *RETURN TO CALLER S | TSV3= GLOBAL AREAS | TSV3 = GLOBAL AREAS =~ CHECK TSSR FOR AMBIGUITY A NN NNNINININ) = = b s s | CHKAMB MACRO M1113 .SBTTL o e 40 41 : INPUT: RO :: ::OUTPUT: : 016034 016034 016040 016042 016046 010004 032700 001004 016054 001023 016050 CHKAMB: 032700 50 016106 000410 e e o e 000424 032700 001011 032700 001414 042704 020427 el o g SEQ 0086 <~ CHECK TSSR FOR AMBIGUITY sFOR AMBIGUITY 016056 016060 016064 016066 016072 016076 016100 51 52 53 54 55 56 57 CHKAMB I :THIS ROUTINE TESTS THE CONTENTS OF THE TSSR REGISTER 42 43 4% 45 46 47 48 49 PAGE 49 & e e e WWWWWIWWWNIN T e e e e e 39 25-MAY-82 08:41 016104 016110 016114 016116 016122 016124 016126 016130 016132 001007 032700 001405 032700 001002 000241 000401 000261 000207 100000 174077 000200 000040 177761 000016 000040 RO CONTENTS OF TSSR CARRY SET = NO AMBIGUITY CLR = AMBIGUOUS CONTENTS SAVREG MOV BIT BNE 000006 408: 45$: 598: ;SAVE THE GENERAL REGISTERS :CONTENTS OF TSSR :IS BIT 15 SET 2 *BRANCH IF YES #*C<NBA!OFL'SSR!HIADDR> RO BR BIT BNE BIT BEQ BIC 408 ;MUST BE AN ERROR 458 #SSR,RO 108 #BITS,RO 408 #*CTERCLS,R4 *RETURN WITH SUCCESS *1S READY BIT SET ? :BRANCH IF READY BIT IS SET. *1S FATAL ERROR BIT SET ? *ERROR IF NOT :CLEAR ALL BUT TERMINATION COuE BNE 408 BIT BEQ BIT BNE CLC BR SEC #BITS.RO 45$ #BIT2!BITIRO , 458 CMP 108: RO, R4 #SC.RO 58 BIT BNE 5%: CONTENTS UF TSSR B8R RIS R4 416 458 508 PC sANY OTHER BITS SET ? :ALL THREE BITS MUST BE SET :ERROR IF NOT SET :0K IF ALL ARE SET *1S FATAL ERROR BIT SET ? :ERROR IF BIT IS SET WITH SSR :IS THIS A FUNCTION REJECT *BR, IF TSSR IS OK *AMBIGUOUS CONTENTS ;SHOW SUCCESS = NO AMBIGUITY *RETURN TO CALLER TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 ENAINT ,DSBINT = ENABLE/DISABLE INTERRUPTS }21 .SBTTL PAGE 50 SEQ 0087 ENAINT,DSBINT = ENABLE/DISABLE INTERRUPTS 216 : DEFAULT DISPLAY INTERRUPT HANDLERS. 5}22 : OTHERWISE, SAVE DPU REGISTERS AND DISMISS. 2164 : IF DISPLAY TIME-OUT, REPORT DEV FATAL, AND ABORT PASS. 2167 F gggg 2170 g};g 2173 2174 016134 2175 %};6 016135 ; BIT DEFINITIONS FOR "INTMASK'* AND ‘‘INTFLAG'' BYTES: 000200 ; 000001 IOKCKIN=BIT? 10KSTP=BITO ; DON'T CHECK FOR BAD INTERRUPTS == TEST WILL. + EXPECT "'STOP'* INTERRUPT. : INTERRUPT MASK == SAYS EXPECTING INTERRUPTS 000 INTMASK : BYTE 0 : INTERRUPT FLAG == SAYS WE GOT ONE (IF POSITIVE) INTFLAG: BYTE 0 000 2178 2179 016136 2180 5}35 016140 000000 :SAVED INTERRUPT VECTOR: INTVEC: .WORD O :SAVE CPU PC INTCPC: .WORD O 2183 2184 016142 2185 016144 2186 016150 010046 013700 012720 suaaourxue T0 ENABLE INTERRUPTS: ENAINT: MOV RO,=(SP) :SAVE RO MOV IVEC,RO *GET POINTER TO VECTORS MOV #INTR, (RO)+ *SET UP INTERRUPT VECTOR 2189 016162 2190 016164 g;g; 016172 011646 012766 000002 2187 016154 2188 016160 2193 2194 016174 2195 016176 5}39 016204 000000 012720 012600 011646 012766 000002 002206 016206 000340 000000 000340 MOV MOV 000002 000002 MOV MOV RTI #PRIO?, (RO)+ (SP)+,R0 (SP) ,=(SP) #0,2(SP) :RESTORE RO :SET CPU TO LEVEL 0 ;SUBROUTINE TO DISABLE INTERRUPTS (RAISE PRIORITY TO LEVEL 7) DSBINT: MOV (SP) ,=(SP) MOV RTI #PR107,2(SP) TSV3 = GLOBAL AREAS MACRO M1113 INTR = INTERRUPT HANDLERS 25-MAY-82 08:41 5333 2201 812?82 - 2202 016206 012737 2205 016226 001003 2203 016214 2204 016220 gggg 016230 105037 132737 152737 2208 000001 002222 t 016134 .SBTTL INTR BGNSRV INTR :DEFINE INTERRUPT ENTRY MOV #1,INTRECY JSET FLAG TO SHOW INTERRUPT RECEIVED 18 :BR IF YES CLRB BITB BNE 016135 BISB is: 2210 016236 016236 016135 000001 SEQ 0088 = INTERRUPT HANDLERS INTFLAG CLEAR FLAG TO SAY WE GOT INTERRUPT #I10KSTP, INTMASK .EXPECthG STOP INTERRUPT? #IOKSTP,INTFLAG :NO. SET THE ERROR FLAG. :SAVE REGISTERS, MSG BUFFER, ETC. 2209 016236 016236 000001 PAGE 51 000002 L10026: ENDSRV RTI TSV3 = GLOBAL AREAS WALTF MACRO M1113 = WAIT FOR SUBSYSTEM READY 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 016240 2229 016242 016242 2230 016244 2231 016250 2232 016254 2233 2234 016256 2235 016260 016260 016264 016266 016272 016274 016300 016302 2242 016324 25-MAY-82 08:41 .SBTTL PAGE 52 WAITF SEQ 0089 = WAIT FOR SUBSYSTEM READY : SUBROUTINE TO WAIT FOR THE SUBSYSTEM READY FLAG : INPUTS: ADDRESS OF FIRST DEVICE REGISTER CONTENTS OF LAST ESSR READ SET = READY BIT CLR = TIMEOUT WAITING FOR READY 000401 104422 012746 016500 105700 1$ C$BRK 03000 =(SP) 003000 000002 TSSR(RS) ,RO RO 100420 012727 3s 000001 1 31.(PC)0 002116 bSDLV.(PC)f 177772 =-6(PC) =4 =22(PC) .=20 177756 00 000207 3s: 4$: sNOP WHEN SUPER FIXED : DO A SUPVSR BREAK FIRST. ;300 MSEC TIMER sREAD THE TSSR REGISTER sTEST FOR READY BIT SET ¢ EXIT ON STOP FLAG. : WAIT 100 USEC 2% (SP) sREDUCE DELAY COUNT RETRY UNTIL TIMER EXPIRES 48 ....OR HUNG-UP AFTER 300 MSEC. (SP) + PC RESTORE STACK WITHOUT CHANGING CARRY BIT = 0, CONTROLLER STILL RUNNING... C = 1, CONTROLLER IS STOPPED. TSV3 = GLOBAL AREAS MACRO M1113 CHKTSSR = CHECK TSSR FOR READY 25-MAY-82 08:41 «SBTTL PAGE 53 SEQ 0090 CHKTSSR = CHECK TSSR FOR READY + :THIS ROUTINE WAITS FOR READY IN THE TSSR AND TESTS FOR AMBIGUOUS BIT SETTINGS IN TSSR. .INPUT ; RS ADDRESS OF CSR REGISTERS RO CONTENTS OF TSSR JSR PC,WAITF JSR PC, CHKAMB BIT BEQ #SC.RO 15$ #<SCE'BIE'RMR!NXM>,R0O 15 OUTPUT CARRY 2263 016326 2264 016326 2265 016332 2266 016 016240 CHKTSSR: BCC 016034 BCC 100000 2270 016350 2271 016354 2272 016356 2273 016360 2274 016362 2275 016364 074000 BIT 108: 000207 15¢: 20$: BEQ CLC BR SEC RTS SET = OKAY CLR = NOT READY AMBIGUOUS, OR SC SET 208 10§ 208 PC . ;WAIT FOR READY :BRANCH IF TIME oOUT :TSSR AMBIGOUS? *BR IF YES .SPECIAL CONDITION SET? *BR IF NO :ANY ERROR BITS SET? :BR IF NO :SET FAILURE “SET SUCCESS :RETURN TO CALLER TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 = CHECK FOR NONEXISTENT MEMORY o «SBTTL PAGE 54 SEQ 0091 XNXM = CHECK FOR NONEXISTENi MEMORY ¢ 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. 46 MOV ADR1,R1 : RETURN 012737 012737 005003 005711 020102 001407 2 005103 012716 000002 012700 104436 005703 001401 000261 000207 005737 6 016420 000200 XNXM: MOV MoV #2$,ané #PRI04, 346 1$: TST (R1) sTEST THE ADDRESS(ES). CMP R1.R2 ;OTHERWISE, CONTINUE HERE. ADD BR #2,R1 1$ sSET NEXT ADDRESS... s++«<AND CONTINUE. 016430 R3 :GOT ONE, SET FLAG... #4 s«+.AND GIVE BACK THE VECTOR. 000004 R :DID WE CATCH ONE ?? :NO, 'C'" = 0, SKIP NEXT. sYES, ''C"" = 1, (R1) = NEXM ADDR. MOV ADRZ2,R2 JSR PC,NXM CLR BEQ "000002 28: 38: COM MoV RTI CLRVEC 002166 002202 + R3 3s #3$, (SP) sTEST "'C'* AND PROCEED. : SET BUSERR VECTOR. sFLAG. :IF ANY TRAP, CONTINUE AT 2$. sBR_IF FINISHED (NO NEXM'S). se+.AND DISMISS INTERRUPT... Mov TRAP TST #4 R0 CSCVEC R3 RTS PC .SBTTL TSTLOOP = CHECK ITERATION COUNT BEQ SEC 002214 000207 000004 000006 —f® e Ve Ny 000,08, RRRXRRR22RR 2292esseese N WWW WW N CoO~NONWES 86 2287 2288 016366 2289 016374 2290 016402 2291 016404 2292 2293 016406 2294 016410 2295 016412 2296 016416 2297 2298 016420 2299 016422 2300 016426 2301 016430 016430 016434 2302 016436 2303 016440 2304 016442 238% 016444 :CALL: ; : SUBROUTINE TO EXECUTE TEST ITERATIONS. EXIT WITH *'C** SET IF LOOPS ALLOWED AND LOOP COUNT NON-ZERO. LOOP COUNTER IS SET BY “BEGIN.TEST'' MACRO. CALL: LOOPTO : STLOOP: TST BNE TST BMI DEC BNE 1%: CLC BR 2%: 3s: SEC RTS ARG NOITS 1$ QvP 1$ EgOPCNT : ITERATIONS INHIBITED? s YES. : NO. <LOOPS DISALLOWED IN QUICK PASS. : BUMP LOOP COUNTER. 38 :LOOP DISALLOWED, OR DONE. PC ;LOOP ENABLED. : TSV3 = GLOBAL AREAS ~ MACRO M1113 TSTLOOP = CHECK ITERATION COUNT 25-MAY-82 08:41 330 33 g% .SBTTL :0 %334 335 2336 PAGE 55 B 8 SEQ 0092 TSTSETUP = PRINT TEST NAME AND INIT ERROR COUNTS : PRINT THE NUMBER AND NAME OF EACH TEST AS WE GO ALONG. : INCREMENT “‘TESTK'* TO INDICATE THE NUMBER OF TESTS : IN THE CURRENT RUN SEQUENCE. ggg‘ : CLEAR THE ERROR COUNTER AND SIGNATURE EXTENSION FLAGS. 2339 s INPUT: 2340 3 ggzl : RO POINTER TO TEST ID ASCIZ STRING 5%22 ; RS ADDRESS OF FIRST DEVICE REGISTER 5332; sIMPLICIT OUTPUTS: 5§§3 ; 5;21 :SIDE EFFECTS: %gzg SOUTPUT: zss% 2354 : 2355 2356 2357 2358 016500 2359 016500 2360 016502 2361 016506 236§ 016512 2363 016516 2364 016522 2365 016526 2366 016530 2367 016536 2368 016526 ; : .= 010046 005037 005037 005037 105037 013700 006300 005737 01430 10007 2369 016540 052760 016546 104455 2370 016546 - 016550 016552 016554 2371 016556 2372 016560 2373 016566 000001 003734 005732 000407 052760 016570 016572 016574 2374 016576 2375 016604 016604 016610 2376 016612 000002 004331 000000 012737 016566 003150 016746 005766 016134 002200 : 003110 \ 160000 160001 003172 003172 INTERRUPT LEVEL IS RASIED TO LEVEL OF 002200 003106 28%: :SAVE THE TEST ID MESSAGE : CLEAR "'SOFT INIT'' FLAG : CLEAR LOCAL ERROR COUNTER. : CLEAR ERROR EXTENSION FLAG. : CLEAR INTERRUPT MASK (CHECK ERROR) : GET THE UNIT NUMBER, * ... AND MAKE IT A WORD OFFSET. : DID STARTUP FIND THE DEVICE? : BR IF YES : BR IF NOT IDLE 1,NXR,NXRERR ; NO DEVICE HERE == PRINT IT #160000,ERTABL(RD) ; FLAG ERROR IN THE ERROR TABLE TRAP CSERDF LWORD .WORD .WORD BR BIS ERRDF 1 NXR NXRERR 28 #160001,ERTABL (RO) ; FLAG ERROR IN THE ERROR TABLE 2, NOINIT : DEVICE NOT IDLE WORD .WORD .WORD MOV DODU MOV TRAP DOCLN 2 NOINIT 0 #-1,DUFLG UNITN UNITN,RO C$DODU TRAP 177777 RO,=(SP) SIFLAG ERRK EXTA INTMASK UNITN,RO RO NODEV 4 3s BIS ERRDF 38: UPDATED TO COUNT TESTS PERFORMED SINCE START OR RESTART THE DEVICE UNDER TEST TSTSETUP:: MOV CLR CLR CLR _ CLRB MOV ASL ST 8EQ © BRL 104455 013700 104451 TSTCNT CS$ERDF : DROP THE UNIT : ABORT THE PASS TSV3 = GLOBAL AREAS MACRO M11 1 3 25-MAY-82 08:41 PAGE 55-1 TRAP BR CSDCLN 5% RFLAGS TRAP RO ; GET THE OPERATOR FLAGS. #PNT RO 1$ : PRINT THE TEST NUMBERS? 016674 104444 4$: = oNO OSSN g O—'SN 000423 WO =OH NoOr~NCoO OO o ;dddd—.dd-‘ddd v.v,) ot b —5 W ~ WW S8% [=lelelelelelelelelelelels] 0000000 &@ NN &g NN 89 S 22 2322222322 & [« 1,81 NSNS SOeErNEcs = 016612 O £e28 333 TSTSETUP = PRINT TEST NAME AND IN I T ERROR COUN TS 001000 000006 002212 1%: 002210 5$: 002204 123 BIT BEQ MoV PRINTF #TNAM, RO MoV #2,-(SP) Mov MoV 016674 000002 045 TNAM: CSRFLA MoV TRAP ADD INC (SP) ,RO RO,=(SP) +ASCI2 .EVEN ;DISPLAY THE TEST ID : BUMP TEST COUNTER. sPRIORITY THAT OF DEVICE Mov TRAP TST ; BR IF NO :GET THE ID MESSAGE #TNAM, = (SP) SETPRI MOV RTS SEQ 0093 ggRADDR.RS 'ASXATXA Test' sFIX UP THE STACK ; ADDRESS OF TSV REGISTERS ON UNIBUS —— TSV3 = GLOBAL AREAS TSTEND MACRO M1113 = PRINT ERRORS RECEIVED 25-MAY-82 08:41 .SBTTL PAGE 56 TSTEND SEQ 0094 = PRINT ERRORS RECEIVED : AT END OF EACH TEST, PRINT THE NUMBER OF ERRORS RECEIVED NN = : IF NORMAL ERROR REPORTING IS DISABLED (FLA:IER). ONONON PGy (=] 80-‘ W gunw 28R Sl\b: - NN TSTEND: RFLAGS TRAP 020000 BIT BEQ PRINTF MOV MOV 016746 016750 000002 000006 e e ) 2401 2402 2403 016746 2404 016750 2405 016767 406 nNO nN— 2396 2397 816710 16710 2398 016712 2399 016716 2400 016720 1$: 122 ERRK: 0 ESUM: .ASCIZ EMAXDU: .ASCIZ -EVEN * ¢ 2411 . 2612 017034 2413 017040 2414 017042 2415 017046 2416 017050 2417 017054 2418 017056 2422 017070 2423 2424 017072 2425 017074 2426 017100 2427 017102 2428 017106 2429 017112 2430 017116 2431 017120 2432 017126 2433 017130 017130 2434 017132 2435 017136 2436 017140 2437 017146 017146 017150 017152 MOV MOV TRAP ADD RTS .SBTTL RO CSRFLA RO,#IER 1$ #ESUM,ERRK ERRK , = (SP) #ESUM, = (SP) BR IF '‘IER'* NOT SET. PRINT ERROR COUNT. #2,-(SP) SP,RO CSPNTF #6,SP PC /%A %DZA 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 016746 INCERK: INC MOV MOV 002200 ASL ADD 003172 607777 18: MOV ASL MOV 003172 170000 002172 002170 000040 104455 000004 016767 177777 003106 UNITN,RO RO #ERTABL ,RO (RO) #7777, (RO) 1$ (RO) {SP)+,R0 PC RO,=(SP) UNITN,RO RO ERTABL (R0) ,RO BIC CMP BHIS #170000, RO RO, GERRMAX 18 BLO 2$ CMP 18: 012737 MOV RTS CKEMAX: MOV 002200 016746 INC BIT BNE DEC ERRK RO,=(SP) RFLAGS TRAP ERRK , LERRMAX RO CSRFLA BIT BNE MOV ERRDF #-1,DUFLG &, EMAXDU WORD 4 TRAP .WORD #1DU,RO 2s CS$ERDF EMAXDU INCREMENT LOCAL ERROR COUNT SAVE RO GET UNIT NUMBER, .o« AND MAKE IT A WORD OFFSET. RO GETS ADDRESS OF ERROR TABLE ENTRY. INCREMENT THE DEVICE ERROR COUNT DID WE OVERFLOW THE FIELD? BR IF NO. YES == BACK IT UP TO 7777. RESTORE RO RETURN TO CALLER. SAVE RO GET UNIT NUMBER «ss AND MAKE IT A WORD OFFSET GET ERROR TABLE ENTRY EXTRACT ERROR COUNT FIELD 62 ?%0?2% LIMIT EXCEEDED FOR THIS UNIT? IS LOCAL LIMIT EXCEEDED FOR THIS TEST? BR _IF NO GET OPERATOR FLAGS IS DROPPING INHIBITED? BR IF YES. NO == DROP THE UNIT TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 INCERK = INCREMENT LOCAL ERROR COUNT 017154 2438 017156 017156 017162 2439 017164 017164 2440 017166 2441 017170 060000 013700 104451 104444 012600 000207 002200 2$: LWORD DODU MoV TRAP DOCLN TRAP MOV RTS PAGE 56-1 SEQ 0095 0 UNITN UNITN,RO csbopu CSDCLN (SP)+,R0 PC : RESTORE RO : RETURN TO CALLER TSV3 = GLOBAL AREAS CKDROP MACRO M1113 25-MAY-82 08:41 = CHECK IF UNIT SHOULD BE DROPPED i+ SEQ 0096 «SBTTL (KDROP = CHECK IF UNIT SHOULD BE DROPPED ¢ CHECK IF UNIT SHOULD BE DROPPED 2447 2448 017172 2442 017174 2450 017282 0172 2451 y17206 2452 017212 2453 017214 2454 017216 2455 017224 017224 017230 2456 017232 017232 2457 017234 2458 017236 2459 2460 2461 2462 2463 2464 2465 24666 2457 017240 2468 017240 2469 017244 2470 2471 PAGE 57 CKDROP: MOV RO,=(SP) BIT BNE #1DU,RO 18 FORCERROR RFLAGS RO TRAP CSRFLA 000040 177777 003106 002200 1$: 1$,NOTSSR Mov MOV DODU Mov (SP) ,RO #-1,DUFLG UNITN UNITN,RO RTS CSDCLN (SP)+,RO PC .SBTTL CONFIG TRAP POCLN TRAP MoV C$DODU +ABORT THE PASS =~ DETERMINE CONFIGURATION OF SYSTEM : SUBROUTINE - DETERMINE CONFIGURATION OF TSVOS SYSTEM. 004737 000207 015764 CONFIG: JSR RTS PC,SOFINIT PC ] - TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-B2 08:41 | KTON,KTOFF = ENABLE/DISABLE MEMORY MANAGEMENT .SBTTL 2477 2478 01724 2479 01725 2480 017254 2281 017262 PAGE 58 KTON,KTOFF SEQ 0097 ENABLE/DISABLE MEMORY MANAGEMENT : SUBROUTINE - ENABLE MEM MGT. 005737 001403 012737 000207 KTON: 003.26 000001 177572 1$: TST BEQ MOV RTS KTFLG 1$ #1,5R0 PC GOT KT? No. YES. ENABLE KT11. : SUBROUTINE = DISABLE MEM MGT. 2488 017264 2489 017270 2490 017272 2491 017274 2492 017276 2493 017304 2 494 2495 005737 001405 000240 000240 012737 000207 iTOFF: 003126 000000 177572 TST BEQ KTFLG 1 N MOV #0,SRO DISABLE KT. NOP NOP 1$: RTS PC GOT KT11? - | TSV3 = GLOBAL AREAS SETMAP | MACRO M1113 25-MAY-82 08:41 PAGE 59 = SETUP PARG MAPPING ll:g; SBTTL 2499 = SETUP PAR6 MAPPING :0 2500 2501 250 ggg‘ rnxs ROUTINE SETS UP KERNEL PAR6 TP HANDLE AN 18 BIT ADDRESS. THE OFFSET INTO THE PAGE xs RETURNED BIASED TO PARG. 2505 L INPUTS: 2506 | SETMAP SEQ 0098 3 2507 2508 2309 : : : RO R1 2512 2513 s : RO CARRY 2516 017306 2517 017306 2518 017312 2519 017316 2520 017320 2521 2522 SETMAP: gg}g HIGH ORDER ADDRESS BITS LOW ORDER ADDRESS BITS tOUTPUTS: %g}g . 005737 001433 010102 000006 003126 %ggz OFFSET INTO BLOCK WITH PAR6 BIAS (I1.E. THE ADDRESS) SET IF SUCCESS CLR IF ERROR SAVREG ST BEQ MOV .REPT ASR :SAVE R1-R4 UNTIL NEXT RETURN *SYSTEM HAVE ABOVE 28K? *BR IF NO *SAVE LOW ORDER BITS “2zoa KTFLG 108 R1,R2 6 RO R1 :MAKE IT DOUBLE PRECISION :CONVERT WORD ADDRESS TC 32w BLOCKS 2525 017352 2526 017356 042701 020137 000177 003126 BIC CMP #177.R1 R1,KTFLG ;ALINE FOR LOWER 4K BOUNDARY *HIGHER THAN EXISTING MEMORY? 2528 017364 2529 017370 2530 017374 2531 017400 2532 017402 2533 017404 2534 017406 2535 017410 2536 010137 042702 062702 010200 000261 000401 000241 000207 172354 160000 140000 MOV BIC ADD MOV SEC BR CLC RTS R1,3#KIPARG #160000,R2 #140000.R2 R2.R0 *SETUP MAPPING REGISTER PAR6 *SETUP DISPLACEMENT IN PAGE *ADD IN PAR6 BIAS *RETURN IN RO :SET SUCCESS 2527 017362 103011 . BHIS 10%: 15%: 108§ 158 PC @ *BR IF YES SEI’ FAILURE JRETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 FILLMEM = FILL MEMORY WITH BACKGROUND PATTERN «SBTTL * 4 PAGE 60 SEQ 0099 FILLMEM = FILL MEMORY WITH BACKGROUND PATTERN FILL MEMORY WITH A BACKGROUND PATTERN :! INPUTS: ; RO = BACKGROUND PATTERN ; KTFLG : FREE = FIRST LOCATION AVAILABLE TO DIAGNOSTIC = SET TO HIGHEST MEMORY LOCATION IF > 28K. : OUTPUTS: : F ILLMEM: 017264 003120 003122 2562 017442 2563 017446 2564 017450 2565 017454 5566 017456 2 2572 017526 2573 017532 2574 017534 2575 017540 2576 017542 2577 017546 2578 017554 2579 017562 2580 017564 2581 017570 2582 017572 2583 017576 2584 017602 2585 017606 2586 017610 2587 017614 2588 017616 2589 017624 2590 017626 2591 017630 2592 017636 2593 017642 2594 017646 108: 017306 308: 160000 172354 003126 ST KTFLG JSR PC,KTON * YES. ENABLE K "2¥p7 zsrszu.nt :GET >28K START ADDRESS (IN 32W BLOCKS) cLC ROL "ghoa R1 RO JSR 177572 177761 000016 358: 172354 007600 000020 017532 017264 172516 408: 458: 508: 558%: 55 RO PC, SETMAP :BR IF NO : GOT KT? : NO. GET OUT. *HIGH ORDER ADDRESS START ;CLEAR C BIT :CONVERT BLOCKS TO WORD *MAKE IT DOUBLE PRECISI :SETUP PAR6 MAPPING REGISTER R3. (RO)+ *STORE TEST PATTERN IN >28K ADDRESS BLO 30$ :BR IF NO CMP RO.#160000 *END OF PAR6 MAPPING AREA? SUB ADD CMP BEQ #20000, RO #200,3#KIPARG K IPARG,KTFLG 508 *BACKUP INTO PAR6 MAPPING BEGIN :POINT TO NEXT 4K BLOCK >28K. END OF MEMORY? :BR IF YES BEQ MOV 358 SRO,R4 :GET SRO CONTENTS T23A 11/23A’ NO KEEP GOING 8IC #77761,R4 BEQ 508 :EXIT_IF THERE 45$ S#KIPARG, #7600 408 45% cso.sas 308 PC.KTOFF sNO KEEP GOING :REACHED 18 BITS? 2y ES :NO KEEP GOING :SET 22 BIT RELOCATION :KEEP GOING ON ETC. : DISABLE KT, CMP 003142 10$ :STORE A BACKGROUND WORD :DONE ALL MEMORY IN FREE SPACE? MOV TST 003140 :SAVE n1-ns UNTIL NEXT RETURN :DISABLE K : COPY tEST PATTERN *GET FIRST FREE LOCATION :SIZE OF FREE SPACE BELOW 28K. 3, (R15+ nz CLR 003146 PC,KTOFF RO,R3 FREE,R1 rnssxz R2 MOV DEC BEQ 017246 000207 SAVREG JSR MOV MOV MOV BGT 003126 020000 000200 172354 NONE TST BEQ CMP BHIS BR MOV JMP JSR RTS #16,.R4 1238 PC sCLEAR ALL BUT PAGE NUMBER sSEE _IF PAGE 7 :117238? r TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 FILLMEM = FILL MEMORY WITH BACKGROUND PATTERN PAGE 60-1 SEQ 0100 2595 2596 ‘¢ I g e+ e e TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CMPMEM ~ COMPARE MEMORY TO BACKGROUND PATTERN ggg ;0 528(1) .SBTTL PAGE 61 CMPMEM SEQ 0101 <~ COMPARE MEMORY TO BACKGROUND PATTERN ; COMPARE MEMORY WITH A BACKGROUND PATTERN 2602 : INPUTS: 2603 3 2608 : OUTPUTS: 3 : 2613 2614 2615 2616 2617 : IMPLICIT OUTPUTS: | : : ERRHI = ERROR HIGH ADDRESS : ERRLO = ERROR LOW ADDRESS : EXPD - EXPECTED DATA 2620 017650 2621 017650 2622 017654 CMPMEM: 010003 2624 017662 2625 017666 2626 017672 013701 013702 020311 003120 003122 2628 017676 010137 002236 2630 017706 010337 002230 2632 017716 000474 2604 2605 5289 : : 3 2612 : 3 52}3 2623 017656 2627 017674 2629 017702 2631 017712 2633 017720 - 2634 017722 2635 017724 - 2636 017726 2637 017732 - 2638 017734 2639 017740 004737 001411 005037 011137 005721 005302 003362 005737 001472 004737 005000 017264 108: 002234 000006 2645 017776 2646 020002 2647 02 2648 02 2649 020012 2650 020014 042701 010046 010146 004737 010004 012601 2651 020016 2652 020020 2653 020022 2654 020026 012600 020314 001411 010037 RECY = RECEIVED DATA SAVREG MOV RO,R3 003126 017246 017306 308: *BR IF YES ERRH] *NO HIGH ADDRESS R1,ERRLO MOV R3,EXPD B8R 508 TST DEC BGT ST BEQ JSR CLR (Ri) LRECV (R1)+ R2 10$ KTFLG 55 PC.KTON RO PST32w.R1 .REPT ROL R?fion 6 R1 RO BIC MOV MOV JSR MOV MOV #177.R1 RO,=(SP) R1.=(SP) PC,SETMAP RO, R4 (SP)+,R1 MOV CMP BEQ MOV (SP)+.RO R3, (R4) 32§ RO,ERRHI e ¥4 Ol : L f %QQQFQLZs oy e ' . :SAVE R1-RS UNTIL uexr aeruan *COPY TEST PAT ERN 15§ MOV BEQ - :DISABLE K FREE,R1 rassxz R2 R3, (R1) MOV 000177 : . PC.KTOFF MOV MOV CMP MOV 158: 002234 ’ CLR 002232 A EARRY = CLR IF oroRR JSR 2640 017742 013701 003146 2641 2642 ggzz RO = BACKGROUND PATTERN FREE = FIRST LOCATION AVAILABLE TO DIA STIC KTFLG = SET TO HIGHEST MEMORY LOCATION F}> 28K.. *GET rxnsr rase LOCATS :SIZE OF FREE SPHCE-HELOW 28K. :FREE_SPACE LOCATION EQUAL TO EXPD? :SAVE ADDRESS IN ERROR *SAVE EXPD FOR ERROR REPORT :SAVE RECV FOR ERROR REPORT : :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 :MAKE IT DOUBLE PRECISION :ALINE 4K BOUNDARY :SAVE HIGH ORDER :SAVE LOW ORDER :SETUP PAR6 MAPPING REGISTER :COPY ADDRESS BIASED TO PAR6 ;RESTORE LOW ORDER IN NON PARG FORMAT *RESTORE HIGH ORDER IN NON PAR6 FORMAT +ABOVE zax LOCATION EQUAL EXPD? :BR IF YES :SAVE HIGH ORDER IN ERROR TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 CMPMEM <~ COMPARE MEMORY TO BACKGROUND PATTERN 2655 020030 2656 020034 010137 010337 2658 020044 2659 020046 2660 020052 2661 020054 2662 020060 000421 062707 005500 062704 020427 2664 020066 2665 020072 162704 062737 2667 020106 2668 020110 2669 020114 2670 020116 2671 020120 2672 020124 2673 020126 2674 101744 004737 000241 000403 004737 000261 000207 002236 002230 2657 020040 011437 002232 2663 020064 2666 020100 103755 023737 328: 000002 160000 020000 000200 172354 n1 LERRLO EXPD ;SAVE LOW ORDER IN ERROR JSAVE EXPD FOR ERROR REPORT BR ADD ADC ADD CMP 508 cz R1 RO #2.R4 R& . #160000 : *UPDATE NON PAR6 ADDRESS :MAKE IT DOUBLE PRECISION ADD JUPDATE PAR FORMAT ADDRESS :END OF PAR6 MAPPING AREA? SUB ADD #20000, R4 #200,3#KIPAR6 *BACKUP INTO PAR6 MAPPING BEGIN :POINT TO NEXT 4K BLOCK >28K. BLOS JSR cLC BR JSR SEC RTS 308 PC,KTOFF BLO 172354 003126 CMP 017264 508: 017264 55¢: 60$: SEQ 0102 MOV MOV MOV 000002 PAGE 61-1 <az> LRECV 30§ NKIPARG,KTFLG 608 PC,KTOFF PC *SAVE RECV FOR ERROR REPORT *BR IF NO :END OF MEMORY? :BR IF NO *TURN OFF MEMORY MAPPING *SET FAILURE : *TURN OFF MEMORY MAPPING +SET SUCCESS ‘.];_m; TSV3 = GLOBAL AREAS REGSAV MACRO M1113 = SAVE R1=RS5 ON STACK 2676 2677 2678 2679 25-MAY-82 08:41 .SBTTL i+ 3 sROUTINE TO PAGE 62 REGSAV SEQ 0103 = SAVE R1=-R5 ON STACK %gg? sSAVE R1 THROUGH RS ON THE STACK 2682 2683 sCALLING SEQUENCE: : 2686 2687 2688 sTHIS 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 2691 sTHIS ROUTINE SHOULD ONLY BE CALLED FROM ROUTINES WHICH ARE %ggg 3 gggg 2692 2693 2694 2695 2696 020130 2697 020130 2698 020132 2699 020134 2700 020136 2701 020140 2702 020142 2703 020146 2704 020150 2705 020152 2706 020154 2707 020156 2708 020160 2709 020162 2710 JSR RS ,REGSAV JREGISTERS. sCALLED VIA A JSR PC INSTRUCTION 3 ;= 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 TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 GETPAT <~ GET 8 BIT PATTERN FROM OPERATOR PAGE 63 .SBTTL SEQ 0104 GETPAT = GET 8 BIT PATTERN FROM OPERATOR :ROUTINE TO REQUEST AN 8 BIT DATA PATTERN FROM THE OPERATOR : INPUTS: : NONE. 1OUTPUTS: ; RO OCTAL NUMBER FROM THE OPERATOR *CALLING SEQUENCE: ; JSR PC.GETPAT 2731 020164 2732 020164 2733 020170 GETPAT:: 18: 104443 06 %736 020216 103367 013700 000207 100008 : 020220 SAVE THE GENERAL REGISTERS DATASC,PATDAT,0,377,0,377.N0 TRAP BR .WORD .WORD .WORD CSGMAN 100008 PATDAT TSCODE DATASC «WORD TSHILIM .WORD «WORD 000377 2734 020210 020210 2735 020212 SAVREG GMANID 377 TSLOLIM BNCOMPLETE 8CC 1$ MOV RTS 1% PATDAT ,RO PC sRETRY IF ERROR ;DATA PATTERN FROM OPERATOR :RETURN TO CALLER i+ sLOCAL DATA AREA 2 2742 020220“ 000000 2743 020222 105 2744 116 124 PATDAT: DATASC: .WORD .ASCIZ .EVEN : TEMPORARY STORAGE FOR DATA 'ENTER DATA PATTERN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 GETSEL =~ ISSUE MENU AND GET OPERATOR RESPONSE %;2 .SBTTL :0 2748 2749 2;;9 / s INPUTS : 2754 : %;gz :OUTPUTS: %;23 : 2761 276§ 2763 020246 2764 020246 2765 020252 I g;gg RO : 2768 020260 2769 ozozos 020262 020264 020270 020274 020276 o1ooo§ 01020 005713 012346 012746 012746 010600 104417 020306 104443 020312 020314 020316 020320 020322 020326 021326 020466 ; 02043 177777 000000 177777 020326 2773 020330 2774 020334 2775 020336 2776 020340 020340 103352 013700 020001 101411 020350 010600 020354 062706 020344 020352 2777 020360 2778 020362 2779 020364 2780 020432 2781 020437 18: 28: 001412 062706 000764 2772 020326 R1 RO GETSEL:: 020300 2770 020304 020310 GETSEL SEQ 0105 = ISSUE MENU AND GET OPERATOR RESPONSE | ;ROUTINE TO ISSUE A MENU AND GET :THE OPERATOR'S RESPONSE. 3 2;; 2766 020256 2767 020256 PAGE 64 020432 000002 012746 104417 000735 000207 045 045 105 MOV ST 000006 020466 020364 000001 #6,SP 2$ TRAP CSGMAN .WORD .WORD .WORD WORD .WORD .WORD MENRES TSCODE MENASC =1 TSLOLIM TSHILIM 116 116 156 045 045 164 :START OF MENU STRING *END OF ASCII ? JBRANCH IF ALL LINES DISCLAYED :DISPLAY THE MENU 2.-(SP) sp ‘RO CSPNTF 100018 BNCOMPLETE 1¢, BCC MOV CMP BLOS PRINTF MOV 18 MENRES R0 RO,R1 5% #MENERR cnensna -(SP) MOV SP, o TRAP 58: MENERR: SELASC: MENASC: RO,R R2 R (R$) ADD BR MOV 000004 :SAVE GENERAL REGISTERS :SAVE THE MENU ADDRESS 73 #SELASC,(R3)+ (R3)+,=(SP) cssLAsc =(SP) B8R 100018 NUMBER OF THE OPERATOR'S SELECTION BEQ PRINTF MOV MOV MOV MOV TRAP 06 012746 SAVREG MOV ADDRESS OF ASCIZ STRING OF MENU MAXIMUM ALLOWABLE OPERATOR RESPONSE :RETRY IF ERROR :GET THE OPERATOR'S REPLY ;COMPARE TO MAXIMUM ALLOWED :BRANCH IF 0K :DISPLAY ERROR MESSAGE #,-(SP) CSPNTF ADD #6,SP RTS .ASCIZ .ASCIZ .ASCIZ PC *RETURN TO CALLER 'ZN!A ve+ Menu Selection Too Large #a#' ‘INXT® 'Enter Menu Selection: °* BR 18’ :RETRY TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 =~ ISSUE MENU AND GET OPERATOR RESPONSE GETSEL 278§ 2783 020466 000000 MENRES : .EVEN PAGE 64~1 WORD SEQ 0106 O TSV3 = GLOBAL AREAS CHKMAN = CHECK MANUAL MACRO M1113 25-MA V-BZ 08:41 INTERVENTION LEGALITY 5;32 .SBTTL PAGE 65 CHKMAN SEQ 0107 = CHECK MANUAL INTERVENTION LEGALITY ;0 2787 3 s;gg JROUTINE TO TEST FOR MANUAL INTERVENTION LEGALITY. 2790 2791 279 279 s INPUT: 3 3 NONE. 3 2796 %;gg H : %ggg .SIDE EFFECTS: 2801 2802 2803 2804 2805 2806 : . ; : ;- %7782 :0UTPUT: 2807 020470 2808 020470 2809 020474 020474 104450 2810 020476 020476 103411 2811 020500020500 012746 020504 012746 020530 010600 020512 104417 020514 062706 2812 020520 000241 gg}f 020522 000207 Sg}g 020524 045 CHKMAN:: MANUAL INTERVENTION NOT ALLOWED MANUAL INTERVENTION IS Ok A MESSAGE IS DISPLAYED WARNING THAT TEST IS NOT EXECUTED IF MANUAL INTERVENTION IS NOT ALLOWED. 1$: NOMAN: .ASCIZ 000004 045 0 1 SAVREG MANUAL TRAP CSNANI BCOMPLETE 18 BCS 18 PRINTF #NOMAN MOV #NOMAN, - (SP) MOV #1,-(SP) MOV SP,RO TRAP CSPNTF ADD #6,SP CLC RTS PC 020524 000001 116 CARRY .even JSAVE THE REGISTERS SEE IF MANUAL INTERVENTION 0K ;BRANCH IF ALLOWED JPRINT THE WARNING MESSAGE ;CLEAR CARRY FOR ERROR RETURN ‘INZA #++ Manual Intervention not Allowed - Test Aborted s#s* TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 ENVIRN = SETUP FREE DIAGNOSTIC SPACE 2818 2819 2820 2821 2822 0206%0 0620 2823 020622 2824 020626 «SBTTL ENVIRN SEQ 0108 = SETUP FREE DIAGNOSTIC SPACE : SUBROUTINE TO SET-UP VARIOUS ENVIRONMENTAL PARAMETERS. énvxnn ?snonv 003120 003122 2828 020652 2829 020660 2830 020662 2831 020664 2832 020670 2833 020674 2834 020700 2835 020704 2836 020706 2837 020712 2838 020714 2839 020720 003122 108: ADD RO, FREE #2 FREE sus #4,FRESIZ Sus DEC BNE MOV g;.rnesxz Sus #2,R0O sBACKUP 1 WORD :eovsca.a1 Gerveog11zpca ADDRESS #2.R2 *SET THE RANGE 15§ :0K TC SET FLAGS MoV NOP MoV 177520 000002 016366 15%: 012746 :...AND WORD COUNT. LSUNIT,R2 : GET NUMBER OF UNITS : TAKE AWAY 7 WORDS PER UNIT 108 FREE RO FRESIZ,RO RO.FREEHI 408 BDVPCR,R1 #1,R1 T23A #170000,L$HIME 002120 005550 000001 #M8186 #M8186,~(SP) #1,-(SP) 000004 #4,SP 003142 *STORE LAST FREE ADDRESS *SEE IF WE HAVE ONE *RETURN WITH FLAGS CLEAR *SAVE PCR CONTENTS *ADD ONE TO IT *GET BDV11 PCR ADDRESS *TRY TO WRITE TO IT *GET RESULTS :DID IT CHANGE? *NO, nusr BE 11/238 *SET THE FLAG :SUPERVISOR COULD BE WRONG *BR 40$ FOR RELEASE *TELL THE SYSTEM TYPE SP.RO CSPNTF : 208 408 1238 #M8189 #M8189,~(SP) C05641 000001 000004 :GET FIRST FREE ADDRESS *POINT TO LAST FREE ADDRESS tttl'l'ttt.t...ttttt'ttt.fl L 3323323232332 22%5 #BDVPCR,R2 (R2) BDVPCR,R3 R1,P3 177520 : GET 1ST FREE ADDRESS... (RO) ,FRESIZ PC . XNXM 000001 177520 003140 170000 RO MOV ADD 177520 02 2853 021012 2854 021014 2855 021020 2856 021022 021022 021026 021032 021034 021036 2857 021042 2858 PAGE 66 sRETURN SSET THE FLAG *BR 408 FOR RELEASE <TELL THE SYSTEM TYPE #1,-(SP) <> RO CSPNTF 408%: #4,SP PC :RETURN TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:«1 = SETUP KT11 MEMORY MANAGEMENT REGISTERS KTINIT : «SBTTL PAGE 67 KTINIT SEQ@ 0109 = SETUP KT11 MEMORY MANAGEMENT REGISTERS *ROUTINE TO INIT KT=11 003126 003130 002120 2874 021076 2875 021102 2876 021104 2877 021112 2878 021120 2879 021124 2880 021126 2881 021132 2882 021140 2883 021142 2884 021146 2885 021152 2886 021154 2887 021160 2888 2889 021162 2890 021166 2891 2892 021170 2893 2894 021174 2895 000004 02116 17757 002120 000177 000004 172340 077406 KTINIT: 001577 KTFLG KTENABLE Mov @#ERRVEC,RO CMP BLOS 000004 003126 003126 177740 CLR CLR 18: 000200 002000 MoV #2$ ,a#ERRVEC #SRO MoV BIC MOV CLR MOV MOV MOV LSHIME ,KTFLG #177 ,KTFLG zg.ilERRVEC #KIPARO,R1 #77406,-40(R1) RO, (R1)+ ADD CMP #200,R0 RO, #2000 MOV #177600,=(R1) BNE 1776900 LSHIME #1577 G 3R 1$ 98 012716 000002 021170 28 MOV #68$, (SP) 010037 000004 68: MOV RO, I¥ERRVEC 98: RTS PC 000207 RTI INIT >28K MEMORY FLAG INIT TEST >28K FLAG 301 ENOUGH MEMORY (>28Kk)? o. SAVE OLD ERR VEC P7R. SET ERR VEC PTR, GOT KT11? (TRAP _IF NO). YES. SET KT FLAG. RESTORE OLD ERR VEC PTR. RO = AR DATA. R1 = KI RESS PTR. SET DESCRIPTOR REG. SET KIPAR REG. BUMP AR DATA BY °'%K'’. AT “'1/0'7? No. YES. SET KTPAR7 FOR 1/0. ¢ SET UP RETURN ¢ RTI TO NEXT LOCATION RESTORE OLD ERR VEC PTR. TSV3 = GLOBAL AREAS KTINIT MACRO M1113 25-MAY-82 08:41 <« SETUP KT11 MEMORY MANAGEMENT REGISTERS 2897 ;e H %ggg %?’8(1) : , K SEQ 0110 SUBROUT INE TQ SET EXTENDED FEATURES SWITCH : INPUTS 2905 :OUTPUTS: s RS %60’9‘7, : The Extended Features Switch is set. 2908 - 2909 223}(1) 021176 005737 001020 012737 012737 012737 002224 2918 021234 2919 021240 ggg? 021244 012704 004737 000207 021250 010652 2917 021226 012737 2922 53%2 100206 021260 000006 TST BNE MOV MOV MOV EXTFEA 1$ #100206,CMDPKT #USMBK , CMDPK T +2 #6,CMDPKT+6 s s s s s 1$: [ [0]"] JSR RTS #CMDPKT R4 PC.WRTCHR PC s SET CMDPKT INTO R4 s DO IT : RETURN 3 COMMAND PACKET. = 021250 021252 021256 100010 021260 MOV %g%g 021250 . 2927 021250 2928 021252 2929 021254 gg;(‘) 021256 000000 000000 000000 000000 CMDPKT:: 0 0 0 0 2932 %g§ 2938 CURRENT UNIT NUMBER INVERT:: 2912 021176 2913 021202 2914 0212046 2915 021212 2916 021220 2935 021260 2936 021262 2937 021264 ' Requires that SOFINIT and WRTCHR have been done previous to call. 2905 2904 PAGE 68 3 000000 000000 000000 #100010, wSMBK <. +DR177774 IS SWITCH SET? ! YES,EXIT STAGE RIGHT!(or the next one outa town!') | WRT SUB=-SYS MEM CMD MSG BUF ADDR BYTE COUNT : INVERT THE SWITCH JMUST BE ON MOD & BOUNDRY. 21ST WORD 22ND WORD :3RD WORD 24TH WORD IS IS IS IS TSOS COMMAND. THE BUFFER LOW ADDRESS. THE BUFFER HIGH »DDRESS. THE BYTE/RECORD/FILE COUNT. WRITE SUB=SYSTEM MEMORY CHARACTERISTIC BLOCK. WSMBK:: 0 0 0 .EVEN J1ST WORD:: SEL 0 :2ND WORD:: SEL 2 :3RD WORD:: SEL 4 TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 KTINIT = SETUP KT11 MEMORY MANAGEMENT REGISTERS PAGE 69 N SEQ 01N * 4 : SUBROUTINE TO CHECK WETHER OR NOT WE'LL TEST NXM lNPUTS OUTPUtS g *ia § o 2951 021266 295 2953 021266 2959 021314 2960 021322 2961 021324 2962 021330 2963 021332 2964 021336 2965 021340 2966 021346 MEMCK:: 005037 005037 005037 005737 001407 023727 103406 SAVREG 003132 003134 003136 003142 002120 007777 021442 003140 18: 002120 005777 002120 003777 002120 021442 000077 003132 000410 012746 012746 001577 003136 28%: 4$: 138: 14$: 005454 000001 000004 CLR CLR CLR ST NXMFLG NXMLO NXMH] 1238 ng Lguxne.xrrrr JSR PC NXMTST ST BEQ T23A 48 CMP BLO JSR LSHIME , #3777 4 PC NXMTST CMP BLO JSR LSHIME #1577 148 PC _NXMTST BEQ 021442 2972 021374 2973 021376 2974 021402 2975 021410 2976 021414 2977 021416 2978 021420 021420 021424 021430 021432 021434 2979 021440 80 2981 The NXMFLG is set if we can test. The NXMLO and NXMHI addresses are setup. BR Sfl? BR 13$ %zgxne.osr77 13§ ADD #77 NXMHI B8R 15$ INC BR PRINTF NXMFLG 158 #NOMEM MOV MOV #NOMEM, = (SP) #1,-(SP) ADD #4,SP MoV TRAP 15$: 18 RTS sCLEAR THE TEST ADDRESS LO sCLEAR YHE TEST ADDRESS HI IS IT A :NO 11/7238? GSEATER THAN 128K SETUP THE ADDRESS sSET THE FLAG_AND EXIT #g IT A 11/723A? :GREATER THAN 96K sYES,23A/23B WITH 128K MEMORY :GREATER THAN 64K BUT LESS THAN 92K? INO, CHECK 24K sSETUP THE ADDRESS. sSET THE FLAG AND EXIT sGREATER THAN 24K BUT LESS THAN 64K? sM0, TELL THEM AND EXIT WITH FLAG CLEAR s{ETUP _THE ADDRESS sFO0L THE 11/02 & 11703 gt*TTHE FLAG X1 :NOP FOR PRINTOUT STELL THEM & EXIT #+«NO PRINT*txns SP.RO CSPNTF PC sRETURN 3 + : SUBROUTINE TO SETUP THE NXM ADDRESS FOR TESTING *OUTPUTS :NXMLO, NXMHI 2 2989 021442 2990 021446 2991 021452 2992 021456 sSAVE THE REGISTERS sCLEAR THE FLAG 013701 010102 002120 NXMTST: MOV 000177 MOV 000200 ADD BIC LSHIHE R1 ai 01 R1 né sSETUP WITH NXM ADDRESS :GET _TOP OF MEMORY ¢MAKE IT 1/0 BLOCK OR OTHER NXM sRESAVE RESULTS TSV3 = GLOBAL AREAS MACRO M1113 25-MAY-82 08:41 KTINIT = SETUP KT11 MEMORY MANAGEMENT REGISTERS 2993 2994 2995 2996 021474 2997 2998 2999 3000 021524 3001 021530 3002 021534 3003 3004 3005 3006 3007 021536 060006 +REPT 010137 000012 003134 042702 010237 000207 1777C0 003136 PAGE 69-1 6 SEQ 0112 R1 sPUT IN PLACE FOR XFER R1,NXMLO 10. R2 sSAVE TEST ADDRESS LOW #177700,R2 sDON'T WANT ILA! g%.NXHHl ENDMOD ki sPUT IN PLACE FOR XFER sSAVE TEST ADDRESS HIGH sRETURN 1 1 0O Voo~ TSV4 = MISCELLANEOU KTINIT = SETUP KT1 021536 021536 SECTIONS MACRO M1113 25-MAY-82 08:41 MEMORY MANAGEMENT REGISTERS TSV4:: J 9 PAGE 71 <TITLE TSV4L - MISCELLANEOUS SECTIONS BGNMOD TSVé SEQ 0113 TSV4 - HISCELLANEOUS SECTIONS PROTECTION TABLE MACRO M1113 18 19 021536 021536 20 021536 g; 021546 177777 177777 177777 25-MAY-82 08:41 LSPROT:: K9 PAGE 72 SEQ@ 0114 .SBTTL PROTECTION TABLE GNPROT LMWORD =1, =1, =1, =1 ENDPROT sNO DEVICE PROTECTION REQUIRED. TSV4 < MISCELLANEOUS SECTIONS INITIALIZE SECTION MACRO M1113 24 25 26 27 28 29 30 31 32 33 25-MAY-82 08:41 +SBTTL L9 PAGE 73 SEQ@ 0115 INITIALIZE SECTION 144 sTHE INITIALIZE SECTION CONTAINS THE CODING THAT IS PERFORMED ;AT THE BEGINN:NG OF EACH PASS. :IF “'START'' OR "RESTART'', SET QUICK-PASS FLAG AND BUS=-INIT. IF *'CONTINUE'’, NOTHING S REQUIRED. ¢ INSERT TEMPORARY JUMP TO ODT 0 021546 821546 005037 BGNINIT LSINIT:: 408: CLR EXTFEA 002224 CLR MOV CLR CLR CLR READEF MOV TRAP NXMFLG #EPRT1,EPRTSW SIFLAG KTENABLE RAMSI2 #EF.CONTINUE #EF .CONTINUE ,RO CSREFG BNCOMPLETE 1$ 002176 43 021574 005037 002300 021600 021604 012700 104447 000036 606 103023 46 021610 023737 002200 48 021620 005737 003106 50 021626 013701 002200 52 021634 005761 003172 56 021642 55 021650 56 021652 021652 021654 57 021656 021656 66 032761 001060 040000 002012 003172 012700 104447 021674 103404 76 012700 021704 103031 021702 021706 104447 104433 JUNIT IN RANGE? *BR IF NO. B8MI NXTU :BR IF YES BIT BNE EXIT #BIT14 ,ERTABL(R1) NXTU INIT CSEXIT TRAP 000035 18%: .WORD READEF HOV DUFLG UNITN,R1 R1 ERTABL (R1) SETU B8CC READEF MOV TRAP 000040 sDROPPED UNIT? :DROPPED? ;DO NOTHING IF *‘CONTINUE''. L10030-. #EF .NEW #EF .NEW,RO TRAP CSREFG BNCOMPLETE NXTU 103052 021666 021672 UNITN,LSUNIT 4 MOV ASL TST BEQ 104432 012700 BCC CMP BHIS TST 1$ :SET UP PRIMARY MESSAGE FOR REPLACEMENT *CLEAR "'SOFT INIT'* FLAG .CLEAR TEST ABOVE 28K FLAG sCLEAR RAM SIZE FOR RAMERR ROUTINE NXTU sTAKE NEXT UNIT IF NOT NEW PASS. #EF.START #EF .START RO CSREFG BCOMPLETE 2% BCS 2% READEF MOV #EF .RESTART #EF. RESTART F0 TRAP CSR% gNCOHPLETE 1% 000037 2$: BRESET TRAP ;1ST PASS, BUS-INIT... CSRESET :BUS RESET. TSV4 < MISCELLANEOUS SECTIONS INITIALIZE SECTION 65 021710 66 021714 67 021720 68 021724 69 70 7 72 021730 73 021734 74 021734 75 021742 MACRO M1113 005037 00 CLR CLR CLR CLR MOV MOV 005037 005037 003374 012737 76 021746 77 021752 002202 003172 000137 002202 022044 012737 005037 177777 002216 31$: 002200 002200 002200 002012 177777 003106 000240 K& 001747 105 022072 022072 106 022074 107 022076 108 109 022076 022076 104421 032700 001343 000001 PASRPT: 002216 000100 CLR JMP 002200 003106 002216 002204 SETU: TSTCNT FATFLG T23A 1238 #340,=(SP) #208,-(SP) 0.0D7 SKIPT #-1,QVP PC,ENVIRN PC.KTINIT #ERTABL ,RO (RO)+ RO, #ERTABE ;RETURN TO DEBUGGER ; ;@3ENTER THE DEBUGGE sCLEAR THE SUBTEST ’3KIPPER" s...QUICK VERIFY... sSET _ENVIRONMENT. sINITIALIZE KT MEMORY MANAGEMENT sCLEAR THE ERROR TABLE #=1,UNITN DEVCNT sINIT UNIT NUMBER... sCLEAR COUNT OF DEVICES RUNNING C$BRK UNITN uuxru LSUNIT SETU s.+«.AND SET NEXT UNIT NUMBER. #-1,DUFLG 118 NEWPAS sABORT, NO MORE UNITS. sHOW MANY UNITS SELECTED? sBR IF ONLY 1 sARE ANY STILL RUNNING? R IF NO sSHOULD WE PRINT STATISTICS R IF NO CSDRPT NEWPAS GPHARD UNITN,RO MOV UNITN.RO TRAP CSGPHRD BNCOMPLETE NXTU CLR INC MOV MOV sCLEAR FATAL ERROR COUNT :CLEAR 11/23A FLAG ;CLEAR 117238 FLAG :GO REPORT THE STATUS LSUNIT,#1 NEWPAS DEVCNT NEWPAS RO CSRFLA #1SR,RO BCC sNUMBER OF TESTS RUN IN PASS 30§ CMP BLOS ST BEQ RFLAGS TRAP BIT BR SEQ@ 0116 i QvP PASRPT CSDCLN TRAP 108: n9 PAGE 73-1 TRAP NOP DORPT 000741 103342 005037 005237 012001 010137 CLR CMP BNE 104424 013700 104442 MOV JSR JSR MOV 48: NEWPAS: MOV CLR NXTU: BREAK TRAP INC CMP BLO MOV BR DOCLN 11$: 002012 JMP CLR BLO 104444 023727 208: 30%: 003372 02 3 022070 25-MAY-82 08:41 NXTU DUFLG DEVCNT (RO)+,R1 R1,CSRADDR sGET UNIT N P-TABLE POINTER. sBR IF UNIT NOT AVAILABLE. sCLEAR 'DROPPED'* FLAG. sGET 1ST REGISTER ADDRESS. sADDRESS OF REGISTERS OF UNIT UNDER TEST WWWIWWNI NN NN NI NINININ) = b ad b b WN=O VNNV WN =0V ~NO N lHlTl;L %ECE%%?NEOUS SECTIONS ION MACRO M1113 25-MAY-82 08:41 N9 PAGE 73-2 SEQ@ 0117 (RO)+,R1 (RO) ,R2 R2,IPRI R1,IVEC 002206 016206 002210 sGET sGET sSET sSET #INTR, (R1)+ s++.VECTOR... s+«+AND PRIORITY. IPRI,(R1)+ 1$: QvP 5% VECTOR ADDRESS. INTERRUPT PRIORITY INTERRUPT PRIORITY, INTERRUPT VECTOR POINTER... :1ST PASS ?? :NO, SKIP THE PASS 1 STUFF. :1ST PASS, CHECK THAT DEVICE ADDRESSES ARE VALID, AND :THAT THE DISPLAY STATUS IS PROPERLY INITIALIZED. 013701 002200 100000 101416 104421 005766 002012 032700 001412 001000 013746 002200 022274 000002 Mov ASL 003172 BIS CLR CMP BLOS 000001 RFLAGS TRAP BIT U?ITN.R1 R #B{IIS.ERTABL(RI) EX sSAY DEVICE RUNNING sCLEAR ERROR EXTENSION FLAG. sARE WE TESTING MULTIPLE UNITS? :BR IF NO. :YES == GET OPERATOR FLAGS. #PNT RO ¢SHOULD WE PRINT UNIT #? sBR IF NOT. sPRINT THE UNIT # LSUNIT,# 108 RO CSRFLA 108 #PUNIT,UNITN UNITN,=(SP) #PUNIT,=(SP) #2,-(SP) SP,RO CSPNTF 062706 000006 #6,SP 005037 003110 002204 NODEV CSRADDR,R1 R1,R2 #TSSR,R2 PC,XNXM 000002 016366 012737 003110 177777 2% R1,NODEV 003106 #-1,DUFLG - sADDRESS OF FIRST REGISTER sSTART OF REGISTERS sADDRESS OF TSSR REGISTER sTEST BOTH CONTROLLER REGISTERS... s...AND BR IF ALL OK. sFLAG DEVICE AS NON-EXISTENT :DROP THIS UNIT. :FINALLY, SET CPU PRIORITY AND WE'RE DONE. 012700 104441 §s: 000000 L10030 104411 045 116 045 PUNIT: SETPRI Mov TRAP ENDINIT " TRAP .gegal #PRI00 #PRI00,RO sENABLE INTERRUPTS. C$SPRI CSINIT /ANINZArxxxx TESTING UNIT ZD2XA weewn/ ‘ e 10 MACRO M1113 25-MAY-82 08:41 PAG% I .SBTTL SEQ 0118 ADD AND DROP UNITS SECTIONS *4 + THE ADD=UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE TO BE (A) ADDED TO THE TEST LIST FOR THE FIRST TIME, - Nooonon wViorN g RO b o ® § W (- =] b LSAU:: 100000 040000 003172 003172 000006 o o o &H o 045 18: L10031: 104452 14e : MOV MOV TRAP ADD EXIT .WORD JWORD LASCIZ -EVEN RO,R1 R1 #100000,ERTABL (R1) #40000,ERTABL (R1) #1$,R0 RO,=(SP) GET UNIT TO BE ADDED (RO) MAKE IT A WORD INDEX SET THE “ACTIVE' BIT CLEAR THE "DROPPED'’ BIT #1$,-(sP) #2,=(SP) SP,RO CSPNTF #6,SP AU JSJ L10031~2-, /INYA UNIT %DYA ADDED/ ENDAU TRAP : : : : : UNUSED. CSAU THE DROP=-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE Jeae IS YRS WS SIS P : 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 THOSE el B md e b mmd e : WHICH ARE STILL ACTIVE. : UPON ENTRY, RO CONTAINS THE UNIT TO BE DROPPED. 177777 003106 140000 003172 000240 000240 022514 000002 022504 196 022510 022510 022512 MOV ASL BIS BIC PRINTF MOV : TO BE REMOVED FROM THE TEST LIST. R I JREN2E TRIXRRARNZ2S3I 116 BGNAU MOV 022410 000002 80 o =0000 O = bt d FREARFLRE OR (B) RE-INSERTED IF IT HAD BEEN PREVIOUSLY DROPPED. W ~ N~ NI3TE JIRRRARZS TSV4 = MISCELLANEOUS SECTIONS ADD AND DROP UNITS SECTIONS 000006 000167 000030 ——— LS$DU:: BGNDU MOV MOV #-1,DUFLG :g.n1 BIS #140000,ERTABL (R1) 240,240,240 PRINTF MOV ~#1$,RO RO,=(SP) MOV MOV #2,=(SP) SP_RO MOV TRAP ADD EXIT .WORD «WORD #1$,-(SP) CSPNTF #6,SP DU JSJMP L10032-2-. : SAY DROPPED ;2272277172 TSV4 = MISCELLANEOUS SECTIONS ADD AND DROP UNITS SECTIONS }g; 022514 045 116 199 022544 200 022544 022544 104453 .eegaz JINTA €10 PAGE 74~1 SEQ 0119 UNIT %D3A DROPPED/ ENDDU TRAP C$DU : AUTO-DROP CODE SECTION. 022546 204 0225 g 013705 002204 206 022556 004737 016240 208 022564 022564 022570 022572 022576 022600 022606 022606 022612 209 022614 210 022616 211 022620 212 022624 213 022624 022624 022624 18: J4e 2o§ 022546 207 022562 045 25-MAY-82 08:41 L10032: 581 205 022552 MACRO M1113 012703 103420 012727 000000 013727 005367 001375 005367 001367 005303 001357 004737 104461 000550 LSAUTO:: 108: 000372 002116 177772 177756 017172 . 208: L10033: BGNAUTO MOV CSRADDR,RS ;POINT TO DEVICE REGISTER PC,WAITF *WAIT FOR SSR TO SET MOV #360. RS BCS 20§ JSR DELAY MOV .WORD MOV LWORD DEC BNE DEC BNE DEC BNE JSR 250. #250.,(PC)+ O LSDLY, (PC)+ O ~6(PC) =4 =22(PC) .=~20 R3 108 PC, CKDROP ENDAUTO TRAP :ENOUGH TIME FOR 2400° REEL TO REWIND :LEAVE WHEN SSR IS SET ‘WAIT FOR .25 SECONDS ;BUMP COUNTER DOWN *KEEP GOING :TRY AND DROP UNIT : UNUSED. CSAUTO = et g e ———— MACRO M1113 25-MAY-82 08:41 PAGED172 TSV4 = MISCELLANEOUS SECTIONS CLEAN=UP AND REPORT CODING SECTIONS g}z .SBTTL 217 SEQ 0120 CLEAN=UP AND REPORT CODING SECTIONS 144 218 219 : THE CLEANUP CODING SECTION CONTAINS THE CODING THAT IS ; EXECUTED AT THE END OF EACH PASS (OR SUB-PASS). ; USE TO RETURY DEVICE UNDER TEST TO A NEUTRAL STATE. %5? 222 022626 022626 223 022625 224 022632 225 022636 2% 228 022640 229 022646 230 022652 231 022652 022652 o 022652 013705 005737 100405 002204 003106 012765 004737 000000 016240 104412 BGNCLN LSCLEAN:: MOV ST BMI 000002 MOV JSR 18: 28: ENDCLN L10034: TRAP CSRADDR,RS DUFLG 18 :POINT TO DEVICE REGISTER :*DROPPED'’ FLAG IS SET ON... :...AND GROSS CONTROLLER FAULT... #0,TSSR(RS) PC,WAITF ;D0 SOFT INIT :...DON'T TRY TO XCT CLEANUP CODE. CSCLEAN 144 233 ggg : THE REPORT CODING SECTION CONTAINS THE : "PRINTS'* CALLS THAT GENERATE STATISTICAL REPORTS. 236 022654 022654 237 022654 022654 022660 022664 022666 022670 238 022674 239 022676 240 022700 241 022702 242 022706 243 022710 244 022712 245 022714 246 022716 247 022722 248 022724 249 022730 022730 022732 022734 022740 022744 022746 022750 250 022754 251 022756 252 022762 253 022764 022764 022766 LSRPT:: 012746 012746 010600 104416 062706 010246 010346 010446 012704 005003 011402 001467 100066 032702 001015 042702 010246 010346 012746 012746 010600 104416 062706 000446 020227 001012 010346 012746 023116 000001 #DEVSUM #DEVSUM, = (SP) MOV SP,RO TRAP ADD MOV MOV MOV 003172 MOV 18: CLR MOV BEQ B8PL 040000 170000 023153 000003 000010 023223 PRINTS MOV MOV 000004 160000 BGNRPT 2s: BIT BNE BIC PRINTS MOV MOV MOV MOV MOV TRAP ADD BR CMP BNE PRINTS MOV MOV #,-(SP) CSPNTS #6,SP R2,=(SP) R3,=(SP) R&,=(SP) #ERTABL ,R4 : GET START OF ERROR TABLE. R3 (R4) ,R2 4 : CLEAR UNIT NUMBER ; GET ERROR TABLE ENTRY & TEST IT. : ZERO IF UNIT NOT RUN #81T14,R2 28 #5C7777.R2 #DEVONL,R3,R2 R2,=(SP) R3,=(SP) #DEVONL ,~(SP) #3,-(SP) SP,RO CSPNTS #10,SP 4 R2,#160000 3s #DEVNXR,R3 : : : : 4 R3,-(SP) #DEVNXR, = (SP) WAS UNIT DROPPED? BR IF YES GET ERROR COUNT FIELD PRINT : WAS UNIT NON=EXISTENT? : BR IF NO TSV4 = MISCELLANEOUS SECTIONS MACRO M1113 CLEAN-UP AND REPORT CODING SECT IONS 0 §772 012738 0004 020227 001 1 12746 }2746 ' 259 023042 000002 160001 38: 023305 000006 042702 170000 012746 012746 023366 000003 023 261 023072 062706 062704 000010 000002 563 023100 64 023104 265 023106 266 023110 267 023112 268 023114 023114 023114 269 270 271 023116 272 02 020427 103701 012604 012603 012602 003372 BR CMP BNE PRINTS MOV 308: e Y N S (elelele -3 b 3 d O #6,SP 4 #DEVDRO,R3,R2 R3,-(SP) #DEVDRO,=(SP) #3,=(SP) SP,RO CSPNTS ADD ADD #10,SP #2 R4 CMP BLO R4 ,#ERTABE 1$ MoV P #2,-(SP} R2,=(SP) MOV DEVSUM: DEVONL: DEVNXR: DEVNRD: DEVDRO: R3,=(SP) MOV INC ¢ WAS gNIT NOT READY AT STARTUP? #DEVNRD,R3 #AC7777.R2 TRAP 045 040 040 040 040 30§ BIC Mov MOV 104425 48 R2,#160001 SP,RO CSPNTS MOV L10035: SP.RO CSPNTS #6,SP MOV TRAP ADD BR PRINTS SEQ 0121 #2,=(SP) #DEVNR),~(S°) MOV 4$: E 10 PAGE 75-1 MOV MOV 000002 023052 023056 277 278 023436 279 280 MOV MoV TRAP ADD 000006 062706 045 04 25-MAY-82 08:41 R3 (SP)+,R4 (SP)+,R3 (SP)+,R2 : UNUSED. TRAP CSRPT ,ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ /AINXADEVICE STATUS SUMMARY:IN/ /XA UNIT XD32A ONLINE, ERRORS = XDAN/ /XA UNIT ZD3ZA DROPPED, NON-EXISTENT REGISTERIN/ /XA UNIT ZD3XA DROPPED, NOT READY AT STARTUPIN/ /XA UNIT %D3%A DROPPED, ERRORS = ZIDIN/ ENDMOD TSVSA = HARDWARE TESTS MACRO M1113 CLEAN-UP AND REPORT COCING SECTIONS 25-MAY-82 08:41 1 8 10 023436 . 023436 'A TSVS:: PAGE 77 F10 LTITLE TSV5A = HARDWARE TESTS BGNMOC TSVS SEQ 0122 TSVSA = HARDWARE TESTS 1: BUS RESET TEST MACRO M1113 26 27 25-MAY-82 08:41 PAGE 78 .SBTTL LS 1) LEIFRRIRZS O 0o TEST TEST SEQ 0123 1: BUS RESET TEST THIS TEST VERIF!ES THAT THE M7196 MODULE'S DEVICE REG!STERS ARE ACCESSIBLE ON THE BUS (SUBTEST 1) AND THEN CHECKS T THE BUILT=IN INITIALIZATION SELF-TEST MICRODIAGNOSTIC DID NOY F IND ANY BASIC PROBLEMS IN THE MODULE. AREAS OF LOGIC TESTED BY THE SELF-TEST SEQUENCE ARE AS FOLLOWS: ROM AND PIPELINE REGISTER, SEQUENCER, INTERNAL BUSES, 2901 MICROPROCESSOR, AND, RAM. THIS TEST INITIALIZES THE CONTROLLER BY ISSUING THE BUS INIT SIGNAL VIA A RESET INSTRUCTION, OR BY WRITING INTO THE TSSR REGISTER, WAITS A PERIOD OF TIME (TO ALLOW THE CONTROLLER S INITIALIZATiON MICRODIAGNOSTIC SEQUENCE TO BE COMPLETED), AND THEN CHECKS THE CONTENTS OF THE TSSR REGISTER. SUCCESSFUL INITIALIZATION IS INDICATED BY SUBSYSTEM READY (SSR) AND NEED BUFFER ADDRESS (NBA) BITS BEING SET (1) AND ALL OTHER BITS (EXCEPT A17 AND A16 AND OFL, WHICH ARE IGNORED FOR THIS TEST) BEING CLEAR (0). IF THE CONTENTS OF TSSR ARE NOT AS EXPECTED, AN ERROR REPORT IS ISSUED LISTING THE EXPECTED DATA, ACTUAL DATA, AND THE DISCREPANCIES. THE ERROR REPORT ANALYZES THE TSSR CONTENTS AND DISCERNS AND REPORTS ONE OF THREE POSSIBILITIES: 1. TSSR_CONTENTS ARE AMBIGUOUS (ANY OF BITS 11-14 ARE SET, OR STATES OF SSR AND SC BITS DO NOT CORRESPOND TO THE APPARENT ERROR CODE IN BITS 0-5): INDICATES THAT THE TSSR_CONTENT CANNOT BE TRUSTED. INDICATES A CATASTROPHIC CONTROLLER MALFUNCTION. THIS IS A FATAL ERROR (EXECUTION IS ABORTED). FIELD ACTION WOULD BE TO REPLACE THE M7196. IF THE M7196 ITSELF IS BEING DEBUGGED, THE PROGRAM SHOULD BE RESTARTED WITH LOOP ON ERROR ENABLED IN ORDER TO PROBE FOR THE PROBLEM. 2. SSR =0, SC = 0 AND THE ERROR CODE IN BITS 0-5 IS IN THE RANGE 17=13: THIS IS A FATAL ERROR. THE ERROR CODE 1S DECODED AND THE APPROPRIATE DESCRIPTION GIVEN. INDICATES THAT A SERIOUS PROBLEM EXISTS. BGNTST 023634 016500 000024 MOV JSR #TST1ID,RO PC,TSTSETUP Tl:: JASCII MESSAGE TO IDENTIFY TEST sDO INITIAL TEST SETUP CLR R3 :USE R3 AS FATAL ERROR FLAG MOV #20. ,LOOPCNT BGNSUB :PERFORM 20 ITERATIONS 111111117117 BE?{N1SUBTEST 111111111111 7 BRESET 016240 000002 82 023474 176277 JSR MOV MOV BIC :ISSUE A BUS RESET PC,WAITF TSSR(RS) ,R1 R1,R2 #*C<HIADDR!OFL>,R2 IRAP ($BSUB TRAP CSRESET ;WAIT FOR READY *GET THE CONTENTS OF TSSR sCONTENTS OF TSSR sTHESE BITS MAY BE SET 052702 02010 00140 25-MAY-82 08:41 002200 8IS CMP BEQ ERRDF PAGE 78-1 H10 . #SSR!NBA,R2 R1,R2 10 ERRNO,SFHERR,SFFMSG SEQ 0124 sREADY AND NEW DATA SHOULD BE SET s COMPARE EXPECTED TO RECEIVED ¢BRANCH IF COMPARE cREPORT A FATAL ERROR TRAP «WORD 108: INC ENDSUB R3 .WORD WORD ;SET THE FATAL ERROR FLAG CSERDF 101 SFHERR SFFMSG SNNNAAANAANANNANANY END SUBTEST NNANNLLLLLLLLWL L10037: TRAP CSESUB Lo POPNONININ) = b b cd d 8 VIV VYTV TN W =lelelelelelel=] o N NN N WWWWWWWWWW WWW W 1: BUS RESET TEST SRR% TEST MACRO M1113 . -*-,..’" TSVSA = HARDWARE TESTS TSVSA = HARDWARE TESTS TEST 1: BUS RESET TEST 95 023524 96 023526 97 023530 33 02353¢ 005703 001402 004737 005003 100 101 023536 023536 - 023536 104402 103 023540 104 0235446 105 023550 106 023554 107 023556 108 023562 109 023566 005065 004737 016501 010102 042702 052702 020102 110 023570 114 023572 023576 023600 115 023602 116 023604 117 023604 023604 02 118 119 120 023606 121 023610 122 023612 123 023616 124 023622 125 023624 126 023630 023630 023632 127 128 MACRO M1113 25-MAY-82 08:41 017172 208: &N —b 132 023634 133 134 023654 023654 023654 110 R3 cos PC, CKDROP R3 000002 016240 000002 176277 002200 CLR JSR MOV MOV BIC BIS CMP TSSR(RS) PC,WAITF TSSR(RS) ,R1 R1,R2 #~C<HIADDR!OFL>,R2 #SSR!NBA,R2 R1,R2 ERRDF ERRNO,SFIERR,SFFMSG BEQ 00364 012072 005203 108: INC 10§ R3 ENDSUB ST BEQ 017172 016446 208: 023454 408: 104432 000022 JSR JSR BCC JMP EXIT IRAP C$BSUB sWRITE TO ISSUE A SOFT RESET sWAIT FOR READY TO SET sGET REGISTER TSSR DATA sCONTENTS OF TSSR sTHESE BITS MAY BE SET sREADY AND NEW DATA SHOULD BE SET s COMPARE EXPECTED TO RECEIVED ¢BRANCH IF COMPARE sREPORT A FATAL ERROR sSET THE ERROR FLAG TRAP -WORD .WORD «WORD $BSRDF SFIERR SFFMSG SAVMAAAANAANNANNL END SUBTEST \\ALLLLLLLLL L10040: 104403 004737 004737 103002 000137 ;DID WE HAVE FATAL ERROR ? sBRANCH IF NOT :GO DROP THIS UNIT, IF ALLOWED sRESET FATAL ERROR FLAG " 001405 005703 001402 SEQ 0125 2727720707777, esg{u SUBTEST /77111111111 BGNSUB 208 PC.,CKDROP PC.TSTLOOP 408 T1LOOP TST TRAP CSESUB sFATAL ERROR DETECTED ? ¢BRANCH IF NOT sSEE IF TIME TO DROP UNIT sSHOULD WE DO ITERATIONS ? :BRANCH IF NOT sLOOP UNTIL COUNT EXPIRED sALL DONE THIS TEST TRAP CSEXIT «WORD L10036~. TRAP CSETST 4 }%3 131 ST BEQ JSR CLR PAGE 79 :LOCAL TEXT MESSAGES FOR TEST 111 104401 156 151 a TST1ID: .ASCIZ -EVEN ENDTST ‘Initialization® L10036: TSVSA = HARDWARE TESTS 2: WRAP DATA - HIGH BYTE 7 — D eh D D b b D =D b D D 73 87 91 25-MAY-82 08:41 023656 023656 023662 012700 004737 023674 023676 023702 023704 023706 023710 005004 012703 005703 001412 005003 004737 023716 010001 023666 023714 023720 023720 023722 023724 023726 193 023730 }gg 023732 196 023736 012737 103406 104455 000311 003646 012024 005203 005037 024324 016500 000024 177777 015764 002214 1. PART OF THE LS1=11 BUS INTERFACE SECTION OF THE M7196 MODULE: PART OF THE INPUT FILE (TSDB HIGH BYTE), PART OF THE OUTPUT FILE (TSSR HIGH BYTE AND TSBA, BOTH BYTES), PART OF THE DC00S TRANSCEIVER CIRCUITS (ADDRESS DECODER, BDAL DRIVERS, HIGH BYTE OF INTERNAL DAL BUS 255v53§§é AND BASIC PROGRAMMED I/0 CONTROL SEQUENCES 2. PART OF 2901 MICROPROCESSOR ELEMENTS (Q-REGISTER, REGISTER 0, ROTATE AND NEGATE FUNCTIONS; 4. BASIC MICROPROGRAM SEQUENCES. L Y AND SOURCE BUSES: THE _PROGRAM WRITES A TEST DATA BYTE INTO THE HIGH BYTE OF TSDB, WAITS FOR THE SSR BIT IN TSSR TO SET, THEN CHECKS THE CONTENTS OF BOTH TSBA AND TSSR. THE MODULE IS FUNCTIONING CORRECTLY IF DATA WRITTEN APPEARS IN BOTH BYTES OF TSBA AND THE FINAL CONTENT OF TSSR IS CORRECT (SAME AS AFTER INITIALIZATION EXCEPT FOR BITS 8 AND 9, WHICH SHOULD CONTAIN BITS 8 AND 9 OF THE DATA PATTERN WRITTEN. AN ERROR IS REPORTED AND A DESCRIPTIVE ANALYSIS GIVEN IF A DISCREPANCY IN TSBA OR TSSR IS DETECTED. THE ANALYSIS LISTS LIKELY FAULTY CANDIDATES FROM THE LOGIC ELEMENTS LISTED ABOVE. THE TEST IS REPEATED FOR ALL COMBINATIONS OF TEST DATA BYTES (0-377 OCTAL). BGNTST MOV JSR MOV T2L0OP: CLR MOV 58: ST BEQ CLR JSR BCS ERRDF 108: 2: WRAP DATA = HIGH BYTE THIS TEST VERIFIES OPERATION OF: MOV 002220 TEST SEQ 0126 W 9090900, 0,s 0, 3 023656 J 10 PAGE 80 .SBTTL © 90 90 90909090 95 %9090 90 90%0 90 %0 %090 %0 9090 %9 — e d cd e d ) o D D D - D ) Dl D ) D d ) D D d e D D e ) D D ) D cd e OO VYNNIV S BB NEB B SSSW O2FRRRAN2BIS ARNIITEIRHRARZECRIRNRUN LB SEIGGRENSE S TEST MACRO M1113 INC CLR BGNSEG #TST2ID,RO PC,TSTSETUP 12:: ;ASCII MESSAGE TO IDENTIFY TEST :DO INITIAL TEST SETUP RG #-1,R3 R3 108 R3 PC,SOFINIT :STARTING DATA PATTERN :DO INIT ON FIRST TIME THROUGH :DO WE NEED SOFT INIT *BRANCH IF NOT *DON'T NEED INIT NEXT TIME THRU :DO SOFT INIT OF CONTROLLER RO,R1 :SAVE CONTENTS OF TSSR #20. ,LOOPCNT 10§ ERRNO,SF IERR,SF IMSG R3 FATFLG :PERFORM 20 ITERATIONS :BR IF SOFT INIT = OK :DEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD 201 .WORD SFIERR .WORD SFIMSG ;FORCE SOFT INIT ON NEXT PASS :CLEAR FATAL ERROR FLAG $233333333>>> BEGIN SEGMENT >>>>>3>>>>>> TSVSA = HARDWARE TESTS TEST MACRO M1113 2: WRAP DATA - HIGH BYTE 8 023736 104404 198 023740 199 023744 110465 004737 201 023752 202 023754 206 023756 023756 023760 023762 023764 207 023766 208 023770 209 023774 023774 210 023776 211 024002 212 024006 213 024010 214 024012 215 024016 216 024020 217 024024 218 024030 219 024034 220 024036 221 024042 010001 010402 200 023750 222 024044 103411 104455 000312 024252 015464 005203 005237 104406 005737 001402 004737 010402 042702 000302 052702 016501 032701 001402 052702 020201 25-MAY-82 08:41 PAGE 80-1 TRAP 000001 016240 002220 017172 177774 15$: 208: 002200 000002 000100 000100 MOVB JSR R&,TSDBH(RS) PC.WAITF MOV MOV ERRDF RO,R1 R4 ,R2 ERRNO, T2SSR,EXPREC BCS 002220 001405 258: 15§ INC INC CKLOOP R3 FATFI.G ST BEQ JSR MOV BIC SWAB BIS MOV BIT BEQ BIS CMP FATFLG 20$ PC, CKDROP R4 .R2 #~C<BITO!BIT1>,R2 R2 #SSR!NBA,R2 TSSR(RS) .R1 #OFL,R1 258 : #OFL ,R2 < R2,R1 C ERRHRD ERRNO T2TSSR, EXPREC BEQ 308 226 024046 024046 024050 024052 024054 227 024056 228 024060 024060 229 024062 024205 015464 005203 231 024070 150402 BISB 150402 BISB R4.R2 ERRHRD ERRNO, T2TSBA, EXPREC 104456 000373 104406 016501 230 024066 005002 232 024072 000302 234 024076 235 024100 020102 001405 233 024074 239 024102 024102 024106 024106 024110 52? 024112 30$: 000000 104405 244 024116 245 024120 105204 001270 INC CKLOOP MOV TRAP CSERDF 202 T2SSR EXPREC TRAP CSCLP1 .WORD .WORD .WORD sFORCE SOFT INIT ON NEXT PASS sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET sWAS FATAL ERROR RECEIVED ? sBRANCH IF NOT sSEE IF TIME TO DROP UNIT sDATA PATTERN WRITTEN sCLEAR ALL BUT LOW 2 BITS ;BITS 8 AND 9 HAVE LOW DATA BITS sTHESE BITS MUST BE SET ALSO sGET THE CONTENTS OF TSSR :1S OFF=-LINE BIT SET ? sBRANCH IF NOT OFF=-LINE :SET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH sTSSR WASN'T CORRECT TRAP CSERHRD { TSBA(RS) ,R1 EXPREC TRAP cscLr CLR R2 SWAB R2’ sMOVE INTO TOP BYTE ;BOTH HALVES SHOULD BE SAME s COMPARE EXPECTED TO RECEIVED :ERROR IF NOT EQUAL INC R4.R2 R1.R2 358 R3 ENDSEG sDATA PATTERN WRITTEN sPRINT THE ERROR & EXPD/RECV TRAP WORD WORD .WORD sFORCE SOFT INIT ON NEXT PASS CSERHRD 204 T2TSBA EXPREC s €< Eflgoasg*'“ <<« TRAP INCB BNE 203 T2TSSR .WORD sFORCE SOFT INIT ON NEXT PASS :LOOP ON ERROR ? sGET TSBA REGISTER CONTENTS CMP BEQ 358: R3 C$BSEG sSET _MAINT MODE + WRITE DATA sWAIT FOR SSR TO SET soR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR ;DATA THAT WAS WRITTEN sDEVICE FATAL SSR FAILED TO SET .WORD «WORD 104456 000314 024140 015464 005203 242 024114 024114 - 024114 SEQ 0127 Ré& 58 sNEXT DATA PATTERN TO TEST ¢BRANCH TILL BACK TO ZERO CSESEG TSVSA = HARDWARE TESTS MACRO M1113 TEST 2: WRAP DATA = HIGH BYTE 246 024122 004737 016446 248 024130 249 024134 026134 250 024136 000137 023674 247 024126 103002 25-MAY-82 08:41 40$: X1 254 26 262 PC,TSTLOOP sSHOULD WE DO ITERATIONS ? JMP EXIT T2LO0P TST sLOOP UNTIL COUNT EXPIRED JALL DONE THIS TEST TRAP LWORD 40§ :BRANCH IF NOT CSEXIT L10041-. sLOCAL TEXT MESSAGES FOR TEST 124 124 116 127 260 024352 024352 . 024352 JSR i+ 5;% 255 0241 256 0242 257 024252 ggs 024324 L 10 SEQ 0128 BCC 104432 000214 PAGE 80-2 123 123 157 162 10% 123 040 141 ’ T2TSBA: T2TSSR: T2SSR: TST2ID: .ASCIZ .ASCIZ .ASCIZ .eegél ENDTST 104401 °'TSBA Incorrect After TSDB High Write® °'TSSR Incorrect After TSDB High Write' °‘No Sub-System Ready After TSDB High Write’ 'Wrap Data - High Byte' L10041: _ TRAP CSETST TSVSA = HARDWARE TESTS MACRO M1113 TEST 3: WRAP DATA - LOW BYTE 25-MAY-82 08:41 PAGE 81 .SBTTL TEST Mm10 SEQ@ 0129 3: WRAP DATA - LOW BYTE THIS TEST FURTHER VERIFIES OPERATION OF MANY OF THE SAME ELEMENTS TESTED IN TEST 2, AND ADDITIONALLY VERIFIES: LOW BYTE OF THE TSDB INPUT FILE REGISTER, 2. LOW BYTE OF INTERNAL DAL BUS DRIVERS ON THE DCO0S 3. BASIC FUNCTIONING OF PARTS OF THE RAM. TRANSCEIVER CIRCUITS, THE PROGRAM WRITES A TEST DATA BYTE INTO THE LOW BYTE OF TSDB, WAITS FOR THE SSR BIT IN TSSR TO SET, THEN CHECKS THE CONTENTS OF BOTH TSBA AND TSSR. THE MODULE IS FUNCTIONING CORRECTLY IF DATA WRITTEN APPEARS IN BOTH BYTES OF TSBA AND THE FINAL CONTENT OF TSSR IS CORRECT (SAME AS AFTER INITIALIZATION EXCEPT FOR BITS 3R?¥¥Ez' WHICH SHOULD CONTAIN BITS 8 AND 9 OF THE DATA PATTERN AN ERROR IS REPORTED AND A DESCRIPTIVE ANALYSIS GIVEN IF A DISCREPANCY IN TSBA OR TSSR 1S DETECTED. THE ANALYSIS LISTS LIKELY FAULTY CANDIDATES FROM THE LOGIC ELEMENTS LISTED ABOVE THE _TEST IS REPEATED FOR ALL COMBINATIONS OF TEST DATA . BYTES (0-377 OCTAL). 291 024354 024354 296 024354 297 024360 298 024364 BGNTST 012700 004737 025017 016500 000024 000001 015764 002220 002214 MOV #TST3ID,RO MOV #20. ,LOOPCNT JSR T3LOOP: CLR MOV ST 5$: BEQ CLR JSR BCS 108: PC,TSTSETUP R #1,R3 R3 108 R3 PC,SOFINIT 108 MOV ERRDF RO,R1 ERRNO, SF IERR, SF IMSG INC R3 FATFLG CLR BGNSEG 000000 016240 324 024454 R&,TSDB(RS) PC.WAITF MOV MOV RO,R1 R4 .R2 ERRDF sFORCE INIT ON NEXT PASS sCLEAR FATAL ERROR FLAG $223333355>>> BEGIN SEGMENT >>>>>>>>>>>> MOVB JSR BCS T3:: JASCII MESSAGE TO IDENTIFY TEST sDO INITIAL TEST SETUP sPERFORM 20 ITERATIONS sSTARTING DATA PATTERN sFORCE SOFT INIT ON FIRST PASS sSET IF INIT IS REQUIRED sBRANCH IF NO INIT NEEDED cASSUME NO INIT NEEDED ON NEXT LOOP :DO SOFT INIT OF CONTROLLER sBR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR ;DEVICE FATAL ERROR DURING INIT 15§ ERRNO,T3SSR,EXPREC sSET MAINT MODE ¢ WRITE DATA sWAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDATA THAT WAS WRITTEN ;DEVICE FATAL SSR FAILED TO SET TSVSA = HARDWARE TESTS MACRO M1113 TEST 3: WRAP DATA - LOW BYTE 024454 25-MAY-82 08:41 PAGE 81-1 SEQ@ 0130 104455 TRAP CSERDF .WORD +WORD .WORD 302 T3SSR EXPREC TRAP CSCLP1 TRAP gsgkflflb R3 sFORCE INIT ON NEXT PASS sSET THE FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET 002220 FATFLG 004737 017172 PC,CKDROP 177774 6 335 024522 336 024526 042702 000302 052702 016501 032701 002200 000002 000100 #SSR!NBA,R2 TSSR(RS) ,R1 #OFL ,R1 338 024534 052702 000100 340 024542 001405 #OFL ,R2 R2§R1 :DID WE GET FATAL ERROR ? sBRANCH IF NOT sDROP UNIT, IF DROP ALLOWED sDATA PATTERN WRITTEN sCLEAR ALL BUT LOW 2 BITS ;BITS 8 AND 9 HAVE LOW DATA BITS sTHESE BITS MUST BE SET ALSO sGET THE CONTENTS OF TSSR :1S DRIVE OFF=LINE ;BRANCH IF NOT OFFLINE sSET OFF=LINE IN EXPECTED sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH sTSSR WASN'T CORRECT 326 024466 005237 327 0%4472 024472 328 024474 005737 330 024502 332 024510 002220 FATFLG 15%: 0s 208: R4 R ‘5C<BITO!8!T1>.R2 25% 25$%: ERRHRD 30 ERRNO, T3TSSR,EXPREC «WORD .WORD 245 345 024554 005203 024556 347 024560 104406 016501 350 024570 351 024572 352 024574 353 024576 357 024600 024600 024602 024604 000302 150402 020102 001405 024606 ;gg 024610 308: 000000 361 362 024614 363 024616 364 024620 365 024624 366 024626 367 024632 024632 : 024634 36 369 MOV TSBA(RS) ,R1 sGET TSBA REGISTER CONTENTS INC 35%: 35§ ERRNO, T3TSBA,EXPREC R3 ENDSEG 104432 000210 sDATA PATTERN WRITTEN +MOVE INTO TOP BYTE :B0TH HALVES SHOULD BE SAME s COMPARE EXPECTED TO RECEIVED :BR IF ERROR NOT EQUAL sPRINT THE ERROR & EXPD/RECV TRAP CSERHRD 100008: R4 5$ 016446 024372 PC,TSTLOOP 408 40$: sFORCE INIT ON NEXT PASS W0 EXPREC 304 T3TSBA s €<<<CC<<<<< END SEGMENT <<<<<<<<<<<<< 104405 105204 001279 004737 103002 000137 CscLP1 sFORCE INIT ON NEXT PASS :LOOP ON ERROR ? .WORD .WORD 360 024612 024612 TRAP R3 ERRHRD 104456 000460 024636 015464 005203 EXPREC INC CKLOOP R2 R4 ,R2 R2 R4 ,R2 R1.R2 T3TSSR W0 T3L00P ST TRAP JNEXT DATA PATTERN TO TEST sALL DONE WHEN BACK TO ZERO sSHOULD WE DO ITERATIONS ? JBRANCH IF NOT sLOOP UNTIL COUNT EXPIRED sALL DONE THIS TEST TRAP «WORD CSESEG CSEXIT L10042-. TSVSA = HARDWARE TESTS MACRO M1113 TEST 3: WRAP DATA - LOW BYTE 25-MAY-82 08:41 g;? BN SEQ 0131 ;LOCAL TEXT MESSAGES FOR TEST 37 37§ 024636 374 024702 375 024746 376 025017 377 124 1264 116 127 378 025044 025044 379 025044 380 PAGE 81-2 123 123 157 162 ' 10§ T3TSBA: .ASCIZ °'TSBA Incorrect After TSDB Low Write' 123 040 161 T3TSSR: .ASCIZ T3SSR: .ASCIZ TST3ID: .ASCIZ .EVEN ENDTST 104401 'TSSR Incorrect After TSDB Low Write' °'No Sub-System Ready After TSDB Low Write® ‘Wrap Data = Low Byte' L10042: TRAP CSETST TSVSA = HARDWARE TESTS TEST &: RAM TE ST MACRO M1113 25-MAY-82 08:41 PAGE 82 .SBTTL 383 TEST cn SEQ 0132 4&: RAM TEST THIS TEST VERIFIES THAT ALL LOCATIONS OF THE RAM ON THE M7196 CAN PROPERLY STORE AND READ BACK ALL DATA PATTERNS, AND THAT EACH RAM LOCATION IS UNIQUELY ADDRESSED (I1.E., THAT ONE AND ONLY ONE _LOCATION IS ACCESSED BY ANY PARTICULAR ADDRESS). THESE TESTS ARE PERFORMED BY THREE SUBTESTS, DESCRIBED BELOW. A BYPRODUCT OF THESE TESTS IS A VERIFICATION OF TWO REGISTERS IN Igg 2901 AND THE CAPABLITY OF THE 2901 TO CORRECTLY PERFORM AN TEST & SUBTEST 1: - THIS SUBTEST VERIFIES EACH RAM LOCATION BY FIRST PLACING THE M7196 INTO MAINTENANCE MODE BY WRITING INTO THE LOW BYTE OF TSDE 3N97;9E?°E$2{9RH1N6 THE FOLLOWING SEQUENCE FOR EACH ADDRESS 1. 2. THE ADDRESS TO BE TESTED IS LOADED INTO THE TSDB (VIA A WORD WRITE). THE ADDRESSED RAM LOCATION IS WRITTEN, THEN READ INTO THE LOW BYTE OF TSBA, BY WRITING A DATA BYTE INTO THE LOW BYTE OF TSDB. 3. b O d O d CONOAWVSWN 411 THE DATA PATTERN ORIGINALLY WRITTEN; REPORTED AS AN ERROR. A DISCREPANCY IS THE ADDRESS OF THE LOCATION BEING TESTED IS AGAIN WRITTEN INTO TSDB (WORD WRITE), TO CAUSE THE LOCATION UNDER TEST TO AGAIN BE READ INTO THE LOW BYTE OF TSBA. ;gsok?goflvff OF TSBA IS AGAIN CHECKED AND DISCREPANCIES —b e e FoF W O o 4. THE LOW BYTE OF TSBA IS CHECKED TO SEE IF IT CONTAINS 419 5. 6. 428 429 025046 430 431 025046 432 437 025050 438 025054 429 025060 THE CONTENT OF TSSR IS CHECKED; SETTING OF THE SC BIT IS IGNORED. OTHER DISCREPANCIES IN TSSR ARE REPORTED. T4:: BGNSUB 11NNy BE$£N1SUBTEST Hiereeeey 104402 012700 004737 012737 IT SHOULD CONTAIN THE SUM OF THE HIGH AND LOW BYTES LAST WRITTEN INTO ;gggLeg A WORD. A DISCREPANCY IS REPORTED AS A 2901 BGNTST 025046 025046 025046 THE HIGH BYTE OF TSBA IS CHECKED; TRAP 026356 016500 000005 002214 MOV JSR MoV #TST4ID.RO PC,TSTSETUP #5,LOOPCNT 1 MESSAGE TO IDENTIFY TEST :ASCIT ;D0 N TleL TEST SETUP sPEKFD R® 5 ITERATIONS csBsuB TSVSA = HARDWARE TESTS TEST 4&: RAM TEST 440 025066 461 025066 442 025072 004737 103405 010001 MACRO M1113 015764 208: 25$%: 110265 004737 016501 120102 001404 025160 104456 000622 026214 015464 9 025170 104405 470 025172 471 025174 472 025200 473 025202 005204 020427 001347 0252C2 e 025204 104410 000102 475 025206 005702 016326 000000 016326 PC,SOFINIT MOV RO,R1 CLR JSR CLRB 016326 000000 sFATAL ERROR TSSR WAS NOT OK R4 PC,CHKTSSR TSDB(RS) TRAP +WORD .WORD . WORD sSET RAM ADDRESS AT ZERO sWAIT FOR READY, NON-AMBIGUOUS sSET INTO MAINTENANCE MODE TRAP MOVB RZ TSDB(RS) CMPB 8 ERRHRD :CONTENTS OF TSSR REGISTER PC,CHKTSSR R4,TSDB(RS) PC,CHKTSSR PC,CHKTSSR TSBA(RS) ,R1 R1,R2 308 ERRNO, TSBAM2 ,EXPREC ;EXPECTED DAYA FROM WRAP=AROUND :WAIT FOR READY, WUN-AMR1GUOUS :LOAD ADDRESS INTO TSD :WAIT FOR READY, NON-AMBIGLOUS :LOADS DATA_INTO RAM LOCATION :WAIT FOR READY, NON-AMBIGUOUS :READS WRAP DATA :DOES WRITTEN(WRAP) = READ :BR_IF OK, THEY ARE EQUAL DATA NOT WRAPPED CORRECTLY .WORD INC CMP R4 R4 ,#10000 ESCAPE SUB BNE 25$ TRAP 408: 010000 016326 000000 a4 R2 TRAP MOV R&.TSDB(RS) EXPREC JSR MOV (MPB PC.CHKTSSR TSBA(RS) ,R1 R1,R2 sWAIT FOR READY, NON-AMBIGUOUS ERRHRD ERRNO, TSBAM2, EXPREC sWRITTEN DATA NOT = TO READ TRAP 45% CSESEG (SESCAPE L10044~. :SET BACK10 7777 :GET _DATA PATTERN BACK IN SHAPE :WAIT FOR READY, NON-AMBIGUOUS CKLOOP CSERHRD 402 TSBAM2 sCLEAR OUT RZ HlGH BITS PC.CHKTSSR BEG 458: az DEC MOVB JSR C$BSEG sNEXT ADDRESS sEND OF RAM MEMORY CHECK sLOOP TILL ALL RAM WRITTEN sDON'T CONTINUE IF ERROR ON WRITE «WORD CLR SFIERR SFIMSG s €<<LCLLLLLLLLKL snoogggnenr <<LLLLLLLLLLL ENDSEG L 010000 CSERDF 401 $23333>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> Ré,.R2 MOV : 308 005304 015464 ERRNO, SF IERR, SF IMSG .WORD .WORD 076326 025246 488 025250 ;D0 INITIALIZE ON CONTROLLER :BR IF INIT WAS OK MOvB JSR SEG 0133 20§ BGNSEG JSR MOV JSR 000000 PAGE 82-1 JSR BCS 104404 458 025140 459 025144 460 025150 461 025154 462 025156 025164 66 T4LOOP: ERRDF 016326 000000 3 025120 25-MAY-82 08:41 :LOAD UP RAM ADDRESS POINTER sREAD RAM CONTENTS BACK sCHECK WITH DATA WRITTEN :BR IF OK, DATA IN = DATA OUT :SCOPE LOOP .WORD .WORD CSERHRD 403 TSBAM2 EXPREC TSVSA = HARDWARE TESTS TEST 4&: RAM TEST 025250 489 025252 490 025256 491 025260 492 025262 493 025264 494 025266 498 025270 025 270 025272 0252;4 025276 499 025300 025300 500 025302 ggg 025304 503 025306 025306 o 025306 104406 116501 01040 00030 06040 12010 1404 104456 000624 026124 015454 104406 005204 002342 MACRO M1113 25-MAY-82 08:41 000001 Move MoV SWAB ADD CMPE BEQ ERRHRD 508: DEC BGE EN TSBAH(RS) ,R1 R4 ,R2 R2 R1R3 50 i ERRNO,M2901, EXPREC CKLOOP ENDSUB 104403 PAGE 82-2 SEQ 0134 sHIGH BYTE READ OF TSBA sDATA PATTERN WRITTEN cHIGH TO LOW cscLPt sTOTAL OF BYTES IN LOW BYTE sSUM OF BYTES WRITTEN TO TSDB = TSBAH :BR IF OK, THEY SHOULD BE :2901 PROBLEM ADDER :SCOPE LOOP R4 408 TRAP TRAP -WORD Egskflflb +WORD M2901 TRAP cscLP WORD sDROP DATA COUNTER (PATTERN) sNOT AT LOC. ZERO YET EXPREC S \VVANAANAANNLY END SUBTEST \NAANNNLL L10044 TRAP CSESUB TSVSA = HARDWARE TESTS 4&: RAM TEST 25-MAY-82 08:41 PAGE 83 11 SEQ 0135 2220707777, segzu SUBTEST /77711111111 BGNSUB " TEST &, SUBTEST 2 IRAP C$BSUB o THIS SUBTEST WRITES RAM WITH ALL ZEROS THEN WALKS AN ALL ONES WORD DOWN THROUGH MEMORY o OoOVWVSHWNN=0O (W IV IV LV [V IV LV, IV, ] [ P e TEST MACRO M1113 015764 PC,SOF INIT 20§ RO.R1 ERRNO, SF IERR, SF IMSG sD0 INITIALIZE ON CONTROLLER :BR IF INIT WAS OK cCONTENTS OF TSSR REGISTER :FATAL ERROR TSSR WAS NOT OK TRAP +WORD 20$: 016326 000000 526 025346 025346 527 528 025350 R2 R4 PC,CHKTSSR TSDB(RS) 25%: sSTARTING RAM ADDRESS = 0 sWAIT FOR READY, NON-AMBIGUOUS sSET INTO MAINTENANCE MODE TRAP 004737 016326 000000 PC.CHKTSSR R4, TSDB(RS) PC,CHKTSSR PC,CHKTSSR 000000 TSBA(RS) ,R1 R1,R2 ERRHRD 543 025416 544 025420 225 025424 6 547 025426 STEST DATA = 0 308: 308 ERRNO, TSBAM2,EXPREC ENDSEG INC CMP 010000 005304 BNE 35%: 016326 408: sLOAD ADDRESS INTO TSDB sWAIT FOR_READY, NON-AMBIGUOUS :LOADS DATA INTO RAM LOCATION sWAIT FOR READY, NON-AMBIGUOUS sREADS WRAP DATA sDOES WRITTEN(WRAP) = READ ? :BR IF OK, THEY ARE EQUAL :DATA NOT WRAPPED CORRECTLY TRAP .WORD .WORD .WORD 100008 : TRAP R4 R4, #10000 sNEXT ADDRESS R4 sSET BACK T0 7777 sSET _TO ALL ZEROS sWAIT FOR READY (SSR) TO SET 258 T%BA(RS R1 CMPB R1,R2 BEQ Eagkflflb TSBAM?2 EXPREC 5 €<<<CCCCC<<<< END SEGMENT <<<<<<<<<<<<< DEC CLR JSR MoV JSR MoV CLR C$BSEG sWAIT FOR READY, NON-AMBIGUOUS 104405 005204 020427 001350 SFIERR SFIMSG $2333>3>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> R2,TSDB(RS) 02 540 025414 541 025414 025414 542 025414 .WORD .WORD CSERDF 405 R2 PC,CHKTSSR R4,TSDB(RS) PC,CHKTSSR 438 sEND OF RAM MEMORY CHECK. :BR, MORE RAM TO GO :LOAD UP THE ADDRESS FOR RAM sWAIT FOR READY (SSR) TO SET sREAD THE RAM CONTENTS BACK sLOOKING FOR 000000 (EXPECTED) ;BOiH_SHOULD BE 00000000 BINARY :BR, IF DATA IS GOOD CSESEG - 534 573 025536 574 025542 575 025546 576 025552 577 025556 578 025560 579 025562 580 025564 581 025566 585 025570 00 587 025602 588 025604 589 590 025606 025606 025606 591 MACRO M1113 25-MAY-82 08:41 ERRHRD PAGE 83-1 ERRNO, TSBAM3 ,EXPRE( SEQ@ 0136 sCHARACTERISTICS DATA NO;RC ORRECT AP 407 .WORD EXPREC .WORD 000377 000000 016326 000000 016326 000000 438: MOV MOV JSR MOVB JSR MOV (MP8 BEQ ERRHRD 45%: 016326 000000 016326 000001 45§ ERRNO, TSBAM2,EXPREC CKLOOP PC,CHKTSSR R4 . TSDB(RS) PC.CHKTSSR TSBAH(RS),R1 R4 ,R3 R3 Ré,R3 R1.R3 ERRHRD ERRNO,M2901,EXPREC 508 CKLOOP DEC BGE ENDSUB sSET ALL ONES WORD sLOAD UP RAM ADDRESS POINTER ;WAIT FOR READY, NON-AMBIGUOUS sWRITE DATA INTO RAM sWAIT FOR READY, NON-AMBI GUOUS sCHECK WITH DATA WRITTEN :BR IF OK, DATA IN = DATA OUT sWRITTEN DATA NOT = TO READ TRAP .WORD .WORD .WORD CSERHRD 408 TSBAMZ2 EXPREC TRAP CSCLP1 sWAIT FOR _READY, NON-AMBI GUOUS sWORD WRITE TO SET UP ADDRESS sWAIT FOR READY, NON-AMBIGUOUS sHIGH BYTE READ OF TSBA :DATA PATTERN WRITTEN sHIGH TO LOW sTOTAL OF BYTES IN LOW BYTE sSUM OF BYTES WRITTEN TO TSDB = TSBAH ¢BR IF OK, THEY SHOULD BE 22901 PROBLEM ADDER :SCOPE LOOP R4 408 TSBAM3 sREAD RAM CONTENTS BACK :SCOPE LoOP JSR MOV JSR MOVB MOV SWAB ADD (MPB BEQ 50$: #000377,R2 R&,TSDB(RS) PC.CHKTSSR R2.TSDB(RS) PC.CHKTSSR TSBA(RS) ,R1 R1,R2 CSERHRD WORD TRAP CSERHRD .WORD .WORD .WORD 409 M2901 EXPREC TRAP cscLP :DROP RAM ADDRESS POINTER sNOT AT LOC. ZERO YET S VAANNAAARANAANNNL END SUBTEST \\ANNLNLLLLWLWL L10045: TRAP CSESUB L 566 20 567 025522 Nbl\)g 559 025460 025460 025462 025464 025466 560 025470 WOO: oW NN SO | TSVSA = HARDWARE TESTS | TEST 4: RAM TEST TSVSA = HARDWARE TESTS TEST 4&4: RAM TEST MACRO M1113 25-MAY-82 08:41 593 59 025618 PAGE 84 BGNSUB SEQ 0137 22222227777, ssgzussuaresr 111111111111 " 104402 IRAP ($BSUB TEST &4, SUBTEST 3 THIS SUBTEST WRITES RAM WITH ALL ONES THEN WALKS A ZERO WORD DOWN THROUGH MEMORY 004737 103405 010001 015764 PC,SOFINIT 20§ RO,R1 ERRNO, SFIERR, SF IMSG 104455 000632 177777 612 025650 613 025650 . 025650 61 615 025652 016326 000000 : 208 :177777.!2 PC,CHKTSSR TSDB(RS) 25$: sSET DATA AT ALL ONES sSET RAM ADDRESS AT ZERO sWAIT FOR READY, NON-AMBIGUOUS sSET INTO MAINTENANCE MODE TRAP 016326 000 PC,CHKTSSR R4, TSDB(RS) PC,CHKTSSR PC,CHKTSSR BEQ ERRHRD 0 627 025716 628 025716 025716 025716 308: 010000 016326 000377 640 025754 sFATAL ERROR TSSR WAS NOT OK TRAP -WORD .WORD .WORD 000000 016326 35%: 40$: E?SRDF SFIERR SFIMSG 22333>33>>5>>> BEGIN SEGMENT >>>>>>>>>>>> R2,TSDB(RS) 629 630 025720 631 025722 63% 025726 63 634 025730 025730 ;DO INITIALIZE ON CONTROLLER ¢BR IF INIT WAS OK sCONTENTS OF TSSR REGISTER TSBA(RS) ,R1 §1.R2 0s ERRNO, TSBAM2,EXPREC sWAIT FOR READY, NON-AMBIGUOUS sLOAD ADDRESS INTO TSDB ;WAIT FOR _READY, NON-AMBIGUOUS sLOADS DATA INTO RAM LOCATION sWAIT FOR READY, NON-AMBIGUOUS sREADS WRAP DATA sDOES WRITTEN(WRAP) = READ ? sBR _IF OK, THEY ARE EQUAL :DATA NOT WRAPPED CORRECTLY TRAP .WORD .WORD .WORD ENDSEG s €€ 10000$: TRAP R4 R4, #10000 258 sNEXT ADDRESS ;END OF RAM MEMORY CHECK ;E7, MORE RAM TO GO ESCAPE sus sNO CHECK IF WRITTEN INCORRECTLY R4 MoV CLR MOV :gbosrr.az JSR JSR PC,CHKTSSR R4, TSDB(RS) PC,CHKTSSR £¥§RHRD TSBAM2 EXPREC L<<<<< END SEGMENT <<<<<<<<<<<<< INC CMP oNE DEC C$BSEG TRAP :SET BACK TO 7777 WORD sWAIT FOR READY, NON-AMBIGUOUS sSET UP EXPECTED DATA REGISTER sCLEAN OUT REGISTER sSELECT ADDRESS IN RAM sWAIT FOR READY (SSR) CSESEG CSESCAPE L10046~. TSVS5A = HARDWARE TESTS TEST &: RAM TEST 641 025760 ? MACRO M1113 25-MAY-82 08:41 000000 MOV CMPB BEQ ERRHRD PAGE 84-1 TSBA(RS) ,R1 R1,R2 438 ERRNO, TSBAM3, EXPREC SEQ 0138 sPICK UP RAM CONTENTS c1S MEMORY STILL ALL ONES sBR, IF OK (ALL ONES) sMEMORY CHANGED AFTER ALL ONES WRITE TRAP LWORD +WORD 8 026000 649 026002 650 026006 005002 010465 737 43$: R2 R4, TSDB(RS) PC.CHKTSSR R2.TSDB(RS) PC.CHKTSSR TSBA(RS) ,R1 R1,R2 45§ ERRNO, TSBAM2 , EXPREC «WORD sSET UP NEW EXPECTED sLOAD UP RAM ADDRESS POINTER ;WAIT FOR READY, NON-AMBIGUOUS ¢WRITE DATA INTO RAM 016326 000001 CKLOOP JSR MOovB sCHECK WITH DATA WRITTEN :BR IF OK, DATA IN = DATA OUT :WRITTEN DATA NOT = TO READ TRAP MOV SWAB ADD CMPB BEQ ERRHRD 02 672 026076 026076 673 026100 6;? 026102 6 676 026104 026 508: 104406 005304 001315 :SCOPE LOOP PC,CHKTSSR TSBAH(RS) ,R1 R2,R3 R3 R2.R3 R1£R3 50 ERRNO,M2901,EXPREC DEC BNE Ré 408 ENDSUB EXPREC TRAP CSCLP sTOTAL OF BYTES IN LOW BYTE SUH OF BYTES WRITTEN TO TSDB = TSBAH BR IF OK, THEY SHOULD BE 2901 PROBLEM ADDER TRAP WORD <WORD .WORD 680 026114 120 026122 104432 000256 TRAP S\VVAANNAAAMNNNANL END SUBTEST \\\NNLLLLLL L10046: 63$: JSR 8CC JMP EXIT PC,TSTLOOP 638 T4LOOP ST CSESUB ;D0 WE NEED TO ITERATE TEST ? :BRANCH IF NOT sEXECUTE AGAIN :ALL DONE THIS TEST TRAP .WORD i+ SEXIY L10043- 127 NS 040 — sLOCAL TEXT MESSAGES FOR TEST — o 688 026276 025066 oo 682 683 684 685 686 026124 016446 CSERHRD 414 M2901 EXPREC ;DROP RAM ACDRESS POINTER sNOT AT LOC. ZERO YET TRAP 2 000137 CSERHRD 413 TSBAMZ2 .WORD sWAIT FOR READY, NON-AMBIGUOUS sHIGH BYTE READ OF TSBA sDATA PATTERN WRITTEN ¢HIGH TO LOW :SCOPE LOOP CKLOOP EXPREC ;WAIT FOR READY, NON-AMBIGUOUS sREAD RAM CONTENTS BACK WORD .WORD 45$: CSERHRD 412 TSBAM3 12 3 16 2 15 1 M2901: ASCIZ TSBAM?: ASCIZ TSBAM3: .ASClZ ' TSBA vahrgzte Not Sum of Last TSDB Write (2901 Error)* ' Write to B Not Equal to Read of TSBA Low Byto 'Write To RAM Location Modified Another Location® TSVSA = HARDWARE TESTS TEST &: RAM TEST 689 026356 690 691 026400 026400 026400 692 122 104401 MACRO M1113 101 25-MAY-82 08:41 115 TST4ID: .ASCIZ .EVEN ENDTST PAGE 84-2 SEQ 0139 ‘'RAM verification' L10043: TRAP CSETST TSVSA = HARDWARE TESTS MACRO M1113 TEST 5: SECOND INITIALIZATION TEST 25-MAY-82 08:41 .SBTTL B0 %0 0090909090 909090909090 90%9090%0%00;00%0000090%:90000080000s0s08s0s0, n PAGE 85 TEST SEQ 0140 S: SECOND INITIALIZATION TEST THIS TEST VERIFIES THE SAME ELEMENTS AS DID INITIALIZATION TEST #1 AND ALSO CHECKS THAT CERTAIN PARTS OF RAM IS CLEARED TO ZERO AND THAT 2901 REGISTERS 10 AND 11 ARE ALSO CLEARED TO ZERO. THIS IS A CONFIDENCE CHECK OF A PART OF THE SELF-TEST SEQUENCE (I.E., THAT IT IS REALLY BEING EXECUTED). FOR EACH OF TWO SUBTESTS (ONE FOR INITIALIZING VIA A BUS INIT, THE OTHER FOR INITIALIZING BY WRITING INTO THE TSSR), THE FOLLOWING SEQUENCE 1S PERFORMED: " el +* ¢ i 1. EACH RAM LOCATION AND 2901 REGISTERS 10 AND 11 ARE SET TO ALL 1°'S BY USING WRITES INTO THE TSDB REGISTER (LOW BYTE AND MAINTENANCE MODE WORD WRITES). 2. THE CONTROLLER IS INITIALIZED AND THE VARIOUS CHECKS ON v v THE TSSR DESCRIBED IN INITIALIZATION TEST #1 ARE PERFORMED. 3. “#1°'S (377 OCTAL) ARE WRITTEN INTO THE LOW BYTE OF TSDB, WHICH SHOULD CAUSE RAM LOCATION O TO BE WRITTEN TO ALL 1'S SINCE 2901 REGISTERS 10 AND 11, SPECIFYING THE RAM ADDRESS, SHOULD BE 0. RAM LOCATION O IS VERIFIED BY WRITING A WORD OF ZEROS INTO THE TSDB. THE RESULTING LOW BYTE OF TSBA SHOULD CONTAIN ALL 1°S. 4. THE ENTIRE RAM IS SCANNED. LOCATION O SHOULD CONTAIN ALL 1'S AND THE REMAINING LOCATIONS, EXCEPT FOR THE MESSAGE BUFFER IMAGE AREA, SHOULD CONTAIN 0. DISCREPANCIES ARE REPORTED. AN ERROR AT THIS POINT IS MOST LIKELY DUE TO A ROM, PIPELINE OR SEQUENCER PROBLEM OR A TIMING PROBLEM. BGNTST 741 742 026424 026424 026424 743 744 026426 012737 027354 016500 000024 005037 002220 002214 #TSTSID,RO ;ASCII MESSAGE TO IDENTIFY TEST MOV #20. ,LOOPCNT :PERFORM 20 ITERATIONS CLR FATFLG PC,TSTSETUP :DO INITIAL TEST SETUP :CLEAR THE FATAL ERROR FLAG BGNSUB 7, as?§n1suarest 110011110111 " 104402 004737 103404 015764 JSR BCS ERRDF 104455 026442 750 026444 MOV JSR T5LOOP: . 000765 003646 012024 012702 177777 108: MOV PC,SOF INIT ERRNO, SFIERR, SF IMSG #-1,R2 ($BSUB :D0 A SOFT TO START 10§ | TRAP . :BRANCH IF 0.K. *REPORT ERROR AND DROP DRIVE TRAP ;ALL ONE DATA PATTERN .WORD .WORD .WORD CSERDF 501 SFIERR SFIMSG TSVSA = HARDWARE TESTS MACRO M1113 TEST S: SECOND INITIALIZATION TEST 751 026450 752 026452 005004 004737 016326 754 026462 755 026466 756 026472 004737 010465 737 016326 000000 016326 758 026502 759 026506 005204 020427 753 026456 757 026476 105065 110265 760 026510 003762 763 026520 104433 004737 016501 761 026512 026512 762 026514 764 026524 765 026526 010102 042702 768 026540 001406 026542 026544 026546 026550 104455 000766 003701 012072 766 026532 767 026536 772 026542 773 026552 774 026556 026556 775 026560 026560 026562 776 026564 777 026570 778 026576 779 026600 052702 020102 005237 000000 105065 004737 005065 15$: 000000 000002 ;STARTING RAM ADDRESS ;WAIT FOR READY, NON-AMBIGUOUS JSR MOV JSR PC,CHKTSSR R&.TSDB(RS) PC.CHKTSSR :WAIT FOR READY, NON-AMBIGUOUS *SET THE NEXT RAM ADDRESS ;WAIT FOR READY, NON-AMBIGUOUS CLRB :LOAD TEST DATA BLE 15§ :BRANCH TILL ALL DATA WRITTEN JSR PC.CHKTSSR TRAP ;WAIT FOR READY, NON=-AMBIGUOUS MOV BIC R1,R2 #~C<HIADDR!OFL>,R2 :CONTENTS OF TSSR *THESE BITS MAY BE SET BEQ 208 BIS CMP 20$: 016326 000000 016326 000000 *SET MAINTENANCE MODE R2.TSDB(RS) ERRDF 002220 TSDB(RS) MOVB MOV 176277 002200 SEQ 0141 R4 PC,CHKTSSR BRESET 016326 PAGE 85-1 CLR JSR INC CMP 007777 104406 104410 000170 004737 25-MAY-82 08:41 INC CKLOOP R4 RG #7777 TSSR(RS) ,R1 #SSR!NBA,R2 R1,R2 ERRNO,SFHERR,SFFMSG FATFLG ESCAPE SUB JSR PC,CHKTSSR CLRB JSR CLR TSDB(RS) PC,CHKTSSR TSDB(RS) :NEXT ADDRESS TO TEST :COMPARE TO LAST ADDRESS *ISSUE A BUS RESET *GET THE CONTENTS OF TSSR *READY AND NEW DATA SHOULD BE SET *COMPARE EXPECTED TO RECEIVED *BRANCH IF COMPARE JREPORT A FATAL ERROR JSET FATAL ERROR FLAG TRAP .WORD .WORD .WORD :LOOP ON ERROR IF FLAG SET TRAP ;EXIT IF FATAL ERROR DETECTED TRAP .WORD :WAIT FOR SSR TO SET 012702 004737 000377 016326 MOV JSR #377.R2 PC,CHKTSSR : :WAIT FOR READY, 783 026620 004737 016326 JSR PC,CHKTSSR sWAIT FOR READY, NON-AMBIGUOUS 785 026630 004737 016326 JSR PC.CHKTSSR :WAIT FOR READY, NON-AMBIGUOUS 787 026640 120102 (MP8 R1,R2 784 026624 786 026634 110265 005065 116501 000000 MOVB 000000 CLR 000000 MOVB 788 026642 001406 789 ‘026644 026644 026646 026650 026652 790 026654 791 026660 02 792 026662 02 02 793 026666 794 026672 795 026674 104455 766 027442 015464 005237 BEQ ERRDF 002220 104406 104410 000066 012704 005002 004737 000310 016326 258: R2.TSDB(RS) TSDB(RS) TSBA(RS),R1 258 ERRNO, TSADDR, EXPREC INC CKLOOP FATFLG ESCAPE SUB MOV CLR JSR #310,R4 R2 PC,CHKTSSR €SERDF 502 SFHERR SFFMSG CSCLP1 CSESCAPE L10050-. :PUT BACK INTO MAINTENANCE MODE ;WAIT FOR READY, NON=-AMBIGUOUS :SET ADDRESS BACK TO 0000 780 026604 721 026610 782 026614 CSRESET NON-AMBIGUOUS :SHOULD POINT TO RAM 0 *SELECT LOCATION 0 *READ RAM LOCATION SPECIFIED :LOCATION SHOULD BE 377 OCTAL eaxo *WASN'T POINTING TO coaaecr Loc. TRAP CSERDF .WORD 502 -WORD TSADDR -W0 EXPREC :SET THE FATAL ERROR FLAG *SCOPE LOOP TRAP CSCLP1 :NO MORE CHECKS IF FATAL ERROR TRAP CSESCAPE .WORD L10050~. :START WITH LOC 310 :MEMORY EXPECTED SHOULD BE 000000 :WAIT FOR READY, NON-AMBIGUOUS TSVSA = HARDWARE TESTS TEST MACRO M1 113 5: SECOND INITIALIZATION TEST 796 026700 010465 797 026704 798 026710 799 026714 004737 116501 120102 801 852;20 ot 800 026716 026724 026726 802 026730 803 026734 026734 804 026736 026736 026740 805 026742 806 026744 ggg 026750 000000 016326 000000 25-MAY-82 08:41 308: 001406 027404 012072 005237 001353 809 026752 026752 i 026752 104403 811 026754 812 026760 813 026762 g}g 852;92 005737 001404 004737 005037 JSR MOVB (MPB BEQ ERRDF 002220 104406 104410 000012 005204 020427 MOV 40$: 000400 PAGE 85-2 R4, TSDB(RS) PC,CHKTSSR TSBA(RS),R1 R1,R2 408 ERRNO, TSMEM, SFFMSG 508 sWAIT FOR READY, NON-AMBIGUOUS sREAD LOC CONTENTS :CHECK MEMORY FOR 000000 *BRANCH IF DATA OKAY ;MEMORY NOT ZERO AFTER INIT. TRAP WORD .WORD W0 :SET THE FATAL ERROR FLAG FATFLG ESCAPE SuB JEXIT ON FATAL ERROR INC CMP R4 R4 ,#400 ;LOOK AT NEXT RAM LOC. ;AT TOP OF RAM ADDRESS SPACE 308 ENDSUB 017172 002220 :SELECT LOCATION SPECIFIED INC CKLOOP BNE 002220 SEQ 0142 TST BEQ JSR CLR CSERDF 502 TSMEM SFFMSG TRAP CSCLP1 TRAP .WORD CSESCAPE L10050-. :BRANCH TILL ALL MEMORY TESTED AWV END SUBTEST AL L10050: TRAP CSESUB FATFLG 508 PC,CKDROP FATFLG ;IS FATAL ERROR FLAG SET ? :BRANCH IF NOT sNO LOOP, TRY TO DROP DEVICE JCLEAR THE FATAL ERROR FLAG TSVSA = HARDWARE TESTS TEST MACRO M1113 5: SECOND INITIALIZATION TEST 817 026772 026772 18 026772 8 819 026774 820 027000 824 027002 027002 027004 027006 027010 825 027012 25-MAY-82 08:41 N SEQ 0143 BGNSUB 1111111717 BE$§NZSUBTEST 111111111117 104402 004737 103404 TRAP 015764 JSR BCS ERRDF 104455 ?8§SOFINIT ERRNO, SFIERR, SF IMSG .WORD 177777 108: 15%: MOov CLR JSR CLRB JSR MOV 000000 MovB INC 007777 BLE CLR JSR 000002 016326 000002 MOV Mov 176277 002200 001406 104455 000770 003701 012072 005237 002220 016326 20$: «WORD WORD Ré4 PC,CHKTSSR sSET _MAINTENANCE MODE R4, TSDB(RS) sSET_THE NEXT RAM ADDRESS gZ.TSDB(RS) sLOAD TEST DATA sNEXT ADDRESS TO TEST ;COMPARE TO LAST ADDRESS sBRANCH TILL ALL DATA WRITTEN sISSUE A SOFT RESET PC,CHKTSSR PC,CHKTSSR 4 RG A7777 15§ TSSR(RS) PC,CHKTSSR TSSR(RS) ,R1 R1,R2 BIC BIS #~C<HIADDR!OFL>,R2 #SSR!NBA,R2 BEQ ERRDF ERRNO, SFHERR, SFFMSG R1,R2 20§ 104455 000770 TRAP TRAP cscLm TRAP .WORD CSESCAPE L10051~. sWAIT FOR SSR TO SET sPUT BACK INTO MAINTENANCE MODE sWAIT FOR READY, NON-AMBIGUOUS :SET ADDRESS BACK TO 0000 ;WAIT FOR READY, NON-AMBIGUOUS < SHOULD POINT TO RAM 0 TSDB(RS) R1,.R2 sSELECT LOCATION 0 ;WAIT FOR READY, NON-AMBIGUOUS sREAD RAM LOCATION SPECIFIED :gg(?;lgz SHOULD BE 377 OCTAL ERRNC, TSADDR,EXPREC :WASN'T POINTING TO CORRECT LOC. 25$ CSERDF 504 SFHERR SFFMSG R2,TSDB(RS) PC,CHKTSSR TSBA(RS) ,R1 : .WORD .WORD WORD sEXIT IF FATAL ERROR DETECTED PC,CHKTSSR 120102 001406 sREPORT A FATAL ERROR sus PC,.CHKTSSR ; & sGET THE CONTENTS OF TSSR sCONTENTS OF TSSR sTHESE BITS MAY BE SET sREADY AND NEW DATA SHOULD BE SET s COMPARE EXPECTED TO RECEIVED ¢BRANCH IF COMPARE ESCAPE TSDB(RS) SFIERR SFIMSG sWAIT FOR READY, NON-AMBIGUOUS sSET FATAL ERROR FLAG :LOOP ON ERROR IF FLAG SET PC,CHKTSSR CSERDF 503 sWAIT FOR_READY, NON-AMBIGUOUS FATFLG JSR CLRB csBsuB sWAIT FOR READY, NON-AMBIGUOUS INC CkLooP TSDB(RS) #377.R2 000000 sALL ONE DATA PATTERN sSTARTING RAM ADDRESS sWAIT FOR_READY, NON-AMBIGUOUS TSDB(RS) PC,CHKTSSR 027216 :DO A SOFT TO START sBRANCH IF 0.K. ;REPORT ERROR AND DROP DRIVE TRAP 016326 839 027074 840 027076 841 027102 842 027106 843 027110 847 027112 027112 027114 027116 027120 848 027122 849 027126 027126 850 027130 027130 027132 851 027134 852 027140 853 027144 854 027150 855 027154 PAGE 86 ;WAIT FOR READY, NON-AMBIGUOUS TRAP LWORD CSERDF 504 TSVSA = HARDWARE TESTS MACRO M1113 TEST S: SECOND INITIALIZATION TEST 027220 027222 865 027224 866 027230 027230 867 02723% 027232 027234 027236 869 027242 870 027244 871 027250 872 027254 873 027260 874 027264 875 027266 876 027270 027270 027272 027274 027276 877 027300 878 027304 027304 879 027306 027306 027310 880 027312 881 027314 ggg 027320 027442 01564 005237 104410 000066 012704 005002 004737 010465 004737 116501 120102 104455 000770 027404 012072 005237 000310 016326 000000 016326 000000 308: 408: 104410 000012 005204 020427 001353 005737 001402 889 027336 004737 000400 B 12 FATFLG ESCAPE SUB MOV CLR JSR MOV JSR MOVB (MP8 #310,R4 R2 PC,CHKTSSR R4 .TSDB(RS) PC.CHKTSSR TSBA(RS),R1 R1,R2 ERRDF 002220 PAGE 86~1 INC CKLOOP BEQ 104406 886 027324 837 027330 891 027344 892 027350 027350 . 027352 258: 001406 104403 890 027342 002220 104406 884 027322 027322 - 027322 838 027332 25-MAY-82 08:41 40§ 004737 103002 000137 017172 016446 508: 026420 608: 104432 000132 FATFLG ESCAPE SUB ;EXIT ON FATAL ERROR INC CMP R4 R& ,#4600 :LOOK AT NEXT RAM LOC. *AT TOP OF RAM ADDRESS SPACE 30§ 902 027504 027504 3 027504 CSESCAPE L10051~-. :BRANCH TILL ALL MEMORY TESTED BCC 60$ :BRANCHIF NOT JMP EXIT TSTSID: .ASCIZ TSMEM: .ASCIZ TSADDR: .eeg#l ENDTST 104401 TRAP .WORD *NO LOOP, rav ro DROP DEVICE PC.TSTLOOP TSLOOP TST 2 166 143 143 CSCLP1 PC, CKDROP JSR FATFLG 508 897 170 156 156 TRAP ST BEQ JSR i :LOCAL TEXT MESSAGES FOR TEST 105 111 M1 CSERDF 504 TSMEM SFFMSG AV END SUBTEST AN L1005: TRAP CSESUB 894 ggg 898 027354 899 027404 88? 027442 *BRANCH IF DATA OKAY INC CKLOOP ENDSUB 002220 .WORD TSADDR .WORD EXPREC :SET THE FATAL ERROR FLAG :SCOPE LOOP TRAP CSCLP1 :NO MORE CHECKS IF FATAL ERROR TRAP CSESCAPE .WORD L10051~-. :START WITH LOC 310 :MEMORY EXPECTED SHOULD BE 000000 ;WAIT FOR READY, NON-AMBIGUOUS :SELECT LOCATION SPECIFIED :WAIT FOR READY, NON~AMBIGUOUS *READ LOC CONTENTS :CHECK MEMORY FOR 000000 *MEMORY NOT ZERO AFTER INIT. TRAP WORD JWORD .WORD :SET THE FATAL ERROR FLAG BNE ERRNO,TSMEM, SFFMSG SEQ 0144 ;1S FATAL eanon FLAG SET ? *BRANCH IF * SHOULD ue DO ITERATIONS ? :LOOP UNTIL COUNT EXPIRED :ALL DONE THIS TEST TRAP LWORD CSEXIT L10047-. ‘Extended Initialization’ ‘Incorrect RAM Data After Init’ ‘Incorrect RAM Address After Init’ L10047: TRAP CSETST TSVSA = HARDWARE TESTS MACRO M1113 TEST 5: SECOND INITIALIZATION TEST 904 25-MAY-82 08:41 PAGE 86-2 c 1 SEQ 0145 PAGE 87 TEST PR PR TRPR D12 SEQ 0146 6: COMMAND REJECT THIS TEST VERIFIES THAT ALL COMMANDS OTHER THAN WRITE CHARACTERISTICS ARE REJECTED DUE TO THE NEED BUFFER ADDRESS (NBA) BIT BEING SET IN TSSR, AND THAT THE TSBA AND TSSR REGISTERS ARE LEFT IN THE PROPER STATE AFTER EACH COMMAND IS REJECTED. THIS TEST CHECKS MICROPROCESSOR SEQUENCING, BASIC COMMAND DECODING AND DATI DMA HANDLING. THIS TEST CONTAINS TWO SUBTESTS: SUBTEST 1 SEQUENCES THROUGH ALL COMMAND WORDS (OTHER THAN WRITE CHARACTERISTICS) WITH THE INTERRUPT ENABLE (IE) BIT CLEAR AND VERIFIES THAT AN INTERRUPT IS NOT GENERATED BY THE REJECTED COMMAND; SUBTEST 2 PERFORMS SIMILARLY TO SUBTEST 1 BUT SETS THE IE BIT IN EACH COMMAND WORD AND VERIFIES THAT AN INTERRUPT IS GENERATED WHEN THE COMMAND IS REJECTED. SUBTEST 1 SETS UP THE INTERRUPT SERVICE ROUTINE TO FLAG UNEXPECTED INTERRUPTS. THE COMMAND WORD IN THE COMMAND BUFFER IS INITIALIZED TO 100000 (OCTAL) AND THE REMAINING THREE WORDS IN THE COMMAND BUFFER ARE SET TO KNOWN UNIQUE PATTERNS. FOLLOWING SEQUENCE IS PERFORMED: 1. 2. 3. 4. TH PRTR PR PR PR TR PR PRTR PR TR T T N T e e T R R TR TR TR TR IR .SBTTL TR TRTEA 6: COMMAND REJECT 25-MAY-82 08:41 TRTETETETEATEIATETATETEATE TEST MACRO M1113 MR LE LR TSVSA = HARDWARE TESTS 5. THEN THE INITIALIZE THE CONTROLLER BY WRITING INTO THE TSSR; PROPER INITIAL CONDITIONS ARE VERIFIED. TSDB_IS WRITTEN WITH ADDRESS OF THE COMMAND BUFFER TO START PROCESSING. THE PROGRAM WAITS FOR SSR TO SET; IF SSR DOES NOT SET, AN ERROR REPORT IS ISSUED AND THE TEST IS ABORTED. THE CONTENTS OF TSSR ARE CHECKED. TSSR IS CORRECT IF IT CONTAINS EITHER OCTAL 102206 OR 102306 (8IT 6 DEPENDS UPON THE STATE OF THE TAPE TRANSPORT). THE CONTENTS OF TSBA ARE CHECKED. TSBA SHOULD CONTAIN THE INITIAL COMMAND BUFFER ADDRESS (LOADED IN STEP 2) PLUS 10 (OCTAL); I.E., TSBA SHOULD POINT TO THE WORD JUST AFTER THE COMMAND PACKET (NOTE THAT & COMMAND PACKET WORDS ARC ALWAYS FETCHED). 6. USING THE MAINTENANCE MODE WRAPAROUND FUNCTIONS, THE COMMAND IMAGE BLOCK IN THE M7196°S RAM (LOCATIONS 201-210 (OCTAL)) ARE CHECKED; THE IMAGE SHUULD CONTAIN 2”50:;"9;'7% FOUR COMMAND PACKET WORDS AS SET UP IN 7. THE_COMMAND WORD IN THE COMMAND BUFFER IS INCREMENTED TO THE NEXT PATTERN NOT CONTAINING WRITE CHARACTERISTICS OR IE. THE REMAINING THREE WORD OF THE COMMAND BUFFER ARE SEQUENCE. WITH PSEUDO-RANDOM DATA. IF _THE COMMAND WORD HAS NOT REACHED ITS MAXIMUM VALUE (177777+1), THE TEST SEQUENCE IS REPEATED. SUBTEST 2 IS IDENTICAL TO SUBTEST 1, EXCEPT THAT THE PROGRAM TSVSA = HARDWARE TESTS TEST 6: COMMAND REJECT 963 964 965 966 027506 027506 971 027506 972 02751¢ 973 027516 974 027524 975 0275%4 976 977 027526 027526 027532 978 027534 979 027540 980 027544 981 027546 027546 MACRO M1113 25-MAY-82 08:41 12 BGNTST 012700 004737 012737 030743 016500 000024 002214 i6L 00P: Mov JSR MoV #TSTSID RO PC,TSTSETUP #20.,LOOPCNT BGNSUB 1046402 012700 TRAP SETPRI 000000 030420 002750 5$: 015764 Mov MoV MOV BGNSEG JSR BCS 002220 108: ;LOWER PRIORITY TO ALLOU;gcTERPUPTS #T6PACKET R4 C$SPRI sGET THE ADDRESS OF COMMAND PACKET #TSTBLK,RS (R3)+, (R&) PC,SOFINIT 108 RO,R1 ERRNO, SFIERR, SF IMSG FATFLG INTRECV 002220 002222 102206 016326 TST BEQ ERRHRD 22%: MOV JSR s INSERT THE NEXT TEST DATA WORD $23335>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP ;D0 SOFT INIT OF CONTROLLER sBR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURI#EA;NIT -WORD sCLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEIVED FLAG PC,WAITF sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDY;2PSET -WORD .WORD .WORD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET sus ;BY=PASS SUBTEST IF FATAL ERROR INTRECV ;DID AN INTERRUPT OCCUR ? sBRANCH IF NOT #SC!NBA!SSR!TSREJ,R2 PC,CHKTSSR C$BSEG CSERDF 601 SFIERR SFIMSG .DISABLE INTERRUPTS sSET_THE PACKET ADDRESS FATFLG 228 ERRNO,T6INT ,PKTSSR #PRI00,RO sBLOCK OF TEST DATA SWAIT FOR READY, NON-AMBIGUOUS 15$ 158: TRAP PC,CHKTSSR #BI77,(R4) R4, TSDB(RS) 016240 csesus #PR100 ERRNO, T6SSR,PKTSSR 027640 1003 027642 027642 027644 1004 027646 1005 027652 T6:: JASCII MESSAGE TO IDENTIFY TEST ;D0 INITIAL TEST SETUP JPERFORM 20 ITERATIONS I BE$£N1SUBTEST 1111111711117 RO,R1 1002 027640 SEQ 0147 CAUSES THE IE BIT TO BE SET IN EACH COMMAND WORD AND THEN VERIFIES THAT AN INTERRUPT OCCURS. MOV ERRDF 027566 989 027570 990 027574 991 027600 992 027604 993 027610 PAGE 87-1 CSERDF 602 T6SSR PKTSSR TRAP CSCLP TRAP .WORD CSESCAPE L10053~ TRAP CSERHRD 603 .WORD «WORD .WORD sEXPECTED CONTENTS OF TSSR ;WAIT FOR READY, NON-AMBIGUOUS TOINT PKTSSR TSVSA = HARDWARE TESTS TEST 6: COMMAND REJECT 1012 027674 1013 027700 1014 027704 1015 027706 1016 027712 1017 027714 1021 027716 016501 032701 00140 052702 020201 001404 MACRO M1113 000002 000100 104406 094737 016326 1026 027742 062702 000010 1028 027750 001404 027752 027754 027756 027760 104456 001135 030671 015464 1035 027762 004737 1027 027746 1032 027752 L 1036 027766 1040 027770 027770 027772 027774 027776 1041 030000 030000 030000 1042 030002 1043 030006 1044 030010 1045 030014 016501 010402 020102 103404 308: 000000 011104 104456 001136 004741 015500 408: 104405 011300 0462700 020027 001002 000004 }823 030030 000137 027544 103002 000002 003056 1051 030034 458: . 030034 104403 1053 030736 1054 0342 1055 030044 005737 001402 004737 ERRNO,T6NSA,PKTSSR *NBA NOT SET TO REJECT 002220 017172 R2,Ri 30§ CKLOOP :DOES EXPECTED MATCH RECEIVED ? *OKAY IF MATCH :LOOP ON ERROR ? JSR PC,CHKTSSR ADD #10,R2 TRAP .WORD .WORD .WORD TRAP ;WAIT FOR READY, NON-AMBIGUOUS rsams».m R4 ,R2 :GET TSBA REGISTER CONTENTS :START OF THE PACKET R1,R2 :COMPARE EXPECTED TO RECEIVED ERRHRD ERRNO, T6TSBA,EXPREC :PRINT THE ERROR & EXPD/RECV JSR PC.,CKRAM :SEE IF DATA IN RAM IS CORRECT ERRHRD ERRNO,PKTRAM,RAMERR *REPORT THE RAM ERROR(S) BCS 35§ 408 ENDSEG ADD CMP BHIS JMP 508: :GET THE CONTENTS OF TSSR ERRHRD CMP BEQ MOV BIC CMP BNE 177740 TSSR(RS) ,R1 SEQ 0148 :1S OFF-LINE BIT SET ? *BRANCH IF NOT OFF=LINE :SET OFF=LINE IN EXPECTED DATA CMP 358: 12 #OFL,R1 258 #OFL ,R2 MOV MOV © PAGE 87-2 BIT BEQ BIS BEQ 062703 020327 030034 258: 104456 001134 030430 012036 1046 030016 1047 030022 1048 030026 MOV 000100 027716 027720 027722 027724 1022 027726 027726 1023 027730 1024 027734 1025 027740 25-MAY-82 08:41 RO, 4% 45$ TRAP .WORD .WORD .WORD CSERHRD 605 T6TSBA EXPREC :BRANCH IF PACKET IN RAM IS CORRECT CSERHRD 606 PKTRAM .WORD RAMERR 5 €<<CCCCCC<<<< END SEGMENT <<<<<<<<<<<<< 100008: TRAP .WORD .WORD TRAP CSESEG :PACKET COMMAND WORD :GET BITS 0-4 sDON'T TEST WRITE CHARACTERISTICS *BRANCH IF OK :GET NEXT WORD FROM DATA TABLE *REACHED END OF TABLE ? 13 SCONTINUE TEST WITH NEW DATA ENDSUB ST BEQ JSR :ERROR IF NOT EQUAL #2,R3 R3.#TBLEND S0% CSCLP1 *EXPECT TSDA TO PACKET + 10 .\ (R3) RO #177740,R0 CSERHRD 604 T6NBA PKTSSR *BRANCH IF END OF TABLE VAN END SUBTEST \\\MAALNLL L10053: FATFLG 608 PC,CKDROP :ANY FATAL ERRORS ? :BRANCH IF NOT sTRY TO DROP THE UNIT TRAP CSESUB TSVSA = HARDWARE TESTS TEST 6: COMMAND REJECT MACRO M1113 1057 8%28 - 030050 1059 03005 030052 030056 1060 030060 1061 030064 60$: 000000 012704 030420 104441 012703 1064 030074 1065 030100 1069 0301062 1070 030104 004737 103405 010001 030110 030112 104404 1075 030134 1076 030140 010465 004737 000000 016240 052714 103407 1078 030146 010001 030150 030152 030154 030156 104455 001140 030455 012036 1083 030160 1084 030164 030164 1085 030166 030166 030170 1086 030172 005237 104410 000170 005737 001004 030200 030202 030206 030206 1092 030210 1093 030214 104456 001141 030611 012036 012702 004737 1095 030224 1096 030230 1097 030232 032701 001402 052702 1094 030220 1098 030236 1099 030240 1103 030242 030242 030244 016501 020201 001404 104456 001142 108: 000200 SEQ 0149 111111177777 EE%NZSWTESI 1/1/1/1117777 e 102206 016326 CLR CLR JSR 000002 000100 TRAP ($BSEG TRAP .WORD CSERDF 607 .WORD . FATFLG INTRECV PC,CHKTSSR ;CLEAR FATAL ERROR FLAG :CLEAR INTERRUPT RECEIVED FLAG JWAIT FOR READY, NON-AMBIGUOUS R4 ,TSDB(RS) PC.WAITF JSET THE PACKET ADDRESS :WAIT FOR SSR TO SET #8117, (RQ) 15§ :BR IF CARRY SET (GOOD RETURN) ERRNO,T6SSR,PKTSSR sDEVICE FATAL SSR FAILED TO SET RO,R1 *SAVE CONTENTS OF TSSR TRAP .WORD .WORD .WORD CSERDF 608 T6SSR PKTSSR TRAP CSCLP1 TRAP .WORD CSESCAPE L10054~. ;SET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET ESCAPE SUB :BY=-PASS SUBTEST IF FATAL ERROR INTRECV :DID AN INTERRUPT OCCUR ? 22% *BRANCH IF YES MOV JSR #SC!NBA!SSR!TSREJ,R2 PC.CHKTSSR TRAP .WORD .WORD .WORD ;EXPECTED CONTENTS OF TSSR :WAIT FOR READY, NON-AMBIGUOUS BIT BEQ BIS #OFL,R1 258 #OFL ,R2 ;1S OFF=LINE BIT SET ? :BRANCH IF NOT OFF~-LINE ;SET OFF=LINE IN EXPECTED DATA (MP BEQ ERRHRD ERRNO, T6NINT,PKTSSR TSSR(RS) ,R1 R2,R1 30$ ERRNO, T6NBA,PKTSSR SFIERR SF IMSG :ENABLE INTERRUPTS FATFLG MOV 258: *START OF TEST DATA INC CKLOOP ERRHRD 000100 :GET THE ADDRESS OF COMMAND PACKET ;DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = OK :SAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURING INIT ST 228: C$SPRI #T6PACKET, R4 PC,SOF INIT 10§ RO,R1 ERRNO,SFIERR, SF IMSG BNE i #PRI00,RO JSR BCS MOV ERRDF BCS 002222 TRAP JPLACE NEXT DATA WORD IN PACKET 323533533>>>>> BEGIN SEGMENT >>>>>>>>>3>>> MOV JSR 158: MOV (R3)+,(R4) BIS : JLOWER PRIORITY TO ALLOW INTERRUPTS #TSTBLK,RS MOV BGNSEG ERRDF 002220 #PRIOO ($BSUB MOV MOV 104406 1087 030176 1091 030200 5$: 104455 001137 002220 002222 016326 1082 030150 MOV 015764 1071 030114 1072 030120 1073 030124 1077 030144 BGNSUB SETPR] 002750 003646 012024 005037 005037 004737 1074 030130 6 12 TRAP 012700 012314 030104 030106 PAGE 88 104402 1062 030070 1063 030072 030072 25-MAY-82 08:41 :REPORT ERROR IF NO INTERRUPT CSERHRD 609 TONINT PKTSSR :GET THE CONTENTS OF TSSR :DOES EXPECTED MATCH RECEIVED ? SOKAY IF MATCH :NBA NOT SET TO REJECT “TRAP ~ .WORD CSERHRD 610 TSVSA = HARDWARE TESTS MACRO M1113 TEST 6: COMMAND REJECT 030246 030250 1104 030252 030252 1105 030254 1106 030260 1107 030264 1108 030266 1109 030272 1110 030274 1114 030276 030430 012036 1044 25-MAY-82 08:41 Wiz SEQ@ 0150 .WORD 308: CKLOOP 016326 000000 ;LOOP ON ERROR ? PC,CHKTSSR TSBA(RS) ,R1 R&4 R2 #10,R2 000010 8 ERRHRD 030276 030300 030302 30304 R1,R2 35§ ERRNO, T6TSBA, EXPREC PKTSSR TRAP cscLPt sWAIT FOR READY, NON-AMBIGUOUS sGET TSBA REGISTER CONTENTS sSTART OF THE PACKET sEXPECT TSDA TO PACKET + 10 s COMPARE EXPECTED TO RECEIVED cERROR IF NOT EQUAL sPRINT THE ERROR & EXPD/RECV TRAP WORD 011104 030314 030316 030320 03032 1123 030324 35%: 40$: 03032 030324 1124 030326 1125 030330 1126 030334 1127 030340 1128 030342 1129 030346 1130 030352 1131 030354 1132 1133 030360 45S$: 030070 508: 030360 030360 1134 030362 1135 030366 1136 030370 1137 030374 1138 030400 1139 030402 1140 030406 030406 030410 002220 017172 016446 027524 ADD CMP BHIS JMP 62%: ERRNO,PKTRAM,RAMERR BEQ JSR JSR 8CC JMP EXIT TRAP «WORD «WORD .WORD g?SRNRD (R3) ,RO TRAP (SESEG #177740,R0 RO, #4 45$ #2.R3 R3.#TBLEND 508 5s SAAVNAANAANAANANANNL END SUBTEST \\AANNLLLLWLWL L10054: TRAP FATFLG sANY FATAL ERRORS ? PC,CKDROP PC.TSTLOOP :TRY TO DROP THE UNIT T6LOOP TST sLOOP UNTIL COUNT EXPIRED sALL DONE THIS TEST 60$ 62% =<, +10>8177770 0 052525 CSESUB sBRANCH IF NOT sSHOULD WE DO ITERATIONS ? sBRANCH IF NOT TRAP sLOCAL STORAGE FOR THIS TEST 000000 052525 PKTRAM RAMERR sNEXT PACKET COMMAND WORD :GET BITS 0-4 sDON'T TEST WRITE CHARACTERISTICS sBRANCH IF NOT WRITE CHARACTERISTICS :8Y=PASS WRITE CHARACTERISTCS sHAVE WE COMPLETED DA/A TABLE ? sBRANCH IF ALL TESTED sTEST WITH NEXT DATA i+ T6PACKET: . WORD .WORD EXPREC sSEE IF DATA IN RAM IS CORRECT sBRANCH IF PACKET IN RAM IS CORRECT sREPORT THE RAM ERROR(S) .WORD 030420 CSERHRD 611 T6TSBA 3 €Ll e?o 85(:("7 <<CLLLLLLLLLL ENDSUB TST 60$: 28;CKRAH ENDSEG Mov BIC CMP BNE 177740 000004 000002 003056 JSR BCS ERRHRD T6NBA .WORD .WORD .WORD 1115 1116 1117 030306 1118 030312 1122 030314 1141 1142 1143 1144 1145 1147 1149 030420 1150 030420 1151 030422 PAGE 88-1 s COMMAND PACKET FOR TEST sWILL CONTAIN VARIABLE COMMANDS CSEXIT L10052-. TSVSA = HARDWARE TESTS TEST 6: COMMAND REJECT 1152 030424 }}g‘ 030426 MACRO M1113 25-MAY-82 08:41 125252 052525 WORD .WORD 1155 1156 PAGE 88-2 112 SEQ 0151 125252 052525 ;Y }}g; sLOCAL TEXT MESSAGES FOR TEST 1159 1160 030430 1161 030455 1162 030533 1163 030611 1164 030671 1165 030743 1166 1167 030762 03076 2 030762 103 103 125 105 11 103 104401 157 157 156 170 156 157 155 156 145 160 143 155 ) T6NBA: T6SSR: TOINT: TONINT: T6TSBA: TST6ID: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ EVEN ENDTST ‘Command Not Regocted' ‘Contents of TSSR Incorrect After Write Packet' ‘Unexpected Interrupt Received On Write Packet'’ ‘Expected Interrupt Not Received On Write Packet' ‘'Incorrect TSBA Address After Packet Write' ‘Command Reject’ L10052: TRAP CSETST MACRO M1113 25-MAY-82 08:41 3 SRS LS BRIRARARRSIIIFNNNANISS 6: COMMAND REJECT .SBTTL INTERRUPTS SHOULD BE GENERATED. THIS TEST CHECKS VARIOUS MICROPROGRAM SEQUENCES, COMMAND DECODING, DMA LOGIC, AND BASIC PACKET PROTOCOL HANDLING. THIS IS THE FIRST TEST IN WHICH DATO DMA CYCLES (FOR STORING THE MESSAGE PACKET) ARE PERFORMED. ANY ERRORS IN THE BODY OF THE TEST (I1.E, ERRORS OTHER THAN INITIALIZATION ERRORS RELATED TO THE TRANSPORT BUS) DEFINITELY INDICATE A BAD M7196 MODULE. o 88 ~ 3 =1=] BGNTST 104402 004737 000024 002214 °°8 RS N=YO N 015764 012024 000006 MOV #TST7ID.RO MOV #20. ,LOOPCNT JSR T7LOOP: 034302 0 000010 - WwWw OO0O000O b ek 2 —2 =D HWN=O HOWEVER, THE PROGRAM RUNS AT PROCESSOR PRIORITY O, WITH THE INTERRUPT SERVICE ROUTI .c SET UP TO FLAG UNEXPECTED INTERRUPTS. IF AN INTERRUPT OCCURS, A PROBLEM EXISTS IN EITHER THE LSI=11 BUS INTERFACE SECTION OR IN THE ROM OR PIPELINE. 031002 031002 1207 031004 1208 1209 031010 POMNY =2 = e ALL COMMANDS EXECUTED IN THIS TEST HAVE THE INTERRUPT ENABLE (IE) BIT CLEARED TO ZERO, SO NO v oo (V) N D D D D D cd ) e e e D D e d D ed d d D b — ] [L,%],%] SEQ 0152 7: WRITE CHARACTERISTICS VERIFIED IN SUBSEQUENT TESTS. 1206 031002 — ) cnd b b NRoNNN TEST b CHECK THAT THE VARIOUS FUNCTIONS ENABLED BY CHARACTERISTIC MODE DATA BITS OPERATE PROPERLY; THE FUNCTIONING OF THESE BITS IS 012737 D I IR e R RN PAGE 89 THIS TEST VERIFIES BASIC OPERATION OF THE WRITE CHARACTERISTICS COMMAND. IT VERIFIES THAT THE COMMAND BLOCK AND CHARACTERISTICS DATA BLOCK ARE FETCHED PROPERLY FROM CPU MEMORY, THE NEED BUFFER ADDRESS (NBA) BIT IN TSSR IS HANDLED PROPERLY, AND THAT A PROPER MESSAGE PACKET IS STORED, WHERE APPROPRIATE. THIS TEST DOES NOT — e b d wd e ) e e D d e D e D D D D d D e ) e D e D D e e ) De D D d TEST 5%: PC,TSTSETUP T7:: sASCII MESSAGE TO IDENTIFY TEST sDO INITIAL TEST SETUP sPERFORM 20 ITERATIONS /11111111117 8E$IN SUBTEST /77711111111 BGNSUB TRAP c$BsuB JSR PC,T7REST sSET PACKET TO START-UP VALUES SETPRI #PRI00 sLOWER PRIORITY TO ALLOW INTERRUPTS MOV MOov Mov #TSTBLK+10. ,R3 #T7PACKET R4 #8. ,PKBCNT(R4) sSTART OF TEST DATA sGET THE ADDRESS OF COMMAND PACKET ¢START WITH MINIMUM ALLOWABLE VALUE BGNSEG MoV TRAP $223333>>>>>> BEGIN SEGMENT >>>35>>>>>>> TRAP JSR PC,SOFINIT ;D0 SOFT INIT OF CONTROLLER MOV ERRDF RO.R1 ERRNO,SFIERR,SF IMSG sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT BCS #PRI00,RO CSSPRI 108 C$BSEG :BR IF SOFT INIT = OK TRAP CSERDF .WORD SFIMSG .WORD .WORD 701 SFIERR ——meq | TSVSA = HARDWARE TESTS TSVS5A =~ HARDWARE TESTS TEST MACRO M1113 7: WRITE CHARACTERISTICS 1223 031055 1224 03106 1225 031065 1226 031072 1227 031076 1228 021100 1232 €31102 931102 031104 931106 031110 1233 021112 1234 031116 031116 1235 031120 031120 031122 1236 031124 1237 031130 1241 031132 031132 031134 031136 031140 1262 031142 1243 031146 1244 031152 1245 031156 1246 031160 1247 031164 1248 031166 1252 031170 25-MAY-82 08:41 PAGE 89-1 12 SEQ 0153 002220 002222 000000 016326 108: CLR FATFLC INTRECV R4 ,TSDB(RS) PC,CHKTSSR 15§ RO,R1 ERRNO, T7SSR,PKTSSR sCLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEIVED FLAG sSET _THE PACKET ADDRESS sWAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDT;RPSET +WORD .WORD 002220 15%: 002222 .WORD INC CKLOOP FATFLG sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET Thee ESCAPE SEG ;BY=PASS SUBTEST IF FATAL ERROR TST BEQ ERRHRD INTRECV 228 ERRNO, T7INT,PKTSSR TRAP W0 :DID AN INTSSRUPT OCCUR ? sBRANCH IF 22%: TSSR(RS) ,R1 #SSR,R? #0FL .R1 25% 000100 #0FL ,R2 25$: 031170 031172 031174 031176 1253 031200 R2,R1 30 ERRNO, T7NBA,PKTSSR 016326 000000 033146 000200 #T7BFR,R2 000012 ;egr?.xer(az) 32%: ERRHRD 3 ERRNO, T7TSBA,EXPREC PKTSSR sEXPECTED CONTENTS OF TSSR :1S OFF=LINE BIT SET ? sBRANCH IF NOT OFF-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH ¢NBA NOT ZERO 011104 35%: JSR BCS PC, CKRAM 408 703 T7INT TRAP CSERHRD WORD PKTSSR TRAP sWAIT FOR READY, NON-AMBIGUOUS cscLrm 704 T7NBA sGET TSBA REGISTER CONTENTS sSTART OF THE DATA BUFFER :1S EXTENDED FEATURES BIT SET ? sBRANCH IF EXTENDED FEATURES OFF sSET EXTENDED FEATURES FOR SUBTEST 6 sEXTRA WORD IF SPECIAL FEATURES sEXPECTED CONTENTS OF TSDA s COMPARE EXPECTED TO RECEIVED sERROR IF NOT EQUAL sPRINT THE ERROR & EXPD/RECV TRAP CSERHRD .WORD 271 031262 100008~-. WORD .WORD .WORD 70 031256 CSESCAPE CSERHRD :GET THE CONTENTS OF TSSR ;LOOP ON ERROR ? PC,CHKTSSR TSBA(RS) ,R1 cscLP TRAP .WORD .WORD 308: PKTSSR NOT .WORD «WORD 000002 000200 000100 CSERDF 702 T7SSR 705 T7TSBA EXPREC sSEE IF DATA IN RAM IS CORRECT ¢BRANCH IF PACKET IN RAM IS CORRECT TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 25-MAY-82 08:41 1275 031264 ERRHRD 031264 1276 1277 031274 408%: sREPORT THE RAM ERROR(S) 012364 000006 003056 MOV CMP (R3) + ,PKBCNT(R4) R3,#TBLEND 000137 031034 JMP 58 BHIS 100008: 55§ ENDSUB TRAP 017172 ST BEQ 60$: JSR PKTRAM RAMERR C$ESEG sSET THE TEST WORD sHAS ALL DATA BEEN TESTED ? sBRANCH IF ALL DATA DONE JBRANCH TILL 3‘95 TO ZERO TRAP 002220 gngHRD SNANAAAANANNANNL END SUBTEST \NANALLALNLLLLLL L10056: 104403 005737 001402 004737 TRAP -WORD .WORD «WORD s €<<<<LCCC<<<< END SEGMENT <<<<<<<<<<<<< 79 031276 N d ENDSEG 104405 85 286 031316 287 031322 288 031324 289 031330 d ——d ERRNO,PKTRAM,RAMERR SEQ 0154 015500 55%: b 12 031274 031274 031302 06 — PAGE 89-2 FATFLG 60$ PC,CKDROP sANY FATAL ERRORS ? :BRANCH IF NOT sTRY TO DROP THE UNIT CSESUB s TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 25-MAY=-82 08:41 PAGE 90 M2 SEQ 0155 ;0 :TEST 7, SUBTEST 2 ;CHECK THAT UNUSED BITS BEING SET CAUSES ;WRITE CHARACTERISTICS COMMAND TO BE REJECTED 1 1300 031330 031330 031330 1301 1302 031332 031332 012700 104441 012703 012704 004737 TRAP SETPRI 000000 033166 033120 034302 5%: ) e MOV MOV JSR #PRIOO #T72DATA,R3 #T7PACKET R4 PC,T7REST BGNSEG 104404 004737 103405 010001 P Y7227770777, asg;nzsuaresr 121111101111 104402 D Y QU g 3 304 031344 305 031350 306 307 031354 031354 BGNSUB (C$BSUB :LOWER PRIORITY TO ALLOW INTERRUPTS MOV #PR100,RO TRAP CS$SPRI :START OF TEST DATA FOR SUBTEST :GET THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES $23335>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP 015764 4 JSR PC,SOFINIT MOV ERRDF RO,R1 ERRNO,SFIERR, SF IMSG BCS 10§ ($BSEG ;D0 SOFT INIT OF CONTROLLER *BR IF SOFT INIT = OK :SAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURING INIT TRAP CSERDF &H N o —_ W 002222 o ~ WN=O V0~ b e e cd e b d WWWWWWWWW PNONONININ) = b b .WORD 004 1€3405 010001 031434 104455 001304 033721 012036 031436 104406 1328 031436 1329 031440 031440 13 1331 031450 1335 031452 031460 1336 031462 10$: CLR MOV INTRECV R4 ,RO BIS 2(R3}, (RO) ADD 000002 000000 016240 (R3) RO MOV JSR R4, TSDB(RS) PC.WAITF MOV RO,R1 BCS ERRDF .WORD .WORD :CLEAR INTERRUPT RECEIVED FLAG :START OF THE COMMAND PACKET :SET THE DATA BITS TO BE TESTED :SET THE PACKET ADDRESS *WAIT FOR SSR TO SET 15§ :BR IF CARRY SET (GOOD RETURN) ERRNO,T7SSR,PKTSSR :DEVICE FATAL SSR FAILED TO SET *SAVE CONTENTS OF TSSR TRAP ESCAPE 104410 002222 000002 ST BEC ERRHRD 22%: .WORD :LOOP ON ERROR, IF FLAG SET CKLOOP MOV SEG INTRECV 228 ERRNO,T7INT,PKTSSR TSSR(RS) ,R1 SFIERR SFIMSG :OFFSET TO THE DATA WORD TO TEST .WORD .WORD 15$: 707 TRAP ;BY-PASS CHECKS IF FATAL ERROR TRAP W0 :DID AN INTERRUPT OCCUR ? CSERDF 708 T7SSR PKTSSR CSCLP1 CSESCAPE 100008-. *BRANCH IF NOT TRAP .WORD .WORD .W0 sGET THE CONTENTS OF TSSR CSERHRD 709 T7INT PKTSSR TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 1337 031466 1338 031472 1339 031476 1340 031500 012702 032701 001402 052702 1345 031506 1343 031510 1344 031512 1345 031522 1346 031526 1350 031530 031530 031532 03153¢ 031536 001414 010100 1341 031504 1351 031540 031540 1352 031542 1353 031546 1357 031528 020201 020027 001404 : 104456 001306 033333 012036 104406 032701 001004 102206 000100 000100 012036 1361 031562 1362 031566 1363 031572 }ggg 031574 062703 020327 103002 000137 PAGE 90-1 N 12 SEQ 0156 258: 002000 MOV BIT BEQ BIS #SC!SSR!TSREJ !NBA,R2 #OFL,R1 25 #OFL ,R2 BEQ MOV XOR CMP BEQ ERRHRD 308 R1,RO R2,R0 RO . #NBA 30§ ERRNO,T72REJ,PKTSSR CMP R2,R1 308: 002000 CKLOOP BIT BNE ERRHRD 358: sOKAY IF MATCH sDATA FROM TSSR sFIND BITS IN ERROR sIS NBA ONLY BIT IN ERROR ? sDON'T PRINT ERROR IF NBA ONLY BAD BIT s COMMAND NOT REJECTED TRAP CSERHRD #NBA,R1 358 ERRNO,T72NBA,PKTSSR ENDSEG ;1S NBA BIT SET ? sOKAY IF NBA SET sNBA NOT SET 000004 033202 ADD CMP BHIS JMP 031344 ENDSUB 710 T72REJ «WORD PKTSSR TRAP cscLP TRAP .WORD -WORD -WORD CSERHRD 711 T72NBA PKTSSR 5 €< END SEGMENT <<<<<<<<<<<<< 10000%: 57%: 104403 sDOES EXPECTED MATCH RECEIVED ? ;LOOP ON ERROR ? 104405 1366 031600 sEXPECTED CONTENTS OF TSSR s1S OFF=LINE BIi SET ? sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA -WORD .WORD 104456 031556 1358 031560 1359 031560 031560 1360 031560 031600 031600 25-MAY-82 08:41 #4 ,R3 R3,4#T72DONE 57% 5% TRAP CSESEG sPOINT TO NEXT DATA PAIR sCOMPARE TO END OF TEST DATA sBRANCH IF ALL DATA TESTED sBRANCH TILL BACK TO ZERO SNAMAANANANANANANANANN END SUBTEST NNNALLLLLLLLLYL L10057: TRAP CSESUB 25-MAY-82 08:41 PAGE 91 13 SEQ 0157 1369 }%;? 1368 i+ : :TEST 7, SUBTEST 3 137 sCHECK THE WRITE CHARACTERISTICS COMMAND IS REJECTED }%;‘ sIF ISSUED WITH AN INVALID DATA BLOCK BYTE COUNT 1377 031602 031602 1378 031602 1379 031604 BGNSUB 012700 104441 012703 000000 000001 }gg% 031622 004737 034302 1384 031626 1388 031626 104404 1381 031616 012704 033120 1397 031670 1398 031672 1402 031674 031674 031676 031700 031702 1403 031704 0317 1404 031706 031706 031710 1405 031712 1406 031716 1410 031720 031720 031722 031726 031726 1411 031730 1412 031734 1413 0317640 17.3: 104402 031604 031670 1380 031612 1386 031630 1387 031634 1351 031636 1392 031640 031640 031642 031644 031646 1393 031650 13946 031654 1395 031660 1396 031664 3////777777// BEGIN SUBTEST //////77771/ 004737 103405 010001 104455 001310 003646 012024 005037 010364 010465 004737 103405 5%: : 002222 000006 000000 016240 108: 104455 001311 033721 012036 15%: 104406 104410 000116 005737 001404 104456 001312 034101 012036 016501 012702 032701 #PRIOO JLOWER PRIORITY TO ALLOW INTERRUPTS MOV #T’PACKET R4 ;sSTARTING BYTE COUNT MOV JSR PC,T7REST 000002 102206 000100 22%: #PRI00,RO C$SPRI sGET THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES $233333>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP C$BSEG PC,SOFINIT 108 RO.R1 ERRNO,SFIERR,SFIMSG CLR MOV MOV JSR INTRECV R3.PKBCNT(R4) R4 ,TSDB(RS) PC,WAITF ;D0 SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP WORD .WORD .WORD sCLEAR _INTERRUPT RECEIVED FLAG sINSERT THE BYTE COUN:i FOR TEST JSET THE PACKET ADDRESS JWAIT FOR SSR TO SET MOV ERRDF RO.R1 ERRNO,T7SSR,PKTSSR sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET 15§ CKLOOP ESCAPE 002222 MOV TRAP JSR BCS MOV ERRDF BCS 010001 csBsus SETPRI BGNSEG 015764 TRAP SEG ST BEQ ERRHRD INTRECV 22% ERRNO,T7INT,PKTSSR MOV MOV BIT JSC'SSR'TSREJ'NBA Re #OFL R TSSR(RS) ,R1 CSERDF 712 SFIERR SFIMSG :BR IF CARRY SET (GOOD RETURN) TRAP WORD .WORD WORD :LOOP ON ERROR, IF FLAG SET ;BY=-PASS SUBTEST IFf FAIAL ERROR CSERDF 713 T7SSR PKTSSR cscLP TRAP .WOR :DID AN INTERRUPT OCCUR ? ;BRANCH IF NOT CSESCAPE 100008~ TRAP LWORD .WORD .WORD sGET THE CONTENTS OF TSSR JEXPECTED CONTENTS OF TSSR :1S OFF-LINE BIT SET ? CSERHRD 714 T7INT PKTSSR S——— TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 001405 052702 020201 000100 25-MAY-82 08:41 2 032006 1427 032010 1428 032014 1432 032016 032016 25%: 30 ERRNO, T73REJ ,PKTSSR 308: 002000 032024 1433 032026 1434 032026 032026 13 SEQ 0158 002000 1426 032006 PAGE 91-1 CKLOOP BIT BNE ERRHRD 358: sBRANCH IF NOT OFF=LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH sDATA FROM TSSR sFIND BITS IN ERROR s1S NBA ONLY BIT IN ERROR ? sDON'T PRINT ERROR IF NBA ONLY BAD BIT s COMMAND NOT REJECTED TRAP sLOOP ON ERROR ? #NBA,R1 358 ERRNO, T72NBA,PKTSSR ENDSEG :1S NBA BIT SET ? sOKAY IF NBA SET ¢NBA NOT SET PKTSSR TRAP cscLP1 CSERHRD 716 T72NBA PKTSSR 5 €<<LLLLLCL<<< END SEGMENT <<<<<<<<<<<<< 100008: " TRAP INC CMP 000006 BGE 031616 JMP 57%: ENDSUB CSERHRD 715 T73REJ -WORD -WORD .WORD R3 R3,46 5 5% CSESEG sNEXT BYTE COUNT sTESTED ALL INVALID ? sBRANCH IF TEST DONE sBRANCH TILL BACK TO ZERO SNV END SUBTEST N\ L10060: TRAP CSESUB TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 25-MAY-82 08:41 1443 PAGE 92 D13 SEQ 0159 e 1644 }222 : 21eST 7, SUBTEST 4 14647 }223 sSUBTEST TO VERIFY THAT A WRITE CHARACTERISTICS COMMAND IS JREJECTED IF AN ILLEGAL DATA BLOCK ADDRESS IS ISSUED. 143y i 1452 032046 032046 1453 032046 1454 032050 032050 032054 1455 032056 012700 104441 012703 033166 004737 034302 012704 1459 1460 032072 1461 032076 1465 032100 1466 032102 004737 103405 010001 032102 032106 032106 032110 1467 032112 1468 032116 1469 032124 1470 032130 1471 032134 1472 032136 1476 032140 032140 032142 032144 032146 1477 032150 032150 1478 032152 032152 032154 1479 032156 1480 032162 1484 032164 032164 032166 032170 032172 1485 032174 1486 032200 1487 032204 1488 032210 1489 032212 3////77/77777 BEGIN SUBTEST /771777171117 17.4: 104402 1456 032062 }2;; 032066 BGNSUB 104455 001315 003646 012024 005037 052737 010465 004737 103405 000000 033120 015764 002222 000001 000000 016240 5%: v 033130 108: 104455 001316 033721 012036 15¢%: 104406 104410 000116 005737 001404 104456 001317 034101 012036 016501 012702 032701 001402 052702 #PRI0O MOV #T72DATA,R3 MOV #PRI100.RO TRAP CS$SPRI :START OF TEST DATA FOR SUBTEST JSR PC,T7REST JRESTORE PACKET TO STARTING VALUES MOV 000002 102206 000100 000100 22%: lT?PACKET R4 JSR BCS MOV ERRDF PC,SOFINIT 108 RO.R1 ERRNO,SFIERR,SF IMSG CLR BIS INTRECYV #1_.T7DATA sLOWER PRIORITY TO ALLOW INTERRUPTS sGET THE ADDRESS OF COMMAND PACKET ;D0 SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP LWORD .WORD .WORD JCLEAR INTERRUPT RECEIVED FLAG HAKE ADDRESS 0DD MOV JSR R4 .TSDB(RS) PC.WAITF sSET THE PACKET ADDRESS UAIT FOR SSR TO SET MOV ERRDF RO.R1 ERRNO T7SSR,PKTSSR JSAVE CONTENTS OF TSSR :DEVICE FATAL SSR FAILED TO SET 15% CKLOOP ESCAPE 002222 cs8sus SETPRI BCS 010001 TRAP SuUB TST BEQ ERRHRD INTRECV 22% ERRNO,T7INT,PKTSSR MOV MOV BIT BEQ BIS TSSR(RS) ,R1 #SC'SSR!TSREJ!NBA,R2 #OFL ,R1 25% #OFL ,R2 CSERDF 717 SFIERR SFIMSG BR IF CARRY SET (GOOD RETURN) TRAP .WORD .WORD .WORD ;LOOP ON ERROR, IF FLAG SET TRAP ;BY=PASS SUBTEST IF FATAL ERRON UORD :DID AN lNTERRUPT OCCUR ’ BRANCH IF TRAP WORD LWORD .WORD JGET THE CONTENTS OF TSSR JEXPECTED CONTENTS OF TSSR sIS OFF-LINE BIT SET ? sBRANCH IF NOT OFF<-LINE sSET OFF=LINE IN EXPECTED DATA CSERDF 718 T7SSR PKTSSR cscLP CSESCAPE L10061~-. CSERHRD 719 T7INT PKTSSR TSVSA = HARDWARE TESTS TEST MACRO M1113 7: WRITE CHARACTERISTICS 1490 032216 1491 032220 1492 032222 1493 032224 1494 032234 1495 032240 1499 032242 032242 032244 032246 032250 1500 032252 022252 1501 032254 1502 032260 1506 032262 032262 032264 032266 aus 032270 020201 020027 001404 509 ) 002000 104456 001320 033525 012036 104406 032701 001 R2,R1 MOV XOR CMP R1,R0 R2.RO RO ANDA ERRHRD ERRNO, T74REJ,PKTSSR BEQ 30$ 308 SEQ 0160 sDOES EXPECTED MATCH RECEIVED ? *OKAY IF MATCH :DATA FROM TSSR FIND BITS IN ERROR sIS NBA ONLY BIT IN ERROR ? DON T PRINT ERROR IF NBA ONLY BAD BIT ;COMMAND NOT REJECTED TRAP CSERHRD .WORD -WORD 30$: 002000 CKLOOP BIT BNE ERRHRD ;LOOP ON ERROR ? #NBA,R1 35$ ERRNO, T72NBA,PKTSSR ;IS NBA BIT SET ? sOKAY IF NBA SET sNBA NOT SET ENDSUB 720 T74REJ WORD PKTSSR TRAP cscLP TRAP CSERHRD WORD PKTSSR .WORD -WORD 35$: 104403 PAGE 92-1 13 CMP BEQ 104456 001321 033202 012036 1508 032272 032272 032272 258: 001414 010100 25-MAY-82 08:41 721 T72NBA S NAANAANANANANNANL END SUBTEST \VANLALLLLLWWL L10061: TRAP CSESUB TSVSA = HARDWARE TESTS TEST MACRO M1113 O VONOVESWN = D d e e D e D d e — e N b cd d e wd e ViAW 7: WRITE CHARACTERISTICS SEQ 0161 :CHECK THAT WRITE CHARACTER ISTICS COMMAND IS REJECTED IF THE HESSAGE BUFFER LENGTH SPEC IFIES AN INVALID COUNT (LESS THAN 14) BGNSUB 032274 032274 032274 032304 4 032310 5 032314 v I WREV® N F13 gTEST 7, SUBTEST § N W b SETPRI 000000 000001 033120 034302 5%: 7 032320 #PRI00 :LOWER PRIORITY TO ALLOW INTERRUPTS MOV TRAP JSR PC,T7REST *RESTORE PACKET TO STARTING VALUES MOV #T7PACKET, R4 :GET THE ADDRESS OF COMMAND PACKET $233>>>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> JSR PC,SOFINIT MOV ERRDF RO,R1 ERRNO,SFIERR, SF IMSG BCS WW W N 108: 10§ CLR MOV MOV JSR INTRECV R3, T7DATA+4 R&.TSDB(RS) PC.WAITF MOV RO,R1 BCS ERRDF 15¢ ERRNO,T7SSR,PKTSSR 032374 15$: 032376 1547 032400 032400 002222 CKLOOP :DO SOFT INIT OF CONTROLLER *SAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD .WORD :CLEAR INTERRUPT RECEIVED FLAG :INSERT THE BAD MESSAGE LENGTH :SET THE PACKET ADDRESS sWAIT FOR SSR TO SET SEG ST BEQ ERRHRD INTRECV 22% ERRNO,T7INT,PKTSSR 228: MoV MOV BIT TSSRIRS),R1 #SC!SSR!TSREJ!NBA,R2 #OFL,R1 SFIERR SFIMSG :BR IF CARRY SET (GOOD RETURN) :DEVICE FATAL SSR FAILED TO SET TRAP CSERDF -WORD PKTSSR 723 T7SSR TRAP CSCLP1 :BY-PASS SUBTEST IF FATAL ERROR TRAP CSESCAPE .WORD 100008-. :DID AN INTERRUPT OCCUR ? *BRANCH IF NOT TRAP WORD -WORD 000002 102206 000100 722 :SAVE CONTENTS OF TSSR ;LOOP ON ERROR, IF FLAG SET ESCAPE ($BSEG *BR IF SOFT INIT = OK .WORD .WORD 1546 032376 CSSPRI ;STARTING BUFFER LENGTH .WORD 002222 033134 000000 016245 #PR100,RO #1,R3 TRAP 015764 ($8SUB MOV BGNSEG 032320 9 032322 032326 032330 22222077777, seg;nssuarfsr 111111101111 TRAP o WW NN b d b d e b ek d PAGE 93 e 521 1522 032276 - 25-MAY-82 08:41 .WORD :GET THE CONTENTS OF TSSR ;EXPECTED CONTENTS OF TSSR ;IS OFF=LINE BIT SET 2 CSERHRD 724 TZINT PKTSSR TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 1557 032436 1558 032440 1559 032444 1560 032446 1561 032450 1562 03245 1563 032462 1564 032466 1568 032470 032472 032474 032476 1569 032500 032500 1570 032502 1571 032506 1575 032510 032510 032516 1576 032520 1577 032520 032520 032520 1578 1579 032522 1580 032524 1581 032530 }gg% 032532 1584 032536 032 001402 052702 020201 001414 000100 25-MAY-82 08:41 001404 258: 002000 001325 033623 012036 104406 032701 001004 BEQ BIS 258 #OFL ,R2 MOV XOR CMP R1,R0 R2.R0 RO #NBA ERRHRD ERRNO,T7SREJ,PKTSSR CMP BEQ BEQ R2,Ri 30§ 30$ 308: 002000 sFIND BITS IN ERROR s1S NBA ONLY BIT IN ERROR ? sDON'T PRINT ERROR IF NBA ONLY BAD BIT s COMMAND NOT REJECTED TRAP CSERHRD CKLOOP BIT BNE ERRHRD :LOOP ON ERROR ? .WORD PKTSSR #NBA R1 35% ERRNO,T72NBA,PKTSSR s1S NBA BIT SET ? sOKAY IF NBA SET :NBA NOT SET TRAP cscLP TRAP CSERHRD .WORD PKTSSR .WORD .WORD 012036 358: ENDSEG INC CMP BGE 000016 032310 JMP 578: ENDSUB 725 T75REJ 726 T72NBA 5 €<<LLLLLLC<<< END SEGMENT <<<<<<<<<<<<< 100008: 104405 000137 sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH :DATA FROM TSSR WORD .WORD 104456 005203 020327 002002 13 SEQ@ 0162 010100 020027 PAGE 93-1 R3 R3,#14. 578 5% TRAP CSESEG sNEXT BUFFER LENGTH HAVE ALL BAD VALUES BEEN TESTED ? :BRANCH IF ALL TESTED sBRANCH TILL BACK TO ZERO S VVANAAAAANNANL END SUBTEST \AANNNNLLLWL L10062: TRAP CSESUB TSVSA = HARDWARE TESTS TEST MACRO M1113 7: WRITE CHARACTERISTICS 25-MAY-82 08:41 1586 PAGE 94 W13 SEQ 0163 :® 1587 ; }ggg ;TEST 7, SUBTEST 6 1590 :THIS SUBTEST IS EXECUTED ONLY IF THE EXTENDED }ggs :FEATURES MODE 1S ENABLED (AS DETERMINED BY EXAMINING sXST2 AFTER A PREVIOUS EXECUTION OF WRITE CHARACTERISTICS). 1593 1594 1595 sIT VERIFIES THAT A FIFTH CHARACTERISTICS DATA WORD IS FETCHED sIF THE BYTE COUNT PARAMETER IN THE COMMAND PACKET IS 10 DECIMAL :0R GREATER. 1596 H 1597 1598 032540 032540 032540 1599 032542 1600 032546 1601 032550 032550 032552 }ggg 032554 1604 032560 032560 032564 1605 032566 1606 032572 1607 032576 1608 032604 1609 032612 1610 032612 ik 032612 1612 032614 1613 032620 1617 032622 1618 032624 032624 032626 032630 032632 1619 032634 1620 032640 1621 032644 1622 032650 032654 1624 032656 1628 032660 032660 032662 032664 032666 1629 032670 1630 032674 032674 1631 032676 032676 - 104402 005737 001002 104432 001576 004737 012700 104441 012703 012704 012737 012764 002224 ST BNE EXIT 034302 48: 000000 002764 033120 000200 000012 033140 000006 58: 005037 010465 737 103407 015764 104406 104410 TRAP +WORD 108: 002220 sSET PACKET TO START-UP VALUES SETPRI #PRI0O sLOWER PRIORITY TO ALLOW INTERRUPTS MOV MOV MOV MOV #TSTBLK+12. .R3 #T7PACKET,Ré #200,T7SP #10. .PKBCNT (R4) BGNSEG MOV TRAP PC,SOFINIT 10§ RO,R1 ERRNO,SFIE SFRR, IMSG FATFLG INTRECV R&, TSDB(RS? PC.CHKTSSR MOV ERRDF RO,R1 ERRNO,T7SSR,PKTSSR 15§ INC FATFLG ESCAPE SEG CKLOOP #PRI00,RO CSSPRI sSTART OF TEST DATA sGET THE ADDRESS OF COMMAND PACKET sSPECIAL BIT SET FOR EXTFEA RAM RD sSTART WITH EXTENDED FEATURES VALUE $23355>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> CLR CLR MOV JSR BCS 15$: CSEXIT L10055-. PC,T7REST :DO SOFT INIT OF CONTROLLER ¢BR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURI?EA;NIT .WORD 002220 002222 000000 016326 csasus :1S EXTENDED FEATURES SOFT. SW SET? sBR, IF SOFTWARE SW'TCH IS SET (ON) sNO EXTENDED FEATURES EXIT THIS TEST JSR JSR BCS MOV ERRDF 010001 104455 001330 033721 012036 005237 EXTFEA 48 TST TRAP 104455 001327 003646 012024 005037 I11111711717 BE?;N6$UBTEST 111111111117 TRAP 104404 004737 103405 010001 BGNSUB C$BSEG CSERDF 727 «WORD WORD SFIERR SFIMSG .WORD WORD CSERDF 728 T7SSR sCLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEIVED FLAG sSET_THE PACKET ADDRESS sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDT;RPSET sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET PKTSSR TRAP cscLP TRAP CSESCAPE sBY=PASS SUBTEST IF FATAL ERROR TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 032700 163§ 032702 1633 032706 1637 032710 032710 032712 032714 032716 1638 032720 104456 001331 034101 012036 016501 1640 032730 1641 032734 1642 032736 032701 001402 052702 1648 032746 032746 032750 032752 032754 104456 001332 033260 012036 1639 032726 1643 032742 1644 032744 1649 032756 060156 005737 001404 012702 020201 001404 032756 1650 032760 104406 004737 1654 033002 1655 033006 001402 062702 1651 032764 1652 032770 1653 032774 1656 033010 1657 033014 1658 033016 1662 033020 033020 033022 033024 033026 1665 033030 1666 033036 1667 033040 1671 033042 016501 012702 032762 062702 020102 ST BEQ ERRHRD 000002 228: 000200 000100 000100 258: 012704 004737 103404 1673 033052 1674 033056 012704 o 033056 104405 1676 033060 012364 1677 033064 020327 }2878 033072 000137 103002 MoV 30$: 016326 000000 033146 000200 000002 000016 328: R2,Ri 30§ 033120 000006 003056 032612 358: 100008-. TRAP LWORD .WORD .WORD :GET THE CONTENTS GF TSSR CSERHRD 729 TZINT PKTSSR *EXPECTED CONTENTS OF TSSR :1S OFF=LINE BIT SET ? *BRANCH IF NOT OFF=LINE :SET OFF=LINE IN EXPECTED DATA ERRNO, T7NBA,PKTSSR *MBA NOT ZERO :DOES EXPECTED MATCH RECEIVED ? SOKAY IF MATCH :LOOP ON ERROR ? TRAP .WORD JWORD .WORD #BIT7,XST2(R2) +1S EXTENDED FEATURES BIT SET ? ADD 4. R2 sEXPECTED CONTENTS OF TSDA BEQ ADD TSBA(RS) ,R1 #T7BFR,R3 328 #2.R2 :BRANCH IF EXTENDED FEATURES OFF *EXTRA WORD IF SPECIAL FEATURES R1,R2 ERRHRD ERRNO, T7TSBA,EXPREC MOV JSR #T7DATA.RG PC, CKRAM2 ERRHRD ERRNO,PKTRAM,RAMERR MOV :ERROR IF NOT EQUAL :PRINT THE ERROR §& EXPD/RECV TRAP LWORD .WORD .WORD #T7PACKET,R4 :BRANCH IF PACKET IN RAM IS CORRECT *REPORT THE RAM ERROR(S) (R3)+,PKICNT (R4) :SET THE TEST WORD 55§ *BRANCH IF ALL DATA DONE 5% TRAP .WORD .WORD .WORD CSERHRD 732 PKTRAM RAMERR ;RESET PACKET POINTER 5 €<<<CCCCC<< END SEGMENT <<<<<<<<<<<<< 100008: JMP CSERHRD 731 T7TSBA EXPREC :SET POINTER FOR CHECKER :SEE IF DATA IN RAM IS CORRECT 408 R3,#TBLEND BHIS :COMPARE EXPECTED TO RECEIVED 35§ CMP CSCLP1 :GET TSBA REGISTER CONTENTS *START OF THE DATA BUFFER CMP MOV ENDSEG CSERHRD 730 T7NBA PKTSSR TRAP :WAIT FOR READY, NON-AMBIGUOUS PC,CHKTSSR MOV MOV BIT BCS 408: .WORD :DID ANINTERRUPT OCCUR ? *BRANCH IF NOT #OFL .R1 258 #OFL ,R2 CKLOOP BEQ 033130 011214 TSSR(RS) ,R1 CMP BEQ BIT BEQ BIS SEQ 0164 INTRECV 228 ERRNO,T7INT,PKTSSR #SSR,R2 JSR 000012 PAGE 94-1 MOV ERRHRD 104456 001333 034170 015464 104456 001334 004741 015500 1678 033070 002222 001404 033042 033044 033046 e 033050 033056 25-MAY-82 08:41 , TRAP :HAS ALL DATA BEEN TESTED ? sBRANCH TILL BACK TO ZERO CSESEG TSVSA = HARDWARE TESTS MACRO M1113 TEST 7: WRITE CHARACTERISTICS 25-MAY-82 08:41 1681 033076 55%: 033076 033076 104403 1684 0331046 1685 033106 001402 004737 033112 033114 104432 001234 1682 1683 033100 1686 033112 1687 033112 1688 1689 005737 002220 608: FATFLG 100004 033130 000000 000010 1702 033130 1703 033130 1704 033132 1705 033134 1706 033136 033146 000000 000016 000000 60% PC,CKDROP JBRANCH IF NOT sTRY TO DROP THE UNIT EXIT TST ;sALL DONE THIS TEST 033120 .=<.+10>8177770 T7PACKET: .WORD 100004 .WORD T7DATA WORD O TRAP .WORD CSEXIT L10055-. 000000 8. T7SP: .WORD WORD .WORD WORD .WORD T7BFR 0 14. O 0 JEXTFEA EXTRA WORD T7BFR: .WORD .BLKW 0,0 8. :SPACE sMESSAGE BUFFER T7DATA: 000000 000000 };}9 ;DATA HAS FORMAT: 1718 1719 1720 1721 1722 1723 033166 1724 033166 1725 033172 1726 033176 1727 1728 1729 1730 1731 3 3 : = };}g ;COMMAND PACKET FOR TEST JWRITE CHARACTERISTICS COMMAND, WITH ACK sADDRESS OF CHARACTERISTICS BLOCK .WORD .+ 3 1734 033202 1735 033260 CSESUB JANY FATAL ERRORS ? BEQ JSR 1712 1713 1733 TRAP sLOCAL STORAGE FOR THIS TEST 1692 1694 1696 033120 1697 033120 1698 033122 1699 033124 };8? 033126 1709 033142 };}? 033146 S \NANAANAAANNAL END SUBTEST \NANAMANNANNLL L10063: 3¢ }gg? };8; 033140 SEQ 0165 ENDSUB TST 017172 13 PAGE 94=2 sSTARTING VALUE OF BLOCK SIZE sCHARACTERISTICS DATA BLOCK sADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER sTEST DATA FOR SUBTEST TWO 000000 037140 000004 033202 100100 000002 T72DATA: 000001 1ST WORD Z2ND WORD .WORD .WORD .WORD T72DONE=. OFFSET TO TEST WORD IN PACKET BITS TO SET FOR TEST O,BITS!BIT6!BITO!BITI0!BITI1!BIT12!BITI3 2.BITO 4,BIT6!BIT1S i sLOCAL TEXT MESSAGES FOR TEST 116 127 102 122 101 111 ” T72NBA: T7NBA: .ASCIZ .ASCIZ °'NBA Not Set On Rejected WRITE CHARACTERISTICS® ‘WRITE CHARACTERISTICS Command Not Accepted' Y U G ST G R VIS SO b cd b NN O O = b e b 25-MAY-82 08:41 T72REJ: T?3REJ: T74REJ: T7SREJ: T7NINT: T7TSBA: TST7ID: PAGE 94-3 NNNNNNNNN M1113 [ Oo D e d b e b W v FRER N o own &~ H - B Y O S T b e S d b p—ry N=NOOMNNN N N=UVVNWNN~N ~ — —y 7: WRITE CHARACTERIST —_,— TEST MACR oINS OO NN TSVSA = HARDWARE TESTS 13 'WRITE CHARACTERISTICS Not Rejected With Non-Zero Unused Fields' 'WRITE CHARACTERISTICS Not Re;ectod With Invalid Data Count’ 'WRITE CHARACTERISTICS Not Re ected With Invalid Block Address’ 'WRITE CHARACTERISTICS Not Re ected With Invalid Buffer Length’ 'Contents of TSSR Incorrect After WRITE CHARACTERISTICS® 'Expected Interrupt Not Received On WRITE CHARACTERISTICS® 'Unexpected Interrupt Received On WRITE CHARACTERISTICS® ‘Incorrect TSBA Address After WRITE CHARACTERISTICS® 'Write Characteristics’ SEQ 0166 [TSVSA = HARDWARE TESTS MACRO M1113 25-MAY-82 08:41 PAGE 95 TEST 7: WRITE CHARACTERISTICS SEQ@ 0167 M :ROUTINE TO RESTORE COMMAND PACKET TO START-UP (DEFAULT) VALUES 034302 T7REST: 033120 033130 100004 000010 MOV 000020 MOV ) D i SAVREG MOV MoV MOV b b D D e D NNNN\IVNNNJ Vi w QoSS &I& o AAAAN AT NONVESNN) —o AT vOO SININIIY ~ 1748 1749 - 13 > W r o _— e D e D ) b 033146 CLR MOV CLR CLR CLR RTS ENDTST 104401 #T7PACKET,R1 #100004, (R1) + #T7DATA, (R1)+ (R1)+ #8..(R1)+ #T7BFR, (R1)+ (R1)+ #16.,.(R1)+ (R1)+ (R1) PC sSAVE THE REGiSTERS sSTART OF THE PACKET sWRITE CHARACTERISTICS WITH ACK sADDRESS OF CHAR DATA BLOCK sEXTENDED ADDRESS sSIZE OF DATA BLOCK IN BYTES sADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER sRETURN L10055: TRAP CSETST TSVSA = HARDWARE TESTS TEST 8: VOLUME CHECK MACRO M1113 25-MAY-82 08:41 PAGE 96 +SBTTL TEST M3 SEQ 0168 8: VOLUME CHECK THIS TEST VERIFIES THAT THE VOLUME CHECK (VCK) BIT, A FLAG HELD WITHIN THE M7196 AND APPEARING IN XSTO, IS SET BY INITIALIZE AND CLEARED BY EXECUTING A WRITE CHARACTERISTICS COMMAND WITH THE CvC BIT SET. IT IS ALSO VERIFIED THAT A WRITE CHARACTERISTICS COMMAND WITH THE CVC BIT CLEAR DOES NOT AFFECT THE STATE OF THE VOLUME CHECK BIT. THE ACTUAL FUNCTION OF VOLUME CHECK, THAT OF PREVENTING OR ALLOWING A TAPE MOTION COMMAND DEPENDING UPON’ WHETHER_VOLUME CHECK IS SET OR CLEAR, IS NOT CHECKED BY THIS TEST; THIS FUNCTIONALITY IS CHECKED IN THE INDIVIDUAL TESTS OF TAPE MOTION COMMANDS. THE TEST PROCEEDS AS FOLLOWS: 1. 2. 3. 4. 5. B 0 W =1= g 034352 356 362 % 8 RR Py 00 0o 00 00 0o 00 0O = R00 N = d = =d ) ed N= YOV W =o 1804 1805 034352 THE CONTROLLER IS INITIALIZED BY WRITING INTO THE TSSR. A WRITE CHARACTERISTICS COMMAND IS ISSUED (WITH CV(C=0) AND XSTO IN THE RETURNED MESSAGE BUFFER IS EXAMINED; THE VCK BIT SHOULD BE CLEAR (0). THE PREVIOUS STEP 1S REPEATED TO VERIFY THAT V(K DOES NOT CHANGE (REMAINS AT 0). A WRITE CHARACTERISTICS COMMAND IS ISSUED WITH CVC=1 AND THE VCK BIT IN XSTO IN THE MESSAGE BUFFER IS EXAMINED; THE VCK BIT SHOULD BE CLEAR (0). A WRITE CHARACTERISTICS COMMAND IS ISSUED WITH CV(C=0 AND THE VCK BIT IN XSTO IN THE MESSAGE BUFFER IS EXAMINED; THE VCK BIT SHOULD REMAIN CLEAR (0). BGNTST 012700 004737 012737 012704 004737 103405 010001 035237 016500 000024 034760 015764 040000 000000 016326 002214 T8LOOP: 5$: 108: - MOV JSR - #TSTBID.RO PC,TSTSETUP MOV’ = - #20.,LOOPCNT :PERFORM 20 ITERATIONS MOV - . JSR BCS MOV ERRDF ATBPACKET,R4 PC,SOF INIT 10§ RO,R1 ERRNO,SFIERR, SF IMSG BIC #BIT14, (R4) :PACKET FOR WRITE CHARACTERISTICS :DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = OK *SAVE CONTENTS OF TSSR *DEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD 801 .WORD SFIERR .WORD SFIMSG ;CLEAR THE CVC BIT JSR PC.CHKTSSR MOV ERRDF RO,R1 ERRNO,T8SSR,PKTSSR MOV BCS ;ASCII MESSAGE TO IDENTIFY TEST ;DO INITIAL TEST SETUP R&4, TSDB(RS) :SET THE PACKET ADDRESS FOR WRITE CHAR 15§ :BR IF CARRY SET (GOOD RETURN) *WAIT FOR SSR TO SET :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDT;O SET AP CSERDF TSVSA = HARDWARE TESTS TEST 8: VOLUME CHECK 034436 034440 03444 1832 834424 1833 034446 03444 MACRO M1113 25-MAY-82 08:41 SEQ 0169 035150 012036 15%: 104406 104410 000604 035002 000020 MoV 000006 BIT BEQ 000002 MoV ERRHRD 0345 1851 034530 034530 1852 034532 034532 034534 1853 034536 '854 034544 1858 034546 1859 034552 034552 034554 034556 034560 1860 034562 004737 103405 20$: 000000 016326 #T8BFR,R2 #XSOVCK,XSTO(R2) 20% TSSR(RS) ,R1 ERRNO, TBNVCK ,PKTMES SEXIT IF FATAL ERROR cscLP TRAP . WORD L10064~. ;LOOP ON ERROR ? R4,TSDB(RS) PC,CHKTSSR 25$ .WORD CKLOOP ESCAPE 000020 000006 #XSOVCK,XSTO(R2) 308 000002 ERRHRD 104456 001445 035057 012100 308: 040000 000000 016326 ERRNO, TBNVCK ,PKTMES sWAIT FOR SSR TO SET sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET MOV ERRDF #BIT14,(RG) R4 ,TSDB(RS) PC,CHKTSSR 35§ RO,R1 ERRNO,T8SSR,PKTSSR CKLOOP ESCAPE sEXIT IF FATAL ERROR . CSERDF TBSSR .WORD PKTSSR TRAP CSCLP1 TRAP «WORD L10064~. TRAP .WORD CSERHRD 805 CSESCAPE ‘WORD PRTNES y TRAP CSCLP1 .WORD .WORD .WORD 806 TBSSR PKTSSR TRAP CSCLPT TRAP CSESCAPE sSET THE CVC BIT sSET_THE FACKET ADDRESS FOR WRITE CHAR sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDr;2PSET CSERDF :LOOP ON ERROR, IF FLAG SET ST 4 ¢IS VOLUME CHECK SET IN XSTO ? ;OKAY IF VOLUME CHECK IS SET :CONTENTS OF TSSR FOR ERROR REPORT :VOLUME CHECK NOT SET :LOOP ON ERROR ? CkLooP BIS MoV JSR BCS 35%: TSSR(RS) ,R1 PKTMES :BR IF CARRY SET (GOOD RETURN) :LOOP CN ERRCR, IF FLAG SET TST CSERHRD 803 T8NVCK TRAP CSCLP1 sSET_THE PACKET ADDRESS FOR WRITE CHAR .WORD 25$: CSESCAPE ;ADDRESS OF THE "ESSAGE BUFFER ;1S VOLUME CHECK SET IN XSTO ? sOKAY IF VOLUME "HECK IS CLEAR sCONTENTS OF TSSR FOR ERROR REPORT sVOLUME CHECK NOT CLEAR TRAP 104410 104410 TST RO,R1 ERRNO,T8SSR,PKTSSR 104406 034562 TRAP :LOOP ON ERROR, IF FLAG SET CKLOOP Mov JSR 104455 001444 035150 012036 1861 034564 1862 034570 1863 034574 1864 034600 1865 034602 1869 034682 802 TBSSR PKTSSR .WORD «WORD 010001 016501 .WORD +WORD WORD TRAP 001443 035057 012100 104406 010465 CKLOOP ESCAPE 104456 1846 034516 1850 034520 N 13 001442 016501 034500 1842 034502 034502 1843 034504 1844 034510 1845 034514 PAGE 96-1 sEXIT IF FATAL ERROR . o TSVSA = HARDWARE TESTS 8: VOLUME CHECK TEST 034620 000434 1872 034622 1873 034630 1877 034632 032762 001406 016501 034636 034640 034642 034644 1879 034646 034646 104456 001447 035022 012100 1882 034660 004737 1884 034666 1888 034670 010007 1878 0346 104406 1880 034650 042714 1881 034654 010465 1883 034664 103405 MACRO M1113 000020 016326 034702 034704 1891 034706 104410 000350 032762 000020 1896 034716 016501 000002 1897 034722 034722 034724 034726 034730 1898 034732 034732 1899 034734 1900 034740 104456 001451 035022 012100 104406 004737 103002 016446 1901 034742 000137 034370 1902 034746 1903 034746 034750 104432 000304 1904 1905 1906 1907 1909 034760 1912 05476 100004 1911 034760 1913 034762 1914 034764 mz 034766 034770 000000 000010 1917 034770 1918 034770 1919 034772 035002 000000 000006 #XSOVCK,XSTO(R2) 408 TSSR(RS) ,R1 ERRNO, TBVCK ,PKTMES L10064~. :VOLUME CHECK NOT CLEARED ;LOOP ON ERROR ? TRAP .WORD .WORD .WORD CSERHRD 807 TBVCK PKTMES TRAP CSCLP1 ;CLEAR THE CVC BIT *SET THE PACKET ADDRESS FOR WRITE CHAR BCS 45§ :BR IF CARRY SET (GOOD RETURN) PC.CHKTSSR :WAIT FOR SSR TO SET RO,R1 ERRNO,T8SSR,PKTSSR CKLOOP TST BIT #XSOVCK,XSTO(R2) MOV TSSR(RS) ,R1 508: CKLOOP 60$: JSR :SAVE CONTENTS OF TSSR :DEVICE FATAL SSR FAILED TO SET ;EXIT IF FATAL ERROR - 508 ERRNO, TBVCK,PKTMES CSCLP1 PC,TSTLOOP :OKAY IF VOLUME CHECK IS CLEARED *BRANCH IF NOT EXIT TST *ALL DONE THIS TEST T8LOOP i+ :LOCAL STORAGE FOR THIS TEST .=<.+10>8177770 .WORD TRAP *CONTENTS OF TSSR FOR ERROR REPORT 62% TBPACKET: CSERDF 808 T8SSR PKTSSR TRAP CSESCAPE .WORD L10064~. ;1S VOLUME CHECK CLEAR IN XSTO ? BCC JMP TRAP .WORD .WORD .WORD *VOLUME CHECK NOT CLEARED TRAP .WORD .WORD .WORD :LOOP ON ERROR ? TRAP ;3HOULD WE DO ITERATIONS ? 100004 .WORD WORD WORD TBDATA O 10 .WORD WORD T8BFR O CSERHRD 809 TBVCK PKTMES CSCLP1 *LOOP UNTIL COUNT EXPIRED TRAP .WORD CSEXIT L10064~-. ;COMMAND PACKET FOR TEST *WRITE CHARACTERISTICS COMMAND :ADDRESS OF CHARACTERISTICS BLOCK ;STARTING VALUE OF COUNTER ;CHARACTERISTICS DATA BLOCK :ADDRESS OF MESSAGE BUFFER ‘ | , ' ;LOOP ON ERROR, IF FLAG SET ESCAPE ERRHRD T8DATA: .WORD ;1S VOLUME CHECK CLEAR IN XSTO ? :OKAY IF VOLUME CHECK IS CLEARED :CONTENTS OF TSSR FOR ERROR REPORT #BIT14, (R4) R4, TSDB(RS) BEQ 628: SEQ 0170 BIC MOV JSR 458: PAGE 96-2 CKLOOP MOV ERRDF 104406 001406 ERRHRD 040000 000000 034700 1892 034714 BIT BEQ MOV 408: 104455 001450 035150 012036 1890 034702 000006 000002 034670 034672 034674 034676 1889 034700 25-MAY-82 08:41 | = , | z ; | i | : z ! | TSVSA = HARDWARE TESTS TEST 8: VOLUME CHECK 1920 034774 }9%1 034776 19%% 035002 000020 000000 MACRO M1113 25-MAY-82 08:41 .WORD .WORD 000000 PAGE 96-3 (o [ 16. 0,0 T8BFR: .BLKW 8. 1924 1925 1926 SEQ 0171 sLENGTH OF MESSAGE BUFFER sMESSAGE BUFFER 3 }ggg sLOCAL TEXT MESSAGES FOR TEST 1929 1930 035022 1931 035057 1932 035150 1933 035237 1934 1935 035254 035254 035254 126 126 103 126 104401 157 157 157 157 156 154 156 156 X T8VCK: T8NVCK: T8SSR: T1ST8ID: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .EVEN cNDTST 'vVolume Check Bit Not Cleared’ ‘Volume Check Bit (VCK) Not Clear After Initialize (XSTO)* 'Contents of TSSR Incorrect After Write Characteristics’ ‘Volume Check' L10064: TRAP CSETST TSVSA = HARDWARE TESTS TEST MACRO M1113 3: COMPLETION INTERRUPT 25-MAY-82 08:41 1937 .SBTTL 1938 1939 DATR TE TR PR DR PR VIS ISERTETETE W= OV~ - i e e b b D d b e SAAARRRRRRRR ek PR PR PR TS T 1940 1941 1954 005037 012700 004737 012737 0 000024 002214 9: COMPLETION INTERRUPT ENABLE (IE> BIT IN THE COMMAND HEADER WORD IS SET. THIS TEST CHECKS THC FUNCTIONING OF THE INTERRUPT LOGIC AND BAS:IC PROCESSING OF THE IE BIT. THE SEQUENCES OF TEST 7 ARE REPEATED, EXCEPT THAT THE INTERRUPT SERVICE ROUTINE IS5 SET UP TO EXPECT INTERRUPTS AND EACH WRITE CHARACTERISTICS COMMAND IS ISSUED WITH THE IE BIT SET (1). IT 1S VERIFIED, WHERE APPROPRIATE, THAT THE IE STATUS BIT IN XSTO OF ANY MESSAGE PACKET IS SET AND THAT A COMPLETION INTERRUPT IS GENERATED. FINALLY, A SEQUENCE OF TWO COMMANDS ARE ISSUED, THE FIRST WITH IE=1 AND THE SECOND WITH IE=0. IT IS VERIFIED THAT ?g é?}f?zuzgtéslgEgERAffb AFTER THE SECOND COMMAND AND THAT THE BGNTST MOV JSR TOLOOK- TEST SEQ 0172 THIS TEST VERIFIES THAT AN INTERRUPT IS GENERATED AT THE COMPLETION OF THE WRITE CHARACTERISTICS COMMAND IF THE INTERRUPT CLR 002224 D 14 PAGE 97 MOV - EXTFEA ;CLEAR EXTENDED FEATURES SWITCH #20.,LOOPCNT :PERFORM 20 ITERATIONS #TST9ID,RO PC,TSTSETUP BGNSUB *ASCII MESSAGE TO IDENTIFY TEST ;D0 INITIAL TEST SETUP Y22277177777 asggulsuatesr 111111111111 104402 004737 TRAP 040316 JSR SETPRI 000000 MOV 00276 2 037220 000010 1974 035332 000006 MOV 5%: 035332 1975 1976 035334 1977 035340 1981 035342 1982 035344 015764 MOV #TSTBLK+10. .R3 #TOPACKET R4 #8. ,PKBCNT (R4) BGNSEG JSR BCS MOV ERRDF 035344 PC,TOREST #PRI00 ;SET PACKET TO INITIAL VALUES :LOWER PRIORITY TO ALLOW INTERRUPTS MOV :START OF TEST DATA TRAP CLR CLR MOV :START WITH MINIMUM ALLOWABLE VALUE TRAP PC,SOF INIT 108 RO,R1 ERRNO, SF IERR, SF IMSG FATFLG INTRECV Ré,TSDB(RS) :SAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD .WORD ;CLEAR FATAL ERROR FLAG :CLEAR INTERRUPT RECEIVED FLAG 15§ ERRNO,T9SSR,PKTSSR sDEVICE FATAL SSR FAlLEDT;O SET MOV RO,R1 ($BSEG :DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = OK :SET THE PACKET ADDRESS :WAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN PC.CHKTSSR ERRDF (CSSPRI $22355>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> JSR BCS #PR100,RO :GET THE ADDRESS OF COMMAND PACKE) .WORD 108: ($BSUB 901 SFIERR SFIMSG :SAVE CONTENTS OF TSSR AP CSERDF TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 035402 035404 035406 1993 035410 25-MAY-82 08:41 002220 15%: 035414 1995 035416 035416 035420 1996 035422 1997 035426 2001 035430 035430 002222 PKTSSR TRAP csCLP TRAP .WOR D CSESCAPE 100008~ . FATFLG ESCAPE SEG ;BY=PASS SUBTEST IF FATAL ERROR TST BNE ERRHRD INTRECV 22% ERRNO, TONINT ,PKTSSR ;DID AN INTERRUPT OCCUR ? sBRANCH IF YES TSSR(RS) ,R1 000100 #SSR,R2 #OFL .R1 000100 #OFL ,R2 25$ R2,R1 25%: 30$ ERRNO, T9NBA ,PKTSSR sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TRAP .WORD sGET 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 ? sOKAY IF MATCH JNBA NOT ZERO TRAP WORD 037276 012036 308: .WORD .WORD : 000006 003056 MoV CMP BHIS M- 035332 55%: (R3)+,PKBCNT (R4) R3,#TBLEND 55§ 13 ENDSUB " 7oA 002224 000200 60%: : 708 BEQ JSR BIT BEQ INC CSERHRD 904 TONBA PKTSSR CSESEG sSET THE TEST WORD sHAS ALL DATA BEEN TESTED ? sBRANCH IF ALL DATA DONE sBRANCH TILL BACK TO ZERO TRAP TST PKTSSR S VAL END SUBTEST \\A\NNALLWW L10066: 104403 002220 CSERHRD 903 TONINT 2 €<<LLLCCLLLLLL Eybogsgniut <CLLLLLLLLLL ENDSEG 104405 012364 020327 103002 000137 902 T9SSR WORD INC CkLOOP 22%: 017172 037254 2029 035546 SEQ 0173 .WORD «WORD 035436 2002 035440 2003 035444 2004 035450 2005 035454 2006 035456 2007 035462 2008 035464 2012 035466 035466 2023 035520 14 .WORD .WORD 1994 035414 0 2013 035476 2014 035476 035476 035476 2015 2016 035500 2017 035504 2018 035510 2019 035512 2020 2021 035516 035516 035516 2022 PAGE 97-1 FATFLG 608 PC,CKDROP T98FR+12,#B177 708 EXTFEA sANY FATAL ERRORS ? sBRANCH IF NOT :TRY TO DROP THE UNIT sEXTENDED FEATURES SET? :BR_IF NO :SET EXT FEATURE FLAG CSESUB TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 25-MAY-82 08:41 PAGE 98 F 14 SEQ 0174 & :TEST 9, SUBTEST 2 :CHECK THAT UNUSED BITS BEING SET CAUSES sWRITE CHARACTERISTICS COMMAND TO BE REJ ECTED 2039 2040 035546 035546 035546 2041 2042 035550 035550 035554 2043 035556 2044 035562 %045 035566 046 2047 035572 035572 2048 2049 035574 2050 035600 2054 035602 2055 8%5604 03561 2056 035614 2057 035620 2058 035622 2059 035624 BGNSUB 000000 027262 037220 040316 58: SETPRI #PRI0O Mov #T92DATA,R3 Mov JSR #TOPACKET R4 PC,T9REST BGNSEG 015764 002222 108: PC,SOFINIT ERRDF ERRNO,SFIERR,SFIMSG CLR 000002 000000 016240 INTRECV sSTART OF TEST DATA FOR SUBTEST sGET _THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES ;DO SOFT INIT Of CONTROLLER :BR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURI?&AgulT .WORD -WORD .WORD RO,R1 ERRNO,T9SSR,PKTSSR (RS) RO ESCAPE SEG :BY=PASS CHECKS IF FATAL ERROR TST INTRECV :DID AN INTERRUPT OCCUR ? *BRANCH IF YES 22% ERRNO,TONINT,PKTSSR TSSR(RS) ,R1 SFIMSG sWAIT FOR SSR TO SET :LOOP ON ERROR, IF FLAG §SIP CKLOOP MOV CSERDF 905 SFIERR sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TRPSET 2(R3), (RO) oo 228: C$SPRI R4, TSDB(RS) BIS BNE ERRHRD #PRIOO0,RO MoV TRAP sCLEAR INTERRUPT RECEIVED FLAG sSTART OF THE COMMAND PACKET cOFFSET TO THE DATA WORD YO TEST sSET THE DATA BITS TO BE 1CSTED sSET_THE PACKET ADDRESS R4 RO MOV 002222 000002 108 RO,.R1 MOV ADD sLOWER PRIORITY TO ALLOW INTERRUPTS $23333>3>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP C$BSEG JSR BCS MOov 158: 035676 2076 035700 csesus TRAP MOV ERRDF 2069 035656 035656 035660 2070 035662 2071 035666 2075 035670 035670 /1111111717 BfggN SUBTEST /777711111117 CSERDF 906 T9SSR PKTSSR CSCLPT TRAP .WOR CSESCAPE TRAP .WORD CSERHRD 907 -WORD .WOR sGET THE CONTENTS OF TSSR 100008~ TONINT PKTSSR TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 2077 035704 2078 035710 2079 035714 2080 035716 012702 032701 001402 052702 2082 035724 2086 035726 035 001404 03573¢ 2087 035736 2088 035736 035736 < 035736 012036 2090 035740 2091 035744 062703 020327 000004 037276 5832 035752 000137 035562 2081 035722 2092 035750 2095 035756 035756 035756 020201 25-MAY-82 08:41 ~ 102206 000100 000100 PAGE 98-1 258: 104456 MOV BIT BEQ BIS #SC!SSR!TSREJ!NBA R2 #OFL,R1 |3 #OFL,R2 BEQ ERRHRD 30$ ERRNO, T92REJ,PKTSSR (MP R2,R1 30$: ENDSEG ssskflflb .WORD PKTSSR 100008: #4,R3 R3.#T92DONE JMP 13 ENDSUB Y92REJ 2 €< END SEGMENT <<<<<<<<<<<<< ADD CMP BHIS 59$: 104403 TRAP -WORD .WORD 104405 103002 sEXPECTED CONTENTS OF TSSR ;1S OFF=LINE BIT SET ? sBRANCH IF NOT OFF-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH s COMMAND NOT REJECTED 59§ TRAP CSESEG sPOINT TO NEXT DATA PAIR sCOMPARE TO END OF TEST DATA sBRANCH IF ALL DATA TESTED sBRANCH TILL BACK TO ZERO SNNNAMAANANANANANAAY END SUBTEST \NANLAALLLLLL L10067: TRAP CSESUB SEQ 0175 TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 2097 2098 25-MAY-82 08:41 PAGE 99 14 ~ 3 3 %?88 sTEST 9, SUBTEST 3 2101 sCHECK THE WRITE CHARACTERISTICS COMMAND IS REJECTED %}8% sIF ISSUED WITH AN INVALID DATA BLOCK BYTE COUNT 2106 035760 035760 0 035760 2108 035762 035762 035766 2109 035770 BGNSUB St 012700 104441 012703 000001 004737 040316 012704 2113 036004 2116 036006 104404 g}}; 036000 2115 036006 2116 036012 2120 036014 2121 036016 036016 036020 036022 036026 2122 036026 2123 036032 2124 036036 2125 036042 036046 2127 036050 2131 036052 036052 036054 036056 036060 2132 036062 036062 2133 036064 036064 036066 2134 036070 2135 036074 2139 036076 036076 036100 036102 036104 2140 036106 2141 036112 2142 036116 /117111111177 BEGIN SUBTEST /771171111117 719.3: TRAP c$8suUB 104402 2110 035774 2126 SEQ 0176 004737 103405 010001 104455 001615 003646 012024 005037 010364 010465 004737 103405 000000 037220 5%: 015764 002222 000006 000000 016240 104455 001616 037737 012036 108: ;LOWER PRIORITY TO ALLOW INTERRUPTS MOV #1,R3 :STARTING BYTE COUNT JSR PC,TO9REST sRESTORE PACKET TO STARTING VALUES MOV #TOPACKET,R4 002222 000002 102206 000100 22%: PC,SOFINIT 108 RO.R1 ERRNO,SFIERR,SFIMSG CLR MOV MOV JSR INTRECV R3,PKBCNT(R4) R4, TSDB(RS) PC,WAITF MOV ERRDF RO,R1 ERRNO,T9SSR,PKTSSR 15§ CKLOOP ESCAPE SFG TST BNE ERRHRD INTRECV 22% ERRNO,TONINT,PKTSSR MOV MOV BIT MOV TRAP #PRIOO,RO CSSPRI :GET THE ADDRESS OF COMMAND PACKET 22333>>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP C$BSEG JSR BCS MOV ERRDF BCS 15%: 104406 104456 001617 040026 012036 016501 012702 032701 #PRIOO BGNSEG 010001 104410 000056 005737 001004 SETPRI TSSR(RS) ,R1 #SC'SSR'TSREJ 'NBA,R2 #OFL .R1 ;DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K :SAVE CONTENTS OF TSSR :DEVICE +ATAL ERROR DURING INIT TRAP CSERDF .WORD 909 .WORD SFIERR .WORD SFIMSG :CLEAR INTERRUPT RECEIVED FLAG ;INSERT THE BYTE COUNi FOR TEST :SET THE PACKET ADDRESS :WAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) :SAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 910 b, WORD TOSSR .WORD PKTSSR :LOOP ON ERROR, IF FLAG SET TRAP cscLP :BY=-PASS SUBTEST IF FATAL ERROR TRAP CSESCAPE .WORD 100008-. :DID AN INTERRUPT OCCUR ? JBRANCH IF YES TRAP LWORD .WORD .WORD :GET THE CONTEMTS OF TSSR sEXPECTED CONTENTS OF TSSR IS OFF-LINE BIT SET ? CSERHRD 911 TONINT PKTSSR TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 2143 036122 2144 036126 2145 036130 2146 036132 2150 036134 036134 036136 036140 036142 2151 036144 2152 036144 036144 036144 2153 2154 036146 2155 036150 2156 036154 %}g; 036156 2159 036162 036162 036162 001402 052702 020201 001404 000100 104456 001620 037450 012036 25-MAY-82 08:41 258: BEQ BIS CMP BEQ ERRHRD PAGE 99-1 25% #OFL ,R2 Rg‘ki 3 ERRNO, T93REJ,PKTSSR 30s: sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH s COMMAND NOT REJECTED TRAP .WORD ENDSEG INC CMP BGE JMP 000006 035774 59%: 104403 SEQ 0177 .WORD .WORD ENDSUB CSERHRD 912 T93REJ PKTSSR s €<<<CCCCC<<<< END SEGMENT <<<<<<<<<<<<( 100008: 104405 005203 020327 002002 000137 14 R3 R3,#6 59% 5% TRAP CSESEG JNEXT BYTE COUNT sTESTED ALL INVALID ? :BRANCH IF TEST DONE JBRANCH TILL BACK TO ZERO SNNAAAANANANNAANAN END SUBTEST \ANNALLLLLLLLLL L10070: TRAP CSESUB TSVSA = HARDWARE TESTS TEST MACRO M1113 PAGE 100 J 14 - o SEQ 0178 & :TEST 9, SUBTEST & :SUBTEST TO VERIFY THAT A WRITE CHARACTERISTICS COMMAND IS e cd D o e d it NN PN ~N 9: COMPLETION INTERRUPT 25-MAY-82 08:41 e e sREJECTED IF AN ILLEGAL DATA BLOCK ADDRESS IS ISSUED. 1111111117 fiE(tisN‘SliTEST 111111111117 BGNSUB 104402 SETPRI 000000 037262 004737 103405 010001 5%: 015764 002222 000001 000000 016240 & g o NN RETIBIRA 1046455 001621 00 037230 108: #T92DATA,R3 #TOPACKE R4 T PC,T9REST JSR BCS MoV ERRDF PC,SOFINIT CLR BIS JSR BCS ERRDF 64 2195 036266 036 2196 036270 15%: 002222 TST BNE ERRHRD 83 [« Y ) N oS3 NN =N — ogo2eee AN A b =2 = 000002 102206 000100 000100 22%: 108 RO,R1 ERRNO, SFIERR, SF IMSG INTRECV #1,T9DATA Ré4.TSDB(RS) PC.WAITF 15§ RO,R1 ERRNO, T9SSR, PKTSSR sus INTRECV 22% ERRNO, TONINT ,PKTSSR TSSR(RS) ,R1 #SC!SSR!TSREJ!NBA,R2 #0FL,R1 #0FL .R2 cs8sus ;LOWER PRIORITY TO ALLOW INTERRUPTS MoV TRAP #PRI00,RO CSSPRI sSTART OF TEST DATA FOR SUBTEST sGET _THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES ;D0 SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURI#EAANIT .WORD «WORD .WORD ;CLEAR INTERRUPTDRECEIVED FLAG sMAKE ADDRESS 0D sSET_THE PACKET ADDRESS sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TgPSET ;LOOP ON ERROR, IF FLAG ;RAP CKLOOP ESCAPE 03627 2197 036274 #PRI00 MoV MOV JSR ettt F wo—<< OSSN TN A b b b d b 012700 TRAP ;BY=PASS SUBTEST IF FATAL ERROR CSERDF 913 SFIERR SFIMSG CSERDF 914 T9SSR PKTSSR cscLP TRAP WORD CSESCAPE L10071-, TRAP -WORD «WORD .WOR CSERHRD 915 TONINT :DID AN INTERRUPT OCCUR ? sBRANCH IF YES sGET THE CONTENTS OF TSSR sEXPECTED CONTENTS OF TSSR :1S OFF-LINE BIT SET ? sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA PKT3SR TSVSA = HARDWARE TESTS MACRO M1113 TEST 9: COMPLETION INTERRUPT 2208 036334 020201 2213 036340 036340 036342 036344 036346 55}2 036350 104456 001624 037543 012036 2209 036336 2216 036350 036350 ’ 036350 001404 25-MAY-§2 08:41 K 14 - 258: CMP R2,R1 ERRHRD ERRNO,T94REJ,PKTSSR BEQ 30$ sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH - COMMAND NOT REJECTED TRAP WORD .WORD .WORD 308: ENDSUB 104403 PAGE 100-1 CSERHRD 916 T94REJ PKTSSR SNANAAANANANNNNNN END SUBTEST \\ALANNALLLWL L10071: TRAP CSESUB SEQ 0179 . TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 25-MAY-82 08:41 PAGE 101 SEQ 0180 £ :TEST 9, SUBTEST § *CHECK THAT WRITE CHARACTERIST ICS COMMAND IS REJECTED IF THE MESSAGE BUFFER LENGTH SPECIFI ES AN INVALID COUNT (LESS THAN 14) 7 2228 036352 036352 036352 2229 2230 036354 036354 036360 2231 036362 2232 036366 2233 036372 2234 2235 036376 036276 2242 036406 22727722777, aegsn SUBTEST /77111111111 BGNSUB " 104402 012700 000000 012703 012704 004737 000001 037220 040316 104441 SETPRI 5%: #1,R3 #TOPACKET,R4 PC,TOREST BGNSEG 104404 004737 103405 010001 MoV Mov JSR #PRICO IRAP sLOWER PRIORITY TO ALLOW INTERRUPTS Mov TRAP JSR BCS MoV ERRDF $2333335>>>>>> BEGIN SEGMENT >>>>>>>>>>>> PC,SOFINIT 108 RO,R1 ERRNO, SFIERR,SF IMSG ;DO SOFT INIT OF CONTROLLER sBR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURI?gAgfllT WORD 002222 108: 016240 CLR MOV PC WAITF ERRDF ERRNO, T9SSR, PKTSSR 15§ RO,R1 .WORD .WORD sCLEAR INTERRUPT RECEIVED FLAG s INSERT THE BAD MESSAGE LENGTH sSET_THE PACKET ADDRESS 158: TRAP 2255 036456 036456 ESCAPE 002222 LWORD CKLOOP TST BNE ERRHRD :LOOP ON ERROR, IF FLAG SET SEG 5NIRECV ERRNO, TONINT ,PKTSSR 22%: MoV BIT TSSR(RS) ,R1 #SC!SSR!TSREJ!NBA,R2 #0FL R1 CSERDF 917 SFIERR SFIMSG CSERDF 918 T9SSR PKTSSR TRAP cscLP1 TRAP CSESCAPE ;BY=-PASS SUBTEST IF FATAL ERROR .WOR ;DID AN INTERRUPT OCCUR ? 100008~ . sBRANCH IF YES TRAP .WORD +WORD 0000 102206 000100 C$BSEG sWAIT FOR SSR 7O SET sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET .WORD .WORD 036452 2254 836452 036476 2262 036500 2263 036504 2264 036510 INTRECV R3, TODATA+4 R&.TSDB(RS) JSR BCS MOV #PRI00,RO CSSPRI sSTARTING BUFFER LENGTH sGET THE ADDRESS OF COMMAND PACKET sRESTORE PACKET TO STARTING VALUES TRAP 015764 C$BSUB LWORD sGET THE CONTENTS OF TSSR sEXPECTED CONTENTS OF TSSR :1S OFF-LINE BIT SET ? CSERHRD 919 TONINT PKTSSR TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 2265 036514 . 2266 036516 L. 2267 036522 2268 036524 2272 036526 036526 036530 036532 036534 2273 036536 2274 036536 036536 036536 2275 2276 036540 2277 036542 2278 036546 2279 036550 2280 2281 036554 036554 036554 000100 001404 25-MAY-82 08:41 #OFL ,R2 25$: ERRHRD 308: R2,Ri 30$ ERRNO, T9SREJ ,PKTSSR ENDSEG 005203 INC CMP BGE JMP 000014 036366 59%: 104403 ENDSUB SEQ 0181 sBRANCH IF NOT OFF=LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH s COMMAND NOT REJECTED TRAP sggRHRD .WORD «WORD T95REJ PKTSSR s €<<<<LCL< END SEGMENT <<<<<<<<<<<<< 100008: 104405 020327 002002 000137 M1 25$% 104456 001630 037641 012036 PAGE 101-1 R3 R3,#14 59 TRAP CSESEG :NEXT BUFFER LENGTH sHAVE ALL BAD VALUES BEEN TESTED ? JBRANCH IF ALL TESTED JBRANCH TILL BACK TO ZERO SNANNAAANANANANNANN END SUBTEST \NANNLLLLLWLL L10072: TRAP CSESUB TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 25-MAY-82 08:41 PAGE 102 N 14 SEQ 0182 £ :TEST 9, SUBTEST 6 sTHIS SUBTEST IS EXECUTED ONLY IF THE EXTENDED ;FEATURES MODE IS ENABLED (AS DETERMINED BY EXAMINING ;XST2 AFTER A PREVIOUS EXECUTION OF WRITE CHARACTERISTICS). ;1T VERIFIES THAT A FIFTH CHARACTERISTICS DATA WORD IS FETCHED :6; E:EA?E;E COUNT PARAMETER IN THE COMMAND PACKET IS 10 DECIMAL 2 2295 036556 036556 036556 2296 036560 2297 036564 2298 036566 2299 036572 2 300 2301 036576 036576 036602 2302 036604 2303 036610 2304 036614 2305 036622 2306 036622 22 BGNSUB . 002224 004737 037006 040316 012700 000000 012703 012704 012764 002762 037220 000012 1046441 4$: 000006 5%: 104404 004737 103405 010001 036636 015764 PC,TOREST sEXIT SUBTEST sSET PACKET TO START=UP VALUES SETPRI #PR100 ;LOWER PRIORITY TO ALLOW INTERRUPTS Mov MoV Mov MOV ERRDF #TSTBLK+10. ,R3 #TOPACKE R4 T #10. ,PKBCNT(R4) ;1S EXTENDED FEATURES SOFT. SW SET? sBR, IF SOFTWARE SWITCH IS SET (ON) MOV TRAP 108: PC,SOFINIT 108 RO,R1 ERRNO, SFIERR, SF IMSG sSTART OF TEST DATA sGET THE ADDRESS OF COMMAND PACKET sSTART WITH EXTENDED FEATURES VALUE 002222 WORD .WORD Wo%D sCLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEIVED FLAG PC,CHKTSSR sWAIT FOR SSR TO SET INTRECV R4, TSDB(RS) 158 15%: ;DO SOFT INIT OF COMTROLLER :BR IF SOFT INIT = 0K :SAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURI?&AgfllT FATFLG ERRNO, T9SSR, PKTSSR 002220 sSAVE CONTENTS OF TSSR sOEVICE FATAL SSR FAILEDT;2PSET WORD «WORD .WORD CSERDF 922 TOSSR PKTSSR TRAP cscLP TRAP CSESCAPE sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET ESCAPE SEG ;BY=PASS SUBTEST IF FATAL ERROR 22% CSERDF 921 SFIERR SFIMSG sBR IF CARRY SET (GOOD RETURN) FATFLG INTRECV ($BSEG :SET THE PACKET ADDRESS INC CKLOOP T5T 3NE #PRI00,RO CSSPRI $233333335>>>> BEGIN SEGMENT >>>>>>>>>>>> RO,R1 104406 104410 000056 005737 001004 EXTFEA 48 BGNSEG 010001 2325 036700 2326 036704 036704 2327 036706 036706 036710 2328 036712 2329 036716 csBsuB 558 016326 76 TRAP TST BNE JMP JSR JSR BCS 104455 001631 104455 001632 037737 012036 005237 19.6 TRAP 002220 2320 0 $///1717777177 BEGIN SUBTEST /77711111117 W0 :DID AN INTERRUPT OCCUR ? sBRANCH IF YES 100008-. 4 2 TSVSA = HARDWARE TESTS MACRO M1113 TEST 9: COMPLETION INTERRUPT 25-MAY-82 08:41 2333 036720 036720 ERRHRD PAGE 102-1 B 15 SEQ 0183 ERRNO, TONINT ,PKTSSR TRAP WORD «WORD 000002 000200 000100 000100 22%: MOV MOV BIT 25$: 8IS CMP BE TSSR(RS) ,R1 #SSR,R2 #OFL.R1 25 #OFL ,R2 R2,Ri 30$ ERRNO, TONBA, PKTSSR WORD sGET _THF CONTENTS OF TSSR +EXPECTED CONTENTS OF TSSR :1S OFF=LINE BIT SET ? sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH :NBA NOT ZERO TRAP WORD .WORD 308: 000006 003056 2351 037002 2352 2353 037006 037006 037006 ENDSEG 55%: 100008: (R3) + ,PKBCNT (R4) R3,#TBLEND JMP 5% ENDSUB PKTSSR CSERHRD 924 T9NBA PKTSSR s €€<<LCLLCC<<<< END SEGMENT <<<<<<<<<<<<< MOV CMP BHIS 036622 104403 .WORD CSERHRD 923 TONINT 558 TRAP CSESEG sSET THE TEST WORD sHAS ALL DATA BEEN TESTED ? sBRANCH IF ALL DATA DONE sBRANCH TILL BACK TO ZERO SVVAANAAANNNAL END SUBTEST \\\NANLLLL L10073: TRAP CSESUB TSVSA = HARDWARE TESTS MACRO M1113 TEST 9: COMPLETION INTERRUPT 2355 25-MAY-82 08: 41 PAGE 103 15 SEQ@ 0184 2356 2357 Hd 3 %ggg sTEST WRITE CHARACTERISTICS WITH/WITHOUT INTERRUPTS ENABLED 2363 = gggg :TEST 9, SUBTEST 7 2364 037010 037010 ot 037010 104402 2366 037012 037012 037016 2367 037020 236E (37024 2369 037030 012700 104441 012704 DN04737 004737 2370 037034 103405 2374 037036 2375 037040 037040 037042 037044 037046 2376 037050 2377 037056 2378 037050 2379 037064 010001 2381 037072 2385 037074 037074 037076 037100 037102 2386 037104 037104 2387 037106 037106 037110 2388 037112 2389 037116 2393 937120 037120 037122 037124 037126 2394 037130 - 037130 010001 2380 037070 2396 037132 2397 037136 2398 037142 2399 037146 2400 037152 104455 001635 003646 012024 005037 052714 010465 004737 103405 000000 037220 040316 015764 002222 000200 000000 016326 104455 001636 037737 012036 104410 000102 005737 001004 228: 104406 103405 002222 000200 000000 016326 #PRIOO [ [1]"] JSR JSR #TOPACKET R4 PC,TO9REST PC,SOFINIT MOV ERRDF RO,R1 ERRNO,SF IERR, SF IMSG 10§ CLR BIS MOV JSR INTRECV #8177, (R4) R4, TSDB(RS) PC,.CHKTSSR MOV ERRDF RO,R1 ERRNO,T9SSR,PKTSSR BCS 002222 104456 001637 040026 012036 005037 042714 010465 004737 108: 3////7/77/7/7 BEGIN SUBTEST /77777771117 19.7: TRAP csesus SETPR]I BCS 15%: 104406 BGNSUB 15§ CKLOOP ESCAPE SUB ST BNE ERRHRD INTRECV 22% ERRNO, TONINT ,PKTSSR CKLOOP CLR BIC MOV JSR BCS 2LOWER PRIORITY TO ALLOW INTERRUPTS MOV #PRI00,RO TRAP CSSPRI JGET THE ADDRESS OF COMMAND PACKET JSET UP A VALID PACKET 2D0 SOFT INiTY OF CONTROLLER :BR IF SOFT INIT = OK *SAVE CONTENTS OF TSSR :DEVICE FATAL ERROR DURING INIT TRAP .WORD -WORD -WORD ;CLEAR INTERRUPT RECEIVED FLAG *ENABLE INTERRUPTS *SET THE PACKET ADDRESS :HAIT FOR SSR TO SET 258 SFIERR SFIMSG :BR IF CARRY SET (GOOD RETURN) 2SAVE CONTENTS OF TSSR :DEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 926 -WORD T9SSR -WORD PKTSSR sLOOP ON ERROR, IF FLAG SET TRAP CscLP :BY=PASS SUBTEST IF FATAL snaoa TRAP CSESCAPE .WORD L1007 :DID AN INTFRRUPT OCCUR ? *BRANCH IF YES :LOOP ON ERROR ? INTRECV #BIT7, (R4) R&, TSDB(RS) PC.CHKTSSR CSERDF 925 TRAP .WORD -WORD -WORD CSERHRD 927 TONINT TRAP CSCLPT ;CLEAR INTERRUPT RECEIVED FLAG :DISABLE INTERRUPTS *SET THE PACKET ADDRESS *WAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) PKTSSR TSVSA = HARDWARE TESTS MACRO M1113 TEST 9: COMPLETION INTERRUPT 2401 037154 2405 037156 037156 037160 037162 037164 2406 037166 037166 2407 037170 037170 037172 2408 037174 2409 037200 2613 (37202 037 037, 2414 037212 2415 037212 037212 21 037212 2417 037214 037214 037216 2418 2419 2420 25-MAY-82 08:41 010001 MoV ERRDF 104455 001640 037737 012036 005737 001404 25%: 002222 104456 308: WORD CKLOOP ;LOOP ON ERROR, IF FLAG SET SUB ST BEQ ERRHRD INTRECV 308 ERRNO,T9INT,PKTSSR .UORD ;DID AN INTERRUPT OCCUR ? :BRANCH IF NOT .WORD ENDSUB EXIT 104432 0071152 CSERDF 928 T9SSR PKTSSR TRAP CSCLP1 ;BY=PASS SUBTEST IF FATAL ERROR RAP CSESCAPE ESCAPE L10074~. CSERHRD 929 TOINT PKTSSR SNNANAAANNANNNY END SUBTEST \ANAALALLLLLLLLL L10074: 104403 TST JALL DONE THIS TEST TRAP CSESUB TRAP .WORD CSEXIT L10065~-. ;e sLOCAL STORAGE FOR THIS TEST 100204 037230 000000 000010 2432 037230 2433 037230 2434 037232 2435 037234 3436 037236 037242 000000 000016 000000 TO9PACKET: WORD .WORD .WORD .WORD T9DATA: 000000 g&%& 037242 T98FR: 2440 2441 1y 3 2446 2447 2448 2449 2450 2451 037262 TRAP TRAP 265 5222 sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET .WORD .WORD 2426 037220 2427 037220 2428 037222 2429 037224 %2%? 037226 gzzg RO,R1 ERRNO,T9SSR,PKTSSR SEQ 0185 .WORD +WORD 104406 104410 000020 PAGE 103-1 ;COMMAND PACKET FOR TEST JWRITE CHAR COMMAND, WITH IE, ACK sADDRESS OF CHARACTERISTICS BLOCK 100204 TO9DATA O 8. .WORD .WORD .WORD .WORD T9BFR 0 14, 0,0 .BLKW 8. sSTARTING VALUE OF BLOCK SIZE sCHARACTERISTICS DATA BLOCK sADDRESS OF MESSAGE BUFFER JLENGTH OF MESSAGE BUFFER JMESSAGE BUFFER JTEST DATA FOR SUBTEST TwO JDATA HAS FORMAT: 3 3 ; 3= T92DATA: 1ST WORD Z2ND WORD OFFSET TO TEST WORD IN PACKET BITS TO SET FOR TEST TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 2452 037262 2453 037266 2454 037272 2455 000000 000002 000004 037276 25-MAY-82 08:41 037140 000001 100100 .WORD .WORD .WORD T92DONE=. PAGE 103-2 E15 0,BITS!BIT6!BIT9!BIT10!BIT11!8IT12!8IT13 2,BITO 4,BIT6!BIT1S ¢ b b d D o d e d VAWV NNON NOAOrO NN —d W=UNWVNWNNNNN d d b e d d b e 2465 037543 2466 u37641 2467 037737 2468 040026 2469 040117 2470 040206 2471 04027 2472 2473 b 2461 2462 037276 2463 037351 2464 037450 O=NOONNNNN sLOCAL TEXT MESSAGES FOR TEST 111 111 111 111 111 156 160 145 143 155 T9NBA: T92REJ: T93REJ: T94REJ: T95REJ: T9SSR: TONINT: T9INT: T9TSBA: TST9ID: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCIZ .ASCIZ ‘WRITE CHARACTERISTICS Command Not Accepted’ g 'WRITE CHARACTERISTICS Not Rejected With Non-Zero Unused Fields' 'WRITE CHARACTERISTICS Not Rejected With Invalid Data Count’ ‘WRITE CHARACTERISTICS Not Rejected With Invalid Block Address’ °‘WRITE CHARACTERISTICS Not Rejected With Invalid Buffer Length’ ‘Contents of TSSR Incorrect After WRITE CHARACTERISTICS® ‘Expected Interrupt Not Received On WRITE CHARACTERISTICS® ‘Unexpected Interrupt Received On WRITE CHARACTERISTICS® ‘'Incorrect TSBA Address After WRITE CHARACTERISTICS® ‘Completion Interrupt’ SEQ 0186 TSVSA = HARDWARE TESTS TEST MACRO M1113 9: COMPLETION INTERRUPT 25-MAY-82 08:41 PAGE 104 SEQ 0187 %ROUTINE TO RESTORE COMMAND PACKET TO START-UP (DEFAULT) VALUES TOREST: 037220 100204 037230 000010 037242 000016 037242 2496 040370 040370 040370 104401 SAV #TOPACKET ,R1 #100204,(R1)+ #TIDATA,(R1)+ (R1)+ #8..(R1)+ #T9BFR,(R1)+ (R1)+ #14.,(R1)+ (R1)+ (R1) T98FR PC sSAVE THE REGISTERS sSTART OF THE PACKET sWRITE CHARACTERISTICS WITH ACK, IE sADDRESS OF CHAR DATA BLOCK sEXTENDED ADDRESS :SIZE OF DATA BLOCK IN BYTES sADDRESS OF MESSAGE BUFFER ;LENGTH OF MESSAGE BUFFER sCLEAR 1ST LOC IN MESSAGE BUFFER s RETURN L10065: TRAP CSETST TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL 25-MAY-82 08:41 15 PAGE 105 ~ A 2498 .SBTTL 2500 2501 THIS TEST VERIFIES BASIC OPERATION OF THE MESSAGE BUFFER RELEASE COMMAND, THE FUNCTION OF THE ACK BIT IN THE COMMAND HEADER WORD, AND THE REGISTER MODIFICATION REFUSED (RMR) LOGIC. 2499 TEST SEQ 0188 10: BASIC PACKET PROTOCOL * 4 sTEST 1C SUBTEST 1 :CHECKS THAT THE MESSAGE BUFFER RELEASE COMMAND WORKS *PROPERLY AND THAT NO INTERRUPT IS GENERATED EVEN $1F THE ""IE' BIT IS SET IN THE COMMAND PACKET BGNTST 012700 004737 012737 043317 016500 000024 MoV 002214 JSR T10LOOP: MOV #TST10ID,RO PC,TSTSETUP #20. ,LGOPCNT T10:: sASCI1 MESSAGE TO IDENTIFY TEST ;DO INITIAL TEST SETUP sPERFORM 20 ITERATIONS 27277707777, aecr;%n SUBTEST /77111111117 BGNSUB " 043346 NN 000000 ~ o Ww (A=Y [V LV, LV LV IV NN R,] 042510 000010 000006 5$: 015764 002220 002222 000000 016326 PC,T10RST #PRI00 sSET PACKET TO INITIAL VALUES Mov MOov #T10PACKE R4 T #8. ,PKBCNT(R4) sGET THE ADDRESS OF COMMAND PACKET sSTART WITH MINIMUM ALLOWABLE VALUE BGNSEG CLR CLR 002220 158: PC,SOFINIT 108 RO,R1 ERRNO,SFIERR, SF IMSG FATFLG INTRECV R4, TSDB(RS) ERRDF ERRNO, T10SSR,PKTSSR INC MOV TRAP TRAP PC,CHKTSSR CKLOOP sLOWER PRIORITY TO ALLOW INTERRUPTS #PRI100,RF C3SPRI $2333>>>35>>> BEGIN SEGMENT >>>>>>>>>>>> JSR BCS MOV 040512 2549 040514 2550 040520 ($BSUB JSR SETPRI JSR BCS MCv ERRDF 108: IRAP 15§ RO.R1 FATFLG ;DO SOFT INIT OF CONTROLLER sBR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP .WORD .WORD .WORD sCLEAR FATAL ERROR FLAG :CLEAR INTERRUPT RECEIVED FLAG sSET_THE PACKET ADDRESS sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP .WORD .WORD .WORD s3ET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET CSBSEG CSERDF 1001 SFIERR SFIMSG CSERDF 1002 TT10SSR PKTSSR TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCO L 25-MAY-82 08:41 104406 ESCAPE 002222 040 2558 040544 2559 040550 2560 040554 2561 040560 2562 040562 2563 040566 2564 040570 2568 040572 060572 040574 0460576 040600 2569 040602 2570 060602 040602 040602 2571 040604 040604 01 01 01 032701 001402 052702 TST BNE ERRHRD 22%: 000002 000200 000100 H1 ERRHRD 104456 001754 042711 012036 30s: 104405 106404 043230 01 01 012 03 001402 052702 000002 000200 000100 2 ERRNO, TIONINT,PKTSSR 000100 ‘tSEnuao .WORD T1ONINT ;BRANCH F YES _ : .WORD .WORD ;GET _THE CONTENTS OF TSSR ;EXPECTED CONTENTS OF TSSR #OFL,R1 ;1S OFF-LINE BIT SET ? #OFL ,R2 ;SET OFF-LINE IN EXPECTED DATA R2, n1 308 ERRNO, TTONBA,PKTSSR SEQ 0189 100008-. 1003 PKTSSR ;BRANCH IF NOT OFF=-L INE ;DOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH :NBA NOT ZERO TRAP CSERHRD 1004 TI1ONBA PKTSSR s <<€ END SEGMENT <<<<<<<<<<<<< BGNSEG TRAP CSESEG 22333>3>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP C$BSEG 10000$: INTREC 0025252 T108FR #100212, (R4) R4.TSDG(RS) sCLEAR INTERRUPT RECEIVED FLAG sWIPE OUT MESSAGE BUFFER AREA sSET COMMAND PACKET TO MESS BUF REL sSET THE PACKET ADDRESS 45$ :BR IF CARRY SET (GOOD RETURN) JWAIT FOR SSR TO SET sSAVE CONTENTS OF TSSR JDEVICE FATAL SSR FAILED TO SET TRAP .WORD -WORD .WORD INC CkLOoOP FATFLG sSET FATAL ERROR FLAG TST INTRECV 52% ERRNO,T10INT ,PKTSSR sCID AN INTERRUPT OCCUR ? :BRANCM IF NO BEQ ERRHRD 52%: TRAP Ig;RECV RO.R1 ERRNO,T10SSR,PKTSSR 0666 040670 040672 2592 040674 2593 040700 2594 040704 2595 040710 2596 040712 CSESCAPE .WORD ;DID AN INTERRUPT OCCUR ? PC.CHKTSSR 002222 TRAP ENDSEG 042532 45%: CSCLP1 .WORD .WORD WORD 016326 002220 TRAP ;BY=PASS SUBTEST IF FATAL ERROR TSSR(RS) ,R1 #SSR,R2 25$: 001404 ~ SEG 25$ 000100 002222 025255 PAGE 105-1 sLOOP OM ERROR, IF FLAG SET i PKTSSR cscLP TRAP .WORD CSERHRD 1006 .WOR PKTSSR .WORD s1S OFF-LINE BIT SET ? #0FL ,R2 sSET OFF=LINE IN EXPECTED DATA JGET THE CONTENiS OF TSSR JEXPECTED CONTENTS OF TSSR sBRANCH IF NOT OFF-LI] NE 1005 T10SSR TRAP TSSR(RS) ,R1 #SSR,R2 #OFL .R1 55¢% CSERDF TT10INT ! ; . T:.5A = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL 2597 040716 2598 040720 020201 013701 2606 040742 020102 2605 040736 2607 040744 2611 040746 040746 040750 040752 040756 2612 040756 2613 040756 2614 040762 2615 040764 2616 040770 040770 040770 2617 040772 2618 040772 040772 040772 2619 55$: 001404 2602 040722 040722 040726 040726 040730 2603 040732 2604 0460732 104456 001757 042773 012036 012702 25-MAY-82 08:41 042532 608 : 025252 104456 001760 042614 015464 005737 001403 004737 104405 104403 002220 708 : 017172 808 : 115 CMP R2,R1 ERRHRD ERRNO,T10ONNBA,PKTSSR BEQ MOV 60$ :DOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH :NBA SET TRA® .WORD .WORD .WORD CSERHRD 1007 T10NNBA PKTSSR :PICK UP THE 1ST WORD OF MESSAGE BUFFER R1,R2 :WAS ANY MESSAGE REC'D #025252 ,R2 BEQ 70§ ERRHRD ERRNO, T10MBF , EXPREC TST BEQ JSR ENDSEG FATFLG 808 PC,CKDROP ENDSUB ~ T108FR,R1 MOV CMP 001404 PAGE 105-2 *SET UP SXPECTED DATA *BR, IF OK (EQUAL) *MESSAGE BUFFER WAS MODIFIED TRAP .WORD .WORD .WORD CSERHRD 1008 T10MBF EXPREC JANY FATAL ERRORS *BR, IF NO FATAL ERRORS 2TRY TO DROP THE UNIT 2 €<<CLLCCC<<<< END SEGMENT <<<<<<<<<<<<< 10001$: TRAP CSESEG 3//1/7177777777 END SUBTEST /77711711117 L10076: TRAP CSESUB SE@ 0190 TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL 25-MAY-82 08:41 PAGE 106 J 15 SEQ 0191 i+ sTEST 10 SUBTEST 2 sCHECKS THAT THE MESSAGE BUFFER RELEASE COMMAND WORKS sPROPERLY AND THAT THERE IS AN INTERRUPT IF THE '‘IE‘’ ;BIT IS SET_IN THE COMMAND PACKET AND THE '‘ERI"* BIT :IS SET IN THE CHARACTERISTICS DATA PACKET 142630 040774 040774 040774 2631 2632 040776 2633 82}002 11111111707 85?{ g guaresr 111111111117 " 043346 000000 042510 000010 PC,T10RST #PRI00 IRAP C$BSUB sSET PACKET TO INITIAL VALUES ;LOWER PRIORITY TO ALLOW INTERRUPTS MOV #T10PACKET R4 #8. ,PKBCNT(R4) #PRI00,RO TRAP CSSPRI sGET THE ADDRESS OF COMMAND PACKET ¢START WITH MINIMUM ALLOWABLE VALUE $2233335>>5>> BEGIN SEGMENT >>>>>>>>>>>> TRAP 015764 PC,SOFINIT 108 ERRNO, SFIERR, SF IMSG C$BSEG :DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR ;DEVICE FATAL ERROR DURING INIT TRAP 002220 2 016326 FATFLG INTRECV #000020, T10DATA+6 R4, TSDB(RS) PC,CHKTSSR 158 RO.R1 L= - % V] g ERRREERRRRRRER ERRRERER SRRERENRSREIISRRS SSsse ,f ERRNO, T10SSR,PKTSSR 002220 002222 .WORD «WORD «WORD ;CLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEiVED FLAG sSET ERI IN CHARACTERISTICS DATA sSET _THE PACKET ADDRESS PKTSSR TRAP cscLPl TRAP CSESCAPE SEG :BY=-PASS SUBTEST IF FATAL ERROR :DID AN INTERRUPT OCCUR ? WORD .WORD «WORD TSSR(RS) ,R1 100008-. :BRANCH IF YES TRAP 000002 CSERDF 1010 T10SSR .WORD .WORD .WORD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET ERRNO, TIONINT ,PKTSSR 1009 SFIERR SFIMSG ;WAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDT;2PSEY FATFLG 5ngECV CSERDF W0 sGET THE CONTENTS OF TSSR CSERHRD 101 TTONINT PKTSSR TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL #SSR,R2 #OFL .R1 000100 corL R2 25% ‘Rf 25$: 308: 104405 104404 JEXPECTED CONTENTS OF TSSR ;IS OFF=LINE BIT SET ? sBRANCH IF NOT OFF-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? JOKAY IF MATCH sNBA NOT ZERO TRAP CSERHRD .WORD PKTSSR 002222 025252 100212 0000 016326 s €<<<CCCCCK<< END SEGMENT <<<<<<<<<<<<< BGNSEG 3233333>>5>>> BEGIN SEGMENT >>>>>>>>>>>> CLR 042532 002220 MoV MoV Mov 45%: 002222 000002 000200 000100 000100 : 100008 INTRECV #025252,T10BFR #100212, (R4) R4, TSDB(RS) JSR BCS 45$ ERRDF ERRNO, T10SSR,PKTSSR PC,CHKTSSR INC CKLOOP FATFLG TST INTRECV BNE ERRHRD 52%: 52% ERRNO, T10INT,PKTSSR TSSR(RS) ,R1 #SSR,R2 #OFL R1 55¢ 55%: 1012 TI10ONBA ENDSEG MOV 013701 012702 020102 001404 30 ERRNO, T1ONBA,PKTSSR - .WORD .WORD 012036 005037 012737 012714 PAGE 106-1 000200 000100 ERRHRD o N WN W WN W W NI W W N W b 012702 W RRRRRRRIIIRRR 2 SREY R S e e e e e . o W 2667 041142 2668 041146 2669 041152 2670 041154 2671 041160 2672 041162 2676 041164 041164 041166 041170 041172 2677 041174 2678 041174 061174 041174 2679 0461176 061176 2680 2681 041200 2682 041204 2683 041212 2684 041216 2685 041222 2686 041226 2687 041230 2691 041232 041 041 041236 041 240 2692 041242 2693 041246 041246 2694 041250 2695 041254 2699 041256 041256 260 041262 264 2700 041266 2701 041272 2702 041276 25-MAY-82 08:41 #OFL .R2 8EQ R2.Ri 60$ ERRNO, TTONNBA,PKTSSR TRAP CSESEG TRAP C$BSEG ;sCLEAR INTERRUPT RECEIVED FLAG sWIPE OUT MESSAGE BUFFER AREA sSET COMMAND PACKET TO MESS BUF REL sSET THE PACKET ADDRESS sWAIT FOR SSR TO SET sBR IF CARRY SET (GCOD RETURN) JSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP 1013 T10SSR PKTSSR TRAP CSCLP TRAP WORD WORD CSERHRD 1014 TT10INT sSET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG SET ;DID AN INTERRUPT OCCUR ? JBRANCH IF YES .JORD PKTSSR TRAP CSERHRD sGET THE CONTENTS OF TSSR sEXPECTED CONTENTS OF TSSR :IS OFF-LINE BIT SET ? sBRANCH IF NOT OFF-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? JOKAY IF MATCH JNBA NOT SET WORD .WORD WORD 60$: 1015 TT1ONNBA PKTSSR T10BFR sPICK UP THE 1ST WORD OF MESSAGE BUFFER R1,R2 :WAS ANY MESSAGE REC'D #025252az BEQ CSERDF WORD WORD .WORD 70§ sSET UP EXPECTED DATA :BR, IF OK (EQUAL) SEQ@ 0192 TEST MACRO M1113 10: BASIC PACKET PROTOCOL 2719 041340 041 2720 2721 041350 2722 041350 2723 041354 2724 041356 2725 041362 2726 041362 041362 041362 2727 041364 041364 041364 25-MAY-82 08:41 ERRHRD 104456 001770 PAGE 106-2 ——1 TSVSA = HARDWARE TESTS L1 ERRNO, T10MBF ,EXPREC ~ sMESSAGE BUFFER WAS MODIFIED 104405 104403 CSERHRD «WORD EXPREC .WORD .WORD 042614 015464 005737 001402 004737 TRAP 002220 017172 708: 80$: TST BEQ JSR FATFLG 80$ PC,CKDROP 1016 T10MBF sANY FATAL ERRORS JBR, IF NO FATAL ERRORS sTRY TO DROP THE UNIT ENDSEG s €<<<<LCCC << END SEGMENT <<<<<<<<<<<<< ENDSUB s/11171777747 END SUBTEST /77711111117 10001$: L10077 TRAP CSESEG TRAP CSESUB SEQ 0193 TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL 25-MAY-82 08:41 2729 PAGE 107 15 - g;gg sTEST 10 SUBTEST 3 2732 2733 2734 sCHECKS THAT THE CPU GIVES UP OWNERSHIP OF THE MESSAGE BUFFER sAFTER THE MESSAGE BUFFER RELEASE, AND THAT FOLLOWING COMMANDS JWORK CORRECTLY 2737 041366 041366 o738 041366 2739 041370 2740 041374 0641374 0461400 2761 041402 g;z% 82}2?2 2744 0461414 BGNSUB “ ‘ 043346 012700 104441 012704 012764 000000 2745 04614146 104404 2746 041416 2747 041422 2751 041424 2752 041426 041426 041430 041432 041434 2753 041436 2754 041442 2755 041446 2756 041452 004737 103405 010001 2757 041456 $/11/1117111/:BEGIN SUBTEST /77711111117 104402 004737 104455 001771 003646 012024 005037 005037 010465 004737 103407 2758 041460 010001 2762 041462 061462 104455 041464 001772 041466 043050 041470 012036 2763 041472 005237 2764 041476 041476 ~ 104406 2765 041500 041500 104410 041502 000056 2766 041504 005737 2767 041510 001004 2771 0461512 041512 104456 041514 001773 0641516 043137 041520 012036 2772 041522 016501 2773 041526 012702 2774 041532 032701 042510 000010 000006 - ~JSR SETPRI PC,T10RST #PRIOO MOV MOV #T10PACKET R4 #8. ,PKBCNT(R4) BGNSEG 015764 002220 002222 000000 016326 002220 108: 15%: 002222 000002 000200 000100 22%: 710,32 TRAP c$BSuUB sSET PACKET TO INITIAL VALUES JLOWER PRIORITY TO ALLOW INTERRUPTS ' MOV #PRIOO,RO TRAP CS$SPRI sGET THE ADDRESS OF COMMAND PACKET sSTART WITH MINIMUM ALLOWABLE VALUE TRAP PC,SOFINIT 108 RO.R1 ERRNO,SFIERR,SF IMSG CLR CLR MOV JSR FATFLG INTRECV R4 ,TSDB(RS) PC,CHKTSSR MOV ERRDF RO.R1 ERRNO,T10SSR,PKTSSR INC CKLOOP FATFLG ESCAPE SEG TST BNE ERRHRD INTRECV 22$% ERRNO,TTONINT ,PKTSSR MoV MOV BIT - av 1 $235>>3>>>>>> BEGIN SEGMENT >>>>>>>>>>>> JSR BCS MOV ERRDF BCS SEQ 0194 1S§ TSSR(RS) ,R1 #SSR,R2 #0FL R1 ;DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = 0K sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP WORD .WORD -WORD sCLEAR FATAL ERROR FLAG JCLEAR INTERRUPT RECEIVED FLAG sSET THE PACKET ADDRESS sWAIT FOR SSR TO SET C$BSEG CSERDF 1017 SFIERR SFIMSG :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP CSERDF .WORD 1018 WORD TI10SSR .WORD PKTSSR JSET FATAL ERROR FLAG sLOOP ON ERROR, IF FLAG SET TRAP CSCLP :BY=PASS SUBTEST IF FATAL ERROR TRAP CSESCAPE .WORD 10000%-. ;DID AN INTERRUPT OCCUR ? :BRANCH IF YES TRAP .WORD .WORD .WORD JGET THE CONTENTS OF TSSR SEXPECTED CONTENTS OF TSSR IS OFF-LINE BIT SET ? CSERHRD 1019 TI1ONINT PKTSSR l . TSVSA = HARDWARE TESTS MACRO M1113 TEST 10: BASIC PACKET PROTOCOL 2775 041536 2776 041540 2777 041544 2778 041546 2782 041550 041550 041552 041554 041556 2783 041560 2784 041560 041560 041560 2785 041562 041562 2786 041564 2787 041570 2788 041574 2789 041602 2790 041606 2791 041612 2792 041616 2793 041620 2797 041622 041622 041630 2798 041632 2799 041636 041636 2800 041640 2801 041644 2805 041646 041646 041650 041652 041654 2806 041656 2807 041662 2808 041666 2809 041672 001402 D D d d d D D el d b 000100 BEQ BIS CMP BEQ ERRHRD 308: 043346 JSR PC,CHKTSSR ERRNO, T10SSR,PKTSSR 104455 002222 - 000100 104456 TRAP C$BSEG sRESET PACKETS AND COMMANDS sCLEAR INTERRUPT RECEIVED FLAG sWIPE OUT MESSAGE BUFFER AREA sSET COMMAND PACKET TO MESS BUF REL sSET_THE PACKET ADDRESS sWAIT FOR SSR TO SET :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP -WORD -WORD -WORD PKTSSR TRAP cscLP1 TRAP «WORD -WORD CSERHRD sSET FATAL ERROR FLAG :LOOP ON ERROR, IF FLAG SET TIST BEQ INTRECV :DID AN INTERRUPT OCCUR ? :BRANCH IF NO 52% ERRNO, T10INT,PKTSSR TSSR(RS) ,R1 #SSR,R2 #OFL .R1 558 #0OFL ,R2 55%: R2,Ri ERRHRD 60$: CSESEG FATFLG 52%: 104456 001777 PKTSSR T RAP INC CKLOOP ERRHRD 000002 000200 000100 013701 012702 020102 001404 PC,T10RST INTRECV #025252,T10BFR #100212, (R4) R4, TSDB(RS) 45$ 45%: CSERHRD 1020 T10NBA 3233>>>>>>>>> BEGIN SEGMENT DI3I33335>>> 100008: RO,R1 002220 TRAP BGNSEG 010001 042773 012036 30 ERRNO, T10NBA,PKTSSR sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH :NBA NOT ZERO s << END SEGMENT <<<<<<<<<<<<( 016326 104406 005737 001404 25% #0FL ,R2 R2§R1 ENDSEG 042532 001775 043050 012036 005237 N 15 -WORD .WORD -WORD 104405 104404 PAGE 107=1 SEQ@ 0195 25$: 012036 001404 — 25-MAY-82 08:41 MOV MOV CMP BEQ ERRHRD 608 ERRNO, T1ONNBA, PKTSSR T10BFR,R1 #025252,R2 R1,R2 70 ERRNO, T10MBF ,cXPREC 1022 TT10INT .WOR PKTSSR TRAP «WORD -WORD .WORD CSERHRD 1023 T10NNBA sGET THE CONTENTS GF 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 ? sOKAY IF MATCH ¢NBA NOT SEV PKTSSR sPICK UP THE 1ST WORD OF MESSAGE BUFFER sSET UP EXPECTED DATA sWAS ANY MESSAGE REC'D :BR, IF OK (EQUAL) sMESSAGE BUFFER WAS MODIFIED TRAP CSERHRD TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC C PACKET PROTOCOL 2826 2827 041740 041740 2828 2829 04174% 25-MAY=82 08:41 PAGE 107-2 B 16 - WORD «WORD .WORD 708: sLOOP ON ERROR IF FLAG SET TRAP 004737 010465 004 002222 043346 INTRECV PC,T10RST #100000, (R4) R4, TSDB(RS) . 100000 000000 016326 PC.CHKTSSR 75$ RO.R1 ERRNO,T10SSR,PKTSSR 2839 041772 772 061774 041776 000 2840 042002 2841 006 006 2842 042010 010 012 2843 042014 002220 FATFLG 75%: 82%: #OFL ,R2 nziRi 85$: ERRHRD 23 =T 90$: 002220 e NO N $I2 ENDSEG TST BEQ 017172 ERRNO, T10SSR,PKTSSR JSR 95$: CLR JSR TRAP .WOR CSESCAPE TRAP .WORD -WORD .WORD CSERHRD 10001$-. sGET THE CONTENTS OF TSSR sEXPECTED CONTENTS OF TSSR ;1S OFF=-LINE BIT SET ? sBRANCH IF NOT OFF~-LINE sSET OFF=LINE IN EXPECTED DATA :DOES EXPECTED MATCH RECEIVED ? OKAY IF MA :NBA NOT ZERO s €<<<CCCC<<<<< END SEGMENT <<<<<<<<<<<<< 10001$: FATFLG 958 PC,CKDROP BGNSEG 002222 043346 CSERDF CSCLPT :DID AN INTERRUPT OCCUR ? sBRANCH IF YES ;GET TSSR FOR ERROR REPORT TSSR(RS) ,R1 CSCLPT TRAP INTRECV 82% TSSR(RS) ,RO #SSR,R2 #OFL .R1 1024 T10MBF EXPREC sSET EATAL ERROR FLAG :LO0P ON ERROR, IF FLAG SET ;BY=-PASS SUBTEST IF FATAL ERROR 858 2854 042054 2855 042060 2856 042062 2860 042064 sCLEAR INTERRUPT RECEIVED FLAG sRESET THE PACKETS AND COMMANPS sCLEAR THE ACK BIT sSET_THE PACKET ADDRESS sWAIT FOR SSR TO SET sBR IF CARRY SET (GOOD RETURN) sSAVE CCNTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET SEG ERRNO, TIONINT ,PKTSSR 042066 042070 0462072 2861 042074 2862 042074 074 SEQ 0196 sANY FATAL ERRORS TRAP CSESEG :BR, IF NO FATAL ERRORS :TRY TO DROP THE UNIT 2€<<<<<C<<<<<<< BGN SEGHENT L LLLLLLLLLLLA INTRECV PC,T10RST TRAP ;(LEAR INTERRUPT RECEIVED FLAG wAESETIHF SACKETS AND COMMANDS ($BSEG TSV5A = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL WD O R h o D iy 010465 004737 103407 010001 000000 016326 S ENNONSSNO VIV S S N 0 d D ed o) D b md e PAGE 107-3 C 16 SEQ 0197 MOV JSR R4 ,TSDB(RS) sSET _THE PACKET ADDRESS MoV ERRDF 1008 RO,R1 ERRNO, T10SSR,PKTSSR sBR IF CARRY SET (GOO® RErURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDt;SPSEI BCS e o - ] ~n 2870 04%122 25-MAY-82 08:41 PC,CHXTSSR sWAIT FOR SSR TO SET +WORD +WORD 002220 104406 104410 000062 005737 001006 016500 1008 : 002222 FATFLG sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET e ESCAPE SEG ;BY=PASS SUBTEST IF FATAL ERRCR TST BNE MoV ERRHRD 000002 104456 .WORD INC CkLOOP INTRECV 1128 TESR(RS) ,RO ERRNO, TIONINT,PKTSSR 000100 125%: TRAP CSERHRD .WORD PKTSSR TRAP CSERHRD WORD TT10SSR PKTSSR " TRAP CSESEG ;DID AN INTERRUPT OCCUR ? :BRANCH IF YES sGET TSSR FOR ERROR REPORT 104405 042254 2905 042256 104403 BIT BEQ 8IS BEQ ERRHRD TSSR(RS) ,R1 #SSR,R2 $ ERRNO,T10SSR,PKTSSR ;GET 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 ? sOKAY IF MATCH sNBA NO~ ZERO .WORD WORD 012036 005737 001402 004737 Mov 017172 1308: 1408: 308: TST FATFLG JSR PC.CKDROP BEQ ENDSUB 1029 TTONINT 1030 2 €€<<CCC<<<<<< END Ssgnefit L LLLLLLLLLLLS ENDSEG 002220 cscLP CSESCAPE 100028~-. .WORD +WORD 1128%: PKTSSR .WOR TRAP 00 000002 000200 000100. CSERDF 1028 TI10SSR 1408 sCHECK FATAL FLAG FOR SET ;BR, IF NOT SET (OK) ;DROP DEVICE IF INDICATED /11171117177 END SUBTEST /7111111111 L10100: TRAP CSESUB TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL 25-MAY-82 08:41 2907 D16 SEQ 0198 TILIAYSLS i+ sTEST 10 SUBTEST 4 :CHECKS THAT THE REGISTER MODIFICATION REFUSED (RMR) BIT IN VS WN=O NN LSUNT N PAGE 108 sTHE TSSR WILL BE SET IF A WRITE CHARACTERISTICS COMMAND sBEING EXECUTED AND ANOTHER ‘WC'‘' COMMAND IS ATTEMPTED BGNSUB JSR JSR SETPRI 000010 /1111117 8!?{ NS UBTEST /7771171111117 0.4 PC,T10RT2 PC,T10RST #PRI00 #T10PACKET R4 #T10PKT ,R3 #8. ,PKBCNT (R4) #8. ,PKBCNT (R3) 000006 000005 015764 PC,SOFINIT 108 RO,R1 ERRN SF IERR, O, SF IMSG 002220 002222 108: FATFLG INTRECV R4, TSDB(RS) R3,TSDB(RS) PC,WAITF TSSR(RS) ,R1 #SSR,R1 158 ERRNO, T10SSR,PKTSSR TRAP sSET SECOND PACKET UP sSET PACKET TO INITIAL VALUES sLOWER PRIORITY TO ALLOW INTERRUPTS Mov TRAP 422 2949 042424 2950 042430 2951 2952 2956 0462432 002222 15%: sSTART WITH MINIMUM ALLOWABLE VALUE $233333>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP C$BSEG ;DO SOFT INIT OF CONTROLLER sBR IF SOFT INIT = OK :SAVE CONTENTS OF TSS sDEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD sCLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEIVED FLAG sSET THE PACKET ADDRESS s SECOND COMMAND PACKE T sWAIT FOR SSR TO SET sGET CONTENTS OF TSSR REGISTER sCHECK FOR SSR (TSSR) SET :BR, IF SSR SET (GOOD ) sDEVICE FATAL SSR FAILED TO SET PKTSSR TRAP cscLP TRAP .WOR 100008-. FATFLG sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET ESCAPE SEG ;BY-PASS SUBTEST IF FATAL ERROR TST INTRECV 22% ERRHRD ERRNO, TIONINT ,PKTSSR SFIERR SFIMSG TRAP «WORD .WORD -WORD INC CKLOOP BNE #PRI00,RO CSSPRI sGET THE ADDRESS OF COMMAND PACKET sGET THE ADDRESS OF 2ND CMD PACKET sSTART WITH MINIMUM ALLOWABLE VALUE - 002220 csBsuB ;DID AN INTERRUPT OCCUR ? sBRANCH IF YES CSERDF 1032 T10SSR CSESCAPE TSVSA = HARDWARE TESTS TEST 10: BASIC PACKET PROTOCOL 042432 042434 0462436 062440 2957 042442 2958 042446 2959 042452 042456 2961 042460 2962 MACRO M1113 0462464 2963 0424 2967 0462470 062470 062472 0462474 82%;76 104456 002011 043137 012036 016501 012702 032701 00140 052702 020201 1404 104456 002012 043050 012036 2969 042500 042500 042500 2970 042502 104405 042502 2971 042504 042506 042506 104403 0462502 104432 000764 000002 110200 25-MAY-82 08:41 228: 000100 000100 258: MOV MOV BIT BEQ BIS PAGE 108-1 3 16 TSSR(RS) ,R1 #SSR!'RMRISC,R2 TRAP LWORD .WORD .WORD :GET THL CONTENTS OF TSSR ;IS UFF=LINE BIT SET ? :BRANCH IF NOT OFF=LINE sSET OFF=LINE IN EXPECTED DATA 30$ :OKA* IF MATCH R2,R1 ERRHRD ERRNO,T10SSR,PKTSSR :DOES EXPECTED MATCH RECEVED ? :NB% NOT ZERO TRA® LORD LWORD ’ . CSERHRD 1033 TIONINT PKTSSR ;EXPECTED CONTENTS OF TSSR #OFL,R1 25$ #OFL ,R2 CMP BEQ SEC 0199 .WORD CSERHRD 1034 T1JSSR PKTSSR ENDSEG 2€€LLLCLCLCC<CC END SEGMENT <<<<<<C<C<CL<<< ENDSUB TRAP (SESEG /117177777777 END SUBTEST /77717171717 EXIT 100008: L10101: TST :ALL DONE WITH THIS TEST T CSESUB TRAP .WORD CSEXIT L10075-. TSVSA = HARDWARE TESTS TEST MACRO M1113 10: BASIC PACKET PROTOCOL 25-MAY-82 08:41 PAGE 109 F 16 - SEQ 0200 ;0 :LOCAL STORAGE FOR THIS TEST NS NNOO NIVVNININ = b b d b O SNNVOO T10PACKET : T10DATA: .WORD '3823 100204 51ooAtA .WORD 8. ;STARTING VALUE OF BLOCK SIZE .zgzg 51oera ;ADDRESS OF MESSAGE BUFFER WORD 2991 2992 042532 T10BFR: :COMMAND PACKET FOR TEST *WRITE CHAR COMMAND, WITH IE, ACK ;ADDRESS OF CHARACTERISTICS BLOCK ;CHARACTERISTICS DATA BLOCK WORD 0,0 14, ;LENGTH OF MESSAGE BUFFER .BLKW 8. ;MESSAGE BUFFER :0 STEST DATA FOR SUBTEST FOUR 024 .WORD :COMMAND PACKET FOR TEST 100204 *WRITE CHAR COMMAND, WITH IE, ACK .gg:g 51oora .WORD 8. ;STARTING VALUE OF BLOCK SIZE 51osurn :CHARACTERISTICS DATA BLOCK :ADDRESS OF MESSAGE BUFFER 14, ;LENGTH OF MESSAGE BUFFER 8. ;MESSAGE BUFFER .zggg JWORD .WORD T10BUFR:.BLKW *ADDRESS OF CHARACTERISTICS BLOCK 0,0 ;0 b b b b e e — NS ONVNOOON WO ON= =W b b b b e SNNNWNVOO N OO~ — b :LOCAL TEXT MESSAGES FOR TEST b omd ek omd cend oD 3023 043317 T10DTA: 042574 000000 000016 000000 ONOO === nVIWONON WY 3001 042556 3002 042560 3003 3004 042562 3005 042562 3006 042564 3007 042566 3008 042570 3009 3010 042574 3011 3012 3013 3014 3015 3016 3017 042614 T10PKT: 100204 042562 000000 000010 TIOMBF: .ASCIZ TIONBA: .ASCIZ T10NNBA: T10SSR: .ASCIZ T1ONINT: T10INT: .ASCIZ TST101ID: s ‘'Message Buffer Modified after MESSAGE BUFFER RELEASE Command® °'NBA Not Clear After WRITE CHARACTERISTICS Command" (ASCIZ °'NBA Set After MESSAGE BUFFER RELEASE Command® ‘Contents of TSSR !ncorrect After WRITE CHARACTERISTICS® .ASCIZ ‘'Expected Interrupt Not Received On WRITE CHARACTERISTICS® ‘Unexpected Interrupt Received On WRITE CHARACTERISTICS® .ASCI 'Basic Packet Frotocol® TSVS5A = HARDWARE TESTS MACRO M1113 TEST 10: BASIC PACKET PROTOCOL 3027 3028 3029 3030 3031 3032 3033 3034 043346 3035 043346 043352 3037 043356 3362 25-MAY-82 08:41 PAGE 110 16 SEG 0201 4 4 :ROUTINE TO RESTORE COMMAND PACKET TO START=UP (DEFAULT) VALUES - L] T10RST: 012701 012721 012721 042510 100204 042520 #T10PACKET,R1 #100204,(R1)+ #T10DATA,(R1)+ (R1)+ #8..(R1)+ 000010 042532 ?;}gera.(a1>+ ;ADDRESS OF MESSAGE BUFFER ?;?;.(R1)0 ;LENGTH OF MESSAGE BUFFER 4+ 000016 B (R1) T108FR 042532 PC 4 :SAVE THE REGISTERS :START OF THE PACKET :WRITE CHARACTERISTICS WITH ACK, IE :ADDR OF CHAR ESS DAT. BLOCK :EXTENDED ADDRESS :SIZE OF DATA BLOCK IN BYTES sCLEAR 1ST LOC IN MESSAGE BUFFER sRETURN ROUTINE TO RESTORE COMMAND PACKET #2 TO START-UP (DEFAULT) VALUES T10RT2: 042552 100204 042562 = 012721 S o 3 R2 RRLRRRR gegegaes WA — 3060 043442 0000!0 042574 sSTART OF THE PACKET :WRITE CHARACTERISTICS WITH ACK, IE ;ADDRESS OF CHAX DATA BLOCK sEXTENDED ADDRESS ?;}QBUFR.(Rl)O sADDRESS OF MESSAGE BUFFER #8..(R1)+ + 000016 ENDTST sSIZE OF DATA BLOCK IN BYTES 1;?;.(R1)0 sLENGTH OF MESSAGE BUFFER (R1) T108UFR sCLEAR 1ST LOC IN MESSAGE BUFFER + C+2574 sSAVE THE REGISTERS #T10PKT ,R1 #100204,(R1)+ #TI0DTA,(R1)+ (R1)+ PC sRETURN L10075: TRAP CSETST TSVSA = HARDWARE TESTS TEST MACRO M1113 11: NON-TAPE MOTION COMMANDS 25-MAY-82 08:41 .SBTTL 16 PAGE 112 TEST SEQ 0202 11: NON-TAPE MOTION COMMANDS '0 TfllS TEST VERIFIES PROPER OPERATION OF THE INITIALIZE :COMMAND. TWO SUBTESTS ARE USED. THE FIRST VERIFIES THAT :THE CUMMAND RUNS TO COMPLETION AND STORES A VALID MESSAGE PACKET. TKE SECOND VERIFIES THAT NON-2ERO :VALUES IN THE COMMAND MODE FIELD CAUSES COMMAND REJECT. BGNTST 012737 045472 016500 000024 002214 - MOV #TST111D.RO MOV #20. ,LOOPCNT JSR T11LOOP: ) PC,TSTSETUP 22227027777, aegxn SUBTEST /77111111111 BGNSUB " 104402 012700 000000 004737 103405 10001 015764 104441 104455 002115 003646 012024 SMN=D G 045524 044650 gN PNONON) = = RO SRR NOWN V=00V 3s: 48: - 002220 002222 000000 016326 ($BSUB #PRI00 sLOVER PRIORITY TO ALLOW INTERRUPTS JSR BCS KoV ERRDF PC,SOFINIT ;DO SOFT INIT OF CONTROLLER sBR IF SOFT INIT = OK sSAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURING INIT TRAP CSERDF .WORD 1101 3s RO,R1 ERRNO, SF IERR, SF IMSG MOV #T11PK2,R4 BCS ERRHRD 4 ERRNO,WRTMSG, SF IMSG JSR MOV 108: IRAP SETPRI JSR : = IR I ) e e PONOND = cd o b cnd R 012024 wd =d Y WWWWWWWW - WWWWWW 044720 010652 004737 012704 Ti1:: sASCII MESSAGE TO IDENTIFY TEST ;D0 INITIAL TEST SETUP sPERFORM 20 ITERATIONS PC.WRTCHR PC.T11REST #T11PACKET R4 BGNSEG #PRI0O,RO CSSPRI .WORD WORD SFIERR SFIMSG sWRITE CHARACTERISTICS PACKET sISSUE WRITE CHARACTERISTICS :SR, IF COMMAND ISSUED OK sWRITE CHARACTERISTISC FAILED TRAP .WORD WORD WORD CSERHRD 1102 WRTMSG SFIMSG sSET UP PACKET FOR COMMAND sGET THE ADDRESS OF CCMMAND PACKET $233>>>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> TRAP ($BSEG CLR CLR MOV JSR FATFLG INTRECV Ré,TSDB(RS) PC.CHKTSSR MOV ERRDF RO,R1 ERRNO,T11SSR,PKTSSR BCS MOvY TRAP 15§ sCLEAR FATAL ERROR FLAG sCLEAR INTERRUPT RECEIVED FLAG 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 TRAP CSERDF TSVSA = HARDWARE TESTS TEST MACRO M1113 11: NON-TAPE MOTION COMMANDS 043624 0436%6 043630 3126 043632 3127 043636 043636 3128 043640 043640 043642 3129 043644 3130 043650 3134 043652 043652 043654 043656 043660 3135 043662 3136 043666 3137 043672 3138 043676 3139 043700 3140 043704 3141 043706 3145 043710 043710 043712 043714 043716 3146 043720 3147 043720 3148 043724 3152 043726 043726 043730 043732 043734 3153 043736 043736 043736 3156 043740 043740 3157 043740 3158 043742 3159 043746 3160 043750 3161 043754 002117 045214 012036 005237 002220 104406 104410 000074 005737 001004 104456 002120 045344 012036 016501 012702 032701 001402 052702 020201 000002 000200 000100 000100 104456 002121 044762 012036 103405 15%: 002222 001404 004737 25-MAY-82 08:41 011104 22$: 25%: 308 : 35%: 104456 002122 004741 015500 PAGE 112-1 002220 017172 60$: 1103 T11SSR PKTSSR CSERHRD 1104 T11ININT PKTSSR FATFLG ESCAPE SEG TST BNE ERRHRD INTRECV 22% ERRNO,T1ININT,PKTSSR MOV MOV BIT BEQ BIS TSSR(RS) ,R1 #SSR,R2 #OFL ,R1 25$ #OFL ,R2 TRAP WORD .WORD .WORD sGET THE CONTENTS OF TSSR JEXPECTED CONTENTS OF TSSR 215 OFF=-LINE BIT SET ? sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA BEQ ERRHRD 308 ERRND,T11NBA,PKTSSR JOKAY IF MATCH sNBA NOT ZERO JSR PC,CKRAM JCHECK RAM TO MEMORY ERRHRD ERRNO,PKTRAM,RAMERR CMP BCS R2, Ri 59§ sSET FATAL ERROR FLAG ;LOOP ON ERROR, IF FLAG SET TRAP CSCLP1 ;BY=PASS SUBTEST IF FATAL ERROR TRAP CSESCAPE .WORD 100008-. ;DID AN INTERRUPT OCCUR ? :BRANCH IF YES :DOES EXPECTED MATCH RECEIVED ? TRAP .WORD .WORD WORD CSERHRD 110§ T1INBA PKTSSR *RAM OK GO ON JTHEY DON'T MATCH TRAP CSERHRD .WORD 1106 .WORD PKTRAM .WORD RAMERR << END SEGMENT <<<<<<<<<<<<< 100008 : TRAP CSESEG ENDSEG 3 €< ENDSUB SNNNAAANNAANANANLN END SUBTEST \NAALLLLLLWWLL L10103: TRAP CSESUB 104403 005737 001402 004737 .WORE WORE .WORD INC CkLOOP 104405 59%: - TST BEQ JSR FATFLG 60% PC,CKDROP sANY FATAL ERRORS ? :BRANCH IF NOT sTRY TO DROP THE UNIT SEQ 0203 TSVSA = HARDWARE TESTS MACRO M1113 11: NON-TAPE MOTION COMMANDS -oo$~8m2$ 3173 3174 043756 043756 043762 3175 043764 043764 3178 043766 3179 043772 3183 043774 3184 043776 043776 25-MAY-82 08:41 PAGE 113 - SEQ 0204 4 STEST 11, SUBTEST 2 :CHECK THAT NON-ZERO MODE BITS BEING SET CAUSES sINITIALIZE COMMAND TO BE REJECTED NNNON WWWWWWWWWW TEST 222220200777, aegg SUBTESt 111011122111 BGNSUB o 104402 012700 104441 SETPRI 000000 015764 012704 004737 103404 MOV TRAP PC,SOFINIT 38" 3s: JSR BCS ERRHRD #T11PK2,R4 zC.URTCHR $ ERRNO,WRTMSG, SF IMSG :DEVICE FATAL ERROR DURI?%AgNIT 004737 012704 045524 044650 002222 5%: 108: ;WRITE CHARACTERISTISC FAILED 0440 3207 044074 044074 3208 044076 044076 044100 012036 104406 104410 000074 #P .MODE , (R4) INTRECV sCLEAR INTERRUPT RECEIVED FLAG NON-ZERO COMMAND MODE BITS PC .CHKTSSR :WAIT FOR SSR TO SET CKLOOP ESCAPE WRTMSG SFIMSG sSET UP PACKET FOR ZOMMAND sGET THE ADDRESS OF COMMAND PACKET 156 0.R1 RO, ERRNO,T11SSR,PKTSSR 15%: CSERHRD 1108 PC,T11REST #T11PACKE R4 T R4, TSCB(RS) 016326 SFIERR SFIMSG sISSUE WRITE CHARACTERISTICS :BR, iF COMMAND ISSUED OK .WORD .WORD 4$: CSERDF 1107 sWRITE CHARACTERISTICS PACKET UORD 012024 C$BSEG sSAVE CONTENTS OF TSSR .WORD «WORD MOV CSSPRI :DO SOFT INIT OF CONTROLLER :BR IF SOFT INIT = OK WORD 044720 010652 #PRI00,RO $23333>>>>>>> BEGIN SEGMENT >>>>>>>>>>>> RO.R1 ERRNO, SF IERR, SF IMSG 104455 002123 003646 012024 ($BSUB ;LOWER PRIORITY TO ALLOW INTERRUPTS TRAP BGNSEG 104404 00472~ 103405 010001 #PRI00 TRAP sSET _THE PACKET ADDRESS sBR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILEDI;RPSEI TT1SSR PKTSSR TRAP cscLP TRAP CSESCAPE :LOOP ON ERROR, IF FLAS SET SEG CSERDF 1109 .WORD .WORD LWORD sBY=PASS CHECKS If FATAL ERROR .WORD 100008-. TSYSA = HARDWARE TESTS TEST MACRO M1113 11: NON-TAPE MOTION COMMANDS (=2 04 1 4 3215 044 1 3216 044 1 1 002222 TST BNE ERRHRD PAGE 113-1 K 16 INTRECV 22% ERRNO, TTININT ,PKTSSR - SEQ 0205 sDID AN INTERRUPT OCCUR ? sBRANCH IF YES TRAP .WORD .UORg .WOR ¥ 1 005737 001004 =T 1 I SleT] ngN:_o oxd wnd wbd T a2 o RRRRR 3209 044102 3210 044106 044 1 3214 25-MAY-82 08:41 000002 100206 000100 3219 044136 000100 1 3225 044146 044146 044154 3226 044156 3227 044156 3228 044162 3232 044164 044172 3233 044174 044174 044174 3234 3235 044176 044176 044176 001404 22%: 25% ERRHRD 012036 103405 #0OFL ,R2 25%: 104456 004737 TSSR(RS) ,R1 #SC!SSR!TSREJ,R2 #OFL ,R1 011104 308: 35%: 104456 015500 JSR BCS ERRHRD ENDSEG PC, CKRAM 59§ ERRNO,PKTRAM,RAMERR TRAP .WORD -WORD .WORD 59%: ENDSUB 1110 TTININT PKTSSR CSERHRD 1M T112REY PKTSSR sCHECK RAM TO MEMORY :RAM 0K GO ON sTHEY DON'T MATCH TRAP «WORD «WORD WORD CSERHRD 1112 PKTRAM RAMERR 2 €< <<< END SEGHEQT €<<CLLLLCLLLLK 100008 : " IRAP 104405 104403 R2,R1 308 ERRNO, T112REJ ,PKTSSR sGET 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 ? sOKAY IF MATCH s COMMAND NOT REJECTED CSERHRD CSESEG SNVAMAMAAAANNNNL END SUBTEST \\A\ANNAALNLL L1010« TRAP CSESUB | | TSVSA = HARDWARE TESTS TEST MACRC M1113 11: NON-TAPE MOTION COMMANDS 3237 3 25<MAY-82 08:41 PAGE 114 L 6 ~ SEQ@ 0206 4 STEST 11, SUBTEST 3 *CHECK THAT THE GET STATUS COMMAND IS ACCEPTED 3245 044200 044200 044200 3246 3247 044202 044202 044206 3248 064210 044210 3249 044212 3250 044216 3254 044220 3255 044222 044222 BGNSUB 111111177777 BE?{N SUBTEST /77777717777 104402 012700 104441 104404 004737 103405 010001 TRAP SETPRI 000000 #PRIOO BGNSEG 015764 104455 sLOWER PRIORITY TO ALLOW INTERRUPTS Mov TRAP PC,SOFINIT ERRDF RO.R1 ERRNO,SFIERR,SF IMSG 3s TRAP ;DO SOFT INIT OF CONIROLLER 012024 012704 004737 103404 044720 010652 DEVICE FATAL ERROR DURING INIT po— 004737 012704 045524 044650 005037 002222 000000 016326 327 300 3272 044302 3276 044304 044304 044312 044314 3277 044314 3278 044316 044316 044320 3279 044322 3280 044326 3284 044330 044330 MOV #T11PK2. R4 BCS ERRHRD 4 ERRNO,WRTMSG, SFIMSG 4$: 58: 108: JSR PC.WRTCHR JWRITE CHARACTERISTICS PACKET IF COMMAND ISSUED Ok URIIE CHARACTERISTISC FAILED TRAP WORD WORD .WORD MOV cTi1PACKET R4 PC,T11REST sSET UP PACKET FOR COMMAND CLR MOV JSR INTRECV R4, TSDB(RS) PC,CHKTSSR sCLEAR INTERRUPT RECEIVED FLAG sSET THE PACKET ADDRESS JWAIT FOR SSR TO SET MOV ERRDF RO.R1 ERRNO,T11SR2,PKTSSR sSAVE CONTENTS OF TSSR DEVICE FATAL SSR FAILED TO SET BCS 15§ 15%: 104406 CKLOOP ESCAPE 104410 002222 TST BNE ERRMAD INTRECV 228 ERRNO,T1ININT,PKTSSR CSERHRD 1114 WRTMSG SFIMSG CEI THE ADDRESS OF COMMAND PACKET :BR IF CARRY SET (GOOD RETURN) TRAP CSERDF .JORD PKTSSR TRAP cscLP TRAP CSESCAPE ;LOOP ON ERROR, IF FLAG SET SEG 1113 SFIERR SFIMSG ISSUE WRITE CHARACTERISTICS WORD WORD 012036 104456 .WORD .WORD JSR 104456 012024 4264 3s: C$BSEG :BR IF SOFT INIT = 0K sSAVE CONTENTS OF rssa HORD 044230 3256 044232 3257 044232 3258 044236 3259 044242 3263 044244 #PRIOO,RO C$SPRI 3333555533339 BEGIN SEGMENT >>>>>>>>>>>> JSR BCS MOV csasus :BY=PASS SUBTEST IF FATAL ERROR .WORD ;DID AN INTERRUPT OCCUR ? 111§ T11SR2 10000%-. sBRANCH IF YES TRAP CSERHRD TSVSA = HARDWARE TESTS TEST MACRO M1113 11: NON=TAPE MOTION COMMANDS 25-MAY-82 08:41 PAGE 114-1 SEQ 0207 «WORD «WORD 22%: TSSR(RS) ,R1 #SSR,R2 000100 000700 3295 044366 044366 044370 044372 044374 3296 044376 3297 044376 3298 044402 3302 044404 064404 #OFL .R1 25$ 044416 044416 §2£Ri 25%: 011104 104456 002136 004741 015500 ‘ JSR BCS ERRHRD ENDSEG ' 59%: 104403 ENDSUB g$§CKRAH ERRNO,PKTRAM,RAMERR WORD PKTSSR sEXPECTED CONTENTS OF TSSR :1S OFF=LINE BIT SET ? sBRANCH IF NOT OFF=LINE sSET OFF=LINE IN EXPECTED DATA sDOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH s COMMAND NOT ACCFPTED TRAP «WORD «WORD «WORD o e 004737 103405 wo B e 012036 W ERRNO, T113REJ, PKTSSR 044412 3303 044414 044414 044414 104405 3304 3305 3306 044416 #OFL .R2 :GET THE CONTENTS OF TSSR 1116 TTININT sCHECK RAM TO MEMORY :RAM 0K GO ON sTHEY DON'T MATCH CSERHRD 1118 TRAP «WORD «WORD . WORD PKTRAM RAMERR TRAP CSESEG 2 €< <<< END SEGPCNI €L 10000%: SNVAMAMAAAAANANANAL END SUBTEST \\\\ANNLL L10105: TRAP CSESuB [ | TSVSA = HARDWARE TESTS TEST MACRO M1113 11: NON-TAPE MOTION COMMANDS 25-MAY=-82 08:41 PAGE 115 SEQ 0208 NOWVSWN=O —bbdoDeb WWWWWWWW WWWWWWWW ¢ STEST 11, SUBTEST 4 *SUBTEST TO VERIFY THAT A A GET STATUS COMMAND IS REJECTED IF A NON-ZERO COMMAND MODE FIELD IS USED 044420 BGNSUB I 85?{? zusresr 111111001111 "7 104402 012700 104441 430 3321 044432 3322 044436 3326 044440 3327 04444% 044450 3328 044452 3329 044452 3330 044456 3331 044462 3335 044464 044464 044466 044470 472 3336 044474 015764 40 JSR 010001 JLOWER PRIORITY TO ALLOW INTERRUPTS MOV #PRI00,RO TRAP C$SPRI PC,SOFINIT TRAP ;DO SOFT INIT OF CONTROLLER BR IF SOFT INIT = 0K C$BSEG 3$ *SAVE CONTENTS OF TSSR sDEVICE FATAL ERROR DURI?gAANIT WORD 044720 010652 3s: Mov JSR BCS ERRHRD ($BSUB $2253335>5>>> BEGIN SEGMENT >>>>>>>>>>>> RO,R1 ERRNO, SFIERR, SF IMSG 104455 002137 003646 012024 012704 #PRIOO BGNSEG #T11PK2, R4 ZE.URTCHR ERRNO,WRTMSG, SF IMSG CSERDF 1119 «WORD WORD SFIERR SFIMSG sWRITE CHARACTERISTICS PACKET ISSUE WRITE CHARACTERISTICS IF COMMAND ISSUED OK HRITE CHARACTERISTISC FAILED TRAP CSERHRD «WORD «WORD WORD 012024 1120 WRTMSG SFIMSG 004737 012704 045524 044650 MOV #T11PACKET,RG sSET UP PACKET FOR C OMMAND sGET THE ADDRESS OF COMMAND PACKET 005037 002222 007000 000000 016326 CLR 8IS MOV JSR TRECV 0007000.(R4) R4, TSDB(RS) PC,CHKTSSR :SET TO NON-ZERO MODE :SET_THE PACKET ADDRESS :WAIT FOR SSR TO SET MOV ERRDF RO,R1 ERRNO,T11SR2,PKTSSR JSR BCS PC,T11REST 15§ sCLEAR INTERRUPT RECEIVED FLAG :BR IF CARRY SET (GOOD RETURN) sSAVE CONTENTS OF TSSR sDEVICE FATAL SSR FAILED TO SET TRAP LMORD +WORD 012036 3351 044542 045542 0446544 3352 044546 3353 044552 SETPRI 000000 TRAP 15%: 104406 ESCAPE 002222 WORD :LOOP ON ERROR, IF FLAG %sxp CKLOOP TST BNE SuB 5NTRECV 2% ;BY=PASS SUBTEST IF FATAL ERROR :DID AN INTERRUPT OCCUR ? :BRANCH IF YES CSERDF 1121 T11SR2 PKTSSR CscLP CSESCAPE L10106~. TSVSA = HARDWARE TESTS TES T MACRO M1113 11: NON-TAPE MOTION COMMANDS 25-MAY-82 08:41 3357 044554 ERRHRD WWWWWWWWWW 044554 000002 100206 000100 33 : 000100 044620 3369 044622 3370 3371 044622 3372 044626 3376 044630 044630 22$: TSSR(RS) ,R1 25 #OFL ,R2 gzfini 25$: 004737 103404 SEQ 0209 ERRNO, T1ININT ,PKTSSR #SC!SSR! TSREJ,R2 #OFL,R1 ERRHRD 012036 PAGE 115-1 ERRNO, T114REJ, PKTSSR TRAP 1122 TTININT PKTSSR TRAP «WORD CSERHRD s1S OFF=LINE BIT SET ? sBRANCH IF NOT OFF=-LINE sSET OFF=LINE IN EXPECTED DATA :DOES EXPECTED MATCH RECEIVED ? sOKAY IF MATCH s COMMAND NOT REJECTED 308: 011104 35%: JSR BCS ERRHRD 104456 §8§CKRAH ERRNO,PKTRAM,RAMERR WORD +WORD 1123 T114REJ PKTSSR TRAP CSERHRD «WORD «WORD PKTRAM RAMERR JCHECK RAM TO MEMORY sRAM OK GO ON sTHEY DON'T MATCH LWORD 044636 3377 044640 3378 044640 044640 044640 3379 044642 044642 044642 3380 59%: ENDSEG ENDSUB CSERHRD WORD +WORD WORD sGET THE CONTENTS OF TSSR sEXPECTED CONTENTS OF TSSR 1124 s €<<<CLCCC<C<< END SEGMENT <<<<<<<<<<< 100008: TRAP CSESEG - TRAP CSESUB FALARARRRRRNNN Ergo?gETEST ASSRRARRNANNN TSVSA = HARDWARE TESTS TEST MACRO M1113 11: NON-TAPE MOTION COMMANDS 3382 044644 0464644 044646 3383 3384 3385 25-MAY-82 08:41 EXIT 104432 000762 3387 e 100204 044660 000000 000010 3397 044660 3398 044660 3399 044662 3400 044664 gzg; 044666 044672 000000 000016 000000 T11PACKET: .WORD .WORD WORD .WORD T11DATA: 000000 %282 044672 3415 044730 3416 044730 3417 044732 3418 044734 ;258 044736 T11BFR: 044720 T11PK2: 100204 044730 000000 000010 044742 000000 000016 000000 T11DTA: 000000 CSEXIT L10102-. JCOMMAND PACKET FOR TEST JWRITE CHAR COMMAND, WITH IE, ACK +sADDRESS OF CHARACTERISTICS BLOCK JSTARTING VALUE OF BLOCK SIZE JCHARACTERISTICS DATA BLOCK JADDRESS OF MESSAGE BUFFER .BLKW 8. JMESSAGE BUFFER =< . +10>8177770 sCOMMAND PACKET FOR TEST :WRITE CHAR COMMAND, WITH IE, ACK JADDRESS OF CHARACTERISTICS BLOCK .WORD .WORD WORD .WORD 100204 T11DTA O 8. WORD WORD .WORD .WORD T11BF2 O 14, 0,0 JLENGTH OF MESSAGE BUFFER 8. JMESSAGE BUFFER 3 sSTARTING VALUE OF BLOCK SIZE JCHARACTERISTICS DATA BLOCK sADDRESS OF MESSAGE BUFFER sLOCAL TEXT MESSAGES FOR TEST gzgg 0 100204 T11DATA 0 8. JLENGTH OF MESSAGE BUFFER 3423 3424 3425 W TRAP .WORD T11BFR O 14. 0,0 T118F2: .BLKW 3428 JALL DONE THIS TEST .WORD WORD WORD LWORD %25} 044742 3429 044762 3430 045022 3431 045103 3432 045133 3433 045214 3434 045270 3435 045344 3436 045422 3437 045472 gzsa TST SEQ 0210 3¢ sLOCAL STORAGE FfOR THIS TEST 3391 044650 3392 044650 3393 044652 3394 044654 %%gg 044656 3405 3407 3409 044720 3410 044720 3411 044722 3412 044724 gz}z 044726 PAGE 116 m m 107 107 103 103 105 m 116 116 116 105 105 157 157 170 156 157 111 111 126 126 156 156 160 143 156 ; T1INBA: .ASCIZ T112REJ: T113REJ: T114REJ: T11SSR: .ASCIZ T11SR2: .ASCIZ T1ININT: T11TSBA: TST111D: .EVEN ‘'INITIALIZE Command Not Accepted' LASCIZ ‘INITIALIZE Not Rejected With Non-Zero Mode Field"' LASCIZ °'GET STATUS Not Accepted’ .ASCIZ 'GET STATUS Not Rejected With Non-Zero Mode Field’ ‘Contents of TSSR Incorrect After INITIALIZE® ‘Contents of TSSR Incorrect After GET STATUS® .ASCIZ ‘Expected Interrupt Not Received On INITIALIZE® .ASCIZ 'Incorrect TSBA Address After INITIALIZE' .ASCIZ 'Non-Tape Motion Commands' TSVSA = HARDWARE TESTS MACRO M1113 TEST 11: NON-TAPE MOTION COMMANDS 3441 344 344 3444 3445 3446 3447 3448 3449 045524 3450 045524 3451 0455 3452 045534 3453 045540 34564 045542 3455 045544 3456 045546 3457 045550 3458 045552 3459 045554 3460 045556 3461 045560 3462 045564 3463 3464 3465 3466 3467 3468 3469 3470 045566 3471 045566 3472 045572 3473 045576 3474 045602 3475 045604 3476 045606 3477 045610 3478 045612 3479 045614 3480 045616 3481 0456 3482 045622 3483 045626 3484 045630 045630 045630 3485 045632 25-MAY=82 08:41 PAGE - 117 SEQ@ 0211 M g SROUTINE TO RESTORE COMMAND PACKET TO START-UP (DEFAULT) VALUES UP (DEFAULT) :INITIALIZE COMMAND T1IREST: 044650 100213 C 3, sSAVE THE REGISTERS sSTART OF THE PACKET sINITIALIZE WITH ACK, IE sADDRESS OF CHAR DATA BLOCK sEXTENDED ADDRESS sSIZE OF DATA BLOCK IN BYTES ;ADDRESS OF MESSAGE BUFFER ;LENGTH OF MESSAGE BUFFER 044672 sCLEAR 1ST LOC IN MESSAGE BUFFER sRETURN : 4 *ROUTINE TO RESTORs COMMAND PACKET TO START=UP (DEFAULT) VALUES SGET STATUS COMMAN T11RT2: 012701 012721 #T11PACKET,R1 #100217, (R1)+ 044672 (R1)+ (R1)+ (R1)+ (R1)+ (R1)+ (R1)+ (R1)+ (R1) T11BFR PC sSAVE THE REGISTERS sSTART OF THE PACKET sGET STATUS WITH ACK, IE sADDRESS OF CHAR DATA BLOCK sEXTENDED ADDRESS sSIZE OF DATA BLOCK IN BYTES sADDRESS OF MESSAGE BUFFER sLENGTH OF MESSAGE BUFFER sCLEAR 1ST LOC IN MESSAGE BUFFER sRETURN L10102: TRAP CSETST TSV6 = PARAMETER CODING MACRO M1113 TEST 11: NON-TAPE MOTION COMMANDS 25-MAY-82 08:41 ; PAGE 119 SEQ 0212 LTITLE TSV6 = PARAMETER CODING BGNMOD TSVé .SBTTL HARDWARE PARAMETER CODING SECTION 12 18 19 045632 045632 TSVé6:: % NN ~NoNwn e Cenen : 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 28 29 : INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE : MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS g? : uxm THE OPERATOR. 32 045632 045632 3 045634 34 045634 045634 045636 045640 045642 35 045644 045644 045646 045650 045652 36 37 045654 045654 000010 LSHARD: : i 000031 045654 160010 177776 GPRMA .WORD .WORD WORD LWORD GPRMA .WORD .WORD LWORD LWORD 001031 045710 000000 000776 38 045654 104 105 045734 m 116 39 045710 m BGNHRD .WORD L10107=L$HARD/2 116 TSLOLIM TSHILIM :GPRMD ENDHRD HPM3,4,0,340,0,7,YES HPM1: .ASCIZ 'DEVICE ADDRESS (TSBA/TSDB) °* HPM3: _ASCIZ 'INTERRUPT PRIORITY L10107: 126 WPM1,0,0,160010,177776,YES TSCODE HPM1 TSLOLIM TSHILIM HPM2,2,0,0,776,YES TSCODE HPM2: ‘'INTERRUPT VECTOR :GET VECTOR ADDRESS. :GET INTERRUP: PRIORITY. .EVEN ,ASCIZ ;GET TSBA/TSDB REGISTER ADDRESS. ' TSV6 = PARAMETER CODING MACRO M1113 SOF TWARE PARAMETER CODING SECTION 25-MAY-82 08:41 2? «SBTTL PAGE 120 SEQ 0213 SOFTWARE PARAMETER CODING SECTION 46 &7 48 49 see : THE SOF TWARE PARAMETER CODING SECTION CONTAINS MACROS ¢ THAT ARE USED BY THE SUPERVISOR TO BUILD P-TABLES. THE : MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE 51 gg : MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS : WITH THE OPERATOR, - o wi : INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. 54 045764 045764 045766 5 56 045766 045766 045770 045772 7 58 59 045774 60 ] 000003 001130 046024 177777 : 3 045774 62 045774 63 046024 64 046054 65 046104 gg L10110: 105 11 120 120 BGNSFT LSSOFT:: : 116 116 105 105 101 110 122 122 SPM1: SPM4: SPMé: SPM7: THE .WORD L10110=L$SOFT/2 GPRML GPRML .WORD SPM1,0,-1,YES SPM&.2.=1.YES TSCODE .WORD JWORD GPRMD GPRMD ENDSFT .EVEN SPM4 =1 SPM6,4,D,7777.0.7777.YES SPM?7,6,0,7777,0,7777 ,YES .ASCIZ .ASCIZ .ASCIZ .ASCIZ .SBTTL ‘'ENABLE TRANSPORT TESTS 'INMIBIT ITERATIONS °'PER TEST ERROR LIMIT °PER UNIT ERROR LIMIT PATCH AREA : GET TRANSPORT TEST FLAG. : GET ITERATION CONTROL. : GET LOCAL ERROR LIMIT s GET GLOBAL ERROR LIMIT ° ' ° ° a8 : 71 : AND AN ADJUSTMENT TO ACCOUNT FOR THE ‘LASTAD BIT?"* HACK 33 : FINALLY A GENEROUS PATCH AREA. ;g : DESCRIBED IN ‘‘SUPPRG.MEM'' (FOR REV C). 7% ;2 046134 ;; 046134 80 046400 ’ PATCH: : BLKW 32. .=, 137741 82 046400 046400 046402 046404 83 046404 84 Leew 000000 000000 000001 JWORD LSLAST:: JWORD ENDMOD +END 0 0 ;SET LAST USED ADDRESS. TSV6 = PARAMETER CODING MACRO M1113 SYMBOL TABLE ADDSSR 012116 G ADR = 06 AMBTSS 006631 ASSEMB= A1716 = BADDAT BADSSR BDVPCR= 000010 000003 003152 G 015670 G 177520 G BENBSW 002226 G BIE = 040000 BITO = 000001 G B8IT00 = 000001 G BITO1 = 000002 G BIT02 = 000004 G BIT03 = 000010 G BIT04 = 000020 G BITO5 = 000040 G BIT06 = 000100 G BITO7? = 000200 G BITO8 = 000400 G BIT09 = 001000 G BIT1 = 000002 G BIT10 = 002000 G BIT11 = 004000 G BIT12 = 010000 G BIT13 = 020000 G BIT14 = 040000 G BIT15 = 100000 G BIT2 = 000004 G BITS = 000010 G BIT4 = 000020 G BITS = 000040 G BIT6é = 000100 G BIT? = 000200 G BIT8 = 000400 G BIT9 = 001000 G = 000400 G BRINIT 004453 BSELO = 000000 BSEL1 = 000001 CHKAMB 016034 CHKMAN 020470 CHKTSS 016326 CKDROP 017172 CKEMAX 017072 CkMSG_ 011350 6 CKMSG2 011470 6 CKRAM 011104 G CKRAM2 011214 6 CMDPKT 021250 G CMPMEM 017650 CONFIG 017240 COUNT 00; G CSRADD 002204 G CTAB 003190 6 CTABE 003172 G CTABM 003160 6 CSAU__ 25<MAY-82 08:41 = 000052 CSAUTO= 000061 C$BRK = 000022 C$BSEG= c$8sus= CSCEFG= CSCLCK= CSCLEA= 000004 00000 00004 00006 00001 CS$CLOS= 00003 C$CLP1= 000006 CSCVEC= 000036 CSDCLN= 000044 C$DODU= 000051 CSORPT= 000024 CSOU = 000053 CSEDIT= 000003 CSERDF= 000055 CSERHR= 000056 CSERRO= 000060 CSERSF= 000054 CSERSO= 000057 CSESCA= 000010 CSESEG= 000005 CSESUB= 000003 CSETST= 000001 CSEXIT= 000032 CSGETB= 000056 CSGETwW= 000027 CSGMAN= 000063 CSGPHR= 00004 CSGPLO= 000030 CSGPRI= 000040 CSINIT= 000011 CSINLP= 000020 CSMANI= 000050 CSMEN = 31 CSMSG = iz CSOPEN= 0000 CSPNTB= 000014 CSPNTF= 000017 CSPNTS= 000016 CSPNTX= 000015 C$Q10 = 000377 C CSREFG= 4 CSRESE= 33 CSREVI= CSRFLA= 000051 CSRPT = 000025 C$SEFG= 6 C$SPRI= 1 CSSVEC= 37 C$TPRI= 0213 DATA 8 106 DATASC 02 23 DEBUGM 8513 DEVCNT 2216 6 PAGE 120-1 SEQ 0214 DEVDRO DEVNRD DEVNXR DEVONL DEVSUM DFPTBL DIAGMC= DICEA = 05336? 02330 023223 8 3153 3116 002154 G 000000 000001 DSBINT 016174 DUAD12 004637 DUFLG 003106 G DUMMY 03056 EF.CON= 000C%6 G EF .NEW= 000035 G EF .PWR= 000034 G EF .RES= 000037 G EF .STA= 000040 G EMAXDU 016767 EN = 000000 ENAINT 016142 ENVIRN 020620 EPRTSW 002176 6 EPRT1 00635 EPRT2 006354 ERCM 011723 ERRHI 002234 G ERRK 016746 ERRLO 002236 G ERRNO = 002144 ERRVEC= 000206 G ERTABE 00337 ERTABL 00317 ESUM 016750 EVL = 000004 G EXBCNT= 000010 EXPBRE 865672 G EXPD 2;30 6 EXPGOT 004527 EXPGT2 563 EXPMSG ;3 06 EXPREC 015464 6 EXTA 5766 EXTEND 5736 EXTFEA 224 6 ESEND = ESLOAD= FATERR= FATFLG FERCM FIFEXP FIFINS FIF2MS FILLME FNOINT FORCER FREE FREEN] 100 35 0 2; G 1”7 01 1g G 01 § 01230 01 61{ il 7% G 150 G 124 FRESIZ FUSI 003122 411 FSRPT = 00001 FSSEG = 00000 F$SOFT= 000005 $ G$DISP= 00000 GSEXCP= 0004 GSHILI= 00000 GSLOLI= 000001 = 6 INTFLA INTMAS INTR INTREC INTVEC INTX 016135 016134 016503 G 002222 6 016136 004274 ISR = 000100 IVEC 002206 G IXE = 004000 ISAU = 000041 ISAUTO= 000041 ISCLN = 000041 ISDU = 000041 ISHRD = 000041 ISINIT= 000041 I$MOD = 000041 ISMSG = 000041 ISPROT= 000040 ISPTAB= 000041 ISPWR = 000041 ISRPT = 000041 I$SEG = 000041 ISSETU= 000041 ISSFT = 000041 I$SRV = 000041 I$SUB = 000041 ISTST = 000041 JSJMP = 000167 KIPARO= 172340 KIPAR1= 172342 KIPAR2= 172344 KIPAR3= 172346 KIPARG= 172350 KIPARS= 17 Sf KIPARG= 17235 KIPAR?= 172356 KIPDRO= 172300 KIPDR1= 172302 KIPDR2= 17 KIPDR3= 17, KIPDR4&= 17231 KIPDRS= 17231 KIPDRG6= 172314 KIPDR?= 17 ;8 KTENAB 003130 6 KTFLG 126 G KTINIT 021044 KTOFF 17264 KTON 17246 LERRMA 70 6 LISTAL= 1 LOE = G LOOPCN &6 | | TSV6 = PARAMETER CODING MACRO M1113 . MBOL - LSAC 009110 ¢G LSACP ~ 002110 B OEEE LSAUT 00%070 G LSAUTO 022546 G LSCO LSDEPO LSDESC LSDESP LSDEVP LSDISP 002032 G 002011 G 003404 G 002076 G 002060 G 002124 G LSCLE LSCLEA 005106 ¢ 022626 G 110006 L10004 012132 L1001 L10014 L10015 L10016 L10017 L10020 015400 013114 013742 013764 015470 015476 L10013 L1001§ 013330 012230 002044 G 002102 G 002046 G 00 G L10031 L10032 L10033 L10034 LSHARD LSHIME 045634 G 002120 G LSHW 002154 G LSLADP LSLAST LSLOAD LSLUN LSMREV LSNAME LSPRIO LSPROT LSPRY LSREPP LSREV 002026 G 046404 G 002100 G 002074 G 002050 G 002000 G 002042 G 021536 6 005&5 G 00 G 002010 6 LSSPC LSSPCP LSSPTP LSSTA 002056 G 00 G 002024 G 00 G i, S8 i, GMe g gel LSTIML 002014 G t% % 15 ’ 01205 L10010 LSENVI LSETP LSEXP1 LSEXP4 0020%2 G 012033 uRp e L10007 012114 002116 G 002040 G 0020 022440 G 00207 LSEXPS PAGE 1202 J PRIOS = 000240 G 03734 LSOLY LSDTP LSDTYP LSOU LSOUT B G 25-MAY=82 08:41 LlOOSl L100 i LIOOS L10026 L10025 015504 015516 815540 015566 015726 LS HEE L1007 L1007 7 DO EM 07 L1010 L10104 L10105 LlOlOg L1010 L10110 MEMADD MEMCK MENASC MENERR MENRES 8239‘0 4176 441 464 59; 045774 013744 6 051229 G 0204 050364 8086 MMVEC = 250 MSA.FR= 000006 RERE MSA.: V0= NXTU 02201 o PRMESS 002§1 (014232 e 0$APTS= 088aNRS 000001 PRMSC? o 1o M Oschcus ot ot o' yp 3L oy ot 000 50000) oaved 030 ZgO“ £33 ¢ BB 0t s 000003 L10101 0‘% gs L1010§ arsar oe thte bt Sine PC Noos . 0O L10045 L10069 L10047 L10050 L10051 l.lOOSi L10053 L10054 L10055 L‘IOOS’ L1005 8 5606 6104 0275 0O g 8 0 O 030 0O 0 031314 1600 M8189 5833 NBA = 00 NEWPAS 022000 NODEV 88‘110 6 NOINIT 33} NOINTR 00421 NOITS 002166 G NOMAN 2 z 2 NOMEM NP.IR = 08 NP.LOO= mez mEC mrmm a4 <y dl 2y R oAl PAISXO Ayt gt L1 006¢ L1006 L10064 L10065 36 ; 072 525 70 NSIi NSINIT NUL NULCR PRITSS oAty B dmw .RST= B AlE lmndd 0 Salimm bg A L100 lgg 10071 t10072 36256 2 5 2 5 BoRe. NXMH 136 6 NXMLO NXMTST 136 442 6 an o 4 > L10042 9 W.Wmh 888832 o Aode % oy 0000 e : v g 3 L1 adind S.ATT= MS.EXT= 000200 01 014410 076458 oers $12¢ o 15 093375 Y e : vy 41 00000000 ) g4 oy 0000 <ygrd = 3 g dem {4 ry 0000" PU:U”.TII 023654 (023522 MSGSuB PROASC PRIASE 015095 :K‘a‘l:m: PRl oy & G302 e R 007555 a3l 7319 UOOS; L10037 023114 B33 B3¢ 005000 005000 0 aime MSGEXP MSGLOO MSGSTA 002 012134 6 013054 G 01 ;gg 6 A it PAMSCT O1are 0$BGNS= S0y Ve 000001 +d 022436 022544 0 626 022652 L10035 = PRTCeT 25¢ ¢ 3% ey fe . - 5 3 > alt PRIX B = PRIOZ PRIOS PRIOG Ak s = = e $ . . 6 ggRE G S o S o % S ot Ve b TEs & AAASC has i RAME 3 s 14 RANS 17 RAATAS b 43 RECMSG : . e Gl 2 . g ot G SEQ 0215 1ST101 IST111 TST2ID TST3ID TST4ID TSTSID T$SSRv= T$$5UB= T$$SW = TSSTES= n TiLoor 17 54 6324 5017 9 56 54 01 0101 01 0101 5 G &~ W e \Agfl 3 — 030¢ 0352 —— WWO Y (v 1 030671 0 0 0 0 0 0 34101 441 (1) o ~ R (1) S AERNA g333 3 BNV S OO0O0O0O0O0O0OO0O0O0O0O W 0 0 0 W b =2 NONN) NN N W 238 SRERUOOY NN = S OO0COONOWN=L/OONO S NNOON o NN WO W OWWwhonO =2 O SNV WG O i e i i i i ) i PR RRRRRRRRRR - < S0.I1LD= 0000 S0. ION= 00004 $0.IRD= 000100 S0. IRW= 000004 $0.15P= 000200 $1.1CE= 002000 Hisee: didond T$$S0F= 01011 (211 1) TSSR = 000002 G TSSRBI 00347? 9 TSSRFO 1 TSSRH = 36 TSSX 004014 TSTBLK 00575 G TSTCNT ;1 6 TSTEND 13 1 TSTFLA G TSTLOD 016446 6 TSTEST= 1 TSTSTN= 17777 T$TSTS= 1 T$SAU = 0100 ; T$SAUT= 0100 TSSCLE= 0100 T$SOU = 0100 ; T$SHAR= 01010 T$SHY = 01 T$SINI= 0100 T$$MSG= 0100 TSSPRO= 010027 sl G006 TST1ID 023634 e TSSUBN= 099096 TSTAGL= 177777 TSTAGN= 010111 TSTEMP= SRO = 177572 SR1 = 177574 SR = 177576 SR = 172516 SSR__ = 000200 STATCO 012402 SvCGBL= 000000 SVCINS= 000000 svCsue= 000001 SVCTAG= 000000 SVCTST= 000001 SSLSYM= 010000 S0:178= 000000 S0.1FP= 000001 TSREJ = TSSDEF 00660 01 rs T 26276 TSDB = 6 TSDBH = 000001 6 TSFCOD 007232 TSLSYM= st 045774 046024 046054 0461 006‘31 SN~ SPM1 SPM4 SPM6 SPM?7 TEXASC PP PR VIS S VS WSS guaaa Wuu&ammum NS NN VIO NON N HN -.-.ogg PSSO gw\n ~RNE o~ TSLTNO= 1 TSNEST= 17777 TSNSO = 000000 TSNS] = 05 TSNS2 = 00000 TSNS3 = 00000 TSPTNU= 000009 T$SAVL= 17777 TSSEGL= 177777 T$SEKO= 010000 012072 6 003701 003646 012024 6 002164 G 003150 6 011756 003374 015764 G 010462 6 O IO SRS 32 2 B 8 5 DRt TFCASC 0065 TIMEXP 015542 6 TIMSGO 01557 TINERR 012011 TMPBFR 002630 G TNAM 8‘1)3676 TRANST 164 G TSBA = 000000 G TSBAH = 000001 G T 026214 022076 DNO— SFFMSG SFHERR SFIERR SFIMSG SFPTBL SIFLAG SIMSG SKIPT SOFINI SPACE SETU 3222 00O 80' . S35 ~SN X3258 §SEoses 8-0)-0 o TSGMAN= 000000 TSHILI= 888‘7’56 TSLAST= 1 TSLOLI= 000000 7Y TEMP1 003112 6 TEMP2 003114 6 TERCLS= 000013 TESTNO= 00001 LI SELASC 020432 SELDAT= 000004 SEL2 = 000002 SETMAP 017306 ) 000000 e e TSEXCP= TSFLAG= 000040 173717 &» e wqqm" b e e e D e e e e d e ~rooom® e e e de * se so se ~HAVDD R 278 A mm San—n PND—4M LN NIV NS 8-0)*.1‘ >»-ND 00667 [1] TCOCOD 001130 002144 P 010650 6 TSCODE= TSERRN= 2828 SDELAY 00647 03425 035237 040271 05090 ] 8 174 G 1536 G 8‘34 G Sg 6 177562 G 177560 G 88006% G e TCOASC 005007 S2.UND= TBLEND= 003056 TST7ID TST8ID TST9ID TSV TSV TSV4 TSVS TSvé TTIBFR= TTICSR= TTIVEC= T$ARG(C= e SCME SCE___= 020000 SCHERR 005274 0307‘; — S1.1FM= 001000 S1.IHE= 000400 $1.11D= 000 S1.11R= 020000 $1.12R= 040000 S1.PAR= 100000 $2.ATI= 000010 $2.8T1= 000004 $2.0IM= 000200 S¢.ILw= 100 S2.INR= 20 $2.0uT= 0 TST6ID SEQ 0216 O0OO0O0O $1.1E0= 010000 K :d'fi" 002232 G REGSAV 020130 RETERR 005366 REWIND 011004 G RMCHBE= 000167 RMCHEN= 000200 RMM3GB= 000215 RMMSGE= 000234 RMPKTB= 000201 RMPKTE= 000210 RMR = 010000 RWPACK 011100 SC = 100000 PAGE 120-3 ) < e ] e o o ) o o ] )l o o o] o o ] ] e ] ] ] o ] ] e ] ] ] el ] ] ] e ) ) ] ] ] o ] e o ] e e ) e e ) f e = =f =g d ) D ) D e e D e e e D e e e e D e e D e e D RECV 25<MAY-R. 08:41 S TSV6 = PARAMETER CODING MACRO M1113 SYMBOL TABLE s | ISU6 ~ PARAMETER CODING WACRO W1113 | SYMBOL TABLE | TOINT T9LOOP TONBA TONINT TOPACK TOREST T9SSR TOTSBA 19.1 " 19:2 19:5 194 195 040117 UAM 035300 03776 040026 037250 040316 03773 040206 035%00 033546 035760 0316 036352 We.11T= WC.ISR= ERRORS DETECTED: 00002 WF_1ED= 000010 WF . IER= WF.INI= 000200 WF - IRE= WF_IWF= 000020 WF - IWR= 0001 WwF.I13R= 00000 WF.14R= 000007 046404 000000 = 000200 G UNITN 002300 € UNREC = 000006 Sl 00411 GAITE 016240 G WC.IFA= WC.IFE= WC.160= 000001 WC.IRE= 001 We . IRY= We.10T= 0001 196 0363 197 03701 TO3DAT 0372 TOSDON= 037376 T92RE) 03 T9SRES 037450 TO4RE) 037543 TOSREJ 037641 . ABS. 25-MAY-82 0B:41 O PAGE 120-4 WRTCHR 010452 6 XSTS XST4 000014 ¢ 0 0 16 ¢ WRTERR 00510 WRTMSG 005 USHBK 021260 G XFERAS 015 016366 XORBFO 0076 XORFOR 010006 XSTO = 000008 XST1 = 000010 ¢ XST2 = 000012 ¢ = = XS0BOT= 00000 XSOEOT= 00000 XSOIE = 000040 XSOILA= 000400 XSOILC= 001000 XSOLET= 020000 XSOMOT= 880588 XSONEF= 002 00 VIRTUAL MEMORY USS%: 28224 WRD; ( 111 PAGES) DYNAMIC MEMORY: 346 WORDS ( 78 PAGES) ELAPSED TIME: 00:34:19 CVTSAAQ,CVTSAAQ/=SP=SVC/ML,TSVIA,TSV22A,TSV3A, TSV4, TSVSA, TSVE L1 SEQ 0217 XSOONL= 000100 XSOFFS= XSTRUE= 0004 000020 XSOPED= 000010 XSORLL= 010000 XSORLS= 04000 XSOTHK= 1000 XSOVCK= XSOWLE= 004000 KSOLK= 000004 XXCOMN_ 003116 G XSALWA= 0000 XSFALS= 000040 X1.COR= 020000 X1.0LT= 1 X1.MB2= 01737 X1.RBP= 000400 X1.SPA= 0400 X1.UNC= 00000 X2.8UF= 000100 X2.EXT= 000200 X3.0PM= 100000 X X X X X X X X X X X3.RIB= 0 £00001 X3.SPA= (00200 X3.TRF= 000020 X4 HSP= 1 X4.MBZ= 017400 X4.RCE= 040000 X6TSh= 020000 X4.WRC= 37
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies