Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Announcing Pegasus Frontend



  • @fluffypillow By just adding my snes logo png's to /media and it doubles the load time. I have games/pictures on a 128GB usb stick but I don't think that should affect loading times much. I'm using a pi3 overclocked to 1.3Ghz.

    Now that there seems to be some sort of theme support, is there a way to use my own pictures for the system logos or add them in the future? These in particular from this error:
    0_1501663706403_system svg.jpg

    @fluffypillow said in Announcing Pegasus Frontend:

    I think I can add support for that.

    Thanks



  • @Darksavior asset loading speed depends mostly on the (individual) file access speed, which seems to be better on microSD cards. CPU speed isn't really the bottleneck here.

    system logos

    Not yet, but I do want to add support for them.



  • @fluffypillow I'm trying different file systems but I can't seem to get a decent speed from usb. Can you re-add the option to load pictures from ~/.emulationstation/downloaded_images on microsd ?



  • Wow looking forward for this awesome frontend !



  • @Darksavior hm okay, though it might slow down the loading a bit. I should start implementing some kind of plugin system, so you could enable/disable/fine tune ES compatibility.



  • Had some technical difficulties this week, so there are mostly just small changes:

    • assets are searched in ~/.emulationstation/downloaded_images again
    • fixed a bug on Windows, where sometimes assets weren't found
    • minor bugfixes
    • started writing some automated tests to make sure things won't accidentally break

    Also as there have been over 100 commits since alpha 2, I've marked today's release as alpha 3.



  • PS. I've also removed the SDL2 dependency
    PPS: @Darksavior it seems analog controls isn't as trivial as I've expected, might take some more time



  • @fluffypillow Yay. I appreciate it. Analog controls are detected and responding in the controller settings so pegasus sees something..

    Also, loading times went down again when I moved pics back to the microsd. :D



  • I've played around with the GStreamer packages:

    • if gstreamer1.0-omx is installed (which enables hardware acceleration), h264 videos play fine, but others get corrupted picture
    • updating GStreamer to the latest stable (1.10) doesn't fix the issue
    • gstreamer1.0-libav (which is the FFMPEG wrapper/plugin) with gstreamer1.0-plugins-good plays all tested video files (h264 from screenscraper, handbrake-ified mp4 files from es-toolkit)
    • gstreamer1.0-libav or gstreamer1.0-plugins-good alone doesn't produce good result (black picture/decoder errors), but together they work nicely, I didn't need other plugin packs

    So it seems something's broken in the Qt Multimedia module's hardware acceleration support; I'll probably have to write a custom plugin or see if I can patch it. Until then, you can get the best results with the gstreamer1.0-alsa gstreamer1.0-libav gstreamer1.0-plugins-good packages.



  • On the previous week I was mostly testing things, like the GStreamer packages, and writing an automatic test suite.

    This week, however:

    • added support for the <favorite> ES2 tag
      • has no visible effect yet, I'll probably add a heart or something
    • added filter panel
      • you can filter by name (or name parts), to favorites or to multiplayer games
      • others might come later (eg. custom tags)
      • video

    The filter panel is work in progress, will be available in a few days.



  • @fluffypillow I hadn't thought about filtering based on number of players. I ran into that the other day when trying to figure out which games were 2 player with a friend. Thanks for your work, I've been using the alpha builds and they keep getting better.



  • Ok, the filter panel is now available in the latest alpha, you can press Ctrl to toggle it.

    It's also something that a theme can change, so currently it's only in the main theme. I wonder how does a search panel look in Netflix?



  • Oh and Pegasus is now available from the RetroPie menu (experimental section)!



  • I have installed Pegasus on my Pi 2 from the RetroPie setup script. I am using a wired PS3 controller so have also installed xboxdrv.

    In the file /opt/retropie/configs/all/autostart/sh, I have replaced the line to launch ES with the following:

    sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv --detach-kernel-driver --mimic-xpad -s >/dev/null & /opt/retropie/supplementary/pegasus-fe/pegasus-fe; sudo killall >/dev/null xboxdrv #auto
    

    The PS3 controller now works fine in Pegasus but when I launch a rom in lr-mame2003, RetroArch tells me that it's using a Microsoft Xbox 360 pad, which is not configured.

    How do I kill xboxdrv after I launch a game so that I can use the RetroArch config for PS3 controller?

    I use xboxdrv for FPS ports and adding the line sudo killall >/dev/null xboxdrv kills xboxdrv after I exit the port so that I can use the PS3 controller in ES as configured.



  • @dudleydes I think I can add support for running a custom script before launching/after finishing a game. I'm actually surprised I haven't done that yet.


  • administrators

    @fluffypillow assuming people are launching via runcommand, it can launch a bash script before/after launching a game - https://retropie.org.uk/docs/Runcommand/#runcommand-onstart-and-runcommand-onend-scripts



  • I've ended up implementing it (for cross platform support and because why not), it's now available in the alpha. The relevant directories are game-start and game-end; you can add scripts just like for the other events.

    Note that unlike the runcommand method, the scripts Pegasus calls do not receive any additional information (at least, not at the moment).



  • This post is deleted!


  • @fluffypillow Thanks for implementing this so quickly.

    I have updated Pegasus and I am now running version pegasus-frontend alpha3-36-ge792314. I have removed ; sudo killall >/dev/null xboxdrv from autostart.sh and restarted my Pi.

    I created a script kill-xboxdrv.sh in the game-start folder with the following contents:

    #!/bin/bash
    sudo killall >/dev/null xboxdrv
    

    Then I created a script start-xboxdrv.sh in the game-end folder with the following contents:

    #!/bin/bash
    sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv --detach-kernel-driver --mimic-xpad -s >/dev/null
    

    I have made both scripts executable.

    Now when I launch a rom in lr-mame2003, no text appears informing which controller is configured. Checking the processes running using top, xboxdrv is being killed and retroarch is running without it but it doesn't seem to be picking up the PS3 controller config.



  • @dudleydes so the scripting part works correctly (kills xboxdrv before the game, restarts on end), but RetroArch does not recognize the PS controller? And everything works fine using ES2?
    Hm, Pegasus should not "own" the devices or deny access to them... I wonder how RetroArch detects controllers...


 

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.