Page 1 of 1

Gamegirl: the retro console done right

Posted: Sat Mar 26, 2016 6:21 pm
by davidperrenoud
With the developer of Lakka, we are building an open source portable console based on the Pi Zero:

https://hackaday.io/project/10207-gameg ... done-right

RetroPie seems to be quite popular on this forum, probably because it's easy to customise it. RetroPie uses many of the RetroArch emulators but strangely not the RetroArch interface.

I chose to use Lakka because it is much very lightweight, clean and is completely based on RetroArch. We plan to include some compatibility with LÖVE, PICO-8 and Scratch so people will be able to build great games. :)

So, what do you think? Would you like support for other games/frameworks? Do you have ideas for the console?

Re: Gamegirl: the retro console done right

Posted: Sun Mar 27, 2016 12:28 pm
by SamDoesPi
So is this an OS, or a console? Also, for games created by ourselves, will we be able to add cover art, and please include Java and support for PyGame games. But maybe some emulators would be nice with offline(cached) cover art + metadata and will it have support for GameMaker games? (e.g Undertale, Spelunky)
If it comes with LOVE plugin can I use stuff like 90 second portraits on it?
Will the OS/console have WiFi and Terminal, so I can access it?
Then I would buy that.

Re: Gamegirl: the retro console done right

Posted: Mon Mar 28, 2016 9:45 am
by davidperrenoud
It's a console. But half of the project will be improving the software. For example by adding a way to transfer the games with USB (OTG).

For cover arts, I think some work has already been done:
https://www.youtube.com/watch?v=gQ20ApCqjQc

I don't know how open GameMaker is. Maybe the HTML5 version can be read inside RetroArch but I think the focus right now is more on open source games. And Undertale isn't available for Linux.

LÖVE is not yet fully supported as there was no OpenGL ES version when the port was done, but the plan is for full compatibility. If you want to contribute:
https://github.com/libretro/libretro-lutro

No Wi-Fi included but I guess you could connect one through USB. Just for curiosity, why would you need a terminal?

Re: Gamegirl: the retro console done right

Posted: Mon Mar 28, 2016 10:04 am
by SamDoesPi
davidperrenoud wrote:It's a console. But half of the project will be improving the software. For example by adding a way to transfer the games with USB (OTG).

For cover arts, I think some work has already been done:
https://www.youtube.com/watch?v=gQ20ApCqjQc

I don't know how open GameMaker is. Maybe the HTML5 version can be read inside RetroArch but I think the focus right now is more on open source games. And Undertale isn't available for Linux.

LÖVE is not yet fully supported as there was no OpenGL ES version when the port was done, but the plan is for full compatibility. If you want to contribute:
https://github.com/libretro/libretro-lutro

No Wi-Fi included but I guess you could connect one through USB. Just for curiosity, why would you need a terminal?
Oh, must have been thinking of another game.
Terminal just so you could download more apps.

Re: Gamegirl: the retro console done right

Posted: Mon Mar 28, 2016 2:07 pm
by Vanfanel
THIS is the way to go: use the best game-oriented distro available on the Pi BY FAR (Lakka) which in turn uses the greatest API I have ever seen (LibRetro), and pair ir with a simple hardware solution that uses the RIGHT screen interface to have accelerated graphics!

If people just understood how thechnically superior this is to other alternatives...

Re: Gamegirl: the retro console done right

Posted: Tue Mar 29, 2016 1:34 pm
by blc
Vanfanel wrote:use the best game-oriented distro available on the Pi BY FAR (Lakka)
I have never heard of Lakka; what makes it so superior to RetroPie?

Re: Gamegirl: the retro console done right

Posted: Wed Mar 30, 2016 1:28 pm
by Vanfanel
blc wrote:
Vanfanel wrote:use the best game-oriented distro available on the Pi BY FAR (Lakka)
I have never heard of Lakka; what makes it so superior to RetroPie?
It's the official "console" project by the LibRetro/RetroArch people, so it gets updated more often and all code comes directly from them.
It's also lighter and by using Lakka and promoting it you are supporting the people that does the coding work behind almost every emulator and game running well on the Raspberry Pi computers, those using the libretro library and the RetroArch frontend that gives the games access to low-level APIs.

