[GUIDA] Configurare i comandi di Reicast

Qui si parla di SEGA Dreamcast
Avatar utente
Guybrush
Site Admin
Messaggi: 1435
Iscritto il: gio feb 25, 2016 6:33 pm
Reputation: Locked

[GUIDA] Configurare i comandi di Reicast

Messaggioda Guybrush » dom ago 21, 2016 1:55 pm

Per configurare correttamente il joypad da usare con il Dreamcast dovete seguire questa guida. In particolare ho usato il joypad di XBOX 360, ma con i giusti adattamenti la guida assume carattere generale.

Prima di tutto installate o aggiornate evtest con

Codice: Seleziona tutto

sudo apt-get install evtest

Avviate il programma con

Codice: Seleziona tutto

sudo evtest | grep "value 0"

e vedrete una cosa simile a questa:

Codice: Seleziona tutto

pi@retropie:~ $ evtest | grep "value 0"
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:      Xbox Gamepad (userspace driver)
/dev/input/event1:      Xbox Gamepad (userspace driver) #2
Select the device event number [0-1]:

Inserite l'id della periferica, quindi nell'esempio sopra riportato 0 oppure 1, e premete invio.
Adesso iniziate a premere i bottoni del vostro joypad, in particolare per Dreamcast e per il controller dell'XBOX 360 vi serviranno questi:

Codice: Seleziona tutto

XBOX
START
A
B
X
Y
LT
RT
DIGITAL UP
DIGITAL DOWN
DIGITAL LEFT
DIGITAL RIGHT
ANALOG UP
ANALOG LEFT

Immagine

Prendete appunti del "code" che appare nella shell quando premete i tasti, per esempio premendo il tasto A vedrete apparire una riga simile a questa:

Codice: Seleziona tutto

Event: time 1471773851.632677, type 1 (EV_KEY), code 304 (BTN_SOUTH), value 0

quindi "304" è il numero che vi interessa.
Il pulsante XBOX va mappato su btn_escape (vedi più avanti) in modo che possa essere usato per uscire dall'emulatore

Create un file di testo con questo contenuto

Codice: Seleziona tutto

[emulator]
mapping_name = Xbox Gamepad (userspace driver)
btn_escape = 316

[dreamcast]
btn_a = 304
btn_b = 305
btn_x = 307
btn_y = 308
btn_start = 315
btn_dpad1_left = 296
btn_dpad1_right = 297
btn_dpad1_up = 294
btn_dpad1_down = 295
axis_x = 0
axis_y = 1

[compat]
btn_trigger_left = 312
btn_trigger_right = 313
axis_x_inverted = no
axis_y_inverted = no

sostitutendo i numeri riportati con quelli che avete verificato in precedenza. Inserite in "mapping_name" il nome indicato da evtest durante la selezione iniziale dell'id, ovvero

Codice: Seleziona tutto

/dev/input/event0:      Xbox Gamepad (userspace driver)

quindi il nome da usare in "mapping_name" sarà:

Codice: Seleziona tutto

Xbox Gamepad (userspace driver)

Salvate il file rinominandolo

Codice: Seleziona tutto

controller_XboxGamepad(userspacedriver).cfg

ovvero eliminate tutti gli spazi usati nel "mapping_name" e aggiungete il prefisso:

Codice: Seleziona tutto

controller_

Ricordatevi di cambiare l'estensione in .cfg. Fate l'upload del file (ad esempio con FileZilla) in

Codice: Seleziona tutto

/opt/retropie/configs/dreamcast/mappings/

Eseguite questo comando

Codice: Seleziona tutto

nano /opt/retropie/configs/dreamcast/emu.cfg

e verificate che il contenuto del sia questo:

Codice: Seleziona tutto

[audio]
backend = oss
disable = 0

[config]
Debug.SerialConsoleEnabled = 0
Dreamcast.Broadcast = 4
Dreamcast.Cable = 3
Dreamcast.RTC = 2102926761
Dreamcast.Region = 3
Dynarec.Enabled = 1
Dynarec.idleskip = 1
Dynarec.unstable-opt = 0
aica.LimitFPS = 1
aica.NoBatch = 0
aica.NoSound = 0
bios.UseReios = 0
pvr.MaxThreads = 3
pvr.Subdivide = 0
pvr.SynchronousRendering = 0
pvr.rend = 0
rend.UseMipmaps = 1
rend.WideScreen = 0
ta.skip = 0

[input]
evdev_device_id_1 = 0
evdev_device_id_2 = -1
evdev_device_id_3 = -1
evdev_device_id_4 = -1
joystick_device_id = -1

