分类: LINUX
2009-04-15 22:16:30
上周六60块RMB买了个北通小双打,BTP-CO27型号的。
回到家,进入到ubuntu7.10,先打开“新立得软件包管理器”,选择“设置”菜单下的“软件库”,
在“ubuntu软件库”标签下,把“被版权与合法性问题限制的软件(multiverse)”前面的勾勾上。确定。
更新后再搜索"xmame",就能找到一些包了,我这里的图形前端是只有kxmame
把这些包安装上。
说一下kxmame这个图形前端的使用方法,在游戏多的情况下,使用kxmame还是很省心的,比一次次输入xmame命令省心多了。
打开kxmame,进入“Settings” -> “文件夹选择” -> "Mame/Mess basic paths"
在这个标签下面,有一个"Mame ROMS path:",在它的后面填入你所拥有的ROMS的路径,点Add添加进去。然后点“重建游戏列表”,就可以看到你的游戏了。
好了,下面插上手柄,在/var/log/messages里有如下信息:
Apr 12 15:46:41 huangjh kernel: [ 2337.164000] usb 5-1: new low speed USB device using uhci_hcd and address 2
Apr 12 15:46:42 huangjh kernel: [ 2337.332000] usb 5-1: configuration #1 chosen from 1 choice
Apr 12 15:46:42 huangjh kernel: [ 2337.372000] input: Twin USB Gamepad as /class/input/input9
Apr 12 15:46:42 huangjh kernel: [ 2337.372000] input: USB HID v1.10 Joystick [Twin USB Gamepad ] on usb-0000:00:1d.0-1
Apr 12 15:46:42 huangjh kernel: [ 2337.492000] usbcore: registered new interface driver xpad
Apr 12 15:46:42 huangjh kernel: [ 2337.492000] /build/buildd/linux-source-2.6.22-2.6.22/drivers/input/joystick/xpad.c: driver for Xbox controllers v0.1.6
同时可以发现设备文件 /dev/input/js0
进入到xmame中后,发现只有第一、二键可以用。于是我犯了一个错误,开始在网上找解决方法了。
linux下的驱动没有找到,还有人08年发贴子说这个CO27是他永远的痛,在ubuntu下不能用,妈的一大堆。还研究了一下jstest,joy2key这些软件,觉得还是挺有趣和有用的,但是终究是没有解决我的问题。
最后我又进了游戏,按TAB,设置键位,突然惊喜的发现按下手柄的键就设置为对应的功能键了。原来手柄默认就驱动好了!我还瞎折腾了几个小时。
接下来的事情就是玩游戏了,呵呵放松一哈。
------------------------------------
20090502
COMMON
-X
-dev /dev/input/js0
-thresh 0 0 0 0 -16383 16383 -16383 16383 0 0 0 0 -16383 16383
-16383 16383 0 0 0 0
START dosbox
-X
-buttons Escape Return r r r r r r r r s s s s s s s s s s
-axis r r r r Left Right Up Down r r r r r r r r r r r r
上面是配置文件 .joy2keyrc 的内容,放到用户目录下即可
根据实际情况,需要修改的地方有:
1 手柄的设备文件
crw-rw---- 1 root plugdev 13, 0 2009-05-02 20:22 /dev/input/js0
2 手柄轴的方向端,可以理解为方向键。
运行 jstest /dev/input/js0 显示如下
Axes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 6: 0 7: 0 8: 32767 9: 32767
Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:off 10:off 11:off 12:off 13:off 14:off 15:off 16:off 17:off 18:off 19:off
按下手柄会有对应的显示。如我按方向左键,显示2:-32767;按方向右键,显示 2: 32767 。就是说轴0,1没有,轴2有,二端分别是-32767,32767。可以理解为1个轴(axis)有二个端(threshhold)
所以这里的配置为:-thresh 0 0 0 0 -16383 16383 ......
这里可以一一测试手柄上的按键,确认它们在系统中的表示,是第几个axis? 第几个button?
3 手柄与键盘的映射
buttons和axis都是按顺序来的,从0开始,与jstest所显示的一一对应,在它们后面,填入你想要映射的键盘的键代码即可。
键代码可通过 xev 得到
这里我要玩DOS仙剑,只设置了方向键,和回车,ESC键。
4 指定手柄映射键盘 所作用的程序
先运行 dosbox,然后在终端里运行 joy2key -config dosbox,根据提示点一下 dosbox窗口,这样手柄在dosbox窗口里就生效了。试试吧。