NOTE: This program has been obsoleted by Snavig.
This program generates Blorb files with BPal chunks (see Blorb.md), so that the adaptive palettes of Zork Zero and Arthur can be used with Glk-based interpreters. Generated Blorb files are backward compatible: they contain all information in the original Blorb plus the BPal chunk.
Because BPal chunks include a lot of new images, the images are compressed with oxipng to reduce file sizes. By default, a Rust-based oxipng library is linked, which requires a Rust compiler. Alternatively, an oxipng binary can be used. The library is significantly faster.
Requirements:
- A C++23 compiler and library
- Qt6
- Rust (if a library-based oxipng is used), or
- Boost + oxipng (if an external oxipng tool is used)
To build, use GNU make. By default, the Rust-based oxipng is used:
make
To use the oxipng binary (assumed to be /usr/bin/oxipng):
make NO_LIBOXI=1
To run:
./bpal /path/to/blorb.blb
This will process the Blorb file and generate a file called out.blb
.
You can also pass a Z-machine story file to bundle into the Blorb as an Exec resource:
./bpal /path/to/blorb.blb /path/to/story.z6