Adaptateur manette VirtualBoy à USB

Introduction

Vous souhaitez jouer avec un émulateur de virtual boy sur votre PC et du coup vous priver du plaisir d'adopter une position inconfortable et d'avoir mal à la tête? Au moins n'allez pas jusqu'à vous interdire d'avoir entre les mains la manette authentique! (Je n'ai en fait jamais essayé le Virtual Boy. Ce n'est peut-être pas si pire...)

Pour vous aider, je présente sur cette page le schéma d'un montage permettant le branchement d'une manette Virtual Boy sur USB ainsi que le code source du logiciel embarqué.





Photos

Voici quelques photos démontrant différentes manières d'utiliser ce projet.


1. Fabrication d'un adaptateur

Si vous possédez une petite carte de connecteurs extraite d'une console, il est possible de l'utiliser pour fabriquer un adaptateur:




2. Conversion d'une manette (circuit à l'intérieur)

Si vous ne possédez pas de connecteurs, l'installation du circuit à l'intérieur d'une manette est également possible:




3. Conversion d'une manette (circuit à l'extérieur)

Le circuit peut également être installé «en ligne» avec le câble, à l'extérieur de la manette. Mais n'oubliez pas de le protéger!





« Mappings »

USBPar défautAlternatif
Axes 1 et 2 D-Pad gauche D-Pad gauche
Axes 3 et 4 D-Pad droit
Bouton 1 A A
Bouton 2 B B
Bouton 3 Start Start
Bouton 4 Select Select
Bouton 5 R R
Bouton 6 L L
Bouton 7 D-Pad-droit haut
Bouton 8 D-Pad-droit droite
Bouton 9 D-Pad-droit bas
Bouton 10 D-Pad-droit gauche
Utilisation:

1: Si le bouton START est maintenu enfoncé lors de la mise sous tension ou du branchement de l'adaptateur, le mapping alternatif sera activé.

2: Il est également possible de changer de mapping pendant l'utilisation en liant PC0 ou PB1 à GND via un cavalier ou un interrupteur.




Câblage et schéma

Voici le schéma et des photos des connecteurs dont les contacts sont numérotés:
Schéma

Schéma

«pinout» côté câble

«pinout» côté câble

«pinout» côté console

«pinout» côté console



Voici maintenant une table indiquant quel signal correspond à quel numéro de broche ou à quelle couleur dans le câble:
#NomCouleurCommentaires
1DataJaune
2+5vBleuSortie +5v de la console vers la manette.
3LatchBrun
4ClockOrange
5GNDNoir
6VbatRougeVoltage provenant des batteries.





Logiciel

Version v1.1
22 février 2014 (Samedi)
Version 1.1:
  • Le mapping alternatif peut maintenant être changé via PORTC0 or PORTB1.
  • Mises à jour pour compilation avec une version récente de GCC.
  • Mise à jour des identifiants VID/PID USB.
Fichier(s):
virtualboy_usb-1.1.tar.gz (91.7 KB)
virtualboy_usb-1.1.hex (7.3 KB)
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/virtualboy_usb
Utilisation des fichiers .hex
Les fichiers .hex sont pour programmer un Atmega8 ou Atmega8a. Les "fuses bytes" pour l'atmega8 sont: high_byte=0xc9 low_byte=0x9f.

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 license GPL v2. Consulter License.txt pour plus d'informations. Le projet se compile avec avr-gcc.




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.




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.