Il y a quelques temps (2013), on m'a contacté et demandé si je pouvais faire un adaptateur permettant d'utiliser
des manettes pour SNES avec un Playstation. En fait, la personne voulait pouvoir utiliser une manette de
type arcade conçue pour SNES qui lui plaisait beaucoup.
J'avais quelques années auparavant (2007) réalisé le même projet mais j'ignore pourquoi, je ne l'avais jamais
reproduit ni publié. Cela n'a donc pas été difficile. Je n'ai eu qu'à faire un peu de ménage dans le
code et réviser le schéma de câblage pour l'utilisation avec mon circuit à usage multiple actuel.
Caractéristiques:
Supporte les manettes SNES d'origine et la plupart des clones.
Se comporte comme une manette digitale pour PSX. Assurez-vous que les jeux
cibles n'exigent pas les manettes de type analogue.
Deux équivalences de boutons ("mappings"). Le mapping alternatif est activé en gardant le bouton select enfoncé lors de la
mise sous tension ou le branchement à la PSX de l'adaptateur.
Un adaptateur pré-assemblé est disponible dans mon magasin en ligne:
Directions inversées pour le maniement d'un stick arcade de la main droite.
Jeux testés
Manette PS1 digitale
Pour qu'un jeu fonctionne, il doit supporter les anciennes manettes Digitales (celles sans les deux joysticks).
Jeux PS1 testés et fonctionnels (avec la version 1.2): Arcade Party Pak,
Captain Commando,
Chrono Cross (US),
CoolBoarders 4 (US),
Don Pachi & Do Don Pachi,
Ehrgeiz (JP),
Einhänder,
Final Fantasy Anthology: FFV (US),
Final Fantasy Anthology: FFVI (US),
Final Fantasy Chronicles: FFIV (US),
Final Fantasy Chronicles: Chrono Trigger (US),
Final Fantasy Origins (US),
Final Fantasy Tactics (US),
Final Fantasy VII (JP)(US),
Final Fantasy VIII (US),
Final Fantaxy IX (US),
Gradius Gaiden (JP),
Gran Turismo 2 (US),
グレイトヒッツ (JP),
Harry Potter (US),
Hebereke Popoitto,
King of Fighters 99,
Konami Arcade Classics,
Legacy of Kain: Soul Reaver (US),
Mega Man (X4, X5, X6, 8),
Namco Arcade Museum Volume 1,
Namco Arcade Museum Volume 3,
Metal Slug,
It might be NES,
No Fear Downhill Mountain Bike Racing (US),
Parasite Eve (US),
PS1 menu (US),
Puyo Puyo Sun,
Puzzle Bobble (whole series),
Rollcage (US),
R-Type Delta
Secret of mana,
Smurf Racer! (US),
Soulblade,
Street Fighter (10 different ones),
Tales of Phantasia (JP),
Tekken 2,
Tomba,
Vagrant Story (US),
Wild Arms 2 (US),
(Il est évident que bien d'autres jeux fonctionneront. Vos courriels m'indiquant lesquels sont les bienvenus).
Jeux PS1 non-fonctionnels:
Avec le plus récent firmware (v1.2), il n'y a pas de jeux non-fonctionnels connus à ce jour.
Avec le firmware précédent (v1.1), les jeux suivants ne fonctionnaient pas: Ehrgeiz (JP),
Einhander (JP),
Rockman X3 (JP),
Rollcage (US),
Silhouette Mirage (JP),
Tales of Phantasia (JP),
Tobal 2 (JP),
Vagrant Story (US),
Jeux PS2:
Bien que le menu du PS2 soit fonctionnel, la plupart des jeux PS2 semblent exiger une manette analogique, et ce même
lorsqu'ils pourraient parfaitement s'en passer. Notamment: Mega man anniversary collection ne fonctionne pas.
Et pour quelle raison?
Schéma et câblage
Voici d'abord le schéma:
Voici quelques explications des signaux:
Playstation
#
Nom
Emplacement
Commentaires
1
DATA
PB4
Via transistor « Open-collector ». SPI MISO. (Vers le PSX)
2
CMD
PB3
SPI MOSI (Provient du PSX)
3
+7.6V
Inutilisé
4
GND
GND
Alimentation en provenance du PSX.
5
+3.3V
VCC
Alimentation en provenance du PSX.
6
ATT
PB2
«Chip select» SPI (Provient du PSX)
7
CLK
PB5
SPI SCK (Provient du PSX)
8
N/A
9
ACK
PC0
"Open collector" simulé (Vers le PSX)
SNES
Nom
Emplacement
Commentaires
Clock
PC5
Latch
PC4
Data
PC3
Vcc
VCC
+3.3 volt
Gnd
GND
Notes:
«Open collector»: Se dit d'une sortie constituée d'un collecteur (ou drain) seulement. Une telle sortie peut «tirer» un
signal vers 0 (niveau logique bas) mais ne peut pas le «pousser» à un niveau logique haut (ex: 3.3v). La sortie de donnés
SPI (MISO pour «master in slave out») n'est pas «open collector», mais «push pull». J'ai donc recours à un transistor. Un
branchement direct empêcherait le port de carte mémoire, qui partage les mêmes signaux, de fonctionner correctement.
«Open collector simulé»: Avec l'AVR, technique qui consiste à alterner une broche entre le mode entrée et sortie.
Horloge: Le circuit utilise l'oscillateur RC interne au AVR. Pas de cristal requis.
Normalement, les manettes SNES fonctionnent sous 5 volt, mais par expérience je sais qu'elles fonctionnent tout
de même très bien à 3.3volt. Cela permet un circuit s'alimentant directement à 3.3volt via le Playstation sans régulateur.
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/snes2ps
Utilisation des fichiers .hex
Les fichiers .hex sont pour programmer l'Atmega8a. Les "fuses bytes" pour ce projet
sont: high_byte=0xd9, low_byte=0xe4.
Pour de l'information sur la programmation d'un AVR, visitez ma page sur la
programmation d'AVR
Code source (fichiers .tar.gz):
À moins d'indications contraires, le code source est rendu publique sous la
licence GPL v3. Consulter le fichier gpl.txt inclus dans le .tar.gz pour plus d'informations.
Le projet se compile avec avr-gcc sous Linux.
Photos
Voici le circuit du prototype que j'avais fabriqué en 2007. Je m'étais servi de mon circuit à usage multiple
Multiuse tiny1 pour fabriquer un adaptateur:
Les adaptateurs que je fabrique maintenant (et vends dans mon magasin)
sont basés sur mon circuit Multiuse PCB2 qui possède un endroit
spécialement prévu pour l'installation du transistor sur la face inférieure.
Attention, ne vous fiez pas aux couleurs des fils dans les photos. Les couleurs changent selon le fournisseur et parfois
même selon le lot. Vous devez absolument déterminer le code de couleur utilisé par vos câbles avec un testeur de continuité.
Suivre aveuglément les couleurs ici peut possiblement causer des dommages à la console, à la manette SNES et au circuit de l'adaptateur.
Photos 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.
Références
Le document Playstation.txt que j'ai téléchargé il y a longtemps constitue la principale
source d'information ayant rendu ce projet possible.
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.