Несложная доработка компьютера Atari 65XE позволит использовать его в качестве USB-клавиатуры для современного ПК. Возможность работы в штатном режиме сохраняется. Дополнительное устройство выполнено на Arduino Leonardo. В UNIX-подобных системах клавиатура начинает работать сразу. Для работы в Windows необходимо включить в BIOS функцию USB Legacy Support. При использовании клавиатуры совместно с компьютерами Apple потребуется скорректировать раскладку в скетче.
Проделано всё описанное из ностальгических соображений.
Этому Atari 65XE около 30 лет. И он работает. Чтобы добавить к нему функцию USB-клавиатуры, автор взял Arduino Leonardo, немного перемычек и USB-кабель. Блок питания при работе в соответствующем режиме к компьютеру подключать не надо.
Подключить Arduino необходимо к 17 точкам на наборе контактных площадок J8. Первая площадка там квадратная, остальные — круглые. Поскольку шаг выводов и там, и на Arduino равен 2,54 мм, быть «ювелиром» для припайки проводов не обязательно.
Arduino | J8
--------+----
2 | 19
3 | 4
4 | 8
5 | 9
6 | 10
7 | 11
8 | 17
9 | 16
10 | 20
11 | 13
12 | 14
A0 | 12
A1 | 15
A2 | 7
A3 | 18
A4 | 5
A5 | 6
Arduino нужно закрепить внутри Atari таким образом, чтобы проводники этой платы не соприкасались с металлическими частями компьютера. USB-шнур вывести наружу.
Поскольку на клавиатуре Atari меньше клавиш, чем на клавиатуре PC, в прошивке устройства предусмотрены «аккорды». Их можно менять согласно предпочтениям пользователя. По умолчанию они следующие:
PC | Atari
--------------+----------------------------
F1 | Control+Tab+1 или Help
F2 - F9 | Control+Tab+2 - 9
F10 | Control+Tab+0
F11 | Control+Tab+<
F12 | Control+Tab+>
--------------+----------------------------
~ (тильда) | Control+Tab+/
--------------+----------------------------
` (гравис) | Control+Tab+Esc
--------------+----------------------------
PgUp | Control+Tab+стрелка вверх
PgDn | Control+Tab+стрелка вниз
--------------+----------------------------
Home | Control+Tab+стрелка влево
End | Control+Tab+стрелка вправо
--------------+----------------------------
Левый Alt | Клавиша с логотипом Atari
--------------+----------------------------
Левый Ctrl | Control
--------------+----------------------------
Левый Sfift | Shift
--------------+----------------------------
Shift+Alt | Shift+Alt (не Alt+Shift)
--------------+----------------------------
Ctrl+Alt+Del | Никак
--------------+----------------------------
Стрелка | Control+соотв. стрелка
влево |
(вправо, |
вверх, |
вниз |
--------------+----------------------------
Выделение | Shift+Tab+соотв. стрелка
текста |
(Shift плюс |
та или иная |
стрелка |
Atari будет работать в штатном режиме, если подать на него напряжение с БП, или в режиме USB-клавиатуры, если соединить его с компьютером. Подключать и то и другое одновременно нельзя.
Чтобы прошить Arduino, необходимо скачать скетч (бесплатен для некоммерческого использования), а также модифицированные библиотеки Keypad v.3.1.1 и Keyboard v.1.0.2 (обе под GPL). От таких же оригинальных библиотек они отличаются тем, что учитывают наличие на плате Atari микросхем, подключённых к матрице клавиатуры, и предотвращают неправильное считывание состояний клавиш, в первую очередь, Control и Pause.
Переделав скетч, можно аналогичным образом добавить функцию USB-клавиатуры практически к любому ретрокомпьютеру.
Комментарии (15)
PhoenixMSTU
20.03.2019 11:10Это нечестная доработка, просто подключили arduino к пинам клавиатуры и всё. Вот если бы без вскрытия корпуса с подключением через внешний порт, да ещё чтобы программу для эмуляции клавиатуры нужно было бы с кассеты грузить.
Sleuthhound
20.03.2019 14:55+1Вандал, другого слова нет. Есть раритетный ПК, нет нужно сделать из конфетки какое-то жалкое наколенное поделие чтобы попариться, мол я могу спаять 2 провода и написать 100 строк кода для ардуино.
lexxair
20.03.2019 22:45+2он, как я понимаю, остался раритетным рабочим(!) ПК, но может быть использован в качестве клавиатуры для современного.
Nick_Shl
21.03.2019 15:02И что, что рабочим? Он испахабил внутренности! Напаял кучу проводов, залил это все соплями. И самое главное: а челлендж в чем? Любой начинающий способен нагуглить "как сделать клавиатуру на Ардуино".
Вот если бы он Ардуино подцепил к перефирийному разъёму и сделал картридж с программой для Atari транслирующий нажатия в этот переферийный разъем, так что бы сам компьютер не модифицировался — вот это был бы проектик. А так…
slg
20.03.2019 15:31+1Чтобы не изобретать велосипед, вместо Leonardo лучше взять Teensy 2.0 и QMK как прошивку.
Советую также ознакомится с опытом изготовления конвертеров здесь: geekhack.org/index.php?board=117.0
Есть легендарные клавиатуры, с которыми современные не сравнятся из-за оптимизации и удешевления последних.
Neelectric
20.03.2019 23:52+1А как вам такой винтаж? Исключительно на кириллице, даже скрипит от старости?
vk.com/id527627069?z=video527627069_456239017%2Fd285e99b552d8b2d84%2Fpl_wall_527627069
FaceHoof
Я так понимаю, сделано исключительно «потому что могут»? =)
Удобство использование такой клавиатуры для работы с современным компьютером, мягко говоря, под сомнением.
Особенно вот это порадовало:
Ну хоть настроить можно)
UncleJey
Не удаётся вспомнить, когда последний раз пользовался этой комбинацией клавиш.
mistergrim
Это у вас полноэкранные приложения давно не висли.
UncleJey
Это у меня более интересные увлечения нежели в игры играть ;)
pda11111
Ctrl+Shift+Esc?
mistergrim
Ctl+Shift+Esc просто запускает диспетчер задач (и это запросто может не сработать). Ctrl+Alt+Del работает несколько по-иному.
balsoft
Или пользуется ОС, в которой приложение не может перехватить контроль над рабочим столом :)
Не помню, когда у меня в лине последний раз не работало переключение на другой воркспейс даже при 100% CPU load и забитом канале IO.
Chugumoto
на маковских клавиатурах кстати тоже. у них дела нет, но его заменяет шифт+бекспейс…