Prinzipiell lässt sich alles mit Assembler lösen, da alle anderen Programmiersprachen nur darauf aufsetzen und am Ende auch nur Assemblercode erzeugen (der dann mehr oder weniger verständlich ist).

RTTTL-Klingeltöne sind als Text gespeicherte Infos - die musst du halt entsprechend in Töne umsetzen, mabuhay hat ja schon gesagt, wie du das machen musst. Geschwindigkeitsmäßig dürfte das kein Problem sein - die Frage ist nur, ob dir der RAM im 16F84 ausreicht oder nicht; und das hängt von der Länge deines Klingeltons ab.

MfG
Stefan