Is Yabasanshiro emulator coming on retropie?
-
@GeekOB All of my games are in chd and they seem to work. If you want to try it out, no one's stopping you. I downloaded the whole repo from
https://github.com/joolswills/RetroPie-Setup
and took out the installer script and folder with the patch and stuck them in my ownRetroPie-Setup
folder. -
@Darksavior thoses glitches are glitches I can't remove RSG it looked like a texture is backwords, hopefully this fix is better then mines on Castlevania near the start by the mermens it goes black. And minor glitches.
Also set your video settings in retroarch to
Vertical sync, off
hard gpu sync off,
max saw chains images 4
sycn to exact C.F off. -
@notthesame No issues with the mermen, other than the black bar on top turning yellow. Attempting to save froze the whole game, though.
-
Good evening (morning),
Troubleshooting Requested:
I'm very interested in the effort here and completely realize this is incredibly early. I did jump in and attempt to run Yabasanshiro on my RPi4B (everything else in the world is running fine on it, BTW).
I had no trouble compiling/patching/installing with the lr-yabasanshiro module linked above. I copied relevant (and MD5 verified) BIOS files to a /yabasanshiro subfolder within BIOS, as directed by the module help.
Regardless of ROM (CD image) (.chd or cue/bin) I'm getting a black screen and hang. /dev/shm/runcommand.log tails with this:
[INFO] [GL]: VSync => off [INFO] SET_GEOMETRY: 320x224, aspect: 1.333. [INFO] [KMS]: New FB: 1920x1080 (stride: 7680). [INFO] [RCHEEVOS]: Load task finished
There are no significant Errors, Fatals or missing files noted in the log. At this point, I have to kill -9 RetroArch.
These CD images work fine with lr-yabause, so I know the problem is somewhere else on my side. User error, so to speak... (ugh).
Are there any other special dependencies I might be missing? Driver change or upgrade?
-
Hi @Darksavior
Unfortunately I get the following error:patching file yabause/src/yglshaderes.c Hunk #1 FAILED at 297 (different line endings). Hunk #2 FAILED at 319 (different line endings). Hunk #3 FAILED at 408 (different line endings). Hunk #4 FAILED at 467 (different line endings). Hunk #5 FAILED at 553 (different line endings). Hunk #6 FAILED at 1327 (different line endings). Hunk #7 FAILED at 1392 (different line endings). Hunk #8 FAILED at 1495 (different line endings). Hunk #9 FAILED at 1605 (different line endings). Hunk #10 FAILED at 1758 (different line endings). Hunk #11 FAILED at 1818 (different line endings). Hunk #12 FAILED at 1826 (different line endings). Hunk #13 FAILED at 1944 (different line endings). Hunk #14 FAILED at 1953 (different line endings). Hunk #15 FAILED at 2072 (different line endings). Hunk #16 FAILED at 2528 (different line endings). patch unexpectedly ends in middle of line Hunk #17 FAILED at 2634 (different line endings). 17 out of 17 hunks FAILED -- saving rejects to file yabause/src/yglshaderes.c.rej /home/pi lr-yabasanshiro patch /home/pi/RetroPie-Setup/scriptmodules/libretrocores/lr-yabasanshiro/01_shader_hack_rpi4.diff failed to apply
Any idea why this could happen? Did I miss a step?
-
@Darksavior said in Is Yabasanshiro emulator coming on retropie?:
Oc'd to 1900Mhz.
I expect gpu to be the main bottleneck for yabansanshiro
-
@BuZz thanks!
Did anyone manage to get the non-LR version to build? As that might offer better frame rates. I've got it to build and it leaves a yabasanshiro.a file that I can't seem to get to play a game - so I think I have the wrong build options.
https://github.com/devmiyax/yabause
Also, Retro Arena paid devmiyax to port it to the XU4 - there module (annoyingly they forked it and "branded" it and won't push anything upstream to here - but it's obvious what the change is) - the repo they point at is just a fork with a libpng fix https://github.com/Retro-Arena/RetroArena-Setup/blob/stable/scriptmodules/emulators/yabause.sh
I think that's probably the best route to get playable games at this time - the input config file looks fairly compatible too plus i think it tries to auto configure inputs if there is no config - devmiyax did have a vulkan branch - no idea how far he got - but when/if pi4 gets decent vulkan drivers that might be the only way a libretro Saturn emulator might be playable for 3D games.
-
@GeekOB Did you make the folder and transferred the .diff file as noted in the error message? No issues building here.
@roslof My saturn bios is in
/home/pi/RetroPie/BIOS/
I use CHD. The compatibility isn't as good as yabause's. Super Tempo did not load for me.
Astal requires the HLE bios for both emulators. It will not load with the real bios. -
Top work all! I'm amazed at how smoothly games like Sega Rally and Fighting Vipers run with it. There's a few graphical artefacts and some effects dont seem to work (the darkness effect in Elevator Action returns for example), but as my saturn has a dead drive i'll definitely take it as a way to get my Virtual On fix :D
Has anyone got any STV games to load? I have the stvy bios in the folder, but it was trying to load it with the normal Saturn bios.
some notes:
-all games loaded from CHD.
-Virtual Fighter remix has a weird bug where a punch can teleport you out of the arena (present in normal yabause - much improved here)
-Virtual on seems to randomly turn to garbage sometimes if you hover on Raiden (works fine other times)
-Quake worked fine in yabasanshiro (enemies didn't appear at all in normal yabause)
-Sky Target has some gibberish down the side of the screen, but crucially it works and is playable :) (the plane didn't even appear on screen in normal yabause)
-
@steeeb I'm interested in this thread. We've gotten it to build with different options - based on the Retro Arena build scripts - but alas every time we got it to run it returned an EGL error, which made us suspect that we must be missing something obvious at compile time.
I tried even building the non-LR from the LR fork code, yabasanshiro branch, as we know that that one does work on the Pi given the correct compile options, but alas were unsuccessful.
These were the last steps I compiled for myself. I needed to install some of the boost dependencies that were not installed - even though the LR version compiled correctly without them, which is already a telltale sign that I'm probably compiling things that might not be needed:
[clone lr-yabasanshiro per Buzz's script. apply patch] [cd to folder, mkdir build and cd build] in ../yabause/src/retro_arena/CMakeLists.txt add set(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -latomic") after set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") export CFLAGS="-O2 -DGIT_VERSION=\""7ae0de7"\" -march=armv8-a+crc -mtune=cortex-a72 -mfpu=neon-fp-armv8 -mfloat-abi=hard -ftree-vectorize -funsafe-math-optimizations -pipe -marm -mfpu=neon -DARM -DHAVE_LIBGL -DVERSION=\"3.1.0\" -DHAVE_LROUND -D_7ZIP_ST -DFLAC__HAS_OGG=0 -DFLAC__NO_DLL -DNO_CLI -DHAVE_BUILTIN_BSWAP16=1 -DHAVE_BUILTIN_BSWAP32=1 -DHAVE_C99_VARIADIC_MACROS=1 -DHAVE_FLOORF=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_STDINT_H=1 -DHAVE_SYS_TIME_H=1 -DIMPROVED_SAVESTATES -DARCH_IS_LINUX=1 -DDYNAREC_DEVMIYAX=1 -ffast-math -DHAVE_GLSYM_PRIVATE -DHAVE_SYS_PARAM_H -DHAVE_MUSASHI=1 -D_OGLES3_ -DHAVE_OPENGLES -DHAVE_OPENGLES3 -O3" cmake ../yabause -DGIT_EXECUTABLE=/usr/bin/git -DYAB_PORTS=retro_arena -DYAB_WANT_DYNAREC_DEVMIYAX=ON -DCMAKE_TOOLCHAIN_FILE=../yabause/src/retro_arena/rp64.cmake -DCMAKE_INSTALL_PREFIX=/opt/retroarena/emulators/yabause/ make ---- binary goes to build/src/retro_arena/yabasanshiro
@Darksavior I tested some games - mostly Radiant Silvergun, Die Hard Arcade, and a bit of the Sega arcade games - Virtua Racing, Sega Rally, Virtua Cop 2. Virtua Cop 2 will slow down a lot, only run at around 40fps or so.
I'm OC'ed at 2000 and V3D at 750, which does seem to help the most. I have a fan as Saturn emulation on any of the current emulators just gets the temperature to 80 in almost no time, and then it starts throttling. As soon as V3D drops the game starts rendering much slower.
@barbudreadmon you're absolutely right indeed. CPU and V3D seem to be the main bottlenecks here, but to be honest it does run at almost 50-55fps for the most part, which is not bad. Would you have any perspective into what compilation flags are you using to get the correct drivers for the Pi to work? I'd expect that to be at the core level, and not at the libretro layer? Or am I completely off track trying to get it to compile from your fork?
Thanks all and happy Sunday.
-
@Darksavior thank you. This is very unusual. I don't typically have issues like this. I would have thought it was related to BIOS, but everything seems to check out. Verbose logging yields nothing of interest. I did learn that removing the BIOS and having the BIOS yield the same results. Nothing in the log(s). Bizarre.
Symptom: With EmulationStation, launching emulator lr-yabasanshiro, the screen remains completely black. No Saturn system boot. No audio. Not a single pixel renders. Then it hangs. Must manually kill retroarch.
BIOS were placed in both ~/BIOS and ~/BIOS/Yabasanshiro:
stvbios.zip
md5: 53a094ad3a188f86de4e64624fe9b3casaturn_bios.bin
md5: af5828fdff51384f99b3c4926be27762I did try several different versions of stvbios.zip, but other sites mentioned the one I posted above should be fine.
I've also tried:
- Nuking/rebuilding lr-yabasanshiro
- Different BIOS
- Different Saturn Disk Images
- Different formats (.chd, .cue/.bin)
- Latest MESA (which really hasn't changed in months)
Not sure how to troubleshoot beyond this. So odd...
-
@pjft Yeah, that's how far I got, I tried setting USE_EGL to False in the cmake file and that didn't help (I went a different route, I've created a scriptmodule and create a rp4.cmake - but what we're doing is essentially the same.
I added -DFORCE_GLES (I saw in the libretro CMAKE it has this for ARM) and I now just get a black screen.
In any case, I've not been through the build log, or the code properly but is it perhaps using it's own SDL or something rather than our SDL with KMS/DRM?
I don't know enough about how all that works, but thought I'd post my findings in any case as I'm sure there are people that do know and may know how to solve it!
-
@mechafatnick said in Is Yabasanshiro emulator coming on retropie?:
Has anyone got any STV games to load?
@roslof said in Is Yabasanshiro emulator coming on retropie?:
stvbios.zip
md5: 53a094ad3a188f86de4e64624fe9b3caidk who told you yabasanshiro supported STV but that's not the case, yabasanshiro is not kronos
-
@barbudreadmon thank you. It's listed as a required BIOS file in the script module. Must be an error. One less thing to worry about.
-
@barbudreadmon Yeah i didn't think it did! I was surprised to see it mentioned in the installer's help section. Guess that explains why it didn't work :D
-
Just to note - The module is draft - it's based on the yabause one so the help needs to be tweaked. I'm also not suggesting the fixes are correct or that I will be including this as it is currently in RetroPie.
-
@BuZz there's definately a few other issues it seems - will add them upstream to yaba once they've seen the PR and can comment - from what you have done it might be enough information to go off as to what exactly is happening and the best fix
-
@steeeb I've already fed it upstream (no PR. It's not a valid fix).
-
Regarding lr-yabasanshiro,
Been beating myself up trying to get past a black screen issue w/freeze on my Pi4B. At this time, I have yet to see a render. Wondering if anybody is aware of any dependencies for the lr- version that I might be missing. Certain that this is not a BIOS issue or configuration issue. Tried several things to try to get past this (re-installed all RetroPie dependancies, reset RetroArch settings, nuked previous installs of yabasanshiro and yabause... etc.)
When attempting to launch any ROM image, after the launching.png image appears and goes away, the screen is black and hangs, never rendering anything and never returning to ES.
runcommand.log shows nothing unusual (even with verbose logging).
During the hang, for the task, ps all shows WCHAN "flush_" and STAT as "DLl+". Other than this, I'm unaware of a way to get more data.Sounds like others are getting this to render, so I'm optimistic, and hoping to get a lead on what might be happening here. I completely understand this is early work here, so not expecting anything, but any suggestions would be appreciated.
Cheers
-
@roslof Hm. Two angles to explore: we can compare MD5 hashes for the binary you're getting, and can you share your setup details - meaning, straight RetroPie image from here, any customizations on config.txt or others that might affect this, resolution?
The MD5 for my yabasanshiro_libretro.so file is 4c302a02ba0ef0e9e1cbfdddfe5c9063
and the last commit I have compiled is: commit 7ae0de7abc378f6077aff0fd365ab25cff58b055Maybe start from here.
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.