Voici une petite présentation de cette belle et rare calculatrice de 1973. La première chez Sharp, je crois, à porter l'appellation "PC-xxxx" (signifiant ici Programmable Calculator d'après les pubs de l'époque).

Premières impressions
J’ai reçu ma PC-1001 dans un gros carton, bien emballée dans du papier à bulle et du papier journal (merci au vendeur !). Première impression: c’est du lourd! Plus de 1kg (1090g sur ma balance de cuisine). C’est ma première machine de bureau et d’après les photos je l’imaginais plus volumineuse, mais elle est plutôt compacte, du coup elle est dense ce qui renforce le poids ressenti (si je me fait bien comprendre..) quand on la tient en main.
Esthétiquement, pour une machine de 1973, elle est en très bon état : très peu de marques d’usure. J’ai eu la chance de l’avoir avec sa housse qui l’a sûrement bien protégée durant toutes ces années.
Je l’ai branchée et elle a fonctionné du premier coup. L’avantage des machines de bureau c’est qu’il n’y a pas de problèmes de batteries à plat ou de piles qui coulent.
Cette machine vient de Suisse: elle porte à l’arrière un autocollant "Büro Schoch Winterthur" qui est un revendeur suisse de matériel de bureau et sur le dessous un autocollant "Addo AG Zurich". Addo était une société suédoise qui produisait des machines à calculer mécaniques. Rachetée par Facit en 1966, elle avait noué des liens avec Sharp pour la distribution en Europe des calculateurs électroniques (source : ADDO-Japan Corporation).

PC-1001, EL-811, EL-5001

Manuel
Le manuel livré avec la PC-1001 est un beau manuel Sharp imprimé sur du beau papier blanc épais (pas le papier marron épais comme une feuille de cigarette que l’on aura quelques années plus tard). Par contre si le support est bien, le contenu laisse à désirer : le manuel est en trois langues, EGF (English, German, French), mais les trois langues sont allègrement mélangées dans chaque section / paragraphe, de plus la traduction française pêche par ses approximations et fautes typographiques. Heureusement qu’il y a la version anglaise pour retrouver le sens exact de certaines phrases.
Malgré tout le manuel est indispensable pour comprendre le fonctionnement de certaines fonctions comme y^x. Il fait 108 pages dont 43 consacrées à la programmation.

(consultable également en ligne sur Calameo)
Affichage
La PC-1001 dispose d’un affichage VFD lumineux de première génération utilisant des tubes séparés pour chaque digit, avec les 7 segments classiques plus un huitième petit segment pour le « 4 » et un point pour le séparateur décimal. Il y a au total 14 tubes : 12 tubes 8 segments, 10 pour la mantisse et 2 pour l’exposant, plus 2 tubes plus simples devant la mantisse et l’exposant, incluant les signes moins, M (pour mémoire) et un point (qui ne semble pas utilisé).
Sur ma machine, le tube correspondant au dernier chiffre de la mantisse n’est pas parfaitement aligné avec les autres ; il est légèrement surélevé.
A l’intérieur
(La high-tech de 1973)
Pour ouvrir la PC-1001, il y a tout d’abord une vis à retirer à l'arrière qui permet d’enlever le capot recouvrant l’alimentation :
Ensuite il y quatre vis en dessous qui permettent de retirer le bloc clavier/filtre écran.

