sceUtilityLoadNetModule, audio and thread issue

Aperta
#144 6 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
c

Direzione di ricerca

Inizia compilando ed eseguendo l’esempio No_Thread_Issue.zip allegato sulla configurazione PSP 1000 o Street segnalata, con il firmware 6.61. Traccia la sequenza attraverso sceUtilityLoadNetModule, pspAudioInit e sceKernelCreateThread, quindi confrontala con la discussione collegata su network-sample. Il lavoro è completato quando è stata identificata la causa e verificato che l’esempio possa creare e avviare il proprio thread dopo l’inizializzazione dell’audio e della rete.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

I have noticed a problem with sceUtilityLoadNetModule.

If I load PSP_NET_MODULE_COMMON and PSP_NET_MODULE_INET and then I call pspAudioInit(), I will not be able to create a thread with sceKernelCreateThread. If a thread already exists in my game, it will be stopped.
sceKernelCreateThread will always return a negative thread id.

sceUtilityLoadNetModule(PSP_NET_MODULE_COMMON);
sceUtilityLoadNetModule(PSP_NET_MODULE_INET);

pspAudioInit();
SceUID thd_id = sceKernelCreateThread("thread1", thread1, 0x38, 0x10000, 0, NULL);
if (thd_id >= 0)
{
    sceKernelStartThread(thd_id, 0, 0);
}
else
{
    pspDebugScreenPrintf("Bad thread id\n");
}

This should prints Bad thread id.

I don't have a PSP 2000/3000 to test but I have the problem on my PSP 1000 and Street. My FW version is 6.61.
I think there is an issue with sceUtilityLoadNetModule or something else about network because most of network samples do not work on my PSP 1000, see: https://github.com/pspdev/pspsdk/issues/45#issuecomment-1611225348

Small compilable sample code with the issue (there is a precompiled EBOOT too): No_Thread_Issue.zip

Lingua principale
C
Stelle
1.2k
Fork
190
Merge medio
1g 18h
PR unite (30g)
8

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di pspdev/pspsdk

Tutte le issue di pspdev/pspsdk

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.