A core runtime library for Wii homebrew apps
  • C++ 96.6%
  • C 2.4%
  • Linker Script 0.6%
  • CMake 0.4%
Find a file
2026-01-07 18:56:27 -05:00
bindings/ogc Add starter libogc bindings 2026-01-06 18:44:11 -05:00
peli rt: Disable video before exit 2026-01-07 18:56:27 -05:00
tests rt: Workaround for IPC deadlock in HBC stub 2026-01-07 18:27:11 -05:00
.clang-format Add SYSCONF class 2025-09-25 21:34:34 -04:00
.gitattributes Initial commit 2025-05-25 05:17:43 -04:00
.gitignore Add SYSCONF class 2025-09-25 21:34:34 -04:00
CMakeLists.txt Add plenty of more strict warnings 2026-01-06 15:26:17 -05:00
compile_flags.txt Add plenty of more strict warnings 2026-01-06 15:26:17 -05:00
LICENSE Initial commit 2025-05-25 05:17:43 -04:00
peli-ppc.ld Write custom linker script 2026-01-04 22:55:30 -05:00
README.md Add SYSCONF class 2025-09-25 21:34:34 -04:00
toolchain-devkitppc.cmake rt: Read arguments from launcher 2026-01-06 13:26:03 -05:00

libpeli

A core runtime library for Wii homebrew applications, written in C++23. Currently a work in progress.

Current working features include:

  • PowerPC initialization
  • Multithreading
  • Exception handling
  • Low-level IPC with IOS
  • Video configuration

Building

You will need devkitPPC and CMake. An end goal may be to make the library compatible with other toolchains and compilers, but for right now this is all that's supported.

Clone the repository and then in the repository directory, run:

mkdir build
cd build
cmake .. -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=../toolchain-devkitppc.cmake
cmake --build .

The output is a static library named libpeli.a in the build directory. See the example project in tests/simple for a simple demonstration on how to use the library.

License

The project is made available under the MIT License. See the LICENSE file for the full text of the license.