Right! It was my fault! I had missunderstood PPU's timings. After having read Brad Taylor's "NTSC NC02 Technical Operation" a few more times I've finally got the idea, now I know more or less where everything comes from. At the moment I've implemented the render algorithm itself, and it seems to work perfectly. Now I'll try to add to this code the necessary instructions to make it work in the right order. But there's something I don't understand.. Why you quietust process the VBLANK 20 scanlines after the frame render while Brad Taylor's doc says it has to be done at the begining? And one more question: when some docs say upper and lower 16 pixels in NTSC systems are not shown, do they reffer to the frame itself (256x240 would turn to 256x208)? What is it useful for?