Remove Python build option and update contributing documentation for clarity and structure

This commit is contained in:
scawful
2025-08-21 18:58:56 -04:00
parent 3898b443f4
commit 8b168864f3
3 changed files with 7 additions and 20 deletions

View File

@@ -11,7 +11,6 @@ set(YAZE_BUILD_APP ON)
set(YAZE_BUILD_LIB ON) set(YAZE_BUILD_LIB ON)
set(YAZE_BUILD_EMU ON) set(YAZE_BUILD_EMU ON)
set(YAZE_BUILD_Z3ED ON) set(YAZE_BUILD_Z3ED ON)
set(YAZE_BUILD_PYTHON OFF)
set(YAZE_BUILD_TESTS ON) set(YAZE_BUILD_TESTS ON)
set(YAZE_INSTALL_LIB OFF) set(YAZE_INSTALL_LIB OFF)

View File

@@ -26,27 +26,14 @@ New modules should define unit tests in the `src/test` directory and integration
## Key Areas of Contribution ## Key Areas of Contribution
### 1. Extensions System ### 1. Sprite Builder System
Yaze *(stylized as yaze)* emphasizes extensibility. The `yaze_ext` library allows developers to build and integrate extensions using C, C++, or Python. This system is central to yaze's modular design, enabling new features, custom editors, or tools to be added without modifying the core codebase.
- C/C++ Extensions: Utilize the `yaze_extension` interface to integrate custom functionality into the editor. You can add new tabs, manipulate ROM data, or extend the editors capabilities with custom tools.
- Python Extensions: Currently unimplemented, Python extensions will allow developers to write scripts that interact with the editor, modify ROM data, or automate repetitive tasks.
Examples of Extensions:
- UI enhancements like additional menus, panels, or status displays.
- Rom manipulation tools for editing data structures, such as the overworld maps or dungeon objects.
- Custom editors for specific tasks, like file format conversion, data visualization, or event scripting.
### 2. Sprite Builder System
The sprite builder system in yaze is based on the [ZSpriteMaker](https://github.com/Zarby89/ZSpriteMaker/) project and allows users to create custom sprites for use in ROM hacks. The goal is to support ZSM files and provide an intuitive interface for editing sprites without the need for writing assembly code. Contributions to the sprite builder system might include: The sprite builder system in yaze is based on the [ZSpriteMaker](https://github.com/Zarby89/ZSpriteMaker/) project and allows users to create custom sprites for use in ROM hacks. The goal is to support ZSM files and provide an intuitive interface for editing sprites without the need for writing assembly code. Contributions to the sprite builder system might include:
- Implementing new features for sprite editing, such as palette management, animation preview, or tileset manipulation. - Implementing new features for sprite editing, such as palette management, animation preview, or tileset manipulation.
- Extending the sprite builder interface by writing assembly code for sprite behavior. - Extending the sprite builder interface by writing assembly code for sprite behavior.
### 3. Emulator Subsystem ### 2. Emulator Subsystem
yaze includes an emulator subsystem that allows developers to test their modifications directly within the editor. The emulator can currently run certain test ROMs but lacks the ability to play any complex games with audio because of timing issues with the APU and Spc700. Contributions to the emulator subsystem might include: yaze includes an emulator subsystem that allows developers to test their modifications directly within the editor. The emulator can currently run certain test ROMs but lacks the ability to play any complex games with audio because of timing issues with the APU and Spc700. Contributions to the emulator subsystem might include:

View File

@@ -52,15 +52,17 @@ endif()
if (YAZE_BUILD_Z3ED) if (YAZE_BUILD_Z3ED)
include(cli/z3ed.cmake) include(cli/z3ed.cmake)
endif() endif()
if (YAZE_BUILD_PYTHON)
include(cli/python/yaze_py.cmake)
endif()
if(MACOS) if(MACOS)
set(MACOSX_BUNDLE_ICON_FILE ${CMAKE_SOURCE_DIR}/win32/yaze.ico) set(MACOSX_BUNDLE_ICON_FILE ${CMAKE_SOURCE_DIR}/win32/yaze.ico)
set(MACOSX_BUNDLE_BUNDLE_NAME "yaze")
set(MACOSX_BUNDLE_EXECUTABLE_NAME "yaze")
set(MACOSX_BUNDLE_GUI_IDENTIFIER "yaze")
set(MACOSX_BUNDLE_INFO_STRING "yaze")
set_target_properties(yaze set_target_properties(yaze
PROPERTIES PROPERTIES
BUNDLE True BUNDLE True
OUTPUT_NAME "yaze"
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
@@ -135,7 +137,6 @@ if (YAZE_BUILD_LIB)
FILES FILES
incl/yaze.h incl/yaze.h
incl/zelda.h incl/zelda.h
incl/snes.h
DESTINATION DESTINATION
include include
) )