Sega Saturn core (Yaba Sanshiro) finally available on Android

Haven’t been on here in a while. I just noticed this core and fired it up right away testing the game Astal. Right off the bat I noticed the Saturn start up intro doesn’t display fully and afterwards it’s just a blank screen where nothing happens no matter what buttons I hit or options I change in quick settings. Also no games will start at all if the driver is set to Vulkan. I assume all kinks will get ironed out in time but man I’m glad to finally see a playable Saturn core for Android Retroarch.

I’ll make an announcement once i’m done fixing it, for now it’s only worth using on linux arm (it works pretty well on odroid xu4).

Nice, I’ll be looking forward to it. I’m also running off the Shield TV. Tried to test out Panzer Dragoon and that game actually started. All fmv scenes are viewable but once I started the first stage all I saw was the water on screen and nothing else lol. Least from what I heard and saw this core appears to plays in full speed unlike the Beetle Saturn core and for that alone I’m happy.

Did you guys try this core the past few days ? I need some beta tester to confirm some issues on android :

  • The core wasn’t closing properly a few days ago (not saving core options as an example), i might have fixed the issue but nobody confirmed it, if not i have something else to try but i need to confirm the current status first.
  • The core might be experiencing some issues with “virtual gamepad touch controls”, i suspect an issue related to the RA menu driver because i noticed graphical issues with xmb on my desktop, maybe try with ozone instead ?

I’ve been messing around with this core since I started this thread. The core still definitely doesn’t close properly. The only way I’ve gotten per game/core overrides to save was to save and then quit Retroarch instead of closing content.

I tried to test out the touch controls and this is what I get:

Another thing I noticed is when going into the menu the background color is black I stead of the default blue

I also run this core from the Hyperspin front-end and when I go into the core’s menu from there the screen looks like this:

On some 3D fighting games such as Virtua Fighter 2 and Last Bronx gameplay feels jittery and jumpy. I saw that you added a auto frameskip option which seems to have helped smooth out Virtua Fighter 2 but Last Bronx still plays bad. Other than that the core is working fine.

The last thing is I can’t get a game to start when I’m using the vulkan driver.

Yeah, that’s why i said to try changing menu drivers, i want to know if the touch controls issue is related to the black screen issue in xmb (which i’m able to reproduce on desktop, other menu drivers are working fine)

Tried changing drivers and I get the same bad controls screen on both glui and xmb. I tried this on both a Shield TV and a Galaxy

1 Like

Hi there,

Thanks for your work on this core! I tried it on a Shield TV (2017) and a GPD XD+. I get 60 FPS on the Shield or pretty damn close to it in every game I tried, though I mostly have 2D shmups. The XD+ struggles a little bit (50ish).

I can confirm the “black menu” problem reported by sonkun as well as the crashes when doing “Close Content” from the Quick Menu.

While I am here, would it be a lot of work to implement support for the Redump multitrack format (multiple bins+cue)? No worries if it can’t be done, converting is quite simple.

EDIT: changing the menu driver from xmb to glui - still crashes on closing content. Changing the menu to the old rgui, I can’t access the Quick menu (it shows the standard content launching menu with "Run, Rename, Remove, Add to Favoties, Reset Core Assoc.) and controls are unresponsive. Both on the XD+ and Shield.

I just pushed a fix that might solve those issues, it’ll take a few hours before it’s available on the buildbot

YabaSanshiro uses autoframeskip by default (you can disable it in core options if you want, but most likely the emulator will stutter if your hardware isn’t powerful enough), so not having a steady 60fps isn’t a big deal normally (everything will stay in sync).

Forgot to answer about this one : https://github.com/libretro/yabause/issues/56

So I just tried the updated core and the menu issue has been fixed, the screen shows up as the normal blue again and I can see all options. The virtual pad issue has also been resolved on both the glui and xmb drivers as well. I also managed to save a override and then close the content although it takes a little longer for the content to actually close.

I pushed another try at fixing this closing issue, let me know if it’s better now.

This is damn good news,I just can’t stand the UI of Yaba Sanshino and the onscreen buttons is painful to use,thanks for porting it to RetroArch! It’s time to make a beautiful custom overlay for SS now :slight_smile:

Just tried with ver. 2.3.1 fb001fb and still no luck on closing (menu looks good though!)

Forgot to answer about this one : https://github.com/libretro/yabause/issues/56

Thanks! I totally understand and respect that. I used bimerge (https://github.com/putnam/binmerge) to convert all my images in one batch with a simple bash script. Seems to have done the trick :smiley:

Thanks again and keep up the good work!

Sadly i’ve no other idea on how to fix this android issue, the issue seems to be about android being awfully long when closing the core (while it’s instant on windows/linux) and deciding to kill it after a few seconds.

I hope some android expert will manifest himself to debug this.

Just tested a game,the game runs smoothly.But it freezed at backing to the game from gui,freezed at reset.It’s a good beginning,please keep it going!

edit: add crashes at saving state

It’s ok you’ve already done a lot as it is. The fact that there’s a fast working Saturn core available for Android Retroarch is a blessing. Besides it’s still possible to save core/game overrides by saving and simply quiting Retroarch and it closes instantly that way.

I mentioned in an earlier post I was getting stutter in 3D fighting games and found the culprit to be the Auto frameskip option. Soon as I turned that off games like Virtua Fighter 2 ran smooth like butter so so leave it off for all games now, the Shield TV can handle it.

The only thing I’m wondering is is there no way to get this core to work with the Vulkan driver? I’m dying to test out some shaders that only work with that driver. From the little bit I know about stand alone Yaba Sanshiro it runs off of OpenGL ES only so I assume that’s why Vulkan doesn’t work with it here.

Yeah, vulkan’s out of the question. However, we’re hoping to get the new “glcore” driver working on Android, which would enable slang shaders on GL cores.

2 Likes

YabaSanshiro’s renderer isn’t compatible with OpenGL Core either, it’s only compatible with plain old and not too strict OpenGL/OpenGLES.

1 Like

I am trying to load bin/cue and it only loads to the bios, I have the bios files in system, beetle saturn and yabause open the cue file, for some reason it is not opening to the game.