From 4dc184acea0b5ff67b5c7641ed0c65e821d2d166 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Sun, 15 Mar 2026 23:53:00 -0400 Subject: Redefine ATASCII graphics 1-27 as inverse uppercase letters. --- TODO | 3 --- font.dat | Bin 1024 -> 1024 bytes font/mkfont.pl | 10 ++++++++++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/TODO b/TODO index 36d9b50..ab418ee 100644 --- a/TODO +++ b/TODO @@ -18,9 +18,6 @@ Other stuff: persist for some amount of time, and/or until you press a key. While I'm at it, I could show up/down arrows in the first column for network activity. -- In aid of the above: use inverse alphabetic glyphs for - control+letters (so I can print text in the GR.1 line, and - so e.g. ^B in the edit box appears as an inverse B). - ^U works, but is slow (calls backspace() in a loop, which does a memmove() each time). - Start+E: show entire editbox (plus status, but not screen text). diff --git a/font.dat b/font.dat index 0527aaf..8d68182 100644 Binary files a/font.dat and b/font.dat differ diff --git a/font/mkfont.pl b/font/mkfont.pl index 20c5ece..ae52dda 100644 --- a/font/mkfont.pl +++ b/font/mkfont.pl @@ -16,6 +16,16 @@ read($in, $X2300, 256); # ASCII 96=127 # ASCII 0 is a blank glyph substr($X2200, 0, 8) = "\x00" x 8; +# ASCII 1-26 are inverse letters instead of ATASCII control graphics. +for($i = 1; $i < 27; $i++) { + my $old = substr($X2100, $i * 8, 8); + my $p = 0; + for(split "", $old) { + my $new = ~ord($_); + substr($X2200, $i * 8 + $p++, 1) = chr($new); + } +} + $font = $X2200 . $X2000 . $X2100 . $X2300; while() { -- cgit v1.2.3