Remplacer un 68LC040 par un 68040

Dans pas mal de Mac des années 90, Apple a utilisé les processeurs de Motorola de la famille 68000. Et a l’époque, pour réduire les coûts, certains CPU n’avaient pas d’unité pour les calculs en virgule flottante (FPU). Mais il est possible, dans certains cas, de remplacer le CPU.

Le cobaye est un Performa 630, qui intègre un CPU 68LC040 à 33 MHz. Dans la gamme 68040, les modèles “complets” (68040) ont une FPU et une MMU, les modèles “LC” (68LC040) ont une MMU mais pas de FPU et les modèles “EC” (qu’Apple n’a pas utilisé) n’ont ni MMU ni FPU. Comme les puces sont proches, on peut remplacer un 68LC040 par un 68040 sans soucis. Du temps des puces précédentes (68000, 68020 et 68030), le processeur n’intégrait pas de FPU et il fallait en ajouter une externe (68881 ou 68882). La FPU accélère évidemment tout ce qui utilise des calculs flottants. Dans les années 80, c’était surtout les tableurs et pas mal de programmes professionnels, alors que dans les années 90, les jeux ont commencé à utiliser intensivement la FPU. La FPU intégrée dans le CPU est évidemment nettement plus rapide que la version externe.

Un 68LC040 et un 68040

Chez Intel, la FPU est externe jusqu’au 386 (inclus), sous le nom x87, et elle est intégrée dans les 486. Il existe des 486 sans FPU (modèle SX) mais ça reste assez rare. Dès le Pentium, toutes les puces (ou presque) intègrent une FPU, plus ou moins rapide.

Changer le CPU

Trouver un 68040 complet ne pose pas trop de soucis : c’est assez courant sur eBay pour une bouchée de pain. Pour simplifier les choses (et en prévision d’un éventuel overclocking), j’ai choisi une puce certifiée à 40 MHz. A noter que le successeur du 68040, le 68060 (il n’y a pas de 68050) ne fonctionne pas dans les Mac et qu’Apple ne l’a pas utilisé. Techniquement, c’est possible (des adaptateurs permettent d’installer un 68060 dans un socket de 68040) mais la ROM Apple ne gère pas correctement le CPU. De ce que j’ai vu, elle devrait être modifiée pour prendre en charge correctement le CPU et même les constructeurs de cartes accélératrices ont abandonné cette voie. En pratique, Apple est passé du 68040 au PowerPC 601 directement.

Le 68LC040 d’origine


On l’enlève


Le 68040 le remplace

Le changement de puce reste assez simple, même sans les outils dédiés. les 68040 ne sont pas sur un support ZIF, mais une lame plate suffit pour enlever le CPU de son socket. Ensuite, il faut bien enfoncer le nouveau et un détrompeur empêche d’insérer la puce dans le mauvais sens. Avec mon Performa 630, le changement a pris quelques minutes, et la machine a démarré sans soucis avec le 68040 et sa FPU. Ce n’est visiblement pas toujours le cas.

Quelques tests

Mac OS 7.6 reconnaît bien le CPU directement, tout comme les benchs. Forcément, c’est nettement moins rapide qu’un PowerPC, mais beaucoup plus que l’émulation logicielle de la FPU avec le 68LC040. Prochaine étape, le passer à 40 MHz : la carte mère et le processeur supportent cette fréquence. J’en ai aussi profité pour installer une carte Ethernet en PDS et un lecteur CD un peu plus rapide, ainsi qu’une nouvelle pile (mais j’en parlerais plus tard).

Avant


Avant


Avant (avec la FPU en software)


Après


Après


Après


Carte Ethernet, 68040 et batterie custom