When Belly Drum is used by a pokemon, it will lose half of its total HP (by integer division), then its Attack stat will become the maximum possible. This maximum is limited to the 6 step increase limit for any stat on the stat growth scale. This makes the current Attack rating equal to 4 times its original value.
Unlike what has been reported in many places, when Belly Drum is used it will always bring the Attack stat to the 6 step increase limit, even if other moves have caused the using pokemon's Attack stat to fall to the 6 step decrease limit.
Belly Drum will fail if it has been used normally and the using pokemon attempts to use Belly Drum for a second time without the Attack stat being altered by a stat reduction move or being reset by the use of Haze or switching normally.
In Gold, Silver, and Crystal Belly Drum also has the odd characteristic of being able to be used when the using pokemon is at or below 50% of their total HP. The message will be given that the move has failed, but there actually will still be an effect. When Belly Drum is used under these circumstances the using pokemon will not lose any health, but their attack will not increase by as much as it normally would. Instead, its Attack will increase only 2 steps on the Stat growth scale. When Belly Drum is used in this way the increase acts identical to any other 2 step increase (such as Swords Dance). This additional ability does not work in Stadium 2. Use of Belly Drum when the using pokemon is below 50% will only result in the move failing (along with the appropriate failure message).