Using SNES controllers in linux
A few notes on how to get the linux gamecon driver loaded in SuSE 10.0 on a second parallel port.
First, I needed to configure the lp module to only install on parport0. In /etc/modprobe.conf, there was a line that installed parport && lp. I changed it to this:
install parport /sbin/modprobe -i parport && /sbin/modprobe -i lp parport=0,none,none
Notice the parport=0,none,none. This says to install lp on parport0, and nowhere else (none,none=not on parport1 or 2).
At first I thought to add a line for gamecon in modules.conf, but that wasn't working on boot for some unknown reason. So I found that SuSE has a joystick init file. Using YaST, I set joystick to start on boot. I then edited /etc/sysconfig/joystick, and set the following two options:
JOYSTICK_MODULE_0="gamecon" JOYSTICK_MODULE_OPTION_0="map=1,2,2,1,1,0"
See the joystick-parport documentation that is part of the kernel-docs package to learn what the map= parameter is all about.
Now, *finally* I can use my nes/snes controller set in linux without having to manually install the module every time (and, unload lp)! Hooray!