scawful 4231c3f2d7 Enhance EditorManager and TestManager with new ROM testing features and UI improvements
- 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.
2025-09-25 16:29:36 -04:00
2024-12-31 15:04:05 -05:00

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

License

YAZE is distributed under the GNU GPLv3 license.

SDL2, ImGui and Abseil are subject to respective licenses.

Screenshots

image

image

image

Description
Yet Another Zelda3 Editor
Readme 34 MiB
Languages
C++ 85.8%
JavaScript 3.7%
Assembly 2.3%
CMake 2%
Shell 1.6%
Other 4.6%