Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-CG50
Posted: 12 May 2023, 14:32
Le grand intérêt de la calculatrice NumWorks lors de son lancement en 2017, c'était le caractère opensource de son firmware Epsilon, rompant avec les usages des constructeurs historiques.
Librement réutilisable conformément à la licence, le code source d'Epsilon a pu servi à la genèse de bien d'autres projets. Nous pouvons citer un portage du firmware officiel Epsilon pour calculatrices HP Prime par jean-baptiste boric.
Mais le code d'Epsilon a également servi à créer d'autres firmwares également pour la calculatrice NumWorks.
Au premier rang d'entre eux, nous pouvons citer Omega par Quentin Guidee et ses non moins illustres collaborateurs. Le but d'Omega était de regrouper et mettre en avant les meilleures contributions au code d'Epsilon, la plupart n'étant en effet pas intégrées par le constructeur.
Difficile de tout citer, mais par exemple rappelons que le firmware officiel Epsilon travaille en interne sur des arbres de calcul, sauf sauf qu'il les bride artificiellement pour n'accepter que des valeurs numériques. Omega autorise ces arbres à utiliser des lettres / inconnues, ce qui nous redonnait ainsi un moteur de calcul littéral. De quoi même dériver, du jamais vu à seulement 80€ !
On peut aussi citer un tableau périodique des éléments, ou encore la possibilité d'avoir une bibliothèque de constantes physiques avec unités bien avant que ce ne soit disponible dans le firmware officiel.
Outre ce qu'il intégrait, Omega offrait également l'avantage de pouvoir installer à chaud des applications, fonctionnalité jusqu'alors absente du firmware officiel Epsilon. Plusieurs applications de très haute facture furent développées, on peut citer entre autres :
En conséquence de cette annonce, deux autres projets de firmware tiers ont émergé en reprenant le code source d'Omega, et c'est-à-dire par inclusion d'Epsilon 15 :
Au premier rang d'entre eux, nous pouvons citer Omega par Quentin Guidee et ses non moins illustres collaborateurs. Le but d'Omega était de regrouper et mettre en avant les meilleures contributions au code d'Epsilon, la plupart n'étant en effet pas intégrées par le constructeur.
Difficile de tout citer, mais par exemple rappelons que le firmware officiel Epsilon travaille en interne sur des arbres de calcul, sauf sauf qu'il les bride artificiellement pour n'accepter que des valeurs numériques. Omega autorise ces arbres à utiliser des lettres / inconnues, ce qui nous redonnait ainsi un moteur de calcul littéral. De quoi même dériver, du jamais vu à seulement 80€ !
On peut aussi citer un tableau périodique des éléments, ou encore la possibilité d'avoir une bibliothèque de constantes physiques avec unités bien avant que ce ne soit disponible dans le firmware officiel.
Outre ce qu'il intégrait, Omega offrait également l'avantage de pouvoir installer à chaud des applications, fonctionnalité jusqu'alors absente du firmware officiel Epsilon. Plusieurs applications de très haute facture furent développées, on peut citer entre autres :
- KhiCAS, une formidable application intégrée de Mathématiques et de Sciences par Bernard Parisse, enseignant-chercheur à l'Université de Grenoble, qui étendait gratuitement les capacités de ta calculatrice au niveau d'une HP Prime. L'application intégrait le moteur de calcul formel GIAC développé pour le logiciel Xcas du même auteur pour des possibilités en calcul encore plus étendues. Étaient également inclus un tableur ainsi qu'un un tableau périodique des éléments (deux applications faisant toujours à ce jour cruellement défaut au firmware officiel Epsilon), ainsi qu'une bibliothèque de constantes physiques, un convertisseur d'unités, et bien d'autres choses encore. Le tout était en prime programmable en Python, avec une collection de bibliothèques importables bien plus étoffée que celle de l'application du firmware officiel, et surtout ici de façon intégrée, tes scripts Python pouvant même ici faire appel au moteur de calcul formel GIAC par l'intermédiaire de la bibliothèquecas.
- Nofrendo, un émulateur de console de jeux Nintendo NES par zardam
- Peanut-GB, un émulateur de console de jeux Nintendo GameBoy par M4x1m3
- Periodic, un autre tableau périodique des éléments par M4x1m3
Pour la rentrée 2021, NumWorks sortait la mise à jour Epsilon 16 qui introduisait un verrouillage de ses calculatrices, empêchant d'y installer tout autre firmware que l'officiel Epsilon.
NumWorks en profitait également pour révoquer la licence libre utilisée jusqu'alors. Même si le code source reste partiellement consultable, les éléments y ayant été introduits à partir de la version 16 ne peuvent plus être réutilisés.
Même si le projet a continué par la suite, se concentrant davantage sur l'aspect sécuritaire que sur les fonctionnalités, l'équipe Omega avait commencé par annoncer un abandon du projet suite à cela.
NumWorks en profitait également pour révoquer la licence libre utilisée jusqu'alors. Même si le code source reste partiellement consultable, les éléments y ayant été introduits à partir de la version 16 ne peuvent plus être réutilisés.
Même si le projet a continué par la suite, se concentrant davantage sur l'aspect sécuritaire que sur les fonctionnalités, l'équipe Omega avait commencé par annoncer un abandon du projet suite à cela.
En conséquence de cette annonce, deux autres projets de firmware tiers ont émergé en reprenant le code source d'Omega, et c'est-à-dire par inclusion d'Epsilon 15 :
Aujourd'hui c'est un nouveau portage que nous offre Heath, cette fois-ci du firmware Upsilon sous la forme d'une application pour calculatrices Casio couleur : la Graph 90+E française, ses déclinaisons internationales fx-CG50, ainsi que les anciens modèles fx-CG10/20.
Notons que Heath s'est donné la peine d'adapter l'interface à l'écran plus allongé de la calculatrice (rapport de 7/4 avec 396×224 pixels au lieu des 320×240 pixels en 4/3 des NumWorks). Pour l'écran d'accueil cela se traduit par l'affichage des icônes sur 4 colonnes au lieu de 3.
Tu peux donc maintenant des fonctionnalités d'Upsilon sur ta calculatrice Casio, c'est-à-dire entre autres :
C'est remarquable d'ailleurs car l'interface ne souffre d'aucun ralentissement malgré la puissance inférieure des Graph 90+E et fx-CG10/20/50 par rapport à une NumWorks !
Notons que Heath s'est donné la peine d'adapter l'interface à l'écran plus allongé de la calculatrice (rapport de 7/4 avec 396×224 pixels au lieu des 320×240 pixels en 4/3 des NumWorks). Pour l'écran d'accueil cela se traduit par l'affichage des icônes sur 4 colonnes au lieu de 3.
Tu peux donc maintenant des fonctionnalités d'Upsilon sur ta calculatrice Casio, c'est-à-dire entre autres :
- des fonctionnalités d'Omega
- des fonctionnalités d'Epsilon jusqu'à la version 15
C'est remarquable d'ailleurs car l'interface ne souffre d'aucun ralentissement malgré la puissance inférieure des Graph 90+E et fx-CG10/20/50 par rapport à une NumWorks !
Attention toutefois car tout ne marche pas encore à la perfection :
- aucune persistance des données, tout ce que tu saisis sera perdu à chaque fois que tu sortiras de l'application Upsilon (Bernard Parisse a toutefois proposé depuis un correctif à ce sujet, non encore intégré au projet - c'est cette version améliorée que nous te proposons en téléchargement ci-dessous)
- aucun accès au système de fichiers Casio et donc aucun moyen de charger des scripts Python ou des applications Upsilon/Omega/Khi
- aucune connectivité USB
- et gros problème, même si le mode examen d'Upsilon est activable il ne fait malheureusement pas clignoter la diode ce qui rend hélas cette application inutilisable en France
Téléchargement : archives_voir.php?id=3373698
Source : https://www.cemetech.net/forum/viewtopic.php?t=19114 via viewtopic.php?f=23&t=26193#p271906