Ligne de commande
Contents
Motivation
GIMX peut s'exécuter depuis un terminal Linux sans nécessiter d'environnement graphique.
Cela améliore les performances, en particulier sur les petites matériels comme le raspberry pi ou les clients légers.
C'est aussi utile pour d'autres applications comme l'automatisation.
Linux + bluetooth
Ecrire l'adresse du dongle
Il est hautement recommandé d'utiliser un dongle CSR Bluecore4-rom. Voir la liste de compatibilité.
Connecter un Sixaxis précédemment appairé avec la PS3 cible.
Taper dans un terminal :
sixaddr
Résultat:
Current Bluetooth master: ps3_bt_address Current Bluetooth Device Address: sixaxis_bt_address
Afficher l'adresse actuelle :
bdaddr -i hciN
où N est l'index du dongle (taper "hciconfig -a" pour voir tous les dongles).
La noter pour pouvoir la restaurer plus tard.
Ecrire l'adresse du dongle :
bdaddr -r -i hciN sixaxis_bt_address
Vérifier le résultat :
bdaddr -i hciN
Lancer GIMX
Dans un terminal:
emu ps3_bt_address bt_device_index sixaxis_index
- ps3_bt_address
- Cet argument est obligatoire.
- bt_device_index
- L'index du périphérique bluetooth (ex : 0 pour hci0, 1 pour hci1, etc).
Cet argument est optionnel, l'index par défaut est 0.
- sixaxis_index
- L'index du sixaxis (ex : 0 pour le sixaxis 1, 1 pour le sixaxis 2, etc).
- Cet argument est optionnel, l'index par défaut est 0.
Dans un autre terminal:
emuclient --config file_name
- file_name
- Le nom du fichier de config, dans le répertoire ~/.emuclient/config directory (ex : toto.xml).
- Cet argument est obligatoire.
- Utiliser des backslashs pour échaper les espaces.
Linux ou Windows + DIY USB adapter ou GPP
Dans un terminal:
GIMX 1.10 ou plus récent :
emuclient --config file_name --port /dev/ttyUSBX ou emuclient -c file_name -p /dev/ttyUSBX
GIMX 0.51 ou antérieur :
emuclient --config file_name --serial --port /dev/ttyUSBX --joystick --precision 16 --refresh 4
GIMX plus récent que la 0.51 :
emuclient --config file_name --port /dev/ttyUSBX --type joystick --refresh 4
ou
emuclient -c file_name -p /dev/ttyUSBX -t joystick -r 4
options pour emuclient :
- --config file_name
- Le nom du fichier de config, dans le répertoire ~/.emuclient/config directory (ex : toto.xml).
- Cet argument est obligatoire.
- --port /dev/ttyUSB0
- Le port série. Ex: /dev/ttyUSB0 sous Linux, COM4 sous windows.
- Seulement obligatoire avec un adaptateur USB DIY.
- --type joystick/GPP/360pad/Sixaxis/PS2pad
- Le type d'adaptateur USB.
- joystick pour l'adaptateur USB DIY avec le firmware joystick
- Sixaxis pour l'adaptateur USB DIY avec le firmware sixaxis.
- Cette option n'est applicable que pour GIMX ultérieur à 0.51.
- Optionnel depuis GIMX 1.10.
- --refresh 4
- La période de rafraîchissement, en ms.
- Valeurs recommandées:
- joystick/GPP/360pad/Sixaxis: 4 (250Hz)
- PS2pad: 16 (62.5Hz)
- Optionnel depuis GIMX 1.10.
- --serial
- Seulement obligatoire avec un adaptateur USB DIY.
- Cette option n'est applicable que pour GIMX 0.51 ou antérieur.
- --joystick / --GPP / --360pad / --Sixaxis / --PS2pad
- Le type d'adaptateur USB.
- --joystick pour l'adaptateur USB avec le firmware joystick
- --Sixaxis pour le dongle bluetooth, ou pour l'adaptateur USB avec le firmware sixaxis
- Cette option n'est applicable que pour GIMX 0.51 ou antérieur.
- --precision 16
- La précision des axes. Joystick: 16, Autres adaptateurs: 8.
- Cette option n'est applicable que pour GIMX 0.51 ou antérieur.
Options générales pour emuclient
- --curses
- curses Affiche l'état du contrôleur avec ncurses.
- La calibration de la souris est disponible par cette interface.
- --status
- Affiche l'état du contrôleur dans un terminal.
- --nograb
- Ne pas capturer le pointeur de la souris.
- --force-updates
- Envoyer l'état des axes et boutons même en cas d'inactivité (pour une compatibilité avec les jeux comme DNF).
- --subpos
- Améliorer la précision des sticks (compense les arrondis).
- --keygen key
- Générer un événement au démarrage d'emuclient.
- La principale utilisation est l'automatisation de l'exécution de macros.
- Les événements non générés par des macros sont ignorés.
- GIMX antérieur à 1.10 : le seul moyen de quitter est d'ajouter KEYDOWN SHIFT et KEYDOWN ESCAPE à la fin de la macro, ou d'utiliser --nograb et de taper ctrl+c dans le terminal.
- Un autre cas d'utilisation est l'envoi d'une commande unique (requiert l'utilisation d'une macro car la touche n'est pas relâchée).
- --event "control(value)"
- Depuis GIMX 1.10 il est possible d'envoyer des contrôles à la console depuis la ligne de commande, sans avoir à créer de configuration et de macros à utiliser avec l'argument --keygen.
- Exemple:
emuclient -p /dev/ttyUSB0 --event "lstick x(127)" --event "rstick y(-128)" --event "circle(255)" --event "square(0)"
- Cette commande déplace le stick gauche à droite, le stick droit vers l'avant, appuie sur le bouton cercle à fond, et relâche le bouton carré.
- L'état des autres contrôles est réinitialisé, c'est-à-dire que tous les autres boutons et axes sont relâchés (dans la commande ci-dessus, --event "square(0)" est inutile).
- emuclient devrait terminer son exécution en environ 10ms.
- Noms et plages de valeurs:
- "lstick x", "lstick y", "rstick x", "rstick y": [-128,127]
- "acc x", "acc y", "acc z", "gyro": [-512,511]
- "select", "start", "PS", "l3", "r3": {0, 255} (seulement deux valeurs car ces boutons ne sont pas "analogiques")
- "up", "right", "down", "left", "triangle", "circle", "cross", "square", "l1", "r1", "l2", "r2": [0,255]