Nuevo conversor de gráficos PNG ↔ ASM para Amstrad CPC y la librería 8BP

Se ha publicado un nuevo conversor de gráficos bidireccional pensado específicamente para desarrolladores de Amstrad CPC que trabajan con la librería 8BP. Esta herramienta permite convertir gráficos entre PNG y ASM de forma sencilla y automatizada, integrándose directamente en el flujo de trabajo habitual de desarrollo.

El conversor funciona en ambos sentidos:

  • PNG → ASM, con conversión en batch de todos los gráficos
  • ASM → PNG, tanto de forma individual como en lote

Es totalmente compatible con los tres modos gráficos del CPC: MODE 0, MODE 1 y MODE 2.


Conversión PNG a ASM con soporte de paletas CPC

La herramienta PNG2ASM convierte todos los archivos PNG de la carpeta GRAFICOS/ en un único archivo graficos.asm, listo para ser usado en proyectos Z80. El usuario puede seleccionar el modo gráfico correspondiente y generar el código ASM con un solo comando.

Entre sus características más destacadas se incluye el soporte de transparencia, permitiendo convertir píxeles con canal alpha a un INK específico del CPC, así como una gestión inteligente de la paleta de colores.

El conversor detecta automáticamente colores que no pertenecen a la paleta del Amstrad CPC. En caso de imágenes con dithering o colores no exactos, el proceso no se interrumpe: los colores se ajustan al INK más cercano y se muestra un aviso informativo solo una vez. Esto facilita trabajar con PNGs no perfectamente adaptados sin romper el flujo de trabajo.


Conversión ASM a PNG y exportación masiva

Para el proceso inverso, ASM2PNG permite convertir gráficos ASM individuales a PNG respetando el modo gráfico seleccionado. Si el archivo ASM no contiene información completa de paleta, es posible forzar manualmente un INK de fondo.

Además, la herramienta ASM2PNGS permite convertir automáticamente todos los archivos ASM de una carpeta en PNGs individuales, evitando colisiones de nombres mediante un sistema opcional de prefijos basados en el archivo original.


Detalles técnicos y compatibilidad

Entre otros aspectos destacados del proyecto:

  • Un mismo archivo graficos.asm puede contener múltiples gráficos, exportados automáticamente como PNGs independientes
  • Se soportan labels con y sin dos puntos (LABEL: o LABEL)
  • El proceso es no destructivo: si un gráfico falla, el resto continúa
  • Los labels se generan siempre en mayúsculas, garantizando compatibilidad con ensambladores Z80

El conversor está desarrollado por Javy Fernández en Python 3 y utiliza la librería Pillow para el tratamiento de imágenes, funcionando en distintos sistemas operativos, incluyendo macOS.


Una herramienta especialmente útil para la escena homebrew de Amstrad CPC, que simplifica notablemente la gestión de gráficos y acerca aún más los flujos de trabajo modernos al desarrollo clásico en 8 bits

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *