RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Is Yabasanshiro emulator coming on retropie?

    Scheduled Pinned Locked Moved Help and Support
    sega saturnemulator
    362 Posts 37 Posters 479.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dankcushionsD
      dankcushions Global Moderator
      last edited by

      i don't think there's much more to be said about the bug - detailed info is here: https://github.com/devmiyax/yabause/issues/737 - without someone who understands GLES/shader code to look at it (eg, devyimax), no amount of more info will help.

      1 Reply Last reply Reply Quote 0
      • A
        acidtech
        last edited by

        Anyone have success building this on Raspberry PI OS 64bit beta? I've apparently gotten all the dependencies covered but build is failing with:

        Linking CXX executable yabasanshiro
        /usr/bin/ld: firebase-cpp-sdk/external/src/curl-build/lib/libcurl.a(asyn-thread.c.o): in function `gethostbyname_thread':
        /home/pi/yabause/build/src/qt/firebase-cpp-sdk/external/src/curl/lib/asyn-thread.c:315: undefined reference to `Curl_ipv4_resolve_r'
        /usr/bin/ld: firebase-cpp-sdk/external/src/curl-build/lib/libcurl.a(asyn-thread.c.o): in function `Curl_resolver_getaddrinfo':
        /home/pi/yabause/build/src/qt/firebase-cpp-sdk/external/src/curl/lib/asyn-thread.c:594: undefined reference to `Curl_ipv4_resolve_r'
        collect2: error: ld returned 1 exit status
        make[3]: *** [src/qt/CMakeFiles/yabause-qt.dir/build.make:1674: src/qt/yabasanshiro] Error 1
        make[2]: *** [CMakeFiles/Makefile2:380: src/qt/CMakeFiles/yabause-qt.dir/all] Error 2
        make[1]: *** [CMakeFiles/Makefile2:392: src/qt/CMakeFiles/yabause-qt.dir/rule] Error 2
        make: *** [Makefile:264: yabause-qt] Error 2
        

        Any thoughts on what could be the cause?

        M 1 Reply Last reply Reply Quote 0
        • M
          myzar @acidtech
          last edited by

          @acidtech

          about the cause no , about a quick and dirty hack i would edit asyn-thread.c and remove the reference to Curl_ipv4_resolve_r at line 315 & 594, the emu doesn't need to go online anyway

          A 1 Reply Last reply Reply Quote 0
          • A
            acidtech @grant2258
            last edited by

            @grant2258 Just confirming this addition worked. Got the retro_arena GUI and even started Sega Rally. Did not have the patched shaders so graphics were not correct and crashed just before the race began, but this is progress.

            Note I'm working on this using Rasberry Pi OS 64bit beta.

            Only other change I've made was to rp64.cmake:

            set(CMAKE_SYSTEM_PROCESSOR arm)
            to
            set(CMAKE_SYSTEM_PROCESSOR aarch64)

            G 1 Reply Last reply Reply Quote 0
            • A
              acidtech @myzar
              last edited by

              @myzar Yes, I did that and got further but in the end I've switched over to the retro_arena GUI and now I can at least start Sega Rally.

              I already use QT for app development on Android and iOS. I really don't want to use it when I'm trying to have some fun.

              1 Reply Last reply Reply Quote 0
              • G
                grant2258 Banned @acidtech
                last edited by

                @acidtech said in Is Yabasanshiro emulator coming on retropie?:

                @grant2258 Just confirming this addition worked.

                Are you referring to the SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES); if so thats good news!

                A 1 Reply Last reply Reply Quote 0
                • A
                  acidtech @grant2258
                  last edited by

                  @grant2258 Yes, SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);

                  G 1 Reply Last reply Reply Quote 1
                  • G
                    grant2258 Banned @acidtech
                    last edited by

                    @acidtech said in Is Yabasanshiro emulator coming on retropie?:

                    nt2258 Yes, SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);

                    nice one I dont have a pi 4 to test with glad it opens up the retro arena port! the diff buzz posted for the shader patch is here. https://github.com/devmiyax/yabause/issues/737 This is the only viable option for this emulator without qt since retroarch support is withdrawn.

                    A 1 Reply Last reply Reply Quote 0
                    • A
                      acidtech @grant2258
                      last edited by

                      @grant2258 With the shader patch Sega Rally is running without errors. A few slow downs on the first track but full speed otherwise it appears(didnt have FPS showing). Not overclocked in nay way. So a good starting point I think.

                      1 Reply Last reply Reply Quote 1
                      • M
                        myzar
                        last edited by

                        I confirm that the retro-arena build indeed works adding that ,no qt deps crap and no xserver needed and plus it gets the input from retropie and you can quit without a keyboard , i use the rpi4 in a cab

                        Very good finding @acidtech and thx @grant2258 for the gles workaround

                        pjftP M 2 Replies Last reply Reply Quote 1
                        • pjftP
                          pjft @myzar
                          last edited by

                          Thanks for the update!

                          @myzar would it be too much trouble to ask you for the binary and new runcommand string? :)

                          1 Reply Last reply Reply Quote 0
                          • M
                            myzar
                            last edited by

                            @pjft no trouble

                            https://mega.nz/file/qxkQmS4S#t0gGCquEGOQM9NqJWFCPkFqFJZO4UNROzjRKeorE7gQ

                            for the command line

                            yabasanshiro-sdl = "/opt/retropie/emulators/yabasanshiro/yabasanshiro-sdl %ROM%"

                            for the options you can use look here

                            https://github.com/devmiyax/yabause/tree/master/yabause/src/retro_arena

                            1 Reply Last reply Reply Quote 1
                            • pjftP
                              pjft
                              last edited by pjft

                              @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.

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                myzar @pjft
                                last edited by myzar

                                @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

                                1 Reply Last reply Reply Quote 1
                                • roslofR
                                  roslof
                                  last edited by roslof

                                  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.

                                  pjftP 1 Reply Last reply Reply Quote 1
                                  • pjftP
                                    pjft @roslof
                                    last edited by

                                    @roslof there's a -b flag, worst case we can have two entries in runcommand, one for HLE and one for BIOS.

                                    roslofR 1 Reply Last reply Reply Quote 0
                                    • roslofR
                                      roslof @pjft
                                      last edited by

                                      @pjft right with you. Trying to setup two emulators for -sdl.

                                      roslofR 1 Reply Last reply Reply Quote 1
                                      • roslofR
                                        roslof @roslof
                                        last edited by roslof

                                        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
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          myzar
                                          last edited by myzar

                                          @roslof what happens if you delete both ? this port uses ~/.emulationstation/es_temporaryinput.cfg if keymapv2.json is not present

                                          1 Reply Last reply Reply Quote 0
                                          • roslofR
                                            roslof
                                            last edited by

                                            @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

                                            roslofR 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.