Proceedings_of_the_First_West_Coast_Computer_Faire_1977 Proceedings Of The First West Coast Computer Faire 1977

Proceedings_of_the_First_West_Coast_Computer_Faire_1977 Proceedings_of_the_First_West_Coast_Computer_Faire_1977

User Manual: Proceedings_of_the_First_West_Coast_Computer_Faire_1977

Open the PDF directly: View PDF PDF.
Page Count: 356

DownloadProceedings_of_the_First_West_Coast_Computer_Faire_1977 Proceedings Of The First West Coast Computer Faire 1977
Open PDF In BrowserView PDF
$12.00
(or, if you
prefer : A
nickel more
than $11 .95)

CONFERENCE PROCEEDINGS
JIM C. WARRENj JR.
EDITOR

----·.... 115-17. 1977 · Sa.:n. £:ra.:n.cisco
.nmnlllH!r

Faire

of the largest convention ever held

Exclusively Devoted to Home & Hobby Computing

over 300 pages of conference papers, including:
(Topic heading. with approximate page counts)
Friday & Saturday Banquet Speeches (16)
Tutorials for the Computer Novice (16)
People & Computers (13)
Human Aspects of System Design (9)
Computers for Physically Disabled (7)
Legal Aspects of Personal Computing (6)
Heretical Proposals (11)
Computer Art Systems (2)
Music & Computers (43)
Electronic Mail (8)
Computer Networking for Everyone (14)
Personal Computers for Education (38)
Residential Energy & Computers (2)
Systems for Very Small Businesses (5)

Entrepreneurs (6)
Speech Recognition &
Speech Synthesis by Computer (14)
Tutorials on Software Syskems Design (11)
Implementation of
Software Systems and Modules (10)
High-Level Languages for Horne Computers (15)
Multi-Tasking on Horne Computers (10)
Homebrew Hardware (8)
Bus & Interface Standards (17)
Microprogrammable Microprocessors
for Hobbyists (18)
Amateur Radio & Computers (11)
Commercial Hardware (8)

plus ---Names & addresses of the 170+ exhibitors at the Computer Faire

Order now from:
Computer Faire
Box 1579
Palo Alto CA 94302
(415) 851-7664

Proceedings:
Shipping & Handling:

Inside Califo rni a:

An

~77 . 1.10b y Com p ut erl"aire

$12.00
~

($11.95, plus a nickel, if you prefer)
(Write for shipping charges ouside U.S.A.)
Pa ment must accom an
the order.
o a es ax
Paymen t m ust accom pany the order.

8~"xll" softbound book.

BOX 1579 , PALO ALTO CA 94302

000

(415) 851- 7664

The Digital Group comments on

DR. DOBB'S JOlJ'RNAL
(We were surprised and pleased recently to find these comments about Dr. Dobb's Journal
in the latest Digital Group Newsletter.)

po box 6528 denver, colorado 80206 (303) 777-7133

NUMBER 8

It is not very often that there is a journal/newsletter that the Digital Group
is able to recommend without some hesitation (and we get them all). However,
Dr. Dobb's Journal of Computer Calisthenics & Orthodontia is one pleasant
exception. Jim Warren, the editor, has put together a good concept and is
managing to follow through very well indeed. There is no advertising in the
Journal. It is supported solely on subscriptions. That also means that
manufacturers have zero leverage over the content of the magazine. The Journal's
primary purpose is to place significant software into the public domain and to
provide a communications medium for interested hobbyists. The approach is
professional and they are growing quickly.
(In case it might appear otherwise to some people, there·is no official link
whatsoever between the Digital Group and Dr. Dobb's Journal - we've taken our
lumps as appropriate just like everyone else when Jim felt they were justified.)
We think Dr. Dobb's Journal is here to stay and a publication that is a must
for everyone in the hobbyist world of computers. Don't miss it!

IN EVERY ISSUE
- UNIQUE SYSTEMS PROJECTS
"Realizable Fantasies" - details of
projects that have not yet been done,
but are within the limits of current
technology, hobbyists' expertise,
and the computer enthusiast's budget.
-INDEPENDENT PRODUCT
REVIEWS AND CONSUMER
ADVOCACY
DDJ staff now includes a three person
product & software evaluation group.
They perform independent evaluations
of products being marketed to hobbyists and publish their findings - good
or bad - in this subscriber-supported
Journal. Note that Dr. Dobb's carries
no paid advertising; it is responsible
only to its readers. It regularly publishes joyful praise and raging complaints about vendor's products and
services.

• COMPLETE SYSTEMS & APPLICATIONS SOFTWARE
User documentation, internal specifications, annotated source code. In
the first year of publication, DDJ
carried a large variety of interpreters,
editors, debuggers, monitors, graphics
games software, floating point routines
and software design articles.
• HOT NEWS AND RAGING RUMOR
Unusually fast turn-around on publisbing "hot stuff". Typically, an
issue will carry information and articles
received within two weeks of its
distribution. Also, we hear and print
lots of rumors belched forth by the
nearby "Silicon Valley" rumor mill.

Name:_______________________________________________________________________________

MORE REVIEWS
"THE software source for microcomputers. Highly recommended."
-Philadelphia Area Computer Society
The Data Bus. July. 1976.
"It looks as if it's going to be THE
forum of public domain hobbyist
software development.
Rating-* * *
Toronto Region Association of
Computer Enthusiasts (TRACE) •
Newsletter. July 9. 1976.

*.

"The best source for Tiny BASIC and
other good things. Should be on your
shelf."
- The Computer Hobbyist.
North Texas (Dallas) Newsletter.
May 1976

Addres~s______________--------------------------

Please start my one year SUbscription to
Dr. Dobb's Journal (10 issues) and bill me
for$12.

City/State'_ _ _ _ _ _ _ _ _ _ _ _ _ _..LJZip_ ___

In Canada add $4/year for postage.
European and Japanese rates are available
on request.

Mail to: Dr. Dobb's Journal- Dept.51-1263 El Camino Real - Box E - Menlo Park, CA 94025

Meet the most powerful
jJ,C system available for dedicated work.

Yet it's only $595:
·kit price

Here's the muscle you've been telling us. you wanted:
a powerful Cromemco microcomputer in a style and price
range ideal for your dedicated computer jobs-ideal for
industrial, business, instrumentation and similar applications.
It's the new Cromemco Z-2 Computer System. Here's
some of what you get in the Z-2 for only $595:
• The industry's fastest ,uP board (Cromemco's highly
regarded 4 MHz, 250-nanosecond cycle time board).
• The power and convenience of the well-known Z-80
,uP.
• A power supply you won't believe (+ 8V @ 30A,
+18V and -18V @ 15A - ample power for additional peripherals such as floppy disk drives).
• A full-length shielded motherboard with 21 card slots.
• Power-on-jump circuitry to begin automatic program
execution when power is turned on.
• S-100 bus.
• Standard rack-mount style construction.
• All-metal chassis and dust case.
• 110- or 220-volt operation.

DEDICATED APPLICATIONS
The new Z-2 is specifically designed as a powerful but
economical dedicated computer for systems work. Notice
that the front panel is entirely free of controls or switches
of any kind. That makes the Z-2 virtually tamper-proof. No accidental
program changes or surprise memory erasures.

widely regarded as the standard of the future. So you're
in the technical fore with the Z-2.

BROAD SOFTWARE/PERIPHERALS SUPPORT
Since the Z-2 uses the Z-80, your present 8080 software can be used with the Z-2. Also, Cromemco offers
broad software support including a monitor, assembler,
and a BASIC interpreter.
The Z-2 uses theS-100 bus which is supported by the
peripherals of dozens of manufacturers. Naturally, all
Cromemco peripherals such as our 7-channel AID and
DIA converter, our well-known BYTESAVER with its
built-in PROM programmer, our color graphics interface,
etc., will also plug into the S-100 bus.

LOW, LOW PRICE
You'll be impressed with the Z-2's low price, technical
excellence and quality. So see it right away at your
computer store--oi" order directly from the factory.
Z-2 COMPUTER SYSTEM KIT (MODEl Z-2K) (includes
4 MHz ,uP card, full-length 21-card-slot motherboard,
power supply, orie card socket and card-guide set,and
front panel; for rack mounting) .............. $595.
Z-2 COMPUTER SYSTEM ASSEMBLED (MODEL Z-2W)
(includes the above as well as all 21 sockets and card
guides and a cooling fan; for rack mounting) ... $.995.

FASTEST, MOST
POWERFUL ,uC
Cromemco's microcomputers are the fastest and
most powerful available.
They use the Z-80 microprocessor which is

Shown with
optional bench cabinet

Cromemeo·
inc 0
r p 0 rat e d
Specialists in computers and peripherals

2432 CHARLESTON RD., MQUNTAIN VIEW, CA 94043 • (415) 964-7400

Get updated •.. keep updated with

the leading .agazine in the
personal co.puter field

The personal
computer
age is here.

Home computers
.. . practical,
affordable.

Join Byte's 100 000 subscribers and caich up on
the latest developments
in the fast-growing field of microprocessors. Read
BYTE The Smalr Systems Journal tbat tells you
everything you want to know about personal computers, including how to construct and program
your own computer (30,000 BYTE readers have already built, or bought, their own systems and half
of these have 8K bytes or more).
You'll find our tutorials on hardware and software
invaluable reading, also our reports on home applications and evaluative reviews based on experiences with home computer products.

Large scale integration has
slashed prices of central
processors and other computer components. This has encouraged the development of new, low-cost peripherals resulting in more
hardware and software - more applications than you
could imagine, more opportunities for you. BYTE brings
it all to you. Every issue is packed with stimulating and
timely articles by professionals, computer scientists and
serious amateurs.
BYTE editorials explore the fun of using and applying
computers toward personally interesting problems such
as electronic music, video games and control of systems
for alarms to private information systems.

Please enter my subscription for:
One year U.S. - $12
0 Two years u.s.' $22
[-I Three years U.S.' $32
Canada or Mexico· $17.50
Europe (Air Delivered) - $25
[J Surface delivery to all other countries except Europe, Canada or Mexico· $25 (Air
delivery available on request)
[ I Check enclosed (Bonus: one extra issue)
Please remit in U.S. funds 1..1 Bill me.
[J Bill BankAmericard
[I Bill Master Charge

o

o

Card number _ _ _ _ _ _ _ _ _ _ __
Signature _ _ _ _ _ _ _ _ _ _,Name (please print)

n

Expiration date _ _ __
_ _ _ _ _ _ _ __

Address _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __

NOW-"
ONE comprehensive
reference
to microcomputersl

By Charles J. Sippi
IA PETROCELLI/CHARTER BOOK)

480 pages, 65 lIIus., $19.95

ORDER FORM
Hand screened quality tee-shirt. 50% polyester I 50%
cotton. Available in white, yellow, light blue and tan.
Microcomputer design in black and red.
Chest Size
1st Color 2nd Color
Price
Quan.
(Inches)
Choice
Choice
Each Package
y
5.90
22·24
plus
26-28
.85 postage
~ 30-32
per package.
34-36
A
In California:
38-40
please add state
42-44
$ 46-48
and local taxes.
Name ____________________ __________________

8

~

~

~

Addre" __________~--------------------CiW _____________ State _ _ _ _ _ _ Zip, _____
Mail your order to:
Applied Art, 852 Madonna Way, Los Altos, California 94022
Tel. (415) 948-0689
DCheck"
DMoney Order
Please allow 10 days for delivery.

L_____ ~-~----------------------~-----------

More than a detailed reference to every aspect of chip technology,
Microcomputer Handbook is also an important guide to decisionmaking about specific configurations (4-bit, 8-bit, 16-bit, or' even
64-bit "super machines"). Among its many down-to-earth features
is a first-rate glossary of terms that runs through every chapter and
spotlights everything from ACIA (asynchronous communications Interface adapter) to ROM simulator (a general-purpose debugging
tool). There's even a detailed analysis of the microcomputer as a
hobby item; problem solving;.game playing and kit assembling.
For the professional, hobbyist, and student, this book: • contains photos and diagrams providing easy introduction to techniques
and concepts • discusses read-only memories (ROM's and RAM's)
• examines the role of large-scale interation (LSI) in production-cost
reduction • presents cost-performance calculation for microcomputer systems • demonstrates the vast applicability of the microcomputer; its papacity for data storage, data coll~ction, and reducing operating time· ·and lists the latest "hobby type" microcomputers available, as wen as clubs, societies and manufacturers.
'-------10-DAy·FREE EXAMINATION - - - - - - -

InniI

VAN NOSTRAND REINHOLD

~ 7625 Empire Drive. Florence. Kentucky 41042

Please send me the MICROCOMPUTER HANDBOOK by Charles J. Sippi for 10 days'
free examination. At the end of that time I will either remit the amount of your
Invoice (including postage, handling, and my local sales tax) or return the book
and owe nothing. (Payment must accompany orders with 1'.0. box addresses.
Offer good in U.S.A. only, and subject to credit department approval.)
(PLEASE
PRINT)
Name
________________________________
_
Address ________________________~-------------City
State
Zip
SAVE! Enclose payment with order and publisher pays postage and handling. Same
return·refund guarantee. Your local sales tax must be Included with payment.

l
I

1
1
1
1
1

I'
I
I

-~~~~-----------------~~~

EXPLORE

INTERFACE AGE
* MONTH AFTER MONTH LOOK TO

INTERFACE AGE MAGAZINE FOR THE LATEST
INFORMATION ON THE DYNAMIC WORLD OF
PERSONAL COMPUTING.
• Use your personal computer for auto repair, work
bench controller, teaching machine, central infor~
mation bank and design test center.
READ INTERFACE AGE FOR THE LATEST ON NEW
• Control your small business with your own realPRODUCT INFORMATION AND TECHNICAL
time accounting and inventory control system.
BREAKTHROUGHS.
.
• Set your computer to turn sprinklers on and off,
• May's issue included inside the FLOPPY ROM™
manage a household security system, feed your
- a vinyl record which is played on a conventional
dog.
phonograph to enter tllis month's program in your
• Establish a recipe bank to plan daily meals and
computer.
generate its own shoppjnglist.
• Evaluate the stock market, set up r---~-------~------m
*ORjJER YOUR SUBSCRIPTION NOWI
•
~
gambling and probability programs.
12 Monthly Issues: $14 U.S., $16 CanadlilMexlco, $24 International .~I
Evaluate odds on sporting events and I
. horse racing. .
I Name
I

*

* ARTICLES
RANGE FROM THE
FUNDAMENTALS OF.COMPUTERS TO
LANGUAGES AND SYSTEM DESIGN.
APPLICATIONS INCLUDE BOTH PROFES$.IONAL AND NON-TECHNICAL.

I
I

~~

City
D Check or M.O.(U.S. Funds drawn on U.S. Bank)
Acct No.

State
ZIP'~.- - : _
D Visa Card n Master Charge
Exp. Dat....
e _ __

I
I

I
I
Signature
I
IL __________________
Make checks payable to: INTERFACE AGE MAGAZINE, P.O. Box 1234, Cerritos, CA 90701

~

choice line of
Personal Computing
80010--------NEW
CHOICES

CHOICES

MICROPROCESSOR BASICS (EIphick) Selection and application info
on 8 popular micro's, including the
8080,6860, F8, IMP, and 6100.
#5763-6, paper, $9.95

MICROPROCESSORS: New Directions for Designers (Torrero) " ... a
useful book for the electronics design engineer." BYTE MAGAZINE.
#5777-6, paper, $10.95

THE BASIC WORKBOOK: Creative
Techniques for Beginning Programmers (Schoman) "Hands-on" learning of problem-solving using a computer. #5104-2, paper, $4.25

FUNDAMENTALS & APPLICATIONS
OF DIGITAL LOGIC CIRCUITS
(Libes) "A great book for use as a
reference by people who are learning digital electronics." PEOPLE'S
COMPUTER COMPANY, #5505-6,
paper, $6.95

GAME PLAYING WITH BASIC
(Spencer) Over 50 easy-to-Iearn and
challenging games and puzzles for
your personal computer. #5109-3,
paper, $6.95

BASIC BASIC: An Introduction to
Computer Programming in BASIC
Language (Coan) " ... an excellent
introduction ... clearly written and
TELEPHONE ACCESSORIES YOU well-organized." COMPUTING RECAN BUILD (Gilder) Fully-illustrated, .VIEWS. #5872-1, paper, $7.95
step-by-step instruction on building
useful phone accessories at a frac- ADVANCED BASIC: Applications &
tion of the commercial cost. #5748-2, Problems (CoaA) "This one rates
paper, $3.95
well above average." DATA PROCESSING DIGEST. #5855-1, paper,
$6.95
:._.

-~

CHOICES
GAME PLAYING WITH COMPUTERS, Revised Second Edition
(Spencer) #5103-4, cloth, $16.95
COMPUTERS IN ACTION: How Computers Work (Spencer) #5861-6,
paper, $5.50
COMPUTERS IN SOCIETY: The
Wheres, Whys, & Hows of Computer
Use (Spencer) #5915-9, paper, $5.50
PROGRAMMING PROVERBS (Ledgard) #5522-6, paper, $6.50
PROGRAMMING PROVERBS FOR
FORTRAN PROGRAMMERS (Ledgard) #5820-9, paper, $6.50
COBOL WITH STYLE: Programming
Proverbs (Chmura & Ledgard)
#5781-4, paper, $5.45
MINICOMPUTERS: Structure & Programming (Lewis & Doerr) #5642-7,
cloth, $12.95
DIGITAL SIGNAL ANALYSIS
(Stearns) #5828-4, cloth, $19.95
FORTRAN FUNDAMENTALS: A
Short Course (Steingraber) #5860-8,
paper, $4.95

STANDARD DICTIONARY OF COMPUTERS AND INFORMATION PROCESSING, Revised Second Edition,
#5099-2, Available Oct. '77.
APPLIED COMPUTING: Putting Your
Computer to Work, #5761-X, Available Jan. '78.
PROGRAMMING THE PROGRAMMABLE CALCULATOR #5105-0,
Available Jan. '78

inpeJSonai
COmputing
bOoks!

AVAILABLE AT YOUR

DIGITAL TROUBLESHOOTING:
Practical Digital Theory and Troubleshooting Tips (Gasperini) #5708-3,
paper, $9.95
DIGITAL EXPERIMENTS: Workbook
of IC Experiments (GaS'perini)-#5713-X, paper, $8.95
COMPUTER MATHEMATICS (Conrad, Conrad, & Higley) #5095-X,
cloth, $13.95

HAYDEN BOOK la COMPUTER STIlE!
COMPANY• INC•• 50 Essex Street, Rochelle Park, New Jersey 07662

WE'RE DIFFEREII., ,
110 Ads
110 Fr~lls

Alleomem

,

6502 ASSEMBLY
PROGRAMMING

I

I!8r~G'm':~.rsERS

l

People's Computers is for anybody and everybody who wants to learn more about computers, how they work, and how to
use them. We aren't padded with color advertisements either; we're wall to wall with articles, listings, reviews, games. letters,
and interviews.
Read the whys and wherefors of different computer languages. Discover what a 'chip' is, how a 'gate' works, and what new
products are available. Learn to program from our series on easy-to-use computer languages. Find out about the uses of
computers and calculators in education. Each issue also contains useful programs, with extensive comments, that you can use
on your computer at home, at school, or at work.
There's lots more, and all for only $8 a year! To subscribe write: People's Computers, Dept 52,1263 EI Camino Real,
Menlo Park CA 94025.
.

people's computers
CONVERT YOUR IBM
SELECTRIC INTO A HARD
COpy OUTPUT TERMINAL!

5-100
COMPATIBLE

[ID[L£~~

BOARDS
Z-80 CPU
$35.00
2708/16 EPROM $25.00
PROTO BOARD $25.00
8k STATIC
$25.00
16/64 DYNAMIC
RAM $35.00
PLEASE ADD $2.00 SHIPPING PER ORDER.

ta

IThoco
PO BOX 91

cud 10

27~-~~71

ITHACA, N.Y. 14850

WITH OUR KIT, YOU CAN
ACTUALLY ADD A FULL SIZE
IMPACT PRINTER TO YOUR
COMPUTER - AT A PRICE
YOU CAN EASILY LIVE WITH!
NO MODIFICATIONS TO YOUR
TYPEWRITER ARE NECESSARY AND IF YOU DON'T HAVE ONE,
WE'·lL GET IT FOR YOUI

PLEASE CONTACT US AT...

ESCDN
1235 TENTH STREET
415/524-8664

BERKELEY
DEPT. J

Now There Are Three
• northern california
electronics news
published bi-weekly

• southern california
electronics news
published bi-weekly

• southwest
electronics news
published quarterly

Covering the States of
C.ALIFORNIA
TEXAS
OKLAHOMA
NEW MEXICO
ARKANSAS
LOUISIANA
No Other Publication Emphasizes Local and Regional
News in the above Six (6) States
Each paper Has its own News of People and Events in its own Area
plus National Product News, thus guaranteeing High Readership

published by

BENDER PUBLICATIONS INC.
LOS ANGELES PALO ALTO 1
DALLAS
HOUSTON
. P.o. Box 3631
260 Sheridan
.
6115 Denton Dr.
2990 Richmond
L.A. Ca. 90019

Palo Alto, CA. 94306 _

Dallas, TX 75235

Houston, Tx 77006

(213) 737-6820 (415) 326-8877 .. (214) 358-2311 (713)526-5381

Computer Music
Journal

Devoted to High Quality Musical
Applications of Digital Electronics.

The following topics are covered:
* design of real time playable instruments with controllers like organ keyboards, pressure sensitive
surfaces, joysticks, and new designs; * production of natural sounding quality of tone or timbre by
Fourier series like synthesis (with periodic or nonperiodic sine wave summation) or FM synthesis and
new methods; * circuit design of digital oscillators (any waveshape - up to 256 ultra low distortion
sine waves with independent control of amplitude and frequency - all from one digital oscillator)
controlled by a small computer; * high speed, high resolution multiplication; * review of hardware
components; * cost of hardware / quality of sound tradeoffs; * control of analog s~/nthesizers with a
small computer; * envelope generators (not just exponential or linear attack, susta i 11, and decay, but
any shape); * digital filtering; * high resolution, high speed digital to analog cOI1YL'rters; *.digital
reverberation and movement of spacial location with Doppler shifting; * analysis of acoustic instruments; * psychoacoustics; * generation of different musical scales including meantone, just, and equal
tempered (with 5, 7,12,19,22,29,31, or43 notes in each octave) tunings; * reviews of books about
computer music, acoustics of musical instruments, psychoacoustics, music theory and composition,
computer design, and electronics.
Computer Music Journal is published every other month by People's Computer Company, a non-profit,
educational corporation. For a one year subscription (6 issues) send $14 to Computer Music Journal,
PCC, Dept 51, Box E, Menlo Park, CA 94025.

~~1Y~
®lA\~® oorn

FREE!
and

with your
business
card or send
$1.00 (refundable on
1st order)

Dept. CF

MORE
Fairchild Tech. KitsTM
Clocks - Counters
Power Supply
Micro Computer
Function Generator
Send for our brochure TODAY

~ Vfr®OOOll

Box 321
Issaquah, WA 98027

68 pages of News about
the Amazing Technological
Breakthroughs in the
Mini-Micro Computer Field.
Catalog Includes:

Catalog offers items like:

• Reproductions of manufac• $279 ,Complete Computer Systure(s complete catalogs, intem for home use. Not a kit!
cluding Imsai's - normally
• Low cost new and used
$1.00.
peripherals
• Articles and news about Minimicro Computers.
• $2.00 Discount Certificate.
LARGEST CATALOG IN ITS
• Discounts up to 90% on Used
FIELD
Equipment.

A veritable revolution of new ideas about programming, new languages, hardware design, robots, video games, analog interfaces and new memory technology (just to name a few) presents the computer experimenter with a pleasant (if sometimes
frustrating) dilemma: How do I choose the best books? Where do I get them? What is available?
BYTE's BITS (BYTE Interface Technical Services, Inc) may be the answer. Bookselling is our main business: With the help
of BYTE magazine's editors, we screen the scores of computer books that come out every week and offer you only the best.
Books like:
Microcomputer Handbook by Charles Sippi
What To Do After You Hit Return ••. -PCC's First Book of Computer Games
Computer Lib·Dream Machines by Ted Nelson
Best of BYTE, Vol. 1
APL-An Interactive Approach, second edition, revised, by Gilman and Rose
Instant BASIC by Jerald Brown
How to Buy & Use Minicomputers & Microcomputers by William Barden
Practical M!crocomputer Programming: The Intel SOSO by Weller, Shatzel, Nice
The Acoustical Foundations of Music by John Backus
Computer Power and Human Reason by Joseph Weisenbaum
Fundamentals and Applications of Digital Logic Circuits by Sol Libes
A Dictionary of Microcomputing by Philip E Burton
Understanding Microcomputers and Small Computer Systems from Scelbi
Scelbi's "SOSO" and "6S00" Software Gourmet Guide & Cookbooks
The Don Lancaster Series: TTL Cookbook, Active Filter CB
TV Typewriter, CB,
CMOS Cookbook
Fingertip Math from Texas Instruments
Build Your Own Working Robot by David L Heiserman
101 BASIC Computer Garnes by David Ahl
Chess Skill in Man and Machine by Peter W Frey
Electronic Projects for Musicians by Craig Anderton
Digital Computer Fundamentals by Jefferson C Boyce
The Art of Computer Programming, Volumes 1, 2, & 3 by Donald E Knuth
An Introduction to Microcomputers, Volumes 1 & 2 by Adam Osborne
Some Common BASIC Programs by Poole & Borchers
Plus most of the reference DATA books from Texas Instruments

The computer
information
explosion
is here!

If you would like our catalog (a reference book in itself) crammed with information and descriptions of these books, plus many
many more, just fill out the coupon below and send it along with $1 (which incidentally will be applied to your first order) to
BITS, Inc, 70 Main St, Peterborough NH 03458.

•

Send to: BITS Catalog
BITS,lnc.
70 Main Street
Peterborough NH 0345S

III

Check Payment method:
_ _ My check is enclosed
_ _ Bill my Me No. _ _ _ _ _ _ _ _ _ _ Exp. date _ _ _ __
__ Bill my BAC No.

Exp. date _ _ _ __
_ _ BITS Catalog $1.00

Name
Address
City

Signature

State

Zip Code

In unusual cases. processing may exceed 30 days.

------------------------------------------------------ ------------------------------~

MINI-MICRO SYSTEMS is the
only monthly publication
devoted exclusively to the
fast-paced world of mini
and microcomputers:
• TECHNOLOGY AND PRODUCTS
• APPLICATIONS AND SYSTEMS
• PERIPHERALS AND SOFTWARE
• INDUSTRY AND CORPORATE
• BUSINESS AND FINANCIAL

If you are not currently receiving MINI-MICRO SYSTEMS magazine, write today
for a sample issue and a qualifying form to receive a FREE subscription.
MINI-MICRO SYSTEMS / 5 Kane Industrial Drive / Hudson, MA 01749

CAREER AND SPECIAL ASSIGNMENT OPPORTUNITIES
Rapid growth has opened up editorial opportunities at Mini-Micro Systems magazine - full time staff positions,
regional correspondents, and specialized subject assignments. If you are interested in any of this work, please send
a resume, along with a brief statement on how you would like to associate with Mini-Micro Systems, to:
Stanley Klein, Editor-in-Chiej, Mini-Micro Systems, 5 Kane Industrial Drive, Hudson, MA 01749

AND DON'T FORGET THESE ...
My Computer Likes Me - Albrecht.
BASIC to young

or old.

In an easY'going, conversational style, this 64 page workbook introduces

This classroom favorite is desiglJed for people with no previous computer experience

or knowledge of programming.

1972, $2.00.

Games With the Pocket Calculator - Thiagarajan and Stolovitch.
This book features interactive "group"
games to be played by small groups of young or old. An entertaining book for use at home; an educational
book to introduce students to the calculator and to build computational skills.
1976, $2.00.
Games, Tricks, and Puzzles For A Hand Calculator - Judd.
An entertaining and useful book for anyone with

PUBLISHER

P.O. Box 310, Dept. 15
Menlo Park, CA 94025

a hand calculator. The author covers many of your favorite mathematical games and recreations. Learn how
to perform calculator tricks.

1974, $2.95.

CALCULATORS/COMPUTERS Magazine This new magazine contains creative articles and materials
that will teach you about calculators anct computers. Each issue inclu:..•..:':".":.~
",.:l'~..'~.",,,",,
":)(\" ..:.t..
.:~...~....

.~....

....

:(?~~~Y?~i;i<'~:(~;
"ti" ~~

\\'/

l'

'r;

3,

\\"1
.... ,:

\\

:>::.~:::~;:~~:~~:.~~:~~:~~
.-..
.. . .-!t\..
¥.~.--~- ~

;

'.'

.i'i~~·:,;~r

~:

.

..

/.I,ii. \\~)'l',,\::..-

i("':':I;

~~¢}./~~~~~

i'()'; !\()~ !"V)~ iY)~

"}/',\:.. , .. '.'"", ,:.1.'.'."'.

. . . "so"1z~~;:;;1f}i:'~~i;i~

,'::',

";r~t'ir'~t

. '

It should be of particular interest to realize that
computer graphics-this 15-year-old infant-is
.:.' ".:.~.,::::,:: :'.':;::f'./ :'. ~.....: . ... ....
patently capable of bringing forth a totally
"fa"
.:~';~;;;,,,,i'::;;,,,,,:;~,;:;;~·;>~·.~;:;;:
different kind of visual experience as unique and
:'. ~ .. ~ ~ ~H~.:· .. :{~! ~ ~.' ~: {~~}.:.:".~.~.~~r:
riotously enjoyable-much cheaper-more .'~N:~~{f~~r~<{~~:,~:
.:::~;> ..':::.>
..:.......
'{'/ :": }{:, ':::\
energy/materials intensive than the Chinese, preChristian invention of fireworks.
.)h. . . .
'\i~:

.Jh. . . . ;,·

;~~.;l/ ;~J:iji~~

· .. .' .... ,.

.

i.;~:;~·>L.~;·s,;~gl<,}~,i;,;
::·;:~:::~::::~::?::7::~::~~:~.~~:::~.:~~·;:~?::;:.~.·?:::;
'.~.

.' ". '.

· .'... ~. " .
· .

'.~:
~

..

.~'

'.

'

..

.
..:;.' . ~

~'...'

>: :~: : ~ :;i.: L;.;i;:.: : ;:,~:;:i: :

BIOGRAPHICAL SKETCH
John Whitney's growing reputation as a pioneer with
\T!'!:;:~?1'!::::;i:~l!l::1i~!!!
applications of the computer in visual art was advanced --:)ff~'Wr
another step with the completion of his film Arabesque
o
:~.,:.,!.:•,.,._
.
y;
"me" ':H:"
..::
last year. The film has received high honors in the U.S.,
'.. '.'
:?\
.... ..: .. ::... "':::/': \;;/:' \::.:'
and abroad; including Iran where its relation to the -'/)J\\\,~~jJJj"-\~
.,..~:: :.' ,.,.: ::::<..',;., •..~~:~~(.:.;~;j~::.::;. . .
traditions ofIslamic pattern was acknowledged. John's
thirty-seven year "obsession" with the role of time and
::~;>.:~?o:~:~;,:J"(\,~.~:.~,:.?
movement in visual art led to computer graphics long
:~:~~.
:: '.
'~;.
'
.:.'
before that technology was accessible, or practical.
: ' . . ~; t :~;:
What for years was only an obscure experimental study
:::
.;;
.:::.:
.: ...... :.....
is just now evolving into an accepted and recognizable
......,: ... :.:........ .. :....::. ...: ......:.-.
"re" ······:.:..:;;,:··:::.:.u;.~.... ·::,.w:~::··~?o:~
fine art attracting many young artists. It is a field ......
which is of growing interest to the personal computing
'y ::{ :~:'
. experimenter. John Whitney's part in bringing about
t ~i ~:
these developments is well known.

;1;?!'.,%:

'

)~.

.";-

:.:

"

...

"

~)

.......

'

:::::;,. ,;

........ ..

".

;:~ :;: ,;:; ; : ;:.:~:; ;:~;

.~.···,:~:t(:,:::··,~~.:If::.:~··;:.:~::.::·~::x·

y

FIGURE 1.
Each of these frames might represent samples
approximately one second apart out of 8
smooth continuous action sequence totaling twelve or more seconds in length. Read
from bottom to top.

"do"

'\

X'

~

1.

i

"

...

::

':::;

'.'
":.,'.:::

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 17

THE 1940'S: THE FIRST 'PERSONAL
COMPUTING ERA
Henry S. Tropp
Professor, Mathematics
Humboldt State University
Arcata, California 95521
ABSTRACT
The beginning of the modern computing era (generations
-1, 0 and 1, c. 1935-c. 1955) is best chronicled by observing
the efforts and determination of certain key individuals. One
of the workers in the immediate post-WW II period characterized the machine architecture with a comment that he could
look at the design of a new machine and identify its geographic area of birth and, in many cases, the individuals involved.
Nelson Blachman's 1953 ONR "Survey of Automatic Digital
Computers," listed 98 'machines' which had been completed
or were under construction by 75 different companies, universities, or governmental agencies. The majority of them were
one of a kind, although in many cases the designers indicated a
willingness to make plans and drawings available. This stamp
of individual philosophies and the willingness to share information pervades this early environment where few could see
the future explosion of information processing (the 'computer
revolution') that we are still experiencing. In this talk, I will attempt to describe some of the efforts, frustrations, and achievments of a few of these individuals.
Anyone who looks up the word "computer" in a dictionary
published before 1955 will discover that it refers to a human
being. That is, "one who performs a computation." Indeed
this is an accurate characterization of the term up to the early
1950's. The early electronic devices were generally called Calculating Engines or Giant Brains.) Computing was primarily an
individual, or occasionally a team effort. The development of
mechanical devices by Schickard, Pascal, and Leibniz paved
the way for desk-size calculating devices, but they didn't substantively alter the computational environment. The construction of tables to facilitate astronomical, astrological, navigational, or mathematical calculations can be traced back at
least to the early Babylonian cuneiform tablets. Babbage's
19th Century efforts to construct calculating engines, is well
known, as is his inspiration from the Jacquard Loom for
punched-card input and Lady Lovelace's concept of what we
now call programming. Due to his failure to complete a working model, however, his ideas had no effect on the computing
scene.
One of the early efforts that had a major impact on the
20th Century computational environment was Herman Hollerith's construction of a tabulating device, which he developed
for use in the 1890 census. This punch-card tabulator led to a
variety of mechanical accounting machines and some individuals conceived of ways to use them as computational aids. For
example, in the early1920's, Henry Wallace gave a course at
Iowa State College, using an IBM key-driven machine to calculate correlation coefficients. In the same decade, L.J. Corie (in
England) used accounting machines for scientific calculation,
and the construction of mathematical tables. In the latter part
of the 1920's, Ben Wood established a statistical laboratory at
Columbia University, using IBM donated equipment. Out of
of the 1920's, Ben Wood established a statistical laboratory at
Columbia University, using IBM donated equipment. Out of
Ben Wood's experience, and again with donated IBM punched~

card equipment, Wallace J. Eckert established an. astronomical
computational facility, also at Columbia. Another computational development, in the 1920's, was Vannevar Bush's first
analog computer. These developments, along with a growing
electronic technology that included the development of radar
and television prior to WW II, established a technological basis
for what· is now called the computer revolution. By the mid1930's, the capability was there, but some of the key ingredients were still dormant.
Prior to WW II, there was no widespread interest in developing a capability to do large scale computation. A few individuals may have felt a personal need for such a capability, but
there is no evidence that governments or commercial firms saw
any value in generating the time and funds necessary for such
developments. At NCR and IBM, for example, devices were
built shortly before WW II which performed arithmetic operations at electronic speed, but management of both companies
showed little interest in pursuing this avenue. Two specific
examples will illustrate this attitude in two different environments: a research laboratory and a major university.
At Bell Laboratories, George Stibitz was employed in 1930
as a research mathematician. One evening, in 1937, in the kitchen of his home, he arranged a few relays on a small piece of
plywood in order to demonstrate a mechanical procedure for
adding one-digit binary numbers. At the time, Stibitz was
concerned with switching network problems. At Bell Labs,
computers were available to perform necessary calculations,
which consisted in great part of adding, subtracting, multiplying and dividing complex numbers. These computers
consisted primarily of about a dozen women using pencil,
paper and desk calculators. When a fellow employee suggested to Stibitz that the computations might be accelerated if one could figure out someway to hook two or three
desk calculators together, he proceeded, instead, to use his
binary relay device to design a circuit that could multiply and
divide complex numbers. This generated enough interest so
that a group of Western Electric engineers, headed by Sam
Alexander, completed construction of the Complex Calcula- .
tor in 1939, capable of all four arithmetic operations.
The Complex Calculator (later renamed the Bell Mod I),
had some unusual features. When it went into operation in the
Bell Labs Building at 463 West Street, N.Y.C., it became the
first remote access computing system in existence. The
calculator was kept in a locked room, with keys available only
to maintenance people and custodians. Access was by means
of one of three teletype keyboards in the building. (Not
time-sharing- -only one at a time.) This was dramatically
demonstrated at the summer meeting of the Mathematical
Association of America, when, in September, 1940, Dr.
Stibitz described the device and attendees were able to
put problems on the keyboard located in a hallway outside of the lecture hall which was connected to the calculator in New York. That is, access over a long distance data
link. Its speed is almost embarrassing today, 30 seconds to
find the quotient of two 9-digit complex numbers, a factor
of about 3:1 over desk calculators. But is has a few more
important advantages: The excess-3 checking code made errors
impossible. If a relay failed, it stopped; also, continuous,
fatigue-less operation.
- With-the completion of this Calculator, Stibitz approached
management with the suggestion that an investment of

FIRST COMPUTER fAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

$50,000 would most likely produce a large-scale general purpose device using the same ideas and technology. The proposal
was turned down essentially with the response "who wants to
spend $50,000 just to be able to do ordinary computations a
bit faster and easier?"
World War II provided a response to this question, particularly with the need for ballistics computations. The computation of one ballistics trajectory requires about 750 multiplications. For one trajectory, this will require about seven hours
of human desk calculator time. The time factor is not significan until you have to do large batches of 100 or so. Here, the
relay calculator was capable of a speed factor of about 10:1. A
survey of 100 trajectories could be calculated in about 24
hours, as opposed to 700 human hours, with built-in checking
reliability and 24 hour-a-day, 7 days a week performance. During the war, Bell Labs constructed the Mod II (Relay Interpolation, 1943), the Mod III (the Ballistic Interpolator, 1944),
the Mod IV (Mark 22 Error Detector, 1945); and after the
war, the general purpose Mod V (one for NASA, 1946, the
other for Aberdeen, 1947), and the Mod VI (Bell Labs, 1950).
These calculators had not only error detecting codes, but some
had error-correcting codes, floating point, check signals, and
many features which enabled it to run unattended for many
hours. Although I tend to classify these electro-mechanical
relay computers as generation -1, many of their features didn't
appear in electronic machines until generation 2.
A second development in the U.S. occurred at the same
time that Stibitz suggested using relays to perform calculations in a binary mode. It occurred at an institution where, unlike Bell Labs, one would expect, and indeed find, little interest" in computational capability: Harvard University. In 1937,
Howard Aiken was completing his doctorate at Harvard where
his thesis on the laws of space charge had involved him in 18
months of laborious hand calculations of nonlinear differential equations. In response to a query after his oral examination about his future plans, he said he hoped to make it possible for future scientists to avoid his grueling computational
experience. In fact, he had already written a first draft of a
proposal to perform sequential computations in an electromechanical mode. His efforts to bring his proposed device
into being resulted in a good deal of hostility among the
Harvard faculty and administration. But with his natural
stubborness, Aiken persisted until, with the aid of colleagues
Harlow Shapley (Astronomy) and Ted Brown (Business),
he was able to see the president of IBM, Thomas Watson, Sr.
Watson agreed to have IBM assume the costs and assigned
engineers Claire Lake, Frank Hamilton and Ben Durfee to
collaborate with Aiken. Despite delays caused by WW II,
the Automatic Sequence Controlled Calculator (Harvard
Mark I) was installed and running at Harvard in 1944. From
then until it was dismantled in 1959, the Mark I performed
needed calculations for the defense department, the atomic
energy group, as well as the computation of many volumes
of Bessel functions. From the standpoint of speed, it was in
a class with the Bell relay calculators, both soon to be hopelessly outclassed by the electronic machines. From the standpoint of reliability, accuracy and negligible down-time, it had
no electronic rivals until the electronic 2nd generation machines. The technology used in the Mark I was not new, most
of it had been used and tested through at least a decade of
various applications. From an architectural standpoint, it
was designed to do operations in a sequential manner in much
the same way that Howard Aiken would have solved his problems with pencil and paper. Its 60 foot rotating shaft, translating horizontal rotation to vertical, was reminiscent of a
power plant generator. Not too surprising when one knows
that Aiken was a power engineer for the Wisconsin Gas Company from 1923 to 1935.

PAGE 18

However, ,the most significant impact of the ASCC is more
subtle than 'the machine itself. Howard Aiken felt that it was
his duty to spread the word. The visitors log of the Mark I installation shows the wide range of scientific,. technical and gov·
ernmental individuals who came to view and learn. The Harvard computational facility became a center for people interested in machine-oriented computation. Many graduate students who used Mark I at Harvard are recognizecl leaders in the
computer environment today. Aiken organized two conferences (1947 and 1949) in which hemade it possible for everyone
interested in automatic computation to present papers or to
come to learn what was going on. The atmosphere w'as an open
one of sharing ideas and disseminating the experiences of
everyone interested in assisted computation. Aiken also traveled extensively to Western Europe, and his approach and
philosophy are evident in early European machines. The Mark
I was followed by the electromechanical Mark II and the electronic Marks III and IV. Aiken was a strong-willed individualist with tremendous vision. But even he had his visionary limitations. When one of his colleagues suggested improving
the speed of the printer, he replied: ''Why would we want to
print faster than someone can read.?"
There were other computational devices suggested or constructed in the late 1930's. Konrad Zuse's Model Z1 was completed in 1938, and his fully operational relay calculator, the
Z3, was completed in Germany in 1943. At Iowa State College in Ames, John Atanosoff attempted to build an electronic device that would solve a system of 28 equations and 28
unknowns by Gaussian elimination at electronic speeds. Although this device was never operational, recent litigation has
revived the details of the effort.
The operational beginning of the electronic digital computer began with ENJAC. (Colossus, an electronic cryptanalytic
device built in England in 1943 was classified information
then and is still primarily classified today.) The literature
is full of this event and the role played by John Mauchly,
who conceived of it, J. Presper Eckert, who was associated
with him in its design and implementation, Herman Goldstine, who played an important role in getting the project
funded by Aberdeen, and other individuals like John Brainerd, Arthur Burks, etc. Instead of repeating this part of the
chronology, I would like to focus on the summer of 1946.
The event: A summer course at the University of Pennsylvania's Moore School of Electrical Engineering. Subjects: ENIAC
and the proposed EDVAC. Here, as at Aiken's later Harvard
conferences, an attempt was made to provide a forum to
present all known information on electronic computers,
using the only one known to exist and to discuss the design,
operation and architecture of EDVAC, the first machine
into which was to be incorporated the capability of modifying its instruction. The goal of this program was to share
all that the builders and designers of ENJAC and EDVAC
knew, and to help others who might want to construct
their own devices. One of the invited participants was Maurice Wilkes, from Cambridge University. Although he arrived
a couple of weeks late, due to difficulty in getting a ship from
England, by the return voyage, Wilkes was already designing a
scaled down version of EDVAC, a machine which became operational in 1949, with the acronym EDSAC. Information
(and people) in this period seemed to flow freely. The most
general directional patterns were from the U.S. to England
and England to U.S.; the eastern U.S. to western U.S. and
to western Europe. John von Neumann's project at the Institute for Advanced Study sparked parallel projects at Oak
Ridge, Argonne, the University of Illinois, Rand Corporation
and Los Alamos (to name only a few). In fact, some of lAS
Projeny may have gone on the air before Von Neumann's
machine at Princeton.

FIRST COMPUTER FAIRE PROCEEDINGS

The U.S. west coast computational environment is an interesting illustration of this phenomena to sharei'nformation. The
decisicn by IBM to manufacture the defense calculator in
1951 (the IBM 701), led to a group of individuals at places like
Rand, Northrup, Hughes, etc., to informally organize in order
to be able to share information and to avoid duplication of
effort in the use of the 701. The informal gathering led to a
slightly more formal one, DCA, (DCA = Digital Computer As~
sociation) and later, with the announcement of the IBM 704,
to SHARE. As, one of the key organizers of SHARE put it:
"Isn't it disgraceful thai on the 701 there were 18 machines,
and there were 18 assemblers. Let's invite every person who
has an order in for a 704 to come and talk about, number one,
how can we reduce from 18 assembly programs to one, and,
second, anything else of interest."
These brief sketches of the role of the individual in successfully achieving a desired goal in a hostile environment, the
general enthusiasm of a small group of early practitioners to
spread the word and the open exchange of ideas characterize
generations -1, 0 and 1 of what is now called the computer revolution. But the growth of im industry from non-existence
three decades ago to one where the number of computers
(excluding pocket calculators) has grown to 350,000 or
400,000 has to have exerted a change on this environment.
The small number of individuals involved from 1947 to 1954,
their constant dialogue with each other, visitations, mutual
help gatherings, enthusiastic participation by everyone from
the project head to the people on the benches, characterized
the era of the birth of the electronic information processing
era. Many of the one-of-a-kind machines of this early period
carried some architectural signature of its builders' attitude
toward computational design. One of the pioneers claimed
that he could look at a new machine and identify in what
geographic locale it was built, and often even identify some of
the people involved in its design. Jim Warren, in a recent issue
of Dr. Dobb's Journal characterized this in the following way:
"The sharing of ideas is useful in that it allows us to stand on
one another's shoulders, instead of standing on one another's
feet. But, there is something else shared that is of at least equal
value: the enthusiasm and intellectual excitement." The computer hobbyists in their enthusiasm and excitement appear to
have re-introduced those elements which were prevalent before 1954 back into the computer environment. Who knows
what the spin-off of this rebirth will be?

BOX 1579, PALO ALTO CA 94302

PAGE 19

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

THOSE UNFORGETTABLE NEXT TWO YEARS
TED NELSON
Here we are, at the brink of a new world. Small computers
are about to remake our society, and you know it. I am supposed to tell you what is about to happen in the near future.
But to understand the future we must understand the
past: most people don't realize what has happened. What is
astonishing to me is not SO much the future as the past, and
the things that are going to surprise people - - the sudden appearance of little helpful interactive computers everywhere - should be less surprising than the past circumstances that
have delayed all this till now. .
We have inherited some silly myths about the nature of
the computer; and these myths are miraculously shared by
both computer-lovers and computer-haters. They are the
silly and cruel myth of depersonalization - - that computers
demand impersonal behavior and rigid unpleasant rules, not
to mention punch cards; the myth of efficiency , that using
computers to depersonalize ways is somehow good; and the
myth of technicality, that to criticize or try to appreciate
computer systems is beyond the competence of the laymen. These vicious myths, and more, imprison us all.
Many computer people seem content with these myths
and -- intentionally or not -- keep them going, dealing with
non-computer people ominously and unhelpfully, with hardheartedness, scientific pretension and scary lingo.
We all know that there are those in the computer profession who enjoy pushing other people around, who hide
behind the computer and say the pushing around is the computer's fault. The computer is functioning as a mask. There
are even those with long hair who teach computer science
and talk about computer liberation, who yet enjoy mystifying and confusing people and leaving them helpless. Worst,
I regret to report that there are actually people who enjoy
pushing people around, and intimidating them, in the amateur
computer field.
C.P. Snow, the English author, has spoken of what he calls
"the two cultures" of educated people, one being those
scientifically trained and the other being the humanists.
Ordinarily these two factions do not speak to each other,
each regarding the other side with distrust and disgust. Computer people continue this tradition. Many computer people,
indeed, seem to half-desire some kind of a showdown fight,
where they are going to rub the humanists' nose in computer jargon, possibly to get even for having had their spelling
corrected.
Do you think it's not as bad as that? Consider the problem of lower-case lettering for display and printout on computer terminals. Some computer people feel there is no need
, for lower case. This is a slap to all lovers of the written word.
If you have no lower case on your terminal, it assures that no
person with a literary background will ever use your text
editor.
Or consider an argument that recently occurred in one of
my seminars. A student of mine is planning to implement a
text system along certain lines I advocate. But he insists that
the user, typing in text, and each typed sentence with a special character, such as the caret. When I pointed out that standard practice for both stenographers and authors is to delimit
a sentence with two spaces, he was indignant. "I don't want
to have to type two spaces after a sentence!" he declared, preferring instead his caret; it did not matter to him that literary
people would hate the caret more than he himself hated the
two spaces, and so they wouldn't use his system.
. -With-thesepoints'-have intended to highlight several problems. Computer people are not all of them prepared to honor

PAGE 20

or appreciate the wants and needs of others, especially those
with different points of view. And this has had, and will continue to have, curious repercussions. Old style computers are
about to collide with new style computers, and many people
will get caught in the middle.
Here is what has happened so far. In January of 1975,
MITS announced the Altair computer kit for $400. That
seems a long time ago: in the two years since then, so much
has happened. To the surprise of some people, the Altair
computer took off like a rocket. Certain other people, who
had been almost ready to do the same thing (they say), were
galvanized into action. More brands appeared.
The next major event was Lois and Dick Heiser's opening
of their Computer Store in Los Angeles. "Now why didn't I
think of that?" was everybody's first reaction, followed instantly by, "I still could."
So here we are. Perhpas twenty thousand dinky computers, perhaps more, are in the hands of small businesses and
hobbyists, too, have visions of becoming small businesses.)
Some three to five hundred computer stores are open, or on
the verge of opening, or in some other stage of near-existence.
And throughout the country are the cottage computer industries: people making accessories, software, teeny mainframes.
Catering to these mad folk are half a dozen -- probably a dozen by the time this comes out -- counterculture and hobbyist
computer magazines.
Now, as far as I am concerned these developments are no
surprise at all. The surprise is that it took so long to get
started.
Certainly the computer-on-a-chip could be seen coming
ten or twelve years ago. Now some people call them "microcomputers," But nothing could be more absurd than calling
them "microcomputers:" a radio is still a radio if it is built
from integrated circuits, not a "micro-radio;" a tape recorder
or a hearing aid or a telephone is not a "micro-tape-recorder"
or "micro-hearing-aid" or "micro-telephone" even if it is
built from integrated circuits; and a computer is a computer
whether or not it is built from integrated circuits. The rea}
meaning of calling it a "microcomputer" is this: the word
is a face-saving device for people who did not see any of this
coming, who had their heads in the sand. Calling these things
"microcomputers" implies that they are something new under the sun, a technological surprise which could not possibly
have been predicted, so the term absolves the speakers of
having been fatheaded in expecting the status quo to continue. The surprise is all in their minds.
The dinky computers, as I prefer to call them, are widely
belittled in the regular computer industry. But our fundamental 8080 chip, suitably supported, is approximately comparable to the 1401, which was the workhorse computer of
American business in the early sixties. For many purposes
the 8080 is more than adequate. It's always nice to have
more computing power, but then it's always nice to have
more computing power. There will come a day when the
power of a big PDP-10 will seem inadequate for a personal
computer.
- For now, though, the dinky computers are working magic
enough. They will bring about changes in the society as radical
as those brought about by the telephone or the automobile.
The little computers are here, you can buy them on your plastic charge card, and the available accessories include disk storage, graphic displays, interactive games, programmable turtles,
that draw pictures on butcher paper, and goodness knows
what else. Here we have all the makings of a fad, it is fast
blossoming into a cult, and soon it will mature into a fullblown consumer market.
FAD! CULT! CONSUMER MARKETI The rush will be
on. The American manufacturing industry will go ape. The

FIRST COMPUTER FAIRE PROCEEDINGS

American publicity machine will go ape. American society
will go out of its gourd. And the next two years will be unforgettable.
SCENARIO
The exact sequence of events is of course hard to predict.
The general outline, however, is not mysterious. Let me
try to fill in some of the basic things I think are going to
happen.
In 1977, tens of thousands of computers will be sold to
individuals; the current demand level, with machines sold
as fast as they come into stock, will probably continue for
some time, possibly several years for the better machines.
The sales of the S-100 machines, like Altair, Imsai, SOL
and Polymorphic will continue strongly. If you've followed
the computer field for any length of time, you know that
standardization is generally established on a defacto basis
by whoever gets someplace first. it should have surprised
no one that the original Altair system of interconnection
at once bacame a standard. Many engineers have said, "Aw,
I could do better," and proceeded to try, but that has been
quite beside the point. When there is a standard way to do
something, the possibility of a better way is often academic.
So we have seen a mass movement: Processor Technology,
Cromemco, et al. have built boards for the Altair, and then
their own computers on the same system of interconnection.
Whereas little computers like the Sphere, the Jupiter Wave
Mate, the Digital Group, indeed MITS' own 6800 machine and conceivably the Heathkit computer that is to come -have ignored this standard at their peril, attempting to create a non-interchangeable market.
So far these little computers, from little manufacturers,
comprise the "amateur" market. But next we will see the
bigger manufacturers come rolling. Large-scale manufacturers will enter the game; some are already talking about
building millions of units. And already there are "video
games" actually containing a computer, such as the Fairchild for $150.
Soon the media will hear about it, especially magazines
and TV news. They will go out of their minds, and give
home computers the full-scale "mysterious phenomenon"
treatment. They will make all those incredibly stupid jokes
over and over, about "thinking machines", and about 1984.
But few of the journalists will bother to find out what computers are really about until everybody else knows already.
The funniest aspect of the press coverage will be, of
course, that everyone they talk to will have a different story;
it will be impossible for reporters to converge or focus. Some
of the people interviewed will tell the press that home computers are an extension of ham radio (this has actually happened); others will seem to say it is an outgrowth of the
space program or of video games, or of the New Math, or
of pocket calculators, or who knows what. And they'll all
be wrong because they didn't see that computers were for
people in the first place.
After the m·edia, of course, the stock market will react. Wall
Street will behave as Wall Street always behaves in the face of
a new consumer fad, and public corporations involved in home
computing will lurch upward in price.
About this time it will become clear that home computers
are actually as important as people thought video disks would
be. Many people will try to get on the little-computer bandwagon in inappropriate ways. The cable TV operators, for instance, will blunderingly keep trying to set up some sort of
a connection to home computers. There isn't any -- except
that they could use dinky machines to generate little animated cartoons and logos.

BOX 1579, PALO ALTO CA 94302

PAGE 21

Now the really big manufacturers will come in. Philco and
Zenith, Sylvania and Magnavox and the Japanese TV ccmcerns
will bring out their home computers. Then will come the metoo electronics packagers, with a dazzling array· of brand
names offering small silly variations.
One problem for the larger organizations is that their decision processes are perilously slow: since the home computer
market will change drastically every six months, the big slow
companies may never get off the ground. They will be continually deliberating over how to compete with last month's
product, and being dumfounded by the next development.
However, some big manufacturers will swallow the little companies that are off to a good start, paying lots of money for
the privilege.
While there will be many more small accessory and software houses, it will be much harder for the second generation
to make it big; their best strategy will be to target and specialize.
Certainly the maturing markets for dinky computers will
become ever more differentiated. Beginners' systems, whatever the chip, will usually come with Basic and game cassettes.
Office-standard systems will probably become stabilized on
the computer-with-screen, like the SOL, Sphere or Intecolor;
but interchangeability will be an important feature, possibly
favoring S-100 machines. Graphic systems will become popular among artists and doodlers and playful people, and indeed among the well-to-do these may become a sort of animated decoration. (We will see themturning up all over retail stores, with sales messages and animated cartoons.)
Literary systems for readers and writers will include disk,
high-capacity display, and high-power text manipulation and
filing programs -- of a type, I believe, that nobody has seen
yet. Baroque and snazzy systems will come out for technical
showoffs: like the computers that have one of every processor chip, or multiple Z80's: some with lights and switches
by the yard, others with lots of "computerish" lettering,
military styling, futuristic spheroidal boxes and so on. Finally, perhaps most important, we will see the "nothing is too
good for my kid" configuration, with graphics, extensive
text handling, programmability and large memory; possibly
musical input and output as well. (Kay's Dynabook, at Xerox
Palo Alto Research Center, is the exemplar of this class -even though it may never appear commericially.)
As to manner of interconnection, alas, there will be all
too many separate hardware worlds. There· will be the evergrowing S-100 world, of Altair, Imsai and so on. There will
be the nonstandard world. Some individuals will actually
buy high-class hardware out of the professional computer
world, which will be nonstandard as far as the hobby world
is concerned. (In the next two years it is not clear the entrenched minicomputer manufacturers can lower their prices, or adjust their· thinking, enough to compete.) Then
there will be the other chip computers, packaged with incompatible accessories, such as the Intecolor. Then there
will be the discount packaging world, probably with more
systems of incompatible accessories. The incompatibilities
will be regrettable, but the marketplace will eventually
punish this approach.
There willot Course be a variety of other oddly-interconnected computer configurations. Certainly we may soon expect the TV with built-in computer. We may see the "smart
hi-fi," a multi·room, mUlti-ttuner, bus-oriented programmable.
system. And don't rule out the computer-in-a-van, with one
monthly payment for both transporationand hobby.
Though it would be a good thing, it is doubtful whether
any later and better chip computer will attain, in the next
two years, the universitality that the 8080 (and the Altair
bus) have enjoyed. ,We ought
to have a. 16-bit amateur ma..
'

".

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

chine, at least one allowing relocatable programs, the LSI-11,
chip Nova and TI 990. But the central positiotl'M ttle'SOSO
will be hard indeed for another unit to capture.
In the software area, meanwhile, we will 'go from confusion to chaos: but perhaps after about two years it will begin to straighten out.
Utterly disparate software packages will' appear, all proclaiming themselves to be Everything You Need. (There is
one advocate of Tiny Basic who says numerical input is
sufficient for "all software".) Programs will appear embodying the greatest possible variety of viewpoints.
There are many ways of thinking of software, and in
the hobby world some of them are weirdly simpleminded.
Many hobbists come out of electronics, and insist on thinking of a computer as Ita collection of switches." This is
true in the same sense that a human being is Ita bag of chemicals." But some hobbyists think, on the basis of this impression, that programs are little things, like ten or fifty lines
long; like a binary-to-clecimal conversion routine. From that
follows the hobbyists' mystification by, and in some cases
objection to, the copyrighting of programs.
It would seem peculiar that people who claim to have
compunctions about shoplifting, or the looting of parked
cars, nevertheless proclaim - as some computer hobbyists
do -- that they have a perfect right to violate others' property rights in respect to copyrighted software. But we can
understand this view slightly better if we consider that many
electronics-oriented amateurs think programs are small and
insignificant -- of the level of complexity, say, of a limerick.
Many programs are short and simple. And many enjoyable
computer games run in less than a hundred lines of BASIC.
But tomorrow's home programs are not going to be just
little programs. The important software of tomorrow will
be immense turnkey systems of programs, comprehensive
and interactive, for a broad spectrum of business and personal uses.
New business systems will wholly reverse the computer
business systems of the past. The business systems of old,
based on batch processing, created strange .work procedures:
transactions had to be keypunched and sent into the computer in long trains, to be processed one at a time by the
same program. This created dehumanizing job definitions,
such as keypuncher. Now, however, clerks will be able to
process business paper one piece at a time, in the order of
its arrival, and businessmen will discover themselves in control of their firms once again. But the programs will be big.
There will also be large-scale programs for gaming and
simulation and animation will likewise be swapped and overlaid from disk.
The new big software packages will have to do a lot of
storage management - overlays, swapping and housekeeping.
Once such a system is started, it will not need reloading, it
will roll and undulate from one function to another at the
user's whim, swapping and storing (fail-safe) and displaying
interactively. These features do not come easy; they involve
a lot of programming.
Now not everybody may want or need such extensive services. Some hobbyists, indeed, may also enjoy the ritual of
"running separate programs" -. toggling in bootstraps and running in loaders and programs for each new activity in an anachronistic and playful simulation of batch processin~.
But the big and sophisticated software will be to the little
toy programs as War and Peace is to the limerick. The really
good systems.will be unique and distinguished, even works of
art. People Will devote months and years to th,eir creation and
they will have considerable commercial value ~- being lea~d to
businesses, say, for hundreds of dollars a month.
Speaking as a prospective supplier of such advanced soft-

ware, the' amateur market tends to interest me not at all. 'I
see little reason to sell to hobbyists, and considerab1e reason
not to. For the revenue of, one well-behaved business customer, it might be necessary to deal with ten belligerent and disrespectful amateurs, some of whom have given notice of their
intention to break any software contract.
In the ordinary computer world, the most emotional issue
is people's preferences with regard to computing languages;
copyright is accepted as an ordinary part of life. In the amateur world the most emotional issue is that of copyright, with
languages second. My own feelings about copyright are very
strong: copyright is one of the only ways the little guy can get
a leg up -- you will excuse me for oversimplifying -- against the
Big Guys and the Bad Guys. I publish my own book, Computer Lib, and receive a modest income from it. Now if there
were no copyright protection, anyo", could print Computer
Lib in Taiwan, and sell it for ,less than I get, and I would get no
benefit for the years of work I've put into it. But the law of
copyright, a Federal law, says the book is mine, and that
people can only make copies with my permission; I like it like
that. The same law, now, is extended to computer programs
as a form of writing; and the same protection is available to
you, practically free of charge, for the work that you put in on
programming.
Anyone is of course free to give away a program he has
made, since the copyright presumably belongs to him. And
people to whom software means small programs of their own
concoction will be happily giving them away. '
But people who are working on big programs -- programs
involving tens of thousands of lines of code, programs that
take months or years to create, will be very concerned for
their copyright protection. To further this protection, we will
begin to see software disguised as plug-in hardware, software
coming on mystery tapes in unknown formats, software disguised in every possible way. This cloak-and-dagger approach is
quite regrettable, but may be the only way to create an orderly market. I think there will be a period during which the good
software, the big and serious systems, are held off the amateur
market and made available only to commercial customers. But
e,,:entually, perhaps at about the end of the next two years, we
Will see bargains struck up with well-behaved individual users,
and a system of safeguards hammered out to make an orderly
market possible. These safeguards may even include programreadable hardware serial numbers, just as used in the bigger
systems.
Languages. Just as in the big computer world, in the dinky
world we hear hotheaded arguments about programming languages. Computer people always become very pugnacious
about their favorite,programming languages -- especialiy if they
only know one or two .. But the dinky-world arguments about
language are a travesty on those same arguments in the straight
computer world. The same honors are here attributed to
BASIC that more knowledgeable computer professionals attribute to Algol, or SNOBOL, or PASCAL. (In the hobby world,
one actually hears people with Ph.D.'s, who certainly ought to
know better, arguing very angrily that Basic is the ultimate.)
By two years from now, after a lot of frustrated effort
and experience with big systems shoehorned into little computers, people will have realized that for powerful software we
need good and powerful languages. They will also have found
out that these must be structured languages, in the Dijkstra
sense, which make programming so much more manageable;
and they must be extensible, allowing the rapid creation of
new commands for particular ranges of purpose. This means
that interpretive languages like LOGO, TRAC language*
*TRAC is a registered trade and service mark of Rockford Research, Inc., Cambridge, Massachusetts.

FIRST COMPUTER FAIRE PROCEEDINGS

and SMALLTALK will assume new importance, as will such
compiling languages as FORTH and "C".
One of the great strengths of the extensible interpretive
languages is the degree to which they simplify big programs.
My colleague William Barus and I recently created an animation program for the VDM board using TRAC language; the
program is about 16K in size. TRAC is not as easy to learn
as Basic, and for small programs may seem rather clumsy.
But as programs grow larger, its intrinsic orderliness keeps programs manageable. (The 16K program was written in about
three weeks, and seems to work quite nicely, allowing both
frame-by-frame animation and subpicture overlays.) With unstructured languages like Basic, programming becomes exponentially more difficult as the size of the program grows; with
structured languages, the growth in difficulty seems to be logarithmic.
Basic will remain the language for beginners, unfortunately; no standard Dijkstra-structured upgrade is presently defined for it, although a "structured Basic" has been under design where Basic began, at Dartmouth. (But for those who
want to sell language processors, there is a simple secret; hobbyists want any language as long as it's called Basic.)
It is a great pity that hobbyists are so insistent on talking
about the physical box of the computer, and so resistant to
learning about the issues and depths of programming languages
-- even though all their programming difficulties stem from
these issues and depths. Meeting frequently with computer
hobbyists, it is astonishing, and depressing, how often one
must repeatedly answer such questions as ''What is a computer
language, anyway?" and "What is structured programming?"
and "1 don't see why it can't all be done in Basic." There has
got to be some form of general consciousness-raising in this
area.
··In any case, when the smoke clears, about two years from
now, hobbyists will begin to realize that the more advanced
languages -- at least the ones that fit on the dinkies -- make
programming, much, much easier.
Such languages -- like LOGO and SMALLTALK and
TRAC Language -- will gradually assume primacy. But we may
hope that their being "advanced" languages will not make people think they are unsuited to beginners. On the contrary,
structured extensible languages are the right way to learn programming. For instance, at MIT's LOGO project, they tried
teaching programming to kids two ways: with BASIC and with
LOGO. After a few weeks, I have been told, the kids who had
started on LOGO were hopelessly far ahead, and, it is said, did
not want to speak to the BASIC-trained kids because they
thought the latter so ignorant and incapable.
No one who is really interested in computing languages
would claim that the "ultimate" language exists; but there is
a new generation of languages shaping up now, the "actor"
and "agent" languages, whose proponents expect them to be
as far ahead of LOGO, TRAC Language and SMALLTALK
as these are ahead of Basic. Which of these advanced languages
will fit on little machines is another question.
The merchandising of little computerswill gradually break
out into a number of separate sales apprathes, much like the
merchandising of anything else. The mass-market computer
will of course be sold by the corner electronics discount house,
in a fancy package. You'll get the instruction book and an impatient rundown, but no personal help. In the box you'll find
the computer, an instruction book, warranty card, and list of
repair centers. p'erhaps also one free game cassette.
This mass-market apprach will probably go two ways:
toward the non-compatible, as with the Fairchild, computergame tapes, which will be a dead end; and toward compatibility, as with systems offering Basic and a standard cassette
interface.

BOX 1579. PALO ALTO CA 94302

PAGE 23

For more serious users, and for the S-100 world, the
computer stores will continue; but they will become a cross
between the hi-fi store, camera rental house and laundromat.
A viable take-home rental market will develop, presumably as a part of the computer stores. There you will be able to
rent simple standard units (as you might rent a standard car),
or, later, more esoteric units (in the way that professional
motion-picture equipment is rented).
Repair set-ups will blossom. Th.ere may appear franchised
computer-repair chains, similar to the automobile-transmission
repair centers. But these will be walk-in centers; cheap computers will not be eligible for house calls. (Many computer-center
people, who are used to repairmen coming in, cannot visualize
throwing the computer on the front seat of the car and driving
it to a repair center, as you do with an amplifier. But that's
how it'll be.)
The amateur used-computer market will come into full
swing. We will see the more fanatical hobbyists buying not
just used Altairs but commercial minis and old "big" machines
-- real 360s and 7090s -- and real antiques and fond replicas,
such as Eniac and TX-2. (We may yet see a fully-loaded Imsai
go for more than a small 360, just the way in 1974 you saw
small used cars selling for more than big ones.)
A variety of personal services will appear, probably in
conjuntion with the expanded computer store. Such services
will include program storage and printout; soon, time-sharing
parlors, having clusters of terminals which may be rented by
the hour. (This is the laundromat analogy -- renting a terminal
by the hour is not unlike renting a washing machine.) In the
next two years,. we should see services grow from the simple
ones to a dazznng variety of new ones, such as advanced text
services and retrieval, digital music synthesis and movie-making, and great libraries you can reach through your home
screen.*
.
The prospect of great on-line libraries raises great questions
about truth and'freedom -- for which there is no room in the
present talk, but about which much more will be heard.
I have elsewhere predicted that there will be ten million
computers in American homes by 1980. This may be a considerable underestimate, in the light of American consumer contagion. It will not be long, in my opinion, before the home
computer field becomes most of the computer field in absolute dollar volume. This will take longer than two years. But
I would predict a hundred dollars per capita per year within
'
a depade.
Pretty good so far, right? But I'm afraid it will not be all
sweetness and light. We can expect the dinky revolution to
have a convulsive effect on the computer industry, and on the
society as well. First let us consider the industry.
IBM will be in disarray. Fine-tuned to a captive market
having certain kinds of submissiveness, it is hard to suppose
that their kind of sales, let alone their kind of computer
product, will give them a ready entrance to the kinds of
markets now opening. (Supposedly as a personal computer,
they will push the 5100, actually a 360 in disguise; but they
will probably not know what to do if someone puts out the
S-1OO adapter for the 5100, effectively offering a 360 with
Altair accessories.) The jolt to IBM's product line of all these
developments will be considerable. A loss of revenue for
IBM, or at the very least a slowing of its growth rate, seems to
me inevitable. This could be traumatic to the stock market and
to other true believers.

* See T. Nelson, "Personal Digital Services," IEEE Computer
Magazine, March 1977, and "Design of a Transcendental
Literary Network," to appear in proceedings of the 1977
National Computer Conference.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

Most of commercial time-sharing will be down the drain,
being priced at the top-managerial level but only usable by
technicians.
Organizations will be in internal turmoil, as they see kids
doing with computers what their programming teams can't.
And as the new availabilitites reverberate, many intemal goals
and budgets will be shot to hell.
There will be mass layoffs in programming staffs, and
this will be only a beginning. The skills involved in programming are comparable to those involved in automobile mechanics, and as the number of capable individuals increases, the pay
levels will go down, because systems will need less and less
tinkering to be made to do what you want. It will gradually be
revealed that most programming has been make-work around
iII-clesigned systems.
Between laymen and the old-style computer people there
will be a lot of questions asked. "Why weren't computers easy
to Use before? Why couldn't I have had this sooner?" These
are not pleasant questions to answer.
For computer professionals will be the last to see this coming. Professional programmers have lived in a world of account
numbers and job submissions, core declarations and runs
aborted by the operating system - silly complications that evaporate as soon as everybody has his own computer. Theirs is
an awkward and inhospitable world that bears as much relation to the real nature of computers as a string of frankfurters
bears to a living cow. The "Nature of the Computer," for
many who have worked with it, has really been the system of
bizarre bureaucratic project management under conditions of
monopolistic mystification. And so it may come to be revealed
that the people who have worked with computers most have
understood them least.
In some areas of the society there will be pandemonium, as
the personal lives of a vast number of people -- especially
computer people, who thought change w satheir friend -- are
uprooted and retrenched. These more general effects are hardest to predict. I suspect that the main public reaction to little
computers will be a mixture of delight and anger -- delight at
the new fun and facilitation, anger that computers were ever
allowed to create the harm and inconvenience that they have
till now.
Here is the fin aI surprise. We the computer folk are not going to be converting the non-computer world to be like us, as
some of you may have been hoping. Quite the contrary. We
are going to be repudiating the computer past, resolving not
to push people around any more, and finding out how to make
computers easy and helpful to everybody.
MUSINGS

The future use of computers is, and should long ago have
been, personal. Misled and perhaps occasionally malicious,
the industry has ignored this as a possibility for thirty years;
computers have been held back from a personal market for
perhaps thirteen. But the movement cannot now be stopped.
Why has individual" computer use been so retarded? Partly
because of the nature of our society, and partly because of the
trickery by which computers have been sold: not because of
the nature of the beasties themselves.
For instance, I believe that the point of the 360 computer
was to lock out the other manufacturers, especially those of
minicomputers, and postpone highly interactive systems -- the
kind of computers uses that would be good for, among other
things, personal use. The 360 drastically postponed personal
usability. And in an unholy alliance with the big manufacturer, the computer centers long ago became entrencned power
units especially concerned with preventing maverick applications, and with preventing any other departments -- let alone

PAGE 24

individuals-- from getting a computer. Underhanded methods
have been used, it is sometimes said, to get rid of people who
advocated interactive systems. The computer field was structured to lock out both the interactive applications and the .
people who wanted them, or might have.
Now the computer centers are on the defensive, publishing
articles saying there is still a place for the centralized computer facility. They may be right, but they have an increasing
burde.n of proof. As dinky computers and interactive styles
of use take over more and more, little sympathy is due to
those who strove to hold them back.
But let us lift our eyes from the past, from the limitations
and trappings of how you've had to do it. Rather than being
obsessed with the styles of computers as they have been used,
we need to consider, and design, the environments that we
really want. I call this the Higher Virtuality. By virtuality I
mean the effective environment we create with the computer,
as distinct from the computer's "reality", the physical parts
and program techniques that make things come out that way.
The higher virtuality, then, is the computer environment we
should strive to create. It is hard to make the choices and designs that this .entails.
The virtuality that calls to us now, I think, is the new world
of highly interactive systems. Cursors and panels, lightbuttons
and menuplexes, maps and graphs and fast-changing screen layouts, are the pieces from which we will construct our new experience-spaces. Now, we tend to think of highly interactive
computer systems -- for text editing or re~rieval or movie-making or whatever -- as the ones with fancyscreens and light-pens.
But this brings up an interesting general point. The fancier
super hardware isn't as important as the imaginative and artistic use of whatever we have.
Let's consider just the problem of pointing at things and
controlling What's on the screen. Most of us don't have a
light-pen or Englebart mouse on our home computers; but if
we are clever we can make systems highly interactive even
if we just use keyboards. We can zip cursors around with the
keys to select from menus. We can even whiz between environments. Suppose the interactive program can change the
meanings of the separate keys dynamically: at one instant,
specific keys can be arrow keys, to move a cursor about the
screen; "at another instant, they can type musical notes, or
special picture-symbols; or anything.
This is not an unimportant matter. Some of the snazziest
research setups have highly interactive keyboards of this type.
Bitzer's PLATO system, for instance -- a large special-purpose
graphics time-sharing network run out of the University of
Illinois. The main program can react to every key-press, and
the keys can be automatically redefined under program control. The letter "D" on the keyboard can be an arrow when
pressed at one instant, create a whole picture of a dog when
pressed in the next. This feature makes PLATO one of the
most dramatic introductions to interactive computer graphics.
Kay's Dynabook system, at Xerox, likewise allows a key-bykey dynamic reaction to what the user does. There is even a
research setup with a "phantom keyboard" -- its key tops have
colored changing labels that you can read right through your
fingertips. (This is done with a color video display and a semisilvered mirror.)
Such dynamic keyboard capabilitie~, together with our
screens, make highly interactive systems easy and exciting to
create. (It is regrettable that most if not all IBM systems do
not allow this dynamic key-by-key redefinability. IBM systems will not ordinarily respond to single arbitrary key presses;
you have to hit either the Carriage Return or an "Attention"
button to make the systems respond. Again, the interdiction
of highly interactive systems. Was this malicious design?)
This key-by-key arbitrary response leads us, as do many

FIRST COMPUTER FAIRE PROCEEDINGS

other paths, to the real question. Given that we can make
each key have any effect, then what? How should our systems
behave? How do we make the interactive system make sense?
On the interactive screen we deal with a special new virtuality: architecture in virtual space, where anything can happen
based on anything you do. The space has to be invented. This
architecture of conceptual space, this conceptual architecture
of screen-space -- is a new realm where we are combining feelings and effects, as in a movie, and the need to be clear, as on
a map.
The problem really becomes, I think, giving the system
conceptual unity, which is just a more general example of the
problem of giving conceptual unity to the interactive keyboard. How do we give the key assignments, and how do we
give the larger system, conceptual unity? "Conceptual unity"
is an extremely pliable concept. What many programmers
think is conceptual unity, clear and simple, is not necessarily
conceptual unity to the non-computer people.
The problem is very like architecture. Now, I'm no architect, but I have spent some time in buildings -- indeed lived in
them! -- and I think there are several clear criteria for what
makes buildings good. It's nice for them to look good, sure.
It's nice for them to have good cost ratios for their builders.
BUT I submit that one of the most desirable things about
good buildings is for people to be able to get from place to
place simply, and know where they are.
.
I recently taught at a great urban campus filled with grand
pretentious buildings. The architect game no mind to helping
people find their way around. The buildings looked very Futuristic, but were incredibly confusing and inconvenient.
One evening, in the depths of one of the incomprehensible
buildings, I had to mail a letter and make sure it went out in
the morning. I went to the mailbox on the main floor, and
there was a sign on it saying that after hours one was to use
the mailbox on the first floor. (This was my first inkling that
I was not already on the first floor.) Diagonally to my right
was an elevator. I stepped in, pressed "1", and prepared to
retrace my steps, walking diagonally back to my left to the
first floor mailbox.
I was faced with a cinder-block wall.
I walked around to the right, then finally found a back corridor going in the direction the mailbox should have been in.
But now there was a succession of cinder-block cubicles and
rooms. In none did I see the mailbox.
Eventually I was able to find the mailbox by a system of
triangulation. By counting paces, and making a map marked
with paces marked and a combination of ninety-degree angles
(of which the architect was fond), at last I found the mailbox
in one of the rooms of the cinderblock environment.
Here is an example where an architecture of real space was
created with no concern for personal clarity or orientation.
The problem is the same for creating interactive systems.
Creating interactive systems, and their virtual spaces, should be
an art. And the real kicker, I believe, is this: all computer systems should be highly interactive.
The confusions and oppressions of yesterday's computer
systems vanish where the user can see his alternative on a
screen, get quick explanations, see maps of what he is doing,
and get all the other helps that the interactive screens can provide. This means the continuing oppressions of yesterday's
computer systems -- even today's -- are the opposite of the
way computers ought to have been used all along.
We shall see. Time, and the marketplace, will decide. When
people get to use interactive systems, they will be much less
interested in eithe r manual methods or batch.
But the central concern of highly interactive systems will be
making things clear and simple. Now, making things clear and
simple and easy to us iS,l'm afraid, the opposite of what some

BOX 1579, PALO ALTO CA 94302

PAGE 25

computer people, perhaps some of you, want to do. So in an
important sense, it is not the laymen who have to learn Computerese; in the greater sense, WE MUST ALL LEARN COMPUTER EASE.
The next two years will wreak extraordinary changes, and
we will "computerize" society for fair. But it may not be
what you computer-smart people expect.
What some of you have been considering "the new era" of
home computers may correspond to the tin-can and crystal
era of radio; and the convivial hobby you are part of right now
may vanish like the crowd that welcomed Lindberg at Orly.
They don't come out to meet the planes anymore. Today's
summer-camp camaraderie won't last forever, and the computer will probably become a home appliance, as glamorous as
a canopener, within a couple of short years.
What then is there left to believe in .•• ? To hope for ••• ?
I suggest that we look to simplicity and clarity (to make
people's lives easier) and to truth and freedom, for their own
sake.
Thank you.
BIO: TED NELSON
Ted Nelson holds degrees in philosophy from Swarthmore
College and sociology from Harvard, but since a fateful computer course he took in 1960, his principal labor has been the
design of computer systems for writing, moviemaking and general personal use. Not so much for the rest of mankin~,. at
least originally, but for his own general personal use, writing
and movie-making.
Nobody would hire him for this sort of thing in the early
sixties, so after obtaining his master's he has been a dolphin
researcher, folk singer, junior executive in publishing, con~ul­
tant to the antiballistic missile system, and yellow cab driver
in Manhattan in that order. He has also taught at five different colleges a~d universities, in departments of economics, sociology, anthropology, art and mathematics. He
presently
visiting lecturer at Swarthmore College, teaching courses
entitled "Art and Animation with the Computer" and "literary Machines." His students use the SOL computer and
LlNCtape drive now in his living room.
Ted's book, Computer Lib, is now in its fifth printing,
and has been widely adopted at colleges throughout the
country.
He is a co-founder of a computer store in Evanston, Illinois, the Itty Bitty Machine CO.,lnc., and is chairman of
the board of its software arm, Sophystems, Ltd.
Ted Nelson insists on being called a generalist. This
befits the immense library system on his drawing board,
the Xanadu (trade mark) hypertext network. Through
the Xanadu system Ted claims, people all over the world
should be able to 'have instantaneous access to everything
that has been written -- adding their own marginal notes,
or multidimensional "hypertext" writings, as they see fit.
Ted's glibness, showmanship and mischievous intellectual
precocity are found either endearing or infuriating, depending
on the listener. His emphasis on interactive computers as a
form of movie-making and show business stems from a unique
bias: both his parents are prominent in the theater and films.
His mother is Academy Award-winning actress Celeste Holm,
his father is film director Ralph Nelson, perhaps best known
for "Lilies of the Field" and "Charly."
Nobody is quite sure whether Ted's most recently announced project, a feature film based on his Computer Lib,
is a gag ornot.

!S

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 26

AN INTRODUCTION TO COMPUTING TO ALLOW YOU TO APPEAR INTELLIGENT AT THE FAIRE
James S. White
1202 Riverview Lane
Watertown WI 53094

ABSTRACT
The following is an introduction to computing and
presumes no prior technical knowledge.
The purpose
of this discussion is to provide the novice enough
basic knowledge so he or she can learn from, and
enjoy, other Faire activities.
This presentation
includes some very basic, non-technical ideas about
computers, especially home microcomputers, their
characteristics and construction, and how you can
choose and use your own home computer. Fi na II y, some
of the types of computers exhibited at this Faire
are discussed.
INTRODUCTION
Welcome to home computing! The great interest
in this Faire dramatically demonstrates that the
time has arrived for a computer in the house of
everyone who wants.
During the past few years, expensive, complex
computers in industry and commerce have he I ped, you
by cutting costs and raising the qual ity of many
products and services you use.
Now, computers have
been designed for home use and their prices have
been drastica Ily cut.
Persona I computers are
avai lable, here, today, at prices simi lar to other
major household purchases.
Thousands of Americans are enjoying their own
computers now.
You can select a computer for your
home, a computer that wi I I be easy for you to use,
even if you have no technical experience. That's
what this presentation and this Faire are al I aboutlearning how you can benefit from your own computer.
Learning about computers can be a I ittle confusing
because many different kinds of things are sometimes
called computers. A computer can not be consistently
identified by its size, appearance, construction, or
use.
None of these features are characteristics of
computers in general.
Computers are electronic
devices built according to certain technical rules,
which we won't discuss here.
However, al I types of computers do have some
common characteristics that make them different and
much more powerfu I and he I pfu I than many other
things we use.
We wi I I discuss some common characteristics of today's popular types of home computer0
characteristics that are important to computer users
and that make computers especially helpful to us.
COMPUTERS ARE TOOLS
We use too I s to ext.end our capab iii ti es and to
multiply our natural powers. We use tools to help
us do things we can't alone, or so we can do jobs
easier, quicker, or better than we can alone.
Computers help us in al I these ways.
MENTAL TOOLS
Computers help our minds.
Rather than helping
our muscles, as most tools do, computers multiply
our intellectual power and capabi I ities. Computers
are exten~ions of our minds.
Computers are tools we
can use for greatly increased mental achievement and
enjoyment.
Because our mental activities are much
less I imited in potential benefits than our physical
activities, the helping potential of computers is
much greater than the potential of other tools.
FROGRAMMABLE TOOLS
Computers follow people's instructions and do
nothing unless instructed to do so.
Computers are
useful as extensions of our minds primari Iy because
they faithfully do just as we instruct. Your computer wi II follow your instructions. Your computer's
abi I ity to follow a complex set of instructions and
thus do just what you specify gives it power far
beyond any other kind of tooi. We don't know the
I imits of the ultimate potential of computers
because we don't know the I imits of the ultimate
potential of men and women.

If you examine a computer in de·tail, you see
that it recognizes only a few Instructions that can
do only certain I imited things. These instructIons
allow a computer to, for example:
1. Perform mathematical calculations
2. Store a large
amount of information, and
select a particular piece of information to
meet a specific need
3. Evaluate a vast number of alternatives to
determine the best solution to a question,
even a question unrelated to mathematics.
However, the instructions a computer recognizes are
so powerful and so varied that a person can combine
them to instruct his computer to do almost anything
as an end result.
A set of instructions you give to your computer
is a program.
When you instruct your computer, you
are programming it.
A computer's program can be changed eas i I Y and
quickly.
A complete program can be changed in as
I ittle as a fraction of a second.
However, the work
or play of composing a program the first time
usually takes a person several hours or longer.
CONTROL TOOLS
Computers can help us by controlling other tools
and machines.
A computer can cause a much larger
tool to do something in a certain way and at certain
times, as programmed. This capability extends the
power of a computer far beyond the things it can do
direct I y.
Our minds are control devices which control our
muscles.
We thereby control the most powerful of
mach i nes and many natura I events.
Computers are
devices which control electricity, and thereby can
control the most powerful of machines,the generation
and use of power, and many natural events.
So, although computers function intellectually,
their direct benefits extend far beyond the intellectual.
By helping us to "work smarter", computers
can be a way to physical accompl ishment that is
better than just working harder.
MACH I NE (TOOL)
A computer is a machine.
A machine is generally
a tool that can operate by itself, doing a desired
job, without always needing the personal control or
constant attention of a person. A computer can
follow its assigned program with I ittle or no need
for the further assistance of a person.
A machine used in a home is generally called an
appliance.
A computer can be a home appliance, a
machine that can continue working to help us while
we do things that are more useful or enjoyable.
VERSATILE TOOLS
Computers can be extremely versati Ie. One
computer can do, and be, many different things. A
computer's versatility results from two other characteristics. The first is a computer's previously
discussed programmabi I ity, the fact that you may
instruct your computer to do whatever you want.
The second reason a computer is versati lei s that
it is a system.
A system consists of various parts,
each doing its own job. All of.a system's parts
operate together, supporting each other as do the
various organs in our body.
A computer can be composed of a few or many
different types of parts; each can have widely
varying characteristics. The parts you choose to
assemble your computer are those parts that together
wi II give the resultant system the capabi I ities to
best do what you want it to do, at a price you can
afford. You can change these parts as you want your
computer's capabi I ities to change.
The wide range of possible computer characteristics also results from the fact that a computer,
as a control device, is often combined with other
devices.
A large variety of devices may be combine4
so the resulting system can have a wide variety of
characteristics. A computer generally remains the
key part of the resulting combination, so al I these
types of systems a re often ca I I ed computers.
Computers are so versati I e that a computer Can
do, or control, any rational or mechanical process,

FIRST COMPUTER FAIRE PROCEEDINGS

activity, or happening.
What a computer can do is
essentially I imited only by the skill and imagination
of the person(s) who bui Id and program the computer.
A particular computer must be equipped with the
power and accessories appropriate for the job it
wi II do.
Power usually isn't a serious constraint;
a computer that is half as powe.rful may just take
twice as long to do a given Job.
Even computer
accessories are usua II y versati I
and many can be
used for a wide variety of different kinds of jobs.

e,

PRECISE TOOLS
Computers can be perfect.
A properly programmed
and operated computer makes so few errors in end
results that a computer mistake may never occur
during years of doing a particular job. Computers
do occasionally make mistakes, typically one in many
mi II ions of operations.
However, computers can, and
many do, check their own work so that a mistake 'is
not given to a human user.
Most "computer mistakes" occur because computers
do exactly as they are instructed.
Many people find
it difficult to give exactly correct instructions to
handle complex problems.
The computer that follows
incorrect instructions wi I I produce an incorrect
result, and is often incorrectly blamed.
FAST TOOLS
Computers are extremely fast.
A typical home
computer can do 500,000 of its basic operations per
second.
Home computers often move information as
fast as physically possible--at the speed of light.
This great speed also gives computers great
power.
Because computers are so fast, they are very
useful even for those jobs that they can't do efficiently. Computers just go ahead in their roundabout
way, doing many, many operations to provide a useful
result.
A typical computer that must do a mi II ion
operations to cdmpletea particular job may be done
in two seconds, which is often sooner than any
alternative.
How powerful are computers? A computer can be
a mi II ion times as powerful as a man. That's almost
beyond comprehension, so let's consider an example.
The great pyrami d of Egypt is genera II y accepted
as the world's most costly single structure, in
terms of man years.
According to the, most commonly
accepted estimates, 100,000 men worked 20 years.
In
total, two mi I I ion man years was required to do this
job.
Building pyramids is out of style tOday. Our
world is oriented towards numbers, such as dollars.
So let's th i nk about two mil I i on man years of work i ng
with numbers or calculations.
The first common home computers were delivered
about two years ago. One of these computers, working
for these two years, could have done calculations
that would take one mi'll ion men working with penci I
and paper 24 hours per day, 365 days per year, for 2
years.
You can buy such a computer here, today, or
one much faster.
PERSONAL TOOLS
Despite their great power, computers can be
personal tools.
You can select your own computer to
help you, and to expand your own capabi I ities. More
than 10,000 Americans have their own computers; many
are here today for you to meet and I earn from.
More
than 100,000 Americans are using computers as
personal tools, to make their work easier and their
play more fun.
We should consider a couple of philosophical
points here.
Despite its great power, a computer
can no more do anything by itself than can any other
machine. Computers are constructed, and instructed,
by man, as tools.
A computer is and does only what
it is made to be and do by man.
Further, as we plan to use computers, we should
consider their strong and weak points, just as we do
for other tools.
For some tasks, computers can be a
mi I I ion ti mes as powerfu I as man.
I n other of the
many ways we can use computers, they wi I I be much
I ess than a mi I I ion ti mes a's powerfu I as we are'
alone.
A COMPUTER IS:
Having reviewed outstanding characteristics of

BOX 1579, PALO ALTO CA 94302

PAGE 27

computers as they appear to users, we are now ready
for a gl impse of some technical detai Is. We have
come to a fundamental question: What is a computer?
A computer is a programmable electronic data
process i ng system. Computers have been ca II ed many
other names, but this definition gives us a good
start towards understanding computers techn ically.
We'l I consider the significant meaning of each word,
except "programmable and "system", which are
discussed elsewhere.
Because a home computer Is electronic, it Is
powered by electricity, generally from a 110 volt
wall outlet, just as other electronic appliances
are.
Computers are solid-state electronic, so need
relatively I ittle power and are not I ikely to wear
out soon or to need many repairs.
Many parts of a
computer are less Ii kely to fail after they have
been used for several months or years than when they
are new.
However, computers are very complex and
some parts are not sol id-stafe, so the avai labi I ity
of repairs should be considered when selecting a
computer.
A computer works with data, or information. This
characteristic is similar to the fact that our minds
work with ideas, rather than the physical things our
bodies work with.
However, as previously mentioned,
a computer can control almost any physical activity.
The data a computer works with must be objective
a~d precisely expressed.
Computers can't work with
feel ings or subjective ideas unless they are
expressed objectively.
Neither computer data nor
computer results are ambiguous, despite the fact
that their meanings aren't always obvious to al I
people.
All computer data is expressed in a very simple
numeric code.
Knowledge of this coding is necessary
for the user who wants to understand the internal
operations of a computer.
However, a computer can
translate its codes into words or numbers that you
are fami I iar with, so computer codes need not be of
concern to you. You can use computers here today
without consciously learning any codes.
A computer processes data.
Processing means,
changing, generally into a more useful form.
A
computer changes data it has been given into data
that is more useful, or more fun, for its individual
user.
The processing a computer does is whatever
its program directs it to do.
MI CROCOMPUTE RS
The type of computer genera II y used in homes is
called a microcomputer.
Most of the computers here
today are microcomputers.
A microcomputer is a computer that is small in
size and price.
A microcomputer need not be smal I
in power or capabi I ity. There is no exact definition
that precisely distinguishes microcomputers from
other types of computers, just as there is no
commonly accepted rule that distinguishes a microskirt from a skirt. This paper discusses computers
in general and emphasizes the characteristics of
home microcomputers.
A COMPUTER'S PARTS
In addition to having certain characteristics in
common, most home computers have certain types of
parts in common.
Next I isted are some of the types
of parts which are usually combined to form home
computers and the computers here today.
INPUT
To start a computer working you give it a
program and data.
Communicating these things to a
computer is ca I led i nputti ng. The computer parts
you use are called input devices.
You often communicate to a home computer in ways
simi lar to some you use to communicate information
and instructions to people. You can communicate to
a computer by pressing keys, or buttons, on a keyboard that is very simi lar to that of an electric
typewriter. Some lower cost computers have keyboards
that are much I ike the keyboard of an electric calculator. All computer keys are electrical switches.
Other types of switches used for computer input
are similar to the on-off light switches in your
home.
Computers with many switches of this type are
best suited for the user who wants to know much

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

about computers and work with them in intimate detai
deta i I •
A variety of other types of input devices are
used with home computers. Some computers can
understand spoken words, but this capabi I ity is not
yet common for home computers.
PROCESSOR
The key part of a computer is a processor.
A
processor is a group of electronic circuits which
actually performs the calculating and the logic
operations comprising a program.
A processor performs the same functions for a computer that a brain
(less its memory function) does for an animal.
The processor of a microcomputer is a microprocessor.
This is a smal I electronic component,
one kind of the wide variety of components called
chips.
A microprocessor is a small form of a
processor.
Microprocessors are widely used as
control devices, in many kinds of machines besides
microcomputers.
You may hear a microprocessor called a microcomputer or a processor called a computer.
However,
there are cri t i ca I differences for the user.
A processor is a control element, a part of a
machine that directs, by following a program, the
rest of the machine to do whatever it is supposed t-o
do.
A microprocessor can be part of a calculator,
part of a microwave oven, or part of a sewing
machine.
In none of these uses is a microprocessor
a computer.
Nor is the calculator or the microwave
oven a computer just because it is controlled by a
microprocessor.
A computer, or a microcomputer, is a complete
machine, including all the parts and accessories
needed to do whatever it is used for.
A computer
can operate entirely on its own, needing only a
source of energy and, at the start, directions from
a person.
A computer is bu i I t so you can input
your instructions to it, and so it can communicate
the results of its processing to you.
MEMORY
A computer uses parts called memory to store, or
remember, the programs and data that have been input
and the results that have been computed.
Some of
the parts that perform the memory function are chip~
simi lar to microprocessor chi'ps.
I n many computers,
memory chips are physically part of the processor.
A home computer can also remember information by
storing it on a magnetic tape cassette, such as the
type you use on a cassette recorder to record, and
thus remember, music or words.
A cassette recorder
can a I so be an input dev i ce because you can use it to
read into your computer programs that other people
have written and recorded on their computers.
Another type of home computer memory device is a
relatively expensive and powerful device called a
floppy disc drive.
This is a recording and playback
device that uses a rapidly spinning disc about the
size of a phonograph record.
OUTPUT
The f i na I common functiona I part of a computer
is an output device, which a computer uses to
communicate to you.
The most common home computer
output device is one you are quite fami liar with--a
TV screen, on which the computer displays words,
numbers, and sometimes pictures. This screen can
be that of a standard home TV, or of a speci a II y
designed device.
Computers can also display their output by using
I ights that form numbers and letters, as do the output I ights on an electronic calculator. Computers
can also use individual I ights that are either off
or on, and thus communicate to you the status of
various processes and coded data.
Computers can
also communicate to you by printing on paper and,
less commonly today, by "speaking" words.
INTERFACE
Many computers have several groups of electronic
components, ca II ed interfaces, to a II ow the computer
to communicate with devices not normally compatible
wi th the computer. An interface is 'II ke a trans I ator;
You

can,

for examp I e,.

buy an

interface

so

your home

computer can display data on a TV set you now have.

PAGE 28

Often some interfaces are bu i I t as part of a
computer, wh i lei nterf aces for I ess common input
output, and memory devices are options.
POWER SUPPLY
Computers have one other part which the potential
buyer should consider.
A computer. uses electrical
power, but of a low voltage, simi lar to that used by
electronic calculaTors and simi lar devices. This low
voltage is supplied by a group of electronic components called a power supply. This has the same
function as the group of components ca lied an "AC
adaptor" when used to supply power to devices which
normally use batteries.
A power supply is sometimes included as a standard part of a computer, is sometimes an extra cost
item, and is sometimes not even available from some
vendors.
Also, a large microcomputer system with
many accessories needs a more powerful supply than a
smal I system, and perhaps more power than can be
suppl ied by a computer as sold.
Check before you
buy.
PROGRAMS
A program is not usually considered a part of a
computer because it doesn't exist physically, just
as an idea doesn't.
Programs are often ca I I ed software, whi Ie the physically existant computer and
accessories are called hardware.
Software is
essential to the use of a computer, and some types
of programs are commonly purchased with the computer
or as accessories.
The availability of software
should be a key computer selection factor for most
potential users.
The mo s tim p 0 r tan tty Pe 0 f pro g ram g e n era I I y
furnished by a computer manufacturer is a language
translator.
This program translates between your
Engl ish language and the computer's machine language
so your computer can understand the programs of
instructions you communicate to it.
This translator
program may be ca I I ed an interpreter, an assemb I er,
or a compiler.
The most common Eng Ii sh-I ike I anguage used to
program home computers is called BASIC. This is one
of several languages, called high level languages,
that are easy for casu~1 programmers to use.
BASIC
interpreters are avai lable for many computers. For
some computers, more than one BASIC interpreter is
available.
Different BASIC interpreters vary in the
number and the power of the instruction words they
recognize and in the accessories and capabi I ities
they require of the computers on which they operate.
Lower cost computers have no language translator
programs, so you must communicate with them in
machine language~
Although such communication is
educational for the user who wishes to understand
how a computer works in detail, it isn't in an easy
language for a person to use.
The other major category of home computer programs
includes those that give a computer the capabi I ity
to do whatever its owner wants.
Some sources of
programs of this type include:
1. The manufacturer and vendor of your computer
2. Other vendors, including many at this Faire
3. Program libraries, which loan or give copies
of programs, at I ittle or no charge
4. Friends and computer club acquaintances
5. Your own ideas--this is the type of program
you can write yourself.
Although some programs wi I I be easy for you to
write, others could take several months of hard wor~
A discussion of the many factors affecting program
procurement decisions and the decisions of which
programs you should write yourself is beyond the
scope of this paper.
A brief summary is that there
are many ways you can get programs and many unexpected options and decision factors that may be
involved.
The avai labi I ity of programs for doing
specific jobs certainly can be a major compute~
selection decision factor.
USES OF HOME COMPUTERS
Having now covered the tec~nical characteristics
of computers, we are ready to consider some of the
things they can do for us.
Even though many people
understand the immense potenti a I computers have for
he I ping in our homes, they st i I I ask: What are home

FIRST COMPUTER FAIRE PROCEEDINGS

computers used for today? This is a reasonable
question, and probably the" most common one for a
home computing newcomer.
The answer is:
Mostly for
fun.
Although computers have proven that they have
many other potential uses, the reason relatively few
people are using computers for serious purposes is
that most people can't seem to quit playing with
their computer.
I see nothing wrong with that. Wor~
for many people, should be done at work.
Those who
can spend most of their time at home for enjoyment
seem to have achieved an important measure of life's
success.

The most common type of home computer owner
today is the bui Ider, a craftsman or craftswoman.
For these many peop Ie, understand i ng, bu i I ding, or
otherwise developing computers is an end in itself.
These computer hobby i sts are s i mil ar to the pa inter
or woodworker whose enjoyment comes from creating,
rather than using or possessing.
Computers are the world's most pliable media-you can make more things of a computer than you can
make of clay, paint,or wood. Creating with computers
can be extremely Challenging, and success extremely
rewarding, because the potential for creativity,
mental and physical, is almost infinite.
Other people enjoy using computers for playing
games.
When used for games, computers are often
somewhat I ike TV games, today's hottest comsumer
item.
Unlike today's common games, which are very
I imited and rather quickly become boring,the variety
of computer games can be almost infinite.
People with home computers can keep getting new
games, sometimes for less than $1 each.
Better yet,
they can design and use games they create themselve~
And these aren't just bouncing bal I games.
Home
computer owners program and use their computers to
play cards, space war, chess, and many other games.
The rea I I Y fun games are ones you never heard of
because they can only be played with the help of the
immense power of a computer.
But computers can be very practically useful, as
proven by their use in, and great benefits to,almost
all of commerce, industry, and medicine.
Easi Iy
affordable home computers can be at least as powerful as many of those that are doing thousands of
different jobs in business today.
Fami I ies use computers in home offices to keep
records and to handle accounting chores.
Some also
plan stock and commodity futures buying and sel ling.
Home businessmen use computers in many occupations.
Computers control heat and other environmental
factors so an entire bui Iding, such as a home, is
more comfortable and so erergy is used more efficiently.
Home security is another service, meeting
an unfortunately increasing need, that computers are
being developed to help supply.
,Education is another of today's uses of home
computers.
As educational tools, computers are
helping to teach subjects ranging from first grade
addition to financial and engineering math, and a
wide range of other subjects.
Also, many people are
using computers to teach themselves about computing,
a field with considerable employment potential.
In
addition to vocational benefits, learning about
computers is both enjoyable and practical because of
the rapidly increasing role computers are coming to
play in the everyday lives of each of us.
Many computer owners have talked of the great
potential of computers for keeping track of kitchen
suppl ies, planning menus and recipes, and for many
similar household chores.
For some reason, these
uses seem to be I ike most household chores the American man is as.ked to do. They end up in a "tomorrow,
dear" category, even though their long range benefit
can include considerable work savings.
Returning to fun appl ications, computers are used
to catalog and control the playing of musical
recordings.
Computers are also used to make music.
There is even a magazine devoted to the topic of
computer music.
Electronic hobbies are another home computer
application.
When electric train layouts are so
complex that father and son together can't control
them, computers keep the home ra i I road runn i ng
smoothly.
Some amateur radio hams make extensive
use of computers in the i r hobby and have genera I I Y

BOX 1579, PALO ALTO CA 94302

PAGE 29

been the pioneers in home computing.
The I ist of what computers can do, of what you
can do with your computer, Can go on and on.
Aside
from hopefully giving you some more reasons for
getting involved in computing,the preceding examples
of computer uses should further support the idea
that a computer can do almost anything.
HOME COMPUTERS TODAY
But a computer in your home?
Lots of people have
computers in their homes already.
As you go to some
of the more advanced sessions today and tomorrow,
and as you go around the exhibit hall, talk to some
of the other people there. Many of these people have
computers in their homes.
They can tell you what it
is like.
But keep in mind that these people are the
pioneers. They didn't have to cut down logs with an
axe to bui Id their own cabin.
But some of them have
done as much pioneering in other ways.
They have
done the hard work.
You can buy a prefabricated,
ready bu i I t computer, ready to move in.
However,
there is plenty of wilderness left in computing. If
you want to be a pioneer, there are many opportuni~
ties for you to go ahead into the unknown and
develop techniques and products.
And there are lots
of people who wi II follow and much appreciate any
real

discoveries or progress

you make.

This is one of the choices you can make as you
look at the computers here today, and as you decide
how you wi II become involved in computing.
You can
buy the equ i va I ent of 40 acres of wi I derness, or a
prefab in a subdivision, or many things in between.
You can tota I I Y des i gn and bu i I d your own computer.
Or you can get one that you can plug in and have
start immediately to work for you.
There are many
avai lable options between these extremes.
Your home
computer can be what you want it to be.
ELEMENTARY COMPUTERS
You can get a very basic type of computer.
This
will be relatively inexpensive, costing between $100
and $250, generally less power supply.
It won't
have a fancy cover, and probably wi I I have no cover
at a II.
AI I the parts of th i s type of computer may
be on one piece of plastic-like material called a
printed circuit board, or just "board ll or "card".

You wi I I have to do lots of deta i I ed work to
program and use such a computer, especially because
programming generally must be done in machine language.
The power of this type of computer is
limited--you can't easily add many accessories, nor
can you eas i I Y connect such a computer to other
devices to control them.
This type of computer is a good training device,
an educational tool.
The lack of fancy accessories
means that you work directly with your computer,with
I ittle interference.
Therefore, you can learn, by
doing, much about the detai I s of how a computer wo
works.
EASY-TO-USE COMPUTERS
Some people don't want to work closely with a
computer.
They would rather have their computer
follow their general instructions.
Such people
aren't especially interested in knowing the details
of how a computer work~ They would rather learn how
to use a computer to solve a particular type of
problem, control a particular process, or help them
in a field unrelated to computing.
Computers designed for this type of user are
avai lable.
One key characteristic of this type of
computer is that you program it by using a high
level language.
As we discussed earl ier, a high
level language is easy for people to use.
These computers are genera II y bu i I t on severa I
printed circuit boards which plug into guides and
connectors mounted on the computer frame.
Computer
capabi I ities are changed by plugging new boards into
appropriate spaces, as long as there is room avai 1able.
For some computers of this type, especially
"Altair bus compatible" or "5-100 bus" computers,
many accessories are avaiable that can be added.
For other types of computers, only a few accessories are avai lable.
Consider what you may need and
want.
Prices of computers in this category generally

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 30

start at about $500.
A system with enough power and
accessories to use a high level language may cost
$1000.
The price of a full system, such as might be
used for a business appl ication, can easi Iy reach
$5000.
KITS?
Another primary choice when selecting your home
computer is whether to purchase a kit of parts, or
an already assembled computer.
A kit, like the
traditional model airplane, requires your work and
time to put it together.
A computer kit often takes
from 50 to 200 ho~rs to assemble; accessory kits
generally require less time. Time requirements vary
depend i ng on your sk ill, the ease of assemb I y of the
kit, and your luck in (not) encountering problems
which can take many hours to diagnose and repair.
The major benefit of a kit is that it saves
money.
An assembled computing product genera II y
costs from 30% to 50% more than a kit.
Another benefit of a kit is the experience that assembly gives.
However, the person who has so I ittle experience
that he would benefit probably would encounter considerable problem in assembling a working computer.
Most computing kits require ski I I and knowledge
in electronics work, sometimes a considerable amount
The decision whether to build a computer kit is not
one to be made I ightly.
Anyone, after he has enough
ski II, equipment, time, and expert help avai lable,
can bu i I d a kit.
The amount of these resou rces
required for assembly and successful use varies
widely among kits.
The quality of instructions
provided also varies ~onsiderably. These are al
factors to consider when selecting your computer.
HELP!
Although good instructions and the avai labi I ity
of expert help are essential to the novi~e kit
bui Ider, these aids are important to every computer
user.
Computers today are too complex to be understood completely by most people.
Because computers
have so much potential, appropriate understanding is
very important for using a computer well.
Because
ski I I reqUirements vary
widely among types of
computers, a solution to the need for ski I I is to
choose a computer which needs the amount and types
of ski I I you have or plan to have.
A special resource to consider when evaluating
sources of computer ski II s is the dea ler from whom
you buy your computer. This is the person from whom
you wi II a I so probab I y get the severa I types of
support you wi I I need to use your computer and to
keep it operational.
A dealer who is knowledgable
about the equipment he sells, and is wi II ing to
share this knowledge, can be a great help in using
a computer. So the decision of whether to buy from
a dealer, and the selection of your dealer are both
important home computing decisions.
A novice may be
wei I advised to use this Faire as a terrific way to
learn about home computing and to compare computing
products so he can intell igently make the actual
purchase of a computer through his home town computer dealer.
CONCLUSION
After this quick overview, you probably are more
confused than when you started because you have
learned a I ittle and can better see how much there
is to I earn.
At I east you have some understand i ng
of the fact that many of the things at this Faire
are new, even to the most knowledgable and experienced persons.
The knowledge you now have is greater than many
of the other people at this Faire. So go ahead to
the other talks, and visit with the exhibiting
vendors, confident that you can benefit from these
discussions.
Most of al I, have fun as you plan and
learn about your new helper, your own home computer.
BIOGRAPHY
James S. White is the author of Your Home
Computer, an introduction to personar-Gomputing.
As an active member of 3 amateur computing
organizations, he has worked with a variety of
newcomers to microcomputing.
He is also Data and
Systems Manager for Durant Digital I~~truments, a
manufacturer of counting and control systems and
components.

A TYRO LOOKS BACK
Fred Waters
1601 Provincetown Drive

San Jose CA 95129

Some of you are curious, interested, and perhaps actively
1nvestigating this idea of microcomputers for fun. About a
year ,:;.go I was where YOLl are today. I had jLlst had my eyes
opened to tl~s new hobby, and was in a tLlrmoil aboLlt which
way to go. "Ire YOLl asking YOLlrself, "Is this hobby for me?"
or, "I tbink I w;mt to get into this, but which way do I go?"
Or, "I'va made a start, but what do I do with the limited
lli,rdware I've got?" i.iaybe my own experience and points of
view will help guide you, Dr give you Some ideas on choices
'md directions.
I speak as a tyro. There is no part of this hobby in
wbich I 3.JJl not 11 beginner, except perhaps for a prior interest
in ",,'theJ;;aticOlI g"mes and recreations. I speak only to those
ivho f.Il.10w 11;e. A,s i'0r the ma.n who r. .13 a more advanced system,
",'.ith lot:: of '~'~!e:nory :md peripLeral devices, '..vith r:rm~ess in

,lest r(;yint, Klingons using his favorite version of startrek,
'uc nitil i37 of i~s wife's favorite recipes stored for quick
ree:,i :l--he I s a ;"an I want to listdn to, not tell my tale to.
!.i'ter findi:lE out by :wcicient

W~qt

a microcomputer was,

':in::! th':lt a rudiIIlI::mti;.t,r'lJ system could be aCt1uired for not much
!LOre tf",n <1 good hi-fi system, I started investigating.
This

me,lnt attending club meetings,visiting shops, finding and
reading the right library books, subscribing to magazines,
writing for cOlrunercial brochures, and asking questions of
anyone wno would stand still long enough to give answers.
Then I picked a system, bought it, assembled it, checked
it out, :md started doing things with it. I made some mistakes that you can avoid. It was necessary to keep on studying, reading, learning. I started out with the simplest possible uses for
systerh. Then variations became evident. As
one progresses in the various Skills, and adds peripheral
e,-{uipment to the system, one finds more and more interesting
pursuits in an ever-widening range of activities. &~d you
gliJlIpse more to come. Learning and playing with these machines
is like reaching and exploring an unending series of plateaus,
each one more or less faSCinating, and each one pointing to
more beyond.

IT"

,'lhere are you in this hobby? If you are looking at something entirely new, or already launched into the first few
stages, you may get some useful ideas from what I did when I
was there. I hope my own enthusiasm has ignited a spark, or
helped fan the existing spark into a growlllg flame of interest

and excitement.
Fred B Waters, Jr
1601 Provincetown
San Jose, CA 95129
US Army Corps of Engineers, retired
M.S. in C.E., Cal Tech
Former assistant protessor of engineeriny,
U 5 Mil i tary Academy
Former instructor in public speaking,
International Speakers Bureau,
Santa Clara
Member of Mensa
Member ot Speakers Bureau, San Jose
Bicentennial Commission
Occasional I"cturer on mathematical games
and recreations: "Fun With Math"

PAGE 31

BOX 1579, PALO ALTO CA 94302

FIRST COMPUTER FAIRE PROCEEDINGS

mE SHIRT POCKET COMPUTER
Richard J. Nelson
2541 W. Camden Place
Santa Ana CA 92704

INTRODUCTION
The shirt pocket computer exists today in the form of the personal programmable calculator. No matter how you may define a
computer. machines like the Hewlett-Packard HP-67 and HP-97. and
the Texas Instruments SR-52 probably qualify. The small gap be~
tween the personal programmable calculator. PPC. and the microcomputer will be bridged completely this year with the introduction of the National NS-7l00 in late spring. and the still unknown model number from Texas Instruments at about the same
time. There are nearly 300.000 PPC's and less than 30 000 micros in use today. The micros get most 'of the publicity, while
the PPC's quietly serve their owners as a portable. extremely
powerful. and economical computational tool.
This paper will provide a general review of the PPC. its characteristics and capabilities. and what can be expected in the
near future. In addition. this paper will cover sources of information on software, hardware modification. accessories. and
users groups.

COMPUTER OR CALCULATOR?
The basic architecture of the top-of-the-line PPC's on the mark~t today makes them cal cul ators primarily because they are deslgned for numerical computation oriented to a base-ten world.
There are many characteristics that are attributed to a computer
which differentiates it from a calculator. A few of these are:
a) ability to modify its own program. b) ability to handle al;lbanuneric 'strings'. c) high speed operation. d) multiple in?ut/output ports, e) large mass memory in the form of 'core'
solid state RAM, or disc, f) multi-node operation. batch ti~eshari ng, etc.
•
Certain~y the PPC cannot measure up to the performance of the
above 11sted computer capabilities. but when each one is broken
down into basic capability, it is astounding how close the PPC
comes in.scaled-down capability. The upcoming NS-7l00, for example, \"/111 be able to talk to many different devices, but it
~s n?t ~ossible to have them all in one pocket.
The PPC, with
1tS 1nd1rect addressing. multi-logic compare instructions. multi-flags, full editing. and external memory makes it as close
to a computer as you can get and not call it a computer. The
next generation of machines available this summer will add features that bridges the gap completely. There are sound marketing reasons for calling these microprocessor-based systems calculators. and as long as they are primarily intended for numeric computation, they are best called calculators.

~IHAT

DO I NEEn?

If you are an engineer who is interested in computers because
you must keep up with technology. then the microcomputer is
w~at you ne~d.
You will buy ~nd ~uild one, and will spend conslderable t1me and money gett1ng.1t to do something practical.
If you a~e interested in a machine to control a process or a
model ra1lroad layout. you should consider a microcomputer. If
~ou are a businessman who needs lots of mass storage to handle
1nventory or data acquisition. you need a microcomputer.

CALCULATORS AVAILABLE TODAY
The personal programmable calculators are those machines that
have an extensive instruction set that includes full scientific
fu~c~ions. logic c?mpares, flags. full branching. and program
ed1t1ng. The mach1nes that qualify also have some form of external program and/or data storage. They are the SR-52. from
Texas Instruments, and the HP-67 and HP-97. from Hewlett-Packard. Table 1 is a brief summary of the major features of these
'machi nes.

MODEL

SR-52

HP-67

HP-97

Size
Cost
Printer
Program Steps
Data Registers
Program Storage
Merged Codes

Handheld
$300
Separate(PC-100)
224
22
Magnetic Card
Partial

Shirtpocket
$450
None
224
26
Magnetic Card
Fully Merged

Desktop
$750
Yes
224
26
Magnetic Card
Fully Merged

TABLE 1. MAJOR FEATURES OF PPCs AVAILABLE TODAY
The ease with which these machines are programmed. and the personal nature of a battery-operated, go anywhere, calculator has
stimulated considerable programming effort from their owner~.
The abil ity. to provi de ~mmedi ate answers to "what if" questi ons.
and the ded1cated funct10ns of the keys. make programming an
easily-learned skill. Studies have shown that students who have
had preliminary programming experience on a PPC do much better
in their Fortran. Basic. or APL classes. The extensive programming techniques that PPC users have developed allows these memo~y limited and slow machines to perform astounding tasks. Techn1ques that use a keyboard overlay even allow alphabetic inputs
and outputs. Today, increasing amounts of literature, rapidly
growing users clubs. and growing software support from the manufacturers is encouraging. Several years ago the situation was
not as bright.

THE HP-65 AND SOME HISTORY
On January 17, 1974. Hewlett-Packard announced the HP-65 - the
worlds' first pocket 'computer'. The $795 technological wonder
had external memory in the form of a magnetiC card.' One-hundred
program steps could be programmed and recorded for future use.
The mic~ominiature card reader made convenient the reading of
user-\"!r1 tten or factory programs. The 100-step 1imitation of only partially merged program steps proved to be one of the machines' greatest assets. Intuitively the HP-65 users knew that if
the right approach was used, the program could be made to run in
100 steps. The wonder of the HP-65 created a group of dedicated
users who formed the first Programmable Calculator Users Club in
June 1974 -- the HP-65 Users Club. The small size and very personal nature of this machine set the stage for todays' machines.
The dedication of HP-65 users resulted in an astounding body of
kn?wle~ge of pro~ram techniques, hardware modifications. and appl1cat10ns. Dur1ng the nearly three years of product life. the
HP-65 was never reduced in price. despite fierce competition by
the SR-52. Only in the closing days of clearance sales did the
price.for a new HP-65 drop. Now replaced by the HP-67. the HP65 st111 offers the user a capability that was never fully explored. The full power of the HP-65 may never be known. for the
excitement of a newer. better. and many times more powerful machine diluted the investigative efforts that were once exclusively the domain of the HP-65. One of the most interesting aspects
of the HP-65. and later the SR-52. was the discoveries of machine
behavior that was not intentionally designed into the calculator.
These anomalies at first terrified the manufacturers. They were
so engrossed with the business of making and selling calculators
t~at they couldn't take time to answer a lot of 'foolish' quest10ns by the calculator enthusiast who was usually associated
with one of the Users Clubs. The unusual behavior resulted in
what has become known to calculator users as 'unsupported features'

If, however, you are a problem solver, or want to learn program[,ling, want to have fun. and not spend $2.000, $3.000. and up to
$10.000 for a real. up and running system, the personal programmable calculator with external memory may be just what you need.
.If you want to: play Startrek. The Game of Lif~, Bagels. Hexapawn, or a truly Cybernetic game; solve five (or more) simultaneous equations; curve fit data to just about any curve up to
order 4 or more; design circuits. bridges, etc .• on an interactive basis; do extended numerical operations to 50 diqit accuracy or greater; perform card tricks; convert your calculator into a clo~k or timer; or just plain balance the family checkbook.
the PPC 1S made to order. Besides. you can have the very best
for less than $400. The software support for the PPC's is far
more extensive than any microcomputer. It is easier to deterUNSUPPORTED FEATURES
mine if a program has been written to solve a specific problem
on a PPC than it is on most microcomputers. Numerous libraries
Reference
1 lists unsupported features of the HP-65 and SR-52.
are maintained by the manufacturers and users clubs throughout
The Users Club Newsletters. I'eferences 2-5. document all known
the world.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 32

unsupported features. The following examples will illustrate
"unsupported features".
HP-65 Lampman Split Logic - The microcoding of the
had a few undefined conditions. Dean Lampman,
Cincinnati, Ohio, discovered that certain 2-part instructions could be separated by any number of logic
compares, or stack manipulations. Using this knowledge reduces program steps. For example, a single
STORE + n instruction can apply to five or more registers. Using the Lampman split logic saves eight
steps, \'/hich on a lOO-step machine is significant.

HP-65

"Non-normalized" numbers - may be generated in registers 8 and 9 and utilized to provide decrementing
counters (timers), generate pseudo random numbers, and
most useful, a programmed pause, not included as a
design feature.
The term 'unsupported' is very descriptive because Hew1ettPackard never publicized the advantages of the Lampman split
logic, and users outside the small world of the HP-65 Users
Club never knew of the technique. rlon-normal ized number generation and applications were eventually published by Hew1ettPackard and probably represents the turning point in the change
of attitude of Hewlett-Packard in viewing the super enthusiast.
This subject has been discussed in a paper given at WESCON (see
Reference 6).

THE HP-65 SHO\"ED THE

\~r.y

The accomplishments of HP-65 users have been previously summarized in Reference 7. A brief list will be included here because these application experiences served as a training ground
for the increasingly sophisticated calculator users to quickly
advance to even greater heights on the next machine, the HP-67.
~,

an ever popular 'computer' pastime were developed to a high level on the HP-65; 21, NI~1B, TIC-TACTOE, FOOTBALL, and BAGELS, are only a few. Two outstanding, truly cybernetic games -- Hexapawn and Cybernimb -- were also written for the HP-65.
'
Keyboard Overlays - Especially the design of John
Rausch, Dayton, Ohio, provided a convenient means for
inputting alphabetic data. The use of the Rausch
overlay facilitated word games and convenient encoding and decoding of english text

Figure 1. HP-65 "Pocket Computer" was announced by Hewl ettPackard in January 1974.

Magnetic Cards Analyzed - David Kemper, ~Iorthridge,
California, and others, examined the recorded instruction bit patterns of HP-65 program cards. Knowledge
of these codes caused caused a search for four missing (bit patterns possible, but not used) codes which
were eventually isolated, and used to perform unusual,
unsupported features, functions such as partitioning
memory so labels could be duplicated. David's famous
table of codes proved a useful tool, not only in ex~laining the behavior of the caucu1ator, but also in
providing insight into the next generation machine.
Unusual Programs - Applications of the HP-65 went beyond the owners manual. A program which, when run
with the calculator near an AM radio, could transmit
the number in the display with an audio code. Programs that provide a 45-digit by N digit product, infinite division, or compute the factorial of 10 6 fully
exploit the HP-65's firmware and programming capability.
Display control was always an area of "research" by
HP-65 owners. Fun displays were produced by unusual
loops, or "special" instructions in the endless search
to expand on the only human output interface the machine provided - the display.
Few practical applications resulted, but the experience gained provided
practical tools to use to analyze the HP-67. Pseudo
alphanumeric displays are possible on the HP-67 as a
direct result of work done on the HP-65.
Adding a printer was always the dream of the HP-65
owner. Heinrich Schnept, Koln, West Germany, built
the first printer for the HP-65. His concept of
plugging the shirtpocket PPC into a "home base" chassis which contains a printer served as'a concept for
manufacturers to apply in future calculator "systems".

Figure 2. Keyboard Overlay for the HP-65 and HP-76 allows
alphabetic inputs and outputs for word games; message encoding.
The HP-G5 was the first PPC and was the first generation of
machines which followed. The three major machines beinq offered
today represent 1~ generations of technological achievement.

FIRST COMPUTER FAIRE PROCEEDINGS

TODAYS' PPC'S

BOX 1579. PALO ALTO CA94302

PAGE 33

reasons for T.I. recognizing user-discovered features.

Following the HP-65 came the Texas Instruments SR-52 and the
HP-67/97. The HP-97 and HP-67 are functionally identical and
can run each other's programs. The HP-97 has a battery-operated printer and is a small desktop machine.

Figure 6. Printer manufacturered by Compucalc for HP-65. Modification of the calculator is not required, simply replace
the back with one supplied with the printer. Interfaces for
other calculators are on the drawing board. Reference 19.
Figure 3. Tape and label method of making magnetic program
cards. Stress relieved computer tape (A) is 'labeled' with
file folder label (B) as shown at (C). Thickness is 6-7 mills.
(0) shows card trimmed to dimensions. Rubber stamped key
locations (E). Standard Hewlett-Packard card at bottom (F).

Figure 7. SR-52 announced by Texas Instruments in September
1975 added indirect addressing to the Personal Programmable
Calculator.
Figure 4. Cutting desk top.calculator magnetic cards is also
a popular method of making magnetic cards for calculators.
This photo by O. Machen shows how four cards are cut from one.
The introduction of the SR-52 added some ne~features and functions to the PPC. In addition to the designed features the
SR-52 had an unusually large number of unsupported features.

Many of the contributions that the SR-52 made,. such as indirect addressing, the ability to store data on magnetic cards
(unsupported) and the ability to read a program card under program control (unsupported) are designed and supported features
of the HP-67/97. The SR-52 also pioneered the concept of adding a printer to a handheld calculator. The added printout
capability of the quiet PC-100 was a delight to users who soon
grew tired of handwriting 224-step programs. The SR-S2 was
T.I.'s first effort in this product area and the company has
come a long way in realizing that, as the machines get more
sophisticated and have greater capability, factory software
support is a vital aspect of calculator sales. Consult manufacturers literature for full product details.
F.~CTORY

SUPPORT

The consumer who buys a PPC doesn't always realize that he may'
get far more from his machine if he doesn't have to write all
his own programs. When Hewlett-Packard announced the HP-65
they also announced a contributors library and a free owners
newsletter to keep the user updated on manufacturer and user
activities. In addition, groups of programs were made available in the form of Program PACs. Fourteen PACs were written
by HP for the HP-65 which providesthe application expertise
of profess i ona 1 programmers. tlany PPC users do not have the
time or ability to write their own programs. The manuals and
magnetic cards that made up the PACs provided practical information in addition to instructions and program listings.
.
.
.
"
Figure 5. HP-65 prlnter deslgned and bUl1t by Helnrlch Schnepf.
The many unsupported features were discovered in rapid fire
fashion by experienced PPC users in late 1975 and early 1976.
T.I. has now recognized nearly all of these unsupported features and has now made them supported features. Competition
in the marketplace, and realizing that the logic of an introduced PPC would cause software chaos if changed, are probable

T.I. continued the practice of offering program PACs, and a
users program exchange with newsletter, in support of the SR-52.
Unfortunately, major software support for the SR-52 did not
come until a year after the machine was available. The HP-67/97,
like the HP-55, was software supported from the date of announcement. Software support is only one factor the potential PPC customer must consider. The prospective computer customer who considers the PPC as an addition, or alternative, to a microcomputer should also consider convenience, quality, cost, service,

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 34

and logic operating system.

Figure 10. Large display for class room use is manufacturered
by Educa1c. The calculator is hard wired .to the display chassis. Several models of calculators are available. The display
can be seen from 60 feet. See reference 20.

LOGIC SYSTEMS
Of the five considerations listed above, the first and last
ones, convenience and logic system, are the most controversial.
Comparing the products of the two companies, T.I. and H-P, is
like comparing Fords and Cadi11acs. Both provide transportation, each with its own advantages. More fundamental than purchase price is the difference between T.I.'s Algebraic Opera--tf~s (AOS) and H-P's Reverse Polish Notation (RPN).
Oiscussing~is subject is often like arguing that brunettes
are prettier than blondes. Objective conclusions as to the
best system ar~ difficult. Subjective factors will usually tip
the scales one direction or the other.

Figure 8. HP-67 introduced by Hewlett-Packard in July 1976.

Keystroke counting as a comparison of the two systems is not
valid. Both systems usually require identical numbers of keystrokes to instruct the machine what to do and in what sequence.
Both systems take getting used to. A strong argument for AOS
is that it most closely resembles the conventional algebraic
representations learned in school and practiced by the be~t
minds of the last 2,000 years. AOS uses parentheses to retain
numbers for operations\that must be performed after other operations. There is no implied operation of multiplication if a
parenthesis follows a number. RPN does not use parentheses,
but rather uses the concept of a four memory stack, entering
numbers into the stack with an enter key, and preSSing the operation key afterwards. Using RPN requires a little practice,
but owners who use it swear by it. The advantages of the HP
system is not RPN in itself, but rather the combination of the
stack, and the last X register which always saves the last number entry after an operation is performed. This allows recovery
of operator errors which is very convenient in any problem situation. To investigate the relative merits of each system would
require more space than allowed here, but the topic is important
enough that the new user should try both systems before deciding. The saying "different strokes for different folks" applies.
In addition to normal keyboard use of the "operating system",
the differences the logic system has on programming structure
should also be considered. If you are a complete novice in this
area, seek out friends and associates who have machines to give
you their viewpOints.

PPC APPLICATIONS
The typical applications that follow can be implemented by any
of the three calculators described above. The convenience,
,ease, and practicability of one machine over the other may make
it a better choice in certain applications •. The SR-S2 was not
designed to store data on cards, but it can be done. The purpose of describing these applications is not to provide explicit detail or analysis, but rather to show how the PPC may supplement or even replace a microcomputer in many practical applications.
.

Figure 9. HP-97 Introduced by Hewlett-Packard in July 1976.
Programs written for the HP-97 will run on the HP-67 and vi seversa. This arrangement allows nearly full power in your
pocket with the abH ity to print programs and listings on a
machine at the "home base"'.

The small, stick of gum-sized, magnetic cards used with todays'
machines allow the storage of program instructions and/or data.
The machine has a limited amount of internal memory for programs
and registers for data. Using appropriate programming techniques magnetic cards can be cascaded to extend program memory
and/or data registers. The SR-S2 can be programmed to use data
registers for program memory and vice versa if the proper techniques are applied 7- unsupported.
Accounting. A small business may keep the salary, taxes, insurance, etc., data on each employee on a magnetic card. The

FIRST COMPUTER FAIRE PROCEEDINGS

card is read, the weekly hours keyed, and
All the calculations required are done in
yearly cumulative totals kept in memory.
the pay records and the card is read once
new cumulative totals.

the program executed.
seconds and the new
The data is entered on
again to record the

Taxes. Income tax consultants have been able to develop algorithms to put complete tax tables on a magnetic card. Running
their sophisticated programs saves considerable time and, for
their business, adds to their income. Naturally the circulation of these programs is limited.
Conversions. Currency, pricing, and engineering conversions
can be programmed for convenient daily use that obsoletes tables because any unit can be chain converted to any other.
24 or more conversions can be placed on one card. The limitation is primarily the writing space on the card, not the number of conversions.
Eliminate Tables. Using clever curve fitting and other number
generating algorithms, thousands of pages of tables may be reduced to a few cards. The Star Almanac, all scientific function tables, etc., are practical everyday uses of the PPC.
Design Interactively. Iterative design equations can be programmed to resolve for desired parameters when one or more
parameters are changed. This interactive design capability becomes a powerful engineering aid; especially when printed results can be added to the engineers' log.
Reduce Production Errors. The use of the PPC on the production
line, or nurses' station in a hospital can save considerable
time by allowing complex programs to be run by unskilled personnel. Programs properly written can check and look for errors
in situations involving large digit quantities. One quartz
crystal manufacturer justified $800 worth of calculators on his
line the first week because a self-checking program caught a
digit reversal error made by an order clerk. Ilaving standard,
self-checking, and easily entered verification problems available for verifying program performance adds to the confidence
which non-skilled users have in the machine.
Finance Calculations. The PPC may be converted into a financial wizard that will rival most computers. The high numerical accuracy built into these machines allows individuals to
have an independent check on interest calculations. In fact,
the program may also include the legal rounding rules that
banks and savings and loan companies use. In 15 minutes all
the truth in lending statements on one page of newspaper ads
can be verified. 0ften there are two or three errors on one
page. Want to check your 239th house payment to determine how
much of it is interest? This type of problem can be done in
less than 30 seconds including the time to find and load the
magnetic program card and key in the data.
Cost Estimating. This type of problem is a natural for a small
bl!siness. Usually each business has its own guidelines and

Fig. II Ref. 1 ~11". 15 pp, 3
papers "bound".
.

BOX 1579. PALO ALTO CA 94302

PAGE 35

rule of thumb. Consider a fabricated part produced from sheet
metal. The material, size, and number of holes are keyed in
as the customer gives the data. A quoted price is given in
seconds. The program knows the size of the material and determines the optimum number of pieces. Fabrication costs, overhead, and profit are calculated without human error. Complex
products that require 20, 3D, or more inputs can be handled
easily.
Research. Computer time is expensive, and usually a microcomputer is not on your own desk. A simple program can be keyed in
to search for answers while you go on with your work. The slow
PPC may take hours or days, but it can find answers that would
take a big machine, restrictive availability, and a professional
programmer to solve. If the program is still running when it's
time to go home, simply unplug it, slip into your pocket, and
let it continue. Plug it in again when you reach home and get
the first solution while watching your favorite TV show. Start
a new problem and have another solution at breakfast.
Games. Games are just as popular on PPC's as on larger computers. Startrek, Life, Golf, Football, Baseball, and most of
the classics can be played on the PPC. Both T.I. and H-P even
offer a Games PAC. A recent·BASIC listing of the game Hexapawn
appeared in a popular computing magazine. The 2/3 column listing was the equivalent of one magnetic card program. ON THE
HP-65! True, rJachine-learning games have been programmed on'
the PPC. IIhen the "computer" is available at the personal convenience of the owner, his creative skills· are enhanced because
the machine is available whenever and wherever needed.
The above applications are not an exhaustive listing, but only
serve to illustrate the high level of programming achievement
that exists in the software for PPCs. The small size of the
machine and the external storage media makes the PPC a problem
solver, a teacher, and an entertainer. Literature on PPC app1ications has increased dramatically in the last year. The
technical literature and Users Clubs provide the bulk of high
quality software and applications information.

SOURCES OF INFORMATION
The basic body of knowledge suitable for PPC users has been in
the technical literature for many years. Only recently, however, has mathematical concepts, algorithmic techniques, and
iterative and recursive techniques been available in a form di~
rectly applicable to PPC use. Textbooks, magazines, users club
newsletters, and engineering papers have been contributing to
the general body of knowledge. The references at the end of
this paper list many of the major works related to the PPC. The
list is more complete in the Sources from Engineering and Science fields and lacking in references from the Academic community. One of the richest sources for applications information,
programs, and programming techniques is the monthly users club
newsletter.

Fig. 12 Ref. 2 8~1l", 2000 word per
page format, typical issue 12-14 pp.

Fig. 13 Ref. 3 ~11~", In German,
very difficult to translate •

- .-.----------- - - - - - - " _..•-----_. ,.

. .... ----:--:---------;---...

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

USERS CLUBS
The Council of Personal Progralllllilble Calculator Users Organizations lists three U.S. and one German club as members. Several smaller groups at major U.S. corporations are getting
large enough to qualify for membership. Approximatel't1% of
the total PPC user population belongs to a Users C1ub-. One
primary objective of these groups is to produce the highest
level of programming techniques and applications information
possible. As a result, these super calculator enthusiasts
enjoy a knowledge of the state of the programming art that
leads the technical literature by nine months to a year. Almost without exception, programs or programming techniques,
especially machine anomalies and unsupported features, that are
published today in national magazines have appeared a year earlier in a Users Club newsletter.

PAGE 36

panies, scientists, engineers, or college and high school students. The growth, history, character, and activities of these
clubs is a phenomenon-as unique as the high technology PPC
itself.
B~IDGING

TilE GAP

-TI~E

FUTURE

As previously mentioned, two new PPCs are expected by early
summer. The advanced capability of these machines will qualify them to represent t~e second generation of PPCs.They will
have 1/0 ports with handshaking capability to interface with
the rest of the computer world. Their internal program memory
will be 20 times that of the present machines on the market.
The NS-7100, for example, will have a solid state p1ugin Library that has a capacity to hold 4,096 program steps, each of
which may consist of up to three keystrokes. The Library cartridge contains the equivalent of 12,288 keystrokes! All memory of the second generation machines is non-volatile. ExecuThese clubs operate along similar lines. They are all nonprofit, independent, volunteer groups who have found that their tion speed is not much faster than todays' machines and a significant increase in speed is not expected until Silicone on
PPC forms a unique bond to share technical information. Club
Sapphire (SOS)techno10gy is imp1~mented for the integrated
activities include publishing monthly newsletters, holding
circuits.
Data registers and program steps will approximately
meetings, making group purchases, sharing programs, and maindouble. Alphanumeric displays are not expected on the handheld
taining a program data base, and even maintaining calculator
machines.
hot lines for the latest bulletins on what's happening in the
calculator world. In terms of free software alone, membership
The
details of the known machines coming from National Semi conin one of the clubs makes the membership contribution a bargain.
ducto'r and Texas Instruments in early summer are unknown.
Membership is world-wide and the machines the clubs support
Enough is known about them to see that they will bridge the gap
range from a single manufacturer to all manufacturers. There
between the calculator and the computer because of the literare no restrictions in membership except an interest in PPCs
ally infinite capability that exists for "talking" to compuand a willingness to contribute to the general goals of the
ters, printers, modems, CRTs, TV sets, and each other through
group. 11embership in these clubs include users who may be
their 1/0 port.
Presidential advisors"Vice-Presidents of Fortune, 500 com-

Fig. 14 Ref. 4 8~11", 6 pages per
issue. primar1y advanced topics.

Fig. 15 Ref. 7 8~11". 24 pages, 4
papers "bound".

Fig. 17 Ref. 9 7x9". 254 pages
spi ra 1 Lound.

Fig. 16 Ref. 8 7x9" , 380 pages
hard,. bound.

Fig. 18 Ref. 10
soft bound.

~.x10".

427 pages

FIRST COMPUTER FAIRE PROCEEDINGS

13

6!ox9~",

BOX 1579, PALO ALTO CA 94302

176 pages

PAGE 37

Fig. 21 Ref. 14 6!ox9\", 317 pages
hard bound.

Fig. 19 Ref. 11 6!oxl0", soft bound,
in press, available early summer.

Fig. 22 Ref. 15
soft bound.

Fig.
. Programming Workbook makes
user discovered features "supported".

Fig. 24 Ref. 17' Free to all HP-65/
67/97 owners who send in their registration card to get on mailing list.

8xl~",

75 pages

Fig. 25 Ref. 18 Only selected issues
of interest to PPC users.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

SUMMARY
The personal programmable calculator (PPC) with external memory
is indeed a shirtpocket computer. The new machines to be announced in early summer 1977, with their full I/O capability,
bridges the gap between calculator and computer. The term "personal computing" has a special meaning to the PPC user. "Personal" means "on ones person", available any time, anywhere. .
The applications and programming technique state of the art has
kept up with the hardware advances because of the activities of
the manufacturers software support and the Users Clubs. The
PPC offers the computer user a powerful, low cost, accessory
and, in applications where numerical solutions satisfy the major
needs, may replace the microcomputer completely. The PPC of
today is not just a calculator; inside it is a microprocessor
with control ROMs that give it a calculator personality. The
shirtpocket computer is here to stay.

ACKNOI'ILEDGMENTS
I would like to thank the members of all the PPC USERS CLUBS
who, through their thousands of letters and phone calls over
the past 2~ years have provided the material used to prepare
this overview. I would also like to thank Jim Warren for letting "the other computing users" have a chance to share the
calculator viewpoint. Compuca1c, Educa1c, lIew1ett-Packard,
Matrix, and Texas Instruments
provided photos of
their products.
~EFERENCES

1.

2.
3.

4.
5.

6.

7.
8.

9.

10.
11.
12.
13.
14.
15.

Electro '76 Professional Program, "Advanced Pocket
Calculators", 32/4 May 11, 1976.
"65 NOTES", published monthly by the HP-fi5 USERS CLUB,
2541 W. Camden Place, Santa Ana, California 92704.
~, published bi-month1y by the Mikro-(Taschen)Computer Anwender-C1ub. Buschenwe~ 24. D5noo K61n 40.
West Germany.
52 Notes, published monthly by the SR-52 Users Club.
9459 Taylorsville Road, Dayton. Ohio 45424.
Recreational Programmers' Notes, l)ub1ished monthly by the
New Zealand RPN Club, P.O.Box 21067, Edgeware. New Zealand.
WESCON Professional Program, "Pocket Calculator Update",
7/3 September 14, 1976.
WESCON Professional Program, "Present and future of
Sophisticated Pocket Calculators", 29/4 September 19. '75.
Smith, Jon M., "Scientific Analysis on the Pocket Calculator", New York, John Wiley &Sons, 1975.
McCarty, George, "Calculator Calculus", California,
Page-Ficklin, 1975.
Sipp1, Charles J., "Calculator Users Guide and Dictionary",
Champaign, Illinois, Matrix Publishers, 1975.
Sipp1, Charles J., "Programmable Calculators", Champaign,
Illinois, Matrix Publishers, 1977.
Fowler, P.obert W., "A Collection of HP-25 Routines",
12104 Arbie Road, Silver Spring, Maryland 209Q4, 1976.
Eisberg, Robert M., "Applied Mathematical Physics with
Programmable Pocket Calculators", McGraw-Hill, 1976.
Smith, Jon M., "Financial Analysis and Business Decisions
on the Pocket Calculator", :lew York. John Wiley & Sons,'77.
Blazie, Dean B., "A Compiler for Pocket Calculators",
Technical Memorandum 1-76. U.S. Army Human Engineering
Laboratory. /\berdeen Provi ng Ground, Maryl and.

16. PBX Exchange. Dated periodical from Texas Instruments,
Inc., PBX-52, P.O.BOX 22283. Dallas, Texas 75222.
17. HP Ke~ Notes, published quarterly by Hewlett-Packard,
100D.E. Circle Boulevard, Corvallis. Oregon 97330.
18. Hewlett-Packard Journal, ~ublished monthly by Hew1ettPackard, 1501 Page· Mil' Road, Palo Alto, California
943Q4, November 1976 issue.
19. Compucalc, Inc., 201 E. Main, Silverton, Oregon 97781.
20. Educalc,Educational Calculator Devices, P. O. Box 974,
Laguna Beach, California 92652.

PAGE 38

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

PAGE 39

THE SIDELOBES OF INDUSTRIAL DISTRmUTION ARE FOCUSED ON THE HOME MICRO·
COMPUTER HOBBYIST
f.
In-circuit emulator and/or simulator
Lowell Smilen. Ph.D.
AlmallStroum Electronics
5811 Sixth Avenue South
Seattle WA 98108

ABSTRACT
The emerging microprocessor technology is having and will
continue to have a strong impact on the way electronic design
is carried out on existing electronic prOducts and the countless
number of new ones yet to appear on the market. The microprocessor hobbyist is in the forefront of this exciting revolution; both as a consumer and a contributor. This paper will
explore how the hobbyist can benefit from the engineering
programs in effect at some electronic distributors, who in
turn are working closely with the, semiconductor manufacturers.
The broad array of microprocessor kits, system development
tools and learning products which are now available will also
be discussed.
I.

Introduction
The role of the industrial electronics distributor has been
evolving over the past few years. Whereas previously,
the distributor was concerned mainly with supplying single
function components, i. e. resistors, transistors, wire;
the current trend towards multifunction components and
pre-wired subsystem boards such as microprocessors,
single board computers and microprocessor development
systems has caused the distributor to become more technically oriented.
The intent of this paper is to describe the wide range of
microprocessor products and services available through
some segments of industrial electronics distribution and
to suggest that this mode of operation, perhaps with variations, will be increasingly followed in many parts of the
country.

g.

Software for program editing, assembly and in
some cases software for high-level language

The function of these units will be discussed in the section on Microprocessor Products.
The visitor to the Center recei~es a demonstration on one
or more of these systems with a discussion of their capabilities. (The Center at Almac contains the development
systems from Intel, Motorola, National and Texas Instruments).
Of significance to the hobbyist is the fact that time on
these systems can be purchased on a daily basis.
As a means of keeping the designer current with the
latest developments in microprocessor products, the
distributor sponsors a series of technical seminars
usually presented by field application engineers from the
semiconductor manufacturers. The distributor also presents technical seminars at universities, local microcomputer clubs and trade shows.
There are other engineering programs in existence at
distributors which are pertinent to the hobbyist. A
PROM programming facility provides ,the means for
entering the debugged program into a field programmable ROM, either erasable or not, from a variety of
media such as paper tapes and mark sense cards.
A distributor often provides electrical assembly capabilities for customizing such items as switches, connectors, terminals and flat ribbon cable to the user's specs.
Where the distributor maintains a retail store in conjunction with his stocking warehouse, the hobbyist has
easy access to the wide variety of products and services
which the distributor provides to his industrial
customers.

The major effort or mainlobe energy of the distributor is
Ill. Microprocessor Products
directed at the OEM (original equipment manufacturer),
however, the home hobbyist market is growing at a suffiA. LSI Chips
ciently rapid rate that the side lobe energy directed in that
direction is still considerable. This is particularly true
The range of microprocessor products is so extenfor microprocessor hobbyists since electronic system
sive that they can be be st treated by breaking them
development using these products lends itself well to the
into categories: First, there are the LSI chips
home laboratory. The home hobbyist ranges from the
which constitute the microprocessor chip set, the
person who is developing a system mainly for fun and games
RAM and (P) ROM memories; serial and parallel
to the experimenter who is prototyping a system from
I/O chips and the newer peripheral chips such as,
which a profit is ultimately to be realized. The nature of
the programmable DMA controller, interrupt
the microprocessor products on the market allows both
controller and interval timer. Examples of some
goals to be realized.
of these chips are the:
II.

Engineering Services
Perhaps the biggest problem associated with moving into
microprocessors is determining where to start. A
Microprocessor Development Center with a resident
technical specialist provides the ideal starting point.
The beginner then has the opportunity to come in and
discuss his goals, budget and future plans. The
designer at every experience level gains exposure to
new products. The Center contains the development
systems from a variety of semiconductor manufacturers
with an assortInent of peripheral devices; typically a
development syste~ consists of:
a.

b.

The processor console with between 16K and 64K
memory; resident firmware for controlling the
peripheral devices; and resident firmware for
program operations and debugging
Teletype or sirriilar units, possibya high speed
printer

c.

Disc operating system and/or paper tape reader
and punch

d.

CRT console

e.

PROM Programmer

1.

Intel 8080A - an NMOS 8-bit parallel CPU with
6 registers and an accumulator, separate 16bit address and 8-bit data bi-directional data
busses.

2.

Intel 8048 - an 8-bit NMOS LSI chip whiCh
contains the CPU, memory in either ROM or
PROM structure, RAM, internal clock, programmable I/O parts and interrupt control
logic.
The 8048 illustrates the trend of integrating
peripheral chips and memory onto the CPU
chip to form a more tightly integrated system.

3.

Motorola 6800 - an 8-bit NMOS microprocessor
with an 8-bit bi-directional bus and a l6-bit
address bus, 6 internal registers using a 5-volt
power supply.

4.

Motorola 6802 - an 8-bit NMOS microprocessor
that contains the registers present on the 6800
but also includes an internal clock oscillator
and driver and 128 bytes of RAM. It uses the
same language as the 6800.
This chip also illustrates the availability more
highly integrated LSI chips.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

The trend towards microprocessors· witf>. greater
data processing capabilities is sho~ in the:
5.

Texas Instruments TMS9900 - a single chip
l6-bit NMOS CPU having 16 general registers
and on-chip instructions for multiply and
divide. It is supported by the TMS 9901 a
programmable systems interfac.e chip, the
TMS 990Z asynchronous communications
controller, the TMS 9903 synchronous
communications controller and 'the TMS
9904 clock generator.

£6,r teletype communications and program
debugging and a PC board with an expansion
capability. The keyboard kit was introduced to
obviate the need for the teletype and uses the
blank portion on the PC card of the first kit..
The ROM included with this kit allows the user
to enter, debug and execute his program by
using the calculator-style keyboard.
C.

National SC/MP - 8-bit microprocessor
which is available either as an NMOS chip
or a slower ·PMOS one. In addition to its use
dn equipment controllers it finds applications
as a peripheral interface unit in distributed
processor systems.-

Intel's SBC 80/10 probably was the first of the single
board computers followed by Motorola's micromodule
the M68MMOl. Intel has now introduced its expanded
version of the 80/10, the SBC 80/Z0 and Texas
Instruments, the. T. I. 990/4.

There are many factors to be considered in
choosing a microprocessor chip. Among
these are speed (relative to the application),
power dissipation, supply voltages, data
. handling capability, availability of peripheral
chips, need to minimize chips, cost and
second sourcing. There is another factor,
which will be discussed further later on,
hardware and software support provided by
the semiconductor manufacturer.
B.

The single board computers are prewired circuit
boards that have been tested and contain a CPU,
RAM, 1/0 chips, clock circuits, terminal interfaces
and sockets for ROM and I/O expansion. Their
Significance is enhanced by the fact that they are
members of a family of boards and cardcages that
may include RAM and PROM socket cards, I/O
cards, A/D and D/A cards and more recently a
general-purpose-interface-bus card. The cost of
the microcomputer card and associated modules,
in single unit quantities, is in the $500 and $800
range.

Microprocessor Kits
The next product grouping to be discussed, and
possibly of greatest interest to the house hobbyist,
comes under the heading of microprocessor kits.
Historically, kits have always been popular with
hobbyists ranging from test equipment kits to high
fidelity and stereo subsystems. The semiconductor
manufacturers have made a strong effort to capture
a wide following among microcomputer beginners
by putting on the market kits which are excellent
values, both in electronic parts and documentation
for self-learning programs. They provide an ideal
starting point for novices and .those who wish to
become familiar with a second or third chip family.
The first microprocessor kits were merely an assort.ment of LSI chips. When the kits were expanded to
include a printed circuit board, their popularity
grew and with the introduction of LED displays and
hexadecimal keyboards into the kits sales advanced
more rapidly. With the inclusion of a means of
entering and receiving data the need for an expensive
terminal was minimized.

Computers on a Board
Next in the hierarchy of microprocessor products
would come the .families of Single-board computers.
This famUy of products probably has its greatest
significance for industrial users but the hobbyist
should be aware of this potential storehouse of
products.

A chip which is applicable to controller type
systems which require a lower degree of
computer complexity at a low cost is the:
6.

PAGE 40

The beauty of these micrC?computer cards and their
support modules is that they provide for a wide
variety applications without the need to stuff and
wire each PC board, they minimize inventory and
spare part inventories and they are compatable with
the microprocessor development system associated
with the particular semiconductor manufacturer.
This brings us to the last grouping of microprocessor associated products - the microprocessor
development systems.
D.

Development Systems

Examples of the more popular kits ranging in price
from under $100 to $Z50 are:

By their very nature, microprocessor systems are
complex, in that they require both hardware and
software design, with trade-offs between the two.
Digital test equipment existed for hardware checkout and large computers could serve for software
development and simulation. However, there was
a need for a new class of test equipment which
combined both functions - what resulted was_the
microprocessor development system which is itself
a general purpose microcomputer system. The.
key components of these systems are:

1.

Intel SDK-80 which contains the 8080A, RAM
and ROM memory, I/O chips, a crystal, TTL
logic, passive components and a PC board.
The monitor firmware allows communication
with various terminals, program debugging and
execution. There is space provided on the board
for the user to expand the system for his particular application.

1.

Z.

Motorola MEIC 6800DZ Kit contains a Z4 key
keyboard and a 6-digit seven segment display
in addition to the M6800, RAM and ROM serial
parallel I/O chips, TTL logic, Z PC boards,
and all passive components needed to complete
the kit. There is a monitor program which
permits communication with an audio cassette
and program entry and debug from the key
board. This kit can also be expanded by the
user,

Microprocessor con solEI. This unit contains a
microprocessor and associated circuitry for
interfacing to the resident RAM memory which
can range from 8K to 64K; firmware in the
form of a monitor program in ROM for serial
and/or parallel communication ·with one or
more terminals, for program loading, debugging
and copying; a card for interfacing tne system
to external hardware; additional sockets for
special function cards and a heavy duty power
supply.

Z.

Peripherals

3.

National ISP-8K/ZOO SC/MP kit and ISP-8K/400
SC/MP keyboard kit. The SC/MP kit was
available initially and contains the SC /MP chip,
RAM, a clock crystal, buffering chips, a ROM

The disc operating system, often with two drives,
holds the system software and provides a rapid
means of loading and storing programs.
Where paper tape is used, in conjunction with a
teletype, a high speed paper tape reader, ZOO
characters per second, is· desirable ~o perform
the loading fUnction.
Other perpherals include the ASR. 733 twin

FIRST COMPUTER FAIRE PROCEEDINGS

cassette, data terminal, an alphanumeric keyboard cathode ray tube display console and 165
character per second line printers.
3.

In-circuit Emulators
The utility of the development systems was
greatly enhanced by the introduction of cards
which plugged into the main console's motherboard to allow the development system to be
used to check I)Ut the hardware being developed
The emulator permits the system being developed to use the main console's memory and
I/O capabilities, to execute the program being
developed in the user's hardware and to display
executed instructions with address and data,
and contents of the CPU's registers, all in
real time.

4.

PROM Programmers
Once a program has been, succes dully developed, the PROM Programmer allows the data
to be entered in a field programmable ROM.
The PROM Programmer may be a separate
console that is interfaced to the CPU console
by cable or a PC card that can be inserted
into the mother-board of the CPU console.

5.

Resident Software
Initially, the resident software was dedicated
to program assembly and editing, then came
the software for using the emulators and the
diagnostic check-out procedure. However,
recently the trend has been to resident higherlevel languages such as PL/M-SO, Fortran IV,
and Basic. These operate in systems using
from 4K to 64 K bytes of memory.
Most semiconductor manufacturers have produced a prototype development for use with
their microprocessor chip; some have gone
further and developed the wide variety of
hardware and software products discussed
above. Most noteworthy of mention are
Intel's Intellec System, Motorola's EXORcisor Systems, National's IMP and PACE
Systems and more recently, Texas Instruments' 990/4 Prototyping System.
Prices for microprocessor development
systems range from a minimal configuration
at $4,000 to a multi-function test bed at
$15,000.

E.

Learning Systems
There is another group of products, which can be
described as learning type systems, that has been
introduced by the semiconductor manufacturers.
Most of these products are unique.
National Semiconductor has produced the SC/MP
Low Cost Development System (LCOS). It comes
with a chassis containing a monitor program, a
hexadecimal keyboard, a LED display, sockets
for expansion and a CPU card with RAM and
I/O chips. Communication with this unit is in
machine language either via the keyboard or a
teletype. Additional cards for RAM and PROM
memory can be obtained arid it will run National's
4K Basic.
Intel's PROMPT SO and PROMPT 4S contain single
boards computer cards for the SOSOA and the S7,4S
or S035. They have hexadecimal keyboards and
LED displays, ' PROM programmers, monitor firmware and power supplies. They can be used as
developm~nt or learning systems. They will interface to the MDS-SOO.
'
The learning-type systems described above are in
the $500 - $1, 500 price range.
This brings us to the Texas Instruments Microprocessor Learning System which consists of four

BOX 1579,. PALO ALTO CA 94302

PAGE 41

separate modules, each provided with a detailed
manusl. The LCM-lOOl is intended to teach microprogramming, the development of a set of instructions a8 used by a microprocessor and is concerned
with processor architecture, data handling and
processor programming. The companion modules
are the LCM-1002 a controller, LCM 1003 memory
and the LCM-1004 input/output module. The four
modules combined constitute a versatile microcomputer. The entire set costs less than $700.
IV. Conclusion
The era of microprocessors is indeed in its infancy. Regardless of what projections are used for its growth, there
is no doubt that they will have a profound impact on our
lives whether we are engineers, technicians or consumers.
The technical hobbyist enjoys working with and nuturing
new technologies. In the case of microprocessors, the
hobbyist will find that broad, valuable assistance and
support are being provided by the technically and service
oriented electronics distributor, working with'the creative
semiconductor manufacturer.

FIRST COMPUTE-R FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

_PAGE 42

A look at micro-computing as if people mattered

Andrew Clement
789 W. 18th Ave.
Vancouver B.C.
Canada V5Z lWl

Abstract
E.F. Schumacher, in Small is Beautiful and his more
recent work, has drawn attention to the role tha,t
technology plays in the shaping of our present society
and to the need for technologies of smaller scale
in the growth of a more humane society. He identifies the criteria of smallness, simplicity, carital
cheapness, and non-violence as being part1cular y
1l1)portant. Micro-computer technology, which is the
basis of computing systems for home and personal
use, seems to satisfy these criteria in many respects,
and so it potentially represents a technology
appropriate for future general use.

benefit, from their use. Smaller, more humanscaled enterprises are needed in the formation of
a more humane society.
Schumacher suggests four criteria with which to
judge technologies and serve to guide their
development. These criteria are:
-

small
simple
inexpensive
non-violent

Technologies which satisfy these criteria will be
much more likely to be good for us.

One technology that appears destined to play a large
part in our lives is that of micro-computing.
Conventional computer technology, already quite
This paper examines critically the field of mi:roinfluential, is at the moment embarking on an
computing in light of Schumacher's four criter1a.
important new direction based on a radical reMany of the positive aspects are seen to hold up
duction in the size and cost of primary computer
under this examination. In important respects the
components. Large scale integration (LSI) of
technology really is small, inexpensive and noncircuits has made possible pOwerful computing
violent. It can also be fun, facilitate the more
devices that could be purchased by virtually
equitable distribution of computing power and help
everyone for home or personal use. Though not
breakdown fear and mis-understanding of computer
widespread yet, the future general use of these
technology. A number of important drawbacks are also "micro-computing" devices seems probably and would
discussed,' Micro-computers are generally crude and
,have considerable impact on society. At first
not very powerful at the moment. They are not simple appearances it would seem that this new microto use other than at a fairly elementary level. Wide- computer technology satisfies many of Schumacher's
spread use of micro-computers may contribute to the
criteria and so could have the potential to provide
increased centralization of power in society.
us with tools of great service. The remainder
of this paper is concerned with assessing this
The important role that computer amateurs and other
potential and exploring ways in which it can be
pioneers in the micro-computing field have in inexploited.
fluencing its future development is pointed out.
They are challenged to devote effort to ensuring
II. WHY MICRO-COMPUTER TECHNOLOGY IS IMPORTANT
that computers are used humanely to enhance people's
lives and that the negative aspects of computers are
Before becoming concerned about the social impact
minimized. The paper ends with suggested techniques
of micro-computer technology it is wise to see
and applications that may assist in achieving this
whether such concern is of any relevance. Firstly
goal.
it should be shown that micro-computers are likely
to have an important effect on people's lives and
I. INTRODUCTION
secondly that there is some possibility of influencing their course of development. Both of
Everyone agrees that technology has had a profound
these appear to be the case.
effect on modern society. Technology has crept
-into every facet of our personal lives and left
Micro-computing has not yet begun to affect many
no public institution untouched. Along with the
people's lives directly but there is good rea~on
many good things it has brought, there have
to believe that in the foreseeable future- the1r
been serious ill-effects to which no-one is immune. impact will be great. What we are witnessing
It is therefore wise of us to inspect closely new
at the present time is the rapid emergence of the
technologies as they arise to determine whether,
computer from within the-confines of large
and how, we may benefit from them.
institutional settings and into the view of the
general public. Until now most people have not
Two contemporary authors have made significant
really seen a computer or had to deal with one
contributions to the understanding of what we
directly. Rather they have learned of them by
should expect from our technologies, and their
repOrt and communication with them has been via
manifestation as tools, in order that they serve
the mail and through a bureaucracy. Computer
us best. Ivan Illich, writing in Tools for
hardware first came into public view in the form
Conviviality, calls for tools "which give each
of terminals for airline reservation systems
person- who uses them the greatest opportunity to
(back view only), but now they are highly visible
enrich the environment wi~h the fruits of his
in many banks and other institutions. Point-ofor her vision." (p.22), tools "which foster
sale processing, and automated checkout are about
self-realization", (p.25) tools that promote
to burst forth and electronic funds transfer is
self-reliance, autonomy and harmony between
fast approaching. In the home, the last few years
ourselves and with nature. It is essential that
have brought the cheap pocket calqulator and the
control of the tools lie with the individuals
video game that plugs into the T.V. set. Other
and organizations they are intended to serve.
talked of T.V. add-ons include systems to allow
E.F. 'Schumacher has similar objectives, and in
shopping, banking, and even voting from the comfort
Small 'is Beautiful and Technology and Political
of one's living room. We can look fo~ard to
Change, identifies the scale of the technology
finding (?) digitai.a.i!t',cu.ij::J:y in our cars, ovens,
as the most important factor in determining its
" and other appliances, (Figure 1).
social consequences. In general, many present
technologies are so massive that the overall
At work the outlook is for the "electronic,office"
,effect for people is that they suffer,rather ,than
with computerized word processing and greater

FIRST COMPUTER FAIRE PROCEEDINGS

realiance on computer conferencing techniques.
All of these changes rely heavily, though not
entirely, on computing devices built upon the
technology of large scale integration (LSI).
Thus many aspects Of our lives, in buying, in
recreation, in employment and transportation
and communication are going to be affected strongly
by micro-computing technology. We should see
what we can do to ensure that we are better off
for all this.

BOX 1579, PALO ALTO CA 94302

PAGE 43

complete and do not guarantee that the effects
of a technology will be humane, but they do provide a useful starting point.
Small
People are small and tend to get overwhelmed when
they have to approach and deal with things that
are much larger than themselves. It is clear that
the physical size of micro-computers is small. They
can be put on your desk, can be carried around,
taken over to friends' house, the whole thing can
be seen and be grasped at one time. At the extreme,
the Dynabook that is being developed by Xerox is
pictured as being the size of a notebook and
works off batteries and so will be completely
portable and unintimidating in appearance. This
is an important departure from the conventional
view of computers as large, complicated and somewhat
fearsome devices, demanding large buildings, special
air conditioning, phalanxes of experts to care
for them, and layers of bureaucrats to protect them.
Considerations of size apply not only to the actualhardware that the user sees but also to the necessary
back-up technology and institutions as well as the
organizational settings that are required to make
effective use of the tools. Fortunately in most
of these respects the "smallness" of micro-computers
remains in tact.

f~l
The realization that micro-computers are going to
have a major impact on our society is not, by
itself, sufficient reason to become actively
concerned in trying to affect their development.
We need confidence that the technology is somewhat flexible, that it can be changed to some
degree, and further that these changes will be
reflected back on the society that uses the
technology. If on the other hand what we do has
no effect, then we might as well sit back to
enjoy the show and amuse ourselves with our new
toys.
We shape our tools; thereafter they
shape us.
Marshall McLuhan
This statement expresses part of the justification
for concerned action at the present time. At
the moment the computing devices are still crude
and many of the details not worked out; the
manufacturing and marketing systems not fully
developed; patterns of use have not been firmly
established; the myths that apply to conventional
computers will no longer be accepted but replacements have not yet taken hold; legislative regulations await formulation. In many areas the
technology and related structures have not
solidified and although to a large extent, the
future forms have already been determined
by prevailing social forces, there is still a
short time to influence the course of development.
To do this positively and effectively requires an
understanding of the technology and what it has
to offer.
III.

SCHUMACHER'S FOUR CRITERIA:
SMALL, SIMPLE, INEXPENSIVE, NON-VIOLENT

Manufacture and marketing of most of the hardware
components can be done with relatively small firms
and without huge factories and machines. In fact,
many of the products available to computer amateurs
have been introduced by small groups of individuals
operating out of "garages". This is a reflection
not only of the-relative newness of the field (there
hasn't been enough time for companies to grow really
large) but also to the characteristics of the
technology and the particular way in which it has
developed. A good example of this is found in the
"bus" structure that underlies many current microcomputing devices. A "bus" structure is not only
just an excellent way to organize a computer
(there are other ways) but has important consequences in other areas. The emergence of the "Altair"
or S-IOO bus as a de-facto standard has resulted
from, and more importantly, allows, small enterprises to create special products that can plug
into it. Of course this has depended on the fact
that there is no restriction preventing anyone from
doing this. It is not hard to imagine that a
really large manufacturer (mentioning no names)
would either not use such an easily copied and
exploited technique or would find artificial
means to prevent such "abuse" and preserve its
monopoly.
When it comes to the manufacture of the integrated
circuits (ICs) the "smallness" is lost somewhat
since fairly large, though not huge, installations
seem to be required.
On the software end small groups appear to be able
to operate efficiently, perhaps more efficiently
than armies of programmers even with very large
programming tasks. However, when it comes to
marketing a hardware/software combination, size
may be a considerable asset in order to enjoy
economies of scale and as a protection against
competition. Using micro-computers can also .be a
small-scale affair as long as there is no need to
have to plug into large centralized networks as
is the case with conventional television.

Schumacher's four criteria give us way looking at
technologies and evaluating them for their potential
to benefit us. The criteria are not really new and
Simplicity is another virtue, not necessarily
in fact are based heavily on common-sense notions of
related to size, but sharing with "smallness" the
what makes something friendly and easy to get along
tendency to promote autonomous control and selfwith. Everyone has had r~ding experiences with
reliance. If a technology or tool is simple then
tools or institutions and I am sure that they would
it is much easier for people to understand it, to
often find that these criteria were underlying the
success of the encounter. Conversely, unsatisfactory use it and modify it for their purposes, to fix
it when it goes wrong, in short to control it
experiences with technology can often be traced
rather than be controlled by it. Unfortunately
back to it being huge, complicated, expensive, or
micro-computers are simple only in a few, restricted
violent. By themselves these criteria are not

FI ~STCOMPUTER.fAt-REPRoceEDtNGS -----BOX 1519;--PAtO-A-LTO --CA94302

aspects. Most people do not have a great deal of
trouble using computer equipment. Small children
appear to find it simple enough and although
harder to use than most popular appliances
(e.g. telephone, oven, etc.) it is certainly much
easier than an automobile, once some basic skills
and concepts have been mastered. The same goes for
the assembly of equipment from kits and the composing of simple programs. ' However, when involvement goes beyond this level, things become much more
complicated. The ahalysis, design, and programming
of major systems requires specialized skills
and experience. There do not seem to be programming languages and techniques presently available
that allow us to do this sort of thing fairly
,easily. This is due no doubt in part to the inherent complexity of the process but also because
we are still in the infancy of our understanding.
The problem is even worse when it comes to the
design and manufacture of hardware, particularly
integrated circuits. A highly advanced and
sophisticated technology is involved requiring
machines of great pracision and personnel of rare
expertise. With the reliance on experts goes a
loss in control and freedom, resulting in a
situation akin to that with the automobile. Most
people can drive one, put in gas, change tires and
sparkplugs, but when it comes to repairs we leave
our mobility (and pocket-books) in the hands of
trained auto-mechanics. The prospect of actually
making our own vehicle or modifying an existing
one is simply out of the question for all_ but a
handful - it's just too complicated. The present
situation with micro-computers is substantially
worse. with the consequence that at least in the
foreseeable future their popular use will centre
mainly around the purchase of plug-in modules.
Most people will depend on outside hardware and
software suppliers and not be able to re~y on
themselves or others in their vicinity. The guts
of our major machines will continue to be generally
out of bounds.

not require lots of time to start with but does take
a great deal of time and care, making the ultimate
cost fairly high. The purchase price can be kept
down if the software is general and reliable enough
to be attractive to a large number of ,users. One
way to do this is through software exch_ang4jls where
software can be made available and acquired cheaply. The producer would not stand to earn a great
deal of money but would presumably receive some
compensation by being able to enjoy other peoples'
work at a low cost. If this system is to flourish
though, the software must, be very reliable, well
documented and widely accessible. Dr. Dobb's
Journal is a good example of this process in action
at a level of amateur computing. The alternative
seems to be stiff copyright regulations maintaining
high costs for all but the most widely used packages.
Non-violent

It is very important that a technology that is to
find widespread use not harm people nor damage our
natural environment. In a direct sense this is
certainly true of micro-computer technology. The
greatest physical danger to an average user is getting
an electric shock or having one drop on his toe.
Environmentally, no aspect of computer technology,
even with universal application, consumes much in the
way of natural resources, demands large amounts of
energy, nor produces appreciable pollution. We can
say generally that computers "walk lightly on the
earth". (Figure 2) This is because the hardware,
the physical part, is needed only to harbour the software, which is really where the interesting activity
is going on, and thus has to interact only minimally
with the rest of the world. Micro-computing is like
other communications technologies in this respect
in that its effects are usually not directly physical. For instance, the violence that results from
television is not due to its physical characteristics
but rather to the indirect effects on its viewers
over a period of time. With micro-computing, the
violence comes from the ways in which it affects how
Inexpensive
people see themselves and how they relate to others
and 'their environment. Excessive and narrow use of
The criteria of inexpensiveness applies primarily
computers seems to promote mechanistic thinking and
to the financial aspects of a technology, and in
de-personalization which represent and result in forms
fact, Schumacher uses the term "capital cheapness".
of violence that, though not overt, are nevertheless
The capital requirements of a technology are clearly significant. Further investigation of this social
related to its size and complexity, and like them
and psychological violence is vitally necessary if
has an important influence on its control and
large numbers of people are going to come in regular
acceptability. Again it is useful to distinguish
contact with computers, (Figure 3)
between the hardware and software aspects and the
consumer and production ends of micro-computer
technology.
Perhaps the most dramatic and publicized feature
of the "micro-computer revolution" is the drastic
drop in price of hardware components. This plunge
in cost is probably the most important factor
contributing to the rise of popular computing and
the trend shows every sign of continuing. Small
hobby systems are now available for a few hundred
dollars, which is in the order of domestic appliances and within the reach of many people. However,
by the time the extra memory, peripheral storage
and other goodies have been added to make an
interesting system the cost has risen to several
thousand dollars, making it a substantial investment and thus out of the range of most individuals
and small organizations. With further refinements
of technique and the development of mass'markets,
this will probably remain the case for only a few
more years, at least in North America. This contrasts sharply with conventional computer equipment,
whicp is enormously expensive in comparison, and
thus available to only already wealthy organizations.
At the manufacturing end it appears that great
'
investments of capital are not required except
possibly in connection with the production and
IV. ADDITIONAL SIGNIFICANT FEATURES OF MICRO-COMPUTING
marketing of integrated circuits.
Besides Schumacher's four criteria that have Just been
Software, to bring the newly inexpensive hardware
discussed, there are a number of other important
to life, has -not enjoyed the same radical drop in
features that should be considered when examilling
price, mainly because it is a mind and labour
micro-computing'spotential to serve as a humane techintensive process and not susceptible to easy
nology in our society.
automation., To produce high-quality software does

FIRST COMPUTER FAIRE PROCEEDINGS

Fun
Micro-computers are fun! Lots of people, children of
all ages, enjoy playing with them. Computers are not
just serious

business~

They have the potential to

become great mind toys since they are so flexible and
can be adapted to represent such a wide variety of
situations (see Ted Nelson's. Computer Lib/Dream Machines) •
They are such a good toy, in fact, that some people get
so fascinated and turned on to the world they are
creating and exploring in the machine, that the outside
world gets lost.

For this reason, excessive exposure

to computers should not be allowed to drive out other
more physical and social forms of play, particularly
in the case of children. Nevertheless the pleasure
that can be obtained from micro-computer technology
is an important part in making it friendly and socially desirable._

BOX 1579, PALO ALTO

cA

94302

PAGE 45

usually is on a stark, single upper-case type font
of poor definition is often much lower than we are
accustomed to in other areas.

This doesn't have to

be the case. Input to computers is almost always
through keyboards with very little use being made of
devices such as light pens, joy sticks and "mice",
which, in many cases, are more appropriate and- easier
to operate. The languages of interaction with which
we communicate with the machine are also often primitive. Seldom do they offer convenient aids in learning them,are usually intolerant of any "mistake",
rudely insisting that they be addressed in strict
and peculiar ways, and they do not easily admit to
modification to correct their annoying features. In
fact, a computer usually has to be treated rather
like a spoiled-child from whom any desired, out-ofthe-ordinary behavior can be obtained only by those
who are very familiar with the brat or who love it as a mother and are therefore blind to its shortcomings. This is not to say that there have been
no important achievements, for clearly there have
been, but we still have a long way to go before most
people find micro-computers to be friendly, useful
and easy to get along with. An indication of what
is possible in this regard is seen in Alan Kay's
Dynabook Project at Xerox. The aim of his'Learning
Research Group, as outlined in Personal Dynamic
Media, is to develop a computer the S1ze of a note- .
book that rivals in power some of today's biggest
computers. A Dynabook would have visual output of
at least "higher quality than what can be obtained
from newsprint. Audio output should adhere to
similar high fidelity standards." A Dynabook could
be owned by everyone and used "as a medium for expression through drawing, painting, animating pictures,
and composing and generating music", as well as

handling many more mundane information processing
tasks. The fact they have already made great
progress gives credence to the achievability of their
goal and is a tribute to what the combination of
talent, hard work, and money can accomplish.
Exclusiveness

Breakdown of fear and misunderstanding
The widespread use of micro-computers will hopefully
have the effect that people will gain a much better
understanding of computers. This will tend to lessen
the fear of computers based on ignorance and provide
a firmer basis for the real justified fears and thus
enabling people to deal more effectively with the
technology. It should make it much harder for large
organizations to hide behind their machines and abuse
people by insisting they conform to the expectations
of the computer. People will learn that it is not
the machinery that is mainly responsible. However,
there is a danger that the understanding may only be
superficial and that the loss of fear resulting from
familiarity may work against people. Instead, what
could happen is that this simply paves the way for
easier penetration and acceptance of the more questionable aspects of computer technology, such as Electronic Funds Transfer and other large-scale databank
systems.
Redistribution of computing power
The ability to process information quickly and cheaply is an important component in the exercise of power
in present society. Until now the mechanisms for
doing this have rested almost exclusively in the hands
of large institutions while individuals and small
organizations have been pretty well left out. The
wide-spread availability of small, yet reasonably
powerful computers could alter this significantly and
help shift real power, along with computing power,
toward smaller social units. For this to actually
take place not only would the computing power have to
be accessible but also the expertise and raw information needed to go with it. It is not clear that the
organiz"_tions whose strength would suffer in proportion would be willing to relinquish their control over
these as well as the other vital components of power.
In fact, if a multitude of .micro-computing devices
act mainly as peripherals in a highly centralized
system; then power will be further consolidated in
the hands of the massive interests that already dominate society.
Crude, not powerful
Cheap, general·purpose micro-computing systems are
still in their infancy and are yet fairly crude and
lacking in significant power. This is particularly
true of the way in which people have to interact with
them. The graphic quality of output, based as it

Micro-computing is much more accessible to average
people than conventional computing, but still has in
some ways the same exclusive cult ·feeling about it.
For example, informal observation reveals that the
overwhelming majority of active participants are
male. Why is it that more women are not involved?
Is it because machines are inherently more interesting
to men, perhaps women receive cues that they are not
wanted in the area? The simple fact that it is already
so male-dominated may be sufficient to intimidate many
women from participating actively. That the disproportion is not as pronounced among young enthusiasts
could be sign of change, although perhaps computers
appeal to the adolescent in us and men stay adolescent
longer. Reducing sexist and other forms of bias and
involving a wide variety of people is important in
the development of micro-computing. A range of considered viewpoints will tend to protect against the
growth of a widespread technology that serves only the
interests of the small group of its creators.
The sources of discrimination and exclusion are probably deep-seated in our culture and so cannot be removed
quickly. However, there are some fairly obvious mechanisms that can be seen at work and dealt with. One
of the clearest is the way that jargon is used. Any
advanced technology needs specialized language in·
which to express the notions that are peculiar to it.
However, at the same time, and quite unconsciously, it
also serves to exclude those who are not initiated
into the circle (Figure 2). and reinforces membership
for those already in. Deliberate avoidance of unnecessary jargon and careful explanations for novices will
do much to broaden participation in this important
field.
V. THE CHALLENGE TO COMPUTER AMATEURS AND OTHER PIONEERS
It is hopefully clear from what has preceeded, that
micro-computer technology, though suffering from some
major drawbacks, has a number of positive features
to recommend it for wide-spread, human scale use in
society. It is very likely to have an important impact
on society and how it is shaped now, in the critical
period of its infancy, will have long-term consequences.
One group of people who will influence the course of
development and who are in a position to exercise some
choice over its direction are the computer amateurs.
There are two main reasons why this is so.· The primary
reason is that computer amateurs are the first major
'
" group in the general population to have significant
computing devices in their homes. It if catches on,
the market would be enormous and so major manufacturers will be watching closely to see, what happens to

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA

get an idea of what will sell. Behavior patterns,
in terms ~f purchase and use of micro-computer systems
will establish trends that will continue for some,·time.
Hopefully high standards will be set during this early
period when the market is still forming. If people
insist on 'quality systems that are reasonably powerful
and self-contained,that give the user flexibility and
choice to implement interesting, constructive applications, then the result will be quite different than if
people tolerate the introduction of crude pre-packaged
systems of narrow imagination and usefulness into
their homes.
The second reason that computer amateurs can influence
the evolution of micro-computer technology is that
they have the time and freedom to explore interesting
avenues of approach. They are not bound by having to
·make money from the end product so they can try many
leads before achieving a really significant result.
For instance, an amateur computerist could enjoy spending a great deal of time collaborating with a musician on a music system before coming up with a version

that was truly exciting. Almost incidently it could
be made available to many others at very little cost.

94302

Build on existing cooperative and sharing enterprises

The social· and organizational settings 'in which
micro-computer technology is developed and used
will define precedents of some la~~ing effect.
If the work is done in an enviro~nt of relaxed
and open' exchange of information by people in small
local groups that are in close communication with
each other, then the results are likely to be more
humane than if it is done in a competitive and
secretive atmosphere. Computer clubs that are
sprouting up everywhere are good starting points
because they provide an opportunity for people
living in the same area to get together ·to share
experiences, exchange ideas, software and the like.
Club newsletters are a valuable means for keeping
members in touch with each other, and trading them
between clubs expands the communications network
even further. Computer amateurs have of course
their own novel communications media at hand and so

direct computer-to-computer link-ups may prove
useful and at least interesting.

tant pool of inexpensive research talent and possibilities.

Major publ~cations such as Creative Computing,
Peoele's Computer Company (PCC), and BYTE serve
a s1m~lar funct10n of 1nformat10n access and
exchange on a broader level.
-

One consequence of the influential role computer

Work with non-computer people

In other words, computer amateurs represent an impor-

amateurs occupy at the present moment is that they

have social responsibility to others to use their
position wisely. This responsibility comes from
the fact that the actions of computer amateurs
could have a significant effect on other people's
lives and is independent of whether they actually
choose to acknowledge the responsibility. This
is one of the reasons that the term "home and
personal computing" is more appropriate than
·computer 110bbyism" for what computer amateurs do,
even though many regard it as a hobby. Because
it has major social consequences it is not just
like any other high technology hobby. "Computer
Hobbyism" is simply the thin, leading edge of the
much larger field of "home and personal computing".
The challenge to the amateurs and other pioneers
in this field is to accept a share of the responsibility and work actively to ensure that the
micro-computing for home and personal use grows
in humane and positive directions.
VI •

WHAT TO DO?

If the argument has been accepted so far, the question
now is:

"What does one do about it all?1I

To answer

this question directly is very difficult so what
follows here are some suggestions for things that
can be tried, rather than "answers". They are
tentative and sketchy, at best, but should provide
a good starting point.
Research and Discussion

Computers are too important to be left entirely
up to computer people,
A very important step is for non-computer people
to be involved with the development of microcomputer technology. By this is meant people whose
main motivation is to do something particular,
such as draw a picture, make music, organize and
share information, say, and look upon a computer
as simply one, of perhaps several, tools for accomplishing their objective. Computer people on the
other hand (to take an extreme view), look for things
they can use their computers on. They love their
machines and the actual process of using them,
rather than the end product. As a consequence these
two groups have very different approaches. The
computer person can explore wild and fantastic

uses and show what the machine can do. Their vision
is limited by what they perceive to be the bounds
imposed by the machine. Non-computer people will
bring them back to earth and supply interesting
ideas that go off in quite different directions and
which push hard on the limits of what the technology
is capable of. The results of the interaction of
these two forces should be excitement and conflict.

It will no doubt be difficult at times but is quite
vital to the health of micro-computing. Growth by
incorporating a variety of perspectives is essential
to avoid repeating the mistakes of conventional
computing that have resulted from computer people
being given too much unbalanced influence.

Tne criteria of smallness, simplicity, capital

There are two important requirements that must be
satisfied if this collaboration is going to work.
Firstly, it is obvious that the two parties are
going to have to be able to communicate effectively
and this will require a form of commonly understood
language. Each will have to learn a little of the
other's terminology and at the same time reduce
their own use of special jargon. It will take
some time before this gets smoothed out. The second
need is for the non-computer person to be able to
communicate with the machine in a language that is
natural to use and which can express the notions
peculiar to the particular application. To start
with the computer person will probably act'as a
go-between but in many cases the lack of immediacy
will be unsatisfactory and a special language for
direct communication will have to be implemented

cheapness, and non-violence serve as a useful guide

on the machine.

step is to find out more about the
and its social implications.
in this area are

~~~~~tJt:b~in
Discussions with others
expand the base of knowledge
and refine viewpoints. Try to keep a broad view
of one's activities so that technical considerations
are balanced by human concerns; so that people
don't,.get lost in all the bits, bytes, and bauds.
Follow Schumacher's

four principles

in developing both hardware and software systems.
In creating new hardware components other people
with similar needs will benefit most if the design
is kept simple,and inexpensive. With software
development, concentration on high-quality, welldocumented, transportable programs, though quite
difficult to achieve in practice, will likewise
re'sult in widest benefit. Programs should treat
users well by being polite, by providing learning
.aids, good error handling and clean interfaces.
Increasing the sophistication of programs in this
way may require considerable extra effort and
contradict to some degree the aim for simplicity,
though. imaginative approaches are.often able to
overcome dileriunas of this nature. If a program
is worthy of the attention of other people software exchanges and publications like Dr. Dobb's
Journal are a good way of making it ava11able to
't!iiiiiCheaply.

This too Can be expected to take

much time and effort. In short then the message
to the concerned computer person is to get involved
with individuals or small groups, (artists, musicians,
writers, teachers, business people, cooperatives)

that one supports and work with them on mutually
rewardin9 projects. The going won't be easy but
it will certainly be stimulating and, contribute
valuably to the future positive and beneficial use
of computers.
Suggested Applications
Hand-in-hand with these non-computer people there
are a number of promising applications that are
worthy of attention. Some are conventional
applications that can be adapted to a smaller scale,
while others are fairly innovative. Many have
already been tried in one form or another, with
varying degrees of success.

FIRST COMPUTER FAIRE PROCEEDINGS

VII.
Many small projects involving design (e.g. boats,
solar energy, insulation, etc.) require calculations
appropriately done with a micro-computer.
For
example in Ontario a van , equipped with a computer

goes around to small businesses and helps determine

BOX 1579, PALO ALTO CA 94302

CONCLUSION

To return to the question posed originally, "If small
is beautiful, is micro marvellous?', the answer must

be:
Now?

"No!" ,

the insulation needs and potential energy savings.

"Yes~",

Sut perhaps

if we make it so.

Process control

A small machine shop may be able to use a microcomputer based process control system to permit the
easy set-up of relatively small production runs
and the convenient incorporation of custom modifications.
The savings in re-tooling costs could

allow the shop to

remain competitive with larger

operations.

Bookkeeping
Small businesses, theatre groups, farmers all need to

do a certain amount of bookkeeping and often have
neither the time nor inclination to do it themselves
nor the money to hire someone else.

A simple micro-

computer based accounting system may be just what
they need. In Canada, the government provides an
inexpensive nation-wide accounting service to farmers.

There is no reason why this sort of thing cannot be
done on a local basis with a small computer.

Aids for the handicapped
Handicapped people, particularly those who are blind
or dea'f, need to have s.Emsory information converted

to a different form before it can be perceived. A
small microprocessor unit could be very appropriate.
Also some deaf people, because they cannot use the
telephone in the conventional manner already .have
teletypes in their homes so they can communicate with
one another. Adding computing power to their terminals could make them more useful and interesting.

Biographical Details
The author, Andrew Clement, was born in England

in 1947 but emigrated with his parents to Canada
before he could remember anything. They settled

Art

in a semi-rural area near Victoria, B. C. where

The potential for application of small computers in
the arts is very broad.
Computer-based "music-boxes",
animation, stage-lighting, sound synthesis, graphiCS,
poetry have all enjoyed a measure of success.
Garnes
Garnes are fun and, if designed with care, can be

educational - not only for the programmer but also
for the player. Gaming is probably the area that has
received most attention from computer amateurs and

there are already plenty of games around.

A great

number of these are one-person conflict games and
there seems little need for more of them. Garnes that
involve several people, that depend on cooperation
or negotiation, that teach useful skills or encourage

the understanding of important processes would all
be worthwhile and provide balance to the scene. Game

the young lad spent most of early schooling. Eventually he made it to the University of British
Columbia, graduated in 1968 with a B.Sc. in Honours

Mathematics. There followed a two year period in
which he taught mathematics and physics at a
Malaysian secondary school as a c.u.s.o. volunteer.
Upon his return to Canada, Andrew re-entered U.S.C.
and received in 1973 an M.Sc., mainly for having
managed to complete·a thesis with the title:
"The

Application of In'teractive Graphics and Pattern
Recognition to the Reduction of Map Outlines".
He
continued research into interactive computer map-

ping and developed a geographical programming
language known as INTURMAP. He has also been busy
with non-computer people experimenting with interactive public-access information retrieval systems.
The first one was known as the Community Information System and provided a file on social service
agencies in the Vancouver area.
The second system
was Community Memory, which was based on the San

scenarios could be taken from realistic situations
such a ecological systems, government, mathematics,
land-use, physics, transportation and so on.

of INFACT, a Vancouver community computer service

Information/Communication

of "humane computing" with a grant from the Canada

Many small organizations have filing systems that
would be greatly improved through automation, if it
was sufficiently cheap. Not only would the routine

some way.

Avenue, Vancouver,

up-dating chores be much easier, but wider access to

at (604) 874-6740.

Francisco prototype and operated under the auspices
society.

the information in the files would be facilitated.

Council.

Andrew is presently working on a survey
He would very much like to hear from

anyone wishing to contribute to the survey in

He can be reached by mail at 789 west 18th
B.C., Canada, VSZ lWI, or by phone

Richly cross-indexed directories and catalogues would

be produced quickly and more frequently.

Acknowledgements

Mailing

lists, in particular, are a prime candidate for this

type of application of micro-computers. Exciting
possibilities open up when systems of this kind are
set up that allow direct access by a whole community

Of all the many people who have contributed
information and ideas that have found their way
in some form into this paper, I would like to

of users.

especiallY thank Efrem Lipkin, Abbe Mowshowitz,
and my colleagues in INFACT for the numerous,
stimulating conversations that I have shared

People can not only get out previously

stored information but put their own in as well.

The

system thus serves "as a memory and oanmmications medium

for the community.

In fact, the first two prototypes

were called "Community Memory". The original one
operated in the San Francisco area and was later

"cloned" to Vancouver with the help of the author.
Both versions used large time-sharing computers and
work is now under way on stripped down versions that
will run on portable micro-computers.

with them. Gratefully acknowledged also are
the contributions of Ingrid Wood and Jan Morton,
of the Community Planning Association of Canada,
for the typing of this paper, Rennie Wiswall, for the
cartoons, and the Explorations Program of the
Canada Council, for the financial support that has

allowed me to become better acquainted with the field
of "humane computing".

This list of suggested applications is quite incomplete and unspecific, but it does give an ideas of
some of the things that an individual or group with
time, energy, and a small computer in their hands

could fruitfully undertake. They all represent
promising steps in the development toward a humane
and powerful technology.

Bibliography and References
These are some of the books and articles that
relate to the subject of the social relevance of
micro-computing.

PAGE 47

FIRST COMPUTER FAIRE PROCEEDINGS

BOX J579.PALO ALTO CA94302

Ken Colstad and Efrem Lipkin, community Memory:
A Public Information System.
Pr~nt of a paper presented at the Computer
Science section of ' an IEEE conference, San
Francisco, .February 1975.
E_rich Fromm, The Revolution of Hope: Towards a

Humanized Technology,
Harper and Row, New York, 1968.

..

Karl Hess, Community Technology
SPARK, Vol. 4, #2, pplO-15, Fall 1974.

---

Ivan Illich, Tools for Conviviality
Harper and Row, New York, 1973.
Learning Research Group, Personal Dynamic Media,

Xerox - PARC Publication, 1976.
Abbe Mowshowitz, The Conquest of Will: Information
Processing in Human Affa1rs,
Add~son

Wesley, Reading, Mass., 1976.

Ted Nelson, Computer

Lib/Dre~

Machines,

Hugo's Book Serv1ce, Ch1cago, 1974.
Victor Papanek, Design for the Real World,
Thames and Hudson, London, 1972.
E.F. Schumacher, Small is Beautiful: A Study of
Economics as if People Mattered,
Abacus, London, 1974.
E.F. Schumacher, Technology and Political Change,
Reprinted from Resurgence in RAIN,
Vol. III, #3, pp8-l0, Dec. 76.
Joseph Weizenbaum, Computer Power and Human Reason:
From Judgement to Calculation,
Freeman, San Franc1sco, 1976.

Norbert Wiener, The Human Use of Human Beings:
Cybernetics and Soc1ety,
Doubleday, New York, 1954.
Mike Wilber & David Fylstra, Homebrewery
Software Priesthood,
BYTE Magazine, Oct. 1976.

VB.

the.

PAGE 48

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

THE COMPUTER IN SCIENCE FICTION

The computer in Education

Dennie L. Van Tassel
Computer Center
University of California
Santa Cruz CA 95064

since the computer is so ubiquitous in our life
it is not surpr1s1ug it is a common character in
fiction and poetry. The main thrust at this aL"ticle
is about computers in literature, but! will mAntion
a couple robot books for those interested in robots.
There are several common motitfs in computer related
literature.
The first is the computer run society.
computer Dun Society
In This tYPe of story the whole society is run
by a computer.
l\oD"rt Heinl"in'r; !hs: !122ll 1l! i!
Harsch Mistress is an excellent beak about a colony
oii--"tiie--iiiooii-- which is run by a friendly computer.
H.inlein's book is unusual because the computer is
good.
Meinlein' s other books are som"wha t compu tor
oriented and are all yood, especially 2im2 ~nQyqh

t5:I

PAGE 49

19,!~.

Usually the computer is evil.
D.
F.
Jones
has two books £21Y§§Y§ and Ih~ fi!ll 2i ~2l~2§~2'
In
these books the computer ruthlessly runs the world.
The book was also made into a movie called The
[Q!Rill f!£j~£l. Kurt Vonnegut's £bi!Y~£ gii!li2
about a society where ~ll work is done by machines
and only the privileged all allowed meaningful jobs.
Everyone else is reduced to make-work and welfare
program.

-is

In Ira Levin's :n.!l! !!~!:f££!: J;i!1 W~ again seA a
computer run society which is very unpalatable to
humankind.
In Levin's book tbe computer completely
ccntrcls everyone, including their work, sex, and
friends by a combination of drugs ann surveillance.
one more story along this line is E.
11.
Forstp.r's
"The lIachine stops", where we lta ve it computer run
society and people have no control over how it is
run and even forgot how it was started.
In this
story the computer tries to be a benevolent despot
and fails.
Challenging the Gons

The next common motift is humankinds attempt at
something previously forbidden, and failing. LiKe
the old myth -- if you challenge tne gods you are
'Icing to gP.t it in the end.
Old hooks that fall in
this motiff are I!:sll!~ll§!:~lD
(must reading for
comfuternik~
and Capat's play B£ Q£ 1& Next we
have Michael Crichton's excellent book !h~ r~IID!nal
HsD. Some doctors install a computer in a mentally
sick man's head to contrel him.
rveryone gets what
they deserve in this fast moving book. Crichtor,'s
other books are excellent too. The opposit~ is done
in J;ll§ll!.l!~J! ~!l!j!!§,
by Eando Binder, where human
brains are implanted into computers to control the
machines.
flumor
Humor is rather rare in literature and life but
there is some good computer humor.
Ih!! :all ltllI! by
Michael Frayn is about aO computer research institude
where the researchers try to write literature,
simulate sex and sports, and teach a computer sorue
"thics.
The book is very funny and 'on" might even
think of some known research institude when reading
the book.
Another humorous book is John Barth's
!il!~!! !i2i!!.=Al21, which takes place on a la rge college
campus,
where opposing sides, using computp.rs, war
for control of the campus.
In David Gerrald's !hS:I!
!!lI!!i~
liS!! Qll!l we find an adolescent computer with
all the humor of an immature genius.

The
fictional
computer
assumes
various
positions in education.
In "Cybernetic Scheduler"
by Ed d Doerr; (i n Van Ta ssel' s IJ;;fl
a cOmpu ter is
~iven responsibility for scheduling all teachers and
classes.
But chaos develops when the computer
informs some of the teachers they are unsuited for
t.eachiny and should in fact be taking classes
themselves.
In addition students are advised to
change majors aLd drop out of school.
In B.C.
Weir's "What Happen to the Teachiny Machine" (in
Lewis's Q!!A!11
people have forgotten how to ask
questions because of teaching machines. In Isaac
Asim,ov's "The Fun They Had"
(in Asimov's aalII
school children do not go to school, but stay hOlle
with their teaching machine.
Two lonely children
wonder what it was like to go to school with many
other children.
computers in sports
Computer use in sports is rather rare in
literature.
But there is a ycod humorous book, !!!.!l.
1s§! !1i!ll l§ Q~!: by Marvin Karlins, where we find a
c em pu ter run baseba 11 team. 11Hl Ja!l£!.£2111£ Q!Yl!!.ei.£§
LY Hal Higdom is another book about computer use in
sports.
A good anti-machine

book is Samuel Bulter's
In this book written in the 1890's a
society destroys all machines less machines dominate
humankind.
In Ih~ Il!l~ 2t 1h!l ~ig J;;21!!EY!:~! by Olaf
Johannessen, we have a society where computers are
the dominant species and the computers gives its
view on the historical place of humankind.
Other Books
~~!l~h9!!.

There are several other books besides this one
that have some computer related fiction.
Groff
Conklin's ~£i~!!£!l. 1!£!:i2U Ihin!l11g !1l!£hlU~§ contains
both computer and robot fiction.
Damon Knigh t' s Il!jl
H~U! a!!!.i!£ is a sillilar
antholo~y.
Ih~
£9!!!.el~il!:
£2!E~!~~
by Dennie Van Tassel is textbook reader
about cOllputers which contains both nonfiction and
fiction,
including some computer related poetry.
?obert Baer's lh~ Qj.gi1!l Y!!lli!U is a nice little
book
which has a section on computer related
fiction.
£2l!!E~!~~L
£9l!!2~!:!l!L
£2!!!EY1~!L
I!!.!l.
££!!!EY!£! !n Ei.£!i.2U aUg ~!§£ by Dennie Van Tassel
is an anthology devoted entirely to computers in
fiction and verse.
~his
book also contains soae
songs tram the IBM songbook,
which was used
the
19110's.

Qt tts:U sUg tti!£h!n~§ by Arthur O.
Lewis Jr.,
is an antbology ahout human beings relationship with
machines.
Finally
check
Marcia
Ascher's
n lbU ogra ph y a t
the elld of this chapter.
Many pf
the followillg books in my bibliography have been
through both hard cover and soft cover editions but
I will mention the edition I have.
!libliography
"Computers in Scienc" Fiction".
£21!!.e~1~!§ ling !Y!2!!!s!:19D.
November, 1973.

11 sche r, Marcia.
A sillO v,

Isaac

H£ti211

Il!!~§.

and Grotf Conklin.
§h2!1 §£i£n£~
New York: Collier Books.
1963.

Baer, Robert M.
1l!!l !ligH!l
Massachusetts:
Addison-Wesley
1972.
Barth, John.
Co.
1966.
B inde r,

g11~§ Q2~1=~2I.

Ea nd o.

!ills!n.

Reading,
Publishing Company.

New York:

Doubleday

Avalon

Books.

1965.
(;onklin,
11!£hl!!~§'

Crichton,

Groff, ed.
2£i£!!£~
fi£ti2U
!h!n!lng
19511.
New York: Vanguard Press.
Michael.

FIRST COMPUTER FAIRE PROCEEDINGS

A!fred A.

Knopf.

1972.
lh~

Frayn, Michael.
1965.

BOX 1579. PALO ALTO CA 94302

Gerrald, David.
Ballantine Books.

Iii

I~I.

New York:

..hen .!!s!:li£
1972.

Ace BookH.

jj!!.§ 21£.

New YOJ:k:

Heinlein, Robert A. lh£ 1221 i§ s Harsh Mistress.
New York: G.
P.
putnam·s-Berkley.--19is.-------Higdom,
Hal.
Ih~ tl££1!:2Ii£§ Ql1!Ei£§.
Avon Books.
1973.
Jerrold, David. ~h~1 .!!a!:11£
Ballantine Books.
1972.

New York:
New

QI~'

!!!.§

J ohan nesson, 010 f;
Ih£ Ial1l 21 .th£ Q1g
Nell York: Coward-McCann, 'INc.
1968.
Jones, D. F.
Sons.
1966.

£21Q§§!!§.

New York:

£Q.!!l.E!!1~!:.

Putnam's

G.P.

ran

New York:

Jones, D.
F.
Ih~
1974.
G.P.
Putnam's SOilS.

Karlins, Ma rv in. lh£ l,a§1 !lall i§ QJU"
Cliffs, New Jersey:
Prentice-Hall, Inc.
Knight, Damon.
Books. 1968.

Ih~ !I~.ti!l

New

!h£

Van Tassel, Dennie.

£Q!£Y!1l£L

£QIR!!.t~!:

in ri£1i2D

Thomas Nelson Inc.

£Ql!!~1£i!1

Science

1977.

allg

Famdon

!li!£hiD~§'

New

£2l!!£!!1~!:.

Research

£2U!!.t~I:.L
!£L:2~'

vonnegut, Kurt, Jr.
g!i!l~!: giang.
Reinhart and Winston.
1952.

Belmont

York:

Lewis, Jr.,
Arthur O.
21 !!~n ilD9
York: E. P.
Dutton Co.
1963.
Van Tassel, Dennie.
Alto,
California:
1976.

Englewood
1969.

New York:

lll!!i!£·

Levin, Ira. ni§ g!u:f~£1 1!i!1.
House. 1970.

I!~

York:

Palo
Associates.

COJU!.!!.t£n

New

York:

New York:

Holt,

PAGE 50

FIRST COMPUTER FAIRE PROCEEDINGS

COMPUTER POWER TO THE PEOPLE: THE
MYTH, THE REALITY AND THE CHALLENGE

BOX 1579. PALO ALTO CA 94302

PAGE 51

puter projections had anything to do with his defeat but, in
fact, his fear was that by the time the voters went to the
polls in the western states the major national election was
locked up. In 1976 it wasn't quite locked up by the time they
went to the polls, but frequently it is and therefore-people
may say "why bother" or "gee, there's a bandwagon; I want to

David H. Ahl, Publisher
Creative Computing
Box 789-M
Morristown NJ 07960

The following is a lightly edited transcript of a presentation
originally given at the "Man and the Computer" symposiwn at
Dartmouth in December, 1976. Modified versions have also been
given at several other educational and hobbyist conferences.
Some 80 slides and graphics are used in the live presentation
most of which, unfortunately, cannot be reproduced here.
INTRODUCTI ON
We all know that computers are around us, they're invading
our lives along dozens of dimensions. We see them in super
markets - the little product code that you find on the side of
virtually every food and grocery product you buy can be read by
an optical scanner connected to a computer. Computers in
department stores - a little "magic" wand, actually a tiny
laser device, reads a product code from the tag. Medical
facilities - hospitals frequently keep all their patient
records on computers. When you're admitted you often undergo
some kind of questioning process. One psychiatric hospital
out in Utah takes the entire patient history, and in fact, does
the preliminary diagnosiS of all entering patients by means of
an on-line computer program. College admissions, for instance,
Fort Lauderdale Community College, and hundreds of others use
on-line computers. Every time you pick up the telephone and
dial it you're actually using the largest general purpose computer in the world - the switched telephone network. Magnetic
ink character recognition in the bank; sports stadium score
boards; and so on.
My premise is that now, some 30 years or so after the invention of the computer, it's having a tremendous impact on our

lives. It is having an impact on our lives similar to what the
printing press did, but instead of taking some 400 years to make
its effect known, the computer is having a vast effect in something like 20 or 30 years. We just can't escape it. So some
thirty years after the invention of the computer we decided it
would be a nice idea to find out what people think about computers.

Do they view it as a master, a slave, a dictator, a

get on it and vote for the winner." Or, "I was going to vote
for the other guy, and he has lost, so I can't be bothered
going to the polls." Well that may not affect the outcome of
the national elections, but it has a tremendous affect on the
outcome of local elections and local bond issues. So, John
Tunney at least was pretty upset about using computers in the
forecasting of election results.
"Computers dehumanize society by treating everyone as a,number." On that statement we had some ambivalence - some people
agree, some people disagree - certainly a substantial number of
people are a little bit fearful and do feel like the computer
is dehumanizing things by treating them as a number.
We asked five questions to get at whether people understand
the role of a computer. Do they really know what it's good for
and do they know its applications? One of those statements was
"Computers are best suited for doing monotonous, repetitive
tasks." Well 80% of the adults agreed with that although only
67% of the young people did which gives rise to the hope that
young people can see that computers are good for doing more
than just dull, repetitive tasks. Are computers a tool? Yesa pretty substantial agreement that they are a tool. I think
that's a good thing. But I think it matters a lot whether
people view it as an intellectual tool or whether they are
thinking of it as a plain, ordinary tool such as a hammer, for
example.

=1111111111111111111111111111111111111111111111111111111111111111111111111111111111111 :

§=

=
-=
=
~= = :

AOUL T (N-3001

Stro'IIIIY
or Mo.tl'l

Stro",ty
or Ment/v:

Impact
on tho Quality
of Lif.
•Computer
Computers
will improve
education.
• Computers will improve law enforcement.

A,86.6%
81.9

Di..,,..
5.9%

A,,"
84.2"
70.0

D
'4.5"
10.1

• Computers WIll improve health care.
• Credit rating data banks are a worthwhile
use of computers.

78.6
64.2

5.3
13.4

54.1

11.9

64.0

7.6

91.6

4.0

66.8

17.7

Computer Threat to Society
A person ,today cannot escape the

::

Computer polls and predictions ioflu-

repetitivA, monotonous tasks.
• Computers are a tool just like a
hammer or lathe.
• Computers slow down and complicate
simp'e business operations.
Computers will replace low-skill job.
and create jobs needing specialized

=.
=
=
_

=
=.
::
=.
=

-= .

_

48.1

27.5

44.2

28.9

37.4

50.3

39.9

30.8

18.7

62.6

20.9

42.S

80.0

10.3

51.0

21.8

anea the outcome of elections.

Computers dehumanize society by treating
everyone as a number.
Computers isolate people by preventing
normal social interactions among users.

- ~n;::;::::;!r~~::~:~;;::~:

First of all we asked some questions about what you might
call the quality of life. Did people feel that the computer
was going to improve various facets of society? Well, for the
most part, there was pretty good agreement that computers would
improve education somehow, a very substantial agreement that
computers would improve law enforcement, a little less agreement, particularly among younger people, that computers would
improve health care; and some agreement that computers are
worthwhile for prevention of fraud through credit rating data.
This last one is interesting. The question was asked in the
AFIPS/Time Magazine survey just four years before this one; the
percentage of people that felt credit checking was a good
application dropped from 74% to 64%, so 10% more people today
have some doubts in contrast to four years ago. I guess in
four years many people have gotten stung in one way or another
by credit ratings or other foul"ups.
We asked some questions about the threatening nature of computers. Do you feel you can escape the influence of computers?
Well people for the most part felt that they couldn't; a surprising number of young people felt they could - I'm not quite
sure where they were going to go to do it, certainly not the
United States. There was some feeling, particularly pronounced
among west coast respondents, that the computer could influence
the outcome of elections. Senator John Tunney of California
was one of the biggest critics of the use of computers to forecast the outcome of elections. Senator Tunney, if you'll
recall, was defeated in November, 1976. I'm not sure if com-

3.3

influence of computers.

=.
=
=.

THE MYTH

72.6

14.7

81.3

23,4

17.6

68.4

11.4

68.8

71.0

15.0

61.8

14.11

8S

many jobs

=

Computers are beyond the understanding
of the typical person.
Computers make mistakes at least 10%
of the time.

:_~:_ . :'~~~~~~;::.~e~':":::~~ :;.~e:~.'.k",
• It is possible to design computer
systems which protect the privacy of

=

-

5===_-:

=
=
=
=
==
-=_
=
_

training.
Computers will create
as they eliminate.

=
5:
=
=
=
=
=
E

.:

62.5

16,4

40.0

29.1

25.2

61.6

30,8

49.2

9.6

76.7

10.3

60.0_

UnderulJnding of Computen

_

--=
=
~= = =

Strongly
or Mostly

=.
=
=.

monster - in fact, do people really understand what the computer
is all about and what it's good for? We took a survey among
both adults and young people with 17 different questions. We
posed statements and asked them "Do you agree with this state~
ment or disagree?" and got their responses. We also had some
open ended questions and we continue to ask people open ended
questions. Like, "If you had a computer in your home, what
E===_-=
would you do with it?"

YOUTH (N-5431

Strongly
or MOItly

::

_

i
=
5

STATISTICAL RESULTS OF
SURVEY OF PUBLIC ATTITUDES
TOWARDS COMPUTERS IN SOCIETY

_

67.0

19.3

7:L3

13.3

60.2

26.4

48.6

15.9

data.

:11111111111111111111111111111111111111111111111111111111111111111111111111111111111111

~==

e=

Do computers slow down and complicate simple business operations? Some people felt that they did - I'm not quite sure
who. There's a substantial agreement that computers are going
to replace a lot of jobs and create jobs that need specialized
training, and some people really fear that they might not be
qualified for the jobs that will exist after the "computer revolution". Also on the jobs issue we asked whether people feel
that computers will create as many jobs as they eliminate?
About two-thirds agree but that leaves a fair number that disagree. You have to remember that people have 'always been
fearful of any kind of industrialization or technological
breakthrough. The Luddites were anti-technology - to them the

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

industrial revolution meant the machines were going to take all
the:.jo,bs. Well, it just didn't quite work out that way, and
don't really think computers are going to take all the jobs
either.
Then we asked a couple of questions to'see if people really
understand the computer itself. We first asked are computers
beyond the understanding of a typical person? The response was
mixed. At least a quarter of the people think that they are
beyond their understanding, but I'm encouraged by the larger
percentage of people who disagree. "Computers make mistakes
10% of ,the time." You have to feel sorry for the 10% of the
people who do think that computers make mistakes this often.
In fact it is the programmers and operators who make the mistakes and not the computers. But in these questions we gleaned
a little bit of intelligence that someplace between 13 and 19%
of the people just actually don't know what's happening, don't
know what computers are all about, and don't know who's running
them. They think the computers are running the people rather
than the other way around. A substantial number of people just
don't know, which is also upsetting. So, there's a substantial
portion of our society - at least a third or so - that just
doesn't know some of the fundamental issues and facts about
computers. We asked one last question - is it possible to
design computer systems to protect the privacy of data? Wellnot even the computer designers know for sure so I don't think
we could expect much from people that we asked.
So all in all, we have some ambivalence - people optimistic
on some counts and pessimistic on some other counts and some
other things that they just don't know. The ignorance is probably most apparent when you ask someone what would you do if
you had a computer at home? A computer? What do you mean a
computer? You mean like a'hand calculator? Some people
thought we ,meant robots. "Well, maybe I'll have it serve me
martinis when I come home from work." They just couldn't quite
visualize a computer at home. A computer is supposed to be
something that goes behind glass doors and is on raised flooring and requires a lot of electricity." I don't have the kind
of home that would suit a computer," said one.
. I guess this mixture of attitudes 'really shouldn't be too
surprising. The every day perceptions of a computer are formed
by people in the media and elsewhere who really don't know what
computers are all about either. For example, newspapers, comic
strips, TV, and so on. For example, what dOeS a newspaper'
cover? They're going to report the computer error - the problem with the computer. For example, how many of you read a
couple of months ago about the Shop-Rite in Springfield, New
Jersey with brand new laser scanning systems at the checkout?
This was the grand opening day and they really crammed the
people in. I mean they had hundreds of people all filling
their carts with these grand opening specials. People were
lined up at the cash registers with two and three carts each
laden with groceries. Seven or eight deep at every cash register and all of a sudden, bang, the system went down. Well, not
only did it go down but it locked all the cash drawers. So
there was no way of making change. They couldn't use the cash
registers manually. There was just no way of opening them up.
Rumors started flying around - people said, "The cash drawers
are locked; the doors are going to lock too; we're going to be
locked in here forever." And then there was a rumor that a
replacement computer was going to have to be shipped in from
Texas and they'd have to wait until it arrived! It was wild.
Finally the manager decided that the best course of action was
to give each checker a pencil and some brown pap,er bags which
were at the checkout position, and have them add up manually
the groceries in these laden carts. People were there for
literally hours. The interesting thing is they ,did not lock
the doors and more people kept streaming in. They didn't want
to lock the do,ors because of this panicky rumor inside the store
that if we lock the doors we might be stuck here. They didn't
want to start a riot. Well anyway the newspapers had a field
day with the story.
Most of you have heard about the frivolity out in Southern
California when McDonalds had a sweepstake. To enter, all that
was required was a 3 x 5 card of your own. Students at one
fraternity programmed the computer to produce entry forms - 1.2
million of them and then they stuffed every ballot box of
McDonalds in Southern California. They won ,90% of the prizes
in the contest. McDonalds was very upset about it - they said
it was anti-American. I think it was very American; it showed
a lot of ingenuity and creativity. In fact, McDonalds awarded
duplicate prizes to people that were not members of this conspiracy to defraud them. The winning fraternity invited Ronald
McDonald to make the prize presentations over at their fraternity house for dinner, but he declined the invitation. Actually, Burger King got the best publicity out of this. They
gave a $3,000 scholarship to ,the university in memory of the
prank. Again, the newspapers had a wonderful time blaming the

PAGE 52

whole ,thing' On a, computer.
A college student at the University of Arizona insured the
life of his guppy. He put down all ,the correct information on
the mail order insurance form - height 3 centimeters long,
weight 30 centigrams and so on. It died of course, as most
guppies do, some four or five months later. He submitted a
claim for $~,OOO which was what he had insured it for. The
insurance company said it was an invalid claim - the computer
made a mistake by accepting this party. Well the computer
hadn't made a mistake - it was a programmer who hadn't allowed
for somebody that was 3 centimeters high. It wasn't the computer. But the newspaper, how did they portray it. Sure'another computer error.
In Swansea, Wales, a young man of 17 applied for a drivers
license and passed his test shortly after. But when his license arrived, it bore 12 ,endorsements for a whole array of
driving offenses, plus a 28-day driving suspension, Police
proved sympathetic when it was found that "the computer at the
license office had run wild. The system has not been operating
for long," said an official.
There was a cute little notice printed recently in the
Chicago Tribune. "A COMPUTERIZED bill had this notice on the
bottom: Failure to receive this bill is no excuse for nonpayment of the amount shown." Why capitalize "computerized"i
Does that mean the computer printed that notice on the bottom
of the bill. As if the computer could have made that up out
of the blue sky? The computer is the scapegoat for the post
office now - that's what's really happening!
A woman in Shreveport, La. got a gas bill for $42,474.58.
A customer representative at Arka Gas Co stated, "the computer
went haywire and some of 'those bills got out." Computer error?
Hardly. Good for the newspaper? You bet!
Movies are another way that people form perceptions of the
computer. For example, in 2001, remember when Commander Bowman
finally gains access to the memory banks after Hal has been
harrassing him for half the trip and he yanks out the circuits
one at a time. Finally, Hal breaks down as Bowman performs the
first successful interplanetary lobotomy. The movie Colossus have you seen that one? Colossus "wakes up" and gains sentience very much like the computer did in Heinlein's book, The
Moon Is A Harsh Mistress. Well, Colossus gains it while itrshooked up to its Russian counterpart. The computers are in
charge of the National Defense Systems of both countries and
the two computers decide between them that it would be kind of
neat if they held the population of both of their countries
hostage. A movie that will be coming out shortly called Demon
Seed has a computer in it, Proteus IV (appropriately named)
equipped with an ominous blue arm enforcer with which the computer keeps people hostage, mainly Julie Christie in the movie
(that probably makes it worth seeing even if you don't like
computers). Three movies and three impressions of computers all false.
Some people get their images of computers from books (not
too many because not too many people bother to read books anymore). Science fiction writers are probably the one group of
writers in the country that are portraying future computers
uses reasonably realistically and making some half decent speculations. Unfortunately, very few people read science fiction
so we don't have to worry about 'many people getting a realistic
view of computers from that source.
So, consequently we know a little bit from the survey what
people think about computers and little bit of how these impressions were formed from my rather incomplete discussion of it,
but I think you can fill out the missing pieces. We know too
that if we ask the average person what would you do if you had
access to a computer or if you had a computer in your home he
really doesn't have a very good idea. In fact neither do
many professionals or manufacturers. The fact is that we're
really not very good a forecasting the future. We really can't
and never have forecasted future technological innovation or
invention very well.
Back around the turn, of the century who would have forecasted life today as it actually is? In those days the best
guess of what the Panama Canal would be was a railroad pulling
ships across the isthmus. Back in those days it probably seemed
reasonable. I'm sure if the Wright Brothers had asked the
drivers of ox carts what they would do with an airplane, they
probably couldn't have given them a very good idea. Henry
David Thoreau, one of our leading philosophers commented when
he was told that the telephone would permit people ~n Maine to
talk to people in Texas, "but what does a man in Maine have to
say to a man in Texas?"
THE REALITY
It's pretty clear that we can't forecast 70 or 50 or probably even 30 years very well, particularly with a high technology item such as a computer. So let's just look 5 to 10

FIRST COMPUTER FAIRE PROCEEDINGS

years into the future. Even so, we can't foresee exactly when
everything is going to occur. We would certainly expect that
processor instruction speed would continue to increase very
rapidly. Packing density will also continue to dramatically
increase. Currently, we are within two orders of magnitude of
the human brain. Actually, the theoretical limit for semiconductor devices is packed more densely than the human brain.
DIGITAL CAPACITY AND COMPUTING

SPEED
1017.

bits

I add time CIIC.)

10 1
10 1
10 1
IBM NORC

1010j
'09

i

lAS JOHNNIAC

IBM 701

t-:,oc':~!~~

MIT WHIRLWIND I

,OB

UNIVAC I

EDVAC

~ hVbrid

eSEAC

107

ENlr

1()6

"Jan.stors
vacuum tubes

105

HARVARDMKI
digital and analog

,04
'940

1960

'950

1970

Currently, bubble memory circuits in Bell Laboratories about 1
centimeter square will store about 1.5 million bits.

lcf

...0

~

lOOK

Z

10K

I!!
::;)
IL

0

a::

w
III
:IE

lK

::;)

Z

100

10

lL-__
.01

~

.1

__

~

____L-__

1

10

~

100

__

~

__

lK

~

10K

SELLING PRICE ($0001 OF CPU PLUS MEMORY

Coupled with miniaturization, prices are rapidly falling.
Let me tell you that more than one manufacturer is a little
bit alarmed at the projection of hardware prices approaching
zero. The indication is that as the prices come down the numbers of units sold go up very dramatically. This applies not
only to calculators but to computers as well. What happens as
prices come down? What do you think the value of this ratio is
today?
Cost to program
line of code
line of code
Cost to execute
One hundred to one? A thousand to one? Ten thousand to one?
Wrong. IBM says the ratio is 100 million to one and that was
two years ago! Given the current increases in processor speed,
it's probably a lot more than that today. What that indicates
of course is that the human element is by far and away the most
important thing in computers and technology today 'in making
them all work.
'
So what does all this mean when you put all this technology
together? Well, obviously it means smaller terminals, terminals
that fit in your pocket. Sophisticated and very small color
video cameras. Calculators with as much power as a computer of
20 years ago. Hobbyist computer kits that are within the price
range of a quarter of the households in the u.S. Close to
30,000 hobbyist computer kits have been sold as of the end of

BOX 1579. PALO ALTO CA 94302

PAGE 53

1976. Technology means people talking to other computers and
terminals or new high speed terminals or plasma panels that are
built into your phone. A panel that can be written on with a
light pen or typed on; or display information from a computer,
data bank, directory, or from local storage.
'
Today there are over 100 manufacturers of personal computers
and periperals. At Creative Computing we can't possibly keep
up with all the new product announcements for new hobbyist
computer kits and peripherals. We started a new product section
in early 1975 and the hardware portion was about one page. In
the Jan/Feb 1977 issue it ran 9 pages of close spaced descriptions of new hardware. It's a revolution. Two hundred computer
stores open now and a new one opening every four days. Retail
,computer stores where you go in you can buy yourself a micro~
processor, a computer kit, or peripherals.
Extensible, user defined, simple languages are being developed. Harvard has a new language called ECL. It's not like
today's simple language, say Basic or Logo. ECL doesn't use
constructs that have to be absorbed into your intuition but
rather you use concepts that are already part of your intuition,
part of your language and then you construct the computer language out of that. Whether you're a banker, a baker or a professional programmer you can produce a computer language that
does exactly what you want.
Out at Xerox Palo Alto Research Center they've got a thing
called t.he "Dynabook". The original idea was that Dynabook
should in every way be better than a book. It can display
printed pages on its screen: black on white, white on black,
red on green, etc. It can display pages in any style and size
typeface. If you have some visual problems and you want a page
in large type, it displays it in large type or'for reference
material it can use very small type. Not only can you read
things but you can write things on it. You can just draw a
circle around a word and move it to someplace else with a
little arrow and the computer moves it for you. You can edit
your material from a keyboard if you'd rather. You can strike
over lines and they disappear. The next eime you push a'button
you get all you text nicely justified on the screen. Actually,
it's better than a book in every way because you read it, you
can write it, and you can change it. It's also better from the
graphical sense. It would be nice i f the illustrations in a
book could move (kids love little, pop-up picture books). The
illustrations on Dynabook can move with full animation. In fact
not only can they move the way that they're programmed to move,
but if you'd like them to move in some special way, you simply
take your light pen and draw over the illustration and let the
computer sequence through your frames. This is reality. This
is here today. It's not quite the size of a book today; it's
about the size of 3 bread boxes, but it's not going to be too
long before it is the size of a book. In addition to having
book qualities, it's also a general purpose computer with the
ability to do parallel processing on eight different levels.
When you think of it, that's the way human beings think. When
I'm walking alone, for example, one part of my brain is thinking
about putting one foot in front of the other, another part is
thinking "it's cold out I'll be glad when I can get inside,"
another part is thinking about the speech I'm going to give
tonight, still another is thinking about the beer that I'll
have later on and so on. So your brain is processing information on a parallel basis all the time. Well, wouldn't it be
nice if you could have a computer that could do that too and
have the output of one level serve as the input to another.
That's precisely what Dynabook provides. It's a phenomenal
machine. I'd like to think that within 10 years it will be as
commonplace as the pocket calculator is today.

--

Uoorvo

Fill... Ho... CoM,.... " _

I· feel one of the keys for getting computers into the home
at least is the widespread availability of cheap high-quality
software. One possible vehicJe for bringing this about is the
video disc. Quite inadvertently, a stroke of luck perhaps, the
storage technique employed by the disc is binary, or digital..

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

Just what's needed for a computer. So while the player will be
brought into the home for entertainment, it's real power lies in
he fact that if you couple the video-disc system with a microprocessor and keyboard you have incredibly powerful audio/visual/computationaltl'ducational/recreational device. One videodisc can store 10
bits of information, the entire encyclopedia Brittanica for example, or a very comprehensive software
library. You could have Jackie Stewart introducing the Monaco
Grand Prix, taking you on a pre-recorded ride around the circuit
and then turning the controls over to you. Or Kirk handing you
the controls of the Enterprise just as the Klingons are about
to attack. Or Fran Tarkington coming off the field putting you
in as quarterback in the Super Bowl.
THE CHALLENGE
There's no question that in 5 to 10 years solid state and
real ted technology are going to put some fantastic things well
within the reach of everyone who wants them. It's equally
clear that most people have little idea of what they'd do with
a computer if they had one. Hence, we have quite a chasm
between the insiders (those who have learned about computers
from school, work, or hobby) and the outsiders who don't know
much about computers and don't really care (today).
It would be nice to think that this chasm could be bridged
by education (like the new math or metric system?), but it's
not likely that schools will really face up to computers until
every kid has his own (pocket calculators allover again).
Business and industry are so wedded to large EDP Systems with
most DP Managers pretending that microcomputers are just toys,
hence we can't expect any help from that quarter. Most likely
it will be the people, plain ordinary folks, who see a friend
with a computer and decide to get one of their own. And as
this increasingly happens, we're going to have the most massive
domino effect you ever saw - calculators and CB move over you ain't seen nothin' yet. Computer power to the people is on
the way!

PAGE 54

FIRST COMPUTER FA-IRE PROCEEDINGS

BOX 1579, PALO ALTO CA IM302

PAGE 55

PSYCHOLOGY AND THE PERSONAL COMPUTER
Kenneth Berkun
928J Street
Davis CA 95616

Computers are useful as tools not just as
an end in themselves, but also for two other
reasons 1) for teaching or doing things
(applications) and 2) for what they can teaoh
us about mankind (womankind). 1 will discuss
only brei fly the first area, applications, and
will spend the majority of my time on the second
and perhaps more theoretical area of oomputers
providing insiBht to people.
The study of psychology and applications
of psycholo~y do tie in to computers, and
sp~cifically they oan relate to micro-oomputers
in the home and in school. For instanoe. the
famed programmed text developed by B. F. Skinner
which lead to his invention of the teaching
machine.
A modern example of the teaching
machine is the computer. This is evidenced by
the success of the Plato system.
A micro computer in the home could b~
supplied with a bunch of lessons in prom plug
In packages, and everyone being such good little
students would flock to use them. Th~y might
also be networked with a central processor for
record keeping.
Then there is a"more esoteric aspect, that
of computer counselors. The most famous example
of that is Joseph Weisenbaum's program ~lizah,
and its "Doctor" version. This program simulated
a Rogerian therapist and his active listening
approach when talking over a terminal with a
person. Very "effective. Sort of frightening
too. his views on the program are chronicled
in his book "Computer Power and human Heason".
And computers have one other advantage in
the educational system than say textbooks,
they're different, and funl
They hook people
so that you want to use them. Flashing lights
and buzzers may not be necessary but they sure
are exciting. So kids may do much more work on
a computer than they would anywhere else. This
Is a major advantage, at least until they become
so common place as to be boring.
Now I will discuss the second area,
computers as an InsiRht to human behavior.
Basic to this is the question of why study
human behavior, or why is human behavior
important. This" Is not the place to discuss
that, I will assume that it is important. If
you felt It is not, then you probably wo~ldn't
be here.
One thins that we've all noticed In
computers Is that at times they behave very
differently, for instance, someti~es they seem
almost parental, scolding us for our errors,
and bllljn~ us for their time, kicking us off
for exceeding limits etc.
At other times it is very serious and gets
the work done very efficiently, like a person
who is reasoning with logic and care.
And
sometimes It just goofs off messes around and
nothing seems to work, or it literally plays
games like a kldl Looking at that 1 see three
basic ways humans behave, emulated on their
most hunan technological development •
This is Important because It points out
how man seems to be a technological creature by
nature, and society does Influence technology
and vice versa.
There are a lot of similarities between
computer operation and human function. It" is
interesting to note how systems are designed
that way. For instance human thought processes
run very si~ilarly to timeshare systems, as far
as central processor design. Also humans have
the original interrupt system, as demonstrated
by the "cocktail party" effect. I/O is also
handled similarly, for instance by ·poillng".
~lth the advent of the micro computer we

see a new emergence of the compulsive programmeror haCker. These are also described in Joseph
Weizenbauw's book. Now they can live with
their computer eat with their computer and even
sleep with their computer. Eut is that any
diffcrent than say, the compulsive mechanical
tinkerer, the ham of the early 1900's, or even
the alchemists of medievel daysl
Now how does this relate to personal
computersl ~irst and foremost it marks the
invasion of the computer into one's personal
life. gven more the Frankenstein complex Is
trigGered. will computers take over the world1
Within ten years ~erhaps, every home will have
a computer. We necd to make computers more
personal, more human and less scary. If people
understana and or can control them then they
won't be as afraid. Things out of our control
scare us.
Therefore t s~e the role of the personal
computer as it exists now, the hobby computer,
as opening the pathway to general acceptance,
if not understanding of computers by the public.
Computers are a way of life, more so even than
T.V.
Ken Berkun is a senior at the University
of California at Davis. His major is an
individually concieved one consisting "of Computer
"Soiencc and ~sychology, and called "Man Wachlne
Interaotlon". he Is a computer operator on a
Buroughs Bb700 at UeD.
he is active at the
Davis Counseling Center and the Sacramento Area
Institute for Uroup Treatment, where hc Is In
training. he is currently teaching a course on
public speaking in Sacramento.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 56

HUMAN FACTORS IN SOFTWARE ENGINEERING
James Joyce
Computer Science Division
Department of EE & CS
University of California
Berkeley CA 94720

This is a discussion of how human factors affect software
development and integrity. My interest in this area was first
focussed by the article "Guidelines for Humanizing Information
Systems" in the November, 1974, issue of Communications of the
Association for Computing Machinery. For this discussion I c~arac­
terize as basic components of software engineering six aspects:
1. Human user interface
2. Maintainability
3. Portability
4. Efficiency
5. Correctness or reliability
6. Ethical considerations
Human interface, briefly, encompasses those aspects of a program
a user experiences: protocols, error messages (if any), or uncertain
silence broken only by the whirring of a fan. Maintainability is
also, in away, an aspect of human interface, but from the point of
view of someone who fixes or. modifies an existing program. Portability refers to the problem of getting a program that works on
one machine to work on another. There have been many discussions of portability, but they center on hardware limitations or
software techniques. I argue here that human factors impinge
directly on the portability of software.
Software efficiency has received more attention than all of
the other factors listed here -- either .singly or combined. Gerald
Weinberg [1972] has argued persuasively that efficiency is as
strongly influenced by human factors as any other component of
software engineering.
I have combined the questions of program correctness and
program reliability because they seem fraternal twin aspects of a
central source of worry: how can I depend upon the answers I get?
Yet they are separable as well. For example, that the program
actually meets all the requirements of the problem is a matter of
program correctness [Elspas, 1972], but how often the program
crashes is a matter of reliability.
The last component of software engineering to be discussed
here, ethics, is one that appears the least rooted in reality. QUestioning the ethics of writing or copying software seems as ethereal
and philosophical as questions about whether the person who commits robbery is the true criminal or whether the true criminal is
Society -- that is, unless you happen to be the one who is robbed.
We will examine the ethical aspects of software, particularly fraud
and copyright protection, and a possible solution to piracy of
software.

1. Human User Interface
1.1. Error 477
Perhaps the component of· software engitleering in which
human factors are easiest to recognize is human user interface.
Anyone who has been programming for any length of time eventually elicits as output what I call Error 477. Just what Error 477 is
remains a mystery, because "Error 477" is the entire message; and
even if there is a reference· manual with a table of explanations of
the messages, Error 477's explanation is as cryptic as the error
message itself.
Partly human-oriented messages, such as those by Li-Chen
Wang in Palo Alto Tiny Basic [Wang, 19761, are still at the "Error
477" level. His three error messages, "How?", "What?", and
"Sorry" are, it is true, differentiated by the kind of error condition
that evokes them. And chatty error messages would undoubtedly
swell Tiny Basic into something much larger than at present, thus·
making it less available for machines with small memory. However, the program could have been quite a bit more helpful if it
had printed, in addition to the error message, a character on the
line under the Basic statement in question to indicate where it
stopped translating. Although no guarantee that the error is truly
in the indicated location, it is nonetheless quite a bit of help that
can be provided at a small increase in program size. This is not an
attack on Wang; I chose Tiny Basic as my example because I
admire the job Wang did very much. It is, I feel, one of the better
representatives of assembly level coding practices today.
Donald Knuth's Turing Award Lecture to the Association
for Computing Machinery contains a plea that goes further than
mine about error messages; he urges programmers to make programming languages and even control languages "a pleasure to use,
instead of being strictly functional." [Knuth, 1974] I fully agree
with Knuth's statement, but am willing to settle for good error
messages. Objections to the effect that elaboration of error messages would consume large amounts of main memory are, as conceded above, true. But just as writing a program so it will run in a
small amount of main memory is seen as a challenge, so too writing a program so that it is a pleasure to use can be seen as a similar
challenge. After all, the personal computer movement seems to
me to be an insistence that computer technology is not the private
domain of institutions -- whether business, educational, or governmental -- but is available to people. It follows, then, that the error
messages should not be bureaucratic gobbledegook, but human.
Making the human interface relate not to the machine's
requirements and limitations alone, but to the user's desires,
seems a continuation of the same philosophy that began personal
computing. From a strictly commercial standpoint, a large number
of potential computer users will not purchase equipment and

FIRST COMPUTER FAIRE PROCEEDINGS

software until it is easy to use for the person who has never held a
soldering gun nor looked up an error message. And we cannot
expect people to memorize commands willingly; they will always
manage to forget something that is hard to remember -- as they
should.
A discussion of why people forget would take far too much
space here, although some basic reasons can be stated briefly. One
is that we forget because there is too much to remember. In a reasonably complex program (the kind we feel good about writing)
the individual parts may at one time have been known so well we
could recreate the code at will. But by the time we have created a
large enough program, the parts we worked on earlier begin to
fuzz and fade. This is not due to time, but to attention to something else -- either another part of the program, or another program. Yet time, too, enters as a factor in forgetting. In terms of
human interface we may forget (either from time or other pressing
details) just how something was to work. Typically this occurs
when we are explaining to someone else how to use a program.
We forget a detail, a restriction, and if we are lucky we remember
it correctly when we are telephoned by the person who believed
the first explanation was all there was to it. But surely these
remarks cannot be applied to that large number of programs that
are "one time only"!
It has been my experience that even my most casual program is something at some time I may wish to show off; this,
regrettably, does not mean every program is all that good, but that
what I wrote as a one-shot program is inevitably something someone else wants to use or do. A well-done program must be able to
be used without arcane knowledge. It should even be 'helpful to
users wanting to use it.

1.2. Help and Control-d
The first test I apply to any program is to input a one-word
message: help. A system that cannot help is at the mercy of
misunderstanding just as much as the user who receives Error
Message 477. Help may be offered in many forms. On large computers I have seen it expressed as a telephone number to call
(which is not all that much help at 8:30 pm -- and less at 3 am), a
menu of arguments to use with the help statement to receive specialized help (as in "help files" for information on how to move,
remove, create, etc.) files, or a short summary of the available
commands, or a tutorial without menu. I regret that I have not yet
seen a microcomputer program that responds to help other than to
issue Error 477 in any of its many equivalent forms.
One area of human interface in which microcomputer programs are, on the whole, more advanced than programs for mini
or larger computers, is in free-format input. Sometimes, unfortunately, free format is interpreted to be that the data items may
be any length, but if they are separated by more than one blank
then things will not work properly. Being able to ignore redundant
blanks is simple and makes input much easier. Reluctance to make
such allowances seems hard for me to distinguish from laziness.
Similarly, having to enter commands or data in specific positions is
a requirement always for the convenience of the programmer and
not for the user. Let me make that point more strongly: rigid
input specifications are for the convenience of the programmer
writing the program and not when slhe uses the program.
Although software for microcomputers is ahead of that for the
larger computers in emphasizing free-format input, it shares with
larger computers the mystique of control-d.
To those of us who are used to the control key on a terminal, a fuss over control-d may seem unwarranted. Yet in teaching
naive users (and we were all at one time naive users) to use a text
editor I have found those commands requiring the control key with

BOX 1579, PALO ALTO CA 94302

PAGE 57

another (and sometimes two others!) the hardest to make into
second nature. This isnot to urge a ban on control characters, but
to suggest that befortf control-anything is made a command there
should be serious thought about other ways of signalling what is
intended. The same can be said of the ")off" combination that
allows graceful exit from APL; ideally, commands should be something the user can guess rather than something to memorize.
1.3. Guidelines for Interactive Systems.

A student of mine [Tossy, 1977] in a seminar on human
factors in software engineering came up with several ideas for
designing interactive programs so they are easy to use. They are:
1. Command names should be mnemonic.
2. A frequently used command should have a short
name or an abbreviation.
3. The program should always accept the full length
name of a command, even if a standard abbreviation
exists.
4. Both the full command name and any 'standard
abbreviations should appear in the index of a user's
manual.
5. Make provisions for a user becoming more sophisticated about a program as slhe uses it.
6. Protect the user from the results of "dumb mistakes."
He generalizes his rules into two principles:
1. Make the program forgiving; humans make mistakes.
2. Make the program convenient; humans are lazy.

What programmers seem to forget, time after time and program
after program, is that the two principles apply equally to both
sophisticated and naive users -- to you and me, for example.
Such concerns lead naturally into a discussion of another
factor in human interfacing: that awful wait while the panel lights
blink, during which the most hardened of programmers wonders
whether the program has found a new infinite loop or is only setting all of main memory to 7s. Much of the anxiety of waiting is
not hearing anything. In Samuel Beckett's play "Waiting for
Godot" the wait endured by the two protagonists is eternal, unending even when the play ends; but to some extent they are kept
waiting by the appearance of Godot's messenger. The message he
brings is, simply, wait. Some such message from a program that
runs longer than 10 seconds (say) might be a good idea -- as well
as the capability of suppressing such a message if that is desired.
For the human user's sake there should be some indication the
machinery is still working, still "there". Thus I would like to add a
third principle to the basic two given here:
3. Make something happen; humans are easily bored or
made anxious.
2. Maintainability

Strongly tied to human interface with users is the problem
of program maintainability. Error 477 enters our discussion again,
this time not as a message we have generated but as a system message that lets us know there is something to fix. The first question
is not the logical one of "What is it I have to fix?" but "How do I
fix it?" If this question seems out of place, we might note that it is
really a more sophisticated version of "help!". How do I fix it may
be answered variously by identifying the problem and then fixing
it, or asking for help in either locating the problem or in fixing it.
No one who develops software really wants telephone calls from
users who cannot understand why the editor they are using suddenly goes into a loop -- or simply stops. No one who programs

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

wants code written six months ago to stop working. I could be
somewhat cynical and say six weeks rather than six months, but it
does not seem necessary for the point.
There are, no doubt, some individuals who are so good at
programming that the very code communicates its purpose to any
reader who knows the programming language. I believe once or
twice I have known such people; the world needs more people with
such ability; I wish I had such ability. And there are some very
impressive higher-level languages with block structures that
encourage structured programming. Although we know structured
programming is not enough to make a program readable, it is evident that structured programming helps readability [Knuth, 1974].
So far, higher-level languages are, by and large, unavailable to
microcomputer owners; such languages require too much main
memory or an auxiliary storage device, such as a disk, for successive passes of the compiler -- or simply cost too much. Microcomputer programming is done in either assembly language or Basic by
and large, and remarks about maintainability are directed toward
what is possible within those languages.
2.1. Routine Size
In structured programming a key concept is that of breaking
the larger problem into modules that are in themselves complete;
that is, the module does something. Sometimes we find a module
that does too many things, which we perceive as the product of an
inadequate application of structured programming. When we are
designing a program we may manage to create modules that do too
much. How much, though, is too much?
I would argue that "too much" is as dependent upon physical
size as'it is upon conceptual size of the module. Yourdon [1975]
suggests a size limit in his recommendation that "at each level of
the design, try to express the implementation of a module in a single page of coding or flowcharting." What we are able to perceive at
one time strongly influences what we can process in our minds.
Thus modules should never be larger in size than the crt screen
can hold, or one 8 112 by 11 inch sheet of paper. My choice of the
American standard paper size is based on the nearest hard-copy
analogy to crt screen size. I would gladly relax my pronouncement
of page size to my true intent, the unit of page size on the hardcopy device, but in the case of teletypes that leads to an obvious
absurdity: the whole roll of paper. The routine size of one page or
screen includes all comments associated with the routine. There
are few things more irritating than flipping between pages or trying
to squeeze two screens of code onto one screen.
2.2. Comments
Having introduced the topic of comments into the subject of
human factors in software maintainability, I think it only fitting to
discuss commenting in greater detail. I have heard people who
should know better claim that a well-written program needs no
comments. It is possible that a particular well-written program -even one in assembly langUage" -- is so clear it does not require
comments; yet I know of no technique or language or attitude
toward programming that would make comments truly unnecessary. Of course, it is also possible that too many comments can
obscure the code they were created to explain. Comments require
an effort to write that seems quite apart from the effort to program, and for that single reason they often do not get written.
Other reasons a programmer might offer for not writing comments
include:
1. They take up too much space in the program.
2. They only repeat code anyway.

3. They should be put in after the code is running or

PAGE 58

else they will be just another thing to change during
debugging.
The list of three is not exhaustive, but it is representative.
The reason comments seem to take up too much space is
that usually they are not properly integrated with the code; the role
they play in understanding the program needs to be essential rather
than documentary. If the comments echo the code they will at
best be documentary, and perhaps a nuisance to be ignored while
reading the code. Bad comments are the result of the
programmer's self-fulfilling prophesy: seen as taking up too much
space and repeating the code, comments will be produced to do
just that. Comments are a feature of programming languages, and
like any other feature they should be used when needed. The
problem with comments, then, is not in their number or size, but
when in a program they are needed. The function of a comment in
a program is to help remember what is going on [Weinberg, 1972],
and thus they should be introduced as a part of the code.
To some extent the programming language itself (excluding
machine language) helps us remember what is going on. Commands are imperative utterances to do something; declaratives
identify elements in the program, such as variable names, transfer
labels, or routine names. Between commands and declaratives we
may indicate what is to be done'to (or with) what items, but not
why. And it is "Why" that we ask when we read uncommented
code: why LAI 002 -- load the value 2 in the A register of the 8008
microprocessor cpu? The activity, though complete enough for a
computer, is not complete enough for the human; to complete the
instruction it is necessary to supply motivation, a reason. The
feature for explaining things in a programming language is a comment.
While programming the programmer has the reason for
writing particular code in mind. That reason may be the wrong
one for the problem, as when we code a bug into our program, but
it is a reason nonetheless. Without the reason for the code clearly
indicated, the program literally has no reason for "running" in the
programmer's mind. The program does run (or at least is emulated) by a human when. the code is read or written: the value 2 is
placed in the A register of the 8008 cpu which exists in the
programmer's imagination. At the moment of coding we supply
the reason, the comment, in our mind; it is, then, an inaccurate
transcription of our code to omit keying the comment when we
key the command or declarative. As elsewhere in' computing, the
term for that inaccuracy is "bug".
Further, comments that echo the code are buggy comments.
"LAI 002" is not the reason we code "LAI 002". No action is its
own reason, even if one is not speaking of computer programs. It
is a part of good programming to express the comment as correctly
as the command or declarative. This appears to call for a comment
for every command or declarative, and for some routines I do not
doubt that necessity at all. We also know that there are" many
instances in which such commenting would be too much. How do
we know? I believe the answer to that question is the same as the
answer to "How tricky is too tricky when writing code?" -- another
question I cannot answer in words. BUt, through experience, we
may learn the answer to both.
One technique for creating comments is to think
to comment giving reason,
command
or,
command
to comment giving reason

FIRST COMPUTER FAIRE PROCEEDINGS

or, for variety,
command
because comment saying why
or perhaps
because comment saying why.

BOX 1579, PALO ALTO CA 94302

PAGE 59

mnemonic names should be avoided, but that they are not a foolproof solution to symbolic names. The problem of mnemonic
names in Basic is a non-problem in that the names may be only
one character in length -- with a $ suffix if the variable is to hold
character strings or an expression in parens if the variable is the
name of an array.

command
Naturally, all those tos and becauses would be tedious to
see on our crt, and the ability to avoid repetition is a test of our
ability to write good code. The important thing to remember is
that the function of the comment is to provide the reason or
motivation for the code, and we should choose the wording for a
comment accordingly. Such an attitude toward comments will
undoubtedly make manufacturers of ram, paper tape, and teletype
paper very happy and the rest of us pleased at the insight -- but
with one more thing to remember to do.
There is another real advantage to writing the reason along
with the action, one we recognize in other forms of thinking.
When something, some problem, is expressed in a form external
to our mind we tend to get a clearer idea of what the problem is
and are then less likely to make a mistake based on not thinking
the thing through. Or, if we do make a mistake, we stand a much
better chance of identifying the mistake (and thus correcting it) if
it is in a form external to the mind investigating the mistake. In
plainer terms, it is easier to spot a flaw in thinking if it is down on
paper or up on a crt. This is certainly one function of a project log,
used in many large-scale systems development projects and by
some of us working on individual projects as well.
The value of writing the reason along with the code and
rereading such reasons along with the code later seems to be so
obvious I mention it here only to have said it. The question I find
myself asking (when I ask questions of programs) is "Why is the
code there?" I know perfectly well what the statement does (if it is
a language I know), but not why it is being used.

2.3. Variable Names
Since I am arguing here that the statement and its reason
should be represented together in a program, it follows that just as
the comments should be written clearly, so should the statement.
We generally have no control over the operation code mnemonics
in an assembler, but we do have control over the variable names.
Everyone, it seems, agrees that variable names should be
mnemon'ic -- an aid to memory in identifying their purpose. However, as Weinberg [1972] warns, mnemonic symbols expose us to
error because
1. They tend to make programs seem "sensible" by their
satisfaction of our general' preference of sense for nonsense.
2. They play upon our tendency to believe in the name,
rather than the thing named; consider the seductive
nature of a variable named FIVE. What value does it
contain? Are you sure?

3. Similar names can be confused; for example,
SQUARE for the square of a number and SSQUARE
for the sum of such squares differ by only one keystroke.
Exposure to error is perhaps preferable to no idea what the variables in a program mean. If names in a program are assigned in
alphabetical order of occurrence, we wHi find it pifficult to interpret
the value we assign to the variable D. Weinberg's point is not that

3. Portability
Mnemonic symbols, meaningful comments, and structured
programming are aids to maintainability and also portability. If a
program is good it will be one that gets shared -- or rather, one
that we will want to share. Even if we are not the sharing kind, it
will be one we want to take with us when we move onto another
computer. Even assembly language programs can be made fairly
portable if there is macro capability on at least the new computer.
The human factors in portability may be viewed through three concerns: equipment considerations, relocat!}ble code, and the ability
to "plug it in" and have it run.

3.1. Equipment
Equipment considerations are perhaps more financial than
human factors; but where there is something financial there is
something very human at work: a fallacy I call the "Just As Good
As" {allacy. This fallacy has several variations: a system with 12K
of ram is just as good as a system with 16K or more because if you
are good enough you can do anything in 12K; and, this teletype is
just as good as the other one with upper and lower case because
you really don't need lower case; and so on, with examples being
possible from all areas of human choice. We compare what we are
willing to settle for (or afford) with what we would rather have,
and deduce "just as good as". It is a natural defense mechanism to
try to keep us from feeling we have let ourselves down. Of course,
"just as good as" is a letdown; the easiest measure of the truth of
this is the amount of emotional heat with which someone who has
settled for "just as good as" will defend the decision against someone who has the bad manners to suggest otherwise.
In personal computing, as in stereo systems and automobiles, our taste (or lack of it) must be balanced by our bank
account or line of credit. Computer components are dropping in
price, but they are still expensive enough that software requiring
16K and a floppy disk will find fewer systems to run on than one
requiring 16K and audio cassette. Actually, the target software for
microcomputers presently seems to be an 8K machine with paper
tape reader or audio cassette. Even as I write this I am aware that
equipment costs are bringing "just as good as" and "would rather
have" closer together, and before long they may be as close
together as "just as good as" and "would rather have" in the case of
stereo equipment. Until then, software must avoid dependencies
on expensive or extravagant hardware if it is to be exportable to
many microcomputer users.

3.2. Relocatable Code
Relocatable code is a topic more obviously a matter of
software than are equipment considerations, and is generally associated with large system software rather than with microcomputer
software. My use of the term "relocatable code" refers to code that
does not rely on being loaded into the same address space to be
run each time. The difference between relocatable and nonrelocatable code may be illustrated in terms of how a particular
memory location is referred to. If we declare a location with the
name K, some assemblers associate K with a specific address, such
as 764. Every time the symbolic name K is used in an instruction
the assembler substitutes 764 for K. The resulting program is

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

dependent upon K being at position 764, and all other parts of the
program are tied to specific locations as well. But if the assembled
code does not refer to 764, but to 764 plus a value in a register
that is the address of the beginning of the program, the code can
be loaded into any segment of memory and the addresses will be
resolved as offsets from the beginning of the program. Such a
register is being used as a "base register"; base registers are in wide
use on larger computers. On microcomputers I know implementation of a base register for relocatability is a software feature, not a
hardware feature.
Base registers imply there is a need or a desire to load a
program into various locations in memory, and such a need has
not yet been demonstrated here. Interfaces between devices on
some systems require certain absolute locations in memory for
buffers, status registers, etc. If on a given system we want to load
a program at a particular location and a device interface requires
the same location we may find that the device, the program, or
both may do unexpected and possibly unwanted things. The easiest solution to such a problem is to eliminate the problem. If the
code can be relocated by an appropriate value in the base register
then the conflict over particular locations does not exist. Writing a
program so that it is relocatable heads off future complications
over where the program has to be in main memory in order to
run.
The first two aspects of portability, equipment limitations
and relocatable code, appear to be arguing for practices contradictory to each other. We must keep in mind that most microcomputers have small main memories, but we should also write code
so that it may be run in any location in memory. The synthesis of
these two concerns requires the belief -- justified by past performance -- that memory costs are coming down. Two 8K relocatable
programs could be loaded in 24K with room to spare, and one or
the other run as needed without having to load and reload code.
For example, with the code for Shooting Stars and a text editor in
memory a user could switch between them while writing a paper,
thus time-slicing work and play. If neither Shooting Stars nor the
text editor are relocatable, all the memory the machine can address
will be of no help.
3.3. Plug it in and Go
When I began as a professional in computing in 1967, IBM
was making great claims for upward (and parallel) compatibility.
This meant that a program running on an IBM 360/30 would run
on an IBM 360/67. Generally that was my experience, and
apparently others also found it a strong selling point for the IBM
360 series. For microcomputer software the corresponding
strength might be in self-loading programs. That is, programs
arrive with a bootstrapping loader on the front as a part of the program so that the overall effect is that the program can be "plugged
in" and run with minimum user involvement. This may appear to
contradict the spirit of personal computing, of wanting to do things
with one's own computer. But the owner of a computer does not
really want to do everything, just those parts slhe wants to do.
Getting ready to play with a program is nowhere nearly as enjoyable as playing with it -- especially if some unexplained detail must
be guessed by the user before the program will load properly.
What may conflict somewhat with the "plug it in and run it" aspect
of software portability is the problem of relocatability. But then, if
two programs are to be in memory at the. same time it is likely
only one of them really has to be relocatable. Besides, there is
nothing that prevents a self-loading program from using a base
register.

PAGE 60

4. Efficiency
Being able to load and execute a program in one. step may
seem more an aspect of overall efficiency than of portability, and
perhaps the discussion should be continued as an aspect of human
factors in efficiency. The program that handles details for the user
is intuitively more appealing than one that requires attention to
housekeeping details. Such a factor accounts for many users'
preference for a higher-level language over an assembler, and the
overwhelming preference of an assembler to machine language.
This sense of the word "efficient" is not the usual sense when one
is discussing a program, however.
4.1. Fast Programs
I think it is fair to say that when most people speak of an
efficient program they are referring to a fast program. Stories of
programmers who spend a week to save a few cycles of cpu time
are legion and share the same moral: be sure the time being saved
is worth the effort and time to save it. For microcomputers the
important unit of time is not the machine's cycle, time or the time
it takes to add 1,000 numbers together, but whether a human user
notices a delay in response. This does not mean sloppy programs
are efficient if the user does not have to suffer through a slow
response, but that before a major effort is invested in optimizing a
section of code the need for such optimization, in terms of the
effect upon the user, should be established. If we are writing a
program solely for our own amusement we can do anything we
want in pursuit of that amusement; but I have already remarked
on how programs we thought were one-time only seem to turn
into programs we would like to share.
When I teach an assembly language programming course I
carefully avoid any lectures on efficiency, yet my students turn in
programs with notes calling my attention to how a particular programming trick saves time, code, or both. What is at work is a
human factor, pride in one's skill as a programmer, that leads most
people I have taught to find ways to make their programs run fast.
Such pride can, however, turn into an obsession that impedes the
progress of the very program being developed with such pride.
4.2. "Tight" Code

Another human factor relating to program efficiency serves
as a summary point in our discussion of efficiency. As Weinberg
[I972] puts it, "when we ask for efficiency, we are often asking for
'tight' coding that will be difficult to modify." The coding trick that
seemed such a stroke of genius at first seems inevitably to turn
into a stumbling block in understanding the code when it is to be
changed or fixed later. This does not mean we should strive to be
inefficient, of course.
In The Elements oJ Programming Style Kernighan and Plauger
discuss efficiency considerations, arriving at the following rules
relevant to us here:
1. Make it right before you make it faster.
2. Make it fail-safe before .you make it faster.
3. Make it clear before you make it faster.
4. Don't sacrifice clarity for small gains in "efficiency".
5. Keep it simple to make it faster.
6. Don't diddle code to make it faster -- find a better
algorithm.
The occurrence of the construction "Make ... before you
make it faster" (or something very similar) so often in this list certainly seems to place efficiency in a subordinate po~ition to other
concerns. Such subordination does not mean efficiency is unimportant, but that for efficiency to be. most valuable in a program

BOX 1579, PALO ALTO CA 94302

FIRST COMPUTER FAIRE PROCEEDINGS

the other criteria must be met: correctneSs of the program, the
program's ability to recover from error, the clarity of the program,
and overall simplicity of the program. I have taken the liberty of
interpreting "Make it right" as something speaking about program
correctness because I believe that is the thrust of that point, and
also because program correctness is the next topic in this ,discussion.
S. Correctness and Reliability.
As was said in the introduction, program correctness and
program reliability seem to me to be fraternal twin aspects of a
central source of worry: how can I depend upon the answers that I
get? If a program is correct (that is, it has no bugs in it at all and
works for all possible input) it wil1 be a reliable program; unfortunately, a program that is reliable may yet contain a bug that has
not been found, and therefore is not a correct program. But such
fine distinctions aside; both program correctness and program reliability have in common the paramount concern that the program
work properly for all data that is given it.
The area of program correctness is rather difficult to summarize, but the tutorial in Computing Surveys [Elspas, 1972] is the
best attempt I have seen. Why the area of program correctness is
so difficult to summarize may be found in the approach of those
working in that area: they are trying to prove programs are correct.
The point of being able to prove programs are correct has been
summarized by Elspas as "It has been the hope of many practitioners and users of programming that the development of the programming art into a science would have the effect of relegating
programming errors to the minor nuisance category." The techniques for proving program correctness are ingenious, but they are
too complicated to be used on most programs even by those who
make proving program correctness their specialty.
Proving programs correct is a rather mathematical
endeavor, but that is not why it is a complicated matter to prove a
program 'correct. We simply do not yet see how to prove programs
are correct in any reasonably short manner at the present time.
Such a lack of easy to apply techniques must be accepted as a fact
of life for the time being until they are developed. That may be a
long time away, warns Elspas, who does not foresee "any fundamental breakthroughs that wil1 dramatically simplify the process of
verifying a program." We can want correctness in our programs,
but we must settle for reliability.
Software reliability may, for the sake of discussion, be
divided into two concerns: will the program/system crash, and the
documentation of bugs. A program with only one bug may sound
like a very reliable program, but if that bug is in the code that handles carriage return we would not be very pleased. Every language
translator I have used ran with known bugs, but the bugs did not
occur so often that they interfered :with typical processing. The
translators were, despite their bugs, reliable -- within certain limits.
As the bugs were discovered they were handled in any of several
ways: they were fixed; they were scheduled for being fixed at some
future time; they were reported to the person responsible for maintaining the translator; or, they were published (sometimes in the
form of a hastily written note).
People who do not program, or those who are rather new to
programming, find any of the alternatives other than fixing the bug
most curious. However attractive fixing the bug may appear, we
must be sure of the impact of the fix on the program as a whole.
If the program has been designed with maintainability in mind, a
change in the code intended to fix a,b,l.\g will not create strange
surprises in code within another routine even if that change is not
correct. It is all too human and all too common to perceive a par-

PAGE 61

ticular area of code as the problem area, to write code to fix the
problem, and to accept that code as fixing the bug even though it is
not tested carefully. Stories of such behavior on the part of individuals are common enough, but although I should know better it
always seems to surprise me when I hear of a software company
doing just that.
The motivation for changing the code is laudable for, after
all, the idea is to get the program working again as quickly as possible. But an iI1-considered change can make the software even
more unreliable than before. We must balance how many bugs are
in the software against how often they are encountered in use.
Van Tassel [1974] suggests several criteria for jUdging program reliability:
1.
2.
3.
4.

Mean time between errors
Mean time to repair errors
Percent of up-time for program
Number of bugs vs calendar months

Of these, perhaps numbers 1 and 4 are the most meaningful to us.
They might serve as good starting questions we might like to put to
software vendors who want us to buy a compiler. This assumes
that the vendor would give us correct answers to our questions, an
assumption that apparently is not always the case. Such a discussion, however, is better carried out in the next section of this
paper, which is concerned with human factors and ethical considerations.
6. Ethical Considerations.
There certainly is no need to argue that human factors have
a direct effect upon ethical aspects of microcomputer software.
Such an effort is obviously present whether or not we feel ethical
concerns derive from an absolute, eternal set of values or not.
Ethical considerations include (but are not restricted to) fraud and
violation of copyright.
6.1. Fraud
A typical dictionary definition of fraud will read to the effect
that intentional perversion of the truth in order to get someone
else to part with something of value constitutes fraud. One might
argue that fraud is too strong a term to use regarding someone
who makes claims about performance that the software cannot
meet. Perhaps the term should be lying, not fraud. Software that
fails to live up to promised performance may do so in degrees
varying from small glitches to defying anyone to load it; surely the
one word fraud does not apply equally to all. Of course, it does
not. And deciding just when and where it does apply legally is a
matter for someone in law to decide, rather than someone in computing. But I make no pretense of deciding a legal matter; my concern is ethical. It seems to me that anything software is advertised
to do should be something that was thoroughly tested and
debugged. When we buy something we naturally assume it is
being offered in good faith: that it works, at least in the aspects
advertised, and one can expect reasonable performance from it -such as being able to load it. As more people enter the microcomputer software marketing field we are seeing a dual effect on
software quality; competition brings pressure to bear to create
better software, and the desire to be competitive is accompanied by
a temptation to stretch the truth a bit about what a program will
do. As users of software we have more than the old saw caveat
emptor, let the buyer beware, to help us: we have the hobbyist and
personal computing magazines.
Magazines such as Personal Computing, Byte, Creative Computing, and Dr. Dobb's Journal can and to some extent do serve as a

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

guide to available software. As microcomputer-oriented magazines
continue to develop I would expect reviews of software to become
.a standard part of every issue. This may have the effect of concentrating power in the hands of a few at first, but in time reviews of
software would come to be regarded in the same light as reviews of
books: not the last word necessarily, but a guide to what is around.
This is not to say that one should buy software only if it is favorably reviewed in a computer magazine. It is to say that a search of
the literature may save the software consumer much frustration
and disappointment. Searching through all issues of the various
hobbyist magazines is lengthy, tedious work, and the idea of waiting for Reader's Guide to Periodical Literature to get around to listing
all the hobbyist magazines does not appeal too much. But there is
a guide published to the literature we can consult now: it is Periodical Guide for Computerists, by Eldon Berg, that indexes over 1,000
articles and letters from fifteen magazines read by computer hobbyists. The table of contents is quite extensive, and definitely
saves hours of search through back issues. Berg is publishing the
guide semi-annually, in July and December. Those wishing a copy
of the guide may write him directly at the address given in my
bibliography at the end of this paper.
6.2. Copyright
Our concept of copyright comes from similar English laws
and licenses dating from approximately 1518. The United States
copyright law is so complicated that I have had directly contradictory legal advice from two very competent attorneys. Both agreed
that on the subject of computer use of copyright materials the law
is rather grey and difficult. The purpose of the law is to protect a
person's property from being taken by others without proper compensation. That is, books, documents, songs, recordings, etc. are
considered the property of the copyright holder. Through copyright provisions writers, composers, and others are given protection
for their work so that royalties are paid to the person who deserves
them. This is, I hasten to add, not a legal opinion but an ethical
perspective on the topic. Donald Knuth writes most eloquently
and from the same non-legal status about legal protection of algorithms in Sorting and Searching, volume three of The Art 0/ Computer Programming. Knuth argues that algorithms should not be
anyone's property any more than a mathematical result is. This
seems very reasonable to me and right in line with the contention,
backed by legal precedent, that ideas are not protected by patent or
copyright whereas devices or publications may be. I also believe
that if someone writes a computer program and wishes to sell it to
others then that person should be protected from piracy.
The revised copyright law, effective 31 December, 1977,
contains wording that clearly intends to cover computer programs:
'''Literary works' are works ... expressed in words, numbers, or
other verbal or numerical symbols or indicia, regardless of the
nature of the material objects, such as books, periodicals,
manuscripts, phonorecords,_ film, tapes, disks, or cards, in which
they are embodied." The old law had to be interpreted to cover
modern technology; the new law attempts to anticipate new
developments by saying '''Copies' are material objects ... in which a
work is fixed by any method now known or later developed, [italics
mine) and from which the work can be perceived, reproduced, or
otherwise· communicated, either directly or with the aid of a
machine or device."
The question of whether this law will indeed provide proper
protection will have to be answered in time in the courts. However, whether the law can be effective against individuals who
pirate software for personal computing can be answered, in my
opinion, with a simple "No." First one must find the guilty party,
and then one must take that party to court. The ~xpense and time

PAGE 62 ,

required for such investigation and prosecution is staggering to
contemplate. Although the average income for computer hobbyists
is higher than for, say, the average citizen of the United States,
recovery of the- expenses involved in prosecuting software piracy
would be hard to do -- perhaps harder than getting the jl./dgement
to begin with.
This is not to be construed to mean that I advocate violation of copyright; I decidedly do not. If someone is selling a program I want I have two ethical choices: either pay the asking price
or write the program myself. However, one would have to be shy
of basic intelligence and have never read any personal or hobbyist
computer magazine to believe that everyone operates with the
same ethics. The problem of detection and prosecution is too
large, and the remedies too difficult to extract to halt violations of
copyright through legal channels. What, then, is to be done to
encourage software development and guarantee that such development will be protected if protection is desired?
Digital Group Software Systems of Denver, Colorado,
appears to have a solution. By pricing its software so low that it is
virtually the price of a tape cassette, the temptation to steal a copy
has the cost motive taken out of it. After all, why steal the programs by copying them to a cassette when for essentially the same
price they can be acquired legally? And with a copy of the documentation, no less! In a discussion with the President of Digital
Group I learned that pricing software at $5.00 per cassette does not
mean they lose money on software. The volume of business they
do makes up for the low price, and the low price encourages people
to buy from them. Although it does not say much for strength of
ethical feelings in humans, Digital Group's experience does indicate that when the cost is pretty much the same that people will
buy rather than steal. The temptation to remark "how very
human" is too much to resist.
7. Conclusion
This discussion of software engineering has had one major
point to make throughout the discussion: no matter what area of
software engineering one considers, there are human factors that
have a major impact on that area, whether it is typically perceived
as being so influenced or not. Some of the remarks have had
more "solid" evidence or support than others, but all are backed by
more than has been possible -- or prudent ~- to include here. What
has become clear to me is that ignoring human factors in software
engineering is done at the risk of having them assert their importance with a force that can mean disaster for a project. This discussion has been one attempt to bring the matter forward for discussion.
Bibliography
Berg, Eldon, Periodical Guide/or Computerists. 1360 S.W. 199th Ct.,
Aloha, Oregon 97005 ($2.50).
Elspas, Bernard, Karl N. Levitt, Richard J. Waldinger, and Abraham Waksman, "An Assessment of Techniques for Proving Program Correctness," Computing Surveys, vol. 4 (June, 1972),97-147.
Knuth, Donald E., "Computer Programming as an Art," Communications o/the ACM, vol. 17 (Dec., 1974),667-673.
Sterling, Theodore D., "Guidelines for Computerized Information
Systems: A Report from Stanley House," Communications 0/ the
ACM, vol. 17 (Nov., 1974),609-613.
Sterling, Theodore D., "Humanizing Computerized Information
Systems," SCience, vol. 190 (19 Dec., 1975), 1168-1172.
Tossy, Michael, "Some Thoughts on Designing an Interactive Program for Easy Use by Humans," unpublished seminar paper, U.C.

FIRST COMPUTER FAIRE PROCEEDINGS

Berkeley, 1977.
Wang, Li-Chen, "Palo Alto Tiny Basic," Dr. DoM's Journal of Computer Calisthenics & Orthodontia, vol. 1 (May, 1976), 12-25.
Weinberg, Gerald M., The Psychology of Computer Programming,
NY: Van Nostrand Reinhold Co., 1972.
Van Tas!\el, Dennie, Program Style, Design, lYficiency, Debugging,
and Testing, NY: Prentice-Hall, 1974.
Yourdon, Edward, Techniques of Program Structure and Design, NY:
Prentice-Hall, 1975.

BOX 1579, PALO ALTO CA 94302

PAGE 63

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

THE HUMAN INTERFACE
William F. Anderson
158 Valparaiso
San Francisco CA 94133

ABSTRACT:
A great deal of energy has been spent on defining the various physical interfaces that exist in a computer system. Such a statement cannot be made about
the human interface. Yet, the success or failure of a system is dependent upon
the quality of this interface. In designing the human interface the basic princi·
pies of communication need to be applied. Simply, these principles are: what
are you tryinq to communicate, how is it being communicated, and who is the
recipient of the communication.
******************************************

The human interface-where does it fit into the picture? What must be considered when designing software to support this interface? The intent of this pre·
sentation is to start you thinking about these questions and their answers.
What is the purpose of computers; whether they be micro, mini, or maxi? Is
not a computer a "tool"? A tool used, for example, for problem solving, infor·
mation storage and retrieval, and the controlling of other devices. In general,
computers are tools used to solve human problems. Note this. is q,:,ite dif~er­
ent from computers being problems for humans to solve; a Sltuation WhICh,
unfortunately, is rather common.
The design of tools requires the application of "human factors engineering"in other words, one must take into account the user of the tooL In a computer
system this involves two levels: the physical desiqn of hardware, and software
design. Take, for example, a keyboard. The weight of the keys, their size,
angle shape, and layout are all factors in determining the optimal physical
desig~ of that keyboard. Although important, this is an area in which few of us
ever get involved, since the hardware is usually purchased. However, software
is a totally different story.
In terms of software the human interface involves the entering of data into a
system, the retrieval 'of data from a system, an~ th: co~trolling of t?e s~stem.
Each of these areas can be viewed as a commurucation mterface. It IS a link to
the human user, just as software routines also link the computer to peripherals
such as a cassette recorder.

Some of you are probably wondering of what interest is this to the hobbiest?
I can only ask, how do you plan to use your home computer syst:m? Is it for
your own personal enjoyment, or are you planning on others sharmg the bene·
fits of your work? If it is for yourself, then you need only be concerned about
communicating with yourself. If you are writing programs that will be used by
others, even if only your family and close friends, then you should be concerned with how they will interact with the system. For no matter how good
the program is in other areas, if it is difficult to use, it will be put aside.
Notice I have referred to the human interface as a communication interface.
The interface is a communication interface when one considers that the object
is to transfer information. Furthermore, we are entering an era where more
people directly interact with computers. This means that the machine's soft·
ware must take on more and more of the burden of providing the communica·
tion interface to the user of the system. Simply, the principles for this inter·
face are those of all hurnan communication. They can be categorized as what
are we trying to communicate, how are we going to communicate it, and to
whom are we trying to communicate.
Let's consider the recipient of the process first. Traditionally, the users of
computer systems have had to be rather sophisticated, for example, users. of
airline reservation systems. Some educational systems have been an exception
to this statement. The fantasy of those of us involved in personal computing
is a computer in every home (or at least a good majority of homes). This
means that the users of systems are not going to be the ultimate combination
of electronic and software whizzes. The vast majority of potential users of
home systems could not care less how a job is done on a computer; only that it
is done. Unfortunately, the industry is geared towards supporting the sophisticated user. In fact, I will stick my neck out and say that it takes a more experienced person to purchase a home computer than is required to purchase a com·
mercial product. We seem to be spending more time trying to educate people
so that they have the requisite level of knowledge than we do in trying to make
the computer easier to use. Even if systems are designed so that the hardware
is transparent to the user, the job is not done. The task is complete only when
the effectiveness of the information interchange with the system has been maximized and the person using the system has found the experience to be helpful rather than frustrating.
Although knowing what to say seems to be a problem that particularly plagues
documentation, it also haunts the environs of interactive software. Before a
message can be effectively communicated, one must be clear about the content

PAGE 64

and purpose of a message. This applies not only to messages generated by a
system, but also to the syntax requirements of entering data into the system.
In my opinion, the designer of interactive software has the responsibility for
seeing that it is the software which insures the quality of communication and
not the user of the system.
The purpose of a message is to get the desired response, and that does not include kicking the computer during a peak of frustration. Nor is a system crash
when invalid data is entered an acceptable response from the system. Valid
responses include entering the requested information or taking an appropriate
action such as changing paper in the printer.
To me, lack of clarity in a message reflects a lack of understanding of the problem one is trying to solve. For instance, with my current knowledge of the subject, if I were trying to design a system which, based on various inputed parameters, provided an analysis of a particular stock, I would have a difficult time
devising questions that would lead to the appropriate answer-to say nothing
about how to state the answer. In other words, if one understands the problem
aNI knows the purpose of what he is trying to achieve, then he is in a position
to communicate a clear message.
The finai link in the communication chain is how to communicate the message
to the recipient. One of the exciting things about current technology is all the
new possibilities for media that can be used in the communications process.
There are audio boards, video drivers in both black & white and color, light
pens, plotters, printers, and optical scanners, as well as the old teletype. Each
of these offers different possibiliti(!s as to how messages can be communicated.
I know that I would like to own one of everything so that I could explore their
limits. However, that is not the situation today, so I will explore what can be
done with a CRT or teletype.
Compared with the CRT, the teletype is a very limited device. It is not uncommon for the CRT to be used in a teletype replacement mode, but it would be
very inefficient and in some cases impossible to use the teletype in a CRT reo
placement mode. In terms of presenting information, the teletype is basically
a line oriented device (longer messages being communicated as a series of lines).
The major advantage is that it can produce a listing which is independent of
t he computer, can be used as a historical document on the interaction that
occured during the session, and comments can be noted on the listing itself.
The major disadvantage is its lack of speed.
The CRT, however, is a very different medium. The area of the screen limits
the maximum amount of data that can be conveyed in a single message. Unless
supported by another means of storage, once the data goes off the screen it is
lost forever. The major advantages are that longer messages can be communi·
cated very quickly, and, depending on the CRT, one has the additional features
of graphics and variable density.
For example, on a CRT I could do what is called menu selection, which is the
presentation of the question along with a list of alternatives. My response
would be to enter the number for the alternative I wanted. Whereas on a teletype the message is presented, and then based on my prior knowledge of the
alternatives I would enter the appropriate response.
This leads into another topic called format of messages and responses. One of
my pet peeves is systems that use single letter messages and responses, or even
numbered messages. This approach requires a more sophisticated user of the
system and is prone to greater error. It is disturbing to break up an invol·
ved interactive process with a search through the manual to find out what is
going on.
The opposite extreme is to get too fancy in presenting a message. T.his ~
especially true with media that is extremely versatile. Remember, the object IS
to communicate a message, not to absorb the user's attention into the media.
I often see another habit which I think needs to be changed. Computer respon·
ses such as "hey stupid-you made and error" are basically insulting and convey
little information. Such remarks say more about the desigr\er of the system
than they do about the user. In correctinq errors, the purpose is to ellicit the
desired response. This is accomplished through messages that describe the error
.
and tell what was expected.
In summary I want to emphasize that until we start to concern ourselves with
the human Interface the growth of personal computers will be limited to the
devoted "hackers". 'I feel that the first step in designing this interface is to
realize that it is a cOmmunications process and that the guidelines for good
communications between two humans apply equally to communications between human and computer. For the dialogue of the computer is nothing more
than an extension of the person who wrote the interactive program.
****************************************~*

BIOGRAPHY:

Current employment at Four-Phase Systems culminates eight years of
experience in data processing. This is tempered by a B.S. in Psychology and
graduate work in Administration of Justi~e with a couple ?f years as a proba·
tion officer. Interest in personal computing dates back eIghteen months to
acquisition of an 8080A based computer,

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

PAGE 65

THE POTENTIAL OF MICROCOMPUTERS FOR THE PHYSICALLY HANDICAPPED
Peter J. Nelson & J.G. Cossalter
Medical Engineering Section, Bldg. M-50
Division of Electrical Engineering
National Research Council of Canada

Ottawa Ontario
Canada K1 A DRS

ABSTRACT
The needs of the physically handicapped, especially those
who are non-verbal, are outlined with respect to several communication aids developed at the National Research Council of
Canada over the past dozen years. For each device described
it is shown how the lise of a microprocessor has simplified the
required hardware, while making the redesigned devic,es more
versatile. The use of synthesized speech in a classroom
symbol communication system, based on a microcomputer, is
described in some detail. To sUm up, the' future possibilities
for home-computer_based aids for the handicapped are explored.
Introdllction
The microprocessor and microcomputer revolution promises
new electronic possibilities for everyone. For certain
~eglected groups such as ~he physically handicapped, the possibilities of new freedoms are more important and even more
exciting than for the ordinary "",n or woman i~ the street. we
are referring to such new freedoms as: the freedom of selfexpression through simpler and more cost-effective aids to
communication; the freedom to pursue educational opportunities
through computer-aided-instruction brought right to the
person's home; the freedom of independence pro-,ided by personal
environmental controllers and mobility aids; the freedom to
hold a job and support oneself by means of various vocationai
aids; and the freedom of new recreational opportunities provided by computer games.

Fig. 1.

COMHANDI typing and communications aid
handicapped.

for the

The Medical Engineering Section and the InformationScience
Section of the National Research Council of Canada are pursuing
some of these goals on behalf of the physically handicapped.
This paper will describe our initial attempts to exploit the
potential of microcomputers in communication aids and teaching
aids for the physically handicapped.
Background to the Problem
The aids described in this paper are designed for severely
handicapped persons who lack normal functional use of their
hands and arms to the point that they cannot hold a pen or
pencil nor operate a regular typewriter. Persons in this category include those with a high spinal cord lesion or other
paralysis due to stroke, trauma, etc. and tho'se with ueuromuscular disabilities resulting from cerebral palsy, poliomyelitis, muscular dystrophy, etc. The most handicapped of
these are the persons who also have no functional speech
capabilities.' The loss of the ability to cotm:lunicate in any
normal way is the most serious problem for these persons. the
need to communicate and to express one's feelings, thoughts,
and desires is fundamental to mankind. Children deprived from
birth of any ability to communicate will be developmentally
handicapped throughout their lives. Alternative means of communication must be provided early in life.
COMHANDI
The CONHANDI Communications System for the Handicapped was
the first aid developed by NRCl (see Figure 1)_ It was
developed over twelve YlOars ago using diode-transistor logic
(DTL), the implementation of which required about nine circuit
boards and other associated components (see Figure 2). Nevertheless, the CO~~I accompllshlOd what it was dlOsigned to do it permitted a severely handicapped person to type out messages
on a low-cost teletypewriter by operating a single paddle
switch. Actuating the paddle caused a light to scan behind an
alphanumeric display panel, first horizontally and then
vertically, until the desired character was reached and typed
out on the teletypewriter. If the user had slightly better
fllnctional capabilities, a joystick could be used to direct the
scanning in right, left, up, or down directions. A separate
paddle would then be used to actuate the typing function.
Although there are ether approaches, the scanning concept has
since been implemented almost universally in typing and communicati~n aids for the most severely handicapped.

Fig. 2.

Rear view of COMHANDI showing circuit boards.

Microprocessor-Based COMHANDI
As a demonstration of the potential of',ilf-croprocessors to
reduce hardware logic, we have recently implemented all the

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

PAGE 66

functions of t;he CONIIANDI using an F-8 microprocessor. The
dealing with emotions contain the basic heart-shaped symbol to
block diagram, Figure 3, shows the simplicity of the newsyste~ indicate inner feelings. By organizing Bliss Symbols into
The program requires 512 bytes of read-only memory (ROH), 9
sequences, whole ideas or sentences can be conveyed, as shown
scratchpad registers (out. of 64 available in the F-8 CPU), the
in Figure 5.
programmable timer, and 3 of the 4 I/O ports (3850 and 3851),
the FAIRBUGTM monitor, which resides in the 3851 PSU, uses
1\
firmware to generate the serial ASCII-encoded data to drive the
teletypewriter. Not only is the hardware vastly simplified,
but the software-controlled system permits greater flexibility
in the mode of operation. For example, the scanning rate can
want
I, me
mother
see
be changed by typing in a time 'constant from the teletypewriter
keyboard.
Fig. 5. A Bliss Symbol sentence.

V(

o

axa
DISPLAY MATRIX

DATA

38!13
SMI

en

..,en

,'BEEPER

15
~

Symbol Communication Aids
The children soon develop a working vocabulary of 200 to
500 symbols, which creates some problems for those who are
physically incapable of pointing on a large symbol board.
Electronic symbol. communication boards have been built for these
children, such as the unit shown in Figure 6. This portable
unit provides electronic scanning over 256 symbols by means of
a 16 x 16 matrix of light-emitting diodes (LED's).
The
capacity of the board can be doubled to 512 symbols by using
either a steady light or a blinking light to indicate upper and
lower case symbols, in effect, at each location. Just as with
the COMllANDI, a variety of interface devices can be used to
control the symbol communication board, either of the singleswitch-closure type or the joystick-type.

-05UOJECT

L.._-+::-_-l-O INTERFACE
EPROM

3851

2 x256

PSU

8

- 0 CONTROL

SWITCHES
(1108)

bytes

PORT4

Fig. 3.

Block diagram of F-8 microprocessor version of
COMHANDI.

Bliss Symbols
Although the CO~lliANDI was effective for certain groups of
handicapped individuals, an alphanumeric communication aid is
of little use to preschool children who cannot yet read or
spell. In the past, picture boards have been used with these
non-verbal children to permit them to express their immediate
needs. 2 Hore recently, a universal symbol language developed
by C.K. Bliss has been adapted for use by thes~ children. 3
The Bliss Symbols, as they are called, are pictographically related to the concepts and real-life experiences which
they represent. They are therefore, intuitively meaningful to
young children and are more easily learned than an alphabetic
language. Hence, using Bliss Symbols, the children can begin
to communicate at an earlier age, which is extremely important
to their development.
Some examples of Bliss Symbols are shown in Figure 4. Tne
symbols for "home", "mouth" and "animal" look like the objects
they represent. Basic symbols such as these are then combined
to convey related concepts such as "street", "food" and "meat".
Note that "meat" is "food" from an "animal". All concepts

v

\71

home

street

happy

o

o

7\1\

mouth

food

animal

Fig. 4.

Some examples of Bliss Symbols.

v

vl
sad

9M
meat

Fig. 6.

Symbol Communication Matrix board, Model 2.

An important feature of the electronic scanning board is
the provision of a memory function. One serious limitation of
manual alphabet or sym~ol pointing boards is the fact that the
"listener" or receiver of the communication usually cannot
remember enough letters or symbols to piece together any but
the shortest words or messages the "talker" is attempting to
transmit. This problem is compounded by the slow rate at which
some of the'severely handicapped persons must work. Knowing
that a normal person is impatiently waiting for them to point
out a message only heighte~s their anXiety.
With an electronic
memory board, however, the handicapped user can work at his or
her own speed, building up a message in the board's memory, one
symbol at a time. The message can be read back to a "listener"
at a later time, as often as necessary, simply by causing the
LED indicators on the display matrix to "jump" sequentially
through all the symbol locations stored in the memory.

Just as in the case of the CO~~DI, the electronic hardware required to implement e symbol scanning matrix can be .

FIRST COMPUTER FAIRE PROCEEDINGS

greatly simplified through the use of a microprocessor. The
original hardwired board shown in Figure 6 uses about 60 OIOS
small-scale integrated circuit packages, whereas the same
functions have been i;nplemented with a 76B-byte program in the
F-8 microprocessor. Again the microprocessor-based.version
provides greater flexibility, in user definable rates for
scanning and memory read-out, etc. and a larger memory capacity
(in the scratchpad memory of the F-8).

BOX 1579, PALO ALTO CA 94302

PAGE 67

The microcomputer is the component which provides all the
necessary memory and electronic control. Sentences formed on
one child's board can be sent to the other board to be read out
or to the TV screen for all to see. The audio from the speech
synthesizer is also under computer control and can be directed
to any individual board or to the classroom display. As the.
symbol message is being displayed, the corresponding words are
spoken by the synthesizer.

The microcomputer is based on the 8080 microprocessor.
Since it.is an 8 bit processor, it nicely suits the jobs of
The Symbol Cowmunication Matrix, as described, has been a handling a 256 symbol system - a unique identifier for each
useful aid, especially in situations where portability is
symbol fits into one byte of memory. The control program for
the communication boards and the TV display is stored in 4096
necessary. It has some limitations, however, because it provides only a visual indication of the selected symbols. We
(4K) bytes of Erasable Programmable Read Only MemorY (EPROM).
have been experimenting with the use of synthesized speech,
This type of memory is ideal for this application because it
therefore, as a means of providing additional sensory inputs to allows the control program to be changed by reprogramming the
the handicapped person. 4 For the initial trials, a commercial same EPROM integrated circuits. This EPROM also contains the
speech synthesizer (VOTRAXTM) and a remote computer were used, codes required to direct the speech synthesizer .to produce the
spoken words for the symbols. (The 256-symbol vocabulary
coupled to the handicapped person's symbol display board via
requires about l~ K bytes).
an acoustic telephone link. The synthesizer speaks out the __
name of each symbol on the display matrix as it is selected,
4K of Random Access Memory (RAM) is used as a dynamic
storing these words in a scratchpad memory. Upon command,
data store for control operations. Symbol sentence lists
then. the whole sentence or thought cau be spoken by the synand intercommunication buffers are kept here.
thesizer.
Synthesized Speech

Speech is, of course, a very natural form of communication. The value of the. aural reinforcement provided by the
synthesizer soon became quite evident. The children's
attention span and motivation increased almost immediately,
permitting training to proceed at a faster pace. Hence, in a
period of six months following the addition of the artificial
speech, their speed in selecting symbols, their language de..,
velopment and the use of proper syntax, and their spontaneous
desire to communicate have all been promoted. The synthesizer
gives the child an objective feedback on the trial-and-error
selection of symbols and sentences, permitting independent
work. The "space age" quality of the artificial voice appeals
to the children and many attempt to verbalize along with it.
Use ofaMicrocomputer
Following the successful trials with the speech synthesizer, we have proceeded to develop a stand-alone classroom
communication system built around a microcomputer. A block
diagram of our "Classroom Symbol Talker" is shown in Figure 7.
Initially the system provides for two handicapped children and
a teacher to intercommunicate in the two mediums of Bliss
Symbols and artificial speech. Each student's terminal is very
much like the symbol communication matrix board described
previously, including the same type of interface controls.
Some of the differences are local loudspeakers in each board
and extra "control addresses" on the symbol matrix to permit
the child to select the destination for his or her message.

A Real-Time Clock is used to time events which must be
carried out at particular intervals of time. Scanning symbols
on the communication boards, for exampl~is carried out at a
preset rate determined by the clock.
The processor sends control codes to the speech synthesizer
through a Serial Input/Output (I/O) port. These control codes
are buffered, interpreted by the synthesizer and then spoken
out. The artificial speech that is generated. is-routed
through a digitally controlled switch and gated to theparticular communication unit requiring audio reinforcement.
Each of the three communication terminals is handled
through its own Parallel 1/0 port. Each is independent from
the other and more terminals could be added to the system by
interfacing them through additional I/O ports.
A significant amount of digital memory will be required
to store the bit patterns for all 256 of the Bl:3s Symbols for
the graphic TV display. Other researchers are attempting to
display Bliss Symbols electronically and it is hoped that
techniques will be found to minimize the required memory size~
Otherwise, an auxilliary diskette memory may be required for
this feature.
Design Considerations

The use of a microcomputer as the main component in our
Classroom SyQbol Talker is an example of a near-ideal solution
to a number of the problems involved in developing aids for the
A graphic television display is planned as a low-cost
additional feature. It will serve as a classroom "blackboard" handicapped. The commercial manufacture of small quantities of
specialized devices for the handicapped has been a recurrent
on which the teacher or either of I:he students can "write·" a
Bliss Symbol message. The teacher will use a numerical keypad problem. In our system, however, as many of the"logicfunctions
as possible have been implemented in the microcomputer software,
to select the symbols by code numbers. The symbols can be
rather than in discrete circuitry as was the practice ·in the
stationary on the screen or can be made to move across the
past. Less manufacturing is involved, therefore. The micro~
screen in "Times S;ure" fashion for longer messages. By
computer can be purchased as a completely assembled and tested
bringing the symbols together and displaying them in a serial
commercial product into which the programmed EPROM's are in'string on the TV screen, it is hoped that a degree of
serted. In fact, except for the individual symbol matrix
connectedness will be conveyed which may be lacking on the
boards and interface controls, all other components of the
individual symbol boards.
system are commercially available.

~

CHILD'S

o INTERFACE
o CONTROLS

~.O
CHILD'S
COMMUNICATION BOARD

Fig. 7.

Block diagram of "Classroom Symbol Talker" system.

The system can be expanded, or its functions can be
changed, without re~iring. Each communication board can light
up a maximum of twenl:Y five lights simultaneously. By replacing the symbol sheet on the front of each board· with an
enlarged BINGO card and adding some appropriately programmed
EPROM memory, the system will allow the children to play BINGO·.
Other interactive games·, such as TIC-TAC-TOE and Steep.1echase
can be played, either on the children's individual display
board or on the classroom TV screen. The recreational possibilities for the handicapped which are opened .up by computer
games are nearly limitless. The games must be chosen to match
the children' s intellec~ual and· functional capabilities, hoWever. Target shooting, ping~pong and other games of skill are
obviously out of the quesfion. Games which stimulate
intellectual participation are ideal. The costs of the software for each additional game are quite small.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

The Future

PAGE 68

need for a portable artificial voice. It may be some time
before such a· .dev1ce is economically feasible, but we can be
sure it will involve a microprocessor. The feasibility of a
low-cost device, using a limited vocabulary on magnetic tape
or diskette, is under study at NRC of Canada. The problem is
to provide reasonably rapid access to any word in the
vocabulary.

This paper has drawn attention to some of the communication needs of the physically handicapped and has attempted to
show how microprocessors and microcomputers are beginning to
be used to meet these needs. It is certainly only the beginning. Other researchers are also applying these newtechnologies for the handicapped. 5 ,6 This will be the case more and
Computer games have been mentioned. The Medical
and more as the prices of microprocessors and fully built home
Engineering Section of NRC has developed several games for the
microcomputers continue to fall. In our Classroom Symbol
handicapped,
such as Checktronics, an electronic checkers
T.alker, the major cost itemis the speech synthesizer. The
game, and Steeplechase (see Figure 8). These were built up
synthesizer is an excellent device. Since it is basically a
from hardwired CHOS logic circuitry. Portability was one of
phoneme generator, it provides random access to an unlimited
the features of.these games, but from the standpoint of the
vocabulary. For some non-verbal handicapped persons a limited
visibility of the display, a TV screen would be an improvement.
vocabulary stored on a floppy diskette would be a more
.The
hardwiredl!\ames have served to demonstrate the value of
economical solution. Controlled by a home hobby-type computer,
recreational aids for the handicapped. The Steeplechase is
this arrangement would permit such persons to conduct their
especially appropnate for young children who like the idea of
personal business by telephone.
racing. Incidentally, it helps teach them counting concepts
as they must "move their man" by pushing on a paddle switch the
Some of the other areas where microprocessors can be
appropriate number of times. In hardwired form these standapplied for the handicapped are in r l typewriters and in the
alone games are probably not cost effective. As programsin"a
develop~~nt of a portable artificial voice.
TV typewriters
low-cost hobby computer with a TV display, they will be very
have been adapted for the handicapped, already, in hardwired
attractive.
logic versions. 7 These could be more easily implemented with
a commercial microcomputer with a TV interface. A progran
From communication aids, to educational games, it is only
could be written which would display the set of alphanumic
another small step to more formal educational programs on
characters at, say, the top of the TV screen. The user would
personal computers. )!ere is an exciting new opportunity for
move the cursor,by means of a joystick or single paddle
the handicapped. The teaching of children and adults with
switch, to select each character. The selected character
physical and educational handicaps has~always required an
would thee appear on the lower half of the screen, where a
intensive amount of one-to-one interaction between student and
whole message could be built up. With an optional teletype
teacher. Interactive teaching programs will reduce this
or other hard-copy printer, the handicapped person could De
requirement and provide a more objective tutor in many cases.
gainfully employed preparing business correspondence. The
The low-cost of personal computers will make such teaching
text would be prepareri in the desired fo~~t on the TV screen,
practical, not only in institutional settings but also in a
with any errors corrected, before b~ing "dumped" out to tha
handicapped person's own home where they may be, confined to
printer.
bed or wheelchair. The hobby computer can also act as a remote
terminal for a large time-shared computer system on which more
elaborate teaching programs may be available.
Biography
Peter J. Nelson has a Master of Science degree in Electrical
Engineering (Biome.dical Engineering options) and has nine years
of experience as a rehabilitation engineer (one who specializes
in the design and application of devices and techniques for the
rehabilitation of the physically handicapped). At present he is
employed as a Research Officer in the Medical Engineering Section,
Division of Electrical Engineering, National Research Council of

Canada, where his responsibilities include the development and
evaluation of aids for the handicapped. Previously he has worked
in Washington, D.C., where he was Staff Officer for the Committee
on Prosthetics Research and Development, National Academy of
Sciences; and in Winnipeg, Manitoba, Canada, where he was
Co-Director of the Rehabilitation Engineering Dept., Health
Sciences Centre.
G. Cossalter, holds the degree of Master of Applied
Science from the University of British Columbia, Vancouver,
Canada. For the past seven years he has been employed as a
Research Officer in the Information Science Section of
National Research .Council of Canada and has worked in the
areas of computer-aided instruction, computer-generated
speech, and computerized aids for thehand1capped.

J~hn

Acknowledgements
The authors wish to acknowledge the assistance of summer
student R. Paduch from McGill University, Montreal, Canada,
in the preparation of the programs for the F-8 microprocessor.
The authors are also indebted to J.R. Charbonneau and
F.P. Orpana of NRC for the con~truction of the equipment
described in this paper, to the staff of the Ottawa Crippled
Children's Treatment Centre for the clinical evaluation of the
devices, and to A.J. Mortimer of NRC for helpful suggestions
in the planning of this paper.

Fig. 8.

Portable electronic Steeplechase game for handic;>pped
children;
References

Speech is a far more acceptable medium of communication
with the general public than letters or symbols. The nonhandicapped person usually won't make the effort to learn a
symbol language and feels psychologically uneasy when confronted by a non-verbal person. Hence, there is a tremendous

1.

Roy, O.Z. and Charbonneau,J.R., "A Communications System
for the Handicapped (COMHANDI)", Chapter 11 in Aids for the
Severely Handicapped, K. Copeland, ed., Sector Publishing
Ltd., London, 1974; pp.89-98.

FIRST COMPUTER FAIRE PROCEEDINGS

2.

McDonald, E. T. and Schultz, A.R., "Communication Boards for
Cerebral-Palsied Children", J. of Speech and Hearing Disorders, vol.38, no.l, Feb. 1973; pp.73-88.

3.

McNaughton, S., "Bliss Symbols - An Alternative Symbol
System for the Non-Vocal Pre-Reading Child", in Non-Vocal
Communication Techniques and Aids for the Severely Handicapped, G.C. Vanderheiden and K. Grilley, eds., University
Park Press, Baltimore, 1976; pp.85-104.

4.

Charbonneau, J.iil., Roy, O.Z., Cossalter, J.G., {,arrick, A.
and Cate, C., "A Symbol Communication System for the NonVerbal Severely Handicapped, with Audio Word and Sentence
Reinforcement," Proc. 1976 Conf. on Systems and Devices for
the Disabled, Boston, ~~ss., June 10-12; pp.18-l9.

5.

Vanderheiden, Gregg C., Director, Trace Research and
Development Center for the Severely Communica-tively Handicapped, University of Wisconsin-Madison. Personal
Communication.

6.

McBride, J.W., Morena, L.C., Lawrence, P.D. and Robinson,
C.E., "An Adaptive Environmental Control and Communications
System for the Handicapped", Digest of 11th Intnl. Conf. on
Medical and Biological Engineering, Ottawa, Canada, Aug. 26, 1976; pp.29.6.

7.

Logan, H.C., "Communications Terminal for Speech Handicapped", Proc. IEEE 1975 Region Six Can£., Salt Lake City,
Utah, May 7-9; pp.8-11.

BOX 1579, PALO ALTO CA 94302

PAGE 69

FIRST COMPUTER. FAIRE PROCEEDINGS

sox 1579;

PALO ALTO CA94302

PAGE.70

AN INTERFACE USING BIO-ELECTRICAL SIGNALS TO CONTROL A MICROPROCESSOR SYSTEM
FOR THE PHYSICALLY AND COMMUNICATIVELY HANDICAPPED
. Laurence R. Upjohn, Pharm. D.
7297 Stanwood Way
Sacramento CA 95831

Abstrao.t:
.
This paper outlines the biological source of electrioal signals that can be used to control microprocessor
sytems. A brief discussion is undertaken as to methods
of amplifling this bio-electricitl with comments on
integrated circuit selection and circuit design. Emphasis
is placed on the safe interconnection of the bio-electric
interface to the microprocessor insuring that elec·trieal
isolation is maintaned between them. Lastly a brief
mention is made of several decoding methods usad with
the switch to implement microprocessor systems for the
severly handicapped.
Introduction:
This paper will briefly describe the human body as a If
source of electrical signals that can used to control
electronic systems. A short discussion on the biological
origin of this electrical activity will be given. followed
by tec·hnical methods to exploit this pher.omenon.
i1.pplication of .this switch to various microprocessor systems
then will illustrate adaptation of microprocessor systems
to the physically handicar·pe4. With this adaptation systems
can be tailored to individual needs. by the handicapped
individual himself. This self-tailoring process can provide
new vistas ~f recreation. education. communication and
enhanced independance.
Electro-physiology:
This ten dollar word describes the universal property
of all living things to generate very small but measurable
electrical currents. The popular areas of Bio-feedback
use several bio-electrical potentials or voltages to study
v4rious body functions· which then are. converted to some
auditory or visual signal with which our senses can deal.
These signals have origin in individual cells going through
the repetative process of concetrating salts from body fluids.
These salts am concentrated so that one salt will be in high
concentration inside the cell~ while another will remain
c?ncetrate~just outside the cell.
These concentrations
are maintaned by the cell membrane but can rapidly change
when certain environmental stimulae disturb the cell
membrane. When these finely balanced concentrations
change rapidly a small pulse of approximately 50 millivolts
is given off l".uch as the electrical current that flows
when the poles of a battery are shorted together.
Multiply this by several mil~ion cells discharging at once
and it becomes apparent where or how bio-electricity is
"generated".
Interfacing Bio-electricity to the Outside World~
Since the Qio-electric signals just discussed are of
such small voltage, thel must be amp·lified before they can
be modified or processed by any digital system. However
this amplification must take place with as little interference
to the biological system as possible. Therefore an
amplifier must have high input impedance. This is a resistive quality of the input terminals such that incoming
signals meet a very high resistance path into the amplifier.
Because of this high resistance pathway very little current
is drawn from the biological system into the amplifier
so the cells being observed function as usual. Next. the
amplifier needs the ability to reject low level signals
that arrive at both inpu+s at the same instant'i.e., are
in phase with eachother). This propertl is called high
common mode rejection ratio, or CI-:RR for short. The
predominant electrical noise that must be kept out of the
system is the 60Hz. noise from the electrical utilities,
hence the high CMRR, Next the inputs to the amplifier
·are connected to electrodes placed OYer the area to be
observed· in ~lectrical contact with the skin.

This contact· is enhanced by using a jelly or p~6te containig
a high salt concentration and securing the electrodes
firmly so movement signals will not be produced. A much
less complicated method is to use disposible EKG electrodes where available. They come prejelled with high
quality electrode metal(siLver!) and are self adhesive.
The amplified signal can now be monitored from the
output of the amplifier by an oncilloscope or a low
cant audio am!~lifier and permanent magneL speaker.
One soon learns the tell-tale hum or smooth sinewavefor~
of 60Hz noise being amplified through the system.
Bl the appropriate adjustment the 60Hz. noise can be
"tuned" out so only the irregular higher- frequency
biological signal ~ets through.
The monitor •• signal must now be smoothed so that
in effect a slowed waveform is presented to the next
stage of the bio-interface unit. This process is called
integration. Integration of the signal is accomplished
with a • wave rectifier or diode and a resitance/capacitance
network to store the signal for the time constant of
the reSistor-capacitor network. This in~egrated signal

has a slow enough transition to trigger a 7413 dual
nand Schmitt trigger, which then outputs a TTL pulse
for each threshhold crossing of the input signal.
The TTL trigger pulse is lea~ to a monos table
multivibrator wliich outpuh a pulse of predetermined
duration. During this period it cannot be retriggered·
so its' output pulse remains of constant length or time
duration.
Thus the signal is converted from the constantly
changing low level biological current to a .two state
binary si·gnal that is TTL compatable. Now we have a
signal that can be fed to the microprocessor. as our
next interconnection step. right?
h'RONG! The interface must be comple.tell isolated
electrIC"ill'y from the microprocessor and its' high
amperagp DC voltages. This is not sa difficult a .tasJt
to accomplish as one might suspect. A photo-optic
isolator of the LED/Photo transistor type is quite
effective in achieving the necessary e·lec.trica]
isolation. It ~s also suggested that in construction
of the interface,
micro-power circuits be used where
possible, to make it easy to use low voltage transistor
batteries to power the interface. If low ~ower or micropower IC's are not availab1e then larger butteries should
be used.. Under no circumstances use the OC voltages from the
Microprocessor bus.
~oper grounding of all cases to one single earth ground
will reduc~ noise problems that can arrise when several
different ground points are used.
Interface Applications :
Since this pap.er is to address the area of Microcomputor
systems for the Physically Handicapped. now is the time
to outline how this bio-interface could be used to program
a micro-system.
The signal output from the bio-interface is only a
single binary bit but several methods can be implemented
to expand this to a fulll codde~ eight bit binarl data
word or simply an external flag directly to the microprocessor.
Coding the single bit to an eight bit blte can be
done uRing a self scanning array of LEDs. Two four to
ten or sixteen decoders scan the horizontal and verticle
rows giving two four bit addrer·'s for the matrix position
of the lighted LED. These two addresses are latched
into the computor as a single eight bit word. This word
is then converted by software to represent either
alpha-numerics or actual machine operational codes.
A simple "bootstrap" loader could be contained in Read
Only Memory 'to give power on start capabilities.
Using the single bit line as a direct flag to the
micro-processor envolves writing the appropriate
software to test the flag and the execute an interogative
interaction with the operator to determine function
to be programmed. This may take longer to facilitate
initially but is bl far the more elegant solution to
this control probiem.
This second method has the added advantage of allowing
the operator to tailor his software to his individual
control or communication problems. This is the ultimate
goal for "nl aia to the handicapped, for i t gives them
indepence which to them is their greatest need.
BibleographY:
Belke, R.E. et ale
G.E. Transistor Manual (Li/i!:'ht Neight Edition)
General Electric Co •.• Syracuse , New York, 1969
Geddes. L.A. and Baker, L.E.
Principles of Applied Biomedical Instrumentation
John Wilel and Sons, Inc. , New York, N.Y. 1968
Millman. J. and Halkias, e.e.
Integra ted Elec tronics: .~nalo{iue and Digital Circuits
·and Systems
McGraw-Hill Book Co., New York, N.Y. 1972
Vander Kooi. M.K~ et a1
Linear Applications, Volume 1
National Semiconductor Corp •• Santa Clara, Ca. 1973
Author:
Laurence R. Upjohn· Ph,. . rm. D.
Stafr Pharmacist
U.C.Davis/Sacramento Me~Center
Graduated From Universitl of The Pacific College of Pharmacl
in Mal of 1976 with emphasis in Electro-phlsiologl and
Pharmacology. While there developed Electromyographic Switch
for the severly handicapped and a micro-computor system
for clinical drug analysis using Electro.-Myograms and

FIRST COMPUTER FAIRE PROCEEDINGS
Encephalgrams, as indicators of patient/drug effects.
Presently deyeloping Bio-electrical switch and microprocessor card for use by the severly handicapped.
May be contact'ed at;

7297 Stanwood ~Jay
Sacramento, California 95R31
Phone: 916-391-5336

.

BOX 1579, PALO ALTO CA 94302

PAGE 71

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

, PAGE 72

WHAT TO DO AFTER YOU HIT RETURN . .. AND NOTIDNGHAPPENS: WARRANTY IN THE
MICRO-COMPUTER INDUSTRY
Kenneth S. Widelitz, Attorney at Law, WA6PPZ
10406 Louisiana, No. 8
Los Angeles CA 90025

ABSTRACT OF FULL TEXT PAPER

as the quality of their product and its sales
price. As home computing catches on, the purThis paper will discuss consumers' rights ,and
chaser of a microcomputer will have less technical
manufacturers' and retailers' liabilities under the
expertise and will place a greater importance on
Uniform Commercial Code, the Song-Beverly Warranty
the warranty which accompanies the product he is
Act of California and the ~eder~lly enac~ed Magnuson
buying. Conceivably, the warranty can be as
Moss Warranty Act. Attent~o~ w1ll be pa~~ to the
important a factor in a purchase as the number of
effects of warranty on the m1croc~mputer ~ndus~ry and bytes of memory or the speed of an I/O device.
examples will be 'drawn from the m1crocomputer 1ndustry. The warranty takes on added significance when the
The paper will include a description of both express
hobbiest realizes he will probably be spending
and implied warranties.
more money on 'his microcomputer system than on any
other item of personal property which ~e owns with
Special emphasis will be placed on the presale
the exception of his car (and automobile manuavailability rule and on the repair facility requirefacturers spend substantial sums advertising their
ments. The paper will conclude with an analysis of
warranties.) The more money someone spends on an
formal dispute settlement mechanisms as a possible
item, the more careful he is about what he pursolution to the compatibility problem unique to the
chases. The consumer is also aware that there is
microcomputer industry.
generally a close correlation between the cost of
a product and ,the cost to repair it if it fails to
function properly.
Recently enacted legislation has made dramatic
inroads into the evils of the well known maxim of
The foregoing is intended to place the im"caveat emptor" and, more importantly, the lesser
portance of the warranty in perspective for the
known manufacturers' warranty maxim of "what the
manufacturer, retailer and consumer of microbold print giveth, the fine print taketh away."
computers. The following discussion of warranty
Unfortunately, consumers, manufacturers and retailers are generally unaware of their rights and
legislation applies to all consumer goods, but an
liabilities under this legislation. This is
attempt has been made to use examples of warranty
problems unique to the microcomputer industry,.
especially true in the home and personal computing
field due to the recent emergence of the microcomputer industry.
WARRANTY LEGISLATION
For instance, manufacturers are unaware that
they are in violation of federal legi,slation if
they fail to clearly designate their written
warranties as either "full" or "limited". Retailers and manufacturers are not cognizant of the
fact that they are in violation of federal legislation if they fail to conform to the presale
availability rule which requires that every
written warranty be readily available to the consumer prior to sale in a specified manner. Consumers are unaware that if a manufacturer or retailer
breaches the terms of his express warranty, a
California Statute allows the consumer to recover treble damages plus costs and attorney's
fees. - - The preparation of written warranties by microcomputer manufacturers has been given short shrift.
The manufacturer should give his warranty the same
careful deliberation and consideration that he
'
gives to the development of his product. A carefully considered warranty can do much to promote
brand loyalty and accurately cost out warranty
liability. If a manufacturer costs out his
potential liability based upon ass'wiiptions which
are not viable due to the requirements of recent
legislation, it might mean the difference between
a profitable or loss year.
AS an example of possible liabilities unknown
to the manufacturer, manufacturers are now required to reimburse retailers who perform the
m~nufacturer's warranty repair work in an amount
which includes a reasonable profit to the retailers.
Another example is in the area of implied warranties. Implied warranties can no longer 'be
disclaimed where accompanied by written warranties.
This can be a critical warranty cost factor when
considering that a manufacturer's liability under
an implied warranty can be, greater than his
liability under a written warranty.
As consumers become more aware of the presale
availability rule relative to warranties, manufacturers and retailers will have to recognize
that their warranty will have to be as competitive

There are three major pieces of legislation
which govern warranties as they relate to consumer
goods sold in California. The oldest is the Uniform Commercial Code of California (U.C.C.) which
has been in effect since 1965. Almost every state
has its own version of the U.C.C., but, as its name
implies, they are all substantially similar. In
1971 California adopted the Song-Beverly Consumer
Warranty Act (SBCWA). The SBCWA was the first consumer warranty protection oriented piece of legislation in the country. The federallY enacted
Magnuson Moss Warranty Act (MMWA) is based, in
part, on the SBCWA. It has been in effect since
1975, although rules promulgated pursuant to that
Act by the Federal Trade Commission have been
effective as recently as January 1, 1977.
TYPES OF WARRANTIES
There are two broad species of warranties,
the implied warranty and the express warranty.
A warranty is implied when it arises by
operation Of law from the nature of a particular
transaction, that is, it's automatic and requires
no writing to arise. There are two kinds of implied
warranties, the implied warranty of merchantability
and the implied warranty of fitness for a particular purpose. In general, the implied warranty of
merchantability'means that a consumer good must
be free from defects in materials or workmanship.
An implied warranty of fitness arises when the
retailer, distributor, or manufacturer has reason
to know any particular purpose for which the
consumer goods are required and that the buyer is
relying on the skill and judgment of the seller
to select and furnish suitable goods. For example,
if a manufacturer of a floppy disc advertises
that it is Saltair/Bonzai compatible, there exists
an implied warranty of fitness that the floppy can
be effectively used with such microcomputers.
Implied warranties are created by Provisions
in the U.C.C. and in the SBCWA. While the MMWA
does not create any implied warranties, it does,
legislate the extent to which they can be limited.

FIRST COMPUTER FAIRE PROCEEDINGS

The other type of warranty is the express
warranty. The express warranty is usually a
written warranty. For the purposes of the MMWA
the express warranty must be created in writing.
However. under the U.C.C. the express warranty may
be created by an oral affirmation of fact, i.e.,
where the retailer makes an oral statement as to
the capabilities of a certain product. It should
be noted that "puffing" does not create an express
warranty. That is, the retailer who says, "I
guaranty your satisfaction, "or that a particular
product "is the best buy on the market" does not
create an express warranty. Where a sample or
model is displayed, the U.C.C. and the SBCWA create
an express warranty that the whole of the goods
conforms to such sample or model. This has a
significance for the manufacturer who buys large
quantities of parts from a supplier based on a
sample or model, but will ordinarily not have
significance for the consumer.

BOX 1579. PALO ALTO CA 94302

PAGE 73

ranty is coextensive with that of any express
warranty which accompanies the consumer goods.
However, in no event shall the implied warranties be
for a period of less than two months or for a
period of more than one year. If no written warranty
is provided, the duration of .the implied warranty is
one year.
The remedies available to the consumer under
the SBCWA and the U.C.C. for the breach of an
implied warranty are identical with the single
exception that the SBCWA specifically provides
that if a cQnsumer sues based upon the breach of
an implied warranty, the consumer may reco~er his
attorney's fe,es.

The damages which a buyer may recover are
incidental damages and consequential damages.
Incidental damages should include the costs of
repairing nonconforming goods and other items such
as the transportation of those goods to and·from the
IMPLIED WARRANTIES
place where they are repaired. Consequential
damages include such damage, loss or injury as does
The U.C.C. and SBCWA provisions relating to
not flow directly and immediately from the act of
implied warranties parallel each other to a
the breaching party, but only from some 'of the
certain extent, but the SBCWA provides some important consequences or results of such act.
changes.
For ins·tance, take the case of an amateur radio
The U.C.C. version of the implied warranty
operator who spends 20 hours inputting data relating
of merchantability requires, for such an implied
to all the contacts he made in 1976. Because of a
warranty to arise, that the seller must be a
defect in the cassette recorder he is using as a
mercharit as to those goods. Such a warranty under
memory device, none of the data is preserved. His
the U.C.C. is a seller's (retailer's) warranty.
consequential damages would be equal to the amount
The SBCWA has given renewed vitality to the implied
he would have.to spend in order to hire a typist to
warranty, of merchantability in two ways:
one, it
reinput the data. As another example, consider a
imposes a liability under the warranty directly on
lemonade stand application that cannot service its
the manufacturer; and two, it makes it both
clients While a defect in the CPU is being fixed.
difficult and commercially unwise for the manuThe consequential damages would equal the lost
facturer to disclaim such a warranty.
profits during the period of repair •

.'i'he implied warranty of fitness under the
U.C.C. is also a seller's warranty whereas under
the SBCWA such a warranty is made by both the
manufacturer and the retailer. As stated before,
the implied warranty of fitness requires that the
manufacturer or retailer have a reason to know
that the purchase is being made for a particular
purpose and that the buyer is relying on. the expertise
of the seller or manufacturer to furnish the right
product for that purpose.
However, the manufacturer and retailer
do not actually have to be told that the buyer is
relying on thefr skill and judgment. The manufacturer who advertises a particular use for his
product should be liable under the implied warranty
of fitness for a particular purpose even if the
advertised purpose is not an ordinary use.
DISCLAIMER OF IMPLIED WARRANTIES
Before the enactment of the SBCWA and the MMWA,
the implied warranties created by the U.C.C. were
relatively easy to disclaim. The implied warranty
of merchantability could be disclaimed by the use of
a conspicious written disclaimer that mentioned the
word "merchantability." The implied warranty of
fitness could be disclaimed by a writing declaring
that "there are no warranties which extend beyond
the desciption of the face hereof."
As a result of the enactment of the SBCWA and
the MMWA, the disclaimers just mentioned are ineffective. Under present law. the only way the
implied warranties can be disclaimed is by making a
sale on an "as is" basis. A conspicious writing
indicating an "as is" sale attached to the goods
sold is required. Any other attempted waiver of any
implied warranty is void.
DURATION OF AND REMEDIES UNDER
IMPLIED WARRANTIES
While the U.C.C. does not make mention of the
duration of implied warranties, the SBCWA specifically states that the duration of an implied war-

As a final example, let's take a letter which
appeared in the November/December, 1976 issue of Dr.
Dobb's Journal, page 4. Stuart R. Fallgatler wrote
that he received an AY5-8500 6 game MOS/LSI chip
from Advanced Micro-Electronics.
The chip didn't
work properly. Mr. Fallgatler wrote the company and
received no reply. Dr. Dobb's Journal also wrote the
company and received no reply. The implied warranty
of merchantability requires that the chip be free
from defects. Having received no satisfaction Mr.
Fallgatler should bring a Small Claims Court action
against Advanced Micro-Electronics. Small Claims
Courts handle suits for claims·less than $750. The
filing fee varies by county bu~ is usually $10 to
$15. The chip in question here lists for $50, a
significant sum.
While filing a suit might be
time consuming and inconvenient, Mr. Fallgatler
would certainly be less inconvenienced than the
company. He should obtain a judgment allowing him
a replacement chip and his court costs. He would.
also be allowed incidental damages and consequential
damages, if any. More importantly, such an action
would be a great service to other persorBsimilarly
situation as Advanced Micro-Electronics might be
more responsive to future complaints, having been
taken to court once.
EXPRESS WARRANTIES
The provisions of the U.C.C., SBCWA andMMWA
over lap considerably i.n the area of express warranties.
This paper will highlight the unique am salient features
of each but where there is an overlap there will be
no attempt to distinguish between them. It should
be noted at this point that although both the SBCWA
and MMWA define "consumer good" ·or "consumer product"
as an item which is normally bought primarily
for personal, family or household purposes, the
House Report 'on the MMWA indicates that products
which are in fact used for business purposes fall
within such definition if such items would generally
be used for personal,family or household purposes.
Thus it would seem that lemonade stand and even
office uses of microcomputers would be covered by
the MMWA becaus'e microcomputers are generally used
for'hobby or home purposes.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALToeA 94302"

MMWA "FULL" OR "LIMITED" DESIGI\IATION REQUIREMENT
A very important feature of the MMWA is its ,';
requirement that every written warranty accompanying
a product selling for $15.00 or more be clearly
designated either "full" or "limited". If a warranty
merely says "WARRANTY" at the top, it fails to meet
these federal standards. Rather, the warranty must
be designated. for example, "FULL 90-DAY WARRANTY." A
warranty is designated full when it meets the
federal minimum standards for warranty set forth in
the MMWA.
••
The requirements necessary in order to obtain
a "full" designation are as follows:
1. The warrantor must remedy the defective
con'sumer product within a reasonable time and
'without charge. The term "remedy," as defined by
the act, means either repE'ir, replacement or refund.
If the product is a "lemon", that is, it cannot be
repaired after a number of attempts, the warrantor
must permit the consumer to elect either a refund or
replacement without charge. If the warrantor replaces
a co~ponent part of a consumer product, such replacement must include installing the part in the product
without charge. It should be noted that the MMWA
only requires that the remedy be given within a
reasonable time. The SBCWA, while not making
provisions for designating a warranty as either
"full" or "limited", requires that goods be repaired
within 30 days;

PAGE 74__

If a warrantor fails to designate the warranty
as either "full" or "limited" or fails to disclose
required information, the warrantor is !\\lbje,ct to a
lawsuit brought by the Attorney General or a Federal
Trade Commission attorney. A civil penalty of up to
$10,000 per violation may. be assessed,.
(

,

As of this writing, conversations with FTC
attorneys indicate that, as yet, no actions have
been brought to enforce disclosure requirements.
The explanation is that since the rule has been in
effect for such a short period of time, the FTC is
allowing additional time for warrantors to comply.
However, actions will be brought as soon as the FTC
headquarters in Washington decides that enough time
has been allowed.
PRESALE AVAILABILITY RULE
Effective for products manufactured after
January 1, 1977, the presa1e availability rule will
have a vast impact on consumer awareness of warranties and on the manufacturers', distributors'
and retailers' costs. The rule requires that the
seller of a consumer product costing more than
$15.00 make the written warranty accompanying such
product available for the prospective buyer's review, prior to sale, by the use of one of four
methods.

One method provides for the text of the
written warranty to be displayed in close conjunction to each warranteed product. Another method
2. The written warranty may not impose any
allows the retailer to maintain a binder (looseleaf
limitation on the duration of an implied warranty;
notebook) which contains copies of the warranties
for the products sold. The binder must be maintained
3. 'The warra~tor may not exclude or limit
at a location which provides the prospective buyer
consequential damages for the breach of any written
with ready access. Such binder must be indexed
or implied warranty', unless such exclusion or limita· according to product or warrantor and must be
tion conspiciously appears on the face of the
kept up to date when new warranteed products or
warranty.
models or new warranties for existing products are
introduced into the store. Under this method the
4. The warrantor may not impose any duty upon
retailer must display such a binder in a manner
the consumer other than that of notifying the warreasonably calculated to elicit the prospective
rantor as a condition of secu.ring a remedy "unless
buyer's attention, or place signs indicating the
the warrantor has demonstrated that such a duty is
availability of the binders in prominent locations
reasonable." Such a reasonable condition might be
in the store. A third available method is disthe filing of a warranty registration card, if such
playing the package of any product on which the text
requirement appears on the face of the warranty.
of the written warranty appears. The last available
method is similar to the first and allows the
5.
The warranty must extend to each person
retailer to post a notice that contains the text of
who is a consumer under the MMWA. The MMWA defines
the written warranty within the vicinity of the
consumer as a buyer or any person to whom the product product sold. This differs from the first in that it
is transferred during the duration of an implied
provides some convenience to the retailer where a
or written warranty. Thus, the manufacturer giving
number of products covered by the same warranty are
a "full" warranty cannot deny liability to virtually
being sold in close proximity to each other. It
anyone who obtains possession of a product during
allows one notice rather than the full text being
the term of the warranty. The SBCWA limits its
displayed next to each product.
scope to only the retail buyer of a consumer good.
The effect of the presa1e availability rule
.Thus, a warranty which requires that the
will be dramatic. The rule will allow the consumer
consumer pay for transporting the product to a
to compare warranties much more readily than has
repair fac:llity must be a "limited" warranty, as the
been possible in the past. For that reason the
remedy is not provided without charge.
warranty will become a much more important factor in
the consumer's purchasing decision. That should
Whether 'a warranty is full or limited, the
provide incentive for the manufacturer to give
MMWA requires that on its face it disclose a great
greater consideration to his warranty.
deal of information. The warranty must set forth
the identity and address of the warrantor and the
The presa1e availability ru1e'wi11 have other
identity of .the parties to whom the warranty is
effects on the manufacturer and retailer~ Most
ex,tended. It must state, a clear description of the
obviously, someone is going to have to pay for the
parts, or characteristics, or components covered by
printing of the full text of the warranties to be
the warranty and where necessary for clarification,
displayed. There will also be expenses involved in
which are excluded from the warranty. The warra~ty
preparing binders or in making the warranties
must also state what the warrantor will do in the
readily available. The retailer will incur conevent of a defect, for what period of time and at
siderable expenses to 'satisfactorily prepare, index
whose expense.
It must also inClude a step by step
and maintain binders, if that is the method the
expIanation of the procedure which the consumer
retailer decides to use.
should follow in order to obtain performance of any
warranty obligation. The warrantor must further
The manufacturer and retailer will have to work
provide, a general description of the legal remedies
together in order to decide the most efficient
available to the consumer, and any limitations on
method of the available four. Obviously the
incidental'or consequential damages.
The warranty
physical piece of paper:containing the text of a
must also state if .there is an informal dispute
warranty to go in a binder will differ significantly
settlement procedure (described subsequently)
from the type of paper used i f it iS'intended to be
available.
'
displayed in. close conjunction with the product.
The manufacturer will also want to consider printing

FIRST COMPUTER FAIRE PROCEEDINGS

the text of the warranty on the box if it is the
type of product which can conveniently be displayed
with its box'. Perhaps in the long run such costs
will be passed'on to the consumer. Nevertheless, it
is submitted that the benefit to the consumer in
being able to shop warranties more than makes up for
the added printing costs.
The presale availability rule is applicable to
catalog and mail order sales. The rule requires a
seller to disclose for each warranteed product the
full text of the warranty or an explanation of where
it 'can be obtained free of charge.
The FTC has, as yet, not brought any actions
against retailers for failing to comply,with the
provisions of the presale availability rule. The
reason stated is that it is difficult to determine
if a product has been manufactured after January 1,
1977.

SBCWA REPAIR FACILITY REQUIREMENTS
One area not broached by the MMWA and fully
treated by the SBCWA is the subject of maintenance
of service and repair facilities. The SBCWA mandate's that if there is an express warranty accompanying goods sold in California, the manufacturer of
such goods must maintain, in California, "sufficient
service' and repair facilities reasonably close to
all areas where its consumer goods are sold" to
carry out the term of their warranties. Manufacturers may comply with this requirement by
entering'into warranty service contracts not
exceeding one year with independent service and
repair facilities. Providing facilities in Los
Angeles and San Francisco will probably satisfy the
"reasonably close" requirement.
If a manufacturer maintains service and repair
facilities within California, goods subject to an
express warranty must be serviced or repaired
within 30 days. The buyer may extend this period by
agreeing in writing or the period may be extended by
conditions beyond the control of the manufacturer.
Should the manufacturer of its representative be
unable to repair or replace the goods, the buyer
will be reimbursed in an amount equal to the purchase
price paid less an amount directly attributable to
use by the buyer prior to the discovery of the
defect.
'
If the manufacturer does not maintain repair
facilities in California and has not authorized a
representative to do so, the buyer may return defective goods to either the retailer from whom he
bought the goods or to any other retail seller of
like goods of the same manufacturer. The retailer
to whom the goods are returned may replace or
repair at the retailer's option.
If the retailer opts to repair, he is also
subject to the 30-day requirement. If he can't
replace or repair he must reimburse the buyer.
If a manufacturer does not maintain repair
facilities in California the SBCWA makes such
manufacturer liable to the retailer who incurs
obligations in giving effect to the express
warranty of the manufacturer. The manufacturer
is liab,le as follows:
1.
In the event of replacement, the
manufacturer is liable in an amount equal to
the cost of replacement plus transportation and
handling charges;
,
2.
If the retailer reimburses the buyer,
the manufacturer is liable to the retailer for
the amount of the reimbursement plus handling
charges.
If,: ,the consumer has
warranty repairs and has
services, or if there is
who sells like goods for

gone to a retai ler for
not obtained satisfactory
no retailer in California
the same manufacturer

BOX 1579, PALO ALTO CA 94302

PAGE 75

(i.e., if the manufacturer sells exclusively through
mail order) the consumer may secure the services of
an independent service or repair facility. If the
consumer pursues this option, he is not responsible
for the costs of repairs. The independent repair
facility shall only hold the'manufacturer liable for
such costs. Those costs encompass the actual costs
of repair including costs for parts, transportation
of the goods or parts, plus a reasonable profit.
A few comments about the independent repair
provisions are in order: Those provisions are only
applicable where the wholesale price to the retailer
is $50. How does the consumer know this? The SBCWA
provides that the warranty must state that the
independent repair option is available on all
express warranties accompanying products with a
wholesale price to the retailer of $50 or more.
What about in the mail order situation?
Actually, the independent repair provisions do not
expressly provide coverage in mail order situations.
However, the SBCWA repair facility section is
applicable to "Every manufacturer of consumer
goods sold in this state and for which the manufacturer has made an express warranty .••• "
Manufacturer is broadly defined by the SBCWA as
" ••• any individual, partnership, corporation,
association, or other legal relationship which
manufactures, assembles or produces consumer goods."
The question becomes "is a mail order sale a
sale in this state."
A recent amendment to the Unruh Act (dealing
with consumer credit) provides that: " ••• a ••• contract •.• shall be deemed to have been made in this
state •.• if either the seller offers or agrees in
this state to sell to a buyer who is a resident, of
this state or if such buyer accepts or makes the
offer in this state to buy, regardless of the situs
of ,the contract as specified therein."
Although that section is applicable only to the
Unruh Act as promulgated, the legislative intent as
to mail order purchases is clear. It is the
author's opinion that manufacturers who sell by mail
order to California residents are subject to the
independent repair facility provisions.
Those provisions cannot be waived by any
manufacturer. Any attempted waiver is void.
By imposing liability on the manufacturer
for all warranty repairs the SBCWA enhances the
probability of consumer satisfaction. This is
because the retailers, manufacturer's representatives and independent repair facilities, knowing
that the manufacturer will be liable to them and
that they will be paid a going rate for making
the repairs, will not hesitate to accept warranty
work. Further, manufacturers should be less
likely to delay reimbursement to retailers (their
main source of revenue) than they would 'be to
satisfy isolated claims of the consumers themselves. This is especially true in light of
provisions for treble damages plus costs and
attorney's fees should the manufacturer willfully
violate the reimbursement requirements.
One more unique provision in the SBCWA is
a tolling provision. Where any item costs the
consumer $50 or more, the warranty period is
tolled (extended) from the date the consumer
delivers the goods for warranty repair until
the goods are returned to the consumer.
The SBCWA also contains disclosure requirements. An important addition to the MMWA requirements is that the consumer must be provided with
the name and address of each repair facility in
the state or be provided with
toll free
number which will provide repair facility addresses
for manufacturers who elect to ma,intain such
facilities. The retailer must also provide a
list of authorized repair facilities.

a

FIRST COMPUTER FAIRE PROCEEDINGS'

CONSUMERS' REMEDIES FOR EXPRESS WARRANTIES
The U.C.C. provides the same remedies for
warranties whether they are implied or express.
The SBCWA also provides identical remedies but
allows treble damages in instances where it is
an express warranty that is breached. The MMWA
does not broaden the scope of remedies available
under the U.C.C. and the SBCWA. It does specifically provide that an action under the MMWA
can be brought in·State court or in an appropriate District Court of the United States.
However, the jurisdictional requirements to
bring an action in District Court are almost
prohibitive. That requirement is that the amount in
controversy must be at least $50,000. If the action
is brought as a class action, the named plaintiffs
must number at least 100 and the amount of any individual claim must be at least $25.00.
Perhaps the remedies available to the consumer
seem slight when viewed in the light of the magnitude of the requirements placed on manufacturers and
retailers. However, the most important result of
the warranty legislation is that the consUmer be
aware of his warranty rights and that he be able to
enforce them. The SBCWA's repair facility provisions are perhaps the act's most important
provisions,as it places the onus on the manufacturer to establish repair facilities or to be liable
to retailers or independents who provide repair
facilities for warranty repairs. Presumably,
this will be enforced by the repairer after the
consumer has been satisfied. Nevertheless, in order
to be effective at all, consumers must be aware of
their rights and must take advantage of them.
MAIL ORDERS
An oft heard complaint by consumers in ~ealing
with mail order houses is that, "I ordered a product
and sent my money in months ago and the mail order
house just kept it and didn't send me what I ordered." A new provision of the California Business. &
Professions Code requires that any business conducting a mail order or catalog business in California must, within 6 weeks, either (1) deliver the
goodS ordered; (2) make a full refund; (3) send the
consumer a letter advising him of the duration'of
delay and offering to send him a refund within one
week, or (4) send the consumer substituted goods of
equivalent or superior quality.
A violation
order or catalog
may be recovered
A~torney General

of this section subjects the mail
business to a fine of $2,500 which
in an action brought by the
of the State.

Therefore, if you have had experience with a
mail order ,or catalog house which violates this
provision, call the local Consumer Affairs Bureau or
the Attorney General and notify them of the details
of your experience.
INFORMAL OISPUTE SETTLEMENT MECHANISM
Congress, in enacting the MMWA, has explicitly
dec~ared its purpose to encourage warrantors to
establish procedures for settling consumer disputes,
fairly and expeditiously through informal dispute
settlement mechanisms (IDSM). The MMWA does not
require the establishment of an IOSM but only states
that any mechanism incorporated into the terms of a
written warranty must meet the MMWA's standards.
For.the microcomputer industry, the early establishment of an industry wide informal dispute
settlement mechanism could very well be the solution
to one of the great problems facing the industry.
'That problem grows out of the situation where a
manufacturer.of a peripheral device claims that it
is compatible with "all SlOO buses" or "all 8080
1'\Iicroprocessors."
A perfect example of a real-life compatibility problem is set out in another letter
appearing on paqe 14 of the November/December

PAGE 76

1976 issue of Or. Oobb's Journal. There Glenn
Tenney describes a programing problem resulting
from IMSAI's;use of a NEC 8080A chip instead
of an Intel chip. He states that NEClreported,
in a confidential letter to IMSAI, some "minor"
differences between their chip and Intel',s.
Being a Senior Designer for Compro, Mr.'Tenney
stated that he was more disturbed by not being
informed of the differences than the incompatibility itself.
Being. an "appliance operator" the author
is more concerned about the incompatibility.
IMSAI responded to Mr. Tenney's letter with
information summarizing the differences between
the chip. Well, that's satisfactory for someone
who can understand the difference described,
but as microcomputers become as common as TV
sets and are purchased by people who can use
them, but don't know how they work, the
"solution" adopted in this instance is definitely unsatisfactory.
How can the establishment of an IOSM help solve
this technological morass?
In order ~o see how it
is necessary to have a better understanding of what
the IDSM "mechanism" actually is. The MMWA provides
no definition. The 10SM rule only governs the
minimum requirements of the mechanism with respect
to its organization, operation, record keeping and
qualifications of members. The minimum requirements
are broad enough to encompass 'a wide range of
descriptions.
in general, the proper model would be the
labor dispute analogy. Almost all collective
bargaining contracts include a grievance procedure
with "in house" settlement steps leading to a
terminal step where a decision is made by a neutral
arbitrator (a mechanism). In this analogy the
consumer can be thought of as an aggrieved worker
and a warrantor can be thought of as management. In
the microcomputer industry the neutral arbitrator or
mechanism could be an association consisting of
members who are microcomputer users, manufacturers,
retailers, distributors, microcomputer magazine
publishers, etc. Because the validity of some
"grievances" in this industry would necessarily
require the use of highly sophisticated and
expensive testing equipment, the "offices" of the
mechanism could run the gamut from the basement
workbench of an experimenter, to the repair shop of
a retail outlet, to the facilities of a storefront
operation designed to exclusively act as an office
for a microcomputer industry-wide informal dispute
settlement mechanism.
While the MMWA does not require a warrantor to
establish an IDSM, if a warrantor does establish an
IOSM, the consumer must resort to the IOSM procedure
before filing a lawsuit under which he would obtain
the benefits provided by the MMWA. That is to say,
even if an IDSM is established, the consumer may
still sue and obtain remedies based upon the U.C.C.
and the SBCWA. Further, a consumer may attempt to
resolve the dispute with the warrantor prior to
going to the 10SM procedures. If a consumer does
resort to an IDSM, it is important to note that
neither the consumer nor the warrantor is bound by
the decision of the IDSM. However, if either
decide not to be bound by the decision of the 10SM,
the IDSM decision can be admitted into
evidence should a legal action be brought.
Given that the warrantor is not required to
develop an IOSM, that the consumer. need not resort
to the 10SM and that neither the consumer nor the
warrantor is bound by a decision of the IDSM, what
are the benefits of the establishment of such a
mechanism? As previously indicated, in the microcomputer industry the nature of warranty disputes
(i.e., the compatibility problem) are such that very
few individual consumers have the necessary knowledge
and test equipment to prove that a given peripheral
is not "SlOO compatible." Many manufacturers of
peripherals cannot afford to test their per.ipheral
with every SlOO device. An industry-wide IDSM would

FIRST COMPUTER FAIRE PROCEEDINGS

provide for the warrantor a cost effective procedure
for dispute settlement. Additionally, it is
conceivable that in the dispute settling process, an
expert technical consultant could solve the noncompatability problem, thus saving the warrantor
thousands of dollars in research and development
expenses. A potential consumer with limited
technical expertise would feel more comfortable
purchasing an expensive home computer if he knew
that there was a mechanism to which he could resort
if a manufacturer's claim of compatibility proved
incorrect.
REQUIREMENTS FOR AN IDSM
If an IDSM is used, the warrantor must disclose
that such a mechanism is available on the face of
the written warranty. The warranty must disclose
the name and address of the mechanism or a telephone
number of the mechanism which consumers may use
without charge. Further, the warranty must disclose
the legal ramifications of resorting to the mechanism, as already discussed. The warrantor must also
provide a description of the mechanism procedures,
the time limits adhered to by the mechanism and the
type of information which the mechanism may require
for prompt resolution of warranty disputes.
The MMWA provides that the mechanism shall be
funded and competently staffed at the expense of the
warrantor.
It further provides that no member of an
IDSM deciding a dispute can be a party to the
dispute or an agent or employee of a party to the
dispute. There is a specific provision for the use
of a technical consultant who works in the industry,
so long as such consultant or consultants make up no
more than one-third of the members who will be
deciding a given dispute.
Once a dispute is brought into the IDSM
mechanism, a decision must be rendered wi thin forty
days. The mechanism must then disclose to the
warrantor its decision and the reasons therefor.
If
a decision would requir~ action on the part of the
warrantor, the warrantor must inform the mechanism
whether, and to what extent, the warrantor will
abide by its decision.
The mechanism must then
disclose to the consumer its decision and the
warrantor's intended action. The mechanism must then
ascertain from the consumer within ten working days
whether performance by the warrantor has occurred.
There are also extensive record keeping requirements.
In light of the highly technical nature of many
of the problems which face microcomputer manufacturers, retailers and consumers,the establishment
of an industry-wide IDSM at this early stage
of the industry's development is a factor that might
lead to an earlier broad-based consumer acceptance
and use of microcomputers than anticipated.
If a
toaster doesn't toast, the consumer knows it and the
warrantor knows that it is his responsibility. If
an "S080 compatible" peripheral doesn't work, the
consumer doesn't know if its due to a defect in the
peripheral. The problem evolves into a pointing the
finger at the other guy game.
The bottom line in
such a situation can only be bad news for the microcomputer industry as a whole.
The purpose of the above description is to
suggest a possible solution to a major problem
facing the microcomputer industry.
It is intended
as food for thought.
Nevertheless, the establishment of an industry-wide IDSM would alleviate the
finger pointing and would establish a state of the
art dispute settlement mechanism in a state of the
art industry.

BOX 1579, PALO ALTO CA 94302

PAGE 77

theory of knowledge processing

'Tl

:%I

How do we go about designing a brain-like computer? Do we invent a fancy new device called a neuristor? Do We cook up a chemicsl brew which spontaneously organizes itself? Or shall we depend forever on that old fashioned biological method?

~=
C:::tr1

~~

Nol The answer will not be found in exotic new devices but in the re-e~luation
of our computing methods. All presently known computers may be roughly classified
as methodical, analytical, or empirical computers. Fig. I shows a comparison of
the three computing methods.
Most present-dsy electronic computers are methodical or stored program computers.
A set of input dats ia manipulated by a stored program to yield a set of output
data. The stored program presents a method which specifi*s what steps must be
taken to convert the input data into some desirable output. Some engineers believe
this to be the only way to fly.
Let us consider how a creature with a methodical brain would behave in nature.
This creature would be born with a completely pre-programmed, pre-wired brain without
the ability to learn or accumulate new knowledge. It would react to a certain situation in a predictable way precisely every time. A slight defect would kill the
creature since it would have nobody to repair Its program.
This is obviously not the way our brain works. The question is why have we been
building such overstuffed adding machines? Well, they are simple and they are so
different from ourselves. They do things easily which are difficult for us. They
are great for science and bureaucracy with their rigid equations and rule books but
they will never yield a brain similar to ours.

~("')

tr10

~
til

....
........
"',.. ..
.. "."
" .."
.. "
..=. .. '"
,.gSlSl

g",,,,

'"
""."C

.... :r ..

... ...

'<

0

"'''to

. . . . It

...
g ... ,..

-< ..

o

en ...

='

",.. .......
.... :r
0)

..,..'" ." ....

0"0 ...

.. to

.. It."

,..."

..........
:r ......

A second type, the. analytical computer, Is used by Nature and Man. The old analog
computer used this method. An input pattern is examined to yield an output response
directly dependent on the input pattern. In analog computers, a set of input variables is combined by a pre-wired network of operationsl amplifiers to yield an output
function. The result is obtained, not by a stored program, but by a pre-wired
weighted network. Mother Nature uses this method for all its primitive creatures
and most of the peripheral processing in our brain is organized this way. A fly,
for example, reacts to movement in its direction detected by its eyes by activating
its leg8 and wings for flight.
This type of computer is useful for primitive reflex responses which can be prewired ahead of need. The network is not very flexible and depends on outside wiring
either by man or in nature by the forces of evolution. The assembly of analytical
infinite dimensional networks will be explained later in the text.
Enter the empirical computer. This computer contains no stored program but learns
its behavior pattern by interaction with its environment. A certain input situation is analyzed and a response is formulated according to pre-learned knowledge.
This knowledge is not programmed but obtained from experience, abstract learning,
or duplicating the successful behavior of other people. An empirical computer
would be very flexible. It may have several responses for each situation. It
would constantly update its knowledge and behavior repertoire according to its
changing environment but always remember past experiences.

An empirical computer is now possible but before we can build it we have to aaalyze
exactly what knowledge consists of and how it may be stored. "Knowledge" unlike
mere '~ta" cannot be stored in 8 filing rack type array. It requires a selfassembling tree-like array at which all knowledge is related to other knowledge.
The following five principles will define knowledge processing. They are valid both
for the new computer and to the human brain. They may be hard to understand all
at once but will become more obvious in the later text. They may provide a more
profound understanding of ourselves and natural philosophy~ They may even sprout
a new freak like religious group in Southern California.

g;:g-~st

-6~~&;;

" ..

... :r

to

~fIl~

"' n..

" ..
..
0 ,0.

...
o

....

" :r ..

0' 11

Go

""'''
on ..
... ,<

n ..

.....
.....
.. .....
"' ......

~:;c:

til
n" C
....

:

.... 0""

."

" :r

0
"0 ... to
0

....

..

""

"0 ..

.....

.. .. 0

..
.."'.

"0",

::s

0 n'" 01
0'" CD t1

Q tot
CD ....

"

OOnDl:;ll;"_

•

CD
In

::s

:s ()
0

.....

..........0:"
.. ,.
n ......
n ..
:s c "' 1!:
QQ:sQ.
...

00 .....

'10"t:l"O

'<::1I1t1
"0.

..

o
OQ

0"
no>

....
en :s

.. ...
.....

"1nUltT

:r ... ao:s

'" l:

0)

';: :::.. ="' .. ;;--6

IUC,.,. ....

..

f"tOQ

a

(t

"0:

OI:S HI

n ..

....f't' ....

.....

n
0

::s n :s a

ooDaca"O
C .... tT C

:.~:!
It "C ... :s

........
... .....
"0 "" . .

m(')O)::r

:s

:s ..

III
CD IT Q. 0

..........
(100)'<
,. 0
•
"'1Il . .

o
:s

:r

.. ...

C It H
00,.,.

... 0

..

.

I» Ht'< C
OC
...

o :

0. ..... 0

6~

~

ft>o8-8~
0.::1- .....
"0
nCl,.,.
"t:I

0

.....
:r
t1
Q)

)( 0

I» ,;

.. n-t1::S::r
::s ;ro.Q.Q)
rt .... f!
rt

:::fII~~,<
:J(D"t:IO
r.n II
CD C

!!,.f!5.;g
~n

.:.
,tot

......... _

~ ....
!f~

0 (1)
It .........

:i ~
...0 "CT
I'D

00.0- .....

C""

fI.I (JQ

C'<" .... tb

.....

0." ...
'1 0 0

::s

..

rtCrtnt1

;t'n1'1001

o'<">:r
a .... tD
"afli"""'fn
c ......

CD Q. 11
~

...

......

00 :I ....

::i:i
en
::s
...

.... n

~ ~ ii ~~

........

ncn""
SitTCDD.

-e...

CD"":s
n
::s<
..... OO
a.o (t 1'10

.....

"' ...
....
o

" •

n

'< ...

.....

rto."Of!n
..
...
0
11 "' ....

:ra

!J'9c::"O

.... CI .... :;JC

:s

ng.n

....

........ '111
.. 0 < .....

'" ...
......
fD-c:ro.u.
t.:-co

'<

- r t ....

::s

OQ
.... ftt
(tIDCm ....

(b:s

tot"
totrttDQ)::J'
fI.I

....
It
C CD tot
It .... 0
rt .....
a.:::r"
-,",,0.
011
fa (D J1
fI .....
0 0.

III

..I'.ft

a • <

. :

~

i ,.,.

"o . ....
.....

.....

0

"C

0
..
0'"
0-,1", ..
t1::rCDI1

o
o0"
,.

CD ...

fA

"',.

..

0

'"

~

~

is ?;

'< ..

" .......
III

..

....

t:C

It
" ..
......
n

"' ...
..... 0

~

"'

00"
...
n...

"0"0

a~ g

~

~~
-6
", ... ",

-.... ...

gn"
a .. ..
:s •

..

tTl

0:

~

;:T

00-,1'"

" :r
... n:r

~

CD CD

c:
n
'On ....

.. !l

0

~.ij ~

..."'
..... '<....

~!:!2!i

o ';; ~
........
,.c"
n .,

~. ~;:
nOl

III ..

0"

"
-

III

...

In

....
..

Q.·rt

..... :r

......... ..:s
"to",g
.. C

..........
........
§ :r"
",..0-

0'"

nc ...

:!i§

oo " n...

... n ...

o :r
OQ t-Il>
•

0

::a:

.... CD

"' ...
5."

...0

6~
c

..

~~5

~~[
l>

~
;;;

i
p

:z
o

~

(')

o

3:

,~

-I
,m
,:%I
."

~

:%I

'm

'0

~
(')

m

~

Z
G')

en

~

X

~

,/&)

~

5

»

r

d
(')

»

I

~

~ ~

~

.~
~

~
~

l:IO

~
~
tr1

In

0:1

.£!.§;-L

The proce•• of specifying COIlcept. 1a explained later In Inflnl te .i_.1_1
net_rk.'. fla1ti-dl_.lonal spaoe is only a de_Iptlon of the IIIBt ....tica1
_thod. It doea not: Impl, the existence of such apace •.

THIS FIGVIU CO#PAIUS THE $ MOST I#P()ATIfAiT C()NPUrIH~
MCTHODS. THE £NPIAICAl CONPUTEA Will 8E /iYPI.AIAI£O
~lfrEA IN THC TEKr

2.
YETI(()OlqL

EHplIUCAL
COMPuTER

AIIAL'!TlC4'
CoNI' liTER

coypUTER

this principle specifle. exactly What knowledge COIl.lat. of.
Few objectl in our e n v i _ t are reall, under.tood III detan as to their _
po.ltion and re1atlon.hlp, to.otber Object•• A ROSI for ex..,le COIl.Ists of
flower, orpnelle., protelna, . .ino 'acids, atolD, etc. It ~elate. to other
flower. and enlah in the gerdu eco10D, to cUute, pl.etary _tion, etc.
Not even the word. we uae, such a. proteins or ecology, are really understood.
We gein knowledge however by defining the composition end relation.hlp. one
fact at a tlms. The _re U,htly thia network of facta 1a knit the more kn_ledge 'lie po ......

ttErHoQ
INPUT

OUTPuT

STOREO
l4£rllDO

INPUT I PI/EI/IOUSi'! I OUTPUT

II/PUrl WEIGH rEO IOIJTPUT
NETWORKS

l£AANE/)

KNOWL£DGE

(PNOGRAM)

3.

TYPIC""

"l'IloVl.... I. the ~finltion of COIloept. end their Interrelationship•• "

"/Cnowledge 1a ac_lated In discrete quantum Incrementa which change a concept
to a different concept."

BLOCK 0/dtiNAH
This principle make. it po •• ible to accurately measure Ie_ledge and to stor.
It In digital memories.
The concept ROSI for example I. changed to a different concept RID ROSI by the
addition of its color. The change is always in discrete Increment. which can
be measured, quantified or named.

4.

"Only a few of the infinitely po •• ible concepti exist in the real world."
This prillciple seta a limlt to veriety and ma.a practical COIIIPuters possible
by eUmlnating the Infinite. Ivery posalble concept _!It, however, heve a chance
to become real.

\. SrO/UGE MAP

ADDRESS

"

II

0 ,"ST/filCTlolI ,
/I
l
/I
1
J

II

]

1/

4-

II

SO

-!~
/I

'--

"

I

-II-

_rd.

AOORESS (J

,CAPAC/riVE
S TORAG£ ONLY

s-

"

I

"

GA TE

rop
('wI/TEN

l

I,-T "

/I

3

"

"

4
S-

"

I'

II

II

(,

S

/I~

STORAGE NEtJUIREHEAlT

STORAGE

Taking written Engll.h a. an example, .n almo.t Infi.ite number of posaible
could be aslll!\d)led from the 26 letter. of the alphabet. Only a few
thou.and words exlat In everyday use.

1/£6iIJIRENC/Ir

S.

"l.tab,U.hed kn_ledge exclude. redundant m-ledge."
Thla principle .peclfles • _chanlam which ali_ kn_ledge to be .tored in
highly repetitive and randOlll order alnce every fact h only atored once.
Learning i. the procea. of .toring new kn_ledge. A human, when presented
with a new fact, will learn that fact to increase hh m-ledge. If the as_
fact h presented a second time it will not increase hh kn_ledge and is
therefore' not learned apin. A ._chanislll to filter out already learned knowledge mu.t be iicorporated into a knowledge proce.sina computer. this will
al1_ only new facta to be learned and prevent the accumulation of usele ••
redundant data in the memory. A fact, once learned. mu.t never be learned
apin unles. of course a memory is f.u1ty and keep. forgetting.

ST(JfiAG£
REQUIRE,

PROGRAM

size

The tool. to bulld a kn_ledge proce.sing computer are the inflni te dimensional
networks which will be expl.ined ~.
STORED KNOIVt.£OG£ Introduction to infinite dimenaional networks

What is an Infinl te dl_nsional network and why I. It illlPOrtantT

1.

"Every concept.may be apecified like a point in multi-dimenaional apace."
Thla principle is the very basis of knowledge processing. It provide. a _ans
of defining and manipulating concept.. A concept may be anything that c.n be
named or described, such as physical objects, persona, proces.es or ideas.
Since a single pOint is sufficient to specify .ny concept, its compleXity becomes Irrelevant. This make. It as easy for a human to le.rn s .ingle new numberas to remember the face of a .tranger.

In the Introduction to m-ledge proces.ing it waa .. Id thet any concept may be
specified like a point in multi-dimsn.ional apace. If this is to be u.eful, a method
of specifying points ill multi-dimensional space mu.t be provided.
An infi~te dimensional network may be envisioned as a tree like array. These networks assemble thelllselves automatically from the supplied input data without proGramming or human: supervision. this results in a mechanism which strikingly

,..

!

83:

...C!m

:u

~

:u
m
"V
:u

g

m
m

C

Z
~

~

.~
;:,..
o

»
,..

d
~

§
~

m
'0,1

CD

simulates human learolna. the networks used latar In electronic coaputers are both
real sad i_ainary. They an real insofar as they are stored in digital_ry
devices bllt imaginary because they an ~t actually connected with getes or wires.
They axiat only. as a _t~tical equivalent.
Since infini ta dimensional networks an brand new conCepts ... have to start from
the very beginning.
.
Fig. 2 shows a 3 dimensional network that fa all that can be illustrated on paper.
Thla network may be used to spscify various points In I, 2 or 3 dl,.nsional space.
A speclfic point In 3 dimensional space such as "3" may be specified by Its three
vectors In the flrst,'second and third dimension which are I, 4 and 2. Each of the
vectors presents an Increment of knowledge about the location of point "3" but only
In combination with the vector's orlain.
This first atap allows us to quantify knowledge. A quantum increment in knowledge
consiats of a fact (vector length) and information about Ita location in the network
(vector origin). to apecify a point in 3 dlmenaional apace three knowledge quantuma (3 vectors) are raquired. We do not have a name for a unit of knowledge at
this time but knowledge can now be preCisely measured. FUture generations of studenls
mey graduate with a certified knowladge of 524 @$*Icf&.
FIG 1

:3 OI),fE!lSltJAlAL IlErwORJ<

Z

KNOWLEDG{ QUANTUM
NODE
G

A "Pointer" value is Introduced at thia time. thla value specifies the node from
which a branch ori,inataa. It ta thenfore the number of the previous node in the
sequence.

t

THIIlD
DIMENSION

."

~
~

S
m
:II

~
2i
m

The node name or number is now celled "Address." Every address (node) number
specifies a point in multi-dimensional apace. No 2 nodes in the asme network may
have the same address.

:II

Every knowledge quantum is now specified by a ''Gate" and a "Pointer" which are
together called a "Matrix." Each branch leads to another "Address."

o

Verify that Fig. 3 contains all identical Information from Fia. 2 but in a more
convenien~ way.
Point (addresa) "3" may still be specified prectaely by the 3
vectors (aates) 1, 4 and 2. This network may spread Into additional dimenlions
i f required.
Fig. 4 shows the final step to arrive at a -stored infinite dimensional network.
Its construction is no longer obvious but I t is now suitable for computer processing.

J

P

A "Gate" fa now a CODditton' code which specifies the condition which 1IIIst be _t
to eroas to the next node. In our example it was thelenath of a ftctor but it
may be facts, Input deta, coaditions or anything that can be measured or na_d.
A second law of Infinita dimensional networks Is thatl "Ivery node may sprout an
unltmt'tad number of branches but each pte in a branch lIIIat be unique. No 2
branches from the s _ node may have the _
gate."

The stored network in Fig. 4 WlS derived by simple diasssembi'y of the
Fig. 3 and storing them according to their address (node) number in a
memory. The network in Fig. 4 contains now all identical information
Fig. 3. This network can spread into many dimensions without 11mt.

node. from
common digital
of Fig. 2 and
It can specify

."

on

m
m

Z

C)

en

~

...
X

.~
~

6
l>

r-

a

111$£

VECTOR vaTON
ORIGIII 1.£1I6TII

FI63
'1
'J

~

I

~ECOIIO

I ~/M{N.sION
T

~m

'2.

!

\ \'

...

I.sr
DIKENSloN

FI!lsT DIMENSION

Every specified point in the network la merked by a sep.rate na. . or IlUIIIber. the.
ere 11ke network nodes froll which _ y branches _y sprout. A very illlpol'tant first.
law of iafi.i te dimanaional networks la !;batl "BftI'y Dode in the network la unique
aad no 2 nodes in the _
network _y have the sa. . na_ or number."
Point 113" in ria. 2 is therefon unique and can oaly be reaohed Oftr the thzoee ftCtors I, 4, 2 in the riaht seq_ceo lach node la therefore Ub • fixed point in
IIIIlti-di_slonal space which location la pre~l ..ly knowo. '!he numbers "to the nodes
are easlp.ed In sequence .s required. We do IIOt iteed to re..r .. numbers for SllPty
coordinaUs and .s law 4 of knowledp plOcssslng statas. "CIIlly a faw of the infinitaly possible CODcspta (nodes) exlat in the real world." 1he fact that each natwork
node pra...ta a CODcept as a point tn _ltl-di_ataaal apace will ba_ clear later.
na. 2 la uasful for explaining the firat stap. ria •. 3 allows the network froll
,J'ia. 2 rearranged in • IIOre CODWIli_t way. instead of .howing tb6 ftctors in
their physical length they are spacified .s "Cata" ".lues.

/

/
/

I

"i:W--

OINENSlgK
HErWOI?K NODE
. (KIIO""UIJ6E~II.4NTIJH)
POINTER

ADORESS

(OR/~liI) ~ (CONCEPr)
GATE
(lIEcTolC tENlSr",)

/

I

/

7irH - /

DfH£NSIOJ/

a point in multi-dimensional space using only the.origiDal vector inputs. In our
example pOint "3" was specified by its 3 vectors 1, 4 and 2. Starting address 0
contains a unique stop code marking the network entrance. Starting from this location we ~ry to locate a memory location (matrix) containing a POinter 0 (origin
of that branch) and a Gate 1 (first vector.) We locate this in Address (node) 1.
Address 1 becomes our new point or vector origin. A matrix containing pointer 1
and gate 4 (second vector) is found in address 2 which becomes the new pointer.
Address (poiater) 3 is found after one more step with Pointer 2 and Gate 2.
The above procedure is very cumbersome for humans but not for electronic registers.
The next chapter will show how these networks assemble themselves from the input
data. There is no need for a human operator to specify addresa and pOinter numbers
or to supervise the internal operations of the computer.
FlG.4- STOREO NETW(lRK
AOOII(SS GATe POINTER
'''''- --r-

o

I
2

EAlTRAAICE
I

.,.

J
4
S
6

J
J

7

4-

8

,

I 6
I

0

I

0

I

I
I

6
7
0
I

S

-

l

o

t:

J

S

".

s,

I

j

E

I z
L 3

/!,

I Z

() I

s

7

r

8
9

D

6
0
8

10

/

I

1/

"E I.

3

/2

A

J

/I

13

AOM\SSEm=I<.
o

'v,,,

I

9

tJurp(/T NETWORK
A/)D8ff~

VI'."

o

iSTOI'

:!

I

R
E

/0

T II

3

l.l

I

f

D
A

TOP

( 276\2
I

-I

:;

f

I~

5
6

--

1,;7,.., ...

M£140/(Y ,UA I'

0

/

I ()
I

I z
I

1.

;

4-

y

I

5

T

s

I

()

8

M

I

7

9

RIHE .RED
R()80T- .READY

If)

A I 8
R I 9

rON
£OEA

/I
12

G

0

IZ

14

() I
o I

/5

D

--SMAFIT
- - GOOD

/5

/6

T

I

...J y

13

~
X

....
U1

-oJ
.ID

~

§

The lnput/output learning network and the bi-polar network described so far are only
simple examples of whole families of networks. These more exotic networks may be
derived by modlfication of the gate and pOinter values.
.
The gate value represents the fact whlch determines which network branch la to be
selected. In practlce thls gate value may be lnput characters such as text data.
address numbers from previous networks. log1ca1 operants. polsrity indicators,
numerlcal values or lndirect pointers. The gate value may consist of various aubvalues which may be Interrelated In seweral ways. For example, if the gate conslsts
of two values, the network generator could log1cally OR, AND or EXCWSIVE OR the values to arrive at a very f~exlble gate. The gate could be made very selective or .
approximate. The network gener.tor could select the best fit or the most probable
gate. Some networks, like the simple bi-polar network descrlbed ear11er, contain no
gate value.

10

i 14

I

~~

Z
CO)

en

r10 yield a primitive answering devlce three networks are therefore required. The
()
input output networks convert any Input word pattern into a single number'which to~
tally ldentlfies each word. The address number may then be used to retrieve the
-f
word pattern. A human teacher could educate such a system by typing in some questions ()
and supplying answers. All lnternal operatlons would be handled by the three network g
generators. Address and pointer numbers would be assigned automatlcal1y without
human progranming or supervlsion. Questions and Answers may be entered in any random
order and each set would be learned only once.

"

~~

C

The pointer value can also be modified to yle1d exotic networks. The network shown
in Fig. 6 shows how a network node with two polnters could be u..d to cODstruct a
hereditary tree for a larae number of people. Anode which designates a person has
two origina, one frOID lts father and one frOID its mother. It also must have as gate
a glven name AND a birthdate. The heredlty of a whole natlon can be stored in such a
network. Personal files may be entered ln any repetltive or random order slnce every
personal fl1e is stored only once. The network may be expanded and updated at any
time.
Self-assemUng lnfini te dimenslona1 networks in sUlllllllry are imaginary networks consisting of aate and pOinter values whlch are stored in digital memory devices. Each

~m
~

network ia generated by a fixed (genetic) adcro-routine which is determined by the
network's purpose. All networks reduce complex input patterna to aingle addreas
numbera which are then related to other addresa numbers representing other patterns.
the input dats pattern is compressed but never destroyed. Each pst tern may be fully
retrieved from the sddress number. the content of each word in the digital memory is
unique. No two addresses in the same network may have the same content. The network
memory is accessed by address or content which can be accomplished by scanning conventional memory devices or by future content addressable memories.
FIG_ ~ HEIlEI)ITAI?Y

Bi-polar Network Micro-routine
Matrix (memory content)

-,

Address
Label

Operation
Wait for input pointer number from previous network
- search-memOry to -lOcate .-niatrIx Wi th the correct
input pointer
A) Find input pOinter in memory
Supply output pointer from .ame memory word to
output network. Go back to START
B) Input pointer not In memory
Human education is required
Test ff learning-I.-enabled
A) Lesrning not enabled
Put special pointer code "DON'T KNOW" to output
network. Go back to START
B) Learning enabled
Weit for output painter supplied by human input
and encoded by output network
Store Input_nil output-poliiterIn- next tree memory
location. Go back to START

SffiT

TREE

MATRIX
WiESS POINTER POINTER GATE I GATE 2
?St1l.",-,ITHER 1#t'THEIi

12~~11~:;1

I

EXAM8lE

IDputpointer
Input sequence

CF EXoTIC IYETWORK

WITH 2 GATES ANt) .2 POINTERS

Matrix
Address
(locetio

Learning Network Micro-routine

Address
(location)
Label
STARt
LOOP

ElCIT

----,

I Input GAT!
I POINTER
character Output number

Operation
Setpofntervawe-to 0
Wait for lnpui:character
Examine input character
If input character is an "End of sequence" code
such as space. full stoP. period etc. ao to EXIT
CombIne input CMracterWi th present pointer
value to obtain a matrix
Search or scan tliii memoryto locate -the present
matrix in memory
A) Find present matrix already stored in memory
Upds~e pointer value in matrix to the sddress
value of the memory locstion in which the
matrix wss found. Go to LOOP
B) Matrix not found in memory
(After scan through entire memory)
Store present matrix in next free memory location. Set pointer value in matrix with the
address value of that memory location. Go to LOOP
The present Pointer value is the number which defines
the entire input sequence. Supply this number to the
next network. Go back to START

~

~

"'II

Output Network Micro-routine

Matrix
,

"T

:zl

Label
START
LOOP

Pointer
ut data character Next sddress

----Ga~----

Operation
Walt for the pointernWDlier-input from the
~revious network
Fetch- the coiitent (matr Ix) of the memory
location specified by the pointer value
Examine- matrix.----rr the matrix contsins a
stop code (or address is 0) the output
s~enceis_C!IIDPlete.
If true go back to START
take --:Output data charscter frOm Gate section of
matrix and send it to the output device
Takenew pointer value from the matrix. Th{ s
pointer value will become the address of the next
matrix to be fetched from memory. Go to LOOP

c:
-I

m

:u

~

:u

m

"'II

:u

o
n

m
m

C

Z

c;)

en

~

en

.Ia
~

r
The

human brain

Now that we know what theoretical infinite dimenaional networks are and how they
are assembled let us examine if the human brain could be organized this way. It
is usually not an engineering task to explain brain functions. After all, we engineers want to build computers not duplicste the human brsln. But why should
scientlsta have all the fun? Here then is a highly speculative prediction of how
the human brain may ba organized.
Let ua assume that the brain is indeed a biological infinite dimensional network
which follows the five laws of knowledge processing. How could such a network assemble
itseU in accordance with the known functionina of the nerve cells? We must not
look so much for structure as for the underlYing principle. After all, the theory of
Evolution ¥ss not'explained by showing-the detailed relationship among animal species,
but by inventing the mechanism of mutation and natural selection.

o

»

r

a

g
~

fa

~m
8

To understand the system we lIIUst first examine its smallest comp.onent, the nerve
cell. 'lbis cell, 11ke other cells, h a semi-independent Hving orpnhm which is
self-mintaining, self-dupUcating, and produces its own intemal power from
externally supplied fuel. The nerve cell is specialized for data processing and
is usually a member of a vaat network of interconnected nerve cells. Some nerve
cells have specialized sensor apparatus which serve as input to the networks.
There are several kinds of specialized nerve cells but most are variations of the
same general design.

FIG. 8

DECODING tlNlr

:!!
::II

~

8~

S
m
::II

A nerve cell as shown in Fig. 7 has • cell body with. tree like branching called
dendrites. Theae dendrites present an extended interconnection plane Which allows
other cells in the network to connect to the cell. A long fiber on the other end,
the "Axon," also branchea on the tip to Connect to other nerve cells. The axon of
one cell connects to the dendrites or the cell body of other cells through small
nodule. called synapses. There are two kinds of synapses. One kind is posi tlve to
incr•••• the likelihood for the nerve cell to fire when a aignal arrives from this

~
::II

m

"0
::II

g

m

m

C

rIG.

7

Z

IIERi/E e£t./.

C)

en
NEXT LAYER

~

FII?sT LAYE/(
/leOES
(

I

(·2·3

~

.~

CU+=8

""'s YNAfJSE

PltU/~(/S

,.,. uters. All human knowledge can therefore be collected and stored In more
and more advanced computer a to be of service to all mankind. A aimple skill taught
to an IDN system can be traded snd aold to other users to upgrade their systems.
The effort of any teacher of any skill could contribute to that common deposit of
human knowledge.
A language translator system consisting of six networks Is shown in Fig. 14. This
system contains the same five networks of the previous system. An additional word
translator specifying network is added to decrease memory requirement. This word
translator would translate every word of a language into a word of the otherlanguage. 'It would also specify each word by its type, such as noun, adjective, verb,
etc. This network would therefore be a bipolar network building the word number of
one language, the word address number of the word in the other language, plus the
address number for the word type. A sentence in one language typed into the system
would be converted into a sentence address number. This number is converted by the
bipolar memory Into a aentence addresa number of the aecond language which is then
converted backward through the sentence and word encoding networks into a clear text
output. If a specific sentence cannot be found in the bipolar network, a second
attempt b made by substituting word type gates in the sentence decoding network.
Thia would result in the decoding of a sentence structure decoding with the word
codes to be inserted by the output network. For example, an English-German translation would read:
THERE ARE TWO ROSES IN
THE GARDEN
(Noun 1)
" (number) (Plural)"
"
(Noun 2)
"
ZWEI
ROSEN
STEHN
1M
GARTEN
(Noun 1)
(Number(Plural)
"(Noun 2)
"
THERE ARE (NUMBER) (NOUN 1) IN THE (NOUN 2)
(NUMBER) (NOUN 1) STERN 1M (NOUN 2)
What kind of systems can we expect in the future? At first simple text networks
will be built to be followed by more and larger systems. If the need for an inexpensive nonvolatile, content addressable memory device such as laser at magnetic
bubbles can be aatiafied, a hoat of other applications can be realized. A robot

FIG 14

LANGUAGE

rliANSlArelf

~ItO

CIICOO/N&

::!!

:II

~

8
~

~

What are the implications of thla new computer for our future?
human brain potential and may it endanger human aurvival?
These questions were, up to now, just idle speculations.
and quickly. Let ua examine the facts in detail.

Will it surpass

Now we muat find anawers

i!....
m
:II

~

:II

m
"CI

To answer the question of whether thb computer will ever beat the human brain, we
must examine the three factorsl intelligence. knowledge and Imagination, which like
the legs of a tripod, determine the height of human success.
Intelligence is the innate ability to lsarn, recognize patterns and solve problems.
One might call i t the .-etic hardware provided by Mother Nature. An ION computer
can have unlimited intelligence alnce there b no theoretical limit to ita memory
size, apeed, number of networks and network complexity. Except for economical restrictions there b no reaaon why an IDN computer camot be hundreds or thouaands
of times more intelligent than humans.
Knowledge, as defined earlier, is the definition of concepts and their interrelationships. Knowledge may be compared to the stored software. It may be obtained from
books, teachings or experience. Contrary to the old progra.....d co....uters which
could only be as knowledgeable as their programmers, the new ION computer can obtain
knowledge automatically or combine the knowledge from many people. The amount of
knowledge stored in an ION computer is only limited by the'memory space provided.
Due to the ION inherent data compreasion memory requirement wi'll nearly saturate for
larger computers. Trillion bit laser memoriea available today could store all of
Humanity's present knowledge, including every book ever written by Man. This store
of knowledge could be constantly updated and expanded to provide easy access wi thout
akilled operators.
Imagination or creativity is the ability to find novel answers without hard data or
precedence. ION computers will at first have Uttle imeglnation untll we can define
rules aa to how to solve problema and be Imaginative.
The human brain will therefore remain superior for some time.
ION Robot could be trained to perform moat human jobs which can be defined or
learned. It would perform them more cheaply,faater, more accurately and without

An

:II

g
m

m

o
2
C)
en

~

....X

~

:

r-

o
>

~

~

§
~

m

!!3

sick 1 ..... or vacaUOIl.

SOODer or later . . ha.,. to reaUze that _nay aDd aploymeat

an 0Il1)' crude ...hicles to happiness. I f . resard machi.... as apUflers of tw.a
capabilities .. caa OIlly enr1ch our U .... by more freedom frca physical ll1DltaUons.
MIn wU1 not reach the sters un1e. . hia machine. carry him there. the r . .1 80818 of
....... happiness, such as ....Uc expresslaa, COIIIfort of bodUy funCUOIls, social acceptance, satlsfactlOil of curiosity aDd expresslOil of creativity caD all be _re
. .sUy obtained if _ caa reduce our ph)'.ica1 U.ttaUOIls.

Fra.kensteln coaplex. Accidents will happen unle•• we provide phy.lcal safeguard.
which .y be expre.sed ia the following three rule ••
1)

CaD a COIIiputer ID ti_ be_ truly self a.re?
'1'hII !DgUsh mathelllticiaD, 'l\IrlDg, once specified Wen a COIIIPuter be_s self
a ..re. Thle rule. bow as the "'l\IriDg test" specifies thet WeD, after a prolonsed
CODveraaUon betweeD a humaD and a coq>Uter, one _ s to the CODvictiOD that it is
self aware it Ie for aU practical reaSOD self aware. (£labarrassIDg if the computer
fiads that huans area't self IIWIIre accordiDg to its ow stalldard). Thle test Ie
crude IIDd comparable to a test to determine if it Ie raining outside. "When after
a prolonged walk in the park one haa the i..,ression of getting wt it is raiDing
outside." '1'hII problem is accurscy. How convinced and how long a conversaUon?

2)

Another !DOre practical test Is that a CGq)uter be_s self aware' wheD it appears to
become insaDe.'

3)

Asslllll1ng that a ClOq)uter would be many hundreds of times !DOre intelUgent aDd bowledgeable when it becomes sel f aware. it would perform functions no longer cOlllPreheDsible by hUNn beiDgs. Since humans are iDcapable of recognizing a superior
intellect. they would assume the computer to malfUDction.

'"110 robot should be fumlahed with faciUtt.s for self-dupUcaUOIl or self.adi ficatlOll."
This will prevent a rogue robot from _ufacturiDg others and to modify itself
frca its lateaded purpose. &Dowled,e about it. own coa.tructiOil should be
withheld flOlll a robot unless It has no physical means to effect Ita ow modlficatlOil.

n£very machine should be buUt from degradable material and fumished with an
exhaustible powr source."
A machine which requ'res occasional maintenance la w1nerable. The aeed to use
degradable . .tarials should be universally appUed. It is a cri . . against
Nature to PUlllp _-made, DOn-degradable materials into our environmant. A
rogue robot la need of . .Intenance aad frequent
input will e_tually
run cIowa aad b e _ harmless. If a robot should secure and defend a power
statloa it would be tied dow on that location aDd be unable to do mischief.

pawr

"£very machine should require for its operation a frequent input of human
intent."
this human intent should be expressed by a device which assures that the operatlon of the machine is according to Its creator's intent. A machine which
does not conform to Its specified intent or which function is obsolete should
de-activate itself autOlll8tlcally after _
time.

The abow CODslderations will beCOlDB important in the future.

It will be very difficult to recognize a self aware machine aDd to live with it.
Humans at first had to learn to live with machines aurpassing their muscle strength
several thouslIDds of times; now we have to learn to 11ve with super intelUgent
machines. The time Wen the first cClq>uter becomes self ....re Is hard to predict.
Our brain. after all. is just a CGq)uter and never Ddnd that divine spark. A COlDputer which so closely simulates human brain functions will sooner or later b e _
self aware.
Will this computer pose a threat to human survival?
It certainly couldl But humans have mastered such immensely dangerous forces as
steSID. electricity. atoms. chendstry and biology. Chances are good that we might
not only survive but greatly profit from this Dew technology. A killer robot Containing an IDN brain would be invincible and can only be defeated by other robots.
Thi. ia true for all the other forces mentioned above. '1'hII dsnger is not brought on
by mad scientists since no such threat has ever materialized. The danger lies with
very sane and responsible military techDicians intentionally designing invincible
killer machines to be used by irrational politiciana.
The distingu,ished scientist and writer, Isaac Asi!DOv, has formulated rules for robot
safety (1, ROBOT 1970) which have become known as the 3 Asimov laws of robotics.
His laws are:
1)
2)
3)

A robot may not injure a human being, or, through its inaction allow a human
being to COlDS to harm.
A robot must obey the orders given it by human betngs except where such orders
would conflict with the First Law.
A robot must protect its own existence as long as such protection does not
conflict with the First or Second law.

These rules could be used for designing robots. but in an imperfect world like ours
robots will be built for example by the military for the express purpose to hurt and
kill people. I also believe it to be impossible and wrong for an inferior mind to
control a superior mind. In the, long run a superior intellect will break lIDy jail
CODstructed for it by an Inferior intellect.
We should neither belleve a robot to be always benewlent nor to be obsessed with a

IDN computers have
to be bullt today and sold at a profit. There are _ y problema stUl to be solved
but the basic method is now knowa. The ewlutioa of this new techDlque should lead
to very Interesting devices and a more profound UDderstaading of ourselves and our
brain fUDctlons. We might meet another intelUgent non human creature sooner than
we might expect.

::!!

~

i

s
m

:D

)!
;j

m
."

:D

g
m
m

o

Z
~

..~

~

~

5
~

d

Bibllography

g

David H. Hubel
The Visual Cortex of the Brain
Scientific American Nov. 1963

§

Rosenzweig, Bennet, Diamond
Brain Changes in Response to Experience
Scientific American Feb. 1972
Isaac A.UlOv
The Human Brain

Mentor 451-H71431

Isaac Asimov
t, Robot

Fawcett Crest P2355

Arthur C. Clarke
2001
A Space Odyssey

Signet 451 W6230

Lewis E. Garret
Primer on Artificial Intelligence
Creative Computing Vol 2 No 2 Mar-Apr 1976

."

~
m
88

BOX 1579, PALO ALTO CA 94302

FIRST COMPUTER FAIRE PROCEEDINGS

ROAMING AROUND IN ABSTRACT 3-D SPACES

Tom DeFanti, Dan Sandin, and Larry·Leske
University of Illinois at Chicago Circle
Box 4348, Chicago, IL 60680
Producing visuals by computer which have the subletyof form
and pleasure that we associate with our most powerful music
requires a computer environment predicated upon extremely rich
feedback and real-time production. Micro-computerists have a
much better feel for this need than the average large-computer
user; hence this presentation.
We have isolated four basic organizing principles of highlY
interactive systems: rich feedback, ubiquitous tactile contro~
easy parallel processing and straightforward extensibility.
The video tapes accompanying this presentation will first demonstrate the GRASSI Image Processor system at UICC and then show a
live performance in concert of 3-D full-color computer graphic~
Tom DeFanti and Dan Sandin are faculty members at the Unive~
sity of Illinois at Chicago Circle who have been working on
highly interactive digital and analog computer systems for six
years. They were some of the very first people to recognize
the power of video in computer graphic systems and they organized the first live digital/analog computer graphics concert
in 1975. Larry Leske has been an integral part of the graphics
effort, having built most of the AID and D/A interfaces. Larry
is also currently involved in a project to bring highly interactive graphics to the home.
VIDEO SYNTHESES - EXPANDING ELECTRONIC VISION
Stephen Beck, Electronic Videographer
Beck Video graphics
1406 Euclid Ave, #3
Berkeley CA 94708
Abstract:
Since 1968 Stephen Bec k has been among the pioneers in developing personal videographic tools. His invention, the Beck
Direct Video Synthesizer, has been used to realize videotape
and electronic film compositions of both graphic and psychological substance.
In this informal presentation, Beck will discuss general
aspects of his system, illustrated with color slides, and present
two color videotapes showing it's creative application entitled
VIDEO WEAVINGS and UNION.
Both analog and digital techniques are used in Beck's Synthesizer. With projection transparancies some aspects of the
system of television scan and color will be presented during
the technical portion of the presentation.
Background:
Stephen Beck has been developing both technical and videotape
applications of video synthesis and digital video from his
studio in Berkeley. He has received grants to further his
research and production from the National Endowment for the
Arts, the American Film Institute, and the Rockefeller Foundation. He was with the National Center for Experiments in Television at KQED, San Francisco from 1970 - 1973, and is currently
a consultant on video game systems for National Semiconductor
Corporation.
Beck holds a BSEE from the University of California, Berkeley,
and his videotape and vilms are in public and private collections world-wide.
COMPUTER GENERATED INTEGRAL HOLOGRAPHY

Michael Fisher
Multiplex Company
454 Shotwell St.
San Francisco, CA 94110
A hologram will be defined from a physical and information
storage point of view using simple graphic models. An illustrated description of how different kinds of holograms (including transmission, reflection, projected, integral) are made and
some of their characteristics will be described from a historical perspective. Some applications of computer generated
integral holograms will be discussed and information on how you
can make them will be presented.

PAGE 89

COMPOSING UYNAMIC LASER LIGHT SCULPTURES VIA A HYBRID ELECTRONIC
WAVE SYSTEM
Ron Pellegrino
701 Del Mar Avenue
Novato CA 94947
All the necessary hardware is available off the shelf and
accessible to anyone desiring a personal system. The hybrid
electronic wave system is a Synthi AKS, an instrument originally designed for electronic music.
The AKS is divided into
two parts: 1) an analog signal generating, processing and controlling section with matrix patching and 2) a digital keyboard
which is touch sensitive and includes a 256-event memory driven
by a variable speed clock, 4 touch voltage "transposers" which
can be summed in any combination, a random voltage output and
controls for expanding and compressing the d/a converted voltage before it is applied to the analog section of the instrument.
The two AKS outputs can be connected to any home stereo
amplifier with 10 - 15 watts rms per channel to achieve proper
level control for the next stage, driving a pair of optical
scanners mounted in the xy mode. Produced by General Scanning
Inc., the optical scanners, G-06l2 and G-l08, were selected for
their wide band width (for electro-mechanical systems) and
their high resonant frequencies. The scanners are galvanometers
with short arms to which are attached light-weight high quality
mirrors.

An inexpensive one mw Spectra Physics helium neon laser
beam is directed at the scanners to create Lissajous figures
uniquely characteristic of electro-mechanical systems. The
exploration of every imaginable combination of dynamic waveform
transformation leads to the composition of laser light sculptures which are analogous to what one senses as living forms.

DIGITAL VIDEO PAINTING - TOWARDS THE NEW PERSONAL MEDIA
Richard Shoup
Xerox Palo Alto Research Center
3333 Coyote Hill Rd.
Palo Alto CA 94304
1. Pictures as important vehicles for communication and selfexpression. The human visual system as a powerful receiver and
interpreter of visual information.
2. Shortcomings of human abilities to create and manipulate
imagery using ordinary physical media.
3. An example of an electronic visual medium, the Superpaint
system (cira 1974-5). A videotape will show examples of freehand drawing and painting, color space manipulations, areafilling, moving, shrinking, transparent paint, multicolor
brushes, animation and special effects, etc.
4. Some thoughts on system design, personal computers, etc.,
as appropriate to audience and other speakers.

ELECTRONICALLY PRODUCED VIDEO GRAPHIC ANIMATION
by IMAGE WEST
Terry Craig
IMAGE WEST, LIMITED
345 N. Highland Avenue
Los Angeles, California
90038
A brief, informal discussion of the use of video animation
in the production of television and film special effects.
A sample of our work in the television field will be shown.
Terry Craig joined the Image West staff soon after it opened
its doors in August, 1974. During this period he has worked as
an art director, commercial director and is presently Production
Manager. He has a BA in Broadcasting from California State
University at San Francisco. He supported himself while in
college by working as a broadcast engineer for KQIlD, KEMO & KKHI
in San Francisco. Prior to this he had six years experience as
an electronics technician.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

VIDEO SYNTHESIS & PERFORMANCE
WITH AN ANALOG COMPUTER
Jo Ann Gillerman
4250 Horton Street
Emervville CA 9460~

The Sandin Im3.fe Process or (IP) is <:In analog r~.tch­
programmable instrument desif"ned by Daniel Sandin at
the U. of Illi Chicago Circle. The IF accepts signals of.! 0.5 volts 750hmEl, includinp: video signals.
This moduh.r instrument m'l.Y rflcE!ive in;,uts from cameras, VTRs, or both. I built a copy of ·thE! Sandin
Image Proce'lsor that I now UHP. prim'l.rily as a real
time ins"trumen-f; in live electronic 3.udio/video performa.nces, and in sturtio production work of analog
video processing and synthesis.
Of thp. many tynes of videa pE!rformc;nce, I make a
distinction between nerform1.nces conceived and derlen,1ent on video nnr:l the,-I;rical nerform',nces documented
on video ta1Jp.. I do Derform'l.nces or intflractlve
environr~ents th~.t are defined by thp. T)arameters of
video, usually i:'lVolving the Im<:lge Process()r, and
frequp.ntly 1Jl'Wing it 'l.S 8.n instrument.
Real time is an element I believe to bo Bxtremely
imnort9.nt in l)erfarm~.nce. Real time reans a contin1I0US flow throu,g'h time, une1i ted in the tradi ti.on~ 1
sense, and effected by events pRrticulRr to BRCh indi..vi!lu8.1 situ8.tion. Of primary importance in working
real time is to be able tl) g.ccess as many input
source~ "IS needed for '1 '::nrticular piece. This is one
application of a computer, the Il'1ase Processor in my
case. i',ore and varied "witches c~.n be Plade effici.entIV and fjuickly with digital circuitry~ Also, of utmost imr'ort-:tnce in g,udio/vide 0 pArfor~2_nce is for
hoth me-Jiums to be of W1U3.1 im'Jort"nce ",nd to perf'orm
as equal inntruments, Bath shnuld h3ve active ~nd
p2'''~ive "u3.1itip.s, "lnd be sensitive to unbue Drob1ems of ·t'NC different mecl.iur:ls actin!,\
nne in real
time.

"C'

A hi{Thly nrorluctive s i tU8ti,,". '"hich I call R Fant'l.sy
FE'.cility, 'v')ulr! hrluse efjuipment cf vidp.o, 'lUdio, and
both digi t'll 9.nrl em'!.lo!,: computers. It would provide
a comf0rtable space for performances "nd studio 'Nork
of a hi.c:hly sophistic9.ted n'ltl're. Emphasis c·~uld be
directed toward software concerns, and hassels of
moving eg uipment Minimized c :msiderably. I t would be
wonderful for the desif';m~rs of virleo hardware to kepp
in mind the performance oriented in future desic;ns.
That iSI small, sturdy, compact, reliable, rugged,
easily transportClble, inexpens ivp., and bst, bt.:t not
least, a larr;p. viewinl': scrp.en c"lPRhlp. of hiph resolution without R crmsole in the opti1":111:1 viewin!': ,.,l'lce!
Aside from t.he slides, one of the video t~.",es shown
during my informal talk will he an eX8mple of +he
Sandin Image Processor in conjunction 'vith a PDP11 and a Vector Gener'lJ DisnJay. It was ~~.de in
Chicago 'l.t the U. of 11 Co. ChicR70 Circle usinr- R
digit'll programmine: system desir:ned by Tom Def~nti.
The tape was originally done in reql time, Rnd
could be performed given sp?ce 8.nrl comper8ble equipment. The digital portions of the tape were done by
Gunther Tetz and the analog process ing was done by
myself on the Sandin Image Processor which is an analog patch programmable instrument designed •• ,
Having graduated with an ~IFA from the Chicago Art
Institute in 1975, I am presently a free lance artist
doing video in t.he Bay Area. ti,ost recently. I have
been involved in live gigs with electranic musicians,
but have also been doine: production work using the
Image Processor for both commercial and personal work.

PAGE 90

FIRST COMPUTER FAIRE PROCEEDINGS

THE STANFORD COMPUTER MUSIC PROJECT
John Chowning and James A. Moorer
Department of Music
Stanford University
Stanford CA 94305

A major American contribution to present and future
music exists in the application of a rapidly developing
computer technology to the art and science of music.
The extraordinary. results already - obtained have
occurred in those few instances where scientists and
musicians have taken the opportunity to bring their
respective skills to bear on problems of common interest
in a rich interdisciplinary environment. It is an· example
of cooperation, but more, an expression of the freedom
of intellect and invention, where creative minds from
diverse disciplines have joined in a common goal to
produce fundamental knowledge which must be the
source for new music, and to produce works of art
which reflect the scientific-technological riches of the
present.

BOX 1579, PALO ALTO CA 94302

PAGE 91

experimentation with the sounds of natural instruments.
By modifying the sounds of these instruments in
systematic ways, then testing the perceptual effects of
the· modifications, a great deal of information has been
produced on the way musical timbre is perceived.
Several papers and technical reports have been
produced describing the techniques and results of this
research.
Unfortunately, it is beyond the scope of this
presentation to give a detailed description of the
center's activities, or even of the technology of sound
production. For this purpose, we refer the reader to the
article by Moorer in the Computer Music Journal
(available through People's Computer Company, 1010
Doyle Street, Box E, Menlo Park, Ca. 94025) entitled
"Signal Processing Aspects of Computer Music - A
Survey". For more detailed information, a number of
publications are available either from the Stanford
department of Music or from nationally known journals.
A list of those publications with a partial list of abstracts
follows.

At Stanford University, such cooperation has been
commonplace over the past twelve years. In the
beginning, progress was made in the analysis, synthesis,
and psychology of sound perception in largely
unsupported work by professors, graduate students, and
staff members. In June of 1975, the Center for
Computer Research in Music and Acoustics (CCRMA) was
formed with funding provided jointly by the National
Science Foundation for research and teaching in
computer techniques of interactive sound production and
the perception of timbre, and by a one-time grant from
the National Endowment for the Arts for computing
equipment for musical purposes. One aim of the Center
was to establish an international facility where
researchers, composers, and students could work with
strong computer-based technological support.

In general, little of the center's work is meaningful at
this time for the computer hobbiest. Probably the most
relevant work is that of frequency modulation synthesis
(see Chowning's article in the Audio Engineering Society
Journal). We expect, however, that it will not be long
before the technology catches up with the techniques,
allowing every computer hobbiest to synthesize a small
orchestra in his workshop.
INTERNAL PUBLICATIONS

The status of the facility as it now stands is a multifaceted topic. As a musical instrument, the computer
system is possibly the most flexible of all instruments.
To speak of it as a conventional musical instrument,
however, is somewhat misleading because the system is
capable of simultaneously producing a large number of
independent
voices
having
arbitrary
timbral
characteristics. It is much more general than a
conventional musical instrument in that it can generate
any sound that can be produced by loudspeakers,
modify and transform real sounds entered into the
system by means of microphone and digital-to-analog
converters, remember and modify articulated musical
input, and simulate the location and movement of sounds
in a variety of illusory reverberant spaces. Equally
important, the facility is capable of serving a number of
composers and researchers simultaneously, providing for
each a direct control over the medium to a degree which
was never before possible.

The Stanford computer
music
group
produces
of
the
technical memoranda, describing results
research done at Stanford. We can offer these
memoranda to the public, but we request that we be
reimbursed for publication costs by a donation of the
amount listed by each memo. This donation goes
exclusively into the publication funds for the project and
helps us bring this work to the public. Make checks
payable to Stanford University. The donation is taxdeduct able.

As a research tool, the computer has shown itself to be
uniquely useful in generating precisely controlled stimuli
for
perceptual research. The analysis-synthesis
techniques
developed
here
allow
for
direct

Center for Computer Research
in Music and Acoustics
Department of Music
Stanford University
Stanford, California 94305

STAN-M-l
July, 1974
85.65
"Computer Simulation of Music Instrument Tones in
Reverberant Environments"
by John M. Chowning, John M. Grey,
Loren Rush, and James A. Moorer
This is a reprint of selected portions of the NSF
proposal which resulted in a grant to the computer
music group for research over a two-year period. The
following is the abstract from the memo:
Novel and powerful computer· simulation techniques
have been developed which produce realistic music

FIRST COMPUTER

FAIR~

PROCEEDINGS.

BOX 1579, PALO ALTO CA 94302

instrument tones that can be dynamically moved to
arbitrary positions within a simulated reverberant space
of arbitrary size by means of computer control of
loudspeakers.
Research support for the
four
simulation of complex auditory signals and environments
will allow the further development and application
of computer techniques for digital signal processing,
graphics, and eomputer based subjective scaling,
toward the analysis, data reduction, and synthesis
of music instrument tones and reverberant 'spaces.
Main areas of inquiry are: 1) those physical
characteristics of a tone which have perceptual
significance, 2) the simplest data base for perceptual
of
representation of a tone, 3) the
effect
reverberation and location on the perception of a
tone, and 4) optimum artificial reverberation techniques
and position and number of loudspeakers for producii,g
a full illusion of azimuth, distance, and altitude. These
areas have been scantily investigated, if at all, and they
bear on a larger more profound problem of intense
cross-disciplinary Interest: the cognitive processing and
organization of auditory· stimuli. The advanced state of
possible
the
computer technology now makes
realization of a small computer system for the purpose
of real-time simulation. The proposed research includes
the specification of, and program development for, a
small special purpose computing system for real-time,
interactive acoustical signal processing. The research in
simulation and system development has Significant
applications
in
a variety of
areas including
psychology, education,architectural acoustics, audio
engineering, and music.
STAN-M-2
February, 1975
"An Exploration of Musical Timbre"
by John M Grey

87.10

This is a reprint of John Grey's doctoral
dissertation, submitted to the department of Psychology,
Stanford University.
Due to its overwhelming complexity, timbre perception
is a poorly understood subject in the field of
auditory perception. Computer-based research tools
.have been developed that appear to be important for
an investigation of timbre perception. In the work to
be described, an exploratory approach was formulated
for dealing with this highly multidimensional attribute of
sound. This approach utilized a computer technique for
the synthesis of musical timbres based on the analysis
of natural instrument tones. This technique was useful
for generating stimuli in timbre experiments because
of its to effectiveness in allowing the investigator to
specify and manipulate the physical properties of
complex time-variant tones. An important discovery
resulted suggesting that naturalistic tones can be
synthesized from a vastly simplified set of physical
properties. These simplified tones were useful as
stimuli in further studies on timbre perception because
of the great reduction in the number of physical factors
considered
in
making
psychophysical
to be
interpretations of perceptual data. Ahother study
undertopk to equalize a set of tones in the dimensions

PAGE 92

of pitch, loudness and duration, in order to eliminate
confounding factors from future judgments on different
timbres. The simplified and matched tones were rated
by pairwise similarity in a further study, and the
results
were
treated
with
computer-based
multidimensional scaling techniques to obtain an
interpretable data structure in a low dimensionality.
Three dimensions were found to explain the similarity
data. Two were related to obvious physical properties
of the tones (to the gross characteristics of the
spectral energy distribution; and to the existence of
precedent
low-amplitude,
high-frequency,
and
possibly inharmonic energy in the initial segment of the
attack). The third dimension was interpretable either in
terms of a physical property (synchronicity in the'
attacks of . higher harmonics) or as a higher-level
distinction made between the tones on the basis of their
musical instrument family. Another set of studies next
initiated an exploration of timbre in terms of
continuous versus categorical perception. An algorithm
was designed to generate a set of tones interpolating
between
two' naturalistic timbres. Identification,
discrimination and perceptual similarity studies were
performed using a set of stimuli generated by
interpolations.
The
results
of
these
studies
suggested that interpolations were perceived to be
continuous rather than categorical. Furthermore, the
timbral similarith:~s between a partial set of the
naturalistic and interpolated tones revealed three
perceptual dimensions that. related directly to those
found above for the total set of naturalistic stimuli. The
first two physically-related dimensions were found,
and the third dimension seemed to correspond to a
higher-order distinction made between naturalistic tones
and the interpolation-derived tones, this superseding
the
family distinction made for the total set of
naturalistic tones. A notion of timbre is developed
involving both a higher-level perceptual processing of
tones that has access
to
stored
information
relating to the distinctive features of identifiable
sources, and a lower-level, qualitative perceptual
comparison of tones with respect to gross acoustical
features lying outside of the domain of specific
identification. Suggestions for future research are made.
.STAN-M-3
May, 1975
88.60
"On the Segmentation and Analysis of Continuous
Musical Sound by Digital Computer"
by James A.Moorer
This is a reprint of James Moorer's doctoral
dissertation, submitted to the department of Computer
Science, Stanford Uriiversity.
The problem addressed by this dissertation is that of
the transcription of musical sound by computer. A
piece of polyphonic musical sound is digitized and stored
in the computer. A completely automatic procedure
then takes the digitized waveform and produces· a
written manuscript which describes in classical
musical notation what notes were played. We do not
attempt to identify the instruments involved. The
program does not need to know what instruments were

FIRST COMPUTER FAIRE PROCEEDINGS

playing.
It would appear that it is quite difficult to achieve
human performance in taking musical dictation. To
simplify the task, certain restrictions have been placed
on the problem: (1) The pieces must have no more than
two independent voices. (2) Vibrato and glissando
must not be present. (3) Notes must be no shorter than
80 milliseconds. (4) The fundamental frequency of a note
must
not coincide
with
a
harmonic
of
a
simultaneously sounding note of a different frequency.
The first three conditions are not inherent limitations
in the procedures, but were done simply for
convenience. The last condition would seem to require
more study to determine the cues that human
listeners use to distinguish, for example, notes at
unison or octaves. Numerous other lesser restrictions
were also imposed on the music to be analysed.
The method used for this analysis is a directed bank of
sharp-cutoff bandpass filters. First, a pitch detector is
used to determine the harmony of the piece at each
point in time. Using the harmony information, the
filters is
frequencies of a band of bandpass
determined so as to assure that every harmonic of
every instrument will pass through at least one of the
filters. 'The output of each filter is processed by a
pitch detector and an energy detector. This gives power
and frequency information as functions of time. Each
power and frequency function pair is rated as to
its quality. The rating takes into account the constancy
of the frequency function, the smoothness of the power
function, and several other measurements on the
functions. This rating is used to eliminate spurious traces
and null filter outputs.
Notes are then inferred from groups of power and
frequency function pairs that occur simultaneously
with frequencies that are harmonically related. Notes
with higher overall ratings are preferred over other
note hypotheses. The melodies are then grouped by
separating the notes into the higher voice and the lower
voice. Voice crossings are not tracked. For the final
manuscripting, Professor Leland Smith's MSS program
was used. The analysis program produces directly input
for the manuscripting program, thus the entire
procedure is automated.
In addition to the above described system, many other
techniques were examined for their utility in this
task. Each technique that was explored is described and
analysed, with a description of why it was not found
useful for this task.
One interesting observation is that there is considerably
more activity in a piece of music than is perceived by
the listner. This is especially common with stringed
instruments, because the strings that are not being
manipulated invariably resonate and produce sounds
independently which are generally not heard due to
aural masking. This indicates that perhaps we should
use more. perceptually-based techniques to help
determine what would actually be heard in a piece of
music, rather than determine exactly what is there,

BOX 1579, PALO ALTO CA 94302

PAGE 93

although detailed descriptions of the contents of the
piece may be useful for other purposes, such as music
education or musicology.
In general, the system works tolerably well on the
restricted class of musical sound. Examples are
shown which demonstrate the viability of the system
for different instruments and musical styles. Since the
procedure is extremely costly in terms of computer
time, only a limited number of examples could be
processed. These examples are discussed with a
description of how the system could be improved
and how the restrictions might be eliminated by
better processing techniques.
STAN-M-4
February, 1975
81.80
"On the Loudness of Complex, Time-Variant Tones"
by James A. Moorer
This memo is part of a proposal to the NSF division of
Psychobiology.
This study of loudness is motivated by the discovery
that a set of complex, time-variant tones appear to
behave differently with respect to loudness than would
be predicted by the methods proposed in the literature.
It is possible that the time-variant behavior of the
sounds influences the loudness, so that a more complete
theory of loudness must take this behavior into account,
We thus propose to study these data and attempt to
either verify the existing theories of loudness or
formulate a more comprehensive hypothesis of
the
currently existing
loudness, building upon
and
to
test
this
hypothesis
by
theories,
synthesizing
new
tones,
dOing
equalization
experiments, and comparing the results with the
predictions of the model of loudness perception.
STAN-M-5
December, 1975
83.00
"The Synthesis of Complex Audio Spectra
by Means of Discrete Summation Formulae"
by James A. Moorer
A new family of economical and versatile synthesis
techniques have been discovered which provide a means
of controlling the spectra of audio signals that has
capabilities and control similar to those of Chowning's
frequency modulation technique. The advantages of the
current methods over frequency modulation synthesis
are that the signal can be exactly limited to a specified
number of partials, and that "one-sided" spectra can be
conveniently synthesized.
NOTE: This document is no longer printed, because it is
superceeded by the Audio Engineering Society Journal
article:
James A. Moorer, "The Synthesis of Complex Audio
Spectra by Means of Discrete Summation Formulae",
Journal of the Audio Engineering Society, VoluMe 24, #9,
November 1970, pp 717-727

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

Reprints of this article can be ordered directly from the
Audio Engineering Society. 60 East 42nd Street, New
York, N.Y. 10017
BIBLIOGRAPHY OF NATIONAL PUBLICATIONS
John M. Chowning, "The Simulation of Moving Sound
Sources", Journal of the Audio Engineering Society,
Volume 19, #1, 1971
A digital computer was used to generate
four channels of information which are
recorded on· a tape recorder. The computer
program provides control over the apparent
·Iocation and movement of a synthesized
sound in an illusory acoustical space. The
method controls the distribution and
amplitude of direct and reverberant signals
between the loudspeakers to provide the
angular and distance information and
introduces a Doppler shift to enhance
velocity information.
John M. Chowning, "The Synthesis of Complex Audio
Spectra by Means of Frequency Modulation", Journal of
the Audio Engineering Society, Volume 21, # 7,
September 1973, pages 526-534
A new application of the well-known
process of frequency modulation is shown
to result in a surprising control of audio
spectra. The technique provides a means of
great simplicity to control the spectral
components and their evolution in time.
Such dynamic spectra are diverse in their
subjective impressions and include sounds
both known and unknown.
James A. Moorer, "The Optimum Comb Method of Pitch
Period Analysis of Continuous Digitized Speech", IEEE
Trans. on Acoustics, Speech, and Signal Processing, Vol.
ASSP-22, #5, October 1974, pp330-338
A new method of tracking the fundamental
frequency of voiced speech is described.
The method is shown to be of similar
accuracy as the cepstrum technique. Since
the method involves only additions, no
multiplication, it is shown to be faster than
the SIFT algorithm. The basis of the method
is searching for a minimum in the magnitude
of the difference between a speech
segment and a delayed speech segment.
This is shown to be equivalent to selecting
the comb filter which best annhilates the
input signal.
James A. Moorer, "The Use of the Phase Vocoder in
Computer Music Applications", Presented at the 55th
Convention of the Audio Engineering Society, October
29-November 1, 1976, available as Preprint number
1146 (E:-1)

PAGE 94

The phase vocoder is an analysis-synthesis
system which has as intermediate data the
time-variant discrete Fourier spectrum of
the input signal. It can be formulated ina
way such that the synthesized signal is
identical to the original, both theoretically
and practically. The intermediate data can
. be transformed, also with no loss of
information, into the more conventional
magnitude and frequency representation.
These intermediate data can then be used
to resynthesize the tone at different
pitches or different rates than the original
with the advantage that when no
modification is made, the synthetic tone is
absolutely Identical to the original. This
represents a significant advance over the
Heterodyne filter, which placed sever.
restrictions on the amount of variation in
pitch or amplitude that could be analysed.
The phase vocoder has no such restrictions .
and can just as easily deal with vibrato and
inharmonic es.
Since scaling the frequencies in the phase
vocoder analysis data also scales the
spectrum up, use of this modification with
speech can produce altered vowel tones. If
this method is combined with the linear
alter
predictor, using t~e phase vocoder
the pitch of the error signal, then the
spectrum can be held constant while the
pitch is changed, thus allowing independent
control over time, pitch, and spectrum.
Vowel quality can be preserved or altered
at will. Again, if no modification is made, the
combination of the linear predictor and the
phase vocoder is an identity, both
theoretically and practically.

to

James A. Moorer, "The Synthesis of Complex Audio
Spectra by Means of Discrete. Summation Formulae",
Journal of the Audio Engineering Society, Volume 24, #9,
November 1976, pp 717-727 (this superceeds memo
STAN-M-5)
James A. Moorer, "Signal Processing Aspects of
Computer Music - A Survey", Invited paper, to be
published in the July 1977 issue of the Proceedings of
the IEEE. Also reproduced in the Computer Music Journal
Volume 1, Number 1
The application of modern digital signal
processing techniques to the production and
processing of musical sound gives the
composer and musician a level of freedom
and precision of control never before
obtainable. This paper surveys the use of
analysis of natural sounds for synthesis, the
use of speech and vocoder techniques,
methods of artificial reverberation, the use
of discrete summation formulae for highly
efficient synthesis, the concept of the alldigital recording studio, a.nd discusses the

FIRST COMPUTER FAIRE PROCEEDINGS

role of special-purpose hardware in digital
music synthesis, illustrated with two unique
digital music synthesizers.
SUBMITTED FOR PUBLICATION
John M. Grey, James A. Moorer, itA Perceptual Evaluation
of Synthetic Music Instrument Tones", Journal of the
Acoustical Society of America
An analysis-based synthesis technique for
the computer generation of musical
Instrument
tones
was
perceptually
evaluated in terms of the discriminability of
16 original and re-synthesized tones taken
from a wide class of orchestral instruments
having quasi-harmonic series. The analysis
technique used was the heterodyne filter which produced a set of intermediate data
for additive synthesis, consisting of timevariant amplitude and frequency functions
for the set of partials of each tone. Three
successive levels of data reduction were
applied to this intermediate data, producing
types of simplified signals that were also
compared with the original and resyhthesized tones. The results of this
study, in which all combinations of signals
vlere
compared,
demonstrated
the
perceptual closeness of the original and
directly re-synthesized tones. An orderly
relationship was found between the form of
data reduction incurred by the signals and
their relative discriminability, measured by
a modified AAAB discrimination procedure.
Direct judgments of the relative sizes of the
differences between the tones agreed with
these results; multidimensional scaling of the
latter data provided a visual display of the
relationships among the different forms of
tones that pointed out the importance of
preserving small details existing in their
attack segments. Of the three forms of
simplification attempted with the tones,the
most successful was a line-segment
approximation to time-variant amplitude and
frequency functions for the partials. The
pronounced success of this modification
strongly suggests that many of the microfluctuations usually found in the analyzed
physical attributes of music instrument
tones have little perceptual significance.
John M. Grey, "Multidimensional Perceptual Scaling of
Musical Timbres", Journal of the Acoustical Society of
America
IN PREPARATION
John M. Grey, John W. Gordon, "Perceptual Effects of
Spectral Modifications on Musical Timbres", for the

BOX 1579, PALO ALTO CA 94302

PAGE 95

Journal of the Acoustical Society of America
John M. Grey, "Perceptual Continuity of Interpolations
Between Musical Timbres", for the Journal of the
Acoustical Society of America
John M. Grey, "Multidimensional Scaling of Interpolated
Music Instrument Tones", for the Journal of the
Acoustical SOciety of America

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

PAGE 96

Design of High Fidelity , Real-Time,
Digital Hardware for Music Synthesis
John Snell
Editor, Computer Music Journal
People's Computer Company
Box E, Menlo Park CA 94025
ABSTRACT

A digital oscillator is capable of generating a large number of partials (hannonic or inhannonic sine waves) with independent control of frequencies and independent control of
amplitudes. Any waveshape may be generated. The oscillator
design described here may be used in a musical instrument
which may be played by a musician, not just programmed. The
sound would be heard at the same time that a key or pressure
sensitive pad was pressed, like a traditional musical instrument.
Envelopes may be generated in software or hardware. A primitive hardware envelope generator is shown which will generate
up to 256 different amplitude envelopes and up to 256 different frequency envelopes. The envelope generators will generate
any shape curve (not just exponential curves); and the envelope shapes may be changed note by note. The final two oscillator designs will perfonn sine summation synthesis (sometimes referred to, somewhat misleadingly, as Fourier synthesis)
as well as FM synthesis with multiple carriers and/or modulators (with up to 128 modulation index envelopes). One oscillator design may be constructed from integrated circuits (not
including the DAC, deglitching circuit and low pass mter)
which may be purchased for less than $275. The frequencies
and amplitudes of the sinusoidal components from the slow
oscillator may be controlled with an inexpensive microcomputer. A higher speed oscillator design is described which is
capable of generating up to 256 sinusoidal components. Noise
or distortion from these oscillators will be inaudible to most
people.

INTRODUCTION
In experimenting with non-traditional tone
colors or timbres it is instructive to determine which
parameters of sound need to be controlled in order to
generate sounds which could come from acoustic
musical instruments. Once these parameters are
determined, they may be played with or varied to
produce non-traditional sounds which are just as
interesting in timbre as the sounds from acoustic
musical instruments.
The sine wave illustrated in Figure I is the most
pure or simple sound. Theoretically, any sound may
be generated by adding together a number of sinusCopyright 1977 John Snell

oidal components (cosine or sine waves) for which
the amplitude and frequency may be independently
varied. Using additive synthesis, tones have been
synthesized from the analysis data of acoustic instruments which are "indistinguishable numerically,
theoretically, and perceptually from the original"
[Moorer, 1976].

Figure 1. SINE WAVE
AMPLITUDE

TIME

,
i

i
i

10+-------- T

-------'~

T=
F=

the period, or time for one cycle (360°) to occur.
liT = the frequency or number of cycles per
second (Hz). This is related to the pitch of the
sine wave.
A= the amplitude. This is related to the loudness of
the sine wave.
a= the phase angle. The sine wavt may be generated
by continuously evaluating "sin (ex)" for a
phase angle "ex" increasing continuously and linearly in time.
The sine wave has a tone color which is similar to that
which is produced by a tuning fork which has been
gently tapped by a soft hammer somewhere between
~ and Yz of the way from the end of one prong of the
fork [Benade, 1976]. The piccolo flute or the
soprano recorder sound somewhat like a sine wave.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

PAGE 97

The partials* are often found to be slightly
inharmonic. Even the frequency of each partial varies
within one single tone or note from most acoustic
instruments. This can be seen in the "Lexicon of
Analysed Tones". t 256 sinusoidal components might
be utilized in generating 16 voices or instruments,
each having 16 partials. A large number of sinusoidal
components is also useful in generating choral cloudlike tone clusters or tone fields somewhat like the
music which Gyorgy Ligeti has often produced with a
traditional orchestra.
Let's look at a method for generating one lowdistortion sine wave (or any waveshape). Then it will .
be found that one digital oscillator may be used to
generate a large number of sinusoidal components
with independently variable frequencies and independently variable amplitudes. This oscillator will also
perform FM synthesis [Chowning, 1973] with multiple modulators and/or carriers. A sine/cosine generator is basic to many of the new equations for
timbre synthesis such as those briefly discussed in the
first issue of Computer Music Journal [Moorer, 1977].
A sine wave may be represented digitally as a
series of pulses or steps as shown in Figure 2. If the
steps or changes in pulse amplitudes are made infinitely small, a smooth analog waveshape will result.
The steps should be made small enough so that the
ear is incapable of hearing the difference between a
smooth analog waveshape and the digital waveshape.
Thus there will be no audible distortion or noise.
Each of these steps is a pulse whose amplitude may
be represented by a number in a computer. If one
cycle of a digitized waveform is stored in computer
memory (called the waveform memory), the

numerical values of the pulse amplitudes may be read
out by repeatedly incrementing the memory address
(which corresponds to the phase angle). When the end
of the waveform cycle is reached, the memory
address will jump back to the beginning of the waveform memory. In other words every time the phase
angle (memory address) is incremented to a value .
greater than or equal to 360 0 ,3600 will be subtracted
from the phase angle. Then the phase angle will continue to be incremented as before. If this waveform
memory output is fed to a digital to analog converter
(deglitched):(: which is followed by a smoothing fIlter,
amplifier, and loudspeaker, a continuous sine wave
will be heard. The digital to analog converter (DAC)
changes the numbers into pulses whose amplitudes
are controlled by the numbers read out of the waveform memory. The smoothing filter (low pass filter)
rounds off the pulses so that a continuous waveform
results as shown in Figure 2.
The frequency of the output waveform will be
equal to the rate at which these pulses are generated
(called the sample rate) divided by the number of
pulses in one waveform cycle or period .•

* A partial is a harmonic if it has a frequency which is

(Alexander Ellis) footnote on page 25 in On the Sensations of Tone [Helmholtz, Dover Publications,
1954]. "The term 'second harmonic' will always
refer to a partial whose frequency is precisely twice
that of the fundamental; this partial mayor may not be
present in a tone, but there is no ambiguity."
t "Lexicon of Analyzed Tones", Computer Music
Journal, Vol. I, No.2, 1977.

equal to the fundamental frequency (usually related.
to the pitch) multiplied by an integer (1, 2,3,4,5, .. ),
Partials may be inharmonic if their frequency equals
the fundamental frequency multiplied by a noninteger (such as 2.31 or,[2 or 11'). John Backus in his
book, The Acoustical Foundations of Music (W.W.
Norton & Company, Inc., New York, 1969, pg. 96)
adds some useful information here. "The term 'overtone' has frequently been used in reference to
complex tones, such a tone being described as consisting of a fundamental and its overtones.This introduces a certain amount of confusion; in the sound
produced by the vibrating string, the first overtone is .
the second harmonic. Similarly, in the sound produced by the closed tube, where the second harmonic
is missing, the first overtone is the third harmonic.
Because of this unnecessary confusion, it is best not
to use the term 'overtone' at all- especially since we
do not need it." Reference is given here to U.S.A.
Standards Institute as well as to the translator's

fre uenc (Hz) = .::sam=p!:.:l:::e..:r.;:.at:.:e~::--_ _:-q
y
samples/waveform cycle
One can see that the units check:
frequency

=

sam ~es sec~nd
samp es cyc e

=cycles/second.

As mentioned earlier, each of the numbers in the
waveform memory has an address which corresponds
to a phase angle "0:". Thus, if a particular address "0:"

:(: To avoid a noisy output the digital to analog converter (DAC) is first followed by a sample and hold
deVice or a track and ground switch. This will eliminate the spikes which may occur when the input of
the DAC is changed.
• This infonnation was provided by S. C. Johnston
in The Technology of Computer Music by M.. V.
Mathews with the collaboration of Joan Miller,
F. R. Moore, J. R. Pierce, and J. C. Risset, MIT
Press 1969, pages 134-138.

195

o

15

30

46

60

76

PAGE 98

BOX 1579, PALO ALTO CA 94302

FIRST COMPUTER FAIRE PROCEEDINGS

210

225

240

255

270

285, 300 315

330

345

360

90

OOMPUTER MEM)RY

0

.26

.5

.7

.87

.97

1

.97

.87

.7

.5

.26

0

-.26 -.5

-.7

-.87 -.97 -1

-.97 -.87 -.7

-.5

-.26 0

LOUDSPEAKER
DIGITAL
TO
ANALOG
CONVERTER

L(}NPASS
FILTER

---1r-c(]

IV

Figure 2.
is given, the memory will output the number "sin a"
contained at that address.
'
The sample rate is crystal controlled for ultrastable tuning and is constant. If every number in the
waveform memory is generated one after another at
this constant sample rate, the frequency of the sine
wave will be constant. This w.ould result from incrementing the address of the waveshape memory by 1.
If a higher frequency is desired, the address (phase
angle) may be incremented by a larger number. If a
lower frequency is desired, the address may be incremented by a smaller number. The phase angle is
truncated to form the address for the waveform
memory as illustrated in Figure 3. The phase angle
increment register holds the value of the increment to
the phase angle. This phase angle increment will be
added to the phase angle once for each sample of the
sine wave. When the address is near the end of the
waveform memory (360°); an in~rement may be
added which will overflow the phase angle register,

thus placing the address back at the beginning of the
waveform cycle. This is equivalent to subtracting
360° from the phase angle every time it is incremented to a value greater than or equal to 360° .

WAVEFORM
MEMORY
SINE TABLE

•t

Addres.

u
t.

0

a

0

k Bits

Figure 3.

FIRST COMPUTER FAIRE PROCEEDINGS

Sampling Theory
At first glance, one might 'think that this technique would result in a large amount of distortion if
the phase angle increment were as large as 1800 • This
would result in a frequeflcy of Y2 of the sample rate.
With this,phase angle increment value, only 2 pulses
would be generated per waveform cycle. It can be
shown mathematically [Carlson, 1968] that if a signal
contains only frequency components whose absolute
values are less than some maximum frequency F MAX'
the signal may be completely described by the instantaneous sample values uniformly spaced in time
with period Ts :5'1/2FMAx • If S is the sample rate,
the sample period is T s = l/S. Alternatively, the
Nyquist Sampling Theorem states that if a signal has
been sampled at the Nyquist rate of 2F MAX or greater
(S ~ 2F MAX), and the sample values are periodic
weighted impulses, the signal can be exactly reconstructed from its samples by an ideal low pass filter of
bandwidth B where FMAX <:B«S - F MAX )'
Let's look at the problems that arise when we
apply this theorem to generating sound. Any practical
(non ideal) low pass filter will require a transition
band to go from unity gain to 0 gain as shown in
Figure 4. To avoid distortion, the maximum output

BOX 1579, PALO ALTO CA 94302

PAGE 99

and increasing, up to 4 dB down, at frequencies
which approach 1/2 of the sample rate. The reconstruction filter (low pass filter) may be designed to
compensate for this. A different reconstruction filter
should be used for each sample rate anticipated.
The theorem states that the samples from the
DAC should be uniformly spaced, so the sample
period jitter should be minimized. If the sample period jitter error is to be 82.6 dB below the rms level of
a sine wave, the sample period jitter should be less
than (1.18 x 1O-5)/F where F isthe output sine wave
frequency [Talambiras 1977]. So if F is 10 kHz
(10,000 cycles/sec), the sample period jitter should
be less than 1.18 nanoseconds.
The ultimate test of a sound synthesis technique
is the ear. The Soundstream Digital Recorder
[Warnock, 1976] designed by Thomas Stockham, Jr.
has provided one of the most convincing demonstrations of the audio application of this Nyquist
Sampling Theorem. It has played back the cleanest
undistorted music which I have heard from any tape
recorder.
Frequency Resolution
As mentioned earlier, the frequency of the output waveform is the sample rate divided by the num- '
ber of samples in one period of the waveform. *

AMPLITUDE

I,--_~___,

FREQUENCY

SI2

FREQUENCV AESPONSE OF AN
IDEAL LOW-PASS FILTER

f

requency

sample rate

=no. of samples/cycle

The number of samples in one cycle of the sine wave
is determined by the sine table length (waveform
memory) divided by the phase angle increment:
,
/
_ sine table length
no. of samples cycle - Ph ase angl'
e mcremen t

AMPLITUDE
TRANSITION BAND'

-+-_

.L...-_ _ _ _--+_..\--_ _ _ _ _ _
Fma>c

Sf2

Substituting this expression for the number of
samples/cycle into the above equation for frequency:
FREQUENCY

FREQUENCY RESPONSE OF A
REALIZABLE LO·PASS Fll TER

Figure 4.

frequency should be below this transition band. The
maximum sinusoidal component frequency is usually
limited to 36% to 40% of the sampling rate
(FMAX S AS).
It might be noticed that realizable samples from
the DAC will not be impulses; they will have finite
pulse widths. If the pulse, widths are as wide as the
sampling period, the frequency response will be attenuated very little if at all for very low frequencies

_
phase angle increment
frequency - sample rate sme
. t able 1ength
or
F

= S (I /

L)

Eq 1.

The sample rate "s" and the sine table length "L"
will be hyld constant, so the frequency "F" may be
changed by changing the phase angle increment "I".
The smallest increment in frequency (frequency
resolution) will be determined by the number of
bits "b" used in the phase angle increment register
(see Figure 3). The phase angle register should also
contain this many "b" bits. An article entitled "Pitch

* One nanosecond (ns) is' one one-billionth of a
second or I sec/I,OOO,OOO,OOO.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA

Discrimination at the Threshold of Hearing"
[Rakowski, 1971] indicates that under ideal listening
conditions a very discriminating ear, at best, is capable of noticing a pitch change of between (approximately, as best as could be measured from his graphs)
.03 Hz and .08 Hz around 160 Hz. To specify frequencies to an accuracy of .03 Hz would require 19.3
bits plus a sign bit for FM synthesis in the phase
angle increment register if the maximum output frequency is 20,000 Hz as determined from the following equations:

=

N MAX
NMIN

I MAX

Eq 2.,

I MIN

Where:
I MAX = the maximum phase angle increment which
will produce the maximum desirable frequency of any sinusoidal component
(F MAX ).
IMIN = the minumum phase angle increment which
will produce the minimum step or change
in frequency (F MIN ).
N MAX = the maximum number expressible with
b - 1 bits. For frequency modulation
synthesis positive as well as negative
increments (or decrements) to the phase
angle will be needed. An extra sign bit
will be needed in any registers which
handle frequency or phase angle information. So N MAX = 2 (b ·1) - 1.

=

NMIN

the minimum number expressable with b
bits = 1.
Equation EQ 1 may be used to determine the
phase angle increment, I, in terms of the frequency,
F, sample rate, S,and sine table length, L:
1= (F / S)L

This equation may be substituted into equation Eq 2
for I MAx and 1M IN :

= (FMAX /S)L - -F MAX
--

N MAX

(F MIN /S)L

NMIN

-

1

1

=

F MAX
FMIN

FMAX
b = 1 + log2 ( F
MIN

b =

PAGE 100

I + 3.32 IOg10(F MAX + 1)
FMIN

F MAX may be set to 20 kHz; and a minimum step in
frequency of FMIN = .03 Hz should be inaudible to
most musicians. Substituting these values into the
above equation:
b

=

1 + 3.32 log

10

(20000 Hz + l'
.03 Hz
)

b = 20.3

Thus a 21 bit phase angle increment register
should be capable of generating a glissando or vibrato
which will be perceived as smooth. Minimum changes
in frequency should be inaudible as steps to a listener
with very discriminating ears, even in an ideal listening environment. A computer may update the frequency (incrementing by 1 the phase angle register)
at the right time intervals to generate as slow a change
in frequency as is desired. Alternatively in hardware a
28 bit frequency envelope may be added to the phase
angle increment. For musical purposes a 20 bit phase
angle increment register should be fine with the
following possible exception. If the sound were
played in a soundproof room to a listener who had an
extremely discriminating ear, who had previously sat
in silence for 15 minutes, and who listened specifically for steps in frequency in a slow glissando in the
lower part of the audible frequency range, then the
steps might just barely be noticed sometimes. A.
Rakowski's tests were done under similar ideal'
conditions. He was looking for information in his
tests which would serve as a basis for speculations
concerning the action of the hearing mechanism.
Table 1 shows the resulting values of the minimum
step in frequency for different values of the number
of bits "b" in the phase angle increment register and
for different maximum frequencies.
A musical interval is often measured in cents instead of as a step in Hz. A cent is 1/1200 of an octave,
or 1/100 of an equally tempered semitone in the
chromatic scale. An interval or ratio of one semi tone
is equal to the twelfth root of 2.

I semitone = 2 (1/12)
I cent = 2 (1/1200)

then replacing N MAX and NMIN results in:
2(1)-1)

94302

Eq 3.

A minimum interval (which is an indication of
how accurately an instrument can be tuned) measured in cents "C MIN " may be related to the minimum
step "F M1N " as follows:
F MIN = F 2(C MIN /1200)

- F

FIRST COMPUTER FAIRE PROCEEDINGS

where F = the frequency around which the minimum
frequency step is made. Solving for CMIN :

C MIN

+

0

=3986.31l0g10(~MIN

+1)

Eq5.

F MIN may be determined from Eq 3
Eq 3.

2 (b-1) - 1
1

=

F MAX
FMIN

FMIN = F MAX
2 (b-1) -'- 1

Eq 6.

TABLE 1 Frequency Resolution

b

Fmax

F niin

bits

Hz

Hz

21
20
19
18
17
16
20
18
16
20
18
16
20
18
16
20
18
16
20
18
16
20
18
16

20000
20000
20000
20000
20000
20000
16384
16384
16384
15000
15000
15000
12800
12800
12800
10000
10000
10000
8192
8192
8192
4096
4096
4096

.019
.038
;076
.15
.31
.61
.031
.125
.50
.029
.114
.46
.024
.098
.39
.019
.076
.305
.016
.063
.25
.008
;031
.125

PAGE 101

Substituting Eq 6 into Eq 5 results in

F MIN = F(2(CMIN /1200) - 1)

eM'N = 1200 IOg{F ;'N

BOX 1579, PALO ALTO CA 94302

around
65.4 Hz
cents
.5
1.0
2.0
4.0
8.1
16.1
.83
3.3
13.2
.76
3.03
12.1
.65
2.58
10.3
.51
2.02
8.1
.4
1.65
6.6

.2
.8
3.3

Cmin
around
160Hz
cents
.2
.4
.8
1.65
3.3
6.6
.34
1.35
5.4
.31
1.24
4.94
.26
1.06
4.2
.21
.83
3.3
.17
.68
2.7
.09
.34
1.4

CMIN =

3986.31l0g1O~ F MAX

\F(2 (b-1) - 1)

+ 1\

Eq 7.

)

A minimum frequency step (FMIN of .038 Hz) around
a frequency of 65.4 Hz is an interval or ratio of 1
cent. 65.4 Hz is the frequency of C2 or the note C
one octave above the lowest note C on a piano tuned
to A.t = 440 Hz in equal tempered tuning. This same
step of .038 Hz around 160 Hz is an interval or ratio
of .4 cents. 160 Hz is a little below the note E3 which
is in the octave below middle C on the same piano.
Table 1 shows the resulting value of the minimum
intervals or tuning accuracy measured in cents, CMIN ,
around 65.4 Hz and 160 Hz for each different value
of the number of bits "b" in the phase angle increment register and for different maximum frequencies.
In his article* "Table Lookup Noise for Sinu- .
soidal Digital Oscillators", Richard Moore points out
that a glissando from 50 Hz to 100 Hz will not sound
smooth if a 16 bit phase angle increment (frequency
control) and phase angle are used with a Nyquist frequency 0/2 of the sample rate) of 16384 Hz. As an
alternative to making both. the phase angle increment
and the phase angle be wider words, it is suggested to
only make the phase angle register wider. Then the 16
bit phase angle increment may be shifted left or right
for variable frequency resolution and range. This
phase angle increment shifting technique is useful for
controlling the oscillator with a small computer
which can do 16 bit data word arithmetic and movement. Even the popular 8 bit MOS microprocessors
* F. R. Moore, "Table Lookup Noise for Sinusoidal
Digital Oscillators", Computer Music Journal, Vol. 1,
No.'2,1977.
Table 1. This shows the resulting values of the minimum representable step in frequency "FMIN" and the
corresponding minimum representable interval (or
tuning accuracy) "C MIN " measured in cents around
65.4 Hz and 160 Hz, for different values of the number of bits "b" in the phase angle increment register
and different maximum frequencies. 20 kHz was
chosen as a F MAX since it is the highest audible frequency for many people. 16384 Hz was chosen since
it is a power of 2; so the true frequency could be read
directly from the phase angle increment for human
comprehension. Any maximum frequency which is
not a power of 2 will need a translation program to
convert encoded values of phase angle increment to
the true frequency value. For this reason 8192 Hz
and 4096 Hz were also included. 15 kHz, 12.8 kHz,
and 10kHz were included as maximum frequencies
since they correspond to 40% of the popularly used
sample rates of 37500 samples/sec, 32000 samples/sec,
and 25000 samples/sec respectively.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

have the capability of performing 16 bit arithmetic.
However they are very slow (even the Z-80) when
working with l6bit data. A useful integrated circuit
(lC) for implementing this shifting technique is the
8 bit position scaler made by Signetics, the 8243. It
is expandable to handle wider word widths and is capable of shifting up to 7 bit positions at once instead
of requiring 7 clock periods like a shift register. If
this shifting technique is used, an arithmetic operation such as addition of a low frequency to a high
frequency would first require shifting inside the computer to line up equally weighted bits. Then the frequencies could be added. Then they might have to be
shifted left or right before sending to an output port.
This would slow down the shipping of frequency control data to the oscillator.
A computer which would be capable of directly
outputting 20 bit data words to the digital oscillator
frequency control would be useful, especially if it
could also perform 20 bit arithmetic without using
double precision words. However I am aware of no a-.
vailable 20 bit computers; and building your own
would require a large amount of software development time since there would be no available compatible editors or other useful system programs. The
VACuuM* is the best low cost computer design of
which I am aware. It is microprogrammable, high
speed (made from 2900 series IC's) and available with
variable word widths (8, 16, 32, or 36 bit data
words). You may microprogram in your favorite computer instruction sets and then use software which
you are already familiar with. You may microcode
your own special sequence of instructions for higher
speed of operation. The VACuuM allows one to dynamically jump from one instruction set to another.
Microprogramming in PDP 11 and PDP 10 instruction sets would be very useful since there is a large amount of useful software written in these instruction
sets. Instruction cycle time is predicted to be around
300 ns for 32 bit data operations. The PC boards and
bootstrap PROM's were estimated to cost around
$350. Then you would have to buy the rest of the
IC's, resistors, capacitors, sockets, etc. You could
start by only buying the parts to build a 16 bit
computer and microcode in NOVA and/or PDP 11 instruction sets. Later you could expand it to a 32 or
36 bit machine. If you bought all of the parts for a 36
bit machine including the PC boards and bootstrap
PROM's in single quantities, it was estimated to cost
around $1800. It would cost less for smaller data
word machines. There will be more information about this processor in a future issue of Computer
Music Journal.
* Tom Pittman and Bob Davis, "A Variable Architecture Computing Machine", Proceedings of the
West Coast Computer Fa ire , 1977.

PAGE 102

Sine Table
The size of the waveform memory or sine table
will affect the signal to noise ratio. If all 20 bits of the
phase angle register were used to address the sine
table, the sine table would be 1 million words long.
Fortunately this is not needed. Fewer bits may be
used to address the sine table without affecting the
frequency resolution if the number of bits in the
phase angle register and phase angle increment
register is not reduced. If the 12 most significant
bits of the phase angle register are used to address a
3600 sine table (truncating the 8 least significant
bits), 212 = 4096 words of sine table memory would
be needed. For more details, please read through the
article "Table Lookup Noise for Sinusoidal Digital
Oscillators." If the address of the sine table memory
is rounded off to 11 bits instead of truncating it to
12 bits, the table length may be reduced to
2" ;:: 2048 words and maintain the signal to noise
ratio of that obtained when truncating the address to
12 bits. It is not worth the computation time to make
an interpolating table for real time operation. Most of
of the sine tables in computer music software in
universities use 512 words in their sine table with the
interpolation technique. This corresponds to a signal
to error noise ratio of 95.1 dB. For non real time
operation interpolation is very useful.
A listening test to determine the necessary size
of the sine table was recently conducted at the Center
for Computer Research in Music and Acoustics
(CCRMA) at Stanford University. Different memory
sizes were tried for the table in generating a low
frequency FM tone which was believed to be the
worst case. A 4096 word x 12 bit/word table for
3600 of a sine function was perceived to be just as
distortion free as a 65536 word x 16 bit/word table.
However a 1024 word x 10 bit/word table generated
an objectionable amount of noise. The truncation
method of addressing the sine table was used. The
test would indicate that if the round off method of
addressing were used, 2048 words would be needed
for a 3600 sine wave with negligible distortion.
In examining one cycle of a sine wave, it may be
noticed that the first half (0 0 up to 1800 ) of the
cycle is identical to the second half except that the
sign is changed. One may store only 1800 of the sine
function in the sine table and then change the sign of
the output sine wave every time the waveform memory address is incremen ted to or past 1800 (or decremented below 0 0 as in FM synthesis). The sine function may be generated from only 90 0 ; however in my
design the control functions for incrementing (and
decrementing) the phase angle with a 90 0 sine table
required more integrated circuits (lC's) than the number of IC's required with a 1800 sine table. If anyone

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 103

Sign of sine

Figure 5

WAVEFORM MEMORY
1800 SINE TABLE
RAM

I

11 or 12 Bits

x 11 or 12 Bits

1k

Addre••

~10r

MOlt
Sianificlnt
81t

PHASE ANGLE
INCREMENT
REGISTER

ROUNDOFF
ADDER

20 Bit.

~

4

ADDER

~8

,••

INVERTER

H~IJ

sign

Ol

r

sl9n

+],

MULTIPLEXER

;;;

i

20

I

PHASE
ANGLE
REGISTER

20 Bit.

l

rro~,
~ignOred

,

•

c
t

f

II

20 Bits

has found a simple method of controlling the phase
angle with a 900 sine table which will allow for incrementing or decrementing of the phase angle by as
much as 1620 , I would appreciate hearing about it.
As shown in Figure 5, the output of the sine
table is fed into one data input of a multiplexer. The
other data input of the multiplexer is fed by the
inverted output of the sine table. The most significant
bit from the round off adder ·is used to select the
inverted or noninverted half of the sine wave,
r.esulting in a sine wave with a positive half cycle and
a negative half cycle. The addition of one to finish
forming a 2's complement negative number was
assumed to be insignificant and thus was not included.
The sine table size experiments at Stanford indicate that a 1024 word x 11 bit/word, 1800 sine
table memory will generate a negligible amount of
distortion if rpund off addressing is used. The phase
angle may be rounded off by adding bit 8 of the
phase angle to the 11 bit word formed by bits 9
through 19. As mentioned earlier the most significant
bit from this round off addition is used to determine
the sign of the sine wave. Bits 0 to 7 of the phase
angle are ignored in -addressing the sine table.
However the full 20 bit angle is used in calculating
the phase angle sp that accurate frequencies are generated.

Since fast RAM's are less expensive than fast
PROM's, RAM's were chosen for the sine table. This
also enables the sine table memory to be loaded with
another waveshape if desired; however I doubt this
feature would be used due to the time multiplexing
of the sine table. The generation of a few hundred
sine waves is probably more useful than a few hundred of any other waveshape. The 1800 sine table
may be stored in three 1 k x 4 bit RAM IC's such as
the AMD (Advanced Micro Devices) 9135 or Intel's
2114 or the soon-to-come fast VMOS RAM from
AMI (American Microsystems Inc.). Alternatively the
sine table could be made with eleven of the less
expensive 1 k x 1 bit RAM IC's such as the 21 02A or
9102. For high speeds the AMD 9135J RAM or the
VMOS RAM from AMI will be useful.
The output from the sine table will have a constant amplitude. The amplitude of the sine wave is
fed into a multiplier which multiplies the sine wave
by an amplitude which may vary in time as illustrated
in Figure 6. In an analog synthesizer this is similar to
connecting the output ora voltage controlled (control of frequency) oscillator to a voltage controlled
amplifier signal input. The control input of the voltage controlled amplifier would be used to vary the
amplitude in time (often controlled by an envelope
ge,nerator). The frequency of the digital oscillator is,
binary number controlled as is the amplitude input of
the multiplier.

FIRST COMPUTER FAIRE PROCEEDINGS

PAGE 104

BOX 1579, PALO ALTO CA 94302

sign of sine

Figure 6
WAVEFORM MEMORY
1800 SINE TABLE
11 or 12 Bits

RAM
1k x 11 or 12 Bits

I

Address
Most
Significant
Bit

PHASE ANGLE
INCREMENT
REGISTER

,

10

II
ROUNDOFF
ADDER

20 Bits

~8

I

01

;;;

=

iii

20

Hi,J
I

c

$1,

t

MULTIPLEXER

r.:..I

20 Bits

How wide a multiplier is needed? If a 12 bit sine
wave is multiplied by the contents of an amplitude
register of infmite width the resulting signal to noise
ratio is only 6 dB above that which results from using
a 12 bit wide amplitude register. If 16 bits are used in
the amplitude register, the signal to noise ratio of the
product is about % dB less than that resulting from an
amplitude register of infinite width.
Generation of Many Sinusoidal Components
Building a separate oscillator for each sinusoidal
component would be expensive if one desired over
100 sinusoidal components. However one low distortion digital oscillator may be time multiplexed to generate a large quantity of low distortion sinusoidal
components (with independent control of each frequency and independent control of each amplitude).
The number of sinusoidal components which the
oscillator will generate is determined by the speed of
the IC's and the sample rate.
If the sample rate is set to 40,000 samples/sec,
a new sample must be generated every 25 us·. Each
• A microsecond (us) is one one-~iI1'ionth of a
second or I second/I,OOO,OOO.)

AMPLITUDE
REGISTER

F

~O~7
~ignOred

PHASE
ANGLE
REGISTER

20 Bits

s
e
I
e

INVERTER

j ~il
)"

120r13Bits.
/'

MULTIPLIER

X
1..L

output sample from the DAC is the sum of a sample
from each of the sinusoidal components. If 100 sinusoidal components are desired, each sinusoidal component will be allotted 25 us/I 00 = 250 ns to compute its sample. With a sample rate of 25,000
samples/sec 40 partials can be generated if each
sinusoidal component sample is calculated in
40 us/40 = I us.
The number of sinusoidal components which
may be generated is inversely proportional to the
sample rate (and thus the maximum output frequency). It is possible with very fast IC's to generate
512 partials at a sample rate of 50,000 samples/sec
thus enabling a maximum frequency of 20 kHz. To
achieve this would require a very large quantity of
expensive, heat generating ECLIC's including a very
high speed multiplier such as the parallel pipeline
multiplier discussed in the first issue of Computer
Music Journal. A couple of less expensive implementations which require fewer IC's and generate a
maximum of 256 sinusoidal components (dependent
on desired audio bandwidth) will be described.
What kind of modifications must be made to the
digital oscillator in order to generate many sinusoidal
components? In Figure 6, the phase angle increment
register must be replaced by a RAM which contains

PROCESSOR OUTPUT BUS

sign of sine
20
Bits

REGISTER

WAVEFORM MEMORY
1800 SINE TABLE

r

REGISTER

I'
10

Most .
Significant
.Bit

Data In
A
~ PHASE ANGLE
r INCREMENT
e
RAM

•

e

ROUNDOFF
ADDER

s

•

,i

Address

20
Bit.

8
~

~ or 12 Bits

RAM lkx 11 or 12 Bits

Data Out

1~

CJ)

rJ

12
or
13

Bit 8

20 Bits

A~
20
Bits

Clkl ~

RE~

IpBJ

s.

r

MULTIPLEXER

:l

iD

20
Bits

~ "'UTUD'
RAM

I
e
c
t

1

•

5
e

Parallel In

0-7
ignored

eO
ru
i t
a
I

Data Out

S

e

MULTIPLIER

r
S
i
•
a PRODUCT ~
I
n
I

X

5
SHIFT
REGISTER

Data In

a
I
n

•I

0
u
t

25LS14's

Data Out

SHIFT
REGISTER
14LSI64
P.... lelOut
20

A

d

~~•

PHASE
ANGLE
RAM

20
Bits

Clk 1

Data In

28 Bits

1
20 Bit.

)j

m

::r

a

m
m

I
~

ADDER

"

j

~

Accumulator

6

20 Most
Significant Bits

~

28 Bits

1

~

,..--

4~

..j
16 Bits

L...-----<
25LS14

S
e
r
i
a
I

~

ProdiJct

r

0

I

I
Clk 1

20

V
REGISTER
74LS174

I

A
_d
8 Bits d
_r
e
s
s

Clk 1

.~

28 Bits

a!

Parallel Out

20

Data Out
PHASE
ANGLE
RAM
256 x 20
2101A-4

SHIFT
REGISTER
74LS164

J

u
t

~.
ADDER
74LS283

S
e
r I
i n
a
I

i

I

m

"V

C

m
m

~

ADDER
74 LS283

~

~

Accumulator

20

~:0

8

..I
REGISTER
74LS174

m

:0

T

N

Data In

C!
~

REGISTER
74LS174

20 Bits

0

83:

20 Bits

~

20 MOst
Significant Bits

16 bits

ffir!
1-;.- 1-----1
!!!~

Cl ...
~,...

....-()

0(

~

0

'--20 Bits

PROCESSOR
INPUT BUS

'---

~

28 Bits

~

I

0-

REGISTER
With
L----l
Standard
and
Three
State
Outputs
25LS18

o

....--

H

~ ~

~~5
H
II: II:
I-

Cl

L..--

~

r--

:t",ffi

9~!:i
0.._

§

~ Audio
Amplifier

IL

'---

Figure 8

im
S

FIRST COMPUTER FAIRE PROCEEDINGS

PAGE 108

BOX 1579, PALO ALTO CA 94302

correct instantaneous modulation amplitude is added
to the appropriate carrier frequency.
The address of the phase angle increment RAM,
the phase angle RAM, and the amplitude RAM may
be controlled by one 8 bit up counter. As shown in
Figure 9, the output of the counter is compared with
the number (N) o[desired sinusoidal components. If
they are equal, the counter will be reset. When
clocked, the output Of the counter will be changing;
and the comparator might erroneously try to reset
the counter. A one shot is utilized to prevent the
counter from being reset just after the counter is
clocked. A second one shot guarantees that a minimum clear pulsevvidthwill b~ provided.
The 8 bit register which holds N is loaded from
the computer output bus. To avoid the possibility of
loading the N register at a time when the counter
might need to be reset, the 4 most significant bits of
the counter are used to prevent the N register from
being loaded unless the counter is in the early part
(counter output of 0 to 15) of its counting sequence.
The controlling computer plac~s the value N on its
output bus and then sends a ready signal to strobe N
into the N register.
When the frequency of the second sinusoidal
component is read from the phase angle increment
RAM, the amplitude of the first sinusoidal compo-

nent is read from the amplitude RAM. With this
timing, a sample of the first sinusoidal component
from the sine table arrives at one input to the multiplier at the same time that the amplitude of the first
sinusoidal component arrives at the other input of the
multipiier. The computer which updates the RAM's
must realize that the counter addresses the frequency
of the nth sinusoidal component at the same time
that it addresses the amplitude of the (n-l) th sinusoidal component. The method of updating the frequency is shown for the phase angle increment in
Figure 9. The digital oscillator frequency control is
allotted (hardwired to) a group of 256 of the available computer addresses. The 8 least significant bits
of the computer address bus are compared with the
counter output, while the most significant bits of the
computer address bus are compared with the allotted
(hardwired) address of the digital oscillator frequency
control. If both are equal, and the update frequency
is ready, and clock I is at a high level, then the new
frequency value will be written into the phase angle
increment RAM. The amplitude RAM is updated
similarly. Amplitude envelopes as well as frequency
envelopes may be generated in the controlling computer's software and used to update the corresponding amplitudes and frequencies. Simple hardware
envelope generators are used in the oscillator shown
in Figure 10.

COMPUTER ADDRESS BUS

Update
Frequency
Ready

74LS10
Clk 1

=

Clk 1

74 LS04
Oscillator Frequency-........---l
Address (Hardwired) _....,..._--.

R/Vi
.------------ICk
Clear

L -_ _ _ _ _ _ _ _--"'I A

COUNTER

8 Bits

r------------..i

74LS393
4 Most
Significant

~

PHASE
ANGLE
INCREMENT
RAM
2101A-4

~~gwBits

N ready

COMPUTER OUTPUT BUS

Figure 9. Logic Circuit for addressing and updating the RAM's in the slow oscillator.

FIRST COMPUTER FAIRE PROCEEDINGS

Prices and quantities of the integrated circuits
for the slow inexpensive oscillator diagrammed in
Figures 8 and 9 are listed in Table 2. The price of a
PC board or socket board plus the small cost of
miscellaneous' capacitors and resistors should be
added to these prices.
The DAC's, track or ground switches, and low
pass filters are not listed in Table 2. The track or
ground is a bipolar switch so it may be constructed
from a few transistors which cost next to nothing.
However the DAC will be a major cost. Datel manufactures a 16 bit DAC called the DAC-HR 16 B which
costs $299. This is the least expensive high fidelity
DAC of which I am aware. A less expensive 12 bit
DAC such as Harris Semiconductor's HI-562A-5
might be used for initial experimentation and later
replaced with a higher fidelity DAC. This Harris DAC
will settle to.:!:.l/l0 LSB in 150 ns at 25°C and costs
$29 in 100 quantity (probably around $40 for one).
The low pass filter needs to be maximally flat in
its pass band and have a very sharp frequency roll off
above the cut off frequency (seven pole filters are
recommended). A voltage controlled low pass filter
would enable the cut off frequency to be dynamically
changed as the sample rate was dynamically varied

BOX 1579, PALO ALTO CA 94302

PAGE 109

between several fixed values. With a dynamically
variable sample rate, high frequencies could be
generated with a few sinusoidal components during
one section of music, while in another section of the
music a large number of sinusoidal components
could be generated with a lower maximum frequency.
However voltage controlled 7 pole low pass filters are
difficult to design. CCRMA at Stanford University
currently uses several of the low pass filter series, the
J77C, made by T. T. Electronics. * These are very low
noise and distortion filters (since they are passive)
and have approximately Y2 dB of ripple. The transition bandwidth from the cut off frequency to 0 output is narrow enough to allow output frequencies of
40% of the sample rate. T. T. Electronics is now
making a new filter series, the J87C, which has an
even narrower transition bandwidth. If the noise, distortion, and ripple of the J87C is as low as that of the
J77C, it should be useful for generating output frequencies possibly as high as 44% of the sample rate.
Every time the sample rate is changed a different low
pass filter is needed. At $65 for each of the T. T. E.
filters this could be expensive if several different
possible sample rates are desired.

* T. T. Electronics, 2214 S. Barry Ave., Los Angeles,
CA 90064, (213) 478-8224.

Table 2. Prices and Quantities of IC's for Slow Inexpensive Oscillator
(Prices listed are manufacturer list prices, not "surplus" or discount dealers prices.)

-=----:--.,..----------+-1
._M=an~u~f.aclure.r Part Nwnber_~.rice Pe.!...K....-_Quantity of IC's-=-R.:.::e.:1gu:::::i~re:..=d,_..::;S=ub~t~ot=al::..;P::.:n;::·c~e
Phase Angle Increment, Phase Angle;
and Amplitude RAM's
(256 ~'!J~_i!_~~:s).,
Waveform Memory
_Jl,k ~}bit ~!)
Registers
~g1ster with standard
and 3 state outputs
-Aifders
..
-_.,_
..... __.. Multiplier
shftfRegistel
(par~Je) _~ serial out)
Shift Register
(serial in parallel out)
Inverter
Multiplexer
'Co'unter
Comparators
'Shots
4 input NOR gate
S R flip flop
ITnp.t!!~.gates .
3 input NAND ~ate

, _.__ . J '

One

i

2101A4

4.20

14

58.80

2101A-6
74LS174

3.25
1.58

11
37

60.04

Am 25LS18
74LS283
Am 25LS14

3.78
1.85
13.93

5
20
2

18.90
37.00
27.86

74LS165

2.50

2

5.00

74LS164
74LS04
74LS157
74LS393
DM 8131
74123
7425
74LS279
74LS08.

2.20
045
1.70
5.00
4.00
1.15
.80
.90
040

3
3
3
1
5
2
1
1
1

3~.75

6.60
1.35
5.10
5.00
20.00
2.30
.80
.99
040
~._.~
.--L.. __ ~..~ A~,~~ ...
112
286.20
Total Number of IC's
Total Cost

.'. ._l._.__.__.___?~~l~_.J_~_.:~~ ___,___.__ __.___

not including DAC, track or hold, and low pass filter

FiRST COMpUTER FAiRE PRQCE-EDINGS

.BOX 1579, PAL.O ALTO CA 94302

Table 3 lists the number of sinusoidal components which may be generated with a given sample
rate using ·the inexpensive slow oscillator shown in
Figures 8 and 9.
TABLE 3. Trade oU"between the number ofsinusoidal components which may be generated and the
sample rate for the slow inexpensive oscillator shown
in Figures 8 and 9. The 25LSI4's in the multiplier
the main speed bottleneck in this oscillator. For mor .
sinusoidal components at a wide bandwidth see the I
faster oscillator shown in Figures 10 and 11, and
i
Tables 4 and 5.
;
.__. ·__ ····[_· .. ···_··---·T· .-.............".. ' ......._ .. "._._----1

! Sample

Maximum
Number of gene ratable
Output
sinusoidal components
Frequency
!
of any
sinusoidal
component I for a ,'. for a
. (40% samplep2 bit x 12 bit 12 bit x 16 bit :
_ _ _:7._•...hI:~~~_ .._. __ ~~:u.~~~}.i.C~E~~. fl..tp~liP..I.!~!ti.<
X'
Address
- i- - - - - ; - , - - - " r - - ! ,
-"",- ' - - - - "--T3_T4~T5-'1i
,

RAM
Read/Wilte
elk 1

T1 =

:

•

~I-,- - I

t--T, ~T2+'

I

,

~Tl~

L

-,--_---!t-,

L...._ _

the read address access time of the RAM plus
the data set up time of a register.
T2 = the clock to output delay of a register plus
the data set up time (before the beginning of
the write pulse) of the RAM.
T3 = the RAM write pulse width.
T4 = the RAM address hold time.
T5 = the time' needed to change the address. The
counter which generates the address already
has the next address, so the pipeline register
(between the counter and the RAM) clocks in
the next address. Thus T5 will simply be the
clock to output delay time of a register.
. TT = the total delay time of one pipeline stage.

BOX 1579. PALO ALTO CA 94302

FIRST COMPUTER FAIRE PROCEEDINGS

PAGE 111

Table 4. The number of sinusoidal components which may be generated depending on the time delay of the
slowest pipeline stage. The time delay of a pipeline stage is summed from the time delays of the Ie's within
that pipeline stage. The delays of several different possible combinations of Ie's within a pipeline stage are
shown. The left half of the table assumes that the phase angle computation stage will be the slowest pipeline
stage. The right half assumes that any 20 bit addition stage wiIl be the pipeline bottleneck (which is unlikely).
The bottom of Table 4 shows the number of sinusoidal components which may be generated depending on
the sample rate and the Ie's which are used (assuming that one is wiIling to buy or build a fast enough multiplier - the multiplier wiIllikely be the bottleneck).
Delay Time (nanoseconds) in RAM Stages as a
Function of Which IC's Are Used

Manufacturer Part Number

I

RAM read
address
access time
"'.... "-.-.-... "'..-."'."'...... -...--....

--:---1------------.. . . .

74LS202
35 typT 45 max! 45 max I'-~:--I
82S116,!
I 40 I 40 I
I i
93LA22
I
: '60 I 60!
2101A·2
r
i
!
!
i
i 250
.. ... -- .......-......"'''' .. - -_'''''' _.-._.....--.-... - --· .. -t· .... -· .. ··-......
+.......
i ......... !..... ....j- ..

-T-.-. . . .

-i;~~::---:j~m-::-~I-Sj
!
l

: I:: i sf : ......
1S

!

i

. to output delay
748174'
17
,17
I 17
- - - - -.. - .."' ..... ---- ..-.- .. -.-..... -. "'......-- ....... - ...... "' .... _- ..... 1---....-........... ~ ... - ......................... - ............... -1..........
RAM data set up
before leading
edge of write
pulse width
RAM write
pulse width

74LS202
82S116

O !. 0
~
' :

0

~

93LA22

2101A·2
74LS202
828116

-;:;;~.--:-:------.-.--=.----

f---o:-:---

15 typ

hold time

.

~' .~ ----~--------~

_~d:t~::td:l-ay"'.--_"'~:!~;~._

!I

i

O!

I

I 25

25 ;

j:

.
45

.......... -.........

.-

I
I
I

5:
0

-...... ............. " ..

,
45/
150

---':S·typ·'· Omax:·O·maxT··. '...... :......; . "' . ,.j .. - .... :-..- ...... - .. ,. ,"
I

82S116

~-

I

.---"'-.~--"'--

'

0

93LA22 ,

2101A.2
74Ls174
748174
74LS174

0

.

j ! 5:
.;
I!
...-t--"'---.... _.... -...- .. ......
25 max: 25 max I
::

93LA22

2101A·2
'·RMfa(fdreSs"·-·"·-"'·"'·'74i..Siof·

·Addre"'ss-·"--- -..
change .time
-----... -..-..•. •.
Register clock

Delay Time in Adder Stages
As a Function of Which IC's
Are Used

:

:

:

5'

5i

0:

!

!

;

i

30!
' 30' , 1 30~
, 17
:
: 1 7 :t -.-.--- -+-- .....17:
t---...._________ ..•___
_.. -.... - .
•
.
;
,
'
! ...
30

i·

o
30
...

-0-______ • -, .-••

-..-.._.'

-~....-.....-"'--t-.. . .---..-,~.. , . . -., . . ~-,. '.'......~

301
"·107

'r~~

30
69·' ....6197 '

74S283
! ;
II
748181,74S182
, i
1
- - . - - -..-...........-.......--........,"'.-- r-'- .....-.....__ ...--, ...,-...• '--..-...,. __....;..... ........... _, .....;." .......
, ...
Register data
74LS174
. !
I'
20
iO'
set up time
748174
i
5
Total time delay of 1 stage
125
150
109
145 104 195' 154 t 480 157 129. 119

~7

time

I

I

Number of Sinusiodal Components Which May Be Generated

~~'-.-;

_....
--. .

.-----~--::-::-----:=:".-.--:-::-:~-.--

-;--_ .•.. __ ..• -_. •

44

I

!!

I

Sample
Sample IMaximum
Rate
Period
Frequency
samples/sec us
Hz

···1,

5:
9

5

iT"66-

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

o ns, maximum 5 ns. For higher speed, the 74LS202
made by Texas Instruments may be used in the phase
angle RAM. It has a read address access time of typically 35 ns. Maximum specifications were not available before the journal went to press, however I suspect it would have a maximum read address access
time of 45 ns. The .write time plus address hold time
is typically IOns and I suspect it would be a maximum of 25 ns. The 74LS202 should be typically
30 ns faster than the 93L422, and a maximum of
40 ns faster. The main disadvantage of the 74LS202
is that it is 256 x 1 bit, so 20 of these Ie's would be
needed for the phase angle RAM as compared to 5 of
the 93L422. However the 93L422 is manufactured in
a 22 pin dual inline package (DIP) while the 74LS202
is available in the convenient 16 pin DIP. The 93L422
is priced at $24.95 in quantities of 1 to 24 as of
April, 1977; while the 74LS202 is priced at $5.25 in
quantities less than 25 and $3.75 in quantities of 25
to 99 as of May, 1977. The power supply current on
the 74LS202 is 55 mA typically, 70 mA maximum,
so it should not become hot.
Signetics makes a 256 X 1 bit RAM, the
82S1 16, which is typically 10 ns faster than the
74LS202. Address access time for the 82S116 is
typically 30 ns with a maximum of 40 ns. The data
setup time is specified from the end of the write
pulse width and is the same width as the write pulse
width. The write pulse width is typically 15 ns, 25 ns
maximum. The address may typically be changed 5 ns
before the end of the write pulse, and at worst
changed exactly at the end of the write pulse. Thus
the time required to read, then write to the same
address is a maximum of 65 ns, 40 ns according to
typical specifications. This maximum time is about
5 ns faster than my estimated (but unspecified by
Texas Instruments as of this writing) maximum time
for the 74LS202. The 82S116 costs $11.20 in quantities of less than 25, $10.00 in quantities of 25 to 99
as of May; 1977. Power supply current is 80 mA .
typically, 115 mA maximum; so this Ie should not
run cool. Since the 74LS202 has not yet been fully
characterized, it is difficult to decide which RAM to
use. Texas Instruments generally provides conservative specifications. The 82S116 presently costs 2 %
times as much and J;onsumes approximately 1 Y2
times as much power supply current as the 74LS202.
Unfortunately these two Ie's are not pin compatible.
When attempting to minimize the number of
Ie's .required and yet still desiring high speed, the
93L422 is a good choice for the phase angle RAM. To
minimize costs at the beginning of the project,
2l0lA-2 RAM's made by Intel could be used. Later
when a wider bandwidth with a large number of
sinusoidal components is desired, these RAM's could
be unplugged from their Ie sockets and replaced with
the pin compatible higher speed 93L422 RAM's. The

PAGE 112

2l01A-2's are 256 x 4 bit static RAM's which cost
$5.50 each in quantities of under 25 as of February,
1977. The read address access time is 250 ns maximum; and the write time is a maximum of 150 ns if
writing to the same address as the read address.
In looking for fast RAM's, it was assumed that
the phase angle calculation stage of the pipeline
would require more or about the same amount of
time as the multiplication stage. This assumes that the
multiplier can multiply two words in less than 200 ns
and preferably in approximately 100 ns. The TRW
MPY-16AJ will latch and multiply two 16 bit words
in a maximum of 190 ns. The MPY-12AJ will latch
and multiply two 12 bit words in a maximum of
175 ns. TRW is working on a lower power version of
these multipliers which is expected to be faster by a
factor of 1.5 to 2 (thus multiplying-in approximately
100 ns). Monolithic Memories 67558 expandable
8 bit multiplier should also be considered for high
speed. Unfortunately these high speed multipliers are
expensive. The MPY-16AJ costs $300 in single quantities while the MPY-12AJ costs $165 in single quantities. The MMI multiplier price has not been announced yet; however, it will probably cost between
$50 and $80 when first released.
Using the design shown in Figure 10, Table 4
shows the time delay of one pipeline stage as summed
from the individual Ie time delays within the pipeline
stage. The left half of the table assumes that the
phase angle computation stage will be the slowest
pipeline stage. The right half assumes that any 20 bit
addition stage will be the pipeline bottleneck (which
is unlikely). Most of these times assume that TRW
will be able to manufacture a faster high resolution
multiplier so that the multiplier does not become the
bottleneck. If TRW's 190 ns multiplier, MPY-16AJ, is
used for a multiplier, I would recommend using the
Fairchild 93L422 RAM and low power Schottky Ie's
for adders and registers. The parts picked in Figure 10
assume that a multiplier with a typical multiply time
of 125 ns and a maximum of 157 ns is used. A
parallel pipeline multiplier constructed from Monolithic Memories' 67558 Ie's should meet this spec if
TRW is not able to product a higher speed multiplier.
The bottom of Table 4 shows the number of sinusoidal components which may be generated depending on the sample rate and the Ie's which are used
(assuming that no other pipeline stage is a bottleneck).
Ie's were chosen for the oscillator in Figure 10
with speed and relatively low power consumption in
mind (so that little heat is generated). If the heat
erated by the Ie's is minimized, the number of fans
(which are acoustically noisy) needed to cool the circuit will also be minimized. Rotron now manufactures a very quiet fan which would be useful for cooling the multiplier circuit. If still higher speed is

FIRst COMPUTER FAIRE PROCEEDII;~GS

desired, the low power Schottky IC's could be replaced with their pin compatible Schottky parts. The
Signetics 82S116 could be used in the 256 word
RAM's and I k x I bit bipolar RAM's such as the
Fairchild 93415 could be used in the waveform memory. However price and power consumption would
take a quantum leap.
The RAM address control logic for the oscillator
shown in Figure lOis not drawn here. However a
timing table for this pipeline is shown in Table 5. This

PAGE 113

BOX 1579, PALO ALTO CA 9430Z

table uses a total of 7 sinusoidal components, but the
timing is applicable to any number of sinusoidal components.
The address of the amplitude of the nth sinusoidal component changes every sample period since
the amplitude is written into the amplitude RAM
2 periods of Clk I (2 address changes) after it is read
from the amplitude RAM. So the address of the
amplitude RAM provides no direct clue to determine
which sinusoidal component amplitude may be up-

Table 5. Timing Table for the High-Speed Oscillator Design shown in Figure 10.
Frequency Slope
RAM

Phase Angle
Increment
(Frequency)

Amplitude Slope
(of Envelope)
RAM

Phase Angle RAM

Dat' ~Triiten- A"ddieSS Reid Dii,

Address -Read

j-

~__ . _ - ~-2

_._~

..

6

. ".

6

-~y---iipciate-

address

I

orwait

.

------

---+----____~------~~------+_----~----------_r--------~----------~:
0
I
..- . .....

I := I+

_.j_ .... 0 ___

~2

.. -

:=

-

0

5
6

, .... _._ _ j .
14.6
5
ri

o·

=~J_O~_ -~ ... - ········-4~-~·-1 .. -o~··l; . :··'4;_~____

2

3

3

5

4
5

4
5 ... _1

6.+
0
•

6

.. ..
,

6

....

L __ t ..

I ._.
~

__ .

1

. ...

5

2 .. i _ 6
3 ;.. 0
1.. .. 4:. _L 1

~~ress ! :~:t ~----~ .. --~---~-- ... ~-.;
.. -----.Q.-~--- - ~
I . . . . _._~. . . . " =1I. ~
~~--"'1' .2 t 6
0 i
6

-.. !

..!

~::. ~

I.

~

!-'any

I

i ~ . ~
I ;
!

1

i

!

update '"
4
or wait·
5
i O! 6
~
1
10

.
-

;

5
6

f

I
i

-1

-

0:

2
1211!
3!
3
i
2,
I'
1
f
4!
4
l
3,2
_.__ ?...:
5
_I
4
i
3 i
1
6
6'
5:
4;
~~---·t
d t
I 6 j 5 '

~~ress
n

: :;:t[-o-'
n

~

!f
I

_ 2

x

5
6

=

0

2
3
4.

~

~

;

!

4
5
6

1

1

5

J-6---1'

0

1 n-2

x!

6

2

3

3

.. _____0

4

1

~

i

._ .. _.. L

I
1

I.

J ., 1 .. "" I

3

!-- .. 3 .

'i---' -4---;-'---4" --,
5 4- ..
61

5
6

; any'l ~pdate

5
6
-

address! or wait

-

6
o. , 4
-':
1
;
0
2 "----' i""

l' :3 --. ---2-

I
i

1

4
5
6

,0
1
I
2
'
3

I

!

3;
4
5 '
6

.,

1
2
3
4
5
6
-

0
I'
4
4
5 •
2
5!
5'
6
i
3
1616.0'114
I,.
any
update •
1
5
2!
6;
address: or wait

01

01

0

1
2

1
2

I
i

i 3Jl

-

.
,

314;
1

!

!

I:.

0
1

0
1

-il-i- -:
I

!

n -4 !

_.

1

o

I

-~

___ . _0

2

I ;'i!

'1! -

1
!

..

-t·= '

-: update
- II 45 any
2

I

!

-~.-

1, -t- _. .7 "--'1 6 ~ 0','

~.

1.. .

j

-1'-' 4----:.I
n-2

1

f

4
5

o
1

:

_

0

L_.3.

.

23

2

1
2;

1
2

o?

11
2'
:
3;
4

i

o 10:

o
3
4
5
6

_

address; or wait

6

1
2

I

,,'

Ij-

.....01 . _~,'._.... -..._01,_. .' -, J.....45._.. .~;' . ,.. :: _.:

t
Iii

i
11

-I

-,--.~---.l ,.,3 +_
4:
4'

1

l i t

address,

o

"j"',

3
4

t

\.~ ... J

_ ~

O·

r
1
. . 5 -----1-i---6-·-t·--··-C··-t···-·-6-··

__

lator

I

Written Address Read Data Address! Written: Written
i Data Data
Data

~==!::. ~ - 1-- ~·I ~ 1- ~L

r-"-'

I

RAM

--.. " ----....--- ... --. '-'---" ....- '--"-"'- --.----t--:----.. -

Data

-~
_____2

IAccum-

Amplitude

1

n-4

n-4

3
4

j

I

•

;
4
5
6
do not
write
-- 0-'1
2
3

4_
5
6
do not
write

0

t"

2
3
4
5

6
- ' do not

-

Li~--t---!
__ -:if 1
I

j

x

n-6

n-7

BOX 1579, PALO ALTO CA94302

FIRST COMPUTER FAIRE PROCEEDINGS

PROCESSOR OUTPUT BUS

Frequency
Envelope

20

I

REGISTER
74LS174

I

REGISTER
74LS174

y

20

20

I

F
r C
e 0
q n
u t
8
r
n 0
c I

20

81_

20

I

MULTIPLEXER
74LS157

REGISTER
74LS174

20 Bits

Data In
A
d FREQUENCY
d
SLOPE
8 B:E; r
RAM
e
256 X 20
s
93L422
s
Data Out

Data In
A
d PHASE ANGLE
-:j>d 'INCREMENT
RAM
e
256 X 20
s
74 LS202
s
Data Out

.!!:r

20

20
Clk 1

..

1

20

REGISTER
74LS174

MULTIPLEXER
With Storage
74 LS398

Clk 1

WAVE FORM MEMORY
1800 SINE TABLE
20 Bitl

J

RAM 1k X 11 or 12 Bits
Am 9135 J

20

Address

I

ADDER
74LS283

l

r--

Clk 1

Clk 1

REGISTER
,74LS174

~ 7 FM
G 4 Register

MOlt
Significant
8it

I
i 20 Bits
~~n
FI 4
~'--.I<----lI-..K.....,
I.
~

ADDER
74LS283

I

e

r

REGISTER
74LS174

I

iii

REGISTER
74LS174

J20

I

I

Clk 1

Clk 1

REGISTER
74LS174

ADDER
74LS283

I

REGISTER
74LS174

I

I

Data Out
PHASE
ANGLE
RAM
256 X 20
74LS202
Oat. In

A
d
d
~
.!or
e
s
s

-J120L-________~

L-____________

20 Bits

Figure 10. High Speed Oscillator

rt

I

20

20

20

Bit 8

d;

20

FM & Vibrato
Holding Register

ROUNDOFF
ADDER
74 LS283

CI>

20 Bits

J
Clk 1

10

11

20 Bits

20

O·

a
t

•

oU
t

REGISTER
74LS174

I

o

ignored

;. F.fRSTCOMPUTERFAIRE PROCEEDINGS

BOX 1579. PALOALTO CA 94302

PAGE 11&

PROCESSOR OUTPUT BUS
Amplitude
Envelope
Slope

12
to
16
REGISTER
74LS174

I

REGISTER
74LS174

MULTIPLEXER
74LS157

~

A
m C
12 P 0
to I n
16 i t
t r
u 0
d I
e

12
to
16

REGISTER
74LS174

J

Data In
A
d AMPLITUDE
SLOPE
d
RAM
r
e 256 X 1210,16
93L422
s
Data Out

12 to 16 Bits

Data In

A

d AMPLITUDE

"it

d

RAM

....;;, r 256 X 121016
e
74LS202

•

•s

12
to
16
Bit

Data Out

Jt

sign

REGISTER
74LS174

Clk 1

MULTIPLEXER
With Storage
74 LS39B

Clkl -

12to 16 Bits

11 or 12 Bits
'-

J

""

12
to
16

l

J

ADDER
74LS2B3
s

I

INVERTER
74lS04

Hi~

I

I
e
c
t

1i9n+l

I
N
P
U
T

12 or 13 Bits

~

R
E
G
I
S
T
E
R

I
MULTIPLIER

X

I
N
P
U
T

R
E
G
I
S
T
E
R

r-

12 to 16 Bits

R
E
G
I
S
T
E
R

16 Bits

OUTPUT
REGISTER

I

II

REGISTER
74LS174

r

..---,

J

Accumulator
~

2B Bits

~

20

288its

ADDER
74LS181,74182

input to
least significant
bit. of
adder

Am25LS18
REGISTER
With
Standard ~
20 Most
and
Significant Bits
Three '"r
State
Output.
3 State
25LS18
Enable

J
PROCESSOR INPUT BUS

1

Clk 1

Cli'

20 Bits

R
E
G
I
S
T
·E
R

7
4
L
S
1
7 M
4

r--

'7

r---

r-

liIi:

0
A
C

t;6

........

j-;

Figure 10 (continue!i)

Ir

~o~~
~~~I---l
IIr

~

0
A
C

-

,---

-

0
z
~ ~~;:)
Ir° O
I- Ir
t!l
'--liIi:

-

R 7
r-E 4
G L --'
0
I S
A
S 1
C
T'7
E 4
'--R

----

~

...

Audio

AIIIPIIf*'

ChMneI1

i--

5

-

Audio

==",ffi

O~I- ~ Amplifier
C.....nel2
..Ja..:

...

L---

-

liIi:

..0

Ir

...., ~o~ -oJ ~:g~ H
IE ~
..J~=
~~

7
r-4
r-~
L ........
0
~~z
;::gffi
S
A
.-'! ~ 0 HOc(!:i
1 16
C
IIr
..Jo._
---:
7
t!l
...
4
'--

'--

.--

0

'---

....,

16 Bits

R
E
G
I
S
T
E
R

-

'is'

'---

7
4
L
S
1
7
4

'--

~

20 Most
Significant Bits

J

12to 16 Bits

P

MULTIPLEXER
74LS157

Clkl

I

REGISTER
74LS174

e

I

I

elk 1

---

r-.

Audio
Amplifier
C .....neI ..

Audio
Amplifier
C.....nel3

FIRST COMPUTER fAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA, 94302

datep by the processor. This is also true of the
addresses of the phase angle increment'R~Mllndithe
phase angle RAM. However the address of the frequency slope RAM provides a direct indication of
which sinusoidal components are being worked on in
the different stages of the oscillator. IUhe address of
the frequency slope RAM is n, then the phase angle
increment of the nth sinusoidal component will be
written into the phase angle increment RAM after 2
periods of Clk 1; its phase angle will be written into
the phase angle RAM after 4 periods of Clk 1; the
slope of its amplitude envelope will be read from the
amplitude'slope RAM after 4periods-of,Clk 1; .itsamplitude will be written into the amplitude RAM after 6 periods ofClk 1; and the accumulator will add
this nth sinusoidal component to earlier sinusoidal
components after 7 periods of elk 1, as shown in
Table s. A delay line of 8 parallel output shift registers
(74LSI64) fed by the output of an 8 bit counter
(74LS393) is used to generate addresses as well as to
determine which sinusoidal components may have
their frequency or amplitude changed 'by the processor. The 8 shift registers are clocked by elk I along
with the 8 bit counter. The 8 bit parallel outputs of
the different stages of the shift register provide the
addresses. The first stage 8 bit parallel output (n) of
the 8 shift registers is used to address the frequency
slope RAM. The fifth stage parallel output (n-:4)
of the shift registers is used to address the amplitude
slope RAM. Other stages may be used for timing in
other parts of the pipeline oscillator.
The amplitude RAM, phase angle increment
RAM, and phase angle RAM are all addressed by a
separate 8 bit counter. Since the amplitude address is
continually scrambled, the address of the amplitude
slope RAM may be used to determine which sinusoidal
component may have its amplitude changed by the
processor. When the processor wants to update the
amplitude of the nth sinusoidal component, ii loads
the new amplitude into the holding register (next to
the amplitude RAM in Figure 10). The control logic
compares n to the address of the amplitude slope RAM.
When they are equal, the multiplexer (below the amplitude RAM in Figure 10) is switched to take in the new
amplitude. The multiplexer includes a clocked output
pipeline register which is clocked by Clk 1. The frequency (phase angle increment) is updated similarly,
using the address of the frequency slope RAM to determine which sinusoidal component may have its frequency updated. With this method of determining the
update addresses, control logic similar to that shown
in Figure 9 for the slow inexpensive oscillator may be
used.
Envelopes are generated by straight line segment
approximations to the envelope curve. If infinitesimal
line segments were used, any curve could be generated.
The slope of the envelope at the beginning of a line

PAGE,US

segment islpaded into the appropriate RAM (through
its temporary'lioJidinirregIster) by the processor. '
This slope is repeatedly added to the current amplitude (or frequency for frequency envelopes) until
the slope of the envelope changes. Then a new
envelope slope is loaded into the RAM. This is a
sim pIe-minded method 'of envelope generation;
however, minimal extra hardware is required as compared to other methods of envelope generation of
which I am aware. One of the problems with this
envelope generation technique is that the software
which updeates the slopes must load the new slopes
at the right times.
I would be interested in other techniques for
envelope generation which allow a different envelope
to be used for every individual n,ote. A function table
generates the same envelope shape for every note. A
group of function tables mayb ORG 05800
5800
>. K LUG E H 0 R N
SMO
>.
SINGLE CHANNEL MUSIC SYNTHESIZER DRI~ER PRO~RAM
SMO
>. (C) 1977 BY CARL HELMERS, BYTE PUBLICATIONS I"C·
SPOO
>.
ASSEMBLY
Of 2/27177 • 12.00
5AOO
5MO
>. TAPE 20010 LOC 281
>WAVD
EQU
$154
'WAVE PIA DATA
0154
>\lAVC EQU 0155 WAVE PIA CTRL
0155
>ENVD EQU 0156 ENV PIA DATA
0156
0157
>ENVC EQU 01 57 ENV PIA CTRL
0144
>HORN EQU 0144 PITCH LATCH
0138
>MILI EQU 0138 I 1'15 DELAY
>ATEC EQU $158 TERM ACIA CTRL
OISA
0159
>ATED EQU $159 TERM ACIA DATA
0004
>NMIV EQU $4 PROGRAMMABLE NMI PTR
0161
>TIMG EQU $161 TURN ON 4800HZ NMI
0163
>TIMs EQU $163 TURN Off NMI
>AA2'X EQU 51070 :x ,. X+A
1070
0070
>MEAS EQU $70 CUR MEASURE
>BEAT EQU 072 CUR BEAT
0072
0073
>ENVX EQU $73 ENV PTR
0075
>SULK EQU 575 ATTACK END NMI PTk
SAOO
>* lOEeI-STACCATO, ISUSI-SUSTAIN
0077
.ECNT EQU 577 ENV' COUNTER
007A
.RATE EQU $78 ENV RATE
0079
>OENV EQU 579 OLD ENV VALUE
007A
>DECf' EQU $710 DECAY ~LAG
007B
>TMPI EQU $7B CUR TEMPO RATE
007C
>BMAX EQU $7C BEATS PEIl MEASURE
007D
>SDFG EQU $70 SUBRTN DEf FLAG
007E
>PROC EQU S7E CUR PROCESS PTIl
>ENDF EQU S80 END EXEC fLAG , $}o~F .. CONTINUE
OORO
OOAI
>sAVX EQU OS I X SAVEl NEil PC ~ALUE)
00A3
>TMPO EQU 083 TEMPO CNTR
001':4
>SAVY EQU $84 X SAVE
00A6
>LOsT EQU $86 TIME LOST,O~ER RUN
00R7
>TLsT EQU $87 ACCUM TIME LOST
00R9
>PPTR EQU 089 Pili NT LI NE PTR
5AOO
5800
>. PROCESS CONTROL BLOCK OffSETS
OOOP.
>STKI EQU 2 OLD PC
0004
>STK2 EQU 4 OLDER PC
0006
>STK3 EQU 6 OLDEST PC
OOOR
>NXMS EQU 8 NEXT MEAsUIlE
00010
>NXBT EQU 10 NEXT BEAT
OOOB
>ONOT EQU II OLD NOTE
OOOC
>QLNG EQU 12 OLD LENGTH
>JiSUM EQU 13 LENGTH SUM/CLEAR fl.AG
'OOOD
OOOE
>ORIG EQU 14 SAVED OIlIGIN
SROO
5ROO 8E 2F FF >ENTRY LOS 1$2f'Ff
5R03 7E 00 00 > JMP GOGO
5A06
5806
TABLES
5806
5A06
>* SUBRtN PTRS
SP06
>SRTN EQU ..
58R6
)0
ORG .+12~

>.

>.
>.>*
>.
>.,.*
>."'*
>."'*
>.>*

5RP6
SRM
5A86
5896
5R96
SA96
SA96
5RB6
5SB6
5AB6
5PB6
5936
5936
5936
5936
593P
59310
59310
593C
593E
5940
5942
5942
5942
59610
59610
596C
S96E
5970
5970
5970
5A04
5970
5970
5973
5975
597A
59710

LENGTHS

>LGNT EQU •
,. ORG *+16

WAVE PTRS
>WFOR EQU ..

,. ORG *+32
ENV PTRS

>ETAB EQU ..

,. OPG *+128

80 AO
MOO
59
59
59
59

F.NV CONTROL BLOCK

>DUI"E,
:> FOB
:>EPTR
>PATK

36
37
38
39

FrB $80~0
58000
EQU .,
f DB DUME

>SUST F"DB DUME.l

.DECY FOB DUME+2

>.

,. ENND FOB DUME + 3

>* TEMP \lliAVE
>TWAV EQU ..

,. ORC
>IIPTI
>WPT2
>WPGM

00 00
00 00
00 00

>.

*+40
FOB 0
FOB 0
FDB 0 OPEE. SUBRTN.

>* MAIN

>GOGO EQU ..
59 70
7F 01 5A
M 03
87 01 58
R6 01
B7 01 5A

'597D1F
59110 7F
59113 73
59/!6 86
591111 87
59 .. B 7F
59 liE 7F
5991 7F
5994 73
5997 .. 6
5999 B7
599C AEo
599E 87
59101 86
59103 B7

01
01
01
04
01
01
01
01
01
3C
01
AD
01
3f
01

"'* INITIALIZE
> CLR ATEC
,. LOAA '3
> sTAA ATEC
,. LDAA II
,. S1A" ATEC
> CLR ENve

57
56 ,. eLR ENVD
56 ,. COM ENVD
,. LOA" 14
57 > sTAA ENVC
56 ,. eLR ENVD
55 • CLIl WAVC
54 ,. eLR WAVD
54 > COM WAVD
,. LOAA IS3e LOAD CLOCK ONE
55 ,. STAA WAve
:00 LDAA IS80 RECIRCULATE
54 )0 51"" WAVD
> LOA" '$3F INIT NOTE

44 ,. 51"A HORN

59106
59A6
59109
59101'
59AE
59BO
59B3
59B3
59"3
59B3
59B6
59B9
59Bl'
591'0
59Bf
59C2
59C4
59C6
59CB
59CA
59CC
59CF
59DI
59D3
5906
5909
59DB
5900
590F
59EI
59U
59E6
59E9

CE
OF
FE
OF
7F

7F
7f'
86
97
97
CE
OF
~6

97
M
97
CE
DF
DF
7F
7F
86
97
~6

97
CE
80
CE
80

BOX 1579, PALO ALTO CA 94302
>. ACTIVATE 4800 HZ I NTERJ LDX #TMER
04
• sTX NMIV
59 3" > LOX PATK
73
> sTX ENVX
01 61 > CLR TlMG

>.

00
00
FF
7D
710
00
75
010
78
IE
7B
00
87
70
00
00
FO
7C
FF
M
00
00
00
00

>. BEGIN INTERPRETER
DEFAULT SETTINGS
89 > CLR PPTR
79 ,. eLF! OENV
,. LOAA ISFF
> STAA sDFG NOT SUBROUTINE
> sTAA DECf ENV SUSTAINED
00 ,. LDX 'SUSl
> sTX SULK LEGATO
> LOAA '10

"*

> STAA RATE 0(0'

"
>
00 "
>
>
86 >
72 "
"

"
"
>
00 "
>
10 "
>
"

>.>*

59EB 20 00
59 ED

SAVE ORIGIN
"SVST LOAA

59ED

59ED
59E5
59EA
59EF
59Ft
59F3
59F5
59F7
59F9
59FA
59FB
59FD
59FE
59FE
59FE
59EC
5<'01
SAOA

106
07
02
107
106
A7
86
6F

00

DE
01
OF
DC
02

o.x

" STAA OIU G.X
" LOAA 1,X

" S1AA ORI G+ I.X
> LDAA '12
"SVSL CLR 2. X
» INX
» DECA
• BNE SVsL

O~

410
26 FA
39

..
)0

RTS

•• EXECUTI VE CYCLES PI'OCESsES
CE 00 00 >GOMU LOX 'PRTA KLU6EHORN PROCESS PCB
II
BD 00 00 )0 ,",SR INTR
)0
BSf{ INWA
8D 00
CE 00 10 ,.. LOX 'PRTA+16 TEMPO PROCESS PCB
BD 00 00 ,.. ,",Sf{ INTR
,.. BSR INliA
80 00
7D 00 80 " TST ENDF
,.. BNI: GOMU ARE WE DONE?
26 EB
7E 00 00 ,.. .)MP TCLO

51006
51009
5AOC
5<'OE
51011
51013
51016
51016
51016 7D
5~05 10
5AOD O~
51019 26
SAIl' 96
51010 27
5AIF ~A
51020 7F
51023 DE
51025 BD
5A2A DF
510210 96
5A2C 97
5A2E 7C
5"31 96
51033 91
51035 26
51037 DE
51039 08
510310 OF
5A3C
5A3C
5A3C 96
5A3E SF
5A31'

ENV

LOAA '30
sTAA TMPI TEMPO
LOX '0
sTX TLsT ZERO TIME LOST
sTX MEAs TIME ORIGIN ZERO
CLI! LOST
CLR BEAT
LOAA '240 DIVISIBLE BY 4.6.8.ETC
STAA BMAX
LDAA ,SFf
STAA ENOf'
LDX 'PRTA
BSR SVsT
LOX 'PRTA+ 16
BsR sVST
.~.~A 5iOM_1!_

f'Ill

>.

00

~3

>. WAIT FOR INTERRUPT DONE
>INWA TsT TMPO

,.. SNE IN.A
)0
LDAA LOST
)0
BEQ *+3
)0
DECA
00 86 > CLR LOST
~7
• LOX TLsT
10 70 > JsR AA2X
~7
,.. STX TLS1
,.. LDAA TMPI
7B
~3
> sTAA TMPO
00 72 > INC BEAT
72
" LDAA BEAT
7C
" CMPA BMAX
00
" BNI: INWI
70
" LDX MEAS
,.. INX
70
,.. STX MEAS
FB
86
01

>.

,..*

71

(1"

5A41 25 00
51043 ~O OA
51045 5C
SA1I6 20 F7
5A4~ CI 010
5A~P 05
5A~A 25 01
5A4C SF
5A40 CB 30
5MF F7 00
51052 88 30
51054 P7 00
51057 ~6 09
5"59 97 M
5"51' 7f' 00
5A5E B~ 01
5A36 27
51061 16
51062 ~1I 01
51064 27 03
51066 7E 00
51069
5"69
5A69 C~ 02
5A6B 27 00

PRI NT MEASURE SETUP
> loDAA MEAS+ 1
" CloRB
"DNDD CMPA '10
> BCs ODND
,.. SUBA 110
" INCB
" BRA DNDD
>DOND CMPB '10

,.. Bes

.+2+ 1
> CLRB
" ADDB 'S30

00 > STAB PPNI
,.. ADDA IS30

00 > sTAA PPN2
,..

t.DA~

'9

> sTAA PPTR

72 " CLR BEAT
58 >INWI LDAA ATEC
" TAB
" ANDA '1
" BEQ .+5

00 > JMP TCLO

>* CHECM FOR MEASURE PBINTOUT
" ANDB 12
> SEQ NPPR

PAGE 123

FIRST COMPUTER FAIRE PROCEEDINGS
SA6D
SA6F
5A71
5"74
SA77
5A79
5A7C
SA7F
5A6C
SA70
5A7F
5A71!
SA80
5A~P.

5"55
SA~3

SASO
SAPII
SAI!7
SA89
SAR9
SAR9
SA02
SAO"
S"PI'
5ARE
5A90
5A90
51190
5Age
511911

96
P7
CE
BD
"6
1'7
7A
39
II!
OE

~9

00
00
10
00
01
00

>
>
00 •
70 >

BOX 1579, PALO ALTO CA 94302

LDAA PPT"
BEQ NPP"
LOX #PLI N
JSR AAI!X

LDAA O"X

:»0

59 > STAA ATEP
89 > DEC PpTR
>NppR RTS

>pLIN EQU .-1
SA
OA
30
SA
30
SA
3D
.5
DF
SA
5"
7D
27

71'
OD

>PPN2 FCC 1 .. 0
A2
.pPNI FCC 1,0
83

..

S3 41 > FCC 3,-SA

.0

•

FCC 2,EM

•• INTEI'pRETEF EXLCUTIOII
.INTR STX PI10C SAVE PCB pTn

71£
R9
~9

00 70 • TST SDF'G
00
• BEQ EXEC IF SUBHTN I;E;F THEN IJUMMY EXf.C

••
••

IS NEXT EVElll TIML PAST?
• LDAA MEAS +1
> SUBA NXMS+l .. X
• LIJAA MEAS
> SElC~ NXMS"X

96 71
AO 09
96 70

5 .. 96 AI!
5A9~ 25
S"9A EE
SA9C 9C
S"9E 26
5AAO DE
5AAe 96
5AA4 AI
SAA6 24
5AAP 39
SA99 OE
SAA9
SAM
5AA9 DE
SAAF 19
5A91' 09
SAA7 01
SAAI' 1£1£
SAAD A6
SAAI' DE
SAI'l AI
SAB3 I!S
SAPS AI
SAI.'7 1!5
SAP9 ~I
SAEP I!S
SABD AI
5AIll' 1!6
SACI 71'
SACII 39
SACS EE
SA CO 04
5AC7 08
SAC~ DF
SACA DE
S"CC 96
SACE A7
SA\)O 96
SADe "7
SADII PO
SAD6 7E
SAER ID
S.. D9 7F.
SAEC IC
SADC
SADC
SADC DE
SADE OA
SAOI' DF'
5AEI DE
5AE3 39
SAE4
SA Ell
5A!:1I DE
5AE6 7D

FeB SA"SD

)0

O~

• BCS NOAK CURP.ENT • NEXT CI GIIIORt; BEAt>
:. LDX NXMS,X
> CPX MEl'S
:.. BNI!: EXEC CURFtE~T > NE-XT CI ","ORE BEAt>
• LI)X pROC
> LDA" BEAT
,.. CMPA NXBt"X
• BCC EXEC CURFENT >- NEXT
.NOAK RTS

00
OP
70
00
7E
72
OA
00

>.

•• EXECUTE COMMANDS
.EXEC L&X P"OC

7E

00
00
71£
80
00
90
00
BI
00
FF
00
00
00
AI
7E
AI
00

o.x
LJjA~ o.x

,. LDX
,.
>
>
•
•

LDX p"OC
CMpA #S80 NOTE?
BCS NOTE
CMP" '$90 LENGTH RE'?

,. Bes LENG

~O

> CMpA #SBI FUIIIC?
> BCS ",UNC
CMPA #SFF END MARK?
BNE'EXEI
• CI,., ENDF
,.. HTS
.EXEI LOX O,X

> INX
> STX SAVX
.EWEN LDX PROC
• LI:AA SAVX

,.. STAA

o.. x

~2
• LDAA SAVX+I
01
)0
STAA 1.X
D3
> BRA EXEC
00 00 >LENG .JMP XLNG

00 00 .FUNC .JMP X"UII

>.
~I

>. WAIT INC
>liATI LDX SAVX

,. INX
81
71£

> STX SAVX
> LIJX PI'OC
HTS

>.
:>

>* WAIT
71£
>~AIT LDX pROC
00 70 • TST SD"G
> BEQ EKE I
SAE9 1!7 VA
SAEE PO 00
• BRA WAIX
SA ED
5AE1>
•• PLAY OL[; NOTE
SA ED DE 71£
>PLAY bDX PIiOC
SAEI' 7D 00 7D > TST SD. G
5AI'I! 1!7 DI
> BEQ EXEI
5AI'II A6 OB
> LDAA ONOT.X
5A,'6 liD 00 00 > JSR KNOT
> BRA ~AIX
SAF'9 eo 00

>.
>*

SAfi'S

5AFB
SAFE
5AEII
SAFE
51'00
5BOP.
5F02
SEOI!
5AEC
SAFA
5BO.
5806

>. NOTE
70 00 7D >NOTE TST SDFG
46
27 C5
> BEQ &:XU
8D 00
>NOT I BS" KNOT

DE 70
IS
07
DF AI
DE 71£
SBO~ A60C
51'OA 51'

>.

. . NEXT EVENT TIME I . CURRENT TIME. LEN 6TH
>WAIX LDX MEAS

>
>
,.
>

STX SAVX
LDX pROC
LDAA OLNG,X
CLRB

PAGE 124

5BOB
51'01J
51'01'
51'11
51113
SillS
5BI7
51119
SBII'
5BID
5BI6
5BIF
5BEI
5B23
5Bes
5B27
5B29
51'2A
51l2C
51'PE
5B30
5B32
5B34
5B36
5B3A
5B39
5BI0
SB3B

911
C9
26
A7
91
25
90
A7
RD
96
06
A7
96
A7
DE
1£1£
OR
OF
DE
96
A7
96
A7
6'
39
8D
2A
90

5B3D
5B3F
5841
SIl.3
51'01
,5AF7
51'113
5B.6

C2 00
26 FA
20 CE

41
5B
117
DE
5BII~ A7
51'.... DE
5811C AC
5B4F 27
5BSI 39
5852 CE
5B50 01
51'55 OF
5B57 39
5B5/1 71£
5B51'
5115P
51l5B Ill>
5B5E 70
51'61 27
51163 DE
5"65 6D
51'67 26
5l'69 36
5B6A C6
5B6C "6
51'61£ A7
51'70 09
5B71 SA
5872 26
5B7. 3P
5B75 /III

5B77
5l'7R
51171'
5B7E
5BAO
5BIII'
SilAS
51'115
5B85
5AD7
5111111
51'AA
5BIIC

""
CE
I'D
EE
DF
7E

SI'9A
SB9A
SB9C
51!9E
51'AO
51lA2

DE
6D
27
AB
1i7
20

7D
51'
27
EE
A6
~B8E All
51190 CE
5B93 BD
5B96 A6

5""" 06
liD

SB9D
5BAS
51lA7
51'119
5BA6
5BA3
SIlAB
51'A9
5BAE
5BAF.
SBAE
5BAE
SAM
51'BO
SI!"I
51!FII
51'B7
SBI'9
5BBB
SI'BB
5BBB
5B50
5"I!D
SBBF

72
00
00
OA
7C
00
7C
OA
BF
AI

- ADDA BEAT
> ADCB #0
> BNE WADJ
>WAXI STAA NXBT,X
> CMpA BMAX
> BCS, WAX2
> SuBA BMAX
- STAA NXBT,X
> BSR WATI
-WAXI! LDAA SAVX

OA
R2
09
71£

> STAA NXMS,X
> LDAA SAVX+I
STAA NXMS+I,X
LDX PROC
• LDX 0.)(
> INX
:to STX SAVX
> GOBK LDX PROC
> LDAA SAVX
» STAA 0.)(
• LIJAA SAVX+I

00
81
7E
III
00
82
01
OD
AI
7C

,. STAA I,X

• CLF FSUM,X
> RTS
>WADJ BSR ,.AT!
> SUBA BMAX
> SBCB #0
> BNE WAD"
• BRA WAXI
>KNOT EIIU •

113
01 411 .KNT I STAA HORN
71£
> LDX PROC
OB
• STM ONOT.X
75
> LDX SULK
00 00 • CPX #DECI
00
• BEll NGAT
> RTS
00 00 >NGAT LVX #ANE~
04

> STX NMIV
> RTS
SA CA >&:XU "I'll' EVEN

>.

>. MUSIC SUBROUTINE CALL
00 00 >CALL JSR OHED
00 7D > TST SDFG
'5
> BEll EXE. SKIP EXEC I f IN DE.
7E
> LDX pROC
,. TST STK3 .. X
06
EI'
> BNE EXEII SKIP EXEC It STACK f'ULL
> pSHA
06
> LDAB #6
>XSLP LDAA s.x
05
,. S1AA 7,X
07
> DEX
> DECB
F~
> BNE XSLP
,. PULA
3F
> ANDA #S3F
,. ASLI'
5R 06 > LDX #SRTN
10 70 > JSR AAI!X
00
,. LUX o .. x
AI
> STX SAVX
SA CA > JMP EVEN

••

•• SET LEN&TH fROM TABU;
00 7D .XLNG TST SDFG
85
00
• BEQ EXE3
00
,. LDX O,X
00
,. LDA,. 0 .. )(
OF
• ANDA #SF'
58 86 • LOX #LGNT
10 70 > JSR AA2X
00
,. LDAA o .. x·
- LOX pROC
71£
> TST FSUM,X
OD
00
• BEQ XSTL
,. ADDA OLNG,X
OC
> STAA OLN&,X
OC
00
• BRA LENI
.XSTL TSTA

27 00
A7 OC
~C OD
Ol!
05
7E 00 00
21

RO 90
51' AE

""

> BEll LENI IF NULL KEEP OLD LEN 10TH
• STAA OLNG,X
>LENI INC FSUM,X

>EXE3 .JMp OBYT

>.

... "UNC EXEC I
>. LOOK UP ADDR THEN &0 TO 'UNC
>KFUN SUBA #S90
)0

CE 00 00 >
I'D 10 70 >
,.
EE 00
,.
~E 00

>.

DE 7E
SF BB
EE 00
OR

ASLA
LDX #FlAB
JSR M2X
LDX
JMP 0 .. )(

o.. x

•• 2 BYTE OPCODE OIiERHEAD
-OHED LDX pROC

,. LDX
> INX

o.. x

FIRST COMPUTER FAIRE PROCEEDINGS
SBCO
5BCB
5BC3
5PC5
5BC6
511C6
511C6
511C6
5BCR
SacA
SBCB
5BCE
SBDI
S!!D3
SPDS
S!!1l7
SIID9
S!!DB
SBDV
SBm
SI!EP
SBES
SBE5

116 00
Oil
DF III
39

liD
II.
.11
CE
liD
96
A7
96
A7
,DE
86
!!V
Df
1E

F3
OF

,. RTS

ASLA
LDX 'WF'OR
.JSR MBX
LD"'" SAliX

..

S1AA

o.x

LDAA SAIIX+ I

Sf"A I "x

LOX SAliX
LDAA 140
.JSR AA2X
STX SAlIX
.JMP EWEN

•• ENII CONTROL MOllE
'TUKE LDX SAllY
1111
81
00

• LDAB SAlIX
» STAB o.x

112
00

" LOAS SAIIX+I
,. STAB

DE
D6
E7
Oil
D6
E7
OR
DF
39

5C34
SC37
SC3A
SC3C
SC3F
SC.I

BV SB
7V 00
27 00
7F 00
II. 3F
.8
CE SR
BD 10
96 ~I
A7·00
96 82
111 01
7E 5A
I.

SC.S
5CIIR
SC4A
SC4C
SC4E
SCSO
SC3B
SCS3
SCS3
SCS3
SCSS
5CS8
5CSA
SC5C
SCSE
5C60
SC61
SC62
SC64
SC66
SC6P
SC6A
SC6C
SC6D
SC6E
SC70
SC73
SCS9
SC76
SC79
SC79
SC79
SC79

..

INX
STX SIIIIX

•• WAIIE~-OR1'I Dn
'WDEF EQU •
,. 8Sft OMED
,. ANDA 'Sfo'

•
58 96 •
10 70 •
II~
•
00
"
112
•
01
:10
Al
•
2A
"
10 70 •
III
•
SA CA •

SBES
SIIE7
SBE9
SBEII
SIIEC
SI!EE
SBFO
SElF I
SBF3
S8F.
SIIF4
SBF.
511F4
SIIF6
SIIF/I
SIIF9
SBF..
SIIFB
SliFE
SCOI
SC03
SCOS
SC07
SC08
SC09
SCOB
SCOC
SCOD
SCDF
SCIO
SCI2
SCI.
SCI6
SCI9
SCIB
SCIV
SCIE
sceo
SC23
sces
SC27
SC28
5CIlA
sceD
SCBF
SC31
SC3.
SC34

selle

LDAA 0,,)(

:»0

•
•

•

INX

o.x

,. INX

A4

..

• STX SAllY
,. RTS

>*

ENV DEfo"

"EDEF EQU
8V
II.
.11
"/I
.11
CE
liD
DF'
VE
A6
36
Oil
A6
36
OR
A6
OR
VF'
liD
VE
I'D
DF
liD
32
DE
BD
VF

CS
0"

*

• BSR OKED
• IINVII 'SF
,. ASLA
,. ASLA

~V

• IISL..
S8 116 • LDX ,ET ..B
10 70 • .JSIl M2X
II.
• STX SIIIIY
,. LDX SAUX
RI
,. LDAA O"X
00
• PSKII
• INX
00
,. LDAA O"X
• PSKA
• INX
00
,. LDAA o"x
)0
INX
,. STX SAliX
III
VI
> 85ft TUKE
lit
• LDX SAlIX
10 70 ,. .JSR AII2X
~I
• STX SAlIX
C~
• BSR TUKE
• PULA
~I
• LDX SAlIX
10 70 • .JSIl M2X
~I
• STX SAliX
BE
)0
BSR TUKE

32
VE
BV
VF'
liD
7E

• PULA,
RI
• LDX SAlIX
10 10 • .JSR AA2X
81
• STX S"IIX
B4
• BSR TUKE
SA CII • .JMP EWEN

VE
7V
27
C6
"6
A7
08
SA
26
DE
6F
6.'
EE
08
08
DF
7E
73
19
7E

..

•• BEGIN SUBROUTINE
'.BEGS .JSR OHED
BB
7D • TST SDFe
• BEQ' SDE2
7V • CLR SDFG
)0
ANDA ,S3F
•
06 •
70 •
,.

ASLA
LDX 'SRTN
.JSR AAex
LDAA SAVX
STAA

)0

o·,x

• LVAA SAIIX+I
,. STAA 1.X
CA 'SDE2 .JMP EWE ...

••

•• END SUBROUTI NE (RETURN IF EXECUTiON)
7E
.ENDS LDX PROC
00 7D • TST SVF'G
,. BEQ SEXD
00
06
• LDAB '6
'SXLP LDAA 2.x
02
00
,. STAA o.x
F'R
7E
06
07
00

•
,.
•
•
•
,.

INX
DECB
BNE SXLP
LDX PROC
CLR STK3.X
CLR STK3+ I.X

,. LDX

o.x

,. INX
• INX
,. STX SAliX
RI
SA CA • .lMP EWEN
00 7D 'SEXD COM SDFG

..

00 00 'EXE2 .JMP OBYT

•• SET LENGTH REG
.LSET EQU •
BV SEt BB • .JSR OKEV

5C7C
5C7E
5Cn
5CIII
5CaB
SCII.
5CII7
5CIIA
5C8B
5CIID
SC90
SC90
5C90
5C92
SC94
5C9S
SC96
5C98
5C9A
5C9C
5C9E
5CAD
SC9B
5CAB
5CAII
SCAS
5C.. 7
SCA3
SCAR
SCAli
SCM
SC.. II
SC .. A
scn
SBIIC
5CIIC
SCAF
5C .. "
SCA"
SCIIF
SCB2
SCBlI
SCB6
5CB9
5CB9
5CB9
SCBB
SCBV
5CBE
SCBF
5CCI
SCC3
5CC5
SCC7
SCC9
SCCA
SCCC
5CCE
SCCF
SCVI

E6
Oil
DF
37
II.
CE
BD
33
E7
7E

DE
A6
.C
16
C4
CI
2F
II.
liB
81
04
25
.A
"7
39
03

BOX 1579, PALO ALTO CA 94302
00

,. LDAR

,.
•
,.
OF
•
511 M •
10 10 •
,.
00
,.
SA CA •

81

o.x

INX
STX SAliX
PSHB
ANDA ISF
LDX 1\..6NT
.JSR AA2X
PULS
STAB o"x
.JMP EWEN

..

7E
OB

•• NOTE INC SERIIICE
>NINI LDX PROC

,. LDAA ONOT"X
• INCA
> TAB

OF
DB
00
FO
10
7F

,. ANDB ISF

• CMPB '11
• BLE NIN2
• ANDA UFO
• ADDA 'SIO
.NIN2 CMPA ISH

00

• BCS NINI

DB

" DECA
" 51"" ONOT.X
>NINI RTS

••••

NOTE INCREMENT
'INCN EQU •
AV E€>
• BSR NINI
DE 7E
'OBYT LVX PROC
SC
SC 1111
7E 511 CS • .lMP EXEI

....

7V
27
IIV
7E

116
A7
39
4V
27
M
27
liB
A7
39
DE
A6
16
CII
27

..

>* INCREMENT NOTE liN\) PLIIY
>lPLA EQ·U
00 7V • TST SVFG
,. SEQ OBYT
F6
D..
> 85ft NINI
5B 00 • .lMP NOTI

*

..

01
OB

F8
10
F.
OB
DB
7E
DB
OF
EB

5CV3 . "
SCD" 27 E3
SCD6 A7 DB
SCDS 39
SCD9
SCD9
SCD9
5CD9 8D EF
SCDB 7E SC M
SCDE
SCDE
SCDE
SCDE 7D 00 7V
SCEI 87 C7
SCE3 80 ES
5CES 7E SB 00
SCES
SCES
SCE8
SCES BD SB BB
seEB 97 7B
SCED 7E SA CA
SCFO
SCFO
SCFO
SCFO 96 7B
SCFB IIC
SCF3 27 00
SCFS 97 7B
scn 7E SC AA
scn 02
SCFA
SCFA
SCFA
SCFA 96 7B
5CFC .A
SCFD B7 F8
SCFF 97 7B
5001 7E 5C AA
Sooll
SOO.
SOO.
500. DE 7E
5006 6F OA
5008 EE 00
SooA 08
SDOB A6 00
5000 08
SDOE E6 00
5010 08

>* DEC NOTE SERVI CE
'VMI N LVAII 1\

,. Sf"" ONOT.X
• RTS
'DFLIl TSTII
• BEQ DMIN
• SUBA '5\0
• BEQ D1'IIN
• AVVA 1\ I
,. ST"A ONOT"X
> RTS
.DIN! LDX PRoe
,. LDAA ONOT. X
,. TAe
• ANDB I$F
• BEQ D'LR
)0
DECA
• BEQ DMIN
,. STAA OlVOT.X

·••

RTS

•• DECREMENT NOTE
'DECN EQU •
• BSIl DINI
~ .JIIP OBYT

••

•• DECREMENT AND PLAY NOTE
'DPLA EQU •
• TST SDFG
• BEQ OBYT
• BSR DINI
• .JIIP NOTI

••
~.

SET TEMPO
EQU •
.JSR OHED
STM TMP!
• .JMP EWEN

~TEI!P

•
•

••

•• INC TEMPO
'TINCEQU •
• LVAA TMPI
• INCA
• BEQ NOCH
• STM TMPI
'NOCH .JIIP OBYT

••
•• DEC

TEMPO
'TDEC EQU •
• LDM TMPI
• DECA
• BEQ NOCH
• STAA TMP!
• .JIIP OBYT

••

•• WAIT TIL MEASURE
'WEA EQU •
~ LOX PROC
• CLR NXBT.x NEW BEAT IS 0

o. . x

·•

INX
LVM O.X

•

INX

,. LDX

• INX
,. LDAB O ... X

PAGE 125

FIRST COMPUTER FAIREPROCEEDINGS
5DII DF III

-SDI3DE

1E
5DI5 A7 08
5D17 E7 09
5DI' 1E 5B 2C
5DIC
5DIC
SDIC
5DIC BD 5B BB
5DIF 84 OF
SDI!! ... 8
5DBB 48
5DB3 48
5DB4 CE 58 B6
5De1 BD 10 70
5DBA C6 08
5Dec 116 00
5D2E 36
5DBF 08
5D30, SA
5D31 26 F9
5D33 C6 08
5D35 C£ 59 41
5D38 32
5D39 A1 00
5D38 09
5D3C 5A
5D3D 26 F9
5D3F 7E 511 CA
51142
5DA2

BOX 1579, PALO ALTO CA 94302

»

STX SAW
• LDX PRDe

..

• STIIA NXMS.X
• STAB NXMS+I.X NEW IlEAS DEfiNED
• .IMP GOBK
•• PICK ENV
.ESET EQU •
• .JSR OHED
• ANDA ISF'
• IISLA
ASLA
ASLA
• LDX IETAB
• .JSR M2X
• LDAB 18
.SET I LOIIA o.x
• PSHA
• INX
• DECB
• BNE SETI
• LDAB 18
- LDX IEPTR+7
.SETe PULA
,. STAA O"X

• DEX

..

• DECB
• SNE SETe

• .IMP EWEN

•• ENV RATE
.£RAT EQU •
5042 BI· 5B BS • .JSI< OHED
5D45 91 7/1
• STA~ RATE
5D47 1E SA CA - oIMP EWEN

sOlIe

..

sr.""

5D...A
5D4A
5D4A
5D4D
5D4"
5D4F
5D4F
5D52
5055
5D55
5D55
5D55
5&58
SDNI
5DSC
5D5E
5D61
5D61
5D61
5D61
5D63
5D65
5D68
5DM
5D6D
5D6D
5D6D
5D70
5D12
5D7...
5D77
5D71
5D71

51167
5AI4
5D19
5D7C
5D?!
5DIII
5D84
5D87
5DBA
5DIIC
5D8F
5091
5D9"I
509...
5D9...
5DeB
5D'0
5096
50911
5D9A
SD'C
5D9D
5D9D
509D
509F
5DA2
5DA4
5DA7
5DAA
5DAA
SDAII
5DAII
5DAII
5DAD
5DAF
5DBO
5D83
5D86
5D88
5DBS

•• SET STACAT1'"
-STAC EQU •
CE 00 00 • LDX 'DECI
D.- 75
• STX SULK
•• FALL THRU TO
•• STIIRT DficAY
7F 00 7A -DEKII CLR DECF
7E 5C All • .JIO!P OBYT

..

•• SET LEGATTO
.LEGII EQU •
CE 00 00 • LDX ISUSI
DF 75
• STX SULK
• LOAA ISFF
116 FF
97 1A
• STAA DECF
1E 5C All • .JIIP OBYT
••
•• START ATTACK
.ATTK EQU •
116 FF
• LDAA ISn
91 111
• STAA DEC"
CE 00 00 • LDX IANEW
DF 04
• sTX ""IV
1E 5C All • _
OBYT
••
•• SET NOTE PARAMETER
BD 5B BS .SNOT .JsR OHLD
DE 7E
• LDX PROC
A1 OB
• sTAA ONOT,X
7E 511 CA • .JIll' EWEN
••
•• RETURN TO MONITOR. RESTORING ACIA CODES
86 03
.TCLO LOAA 13
5D 11
SD 11
B1 01 58 • STM ATEC
86 81
• LDAA 1S81
B1 01 58 • STAA ATEC
B6 01 59 - LDAA ATED
7F 01 63 • CLR TIMS TURN O,'F INTERRUPTS
CE 00 00 • LOX IPRTA
8D 00
• 8SR UNSV
CE 00 10 • LDX IPRTA+16
8D 00
• 8SR UNSV
71 10 00 • .IMP 51000

••

A6
08
03
A7
A6
A7
39

OE

00
OF
01

•• RESTORE ORIGIN
.UNSV LOAA ORI G.x

>
•
•
•

>.

STAA o.. x
LDM ORIG+I>X
STAA i.X
RTS

•• OSCILLOSCOPE TRI GGER <06 OF WAVE PIA)
86 CO
.OSCL LDAA #SCO
B7 01 511 • STAA WAVD
86 80
• LDAA 1580
B1 01 54 • STM WAVD
7E 5C 1111 • .IMP OBYT

••
••

••

WAVE CALCULATOR PACKAGE

•• WAVE OVERHEAD
• WOHD .lSR OHED
BD
811
48
CE
BD
EE
FF

5B' BB
OF
• ANDA ISF
• ASLA
58 96 • LOX IWFOR
10 70 • .lSR AA2X
,. LOX o.x
00
5' 6C • STX WPTe
•• ARRAY OVERHEAD

5DBS
5DBE
5DCO
5DC3
5OC6
5OC8
5DCB
5DCD
5DCE
5DDI
5DD3
5DD4
5DDII
5DD4
SDD7
5D09
5DDA
5DDD
5DDE
5DEI
5DEII
5DE6
5DE9
5DE9
5DE9
5DEA
5DEC
5DEF
5DFI
5DF4
5DF6
5DF'
5DFA
5DFB
5DFE
SEOI
SE04
SE06
SE08
5EOB

CE
A6
FF
FE
AD
FE
A1
08
8C
26
39
FE
A6
08
FF
39
CE
FF
8D
1E

36
84
B7
86
B7
86
B1
32
39
CE
FF
7F
80
86
B1
7E

59
00
59
59
00
59
00

42 'WARY
-WRY I
6A • STX
6E • LOX
,. ..15ft
6A • LDX

LDX ITWAV
LOM O.X
WPTI
IIPGM

o.x

IIPTI

" STM

o.x

• INK

59 6A • CPX ITWAV+40
EB
• BNE WRYI
• RTS

••

•• SET WAVE REGISTER
59 6C 'WRGS LDX IIPTIl
,. L.DM o.x
00

• INK

59 6C • STX
• RTS
5D D4 'TMPW
59 6E • STX
C4
• BSR
511 CA
• .IMP

..

WPT2
LOX 'WRGS
IIPGM
WOHD
EVEN

•• OUTPUT ,- WAVE REG
.WRUS PSHA
1F
• ANDA 'S7'
01 54 • STAA WAVD
34
• LDAA IS311
0 I 55 > STAll WAVC
3C
• LDAA 1S3C
01 55 > STIIA WIIVC
• PULA
• RTS
5D E9 >WTMP LDX ,I/RUS
59 6E
STX WPGM
01 54
CLR WAVD
B5
> BSR WARY
80
> LDAA 1S80
0 I 54 • STM WAVIl
5C M • .IMP OBYT

•

~,

:>.

t- It ,.

5EOE
5EOF
5EIO
5EI3
5EI6
5EI6
5EIB
5EIB
5EIB
5EIC
5EID
5E20
5E23
5E25
5E2R
5E28
SE28
5E2B
5E2D
5E2E
5E31
5E32
5E35
5E3/1
5E3B
5E3E
5E3E
5E3E
5E41
5EII3
5EII4
5E41
5E49
5E4A
5E4D
5E50
5E53
5E56
5E58
5E5B
SESE
SESE
SESE
5E61
5E63
5E66
5E66
SE66
5E68
5E6A
5E6C
5E6.'
5£6F
5E6F
5E71
5E73
5E75
5E11
5E7A
5E1A

Iro

1,.
ASHA

47
39
CE
FF
80
1£

,,2DS
• HTS
5E DE .DIVW
59 6£ • STX
113
• BSR
5C M • .IMP

48
39
CE
FF
8D
1E

•• VAVE REG ,- WAVE REG.
.wells ASLA
• RTS
5E IB 'IIULW LDX 'W2I1S
59 6E • STX WPGM
96
• BSR WARY
5C AA • .IMP OBYT

FE
AB
08
FF
39
CE

••

e

••

•• WAVE REG I - liAVE REG + WAVEeX)
S9 6C 'VPLS LOX ,"PT2
,. ADDA 0 ... ](
00

• INK

59 6C • STX
>0 RTS
5E 28 .ADDW
n' 59 6£ - STX
SD 5D All • .JSR
7E SA CA • .IMP

••

FE
A6
08
FF
8D
39
CE
FF
1F
BD
86
B7
7E

LOX ,W8DS
IIPGM
WARY
OBYT

WPT8
LDX IWPLS
VPGII
WOHD
EWEN

-. DUIIP WAVE
59 6C 'STWS LDX IIPT2
00
:. 1.DAA O"X
,. INX
59 6C • STX IIPT2
AO
• 8SR WRUS
• RTS
5E 3E 'WSET LDX ISTVS
59 6E • STX WPGII
01 54 • CLR VAVD
5D AA • JSR WOHD
80
• LOM 1$80
01 54 • STM WAVD
SA eA • .JIIP EVEN

••

•• SET TillE SIGNATURE
BD 5B BB _SIGN .JSR OHED
91 7C
• STAA BMAX
7E SA CA • .JMP EWEN

••••

GO TO ORIGIN

DE
EE
DF
1£

1E
OE
81
511 CA

.LOOP
• LDX
• STX
• .IMP

IlE
EE
EE
DF
7E

7E
00
01
81
SA CA

60TO
'GOTO LDX PRoe
"'< LDX 0,,](
• LDX I.X
• STX SAVX
• .IMP EWEN

••••

..

LDX PROC
ORIG.X
SAVX
EWEN

•• I NTERRUPT ROUT I NES
•• KERNEL OF INTERRUPT HANDLER
5E7A"683
'TIlER LDM TMPO
5'A1 5E 7A
5E7C 27 00
• BEQ TMEE
5E7E 711 00 83' • DEC TMPO
5E81 38
• RTI
5EII2 7C 00 116 .TIlEE 1 He LUST
SE7D 04

5UA

FIRST COMPUTER FAIRE PROCEEDINGS
SEilS 3B
SE86
SEII6
SE86 .6
SE81! 21
SElIA '1'11
SE8B 91
SE8D 86
SE8.' DE
5E.1 BC
519. 86
5E96 DE
5E.8 OJ'
SE9A 80
SE9C DE
5E89 Ie
SOE' A6
5EAO 91
5EAe 25
SEA4 £11
SEA1 011
5EA3 03
SEA8 DF
SEAA 96
SEAC SA
SEAE 91
SE80 20
SEB2
SEse
SEBe CE
SSS3 SE
SD66 SE

SESS

> RTI

••
>.

ATTACK INTERRUPT
11
>ATKI \.DAA ItCNT
00
• BEQ APDA
• DECA
> STAA ECNT
11
ES
• SNE TMER
13
> \.OX ENUX
S9 3C > CPX SUST
E4
> BNE TMEft
1S
\.DX SU\'K
04
STX NMIU
DE
• SAA TMEft
13
>APDA \.UX ENVX
00
19
00
01 S6

13
18
03
11
CII

,. LDAA

o.x

> CMPA DENU
• SCS NATT
• STAA ENUD
>NATT INX
•
•
>
•
•

••
••

STX ENUX
\.DAA RATE
ORM '3
STAA ECNT
SRA TMER

NEW ATTACK INITIATION
SE 86 .ANEW \.DX ,ATKI
S2
S2
> ST1\. NMIU
04
S9 3/\ > \.DX P/\TK
73
> STX ENUX
BC
• BRA TMER

OF
SES1 FE
5EBA Dt'
SESC 20
SERE
SEBE
SESE 96 11
5.CO SE BE
SDS6 SE BE
SECO 21 00
SEC2 4A
5EC3 91 11
SECS 26 83
5EC7 DE 73
SEC9 BC S9
SECC 26 AC
SECE D6 1111
SEOO 26 00
5ED8 CE 00
SEDS OF 04
SED1 20 AI
SED9 FE 5,
SEDI 07
SEDC OF 13
5EDE eo 9A
SEED
SEEO
SEED 96 11
5S4D SE EO
SD4B SE EO
5ED3 SE F.o
SEE2 21 00
SEE4 4A
SEES 97 17
SEE? 26 91
SEE9 DE 13
SEEB BC 59
SEEE 26 8A
SEFO FE 59
5E,'3 DF 73
SEFS CE SE
SEF8 OJ' 0 ..
SEFA 1E 5E
SEFD DE 73
SECI 3B
SEE3 19
SEFF /\6 00
SFOI 91 19
SF03 B1 01
5F06 08
SF01 OF 13
SF09 '6 78
SI'OB 8A 03
SFOD 97 17
SFOF 1E SE
51'\2

>.

>* SUSTAIN INTERRUPT

.SUSI \'DAA ECNT

• BEQ UPDA
• DEC/\

,. 5TAA ECNT

• BNE TMER
> \.DX ENUX
31£ • CPX DECY
• BNE TMER
> \.DAB DECF
> BNE DNEC
00 > \.OX ,DECI
> STX NMIU
> BRA TMER
3C >DNEC \.DX SUST

..

• STX ENVX
• BRA TMER

•• DECAY INTERRUPT
>DEC I \'DM ECNT

>
>
>
>
>
40 •
•
3A •

BEQ UPIlA
DECA
STM ECNT
BNE TMER
\.DX ENUX
CPX ENND
BNE TMER
\.DX PATK

,. STX ENVX

7A > \.DX ITMER
• STX,NMIU
1/\ > .JMP TMER
>UPVA \.DX ENUX

,. LDAA

o.. :x

• STAA OENU
56 • STAA ENUIl

,. INX
• STX ENVX

:. LDAA RATE
,. ORAA '3
• STAA ECNT
1A • .JMP TMER

..

•• 'UNC UECTOR TAB\'E,

SF12
SFt2
SBB8
SFI2
SFI2
SFI2
5FI2
5Ft4
SI'\6
SFt8
SFtA
SFIC
5FtE

S'20
SF22
s,e4
5F1!6
5F28
5FeA
SFec
5peE
SF30

>FTAB EQU •

SF 12
-NAME-FORMAT--- - --COMMENTARY--- -- - - ------ - ---.
00 TO 7"
P\.AY SE\.ECTt:1l NOTE
8X
\.ENGTK , . \.TAB(X)
FDB WVEF .OOX •••
WAVE(X) , . NEXT 40 UA\.UES
FOB WSET 910X
KORN , • •AUE(X)
TWAUE , . WAUE(X)
FOB TMPW .IIOX
FOB WTMP .3
KORN ,. TWAUE
FDB DIUW 94
TWAUE , . TWAUE I e
TWAVE , . TWAUE • 2
FOB MU\.W 95
.-DB ADDW 960X
TWAVE , . TWAVE • WAUEIX)
FOB SNOT "XX
NOTE ,- Xx
NOTE , . NOTE • I
FOB INCN '8
FOB IP\.A . .
NOTE , . NOTE - \I P\.AY NOTE
'DB DECN 'A
NOTE , . NOTE - I
FOB DP\.A 9B
NOTE , . NOTt: - \I P\.AY NOTE
FCB WAIT 9C
WAIT UNTI\' T • \.ENGTII
FOB WMEA 9DXXXX
WAIT UNTI\. MEASURE XXXX
FDB \.SET .IlOX\.\.
LTAS(X) •• LL
I'DB OSC\. 9F
TRI GGt:1i SCOPt:

>0-- -

,..

,..
SB C6
SE 4A
50 DE
SO FB
SE 10
SE 10
SE 32
SO 6D
SC A8
SC AF
SC D.
5C DE
SA E4
50 04
5C 19
50 .0

,.
>
•
>
>
•
>
>
•

•
•
•

SF32
5F34
5F36
5F38
S'3A
SF3C
5F3E
5F40
SF4I2
5F44
5F46
5F48
5F4A
SF4C
5F4E
5150
5F5e
SP'54
eooo
5.lte
5fFF
5,E1
5088
5A07
5080

SC
!lC
SB
5B
50
SD
51)
50
50
50
!lC
5C
5C
SE
5E
SA
5E

BOX 1579. PALO ALTO CA 94302
,. FOB BEGS AOXX •••

34
53
5B
F4
IC
412
4A
55
61
41'
ES
FO
FA
5E
66
ED
6F

•
>
•
>
•
•
•
>
>
•
•
>
>
>
•
>

ENDS AI
CA\.\. A2XX
EDEF A30XDDSSAA
ESET A40X
ERAT A5XX
STAC A6
\.EGA A1
ATTK A8
DEKA A.
TEMP ""Xx
TINC AB
TDEC, AC
SIGN ADXX
\.OOP AE
P\.AY AF
GOTO 80XXXX

BEGIN SUBRTN XX 1)t:1'
END OR RETURN
CA\.\. SUBRTN XX
DE. ENV X
PICK ENU X
ENU RATE , . XX
STACCATO MODE
\.EGATO MODE
START ATTACK
START DECAY
TEMPO , . XX
TEMPO , . TEI',,"O • I
TEMPO , . TEMPO - I
SET BEATS PER MEASURE
GO TO ORIGIN'
P\.AY 0\'1l NOTE
GO TO XXXX

~.

>PRTA EQU S2000

liD 00
20 00
liD 00
liD 00
eo 00
liD 00
• END

5FS4

...

FOB
FDB
FDB
FOB
FOB
FDB
FOB
FDB
FOB
FDB
FDB
FOB
FOB
FOB
FOB
FOB

PAGE 127

END - UNRESO\.UED ITEMS'

•••
AA2X
ATED
BMAX
DECN
DIVW
DUME
ENND
EPTR
EXEI
I'SUM
GOMU
INWI
\.EGA
\.OST
NATT
NMIV
NPPR
OilED
PATK
PPTR
SAUY
SEXV
STKI
SUSI
TCLO
TINC
TMPa
UPDA
WAIl<
WAX I
1010110
WRGS
XFUN

SYMBO\.S'
1070
0159
007C
5CD.
5EIO
5.36
5'40
5.3A
SACS
0000
5.FE
SASE
5055
0086
5EA7
0004
SA1F
SBBB
S.3A
0089
00841

scn

00011
SEBE
5017
SCf'O
0083
5EFD
5802
SBII
5DM
5004
SME

ADDW
ATKI
CA\.\.
DECY
DMIN
ECNT
ENTY
ERAT
EXEII
FTAB
GOTO
INWA
\.EN I
\.SET
NOA1
NOAK
NXBT
OIoNG
P\.AY
PROC
SDEII
SIGN
STK2
SUST
TDEC
T\.S1
TMPW
WilDS
WARY
WAXII
WPGr.
WRUS
X\.NG

SE32
SE86
5BSB
S93E
SCB9
0071
5800
504111
SC76
5F111
SE6f'
5AI6
5BA'
5e7t
SB52
5AA8
OOOA
OOOC
SAED
001E
5C50
SESE
0004
S.3C
SCFA
0087
SDDE
5EOE
5DBB
SBID
5.6E
5DE,
5B85

ANEW
ATTK
DONO
DEKA
DNDD
EDEF
ENUC
ESET
EXE3
I'UliC
IIORN
IP\.A
\.ENG
MEAS
NINI
NOCII
NXM5
ONOT
P\.IN
PRTA
SDFG
SNOT
STK3
SUS\.
TEMP
TMEE
TUKE
10121'15
WATI
WDEF
WP\.S
WRY I
XS\.P

5EBI!
5061
5A48
SD4F
SA3f'
5B,'4
0151
SDIC
SBAB
SAil.
0144
5CAf'
SAD6
0070
SCA7
SCF?
0008
OOOB
5A1F
2000
001D
SD6D
0006
5.n
SCE8
5E82
SBE5
5EIS
SADC
5BC6
SEilS
5DBE
5B6C

APDA
BEAT
DECF
DF\.R
DNEC
ENDf
ENUD
ETAB
EXE4
aOBK
INCN
KNOT
\.GNT
MI\.l
NINe
NOTt
OBYT
ORIG
PPNI
RATE
SET!
SRTN
5T1oIS
SVST
TlMG
THEft
TWAU
WADJ
WAVC
Wf'OIl
WPTI
WSET
XST\.

SE'C
0072
007A
5CBE
SED9
0080
0lS6
S8B6
5B58
5B2C
SCAS
SB43
5886
0138
SCAO
5800
5CAA
OOOE
5A83
0078
SD2e
S806
5E3E
S9ED
0161
5E1A
5'42
5B3.
0155
58.6
596A
SE4A
SBA..

ATEC
BEGS
DEC I
DINI
DP\.A
ENDS
ENVX
EWEN
EXEC
GOGO
INTR
KNTt
\.OOP
MU\.W
NINI
NOTE
OENU
OSC\.
PPN2
SAUX
SET2
STAC
SU\.K
SX\.P
TlMS
TMPI
UNSV
WAIT
WAUl)
WMEA
WPT2
WTMP

,

0158
SC34
SEEO
SCCA
SCDE
SC53
0013
SACA
5M'
S910
5A8.
SB43
5E66
SEID
5C.0
SAf'B
0019
5D9D
5A82
0081
5038
SD..A
0075
SC5C
0163
001B
50941
5AE4
015'"
S004
S'6C
SDfB

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 128

NOTES ON MICROCOMPUTER MUSIC
Methodll
Marc Le Brun
Star Route Box 111
Redwood City CA 94062

Introdud/on
In recent years striking results have been obtained through the use of
computers In the production of music. Much of this work has been
conducted In research aettlngs, such as university laboratories, and la
often obtained through extensive utilization of the advanced hardware
and software systems these facilities are able to provide. Indeed It Is
highly unlikely that many of the major achievements In the. computer :nuslc
field would have been accomplisl1ed at all without the high-level support
of these sponsoring institutions and agencies.
Unfortunately, while the· power inherent in these large, expensive,
systems Is probably requisite for research It also tends to areate
difficulties when we wish to apply the results of that research In an
effective, economical, manner. Often new techniques are developed
which work extremely well In the context of a niegasystem but seem
nearly Impossible to Implement on, for Instance, II microcomputer for use In
homes, In schools, or by working musicians.
In the course of my work In this area I have found that It Is In fact
possible to transfer many techniques from the laboratory to the "real"
world, but that to do so usually requires that we expend some effort on
recasting the methods Involved into forms that are appropriate to our
applications. In this paper I will present several points which I believe
bear on the pragmatics of this promising and exciting area and which I
hope will be of use to the growing numbers of microcomputer musicians.

Objectlvell
The computer Is an extremely versatile .Instrument and one of the
significant problems that continually arises In computer music Is how to
deal with that flexibility. Paradoxically, It Is only when we decide which of
the Infinitude of possibilities we will concentrate on, thereby giving up
some freedom of chOice, that we begin to be able to achelve anything at
elr. The question Is, therefore, just what do we want a microcomputer
music system to do for us ?
Certainly there Is no single right answer to this question, in fact It Is to our
advantage If everyone's answer Is somewhat different. There Is a
tremendous ammount of unexplored territory In computer music and the
greater the diversity of approaches the faster those areas will be
developed Into usefulness. It seems though that there are a few clear
objectives, to which each person will then ascribe varying weights.
The first of these of course, is that It sounds good, that Is It should be
capable of producing Interesting, musical quality sounds. This Involves
aesthetic jUdgements, about which there can be only partial agreement. I
believe however that one of the most Important artistic accomplishments
of computer music has been the synthesis of rich, dynamic and evocative
sounds, and It would seem unnecessary and unfortunate to have to forego
such a singularly attractive feature simply because we are working with
smaller systems.
I feel this Is a somewhat Important pcint, In fact It has motivated a good
deal of my reasearches. One of the biggest failings, from II musical
standpOint, of much of electronic music, Is the relative paucity of sounds
employed as compared to those available to the traditional, acoustical
musician. If you listen to the usual square or sawtooth wave. which
pretty much define the palata of timbres available on a cheap analog
synthesizer for any length of time this will be readily apparent. To create
Interesting sounds with the standard analog modules Is an extremely
difficult task. The digital age has· arrived - surely we shOUld take
advantage of all the computer has to offer, rather than self-Imposing past
limitations.

How do we achelve this Impossible dream? .One place to begIn Is with the
actual sound generation and work from there, keeping In mind the various
design objectives. The remainder of this paper will concentrate on digital
synthesis and attendant issues.
The central problem to be solved In many areas of digital synthesis Is how
to attain a given musical or other type of signal within a reasonable cost.
Cost can be measured directly In terms of things like number of chips
needed to Implement a given function in a particular manner, or In terms of
the ammount of time it takes, or Indirectly In terms of constraints on the
signals produced, complexity of the necessary control systems and so on.
Ultimately however all this engineering must pass the acid test • What
does It sound /ll:.tte:ctji;ewaya of,proci~clilg hlOhquality musical louna will grow out.of
'thi.~ w6;~ To date'
have had ollly. very.mall ammount of uperllnoe
with actually' uslrig the.e. methods In the production of mUllo but Inltlel
experlmentl have l!lown them to be quite promlalng, and. we oen exPeot
to .ee them eventually recast In forms appropriate to mlorooompliter
ImpleD1entatlon.

we

John M. Grey
An Exploration of Musical Timbre
DepartPlent of Music Report STAN-M-2
Anon.
Biblical Mathematic.
Dr. Dobbs' Journal of Computer Callsthenlca and Orthodontia v1 n8 8EP
1978
Steve Saunde,.
Improved FM Audio Synthesis Methods for Real-Time Digital MII./o
Generation
Computer Mu.lo JO\lrnal v1 n1 fEB 1977 pp 153-615

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 131

A PIPE ORGAN/MICRO COMPUTER SYSTEM
Jet Raskin

Box511
Brisbane CA 94005

One night I got a call from a man who had been wandering
through the personal computer stores in the area. He was looking for a computer to operate his huge pipe organ. Inevitably
he was given my phone number, since I had been going around to
the same stores telling one and all about how I was working on
a controller for my pipe organ.
There are lots-of gimmicky reasons for wanting to attach a
computer to an organ. The reason that I am interested is that
the combination can provide the performer with a more flexible,
easier to play instrument. And then there are all those gimmicks. As it turns out, using a microcomputer can be less
expensive than conventional console wiring. Before we get
into the sl,lbject too deeply, the "organization" of the king
of instruments should be made clear.
The performer sits at the console. The performer's hands
rest '1m one or more keyboards called manuals. There are
usually from two to foul' manuals. The feet play on a set of
keys placed beneath the bench, the pedals. The console, on
most organs since the late 1800's, is separate from the rest
of the instrument and is connected to it by means of electrical
cables. As with the computer, the console is the "command center" of the instrument. Besides the keyboards there are a
number of other controls on the console that will be discussed
later.
The sounding portion of the organ consists of many pipes.
Each pipe sounds but a single note. There are typically many
different pipes for a given note, each of which has a different
sound quality or timbre. A set of pipes, all of similar timbre, one for each key on a manual, is called a rank. Each rank
has a name, many of which are hallowed by centuries of use.
Some, like Diapason or Bourdon describe sounds that are characteristic of organs and nothing else. Others, such as Trompette
or Blockflote are reminiscent of trumpets and wooden flutes
respectively. Obviously one rank is a minimum for an organ
(renaissance Portative organs had one rank). A small organ
usually has three or four ranks, controlled from two manuals.
The one being installed in my house has 26 ranks. A large
organ will have seventy or more. The organ owned by my friend
mentioned above has 140 ranks. That is very large, and only a
few cathedrals have more.
The complexity of a pipe organ will now become apparent.
Each rank has 61 pipes, as there are 61 notes on a manual.
Thus for a pipe organ of a hundred ranks there are six thousand
one hundred pipes. Each rank is turned off or on by a knob or
switch labelled with the rank's name. These knobs are called
stops (the terms stop and rank are sometimes used interchangeably, but in this discussion rank will refer to a set of pipes,
and stop to the controlling knob.)
A large organ often has four manuals (names Great, Swell,
Choir and Echo or Positiv) each having 61 keys, a 32 note
pedal board , and, say, 100 stop knobs, and a few dozen assorted
controls. Thus there are about SOD controls that the organist
must manipulate.
And now we come to the microcomputer. It must keep constant
watch,on 500 switches. and control some six thousand relays one for each pipe. It must never miss a switch closure or
release, and must operate the correct pipes - sometimes dozens
simultaneously - within a 20th of a second. Is this within the
capabilities of an 8080? As it happens, it is. But not without a bit of tricky I/O design, and some swift algorithms.
For completeness, it should be mentioned that some ranks are
not exactly 61 notes. "Unified" ranks often have 75 pipes, and
some special ranks have fewer than 61. But fortunately these
exceptions are easily handled. The problem is simplified in
some organs (a little) by sets of ranks grouped into "straight"
chests where instead of each pipe having its own electrically
operated valve (a "unit" chest), each rank in the chest has a
valve. Then all notes of the same name (such as all C's or all
r sharp's) have one valve. This loses some 'generality, but
requires fewer valves and electrical connections. For M ranks
of N notes each a "straight" chest requires M+N valves. A
"unit" chest has M*N valves.
'
Organs also traditionally have couplers, which operate
either within a keyboard, or between keyboards. An intermanual
coupler has the effect of operating a note on one manual when
you press a corresponding note on another. (On some old organs
both keys actually move when you press one of them. This may

have given rise to "phantom of the opera" stories.) A coupler
that works within a keyboard plays a note typically an octave
higher or lower than the one you are playing - but on the same
keyboard. Intervals other than an octave also are available on
some organs.
An organ is also separated into divisions. These have the
same names as the manuals, typically Great, Swell, Choir, Echo
and Positiv. The pipes played by the pedals form another div1S10n: the pedal division. Each rank belongs to exactly one
division. In the traditional organ a manual could only play
pipes in its division. You could couple manuals together, but
it was impossible to playa rank in the Swell division from the
Great manual without playing all stops that were pulled in the
Swell division from the Great-manual. This separation into
divisions has no musical benefits, it was done merely to simplify the construction of the switching in the console. The
microcomputer can be used to obliterate the concept of division, thus giving more freedom to the organist who can then
assign any rank to any keyboard independently. This is the
first of a number of non-gimmick improvements that can be
appreciated by any organist.
The switching in the traditional organ is done by the most
incredible collection of electrical, mechanical and pneumatic
switches imaginable. That it works at all, being made mostly
of slats of wood and strips of leather with silver wires for
contacts, seems dubious. It is not suprising that not every
conceivable freedom in interconnection has been permitted the
organist in the past.
The wiring from the console to the pipes over distances
from 10 to over 100 feet reminds one of a cross between the
innards of a computer before the mother-board was invented and
a telephone company switching office. Another major advantage
of the computerized organ is the elimination of most of this
wiring. In a very large organ the cost of the computer system
may be less than the cost of the cabling alone.
,
When an organist plays a piece, the piece (or each section
of the piece) has a characteristic sound quality produced by a
judiciously selected set of stops being activated. A particular collection of stops is called a registration. It is
usually desirable to be able to store such combinations.
There are a number of buttons called pistons which recall combinations of stops. Logically enough these collections of
stops are called combinations or presets. There are often a
few fixed presets, and a number of pistons are provided whose
registration the organist can change at will. Another advantage of the computer controlled organ is that many more presets
will be available. Four kilobytes of memory can store hundreds
of different presets, more than on any conventional organ.
Four kilobytes of memory costs less than one preset done mecha&
ically! And it's a lot easier to install-.-Consider what happens when a single key is pressed. First,
any keys that are coupled to it are also activated on its keyboard as well as on other keyboards. For each of those resultant keys as well as the original key, the applicable stops
must be looked up. If there are two couplers and four stops
activated for each of the three keyboards involved then no
less than 12 pipes must sound. When playing a full chord with
many couplers and stops engaged it is not uncommon for 500
pipes to be operated simultaneously.
A number of schemes were concocted for driving the pipes and
reading the keys. One scheme, which has been used on smaller
organs for computer control, is to have each key send out a
unique code. Each pipe recognizes its own address. The computer receives key-codes as well as stop and coupler codes and
computes the appropriate pipe addresses. A decoder at ea.ch
pipe as wen as a diode matrix or other encoder for the console
is required. Since on a large organ there are over two to the
twelfth pipes, even a l2-bit code would not be long enough.
This would mean assembling two 8-bit words for each p1pe. Putting out over SOD of these in a 30th of a second, considering
the number of steps required in the program, was impossible.
Furthermore, the cost for the decoders at each pipe was prohibitive. This ruled out going to a l6-bit computer, since it
wo~l9n't help the decoder problem, and a larger word size
seemlld to hold few advantages in any other way.
Cost alone ruled out the brute-force approach of just using
a very fast computer. Another way to get high data rates from
a micro was to use direct memory access (DMA) circuitry. With

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA94302

this scheme one DMA device would be scanning the keyboard continuously and putting key depressions and releases in memory.
The main processor would, at its own rate, scan the keyboard
image in memory and construct a list of pipes to be played or
quieted. Another DMA would scan the list of pipes and control
the pipes accordingly. In essence, there would be three computers sharing the same memory. They would run asynchronously,
each going as fast as conditions allowed. This seemed feasibl~
and a DMA design effort was started - and promptly stopped when
a far simpler solution was discovered.
Part of the solution was in hardware. At one extreme of
decoding (as explained above) each pipe has its own decoder.
It would be more efficient for each group of, say, eight pipes
to have a decoder which detects its code, and then accepts the
next byte as controlling eight pipes in parallel. The eight
bit control byte 10001001 might mean to play the notes C, E,
and G while leaving CN, D, DR, ,F and FH silent. This reduces
the number of decoders by a factor of eight, and then operates
eight pipes at a time. This was fast enough in the I/O department, but the time required to assemble the control bytes by
masking or rotation was too great. A micro handles bytes like
crazy, but manipulating individual bits inside them is not
nearly as fast. A number of algorithmns were considered, but
it was apparent that they weren't even in the ball park.
At the other extreme from a decoder for each pipe is the
idea of having no decoders whatever. This idea was put forward
early in the design effort, but was discarded as rediculous.
In the end it became clear that the idea was not only feasible,
but fast and cheap to implement in hardware. It also made the
software much easier to design. It works like this: A very
long serial-in/parallel-out shift register is made. It will
have at least one output for each pipe. Using available 8-bit
shift registers the 140 rank organ's 2000 electrically operated
valves require about 250 shift registers. (The 7000 pipes require only 2000 controlling lines since most of them are on
straight chest~) In effect we build a 2000+ bit'shift register - sort ,of a long skinny tube through which ones and zeros
flow in single file. When all the ones and zeros (standing for
pipes sounding or silent) reach their correct positions a command (strobe) is sent operating all the ~ at once. If the
process is to take 1/30th of a secona;-tne-sniftreg[ster has
to move 2000 bits in that time. But this is a rate of only
60000 bits per second (60KHz) which is within the capabilities
of both the shift registers and the computer. Remember that
these calculations are for a mammoth size organ. Most organs
are significantly smaller and the problems are correspondingly
easier.
A similar approach is used for the keyboards. There exists
a 33 input parallel to serial converter made for electronic
organs. Just two of these IC's would suffice to encode an
entire manual. The 500 controls could be transmitted serially
to the computer in 1/200th of a second at 100 KHz. The interface would require fewer than 20 "critters". Again, this is
for a huge organ. My own horne organ would require only 10
chips for its console.
The hardware can now be summarized. A SOO bit parallel-toserial converter for input, a 2000 bit serial to parallel converter for output, one input port and one output port are
required. Each pipe also needs a power transistor to handle
the .5 amps at 14 volts required by the valves (this i& a typical figure). Some of the larger pipes might require two stages
or a darlington power transistor, but there is no real difficulty in the design. Another side benefit accrues at this
point: Many pipe organs use electro-pneumatic valves for each
large pipe. This is because an all-electric valve opens too
suddenly. To solve the problem the traditional builders had
the electrical valve let air into a small bellows that in turn
operates the valve that lets air into the pipe. A pair of R-C
networks and a diode in the base circuit of the power amplifier
'for each pipe can give the desired slow attack and release
usually obtained by the much more expensive and problematical
pneumatic system. This can amount to savings of over $1000 in
a large organ. It should be mentioned that some organ manufacturers have been successful in,making satisfactory all-electric
valves with appropriate attack and decay curves. They would
not require the R-C networks.
Software design was as gradual as the hardware design.
There were two breakthroughs necessary before i,t was clear that
the 8080 could work quickly enough. When the design was being
done, by 'the way, the Z-80 and other faster processors were
not in production. But the constraints of the 8080 and the
very large organ forced a much tighter and cleverer design than
would have been developed had we had more powerful computers
and a smaller organ. Given the newer computers, of course,
larger and more complex pieces of equipment can be controlled.
,Many industrIal plants have fewer than SOO sensors and 2000
elements that need to be operated in real time. A microcom-

PAGE 132

puter using the techniques outlined here could handle theD!.
The program begins by sweeping in the console settings. To
save time only ~ bit ~ word is used. This wastes 7/8ths of
SOO words, but memory is cheap. The same triCk will be used in
output, eliminating the necessity to pack bits into bytes.
Thus over 2K bytes will be sacrificed to gain speed. There
goes all of $40 in memory costs. It buys us at least a factor
of 5 in speed. It is worth it. While it now seems obvious
that this is the way to proceed, it somehow took'4 months to
find the solution. This is probably because we are so used to
trying not to waste memory. A pipe organ costs from $20,000 to
whatever you care to spend (a million dollars in not unusual),
The computer costs are lost in the small change. --The input and output loops are very simple. Point to a
memory location. Do an input (or output). Move the contents
of the accumulator to that location. Increment the location.
Check for done. If not done do an input (or 'output). And so
on. The loop can be done on an 8080A at 66KHz. Thus theen-'
tire organ can be updated in 0.03 second. The worst we could
live with would be 0.05 second. The 8080 with a 2MHz clock is
just fast enough. An 8085 or Z-80 CPU would be plenty fast.
Again remember that for a reasonable size organ the plain old
8080 would be more than fast enough, and that we are discussing
a worst case design. Any Poly-88 or ALTAIR or IMSAI or SOL
computer could easily handle most pipe organs.
Even with I/O solved there still remains,the problem of,
deciding which pipes are to go on and which to go off. At
first this was a stumbling block in terms of the time it woul,d
take to do the computations. On each console scan, it seemed,
a table of couplers would have to be made up, as well as a
table of stops. A key depression, through the couplers,
results in a number of "virtual" key depressions. Since some
virtual keys, being higher or lower on the keyboard than the
original key, will go off the end of a keyboard, they must be
deleted from the virtual key list. The remaining keys have
then ,to be processed through the stop list to determine which
pipes are to be played. Since the input routines take a total
of about 0.037 seconds the processing must take less than .013
seconds. Just the checking for out-of-range virtual keys
would take longer than this.
The easiest solution to the coupler spill-over problem is to
include a few extra places in the shift register on both ends
of each rank. This allows all the ranks to have the same shift
register length whatever the actual number of pipes. The first
advantage is that out-of-range virtual key depressions need not
be checked for since they fall into unused sections of the
shift register. As with the wasted memory, the cost of the
unused shift registers is small. The second advantage is that
the electronics for every rank, of whatever kind, can be massproduced. This makes it less expensive to build - as well as
making the software easier to write (aside from merely being
faster) .
Aside from satisfying traditional organists, there is no
reason to have intermanual couplers on a computer-controlled
pipe organ. The original reason for including intermanual
couplers was to minimize the limitations imposed by the separation of the pipes into divisions. The computer, by being able
to assign any rank to any manual (or the pedals) eliminates
entirely the need for these couplers, as has ,been pointed out.
The presence of intermanual couplers is retained mainly as a'
sop to traditional organists. It might well be eliminated in
my own organ.
Another choice to be made is whether, to recalculate all the'
pipes to be played, or to just modify the previous state on
each cycle. It was decided to recalculate from scratch each
time to eliminate the possibility of cumulative error. It also
means that keybOllnce is automatically taken care of. In the
slight time between updates an organ pipe cannot even,begin to
sound. A spurious signal for one cycle is effectively ignored.
Continuous pipe-on instructions emitted over a periOd of something like .1 second or more are required before the slow mechanical valves can react. The higher pitched pipes re'spond
quickly, incidentally, and the low pipes sometimes take nearly
a 'second to begin playing. Organists learn to compensate by
playing low notes somewhat early. Without introducing a constant across-the-board delay it does not seem possible to have
the computer compensate for the effect, but it is a place where
some experimentation might be interesting. Experienced organists, of course, might look askance at such an innovation, bu,t
they needn't be told about all our ideas.
To summarize: A cycle of1the computer-organ system starts
by pulling in the state of the console. The second part of the
cycle (yet to be described) calculates the pipes that should be
plaYIng given the state of the console. The third"portion of
the cycle sends the pipe commands along the shift register.
The process is repeated at least once every 30th of a second.
A coupler (of whatever kind) is merely a displacement, which

FIRST COMPUTER FAIRE PROCEEDINGS

is easily calculated since a11 keyboards and ranks are the same
nominal length. Likewise engaging a stop is also a displacement of a distance equal to the difference between the bottom
of the manual's image in memory to the bottom of the rank's
image in memory. Thus these displacements or offsets can be
simply added to yield the offset for a combined coupler/stop
setting-.-An example, with a simplified organ, will demonstrate how
the algorithm operates. Say there is one manual with 10 keys
numbered 1 through 10. They are read into memory locations
(all numbers will be in base 10 for this discussion) 1001
through 1010. The ranks each have 10 pipes, and there are two
of them. The first rank is stored in locations 2001 through
2030. The second rank is stored in locations 3001 through
3030. Remember that the area set aside for each rank is larger
(here three times as large) as the actual space necessary.
There are two stop switches, stored in lqcations 4001 and 4002.
There are two couplers. They are stored in 4003 and 4004. The
first couples up five pipes high, the second down three pipes
low.
When the low order bit in 4001 is on (or, as they say, high)
the program adds 2010 to the key address to get the pipe address. When the other stop is on 3010 is added. If the first
coupler is on an additional 5 is added, the second coupler subtracts 3 (or adds a negative three - it is all the same thing).
The addition is done but once. Say the first stop and the
second coupler were operated, then given a key on at location
1005, to get the proper location to turn the pipe on merely add
(2010-3) or 2007 to the key location (1005+2007)=3012. Indeed
this is the correct pipe.
This brings up another possible freedom given by use of a
microcomputer. When a stop and a coupler are operated, one
gets both the note given by the stop and the extra note given
by the coupler. With a computer it would be possible to give
just the note given by the coupler acting on that stop. Since
each stop could have a whole panoply of couplers attached to
it, the number of buttons would soon become unworkable. For
complete flexibility the organist would have to be provided
with a keyboard and display. One would play the organ by seting up many required presets, with whatever degree of flexibility required, and then the easily hit tabs would not activate stops, but would bring in the organist's choice of registrations.
In the example above choosing both stops and both couplers
would result in having to add six numbers to each key location
to obtain the pipe location. In the actual implementation the
program would, for each manual, do the following:
1. Scan the list of stops, and make a table of addends.
2. Scan the couplers, and add them to each stop, extending
the list of addends.
3. Add the addends to the locations of that manual that
contain a 1 (meaning a key depression).
4. Turn on the low-order bit in the indicated word in the
pipe image.
Inter-manual couplings look just like any other kind of
coupling. Say that one manual is stored in 1001 through 1010,
and another manual at 1201 through 1210. The coupling the
first manual to the second manual merely means adding 200 to
the locations of the first manual. Just which inter-manual
couplers will be allowed'must be carefully specified. If anything is allowed we get the following cat-chasing-its-tail
effect: Manual 1 is coupled to manual 2 at the same pitch.
Manual 2 is coupled to manual lone key higher (a "half step"
higher in musical terminology). Press "C" on manual 1. "c"
gets played on manual 2. This forces "C#" on manual 1. But
this makes "C#" play on manual 2 .... Every key is thus being
played. As hinted at above, intermanual couplings are only
necessary on organs where the pipes are separated into divisions. In the computer controlled pipe organ they can and
should be eliminated. Everything they can do, and more, can be
done by freely assigning ranks to keyboards as desired.
I am not sure that all organists will be convinced by this.
The organ console of the future, as it appears in the light
of the computer mediated organ, looks like this: The manuals
and pedals are built to the usual AGO (American Guild of
Organists) standards.. These standards are excellent, and
permit an organist to travel from one instrument to another
with a minimum of relearning. Instead of the usual arrangement
of stops, there are as many rows of stops as there are keyboards. When a stop is to be assigned to a given keyboard, the
button in the.row representing that keyboard, and in the column
representing. that stop, is pressed. Done. Any particular
registration amy be captured by pressing the "capture" button
and while ho~ding it operating the chosen preset button. The
stop buttons shouid, as on conventional organs, move (or light
up) to show what choices have been made. This is not far from
conventional practice.

BOX 1579, PALO ALTO CA 94302

PAGE 133

The possibilities in a console screen, with alphabetic readout, are endless, and would require another paper this length
to explore. Similarly the gimmicks - from very useful ones
that record (on a disc or cassette) the performance in terms of
keystrokes - to silly ones (for example connecting the doorbell
to the computer, so that the organ plays "Jesu, Joy of Man's
Desiring" when a visitor unwittingly presses the door button)
again would take up too much space for this paper.
The reasons, in short, for using a computer in a pipe organ
are these:
1. Simplification of the wiring of the organ.
2. Greater reliability than conventional switching.
3. Lowered expense in medium and large instruments.
4. Much greater control of the instrument by the performer.·
5. New freedoms in choosing registrations.
Nothing, it would seem, is lost by going to a microcomputer,
and one could keep advantages 1, 2, and 3 above while keeping
the appearance and operation of the pipe organ unchanged, in
case some organist were so hidebound as to not want advantages
4 and 5.
Acknowledgements: Certainly at least half of the ideas expressed in this paper are due to ~y friend and colleague, Doug
Wyatt. All of the ideas were developed in collaboration with
him. Thanks are also due to Jim Brennan, who owns the incredibly large organ so often mentioned in this article, and whose
co-operation and inspiration have been essential to the project

BOX 1579, PALO ALTO CA 94302

FIRST COMPUTER FAIRE PROCEEDINGS

PAGE 134

A COMPUTER CONTROLLED AUDIO GENERATOR
Thoma. E. Olsen
2500 Medallion Drive, No. 57
Union City CA 94587

ABSTRACT
THIS PAPER SHOWS ONE APPROACH TO BUILDING A PIECE OF HARDWARE
WHICH ENABLES A COMPUTER TO PRODUCE SOUNDS THROUGH A LOUDSPEAKER.
THE DEVICE DESCRIBED ENABLES TWO PARAMETERS TO BE DYNAMICALLY
CONTROLLED BY THE COMPUTER: PITCH (FREQUENCY) AND AMPLITUDE
(LOUDNESS).
THE PAPER DISCUSSES THE GENERAL ARCH ITECTURE OF
THE DEVICE, BUT DOES NOT GIVE ANY CIRCUIT DIAGRAMS SINCE
EVERY HOBBYIST WILL PROBABLY WANT TO DESIGN IN HIS OWN OPTIONS.
SPECIFIC KEY INTEGRATED CIRCUITS ARE DISCUSSED AND RECOMMENDED
FOR THIS APPLICATION.
DATA SHEETS ARE INCLUDED.
POSSIBLE
ENHANCEMENTS TO THI,S DEVICE ARE ALSO DISCUSSED .

. INTRODUCTI ON

A SOUND GENERATOR IS A VERY USEFUL DEVICE TO HAVE CONNECTED TO
YOUR COMPUTER.
FOR MUSICIANS WHO HAVE DABBLED IN ELECTRONIC
MUSIC, THE UNLIMITED POSSIBILITIES ARE OBVIOUS.
FOR THE REST
OF US, JUST BEING ABLE TO MAKE WEIRD NOISES IS OFTEN JUST AS
EXCITING.
STAR TREK WITH SOUND EFFECTS IS ONE OF MY FAVORITE
APPLICATIONS BECAUSE IT ADDS A GREAT DEAL OF REALISM TO THE
GAME.
ANOTHER IMPORTANT REASON FOR ADDING SOUND TO YOUR SYSTEM
IS THAT IT ENABLES THE LAY PERSON TO QUICKLEY APPRECIATE WHAT
YOUR COMPUTER CAN DO. ANYBODY CAN UNDERSTAND "MUSIC" JUST BY
HEARING IT.
UNDERSTANDING SOME CRYPTIC PRINTOUT IS OFTEN QUITE
ANOTHER STORY.
FINALLY, GENERATING COMPUTER MUSIC IS A GREAT
WAY TO DRIVE YOUR NEIGHBORS CRAZY.

WHAT IT IS

THE COMPUTER CONTROLLED AUDIO GENERATOR IS A DEVICE WHICH YOUR
/If>!,oaTCltJE COI'ITl?Ol. C..l,flCClIT/?Y
/)/IC

FUNCTION
. Gc#€J(p.rOl?

LO(IJ)SPE/1kEI?

A::JWER
P.NPI.IFIEi?

INT€I(,c/lCE
-f'
CONTI?OI..

"'Vr---i

[)

OIfC
ComPUTE!?

P./TCIi' CO,vT,fOL.C..lI?CClITI?Y

,oA'OG.fA'A'88L£

#,/tJ/O

(TEl/.

!3IOCK t)/,«;,R/i/'9
TNOP')I1S E.

OlSGN

2-23-77

I

I

COMPUTER OUTPUTS DATA TO. THE DATA THEN CONTROLS THE AMPLITUDE
AND FREQUENCY OF A WAVEFORM PRODUCED BY A VOLTAGE CONTROLLED
OSCILLATOR. THIS WAVEFORM IS THEN CONNECTED TO YOUR STEREO
SYSTEM SO THAT YOU CAN HEAR AND/OR TAPE RECORD IT.

HOW IT WORKS

REFER TO THE BLOCK DIAGRAM THROUGHOUT THIS DISCUSSION.
THE COMPUTER OUTPUTS DATA TO ONE OF TWO OUTPUT PORTS. ONE PORT
IS USED TO CONTROL THE FREQUENCY OF THE TONE PRODUCED, WHILE THE
OTHER PORT IS USED TO CONTROL THE AMPLITUDE OF THE TONE.
THE
DATA PATH IS 8 BITS (1 BYTE) WIDE.
THIS MEANS THAT UP TO
256 DIFFERENT PITCHES AND AMPLITUDES ARE SELECTABLE BY THE
COMPUTER.
THERE IS NO INHERENT REASON WHY THE DATA PATH COULD
HOT BE WIDER AND THUS PRODUCE BETTER RESOLUTION. THE MAIN
·PROBLEM IS THAT THE DIGITAL TO ANALOG CONVERTERS START GETTING
A BIT MORE EXPENSIVE· WHEN THEY ARE WIDER THAN 8 BITS.
THE BLOCK LABELED INTERFACE AND CONTROL MUST PERFORM SEVERAL
FUNCTIONS.
IT MUST BUFFER THE DATA BUS WITH SOME TYPE OF
BUS RECEIVERS, AND IT MUST BE ABLE TO DECODE WHEN A BYTE IS
BEING SENT OUT TO IT. AT THIS TIME, IT PRODUCES THE CLOCK
SIGNALS THAT LATCH THE DATA BYTES INTO THE APPROPRIATE
REGISTERS.
THE TOP REGISTER OR LATCH IS USED TO HOLD THE AMPLITUDE CONTROL
BYTE. THE BOTTOM REGISTER HOLDS THE FREQUENCY CONTROL BYTE.
THE OUTPUTS OF THESE REGISTERS FEED THE DIGITAL TO ANALOG
CONVERTERS (DAC). THE DAC'S PRODUCE A CURRENt WHICH IS DIRECTLY
PROPORTIONAL TO THE MAGNITUDE OF THE BYTE AT THEIR INPUTS.
THESE CURRENTS ARE THEN FED INTO OPERATIONAL AMPLIFIER NETWORKS
WHICH ARE RESPONSIBLE FOR CONVERTING THE CURRENT TO A VOLTAGE,
AND SCALING THAT VOLTAGE SO THAT THE DESIRED VOLTAGE SWEEP
RESULTS WHEN ALL POSSIBLE BYTES ARE OUTPUT TO THE PORT.
DESIGNING THIS NETWORK SO THAT IT WORKS PROPERLY WITH THE
FUNCTION GENERATOR IS THE MOST DIFFICULT PART OF THE DESIGN.
IT WILL BE NECESSARY TO KNOW HOW TO DESIGN WITH OPERATIONAL
. AMPLIFIERS IN ORDER TO SUCCESSFULLY IMPLEMENT IT.
THE PROPERLY SCALED AMPLITUDE AND FREQUENCY CONTROL VOLTAGES
ARE APPLIED TO THE FUNCTION GENERATOR INTEGRATED CIRCUIT.
THIS DEVICE THEN PRODUCES THE WAVEFORM ~HICH IS THEN AMPLIFIED
AND HEARD. THE WAVEFORM CAN BE SELECTED AS EITHER SINE,
TRIANGLE, OR SQUARE WAVE.
DESIGN DETAILS

EVERYTHING UP TO THE CIGITAL TO ANALOG CONVERTERS IS PROBABLY
A PIECE OF .CAKE TO MOST COMPUTER HOBBYISTS WHO WOULD
UNDERTAKE·THISKIND OF PROJECT. ACCORDINGLY, I WILL NOT DISCUSS
THESE SECTIONS.
THE DIGITAL TO ANALOG CONVERTER WHICH IS THE LEAST EXPENSIVE
AND EASIEST TO.OBTAIN IS PROBABLY THE MC140S.
THE DATA SHEET
SHOWS BASICALLY HOW TO CONNECT IT. THE INPUTS ARE TTL COMPATIBLE

AND THE SINGLE OUTPUT IS A CURRENT.
THE MAGNITUDE OF THIS
CURRENT CAN BE CONTROLLED THROUGH THE PROGRAM RESISTOR. BE
SURE TO OBSERVE THE DIRECTION OF THIS CURRENT WHEN DECIDING
HOW TO CONNECT IT TO YOUR OP-AMPS.
BEFORE DESIGNING THE AMPLIFIER/SCALER SECTION OF YOUR AUDIO
GENERATOR, YOU NEED TO KNOW WHAT CONTROL VOLTAGE RANGES YOU
WILL NEED TO SUPPLY TO THE FUNCTION GENERATOR CHIPS TO PRODUCE
THE DESIRED RESULT. THE BEST IDEA ·IS TO PLAY WITH THE FUNCTION
GENERATOR BY ITSELF FOR A WHILE BEFORE CONNECTING IT TO THE
REST OF THE SYSTEM. CONNECT TWO POTS, AS VOLTAGE DIVIDERS, TO THE
VOL TAGE CONTROL INPUTS OF TH.E FUNCTION GENERATOR AND BASED ON THE
DATA SHEET, CHOOSE AN RAND C THAT WILL PUT YOU IN THE BALL PARK
FREQUENCY-WISE. YOU WILL HAVE TO DECIDE WHAT DYNAMIC RANGE YOU WILL
WANT FOR YOUR AUDIO GENERATOR. MINE CAN BE SWEPT FROM 3 HZ TO
ABOUT 10 KHZ. BY THE TIME YOU ARE DONE PLAYING WITH THE FUNCTION
GENERATOR, YOU SHOULD HAYE CHOSEN A GOOD VALUE FOR THE RAND C
AND YOU SHOULD KNOW WHAT VOLTAGE RANGE YOU WILL NEED TO SWEEP
THE AM AND FM INPUTS OVER IN ORDER TO OBTAIN THE EFFECT YOU
DESIRE. THESE VOLTAGE RANGES SHOULD BE SOMETHING LIKE. 5 VOLTS
TO 12 VOLTS IF YOU USE THE EXAR CHIP. TRY TO AVOID RESORTING
TO VOLTAGE RANGES WHICH CROSS THROUGH ZERO.
THERE ARE TWO
FUNCTION GENERATORS WHICH I HAVE TRIED FOR THIS APPLICATION.
ONE IS THE INTERSIL S03S AND THE OTHER IS THE EXAR XR-2206.
BOTH OF THESE ARE READILY AVAILABLE (JAMES ELECTRONICS).
I
FOUND THE EXAR CHIP INFINATELY SUPERIOR AND EASIER TO DESIGN
WITH FOR THIS PARTICULAR APPLICATION. ALSO, THE EXAR CHIP HAS AN
AMPLITUDE MODULATION INPUT ALREADY THERE. YOU HAVE TO PLAY
GAMES WITH THE 8030 CHIP TO ACHIEVE AMPLITUDE MODULATION.
REMEMBER THAT YOU ONLY GET 256 FREQUENCY ·STEPS IF YOU ARE
USING AN 8 BIT DAC. THUS, IF YOU WANJED TO BE ABLE TO SWEEP
THE AUDIO SPECTRUM FROM 100 HZ TO 10 KHZ, YOUR RESOLUTION
WOULD BE:
(10,000 - 100)/256
38 HZ
IF THIS IS NOT ACCEPTABLE, YOU WILL HAVE TO USE EITHER A WIDER
DAC, OR SEVERAL 8 BIT DACS WITH THEIR OUTPUTS SUMMED BY THE
OP-AMP NETWORK.
THE FUNCTION GENERATOR GIVES YOU THE OPTION OF SELECTING THE SINE,
TRIANGLE. OR SQUARE WAVE OUTPUTS. THE ADVANTAGE TO USING TRIANGLE OR SQUARE IS THAT YOU GET HARMONICS WHICH ARE NOT FOUND
IN THE SINE WAVE.
THE OUTPUT OF THE GENERATOR SHOULD BE
CAPACITIVELY COUPLED TO YOUR AUDIO AMPLIFIER IF THERE IS A
NON-ZERO AVERAGE DC VOLTAGE IN THE OUTPUT.

"

~

iC!
-4

m

:II

~
im
"V

g
m
m

o

Z

.C')

en

.~

.~

~

6
ONE ADVRNTRGE OF THE XR-2206 IS THAT IT HAS AN FSK INPUT. THIS
COULD BE USED TO IMPROVE YOUR RESOLUTION WITHOUT REQUIRING
A WIDER DAC.
THE FSK INPUT ENABLES YOU TO PROGRAMMABLY SELECT
EITHER OF TWO DIFFERENT TIMING RESISTORS.
YOU COULD USE ONE
RESISTOR FOR THE RANGE 0 HZ TO 5 KHZ, AND THE OTHER FOR THE
RANGE 5 KHZ TO 10 KHZ. THIS WOULD THEN IMPROVE YOUR RESOLUTION
BY A FACTOR OF TWO.

»
,...

d
~

!
~m

iii

PROGRAMMING THE THING
THERE ARE AN INFINITE NUMBER OF WAYS TO PROGRAM THIS DEVICE. A
GOOD COMBINATION OF EXPERIMENTATION, IMAGINATION, AND PATIENCE
WILL CERTAINLV VIELD SOME VERY INTERESTING AUDIO EF-FECTS.
OF VITAL IMPORTANCE IS A GOOD MONITOR PROGRAM THAT LETS YOU
DVNAMICALLV AND RAPIDLV CHANGE PARAMETERS.
THE SYSTEM THAT
I USE TO WRITE MUSIC IS SIMILAR TO "FORTH" AND IS EXTREMELV
POWERFUL FOR THIS TVPE OF APPLICATION.
ONE THING TO KEEP IN MIND IS THAT THE COMPUTER IS MUCH FASTER
THAN AUDIO WAVEFORMS.
THIS ENABLES YOU TO RAPIDLV CHANGE OR
SWEEP BOTH THE PITCH AND AMPLITUDE CONTROL VOLTAGES AND THUS
PRODUCE A VARlET.,. OF INTERESTING EFFECTS. REMEMBER, THE
AMPLITUDE CONTROL PART OF THE CIRCUIT IS NOT INTENDED TO REPLACE
THE VOLUME CONTROL ON YOUR STEREO!!! IT IS USED TO GENERATE
THE DESIRED ENVELOPE OF A TONE BURST AND IT IS VARIED OFTEN,
NOT ONL.,. WHEN THE NEIGHBORS START BANGING ON THE WALLS.

POSSIBLE ENHANCEMENTS

."

!
iC!
-t

m

::II

~

::II

m

"II

::II

~
o

m

m

Z

Q

o

~

~
THE CONCEPT OF USING A CONTROL VOLTAGE TO CONTROL AUDIO EQUIPMENT
IS NOT NEW.
IN FACT, THIS IS HOW THE MOOG, ARP, AND BUCLA SVNTHESIZERS WORK.
THE COMPUTER BEING ABLE TO RAPIDLV AND REPEATABLV
CONTROL THESE VOLTAGES IS .WHAT IS RELATIVELV NEW.
ONE POSSIBLE ENHANCEMENT WOULD BE TO PUT A VOLTAGE CONTROLLED
FILTER (ASSUMING YOU KNOW HOW TO DESIGN ONE) IN SERIES WITH
THE SQUARE WAVE OUTPUT OF THE FUNCTION GENERATOR AND THE INPUT
TO THE POWER AMPLIFIER. A THIRD CONTROL VOLTAGE COULD THEN
BE OBTAINED FROM A THIRD PORT TO CONTROL THE PARAMETERS OF THE
FILTE~

ANOTHER IDEA WOULD BE TO BUILD SEVERAL AUDIO GENERATORS SO THAT
CHORDS COULD BE PLAVED.

~

6
:I>
r

a

g

I
~-

I;m
....
~

CONCLUSION

IF YOU BUILD THIS DEVICE, 1 THINK YOU WILL FIND, AS I DID, THAT
THE POSSIBILITIES ~RE MIND BOGGLING. MAKING THE DEVICE WORK IS
TRIYIAL COMPARED TO THE TASK-OF PROGRAMMING IT TO PRODUCE PLEASING
"I'IUSIC".
IF ONLY I WERE BOT.. A MUSICIAN AND AN E. E. !!!!

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 137

DIALNET AND HOME COMPUTERS
John McCarthy & Les Earnest
Artificial Intelligence Laboratory
Computer Science Department
Stanford University
Stanford CA 94305

1. The Dillnel Concepl

The system looks up Organlk in Smith's correspondent file and discovers that his
computer pseudonym is ·NA T· at a computer called UTEX-CHEM I that Is

Di/J/ntt will be a set of protocols like the ARPAnet protocols that wll1 enable an reached at 512 471-3221 via a 1200/150 baud asychronous modem. It selects an
on-line computer user to send messages to users of other computers, to transmit files
between his own and other computers. and to use other time-shared computers
directly - an using the facilities of the ordinary dial-up telephone network. His
computer will need a suitable modem and must Implement the Dlalnet protocols In
Its operating system. The Stanford University Artificial Inte11lgence Laboratory
plans to undertake an eighteen month study Ind experimental Implementation of
the protocols. with support expected from the National SCIence Foundation. While
we expect the main users of Dldlnll to be time-sharing systems. we hope the
protocols will be Implementable by single user computer systems down to the level.
If It proves possible, or hobbyist computers. We call the system Dlalnet by analogy
with ARPAnet, but unlike the ARPAnet, It reqUires no administrator to "admit"
new members; they need only know each other's telephone numbers.
The ARPAnet connects several hundred computer facilities Involved In Defense
Department supported research and allows users or one system 10 log In on others.
allows transmission of messages between user. of different computers. and anows
Ihe Iransfer or files between computers. More generany, It anows Interaction among
programs In different computers.
These facilities have proven valuable In permitting collaboration between computer
scientists at different sites and In permitting nationwide access to unique facilities
such as the MACSYMA system for computing with algebraic and analytic
expreSSions at M.I.T. It permits a new form of publication In which documents are
kept In the computer, are continuously updatable. are Immediately accessible
throughout Ihe country. and In which comments from readers Ire accessible to
other readers.

outgOing line with a matching modem. dials the number and attempts to transmit
the message. If the transmitting computer cannot elicit a response from the deSired
reCipient. it informs the user that it will try again later and send him a message
when the transmission has succeeded. If the user's correspondent file did not
contain the telepone number and modem characteristics. the user would have to
supply them.
The identity and location of the sender and date and time of the message are
automatically placed at the front of the message. At the receiving end, if the
addressee is logged in on the computer. he Is immediately informed that mall has
arrived and from whom. If not logged in. he will receive the message the next time
he logs In. In either case, he can use the same facility to respond:
mail Smith
David Piranha (DAVE'UTEX-CHEH3) has a student working on
inhibition by anions of anhydrase B_
Following up on this lead. the user types
link dave'utex-chem3
A connection is made to the speCified computer and. if DAVE is logged in. he
immediately receives a message saying
** link request from Smith ~SU-CHEH7 ••
He could then type ·1 ink· and have his keyboard and display effectively linked to
those of the caller. permitting a conversation.
Let us suppose, however. that DA V E is not logged In and the caller Is so informed.
He then types
locate dave@utex-chem3
which obtains the following information from the specified computer:
David Piranha last logged out at 23:47 on 9 Hay 1976. Plan: I
will be out of touch Hay 10 through 16. I plan to visit Hartin
Shumway at the University of Utah on Hay 17 and should return by
Hay 18. Will check mail from Utah.

The usefulness of the ARPAnet has prompted many non-defense installations to
try to connect to it. and in some cases this has been pOSSible. but !Jsually the
institutional and financial obstacles have been insuperable. The main financial
obstacles are the need for a dedicated computer called an IMP costing about
180.000 at each site and the need for dedicated communication Unes rented by the Noting that the current date Is May H. so that there is no point in getting ,he
Department or Defense at great expense from the telephone companies. Some other message there quickly. Smith types
networks have been started, but they generally don't offer the range of services that
night mail dave@utex-cheml
we desIre.
I am interested in your work on anhydrase B. If possible, give'
pointers to online documentation, else give me a call at 415 4974430 (Stanford) or 415 321-7580 (home)_
We propose to design protocols that can be Implemented at any time-shared
computer Installation Dr single user computer system without joining any formal The ·night mail" command causes the message transmission to be deferred until
network. The hardware cost will be from 8500 to 85000 depending on the type of inexpensive nighttime telephone rates are In force.
system and how difficult it Is to connect devices to the computer. For timesharing
iystems, a telephone dialer will be rented from the telephone company so that the Additional capabilities of the Dialnet system can be used to follow up on the above
system can Initiate calls. For Single-user systems where economy Is paramount. the inqUiry. as follows.
user can do his own dialing to initiate a call. There will be programs to transmit
signals and Information according to the protocols. Any Installation implementing • The ability to access remote text files will be provided (with permission of the
owners reqUired. of course). This interactive reading facility will include the
the protocols will be able to communicate with any other. The only disadvantage
addition of "footnotes· to various parts of the text. These footnotes may be
compared with the ARPAnet will be lower speed.
declared private (i.e. belonging to the reader) or public (available to the author
and possibly others).
Like ARPAnet, Dialnet will be most useful to full tl7llt-sAarlng s,Slms or single
user systems that operate 21 hours and have file systems. In such systems. each user
has named disk files that are kept in the system even when he is absent (and • It will be possible to run programs on a remote computer, permitting experiments
with programs developed in other places. This facility will permit the sharing of
therefore remotely accessible), and new files can be created by file transfer from
unique speCialized capabilities over a geographically distributed population.
other machines and on receipt of messages. The usefulness of the message facilities
normally requires that users habitually log In each working day and are most
beneficial when users have Individual display terminals In their offices. Further • File transfers will be permitted. with suitable error detection and correction
features. to permit sharing of data. The communication protocol shOUld be able
benefits accrue when reports are normally prepared at terminals and when
to adapt to a wide range of noise conditions on phone lines.
secretaries use terminals for letters and messages. However, many less advanced
Installations have found the ARPAnet useful and more and more systems are
3. Protocols
acquIrIng economical full time-sharing capability.
While we expect that the first users or Dialnet will be regUlar computer users, the
corresponding ARPAnet facilities have been used by non-computer people. Users
of Dlalnet facilities wlll not be required to kriow how to program, and we expect
Increasing use by others as terminals become more widespread.

In order to make these facilities available, suitable protocols must be designed, and
in the course of this. a number of technical problems must be solved. BeSides the
protocols themselves. which are communication procedures and data structures,
there will be a recommended set of terminal-level commands with syntax prompting
and standard error messages.

In order to make the picture more concrete. here is a scenario of the use of the
system suitable for scientists. Other potential users may imagine their own We believe that we have the experience to produce a set of workable protocols. and
scenarios. The syntax contained in the scenario is not a proposal; we will have to that it is better to start with an Implementation than to standardize something that
think much more before we have such a proposal.
doesn't exist. The latter procedure In recent years has led to gold-plating the
reqUirements to the extent that the standard Is not implementable.
2. Scenario
A user named Smith types on his terminal
ma 11 Organ i II
Do you have any active work there on human red cell carbonic
anhydrase 81

We plan to devise suitable protocols. test them at a few sites. publish them, and
attempt to convince other Instaliations to implement them. Almost certainly. initial
experience will produce a reqUirement for Changes. and standardiution committees
will be formed and set to work. A likely forum for a standardization effort would
be through the ACM to the American National Standards Committee.

FIRST coMPUTER FAIRE PROCEEDINGS

PAGE138-

BOX 1579.PAlOALTO'CA 94302

We pro~ to allow Interaction with ARPAnet sites via TIPs and propose to
discuss with ARPA and DCA whether this will be allowed.
The most general use ,of Dialnet involves a program In One computer ·waklng up·
and Interacting with a program In another machine. Dialnet protocols will handle
human messages as a subcase 0( this. taking Into account the fact that the sU,bcase
will have the most applicali,on for a long lime 10 CO!pe. Messages about where 10
deliver a message sent II" one tlme·sharing system 10 another will be handled as a
special sort 0( message that one program may selld another In cases where the two
programs are not written' together, but each must know a certain' ·public· language.
Thus we will attempt ,10 make a general format for requests. quesllons, and
assertions suitable for ,communlcallon between computer programs. We will stud),
how to make this mesh with communication between computer programs and
people.
4. Research Issues
There are many research issues. and we don't expect to settle all of them In the
time and with the resources requested In this proposal. Since we expect many of
the Issues will be clarlfted by the Initial Implementation. we will concentrate on
"ttlng a reasonable firstlmplementallonlnto experimental use.
Here are some of the Issues we will 5Iud y:
I. What error correction facilities are required 10 make up for the deficienCies of
telephone linea?
2. What Is the minimal necessary burden on the tlme.sharlng computers carrying
out the communlcallon? What IS the trade-olF between bulFer size and compute
lime?
'
S. Can dlal.up telephone communication rates meet most of the needs fo'

communication between computers belonging 10 dllFerent research
organlHtlons?
of: What Is the,best way to handle the fact that dllFerent modem speeds have

dlll'erent prices? Should one strive for • standard speed or can a Wide variety
be easily accomodated? Is the time ripe for I mlcro·processor based modem
that can communicate It any speed up 10 a maximum and adjust Its speed 10
the requirements of the line or the poulbly less advanced modem with which It
communlc,ates?

5. How will the Improved communication alFect research? Since changes will be
slow, how can we tell as early as possible what the efFects will be?
6. What style of Interaction is convenient for both experienced and Inexperienced
users? How can communication programs be madeself.teaching Without being
cumbersome?
.
5. Research Plan
We plan to undertake this project with rather modest staffing. Initial emphasis will
be on designing and implementing experimental prQtocols using exlsllng computer
facllllles at Stanford. We will also rely heavily on the co-operatlon of other
organizations t,hat have expressed Interest In the project both In determining the
protQCOls and In implementing thetn for specific machines. First. we plan to create
an experimental link between the computer facilities of the Stanford Artificial
Intelligence Laboratory (SAIL) and the Low Overhead Timesharing System
(LOTS). The only additional eqUipment needed will be a telephone port with
autodlal capability for the LOTS computer. We expect this Initial development
phase will take about 6 months.
IIi the follOWing six months. we plan 10 test, evaluate, and modify the protocOls.
During the latter part of this period, we plan 10 publish the protoCOlland
encourage additiOnal groups 10 join the Dialnet community.
NOlI: rids d_III,lIt Is te1111
}efJor.

frtllll

our NSF ;ro~sel elld "'elns Stllll,

01 tMt

For lurtAn biforlll(Jtltm contll(t LISt,r EernlSt or /o"n McCertA, /It Sten/ord
Artlfide' 11Il,l/Igtnt' lAboretory, Stell/ord U'IIIIJITSlt" Stell/ord, CcU/orIlJ94JO-';
AR.PANEr tuldr,SIIs: E,fRNEST .SU·,flelld MCC,fRTHY .SU·,f/.
TAts cl«Ullllllt Is'DI,fLNE.BL,fIW71JMCI.SU.,f/.

\,

FIRU'COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302---PAGE 139

CD COMPUTER MAIL?
Raymond R, Panko, Ph.D,
Stanford Research Institute
333 Ravenswood Ave.
Menlo Park CA 94025

During the 1976 31ection campaign. Jiaa, Carter coordinated
hi••t.ff through. new coaaunication medium called "computer
.. il." Whenever Carter'. campaign aircraft landed. an aide would
call into tbe nationwide STSC coaputer network and call up a
prograa named Mailbox. The aide would then transmit ae ••age.
prepared during the flight. receive new me••age ••• nd perhaps
reply to a few incoming ae..age. (1). During the Autumn
c..paign. over 1.200 ....age. were .ent.
The STSC Mailbox program i. only one example of • relatively
new computer application area: the use of computers in human
c_nic.tion. There is nothing new about computer-based human·
communic.tion. per .e. of cour.e. Teletypewriter network. bave
long u.ed coaputer. for SWitching. and even the fir.t time-.hared
computer had a priaativemailboxprogram(2).toletu.er.
exchange brief me..age.. What i. new i. the rate at with which
computer-based human communic.tion .y.tems have been growing in
aephi.tication and power during the la.t five or .ix years.

Historical Trends
Although the STSC Mailbox syste. that Carter u.ed is a
commercial systea. ao.t ccmputer mail developaent ha. been paid
for through research grant. and. mo.t .pplications h.ve been in
re.e.rch and military environment••

caa.unication network.. Many corpor.te ~nic.tion network.
u.e ca.putera merely for .witching. for example. the
international airline. re.erv.tion network. SITA. over which
perh.p. • quarter billion .d.inistrative .....ge. .re exch.nged
e.ch year. A few network•• like Hewlett-Packard'. COMSIS. alae
u.e ccaputer. for coapoaing. re.ding. and filini.
There have been several mail offerings on coaaercial
ttae-.haring network.. BeSides STSC, .t lea.t one other
c_rical time .haring network, TIMlEr, haa begun to att.ck tbe
QOr~ratl! cOlllllUnication m.rket .eriou.ly, with • coaputer .. U
offering, OIlTYM. Mo.t time-.baring networka offer at le.ilt
rud1aentary computer .. il .ervice.
What i. Computer Mail?

In contra.t to traditional aessage-switcbing .y.te...
computer .. U .y.te.. do not aerely tranaait Mssage.. Ccaputer
aaU .ystn. automate .11 a.pect. of .. U handling. They provide
word prooe•• ing tools for ae ..age ca.po.ition and editing. tbus
eltainating the traditional teletypewriter prie.tbood. Tbey
allow di.tribution li.t. to be prepared ea.ily on-line. They
print ae ••age. and al.o file ..ssage. automatically for
.ub.equent retrieval. By autoaating the entire life cycle of
message handling. by providing .iaple operation. and by letting
.ny computer terminal acce.. the .y.tea, coaputer .. 11 bss
brought me ••age technology out of the ba....nt and into
indiVidual office••

The greate.t hotbed of develpaent has been the ARPAIIET. a
nationwide computer network funded by the Advanced Re.earcb
Project. Agency (ARPA) cf the Defen.e Department. During the
1960' •• ARPA funded much of the world'. advanced comp~ter
re.earch. Late in the decade. ARPA began to build a netwcrk. in
When a peraen "log. in" to the computer, tbe exi.tence of new
order to make it. re.ource. aore widely avail.ble within the ARPA aail i. reported if any baa arrived .ince the l ••t log in. If
re.earch community and within the defen.e coaaunity a. a whole. there i. new mail, the .y.tem print. a one- or two-line .ummary
of each ....age. giving it. date, author, and an option.l
The fir.t line. and .witching computer. were in.talled in
author-.upplied title. The u.er can print the.e aeaaage •• anewer
1969, but it was not until 1972 that network protocol. had
them, delete thea, or file thea for l.ter re.ding. The user ..y
evolved .ufficiently to aake the network re.lly u.eful. By l.te then .c.n through old ae..age. or coapo.e new message.. Delivery
1972. however ••t lea.t a quarter of the coaputers on the network times range from a few .econd. to .everal bours.
could exchange ....age.. thanks to a mail system developed at
Bolt. Beranek snd lIewaan (BBII). During the next five years. a
It is caa.on for users to t.ke terminal. along when tbey
rash of newaail .ysteas were built for the ARPAIIET. aost of
travel or when tbey go hOM. Thie keep. thn in touch and allows
which were developed at BBII. MIT. Rand, end the Univer.ity of
thea to handle their corre.pondence whenever they choo.e.
Southern California'. Information Science In.titute (lSI). There
was .1.0 an extremely advanced mail .y.tem developed at Stanford
Re.earcb In.titute. for use in a ltaited c_nity.
Outlook
Today, mo.t ccaputers on the ARPAIIET c.n exch.nge .. ssage.,
thank. to the existence of general network •• il standards. There
are now perhaps 2.000 network mail users. many of whoa are
,The coaaarcial outlook for coaputer mail ie very bright. The
computer scientist •• but ..ny of whoa are nonprogr.... r military average cost of a me ..age v.ries considerably froa sy.tem to
users. Bec.use ARPANET mail systems bave becoae very easy to
.ystem. ranging fl'Oll $0.50 to $10.00. depending upon the
use. the portion of nonprogra..er user. i. growing rapidly. In function. performed. The ratea are .teep. but co.t. are ~.lling
fact. ARPA and the lIavy are about to conduct .n experiment th.t rapidly. It appear. th.t the co.t of a good .ervice will be
could reault in a tran.fer of ARPAIlET ccaputer .. U to normal
.round $1.00 per me ..age within a year or two, and that ca.puter
ailitary caa.unication network.. In addition. one ARPANET aail .. il will be cheaper than po.tage by the aid-1980'. (3.4) •
• y.tem. HERMES. ia offered coaaerci.lly. via the Telenet computer
network.
At po.tage staap price•• coaputer mail oould c.pture a
.ignificant portion of the written ccamunic.tion in corporation.
A .econd .ource of developaent has been computer
__ around a trillion pieces of paper annually in the United
teleconferencing. in which a coaputer eaulate. the di.cipline. cf St.tes alone (4). So it ie not .urpri.ing that many companies
face-to-face group discu •• ions. The fir.t teleconferencing
.re beginning to eye tbe computer mail aarket .eriou.ly.
sy.tem was developed in 1971. under Murray Turoff at the Office
of Emergency Preparedne... Since then. .everal aore
teleconferencing .y.tns have been built. The most widely used
to date haa been PORUM. built by the In.titute for the Puture
Where Do Hobbyie.ts Pit In?
under ARPA and National Science Pound.tion (NSP) .pon.or.hip.
Twenty-eight PORUM conferences were held on the ARPANET from 1972
through 1974. In l.te 1974. a PORUM variant. PLANET. was
Virtually all analy.ts agree th.t computer mail will flourieh
installed on the TYMNET computer network for further
ftr.t in organization••• ince corporation•• the governaent, and
exper1aentation. PLANET is now offered commercially. by
the ailitary can pay the larse bill. needed for .y.tea
InfcHedia, In 1976, Turoff developed the Electronic Information development and operation. Organization. can pay • gre.t .de.l
for computer .. il because they already pay • gre.t de.l for
Exchange Sy.tem. which is being u.ed for experimentation over
Telenet.
pap.erwork.

ne

A third .tre.. of develoJlllent has

COllIe

in corporate

But it atill .eeaa poaaible tb.t computer . . il may develop

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

first in the community, rather than in organizations -- not in
individual homes, because equipment is not in place, and a full
ca.aercial syetem would be expensive -- but in the computer
hobbyiest arena, where computer mail networks oould be used to
exchanee ideas and just ohat, with existing equipment and with
relatively little software development cost.
Bsfore disoussing details, we wish to give several reasons
for saying that hob~iest computer mail is not an inherently
orazy idea. First and .ost importantly, hobbyiests are very
active snd need to communioate. As Dave Caulkins has reoently
estimated (5), there were about 3,000 hobby oomputers and 15,000
computer hobbyiests 1n the United States in 1976. There sre
probably a lot more today. They are spending a great deal of
time and money on their hardware, and many are oapable
programmers.
Seoond, there is a strong hi.torioal preoedent: ARPANET
oo.puter mail itself. ARPA' projects have been serious and
worthwhile efforts, but there has always been a distinot
hobbyiest flavor to the ARPA oontraotor oommunity. Typical ARPA
researchers work on exciting projects such as artifioial
intelligence. They tend to be more strongly committed to
research than to their own organizations, and they tend to work
very long hours. In many ways, the ARPANET research caa.unity
has always been a collection of oomputer enthusiasts. Morevover,
even before the network was oonstruoted. the ARPA re.earch
community was fairly tightly knit, meeting at oonferenoes and
.wapping employers with bewildering regularity.
When the ARPANET was
community communication,
blo.somed as soon as the
ARPANET mail development
hslf of all .a11 systems
time.

PAC'..E 140

I will sketch two possible scenarios for hobbyieat oomputer
mail's possible evolution. In the first, "HAM Computer Mail"
would evolve in the limited hobbyiest community. In the seoond,
nCB Computer Mail" would be broadly aooessible in the o~nity.
HAM Computer MaU
HAM radio, despite its long popularity, has never been
large. Its stiff entrance requirements, inoluding lioenaing
testa and the purohasing or buUding of expensiveequipaent, have
limited its size. Analogously, if hobbyiest oomputer mail i.
oonfined to highly sophistio.ted oomputer user. of the type that
now populate the oommunity, the,n hobbyiest oomputer maU i.
likely to remain small, like amateur ,redio.
Nevertheless, amateur oomputer mail will almost
oertainly appear first among ourrent hobbyie.t., ,beomuse
hobbyie.ts have oommunioation need., the ability to 'de.1gn,and
implement a oommunioation sy.te. and, I suspeot, a atrong
inolination to do so.
Teohnically, two features will have to be added to
current hobby computers to implement HAM computer mail. The
first is message-handling software, to let individuals oompose
messages, prepare distribution lists, read incoming .ess..... aDd
file inooming messages for later reading. This i. an intere.tinC
problem, but it raises no substantial barr~ers other than hard
work. As on the ARPANET. good mail programs. once oreated. would
probably be adopted rapidly by the hobbyie.t oommunity.

created, it provided a natural tool for
The other needed feature i. networking, and this ia
and, as noted above, computer .ail
network became operational. While much indeed a problem. The simplest solution would be for a hobbyieat
computer club, such as Homebrew, to collectively purohase a
has been deliberately funded, perhaps
me..age-.witching co.puter to handle party-line communioation,
have been written in people's spare
private .essage transmission, a bulletin board, and so on. U.era
would then need acoustic oouplers, so that they could phone into
the ....age oomputer periodically.
Although such statistics are not kept, it is generally
believed that the ARPANET is used mostly for message
The problem with this approach is that it requires
communication. Again, for balance, we reiterate that ARPANET
somebody to purchase the message computer. An individual club
projects, despite their hobbyiest air, have been geared toward
could do this most easily, since it has communication need. and
pragmatic goals.
many progr....rs who lack computers to work on. On the 'other
A third just';fication for considering co.puter maU is that hand, hobbyiest clubs tend to be low-budget operations. Another
approach would be for some hobby computer manufaoturer to install
corporations are likely to be quite slow on the uptake of
computer .ail. While excellent software is available and price. a ....age computer as a way ot stimulating sales and discovering
trends. Weyerhaeuser did something like this in ttbe
market
are already attractive, the corporate environment will not be an
easy one to enter. First, telecommunications in corporations is 1960's, when it funded a number ot communes. Weyerhaeuser's
by-and-large a low level function in the hierarchy. Emphaais is funding paid ott quite lavishly, because it di.covered the
on thrift, not innovation, and innovation is generally a painful emerging indoor plant market and plunged into it.
process. While some large organizations are innovative, it
remains to be seen how rapidly theae pace setter. will adopt
Potentially the best approach would be tor some
computer'mail or how rapidly other companies will follow.
entrepreneur or club to set up a .e"ese-.witcbing oomputer, tben
Moreover, current computer mail systems, de.pite their
charge users for service. On current time-sharing systems,
sophistication, are not yet well-adapted to the needs of
however, billing is extremely expen.ive. 'Some breakthroughs in
corporations (_).
charging practices would be needed to provide service oheaply yet
get users to pay their bills.
A fourth, and to .y mind deciSive, reason for considering
oomputer mail is the recent growth of CB radio. In the early
If a separate messese computer is not fea.ible, the
1970's, trucking and recreational vehicle users began to provide alternative is to create a network of individual hobbyiest
a market tor cheap and useful CB equipment. Soon, CB began to
computers. Other speakers in this se.sion disous. this
grow wildly. About one U.S. household in 10 now has one or more possibility and I will gladly deter to their discu..ion.. .inoe I
CB rigs, and growth is oontinuing at an astounding rate.
find the idea of a voluntary distributed oomputer network to be
mind-numbing.
CB is being used primarily in a party-line mode, in which
changing groups of people chat, usually annonymously. Party-line
Let me do something uncharaoteristio ot oon.ultants and
conversation has one major advantage, for radio sellers: it
venture an opinion on how HAM computer mail will mo.t likely oome
provides an instant community of users. In contra.t.
about. In my crystal ball. I see a club like Homebrew oombiniac
person-to-per.on message .ystems require either a closely-knit
its due. and a grant from a computer manufaoturer'or telephone
community within whioh traffic will naturally be high or a very oompany. to purohase a minico.puter. Why'.houlda hobbyiest olub
large user base so that new users will hsve someone to talk to. purohase a "large" minico.puter instead ot .taying with mioro.?
In the party-line mode. whole communities need not make a
Because only about one co.puter hobbyie.t in three. by,.y orude
deci.ion to Join. and potential u.ers will automatically have
estimBte. now owns a co.puter or shares one. The bUlk'ot all
someone to talk to. Of course once a party-11ne community grows hobbyiest club .e.bers are programmers who would be comtortable
large. per.on-to-person co_unioetion can flourish.
with a mini. These "neked hobbyie.t." oould progr.. t,he _se• .,e
computer and handle the Bundanitie. ot accounting ,nd billing.
Computer conterencing ofters some party-line featurea,
User. ot the cpoperative message cOmputer would need only a
although mo.t systems are fragmented into numerous private
terminal and acoustic coupler; and they WOUld have an ,"in" for a
conferences. In fact, the first major conferencing system was
small outlay. 'HobieStl! with computera, in turn. oould use their
called Party-Line. Most successful conferences (rated by user
own oomputer tor message composition and reading, using the
satistaction) have a free-wheeling air, and in at least two
message computer only as a switoh. Their servioe te_a would be
conferencing systems, public ·grafUti n conferences have
reduced beoause they would use the message computer lese heavily
dominated tratfic patterns.
a~ each session.
This approaoh--using a cooperative .. ssage
computer--seems ideal, because it could make all club m..bers
active ,users. instead of partiCipants. If 'a coop computer is
How Mi&ht Hobbyiest Computer Mail Evolve?
purchased, furthermore, it could be a general time-.haring .yet..
for other forms of .oftware development.

FIRST coMPUTER FAIRE PROCEEDINGS

CB Computer Mail
While HAM radio has remained an arcane hobby, CB radio
has srown to becolle one of laerica's major communications media.
The reasons for CB', success are co.pletely straishtforward: a
CBris can be purchased for under $200, and its operation is
sillpl1city itself. Sillilarly, if cOllputer mail is iIIplemented so
that anyone with a terminal and a pre-paid account can use the
systell, the resultant ·CB cOllputer mail· service is likely to
spread rapidly and srow far beyond the hobbyiest lIarket.
'In many ways, CB cOllputer mail would be easier to
taplement than HAM cOllputer lIail. It could have the size to
,netyork several lIeMUe, !lOlIputers. an.d, so raduc,e telephone
charses to users, by lIaking all calls local calls. its size
could also allow sillplified billing, say throUSh major credit
cards.
If CBcOllputer ma1l is to becolle extrallely widespread,
it may'have to be illpletlented by the local telephone company,
lIuch l1ke dial-a-joke and tille-of-day services. If the costs of
oomputer "il fall as low as I believe they will (3,4), the
revenues sained by the basic lIessage unit charses will be
sufficient to justify the service. Moreover, if services are
indeed illplemented by telephone collpanies, resional and national
interconnection will be possible and, quite probably,
sufficiently lucrative for early developllent.
How would the current hobbyiest cOllllUnity sreet CB
cQIIPuterllail? My suess is that they will view it with
considerable distaste, lIuoh as HAM radio operators have little to
do with CB radio. Perhaps hobby cOllputerists will pull back
cOllpletely, but I think this would be a srave error. Hobbyiest
cOIIputins is passing froll a hardware era, I believe, to a
prcsr8lllling era, and it will ultillately enter a service era.
Whether the current hobbyiest community follows the mainstre.. or
becolles an isolated elite is one of the 1I0St critical issues now
facins the community. CB computer lIail could well be the
crucible in which the long-term shape of hobby cOllllUnity is
proofed and shaped.

Conclusions
It appears that cOllputer lIail, which developed primarily on
the ARPANET, has the potential to form an iIIportant cOllllUnication
lIediuII for the cOllputer hobbyiest cOllllUnity. There are BIIple
software concepts available for the des18n of hobby cOllputer mail
systells, but networking is a .. jor problell area. Hobbyiest
cOllputer lIail lIay be restricted to serious hobbyiests, in which
case it lIay retia in forever an arcane 118diUII, analosous to HAM
radio. On the other hand, if hobbyiest computer lIail can be
opened up to casual users, it lIay becOlle ·CB computer lIail· and
spread as rapidly as CB radio.

References
1. Holuea, JoM,"Collputer Tied Carter, Mondale Campa18ns,·
The Washington Star, p. A-3, Nov8llber 21, 1976.
2. Crisman, P~A., ed., The COllpatible Tille-Sharing Systell, A
Prosram.er's Guide (2nd Ed.), The MIT Press, Callbridge,
Massachusetts, 1965, Section AH.9.05, quoted in Stuart:L.
Mathison and Philip M. Walker, COllputers and
Telecollll\lnications: Issues in Public Policy, Prentice-Hall,
Inc., ~ngelwood Cliffs, New Jersey, 1970.
3. Panko, Raymond R. (Ra3y), The Outlook for Computer 'Message
Services: A Prelill1nary AssesSllent, TelecollllUnications
Sciences Center, Stanford'Research Institute, Menlo Park,
Califol'llia, unpublished draft, March 1976.
4. Panko, Raymond R. (Ra3y), ~The Outlook for Computer Mail,"
to be p~~~i~ed in the Journal of TelecOllllUnicationa Policy.
5. Caulkins, David, ·A COllputer HobbyiestClub Survijy," Byte,--pp 116-118, Vol. 2, No.1, January 1977.

Box 1579, PALO ALTO CA 94302

PAGE 141

FtRST COMPUTER FAIRE PROCEEOINGS

BOX1679,PALOALTOCA 94;ID2-

-'f».~~~ 142'

COMMUNITY MEMORY - A "SOFT" COMPUTER SYSTEM
Lee Felsenstein
1807 Delaware St.
Berkelev CA 94703

"Whether or not humans will be alive on our
planet will probably be resolved by cosmi~ evol- ,
ution as earl~ as 1985. We don't have to wait until
2025 to find out."
-- Buckminster Fuller
This discussion is based upon the premise that the
trends within western industrial society which lead to
greater degrees of interpersonal isolation and fragmentation must ba reversed if the judgment of "cosmic evolution" referred to in the initial statement is to be fav.orable to humanity. The tendencies leading toward the
erosion and breakdown of community and toward the centralization of the means of communication ~- the lifeblood of
cOmmunity -- must be overcome. This reversal is beginning,
slowly and appropriately without centralized direction,
in what appears to be an evolutionarily sound manner.
So far this movement towards the re-establishment of
community has proceeded without a significant technological component. Until very recently this has made sense,
since the prevalent technology is organized along hierarchical lines and all design criteria point development
towards larger systems in which the human being has become more and more an interchangeable part.
Recently, however, discussion has developed of
"soft" or "appropriate" technologies, better suited for
local, ~centralized control. Tools or systems of this
Bort are usually designed on the assumption that a wider
range of criteria must be considered than in standard industrial design, and that efficiency in a societal context rather than in an industrial context may dictate a
design which seemingly violates industrial rules.
The computer has typically symbolized the centralization and mystification which are the antitheses of soft
technology. Frighteningly expensive, it was served by
ranks of experts who mediated every interaction with it
according to mysterious rules.Every quantity and quality
in the universe was to be reduced to strings of binary
bits and manipulated at the speed of light as invisible
charges or fields. The results could not be questioned
by a non-expert.
This image has suffered severe damage at the hands
of personal computer activity. It has been demonstrated
that computers will sell as consumer-priced goods, that
certification and formal training are not necessary for
their use and application, and that involvement with them
does not turn one into a tunnel-vision hacker or a mumbler
in machine-language mnemonics. The machines do not bite
and do not cost money when not turned on.
The scale and complexity of computers having been
reduced to human levels, they may now enter the new area
of Boft technologies. As mentioned previously, wider
ranges of design criteria can now be employed to bring
about efficient functioning of a system in a societal
rather than an industrial context. The movement toward,
decentralization and the regeneration of community may
now take advantage of program-controlled electronic
equipment.
'
Orie such "soft" computer system which is currently
under development by Loving Grace Cybernetics is,
Community Memory, a nonhierarchical, information-exchange
system intended as a community information utility. An examination of the design criteria of this system may help
further to define the new area of soft computer systems.
Unlike other information utilities, Community Memory
(hereinafter CM) is not designed to be the primary conduit of information exchange. Rather, it is intended to
facilitate information exchange through existing channels,
mostly those of a non-broadcast nature. "Broadcast" is
here used to describe information exchange on a centralized, replicated basis with little opportunity for reverse
flow. Print media, large theatrical performances, and wall
posters all qualify as broadcast media. Of the non-broadcast media face-to-face conversation is the primary example, amplified by modern transportation, postal and telephone systems. CM is designed to exchange "pointer information" through the computer system to facilitate nonbroadcast communication through these existing media. Thus
the, user need not reduce all of his/her human contact
to strings: of ASCII codes.
CM is designed to be st.uctured as a network of
regional nodes at which the main processors and storage
ara lqcatad. Each region serves a number of local in for-

mation centers where people may walk in and use the system'
directly, without operator intervention. Items may be entered into the public data base using a free-association
keywording system in ,l!/l1.ich the machine uncJ;i,tic~lly ,accepts any string of te,.t as a keyword and generatesdictionaries ,referencing ~hat 'item to those keywords. Searching is a 'matter of guessing a keyword used by the person'
entering ,the item and calling for it singly or as part of
a concatenation of keywords. The machine responds with
the number of items found under that keyword and WaitB
eitheJ; for an amendment to the keYW0J;d set and II new search
or for an order to display in bdef (first line,S only)
or in whole the set of items found. theBe transactions
take place on a video display teJ:m1nal which is part of
the local intelligent teJ:m1nal. Local floppy disc buffer
storage, allows quick sorting of intermediate files.
"
It is important to note that the CM system does not
make judgments about the informational content of the
items or the keywords, but acts only as a high-speed
,
filing clerk. The'necessaJ;y systematization is the province of human aSSistants and the good sense, of the person
using the machine. The external assistance may be provided
in the form of asked-for advice from an'attendant or in'
the 'form of access to cross-indexes compiled by "gatekeepers": people who perform such a crosti-1:eferencihg
function as a vocation.
Designers of industrial-type systems'will object
that such a sloppy cross-referencing 'arrangement will inevitably yield a system which does n otmake all the possible correlations and which runs at less than 100 percent
effectiveness. This is true, but it sets'the system apart
as a soft system which is more capable of capturing the
attention and trust of the lay usership:'than one which'is
up to the industJ;ial standard. BesIdes.-: a system for
which' each encounter is an adventure is more likely'to
serve as a "live" information-exchange medium than one
in which the user must rearrange his/her world-view to
coincide with that'of the system designer.
Similarly, the possibility that one user will insert
incorrect information into ths system which might result
in haJ;m to others is real and does not necessarily yield
to a technical solution. In "hard" systems this possibility is impeJ:m1ssible -- the information would have to be
passed along a hieJ;archy of checking, verification and
correction. In this "soft" system the only response to
the possibility can be that some effort can be expended
to prevent or minimize such occurrances, but that the
system must not be ssen as a fountainhead of validated
information. One might as well read the information
written on a wall or posted on a bulltein board; the truth
or accuracy of the information is to be determined by the
recipient. Caveat emptor, in brief.
One of the most important aspects of the system

is its "myth" -- .the sets of understandings which people

hold regarding its nature and use. This myth deserves as
much attention as any other aspect of its design. Some
better word will have to be found to describe the local
information center as which the system will be available,
but we don't yet know that word. Certainly it should not
include the word "center" since th1s attacks the concept
of decentralization., Much work remains to be done in this
area.
CM will require a set of explicit undeJ;standings
regarding its governance and availability -- a constitution, in a sense, including a user's bill of rights. In
cases where an operator of a local center is accused of
violating these understandings relief muSt be available
through arbitration and inspection. Equslity of access
for all persons and institutions would obviously be a
cardinal principle, for example. Trust in the system
would quickly be destroyed if people believed that secret
sorts and bulk dumps weJ;e being performed for businesses
or government, and the system must be organized to peJ;mit
it to resist pressures for such preferential treatment.
All of these conSiderations must be incorporated
into the design process of this soft system. Since wider
goals than industrial design goals are being PUJ;sued, the
design process cannot stop at the walls of the machine '
room. Indeed, the process of design itself remains to
be designed for these types of tools and systems.
It is not through negligence that I have failed so
far to raise the question of how the system will pay for
its operation. General MotoJ;s is not in the business of
making cars, it is in the business of making money. It
does not make money in orderto make caJ;S, but the reverse.
We are all the poorer fOJ; it in societal terms. We are not
designing CM to make money. Its survival and growth must
be dependent functions tied to its usefulness to the
community. There are plenty of ways in which the system
could be run to bring in adequate income for its survival
and gJ;owth, especially since processors are an integral

FIRST COMPUTER FAIRE PROCEEDINGS
part of all it. hardware, and a great many branch, points,
could b. made conditional upon the deposition of a nickle
ill the alot. ,
Sillc. one of the most important vehicles of co_unity
Irowth is small-scale localized ecollomic activity, and
.illce the primary purpose of CM is the d.velopment of
COIIIIIUI1ity, it is fitting that its growth be closely related to this activity which is the very symptom of its succ•••• In caees wh.re the necessary economic activity does
1I0t take place at the level at which people feel ~U8tified
in payinl a bit of their cash flow for the system s continuation and growth, then the system should not be, artificially be kept afloat., 111e design of any soft system
must allow 'for a healthy amount of failure.
CK will be structured so that the distinction between
"fun" and "serious" uses will be as small as possible. To
use the phrase of Ivan IUich. it will be a "convivial" system. 111e information centers will be amalgsms of branch,libraries. game arcades. coffee houses. city parks and post
offices. Unused terminal capacity will be made available
for laming or simulations. Amateur electronics or computer
enthUsiasts will be encouraged to learn first hand about
the innards of the equipment and the software. 111is should
result in a much shorter meen-time-to-repair than would
be the case if access to the insides of the system were
restricted to "qualified service personnel".
Community information utilities are moving very slowly
if at all, a symptom of, their industrial, "hard" design.
"Some designers and theorists throw, up 'their hands and declare that "the public is not ready" for such systems. A
soft aystem design such as Community Memory may well prove
that previous desilna were not ready for the public.
I will end by returning to the last paragraphs of the
discu•• ion by Buckminater Fuller (published in the Spring
1975 CoEvolution Quarterly) from which I obtained the opening atatem.nt. Fuller was responding to a newspaper's
question of what the world would be like in 2025;
"Whether humanity will pass its final exams for
such a future is dependent on you and me, not somebody we
elect or who elects themselves to represent us. We will
have to make each decision both tiny and great with critical .elf-examination - "Ie this truly for the many or just
for me?" If the latter prevails it will soon be "curtains"
for us all.
"We are in for the greateat revolution in history.
If it's to pull the top down and it's bloody. all lose. If
it is a design science revolution to elevate the bottom and
all others as well to unprecedented new heights, all will
live to dare spontaneously to speak and live and love the
truth, strange th ough it may seem."

Lee Felsenatein
Loving Grace Cybernetics
1807 Delaware St.
Berkeley CA 94703

BOX 1579, PALO ALTO CA 94302

PAGE 143'

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1679, PALO ALTO CA A4302

PAGE 144

DESIGN CONSIDERAnONS FOR A HOBBYIST COMPUTER NETWORK

David Caulkins
Cable Data
101 Walch Road
Palo Alto CA 94304

Introduction
This paper is divided into two sections.
1) A brief tutorial on computer networks; and
2) A discussion of possible designs for Personal Computer
Networks (PCNETs - a term coined by Einar Stefferud).
Computer Networks - The 2S¢ Lecture
History.
The research that.!II8de computer networks possible was done
The first
computer network of any consequence was the ARPANET, brought
from the concept stage to operation largely through the efforts
of Larry Roberts (then head of the information processing
section of ARPA) in the late sixties and e~rly seventies.
One of ARPANET's most valuable facilities is the message
service - the ability to send a message (generally a file of
English text, although almost any file can be sent) from one
"mailbox" in a network computer to another such "mailbox" in a
different computer. This doesn't sound very dramatic, but it
is surprising how powerful and efficiency-improving such a
message exchange facility is. What keeps ordinary message
services, such as telephone, telegraph and mail, from working
as well seems to be a combination of factors. too slow (mail);
often hard to catch someone in the office and/or pierce the
screenS of secretaries (phone); hard or time consuming to use
(mail,telegrams); lack of a positive indication of message
delivery (mai1,te1egrams); expensive in terms of characters
per dollar (telegrams,phone); etc. A computer based message
system overcomes most of these difficulties.
People regularly using such a system rapidly develop a
whole new communication style. Most messages are brief - 500
characters or less. Message text is composed by the sender at
his terminal without the filtering and delay of secretarial
intermediates, and style tends to be· much more informal and
direct than conventional media, such as business letters.
Message system users move rapidly toward a computer-based
personally oriented file system containing messages, distribution lists, text files, etc. The difference is one of kind,
not just of degree.

by

PaulBa~an· at ~~d· in the early sixties [1].

Details of Network Function.
Figure 1 is a diagram of a network with a connectivity of
3. There are 16 nodes (A-Q) and 26 links (1-26). Suppose the
network uses dial-up· phone links, and that node C sends a single
packet (of a format like Figure 2) message to node P. C uses
a routing algorithm to select one of its neighbor nodes (F,G
and D) - G is picked as being on the most.direct route from C
to P. C initiates a phone call to G and transmits the packet.
When G has successfully tested the packet for correctness (by
means of the error detecting Cyclic Redundancy Code) it returns
a short "I-got-it-OK" (or node-to-node ACK) packet to C. I f
C and G have no further packets for each other, the phone call
is terminated and G initiates a phone call to M. When M has
successfully received the packet it returns an ACK packet to G.
G can·now use the buffer space occupied by·the.message packet
passed to M for new packets. After all G-:-M traffic is disposed
of, the.G-to-M call is terminated and M initiates a call to P.
Since P is the destination, it originates two -ACK packets - the
usual node-to-node ACK to M, and an end-to-end ACK addressed to
C. When C receives this ACK it knows the message made it all
the way to P. If a transmitting node fails· to receive an ACK,
it retransmits the packet. In this way, messages passing
through the net can be made to have an error rate substantially
lower than that of the links themselves.
Figure 3 shows the network of Figure 1 with 1 nodes (A,B,
E,G,H,M and N) out of service. Messages can still flow from
C to P by either of two paths. Thus, even networks of low
connectivity (3) can function in the absence of many nodes.

16

Operation.
Some definitions will be useful in discussing networks:
Circuit Switched Network - A network in which a direct circuit
connection is set up between communicating nodes.
Connectivity - The number of links terminating at a particular
node.
Demand Access - Allocation of transmission bandwidth on demand.
Distributed Computer Network - A collection of geographically
distributed and autonomous computers sharing common
transmission and switching media.
Hop - Transmission of a packet from one network node to the
next.
Lin~ - The communication channel between two adjacent nodes.
Node -. A computer system capable of receiving, testing, storing
a~ transmitting packets using one or more links to other
nodes.
Packet - A short block of data used to carry information
through a distributed computer network. Packets typically
contain three kinds of information. the data or message to
be transmitted; addressing and control information; and
data integrity checking codes.
Packet Switched Network - A network in which packets are routed
• from the originating node through intermediate nodes to
the destination node.
,
Protocols - Sets of conventions (formats, control procedures)
which facilitate all levels of intercomputer communication.
Includes electrical interface conventions, line control
procedures, digital communication network interfaces,
inter-process communication conventions, and application
level (e.g. file·transfer, database retrieval, etc.)
standards".
(Many of these definitions are derived from· a list developed by
Vint: Cert: {2].)

i4
Connectivity 3 Computer Network
Figure 1

Bytes
100 - 500

{16

MESSAGE

POSSIB~E

Figure 2

HOBBYIST PACKET FORMAT

I

s}

CRC

I

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 145

1) The network to be composed of geographically
distributed nodes, each consisting of a personal
computer equipped with low cost network int.erface

o

o

hardware and a standard Network Support Software
(NSS) package.

o

2) The network to provide modest size message or
file transfer between any two active network nodes.
3) Low or zero cost inter-node communications.
4) The network to be distributed; no requirement
for computational, storage or control resources
external to the nodes.

5) Reasonable network reliability even though
operating with noisy communication channels and
with a fraction of network nodes lIout of service. 1I
Positive acknowledgement to the message originator
upon successful transmission.

6) Network architecture and protocols designed to
allow expansion of capabilities without step
change requirements in node hardware.

o

7) Network designed for automatic operation to
take advantage of higher probable availability of
node hardware and communication link bandwidth
during late night and early morning hours.
If I had to boil all seven down into one it would be: The network must be cheap and reliable.

19

o

o~----------~o

Reduced Network
Figure 3

.

2

PCNETs could also be implemented using radio links.

A

---1.0)----'0,----0---

similar system has been in operation for some time.
The ALOHA
packet radio demand access system was built at the University
of Hawaii by Norm Abramson, Frank Kuo and others.
It is a time
sharing system in which communication between many terminals
and a central computer is carried out on two radio frequencies;
one for terminal-to-computer communication and the second 'for
computer-to-terminal communication.
Terminal-to-computer communication is carried on in a novel way - any terminal with a

new packet ready simply tran'smits it.

When this packet is

received by the central computer and checked for correctness,

an acknowledgement (ACK) packet is sent back to the originating
terminal.
If two terminals happen to transmit packets during
the same time interval, the packets "collide;" neither packet

4

will be correctly received and no ACK packets will be sent.
In this case each terminal waits for a randomly selected period

of time and retransmits the packet for which no ACK was
received.
The random periods are important; if both terminals
waited the same period, the retransmitted packets would again

collide. Mathematical analysis shows that this scheme allows
up to 18\ full utilization of channel capacity before packet
collisions become too frequent for reasonable channel use.
Performance can be improved (if the electromagnetic propagation
time between sender and receiver is a small fraction of the
packet transmission time) in several ways; two seem particularly

applicable to PCNET:
1) Slotting. All nodes maintain a clock indicating the
start of each packet interval.

Packet transmission is started

only at the beginning of each interval. This means packets
will either overlap completely or not at all. Slotti~g
increases channel utilization to about 37\.
2) Carrier sense.

A node with a packet ready to transmit

looks to see if carrier is present on the channel; if so the
node waits and tries again later.
For more background on computer networks'and packet radio,

see references 2 through 13.
Personal Computer Networks
Why should a personal computer network be built?

Several

reasons come to mind:

1) It should be fun.
2) It is socially desirable; by providng personal computer
users the means to gossip, exchange software, participate in
message based conferences, create community information
exchanges, etc., the American penchant for communications can be
used to maintain and perhaps even accelerate the growth of
personal computer use.
This can result in a significant fraction of the U.s. population becoming "computer literate. 1I

I think there are a number of attributes a personal
computer network should have (caveat: there seem to be as many
views of what a personal computer network should be as there

are people interested in the subject - for example, see [14] so the following list is not meant to imply consensus).

Network Connectivity
Figure 4

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 146 .

Design Elements

radio frequencies used, a control path is provided for sensing
In my view the PCNET will have three major design elements: the presence of received carrier. The radio receiver and
transmitter complete the set of equipment required. These
the node hardware, the node software, and the inter-node comcould operate in the UHF band (for purposes of comparison, the
munication links. Let me consider each in turn.
ALOHANET uses frequencies close to 400 MHz). The transmitter
Node Hardware:
should be able to provide a good signal level at the receiver
A possible node hardware block diagram is shown in Figure 5.of a neighbor node 10 to 25 miles away, using a simple omnidirectional antenna. CB equipment with this kind of performance
It consists of a processor (8080 or equivalent capabilities)
is available today for less than $200. It is not unreasonable
with memory space for the NSS and message buffers, off-line
to hope that simpler (single frequency) transceivers. for Packet
storage for messages whose destination is this node, full
radio might cost about $500, even though initial production
duplex serial interface, and some signals for communication
runs would be much smaller than those for .the CB market.
link control. The node of Figure 5 is intended for use with
dial-up telephone system links. The MODEM translates between
digital signals and FSK tones for voice phone line data
Packet
transmission. It should be capable of operation in both
NODE COMPUTER
originate (initiating Calls to other nodes) and answer
(accepting calls from other nodes) modes. The ring detector
-Processing
signals the node computer that ringing from an incoming call
lJo 8080
has occurred. The off-hook control allows the computer to
-Full Duplex
take the phone "off the hook," terminating the ringing and
Serial X Face
opening the line for the incoming data. For out-going data
-Memory
the computer sets the MODEM to "originate," takes the phone
- -Message ",4KB
of~.hpo~before dialing, and the dialer translates computer
Buffer Space
s{gnals into touch-tone or dial-click dialing signals. After
Carrier
--Network
dialing is complete the computer waits until the ring detector
Detect
Support ""4KB
shows that ringing has started and stopped at the dialed phone,
Software
indicating that the target node has gone off-hook. The
-Offline Storage
computer then checks for the proper "hand shake" of FSK s·ignals,
indicating that the two MODEMs are successfully communicating.
The whole process (from off-hook to end of "hand shake") should
take only a few tenths of a second. If no ring signal is
Node Hardware B·lock Diagram
detected or if correct MODEM communication is not established,
(packet radio system)
the computer goes "on-hook" (hangs up) and tries again. The
Figure 6
number of re-tries before another neighbor node is picked is
one of several network parameters to be "tuned" for optimum
performance.

DIAL-UP PHONE SYSTEM
MODEM

NODE COMPUTER
"Processing
~8080

-Full Duplex
Serial X Face
-Memory
..... --Message "'4KB
Buffer Space
--Network
Support ~4KB
Software
-Offline Storage 1---->,.1

RING
DETECTOR
DIALLER

OFF-HOOK
CONTROL
VOICE/DATA
SHARING

Inter-Node Communication Links:
Three inter-node media seem to me to have possible uSe in
a PCNET.
1) The dial-up phone system. Even in a simple point-topoint PCNET over long distances message costs would be low.
During the late night 60% discount period coast-to-coast (Bay
Area to New York City, for example) rates are 21¢ for the first
minute and 16¢ for each additional minute. At 30 characters
per second a typical message of 500 characters would cost only
6¢; less if it were combined with other messages so the average
cost were closer to 16¢ per minute.
A regional PCNET (where a region comprises an urban area
of 10,000 square miles or less with contiguous local call
areas of about 10 mile diameter throughout the 10,000 square
miles) can be built using store-and-forward techniques. Each
node has a number (3-6) of neighbor nodes within its local
call area. Figure 7 shows the Southern California region with
a network of 40 nodes (connectivity 3; 10 mile links) superimposed on it. Messages could travel from OXnard to San Diego
in about 18 local-call hops.
.
2) Radio links. ALOHA and other packet radio system
(references 8-13) experience proves the practicality of packet
radio. A packet radio PCNET would benefit from increased,link
bandwidth and freedom from dependence on the telephone system.
This seems to me an area where radio amateurs have an

Node Hardware Block Diagram
(dial-up phone system)
Figure 5

interesting opportunity, becaus~ commericallyavailable radio
equipment is expensive and not well suited to this application.
There are also spectrum space difficulties, discussed in more
detail below.
3) Satellite links. This is clearly a more remote
The last unit of the phone based node interface hardware
possibility than the other two. There are promising developis the voice/data sharing (VOS) box. Since most PCNET nodes
ments; the radio amateurs plan to orbit a synchronous satellite
wilr"have only one dial-up phone line, the VOS provides means
in about two years. Ground station costs are dropping conto share the phone line between normal voice activity and
tinuously and might well be within reach of personal computer
PCNET operation, with voice calls being given priority. Direct enthusiasts within the same time frame.
plug connection of the MODEM and other devices to the phone
Software;
line simplifies design and lowers cost. Such connection is
possible in California and New York without a phone company
The PCNET Network Support Software (NSS) would implement
supplied Data Access Arrangement if the devices .to be connected the network protocols. It is premature (to say the least) to
have been certified by a licensed electrical engineer.
describe the NSS in any detail before the protocols are
An alternate node design for a PCNET using packet radio
specified. 'Some general comments may be made; the NSS must
links is shown in Figure 6. The processor is the same; only
be a standard, carefully debugged and tested, "bullet-proof",
the interface hardware changes.
piece of code. A person wishing to use his system as a PCNET
The MODEM is designed to operate at the higher' da.ta rates node would receive his copy of theNSS from some form of PCNET
possible on a radio link - ALOHA system experience indicates

Control Center; with the correct node interface equipment the

that 9600 baud is not unreasonable. In order to implement
carrier detect schemes for optimizing demand access to the

NSS could be bootstrap loaded'from a nearby active PCNET node.
Some NSS functions seem to be required for almost any set

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 147

of protocols:
o Routing - selection of the optimum neighbor node
for mess~ge transmission.
o Check code generation and checking.
o ACK packet generation.
o Store-and-forward packet buffer management.
o Link interface control.
Regulatory Issues
My background is in computer system design; my knowledge
of the legal and political areas of communication system control
by the Federal Communications Commission (FCC) and State Public "~~~~
Utilities Commission (PUC) is that of a layman and is very
limited. With this caveat, let me offer a few thoughts on
these matters.

,ji
il

II

1
II

\

40 Nodes

Connectivity '= 3
Each Link';! 10 miles

";')

I~

, "..... '1
' ~ '-x 1

... '

,.. ~-.'"-'--~ji

OXNARD

/~
-I

\~
Regional Network
Figure 7

"j

"~Il,

\~

i

i

SAN~.
DIE1

Operation of a dial-up phone based PCNET at night and on
weekends when the phone system is essentially idle would have
almost no impact on phone system use statistics and in consequence should attract minimal attention, regulatory or otherwise. Such a PCNET should be carefully defined as not-forprofit and recreational; any other type of service would almost
certainly fall under PUC or FCC jurisdiction.
It is probably a mistake to design a PCNETcritically
dependent on phone company tariff loopholes like unlimited
free calls within a local call area. Such tariffs are baseq
on voice call statistics; any change in statistics reflecting
increased data traffic should and would cause the phone
company to change the tariff.
More advanced PCNETs using packet radio or satellite links
would require FCC allocation of operating frequencies.
Negotiations for such allocations typically take large
quantities of time, money and lawyers.
I hope that someone more knowledgeable than myself is able
to give these issues the attention they deserve.
Conclusions
Creation of a not-for-profit personal computer network
appear.s feasible today. Figure 8 shows the geographical distribution of computer hobbyists as of January 1977. The big
circles labeled (1) indicate large concentrations of
hobbyists; the smaller circles labeled (2) indicate smaller
concentrations of hobbyists; and (3) indicates a state with
some hobbyist activity. The New York/New Jersey, Los Angeles
and San Francisco Bay areas look like good candidates for
regional networks. Figure 9 shows what might ~ the next step;
linking the (1) and (2) hobbyist. concentrations into a
national PCNET.
Figure 10 shows the ARPANET as it was in August of 1976;
the four boxes indicate high concentrations of host computers,
interface message processors (IMPs) and terminal IMPs (TIPs).
Not surprisingly, three of the four boxes coincide with the
(1) concentrations of Figure 8.

References
[1] Baran, P. "On Distributed Communications Networks,·
First Congress of the Information Systems Sciences,
November 1962. IEEE Transactions On Communication
Systems, Vol. C 6-12, Issue 1, March 1964, pp. 1-9.
[2] Cerf, V.G. "Research Topics In Computer Communication,"
in Computers and Communications, Proceedings of the
Federal Communications Commission Planning Conference,
November 1976, AFIPS Press.
[3] Crowther, Heart, McKenzie, et aL
SWitching. Network Design."

*

"Issues In Packet

[4] Frisch, I.T. and Frank, H. "Computer Communications, _
How We Got Where We Are." *

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

[5] Gerla, M. and Eckl, J.
"Moving Bits By Air, Land and
Sea - Carriers, Vans And Packets." *
[6] Lam, 5.5. and Kleinrock, L.
"Dynamic Control Schemes
For A Packet Switched Multi-Access Broadcast Channel."

*

[7] Retz, D.L.

"Operating System Design Considerations For
The Packet-Switching Environment.
*
11

[8] Binder, Abramson, Kuo, et al.
-: A Retrospective." *

lIALOHA Packet Broadcasting

[9] Fralick, S.C. and Garrett, J.C.

"Technological Considerations For Packet Radio Networks. 1I *

[10] Kahn, R.. E. "The Organization of Compute~ Resources Into
A Packet Radio Network." *

[11] Kleinrock, L. and Tobagi, F.

"Random Access Techniques
For Data Transmission Over Packet-Switched Radio

Channels." *
[12] Frank, H., Gitman,I. and van Slyke, R.
System - Network Considerations .. "

[13] Fralick, Brandin, et al.
Broadcasting." *

"Packet Radio

*

"Digital Terminals For Packet

[14] Wilber, M.
"A Network of Community Information Exchanges:
Issues And Problems," San Francisco Computer Faire
Proceedings, April 1977.

* From the National Computer Conference, May 1975,
Vol. 44.
Biographical Note - Dave Caulkins
Dave Caulkins has worked on computers for longer than he
cares to remember, with one short digression into the
biofeedback business. He is currently involved with
electronic mail systems at Cabledata Associates.
In the past
he has worked on a number of distributed computer systems,
including the ARPANET, a microprocessor based satellite
system for the military, and a large office automation system.

PAGE 148

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 149

A NETWORK OF COMMUNITY INFORMATION EXCHANGES ISSUES AND PROBLEMS
Mik.Wilbur
920 Dennis Drive
Palo Alto CA 94303

At>5tra~t

This paPer describeS a teleco~mun1cation network
Or1ented
specificallY
to_ard personal ~omputer
uSels. The e~phasls IS on technicdl aSPects of the
network,
tne paper also briefly discusses the
motlvatino co~s1detatlons and some economic, social
and legal aspects of su~h a net.

FE_" THiS PAPFM it you"re interested In cOming to
the conference session devoted to it.
I th1nk I
Would
be
~isuSlnq
the conferenCe sess10n by
presenting this same material aga1n bUt vocally, and
So I Inten1 to use th1s mater1al as background for
the discussion In the conference SeSsion.
1"11
Spend the first few minutes reviewing the salient
point', but I ~on"t read the whole paper to you.
Preface
J offer yOU tnjs Paper in the hope that
You can
Profit by mi experience with computer communicat10n
and my thouontb on hOw we coula brlng Some of 1ts
faCilities into the world ot perSOnal computers.
The motlvatln? l~eas were the subject of my Byte
article and are brletly summarized here.
GOOd
Communl~ation can tacilltate tree
prOqram Sharing,
al10wlno a community at ~sers to build on the work
Of an authOr and then become authors themselves.
~oOd
co~~unlcation
can
also let a product"S
prOSpective buyerS profit by the experience of tne
product"s
former buyers.
If the ~ommunlcatlon
tacllitles are decentrallzed, then 1t IS nard for a
Imall grouP ot ceople to control what is said or how
1t is presented. lhat"s ~hat this .paper Is about:
Settino UP SUCh a facility that is speCifically
Oriented tow~rd a .ide and diverse commUn1ty of
PerSonal c~mputeI users.
Ut course, In the late
seventieS, it oould be a waste of effort to ignore
the experiencf 01 the ARPA net; hOWeVer, it WOUld
alSO ~e a waste ot effort to SlaviShly Copy the ARPA
net,
because
that net is prediCated on some
alsumptlors th~t iust don"t apply to the Personal
com~unity.
A large portion of thiS paper is devoted
to an effort to separate tne applicable parts of the
ApPA net experience trom the 1nappllcable parts. On
With it.

I.

IntrOdUction

Fersonal co~puters tend to have onlY modest
amounts of PloCeSSlno po~er. In response, varioUS
PeOPle have opened time sharing serv1ces oriented
to.ard
perSchal COmputer users.
Traditionally,
these time sh~rlnu houses have offered strictly
computatinnal
services,
sucn
as games, cross
Comptlers ari microProcessor sl~ulatlon Proqrams.
Add1tionally, thoUqh, these COncerns could otter a
CI~ss Of services ~hlch ~e ~ould call
a "eom~unity
'ntorm~tion
~xchanoe·,
a computeriZed vers10n Of
bulletin hOards, yelloN pages and mailboxeS.
(The
n,me waS I~spired bY ~Ichael Rossmanl most of the
Ideas cone from the ~esource One system described by
ColStad
anJ LiP~in.)
Note th~t the Com~unlty
information lkch~n;e COUld be out one Of many
SerVic-es o.t"led bY tne tl",e Sharinq nouse. In
taet, a S~dll Ll~ CoUld be run in such a Way that
the h~st time sharin~ house dOeSn"t eVen"S~5pect Its
Presence. '~dl is, One cO~ld .set ~P a CI~ With only
a
s~~ll
lroup
Of users and de~onstrate its
feasibllltv netor. attempting to enlist the support
Of the peo~le runnln~ tne host.
The ld~~ ot Inter~st nere 15 an outgrowth of the
Dasic notion at ~ CI~: since the perSOnal comPuter

community is wideli d1spersed geOgraPhiCally, It can
greatlY
Denet1t from a dispersed CommUnication
tacilitv. The mailbOx aspect at the CIE idea" can be
expande~
to inclUde the not10n Of moVing messages
from one CIF to another.
In fact, CIE"S can be
11 nk ed toqetner In a network to move a meSSage frOm
the source elL through several 1ntermediate CIE"s
Until It tinall~ reaches the desired destination

elE.

that"S an expensiVe proposition: phone lines cost
money, and it ~ould be foollsn to have
them
continuously open to serve a load consisting Of
perhaps 20,000 messages per day with a total length
Of
maybe
~,OOU
Pages.
However, there is an
alternative that Could fill the bill at a mUCh lower
Cost without degrading the performance 50 mUCh as to
make 1t useless. lhat 1s, eaCh CI~ could hOld its
traffiC until late at nignt when the phOne ratel
drop and then call a few hearbY eIE"s.
During a
Call betweeO eIL"s, each could" determine Which
trafftc is aolng in the general direction of the
Other, and tnen they COUld forward the appropr1ate
meSSages. ] f the callS at the network periPhery
took place 1ust atter tne rates drop and again just
betore thev rlse and the calls near the center at
the net tOoK place tOMard the center of the time Of
low rates, messages could propagate across the
coUntry over~lQ~t.
There are ~anY PoSsible waYs one could 1mplement
a ell net.
They all have their advantage~ and
d1sadvantaQeS with respect to one another.
Of all
the
cOnc~lvable
tmplementatlons,
this
paper
~onsiderS those that are
Cheap,
easy,
lec;lal,
tun, and
UsefUl
to the eXclusion ot all others.
(ACrOnym addicts
might wish to c~ll tnese tne e~LFU cr1terla.) I
think (and sincerely hope) that there Is at least
one of toose implementat10ns.
Tne Problem 1s to
flna it. 1 haven"t found it yet, so this paper 1s
inStead a suromary at what love foUnd out about
tlndlnCl i t .
2.
2.1.

F1aCi(qround
A User"S

Vie~

Ot the ARPA Net

The ~RPA net connects computers together, and all
communication over the ARPA net Is
Ultimately
communic-ation bet.een programs. the mast UsefUl of
thOSe pr09raOlS, hOWeVer, 1s one ",hose pOtential was
Qu1te
Unsus~ected
at
the
time the net was
constlucted: it sendS messages of a fe~ hundred
words from one person to another. that program has
SpaWned a tantastlc Variety of proorams to handle
files of messages, to automat1cally notifY the
recipient Of a messaQe" to read the sender, tOPic
and other reCipients from a message neader and
autOmatiCallY
construct
a
response,
and
to
autOmatiCallY forward messages from One computer to
another as a person rooves around. That IS a meaSure
Of
the
Iffiportant
role tne program Plays in
connecting peOPle to peoole.
The facjlity has evolved into a verY useful form
over the years.
A modern message sender will
alternativelY acceot text tro~ the Teletype, from a
file (or any comblnatiOn) or, on command, fire up a
text editor an th~ meSSage gathered so far. A
modern
messa~e
file
handllnq
program
will
select1velY print Out entire messageS or one-line
SummarieS Of messaoe headers; it Will also, on
Command, Call the mess~ge-sendin~ progra~, perhaps
Initiallzino it to tOrw~rd or respond to tne message
most recentlY e~aminej. rinallY, d mOdern top-level
command intrrrreter NIL1, on your option, Qive a
Short warnjllg le.g.,
(you tlave new mail)) after
ObeYing aco~~and if it"s true and fiVe minutes have
elapsed Since tne last ~arnlng. Tne total effeCt Is
that peOPle ~now .hen their messages drr1ve and can

FIRST COMPUTER FAIRE PROCEEDINGS

reSPond in a

~dtter

BOX 1579, PALO ALTO CA 94302

Of minutes.

The AKPA ~et provides another facility that Is
a1&o quite useful: it can transfer whole tiles f!..om
one computer to anotner. fhe tYPical waY rePorts
and ot~et lang documents get sent through the ARPA
net is that the authOr N111 use the mail .facilities
to tell people .nere the file can De found and Why
it might be at interest.
Then anY interested
Parties ~et COPieS of the tile at their leiSure. Of
course. the file copYing facility also Narks for
Programs and is almost always the vehicle by whiCh
Programs are shared among people attaChed to the
AJIPA net.
While the
ARPA
net
provides
many
other
facilities. these two are the most usefUl. They
WOUld alSo be verY USeful tacilities to have In a
netWork
oriented
to personal computer peOple.
FortunatelY, they wOUld De the easiest to dUplicate
in a way t~at .ould be cheap enough to ~ake them
accessible to indiViduals.
2.2.

A Comparison Nlth the AKPA Net

A qreat deal of effort went into the AKPA net
and Ne need to discern whiCh of its
aspects _aUld be usetul to a Cl~ net and whiCh would
not.
develop~ent.

The ARPA net .as built to serve a commUnity of
Perhaps
ten thousan~ people. Of whom maybe a
thOUsand WOuld be aetlve users. About 110 computers
are
noW connected to the net. alo~g With 25
ComputerS oriented SpeCificallY tONard terminals,
they were located tn about 70 dlfterent places. In
all, the net NarK has 57 I~P's (cOnnection points)
PlUS
t~o
sdteillt. linkS.
The addr.ss space
orlgln~llv 8l10wed tor as ~any
as b4 IMP's, eaCh
SerVing UP to 4 computers, tor a total of 256
computers. «(h. restriction has since been lifted.)
~y
contraSt. a Ct~ net should probablY alloW for
more CIE"S' perhaPs 16 bits could be uSed for· the
address.
Tnen the location CoUld be cOded into the
.ore sianiflcant bits In such a way that onlY the
htghest· DttS
ot
a
distant address need be
interpr.ted to diSCOVer the general dIrection in
WhiCh to ,ena a ~.ssage.
Then, as a message
appr08ched its destination. more bits Could be
interpreted 8S e net, the way tWo Processes

In the case Of a CIt net, one Should at least
separate the protOCOlS between neighboring CIE's
from
the
protocols
between
the
source and
destlnatiOIl ot a wessage. The interactions between
a CIE and its SUbSCriber should De left COmpletely
out of the deSign Of a CIE net: each CIE Will be
hosted by a computer system that was cno.en for
econowic or logistic reasons and will have Its own
Idiosyncrasies that should be aCCOmOdated at the
option ot its SUbScribers. Between CIE's, however,
ProtocolS should be speCified that allOW room for
reaSonable a-mounts ot var iat Ion. ~'or eXample, there
must be a protocol describing hON characters are
handled: it shoula allOW for eaCh CIE to treat the
Other as a half-dUplex terminal or a f~ll-duplex
terminal with a person at it and snould prOVide for
acknowlpdge~ent
or retransmission Of each line Of
Characters. At the next level up, there Snould be a
Protocol specityih~ the format ot meSsages between
CIE's: sUch [essageS may be concerned With th~
connection itself le.g., 1 have SOme traffiC for
You, can You take It?). or they may represent
meSSages going Det~een CIE'S (e.~., Here is a
meSSage frOm CJE mumole to Cl~ foooaz.). ~ach level
Of protOCOl speCifies control information (e.g., I
qot line &9 UK; ~end me another one.t and a data
field (e.g., the line of characters): the next level
up talks about the fOrmat Of the data field.
Th-lS kinj Of mOdUlarHY is terribly helPtulWhen
a diverse grOUP ot people are trYing to build a
Sy&-tem- they tful definition Of Ideas.
It
alSO forces explicit definition ot the Inter~ctionl
bet1lieen thp levels ana
the
requirement.' and
guarantees that gO along with them. FinallY, and
perhaps most importantlY, it restricts the range o~
PoSSible
interactiOnS
In
a ~ay that focuses
attention in more worth~hile directions.

The Cll protOCOlS shOUld be rigorOuSlY definedj
and the o~flnitlonS Should be taken seriously.
There ~houl~ be some facility bY which-someDOdY 'can
test a pUrported protocol and eas1ly discover -any. of
the more ohvious bugs in It.
The danger
in
Undetected DUgS may be worse in a CIE net than in
Other enVironments Pecause t~o effects may well
Coincide.
firs·t, there will probably be a small
number of wi1ely usea protocol implementations In
the net; peDPle ~IIl be more likelf to use someone
else's Implp~pntatlon than to write on~ ot their
Own. It one Of the popular implementations contairis
an undetpcted bUg, then many
people
can
be'
inconv.enienced
~hen
some other pOpUlar program
SUPPlies it the .inputs i t needs to miSbehave.
Un
the ot~pr hand, it informality characterizes the CI~
net las it rrot'1:bly "ould), the.n the buggY program's
auth~r
may well not be available to fix it. AIS0#
the posslblp rise Of mutually unintelliqlole local
dialects would be a great inconvenience to peopie
WhO want t,o , especially in groups, is very different
from studying technical material on your own. I
hope I can encourage those of you who hesitate
to share your hobby with the kids by giving
you enough pointers on teaching to get you going.
For you who have already started to demonstrate
your systems to children's groups, I hope you
can use some of my ideas to make your presentations
more successful for both you and the kids.
How to Contact a School or Kids' Group
The most difficult thing about finding
groups to talk to is that it involves several
"cold" telephone calls to strangers at strange
institutions. Host adults find the world of
schools and children's organizations very remote
from their present day experience. Even seasoned
parents are often intimidated by these institutions. Just finding a local school to contact
can be a frustrating chore. Try the phone book
under Mycity Schools in the white pages for a
start. If you are directed to look under the
name of the individual school, don't give up most cities have a Mycity High and the nice lady
in the office there can give you the names of
the other high, Jr. high, and elementary schools
in your vicinity. Explain to that lady that you
have a presentation on computers and you would
like to contact the President of the P.T.A., as
well as the math, science, electronics, business,
and vocational education departments to see if
any of their teachers would be interested in
inviting you to talk to their classes. Assure
her that you are a public spirited citizen with

PAGE 156

nothing to sell. You just want to share your
fascinating hobby with the kids and teachers.
If possible, get the names and numbers of all
these individuals and try to contact them by ,
phone. Teachers may not be able to take a call
during school hours so be prepared to leave word
for them to call you back between 2:30 and 3:30pm.
When you reach the teacher or P.T.A Mom, tell
them without ONE WORD OF COMPUTER JARGON that
you have built your own small computer and you
would like to bring it to school to show the
kids. Briefly describe your presentation ( we"ll
talk about that in a few minutes ) and when
they sound confused say that it will make more
sense when they see it. If the person is hesitant
about turning you loose on their kids. it helps
to offer a pre-session for the faculty or parents.
This will also payoff because you can then keep
the grownups from hogging the terminal during
the kids' presentation. (An intriguing computer
game can make the most conscientious teacher
fo~et his role!)
Finally, set up a date and
time. Be sure to get exact directions to the
classroom you will be visiting including access
from parking lot and number of stairs to be negotiated. Also warn the teacher of your needs
for tables and electrical outlets.
My class presentations are always short, and,
from a hobbyists point of view, totally without
real details on computer hardware or programming.
No matter how simple or entertaining you try to
l)e some kids will get bored. Forty-five minutes is
about as long as you can ask a class to sit down
and pay attention. Fifteen minutes of talk with
unlimited hands-on is usually very successful.
If at all possible, arrange with the teacher
to move your system to an unused room after your
formal presentation. The hall, the nurse's room,
or the principal's office might be availa')le. Tqere
you can entertain the enthusiastic kids sent to
you by the teacher in groups of three or four
without the hecklers who were bored earlier. If
you are a beginner at working with kids you don't
need to try to learn to control a class of thirtyfive active children right away!
Try to leave yourself plenty of time after your
presentation just in case someone gets really hooked
right away and wants to stay after school. ~e
sure they call home for permission to stay if
you don't want their parents to oppose their new
interest from the start. Also it's nice to reserve
some'faculty time without kids around so that
the teachers may let their ignorance show without
blowing their image in front of their students.
That will happen soon enough anyway_
Other children's groups are similar to
schools. Try 30y and Girl Scouts, the YM/WCA
Hycit)' recreation department, Teen Clubs, Ham
radio clubs, etc. It may take some perseverance
to locate the names of the leaders of these
groups but ask your friends and neighbors. When
you contact the schools ask about what special
interest clubs there are on campus. Also, ask
to be put on the speakers list for each school.
When the other teachers hear what a hit you are
they will want to invite you to their classes too!
Composition and Character of Various Groups
What you can present to any given group of
children is very much a factor of who the people
in the group are. I would like to refer to groups
of kids by approximate age but that can be very
misleading. An eight year olds' Model Rocket Club
may follow you into the rudiments of assembly
language programming in an hour and a half. A
high school class called Introduction to Business
Hachines, on the other hand, can be bewildered
each time they must push the carriage return.
Therefore, please consider my references to age
groups as developmental stages and remember
that physically adult., bodies often hold minds
with five year old skills when it comes to computing.
Also, don't expect most groups to be preselected
on the basis of interest in computers. After

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 157

they play dumb. The rest are 1ikelr to appreciate
it 1f you start at their level and et them
proceed at their own pace. Don't judge them
by your own high standards.
High ·schools are already full of coaputer
freaks waiting to be discovered and welcomed
into the fold of computer hobbyists. If you
Let's take a look at kids by age groups tap into one of these goldm1.Ms in a math or
starting with the youngest, five and six year olds.
electronics class you can really go to toWn.
( .Kids younger than five love computers too but
show them every hell and whistle 'your systemthey are awfully difficult to work with in groups.)
can muster. These kids ~.n.ll stay up all night
Most fives can count to ten but are hazy on
trying to figure out what you said. Let them
know that you are willing to teach them what you
what "greater than " and "less than " mean •
They can probaoly type their names, very slowly.
know and you can count on them to show you how.
Don't expect them to be able to read. Fives
Non-computer highschoolers can be viewed either
like noise and pictures. joy sticks (1) and
as younger kids or as adults depending on their
turtles (2). They often come up with original
social maturity. Remember, they deserve just
interpretations of yOur instructions and it may
as much care as the ten year olds even though
be difficult to disuade them from eXperimentation.
you may not find them as rewarding to work with.
In other words, if there is an exposed switch on
I usually have my little kiddie I1IIJ.teria1
your system. they'll push it. They will not be
available when approaching adults. ~lts think
very good at watching other kids ~ut if you have
they ought to know something about c~ters but
prepared some tasks which are truly at their
most often their knowledge is filled with gaps
level they may demand a thirty minute turn each.
and misconceptions. On top of this, adults are
In short. five year olds bare a strong resembloften just plain afraid of machines; If you tell
ence to several computer hobbyists of my acquaintance. them you are going to start with your kindergarten
I have found that chaos can be avoided by
presentation they will probably giggle about
asking the teacher to start some favorite activity
what a good idea that is and relax a little.
on the other side of the room after you have let
Later they will come up with thoughtful questions
everyone see the inside of the computer and printa?out real world applications of systems like
ed a Hunny. The teacher can then send you kids
yours and their effect on economic and social
two at a time. Let each one play one short
conditions.
game and write one sto~. Take the names of
The reason I dwell on the characteristics of
those who don't want to stop and let thea come
the children you are likely to ?e working with is
to the nurse's room later for another. longer
that I believe they are all potentially intelligent
tum.
and enthusiastic people. My negative descriptions
Seven. eight. and nine year olds ( 2nd and
reflect only their degree of "turned-offness"
3rd grades ) are into reading short texts and
not their mental capacity. Recause "computers "
can handle four function arithmatic using whole
is a new field in which most of us are beginners
numbers. Occasionally I am appalled at their
every kid has a chance to grow and explore within
total lack of logical ability. This has nothing
it. You ~y turn someone on with a presentation
to do with the intelligence of the children themaimed at his personal interests. You may serve
selves. Rather it reflects whether or not thinking
as a model of the kind of person he or she would
is considered a valuable skill in their school
like to become. In this field everyone is a
or home environment. You may be the first person
little bit stupid so no one needs to feel stupid.
who has ever suggested that these children reason
for themselves. Of course. you may find you
Material I have found Appropriate to each Grgup
have stumbled onto a lively group you are hardpressed to keep up with.
The specific. content of your presentation
Ten. eleven. and twelve. year olds ( 4th.
can ,e largely the same for any group exeept the
5th. and 6th graders ) begin to show definite
high school computer freaks. How you present
differentiation into intellectual versus nonthat material, how much you can cover, and what
thinking patterns of behavior. This is an exreaction you expect from each group changes
citipg age to introduce to computers because a
immensely. Of course,' your hardware capabilities
bright ten has all the mental apparatus needed
~1ave great bearing on what you can show.
to understand electronics and programming. furIf you have just a computer on a board with
no games, I would stick to those groups which
thermore. he usually hasn't discovered the disexpressed
interest in computer hardware. If
have
tractions of puberty yet. The non-thinking kids
you have a terminal and three or four games you
of this age are often still open to learning
can access you can probably prepare a demonstration
techniques of problem s.olving and logic. Computer
for anyone.,
games or a fascination with soldering things
I always take the cover off the computer
may be the spark they need to reawaken the excitment
of learning and exploring. Average kids at this age and show everyone the chips and PC boards. Little
ones just look. ~rom about eight years old on
will probably be fascinated with your system if
up I explain IN Ot~LINE ONLY how chips and boards
it can do anything beyond blink lights. The bright
are made. Putting an IC under a microscope is
ones will be bored because they want you to go
fun too. Then I spend a few minutes with the
faster and show them more. The non-learners
concept of a system - here's the terminal. the
will continue to sit in the back row and throw
CPU with .arithmatic, logic, and control. and the
spit balls. Be especially alert for the child
core memory. This is the computer's magnetic note
who seems painfully slow at reading or r.sponding
pad ( we call it a tape recorder ) where it writes
but who shows a lot of interest or perseverance.
down the rules to each of the games it can play.
I keep hearing successful engineers mutter ... My
If you have lots of time you may want to bring
God. where would I be now if I hadn't discovered
along some useless hoards and some soldering irons.
electronics when I was eleven?"
Taking boards apart and randomly reassembling
,
By junior high age the division between
them is a good manipulative task for upper elemen~
thinking and non-thinking has become more entrentary and junior high kids.
ched and more subtle. The thinkers divide into
If you have rigged your machine with a
math. verbal. artistic. and human relations
speaker and.music program (3) this is a good time
specialists. The non-thinkers may have areas
to show it. Most people do not have a clear idea
of expertize such as sewing, automobile repair.
of how a speaker works so you will have to explain
or msste~ of a musical instrument. but they
the whole thing. ·Watch out for incomprehensible
conceive of themselves as basically unable to
words like "square waves" and "frequency".
understand what you are saying to them. People
After this short hardware orientation I
exhibit this trait throughout adolescence and
plunge right into computer games. Most kids will
adulthood. Don't buy their line. The smart ones
are rarely the geniuses they would have you believe. spend between twenty and forty hours playing
games if given free access to a library like 101
Some of the others are merely disinterested so

all. it was th.e teacher! not the kids who invited
you. Occasionally you'l be lucky and get a classfull of interested and intelligent people but a
wide spec~rum of attitude and ability is more common.
Success is three or four enthusiasts. not all
thirty.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

Basic Games (4). During this time they will
greatly improve their reading and interpretive
skills ( if they can't con someone else into doing
all the reading for them). Their logic will
acquire a new degree of sophistocation. In a
group setting where they must take turns at the
terminal and explain games to their peers their
social skills grow rapidly. Even during a short
school visit you c~n see the seeds of these
changes begin to germinate.
I start everybody out on "Guess My Number"(S)
because how they approach the game gives me a clue
to the level of the group. If noone discovers
the ~inary search, I can forget about introducing
programming in this first session.
Fives will enjoy Guess between 1 and 9.
Show them the numbers on the keyboard and make
sure they see that "too high" means choose a
number farther left and "too· low" means choose
a number to the right. A six to ten line "Story"
program (6) which asks for their name, favorite
food, color and playmate, then types out a short
story will be a hit, especially if you have hard
copy to let them take home. Snoopy's and Bunnies (7)
are good too but print out one for each child
~efore you arrive at the school and just do the
teacher's copy in class. Very low skill real-time
games may work for fives too. Pong is too difficult
for many of them but Race Track (8) used as a
maze instead of a race is fine. Sharp fives
may also he able to play Diddle (10) on an Altair
front panel. Of C~lrse if you have graphics you
can keep anyone amused by generating patterns for
a while.
If you have an ASR33 Teletype you may find
that this is more interesting to your younger
groups than the computer itself. They love the
noise and rarely have had much chance even to
type on an electric typewritter. The paper tape
will introduce the idea of coding and the kids
will love to punch secret message tapes and
read them back on local.
gy the way, many schools have closed circuit
T.V. If your CRT is small or you are using a TTY
for output it!s nice to hook up a simultaneous
display on the school's large monitor. This
eliminates a great deal of pushing.
This same material is equally good for seven
to nine year olds. If you have time you can
introduce another game or two for them. Unless
your group is used to playing aempetacav. games
they may have trou',le comprehending that they
are supposed to he developing skill at solving
the puzzle presented by the game. Many of my
students find it sufficiently satisfying to get
the answer at all. I sometimes have a hard
time convincing them to play the game again, trying
for a hetter score. Th~y seem to view the computer
as a competitor rather than as a game board on
which they play against the program·ner. If you
have two person games available you can make this
point a little more easily.
I like to introduce programming to these kids
by talking ahout giving instructions. A neat
demonstration is to have the kids tell you how
to make a peanut butter and jelly sandwich while
you are blindfolded. Have all the ingredients
ready on·a table in front of the class. You
start by choosing an instruction set with·the kids.
Try: move arm up,doWn, right, left, forward, back;
grasp object touched; rotate hand, palm up, palm
down. Then let the kids callout instructions
to you until you get the sandwich made. The
final test is to write down the instructions on
the blackboard, then bring in a new person and see
if he can accomplish the task blindfolded if you
read only the words on the board. If you are lucky
the kids will begin to see how much pre-programming
they bring to a task and how "simple-minded"
the computer is.
Some of these kids may he interested is going
on to simple ~asic Language programming. Print,
in·put. and if-then will let them write math quizzes
using impressively large numbers. However, unless
you are working with a special interest group or
"gifted" students you are not likely to get past
the game playing stage. I've seen a kid play TicTac-Toe (11) for an hour a day for four days.

PAGE 158

He didn't even want to change games until he had
this one mastered. You see, he wasn't just
playing ric-Tac-Toe. He was reading, typing,
learning to operate the computer, and manipulating
the social situation which provided the computer
access all at the same time.
Intermediate grades ( ages ten to twelve )
are likely to hegin to show an interest in computer
applications and simulation games. ~tany of them
will thrive on logic games like Bagels (12).
They can also handle real time games with considere',1e skill. Running out of time is my biggest
proalem with these kids., I have enough projects
lined up in my computer awareness curriculum to
visit a classroom at this level once a week for
the whole school year. In the first viSit,
though, it is show the hardware, play two or three
games, talk a',out what a program is, and mention
some real world applications like "lanks, point·of
sale, and school registration.
When you face your first junior high class
you are going to have to decide whether your
olJjective is to "teach something" ahout computers
during your first visit or just let the kids have
fun. I tend to choose the latter since I Imow thatthey will search out "hard" information once they
are hooked on computers. I flesh out my games with
Hamura~i (13), or Hunt the Wumpus (14) and bide my
ti~e until someone asks a"lout programming.
Ofte.
you will get inquiries ahout huilding home systems
like yours. These kids don't usually have much
money so one graphic demonstration is to have your
system configured so that you can tear it down to
a bare ~ones kit in front of them. This is What
you can get for $SOO. This is what you can do
with it. Add this $200 board and you can do this.
Continue adding parts and money until ,OU are back
to playing Hamurabi. This can be a discouraging
demonstration ~ut it is realistic. Hopefully, we
can save them some of the heartaches we experienced
in our naive beginnin~s.
&ld now on to high school. Many older teenagers
already know some electronics and/or computing.
Those who are interested will benefit from elementary discussions of hardware and software configuration. The non-computer kids will need the same
soft introduction you gave their younger siblings.
If you are interested in on-going projects with
kids and computers, get the high school kids on
your team right away. They can serve as assistant
leaders for younger groups and can often manage
the organization of their own cluhs with you as
a consultant. Discuss your project ideas with them
during your first visit and let them know that
there will be plenty of time for playing computer
games later.
On-Going Projects
One forty-five minute show-and-tell session on
homebrew computing is likely to yield two or three
candidates for some form of continued contact with
the machine. The younger kids will be ~asically
interested in a chance to play more games. Remember that twenty to forty hours I mentioned earlier?
Their teachers may see the potential for computer
aided instruction or a continuing class in computer
literacy. Unless this is a field of particular
interest to you, you will probahly want to serve
only as an advisor to a teacher or parents group
to help bring this about. The advisor role is
crucial to the success of such a project. However.
the leader of this endeavor is going to have to
dedicate many hours a week to make it happen. An
ongoing, in-school project will involve obtaining
space in the school to house the system or terminal.
supervision·in the computer room during and after
school ( if you don't have after school h~s the
kids will hreak in to use the machine anyway ••• ).
planning a "curriculum" which sounds convincing to
"educators", arranging for timeshare services or
building/buying a micro, and financing the whole
package. It takes a coordinated effort on the
part of one or two teachers, a few students, a
sympathetic administrator, ,and someone who knows
quite a lot about computers and programming maybe you.

FIRST CqMPUTER FAIRE PROCEEDINGS

Perhaps you would be happier tackling a
slightly smaller project? Scout troups offer
a merit badge in computer science. If you are
willing to be their resource person you can help
a lot of kids get a foot in the door without
making a major commitment of time and energy.
You may find you haVe the makings of a
computer games cluh or an after school class
in programming which could meet at school or at
your house. ( Moving your system can get to be
a drag after a while.) Since the eq~~~ment is
yours. you get to call the shots on how often
the club can meet, where. and whether there will
be dues to maintain or expand the system. If
this is to be a school sponsored group. be sure
to check with the principal about rules. regulations
and use of school property. You will prohably
need a faculty mem,er to co-sponsor the group
although that person may not have to attend every
meeting. If you form a non-schoo~ related club
make sure you contact the parents and explain
your plans to them. Be clear about what you
are willing to offer so that the· club 1s fun for
you and not just a pain in the neck. You need
not institute a formal organization with constitution
and by-laws. but a one pager explaining your purpo.e,
who is invited to join. and what members respons~
ibilities are will avoid confusion and possible
hard feelings later.
Those of you who love hardware will get a kick
out of getting together with the kids who want to
build their own systems. You can teach them as
much as you know and then serve as a liason
person to· set up sessions with "experts" you meet
through your larger area computer clubs. Of
course your services as chauffeur to meetings,
computer stores, and conferences will be invaluable.
Many parents are ready to prOVide money to get a
kid started on his own kit but they don't know
how to help him or her find the people and resources
needed to successfully build and use the system.
Your willingness to become a group leader ( maybe
not leader, just resident responsible adult ) will
earn you the respect and gratitude of the kids and
their parents as well.
A few words to the wise about entertaining
sizeable groups of people in your home. Check with
your insurance agent to make sure you have the
proper liability coverage. Also don't tempt fate
hy leaving money around or calculators unaccounted
for.
.
Hints on Successful Presentations
I'd like to finish out this discussion with
a few suggestions to keep in mind while you are
preparing your firs~.Yisits to kids groups.
1. Make sure your equipment works. Have a
dress rehersal which includes disassembling
your system, driving it a distance equal to
the trip to the school, at equal temperatures.
Set up and give your show for friends and
neighbors. Arrange this at least two days
before your school trip. If you have to dehug
your system you'll have twenty-four hours to do
it and still be able to give twenty-four hours
cancellation notice if you hlow it.
.
2 •. Prepare your "lesson plan" carefully and
specifically for the group you'll he addressing. Some people can wing it comfortably.
Others find themselves tongue-tied in front of
that bunch of expectant young strangers.
Worst of all is to discover that your audience
isn' t understanding one word of what you are
saying to them.
.
3. Therefore, DON'T. USE COMPUTER WORDS even
if you explain them first in your presentation.
People don't learn a new language that fast.
Cqmputer vocabulary IS a better means of communication than ordinary English ~UT ONLY FOR
COMPUTER FREAKS. ·If necessary, write out the
whole text of your talk and underline every
instance of computer jargon. Think up e,nonyms
now. Later you won't .be able to come up with
alternative words. It there are no noncomputer t070rds to express your thought. simplify your talk. You can introduce those

BOX 1579, PALO ALTO CA 94302

PAGE 159

computer concepts in your second visit with
this group.
4. Tryout your presentation on flome noncomputer, or ~,etter still, anti-computer people
and encourage them to be painfully honest when
you loose or confuse them. You will need some
experience dealing with detracters. ~ try
it out on someone of the same age as· the group
you will visit just to 1,e sure you have judged
their skill level correctly. 5. Don't expect to get much information
across on a first visit. If the kids see
the computer, touch it, play one game, that's
enough. Your o'Jjective is to help demystify
the computer, not to snow them with how much .
you know.
6. Don't introduce Startrek or Jambl1ng games
in class. You'll never get the Kids' attention
back.
7. Wait for questions to arise in your learner.
When a question happens in someone you know
there is a place for the answer. Otherwise,
you may never know when the input buffer has
overflowed.

That is a lot of what I know about sharing computers with kids. I'd he glad to talk or correspond
further with any of you on this subject. It's fun.
Seeing a face light up in front of a terminal is
like giving a present to someone. It satisfies
the evangelism that lurks within ~y of us. So,
find a group to visit, learn as much as you can
about them before you go , and prepare your presentation accordingly. You'll be a hit with the
4-H Sewing Circle, the Co-op Preschool and the
Advanced Placement Physics Seminar alike.
Footnotes
(1)
joysticks - I am using this as a generic term
for any device which allows input through a lever
or moveable table top instrument. Cr~co makes
one for Altairs.
(2)
turtles - A turtle is a motorized device
which moves around· the floor under keyboard or
program control. It looks something like a turtle
and can barry a variety of sensors to previdefeedback to the computer. See " Twenty Things to Do
with a Computer" by Seymour Papert; in Educational
Technology Magazine, Morristown, N.J. vol. 12,
April 1972, page 9 to 18
,
.
(3)
music - see the following articles in
Peoples Computer Company, P.O.Box 310, Menlo Park.
Ca. 94025. Vol 3 #5 Steve Dompier's Music Program
Vol 4 f/3 Minuet in G Major b.y Cynthia
Beyer
Vol 5 #1 A Musical Number Guessing Game
by Kurt Inman
(4)

for

lisc;i.tI~"

of games see ..
101 Basic Games by David ~l; Digital
Equipment Corporation 1 Maynard, MllRS,·

19/5

"reative Computing Magazine; PO •.Box 789-m
Morristown. N.J.07960
regplesComputer CompanY; P.O.Box 310
Menlo Park,Ca.94025
wnat tg Do After YOu Hit Refurn; Peoples
Computer Company, Menlo P~a. 1975
(5)

Number Guess - What to Do, page 116

(6)

Stroy - listing from LO*OP Center, Cotati, Ca
94928

(7)

Snoopy and Bunny - 101 Basic Games l1sting frOm
LO*OP Center, Cotati, Ca 94928

(8)

Racetrack - I can't find a listing in time for
pu~licat1on.
Ask your friends or LO*OP

,\:

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

(9)

oops! - I messed up my numbering system •••

(10)

Diddle - see PCC Vol 4 #4 page 8

(11)

Tie-Tae-Toe - 101 Basic Games. page 219

(12)

Bagels - What to Do, page 117

(13)

Hamurahi - What to Do, page 140

(14)

Hunt the Wumpus - PCC Vol 3 #3 page 24

vita.

LIZA LOOP

Ms. Loop is the founder and President of the Board of
LO*OP Center, Inc., a California non-profit educational
corporation. She is acting director of the LO*OP Center,
President of the Sonoma County Microcomputer Club and
President of the Cotati Chamber of Commerce.

For the past two years Ms. Loop has been engaged in
explaining computers to lay people and education to computer
professionals. She has taught "Meet the Computer" classes,
Basic Language Programming, and Pilot Educational Programming
in Cotati-Rohnert Park Elementary Schools, Petaluma and
Santa Rosa gifted students' programs, and in private classes

of both adults and young people at LO*OP Center. She has
lectured to schools, civic groups., and college classes in
Sonoma County. She has personally developed the curriculum
for these courses as well as a computer orientation course
for office personnel now under consideration by the American
Management Association.
Ms. Loop's articles have been published in several
journals of national circulation within the microcomputer
industry. LO·OP Center, Inc. serves as publisher of one
of these, the Pilot Information Exchange.
Ms. Loop was educated at the Dana Hall School in Massachusetts and at Cornell University. She completed her
Bachelor's Degree at Sonoma State in 1970 with a major in
Philosophy. Her minor concentrations were math and physical
sciences. She has since pursued courses in Education and
trained on DEC, Hewlett-Pa'ckard, Wang, 'and Data General
small computers as well as large time-shared systems.
Currently Ms. LOOP is enrolled in the Master's program in
Management at California State College, Sonoma, and is teaching
units on computers within courses in Management, Psychology,
and Education. She is a member of the Lawrence Hall of Science
at U.C. Berkeley, the California Association for Educational
Data Processing, and the Oregon Council for Computer Education.
Ms. Loop lives in Sebastopol, California
Jonah (3) and Solomon (5).

wi~h

her sons

PAGE 160

FIRST COMPUTERFAIRE PROCEEDINGS

PERSONAL COMPUTING & EDUCATION:
A TIME FOR PIONEERS
Thomas A. Dwyer
Soloworks Lab
311 Alumni Hall
University of Pittsburgh

Pittsburgh PA 15260

INTRODUCTION

BOX 1579. PALO ALTO CA 94302

PAGE 161

Here are four of them.
1. There Is Regular Recognition of Unplanned Learner Accomplishments. I recently visited a school that passes the enthusiasm test outlined at the beginning of this paper with a grade
of A-plus. The first thing that the teacher said to me was,
"Say, I want you to see what (student's name) here has been
doing with difference tables, and then you've got to look at
some of these graphs (name) has produced - and would you believe
that (name) has now got a program running that simplifies
Boolean express,ions with the Quine-MCCluskey method - he'll have
to explain it to you, I don't understand it at all. .. etc."
Needless to say, this teacher's students were standing ten feet
tall. Also needless to say, they wanted to talk my ear off
several times over, describing what thei' had been doing in this
unique computer math class.

The use of,microcomputers in education is closely associated
with the personal computing movement. So we have the interesting situation in which a well-extablished enterprise must
decide how (or whether) to handle a promising young upstart
from the other side of town. The problem is to rule on the
merits of a liaison.
Eventually someone will decide that the answer lies in the
Dne of the most powerful contributions of computers to edumagic word "evaluation". From then on it's likely to be concation is the way in which they make possible student accomfusion time. The reason is that evaluation projects tend to
immediately zoom in on methodology. They worry about the "how" plishments worthy of recognition. Computer-related innovation
that does not capitalize on this capability is really missing
of evaluation much more than the "why" or "what".
the boat.
This problem can even arise when the methodology is fairly
broad. For example, one open-minded way to evaluate a new idea
is to talk to the regular users (not developers) of the system. 2. The Role of the Teacher has Changed. The example I just
If these users are found to be consistently enthusiastic, or if gave quoted a teacher as admitting that one of his students was
using a technique about which the student ,knew more than the
they are anxious to spr'ead the word to others, there is a good
teacher. The schools that are going places with computerchance that something worthwhile is going on. If the new idea
related innovation always seem to have learned this lesson is concerned with education, and if the students involved are
that teachers and students bring complementary talents to a
found to be engaged in such unusual practices as asking to
stay after hours, or to come in on Saturdays, it's safe to con- learning situation, and things get really interesting when
everyone admits this.
r.lude that something extraordinary is in the wind.
Contrary to what one might think, respect for the teacher
Now for an apparent paradox. If we should attempt to evalgrows significantly in such an environment. Contrary to what
uate the worth of "computers in education" by using this useris
sometimes said, technology creates a greater need for human
enthusiasm test, we would get rather uneven results. Probing
more deeply to find out why, we would soon find that people were teachers than ever, but they must be special people. They muS4
in particular, be able to flourish in a learning situation
using the same words (and machines) to mean (and do) very difwhere both teacher and student will add to their respective
ferent things; that when applying computers to education there
understandings almost daily.
is a wide range of possibilities, and that there is all the
difference in the world between them.
Now that microcomputers make it possible for many more
3. The Content and Style of Successful Computer-Related
educators to get involved in these issues, it may be timely to
Curricula Are Open to Innovation. Another way to say this is
take a quick look at what the options are. We should not
that the "add-on pathology" has been avoided. Innovation has
assume that past R&D in computer assisted instruction has the
generally been more successful in places where "new" courses
answers. It's also timely to note that classroom instructors
have been developed (e.g. Computer Science or Computer Math)
are much more inventive than assumed by some R&D models. The
than in places where a standard course has had the computer
contributions teachers and students have already made to personal "added on", with nothing being replaced, removed, or revised.
computing prove that.
There are a lot of reasons why this is so. In the add-on situation, students are being penalized for using the computer; all
WHAT MIGHT GO WRONG?
the new work is added to the old. Secondly, many of the problems presented in pre-computer curricula are pretty silly (if
There is a simple test for spotting problem areas in the use, John has twice as many apples as Mary had after Mary gave four
less apples to •.• etc), and using the computer to solve these
of computers in education. The trick is to mentally erase all
the machinery and technical talk from the picture, and then ask only propagates an error.
What works best is a fresh look at both curricula and
whether what is being done is in fact what one's philosophy
advocates. If it is found that what is taking place is more an learning environments - a look that takes maximum advantage of
emulation of traditional school practice than a move toward ones several completely unique capabilities of computer-related
learning. For example, major (and quite fascinating) projects
educational ideals, then it's a wrong use. It's a use that
doesn't understand the difference between personal computers as can be imbedded in curricula at any grade level, once one understands
how the computer naturally leads to a problem-solving
extensions of the human intellect and spirit, and "gadgets"
that mechanize sterile techniques derived from past expediencie~ philosophy based on the use of subroutines (what some· people
call "procedures"). At Soloworks, we have also found great
A wrong use of computers can also be spotted by a glaring
inconsistency between what's possible, and the simple-mindedness value in using physical devices that students can control with
of what's actually done. It's not that a computer can't be used the computer. This almost always ends up involvirig several
disciplines. It's really a rewarding learning experience to
to drill a student in the memorization of facts and formulas;
it's that major concentration on such a use misses the potential find that the physics of heat, the mathematics of large linear
systems, and the joy of cooking have something to say to each
of far deeper roles. Computers shine in learning environments
other. The success of computer-related, innovation is directly
where they serve as exploratory companions; as impartial verirelated to a willingness to innovate at all levels and in all
fiers of a student's latest effort at synthesizing a general
directions.
procedure; as a focus of celebration and exhuberance when they
Dne of the most interesting forms'our curriculum work at
finally obey (literally) thousands of precise commands.
Soloworks has recently taken is the development of "microcourses". A microcourse is defined as a cluster of ,imodules".
WHAT CAN GO RIGHT?
The key module in the cluster is one which presents the student
The surest sign that a computer-related educational program
with a challen~ing problem . . Then other modu~es are developed
is on the right track is the presence of "educational complexity"to support ach1ev~ment of th1s challenge •. Fmally, there are.
at the local level. By this I mean that the program evidences
m~dules th~t exam1ne.a genera~ t~eory der1ved from these spec1a great amount of thought about all the factors that go into a
f~cs .. Not1ce. how th1s order 1S Just ,~he reverse of that purfresh approach to learning (and instruction), and that the resued 1n a typ1ca~ COl~ege cou~se. It s wh~t we.cal~ a top-down
sponsibility for this renewal is in the hands of the teachers
~pproa~h, where down means 1n the same d1rect10n ~hat great
and students involved. Meta-organizations (such as computer
1nvent1On has always moved. Why should school be d1fferent?
networks, or educational R&D centers) are important too" but as (Two}ooks that, illu~trate this approach a~e ::Software To~ls".
servants of teacher/student groups, not as their masters.
and ~ Amateur s GU1de to ~ersonal Comput1ng , both pub11shed '
The criterion that there be "complexity" in the local plan
by Add1son-Wesley Co., Read1ng, Mass. 01867.)
is best illustrated in terms of what is going on in the class4. The Best Things Happen Where the Tail Hasn't Wagged the Doi
rooms of a number of pioneers. Although the detail varies,
It is sad to report that vested interests, both political and
several common "discoveries" seem to characterize their work.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

economic, can and do get involved in computer-related educational innovation. Education deserves better than this. The
going is tough enough when something new is tried without
muddying the waters with non-educational factors.
There now exist microcomputer hardware and software systems
that provide an excellent match to the requirements of the
educational world. Trying to convince oneself that technology
developed for other purposes (e.g. administrative computing) is
just as good is an exercise in sel f-deception. It's simply not
a good idea.
On the question of money, the only way to go into computing
is to allocate the right money for the right system. Using
microcomputers, far less money than it takes to equip a science
lab or gym is needed for initial outlay. A yearly maintenance
b,udget calculated on the basis of a lab fee per student should
also be budgeted - again at about the same level as is now
being spent for a physics or chemistry lab. A budget line-item
to add new features (e.g. graphics capability) each year is also
sound planning.
CONCLUSION
A quiet revolution is taking place in education. Th~ ingredients are microcomputer technology, dedicated teachers, the
curiosity of students, and a lot of common sense. The examples
I have given say something about the way in which this common
sense manifests itself in those places that are leading the way.
The real contribution of personal computing to education is that
it is making it possible for many others'to join in this move
to new frontiers.
As mentioned earlier, microcomputers have made the cost of
pioneering reasonable. Using the cost of an average school
gymnasium as a reference point shows that a computer lab is
quite a bargain. The athletic analogy also helps solve the
evaluation problem. Students using well-equipped computer labs
in the manner advocated here would soon be making a name for
their schools. And how do you argue with a winning team?
The pioneers will know that there are better criteria of
course, and have the security to make their own evaluation. For
them the metaphor will have a deeper significance. The word
gymnasium comes from the Greek "gumazein" which meant "to train
naked, unfettered". And that's what educational computing is
about; an unfettering of the imagination and intellect, a
freeing of the capability to learn. A single microcomputer can
become a gymnasium of the mind, an arena for the imagination.
It's a bargain no school should resist.

PAGE 162

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 163

THE THINGS THAT WE CAN DO WITH A MICROCOMPUTER IN EDUCATION THAT WE COULDN'T
DO BEFORE
Lud Braun. Professor
College of Engineering
SUNY It Stony Brook
Stony Brook NY 11794

Where We Came From
Betore l.965, educators who wanted to have their students
use a computer to enhance their learning in a course sent
their students to k~-punch machines at the local computer
center which practiced that atfliction call.ed batch processing.
This computing mode was made necessary by the high cost and
operational compl.exity ot computers in that era. This was
great tor computer-center directors who could boast ot 95%
util.ization tactors tor their machines, but it was l.ousy tor
the students and tacul ty who were lucky it they got l.0% util.ization tactors tor their time.
About l.965. along came Kemeny, Kurtz and others who decided that batch processing was a terribl.e waste ot peopl.e
power and that there had to be a better ~. The "better
~" which th~ devel.oped was call.ed time~. The computer cost was shared among a group ot people, as in batch
processing; however, instead ot serving users serially as in
batch mode (with its resulting queue and l.ong turn-around
time), users essentiall.;y, were serviced in parallel., and efficiency ot util.ization ot people time increased dramaticall.y.
Another advantage ot time sharing which was important to
educators, and which was due l.argel.;y to the cl.everness ot
Kemeny and Kurtz in their design ot the BASIC l.anguage, was
the capabil.ity which existed tor interaction between the user
and the computer. Many ot the interesting appl.ications ot
computers in education in the l.ate l.960s and earl.;y l.970s
(including the Huntington Tva simulations) had substantiall.;y
more impact (and, in some cases, onl.;y became possibl.e) because
ot this interactive capabil.ity.
By about l.968, educators (including this author) began to
notice the DEC PDP-8 which was designed originall.;y as a laboratory computer. Such minicomputers had most ot the advantages ot time sharing, plus a cost which was signiticantl.;y
l.ower (over a 3-5 year period) than time sharing * and they
added two other signiticant advantages to educat~rs:
l.. The user was in total control ot the computing
environment, rather than being subject to the
high priests ot the computer center; also no
l.ocal computer bum could crash the system or
steal or modify programs bel.onging to others.
2. The minicomputer was inexpensive enough that a district could :!!!!l. a machine rather than rent it. This
meant that the interested teacher on1;y had to talk
his administration into springing tor computing
bucks once, rather than having to go back every year
and being subj ect to budget cuts, etc. *
We are in 2AA** and are just beginning to perceive diml.;y
the outlines ot the possibil.ities ot the microcomputer revol.ution; however, it, already is cl.ear that the microcomputer
has added some new advantages over those ot the minicomputer,
which is better than time sharing, which is better than batch
processing, which is better than no computing at all.. We'l.l
l.ook at some specific advantages in Section 2, but there are
a coupl.e ot general advantages ot the microcomputer which are
worth mentioning here:
1. The cost currentl.;y is about one third that ot an
equivalent minicomputer and it is coming'down
rapidl.;y. The cost ot semi-conductor memory (the
most expensive component) tor a microcomputer has
dropped by almost a tactor ot three since the
spring ot 1975. By 5AA prices should be, down, by
~ tactor ot 5-l.0; and by l.OAA, we mq be in
an era ot "zero-cost computers" where computers
wil.l. almost be throw-a~ items. Wil.l. this mean
that every student will. own a personal computer?
Who knows? It is interesting, however, to specu-

2.

1.

*This cost advantage has been diminished signiticantl.;y by the
introduction ot time-sharing minis l.llte the DEC PDP-l.l./45
and the HP 2000 series machines.
* Even so, the teaCher sometimes has probl.ems. I know one
teacher who used rolls ot paper towe1s in his teletypewriter because his administrators didn't order tel.etype
paper tor him.
nAA stands tor Anno Altair. January, l.975 is to=o and is
the time when the Altair was announced. It marks a real
mil.estone in educational computing.

------

late on the ettect ot this kind ot development.
The education community still is reeling trom the
impact ot the $1.0 pocket calculator.
Let's hope
that we are better prepared tor the $l.00 PDP-l.O
than we have been tor the $10 calculator!
The microcomputer weighs under thirty pounds (it
we assume that it incl.udes a keyboard and that the
displ.~ device is a TV set with a video tap -- at
home or in school). This means that the teacher
can carry it into cl.ass under his arm, or that he
can take it home over a weekend, or that he can l.et
his students take it home! We have come a l.ong w~
trom the time when this author pl.us a strong
student jackassed just a teletypewriter between
his ottice on the tourth floor and his cl.assroom
on the eighth tl.oor. (We never got a hernia, but
we came cl.ose many times.) ,This ,portabil.ity j,s
extremel.;y attractive: It has meant that tor the
past year, the author has been abl.e to do computing in his classroom without worrying about
whether or not the room has a tel.ephone to call
the campus computer or whether the campus computer is in one ot its blue tunks, or whether
one ot the campus c,OIIIPuter phreaques has invaded
his tiles.

It is clear to this author that the d~s ot time sharing
and ot minicomputers and batch in educational computing are
numbered and that by 10AA (and mqbe as soon as 5AA) the
microcomputer will. dominate educational computing -- except
tor a tew appl.ications l.ike data-base manipulation and largescale CAI (even here, with CCD and magnetic-bubble memories
and video discs, time sharing mq be in trouble).
In Section 2, we shall. l.ook at some special teatures ot
microcomputers which either have not existed betore or have
been prohibitivel.;y expensive until. now.
2.

Some New Goodies with Microcomputers
Because ot the unique character ot the 8080 microprocessor and the versions ot BASIC which have been written tor
it, it now is possible to increase substantial.l.y the degree ot
interaction between the computer and the user over what could
be accomplished previousl.y. In Altair 'BASIC, there is a command with the torm INP(N), which tel.ls the computer to read
the present val.ue ot the signal. at Channel. N (there are 256
possible input channel.s). There are two basic kinds ot things
that we can do with this command. The simpl.er ot the two is
the moditication ot program operation bw entry ot a character
trom the k~board (which is channell; Le., N=l). In this
mode, we can use statements ot the torm
IF INP(1)=80 THEN INPUT "P=";P
This statement* temporarily hal.ts execution ot the program
when the user hits the P key during program execution and requests that the user enter some new value ot the parameter P.
AS soon as the new P is entered, and the user hits Carriage
Return, the computer continues execution trom the point where
it was halted, but with the new value ot P. This teature is
useful, tor exsmpl.e, in the solution ot ditterential. equations
where a parameter changes suddenly. One such case is the simulation ot respiratory mechanics with respiratory resistance
changed dramaticall.;y during an asthma attack.
Another kind ot appl.ication invo;Lves the use of a
Crollll!lllCO ~7A A-D Converter* plus the INP command. It we
connect the output vol.tage ot a potentiometer to Channel. 31.
and insert a statement ot the torm
X=INP(3l)
into the program, we can change the value ot X used by the
program continuousl.;y by varying the potentiometer. This capabil.ity permits us to treat the digital. computer as it it is
an analog computer.
It we take advantage also ot the D-A or digital-toanalog converter capabil.ity ot the ~7A and the OUT command
in BASIC, we have the capability ot displ~ing the computer
results in analog torm as well.
The combination ot the ~7A and INP and OUT commands
opens up a new dimension in the use ot the digital computer

-----,---*The number 80 is the ASCII equival.ent of the l.etter P.
*Such a converter takes analog (or continuous) signals as input' and converts them into digital torm so that the computer
mq handle them.

--,-_.,,'-.-_._--

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

which ~be ex~lif1ed by an interesting modification of
the ubiquitous Lunar Lander simulation. In most impiementations of this pro$l'8m, the computer asks how much fuel the
user wants to burn during the following second. The computer
prints out the velocity of the lander, its altitude, and the
relilaining fuel at the end of the time interval, and asks the
uSer to enter his next decision about fuel.
Using the D+7A and INP and OUT commands, we can modity
the Lunar Lander so that:
a. the user enters the fuel to be burned continuously
using a potentiometer and INP command,
b. the computer, using the OUT command, displ8¥S the
remaining fuel, the velocity, and the altitude on
three voltmeters which might be labeled "Fuel
Gauge, n "Speedometer," and "Altimeter," resp.
This capability will make a whole range of· computer simulations much more realistic for the student. Essentially, the
combination of the microcomputer arid the D+7A board converts
the digital computer into a very powerful general-purpose
analog computer without the normal problems of the real analog computer. This mS¥ prove to be one of the most exciting
educational applications of the microcomputer once we fully
understand how to use this capability.
Some of this author's students have used an Altair 8800 B
microcomputer in an interesting W8¥ as a component in several
engineering design projects. These projects· are:
. a. The design of a device to convert printed text
into a set of electrical signals to stimulate the
skin of the abdomen and to replace the lost visual
sense by another sensory channel. The microcomputer
here is suppleillented by the Cromemco Cyclops digital
camera, which converts visual images into digital
signals which are processed by the computer to determine the patterns of excitation of a set of skin
electrodes.
b. The design of a typewriter which can be operated
by severel;r handicapped people who cannot use a
conventional typewriter.
c. The development of a biofeedback system to permit
victims Of cerebral palsy to control muscle tremors
which they cannot control normally.
There are other exciting capabilities which this author
hasn't yet had the time to explore, but which seem to offer
exciting possibilities for the educator. Among these are the
'J!V dazzler and other graphic devices, speech generators, ,.
speech recognizers, and music synthesizers.
What new things are In store for us in this area! it is
difficult to predict, but if the past two years is BlIY indication, the possIbIlitIes boggle the mind!

PAGE 164

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 165

CLASSROOM MICROCOMPUTING:
HOW ONE SCHOOL DISTRICT LEARNED TO LIVE WITH THE STATE OF THE ART
Peter S. Grimes, Curriculum Supervisor
San Jose Unified School District
1605 Park Ave.
San Jose CA 95126

Introducti on
Last year was a memorable year in San Jose Unified. The cost
of computers had finally dropped to a price we could afford.
After many years of dashed hopes we were able to demonstrate
that an amount of money which did not seem unreasonable
(about $25.000) would purchase an amount of student computing
power that was significant in terms of student contact and
curriculum impact. This investment. together with an older
8-user PDP 8/E time-share system, would place two computer
terminals in each of our six comprehensive high schools and
one computer terminal in each of our seven junior high schools.
The paper that follows is the story of how we achieved this
goal and coped with the attending problems. Ordinarily this
would seem to offer nothing more than a droll recitation of
how a school district purchased eleven microprocessors for
use in its mathematics classrooms. I was assured, however,
that we were at the threshold of a new era of classroom
computing and that our early experience with the new state of
the art would be useful information to other schools and
school districts contemplating the introduction of the microcomputer into their curriculum. We have run into some unexpected difficulties which you can avoid repeating. We have
given much thought to the role of the microcomputer in education. We have gotten involved with teacher inservice which
is important to the operation and use of a microcomputer as
contrasted to the operation and use of a time-share terminal.
We are very familiar with costs and can give some good advice
on what you will need in the way of hardware to get started.
We also have opinions about obsolescence. product support,
maintenance. and assembling your own system which should help
you form a reasoned opinion about microcomputers and education.
We are excited about what we have done this year! We have
formed a deep commitment to the future of classroom microcomputing. The micro-miniturization of digital electronics
continues to progress rapidly. The day of inexpensive
computing has arrived. Its effects on the curriculum will be
profound. We truly believe that we are in the midst of a
revolution of unusual significance to our culture. Since we
view what is happening as positive and beneficial. we are
convinced that the appropriate policy for our schools is to
advance in concert with what people are doing. The tide of
change is sweeping in rapidly. We should start to prepare
for the future now rather than be engulfed later.

Classroom Computing in San Jose Unified
Back in 1972 we purchased a PDP 8/E 8-user time-share system.
Starting with several terminals in only two schools. we
gradually expanded the system to its full 8-user capacity.
By 1974 we had one terminal in each high school and several
junior high schools. Programs to utilize the terminals
rapidly proliferated. With the additional help of programmable pocket and desk top calculators. our high schools
introduced programming into the mathematics elective curriculum. and junior high schools introduced computer literacy as
~ component of their required mathematics program.
Although this computer facility was very limited, it did
provide the incentive for teachers to become acquainted with
BASIC and it did lay the foundation for further development
as hardware prices dropped to within an affordable range. By
the 1975-76 school year it became apparent that with the
advent of microcomputers, a significant price breakthrough
had occurred. With encouragement from top level administration. we purchased an IMSAI 8080 machine in March 1976 and
evaluated it for a major expenditure program during 1976-77.
After some tinkering with the teletype paper tape reader, the
system ran without fault for eight months (when the paper
tape reader failed and we had to add an audio cassette I/O
for system loading).

By May 1976 we had concluded that microcomputers were reliable. that excellent BASIC interpreters were available and
that enough money could be made available to significantly
upgrade our computer resources. Price, reliability, and
software were the major ingredients of this determination.
But just as important to our considerations was the fact that
the phys i ca 1 'presence of a complete computer sys tem, as
contrasted to a time-share terminal, opened up vast new areas
of instruction which were previously out of reach (system
operation, assembly programming, and computer science, for
example). At a cost of about $3,000 for each system (we were
still committed to teletype terminals last year) we could
afford to place a computer in each junior and senior high
school.
The decision, then, was to enter into a two year program
which would provide one computer terminal in each of our
seven junior high schools, two terminals in each of our six
senior high schools, and a roving terminal for our elementary
MGM program. Moving toward this goal, we have purchased, as
of March 1977, a total of ten IMSAI 8080's and one Polymorphic 88 (the Polymorphic was a less expensive machine
which we wished to evaluate). Most of the machines were
configured with 12K of RAM and an MIO to interface a teletype
terminal and audio cassette for system program storage. We
chose the ASR 33 teletype terminal because students could
save programs on paper, a point which we thought to be
psychologically significant for the neophite programmer.
However, we did configure one IMSAI and the Polymorphic
system with a vidio interface and TV monitor, and two other
IMSAI's with Lear Siegler serial CRT terminals. This was
done partly to save money and partly to evaluate the suitability of systems which do not produce hard copy. As for
software, all of the installations are using 8K BASIC interpreters (which most math teachers consider minimal) with one
exception. We are using 4K ROM BASIC for the elementary
roving system. Although ROM is expensive, it does avoid the
hassle of loading the BASIC interpreter after each power
down--and 4K BASIC is perfectly adequate as an introductory
language for elementary students. To date, our elementary
system has operated flawlessly for six months with no operating difficulties on the part of the elementary teacher or
student.
During the 1977-78 school year we will need to acquire several
more systems to meet our two year goal. The advent of microcomputer time-sharing, however, may enable us to add more
terminals than originally planned. (Cromenco, a local manufacturer, is introducing an 8-user time-share microcomputer
for the school market.)

The Microcomputer Has Put Us in a State of Altered
Consci ousness
When we purchased our PDP 8/E system four years ago, we
weren't familiar with the rapid progress taking place in the
field of large scale integration. As a result, we were still
thinking in terms of expanding our time-sharing system in the
fall of 1975. Our goals were rather modest, consisting of
the development of computer literacy in the junior high
school mathematics program and continued expansion of our
support of computer programming in the senior high school
curriculum. When we became aware of the microcomputer, our
thinking underwent rapid and radical change.
With single terminal BASIC speaking systems available in the
price range of $2,000 to $3,000, it was quite obvious that
time-sharing systems were no longer cost effective. We
recognized that time-sharing, in situatlons where large data
bases had to be maintained, was still valid, but we also
recognized that our envisioned use of computers for instruction did not require data base access. It was clear to us
that even tutorial and drill and practice CAl, both of which
have fairly large memory requirements, could easily be accommodated by the relatively inexpensive ($1,000 - $2,000 range
with prices still going down) diskette mass storage systems.
Since our only reason for instructional time-sharing in the
first place was cost reduction, and since microcomputer
systems were each less expensive than the addition of a
single time-sharing terminal, we completely reformulated our
rationale for the use of the computer in the classroom.
After a few weeks study and interaction with local institu-

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA. 94302

tions like the Peoples' Computer Company and the Lawrence
Hall of Science we came to these conclusions:
•
•
•
•
•

•
•

Computers and computer concepts (DIP, CAl, Information Retrieval, Problem Solving, Computer Games)
should be introduced to elementary pupils.
Computer literacy should be forthrightly introduced
into the junior high school mathematics curriculum.
Computer programming and computer operation experiences should become a regular feature of the senior
high school elective mathematics curriculum.
A new course, Introduction to Computer Science,
should be added to the senior high school mathematics curriculum.
The use of computers as an instructional tool
should be extended into other curricular areas as
rapidly as resources permit (science, business,
social studies, for instance). Such uses would
include simulation, drill and practice, and problem
solving.
Broaden the definition of computer to include
programmable pocket and desk top calculators.
Modify the existing mathematics curriculum so as to include the obvious effects
that easy access to computers will have:
i.e., the phasing out of logarithms and
trig tables and the phaSing in of pocket
calculators as the source for these
functions; phasing out of the slide rule;
phasing in of iterative and recursive
mathematics techniques.

The logic which compelled us to make the above recommendations
were based on these very probable future developments:
•

•

•

•

Continuing micro-miniturization and the associated
drastic drop in costs will make computers and
related devices commonplace at work and in the home
(BASIC speaking pocket computers, home computers,
computer T.V. games).
Microprocessors will become common as control
devices in consumer products (microwave ovens,
home washer/dryers, electric typewriters, television, automobiles, clocks, watches, cameras).
Digital electronics will become a very large new
career area spanning all degrees of sophistication
and preparation in research, design, assembly, and
service.
Present industrial and commercial uses of computers
will expand dramatically (data processing, information retrieval, word processing, and process control)

The above points indicate that vast numbers of people will
need to become familiar with computer concepts of varying
degrees of sophistication. Millions of people will work in
the area of digital electronics as operators, service technicians, programmers, engineers, and research scientists.
Our entire population will become comsumers of digital
electronic devices. Indeed, as computers invade the home and
become as readily available at work as the typewriter and
calculator, various degrees of computer competency and knowledge will become survivor skills in a society characterized
by the commonplace application of digital electronics to
everyday life. It is this conviction that leads us to the
conclusion that computer literacy must become part of the
core curriculum of public education, that the effect of cheap
computing on the existing mathematics curriculum must be
accomodated, that computers and related devices should become
instructional tools, and that computer career electives be
included in the course of study at all deliberate speed. Our
students must be prepared for the new world which is going to
be so dramatically molded by digital electronics.

To Assemble or Not Assemble--That is the Question
Two years ago ALTAIR (MITS) brought forth the 100 pin bus and
the 5" x 10" "plug in" printed circuit board. Following
explicit instructions, it was envisioned that a novice could
assemble a complex CPU, 4K RAM memory, or serial I/O interface. After all, LSI had reduced enormously complex circuitry to small dual-in-line packages of N number of pins
which could be soldered into precisely matching plated through
holes in a PCB. True, there were still discrete components
such as resistors, capacitors, diodes and power regulators,
but they were easily handled. What was important was that

PAGE 166

complex logic circuitry had been reduced to functional
sealed units which were easily assembled as long as due
respect was given to the possibility of cold solder jOints,
bent pins, solder-bridges and the like. Thus~ with some
dextrous skill, even a 7th grade junior high school student
should be able to assemble a 4K or 8K RAM memory. plug it in
and have it work!
But wait! Is the real world really like that? We have had
numerous students and teachers assemble with results mostly
negative. The product more often than not does not work.
Sometimes the cause of malfunction is obvious. Indeed, look
for solder bridges and improperly inserted pins. Just as
often, however, the problem resides in a faulty DIP. I am
informed, for example, that a standard DIP such as a 2102
memory chip has a 5% failure rate in commercial kits. This
projects a probable failure rate of about P = 0.9625 for an
8K memory. The problem, then, is to have the expertise to
locate the failure. If one does not have the expertise. then
one must find it and then pay for it. Our assembling experience has been that whil e debuggi ng is commonplace and expensive (the going rate is over $20 per hour). we usually end up
paying less in total (kit plus cost of debugging) than the
cost of an assembled unit. Yet the satisfaction of a successful assembly is miSSing. and this can be a potentially devastating experience for a young student. Of course, one can pay
more for kits with hi-re1 components. but competition being
what it is. "high quality" is not presently a common characteristic.of the kit market.
Now, multiply the chance of a board assembly failure times
the number of assemblies in a microcomputer and then add the
complexities of the necessary input-output devices and one
begins to get a picture of the problems encountered in assembling and starting up one's own microcomputer system. Even
when a microcomputer is purchased from a reliable vendor.
troubles abound. One of our pre-assembled installations. for
example. had the following chronology of problems:
1.

2.
3.

4.
5.

Teletype printer errors
Memory failures during "burn-in"
Wrong microprocessor--a NEC 8080 was substituted
for an INTEL 8080. We found the BASIC interpreter
would not run with the NEC 8080.
Faulty teletype paper tape reader which characteristically dropped several bits during the course of
reading in an 8K byte tap~.
Fa 11 ure of a major microcomputer hardware manufacturer to release a bootsttap loader for its cassette
110 device (needed to circumvent the faulty teletype
paper tape reader which we were never able to
adjust).

Altogether it took us three months to get the system up and
running because of the time it took to obtain reliable technical help and the delays involved in trouble shooting and
getting spare parts. Of course we discovered some of the
problems ourselves. For example, after repeated telephone
calls to the manufacturer we were told: "Oh. you must have
one of those NEC processors! Our BASIC doesn't run with the
NEC 8080."
If you choose to' assemble for its educational value. however'.
help is available. Vendors and manufacturers are. beginning
to provide debugging and repair services of a quality and
cost which makes assembling your own system verY,worthwhile.
You will learn a great deal and your cost will still probably
be less than a fully assembled system. But there will almost
certainly be frustrations. Your system in all probability
will not work on completion of assembly. You will need help.
There wi 11 probably be 1engthy del ays and you wi 11 not be
able to determine the cost in advance for a burned-in successfully running system.
These problems can be extremely vexing and, because of the
delays, costly to morale. You will have to make your decision
whether to assemble or not to assemble based on such factors
as:
•
•
•
•

The educational va I ue to be gai ned
Availability of repair money
Your ability to trouble shoot and debug (which
very few educators can do)
Your tolerance for delay and other frustrations.

If we had this year to do over, we would do things differently.
We would not have assembled as many systems to save money; we

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579. PALO ALTO CA 94302

PAGE 167

would not depend on teletype paper tape readers for system
paper tape reader and punch.
program input; and, we would have purchased more functioning
systems complete with terminals and audio cassette input/output. Microcomputer mass storage is provided by the new diskette
storage systems. They have large file capacities (lOOK to
250K character storage) for data and program save. Assembled
diskette storage devices presently cost in the $1,000 and
Recommendations for Making Your Purchase of
$2,000 range including interfacting and software file manageMicrocomputers a Pleasant Experience
ment, but these prices are still subject to fairly substantial
reduction over the next year or two as technology and producIn purchasing your own microcomputer systems, I would recomtion gear up for the potential market.
mend the following:
The best microcomputer system, of course, would be a combination of hard copy and mass storage, but the cost of such
1. Do not rely on teletype paper tape readers (the ASR
33) to read in system programs such as a BASIC
systems would be in the $4,000 to $5,000 range at which point
interpreter. While some TTY's work, others do not.
we are back to examining the cost effectiveness of timeThey are quite satisfactory for saving short student
sharing.
generated programs, but lengthy tapes Simply multiply
the chance of failure to the point of near certainty
Before making a decision, you should compare microcomputing
and a down system.
costs to the rental for a time-share terminal. A typical
2. We have found CRT devices to be entirely satisfactory time-share .termina1 will be linked to a computer supporting
as student terminals provided the student can save
up to 32 teletypes. With SUPER BASIC and very ample file
programs on cassette tape. We have used commercial
storage, the average charge is $300 a month including all
CRT's (such as the Lear Seigler), television monitors communications costs and terminal maintenance. This monthly
with vidio boards and modified home television
rental computes to $3,600 a year, a charge which makes microsets. They all work with high reliability compared
computer systems very attractive.
to the teletype.
Adding additional fuel to the fire, an exciting announcement
3.
If youare buying an assemb1 ed system, I would
is being made this very month (April 1977). Cromemco, a
suggest you buy a complete turn-key installation
with a 90 day or longer warranty and a fixed delivery local microcomputer manufacturer, will market an 8-user timeshare microcomputer. Starting at about $3,000 for a basic
date. Don't do as we did by purchasing terminal
single-user system, additional user terminals (hard-wired
and microcomputer separately. That simple error
teletypes or teletype simulating CRT terminals) can be added
caused us months of delay in establishing our
for about $1,200 each, including all interfacing. For an 8systems because one vendor was not responsible. It
user system, fully assembled and installed, the cost per
is a simple fact that technicians representing
terminal would be aboubt $1,400. That's not bad for a teletype
different vendors have a very difficult time getting
system!
together. Even when computer and terminal are
purchased from one vendor, but separately, you may
What about maintenance costs? At this time our experience is
encounter extra costs and delays if the purchase
rather limited. We set aside $3,000 for this year's support
does not include installation and successful interfacing.
of our 11 microcomputers and terminals (including teletype
maintenance). It appears that this figure is within the ball
park. I think that $300 per year per single user system will
be about right for next year's maintenance budget. You
Costs and Configurations
should add about $100 to this amount for hard copy systems
using teletypes or other printers because they require periodic
attention for cleaning and lubrication.
A minimal performance secondary classroom microcomputer will
need to consist of the following components:
What about future costs? I hear talk of major manufacturers
Component
coming out with $500 "sealed units" which would drive T.V.
Approximate Cost
monitor terminals (or perhaps use home T.V. sets with antenna
Kit
Assembled
input). Software would be provided by plug-in ROM's. This
Central processor
figure seems not unreasonable to me. I would expect a good
$ 200
$ 300
12K of memory
BASIC with all functions intact, but no user program storage.
450
650
I/O interface (for cassette
Such systems would be ideal for general problem solving,
200
300
programming instruction and computer gaming and would make
recorder)
Cabinet and power supply
microcomputing in the classroom a forgone conclusion.
200
300
Vidio board
200
300
T.V. Monitor
150
150
Audio cassette recorder
100
100
Keyboard
Lack of Standardization
100
150
Miscellaneous cables and hardware 50
50
Operating system
They say every rose has its thorn. This is certainly true of
100
100
8K BASIC
microcomputing. Although microcomputing will have extraoro
o
dinarily desirable effects upon the public schOOl curriculum,
$1750
those very desirable effects may be significantly delayed by
$2400
the lack of standardization.
The opera.ting system is a software substitute for a front
panel. It enables the operator to manipulate the computer on
By being first on the market with a microcomputer, Altair in
the T. V. monitor instead of fl ipping switches and observing
effect established a defacto standard with their 100 pin bus.
All well and good. Different manufacturers could market
display lights on a front panel. A hardware front panel,
instead of an operating system, will cost from $100 to $200
devices which were hardware compatible with each other and
extra in kit, or from $200 to $300 extra assembled. The
reap the obvious benefits of an expanded market created by
BASIC interpreter and an assembler are either included free
such standardization. But things have not turned out to be
with purchase or 1isted separately at a low price, generally
that simple. We find that Altair BASIC will not operate with
well under $100.
an IMSAI I/O unless hardware alterations are made. Another
example of incompatibility is finding a BASIC interpreter
If the preceding is minimal, what would be considered better?
that will work with a Polymorphic vidio board in anIMSAI
machine. IMSAI basic won't; Polymorphic BASIC won't;. but
Two items: hard copy and mass storage. If a teletype were
Altair BASIC will (with modifications). What we are finding
substituted for the T.V. monitor and vidio interface, the
is that contrary to claims of the manufacturers true hardware
additional assembled cost would be about $700 (reconditioned
compatibility does not exist. While this may not be a large
teletype cost of $900 less $450 for the vidio interface and
problem to computer hobbyists who have the technical skills
T. V. monitor pl us $250 for a front panel (a hard copy system
to make hardware and software modifications·to accommodate
must have a front panel for computer control)). There are
the incompatibilities, there are large potential markets for·
much better hard copy printers on the market than teletypes-general computing in which lack of standardization will be
they print faster (30 characters per second vs. 10 characters
very harmful. The public school market is one such example.
per second) and are somewhat less expensive to maintain, but
Lack of standardization has certainly caused us problems by
they are more expensive at around $2,000 and do not have a

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

creating unexpected delays, added expenses, and reduced
selection of software options.
The problem, of course, lies in the added expense of custom
fitting a desired component into a system of different manufacture. Perhaps of even more significance is finding someone
to do the work for you. A perfect illustration of this
situation is the addition of audio cassette I/O. Seemingly
simple, it turns out to be quite complex. Not just any
cassette recorder can be used. The cassette interface board
must be "tuned" to match the recorder. Tapes dumped from one
system cannot be reliably loaded into another, thus severely
inhibiting program interchange. Software to load and dump is
'not readily available (we have had to pay for the development
of special software for our IMSAI's). Of even more importance
is the fact that very few BASIC interpreters allow user
developed BASIC programs to be saved. The save routines are
generally completely separate from the BASIC interpreter, are
awkward to use, and usually require the user to exactly
specify that portion of memory he wishes to save. Microcomputer users desperately need cassette file commands to become
a standard feature of BASIC interpreters. But this cannot
happen, of course, until cassette 1/0 technology becomes
standardized.
Perhaps of even more importance to the standardization dilemma
is the proliferation of BASIC interpreters. BASIC has become
the language of choice for large numbers of general purpose
computer users who program in the interactive mode. It is
certainly the lingua franca of public school classroom computing. And its popularity contin~es to increase as many of
its disadvantages, as compared to other languages, disappear
with steady improvement. BASIC has now evolved into SUPER
BASIC with added commands and functions, better format control,
more string manipulation, file capabilities, etc. But its
continued development has been accompanied by loss of uniformity.
Some systems use "" " for 1i ne "crunchi ng", others use ":".
One system will use "?" as a symbol for print, another the
"!". The conventions for the randomize function tend to be
quite different from one system to another. The list of
differences continues to grow as each microcomputer manufacturer releases his own version of BASIC. While this
competitive development encourages the continued improvement
of BASIC, it inhibits the exchange of programs in BASIC.
This is a significant problem in education. The Huntington
Project simulations, for example, were written in DEC BASIC.
But DEC BASIC is not compatible with any of the microcomputer BASIC's. Thus. a very signif~cant potential educational use of microcomputers, SIMULATION, is, at least for
the time being. stopped dead in its tracksl It is-almost
impossible for the end user to make the conversion. The
supplier, lacking the resources to translate into a dozen
or more versions of BASIC, does nothing!
Please bear in mind that I am not talking about "special
features" such as memory allocation, line length, and peek
and poke. Such special features can be added to BASIC interpreters while still maintaining downward Compatibility. The
problem lies in the lack of standardization in basic BASIC.
Aside from the fact that various user groups have their own
compelling reasons for more standardization, the microcomputer
industry itself must recognize that its failure to establish
a basic level of standardization will markedly inhibit information exchange which will in turn just as markedly inhibit
market expansion. If such a standard can be established, it
is a forgone conclusion that users will cooperate. The
Huntington Project, for example, will then be able to translate
their much desired simulations into a version of BASIC which
all users can use.

product Support
People have expressed the fear that some microcomputer manufacturers will not be around in a few years to support their
products. Some will have failed, some will be purchased by
larger firms, others will have dropped out of the market in
order to concentrate on other products. All of these things
will surely happen. Many of today's manufacturers will not
be here in five years to back their products. But this
really is not much of a problem because these manufacturers
are not providing very much support for their products now.
The low cost of microcomputer products is partly due to the

PAGE 168

deliberate absence of extensive product support. How can
such a state of affairs exist. you may ask. Quite simply,
the number of people engaged in digital electronics has now
reached the point where there is a sufficient surplus to
service the new markets created by micro electronics.
Hardware and software serviceS are now being provided b~
local computer stores. While not as commOn as radio and T.V.
repair shops. they are growing in proportion to the business
available. In addition, a large number of engineers and
technicians are moonlighting for fun and profit. So •..•• if
anyone advises you to postpone your involvement with microcomputing due to lack of product support, be assured that
they are setting up a straw man. There is a great deal of
product support, and it is growing in pace with the size of
the market. As with many consumer products, the support
services are provided by the vendor and small entrepeneur.
Small computers are rapidly becoming consumer items and will
be serviced accordingly.

Wh~t

About Obsolescence?

I don't think there is any question that a microcomputer
purchased today will be technically obsolete in five years.
But that does not mean that you cannot continue to use it for
years after. Our PDP 8/E time-share system is now technically
obsolete. But it is still less expensive to maintain than to
replace it. Even though it has ferrite core memory and lacks
the LSI devices that make microcomputers so relatively inexpens i ve, a11 of thi sis transpa rent to the user. Programming
and other computer science concepts have remained essentially
the same for years. I would estimate that it will be five or
more years before maintenance costs for the 8/E will exceed
the replacement cost. And application deficiencies should
not be noticeable for an even longer period of time. The
same should be true for today's microcomputers. Such long
life is not true for many business and industrial applications
where other factors such as throughput have extreme importance.
The low sophistication requirements of pre-college educational
use, however, argues for relative long life.

Teacher Inservice
To date, educational computing has mostly been a time-sharing
affair. The central computer was operated by a specialist.
The teacher or student did nothing more than turn on the
terminal. Microcomputing is somewhat different. There is a
computer to operate. How is the BASIC interpreter loaded?
What is a bootstrap? How are computer memories organized?
How do computers compute? What does the front panel do? Why
do we have to learn hexadecimal? These questions must be
answered and the skills learned by the teacher so that he or
she can be responsible for the operation of the microcomputer.
Because of pre-service experience and because we have had a
small time-sharing system for four years, mathematics teachers
in San Jose Unified were well acquainted with BASIC and
computer programming in general. They also had some expertise
with binary and octal arithmetic because these topics were
introduced into the mathematics curriculum as part of the
"modern math" improvements of the 60's. But operating a
computer? Our teachers were completely unprepared! What
teacher ever expected to have a computer system for classroom
instruction within his or her lifetime?
To rectify this situation we contracted with Don Inman of the
People's Computer Company in Menlo Park, California. For
nine two-hour sessions every Monday after school last fall,
over thirty secondary mathematics and science teachers voluntarily gathered together to learn about microcomputers from
Don. Believing hands on learning to be the only way to go,
each of our secondary schools (13) purchased a small single,
board microcomputer of local manufacturer called the Data
Handler. Made by Western Data Systems of Santa Clara, California, it cost $160, used a 6502 microprocessor, had a hex
keyboard for input and control and employed LED's to display
output and the data and addres,s busses. These microcomputers
were purchased as kits, assembled by the teachers and then
used to learn about computer architecture and operation,
machine level programming, input/output routines, etc. Most
of these same teachers are continuing with another series of
nine meetings this spring. The Data Handler microcomputers,

FIRST COMPUTER FAIRE PROCEEDINGS

by the way, are being used by students when not being used by
teachers.
Next year many of our teachers hope to participate in a
National Science Foundation funded Microcomputer Teacher Inservice Institute to be conducted by the Lawrence Hall of
Science (if their institute proposal is approved). This
institute, to the best of our knowledge, will be the first
ever offered to secondary teachers. Just think, when people
ask where it all started, we can say that it started right here
in the Bay Area. That's a good feeling and a good thought upon
which to end.

BOX 1579, PALO ALTO CA 94302

PAGE 169

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 170

THE CONSTRUCTION, OPERATION, AND MAINTENANCE OF A HIGH SCHOOL SYSTEM
dream system." Our cheap system cont:ain~d ~j1e
ALTAIR 8800 with: 8K RAM memory, one RS232
interface, a fan, and 8K BASIC. The. I/O
device was to be the SWTPC CT-1024 wh.i,ch,we
Melvin L, Zeddies
1854 Pacific 8each Drive
would also construct. It was to include an
San Diego CA 92109
RS 232 serial interface, and a manual cursor
control. The actual T.V. for the display ,was
donated by the parents of one of the students.
ABSTRACT
Our dream system contained: The,ALTAIR
8800, 20K RAM, 3 RS232 serial interfaces, fan,
Developing ,a computer system from kits was
vectored intercept, and a cassette tape interface,
a very stimulating educational experience for
two CT~1024's, each with a manual cursor control,
high school and junior high school studeJ?ts.
and a screen read. Also, we hoped to purchase
There were, however, problem area~: fund~ng,
an "old" (reconditioned) typagraph, model 3, so
bureaucratic red tape, and a mult~tude of
that we ~Jould have the capacity to produce hard,.
skeptics. Overcoming these problems lead to
copy when needed.
'
the formation of a self developing group of
We felt either of these two systems would
students who were anxious and very able to
provide a beginning and that from ,them we could
solve problems in the administration of schools,
build additional pieces of equipment as both money
thp i.nstrllctional programs, career development,
and items became available. We would also attempt
while they attempted to create a new computer
to build a system, whereby we could provide comscience instructional program.
Juter services to others on the high school campus;
Personal computer systems available in
for
example the physical education ,an9 science
kit form provide a foundation upon which to
departments. Also in our minds was the possibility
challenge the educational programs in o,ur
of freeing ourselves from the timesharing system
schools, and human, as well as technological
we were presently uSing, and paying for at a rate
change.
of about $2200 per year. We realized that we would
probably have to do some software development,
especially if we wanted to timeshare "our" system.
However, we were prepared to launch into that aspect
once we had our system in operation,.
The recent development, and marketing of
Our next step was to locate funds an,d obtain
personalized computer system kits is destined to
the necessary authorizations to be able to use them
force changes upon educational institutions that
for the purchase of our system. No one in the ,school
have not' been remotely anticipated at this time.
system seemed to know what we were talking about, at
Students will arrive at the door of the school
t:1is stage. No one knew who would have to authorize
with an ever increasing store of experience and
such, a purchase because all EDP equipment was purknowledge of computers. This will create a
chased by the EDP Department for their use only.
demand for new courses, updating of existing
Finally, after some time and several discussions we
courses in a radical manner, and will require
COnvinced the principal to authorize the purchase
teachers and administrators to become familiar
with instructional funds, thereby avoiding the EDP
with the language and thought patterns of the.
Department and prodUCing a new procedure. Now the
computer age student. We are not only referr~ng
problem of identifying a particular sum of money for
to high schools, and college levels, we are
such a ourchase was approached.
including junior high schools, and elementary
In California there are two types of cateschools, even the kindergarten child will be
gories for the purchase of school items, capital
coming to school with a computer background.
outlay and instructional supplies. Generally speakThose of us who can remember back several
ing capital outlay is used for permanent, non- .
years recall the term "generation gap" which was
consumable items, while instructional supply mon~es
used rather generously to cover many aspects of
are used for the purchase of items that are conhuman behavior. l'le are now at a point in history
sumable and/or changed in the instructional program.
where we need to consider a "computer gap." Our
We convinced the principal that since our system
generation (those of us over 30) does not have
would come in kit form it should be classed as inan "easy feeling" about "the computer", the
structional supply, as are other kits, such as radi~,
younger generation does. Their entire life span
calculators, etc., that the industrial arts departhas been coincidental with that of the computer.
ment purchased of a regular basis. He agreed to the
The younger generation accepts the computer in
instructional supply argument and we then proceeded
the same "taken for granted manner" as we did the
to obtain "spending rights" to as much instr1lcti~nal
car and the radio. They see implications and
supply funds as possible. We traded with other
applications that we will not see, they will plunge
schools who had over spent in a category where we
ahead into areas that we would never even consider
had underspent, etc. I'le also traded, teacher
venturing into. We do not have a "background"
assistant time for instructional funds"and exthat allows us to include the computer in explora:,;lored every possible source of funding short of a
tions in a natural and unlabored manner, as the
Federal Fundina proposal. The sources of funds we
younger generation does.
considered included; curriculum consultants, innoWhat must we d07 I would like to describe
vatj:on grants, P.T.A., industrial sources! fund
what 'we have attempted to do at one high school,
raisina activities of all types, and trad~ng away
in one school district, with one teacher and
some of our next years funding.
apprOXimately six stUdents.
To our surprise, we found within a very
In late February 1975 several students and
short time and a few key trading deals, we ¢ould
their teacher met to discuss a recent article that
purc,hase our dream system plus a floppy disc.
had appeared in a "do it yourself" magazine,'it was
Our troubles ~lere not over thpugh. Ille had purchased
an announcement of the MITS ALTAIR 8800 computer
the ,typograph and it had just bee l1 delivered when
kit. We had all read the article and had agreed
a directive was issued by the EDP Department
to 8et together to explore the possibilities of
stating that all purchases of EDP equipment must
obtaining such a kit. It didn't take long for us
be cleared through their office. vie took them
to agree, it seems we had already made up our minds. literaly, and since our system was not equipment
All that remained for us to do was to settle upon
there was no need to have the cleared.
the characteristics of our system and look for the
Our system was ordered in Ma.rch 1975, and
money to pay for our "dream." A week later we
it c,ontained: the ALTAIR 8800, with three RS232
again met and agreed that we needed to make a
interfaces, 20K RAM, a floppy diSC, disc controller,
telephone call or two for some particulars. We
Extended BASIC, a cassette interfa~, two SWTPC
'
made calls,'one to MITS and one to SWTPC; both
CT-1024's each with screen read and manual cursor
were more informative that we antici'pated.
control.
,
We drew up listings of two systems; the
The first kits to arrive were those for the
first was the Cheapest, and'the second was "our

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 171

SI'ITPC CT-1024' s. These kits went together without
own maintenance. The only problem we could
difficulty and worked the first time they were
envision was developing an ongoing supply of
fired up. \'Ie now began to use these (CT-1024)
technician/students to insure the well being of the
for I/Os on the timesharing system, and allowed
system. This problem was solved by developing a
the students to check them out over night and
small group of students into certificated maintenance/
also over the weekends. The only complaint came
operators. The training cycle was to include
from parents who were concerned because the student
several students from each grade, with the sophopmores
who had checked the terminal out would arrive home
working with experienced juniors and seniors. These
with a group of students who did not leave until
students upon completion of a specific training
the early morning hours. They would keep the phone
program were to be licensen ~s svste~ maintenance/
line in use from the time they arrived until the
operators. Only licensed personnel were allowed to
parents forced a system shutdown, sometimes as
perform diagnostic work on the system, pull boards,
as late as 1:00-2:00 A.M. Our SWTPC terminals,
replace components, and checkout the system.
in spite of being carried around and banged about,
The original authorization for this course
continued to function quite well. After two years
was given by the principal of the school, however,
of operation, we have only had to replace a few
the central office personnel were reluctant to
of the keyboard switches, everything else remains
authorize it because it did not fit into mathematics,
in operation without modification of any kind.
science, industrial arts, and a computer science area
Several months later our ALTAIR 8800 arrived, (and still does not exist at this time). We even
and with great fanfare and the taking of pictures,
tried to have our course considered as a career
it was unpacked and looked at with great anticipation~ducation experiment, but that was also turned
vie even put the front panel together and propped
down. We were finally considered to be interit in the case so we could see what "it" really
disciplinary in nature and therefore, the junior
looked like. Many students stopped by to see
administrator was designated to oversee the
what we were doing and to look at our front panel.
course.
The construction of the ALTAIR went along
The official course title, "Computer
quite smoothly. The only problems encountered
Technology 1-2", was approved finally. The
during the construction involved trying to locate
course included:
the latest field changes and incorporate them into
1. The development of computers in the
our system. Then there were several transistors
historical sense, including the
soldered in wrong, a fe~l ICs were upside down, and
impact upon humankind, with c:onjectures
a few ',lisread capacitors. Problems were also
for the future.
caused by solder bridges and flakes of solder, but
2. The foundations of computer mathematics
these were found by using a strong light and small
including basic Boolean Algebra and
wire brush. Finally, after only three weeks, it
Logic, stressing TTL.
was time to apply power to our system. IT didn't
3. The electrical circuits that are used
quite work they way it was supposed to.
in hardware including, AND, OR, NAND,
The most difficult task was getting all the
NOR, FF, also ICs with LSI, and MSI.
bugs out. It took us about a month of work, checkir
4. Components of a computer system at the
and rechecking everything in each part of the systen
block level including basic components
to get to function properly. This troubleshooting
such as CPU, memory, etc, also the diSC,
period pointed up tr.e necessity of keeping an
cassette interface, and other peripherals.
operation log, detailed notes on troubles, a
5. The component level of computer systems
skepticism in believing schematics, and double
that includes individual functioning of
checlcing everything, taking nothing and no one for
components in all sections of the computer
granted. Some of the problems we encountered were:
system. This level is one below the
several parts were missing, the schematics were
block level of each board or assembly.
wrong for the 4K memory boards, the memory ICs
6. The use of test equipment includes the
arrived three weeks after the baords and did not
YOM, Dm~, Oscilloscope, IC tester and
work at the proper speeds, the factory field change!
handtools. The interpretation of data
were not sent to us, and finally, the suggested
is also a portion of this section.
(bv the factory) change in the deposit circuitry
7. Troubleshooting the system includes
didn't work.
the block level, co~ponent level,
The task of getting our system to function
component replacement, and system
properly presented a problem that required the .
checkout.
development of a systematic approach, and emphas~zec
8. Comprehensive examinations to cover:
the need to be aware of one's assumptions. One
Theory of computers, computer operation
of the most common assumptions we made which
and checkout, and troubleshooting.
caused us difficulty was that there was only one
Those students satisfactorily completing this course
deficient part causing the problem. One never
are to be granted a license to operate and maintain
knovis if this is true until the system is again
the computer system at Morse High Schonl.
working well, and the possibility of multiple
The materials used in the preceeding course
malfunctions cannot be overlooked.
include: Kemeny, J. Man and the Computer, Streater,
Troubleshooting also demands the use of
Integrated Circuit Logic Elements, and the system
test equioment. Our system also included a
manuals for MITS ALTAIR 8800.
digital m~ltimeter, an IC tester, and oscilloscope,
At the present time the computer has been
as ~lell as the needed handtools. The use of these almost totally neglected as a useable tool in the
instruments and the interpretation of their ininstruction program of most schools, only isolated
formation again dema'nded some knowledge of the
exar.lples exist of the use of computers in the
theory of the computer system (note also the
instruction program. The advent of personalized
assumption that they are functioning properly).
computer systems will force the schools to include
The students at this point began to obtain a
it into all areas of the curriculum. Our system
thorough understanding of TTL and how the computer provided us with some very important insight into
was supposed ,to function.
the use of computer systems, these inSights are:
h'hen our system finally worked as we thought
1. Young children can understand the internal
it should it was a great feeling for all of us.
workings of computer systems.
We had accomplished a truly challenging task; had
2. Students at all levels can develop very
done what many thought we could not do. Those
sophisticated sofblare in a relatively
people who had supported us, skeptically, were very
short period of time.
impressed. \~e were all filled with a real sense of
3. Students are very creative in the use of
accomplishment and pride in our achievement.
the computer.
As soon as our system was in operation the
4. Students can be very helpful in solving
EDP Division issued another directive, they would
some of the problems at a particular school,
not authorize any parts of our computer system to
especially when USing a computer.
be placed upon the normal district maintenance
5. Adults(teachers and EDP personnel) can
contract. This was great, because we had the
become very threatened when students start
knowledge, experience, and equipment to perform our
using EDP equipment in creative ways.

FIRST COMPUTER FAIRE PROCEEDINGS

PAGE 172

BOX 1579, PALO ALTO CA 94302

all areas.

6. Develop a counseling service that would
handle the mundane record keeping for
the counselors.
7. EDP attendance, dumping information onto
cassettes for easy storage. Maintaining
an entire year of attendance records,
which would be of immense benefit to
the administration of the school.
S. Programming students into classes, also
stored upon cassettes for further,

that can be replaced by a computer deserves
such a fate.

8. Students gain insights and understandings
in areas by beco~ing involved in computer
applications in those areas.

9. What ooppens (almost always good) many times
when students and computers interact can

not be anticipated.

ir.1plementation.
Toe proposed courses are:

fequired

some software development however.

5. Development of heuristic applications in

7. Any teacher, administrator, or EDP person

These ~oints of awareness lead us to develop the
following courses of study to be used with our
computer system.
However, at this time because
some teachers and administrators can not understand
the need nor the content of the proposed courses,
an official authorization has not been given for their

Tliis

to the science department.

6. The computer may solve some problems, but
its use generates many other problems that
need to be resolved.

reference.

No doubt more applications exist and have
already been explored, but the fact that students
were using their energy, and talents in a positive
way to solve some of the school's many problems
was very important.

COMPUTER APPLICATIONS IN NATURAL SCIENCE. This course
woulrl provide the student with the opportunity of
exploring computer applications in the areas of:

mathematics, including: numerical analysis,
nu~ber theory, ordinary and partial differential
equations, modern algebra, matricies, geometry, etc.

The schools are in for a tremendous amount of
change, forced upon them by the availability of cheap
computer systems. The students who attend schools
now and in the future will have an ever Increasing
familiarity with computer systems. At this time
it is possible to develop a functional computer
system from kits with high school and junior school
students constructing, operating, and maintaining

CONPUTER APPLICATIONS IN THE BEHAVIORAL SCIENCES.
This course would ~rovide the student with the

such a system.
The use of

opportunity of exploring computer applications in

the curriculum of the schools will require some
additional courses being made available to students.
Teachers will need to realize they may never be
able to understand the products of IT\any students
in the area of computer science.

biology, phYSiCS, chemistry, and any combination

of these areas.
COHPUTER APFLICATIONS IN !·:ATHENATICS. This course
would provide the student with the opportunity of
exploring computer applications in the area of

the areas of pSYChology, political sCience, history,
economics, sociology, anthropology, as well as
combinations of these fields.

CONFUTER APPLICATIONS IN BUSINESS. This course would
provide the student with the opportunity of exploring
computer applications in t:le areas of: marketino.
finance, management, advertizing, or any combination

of these areas.
HEURISTIC APPLICATIONS OF COr·IPUTER SCIENCE. This
course would allow the student to explore applications
in such areas as: music, art, dance, literature,
counseling, etc.

CONPUTER TECHNOLOGY.

This sequence of four semester
courses would provide the sutdent with the opportunity
of learning the tr.eory, operation, and repair of
?ersonal computer systens.
Also provided is the
opportunity to design a small computer system,
experimenting with circuits common to the industry.

personal computer

s~'st~ms

in

Personilized computer systems are here, NO\oJl

The battle behleen the big vs the little system is
over.

Guess who had won?

BACKGROUND/BIOGRAPHY
Nel vin L. Zeddies was first .ini tiated into
the computer faternity in 1957 through the courtesy
of the U.S.Army and Fort Bliss, Texas. He has
continually "played" with computers since that
time, constructing a tlcrude" computer with junior

Finally, the opportunity of constructing one's

high school students in 1966. In addition to
teaching mathematics in the San Diego schools,
he has been involved in many NSF Institutes in

own system is also provided.

mathematics and computer science as a faculty

INDEPENDENT STUDY IN CONPUTER

LANGUAGES.

This

course l;!ould al101tl tr.e student who desires to

study a computer language other than BASIC, FORTRAN,
or COBOL, the opportunity of developing a fluency
in a language such as, ALGOL, PL/1, APL, RPG, etc.
INDEPENDENT EXPLORATIONS IN COlcPUTER SCIENCE.
This course would allow the student who desires to
acquire a deep understanding

of computers and

computer technology, to work at the compiler/
translator/interpreter level of programming.
These courses were to be in addition to

the regular offerings: Introduction to Computer
Science, a course in BASIC programming; FORTRAN IV

a course in programming in FORTRAN.

These two

courses were the only ones available to students
within the current curriculur.1.
The, preceeding courses were to be phased into
existance over a period of several years, and were to
be offered during one time block with different

students stUdying different courses within the same
class. Credit would be granted upon completion
of their course work and demonstrated kno>lledge
of the contents of the course. This de~onstrated
kno\>lledge would usually take the form of a
demonstration for the instructor on the equipment or

the presentation of appropriate software

Currently on leave from the San Diego

scnools, he is serving as professor of mathematics
and computer science at United States International
University, where he has also served as Assistant

Dean.

He is currently developing the area of

pe,rsonalized computer applications at U.S.I.U.
He is rr.arried, and he and his Wife, Marcia, have

two children of the computer era, Marlene (9), and
V,ark (7). He has an A.B. from San Diego State
College, N.A. and Ph.D. from United States Internationa
International University, also a post doctoral
year of study at U S.I.U.'s Institute for
Educational ~;anagement. He is presently interested
in humanistic r"athematics, reading instruction
for small boys using computers, and technological
extensions of humankind.

BILBIOGRAPHY
Kemeny, John.

Nan and the COJ"puter.

Ilew York:

Charles Scribner's Sons, 1972.
Streater, J. vi. Integrated Circuit Looic Elements.
New York: Howard 'II. SC\ms, Inc., 1974.

items.

Where can your system be used in the school
program to enhance the learning of students? \ve have
found there are a variety of applications, ~any of

which demand some form of mass storage and a large
core.
(Our. system had 20K of core.) Our thinking
was along the following lines:
1. The phySical education department liked
to have their statistics kept and we would
do it for theM.
.
2. Some diagnostic information relating to
the behavior of our teams, and the
opposing teams could be analyzed by our
syste~,
Our students had developed
software to be used in basketball, and
baseball which had proven to be helpful.
3. Simulations for the natural and social
science classes could be developed and
used with our system.
~.

mer.ber.

A timesharing service could be offered

Ze:ddies, 1'-1. L., et. al.

Indi vidual i-zed Tnstruction

for Gifted Students using Computer TimeShare Systems. San Diego: San Diego City
Schools, 1974.

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 173

EDUCATING PEOPLE ABOUT PERSONAL COMPUTING: A MAJOR PROGRAM AT THE LAWRENCE
HALL OF SCIENCE
Bob Kahn & lee BerlTlln

.....rence Han of Science
University of California
Berkeley CA 94720

*Agreatly expanded and more general version of this
paper entitled: PubUa Aaaess to Personat Computing:
A NBIJ1 Rote for Scnenae Museums, is publ ished in
COMPUTER Magazine of the Insitiute for Electrical and
Electronic Engineers Computer Society, April, 1977.
Traditionally, one thinks of the museum as a
repository for stuffed animals, art, and artifacts from
the present and past. The science museum Is often a
maze of exhibits (frequently automated by push buttons
and floor mat switches) illuminating various aspects of
science, history, or technology. Likewise, a popular
mass media image of the computer depicts a row of
magnetic tape drives lining the walls of an air-conditioned,
false-floored, glassed-in room where specially trained
computer operators and programmers huddle around a central
console of . bllnking lights.
From an educational standpoint, both the museum and
early generations of computers, whose Image is depicted
above, have shared a common characteristic: they have
tended to be static and passive. They have offered the
public little opportunity for participation or access to
technology. A museum visit often' involves a lot of walking,
looklng,and listening, but' I ittle touching or participating.
And, for those who do not already use computers In business,
school, or the university, public access has generally been
vicarious, or limited to computer output only.
However, computer technology has advanced considerably
beyond what the public has experienced, and some sclencetechnology centers are re-deflnlng their traditional role
as a community showcase and repository~ This paper discusses
ways in which the Lawrence Hall of Science is making
modern computers accessible and understandable to the general
public.
Slowly, people are becoming aware of the potential power
computers have in areas beyond business and data analysis.
With good software, the computer can become a personalized
tool for extending the mind: a personal laboratory for
simulated experimentation, an artistic medium, an information
retrieval system, a gaming opponent and personal entertainment center, a teacher, a sophisticated editing facti ity,
and of course, a programmable calculator--all in the same box.
This is the essence and the power of· personal computing.
When people (particularly children) have been exposed to
personal computing, they search out and demand access to It.
This demand is evident in the proliferation of homebrew
computer clubs, microcomputer kits, hobby shops, and computer
hobbyist newsletters. But awareness of personal computing
power must spread far beyond the hobbyist movement.
While one no longer needs a crystal ball to foresee a
computer in every home, it will still be a number of years
before everyone's television becomes a terminal. In those
intervening years, it is imperative that adults and children,
not Just professionals and hobbyists, achieve a reasonable
level of computer awareness or oomputer Ziteracy. Computer
literacy has been well defined In a recent report by
Roy Amara'et al. for the Institute for the Future as
the understanding of bqsia aomputer functions intemrs of
",hat aomputers aan and aannot do. with partiautar attention
to their potentiat. aSI4etl. as their timits. in meeting
human needs. Whi Ie many recent books and films have
attempted to speak to this need, computer literacy can be
more quickly and effectIvely achieved by giving the general
public direct, hands-on access to computers in a nonthreatening, rel"axed learning envl ronment.
One type of Institution that Is Ideally suited to
provIde public access to computing is the science-technology
center--not the traditional science museum described
earlier, but an emerging new type of activity-oriented
community learning resource devoted to furthering the
public's appreciation for the methods, tools, and principles
of science and scientific research. Unlike the traditional
museum, the hallmark of science-technology centers Is
disaovel'lf learning or teaming saienae by doing saienoe.
Instead of rows of glass cases protected by signs and
security guards, modern science centers encourage visitors
to touch objects, manipulate controls, participate in
workshops and classes In an Informal, non-school mu,eum

environment. Clearly, interact.-ve computers and computer
terminals would be right at home in such places. Indeed;
most science-technology centers recently built or still
in the planning stages have made proviSions for computerrelated exhibits and activities.
Of the 167,000 children and adults who visited the
Lawrence Hall of Science (LHS) in 1975-76, more than 27,000
(or 16%) of them came specifically for the'purpose of
gaining access to computers through various workshops,
classes, visiting school programs and regularly scheduled
public usage hours. In addition, LHS Is engaged In providing
an educational time-sharing service to local schools. The
LHS (NOVA aOO-based) time-sharing computer system presently
reaches more than 40 schools and educational Institutions
in Northern California including a Montessori school,
elementary, Junior and senior high schools (both public
and private), the California School for the Deaf, Junior
colleges, four-year colleges, and some departments of U.C.
Berkeley and U.C.L.A.
The Lawrence Hall has put considerable thought and
effort into building a computer education facility that would;
simultaneously meet the needs of public visitors and vtst~lng
school groups and extend computing out to local schools and
the San Francisco Bay Area community, Including a new program providing home access to computing at low cost. On a
smaller scale, LHS Is following In the footsteps of Dartmouth
College, adopting the philosophy of Dartmouth's president,
John Kemeny In his book, Man and the Computer. Kemeny
describes Dartmouth's computing facility as an Intellectual
resource for the community, like a library, where computing
power is freely accessible to the community.
On such a philosophical basis, over the past six years,
LHS has defined three major objectives for Its computer
education program:
1) To educate children and adults about the milieu of
computers in an enjoyable, Intriguing, non-threatening learning environment;
2)

To offer the public hands-on computing at low cost;

3)

To develop an exportable educational program of
computer activities that will serve as a resource for
schools and other learning centers and public
educational Institutions.

Lawrence Hall has attempted to meet these objectives through
a variety of activities and programs. Several terminals
are openly accessible to visitors In Lawrence Hall's exhibit
areas. These terminals offer a limited selection of games
and simulations. Two of these terminals form an Integral
part of a new exhibit on energy uses and alternative sources.
LHS has an extensive program for visiting school children, and the Hall's two computer terminal rooms (each
containing ten teletypes) assure that each individual ,student
receives a maximum amount of hands-on experience during hls/
her hour in the computer laboratory. The two computer terminal rooms are also used for after-school and In-service
classes and for public computer access. LHS offers a complete
series of computer classes (to more than 1000 children and
adults) throughout the year. The courses are designed to
meet the needs and abilities of students at various ages from
eight years to eighty. They cover topics from computer
literacy for children and adults, to programming and theoretical and applied topics In computer science.
However, exhibits, courses, and workshops provide limited
or structured access. LHS also offers unstructured actess
to computers. People who simply wish to sit down' at a
terminal and execute any program of their own choosing from
the Program library or even write their own programs (often
exercising skills previously learned in workshops and classes)
may do so on the weekends, Thursday evenings, and Friday
afternoons. At these times, Lawrence Hall opens one or
both of its computer-terminal rooms to the public at a cost
of $1.50 per hour. A person simply buys a ticket which
reserves him/her a terminal for an hour (half-hour tickets
are available for 75¢). Furt!1ermore, LHS has allocated some
ports on Its time-sharing system for home use by its members at a monthly rate comparable to Its educational rate;
a much lower rate Is available to members wishing home access
restricted to evening and late night hours.
The Lawrence Hall of Science represents an active
campaign by a science center to educate the members of its
COIIIllunltt about the power of personal computing. It'provldes
for, Increased public awareness of computers in an informal

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

learning environment; it also offers options for more Indepth, formal learning through classes. Host important, it
offers an opportunity for personal exploration of Interactive
computing through freely accessible, but structured exhibits
and through direct, unstructured, self-motivated hands-on
access, including access to individuals in the privacy of
their own homes. For the mid-1970's, this represents a large
step toward making computer power available to the community.

Robert A. Kahn has been the director of the Computer
Education Project at UC Berkeley's Lawrence Hall of Science
since'June, 1972. During this time he has also been studying
for his Ph.D. in education. As part of a Haster's project,
Kahn developed an introductory computer course for 8-10
year old children. He is currently interested in facilitating
informal learning in' the museum environment.
Lee Berman is coordinator of computer activities at
the Lawrence Hall of Science. He is responsible for
Lawrence Hall's computer outreach program, and in this
capacity, he maintains constant communication with and
provides support for more than 40 schools and educational
uS.ers on the Lawrence Hall time-sharing system.
Being a candidate for a Ph.D. in romantic poetry,
Berman has naturally gravitated toward computers. His
responsibilities also Include editing the LHS computer
newsletter, EducationaZ Computing, and maintaining the
LHS library of computer programs.

PAGE 174

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

PAGE 175

CAl ANSWER PROCESSING IN BASIC
response. Blank the answer variable.
to calling routine.
4.
Franz J. Frederick
Education Building. Room 112

West Lafayette IN 47907

Return

If no match in step 3, check to see i f all keywords have been com.pared without success. If
so, print an incorrect response message, record
indication of incorrect response and record the
student's actual response. Blank the answer
variable. Return to the calling routine.

CALLING PROGRAII DESIGN
The presentation deals with the implementations

of algorithms for keyword answer processing and phonetic
answer processing. The algorithms are implemented as
subroutines in extended BASIC. Completely commented
listings are included.
There are over 30 computer-assisted instruction
languages in existence. Of these only one (PLANIT) is
"machine independent" to major extent. None are available
currently (publicly at least) for use on micro-computers.

The design of an answer processi,ng routine is dependent

to some extent upon the design of the calling program.

Most CAl languages treat lessons as blocks of information
to be presented to the student. The block may be composed
of (1) information to be displayed, (2) question, (3) specified answers to be compared to a student's response and
(4) actions to be performed dependent upon the quality of
the students' response.
A suggested block in BASIC would be as follows:

The major design intent of these languages was centered
around the notion of providing certain basic computational
capability for use by teachers. It was assumed that these
teachers should be able to use the language without being
experienced programmers. It was also assumed that the primary
use would be tutorial based upon sets of questions and
answers.
The first efforts at answer processing involved exact
answer match. After initial experimentation, teachers began
to discover that exact answer matching simply was not
effective for many types of tutorial lessons. For example,
the student's answer to a question might have the same words
in a different order and therefore be counted wrong. The
exact answer match implicitly required exact order as well.
This dilemma lead to the development of keyword answer
processors. In this case, the author specified a keyword
and if that word occurred anywhere in the student's response,
the response was considered correct. Embellishments
quickly became necessary and included such things as (1)
multiple keywords and (2) allOWing the keyword to be embedded
within a larger word. This latter feature allowed the
student to respond with the plural form or past tense of
the authors' answer and still be considered correct.
After some further experimentation teachers began to
find th~t exact order of keywords was indeed important and
desirable for some. lessons. Consequently, the next major
embellishment of keyword processors allowed stipulation of
exact order or no order. These developments in keyword
processors were not only very useful in the standard automated lesson but opened the way for experimentation with
simulated conversational interaction. The counselor-patient
types of simulations became possible providing the teacher
could specify reasonable anticipated questions or question
sequence which could reasonably occur in real life situations ..
The developments were rather useful in computer-assisted
instruction applications but basically were available only
in CAl languages. Dle actual implementation, of answer processors usually treats the processors as language functions
with parameters.
With the advent of low cost micro-processors and in
particular the advent of multi-user micro-processor systems,
the ideal of low cost CAl in the classroom seems possible.
The only generally available higher level language currently
on micro systems is of course BASIC in more or less extended
versions. BASIC does not have, however, embedded answer
processing functions except at the exact answer level. This
means that the CAl author must create his own code to do
these functions and repeat it extensively through a lesson
or create generalized subroutines for these functions.
Recognizing that it may be some time before a micro
CAl language is generally available and that extended BASIC
with string functions is likely to be a defacto standard,
the author designed a generalized keyword subrou.tine in
BASIC. This subroutine was designed to allow specification
by the author of up to five keywords and to allow the author
to specify how many must be matched in order to be considered
correct.
The keyword algorithm is as follows:
KEYWORD ALGORITHM

1.

Compare each author keyword with student's response.

2.

If a keyword matches, increment the match counter.

3.

Cc;nopare the match counter with the authors'
specified number of matches. If equal, print a
correct response message, record indication of
correct response and record the student's actual

EXAMPLE OF "BLOCK"
500
505
506
510
520
521
530
540
550
560
570
580
590

PRINT "NAME A PROPERTY OF COLOR"
REM---STUDENT RESPONSE VARIABLE IS A$ AND IS THE SAME
REM--- IN ALL BLOCKS
INPUT A$
REM--R IS NUIIBER OF BLOCK IN THE PROGRAM; K IS THE
REM---NUllBKR OF KEYWORDS TO MATCH
R-9 : K-l
REM--AUTHOR SPECIFIED KEYWORD
A$(l)=''HUE''
A$(2)~"VALUE"

A$(3)-"INTENSITY"
REM---CALL KEYWORD SUBROUTINE
COSUB 7000
DESIGN OF KEYWORD SUBROUTINE

The keyword subroutine presented in this paper
requires the following extended BASIC features.
1.

STRINGS (length at least equal to 70 characters)

2.

MID$(A$,I,J)

3.

LEN(A$)

The keyword subroutine requires the following
unique variables.
1.

K2 (number of matches)

2.

K (number of keywords to match-see BLOCK design)

3.

K1 (actual number of author keywords)

4.

A$ (string variable which holds student answer)

5.

R$(I,J) (string matrix used to record student
responses and performance record)

6.

A(5) (numeric matrix used to hold length of
keyword strings)

The keyword routine uses only two temporary variables
(I and J). They are used as loop counter variables.
The keyword subroutine .allows the following keyword checkS.:
1.

Specification of single keyword match from
field of 1 to 5 author specified keywords.

2.

The key word is treated 8S a root .keyword
consequently it will allow the occurrence
of the keyword with prefix and/or suffix
in the student response.
KEYWORD PROGRAM LISTING

1 REM --- CLEAR VARIABLE SPACE AND' ASSIGN 1000 BYTES TO STRINGS
2 .CLEAR 1000
9 REM --- DECLARE NUMERIC AND STRING MATRICES
10 DIM A(5) ,A$(5) ,R$(10,3)
95 REM --- FIRST "BLOCK" OF INSTRUCTIONAL MATERIAL
96 REM
DISPLAY QUESTION AND REQUEsT RESPONSE
97 REM
A$ IS USED AS A GENElIAL ANSWER VARIABLE FOR ALL
98 REM
IIBLOCKS"
.
100 PRINT: PRINT: PRINT "WHAT IS ONE PROPERTY OF COLOR";: INPUTE A$
105 REM --- THE VARIABLE "R" IS USED TO NUMBER THE BLOCKS AND
106 REM
IS SUBSEQUENTLY USED AS AN INDEX TO THE .STUDENT.
107 REM
RECORD MATRIX "R$(R,C)'"
108 Rl!II
THE VARIABLE "K" IS USED BY THE TEACHER TO SPECIFY
109 REM
THE mlMBER .OF KEYWORDS REQUIRED FOR A COmCT RESFONSE

FIRST COMPUTER FAIRE PROCEEDINGS

BOX 1579, PALO ALTO CA 94302

110 R=l:K=l
115 REM --- THE SUBSCRIPTED STRING VARIABLE A$ (N) IS USED BY
116 REM
. THE TEACHER TO HOLD THE KEYWORDS CONS IDERED TO BE
117 REM
CORRECT ANSWERS
120 A$ (1}="VALUE" :A$ (2}="IIUE" :A$ (3}="INTENSITY"
125 REM --- CALL KEYWORD PROCESSOR SUBROUTINE (THE SUBROUTINE
126 REM
JUDGES CORRECTNESS OF RESPONSE AND AUTOMATICALLY
127 REM
RECORDS THE INDICATION OF CORRECTNESS IN R$ (R, C)
130 GOSUB 7000
195 REM ---. ANOTHER INSTII-VCTIONAL "BLOCK" BEGINS HERE. TIlE
196 REM
STRUCTDRE IS THE SAME AS FOR BLOCK 1 (R=I).
200 PRINT: PRINT: PRINT "NAME TWO PROPERTIES OF COLOR"
210 INPUT A$
220 R=2:K=2
230 A$ (1}="INTENSITY" :A$(2}="VALUE" :A$ (3}="HUE"
240 GOSUB 7000
295 REM --- "BLOCK 3" BEGINS HERE AND HAS THE SAME STRUCTURE
296 REM
AS THE PRECEEDING BLOCKS.
300 PRINT:PRINT:PRINT "NAME ALL THREE PROPERTIES OF COLOR"
310 INPUT A$
320 R=3:K=3
330 A$ (l}=''HUE'' :A$(2)="INTENSITY" :A$ (3}="VALUE"
340 GOSUB 7000
495 REM --- TIlE NEXT STATEMENT CONCLUDES THE BLOCKS SUPPLIED
496 REM
TO TEST THE KEYWORD PROCESSOR SUBROUTINE.
500 GOTO 9999
6994 REM
6995 REM --- •••••• TIlE KEYWORD PROCESSOR SUBROUTINE ••••••
7000 K2=0
7005 REM --- DETERMINE TIlE LENGTHS OF THE AUTHORS KEYWORDS
7010 A(I}=LEN (A$ (1»
7020 A(2}=LEN(A$(2)}
7030 A(3)=LEN(A$(3)}
7040 A(4)=LEN(A$(4)}
7050 A(5}=LEN(A$(5»
7055 REM - - DETERMINE HOW MANY KEYWORDS WERE SUPPLIED FOR
7056 REM
TEST BY THE AUTHOR.
7060 FOR 1=1 TO 5
7070 IF A(I)=O THEN 7090
7080 NEXT I '
7085 REM --- THE VARIABLE Kl CONTAINS THE ACTUAL NUMBER OF
7086 REM
KE,(WORDS IN THE AUTHORS LIST
7090 K1=I
7095 REM --- COMPARE THE NUMBER OF KEYWORDS SPECIFIED FOR MATCH
7096 REM
WITH THE NUMBER OF KEYWORDS IN THE LIST. IF
7097 REM
K IS GREATER THAN Kl THEN ASSUME ALL IN THE
7098 REM
LIST MUST MATCH.
7100 IF K:>K1 THEN K=Kl
7110 1=1
7115 REM --- CHECK TO SEE IF CURRENT KEYWORD BEING TESTED
7116 REM
IS EMPTY (IE, HAS NO CHARACTERS), IF SO TERMINATE
7117 REM
THE TEST SEQUENCE.
7120 IF A(I)=O THEN 7200
7125 REM --- COMPARE THE CURRENT KEYWORD WITH ALL SEQUENCES OF
7126 REM
CHARACTERS IN THE STDDENTS' ANSWER.
7130 FOR J=1 TO LEN (A$)
7140 IF MID$(A$,J,A(I)}<>A$(I) THEN 7150
7141 REM - - IF MATClI, INCREMENT MATCH COUNTER
7142 K2=K2+l
7144 GOTO 7160
7150 NEXT J
7155 REM --- COMPARE MATCH COUNTER WITH THE NUMBER OF KEYWORDS
7156 REM
SPECIFIED AS NECESSARY FOR CORRECT RESPONSE.
IF
7157 REM
EQUAL, PRINT POSITIVE MESSAGE FOR STUDENT. IF NOT,
7158 REM
CHECK TO SEE IF ALL KEYWORDS IN LIST HAVE BEEN
7159 REM
HAVE BEEN TESTED.
7160 IF K2=K THEN PRINT "RIGHT":GOTO 7230
7165 REM --- IF ALL KEYWORDS IN THE LIST HAVE BEEN TESTED, PRINT
7166 REM
NEGATIVE MESSAGE TO THE STUDENT.
7170 IF 1=5 THEN 7200
7180 1=1+1
7190 GOTO 7120
7200 PRINT "WRONG! II
7205 REM - - STORE INDICATION OF WRONG RESPONSE IN THE STUDENT RECORD
7206 REM
MATRIX.
7210 R$(R,3)="-"
7220 GOTO 7240
7225 REM --- STORE INDICATION OF CORRECT RESPONSE IN THE STUDENT RECORD
7226 REM
MATRIX.
7230 R$(R,3}="+"
7235 REM --- STORE ACTUAL STUDENT RESPONSE IN THE STUDENT RECORD
7236 REM
MATRIX
7240 R$ (R, 2) =A$
7245 REM --- BLANK RESPONSE VARIABLE.

7250 A$=" "
7255 REM --- RETURN TO THE CALLING "BLOCK".
7260' RETURN
9999 END

Answer processing using keywords represents a very
powerful tool in the development of conversational
simulations. Programs can be devised which can carry on
a useful conversation in a lim! ted context.

While keyword answer processing opened new horizohs
in the developme!1t of tutorial lessons, teachers began
to encounter problems with students who could not spell
or who could not type accurately. These problems lead
to a concern for some sort of answer processor which could
phonetically encode the responses and thus avoid some

PAGE 176

basic problems'in typographic errors and spelling errors.
A very basic but interesting phonetic answer processor
algorithm was developed through a project funded by the
National Science Foundation. The proje.ct resulted in
the development of a CAl language called PLANIT. I twas
to be ll machine-independent ll • It successfully met that
goal with the only restrictions being a 24 bit word size
(minimum) and access to a FORTRAN IV compiler. The
phonetic algorithm used in PLANIT is quoted verbatim in
this paper.
The general algorithm for a phonetic answer processor
in BASIC is as follows:
BASIC PHONETIC PROCESSOR PROCEDURE

1.

2.

Disassemble the answer or response string into
single character strings.
Sequentially convert each single character string
into its t phonetic equivalent using the PLANIT
PHONETIC ALGORITHM.

3.

Reassemble phonetic characters equivalents into
a single string.

4.

Return to calling program for comparison of phonetic
equivalent response to a phonetic equivalent answer
specified by the lesson author.
DES IGN OF PHONETIC SUBROUTINE

The phonetic answer processor subroutine requires the
following extended BASIC features:
1.

STRINGS (length at least equal to 70 characters)

2.

MID$(A$,J,I}

3.

LEN(A$}
PHONETIC ENCODING AND FORMULAS PROCESSING*

PHONETI C ENCOD ING

The phonetic encoding process is accomplished in four steps:
Step 1 - Letter Equivalent:
All letters are transformed into their letter equivalents. Any
remaining characters including blanks are unchanged. The letter
in Row 1 is transforI!led into the letter immediately below in Row
2. PLAN!T ignores all other characters.
Row 1
Row 2

ABCDEFGHIJKLMNOPQRSTDVWXYZ
ABCDABCHACCLMMABCRCDABHCAC

(original letter)
(letter equivalent)

Step 2 - The H Replacement:
Each H in a word is transformed to the preceding letter provided
the character is a letter. If not a letter (e.g., a blank), H
is unchanged.
Step 3 - Elimination of Successive Identical Consonants:
All but the first element of an uninterrupted sequence of a single
consonant is eliminated, (e.g., CC=C, TT=T).
Step 4 - Elimination of As:
All vowels, transformed into A's, are eliminated except if A is the
first character of the word to be encoded. The final word contains
only consonants and a leading A if there is one.
Examples:
Original Word

Steps

4

1
PHONETIC
HAZARD
ON-LINE
AWHILE

BHAMADAC
HACARD

BBAMAOAC
HACARD

AM-LARA
ABHALA

~LARA

AAAALA

BAMADAC
HACARD
AM-LAMA
AAAALA

EMDC
HeRD
AM-LM
AL

The phonetic subroutine requires the following unique
variables:
1.

B$

(phonetic encoded answer)

2.

A$

(string variable to hold student response)

3.

R$(I,J)

(string matrix to hold student performance
records)

*Bennick, F. D. and C. H. Frye "PLANIT LANGUAGE REFERENCE MANUAL", System
Dev. Corporation TM-(L}-4422/002/01, Oct. 1970.
(APPENDIX E)

FIRST COMPUTER FAIRE PROCEEDINGS

4.

B$(73)

(string matrix used to hold individus1
characters from student response or author
answer)

The phonetic subroutine uses only two temporary variables
They are used as loop counter variables and index
pOinters for matrices.
(J and K).

The phonetic answer processor subroutine is designed to
be called to process both the authors' answer and the
students' response (on separate GOsua calls). The phonetic
response processor can handle character strings up to 70
characters length with embedded blanks and punctuation. The
only restriction is that the use of a comma in the students'
answer may produce a syntax error depending on which BASIC

interpreter you use.

PHONETIC RESPONSE PROCESSOR LISTING

1 REM --- CLEAR VARIABLE SPACE AND ASSIGN 500 BYTES TO STRINGS
2 CLEAR 500
9 REM --- DECLARE STRING MATRICES FOR PHONETIC SUBROUTINE
10 DIM B$(73)
15 REM --- DECLARE STRING MATRIX FOR STUDENT PERFORMANCE RECORDS
16 REM
THE R DIMENSION REFERS TO THE NUMBER OF "BLOCKS"
17 REM
ENCOUNTERED BY THE STUDENT. THE C DIMENSION REFERS
18 REM
TO (1) BLOCK NUMBER, (2) ACTUAL RESPONSE, AND (3)
19 REM
THE RESULT OF COMPARING RESPONSE WITH ANSWER
20 DIM R$(30,3)
70 B$(O)-" "
80 1-0
95