Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Problème addin
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Problème addin

Posté le 09/12/2013 13:45

voila, je suis en train de préparer quelques graphisme pour mon prochain jeu et il y a un problème. mon programme peut afficher des lignes mais dès que je mets un GetKeyWait, mon écran est blanc. Comment faire pour que les traits restent pendant que le GetKeyWait fonctionne?

PS, mon programme est en fichier joint

Fichier joint


Précédente 1, 2, 3 ··· 7, 8, 9, 10, 11, 12, 13 ··· 18, 19, 20 Suivante
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 13/02/2014 19:27 | #


:aie2: :boulet: j'ai rectifié en fait c'est
int recevoir[20];

Serial_ReadBytes((char*)recevoir, 20*sizeof(int), &size);
PrintV(10,10,recevoir[15]);
Dodormeur Hors ligne Ancien rédacteur Points: 3965 Défis: 84 Message

Citer : Posté le 13/02/2014 19:29 | #


salut[10]=15;
PrintV(10,10,recevoir[15]);

Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 13/02/2014 19:37 | #


:boulet: :boulet3: j'ai re-modifier

int salut[20];
memset(salut,0,sizeof(salut));
salut[15]=15;
Serial_WriteBytes((char*)salut,sizeof(salut));
Dodormeur Hors ligne Ancien rédacteur Points: 3965 Défis: 84 Message

Citer : Posté le 13/02/2014 19:41 | #


