charset

Table of Contents

128 characters.

1 Characters

  • 00 U+2022 bullet
  • 01 U+25E2 lower right triangle
  • 02 U+25E3 lower left triangle
  • 03 U+00A9 copyright sign
  • 04 U+2660 spade suit
  • 05 U+2661 heart suit
  • 06 U+2662 diamond suit
  • 07 U+2663 club suit
  • 08 brick wall
  • 09 U+03A9 capital omega
  • 0a U+00D7 multiplication sign
  • 0b U+2500 horizontal line
  • 0c U+2264 less-than or equal to
  • 0d U+2260 not equal to
  • 0e U+2265 greater-than or equal to
  • 0f U+00F7 division sign
  • 10 U+00B0 degree symbol
  • 11 U+00B1 plus-minus sign
  • 12 U+2514 up and right line
  • 13 U+2510 down and left line
  • 14 U+250c down and right line
  • 15 U+2518 up and left line
  • 16 U+251c vertical and right line
  • 17 U+252c down and horizontal line
  • 18 U+2524 vertical and left line
  • 19 U+2534 up and horizontal line
  • 1a U+253c vertical and horizontal line
  • 1b U+03BC small mu
  • 1c U+2191 upwards arrow
  • 1d U+2193 downwards arrow
  • 1e U+2190 leftwards arrow
  • 1f U+2192 rightwards arrow
  • 7f U+00A3 pound sign

Start with ASCII 32 through 126. That leaves 33 codes unassigned.

13 symbols. 20 left. copyright symbol. 19 left. mu, omega. 17 left.

10 lines. 7 left. 4 arrows. 3 left. brick wall. 2 left. 2 slopes. 0 left.

or:

10 lines. 7 left. 7 matrices. 0 left.

2 Character classes considered

2.1 Semigraphics

In general, semigraphics are not super valuable, because we could just use actual graphics - or redefine characters when in character mode. What they do buy us is some crude character graphics that can be used without needing to dedicate 2K of RAM to a custom character set.

  • 2x2 matrices: This would take up 8 code points (the other 8 are inverted versions). We can reuse space as one of them, which reduces the number of code points to 7.
  • Lines. We have pipe character as vertical line. Beyond that, we need horizontal line, 4 corners, 4 Ts, and a cross, for a total of 10 code points.
  • Slopes. Up slope and down slope, 2 code points.
  • Shades. 1 code point for medium shade. Could have 1/4th as well. No need for 3/4 as that could be obtained by inverting 1/4th. But ideally you'd also want combinations of those and blank or filled glyphs, which really blows up the code points.
  • Curves. Probably don't work well with 4x8 mode.
  • Brick wall.
  • Ladder.
  • 2 staircases (left and right). Or re-use matrices.
  • Window.
  • Door.
  • Person.
  • Ball.
  • Circle.

Icons:

  • 4 arrows: up, down, left, right.

2.2 Symbols

These seem very valuable. The only caveat is that not all of them can be expressed well in the 4x8 wide pixel mode. I will include those that can.

  • Degree symbol.
  • Pound sign.
  • Less or equal, greater or equal.
  • Unequal.
  • Multiplication.
  • Division.
  • Bullet point.
  • 4 card suits: spades, hearts, diamonds, clubs.
  • Plusminus.
  • Copyright symbol.

Probably not:

  • Trademark.
  • Registered trademark.
  • Superscript 2, 3.
  • Fractions: 1/2, 1/3, 2/3, 1/4, 3/4.
  • Logical not.
  • Set symbols: union, intersection.
  • Exists, forall.
  • Cent.
  • Yen.
  • Section.
  • Paragraph.
  • Square root.
  • Checkmark.

2.3 Accented letters

I have no current plans to support languages other than English, so this doesn't seem super valuable.

2.4 Greek letters

Although not adding the full Greek alphabet, there are a few letters which are pretty useful even in non-Greek text:

  • Lowercase mu (used to denote micro).
  • Lowercase omega (used to denote Ohms).
  • Delta (used to denote difference).
  • Uppercase sigma (used to denote summation).