swiss-gc
Swiss is a homebrew launcher for the GameCube

Overview
Swiss is an all-in-one homebrew utility for the Nintendo GameCube, designed to comprehensively browse and manage various storage media and peripherals while emulating external expansion interfaces. In this project, WIZnet iEthernet chips were used to bring modern networking capabilities to a retro console. Below are the project features and the WIZnet chips used.
Key Features
- Multi-device browsing: Supports various media such as SD cards (SD Gecko/SD2SP2), DVD±R/original game discs, Qoob Pro flash memory, USB Gecko remote storage, and WASP/Wiikey Fusion.
- Network device integration: Enables file sharing and streaming via SMB, FTP, and FSP protocols. Network connectivity is implemented using ENC28J60, W5500, W6100, or W6300 chips as a replacement for the GameCube Broadband Adapter.
- Device emulation: Software-based reproduction of processor interfaces, DVD interfaces, external expansion interfaces (Broadband Adapter), memory cards, and audio streaming interfaces. In particular, the external expansion interface uses ENC28J60, W5500, W6100, or W6300 network chips to enable game data transfer and online play.
- Convenience features: Includes game ID support for BlueRetro, MemCard PRO, and RetroTINK-4K; network setting profiles; TCP/IP-based “wiiload” support; and more.
WIZnet Chips Used and Features
- W5500: An Ethernet chip with a built-in hardware TCP/IP stack and 10/100 Ethernet MAC/PHY. Connects easily to external MCUs via an SPI interface, provides 8 independent sockets, a 32KB buffer, low-power modes, and Wake-on-LAN functionality.
- W6100: Based on W5500 technology but adds IPv6 support, offering a dual IPv4/IPv6 stack. Supports TCP, UDP, ICMPv6/v4, 8 sockets, 32KB memory, and low-power modes.
- W6300: A high-performance TOE (TCP/IP Offload Engine) chip with a 150 MHz system clock and QSPI interface, delivering Ethernet speeds over 90 Mbps. Supports dual IPv4/IPv6 hardware stacks, a 64KB buffer, and 8 sockets for stable high-speed networking even on retro consoles.
What’s New from WIZnet’s Perspective
Bringing modern networking to retro consoles: Using W5500/W6100/W6300 enables GameCube to support standard protocols such as SMB/FTP/FSP, surpassing the limitations of the original Broadband Adapter and even adding IPv6 capability.
Open-source development platform: Developed using open-source tools such as devkitPro and libogc2 in C/C++, with WIZnet’s ioLibrary driver simplifying chip control.
Diverse development tools and languages: Direct SPI/QSPI connection of WIZnet chips, combined with automated build scripts and continuous integration, allows for stable firmware development.
Expanded application ideas: Beyond retro gaming, it can be adapted for home servers, file streaming, IoT sensor integration, and used as a platform for IPv6 network experiments with other WIZnet products.
This project demonstrates a new approach to connecting the GameCube to the modern network world through WIZnet chips. It serves as a valuable reference for the open-source community and developers.
Project link: https://github.com/emukidid/swiss-gc/tree/68c947c522b4089ae94ec502c9f57a7033db7c1a