home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.whtech.com
/
ftp.whtech.com.tar
/
ftp.whtech.com
/
club100
/
tel
/
mesngr.ba
< prev
next >
Wrap
Text File
|
2006-10-19
|
11KB
|
216 lines
->MSGR1.BA
0 GOTO90
1 IFRAND1THENFORZC=1TOLEN(B):?#2,MID$(B,ZC,1);:NEXT
2 IFRAND2THEN?B;:RETURNELSERETURN
3 F="M":GOSUB30:B=FN(W)+" Command:":GOSUB6'MENU
4 ONINSTR(" CEFGHRSU",J)GOTO3,16,18,17,38,19,61,60,20:IFINSTR("M123",J)THENW=VAL(J):GOTO3ELSE3
5 B=B+"?(Y/N)"'Y/N
6 GOSUB7:J=LEFT$(J,1):RETURN'1 CHAR INPUG
7 GOSUB9:IFJ=DTHENRETURNELSEFOROA=1TOLEN(J):OB=ASC(MID$(J,OA)):IFOB>96THENMID$(J,OA)=CHR$(OB-32)'CAPS
8 NEXT:RETURN
9 COMOFF:VA=INSTR(DA,";"):IFVATHENJ=LEFT$(DA,VA-1):DA=MID$(DA,VA+1):RETURNELSEL=0:J=D:B=B+CHR$(17):GOSUB1'Input
10 T=0
11 'MESSENGER.100 Copyright 1986 By Tom Fitzpatrick, All rights reserved
12 G=INKEY$:IFG=DTHENIFPEEK(65414)=0THENT=T+1:IFT<2700THEN12ELSE40ELSEG=INPUT$(1,1)
13 IFL=ZTHENRETURNELSEB=G:IFG<CEORG=CHR$(127)THEN15ELSEIFL>75THENB=CGELSEJ=J+B:L=L+1:IFL=70THENB=B+CG
14 GOSUB1:GOTO10
15 IFG=CRTHENB=A:GOSUB1:IFINSTR(J,";")ANDNOTNMTHENDA=J+";":GOTO9ELSEIFJ="*"THENGOSUB81:GOTO9ELSERETURNELSEIF(G=CHR$(8)ORG=CHR$(127))ANDL>0THENL=L-1:J=LEFT$(J,L):GOTO14ELSEIFG=CTHENJ=D:B=STRING$(L,127):L=0:GOTO14ELSE10
16 B="Page ON"+A:GOSUB1:LINE(6,56)-(26,63),1,B:SOUND450,45:GOTO3
17 W=0:DA="SYSOP;"
18 GOSUB42:GOTO3
19 F="H":GOSUB30:GOTO3
20 RS=Z:GOSUB21:GOTO3
21 GOSUB87:GOSUB29
22 IFEOF(3)THENRETURNELSEINPUT#3,F,B,F:IFRSTHENB=B+A:GOSUB1ELSEIFB=JTHENRS=Z:RETURN
23 GOTO22
24 QA=31*(VAL(MID$(J,1,2))-1)+VAL(MID$(J,4,2))+373*(VAL(MID$(J,7,2))-30):QF=QL<QAOR(QL=QAANDEA<=MID$(J,9,5)):RETURN'DATE
25 COMOFF:B=E+STR$(ERR)+"?"+STR$(ERL):BEEP:RESUME26'ERROR
26 ONERRORGOTO27:GOSUB89:GOSUB1:GOTO40
27 RESUMENEXT
28 COMOFF:G=INPUT$(1,1):IFG=CHR$(19)THENL=Z:GOSUB10ELSEIFG=CTHENGOSUB37:RETURN'INTERRUPT
29 IF(RAND1)THENCOMON:RETURNELSERETURN'CONTROL
30 G=D:CLOSE3:OPEN"I"FORINPUTAS3:GOSUB29'SURVEY
31 LINEINPUT#3,B:IFB<>FTHEN31
32 LINEINPUT#3,B:IFB=DORG=CTHENRETURNELSEIFRIGHT$(B,1)="?"THENGOSUB7:B=J:GOSUB89:GOTO32ELSEB=B+A:GOSUB1:GOTO32
33 R=1'Ring
34 GOSUB37'Run
35 R=RXOR2:RETURN'View
36 B=B+A:GOSUB1
37 G=C:POKE65450,0:DA=D:RETURN'^X
38 B="Leave":GOSUB5:IFJ="N"THEN3ELSECLOSE:FN(W)="PW":GOSUB82'Off
39 GOSUB86:K=INSTR(J,",")+1:IFMID$(J,K,INSTR(K,J,",")-K)=ETHENM=M-15:GOSUB85ELSEIFPEEK(M)<>26THEN39ELSEERROR91
40 GOSUB41:RUN
41 ?CE"q"CE"Q":CALL21179:GOSUB37:SCREEN,0:RETURN
42 IFFRE(0)<3000THENB="NO ROOM":GOTO36ELSEIFW=0THENB="To:":GOSUB7:IFJ=DTHEN59ELSERS=0:GOSUB21:IFRSTHEN44ELSEB="NOT A USER"+CG:GOSUB36:GOTO42'ENTER
43 B="Subject:":GOSUB7:IFLEN(J)>15THEN43ELSEIFJ=DTHEN59
44 B=A+FN(W)+">"+J+A+"Entry ends with <cr> on a blank line or 12 lines"+A:GOSUB1:F(0)=DATE$+LEFT$(TIME$,5)+E+"\"+J:U=1:NM=Z
45 B=D:IFU=12THENB="LAST LINE"+A
46 IFU<13THENGOSUB9:F(U)=J:IFJ>DTHENU=U+1:GOTO45
47 NM=0:B=A+"Save, Edit, Insert,Delete,Continue,eXit,Read?":GOSUB6:P=INSTR(" EDICRXS",J):NM=Z:ONPGOTO47,48,48,48,45,55,56,58:GOTO47
48 B="Line #:":GOSUB9:V=VAL(J):IFV<1ORV>U-1ORP=4ANDU=13THENGOSUB37:GOTO47ELSEIFP=4THENV=V-1
49 GOSUB57:ONPGOSUB,50,53,54:GOTO47
50 B="New line, \old text\new or <cr> if okay"+A:GOSUB9:IFJ=DTHENRETURNELSEDA="E;"+STR$(V)+";"
51 IFLEFT$(J,1)<>"\"THENF(V)=JELSEY=INSTR(2,J,"\"):IFYTHENF=MID$(J,2,Y-2):FD=MID$(J,Y+1):Y=INSTR(F(V),F):IFYTHENF(V)=LEFT$(LEFT$(F(V),Y-1)+FD+MID$(F(V1,Y+LEN(F)),76)
52 RETURN
53 B="Delete":GOSUB5:IFJ="Y"THENFORV=VTO12:F(V)=F(V+1):NEXT:U=U-1:RETURNELSERETURN
54 B=STR$(V+1)+")":GOSUB9:IFJ>DTHENFORK=12TOVSTEPZ:F(K+1)=F(K):NEXT:U=U+1:F(V+1)=J:RETURNELSERETURN
55 GOSUB29:FORV=1TOU-1:GOSUB57:NEXT:GOTO47
56 B="Abort":GOSUB5:IFJ="Y"THEN59ELSE47
57 B=MID$(STR$(V),2)+")"+F(V)+A:GOSUB1:RETURN
58 IFU>1THENCLOSE3:OPENFN(W)FORAPPENDAS3:FORK=0TOU:?#3,F(K):F(K)=D:NEXT:GOSUB82:GOSUB85:B="Saved"+A:GOSUB1
59 NM=0:RETURN
60 B="Search for:":GOSUB7:IFJ>DTHENFF=JELSE3'Read
61 B="Start #:(0=New)":GOSUB9:NS=VAL(J)
62 GOSUB88:V=0:TT=0:GOSUB24:IFNS=0ANDNOTQFTHENB="Nothing new"+A:GOSUB1:G=C
63 GOSUB29:IFPEEK(M)=26ORG=CTHEN76ELSET3=TT:G=D:V=V+1:GOSUB86:IFNS=0THENGOSUB24:IFQFTHENNS=VELSE74
64 IF(NSANDV<NS)ORVAL(J)=0OR(FF>DANDINSTR(MID$(J,14),FF)=0)THEN74
65 K=INSTR(J,"\"):FD=MID$(J,14,K-14):F=MID$(J,1+K):N=ZAND(F=EORFD=E):IFW=0ANDN=0THEN74
66 J=A+STR$(V)+SPACE$(18)+LEFT$(J,13)+A+" By "+FD:IFW>0THENMID$(J,6)=CHR$(34)+F+CHR$(34)ELSEMID$(J,7)="Mail":J=J+A+" To "+F
67 B=J+A:GOSUB1:GOSUB86:IFG=CTHEN76ELSEIFJ>DANDG=CNTHEN74ELSEIFJ>DTHEN67
68 B="Reply,Again,eXit,Next?":IFNORSPTHENN=Z:B="Delete,"+B
69 GOSUB6:IFJ="D"ANDNTHENPOKEM4+T3,68ELSEIFJ="X"THENG=CELSEIFJ="A"THENM=M4+T3:TT=T3:V=V-1
70 IFJ<>"R"THEN63
71 WT=W:NS=V:IFW>0THENB="Private":GOSUB5:IFJ="Y"THENW=0
72 IFW=0THENDA=FDELSEDA=F
73 DA=DA+";":GOSUB42:W=WT:GOSUB88:TT=T3:M=M+TT:V=NS+Z:GOTO63
74 X=INSTR(B,A+A):IFX=0THENX=INSTR(B,CHR$(26)):IFX=0THENY=251-NG:M=M+Y:TT=TT+Y:GOSUB86:GOTO74
75 Y=X+1-NG:M=M+Y:TT=TT+Y:GOTO63
76 NS=0:FF=D:IFG<>CTHENB=A+">Last msg #"+STR$(V)+A:GOSUB1
77 GOTO3
78 COMOFF:KEYOFF:LINE-(5,56),0,B:B="Chat ON"+A+CG:IF(RAND2)=0THENGOSUB35'CHAT
79 GOSUB9:B=D:IFJ=CETHENJ=D:L=0:KEYON:B="Chat OFF"+A:GOSUB1:RETURNELSE79
80 SCREEN,0:?CE"U":?@280,B;CE"T";:?@0,:RETURN'F Keys
81 B=A+"NOTE:"+BF+A:GOSUB9:IFJ>DTHENBF=J:RETURNELSERETURN'Note
82 M=63919
83 GOSUB84:K=INSTR(B,FN(W)):IFK=0ORM>64128THENERROR52ELSEIF(ASC(MID$(B,K-3))AND192)<192THENM=M+K:GOTO83ELSEM=ASC(MID$(B,K-2))+256*ASC(MID$(B,K-1)):RETURN
84 MA=VARPTR(B):POKEMA,255:POKEMA+1,M-INT(M/256)*256:POKEMA+2,INT(M/256):RETURN
85 B=DATE$+LEFT$(TIME$,5):FORK=1TO13:POKEK+M-1,ASC(MID$(B,K)):NEXT:RETURN
86 GOSUB84:NG=INSTR(B,A)-1:J=LEFT$(B,NG):TT=TT+NG+2:M=M+NG+2:RETURN
87 CLOSE3:OPEN"pw"FORINPUTAS3:RETURN
88 CLOSE3:GOSUB82:GOSUB86:M4=M:RETURN
89 CLOSE4:OPEN"L"FORAPPENDAS4:IFFRE(0)>500THEN?#4,DATE$TIME$B:RETURNELSEERROR7
90 MAXFILES=4:CLEAR1400:DEFINTK-Z:DEFSNGM:DEFSTRA-J:DIMF(13):Z=-1:FN(0)="MAIL":FN(1)="BASE 1":FN(2)="BASE 2":FN(3)="BASE 3"'Definitions
91 ONCOMGOSUB28:ONERRORGOTO25
92 C=CHR$(24):CE=CHR$(27):CG=CHR$(7):CN=CHR$(14):CR=CHR$(13):A=CR+CHR$(10)
93 ONKEYGOSUB105,33,34:KEYON:B="Quit Ring Run":GOSUB80:CLS:CALL32428:F="COM:38N1E":OPENFFORINPUTAS1:OPENFFOROUTPUTAS2
94 ONRGOTO,97,95:IFPEEK(65414)=0THEN94ELSER=1:GOSUB9
95 B="ATA"+A:GOSUB9:L=Z:GOSUB10:F="COM:58N1D":IFASC(G)<250THENMID$(F,5)="3"
96 CLOSE2:OPENFFOROUTPUTAS2:CLOSE1:OPENFFORINPUTAS1
97 SCREEN,0:ONKEYGOSUB78,35,103,37,40:B=A+A+A:?CE"P"
99 K=K+1:IFK>3THEN40ELSEGOSUB87:B=B+"ID or NEW:":GOSUB7:IFJ="NEW"THENF=J:GOSUB30:GOTO40
100 IFEOF(3)THEN99ELSEINPUT#3,F,FF,FD:IFF<>JTHEN100
101 SP=INSTR(F,"*"):J=FD:GOSUB24:QL=QA:EA=MID$(J,9,5):E=FF
102 B="Chat View ^N^X^Z "+E:GOSUB80:B=CHR$(12)+"Mail:"+A:GOSUB1:GOTO62
103 G=CN:RETURN
105 GOSUB41:END'QUIT
106 'MESSENGER.100 Copyright 1986 By Tom Fitzpatrick, All rights reserved
->START.BA
1 MAXFILES=1:CLEAR512:?"Disk?":d$=input$(1):IFD$="Y"ORD$="y"THEND=-1
2 FORA!=0TO3:READA$:IFDTHENA$="0:"+A$
3 OPENA$FOROUTPUTAS1:IFNOTDTHEN?#1,"00/00/0000:00":CLOSE:NEXT:GOTO5
4 CLOSE:OPEN("D"+STR$(A!))FOROUTPUTAS1:?#1,"00/00/0000:00,0,0,"CHR$(34)+SPACE$(99):CLOSE:NEXT
5 BEEP:END:DATAMAIL,BASE 1,BASE 2,BASE 3
->DELETE.BA
0 MAXFILES=2:CLEAR520:CLS:?"Disk?":J$=INPUT$(1):IFD$="Y"ORD$="y"THEND=-1
1 INPUT"First msg date";J$:GOSUB9:L=QA: FORA=0TO3:READF$:QL=L:?@80,F$:IFDTHEN10ELSEOPENF$FORINPUTAS1:Q=VARPTR(J$):POKEQ,255:POKEQ+1,175:POKEQ+2,249
2 K=INSTR(J$,F$):IFK=0ORM>64128THENERROR52ELSEIF(ASC(MID$(J$,K-3))AND192)<192THENM=M+K:GOTO2ELSEM=ASC(MID$(J$,K-2))+256*ASC(MID$(J$,K-1))+15:B$="":W=0:LINEINPUT#1,J$
3 IFEOF(1)THEN7ELSELINEINPUT#1,J$:IFB$=""THENIFASC(J$)=68THEN6ELSEIFQLTHENGOSUB9:IFQLTHEN6
4 B$=J$:J$=J$+CHR$(13)+CHR$(10):P!=LEN(J$):IFWTHENFORN!=1TOP!:POKEM+N!-1,ASC(MID$(J$,N!)):NEXT
5 M=M+P!:GOTO3
6 W=-1:LINEINPUT#1,B$:IFB$>""THEN6ELSE3
7 IFWTHENFORN=MTOM+2:POKEN,42:NEXT
8 GOTO17
9 QA=31*(VAL(MID$(J$,1,2))-1)+VAL(MID$(J$,4,2))+373*(VAL(MID$(J$,7,2))-30):IFQA>=QLTHENQL=0:RETURNELSERETURN
10 F$="0:"+F$:D$="D"+STR$(A):OPEND$FORINPUTAS1:INPUT#1,DW$,W,V,DX$:CLOSE:V=0:M=0:IFQL=0ANDINSTR(DX$,"D")=0THEN17ELSEOPENF$FORINPUTAS1:OPEN"0:W"FOROUTPUTAS2
11 IFEOF(1)THEN15ELSEV=V+1:LINEINPUT#1,J$:IFQLTHENGOSUB9
12 IFQLORMID$(DX$,V,1)="D"THEN14ELSEM=M+1
13 ?#2,J$:IFJ$=""THEN11ELSELINEINPUT#1,J$:GOTO13
14 LINEINPUT#1,J$:IFJ$>""THEN14ELSE11
15 CLOSE1:OPEND$FOROUTPUTAS1:?#1,DW$","M","LOF(2)","CHR$(34)SPACE$(99)
16 CLOSE:KILLF$:NAME"0:W"ASF$
17 NEXT:BEEP:BEEP
18 DATAMAIL,BASE 1,BASE 2,BASE 3
->I.DO
M
Help! Users Feedback Goodbye Chat [Msgs:] Read, Search, Enter
[MsgBases:] Mail,1,2,3
NEW
John Smith 10
If your name appears above, your ID has already been established. Use the
number next to your name plus your password as your ID. (If John Smith's
password is ABC, 10ABC would be his ID.)
With whom am I typing?
Your phone #(xxx/xxx-xxxx) and the best time to reach you?
Leave your message or your desired password (3-8 characters, A-Z only)?
Thank you.
H
CTRL-S Pauses; CTRL-Q resumes; CTRL-N Next msg; CTRL-X eXits activity
CHAT :Page SYStem OPerator
FEEDBACK:Send mail to sysop
GOODBYE :Disconnect
USERS :List users
MAIL :Private messages(msgs)
1 :General msgs
2 :For Sale
3 :Computer Q&As
READ :Read msgs. 0 reads new since last call, 1 reads all, # reads msg #
to last msg.
SEARCH :Enter part of name or subject. Searching for ick shows msgs from TOM FITZPATRICK or titled LIVER? ICK!!
ENTER :Enter a msg.
*: A one-line note to yourself. *<cr> at any prompt activates it. <cr> leaves
unchanged, one line of text replaces old note.
; Use the ; to seperate commands. To read messages starting at 10, enter
r;10 instead of r<cr>10<cr>.
If you have any questions, leave a msg. or Feedback.
->AA.DO
93 ONKEYGOSUB105,33,34:KEYON:B="Quit Ring Run":GOSUB80:CLS:CALL32428
94 ONRGOTO,96,95:IF(INP(216)AND32)THEN94ELSEN=N+1:IFN<1THEN94ELSER=1
95 POKE63067,77:CALL28326:CALL21200:POKE65344,1:GOSUB110:B="mdm:8n1d":OPENBFORINPUTAS1:GOSUB112:OPENBFOROUTPUTAS2
96 POKE65414,0
110 CALL28399:IFPEEK(65344)=1THENT=T+1:?@20,T:IFT<999THEN110ELSE40
111 FORT=1TO99:NEXT
112 POKE65344,1:CALL28399:IFPEEK(65344)=1THEN40ELSERETURN
->D.DO
4 ONINSTR(" CEFGHRSU",J)GOTO3,16,18,17,38,19,61,60,20:IFINSTR("M123",J)THENGOSUB107:GOTO3ELSE3
17 WE=0:GOSUB107:DA="SYSOP;"
40 WE=0:GOSUB108:GOSUB41:RUN
42 IFTM>98ORLO>100THENB="NO ROOM":GOTO36ELSEIFW=0THENB="To:":GOSUB7:IFJ=DTHEN59ELSERS=0:GOSUB21:IFRSTHEN44ELSEB="NOT A USER"+CG:GOSUB36:GOTO42'ENTER
58 IFU>1THENCLOSE3,4:OPEN("0:"+FN(W))FORAPPENDAS3:FORK=0TOU:?#3,F(K):F(K)=D:NEXT:DW=DATE$+LEFT$(TIME$,5):B="Saved"+A:LO=LOF(3):TM=TM+1:GOSUB1:WD=Z
61 B="Start # 0(new)-"+STR$(TM)+"?":GOSUB9:NS=VAL(J)
62 V=0:J=DW:GOSUB24:IFNS=0ANDNOTQFTHENB="Nothing new"+A:GOSUB1:G=CELSEGOSUB88
63 GOSUB29:IFEOF(3)ORG=CTHEN76ELSEG=D:V=V+1:LINEINPUT#3,J:IFNS=0THENGOSUB24:IFQFTHENNS=VELSE74
67 B=J+A:GOSUB1:LINEINPUT#3,J:IFG=CTHEN76ELSEIFJ>DANDG=CNTHEN74ELSEIFJ>DTHEN67
69 GOSUB6:IFJ="D"ANDNTHENMID$(DX,V)="D":WD=ZELSEIFJ="X"THENG=CELSEIFJ="A"THENNS=V-1:GOTO62
71 WT=W:NS=V:IFW>0THENB="Private":GOSUB5:IFJ="Y"THENJ="0":GOSUB107
73 DA=DA+";":GOSUB42:J=STR$(WT):GOSUB107:V=NS+Z:GOTO62
74 LINEINPUT#3,J:IFJ>""THEN74ELSE63
75'
86 GOSUB84:NG=INSTR(B,A)-1:J=LEFT$(B,NG):M=M+NG+2:RETURN
88 CLOSE3:OPEN("0:"+FN(W))FORINPUTAS3:J=DW:RETURN
91 ONCOMGOSUB28:ONERRORGOTO25:GOSUB109
107 WE=VAL(J):IFW=WETHENRETURN
108 IFWDTHENWD=0:CLOSE3:OPEN("D"+STR$(W))FOROUTPUTAS3:?#3,DW","TM","LO","CHR$(34)DX
109 W=WE:CLOSE3:OPEN("D"+STR$(W))FORINPUTAS3:INPUT#3,DW,TM,LO,DX:RETURN