Джойстик для AppleII своими руками

Достался мне как то после субботника на складе предприятия компьютер Apple IIe platinum, списанный наверное лет 20 назад. Валялся он в куче другого железа, отжившего свой век, и если бы я его не забрал вовремя, он бы просто отправился на свалку. Достался он мне без блока питания, но это ерунда, переходник со стандартного ATX спаять не проблема. Подключается он к телевизору обычным RCA по композиту и имеет несколько нестандартный NTSC, поэтому все телевизоры, что к нему подключал показывали черно-белую картинку.
image

Ситуацию изменил только свисток easycap USB 2.0, который хоть и с косяками, но отображает цвет. Никакой «радуги» как на скриншоте ниже быть не должно, но в любом случае играть интереснее с цветом.
image
Игры на него загружаются как на спектруме через аудиовход с магнитофона. Существует один очень полезный сайт asciiexpress.net который позволяет запустить игру также как вы бы ее запускали с магнитофона. Список игр довольно внушительный, но во многие нельзя поиграть с клавиатуры, джойстик они требуют обязательно (представляю как бомбило бы у современных геймеров). Так как же подключить джойстик к apple IIe? На нем распаяно два разьема, 16 пиновый старого образца внутри материнской платы и DB-9F. Можно сейчас вполне заказать джойстик для эпла на ибей, но есть способ лучше. Сделаю его сам. Немного погуглив оказалось что это задача не такая и сложная. Принцип работы очень похож на принцип работы джойстика для геймпорта ПК. Вот она схема, в которую я правда добавил вторую кнопку, так как в некоторых играх используются две и использовал разъем db-9f, а не 16 пиновый разъем.
image

Вот соответствие контактов 9 пинового и 16 пинового разъемов.
db-9f знач. 16-pin
2 — +5v — 1
7 — button0 — 2
5 — X-axis — 6
8 — Y-axis — 10
1 — button1 — 3
3 — ground — 8
Берем обычный джойстик от приставки Рэмбо, она же Atari 2600. Курочить его совсем не жалко, так как к атари подходят стандартные сеговские джойстики. Разбираем его и припаиваем к нему другой кабель, к нему штекер DB-9M, меняем механику джойстика, так как она отличается от атариевского. Крестовину посередине пришлось разрезать на 4 части. Немного поморочился чтобы сделать нажатие вправо и вниз не на нажатие как было изначально, а отжатие кнопки. Здесь 2 оси, на вертикальной оси кнопка вверх срабатывает на замыкание контактов, нейтральное положение это сопротивление 68 КОм, кнопка вниз на размыкание, получаем сопротивление в 168 КОм. То же самое на горизонтальной оси. На джойстике Рэмбо верхняя кнопка дублировала нижнюю, я же сделал верхнюю как кнопку №1, а нижнюю как кнопку №2. Внутри это выглядит не очень здорово, но это работает.
image

Соберем его обратно.
image

Все игры которые я тестил работали с ним без проблем, кроме разве что sublogic flight simulator, к которому видимо нужен какой то другой аналоговый джойстик.
Но не все игры можно запустить через аудиовход, для более серьезных, таких как например prince of persia нужен дисковод, он у меня есть, но к сожалению нет контроллера дисковода.
P.S. Играйте в хорошие игры ;)

© Geektimes