Homepage › Forums › RetroPie Project › Everything else related to the RetroPie Project › configuring controllers in Reicast
- This topic has 110 replies, 15 voices, and was last updated 8 years, 11 months ago by labelwhore.
-
AuthorPosts
-
06/07/2015 at 19:18 #99249free5ty1eParticipant
[quote=99220]no luck here
tried to compile using your newest script but it doesn’t compile saying that reicast.elf is missing.
[/quote]
So, you might want to give it a go manually, without the help of the RetroPie-Setup scripts. Or actually, you might just need to update your RetroPie-Setup repo! Try
sudo ~/RetroPie-Setup/retropie_setup.sh
and select theU Update RetroPie-Setup script
option and then restart the Pi, and try building the Dreamcast emulator again.If that doesn’t do it for ya, here are some commands to build and install the latest Reicast .elf files over top of your existing installation:
`
cd ~
git clone https://github.com/free5ty1e/reicast-emulator.git
cd reicast-emulator
git checkout free5ty1e/rpi2/multiplayer
cd shell/rapi2
make
sudo cp -v *.elf /opt/retropie/emulators/reicast/
`
If you didn’t see any errors there, and you saw the two .elf files copy over, your Reicast should be up to date.
If this is the only method that works for building Reicast for you, then here are commands to update and build the latest changes (this will also be faster as it will only recompile the changed files, so you will get updates in a matter of seconds instead of 5-10 minutes for a full build.)
`
cd ~/reicast-emulator
git pull
cd shell/rapi2
make
sudo cp -v *.elf /opt/retropie/emulators/reicast/
`
If you WANT to perform a full / clean build, add a
make clean
command before themake
command.Hope this helps enable more Dreamcast!!
06/07/2015 at 20:53 #99251karlossParticipantThat was the issue, I needed me to map the dpad via the emu.cfg for me to navigate the menus..
It would be nice if there was a way to run something at terminal so I can see exactly what the emaulator expects (id wise) when I press the button on my pad..
Im having issues working out how to map my anaglogue stick as its displayed as Axis 1 and 1/-1 and in the config there is no Axis 1 / -1? just Axis 1 Axis 2 and such..
06/07/2015 at 22:32 #99255dishinsParticipantjust managed to compile and everything went golden with my PS3 button map! thx Free5style, awesome work mate!
can you post your overclock/gpu Pi configurations? i think if i can improve the performance a little bit it will be perfect, i still have a little sluttering in some games like Marvel vs Capcom 2.
06/07/2015 at 22:39 #99256free5ty1eParticipantI’m running with the standard “Pi 2” overclock selected from the
sudo raspi-config
command’sadvanced
menu. So just 1GHz. I’m running a 96MB GPU memory split (96MB for GPU, rest for CPU), and have ran fine with 64MB GPU as well.MVC2 runs playable for me but not full speed for sure.
06/08/2015 at 00:10 #99259free5ty1eParticipantOoh try MVC1, smoothest 2 player fighting experience I’ve seen so far :D
06/08/2015 at 01:37 #99261dishinsParticipant[quote]
So, you might want to give it a go manually, without the help of the RetroPie-Setup scripts. Or actually, you might just need to update your RetroPie-Setup repo! Trysudo ~/RetroPie-Setup/retropie_setup.sh
and select theU Update RetroPie-Setup script
option and then restart the Pi, and try building the Dreamcast emulator again.[/quote]
i’ll definitely try this out later, i think the problem is that im on top of an OSMC install (which is based no straight debian instead of raspbian) so it probably has some wrong or uninstalled dependencies, i had to compile your build in my other SD card with 2.6 Retropie and then move the binaries to my newest OSMC install but hey, dreamcast is worth the effort :)
trying MVC1 now!
06/08/2015 at 02:57 #99264labelwhoreParticipantDoes anyone know if it’s possible to set the frameskip value in emu.cfg? It’s supposed to be available from a config menu, but I’m not really sure how to access that. I wanted to mess with that setting to see if things run a little better with it on.
06/08/2015 at 03:23 #99265OmnijaParticipantWhat’s the performance like for power stone?
06/11/2015 at 17:13 #99514free5ty1eParticipantFrameskip: No, I have poked around the code for frameskip and it appears to be somewhat implemented but disabled completely. Not sure if what is in place actually works, but it definitely should be brought out to an emu.cfg setting. I’ll look into doing this.
Powerstone: Haven’t tried it. Let me know if you do!
———————————
Reicast new beta branch:
free5ty1e/rpi2/vmus-in-home-dir
Moar progress on Reicast. Better stability, VMUs and emu.cfg and BIOS files now reside in
/home/pi/.reicast
NOTE: YOU WILL NEED TO PLACE YOUR BIOS FILES OR LINKS TO THEM IN A NEW LOCATION:/home/pi/.reicast/data/
I’ve been able to have a Dreamcast game going on for several additional hours before some memory leak decides to confuse the Pi into crashing; instead of just 1 or 2 hours, I now am able to get a good 4-6 hours in before a crash!
Additionally, since the VMUs are no longer in memory while the Dreamcast is running, any saved games are written immediately and correctly to the SD card (instead of potentially being lost if the Pi crashes before the exit script can update your VMU files from the tmpfs). No need to have VMU files in the
/opt/retropie/emulators/reicast/
folder, smaller memory footprint and all that.For completeness, here’s my mapping section for my genuine PS3 controller connected via my CSR 4.0 bluetooth adapter, added to
emu.cfg
:UPDATED
[PLAYSTATION(R)3 Controller] button.0=Btn_Z button.1=Btn_C button.2=Btn_D button.3=Btn_Start button.4=DPad_Up button.5=DPad_Right button.6=DPad_Down button.7=DPad_Left button.8=Axis_LT button.9=Axis_RT button.10=DPad2_Left button.11=DPad2_Right button.12=Btn_Y button.13=Btn_B button.14=Btn_A button.15=Btn_X button.16=Quit axis.0=Axis_X axis.1=Axis_Y
You can add as many of these sections to the emu.cfg as you’d like, and if you have a matching controller name connected during Reicast startup, your custom button maps will be applied (overlaid, actually) to the default map.
Post your configs! :D
Here’s the updated script I’m using to build and install Reicast from my github repo (still piggybacking on the RetroPie script awesomeness)
UPDATED
#!/bin/bash echo "Temporarily modifying RetroPie module..." sed -i '/gitPullOrClone/c\gitPullOrClone "$md_build" https://github.com/free5ty1e/reicast-emulator.git free5ty1e/rpi2/vmus-in-home-dir' ~/RetroPie-Setup/scriptmodules/emulators/reicast.sh echo "Requesting a build through official RetroPie calls..." sudo ~/RetroPie-Setup/retropie_packages.sh reicast echo "Restoring original RetroPie-Setup state..." pushd ~/RetroPie-Setup git reset --hard popd
Here is the launch script — let’s call it
/home/pi/dreamcast.sh
— that I am using to run Reicast smoothly with no visual stuttering / pausing (uses tmpfs to run in memory and not allocate virtual memory on the SD card. Audio is still not that smooth. I am also thinking the tmpfs size can be dropped down further, was512MB
is now450MB
, I’ve only ever seen~60MB
used… let me know if someone plays with this number with good results):UPDATED
#!/bin/bash pushd /opt/retropie/emulators/reicast echo Reading the entire Reicast emulator into memory to execute from there... sudo mkdir tmpfs sudo mount -o size=450M -t tmpfs none tmpfs/ sudo cp -v * tmpfs/ cd tmpfs sudo aoss ./reicast.elf -config config:homedir=/home/pi -config config:image="$1" cd .. echo Ensuring any freshly-created VMUs are owned by pi and not root... sudo chown -R pi:pi .reicast echo Freeing up memory... sudo umount /opt/retropie/emulators/reicast/tmpfs sudo rm -rf tmpfs popd
…and here is the entry for your es_systems.cfg to launch via this script in EmulationStation, for completeness:
UNCHANGED
<system> <fullname>Sega Dreamcast - Reicast</fullname> <name>dreamcast</name> <path>~/RetroPie/roms/dreamcast</path> <extension>.cdi .CDI</extension> <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 "/home/pi/dreamcast.sh %ROM%" "dreamcast"</command> <platform>dreamcast</platform> <theme>dreamcast</theme> </system>
Enjoy!
06/11/2015 at 18:38 #99522labelwhoreParticipantThank you for all your work on this. Dreamcast is one of my favorite consoles by far!
06/11/2015 at 19:57 #99545free5ty1eParticipantNo problem! Dreamcast epicness must live on in the Pi!
I’m about to the point where I think its time to update the official experimental RetroPie Reicast module, and create a branch to always keep updated for RetroPie to use (something maybe like
free5ty1e/rpi2/retropie-reicast-updated
). It’s stable and improved enough that this would be worth it, then future updates will be easy enough to roll out…06/11/2015 at 19:58 #99546karlossParticipantLove the work your doing mate, new brach sounds good :)
06/11/2015 at 20:10 #99549free5ty1eParticipantNew branch
free5ty1e/rpi2/retropie-reicast-updated
created and pull request for upstream / original Reicast created.I’ll update the RetroPie module later when I get a chance :D
06/11/2015 at 22:22 #99644free5ty1eParticipantPull request submitted to RetroPie for review :D
06/11/2015 at 22:55 #99646karlossParticipantLegend..
06/12/2015 at 02:10 #99661free5ty1eParticipantGot this merged into RetroPie just now, so all you have to do now to enjoy the latest Dreamcast fixes is to run the RetroPie menu’s Experimental installer for Reicast, which now points to my
free5ty1e/rpi2/retropie-reicast-updated
branch!I’ll still post here when I make progress :D
06/12/2015 at 02:12 #99663free5ty1eParticipant(of course don’t forget to update your RetroPie-Setup script from the same menu!)
06/12/2015 at 15:58 #99677karlossParticipantHave just reinstalled using the experimental section of the latest version of the RetroPie-Setup, everything seems to be working fine..
Great work :)
06/12/2015 at 17:04 #99684labelwhoreParticipantAwesome! I’ll be updating Reicast tonight then. :)
06/12/2015 at 18:45 #99691karlossParticipantInfact, I have just updated my dreamcast.sh file with –
#!/bin/bash pushd /opt/retropie/emulators/reicast echo Reading the entire Reicast emulator into memory to execute from there... sudo mkdir tmpfs sudo mount -o size=450M -t tmpfs none tmpfs/ sudo cp -v * tmpfs/ cd tmpfs sudo aoss ./reicast.elf -config config:homedir=/home/pi -config config:image="$1" cd .. echo Ensuring any freshly-created VMUs are owned by pi and not root... sudo chown -R pi:pi .reicast echo Freeing up memory... sudo umount /opt/retropie/emulators/reicast/tmpfs sudo rm -rf tmpfs popd
and now my games won’t boot?
I just tried setting the esystems back to the standard launch and that doesn’t work either
<system> <fullname>Dreamcast</fullname> <name>dreamcast</name> <path>~/RetroPie/roms/dreamcast</path> <extension>.cdi .CDI</extension> <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ dreamcast %ROM%</command> <platform>dreamcast</platform> <theme>dreamcast</theme> </system>'
I will try and reinstall and see what happens.. :(
06/12/2015 at 20:50 #99708free5ty1eParticipantIf you haven’t already moved your Dreamcast BIOS files into
~/.reicast/data/
then that would do it. The new version is now using the home folder.There was also a brief period with a launch bug after the change was merged to RetroPie, but that is now fixed. If you haven’t tried already, update your RetroPie Setup to the latest and try rebuilding the emulator.
I can’t think of anything else that would cause your games to not boot, hopefully this helps!!
06/12/2015 at 21:47 #99711free5ty1eParticipantI updated the wiki too in case that helps anyone:
06/12/2015 at 22:08 #99712brainfeverParticipantOkay, first off – thank you! It is incredible being able to play Dreamcast games in Retropie.
I am having a problem though … I’ve followed the instructions, and I believe I have the newest version of everything. I have Marvel vs Capcom 2 running successfully (yay!) and I was able to edit the controls to my liking with emu.cfg.
However, I’m having an issue with the VMU. The first time I run the emulator, it makes all the virtual VMU files (I can see them in then /.reicast directory), but when I launch the game again, it says that no VMU is inserted/not enough blocks available. If I delete the VMU files, the game “finds” the VMU and is able to save again, but when I close and re-open the game, the same problem happens (no VMU/not enough blocks).
**EDIT** After playing around with this some more, it seems that the games can “see” the VMUs, as I can access them from the games’ VMU options, but after I’ve saved to one of the virtual VMUs once, the next time I load the game, they are now “full” but nothing can be loaded from them either.
It’s probably also worth noting that I had to manually change the permission for the /.reicast directory to “pi:pi” in order to be able to put the bios files into the “data” directory.
Any idea what could be happening here or how I could fix it? Thanks again for all the hard work to help make playing this stuff possible at all!
06/12/2015 at 22:10 #99713karlossParticipantFixed my issue, the bios wasn’t in the data folder, just the reicast folder :)
06/12/2015 at 23:03 #99715free5ty1eParticipant[quote=99712]Okay, first off – thank you! It is incredible being able to play Dreamcast games in Retropie.
I am having a problem though … I’ve followed the instructions, and I believe I have the newest version of everything. I have Marvel vs Capcom 2 running successfully (yay!) and I was able to edit the controls to my liking with emu.cfg.
However, I’m having an issue with the VMU. The first time I run the emulator, it makes all the virtual VMU files (I can see them in then /.reicast directory), but when I launch the game again, it says that no VMU is inserted/not enough blocks available. If I delete the VMU files, the game “finds” the VMU and is able to save again, but when I close and re-open the game, the same problem happens (no VMU/not enough blocks).
**EDIT** After playing around with this some more, it seems that the games can “see” the VMUs, as I can access them from the games’ VMU options, but after I’ve saved to one of the virtual VMUs once, the next time I load the game, they are now “full” but nothing can be loaded from them either.
It’s probably also worth noting that I had to manually change the permission for the /.reicast directory to “pi:pi” in order to be able to put the bios files into the “data” directory.
Any idea what could be happening here or how I could fix it? Thanks again for all the hard work to help make playing this stuff possible at all!
[/quote]
No problem! This is an issue I’ve run into before as well — sometimes, the VMU files don’t get formatted correctly upon creation. Fortunately, just requires the Dreamcast OS to reformat the VMU and you’re good to go!
You just got me thinking how to make this easy for everyone, and I’ve come up with a solution! Need to launch the Dreamcast as if there were no CD inserted. Here’s a trick to do that from EmulationStation’s Dreamcast menu…
Go to a terminal on the Pi (or remotely, whatever) and type in:
ln -sv fileThatDoesNotExist ~/RetroPie/roms/dreamcast/systemManager.cdi
Then restart EmulationStation. You should notice a SYSTEMMANAGER entry in the Dreamcast menu now, select it and you will get to the menu you need. Select
File
and you can manage your VMUs here… “Erase All” will reformat a VMU. This should sort your issue… and I’ve put in a pull request to RetroPie to get this added to the installation procedure.06/12/2015 at 23:17 #99717brainfeverParticipantAwesome, fantastic! After “formatting” the VMU, I was able to make a save file in MvC2, and it loaded again the next time I launched the game. Which is awesome, and makes it possible to unlock some characters! Thanks so much for your help!
I’ll also add that I was able to run Project Justice and Capcom vs SNK successfully … CvS is pretty choppy, but Project Justice runs quite well.
I’ll be watching this thread for further updates – this is all very cool :)
06/12/2015 at 23:18 #99718labelwhoreParticipantJust a heads up, that when I formatted the VMUs, the first 3 didn’t format correctly. I ended up copying the 4th one and renamed it to overwrite the first 3.
@Brainfever were the framerates on the CSes ok in Project Justice? I was playing it the other day, and while the actual gamepplay was fine, the CSes were very choppy. But that was like 3 updates ago.06/12/2015 at 23:19 #99719free5ty1eParticipantOoh, Rival Schools runs well?? I’m gonna find my copy nao!!
06/12/2015 at 23:22 #99721free5ty1eParticipant[quote=99718]Just a heads up, that when I formatted the VMUs, the first 3 didn’t format correctly. I ended up copying the 4th one and renamed it to overwrite the first 3.
[/quote]
Wonder what’s going on there? Was it perhaps after having played the Dreamcast for a bit without rebooting? I’ve noticed some strange behavior after exiting the emulator that was solved by rebooting … still unsure where the Reicast memory leak is but it’s doin something the OS doesn’t like sometimes!
I did reboot before formatting my VMUs to fix that problem the first time I ran into it, so this is good to be aware of.
06/12/2015 at 23:22 #99722labelwhoreParticipant[quote=99719]Ooh, Rival Schools runs well?? I’m gonna find my copy nao!!
[/quote]
I imagine it does since Project Justice runs pretty well.As far as when I formatted the VMUs, my Pi was not actually running long. I powered it up, did the update checked a few games, a couple mins each, then worked on the VMUs. My Pi couldn’t have been on for more than an hour and a half, and maybe 30 mins of that was Reicast actually running.
I though it was kinda strange, especially since all the other VMUs worked perfectly. It was an easy fix, regardless.
06/12/2015 at 23:39 #99726free5ty1eParticipantWierd. Agreed, good fix – at least 1 of the 8 generated VMUs should work, at which point just duplicate and rename the working one.
At some point I’ll probably notice why this happens in the first place and do something about it.
06/15/2015 at 07:23 #99882free5ty1eParticipantI believe I’ve made some good progress towards stability and sorting out the audio issues, although the audio is still choppy…
There are two pull requests that have been sitting in the Reicast repo for a bit now, and they have some nice compiler warning fixes and an audio system rework and reorganization.
No idea how long it will be until they are merged in and such upstream, but I took it upon myself to merge these fixes into my latest experimental branch
free5ty1e/rpi2/sound-fixes
if anyone wants to check it out. I’ve been testing it out like this most of the day yesterday and found it nice and stable, much longer before a crash.The audio backends are much more organized now too, so hopefully this will enable some sound choppiness fixes to be developed in the near future. I will probably go ahead and merge this into the main RetroPie branch this week at some point unless someone tests and finds a new issue that this might have caused.
06/15/2015 at 13:21 #99892karlossParticipantJust trying the new build, i just modified your script to use sound-fixes instead of vmus-in-home.
Will let you know tonight..
06/15/2015 at 19:25 #99907free5ty1eParticipantI’ve recreated the Reicast pull request from a separate branch from the one used for RetroPie builds, so I am free to merge in others’ pull requests for experimentation and improvement purposes while the Reicast repo takes its time getting pull requests merged upstream. (I want to move faster than upstream, lol)
https://github.com/reicast/reicast-emulator/pull/670
(This merely enables me to do as I said in the above post, and merge in others’ improvements for RetroPie to build without contaminating my Reicast upstream pull request)
Let me know if anyone encounters new issues with the latest experiment in the above post, I’ll get it merged into RetroPie for mass testing later this week if nothing major comes up.
Thanks!!
06/15/2015 at 23:25 #99924DjinnyParticipantShenmue Disk1 runs, it’s “playable” but not perfect, very reasonable. I think with a few more tweaks and it’ll play very smoothly. Free5tyle, i just want to say, i love you and the progress you’ve made on this.
For some reason game saving takes an unusually long time, but that could just be shenmue, i’ve not played it on my actual dreamcast recently, but i don’t remember game saves taking that long. (My pi2 is inside an original gameboy, so a portable dreamcast is amazing!)I do have a couple requests. Because mine is a portable gameboy, and saving takes a while, i wonder if Save States are possible. I use savestates for everything that i can. 1 button to save, 1 button to load.
Also is there a way i can reverse the axis on reicast? other emulators i can select which axis direction is what. Because my joystick(PS-Vita thumbstick) is technically upside down, left is right, and up is down. In other emulators like mupen64plus i can configure these, same with all the libretro emulators. I’d also need to change the sensitivity, my joystick only needs a very tiny deadzone, and has a rather limited maximum range, of the 32k range that mupen64 uses. i can only use about 15-16k ranges, so normally full forward would cause a character to walk or even tip-toe(mario), but by changing the sensitivity from 32k to 14.5k(ish), and the deadzone to (256, much lower than default) i can use my joystick normally.
-
AuthorPosts
- The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.