4231c3f2d71859275121cf88b2ced3d94573b307
- Added new menu options in EditorManager for ROM analysis and testing, including data integrity checks and save/load testing. - Updated TestManager to include enhanced logging for ROM state and new actions for refreshing the current ROM reference. - Introduced a dedicated UI for displaying ROM test results and options for running tests on the currently loaded ROM. - Improved the overall layout and organization of the testing dashboard for better user experience and accessibility.
Yet Another Zelda3 Editor
A modern, cross-platform editor for The Legend of Zelda: A Link to the Past ROM hacking.
- Platform: Windows, macOS, Linux
- Language: C++23 with modern CMake build system
- Features: ROM editing, Asar 65816 assembly patching, ZSCustomOverworld v3, GUI docking
Key Features
- Asar Integration: Apply 65816 assembly patches and extract symbols
- ZSCustomOverworld v3: Enhanced overworld editing capabilities
- Message Editing: Advanced text editing with real-time preview
- GUI Docking: Flexible workspace management
- Modern CLI: Enhanced z3ed tool with interactive TUI
Takes inspiration from Hyrule Magic and ZScream
Building and Installation
Quick Build
git clone --recurse-submodules https://github.com/scawful/yaze.git
cd yaze
cmake --preset default
cmake --build --preset default
Targets
- yaze: GUI Editor Application
- z3ed: Command Line Interface with Asar support
- yaze_c: C Library
- yaze_test: Unit Tests
Asar Examples
# Apply assembly patch
z3ed asar patch.asm --rom=zelda3.sfc
# Extract symbols
z3ed extract patch.asm
# Interactive TUI
z3ed --tui
See build-instructions.md for detailed setup information.
Documentation
- Getting Started - Setup and basic usage
- Asar Integration - Assembly patching and symbol extraction
- Build Instructions - Detailed build guide
- Contributing - How to contribute
- Documentation Index - Complete documentation overview
License
YAZE is distributed under the GNU GPLv3 license.
SDL2, ImGui and Abseil are subject to respective licenses.
Screenshots
Description
Languages
C++
85.8%
JavaScript
3.7%
Assembly
2.3%
CMake
2%
Shell
1.6%
Other
4.6%