update infra docs

This commit is contained in:
scawful
2024-08-08 00:42:53 -04:00
parent a0ba8a7501
commit 0e0664b17a

View File

@@ -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.