4个版本 (破坏性)
使用旧的Rust 2015
0.6.0 | 2018年9月2日 |
---|---|
0.5.0 | 2018年5月6日 |
0.4.0 | 2018年5月5日 |
0.1.0 | 2018年4月15日 |
#8 in #playstation
40KB
613 行
Rust嵌入式PlayStation控制器(PAD)驱动程序
本项目旨在通过支持任何平台上的Rust的embedded-hal抽象层,为PlayStation 1或2控制台提供对任何PlayStation控制器设备的支持。该库已在Raspberry Pi 3上通过板载SPI总线进行了测试。
目前支持许多设备,并在本项目的research
文件夹中记录了一些随机笔记。以下是当前列表
- 原版PlayStation数字模式
- DualShock 1/2模拟摇杆
- DualShock 2压力感应按钮
- DualShock振动
- Guitar Hero控制器
- Mad Maestro指挥棒
- JogCon
- JogCon力反馈
- GunCon
- NegCon
- PSX Multitap (SCPH-1070)
大多数PlayStation游戏都假设已插入控制器,因此自动检测正在使用的控制器很困难。目前,基于16位标识符的最佳尝试,但存在大量重叠。例如,没有方便的方法来区分Guitar Hero控制器和原版Dual Shock控制器。因此,由于这个原因和库的设计,有一些控制器需要重构才能支持。
本项目今天即可使用,但需要做更多工作以增加错误检测并允许无法检测到的控制器的舒适使用。有一些示例可以学习如何使用此库并发现您拥有的PlayStation控制器的某些秘密。
如果您想贡献新的控制器信息或遇到连接设备的问题,请打开一个问题,我们可以帮助您解决问题。以下参考文献也是一个很好的起点,因为许多作者都是更好的作家。😃
参考文献
- psxpad.html - 使用SPI在Linux上焊接、测试和引导游戏手柄
- ps_eng.txt - 控制器/内存卡协议(DualShock之前)
- Playstation 2 (Dual Shock)控制器协议笔记 - 命令协议
- psxpblib - 通过并行端口连接PlayStation控制器
- 为自动演奏Guitar Hero模拟PS2控制器 - SPI协议捕获
依赖关系
~310KB