whatisgithub

What is pearpi?

chronic8000/pearpi — explained in plain English

Analysis updated 2026-05-18

1C++Audience · developerComplexity · 4/5LicenseSetup · hard

In one sentence

A port of the PearPC PowerPC emulator adapted to run on a Raspberry Pi 5 under Debian Trixie, letting you emulate old PowerPC machines on modern ARM hardware.

Mindmap

mindmap
  root((PearPI))
    What it does
      Emulates PowerPC hardware
      Ports PearPC to Pi 5
      Supports 16KB pages
    Tech stack
      C++
      CMake
      Raspberry Pi 5
      X11
    Use cases
      Run legacy PowerPC software
      Install prebuilt deb package
      Build from source
    Audience
      Retro computing hobbyists
      Raspberry Pi developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Emulate an old PowerPC machine to run legacy PowerPC software on a Raspberry Pi 5

USE CASE 2

Install a prebuilt Debian package to run PearPI without compiling from source

USE CASE 3

Build PearPI from source with support for modern 16KB kernel memory pages

USE CASE 4

Run headless PowerPC emulation sessions for testing under LabWC

What is it built with?

C++CMakeRaspberry Pi 5X11LabWC

How does it compare?

chronic8000/pearpiallentdan/shape_based_matchingamu2mod/radeonmon
Stars111
LanguageC++C++C++
Last pushed2019-03-01
MaintenanceDormant
Setup difficultyhardmoderatemoderate
Complexity4/53/53/5
Audiencedeveloperdevelopervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a Raspberry Pi 5 running Debian Trixie and an X11 or Xwayland display to render the emulated screen.

You can use and modify this freely, but if you distribute modified versions, you must release the source code under the same license.

So what is it?

PearPI is a modified version of an older emulator called PearPC, which lets a computer pretend to be an old PowerPC based machine so it can run classic PowerPC software. This project takes that original emulator and adapts it specifically to run well on a Raspberry Pi 5 single board computer, using the Debian Trixie operating system and the LabWC window manager, and it specifically fixes compatibility with a newer kernel memory setting called 16 kilobyte pages, which the original code did not expect. The changes made in this port focus mainly on getting old code to work correctly on modern ARM based hardware. The project updated detection scripts so the build system recognizes 64 bit ARM processors properly, changed how the program figures out memory page sizes so it asks the operating system directly instead of assuming an outdated fixed value, reorganized how certain build tools generate their code so the project builds cleanly with current compiler versions, and fixed some internal links to other code libraries so they connect over secure HTTPS instead of an older insecure method. There are two ways to get PearPI running. The easier path is downloading a ready made installer package built for the Raspberry Pi 5 and installing it with a standard Debian package command, then installing any missing supporting software. The other path is building it from source yourself, which involves installing several development tools, downloading the project's code along with its related sub projects, and then compiling it using CMake. Either way, running an emulated PowerPC machine requires writing a small configuration file that sets things like screen resolution, how much memory the emulated machine has, and whether virtual storage, network, or USB devices are enabled. Because PearPI displays its emulated screen using the X11 windowing system, it needs a display to draw to, either a normal graphical session or a headless virtual one for testing. The project is written in C++, licensed under the GNU General Public License version 2, and currently has 1 star on GitHub, intended for people who want to run old PowerPC based software or operating systems on modern Raspberry Pi hardware.

Copy-paste prompts

Prompt 1
Walk me through installing the PearPI .deb package on my Raspberry Pi 5
Prompt 2
Help me write a pearpi.cfg file to emulate an 800x600 PowerPC machine with 64MB RAM
Prompt 3
Explain what the 16KB host page fix in this port actually changes
Prompt 4
Show me how to build PearPI from source with CMake on Debian Trixie

Frequently asked questions

What is pearpi?

A port of the PearPC PowerPC emulator adapted to run on a Raspberry Pi 5 under Debian Trixie, letting you emulate old PowerPC machines on modern ARM hardware.

What language is pearpi written in?

Mainly C++. The stack also includes C++, CMake, Raspberry Pi 5.

What license does pearpi use?

You can use and modify this freely, but if you distribute modified versions, you must release the source code under the same license.

How hard is pearpi to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is pearpi for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.