Подключение приставочного джойстика к PC


Зачем нужен джойстик


Сейчас я Вам скажу довольно неожиданную вещь. ИГРАТЬ НА КЛАВИАТУРЕ В ИГРЫ НЕ УДОБНО. Она просто не приспособлена для этого, Представьте себе автомобиль, у которого вместо руля пишущая машинка :). Клавиатура громоздка, далеко от компьютера ее не утащишь. А Вы пробовали играть вдвоем на одной клавиатуре? В Mortal Combat, например, где клавиши Выходят из строя уже на первом месяце и ваш соперник норовит нажать побольше клавиш одновременно, чтобы заблокировать ваши движения и не дать провернуть комбо? А играть втроем-вчетвером? Это уже совсем невозможно. Хотя бы потому, что тесно и соперник норовит толкнуть Вас в бок.

Есть игры, которые требуют очень точного и плавного управления это в первую очередь симуляторы, и еще, пожалуй, FirstPersonShooter'ы. Есть RealTimeStrategy, которыми так прославился PC, и играть в которые лучше всего мышой. А есть аркады и экшны для игры в которые лучше всего подходят геймпады. (Джойстики на таких играх просто ломаются).

К сожалению PC-джойстики стоят очень дорого. Скорее всего, у Вас пылится в углу джойстик от какой-либо приставки (а может вас после прочтения данной статьи посетит мысль о его приобретении) и на Вашем компьютере пустует порт принтера. Существует вполне реальная возможность играть таким геймпадом/джойстиком на PC-совместимом компьютере, даже не самом мощном. Большинство игр и программ не смогут отличить вашего устройства от фирменного джойстика за несколько $100. (почему то считается раз какой прибамбас к компьютеру, то обязательно стоить должен баснословные деньги. Можете проверить сколько стоят джойстики на Webmarket.ru). В случае с джойстиком от Sony PlayStation можно вобще реализовать новомодный сейчас Force Feedback! (т.е. обратную связь. Будете руками чувствовать, что твориться в игре).

Вобще GamePad - устройство очень похожее на аналоговый джойстик. Различие между типичным джойстиком и GamePadом - в характеристиках оси. Джойстики обычно имеют две оси - X и Y. Непрерывное движения рычага вдоль этих осей с помощью двух потенциометров преобраются в аналогоВые электрические сигналы, которые потом с помощью АЦП преобразуются в цифроВые, на основании которых Вычиисляются переменные X и Y.
GamePad же имеет не- пропорциональные величине отклонения от центра величины X и Y для девяти позиций (включая центр), он гораздо проще по конструкции, и, следовательно, болеее надежен.

Схемы подключения.

За любой ущерб, причененный прямо или косвенно, я ответственности не несу. Вы делаете все это на свой страх и риск

Конструкция очень простая. Просто дважды убедитесь в правильной ориентации диодов и прежде чем проверять сделанный Вами интерфейс, убедитесь что все провода припаяны правильно, и, что никакие оголенные провода не касаются чего-нибудь. Я сильно рекомендую использовать корпус для этих интерфейсов, чтобы уменьшить риск короткого замыкания. Для небольших устройств подойдет корпус от LPT разьема. Еще одна рекомендация - использовать мультикарту с LPT портом. Смысл в том, что в случае ошибки сгорела только мультикарта, а не контроллер паралельного порта на материнской плате. Для тех, кто не знает, раньше контроллеры COM/LPT,флопа и даже жестких дисков распологались на отдельной плате, втыкаемой в ISAшный разьем. Правда теперь от ISA повсеместно избавляются, а на PCI такие устройства не делаются.

Желательно не разрезать кабели джойстика, ведь джойстик может пригодиться еще по своему прямому назначению. Вместо этого, используйте ответную часть соответствующего разъема, чтобы подключить любой совместимый джойстик к интерфейсу. Его легко найти в случае HD-15 и DB-9 необходимых для Jaguar и интерфейсов Atari, но найти ответный разъем SNES скорее всего невозможно. Для интерфейса SNES можно приобрести кабель расширения SNES и отрезать от него разъем.

Основная проблема с параллельными портами, это то, что они не имеют необходимого напряжения (+5V) на любом из своих штырьков для запитки устройств. Кое-кем даже предлагается использовать в качестве источника питания разьем клавиатуры или порт обычного джойстика. Вы можете даже получить +5V непосредственно из блока питания (красный провод - +5V).

Но гораздо лучшее решение - использовать только параллельный порт. Вы можете запитаться с любого штырька данных.





Для большинства реализаций необходим только один штырек. Рекомендуется штырь 9. Чаще всего этого бывает достаточно.

К сожалению, для некоторых устройств нужно бОльшее напряжение. И параллельный порт не может дать так много тока через штырьки данных. В этом случае вам понадобится использовать диоды для объединения тока от двух (или больше) битов данных вместе. Диоды, как известно, облаюают свойством односторонней проводимости и необходимы чтобы не вышел из строя ваш параллельный порт.

