I know what is causing this, and how to fix it. The section of the manual on pfheights says there's a known issue if the first row in pfheights isn't set to 8. When I set it to 8 myself, I got a stable picture when I set it to 8 in your code. However, the other issue is that the numbers already added up to 92 instead of 88, and up to 92 after making that change. It still works like this, but it expands the size of your visible screen, so takes processing time away from your game. This is less of an issue if you don't use the score or a minikernel, however. Anyway, I suggest that you set the first pfheights entry to 8, then subtract 1 from 8 of the other lines to make the total equal 88.