Dolphin emulates the Wii and GameCube consoles, as well as various accessories for and derivatives of said consoles. It runs Wii, GameCube and Triforce software on a x86 or x86_64 PC (Windows, Linux, OS X). As of June 2008 Dolphin's source was released under the GPLv2 license and is under active development.
Obtaining a build
Compilation from Source
Recommended third party builds
Usage with Homebrew
- Run Dolphin. If you compiled Dolphin, run the appropriate executable located within Binary\Platform directory, where Platform is win32, linux, etc.
- Run your homebrew. From the menu, File -> Open.... Select the elf or dol file you would like to run. If successful, a new window will be displayed with the output.
- Note that you can cause the screen to be rendered to the main Dolphin window with the Config->Display->Render to main window option.
General Notes / Disclaimer
- Dolphin is useful to homebrew as it allows developers to test code on a PC before running it on real hardware. However, Dolphin does not support all the features of the Wii and some problems may be experienced running homebrew.
- Dolphin hooks the typical printf functions when it is able to determine their location. If you are running an elf file (with symbols), and cannot see your debug output, this is could be the reason. Either strip your elf, run the dol, or modify dolphin so this HLE does not take place. The other reason could be that you are writing directly to the XFB (libogc's console output does this). In this case, you additionally need to enable the Graphics->Use Real XFB setting.
The following was tested with examples from devkitPro svn r4306, running on Windows 7 (64bit), Dolphin svn r6182. Apps run with default settings unless noted otherwise. These results are provided so that one can quickly realize which options are needed for common tasks - such as using SD support, homebrew text console, etc.
|examples\wii\audio\*||Do not work.|
|examples\wii\devices\network\sockettest||Does not work. Socket is not setup successfully.|
|examples\wii\devices\usbgecko\gdbstub||"Works". Will run and call _break(), however a usbgecko device is not emulated, so this technique is useless. There are better ways to accomplish similar functionality with dolphin.|
|examples\wii\devices\usbkeyboard\basic_stdin||Works correctly. Requires Graphics->Use Real XFB to be enabled. Requires Config->Wii->Connect USB Keyboard to be enabled.|
|examples\wii\filesystem\directory||Works correctly. Requires Graphics->Use Real XFB to be enabled. Requires Config->Wii->Insert SD Card to be enabled.|
|examples\wii\graphics\gx\neheGX\lesson8||Texturing is broken.|
|examples\wii\template||Works correctly. Requires Graphics->Use Real XFB to be enabled.|