tic-set-screen
A command line tool for replacing the cover image of a TIC-80 .tic cartridge file
About
As of TIC-80 version 0.90, the cover image for a cartridge is saved as a dump of the screen data. This is displayed using the cartridge's built-in palette, which will be the default Sweetie16 (or DB16) palette if a custom palette has not been explicitly set up through the TIC-80 sprite editor. Notably, poking the palette memory from a running program does not write those palette changes back to the cartridge file.
This is problematic for many size-coded / byte battle / byte jam releases, as they consist only of code and no supporting data - a program that sets a custom palette will end up with a cover image displayed in false colours. Additionally, there's no way to capture scanline-level palette changes performed with SCN or OVR.
In the absence of a "proper" fix, tic-set-screen allows you to supply an arbitrary 16-colour image, and generates a new .tic cartridge file with the screen and palette chunks modified to use that as the cover image.
(Note that, since the cartridge's built-in palette is changed, a program that only pokes some of the palette memory and relies on default values for the rest could end up looking different. If this is a problem, you can still use tic-set-screen to prepare a metadata cart for uploading to tic80.com.)
Installation
With Python 3.7 or above installed, run:
pip install tic-set-screen
(Depending on your Python setup, the command may be pip3 rather than pip. You can also install it into a Python virtual environment, if that's your jam.)
Usage
tic-set-screen input_cart.tic cover_image.png output_cart.tic
The cover image must be 240x136 and use a maximum of 16 colours. It can be PNG, GIF, or any other format recognised by Pillow.
Release files for tic-set-screen 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tic-set-screen-0.1.tar.gz | 4.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tic_set_screen-0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.7 kB
Release files / tic-set-screen-0.1.tar.gz
| Download URL | tic-set-screen-0.1.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
67a2c134952964b5f36c5de9df31d8a920ff31e28201db90e0a13132d2d60e9c
|
|
BLAKE2b-256 checksum How to use checksums |
2f7809a763d81e1a853cd7ccc094baf666a1a6656691e579e7c4deff6e114148
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.0
|
Release files / tic_set_screen-0.1-py3-none-any.whl
| Download URL | tic_set_screen-0.1-py3-none-any.whl |
|---|---|
| Size | 4.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
57cbd0cefdb2a05356bd423dff8ad56731649f363055db0446bc0edb02d92c9d
|
|
BLAKE2b-256 checksum How to use checksums |
82f4008d2c57711daeb86927dd62e70feb2675df6bf9c36e49f497d7f07fc49f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.0
|