[reios]
ElfFile =

[validate]
OpenGlChecks = 0

Nella sezione "[input]" del file aggiungete questa riga

Codice: Seleziona tutto

evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_XboxGamepad(userspacedriver).cfg

dove "controller_XboxGamepad(userspacedriver).cfg" è il file di configurazione creato. Sempre nella stessa sezione, in

Codice: Seleziona tutto

evdev_device_id_1 =

aggiungete dopo l'uguale lo stesso id che avete selezionato in evtest (in questo caso proprio 0, ma potrebbe esserci un 15!).
In alcuni casi potrebbe esser necessario non inserire la riga

Codice: Seleziona tutto

evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_XboxGamepad(userspacedriver).cfg

Nel caso in cui il joypad non funzionasse rimuovetela

E' tutto, buon divertimento ;-)
"Dobbiamo costruire computer per le masse, non per le classi" J. Tramiel
_____________________________________________________________
Aiutiamo il forum con una donazione :-)

Hardware:
Raspberry Pi v1 B+ (x2)
Raspberry Pi v3 B


peppe_h
Messaggi: 10
Iscritto il: ven set 30, 2016 10:46 pm
Reputation: Locked

Re: [GUIDA] Configurare i comandi

Messaggioda peppe_h » sab nov 05, 2016 5:34 pm

e se volessi usare i tasti e joystick arcade installati sui pin gpio del raspi come fare?

Avatar utente
Guybrush
Site Admin
Messaggi: 1435
Iscritto il: gio feb 25, 2016 6:33 pm
Reputation: Locked

Re: [GUIDA] Configurare i comandi

Messaggioda Guybrush » sab nov 05, 2016 11:05 pm

peppe_h ha scritto:e se volessi usare i tasti e joystick arcade installati sui pin gpio del raspi come fare?

I tasti e il joystick riesci a usarli? In caso affermativo penso tu possa fare le stesse cose indicate nella guida
"Dobbiamo costruire computer per le masse, non per le classi" J. Tramiel
_____________________________________________________________
Aiutiamo il forum con una donazione :-)

Hardware:
Raspberry Pi v1 B+ (x2)
Raspberry Pi v3 B

DevilMayCry83
Messaggi: 3
Iscritto il: mer feb 28, 2018 12:35 am
Reputation: Locked

Re: [GUIDA] Configurare i comandi

Messaggioda DevilMayCry83 » sab mar 03, 2018 1:15 pm

Ciao,
Ho un problema con un controller della 8bitdo nes30 pro.
Forse ho sbagliato qualche passaggio, ma non riesco a farlo funzionare in modalitá senza fili.
Per tutti gli emulatori funziona perfettamente, con reicast sn costretto per nn so quale ragione ad usarlo con il cavo.
Dalle guide nn sn riuscito a risolvere.
Ho quasi completato la mia prima iso, ma questo problema mi sta mandando fuori di testa...
Qualcbe suggerimento???

yakumo_82
Messaggi: 4
Iscritto il: ven set 28, 2018 8:34 pm
Reputation: Locked

Re: [GUIDA] Configurare i comandi di Reicast

Messaggioda yakumo_82 » lun ott 01, 2018 4:32 pm

