scawful 789f577ee3 Add integration tests for Dungeon Editor and object parsing functionality
- Updated CMakeLists.txt to include new test files for CPU, PPU, SPC700, APU, and dungeon editor integration tests.
- Introduced new testing helpers in testing.h for validating StatusOr objects with specific error messages and codes.
- Added comprehensive integration tests for the DungeonEditor, covering object parsing, rendering, and room graphics.
- Created mock ROM and object data setups to facilitate testing without real ROM files.
- Implemented various test cases to ensure the reliability of object parsing and rendering logic in the dungeon editor.
2025-09-24 12:44:14 -04:00
2024-12-31 20:52:08 -05:00
2024-12-31 15:04:05 -05:00
2024-08-30 11:17:33 -04:00

Yet Another Zelda3 Editor

  • Platform: Windows, macOS, iOS, GNU/Linux
  • Dependencies: SDL2, ImGui, abseil-cpp

Description

General purpose editor for The Legend of Zelda: A Link to the Past for the Super Nintendo.

Provides bindings in C and Python for building custom tools and utilities.

Takes heavy inspiration from ALTTP community efforts such as Hyrule Magic and ZScream

Building and installation

CMake is required to build yaze

  1. Clone the repository
  2. Create the build directory and configuration
  3. Build and run the application
  4. (Optional) Run the tests
  git clone --recurse-submodules https://github.com/scawful/yaze.git 
  cmake -S . -B build
  cmake --build build

By default this will build all targets.

  • yaze: Editor Application
  • yaze_c: C Library
  • yaze_emu: SNES Emulator
  • yaze_py: Python Module
  • yaze_test: Unit Tests
  • z3ed: Command Line Interface

Dependencies are included as submodules and will be built automatically. For those who want to reduce compile times, consider installing the dependencies on your system. See build-instructions.md for more information.

Documentation

  • For users, please refer to getting_started.md for instructions on how to use yaze.
  • For developers, please refer to the documentation for information on the project's infrastructure.

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%