Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Implemented GC Controller inputs via named pipes. #3170
When we look for controllers, Pipes::Init scans the Pipes folder in the user directory for readable, nonblocking files. For those it finds, it creates ciface::Devices out of them. Users can then send controller inputs to the devices by writing to the files. This is much simpler than, e.g. making a uinput device. The commands are described in Pipes.h.
This approach can be extended to wiimotes. You can also pipe data from a socket into the file with netcat or similar.
Only works on unix systems so far, since Windows has a different named pipes interface. Not a big deal to port, but I don't have a Windows box atm. Try it out by making a named pipe in a folder called Pipes in the user directory (mkfifo filename), refresh dolphin controller entries, pick the pipe, and then run