Ho seguito alla lettera la guida e fatto tutti i passaggi
Non riesco ad utilizzare per niente il 8bitdo nes30 pro, nemmeno col filo
Nella sezione del Dpad ho lasciato i valori del controller usato negli esempi, ma anche perchè in evtest quando premevo in su e a sinistra, non usciva nulla, invece destra e giu uscivano 16 e 17 (dovevo inserire questi valori?
Ma comunque i tasti non funzionano, perchè non sono riuscito a settare data ed ora al primo avvio di una rom.


hermit
Messaggi: 169
Iscritto il: ven dic 16, 2016 4:05 pm
Reputation: Locked

Re: [GUIDA] Configurare i comandi di Reicast

Messaggioda hermit » ven ott 05, 2018 8:30 pm

è successo anche a me che non venivano letti i tasti con il mio 8bitdo SF30 PRO

in modalità android,ho inserito la configurazione presente sul sito ufficiale per il NES30...e sembra funzionare correttamente
vi inserisco la configurazione usate( mi raccomando, salvate prima la configurazione presente)

https://github.com/RetroPie/RetroPie-Se ... /Dreamcast

Codice: Seleziona tutto

[emulator]
mapping_name = 8Bitdo NES30 Pro
btn_escape = 314

[dreamcast]
btn_a = 304
btn_b = 305
btn_c =
btn_d =
btn_x = 307
btn_y = 308
btn_z =
btn_start = 315
btn_dpad1_left =
btn_dpad1_right =
btn_dpad1_up =
btn_dpad1_down =
btn_dpad2_left =
btn_dpad2_right =
btn_dpad2_up =
btn_dpad2_down =
axis_x = 0
axis_y = 1
axis_trigger_left = 24
axis_trigger_right =

[compat]
btn_trigger_left = 310
btn_trigger_right = 311
axis_dpad1_x = 16
axis_dpad1_y = 17
axis_dpad2_x =
axis_dpad2_y =
axis_x_inverted = no
axis_y_inverted = no
axis_trigger_left_inverted =
axis_trigger_right_inverted =
axis_dpad1_y_inverted = no
axis_dpad1_x_inverted = no


edit: la mia configurazione è "Android"... mi ero confuso :P

Zorro
Messaggi: 22
Iscritto il: mar dic 05, 2017 10:13 am
Reputation: Locked

Re: [GUIDA] Configurare i comandi di Reicast

Messaggioda Zorro » gio nov 01, 2018 9:47 pm

yakumo_82 ha scritto:... Nella sezione del Dpad ho lasciato i valori del controller usato negli esempi, ma anche perchè in evtest quando premevo in su e a sinistra, non usciva nulla, invece destra e giu uscivano 16 e 17 (dovevo inserire questi valori?
...


Scusate se sarò prolisso, ma almeno cercherò di farmi capire meglio

Ho anche io lo stesso problema, ma con il joypad XBox 360 con cavo, tra l'altro ho notato che l'id indicato da evtest è diverso (Microsoft X-Box 360 pad), ma ho semplicemente indicato questo id anziché quello nella guida, creando il file mapping_name nominadolo "controller_MicrosoftX-Box360pad.cfg": ho seguito passo passo la guida di Guybrush ma con il comando evtest i tasti DIGITAL UP e DIGITAL LEFT i code hanno valore = 0

Codice: Seleziona tutto

XBOX Event: time 1541092706.962178, type 1 (EV_KEY), code 316 (BTN_MODE), value 1
START Event: time 1541092949.277317, type 1 (EV_KEY), code 315 (BTN_START), value 1
A Event: time 1541092984.257207, type 1 (EV_KEY), code 304 (BTN_SOUTH), value 1
B Event: time 1541093003.853125, type 1 (EV_KEY), code 305 (BTN_EAST), value 1
X Event: time 1541093040.469010, type 1 (EV_KEY), code 307 (BTN_NORTH), value 1
Y Event: time 1541093148.900618, type 1 (EV_KEY), code 308 (BTN_WEST), value 1
LT Event: time 1541093202.100426, type 1 (EV_KEY), code 312 (BTN_TL2), value 1
RT Event: time 1541093225.600343, type 1 (EV_KEY), code 313 (BTN_TR2), value 1
DIGITAL UP Event: time 1541093969.533310, type 3 (EV_ABS), code 0 (ABS_X), value 1820
DIGITAL DOWN Event: time 1541093309.803402, type 3 (EV_ABS), code 17 (ABS_HAT0Y), value 1
DIGITAL LEFT Event: time 1541093974.765177, type 3 (EV_ABS), code 0 (ABS_X), value 1922
DIGITAL RIGHT Event: time 1541093333.619128, type 3 (EV_ABS), code 16 (ABS_HAT0X), value 1

ANALOG DOWN Event: time 1541093423.857905, type 3 (EV_ABS), code 1 (ABS_Y), value 1448
ANALOG RIGHT Event: time 1541093458.097438, type 3 (EV_ABS), code 3 (ABS_RX), value 1434
.
La soluzione è quindi stata scartata in quanto infruttuosa.

Seguendo il consiglio di hermit, ho dato un'occhiata al suo link e ho provato a seguire l'ultima sezione "Mapping a Nonstandard Controller via @Folly" digitando da terminale

Codice: Seleziona tutto

cd /opt/retropie/emulators/reicast/bin
e quindi

Codice: Seleziona tutto

./reicast-joyconfig
.

Ho provato a configurare i tasti in questo modo, ma mi si chiede, dopo i tasti "exit" - "start" - "a" - "b", se voglio configurare i tasti "c" - "d" - "x" - "y" - "z" e altri.. Inizialmente ho pensato che la x e la y del controller potessero corrispondere con c e d, invece compaiono successivamente oltre a una z....
Il risultato è stato che così sono riuscito, grazie all'analog, a settare data e ora e a caricare una rom (Virtua Striker 2, per la precisione..), ma il giocatore corre solamente verso dx e sx, senza altre direzioni; gli altri tasti funzionano..

Dato che mi piace anche smanettare un po', proverò a controllare il file .cfg che si è creato e a verificarlo con quello indicato nel link del post precedente. Poi non so più che fare... non capisco come mai questa differenza con Guybrush, sarà forse per via del fatto che il mio joypad è wired?

Sto valutando l'idea di usare un altro controller (sto pensando di realizzare un arcade stick personalizzato, ma se e quando lo realizzerò vi farò sapere in apposite sezioni), per il momento mi arrendo e rifletterò su come intevenire

Edit:
Ho controllato il file .cfg, notando che è identico a quello riportato https://github.com/RetroPie/RetroPie-Setup/wiki/Dreamcast nella sezione "Xbox 360 Controller"

Codice: Seleziona tutto

[emulator]
mapping_name = Xbox Gamepad (userspace driver)
btn_escape = 0x13a

[dreamcast]
btn_a = 0x130h
btn_b = 0x131h
btn_c =
btn_d = 0x139h
btn_x = 0x133h
btn_y = 0x134h
btn_z = 0x138h
btn_start = 0x13Bh
axis_x = 0x00
axis_y = 0x01
axis_trigger_left = 0x0a
axis_trigger_right = 0x09

[compat]
axis_dpad1_x = 0x10
axis_dpad1_y = 0x11
In the depths of a mind insane
Fantasy and reality are the same

Zorro
Messaggi: 22
Iscritto il: mar dic 05, 2017 10:13 am
Reputation: Locked

Re: [GUIDA] Configurare i comandi di Reicast

Messaggioda Zorro » gio nov 01, 2018 10:22 pm

Aggiornamento quasi in tempo reale, per i possessori di controller XBox 360 wired:

Ho modificato il file .cfg che avevo creato in questa maniera

Codice: Seleziona tutto

[emulator]
mapping_name = Microsoft X-Box 360 pad
btn_escape = 0x13a

[dreamcast]
btn_a = 0x130
btn_b = 0x131
btn_c = 0x136
btn_d = 0x137
btn_x = 0x133
btn_y = 0x134
btn_z = 0x13d
btn_start = 0x13b
btn_dpad1_left  = 0x2c0
btn_dpad1_right = 0x2c1
btn_dpad1_up    = 0x2c2
btn_dpad1_down  = 0x2c3
axis_x = 0x00
axis_y = 0x01
axis_trigger_left = 0x02
axis_trigger_right = 0x05

[compat]
axis_dpad1_x = 0x10
axis_dpad1_y = 0x11


Ora funziona tutto alla perfezione!! :lol: :lol:

Peccato per l'orario e la data che ogni volta sono da settare.

Ps. comunque l'idea di realizzarmi un arcade stick non l'ho abbandonata, eh..
In the depths of a mind insane
Fantasy and reality are the same

Avatar utente
Newton
Messaggi: 181
Iscritto il: gio ago 03, 2017 7:43 am
Reputation: Locked

Re: [GUIDA] Configurare i comandi di Reicast

Messaggioda Newton » ven nov 02, 2018 7:44 am

Grazie per le info. Giusto una nota per un corretto remapping, i pulsanti originali sono rimappati sul RetroPad in questo modo:

Codice: Seleziona tutto

Original    RetroPad
X              Y
Y              X
A              B
B              A

Dovete quindi fare le associazioni corrette, mi raccomando, è importante per sfruttare tutto al meglio

Zorro
Messaggi: 22
Iscritto il: mar dic 05, 2017 10:13 am
Reputation: Locked

Re: [GUIDA] Configurare i comandi di Reicast

Messaggioda Zorro » ven nov 02, 2018 10:24 pm

Newton ha scritto:Grazie per le info. Giusto una nota per un corretto remapping, i pulsanti originali sono rimappati sul RetroPad in questo modo:

Codice: Seleziona tutto

Original    RetroPad
X              Y
Y              X
A              B
B              A

Dovete quindi fare le associazioni corrette, mi raccomando, è importante per sfruttare tutto al meglio


Perdonami la franchezza, ma non ho capito se stai parlando con me.. ;) :D
Mi stai forse dicendo che ho invertito i tasti? Il controller però funziona correttamente...
In the depths of a mind insane
Fantasy and reality are the same



Torna a “SEGA Dreamcast”

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite