The text module ships with a built-in font, so you may never need this tool. But when you want your own typeface — a chunky title font, a themed UI face — font2snes converts a font image into the SNES text tiles the text routines draw from.
In: an indexed .png holding exactly 96 characters (ASCII 32–127, so character 0 is the space), with dimensions that are multiples of 8.
Out: either a binary .pic of tiles (default), or a C header (-c) declaring const unsigned char <name>_data[] you can #include and upload at runtime.
| Flag | Meaning |
|---|---|
| -b N | bits per pixel: 2 (default) or 4 (4 for Mode 1 BG1/BG2 text) |
| -c | emit a C header instead of a binary .pic |
| -v | verbose |
Note the argument style: font2snes takes positional input output, unlike gfx4snes's -i.
Then load it at runtime and point the text engine at it — a custom font is just tiles in VRAM, uploaded like any other:
A side-branch of the The OpenSNES toolbox pipeline: font.png → font2snes → text tiles. For drawing text with the built-in font (the common case), start from the text examples such as Print a string instead.