banner
Maison / Nouvelles / Comment construire une réplique d'ordinateur Apple I
Nouvelles

Comment construire une réplique d'ordinateur Apple I

Mar 31, 2023Mar 31, 2023

L'informatique rétro vous permet de vous familiariser avec l'histoire de la technologie, montrant jusqu'où les ordinateurs modernes ont évolué. Voici comment créer votre propre réplique Apple I fonctionnelle.

Les ordinateurs ont parcouru un long chemin depuis les débuts d'Apple en 1976. À l'époque où Steve Jobs et Steve Wozniak ont ​​assemblé pour la première fois les kits informatiques Apple I originaux, tout était sourcé et assemblé à la main.

Apple était une petite entreprise basée dans le garage des parents de Steve Jobs, et Apple vendait des ordinateurs en kit dans le garage.

Les kits Apple I se composaient d'une énorme carte mère, de plusieurs dizaines de puces logiques, de gros condensateurs de puissance, de diodes, de résistances, d'une puce ROM et d'un processeur 6502 conçu par MOS Technology et sous licence de Motorola.

Le 6502 était un processeur commun dans les années 1980 - utilisé dans les ordinateurs Apple, Atari et Commodore. Il s'agissait du premier processeur de micro-ordinateur vraiment bon marché et de l'élément clé qui a permis à la révolution de l'ordinateur personnel de se produire.

Pour l'Apple I, il a également été laissé comme exercice à l'utilisateur de construire une alimentation homebrew et d'obtenir un clavier provenant d'une société appelée Datanetics, qui a ensuite fabriqué le clavier Apple II.

Vous pouvez voir une photo de 1979 de Jobs avec un Apple II sur le site Web du Computer History Museum.

L'Apple I a été vendu sous forme de kit - aucune unité complètement assemblée n'a été vendue.

La machine est sortie pour la première fois le 11 avril 1976 - dix jours seulement après la création d'Apple le jour du poisson d'avril de la même année. Pour plaisanter, Steve et Steve ont décidé de fixer le prix de la machine à 666,66 dollars américains.

Les ventes de l'Apple I étaient faibles, principalement en raison de ses capacités extrêmement limitées. Il y avait aussi des kits beaucoup plus avancés d'autres sociétés disponibles, comme Sinclair du Royaume-Uni, dont les machines offraient une vidéo intégrée, des graphiques, un clavier, un port de cassette et plus tard, la couleur.

L'ordinateur Apple I original de Steve Wozniak, construit dans le garage de la famille Jobs et logé dans une boîte en bois, était à l'origine exposé au musée interne d'Apple au R+D Six on 1 Infinite Loop, à Cupertino, en Californie, mais il se trouve maintenant dans le Musée Smithsonian à Washington, DC.

L'ordinateur de suivi, l'Apple II, a été livré deux ans plus tard dans un boîtier entièrement assemblé, avec alimentation interne et clavier. Il comprenait un mode graphique et le BASIC pris en charge, qui devait être chargé à partir d'une disquette ou d'une carte d'extension basée sur ROM.

Un deuxième modèle, l' Apple II + un an plus tard, prenait en charge le BASIC intégré et le démarrage à partir d'une disquette externe.

L'Apple II a été le premier produit tueur d'Apple, et lorsque la première application tueur d'Apple II, VisiCalc, a été écrite par Dan Bricklin et Bob Frankston un an plus tard, Apple est devenue du jour au lendemain la première entreprise d'ordinateurs personnels à un milliard de dollars de la Silicon Valley.

Les ordinateurs Apple II se sont envolés des étagères alors que les comptables et autres hommes d'affaires utilisaient VisiCalc pour gérer leurs activités et automatiser la comptabilité et les prévisions.

L'Apple I était sévèrement limité, principalement parce que la RAM était extrêmement chère à l'époque, et la machine supportait 4K ou 8K de RAM extensible à 32K. L'Apple I était uniquement textuel et manquait de mode graphique, de couleur et de sprites pour la création de jeux.

La machine n'avait pas de système d'exploitation - BASIC pouvait être chargé à partir d'une cassette compacte en option, un format audio populaire des années 1970, à condition que l'utilisateur construise également la carte d'interface d'extension de cassette en option qui s'adapte au port d'extension unique de la machine.

Sans BASIC, si l'utilisateur voulait programmer l'Apple I, il devait utiliser le langage d'assemblage Motorola 6502 et le moniteur intégré de la machine, WozMon.

Dans le monde d'aujourd'hui, les cartes de circuits imprimés (PCB) peuvent être conçues en quelques heures ou jours dans un logiciel, le fichier étant enregistré et téléchargé sur Internet dans les maisons de production de PCB du monde entier. L'acheteur peut avoir des planches à sa porte en une semaine - presque sans frais.

Combinez cela avec les avancées modernes des processeurs et des microcontrôleurs tels que les FPGA, les EPROM flash et les appareils IoT tels qu'Arduino, et vous avez tous les ingrédients d'une nouvelle révolution informatique rétro.

Plusieurs entrepreneurs entreprenants ont recréé le PCB Apple I original et les vendent maintenant en ligne, notamment sur eBay et Etsy. Vous pouvez acheter l'une de ces cartes et la repeupler vous-même avec des pièces, en construisant une toute nouvelle réplique exacte et fonctionnelle de l'Apple I d'origine.

Vous devrez également trouver une puce ROM Apple I fonctionnelle d'origine et créer votre propre alimentation personnalisée pour la carte ou en trouver une préconstruite en ligne. La documentation originale de l'Apple I peut également être trouvée en ligne, mais sachez que le document est toujours protégé par des droits d'auteur appartenant à Apple, Inc.

Si vous n'êtes pas à la hauteur de la tâche d'acheter et d'assembler tout le nécessaire pour créer un nouvel Apple I original, il existe un meilleur moyen. Tebi de Norvège a créé un tout nouveau circuit imprimé appelé RC6502 qui utilise la ROM Apple I d'origine, une seule puce SRAM, un processeur 6502 fonctionnant à 1 MHz et une seule puce PIA 6821P, également fabriquée à l'origine par Motorola.

La carte nécessite également un seul Arduino Nano, dans lequel vous devez charger un programme, ainsi que quelques autres petits composants. Vous pouvez également créer un circuit imprimé de fond de panier en option pour ajouter d'autres fonctionnalités, notamment une unité d'affichage vidéo.

Le RC6502 est open source et vous pouvez télécharger les fichiers Gerber et commander les vôtres en ligne, ou commander une carte auprès de vendeurs sur eBay, Amazon, Etsy et une foule d'autres points de vente en ligne. Un fichier Gerber est un schéma généré par ordinateur d'un circuit électronique utilisé pour produire un PCB.

Le gros avantage du RC6502 est sa taille et son faible nombre de composants, car le coût total de construction de la carte est inférieur à 50 $.

Jetons un coup d'œil au PCB nu :

Dans le coin supérieur gauche, il y a 3 composants : une puce d'oscillateur à cristal de 1 MHz, une puce de minuterie 555 commune et une puce d'interface périphérique série (SPI) MCP23S17-E/SP. Le dernier, fabriqué par Microchip Technology Inc. de Chandler, AZ, aide la carte à communiquer avec un Arduino Nano.

Le MCP23S17-E/SP peut être un peu cher et difficile à trouver en raison de problèmes de chaîne d'approvisionnement causés par la pandémie de COVID, mais ils deviennent lentement plus disponibles.

DigiKey semble avoir un stock énorme maintenant, ou essayez AliExpress. Nous avons trouvé le nôtre sur AliExpress, mais il a coûté 7 $, frais de port compris, pendant la pénurie.

