π
<-
Chat plein-écran
[^]

Programmer des applis .g3a sur graph 90+E

Programmation et implémentation d'algorithmes.

Programmer des applis .g3a sur graph 90+E

Message non lude xavdark17 » 20 Oct 2017, 19:00

Bonjour,
je viens d'avoir la nouvelle graph 90+E et je ne trouve pas après pas mal de recherches les outils de développement pour faire des application .g3a ni une liste de librairies pour casio. :error:
La calculatrice est plutôt puissante, ce serait bien de pouvoir en profiter :D

Merci d'avance
Avatar de l’utilisateur
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 28%
 
Messages: 11
Inscription: 11 Oct 2017, 20:56
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Re: Programmer des applis .g3a sur graph 90+E

Message non lude critor » 20 Oct 2017, 19:50

Il y a le SDK pour fx-CG20 qui est compatible en tenant compte des spécificités du nouveau matériel :
http://www.planet-casio.com/Fr/forums/t ... uleur.html

Mais il est vrai qu'une mise à jour du SDK serait bienvenue...
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.4%
 
Messages: 41455
Images: 14353
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Programmer des applis .g3a sur graph 90+E

Message non lude Nemhardy » 21 Oct 2017, 13:43

Salut !
Déjà c'est cool que tu t'intéresses à la programmation sur cette machine, il y a pas mal de choses à faire et elle est assez ouverte, donc tu devrais pouvoir t'y plaire ! :)

Pour ce qui est des choses disponibles pour programmer dessus, si tu es sous Windows (si tu es sous Linux, n'hésite pas à le signaler, on a de quoi faire aussi ! ;) ), il existe un SDK (qui n'est pas celui proposé par Critor plus haut, qui pour le coup n'est vraiment pas à jour, enfin en tout cas il n'était déjà plus utilisé quand j'ai commencé à programmer pour les Casio ! ^^) plus ou moins à jour, disponible ici. Il s'agit en fait d'un SDK permettant de programmer pour les anciennes casio Prizm (fx-CG10 et fx-CG20), mais celles ci partagent énormément de points communs avec la nouvelle Graph90+E, à tel point qu'il est tout à fait possible d'utiliser ce SDK pour développer à destination des Graph90+E.
Ce SDK vient avec des bibliothèques permettant de faire pas mal de choses déjà (je t'invite à parcourir son dossier `include` pour y voir les fonctions disponibles (en sachant tout de même que c'est un peu le bazar niveau organisation, mais bon…), et à te référer à ce Wiki pour en savoir plus sur les fonctions «non-standard» que tu pourrais rencontrer).
Pour utiliser ce SDK, il suffit de le dézipper quelque-part (il me semble qu'il vaut mieux éviter que le chemin menant à lui comporte des espaces ou des parenthèses), et ensuite dans `projects/example`, tu trouves un projet d'exemple, pas très poussé, mais ça te permet de voir comment ça se passe : il suffit d'exécuter `make.bat` et ça compilera le projet.

La compatibilité avec la Graph90+E sera normalement assurée d'emblée si tu utilises les syscalls pour faire ce que tu veux faire (en particulier pour récupérer l'adresse de la mémoire vidéo ! C'est ce point qui est à l'origine de pas mal des problèmes de compatibilité des addins qui circulent : certains ont codé l'adresse de cette mémoire en dur, ce qui ne permet pas de tourner sur un modèle certes proche, mais présentant quelques différences mineures… :? ).

Si tu veux plus d'infos sur quoi que ce soit, ou si quelque chose ne marche pas, n'hésite pas à poser des questions ! ^^
Je maintiens le portage d'Eigenmath pour les Casio monochromes, n'hésitez pas à y jeter un œil si ça vous intéresse ! :p
Avatar de l’utilisateur
NemhardyPremium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 48%
 
Messages: 45
Inscription: 28 Déc 2014, 22:06
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Programmer des applis .g3a sur graph 90+E

Message non lude critor » 21 Oct 2017, 13:48

Merci beaucoup à toi pour cette correction de haute qualité. :)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.4%
 
Messages: 41455
Images: 14353
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Programmer des applis .g3a sur graph 90+E

Message non lude xavdark17 » 21 Oct 2017, 19:02

Merci beaucoup pour ta réponse !
En fait j'avais trouvé ce sdk mais j'ai du mal avec les fonctions a utiliser pour la calculatrice, je vais fouiller le wiki et le include pour essayer de faire un premier programme
je dirais ou j'en suis et quels problèmes je peux rencontrer
Sinon avez vous des exemples de codes c que je pourrais examiner pour apprendre ?
:-)
Avatar de l’utilisateur
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 28%
 
Messages: 11
Inscription: 11 Oct 2017, 20:56
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Re: Programmer des applis .g3a sur graph 90+E

Message non lude Nemhardy » 21 Oct 2017, 20:29

Tu parles d'apprendre le C en général ou à l'utiliser pour programmer pour une calculatrice ?

Dans le premier cas, je te conseille plutôt de te tourner vers les nombreux tutos que l'on peut trouver sur Internet, qui te permettent d'apprendre le langage en général (avec une pratique sur PC pour le coup).

Si tu connais déjà le C et est intéressé par l'usage qu'on peut en avoir avec une Graph90, tu peux regarder le jeux CubeField par exemple, même si tout n'est peut-être pas évident à comprendre, ça peut te donner une première idée de à quoi ressemble un jeu pour une telle machine. N'hésite pas à parcourir les programmes pour les fx-CG20 que tu pourras trouver ici ou sur Planète Casio, certains sont dispos avec leurs sources. ;)

