[Risolto] Mame e joystick

Un'area dove scambiarsi informazioni riguardanti l'uso di Ubuntu per giocare. Segnalazione di nuovi giochi e di problemi riscontrati.
Scrivi risposta
IvanRX82
Prode Principiante
Messaggi: 14
Iscrizione: lunedì 13 agosto 2018, 13:45
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

[Risolto] Mame e joystick

Messaggio da IvanRX82 »

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, 17:19, modificato 1 volta in totale.
Avatar utente
DoctorStrange
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2854
Iscrizione: mercoledì 14 ottobre 2015, 9:33
Desktop: Gnome3
Distribuzione: Ubuntu 22.04 LTS Jammy Jellyfish
Sesso: Maschile
Località: Roma, Italia

Re: Mame e joystick

Messaggio da DoctorStrange »

Magari con una regola udev potresti risolvere. Comunque qual'è il nome che cambia di volta in volta?
IvanRX82
Prode Principiante
Messaggi: 14
Iscrizione: lunedì 13 agosto 2018, 13:45
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggio da IvanRX82 »

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: lunedì 13 agosto 2018, 13:45
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggio da IvanRX82 »

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?
Avatar utente
DoctorStrange
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2854
Iscrizione: mercoledì 14 ottobre 2015, 9:33
Desktop: Gnome3
Distribuzione: Ubuntu 22.04 LTS Jammy Jellyfish
Sesso: Maschile
Località: Roma, Italia

Re: Mame e joystick

Messaggio da DoctorStrange »

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.
IvanRX82
Prode Principiante
Messaggi: 14
Iscrizione: lunedì 13 agosto 2018, 13:45
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggio da IvanRX82 »

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....
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 564
Iscrizione: sabato 27 novembre 2010, 19:42

Re: Mame e joystick

Messaggio da Ubuntello »

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, 22:35, modificato 1 volta in totale.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
IvanRX82
Prode Principiante
Messaggi: 14
Iscrizione: lunedì 13 agosto 2018, 13:45
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: Mame e joystick

Messaggio da IvanRX82 »

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
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 564
Iscrizione: sabato 27 novembre 2010, 19:42

Re: [Risolto] Mame e joystick

Messaggio da Ubuntello »

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 | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
IvanRX82
Prode Principiante
Messaggi: 14
Iscrizione: lunedì 13 agosto 2018, 13:45
Desktop: Lubuntu
Distribuzione: Ubuntu 18.04.1 LTS x86_64
Sesso: Maschile

Re: [Risolto] Mame e joystick

Messaggio da IvanRX82 »

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

Grazie mille per l'aiuto!
Scrivi risposta

Ritorna a “Videogiochi”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 7 ospiti