Announcing Pegasus Frontend
-
I have it running on my Snail i7 android phone perfectly.
I'll list some of my collection configs.My nes collections file is:
collection: NES
extensions: nes
launch: am start --user 0
-n com.retroarch/.browser.retroactivity.RetroActivityFuture
-e ROM "{file.path}"
-e LIBRETRO /data/data/com.retroarch/cores/fceumm_libretro_android.so
-e CONFIGFILE /storage/emulated/0/Android/data/com.retroarch/files/retroarch.cfg
-e IME com.android.inputmethod.latin/.LatinIME
-e DATADIR /data/data/com.retroarch
-e APK /data/app/com.retroarch-1/base.apk
-e SDCARD /storage/emulated/0
-e DOWNLOADS /storage/emulated/0/Download
-e VIDEO /storage/emulated/0/Video/NES
-e SCREENSHOTS /storage/emulated/0/Art/NES
-e EXTERNAL /storage/emulated/0/Android/data/com.retroarch/files
--activity-clear-topMy n64 collections is:
collection: N64
extension: v64,z64,n64
launch: am start --user 0
-a android.intent.action.VIEW
-n org.mupen64plusae.v3.fzurita/paulscode.android.mupen64plusae.SplashActivity
-d "file://{file.path}"My dreamcast collection is:
collection: Dreamcast
extension: cdi,chd,gdi
launch: am start --user 0
-a android.intent.action.VIEW
-n com.reicast.emulator/.MainActivity
-d "file://{file.path}"I hope this helps you in some way.
-
-
@jste84 Hm, the command seems to be fine... Could you try with a different game, if you have one? Spaces in the file name shouldn't cause problem (I've tested that), but could you try renaming the game, just in case? Also does this emulator work fine on its own when you open the same game?
-
@fluffypillow games play fine on RetroArch, tried a different rom and same issue. Tried removing spaces and still not working unfortunately
-
@jste84 you're trying to open the game with Nostalgia.NES (according to the logs), does the game work in that emulator too? As for RetroArch, if it's working on its own, could you try opening the file with that (to see whether there are program communication issues or this issue is a bug in one of the apps)? For this setup I think you could use the same
collections.txt
that @SephirothX2004 mentioned above. -
@sephirothx2004 said in Announcing Pegasus Frontend:
I have it running on my Snail i7 android phone perfectly.
I'll list some of my collection configs.My nes collections file is:
collection: NES
extensions: nes
launch: am start --user 0
-n com.retroarch/.browser.retroactivity.RetroActivityFuture
-e ROM "{file.path}"
-e LIBRETRO /data/data/com.retroarch/cores/fceumm_libretro_android.so
-e CONFIGFILE /storage/emulated/0/Android/data/com.retroarch/files/retroarch.cfg
-e IME com.android.inputmethod.latin/.LatinIME
-e DATADIR /data/data/com.retroarch
-e APK /data/app/com.retroarch-1/base.apk
-e SDCARD /storage/emulated/0
-e DOWNLOADS /storage/emulated/0/Download
-e VIDEO /storage/emulated/0/Video/NES
-e SCREENSHOTS /storage/emulated/0/Art/NES
-e EXTERNAL /storage/emulated/0/Android/data/com.retroarch/files
--activity-clear-topMy n64 collections is:
collection: N64
extension: v64,z64,n64
launch: am start --user 0
-a android.intent.action.VIEW
-n org.mupen64plusae.v3.fzurita/paulscode.android.mupen64plusae.SplashActivity
-d "file://{file.path}"My dreamcast collection is:
collection: Dreamcast
extension: cdi,chd,gdi
launch: am start --user 0
-a android.intent.action.VIEW
-n com.reicast.emulator/.MainActivity
-d "file://{file.path}"I hope this helps you in some way.
Tried this and it didnt work for me but cheers
-
@fluffypillow said in Announcing Pegasus Frontend:
@jste84 you're trying to open the game with Nostalgia.NES (according to the logs), does the game work in that emulator too? As for RetroArch, if it's working on its own, could you try opening the file with that (to see whether there are program communication issues or this issue is a bug in one of the apps)? For this setup I think you could use the same
collections.txt
that @SephirothX2004 mentioned above.Ok so nostalgia works.
RetroArch worksWhenever I update collections.txt I just can't get any joy. Ive tried nostalgia and RetroArch configs. I've now gone back to nostalgia and it's doing something different, the screen changes but it doesn't load.
collection: NES
extensions: nes
launch: am start --user 0
-a android.intent.action.VIEW
-n com.nostalgiaemulators.neslite/com.nostalgiaemulators.nes.NesSlotImportActivity
-d "file://{file.path}"Found locale 'American English' (
en
)
Found locale 'español de España' (es
)
Found locale 'français' (fr
)
Found locale 'magyar' (hu
)
Found locale 'magyar (rovás)' (hu-Hung
)
Locale set to 'American English' (en
)
Found theme 'Pegasus Grid [built-in]' (:/themes/pegasus-grid/
)
Theme set to 'Pegasus Grid [built-in]' (:/themes/pegasus-grid/
)
Found/storage/emulated/0/RetroArch/downloads/Nes
Found/storage/emulated/0/RetroArch/downloads/Nes/collections.txt
Games found in 2ms
Assets and metadata found in 0ms
3 games found
Executing command:am start --user 0 -a android.intent.action.VIEW -n com.nostalgiaemulators.neslite/com.nostalgiaemulators.nes.NesSlotImportActivity -d "file:///storage/emulated/0/RetroArch/downloads/Nes/Super Mario Bros 3(E).nes"
Process 9220 started
The external program has finished cleanly, with exit code 0
QEGLPlatformContext: eglSwapBuffers failed: 300d
QEGLPlatformContext: eglSwapBuffers failed: 300d
QEGLPlatformContext: eglSwapBuffers failed: 300d -
@jste84 I've tried Nostalgia.NES on my device, and unfortunately it seems this program cannot open individual games, only save states (or whatever a "slot" is -- it produces an invisible "Slot import" screen when launching, then also closes instantly). I'll update the documentation with this info.
On the other hand, RetroArch does work fine for me. It seems leading spaces are removed when you try to copy text from the forum, that might have caused the trouble. You can also copy the NES config from here, just change the extension to
nes
if needed. -
1. is there a way to add media assets on android right now?
i've added metadata.txt and collections.txt, so the roms can be found - but there is no option to add boxart or video in the txt files, or am i wrong?
on windows i just use the gamelist.xml of emulationstation (but would also like to get rid of this "compromise" ^^) ... on android pegasus seems to ignore the gamelist.xml- i noticed, that if a platform have just a few roms (in my case 3 titles) and i switch ONE TIME forward and ONE TIME back (shoulder buttons) , the boxart is "supersized" ... if i switch two times for and two times back it's ok. ...dunno how to describe it better.
-
@fluffypillow said in Announcing Pegasus Frontend:
@jste84 I've tried Nostalgia.NES on my device, and unfortunately it seems this program cannot open individual games, only save states (or whatever a "slot" is -- it produces an invisible "Slot import" screen when launching, then also closes instantly). I'll update the documentation with this info.
On the other hand, RetroArch does work fine for me. It seems leading spaces are removed when you try to copy text from the forum, that might have caused the trouble. You can also copy the NES config from here, just change the extension to
nes
if needed.I've copied the text and now it's working. I'm guessing I had another typo in there. Cheers for your help 👍
Now my next task is box art/metadata... As per the post above... Not sure how easy this is...
-
Meanwhile I've just made another theme, something I've wanted to create for quite some time:
You can get it HERE.
Some points of interests for theme makers:
- this is a fixed 4:3 theme and uses a custom scaling system
- there are sprite sheets
- there is a relatively large amount of JavaScript logic for the "Bird AI"
-
No words, thats awesome and show the possibilities of the frontend.
-
A wild weekly update (+recap) appears!
- Breaking Changes in the Theme API: renamed
collectionList
tocollections
andgameList
togames
- in practice, this means you'll need to update (ie. redownload) the themes; sorry for the inconvenience!
- Opening the main menu now has its own key (other than just hitting Back until you reach it). Defaults to F1 and Gamepad Start.
- Theme API: Arrow keys can now be queried like the rest of the keys with
isLeft
,left
,isUp
, etc. - Fixed themes appearing multiple times on the list in some cases
- Updated the documentation
- Created the ES2 Simple theme
- Created the 9999999-in-1 theme
- Breaking Changes in the Theme API: renamed
-
@fluffypillow Pegasus looks really promising, is it named after the Polish Famiclone by any chance?
I am looking for an alternative to EmulationStation because it is lacking few features for my Pi inside Commodore 64 project. Before I abandon ES2 for Pegasus, I have a few questions about current (or even planned) features...
- What does it run on, is it X11, sdl?
- Can you map key-combos (e.g. Shift + Down arrow) to a function (up in menu)?
- Can you have multiple controllers per player setup at the same time (e.g 2 usb gamepads and a keyboard controlling a single player at the same time)
- Can the menu be navigated by each player, even if both players are mapped to the same keyboard?
-
is it named after the Polish Famiclone by any chance?
Yup :) I happened to have one when I was younger.
What does it run on, is it X11, sdl?
It uses Qt, which I've built to use EGL on the Raspberry Pi, ie. X11 is not required, it can run with or without it. Other than that there are releases for desktop Linux (X11), Windows and Android, but it can also be build for macOS, Odroid and other boards.
Can you map key-combos (e.g. Shift + Down arrow) to a function (up in menu)?
Not yet, only single keys.
Can you have multiple controllers per player setup at the same time (e.g 2 usb gamepads and a keyboard controlling a single player at the same time)
Can the menu be navigated by each player, even if both players are mapped to the same keyboard?All connected keyboards, gamepads, mouses and touchscreens can control the menu. As for the emulators, the key configuration is not integrated with the rest of RetroPie (eg. RetroArch) yet (I should make a patch for that eventually).
-
@fluffypillow said in Announcing Pegasus Frontend:
It uses Qt, which I've built to use EGL on the Raspberry Pi, ie. X11 is not required, it can run with or without it. Other than that there are releases for desktop Linux (X11), Windows and Android, but it can also be build for macOS, Odroid and other boards.
Any idea what keyboard tables Qt ueses? My current problem when it comes to ES2 is that it doesn't seem to read my modified linux tables so I can use my C64 keyboard correctly (which requires Shift + Down for Up and Shift + Right for Left among others).
-
@cybrasty Never tried that personally, but apparently you can load custom X11 keymaps and kmap files to use.
-
@fluffypillow I have made myself a custom keymap that works both in X and console, it just doesn't register in ES2 because it runs off SDL keymap (I think) which I can't find. Or the way ES2 is written it doesn't recognize Shift as a modifier that changes input.
This is why I asked about key combos, because even if Pegasus won't use my keymap, I can always fake it ;)
Just to confirm that my custom tables of Shift+key are not read in Pegasus either.
I would like to request shifted/modded key support. It would be helpful in my case, and would also allow for shortcuts like Shift/Alt F1 to reboot or close the front end. -
@cybrasty tested this on my Pi too, and the loadkey method indeed fails. In theory converting the kmap to qmap could make it work, but compiling the converted tool is a pain.. I think I can add key combinations support however, I'll do some experiments to see if I can make it work.
-
@fluffypillow Thanks! I am looking forward to it :)
I think the big issue here is how fractured linux keyboard is. There is one driver for X, another for console, and bunch of other library specific drivers that do or do not follow whatever the distro tells them to do with custom keybindings. So even when changing everything that I could in rasbian, it still isn't enough.
Having multi-key in Pegasus will save me a lot of hassle of trying to build my own keyboard controller.
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.