Le Projet Ct est un grand projet ayant pour but ultime le développement d'une application permettant :
- l'édition des données des calculatrices
- l'ouverture/enregistrement dans les différents formats
CasioToolsOnline est la partie Web de Casio Tools. C'est une bibliothèque écrite en PHP 5 permettant les différentes actions citées ci dessus.
Les 2 formats prioritaires sont Fxi et G1m.
Fxi
10%
G1m
10%
Les sources sont disponibles sur Github : Sources de Cto
Collectionneur de figurines d'animés. - WoW c'est le mal mais j'ai choisi le côté obscur
Calculatrices : G85 SD, G100+, Classpad 330 (temp), FX-CG 10
Linux, c'est le seul endroit où tu peux taper ls.
Dernier message de la page précédente :Posté le 06/07/2008 00:23 |
Merci même si c'est pas énorme, le but : c'est de chercher des pistes pour le transfert.
J'ai trouvé plein de sites mais ça marchait pas et c'est alors que j'ai trouvé cette bibliothèque de Qt sur un site.
Et à mon avis, ça doit marcher très bien.
Il faut juste comprendre la documentation et savoir se servir de Qt ou alors trouver un moyen de l'intégrer dans un autre compilateur.
PS : Je ne demande pas d'interface graphique, mais juste un programme qui, pour un nom de fichier et un nom de programme, envoie les données. Pas plus.
Merci de ton aide précieuse.
Je vais aussi fouiller de mon côté.
Et j'ai encore jusqu'au 31 août...
----------------------------------
Collectionneur de figurines d'animés. - WoW c'est le mal mais j'ai choisi le côté obscur
Calculatrices : G85 SD, G100+, Classpad 330 (temp), FX-CG 10
Linux, c'est le seul endroit où tu peux taper ls.
Bon, je suis heureux là !
Au bout d'une demi-heure de recherche infructueuses, j'ai finis par trouver une bibliothèque avec des fonctions plus ou moins expliquées !
C'est en C++, mais je pense que je vais m'en sortir...
Le seul problème qui me saoule, c'est que je vais directement devoir trouver une astuce pour contourner un manque : la casio demande 2 bits de Stop, et Windows n'en accepte que 1.5 au maximum >_<'...
EDIT :: juste pour infos, les caractéristiques des Casio sont : Communication série asynchrone à 9600 bauds théoriques, 1 bit de Start, 8 bits de données, 2 bits de Stop, pas de parité.
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Collectionneur de figurines d'animés. - WoW c'est le mal mais j'ai choisi le côté obscur
Calculatrices : G85 SD, G100+, Classpad 330 (temp), FX-CG 10
Linux, c'est le seul endroit où tu peux taper ls.
Kristaba Hors ligne Membre Niveau: Vétéran
Points: 583
Défis: 22 Email | Message
OMG!
en gros, pour le transfert manuel, j'ai cherché des dizaines de jours pour tout retrouver sur une page web XD!
Bon, ça me rassure quand même, car j'avais un petit problème avec deux octets (je ne savais pas trop à quoi ils correspondaient...) et j'ai la solution sur ton lien !
En plus, ça m'aura permis de vérifier les infos dont je disposais...
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Kristaba Hors ligne Membre Niveau: Vétéran
Points: 583
Défis: 22 Email | Message
Bon, j'ai vraiment commencé à m'y mettre il y a trois heure !
Et j'ai -enfin- un -petit- résultat encourageant : je reçois le 0x16 de début de connection, et le 0x22 de "TimeOut" !
Bon, en fait, j'ai décidé d'utiliser l'API Windows *j'ai hoooonte XD*.
La raison est que les bibliothèques ne sont pas adaptées au méga-spécificités de la calto (notamment les deux bits de stop :/ )...
Par contre, j'ai eu quand même du mal, par ce que l'API Windows est... euh... "super bien documentée" si vous voyez ce que je veux dire ...
Donc le point où j'en suis maintenant : j'arrive à recevoir, et théoriquement à emmètre (j'ai pas encore essayer en "conditions réelles" )...
Allez, je retourne au li... euh, à la prog je veux dire !
EDIT (3h du mat) :: Ca y est!!!
J'ai fini le premier essai de communication avec la calculatrice via le port COM1!
Mon logiciel, pour l'instant (c'est juste une ébauche, ma ça marche >_<') est capable de recevoir un programme depuis un Casio (avec un cable COM, bien entendu )...
Il est capable de vous dire, au début du transfert, le nom, le mot de passe du programme, sa taille etc...
A la fin, vous disposez d'un magnifiqueee "nomduprogramme.txt" qui est complètement illisible en ASCII (donc pour vous, petits padawans )... mais qui sera lisible avec le logiciel que nous concocte l'autre Geek :P!
Bon, je vous fille le .rar, avec l'exe et les sources (en C).
Faites-en ce que vous voulez, mais moi, j'vais faire dodo !
Bon, sinon, je suis vraiment content de moi !
Je pensais pas coder ça en une nuit XD!
Allez, demain, je me met à l'optimiser et a continuer le prog !
Pour ceux qui ont un cable, testez-le, t dites-moi si il marche sous tous les Windows, si vous avez eu un bug, si vous voulez des infos, etc...
[mode :: DODO POWAAAAAAA]
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Dafp Hors ligne Membre Niveau: Aucun
Points: 9010
Défis: 191 Email | Message
je sais pas comment tu fais pour rester eveiller comme ça ...
moi j'ai besoin de mes 13 - 14h de sommeil. Donc je me couche à minuit environ, et comme je dois bosser, je suis obliger de me sacrifier et me reveiller tôt pour continuer ... donc ...
J'arrive à bosser que le tôt le matin ou le tard le soir (mais pas trop )... je sais pas pourquoi ?
Il a quelque chose qui me tracasse. Quelle différence y a-t-il dans le mode de communication entre une CFX (Gxx) et une AFX (G100+)?
Car il est (hélas) impossible de communiquer entre ces deux modèles (sauf de CFX AFX).
Donc, quelqu'un connait-il ces différences ?
J'ai testé le programme avec ma G100+ et elle me met un magnifique "Error Transm" (mais bon, on pouvait s'y attendre).
Tiens, je viens d'y penser, suis-je bien en COM 1 ?!? (ouais, j'y étais bien en COM 1)
Dommage qu'il ne fonctionne pas avec les Graph 100 et qu'il y ait autant de fautes d'orthographe.
Va falloir trouver ce problème.
[big]GROSSE[/big] Précision : je ne suis pas un G33k
----------------------------------
Collectionneur de figurines d'animés. - WoW c'est le mal mais j'ai choisi le côté obscur
Calculatrices : G85 SD, G100+, Classpad 330 (temp), FX-CG 10
Linux, c'est le seul endroit où tu peux taper ls.
Ok, je n'ai jamais utilisé conio.h, c'est très simple en fait d'utiliser le port COM. C'est super que tu ai trouvé tous les codes de réponses.Tout ça avait déja été calculé pour faite CasioCom il y a 8 ans, Mais vraiment, bravo a toi
Je ne peux pas tester car je n'ai plus de graph 35+ ni de cable. Mais c'est pas bien grave, ça fonctionne.
Mais quelqu'un a testé sur g35+ ?
Parce que ça marche pas chez moi.
L'ouverture et la configuration du port COM se font correctement, mais la calto affiche Transmit Error quand je veux faire le transfert caltoPC (j'ai testé sous XP).
----------------------------------
Calculatrices : Graph 35+, G100+
Kristaba Hors ligne Membre Niveau: Vétéran
Points: 583
Défis: 22 Email | Message
Humour Light_spirit, humour >_<'!
*sens qu'il a pas intérêt à redire ça *
Bon, alors, pour les fautes d'orthographe, j'suis vraiment désolé, mais déjà, naturellement, je fait pas mal de faute sur les "une consonne ou une double consonne" (un "n" ou "nn" par exemple ).
En plus, comme le DOS ne prend pas les accents, j'ai un peu du mal à m'y repérer...
Et pour finir, c'est vrai que j'avais pas trop le courage de me relire -___-'...
Totoyo>> Ben, a priori, la différence est la vitesse de transmission...
Une graph 25/35 communique à 9600 bauds (= bits par seconde ici), alors qu'une 85 communique nativement (mais on peut changer la vitesse sur celle là ) à, euh... enfin, j'ai plus les chiffres en tête, mais ça doit être environs 115000 bauds ... La graph 100/100+ doit faire la même chose.
De plus, il n'est pas exclu qu'il y ai d'autres différences, tel que la parité, ou encore les bits de stop/start... Mais je n'en sait rien pour l'instant ...
Zefortiche>> Mince... T'es sûr que ça marche pas? o_O
Tu fait bien "1" dans le menu principal du logiciel?
Il y a quoi d'affiché sur la console, au moment tu tentes la communication?
Et aussi, tu est bien sur le port "COM1"?
Pour tout dire, au début, j'avais fait un truc qui demandait le port à ouvrir... Mais je l'ai enlevé pour les tests... Enfin, y avais juste trois ligne de code, j'essaierais de refaire ça pour la prochaine "version" !
Donc, voilà, j'ai pas encore trop avancé dessus, car je me suis finalement endormis de 13h à 18h30 (fallait s'y attendre XD)...
Mais j'mis remet, là, tout de suite !
D'ailleur, j'ai presque finit l'émission d'un programme... depuis un fichier ! (ce que voulait Light_Spirit à la base )
Le plus soulant aura été de trouver un truc pour calculer le "checksum" d'un programme, mais bon ...
*retourne à sa programmation*
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Zefortiche Hors ligne Super admin Niveau: Confirmé
Points: 5414
Défis: 54 Email | Message
Vu que je n'ai qu'une Graph 100+, le port s'ouvre mais le programme ne reçoit pas les données. Normal
Il y a plusieurs vitesses de transmission pour les Graph 100 : 38 400 ou 115 xxx.
J'ai regardé vite fait les sources de Flash 100 pour piquer les paramètres de transmission mais c'est chaud. Je vais m'y mettre sérieusement.
Il utilisent 38 400 pour la vitesse de transmission.
C'est la calculatrice qui affiche "Erreur transm"
Ça va être un peu chiant pour la Graph 100
----------------------------------
Collectionneur de figurines d'animés. - WoW c'est le mal mais j'ai choisi le côté obscur
Calculatrices : G85 SD, G100+, Classpad 330 (temp), FX-CG 10
Linux, c'est le seul endroit où tu peux taper ls.
Kristaba Hors ligne Membre Niveau: Vétéran
Points: 583
Défis: 22 Email | Message
Ca y est !
Je saute littérallement de joie >_<'...
...J'ai envoyé un fichier à la calculatriceeeeee! XD
Bon, je vous assure, ça fait des heures que je bosse à chercher les Header, les Checksum, les vérifications diverses... Et enfin, le fruit de mon travail !
J'ai même découvert un truc excellent !
En fait, lors d'une réception de programme, la calculatrice ne vérifie pas le poids du programme... Elle affiche, dans le menu programme, le poids qu'on lui a indiqué XD!
Donc j'me suis amusé à faire que le programme indique à la calculatrice que ce que l'on envoi pèse...65 792octets (soit plus que la taille de la calto XD)...
Et j'ai eu le plus gros bug jamais répertorié, j'pense !
Elle commence avec un "Error Sys" lors de la transmission (j'avais jamais vu ça ), puis, je retourne au menu, je vais dans les programme, et tous les p'tits programmes de Drug II qui se transforment en "01010101", et qui pèse 16 octet o_O...
Enfin, je vais dans le mode Run, je lance un calcul "89+1", et elle me sort "Error Syn", et m'envoie en plein milieu d'un programme o_O...
J'appuie sur "Menu", et paf, j'arrive sur un écran chelou avec des pixels qui défilent..; Et plus aucunes touche qui répond O_o (même AC/ON).
Enfin, bon, j'ai dû faire un 'tit reset moa >_<'...
Enfin, bon, tout ça pour dire que je m'amuse bien, en ce moment >_<'...
Lignt_Spirit>>J'ai trouvé quelques trucs intéressants sur la communication avec les Graph 100+... Je suis presque sû, maintenant, que l'ordre dans lequel les éléments sont envoyé n'est pas le même... Donc, non seulement il va falloir utiliser du 38 400, mais en plus, il va falloir faire un "autre programme" (je veux dire que le programme aura deux partie complètement différente...)!
PS :: Je vous joint le .rar de mon logiciel, mais je vous déconseille de lancer ce dernier : cette version est particulièrement instable, si vous voyez ce que je veux dire !
En fait, sur 8 essais d'envoi de programme (pas identiques, mais similaires ), seul une a fonctionné...
Puis ça plante pas mal, puisque je n'ai pas vraiment eu le temps de la débuger un peu...
Enfin, bref, regardez les sources, et lancez le programme si vous voulez, mais faites gaffe quand même, hein!
EDIT :: Bon, gros edit (pas pour faire le plus long post du monde, mais par ce que je sais que les modo n'aiment pas le pseudo-double post >_<'), pour dire pleiiiin de chose !
Donc j'ai déboguer mon programme (pas a fond, bien sûr, mais la partie visible, quoi ), et je l'ai commencé à clarifier les sources (par ce que je ne serais pas le seul à les utiliser, je pense ).
Donc, premier point : ça y est, le programme ne bug plus lorsqu'il envoi des fichier...
Il calcule maintenant tous les checksum automatiquement, donc vous pouvez vous amuser à faire un nouveau fichier .txt, à mettre ":" en première lettre de votre fichier, puis à marquer ce que vous voulez dedans, pour l'envoyer à la calculatrice après >_<'... (ben qu'est ce qu'on s'amuse dites-donc ).
Ah, et aussi, ne vous inquiétez pas si vous voyez des milliers de chiffres et de lettres lors de l'émission d'un gros programme : c'est juste le contenu hexadécimale de ce que le logiciel envoie.
D'ailleurs, je me met dès demain à la traduction "symbole calculatrice <-- hexadécimale", ce qui permettra rapidement de voir réellement ce qui est envoyé (et qui permettra à Light_Spirit de faire un fichier hexadécimale pour être envoyé par mon logiciel, si je résume)...
Et, tant que j'y pense, il va falloir que ceux qui ont une calculatrice Graph 100(+) ou 85(SD) m'aident un peu...
A moins que Light_Spirit ne comprenne mes sources (je les clarifierais si il faut, hein!), et qu'il fasse lui-même la partie Graph 100+.
Voilà, fin de THE message !
*donne un "bon point" à tous ceux qui ont lu le message en entier*
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Mais c'est la calculatrice qui met "Erreur transm" et rien ne s'affiche à l'écran de ton programme donc peut être que les bytes d'envoi et de réception ne sont pas les mêmes et/ou qu'ils sont inversés.
Je vais trafiquer ton programme pour trouver la réponse.
Après, s'il y a des différences, pour être sûr des correspondances, faudrait envoyer un programme contenant tous les symboles présents dans la calculatrice, séparés pas des saut à la ligne, afin d'avoir une table de correspondance.
Bonne chance
----------------------------------
Collectionneur de figurines d'animés. - WoW c'est le mal mais j'ai choisi le côté obscur
Calculatrices : G85 SD, G100+, Classpad 330 (temp), FX-CG 10
Linux, c'est le seul endroit où tu peux taper ls.
Kristaba Hors ligne Membre Niveau: Vétéran
Points: 583
Défis: 22 Email | Message
Rhoo!
Franchement, c'est super Light_Spirit !
J'avais fait un truc hier, qui envoyait les symboles hexadécimaux de 0x00 à 0xFE (donc j'avais une petite idée), mais pour les caractères à deux octets, j'avais "la flême" de tous les chercher (je savais juste que certain commençaient par 0x7F, mais c'est tout...).
Ouai, en effet, je vais tenter de faire une "séquence de contrôle".
Pour la Graph 100(+), apparemment, tout change :
*Besoin d'un autre header en début de connection.
*Headers différents...
*Pas les même valeurs envoyés pour valider/annuler/continuer...
Bref, je ne suis pas sûr à 100%, mais je pense qu'il faudrait faire des recherches dessus et/ou trouver un site ou des sources qui nous permette de comprendre...
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Vebveb Hors ligne Membre Niveau: Elite
Points: 582
Défis: 14 Email | Message
Je pense qu'il n'y a qu'a se servir de flash100, les sources sont disponibles: il a une partie permettant de recevoir des .cat et d'en envoyer. Votre rève quoi.
----------------------------------
Kristaba Hors ligne Membre Niveau: Vétéran
Points: 583
Défis: 22 Email | Message
Bah, pourquoi pas...
Mais c'est vrai que, moi, je préfère avoir codé moi-même quelque chose (notamment par ce que, si on a un bug, on sait facilement d'où ça peut venir...).
Mais bon, si on a pas le choix !
----------------------------------
Une bataille navale avec Intelligence Artificielle sur Graph 35? C'est ICI !
Projets en cours :
*CGUI++, Une GUI C++ multi-plateforme conçue pour fonctionner sur calculatrices.
*Tiles Creator, un environnement de création et gestion de ressources graphiques.
Planète-Casio est un site communautaire indépendant et n'est donc pas affilié à Casio | Toute reproduction de Planète-Casio, même partielle, est interdite
Les fichiers, programmes et publications postés sur Planète-Casio restent la propriété de leurs auteurs respectifs et peuvent être soumis à des copyrights
Merci de respecter le travail des autres ! | CASIO est une marque déposée par CASIO Computer Co., Ltd