2025-05-25 - AlphaSmart 3000 And Unicode
========================================

AlphaSmart (Wikipedia)
<gopher://gopherpedia.com/0/AlphaSmart>

Recently i bought two inexpensive AlphaSmart 3000's at the thrift
store.  They are in good condition.  I updated them to the last
firmware, which took some doing.  I replaced the CR2032 cells.

These were made in the USA and are said to have durable construction.
The manual specifies that it can run for 700 hours on 3 AA batteries.
They hold 100 pages of text. These are glorified electric typewriters,
more suitable for the Noosphere than for jacking into cyberspace.

They connect to a PC as a PS2 or USB keyboard.  After pressing the
SEND key, the screen shows a progress bar while it "types" the
document into the current window, like a player piano.  In theory the
printer port can send over RS-232 but i couldn't find pinout
documentation.

AlphaSmart 3000 User Guide
<gopher://tilde.pink/1/~bencollver/ia/details/manualzilla-id-7405474>

AlphaSmart System 3 Update Guide
<gopher://tilde.pink/1/~bencollver/ia/details/manualzilla-id-7337681>

Some Greek and Latin symbols exist, but they do not work out of the
box in DOS nor in Linux.  Symbols are sent by "typing" CP1252
Alt-codes.  These would work correctly in Windows, but in DOS they
result in spurious characters.

Alt-codes
<gopher://gopherpedia.com/0/Alt_code>

For example, if i type recipe text below:

   Preheat oven to 350°F and sauté onions...

On the AlphaSmart, i would type Alt-Shift-8 for the DEGREE SYMBOL and
Alt-E, then the letter e for the LOWERCASE E ACUTE SYMBOL, and the
LCD displays the text as i would expect.

When i press the Send button, the AlphaSmart sends Alt-0176 for the
degree symbol and Alt-0233 for the lowercase e acute symbol.  On a
DOS PC using CP437, this results in the LIGHT SHADE character and the
GREEK CAPITAL LETTER THETA as shown below:

   Preheat oven to 350░F and sautΘ onions...

I wrote an AWK script to convert these mis-encoded characters to
\uXXXX escape sequences, which can be decoded by utf8tocp 0.9.5r5.

utf8tocp 0.9.5r5
<gopher://tilde.pink/1/~bencollver/files/dos/util/utf8tocp/>

astouni.awk
<gopher://tilde.pink/0/~bencollver/log/
2025-05-25-alphasmart-3000-and-unicode/astouni.awk>

Suppose i save the AlphaSmart text into a file named recipe.as3 and
run my AWK script.

   C:\>mawk -f astouni.awk recipe.as3 >recipe.uni

Now the file named recipe.uni will contain the text below:

   Preheat oven to 350\u00B0F and saut\u00E9 onions...

I can use utf8tocp to convert this to UTF-8 like so:

   C:\>utf8tocp -r 437 recipe.uni recipe.txt

Now recipe.txt contains the UTF-8 text below:

   Preheat oven to 350°F and sauté onions...

tags: bencollver,retrocomputing,technical

Tags
====

bencollver
<gopher://tilde.pink/1/~bencollver/log/tag/bencollver/>
retrocomputing
<gopher://tilde.pink/1/~bencollver/log/tag/retrocomputing/>
technical
<gopher://tilde.pink/1/~bencollver/log/tag/technical/>