samedi 9 mars 2013

Retour vers le passé avec la Sharp PC-E500

Mes articles ne sont pas tout à fait dans l'ordre chronologique. C'est un peu involontaire, car ma collection d'antiquités se complète régulièrement. Cette Sharp PC-E500 date de 1989 ; elle est donc un peu plus ancienne que la Casio Z-1. Mais la PC-E500 n'est pas si rare : elle a même connu un certain succès en Allemagne. Ce succès est justifié par ses qualités techniques (un mode double précision à 20 chiffres, par exemple), et il s'est prolongé avec la PC-E500S jusqu'à la fin des années 90.

Cité universitaire Boutonnet

En réalité, même si je ne l'avais jamais possédée jusqu'à récemment, je connais cette machine depuis 1991. Un ami qui logeait à la cité universitaire Boutonnet (Montpellier) m'avait demandé de lui écrire un programme d'édition de texte un peu spécial pour sa PC-E500, avec fonction de recherche. J'ai donc parfois "travaillé" dans ces petites chambres de 9 m2, même si je n'y ai pas été locataire. Ce fut un très agréable retour de plus de vingt ans en arrière, lorsque début 2013 j'ai enfin appuyé sur la touche ON de cette "relativement vieille" calculette, avec son petit bruit mystérieux de relai mécanique à l'allumage (est-ce un buzzer ?).

Sharp PC-E500 : ergonomie et efficacité.

J'aime beaucoup ce format de pocket horizontal, avec clavier qwerty. Les touches caoutchoutées, et bien espacées, de cette PC-E500 permettent une frappe confortable. Son écran LCD de 40 caractères de large est très bien pour la programmation. Après quelques instants de re-découverte, j'ai saisi mon petit programme de test sur les nombres premiers, en Basic, facilement, rapidement, et sans erreur.

Sur les Sharp, il y a néanmoins quelques spécificités qui peuvent troubler lorsque l'on vient du monde Casio. Par exemple, on fait parfois la confusion entre la touche [Enter] et la touche [=] ; ou encore, entre le mode RUN et le mode PRO. Le message d'erreur est assez clair dans ce dernier cas : "Mode error". Autre particularité, la touche [INS] reste "enfoncée". Ce fonctionnement me parait finalement plus efficace que chez Casio, où l'on appuie autant de fois que nécessaire sur [INS], en calculant le nombre d'espaces nécessaires.

Une petite contrainte de cette Sharp en Basic : on ne peut éditer qu'un seul programme à la fois en mode PRO. Ensuite, il faut jouer avec les fichiers, et avec les commandes SAVE, LOAD, et FILES. Néanmoins, il est possible d'intégrer ses programmes personnels aux menus du mode "ingénieur" grâce à une règle de nommage sur l'extension du fichier.

Au final, on s'habitue assez vite à tous ces petits trucs d'usage. La PC-E500 est donc une calculette vraiment efficace au quotidien. Cela dit, bien que son Basic soit très complet, elle ne possède pas la fonction "FRAC" (partie après la virgule) ni la fonction modulo. Du coup, j'ai utilisé la formule suivante :

A MOD B = A–B*INT(A/B)

Mon programme en version Sharp devient celui-ci :

10 INPUT"N?",N
20 J=INT (SQR(N)):I=2
30 IF (N-2*INT (N/2))=0 THEN 80
40 FOR I=3 TO J STEP 2
50 IF (N-I*INT (N/I))=0 THEN 80
60 NEXT I
70 BEEP 1:PRINT"1":GOTO10
80 PRINT I:GOTO10

Sur le PC-E500, mon test de primalité naïf sur 524 287 s'éxécute en à peine plus de 6 secondes ! C'est un excellent résultat pour l'époque, avec un processeur dérivé du Z80 (8 bits) en version CMOS, et cadencé à 2,3 MHz environ ; beau travail des ingénieurs Sharp.