I am curious on how many estimated BTC I will earn at any hash rate since, I don't really think I'm really earning any BTC at 600 Mhash/s.
The answer of D.H. assumes the hashrate of the network never changes between difficulty jumps. But it can in fact evolve quite a bit, so it can be inaccurate sometimes. Your proportion in the network may change but, until the difficulty adjusts, this will not change your rewards.
Your average reward will be :
So, in your case, with 600 MH/s and a time period of 1 day, the result is, in average, 0.3394412542813765 BTC a day (with current difficulty).
Explanations: the first term is the average reward per difficulty-1 share, and a difficulty-1 share is found in average every 2^32 hashes.
Now, if you're going to be pooled mining, adjust the 50 in the formula to take fees into account (use 48.5 for example for a 3% fee). Same goes when blocks start generating 25 BTC only.
You can see an estimation of the total hashrate here. At this point 12.85 Terahash/s. So your share of that would be 600/12850000 = 0,00004 = 0,004%.
50BTC / 10 minutes are awarded to miners, that is 7200 BTC /day.
0,00004 * 7200 = 0.34
So, roughly 0.34 BTC/day if my calculations are correct.
Also, here is a list of calculators that can be used.
The last one seems very easy to use, simply input your hashrate and press "calculate".