The Forgotten History of Home Computers

A Macintosh in 1986 could show a moose on its screen. He spoke aloud, moved his mouth to match the words and told jokes.

Canadian physician and programmer Steven B. Halls created the Talking Moose at a time when a recognizable face had to be assembled from black-and-white pixels. It didn't take many pixels to give this one a personality.

Questions about artificial intelligence tend to follow today's talking computers. A different sort of story covers the Moose's beginnings: one programmer figuring out how a computer-generated voice could seem to come from a character.

So why a moose?

It came down to the antlers.

Photographs of the original Talking Moose present a two-dimensional Macintosh character. There was little room for detail, so its outline had to do much of the work. As Halls recalls, antlers were easy to recognize at a small size. He liked moose as well, and that settled the choice.

The first version was written by Halls in assembly language. Getting the lips to follow the speech took some ingenuity. As Halls recalls, the program located Macintalk, the Macintosh speech engine, in memory. It observed the sound being played and then changed the Moose's mouth shape to suit.

This didn't change the speech engine's memory. The Moose was watching it. Early Macintosh software could reach across applications into memory, in ways modern operating systems generally restrict.

The character could also comment on window and document names in familiar applications, thanks to that access. When the Moose seemed to know something about your work, it was responding to information on your own computer. Behind the face was programmed behavior, not a language model.

Into Color

Around 1989, the Moose gained color. On his wall, Halls kept a picture of that version, printed with an early Macintosh color printer. His account of the color Moose includes scans where the printing dots are still visible.

You can inspect this small piece of computing history, the character as it looked then, preserved in software and on paper.

Early users provided another kind of record. A letter published in 2016 has Mike Ellis recalling the Moose at a Boston Mac Developers Group conference in the late 1980s:

"He was widely admired by some of the cleverest developers I've ever known and became my constant companion on my Mac Plus."

That letter sits among other recollections sent to Halls. Decades on from using the software, people remembered the character well enough to write to its maker.

Making a Three-Dimensional Head Feel Alive

The Windows Moose that followed had a three-dimensional head. Its ears moved, and its eyes glanced about. Eyebrows and mouth gave it more scope for expression than the original pixels could manage.

Playing the same animation clips over and over would have made those movements predictable. Algorithms generating its motions gave the Windows character procedural animation instead.

Controlled randomness is what Halls's explanation of the animation describes. Each movement could end near a target, not at precisely the same spot every time. Both its speed and the pause before the next movement varied. The result avoided looking mechanical, thanks to smooth acceleration and deceleration.

A different platform meant a different lip-sync mechanism. On Windows, timing information from Microsoft's Speech API told the character which mouth shapes to use. There was no need to recreate the old Macintalk memory-observation technique.

Something Useful to Say

The Moose kept its jokes, but plugins added other things for it to talk about. To reminders and notifications were added news and weather.

A working Pushover connection appeared in a June 2016 update, with events for the Moose to announce supplied by IFTTT. In one example, the Moose warned of approaching rain. A phone entering a home geofence triggered a spoken "Welcome home" on the user's PC in another example.

You didn't have to keep checking a screen for those messages. Hearing them was enough.

A Face for a Voice

Between the original Moose's 1986 appearance and the current enthusiasm for AI assistants lie forty years. Calling it an early version of today's conversational AI would miss what Halls actually built. A joke could appear to come from an antlered companion, thanks to speech synthesis and carefully written animation code.

For Mike Ellis, that companion belonged to his Mac Plus. It could announce rain or greet someone arriving home in the later Windows project.

Those early screenshots are still worth a look. It is plainly a face made of pixels, yet a former user remembered a companion. Quite a result, for a moose that told jokes.

© 2005-2011 conanvsbear.com All Rights Reserved.