Artykuł Dwóprzyciskowy joy

Dotychczas nie rozpieszczałem graczy. Ale czasem lubię sobie pograć. Wiele gier potrafi obsługiwać dwuprzyciskowe joy˝e (np: FighTin). Ale skąd go wziąć? Podumałem i wpadłem na pomysł, przecież większość joystick˝ów posiada dwa przyciski, tyle, że połączone razem. Rzut oka na dokumentację komputera i można przystąpić do montażu. Dodatkowy przycisk jest przyłączany do pinu 9 portu joystck˝a. Tu napotkałem problem, brak jednej żyły w kabelku. Dla oszczędności kabel od joy˝a ma tylko 7 żyłek (masa, +5V, L, P, G, D i FIRE). Uznałem jednak, że nie potrzebuję auto ognia (fajne tłumaczenie). Żyłkę więc mamy, ale, żeby nie było łatwo powstał problem wtyczki. Obciąłem kabelek i założyłem wtyczkę DB9PIN-M. Szczegóły połączeń widać na rys.1

Przy szukaniu połączeń pomocny może być miernik uniwesalny, lub prosty próbnik złożony z żarówki (diody led z rezystorem) i baterii. W pierwszej kolejności podłączamy przewód masy, następnie przechylamy joystick do przodu, próbnikiem odnajdujemy kabelek i lutujemy do piny 1 złącza DB9PiN-M, następnie joy do tyłu i odnaleziony kabelek do pinu 2, itd.

Zadowolony ze swojego dzieła podłączyłem je do komputera. Uruchomiłem grę, wybrałem opcję gry joy˝em dwurzyciskowym i.... klapa. Niby działa, ale nie tak jak powinien. Wszystko jest ok do momentu użycia dodatkowego fire. Po puszczeniu gra zachowuje się tak jakbym cały czas trzymał przycisk. Co ciekawe po ponownym "odpaleniu" gry objawy są te same, tzn wszystko ok do momentu użycia przycisku. Nie wiecie ile się naszukałem błędu, jednak przypomniało mi się, że Amiga ma wejścia dla joystick˝ów analogowych kondensator (jak w C-64). Do pinu 9 podłączyłem miernik i okazało się, że panuje tam napięcie +5V. Po wciśnięciu przycisku spada do 0V. Puszczenie jednak nie powoduje powrotu do +5V, lecz trochę poniżej 1V. Sugeruje to wyraźnie obecność pojemności na wejściu. W późniejszym okresie wpadła mi w ręce dokumentacja (patrz rys. 2), która rozwieje wszelkie wątpliwości. Ale nie powiedziałem jak usunąć naszą niedoróbkę, wystarczy włączyć rezystor 4,7kohm pomiędzy pin 9 (fire 2), a pin 7 (+5V). Z konieczności należy to zrobić we wtyczce (patrz rys. 3) Na rysunku widzimy jakieś dziwne diody. Układu tego nie wypróbowałem, ale powinien działać. Jak wiemy w joystick˝u mogą być zwarte conajwyżej dwa przyciski odpowiedzialne za kierunek. Dzięki temu przez conajmiej dwie diody (i rezystory na wyjściach portu) płynie prąd (czasami przez 5). Jeśli autofire pobiera mało prądu to układ będzie funkcjonował prawidłowo. Jeśli czasem działa dobrze, czasem źle, należy zwiększyć pojemność kondensatora filtrującego zasilanie na płytce autofire lub dodać na zewnątrz 100uF/10V.

Jeśli zależy nam na autofire i mamy trochę cierpliwości (lub odpowiedni kabelek) można wykonać połączenia w/g rys. 4 Osobiście polecam kupno przedłużacza do myszki, obcięcie jednej wtyczki (tylko nie tą którą podłączamy do komputera) i wykonanie odpowiednich połączeń.

Mam nadzieję, że opisane tu usprawnienie zadowoli wielu graczy.

Sławomir Skrzyński