home *** CD-ROM | disk | FTP | other *** search
- 10 POKE53272,21:POKE783,PEEK(783)AND254
- 20 POKE53280,3:POKE53281,1:PRINTCHR$(156):POKE53272,21
- 30 PRINTCHR$(147):POKE781,5:POKE782,12:SYS65520:PRINT"CRYPTOGRAM HELPER"
- 40 POKE781,8:POKE782,19:SYS65520:PRINT"BY"
- 50 POKE781,11:POKE782,14:SYS65520:PRINT"RUSS GEPHART"
- 60 POKE781,19:POKE782,6:SYS65520:PRINT"TRANSLATED BY DONNA K. WOODY"
- 70 POKE781,23:POKE782,7:SYS65520:PRINT"PRESS SPACE BAR TO CONTINUE";:
- 80 POKE198,0:WAIT198,1:GETA$
- 90 PRINTCHR$(147):PRINT"DO YOU NEED INSTRUCTIONS (Y/N)?[160]";:
- 100 POKE198,0:WAIT198,1:GETA$
- 110 IFA$="Y"THENGOSUB6500:GOTO1010
- 120 IFA$="N"THEN1010
- 130 GOTO90
- 1000 REM CRYPTOGRAM PROGRAM BY RUSS GEPHART
- 1010 DIMSC(26),ST(26)
- 1020 PRINTCHR$(147):X=0
- 1025 V=22:SP$=" "
- 1030 PRINTCHR$(156):PRINT:PRINT"ENTER ENCRYPTED LINE (CR) TO END"
- 1040 INPUTA$(X)
- 1050 IFA$(X)=""THEN1070
- 1060 X=X+1:IFX<>7THEN1030
- 1070 PRINTCHR$(147):PRINTCHR$(156)
- 1080 FORZ=0TOX-1
- 1090 POKE781,Z*3+2:POKE782,1:SYS65520:PRINTA$(Z)
- 1100 NEXTZ
- 1110 POKE781,24:POKE782,24:SYS65520:PRINT"* FOR SUBMENU";
- 1113 POKE781,V:POKE782,0:SYS65520
- 1115 PRINTCHR$(144);:PRINT"SUBSTITUTE ? WITH ?[157][157][157][157][157][157][157][157]";:POKE198,0:WAIT198,1:GETB$
- 1120 IFASC(B$)=42THEN2000:REM *
- 1130 IFASC(B$)=13THEN1195:REM C/R
- 1140 PRINTB$;SPC(6):POKE198,0:WAIT198,1:GETC$
- 1150 IFASC(C$)=42THEN2000:REM *
- 1160 IFASC(C$)=13THEN1195:REM C/R
- 1170 PRINTC$
- 1180 GOSUB1230:REM SEARCH & SUB
- 1195 GOSUB1220
- 1200 GOTO1110
- 1210 REM CLEAR BOTTOM LINES
- 1220 POKE781,V:POKE782,0:SYS65520:PRINTSP$:PRINTSP$:PRINTSP$;:RETURN
- 1230 REM SEARCH & REPLACE
- 1240 FORZ=0TOX-1
- 1250 FORZZ=1TOLEN(A$(Z))
- 1260 IFMID$(A$(Z),ZZ,1)=B$THENGOSUB1300
- 1270 NEXTZZ
- 1280 NEXTZ
- 1290 RETURN
- 1300 POKE781,Z*3+1:POKE782,ZZ:SYS65520
- 1310 IFC$=" "THENPRINTC$:RETURN
- 1320 PRINTCHR$(159);C$;CHR$(144):RETURN
- 1999 :
- 2000 REM ESCAPE ROUTINES
- 2001 :
- 2010 GOSUB1210
- 2020 POKE781,V:POKE782,0:SYS65520:PRINT"*=CLEAR E=EDIT F=LETTER FREQUENCY"
- 2030 PRINT"S=SAVE L=LOAD R=RESTART"
- 2035 PRINT"H=HELP X=EXIT";:POKE198,0:WAIT198,1:GETA$
- 2040 IFASC(A$)=42THEN2500
- 2050 IFA$="E"THEN3000
- 2060 IFA$="F"THEN3500
- 2070 IFA$="S"THEN4000
- 2080 IFA$="L"THEN4500
- 2090 IFA$="R"THEN5000
- 2095 IFA$="H"THENGOSUB6500:GOTO1080
- 2100 IFA$="X"THEN5500
- 2110 GOTO1195
- 2499 :
- 2500 REM CLEAR SCREEN ROUTINE
- 2501 :
- 2505 PRINTCHR$(19)
- 2510 FORZ=0TOX-1
- 2520 POKE781,Z*3+2:POKE782,1:FORC=1TOLEN(A$(Z))+1:PRINT" ";:NEXTC
- 2530 PRINT:PRINT:PRINT:NEXTZ
- 2540 GOTO1195
- 2999 :
- 3000 REM EDIT ROUTINE
- 3001 :
- 3010 GOSUB1220
- 3020 POKE781,V:POKE782,0:SYS65520:PRINT"WHICH LINE TO RE-ENTER";
- 3025 POKE198,0:WAIT198,1:GETA$
- 3027 A=VAL(A$):IFA>ZORA<1GOTO3020
- 3030 POKE781,(A-1)*3+3:POKE782,0:SYS65520
- 3040 INPUTA$(A-1)
- 3050 GOSUB1210
- 3060 F=0
- 3070 GOTO1070
- 3499 :
- 3500 REM FREQUENCY ROUTINE
- 3501 :
- 3510 GOSUB1210
- 3520 IFF=1THEN3740
- 3530 FORCC=1TO26:SC(CC)=0:NEXT
- 3540 POKE781,V:POKE782,0:SYS65520:PRINT"COUNTING LETTERS";:
- 3550 FORZ=0TOX-1
- 3560 FORZZ=1TOLEN(A$(Z))
- 3570 J$=MID$(A$(Z),ZZ,1)
- 3580 IFASC(J$)>=65ANDASC(J$)<=90THENSC(ASC(J$)-64)=SC(ASC(J$)-64)+1
- 3590 NEXTZZ
- 3600 NEXTZ
- 3610 REM SORT ROUTINE
- 3620 GOSUB1210:POKE781,22:POKE782,0:SYS65520:PRINT"SORTING BY FREQUENCY":
- 3630 FORY=1TO26:ST(Y)=Y:NEXT
- 3640 FORY=1TO25
- 3650 GOSUB3680
- 3660 NEXTY
- 3670 GOTO3740
- 3680 IFSC(Y)>=SC(Y+1)THENRETURN
- 3690 J=SC(Y):SC(Y)=SC(Y+1):SC(Y+1)=J
- 3700 J=ST(Y):ST(Y)=ST(Y+1):ST(Y+1)=J
- 3710 IFY=1THENRETURN
- 3720 Y=Y-1
- 3730 GOTO3680
- 3740 GOSUB1210
- 3745 POKE781,V:POKE782,0:SYS65520:H=0:FLAG=0
- 3750 FORY=1TO26
- 3755 IFFLAG>36THENV=V+1:FLAG=0:H=0:POKE781,V:POKE782,H:SYS65520
- 3760 IFSC(Y)=0THEN3790
- 3765 ST$=MID$(STR$(SC(Y)),2)
- 3770 PRINTCHR$(ST(Y)+64);ST$" ";:FLAG=FLAG+3-(SC(Y)>9)
- 3780 NEXTY
- 3790 POKE198,0:WAIT198,1:GETA$
- 3800 F=1
- 3810 V=22:GOTO1195
- 3999 :
- 4000 REM SAVE ROUTINE
- 4001 :
- 4010 GOSUB1220
- 4020 POKE781,V:POKE782,0:SYS65520:PRINT"SAVE FILE?[160](Y/N) "
- 4025 POKE198,0:WAIT198,1:GETA$
- 4030 IFA$<>"Y"THEN1195
- 4040 GOSUB1220
- 4050 POKE781,V:POKE782,0:SYS65520:INPUT"NAME OF FILE TO SAVE ";F$
- 4060 IFF$=""THEN1195
- 4070 GOSUB1220
- 4080 POKE781,V:POKE782,0:SYS65520:PRINT"NOW SAVING ";F$
- 4090 OPEN15,8,15,"R0:"+F$+"="+F$:GOSUB6000
- 4100 IFCZ>20ANDCZ<>62ANDCZ<>63THEN4200
- 4110 IFCZ=62THEN:OPEN4,8,4,"0:"+F$+",SEQ,W":GOTO4155
- 4120 PRINT"FILE ALREADY EXISTS. CONTINUE (Y/N)";
- 4130 POKE198,0:WAIT198,1:GETA$
- 4140 IFA$<>"Y"THENCLOSE4:CLOSE15:GOTO1195
- 4150 PRINT#15,"S0:"+F$:OPEN4,8,4,"0:"+F$+",SEQ,W"
- 4155 FORZ=0TOX-1
- 4160 PRINT#4,A$(Z)
- 4165 NEXT
- 4170 CLOSE4:CLOSE15
- 4180 GOTO1195
- 4200 PRINT"THERE IS A DISK ERROR #"CZ"WHICH IS":PRINTMZ$
- 4210 PRINT"CONTINUE (Y/N)?[160]";:POKE198,0:WAIT198,1:GETA$
- 4220 IFA$<>"Y"THEN1195
- 4230 GOTO4010
- 4499 :
- 4500 REM LOAD ROUTINE
- 4501 :
- 4510 GOSUB1220
- 4520 POKE781,V:POKE782,0:SYS65520:PRINT"LOAD FILE? (Y/N) ";
- 4525 POKE198,0:WAIT198,1:GETA$
- 4530 IFA$<>"Y"THEN1195
- 4540 GOSUB1220
- 4550 POKE781,V:POKE782,0:SYS65520:INPUT"NAME OF FILE TO LOAD ";F$
- 4560 IFF$=""THEN1195
- 4570 GOSUB1220
- 4580 POKE781,V:POKE782,0:SYS65520:PRINT"NOW LOADING ";F$:FF=0
- 4590 OPEN15,8,15:OPEN4,8,4,"0:"+F$+",SEQ,R":GOSUB6000
- 4600 IFCZ>20ANDCZ<>62ANDCZ<>63THEN4680
- 4610 IFCZ=62THENGOTO4630
- 4620 GOTO4655
- 4625 GOSUB1220:POKE781,V:POKE782,0:SYS65520
- 4630 PRINT"FILE NOT FOUND ON THIS DISK. DO YOU"
- 4635 PRINT"WANT TO CONTINUE (Y/N)?[160]";:POKE198,0:WAIT198,1:GETA$
- 4640 IFA$<>"Y"THENCLOSE4:CLOSE15:GOTO1195
- 4645 CLOSE4:CLOSE15:GOTO4510
- 4655 Z=0
- 4660 INPUT#4,A$(Z)
- 4665 IFST=64THEN4670
- 4667 Z=Z+1:GOTO4660
- 4670 CLOSE4:CLOSE15:X=Z+1
- 4675 GOTO1070
- 4680 GOSUB1220:POKE781,V:POKE782,0:SYS65520:PRINT"THERE IS A DISK ERROR #"
- 4682 PRINTCZ" WHICH IS"
- 4685 PRINTMZ$TAB(LEN(MZ$)+2)"CONTINUE (Y/N)?[160]";:POKE198,0:WAIT198,1:GETA$
- 4690 IFA$<>"Y"THEN1195
- 4695 GOTO4510
- 4999 :
- 5000 REM RESTART PROGRAM
- 5001 :
- 5010 CLR:GOTO1010
- 5500 REM EXIT PROGRAM
- 5510 PRINTCHR$(147)
- 5520 PRINT"[147]LOAD"CHR$(34)"PAYLOAD"CHR$(34)",8":PRINT"RUN"
- 5530 POKE631,13:POKE632,13:POKE198,2
- 5540 END
- 5997 :
- 5998 REM DOS ERROR CHECK
- 5999 :
- 6000 INPUT#15,CZ,MZ$,TZ,SZ:RETURN
- 6497 :
- 6498 REM INSTRUCTIONS
- 6499 :
- 6500 PRINTCHR$(147):POKE53272,23:PRINTCHR$(156)
- 6510 PRINT" [215]ELCOME TO [195][210][217][208][212][207][199][210][193][205] [200][197][204][208][197][210]":PRINT:PRINT
- 6520 PRINT" [215]ITH THIS PROGRAM, YOU'LL BE ABLE TO":PRINT
- 6530 PRINT"SOLVE CRYPTOGRAM PUZZLES WITHOUT":PRINT
- 6540 PRINT"WEARING A HOLE IN THE PAPER!":PRINT
- 6550 PRINT" [217]OU HAVE THE OPTION OF ENTERING UP TO":PRINT
- 6560 PRINT"7 LINES OF CODED TEXT. [212]HEN YOU CAN":PRINT
- 6570 PRINT"SUBSTITUTE ONE LETTER FOR ANOTHER UNTIL":PRINT
- 6580 PRINT"YOU SOLVE THE PUZZLE."
- 6590 POKE781,23:POKE782,0:SYS65520:PRINT"[208][210][197][211][211][160][211][208][193][195][197][160][194][193][210][160][212][207][160][195][207][206][212][201][206][213][197]";:
- 6595 POKE198,0:WAIT198,1:GETA$
- 6600 PRINTCHR$(147):PRINT" [193] '*' ENTERED WHEN YOU ARE ASKED":PRINT
- 6610 PRINT"FOR A LETTER, WILL GIVE YOU A SUB-MENU.":PRINT
- 6620 PRINT"[200]ERE ARE THE OPTIONS YOU WILL HAVE:":PRINT
- 6630 PRINT" * = [195][204][197][193][210] ALL GUSSES FROM THE"
- 6640 PRINT" SCREEN, BUT LEAVE THE TEXT":PRINT
- 6650 PRINT" [197] =[160][197][196][201][212] A LINE OF TEXT YOU HAVE"
- 6660 PRINT" ENTERED (CORRECT ANY TYPOS"
- 6670 PRINT" WITH THIS FUNCTION)":PRINT
- 6680 PRINT" [198][160]=[160][204][197][212][212][197][210][160][198][210][197][209][213][197][206][195][217] WILL TELL YOU"
- 6690 PRINT" HOW MANY TIMES EACH LETTER OF"
- 6700 PRINT" THE ENCRYPTED TEXT APPEARS."
- 6710 PRINT" [212]HE FIRST TIME THIS IS USED,"
- 6720 PRINT" IT TAKES A WHILE, SO BE"
- 6725 PRINT" PATIENT."
- 6770 POKE781,23:POKE782,0:SYS65520:PRINT"[208][210][197][211][211][160][211][208][193][195][197][160][194][193][210][160][212][207][160][195][207][206][212][201][206][213][197]";:
- 6775 POKE198,0:WAIT198,1:GETA$
- 6776 PRINTCHR$(147)
- 6780 PRINT" [211][160]=[160][211][193][214][197] ENCRYPTED TEXT SO YOU CAN"
- 6790 PRINT" WORK ON IT LATER. [212]HE 64 WILL"
- 6800 PRINT" CHECK TO SEE IF THE FILE"
- 6810 PRINT" ALREADY EXISTS ON DISK.":PRINT
- 6820 PRINT" [204][160]= [204][207][193][196] A FILE FROM DISK.":PRINT
- 6830 PRINT" [210][160]= [210][197][211][212][193][210][212] THE PROGRAM. [217]OU WILL"
- 6840 PRINT" BE ABLE TO ENTER NEW TEXT."
- 6850 PRINT" [206][207][212][197]: [193]LL TEXT THAT YOU WERE"
- 6860 PRINT" WORKING ON WILL BE LOST.":PRINT
- 6862 PRINT" [200][160]=[160][200][197][204][208] WILL GIVE YOU THESE"
- 6864 PRINT" INSTRUCTIONS AGAIN (IN CASE"
- 6866 PRINT" YOU FORGET ANY OF THEM). [193]NY"
- 6868 PRINT" SUBSTITUTIONS YOU HAVE MADE"
- 6869 PRINT" WILL BE LOST.":PRINT
- 6870 PRINT" [216] = [197][216][201][212] LEAVE THE PROGRAM. [217]OUR"
- 6880 PRINT" TEXT WILL NOT BE SAVED."
- 6890 POKE781,23:POKE782,0:SYS65520:PRINT"[208][210][197][211][211][160][211][208][193][195][197][160][194][193][210][160][212][207][160][195][207][206][212][201][206][213][197]";:
- 6900 POKE198,0:WAIT198,1:GETA$:PRINTCHR$(147):POKE53272,21:RETURN
-