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 - Projets de programmation


Index du Forum » Projets de programmation » PRGM2 v1.05
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

PRGM2 v1.05

Posté le 02/01/2012 17:01



Voici la version 1.05 de PRGM2, dopée par de nouvelles fonctions.
J'espère que vous en ferez bon usage, les fonctions bmp et multigetkey sont désormais accessibles en basic, ce qui ouvre de nombreuses perspectives pour des jeux de plateformes, d'actions ou de tirs...

>>> Consulter la doc ! <<<




Le fichier joint contient PRGM2.g1a, les sources, des exemples et de jeux.



A la fin de certains programmes, la calculatrice s'éteint brutalement, et se rééteint dès que vous l'allumez. Ne vous inquiétez pas, c'est seulement le timer d'extinction qui est modifié. Ce bug a une probabilité d'environ 2%.
Pour le corriger il faut, entre deux allumages, aller dans le menu System [G], puis faire [F2] et enfin [F1].

Parfois la calculatrice plante, elle ne réagi plus lorsque vous pressez les touches et l'image reste fixe. Ce bug a une probabilité de 20%.
Pour le corriger il faut appuyer sur le bouton RESTART au dos de votre calculatrice, cela n'abime en aucun cas votre calculatrice.

Evitez d'utiliser les labels !

Faites donc des sauvegardes régulières de vos programmes et signalez moi les bugs.
D'une manière générale, il faut éteindre la calculatrice pour sauvegarder les modifications apportées aux programmes.

Fichier joint


Eiyeron Hors ligne Ancien modérateur Points: 5525 Défis: 57 Message

Citer : Posté le 30/04/2012 23:57 | #


Je pense à des rpgs avec ça :regardelecieldunairreveur:
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 01/05/2012 00:11 | #


@Eiyeron : Oui, c'était pour le Pokemon.

@Purobaz : C'est bon, j'avais oublié le paramètre couleur
Pour les fonctions de scrolling (17-18), n'oubliez pas de raffraichir l'écran (3)
Ne0tux Hors ligne Membre d'honneur Points: 3524 Défis: 265 Message

Citer : Posté le 01/05/2012 09:14 | #


Bonne nouvelle : je n'ai pas rencontré le bug qui "bloque" la calto !

Cependant, j'en ai un autre qui est assez dérangeant...

Je m'explique. Imaginez ma calto éteinte. Je l'allume. Ensuite, je navigue dans le menu pour trouver "PRGM2". Je lance l'add-in. Puis je lance un programme compatible (n'importe lequel). Tout ce passe très bien, les fonctions fonctionnent ( ), les graphismes sont au rendez-vous. Je quitte "normalement" les programmes, en appuyant sur les touches réservées à cet effet (donc pas via AC/ON).

Jusque là aucun soucis. Mais si à présent, je lance un second programme PRGM2, quel qu'il soit, rien ne se passe. Lorsque je les arrêtes (forcément avec AC/ON ce coup-ci puisque rien ne se passe), les programmes sont toujours dans les boucles "While" comportant la variable F. J'en ai déduit, peut-être à tort, que PRGM2 ne "faisait plus son job", et ne détectait plus F, ne le remettait plus à 0 etc...

Pour l'instant, la solution que j'ai trouvée est de sortir de PRGM2, de lancer n'importe quel add-in ou fonction native de la calto, de revenir su PRGM2 et là, les fonctions sont revenues. Mais c'est quand même long, d'autant plus que PRGM2 est tout en bas de la liste, et que les touches de raccourci sont déjà toutes prises...

Voilà, donc si quelqu'un a une idée, ou simplement si j'ai raté une explication quelquepart, faites-moi signe !

Au fait, est-il possible d'appeler des sous-programmes sans risques ? Si oui, peut-on appeler des sous-programmes "normaux" ou seulement "PGM2" ?

Et encore merci beaucoup pour tout ce boulot !

PS : les programmes qui utilisent CPU-Speed et qui exécutent un reset à la fin ne provoque pas le bug dont je parle plus haut, logique non ?!?

Sinon, quelqu'un connaitrait une astuce pour remonter une icône dans la liste ?

Tiens, autre remarque : lorsque l'on lance un programme en "fin de liste", on vois la liste des programmes défiler rapidement, mais celui-ci ne se lance pas. Il faut relancer à nouveau pour que cela fonctionne...



Mes principaux jeux : Ice Slider - CloneLab - Arkenstone

La Planète Casio est accueillante : n'hésite pas à t'inscrire pour laisser un message ou partager tes créations !
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 01/05/2012 10:26 | #


Bonne nouvelle : je n'ai pas rencontré le bug qui "bloque" la calto !

