serwisy i portale internetowe dla firm

Joystick w E-UAE

Tani joypad za 10 złotych będący podróbką tego od Playstation tylko podłączany przez usb znakomicie nadaje się do grania w klasykę.

 

Na chińskim pudełeczku napisane jest, że działa bez dodatkowych sterowników już pod Win98 więc urządzenie bez problemu wykrywane jest także pod Linuksem. W systemie zgłasza się jako /dev/input/js0. Joy'a należy skalibrować, posłuży do tego program jscal z pakietu joystick, jeśli ktoś chciałby to wszystko zobaczyć w bardziej przystępnej formie może zainstalować pakiet jscalibrator (wszystko dostępne w standardowym repozytorium).

 

Konfiguracja joysticka w systemie

Podłączamy joystick, uruchamiamy program jscal z parametrem urządzenia:

~$ jscal /dev/input/js0 
Joystick has 6 axes and 10 buttons. 
Correction for axis 0 is broken line, precision is 0. 
Coeficients are: 112, 142, 5534751, 5534751 
Correction for axis 1 is broken line, precision is 0. 
Coeficients are: 112, 142, 5534751, 5534751 
... 
Correction for axis 5 is broken line, precision is 0. 
Coeficients are: 3, 3, 178956970, 178956970

 

Pad zgłasza się jako sześcio-osiowy, to zapewne dzięki osiom zarezerwowanym dla grzybków, które dodano w dual-shockach, ale nie w wersji budżetowej za dychę. To tak na prawdę jedyna komplikacja, jeśli trafisz urządzenie z ilością osi odpowiadającą faktycznie występującym manipulatorom, czyli np. klasyczny joystick z dwiema osiami czy prawdziwy dual-shock (krzyżyk i dwa grzybki) z sześcioma to praktycznie od razu można zacząć grać.

Ja jednak w tym układzie musiałem ustalić jaka oś odpowiada prawo-lewo, a jaka góra-dół i przekazać to do gry, czyli oczywiście do emulatora Amigi. Odpaliłem:

~$ jscal -c /dev/input/js0

zatrzymał się na

Move axis 0 to minimum position and push any button.
Axis 0:        1

Enter, Enter, ... dopiero trzecia oś zaczęła reagować na ruchy na padzie, czyli trzecia to lewo-prawo, przyciskam lewo i Enter ...

Move axis 3 to minimum position and push any button.
Axis 3:      0

później nic nie przyciskam, czyli że środkowe położenie manipulatora

Move axis 3 to center position and push any button.
Axis 3:      127

... i prawo, czyli skrajne maksymalne położenie

Move axis 3 to maximum position and push any button.
Axis 3:      255

Tak samo postępuję z osią pionową. Wiem już, że oś 3 i 4 to mój krzyżak - teraz trzeba to ustawić w e-uae.

 

Konfiguracja E-UAE pod joystick

Jest kilka nieudokumentowanych zmiennych w pliku konfiguracyjnym, które służą ustawieniom joysticka. Oto one:

joyport

joyport0=mouse
joyport1=joy0

Określa jakie urządzenie wpięte jest do wirtualnej Amigi. Możliwe parametry: mouse; kbd1, kbd2, kbd3 czyli układy klawiatury emulujące joystick; joy0, joy1 czyli kolejne systemowe joysticki.

 

input.config

input.config=1

Określa, która konfiguracja jest w ogóle brana pod uwagę, zaraz poniżej definujemy ustawienia dla konkretnych "inputów". Na początek potrzeba przynajmniej jeden, ale dobry, w kolejnych można trzymać inne warianty.

 

input

input.1.joystick.0.disabled=0
input.1.joystick.0.axis.3=JOY2_HORIZ.0
input.1.joystick.0.axis.4=JOY2_VERT.0
input.1.joystick.0.button.0=JOY2_FIRE_BUTTON.0
input.1.joystick.0.button.1=JOY2_2ND_BUTTON.0
input.1.joystick.0.button.2=JOY2_3RD_BUTTON.0

Konkretne wskazanie elementów urządzenia sterującego i zmapowanie go na wirtualny manipulator.

input.1 - czyli to co skonfigurowane w input.config

joystick.0 - czyli pierwszy joystick dostępny w systemie gospodarzu ( w Ubuntu się znaczy)

disabled=0 - czyli, że w ogóle włączony

axis.3 - oś, z naszego kontrolera, którą chcemy zmapować na joystick w Amidze

axis.4 - j.w.

JOY2_HORIZ.0 - określa wirtualny joystick Amigi oraz jego oś (tu poziomą), na którą przełożona będzie oś rzeczywistego kontrolera, jest tu pewna zmyłka, bo joysticki nie są tu numerowane od zera, a od 1, zatem JOY2 to wirtualny joystick siedzący w drugim porcie Amigi (czyli normalna konfiguracja w rzeczywistości, kiedy w porcie pierwszym była mysz, a w drugim joy)

JOY2_VERT.0 - j.w., ale dla osi pionowej

button.0 - pierwszy guzik rzeczywistego urządzenia

JOY2_FIRE_BUTTON.0 - podstawowy i często jedyny "fajer" w dżoju amigowym, jednak system Amigi pozwala na wykorzystanie do trzech guzików (np. Flashback obsługuje dwa)

 

Gotowy konfig

Gotowy konfig do doklejenia na koniec standardowego pliku konfiguracyjnego. Oczywiście należy zwrócić uwagę, żeby nie dublować parametrów. Jest to ustawienie pod pierwszego pada podłączonego do kompa, działa jak joy wetknięty do drugiego portu Amigi.

pad od playstation w e-uae

zwykły, dwuosiowy joystick

Komentarze

AMIGA RULEZ

Tniemy w sensibla jak kiedyś ...