Files
yaze/docs/index.md
scawful a1429a8199 Update README and documentation for v0.3.0 release
- 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.
2025-09-25 09:28:46 -04:00

6.0 KiB

Yaze Documentation

Welcome to the Yaze documentation. This cross-platform Zelda 3 ROM editor is built with modern C++23, SDL2, ImGui, and integrated Asar 65816 assembler support.

Quick Start

New in v0.3.0

Core Documentation

Architecture & Infrastructure

Editors

Overworld Editor

Dungeon Editor

Graphics & UI

Testing & Development

Current Version: 0.3.0 (January 2025)

Major New Features

Asar 65816 Assembler Integration

  • Cross-platform ROM patching with assembly code support
  • Symbol extraction with addresses and opcodes
  • Assembly validation and comprehensive error reporting
  • Modern C++ API with safe memory management
  • Enhanced CLI tools with improved UX

ZSCustomOverworld v3

  • Enhanced overworld editing capabilities
  • Advanced map properties and metadata
  • Custom graphics support and tile management
  • Improved compatibility with existing projects

Advanced Message Editing

  • Enhanced text editing interface with improved parsing
  • Real-time preview of message formatting
  • Better error handling for message validation
  • Improved workflow for text-based ROM hacking

GUI Docking System

  • Improved workspace management with flexible layouts
  • Better window organization for complex editing tasks
  • Enhanced user workflow with customizable interfaces
  • Modern UI improvements throughout the application

Technical Improvements

  • Modern CMake 3.16+: Target-based configuration and build system
  • CMakePresets: Development workflow presets for better productivity
  • Cross-platform CI/CD: Automated builds and testing for all platforms
  • Professional packaging: NSIS, DMG, and DEB/RPM installers
  • Enhanced testing: ROM-dependent test separation for CI compatibility

🔄 In Progress

  • Sprite Builder System: Custom sprite creation and editing tools
  • Emulator Subsystem: SNES emulation for testing modifications
  • Music Editor: Enhanced music data editing interface

Planned for 0.4.X

  • Overworld Sprites: Complete sprite editing with add/remove functionality
  • Enhanced Dungeon Editing: Advanced room object editing and manipulation
  • Tile16 Editing: Enhanced editor for creating and modifying tile16 data
  • Plugin Architecture: Framework for community extensions and custom tools

Key Features

ROM Editing Capabilities

  • Asar 65816 Assembly: Apply assembly patches with symbol extraction
  • Overworld Editing: ZSCustomOverworld v3 with enhanced features
  • Message Editing: Advanced text editing with real-time preview
  • Palette Management: Comprehensive color and palette editing
  • Graphics Editing: SNES graphics manipulation and preview
  • Hex Editing: Direct ROM data editing with validation

Development Tools

  • Enhanced CLI: Modern z3ed with subcommands and interactive TUI
  • Symbol Analysis: Extract and analyze assembly symbols
  • ROM Validation: Comprehensive ROM integrity checking
  • Project Management: Save and load complete ROM hacking projects

Cross-Platform Support

  • Windows: Full support with MSVC and MinGW compilers
  • macOS: Universal binaries supporting Intel and Apple Silicon
  • Linux: GCC and Clang support with package management
  • Professional Packaging: Native installers for all platforms

Compatibility

ROM Support

  • Vanilla ROMs: Original Zelda 3 ROMs (US/JP)
  • ZSCustomOverworld v2/v3: Enhanced overworld features and compatibility
  • Custom Modifications: Support for community ROM hacks and modifications

File Format Support

  • Assembly Files: .asm files with Asar 65816 assembler
  • BPS Patches: Standard ROM patching format
  • Graphics Files: PNG, BMP, and SNES-specific formats
  • Project Files: .yaze project format for complete editing sessions

Development & Community

Architecture

  • Modern C++23: Latest language features for performance and safety
  • Modular Design: Component-based architecture for maintainability
  • Cross-Platform: Consistent experience across all supported platforms
  • Comprehensive Testing: Unit tests, integration tests, and ROM validation

Contributing

See Contributing for guidelines on:

  • Code style and C++23 standards
  • Testing requirements and ROM handling
  • Pull request process and review
  • Development setup with CMake presets

Community

License

This project is licensed under the terms specified in the LICENSE file.


Last updated: January 2025 - Version 0.3.0