                                   Beep

                           Version 1.2 - 16/02/99

                  Copyright (C) 1999 by Quentin J. Christensen

"Beep" is a small FREEWARE DOS utility which will beep at a specified frequency (in hertz) for a specified time (in milliseconds). It can be useful to use in a batch file to indicate an error, or even to make simple music :) 

Beep will work fine under all windows shell environments, including windows 95 (I haven't tested it under win98, os/2 or any DOS command interpreters except MS-DOS 5.0 and up, but it should work under most of these, please let me know if you have any problems with it) 

The files which are included in the original 21.9k zip file are: 

                    BEEP.EXE - The program itself. (17.1k unzipped)
                    BEEP.TXT - These instructions. (7.5k unzipped)
               FILE_ID.DIZ - Short description of "beep" (<1k unzipped)
          MARY.BAT - batch file to play "Mary had a little lamb". (<1k unzipped)
     MARY.BAT - Alternate batch file to play "Mary had a little lamb". (<1k unzipped)

To use Beep simply place the beep.exe file somewhere and run it! None of this windows installation and registry and what have you rubbish, just run it! 

Command line switches: 

I have added support for command line switches which gives you more control over what Beep does. You may use any combination of these switches, in any order (as long as you seperate them with a space, or course), or none of them at all. Simply add the switch(es) after the program name on the command line. 

Here is a list of all the command line switches Beep accepts: 

/C
    Clear any text printed by the /P and /V switches after beeping.

/Fn
    Beep at the specified frequency where 'n' is a number representing a value
    in hertz, /F500 will beep at 300 hertz and is the default value.

/H[-|+|++]n[@|#]
    Harmonics, play a specified note, 'n' specifies note A - G, prefix of '-' denotes octave below
    middle C, '+' is octave above middle C and '++' is two octave above middle C, no prefix uses
    the octave containing middle C.  '@' denotes a flat note (one semitone below the specified
    note and '#' denotes a sharp note (one semitone above the specified note).  EG:
        /HC = Middle C
        /H-A# = A Sharp in the octave below middle C
        /H++D@ = D Flat, two octaves above middle C
    Some 'illegal' combinations are allowed, eg /HE# (E sharp, or F).

/K
    Keep beeping after program ends.  useful if you call beep several times in a batch file and
    want the beeps one after the other, without the 'staccato' effect you get without this
    switch - just remember NOT to use this switch the last time you call beep, or it won't stop!

    If you do accidentally end up with continuous sound coming from the PC speaker, either from
    using the /K switch, or from another program crashing while playing music through the PC
    speaker, just type 'beep' at the command prompt, and the program will end the sound.

/Ln
    Beep for the specified number of milliseconds where 'n' is a number of
    milliseconds. /L300 will beep for 300 milliseconds and is the default value.

/N
    Print a new line after beeping, useful in batch files.

/p'message'
    Display the quoted 'message' (displays without quotes and you can have
    spaces in message). 

/R
	Rest, play no sound for the period specified by the /L switch

/V
    Verbose mode, display "beeping at ## Hz for ## milliseconds".

/?
    Bring up a help screen, showing the syntax of beep. 

Using no switches is the same as typing: 

    Beep /F262 /L500
		or
	Beep /HC /L500

ie: a 262 hertz beep (Middle C) for 300 milliseconds. 

I have included a small batch file, mary.bat which will use beep to play Mary
had a little lamb, this should also give you an idea of how to use the switches. 

Note that when using switches, '-' can be used rather than '\' if you prefer,
and the switches are not case sensitive. 

I would recommend putting beep somewhere in the path since then you just need to
type 'beep' when you want to run it, rather than 'c:\beep\beep' or whatever. 

The path statement should be in your autoexec.bat file, in the root directory of your startup
drive (ie: c:\). If it's not and you'd like to add a path statement (which is pretty useful -
every time you type something on the command line, the computer looks in the current
directory and then in the path for a program with that name), add this line somewhere in the
autoexec.bat file in the root directory of the c: drive: 

    PATH=c:\dos;c:\path;c:\mydir

Where the paths above (c:\dos and c:\path and c:\mydir) can be replaced by any paths to
programs you use often, this means that programs in these directories can be run from any
directory on the computer, although for some programs you have to actually be in their
directory for them to work properly. 

Version History: 

    1.2 The current release - 21/7/99:
        - Added switches:
            /K               - Keep beeping after program ends
            /H[-|+|++]n[@|#] - Harmonics (see above for explanation)
			/R				 - Rest, play no sound for the period specified by the /L switch
		- With no switches, Beep now emits a Middle C (262Hz) for 500ms, also fixed the
			documentation for this, which was wrong before anyway :)
        - Cleaned up code (not that you care :)
		- Corrected a few errors and omissions in the documentation.
    1.1 - 16/2/99:
        - Added switches:
            /C - Clear any text written with /V or /P switches after beeping
            /N - Put in a new line after beeping
            /V - Verbose - print 'Beeping at ## Hz for ## milliseconds'
    1.0 The original release - 29/10/98
        - Included switches:
            /F#      - Beep at a specified frequency (Hz)
            /L#      - Beep for a specified length (milliseconds)
            /P'text' - Display text (can use spaces, must use quotes)
            /?       - On-Screen help.
        - It beeped...

"Beep" is email-ware, that means that you can freely distribute the program, and all I ask is
an email to let me know what you think, wether you like it or not, if not, what you don't like
about it, how I can improve it etc...

DISCLAIMER: "Beep" comes as-is, I take no responsibility for any adverse effects caused
by the program. I will, however, provide email support for the program at the email address:
ogo1@mynx.wow.aust.com. I can also be reached on ICQ, my ICQ number is: 12889482.
You can download the latest version of Beep, at it's homepage:
http://www.ozemail.com.au/~mynx/quentisl/programs/beep.htm

PLEASE NOTE: While I have no intention of changing either my email address or the URL of
the web page, they may change, I try to keep my current web pages listed on, at least, the
Altavista search engine (http://www.altavista.yellowpages.com.au/). I don't have any intention
of changing my ICQ number and see no reason why this should change in the foreseeable
future. 

I will answer any and all email (or ICQ messages) about beep and will help you in any way
that I can. If you find any bugs in the program, please let me know so that I can fix them, and
if you have any suggestions for improvements to the program I'd also love to hear from you. 

Regards 

Quentin Christensen. 