Re: Gamegirl: the retro console done right

Posted: Wed Mar 30, 2016 1:58 pm
by blc
Vanfanel wrote:It's the official "console" project by the LibRetro/RetroArch people, so it gets updated more often and all code comes directly from them.
It's also lighter and by using Lakka and promoting it you are supporting the people that does the coding work behind almost every emulator and game running well on the Raspberry Pi computers, those using the libretro library and the RetroArch frontend that gives the games access to low-level APIs.
Sorry to sound like I'm being difficult, but that doesn't really answer my question.

Lower system requirements I can understand, but RetroPie already works perfectly well on even the oldest Raspberry Pi hardware so what practical advantage do I gain?

I can also understand wanting to support the original authors of the code, but the nature of Open Source code is that once it's out there you're giving everyone permission to do whatever they want with it (within the terms of any applicable license, of course). Code gets forked, updated, patched, redistributed, recompiled, rehosted, etc. Aren't we supporting the work of the original authors by using their code?

Lakka being favoured by the libretro/retroarch authors doesn't make for a convincing case.

Also:
Vanfanel wrote:supporting the people that does the coding work behind almost every emulator and game running well on the Raspberry Pi computers
The "and game" part of that statement is questionable. Not every game on the Pi uses libretro/retroarch.

Re: Gamegirl: the retro console done right

Posted: Wed Mar 30, 2016 3:13 pm
by davidperrenoud
Yes, practically the emulators in RetroPie should run perfectly fine.

The advantage of Lakka is that everything is integrated together, so it boots faster, it's read-only (no corruption and instant power-off), it's lighter (150 MB vs 900 MB) and it's more coherent (controllers, shaders, etc.)

Re: Gamegirl: the retro console done right

Posted: Sun Apr 03, 2016 3:38 am
by Kivutar
I will try to explain why having a pure retroarch/libretro approach is technically cleaner.

The libretro API is there to separate the frontend (graphical interface) and the backend (the emulators).

Adding an external frontend on top of it makes little sense, since it is an additional layer that can't take advantage of the low level API.

For example, with a frontend like RetroArch, you can display the current game in a small window while navigating the menu. This is not a very usefull feature, but it could become useful in the future to preview shaders.

Now, let think about effort duplication. Emulator hackers spend a lot of time trying to optimize emulators for the RPi. We end up with a ton of different versions, all with their graphical interface baked in.

If instead of that people focus on improving the libretro version of those emulators, this would benefit not only the RPi, but also all the platforms where RetroArch runs: PSP, Wii, iOS, etc

All the effort spent in including individual games on a distro like RetroPie and a frontend like EmulationStation could be instead spent in simply porting those games to libretro. This would make those games compatibles to every device supported by RetroArch. This would also make those games cleaner, by separating the content and the GUI.

Same goes for controller support. With a pure libretro distro, you get a centralised gamepad management. What works for games works for the menu. While with EmulationStation, the joypad code is duplicated. This is bloated.

Graphical contexts are another example. RetroArch already does the work of setting up the context like VideoCore or Mali or X11. External frontends have to duplicate that code.

There is no doubt that libretro should become the target platform if we want cleaner software.

Now I will try to explain why Lakka is better:

- Cross compilation : compile the whole distro in 2 hours on your PC and get the image.
- Compressed auto expandable image : the OS image is 150mb.
- Robustness : a read only system allows monolithic updates like firmware updates of commercial game consoles
- Centralisation : a single git repo to store all the package recipies, patches, configs
- Pure libretro : no bloat, consistency, no effort duplication, better integration with the GUI, better integration with the emulator developer community
- Portability : Lakka supports more than 10 ARM boards, plus PC, with a single code base

Re: Gamegirl: the retro console done right

Posted: Sat Aug 20, 2016 1:25 am
by Vaspi
Well I been running lakka now for only a day on my pizero and I can say I am impressed. I didn't have much time invested in retropi so but what time I did it was obvious it has lost direction as its backend emulation station has basically been abandoned afterall retropie is just a front end.

I think people should give it a chance if you like the PS3 type menu you will be right at home it's basically a clone boots in 40 sec's too :D