Announcing Pegasus Frontend
-
Also a weekly update! Haven't had too much time, so only minor changes:
- The macOS release too now uses the new gamepad handling. Please report your experiences with it.
- Fixed
ignore-files
and relativefile
field handling when mixed withdirectory
entries in Metadata files (thanks @msheehan79)
Now that the gamepad handling is in a better shape, I'm planning to update the documentation during the next week(s). (Unless something comes up.) I'm also trying to fix the Pi 4 build meanwhile.
-
@fluffypillow any chance the gamepad input's could support the select button (xbox back button I guess?). I'm currently doing a strange hack in order to use it lol. (I'm sure this is highly improper but it's working for me)
Keys.onPressed: { if (api.keys.isAccept(event) && !event.isAutoRepeat) { event.accepted = true; root.detailsRequested() } //Hack to check if it was the Gamepad Select button if (event.key.toString() == "1048586" && !event.isAutoRepeat) { event.accepted = true; root.settingsRequested() }
-
@SinisterSpatula you mean you'd like to use one fixed gamepad button, even if the user remapped it? Well, technically yes, it's possible, just note that there might be users who can't use that button (for whatever reason). If you still want to do it, at the moment the gamepad buttons are in the range
0x100000
-0x10000F
(eg.event.key == 0x10000A
for Select). (They don't have fancy names like keyboard keys, but they should work fine.) -
I guess I'm thinking of a user remappable but optional button. In case a theme want's to utilize select to call up a special feature, but I guess this need goes away when theme settings screen becomes officially part of pegasus, but could still be useful, like a hotkey perhaps, so a theme could look for hotkey+[whatever button] combo to do something unique.
-
Weekly update! Unfortunately I haven't had much time the past weeks, this one might be busy too, but I should have some more time in the next one. However, that doesn't mean there were no changes, in fact there have been a few interesting developments going on in the background:
- Added Korean translation by @losernator (thanks!)
- Linux: Preparations for Flatpak support. The next "stable" release might be available on Flathub.
- Maintainers: added AppStream metadata files (ie. software center support), and changed the desktop and icon file names to follow the specs more closely. The AppStream files can be installed by setting the
INSTALL_APPSTREAMDIR
config option.
- Maintainers: added AppStream metadata files (ie. software center support), and changed the desktop and icon file names to follow the specs more closely. The AppStream files can be installed by setting the
- Fixed a bug where Pegasus could crash when the launched game crashed
Meanwhile in the theme development thread @SinisterSpatula is playing with Pegasus on the Retroflag GPI, there are some very nice recordings of his progress too.
-
@fluffypillow Hello, i'm trying to create a "kiosk mode" mod version of Pegasus. Could you help me with this little issue? I think it's related to the RollableMenuItem.qml code... As you can see from the video the submenu doesn't disappear when i cancel back the Quit operation.
Thanks in advance.
-
@fastpop72 oh looks like there was a number rounding issue, will fix it in a sec. This will fix the buttons staying on screen, but if you'd like to make your setup extra nice, you could also add a colored rectangle to hide the parts sticking out during the animation.
-
@fluffypillow said in Announcing Pegasus Frontend:
@fastpop72 oh looks like there was a number rounding issue, will fix it in a sec. This will fix the buttons staying on screen, but if you'd like to make your setup extra nice, you could also add a colored rectangle to hide the parts sticking out during the animation.
Thank you for the fix.
I tried to make an extra nice setup inserting a rectangle in this way between the last PrimaryMenuItem and the RollableMenuItem:
Rectangle { width: parent.width height: 100 color: "#eee" }
Anyway, during closing animation, the rectangle doesn't slide together with the primary Text and let the lower Text visible for some microseconds.... Am i missing some further arguments to add to Rectangle item?
-
@fastpop72 Looks like the new rectangle is below the buttons; you could increase it's Z value to raise it above the others.
-
@fluffypillow said in Announcing Pegasus Frontend:
@fastpop72 Looks like the new rectangle is below the buttons; you could increase it's Z value to raise it above the others.
Solved!! Thanks!!
PS: Are you interested in a Pull Request? Launching the exe with the "kiosk" argument disable some menus (Settings, Help & Exit Pegasus) and the version text in the lower-left corner.
-
@fastpop72 Thank you, actually I plan to make it so all quit buttons could be enabled/disabled individually, probably together with some settings file entries to also make it work on eg. Android. I'm not sure about the settings and help screen yet (I might need some license texts to be accessible), and also perhaps a full menu disable option could be possible too in the future.
-
Weekly update! Well, sort of, as mentioned haven't had time the last week, but I should have some in this one.
At the moment I'm still struggling with the Pi 4 support. I have an idea of where do things go wrong, but couldn't confirm it yet and as it's quite deep in some low level code, it takes significant time to try out any changes. Hopefully I can do it without sacrificing too much sanity.
Other than that I'm writing documentation and might also do some cleanup/redesign on the home page.
-
@fluffypillow I'm here to test out builds if you wish.
-
@Darksavior Thanks, unfortunately this time it's creating the builds that takes time, and figuring out what exactly happens near the driver. Will report as soon as I find something out.
-
@Darksavior just to make sure, does game launching work in EmulationStation from the fkms branch?
-
@fluffypillow Does for me. Yes.
-
@hooperre thanks; I've actually managed to do some good progress today, if I'm lucky I might be able to fix this soon.
-
@fluffypillow yes. I do need to test the steamlink app but all emulators load with no issues.
-
I finally managed to get RetroArch running on the Shield. For anyone else that wants to get it up and running this should be universal:
collection: Super Nintendo Entertainment System shortname: snes extensions: sfc, smc, zip launch: am start --user 0 -n com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture -e ROM "{file.path}" -e LIBRETRO /data/user/0/com.retroarch.aarch64/cores/bsnes_performance_libretro_android.so -e CONFIGFILE /storage/emulated/0/RetroArch/config/retroarch.cfg -e IME com.android.inputmethod.latin/.LatinIME -e DATADIR /data/data/com.retroarch.aarch64 -e APK /data/app/com.retroarch.aarch64-1/base.apk --activity-clear-top
Just change for your specific collections (make sure to change the core file to one that is specific to your collection though of course).
This is also specifically for the aarch64 build of RetroArch. If for some reason you don't want to use the 64 version I believe you can just remove the .aarch64 parts from any of this. YMMV though.
@fluffypillow since this took me a while to figure out, and since the Shield is a good platform for this FE and RA the most useful emulator, I wonder if it would be worth adding this info to the docs as well?
-
@PlayingKarrde sure, it can be added, and I'll also mention the 64bit version. Compared to the example from the docs, the difference (other than aarch64) seems to be
-e LIBRETRO /data/user/0/com.retroarch.aarch64/cores/bsnes_performance_libretro_android.so -e CONFIGFILE /storage/emulated/0/RetroArch/config/retroarch.cfg
ie. the Shield uses
/data/user/0
instead of/data/data
and the config is stored directly on the storage (instead of underAndroid/data/com.retroarch/files
). Is that correct? I wonder if that's something device- or Android version specific thing, or perhaps a setting in RA?
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.