You should be able to load the cannon with cannonballs anytime without having to wait for the cannon to empty out all 30 cannonballs. It is stupid that you have to let the cannon run out of cannonballs completely before you are able to reload the cannon again.