a1429a8199faff0db75be14dc1402eadfb7f3e29
- Revamped README.md to provide a clearer overview of the project, including updated platform support, key features, and installation instructions. - Added a new asar-integration.md file detailing the Asar 65816 assembler integration, including usage examples and API references. - Updated changelog.md to reflect new features and improvements in version 0.3.0, including Asar integration, ZSCustomOverworld v3, and enhanced message editing. - Revised getting-started.md to indicate the completion of Asar patching features and updated CLI command statuses. - Enhanced index.md to include new documentation links and a summary of major new features in the latest release. - Improved infrastructure.md to reflect the transition to C++23 and modern CMake practices.
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%