Dans le coin supérieur droit de la carte se trouve un espace pour les en-têtes Arduino Nano, que vous devez souder pour pouvoir y brancher un Arduino.

En dessous se trouvent 3 puces logiques communes : 74HCT138N, 74HCT04N et 74HCT00N. Ce sont des portes logiques, des multiplexeurs et des onduleurs et tous coûtent environ quelques dollars chacun.

Sous les trois puces logiques se trouvent une seule puce SRAM (HM62256BLP-7 fabriquée par Hitachi, ou un équivalent) et une seule EPROM flashable, dans ce cas une Atmel AT28C64-15PC). Vous aurez également besoin d'un dispositif de programmation USB pour flasher la puce Atmel.

Le "-7" à la fin du HM62256BLP-7 indique la vitesse de la RAM - dans ce cas 70ns, mais vous pourrez peut-être faire fonctionner des puces légèrement plus lentes, éventuellement aussi lentes que 100ns (ou "-10" à la fin du nom du modèle de puce). Dans la plupart des cas, si la vitesse est proche, la RAM peut être ralentie pour correspondre à la vitesse de la carte.

À gauche de la RAM et de l'EPROM se trouve un processeur Motorola 6502, fonctionnant à 1 MHz, bien que vous puissiez également faire fonctionner l'équivalent moderne du 6502, le 65C02. Le 65C02 est un remplacement moderne du 6502 et est fabriqué par Western Design Center (la société qui succède à MOS Technology), situé à Mesa, AZ.

Le 65C02 utilise une conception plus moderne, utilise moins de 1/10e de la puissance des 6502 d'origine et peut fonctionner à une vitesse variable jusqu'à 14 MHz. La broche 37 est une broche d'entrée d'horloge afin que le processeur puisse être piloté par un oscillateur externe - dans ce cas, le cristal 1 MHz.

Si vous n'utilisez pas de 65C02, vous devrez vous procurer un 6502 d'occasion fonctionnel ou un New Old Stock auprès de vendeurs en ligne. Ils peuvent être trouvés sur eBay, parfois sur Amazon, sur AliExpress ou une foule d'autres vendeurs à l'étranger.

Alors que la technologie MOS a fabriqué le 6502 d'origine, ils ont ensuite été licenciés à Motorola, vous pouvez donc voir les modèles 6502 des deux sociétés. Le 6502 a également été licencié plus tard à Rockwell International et UMC.

Vous pouvez toujours trouver des NOS Rockwell et UMC 6502 qui datent de plusieurs décennies mais n'ont jamais été utilisés.

Habituellement, les puces portent un code dateur avec la semaine, le mois et l'année de fabrication. L'année est généralement indiquée en premier dans le code de date - mais pas toujours.

Sur la photo ci-dessous, le code du tampon dateur 6502 est "0988" - indiquant septembre 1988.

Dans la plupart des cas, il est généralement préférable d'obtenir les puces les plus récentes possibles, car certains premiers cycles de production peuvent avoir rencontré des problèmes et, dans la plupart des cas, les matériaux des puces se dégradent avec le temps. Ainsi, une puce fabriquée en 1992 serait généralement meilleure qu'une puce fabriquée en 1979.

Habituellement, les véritables Motorola 6502 portent le logo Motorola "M", mais pas toujours. Certaines puces finissent comme déchets électroniques en Chine ou en Inde et sont retirées des planches, remises à neuf et refaites, généralement avec une impression générique dessus, comme celle illustrée ci-dessus.

Sachez que certaines puces en provenance de Chine sont fausses et bien qu'elles puissent fonctionner, elles peuvent ne pas être fiables ou fonctionner longtemps.

Vous aurez également besoin de prises IC, d'en-têtes de cavaliers, de cavaliers en plastique de type carte mère PC, de diverses résistances et de condensateurs en céramique - principalement, mais pas tous, de 104 ou 0,1 uF.

