FTN4,L PROGRAM TXTT0(3,89),91711-16020 REV 1926 791112 C C CHANGED 791112. IF ILUT=0, DO NOT ATTEMPT TO WRITE C ERROR MESSAGES TO ILUT. C C C**************************************** C* TXTT0 * C* PRIMARY SYSTEM 2645/48 TERMINAL TEST * C* RELOC.: 91711-16020 * C* SOURCE: 91711-18020 * C**************************************** C C C THIS PROGRAM IS FOR TESTING KEYBOARD, DISPLAY AND CARTRIDGE C TAPE OPERATION OF DEVICES USING DRIVERS DVR05 OR DVA05. THE C PROGRAM IS INITIATED VIA THE COMMAND C C RU,TXTT0,L,T,LC/M,RC C C WHERE: L IS THE LU OF THE LOG DEVICE (DEFAULT TO 1) C T IS THE LU OF THE KEYBOARD/CRT DEVICE TO BE TESTED. C THIS INPUT IS A MUST! C LC IS THE LU OF THE LEFT CTU TO BE TESTED C THE PROGRAM WILL DEFAULT TO AUTOMATIC MODE. C M SPECIFIES MENU MODE, FOLLOWING PARAMETER C NOT REQUIRED C RC IS THE LU OF THE RIGHT CTU TO BE TESTED C C IF 'T' IS MISSING, THE PROGRAM WILL ABORT AND PRINT AN APPROPRIATE C MESSAGE ON THE LOG DEVICE. IF 'MODE' IS 'M', THE PROGRAM WILL GO C INTO MENU MODE AND ASK FOR EACH TEST TO BE RUN. DEFAULT CONDITION C FOR 'MODE' IS AUTOMATIC. IN THIS CASE TESTS WILL BE RUN ON ALL LU'S C SPECIFIED IN THE RUN STATEMENT PARAMETERS ABOVE. C C THE VARIABLES USED IN THIS PROGRAM ARE AS FOLLOWS: C C IBUFD......DATA STORED IN PROGRAM TO BE TRANSFERRED TO DISPLAY C IBUFT......DATA STORED FORM KEYBOARD INPUT TO BE CHECKED AGAINST C CONTENTS OF IBUFD C IREG.......A & B REGISTERS FOR PARAMATER RETURN OF EXEC CALLS C IA.........A REGISTER (NOT USED IN THIS PROGRAM) C IB.........B REGISTER, USED FOR INPUT CHARACTER COUNT C IQUE.......PROMPT VARIABLE FOR ABORT OR CONTINUE REQUEST C IPRAM(1)...PARAMATER PASSED FOR LOG DEVICE LU C IPRAM(2)...PARAMATER PASSED FOR KEYBOARD/DISPLAY TEST DEVICE LU C IPRAM(3)...PARAMATER PASSED FOR LEFT-CTU TEST DEVICE LU C IPRAM(4)...PARAMATER PASSED FOR RIGHT-CTU TEST DEVICE LU C IPRAM(5)...PARAMATER PASSED FOR MENU OR NON-MENU MODE C LGLU.......LOG DEVICE LU C ILUT.......LU OF TEST DEVICE KEYBOARD/DISPLAY C LGLUC......LU OF TEST DEVICE LEFT-CTU C ILURC......LU OF TEST DEVICE RIGHT-CTU C ICRTS1.....KEYBOARD/DISPLAY EQT WORD 5 C ICRTS2.....KEYBOARD/DISPLAY EQT WORD 4 C ICRTS3.....BITS 15 & 0-4 OF THIS STATUS WORD GIVES LU AVAILABILITY C AND SUB-CHANNEL RESPECTIVELY OF KEYBOARD/DISPLAY C ILCTU1.....LEFT-CTU EQT WORD 5 C ILCTU2.....LEFT-CTU EQT WORD 4 C ILCTU3.....BITS 15 & 0-4 OF THIS STATUS WORD GIVES LU AVAILABILITY C AND SUB-CHANNEL RESPECTIVELY OF LEFT-CTU C IRCTU1.....RIGHT-CTU EQT WORD 5 C IRCTU2.....RIGHT-CTU EQT WORD 4 C IRCTU3.....BITS 15 & 0-4 OF THIS STATUS WORD GIVES LU AVAILABILITY C AND SUB-CHANNEL RESPECTIVELY OF RIGHT-CTU C MLUCRT.....MASK OF ICRTS2 TO CHECK FOR GENERATED LU ASSIGNMENT C MCRTYP.....MASK OF ICTRS1 TO CHECK FOR PROPER DEVICE TYPE C MCRTAV.....MASK OF ICRTS1 TO CHECK FOR EQT AVAILABILITY C MCRTSC.....MASK OF ICRTS3 TO CHECK FOR LU AVAILABILITY AND C PROPER SUB-CHANNEL ASSIGNMENT C MLULC......MASK OF ILCTU2 TO CHECK FOR GENERATED LU ASSIGNMENT C MLCTYP.....MASK OF ILCTU1 TO CHECK FOR PROPER DEVICE TYPE C MLCAV......MASK OF ILCTU1 TO CHECK FOR EQT AVAILABILITY C MLCSC......MASK OF ILCTU3 TO CHECK FOR LU AVAILABILITY AND C PROPER SUB-CHANNEL ASSIGNMENT C MLURC......MASK OF IRCTU2 TO CHECK FOR GENERATED LU ASSIGNMENT C MRCTYP.....MASK OF IRCTU1 TO CHECK FOR PROPER DEVICE TYPE C MRCAV......MASK OF IRCTU1 TO CHECK FOR EQT AVAILABILITY C MRCSC......MASK OF IRCTU3 TO CHECK FOR LU AVAILABILITY AND C PROPER SUB-CHANNEL ASSIGNMENT C ISTAT1.....VARIABLE CONTAINING EQT WORD 5 TO CHECK FOR WRITE C PROTECT STATUS OF LEFT AND RIGHT-CTU'S C MWP........MASK OF ISTAT1 TO CHECK WRITE PROTECT STATUS C MENU.......VARIABLE TO DETERMINE IF MENU MODE (MENU=1 IN MENU MODE) C IERRK......ERROR COUNTER FOR KEYBOARD/CRT TESTS C IERRL......ERROR COUNTER FOR LEFT CTU TESTS C IERRR......ERROR COUNTER FOR RIGHT CTU TESTS C IERR.......SUM OF IERRK, IERRL AND IERRR DIMENSION IBUFD(40), IREG(2), IQUE(1), IPRAM(5), IBUFT(40) 1, IBUFC1(40), IBUFC2(1) EQUIVALENCE (REG,IREG,IA), (IREG(2),IB) DATA IBUFD/2HU*,2H3L,2HG8,2H =/ DATA IBUFC1/2HAB,2HCD,2HEF,2HGH,2HIJ,2HKL,2HMN,2HOP,2HQR,2HST, 12HUV,2HWX,2HYZ,2H01,2H23,2H45,2H67,2H89/ DATA IBUFC2/1H@/ CALL RMPAR(IPRAM) MENU=0 IERRK=0 IERRL=0 IERRR=0 C C ASSIGN LOG DEVICE LU C LGLU=IPRAM(1) IF(IPRAM(1).LE.0) LGLU=LOGLU(IPRAM(1)) C C ASSIGN KEYBOARD/CRT TEST DEVICE LU C ILUT=IPRAM(2) C C CHECK FOR VALID INPUT TO IPRAM(2) = ILUT C IF(IPRAM(2).LE.0) 5,15 5 IF(ILUT-LGLU) 6,7,6 6 WRITE(LGLU,10) C C THE FOLLOWING LINE ADDED 791112 IF(ILUT.LE.0) GO TO 9950 C 7 WRITE(ILUT,10) 10 FORMAT(/" TXTT0 - NO LU WAS SPECIFIED FOR TEST KEYBOARD/" 1"DISPLAY."/" RERUN TEST SPECIFYING AN LU# FOR TEST" 2" KEYBOARD/DISPLAY."//" TXTT0 - TERMINAL TEST ABORTED!"/) GOTO 9950 C C CHECK FOR MENU MODE C 15 IF(IPRAM(3).NE.1HM) 17,4000 C C CHOOSE TESTS AUTOMATICALLY C 17 IF((IPRAM(2).LE.0).AND.(IPRAM(3).LE.0).AND.(IPRAM(4).LE.0)) 30,20 20 IF(IPRAM(2).LE.0) 22,1000 22 IF(IPRAM(3).LE.0) 24,2000 24 IF(IPRAM(4).LE.0) 9900,3000 30 IF(ILUT-LGLU) 31,32,31 31 WRITE(LGLU,35) 32 WRITE(ILUT,35) 35 FORMAT(/,6X,"TXTT0 - NO TEST LU NUMBERS SPECIFIED"/ 1,30X,"TXTT0 ABORTED!"/) GOTO 9950 C C********************************************************************* C* SECTION 1000 - KEYBOARD/CRT TESTS C********************************************************************* C C C ASSIGN TEST DEVICE KEYBOARD/DISPLAY LU C 1000 ILUT=IPRAM(2) C C GET KEYBOARD/DISPLAY LU STATUS C 1010 CALL EXEC(13,ILUT,ICRTS1,ICRTS2,ICRTS3) C C CHECK FOR KEYBOARD/DISPLAY GENERATED LU ASSIGNMENT C MLUCRT=IAND(ICRTS2,77B) IF(MLUCRT.EQ.0) 8000,1100 C C CHECK FOR KEYBOARD/DISPLAY DEVICE TYPE C 1100 MCRTYP=IAND(ICRTS1,37400B) IF(MCRTYP.NE.2400B) 8100,1110 C C CHECK FOR KEYBOARD/DISPLAY EQT AVAILABILITY C 1110 MCRTAV=IAND(ICRTS1,140000B) IF(MCRTAV.NE.0) 8200,1120 C C CHECK FOR KEYBOARD/DISPLAY PROPER SUB-CHANNEL ASSIGNMENT C 1120 MCRTSC=IAND(ICRTS3,17B) IF(MCRTSC.NE.0) 8400,1130 C C CHECK FOR KEYBOARD/DISPLAY LU AVAILABILITY C 1130 MCRTSC=IAND(ICRTS3,100000B) IF(MCRTSC.NE.0) 8200,1200 1200 IF(ILUT-LGLU) 1205,1207,1205 1205 WRITE(LGLU,1210) ILUT 1207 WRITE(ILUT,1210) ILUT 1210 FORMAT(/" TXTT0 - LU#",I3,": TERMINAL TEST RUNNING") C C KEYBOARD/DISPLAY DATA TRANSFER TEST WITH ECHO C IF(ILUT-LGLU) 1215,1217,1215 1215 WRITE(LGLU,1220) ILUT 1217 WRITE(ILUT,1220) ILUT 1220 FORMAT(/" TXTT0 - LU#",I3,":"/ 1" TYPE THE FOLLOWING CHARACTERS, THEN PRESS THE RETURN" 2" KEY."/" THE CHARACTERS SHOULD ECHO ON THE TEST DISPLAY" 3" AS THEY ARE TYPED."/" U*3LG8 ="/" _") REG=EXEC(1,ILUT+400B,IBUFT,4) C C VERIFY TRANSFERRED DATA C DO 1230 I=1,IB IF(IBUFD(I).EQ.IBUFT(I)) GOTO 1230 GOTO 8300 1230 CONTINUE C C DISPLAY LINE SPACING TEST C IF(ILUT-LGLU) 1255,1257,1255 1255 WRITE(LGLU,1260) ILUT 1257 WRITE(ILUT,1260) ILUT 1260 FORMAT(/" TXTT0 - LU#",I3,":"/ 1" THERE SHOULD BE 5 LINES OF SPACE BETWEEN THIS" 2" LINE...") CALL EXEC(3,ILUT+1100B,5) IF(ILUT-LGLU) 1263,1267,1263 1263 WRITE(LGLU,1270) 1267 WRITE(ILUT,1270) 1270 FORMAT(" ...AND THIS LINE.") IF(ILUT-LGLU) 1275,1280,1275 1275 WRITE(LGLU,1290) ILUT 1280 WRITE(ILUT,1290) ILUT 1290 FORMAT(/" TXTT0 - LU#",I3,": KEYBOARD DISPLAY TEST FINISHED") C C DYNAMIC STATUS REQUEST TO FORCE TERMINATION OF PRECEEDING C OPERATION BEFORE MAKING LU/EQT AVAILABILTY CHECK ON NEXT TEST C CALL EXEC(3,ILUT+600B) IF(MENU-1) 22,4015,4015 C C********************************************************************* C* SECTION 2000 - LEFT CTU TESTS C********************************************************************* C C C ASSIGN TEST DEVICE LEFT-CTU LU C 2000 LGLUC=IPRAM(3) C C GET LEFT-CTU LU STATUS C 2010 CALL EXEC(13,LGLUC,ILCTU1,ILCTU2,ILCTU3) C C CHECK FOR LEFT-CTU GENERATED LU ASSIGNMENT C MLULC=IAND(ILCTU2,77B) IF(MLULC.LE.0) 8005,2100 C C CHECK FOR LEFT-CTU DEVICE TYPE C 2100 MLCTYP=IAND(ILCTU1,37400B) IF(MLCTYP.NE.2400B) 8110,2120 C C CHECK FOR LEFT-CTU EQT AVAILABILITY C 2120 MLCAV=IAND(ILCTU1,140000B) IF(MLCAV.NE.0) 8200,2130 C C CHECK FOR LEFT-CTU PROPER SUB-CHANNEL C 2130 MLCSC=IAND(ILCTU3,17B) IF(MLCSC.NE.1) 8410,2140 C C CHECK FOR LEFT-CTU LU AVAILABILITY C 2140 MLCSC=IAND(ILCTU3,100000B) IF(MLCSC.NE.0) 8200,2200 C C LEFT CTU TESTS FOR DATA TRANSFER AND CONTROL C 2200 IF(ILUT-LGLU) 2205,2207,2205 2205 WRITE(LGLU,2210) LGLUC 2207 WRITE(ILUT,2210) LGLUC 2210 FORMAT(/" TXTT0 - LU#",I3,":"/ 1" INSERT 'SCRATCH' CARTRIDGE WITH RECORD TAB SET TO" 2" RECORD"/" INTO LEFT CTU SLOT. TYPE /C" 3" TO CONTINUE WITH"/" CTU TEST OR TYPE /A TO ABORT" 4" THIS TEST: _") CALL EXEC(1,ILUT+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 2300 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 2200 2300 CALL EXEC(2,LGLUC,IBUFC1,-36) CALL EXEC(3,LGLUC+100B) CALL EXEC(2,LGLUC,IBUFC2,-1) CALL EXEC(3,LGLUC+100B) CALL EXEC(3,LGLUC+400B) CALL EXEC(3,LGLUC+1300B) CALL EXEC(1,LGLUC,IBUFT,-1) IF(IBUFC2(1).NE.IBUFT(1)) GOTO 8500 DO 2310 I=1,2 CALL EXEC(3,LGLUC+1400B) 2310 CONTINUE REG=EXEC(1,LGLUC,IBUFT,-36) DO 2320 I=1,IB IF(IBUFC1(I).EQ.IBUFT(I)) GOTO 2320 GOTO 8500 2320 CONTINUE CALL EXEC(3,LGLUC+2700B,2) CALL EXEC(1,LGLUC,IBUFT,-1) IF(IBUFC2(1).NE.IBUFT(1)) GOTO 8500 C C TEST TO CHECK LEFT CTU FOR WRITE PROTECT STATUS C 2400 IF(ILUT-LGLU) 2405,2407,2405 2405 WRITE(LGLU,2410) LGLUC 2407 WRITE(ILUT,2410) LGLUC 2410 FORMAT(/" TXTT0 - LU#",I3,":"/ 1" REMOVE CARTRIDGE FROM LEFT CTU AND SET RECORD" 2/" TAB TO PROTECT. RE-INSERT CARTRIDGE" 3" AND TYPE /C TO"/" CONTINUE NEXT TEST OR TYPE /A" 4" TO ABORT THIS TEST: _") CALL EXEC(1,ILUT+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 2415 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 2400 2415 CALL EXEC(3,LGLUC+2700B,1) CALL EXEC(1,LGLUC,IBUFT,-36) CALL EXEC(13,LGLUC,ISTAT1) MWP=IAND(ISTAT1,4B) IF(MWP-4B) 8700,2420,8700 2420 CALL EXEC(3,LGLUC+500B) IF(ILUT-LGLU) 2425,2430,2425 2425 WRITE(LGLU,2440) LGLUC 2430 WRITE(ILUT,2440) LGLUC 2440 FORMAT(/" TXTT0 - LU#",I3,": LEFT CTU TEST FINISHED"/) C C DYNAMIC STATUS REQUEST TO FORCE TERMINATION OF PRECEEDING C OPERATION BEFORE MAKING LU/EQT AVAILABILITY CHECK ON NEXT TEST C CALL EXEC(3,LGLUC+600B) IF(MENU-1) 24,4015,4015 C C********************************************************************* C* SECTION 3000 - RIGHT CTU TESTS C********************************************************************* C C C ASSIGN TEST DEVICE RIGHT-CTU LU C 3000 ILURC=IPRAM(4) C C GET RIGHT-CTU LU STATUS C 3010 CALL EXEC(13,ILURC,IRCTU1,IRCTU2,IRCTU3) C C CHECK FOR RIGHT-CTU GENERATED LU ASSIGNMENT C MLURC=IAND(IRCTU2,77B) IF(MLURC.LE.0) 8010,3100 C C CHECK FOR RIGHT-CTU PROPER DEVICE TYPE C 3100 MRCTYP=IAND(IRCTU1,37400B) IF(MRCTYP.NE.2400B) 8120,3120 C C CHECK FOR RIGHT-CTU EQT AVAILABILITY C 3120 MRCAV=IAND(IRCTU1,140000B) IF(MRCAV.NE.0) 8200,3130 C C CHECK FOR RIGHT-CTU PROPER SUB-CHANNEL C 3130 MRCSC=IAND(IRCTU3,17B) IF(MRCSC.NE.2) 8420,3140 C C CHECK FOR RIGHT-CTU LU AVAILABILITY C 3140 MRCSC=IAND(IRCTU3,100000B) IF(MRCSC.NE.0) 8200,3200 C C RIGHT CTU TESTS FOR DATA TRANSFER AND CONTROL C 3200 IF(ILUT-LGLU)3205,3207,3205 3205 WRITE(LGLU,3210) ILURC 3207 WRITE(ILUT,3210) ILURC 3210 FORMAT(/" TXTT0 - LU#",I3,":"/ 1" INSERT 'SCRATCH' CARTRIDGE WITH RECORD TAB SET TO" 2" RECORD"/" INTO RIGHT CTU SLOT. TYPE /C" 3" TO CONTINUE WITH"/" CTU TEST OR TYPE /A TO ABORT" 4" THIS TEST: _") CALL EXEC(1,ILUT+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 3300 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 3200 3300 CALL EXEC(2,ILURC,IBUFC2,-1) CALL EXEC(3,ILURC+100B) CALL EXEC(2,ILURC,IBUFC1,-36) CALL EXEC(3,ILURC+100B) CALL EXEC(3,ILURC+2700B,2) REG=EXEC(1,ILURC,IBUFT,-36) DO 3330 I=1,IB IF(IBUFC1(I).EQ.IBUFT(I)) GOTO 3330 GOTO 8600 3330 CONTINUE CALL EXEC(3,ILURC+500B) CALL EXEC(1,ILURC,IBUFT,-1) IF(IBUFT(1).NE.IBUFC2(1)) GOTO 8600 CALL EXEC(3,ILURC+1300B) REG=EXEC(1,ILURC,IBUFT,-36) DO 3340 I=1,IB IF(IBUFC1(I).EQ.IBUFT(I)) GOTO 3340 GOTO 8600 3340 CONTINUE CALL EXEC(3,ILURC+1400B) CALL EXEC(3,ILURC+1400B) CALL EXEC(1,ILURC,IBUFT,-1) IF(IBUFC2(1).NE.IBUFT(1)) GOTO 8600 C C TEST TO CHECK RIGHT CTU FOR WRITE PROTECT STATUS C 3500 IF(ILUT-LGLU) 3505,3507,3505 3505 WRITE(LGLU,3510) ILURC 3507 WRITE(ILUT,3510) ILURC 3510 FORMAT(/" TXTT0 - LU#",I3,":"/ 1" REMOVE CARTRIDGE FROM RIGHT CTU AND SET RECORD" 2/" TAB TO PROTECT. RE-INSERT CARTRIDGE" 3" AND TYPE /C TO"/" CONTINUE NEXT TEST OR TYPE /A" 4" TO ABORT THIS TEST: _") CALL EXEC(1,ILUT+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 3515 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 3500 3515 CALL EXEC(3,ILURC+2700B,1) CALL EXEC(1,ILURC,IBUFT,-1) CALL EXEC(13,ILURC,ISTAT1) MWP=IAND(ISTAT1,4B) IF(MWP-4B) 8800,3600,8800 3600 CALL EXEC(3,ILURC+400B) 3700 IF(ILUT-LGLU) 3705,3710,3705 3705 WRITE(LGLU,3720) ILURC 3710 WRITE(ILUT,3720) ILURC 3720 FORMAT(/" TXTT0 - LU#",I3,": RIGHT CTU TEST FINISHED"/) IF(MENU-1) 9900,4015,4015 C C********************************************************************* C* SECTION 4000 - MENU C********************************************************************* C 4000 IF(ILUT-LGLU) 4001,4002,4001 4001 WRITE(LGLU,4010) 4002 WRITE(ILUT,4010) 4010 FORMAT(//" TXTT0: TERMINAL TEST RUNNING"/) MENU=1 4015 IF(ILUT-LGLU) 4013,4014,4013 4013 WRITE(LGLU,4016) 4014 WRITE(ILUT,4016) 4016 FORMAT(/" TXTT0: TERMINAL TEST MENU"// 1,4X," THE FOLLOWING TERMINAL TESTS CAN BE SELECTED BY" 2" ENTERING THE"/" CORRESPONDING TEST CODES:"// 3" TEST TEST CODE"/ 4" ---- ---------"/ 5" 1) KEYBOARD/DISPLAY TEST /K"/ 6" 2) LEFT CTU TEST /L"/ 7" 3) RIGHT CTU TEST /R"/ 8" 4) END TEST /E"/) 4018 IF(ILUT-LGLU) 4017,4019,4017 4017 WRITE(LGLU,4020) 4019 WRITE(ILUT,4020) 4020 FORMAT(/" TXTT0: ENTER THE CODE FOR THE TERMINAL TEST" 1" THAT YOU WISH TO RUN: _") CALL EXEC(1,401B,IQUE,1) IF(IQUE.EQ.2H/K) GOTO 4100 IF(IQUE.EQ.2H/L) GOTO 4200 IF(IQUE.EQ.2H/R) GOTO 4300 IF(IQUE.EQ.2H/E) GOTO 9900 GOTO 4018 4100 IF(ILUT-LGLU) 4101,4102,4101 4101 WRITE(LGLU,4110) 4102 WRITE(ILUT,4110) 4110 FORMAT(/" TXTT0 - TERMINAL KEYBOARD/CRT TEST"/) C C DYNAMIC STATUS TO TERMINATE OPERATION OF DEVICE BEFORE LU/EQT C AVAILABILITY CHECK C CALL EXEC(3,ILUT+600B) GOTO 1010 4200 IF(ILUT-LGLU) 4201,4202,4201 4201 WRITE(LGLU,4210) 4202 WRITE(ILUT,4210) 4210 FORMAT(/" TXTT0: LEFT CTU TEST"/ 1" TXTT0: WHAT IS THE LEFT CTU LU#? _") READ(ILUT,*) LGLUC GOTO 2010 4300 IF(ILUT-LGLU) 4301,4302,4301 4301 WRITE(LGLU,4310) 4302 WRITE(ILUT,4310) 4310 FORMAT(/" TXTT0: RIGHT CTU TEST"/ 1" TXTT0: WHAT IS THE RIGHT CTU LU#? _") READ(ILUT,*) ILURC GOTO 3010 C C********************************************************************* C* SECTION 8000 - ERROR MESSAGES C********************************************************************* C 8000 IF(ILUT-LGLU) 8001,8003,8001 8001 WRITE(LGLU,8002) ILUT 8003 WRITE(ILUT,8002) ILUT 8002 FORMAT(/" TXTT0 - LU#",I3,": NOT ASSIGNED, NOT TESTED!"/) GOTO 9950 8005 IF(ILUT-LGLU) 8004,8006,8004 8004 WRITE(LGLU,8007) LGLUC 8006 WRITE(ILUT,8007) LGLUC 8007 FORMAT(/" TXTT0 - LU#",I3,": NOT ASSIGNED, NOT TESTED!"/) GOTO 9950 8010 IF(ILUT-LGLU) 8011,8012,8011 8011 WRITE(LGLU,8015) ILURC 8012 WRITE(ILUT,8015) ILURC 8015 FORMAT(/" TXTT0 - LU#",I3,": NOT ASSIGNED, NOT TESTED!"/) GOTO 9950 8020 IF(ILUT-LGLU) 8021,8022,8021 8021 WRITE(LGLU,8025) 8022 WRITE(ILUT,8025) 8025 FORMAT(/" TXTT0 - LU# SPECIFIED FOR KEYBOARD/DISPLAY" 1" IS ILLEGAL."/" RERUN TEST SPECIFYING AN INTEGER" 2" >0 AND <64 FOR LU#.") GOTO 9000 8030 IF(ILUT-LGLU) 8031,8032,8031 8031 WRITE(LGLU,8035) 8032 WRITE(ILUT,8035) 8035 FORMAT(/" TXTT0 - LU# SPECIFIED FOR LEFT CTU IS ILLEGAL."/ 1" RERUN TEST SPECIFYING AN INTEGER >0 AND <64 FOR LU#.") GOTO 9000 8040 IF(ILUT-LGLU) 8041,8042,8041 8041 WRITE(LGLU,8045) 8042 WRITE(ILUT,8045) 8045 FORMAT(/" TXTT0 - LU# SPECIFIED FOR RIGHT CTU IS ILLEGAL."/ 1" RERUN TEST SPECIFYING AN INTEGER >0 AND <64 FOR LU#.") GOTO 9000 8100 IF(ILUT-LGLU) 8101,8102,8101 8101 WRITE(LGLU,8105) ILUT 8102 WRITE(ILUT,8105) ILUT 8105 FORMAT(/" TXTT0 - LU#",I3," SPECIFIED FOR KEYBOARD/DISPLAY" 1" IS NOT ASSIGNED TO"/" 2645/2648 TERMINAL. RERUN TEST" 2" SPECIFYING CORRECT LU#.") GOTO 9000 8110 IF(ILUT-LGLU) 8111,8112,8111 8111 WRITE(LGLU,8115) LGLUC 8112 WRITE(ILUT,8115) LGLUC 8115 FORMAT(/" TXTT0 - LU#",I3," SPECIFIED FOR LEFT CTU" 1" IS NOT ASSIGNED TO"/" 2645/2648 TERMINAL. RERUN TEST" 2" SPECIFYING CORRECT LU#.") GOTO 9000 8120 IF(ILUT-LGLU) 8121,8122,8121 8121 WRITE(LGLU,8125) ILURC 8122 WRITE(ILUT,8125) ILURC 8125 FORMAT(/" TXTT0 - LU#",I3," SPECIFIED FOR RIGHT CTU" 1" IS NOT ASSIGNED"/" TO 2645/2648 TERMINAL. RERUN TEST" 2" SPECIFYING CORRECT LU#.") GOTO 9000 8200 IF(ILUT-LGLU) 8201,8202,8201 8201 WRITE(LGLU,8210) ILUT 8202 WRITE(ILUT,8210) ILUT 8210 FORMAT(/" TXTT0 - LU#",I3,": EQT OR LU FOR TEST TERMINAL" 1" IS DOWN."/" UP EQT AND RERUN TEST.") GOTO 9000 C C DATA ENTRY OR TRANSMISSION ERROR C 8300 IF(ILUT-LGLU) 8301,8302,8301 8301 WRITE(LGLU,8310) ILUT 8302 WRITE(ILUT,8310) ILUT 8310 FORMAT(" TXTT0 - LU#",I3,": DATA ENTRY OR TRANSMISSION ERROR."/ 1" TYPE /C TO CONTINUE NEXT TEST OR TYPE /A TO ABORT" 2" THIS TEST: _") IERRK=IERRK+1 CALL EXEC(1,ILUT+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 8320 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 8300 8320 IF(MENU-1) 22,4015,4015 8400 IF(ILUT-LGLU) 8401,8402,8401 8401 WRITE(LGLU,8405) ILUT 8402 WRITE(ILUT,8405) ILUT 8405 FORMAT(/" TXTT0 - LU#",I3," SPECIFIED FOR KEYBOARD/DISPLAY NOT" 1" ASSIGNED TO SUBCHANNEL 0."/" RERUN TEST SPECIFYING" 2" CORRECT LU#.") GOTO 9000 8410 IF(ILUT-LGLU) 8411,8412,8411 8411 WRITE(LGLU,8415) LGLUC 8412 WRITE(ILUT,8415) LGLUC 8415 FORMAT(/" TXTT0 - LU#",I3," SPECIFIED FOR LEFT CTU NOT ASSIGNED" 1" TO SUBCHANNEL 1."/" RERUN TEST SPECIFYING CORRECT" 2" LU#.") GOTO 9000 8420 IF(ILUT-LGLU) 8421,8422,8421 8421 WRITE(LGLU,8425) ILURC 8422 WRITE(ILUT,8425) ILURC 8425 FORMAT(/" TXTT0 - LU#",I3," SPECIFIED FOR RIGHT CTU NOT ASSIGNED" 1" TO SUBCHANNEL 2."/" RERUN TEST SPECIFYING CORRECT" 2" LU#.") GOTO 9000 8500 IF(ILUT-LGLU) 8505,8506,8505 C C REQUEST FOR ABORT OR CONTINUE C 8505 WRITE(LGLU,8510) LGLUC 8506 WRITE(ILUT,8510) LGLUC 8510 FORMAT(/" TXTT0 - LU#",I3,": LEFT CTU READ/WRITE/CONTROL TEST" 1" FAILED!"/" TYPE /C TO CONTINUE NEXT TEST OR TYPE" 2" /A TO"/" ABORT THIS TEST: _") IERRL=IERRL+1 CALL EXEC(1,LGLU+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 8520 IF(IQUE.EQ.2H/A) GOTO 9000 8520 IF(MENU-1) 24,4015,4015 8600 IF(ILUT-LGLU) 8605,8606,8605 C C REQUEST FOR ABORT OR CONTINUE C 8605 WRITE(LGLU,8610) ILURC 8606 WRITE(ILUT,8610) ILURC 8610 FORMAT(/" TXTT0 - LU#",I3,": RIGHT CTU READ/WRITE/CONTROL TEST" 1" FAILED!"/" TYPE /C TO CONTINUE NEXT TEST OR TYPE" 2" /A TO"/" ABORT THIS TEST: _") IERRR=IERRR+1 CALL EXEC(1,LGLU+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 8620 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 8600 8620 IF(MENU-1) 9900,4015,4015 8700 IF(LGLU-ILUT) 8705,8706,8705 C C REQUEST FOR ABORT OR CONTINUE C 8705 WRITE(LGLU,8710) LGLUC 8706 WRITE(ILUT,8710) LGLUC 8710 FORMAT(/" TXTT0 - LU#",I3,": LEFT CTU WRITE PROTECT TEST FAILED" 1"!"/,8X," TYPE /C TO CONTINUE NEXT TEST OR TYPE /A TO ABORT" 2/" THIS TEST: _") IERRL=IERRL+1 CALL EXEC(1,LGLU+400B,IQUE,1) IF(IQUE.EQ.2H/C) GOTO 8720 IF(IQUE.EQ.2H/A) GOTO 9000 GOTO 8700 8720 IF(MENU-1) 24,4015,4015 8800 IF(ILUT-LGLU) 8805,8806,8805 8805 WRITE(LGLU,8810) ILURC 8806 WRITE(ILUT,8810) ILURC 8810 FORMAT(/" TXTT0 - LU#",I3,": RIGHT CTU WRITE PROTECT TEST" 1" FAILED!") IERRR=IERRR+1 IF(MENU-1) 9900,4015,4015 C C********************************************************************* C* SECTION 9000 - ABORT MESSAGE AND TERMINATE C********************************************************************* C 9000 IF(ILUT-LGLU)9005,9010,9005 9005 WRITE(LGLU,9015) ILUT 9010 WRITE(ILUT,9015) ILUT 9015 FORMAT(/" TXTT0 - LU#",I3,": TERMINAL TEST ABORTED!"/) GOTO 9950 9900 IERR=IERRK+IERRL+IERRR IF(ILUT-LGLU) 9910,9912,9910 9910 WRITE(LGLU,9920) ILUT,IERR 9912 WRITE(ILUT,9920) ILUT,IERR 9920 FORMAT(/" TXTT0 - LU#",I3,": TERMINAL TESTS FINISHED" 1" ",I2," ERRORS"/) 9950 END END$