La calculatrice
NumWorks était initialement un formidable projet de machine ouverte.
Le développement tiers a pu s'y hisser à un niveau jamais atteint sur la concurrence, et permettre l'émergence d'un projet formidable,
Omega par
Quentin Guidee et ses non moins illustres collaborateurs.
Il s'agit d'un
firmware alternatif pour ta calculatrice
NumWorks. Basé sur le code source du
firmware officiel
Epsilon 15.5 comme la licence l'y autorisait jusqu'alors,
Omega avait pour but de regrouper et mettre en avant les meilleures contributions au code d'
Epsilon, en incluant cette fois-ci celles laissées de côté par le constructeur.
Difficile de tout citer ici mais voici déjà par exemple un des fantastiques ajouts d'
Omega. Contrairement à l'ensemble de ses concurrentes de milieu de gamme, la
NumWorks travaille en interne sur des arbres de calcul, une technique qui permet le calcul littéral. Toutefois elle les bridait artificiellement pour n'accepter que des valeurs numériques, empêchant donc tout calcul littéral.
Omega à la différence autorise ces arbres à utiliser des lettres / inconnues, ce qui te donne ainsi un moteur de calcul littéral. De quoi même dériver à seulement
80€, des fonctionnalités que la concurrence réserve usuellement aux modèles haut de gamme avec des prix à 3 chiffres !
Citons aussi 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ègre,
Omega offre é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ègre 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, gros manque du firmware officiel, une bibliothèque de constantes physiques, un convertisseur d'unités, un tableau périodique des éléments et bien d'autres choses encore. Le tout est en prime programmable en Python, avec une collection de bibliothèques importables bien plus étoffée que celle de l'application Python officielle, et surtout ici de façon intégrée, tes scripts Python pouvant en effet faire appel au moteur de calcul formel GIAC par l'intermédiaire du module cas.
- 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 tableau périodique des éléments par M4x1m3
Les fonctionnalités du
firmware Omega ont été reprises par la suite pour plusieurs
forks, les
firmwares Upsilon et
Khi, ce dernier par nul autre que
Bernard Parisse en personne.
Un gros avantage de plus est ici que
KhiCAS et l'ensemble des fonctionnalités rajoutées restent 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 viennent de plus directement intégrées à des modèles concurrents haut de gamme parfaitement autorisés.
Mais voilà, après un simulacre de prise en compte de l'avis de sa communauté, à la rentrée 2021 le constructeur
NumWorks a introduit un verrouillage extrême de ses calculatrices
N0110 avec la mise à jour
16.3 d'
Epsilon.
Toute
N0110 mise à jour ou venant préchargée d'une version
16.3 ou supérieure, comprend un chargeur de démarrage censé être non effaçable, empêchant l'installation de tout
firmware non correctement signé par le constructeur, c'est-à-dire entre autres de tout
firmware tiers
(Omega, Upsilon, Khi, ...).
Par conséquent, cela t'empêche également de bénéficier des applications additionnelles persistantes en mémoire
Flash et en mode examen
(logiciel intégré de Mathématiques avec moteur ce calcul formel KhiCAS, émulateurs Nintendo Game Boy et NES, tableau périodique des éléments, ...).
Dans sa volonté de tuer tous les projets
firmwares tiers, le constructeur est même allé jusqu'à révoquer la licence ouverte de son
firmware Epsilon. Les développeurs des
firmwares tiers n'ont depuis plus le droit d'en réutiliser le code des dernières nouveautés, et les
firmwares en question restent basés sur le code d'
Epsilon 15.5, la dernière version sortie sous licence ouverte. Passer outre serait s'exposer à des poursuites, le constructeur
NumWorks étant très prompt à menacer, un quasi réflexe chez eux révélant une façon toxique de fonctionner.
En effet, cela mettait en conséquence l'utilisateur final devant un cruel dilemme :
- soit verrouiller sa machine en mettant à jour sur le firmware Epsilon pour bénéficier de toutes les dernières nouveautés officielles, mais en contrepartie renoncer aux nouveautés et spécificités des firmwares tiers, et peut-être définitivement si aucune faille n'est trouvée
- soit rester sur un firmware tiers, mais en contrepartie se priver des dernières nouveautés officielles
Depuis que
NumWorks a unilatéralement et sans raison déclaré de fait la guerre à sa communauté de développeurs, pour survivre les équipes de bénévoles derrière les trois grands
firmwares tiers se sont réparti les tâches :
- chez Omega, on semble se concentrer sur l'analyse et le contournement des sécurité officielles, avec les bootloaders tiers qui permettent non seulement de déverrouiller ta machine, mais gèrent de plus un dualboot offrant la possibilité de basculer à tout moment entre 2 firmwares installés sur ta machine et donc de profiter du meilleurs des deux mondes : à la fois les spécificités et dernières nouveautés d'un firmware tiers au choix, et les dernières nouveautés du firmware officiel Epsilon !
- chez Upsilon, on semble se concentrer sur le développement de nouvelles fonctionnalités
- chez Khi enfin, on semble se concentrer sur l'amélioration de la formidable application de Mathématiques intégré KhiCAS avec calcul formel
Après la scission n'est qu'apparente, car en pratique les mises à jour successives de chaque
firmware tiers reprennent usuellement tout ou partie des nouveautés apportées par les autres.
Aujourd'hui c'est donc plutôt fonctionnalités dont nous allons te parler, car le
firmware Upsilon bénéficie d'une nouvelle mise à jour. Après plusieurs versions de développement testées entre temps.
Nous passons de la version stable
1.0.0 que nous t'avions annoncée
début Mai 2022 à la version stable
1.0.1.
Faisons déjà connaissance en ouvrant l'application
Paramètres.
Upsilon passe donc comme déjà dit de la version
1.0.0 à la version
1.0.1.
Upsilon étant comme déjà dit un
fork d'
Omega, notons une évolution à ce sujet :
- Upsilon 1.0.0 se basait sur Omega 2.0.0
- Upsilon 1.0.1 se base maintenant sur Omega 2.0.2
C'est mieux même si ce n'est toutefois pas le dernier, rappelons qu'
Omega 2.0.3 vient
tout juste de sortir avec une évolution majeure niveau sécurité.
Par contre le code d'
Upsilon continue à se baser sur celui du vieillissant
firmware officiel
Epsilon en version
15.5.0 (printemps 2021), faute de pouvoir faire autrement.
Du nouveau également avec l'interpréteur
Micropython dont nous reparlerons plus loin :
- Upsilon 1.0.0 intégrait Micropython 1.17.0
- Upsilon 1.0.1 intègre maintenant Micropython 1.19.1
Jetons déjà un coup d'oeil aux nouveautés transversales aux différentes applications.
Tu viens peut-être déjà de le remarquer au point précédent,
Upsilon 1.0.1 utiliser une toute nouvelle police de caractères. Le trait en est plus épais et offre une lisibilité hautement plus agréable.
Notons que si les développeurs
Upsilon ne peuvent pas reprendre le code des nouveautés apportées par
Epsilon, rien ne les empêche de recoder entièrement des nouveautés similaires.
Et c'est le cas,
Upsilon t'offre maintenant une touche
x,n,t
cyclique comme dans
Epsilon ; des appuis successifs sur
x,n,t
alterneront la saisie entre
x,
n,
t et
θ.
Et il serait justement fort déplacé que
NumWorks ait le culot de se permettre la moindre réflexion, alors qu'ils ont repris sans les créditer correctement plusieurs fonctionnalités des
firmwares tiers lors de leur dernière
mise à jour Epsilon 19.
Justement parmi les fonctionnalités des
firmwares tiers que
NumWorks vient de s'auto-attribuer, citons les raccourcis pour lancer rapidement les applications sans avoir à s'échiner sur la peu confortable croix directionnelle. Les applications étant affichées sur 3 colonnes, les raccourcis utilisaient de façon fort intuitive le pavé numérique avec de haut en bas aussi bien sur le clavier qu'à l'écran :
shift
7
, shift
8
, shift
9
pour les 3 applications de la 1ère ligneshift
4
, shift
5
, shift
6
pour les 3 applications de la 2ème ligneshift
1
, shift
2
, shift
3
pour les 3 applications de la 3ème ligneshift
0
, shift
.
, shift
×10^x
pour les 3 applications de la 4ème ligne
Upsilon 1.0.1 te rajoute un raccourci supplémentaire :
shift
Ans
pour relancer la dernière application ouverte.
Enfin, la boîte à outils transversale appelée par la touche
🧰
était visuellement peu agréable sur la
NumWorks avec des écritures minuscules. C'est que chaque entrée de la liste est prévue pour afficher jusqu'à 2 lignes : l'intitulé de l'entrée et sa description.
Upsilon 1.0.1 améliore la lisibilité avec une écriture plus grande.
Dans le cas où cela fait déborder les intitulés plus larges, un défilement automatique de la sélection est même prévu :
Passons maintenant à l'application
Calculs.
Pour les calculs avec unités, tu peux maintenant obtenir dans les résultats complémentaires la nature de l'unité en question, par exemple
vitesse pour des
km·h-1.
Par contre il semble y avoir un bug avec cela, car les autres résultats pertinents proposés jusqu'alors, notamment des convertions dans des unités similaires jugées petinentes, ne sont plus proposées...
Du nouveau également dans l'application
Fonctions.
Les définitions de fonctions sont désormais préfixées en
italique.
Regardons maintenant l'application
Statistiques.
2 nouveaux paramètres statistiques sont maintenant disponibles sous l'onglet
Stats. En plus de la moyenne pondérée, tu y trouveras :
- Moyenne géométrique
- Moyenne harmonique
Exclusivité à ce jour intégrée au
firmware Upsilon, nous avons l'application
Liseuse.
Il s'agit d'un lecteur de fichiers texte. Tes fichiers peuvent être rajoutés via la
page d'installation des applications Upsilon ; il te suffit d'y préciser un fichier local.
L'idéal pour mettre tes notes, informations, anti-sèches, formulaires, résumés de cours, exercices types corrigés ou même littéalement annales corrigées, à chaque fois que tu auras une évaluation n'imposant pas le mode examen.
L'application accepte aussi bien les fichiers de texte brut
(*.txt) que les documents incluant du formatage ou des expressions
LaTeX (*.urt) :
- Code: Select all
Ce fichier est un essai de %r%LaTeX%\r%
$\times\forall\pm\partial\exists\div\infty\approx\neq\equiv\leq\geq$
$\leftarrow\uparrow\rightarrow\downarrow\leftrightarrow\updownarrow\Leftarrow\Uparrow\Rightarrow\Downarrow$
$\alpha\beta\gamma\delta\epsilon\zeta\eta\theta\iota\kappa\lambda\mu\nu\xi$
$o\pi\rho\sigma\tau\upsilon\phi\chi\psi\omega$
$\Alpha\Beta\Gamma\Delta\Epsilon\Zeta\Eta\Theta\Iota\Kappa\Lambda\Mu\Nu\Xi$
$\Omicron\Pi\Rho\Sigma\Tau\Upsilon\Phi\Chi\Psi\Omega$
Et bien avec
Upsilon 1.0.1 de nouvelles commandes
LaTeX sont reconnues :
Nous arrivons enfin à l'application
Python.
Comme déjà dit, l'interpréteur
Micropython qu'elle utilise passe donc de la version
1.17.0 pour
Upsilon 1.0.0 à maintenant
1.19.1 avec
Upsilon 1.0.1.
Une évolution que nous ne pouvons que saluer,
Upsilon t'offrant désormais de loin le
Micropython le plus à jour tous
firmwares et même tous modèles confondus, bravo !
- Micropython 1.19.1 : NumWorks avec firmware Upsilon
- Micropython 1.17.0 : NumWorks, NumWorks avec firmware Omega
- Micropython 1.12.0 : application KhiCAS (disponible pour les NumWorks N0110, TI-Nspire CX, TI-Nspire CX II et Casio Graph 90+E / fx-CG50)
- Micropython 1.11.0 : TI-Nspire CX II
- Micropython 1.9.4 : HP Prime, Casio Graph 35+E II / fx-9750/9860GIII, Graph 90+E / fx-CG50, application CasioPython (en plus des précédentes Casio, compatible avec les Casio Graph 35+E/USB / fx-9750GII, Graph 75/95 / fx-9860GII, Graph 85 / fx-9860G)
- Micropython 1.4.6 : programme Ndless Micropython (en plus des TI-Nspire CX, compatible avec les TI-Nspire et TI-Nspire CM)
- TI-Pytho 3.2 : TI-82 Advanced Edition Python, TI-83 Premium CE Edition Python, TI-84 Plus CE-T Python Edition, TI-84 Plus CE Python (fork closed-source de CircuitPython qui est quant à lui un fork allégé de Micropython)
Du nouveau niveau formatage automatique dans l'éditeur de scripts.
Les chaînes de caractères et commentaires y bénéficient maintenant d'un affichage clairement différencié en italique.
Autre gros avantage exclusif d'Upsilon par rapport à tous les autres firmwares NumWorks, la disponibilité de la bibliothèque ulab. Elle nous offrait jusqu'à présent les sous-bibliothèques :
- ulab.numpy pour le calcul scientifique
- ulab.scipy pour entre autres l'algèbre linéaire, l'optimisation de fonctions et le traitement de signal
Grande nouveauté, Upsilon 1.0.1 nous rajoute maintenant également la sous-bibliothèque ulab.utils !
Enfin nous avons la bibliothèque ion traitant de l'aspect matériel spécifique à la NumWorks, notamment les touches clavier.
Upsilon 1.0.0 avait déjà innové en y rajoutant des fonctions spécifiques à la batterie, de quoi te coder de véritables petits utilitaires.
Upsilon 1.0.1 va encore plus loin en rajoutant des fonctions spécifiques à l'écran : get_brightness() et set_brightness() pour récupérer et modifier sa luminosité. De quoi te coder avec une simple boucle de superbes effets spéciaux sans aucune consommation lourde de la mémoire !