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

    solarus-1.6: request for comments and testing

    Scheduled Pinned Locked Moved Ideas and Development
    solarusscriptmoduletesting
    36 Posts 5 Posters 4.7k 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.
    • T
      ts-x @cyperghost
      last edited by ts-x

      @cyperghost Caught the error message via a cell phone video...it's an issue with SDL2. I have version 2.0.5 and it's looking for 2.0.6 (RetroPie v4.4 went from 2.0.5 to 2.0.8). Is it possible to upgrade?

      cyperghostC 1 Reply Last reply Reply Quote 0
      • cyperghostC
        cyperghost @ts-x
        last edited by cyperghost

        @ts-x imho yes it's possible to upgrade. If it's not a default package then you need to compile on your own. But I'm not sure if Open GLES will do its work then.

        1 Reply Last reply Reply Quote 0
        • H
          hhromic
          last edited by

          Sorry guys for the delay replying, been a bit busy :)

          @cyperghost thanks for the feedback on the controller buttons. Indeed I thought about extracting them from retroarch.cfg or EmulationStation but in the end is too much trouble considering that we are working on bringing proper gamepad support natively on Solarus anyway so I prefer to spend my efforts on that instead.

          @ts-x indeed as you discovered yourself Solarus 1.6 requires SDL 2.0.6 or better which comes with Debian Stretch or better.

          What you can try to do to upgrade is to backport the sdl2.sh scriptmodule from newer RetroPie (like you did for the solarus scriptmodule) and reinstall the RetroPie SDL2 package doing: sudo ./retropie_packages.sh sdl2. However I would make a backup before attempting this as I'm not sure it's gonna work reliably.

          Good Luck and let us know how it went.

          cyperghostC T 2 Replies Last reply Reply Quote 1
          • cyperghostC
            cyperghost @hhromic
            last edited by cyperghost

            @hhromic Thanks for feedback

            One question how are these buttons working? HOTKEY(START)+SELECT terminates Solarus, like the libretro-cores? Or will a menu pop up if you press HOTKEY(START) or SELECT and then you can select a menu entry to quit. If this will happen I would strongly suggest to use 9+10 as default. This will cover 90% of usecase

            Sorry I can test this WE only? Currently using Windows builds but this engine is amazing!

            Yes and as you suggested SDL2.0.8 is available as
            Hmm I see SDL2.0.2 DEBIAN jessie build only.

            @ts-x
            Maybe it works with sudo apt-get update && sudo apt-get upgrade to get SDL working

            H 1 Reply Last reply Reply Quote 0
            • H
              hhromic @cyperghost
              last edited by

              @cyperghost said in solarus-1.6: request for comments and testing:

              @hhromic Thanks for feedback
              One question how are these buttons working? HOTKEY(START)+SELECT terminates Solarus, like the libretro-cores? Or will a menu pop up if you press HOTKEY(START) or SELECT and then you can select a menu entry to quit. If this will happen I would strongly suggest to use 9+10 as default. This will cover 90% of usecase

              I implemented it like in RetroArch, once the combination is detected it simply calls the shutdown routine of the engine immediately. Nothing fancy as the engine relies 99% on the Quests for user interaction therefore asking all quest makers to implement such a menu is not feasible.

              Hmm I see SDL2.0.2 DEBIAN jessie build only.
              @ts-x
              Maybe it works with sudo apt-get update && sudo apt-get upgrade to get SDL working

              Please note that the solution I proposed on my previous post uses RetroPie's version of SDL2 (which you should use) which is built independently of any packages in Debian.

              1 Reply Last reply Reply Quote 2
              • T
                ts-x @hhromic
                last edited by ts-x

                @hhromic + @cyperghost Thanks again for the assistance. I upgraded SDL2 on a test image per @hhromic's instructions - Solarus 1.6 does install and the 1.6 compatible versions of the two games I tried seem to operate normally. I haven't thoroughly tested, but at a minimum the SDL2 upgrade breaks N64 emulation. Given that, I'm hesitant to apply the same upgrade to my main, almost 2 years in the making 99.9% complete image.

                As a fall back, I was thinking of modifying the original 4.3 script to install Solarus 1.5.3 (instead of 1.4.5) and then using the latest pre-1.6 versions of all games (dx 1.11.1, roth 1.1.0, xd 1.11.0 + xd2 1.0.5). @hhromic given what you know about the source, any reason that approach might not work? Is it worth the pre-1.6 version upgrade for all?

                H 1 Reply Last reply Reply Quote 0
                • H
                  hhromic @ts-x
                  last edited by

                  @ts-x said in solarus-1.6: request for comments and testing:

                  I haven't thoroughly tested, but at a minimum the sld2 upgrade breaks N64 emulation.

                  Can you give more details about the error you get or how it "breaks"?

                  Maybe you can try to rebuild the n64 emulator from source after upgrading SDL so it pick-ups the newer library.

                  @ts-x said in solarus-1.6: request for comments and testing:

                  @hhromic given what you know about the source, any reason that approach might not work? Is it worth the pre-1.6 version upgrade for all?

                  The most important features of Solarus 1.6 is the OpenGL ES accelerated renderer. I don't know much about pre-1.6 versions as I started contributing to that project since 1.6 (to help bringing it to work on RetroPie).

                  cyperghostC T 2 Replies Last reply Reply Quote 0
                  • cyperghostC
                    cyperghost @hhromic
                    last edited by

                    @hhromic Do you think it is possible to configurate input keys for Solaris? Mine is totally mixed up. I can activate analog input on my controller then DPAD is working.

                    Button South acts as attack
                    Button West acts as Select Menu for inventory
                    Interact is Button Left....
                    It's playable at all but a bit messed up with my controller config.

                    Thanks for this jewel :D

                    H 1 Reply Last reply Reply Quote 0
                    • H
                      hhromic @cyperghost
                      last edited by

                      @cyperghost at the moment the buttons are not configurable, but as I mentioned before the next improvement in the backlog is updating the input system to use the newer SDL GameController API, which among other things allows to use gamecontrollerdb.txt files to consistently support many joypads and remappings. Many SDL-games support this already in RetroPie so users should be familiar with how this works.

                      So in summary, a bit of patience and it will be there soon enough :)

                      cyperghostC 1 Reply Last reply Reply Quote 0
                      • T
                        ts-x @hhromic
                        last edited by

                        @hhromic After the SDL2 upgrade, N64 games have sound but no video. I tried rebuilding the N64 emulator from source after the upgrade, but the process generated an error before finishing. I'm guessing that has something to do with incompatibility with my older version of RetroPie. Solarus 1.5.3 would not build on v4.3 either, so I'm going to stick with 1.4.5.

                        Thanks again for your help with this and work on bringing Solarus 1.6 to RetroPie.

                        H 1 Reply Last reply Reply Quote 0
                        • cyperghostC
                          cyperghost @hhromic
                          last edited by cyperghost

                          @hhromic
                          I recolored the Solarus logo to SVG Transparent/White
                          Please download from here in SVG format!

                          8f273895-77d1-4644-9272-86b41a65462b-grafik.png

                          1 Reply Last reply Reply Quote 0
                          • H
                            hhromic @ts-x
                            last edited by

                            @ts-x said in solarus-1.6: request for comments and testing:

                            @hhromic After the SDL2 upgrade, N64 games have sound but no video. I tried rebuilding the N64 emulator from source after the upgrade, but the process generated an error before finishing. I'm guessing that has something to do with incompatibility with my older version of RetroPie. Solarus 1.5.3 would not build on v4.3 either, so I'm going to stick with 1.4.5.

                            Thanks again for your help with this and work on bringing Solarus 1.6 to RetroPie.

                            Sorry to hear that, I guess you will have to migrate then. Well take your time and if you need more help just ask ;)

                            @cyperghost said in solarus-1.6: request for comments and testing:

                            @hhromic
                            I recolored the Solarus logo to SVG Transparent/White
                            Please download from here in SVG format!

                            8f273895-77d1-4644-9272-86b41a65462b-grafik.png

                            Thanks, but I'm a bit confused why you did this for and why I need to download it?

                            cyperghostC 1 Reply Last reply Reply Quote 0
                            • cyperghostC
                              cyperghost @hhromic
                              last edited by

                              @hhromic Oh I tink I tagged you by mistake.
                              You can use the one colored theme for example for the Minimal Theme

                              or for the ArtBook Theme

                              H 1 Reply Last reply Reply Quote 1
                              • H
                                hhromic @cyperghost
                                last edited by

                                @cyperghost aah I see, indeed that looks slick !
                                Thanks for converting the logo.

                                1 Reply Last reply Reply Quote 0
                                • ExarKunIvE
                                  ExarKunIv
                                  last edited by

                                  everything works great, love the fact that it is automatic full screen and the exit mapping is great.

                                  question

                                  how do i go about and make it run back in the ports system in ES. the theme i use i dont think will be getting a update soon for this great addition and im all good with having different .sh for each game.

                                  RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                  RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                  Maintainer of RetroPie-Extra .

                                  1 Reply Last reply Reply Quote 0
                                  • cyperghostC
                                    cyperghost
                                    last edited by cyperghost

                                    @ExarKunIv You can try this script for testing ....
                                    I really did not test but it's kind of standard scripting, in worst case I setted the emulator call wrong. I'm not on my Pie atm ;)

                                    Edit: Made some small changes to make it fail safe, should work 100% now and you should see a small launching menu, reduced to a minimum ;)
                                    Copy this script to Ports folder and restart ES and you can now select *.solarus modules from this selection menu.

                                    #!/bin/bash
                                    # Solarus PORT Launcher
                                    # cyperghost for RetroPie
                                    
                                    readonly JOY2KEY_SCRIPT="$HOME/RetroPie-Setup/scriptmodules/helpers.sh"
                                    readonly cgDIR="$HOME/RetroPie/roms/solarus"
                                    
                                    [[ -e $JOY2KEY_SCRIPT ]] || exit
                                    sleep 0.5; sudo pkill -f joy2key
                                    source "$JOY2KEY_SCRIPT"
                                    scriptdir="$HOME/RetroPie-Setup"
                                    
                                    pushd "$cgDIR" > /dev/null
                                    readarray -t darray < <(find -mindepth 1 -maxdepth 1 -iregex ".*\(solarus\|zip\)" -type f)
                                    
                                    if [[ ${#darray[@]} -gt 0 ]] || exit; then
                                        joy2keyStart; sleep 0.2
                                        cmd=(dialog --backtitle " Solarus PORTS launcher -cyperghost " --title " Selection of SOLARUS episodes " --no-items --stdout --menu "Please select an entry from list to launch:" 16 75 16)
                                        choices=$("${cmd[@]}" "${darray[@]##*/}")
                                        joy2keyStop; sleep 0.2
                                        [[ $choices ]] || exit
                                    fi
                                    
                                    popd > /dev/null
                                    
                                    "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _SYS_ "solarus" "${cgDIR}/$choices"
                                    

                                    @hhromic This was the script I suggested as the discussion about a own system occours but I like the system integration lots more but I understand @ExarKunIv ... with themes not ready setup a script seems a usefull option, too.

                                    cyperghostC 1 Reply Last reply Reply Quote 0
                                    • cyperghostC
                                      cyperghost @cyperghost
                                      last edited by

                                      Tested script right now! Works perfect for SOLARUS 1.6
                                      You can mimic file format *.solarus *.SOLARUS *.zip *.ZIP by using regex

                                      Edit added this line to script above

                                      readarray -t darray < <(find -mindepth 1 -maxdepth 1 -iregex ".*\(solarus\|zip\)" -type f)
                                      
                                      ExarKunIvE 1 Reply Last reply Reply Quote 0
                                      • ExarKunIvE
                                        ExarKunIv @cyperghost
                                        last edited by ExarKunIv

                                        @cyperghost this is cool, if it worked. for some reason it is just throwing me a bunch of errors.

                                        where can i find what it is giving me so i can put it here. i looked in the dev/shm and there is nothing there
                                        and yes i gave the file the correct permission

                                        dont know why it was not working before. i did a reboot and shut down, was not working.
                                        this time when i shut it down and tryed it again. it worked.

                                        ill play around with it and let you know if anything odd comes about. but till then. amazing work

                                        RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                        RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                        Maintainer of RetroPie-Extra .

                                        cyperghostC 1 Reply Last reply Reply Quote 1
                                        • cyperghostC
                                          cyperghost @ExarKunIv
                                          last edited by cyperghost

                                          @ExarKunIv try to use dos2unix scriptfile.sh
                                          I think you've wrong line endings.... Because for me the script runs flawless and if it spit out errors then there is likely something wrong with the interpretion of the script caused by wrong LE.

                                          Edit:
                                          Okay nevermind!

                                          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.