bandeau Aconit

Navigation : Histoire  >  Les machines  >  CAB 500 : Une aventure d’archéologie informatique


Pour nous écrire :


© 2002-2020 - Aconit

CAB 500 : Une aventure d’archéologie informatique


CAB 500 : Une aventure d’archéologie informatique

Hans Pufal
Novembre 2010

Le CAB 500 est un ordinateur personnel conçu par la société française SEA vers la fin des années 50, environ 100 machines ont été produites entre 1962 et 1968. Sa caractéristique la plus remarquable est peut-être d’implémenter l’un des premiers langages de programmation interactifs : le PAF (Programmation Automatique des Formules).

Architecture et mise en œuvre

Typique des machines françaises de faible coût de l’époque, la mémoire principale du CAB 500 est un tambour magnétique d’une capacité initiale de 16384 mots de 32 bits, plus tard doublée à 32768 mots. Seize registres de 33 bits (il y a un bit de parité) dans le processeur central permettent de compenser les longs temps d’accès du tambour. Ces registres sont formés par une mémoire à tores magnétiques. Dans la terminologie actuelle, nous dirions qu’il a 16K ou 32K mots de mémoire principale et un processeur avec 16 registres, valeurs tout à fait respectables comparées à celles de nombreuses architectures de micro-ordinateurs modernes, comme par exemple le ARM.

Le processeur central utilise des portes logiques "SYMMAG", une logique magnétique développée et brevetée par la société SEA, où les transistors ne servent que pour l’amplification. Fonctionnant à la fréquence de 220 kHz, le processeur central était capable d’exécuter une instruction registre à registre pendant que le temps de lecture d’un mot sur le tambour. En entrelaçant les instructions sur le tambour, le processeur pouvait exécuter des instructions séquentielles registre à registre pendant l’accès aux l’instructions suivantes. Ainsi, le temps d’accès du tambour n’était un handicap que quand il était nécessaire d’y transférer des données.

Il était prévu que le CAB 500 puisse avoir jusqu’à 32 instructions câblées dont 14 ont été effectivement mises en œuvre. En outre, 32 instructions dites "microprogrammées" étaient réalisées par des sousprogrammes stockés sur le tambour. Ainsi, seules les instructions d’arithmétique entière étaient câblées, l’arithmétique virgule flottante était "microprogrammée". Dans la mémoire à tores 16 mots étaient réservés aux microprogrammes.

L’entrée/sortie était principalement assurée par un téléimprimeur Friden Flexowriter fournissant en entrée le clavier et le lecteur de ruban perforé et en sortie l’imprimante et le perforateur de ruban. Plus tard, un lecteur de ruban plus rapide (photoélectrique) a été ajouté à côté de la console de commande.

Logiciels

Le CAB 500 est pârticulièrement remarquable pour le langage PAF. Le développement de ce langage a commencé en 1959 et sa structure est très similaire à celle du langage BASIC conçu à Dartmouth College environ 5 ans plus tard. PAF était unique (à la connaissance de l’auteur) en ce qu’il acceptait dans le même programme des mots-clés écrits en quatre langues : français, anglais, allemand et russe. Des documents commerciaux proposaient d’autres langues "à la demande du client".

Les logiciels fournis avec le CAB 500 comprennent un émulateur de calculatrice de bureau à partir du clavier de la Friden et des outils d’aide au développement de programmes en langage machine. Un programme appelé « Ordres Initiaux » fournissait la possibilité d’écrire des programmes en langage machine semi-symbolique. Le nom et la fonction des « Ordres Initiaux » semblent provenir des « Initial Orders de la machine EDSAC conçue à l’Université de Cambridge, Royaume-Uni, à la fin des années 40, et l’on sait que des ingénieurs de la SEA ont visité plusieurs fois le Computing Laboratory de l’Université de Cambridge.

L’introuvable CAB 500

