Listing of file='P71D010A' on disk='vmedia/702-0079.wvd.zip'
# Sector 579, program filename = 'P71D010A' 0010 REM . 2271.PTR-01 00-00 (5/16/77) 0280 DIM A$20,A1$31,D$49,E$49,W$61,X$62,Y$61,Z$62 : DIM B$26,C$26,B1$41,H$27,H1$1,H2$2,H5$1 : A1$="123456789-123456789-1" : GOSUB '0 0360 DEFFN'0 : RETURN CLEAR 0380 SELECT PRINT 005(64) : GOSUB 9300 : GOSUB 1580 : PRINT TAB(7);"SPECIAL FUNCTION KEYS AVAILABILITY" : PRINT TAB(10);"1 - FULL 2271 PRINTER TEST" : PRINT TAB(10);"2 - TABULATION TESTS" : PRINT TAB(10);"3 - UPPER/LOWER CASE AND"; 0440 PRINT " BACKSPACE & UNDERSCORE" : PRINT TAB(10);"4 - PRINTABLE HEX CODES "; : PRINT "AND 96 CHARACTER SET" : PRINT TAB(10);"5 - PAPER MOTION TESTS" : PRINT TAB(10);"6 - VAR. LINE LENGTH TEST" 0490 PRINT TAB(10);"7 - OPERATOR ACTION TESTS" : PRINT TAB(10);"8 - OUTPUT ONE INPUT CHARACTER OVER AND OVER" : PRINT TAB(10);"9 - OUTPUT TWO INPUT CHARACTERS OVER AND OVER" 0520 PRINT TAB(9);"16 - PRINTER SUB-TEST MENU"; : PRINT HEX(0A); : GOSUB '133 : STOP " (( PRESS RESET THEN THE S.F. KEY ))" 0600 DEFFN'1 : GOSUB '100 : GOSUB '41 : GOSUB '42 : GOSUB '43 : GOSUB '44 : GOSUB '45 : PRINT HEX(0C) : GOSUB '46 : STOP "END OF PRINTER TEST" : LOAD DC T"START" 0710 RETURN 0760 DEFFN'2 0770 GOSUB '50 : GOTO 770 0830 DEFFN'3 0840 GOSUB '60 : GOSUB '70 : GOTO 840 0910 DEFFN'4 0920 GOSUB '102 : GOSUB '101 : GOTO 920 0990 DEFFN'5 1000 GOSUB '105 : GOSUB '106 : GOSUB '107 : GOSUB '108 : GOSUB '109 : GOTO 1000 1100 DEFFN'6 1110 GOSUB '133 : GOSUB '121 : GOSUB '126 : GOTO 1110 1190 DEFFN'7 1195 GOSUB '46 : GOTO 1195 1360 DEFFN'8 : GOSUB '130 : GOSUB 1580 : PRINT HEX(0A0A) : PRINT "THE CHARACTER THAT YOU WANT REPEATED " : INPUT "OVER AND OVER IS",H1$ : GOSUB '133 1430 PRINT H1$; : GOTO 1430 1450 RETURN 1480 DEFFN'9 : GOSUB '130 : GOSUB 1580 : PRINT HEX(0A0A) : PRINT "THE TWO CHARACTERS THAT YOU WANT REPEATED " : INPUT "OVER AND OVER AGAIN ARE ",H3$ : GOSUB '133 1550 PRINT H3$; : GOTO 1550 1570 RETURN 1580 PRINT HEX(030A);TAB(20);"2271 PRINTER DIAGNOSTIC" : PRINT TAB(4); : FOR I5=1TO 56 : PRINT "*"; : NEXT I5 : PRINT : RETURN 1670 DEFFN'14 : GOSUB '133 : A$="12345678901234567890" : PRINT A$;A$;A$;A$;A$;STR(A$,1,3);" TAB REFERENCE LINE." : RETURN 1740 DEFFN'15 : COM CLEAR : LOAD DC T"START" 1770 RETURN 1820 DEFFN'16 : RETURN CLEAR 1840 GOSUB '133 : SELECT PRINT 005(64) : GOSUB 1580 : PRINT TAB(10);"SPECIAL FUNCTION KEYS AVAILABILITY" : PRINT TAB(10);"20 - UPPER/LOWER CASE CHARACTERS" : PRINT TAB(10);"21 - BACK SPACE AND UNDER SCORE" 1900 PRINT TAB(10);"22 - PRINTABLE HEX CODES " : PRINT TAB(10);"23 - 96 CHARACTER SET" : PRINT TAB(10);"24 - PITCH SELECT TEST (10 OR 12)" : PRINT TAB(10);"25 - LINE FEED TEST NO.1" : PRINT TAB(10);"26 - LINE FEED TEST NO.2" 1950 PRINT TAB(10);"27 - VERTICAL TAB TEST" : PRINT TAB(10);"28 - CARRAGE RETURN TESTS" : PRINT TAB(10);"29 - VAR.LINE LENGTH TEST" : PRINT TAB(10);"30 - SELECT/DESELECT TEST" : PRINT TAB(10);"31 - HEAD MOTION TEST"; : GOSUB '133 2010 STOP " (( PRESS RESET, THEN THE S.F. KEY ))" 2040 DEFFN'20 2050 GOSUB '60 : GOTO 2050 2090 DEFFN'21 : GOSUB '133 2110 GOSUB '70 : GOTO 2110 2150 DEFFN'22 2160 GOSUB '102 : GOTO 2160 2200 DEFFN'23 2210 GOSUB '101 : GOTO 2210 2250 DEFFN'24 2260 PRINT HEX(0A) : GOSUB 9030 : GOTO 2260 2310 DEFFN'25 2320 GOSUB '105 : GOSUB '106 : GOTO 2320 2370 DEFFN'26 2380 GOSUB '107 : GOTO 2380 2420 DEFFN'27 2430 GOSUB '108 : GOTO 2430 2470 DEFFN'28 2480 GOSUB '109 : GOTO 2480 2520 DEFFN'29 : GOSUB '121 2540 GOSUB '126 : GOTO 2540 2600 DEFFN'30 2610 GOSUB '140 : GOTO 2610 2670 DEFFN'31 : I=1 : PRINT HEX(7F000D00) : PRINT "." 2710 GOSUB '141 : I=I+1 : GOSUB '142 : I=I+1 : GOTO 2710 2800 LOAD DC T"P71D0101"0,4130 2830 DEFFN'41 : GOSUB '50 : RETURN 2900 DEFFN'42 : GOSUB '60 : GOSUB '70 : RETURN 2980 DEFFN'43 : GOSUB '102 : GOSUB '101 : RETURN 3060 DEFFN'44 : GOSUB '105 : GOSUB '106 : GOSUB '107 : GOSUB '108 : GOSUB '109 : RETURN 3170 DEFFN'45 : GOSUB '133 : GOSUB '121 : GOSUB '126 : RETURN 3260 DEFFN'46 : GOSUB '130 : PRINT HEX(0A0A) : PRINT "ENTER RETURN(EXEC) TO START"; : PRINT " OPERATOR ACTION TESTS" 3310 PRINT HEX(07) : FOR I1=1TO 500 : NEXT I1 : KEYIN J$,3380,3380 : GOTO 3310 3380 IF J$=HEX(0D)THEN 3400 : GOTO 3310 3400 GOSUB '133 : GOSUB '140 : GOSUB '130 : GOSUB 1580 : PRINT HEX(0A0A) : PRINT "ENTER RETURN(EXEC) TO EXIT OPERATOR ACTION TEST" : GOSUB '133 : I=1 3480 KEYIN J$,3500,3500 : GOTO 3510 3500 IF J$=HEX(0D)THEN 3580 3510 GOSUB '141 : I=I+1 : GOSUB '142 : I=I+1 : GOTO 3480 3580 PRINT HEX(0A) : GOSUB 9030 : RETURN 3650 DEFFN'50 : GOSUB '133 : PRINT "INITIALIZING 2271 TABULATION (HEX CODE 19)" : FOR I=1TO 80 : PRINT HEX(2019); : NEXT I : PRINT HEX(0A) 3800 PRINT "TAB TEST #1 TAB SET(HEX-1A), TAB(HEX-09) AND "; : PRINT "PRINT HIGH ORDER #'S (1)0,(2)0 " : PRINT TAB(9);HEX(1A); : PRINT TAB(20);HEX(1A); : PRINT TAB(31);HEX(1A); : PRINT TAB(42);HEX(1A); : PRINT TAB(53);HEX(1A); : PRINT TAB(64);HEX(1A); : PRINT TAB(75);HEX(1A); 3890 PRINT TAB(86);HEX(1A); : PRINT TAB(97);HEX(1A) : PRINT HEX(093109320933093409350936093709380939) : GOSUB '14 4000 PRINT HEX(0A) : PRINT "TAB TEST #2 RESET TAB'S (30) & (40)"; : PRINT " SET 3 NEW LOCATIONS 25,35 & 40" : PRINT HEX(090909190919) : PRINT TAB(24);HEX(1A); : PRINT TAB(35);HEX(1A); : PRINT TAB(46);HEX(1A) 4110 DEFFN'53 : PRINT HEX(0931093209320933093409350936093709380939) 4130 GOSUB '14 : PRINT HEX(0A) : PRINT "TAB TEST #3 CLEAR ALL TABS HEX(19) AND TEST FOR NO TABS" : GOSUB '14 : FOR I=1TO 10 : PRINT HEX(0919); : NEXT I : PRINT HEX(09); : PRINT "ERROR IF THIS LINE DOES NOT START IN COLUMN NO. ONE." : RETURN 4280 DEFFN'60 : GOSUB '61 : FOR K=1TO 2 : GOSUB '62 : GOSUB '63 : GOSUB '64 : PRINT HEX(0A) : NEXT K : RETURN 4410 DEFFN'61 : PRINT HEX(0A0A0A0A) : PRINT "UPPER & LOWER CASE CHARACTER SET",, : PRINT "REPEAT THE FOLLOWING SEQUENCE TWICE" : PRINT "ONE LINE OF (UPPER CASE), (LOWER CASE) AND "; 4460 PRINT "ALTERNATING UPPER/LOWER CASE (AaBb ETC.)" : PRINT HEX(0A) : RETURN 4530 DEFFN'62 : B$="ABCDEFGHIJKLMNOPQRSTUVWXYZ" : PRINT B$;B$;B$;B$ : RETURN 4610 DEFFN'63 : C$="abcdefghijklmnopqrstuvwxyz" : PRINT C$;C$;C$;C$ : RETURN 4690 DEFFN'64 : FOR I=1TO 2 : FOR J=1TO 26 : PRINT STR(B$,J,1);STR(C$,J,1); : NEXT J : NEXT I : PRINT : RETURN 4800 DEFFN'70 : GOSUB '71 : GOSUB '72 : GOSUB '73 : GOSUB '74 : RETURN 4930 DEFFN'71 : PRINT HEX(0A0A0A0A) : PRINT "BACK SPACE & UNDERSCORE TEST", : PRINT "PRINT UPPER AND LOWER CASE CHARACTER SET, " : PRINT TAB(32);"THEN BACK SPACE AND UNDERSCORE AS INDICATED." : PRINT HEX(0A) : RETURN 5040 DEFFN'72 : B$="ABCDEFGHIJKLMNOPQRSTUVWXYZ" : C$="abcdefghijklmnopqrstuvwxyz" : GOSUB '133 : PRINT "UPPER CASE ONLY "; : INIT(08)B1$ : GOSUB '134 : FOR J=1TO 2 : FOR I=1TO 26 : PRINT STR(B$,I,1);STR(C$,I,1); : NEXT I : NEXT J : PRINT HEX(20); : FOR I=1TO 52 5180 PRINT HEX(0808085F); : NEXT I : PRINT HEX(0D00) : RETURN 5260 DEFFN'73 : GOSUB '133 : PRINT HEX(0A) : PRINT "LOWER CASE ONLY "; : GOSUB '134 : FOR J=1TO 2 : FOR I=1TO 26 : PRINT STR(B$,I,1);STR(C$,I,1); : NEXT I : NEXT J : PRINT B1$;STR(B1$,1,11);B1$;STR(B1$,1,11); : FOR I=1TO 52 : PRINT HEX(205F) : NEXT I : PRINT HEX(0D00) : RETURN 5470 DEFFN'74 : PRINT HEX(0A) : PRINT "TITLE BLOCK ONLY "; : PRINT B$,C$; : PRINT "* UNDERLINE TEST AREA *"; : FOR I=1TO 26 : PRINT HEX(08) : NEXT I : FOR I=1TO 26 : PRINT HEX(5F) : NEXT I : PRINT C$ : PRINT HEX(0D00) : GOSUB '133 : RETURN 5660 DEFFN'100 : GOSUB '133 : PRINT HEX(7F) : PRINT HEX(0C) : SELECT PRINT 005 : PRINT HEX(03) : FOR I=1TO 2 : PRINT "2200 SYSTEM DIAGNOSTIC TESTING" : PRINT HEX(0A) : PRINT "2271 PRINTER DIAGNOSTIC TEST (P71D010A-V#1)" 5750 PRINT " ** 10 PITCH BALL ASSUMED FOR TESTING **" : PRINT HEX(0A) : PRINT HEX(0A) : GOSUB '133 : NEXT I : RETURN 5840 DEFFN'101 : PRINT HEX(0A0A) : PRINT "96 CHARACTER SET-CODES 1E TO 7E (3RD CHARACTER IS HEX(20), A SPACE CODE)" : PRINT HEX(0A) : INIT(5F)B1$ : PRINT B1$;B1$;STR(B1$,1,14) : PRINT HEX(0A) : INIT(1D)D$ : INIT(4E)E$ : FOR I=1TO 49 : ADD(STR(D$,I),01) 5950 ADD(STR(E$,I),01) : NEXT I : STR(E$,49,1)=HEX(20) : FOR I=1TO 5 : PRINT D$; : PRINT E$;"SPACE PRINTED FOR 7F" : NEXT I : INIT(5F)B1$ : PRINT B1$;B1$;STR(B1$,1,14) : GOSUB '133 : PRINT HEX(0A0A) : PRINT "- - E R R O R - - BUFFER DELETE CODE (7F) IS "; 6080 PRINT "NOT FUNCTION PROPERLY"; : PRINT " - - E R R O R - -"; : PRINT HEX(7F) : RETURN 6160 DEFFN'102 : GOSUB '133 : PRINT HEX(0C) : PRINT "PRINTABLE HEX CODE CHARACTER TEST"; : PRINT "CODE 1E THROUGH 7E)" : PRINT HEX(0A0A) : INIT(1E)H$ 6250 FOR I=1TO 97 : PRINT STR(H$,1,27); : PRINT STR(H$,1,27); : PRINT " HEX CODE "; : H5$=STR(H$,1,1) : HEXPRINT H5$; : PRINT " "; : PRINT STR(H$,1,27); : PRINT STR(H$,1,27) : ADD(H$,01) : IF STR(H$,1,1)<>HEX(7F)THEN 6390 : INIT(20)H$ 6390 IF STR(H$,1,1)=HEX(56)THEN 6420 6400 NEXT I : RETURN 6420 PRINT HEX(0C) : GOTO 6400 6480 DEFFN'105 : PRINT HEX(0C) : PRINT "SPECIAL PAPER MOTION HEX CODES "; : PRINT "- TOP OF FORM(0C),LINE FEED(0D),"; : PRINT " VERTICAL TAB(0C)" : PRINT HEX(0A) : RETURN 6590 DEFFN'106 : PRINT "LINE FEED TEST #1 - (HEX CODE 0A)" : FOR I=1TO 18 : PRINT HEX(0A0A2D) : NEXT I : PRINT HEX(0A0A) : PRINT "ACCEPTABLE RESULT IS 18 DASHES "; : PRINT "VERTICALLY SPACED DOWN THIS PAGE." : RETURN 6720 DEFFN'107 : GOSUB '113 : PRINT "LINE FEED TEST #2 - (HEX CODE 0A)" : PRINT HEX(0A2D2D2D2D2D0A) : FOR I=1TO 2 : FOR J=1TO 25 : PRINT HEX(0A) : NEXT J : PRINT HEX(2D2D2D2D2D0A) : NEXT I : PRINT "ACCEPTABLE RESULT IS 3 SETS OF 5 DASHES "; 6830 PRINT "VERTICALLY SPACED DOWN THIS PAGE." : RETURN 6890 DEFFN'108 : GOSUB '113 : PRINT "VERTICAL TAB TEST (HEX CODE-0B)" : FOR I=1TO 9 : PRINT HEX(0B);"VERTICAL TAB NO.";I : NEXT I : PRINT HEX(0B) : I=10 : PRINT "VERTICAL TAB NO. ";I;" "; : PRINT "ACCEPTABLE RESULTS ON THIS PAGE IS "; 6990 PRINT "10 EVENLY SPACED VERTICAL "; : PRINT "TABS SIX LINES APART." : RETURN 7060 DEFFN'109 : GOSUB '133 : GOSUB '113 : PRINT "CARRIAGE RETURN TEST - TESTING HEX CODE(0D), "; : PRINT "HARDWARE C/R AND LINE OVER RUN." : GOSUB '110 : GOSUB '111 : GOSUB '112 : RETURN 7170 DEFFN'110 : PRINT HEX(0A0A) : PRINT "FIVE LINES OF 50 CHARACTERS ENDING THE LINE "; : PRINT "WITH A CARRIAGE RETURN - HEX CODE (0D)." : PRINT HEX(0A) : FOR I=1TO 5 : PRINT "123456789-123456789-1232456789"; 7240 PRINT " SENT HEX CODE(0D)."; : PRINT HEX(0D) : NEXT I : RETURN 7300 DEFFN'111 : PRINT HEX(0A0A) : PRINT "PRINT 5 LINES OF 124 CHARACTERS PER LINE, "; : PRINT "UTILIZING THE HARDWARE C/R." : PRINT HEX(0A) : A$="123456789-123456789-" : FOR I=1TO 5 : PRINT A$;A$;A$;A$;A$;A$; : PRINT "1234"; : NEXT I : RETURN 7430 DEFFN'112 : PRINT HEX(0A0A) : PRINT "PRINT 5 LINES OF 150 CHARACTERS PER LINE,"; : PRINT "DEMONSTRATING HARDWARE C/R (LINE OVER RUN)." : PRINT HEX(0A) : A$="123456789-123456789-" : FOR I=1TO 5 : PRINT A$;A$;A$;A$;A$;A$; 7510 PRINT "1234" : PRINT "OVER RUN ON THE NEXT LINE." : NEXT I : RETURN 7590 DEFFN'113 : PRINT HEX(0C) : PRINT "(TOP OF FORM TEST - HEX CODE OC) MUST BE THE FIRST "; : PRINT "LINE OF PRINT AT THE TOP OF A NEW PAGE." : PRINT HEX(0A) : RETURN 7670 DEFFN'121 : PRINT HEX(0C) : PRINT "VARIABLE LINE LENGTH AND LINEARITY TEST." : PRINT HEX(0A0A0A) : RETURN 7740 DEFFN'126 : GOSUB '133 : W$="BA@?>=<;:9876543210/,.-'+*)('&%$#! ZYXWVUTSRQPONMLKJIHGFEDCBA" : X$="@ABCDEFGHIJKLMNOPQRSTUVWXYZ !#$%&'()*+'-.,/0123456789:;<=>?@AB" : GOSUB 8110 : J=61 : K=2 : L=2 7820 INIT(20)Y$ : FOR I=1TO 30 : Z$=STR(X$,1,K) : STR(Y$,J)=STR(W$,J) : FOR M=1TO 2 : PRINT Y$;STR(Z$,1,L) : NEXT M : L=L+2 : K=K+2 : J=J-2 : NEXT I : L=L-2 : K=K-2 : J=J+2 : FOR I=1TO 29 : L=L-2 : K=K-2 : J=J+2 : INIT(20)Y$ : Z$=STR(X$,1,K) : STR(Y$,J)=STR(W$,J) : FOR M=1TO 2 8040 PRINT Y$;STR(Z$,1,L) : NEXT M : NEXT I : GOSUB 8110 : RETURN 8110 FOR N=1TO 2 : FOR I=1TO 61 : PRINT " "; : NEXT I : PRINT "@" : NEXT N : RETURN 8220 DEFFN'130 : SELECT PRINT 005(64) : RETURN 8250 DEFFN'133 : ON Q GOTO 8260,8270,8280,8290 8260 SELECT PRINT 204(124) : RETURN 8270 SELECT PRINT 214(124) : RETURN 8280 SELECT PRINT 215(124) : RETURN 8290 SELECT PRINT 216(124) : RETURN 8320 DEFFN'134 : ON Q GOTO 8350,8360,8370,8380 8350 SELECT PRINT 404 : RETURN 8360 SELECT PRINT 414 : RETURN 8370 SELECT PRINT 415 : RETURN 8380 SELECT PRINT 416 : RETURN 8400 DEFFN'140 : GOSUB '133 : PRINT HEX(0A0A) : PRINT "OPERATOR ACTION & VERIFY TEST", : PRINT "(SELECT/DESELECT) "; : PRINT "(HEAD MOTION) "; : PRINT "(AUDIO ALARM)" : PRINT HEX(0A) : I=1 : GOSUB '130 : GOSUB 1580 : PRINT HEX(0A0A) 8520 PRINT "ENTER RETURN/EXEC TO EXIT SELECT/DESELECT TEST" : GOSUB '133 8540 GOSUB '143 : KEYIN J$,8570,8570 : GOTO 8540 8570 IF J$=HEX(0D)THEN 8590 : GOTO 8540 8590 PRINT HEX(0A) : I=I-1 : PRINT "THE";I;"LINES ABOVE SHOULD BE IDENTICAL, "; : PRINT "IF NOT THEN - - E R R O R - - "; : PRINT "THE PRINTER LOST DATA" : PRINT "." : RETURN 8700 DEFFN'141 : PRINT HEX(087F0D00); : PRINT "LINE NO ";I;"VERIFY THAT THE PRINT MECHANISM "; : PRINT "IS PRINTING"; : PRINT " FROM (* LEFT TO RIGHT *) AT THIS TIME." : RETURN 8800 DEFFN'142 : PRINT "LINE NO ";I;"VERIFY THAT THE PRINT MECHANISM "; : PRINT "IS PRINTING "; : PRINT "FROM (* RIGHT TO LEFT *) AT THIS TIME." : RETURN 8880 DEFFN'143 : IF I>9THEN 8920 : PRINT "LINE NO "; : GOTO 8930 8920 PRINT "LINE NO"; 8930 PRINT I;" OPERATOR MUST DESELECT AND RESELECT "; : PRINT "THE PRINTER UNDER TEST AT THIS TIME. "; : PRINT "AUDIO TONE AT THE END OF THIS LINE." : PRINT HEX(07) : I=I+1 : RETURN 9030 GOSUB '130 : GOSUB 1580 : PRINT HEX(0A0A) : PRINT "ENTER RETURN(EXEC) TO EXIT PITCH SELECT TEST" 9070 GOSUB '200 : PRINT "OPERATOR SELECT THE DESIRED PITCH - "; : PRINT "10 PITCH BALL (124 CHARACTER LINE) OR "; : PRINT "12 PITCH BALL (149 CHARACTER LINE) "; 9110 PRINT "CHARACTER 124125TH CHARACTER 149"; : PRINT "150 TH CHARACTER" : KEYIN J$,9150,9150 : GOTO 9070 9150 IF J$=HEX(0D)THEN 9170 : GOTO 9070 9170 GOSUB '133 : RETURN 9200 DEFFN'200 : ON Q GOTO 9220,9230,9240,9250 9220 SELECT PRINT 204(149) : RETURN 9230 SELECT PRINT 214(149) : RETURN 9240 SELECT PRINT 215(149) : RETURN 9250 SELECT PRINT 216(149) : RETURN 9300 GOSUB 1580 : PRINT HEX(010A0A0A0A0A);"1. 204","2. 214","3. 215","4. 216" : PRINT HEX(0C0C); : INPUT " SELECT PRINTER ADDRESS",Q : RETURN