-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
35 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,51 +1,72 @@ | ||
# gcfeeder | ||
|
||
A ViGEm feeder for GameCube controllers using the GameCube Controller Adapter. | ||
|
||
The process for reading adapter inputs is based on Dolphin's GameCube Adapter support. | ||
Since this program uses the same driver as Dolphin, it does not conflict with Dolphin's passthrough. | ||
Since this program uses the same driver as Dolphin, it does not conflict with Dolphin's | ||
passthrough. | ||
|
||
## Input Viewer | ||
[gcviewer](https://github.com/Sirius902/gcviewer) is an input viewer that can be used with gcfeeder. | ||
|
||
[gcviewer](https://github.com/Sirius902/gcviewer) | ||
is an input viewer that can be used with gcfeeder. | ||
It used to be a part of this repository but has moved to its own after commit | ||
[c4c65b2](https://github.com/Sirius902/gcfeeder/commit/c4c65b291bec4ac31879d24497caa13c22acbe81). | ||
|
||
## ESS Adapter | ||
A built-in ESS adapter for use in Dolphin with mappings for the following games is also included. | ||
|
||
A built-in ESS adapter for use in Dolphin with mappings for the following games is | ||
also included. | ||
|
||
* The Legend of Zelda: Ocarina of Time (OoT) on Virtual Console | ||
* The Legend of Zelda: Majora's Mask (MM) on Virtual Console | ||
* OoT and MM on GameCube | ||
|
||
## Usage Requirements | ||
|
||
### Windows | ||
|
||
* WinUSB (libusb) driver must be installed for the adapter (WUP-028) with [Zadig](https://zadig.akeo.ie). | ||
For a tutorial follow Dolphin's guide [here](https://dolphin-emu.org/docs/guides/how-use-official-gc-controller-adapter-wii-u). | ||
* [ViGEmBus](https://github.com/ViGEm/ViGEmBus/releases) must be installed. | ||
|
||
### Linux | ||
* Install the `udev` rules file [here](rules/50-gcfeeder.rules) by placing it at `/etc/udev/rules.d`. | ||
|
||
* Install the `udev` rules file [here](rules/50-gcfeeder.rules) by placing it at | ||
`/etc/udev/rules.d`. | ||
* Reload the `udev` rules by using the following command. | ||
|
||
```sh | ||
udevadm control --reload-rules && udevadm trigger | ||
``` | ||
|
||
## Config | ||
|
||
### Location | ||
|
||
* Windows | ||
* `%AppData%\gcfeeder\gcfeeder.toml` | ||
* `%AppData%\gcfeeder\gcfeeder.toml` | ||
* Linux | ||
* Stored at one of the following locations: | ||
* `$XDG_CONFIG_HOME/gcfeeder/gcfeeder.toml` | ||
* `$HOME/.config/gcfeeder/gcfeeder.toml` | ||
* Stored at one of the following locations: | ||
* `$XDG_CONFIG_HOME/gcfeeder/gcfeeder.toml` | ||
* `$HOME/.config/gcfeeder/gcfeeder.toml` | ||
|
||
### ViGEm Options (Windows) | ||
|
||
Options found under the `vigem_config` key. | ||
* `pad` can be `x360` to emulate an Xbox 360 controller, and `ds4` to emulate a DualShock 4 controller. | ||
|
||
* `pad` can be `x360` to emulate an Xbox 360 controller. | ||
* `trigger_mode` can be: | ||
* `analog` - Only the analog trigger input on the GameCube controller will be mapped to the output trigger. | ||
* `digital` - Only the digital trigger input on the GameCube controller will be mapped to the output trigger. | ||
* `combination` - If the digital trigger is pressed output trigger will max. Otherwise, analog trigger input is used. | ||
* `stick_click` - Digital trigger inputs will be treated as a stick click. Trigger output uses analog trigger input. | ||
* `analog` - Only the analog trigger input on the GameCube controller will | ||
be mapped to the output trigger. | ||
* `digital` - Only the digital trigger input on the GameCube controller will | ||
be mapped to the output trigger. | ||
* `combination` - If the digital trigger is pressed output trigger will max. | ||
Otherwise, analog trigger input is used. | ||
* `stick_click` - Digital trigger inputs will be treated as a stick click. | ||
Trigger output uses analog trigger input. | ||
|
||
## Notes | ||
* libusb does not allow more than one process to interface with a device at a time, so, the feeder may not be active when using Dolphin's passthrough. | ||
|
||
* libusb does not allow more than one process to interface with a device at a | ||
time, so, the feeder may not be active while using Dolphin's passthrough. |