





                            f***!in' Hacker 2.0
                            ~~~~~~  ~~~~~~ ~~~

                            A 2AF Presentation

                           Written by: Hypnocosm

                          Released: June 10, 1987

                       "It's just a f***!in' hacker!"









AN OVERVIEW


  f***!in' Hacker is a code-hacking piece of software. Anyone who does not
know much about phreaking should NOT use this program. It is designed for
the experienced phreak as a tool to aid him in his telephone endeavors, and
to save him a little money in the process.

  f***!in' Hacker is written to be used with an IBM PC,XT or AT (or clone,
of course) with a Hayes compatible modem. It only supports up to 2400 baud,
but there's no real gain in hacking at speeds higher than 1200, anyway, due
to the lack of higher baud dialups, and the CPU speed limitations.

  f***!in' Hacker offers a wide range of capabilities. It has multiple dialup
hacking, using multiple targets, and even long distance hacking. (A feature
most other hackers are still lacking). It is not brute force program, but is
designed instead for the 'paranoid' phreak, living under ESS or worse, who is
in need of codes, yet must obtain them with as little risk as possible.
Hacking multiple dialups, sometimes through a LD service, with random target
numbers is the most risk-free way to hack. It gives LD companies little
indication that any hacking is taking place at all, and reduces your chances
of being 'traced' while in the act. Put it this way, no one I know has ever
been busted for using f***!in' Hacker ('FH', for short).

  To run FH, be sure the files FH.COM and FH.000 are in the logged drive
(or directory), then simply type 'FH <ret>'. FH will create any files it
needs as it runs, so leave the disk in the drive until you quit FH.


SETTING UP


  When FH first runs it will read in the configuration from disk. If these
files are not present, they will be created. You will then be dropped off
at the Main Menu. The menus in FH are all in the same format. To choose a
menu option, just use the arrow keys and press return when the option you
desire is highlighted. People with color monitors will see the highlighted
options in a different color than the rest of the menu. Monochrome display
users will see the options in two shades, high and low. If these two shades
are not apparent, adjust the level on your monitor until things become clear.


THE MAIN MENU


The options on the Main Menu are:

    Hacker -    Run the hacker. You must have configured the modem and
                extenders before this option will function.

    Scanner -   Yes, FH has a carrier detect scanner, also. It also requires
                some configuration.

    Terminal -  This is a VERY basic terminal routine in case you find the
                need. If you don't like it, use ProComm. This is a hacker,
                not a piece of communications software.

    Utilities - This is the option you will need to use first. It takes to to
                the Utilities Menu where you will spend most of your time with
                FH. This is the meat of the program.

    Quit      - Quit FH and return to DOS.

  As was stated before, to choose an option on the menu, highlight the option
with the arrow keys, and press return (or the space bar). The first thing you
will need to do is configure, so next up:


THE UTILITIES MENU


