10 REM SIMPLE, KEY-ENTRY TYPING DRILL, BY MR. WILLIAM K. CHAR, 20 REM EDP RESOURCE CENTER, 400 MANSELL, SAN FRANCISCO, CA 94121, 30 REM SEPTEMBER 15, 1974. 40 REM 45 IF ERROR THEN 910 50 DIM A$[72],B$[72],C$[72] 60 DEF FNR(X)=INT(X*RND(0))+1 70 C$="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" 80 REM 90 IF TIM(1)>11 THEN 120 100 PRINT "GOOD MORNING, "; 110 GOTO 160 120 IF TIM(1)>15 THEN 150 130 PRINT "GOOD AFTERNOON, "; 140 GOTO 160 150 PRINT "GOOD EVENING, "; 160 PRINT "NEED THE INSTRUCTIONS"; 170 INPUT A$ 180 IF A$[1,1]="N" THEN 290 190 PRINT 200 PRINT " ''VERIFY'' WILL DRILL YOU ON KEY-ENTERING DATA." 210 PRINT "THERE ARE TWO MODES OF OPERATION:" 220 PRINT 230 PRINT " 1. YOU TYPE ANY TEXT, THEN ATTEMPT TO COPY IT; OR" 240 PRINT 250 PRINT " 2. THE COMPUTER TYPES A TEXT, THEN YOU ATTEMPT TO COPY" 260 PRINT "IT." 270 PRINT 280 PRINT " TO EXIT THE PROGRAM, TYPE 'STOP.'" 290 PRINT 300 PRINT "WHICH MODE OF OPERATION WOULD YOU LIKE (1 OR 2)"; 310 INPUT N 320 N=INT(N) 330 IF N<1 OR N>2 THEN 300 340 L=0 350 REM ===== PRODUCE TEXT ===== 360 PRINT 370 PRINT 380 GOTO N OF 400,510 390 REM (MANUALLY-SUPPLIED TEXT) 400 IF L THEN 430 410 PRINT "TYPE SOME SORT OF" 420 L=1 430 PRINT "TEXT: "; 440 ENTER 255,T,B$ 450 PRINT 460 IF T<0 THEN 910 470 IF LEN(B$)=0 THEN 410 480 IF B$="STOP" THEN 910 490 GOTO 630 500 REM (COMPUTER-SUPPLIED RANDOM LETTERS) 510 K=FNR(3)+2 520 B$="" 530 FOR I=1 TO 50 540 IF I-INT(I/K)*K THEN 580 550 IF I=50 THEN 610 560 B$[I,I]=" " 570 GOTO 600 580 J=FNR(36) 585 IF J=15 THEN 580 590 B$[I,I]=C$[J,J] 600 NEXT I 610 PRINT "TEXT: "B$ 620 REM ===== INPUT COPY AND COMPARE ===== 630 PRINT "COPY: "; 640 ENTER 255,T,A$ 650 PRINT 660 IF T<0 THEN 910 670 IF A$="STOP" THEN 910 680 L1=LEN(A$) 690 L2=LEN(B$) 700 IF A$=B$ THEN 880 710 PRINT "ERRS: "; 720 FOR I=1 TO L2 730 IF I>L1 THEN 860 740 IF A$[I,I]=B$[I,I] THEN 820 750 PRINT "^"; 760 J=I+1 770 IF J>L1 THEN 860 780 FOR J=J TO L2 790 IF A$[J,J]=B$[J,J] THEN 840 800 NEXT J 810 GOTO 860 820 PRINT " "; 830 IF A$[I]=B$[I] THEN 870 840 NEXT I 850 IF L1 <= L2 THEN 870 860 PRINT "^--->"; 870 PRINT 880 PRINT "TIME: "; 890 PRINT USING "3D";T 900 GOTO 360 910 CHAIN R,"*HELP" 920 SYSTEM X,"BYE" 930 END