Raspicade - SourceForge

Transcription

Raspicade - SourceForge
Raspicade : Distribution Arcade
pour Raspiberry Pi
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
Version 0.1
Table des matières
1 Spécifications/prérequis.....................................................................................................................4
2 Spécificités du module Xin-Mo sous linux.......................................................................................6
3 Création et configuration de la carte SD...........................................................................................7
3.1 Sous Linux.................................................................................................................................7
3.2 Sous Windows............................................................................................................................7
3.3 Redimensionner la carte SD......................................................................................................7
3.4 Un peu plus loin avec moebius.config.......................................................................................8
4 Premier Démarrage............................................................................................................................8
4.1 Configuration réseau..................................................................................................................8
4.2 Configuration de la sortie son..................................................................................................10
4.3 Extinction de Raspicade...........................................................................................................10
5 Utiliser/Configurer Raspicade.........................................................................................................10
5.1 Connexion en SSH...................................................................................................................10
6 Téléverser les roms..........................................................................................................................11
6.1 Téléversement de roms via ftp.................................................................................................11
6.2 Téléversement de roms via Samba (Utilisateurs Windows)....................................................12
7 Éviter la demande de configuration au démarrage..........................................................................13
Manuel Utilisateur
8 Utilisation de gamepads et hack gamepad.......................................................................................14
8.1 Contrôle de Pimenu.................................................................................................................14
8.2 Contrôle de Mame4all-pi.........................................................................................................14
8.3 Contrôle de piFBA...................................................................................................................15
8.4 Contrôle de GnGeo..................................................................................................................15
8.5 Contrôle de piSnes...................................................................................................................16
8.6 Cas d'autres gamepads.............................................................................................................16
Ian57 – Avril 2014 – Version 0.1
Ian57 - https://sourceforge.net/projects/raspicade/
2/28
Raspicade : Manuel Utilisateur
version 0.1
9 Câblage de votre module Xin-Mo...................................................................................................17
10 Utilisation de Raspicade avec le module Xin-Mo 2 joueurs.........................................................19
Raspicade : Manuel Utilisateur
version 0.1
1 Spécifications/prérequis
Matériel nécessaire à la mise en place de Raspicade.
10.1 Dans pimenu..........................................................................................................................19
•
Un Raspberry pi Modèle B 512Mo et son alimentation ;
10.2 Dans Mame............................................................................................................................19
•
Une carte SD de 8Go pour la distribution Raspicade
10.3 Dans un jeu Mame.................................................................................................................19
•
Initialement Raspicade a été conçue pour fonctionner avec des gamepads 6
boutons et sans clavier. Lors du développement des gamepads Sidewinder
d'occasion ont été utilisés (cf. figure 1). Ils sont peu chers, mais ne possèdent ni
boutons « Start » ni « Select ». Il faudra donc émuler les actions « Start P1 »,
« Start P2 » et « Credits ».
•
Vous pouvez aussi utiliser des « hacks » manette usb (cf. figure 2 et
http://www.morere.eu/spip.php?article174 ) ;
•
On pourra aussi utiliser le port GPIO du Raspberry pour récupérer les états des
boutons
et
joysticks
d'un
panel
arcade
(cf.
figure
3
et
https://github.com/ian57/Retrogame-2players);
•
La distribution est aussi prévue (moyennant quelques manipulations en ligne de
commande) pour un module Arcade très utilisé : le Xin-Mo 2 joueurs
(http://www.xin-mo.com/?page_id=34). Celui utilisé pour le développement de la
distribution
provient
du
webmarchand
bien
connu
SmallCab
http://www.smallcab.net/encodeur-joystick-boutons-arcade-usb-joueur-cosses28mm-p-273.html ;
•
un câble HDMI pour connecter sur la télévision, ou un convertisseur HDMI ↔ VGA
pour connecter un écran de PC (Plat ou cathodique).
10.4 Dans piFBA...........................................................................................................................19
10.5 Dans un jeu piFBA................................................................................................................20
10.6 Dans GnGeo...........................................................................................................................20
10.7 Dans un jeu GnGeo................................................................................................................20
10.8 Dans pisnes............................................................................................................................20
10.9 Dans un jeu pisnes.................................................................................................................20
11 Configuration du WIFI..................................................................................................................20
12 A propos des Roms........................................................................................................................24
13 Configuration avancée...................................................................................................................24
13.1 Problèmes avec le son en HDMI...........................................................................................24
13.2 Les modes vidéos...................................................................................................................25
13.3 Arcade Ready avec le GPIO..................................................................................................26
13.4 Que faire si mes contrôles ne semblent pas fonctionner........................................................26
Pour le premier démarrage vous aurez besoin d'un clavier USB afin de pouvoir répondre
aux questions de configuration.
Figure 1: Gamepads Sidewinder utilisés pour le
développement
Ian57 - https://sourceforge.net/projects/raspicade/
3/28
Ian57 - https://sourceforge.net/projects/raspicade/
4/28
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
version 0.1
La distribution possède un serveur SSH pour la connexion à distance, un serveur ftp pour
le téléversement des roms, un serveur samba pour téléverser les roms depuis Windows.
Figure 2: Hack manette usb pour panel arcade
Figure 4: Hack GPIO Raspberry Pi pour panel Arcade
2 Spécificités du module Xin-Mo sous linux
Ce module 2 joueurs possède un comportement particulier sous linux : il vu comme un
seul joystick comportant 4 axes et 22 boutons alors que sous windows il est vu comme 2
joysticks différents. Du fait, la plupart des émulateurs ne verront pas les commandes du
seconds joueurs attendant un réel second joystick.
De plus le module noyau
linux gérant ce matériel est buggé :
http://ithink.ch/blog/2013/09/08/patching_the_linux_kernel_to_install_the_xinmo_dual_arcade_driver_on_a_raspberry_pi.html. Raspicade utilise donc un noyau patché
pour corriger cela.
Raspicade utilise aussi des versions patchées des émulateurs :
Figure 3: Pisnes avec des gamepads sidewinder
Par défaut Raspicade est configurée pour afficher une résolution de 1024x768 en 60Hz.
Si vous désirez afficher une autre résolution, il faudra modifier le fichier « config.txt » qui
se trouve sur la partition FAT sur la carte SD (ou dans la partition /boot si le système
fonctionne).
Ian57 - https://sourceforge.net/projects/raspicade/
5/28
•
Mame 0.37b5 a été patché pour supporter les 22 boutons du module (par défaut le
nombre est limité à 16) ;
•
piFBA est patché pour la prise en comptes des 2 joysticks (cf. :
https://github.com/petrockblog/RetroPie-Setup/wiki/Troubles-with-the-Xin-MoController ) ;
•
pisnes est patché
pour supporter les spécificités du
http://pimame.org/forum/discussion/comment/2367#Comment_2367.
modules :
La distribution est donc livrée avec 2 séries d'exécutables : une série pour les gamepads
Ian57 - https://sourceforge.net/projects/raspicade/
6/28
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
et les modules arcade 1 joueur et la seconde spécifique pour le module 2 joueurs Xin-Mo.
suivante :
En standard, la première série d'exécutables est activée et configurée . Pour vous
permettre d'utiliser Raspicade avec le module 2 joueurs Xin-Mo vous devrez copier les
exécutables et les fichiers de configuration de la version « Xin-Mo » à la place des fichiers
« standards ». Par exemple pour utiliser la version de pisnes pour le module Xin-Mo il
suffit de faire :
sudo moebius.config
cp snesx­xinmo­2players snesx; cp snesx.cfg­xinmo­2players snesx.cfg
Faites la même chose pour les autres émulateurs. Attention le fichier de configuration de
GnGeo se trouve dans le répertoire caché . gngeo à la racine de l'utilisateur pi, et celui de
mame4all-pi dans le répertoire cfg de mame4all-pi.
3 Création et configuration de la carte SD
3.1 Sous Linux
Télécharger l'image de la carte SD de la distribution Raspicade à l'adresse
https://sourceforge.net/projects/raspicade/ . Décompressez là à l'aide de gunzip et créez la
carte SD à l'aide des commandes suivantes :
$ gunzip Raspicade­samba­xinmo­20140416.img.gz
et choisir l'item « resizing ». Le programme doit être lancer en tant que l'utilisateur
« root ».
3.4 Un peu plus loin avec moebius.config
Raspicade
est
basée
sur
la
distribution
Moebius
Linux
http://moebiuslinux.sourceforge.net/ qui est plus légère qu'une raspbian (pas de Xorg, pas
d'applications superflues).
Vous pouvez utiliser le programme
moebius.config
pour :
•
Redimensionner la partition de la carte SD ;
•
Changer le mot de passe root
•
Changer la langue d'utilisation
•
Overclocker le système
•
Configurer la mémoire (GPU et CPU)
Ce programme doit être lancer en tant que root :
$ sudo moebius.config
$ sudo dd bs=1M if=Raspicade­samba­xinmo­20140416.img of=/dev/sdx
Remplacez le « x » par la lettre correspondant au périphérique de votre carte SD. Pour
cela vous pouvez utiliser la commande df afin de vérifier la lettre.Vous aurez besoin d'une
carte SD de 8Go pour créer le système.
Attention la commande df est dangeureuse, et il est impératif de bien identifier le
périphérique sur lequel vous allez écrire.
Insérez votre carte SD dans le Raspberry Pi et démarrez le.
3.2 Sous Windows
Il
est
possible
d'utiliser
le
programme
Win32disk
Imager
(https://sourceforge.net/projects/win32diskimager/) pour générer la carte SD. Vous
trouverez
un
tutoriel
français
à
l'adresse
suivante
:
http://www.tropfacile.net/doku.php/raspberry-pi/preparer-carte-sd et un en langue anglaise
ici : http://www.askvg.com/win32-disk-imager-write-any-bootable-image-to-usb-drive-inwindows/
3.3 Redimensionner la carte SD
Raspicade utilise les réglages d'overclocking suivants :
arm_freq=900
gpu_freq=350
core_freq=450
sdram_freq=450
Il est bien sur possible de modifier ces paramètres d'overclocking par l'intermédiaire du
fichier /boot/config et l'adresse http://elinux.org/RPiconfig#Overclocking.
Raspicade contient un petit script permettant de contrôler la température des cœurs CPU
et GPU. Il se nomme getTemp.sh et trouve à la racine de l'utilisateur pi. Vous pouvez
l'utiliser via une connexion SSH :
pi@raspberrypi ~ $ ./getTemp.sh CPU temp=44.9'C
GPU temp=44.4'C
pi@raspberrypi ~ $
4 Premier Démarrage
4.1 Configuration réseau
Si votre carte fait plus de 8Go, vous désirerez la redimensionner pour profiter de tout
l'espace disponible. Vous pouvez utiliser le programme moebius.config pour étendre la
partition principale de votre carte SD.
Via une connexion SSH (cf. ci-après pour la méthode) vous pourrez lancer la commande
Ian57 - https://sourceforge.net/projects/raspicade/
version 0.1
7/28
A la première mise sous tension est lancé le script de configuration IP statique en filaire
(eth0, attention le wifi est pas supporté, mais pas en configuration automatique) :
•
Il peut être intéressant de fixer l'adresse filaire de Raspicade lors de son premier
Ian57 - https://sourceforge.net/projects/raspicade/
8/28
Raspicade : Manuel Utilisateur
version 0.1
démarrage. Cela évite de chercher l'adresse IP délivrée par le serveur DHCP de la
box pour s'y connecter en SSH.
le script fonctionne comme suit :
•
Lors du premier démarrage, on teste si le fichier
configuration DHCP (ce qui est le cas par défaut) ;
•
On demande à l'utilisateur s'il veut configurer une adresse IP fixe (y/n) ;
•
s'il répond “y”, on demande à l'utilisateur de saisir adresse IP, masque de réseau et
passerelle. Ex : ip addr : 192.168.1.50, netmask 255.255.255.0 gateway :192.168.1.1.
/etc/network/interfaces
utilise la
Raspicade : Manuel Utilisateur
version 0.1
4.2 Configuration de la sortie son
Par défaut Raspicade est configurée pour émettre le son sur la prise Jack 3,5''. Si vous
désirez rediriger le son via la connectique HDMI, il faudra renseigner la valeur 2 au
démarrage. Pour avoir le son sur la sortie 3,5'' il faut renseigner 1.
Do you want to configure audio output of Raspicade (y/n): y
Select your audio output (0 = auto, 1 = jack3,5, 2 = hdmi) : 2
Attention, la clavier est en qwerty… utilisez le pavé num! Attention bis, la touche
backspace ne fonctionne pas.
De manière identique à la configuration du réseau, il est possible d'éviter le configuration
au démarrage par la création ou renommage d'un fichier dans le répertoire avoid_config
(Voir le paragraphe 7 pour plus d'informations).
•
Le plus simple si ça se passe mal, c'est de faire
configuration et redémarrer!
•
Sinon le fichier /etc/network/interfaces est modifié avec les nouvelles valeurs ;
4.3 Extinction de Raspicade
•
et l'adresse IP sera fixée et active dès ce premier démarrage. Au prochain
redémarrage, le script se contentera d'afficher la configuration réseau statique,
avant d'afficher la vidéo d'attente ;
Avec le clavier USB branché, il suffit d'appuyer sur la touche « ESC » pour lancer l'arrêt
de Raspicade. Vous verrez apparaître brièvement le logo de Raspicade ;-).
•
S'il répond “n”, on poursuit le démarrage, mais lors du prochaine démarrage la
question sera à nouveau posée. Pour éviter le demande de configuration à chaque
démarrage, il suffit de créer le fichier vide ” /home/pi/avoid/no_netconf_at_boot” (par la
commande touch par exemple “touch no_netconf_at_boot”, on peut aussi renommer
le fichier déjà présent en supprimant l’extension). Dans le script, un test sur
l’existence de ce fichier permet d'éviter la configuration.
•
CTRL-C
pour annuler la
Cette configuration est gérée par le script piaudioconf.sh qui se trouve à la racine du
compte de l'unique utilisateur pi. Il est possible de lancer ce script depuis une connexion
SSH.
Pour revenir à une adresse IP en DHCP, il faudra éditer en tant que root le fichier
/etc/network/interfaces et remplacer
5 Utiliser/Configurer Raspicade
Des programmes/serveurs utiles ont été installés par défaut sur Raspicade :
•
un serveur SSH pour prendre le contrôle de votre système via le réseau filaire;
•
un serveur FTP pour le téléversement facile des roms;
•
le réseau utilise par défaut la configuration automatique d'adresse IP (DHCP). Si
vous branchez votre Raspberry Pi sur le réseau de votre box, il sera
automatiquement configuré et pourra être connecté à distance (il suffira d'en
trouver l'adresse IP par l'intermédiaire des utilitaires contenus dans votre box par
exemple);
•
un serveur Samba pour le téléversement facile des roms depuis Windows.
iface eth0 inet static
address 192.168.1.50
netmask 255.255.255.0
gateway 192.168.1.1
par
iface eth0 inet dhcp
Cette configuration est gérée par le script pinetconf.sh qui se trouve à la racine du compte
de l'unique utilisateur pi. Il est possible de lancer ce script depuis une connexion SSH.
Do you want to fix the ip address of your pi (y/n): y
Give the IP address : 192.168.1.10
5.1 Connexion en SSH
Raspicade utilise le login automatique pour l'utilisateur « pi ». Dans le cas d'une
connexion SSH, c'est différent. le login est « pi » et le mot de passe « pi »..
Give the netmask : 255.255.255.0
Give the gateway : 192.168.1.1
L'édition des fichiers de configuration peut être réalisée à l'aide des éditeurs de
texte en mode console nano et vim. Nano est recommandé pour les utilisateurs les
plus novices.
Ian57 - https://sourceforge.net/projects/raspicade/
Pour toutes les connexions à distance, il faudra bien sur connecter votre Raspberry Pi au
réseau filaire de votre domicile.
9/28
Depuis une machine Linux vous pouvez vous connecter à Raspicade par une commande
du type :
$ ssh [email protected]
[email protected]'s password: pi
Ian57 - https://sourceforge.net/projects/raspicade/
10/28
Raspicade : Manuel Utilisateur
version 0.1
pi@raspberrypi ~ $
Pour les utilisateurs Windows, il faudra utiliser le programme Putty (http://www.putty.org/).
6 Téléverser les roms
Si vous utilisez Windows comme système d'exploitation, il est possible de transférer des
fichiers vers Raspicade (et aussi renommer des fichiers pour la configuration) depuis
l'explorateur Windows.
Pour accéder aux répertoires partagés de Raspicade, il suffit de parcourir le réseau et de
sélectionner « Raspicade ». Vous pouvez aussi saisir \\raspicade dans la barre d'adresse
(ou smb://raspicade depuis une machine linux ;-)).
Chaque émulateur possède son répertoire de téléversement :
les roms de Mame4All-pi sont à déposer dans le répertoire
version 0.1
6.2 Téléversement de roms via Samba (Utilisateurs Windows)
Welcome in your RaspberryPI (Moebius Release)
•
Raspicade : Manuel Utilisateur
/home/pi/mame4all-
pi/roms
•
celles de piFBA dans /home/pi/pifba/roms
•
celles de piSnes dans
/home/pi/pisnes/roms/
•
celles de GnGeo dans
/home/pi/gngeo-pi/roms
6.1 Téléversement de roms via ftp
De la même manière, on peut utiliser une client ftp pour le téléversement des roms dans
les répertoires des émulateurs :
$ ncftp ­u pi 192.168.1.61
NcFTP 3.2.5 (Feb 02, 2011) by Mike Gleason (http://www.NcFTP.com/contact/).
Connecting to 192.168.1.61... (vsFTPd 2.3.5)
Logging in... Password requested by 192.168.1.61 for user "pi".
Un simple « Glisser/Déposer » permet de téléverser des fichiers dans les répertoires
partagés. Il vous sera aussi possible de renommer les fichiers du répertoire
« avoid_config » pour supprimer les demandes de configuration du démarrage (cf.
Paragraphe 7).
Please specify the password.
Password: **
Login successful.
Logged in to 192.168.1.61. ncftp /home/pi > ls
getTemp.sh pcsx_rearmed/ pisnes.zip
isos/ pimenu/ pistore.desktop@
mame4all­pi/ pimenu.zip Retrogame­2players/
mame4all_pi.zip pisnes/ temp/
ncftp /home/pi >
Dans le cas d'un système Windows, faites de même avec le programme Filezilla
(https://filezilla-project.org/) par exemple.
Ian57 - https://sourceforge.net/projects/raspicade/
11/28
Ian57 - https://sourceforge.net/projects/raspicade/
12/28
Raspicade : Manuel Utilisateur
version 0.1
Lors des démarrages, Raspicade réalise une demande systématique de configuration du
réseau et de la sortie son. Pour éviter cela, il suffit de créer (ou renommer) les fichiers
vides no_netconf_at_boot et no_audioconf_at_boot dans le répertoire avoid_config à la racine
du compte de l'utilisateur pi, ou via samba depuis Windows.
2 fichiers sont déjà présents dans le répertoire. Il suffit de les renommer en enlevant leur
extensions :
no_audioconf_at_boot.remove_extention_to_deactivate_question
•
no_netconf_at_boot.remove_extention_to_deactivate_question
8 Utilisation de gamepads et hack gamepad
8.1 Contrôle de Pimenu
•
Utiliser les directions gauche-droite pour sélectionner l'émulateur ;
•
Appuyer sur le bouton 1 ou 5 pour le lancer ;
•
Appuyer sur le bouton 6 pour quitter pimenu et stopper proprement Raspicade ;
8.2 Contrôle de Mame4all-pi
Via SSH on utilisera les commandes suivantes :
Dans Mame
$ cd avoid_config
$ mv no_audioconf_at_boot.remove_extention_to_deactivate_question no_audioconf_at_boot
$ mv no_netconf_at_boot.remove_extention_to_deactivate_question no_netconf_at_boot
Maintenant il n'y aura plus de question au prochain redémarrage et vous pouvez
dorénavant débrancher le clavier USB. Raspicade est complètement pilotable grâce aux
gamespads (et panel arcade).
Raspicade démarre directement sur le petit programme pimenu qui vous propose les
émulateurs disponibles.
Ian57 - https://sourceforge.net/projects/raspicade/
version 0.1
Figure 5: Pimenu et la liste des émulateurs présents
7 Éviter la demande de configuration au démarrage
•
Raspicade : Manuel Utilisateur
13/28
•
Utiliser les directions pour sélectionner le jeu ;
•
Appuyer sur le bouton 1 pour lancer le jeu ;
•
Appuyer sur le bouton 6 pour sélectionner ;
•
Appuyer simultanément sur les boutons 5 et 6 pour quitter Mame vers pimenu ;
Dans un jeu Mame
•
Contrôles standards direction + 6 boutons ;
•
Appuyer simultanément sur les boutons 5, 2 et 4 pour quitter le jeu vers le frontal
Mame ;
•
Appuyer simultanément sur les boutons 5 et 1 du Player1 pour ajouter des crédits ;
•
Appuyer sur le bouton 5 du Player 1 pour jouer avec le Player 1 (start Player 1) ;
•
Appuyer sur le bouton 5 du Player 2 pour jouer avec le Player 2 (start Player 2) ;
Ian57 - https://sourceforge.net/projects/raspicade/
14/28
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
8.3 Contrôle de piFBA
8.5 Contrôle de piSnes
Dans fbacapex (frontal graphique de piFBA)
Dans piSnes
•
Utiliser les directions pour sélectionner le jeu ;
•
Contrôles standards direction + 4 boutons
•
Appuyer sur le bouton 1 pour lancer le jeu ;
•
Bouton 1 = Start, Bouton 2 = Select
•
Appuyer sur le bouton 6 pour afficher le menu de configuration (PFS, Game List) ;
•
Bouton 5 +Bouton 6 = quitte piSnes vers pimenu.
•
Appuyer simultanément sur les boutons 5 et 6 pour quitter fbacapex (piFBA
frontend) vers pimenu ;
Dans un jeu piFBA
•
Contrôles standards direction + 6 boutons ;
•
Appuyer simultanément sur les boutons 5 et 6 pour quitter le jeu vers fbacapex ;
•
Appuyer sur le bouton 6 du Player 1 pour ajouter des crédits ;
•
Appuyer sur le bouton 5 du Player 1 pour jouer avec le Player 1 (start Player 1) ;
•
Appuyer sur le bouton 5 du Player 2 pour jouer avec le Player 2 (start Player 2) ;
8.4 Contrôle de GnGeo
Avec l'utilisation de gamepads à 6 boutons, il est nécessaire d'en utiliser 2 pour pouvoir
faire fonctionner les jeux avec gngeo. Il n'est pas possible de configurer les appuis
simultanés de boutons dans cet émulateur. Le bouton 6 du gamepads 2 est alors dédié à
l'ajout de crédits. Dans le cas d'un seul gamepad, il vous faudra connecter un clavier pour
pouvoir ajouter des crédits.
version 0.1
Dans un jeu piSnes
•
Contrôles standards direction + 4 boutons
•
Bouton 1 = Start, Bouton 2 = Select
•
Bouton 5 +Bouton 6 ou Bouton 1 + Bouton 2 = quitte le jeu vers piSnes
8.6 Cas d'autres gamepads
Si vous possédez des gamepads différents avec des boutons supplémentaires, il vous
faudra alors éditer les fichiers de configuration de chaque émulateurs (et l'interface
graphique de configuration avec Mame) pour permettre la prise en compte de votre
matériel. Rendez vous sur les pages web respectives de chaque émulateurs pour
comprendre comment il se configure. La section 13.4 de ce manuel peut alors vous être
utile.
Dans l'interface de GnGeo
•
Utiliser les directions pour naviguer dans les menus et sélectionner le jeu (le
caractère '>' doit être en face du jeu que vous voulez choisir) ;
•
Appuyer sur le bouton 3 pour lancer le jeu ;
•
Appuyer sur le bouton 1 pour quitter l'interface GnGeo vers pimenu ;
Dans un jeu GnGeo
•
Contrôles standards direction + 6 boutons ;
•
Appuyer sur le bouton 5 du Player 1 pour jouer avec le Player 1 (start Player 1) ;
•
Appuyer sur le bouton 5 du Player 2 pour jouer avec le Player 2 (start Player 2) ;
•
Appuyer sur le bouton 6 du player 1 pour quitter le jeu et afficher le menu de
GnGeo.
•
Appuyer sur le bouton 6 du Player 2 pour ajouter des crédits ;
Ian57 - https://sourceforge.net/projects/raspicade/
15/28
Ian57 - https://sourceforge.net/projects/raspicade/
16/28
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
version 0.1
Schéma de câblage :
9 Câblage de votre module Xin-Mo
Tableau de câblage du module correspondant à la configuration des émulateurs dans
Raspicade :
Player 1 (P0)
Pin
Player 2 (P1)
1
Bouton 1
1
Joystick Droite
2
Bouton 2
2
Joystick Gauche
3
Bouton 3
3
Joystick Bas
4
Bouton 4
4
Joystick Haut
5
Bouton 5
5
6
Bouton 6
6
7
Start Player 1
7
8
Coins
8
9
Masse commune Player 1
9
10
11
Bas
B1
B2
B3
Droite
Joystick P1
Bouton 1
11
Bouton 2
12
Joystick Droite
12
Bouton 3
13
Joystick Gauche
13
Bouton 4
14
Joystick Bas
14
Bouton 5
15
Joystick Haut
15
Bouton 6
16
16
Start Player 2
17
17
18
18
USB
Joystick P2
Bas
B5
B6
Start P1
Haut
10
B4
Gauche
Coins
1
9
10
18
1
9
10
18
P0
Xin-Mo
Pin
P1
Gauche
Start P2
Masse commune Player 2
Droite
Haut
B1
Ian57 - https://sourceforge.net/projects/raspicade/
17/28
B2
Ian57 - https://sourceforge.net/projects/raspicade/
B3
B4
B5
B6
18/28
Raspicade : Manuel Utilisateur
version 0.1
Résultat :
Raspicade : Manuel Utilisateur
version 0.1
10.5 Dans un jeu piFBA
•
Contrôles standards direction + 6 boutons ;
•
Start Player 1 + Crédit = quitte le jeu vers piFBA.
10.6 Dans GnGeo
•
Joystick Joueur 1= navigation dans le menu ;
•
Bouton 1 Joueur 1= quitte GnGeo ;
•
Bouton 2 Joueur 1= sélectionne l'item.
10.7 Dans un jeu GnGeo
10 Utilisation de Raspicade avec le module Xin-Mo 2
joueurs
•
Joystick Joueur 1 = sélection de l'émulateur. Celui qui est au centre de l'écran est
celui que l'on va lancer ;
•
Bouton 1 Joueur 1 = lance l'émulateur ;
•
Bouton Crédit = quitte pimenu et stop proprement Raspicade.
•
Bouton 1 Joueur 1 = lance le jeu ;
•
Start Player 1 + Crédit = quitte le Mame vers pimenu.
Contrôles standards direction + 6 boutons ;
•
Start Player 1 + Crédit = quitte le jeu vers Mame;
Bouton 6 Joueur 1 = affiche le menu (permet de quitter de revenir à pimenu).
•
Joystick Joueur 1= sélection du jeu ;
•
Bouton 1 Joueur 1= lance le jeu ;
•
Coin = quitte pisnes vers pimenu.
•
Contrôles standards direction + 4 boutons ;
•
Player 1 = Bouton Select du pad 1 snes ;
•
Player 2 = Bouton Select du pad 2 snes ;
•
Bouton 1 + Player 1 = permet de quitter le jeu proprement ;
•
Bouton 2 + Player 2 = permet de quitter le jeu proprement.
11 Configuration du WIFI
10.3 Dans un jeu Mame
•
•
10.9 Dans un jeu pisnes
10.2 Dans Mame
Joystick Joueur 1 = sélection du jeu ;
Contrôles standards direction + 4 boutons ;
10.8 Dans pisnes
10.1 Dans pimenu
•
•
On prendra l'exemple d'un réseau WIFI derrière une box Orange utilisant WPA/WPA2
(TKIP/AES). Les autres box possèdent des configurations similaires et vous ne devriez
pas avoir de problème.
Nous utilisarons la page
méthode de configuration.
10.4 Dans piFBA
http://doc.ubuntu-fr.org/wpa#par_wpa_supplicant pour la
•
Joystick Joueur 1= sélection du jeu ;
On commence par configurer le fichier
•
Bouton 1 Joueur 1= lance le jeu ;
auto lo
•
Start Player 1 + Crédit = quitte le Mame vers pimenu.
iface lo inet loopback
Ian57 - https://sourceforge.net/projects/raspicade/
19/28
/etc/network/interfaces
Ian57 - https://sourceforge.net/projects/raspicade/
comme suit
20/28
Raspicade : Manuel Utilisateur
version 0.1
iface eth0 inet dhcp
version 0.1
ioctl[SIOCSIWENCODEEXT]: Invalid argument
ioctl[SIOCSIWENCODEEXT]: Invalid argument
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Internet Systems Consortium DHCP Client 4.2.2
Copyright 2004­2011 Internet Systems Consortium.
All rights reserved.
iface default inet dhcp
For info, please visit https://www.isc.org/software/dhcp/
Dans le cas de la configuration d'une adresse IP statique on aura par exemple :
#to fix ip adress
allow-hotplug wlan0
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet static
address 192.168.1.63
netmask 255.255.255.0
network 192.168.1.0
gateway 192.168.1.1
ensuite on configure le fichier
Raspicade : Manuel Utilisateur
Listening on LPF/wlan0/80:3f:5d:16:cf:49
Sending on LPF/wlan0/80:3f:5d:16:cf:49
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 7
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 12
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
/etc/wpa_supplicant/wpa_supplicant.conf
DHCPOFFER from 192.168.1.1
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
ap_scan=1
update_config=1
network={
ssid="VotreSSID"
proto=WPA RSN
scan_ssid=1
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
#psk=<la clé générée par wpa_passphrase>
psk="<votre clé de sécurité, ne pas oublier les "" qui entourent la clé>"
}
DHCPACK from 192.168.1.1
Reloading /etc/samba/smb.conf: smbd only.
bound to 192.168.1.63 ­­ renewal in 33734 seconds.
pi@Raspicade ~ $ Pour d'autres exemples de mode de sécurité reportez vous à l'adresse http://doc.ubuntufr.org/wpa#par_wpa_supplicant
contient la clé de sécurité de votre connexion, soit on met la clé originale (de 8 à 63
caractères alphanumérique saisis sur l'interface de configuration de la box) entre des ””,
soit on peut mettre la clé générée par le programme wpa_passphrase sans ”” :
psk
Ces fichiers sont déjà présents dans Raspicade et vous n'aurez qu'à remplacer le SSID et
la clé de sécurité par les vôtres.
root@Raspicade:/etc/wpa_supplicant# wpa_passphrase VotreSSID
# reading passphrase from stdin
VotreCleDeSécurité
network={
ssid="VotreSSID"
#psk="VotreCleDeSécurité"
psk=clegenereeparleprogrammewpa_passphrase
}
root@Raspicade:/etc/wpa_supplicant#
On peut alors faire un test de connexion à la box :
pi@Raspicade ~ $ sudo ifup wlan0
ioctl[SIOCSIWAP]: Operation not permitted
Ian57 - https://sourceforge.net/projects/raspicade/
21/28
Ian57 - https://sourceforge.net/projects/raspicade/
22/28
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
version 0.1
erreurs générées en cas de problème :
root@Raspicade:/home/pi#
wpa_supplicant
/etc/wpa_supplicant/wpa_supplicant.conf ­B
­i
wlan0
­c
12 A propos des Roms
Seules les roms libres libres de droits (http://www.mamedev.org/roms/) sont disponibles
dans Raspicade.
Il vous appartient de récupérer, téléverser et tester sur Raspicade les roms de jeux que
vous désirez utiliser.
Ils existent de nombreux problèmes de compatibilité entre les bios, les roms et les
émulateurs. Cependant voici quelques informations qui vous éviteront de perdre du temps
lors de vos recherches :
Après un redémarrage, on se connecte avec l'adresse IP 192.168.1.63 via ssh :
yann@yann­biboo:~$ ssh [email protected]
[email protected]'s password: Welcome in your RaspberryPI (Moebius Release)
•
Pour l'émulateur pisnes, il sera nécessaire de procéder empiriquement :
téléchargement et tests ;
•
Pour l'émulateur piFBA, la liste des jeux supportés est données à l'adresse
https://code.google.com/p/pifba/source/browse/FBAcapex_src/gamelist.txt
•
Pour l'émulateur gngeo, il est compatible avec le jeu de roms de mame 0.138. Si
vous avez un autre jeu de roms, vous pouvez utiliser le programme clrmamepro
pour
créer
la
bonne
version
de
la
rom.
(source
https://github.com/ymartel06/GnGeo-Pi/wiki/Roms). N'oubliez pas les bios
https://github.com/ymartel06/GnGeo-Pi/wiki/Bios-neogeo.zip.
13.1 Problèmes avec le son en HDMI
pi@Raspicade ~ $
En cas de problème de connexion, vérifiez bien la syntaxe de votre fichier
wpa_supplicant.conf. Ensuite réalisez les commandes suivantes qui permettent de
réinitialiser la connexion wifi pour la tester à nouveau :
root@Raspicade:/home/pi# ifdown wlan0
root@Raspicade:/home/pi# killall ­q wpa_supplicant
root@Raspicade:/home/pi# rm /var/run/wpa_supplicant/wlan0
root@Raspicade:/home/pi# rm ­rf /var/run/wpa_supplicant/
Ensuite tentez de relancer la configuration de la connexion wifi :
Vous avez branché Raspicade sur votre télévision en HDMI, configuré le son en
sélectionnant la sortie sur HDMI, mais malheureusement vous n'entendez rien. Cela peut
arriver.
La
page
suivante
http://elinux.org/RPi_Troubleshooting#Sound_does_not_work_with_an_HDMI_monitor nous indique que la
cause peut provenir de la sélection du mode DVI à la place de HDMI même si le câble
HDMI est connecté. Il suffit alors d'éditer le fichier de configuration /boot/config.txt et
d'ajouter la ligne suivante :
hdmi_drive=2
Cela force le système à sélectionner le mode HDMI.
root@Raspicade:/home/pi# ifup wlan0
Ian57 - https://sourceforge.net/projects/raspicade/
Pour l'émulateur Mame4All-pi, le « set » de roms « gp2x_wiz 2.2 full romset
0.37b5 » semble fonctionner convenablement. Il est cependant très ancien. La liste
des
jeux
présents
est
disponible
à
l'adresse
https://sourceforge.net/p/raspicade/wiki/HowTo/attachment/gamelist.txt;
13 Configuration avancée
Vous pouvez aussi tester manuellement le programme
•
wpa_supplicant
pour voir les
23/28
Il est aussi possible que cela vienne de la configuration par défaut de Raspicade. Elle a
Ian57 - https://sourceforge.net/projects/raspicade/
24/28
Raspicade : Manuel Utilisateur
version 0.1
été configurée pour être utilisée avec un convertisseur HDMI ↔ VGA sur une résolution
de 1024x768. Si vous utiliser une télévision, il est fortement recommandé de modifier la
variable hdmi_group dans le fichier /boot/config.txt :
hdmi_group=2 #(pour ecran pc)
hdmi_group=1 #(pour tv)
Pour vous aider la commande
votre configuration courante :
tvservice
permet d'obtenir des informations concernant
pi@raspicade ~ $ tvservice ­s state 0x120016 [DVI DMT (16) RGB full 4:3], 1024x768 @ 60Hz, progressive
pi@raspicade ~ $ tvservice ­a
PCM supported: Max channels: 2, Max samplerate: 48kHz, Max samplesize 24 bits.
version 0.1
13.3 Arcade Ready avec le GPIO
Si vous ne désirez pas utiliser un module arcade pour récupérer les commandes issues
de votre panel, il est possible d'utiliser directement le GPIO du Raspberry Pi. La
distribution utilise le projet Retrogame-2players https://github.com/ian57/Retrogame2players. Il s'agit d'un utilitaire GPIO vers USB destinés aux émulateurs arcade : le
programme transforme un appui sur une bouton connecté au GPIO en une touche clavier
(par défaut la configuration des touches est celle de Mame). Ce dernier permet de
connecter 2 joysticks et 15 boutons soit 23 entrées du GPIO (2 joueurs avec 6 boutons,
start player1, start player2 et crédits). Ce projet est un clone amélioré du projet AdafruitRetrogame https://github.com/adafruit/Adafruit-Retrogame.
Les modifications permettent d'obtenir 25 entrées GPIO sur le Raspberry Pi pour les
boutons et « microswitchs » de joysticks. Les informations sont disponibles à l'adresse
https://github.com/ian57/Retrogame-2players/wiki.
pi@raspicade ~ $ 13.2 Les modes vidéos
Si vous désirez exécuter Raspicade dans une résolution spécifique (par exemple
640x480), il vous faudra aussi éditer le fichier /boot/config.txt et ajouter/modifier la variable
hdmi_mode :
hdmi_mode=4
Vous trouverez la liste complète des résolutions
http://elinux.org/RPiconfig#Video_mode_options.
supportées
à
l'adresse
Les modes CEA doivent être utilisés pour les Télévisions, alors que les modes DMT sont
réservés
aux
écrans
d'ordinateur
(cf.
http://raspberrypi.stackexchange.com/questions/7332/what-is-the-difference-between-ceaand-dmt)
Dans le cas de l'utilisation de moniteurs d'arcade ou de télévision, on utilisera les modes
CEA et on ajoutera la variable suivante au fichier /boot/config.txt :
hdmi_group=1
Dans le cas de l'utilisation d'écrans d'ordinateur, on utilise les modes DMT et on ajoute la
ligne suivante au fichier /boot/config.txt :
hdmi_group=2
Ensuite
on
choisit
le
bon
mode
dans
http://elinux.org/RPiconfig#Video_mode_options.
Raspicade : Manuel Utilisateur
Pour activer/désactiver le programme qui contrôle les entrées sur le GPIO, il suffit de
décommenter/commenter la ligne suivante dans le fichier /etc/rc.local :
#launch support pour GPIO at startup
#/home/pi/Retrogame-2players/retrogame &
13.4 Que faire si mes contrôles ne semblent pas fonctionner
Dans le cas de l'utilisation d'un module arcade, on commence par vérifier le câblage de la
tresse de masse et de chaque « microswitch ». Dans le cas de gamepads on se tourne
directement vers les outils logiciels.
Les paquets « evtest » et « joystick » sont installés sur Raspicade afin de pouvoir tester
les différents périphériques d'entrée pour les émulateurs. On pourra aussi les utiliser pour
déterminer les numéros des boutons et axes de joysticks pour la configuration des
entrées pour les émulateurs.
Evtest est un moniteur d’événements d'entrée. Il permet de détecter et d'afficher les
actions réalisées sur un périphérique d'entrée.
Voici une séquence de test sur un gamepad sidewinder :
pi@raspicade ~ $ evtest les
listes
de
l'adresse
No device specified, trying to scan all of /dev/input/event* Not running as root, no devices may be available. Pour un moniteur arcade en 640x480 on configure de la manière suivante :
Available devices: hdmi_group=1
hdmi_mode=2
/dev/input/event0:
2.4G Wireless Touchpad Keyboard /dev/input/event1:
2.4G Wireless Touchpad Keyboard /dev/input/event2:
Microsoft® Microsoft® SideWinder® Plug & Play Game Pad /dev/input/event3:
Microsoft® Microsoft® SideWinder® Plug & Play Game Pad /dev/input/event4:
CHICONY HP Basic USB Keyboard Pour un écran plat d'ordinateur en 1024x768 on configure de la manière suivante :
hdmi_group=2
hdmi_mode=16
Select the device event number [0­4]: 2 Ian57 - https://sourceforge.net/projects/raspicade/
25/28
Ian57 - https://sourceforge.net/projects/raspicade/
26/28
Raspicade : Manuel Utilisateur
version 0.1
Raspicade : Manuel Utilisateur
version 0.1
Input driver version is 1.0.1 Event: time 1398874730.302176, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Input device ID: bus 0x3 vendor 0x45e product 0x27 version 0x100 Event: time 1398874730.443208, type 3 (EV_ABS), code 1 (ABS_Y), value 63 Input device name: "Microsoft® Microsoft® SideWinder® Plug & Play Game Pad" Event: time 1398874730.443208, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Supported events: Event: time 1398874731.035280, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90001 Event type 0 (EV_SYN) Event: time 1398874731.035280, type 1 (EV_KEY), code 304 (BTN_A), value 1 Event type 1 (EV_KEY) Event: time 1398874731.035280, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event code 304 (BTN_A) Event: time 1398874731.235329, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90001 Event code 305 (BTN_B) Event: time 1398874731.235329, type 1 (EV_KEY), code 304 (BTN_A), value 0 Event code 306 (BTN_C) Event: time 1398874731.235329, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event code 307 (BTN_X) Après avoir sélectionné le périphérique d'entrée, on peut contrôler le bon fonctionnement
de chaque bouton/axe.
Event code 308 (BTN_Y) Event code 0 (ABS_X) Le programme jstest, présent dans le paquet « joystick » permet de tester les états des
différents boutons/axes des joysticks détectés. Ces périphériques sont nommés « jsx » et
se trouvent dans le répertoire /dev/input. « x » est le numéro du joystick.
Value 0 pi@raspicade ~ $ jstest /dev/input/js0 Min 0 Driver version is 2.1.0. Max 127 Joystick (Microsoft® Microsoft® SideWinder® Plug & Play Game Pad) has 2 axes (X, Y) Flat 7 and 6 buttons (BtnX, BtnY, BtnZ, BtnTL, BtnTR, BtnTL2). Event code 1 (ABS_Y) Testing ... (interrupt to exit) Value 0 Axes: 0: 32767 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off Min 0 La commande précédente permet de connaître toutes les entrées accessibles sur un
matériel particulier (ici le premier joystick détecté) et de le tester en temps réel : l'appui sur
un bouton ou un axe change l'état affiché dans la console.
Event code 309 (BTN_Z) Event type 3 (EV_ABS) Max 127 Flat 7 Event type 4 (EV_MSC) Event code 4 (MSC_SCAN) Properties: Testing ... (interrupt to exit) Event: time 1398874726.857710, type 3 (EV_ABS), code 0 (ABS_X), value 127 Event: time 1398874726.857710, type 3 (EV_ABS), code 1 (ABS_Y), value 63 Event: time 1398874726.857710, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event: time 1398874727.002477, type 3 (EV_ABS), code 0 (ABS_X), value 63 Event: time 1398874727.002477, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event: time 1398874728.527948, type 3 (EV_ABS), code 0 (ABS_X), value 0 Event: time 1398874728.527948, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event: time 1398874728.639956, type 3 (EV_ABS), code 0 (ABS_X), value 63 Event: time 1398874728.639956, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event: time 1398874729.710119, type 3 (EV_ABS), code 1 (ABS_Y), value 0 Event: time 1398874729.710119, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event: time 1398874729.838110, type 3 (EV_ABS), code 1 (ABS_Y), value 63 Event: time 1398874729.838110, ­­­­­­­­­­­­­­ SYN_REPORT ­­­­­­­­­­­­ Event: time 1398874730.302176, type 3 (EV_ABS), code 1 (ABS_Y), value 127 Ian57 - https://sourceforge.net/projects/raspicade/
27/28
Ian57 - https://sourceforge.net/projects/raspicade/
28/28

Documents pareils