Pour une liste complète des nomenclatures (BOM) du projet, consultez la page GitHub de Tebi.

Vous voudrez d'abord souder toutes les résistances, les condensateurs en céramique, le condensateur électrolytique, un petit interrupteur à bouton-poussoir momentané et les en-têtes de cavalier. Prenez votre temps et vérifiez tous les joints de soudure.

Il existe deux types de sockets IC : un type (le moins cher) a des connexions plates en forme de feuille et un contour en plastique qui repose à plat contre le PCB.

Bien que moins chers, ils sont également moins fiables : les petites feuilles métalliques qui maintiennent les broches IC peuvent se disloquer et il est impossible de voir sous le boîtier en plastique car il est affleurant.

L'autre type de douille utilise des broches surélevées arrondies, avec des trous ronds sur le dessus, et est souvent plaquée or pour éviter la corrosion - même des décennies dans le futur. Le deuxième type de prise coûte un peu plus cher mais en vaut la peine.

Ils vous permettent également d'inspecter la face supérieure des joints de soudure sur un circuit imprimé pour vous assurer qu'il n'y a pas de ponts indésirables entre les trous (appelés vias).

Notez que les prises et les circuits intégrés ont généralement une encoche en forme de demi-cercle à une extrémité. Habituellement, les PCB ont également des marquages ​​​​avec une encoche en demi-cercle. Soudez les douilles de manière à ce que les encoches correspondent aux marquages ​​du circuit imprimé.

Les encoches garantissent que les circuits intégrés sont insérés dans le bon sens correspondant aux prises. Cela empêche les frites frites dues à une insertion vers l'arrière.

Vous devrez également souder le petit interrupteur de réinitialisation ou les en-têtes d'un interrupteur externe, d'une alimentation et d'un voyant d'alimentation dans le coin supérieur droit de la carte.

L'en-tête à longues broches le long du bas de la carte a une variété de connexions, y compris l'alimentation et d'autres fonctionnalités. Consultez la page GitHub et la documentation pour un brochage complet de toutes les broches de cavalier long.

Une version initiale avec tous les petits composants installés ressemble à ceci :

Ensuite, soudez deux rangées d'en-têtes de douilles à broches pour l'Arduino Nano dans le coin supérieur droit de la carte et installez toutes les puces dans leurs douilles, à l'exception de la puce Atmel EPROM.

EPROM signifie Erasable Programmable Read Only Memory. Vous aurez besoin d'utiliser un dispositif de programmation USB sur un PC pour flasher la puce EPROM.

Une fois flashé, insérez la puce Atmel dans son socket. Aussi, soudez le cristal 1Mhz dans le coin supérieur gauche de la carte.

Soyez très prudent lorsque vous insérez les circuits intégrés dans leurs prises pour vous assurer qu'aucune broche ne se plie ou ne manque les trous de la prise.

Ensuite, ajoutez de petits cavaliers en plastique aux broches des cavaliers comme décrit dans la documentation. Il existe des cavaliers pour la quantité de RAM, l'activation PIA, l'activation ROM et autres. Chaque réglage de cavalier modifie le comportement de la carte.

Une version antérieure du RC6502 Apple I utilisait une carte de fond de panier, que vous pouvez toujours construire, et plusieurs cartes filles que les cavaliers activaient ou désactivaient. Mais la nouvelle version de la carte est une conception d'ordinateur à carte unique (SBC) qui est autonome.

Si vous souhaitez utiliser la carte de fond de panier, vous devrez utiliser un en-tête incliné sur le SBC pour le connecteur d'en-tête long afin que la carte puisse être branchée verticalement dans le fond de panier.

