Faites dialoguer une carte Arduino avec un vieux Commodore 64

Magazine
Marque
Contenu Premium
Domaines


Résumé

Il y a des jours où il nous arrive des idées saugrenues mais où, plutôt que de les chasser rapidement de notre esprit, on fonce tête baissée pour les mettre en œuvre. Le jour où je me suis mis en tête de connecter un Commodore 64 à une carte Arduino pour les faire communiquer était un de ceux-là. Pire encore, hors de question de faire cela en BASIC. Si c'est du C côté Arduino, ce sera aussi du C côté Commodore 64 !


Je ne vous le cacherai pas, l'idée n'a pas vraiment d'autre intérêt que le fait d'obtenir sa dose bien méritée de dopamine après avoir lutté durement pour arriver à ses fins, en plus de l'aspect pédagogique bien entendu. Le périple fut aussi frustrant que pénible et déroutant, mais le résultat en valait bien la chandelle. Car oui, il est effectivement possible de développer en C pour le Commodore 64 (et ses cousins) et d'arriver à communiquer avec une carte Arduino via un port série à 2400 bps.

Notre scénario d'expérimentation est simple puisqu'il consiste à relier une carte de type Arduino UNO avec un Commodore 64 (« C64 » dans le reste de cet article), avec un minimum de composants supplémentaires qui, au final se limitera à un simple connecteur. Côté code, le C64 aura pour tâche d'envoyer une série d'octets à la carte Arduino qui recevra les données et accusera réception en envoyant une valeur modifiée de chacun d'eux. De retour sur le C64 ces...

Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Programmation avec le 6502 : les sprites de la NES, ou comment coder le jeu Pac-Man

Magazine
Marque
Hackable
Numéro
36
Mois de parution
janvier 2021
Domaines
Résumé

Dans le précédent article, nous avons commencé à nous familiariser avec la partie graphique de la console NES (Nintendo Entertainment System). Aujourd’hui, nous allons réaliser un véritable jeu, ou du moins nous allons suffisamment le débuter pour qu’il commence à être intéressant.

MiSTer : La solution rétro ultime ?

Magazine
Marque
Hackable
Numéro
35
Mois de parution
octobre 2020
Domaines
Résumé

Imaginez, un matériel unique capable de simuler fidèlement n'importe quel ordinateur, console et borne d'arcade rétro, sans émulation et vous donnant accès à une collection presque infinie de programmes, de démos et de jeux. Le tout compatible avec du matériel moderne (HDMI, USB, etc.), activement développé et accessible pour un budget raisonnable (mais pas économique pour autant). Cette solution existe, c'est MiSTer !

Programmation avec le 6502 : découverte de la NES

Magazine
Marque
Hackable
Numéro
34
Mois de parution
juillet 2020
Domaines
Résumé

Dans les articles précédents, nous avons étudié de près le langage d'assemblage du microprocesseur 6502. Et même si j'ai essayé d'étayer le tout avec beaucoup d'exemples, tout cela est resté très théorique. Aujourd'hui, nous allons vraiment passer à la pratique en réalisant des programmes graphiques pouvant s'exécuter sur une véritable console NES ou sur un émulateur.

Programmation avec le 6502 : trigonométrons !

Magazine
Marque
Hackable
Numéro
33
Mois de parution
avril 2020
Domaines
Résumé

Lors du précédent article, nous avons parcouru les différents modes d'adressage du 6502, ce qui nous a permis d'élaborer quelques algorithmes simples, notamment pour réaliser des additions ou soustractions sur des nombres entiers de plus de 8 bits et même, des multiplications. Aujourd'hui, nous allons continuer dans cette voie en nous intéressant à la division et même aux nombres décimaux (à virgule), ce qui nous permettra de mettre un pied dans le monde effrayant de la trigonométrie !

Programmation avec le 6502 : adressage et mathématiques

Magazine
Marque
Hackable
Numéro
32
Mois de parution
janvier 2020
Domaines
Résumé

L'article précédent était assez pessimiste et peut-être même un peu rébarbatif, avec cette liste des instructions du 6502. On était arrivé à la conclusion que les possibilités de ce processeur étaient finalement assez limitées : opérations seulement sur 8 bits, pas de multiplications ni de divisions, pas de nombre à virgule, très très peu de registres utilisables (A, X et Y).