10 REM COPYRIGHT 1990 COMPUTE! PUBLICATIONS, INC. - ALL RIGHTS RESERVED 20 POKE55,0:POKE56,PEEK(46)+4:CLR:PRINT"[147][159]"TAB(9)"ONE MOMENT, PLEASE..." 30 POKE53280,0:POKE53281,0:POKE650,128:DIMA(70) 40 FORZ=0TO9:A(Z+48)=Z:A(Z+61)=Z+6:NEXT:FORZ=1TO7:READB:NEXT 50 FORZ=49152TO49879:READA$:Q=16*A(ASC(A$))+A(ASC(RIGHT$(A$,1))):G=G+Q 60 POKEZ,Q:NEXT:IFG<>95982THENPRINT"ERROR IN DATA STATEMENT.":STOP 70 CLR:SYS49195:DEFFNA(X)=PEEK(X)+256*PEEK(X+1) 80 AD=FNA(55):U$=CHR$(8)+CHR$(142):N=AD:POKEN,0:W=40959 90 IFN>WTHENN=W:POKEW,0 100 POKE53280,0:POKE53281,0:PRINT"[147]";U$;:MB=N-AD:FB=W-N 110 A$="":FORZ=1TO29:A$=A$+"[192]":NEXT:B$="[154] ":C$=" [146][158] " 120 PRINTTAB(15)"[154]MESSENGER[151]":PRINTTAB(12)"COPYRIGHT 1990" 130 PRINTTAB(6)"COMPUTE! PUBLICATIONS, INC." 140 PRINTTAB(11)"ALL RIGHTS RESERVED" 150 PRINT"[176]"A$"[174]":FORZ=1TO8:PRINT"[221]"TAB(35)"[221]":PRINT"[171]"A$"[179]" 160 NEXT 170 PRINT"[145][173]"A$"[189]" 180 PRINTB$"1"C$"VIEW MESSAGE" 190 PRINTB$"2"C$"ENTER MESSAGE" 200 PRINTB$"3"C$"MAKE MESSAGE PROGRAM" 210 PRINTB$"4"C$"COMPACT MEMORY" 220 PRINTB$"5"C$"SAVE MESSAGE TEXT (SEQ)" 230 PRINTB$"6"C$"LOAD MESSAGE TEXT (SEQ)" 240 PRINTB$"7"C$"CLEAR MEMORY" 250 PRINTB$"8"C$"QUIT" 260 PRINT,,"[155]";RIGHT$(STR$(FB+1E6),5);"[159] BYTES FREE" 270 PRINT,,"[155]";RIGHT$(STR$(MB+1E6),5);"[159] BYTES USED";:POKE198,0 280 GETA$:IFA$<"1"ORA$>"8"THEN280 290 ONVAL(A$)GOTO300,360,350,470,480,550,310,330 300 SYS49192,AD:FORZ=1TO500:NEXT:GOTO90 310 GOSUB740:IFA$="N"THEN90 320 N=AD:POKEN,0:GOTO90 330 GOSUB740:IFA$="N"THEN90 340 SYS64738 350 GOSUB890:GOTO90 360 SYS49192,AD:FORZ=54272TO54300:POKEZ,0:POKE54296,15 370 RESTORE:FORZ=6TO0STEP-1:READY:POKE54272+Z,Y:NEXT:POKE198,0 380 B=54276:C=53280:D=C+1:A=USR(0):POKEB,33:POKEB,255:POKEN,A:N=N+1 390 IFA<133ORA>140THEN460 400 IFA=133THENPOKEC,(PEEK(C)AND15)+1 410 IFA=134THENPOKED,(PEEK(D)AND15)+1 420 IFA=138THENPOKEC,0:POKED,0:PRINT"[147][159]";U$; 430 IFA=135THENPRINTU$; 440 IFA=136THENPRINTCHR$(14); 450 IFA=140THENN=N-1:POKEN,0:GOTO90 460 PRINTCHR$(A);:GOTO380 470 GOSUB1050:GOTO90 480 PRINT"[147]"TAB(15)"[153]TEXT SAVE" 490 F$="":INPUT"[159]FILENAME ";F$:IFF$=""THEN90 500 GOSUB860:PRINT"[147]"TAB(10)"[153]SAVING...PLEASE WAIT" 510 OPEN2,8,2,F$+",S,W":GOSUB800:IFER<>0THEN540 520 IFPEEK(AD)<>138THENPRINT#2,CHR$(138); 530 SYS49201,AD 540 CLOSE2:CLOSE15:SYS65511:GOTO90 550 GOSUB860:S$="":FORZ=1TO40:S$=S$+" ":NEXTZ 560 PRINT"[147][153]"TAB(10)"FILES ON THIS DISK:[153]" 570 OPEN2,8,0,"$0:*=S":C$=CHR$(34):GOSUB800:IFER<>0THEN730 580 GET#2,A$,A$ 590 GET#2,A$,A$:IFA$=""THEN680 600 GET#2,A$,A$:N$="" 610 GET#2,A$:IFA$=""THEN590 620 IFA$<>C$THEN610 630 GET#2,A$:IFA$<>C$THENN$=N$+A$:GOTO630 640 IFZ=41THENZ=0:PRINT""LEFT$(N$+S$,40)"[153][146]";:GOTO660 650 PRINTN$;SPC(20-LEN(N$)); 660 GET#2,A$:IFA$<>""THEN660 670 GOTO590 680 CLOSE2:CLOSE15:PRINT:PRINT"";S$ 690 F$="":INPUT"[159]FILE TO LOAD ";F$:IFF$=""THEN730 700 PRINT"[147]"TAB(10)"[153]LOADING...PLEASE WAIT" 710 OPEN2,8,2,F$+",S,R":GOSUB800:IFER<>0THEN730 720 SYS49198,N:N=FNA(781)+1:POKEN,0 730 CLOSE2:CLOSE15:SYS65511:GOTO90 740 PRINT"[147]"TAB(15)"[158]WARNING!!!" 750 PRINT"[159] THIS OPTION WILL ERASE THE CURRENT" 760 PRINTTAB(11)"MESSAGE IN MEMORY." 770 PRINTTAB(10)"[153]ARE YOU SURE? [Y/N]":POKE198,0 780 GETA$:IFA$<>"Y"ANDA$<>"N"THEN780 790 RETURN 800 OPEN15,8,15:INPUT#15,ER,ER$,ET,ES:IFER=0THENRETURN 810 PRINT"[147]"TAB(11)"[153]OPERATION ABORTED." 820 PRINT"DISK ERROR:[158]";ER;ER$;ET;"[157]";ES 830 PRINTTAB(14)"[153]PRESS A KEY":POKE198,0 840 GETA$:IFA$=""THEN840 850 RETURN 860 PRINT"[147][153]"TAB(5)"INSERT A DISK AND PRESS A KEY":POKE198,0 870 GETA$:IFA$=""THEN870 880 RETURN 890 A=AD:PRINT"[147][159]" 900 FORZ=1TO8:KY(Z)=0:NEXT:Q=1 910 PRINT"INPUT PASSWORD TO CODE THE MESSAGE. [153][RETURN][159] ONLY TO NOT CODE" 920 K$="":INPUT"PASSWORD (8 CHARACTERS MAX.)";K$ 930 P=1:IFK$=""THENK$=CHR$(0):P=0 940 FORZ=1TO3:K$=K$+K$:NEXT:F$="":INPUT"FILENAME";F$:IFF$=""THENRETURN 950 GOSUB860:PRINT"[147][153] COMPACTING AND SAVING THE MESSAGE." 960 PRINTTAB(14)"[159]PLEASE WAIT." 970 GOSUB1060:OPEN2,8,2,F$+",P,W":GOSUB800:IFER<>0THEN1040 980 PRINT#2,CHR$(1)CHR$(8);:X=2049 990 X=FNA(X):IFFNA(X+2)<>2000THEN990 1000 FORZ=XTOFNA(45)-1:PRINT#2,CHR$(PEEK(Z));:NEXT 1010 PRINT#2,CHR$(P);:FORZ=1TO8:POKE49183+Z,0:NEXT 1020 FORZ=49152TO49615:PRINT#2,CHR$(PEEK(Z));:NEXT 1030 FORZ=1TO8:POKE49183+Z,ASC(MID$(K$,Z,1)):NEXT:SYS49207,AD:POKE49184,0 1040 CLOSE2:CLOSE15:SYS65511:RETURN 1050 PRINT"[147][153]"TAB(8)"COMPACTING... PLEASE WAIT" 1060 IFN=ADTHENRETURN 1070 SYS49204,AD:N=FNA(781):RETURN 1080 DATA255,31,255,1,0,50,0 1090 DATA AD,28,C0,A9,4C,A0,00,84,FB,91,14,A9,C0,85,FC,A2,04,B1,14,91 1100 DATA FB,88,D0,F9,E6,FC,E6,15,CA,D0,F2,60,00,00,00,00,00,00,00,00 1110 DATA 4C,3A,C0,4C,D0,C1,4C,0A,C2,4C,2E,C2,4C,49,C2,4C,A5,C2,20,95 1120 DATA C1,A5,14,8D,51,C1,A5,15,8D,52,C1,20,A8,C0,20,BD,C0,20,72,C1 1130 DATA A9,00,8D,CE,C1,AD,20,C0,F0,03,20,9F,C1,A9,00,85,A2,20,4B,C1 1140 DATA C9,00,D0,07,20,A8,C0,20,88,C1,60,8D,C9,C1,20,04,C1,20,88,C1 1150 DATA AD,C9,C1,20,D2,FF,20,72,C1,AD,C9,C1,29,7F,C9,21,30,03,20,D5 1160 DATA C0,AD,8D,02,29,02,F0,04,A9,05,85,A2,A9,03,C5,A2,10,FC,AD,8D 1170 DATA 02,29,01,D0,F9,4C,5D,C0,A0,19,A9,00,99,FF,D3,88,D0,FA,A9,0F 1180 DATA 8D,18,D4,A2,05,20,42,C1,60,A9,00,8D,20,D0,8D,21,D0,A9,9F,20 1190 DATA D2,FF,A9,93,20,D2,FF,A9,8E,20,D2,FF,60,8D,C9,C1,A0,06,B9,C2 1200 DATA C1,99,00,D4,88,10,F7,A9,21,8D,04,D4,A2,00,A0,05,AD,8D,02,29 1210 DATA 02,F0,02,A0,01,CA,D0,FD,88,D0,FA,A9,FF,8D,04,D4,AD,C9,C1,60 1220 DATA C9,85,D0,04,EE,20,D0,60,C9,89,D0,0C,20,88,C1,A2,3C,20,42,C1 1230 DATA 20,72,C1,60,C9,86,D0,04,EE,21,D0,60,C9,8A,D0,04,20,BD,C0,60 1240 DATA C9,87,D0,06,A9,8E,20,D2,FF,60,C9,88,D0,05,A9,0E,20,D2,FF,60 1250 DATA A2,01,A9,00,85,A2,E4,A2,D0,FC,60,AD,CE,C1,D0,1B,AD,FF,FF,EE 1260 DATA 51,C1,D0,03,EE,52,C1,C9,01,D0,12,20,50,C1,8D,CE,C1,20,50,C1 1270 DATA 8D,CF,C1,CE,CE,C1,AD,CF,C1,60,A4,D3,B1,D1,8D,CC,C1,B1,F3,8D 1280 DATA CD,C1,A9,A0,91,D1,AD,86,02,91,F3,60,A4,D3,AD,CC,C1,91,D1,AD 1290 DATA CD,C1,91,F3,60,20,FD,AE,20,8A,AD,20,F7,B7,60,A0,00,A2,00,A1 1300 DATA 14,59,20,C0,81,14,A1,14,F0,0E,E6,14,D0,02,E6,15,C8,98,29,07 1310 DATA A8,4C,A3,C1,A9,00,8D,20,C0,60,00,32,00,01,FF,1F,FF,00,00,00 1320 DATA 00,00,00,00,A9,DB,8D,11,03,A9,C1,8D,12,03,60,A4,D3,B1,F3,48 1330 DATA B1,D1,48,AD,86,02,91,F3,A4,D3,68,48,49,80,91,D1,20,E4,FF,AA 1340 DATA A4,D3,68,48,91,D1,8A,F0,EB,A4,D3,68,68,91,F3,8A,A8,A9,00,4C 1350 DATA 91,B3,20,95,C1,A2,02,20,C6,FF,20,CF,FF,A0,00,91,14,20,B7,FF 1360 DATA 29,40,D0,09,E6,14,D0,EE,E6,15,4C,12,C2,A6,14,A4,15,60,20,95 1370 DATA C1,A2,02,20,C9,FF,A0,00,B1,14,F0,0C,20,D2,FF,E6,14,D0,F3,E6 1380 DATA 15,4C,36,C2,60,20,95,C1,A5,14,85,FB,A5,15,85,FC,A0,00,B1,FB 1390 DATA D0,07,91,14,A6,14,A4,15,60,C8,C0,FF,F0,04,D1,FB,F0,F7,C0,01 1400 DATA F0,20,C0,02,F0,1C,48,A9,01,20,9A,C2,98,20,9A,C2,18,65,FB,85 1410 DATA FB,A9,00,65,FC,85,FC,68,20,9A,C2,4C,54,C2,20,9A,C2,E6,FB,D0 1420 DATA 02,E6,FC,4C,54,C2,A2,00,81,14,E6,14,D0,02,E6,15,60,20,95,C1 1430 DATA A2,02,20,C9,FF,A2,00,A0,00,A1,14,59,20,C0,8E,CA,C1,8C,CB,C1 1440 DATA 20,D2,FF,AE,CA,C1,AC,CB,C1,A1,14,F0,0E,E6,14,D0,02,E6,15,C8 1450 DATA 98,29,07,A8,4C,B1,C2,60 2000 POKE53280,0:POKE53281,0:PRINT"[147]"CHR$(142)CHR$(8):X=2049 2010 DEFFNA(X)=PEEK(X)+256*PEEK(X+1) 2020 X=FNA(X):IFX<>0THENY=X+2:GOTO2020 2030 IFPEEK(Y+1)=173THENSYS(Y+1) 2040 IFPEEK(Y)=0THEN2080 2050 PRINT"THIS MESSAGE IS PROTECTED." 2060 INPUT"PLEASE ENTER PASSWORD ";K$ 2070 FORZ=1TO8:N$=N$+K$:POKE49183+Z,ASC(MID$(N$,Z,1)):NEXT:POKEY,0 2080 PRINT"[147][159] MESSENGER FILE-PLAYER" 2090 PRINT"[154]HOLD [153] CMDR [146][154] TO SPEED UP" 2100 PRINT"HOLD [153] SHFT [146][154] TO FREEZE DISPLAY" 2110 PRINTTAB(9)"[158]PRESS ANY KEY TO START":POKE198,0 2120 GETA$:IFA$=""THEN2120 2130 SYS49152,(Y+465):RUN