I'm starting dev on the PSP, and I'm having some trouble figuring basic stuff out. Looks like I'm not doing some stuff correctly.
As a test I tried to have a small 16x16 bitmap blitted on screen, moving from left to right. My problem is that, even when using double buffering, the bitmap flickers and sometimes it isn't drawn entirely.
When I use sceKernelDcacheWritebackAll() before switching the framebuffer, then the display is correct and no more flickers. So I guess writeback isn't disabled on the framebuffer memory.
Is that right, or am I missing something ? How do you set the cache on the PSP ??
Ensure that you pointer to vram is or'ed with 0x40000000. i.e. in phsyical memory vram is at 0x04000000, change that to 0x44000000. That will cure your cache issues.