Planète Casio - Projets de programmation - Flux RSS http://www.planet-casio.com Programmes Casio, Jeux, Cours pour Calculatrices Casio fr-FR https://www.planet-casio.com/images/logo.gif Planète Casio - Projets de programmation - Flux RSS http://www.planet-casio.com 55 50 Programmes Casio, Jeux, Cours pour Calculatrices Casio. Fri, 06 Feb 2026 21:41:32 GMT Fri, 06 Feb 2026 21:41:32 GMT contact@planet-casio.com (Planet Casio) contact@planet-casio.com (Planet Casio) 5 fxcgIO : une librairie pour applications en mode console (a.k.a. terminal) https://www.planet-casio.com/Fr/forums/topic19420--.html Hello, cela faisait un bon moment que je voulais développer une librairie pour permettre de faire des applications simples en mode console (ie. dans un terminal). L'idée s'est renforcée lorsque Lephenixnoir a permis la redirection des flux standards stdin/stdout/stderr en C (et leurs correspondant cin/ceout/cerr en C++) avec gint et la fxlibc. La librairie permet de faire tout simplement des programmes utilisant la syntaxe de base du C avec printf()/scanf() ou cout/cin en C++. La librairie se chargeant de gérer les flux, d'afficher dans un terminal. Accessoirement, le terminal gère partiellement les Control Sequence de base VT100 (les escape codes permettant de coloriser le texte). Il faudra que je complète au fur et à mesure, mais la base est là. Il y a aussi un mode "game" pour les mordus qui voudrait faire des jeux en ASCII art. Il faudra implémenter quelques jolies fontes. Voici quelques exemples de screenshots issus des nombreux programmes de tests : https://imgur.com/nOu0RaM.png https://imgur.com/DfopG6z.png https://imgur.com/WJLIqT3.png Le projet est géré par giteapc pour l'installation et la configuration : `giteapc install Slyvtt/fxcgIO` ensuite dans votre projet au niveau du fichier CMakeLists.txt, il vous suffit de faire un find_package(fxCGIO 0.1 REQUIRED) et ne pas oublier d'include la librairie target_link_libraries(myaddin fxCGIO::fxCGIO Gint::Gint) si vous êtes en C ou bien target_link_libraries(myaddin fxCGIO::fxCGIO Gint::Gint -lstdc++) si vous êtes en C++ Un petit programme d'exemple en C : #include <fxCGIO/fxCGIO.h> #include <stdio.h> int main(void) { fxCGIO_init(); printf("=== Test ANSI fxCGIO ===\n\n"); printf("Texte normal\n"); printf("\x1b[31mRouge\x1b[0m "); printf("\x1b[32mVert\x1b[0m "); printf("\x1b[33mJaune\x1b[0m "); printf("\x1b[34mBleu\x1b[0m "); printf("\x1b[35mMagenta\x1b[0m "); printf("\x1b[36mCyan\x1b[0m "); printf("\x1b[37mBlanc\x1b[0m\n\n"); printf("Couleurs de fond :\n"); printf("\x1b[30;47m Noir sur Blanc \x1b[0m\n"); printf("\x1b[31;40m Rouge sur Noir \x1b[0m\n"); printf("\x1b[32;44m Vert sur Bleu \x1b[0m\n"); printf("\x1b[33;45m Jaune sur Magenta \x1b[0m\n\n"); printf("Test positionnement curseur (10,5)\n"); printf("\x1b[5;10HICI\n"); printf("\nTest clear écran dans 2 secondes...\n"); /* petite boucle d’attente grossière */ for(volatile int i = 0; i < 20000000; i++); printf("\x1b[2J"); printf("Ecran efface.\n"); printf("\x1b[10;5HFin du test.\n"); getchar(); fxCGIO_free(); return 0; } et en C++ #include <fxCGIO/fxCGIO.hpp> #include <cstdio> using namespace fxCGIO; int main() { fxCGIO::init(); cout << "=== Test ANSI fxCGIO (C++) ===\n\n"; cout << "Texte normal\n"; cout << "\x1b[31mRouge\x1b[0m "; cout << "\x1b[32mVert\x1b[0m "; cout << "\x1b[33mJaune\x1b[0m "; cout << "\x1b[34mBleu\x1b[0m "; cout << "\x1b[35mMagenta\x1b[0m "; cout << "\x1b[36mCyan\x1b[0m "; cout << "\x1b[37mBlanc\x1b[0m\n\n"; cout << "Couleurs de fond :\n"; cout << "\x1b[30;47m Noir sur Blanc \x1b[0m\n"; cout << "\x1b[31;40m Rouge sur Noir \x1b[0m\n"; cout << "\x1b[32;44m Vert sur Bleu \x1b[0m\n"; cout << "\x1b[33;45m Jaune sur Magenta \x1b[0m\n\n"; cout << "Test positionnement curseur (20,8)\n"; cout << "\x1b[8;20HCOUCOU\n"; cout << "\nClear écran dans 2 secondes...\n"; for(volatile int i = 0; i < 20000000; i++); cout << "\x1b[2J"; cout << "Ecran efface.\n"; cout << "\x1b[12;10HFin du test C++.\n"; getchar(); fxCGIO::clear(); fxCGIO::free(); return 0; } Je continue de debugger/ajouter des features et des programmes exemples. Le projet est accessible ici : https://git.planet-casio.com/Slyvtt/fxcgIO sur la forge Planète Casio N'hésitez pas à me dire si vous trouvez des bugs (il doit y en avoir, car c'est dur de tout tester). Il reste encore pas mal de choses à faire : - une keymap complète pour prizm - la variante pour la math+ - un support plus complet des codes VT100 et + - une API avancée pour le mode game - une fonte 256char en 5x7 pixels pour avoir plus de caractères - la gestion des fontes dynamiquement (recalcul de l’écran lorsque l'on change de police de caractères) - support des fontes unicodes ??? - une librairie simple ncurses-like pour faire des interfaces TUI - support du Classpad et des fx9860G - éventuellement des drivers input/output (fichiers / USB / COM (serial) / etc...), logiquement l'interfaçage des flux est suffisamment générique pour que ça se fasse relativement facilement. Bref, plein d'idées, surement trop pour le temps disponible de votre humble serviteur. Amusez vous bien. Sly @RDP à l'occasion Tue, 03 Feb 2026 22:04:54 +0100 NESizm and Prizoop — Now on fx-CG100/Graph Math+! https://www.planet-casio.com/Fr/forums/topic19383--.html The day has finally come: NESizm and Prizoop are now available on the latest Classwiz calculators fx-CG100 and Graph Math+, with the same features and ROM support as in fx-CG50/Graph 90+E! :D https://i.imgur.com/VH25Z2l.jpeghttps://i.imgur.com/D8pEleP.jpeg ROMs used: MANTLE.NES, Pokémon Red Version A few years back, Thomas Williamson released NESizm and Prizoop that allow users to load their favorite NES and Gameboy (Color) ROMs into a Prizm fx-CG calculator. They unfortunately do not work on the latest calculators as Casio removed the ability to run add-ins natively. As a remedy, Planète Casio released MPM to restore the add-ins, but at the current stage it only supports add-ins that are either compiled under fxSDK/gint, or adapted by directly mapping Graph Math+ address to each corresponding fx-CG50 syscall. The MPM version of both NESizm and Prizoop released today use the one-to-one mapping approach, and thus only supports fx-CG100/Graph Math+ with OS 02.00.0202/02.00.2202. Any other OS version will lead to a system error as the addresses are different for each version. I may update both emulator add-ins if MPM is updated with latest OS support, but finding correct addresses takes quite a lot of repetitive searches and I have to do so again every time the OS/MPM updates. I was able to quickly determine them thanks to Parisse's (developer of KhiCAS) syscall script and Lephe's fxos tools. Ultimately, they need to be ported to fxSDK/gint with rewrite that removes dependencies to legacy syscalls, but the effort is much larger due to API differences between fxSDK/gint and PrizmSDK. Both emulators are attached to this thread. Have fun! Wed, 14 Jan 2026 15:05:11 +0100 image vers CASIO fx-92+ SC https://www.planet-casio.com/Fr/forums/topic19359--.html je pense a un programme qui pourrais: ⇒sur la calculatrice, décomposer un nombre binaire et savoir quel est son x ème chiffre et si le nombre est 1, le pixel (qui est de couleur noir) s'allume, a l'inverse si il est de 0, le pixel reste éteint (couleur plus claire) et il vas au prochain pixel, et, après vérification, la suite peut maximum comporter 12 chiffres donc il faudra écrire les suite par lot de chiffre de 12, se qui sera long, mais le résultat sera la.: état de marche et finition du programme ⇒sur l'ordinateur, par un programme python, il vas mettre une image voulus au contraste noir et blanc et il convertira par lot de 12 chiffres: 1 pour le pixel noir, et 0 pour les pixel blanc.: état de marche et finition du programme Tue, 23 Dec 2025 14:34:35 +0100 Squish It !! - un addin pour les écrabouiller tous !! https://www.planet-casio.com/Fr/forums/topic19185--.html Hello, voici donc venu le jour tant attendu de la divulgation de la version 1.10 de Squish It !!, après une première version 1.00 limitée en fonctionnalités, qui faisait plus preuve de PoC que de réelle sortie. 1/ Squish It !! ? Késako Vous n'êtes certainement pas sans savoir que la Graph Math+ sortie à la rentrée dernière est très proche de la G90+E, mais présente un énorme désavantage par rapport à son aïeule : une mémoire flash disponible pour l'utilisateur qui a fondu comme neige au soleil, passant de 16Mo à seulement 4,5Mo. Pour le commun des mortels utilisateurs, cela ne pose pas de problème, mais pour les power users et les codeurs, dont je fais partie et qui ont toujours 10 000 addins qui traînent sur leur machine pour tester des trucs, 4,5Mo, c'est la misère vite fait, toujours obligé de virer des trucs pour en mettre d'autres. Bref, c'est bien lourd !!! Donc il y a 2 semaines environ, je me suis motivé pour créer un addins permettant de compresser et décompresser des addins on-calc afin de virtuellement faire comme si la machine disposait de plus de mémoire de stockage. Ayant travaillé sur la librairie de compression zlib lors de la conversion de la SDL pour machines casio, je savais qu'on pouvait obtenir de relativement bons niveaux de compression sur des fichiers de type addins (cf. ce fil : Zlib pour Casio fx/cg (développement et benchmark)). J'ai donc voulu pousser le concept et proposer un utilitaire permettant de faire facilement ces opérations de compression/décompression. Voici donc la genèse de Squish It !! https://www.youtube.com/watch?v=YMY8KjKAAqw Petite vidéo de la version 1.00 lors de la compression d'un addin de Casio (3DGraph) 2/ Comment fonctionne Squish It !! Squish It !! fonctionne sur Graph Math+ et fxCG-100 uniquement**, en OS version 2.00 et jailbreakée avec la dernière version de MPM que vous trouverez ici sur la forge de Planète Casio (il est important d'avoir au moins la version reposant sur le commit permettant de voir les fichiers G3A après décompression). Squish It !! propose une interface simple permettant de lister les addins non compressés (au format G3A) ainsi que les éventuels addins compressés au format propriétaire de Squish It !! (à savoir le format G3Z). Le logiciel permet de compresser les fichiers G3A en G3Z selon diverses méthodes et niveaux de compression: :here: format de compression Zlib avec compression maximale (notée `ZlibMax`) :here: format de compression Zlib avec vitesse maximale (notée `ZlibFst`) :here: format de compression LZ4 (HC) avec compression HC level 9 (notée `LZ4Max`) :here: format de compression LZ4 (HC) avec vitesse rapide HC level 3 (notée `LZ4Fst`) Il suffit de sélectionner dans la partie droite de l'écran un G3A non compressé et de faire EXE ou OK pour lancer la compression avec la méthode sélectionnée (la méthode pouvant être changée via la touche PageUp, l'option en cours étant indiquée à l'écran). Puis la compression se fait avec de multiples validations internes afin de ne pas avoir de soucis (bien lire les messages en bas de l'application sous la zone bleue). La compression par défaut est réglée sur `ZlibMax`. Inversement, si vous avez un addin compressé au format G3Z et que vous voulez l'utiliser, il vous suffit de le sélectionner dans la zone ad-hoc à droite et là encore de faire EXE ou OK pour lancer sa décompression. Squish It !! sait bien entendu reconnaître le format de compression qui avait été utilisé et proposer automatiquement la décompression qui va bien. On passe de la colonne gauche (Addins G3A) à la colonne de droite (Archives G3Z) avec les flèches gauche (<-) et droite (->) ou les touches Page Précédente (|<-) et Page Suivante (->|). ** Note: le programme est fonctionnellement capable de fonctionner sur Graph 90+E ou Prizm (fxCG-10/20 et 50), mais l'OS ne tolère pas l'écriture d'un fichier G3A depuis un addin en cours de fonctionnement (en l'occurence Squish It !!). Hélas toute tentative d'écriture du G3A après décompression se traduit par un crash instantanné de la machine. 3/ C'est fiable, ce Squish It !! ? De nombreux tests ont été réalisés sur cette version. 31 Addins différents (32 en réalité puisque qu'un test de survie** incluant SquishIt.G3A a été réalisé à chaque round) ont été passés et testés avant et après chacune des méthodes de compression et de décompression. Cela fait vraiment beaucoup de tests, 4x2x31 tests, à savoir 4 méthodes (a.k.a. algorithmes), compression puis décompression puis lancement de l'addins afin de vérifier l'absence d'erreur, sur 31 addins représentant au total plus de 10Mo de data. Cela fait partie des règles pour proposer un programme éprouvé et ne présentant pas de risque pour votre machine. L'ensemble des tests a été conduit avec succès. Le détail de ceux-ci est donné dans les chapitres suivant visant l'analyse des performances. ** Note: une sécurité est prévue pour empêcher de compresser le programme Squish It !! et ainsi se retrouver bloqué sans possibilité de décompresser les autres addins ultérieurement. En cas de tentative, un message d'erreur apparaît dans la zone de message en bas de l'écran. 4/ Que peut on en attendre ? Selon la méthode utilisée, on peut s'attendre en moyenne à des taux de compression allant de 50% à 60% (le G3Z une fois compressé fait de 40% à 50% de la taille du G3A initial). Bien entendu il y a une certaine variabilité des taux de compression d'un addin à l'autre, ceux ci pouvant s'étaler d'environ 25% (le G3Z fait 75% de la taille du G3A) à 80% (le G3Z fait alors seulement 20% de la taille du G3A). Avant de donner le détail méthode par méthode, voici les résultats globaux sur les 31 addins (tailles allant de 75kB à 1,5MB) : MéthodeTaille cumulée (en kB)Taux de compression moyenAddins fonctionnelsTemps Cumulé de Compression (en s)Temps Cumulé de Décompression (en s)Addins non compressés10136,1(0%)31(-)(-)ZLibMax4192,258,6%319401859ZLibFast4480,155,80%319241935LZ4Max4865,951,99%319992024LZ4Fast4992,450,75%3110101921 Le résumé est donné au global par les trois graphiques suivants : Tout d'abord la comparaison des tailles d'archive G3Z selon la tailles des addins G3A en entrée. On note que la taille avec la méthode ZLibMax est toujours la plus faible. https://imgur.com/qzpDO8K.png Vient ensuite la comparaison des temps de compression des addins G3A pour obtenir l'archive G3Z correspondante. Il est intéressant de noter que les méthodes "Fast" se débrouillent moins bien que leurs homologues "Max", ce qui peut paraître paradoxal, mais cela s'explique simplement par la métrique utilisée qui incorpore tout le process Compression + Ecriture de l'archive et le gain de temps lié à la compression par une méthode plus rapide set plus que consommé par le temps d'écriture plus long lié à une taille d'archive plus imposante. En bref, avec une mémoire flash très lente sur Casio, la performance est limitée par celle-ci. Là encore c'est l'algorithme ZLibMax qui s'en sort le mieux du fait des archives les plus compactes. Il est à noter quand même une assez grosse disparité d'un addin à l'autre. Notamment pour les gros addins supérieurs à 1Mo qui semblent s'en sortir mieux avec la ZLibFast. https://imgur.com/MU1L2et.png Enfin, les temps de décompression, en fonction de la taille de l'addin G3A en sortie. Globalement tout le monde est aligné à quelques epsilons, avec une relation purement linéaire à la taille de sortie. https://imgur.com/nkpXFjJ.png 5/ Et si moi j'aime les chiffres ? Et bien, Grand Seigneur, je te mets l'ensemble des données qui a permis de faire les benchmarks. Amuse toi bien mon Ami :E :here: Les données liées à la ZLib Compression Maximale (cZlib 1.2.5 dispo ici : https://git.planet-casio.com/Slyvtt/cZlib utilisée avec le paramètre Z_BEST_COMPRESSION) https://imgur.com/kvSr1ck.png :here: Les données liées à la ZLib Vitesse Maximale (cZlib 1.2.5 dispo ici : https://git.planet-casio.com/Slyvtt/cZlib utilisée avec le paramètre Z_BEST_SPEED) https://imgur.com/pRSD4uL.png :here: Les données liées à la LZ4 Compression Maximale (cLZ4 1.10.0 dispo ici : https://git.planet-casio.com/Fcalva/cLZ4 utilisée avec le paramètre HC = 9) https://imgur.com/C52xENh.png :here: Les données liées à la LZ4 Vitesse Maximale (cLZ4 1.10.0 dispo ici : https://git.planet-casio.com/Fcalva/cLZ4 utilisée avec le paramètre HC = 3) https://imgur.com/wd5iG0p.png 6/ Les sources sont dispo ? Comme tous mes projets, les sources sont disponibles pour la communauté. Le projet est abrité dans la forge de Planète Casio ici : https://git.planet-casio.com/Slyvtt/SquishIt Regardez dans la partie Release pour obtenir la dernière version. Vous trouverez dans la section programme de Planète Casio la dernière version en cours ici : https://www.planet-casio.com/Fr/programmes/programme4601-last-squish-it-slyvtt-utilitaires-divers.html N'hésitez pas à faire part de vos commentaires, questions, idées d'amélioration ainsi que des bugs éventuels (avec si possible une manière de le reproduire facilement pour le debogguer). Je prendrais avec plaisir vos idées. Bon écrabouillage d'addins sur vos Math+ !!! Sun, 23 Nov 2025 19:59:24 +0100 HollyHock : Pour libérer votre classpad https://www.planet-casio.com/Fr/forums/topic19135--.html Si vous possédez un ClassPad (cp400, cp400+E, cg500) et que vous avez eu la curiosité de chercher la communauté autour, il y a fort à parier que vous soyez tombé sur le project "HoolyHock" / "ClassPadDev" qui existe depuis plus de 8 ans ! (Voir 10+ si l'on compte le temps de recherche initial et les premières tentatives d'explorer le système) L'idée du projet est simple: permettre de débloquer le plein potentiel d'une machine avec un écran qui en jette. Ce projet a une longue chronologie, débutant avec un simple "Hello World" affiché sur l'écran lorsque l'on clique sur un bouton caché dans un menu système, et a lentement évolué en une SDK basique mais suffisamment complète, avec d'emblématiques port comme CPDoom ou CPBoy. Bien que partageant quelques similitudes (accidentelles) avec PrizmSDK, il s'agit d'un projet né de zéro qui a grandi de manière autonome sans vraiment échanger avec le reste de la communauté. Aujourd'hui avancé au stage d'une nouvelle majeure version (V3) en béta, le projet intègre et s'interface parfaitement avec fxSDK et gint (sur la v2, pour le moment). Mais vous n'êtes pas là pour une leçon d'histoire, pas vrai ? :) Ouvert par nature, vous pouvez retrouver l'entièreté des sources du sdk ainsi que des différents programmes (y compris communautaires) écrit avec hhk2 et 3. Il s'agit d'une des valeur clés de ce projet, qui a permis sa survie et son maintient au fur des années jusqu'à aujourd'hui la v3 et demain la future révision de la SDK pour permettre un niveau de fonctionnalités similaires à ce que l'on avait en SDK sur le ClassPad 300. Nous sommes très reconnaissant envers celles et ceux qui développent sur classpad et partagent leur sources, permettant à la communauté d'apprendre et aux futures révisions d'y être apportées. Point notable, le projet est entièrement en anglais en raison de nationalités variées participant à sa réalisation. Si vous avez un classpad qui traine et que vous voulez essayer d'y installer le mod, la première des choses à vérifier est votre version ABS (révision de votre hardware), le guide est expliqué à cet endroit comment vérifier votre ABS_Date. Si vous être en 2012, vous pouvez utiliser la V2 comme expliqué ici autrement, je vous invite à rejoindre notre serveur discord afin de recevoir la béta de la v3. De plus, si vous avez un soucis avec votre classpad (bootloop, brick...) nous avons plusieurs années d'expérience avec beaucoup d'erreurs de manipulations et de réparations. Ces derniers temps nous essayons même de voir pour remplacer certaines pièces d'origine (type 3D print) et créer des hardware mod (comme le support de Carte SD !) Si vous avez des connaissances en électronique, un classpad, et des idées vous êtes les bienvenus ! Enfin, si discord n'est pas votre tasse de thé (propriétaire, tout cela) vous pouvez répondre à ce thread ou me contacter en privé pour obtenir une beta ou plus d'informations. Quelques liens utiles, pour ceux qui souhaitent creuser : - Le wiki, où l'on essaye de tenir nos recherches à jour - Les sources de la V3, si vous êtes curieux - La template pour créer des programmes python - CPDoom, une petite merveille de techno - CPBoy, une seconde merveille - CP 3D CarGoWroom, une belle démo de jeu en 3D - YAL, le launcher ELF utilisé pour charger des programmes par la V3 (similaire à MPM mais avec un design différent) Et quelques images, pour ceux qui préfèrent le visuel au blabla : https://classpaddev.github.io/img/doom.png CPDoom https://classpaddev.github.io/img/3drender.png CP3DRender https://classpaddev.github.io/img/gb.png CPBoy https://classpaddev.github.io/img/flappy.png CPFlappyBird https://classpaddev.github.io/img/term.png CPShell https://classpaddev.github.io/wiki/img/gui/hhk_demo.png https://raw.githubusercontent.com/TheRainbowPhoenix/EMScriptenSvelte/refs/heads/master/.docs/hhk3-version.png Ainsi que quelques outils liés à HollyHock : https://raw.githubusercontent.com/ClasspadDev/pythonextra-template/refs/heads/master/.docs/runpy.png PythonExtra template https://raw.githubusercontent.com/TheRainbowPhoenix/CP-emu/refs/heads/master/docs/opcodes_file_explorer.png Un émulateur de SH4 pour classpad, en test. https://raw.githubusercontent.com/TheRainbowPhoenix/EMScriptenSvelte/refs/heads/master/.docs/image%20(93).png https://raw.githubusercontent.com/TheRainbowPhoenix/EMScriptenSvelte/refs/heads/master/.docs/betterReload%20(1).mp4 Un live preview des addins HollyHock, compilé pour le web https://raw.githubusercontent.com/TheRainbowPhoenix/EMScriptenSvelte/refs/heads/master/.docs/image.png Un simulateur des debug menu, utilisé dans les guides C'est très bien tout cela mais où je clique ? :here: ICI ! Pour rejoindre notre serveur discord ! On vous guidera pas à pas sur comment installer hhk3 ! Sun, 09 Nov 2025 18:03:32 +0100 Un compresseur d'addins pour Graph Math+ [Work In Progress - Mais problème que je ne comprends pas] https://www.planet-casio.com/Fr/forums/topic19132--.html Hello, une fois n'est pas coutume, c'est un addin de type utilitaire que je suis en train de programmer. Mais qu'arrive-t-il donc à Papy Sly se demande la foule estomaquée !!! Rien, juste une immense frustration d'avoir l'impression de tout le temps devoir retirer des addins pour en mettre d'autres sur la Graph Math+, avec ses "seulement" 4,5Mo de flash réservé à l'utilisateur (mémoire de stockage). Bref, je me suis dit que je ne devais certainement pas être le seul dans ce cas et j'ai donc lancé le projet "Squish It !!" dont les sources sont sur le dépôt de la forge ici. Le programme permet de compresser les fichiers G3A sous un format propriétaire basé sur la compression zlib que j'avais à l'époque mis en place sur Casio pour le portage de la SDL/SDL_image. La compression génère donc un fichier G3Z de taille réduite. On est en moyenne à un ratio de compression de l'ordre de 60%, ce qui est loin d'être négligeable, ceci revenant à avoir virtuellement une mémoire de stockage de ~10Mo (il faut un peu de marge pour pemettre les opérations de compression/décompression) au lieu des 4,5Mo de la machine. Lorsque l'on a besoin de l'addin, il suffit en théorie de le décompresser, et on peut ensuite le lancer une fois qu'il a retrouvé sa forme de G3A reconnu par MPM. Bon, il y a juste un petit (enfin gros) problème à ce stade : l'OS / MPM ne voit pas les fichiers G3A générés après la décompression, bien que ceux-ci soient bien présents sur la mémoire flash. Donc c'est un peu ballot et ça casse un peu le rêve. Voici la manip: - Si on part d'un addin par exemple OutRun.G3A (faisant 848Kb), on peut le voir dans MPM.bin via Tools (...) sur Graph Math+. - Je lance mon addin SquishIt, je sélectionne le fichier OutRun.G3A, je fais la compression qui me génère le fichier OutRun.G3Z (312Kb). - De retour dans MPM.bin via Tools (...), l'addin OutRun a bien disparu (normal, le G3A n'existe plus, il est remplacé par l'archive G3Z). - On relance SquishIt cette fois pour décompresser le G3Z et revenir au G3A, ce qui se fait sans problème. SquishIt actualise les fichiers après la décompression, ne voit plus le G3Z (normal) et voit à nouveau bien le G3A (avec la bonne taille, il y a une vérification pendant la décompression). - on quitte SquishIt pour retourner dans MPM.bin via Tools (...), mais là OutRun n'apparait pas dans la liste des addins présent sur la machine. - si on va dans l'application "mémoire" de l'OS, on voit bien le fichier sur la flash dans la mémoire de stockage (normal). - Pour pouvoir voir et lancer l'addin depuis MPM.bin, je n'ai trouvé qu'une seule méthode : copier l'addin décompressé en G3A sur mon PC puis le remettre sur la calculatrice, et là il apparaît bien dans le menu de MPM.bin via Tools (...). Bref, c'est à s'arracher les cheveux, j'ai la preuve que le G3A est fonctionnel puisque le passage avec le PC se fait sur la base d'addins compressés puis décompressés. J'ai essayé de faire une connexion USB sans déplacer les fichiers, mais sans succès, dans ce cas MPM ne voit pas les G3A décompressés. Bref, je comprends pas ce qui peut se passer de différent entre la copie depuis un PC et l'écriture sur la flash depuis la calculatrice. Si quelqu'un a des idées, je suis preneur. Attention si vous testé l'addin SquishIt, j'ai vérifié pas mal de chose, mais c'est du WIP (notamment sur Graph 90+E il plante à la phase d'effacement du fichier source G3A ou G3Z selon si compression ou décompression). Mon, 03 Nov 2025 20:15:15 +0100 FXForth - Un interpréteur Forth pour Casios https://www.planet-casio.com/Fr/forums/topic19130--.html Pour un peu de contexte: Si je me suis lancé dans ce projet c'est suite aux problèmes des languages existant sur G35 (pour moi) : Le python est lent et pas terrible à utiliser, et le C.Basic est pas si rapide et a une syntaxe qui me repousse. Au départ, j'avais commencé à écrire un language structuré cet été, ressemblant au B. Mais le projet est assez énorme, et je me suis retrouvé à la rentrée avec 1800 lignes de code et un générateur de représentation intermédiare foireux (c'est à dire assez loin de la fin). Donc finalement, je me suis lancé dans le Forth, qui est un des langages les plus simples qui existent :E Le projet J'ai donc un coeur d'interpréteur Forth qui est actuellement fini, il manque juste ... toutes les fonctions standard :lol: Ce qui est présent : - Un lexeur/parseur complet - Une hashmap - Quelques primitives du langage (Appel/retour de fonction, 'exit', constantes, '+','-') Ce qui reste à faire avant que je daigne publier un addin : - Une interface graphique - Améliorer un poil la hashmap - Finir d'implémenter : variables, constantes, chaînes de caractères et déclaration de fonctions - Ajout de '*', '/', '*/', '!', '@', '.', comparaisons, 'if', 'loop', 'while' Le code source est disponible ici :here: https://git.planet-casio.com/Fcalva/fxforth Wed, 29 Oct 2025 15:02:27 +0100 how do i post a game https://www.planet-casio.com/Fr/forums/topic19064--.html how Tue, 09 Sep 2025 17:31:23 +0200 Mode/ hack la fx-92b secondaires https://www.planet-casio.com/Fr/forums/topic18915--.html J'ai u l'idée en revoyant ma calculatrice et la rentré approché, que je pourais essayer de la modifier pour mètre des jeux ou juste m'amuse et apprendre ( je l'ai déjà ouverte ) et m'aide de mon Arduino pour faire sa et de votre aide si vous savez comment en pourrai ou juste des conseils me détruire si mon idée et pas fesable ... Merci de vos conseils. Thu, 07 Aug 2025 01:19:58 +0200 Aide pour créer une appli simple sur Graph 35+E II pour communiquer avec un ESP32 https://www.planet-casio.com/Fr/forums/topic18880--.html Bonjour à tous, Je travaille sur une calculatrice Casio Graph 35+E II et j’aimerais créer une application simple qui puisse échanger des messages avec un ESP32, en utilisant la prise audio 2,5 mm à 3 broches. J’ai déjà soudé des fils entre la prise jack de la calculatrice et l’ESP32. J’ai aussi essayé un exemple de code trouvé sur GitHub, mais malheureusement ça ne fonctionne pas pour l’instant. Mon but est de créer une petite appli qui s’affiche dans le menu principal (comme G2M), avec une fonctionnalité très basique juste pour tester la communication. Est-ce qu’il existe de la documentation, un SDK ou des exemples de code pour ce genre de projet ? Toute aide ou ressource est la bienvenue. Merci d’avance ! Sun, 27 Jul 2025 17:10:47 +0200