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.8.tar.gz (16.2 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.8-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: zxp2boriel-0.1.8.tar.gz
  • Upload date:
  • Size: 16.2 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.8.tar.gz
Algorithm Hash digest
SHA256 29071f348272a1f554226785621f7e92d5001d169947cc2b9ddf063b567801ab
MD5 473bc8fd51a634a2c347b91a280fe326
BLAKE2b-256 c8f2375f19d484ab6fc0cd13976e6a20904927fa69de179ad1940af1ab3b42db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zxp2boriel-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 16.5 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f699d60a1526a7fa93d6e60f2253758bf60436c7d35e5d6ae1b3c5d6cdf7530b
MD5 207103893b29c39fe5dfc8257153a36d
BLAKE2b-256 85ec39f100228ca012d1d962f0416d9e31b84fca3764b706ae77bbf78d79162a

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