
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 permettant l'émergence d'un projet formidable,
Omega par
Quentin Guidee et ses non moins illustres collaborateurs.

Il s'agissait d'un
firmware alternatif pour ta calculatrice
NumWorks. Basé sur le code source d'
Epsilon comme la licence libre l'y autorisait,
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. La
NumWorks travaille en interne sur des arbres de calcul, mais les bridait donc artificiellement pour n'accepter que des valeurs numériques.
Omega ré-autorisait à nouveau 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€ !
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é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, 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 était en prime programmable en Python, avec une collection de modules 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 é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.


Mais voilà, à la rentrée 2021 la mise à jour
16.3 d'
Epsilon, le
firmware officiel des calculatrices
NumWorks, a introduit un verrouillage des modèles
N0110.
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, et empêchant entre autres :
- l'installation de tout firmware non correctement signé par le constructeur, c'est-à-dire entre autres de tout firmware tiers (Omega, Upsilon, Khi, ...)
- l'installation d'applications persistantes en mémoire Flash (logiciel intégré de Mathématiques avec moteur ce calcul formel KhiCAS, émulateurs Nintendo Game Boy et NES, tableau périodique des éléments, ...)
Les utilisateurs informés avaient certes le choix mais étaient face à un cruel dilemme :
- soit utiliser le firmware Epsilon pour bénéficier de toutes les dernières nouveautés officielles, mais en contrepartie renoncer définitivement aux firmwares tiers
- soit utiliser un firmware tiers, mais en contrepartie renoncer aux nouveautés officielles car NumWorks a profité de l'occasion du verrouillage pour révoquer sa licence libre, et interdire ainsi la réutilisation de tout code introduit à partir de la version 16

Dans une
actualité précédente, nous t'annoncions la sortie de
Phi pour le
firmware Omega.
Phi est un chargeur de démarrage avec lequel il suffit d'écraser le chargeur officiel, grâce à une faille présente dans les
firmwares Epsilon officiels.
Après plus de 6 mois d'attente
Phi te permettait enfin de déverrouiller ta calculatrice, étant ensuite capable de lancer aussi bien les
firmwares officiels
Epsilon que les
firmware tiers, à la seule condition que ces derniers aient été mis à jour pour supporter ce nouvel amorçage.

Encore mieux que ça, avec
Phi tu n'avais même pas à choisir entre fonctionnalités officielles et tierces, tu peux avoir les deux en même temps. Depuis le verrouillage la mémoire
Flash des
N0110 est partitionnée en deux moitiés égales de
4 Mio, et pouvant chacune accueillir un
firmware.
Le raccourci
reset+
4
permet de consulter l'état de la mémoire
Flash et de mettre la calculatrice dans un mode de mise à jour protégé car interdisant la réécriture du chargeur de démarrage.
La mémoire
Flash de
8 Mio est découpé en 2
slots A/1 et
B/3 de
4 Mio chacun. Les raccourcis
reset+
1
et
reset+
2
te permettent alors de basculer entre l'amorçage des deux
firmwares situés dans chacun de ces 2
slots.


Les
firmwares tiers
Khi puis
Upsilon ont été mis à jour par la suite pour pouvoir être amorcés de cette façon, et leurs pages d'installation intègrent également leur propre version du
bootloader Phi.



Nous t'avions déjà informé de la sortie de versions d'
Upsilon, mais il s'agissait jusqu'à présent de versions de développement non garanties comme stables.
Aujourd'hui juste à temps pour les épreuves d'examen,
Upsilon nous sort enfin dans sa toute première version stable
1.0.0.

Par rapport à la version de développement précédente, cette version corrige plusieurs
bugs concernant l'une des exclusivités d'
Upsilon, l'application liseuse
LaTeX intégrée.

Cette nouvelle version supporte également la dernière mise à jour de l'application
KhiCAS que nous venons de te
présenter avec un grapheur
3D.


Enfin, le
bootloader installé par le site d'
Upsilon est également mis à jour. D'une part, il gère désormais le mini-
slot 2 de
Khi, intermédiaire entre les
slots A/1 et
B/3.
D'autre part, le
bootloader d'
Upsilon est complètement métamorphosé avec une série d'évolutions très significatives et exclusives à ce jour tous
firmwares tiers confondus. En effet le
bootloader n'est plus un simple écran de consultation, mais devient un véritable menu. Tu peux :
- amorcer directement le slot de ton choix avec les touches
1
, 2
ou 3
- mettre la calculatrice dans un mode de mise à jour via la touche
4
, avec même le choix de choisir entre une mise à jour des firmwares ou du bootloader pour plus de sécurité - plus besoin donc de passer par le raccourci reset+6
donnant accès à tout, et potentiellement dangereux si tu visites une page du site officiel de NumWorks alors qu'il est actif