Ouf

Pour le second "bugs", on ne peut rien y faire. Une fois que le timer de PRGM2 est arrêté (fonction 28, AC ou MENU), les programmes s’exécutent normalement comme du basic normal.

Pour relancer le timer la seule solution c'est de quitter PRGM2 puis de le relancer, comme tu l'avais très justement fait remarqué.

Pour l'utilisation de CPUSpeed, c'est tout à fait normal, la calculatrice fait un reset, et donc l'addin est quitté.


Au fait, est-il possible d'appeler des sous-programmes sans risques ? Si oui, peut-on appeler des sous-programmes "normaux" ou seulement "PGM2" ?

Je pense que l'on peut appeler des sous-programmes sans risque, je l'ai notamment fait pour Mario, et ça peut être des programmes normaux.


Tiens, autre remarque : lorsque l'on lance un programme en "fin de liste", on vois la liste des programmes défiler rapidement, mais celui-ci ne se lance pas. Il faut relancer à nouveau pour que cela fonctionne...

Il faut éviter au maximum de lancer un programme trop loin dans la liste, ça peut faire planter PRGM2. Mettez un espace au début du nom pour le faire remonter.


Sinon, quelqu'un connaitrait une astuce pour remonter une icône dans la liste ?

Moi j'ai tout transféré sur la carte SD, puis tout retransféré dans l'autre sens. C'est peut être possible avec Explorer de PierrotLL, tu transferts tout les addins dans un dossier de la mémoire de stockage, puis tu les remets dans l'ordre que tu souhaites.
Je pense qu'avec un addin, il y a moyen de réorganiser le menu comme on le souhaite. J'essayerai de la faire si j'ai le temps.


D'une manière générale, il faut éteindre la calculatrice pour sauvegarder les modifications apportées aux programmes.

I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 01/05/2012 10:27 | #


Ne0tux a écrit :

Pour l'instant, la solution que j'ai trouvée est de sortir de PRGM2, de lancer n'importe quel add-in ou fonction native de la calto, de revenir su PRGM2 et là, les fonctions sont revenues. Mais c'est quand même long, d'autant plus que PRGM2 est tout en bas de la liste, et que les touches de raccourci sont déjà toutes prises...


C'est ce qu'il se passe à chaque fois qu'un add-in retourne au menu car il arrive au bout des lignes de code.
Du coup, impossible de le relancer sans reset ou lancer un autre add-in avant (qui peut tres bien etre le mode run, ou prgm)
Certain jeux comme Doodle-Jump font un reset en quittant (du aux niveaux de gris je pense) ou CPUSpeed lorsqu'il étend son overclock

Je ne sait pas pourquoi ca fait ca, mais faut faire avec

Edit: c'est pas le timer de cpuspeed, mais l'overclock
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Ne0tux Hors ligne Membre d'honneur Points: 3524 Défis: 265 Message

Citer : Posté le 01/05/2012 11:32 | #



Comme d'habitude, j'ai eu le droit à une réponse pertinente et complète : je n'ai donc rien à rajouter !

J'essaie actuellement les fonctions : c'est fastidieux car je ne connais pas encore les syntaxes. Mais à force, ça va venir !

En tout cas bonne nouvelle : pour l'instant, rien d'autre à signaler !

Je crois que je ne vais plus pouvoir m'en passer maintenant...

Merci encore pour tout !

Mes principaux jeux : Ice Slider - CloneLab - Arkenstone

La Planète Casio est accueillante : n'hésite pas à t'inscrire pour laisser un message ou partager tes créations !
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 01/05/2012 12:01 | #


Franchement, ça me fait râler d'avoir acheter une G100 à la place d'une G95
A voir la vidéo, ça a l'air d'ouvrir d'incroyable possibilité au basic casio. Félicitations !
Par contre, à la fin de la vidéo, tu aurais pu ajouter le nom de Pierrotll dans le ''générique''.
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 01/05/2012 12:50 | #


c'est fastidieux car je ne connais pas encore les syntaxes

Utilise le programme PRGM2DOC pour t'aider, et regarde les exemples, la majorité des fonctions y sont.

tu aurais pu ajouter le nom de Pierotll dans le ''générique''

Ouais j'y ai pas pensé, mais il est dans les crédits du programme.
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 01/05/2012 14:16 | #


Mis en post-it, cette version de PRGM2 m'a l'air stable. Cela est à confirmer avec le temps

J'ai fait des tests avec les matrices, je n'ai pas rencontré de problèmes !

Au fait, le programme TOTOYO qu'on voit au début de la vidéo, il contient quoi ?
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 01/05/2012 14:31 | #


Totoyo a écrit :

Au fait, le programme TOTOYO qu'on voit au début de la vidéo, il contient quoi ?

C'est celui-là qui fait bouger les balles, non ?
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 01/05/2012 14:33 | #


C'est le programme que t'avais fait pour la première version de PRGM2.
Il affiche des cercles, j'ai oublié de le montrer dans la vidéo.

Tous les exemples dont ce programme sont dans le fichier joint.


I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

Citer : Posté le 01/05/2012 14:41 | #


Purobaz a écrit :

C'est le programme que t'avais fait pour la première version de PRGM2.
Il affiche des cercles, j'ai oublié de le montrer dans la vidéo.

Il apparait dans la vidéo (6:41)
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 01/05/2012 14:43 | #


Bien vu

Ajouté le 02/05/2012 à 12:32 :
Nouvelle version avec quelques améliorations :
- PRGM2 crée automatiquement le dossier PRGM2
- la fonction 7 pour obtenir le contraste fonctionne (si les valeurs ne vous conviennent pas, merci de me le signaler)
- la fonction 29 pour gérer le temps réel est opérationnelle
- vous pouvez utiliser la touche [MENU] dans vos programmes, elle n\'arrête plus le timer
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 02/05/2012 20:40 | #


En réponse à la question posée:
Ne0tux a écrit :

Pour l'instant, la solution que j'ai trouvée est de sortir de PRGM2, de lancer n'importe quel add-in ou fonction native de la calto, de revenir su PRGM2 et là, les fonctions sont revenues. Mais c'est quand même long, d'autant plus que PRGM2 est tout en bas de la liste, et que les touches de raccourci sont déjà toutes prises...


J'ai enfin trouvé pourquoi cela arrivait:

imaginons un programme simple:

int AddIn_main(int isAppli, unsigned short OptionNum)
{
    unsigned int key;
    
    Bdisp_AllClr_DDVRAM();
    
    fonctionBidon();
    
     [red]while(1){  
    GetKey(&key);
} [/red]
    
    return 1;
}


Arrivé à la fin de la fonction fonctionBidon(), le programme va entrer dans la boucle en rouge. Une pression sur la touche MENU va nous envoyer sur le menu, vu que GetKey() a cette propriété.
Ensuite, nous savons qu'un programme ne s’arrête pas totalement tant qu'un autre n'a pas été lancé => en revenant sur l'add-in, on est toujours dans cette boucle infinie !

Du coup, j'ai trouvé (sans le faire exprès) une alternative:

int AddIn_main(int isAppli, unsigned short OptionNum)
{
    unsigned int key;
    
    Bdisp_AllClr_DDVRAM();
    
    while(1)
    {
        fonctionBidon();

        GetKey(&key);  [green]// utilisation du GetKey pour revenir au menu[/green]
    }

    return 1;
}


Ainsi, quoi qu'il arrive, si nous revenons sur l'add-in sans en avoir lancé un, la boucle fait que nous reprenons les fonctions comme si on lançai l'add-in pour la première fois.


En espérant que ces explications vous soient utiles
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 02/05/2012 22:15 | #


Je pense pas qu'une telle explication soit appropriée, elle ne correspond pas à ce qui ce passe dans PRGM2.

On en a déjà parlé, une fois que le timer est éteint, PRGM2 n'a plus le contrôle, tout ce passe comme dans le menu PRGM normal. La seule solution pour relancer le timer est de quitter l'addin.
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 02/05/2012 22:21 | #


Ca n'a rien à voir avec PRGM2 en particulier, c'est comme cela pour tout les add-ins

Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 02/05/2012 22:23 | #


Oui mais tu répondais à la question de Ne0tux qui parle précisément de PRGM2
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 02/05/2012 22:34 | #


dans ce cas, c'est une erreur de compréhension de ma part...
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 04/05/2012 11:12 | #


Je viens de finir la beta 0.6 de PRGM2color

Il faut encore que j'améliore les fonctions graphiques qui sont trop lentes, mais vous pouvez déjà tester les exemples.

Je poste que sur Cemetech pour faciliter les mises à jour, mais la version 'finale' sera bien sur mise sur Planete-Casio.
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Ne0tux Hors ligne Membre d'honneur Points: 3524 Défis: 265 Message

Citer : Posté le 04/05/2012 19:02 | #



Je teste immédiatement !

Merci beaucoup pour ton boulot Puro' !

Mes principaux jeux : Ice Slider - CloneLab - Arkenstone

La Planète Casio est accueillante : n'hésite pas à t'inscrire pour laisser un message ou partager tes créations !
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 04/05/2012 21:43 | #


2 jours de travail, et pas mal d'heures.
Et il y a moins de bug.
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens

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 90 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