update infra docs
This commit is contained in:
@@ -2,9 +2,26 @@
|
|||||||
|
|
||||||
For developers to reference.
|
For developers to reference.
|
||||||
|
|
||||||
|
## Z3ED cli
|
||||||
|
|
||||||
|
| Command | Arg | Params | Status |
|
||||||
|
|---------|-----|--------|--------|
|
||||||
|
| Apply BPS Patch | -a | rom_file bps_file | In progress |
|
||||||
|
| Create BPS Patch | -c | bps_file src_file modified_file | Not started |
|
||||||
|
| Asar Patch | -asar | asm_file rom_file | In progress |
|
||||||
|
| Open ROM | -o | rom_file | Complete |
|
||||||
|
| Backup ROM | -b | rom_file [new_file] | In progress |
|
||||||
|
| Expand ROM | -x | rom_file file_size | Not started |
|
||||||
|
| Transfer Tile16 | -t | src_rom dest_rom tile32_id_list(csv) | Complete |
|
||||||
|
| Export Graphics | -e | rom_file bin_file | In progress |
|
||||||
|
| Import Graphics | -i | bin_file rom_file | Not started |
|
||||||
|
| SNES to PC Address | -s | address | Complete |
|
||||||
|
| PC to SNES Address | -p | address | Complete |
|
||||||
|
|
||||||
## Targets
|
## Targets
|
||||||
|
|
||||||
- **yaze**: Desktop application for Windows/macOS/Linux
|
- **yaze**: Desktop application for Windows/macOS/Linux
|
||||||
|
- **z3ed**: Command Line Interface
|
||||||
- **yaze_c**: C Library
|
- **yaze_c**: C Library
|
||||||
- **yaze_py**: Python Module
|
- **yaze_py**: Python Module
|
||||||
- **yaze_ext**: Extensions library
|
- **yaze_ext**: Extensions library
|
||||||
@@ -12,8 +29,7 @@ For developers to reference.
|
|||||||
|
|
||||||
## Directory Structure
|
## Directory Structure
|
||||||
|
|
||||||
- **.github/workflows**: Contains `yaze_test` workflow config.
|
- **assets**: Hosts assets like fonts, icons, assembly source, etc.
|
||||||
- **assets**: Hosts assets like fonts.
|
|
||||||
- **cmake**: Contains CMake configurations.
|
- **cmake**: Contains CMake configurations.
|
||||||
- **docs**: Contains documentation for users and developers.
|
- **docs**: Contains documentation for users and developers.
|
||||||
- [Getting Started](./getting-started.md)
|
- [Getting Started](./getting-started.md)
|
||||||
@@ -24,14 +40,7 @@ For developers to reference.
|
|||||||
- **cli**: Contains the command line interface `z3ed`
|
- **cli**: Contains the command line interface `z3ed`
|
||||||
- **ext**: Contains the extensions library `yaze_ext`
|
- **ext**: Contains the extensions library `yaze_ext`
|
||||||
- **py**: Contains the Python module `yaze_py`
|
- **py**: Contains the Python module `yaze_py`
|
||||||
- **lib**: Contains git submodule dependencies.
|
- **lib**: Contains the dependencies as git submodules
|
||||||
- Abseil-cpp
|
|
||||||
- Asar
|
|
||||||
- ImGui
|
|
||||||
- ImGuiFileDialog
|
|
||||||
- ImGuiColorTextEdit
|
|
||||||
- imgui_memory_editor
|
|
||||||
- SDL2
|
|
||||||
- **test**: Contains testing interface `yaze_test`
|
- **test**: Contains testing interface `yaze_test`
|
||||||
|
|
||||||
### Flow of Control
|
### Flow of Control
|
||||||
@@ -47,21 +56,7 @@ For developers to reference.
|
|||||||
- Renders the output to the screen.
|
- Renders the output to the screen.
|
||||||
- Handles the teardown of SDL and ImGui resources.
|
- Handles the teardown of SDL and ImGui resources.
|
||||||
- [app/editor/master_editor.cc](../src/app/editor/master_editor.cc)
|
- [app/editor/master_editor.cc](../src/app/editor/master_editor.cc)
|
||||||
- Handles the main menu bar.
|
- Handles the main menu bar
|
||||||
- File
|
|
||||||
- Open
|
|
||||||
- Save
|
|
||||||
- Edit
|
|
||||||
- View
|
|
||||||
- Emulator
|
|
||||||
- HEX Editor
|
|
||||||
- Palette Editor
|
|
||||||
- Memory Viewer
|
|
||||||
- ImGui Demo
|
|
||||||
- GUI Tools
|
|
||||||
- Runtime Metrics
|
|
||||||
- Style Editor
|
|
||||||
- Help
|
|
||||||
- Handles `absl::Status` errors as popups delivered to the user.
|
- Handles `absl::Status` errors as popups delivered to the user.
|
||||||
- Update all the editors in a tab view.
|
- Update all the editors in a tab view.
|
||||||
- [app/editor/assembly_editor.cc](../src/app/editor/assembly_editor.cc)
|
- [app/editor/assembly_editor.cc](../src/app/editor/assembly_editor.cc)
|
||||||
@@ -75,36 +70,13 @@ For developers to reference.
|
|||||||
## ROM
|
## ROM
|
||||||
- [app/rom.cc](../src/app/rom.cc)
|
- [app/rom.cc](../src/app/rom.cc)
|
||||||
- [app/rom.h](../src/app/rom.h)
|
- [app/rom.h](../src/app/rom.h)
|
||||||
---
|
|
||||||
|
|
||||||
This `ROM` class provides methods to manipulate and access data from a ROM.
|
This `ROM` class provides methods to manipulate and access data from a ROM.
|
||||||
|
|
||||||
|
|
||||||
## Bitmap
|
## Bitmap
|
||||||
|
|
||||||
- [app/gfx/bitmap.cc](../src/app/gfx/bitmap.cc)
|
- [app/gfx/bitmap.cc](../src/app/gfx/bitmap.cc)
|
||||||
- [app/gfx/bitmap.h](../src/app/gfx/bitmap.cc)
|
- [app/gfx/bitmap.h](../src/app/gfx/bitmap.cc)
|
||||||
---
|
|
||||||
|
|
||||||
This class is responsible for creating, managing, and manipulating bitmap data, which can be displayed on the screen using the ImGui library.
|
This class is responsible for creating, managing, and manipulating bitmap data, which can be displayed on the screen using the ImGui library.
|
||||||
|
|
||||||
## Z3ED cli
|
|
||||||
|
|
||||||
| Command | Arg | Params | Status |
|
|
||||||
|---------|-----|--------|--------|
|
|
||||||
| Apply BPS Patch | -a | rom_file bps_file | In progress |
|
|
||||||
| Create BPS Patch | -c | bps_file src_file modified_file | Not started |
|
|
||||||
| Open ROM | -o | rom_file | Complete |
|
|
||||||
| Backup ROM | -b | rom_file [new_file] | In progress |
|
|
||||||
| Expand ROM | -x | rom_file file_size | Not started |
|
|
||||||
| Transfer Tile16 | -t | src_rom dest_rom tile32_id_list(csv) | Complete |
|
|
||||||
| Export Graphics | -e | rom_file bin_file | In progress |
|
|
||||||
| Import Graphics | -i | bin_file rom_file | Not started |
|
|
||||||
| SNES to PC Address | -s | address | Complete |
|
|
||||||
| PC to SNES Address | -p | address | Complete |
|
|
||||||
|
|
||||||
|
|
||||||
## Further Development Ideas
|
|
||||||
- Extend `zelda3` namespace with additional functionalities.
|
|
||||||
- Optimize program performance.
|
|
||||||
- Introduce new features in the GUI editor.
|
|
||||||
|
|||||||
Reference in New Issue
Block a user