; 7970E Nine-Track Magnetic Tape diagnostic (D433A), user interaction. ; Parameter 1 = path to diagnostic tape. ; ; Test with one 7970E, interactive tests 12 and 13. ; ; Configuration locations: ; ; Location Default Value Contents ; ------------- ------------- --------------------------------------------------- ; DB+0 047574 000000 Switch Register setting ; DB+1 047575 077414 Section Select Register setting ; DB+2 047576 000014 Version and update level ; DB+3 047577 000000 0 Magnetic tape DRT number ; DB+4 047600 000143 99 Maximum error print count ; DB+5 047601 000000 Section number ; DB+6 047602 000000 Step number ; DB+7 047603 000000 Device status echo echo echo --------------------------------------------------------- echo D433A - 7970E Nine-Track Magnetic Tape (user interaction) echo --------------------------------------------------------- echo echo Loading the stand-alone loader. ; Cold load the I/O diagnostics tape. attach -r MS0 %130000-11017_Rev-2640_IO.tape boot MS0 ; Load the tape file containing the diagnostic. ; ; The I/O tape contains these files: ; ; DIAGNOSTIC FILE REV %FILE ; ------------------- ------ ----- ---- ; SLEUTH PD411A 01.05 (01) ; CART DISC-7905A PD419A 01.04 (02) ; MEMORY PATTERN PD421A 01.00 (03) ; MULTIPLEXOR CHAN PD422A 01.02 (04) ; DISC FILE-2888A PD423A 01.00 (05) ; CART DISC-7900A PD424A 01.00 (06) ; SYSTEM CLOCK II/III PD425A 01.00 (07) ; SYS CLK/FLI III-LC PD426A 00.00 (10) ; TERMINAL DATA PD427A 01.01 (11) ; FIXED HEAD DISC PD428A 01.00 (12) ; SELECTOR CHAN PD429A 01.01 (13) ; FLT.CORR.MEM SER-II PD430A 01.01 (14) ; FLT.CORR.MEM SER-III PD430B 00.00 (15) ; EXTEND INSTRUC SET PD431A 01.00 (16) ; HSI DIAG. PD432A 01.00 (17) ; MAGNETIC TAPE PD433A 01.04 (20) ; SSLC INTERFACE PD434A 01.03 (21) ; ASLC INTERFACE PD434B 01.04 (22) ; UI DIAG PD435A 01.01 (23) ; TERMINAL CONTROL PD438A 01.00 (24) ; CALCOMP PLOTTER PD439A 01.01 (25) ; COBOLII A F/W DIAG PD441A 00.00 (26) ; COBOLII B F/W DIAG PD442A 00.00 (27) ; STAND ALONE DISC SADUTIL 01.00 (30) deposit SWCH 20 ; Set the CLK into diagnostic mode. set CLK REALTIME ; Configure the tape drive. set MS0 7970E,REEL=600 ; Load and start the diagnostic. ; ; The diagnostic loads from tape and then waits for a . echo echo Loading and executing the diagnostic. reply "\r" delay 2 seconds ; Respond to "Q010 TAPE DEVICE NUMBER? " go until "NUMBER? " ; reply "6\r" ; Respond to "Q011 TIMER DEVICE NUMBER? " go until "NUMBER? " ; reply "3\r" ; Respond to "Q012 MAXIMUM ERROR PRINT COUNT? " go until "COUNT? " ; reply "100\r" ; Respond to "P005 TYPE FOLLOWING CONTROL ; A'CR'-AUTO, R'CR'-RESTART, ; M'CR'-MANU, 'CR'-RESUME, YOUR CODE? " go until "CODE? " ; reply "M\r" ; Respond to "D015 PRESENT SECTION REGISTER:%077414 DO YOU WISH TO CHANGE?(YES/NO)" go until "NO)" ; reply "YES\r" ; Respond to "D015 UPDATE SECTION REGISTER:%" ; ; Section Select options: ; ; bit 0 = not used ; bit 1 = execute section 1 (auto - basic control) ; bit 2 = execute section 2 (auto - control, dev, status, space) ; bit 3 = execute section 3 (auto - file mark, 800 cpi only) ; bit 4 = execute section 4 (auto - CRCC, dropout) ; bit 5 = execute section 5 (auto - timing) ; bit 6 = execute section 6 (auto - BOT, EOT, creeping) ; bit 7 = execute section 7 (auto - read/write) ; bit 8 = not used ; bit 9 = not used ; bit 10 = not used ; bit 11 = execute section 11 (manual - head test) ; + bit 12 = execute section 12 (manual - start/stop) ; + bit 13 = execute section 13 (manual - reel protection) ; bit 14 = execute section 14 (manual - tape test) ; bit 15 = execute section 15 (manual - write/read) ; ; The default section select setting is 077414. go until "%%" ; reply "000014\r" ; Respond to "D015 PRESENT SECTION REGISTER:%000014 DO YOU WISH TO CHANGE?(YES/NO)" go until "NO)" ; reply "NO\r" ; Respond to "P015 MANU PROCES: UPDATE SWITCH REGISTER (CR)" go until "(CR)" ; Set the Switch Register options: ; ; + bit 0 = select the external switch register ; bit 1 = modify the Section Select Register ; bit 2 = not used ; bit 3 = not used ; bit 4 = not used ; bit 5 = not used ; bit 6 = not used ; bit 7 = output D,E-class messages to the line printer (if configured) ; bit 8 = not used ; bit 9 = suppress E-class messages ; bit 10 = suppress D-class messages ; bit 11 = loop on the current step ; + bit 12 = halt on error ; bit 13 = halt at the end of each step ; bit 14 = halt at the end of each section ; + bit 15 = halt at the end of each diagnostic pass deposit SWCH 100011 ; Magnetic Tape diagnostic section 12. set MS REALTIME reply "\r" ; Respond to "P019 ON-LINE/RESET TEST ; P026 LOAD TAPE(RING), PUSH RESET, OFF AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> attach -n MS0 SCRATCH.TAPE echo sim> set MS0 OFFLINE echo sim> go attach -n MS0 scratch.tape set MS0 OFFLINE reply "\r" ; Respond to "P027 PUSH DRIVE 0, ON-LINE AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> set MS0 ONLINE echo sim> go set MS0 ONLINE reply "\r" ; Respond to "P028 PUSH RESET, OFF AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> set MS0 OFFLINE echo sim> go set MS0 OFFLINE reply "\r" ; Respond to "P027 PUSH DRIVE 1, ON-LINE AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> detach MS0 echo sim> attach MS1 scratch.tape echo sim> go detach MS0 attach MS1 scratch.tape reply "\r" ; Respond to "P028 PUSH RESET, OFF AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> set MS1 OFFLINE echo sim> go set MS1 OFFLINE reply "\r" ; Respond to "P027 PUSH DRIVE 2, ON-LINE AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> detach MS1 echo sim> attach MS2 scratch.tape echo sim> go detach MS1 attach MS2 scratch.tape reply "\r" ; Respond to "P028 PUSH RESET, OFF AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> set MS2 OFFLINE echo sim> go set MS2 OFFLINE reply "\r" ; Respond to "P027 PUSH DRIVE 3, ON-LINE AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> detach MS2 echo sim> attach MS3 scratch.tape echo sim> go detach MS2 attach MS3 scratch.tape reply "\r" ; Respond to "P028 PUSH RESET, OFF AND TYPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> set MS3 OFFLINE echo sim> go set MS3 OFFLINE reply "\r" ; Respond to "P029 LOAD TAPE(RING), PUSH OFF,RESET, ON-LINE AND" ; P056 TYPE SELECTED DRIVE ? " go until "DRIVE ? " echo echo echo sim> detach MS3 echo sim> attach MS0 scratch.tape echo sim> set MS0 OFFLINE echo sim> go detach MS3 attach MS0 scratch.tape set MS0 OFFLINE reply "0\r" ; Respond to "P038 PUSH DRIVE 0 BUTTON & TYPE RESPONSE 'CR'" ; ; After replying, the diagnostic executes a Rewind Offline and expects the user ; to wait until the rewind is complete before pushing ONLINE. So we must ; increase the halt delay to allow the rewind to complete. Otherwise, a NOT ; READY status error occurs in step 1232. go until "'CR'" echo echo echo sim> set MS0 ONLINE echo sim> go set MS0 ONLINE reply "\r" delay 2 seconds ; Respond to "P039 CHECK LIGHT RESET, PUSH ON-LINE AND RESPOND " go until "RESPOND " echo echo echo sim> set MS0 ONLINE echo sim> go set MS0 ONLINE reply "\r" delay 2 seconds ; Respond to "P029 LOAD TAPE(RING), PUSH OFF,RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS0 OFFLINE echo sim> go set MS0 OFFLINE reply "\r" ; Respond to "P030 CHECK LIGHT WRITE-ENABLE, PUSH DRIVE 0 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS0 ONLINE echo sim> go set MS0 ONLINE reply "\r" ; Respond to "P030 CHECK LIGHT WRITE-ENABLE, PUSH DRIVE 1 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS0 echo sim> attach MS1 scratch.tape echo sim> go detach MS0 attach MS1 scratch.tape reply "\r" ; Respond to "P030 CHECK LIGHT WRITE-ENABLE, PUSH DRIVE 2 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS1 echo sim> attach MS2 scratch.tape echo sim> go detach MS1 attach MS2 scratch.tape reply "\r" ; Respond to "P030 CHECK LIGHT WRITE-ENABLE, PUSH DRIVE 3 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS2 echo sim> attach MS3 scratch.tape echo sim> go detach MS2 attach MS3 scratch.tape reply "\r" ; Respond to "P029 LOAD TAPE(RING), PUSH OFF,RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS3 echo sim> attach MS0 scratch.tape echo sim> set MS0 OFFLINE echo sim> go detach MS3 attach MS0 scratch.tape set MS0 OFFLINE reply "\r" ; Respond to "P032 PUSH DRIVE 0 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS0 ONLINE echo sim> go set MS0 ONLINE reply "\r" ; Respond to "P033 PUSH RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS0 OFFLINE echo sim> set MS0 ONLINE echo sim> go set MS0 OFFLINE set MS0 ONLINE reply "\r" ; Respond to "P032 PUSH DRIVE 1 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS0 echo sim> attach MS1 scratch.tape echo sim> go detach MS0 attach MS1 scratch.tape reply "\r" ; Respond to "P033 PUSH RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS1 OFFLINE echo sim> set MS1 ONLINE echo sim> go set MS1 OFFLINE set MS1 ONLINE reply "\r" ; Respond to "P032 PUSH DRIVE 2 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS1 echo sim> attach MS2 scratch.tape echo sim> go detach MS1 attach MS2 scratch.tape reply "\r" ; Respond to "P033 PUSH RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS2 OFFLINE echo sim> set MS2 ONLINE echo sim> go set MS2 OFFLINE set MS2 ONLINE reply "\r" ; Respond to "P032 PUSH DRIVE 3 AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS2 echo sim> attach MS3 scratch.tape echo sim> go detach MS2 attach MS3 scratch.tape reply "\r" ; Respond to "P033 PUSH RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS3 OFFLINE echo sim> set MS3 ONLINE echo sim> go set MS3 OFFLINE set MS3 ONLINE reply "\r" ; Respond to "P034 PUT TAPE(RING), PUSH OFF, RESET AND RESPOND 'CR'" go until "'CR'" echo echo echo sim> detach MS3 echo sim> attach MS0 scratch.tape echo sim> set MS0 OFFLINE echo sim> go detach MS3 attach MS0 scratch.tape set MS0 OFFLINE reply "\r" ; Respond to "P035 PUSH ON-LINE, DRIVE 0 AND TAPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS0 ONLINE echo sim> go set MS0 ONLINE reply "\r" ; Respond to "P036 PUSH RESET AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS0 OFFLINE echo sim> go set MS0 OFFLINE reply "\r" ; Respond to "P035 PUSH ON-LINE, DRIVE 1 AND TAPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS0 echo sim> attach MS1 scratch.tape echo sim> go detach MS0 attach MS1 scratch.tape reply "\r" ; Respond to "P036 PUSH RESET AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS1 OFFLINE echo sim> go set MS1 OFFLINE reply "\r" ; Respond to "P035 PUSH ON-LINE, DRIVE 2 AND TAPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS1 echo sim> attach MS2 scratch.tape echo sim> go detach MS1 attach MS2 scratch.tape reply "\r" ; Respond to "P036 PUSH RESET AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS2 OFFLINE echo sim> go set MS2 OFFLINE reply "\r" ; Respond to "P035 PUSH ON-LINE, DRIVE 3 AND TAPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS2 echo sim> attach MS3 scratch.tape echo sim> go detach MS2 attach MS3 scratch.tape reply "\r" ; Respond to "P036 PUSH RESET AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> set MS3 OFFLINE echo sim> go set MS3 OFFLINE reply "\r" ; Respond to "P037 FSR/BSR-TEST: TYPE DRIVE NUMBER AND 'CR'(EXECUTE) OR 'CR'(EXIT)" go until "'CR'(EXIT)" ; reply "0\r" ; Respond to "P029 LOAD TAPE(RING), PUSH OFF,RESET, ON-LINE AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS3 echo sim> attach MS0 scratch.tape echo sim> set MS0 OFFLINE echo sim> go detach MS3 attach MS0 scratch.tape set MS0 OFFLINE reply "\r" ; Respond to "P035 PUSH ON-LINE, DRIVE 0 AND TAPE RESPONSE 'CR' " go until "'CR' " echo echo echo sim> set MS0 ONLINE echo sim> go echo echo [This test takes a long time.] set MS0 ONLINE reply "\r" ; Magnetic Tape diagnostic section 13. ; ; Respond to "P056 TYPE SELECTED DRIVE ?" go until "DRIVE ? " ; reply "0\r" ; Respond to "P041 LOAD TAPE(RING), PUSH DRIVE 0 AND TYPE RESPONSE 'CR" go until "'CR" echo echo echo sim> attach -n MS0 scratch.tape echo sim> go attach -n MS0 scratch.tape reply "\r" ; Respond to "P042 REMOVE RING FROM REEL, PUT IT BACK AND TYPE RESPONSE 'CR'" go until "'CR'" echo echo echo sim> detach MS0 echo sim> attach -r MS0 scratch.tape echo sim> go detach MS0 attach -r MS0 scratch.tape reply "\r" ; Respond to "P043 PUT RING BACK TO REEL, LOAD IT AND TYPE 'CR'(RESPONSE)" go until "'CR'(RESPONSE)" echo echo echo sim> detach MS0 echo sim> attach MS0 scratch.tape echo sim> go detach MS0 attach MS0 scratch.tape reply "\r" ; End the of diagnostic. go until "PASS 01\r\n" ; Restore the hardware configuration. detach MS0 delete scratch.tape set CLK CALTIME set MS FASTTIME