Le clavier est relié au circuit principal par un gros connecteur 30 points, c’est un « Diaphragm Keyboard » fabriqué par FUTABA Electronics.
L’écran est constitué de petits tubes maintenus dans un cadre métallique et soudés sur un circuit imprimé séparé. Il n’y a pas de marque de fabriquant visible sur les tubes.
Un film métallique argenté recouvre l'arrière les tubes et masque vraisemblablement le nom du fabriquant. La seule mention visible sur le tube le plus à gauche est le "Made in Japan".
Le circuit principal est une merveille d’électronique avec ses boîtiers aux capots métalliques et aux pattes en quinconce (une spécificité de Rockwell). J’adore !!
Et ce routage des pistes "spaghetti" tout en courbes, loin des angles droits des cartes modernes, qui me rappelle la couverture d’un de mes livres de math du collège.
Le cœur de la PC-1001 est constitué d’un processeur 4-bit Rockwell PPS-4 et de ses circuits associés :
- 5 LSI Rockwell 42-pin : 10660 (CPU PPS-4), 10432 (RAM 256 x 4), 10696 (I/O), A0519 (ROM 1K x 8 ), A0520 (ROM 1K x 8 )
- 1 boîtier TO-100 Rockwell 10706 (Clock)
- et un circuit Fairchild 9311 DC (équivalent d’un 74154: 1 of 16 Decoder / Demultiplexer).
Le circuit Rockwell 10706 peut être configuré pour générer deux fréquences d’horloge : 199Kz (valeur recommandée pour le PPS-4) ou 256Khz (déjà de l’over-clocking!)
Introduit en 1972, le PPS-4 est l’un des premiers microprocesseurs, il a été largement utilisé dans les flippers Gottlieb des années 70
« The PPS-4 is one of only four microprocessors introduced before 1974 (the others being Intel’s 4004 and 8008, and National Semi’s IMP-16). The PPS-4 was the only competitor to Intel 4004. And like the 4004 was originally developed for calculator applications.
[…]The original part number of the PPS-4 was the 10660
[...]Production PPS-4, 3rd Quarter 1972; » - (Source : http://www.antiquetech.com/chips/PPS-4.htm)
Je ne connais pas d'autre calculatrice utilisant le microprocesseur PPS-4, à part la PC-1002 bien sur.
I/O 10696, 9311, Clock 10706 & CPU 10660:
ROMs A0519, A0520 & RAM 10432:
On voit bien chez Sharp l’évolution rapide du niveau de l’électronique utilisée dans les calculateurs au début des années 70 :
- D’un coté l’intégration des circuits logiques dédiés : la Sharp QT-8D en Décembre 1969, première calculatrice compacte, est aussi la première à utiliser un jeu de 4 circuit intégrés LSI spécifiques développés par Rockwell sur des specs de Sharp (voir ICI l’histoire de Tadashi Sasaki, « Mister Rocket », qui va développer les calculateurs chez Sharp et qui est à l’origine du partenariat avec Rockwell) , ces mêmes circuits seront aussi utilisés un an plus tard en janvier 71 pour la Sharp EL-8, la première calculatrice portable.
Sur la Sharp EL-811 qui succède à l’ EL-8 en 1972, ces 4 circuits sont remplacés par deux circuits Rockwell, puis l’intégration se poursuit avec la Sharp EL-816 en 1973 qui utilise un seul circuit intégré Rockwell 15340. - D’un autre côté avec la Sharp PC-1001 en 1973 apparaît l’utilisation de processeurs plus génériques, pouvant servir à plusieurs types d’applications et qui conduiront aux premiers micro-ordinateurs. Sur la PC-1001 cette polyvalence du processeur a permis d’introduire la programmation des séquences de touches, puis sur la PC-1002 le support de ROM d’applications.
Datation et numéro de série
(Un peu d'archéologie)
Il y a plusieurs indices qui permettent de dater cette Sharp PC-1001.
Tout d’abord, chacun des circuits intégrés a un “date code” imprimé sur son boîtier indiquant la semaine de fabrication :
- 7311: TTL 9311 DC
- 7317: Clock 10706
- 7318: RAM 10432
- 7322: CPU 10660
- 7322: I/O 10696
- 7323: ROM A0519
- 7323: ROM A0520
D’autre part, le numéro de série de la machine contient également des informations sur la date de fabrication : pour les machines Sharp anciennes, le premier chiffre du numéro de série donne l’année de fabrication et le dernier chiffre donne le mois de fabrication, d'après : Tech Notes: Sharp Calculator Serial Number Secrets.
Ce qui donne pour cette machine : 3 et 6 soit Juin 1973.
Cette date est cohérente avec les date codes des circuits intégrés. On peut même supposer que compte tenu des délais de transport entre les US et le Japon pour la livraison des circuits Rockwell, la fabrication de cette machine a eu lieu dans la deuxième moitié de Juin 1973.
Fonctionnement

On sent dans la PC-1001 l’influence de la HP-35 sortie l’année précédente (janvier 1972): la PC-1001 reprend le jeu de fonctions de la HP-35 et lui ajoute les fonctions trigonométriques hyperboliques (sinh, cosh & tanh), plus de mémoire (8 registres au lieu d’un seul) et la programmation. Par contre si l’on compare la PC-1001 à la HP-45 sortie en Mai 1973, l’avantage pour les fonctions est clairement du côté de la HP-45. La PC-1001 ne garde l’avantage que pour la programmation.
Voici un petit tableau comparatif entre Sharp PC-1001 et HP-35 ;

La logique est simple: calculs en chaine, pas de parenthèses ni d’ordre de priorité entre les opérations: 2 + 3 x 5 =25.
Il y a deux modes d’affichages : FLOAT (virgule flottante) et EXP (affichage scientifique : mantisse et puissance de 10). Attention à la touche EXP: elle permet d’entrer la puissance de 10, mais dès que l’on appuie dessus on perd l’exposant déjà entré . Par exemple : 123 EXP donne 1.23, si l’on veut rentrer 123x10^3, il faut le convertir de tête en 1.23x10^5 et donc taper 123 EXP 5. Bizarrement, en mode FLOAT on ne peut pas rentrer de valeur négative après la touche EXP, ce n’est possible qu’en mode EXP.
Les résultats ne sont pas identiques suivant le mode, le mode FLOAT est moins précis que le mode EXP.
Par exemple, pour la formule forensics: arcsin (arccos (arctan (tan (cos (sin (9) ) ) ) ) ), on obtient:
9.0000606185 mode "EXP"
9.0039554305 mode "FLOAT"
Le manuel nous apprend que la PC-1001 dispose de 8 registres mémoire M0-M7, partagés avec la mémoire programme : lorsque l’on rentre un programme, les registres sont utilisés dans l’ordre décroissant (M7 en premier, M0 en dernier) à raison de 8 pas de programme par registre.
Il y a aussi 3 registres d’exécution : X, Y, et Z.
X est le registre affiché , Y est le registre contenant le premier opérande lors d’une opération à deux opérandes: si l’on rentre 4 + 3, alors 4 se trouve dans Y et 3 dans X. il est possible de permuter X et Y avec la touche RC. Par exemple : 3 ÷ 6 RC = donne: 2.
On trouve aussi dans Y le nombre précédent celui que l’on vient de rentrer (et qui peut être le résultat d’une opération précédente). Par exemple : 2 x 3 = 5 RC affiche : 6.
Je n’ai trouvé aucun moyen d’accéder au registre Z.
Le manuel nous apprend également qu’il existe 3 autres registres internes α, β, γ utilisés lors des opérations, mais tout aussi inaccessibles que le registre Z.
On ne trouve pas sur le clavier de la PC-1001 de touches dédiées au calcul de x^2 ou de 1/x, mais ces deux fonctions peuvent être remplacées par une séquence de deux touches :
- x = calcule le carré de la valeur du registre X (x^2)
- ÷ = calcule l’inverse du registre X (1/x)
- A x B y^x donne A^B
- A ÷ B y^x donne A^1/B
Programmation
Principe et exemples de programmation
La programmation est l’une des principales caractéristiques de la PC-1001 par rapport à ses concurrentes de 1973. Elle se caractérise par la possibilité de pouvoir enregistrer une séquence de touches (jusqu’à 64), et de la ré-exécuter à volonté. Les seules instructions propres au mode programme sont : "H" et "END". Il n’y a pas d’instruction de test ou de saut, l’exécution d’un programme est purement linéaire, chaque touche, y compris la touche F, correspond à un pas de programme. A noter qu'il n'est pas possible de visualiser ou d'éditer la mémoire programme.
- "H" est l’instruction HALT qui permet d’interrompre un programme pour afficher un résultat ou entrer une donnée. Lorsque l’un programme est interrompu, la LED HALT est allumée.
- "END" ("F" "H") est l’instruction de fin de programme qui marque la séparation entre les instructions et les données puisque la mémoire est partagée entre programme et registres.
- "S" est l’instruction START qui permet de lancer l’exécution d’un programme, ou de le relancer après une instruction HALT.
- "PRO" ("F" "S") permet de passer en mode enregistrement de programme, matérialisé par l’allumage de la LED "PRO/BUSY"
Par exemple, pour rentrer un programme calculant le périmètre d’un cercle suivant la formule P=2*Pi*R , on va passer en mode PRO et faire le calcul pour une valeur de R (par ex. 4.5) en précédant cette valeur de la touche H pour indiquer qu’il s’agit d’une variable :
Code : Tout sélectionner
Touche Pas Programme Commentaire
C Remise à zéro du compteur programme
F
S Mode PRO, la LED PRO/BUSY s'allume
2 1 2 Constante
x 2 x
Pi 3 Pi
x 4 x
H 5 Halt La LED HALT s'allume
4 La donnée ‘4.5’ n’est pas enregistrée en mémoire programme
.
5
= 6 = La LED HALT s'éteint
F 7 F
H 8 End Fin du Mode PRO, la LED PRO/BUSY s'éteintEnsuite pour exécuter ce programme on appuie sur C puis S, le programme se lance puis s’arrête au pas 5 en affichant 2*Pi avec la LED HALT allumée, on rentre la valeur de R pour laquelle on souhaite calculer P, puis on appuie sur S, le programme continue et s’arrête au pas 8 en affichant le résultat du calcul.
Que peut-on faire d’autre sans tests ni sauts? Voici un programme de calcul des racines d’une équation du second degré ax^2 + bx + c , qui permet d’obtenir les racines réelles ou complexes. Pour l’écrire et l’optimiser de façon à ce qu’il rentre dans les 64 octets partagés entre la mémoire programme et les registres mémoire, je me suis inspiré de celui de la HP-29C cité par Marge ICI.

Pour rentrer le programme, vous pouvez utiliser 1,3,2 comme valeurs pour a,b,c, cela donne 0.25 pour le déterminant, -1 et -2 pour les racines.
Utilisation :
- appuyer sur C
- entrer a, appuyer sur S, la machine affiche –a
- entrer b, appuyer sur S, la machine affiche –b/2a
- entrer c, appuyer sur S, la machine affiche le déterminant (b^2 -4ac)/4a^2
- Si le déterminant est supérieur ou égal à zéro, appuyer sur S, la machine affiche la première racine réelle, appuyer sur S, la machine affiche la deuxième racine réelle
- Si le déterminant est négatif, appuyer sur +/- puis sur √x, la machine affiche la partie imaginaire v des deux racines complexes, appuyer sur MR 1, la machine affiche la partie réelle u, les deux racines sont u + iv et u – iv.
Quelques documents d'époque ...
(20 Septembre 1973, 7 Février 1974, Avril 1974, Août 1975)

... et quelques liens :
Un certain air de famille : PC-1001, PC-1002 & PC-1801

http://oldcalculatormuseum.com/sharppc1001.html
http://www.voidware.com/calcs/pc1001.htm
http://www.rskey.org/CMS/index.php/exhibit-hall/115
http://www.devidts.com/be-calc/ED/desk_09990.html
http://home.vicnet.net.au/~wolff/calcul ... htm#PC1001
PC-1002 & PC-1001 sur le Dentaku museum
An article about the PC-1002 from the January 1975 issue of IEEE Spectrum magazine.











