Contribuir a Bubba Machine
Gracias por querer ayudar. Bubba Machine es firmware libre para el M-VAVE FM-1 y cualquier ayuda suma: probar en el emulador, reportar errores, mejorar el manual, diseñar sonidos o escribir código.
Se puede escribir en español o en inglés.
Formas de ayudar
- Probar y reportar. Usa el emulador web y abre un issue con lo que pasó, lo que esperabas y cómo repetirlo. Las capturas ayudan mucho.
-
Ideas de interfaz. Abre un issue de tipo idea. La dirección actual está en
docs/DISENO_3.0.md. -
Documentación. El manual vive en
docs/MANUAL.md; el sitio se genera a partir de los.md. -
Código. Lee
docs/DESARROLLO.mdpara compilar y probar. -
Hardware. Si tienes un FM-1 y experiencia con el SDK de JieLi, el port en
hal/fm1/es lo que más ayuda necesita.
Reglas del código
-
Todo el código es propio. No copies, traduzcas ni parafrasees código de otros firmwares para el FM-1 (incluido Felucca). Los hechos de hardware (pines, tiempos, registros documentados) sí se pueden usar, citando la fuente en
docs/SPEC_V3.md. -
Código de terceros solo con licencia compatible con la GPL-3.0, y anotado en
CREDITOS.md. -
Sonidos: solo sintetizados en
tools/, de tu autoría o con licencia libre compatible (CC0, CC-BY o GPL). Nada de samples de discos o de packs comerciales. Para probar con audio de terceros usaassets/loops/loops.local.json, que nunca se sube. -
C99 sin dependencias en
core/: nada demalloc, nada de punto flotante en el camino del audio y nada que dependa del hardware. Todo lo del hardware va enhal/. - Cada archivo nuevo empieza con el identificador de licencia:
/* SPDX-License-Identifier: GPL-3.0-or-later
* Copyright (C) 2026 Tu Nombre */
Antes de abrir un pull request
Los pull requests van a la rama dev. De ahí los cambios pasan a qa para probarlos y luego a main, que es lo publicado (ver ramas).
-
☐
py -3 tools/build.py testpasa sin fallos. -
☐ Si cambiaste la interfaz, se actualizaron las capturas (
assets/screens/) y el manual. - ☐ Si cambiaste el formato de los patrones o de la flash, está explicado en el PR y en el registro de cambios.
-
☐ Si agregaste algo de terceros, está en
CREDITOS.md.
Licencia de las contribuciones
Al enviar una contribución aceptas que se publique bajo la misma licencia del proyecto, GPL-3.0-or-later. Se recomienda firmar los commits con git commit -s (Developer Certificate of Origin) para dejar constancia de que tienes derecho a aportar ese código.
Convivencia
Este proyecto sigue un código de conducta.
Esta página se genera desde CONTRIBUTING.md. ¿Ves un error? Edita el archivo y manda un pull request.