J’ai pris connaissance de l’existence de cette machine au début des années 2000, quand j’étais membre actif de ACONIT où j’ai trouvé dans les archives les schémas de la machine, un document décrivant la mise en œuvre de la machine et une description du langage PAF.

Dans le même temps, j’ai rencontré Marcel Tournier, ancien ingénieur à la CEA où il avait travaillé sur le CAB 500.

J’ai entendu parler d’un CAB 500 (peut-être en état de marche) exposé à Paris quelques dix ans plus tôt. Personne n’a été alors en mesure de me dire ce qu’était devenu cette machine.

Il y avait trois institutions en France qui pouvaient avoir information sur cette machine : le Musée des Arts et Métiers, La Cité des Sciences et de la Fédération des Équipes Bull. J’ai eu des contacts avec chacune d’elles et à chaque fois j’ai essayé d’éclaircir le sort du CAB 500 exposé à Paris. Nul n’a nié son existence mais personne n’a admis être en à sa possession.

En 2004, j’ai eu l’occasion de visiter les réserves du Musée des Arts et Métiers à Paris. Lors de cette visite, j’ai appris qu’il y avait un entrepôt secondaire non loin de là pour le matériel informatique entre autres. C’est là que j’ai finalement trouvé le CAB 500 perdu. Son tambour avait été déconnecté mais est entreposé à proximité.

Ayant trouvé la machine en assez bon état, et après la réusite de mon projet de restauration d’un PDP-9 (voir l’article (pdf) et les photos en ligne) j’ai réfléchi à la possibilité de refaire marcher le CAB 500. Marcel Tournier était enthousiaste quand j’ai proposé l’idée, son expérience aurait été précieuse pour un tel projet. Les schémas et le manuel de mise en œuvre trouvés dans les archives d’ACONIT fournissaient le matériau de référence sans lequel une restauration serait impossible. Le problème a été de convaincre le Musée des Arts et Métiers de nous confier la machine. Ce dernier obstacle s’avérant insurmontable nous avons du renoncer à cette idée.

A la recherche de logiciel

Ayant retrouvé la machine, j’avais commencé une recherche de ses logiciels. L’interpréteur PAF avait un intérêt particulier et à chaque rencontre avec des personnes qui pouvaient avoir travaillé sur le CAB 500 je leur ai demandé s’ils avaient conservé quelque chose : rubans perforés ou listings. J’ai essayé de promouvoir la recherche en promettant d’écrire un émulateur de CAB 500 sitôt qu’il y aurait un logiciel important à exécuter.

Tout cela n’a servi à rien, apparemment personne n’avait rien gardé du CAB 500.

Fin Janvier 2010, j’ai reçu un courriel venant de Pierre-Eric Mounier-Kuhn, historien de l’informatique à l’Université Paris-Sorbonne avec qui j’avais déjà travaillé sur plusieurs projets. En collaboration avec Philippe Nieuwbourg du Musée de l’Informatique à Paris, il était en train d’organiser une exposition prévue pour l’automne 2010 consacrée à la société SEA. Dans le cadre de cette exposition, il a été en contact avec un ancien ingénieur de la SEA qui avait sauvegardé une collection de matériel, de documents et de "bandes" provenant de la SEA et en particulier du CAB 500. Pierre et Philippe ont rendu visite à cet ingénieur, M Claude Masson, vers la fin mars et sont revenus à Paris avec la moitié de sa collection en laissant de nombreux documents et tous les rubans perforés.

C’est mi-avril que j’ai traversé la France d’Angoulême vers les environs de Belfort pour récupérer le reste de la collection Masson, qui comprenait plusieurs centaines de pages de documentation et plus de 200 rubans perforés. Une première inspection sur place a confirmé la présence de rubans marqués PAF et de nombreuses pages des listings de logiciel CAB 500.

Première publication :
Mise en ligne le mercredi 22 mai 2013

Article écrit par :
Pufal Hans



Haut de page | Accueil | Plan du site | Mentions légales | Administration ?