OK, let me tell (or teach, for some) you how the total coin is calculated:
1st, look at this function
int64_t GetProofOfWorkReward(int nHeight, int64_t nFees, const CBlockIndex* pindex)
and this
int64_t GetProofOfWorkBonusRewardFactor(CBlockIndex* pindex)
1st function calculates the regular pow payout, and the 2nd calculates the superblocks.
Now, block 1 = 2.5 mil coins (was a mini IPO I think)
block 2 - block 19200: 512 coins/block
next 9600 (10 days) blocks: 256 coins/block
next 9600 (10 days) blocks: 128 coins/block
next 9600 (10 days) blocks: 64 coins/block
next 9600 (10 days) blocks: 32 coins/block
next 9600 (10 days) blocks: 16 coins/block
next 9600 (10 days) blocks: 8 coins/block
next 9600 (10 days) blocks: 4 coins/block
next 9600 (10 days) blocks: 2 coins/block
afterwards: 1 coins/block
now the pow will be cut off at 1-2 coins/block.
Next, look at the superblocks: superblock
- Every 3 hours there will be a block with 4X normal payment (initial 2048 coins)
- Every day there will be a block with 16X normal payment (initial 8192 coins)
- Every 5 days there will be a block with 128X normal payment (initial 65536 coins)
So at initial phase, the 1 block day
average coin is:
1 day = 960 * 512 + 8 * (2,048 - 512) + (8,192 - 512) + 1/5 * (65,536 - 512)
= 491,520 + 12,288 + 7,680 + 13,004.8
= 524,492.8 coins
Total = 524,492.8 * (20 + 10 * 0.5 * ( 1 + 1/2 + 1/4 + 1/8 + ... ))
= 524,492.8 * 10 * (2 + 1) = 15,734,784 coins
This adds 2.5 mil mini IPO,
total PoW = 18.2 millions.
On top of this, you can calculate the PoS, PoS is difficult to calculate precisely, but you can estimate max possible value. My estimate is that it is under 50 millions as devs of Supercoin said.
Simple math, isn't it?