

LICENSE for Ringtonetools

You may NOT use this in any kind of commercial environment
without permission of the author (Michael Kohn).

You may NOT use any part of the code for another project
either commerical or open without permission of the
author.

You are free to distribute this program unmodified with
any compilation cd or operating system distribution
(this includes the Linux operating systems, FreeBSD,
Solaris, or whoever wants to distribute it).  You may
also distribute this on your own website.

Really the reason for this license is I don't think it's
fair for someone to make a truck load of money off this
program without compensating me with at least a small donation
for the hours I put into this program.  Be nice and if you
want to make money on this just make a small donation to me.

:)

For the rest of you.. FREE RINGTONES FOR ALL!




