Is Yabasanshiro emulator coming on retropie?
-
@myzar Thank you very much! I'll try it out during the weekend. Any noticeable performance changes?
Actually, a question: I'm getting a few errors, even after installing the dependencies.
File not found: Cannot initialize ISO-File Virtual Drive Cannot initialize Game Preference: opening /home/pi/.yabasanshiro/.config Preference: fail to getInt Aspect rate message: [json.exception.type_error.305] cannot use operator[] with number exception id: 305
so I must be missing something around here. The games don't boot, and the emulator just gets stuck in a black screen.
I suspect it might be a file path thing somewhere - any clues, or did it just work straight off the bat for you?
Thanks.
-
@pjft my bad i have missed -i
the right string is
yabasanshiro-sdl = "/opt/retropie/emulators/yabasanshiro/yabasanshiro-sdl -i %ROM%"
performace seems the same but this is a lot easier to build and does not need xserver and qt
-
This is nice. Thank you for providing, @myzar
It looks like game-specific configurations are generated in /root/.yabasanshiro. Very nice, and unexpected.
Tips for Pi4B:
Tap "ESC" on keyboard to bring up Yaba Sanshiro Menu (instead of Ctrl-S from xserver build)
From Menu, set resolution to "Original" (defaults to Native, which is higher-res and too slow for Pi4B)
Controls are easy to change with this menu.Not sure if saturn_bios.bin can be used. Tried the old command-line argument for this, but seems to always use RLE bios. Would help with compatibility for some games.
-
@roslof there's a -b flag, worst case we can have two entries in runcommand, one for HLE and one for BIOS.
-
@pjft right with you. Trying to setup two emulators for -sdl.
-
When running the RetroArena build, has anybody else noticed:
[message: json.exception.type_error.305] cannot use operator[] with number exception id: 305
When I launch via command-line, I can move beyond the error and play. But when I launch via runcommand, I exit. I've been spending the last few hours investigating the syntax of keymapv2.json and the configuration file I'm using to test Sega Rally Championship.
Currently look like:
https://pastebin.com/uknjfsnj (/root/.yabasanshiro/keymapv2.json)
https://pastebin.com/qrf8R2hU (/root/.yabasanshiro/Sega Rally Championship.chd.config)When runcommand crashes, the error is different (weird)...
Added known joystick Sony Interactive Entertainment Wireless Controller (instance ID: 0, device index: 0) Added known joystick Sony Interactive Entertainment Wireless Controller (instance ID: 1, device index: 1) terminate called after throwing an instance of 'nlohmann::detail::invalid_iterator' what(): [json.exception.invalid_iterator.212] cannot compare iterators of different containers
-
@roslof what happens if you delete both ? this port uses ~/.emulationstation/es_temporaryinput.cfg if keymapv2.json is not present
-
@myzar when I delete those files, then launch yabasanshiro-sh from /opt/retropie/emulators/yabasanshiro, it rebuilds the files, but not in a good way:
keymapv2.json (all non-axis lines look like this):
"id": -1
"type": "",
"value": "-999"Sega Rally Championship.chd.config everything references "null":
"Aspect rate": null,
"Resolution": null,
"Rotate screen": null,
"Rotate screen resolution": null,
"Use compute shader": null -
I think I figured this out.
I believe running from the command-line generates files at /root/.yabasanshiro/
...and running from runcommand generates files at ~/.yabasanshiroWas wrestling with two separate sets of configs...
keymapv2.json in ~/.yabasanshiro was properly generated from es_temporaryinput.cfg
keymapv2.json in root/.yabasanshiro is junkFor game configuration files, both directories generate "null" for each setting. I suppose this is fine. Can use command-line arguments to set parameters.
-
All set... Going to use these four (4) settings that consider RLE vs. real BIOS and original res vs. native res:
yabasanshiro-sdl = "/opt/retropie/emulators/yabasanshiro/yabasanshiro-sdl -r 3 -i %ROM%" yabasanshiro-sdl-native-res = "/opt/retropie/emulators/yabasanshiro/yabasanshiro-sdl -r 0 -i %ROM%" yabasanshiro-sdl-saturn_bios = "/opt/retropie/emulators/yabasanshiro/yabasanshiro-sdl -b /home/pi/RetroPie/BIOS/saturn_bios.bin -r 3 -i %ROM%" yabasanshiro-sdl-saturn_bios-native-res = "/opt/retropie/emulators/yabasanshiro/yabasanshiro-sdl -b /home/pi/RetroPie/BIOS/saturn_bios.bin -r 0 -i %ROM%"
-
Been playing around with the YabasueEmulate function. It's pretty much the core of the emulator. Anyone else here trying to improve performance?
After moving some of the execution order around some it seems it doesn't matter if SH2Exec(MSH2 executes before or after the SSH2. If that is the case why aren't these threaded to run concurrently?
I dug a little into them and I don't see any big hold ups. I suspect in some cases there may be a syncing issue but in those cases there is no work around anyway so who cares?
I did some rough profiling and while running the intro of Sega Rally(used it for consistency) I saw about 10 to 20ms of processing time for the master and the slave(so 20 to 40ms total time per frame combined).
I also checked the RPi cpu usage. Core 4 is pegged at 100% and cores 1 thru 3 average around 50% or less(using lowest graphics settings).
Does anyone know any reason this absolutely cant be done? I'm planning on starting work on it unless I get a real good answer as to why it wont.
-
@acidtech i think you should raise an issue at the github - devyimax is the only active developer: https://github.com/devmiyax/yabause/
-
@acidtech said in Is Yabasanshiro emulator coming on retropie?:
If that is the case why aren't these threaded to run concurrently?
fwiw, we tried this in the kronos emulator not long ago, on desktop there was no performance benefits, it was actually slower because of all the syncing.
-
@myzar Sorry for being dim, but how do you quit the Retro-Arena build without a keyboard?
-
@mechafatnick I'm awake, so jumping in.
The select button on the gamepad should be auto-mapped to the Yabasanshiro menu. Then you can select Quit. -
NVidia Vulkan driver. How'd I miss this?
Tom's Hardware: Nvidia Engineer's Vulkan Driver For Raspberry Pi Runs Quake III Over 100 FPS at 720p.
https://www.tomshardware.com/news/nvidia-engineer-vulkan-driver-raspberry-pi-quake-iii-100-fps -
@roslof duh! thank you. Didnt think to check the controller
-
@roslof said in Is Yabasanshiro emulator coming on retropie?:
NVidia Vulkan driver. How'd I miss this?
Tom's Hardware: Nvidia Engineer's Vulkan Driver For Raspberry Pi Runs Quake III Over 100 FPS at 720p.
https://www.tomshardware.com/news/nvidia-engineer-vulkan-driver-raspberry-pi-quake-iii-100-fpsWell, it's new, and it's for rpi0-3
-
@barbudreadmon said in [Is Yabasanshiro emulator coming on retropie?
Well, it's new, and it's for rpi0-3
Wow, just read this, thx for giving this information @barbudreadmon!
Well, i am no professional, but this sounds to me like a possible "turbocharger" for the Pi0-3. -
@sirhenrythe5th said in Is Yabasanshiro emulator coming on retropie?:
this sounds to me like a possible "turbocharger" for the Pi0-3
that's hard to say, it would need proper testing, for software-rendered emulators the difference with gl should be marginal (assuming both drivers are of the same quality).
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.