[Risolto] Mame e joystick

Un'area dove scambiarsi informazioni riguardanti l'uso di Ubuntu per giocare. Segnalazione di nuovi giochi e di problemi riscontrati.

[Risolto] Mame e joystick

Messaggioda IvanRX82 » giovedì 30 agosto 2018, 10:02

Buongiorno
Uso il mame da qualche tempo, ma non riesco a sistemare questa cosa...
Ho 3 joystick usb (un hori arcade stick e 2 joypad generici) ogni volta che apro il mame da nomi differenti ai controller e mi ritrovo ad impostare tutti i tasti.
Ho googlato molto, ma non riesco a trovare una soluzione uso mame alla 0. 199 e l'ultima distro lubuntu

Grazie.
Ultima modifica di IvanRX82 il venerdì 31 agosto 2018, 16:19, modificato 1 volta in totale.
IvanRX82
Prode Principiante
 
Messaggi: 14
Iscrizione: agosto 2018
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggioda DoctorStrange » giovedì 30 agosto 2018, 10:43

Magari con una regola udev potresti risolvere. Comunque qual'è il nome che cambia di volta in volta?
Avatar utente
DoctorStrange
Entusiasta Emergente
Entusiasta Emergente
 
Messaggi: 1710
Iscrizione: ottobre 2015
Località: Roma, Italia
Desktop: Unity
Distribuzione: Ubuntu 16.04.03 Xenial Xerus
Sesso: Maschile

Re: Mame e joystick

Messaggioda IvanRX82 » venerdì 31 agosto 2018, 7:06

Ti faccio un esempio.
Collego i controller e il mame assegna all'hori Joy p4 e ai 2 controller Joy p2 è p3...

Gioco, stacco tutto, magari dopo 2 paio di giorni riaccendo il mame, ricollego tutto mettendo ogni pad sulla stessa porta del giorno precedente) e mi ritrovo tutti i pad invertiti ed. Hori Joy p2 e i controller Joy p4 e p3... Quindi devo riconfigurare nuovamente 😐
IvanRX82
Prode Principiante
 
Messaggi: 14
Iscrizione: agosto 2018
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggioda IvanRX82 » venerdì 31 agosto 2018, 14:59

googlando sono arrivato a questa guida https://docs.mamedev.org/advanced/devicemap.html

da guida lancio mame -v e l'output dei controller è questo

Codice: Seleziona tutto
Joystick: Start initialization
Input: Adding joystick #0: USBUSBDevice (device id: USBUSBDevice)
Joystick: USB USB Device
Joystick:   ...  9 axes, 15 buttons 1 hats 0 balls
Joystick:   ...  Physical id 0 mapped to logical id 1
Input: Adding joystick #1: USBGamepad (device id: USBGamepad)
Joystick: USB Gamepad
Joystick:   ...  2 axes, 10 buttons 0 hats 0 balls
Joystick:   ...  Physical id 1 mapped to logical id 2
Input: Adding joystick #2: USBGamepad (device id: USBGamepad)
Joystick: USB Gamepad
Joystick:   ...  2 axes, 10 buttons 0 hats 0 balls
Joystick:   ...  Physical id 2 mapped to logical id 3
Input: Adding joystick #3: GenericX-Boxpad (device id: GenericX-Boxpad)
Joystick: Generic X-Box pad
Joystick:   ...  6 axes, 11 buttons 1 hats 0 balls
Joystick:   ...  Physical id 3 mapped to logical id 4
Joystick: End initialization


quindi dal loro esempio edito il mio mapdevice.cfg file così

Codice: Seleziona tutto
<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
    <system name="default" />
      <input>
            <mapdevice device="GenericX-Boxpad" controller="JOYCODE_1" />
            <mapdevice device="USBGamepad" controller="JOYCODE_2" />
            <mapdevice device="USBGamepad" controller="JOYCODE_3" />

</mameconfig>


infine dal file mame.ini dico di puntare la cartella dove ho messo il file...
abilito il file modificato....

Codice: Seleziona tutto
# CORE INPUT OPTIONS
#
coin_lockout              1
ctrlr                  mapdevice
mouse                     1
joystick                  1
lightgun                  0
multikeyboard             0
multimouse                0
steadykey                 0
ui_active                 0
offscreen_reload          0
joystick_map              auto
joystick_deadzone         0.3
joystick_saturation       0.85
natural                   0
joystick_contradictory    0
coin_impulse              0



lancio da terminale mame con mame -v.....
e boom! Crasha!

Codice: Seleziona tutto
Starting Video Screen ':screen'
Starting No Driver Loaded ':'
Attempting to parse: mapdevice.cfg
Ignoring MAME exception: Could not load controller file mapdevice.cfg
Fatal error: Could not load controller file mapdevice.cfg
sdl_kill: closing audio
Enter sdlwindow_exit
Leave sdlwindow_exit



dove sbaglio?
IvanRX82
Prode Principiante
 
Messaggi: 14
Iscrizione: agosto 2018
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggioda DoctorStrange » venerdì 31 agosto 2018, 15:04

La miaidea era invece di creare una regola udev che identificasse il tuo joystick, tramite la coppia [VID:PID] del suo USB e, in base a questa associargli od uno script od una qualche azione che permetta di riconoscerla n maniera costante.

Benchè creare una regola udev sia abbastanza semplice, ed abbondantemente documentato su internet, non sò come fare in modo che il sistema associ un nome specifico a quel dispositivo.

