SNESDev is a user-space driver for the Raspberry Pi. It implements up to two (S)NES game controllers as HID gamepads and a single keyboard for as many buttons as you like connected over GPIO.
Setup build system and get libconfuse, which is used for parsing the config file.
sudo apt-get update
sudo apt-get install -y build-essential git cmake libconfuse-dev
Build and install Raspberry Pi GPIO library.
mkdir ~/src
cd ~/src
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.44.tar.gz
tar -xvf bcm2835-1.44.tar.gz
cd bcm2835-1.44
./configure
make
sudo make check
sudo make install
mkdir ~/src
cd ~/src
git clone https://github.com/axle-h/SNESDev-RPi.git
cd SNESDev-RPi
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=Release ../
make
sudo make install
This will build & install SNESDev as a service and start it.
In order to run SNESDev make sure that the uinput module is loaded. You can check this with
lsmod
The module is loaded with
sudo modprobe uinput
If you want to have the uinput module automatically loaded, you can add "uinput" to the file /etc/modules
.
SNESDev is run as a service. To check whether it is running:
sudo service SNESDev status
You can start SNESDev with
sudo service SNESDev start
SNESDev is configured with the configuration file /etc/gpio/snesdev.cfg
.
You can uninstall the SNESDev service with the following command:
cd ~/src/SNESDev-RPi/build
sudo make uninstall