LPT        Диоды

(pin 9) ----|>|-------+------> Питание

                      |

(pin 8) ----|>|-------+

                      |       

(pin 7) ----|>|-------+

                      |

        -//-

                      |

(pin 4) ----|>|-------+

C землей еще проще. На PC's у параллельного порта земля находится с штырька 18 по штырек 25. Используйте любой штырек.

Теперь, когда с теорией покончено необходимо припаять провода к разьему LPT в соответсвии со схемой для вашего джойстика. Если у вас геймпад от Денди, то возможно несколько (пока насчитал 4) различных варианта разьема (вместе с подключанием прямо на плату приставки, кажется в Dendy Junior).

Дальше смотрите конкретно ваш джойстик

NES (он же Денди) и клоны



SNES (CуперНитнендо)



Геймпады NES и SNES широко распространены и легко доступны. Их легче всего подключить к PC. Оба Устройства используют один и тот же синхронный последовательный протокол, синхронизированный с компьютерной стороны. Для того, чтобы подключить вплоть до 5 NES и/или SNES к параллельному порту сразу, используются одни и те же выходы параллельного порта, тогда как один из 5 доступных входов назначается на каждый gamepad.

NES И SNES имеют два входных бита, Clock и Latch, которые управляют последовательной передачей. Они припаиваются к штырькам 2 и 3 параллельного порта, соответственно.

(штырек 2) -----> Clock

(штырек 3) -----> Latch

Также NES / SNES имеет линию Data. Она уникальна для каждого устройства (если их у Вас несколько) и каждый геймпад имеет свой собственный штырек Data.

(pin 10) -----> Pad 1 data   - для первого геймпада

(pin 11) -----> Pad 2 data   - для второго геймпада

(pin 12) -----> Pad 3 data   - т.д.

(pin 13) -----> Pad 4 data

(pin 15) -----> Pad 5 data




Имейте В Виду, что штырек 14 не использован, так как он не является входом параллельного порта.

Это все Вам нужно на стороне PC's теперь обратимся к стороне геймпада. NES И SNES имеют разные разъемы. Также, есть очень много аналогов NES (среди них наш российский Денди, Кенга и д.р.), и поскольку компания Nintendo использовала патентованые разъемы для своих фирменных машин, производители клонов не могли повторять их и использовали стандартные разъемы D-Cannon. Во всяком случае, если у вас есть gamepad, и у него есть кнопки A, B, Turbo A, Турбо B, Select и Begin (последних двух может и не быть) и связывается через 5 проводов, тогда это или NES или аналог NES и будет работать если Вы все сделаете правильно. SNES gamepads также используют 5 проводов, но имеют больше кнопок.

 Pinout for NES               Pinout for SNES                 Pinout for NES clone (db9)       Pinout for NES clone (db15)                                                                                                     ДЕНДИ!!!           +----> Питание   +-----------------------\               +---------> Clock           +-----------------> Data           |              7 | o  o  o  o |  x  x  o  | 1            | +-------> Latch           |             +---> Земля 5 +---------+  7           +-----------------------/               | | +-----> Data            |             |   | x  x  o   \              |  |  |  |          |                 | | |                      ___________________   | o  o  o  o |             |  |  |  |          +-> Земля      _____________               8 \ o x x x x x x o / 1 4 +------------+ 1           |  |  |  +------------> Data     5 \ x o o o x / 1                \ o x x o x x o /     |  |  |  |               |  |  +---------------> Latch       \ x o x o /                 15 `~~~~~~~~~~~~~' 9     |  |  |  +-> Земля       |  +------------------> Clock      9 `~~~~~~~' 6                    |     |     |     |  |  +----> Clock       +---------------------> Питание         |   |                       |     |     +----> Clock     |  +-------> Latch                                               |   +----> Питание          |     +----------> Latch     +----------> Data                                                +--------> Земля            +----------------> Питание
Итак джойстик готов, проверьте все еще раз можно переходить к установке драйверов для соответствующей операционной системы.



Замечания для геймпадов NES/Денди (к остальным не относится). Если нет кнопок Select и Start или если жать Select Start во время игры крайне неудобно? Не все потеряно. Правда это уже задача посложней.

Ведь есть две верхних кнопки AutoA и AutoB, используемых для автоматического огня. Их можно аппаратно завести на Select и Start. Не переживайте за autofire - его реализуют программно большинство драйверов и программ.

Снова берем в руки паяльник. Только теперь задача будет потруднее: придется в нескольких местах перерубать дорожки на печатной плате и припаивать 4 проводника в нужные места.

Теперь можете наслаждаться игрой в (Heart of Darkness например) всеми четырьмя кнопками.

Атари



Sega Genesis



