Posté le 30/10/2014 23:25
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 235 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd
Citer : Posté le 03/02/2015 12:19 | #
IsKeyDown n'est pas compatible sh, peut être ça le problème
Citer : Posté le 03/02/2015 13:13 | #
Ça vient du code, c'est certain. Une bêtise qui devait passer avant par chance je suppose....
Citer : Posté le 03/02/2015 17:18 | #
Alors la je suis pas sur il semblerai que ca soit une erreur de IsKeyDown car : le code
i=0;
while(IsKeyDown(KEY_CTRL_UP) || IsKeyDown(KEY_CTRL_RIGHT) || IsKeyDown(KEY_CTRL_DOWN) || IsKeyDown(KEY_CTRL_LEFT)){ //tant qu'on appuie sur une fleche de direction
//>>>>>>>>>>>>>LA PRBM !!!! Rajouter une conditino pour que la boucle au dessus ne dépasse pas les n tours<<<<<<<<<<<<
i++;
if(i==1000) break;
}
}
ca entre apperement bien dans la condition mais a partir du while ca marche plus : pour etre sur j'ai rajouté une auto-incrémentation de i et ca ne casse pas la boucle lors du bug !!! Cela continue and on and on... Après ce bug ne semble pas etre présent sur l'émulateur je vais vérifier si ca vient de ma calto car je suis censé avoir une compatible SH3-SH4 et je n'ai jamais eu de prbm, meme sur l'ancienne version de mon jeu
Donc je vais tester ca plus tard et en passant petit bonjour de mon cours de SES
-Mon Fall Down
-Mon jeu de mains
-Mon starwars
-Mon dessinatout
-Mon niaiseux version 2.0
-Mon niaiseux version 3.0
-Inferno
-Mon super labyrinthe (en cours)
-Mon call of duty en 3D
-Casion (avec Az)
Citer : Posté le 03/02/2015 20:33 | #
Fais un truc plus propre quand même.
Sinon, ça m'étonnerait que ça vienne de là... regarde le programme en plus général...
Citer : Posté le 03/02/2015 22:26 | #
Oui je pense avoir une piste je pense que cest cause par le fait que j'appelle la fonction jeu(...) avec un tablrau et lui recupere le tableau. Peut être que au bout dun moment ca pete un cable au niveau de la memoire d'ailleurs en parlant de ca : jinitialise mon tableau avec un pointeur et a la fin dois je le libérer ? Je sais que javais deja evoque la question du free() mais je ne garde aucun souvenir
-Mon Fall Down
-Mon jeu de mains
-Mon starwars
-Mon dessinatout
-Mon niaiseux version 2.0
-Mon niaiseux version 3.0
-Inferno
-Mon super labyrinthe (en cours)
-Mon call of duty en 3D
-Casion (avec Az)
Citer : Posté le 03/02/2015 22:31 | #
Alors... pour initialiser un pointeur de type int :
Si tu fais :
Ça ne veut rien dire parce que tu initialises un tableau de pointeurs, et que « NULL » ne peut représenter qu'un seul de ces pointeurs... donc c'est ambigu...
Mais retiens au moins ça :
Chaque appel à malloc() et affiliés doit nécessairement se terminer par un et un seul appel à free().
Par exemple :
free(ptr);
Citer : Posté le 03/02/2015 22:50 | #
Ok ca va alors je m'étais juste trompé en écrivant : j'ai ca en vrai
Ajouté le 03/02/2015 à 23:18 :
Alors la bizarre !!! j'ai juste rajouté deux lignes (en rouge ) pour vérifier que ca bloque après le while(...):
i=0;
while(IsKeyDown(KEY_CTRL_UP) || IsKeyDown(KEY_CTRL_RIGHT) || IsKeyDown(KEY_CTRL_DOWN) || IsKeyDown(KEY_CTRL_LEFT)){ //tant qu'on appuie sur une fleche de direction
//>>>>>>>>>>>>>LA PRBM !!!! Rajouter une condition pour que la boucle au dessus ne dépasse pas les n tours<<<<<<<<<<<<
i++;
if(i==1000) break;
}
[red]PrintMini(25, 30, "ERREUR", 1);
ML_display_vram();[/red]
if(carre_x>=88 && carre_y<=26) jeu(recording, deverouillage);
}
et la c'est la fête à la patate !!! Avec ces deux lignes, le compilo m'affiche ERREUR mais s'arrete la alors que si je les enleve, ca marche très bien omg !!!!!!!!!
-Mon Fall Down
-Mon jeu de mains
-Mon starwars
-Mon dessinatout
-Mon niaiseux version 2.0
-Mon niaiseux version 3.0
-Inferno
-Mon super labyrinthe (en cours)
-Mon call of duty en 3D
-Casion (avec Az)
Citer : Posté le 03/02/2015 23:18 | #
Même chose avec MonochromeLib, vérifie que tu as la version compatible SH4.
Citer : Posté le 03/02/2015 23:30 | #
alors j'ai changé un bout de code pour rendre le ML compatible SH4 et j'ai mis un bout de code pour que je jeu soit nativement compatible SH4 MAIS ca affiche toujours erreur et rien de plus...
-Mon Fall Down
-Mon jeu de mains
-Mon starwars
-Mon dessinatout
-Mon niaiseux version 2.0
-Mon niaiseux version 3.0
-Inferno
-Mon super labyrinthe (en cours)
-Mon call of duty en 3D
-Casion (avec Az)
Citer : Posté le 03/02/2015 23:32 | #
QUoi comme erreur? Si c'est TLB Erreur, essaye de supprimer le dossier Debug, de refaire une compilation et dis-nous si ça marche.
Citer : Posté le 03/02/2015 23:34 | #
Ah non ca m'affiche le erreur de :
ML_display_vram();
Ajouté le 03/02/2015 à 23:53 :
Ok il me semble avoir résolu le problème en fait je pense que c'était un prbm de pointeurs : au bout d'un moment le pointeur sur recording semblait etre "périmé" et du coup je fais un recording=memory_load(filepath blablabla) juste avant d'appeler jeu(int *recording, int*deverouillage){} et ca semble marcher (j'ai fait 15 fois menu->jouer->menu->jouer... et ca a rien fait 8) )
-Mon Fall Down
-Mon jeu de mains
-Mon starwars
-Mon dessinatout
-Mon niaiseux version 2.0
-Mon niaiseux version 3.0
-Inferno
-Mon super labyrinthe (en cours)
-Mon call of duty en 3D
-Casion (avec Az)
Citer : Posté le 04/02/2015 00:01 | #
Je sens qu'il va falloir faire une refonte du système de réponse aux problèmes : créer un topic à chaque fois, c'est pas cool... Mais d'un autre coté fouiller dans 60 pages de commentaires ça ne l'est pas non plus
A votre niveau, 99% des erreurs qui n'arrivent pas à la compilation viennent des pointeurs... Sinon c'est les EBR.
Citer : Posté le 04/02/2015 13:14 | #
C'est très moche ta résolution Darkysun... tu rajoutes un patch au lieu de virer le problème. Si tu codes trop longtemps comme ça ça va devenir ingérable !
Citer : Posté le 04/02/2015 15:15 | #
Bah c'est la seule solution que j'ai trouvée et tkt j'ai presque fini le jeu il me reste les credits et 2-3 trucs
-Mon Fall Down
-Mon jeu de mains
-Mon starwars
-Mon dessinatout
-Mon niaiseux version 2.0
-Mon niaiseux version 3.0
-Inferno
-Mon super labyrinthe (en cours)
-Mon call of duty en 3D
-Casion (avec Az)