Si vous souhaitez utiliser un affichage vidéo réel avec la carte, vous devrez ajouter deux petites cartes supplémentaires (appelées unités d'affichage vidéo) et la carte de fond de panier. Sinon, vous vous connecterez à la carte SBC via une connexion série via l'Arduino.

Consultez le document Bus.md sur la page GitHub pour une description complète du bus système et du brochage.

Si vous souhaitez alimenter la carte à l'aide de la connexion USB de l'Arduino et que vous n'utilisez pas le fond de panier, ajoutez un cavalier à l'en-tête à deux broches juste à côté du voyant d'alimentation marqué "USB Power".

Si ce n'est pas le cas, le fond de panier fournit l'alimentation à partir de sa prise d'alimentation CC sur les broches 17 et 18 de l'en-tête long du SBC. Pour la connexion USB Arduino, vous souhaiterez peut-être obtenir un câble USB avec un interrupteur d'alimentation afin de pouvoir allumer et éteindre l'alimentation.

Une fois que tout est prêt, connectez le câble USB Arduino, branchez-le sur votre Mac et mettez l'interrupteur d'alimentation.

Une fois allumé, vous devrez lancer l'application Arduino IDE sur votre Mac ou PC et sousOutils->Cartes->Cartes Arduino AVRsélectionnerArduino Nano . Une fois sélectionné, vous devrez peut-être également définir le port série sousOutils->Ports'il ne se sélectionne pas automatiquement.

Une fois connecté dans l'IDE Arduino, téléchargez le programme d'esquisse PIA Communicator sur l'Arduino en utilisant l'IDE comme mentionné dans la documentation. Cela permet au moniteur série de l'IDE de communiquer avec l'Apple I et d'afficher sa sortie dans une fenêtre sur votre Mac.

Si vous rencontrez des difficultés pour vous connecter, vérifiez le débit en bauds - le débit auquel les données sont transférées via la connexion série. Il doit être réglé sur 115200.

Si tout fonctionne comme prévu, dans le moniteur série de l'IDE Arduino, vous devriez voir un seul point d'exclamation : "!". Vous pouvez maintenant saisir n'importe quelle adresse hexadécimale pour afficher son contenu.

PIA Communicator vous permet également de télécharger les programmes d'assemblage 6502 et BASIC sur l'Apple I et de les exécuter. Une fois que vous avez chargé BASIC sur l'Apple I, vous pouvez taper des programmes BASIC directement dans l'Apple I via la connexion série et les exécuter.

BASIC change l'invite de la ligne de commande pour afficher un ">" au lieu du "!" dans la fenêtre série.

Trois applications sont intégrées à la ROM Apple I. Celles-ci sont répertoriées à l'arrière du circuit imprimé RC6502 sous le processeur, ainsi que les adresses de mémoire ROM en hexadécimal dont vous avez besoin pour y accéder. Ceux-ci sont:

Pour exécuter l'un des trois programmes, au "!" invite tapez l'adresse hexadécimale, suivie d'un espace, puis d'un "R" majuscule, puis appuyez surRetour . Par exemple, pour charger Integer BASIC sur l'Apple I à partir de la fenêtre série Arduino sur votre Mac, tapez :

E000R

et appuyez surRetour.

Vous devriez voir l'invite de la fenêtre série se changer en : ">".

Vous êtes maintenant en BASIC et pouvez saisir des programmes BASIC. Une fois qu'un programme BASIC est entré, tapezcouriret appuyez surRetourpour l'exécuter.

Le monde de l'informatique rétro est en pleine expansion et le RC6502 est un moyen rapide et peu coûteux de démarrer avec un Apple I build.

Assurez-vous également de consulter le remarquable livre de Tom Owad Apple I Replica Creation: Back to the Garage (6 $ PDF) - qui contient une introduction de Steve Wozniak lui-même.

Chip est un vétéran de l'industrie Apple depuis 30 ans, est l'auteur de 18 produits logiciels commerciaux pour Mac et est un ancien employé d'Apple et de Sony.

Outils->Cartes->Cartes Arduino AVR Outils Arduino Nano->Port Return Return run Return