I tried following a psp graphics programming tutorial and on PPSSPP it ran fine, as long as illegal memory access is ignored. On the PSP, it crashes.
If illegal memory accesses aren't ignored, it crashes on PPSSPP, too.
With psplink I found that psp::sys::sceGumMatrixMode prints access errors over and over again.
After digging through psp::sys::gum, I saw that if psp::sys::sceGumLoadIdentity or psp::sys::sceGumLoadMatrix weren't called before other gum methods using the VFPU_CONTEXT, there would be no VFPU_CONTEXT to access (as it's None).
Only these 2 methods are calling VFPU_CONTEXT.get_or_insert_with instead of psp::sys::gum::get_context_unchecked.
I tried following a psp graphics programming tutorial and on PPSSPP it ran fine, as long as illegal memory access is ignored. On the PSP, it crashes.
If illegal memory accesses aren't ignored, it crashes on PPSSPP, too.
With psplink I found that
psp::sys::sceGumMatrixModeprints access errors over and over again.After digging through
psp::sys::gum, I saw that ifpsp::sys::sceGumLoadIdentityorpsp::sys::sceGumLoadMatrixweren't called before other gum methods using theVFPU_CONTEXT, there would be noVFPU_CONTEXTto access (as it'sNone).Only these 2 methods are calling
VFPU_CONTEXT.get_or_insert_withinstead ofpsp::sys::gum::get_context_unchecked.