ВНИМАНИЕ: Интерфейс Directpad pro для GENESIS (MEGADRIVE) не работает с некоторыми новыми чипсетами параллельного порта. (Список материнских плат уточняется). Выражается в отсутствии реакции на UP/DOWN и нажатия некоторых кнопок. Эта проблема описана в документации и не имеет на сегодняшний день иного решения, как установка дополнительной платы, имеющей на ней параллельный порт со старым чипсетом. Приношу извинения всем пострадавшим.

Jaguar



Sony Plystation





Вот схемы интерфейса для Sony Playstation. Левый рисунок нарисован смотря на разьем pada. Правый -наоборот.

Чтобы подключить второй джойстик, все провода кроме DB25-10 и DB25-12 дублируются, а для панели 2, замените провод DB25-10 проводом на DB25-13, и DB25-12 на DB25-15. Имейте в виду, что параллельный порт может не обеспечить достаточно мощности для второго устройства и у Вас получится стабильная работа только одного из устройств, если вы не собираетесь использовать внешний блок питания. Внешний блок подсоениняется так: удалите диоды с разъема и подсоените + от источника питания 5V. Минус подсоените к DB25-18/19.

Этот интерфейс создан и протестирован многими людьми с различными геймпадами для PSX. Если у вас возникли проблемы и Вы дважды проверили проводку и ориентацию диодов попробуйте использовать закладку Advanced в GamePadPro и повышения PSX scan delay.



Приведенная схема подходит для DirectPadPro и отличается от интерфейса SnesKey. Будьте внимательны!

Если у Вас не Dual-Shock pad или Вам не требуется Force Feedback не делайте провод, обозначенный на рисунке Optional. Источник питания 9V в этом случае не потребуется.

Пожалуйста Будьте Осторожны при подключении источника 9V. Неправильное подключение может вызвать проблемы с джойстиком и/или портом принтера. Не пытайтесь запитывать force-feedback двигатель через паралельный порт! Это все равно не будет работать и может повредить порт и/или геймпад. Используйте батарейку.

Пока существует лишь несколько игр на которых можно протестировать интерфейс c Force Feedback. Большинство из них работает нормально.

Sega Saturn



Virtual Boy



Установка драйвера под Windows

Пока существует два варианта решения проблемы: DirecpPad Pro и SNESKEY под Win

DirectPad Pro (www.ziplabel.com).

Cкачивайте драйвер. Затем распакуйте содержимое архива.

Теперь подробно о том, как установить драйвер.

  1. В панели управления Windows выбираете игровые устройства (иконку джойстика) и жмете кнопку "Добавить". В появившемся окне опять жмете кнопку "Добавить", а потом "Установить с диска".
  2. Далее находите ту директорию, в которую вы распаковали архив драйвера и выбираете появившуюся строчку DirectPadPro.Inf. После этого пару раз жмем ОК и добавляем устройство DirectPad Pro Standard And Force FeedBack.
  3. Затем в списке игровых устройств можно будет выбрать DirectPad Pro Controller и DirectPad Pro Force FeedBack Controller. Выбираем соотвествующий драйвер и в окне "Игровые устройства" появляется наш      контроллер.
  4. Теперь нажимаем кнопку "Свойства" и попадаем в окно конфигурации драйвера. Выбирайте затем выберите ID джойстика (пишется посередине сверху) и поставьте номер в списке, рядом с Conroller Type (он может и не быть 1, если до этого у вас в системе были установлены другие джойстики).
  5. После этого выберите правильный адрес вашего LPT-порта (можно посмотреть в Системе: Устройства - Порты COM и LPT обычно 378).
  6. Если выбрать закладку Buttons, то вы попадете в окно переназначения кнопок.


    Бывает, для той или иной игры требуется другое расположение кнопок. Другие закладки обычно не требуют никаких изменений. Если вы подключили несколько джойстиков, повторите вышеперечисленные шаги для всех последующих начиная с шага 3
  7. Немного придется повозиться с настройками болле сложных джойстиков: Sony Playstation, например.
Вот и все! В конечном итоге у Вас получился DirectInput совместимый джойстик, т.е. можно будет играть в любой windows игре, поддерживаютщей джойстик через драйверы DirectX. Необходимо только выбрать DirectPad Controller в настройках игры

Вариант второй SNESKey для WINDOWS:

Скачивайте драйвер. Обязательно посетите раздел, посвященный установке драйвера SNESKEY для ДОС. Структура конфигурационных файлов такая же, правда SNESKEY под WIN поддерживает меньшее различных устройств. В комплекте с драйвером поставляются конфигурационные файлы для различных устройств и игр. Сам SNESKEY под WIN представляет из себя некое подобие такстового редактора, в окне которого вы будете редактировать конфигурационный файл. Необходимо только найти соответствующий Вашему устройству файл, настроить нужным образом сочетание клавиш и нажать на кнопку EXECUTE


Содержание раздела