P4 Launcher offers a PC-like and retro gaming experience on ESP32-P4 boards

Gil Tal has developed the P4 Launcher, an open-source application platform designed to bring a PC-like experience to ESP32-P4 boards with an attached touchscreen display.

The launcher boots directly into its interface, while applications (.papp files) are stored on a microSD card and loaded into PSRAM when launched. You can add, remove, and run applications without reflashing the firmware or rebooting the device by simply copying files to the microSD card.P4 Launcher ESP32-P4 Application HubGil says 21 PAPP (PSRAM APP) applications are available now, mostly emulators and games, including Neo Geo and Atari 2600 emulators, Doom, Quake, Duke Nukem 3D and OpenTyrian, plus Clock and Files. Like ESPBrookesia, the P4 Launcher user interface runs on ESP32-P4, but it’s more flexible since it supports apps stored on the microSD card and targets mainly gaming for now.

The launcher currently works on the Guition ESP32-P4 4.3″ (800×480), the Guition JC1060P470C 7″ (1024×600), and the smaller M5Stack Tab5 (1280×720) devkits. Various input devices are supported, such as PS3 or Nintendo controllers.

P4 Launcher Settings
Settings on the Guition ESP32-P7 7″ board

The user interface is based on LVGL, the compositor scales the UI to various resolutions, the audio engine supports up to 8 streams at 4 to 192 kHz, and up to four input devices are supported for multiplayer games. P4 Launcher also supports firmware updates from the microSD card or GitHub with automatic rollback if a new version doesn’t start.

An SDK is also provided for people wanting to write their own PAPP apps, as well as two compatibility layers for existing code found in apps/common/odroid to re-implement the odroid_* API, and apps/common/v1compat to implement the older PAPP v1 service table on the SDK. The latter notably enables Doom, Quake, Duke Nukem 3D, and OpenTyrian to run with their original glue code.

ESP32-P4 games
Games menu

You can find the source code based on the ESP-IDF v5.5.2 on GitHub. Like so many projects these days, the P4 Launcher development has been heavily assisted by Anthropic’s Claude coding assistant. Having said that, the project looks well-structured and properly documented.  I’ve also asked for a demo video to show the project in action, and the video embedded below showcases the Guition 7-inch devkit running P4 Launcher (the volume is a little low).

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Dragon Q8B Edge AI SBC with Snapdragon 8cx Gen3 SoC
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
0 Comments
oldest
newest
Boardcon Amlogic A311Y3 system-on-module with 8 TOPS AI performance