Homepage › Forums › RetroPie Project › Controller Configuration in RetroPie › Dreamcast
Tagged: controller, dreamcast, not working
- This topic has 56 replies, 22 voices, and was last updated 8 years, 7 months ago by Anonymous.
-
AuthorPosts
-
03/19/2016 at 00:31 #120827dgtliqdParticipant
Ok, so I finally found the solution by doing a little more web searching. This “should” help anyone experiencing issues setting up their controller(s). Disclaimer: so far I’ve only been able to set up 1 player with my X-Arcade tankstick, but it’s start. All credit goes to user, hoechst, on this thread (2nd post down):
Can’t manage to configure Dreamcast controls
byu/Stifu inRetroPieHis post will explain how to assign the correct key values to your controller and what ID is assigned to it. I will recommend that anyone who’s been altering the emu.cfg and controller mapping file, should delete all the reicast emulator files from RetroPie and reinstall from Source Binary. to start with a fresh install.
03/19/2016 at 10:09 #120856thakParticipantHi!
Thanks to your link on reddit i managed to set-up my nes30 pro (8bitdo) so for anyone who tried to configure this one here’s my config in “/opt/retropie/configs/dreamcast/mappings/controller_8BitdoNES30Pro.cfg”
[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 = noit may be adjusted to have Z and C button mapped on L2/R2 but for now it worked great on Daytona USA/Soul Calibur/Marvel VS Capcom 2
I’m going back play some more :D
Thks!
03/20/2016 at 01:31 #120904srfrboybobParticipantThak- thank you this helped so much. I am going to post on floobs YouTube about setting up dream cast. Several people are asking about this there.
03/20/2016 at 16:50 #120969AnonymousInactiveThanks. These mappings worked perfectly for my 8Bitdo SFC30. Reciast sorted!
I tested Virtua Tennis 2. It plays better than on the Pi 2, but there is still lag. but the game is playable. I think playing around with the overclock settings will help
03/20/2016 at 21:03 #120993dgtliqdParticipantYou’re welcome, Thak! I’m just glad it helped you and others out.
03/22/2016 at 18:33 #121168dgtliqdParticipantAlright folks, I have a new issue I’m hoping someone can help me resolve. I’ve been searching, but haven’t found a solution, yet. I got my X-Arcade tankstick configured and it works, but ONLY with 1 player. I’ve tried multiple things, but haven’t had any success. Below are the details of my configuration. Thanks in advance!
evtest | grep BTN output
————————-
Available devices:
/dev/input/event0: Xgaming X-Arcade
/dev/input/event1: Xgaming X-Arcade
/dev/input/event2: Logitech USB Receiver
/dev/input/event3: Logitech USB Receiver
/dev/input/event4: Xarcade-to-Gamepad Device 1
/dev/input/event5: Xarcade-to-Gamepad Device 2
/dev/input/event6: SNES-to-Keyboard Deviceemu.cfg file
————-
[audio]
backend = oss
disable = 0[config]
Debug.SerialConsoleEnabled = 0
Dreamcast.Broadcast = 4
Dreamcast.Cable = 3
Dreamcast.RTC = 1543276800
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 = 4
evdev_device_id_2 = 5
evdev_device_id_3 = -1
evdev_device_id_4 = -1
evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_Xarcade-to-GamepadDevice1.cfg
evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_Xarcade-to-GamepadDevice2.cfg
joystick_device_id = -1[reios]
ElfFile =[validate]
OpenGlChecks = 0controller_Xarcade-to-GamepadDevice1.cfg file
———————————————-
[emulator]
mapping_name = Xarcade-to-Gamepad Device 1
btn_escape = 314[dreamcast]
btn_a = 307
btn_b = 308
btn_c = 310
btn_d =
btn_x = 304
btn_y = 305
btn_z = 311
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 =
axis_trigger_right =[compat]
btn_trigger_left = 306
btn_trigger_right = 309
axis_dpad1_x =
axis_dpad1_y =
axis_dpad2_x =
axis_dpad2_y =
axis_x_inverted = no
axis_y_inverted = no
axis_trigger_left_inverted =
axis_trigger_right_inverted =controller_Xarcade-to-GamepadDevice2.cfg file
———————————————-
[emulator]
mapping_name = Xarcade-to-Gamepad Device 2
btn_escape = 314[dreamcast]
btn_a = 307
btn_b = 308
btn_c = 310
btn_d =
btn_x = 304
btn_y = 305
btn_z = 311
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 =
axis_trigger_right =[compat]
btn_trigger_left = 306
btn_trigger_right = 309
axis_dpad1_x =
axis_dpad1_y =
axis_dpad2_x =
axis_dpad2_y =
axis_x_inverted = no
axis_y_inverted = no
axis_trigger_left_inverted =
axis_trigger_right_inverted =03/25/2016 at 22:23 #121501vretroParticipantIs it possible to play 2 player games with Reicast?
I am using two identical iBuffalo controllers and only player 1 is visible in game/s.
03/25/2016 at 23:41 #121522AnonymousInactiveI have the same problems as dgtlqid and vretro…
I got my Xbox 360 wireless controller working, but I can’t get my second X360 wireless controller working with reicast. All other emus in retropie do it well.I tried several things like configuring emu.cfg to use another mapping profile for the second controller, but it does not work.
Here is my controller config for the x360 wireless (was some work to configure it right!):
[emulator]
mapping_name = Xbox 360 Wireless Receiver
btn_escape = 0x13a[dreamcast]
btn_a = 304
btn_b = 305
btn_c = 310
btn_d = 311
btn_x = 307
btn_y = 308
btn_z = 318
btn_start = 315
btn_dpad1_left = 704
btn_dpad1_right = 705
btn_dpad1_up = 706
btn_dpad1_down = 707
axis_x = 0
axis_y = 1
axis_trigger_left = 2
axis_trigger_right = 5[compat]
axis_trigger_left_inverted = yes
axis_trigger_right_inverted = no
axis_x_inverted = no
axis_x_inverted = noAnd here is my emu.cfg:
[audio]
backend = oss
disable = 0[config]
Debug.SerialConsoleEnabled = 0
Dreamcast.Broadcast = 4
Dreamcast.Cable = 3
Dreamcast.RTC = 1543276800
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 = 2
evdev_device_id_2 = 3
evdev_device_id_3 = 4
evdev_device_id_4 = 5
evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_Xbox360WirelessReceiver.cfg
evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/controller_Xbox360WirelessReceiver.cfg
evdev_mapping_3 = /opt/retropie/configs/dreamcast/mappings/controller_Xbox360WirelessReceiver.cfg
evdev_mapping_4 = /opt/retropie/configs/dreamcast/mappings/controller_Xbox360WirelessReceiver.cfg
joystick_device_id = -1[reios]
ElfFile =[validate]
OpenGlChecks = 0BTW: SSF2X for matching service is runnig nearly perfect on my Pi3 with that emulator!
CPU OC 1300 MHz, GPU/Core and SDRAM 520 MHz.
It would be so nice if I could play SSF2X in my living room with 2 Players on the Pi3 with the wireless X360 controllers instead of playing SF2 Collection on SEGA Saturn in my gaming room.03/25/2016 at 23:46 #121523dgtliqdParticipantWell, I’m glad to know I’m not the only one in this boat. Two players used to work flawlessly on the older version of reicast. Hopefully, someone has an answer. In the meantime, I’ll keep doing more searching on my end.
03/26/2016 at 02:14 #121534vretroParticipantIs it possible that the secret to our issues originate with the device id’s being used within emu.cfg
Below is how my emu.cfg looks:
[input]
evdev_device_id_1 = 0
evdev_device_id_2 = 1
evdev_device_id_3 = -1
evdev_device_id_4 = -1
evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_USB,2-axis8-buttongamepad.cfg
evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/controller_USB,2-axis8-buttongamepad.cfg
joystick_device_id = -1When I did a fresh install, my controllers were not added to the mappings folder when I first launched Reicast and the default evade_device id’s were different. It seems that -1 is used to indicate “missing” controllers. I had two attached.
I haven’t had success swapping these numbers around, yet.
Should there be a second (third or fourth) joystick_device_id for each controller too?
Does Reicast controllers get configured via EmulationStation like some other systems?
03/26/2016 at 17:02 #121552dgtliqdParticipantHi vretro,
You’re correct to assume that the device ID needs to match your controller in order to be recognized by reicast. It “usually” does a good job of identifying, but if it doesn’t, and you’re not sure what your device ID is, you need to go to the console (command line) and type: evtest | grep BTN
you’ll get something like this returned:
Available devices:
/dev/input/event0: Xgaming X-Arcade
/dev/input/event1: Xgaming X-Arcade
/dev/input/event2: Logitech USB Receiver
/dev/input/event3: Logitech USB Receiver
/dev/input/event4: Xarcade-to-Gamepad Device 1
/dev/input/event5: Xarcade-to-Gamepad Device 2
/dev/input/event6: SNES-to-Keyboard DeviceThe ‘event#’ corresponds to the device ID mapped to each of your controllers. You can then type the number of the controller you want the button mapping for and press enter, and you’ll be shown the values that correspond to each button on your controller. Hopefully this helps you get your controller set up.
03/26/2016 at 23:48 #121581vretroParticipantThanks dgtliqd, it seems that EmulationStation under RetroPie does actually create the controller mapping for Reicast, but in my case and for others in this thread it seems to map only one working controller.
I will use your pointers to try and see if I cant get the id’s I need to make two controllers work.
03/27/2016 at 20:58 #121680AnonymousInactiveIf I remap the Controller via EmulationStation, then it is also remapped for Reicast, but then only the analogue stick of one controller is working and I’m stuck at date settings and so I have to remap the Reicast controls manually again.
The device ID’s in emu.cfg match my controllers.
First one is the USB Keyboard, second one is the first X360 wireless controller and the following three are the theoretically three another X360 controllers. So the device ID’s of my two X360 wireless controllers are 2 and 3 and if I use the script, provided here:
https://github.com/reicast/reicast-emulator/blob/3ed2985d510733062e295f8d343cc717f158b4c7/shell/linux/tools/reicast-joyconfig.pythen both controllers are working with ID 2 and 3, but it shows no effect in Reicast and still only one Controller is working.
As I wrote in my last post, I tried to give ID 3 another mapping file (with the same values as for controller 1), but this also does not work, so I’m confused and wonder, if anybody has got two working USB Controllers with the latest Reicast release.
If so – please tell me and explain how :-)IMHO it could be a USB / USB device ID problem of the Reicast emulator itself.
03/28/2016 at 00:53 #121707vretroParticipantalfalfa, setting up player one is quite seamless on Retro Pie now with the EmulationStation controller integration.
I don’t know if it was ever possible to use more than one controller with earlier versions of Reicast before EmulationStation integration.
Its hard to tell if this is a RetroPie bug or Reicast.
03/29/2016 at 01:06 #121770vretroParticipantI posted this issue over on Github: https://github.com/RetroPie/RetroPie-Setup/issues/1407
03/29/2016 at 17:14 #121832AnonymousInactiveThank you, Vretro.
So now we have the answer and know that’s an issue of the emulator.
I hope they’ll implement second conrtoller support soon with some perfomance improvements and keep up the good work.03/29/2016 at 21:49 #121888hyellParticipantHello,
If you want, you can use a “dirty” solution.
Download source here : https://github.com/RetroPie/reicast-emulator
and change this file :
reicast-emulator-master\core\hw\maple\maple_cfg.cpp
At the end of file you got a function : mcfg_CreateDevices
just add one line to create a second controller
mcfg_Create(MDT_SegaController,1,5);
Recompile all and replace your executable reicast file.(Save it first)
(/opt/retropie/emulators/reicast/bin/reicast by /usr/local/bin/reicast)I just test it, and it’s ok.
(Raspberry PI 3 with xbox 360 controller and wiimote. Test with Soulcalibur)04/02/2016 at 00:18 #122182vretroParticipantThanks for posting your solution hyell.
I have made a note over on the GitHub issue relating to Reicast controllers:
https://github.com/RetroPie/RetroPie-Setup/issues/1407#issuecomment-204588745Is this a fix you would be able to add to RetroPie or Reicast, if it is regularly updated?
04/02/2016 at 13:08 #122202hyellParticipantHello,
Yes, I think we can fix it on Reicast.
I’ll try this week.
Can I ask you some question in private? (I never commit on github, and I don’t want make mistakes)04/03/2016 at 23:26 #122341vretroParticipantAwesome!
Really looking forward to being able to connect multiple controllers in Reicast.
I don’t have advanced knowledge of Github, but if you clone the repository, make your suggested changes then submit a pull request with a comment explaining what you fixed, that should be all there is to it!
There is a style guide on Github for the project:
https://github.com/RetroPie/RetroPie-Setup/wiki/Shell-Style-Guide04/04/2016 at 05:26 #122354stakstarParticipantIn addition to hyell’s fix I found that the:
/opt/retropie/configs/all/autoconf.cfg
has reicast set to an input of 1. I changed it to 4.# this file can be used to enable/disable retropie autoconfiguration features mupen64plus_audio = 1 mupen64plus_hotkeys = 1 mupen64plus_compatibility_check = 1 reicast_input = 4 es_swap_a_b = 0
after changing the input number in the above file I put in my input device info:
/opt/retropie/configs/dremcast/emu.cfg
[audio] backend = oss disable = 0 [config] Debug.SerialConsoleEnabled = 0 Dreamcast.Broadcast = 4 Dreamcast.Cable = 3 Dreamcast.RTC = 1543276800 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 joystick_device_id_2 = -1 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 = 6 evdev_device_id_2 = 7 evdev_device_id_3 = -1 evdev_device_id_4 = -1 evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_XboxGamepad(userspacedriver).cfg evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/controller_XboxGamepad(userspacedriver).cfg joystick_device_id = -1 [reios] ElfFile = [validate] OpenGlChecks = 0
Before changing the input number whenever I would reset my device_id’s and device_mappings this information it would go back to the default values whenever I started the dreamcast emulator.
I’m using 2 wireless Xbox 360 controllers and both are working on Power Stone in the dreamcast emulator.
I hope this helps anyone trying to get this going.04/04/2016 at 18:23 #122377AnonymousInactiveThank you stakstar, but it still does not work for me.
I changed the number to 4 in autoconf.cfg and I also made a reset of the input mapping when doing “configure input” in Emulationstation again.
Then I was stuck at the time/date settings again and then I did exchange the mapping file with my backup of “controller_Xbox360WirelessReceiver.cfg”.
I wonder why your mapping file is named “controller_XboxGamepad(userspacedriver).cfg”
I don’t have this file in the folder. But I think, it wouldn’t make a difference how the file is called?My emu.cfg looks the same as yours, but only the mapping file is called different but this is the mapping file that I’ve edited so that all controls are the same as real DC controller.
Where do I find that userspacedriver? Do I have to install it manually?
My wireless controllers work great in all other emulators… only Reicast has problems with more than one controller. -
AuthorPosts
- The forum ‘Controller Configuration in RetroPie’ is closed to new topics and replies.