Il y a aussi ce Pong dispo sur Cemetech, volontairement pédagogique (je me souviens que ça a été plus ou moins mon entrée dans la programmation en C sur Casio à l'époque… ^^), mais pas vraiment au goût du jour en terme de bonnes pratiques (typiquement l'adressse de la mémoire vidéo est codée en dur, il y a quelques trucs un peu obscurs quand on débute), mais bon, éplucher du code ça fait bien progresser je pense.

Je me dis que faire quelques programmes de ce style «pédagogique», mais un peu plus à jour, est peut-être une bonne idée pour rendre plus accessible la programmation sur cette machine d'ailleurs, si j'en ai le temps un jour je m'y mettrai peut-être un peu… ^^
Je maintiens le portage d'Eigenmath pour les Casio monochromes, n'hésitez pas à y jeter un œil si ça vous intéresse ! :p
Avatar de l’utilisateur
NemhardyPremium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 48%
 
Messages: 45
Inscription: 28 Déc 2014, 22:06
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Programmer des applis .g3a sur graph 90+E

Message non lude xavdark17 » 22 Oct 2017, 16:07

Oui effectivement je n'ai pas un niveau suffisant en c, je vais continuer à regarder et à éplucher les programmes :-)
merci encore pour ta réponse
Avatar de l’utilisateur
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 28%
 
Messages: 11
Inscription: 11 Oct 2017, 20:56
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Re: Programmer des applis .g3a sur graph 90+E

Message non lude xavdark17 » 22 Oct 2017, 16:34

En ce qui concerne l'adresse de la mémoire vidéo, il y a des choses à ne pas reproduire ?
Avatar de l’utilisateur
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 28%
 
Messages: 11
Inscription: 11 Oct 2017, 20:56
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Re: Programmer des applis .g3a sur graph 90+E

Message non lude Nemhardy » 22 Oct 2017, 16:54

Tu n'as pas forcément besoin d'avoir un très haut niveau en C non plus, je voulais juste te prévenir qu'apprendre en partant de rien uniquement en essayant de programmer sur calculatrice est peut-être un peu difficile à mon avis, mais c'est une chouette plateforme pour progresser une fois que tu as quelques bases. ;)

Pour ce qui est de la mémoire vidéo, par exemple dans le Pong que j'ai donné en exemple, on trouve la fonction suivante :

Code: Tout sélectionner
void rectangle(int x, int y, int width, int height, unsigned short color) {
   unsigned short*VRAM = (unsigned short*)0xA8000000;
   for(int j = y; j < y+height; j++) {
      for(int i = x; i < x+width; i++) {
         *(j*LCD_WIDTH_PX+i+VRAM) = color;         
      }
   }
}


Cette fonction permet de colorier un rectangle dont la position et la taille sont passées en arguments, de la couleur souhaitée. Mais on a en particulier la ligne :
Code: Tout sélectionner
unsigned short*VRAM = (unsigned short*)0xA8000000;

Qui correspond tout simplement à coder en dur l'adresse de la mémoire vidéo : sur les anciens modèles, celle-ci ne changeait jamais et donc ça n'avait jamais vraiment posé de soucis, mais maintenant ça ne marche plus. Mais ce n'est pas vraiment un problème puisqu'on dispose d'une fonction GetVRAMAddress qui permet de s'adapater aux différents modèles sans avoir rien à coder en dur.
Il faudrait donc remplacer la ligne qui posait problème plus haut par :

Code: Tout sélectionner
unsigned short*VRAM = (unsigned short*)GetVRAMAddress();


C'est à peu près la seule chose à laquelle faire attention vis à vis de la mémoire vidéo pour pouvoir tourner sur les nouveaux modèles.
Tant que tu ne fais pas de choses de trop bas niveau, tu ne devrais pas avoir à t'inquiéter de grand chose d'autre niveau compatibilité je pense.
Je maintiens le portage d'Eigenmath pour les Casio monochromes, n'hésitez pas à y jeter un œil si ça vous intéresse ! :p
Avatar de l’utilisateur
NemhardyPremium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 48%
 
Messages: 45
Inscription: 28 Déc 2014, 22:06
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Programmer des applis .g3a sur graph 90+E

Message non lude xavdark17 » 27 Oct 2017, 10:36

Bonjour,
J'explore les bibliothèques de fonctions pour créer une première application mais quand je souhaite compiler je rencontre principalement cette erreur : Couldn't compute FAST_CWD pointer.
J'utilise le sdk mais je ne sais pas comment utiliser le make.bat ni paramétrer le makefile

Quant au pong je n'arrive pas à l'utiliser sur ma graph 90+E :?

Code: Tout sélectionner
#include <display_syscalls.h>
#include <keyboard_syscalls.h>
#include <color.h>

void main(void) {
Bdisp_AllClr_VRAM();
PrintXY(3,3,"  message a afficher  ",TEXT_MODE_NORMAL, TEXT_COLOR_BLACK);
}


Ceci est le code que j'essaye de compiler en vain
c'est peut être mal fait je ne comprends pas
Avatar de l’utilisateur
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 28%
 
Messages: 11
Inscription: 11 Oct 2017, 20:56
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Suivante

Retourner vers Programmation

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 8 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
830 utilisateurs:
>804 invités
>21 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)