I create a semaphore using
Code: Select all
lrc = sceKernelCreateSema("name", 0, 0, 10, 0)
expecting to create a simple semaphore with 10 max count, 0 initial.
lrc seems to return a sensible number - generally around the 0x04600000 range, a different number each time, so it looks like a plausible SceUID.
But any time I attempt to do anything with that semaphore (signal, wait, referStatus) the operation fails - waits just complete immediately, referStatus doesn't change the sceKernelSemaphoreInfo structure at all - but still returns a successful return code (where applicable).
I can't understand what's going wrong - any advice?