Prova a lanciare il comando
Codice: Seleziona tutto
usb-devices
con il joystick già connesso e controlla tutte le specifiche associate al tuo joystick. A quel punto realizzare una regola udev che riesca a rioconoscerlo, diventerebbe abbastanza semplice.
Avatar utente
DoctorStrange
Entusiasta Emergente
Entusiasta Emergente
 
Messaggi: 1710
Iscrizione: ottobre 2015
Località: Roma, Italia
Desktop: Unity
Distribuzione: Ubuntu 16.04.03 Xenial Xerus
Sesso: Maschile

Re: Mame e joystick

Messaggioda IvanRX82 » venerdì 31 agosto 2018, 15:31

ci provo, tanto ormai.... cmq oggi nelle varie prove che ho fatto ho lanciato il mame -v in maniera "sequenziale" cioè:

Senza controller attaccati; 1 controller ; 2 controller; 3 controller

il mame scalava il primo controller di numero, prima joystick 2 poi 3 e infine 4....
IvanRX82
Prode Principiante
 
Messaggi: 14
Iscrizione: agosto 2018
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggioda Ubuntello » venerdì 31 agosto 2018, 16:07

Ciao IvanRX82,

per far leggere correttamente il file “mapdevice.cfg”, al suo interno lascia solo queste righe (fai copia e incolla per non rischiare di sbagliare):

Codice: Seleziona tutto
<mameconfig version="10">
    <system name="default">
        <input>
            <mapdevice device="GenericX-Boxpad" controller="JOYCODE_1" />
            <mapdevice device="USBGamepad" controller="JOYCODE_2" />
            <mapdevice device="USBGamepad" controller="JOYCODE_3" />
        </input>
    </system>
</mameconfig>

Inoltre, assicurati che il file si trovi nella cartella “.mame/ctrlr” (ovvero, dopo aver abilitato la visualizzazione dei file nascosti, dalla tua cartella home dovrai spostarti in .mame, e lì creare la cartella ctrlr se non l'avevi già fatto; all'interno della cartella appena creata dovrà esserci il file mapdevice.cfg).

:ciao:


Modifica: non farci caso se avevo scritto “.sdlmame” al posto di “.mame”. Il fatto è che sulla distribuzione dove ho l'emulatore installato viene usata la prima, perché è stato compilato così, e ormai ci sono troppo abituato.
Ultima modifica di Ubuntello il venerdì 31 agosto 2018, 21:35, modificato 1 volta in totale.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen. Si organizzano anche partite online, sempre con Mednafen! | Retro games: hidden gems - top titles - genre guides
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
 
Messaggi: 452
Iscrizione: novembre 2010

Re: Mame e joystick

Messaggioda IvanRX82 » venerdì 31 agosto 2018, 16:11

Ubuntello sei stata la luce nel mio giorno più buio! (citazione cinematografica ci stava tutta)

Grazie mille!!!!!!

senti invece tutta la mappatura dei tasti la metto in .mame/cfg nel file default.cfg giusto?

p.s. la cartella che ho usato è .mame/ctrlr
IvanRX82
Prode Principiante
 
Messaggi: 14
Iscrizione: agosto 2018
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: [Risolto] Mame e joystick

Messaggioda Ubuntello » venerdì 31 agosto 2018, 21:30

senti invece tutta la mappatura dei tasti la metto in .mame/cfg nel file default.cfg giusto?

Puoi usare sia il “default.cfg” che il “mapdevice.cfg”, è una questione di preferenza. Però considera che entrambi hanno vantaggi e svantaggi:

  • MAME da la priorità al default.cfg; questo significa che se l'assegnazione di uno stesso tasto è presente in entrambi i file, verrà considerato solo quello nel default.cfg.

  • Se si desidera usare esclusivamente il mapdevice.cfg, per tutte le assegnazioni dei controller, bisogna rimuovere tutte le assegnazioni dal default.cfg (ovvero tutte le righe tra <input> e </input>), rendendolo così:

    Codice: Seleziona tutto
    <?xml version="1.0"?>
    <!-- This file is autogenerated; comments and unknown tags will be stripped -->
    <mameconfig version="10">
        <system name="default">
            <input>
            </input>
        </system>
    </mameconfig>


  • Il default.cfg può essere scritto da MAME, a differenza del mapdevice.cfg che verrà sempre aperto in sola lettura (se l'emulatore viene avviato senza prima di aver collegato tutti i controller configurati, e si va nelle impostazioni dell'input, può succedere che vengano perse le assegnazioni dei controller non connessi).

Se sei indeciso, vai con il default.cfg, e mantienine una copia di backup salvata da qualche parte, in modo da poterlo ripristinare qualora perdessi per errore delle assegnazioni. Ovviamente nulla ti impedisce di usare entrambi i file, ma se non ti è perfettamente chiaro come funziona, il rischio è di confonderti.

Spero che ti sia utile, buon divertimento!

:ciao:
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen. Si organizzano anche partite online, sempre con Mednafen! | Retro games: hidden gems - top titles - genre guides
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
 
Messaggi: 452
Iscrizione: novembre 2010

Re: [Risolto] Mame e joystick

Messaggioda IvanRX82 » sabato 1 settembre 2018, 1:27

Per sicurezza ho messo default.cfg in sola lettura e ho fatto la copia...

Grazie mille per l'aiuto!
IvanRX82
Prode Principiante
 
Messaggi: 14
Iscrizione: agosto 2018
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile


Torna a Videogiochi

Chi c’è in linea

Visualizzano questa sezione: 0 utenti registrati e 1 ospite