zig-wii header
Home Tutorials Resources GitHub

Welcome to the zig-wii project!

zig-wii is a collection of toolchains and libraries for the Nintendo Wii combined together using the Zig language. It is mainly an effort to make it as simple as possible for anyone to start developing games and applications targeting the Wii.

To get started with development, make sure you have Zig and Dolphin installed on your computer. Next, run the following commands, which should build the example project provided by zig-wii and run it in Dolphin:

        
          git clone https://github.com/zig-wii/example
          cd example/
          zig build run
        
      

That's right, the only dependencies you need are Zig and Git for building the .dol file, and optionally Dolphin for running. zig-wii takes care of installing devkitpro for your operating system (currently supports Linux, MacOS and Windows) so you don't have to deal with that manually. You can also deploy the .dol file to your Wii over the network if you have the homebrew channel. To do so, find the ip address of your Wii, then change following line in build.zig:

        
          var obj = try ogc.target_wii(builder, .{ .name = "example" });
        
      

into this:

        
          var obj = try ogc.target_wii(builder, .{ .name = "example", .wii_ip = "192.168.11.171" });          
        
      

Now you can run zig build deploy to automatically build and deploy the .dol file over to your Wii. If you encounter a stack dump while developing, use zig build line -- <addresses> to find out where in the code the stack dump occured.