Pb D'execution (c++/sdl)


Defree
 Share

Messages recommandés

Bonjour tout le monde,

Mon premier post sur ce site. Enchanté ^^.

Venons en aux faits,

J'essaye de compiler un petit projet qui marche actuellement sur PC et GP2X. Il utilise la bibliothèque SDL.

J'ai donc installé psplibraries/pspsdk/psptoolchain.

Ca compile correctement, seulement quand je lance le prog sur psp, j'obtiens: "Démarrage jeu impossible", suivi d'un numéro d'erreur. Explicite à souhait...

Voilà les grandes lignes de mon makefile:

TARGET = mymanicOBJS = MyManic.o reallib.o xtengine.o xt1.o xtactions.o PSPBIN=$(PSPSDK)/../binPSPSDK=$(shell psp-config --pspsdk-path)INCDIR =CFLAGS = -G0 -Wall -O2 -DPSPFW3XCFLAGS += $(shell $(PSPBIN)/sdl-config --cflags)CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)

BUILD_PRX=1
PSP_FW_VERSION=303

LIBDIR =
LDFLAGS =
LIBS= -lstdc++ -lSDLmain -lSDL_image -ljpeg -lpng -lz
LIBS += $(shell $(PSPBIN)/sdl-config --libs)

Ce problème doit être récurrent (j'ai déjà obtenu le même message en testant Psptube CF), et peut être même déjà traité sur ce forum, désolé dans ce cas, j'ai du passer à côté du post.

Ma config:

PC sous linux

PSP slim avec firmware 3.72HX2

Lien vers le commentaire
Partager sur d'autres sites

ça signifie que le programme tourne en mode kernel et pas en mode user, et le mode kernel nécessite le kernel 1.5

regarde au début du programme, il faut que ça soit comme ça :

PSP_MODULE_INFO("nomdutruc", 0, 1, 0);

et pas PSP_MODULE_INFO("nomdutruc", 0x1000, 1, 0);

ensuite on verra si ça fonctionne ou pas

Lien vers le commentaire
Partager sur d'autres sites

Merci pour ta réponse, j'ai essayé et ça ne marche pas.

Voilà un extrait de mon fichier principal, pour qu'il corresponde à ce que tu m'as dis (en commentaire sont des infos grapillées sur le net):

PSP_MODULE_INFO("MyManic", 0, 1, 0);//PSP_HEAP_SIZE_KB(6*1024);//PSP_MAIN_THREAD_ATTR(0);//PSP_MAIN_THREAD_STACK_SIZE_KB(32);

De plus, j'ai du modifier et recompiler SDL_psp_main.c qui contenait:

PSP_MODULE_INFO("SDL App", 0x1000, 1, 1);PSP_MAIN_THREAD_ATTR(THREAD_ATTR_USER | THREAD_ATTR_VFPU);

Sinon ça ne compilait pas à cause de la déclaration double (j'ai juste commenté PSP_MODULE_INFO(...)).

Au final, j'ai toujours le même message d'erreur :(.

Modifié par Defree
Lien vers le commentaire
Partager sur d'autres sites

c'est pas simple cette histoire avec la PSP Slim, j'ai aussi ces soucis avec les homebrews et mes propres programmes

si quelqu'un sait comment faire ça serait sympa d'avoir des infos, moi j'ai pas compris les différences entre user mode et kernel mode au niveau du code

Lien vers le commentaire
Partager sur d'autres sites

Si il y a un plantage avant le lancement de l'homebrew, c'est sûrement que l'Homebrew est placé dans le mauvais dossier.

Si c'est un problème avec le kernel, l'écran reste noir après le lancement.

Et (bon à savoir), si l'on met le 0,1,0 et qu'il y a un code qui a besoin du kernel dans le programme, le problème sera le même.

En revanche, on peut laisser le 1,1,0 si on enlève le code qui utilise le kernel

Lien vers le commentaire
Partager sur d'autres sites

il me semble que c'est l'erreur 80020148 quand c'est un soucis de kernel 1.5 sur la psp slim, en tout cas ça termine en 48

la console met l'erreur et retourne au XMB, il ya pas d'écran noir

Ah. En tout cas, ça met pas d'erreur sur ma FAT.

Si tu as besoin d'utiliser le mode kernel dans ton homebrew, fait le avec des prx

Lien vers le commentaire
Partager sur d'autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Share