Одна из первых программ, которую я опробовал на Pocket C.H.I.P. - это эмулятор ZX Spectrum - fuse. Установить его просто:
sudo apt-get install fuse-emulator-sdl spectrum-roms
Запускать лучше эмулятор с графической оболочкой SDL, команда fuse-sdl
. Использовать в качестве геймпада клавиатуру Pocket C.H.I.P. совершенно невозможно, это худшая компактная клавиатура. В качестве кнопок использованы какие-то клавиши особой конструкции с жёстким ходом. Любая компактная мембранная клавиатура будет лучше для постоянного применения. Но конкретно fuse я решил настроить на геймпад SNES30. С подключением по USB проблем не возникло совсем. Клавиша A вызывает меню fuse, клавиша B - как кнопка “огонь” на кэмпстон-джойстике. По меню можно перемещаться при помощи геймпада. В меню настраивается тип джойстика, полноэкранный режим работы и делаются другие нужные настройки.
В играх для ZX Spectrum не обойтись без клавиатуры, но чтобы начать игру и сделать настройки клавиатуры Pocket C.H.I.P. вполне достаточно. Всё работает отлично
Также я попробовал настроить работу с геймпадом 8bitdo Zero. Он подключается только по блютусу. Установить соединение достаточно несложно, на Pocket C.H.I.P. это делается утилитой bluetoothctrl
. Запускаем её, включаем блютуз, запускаем поиск устройств, спариваем Pocket C.H.I.P. и геймпад, подключаем его и включаем в список доверенных устройств. Сканирование устройств занимает некоторое время. Так что до команды “scan on” нужно перевести геймпад в режим обнаружения, а после команды нужно подождать, пока устройство будет найдено. Ниже эти шаги описаны.
bluetoothctl
Откроется оболочка для управления блютуз устройствами. Остальные команды набираются в ней.
power on
agent on
scan on
pair <адрес геймпада, например 16:07:04:58:55:23>
# тут может потребоваться ввести PIN устройства, но у меня его не запрашивали
connect <адрес геймпада>
trust <адрес геймпада>
exit
Теперь устройство “спарено” и должно подключаться автоматически. Проблема с 8bitdo Zero в том, что у него кнопка A меню не вызывает. Альтернативный способ вызвать меню - клавиша F1, но со встроенной в Pocket C.H.I.P. клавиатуры эта кнопка не работает, работает только с любой внешней. Как повесить вызов меню на геймпад или встроенную клавиатуру по-прежнему непонянтно. А без этого ни выйти из эмулятора, ни загрузить другую игру. Только перезагрузить устройство можно.