Page 1 sur 9

Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-CG50

Message non luPosté: 12 Mai 2023, 14:32
de critor
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.
9606Librement 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€ ! :bj:
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.

12024Outre 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 : :D
  • 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
Un gros avantage de plus était ici que KhiCAS et l'ensemble des fonctionnalités rajoutées restaient accessibles en mode examen, de façon parfaitement légale et légitime en France, puisque ces fonctionnalités ne sont pas des données et venaient de plus directement intégrées à des modèles concurrents haut de gamme parfaitement autorisés. :bj:
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.

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 :
  • Upsilon qui pour sa part a continué à faire évoluer les fonctionnalités
  • et Khi qui quant à lui se concentre exclusivement sur l'application KhiCAS

16810Aujourd'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.

16809Tu 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
Espérons que tout ceci pourra évoluer pour devenir encore plus génial ! :D

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

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 12 Mai 2023, 14:37
de ggauny@live.fr
Peut-être un problème pour mettre à l'heure et à la date.

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 12 Mai 2023, 14:43
de critor
Merci, justement, pour la date et l'heure c'est plus étrange.

Rare chose qui n'est pas réinitialisée à chaque sortie de l'application, leurs valeurs semblent bien croissantes avec le temps, mais je n'arrive pas à les régler (la nouvelle date que je saisis, même en changeant juste l'année de 2010 à 2023, est ignorée)

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 12 Mai 2023, 15:56
de parisse
Merci, critor. Il faudra garder en tête de corriger le lien une fois que Heath aura intégré la persistance (le lien actuel pointe sur un répertoire "temporaire" de ma page web).

Sinon, on peut mettre l'heure depuis KhiCAS en tapant la commande
hh,mm [touche_sto] ,
par exemple
16,53=>,
Ensuite Upsilon affiche l'heure correctement.

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 12 Mai 2023, 16:04
de cpierquet
Je trouve ça impressionnant !
Par contre petite question pratique, comment on quitte l'APP pour revenir au menu de la CASIO ?

[Edit : J'ai vu sur le post original qu'il fait appuyer quelques instants sur MENU ^^]

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 12 Mai 2023, 16:13
de Acrocasio
Est-ce qu'il y'aurais moyen de pouvoir envoyer les adds-ins de la Numworks à une Graph 90, et, si oui, d'y faire reconnaitre et lire au portage d'Upsilon ?

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 12 Mai 2023, 16:30
de parisse
Non, on ne peut pas utiliser des extensions Numworks sur Graph90, ce n'est pas le même processeur (et même si c'était le cas, les extensions Numworks n'auraient pas les bonnes adresses mémoire). Mais il existe nettement plus d'addins Casio que d'extensions Numworks...

A propos des échanges avec Upsilon, on devrait pouvoir assez facilement ajouter un minimum de possibilité d'échange via les fichiers de sauvegarde du scriptstore. Par exemple avec mon kit de connexion Numworks, on récupère un backup d'une N0110, et on le copie sur la Casio sous le nom nwstate1.nws et on l'ouvre sur Upsilon Casio en tapant VARS puis 1.
Mais je découvre à l'instant qu'il y a un problème d'endianness: si je fais un backup d'une N0110 avec Epsilon 15.5, puis un hexdump du header de 4 octets j'obtiens 0000000 ddba ee0b. Par contre les sauvegardes sur la Casio avec Upsilon donnent 0000000 0bee badd
Je vais donc devoir changer l'ordre des 4 premiers octets de sauvegarde, ce qui va provoquer des incompatibilités si vous testez tout de suite.

[Edit] Voilà c'est fait.

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 13 Mai 2023, 13:25
de parisse
Mise à jour avec possibilité d'échanger des scripts Python entre Upsilon et Casio. Il suffit de taper la touche VARS depuis Home.
Addin:
https://www-fourier.univ-grenoble-alpes.fr/~parisse/tmp/epsilon.g3a
Source:
https://www-fourier.univ-grenoble-alpes.fr/~parisse/tmp/controller.cpp
https://www-fourier.univ-grenoble-alpes.fr/~parisse/tmp/main.cpp

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 14 Mai 2023, 17:01
de ggauny@live.fr
20230514_175411.jpg

bonjour, un problème avec équations.
Bon dimanche.

Re: Firmware NumWorks-Upsilon porté sur Casio Graph 90+E fx-

Message non luPosté: 14 Mai 2023, 17:17
de Acrocasio
Sur quelle version ? Celle de Parisse ? Qu'à tu fait ? Précise un peu.