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
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.
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.
À ce jour étaient compatibles les
firmwares Omega et
Khi.
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 et
B 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.
Sauf qu'il y avait 2 problèmes majeurs avec
Phi.
D'une part, le découpage de la mémoire
Flash en 2
slots égaux de
4 Mio faisait qu'il n'était pas possible de profiter à la fois :
- de la possibilité d'avoir 2 firmwares entre lesquels basculer au choix (par exemple l'une des dernières versions du firmware Epsilon pour avoir les dernières fonctionnalités officielles que la révocation de la licence libre interdit désormais de reprendre, accompagnée d'un des firmwares tiers Omega ou Khi)
- et de la formidable application KhiCAS
Un problème de taille au sens propre, c'était ou l'un ou l'autre :
- Soit tu mettais obligatoirement un firmware tiers dans le slot A (Omega ou Khi) et pouvais alors installer et lancer l'application KhiCAS, mais cette dernière débordait sur le slot B et n'était donc pas compatible avec l'installation d'un 2ème firmware dans ce dernier
- Soit tu mettais 2 firmwares différents au choix dans les slots A et B, excluant ainsi l'installation de KhiCAS puisque le slot B lui était nécessaire
Des contraintes qui faisaient entre autres qu'il était impossible de disposer à la fois de l'application
KhiCAS et des fonctionnalités d'une version récente du
firmware officiel
Epsilon.
Extrêmement dommage.
D'autre part, et là c'était extrêmement grave,
Phi n'est pas conforme à la réglementation française du mode examen et est donc strictement interdit d'utilisation à tout examen exigeant l'activation de ce mode en France.
Le problème est que les raccourcis
reset+
1
et
reset+
2
permettant de basculer entre les deux
firmwares présents en mémoire désactivent le mode examen.
Or c'est strictement interdit par les
spécifications officielles du mode examen français ; le mode examen ne doit pas pouvoir être désactivé de façon autonome par les candidats, c'est-à-dire que la désactivation doit nécessiter un outil extérieur non présent sur leur table de composition car interdit en examen
(2ème calculatrice, ordinateur, etc.).
Un outil interdit étant frauduleux, si tu introduis
Phi dans une salle d'examen en France et te fais prendre
(parce que tu auras basculé entre deux firmwares pendant l'épreuve et peut-être même oublié de réactiver immédiatement le mode examen), tu risquais l'ensemble des désagréments possiblement dramatiques
(non fixé sur ta réussite à l'examen à la veille de l'été comme les camarades et donc rien à fêter avec eux, le jugement nécessitant du temps alors qu'en prime les rectorats sont fermés une bonne partie de l'été risque de perdre ton inscription dans l'enseignement supérieur et donc une année, jusqu'à 5 ans d'interdiction de passer tout examen y compris le permis de conduire de quoi bien te gâcher la vie, ...).
Malgré sa gravité et ses conséquences éventuelles hautement désagréables, ce problème rapidement signalé n'a malheureusement pas fait l'objet de corrections de la part de l'équipe
Omega.
Heureusement,
Bernard Parisse, auteur de l'application
KhiCAS et de son
firmware dédié
Khi, s'est saisi de ces problèmes.
Sa dernière mise à jour elle aussi majeure du
firmware Khi inclut désormais un chargeur de démarrage comparable à
Phi, mais conforme à la réglementation du mode examen français.
Le mode examen si actif n'est plus désactivé lorsque tu bascules entre les
firmwares via les raccourcis
reset+
1
ou
reset+
2
, plus aucun danger pour toi !
Techniquement, le chargeur de démarrage lorsqu'on lui demande de changer de
firmware récupère la configuration éventuelle du mode examen dans le
firmware actif jusqu'alors, et la migre vers le nouveau
firmware demandé.
Intéressons-nous maintenant à la nouvelle possibilité de
multiboot enfin compatible avec l'utilisation de l'application
KhiCAS. Le nouveau
bootloader (chargeur de démarrage) de
Khi découpe la mémoire
Flash en 3
slots, nommés ici
1,
2 et
3 :
- le slot 1 de 3,5M correspond au début du slot A de Phi
- le slot 3 de 4M correspond exactement au slot B de Phi
- le slot 2 de 0,5M est un petit espace intermédiaire entre les deux
Et c'est cela qui change tout,
Bernard a sorti une version minimaliste du
firmware Khi. Ne comprenant aucune application intégrée elle est dédiée au seul lancement des applications rajoutables dont
KhiCAS entre autres.
Un avantage annexe de cette version minimaliste est qu'elle laisse bien davantage de
RAM libre pour les applications,
176K au lieu de
97K !
Tu peux donc enfin obtenir à la fois les dernières fonctionnalités du
firmware officiel
Epsilon et l'application
KhiCAS. Il te suffit :
- d'installer Epsilon dans le slot 1
- d'installer la version minimaliste de Khi dans le slot 2
- d'installer l'application KhiCAS qui ira donc dans le slot 3
Un grand merci à Bernard Parisse pour s'être dépêché de développer et rendre disponible cette solution améliorée et conforme à temps pour les examens ! Supposons que tu dispose déjà d'une machine sous
Phi ou
Omega 2.0, voici comment migrer.
Pour remplacer
Phi par le nouveau
bootloader de
Khi, il te faut :
- mettre la machine en mode de récupération autorisant la réécriture du bootloader avec le raccourci reset+
6
- te rendre sur le site de Khi
- cliquer sur le bouton Récupération pour charger et lancer le logiciel de récupération
- installer le nouveau bootloader amélioré et conforme pour la France avec le bouton multi-boot
Prochaine étape, mettre
Epsilon dans une version récente dans le
slot 1. Une fois son fichier récupéré, il te faut :
- mettre la calculatrice en mode de mise à jour protégé avec le raccourci reset+
4
- aller sur notre web-dfu, indiquer le fichier Epsilon à programmer et utiliser le bouton Flash Slot A
Concernant le fichier
external.bin d'
Epsilon 18 :
- soit tu l'as déjà sous la main parce que tu as installé Phi sur une machine qui avait été mise à jour avec Epsilon 18.2.3
- soit comme indiqué tu as déjà Epsilon 18 sur la calculatrice dans le slot B ou 3, et tu peux récupérer son fichier avec le même outil web-dfu via le bouton Dump Slot B
- soit il va te falloir te débrouiller pour le récupérer autrement, d'une façon illégale selon l'interprétation de la nouvelle licence (ou plus exactement de son absence) par NumWorks
Voilà, le plus dur est fait. Maintenant, toujours avec la calculatrice en mode de mise à jour protégé via
reset+
4
, il te suffit :
- d'installer la version minimaliste de Khi avec le bouton Khi slot 2
- d'installer les applis additionnelles dont KhiCAS avec le bouton de ton choix, soit KhiCAS stable soit KhiCAS alpha
Le contenu du
slot 3 affichera alors
Invalid mais ne t'inquiète pas, c'est normal puisqu'il ne contiendra plus de
firmware amorçable.
Tu disposes maintenant du meilleur des 2 mondes :
- raccourci reset+
1
pour le firmware officiel Espilon avec ses dernières fonctionnalités - raccourci reset+
2
pour les applications additionnelles dont KhiCAS
Si par contre tu pars d'une calculatrice ne disposant pas encore de
Phi, le plus simple est de commencer par l'installer pour ensuite suivre la procédure précédente de migration vers
Khi.