Toley00, Unless you can release the button realy fast, your code as written will re-enter the subroutine while the button is being pressed. At the speed of the osc I am surprised that you arn't getting more "aaaaaa's". You need to check for the button being released and bypass the call if it is, before you check for it being pressed.

Dave Purola,
N8NTA