
Cette année la HP-25 fête ses 40 ans: introduite en août 1975, elle fut la première programmable abordable d’HP après la HP-65 et la 55. Première également avec la combinaison de plusieurs touches en un seul pas de programme et avec la fonction Pause. Pour moi ce fut la première calculatrice programmable (et la première HP) que j’ai utilisée en classe de première au lycée. On avait une machine pour deux et notre prof de maths nous a fait découvrir le RPN et la programmation dans le cadre des 10% de temps pédagogique en vigueur à l’époque. Depuis je n’avais plus touché une HP-25 … jusqu’à aujourd’hui.
Le problème
Il y a quelque temps j’ai eu sur eBay une HP-25 pour 50€. Étrangement j’étais le seul enchérisseur. Aucun détail n’était donné sur son fonctionnement et, comme je m’y attendais, lorsque je l'ai reçue elle ne fonctionnait pas. C’est souvent le cas des HP-25 et la raison pour laquelle je n’en avais pas encore acheté.
En effet les HP-2x de la série Woodstock souffrent d’un défaut de conception du système d’alimentation qui requière une batterie en bon état pour réguler la tension venant de l’adaptateur secteur. Si on branche celui-ci en l’absence de batterie ou avec une batterie défectueuse, la tension n’est pas régulée ce qui va griller un ou plusieurs circuits à l’intérieur. Généralement le circuit le plus fragile est l’ACT (Arithmetic Control and Timing), mais les circuits ROM/RAMs peuvent aussi être endommagés. Je n’ose penser au nombre de Woodstock en parfait état qui ont été grillées lors de leur test avant mise en vente sur eBay….
Ce problème se traduit souvent à la mise sous tension par un affichage où les chiffres clignotent de manière aléatoire comme sur ma HP-25.
La solution
Jusqu’à présent la seule solution était de trouver une autre Woodstock pouvant servir de donneur pour le(s) circuit(s) défectueux. Heureusement, depuis peu il existe une autre solution à ce genre de problèmes : un allemand, Bernhard (PANAMATIC), a développé un circuit de remplacement pour l’ACT des Woodstock.
Je lui ai commandé le repair kit pour HP-25 et voici ce que j’ai reçu pour 80€: le nouvel ACT avec un morceau de tresse à dessouder, un peu de soudure, des supports faible hauteur et une carte de référence plastifiée.
Le nouvel ACT utilise un microcontrôleur PIC et un portage de l’émulateur Nonpareil pour faire tourner le microcode de la HP-25. Il n’a besoin que du display driver pour contrôler l’affichage. Il fonctionne même si les circuits RAM et/ou ROM d'origine sont défectueux. Il existe une version de l'ACT pour chaque modèle de la série Woodstock (21,22,25,25C,27,29C).
Après avoir ouvert la HP-25 et nettoyé les résidus laissés par les anciennes batteries:
puis dessoudé le circuit ACT et installé à la place le nouvel ACT sur ses supports low-profile:
j’ai eu le plaisir de voir s’afficher le message suivant sur l’écran:
Ma HP-25 est devenue une HP-25E (Extended) !
Premier effet de l’opération: j’ai maintenant une HP-25 qui marche.
Deuxième effet, la mémoire est maintenant continue comme sur la 25C.
Et c’est pas tout ….
A l'utilisation on est bien en présence d'une HP-25: boitier, clavier, écran, fonctions, vitesse, tout est identique y compris le clignotement des LEDs lors de l'exécution d'un programme. Mais en plus, sans toucher au microcode d’origine de la HP-25, Bernhard a implémenté dans le firmware du PIC de nombreuses fonctions que l’on n’aurait jamais imaginé possibles sur une HP-25.
Tout d’abord la mémoire: 10 zones programmes de 49 pas et 10 jeux de registres sont disponibles en plus des 49 pas et des 8 registres de base de la HP 25, ce qui permet de sauvegarder et rappeler dix programmes et les registres associés. Soit un total de 539 pas et 88 registres.
Par exemple en mode PRGM un simple f STO 3 permet d’enregistrer le programme courant dans la zone 3, et f RCL 4 de rappeler le programme de la zone 4. De la même manière en mode RUN f STO 3 va enregistrer les 8 registres courants dans la zone 3, et f RCL 4 rappeler les 8 registres de la zone 4.
Et c’est pas tout …
La HP 25E dispose en plus d’une bibliothèque intégrée de 100 programmes dont 54 sont préchargés à partir du manuel d’application de la HP-25. Ainsi en mode PRGM la séquence f RCL . 18 va charger le programme de simulation d’alunissage. Ce programme a besoin de valeurs initiales dans les registres 0, 1 et 2, c'est là que l'on voit tout l’intérêt de la sauvegarde des registres : on rentre en mode RUN 500 STO 0 50 CHS STO 1 120 STO 2 puis f STO 0. Après chaque tentative d'alunissage il suffira de faire f RCL 0 pour retrouver les valeurs initiales des registres 0, 1 et 2 puis f PRGM R/S pour relancer le programme.
On peut aussi enregistrer le programme de son choix dans l’un des 46 emplacements libres de la bibliothèque par un simple f STO . xx. Si l’on ne sait plus combien de programmes se trouvent dans la bibliothèque alors avec f STO . 00 la 25E va chercher le premier emplacement libre, y stocker le programme courant et afficher le numéro de l’emplacement.
Et c’est pas tout …
Bernhard a développé de nombreuses autres fonctions.
En particulier, en mode RUN :
- Un mode standby pour économiser les piles où après 1 minute d’inactivité l’écran n’affiche plus qu’un point se déplaçant de gauche à droite
- L’affichage de la révision et du numéro de série du nouvel ACT
- L’affichage d’un message de bienvenue
- L’affichage d’indicateurs de touches préfixe et du mode DEG/RAD/GRAD
- L’affichage de la mantisse du nombre en X
- L’affichage des registres X et Y (en maintenant la touche x<>y) , des 4 registres de la pile (en maintenant la touche R↓), des 8 registres mémoire ( avec g RCL) ou des registres statistiques (avec g Σ+)
- Le passage d’un affichage justifié à gauche à un affichage justifié à droite
- L’affichage du checksum de la ROM de la HP-25 et de celui de l’émulateur pour comparaison
- La possibilité de comparer le contenu de la ROM de la HP-25 et celui de la ROM de l’émulateur (j’ai pu ainsi voir que la deuxième ROM de ma HP-25 était HS et ne renvoyait que des 0)
- La possibilité de choisir d’exécuter le code de la ROM de la HP-25 ou celui de l’émulateur
- Deux timers indépendants (chacun similaire à celui de la HP-55) , avec un mode jeu comme pour les échecs
- Des conversions hexadécimal, octal et binaire (dans les limites du display driver de la HP-25)
- L’exécution automatique d’un programme pas à pas: avec g SST l’instruction à l’adresse courante du programme en mémoire est affichée pendant une seconde puis exécutée, avant de passer à l’instruction suivante.
- L’affichage automatique d’un programme pas à pas avec g SST (pour vérification sans exécution)
- L'insertion et la suppression de pas de programme (la 25 standard ne sait pas le faire), avec re-calcul automatique des GOTO
- Le déplacement direct sur un pas de programme avec GTO . xx
Toutes proportions gardées le nouvel ACT est à la HP-25 ce que la 41CL est à la HP-41C.
Autant vous dire que je suis ravi de ma nouvelle HP-25E.
EDIT: le prix du nouvel ACT est de 80€ + 4,90€ de fdp, pour contacter Bernhard voir ici.
Galerie
Voici quelques photos supplémentaires. Tout d'abord les différents indicateurs:
- touche préfixe (f, g, STO, RCL): un point à l’extrême gauche
- mode RAD: un point à l’extrême droite
- mode GRD: un point à l'avant dernière position à droite

les deux timers heures-minutes-secondes.centièmes que l'on différencie par le séparateur entre les chiffres: "-" pour le timer 1 et "." pour le timer 2:








