RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    3DS emulator for Pi users based on "Borked 3DS"

    Scheduled Pinned Locked Moved Projects and Themes
    nintendo 3dspi 4pi5borked 3dsx86-64
    91 Posts 7 Posters 9.5k 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.
    • DTEAMD
      DTEAM @Folly
      last edited by DTEAM

      @Folly said in 3DS emulator for Pi users based on "Borked 3DS":

      Found that it should be possible to add a configuration gui to the script.
      I tested the "function gui_retroarch" from retroarch.sh and renamed it and placed it in the script.
      It will then add an option for borked3ds in the configuration / tools menu.
      This means that if we I create a function called "function gui_borked3ds" we can work from there,
      and it should be possible to create something similar as the mamedev.sh script.

      This is a good news.

      In the PS2 script from Retropie Extra, they have write config settings at the end of the script.This is another example to preset the GUI.

      F 2 Replies Last reply Reply Quote 1
      • F
        Folly @DTEAM
        last edited by Folly

        @DTEAM said in 3DS emulator for Pi users based on "Borked 3DS":

        @Folly said in 3DS emulator for Pi users based on "Borked 3DS":

        Found that it should be possible to add a configuration gui to the script.
        I tested the "function gui_retroarch" from retroarch.sh and renamed it and placed it in the script.
        It will then add an option for borked3ds in the configuration / tools menu.
        This means that if we I create a function called "function gui_borked3ds" we can work from there,
        and it should be possible to create something similar as the mamedev.sh script.

        This is a good news.

        In the PS2 script from Retropie Extra, they have write config settings at the end of the script.This is another example to preset the GUI.

        Depending of what we want to add that's indeed a way of adding config settings quite easily.
        However if we want to add other or more stuff a gui could come in handy.
        Examples could be :

        • predefined gamelists
        • cheats
        • joystick configs

        just naming a few ideas.

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

          @Folly said in 3DS emulator for Pi users based on "Borked 3DS":

          Script needs to be checked and tested again.

          Cheers, Folly. I'm having the same basic issue with the modification. For what it's worth, here are the contents of emulators.cfg post-change:

          borked3ds-ui = "env MESA_EXTENSION_OVERRIDE=GL_OES_texture_buffer;XINIT-WMC:/opt/retropie/emulators/borked3ds/borked3ds"
          borked3ds-roms = "env MESA_EXTENSION_OVERRIDE=GL_OES_texture_buffer;XINIT-WMC:/opt/retropie/emulators/borked3ds/borked3ds %ROM%"
          default = "borked3ds-roms"
          

          This is what runcommand is executing:

          Executing: env MESA_EXTENSION_OVERRIDE=GL_OES_texture_buffer;XINIT-WMC:/opt/retropie/emulators/borked3ds/borked3ds "/home/pi/RetroPie/roms/3ds/Angry Birds Star Wars.3ds"
          

          and here is the bottom of runcommand.log:

          _=/usr/bin/env
          MESA_EXTENSION_OVERRIDE=GL_OES_texture_buffer
          /opt/retropie/supplementary/runcommand/runcommand.sh: line 1329: XINIT-WMC:/opt/retropie/emulators/borked3ds/borked3ds: No such file or directory
          

          For now, on my local device, will revert to having the env command in es_systems.cfg and remove it from emulators.cfg (which works fine).

          1 Reply Last reply Reply Quote 0
          • F
            Folly
            last edited by Folly

            @roslof
            Thanks for letting me know.

            @DTEAM @ExarKunIv @gvx64
            Do you have the same issue ?

            Edit :
            Turned off the launch_extension until there is a better solution.

            1 Reply Last reply Reply Quote 0
            • F
              Folly @DTEAM
              last edited by Folly

              @DTEAM

              I added the basic structure for adding a Configuration/Options menu (also viewable from the main Configuration/Tools menu).
              You can view the commit here .
              Try to play with it and see how it works.
              The "build_menu" code is basically code from the docsview script.
              I also use that for the mamedev script, with the addition for showing and running stuff that is placed inside a CSV.
              Here I used the special char □ as comma so commas can be used in the CSV.
              If you somehow need to add " in the commands then use a backslash in front of it.
              Let me know if you can work with that.

              DTEAMD 1 Reply Last reply Reply Quote 0
              • DTEAMD
                DTEAM @Folly
                last edited by DTEAM

                @Folly

                It works, we can see options 1 to 4 . Maybe we could start (option 1 = pi5/pi4 settings and option 2 cheat codes) I didn't test a cheat code yet with that emulator. Here's a forum about it . I don't see sites with all the cheat codes ready to go. For Joystick, is there a way to match ES settings like Lr emulators?

                F 1 Reply Last reply Reply Quote 0
                • F
                  Folly @DTEAM
                  last edited by Folly

                  @DTEAM said in 3DS emulator for Pi users based on "Borked 3DS":

                  @roslof

                  I have no games (many games) issue on my side for Pi5. It's probably un 3d parameter selected in the graphic options menu

                  If you go in

                  /home/pi/.config/borked3ds-emu

                  here's my settings

                  qt-config.ini

                  sdl2-config.ini

                  Game language is set to french. Youwill have to change it

                  You are talking about changing these ini files depending on rpi4 and rpi5 right ?
                  We might be able to do that without adding full ini-files.
                  If possible a good idea would be to change just the settings needed for that specific platform.
                  Something like this (copied from mame.sh) :

                         iniConfig " " "" "$temp_ini_mame"
                         iniSet "rompath"            "$romdir/$system;$romdir/arcade;$biosdir/$system"
                         iniSet "hashpath"           "$md_inst/hash"
                  

                  Edit :
                  Using the the cheat messages, from your link, to show up in the menu are likely not possible as the messages seem to be encrypted and only viewable in a browser.

                  For Joystick, is there a way to match ES settings like Lr emulators?

                  Don't know, we should do one by one thing, otherwise it's too much ;-)

                  Btw.
                  About the config files.
                  If needed, we can use curl to get the raw files from pastebin.

                  1 Reply Last reply Reply Quote 0
                  • F
                    Folly @DTEAM
                    last edited by Folly

                    @DTEAM

                    Just made some working code to edit the qt-config.ini file.

                    "□Enable Gles□□iniConfig \"=\" \"\" \"/home/$user/.config/borked3ds-emu/qt-config.ini\";iniSet \"use_gles\" \"true\"□□□□□printMsgs dialog \"NO HELP\"□"
                    "□Disable Gles□□iniConfig \"=\" \"\" \"/home/$user/.config/borked3ds-emu/qt-config.ini\";iniSet \"use_gles\" \"false\"□□□□□printMsgs dialog \"NO HELP\"□"
                    

                    The functions are explained in the inifuns.sh script.

                    Another example would be :

                    "□Overwrite qt-config.ini from pastebin□□curl https://pastebin.com/raw/KXEmXpjQ > \"/home/$user/.config/borked3ds-emu/qt-config.ini\"□□□□□printMsgs dialog \"NO HELP\"□"
                    

                    Seems the user right are still "pi", but it might be that we need to add chown to the command in order to keep the correct rights.

                    1 Reply Last reply Reply Quote 2
                    • F
                      Folly
                      last edited by

                      Added a useful config option.

                      R 1 Reply Last reply Reply Quote 2
                      • R
                        Retrodade @Folly
                        last edited by

                        @Folly Question, I just tried instaling Borked 3DS on my pi5 and I got could not successfully (home/pi/Retropie-setup/setup/temp/build/borked3ds/build/bin not found) How I solve this? thanks

                        F 1 Reply Last reply Reply Quote 0
                        • F
                          Folly @Retrodade
                          last edited by Folly

                          @Retrodade

                          What kind of distro version are you running and is it 32 bit or 64 bit ?
                          Can you add your log to pastebin ?

                          R 1 Reply Last reply Reply Quote 0
                          • R
                            Retrodade @Folly
                            last edited by

                            @Folly pi5 64bit, where is the log? i went to look at dev/shm i dont see any error logs, must be another location? thanks

                            F 1 Reply Last reply Reply Quote 0
                            • F
                              Folly @Retrodade
                              last edited by Folly

                              @Retrodade said in 3DS emulator for Pi users based on "Borked 3DS":

                              @Folly pi5 64bit, where is the log? i went to look at dev/shm i dont see any error logs, must be another location? thanks

                              In /dev/shm you can only find the runcommand.log and not the RetroPie-Setup logs.

                              RetroPie-Setup gzipped logs are here :
                              /home/pi/RetroPie-Setup/logs

                              Find the one from when you tried to install Borked.
                              It should be the latest, if you didn't do anything else..
                              These logs can be read with the command zcat, like suggested by @gvx64 in post 6.
                              Pipe to the command more to pause the output like this :

                              zcat '/home/pi/RetroPie-Setup/logs/rps_2025-xx-xx-xxxxx.log.gz'|more
                              

                              (use "enter" and "q" to see next line or to quit)

                              To get the .log file you can either unzip the file like this :

                              gzip -d '/home/pi/RetroPie-Setup/logs/rps_2025-xx-xx-xxxxx.log.gz'
                              

                              Or redirect the output of zcat to a new file :

                              zcat '/home/pi/RetroPie-Setup/logs/rps_2025-xx-xx-xxxxx.log.gz' > mylog.log
                              
                              1 Reply Last reply Reply Quote 0
                              • F Folly referenced this topic
                              • R
                                Retrodade
                                last edited by

                                = = = = = = = = = = = = = = = = = = = = =
                                Installing dependencies for 'borked3ds' : 3DS Emulator borked3ds
                                = = = = = = = = = = = = = = = = = = = = =

                                /home/pi/RetroPie-Setup/tmp/build/borked3ds /home/pi

                                = = = = = = = = = = = = = = = = = = = = =
                                Getting sources for 'borked3ds' : 3DS Emulator borked3ds
                                = = = = = = = = = = = = = = = = = = = = =

                                Already on 'master'
                                Your branch is up to date with 'origin/master'.
                                Already up to date.
                                HEAD is now in branch 'master' at commit '1d680a076d3e2fdd652f17f65430ffe50bdee49d'
                                /home/pi
                                /home/pi/RetroPie-Setup/tmp/build/borked3ds /home/pi

                                = = = = = = = = = = = = = = = = = = = = =
                                Building 'borked3ds' : 3DS Emulator borked3ds
                                = = = = = = = = = = = = = = = = = = = = =

                                /home/pi/RetroPie-Setup/ext/RetroPie-Extra/scriptmodules/emulators/borked3ds.sh: line 57: cd: /home/pi/RetroPie-Setup/tmp/build/borked3ds/borked3ds: No such file or directory
                                mkdir: cannot create directory ‘build’: File exists
                                CMake Error at CMakeLists.txt:2 (cmake_minimum_required):
                                CMake 3.26 or higher is required. You are running version 3.25.1

                                -- Configuring incomplete, errors occurred!
                                Error: could not find CMAKE_PROJECT_NAME in Cache
                                Could not successfully build borked3ds - 3DS Emulator borked3ds (/home/pi/RetroPie-Setup/tmp/build/borked3ds/build/bin not found).
                                /home/pi

                                Log ended at: Tue Jun 24 03:09:27 PM BST 2025
                                Total running time: 0 hours, 0 mins, 4 secs
                                i tried a second time, it wouldn't let me this is the log thanks

                                DTEAMD F 2 Replies Last reply Reply Quote 0
                                • DTEAMD
                                  DTEAM @Retrodade
                                  last edited by

                                  @Retrodade said in 3DS emulator for Pi users based on "Borked 3DS":

                                  CMake 3.26 or higher is required. You are running version 3.25.1

                                  You must update your CMAKE version

                                  1 Reply Last reply Reply Quote 1
                                  • F
                                    Folly @Retrodade
                                    last edited by Folly

                                    @Retrodade

                                    Seems you used @DTEAM modulescript.
                                    @DTEAM is correct, then you need to use a newer cmake version.

                                    If you use my modulescript then a newer cmake is downloaded and used to build Borked.
                                    Try to clean the source folder fists so you know that the latest source is cloned.

                                    Tip read post 1.

                                    1 Reply Last reply Reply Quote 2
                                    • F
                                      Folly
                                      last edited by

                                      @Retrodade
                                      Any luck ?

                                      1 Reply Last reply Reply Quote 0
                                      • F
                                        Folly
                                        last edited by Folly

                                        This is a trial to reduce and improve the code to make regular use of doublequoting inside the array with csv data.

                                        Edit:
                                        Another commit added.

                                        1 Reply Last reply Reply Quote 1
                                        • DTEAMD
                                          DTEAM @gvx64
                                          last edited by DTEAM

                                          Hi @Folly, can you do this with your latest version, please? I'd rather you add your own script to it as a pull request because it's your work.

                                          @ExarKunIv said in 3DS emulator for Pi users based on "Borked 3DS":

                                          @DTEAM adding this script ( Changed it over to Follys version ) to my Repo. for ease of installing
                                          if you want to do pull requests when things change you can. if not i will update it as i see them here.

                                          F 1 Reply Last reply Reply Quote 0
                                          • F
                                            Folly @DTEAM
                                            last edited by Folly

                                            @DTEAM

                                            @ExarKunIv already updated so nothing to be done for now ;-).

                                            1 Reply Last reply Reply Quote 1
                                            • 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.