10 REM COPYRIGHT 1994 - COMPUTE PUBLICATIONS INTL LTD - ALL RIGHTS RESERVED 20 REM WORD MASTER BY D. G. KLICH 30 POKE53281,1:POKE53280,0:OPEN15,8,15:DIMC$(500):PRINT"[147]"SPC(14)"[154]WORD MASTER" 40 A$="[129]A TOOL FOR THE":B$="CROSSWORD ADDICT":PRINTSPC(21-LEN(A$)/2)A$:PRINTSPC(20-LEN(B$)/2)B$ 50 PRINT" CHOOSE A FUNCTION:" 60 PRINT" [159]1[146] = SEARCH FOR A WORD" 70 PRINT" [159]2[146] = ADD NEW WORDS TO DATABASE" 80 PRINT" [159]3[146] = DELETE A DATABASE WORD" 90 PRINT" [159]4[146] = DISPLAY A WORD FILE" 100 GETN$:IFN$=""THEN100 110 N=VAL(N$):ONNGOTO140,320,800,720 120 GOTO100 130 REM *****WORD SEARCH ROUTINE***** 140 PRINT"[147]ENTER THE WORD TO BE SEARCHED" 150 PRINT"EXAMPLE: --L-O (HELLO)" 160 PRINT"FROM 3 TO 15 CHARACTERS" 170 PRINT"ENTER 'ZZZ' WHEN READY TO QUIT" 180 INPUTW$:IFW$="ZZZ"THENCLOSE1:GOTO50 190 IFLEN(W$)<3THEN180 200 IFLEN(W$)>15THEN180 210 L=LEN(W$):OPEN1,8,2,"0:WORDS"+STR$(L)+",S,R":INPUT#1,X$ 220 FORI=1TOL 230 IFMID$(W$,I,1)="-"THEN270 240 IFMID$(W$,I,1)=MID$(X$,I,1)THENS=1:GOTO270 250 S=0:INPUT#1,X$:IFX$="ZZZ"THEN300 260 GOTO220 270 NEXT 280 IFS=1THENPRINTX$, 290 GOTO250 300 CLOSE1:PRINT:PRINT"END OF WORD SEARCH":GOTO170 310 REM *****ADD WORDS ROUTINE***** 320 M=0:N=0:O$="" 330 PRINT"[147]ENTER THE LIST OF WORDS TO BE ADDED TO" 340 PRINT" THE DATABASES." 350 PRINT"FROM 3 TO 15 CHARACTERS" 360 PRINT"ENTER 'ZZZ' AT END OF LIST":C=1 370 INPUTX$:IFX$="ZZZ"THEN420 380 IFLEN(X$)<3THEN370 390 IFLEN(X$)>15THEN370 400 IFRIGHT$(X$,1)<"A"THEN370 410 C$(C)=STR$(LEN(X$))+X$:C=C+1:IFC<>500THEN370 420 L=C-1:IFL=1THEN470 430 IFL=0THEN50 440 FORP=1TOL-1:S$="ZZZ":S=0 450 FORI=PTOL:IFC$(I)""THENGOSUB680 530 OPEN1,8,2,"0:WORDS"+N$+",S,R":OPEN2,8,3,"0:WORK,S,W":INPUT#1,X$:O$=N$ 540 IFW$"ZZZ"THEN540 580 FORQ=1TOVAL(N$)-3:X$=X$+"Z":NEXTQ:GOTO540 590 PRINT#2,W$ 600 INPUT#1,X$:IFX$="ZZZ"THENFORQ=1TOVAL(N$)-3:X$=X$+"Z":NEXTQ 610 GOSUB680 620 PRINT" WORDS ENTERED ";L 630 PRINT" WORDS ACCEPTED ";M 640 PRINT" DUPLICATES ";L-M 650 PRINT" FILES PASSED ";N 660 PRINT"UPDATING OF FILES COMPLETED":GOTO50 670 REM*****FINISH INPUT COPY AND CLOSE***** 680 IFLEFT$(X$,3)="ZZZ"THEN700 690 PRINT#2,X$:INPUT#1,X$:IFX$<>"ZZZ"THEN690 700 PRINT#2,"ZZZ":CLOSE1:CLOSE2:PRINT#15,"S0:WORDS"+O$:PRINT#15,"R0:WORDS"+O$+"=WORK":N=N+1:RETURN 710 REM *****DUMP A WORD FILE***** 720 INPUT"[147] ENTER LENGTH OF WORDS";X:W=0 730 IFX<3THEN50 740 IFX>15THEN50 750 CLOSE1:OPEN1,8,2,"0:WORDS"+STR$(X)+",S,R":Y=X+1 760 INPUT#1,Z$:PRINTZ$;"[160]";:Y=Y+X+1:IFY>40THENPRINT:Y=X+1 770 IFZ$="ZZZ"THENCLOSE1:PRINT:PRINT"NUMBER OF WORDS ";W:GOTO50 780 W=W+1:GOTO760 790 REM *****DELETE A WORD***** 800 H=0:PRINT"[147]ENTER THE WORD TO BE DELETED":INPUTW$:IFW$="ZZZ"THEN50 810 L=LEN(W$):OPEN1,8,2,"0:WORDS"+STR$(L)+",S,R":OPEN2,8,3,"0:WORK,S,W" 820 INPUT#1,X$:IFX$="ZZZ"THEN870 830 IFW$>X$THENPRINT#2,X$:GOTO820 840 IFW$=X$THENH=1:GOTO820 850 IFH<>1THENPRINT"THE WORD ";W$;"[146] WAS NOT FOUND":CLOSE1:CLOSE2:PRINT#15,"S0:WORK":GOTO50 860 PRINT"";W$;"[146] HAS BEEN DELETED":W$="":FORQ=1TOL:W$=W$+"Z":NEXT:GOTO830 870 PRINT#2,"ZZZ":CLOSE1:CLOSE2:PRINT#15,"S0:WORDS"+STR$(L):PRINT#15,"R0:WORDS"+STR$(L)+"=WORK":GOTO50