Seeing this here, maybe `PSP_Shutdown()` itself should just set coreState and then call wait.  That should solve both.

-[Unknown]