Adaptateur manette SNES à Atari/Commodore

Introduction

Le projet d'adaptateur présenté sur cette page permet d'utiliser une manette SNES en tant que joystick sur un Commodore 64 ou Atari. Parfait pour les manettes de style Arcade pour SNES ou simplement si vous aimez les manettes SNES.

Systèmes testés: Commodore 64 (NTSC et PAL), C64DTV (PAL), Amiga 500 (PAL), Amiga 600 (PAL), Atari 130XE (NTSC) et Atari VCS-2600 (PAL).
Ne fonctionne pas: Minimig, Amiga CD32

Note: NTSC/PAL ne devrait pas faire de différence, mais cette information est tout de même donnée par souci de précision.





« Mappings » de boutons

Atari/CommodoreStyle 1Style 2Style 3Style 4
D-Up D-Up B A D-down/A
D-down D-down D-down D-down D-up
D-left D-left D-left D-left D-right
D-right D-right D-right D-right D-left
Feu/Btn1 A/B A B B
Auto Feu/Btn1 Y/R Y/R Y/R Y/R
Btn2 X/L X/L X/L X/L
Activation d'un « mapping »:
Les équivalences de boutons sont choisies en gardant appuyé certains boutons de la manette SNES lors du branchement de l'adaptateur ou de la mise sous tension de la console.

«Mapping»Activation
Style 1Default
Style 2Maintenir B
Style 3Maintenir A
Style 4Maintenir X

Six vitesses de tir automatiques sont disponibles (30Hz, 25Hz, 20Hz, 16.667Hz, 15Hz and 12.5Hz) et sélectionnées en appuyant sur le bouton SELECT à répétition. La vitesse par défaut est 25Hz.

Le bouton START active/déactive le verrou de tir automatique. Lorsque le verrou est actif, le mode tir rapide du bouton 1 fonctionne en continu sans qu'aucun bouton ne doive être maintenu.

Note: Le bouton "Fire 2" est pour les systèmes amiga seulement.
Note 2: Lorsque le tir automatique est actif, le bouton feu conserve la priorité. (Mega-Shoot dans les jeux tels "R-TYPE")
Note 3: Le bouton "Fire 2" n'est pas influencé poar le mode tir automatique. Il continue donc de fonctionner normalement. (Permet d'appeler le drone dans "R-Type" par exemple)




Câblage

Pour ce projet, je me suis servi d'une version simplifiée de mon circuit multiuse pcb2. Les seules composantes présentent sont le micro-contrôleur, les condensateurs et un cristal de 16 MHz.

Voici le schéma:



Signal SNESNom de broche AVR
VCCVCC
GNDGND
CLOCKPB5
DATAPB4
LATCHPB3

Câblage pour Commodore/Atari:

Broche DB9Nom du signalNom de broche AVR
1UP PC5
2DN PC4
3LF PC3
4RT PC2
6Feu PC1
7VCC VCC
8GND GND
9Feu 2 PC0

Important: Pour que le logiciel fonctionne en mode Atari/Commodore, la broche PB1 du micro-contrôleur doit absolument être mise à GND.


Voici quelques photos de mon montage pour le développement, câblé d'après le schéma et le tableau ci-dessus.
Multiuse PCB2

Multiuse PCB2

Avec C64

Avec C64

Avec C64

Avec C64





Logiciel

Important: Pour que le logiciel fonctionne en mode Atari/Commodore, la broche PB1 du micro contrôleur doit absolument être mise à GND.
Version v1.2
29 octobre 2013 (Mardi)
Nouvelles fonctionnalités:
  • Deux nouveaux « mappings » pour Genesis
  • Un nouveau « mapping » pour Atari/Commodore
  • Support d'un deuxième bouton (Amiga)
  • Mode de tir rapide pour la version Atari/commodore (Bouton 1/Feu)
  • Vitesses de tir: 30Hz, 25Hz, 20Hz, 16.667Hz, 15Hz and 12.5Hz
  • Tir rapide en continu activé/déactivé par le bouton START.
Fichier(s):
snes2md-1.2.tar.gz (19.8 KB)
snes2md-1.2.hex (5.3 KB)
Afficher les versions précédentes
Version v1.1.1
20 octobre 2013 (Dimanche)
Mise à jour des équivalences de bouton Atari.
Fichier(s):
snes2md-1.1.1.tar.gz (18.7 KB)
snes2md-1.1.1.hex (3.4 KB)
Version v1.1
8 octobre 2013 (Mardi)
Implémentation du support Atari/Commodore:
  • Deux «mappings» de boutons
  • Mode Atari activé en reliant PB1 à GND. Note: Le câblage du DB9 diffère légèrement.
Fichier(s):
snes2md-1.1.tar.gz (18.6 KB)
snes2md-1.1.hex (3.4 KB)
Version v1.0
14 septembre 2013 (Samedi)
Première publication:
  • Émulation de manette Genesis/Megadrive à 6 boutons
  • Choix de 3 différents « mappings » au démarrage
Fichier(s):
snes2md-1.0.tar.gz (18.1 KB)
snes2md-1.0.hex (2.8 KB)
Utilisation des fichiers .hex
Les fichiers .hex sont pour programmer l'Atmega8a. Les "fuses bytes" pour ce projet sont: high_byte=0xc9, low_byte=0x9f.

Code source (fichiers .tar.gz):
À moins d'indications contraires, le code source est rendu publique sous la licence GPL. Consulter le fichier LICENSE inclus dans le .tar.gz pour plus d'informations. Le projet se compile avec avr-gcc sous Linux.




Photos provenant des utilisateurs

J'aime bien voir comment les autres s'y prennent pour assembler mes projets. Vous pouvez me faire parvenir des photos de vos montages et je les afficherai ici. Veuillez également m'indiquer si vous souhaitez que j'affiche votre nom/alias et pays. Par défaut je ne mentionnerai que votre prénom.



Avertissement

Je ne saurais être tenu responsable pour les dommages que l'utilisation des informations ou la mise en œuvre des instructions présentées sur cette page pourrait causer à votre équipement, à vous-même ou à autrui. Aussi, je ne donne aucune garantie quant à l'exactitude des informations et à leur fonctionnement.