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

    Announcing Pegasus Frontend

    Scheduled Pinned Locked Moved Ideas and Development
    frontendpegasusc++developmentqml
    1.7k Posts 145 Posters 5.1m 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.
    • fluffypillowF
      fluffypillow @PlayingKarrde
      last edited by fluffypillow

      @PlayingKarrde turns out /data/user/0 is actually a symlink to /data/data, so both should work in theory. Could it be the config location then?

      Edit: Indeed it seem that when you create a "New Configuration" it is created in a new RetroArch directory under the storage. By default both 32 and 64 bit releases seem to use Android/data/com.reatroarch. This could be pointed out in the docs.

      PlayingKarrdeP 1 Reply Last reply Reply Quote 0
      • fluffypillowF
        fluffypillow @Darksavior
        last edited by

        @Darksavior Progress! I've managed to launch both console and 3D programs with this build. Before running, you might need to

        export QT_QPA_EGLFS_KMS_ATOMIC=1

        An issue I've noticed is that after returning to Pegasus the keyboard presses seem to be duplicated. Will take a look into it. Also I couldn't test how it works with multiple screens or under X11. Haven't tried gamepads and actual emulators or ports yet either.

        DarksaviorD 1 Reply Last reply Reply Quote 1
        • PlayingKarrdeP
          PlayingKarrde @fluffypillow
          last edited by

          @fluffypillow said in Announcing Pegasus Frontend:

          @PlayingKarrde turns out /data/user/0 is actually a symlink to /data/data, so both should work in theory. Could it be the config location then?

          Edit: Indeed it seem that when you create a "New Configuration" it is created in a new RetroArch directory under the storage. By default both 32 and 64 bit releases seem to use Android/data/com.reatroarch. This could be pointed out in the docs.

          Interesting. Hmm then maybe it was purely the fact I was always using the aarch64 version and didn't have correct references. Although the com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture is also different but I'm unsure what that is a reference to tbh so I can't say what it should be looking for.

          1 Reply Last reply Reply Quote 0
          • DarksaviorD
            Darksavior @fluffypillow
            last edited by Darksavior

            @fluffypillow Success! It seems to work without that command, though I do get the message Setting framebuffer size is only available with DRM atomic APIwhen not using it. If I do use it, I get the error framebuffer size format is invalid. I also get QObject::connect(QObject, FrontendLayer): invalid null parameterand [w] QCoreApplication::postEvent: Unexpected null receiverwhen loading games, though that's without using your command and I've messed around altering the stock theme too.

            So I'm finally starting to get higher res box art, and the art is very blurry when displayed in pegasus. Any ideas? The current ones I'm testing with are nothing fancy..850x850 jpegs. I use 1080p output, but I also tried 4k output and there's no change in quality.

            Original
            Astal (USA) (DW0722)-image.jpg

            Pegasus
            20191004_025312.jpg

            Emulationstation
            20191004_050056.jpg

            PlayingKarrdeP fluffypillowF 2 Replies Last reply Reply Quote 0
            • PlayingKarrdeP
              PlayingKarrde @Darksavior
              last edited by

              @Darksavior That's most likely due to the sourceSize attribute for the image. It's imported at whatever resolution is specified there and then scaled.

              DarksaviorD 1 Reply Last reply Reply Quote 1
              • fluffypillowF
                fluffypillow @Darksavior
                last edited by

                @Darksavior yes, the images are reduced to 256x256, which might be indeed a bit small on 4K :)

                The atomic mode setting should be turned on, it allows to use a more modern way to handle the video driver, according to the docs, which the Pi 4 happens to support. Don't worry about the warning, apparently there's a way to provide some framebuffer settings to override, and the warning is produced when it's not set (ie. invalid).

                1 Reply Last reply Reply Quote 1
                • DarksaviorD
                  Darksavior @PlayingKarrde
                  last edited by Darksavior

                  Thanks, guys.

                  @fluffypillow So how do I automate that command? I tried to go into retropie-setup's autostart settings and add export QT_QPA_EGLFS_KMS_ATOMIC=1 before pegasus-fe but that doesn't work. If that command will be integrated into pegasus, then I can wait, no big deal. My main concern was games loading and now I can finally stop using ES again.

                  Also, I'm testing the scaling, 512 seems to still be smooth and not a blurry mess. Too bad I can't adjust scaling based on system. Overall, I'm getting a lot of box art loading while scrolling. This pi4 has 2GB of ram. Is there a way to adjust ram usage in pegasus? Or do I give the gpu more ram? In the meantime I have lowered the res of some of those systems close to the scaling res which minimizes the loading.

                  fluffypillowF 1 Reply Last reply Reply Quote 0
                  • fluffypillowF
                    fluffypillow @Darksavior
                    last edited by

                    @Darksavior on RetroPie /usr/bin/pegasus-fe is a script, where such exports can be added (there's already a color space related one).

                    Image loading depends on the GPU memory (the larger it is the more images it can hold) while the actual speed of loading depends on the file system reading speed and how fast the CPU and the RAM is.

                    DarksaviorD 1 Reply Last reply Reply Quote 0
                    • DarksaviorD
                      Darksavior @fluffypillow
                      last edited by Darksavior

                      @fluffypillow Fair Enough. The keyboard also stops working completely if you load a game, exit the game, and exit pegasus. Pegasus also crashed when disconnecting my ps4 pad.

                      fluffypillowF 1 Reply Last reply Reply Quote 0
                      • fluffypillowF
                        fluffypillow @Darksavior
                        last edited by

                        @Darksavior made a new build, after returning from a game the keyboard should now work fine, and maybe it also fixes the controller problems. It seems the keys still don't work after closing Pegasus though.

                        DarksaviorD 1 Reply Last reply Reply Quote 1
                        • DarksaviorD
                          Darksavior @fluffypillow
                          last edited by

                          @fluffypillow Yep, kb fine (in pegasus), pad disconnects fine.

                          I tried to increase the gpu memory, but my pi complained and refused to load. I'll keep it on 500...

                          fluffypillowF 1 Reply Last reply Reply Quote 0
                          • S
                            spartan
                            last edited by

                            @fluffypillow is the new gamepad implementation ready for Android? I'd love be able to map my control within pegasus-frontend

                            fluffypillowF 1 Reply Last reply Reply Quote 0
                            • fluffypillowF
                              fluffypillow @spartan
                              last edited by

                              @spartan on Android, Android's own gamepad support is used, which seems to work as expected according to my tests, but if you can try other devices or have troubles feel free to comment at the issue.

                              1 Reply Last reply Reply Quote 0
                              • fluffypillowF
                                fluffypillow @Darksavior
                                last edited by

                                @Darksavior another build! The terminal should work fine now after leaving Pegasus.

                                1 Reply Last reply Reply Quote 2
                                • AndersHPA
                                  AndersHP
                                  last edited by AndersHP

                                  @fluffypillow
                                  Just tested Pegasus on my Gameboy build with a 320x240 screen, and I really like the the way how Pegasus looks and works with box art, except that the text is unreadable, both in settings and game descriptions.

                                  I uploaded a photo on github and opened an issue, as well as donated on Paypal. Sorry I didn't do this before, your work is greatly appreciated!

                                  My "Bubble Bobble" Themed Bartop Arcade
                                  My Gameboy

                                  fluffypillowF 1 Reply Last reply Reply Quote 1
                                  • fluffypillowF
                                    fluffypillow @AndersHP
                                    last edited by

                                    @AndersHP Thank you! Yea, the default theme originally wasn't made with 240p screens in mind. Looking at the image, it seems there would be a need for several functional changes to make it easy to use, so I'm thinking maybe a small-screen edition might fit this case better. It'd be also interesting to design a theme that'd fit all kinds of screens.

                                    1 Reply Last reply Reply Quote 1
                                    • fluffypillowF
                                      fluffypillow
                                      last edited by

                                      Also a weekly update! (or rather, a recap of the last two)

                                      • After some more work (and code hacking), Pegasus is finally functional on the Pi 4. I've also updated the RetroPie script, it should be available on both the master and the fkms branch.
                                      • On Linux, Pegasus is now available in Flatpak format from FlatHub.

                                      With that, this release is now marked as Alpha 13. I've also updated the list of weekly changelogs in the opening post.

                                      Now I should really update the documentation.

                                      1 Reply Last reply Reply Quote 3
                                      • S
                                        SinisterSpatula
                                        last edited by SinisterSpatula

                                        Disregard, posted in error, and can't delete.

                                        1 Reply Last reply Reply Quote 0
                                        • C
                                          clamcho
                                          last edited by

                                          excuse me sir i want to ask about pegasus become a default launcher on android, so after booting pegasus will be default launcher . it's possible for now ? if not can i know the keyword search on google to make an app become a launcher? just now i can't find the right keyword .

                                          fluffypillowF 1 Reply Last reply Reply Quote -1
                                          • fluffypillowF
                                            fluffypillow @clamcho
                                            last edited by

                                            @clamcho this is now possible with today's build, and documented here: https://pegasus-frontend.org/docs/user-guide/platform-android/#default-launcher

                                            Just a few notes:

                                            • Pegasus wasn't primarily made to be an Android launcher, so it's possible that things might not work as expected. Feel free to report bugs!
                                            • To restore the original Launcher, follow the documentation or eg. this article.
                                            • DO NOT quit from Pegasus using the menu :) I'll remove those buttons in the future.
                                            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.