This is basic political manuvering. The president was able to use the birther issue to label a large segment of his oppenents as kooks and freaks. My guess is that he was going to wait for this issue to crest at the eve of the 2012 election and the reveal it, making the GOP look like a bunch of chumps and easily coasting to victory.
Trump turned up the heat on this issue to the point where nearly half the country believed that the president is not eligible. Trump probably wanted to ride that wave of doubt into the White House, and with polls showing him ahead of all the other GOP potentials, and even beating the president as well, he could have. At that point, the president had no choice but to reveal it.
The question is “why?”. The political manuevering part is basic, but that assumes he is covering up.