Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Autres questions


Index du Forum » Autres questions » Crash incompréhensible avec MonochromeLib
Drakalex007 Hors ligne Membre Points: 662 Défis: 0 Message

Crash incompréhensible avec MonochromeLib

Posté le 02/01/2015 17:14

Salut à tous,

j'utilise un bout de code dans mon jeu qui marchait parfaitement jusqu'à maintenant et qui a décide d'une compilation à l'autre de ne plus fonctionner du tout.

Voici la commande toute simple :

ML_bmp_16_or(gadgets[0],[maroon]50[/maroon],[maroon]50[/maroon]);


Et le sprite fait bien 16*16 :

{[maroon]0[/maroon]x7F, [maroon]0[/maroon]xFE, [maroon]0[/maroon]x80, [maroon]0[/maroon]x01, [maroon]0[/maroon]x80, [maroon]0[/maroon]x01, [maroon]0[/maroon]x8E, [maroon]0[/maroon]x01, [maroon]0[/maroon]x9A, [maroon]0[/maroon]x01, [maroon]0[/maroon]x9F, [maroon]0[/maroon]x81, [maroon]0[/maroon]x91, [maroon]0[/maroon]x41, [maroon]0[/maroon]x9E, [maroon]0[/maroon]xA1, [maroon]0[/maroon]x90, [maroon]0[/maroon]x51, [maroon]0[/maroon]x90, [maroon]0[/maroon]x29, [maroon]0[/maroon]x90, [maroon]0[/maroon]x09, [maroon]0[/maroon]x8F, [maroon]0[/maroon]xF1, [maroon]0[/maroon]x80, [maroon]0[/maroon]x01, [maroon]0[/maroon]x80, [maroon]0[/maroon]x01, [maroon]0[/maroon]x80, [maroon]0[/maroon]x01, [maroon]0[/maroon]x7F, [maroon]0[/maroon]xFE}


Avant tout marchait parfaitement, puis sans aucune raison quand le programme arrive à la ligne il plante, tout simplement, avec cette erreur :


Et à cette ligne exactement :



Tandis que si j'utilise la commande

ML_bmp_or(gadgets[0],[maroon]50[/maroon],[maroon]50[/maroon],[maroon]16[/maroon],[maroon]16[/maroon]);


Le sprite s'affiche correctement...
Sauriez-vous d'où vient l'erreur ? Parce que tout les ML_bmp_16_or et and de mon code ne fonctionnent plus ...




-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

Citer : Posté le 02/01/2015 17:16 | #


Faut changer les ML_bmp_16 en Ml_bmp_or (si ça marche comme ça omg

Bizarre l'erreur
In Arch, I trust ! And you ?
Darkysun Hors ligne Membre Points: 1747 Défis: 52 Message

Citer : Posté le 02/01/2015 17:17 | #


non non c'est bien ML
Si je ne réponds pas à un post depuis trop longtemps : envoyez-moi un message pour me le rappeler !




Dark storm Hors ligne Labélisateur Points: 11579 Défis: 176 Message

Citer : Posté le 02/01/2015 17:17 | #


Comme d'habitude, c'est un problème de pointeur
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Darkysun Hors ligne Membre Points: 1747 Défis: 52 Message

Citer : Posté le 02/01/2015 17:18 | #


moi je cherche surtout a savoir pourquoi i est un char en fait
Si je ne réponds pas à un post depuis trop longtemps : envoyez-moi un message pour me le rappeler !




Drakalex007 Hors ligne Membre Points: 662 Défis: 0 Message

Citer : Posté le 02/01/2015 17:18 | #


Darkstorm explique toi

Ajouté le 02/01/2015 à 17:23 :
Sachant que j'ai essayé ML_bmp_16_or(&gadgets[0],50,50); et j'ai le même problème
Jouez dès maintenant à Jetpack Joyride sur votre calculatrice !
Pour les curieux
Cliquer pour enrouler
Un très bon Monopoly : Monopoly 2.0 !
Vous aimez Minecraft ? Venez voir ma chaîne ! (même si je fais plus de vidéos dessus)
Dark storm Hors ligne Labélisateur Points: 11579 Défis: 176 Message

Citer : Posté le 02/01/2015 17:26 | #


Ça m'est arrivé assez souvent, ce que je te conseille de faire c'est de tester avec différents sprites, commenter certaines parties du code, y'a que comme ça que tu arrivera à débugger. Là comme ça je vois pas où est l'erreur.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Drakalex007 Hors ligne Membre Points: 662 Défis: 0 Message

Citer : Posté le 02/01/2015 17:29 | #


Le truc c'est que peu importe dans quelle fonction ou dans quel fichier je place ce bout de code, il fait quand même crasher l'émulateur, ça vient peut être de mon fichier de sprites dans ce cas

Ajouté le 02/01/2015 à 17:31 :
Code:Blocks m'indique ça à cette ligne :

|94|warning: passing argument 1 of 'ML_bmp_16_or' from incompatible pointer type [enabled by default]|

Ajouté le 02/01/2015 à 17:36 :
Quand je renomme gadgets de static const unsigned char à static const unsigned short, le programme ne crash pas mais le sprite ne s'affiche pas correctement
Jouez dès maintenant à Jetpack Joyride sur votre calculatrice !
Pour les curieux
Cliquer pour enrouler
Un très bon Monopoly : Monopoly 2.0 !
Vous aimez Minecraft ? Venez voir ma chaîne ! (même si je fais plus de vidéos dessus)
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 02/01/2015 17:47 | #


Darkysun a écrit :
moi je cherche surtout a savoir pourquoi i est un char en fait

Car on a pas besoin d'un int pour aller de 0 à 16
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 02/01/2015 17:49 | #


Cartix a écrit :
Car on a pas besoin d'un int pour aller de 0 à 16


normalement, les char ne sont utiliser que pour les caractères
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 02/01/2015 17:59 | #


Et alors, ils prennent n'importe quelles valeurs de 0 à 255, et prennent moins de place en mémoire. Pourquoi tu crois que les sprites sont déclarés en unsigned char ?
Lephenixnoir Hors ligne Administrateur Points: 22874 Défis: 149 Message

Citer : Posté le 02/01/2015 19:04 | #


Je ne pense pas que ça soit à cause de ML. Tente de lancer le morceau de code dans un projet de test et tu verras.

Non, à mon avis c'est dû à des effets de bord et c'est quasiment impossible à debugger. Ça m'est arrivé l'autre jour et il m'a bien fallu une heure pour comprendre le problème.
Drakalex007 Hors ligne Membre Points: 662 Défis: 0 Message

Citer : Posté le 02/01/2015 20:17 | #


Bon au final ce bug m'a été utile car il m'a obligé à recoder toute une partie de mon programme assez mal codée que je voulais refaire depuis longtemps et en plus ça remarche comme avant
Jouez dès maintenant à Jetpack Joyride sur votre calculatrice !
Pour les curieux
Cliquer pour enrouler
Un très bon Monopoly : Monopoly 2.0 !
Vous aimez Minecraft ? Venez voir ma chaîne ! (même si je fais plus de vidéos dessus)
Lephenixnoir Hors ligne Administrateur Points: 22874 Défis: 149 Message

Citer : Posté le 04/01/2015 21:46 | #


Drakalex007 a écrit :
Bon au final ce bug m'a été utile car il m'a obligé à recoder toute une partie de mon programme assez mal codée que je voulais refaire depuis longtemps et en plus ça remarche comme avant

C'est bien ce que je disais :3

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2023 | Il y a 44 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