runtime/README.md
2024-06-08 14:45:39 -04:00

1.0 KiB

MCPI-Reborn Runtime

Fact: Minecraft: Pi Edition is a 32-bit ARM program.

Another fact: Most modern computers do not use 32-bit ARM and therefore cannot run MCPI natively.

Solution: This project allows MCPI to run on modern computers.

How

This project works differently depending on the host system's architecture.

64-Bit x86 Host

On this platform, a patched version of QEMU is used.

QEMU emulates ARM code so MCPI can run on x86 hardware. And the patch adds a system-call which allows MCPI to run graphics code on the host. This prevents the need for emulated GPU drivers.

64-Bit ARM Host

QEMU is not necessary on this platform because it can already run 32-bit ARM code natively.

Instead, the runtime is implemented as two processes: a parent and a child. The child becomes MCPI and can send graphics commands to the parent. And because the parent is 64-bit, 32-bit drivers are not needed.

32-Bit ARM Host

This project is unnecessary on this platform.

Other Architectures

Any unlisted platforms are unsupported.