lundi 25 septembre 2017

Elle est libre la WP-34S

Au rythme où je publie les articles dans ce blog, je risque d'avoir du mal à couvrir l'ensemble de ma collection ; même si elle s'agrandit plutôt lentement. La calculatrice que je teste aujourd'hui, bien que très proche des productions HP, n'a jamais été commercialisée officiellement par la marque. Il s'agit de la fameuse WP-34S, que j'ai acquise en 2013. Mon exemplaire est basé sur le hardware de la HP-30b ; mais la HP-20b (à ne pas confondre avec la HP-20S) conviendrait également. La principale différence entre la HP-30b (calculette financière) et la WP-34S (avec S comme scientifique) provient du firmware de cette dernière, qui est diffusé sous licence GPLv3. Ce logiciel a été développé par deux allemands et un australien, tous trois probablement nostalgiques des calculettes RPN : Walter Bonin, Marcus von Cube, et Paul Dale. Mais d'autres contributions au projet sont également notables. Par exemple, celles des américains Eric Rechlin et Gene Wright, qui ont respectivement réalisé les overlays en vinyl, et diffusé des câbles de programmation spécifiques. Dans la genèse de la WP-34S, on peut aussi mentionner le rôle important de Cyrille De Brébisson (HP) qui, dès 2008, avait mis à disposition l'indispensable kit de développement (SDK). Celui-ci était initialement prévu pour la création par les équipes HP du firmware officiel de la HP-20b. Cette démarche, louable, reste exceptionnelle chez les fabricants de calculettes. Et elle ne devrait pas se développer outre mesure dans les années à venir ; peut-être à cause des nouvelles règles aux examens, qui tendent à verrouiller de plus en plus les calculatrices autorisées.

La HP-30b originale a été fabriquée en Chine entre 2010 et 2012 environ. Cependant, grâce aux stocks des distributeurs, il a été possible d'en acheter des neuves au moins jusqu'en 2014. En 2017, on trouve assez facilement des produits reconditionnés à partir de 30€ environ. Cette calculatrice est l'une des rares sur lesquelles on peut flasher un firmware personnalisé, non contrôlé par le constructeur. En sus, quelques améliorations hardware sont possibles. Par exemple, sur la mienne, un cristal de quartz 32,768 kHz et deux condensateurs ont été soudés sur la carte mère. Cette modification permet au firmware de la WP-34S d'accéder à une horloge interne précise. La fonction chronomètre, qui n'est pas si courante sur les calculatrices, est ici directement accessible en deux touches : [CPX] puis [R/S]. Certains utilisateurs de la WP-34S ont également ajouté un port infrarouge pour pouvoir connecter une imprimante. D'autre part, il existe un adaptateur USB interne pour la WP-34S, développé par Harald Pott. Il permet de se passer du câble série d'origine, à la connectique très spécifique. Je possède un exemplaire de ce fameux câble HP qui est équipé d'un bouton "Reset" et d'un bouton "Erase". Comme il n'est plus fabriqué, il pourrait dorénavant être difficile de s'en procurer un. Seulement voilà : on se rend compte rapidement que la WP-34S n'est pas spécialement prédisposée à l'échange régulier de données avec un ordinateur. Néanmoins, ce câble m'a permis de mettre à jour sans encombre le firmware de ma WP-34S en version 3.3. On peut noter que l'ouverture du boîtier de la calculette par l'arrière ne nécessite pas d'outil. Le branchement se fait ensuite avec la prise perpendiculaire à la machine ; ce qui est moyennement pratique, comme on peut le constater sur la photo ci-dessous.

Câble WP-34S (RS-232 prise DB9)

Les piles sont de banales CR2032 montées en parallèle. Lorsqu'elles sont en fin de vie, cette connectique permet de les changer une par une sans effacer l'espace des 2 Ko de RAM sauvegardés par piles. L'afficheur LCD sur deux lignes, malgré une bonne lisibilité, reste quelque peu décevant de nos jours. En effet, la petite matrice graphique, en haut, ne fait malheureusement que de 43 x 6 pixels. Les nombres sont affichés la plupart du temps sur la ligne du bas à segments classiques (12 chiffres de mantisse + 3 chiffres d'exposant).

L'afficheur LCD de la WP-34S

Ces limitations ont pour conséquence, par exemple, que la lecture complète de tous les chiffres significatifs nécessite de faire défiler avec la flèche jaune ou la flèche bleue. Par ailleurs, ces dernières ne sont pas en accès direct sur le clavier ; ce n'est pas très ergonomique. La forme des touches physiques de la WP-34S ressemble à celle des touches de la HP-28S, mais la machine chinoise du XXIe siècle est à cent lieues du silence et du confort de la "vraie HP" fabriquée aux USA en 1988. Et malgré des dimensions d'écrans LCD comparables, on regrette, bien entendu, de ne pas disposer d'un affichage graphique similaire à celui de la HP-28S. Enfin, pour terminer sur ma description sommaire du hardware de la WP, on peut noter que son CPU est un ARM 7 fabriqué par Atmel. Il est cadencé à une fréquence variable comprise entre 32 KHz (économie d'énergie) et 40 MHz. Cette valeur élevée est une excellente surprise sur une calculatrice positionnée plutôt en bas de gamme. Pour le logiciel embarqué, on devra toutefois se contenter des 128 Ko de la ROM "flashable" et de 6 Ko de RAM au total ; ce qui la rapproche du Sharp PC-1500 de 1984 que j'ai testé précédemment.

