TasPrint (Spectrum / CPC / PCW) Fonts
TasPrint was a utility for various 8-bit platforms to print text in a variety of fonts. This page describes the font formats used by the original Spectrum version, the expanded Spectrum +3 version, and the CPC464 and PCW versions.
Spectrum 48k / QL format
On the 48k Spectrum, the five fonts are held in a single file on tape, called tasfont0 of type CODE 42800, 9600 — so, a binary file of 9600 bytes to be loaded at address 42800.
Within the file are five fonts, each 1920 bytes long. Each font contains 96 character bitmaps, for characters 32-127. Each bitmap is 20 bytes long, with the first 10 bytes giving the top 8 rows of the character and the second 10 giving the bottom 8 rows. Each byte describes one column of data, with bit 7 being the top bit and bit 0 being the bottom. (This is the natural format for printing bitmaps on a Epson-compatible printer).
The same file is used for the QL version of TasPrint, in this case named font.obj.
|
The 'Median' font is an exact match for the Apricot Xi system font, except for the three characters which were redesigned for the Spectrum (Up Arrow, Pound Sign, and Copyright). In the case of the pound sign, the designer redrew it from scratch rather than use the pound sign already present in the Apricot font. (The Apricot Xi font is shewn to the right, for comparison.) | ![]() |
Spectrum +3 format
On the +3, each font is saved as a separate file. This begins with a standard 128-byte +3DOS header of type CODE 30000, 3074 — that is, a binary file of 3074 bytes to be loaded at address 30000.
Following the header, the next two bytes are the character width. In all existing files, this is in the range 10-16.
The 96 character bitmaps follow, in the same format as on the 48k Spectrum, but with 16 columns of data rather than 10. Even when the character width is less than 16, all 16 columns of data are still provided. Since the size of the character definition appears to be a fixed 16 columns, the implication is that the character width at the start of the file cannot exceed 16.
CPC format
On the CPC, each font is stored as a separate file, 5248 bytes long (they are also stored concatenated in a file called TASPRINT.DAT). The file begins with a 128-byte AMSDOS header giving a file type of binary, with a length of 5120 bytes and a load address of 22240.
Following the header there is space for 256 character bitmaps, in the same format as the Spectrum 48k version with 20 bytes per character. However characters 0-11, 193-218 and 225-250 are not defined and the bitmaps for these characters seem to contain random data, probably whatever was in memory when the files were originally generated. The character set used is defined in the Tasprint manual; it does not appear to match the normal CPC character set.
The CPC version of the Compacta font appears to contain an error: when converting it from the Spectrum version, the designer created a new pound sign which they put at position 127, but forgot to replace the existing pound sign at position 96 with a grave accent as was done for the other fonts.
PCW format
In the PCW version, each font contains 127 characters (starting with character 1) stored in the same 16 columns-per-character format as the Spectrum +3 version. There does not seem to be any way to determine how many columns the font was designed for; when converting to PSF, I have used the minimum width necessary to display all the characters without cropping.
The Breaker and Compacta fonts each have a bit set in the sixteenth column of character 126, the significance of which I don't know.
Fonts
To the best of my knowledge and belief, the original fonts were released between 1983 and 1987 and so their UK copyright has expired. I'm therefore putting them here to download, along with versions converted to PSF2 format.
All five of the original fonts supplied in the Spectrum 48k version were redesigned in the +3 version, so I have supplied both sets.
If you want to download all the fonts in original and .PSF format, here you go.
John Elliott 2026-03-22
![[Apricot Xi system font]](TasPrint/apricotxi.png)












