# cemu-project/cemu

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/cemu-project-cemu).**

9,029 stars · 772 forks · C++ · mpl-2.0

## Links

- GitHub: https://github.com/cemu-project/Cemu
- Homepage: https://cemu.info
- awesome-repositories: https://awesome-repositories.com/repository/cemu-project-cemu.md

## Topics

`cemu` `cemu-emulator` `cpp` `emulation` `emulator` `nintendo` `wiiu`

## Description

Cemu is a cross-platform game console emulator designed to replicate the Nintendo Wii U hardware environment. It provides a software simulation layer that allows original Wii U games and homebrew applications to run on Windows, Linux, and macOS.

The project translates guest machine code and graphics API calls into host instructions and modern shaders to enable hardware acceleration. It utilizes a dynamic recompilation engine and a host-API graphics backend to interface with Vulkan or OpenGL.

The system manages hardware simulation through multi-threaded CPU emulation, memory-mapped I/O simulation, and a virtual file system that abstracts guest disk images and archives.

## Tags

### Hardware & IoT

- [Hardware-Accelerated Emulators](https://awesome-repositories.com/f/hardware-iot/embedded-robotics/hardware-in-the-loop-simulators/binary-emulators/hardware-accelerated-emulators.md) — Leverages native hardware translation layers to execute Wii U software and homebrew applications with high performance. ([source](https://cdn.jsdelivr.net/gh/cemu-project/cemu@main/README.md))
- [Memory-Mapped I/O Simulation](https://awesome-repositories.com/f/hardware-iot/vintage-hardware-simulation/memory-mapped-i-o-simulation.md) — Simulates hardware register communication by intercepting specific memory address access patterns.

### Part of an Awesome List

- [Game Emulators](https://awesome-repositories.com/f/awesome-lists/devtools/game-emulators.md) — Allows playing console games on Windows, Linux, and macOS by mimicking original system architecture.
- [Games & Emulation](https://awesome-repositories.com/f/awesome-lists/media/games-emulation.md) — Provides a software simulation layer for running Wii U games and homebrew applications on PC.
- [Media & Communication](https://awesome-repositories.com/f/awesome-lists/media/media-communication.md) — Wii U emulator

### Game Development

- [Emulators](https://awesome-repositories.com/f/game-development/game-engines-frameworks/game-engines/cross-platform/emulators.md) — Provides a virtual environment for executing original Wii U software across multiple modern operating systems.
- [Retro Game Emulation](https://awesome-repositories.com/f/game-development/retro-game-emulation.md) — Runs Wii U software and games on modern hardware using a software simulation layer.

### Graphics & Multimedia

- [Translation Layers](https://awesome-repositories.com/f/graphics-multimedia/gpu-accelerated-shaders/translation-layers.md) — Provides a custom translation layer that converts guest graphics API calls into modern host shaders.

### Operating Systems & Systems Programming

- [Graphics Backends](https://awesome-repositories.com/f/operating-systems-systems-programming/platform-development-integration/platform-integrations/graphics-backends.md) — Provides a graphics backend that interfaces with Vulkan and OpenGL to render guest frames.
- [Multi-Threaded Implementations](https://awesome-repositories.com/f/operating-systems-systems-programming/computer-architecture/instruction-execution-models/instruction-level-emulators/cpu-core-implementations/multi-threaded-implementations.md) — Distributes guest processor tasks across multiple host cores to simulate parallel execution and improve frame rates.

### Software Engineering & Architecture

- [Dynamic Recompilation Engines](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/computational-efficiency/cpu-optimization-strategies/hardware-instruction-targeting/instruction-set-targets/instruction-set-architecture-learning/dynamic-recompilation-engines.md) — Implements a dynamic recompilation engine to translate guest machine code into host instructions for high-performance execution.

### Data & Databases

- [Virtual File Systems](https://awesome-repositories.com/f/data-databases/virtual-file-systems.md) — Implements a virtual file system that abstracts guest disk images and archives into a structured directory format.

### Development Tools & Productivity

- [Homebrew Execution Environments](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/debugging-diagnostics/in-app-debugging-consoles/console-execution-debuggers/homebrew-execution-environments.md) — Enables the execution of community-made homebrew applications on a PC.
