I get the timing issue that you are talking about. What i have done to correct the timing issue I had was to use the on board INTRC that the PIC16F6xx has to offer. Leaving me running the 4MHz is not a problem.

The timing issue that I do have is that after I run a clear (LCDOUT $FE, 1), I have to pause after that so the LCD can see what I am writing and do it (The screen timing that the specs show is no different than the other screen I was using, but there with the actual screen). The thing that gets me also is that the maping of the LCD is not to what they have. it starts with 00 for line 1 and 40 for line 2 and so forth. I am using the 80 screen setup.

A reason to why i was having these problems was because I needed a longer time after clearing the screen for the line problem I was having not to be a problem. Another thing to is that the contrast is not between 0 and 5 volts it needs something higher. Checking the voltage between Vdd and contrast it comes to being 7 volts where as the standard screen they recommend .3v and extended was something higher. Any how I got it to work.

Thank you for your time in explaining how things are to go and other was of trouble shooting.