Listing of file='P71D010P' on disk='vmedia/702-0079.wvd.zip'
# Sector 687, program filename = 'P71D010P' 0010 REM . 2271.PTR-01 00-00 (5/16/77) 0260 DIM A$20,A1$31,W$18,F$5,G$5,B$26,C1$26,B1$41,A3$1,Y$18 : DIM H1$1,R$10,R1$10,R2$10,A$(2)47,M$30,N$35,O$30,P$30,J$2,C$3,D1$35,K$1,H 2$2 : W$=HEX(093109320933093409350936093709380939) 0290 E1$="LINE FEED TEST" : F1$="OPERATOR ACTION " : G1$="SELECT" : M$="ACCEPTABLE RESULT IS " : Y$="UPPER & LOWER CASE " 0310 N$="VERTICALLY SPACED DOWN THIS PAGE " : P$="2271-P PRINTER DIAGNOSTIC" : O$="DEPRESS - RETURN(EXEC) " : X$="CHARACTER SET" : INIT(0A)C$,J$,K$ : GOSUB '65 : GOSUB 8000 : GOSUB 1980 0370 PRINT TAB(19);"STATIC PRINTER CONDITIONS " : PRINT K$ : PRINT TAB(22);"POWER MUST BE ON" : PRINT K$ : PRINT TAB(19);G1$;" LAMP MUST BE ON" : PRINT K$ : PRINT TAB(18);"WIDE PAPER IN THE PRINTER" : PRINT K$ 0450 PRINT TAB(14);"ADJUST TOP OF FORM TO LINE NO. 1" : PRINT K$ : PRINT TAB(21);"ADDRESS SET TO ";Q$ : PRINT K$ : PRINT TAB(3);O$;" TO START ";P$ 0480 KEYIN H1$,490,490 : GOTO 480 0490 IF H1$=HEX(0D)THEN 510 : GOTO 480 0510 GOSUB '0 0530 DEFFN'0 0540 DEFFN'31 : RETURN CLEAR : GOSUB 1970 : PRINT TAB(4);"* MASTER MENU *" : GOSUB 2000 : PRINT TAB(17);D1$ : PRINT K$ : PRINT TAB(5);"1 - CONFIDENCE TEST";TAB(33);"6 - PAPER MOTION TESTS" 0590 PRINT TAB(5);"2 - COMPLETE PRINTER TEST";TAB(33);"7 - FORM FILLING COMMAN DS " : PRINT TAB(5);"3 - TABULATION TEST";TAB(33);"8 - REPETITIVE CHAR OUTPUT" 0610 PRINT TAB(5);"4 - ";Y$;TAB(33);"9 - OPERATOR ACTION TESTS" : PRINT TAB(5);"5 - ";X$;" TEST";TAB(32);"16 - PRINTER SUB MENU " : PRINT K$ : STOP " ( PRESS DESIRED S.F. KEY )" 0680 DEFFN'16 : RETURN CLEAR : GOSUB 1970 : PRINT TAB(4);"* PRINTER SUB TEST MENU *" : GOSUB 2000 : PRINT TAB(15);D1$ : PRINT K$ : PRINT TAB(5);"10 - ";Y$;TAB(33);"14 - CARRIAGE RETURN TEST" 0730 PRINT TAB(5);"11 - BACKSPACE/UNDERSCORE";TAB(33);"15 - MANUAL KEYS TEST" : PRINT TAB(5);"12 - LINE FEED TEST";TAB(33);"16 - BALL SOLENOID TEST" 0750 PRINT TAB(5);"13 - VERTICAL TAB TEST";TAB(33);"31 - RETURN TO MASTER MENU " : PRINT K$;" STOP ( PRESS THE DESIRED S.F.KEY )" 0770 KEYIN H1$,790,790 : GOTO 770 : STOP " ( PRESS DESIRED S.F. KEY )" 0790 IF H1$<HEX(0A)THEN 770 : ON VAL(H1$)GOTO 770,770,770,770,770,770,770,770,770,830,850,870,890,910,9 40,950,770,770,770,770,770,770,770,770,770,770,770,770,770,770,970 : GOTO 770 0830 GOSUB '60(Y$) : GOTO 2840 0850 GOSUB '60("BACKSPACE & UNDERSCORE") : GOTO 3190 0870 GOSUB '60("LINE FEED") : GOTO 4220 0890 GOSUB '60("VERTICAL TAB") : I=5 : GOTO 4350 0910 GOSUB '60("CARRIAGE RETURN") : GOTO 4460 0940 GOSUB '46 : GOTO 940 0950 GOSUB '60("BALL SOLENOID") 0960 GOSUB '47 : GOTO 960 0970 GOSUB '0 1010 DEFFN'1 : GOSUB '60("CONFIDENCE") : H1$=HEX(01) : GOSUB '32 : GOSUB '95 : GOSUB '42 : PRINT J$;"BALL SOLENOID & LINE BUFFERING TEST";K$ : INIT(3F)C1$ : K$=HEX(34) : GOSUB 7810 : I=1 : K$=HEX(0A) : GOSUB 4350 : PRINT HEX(E5) : GOSUB 5530 : GOSUB '31 1170 DEFFN'2 : GOSUB '60("COMPLETE PRINTER") : PRINT HEX(E80000) : GOSUB 7850 : GOSUB '32 : GOSUB '33 : GOSUB '42 : I=5 : GOSUB '37 : GOSUB '36 : GOSUB '47 : GOSUB '35 : STOP "END OF PRINTER TEST" : RETURN 1330 DEFFN'3 : GOSUB '60("TABULATION") : GOSUB 7850 1350 GOSUB '32 : GOTO 1350 1410 DEFFN'4 : GOSUB '60(Y$) : GOSUB 7850 1430 GOSUB '33 : GOTO 1430 1490 DEFFN'5 : GOSUB '60(X$) : GOSUB 7850 1510 GOSUB '42 : GOTO 1510 1570 DEFFN'9 : GOSUB 7850 1590 GOSUB '35 : GOTO 1590 1650 DEFFN'7 : GOSUB '60("FORM FILLING COMMAND") : GOSUB 7850 1670 GOSUB '50 : GOSUB '36 : GOTO 1670 1740 DEFFN'8 : GOSUB 7850 : GOTO 1880 1810 DEFFN'6 : GOSUB '60("PAPER MOTION") : GOSUB 7850 : GOSUB '50 1840 GOSUB '37 : GOTO 1840 1880 GOSUB 1970 : PRINT J$ : PRINT TAB(8);"ENTER UP TO 2 CHARACTER/S THAT YOU WANT REPEATED " : INPUT " OVER AND OVER AGAIN ARE ",H3$ : GOSUB '50 1920 PRINT H3$; : GOTO 1920 1970 GOSUB '65 1980 PRINT J$ : PRINT HEX(030A);TAB(20);P$ 2000 PRINT TAB(4); : FOR I5=1TO 56 : PRINT "*"; : NEXT I5 : PRINT : RETURN 2080 DEFFN'85 : GOSUB '50 : A$="12345678901234567890" : PRINT A$;A$;A$;A$;A$;" TAB REFERENCE LINE." : RETURN 2150 DEFFN'15 : COM CLEAR : LOAD DC T"START" 2180 RETURN 2260 DEFFN'32 : GOSUB '50 : PRINT "INITIALIZING 2271-P TABULATION (HEX CODE 19)" : FOR I=1TO 151 : PRINT HEX(2019); : NEXT I : PRINT K$ 2410 PRINT "TAB TEST #1 TAB SET(HEX-1A), TAB(HEX-09) AND "; : PRINT "PRINT HIGH ORDER #'S (1)0,(2)0,(3)0......(9)0" : FOR I=9TO 109STEP 11 : PRINT TAB(I);HEX(1A); : NEXT I : PRINT : PRINT W$ : GOSUB '85 : IF H1$=HEX(01)THEN 2700 2560 PRINT K$ : PRINT "TAB TEST #2 CLEAR TAB'S (30) & (40)"; : PRINT " SET 3 NEW LOCATIONS 25,35 & 45" : PRINT HEX(090909190919) : PRINT TAB(24);HEX(1A); : PRINT TAB(35);HEX(1A); : PRINT TAB(46);HEX(1A) 2670 PRINT HEX(0931093209320933093409350936093709380939) : GOSUB '85 : PRINT K$ 2700 PRINT "TAB TEST #3 CLEAR ALL TABS HEX(19) AND TEST FOR NO TABS" : GOSUB '85 : FOR I=1TO 10 : PRINT HEX(0919); : NEXT I : PRINT : PRINT "ERROR IF THIS LINE DOES NOT START IN COLUMN NO. 1 " : RETURN 2830 DEFFN'33 2840 GOSUB '50 : PRINT C$ : PRINT Y$;" ";X$ : PRINT "ONE LINE OF (UPPER CASE), (LOWER CASE) AND "; : PRINT "ALTERNATING ";Y$;" (AaBb ETC.)" : PRINT K$ 2930 B$="ABCDEFGHIJKLMNOPQRSTUVWXYZ" : PRINT B$;B$;B$;B$ 2990 C1$="abcdefghijklmnopqrstuvwxyz" : PRINT C1$;C1$;C1$;C1$ 3050 FOR I=1TO 2 : FOR J=1TO 26 : PRINT STR(B$,J,1);STR(C1$,J,1); : NEXT J : NEXT I : PRINT : IF VAL(H1$)=10THEN 2840 3190 DEFFN'95 : PRINT C$ : GOSUB '50 : PRINT "BACK SPACE & UNDERSCORE TEST", : PRINT "PRINT ";Y$;" ";X$ : PRINT TAB(32);"THEN BACK SPACE AND UNDERSCORE AS INDICATED." : PRINT K$ 3280 INIT(08)B1$ : B$="ABCDEFGHIJKLMNOPQRSTUVWXYZ" : C1$="abcdefghijklmnopqrstuvwxyz" : IF H1$=HEX(01)THEN 3680 : GOSUB '75 : PRINT "UPPER CASE ONLY " : INIT(08)B1$ : FOR J=1TO 2 : FOR I=1TO 26 : PRINT STR(B$,I,1);STR(C1$,I,1) : NEXT I : NEXT J : PRINT HEX(20) 3410 FOR I=1TO 52 : PRINT HEX(0808085F) : NEXT I : PRINT HEX(0D00) 3490 GOSUB '75 : PRINT K$ : PRINT "LOWER CASE ONLY " : FOR J=1TO 2 : FOR I=1TO 26 : PRINT STR(B$,I,1);STR(C1$,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) : GOTO 3680 3680 PRINT K$ : GOSUB '75 : PRINT "TITLE BLOCK ONLY " : PRINT B$,C1$; : PRINT "* UNDERLINE TEST AREA *" : FOR I=1TO 26 : PRINT HEX(08) : NEXT I : FOR I=1TO 26 : PRINT HEX(5F) : NEXT I : PRINT C1$ : PRINT HEX(0D00) : IF VAL(H1$)=11THEN 3190 : RETURN 3880 DEFFN'42 : PRINT K$ : GOSUB '50 : PRINT TAB(27);"86 ";X$;"-CODES 1E TO 7A (3RD CHARACTER IS HEX(20)SPACE CO DE)";J$ : A3$=HEX(1E) : B=0 : FOR I=1TO 93 : IF I<>48THEN 3960 : B=0 3960 B=B+1 : STR(A$(INT(I/48)+1),B)=A3$ : ADD(A3$,01) : NEXT I : FOR J=1TO 5 : GOSUB '50 : PRINT TAB(15);A$(1);A$(2) : IF J=1THEN 4070 4040 NEXT J : IF VAL(H1$)=13THEN 3880 : RETURN 4070 IF H1$<>HEX(01)THEN 4040 : J=5 : GOTO 4040 4120 DEFFN'37 : PRINT HEX(0C) : PRINT "SPECIAL PAPER MOTION HEX CODES "; : PRINT "- TOP OF FORM(0C),LINE FEED(0D),"; : PRINT " VERTICAL TAB(0C)" : PRINT K$ 4220 DEFFN'43 : GOSUB '50 : PRINT K$ : PRINT E1$;" #1 - HEX CODE (0A)" : FOR I=1TO 7 : PRINT HEX(0A0A2D) : NEXT I : PRINT J$ : PRINT M$;" 7 DASHES ";N$ : IF VAL(H1$)=12THEN 4220 4350 GOSUB '70 : PRINT "VERTICAL TAB TEST (HEX CODE-0B)" : FOR I=1TO 9 : PRINT HEX(0B);"VERTICAL TAB NO.";I : NEXT I : PRINT M$;I;" EVENLY SPACED VERTICAL "; : PRINT "TABS SIX LINES APART." : IF VAL(H1$)=13THEN 4350 : I=1 4460 GOSUB '50 : GOSUB '70 4480 PRINT "CARRIAGE RETURN TEST - TESTING HEX CODE(0D), "; : PRINT "HARDWARE C/R AND LINE OVER RUN." 4520 PRINT J$ : PRINT "1-5 LINES OF 82 CHARACTERS ENDING THE LINE "; : PRINT "WITH A CARRIAGE RETURN - HEX CODE (0D)." : PRINT K$ : GOSUB 4890 : FOR I=1TO 5 : PRINT A$;STR(A$,1,9); 4580 PRINT " PROGRAM SENT HEX CODE (0D) AT THE END OF THIS LINE."; : PRINT HEX(0D) : IF H1$=HEX(01)THEN 4640 4610 NEXT I : IF H1$=HEX(01)THEN 4750 : GOTO 4660 4640 I=5 : GOTO 4610 4660 PRINT J$ : PRINT "PRINT 5 LINES OF 126 CHARACTERS PER LINE, "; : PRINT "UTILIZING THE HARDWARE C/R." : PRINT K$ : FOR I=1TO 5 : PRINT A$;A$;A$;A$;A$;A$; : PRINT "123456"; : NEXT I : GOTO 4760 4750 I=1 4760 PRINT J$ : PRINT "PRINT ";I;" LINE/S OF 152 CHARACTERS PER LINE,"; : PRINT "DEMONSTRATING HARDWARE C/R (LINE OVER RUN)." : PRINT K$ : A$="123456789-123456789-" : FOR I=1TO 5 : PRINT A$;A$;A$;A$;A$;A$; : PRINT "123456"; 4840 PRINT "OVER RUN ON THE NEXT LINE." : IF H1$=HEX(01)THEN 4990 4860 NEXT I : IF VAL(H1$)=14THEN 4480 : RETURN 4890 A$="123456789-123456789-" : RETURN 4930 DEFFN'70 : 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 K$ : RETURN 4990 I=5 : GOTO 4860 5070 DEFFN'36 : PRINT HEX(0C) : PRINT HEX(E5) : PRINT J$ : PRINT TAB(20);"THIS IS THE FORM FILLING AND PLOT COMMAND CODE TEST SECTIO N" : PRINT J$ : PRINT "TEST #1 CHECK FOR HORIZONTAL MOVEMENT & OVERPRINTING" : PRINT K$ : PRINT HEX(E5); : PRINT "1"; 5150 F$=HEX(E7016C0000) : PRINT F$;"HOME" : PRINT HEX(E4); : G$=HEX(E7FE9C0000) : PRINT G$; : PRINT HEX(E5); : PRINT F$;"HOME" : PRINT 5230 PRINT " 'HOME' SHOULD BE OVERPRINTED, AND 6 INCHES FROM THE '1' TESTING INCREMENTAL SPACING AND HORIZONTAL MOVEMENT CODE (E7)" : PRINT : PRINT HEX(E5) 5300 PRINT C$ : PRINT "TEST #2" : PRINT "PRINTS '1','3' & '6' VERTICALLY DOWN THE CENTER OF THE PAGE" : PRINT "THERE SHOULD BE 3 INCHES BETWEEN THE TOP OF EACH NUMBER" : PRINT J$ : PRINT HEX(E70165003CE4);"1" 5420 PRINT HEX(E70000016BE4);"6" : PRINT HEX(E70000FF4A);"3" 5520 PRINT HEX(E700000080E5) 5530 PRINT "TEST #3 MOVE COMMAND (E7) AND SET HOME (E4)" : PRINT "PRINTS INTERSECTING DIAGONAL LINES, THEY SHOULD INTERSECT AT EXACT LY 1'' FROM THE START OF ANY CORNER" 5550 PRINT "THE WORD 'HOME' SHOULD BE OVER PRINTED AND APPEAR EXACTLY AT THE I NTERSECT" : PRINT HEX(E700CF00B5E4) : J=1 : K=1 : GOSUB 6250 : PRINT HEX(E700550000) : J=-1 : K=1 : GOSUB 6250 : PRINT HEX(E70022FFD9E4);"HOME" : PRINT HEX(E700DD0270) 5720 PRINT HEX(E700000000);"HOME" : PRINT HEX(E5) : PRINT HEX(E700000050) : PRINT HEX(E5) : PRINT "TEST #4" : PRINT "TESTING SET LEFT MARGIN CODE (E8) & LINE SPACING (E9)" 5780 PRINT "THE LINE THRU THE MIDDLE OF THE '$' SHOULD BE 7 INCHES FROM THE LE FT REFERENCE LINE & LINE SPACING SHOULD BE 3 LINES PER INCH" : PRINT K$ : PRINT HEX(E5); : FOR I=1TO 20 : PLOT 5<,-1,"."> : NEXT I 5840 X=230 : Y=23 : Z=500 : PRINT HEX(E80190E91400) : PRINT HEX(E700000000) : FOR I=1TO 5 : PRINTUSING 5920,X;Y;Z : X=X+2 : Y=Y-.5 : Z=Z+X-Y : NEXT I 5920 %$#,###.## $##.## $####.## 5930 PRINT HEX(E80000E90A00); : IF H1$=HEX(01)THEN 6310 : PRINT HEX(E80000E90A00); : PRINT J$ : PRINT HEX(E5) : INIT(5F)F$ : T=6 : L=10 : PRINT "TEST #5 TESTS THE LINES FEED SPACING " : PRINT "3 COLUMNS OF LINES PRINTING AS FOLLOWS" 6080 PRINT "COLUMN #1 SHOULD BE 13 LINES PER INCH, COLUMN #2 7 LINES PER INCH & COLUMN #3 5 LINES PER INCH" : PRINT K$ : PRINT HEX(E5) : PRINT HEX(E700000020E4) : GOSUB 6300 : PRINT HEX(E700000000E90500) : T=0 : L=20 : GOSUB 6300 6180 PRINT HEX(E700000000E90F00) : T=12 : L=7 : GOSUB 6300 : PRINT HEX(E5E90A00) : GOTO 6340 6250 SELECT PLOT 415 : FOR I=1TO 17 : PLOT 5<J,K,"."> : NEXT I : RETURN 6300 FOR I=1TO L : PRINT TAB(T);F$ : NEXT I 6310 RETURN 6340 PRINT C$ : SELECT PLOT 415 : PRINT HEX(7F) : PRINT J$;"TEST #6" : PRINT "THIS IS A TEST OF THE INCREMENTAL SPACING USING THE PLOT COMMAND" : PRINT K$ : PRINT HEX(E5) : PRINT HEX(E8003CE4) : PLOT 23<,-2,"."> : PLOT 90<2,,"."> : PLOT 23<,2,"."> : PLOT 90<-2,,"."> 6500 FOR I=1TO 3 : PLOT 30<2,,> : PLOT 6<,-2,"."> : PLOT 6<,2,> : NEXT I : FOR I=1TO 2 : PRINT HEX(E700390000E4); : PRINT HEX(E70000001F);I; : NEXT I : PRINT HEX(E7FFA7002C);"THIS IS A 3 INCH RULER" : PRINT HEX(E5); : RETURN 6660 DEFFN'65 : SELECT PRINT 005(64) : RETURN 6690 DEFFN'50 : ON Q GOTO 6691,6692,6693,6694 6691 SELECT PRINT 204(126) : RETURN 6692 SELECT PRINT 213(126) : RETURN 6693 SELECT PRINT 214(126) : RETURN 6694 SELECT PRINT 215(126) : RETURN 6760 DEFFN'75 : ON Q GOTO 6761,6762,6763,6764 6761 SELECT PRINT 404 : RETURN 6762 SELECT PRINT 413 : RETURN 6763 SELECT PRINT 414 : RETURN 6764 SELECT PRINT 415 : RETURN 6790 PRINT HEX(0C) 6800 DEFFN'55 : ON Q GOTO 6801,6802,6803,6804 6801 SELECT PRINT 204(151) : RETURN 6802 SELECT PRINT 213(151) : RETURN 6803 SELECT PRINT 214(151) : RETURN 6804 SELECT PRINT 215(151) : RETURN 6840 DEFFN'60(B$) : GOSUB '65 : PRINT HEX(030A0A0A0A) : PRINT TAB(10);"* * * * * * * * * * * * * * * * * * * * * * * *" : PRINT TAB(10);"* *" 6880 PRINT TAB(10);"*";TAB(35-INT(LEN(B$)/2));B$;TAB(56);"*" : PRINT TAB(10);"* *" : PRINT TAB(10);"* TEST IN PROGRESS *" 6910 PRINT TAB(10);"* *" : PRINT TAB(10);"* * * * * * * * * * * * * * * * * * * * * * * *" : PRINT K$ : PRINT TAB(10);"KEY HALT/STEP & SFK 31 TO RETURN TO MAIN MENU" 6950 GOSUB '50 : RETURN 6990 DEFFN'35 : GOSUB 1970 : PRINT J$ : PRINT TAB(5);O$;" TO START "; : PRINT F1$;" TESTS" : FOR I=1TO 50 : SELECT P1 : GOSUB '50 : PRINT HEX(07) 7040 KEYIN H1$,7050,7050 : GOTO 6990 7050 SELECT P : IF H1$=HEX(0D)THEN 7070 : GOTO 7040 7070 PRINT J$ : PRINT HEX(E5) : PRINT F1$;" & VERIFY TEST", : PRINT "(";G1$;"/DE";G1$;")"; : PRINT "(HEAD MOTION) (AUDIO ALARM)" : PRINT K$ : I=1 : GOSUB 1970 : PRINT K$ : PRINT TAB(5);O$;"TO EXIT ";G1$;"/DE";G1$;" TEST" 7140 GOSUB '50 : IF I=9THEN 7220 7150 PRINT "LINE NO ";I;" OPERATOR MUST DE";G1$;" AND RE";G1$; : PRINT " THE PRINTER UNDER TEST, AUDIO TONE AT END OF THIS LINE" : PRINT HEX(07) : I=I+1 : KEYIN H1$,7200,7200 : GOTO 7140 7200 IF H1$=HEX(0D)THEN 7220 : GOTO 7150 7220 PRINT K$ : I=I-1 : PRINT "THE ";I;" LINES ABOVE SHOULD BE IDENTICAL, "; : PRINT "IF NOT THEN - - ERROR - - THE PRINTER LOST DATA" : GOSUB 1970 : PRINT J$ : PRINT TAB(5);O$;" TO EXIT HEAD MOTION TEST" : GOSUB '50 : I=1 7280 L$="(*LEFT TO RIGHT*" : KEYIN H1$,7300,7300 : GOTO 7310 7300 IF H1$=HEX(0D)THEN 7360 7310 PRINT HEX(087FE5); : GOSUB 7340 : L$="(*RIGHT TO LEFT*" : GOSUB 7340 : GOTO 7280 7340 PRINT "LINE NO ";I;" VERIFY THAT THE PRINT MECHANISM IS PRINTING FROM ";L $;" ) AT THIS TIME" : I=I+1 : RETURN 7360 PRINT K$ : GOSUB 1970 : PRINT J$ : PRINT TAB(10);O$;" TO EXIT PITCH ";G1$;" TEST" 7380 GOSUB 8500 7390 PRINT "OPERATOR SELECT THE DESIRED PITCH - "; : PRINT "10 PITCH BALL (126 CHARACTER LINE) OR "; : PRINT "12 PITCH BALL (151 CHARACTER LINE) "; : PRINT "CHARACTER 126127TH CHARACTER 151"; 7430 PRINT "152ND CHARACTER" : KEYIN H1$,7450,7450 : GOTO 7390 7450 IF H1$=HEX(0D)THEN 7470 : GOTO 7380 7470 DEFFN'46 : GOSUB '50 : PRINT C$ : PRINT HEX(E5E7003C003CE4);"*" : GOSUB '65 : PRINT HEX(03) : PRINT TAB(9);" ****OPERATOR ACTION REQUIRED****" : PRINT K$ : PRINT TAB(13);"PERFORM THE FOLLOWING FUNCTIONS" : PRINT K$ : PRINT " 1. DESELECT THE PRINTER" 7530 PRINT " 2. PRESS PUSH FOR UPPER OPER/SET HOME KEYS CONCURRENTLY" : PRINT " 3. RELEASE PUSH UPPER KEY THEN PRESS DIRECTIONAL KEY/S" 7550 PRINT " 4. RELEASE DIRECTION KEY THEN PRESS PUSH UPPER CASE/HOME" : PRINT " CONCURRENTLY" : PRINT " 5. THEN RE/SELECT THE PRINTER AND KEY RETURN/EXEC" 7580 KEYIN H1$,7590,7590 : GOTO 7580 7590 IF H1$=HEX(0D)THEN 7610 : GOTO 7580 7610 GOSUB '50 : PRINT HEX(E700000000);"*" : PRINT K$ : PRINT " THERE IS AN ERROR IN THE MECHANICAL KEY TESTED IF THE '*' DID NOT OVERPRINT ITSELF" : RETURN 7680 DEFFN'47 : GOSUB '50 : PRINT C$;J$ : PRINT HEX(0D) : PRINT " BALL SOLENOID & LINE BUFFERING TEST" : PRINT " CHECK CHARACTERS FOR PRINT QUALITY & CONSISTENCY" : PRINT K$ : FOR I=1TO 3 : ON I-1GOTO 7750,7770 : INIT(55)C1$ : K$=HEX(62) : GOTO 7780 7750 INIT(2A)C1$ : K$=HEX(2C) : GOTO 7780 7770 INIT(3F)C1$ : K$=HEX(34) 7780 GOSUB 7810 : PRINT J$ : NEXT I : K$=HEX(0A) : RETURN 7810 FOR J=2TO 26STEP 2 : STR(C1$,J,1)=K$ : NEXT J : PRINT C1$;C1$;C1$;C1$;STR(C1$,1,22) : RETURN 7850 H1$=HEX(00) : RETURN 8000 GOSUB 1980 : PRINT HEX(010A0A0A0A);"1. 204","2. 213","3. 214","4. 215" : PRINT HEX(0C0C); : INPUT "SELECT PRINTER ADDRESS ",Q 8010 ON Q GOTO 8020,8030,8040,8050 8020 Q$="204" : RETURN 8030 Q$="213" : RETURN 8040 Q$="214" : RETURN 8050 Q$="215" : RETURN 8500 ON Q GOTO 8510,8520,8530,8540 8510 SELECT PRINT 204(168) : RETURN 8520 SELECT PRINT 213(168) : RETURN 8530 SELECT PRINT 214(168) : RETURN 8540 SELECT PRINT 215(168) : RETURN