Developer Guide
Information for developers who want to contribute to suyu
Getting Started
📋 Prerequisites
- C++20 compatible compiler (GCC 11+, Clang 12+, MSVC 2022)
- CMake 3.22 or newer
- Git for version control
- Basic knowledge of emulation concepts
Building from Source
For detailed build instructions, see the README.md in our repository.
git clone https://github.com/suyu-emu/suyu.git
cd suyu
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)Contributing
🤝 How to Contribute
- Submit a dev application in our GitHub Organization
- Once approved, we'll help set you up with repository access
- Fork the repository and create a feature branch
- Make your changes following our coding standards
- Submit a pull request with detailed description
Code Style Guidelines
- Follow the existing code style and formatting
- Use meaningful variable and function names
- Add comments for complex logic
- Write unit tests for new functionality
- Ensure code compiles without warnings
Architecture Overview
Core Components
- Core: Main emulation engine and system services
- Video Core: Graphics rendering and GPU emulation
- Audio Core: Audio processing and output
- Input: Controller and input device handling
- Frontend: User interface and platform-specific code