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 » [Bêta] PythonExtra.
Lephenixnoir En ligne Administrateur Points: 25849 Défis: 174 Message

[Bêta] PythonExtra.

Posté le 29/10/2022 09:49

PythonExtra est un add-in Python alternatif pour (à ce stade) Graph 35+E II, Prizm et Graph 90+E. L'objectif est de fournir plus de fonctionnalités : modules standard, getkey(), fonctions de dessin plus performantes, etc.

Version Bêta 0.4 (Changelog)
Graph 35+E II / Prizm / Graph 90+E / Math+ / ClassPad : PythonExtra-pe-0.4.0-beta.zip


Aperçu de PythonExtra sur Graph 90+E. (Cliquez pour agrandir)


Aperçu de PythonExtra sur Graph 35+E II (FxPyEdit par Mb88)

Description sommaire des fonctionnalités :
  • Compile pour Graph 90+E (fx-CG 10/20/50) et Graph 35+E II (fx-9860G III)
  • Peu de RAM sur Graph 35+E II (c'est difficile d'en trouver sur ce modèle)
  • Un shell pas trop mal (saisie rapide, scrolling) avec de bonnes performances
  • Plein de modules standard
    • array, builtins, cmath, collections, io, math, random, struct, sys, time
  • Le module spécifique CASIO : casioplot (fidèle à part sur les polices)
  • Un nouveau module gint avec les fonctionnalités avancées de gint :
    • Pour l'instant, une bonne partie de <gint/display.h> et <gint/keyboard.h>
    • Donc getkey() (attente de touche) ainsi que keydown() (test instantané) !
    • Et des fonctions de dessin rapides comme dline() ou drect()

Le plan actuel :
  • Être sensiblement compatible avec l'appli Python officielle.
  • Pousser les fonctionnalités ajoutées pour vraiment relever le niveau de Python !
  • Si du temps de développement se débloque : support autres Graph mono (pas de promesses).

Updates et screenshots à venir. Je n'ai pas l'intention d'implémenter un million de fonctionnalités, juste ce qu'il faut pour s'assurer que ça ne finisse pas mal documenté et non maintenu comme CasioPython.

Dépôt Git : https://gitea.planet-casio.com/Lephenixnoir/PythonExtra
PythonExtra est notamment possible grâce à l'aide précieuse de Mb88.

Comparaison directe

Dans l'exemple ci-dessous (réalisé par Mb88), un Flappy Bird déjà bien optimisé (dessin partiel etc, à gauche) est accéléré un bon gros coup en utilisant PythonExtra et le module gint pour le dessin (à droite).


Contexte historique

Aux journées APMEP 2022, redgl0w racontait comment le port MicroPython pour Numworks n'était finalement pas super difficile. Moi je parlais de comment un port maison résoudrait le problème de getkey(), et Critor m'a convaincu d'essayer sur-le-champ.

En fin de compte, j'ai clôné MicroPython Dimanche à midi et à 1 heure du matin j'avais un port fonctionnel avec getkey() sur ma Graph 90+E (que j'ai d'ailleurs montré à CASIO Lundi, pour la démo). Comme quoi, des fois ça marche tout seul !

(Enfin, le début marche tout seul. Faire une bonne UI et gérer tous les détails ensuite c'est une autre paire de manches !)

Fichier joint


Précédente 1, 2, 3 ··· 10 ··· 20 ··· 30, 31, 32, 33
Slyvtt Hors ligne Maître du Puzzle Points: 2999 Défis: 17 Message

Citer : Posté le 24/02/2026 21:30 | #


On pourrait penser que c'est la meme chose qui se passe sur la Math+ / fxCG100 et qui a conduit à la création de l'OS 2.01
There are only 10 types of people in the world: Those who understand binary, and those who don't ...


issynobu Invité

Citer : Posté le 02/05/2026 05:42 | #


Sur le fx-cg50, il fonctionne avec pythonextrra0.30.
Potchkee Hors ligne Membre Points: 54 Défis: 0 Message

Citer : Posté le 19/07/2026 10:46 | #


hey Lephe, you once mentioned in the dev build there is a way to take screenshots (I'm assuming some sort of emulator), would it be too much to ask if you can post a zip file here in the comments with just the emulator so us non devs can use it? I'd love to get some good screenshots to post of the games I'm building on extrapython (check out Crosswords which I recently posted). Thanks!
Mb88 Hors ligne Rédacteur Points: 1334 Défis: 3 Message
Mb88 Hors ligne Rédacteur Points: 1334 Défis: 3 Message

Citer : Posté le 19/07/2026 21:50 | #


Lephenixnoir a écrit :
Aperçu de PythonExtra sur Graph 35+E II (FxPyEdit par Mb88)


FxPyEdit est codé en C, donc ce n'est pas vraiment correct. Je l'avais codé car l'éditeur de code python de CASIO est mauvais. Sinon il n'a pas vraiment de lien avec PythonExtra (ce n'était peut-être pas clair).
Potchkee Hors ligne Membre Points: 54 Défis: 0 Message

Citer : Posté le 21/07/2026 02:57 | #


Mb88 a écrit :
It's probably mq:


Thanks, but is it working for you to run a program on pythonextra running on mq? I can't even get pe to run. Maybe there is an emulator of pe itself?

Graygoo123 a écrit :

It's working fine for basic tasks now, though it’s still a bit simple.
I know it's not perfect, but hopefully it's a helpful tool for the community until the official editor is ready!


This editor is exactly what I've always needed, thanks alot. You should post it as a program, as of now it's hidden in the comments here, I'm glad I found it!
Mb88 Hors ligne Rédacteur Points: 1334 Défis: 3 Message

Citer : Posté le 21/07/2026 10:23 | #


Nope it runs in mq. At least the filechooser works (I couldn't test much more, I'm on my phone).

Have you pressed the little run button after opening the pythonextra addin?

To run scripts in pythonextra, put them in mq's parent directory, and you should see them in the file chooser when you start pythonextra.
Précédente 1, 2, 3 ··· 10 ··· 20 ··· 30, 31, 32, 33

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:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
captcha
Rafraîchissez la page si vous souhaitez obtenir un nouveau CAPTCHA.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2026 | Il y a 54 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