Difference between revisions of "Command line"
Line 86: | Line 86: | ||
:The name of the config file, in the ~/.emuclient/config directory (ex : toto.xml).<br /> | :The name of the config file, in the ~/.emuclient/config directory (ex : toto.xml).<br /> | ||
:This argument is mandatory. | :This argument is mandatory. | ||
− | |||
− | |||
− | |||
* --port /dev/ttyUSB0 | * --port /dev/ttyUSB0 | ||
:The serial port. Ex: /dev/ttyUSB0 in Linux, COM4 in windows.<br /> | :The serial port. Ex: /dev/ttyUSB0 in Linux, COM4 in windows.<br /> | ||
:Only mandatory for the DIY USB adapter. | :Only mandatory for the DIY USB adapter. | ||
− | |||
− | |||
− | |||
− | |||
* --type joystick/GPP/360pad/Sixaxis/PS2pad | * --type joystick/GPP/360pad/Sixaxis/PS2pad | ||
:The type of USB adapter. | :The type of USB adapter. | ||
Line 102: | Line 95: | ||
:This option is only applicable for GIMX later than 0.51. | :This option is only applicable for GIMX later than 0.51. | ||
:Optional since GIMX 1.10. | :Optional since GIMX 1.10. | ||
− | |||
− | |||
− | |||
* --refresh 4 | * --refresh 4 | ||
:The refresh period, in ms.<br /> | :The refresh period, in ms.<br /> | ||
Line 111: | Line 101: | ||
:PS2pad: 16 (62.5Hz) | :PS2pad: 16 (62.5Hz) | ||
:Optional since GIMX 1.10. | :Optional since GIMX 1.10. | ||
+ | *<span style="color:#808080"> --serial</span> | ||
+ | :<span style="color:#808080">Only mandatory for the DIY USB adapter.</span> | ||
+ | :<span style="color:#808080">This option is only applicable for GIMX 0.51 and older.</span> | ||
+ | *<span style="color:#808080"> --joystick / --GPP / --360pad / --PS2pad</span> | ||
+ | :<span style="color:#808080">The type of USB adapter.</span> | ||
+ | :<span style="color:#808080">--joystick is for the DIY USB adapter</span> | ||
+ | :<span style="color:#808080">This option is only applicable for GIMX 0.51 and older.</span> | ||
+ | *<span style="color:#808080"> --precision 16</span> | ||
+ | :<span style="color:#808080">The axis precision. Joystick: 16, Other adapters: 8.</span> | ||
+ | :<span style="color:#808080">This option is only applicable for GIMX 0.51 and older.</span> | ||
+ | |||
==General emuclient options== <!--T:11--> | ==General emuclient options== <!--T:11--> |
Revision as of 14:36, 7 November 2013
Contents
Motivation
GIMX can be run from a Linux terminal without having to run a windowing system.
This improves performances, especially on small targets like the Raspberry Pi or thin clients.
It's also useful for other stuff like automation.
Linux + bluetooth
Set the dongle address
It is highly recommended to use a CSR Bluecore4-rom dongle. Check the compatibility list.
Plug a Sixaxis previously paired with the target PS3.
Type in a terminal:
sixaddr
Result:
Current Bluetooth master: ps3_bt_address Current Bluetooth Device Address: sixaxis_bt_address
Get the current dongle address:
bdaddr -i hciN
where N is the dongle index (type "hciconfig -a" to see all dongles).
Write it down so as to be able to restore it later.
Set the dongle address:
bdaddr -r -i hciN sixaxis_bt_address
Check the result:
bdaddr -i hciN
Run GIMX
In a terminal:
emu ps3_bt_address bt_device_index sixaxis_index
- ps3_bt_address
- This argument is mandatory.
- bt_device_index
- The bluetooth device index (ex : 0 for hci0, 1 for hci1, etc).
- This argument is optional, default device index is 0.
- sixaxis_index
- The sixaxis index (ex : 0 for sixaxis 1, 1 for sixaxis 2, etc).
- This argument is optional, default sixaxis index is 0.
In another terminal:
emuclient --config file_name
- file_name
- The name of the config file, in the ~/.emuclient/config directory (ex : toto.xml).
- This argument is mandatory.
- Use backslashes to escape spaces.
Linux or Windows + DIY USB adapter or GPP
In a terminal:
GIMX 1.10 and later:
emuclient --config file_name --port /dev/ttyUSBX or emuclient -c file_name -p /dev/ttyUSBX
GIMX 0.51 or older:
emuclient --config file_name --serial --port /dev/ttyUSBX --joystick --precision 16 --refresh 4
GIMX later than 0.51:
emuclient --config file_name --port /dev/ttyUSBX --type joystick --refresh 4
or
emuclient -c file_name -p /dev/ttyUSBX -t joystick -r 4
emuclient options:
- --config file_name
- The name of the config file, in the ~/.emuclient/config directory (ex : toto.xml).
- This argument is mandatory.
- --port /dev/ttyUSB0
- The serial port. Ex: /dev/ttyUSB0 in Linux, COM4 in windows.
- Only mandatory for the DIY USB adapter.
- --type joystick/GPP/360pad/Sixaxis/PS2pad
- The type of USB adapter.
- joystick is for the DIY USB adapter with the joystick firmware
- Sixaxis is for the DIY USB adapter with the sixaxis firmware
- This option is only applicable for GIMX later than 0.51.
- Optional since GIMX 1.10.
- --refresh 4
- The refresh period, in ms.
- Recommended values:
- joystick/GPP/360pad/Sixaxis: 4 (250Hz)
- PS2pad: 16 (62.5Hz)
- Optional since GIMX 1.10.
- --serial
- Only mandatory for the DIY USB adapter.
- This option is only applicable for GIMX 0.51 and older.
- --joystick / --GPP / --360pad / --PS2pad
- The type of USB adapter.
- --joystick is for the DIY USB adapter
- This option is only applicable for GIMX 0.51 and older.
- --precision 16
- The axis precision. Joystick: 16, Other adapters: 8.
- This option is only applicable for GIMX 0.51 and older.
General emuclient options
- --curses
- curses terminal display.
- Mouse calibration is available through this interface.
- --status
- Display controls in the terminal.
- --nograb
- Do not grab the mouse cursor.
- --force-updates
- Send button+axis status even if there is no change (for compatibility with games like DNF).
- --subpos
- Improve stick precision (counteract rounding issues).
- --keygen key
- Generate a key press at emuclient startup.
- The main use case for this is the automation of macro's execution.
- Events that are not generated by macros are ignored.
- For GIMX older than 1.10: the only way to quit is to add KEYDOWN LSHIFT and KEYDOWN ESCAPE at the end of the macro, or use --nograb and press ctrl+c into the terminal.
- Another use case is the sending of a single command (it requires to use a macro as no key up event is generated).
- --event "control(value)"
- Since GIMX 1.10 it's possible to send controls to the console from the command line, without having to create a configuration and macros to use with the --keygen argument.
- Example:
emuclient -p /dev/ttyUSB0 --event "lstick x(127)" --event "rstick y(-128)" --event "circle(255)" --event "square(0)"
- This moves the left stick right, the right stick forward, fully presses the circle button, and releases the square button.
- The state of all other controls is cleared, i.e. all other buttons and axes are released (in the above command, --event "square(0)" is not necessary).
- emuclient should complete in about 10ms.
- Names and value ranges:
- "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} (only two values as these buttons are not pressure-sensitive)
- "up", "right", "down", "left", "triangle", "circle", "cross", "square", "l1", "r1", "l2", "r2": [0,255]