Most compilers have a 'sound' or 'tone' command built in that simplifies this to dead simple as long as you only want basic tones... If not code examples for what you want to do can almost certainly be found for your compiler with a little Googling...
BTW, unless there is a specific reason requiring you to use the 16F84, get rid of it and go with the 16F628a... The 16F84 is an outdated old school chip, the newer chips are generally cheaper, faster most have a boat load more hardware function and many have build in oscillators that reduces parts count and simplifies the circuit...