THE KEY-CASSETTE CONCEPT
The company was aiming at a small,
microprocessor-based desktop computer
that would be affordable, as easy to
use as a hand-held calculator, and
functionally as powerful as a mainframe
computer running APL. Nothing similar
had ever been built before. At the time,
in December 1971, the news of a CPU
on a single chip was only about one
month old. Furthermore, APL
interpreters were not even available
for minicomputers.
The size, price, and usability targets set
by Kutt Systems for its microcomputer
focused the attention of the company
on the calculator market. “The world
was full of calculators,” recollects Kutt.
“They made a real Big Bang.” In his
notes, Kutt entered, “Try and use
existing calculator cover, display, modify
power supply, and replace keyboard.”
Indeed, off-the-shelf calculator
components could save the company
money. For instance, to package the
computer into a case that would match
the design elegance of a calculator
cover, the case would have to be
manufactured using the injection
molding technique. But that was
expensive: a good quality mold with
sharp corners would cost around
$25,000.
The Key-Cassette
drawing. Source: M. Kutt’s notes |
Kutt’s notes provide an early glimpse of
the “computer of the future.” His
drawing, entitled Key-Cassette, is
among the oldest preserved sketches of
a microcomputer to be manufactured for
the consumer market. The name “Key-
Cassette” most likely derives from “Key-
Edit,” the name of the data entry
system manufactured by Kutt’s former
company, Consolidated Computer Inc.
The drawing depicts a case in the style
of a typical desktop calculator of that
time. The lower part of the front panel
hosts a built-in keyboard and the top
part depicts a single cassette drive on
the right and either an acoustic coupler
or the second cassette drive on the left.
A small display and some switches are
placed in the middle of the panel. |
A fragment of the
Key-Cassette’s keyboard. Source: M. Kutt’s notes
Page two of the MCM/70 User’s Guide introduces the keyboard
layout.
|
The annotated drawing provides enough
information to grasp the basic
operations of the Key-Cassette. The
small 32-key keyboard of the Key-Cassette would allow the user to enter
all the alphanumeric characters as
well as the APL and special function
symbols. To achieve such a degree of
compactness, each key was designed
to enter up to 5 symbols (using a
combination of key strokes). The
symbols on the keys would be color
coded to distinguish between the
symbols that can be entered directly
(red symbols in the center of the keys)
and those that could be entered via a
combination of key strokes (black
symbols placed in the corners of
the keys).
The one-line display of the Key-Cassette
would allow the user to view a single
line of APL code, a computer output, or
an error message. Using the rotate keys
“→” and “←”, the displayed information
could be scrolled left and right to fully
reveal its contents. Using the roll keys
“↓” and “↑”, one would scroll through
the lines of APL code. The sketch of the
Key-Cassette is augmented with two
drawings of possible segmented display
elements: one comprised of 13 display
segments and the other of 15
segments. Finally, the tape cassette
drives were to provide external storage. |
The production model of the MCM/70
would be equipped with a more “user-friendly”
APL keyboard (layout modeled
after the keyboard of the IBM 2741
terminal), with a one-line plasma display
and up to two digital cassette drives
providing over 100KB of storage each.
Only the sides of the case would be
injection molded, while the rest of the
case would be made of cheaper
aluminum.
FROM THE KEY-CASSETTE TO THE
M/C PROTOTYPE
Kutt’s notes contain a detailed analysis
of Intel’s MCS-4 chip set, the 8008
processor, the SIM8-01 development
system, and the MP7-02 programmer.
Kutt looks at the technical
specifications, pricing, and second
sourcing for electronic components.
He looks at Intel itself, its marketing
activities.
In April of 1972, Kutt paid Intel a visit
and learned from Bob Noyce and Hank
Smith about the status of the 8008
chip, the availability of the SIM8-01
development board, and its supporting
software. He inquired about the
possibility of Intel manufacturing custom
CPU boards for the MCM computer. In
his notes, Kutt entered that standard
8008 prototyping boards, ones that
could be used to prototype and test an
MCS-8 based system without building
his own board, would have a
“tremendous impact.”
A month later, Kutt received the SIM8-01 board from Intel and gave it to José
Laraya for the evaluation and the
estimation of its potential for growing
an APL machine out of it. Laraya recalls:
“Mers brought it [the SIM8-01] in and
said, ‘Here, see what it does.’ It was
really computing, it really did things,
one little chip.” The experimentation
with the SIM8 board concentrated on
interfacing with various devices (such
as the teletype) and on the use of the
MP7-02 programmer for the purpose of
burning Ramer’s APL interpreter into
the EPROM chips.
But this early attempt at building a
microcomputer, now called the M/C
prototype in the notes, was a
disappointment. Kutt wrote that the
machine “is useless as is,” and has to
be “drawn up, rewired, and debugged.”
In the end, Laraya decided to abandon
the SIM8 approach and, instead, was
determined to build his own hardware
from the ground up. He remembers
thinking, “OK, this [SIM8-01] is fine,
great, interesting, works with
teletype…But now, let’s build something
serious.’’ Laraya adds, “Mers got the
chips and on the basis of that I
developed the rack version….It was very
fast from the time we had the [SIM8-01]
development board.”
Laraya modularized the design of the
M/C prototype. One card included the
8008-based CPU as well as the display
and the keyboard interfaces. Another
card contained memory. There was a
specially designed APL keyboard, with
the soft character generator, and a
small plasma display (Burroughs Self-Scan 32-character display). The
production model would have one more
board with the cassette controller and
the Omniport interface on it (to connect
a variety of peripherals via the Omniport
connector at the back of the machine).
The rack prototype of the microcomputer
was good enough for Ramer and Genner
to start porting their APL interpreter into
it. On November 11, 1972, the
prototype was demonstrated to
shareholders during the Special General
Meeting of the Shareholders of Kutt
Systems in Kingston, Ontario. During
that meeting a motion was passed to
change the name of the company to Micro Computer Machines |
THE MCM/APL
|
In the early 1970s, APL was only
available on mainframe computers. The
development of an APL interpreter and
the memory management system for an
8008-platform characterized by low
speed, restricted instruction set, and
small memory addressing space was
the most challenging aspect of the
personal computer project at MCM.
The team that developed the interpreter
had worked together before. In late
1960s, Gord Ramer designed a dialect
of the APL/360 language that he named
York APL. He implemented the language
with the assistance of Don Genner while
both Ramer and Genner held positions
in the Computing Center at York
University. J. Morgan Smyth was among
the first users of the York APL and he
was frequently commuting between his
work place—Ryerson Polytechnic
Institute in Toronto—and York University
to discuss the implementation issues of
York APL with Ramer and Genner. At
MCM, the trio would develop one of the
first high-level language interpreters for
a microprocessor: Ramer would design
the language, Genner would implement
it, and Smyth would document it in an
excellent MCM/70 User’s Guide
published by MCM in 1974. |
Morgan Smyth (left), Don Genner, and Gord Ramer
(right) at York University, Toronto, October 2001
Photograph by Z. Stachniak |
The work on the interpreter started in
early 1972 even before MCM built any
hardware that could be used by the
software engineering group. Having only
the specifications of the 8008 chip,
Ramer and Genner used the IBM
System/360 assembler to emulate the
8008. “The 360 assembler was written
in such a way that you could use
macros to generate code for any
hardware,” says Ramer. “Thus [we]
generated macros for each 8008
instruction and voila!” A similar
emulator, the INTERP/8 (written in
Fortran IV), was later available from
Intel. It provided a software emulation of
the 8008 chip along with some
execution monitoring commands.
When the rack prototype of the
microcomputer was finally working at
MCM’s manufacturing facility in
Kingston, the development of the APL
interpreter could be done directly on the
8008-based hardware and the
interpreter’s code could be burned into
EPROMs using the Intel MP7-02
programmer. Programming “was really
slow,” says Laraya, “and you had to
program it by hand using switches….We
had to put the code and set the
switches and the addresses and hit
‘program’ [the EPROM]. Every time we
programmed, Don [Genner] used to
smoke one cigarette and say, ‘That’s
how long it takes to program a chip.’ He
smoked one cigarette, and when he
finished, [the chip] was programmed.”
In his notes, Kutt sketches the
directions for the development of the
APL interpreter for the microcomputer.
First, the basic, stripped-down version of
APL/360 would be implemented. The
description of an APL fragment that
comprises single dimension vectors,
some defined and some system
functions, spans two pages in the
notes. Then the interpreter would be
extended in two directions to support
the scientific and business utilization of
APL. “When we came up with the APL
[interpreter] for our PC,” says Kutt, “our
prime target was to make it simple to
use…so [the user] wouldn’t have to
become embroiled in the little nitty-gritty
things you have to look after in APL.”
The full description of the MCM/APL
interpreter for the MCM/70 computer
appeared in the MCM/70 User’s Guide.
SELLING THE FUTURE
The notes disclose some urgency to
prepare a viable demonstration of the
M/C computer. Early demonstrations
were vital to attract venture capital and
finance the operations of the young
company. Kutt sketches a “short-cut to
demo” in his notes and estimates its
completion at the early June of 1972.
The M/C demonstrator was to consist
of a single CPU and memory board and
a power supply packed into a desktop
calculator-like case that featured a builtin
keyboard and a small display. It was
to be basic hardware with just enough
software stored in ROM to demonstrate
the way the 8008 could handle a subset of APL. |
|
The Short-cut to demo drawing. Source: M. Kutt’s notes |
It is unclear whether such a
machine was ever constructed.
However, a more refined portable
prototype of the MCM/70 was built
and shown during the Fifth International
APL Users’ Conference in Toronto, in
May of 1973. “I remember we had the
fiberglass model there,” says Laraya.
“It was heating up.” Ramer, too,
remembers the event vividly: “The
demo had to be interspersed with short
talks to allow José [Laraya] to exchange
the heat-sensitive parts and then
restart the system for the next segment
of the demo.”
With limited RAM and no external
storage, that prototype was nothing but
an advanced APL-based scientific
calculator. However rudimentary, it did
attract attention of the APL community
and made it evident that in the near
future high-level programming
languages, such as APL, would be
readily available on small desk-top
machines. Other prototypes of the
MCM/70, including one mounted in an
attaché case and powered by batteries,
were showcased throughout Europe and
North America in the second half of
1973, attracting the attention of daily
and technical press.
One of the most successful
demonstrators that the company put
together had, in fact, no hardware at all.
“We had a cardboard mockup of the
computer,” says Smyth. “It…was a
small, slick little box...it was just
cardboard. And we went around to a law
firm in downtown Toronto and met with
the bunch of senior lawyers
there….Mers was gonna try to get some
venture capital.…These guys were quite
old and, at one point [during Kutt’s
presentation], actually the secretary
came in with a can of candies….to perk
‘em up. And I thought, ‘man, we are
wasting our time here.’”
Smyth continues, “And near the tail of
our presentation, which went on for over
two hours, …one of these guys said,
‘Now, just a minute. This contradicts
what you said at the very beginning.’
I’m thinking, ‘What?’ They were paying
attention and I was very impressed…
We walked out of there with half a
million dollars….It was…just
cardboard….He [Kutt] is waving this
around: ‘This is what it’s going to look
like!’ You are talking about selling the
future!”
GOOD LUCK, AND WELCOME TO THE
COMPUTER AGE!
|
The production model of the MCM/70
shared many technical features with the
Key-Cassette and the M/C concepts.
From its prototypes, the MCM/70
inherited a desktop design with built-in
APL keyboard, a one-line plasma
display, and cassette drives mounted on
the front panel. The computer was
powered by the Intel 8008
microprocessor and its ROM chips
contained the MCM/APL interpreter.
But other features, not discussed in
Kutt’s notes, also make the MCM/70 a
truly unique piece of microcomputer
engineering. The MCM/70’s 14KB of
ROM contained not only the MCM/APL
interpreter but also the cassette and
virtual memory operating systems
(called EASY and AVS, respectively).
AVS, designed by André Arpin, used one
of the cassette drives to provide virtual
memory by swapping programs and data
between the cassette and RAM. With
virtual memory, the MCM/70 offered an
excess of 100KB of memory. A power
failure protection system built into the
power supply of the computer allowed
continuous operation by battery in the
event of power failure. For extended
power loss, the computer initiated an
orderly shutdown: it automatically
provided system back-up by copying the
content of RAM to a cassette before
shutdown. The system was
automatically reinstated when power
was restored and batteries were
recharged. |
The MCM/70. Courtesy of Harley Courtney
Photograph by Z. Stachniak |
Kutt made some market analysis notes
looking primarily at the IBM
System/360 users who might benefit
from a smaller and much less expensive
system. He calculated APL university
prospects at around 15 in Canada and
75 in the U.S. And indeed, following the
announcement of the MCM/70, many
academics expressed interest in the
MCM hardware: “APL is currently used
in all of our introductory courses so that the potential for systems like yours at
Yale is very high,” wrote Martin H.
Schultz, Professor of Computer Science
at Yale University, to MCM in November
1973. By 1976, an estimated 27.5% of
the MCM systems sold in North America
went to educational institutions.
The notes, however, do not make any
reference to “personal computing” nor
to possible marketing strategies aimed
at promoting the personal utilization of
MCM’s microcomputers. This is hardly a
surprise as the notes were made in the
very early stages of the development of
the MCM/70. That situation would
change with the publication of the first
promotional documents by MCM in
1973. “It has been a combination of
the complexity of the large computer
machines and the complexity of the
special computer languages,” reads the
MCM/70 Introductory Manual published
by MCM in 1973, “that has till now
prevented the general public from using
computers directly themselves. But the
simplicity of the MCM/70 and its
associated computer language (known
as APL) make personal computer use
and ownership a reality….Enjoy the
privilege of having your own personal
computer—It’s a privilege no computer
user has ever had before the
MCM/70….Good luck, and welcome
to the computer age!”
It is difficult to explain unequivocally
why the MCM/70 was not the
commercial breakthrough to launch
the personal computing industry. It is
also difficult to estimate the number
of MCM/70 computers sold worldwide
or the scope of impact it had on the
APL community and on the rise of
personal computing. Even so, it was
MCM’s historical role to show that with
the advent of microprocessor
technology, affordable personal
computing was at our fingertips. It was
not too farfetched to imagine that, “in
the coming years the computer field is
going to be made of millions of small
computers and a limited number of
large computers” (Mers Kutt, Boston,
September 28, 1973).
|