10 : 20 : 30 : 40 REM"Program by RUSHDEN ROY 20G (Shuffle PROCedure by JOHN DAVIS) For 8-BIT SOFTWARE and PD Aug.94 50 : 60 MODE7 70 VDU23,1,0;0;0;0; 80 CLS 90 PROCROY 100 PROCdh(6,10,1,"ANAGRAMS ") 110 PROCdh(6,12,0,"(Another way to look at them.)") 120 PROCdh(6,16,0,"Word or words made by arranging in") 130 PROCdh(6,17,0,"different order the letters of") 140 PROCdh(6,18,0,"another word or words.") 150 PROCdh(2,23,0,"Please press SPACE to continue>") 160 REPEATUNTILGET=32:CLS 170 PROCdh(6,5,0,"You will be invited to type in a word") 180 PROCdh(2,1,1,"--INFORMATION-- ") 190 PROCdh(2,3,1,"Single or multi-word anagrams.") 200 PROCdh(6,6,0,"or words (best no spaces) that you ") 210 PROCdh(6,7,0,"wish to 'anagramise'. Max.28 letters.") 220 PROCdh(6,8,0,"These letters will then appear lower ") 230 PROCdh(6,9,0,"on the screen in double height. Press") 240 PROCdh(6,10,0,"space to shuffle them. With a bit of") 250 PROCdh(6,11,0,"skill and a lot of luck you may see a") 260 PROCdh(6,12,0,"word in the group that you wish to") 270 PROCdh(6,13,0,"extract, press escape and type it in.") 280 PROCdh(6,14,0,"(Max.14 letters). You then type in the") 290 PROCdh(6,15,0,"remaining letters (Max.18) and shuffle") 300 PROCdh(6,16,0,"again. Repeat until you are satisfied") 310 PROCdh(6,17,0,"with your selection of words.") 320 PROCdh(6,18,0,"After a while the screen will be full") 330 PROCdh(6,19,0,"you can then quit or start again but") 340 PROCdh(6,20,0,"make a note of your words first.") 350 PROCdh(6,22,0,"Go cold U.K.") 360 PROCdh(2,23,0,"Please press SPACE to continue>") 370 REPEATUNTILGET=32 380 CLS 390 VDU23,1,1;0;0;0; 400 A=5:B=5 420 ON ERROR GOTO 1370 430 PRINTTAB(0,0)"TYPE YOUR WORD/LETTERS THEN " 440 INPUTTAB(5,1)"?"name$ 450 name$=LEFT$(name$,28) 460 PRINTTAB(8+LEN(name$),1)"";LEN(name$) 470 PRINTTAB(0,0)SPC(38) 480 PRINTTAB(1,2);CHR$(150);STRING$(37,",") 490 A$=name$:PROCshuff:END 510 DEFPROCshuff 520 VDU23,1,0;0;0;0; 530 A$=name$ 540 REPEAT 550 PRINTTAB(5,20);CHR$(141);"";A$:PRINTTAB(5,21);CHR$(141);"";A$ 560 PROCshuffleJ_Davis 570 PROCspace:UNTILFALSE:ENDPROC 590 REM PROCshuffleJ_Davis is from a program'ALFSHUF'by JOHN DAVIS (K2F) 8-Bit Software Issue 36. 610 DEF PROCshuffleJ_Davis 620 R=RND(LEN(name$)-1)+1:B$=MID$(A$,R,1):A$=B$+LEFT$(A$,R-1)+RIGHT$(A$,LEN(name$)-R) 630 ENDPROC 650 DEFPROCspace 660 PRINTTAB(0,22)"SPACE to Shuffle. ESCAPE to type. " 670 PRINTTAB(0,23)"ESC+ZZZ to end. ESC+XXX to restart." 680 REPEAT UNTIL INKEY(-99) 690 ENDPROC 710 DEF PROCword 720 SOUND1,-3,20,2 730 VDU23,1,1;0;0;0; 740 PRINTTAB(0,3)"Type letters to be taken out." 750 PRINTTAB(1,5);CHR$(150);STRING$(37,",") 760 A=A+1 770 IF A>19 PROCscreenfull: ENDPROC 780 PRINTTAB(0,4)SPC(30) 790 INPUTTAB(2,4)"?"name$ 800 name$=LEFT$(name$,14) 810 IF name$="ZZZ"THEN PROCend:ENDPROC 820 IF name$="XXX"GOTO 380:ENDPROC 830 PRINTTAB(5,20)SPC(30):PRINTTAB(5,21)SPC(30) 840 PRINTTAB(22,A);""name$ 850 PRINTTAB(23+LEN(name$),A)"";LEN(name$) 860 PROCremain:ENDPROC 880 DEF PROCremain 890 SOUND1,-3,20,2 900 B=B+1 910 IF B>19 PROCscreenfull: ENDPROC 920 PRINTTAB(0,3)"Type letters to be shuffled. " 930 PRINTTAB(0,4)SPC(30) 940 INPUTTAB(2,4)"?"name$ 950 name$=LEFT$(name$,18) 960 IF name$="ZZZ"THEN PROCend:ENDPROC 970 IF name$="XXX" GOTO 380 980 PRINTTAB(5+LEN(name$),4)"";LEN(name$) 990 PRINTTAB(0,B)""name$ 1000 PRINTTAB(1+LEN(name$),B)"";LEN(name$) 1010 PROCshuff 1020 ENDPROC 1040 DEF PROCscreenfull 1050 VDU23,1,0;0;0;0; 1060 PRINTTAB(0,3)" Sorry the screen is full " 1070 PRINTTAB(0,4)"Press a key to restart or SPACE to end" 1080 SOUND1,-2,5,5 1090 PRINTTAB(0,22)SPC(39) 1100 PRINTTAB(0,23)SPC(39) 1110 *FX21,0 1120 IF GET$ <>" "THEN GOTO 380:ENDPROC 1130 IF GET$=" "THEN PROCend:ENDPROC 1150 DEF PROCend 1160 VDU23,1,1;0;0;0; 1170 CLS:PRINTTAB(10,8)"BYE FROM ROY":PRINTTAB(8,9)"(Ref. My or Boy)":END 1180 ENDPROC 1210 DEFPROCROY 1220 PRINT"7`+47``57k`5 ````` PROGRAM BY ````````" 1230 PRINT"5b(55( 5m h%7`+4757`k 7k`57`k 7e757`k" 1240 PRINT"uzp5upp5jpz 5( 5555js05 n15bs550!5u0`5" 1250 PRINT"ppppppppppp upp5u5upp5uzp5upp5u7t5upp5" 1260 PRINT 1270 PRINT" FOR 8-BIT SOFTWARE" 1280 PRINT""' 1290 ENDPROC 1310 DEF PROCdh(C%,L%,D%,T$) 1320 IF D% T$=CHR$(141)+T$ 1330 X%=(40-LENT$)DIV 2-1 1340 FORY%=L%TOL%+D%:PRINTTAB(X%,Y%);CHR$(128+C%);T$:NEXT 1350 ENDPROC 1370 IF ERR=17 THEN PROCword ELSE REPORT:PRINT" at line "ERL