Любитель интерактивных развлечений хотел использовать только оригинальные контроллеры.
Моддер Джон Милнер, также известный под ником jfrmilner, решил не выбирать для себя один лучший геймпад, и создал устройство, с помощью которого он может использовать все имеющиеся у него контроллеры от разных консолей.
Для запуска старых игр он использовал RetroPie — мини-компьютер, построенный на базе платы Raspberry Pi. Для того, чтобы подключать к нему все геймпады, jfrmilner решил с помощью обратной разработки (или «реверс-инжиниринга») получить нужные данные, а затем загрузить в RetroPie необходимый для распознавания нажатий код. После этого Милнеру оставалось только собрать единое устройство для подключения.
По словам моддера, он разработал специальную схему и систему селекторов значений. Они, в свою очередь, служили расширением для микроконтроллера Arduino Micro, позволяя увеличить количество доступных контактов для геймпадов. Устройство работало благодаря сложному комплексу регистраторов сдвига и мультиплексоров, передающих сигнал с одного из входов на выход. За основу Милнер взял джойстик от Commodore 64 и несколько светодиодов, а конечный сигнал поступал на цифровые контакты Arduino Micro.
Затем он собрал подходящий для всех проводов и разъёмов корпус, а также добавил несколько стилизованных кнопок для распространённых консольных команд вроде сохранения игры. В результате получилось устройство для подключения к RetroPie, сравнимое по размерам с консолями, но с гораздо большим количеством проводов. Среди поддерживаемых геймпадов оказались контроллеры от классических NES и SNES, Sega Master System, Sega Mega Drive, первой PlayStation и Commodore 64.
Сколько времени и денег Милнер потратил на создание системы неизвестно.
Источник: DTF