MKDD Tint Issue RPI5
-
@roslof said in MKDD Tint Issue RPI5:
@gvx64 said in MKDD Tint Issue RPI5:
Has anybody tested Resident Evil 4 yet? I am curious to know if this game is playable on the Pi5 using this build.
I'll start looking into it now.
Journey so far with Resident Evil 4, again stock Pi 5 and no alterations to the dolphin 5.0 settings:
GETTING STARTED
- Again, can't use .RVZs, so this was tested with an .ISO build.
- Running dolphin-emu (not the no-gui version, so things will only get better)
- Started a New Game
INTRO
- Everything smooth up until when the game switches from pre-rendered videos to in-game cinematics. Frequent pauses and pops every time the camera changes position, and in some scenes with fog/lighting effects (car headlights with road dust as an example)
- Communication tool between Leon and Hunnigan renders well throughout the game
GAMEPLAY
- By design, FPS is locked to 30FPS.
*General gameplay typically within 28-30FPS, with periodic dips below. Overall seems very playable, especially in closed-in areas - Cut-scene moments and forced camera swaps during battle sequences often slow down or freeze for a moment
Overall, very playable if you don't mind occasional pops and hiccups, especially with cut-scenes. Game seems to render fine with a few flickery things that appear here and there, but nothing too distracting, Not being able to use compressed .RVZs is unfortunate -- especially for this game which is a monster uncompressed as two (2) disc ISOs. I believe CSOs are supported, so might try to create some of those.
-
@roslof Thanks again for your help here with testing. It's much appreciated.
It looks like .RVZ support got added in dolphin-emu-5.0-12188:
https://dolphin-emu.org/download/dev/99822518994d62def4e336f6746d6a2e2d108fb2/
I will spend a little time and see how doable it might be to backpatch the changes of 5.0-12188 into 5.0-4544. I can't promise anything as 7,000 commits is a lot revisions where major structural changes to the code may have occurred in that time that could make a back-patch very difficult. If this were the video backend or JIT cores I would say there is no way I could roll-forward the code that far. But we might get lucky if the IO core is a more sparsely maintained section of the code and that there aren't too many changes. I will give it a try and I will let you know if I make any progress implementing rvz support into this old version of dolphin.
-
@sugarfree said in MKDD Tint Issue RPI5:
I haven't tried it yet, but if I find a way to do it, I will post it in the retropie-extra repo of course.
Sorry guys, I couldn't get a script working for this emulator.
-
@roslof I just wanted to let you know that I have pushed a new master that has .rvz support as per the changes in 5.0-12188 (build instructions same as above). This build should now be able to open and play .rvz files. I converted a few of my iso's to rvz's (Baten Kaitos Eternal Wings and Mario Golf) and there doesn't appear to be any noticeable loss in performance between the iso and rvz formats of these games. That being said, please let me know if you have different experiences running rvz files.
@sugarfree Can you please give this install script a try. You should just have to make a file called "dolphin-rpi.sh" in /home/pi/RetroPie-Setup/scriptmodules/emulators and then paste the contents below into it. This isn't the prettiest implementation but make install was giving me all kinds of headaches and so I ended up just using the script to manually copy files into the proper location.
#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="dolphin-rpi" rp_module_desc="Gamecube/Wii Dolphin Modified from 5.0-4544 for Pi Users" rp_module_help="ROM Extensions: .elf .dol .gcm .iso .rvz .wbfs .ciso .gcz .wad .dff\n\nCopy your Gamecube roms to $romdir/gc and Wii roms to $romdir/wii" rp_module_licence="GPL2 https://github.com/gvx64/dolphin-rpi/blob/master/license.txt" rp_module_repo="git https://github.com/gvx64/dolphin-rpi.git master" rp_module_section="exp" rp_module_flags="aarch64 vulkan" function depends_dolphin-rpi() { local depends=(cmake gcc-11 g++-11 pkg-config libasound2-dev libopenal-dev libevdev-dev libgtk2.0-dev qtbase5-private-dev) isPlatform "kms" && depends+=(xorg matchbox-window-manager) getDepends "${depends[@]}" } function sources_dolphin-rpi() { gitPullOrClone } function build_dolphin-rpi() { mkdir build cd build # use the bundled 'speexdsp' libs, distro versions before 1.2.1 trigger a 'cmake' error cmake .. -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DBUNDLE_SPEEX=ON -DENABLE_AUTOUPDATE=OFF -DENABLE_ANALYTICS=OFF -DUSE_DISCORD_PRESENCE=O> make clean make md_ret_require="$md_build/build/Binaries/dolphin-emu" } function install_dolphin-rpi() { #copy binaries to /opt/retropie/emulators/dolphin-rpi cd build/Binaries/ mkdir /opt/retropie/emulators/dolphin-rpi/ mkdir /opt/retropie/emulators/dolphin-rpi/bin/ mv dolphin-emu /opt/retropie/emulators/dolphin-rpi/bin/ mv dolphin-emu-nogui /opt/retropie/emulators/dolphin-rpi/bin/ #use /home/pi/DolphinConfig5.0/ as the configuration/settings/save file directory cd .. mkdir /home/pi/DolphinConfig5.0/ mkdir /home/pi/DolphinConfig5.0/Config/ mv ../Data/Sys/GameSettings/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/GC/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/Wii/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/Maps/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/Resources/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/Shaders/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/Themes/ /home/pi/DolphinConfig5.0/ mv ../Data/Sys/codehandler.bin /home/pi/DolphinConfig5.0/ mv ../Data/Sys/totaldb.dsy /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-de.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-en.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-es.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-fr.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-it.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-ja.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-ko.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-nl.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-pt.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-ru.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-zh_CN.txt /home/pi/DolphinConfig5.0/ mv ../Data/Sys/wiitdb-zh_TW.txt /home/pi/DolphinConfig5.0/ } function remove_dolphin-rpi() { rm -r /home/pi/DolphinConfig5.0/GameSettings/ rm -r /home/pi/DolphinConfig5.0/Maps/ rm -r /home/pi/DolphinConfig5.0/Resources/ rm -r /home/pi/DolphinConfig5.0/Shaders/ rm -r /home/pi/DolphinConfig5.0/Themes/ rm -r /home/pi/DolphinConfig5.0/Config/ rm /home/pi/DolphinConfig5.0/codehandler.bin rm /home/pi/DolphinConfig5.0/totaldb.dsy rm /home/pi/DolphinConfig5.0/wiitdb-de.txt rm /home/pi/DolphinConfig5.0/wiitdb-en.txt rm /home/pi/DolphinConfig5.0/wiitdb-es.txt rm /home/pi/DolphinConfig5.0/wiitdb-fr.txt rm /home/pi/DolphinConfig5.0/wiitdb-it.txt rm /home/pi/DolphinConfig5.0/wiitdb-ja.txt rm /home/pi/DolphinConfig5.0/wiitdb-ko.txt rm /home/pi/DolphinConfig5.0/wiitdb-nl.txt rm /home/pi/DolphinConfig5.0/wiitdb-pt.txt rm /home/pi/DolphinConfig5.0/wiitdb-ru.txt rm /home/pi/DolphinConfig5.0/wiitdb-zh_CN.txt rm /home/pi/DolphinConfig5.0/wiitdb-zh_TW.txt # Do not delete GC or Wii save file directories upon emulator uninstall # rm -r /home/pi/DolphinConfig5.0/GC/ # rm -r /home/pi/DolphinConfig5.0/Wii/ # rm -r /home/pi/DolphinConfig5.0/ } function configure_dolphin-rpi() { mkRomDir "gc" mkRomDir "wii" local launch_prefix isPlatform "kms" && launch_prefix="XINIT-WM:" addEmulator 0 "$md_id" "gc" "$launch_prefix$md_inst/bin/dolphin-emu-nogui -e %ROM% -u /home/pi/DolphinConfig5.0/" addEmulator 1 "$md_id-gui" "gc" "$launch_prefix$md_inst/bin/dolphin-emu -b -e %ROM% -u /home/pi/DolphinConfig5.0/" addEmulator 2 "$md_id-configure" "gc" "$launch_prefix$md_inst/bin/dolphin-emu -u /home/pi/DolphinConfig5.0/" addEmulator 3 "$md_id-configure-hotkeys" "gc" "$launch_prefix$md_inst/bin/dolphin-emu-qt2 -u /home/pi/DolphinConfig5.0/" addEmulator 0 "$md_id" "wii" "$launch_prefix$md_inst/bin/dolphin-emu-nogui -e %ROM% -u /home/pi/DolphinConfig5.0/" addEmulator 1 "$md_id-gui" "wii" "$launch_prefix$md_inst/bin/dolphin-emu -b -e %ROM% -u /home/pi/DolphinConfig5.0/" addEmulator 2 "$md_id-configure" "wii" "$launch_prefix$md_inst/bin/dolphin-emu -u /home/pi/DolphinConfig5.0/" addEmulator 3 "$md_id-configure-hotkeys" "wii" "$launch_prefix$md_inst/bin/dolphin-emu-qt2 -u /home/pi/DolphinConfig5.0/" addSystem "gc" addSystem "wii" [[ "$md_mode" == "remove" ]] && return # preset options used for Raspberry Pi 4 (Bookworm) - modify for your build as desired cat >"$home/DolphinConfig5.0/Config/Dolphin.ini" <<_EOF_ [Core] OverclockEnable = False EnableCheats = False GFXBackend = Vulkan CPUCore = 4 Fastmem = True CPUThread = True SyncOnSkipIdle = True FPRF = False AccurateNaNs = False AudioLatency = 20 AutoDiscChange = True [Display] FullscreenDisplayRes = Auto Fullscreen = True RenderToMain = True KeepWindowOnTop = True [Interface] ConfirmStop = False [General] ISOPath0 = "$home/RetroPie/roms/gc" ISOPath1 = "$home/RetroPie/roms/wii" ISOPaths = 2 WiiSDCardPath = /home/pi/DolphinConfig5.0/Wii/sd.raw _EOF_ chown -R $user:$user "$home/DolphinConfig5.0/Config" }
-
@gvx64 said in MKDD Tint Issue RPI5:
@roslof I just wanted to let you know that I have pushed a new master that has .rvz support as per the changes in 5.0-12188 (build instructions same as above).
This sounds terrific! Thank you for this. I'll check it out as soon as I find a few cycles. Cheers!
-
@gvx64
Many thanks for everything you are doing! I tried the script, and the installation was completed without errors.
I haven't figured out how to launch the games so I can test it further. It looks like the script doesn't create the shortcuts that Dolphin creates (runcommand), games aren't visible to ES. Also, after the installation, I saw an error when I was running RetroPie-Setup:/home/pi/RetroPie-Setup/scriptmodules/emulators/dolphin-rpi.sh: Line 56 : syntax error near unexpected near unexpected token'
/home/pi/RetroPie-Setup/scriptmodules/emulators/dolphin-rpi.sh: Line 56 : '}'
-
@sugarfree Yeah, sorry I have been working on it on-and-off today after I posted it and discovered that there were issues. I am getting very close to having it working I will let you know once it is ready to go and I will update the previous post with the final script.
-
@sugarfree Can you please give the above script another try?
It's a conceptually tough decision about what to do when somebody uninstalls this emulator. Dolphin has a shared configuration and save file directory. I agree that uninstalling should remove all config files but I am very uncomfortable about deleting save files. As a result, I am leaving the GC and Wii subfolders in the DolphinConfig5.0 directory when somebody uninstalls. You can change this by removing the comments from the lines in the remove_dolphin-rpi() function if you would prefer.
I hopes that this script works better. Please let me know if you see any other errors or areas for improvement.
-
@gvx64 Emulator is working and it's running the Resident Evil 4 very well (fully playable)!!
I Encountered an issue when attempting to launch dolphin-rpi-gui from runcommand menu. It failed to start correctly, displaying two error messages. Additionally, I was unable to configure the controller or modify other emulator settings. However, the keyboard functioned normally within the games.Error:Trying to access Windows-1252 fonts but they are not loaded. Games may not show fonts correctley, or crash.
Failed to load image from file "use/local/share/dolphin-emu/sys/Resources/dolphin_logo@2x.png"
-
@sugarfree Thank you for the feedback.
Regarding the controller configuration, you will need to configure your gamepad manually by exiting emulationstation and in the console typing:
sudo xinit /opt/retropie/emulators/dolphin-rpi/bin/dolphin-emu -u /home/pi/DolphinConfig5.0/
At this point you should see the dolphin emulator user interface pop up. You can then click on the "Controllers" icon (you will need a mouse and possibly a keyboard to do this). You can then configure your gamepad the normal way within dolphin and it should save a settings file in the Config folder within DolphinConfig5.0 which will carry over to emulationstation. You should also be able to specify your hotkeys in Options -> Hotkey Settings. This is also where you can customize other settings like the CPU Overrride and various graphical settings (although it is probably better to specify these settings on a per game basis in your game specific ini files in /home/pi/DolphinConfig5.0/GameSettings/). Exiting this session can be done with "CTRL + ALT + F1" followed by "CTRL + C" which will bring you back to the console.
EDIT: I just noticed that the hotkey menu in the interface does not appear to load with this build of dolphin. I will have to look into this.
Thanks for reminding me about the "failed to load image" error. This is a nuisance error. I will update the install script when I have some time so that it copies the Resources folder to the /usr/local/share directory. This error message shouldn't be a problem with the nogui version of dolphin since errors just get logged to the console and don't produce popups. Note that I think the nogui version runs a bit faster on the Pi anyways.
I am unfamiliar with the Windows-1252 error that you mentioned. I will have to look into it more to understand why it is getting generated. If it's just a popup and you are not noticing gameplay issues, I would recommend using the nogui version in emulationstation for the time being.
-
@gvx64 said in MKDD Tint Issue RPI5:
That being said, please let me know if you have different experiences running rvz files.
I converted Mario Kart Double Dash to .rvz format. Everything play-tested great! Nice integration, man. With this change, was able to free up at least a couple of GB for the games that require your 5.0. version.
Cheers!
-
@gvx64
Thank you again! I was able to configure the controller. I added the following line:dolphin-rpi-editor = "XINIT-WM:/opt/retropie/emulators/dolphin-rpi/bin/dolphin-emu -u /home/pi/DolphinConfig5.0/"
to the /opt/retropie/configs/gc/emulator.cfg file, and now it is possible to open the GUI from runcommand. We are doing the same with the new version of Dolphin.
The Windows-1252 error seems to appear only with the GUI version.
-
@gvx64 said in MKDD Tint Issue RPI5:
@sugarfree Can you please give this install script a try. You should just have to make a file called "dolphin-rpi.sh" in /home/pi/RetroPie-Setup/scriptmodules/emulators and then paste the contents below into it.
I did this and it does not appear to be showing up in the list of experimental scriptmodules I have available in RetroPie Setup.
-
Try the following:
from terminal window type:
cd /home/pi/RetroPie-Setup/scriptmodules/emulators
then
nano
and last copy/paste into the window that have open the content of the script and save it with name
dolphin-rpi.sh
with ctrl+o and ctrl+x to exit -
@sugarfree said in MKDD Tint Issue RPI5:
Try the following:
from terminal window type:
cd /home/pi/RetroPie-Setup/scriptmodules/emulators
then
nano
and last copy/paste into the window that have open the content of the script and save it with name
dolphin-rpi.sh
with ctrl+o and ctrl+x to exitThat worked. Now it's showing up.
So question, why is it that pasting it into a .txt file and FTPing it to the build didn't work? Just curious so for my own knowledge.
-
@gvx64
@sugarfree said in MKDD Tint Issue RPI5:Up and running! Mario Kart seems to be working great. A couple of questions...
-
I was able to configure my controller using your editor line added to emulators.cfg but....
-
I don't seem to be able to configure a way to exit a game from the controller, and I am able to do this with the normal version of Dolphin.
-
The ESC key on the keyboard only seems to pause the game and no longer exists out.
Any idea how I can exit out of a game without having to shut off the Pi which is what I'm doing now..
Also, I noticed I'm not getting any mouse pointer in the editor which is extremely annoying as I'm just having to guess where the mouse pointer is all the time.
-
-
@roslof Thanks a lot for letting me know. I am glad that it is working.
@sugarfree Thanks for letting me know, that is a good way to configure and avoid having to exit emulationstation.
@TPR Yeah, exiting dolphin is a bit of a pain on the Pi. Unfortunately, the hotkey customization window in this current build of dolphin doesn't seem to load (at least for me). I am going to look into this and see if I can get the hotkey window working with another commit. I am not sure if dolphin hotkeys will map to a gamepad, but at least you should be able to configure a simple button press on your keyboard like ESC to exit.
Right now, the easiest way I know of to exit dolphin (without hotkey customization) is to use the following keystrokes on your keyboard: "CTRL + ALT + F1" - this I believe will kill the x-session. Next, you may have to then keystroke "CTRL + C" to kill the residual dolphin process but I am unsure if this additional step always needs to be done within emulationstation. I know, this is a lot of buttons to press (and remember).
Myself, I use a custom GPIO gamepad driver written in C and so I was able to map the "sudo killall -9 dolphin-emu-nogui" bash command, at the driver level, whenever I push the L and START buttons on my N64 Controller which lets me exit dolphin very easily. This is also a good option if you ever have lr-emulators that freeze and become unresponsive to allow you to get back to emulationstation without having to hard restart your Pi or login remotely and kill the hanging processes since you can attach a whole bunch of different kill commands to this button combo.
If you know a bit about Linux you can probably do something similar using a shell script fairly easily that gets launched on startup on your Pi and checks button states every few seconds or so but the exact implementation will depend on your gamepad. I am not sure if there is interest in me trying to create such a script, but let me know if there is.
-
@TPR said in MKDD Tint Issue RPI5:
@sugarfree said in MKDD Tint Issue RPI5:
Try the following:
from terminal window type:
cd /home/pi/RetroPie-Setup/scriptmodules/emulators
then
nano
and last copy/paste into the window that have open the content of the script and save it with name
dolphin-rpi.sh
with ctrl+o and ctrl+x to exitThat worked. Now it's showing up.
So question, why is it that pasting it into a .txt file and FTPing it to the build didn't work? Just curious so for my own knowledge.
I have had this problem before on Linux with shell scripts. A windows-saved txt file has different line-ending characters than one saved on a Linux machine that will cause conflicts if you try to run it with bash. It's best to just paste your text file into a program like nano on your Linux machine and then save it, as per @sugarfree 's recommendations.
-
@gvx64 said in MKDD Tint Issue RPI5:
I have had this problem before on Linux with shell scripts. A windows-saved txt file has different line-ending characters than one saved on a Linux machine that will cause conflicts if you try to run it with bash. It's best to just paste your text file into a program like nano on your Linux machine and then save it, as per @sugarfree 's recommendations.
And that worked perfectly fine, so thanks for the suggestion.
-
@gvx64 said in MKDD Tint Issue RPI5:
@TPR Yeah, exiting dolphin is a bit of a pain on the Pi. Unfortunately, the hotkey customization window in this current build of dolphin doesn't seem to load (at least for me). I am going to look into this and see if I can get the hotkey window working with another commit. I am not sure if dolphin hotkeys will map to a gamepad, but at least you should be able to configure a simple button press on your keyboard like ESC to exit.
Gotcha. Yeah on normal dolphin I'm able to map SELECT + START to exit the emulator as well as the ESC key. Hoping you're able to get that working because this does work fantastic! Thank you!
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.