home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Hacker Chronicles 2
/
HACKER2.BIN
/
626.PBBS.BA
< prev
next >
Wrap
Text File
|
1988-05-29
|
12KB
|
208 lines
0 'PBBS.BA BY DICK ROUX N1AED/GARY MCDUFFIE AG0N VERSION 3.11 02/08/88
1 GOTO10
5 FORX=1TOLEN(O$):S$=MID$(O$,X,1):PRINT#1,S$;:PRINTS$;:NEXT:PRINT#1,RT$;:PRINT:RETURN
10 CLEAR1000:MAXFILES=6:CK$="ON ":RT$=CHR$(13):CA$="N1AED":NA$="Dick":T$="Merrimack, NH":BE$="NHNET Mini-PBBS Mail For: ":CALL16969
30 OPEN"ERRLOG.DO"FORAPPENDAS1:CLOSE1
40 GOSUB2090
50 MM=0:MS=0:ONERRORGOTO80:OPEN"MESLOG.DO"FORINPUTAS4
60 LINEINPUT#4,I$:IFLEN(I$)=>3THENMS=MS+1:IFI$=CA$THENMM=MM+1
70 IFEOF(4)THENCLOSE4:GOTO90ELSE60
80 IFERR=52THENOPEN"MESLOG.DO"FORAPPENDAS4:PRINT#4,CR$:CLOSE4
90 ONCOMGOSUB280:ONERRORGOTO900
100 IFUTHENGOSUB2080:U=0:GOSUB190ELSEGOSUB190
110 COMON
120 E$=INKEY$:GOSUB130:GOTO150
130 DA$=LEFT$(DATE$,2)+"/"+MID$(DATE$,4,2)+"/"+RIGHT$(DATE$,2):TI$=LEFT$(TIME$,2)+MID$(TIME$,4,2):RETURN
150 IFM=0ANDC=0THENPRINT@296,TIME$;:PRINT@280,"";
155 IFE$=""THEN120
160 ONINSTR("EPRSGKBMCT",E$)GOTO660,690,760,1650,840,1400,2075,3000,4000,5000
170 ONINSTR("eprsgkbmct",E$)GOTO660,690,760,1650,840,1400,2075,3000,4000,5000
180 GOTO120
190 IFCTHENRETURNELSECLS:PRINT"MAILBOX ACTIVE - WAITING ";MM;"/";MS;" Msgs"
210 PRINTFRE(0);" BYTES FREE ";MR;"CONNECTS TODAY"
220 IFLEN(LC$)THENPRINT "Last User: ";LC$ELSEPRINT
225 IFB=0THENBB$="OFF"ELSEBB$="ON "
226 IFM=0THENMM$="OFF"ELSEMM$="ON "
230 PRINT"<P>rint Msgs <R>ead Msgs <E>xit"
240 PRINT"<S>end Msg <G>o Online <K>ill Msgs"
250 PRINT"<B>eacon ";BB$;" <M>onitor ";MM$;" <T>ime"
260 PRINT"<C>onok ";CK$;" ..SELECT..":RETURN
280 IFEOF(2)THENCLOSE2:OPEN"COM:58N1E"FORINPUTAS2:IFS=0THEN360ELSEPRINT#4,Z$:Z$="":S=0:FL=1:GOSUB1590:COMON:GOSUB1530:GOSUB1560:GOTO360
290 C$=INPUT$(1,2):PRINTC$;:IFC$=CHR$(10)THENRETURN
300 IFC$=RT$THEN330
310 Z$=Z$+C$:IFLEN(Z$)=>80THEN330ELSERETURN
330 IFNOTCTHEN380
340 FG=INSTR(Z$,"*** conn"):IFFGTHENRQ$=MID$(Z$,20+FG,8):RQ=1:GOTO360
350 IFCTHEN430
360 IFRD=0ANDS=0ANDRQANDCTHENO$=RQ$+" Just Tried to Connect":GOSUB5:RQ=0
370 Z$="":RETURN
380 R=INSTR(Z$,"*** CONN"):IFNOTLANDR>0THENCLS:C=-1:GOSUB2025ELSEGOTO360
390 IFFL=0THENGOSUB1030
400 COMSTOP:GOSUB1540:COMON:IFMFTHEN360ELSEGOSUB1280:GOSUB1560:GOTO360
430 IFINSTR(Z$,"*** DIS")THENC=0:LC=0:GOSUB2100:GOTO640
440 IFINSTR(Z$,"retry")THEN370
450 IFSTHEN610
460 IFMFTHEN560
470 IFLTHEN360
480 IFZ$<>CR$THENZ=ASC(LEFT$(Z$,1)):IFZ>96ANDZ<123THENGOSUB2040:Z$=ZX$:ZX$=""
490 IFLEN(Z$)>4THEN560
495 IFLEN(Z$)>1THEN590
500 IFZ$="T"THEN1190
510 IFZ$="R"THENGOSUB1320:GOSUB1560:GOTO360
515 IFZ$="L"THENZA$="MESLOG":GOTO2600
520 IFZ$="H"THENGOSUB1760:GOSUB1560:GOTO360
525 IFZ$="U"THENZA$="USELOG":GOTO2600
530 IFZ$="I"THENZA$="INFO00":GOTO2600
540 IFZ$="B"THENGOSUB630:GOSUB2098:GOSUB2000:GOTO360
545 IFZ$="K"THENMD=1:O$="Your message(s) will be deleted.":GOSUB5:GOSUB1560:GOTO360
550 IFZ$<>CR$THENO$="*** NON FUNCTIONAL CMD":GOSUB5:GOSUB1560:GOTO360
560 IFLEN(Z$)<5THEN590
570 IFLEFT$(Z$,1)="S"THENZP=INSTR(Z$," "):IFZP=2ORZP=3THEN1420
590 IFZ$<>CR$THENGOSUB2040:Z$=ZX$:ZX$="":IFZ$="R ALL"THENZA$="ALL":MW=1:GOSUB1330:MW=0:GOSUB1560:GOTO360
595 IFZ$="R NEWS"THENZA$="NEWS00":GOTO2600
600 IFZ$<>CR$THENO$="*** SAY WHAT? Type <H>elp if you need it.":GOSUB5:GOSUB1560
610 IFSTHENPRINT#4,Z$:IFLCTHENGOSUB1580:LC=0
620 GOTO360
630 O$=ZC$+" de "+CA$+": 73 - Call again!":GOSUB5:RETURN
640 COMSTOP:GOSUB2010:IFSTHENCLOSE4:S=0:GOSUB1850ELSEGOSUB1850:GOSUB2020:GOSUB1590:IFBTHENO$="BT "+BT$:GOSUB5:GOSUB1590
650 FL=0:L=0:MF=0:MR=MR+1:RD=0:GOSUB360:GOSUB1740:IFMDTHEN1410ELSEGOSUB2110:GOSUB670:GOTO100
660 COMOFF:CLOSE:GOSUB670:GOTO680
670 DATE$=LEFT$(DATE$,6)+"88":RETURN
680 MENU
690 COMSTOP:CLS:PRINT:INPUT"CHECK PRINTER - PRESS ENTER.. ";X$
705 CLS:INPUT"Print YOUR Mail";ZE$:IFZE$="N"ORZE$="n"THENINPUT"Print whose";ZC$ELSEZC$=CA$
710 OPENZC$+".DO"FORINPUTAS3:OPEN"LPT:"FOROUTPUTAS4
720 LINEINPUT#3,C$:IFEOF(3)THENPRINTC$:PRINT#4,C$:CLOSE3,4:GOTO100
740 FORI=1TO250:NEXT:PRINTC$:PRINT#4,C$:GOTO720
760 COMSTOP:CLS:ONERRORGOTO830
770 MS=0:PRINT"Read YOUR Mail?"
775 E$=INKEY$:IFE$=""THEN775ELSEIFE$="Y"ORE$="y"THENZC$=CA$ELSEINPUT"Read whose";ZC$
780 OPENZC$+".DO"FORINPUTAS3
790 LINEINPUT#3,C$:IFEOF(3)THENCLOSE3:PRINTC$+CR$:GOSUB1590:PRINT"*** END OF FILE ":FORI=1TO3000:NEXT:GOTO50
810 PRINTC$:FORI=1TO1500:NEXT:GOTO790
830 IFERR=52THENPRINT"** NO MESSAGES":GOSUB1590:RESUME50
840 IFCTHENGOSUB2098:GOSUB2010
845 CLS:L=-1:PRINT"** ONLINE ** ^D To cmd: <ESC> to MENU"
850 E$=INKEY$:IFE$=""THEN850
860 IFE$=CHR$(27)THENL=0:Z$="":IFCTHENGOSUB2025:GOSUB1560:Z$="":GOTO100ELSEGOTO100
870 IFE$=CHR$(8)THENPRINTCHR$(8);CHR$(32);
880 PRINT#1,E$;:IFE$=RT$THENPRINTE$ELSEPRINTE$;
890 GOTO850
900 IFERR=52THENCLOSE:BEEP:GOTO940ELSECLOSE:BEEP:OPEN"ERRLOG.DO"FORAPPENDAS6
910 PRINT#6,"ERROR ";ERR;" IN LINE ";ERL" WHILE ";ZC$;" WAS ON AT ";TI$;" ON ";DA$
920 IFCANDERR=57THENCLOSE6:S=0:Z$="":O$="*** SORRY, CAN'T DO IT, RAN OUT OF FILE SPACE !!! ***":GOSUB2090:GOSUB5:MF=0:RESUME1560
930 IFCANDERR=7THENCLOSE6:CLOSE4:S=0:Z$="":O$="*** SORRY, CAN'T DO IT, RAN OUT OF MEMORY !!! ***":GOSUB2090:GOSUB5:MF=0:RESUME1560
940 IFCANDERR=52THENCLOSE6:RD=0:MW=0:Z$="":O$="*** NONE FOUND":GOSUB2090:GOSUB5:RESUME360ELSECLOSE6:Z$="":RESUME40
1030 IFMID$(Z$,21+R,1)="-"THENZC$=MID$(Z$,17+R,4):GOTO1075
1040 IFMID$(Z$,21+R,1)=" "THENZC$=MID$(Z$,17+R,4):GOTO1075
1050 IFMID$(Z$,22+R,1)="-"THENZC$=MID$(Z$,17+R,5):GOTO1075
1060 IFMID$(Z$,22+R,1)=" "THENZC$=MID$(Z$,17+R,5):GOTO1075
1070 ZC$=MID$(Z$,17+R,6)
1075 FT=VAL(LEFT$(TIME$,2)):IFFT=<7ORFT=>14THENGOSUB1080:MF=0:RETURN
1080 RESTORE
1090 READZF$,N$,MF:IFZF$=ZC$THENRETURN
1110 IFZF$="END"THENN$=ZC$:RETURN
1120 GOTO1090
1130 DATA"AB1Q","Dan",0,"WA2YVL","Jon",0,"KA1SU","Jim",0
1140 DATA"K1EVU","Rich",0,"K3GUW","Jack",0,"KL7IJG","Lee",0
1150 DATA"KQ1L","Dave",0,"N1AHH","Ron",0,"W1TF","Ty",0
1160 DATA"WB1DSW","Herb",0,"W1KGZ","Uncle Dickey",0,"W4PAS","Dick",0
1170 DATA"W1TN","John",0,"K1MON","George",0,"K1WW","Ray",0
1180 DATA"K1UGM","Jim",0,"N1DL","Karl",0,"END","END",0
1190 PG=VAL(LEFT$(TIME$,2)):IFPG=>2ANDPG=<13THENO$="Sorry...Paging is disabled until after 8 A.M.":GOSUB5:GOSUB1560:GOTO360
1200 CLS:O$="Paging "+NA$+"...(for about 30 Sec.)":GOSUB5
1210 PRINT:PRINTZC$;" wants to chat...":PRINT:PRINT"Hit <G> to go online."
1230 FORI=1TO175:FORP=1TO10:NEXT:BEEP
1250 E$=INKEY$:IFE$="G"ORE$="g"THENO$=NA$+" is here now, go ahead. >>":GOSUB5:COMON:GOTO840
1260 NEXT:O$="I guess "+NA$+" is busy, but you could leave him a message.":GOSUB5:GOSUB1560:GOTO360
1280 ONERRORGOTO1300:OPENZC$+".DO"FORINPUTAS5
1290 O$=RT$+"*** You have mail. Use the <R> cmd to read it.":ONERRORGOTO900:GOSUB5:MW=1:CLOSE5:RETURN
1300 IFERR=52THENRESUME1310
1310 ONERRORGOTO900:RETURN
1320 ZA$=ZC$
1330 IFMW=0THENO$=RT$+"*** SORRY, NO MAIL":GOSUB5:RETURNELSERD=1:OPENZA$+".DO"FORINPUTAS5
1340 LINEINPUT#5,ZD$
1350 O$=CR$:GOSUB5:LINEINPUT#5,O$:DB$=LEFT$(O$,6):TB$=RIGHT$(O$,5):GOSUB1600
1370 LINEINPUT#5,O$:IFINSTR(O$,"<")THENZD$=O$:GOTO1350ELSEGOSUB5
1380 IFEOF(5)THENCLOSE5:IFZA$<>"ALL"THENO$=RT$+"*** Please delete your message(s) with the <K> cmd before you <D>.":GOSUB5:RD=0:RETURNELSERD=0:RETURN
1390 GOTO1370
1400 CLS:PRINT"Kill YOUR Mail?"
1405 E$=INKEY$:IFE$=""THEN1405ELSEIFE$="Y"ORE$="y"THENZC$=CA$:U=1ELSEINPUT"Kill whose";ZD$:GOSUB2030:ZC$=ZX$:ZX$="":U=1
1410 MD=0:KILLZC$+".DO":GOSUB1920:GOSUB2090:GOSUB2110:GOSUB670:GOTO50
1420 IFMID$(Z$,ZP,1)=" "THENZP=ZP+1:GOTO1420
1430 ZN=INSTR(ZP,Z$," "):IFZN=0THENZN=LEN(Z$)+1
1440 ZD$=MID$(Z$,ZP,ZN-ZP):IFINSTR(ZD$,"-")THENZD$=LEFT$(ZD$,INSTR(ZD$,"-")-1)
1450 IFMF=0THENZ$=Z$+" < "+ZC$:GOTO1470
1460 IFINSTR(Z$,"@")=0THENZ$=Z$+" @ "+ZC$
1470 S=1:OPENZD$+".DO"FORAPPENDAS4
1480 PRINT#4,Z$;" ";DA$;" ";TI$;"Z";RT$:IFMFTHENZ$="":IFMF=1THENGOSUB1580:COMON:GOTO90ELSELC=1:COMON:GOTO90
1510 COMON:O$="Enter Message, Cntl-Z to end:":GOSUB5:Z$="":GOTO100
1530 CLOSE4:OPEN"MESLOG.DO"FORAPPENDAS4:GOSUB2030:ZD$=ZX$:ZX$="":PRINT#4,ZD$:CLOSE4:MS=MS+1:GOSUB2120:IFMFTHENRETURNELSEO$="*** DONE":GOSUB5:RETURN
1540 IFMFTHEN1560ELSEO$="Hello "+N$+", Welcome to the NHNET Mini-PBBS in "+T$+".":GOSUB5
1550 O$="H for HELP, I For System Info; There are"+STR$(MS)+" Msgs On the System":GOSUB5
1555 O$="and"+STR$(FRE(0))+" bytes available.":GOSUB5:RETURN
1560 IFFRE(0)<1000 THENO$="** CAUTION - THE MEMORY IS FULL..PLEASE DO NOT ATTEMPT TO LEAVE ANY MESSAGES **":GOSUB5
1570 GOSUB130:O$=RT$+ZC$+" de "+CA$+" AT "+TI$+"Z ON "+DA$+": NEXT? - B,H,I,K,L,R*,S*,T,U >>":GOSUB5:RETURN
1580 O$=":"+RT$+":":GOSUB5:RETURN
1590 FORI=1TO600:NEXT:RETURN
1600 IFINSTR(ZD$,"@")=0THEN1630
1610 O$=" TR "+" TO "+" @ BBS "+" FROM "+" DATE "+" TIME":GOSUB5
1620 O$=" "+ZD$+" "+DB$+" "+TB$:GOSUB5:RETURN
1630 O$=" TR "+" TO "+" FROM"+" DATE "+" TIME":GOSUB5
1640 O$=" "+ZD$+" "+DB$+" "+TB$:GOSUB5:RETURN
1650 CLS:LINEINPUT"Callsign of Receiver? ";ZD$:GOSUB2030:ZD$=ZX$:ZX$=""
1660 OPENZD$+".DO"FORAPPENDAS4
1670 PRINT#4,"S "+ZD$+" < "+CA$+" "+DA$+" "+TI$+"Z"+RT$
1690 PRINT"Input Message.../EX to End (ON A BLANK LINE)"
1700 LINEINPUTI$:IFI$="/EX"ORI$="/ex"THEN1730
1720 PRINT#4,I$:GOTO1700
1730 PRINT#4,CR$:CLOSE4:OPEN"MESLOG.DO"FORAPPENDAS4:GOSUB2030:ZD$=ZX$:ZX$="":PRINT#4,ZD$:CLOSE4:PRINT"*** DONE":GOSUB1590:MS=MS+1:GOSUB2120:U=1:GOSUB2080:U=0:GOTO100
1740 OPEN"USELOG.DO"FORAPPENDAS4
1750 LC$=ZC$+" AT "+TI$+" ON "+DA$:PRINT#4,LC$:CLOSE4:RETURN
1760 RD=1:O$=RT$+"The proper Syntax is:"+RT$:GOSUB5
1770 O$="B - BYE <D> H - This HELP File":GOSUB5
1780 O$="I - System Information K - Kill YOUR Mail":GOSUB5
1790 O$="L - Msg Log listing R - Read YOUR mail":GOSUB5
1800 O$="R ALL - Read Msgs addressed to ALL R NEWS - Latest NEWS Tips":GOSUB5
1805 O$="S <CALLSIGN> - Send mail U - User Log listing":GOSUB5
1810 O$="T - Pages "+NA$+" for 30 seconds":GOSUB5:RD=0:RETURN
1850 COMSTOP:OPEN"MESLOG.DO"FORINPUTAS4
1860 LINEINPUT#4,O$:GOSUB1890:IFEOF(4)THENCLOSE4:GOTO1910
1880 GOTO1860
1890 IFINSTR(O$,ZC$)THENRETURN
1900 IFINSTR(BE$,O$)THENRETURNELSEBE$=BE$+O$+" ":RETURN
1910 O$=BE$:BT$=BE$:COMON:IFLEN(BE$)=<32THENRETURNELSEGOSUB5:BE$="NHNET Mini-PBBS Mail For: ":RETURN
1920 MM=0:MS=0:OPEN"MESLOG.DO"FORINPUTAS4:OPEN"MESLO.DO"FOROUTPUTAS5
1940 PRINT#5,CR$
1950 LINEINPUT#4,I$:IFEOF(4)ANDI$=ZC$THENGOTO1980
1960 IFI$=ZC$THENI$="":GOTO1950
1970 IFI$=CR$THEN1980ELSEPRINT#5,I$:MS=MS+1:IFZD$=CA$THENMM=MM+1
1980 IFEOF(4)THENCLOSE4,5:KILL"MESLOG.DO":NAME"MESLO.DO"AS"MESLOG.DO":RETURN
1990 GOTO1950
2000 O$="D":GOSUB5:RETURN
2010 O$="CONV":GOSUB5:RETURN
2020 GOSUB1590:O$=CHR$(4):GOSUB5:GOSUB1590:RETURN
2025 GOSUB1590:O$=CHR$(4)+"T":GOSUB5:GOSUB1590:RETURN
2030 Z$=ZD$
2040 FORX=1TOLEN(Z$):S$=MID$(Z$,X,1):IFASC(S$)>96ANDASC(S$)<123THENS$=CHR$(ASC(S$)-32)
2070 ZX$=ZX$+S$:NEXT:RETURN
2075 IFB=0THEN2080ELSE2095
2080 ZC$="XXX":BE$="BT NHNET Mini-PBBS Mail For: ":CLS:GOSUB1850:GOSUB1590:IFUTHENZC$="":RETURNELSEO$="BE 90":B=1:GOSUB5:ZC$="":GOSUB1590:GOTO100
2090 CLOSE:OPEN"COM:58N1E"FOROUTPUTAS1:OPEN"COM:58N1E"FORINPUTAS2:RETURN
2095 O$="B 0":GOSUB5:GOSUB1590:B=0:GOTO100
2098 GOSUB1590:GOSUB1590:FORI=1TO3:PRINT#1,CHR$(4);:NEXT:GOSUB1590:GOSUB1590:RETURN
2100 GOSUB1590:O$=CHR$(4)+"CONO OF":GOSUB5:GOSUB1590:RETURN
2110 GOSUB1590:O$=CHR$(4)+"CONO ON":GOSUB5:GOSUB1590:RETURN
2120 IFZD$=CA$THENMM=MM+1:RETURNELSERETURN
2600 ONERRORGOTO2620
2603 RD=1:OPENZA$+".DO"FORINPUTAS5
2610 LINEINPUT#5,O$:GOSUB5:IFEOF(5)THENCLOSE5:RD=0:GOSUB1560:GOTO360ELSEGOTO2610
2620 IFERR=54THENCLOSE5:OPENZA$+".DO"FOR OUTPUTAS5:PRINT#5,CR$:CLOSE5:ONERRORGOTO900:RESUME2603
2625 IFERR=52THENO$="*** FILE NOT FOUND ***":GOSUB5:GOSUB1560:ONERRORGOTO900:RESUME360
3000 IFM=0THEN3010ELSE3020
3010 O$="M ON":GOSUB5:M=1:GOSUB1590:GOTO100
3020 O$="M OF":GOSUB5:M=0:GOSUB1590:GOTO100
4000 IFCK=0THENGOSUB2100:CK=1:CK$="OFF":GOTO100
4010 IFCK<>0THENGOSUB2110:CK=0:CK$="ON ":GOTO100
5000 O$="DAY "+RIGHT$(DATE$,2)+LEFT$(DATE$,2)+MID$(DATE$,4,2)+TI$+RIGHT$(TIME$,2):GOSUB5:GOSUB1590:GOTO100