All 41 .bas/.txt pairs copied byte for byte from basicinterpreter@d76162c into tests/reference/, plus the Commodore font into assets/fonts/ -- the two things that tied the build to deps/basicinterpret. Both were verified cmp-identical to the submodule copies. This reverses a decision that was deliberate and correct at the time: the corpus was driven in place because copying a submodule's corpus guarantees drift. Overruled on purpose -- the Go dependency is being deprecated, and a build that cannot run its acceptance suite without cloning the implementation it replaced is not finished. tests/reference/README.md records what the drift now costs and that those expectations are never edited. Checked rather than assumed: both configurations configure, build and pass from scratch with deps/basicinterpret moved out of the tree entirely. The submodule is kept as the behavioural spec, which is a real use. The font came with an open licence question; assets/fonts/PROVENANCE.md states it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
42 lines
2.2 KiB
Markdown
42 lines
2.2 KiB
Markdown
# C64_Pro_Mono-STYLE.ttf
|
|
|
|
| | |
|
|
|---|---|
|
|
| Font | C64 Pro Mono, by STYLE — <https://style64.org/c64-truetype> |
|
|
| Copied from | `basicinterpreter@d76162c`, `fonts/C64_Pro_Mono-STYLE.ttf` |
|
|
| Copied on | 2026-07-31 |
|
|
| Verified | `cmp`-identical to the submodule copy |
|
|
|
|
## Why it is here
|
|
|
|
It is the font `deps/basicinterpret/main.go` opens, at the size it opens it, and reproducing
|
|
that is part of what the SDL frontend is for. It was reached for inside the submodule until the
|
|
Go dependency started being deprecated; the build now has no reason to clone that repository,
|
|
and this was the last thing tying it to one.
|
|
|
|
Two things use it, both through compile definitions in `CMakeLists.txt`:
|
|
|
|
- `AKBASIC_FONT_PATH` — what an `-DAKBASIC_WITH_AKGL=ON` build of `basic` opens. Overridable at
|
|
runtime with the `AKBASIC_FONT` environment variable, which is what an installed copy or a
|
|
different font wants.
|
|
- `AKBASIC_TEST_C64_FONT` — what `tests/akgl_frontend.c` opens, because `TODO.md` §3's
|
|
acceptance asks the drawn text to be proved in *this* font rather than any monospaced one.
|
|
|
|
## The licence question, which is open
|
|
|
|
**STYLE's C64 TrueType fonts are not public domain and this repository does not carry their
|
|
licence.** Neither did `basicinterpreter`, which is where the file came from. The terms at
|
|
<https://style64.org/c64-truetype/license> permit free personal and non-commercial use and
|
|
require the licence to accompany redistribution; commercial redistribution needs their
|
|
permission.
|
|
|
|
Copying it here changes nothing legally — the same file was already being redistributed from
|
|
the same owner's other public repository — but it does move the question into a project that
|
|
is meant to be embeddable in other people's games, which is where it starts to matter.
|
|
|
|
**Before this is shipped in anything commercial, or vendored into a game that is:** either
|
|
obtain STYLE's permission and include their licence file beside this one, or replace the font.
|
|
Replacing it is cheap — the frontend measures whatever font it is handed
|
|
(`akbasic_sink_init_akgl` derives the character grid from `akgl_text_measure`), so any
|
|
monospaced TTF works and only the two compile definitions above would change.
|