π
<-

Programmer des applis .g3a sur graph 90+E

Programmation et implémentation d'algorithmes.

Programmer des applis .g3a sur graph 90+E

Unread postby 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
User avatar
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 28%
 
Posts: 11
Joined: 11 Oct 2017, 20:56
Gender: Male
Calculator(s):
MyCalcs profile
Class: Terminale S

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

Unread postby 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
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47%
 
Posts: 41940
Images: 15615
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

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

Unread postby 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
User avatar
NemhardyPremium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 48%
 
Posts: 45
Joined: 28 Dec 2014, 22:06
Gender: Not specified
Calculator(s):
MyCalcs profile

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

Unread postby critor » 21 Oct 2017, 13:48

Merci beaucoup à toi pour cette correction de haute qualité. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47%
 
Posts: 41940
Images: 15615
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

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

Unread postby 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 ?
:-)
User avatar
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 28%
 
Posts: 11
Joined: 11 Oct 2017, 20:56
Gender: Male
Calculator(s):
MyCalcs profile
Class: Terminale S

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

Unread postby 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
User avatar
NemhardyPremium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 48%
 
Posts: 45
Joined: 28 Dec 2014, 22:06
Gender: Not specified
Calculator(s):
MyCalcs profile

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

Unread postby 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
User avatar
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 28%
 
Posts: 11
Joined: 11 Oct 2017, 20:56
Gender: Male
Calculator(s):
MyCalcs profile
Class: Terminale S

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

Unread postby 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 ?
User avatar
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 28%
 
Posts: 11
Joined: 11 Oct 2017, 20:56
Gender: Male
Calculator(s):
MyCalcs profile
Class: Terminale S

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

Unread postby 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: Select all
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: Select all
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: Select all
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
User avatar
NemhardyPremium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 48%
 
Posts: 45
Joined: 28 Dec 2014, 22:06
Gender: Not specified
Calculator(s):
MyCalcs profile

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

Unread postby 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: Select all
#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
User avatar
xavdark17
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 28%
 
Posts: 11
Joined: 11 Oct 2017, 20:56
Gender: Male
Calculator(s):
MyCalcs profile
Class: Terminale S

Next

Return to Programmation

Who is online

Users browsing this forum: No registered users and 2 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1195 utilisateurs:
>1154 invités
>32 membres
>9 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)