When I began to assemble my Raspberry Pi-based emulator setup, one of the core issues was simply understanding the elements which comprise the system, namely the hardware and numerous software components which RetroPie relies upon, and which in turn rely upon RetroPie.
Understanding this stack became more crucial once the initial installation was complete, and I subsequently began to explore and customise the system (including setting individual emulator video resolution, display filtering and analog effects, and controller / joypad support).
Firstly, what is RetroPie?
According to petrockblock.com, the home of RetroPie:
“The RetroPie Project is a collection of works that all have the overall goal to turn the Raspberry Pi into a dedicated retro-gaming console.”
RetroPie can be thought of as a framework which wraps and extends other software components, ultimately handling the loading of a selected game image into the relevant video game emulator.
The system also provisions management and configuration of numerous elements, including:
- Loading button and axis (analog) control maps, matching upon detected Usb controller(s)
- Setting video resolution
- Applying filtering and video overlay effects
- Providing state management (providing loading and saving of in-progress games)