atarionline.pl jak zrobić joystik trzyprzyciskowy - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1: CommentAuthorPablo112
      • CommentTime24 Oct 2012 17:10 zmieniony
       
      W związku z prośbą otwieram wątek, mam nadzieje, że powstanie jakaś gra.
      Pomysł na trzyprzyciskowy joystik do atari zrodził się w głowie Sikora. ->link<-
      Ja robiąc przeróbkę joya zeemote pod androida, wykorzystałem ten pomysł, bo trzy przyciski do jednego fire wydawały się marnotrawstwem. Tak powstał arcade joy. ->link<-
      Z racji że nie jest to tania zabawka, i może nastręczyć pewnych trudności w wykonaniu, tu będą tylko praktyczne porady jak małym kosztem można wykonać taki joystik.

      1.potrzebny 9 żyłowy kabel z wtyczką do portu joya atari, prawie zawsze mamy tylko 7 żyłowy.
      Można kupić 10 żyłowy kabel i wtyczkę COM a następnie samemu polutować, ale nie polecam takiej zabawy.
      Lepiej zdobyć pada od SEGI, kabelek jest idealny!

      2.potrzebne 2 rezystory 1 kohm, koszt 50 gr
      3.teraz przydał by się joy który ma fizycznie 3 przyciski, istnieje tego trochę więc może znajdzie się coś w szafie
      Można z powodzeniem wykorzystać wspomnianego pada od SEGI, zrobiłem ostatnio taką przeróbkę, jak znajdę chwile to zamieszczę coś więcej.

      Idealne wydają się mi megastary znalazłem nawet model SV135 z 9 żyłowym kablem!

      Teraz tylko pozostaje podmiana kabla od SEGI do joya i lutowanie kabelków do przycisków.
      Pin 7 (+5V) z jednej strony do obu przycisków.
      Na drugim łączu przycisków lutujemy po rezystorze i odpowiednio do przewodu, pierwszy do pin9, drugi do pin5.

      Teraz już możemy sprawdzić programikiem który zamieścił Sikor (wciśnięty powinien dawać wynik =1) i odpalić na razie tylko Bioptronid
      • 2: CommentAuthorpajero
      • CommentTime24 Oct 2012 19:10 zmieniony
       
      Tu masz wersję 6-przyciskową - tańszą i z suportem QMEGa

      ->link<-

      tylko, że to wszystko takie na opak... przecież można napisać prosty handler do procka i go wlutować zamiast istniejącego
      • 3: CommentAuthorPablo112
      • CommentTime24 Oct 2012 19:10
       
      dobre, ale nie każdy lubi grać na padzie, poza tym trzeba przyjąć jakiś standard
      • 4:
         
        CommentAuthorlarek
      • CommentTime24 Oct 2012 20:10
       

      pajero:

      Tu masz wersję 6-przyciskową - tańszą i z suportem QMEGa

      A QMEG 5.xx jest już gdzieś dostępny?
      • 5:
         
        CommentAuthortdc
      • CommentTime25 Oct 2012 02:10 zmieniony
       
      Bioptronid to gra, która obsługuje taki dżojstik. Jednak to może doprowadzać do nieznanych jeszcze problemów, dlatego proszę o zgłaszanie takich jeśli ktoś zauważy coś niepokojącego (ale to jest możliwe do przetestowania tylko uruchamiając grę w wersji obsługującej taki dżojstik czyli przynajmniej od wersji 1,4).

      Powtórzę:
      Uwaga: z racji małej dostępności takiego joysticka, tego typu rozwiązania jeszcze nie są do końca przetestowane, dlatego może się okazać, że u kogoś z uszkodzonym portem PIA, kablem itp. mogą pojawiać się jakieś dziwne efekty (szczególnie po podłączeniu "wiosełek"), dlatego proszę raportować tego typu zdarzenia w tym wątku - nie wiemy jak powszechne mogą być.



      @Pablo112 - dzięki za taki fajny opis!
      • 6: CommentAuthorPablo112
      • CommentTime25 Oct 2012 15:10
       
      Po dokładnym przeczytaniu pomysł Pajero jest bardzo dobry, nic nie stoi na przeszkodzie dostosować się do tego schematu i dodając np. tylko 2 lub 3 przyciski do joya zbudować tylko obwód 1 między pin 7a 5, nawet bez QMEG-OS 5.xx da się napisać obsługę tych przycisków.
      Ważne żeby nie tworzyć do każdej gry innych standardów i innego zestawu rezystorów.
      Jest tylko pytanie, co się stanie jak wciśniemy w tym schemacie 2 przyciski dodatkowe równocześnie.
      • 7: CommentAuthorwieczor
      • CommentTime25 Oct 2012 16:10 zmieniony
       
      To jest akurat dość proste:
      żaden przycisk = 39+82+160 = 281 k
      fire 2 = 82 + 160 = 242 k
      fire 3 = 39 + 160 = 199 k
      fire 2+3 = 160 k
      fire 4 = 39 + 82 = 121 k
      fire 2+4 = 82 k
      fire 3+4 = 39 k
      fire 2+3+4 = 0 k

      Czyli wartości pośrednie - teraz wszystko zależy od przyjętego progowania - odległości wynoszą dla każdej kombinacji ok 40 kOhm - jeśli jest to bezpieczna odległość i zostaje miejsce na margines to ok. Oczywiście trzeba dodać jeszcze ten 4.7 - 5.6 k na początku (bardzo mądrze - nigdy nie ma całkowitego zwarcia).

      Artykuł Sikora zakłada pojedynczy rezystor 1 k na każdym wejściu. Czyli jego przyciskowi odpowiada naciśnięcie wszystkich trzech. O ile 4.7 - 5.6 k da odczyt mieszczący się w progu. @tdc - jaki próg założyłeś u siebie? Bo jeśli np. połowę zakresu to wtedy być może fire 4 lub 2+3 zadziała.

      QMEG nie ma tu nic do rzeczy - jedyną rzeczą jaką robi to mapuje drugie wiosło na SELECT, START i OPTION.
      • 8:
         
        CommentAuthortdc
      • CommentTime26 Oct 2012 03:10
       

      pajero:

      Tu masz wersję 6-przyciskową - tańszą i z suportem QMEGa

      Być może tańsze, ale w mojej ocenie:
      - 3 przyciski na Atari jest akurat (bo gier typu KOF robić nie będziemy)
      - wersja Sikora jest obsługiwana przez (chyba) wszystkie języki programowania oraz każdy system operacyjny (a nie tylko QMEG)
      • 9: CommentAuthorwieczor
      • CommentTime26 Oct 2012 09:10 zmieniony
       
      wersja Sikora jest obsługiwana przez (chyba) wszystkie języki programowania oraz każdy system operacyjny (a nie tylko QMEG)


      Ta wersja TEŻ jest obsługiwana przez wszystko - napisałem powyżej - daje określone odczyty na paddle i tyle. Odczytujesz tak samo tylko inaczej interpretujesz odczyt.

      A jeśli jako warunek zaprogramujesz - naciśnięcie = cokolwiek na porcie większego od 255 , to wtedy oba joysticki będą działać - na padzie wystarczy nacisnąć którykolwiek z dodatkowych guzików.

      QMEG nie jest potrzebny - QMEG powoduje tylko że 3 z 6 przycisków są zmapowane jako START / SELECT / OPTION. Bez niego masz 6 przycisków ogólnego przeznaczenia, z nim - 3.

      Różnica polega na tym że w wersji Sikora sprawdzasz tylko jeden próg - zwarte / rozwarte, tu robisz tablicę wartości i sprawdzasz w jakim zakresie jest odczyt. Jak pokazałem powyżej, odstępy są na tyle duże, że można odczytać dowolny przycisk i ich kombinację w sposób wiarygodny.
      • 10: CommentAuthorPablo112
      • CommentTime26 Oct 2012 15:10
       
      Tak masz racje wieczór, tylko programista musi uwzględnić ewentualnie kombinacje.
      O ile konstrukcja takiego pada jak przedstawiony wymusza użycie jedynie kciuka do wciskania któregoś z przycisków wystarczą trzy zamknięte niepokrywające się przedziały liczbowe.
      Jeśli mamy joya gdzie da się, a nawet dajmy na to jest potrzebne w grze wciśnięcie jednocześnie 2 dodatkowych przycisków musimy jasno określić w programie co ma się stać (działają obie funkcje przypisane, czy może inna) i potrzebujemy nowego przedziału wartości dla paddle.

      Tak więc jak sam dowiodłeś dla 3 dodatkowych przycisków musimy mieć 6 przedziałów liczb w zakresie (1-228) i do każdego jasno określić co ma się stać, by w ferworze walki nie wyszło że nie możemy np. walnąć rakietą B jeśli nie zwolniliśmy któregoś z pozostałych przycisków
      • 11: CommentAuthorwieczor
      • CommentTime26 Oct 2012 15:10
       
      No tak to jasne, ale przedziały są oddzielone dość dobrze od siebie - i uwzględniają wszystkie kombinacje. Natomiast nic nie stoi na przeszkodzie aby gra obsługująca wersję 2 przyciskową, obsługiwała bez żadnych modyfikacji tą 6 przyciskową - zależy jak zaimplementujesz sprawdzanie. Jeśli zakładasz że masz 2 dodatkowe fire i dla każdego z nich ustalisz, że jest wciśnięty jeśli odczyt jest powiedzmy <200 to zadziała wersja 2 przyciskowa i każdy z 3 przycisków w tej drugiej.
      • 12: CommentAuthorPablo112
      • CommentTime26 Oct 2012 16:10
       
      A konkretnie jakie przedziały wartości dla paddle w tym układzie 3 przycisków należy przyjąć?, nie mam chwilowo czasu żeby przekonać się lutując.
      • 13: CommentAuthorwieczor
      • CommentTime26 Oct 2012 19:10
       
      Ja też nie mogę a nikt z autorów się nie pofatygował :) A rozbieżności są duże, tu dają 280 kilo sumaryczny opór, a w przepisie na wiosełka 500... i bądź pan mądry