The options on the Utilities Menu are:

    Configure Modem   - Takes you to the modem configuration.

    Misc Parameters   - Lets you set the default command line parameters,
                        like Begin and End times, printer, I/O windows, etc.

    Edit Extenders    - This is where you design each extender configuration
                        individually.

    Edit Targets      - This is where you store and edit the targets.

    Edit Valids       - This is where the valid codes for use in LD hacking
                        are stored. You can have the hacker automatically
                        append good codes it finds, but they must be updated
                        and checked for validity.

    Extender Flagging - Allows you to flag any combination of extenders to
                        hack.

    Edit Exchanges    - This is where you enter the exchanges you want to
                        scan for computers to hack into.

    Exchange Flagging - Allows you to flag any combination of exchanges to
                        scan.

    Quit to Main Menu - Self explanatory.


                             Setting it Up to Run
                             --------------------

              First step is to go down to the utilities option and hit
         return.  Ok, now you are faced with a new challenge.  The
         Utilities menu.  Well, lets skip over the formalities and move
         on.  Go to the Configure Modem option (you should be on it), and
         hit return.  Ok, this is where you fix up the program to run
         on your system.  The arrow keys on the numeric keypad will flip
         you around on the possible options. If you don't have a numeric
         keypad, well then you have a lousy keyboard, but you can still hit
         the letter corresponding to the option and end up in the right place.
         Hit return or the space bar to edit that option.


         A) ComPort:

             Set the ComPort to 1 or 2 with the arrow keys.

         B) Maximum Baud:

             Set the baud to the maximum baud your modem can handle. This
             baud rate will NEVER be exceeded no matter what some other setting
             is on. (Extenders and targets have their own baud rates... gee.)

         C) Local Dialing:

             This can be set to tone or pulse.  It is sets what mode of dialing
             the program will use to dial out of your home dialtone. Everything
             will henceforth be dialed in tone. Just in case your system can't
             handle DTMF...

         D) PBX Dialing:

             This is for those of you calling out from a pbx system.  If you
             are, you simply put 'Yes' for that option and then go down one and
             enter the digit (or digits) that you must hit for an outside line.
             If you are not calling from a pbx then you need not worry about
             the Outgoing Digit.

         E) Outgoing digit:

             This is valid only if the above option is set to 'Yes'. It is the
             numbers dialed locally (in pulse or tone) to get a local phone co
             dialtone. In most cases this will be a '9'.

         F) Initial String:

             This is a 'modem command string' which you define. Be sure it is
             valid if you want the hacker to initialize properly. It is there
             for your commands to the modem just to make using the program a
             little better. I would suggest putting the dialing speed and
             advanced command set (if your modem has them (X6)) in here. An
             example string would be: 'ATX6S11=47' which would set your modem
             to detect busy and voice on the line, and dial with a 47 millisec
             delay. If you can't think of anything useful to put in here, just
             set it to 'AT' so the program will initialize properly.

                * NOTE The program sends TWO initialization strings to the
                  modem. The first sets the response codes to numeric, turns
                  off the echo, etc. The actual command string sent is:

                         ATM0H0E0V0Q0S0=0S7=90

                  If the second string you specify counteracts any of these
                  commands the modem will NOT initialize properly and you
                  could be bothered with a lot of headscratching. Do NOT
                  set the Initial String to 'ATZ' or anything using a command
                  in the above string. Use it for dialing speed, or to turn
                  on advanced response codes (such as voice and busy detect).
                  If you are using a 1200 baud modem, that does not support
                  these extra features but needs a command to let the modem
                  return a CONNECT 1200 you will need to set this string to
                  'ATX1' or something. The first built-in initialization
                  string is not user modifiable. If your modem has trouble with
                  some of the commands in it, you may still get things working
                  the hard way by modify the COM file itself so that it will
                  have this built-in string set to something your modem is
                  compatible with. I don't suggest doing this if you don't
                  understand exactly how to go about it. And if you DO modify
                  the COM file (hey, it's yours!) PLEASE do not copy it for
                  anyone else. I think you understand why...

         G) Dialing Delay:

             This can either be Time Delay or Dialtone Detect. Dialtone Detect
             is for those of you who have modems that use the advanced command
             set {W,@} (such as USR's).  The Timed Delay is just that. Dialing
             is done with a timer counting off the seconds. I suggest that you
             use Timed Delay even if your modem supports the advanced command
             set, because different modems and different serial ports tend to
             give different results, and it is better to stick with a sure
             deal.

         H) Modem Type:

             You can set this for either External or Internal.  Meaning if you
             have an internal modem you set it to Internal, and vice versa.
             This is there cause it seems that people with internals have major
             problems with all the other programs of this sort.  We fixed that.
             Don't matter where the modem is, in or out, just setting it for
             the correct type will get you on your way. The program will work
             on some internals whether you set it to Internal or not, but it
             will hack more slowly. If the modem has trouble hanging up set
             this option to Internal

         I) Speaker:

             This just toggles the default for the speaker being on or off.
             The program will run silently with this option set to off.
             Nothing dramatic.

         J) Response codes:

             Finishing off the options is Response Codes.  Response Codes
             brings up its own menu.  There is a list of 12 things.  The first
             11 being the different messages you modem sends to the terminal.
             And the number next to them is the numeric code that the modem
             sends which stands for the message.  Understand? For some reason I
             don't think that is too clear, so let me explain it this way: when
             your modem receives a command string and is able to execute it
             without error, it sends you a numeric code that means "OK".  The
             standard number for "OK" is 0, thus that is what we have the "OK"
             response code set to.  When you get this it will be set to the
             defaults for a USR Courier, which are standard response codes, so
             unless you are using some 6th party modem that you bought from
             the Libyan black market, these should work for you. (But to make
             sure, look up what your response codes are in the owners manual
             for the modem).

                 * NOTE There is no reason to change any of the response codes
                   if your modem simply does not have messages like VOICE or
                   BUSY, etc. Since your modem will not be returning these
                   codes, the program will function normally, never having
                   to deal with the codes being sent. However, you MUST change
                   these numbers if the messages that ARE sent by your modem
                   do not match the codes listed here. For example, if your
                   modem returns an '8' every time it connects at 1200, you
                   will need to set the CONNECT 1200 code to '8' instead of
                   '5'. This is rare, and you will most likely never have
                   to touch this section of the program. Remember, DO NOT
                   change these codes around if the messages your modem DOES
                   return are matched to the right response code. It doesn't
                   MATTER if the VOICE has a response code set for it. If your
                   modem never sends that response code, you will not have to
                   worry about this section at all.

         K) Quit to Utils:

             The 12th command is Quit, it simply brings you back to the
             Utilities menu.  Now go back to the Utilities menu, and we can
             continue with your lesson.


                            Miscellaneous Parameters
                            ------------------------

            This section is where you can set the defaults for the Command
         Line Parameters, or change the values of these parameters while
         running the program. The Command Line Parameters make it easy to
         tell the program what to do without having to flip through menus.
         It also makes it very easy to run the program from batch files.
         (I know of a BBS that every few days, early in the morning, quits
         the BBS program to a batch file which looks for a certain errorlevel
         and runs FH using these parameters to set the quit time etc. and then
         returns to the BBS, as if nothing ever happened.) Here are the
         parameters and what they mean. (For info on how to use them from the
         command line, type "FH ?" for the syntax). You need not use any
         command line parameters to set values which are saved as defaults.
         You need only use them if you want something changed from the default
         value you have chosen.

         A) Vacation Dialing:

             This option is used in conjunction with the begin and end
             times for the hacker. When this is enabled, the program will
             hack until the end time, and then wait until the start time
             AGAIN to begin hacking, over and over. Use this if you are
             away for a week or two, and set it to hack, say, between the
             hours 13:00 and 17:00. (Don't hack late at night if you can
             help it, there's less switchboard traffic, and a better chance
             of some operator noticing the bad codes being dialed.)

         B) I/O windows:

             This just turns on or off the scrolling input and output display
             on the top of the hacking and scanning screens. Some people
             think it looks neat, others think it slows things down. But you
             can turn it on or off as you please.

         C) Printer:

             Setting this value to ON will result in having all good codes,
             or carriers found with the scanner to be dumped to the printer
             as they are discovered.

         D) Quit to DOS:

             This options tells the hacker or scanner to drop to DOS when the
             end time is reached. This allows a batch file to pick up from the
             DOS prompt and go wherever you want it. No errorlevels are used
             to pass messages to the batch file, but if you can think of
             something you want passed, let me know and I'll put it in.

         E) Start Time:

             This is the time you want to begin hacking, or scanning. It
             will be used for either option. Enter the time in 24hr military
             format.

         F) Quit Time:

             This is the time you want the hacking or scanning to stop. If you
             have the Quit to DOS enabled, the program will exit to DOS when
             this time is reached. Or if Vacation Dialing is enabled, when
             this time is reached, hacking or scanned will cease, and a
             message "Waiting until XX:XX (start time) to begin hacking/
             scanning" will appear.

         G) Quit to Utils:

             Sends you back to the Utilities Menu. You will be asked if you
             want to save the values you have entered here as defaults. If
             you want these values to be the same every time you run the
             program, answer "Y", if however, you liked the defaults you had
             before, and you just want to change something this one time,
             answer "N".


                       Adding/Editing/Deleting Extenders
                       ---------------------------------

              Now what you will want to do is add some of your local dial-
         ups to the Extender file.  So go to the Edit Extender option and
         hit return.  Now you should have a big window in the middle of the
         screen which has all the things you can modify for EACH extender
         in it.  What you want to do is look above that, at the command
         line.  That is your menu of possible commands.  You switch between
         the extender that you can edit by hitting the arrow keys as is
         said on the command line.  If you feel you want to modify one of
         the extenders (that is in the EXTENDER.DAT file that comes in the
         original ARC) or one that you have added ('A'), just hit the arrow
         keys till it says it is on the number you want to edit, and type "E"
         (for edit) to edit it.  You can flip through the different things
         and change them... well, I might as well go over them NOW, so here
         goes.


         A) Area Code:

             This one is simple enough.  Put the area code for the extender
             right here.  Enter this even if the number is local and the area
             code should never be dialed. It won't be. But the information is
             necessary when dialing through valid codes. Understand?

         B) Number:

             Another easy one.  As you might think, this is where the phone
             number to the 'service' you wish to hack. This should be 7 digits
             long. If you wish to enter a range of numbers, hit return after
             entering the first number of the range. A dash will then appear
             and you may enter the LAST number in the range. Any number
             within and including these numbers will be hacked. If you do not
             want to enter a range, simply hit return after the dash and all
             will be well.

         C) Dial Mode:

             This one can be set to either Local or Long Distance.  If set to
             Long Distance, it will dial through an extender with a good code
             in VALID.DAT (we will talk about adding good codes to it with the
             Edit Valids option in a little while).  And if it is set to Local
             it will simply dial the extender straight. A good use for Long
             Distance is hacking long distance services and calling some of
             the 950s and PBXs that you don't want to show up in your record.

                   *NOTE:  When hacking 800's it will AUTOMATICALLY
                           add 1800 to the extender while dialing, so you
                           don't need to mess with anything, just set the
                           area code to 800.

         D) Maximum Baud:

             This lets you set the highest baud rate the extender can support.
             This is the highest speed that the extender can handle.  Usually,
             an extender can handle ANY baud, but there are a few exceptions
             (if it is a noisy service, your chances of connecting at 300 are
             better than at 1200 or 2400). Whatever this baud is set to, it
             will never exceed the baud rate in the Modem Configuration.
             This option is linked with E) Minimum Baud.

         E) Minimum Baud:

             This lets you set the lowest baud rate the extender will be
             hacked at. (Targets with baud rate limitations will be taken
             into consideration when matching extenders with targets, so
             do not concern yourself with possible target baud rate
             conflicts.) When dealing with extenders that send 'fake carriers'
             you can set this value to something higher than 300 to overcome
             this problem. This may not always work, but it is usually
             successful.

             This is the digit you must hit in order to get an outside line,
             and it is dialed AFTER the code. The typical Outgoing is 9, but
             it could be anything else, it all depends on the system.

         F) Tone detect:

             This is used in conjunction with the Dialtone Detect in the
             Configure Modem section.  If you have it set to ON in the
             Configure Modem section, then you can use the option here to set
             it on or off for each individual extender, since not every
             extender gives valid dialtones. This option only applies to
             modems which support the dialtone detect feature. ('W').

         G) Answer Delay:

             This is the delay that comes AFTER the extender, and BEFORE the
             code.  It is suggested that you set the speaker on, or listen on
             an extension, and test out the Delay to make sure it is allowing
             enough time for the Extender to answer before it dials the Code
             (if you have option F set to ON, it won't use this delay, it will
             wait for a dialtone before continuing).

         H) Target Delay:

             This is the time that the program will wait for a carrier before
             hanging up the modem and going on to the next try.  This timer
             starts when the target is finished dialing.  Again, you might
             want to turn on the speaker, or listen on an extension, and see
             if this Delay is long enough (meaning the target has time to
             answer before the Delay runs out (of course you will have to set
             option N to a code you know is good, so that you can test the
             Delay)).

         I) Target Prefix:

             This will be dialed before the target, and after the code.  You
             can put commas and W's (for Dialtone Detect) in it.

         J) Code First:

             This one is either Yes or No.  If Yes, then the after the
             Extender is dialed, the Code will come before the Target, but
             on the other hand, if it is No, the Target will come before the
             code.

         K) Hack Mode:

             This is a three possibility option.  It can be Random (which
             picks codes to try COMPLETELY randomly (like the Lottery)),
             Sequential (this is as it sounds, if the code is 382, then next
             one tried will be 383, and then 384 and on like that), and Both
             (this one picks the codes in a sequential order, but the
             increment of the code is random).  So set it according to what
             you feel will do the best in your situation.

         L) Code Length:

             Oh good, an easy one.  This value is how many digits are in the
             code. If the Code Template is being used, this value is ignored.

         M) Code Template:

             This is easily the most complex and powerful option when it
             comes to code generation. This option overrides the code length
             (If this space is blank, codes will be generated according to the
             length entered, but if this option has ANYTHING entered, the code
             length is forgotten, and codes are created according to this
             template, so be careful when devising it.) It works like this.
             You make a string consisting of the digits 0 through 9, the X
             character, the comma (,), and the W character (for dialtone
             detection.  Any numerical digits (0-9) in the template will be
             present in EVERY code generated in the exact same position. Any
             commas in the template will not be in the place of a code digit,
             but will act as a pause when dialing the code (some systems have
             a second dial tone for the second half of the code, etc.) The X
             character signifies a variable digit. Entering a code template
             like 'XXXXX' would be exactly the same as setting the code length
             to 5 and leaving the template clear. The Hack modes apply here
             also. Some sample templates would be: 'XXXX,9,' would be useful
             if you want to try making a template to hack a PBX (instead of
             using the PBX mode of hacking) it would send a 4-digit code, wait
             for two seconds, send an outgoing 9 and wait for two more seconds
             before dialing the target. Or perhaps '1301XXXXXXX' would hack
             calling cards in the 301 area. The code template (except for the
             X's) is entered EXACTLY as the code is sent to the modem dialing
             command string, so be careful with it.

         N) Starting Code:

             This is the Code it will use the next time that this extender is
             used.  You can modify it in order to test out the delays that
             you are responsible for setting. By entering a good code here,
             so that you KNOW that you should make it all the way through to a
             CONNECT of some sort, you can see if you have timed everything
             accurately. This code should match the code template if you have
             set one (rare actually, most extenders are straightforward) and
             commas (,,,,) are legal in the code. If the extender depends on
             the code template, you must make the starting code match the
             template since the first code is not generated by the template.

         O) Code File:

             This is the name of the file that the good codes that are found
             for that particular Extender are stored in. We suggest you keep
             it at the default for the extender (the extender + .COD), but
             feel free to make it whatever the hell you want. If the extender
             dialed is part of a range, the code file will be set for each
             number in the range, and there is nothing you can do here to
             change it.

         P) Add valids:

             If you are real sure about this extender set this option to Yes
             and every good code found will be added onto the VALID.DAT file
             where good codes are kept. These codes are used to dial long
             distance extenders, and the timing here is critical. The target
             delay on the valid code must be set PERFECTLY for this to work
             and unless you have Dialtone Detect enabled on the extenders you
             dial Long Distance it is not recommended that you use this option.
             It does save you a little trouble though.

         Q) Note:

             Another easy one.  This is a little string of text that you can
             use like a small notepad for something about a particular
             Extender.  We use it for what the name of the service is, or who
             owns it.  Nothing real important, but handy, nevertheless.

         S) Flagged:

             This is an important one.  When hacking, the program randomly
             picks which extender to hack for the next pass.  If this is set
             to No, then it won't be included in the computers choice of
             extenders.  Thus, if you don't want to hack a certain Extender,
             set this to option to NO, otherwise, make sure it is Yes if you
             want to hack the Extender.  There is another option at the
             Utilities Menu that allows you to flag/un-flag every extender
             in the Extender file and it is much easier than flipping through
             each extender and changing it. When you A)dd a new extender this
             value defaults to NO and you must remember to flag it if you want
             to hack the extender immediately.

         T) Quit:

             This returns the cursor to the Command line, and you can
             continue on from there.


              Now that you have thoroughly learned all that, you must know that
         that if you use the "A" command from the Command Line, you MUST
         enter the Area Code, Number, and Code Length before you can hack it
         (I mean be real, how can you hack an empty string? eh?).  You must
         also know about Deleting an Extender.  If an extender is not longer
         in service, or you just don't want it in your list anymore, then hit
         the proper arrowkey, until you see that Extender on the screen. Now
         what you want to do it hit "D" for Delete Extender.  It will prompt
         you for a Yes or No, as to whether or not you want to delete it, and
         if you type "Y" it will be removed form the list, otherwise, it stays
         in the list.



                            Edit/Add/Delete Targets
                            -----------------------

              Edit Targets is the third option on Utilities Menu.  When you
         choose it, it will clear the screen, and do just as it does for
         Edit Extenders, except that the window in the middle of the screen
         is smaller, because it doesn't store as much info as EXTENDER.DAT
         does.  But anyway, the Command Line is the same, and so are the
         Commands (duh huh!).  In this window you should see four things:

         A) Area Code:

             Simply put, this is the area code for the target in B.

         B) Number:

             This, of course, is the target.  Not much else you can say
             about it.

         C) Extra Delay:

             This is used in conjunction with Target Delay in the Edit
             Extender routine.  This value (in seconds) is added to the
             Target Delay time for whatever extender you are hacking.  Its
             main use is for LD Targets.  I mean if the target is Long
             Distance, it might take X more seconds for the call to get
             through, thus Extra Delay = X. If this option weren't around,
             it would be impossible to make all the extenders work with all
             the targets. The default value is zero an unless the target
             takes an unusually long time to answer (say it's in British
             Columbia or something) the value should remain at zero.

         D) Maximum Baud:

             This is the MAXIMUM baud at which the Target is capable of
             answering at.  The program compares the Max Baud from the
             Configure Modem, Edit Extender, and Edit Target (this one),
             and will initialize and hack at the LOWEST of those speeds.
             I believe that to be self explanatory, so I wont explain.

         E) Minimum Baud:

             This is the MINIMUM baud to use with this Target. This is
             usually set to 300, but if you happen to find a target that
             won't connect at 300, set it to something higher. Remember,
             no matter what you set the bauds in the extenders and targets
             to, the program will never exceed the baud rate in the Modem
             Configuration.

         F) Quit Edit:

             This option just takes you back to the Edit Target Command Line.


              Just as you "A"dd and "D"elete in the Edit Extender routine,
         you do here.  It is all the same, so no need explaining it.  Now
         on to better things.



                             Edit/Add/Delete Valids
                             ----------------------

              Ok, this is the fourth option on the Utilities Menu.  Lets pick
         it.  You will see the all familiar clearing of the screen (but for
         the border), and the Command Line will appear at the top along
         with a small window.  This one is for Valid Codes.  These are used
         to dial an extender that is marked as Long Distance.  You may want
         to add a lot of these if you are doing some LD hacking.  The
         different fields are as follows:

         A) Number:

             Ok, this is a number to an extender.  That's all. Oh, use common
             sense, of course it must be local or an 800.

         B) Code:

             This is a VALID code for the above number. If a code template was
             used with this extender, use the proper commas or W's in the
             valid code.

         C) Dial Code First:

             Ok, this is another one of them Yes and No options.  It works just
             like the Dial Code First in the Edit Extender routine.  Read about
             it if you didn't bother already.

         D) Answer Delay:

             As you would think, this is the SAME as the Answer Delay in the
             Edit Extender routine, PLEASE look at it if you haven't already,
             or if you have forgotten already.  Thank you.

         E) Target delay:

             This is how many seconds to wait after dialing the target number
             (which in this case is the extender you are hacking) before
             dialing the code. Since most extenders time out if no code is
             dialed after a certain period of time, this length must be set
             VERY precisely. Dialtone detect is recommended.

                   *NOTE:  It is added to the answer delay for whatever
                           Extender you are using.  I actually recommend
                           you set this to 0 and modify the Answer Delay
                           in Edit Extenders, for the Extender you are
                           using.

         F) Quit Edit:

             This is like every other Quit that is in the program, it takes
             you back to the previous menu (in this case, back to the Command
             Line).

              Now as you find more good codes, you are going to want to put
         them in this list.  Well, that is rather simple, just type "A" for
         Add, and then input the information needed.  Also, the codes that
         you have put in there are going to go bad some time, so you will want
         to delete them.  This, once again, is rather simple.  Just type "D"
         at the Command Line, and hit "Y" when it asks for confirmation of the
         deleting.



                                 Flag Extenders
                                 --------------

              Ok, the next routine of the Utilities Menu is Flag Extenders.
         What this allows you to do is toggle the flag on each Extender,
         so that it will (or will not) be used while hacking.  The screen
         should clear, and a window will appear in the middle of the screen.
         This menu will have a list of the Extenders in your extender file,
         along with a "Quit" option, which returns you to the Utilities Menu.
         If you have a lot of Extenders, they wont fit on the screen, so it
         gives you more options.  They are "Next Screen" and "Previous Screen"
         and they will be up as options according to how many Extenders you
         have, and what 'screen' of them you are looking at.  You may use the
         PgUp and PgDn keys to choose the Next and Previous screen options
         instantly. But anyway, you move down until you are on top of the
         extender you want to flag (or un-flag as the case may be), and hit
         return.  If an arrow is pointed at the Extender, it is Flagged,
         otherwise it is not.

                   *NOTE: To save me some time, I'll mention right now that
                          the Exchange Flagging option behaves exactly like
                          this one, but it flags exchanges to scan instead of
                          extenders to hack.



                                Edit Exchanges
                                --------------

            This is where you enter in the exchanges you want to scan for
         carriers with the Scanner. The editing system here is very similar
         to the Extender Editing. I'll assume you all understand how CD
         scanners work and simply give you the explanation of the info you
         must fill in for each one:

         A) Area:

             This is the Area code for the range you are scanning. Enter
             if even if it isn't long distance, just so it looks good.

         B) Exchange:

             This is the first three numbers in any number dialed in this
             range. It is often referred to as the prefix.

         C) Start:

             Here is where you complete the phone number where you will
             start scanning. You enter the last four digits of the FIRST
             number you want to start dialing. This number will increase
             as the scanning progresses.

         D) Quit:

             This is the last four digits of the LAST number to dial.
             If you want to scan the numbers 301-321-0000 to 301-321-9999
             you would enter 301 in the Area (option A), 321 in the Exchange
             (option B), 0000 in Start (option C) and 9999 in Quit (this
             option). Is that confusing enough? Just wait.

        E) Dial Mode:

             This tells the program whether the exchange is long distance or
             local. Use the arrow keys to choose one or the other. If the
             number is local, only the exchange and last 4 digits (start) will
             be dialed to call the number. If it is long distance, then the
             call will first go through a service in the Valid Codes section,
             then dial the area code, exchange and last 4 digits.

         F) Timeout:

             This is a value in seconds that tells the Scanner how long to
             wait for a carrier after each dial. You can set this to anything
             you like, but I recommend about 12-15 seconds for local numbers
             and anywhere from 20 to 30 for long distance exchanges.

         G) Flag:

             Yes, you can flag exchanges the same way you flag extenders to
             hack. You may only want to scan one exchange at a time, or all
             or just a few. It's up to you. You can set the flag on or off
             at this menu, or use the Exchange Flagging (next option on the
             Utilities Menu) to flag any combination quickly.

         H) Quit Edit:

             Sends you back to the Utilities Menu, saving all changes made.


                               Quit to Main Menu
                               -----------------

              Not only does this return to the Main Menu, so you can move
         on to better things, but if you edited something, and that routine
         didn't save it to disk, it is saved here (though most everything is
         saved the second you finish editing it).  Well, time to hit this
         option and return to the Main Menu to continue your tour.


                               The Hacking Screen
                               ------------------

            Here is an explanation of what all that s***! on the hacking
         screen means.


         Status   :  This is what the program is doing, and what is going on
                     in response to it.

         Dialed   :  This is the number of attempts you have made since you
                     started.

         Success  :  The number of Good Codes found is here, along with your
                     ration of Dialed vs. Successes (since started hacking).

         Baud     :  This is the baud the program is working at during the
                     call.  It is determined, as I said before, by the lowest
                     rate between the Modem Max, Extender Max, and Target Max.

         Hackmode :  This is just what the Code Generation is for the Extender
                     you are hacking at that moment.

         Extender :  Number of the Extender you are hacking on.

         Number   :  The phone number of the Extender.

         Note     :  This is the Extender Note we talked about earlier.

         Code     :  The code that it is trying is shown here.

         Attempts :  This is the total attempts you have made with the
                     extender you are hacking.

         Success  :  This success is for THE EXTENDER, not for all calls
                     that have been made since hacking has begun.

         Target   :  This is the phone number of the Target that it is using
                     to connect with.

              There are two others that you only see when you are hacking
         Long Distance, they are:

         Using :  One of the Extenders in the file VALID.DAT.

         Code  :  The Code that goes along with the above Extender.

              There are a few other things you should notice.  In the top
         right corner of the screen, there will be a timer that counts down
         the delays.  In the top left corner is the time and date (you should
         have noticed that by now).  Below the window there is a small list of
         commands.  They are just as they say.  Hit "S" to toggle the speaker
         on/off, hit the space bar to cycle onto the next pass, and hitting
         the escape key will abort hacking and return to the Main Menu. If you
         set the program to quit to dos, and aborted with a keypress, the quit
         to dos option will be ignored. That is really all there is to it,
         so lets have our closing remarks.



                                    Quit to DOS
                                    -----------

              If you pick this option, it will do as it says. After the time
         for Hacking Quit time has rolled around, the program will stop
         hacking, leave the Hacking Window, show you the credits, CLEAR the
         screen, and Quit to DOS where a batch file can regain control and
         dump your codes to the printer or whatever you want it to do. This
         option was put in because someone wanted to hack all night until 6 AM
         when his parents woke up, but didn't want the Hacker to be on the
         screen. They b****!ed that he left the computer on, but were none the
         wiser. Although this situation may not apply to you, the usefulness
         of having a batch file take over after running the Hacker justifies
         this option.



                                 Idiosyncrasies
                                 --------------

              Every program has its own 'quirks', so I will inform you of the
         ones this program has.  Well, I wouldn't exactly call them 'quirks'
         it is more like little unmentioned things that you can do, and tips.

                You can hit any arrow key to flip around most menus, unless it
                says otherwise.  You can also type the # (or letter) of the
                option, and it will be highlighted.

                Hitting ESC will move you back to the previous menu.

                Keypresses are buffered like hell, so if you think you
                didn't press it hard enough, wait a second or two to
                be sure before you punch that bad boy again. Sometimes you
                will be surprised to find yourself flipping wildly through
                the menus.

                If the Quit to DOS option is enabled on the Scanner or Hacker
                it will only drop to DOS if the program finishes Hacking or
                Scanning by means of the timer or (in the case of the Scanner)
                if the last number is dialed. Aborting the Hacker or Scanner
                with a keypress will disable the Quit to DOS option.

                Hitting the space bar in any of the editmenus will allow
                you to change that option (just as if you hit return).

                The Home, End, PgUp, and PgDn keys serve their familiar
                functions in most places. On the menus they jump from top
                to bottom and bottom to top, and when at the Edit Command Line
                they will jump to the first or last extender,target,valid
                or whatever. Try 'em out.

                If you need to change the .DAT files around, sometimes it
                is quickest just to delete the whole godd***! thing. (For
                example: you f***!ed around with the Response Codes, and
                forgot what to set them back to...) The program will create
                a new file if it finds one missing, and make the first
                record the default values for whatever the file is. (So if
                you deleted CONFIG.DAT, when you run the program again, it
                will say CREATING CONFIG.DAT, and you will have to go and
                configure for your modem. However the response codes will
                be set to their default values...) Don't be afraid to delete!

              WOW.  I could have sworn there were more little things. Well,
         if I forgot anything, I am sure you will figure em out. This is it,
         so go tear em up, eh?
   

