Gcube

From WiiBrew
Jump to: navigation, search

Gcube is a GameCube emulator. It allows GameCube games to be run on a Windows PC, Linux PC or a Mac. Gcube was written by Monk, but as of 24/01/2005 Monk has not been able to continue development.

Contents

Download

Gcube is a part of devkitPro. Packages are available to download here. 0.4 is the latest version.

The source code for Gcube is available to download, again part of the DevkitPro software suite. The source code is also available via CVS.

The old homepage for Gcube is at http://gcube.exemu.net/. The old homepage has outdated binaries and source code.

Use

Gcube is useful to Wii homebrew as it allows developers to test their code on a PC before running the code on the Wii. However, as Gcube was designed for the GameCube, it does not support all the features of the Wii. To run a Wii homebrew application on Gcube, first compile in Gcube mode. If using the template code provided by Wii examples, modify the Makefile. Replace the following:

include $(DEVKITPPC)/wii_rules

with:

include $(DEVKITPPC)/gamecube_rules

Also, the homebrew application can not use any of the Wii specific libraries. Replace the following:

LIBS	:=	-lwiiuse -lbte -logc -lm

with:

LIBS	:=	-logc -lm

Recompile the Wii homebrew application. If the Wii homebrew application is based on the template this is achieved by:

make clean
make

Run the emulator:

gcube the_application_name.elf

Wii

Gcube stopped working in Wii mode with DevkitPro a few versions ago1. The latest version, libogc 20080602, does not work. This is because libogc contains new features that are present on the Wii, but not on the GameCube. tehpola believes Gcube doesn't work because of the IOS support added to libogc2. Attempting to a run a Wii mode homebrew application in Gcube will result in Gcube appearing to 'hang'. No display or output will be produced. Gcube is actually spinning in 'idle_func' before any code from main() is executed. Suggestions on why this is happening are welcome.

References

  1. Devkitppc setup
Personal tools
Resources
Community