Si c'est toujours pas bon, essaye d'enlever les sizeof (j'ai jamais aimé ce machin)
Donc tu remplace sizeof(salut) par 80 et 20*sizeof(int) par 80
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 14/02/2014 19:07 | #


@Dodormeur, c'est toujours pas ça.

PS; j'ai découvert en regardant mon addin avec le bloc note qu'on puvait voir la version et la date de compilation du programme
ª¬½¯ˆš ÿïÿïÿ¦þÿÿrç/ 
        @YUGIOH         01.00.0000  2014.0214.1902  ð #ˆ`vG J wÕ@4#¿€Ô”(|4wÃ$?ì3d@Û1ÄXkü[8üCñü8üøü  üÿÿüÿÿÿÿ                                


"2014.0214" 'cest la date en année.moisjour là c'est le 14 février 2014
Dark storm Hors ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 14/02/2014 19:16 | #


Dodormeur a écrit :
Si c'est toujours pas bon, essaye d'enlever les sizeof (j'ai jamais aimé ce machin)
Donc tu remplace sizeof(salut) par 80 et 20*sizeof(int) par 80

Sizeof() est hyper pratique quand tu travaille sur des structures
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Limachi Hors ligne Youtuber Points: 2798 Défis: 67 Message

Citer : Posté le 14/02/2014 23:17 | #


et sizeof(salut) ne renvoie pas la taille de la liste, mais la taille du pointeur, soit 4 octets...
Mes Programmes
Cliquer pour enrouler
-en basic: un programme nommé PICFMLIM convertissant une picture en code basic.
-en C:
-Un pong.
-Un projet en pause. Je compte le reprendre de temps en temps: Summer Cursed


-mon tuto sur les Str


Mes calto: G25+, G75
Mon minecraft en dévelopement


Projets et Programmes que je soutiens (sur une idée de Marmotti)
Cliquer pour enrouler
-Pokemon Jade de Dodormeur
-Portal2D de JavierXD
-CalCraft de Wime
-GeekBros du groupe GeekBrothers (Eiyeron,Siapran,KevKevVTT,Adbook,LIMachi)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/02/2014 08:02 | #


Serial_ReadBytes((char*)recevoir, 20*sizeof(int), &size);


pour le size, on peut mettre un int???

Ajouté le 17/02/2014 à 08:18 :
    unsigned int key;
int verif=0;
char config[]={0,9,0,0,0};
int ecriture[20];
int lecture[20];
int lu=0;
    Bdisp_AllClr_DDVRAM();

memset(ecriture,0,sizeof(ecriture));
memset(lecture,0,sizeof(lecture));
ecriture[0]=1;
ecriture[1]=2;
ecriture[2]=3;
ecriture[3]=4;
ecriture[4]=5;
ecriture[5]=6;
ecriture[6]=7;
ecriture[7]=8;
ecriture[8]=9;
ecriture[9]=1;

verif=Serial_Open(config);
if(verif!=0){
locate(1,1);
Print("echec");
PrintV(100,10,verif);
}else{
locate(1,1);
Print("OK");
}
Bdisp_PutDisp_DD();
Serial_ClearReceiveBuffer();
Serial_ClearTransmitBuffer();

verif=Serial_WriteBytes((char*)ecriture, 80);
if(verif==0){
verif=1;
while(verif!=0){
verif=Serial_ReadBytes((char*)lecture, 80, &lu);
PrintV(80,50,lu);
PrintV(50,50,verif);
Bdisp_PutDisp_DD();
}
PrintV(20,20,lecture[0]);
PrintV(25,20,lecture[1]);
PrintV(30,20,lecture[2]);
PrintV(35,20,lecture[3]);
PrintV(40,20,lecture[4]);
PrintV(45,20,lecture[5]);
PrintV(50,20,lecture[6]);
PrintV(55,20,lecture[7]);
PrintV(60,20,lecture[8]);
PrintV(65,20,lecture[9]);
Bdisp_PutDisp_DD();
Sleep(10000);
}

    while(1){
        GetKey(&key);
    }


j'ai réécris un nouveau code.
Là, de lecture[0] à lecture[7], ça va ça fait"1234567800". En fait lecture[8] et lecture[9] reste à 0. Peut-être un problème de taille???
Limachi Hors ligne Youtuber Points: 2798 Défis: 67 Message

Citer : Posté le 17/02/2014 11:58 | #


LIMachi a écrit :
sizeof(salut) ne renvoie pas la taille de la liste, mais la taille du pointeur, soit 4 octets...

il y a toujours l'erreur des sizeof qui sont utilisés sur des pointeurs, ce qui renvoi 4
Mes Programmes
Cliquer pour enrouler
-en basic: un programme nommé PICFMLIM convertissant une picture en code basic.
-en C:
-Un pong.
-Un projet en pause. Je compte le reprendre de temps en temps: Summer Cursed


-mon tuto sur les Str


Mes calto: G25+, G75
Mon minecraft en dévelopement


Projets et Programmes que je soutiens (sur une idée de Marmotti)
Cliquer pour enrouler
-Pokemon Jade de Dodormeur
-Portal2D de JavierXD
-CalCraft de Wime
-GeekBros du groupe GeekBrothers (Eiyeron,Siapran,KevKevVTT,Adbook,LIMachi)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/02/2014 18:13 | #


Sizeof () avec memset marche parfaitement
Limachi Hors ligne Youtuber Points: 2798 Défis: 67 Message

Citer : Posté le 17/02/2014 18:46 | #


:aie2:
quand je parle d'erreur, je ne parle pas d'erreur de compilation, mais une étourderie qui a été faite ici, memset(ecriture,0,sizeof(ecriture)); revient a faire ici: memset(ecriture,0,4); soit seule la première case de écriture est mise a 0
il y a plus simple pour l'initialisation a 0:
int ecriture[20]={0};
int lecture[20]={0};
si tu mets au moins un élément dans une liste, le reste de la liste est initialisée a 0.
Mes Programmes
Cliquer pour enrouler
-en basic: un programme nommé PICFMLIM convertissant une picture en code basic.
-en C:
-Un pong.
-Un projet en pause. Je compte le reprendre de temps en temps: Summer Cursed


-mon tuto sur les Str


Mes calto: G25+, G75
Mon minecraft en dévelopement


Projets et Programmes que je soutiens (sur une idée de Marmotti)
Cliquer pour enrouler
-Pokemon Jade de Dodormeur
-Portal2D de JavierXD
-CalCraft de Wime
-GeekBros du groupe GeekBrothers (Eiyeron,Siapran,KevKevVTT,Adbook,LIMachi)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/02/2014 19:31 | #


int ecriture[20]={0};
int lecture[20]={0};
int lu=0;
    Bdisp_AllClr_DDVRAM();

ecriture[0]=1;
ecriture[1]=2;
ecriture[2]=3;

même en faisant ça, ça reste à "1234567800" au lieu de "1234567891"

je me suis que j'envoyais trop de données, mais normalement non(20*4>256)

Par ailleurs,wikipedia me dit qu'un int = 16bits=2octet. Perso, j'ai la preuve que wikipedia n'est pas fiable
Dark storm Hors ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 17/02/2014 19:39 | #


Sur un processeur 16 bits, c'est le cas, or il me semble que la calto supporte le 32 bits...
Essaie d'afficher la valeur "sizeof(int)" pour voir, au moins on sera fixés
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/02/2014 19:43 | #


c'est bien du 32 bits soit 4 octet(en tout cas sur l'émulateur)

EDIT;j'ai trouvé une soluce au problème, je vais transformer le int en char* et envoyer ce char

Ajouté le 20/02/2014 à 17:06 :
au fait, dans beaucoup de programme, je vois les chevrons << (ou >> je ne sais plus) . Qu-est ce que c'est??
Lephenixnoir Hors ligne Administrateur Points: 24145 Défis: 170 Message

Citer : Posté le 20/02/2014 17:26 | #


Décalages de bits
10010101 >> 1 = 01001010
10010101 >> 2 = 00100101
10010101 >> 8 = 00000000

Et ça marche dans les deux sens
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Dodormeur Hors ligne Ancien rédacteur Points: 3965 Défis: 84 Message

Citer : Posté le 20/02/2014 17:51 | #


Oui, c'est des opérations bit a bit. C'est tres utile pour l'optimisation, mais il faut savoir s'en servir.
Dans le meme style, il y a | & ^ , qui permettent de comparer deux nombres bit a bit.
011001 | 101101 = 111101
011001 & 101101 = 001001
011001 ^ 101101 = 110100
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 11/03/2014 12:17 | #


mais quand je fais

if((LP2<=0&&(nombretour & 1))||(LP2<=0&&(nombretour & 0))){

ça marche pas, nombretour est pair et LP2 inférieur à 0

Lephenixnoir Hors ligne Administrateur Points: 24145 Défis: 170 Message

Citer : Posté le 11/03/2014 14:29 | #


nombreretour & 0 est forcément faux
Puisque sur un bit, 0 & x donne forcément 0, sur 8, 16 ou 32 bits c'est pareil puisque 0 n'est composé que de bits nuls.
Au final, nombreretour & 0 donne 0, donc le deuxième partie de la condition n'est jamais vraie.
Il faut remplacer (nombreretour & 0) par !(nombreretour & 1) (car &1 sélectionne juste le premier bit, soit le %2).
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Dark storm Hors ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 11/03/2014 15:17 | #


Je me suis permis de modifier le titre du topic pour le rendre un peu plus précis sur le contenu
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 11/03/2014 19:49 | #


@dark storm, c'est YuGiOh pas YuGiHo
Dark storm Hors ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 13/03/2014 22:13 | #


Oups, mea culpa
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Précédente 1, 2, 3 ··· 7, 8, 9, 10, 11, 12, 13 ··· 18, 19, 20 Suivante

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 v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 146 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