Skip to content

atbrask/c64ttf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

C64 Character Set to TrueType Converter
=======================================

C64TTF.py is a script for converting partial C64 memory dumps, in the form of
64c-files, into TrueType font files for use on modern operating systems.

History
-------
1.0 (2013-11-27)  Uploaded initial version to GitHub
1.1 (2014-03-25)  Fixed the MacRoman CMAP table. Added Danish characters.
1.2 (2016-10-18)  Fixed glyph order. Removed Numpy dependency.
1.3 (2020-05-16)  Ported to Python 3.
1.4 (2020-09-05)  Fixed PostScript font naming.

Requirements
------------
Python 3
FontTools/TTX (use pip3 for this)

Syntax
------
usage: c64ttf.py [-h] [-l LOWERCASE] [-u UPPERCASE] [-o OUTPUT] [-x] [-m] [-i]
                 [-p PIXELSIZE] [-d DESCENT] [-a] [-n NAME] [-y COPYRIGHTYEAR]
                 [-c CREATOR] [-v VERSION]

c64ttf.py v1.4 - C64 Character Set to TrueType Converter (c) 2013-20 atbrask

optional arguments:
  -h, --help            show this help message and exit
  -l LOWERCASE, --lowercase LOWERCASE
                        Input 64C file with lowercase and uppercase
                        characters.
  -u UPPERCASE, --uppercase UPPERCASE
                        Input 64C file with uppercase and graphics characters.
  -o OUTPUT, --output OUTPUT
                        Output filename (default is font name + '.TTF' or
                        '.TTX')
  -x, --xml             Enable XML output (for debugging purposes)
  -m, --add-missing-ascii
                        Add non-PETSCII characters for ASCII compatibility
                        (ie. grave accent, curly braces, vertical bar, tilde,
                        caret, backslash, and underscore)
  -i, --add-missing-danish
                        Add special Danish characters. Needed for proper
                        compatibility with the Danish version of MAC OSX.
  -p PIXELSIZE, --pixelsize PIXELSIZE
                        Pixel size in the resulting TTF file (default is 256)
  -d DESCENT, --descent DESCENT
                        The descent below baseline in pixels (default is 1)
  -a, --add-all         Inserts the uppercase character set (if any) at
                        0xEE00...0xEEFF and the lowercase character set (if
                        any) at 0xEF00...0xEFFF
  -n NAME, --name NAME  Font name
  -y COPYRIGHTYEAR, --copyrightyear COPYRIGHTYEAR
                        Sets copyright year
  -c CREATOR, --creator CREATOR
                        Font creator
  -v VERSION, --version VERSION
                        Sets font version number

NOTE:
Both -l and -u are listed as "optional arguments", but obviously at least one
of them has to be specified.

Example
-------
Usable files can be found in the "Character Sets"-section at this page (which
is not mine by the way):
http://kofler.dot.at/c64/

Given the input files c64_lower.64c and c64_upper.64c:

./c64ttf.py -l c64_lower.64c -u c64_upper.64c -o c64.ttf -m -a \
-n "Commodore 64" -y 1982 -c Commodore -v "1.00"

This will create a font called "Commodore 64" with all lowercase, uppercase,
and graphics characters included. Additionally, the missing ASCII characters
are included as well.

About

C64 Character Set to TrueType Converter

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages