Reviving an Ann Arbor Ambassador 60 terminal

JWZ documents his adventures in bringing a 1982/3 vintage Ann Arbor Ambassador 60 terminal (a rare portrait-orientation terminal) back into service -- fitting it with a Raspberry Pi and a new power-supply and getting it to boot its beautiful green-screen.

I don't remember how I ended up with it -- I probably liberated it from work some time in the late 80s. But it served me well.

At one point, I built a 50' serial cable so that I could drag the terminal out onto the back deck and work outside. I remember also routing audio for a headphone jack over some of the unused lines inside that cable, since I didn't have speakers outside.

An elegant cable, from a simpler age.

Here's the problem with this device, as you can see in the video: the character buffer on the serial port is not large. I'm guessing it is dozens of bytes deep. Dozens. And the CPU that moves those bytes from the serial port into display memory is... not fast. So it keeps up pretty well at 4800 baud, but at 9600, or when you light up the afterburners and go for the full 19,200, it falls behind.

The way terminals deal with this is flow control: either end can say, "Hold up, I am suffering" and data transmission stops until the other side is ready. The proper way to do this over a serial connection is with DSR/DTR lines, which are extra copper on the RS-232 cable, one for each side, that signal when we're ready to go. But as noted, the not-quite-a-serial-port that Pis have doesn't have that. Which leaves you with inline flow control, XON and XOFF, typically the ASCII bytes ^S to stop and ^Q to resume.

You guys, I got my Ono-Sendai working again!