Les calculatrices
Casio Graph 25+Pro/E,
Graph 35+USB/E et
Graph 75/85/95 utilisent des cartes mère extrêmement similaires et des puces ASIC identiques.
Il est donc en théorie possible, après quelques petits patchs mineurs, d'installer l'OS prévu pour un modèle sur un modèle différent.
En pratique, plusieurs de ces manipulations avantageuses ont déjà été réalisées et
documentées par la communauté :
- Installation d'un OS Graph 75/95 sur Graph 85, ce qui rajoute :
- calcul exact
- calcul vectoriel (versions 2.04+)
- application intégrée d'acquisition de mesures physiques
- Installation d'un OS Graph 75/95 sur Graph 35+USB/E, ce qui rajoute :
- application intégrée de tableur / feuille de calculs
- calcul vectoriel (versions 2.04+)
- 1,5Mio de mémoire de stockage
- gestion des applications/add-ins
La
Casio Graph 25+Pro/E est pour sa part un modèle extrêmement pauvre en fonctionnalités comme
déjà annoncé, ce qui est matériellement ridicule avec un matériel
quasiment identique à celui de la Graph 35+USB/E.
Il serait donc là aussi très avantageux de lui programmer l'OS d'une
Graph 35+USB/E ou
Graph 75/95.
Matériellement, il n'y a que 2 différences entre la
Graph 25+Pro/E et la
Graph 35+USB/E, modèles utilisant
exactement la même carte mère :
- les composants du circuit USB sont manquants sur la Graph 25+Pro/E
- la puce Flash-ROM ne fait que 2Mio sur Graph 25+Pro/E contre 4Mio sur tous les autres modèles cités jusqu'ici
Et c'est ce dernier point qui est le principale écueil dans la manipulation.
D'une part, les OS de
Graph 35+USB/E et
Graph 75/95 font déjà autour de 2Mio, et ne rentrent donc pas en l'état dans une
Graph 25+Pro/E.
Oublions donc pour le moment les OS de
Graph 75/95 sensiblement plus gros, et concentrons-nous sur les OS de
Graph 35+USB/E.
Certaines des premières versions 2.00-2.01 font légèrement moins de 2Mio et nous avions
déjà réussi à les faire rentrer dans une
Graph 25+Pro !
Mais hélas, cela plantait immédiatement. C'était particulièrement rageant, alors que l'on pouvait voir les icônes supplémentaires du menu d'accueil derrière !
Le plantage était dû au fait que l'OS
Graph 35+USB/E est prévu pour accéder à divers choses en mémoire Flash, au-delà des 2 Mio
(0x200000) :
- 2 sauvegardes alternées de la mémoire RAM en 0x250000 et 0x260000, utilisées à chaque extinction/rallumage de la machine
- une table système à 0x24FEE0, décrivant entre autes le modèle ciblé, les langues non-anglaises, et la somme de contrôle
Et dans le cas d'un OS
Graph 35+USB/E programmé sur une
Graph 25+Pro/E, l'OS continuait donc à appeler ces adresses qui n'avaient aucune existence physique sur la machine en question.
Depuis, nous avons développés plusieurs patchs pour :
- relocaliser ces 3 éléments dans la zone des premiers 2Mio, en 0x1DFEE0, 0x1E0000 et 0x1F0000, valeurs utilisées officiellement par l'OS Graph 25+Pro/E
- corriger tous les appels ciblant les anciennes adresses
Et voici donc enfin en ce jour historique la toute première
Graph 25+Pro au monde à faire tourner un OS de
Graph 35+USB stable, en version 2.01 !
Nous obtenons bien désormais 14 applications intégrées au menu d'accueil au lieu de 9, avec en prime :
- DYNA : graphes de fonctions paramétrées (Seconde)
- RECUR : suites numériques (Première)
- CONICS : coniques (séries S et STD2A)
- TVM : fonctions financières
- E-CON2 : acquisition de mesures physiques
Ces applications sont bien évidemment toutes fonctionnelles :
L'application de calculs
RUN.MAT bénéficie désormais en prime de fonctionnalités en adéquation avec les dernières évolutions du programme au lycée :
- calcul matriciel (Terminale S/ES)
- fonction de distribution probabiliste (loi normale, binomiale... Première)
Par contre, petite déception, la saisie en écriture naturelle et le calcul exact ne sont pas activés ni même activables, l'option étant manquante dans le menu de configuration de l'application.
Sans doute l'OS
Graph 35+USB/E vérifie-t-il quelque chose sur le matériel quelque part, et ce serait logique vu que le modèle international équivalent
fx-9750GII ne bénéficie pas de ces fonctionnalités.
Comme déjà dit plus haut, tous ces modèles utilisent la même puce ASIC, intégrant 512Ko de mémoire RAM.
Sur ces 512Ko, presque tous les modèles réservent 62,7Ko pour le stockage de variables système, dont notamment les programmes.
Tous les modèles sauf un, la
Graph 25+Pro/E qui limite la chose de façon totalement artificielle à 20,7Ko.
Mais désormais suite à la transformation, tu as donc accès à la totalité de la page mémoire avec 3 fois plus de place pour tes programmes !
Comme on écrit la table système à 0x1DFEE0, les seuls système programmables à ce jour ne doivent pas déborder de cette adresse.
Pour les OS 2.00-2.01, cela tombe sur les messages de la 2
ème des 4 langues non-anglaises intégrées, messages présents à la fin de l'OS, après tout le code exécutable.
En l'état actuel du patch développé, petit inconvénient mineur, faire rentrer l'OS nécessite donc de ne conserver qu'une seule des 4 langues non-anglaises.
Autre inconvénient cette fois-ci un peu plus embêtant - mais à notre avis supportable face aux immenses améliorations des fonctionnalités du modèle, à chaque extinction, que ce soit avec les touches ou via la fonctionnalité d'économie d'alimentation, la calculatrice affiche une erreur n°851.
Rien de grave, la calculatrice s'éteint normalement après avoir validé avec
EXIT
.
Mais cela veut dire que la calculatrice ne s'éteindra plus toute seule si on l'oublie allumée, et videra complètement les piles.
Comme cela se passe à l'extinction, c'est donc un problème en rapport avec les 2 sauvegardes de la RAM initialement localisées en 0x250000 et 0x260000, que nous avons déplacées en 0x1E0000 et 0x1F0000.
Nous pensions pourtant avoir patché tous les appels référençant explicitement ces adresses... sans doute avons-nous raté un petit quelque chose quelque part...
Même si en théorie la manipulation peut être effectuée avec toute
Graph 25+Pro/E, en pratique elle n'est réalisable à ce jour que sur les vieilles
Graph 25+Pro munies d'un processeur SH3, c'est-à-dire venant avec une version système 2.00 ou 2.01.
Les
Graph 25+Pro/E plus récentes, venant avec une version système 2.02 ou supérieure, utilisent un processeur SH4 et ne sont pas gérées par l'outil de reprogrammation système
fxRemote.
Cet outil semble de plus abandonné depuis des années, sans plus aucune mise à jour ni publication du code source, et nous avons donc fort peu d'espoir pour ces modèles.
Quoi qu'il en soit, à très bientôt on espère pour l'annonce d'un patch amélioré et sa sortie !