libogc is a collection of low-level libraries for the GameCube and Wii. This collection of libraries was originally written by shagkur for the GameCube and has been developed over the past 6 years. It is designed to be used with the devkitPPC toolchain.

It includes support for the following low-level Wii/GameCube sub-systems:

* ARAM
* AUDIO
* EXI - Support routines for the system bus which connects many internal devices to the CPU
* IRQ - Hardware Interrupts
* DSP
* DVD
* GX
* VIDEO
* Cache
* Memory Card
* Console
* Threads
o Messages
o Mutexes
o Semaphores
o Condition Variables

More info/source- Wiibrew
Download