TERMS


  Some of the terms you will encounter while you use FH may need some
explanation, so here's a small glossary of terms:


  CD

    Short for Carrier Detect. CD is what the Hacker uses to detect valid
    codes, and what the Scanner is scanning for.

  COMMAND LINE

    The DOS prompt where you type FH to run the program. The parameters
    you type after FH are used to set temporary values for the information
    in the Miscellaneous Parameters Menu.

  EXCHANGE

    The first 3 digits of a local phone number are referred to as the
    exchange. The scanner in FH scans 'exchanges.'

  EXTENDER

    A dialup for a LD service. This is the number people call to enter their
    access code in order to make a LD call.

  FAKE CARRIER

    Some extenders issue a fake answer tone to deter code hackers. This can
    often be overcome by hacking the extender at a different baud rate than
    the answer tone is designed for. The baud rate can be set individually
    for each extender, often enabling you to 'beat' fake carriers.

  I/O WINDOWS

    When hacking or scanning, the modem input and output can be displayed
    sequentially on the screen in two windows. The output to the modem is
    displayed in a 20 byte window on the upper left of screen, which scrolls
    from right to left as more output takes place. The input from the modem
    behaves in the same way, but on the upper right of the hacker/scanner
    screen.

  LD

    Long Distance. A number that is out of your local dialing area.

  PBX

   Private Business Exchange. A PBX is a phone system that is for the
   exclusive use of a business or institution. These are the kinds of
   phone systems where you have to dial a 9 (or something) to get an
   'outside line.' These systems apply to FH in two ways. The first is
   hacking from within a PBX system. FH is capable of doing this, by
   dialing the 'outside line' code before it dials the extender, valid code
   or exchange. PBX systems sometimes have a line with which you can call
   into the PBX system, enter a code, and have access to the 'outside line'
   without even being present at the PBX itself. The Code Template can
   be configured to hack PBX systems.

  TARGET

    When FH 'hacks' a code it dials an extender, enters a random code,
    and then dials a target number. The target number must be one that
    answers with a carrier. If FH gets a CONNECT message, the code dialed
    must be valid. (However, see FAKE CARRIER).

  VALID

    This is the term FH uses to refer to a 'good code' stored in the file
    VALIDS.DAT. FH uses these valid dialups/codes to hack long distance
    extenders, or to hack local extenders without the threat of ANI.













                            Documentation Written by
                        The Raving Lunatic and Hypnocosm

                           with Inspirational help by
                          Adrian Belew, and Sweet Leaf

                      Discipline is not an end in itself,
                         but merely means to an end.
                           Or something like that...

                       This has been a 2af presentation.


