solarus-1.6: request for comments and testing
-
Is there a way to install v1.6 on a RetroPie 4.3 build? I've tried a couple of different approaches with no success. I had previously installed and been using the old version (v1.4.5?). The best path so far has been to uninstall the old version, replace the setup script with the latest, and then install fresh. Run this way the process seems to download the necessary files, creates a solarus ROM directory, adds to es_systems.cfg, but then stops without an error message. I believe it's right before it begins building the files, based on a test installation I did on a dummy 4.5.1 image.
Any thoughts? Thanks for the help!
-
@ts-x What error are you receiving?
There was not much change in dependecy tree (add of libogg-dev) onlyTry to upgrade your package lists with
sudo apt-get update
-
@cyperghost I'm not actually receiving an error message, it begins installing and returns to the install menu like the process has successfully completed. I updated the package list per your instructions, but the process still does the exact same thing. Based on my observation of a 4.5.1 install, I believe it's running into some sort of problem right before the file builds. The only file the script places under /opt/retropie/ports/solarus is solarus.sh, so attempting to open a game file yields this runcommand.log ...
Parameters: Executing: /opt/retropie/ports/solarus/solarus.sh "/home/pi/RetroPie/roms/solarus/zelda-roth-se-1.2.1.solarus" /opt/retropie/ports/solarus/solarus.sh: line 7: /opt/retropie/ports/solarus/bin/solarus-run: No such file or directory
-
@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?
-
@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.
-
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.
-
@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 withsudo apt-get update && sudo apt-get upgrade
to get SDL working -
@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 usecaseI 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 workingPlease 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.
-
@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?
-
@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).
-
@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
-
@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 :)
-
@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.
-
@hhromic
I recolored the Solarus logo to SVG Transparent/White
Please download from here in SVG format! -
@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!Thanks, but I'm a bit confused why you did this for and why I need to download it?
-
@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
-
@cyperghost aah I see, indeed that looks slick !
Thanks for converting the logo. -
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. -
@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.
-
Tested script right now! Works perfect for SOLARUS 1.6
You can mimic file format*.solarus *.SOLARUS *.zip *.ZIP
by using regexEdit added this line to script above
readarray -t darray < <(find -mindepth 1 -maxdepth 1 -iregex ".*\(solarus\|zip\)" -type f)
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.