battalion is Copyright (c) 1994-1996 by Andrew Johnson - All Rights Reserved

battalion is provided free of charge. There is no registration fee.

Permission to copy and distribute battalion in its entirety, for non-
commercial purposes, is hereby granted without fee provided this
copyright notice appears in all copies.

If you redistribute battalion the ENTIRE contents of this distribution
must be distributed.

Note that distributing battalion in with any product is considered to be
a 'commercial purpose.'

This software may be modified for your own purposes, but modified
versions may not be distributed without prior consent of the author.

This software is provided 'as-is' without any express or implied
warrenty. In no event shall the author be held liable for any
damages arising from the use or misuse of this software.

Should you want to do something with this software that is prohibited
by the above copyright, please contact the author (email please) as he
is very likely willing to sell out for the almighty dollar.
