TellyMate - User Guide - Fontbanks


A Fontbank defines how its set of 256 characters are displayed.

The default fontbank (fontbank0) is orignally programmed to match Code-page 437. This provides a reasonable set of characters that work for most general-purpose situations.

Each of the 256 characters in the fontbank is designed around a grid 8 pixels wide by 9 pixels high.

One Character

One Character

Most TellyMates (built with a M8 or M88) have a single fontbank (fontbank 0).
TellyMates built with a M168 can use 4 fontbanks (fontbank 0-3).
TellyMates built with a M328p can use 11 fontbanks (fontbank 0-10).

Selecting Fontbanks

For TellyMates with more than one fontbank, each row of the display can be set to use a particular fontbank.

See the <ESC>_ sequence on the Control Sequences page.

Reprogramming Fontbanks

From firmware 1.0.14, fontbanks (including fontbank 0) can be reprogrammed via software.

Reprogrammable fontbanks mean that you can re-design the characters that are shown on the screen. With careful use, this opens up lots of possibilities, including graphical work.

Technical details of the control sequences (and data setup) required to program a fontbank are given under the <ESC>R sequence on the Control Sequences page.

To save you having to wade through all the technical details, an Arduino sketch has been written that will program a fontbank for you. It needs a set of comma separated data to work from. You can either get this data from a fontX.h file in the latest TellyMate source-code on Batsocks, or generate your own using a specially crafted google spreadsheet for TellyMate font design. The spreadsheet creates the data required in the second workbook (see the tabs at the bottom of the spreadsheet).

Font Design Spreadsheet

TellyMate Font Design Spreadsheet

Instructions within the sketch tell you where to place the data.

Once the sketch has been uploaded to the Arduino, the Arduino will program the fontbank. This will take around half a minute, and will cause flickering of the TV output (note that the tellymate will reset itself several times during the process).

When the sketch has finished programming the TellyMate, it will display all the characters in the fontbank that's just been programmed.

Note that the flash memory of the TellyMate's chip can be reprogrammed 10,000 times, so whilst you shouldn't worry too much about how often a fontbank is reprogrammed, it's probably best not to do it routinely as part of a frequently run program.