Skip to main content

Convert ZX-Paintbrush (.zxp) files to Boriel Basic

Project description

zxp2boriel

A Python tool to convert ZX-Paintbrush (.zxp) sprite files into Boriel Basic DIM array declarations.

Features

  • Converts ZX-Paintbrush bitmap data to Boriel Basic arrays
  • Exports tile attributes (colors) automatically
  • Generates individual arrays for each sprite/tile
  • Supports sprites of any size (must be multiple of 8)
  • Optional attribute export control

Installation

pip install zxp2boriel

Usage

zxp2boriel --input <file.zxp> --width <pixels> --rows <rows> --cols <cols> --output <file.bas> --name <array_name> [--no-attributes]

Arguments

  • --input, -i: Input .zxp file path.
  • --width, -w: Tile width in pixels (must be a multiple of 8).
  • --rows, -r: Number of rows in the sprite sheet.
  • --cols, -c: Number of columns in the sprite sheet.
  • --output, -o: Output .bas file path.
  • --name, -n: Name prefix for the generated array variables.
  • --no-attributes: (Optional) Skip exporting attribute arrays.

Example

Convert an 8x8 tileset with 1 row and 6 columns:

zxp2boriel -i tileset.zxp -w 8 -r 1 -c 6 -o tileset.bas -n tile

This will generate a tileset.bas file containing individual arrays for each tile:

Dim tile0(7) As Ubyte => { _
	$00,$7E,$42,$5A,$00,$FF,$81,$81 _
}
Dim tileAttr0(0) As Ubyte => { $22 }

Dim tile1(7) As Ubyte => { _
	$00,$00,$00,$00,$00,$00,$00,$00 _
}
Dim tileAttr1(0) As Ubyte => { $22 }

...

Output Format

  • Sprite Data: Each sprite is exported as {name}{index} (e.g., tile0, tile1)
  • Attributes: Each sprite's attributes are exported as {name}Attr{index} (e.g., tileAttr0)
  • Attributes are formatted in a single line for better readability
  • Each sprite and its attributes are grouped together, separated from the next sprite by a blank line

Skipping Attributes

If you don't need color attributes:

zxp2boriel -i sprites.zxp -w 24 -r 2 -c 6 -o sprites.bas -n sprite --no-attributes

License

AGPL-v3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zxp2boriel-0.1.10.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zxp2boriel-0.1.10-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file zxp2boriel-0.1.10.tar.gz.

File metadata

  • Download URL: zxp2boriel-0.1.10.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for zxp2boriel-0.1.10.tar.gz
Algorithm Hash digest
SHA256 91c0e40fbe4a58d25b7a80e52cc964f91d654105184af4330cf24e9720cc3ec4
MD5 3dfb920d5023886058209ca87f959a76
BLAKE2b-256 89094e88ac49f0a90e5d9030460a27c277e47415c4b920295ed3e5cb2205530c

See more details on using hashes here.

File details

Details for the file zxp2boriel-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: zxp2boriel-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 17.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for zxp2boriel-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 562dc04ae86410c7dd98823908e4bb24ba858d656650af5ce5f11e0481ad04ce
MD5 2a16304e544f8bb558371dbdb460dcd7
BLAKE2b-256 e5f7f12ad6cc326acd9b8ef2e62e83060531037bef337711af002bf6fb7941be

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page