Si vous avez l'intention de jouer avec une console Genesis/Megadrive mais
préférez fortement les manettes SNES, ou encore si vous possédez plusieurs
manettes de style arcade complètement géniales mais pour SNES, un adaptateur
permettant d'utiliser des manettes SNES sur une console Genesis/Megadrive
est exactement ce qu'il vous faut.
J'ai utilisé un Atmega8 pour fabriquer le projet d'adaptateur présenté sur cette page.
L'optimisation du code pour que le temps de réponse aux requêtes provenant
de la console a été un réel plaisir et défi que j'ai
pris le temps de documenter.
Des adaptateurs déjà construits sont disponibles dans mon magasin:
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
SNES 1
Default
SNES 2
Maintenir B
SNES 3
Maintenir Y
SNES 4
Maintenir X
SNES 5
Maintenir L
SNES 6
Maintenir R
Note: Le « mapping » SNES 6 n'est pas encore disponible.
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:
Câblage:
Voici maintenant des tableaux pour le câblage du connecteur pour la console Genesis/Megadrive (DB9-F) et pour la manette SNES:
Broche DB9
Nom du signal
Nom de broche AVR
1
UP/UP/Z
PC5
2
DN/DN/Y
PC4
3
0/LF/X
PC3
4
0/RT/
PC2
5
VCC
VCC
6
A/B
PC1
7
SELECT
PD2 (INT0)
8
GND
GND
9
START/C
PC0
Signal SNES
Nom de broche AVR
VCC
VCC
GND
GND
CLOCK
PB5
DATA
PB4
LATCH
PB3
Voici quelques photos de mon montage pour le développement, câblé d'après
le schéma et la tableaux ci-dessus. Notez comment le connecteur DB9-F
ne s'installe pas parfaitement. Idéalement, il faudrait se servir d'un
câble récupéré sur une manette ou encore d'une extension.
Connecteur DB9-F
Multiuse PCB2
Un test avec Comix Zone
Logiciel
Attention: Les adaptateurs SNES à Megadrive/Genesis et SNES à Atari/Commodore partagent le code ci-dessous mais exigent un câblage différent. Ne jamais utiliser un adaptateur contruit pour Genesis/Megadrive sur un système Commodore ou Atari.
Ce projet est aussi disponible sur GitHub! Pour suggérer de nouvelles fonctionnalités, signaler un problème ou contribuer au projet,
vous pouvez m'écrire ou utiliser le dépôt GitHub: https://github.com/raphnet/snes2md
Utilisation des fichiers .hex
Les fichiers .hex sont pour programmer l'AVR. Les "fuses bytes" pour ce projet
sont:
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. 6 janvier 2015 (Mardi) Roman Sysoev de Russie m'a envoyé ces quelques photos du prototype et de la version finale sur PCB (boîtier toujours manquant) de l'adaptateur SNES à Genesis/Megadrive qu'il s'est construit.
Références
Le document suivant a été utile pour la réalisation de ce projet:
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.