À l'usage, les concepts en notation RPN implémentés sur la WP-34S reprennent ceux qui avaient fait le succès de la toute première machine programmable que j'ai testée dans ce blog, à savoir la HP-25 de 1976. La programmation en mode séquence de touches est relativement simple, bien qu'elle puisse déboucher sur du code spaghettis, à partir d'une certaine complexité.

Mon packaging WP-34S de collectionneur n'aurait pas été complet si je n'avais pas commandé le gros manuel broché de Walter Bonin (version imprimée pour le firmware 3.2). Ses 244 pages en couleur au format "US letter" pourront êtres lues sans lunettes par les néo-presbytes, dont je fais partie. Et en complément, il existe un manuel aide-mémoire, d'un format plus en adéquation avec la petite taille de la WP-34S, écrit par Andrew Nikitin : http://nsg.upor.net/sys/wp34s/pocket-reference.html. Avec les retouches de zpalm, je m'en suis imprimé un exemplaire en double face sur papier classique (pliage, découpage au massicot, et deux agrafes au milieu).

Comme la bibliographie sur la WP-34S n'est pas colossale sur le net, je vous recommande le visionnage de la présentation de Marcus Von Cube au HHC 2011: "How WP 34S Came Into Existence", et également la présentation de Jake Schwartz au HHC 2012 : "The WP-34S and the HP Calculator Way" (vidéo).

Mon programme habituel, sur ce blog, de test de primalité, est à peu près identique à celui que j'avais écrit pour la HP-15C en 2012. Ici, j'ai supprimé les commentaires, mais je n'ai pas cherché à optimiser quoi que ce soit, pour ne pas fausser la comparaison. Le programme ci-dessous occupe donc également 39 pas. D'autre part, on peut utiliser des labels numériques sur la WP-34S, mais sur deux caractères :

001  ENTER
002  STO 00
003  2
004  STO 02
005  /
006  FP
007  x=0?
008  GTO 02
009  3
010  STO 02
011  ENTER
012  RCL 00
013  \/x
014  IP
015  STO 01
016  LBL 00
017  x>=? Y
018  GTO 01
019  GTO 03
020  LBL 01
021  RCL 00
022  ENTER
023  RCL 02
024  /
025  FP
026  x=0?
027  GTO 02
028  2
029  STO+ 02
030  RCL 02
031  ENTER
032  RCL 01
033  GTO 00
034  LBL 02
035  RCL 02
036  RTN
037  LBL 03
038  1
039  RTN

Dans le listing ci-dessus, j'ai représenté la touche racine carrée par "\/x".


Avec le nombre 524287 en entrée, le résultat 1 (=> nombre premier) s'affiche en à peine plus d'une seconde sur la WP-34S. Pour obtenir une mesure plus précise, j´ai ajouté quelques instructions qui permettent de faire appel à l'horloge interne de la calculette : j'obtiens une durée d'exécution comprise entre 11 et 15 ticks en mode FAST (1 tick = 0,1 seconde), et jusqu'à 17 ticks en mode SLOW. C'est la calculatrice la plus rapide que j'aie testé jusqu'à présent ! Seul l'Atari ST faisait mieux... mais il ne peut pas fonctionner sur une seule pile 3V, et sa consommation est très supérieure à 0,25 mW.

Parmi les autres programmes que j'ai créés pour la WP-34S, le plus long, en nombre de pas, est celui que j'avais publié en avril 2014, titré "Le petit professeur sort enfin du Texas", dans la Gazette des Pocketiquaires numéro 3 (page 55). Il s'agissait d'un remake du jeu électronique bien connu "Little Professor", édité par Texas Instruments en 1976. Dans le listing que j'ai publié, attention à la saisie de la ligne 118, par exemple, que j'ai notée de la façon suivante :

118 [alpha]IP 02

Il s'agit d'une fonction qui est est bien décrite dans le manuel :

Fonction [ALPHA]IP sur WP-34S
Petite astuce : pour accéder plus rapidement dans le catalogue de la WP-34S aux fonctions commençant par une lettre grecque comme α, on peut appuyer sur la touche [g], pour l'alphabet grec, suivie des lettres voulues. Ici, on pourra donc utiliser la séquence de touche suivante pour un accès direct à cette fameuse fonction AIP :

[h][X.FCN][g][α][I]

Il faut procéder assez rapidement entre les touches [α] et [I] ; sinon on revient aux fonctions qui commencent par 'I'.

En conclusion, le projet WP-34S était une excellente idée, dont la réalisation finale est très aboutie, malgré le hardware HP un peu limité. Certes, cette machine n'est pas destinée à tous les utilisateurs, mais les plus expérimentés sauront en extraire la substantifique moelle.

1 commentaire:

  1. J'ai testé la wp34s via l'émulator Android.
    Elle reste compliquée à utiliser cette calculatrice par rapport à l'émulateur free42s qui est utilisé par la SwissMicros DM42.

    RépondreSupprimer