Les soeurs : HP 48SX et HP 48G |
Lorsque l'on surfe sur les nombreux sites internet qui concernent cette machine, on découvre que la bibliothèque de programmes de la série G est encore plus vaste que celle de la S. Néanmoins, la HP 48G, limitée à 32 Ko de RAM, est rapidement dépassée. Cette capacité non extensible est trop juste pour faire tourner les meilleures applications, les jeux les plus sophistiqués, ou encore le très impressionnant Meta Kernel (ROM de remplacement). Par conséquent, pour profiter de toute la richesse du catalogue, on comprend rapidement l'intérêt des versions GX. Cela dit, les bricoleurs pourront faire subir à la version G une opération à cœur ouvert, qui consiste à lui souder, en interne, une ou plusieurs RAM de 128 Ko .
Une autre bémol sur ces nombreux programmes que l'on peut librement copier : le code source n'est pas toujours fourni (assembleur). De plus, la documentation est parfois succincte, et la traduction souvent absente (allemand, espagnol, italien...). Avec les années, tout cela finit par rendre la réutilisation de ces logiciels un peu aléatoire et complexe ; du moins par un non spécialiste de la HP 48.
Sous GNU/Linux, le programme 'ckermit', bien qu'un peu chargé en fonctionnalités, est plutôt pratique à utiliser pour le transfert des fichiers binaires vers la calculatrice, via le câble HP spécique à 4 pinoches. En sus, un adaptateur USB-serial, à base de chipset FTDI ou Prolific par exemple, est indispensable pour le raccordement à un PC récent.
C-Kermit, sous GNU/Linux |
Maintenant, intéressons-nous aux performances en RPL mode utilisateur. Que vaut la HP 48G ? Je recopie une nouvelle fois mon petit programme, identique aux versions HP 28S et 48S :
<< DUP \/ IP
IF OVER 2 / FP 0 == THEN
DROP2 2
ELSE
3
WHILE DUP2 > REPEAT
IF 3 PICK OVER / FP 0 == THEN
SWAP DROP 0 SWAP
ELSE
2 +
END
END
IF OVER 0 == THEN
3 ROLLD DROP2
ELSE
3 DROPN 1
END
END
440 0.05 BEEP
>>
Caractères spéciaux :
- les symboles '<<'et '>>' sont les délimiteurs de programme
- '\/' correspond à la racine carrée
Le test sur 524287 s’exécute ici en 10s environ, un score correct. Sans être trop exigeant sur le caractère significatif de ce mini benchmark, on constate que la victoire par rapport à la HP 48SX n'est pas écrasante. La fréquence CPU a pourtant été doublée, à 4 MHz sur la G, alors que la mémoire reste cadencée à 2 MHz sur les deux générations.
Pour finir, j'ai fait un test de primalité rapide sur 524287, avec le programme "Factor" écrit par Jurjen Bos et Klaus Kalb en 1991. Sans surprise, l'affichage du résultat est instantané sur HP 48G. Cela met en évidence, si besoin était, l'intérêt des routines en langage machine et des algorithmes avancés (Miller-Rabin, Selfridge, Pollard).