105 lines
5.6 KiB
Markdown
105 lines
5.6 KiB
Markdown
# yaze Documentation
|
|
|
|
Welcome to the official documentation for yaze, a comprehensive ROM editor for The Legend of Zelda: A Link to the Past.
|
|
|
|
## A: Getting Started & Testing
|
|
- [A1: Getting Started](A1-getting-started.md) - Basic setup and usage
|
|
- [A1: Testing Guide](A1-testing-guide.md) - Testing framework and best practices
|
|
- [A2: Test Dashboard Refactoring](A2-test-dashboard-refactoring.md) - In-app test dashboard architecture
|
|
|
|
## B: Build & Platform
|
|
- [B1: Build Instructions](B1-build-instructions.md) - How to build yaze on Windows, macOS, and Linux
|
|
- [B2: Platform Compatibility](B2-platform-compatibility.md) - Cross-platform support details
|
|
- [B3: Build Presets](B3-build-presets.md) - CMake preset system guide
|
|
- [B4: Git Workflow](B4-git-workflow.md) - Branching strategy, commit conventions, and release process
|
|
- [B5: Architecture and Networking](B5-architecture-and-networking.md) - System architecture, gRPC, and networking
|
|
- [B6: Zelda3 Library Refactoring](B6-zelda3-library-refactoring.md) - Core library modularization plan
|
|
|
|
## C: `z3ed` CLI
|
|
- [C1: `z3ed` Agent Guide](C1-z3ed-agent-guide.md) - AI-powered command-line interface
|
|
- [C2: Testing Without ROMs](C2-testing-without-roms.md) - Mock ROM mode for testing and CI/CD
|
|
- [C3: Agent Architecture](C3-agent-architecture.md) - AI agent system architecture
|
|
- [C4: z3ed Refactoring](C4-z3ed-refactoring.md) - CLI tool refactoring summary
|
|
- [C5: z3ed Command Abstraction](C5-z3ed-command-abstraction.md) - Command system design
|
|
|
|
## E: Development & API
|
|
- [E1: Assembly Style Guide](E1-asm-style-guide.md) - 65816 assembly coding standards
|
|
- [E2: Development Guide](E2-development-guide.md) - Core architectural patterns, UI systems, and best practices
|
|
- [E3: API Reference](E3-api-reference.md) - C/C++ API documentation for extensions
|
|
- [E4: Emulator Development Guide](E4-Emulator-Development-Guide.md) - SNES emulator subsystem implementation guide
|
|
- [E5: Debugging Guide](E5-debugging-guide.md) - Debugging techniques and workflows
|
|
- [E6: Emulator Improvements](E6-emulator-improvements.md) - Core accuracy and performance improvements roadmap
|
|
- [E7: Debugging Startup Flags](E7-debugging-startup-flags.md) - CLI flags for quick editor access and testing
|
|
- [E8: Emulator Debugging Vision](E8-emulator-debugging-vision.md) - Long-term vision for Mesen2-level debugging features
|
|
- [E9: AI Agent Debugging Guide](E9-ai-agent-debugging-guide.md) - Debugging AI agent integration
|
|
- [E10: APU Timing Analysis](E10-apu-timing-analysis.md) - APU timing fix technical analysis
|
|
|
|
## F: Technical Documentation
|
|
- [F1: Dungeon Editor Guide](F1-dungeon-editor-guide.md) - Master guide to the dungeon editing system
|
|
- [F2: Tile16 Editor Palette System](F2-tile16-editor-palette-system.md) - Design of the palette system
|
|
- [F3: Overworld Loading](F3-overworld-loading.md) - How vanilla and ZSCustomOverworld maps are loaded
|
|
- [F4: Overworld Agent Guide](F4-overworld-agent-guide.md) - AI agent integration for overworld editing
|
|
|
|
## G: Graphics & GUI Systems
|
|
- [G1: Canvas System and Automation](G1-canvas-guide.md) - Core GUI drawing and interaction system
|
|
- [G2: Renderer Migration Plan](G2-renderer-migration-plan.md) - Historical plan for renderer refactoring
|
|
- [G3: Palette System Overview](G3-palete-system-overview.md) - SNES palette system and editor integration
|
|
- [G3: Renderer Migration Complete](G3-renderer-migration-complete.md) - Post-migration analysis and results
|
|
- [G4: Canvas Coordinate Fix](G4-canvas-coordinate-fix.md) - Canvas coordinate synchronization bug fix
|
|
- [G5: GUI Consistency Guide](G5-gui-consistency-guide.md) - Card-based architecture and UI standards
|
|
|
|
## H: Project Info
|
|
- [H1: Changelog](H1-changelog.md)
|
|
|
|
## I: Roadmap & Vision
|
|
- [I1: Roadmap](I1-roadmap.md) - Current development roadmap and planned releases
|
|
- [I2: Future Improvements](I2-future-improvements.md) - Long-term vision and aspirational features
|
|
|
|
## R: ROM Reference
|
|
- [R1: A Link to the Past ROM Reference](R1-alttp-rom-reference.md) - ALTTP ROM structures, graphics, palettes, and compression
|
|
|
|
---
|
|
|
|
## Documentation Standards
|
|
|
|
### Naming Convention
|
|
- **A-series**: Getting Started & Testing
|
|
- **B-series**: Build, Platform & Git Workflow
|
|
- **C-series**: CLI Tools (`z3ed`)
|
|
- **E-series**: Development, API & Emulator
|
|
- **F-series**: Feature-Specific Technical Docs
|
|
- **G-series**: Graphics & GUI Systems
|
|
- **H-series**: Project Info (Changelog, etc.)
|
|
- **I-series**: Roadmap & Vision
|
|
- **R-series**: ROM Technical Reference
|
|
|
|
### File Naming
|
|
- Use descriptive, kebab-case names
|
|
- Prefix with series letter and number (e.g., `E4-emulator-development-guide.md`)
|
|
- Keep filenames concise but clear
|
|
|
|
### Organization Tips
|
|
For Doxygen integration, this index can be enhanced with:
|
|
- `@mainpage` directive to make this the main documentation page
|
|
- `@defgroup` to create logical groupings across files
|
|
- `@tableofcontents` for automatic TOC generation
|
|
- See individual files for `@page` and `@section` usage
|
|
|
|
### Doxygen Integration Tips
|
|
- Add a short `@mainpage` block to `docs/index.md` so generated HTML mirrors the
|
|
manual structure.
|
|
- Define high-level groups with `@defgroup` (`getting_started`, `building`,
|
|
`graphics_gui`, etc.) and attach individual docs using `@page ... @ingroup`.
|
|
- Use `@subpage`, `@section`, and `@subsection` when a document benefits from
|
|
nested navigation.
|
|
- Configure `Doxyfile` with `USE_MDFILE_AS_MAINPAGE = docs/index.md`,
|
|
`FILE_PATTERNS = *.md *.h *.cc`, and `EXTENSION_MAPPING = md=C++` to combine
|
|
Markdown and source comments.
|
|
- Keep Markdown reader-friendly—wrap Doxygen directives in comment fences (`/**`
|
|
… `*/`) so they are ignored by GitHub while remaining visible to the
|
|
generator.
|
|
|
|
---
|
|
|
|
*Last updated: October 13, 2025 - Version 0.3.2*
|