• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Alphasmart SDK

Bunsen

Admin-Witchfinder-General
this particular model uses a Motorolla DragonBall EZ MC68EZ328PU16V
Well that's interesting.  The Dragonball is a 68k-derived microcontroller that was also used in early Palm devices.  I wonder if using it in the 3000 influenced their decision to build the Dana as a Palm machine?

Motorola/Freescale Semiconductor's DragonBall, or MC68328, is a microcontroller based on the 68000 core, implemented as an all-in-one low-power system for handheld computer use. It is supported by μClinux.
So, there's at least one useful, open-source OS that could conceivably be ported to your device.

(I have this vague memory that someone got an early Mac system running on a Palm Pilot, but don't quote me on that - it may have been a pipe dream)

This anecdote claims the original AS was developed by Apple employees:

But first, Barrus and Kothari had to move from prototype to production. And they had to figure out what rights, if any, their employer Apple was going to claim to the idea.

But Apple, it seemed, viewed the machine as a peripheral / While Barrus and Kothari’s prototype wasn’t really a computer, it wasn’t a dumb keyboard either. Apple eventually decided that it wasn’t interested in producing the device – “people didn’t really get it” / and the company gave the two engineers a release to work on their idea. (Other Apple engineers helped with designing the plastics.)
 

Bunsen

Admin-Witchfinder-General
I found a service & troubleshooting manual for the original Alphasmart and Alphasmart Pro (PDF) but it doesn't have much hardware or firmware information in it.  Still looking, on and off.

This appears to be a ROM dump of the Pro from this thread about the MESS emulator, and a photo of the insides.

 

AlphaSmart Pro / 68HC11 / 128 KB non-volatile SRAM. ROM [is] a 27C256 but the first 16KB are zeroed out
Alphasmart 2000; still 68hc11 based / but unlike the alphasmart pro, the 2000 has its rom in a combo rom-pal-io chip
That last comment, if true, would seem to make ROM hacking of the 2000 a bit difficult.

 
Last edited by a moderator:

Bunsen

Admin-Witchfinder-General
Still coming up with lots of dead ends.  Seems like Renaissance were very reluctant to release the SDK, with arguably good reason:

schools must be able to depend on their AlphaSmarts, and they couldn’t if pupils start hacking and playing SpaceInvaders.
 
This discussion is about SmartApplets for the Neo, a later model than the 3000 and a very different architecture:
 

unexpected_human Posted 8 years ago. Edited by unexpected_human (member) 8 years ago

 
I have asked about a development kit, but not had a response.

I originally had some interest in producing a data-logging application for some university field-work. As part of this (abortive) work I looked at the Neo hardware and software, and tried to understand as much as I could about the system. The battery life, robustness and cost of the Neo makes such an application very attractive.

With some educated guesswork and experimentation, I managed to figure out the basic format of the Smart Applet files, and then the format used by the font data. With this, I wrote a quick-and-dirty font editor that can read and write Smart Applet font files directly, and convert to/from True Type fonts (this is all actually much easier than it sounds).

The fonts are interesting because they are actually small programs. The font editor has to programatically generate a small 68000 assembler program that registers the font.

My biggest concern is that I do not have documentation for the header information in the Smart Applet files. In particular, there are some fields that define the type of applet and what appears to be a 16 bit ID number that must be unique to the applet itself (applets with the same ID can not be loaded at the same time - such as is deliberately set up with the thesaurus/dictionary applets).

The frustrating thing is that the Neo is very easy to develop for. If RL were prepared to release a development kit (or even just documentation), there are many useful applets that could be developed. For example, file back-up to an iPod, an IRDA synch that would actually work with my S60 Nokia phone, an enhanced text editor with bold formatting, etc.
I suspect that the simplest way of turning a 3000 (or indeed any model bar the Palm-based Dana) into a serial terminal will be one of these two approaches, depending on whether you're more comfortable with code or a soldering iron:

  • Create a new ROM, either by dumping and reverse engineering the existing one and adding new functions, or from scratch
  • Replace the motherboard with a new, programmable system hooked up to the keyboard, LCD and a serial port
Luckily there are lots of VT100 and other serial terminal emulator projects out there for simple microcontrollers.  You can probably get away with something as simple as an AVR on a piece of perfboard, or as you say an Arduino.

 
Top