The Fonts

The fonts have all the characters from the original machines plus some extra
to make them more conventionally useful. The uppercase Model I font
does include lowercase characters but without descenders so you can get the
unique look of a Model I partially upgraded to lowercase. And there are
some characters that were in the machine but otherwise not accessible.

The Model III fonts have characters from two different revisions. The
only difference is in the halfwidth Katakana characters which correct some
apparent mistakes in shape.

For the Model 4 the original version is mostly the same as the Model III
and the "International" version replaces the halfwidth Katakana and some other
characters with a broader set of European language characters. It also includes
inverse versions of those characters that could be displayed inverted. While
the Model 4 was largely compatible with the Model III, the 64 and 32
wide fonts are a bit squished to reflect how they appeared in Model III
mode on the Model 4. The 80 and 40 wide fonts have the bottom of their
graphics characters chopped off mimicing the original display.

Model

Version

Aspect Ratio

Font File

I

Original Uppercase

Normal (64 columns)

AnotherMansTreasureMIA64C2X3Y.ttf

Double-Wide (32 columns)

AnotherMansTreasureMIA32C4X3Y.ttf

1:2

AnotherMansTreasureMIA2Y.ttf

1:1

AnotherMansTreasureMIARaw.ttf

Lowercase Mod

Normal (64 columns)

AnotherMansTreasureMIB64C2X3Y.ttf

Double-Wide (32 columns)

AnotherMansTreasureMIB32C4X3Y.ttf

1:2

AnotherMansTreasureMIB2Y.ttf

1:1

AnotherMansTreasureMIBRaw.ttf

III

Original + Revised

Normal (64 columns)

AnotherMansTreasureMIII64C.ttf

Double-wide (32 columns)

AnotherMansTreasureMIII32C.ttf

4

Original

Normal (64 columns)

AnotherMansTreasureM4A64C.ttf

Double-wide (32 columns)

AnotherMansTreasureM4A32C.ttf

Normal (80 columns)

AnotherMansTreasureM4A80C.ttf

Double-wide (40 columns)

AnotherMansTreasureM4A40C.ttf

1:2

AnotherMansTreasureM4A2Y.ttf

1:1

AnotherMansTreasureM4ARaw.ttf

International

Normal (64 columns)

AnotherMansTreasureM4B64C.ttf

Double-wide (32 columns)

AnotherMansTreasureM4B32C.ttf

Normal (80 columns)

AnotherMansTreasureM4B80C.ttf

Double-wide (40 columns)

AnotherMansTreasureM4B40C.ttf

1:2

AnotherMansTreasureM4B2Y.ttf

1:1

AnotherMansTreasureM4BRaw.ttf

Basic Usage

Modern browsers can import True Type fonts. Thus I can use them if I want
my words to have that old, familiar look or
to show a screen shot of "Bee Wary!":

And then you can change to the TRS-80 font in the usual HTML fashion by
adding STYLE="font-family: 'TreasureMIII64C'; font-size: 24;" to
any tag.

Translating

Letters and other standard ASCII characters are the same between the TRS-80
and the fonts. Graphics characters (128 - 192) and special characters (0 - 31
and 192 - 255) are another matter. Where possible the fonts use the proper
Unicode number for these characters but some special characters and all the
graphics characters have no correpsonding Unicode character.

For your own use or within a program there's an easy solution. The fonts have
all the original TRS-80 characters in-order in the private use area as
characters 0xe000 to 0xe0ff. Suppose you have a screen dump from the TRS-80.
Simply put 0xe0 after every byte and you'll have a UTF-16 file that will
display exactly as it did on the TRS-80. In HTML you can avoid UTF-16 and
get at the characters with numeric entities. Suppose we have graphic character
153 (). The private use area starts at
57344 which means character 153 is at 57344 + 153 = 57497. To get that
character I can write &#57497;. Or if you're more comfortable
with hexadecimal, note that 153 = 0x99 and use &#xE099; instead.

However, there are more than 256 characters.
The Model III had 320 different characters it could display
and the Model 4 had 448 when you account for the inverted versions. And there
are even more characters when the various machine versions are considered.
Here is the full story on the private use area of the fonts:

Proper Translation

Translating TRS-80 characters to the private use area is effective but wrong
if you're trying to share with others. Instead, the characters should be
translated to the proper Unicode code points. That way text will still have
the same meaning even if a non-TRS-80 font is used. There are some characters
that have no Unicode equivalent, but at least most of the meaning will be
preserved.

Best to look at the translation C table I created:
m3unicode.c. It discusses some alternate translations
that may be appropriate. I have yet to create a translation table for
Model I or Model 4 characters but will add them here if I do so.

I'll close out here with a full table showing how the Model III characters
map to Unicode. A handy reference and I think it gives a good feel for how
the mapping works.