; HP-IB 7970E Offline Diagnostic (D7970). echo echo echo -------------------------------------- echo D7970 - HP-IB 7970E Offline Diagnostic echo -------------------------------------- echo echo Configuring the simulation environment. ; Configure the diagnostic environment. set GIC CHANNEL=12 set MA CHANNEL=12,REALTIME set MA0 REEL=600 set MA1 REEL=600 set MA2 REEL=600 set MA3 REEL=600 ; Run the HP-IB 7970E diagnostic. echo echo echo Starting diagnostic sections 1-3. echo echo ":" reply "AID\r" go until "\r\n> " ; reply "LOAD D7970S13\r" ; Correct the AID bug that uses the wrong DRT format. ; ; The DEPOSITs exchange the LOAD Q+2 and LLBL 153 instructions. deposit 01.037541 033553 deposit 01.037545 041402 ; Execute diagnostic sections 1-3. go until "0 " ; reply "RUN\r" go until "7970E CHANNEL NUMBER? " ; reply "12\r" go until "7970E DEVICE NUMBER? " ; reply "0\r" go until "NUMBER OF PASSES\r\n? " ; reply "1\r" ; Respond to "MOUNT A TAPE WITH WRITE RING ON EACH UNIT TO BE TESTED." ; "SET OTHERS OFFLINE, TYPE GO." attach -N MA0 scratch.0.tape attach -N MA1 scratch.1.tape attach -N MA2 scratch.2.tape attach -N MA3 scratch.3.tape go until ">" ; reply "GO\r" ; Respond to "UNIT 0 WILL BE TESTED." ; " IF OK TYPE 0, ELSE 1? " go until "? " ; reply "0\r" ; Respond to "TO OUTPUT MESSAGES TO: LP TYPE 0, CONSOLE 1? " go until "? " ; reply "1\r" ; Exit sections 1-3. go until "\r\n>" ; reply "EXIT\r" ; Execute diagnostic sections 4-5. echo echo echo Starting diagnostic sections 4-5. echo go until "0 " ; reply "LOAD D7970S45\r" go until "?" ; reply "YES\r" go until "0 " ; reply "RUN\r" go until "7970E CHANNEL NUMBER? " ; reply "12\r" go until "7970E DEVICE NUMBER? " ; reply "0\r" go until "NUMBER OF PASSES? " ; reply "1\r" ; Respond to "MOUNT A TAPE WITH WRITE RING ON EACH UNIT TO BE TESTED." ; "SET OTHERS OFFLINE, TYPE GO." go until ">" ; reply "GO\r" ; Respond to "UNIT 0 WILL BE TESTED." ; " IF OK TYPE 0, ELSE 1? " go until "? " ; reply "0\r" ; Respond to "TO OUTPUT MESSAGES TO: LP TYPE 0, CONSOLE 1? " go until "? " ; reply "1\r" ; Exit sections 4-5. go until "\r\n>" ; reply "EXIT\r" ; Execute diagnostic sections 6 and 8. echo echo echo Starting diagnostic sections 6 and 8. echo go until "0 " ; reply "LOAD D7970S68\r" go until "?" ; reply "YES\r" go until "0 " ; reply "RUN\r" go until "7970E CHANNEL NUMBER? " ; reply "12\r" go until "7970E DEVICE NUMBER? " ; reply "0\r" ; Respond to "SECTION 6 (INTERACTIVE). ENTER: 0-EXECUTE, 1-SKIP" ; "? " go until "? " ; reply "0\r" ; Respond to "PUT A MAGNETIC TAPE WITH WRITE RING ONTO UNIT UNDER TEST" ; " AND PUSH LOAD, ON-LINE AND UNIT#0" go until ">" echo echo echo sim> attach -N MA0 scratch.0.tape echo sim> go echo attach -N MA0 scratch.0.tape echo ">" reply "GO\r" ; Respond to "RESET ANY ANOTHER TAPE UNIT CONNECTED TO THE SAME CONTROLLER" go until ">" set MA1 OFFLINE set MA2 OFFLINE set MA3 OFFLINE reply "GO\r" ; Respond to "PUSH RESET" go until ">" echo echo echo sim> set MA0 OFFLINE echo sim> go echo set MA0 OFFLINE echo ">" reply "GO\r" ; Respond to "PUSH ON-LINE" go until ">" echo echo echo sim> set MA0 ONLINE echo sim> go echo set MA0 ONLINE echo ">" reply "GO\r" ; Respond to "PUSH UNIT 1" go until ">" echo echo echo sim> detach MA0 echo sim> attach MA1 scratch.0.tape echo sim> go echo detach MA0 attach MA1 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH RESET" go until ">" echo echo echo sim> set MA1 OFFLINE echo sim> go echo set MA1 OFFLINE echo ">" reply "GO\r" ; Respond to "PUSH ON-LINE" go until ">" echo echo echo sim> set MA1 ONLINE echo sim> go echo set MA1 ONLINE echo ">" reply "GO\r" ; Respond to "PUSH UNIT 2" go until ">" echo echo echo sim> detach MA1 echo sim> attach MA2 scratch.0.tape echo sim> go echo detach MA1 attach MA2 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH RESET" go until ">" echo echo echo sim> set MA2 OFFLINE echo sim> go echo set MA2 OFFLINE echo ">" reply "GO\r" ; Respond to "PUSH ON-LINE" go until ">" echo echo echo sim> set MA2 ONLINE echo sim> go echo set MA2 ONLINE echo ">" reply "GO\r" ; Respond to "PUSH UNIT 3" go until ">" echo echo echo sim> detach MA2 echo sim> attach MA3 scratch.0.tape echo sim> go echo detach MA2 attach MA3 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH RESET" go until ">" echo echo echo sim> set MA3 OFFLINE echo sim> go echo set MA3 OFFLINE echo ">" reply "GO\r" ; Respond to "PUSH ON-LINE" go until ">" echo echo echo sim> set MA3 ONLINE echo sim> go echo set MA3 ONLINE echo ">" reply "GO\r" ; Respond to "PUSH UNIT 0,1,2, AND 3" go until ">" echo echo echo sim> detach MA3 echo sim> attach MA0 scratch.0.tape echo sim> detach MA0 echo sim> attach MA1 scratch.0.tape echo sim> detach MA1 echo sim> attach MA2 scratch.0.tape echo sim> detach MA2 echo sim> attach MA3 scratch.0.tape echo sim> go echo detach MA3 attach MA0 scratch.0.tape detach MA0 attach MA1 scratch.0.tape detach MA1 attach MA2 scratch.0.tape detach MA2 attach MA3 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH UNIT 0" go until ">" echo echo echo sim> detach MA3 echo sim> attach MA0 scratch.0.tape echo sim> go echo detach MA3 attach MA0 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH UNIT 1" go until ">" echo echo echo sim> detach MA0 echo sim> attach MA1 scratch.0.tape echo sim> go echo detach MA0 attach MA1 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH UNIT 2" go until ">" echo echo echo sim> detach MA1 echo sim> attach MA2 scratch.0.tape echo sim> go echo detach MA1 attach MA2 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PUSH UNIT 3" go until ">" echo echo echo sim> detach MA2 echo sim> attach MA3 scratch.0.tape echo sim> go echo detach MA2 attach MA3 scratch.0.tape echo ">" reply "GO\r" ; Respond to "PLEASE REMOVE WRITE RING AND REMOUNT TAPE." go until ">" echo echo echo sim> detach MA3 echo sim> attach -R MA3 scratch.0.tape echo sim> go echo detach MA3 attach -R MA3 scratch.0.tape echo ">" reply "GO\r" ; Respond to "CHECK IF RESET LIGHT IS ON! THEN:" ; ; "PUT TAPE WITH WRITE RING ONTO DRIVE, AND PUSH LOAD, ON-LINE" ; "AND UNIT 0" ; ; The diagnostic has issued a Rewind Offline command, and the tape is moving. ; Before dismounting the tape to add the write ring, we must wait for the rewind ; to complete. As the simulator has no method of doing this, we wait for a ; period of time consistent with the rewind distance to ensure that the tape has ; stopped before we dismount and remount the tape. go until ">" go for 5 seconds echo echo echo sim> detach MA3 echo sim> attach MA0 scratch.0.tape echo sim> go echo detach MA3 attach MA0 scratch.0.tape echo ">" reply "GO\r" ; Respond to "IS TESTED UNIT#0 MASTER? (Y/N)" ; "? " go until "? " ; reply "Y\r" ; Respond to "TURN-OFF THE POWER ON TAPE UNIT" go until ">" echo echo echo [Power is off] echo set MA0 OFFLINE echo ">" reply "GO\r" ; Respond to "TURN-ON THE POWER ON TAPE UNIT AND PUSH LOAD AND ON-LINE" go until ">" reset -P MA set MA0 ONLINE echo echo echo [Power is on] echo echo ">" reply "GO\r" ; Respond to "SECTION 6 (INTERACTIVE). ENTER: 0-EXECUTE, 1-SKIP" ; "? " go until "? " ; reply "1\r" ; Respond to "SECTION 7 (MAINTENANCE WRITE/READ). ENTER: 0-EXECUTE, 1-SKIP" ; "? " go until "? " ; reply "1\r" ; Respond to "SECTION 8 (TAPE MEDIA TEST). ENTER: 0-EXECUTE, 1-SKIP" ; "? " go until "? " ; reply "0\r" ; Respond to "PUT A MAGNETIC TAPE WITH WRITE RING ONTO UNIT UNDER TEST" ; " AND PUSH LOAD, ON-LINE AND UNIT#0" go until ">" ; reply "GO\r" ; Respond to "RESET ANY ANOTHER TAPE UNIT CONNECTED TO THE SAME CONTROLLER" go until ">" ; reply "GO\r" ; Respond to "TEST SECTION 8 (STEPS 801-814) IS COMPLETE" go until ">" ; reply "GO ,,1\r" ; Exit go until "10 " ; reply "EXIT\r" go until "?" ; reply "YES\r" go until "\r\n:" ; Clean up. detach MA0 delete scratch.0.tape delete scratch.1.tape delete scratch.2.tape delete scratch.3.tape