Everytime I hear Newhaven, I cringe.

Here's your program running on a 4550 at 48Mhz in the simulator.
So I don't think it's a programming issue.



It could be an R-M-W problem.
Is the LCD connected via a ribbon cable? If so how long?
Have you tried running the CPU at 20Mhz without the PLL?

Or it could be just another Newhaven issue.
Have you tried a normal LCD?