(navigation image)
Home American Libraries | Canadian Libraries | Universal Library | Community Texts | Project Gutenberg | Children's Library | Biodiversity Heritage Library | Additional Collections
Search: Advanced Search
Anonymous User (login or join us)
Upload
See other formats

Full text of "Byte Magazine Volume 10 Number 04: Artificial Intelligence"

THE SMALL SYSTEMS JOURN 



APRIL 1985 VOL.10, NO. 4 



$3.50 IN UNITED STATES 

$4.25 IN CANADA / £2.10 IN U.K. 

A McGRAW-HfLL PUBLICATION 

0360-5280 



ARTIFICIAL 
INTELLIGENCE 



IntoducingThe 
AEyou rave fc 



/ 






You can also add other printers besides LaserWriter 
to The Macintosh Office. Including our standalone 
ImageWriter printer you see here, as well as letter 
aualih' daisyuheel printers you don't see l.we. 




' 



The LaserWriter printer has its own built-in 

hpe styles and sizes audit can he shared 

by ereryone in The Macintosh Office. 










Right now. IBM PCs can use our new 
LaserWriter printer, later this year, we'll 
be introducing the .ifip/e'ldlk card that 
Jits into an IBM PC allowing it to trade 
information with Macintosh and access 
file serrers. As well as sen v as a gateway 
between the IBM PC network and our 
Af)pleTalk network 



The Af)pleLine protocol converter (els 
you talk directly to your mainfhune 
via WO emulation. 





w j gwai^^^wf^^ 



5***«** 






Our enhy level uvrkstatiou in The Macintosh 
Office is. naturally enough, the Macintosh I2HK. 



HI 





mmmmmmmmm mm mm 
' - m m m m m'tm.m m mm 



********** 




* Manufacturer's suggested retail price © I9ti5s\/)ple Computer Inc. ,\j)ple. the,\pple logo. .typle'/d/k and ImageWriter are trademarks oftyple Computer. Inc. Macintosh is a trademark- 
licensed to .Iftple Computer. Inc. Microsoft is a registered trade/nark of Microsoft Corporation. ThinkTunk is a trademark ofl.ii ing I ideolext Inc. Jazz and Lotus are trademarks of Lotus 
Development Corporation. IBM is a registered trademark of ) 'nhrnafioual Business Machines Corporation. For an authorized \\f)ple dealer nearest you call (800) 538-9696. 
In Canada, call (800) 268-7796 or (800) 268-7637. 



Macintosh Office, 
add is people. 



Macintosh XL, up to a full 
megabyte of RAM ana a 

\ built-in 10 MB hard disk 







7beAf)ple7alk Personal Network letswu connect 
up to 32 members oflbe Macintosh Office for an 
extremely low cost. 




No, not computer systems people to 
help you design it. Or computer experts to 
show you how to use it. 

But the kind of people who already 
make up most of your office. 

Managers and professionals. People 
who spend most of their time selling prod- 
ucts, services or, most importantly, ideas. 

Because, unlike traditional office 
computer solutions, we didn't design The 
Macintosh™ Office around a mainframe. 
We designed it around an idea. 

The idea that people, not main- 
frames, are the most important informa- 
tion centers in an office. And that most 
things in business are really accomplished 
by teams of 5 to 25 people who need to 
share information with each other. What 
we call the workgroup. 

That's why we put Macintosh at the 
heart of The Macintosh Office. Its powerful, 
32-bit technology reduces the time it takes 
to become productive with a computer 
from well over a work week, to just under 
a lunch hour. 

For the first time, the people who 
could really use a computer— managers 
and professionals — had a computer 
they could really use. In their choice of 
sizes: Macintosh 128K, Macintosh 512K 
and Macintosh XI, 

Then we designed a network solution 
for workgroups of 5 to 25. Instead of build- 
ings of 500 to 2,500. 

We call it the AppleTalk™ Personal 
Network. Its as easy to hook together as an 
extension cord. And almost as cheap. 
Less than $50* a desk, versus up to $1,200 
for a typical network system. 

Since the number one product of 
business is still paper, we found a way to 
make every sheet count. A breaktlirough 
in printed communications called the 
LaserWriter printer. It produces publication- 
quality text and graphics. Making your 



presentations, reports and overheads 
more persuasive. 

We've even found a way for The 
Macintosh Office to share offices with IBM® 
An AppleTalk card that slips into an IBM 
PC, allowing it to trade information with 
Macintosh and access file servers. 

Third party developers are also work- 
ing on The Macintosh Office. Next month, 



Arch News 



ONe-York 



(tew 

T 




'ML 




Master Architect 



The man fcawrcd in 



work - thai is, if you've trerviiiinl 
Simon Fnser University. The 
Museum of Anihropology, Rcbjnn 
So.oii.-T/Thc La» Courti. or any of i 
number of oihcr governmenut. 
;.--~ciz:l: and reiidenlial 
buildings. The man it Arthur 



remarkable and prolific carer 
(panning more than JO years. ArUiuf 
Encksnn has received dozer « «* 
rJegrctl and vino; 

ever) 1 major professional an 



Our LaserWriter produces 
publication quality text and graphics. 

they'll be offering shared storage devices 
that let your workgroup share information. 
And they're writing a whole new genera- 
tion of business software to go along with 
the 350 programs Macintosh already runs. 
Including Microsoft® Word, ThinkTank™ 
512 and the new Jazz™ from Lotus® 

Now, there's only one more thing we'd 
like to add to this ad: call 800-446-3000. 

We'll tell you how to get everything 
you need to turn your office into a 
Macintosh Office. 

People not included. 



CONTENTS 




100 




FEATURES 



Introduction 100 

Ciarcias Circuit Cellar: Build the Home Run Control System, 

Part 1: Introduction by Steve Garcia 102 

Steve returns to the field of home control in this first part of a three-part series. 

Coprocessing in Modula-2 by Colleen Roe Wilson 113 

This method lets you cooperatively process information by interleaved 
execution on a single computer. 

A Million-Point Graphics Tablet by \ames Hawley 120 

Build a graphics pad for less than $200 using the KoalaPad for input. 

THEMES 



Introduction 124 

Communication with Alien Intelligence by Marvin Minsky 126 

It may not be as difficult as you would think. 

The Quest to Understand Thinking 

by Roger Schank and Larry Hunter 143 

It begins not with complex issues but with the most trivial of processes. 

The LISP Tutor by )ohn R. Anderson and Brian J. Reiser 159 

The system described offers many of the advantages of a human tutor 
in teaching LISP programming. 

PROUST by W. Lewis Johnson and Elliot Soloway 179 

This LISP program automatically debugs the efforts of novice Pascal programmers. 

Architectures for AI by Michael F. Deering 193 

The right combination of hardware and software is necessary for 
efficient processing. 

The LISP Revolution by Patrick H. Winston 209 

The language is no longer limited to a lucky few. 

The Challenge of Open Systems by Carl Hewitt 223 

Current logic programming methods may be insufficient for developing the 
intelligent systems of the future. 

Vision by Dana H. Ballard and Christopher M. Brown 245 

Technology is still being challenged to create reliable real-time vision systems. 

Learning in Parallel Networks by Geoffrey E. Hinton . .265 

The author presents two theories of how learning could occur 
in brain-like networks. 

Connections by Jerome A. Feldman 277 

Massively parallel computational models may simulate intelligent behavior more 
closely than models based on sequential machines. 

Reverse Engineering the Brain by John K. Stevens 286 

The brain's circuitry can serve as a model for silicon-based designs. 

The Technology of Expert Systems 

by Robert H. hMchaelsen. Donald hMchie, and Albert Boulanger 303 

There's more than one way to transplant expert knowledge to machines. 

Inside an Expert System by Beverly A. Thompson and William A. Thompson 315 

The authors trace the development of a rule-based system from index cards 
to a Pascal program. 



BYTE (ISSN 0360-52SOI is published monthly by McGraw-Hill inc. Founder: lames H McGraw (1860-19481. Executive, editorial, circulation, and advertis- 
ing offices: 70 Main St . Peterborough. NH 034 58. phone (603) 924-9281 Office hours Mon-Thur 8:30 AM - 4:30 PM. Frid ay 8:30 AM - 1 :00 PM. Eastern 
Time. Address subscriptions to BYTE Subscriptions. POB 590. Martinsville. Nl 08836 Postmaster send address changes. USPS Form 3 579. undeliverable 
copies, and fulfillment questions to BYTE Subscriptions. POB 596. Martinsville, N) 08836. Second-class postage paid at Peterborough. NH 034 58 and 
additional mailing offices. Postage paid at Winnipeg. Manitoba. Registration number 9321, Subscriptions are S21 for one year. S38 for two years, and 
555 for three years in the USA and Its possessions. In Canada and Mexico. 523 for one year. 542 for two years. 561 for three years S69 for one year 
air delivery to Europe 17.100 yen for one year surface delivery to lapan. 537 surface delivery elsewhere. Air delivery to selected areas at additional 
rates upon request Single copy price is S3 50 in the USA and its possessions. 53 95 in Canada and Mexico. 54.50 in Europe, and 55 elsewhere. Foreign 
subscriptions and sales should be remitted in United States funds drawn on a US bank Please allow six to eight weeks for delivery of first issue. Printed 
in the United States of America. 



BYTE* APRIL 1985 



COVER ILLUSTRATION BY ROBERT TINNEY 



VOLUME 10, NUMBER 4, 1985 



REVIEWS 



Introduction 334 

Reviewer's Notebook by Glenn Hartwig 337 

The ITT XTRA by John D. Unger 338 

An IBM PC-compatible system with telecommunications software. 

Insight- A Knowledge System by Bruce D'Ambrosio 345 

Software to help you build an expert system and learn about artificial 
intelligence. 

Review Feedback 348 

Readers respond to previous reviews. 

KERNEL 



Introduction 353 

Computing at Chaos Manor: Over the Moat by jerry Pournelle 355 

As construction workers descend on Chaos Manor, Jerry battles the flu 
to look at more new items. 

Chaos Manor Mail conducted by ]erry Pournelle 373 

Jerry's readers write, and he replies. 

BYTE West Coast, Lasers. Office Publishing, and More by )ohn Markoff and 

Phillip Robinson 379 

Our West Coast editors report on Interleaf's OPS-2000 and TPS-2000 and 
on FastFinder for the Macintosh. 

BYTE U.K.: New Database Ideas by Dick Pountain 389 

I.D.E.A.S. is a commercial database-generator package in which all data items 
are related by a system of coordinates abstracted from the real world. 

BYTE Japan: The Fifth Generation in Japan by William M. Raike 401 

Our Japan correspondent takes note of the International Conference 
of Fifth Generation Computer Systems, the new Hitachi supercomputer, 
and software development in the country. 

Circuit Cellar Feedback conducted by Steve Garcia 408 

Steve answers project-related queries from readers. 



EDITORIAL: GOLFERS AND HACKERS 6 

MlCROBYTES 9 

Letters 14 

Fixes and Updates 33 

Whats New 39, 440 

Ask BYTE 48 

Clubs & Newsletters 58 

Book Reviews 65 



Event Queue 83 

Whats Not 96 

Books Received 414 

Programming Insight 429 

Unclassified Ads 493 

BYTE's Ongoing Monitor Box. 
BOMB Results 494 

Reader Service 495 



Address all editorial correspondence to the Editor. BYTE. POB 37 2. Hancock. NH 03449, Unacceptable manuscripts will be returned if accompanied 
by sufficient first-class postage. Not responsible for lost manuscripts or photos. Opinions expressed by the authors are not necessarily those of BYTE. 

Copyright © 1985 by McGraw-Hill Inc. All rights reserved. Trademark registered in the United States Patent and Trademark Office Where necessary, 
permission is granted by the copyright owner for libraries and others registered with the Copyright Clearance Center (CCC) to photocopy any article 
herein for the flat fee of $1.50 per copy of the article or any part thereof. Correspondence and payment should be sent directly to the CCC. 29 Congress 
St.. Salem. MA 01970. Specify ISSN 0360-5280/83. Si. 50 Copying done for other than personal or internal reference use without the permis- 
sion of McGraw-Hill Inc. is prohibited, Requests for special permission or bulk orders should be addressed to the publisher BYTE is available 
in microform from University Microfilms International. 300 North Zeeb Rd.. Dept. PR. Ann Arbor. Ml 48106 or 18 Bedford Row. Dept PR. 
London WC5R 4EI England. 
Subscription questions or problems should be addressed to: BYTE Subscriber Service. POB 328. Hancock, NH 03449 




334 




353 



SECTION ART BY DOUGLAS SMITH 



APRIL 1985 • BYTE 



Inquiry 268 



icroTime 




THE BEST IBM 

COMPA TIBLE 

y 

PCI 60 
PORTABLE 




SANYO COMPUTERS 

ALL MODELS AVAILABLE 




FREE 

SOFTWARE 






EP5DN 



LIE HflUE RLL EPSON 

PRINTERS IN STOCK 

flTLOW PRICES 




IOMEGA 



IBM 
PC 



BERNOULLI 
BOR 

20 MEGABYTE 

ULTRA FAST 

REMOUABLE 

STORAGE 



CORVUS 

JUKI 
TOSHIBA 



CITOH 
OKIDATA 
BROTHER 

DIABLO 



\v'E SPECIALIZE IN SYSTEM SALES 

♦ ♦ ♦ 
CALL US FOR THE LOWEST PRICES 
ON ALL COMPUTER PRODUCTS 

JOO- 642 -7684 

IN ARIZONA 602-791-9030 

IBM Is s registered trademark of International Business Machines. Corp. 

4*1 West Great Read 
Tucson, Arizona 85705 



BYTE 



editor in chief 

Philip lemmons 
managing editor 
Gene Smarte 
consulting editors 

Steve Garcia 

Ierry Pournelle 

senior technical editors 

G. Michael Vose, Themes 
Gregg Williams 
technical editors 

Thomas R. Clune 

Ion R. Edwards 

Richard Grehan 

Glenn Hartwig. Reviews 

Richard Kraiewski 

Ken Sheldon 

Richard S. Shuford 

Iane Morrill Tazelaar 

Eva White 

Stanley Wszola 

Margaret Cook Gurney. Associate 

Alan Easton. Drafting 

west coast editors 

Ezra Shapiro. Bureau Clue!. San Francisco 

Iohn Markoff. Senior Technical Editor. Palo Alto 

Phillip Robinson. Senior Technical Editor. Palo Alto 

Donna Osgood. Associate Editor. San Francisco 

Brenda McLaughlin, Editorial Assistant. San Francisco 

NEW YORK EDITOR 

Richard Malloy. Senior Technical Editor 

managing editor. 

electronic publishing and communications 

George Bond 

user news editor. east coast 

Anthony |. Lockwood. What's Hew 

USER NEWS EDITOR. WEST COAST 

Mark Welch. Microbytes 

CONTRIBUTING editors 

Dennis Allison, at large 

Mark Dahmke. video, operating systems 

Mark Haas, at large 

Rik Iadrnicek. CAD. graphics, spreadsheets 

Mark Klein, communications 

Alan Miller, languages and engineering 

Iohn C. Nash, scientific computing 

Dick Pountain. U.K. 

William M. Raike. ]apan 

Perry Saidman, computers and law 

Robert Sterne, computers and law 

Bruce Webster, software 

COPY EDITORS 

Bud Sadler. Chief 
Dennis Barker 
Elizabeth Cooper 
Anne L. Fischer 
Nancy Hayes 
Lynne M. Nadeau 
Paula Noonan 
Ioan Vigneau Roy 
Warren Williamson 

assistants 

Peggy Dunham 
Martha Hicks 
Beverly Iackson 
Lisa )o Steiner - 

ART 

Rosslyn A. Frick. Art Director 
Nancy Rice. Assistant Art Director 



PRODUCTION 

David R. Anderson. Production Director 

Denise Chartrand 

Michael I. Lonsky 

Ian Muller 

Sherry McCarthy. Chief Typographer 

Nan Fornal 

Len Lorette 

Kathy Quist 

Donna Sweeney 



SENIOR VICE PRESIDENT PUBLISHER 

Harry L. Brown 

ASSISTANT PUBLISHER 

Michele P. Verville 

PUBLISHER'S ASSISTANT 

Doris R. Gamble 

REPRINTS AND PERMISSIONS 

Faith A. Kluntz 



ADVERTISING SALES 

I. Peter Huestis. Sales Manager 
Sandra Foster. Administrative Assistant 

ADVERTISING 

Lisa Wozmak. Supervisor 

Robert D. Hannings, Sen/or Account Manager 

Marion Carlson 

Karen Cilley 

Lyda Clark 

Michele Gilmore 

Denise Proctor 

advertising/production 

Wai Chiu Ll. Quality Control Director 

Iulie Nelson. Advertising/Production Coordinator 

Linda I, Sweeney. Advertising/Production Coordinator 

CIRCULATION 

Gregory Spitzfaden. Director 

Andrew Iackson, Subscriptions Manager 

Cathy A. R. Drew. Assistant Manager 

Laurie Seamans. Assistant Manager 

Susan Boyd 

Phil Dechert 

Mary Emerson 

Louise Menegus 

Agnes E. Perry 

Iennifer Price 

Iames Bingham. Single-Copy Sales Manager 

Linda Ruth. Assistant Manager 

Carol Aho 

Claudette Carswell 

Karen Desroches 

marketing communications 

Horace T. Howland. Director 

Vicki Reynolds. Marketing Production Manager 

Priscilla Arnold. Marketing Assistant 

Stephanie Warnesky. Marketing Art Director 

Sharon Price. Assistant Art Director 

Doug Webster. Director of Public Relations 

Wilbur S. Watson. Operations Manager. Exhibits 

Patricia Akerley. Research Manager 

Cynthia Damato Sands. Reader Service Coordinator 

ACCOUNTING 

Daniel Rodrigues. Business Manager/Controller 

Kenneth A. King. Assistant Controller 

Vicki Weston. Accounting Manager 

Linda Short. DIP Manager 

Edson Ware. Credit 

Marie Caggiani 

Marilyn Haigh 

Diane Henry 

Vern Rockwell 

IoAnn Walter 

building services/traffic 

Anthony Bennett. Building Services Manager 
Brian Higgins 
Mark Monkton 

RECEPTIONISTS 

L. Ryan McCombs 
Cheryl Castro. Assistant 

PERSONNEL 

Cheryl A. Hurd. Office Manager 
Patricia Burke. Personnel Coordinator 

BYTE business phones 

Pete Huestis. 603-924-6137: Horace Howland. 603-924-3424 
Doug Webster. 603-924-9027; Brad Browne, 603-924-6166 
Advertising. 603-924-6448: Circulation. 800-258-5485 



Editorial and Business Office: 70 Main Street. Peterborough. New Hampshire 03458. (603) 924-9281 . 
West Coast Offices: McGraw-Hill. 425 Battery St.. San Francisco. CA 94 III. (4151 362-4600. 

McGraw-Hill. 1000 Elwell Court. Palo Alto. CA 94303. 1415) 964-0624 
New York Office: 1221 Avenue of the Americas, New York. NY 10020. 1212) 512-2000. 

Officers of McGraw-Hill Information Systems Company: President: Richard B. Miller Executive Vice Presidents Frederick P. lannott. Con- 
struction Information Group: Russell C White. Computers and Communications Information Group; 1, Thomas Ryan. Marketing and Interna- 
tional. Senior Vice Presidents Francis A Shinal. Controller: Robert C. Violetle. Manufacturing and Technology Senior Vice Presidents and 
Publishers: Harry L. Brown. Computers and Communications: David I McGrath. Construction. Group Vice President: Peter B McCuen. Com- 
munications. Vice Presidents: Fred O. lensen. Planning and Development: Margaret L. Dagner. Human Resources. 
Officers of the Corporation; Harold W. McGraw. |r.. Chairman; Joseph L. Dionne. President and Chief Executive Officer: Robert N. Landes. Senior 
Vice President and Secretary: Ralph I, Webb. Treasurer 



Knl! 



CROMEMCO COMPUTERS: 
DESIGNED TO MAKE UNIX SYSTEM V 

EVEN BETTER... 



UNIX System V, the new standard in multa- 
- microcomputer -.operating systems, gives you high 
rformance features along with the portability and 
flexibility of a standard. 

Cromemco computers can make UNIX System 
even better. Because our systems are designed with 
IX in mind. First of all, we offer UNIX System V 
th Berkeley enhancements. Then, our hardware uses 
danced features like 64K of on -board cache memory 
our high speed STDC controller to speed up disk 
Orations -very important with UNIX. 

More capability and expandability 
We have a high-speed, 68000-based CPU that 
is at 10 MHz, coupled with a memory manager that 
uses demand-paging and scatter loading to work with 
UNIX, not for it 

We provide room for expanding RAM to 16 
'megabytes -with error detection and correction -for 
running even the most sophisticated and advanced 
microcomputer programs. And the power to accom- 
modate up to 16 users -all with plenty of memory. 
But we give you even more. 
A complete solution 
We give you a choice in systems: the System 
100 series, expandable up to 4 megabytes of RAM, and 
the System 300 series, expandable to 16 mega- 
bytes, A high speed 50 ..-, ; ,-^— - 

megabyte h ard disk drive I 
is standard on the sys- 
tems. And you can ex- 
pand the hard disk 
capacity up to 1200 
megabytes using stan- 
dard SMD drives. You 
can add floating point 
processing. High resolution 
graphics. Video digitizing and 
imaging. Communications through 

MMAHM 



standard protocols. Mainframe interface. 

And software support is here to meet your 
needs. We offer major programming languages, data- ~ 
base management systems, communications software, 
including SNA architecture, X25 protocol, and Ethernet; 
oven a program to interface to an IBM PC if you need to. 
And. of course, access to the broad range of standard 
UNIX applications programs that is growing dramat- 
ically every day. 

Easy louse* 

We also make our systems easier to use, 
because we install the operating system before we 
ship your computer. No complicated installation pro- 
cedures. And the. Berkeley enhancements give you 
the standard UNIX System V operating system, 
but with the added convenience of these widely 
acclaimed improvements. ' 

Cromemco's System 100 arid System 300 
computers: designed to be the highest, performance 
UNIX systems available anywhere. 

Just call or visit one of our UNIX System V 
Official System Centers to see for yourself. They'll 
also give you a copy of our new publication, "What 
you should know before you buy a UNIX system." 
Or contact us directly. 

Well be glad to show you how to get a 
better UNIX system. 

Corporate Headquarters: Cromemco, Inc., 
280 Bernardo Avenue, P.O. Box,7400, Mountain 
)4039. (415) 069-4710. In Europe: 

Cromemco 
GmbH, 6236 
schborn 1, 
ankfurter Str. 
33-35, P.O. 5267, 
Frankfurt Main, 
Germany. 



ST7 




UNIX is a trademark of Bell Laboratories. 

IBM is a trademark of International Business Machines Corp. 



Inquiry 97 



Cromemco 9 

APRIL 1985 -BYTE 5 



EDITORIAL 



Golfers and Hackers 

It must no longer go unremarked that 
many of the criminals who threaten 
the foundations of our society are 
golfers. Golfers persist in attacking our 
personal, financial, and military 
security. Many golfers, like the famous 
one caught in the act in photo 1 (Spiro 
Agnew), have been involved in extor- 
tion, bribery, or other forms of 
corruption. 

Some golfers have been known to 
hit out of bounds as a pretext for 
trespassing in residential communi- 
ties. Such forays easily turn into in- 
cidents of voyeurism and burglary. 

Violence 

Other golfers use the harmless-look- 
ing little white balls to inflict injuries 
on bystanders, propelling the danger- 
ous projectiles at speeds in excess of 
120 miles per hour. The danger of 
head injuries is obvious. Golf's care- 
less disregard for the safety of other 
people hardens our children to vio- 
lence. The idea that shouting a single, 
obscure word makes it all right to bop 
some innocent person on the head 
with a hard projectile has brought our 
society to the brink of savagery. Last 
week in a major American city a thug 
shouted "Fore!" and then mugged a 
grandmother as if it were the most 
natural thing in the world. 

Golfing Arcades 

Perhaps the most distasteful thing 
about golfers is their use in recent 
years of golfing arcades. These so- 
called "driving ranges" allow addicts 
to rent baskets containing dozens or 
even hundreds of golf balls so that the 
addicts can bombard surrounding 
land at rates previously unthinkable. 
Although the fences sometimes used 
around these golfing dens may pro- 
tect people outside from physical in- 




jury, the fences do nothing to stop the 
spread of the moral rot associated 
with the trancelike concentration of 
the golfer on the little white ball. That 
little ball means more to the golf ad- 
dict than honor, mother, or country. 
The money squandered at golfing 
arcades, golf courses, and pro shops 
could buy a personal computer for 
every child in America or pay off the 
national debt depending on national 
priorities. 

National Security 
Implications 

The parliament of King James II of 
1457 banned golf because its addicts 
neglected to practice the use of the 
crossbow, then the chief means of na- 
tional defense. Today in this country, 
golfers neglect the most advanced 
weapons systems in history. This 
neglect could nullify all the technical 
progress recently seen in weapons 
research. What good is an orbital- 
beam weapon if the operator is busy 
selecting a club? 

It doesn't take a genius to see that 
avoidance of golf is a cornerstone of 
Soviet military strategy. This gives the 
Soviets a tremendous advantage in 
daytime warfare. If the Soviets launch 
an attack at 3 p.m. EST on a weekday 
in June, approximately 20 percent of 
American manpower will be useless- 
ly deployed in fairways, sandtraps, 



and rough. Even those in bunkers will 
be in the wrong kind of bunkers. At 
3 p.m. on a weekend, as much as 50 
percent of our manpower might be 
trying to avoid bogies rather than to 
shoot them down. 

Call to Action 

Because of the threats that golfers 
pose to national security and our 
moral fiber, we are proposing that all 
golfers be arrested as soon as 
possible. 

Unfair? 

If the foregoing attack on golfers 
seems unfair (and. of course, the anal- 
ogy is not perfect), it is little more so 
than the attack in the general press 
on hackers of another kind— comput- 
er hackers. Some national publica- 
tions have used the term "hacker" in- 
correctly as a synonym for 'criminal." 
Hackers are people who play with 
computers at a technical level be- 
cause they enjoy doing so. There are 
many thousands of hackers in North 
America. A few hackers use their com- 
puter skills for pranks, and fewer still 
use their skills to commit crimes. But 
the chances are excellent that far 
more hackers are helping build 
defenses around databases than try- 
ing to penetrate them. If even one 
percent of hackers started trying to in- 
vade our databases, problems would 
be far more serious than those sen- 
sationalized in the general press. 

It wasn't being a golfer that got 
Spiro Agnew into trouble, fust being 
a hacker won't get anyone into trou- 
ble, either. Hackers are as entitled to 
the presumption of innocence as 
golfers and other common special- 
interest groups. Hackers are also en- 
titled to the continued correct use of 
the authentic, distinctive, and color- 
ful name that they gave themselves. 
— Phil Lemmons, Editor in Chief 



6 BYTE* APRIL 1985 



PHOTOGRAPH COURTESY OF UPI/BETTMANN NEWSPHOTOS 




Maxell Gold 

The 3W microdisk 

that gives Macintosh 

more to chew on 

and helps the 

HF Touchscreen PC 

tap your deepest 

memories. 



Whether you're in search of primeval 
wisdom, or polishing up financial projections, 
Maxell makes the Gold Standard microdisk 
for your computer. In fact, there's a Gold 
Standard for virtually every computer 
made. Maxell floppys are industry leaders 
in error-free performance. Each comes 
with a lifetime warranty. And each microdisk 
is perfectly compatible with your 3V2" drive. 



maxell 

IT'S WORTH IT 




Maxell Corporation of America, 60 Oxford Drive, Moonachie, N.J. 07074 



Inquiry 252 



APRIL 1985 -BYTE 7 



Princeton Graphic Systems 

and Sigma Designs team up to 

give you a brighter, sharper display. 



SR-12 and Color 400. A brilliant 
combination for super-high reso- 
lution graphics and a crisp 
character display. For a brighter, 
sharper display with 
all your IBM PC- 
compatible soft- 
ware here's a team 
that can't be beat. 
The SR-12 super- 
high resolution RGB 
monitor from 
Princeton Graphic 
Systems and Color 
400, the advanced color X 
graphics adapter card from 
Sigma Designs. 

Snap in Color 400. Begin by 
snapping Color 400 in to your IBM 
PC, XT, or AT. No switches to 
set. No cables to con- 
fuse. Color 400 gives 
you a razor sharp 640 
x 400 display. It 

automatically doubles the 

number of lines on standard 200 
' line software. Watch your 
J0 )m i graphics come to life. Enjoy fully 

/■ M formed, monochrome-quality 
^ %^r ^& characters in text mode. Just 
turn on your PC and tune in a whole new world 
of vibrant color. 





Turn on SR-12 for the impressive 
results. The SR-12 displays your Color 
400 image with unmatched clarity and 

brilliant color. Because the SR-12 
combines a .31mm dot 
pitch tube and a non- 
glare screen with an in- 
credible 640 x 400 non- 
interlaced resolution, 
you get a flickerless 
image that's as crisp 
and clean as a per- 
sonal computer 
can produce. 

See how impressive 
this state-of-the art image 
can be on your own PC 
system. Visit your local 
retailer today and ask 
about this new color graphics 
" team. Princeton Graphic System's 
SR-12 and Sigma Designs' Color 400. 
An unmatched, brilliant combination. 



SR-12 



Color 400 





C^ SIGMA 
L^F DESIGNS 

SIGMA DESIGNS, INC., 2023 OToole Avenue, San Jose, CA 95131 
(408)943-9480 Telex: 171240 



PRI NCETON 

GRAPHIC SYSTEMS 

AN INTELLIQENT SYSTEMS COMPANY 

Princeton Graphic Systems, 601 Ewing Street, Bldg. A, Princeton, N.J. 08540 
(609) 683-1660, Telex: 821402 PGS PRIN, (800) 221-1490 Ext. 204 



IBM PC, PC XT, and PC AT are registered trademarks of International Business Machines, Inc. 



8 BYTE • APRIL 1985 



Inquiry 413 



MICROBYTES 



Staff-written highlights of late developments in the microcomputer industry. 



Macintosh Users Get IBM PC Emulator 

Dayna Communications, Salt Lake City, UT, has announced MacCharlie, a hardware-and- 
software system that allows Macintosh users to run IBM PC software. TWo hardware com- 
ponents are included: one adds 10 function keys and an 18-key numeric keypad/cursor pad 
to the Macintosh keyboard; the other has one or two 5 '/4-inch disk drives, memory, an IBM- 
compatible ROM chip, and an 8088 processor, as well as serial and parallel ports and a 
bus-extender port for an optional expansion chassis. Also included is a Macintosh program 
that handles all keyboard and display processing— and it can still be used to access the 
Mac's desk accessories from within IBM PC applications. MacCharlie emulates all features of 
the IBM monochrome graphics card except for light-pen support. 

The Macintosh can be set atop the matching MacCharlie unit which adds four inches to 
the Macintosh's width and one inch to its height. The Macintosh keyboard fits into the 
keyboard extender; the numeric keypad can be used as a standard Macintosh numeric 
keypad when in Macintosh mode. The bus-extender port allows use of an optional expan- 
sion chassis so that IBM cards can be installed; with an additional cable, IBM's expansion 
chassis can be used. With one 5!/4-inch disk drive and 256K bytes of memory, MacCharlie is 
$1195; with two drives and 640K, it's $1895. 

New Mac Products Shown 

Several companies unveiled new products for the Macintosh at the MacWorld Expo in San 
Francisco. While many new software titles were demonstrated, memory-expansion and hard- 
disk-drive exhibits drew much attention. 

Micro Conversion, Arlington, TX, and Levco Enterprises, Del Mar, CA, both offer complete 
512K-byte upgrades for $400, including installation, and also sell uninstalled kits. Levco also 
sells a $60 kit with all necessary parts except the 256K-byte chips. 

In addition to already-announced hard-disk products, new drives from Paradise Systems 
Inc. and Micro-Design were shown in prototype form. Not surprisingly, most exhibitors used 
hard disks and 512K-byte Macs to demonstrate their software. 

Hayden Software showed Ensemble, an integrated package for the 128K-byte Mac. Data- 
base, spreadsheet, graphics, and text-processing features are included in the $300 program, 
which was developed in France. A number of new database programs were also exhibited 
at the show. 

Paragon Courseware, Del Mar, CA, offers two font sets: a $50 Scientific Typing font and a 
$100 Electronic Circuits font. 

Micro Focus Inc. now offers MacCOBOL, a COBOL development system. 

Microsoft Releases Its Own C Compiler 

Microsoft has released Microsoft C version 3.0, which replaces the Lattice-developed C 
previously sold by Microsoft for the IBM PC Microsoft's C compiler provides file-sharing 
and record-locking features for use in network environments; a separate Windows Toolkit 
will help C programmers develop applications to run under Microsoft Windows. Microsoft 
says that source and object code can be linked to run directly under MS-DOS or XENIX 
without modification. Microsoft C is $395, 

New LCD Portables Use Backlit Display 

Zenith Data Systems is expected to introduce a lap-top portable computer with a backlit 
liquid-crystal display (LCD). The 16-pound Z-175 will include one or two 514-inch disk drives, 
256K bytes of RAM, and an 80C88 processor for less than $3000. 

To counter the viewing angle and lighting problems caused by LCDs, Morrow Design also 
changed the 16-line by 80-character display on its Pivot computer, switching to backlit LCDs 
rather than relying on room light, despite the extra power consumed by the backlighting. 



[continued) 
APRIL 1985 -BYTE 9 



Proteon Adds 80*megabitper<secorid Network 

Proteon, which markets the ProNET token-passing star/ring hybrid local-area network, now 
offers a faster network. While ProNET used a 10-megabit-per-second data rate, ProNET-80 
transfers information at 80 megabits per second. Proteon expects it to be used in applica- 
tions using multiple minicomputers and mainframes or in connecting graphics workstations 
with large file sizes. The network will be available for Unibus and Multibus systems for 
about $8000 per node. 

Intel Will Sell CalTech's Hypercube Multiprocessor Computer 

Intel has licensed the hypercube computer design from the California Institute of 
Technology and will sell a computer based on that multiprocessor architecture. The com- 
puter consists of a multiprocessor cube and a cube manager. The cube includes 32, 64, or 
128 computational nodes, each of which includes an 80286 processor, an 80287 math 
coprocessor, and 512K bytes of memory. Each node in the cube can communicate with five 
adjacent nodes and with the cube manager through 10-megabit-per-second communications 
channels. The cube manager is an Intel 286/310 microcomputer with 2 megabytes of RAM 
and a 40-megabyte hard-disk drive. Intel claims a performance range from 2.5 to 10 million 
floating-point operations per second with an efficiency of 80 to 99 percent. Prices range 
from $150,000 to $520,000. 

Torus Prepares to Launch LAN Software 

Torus Systems Inc., Redwood City, CA, plans to introduce icon-based user-interface software 
for IBM PC network environments this month. The product will be based on Icon, the net- 
work software it says it has been selling since July in England for systems using 3Com's 
Ethernet network cards. 

The program will include intranetwork electronic mail, telecommunications, file locking and 
sharing, and other network software features; users will also be able to run standard MS- 
DOS programs under the environment, either from local disks or from a file server. 

NANOBYTES 



While announcing the Macintosh Office in late January (see February BYTE, page 120), 
Apple also announced the Macintosh XL, which is simply the Lisa renamed. . . . Software 
Publishing Corporation has added XMODEM file-transfer and remote computer access 
features to its $140 pfs:Access program. . . . Kensington Microware, which advertised its 
Quick Cursor and Printer Buffer for Apple's Macintosh last year, has canceled development 
of those products. The company will continue to sell other "Maccessories". . . Mostek, 
Toshiba, Hitachi, and AT&T's Bell Labs presented papers on CMOS 1 -megabit RAM chips 
at the International Solid State Circuits Conference (ISSCC) in February; IBM, NEC, 
Mitsubishi, Toshiba, and Fujitsu discussed NMOS I-megabit RAMs. Image-sensor chips 
were discussed by Mitsubishi and Sharp, and engineers from AT&T's Bell Labs discussed 
the development of a 32-bit floating-point digital-signal-processing chip. . . . Mother Jones' 
Son's Software, Reno, NV, is selling M), a set of background utility programs. In addition to 
redefining the PC's keys, M) expands the IBM's keyboard buffer from 16 to 1000 keys, 
permits the cursor speed to be changed, and includes a password protection option. M) 
costs $30, or $70, including source code. . . . Digital Equipment Corporation acknowledged 
in February that it had stopped manufacturing the Rainbow personal computer but said it 
will continue to ship from inventory and plans to announce a new version later this year. . . . 
Syntech, Canoga Park, CA, has announced a MIDI (musical instrument digital interface) 
adapter card for IBM, Apple, and Commodore computers. For the Apple or Commodore, 
the card is $100; for the IBM PC, it's $195. .. . The Library Corporation, Washington, DC is 
selling a complete CD ROM system for the IBM PC, including a disc with records for a 
million English-language books, for $2930. . . . Corvus Systems Inc., San Jose, CA, has 
replaced its line of Omnidrive hard-disk drives with a single model that can be used with 
IBM PC; Apple II, III, and Macintosh; DEC Rainbow; and Zenith Z-100 computers. Corvus 
also dropped prices by about 30 percent. An II-megabyte drive is now $1995. . . . Hammer 
Computer Systems Inc., Larkspur. CA, announced E-Z-DOS-IT, a $200 program that allows 
up to eight MS-DOS programs to execute concurrently. . . . Gold Hill Computers has 
enhanced its Golden Common LISP interpreter and will also offer a GC LISP compiler in 
the summer. A large-memory-model version will also be available for the IBM PC AT. 



10 B YT E • APRIL 1985 



u 



TheTI855is 

the only printer 

with letter quality, 

draft speed, 

grannies, 
K jg'infont 
modules... 
all for under 



4 



$1000. 



(suggested retail price) 





Texas Instruments 




Finally, the printer for all PC needs. 



© 1984 TI 




The TI 855 printer. The 
printer for all major PC's 
See for yourself today. 
Call 1-800-527-3500 
for the dealer 
nearest you. 



Texas ^^ 
Instruments 

Creating useful products 
and services for you* 



DPF01 2BY 
This printout was not generated bv the TI 855. 2764-08 



APRIL 1985 -BYTE 11 



interact with a Genius 




SUPER XT SYSTEM PLUS 

Ultra-High resolution color card. 

Ultra-High (720x400) resolution color monitor. 

Gives excellent text resolution. 

10x16 character cell. 

SUPER XT OFFICE SYSTEM PLUS® 

TTL monochrome monitor. 

Gives you easy-on-the-eyes viewing. 



SUPER XT COLOR SYSTEM PLUS® 

High resolution color card and color monitor (640x200). 
16 colors. 

SUPER XT STARTER SYSTEM PLUS® 

Composite monochrome monitor. 

Includes color graphics card. 

Gives you flexibility to run color and monochrome 

software. 




12 B YTE • APRIL 1985 



Inquiry 417 for Dealers. Inquiry 418 for End Users. 



... and feel the Power! 



SUPERPOWER 135 

Hard Disk ready + 12V at 
4.5A max +5V at 15A max 
Same dimension and plug 
compatible W/IBM PC/XT. 
3 Power outputs for 2 
Floppies and a Hard Disk 



KEYBOARD 

IBM PC; XT Plug 

compatible 

Corrected (left) "shift" 

key 

Color compatible 

W/IBM case 



SUPER 
MOTHERBOARD 

Single layer double 

sided board 

Same dimensions as IBM 

motherboard 

Up to 256K Ram on-board 

memory 

8 I/O slots 



MULTIFUNCTION 
CARD 

Serial, Parallel, Game ports 
and Clock/Calendar 
W/memory expansion of 
added 384K 

RAM disk and piint spooler 
software included 



TRXAN555" 
COLOR CARD 

10x16 character cell to give 
the best text resolution in 
color (720x400) 
Graphic resolution 
(640x200) 
Operates Taxan 440* 
monitor 




SUPER 
CONTROLLER 

Controls up to 4 Floppy 
drives Comes W/Cables 
for 2 Drives 




£*■££?# 



SUPERBOX 

Fully BUS compatible 
Adds 10 slots. 135 W Power 
I supply for Hard Disk and 
Add-Ons 
External color same as IBM 







SUPER DISK 
+ 1/0 

Disk Controller Parallel & 
Serial ports 
Saves a slot in 
Motherboard 



SUPERSEVEN + 

Disk Controller and cable, 
Clock/calendar Parallel, 
Serial and Game ports. 
RAM Disk emulator. 
Super Spooler software 



SUPERBUFFER + 

Does not use User's 
memory. Can be used as 
regular printer port W/O 
64K bufier memory 
installed. 

Second parallel port 
included. Configurable as 
IPT1 or LPT2. Use 
Computer and print 
at the same time 



SUPERCOLOR 
CARD 

16 Colors on medium 

resolution 

16K display memory 

Composite output 

W/RGB 











HARDDISK 
CONTROLLER 

Controls up to 2 hard disks 
Configurable for 5, 10, 20 
and 33 Mb hard disks 




HARD DISK 
ASSEMBLY 

10 Mb formatted Fixed disk 
5 Mb or 10 Mb formatted 
removable cartridge 
Unlimited storage 
Bootable from either fixed 
or removable hard disk 



TOPE BACKUP 

Backs up 10 Mb within 3 

minutes 

Uses regular floppy 

controller 





SUPERMONO 
CARD 

720x348 resolution 
TTL output 
Printer port 




The Ultimate in PC/XT compatibles and peripherals! 



The Super XT Plus Series 8 computer offers 
the maximum alternatives in the PC/XT 
compatible market. Alternatives which 
exceed current PC/XT configurations. 
Standard features on al Super XT Plus 
Series computers include: Full Compatibility 
with IBM PC/XT machines, 256K 
expandable to 64 OK bytes of parity checked 
memory, Eight (8) Slots, Two (2) Half-Height 
Floppy disk drives, 10 Mb Hard Disk, 



Parallel, Serial, Game port and Clock/ 
Calendar. Options include: 5 Mb Remo- 
vable Hard Disk, 10 Mb Removable, Tape 
Backup System, Memory upgrade to 640K. 
With years of experience in manufacturing 
and distribution throughout the world — 
Super Computer gives you the buyer 
exceptional quality, reliability, and price on 
all Systems and Peripheral products. Super 
Computer warrants all Systems and 



Products for a period of one year. 
The Super XT Plus Series computers and 
Peripherals expand to your requirements 
long after purchase. With features like this 
you are assured that the right choice is 
Super Computer. And the right choice is the 
Super XT Plus Series. 

The Super XT Plus Series. 

Interact with the Genius of Super Computer. 




SUPER COMPUTER 
Manufacturer/ Distributor 

17813 South Main St. Suite 123, Gardena, CA 90248 
213/532-2133 



IBM PC/XT is a registered trademark of International Business Machines. Coip. Taxan is a registered trademark of Taxan Corp. 



SEE US AT COMDEX-LOS ANGELES 



• 1985 Super Computer. Inc. 

DEALER AND OEM INQUIRES INVITED 

FAX 213/532-6342 
TELEX 3719484 SUPER 

Super XT System Plus; Color System Plus; Office System Plus; and Starter 
System Plus are registered trademarks of Super Computer, Inc. 

APRIL 1985 • BYTE 13 



LETTERS 



Covering Advanced Systems 

I have now been using a Fujitsu Micro 16s 
(8086 processor) for the past eight 
months, and I don't know how I got this 
far without some kind of micro. I am 
already planning for my next system, 
which will have either a 68020. a 16032. 
or a 32032 processor running UNIX. 

Along with Jay Steinbrunn (Letters, 
August 1984. page 23). I too would like 
to see BYTE raise its sights and start to 
cover this future marketplace. Tell us 
what's happening out there so I can start 
putting money into my "purchase" ac- 
count. I've seen a few inklings of this ad- 
vanced micro technology at some of the 
shows, namely Saber Technology's use of 
the NS32032. 

There are probably more of us out there 
that are interested in these advanced 
systems than you realize. 

William H. Mestler 
Tarzana, CA 

Phil Lemmons replies: 

We will keep an eye out for real 32-bit 

microcomputers at reasonable prices. 

An Apple for BYTE 

I want to compliment you on your special 
articles on the Apple computers [The BYTE 
Guide to the Apple Personal Computers, 
December 1 984). The length of the articles 
showed that your company spent many 
hours choosing articles that would be en- 
joyed by the majority of readers. The ar- 
ticles were not only enjoyable, but they 
were also very informative. They showed 
an extreme amount of quality, which was 
the biggest impression I had after reading 
them. 1 commend your writers and com- 
pany on a job well done. 

Kevin Hoekman 
Lakewood. CA 

Where Credit Is Due 

1 have just read your December 1984 
issue. I was impressed by "High-Speed 
Dial-up Modems" by Kim Maxwell (page 
179). I found the article very informative 
and timely Kim Maxwell's writing style is 
always very informative. He also manages 



to keep the reader interested throughout 
any articles he writes. 

But I must' challenge the description of 
Mr. Maxwell's accomplishments. Mr. Max- 
well is the current president of Racal-Vadic. 
He also holds a philosophy degree from 
Stanford. The remainder of the descrip- 
tion is not correct. 

Racal-Vadic was founded in April 1969 
by seven individuals: Ted Saunders, Bob 
Stires, lay TUtt, Tom McShane. Jim Barrick. 
Larry layior. and Kim Maxwell. The com- 
pany was then known as Vadic. The ideas 
and circuits used to start Vadic were Ted 
Saunders's, 

The very first full-duplex 1200-bps 
modem was invented and designed by 
John A. C. Bingham in 1972 during his 
employment at Vadic. Bingham must be 
given credit where credit is due. Mr. 
Bingham's talents and contributions need 
to be recognized. 

This is not meant to take anything away 
from Kim Maxwell. It is just to set the 
record straight. Mr. Maxwell's contribu- 
tions to the world of data communications 
are numerous, too numerous to list. He 
has peers in this group, but very few. 

An an engineer and investor at Vadic 
from November 1969 to November 1984. 
1 saw most of the events during that period 
and was party to many. I also worked for 
both men and admire their talents and 
contributions to data communications. 

DUANE MARCROFT 

San Carlos. CA 

WordStars .BAK 
Extension 

I read Vincent Alfieri's "WordStar as a Pro- 
gramming Tool" (November 1984. page 
505) with some enjoyment. I have long 
used WordStar for both program develop- 
ment and correspondence, and 1 agree 
with Dr. Alfieri's verdict that it is a program 
hard to beat in power and versatility. Even 
after several years of using WordStar, in- 
cluding writing patches and modifications 
to the program itself, it still manages to 
surprise me with its power. 

I know that the problem that Dr. Alfieri 
has experienced with limited disk space 
is frustrating; I used to have the same 
problem myself. While my ultimate solu- 



tion was to move to 8-inch disks, there are 
more immediately applicable fixes. The 
problem stems from the fact that Word- 
Star saves the old version of an edited file, 
changing the file extension to .BAK. Hav- 
ing rescued program files from otherwise 
hopeless oblivion by the use of this fea- 
ture. I am quite willing to put up with its 
rather extravagant use of disk space. 

It is an almost undocumented feature of 
WordStar that allows you to specify a disk 
drive to receive all work files and the final 
edited file other than the drive on which 
the original file resides. This can be done 
in either of two ways. From the Opening 
Menu, simply choose "D" or "N." as ap- 
propriate, and when asked for the name 
of the file to edit, reply with the filename, 
but follow it with a space and a drive 
designator. For example, to edit the file 
TEST. DOC, which resides on drive B:. and 
save the final, edited version on drive A:, 
answer the "Name of file to edit?" ques- 
tion with BTESIDOC A:. When you end 
the editing session, you will be left with 
the file TEST.BAK on drive B:, and the file 
TEST.DOC on drive A:. For subsequent 
editing, it will be necessary to use drive 
A: as the source drive and B: as the 
destination. The second way to invoke this 
feature is from the CP/M (or MS-DOS) 
command line. To accomplish the same 
task using this method, simply type WS 
BTESIDOC A: at the A> operating- 
system prompt. You can change the mode 
(document or nondocument) to which 
WordStar will default using this method by 
using WINSTALL.COM. 

If this still leaves you with insufficient 
room on the A: drive. WordStar can be run 
without the file WSMSGS.OVR on the 

[continued] 



LETTERS POLICY: To be considered for pub- 
lication, a letter must be typed double-spaced on 
one side of the paper and must include your name 
and address. Comments and ideas should be ex- 
pressed as clearly and concisely as possible. 
Listings and tables may be printed along with 
a letter if they are short and legible. 

Because BYTE receives hundreds of letters each 
month, not all of them can be published, letters 
will not be returned to authors. Generally, it takes 
four months from the time BYTE receives a let- 
ter until it is published. 



14 BYTE • APRIL 1985 




Hard Drives 







You Can Forget About 




The nicest thing about Maynarcfs hard drives is their 
humility. They never draw attention to themselves. They 
simply do what you tell them to do, so you can keep your 
mind on your work, not your hardware. Unsurpassed 
performance. Versatile design. Superb reliability. We give 
you an awful lot to forget about. 









Internal, external, or portable 
hard drives from 10 to 30MB. 




Maynard Electronics 

430 E. SEMORAN BLVD., CASSELBERRY, FL 32707 
305/331-6402 

Inquiry 253 



FINALLY! MAIL ORDER SERVICE YOU CAN DEPEND ON! 




BUSINESS SOFT WARE 

PROFESSIONAL SUPPORT PLUS RELIABLE PERSONALIZED SERVICE 
AND WE'LL STILL BEAT MOST PRICES IN THIS MAGAZINE! 



WORDSTAR 
PROPAK 



$243 



SYMPHONY 



$409 



SIDEKICK 
(CP.) 



$35 



SUPERCALC 
3 



$193 



TAX 
WIZARD 



$59 



LOTUS 
1-2-3 



$295 



AID 

Typequick 

ALPHA SOFTWARE 

Data Base Manager 2 

ANDERSON-BELL 

Abstat 

ASHTON-TATE 

DBase II 

DBase III 

Framework 

Friday 

ATI 

Training Word Star 

Training dBase I 



BORLAND INTERNATIONAL 



IUS 

85 85 Easy System 1 1 395 

General Ledger 595 

295 169 Accounts Payable 595 

KOALA 
395 267 Touch Tablet (PC) 150 

MacVision 400 

265 LEXISOFT 
363 Spellbinder 
363 LIFETREE 
169 Volkswriter Deluxe 

LIVING VIDEO TEXT INC. 
45 Think Tank (IBM) 195 

45 Think Tank (Mac) 150 

MDBS 



495 
695 
695 
295 

75 
75 



Toolbox 


54 


35 


Knowledgeman 


500 


Turbo Pascal 


54 


35 


K Paint 


100 


CDEX 






K Graph 


225 


Advanced Lotus 1-2-3 


70 


45 


MECA 




CHANG LABS 






Managing Your Money 


199 


Rags to Riches Ledger 


99 


79 


MICROGRAFX 




CONDOR 






P C Draw 


395 


Condor 3 


650 


239 


MICROPRO 




CONTINENTAL SOFTWARE 




WordStar 


350 


Home Accountant Plus 


150 


89 


SpellStar 


99 


DIGITAL MARKETING 






CorrectStar 


145 


Writers Pak 


250 


165 


MailMerge 


99 


Milestone (PC) 


250 


165 


InfoStar 


495 


Datebook II 


150 


98 


WordStar 2000 




Proofreader 


50 


38 


WordStar 2000 Plus 




ENERTRONICS 






MICRORIM 




Energraphics 


350 


259 


R Base 4000 


495 


Plotter Option 


100 


55 


Extended Repoit Writer 


150 


FOX & GELLER 






Clout 


250 


DGraph 


295 


155 


MICROSOFT 




dUtil 


99 


58 


Multiplan 


195 


Quickcode II or III 


295 


145 


Word/Mouse 


475 


FUNK 






Chart(MAC) 


125 


Sideways 


60 


40 


Project 


250 


HARVARD SOFTWARE 






MICROSTUFF 




Harvard Project Mgr 


395 


230 


Crosstalk 


195 


HERITAGE 










Smail Key 


90 


65 







184 
295 
295 

95 
250 



495 239 



295 158 



109 
99 

275 
65 
145 

119 

290 

179 

55 

99 

55 

248 

CALL 

CALL 

259 
109 
135 

139 

299 

99 

179 



MONOGRAM 

Dollars and Sense (IBM) 179 
Dollars and Sense (Mac) 149 
MULTIMATE INTERNATIONAL 



110 
99 



495 253 



Multimate 

OASIS 

Word Plus 

Punctuation and Style 

PEACHTREE 

Peachtext 5000 

Calendar Management 

Decision Manager 

Business Graphics System 295 219 

Peachpak 4 395 199 

PETER NORTON 

Norton Utilities (Vers. 3.0)100 

PRENTICE-HALL 

Execuvision 

PRO TEM SOFTWARE 

Notebook II 



150 105 

150 95 

425 185 

195 165 

(525 495 



65 



395 299 



189 
99 



123 
84 



Footnote 

ROSESOFT 

Prokey 

SAMNA 

All Products 

SORCIM 

SuperCalc 2 

Super Project 

SOFTWARE PRODUCTS INT'L 

Open Access 695 349 

SOFTWARE PUBLISHING 



130 79 

CALL 

295 154 
395 219 



PFS File or Write 

SSI 

Word Perfect 

TELOS 

Filevision(Mac) 

TYLOG 

dBase Window 



140 85 



495 249 
195 125 



249 155 



WARNER SOFTWARE INC. 

The Desk Organizer 195 129 

WOOLF SYSTEMS 

Move It 150 85 



Free UPS shipping on orders over $1,000.00 

CALL FOR PRODUCTS YOU DON'T SEE HERE! 
CALL FOR OUR FREE CATALOG 



TERMS: 

• Call for shipping charges 
and support policies 

• Full guarantee against 
manufacturers defects 

• Allow 3 weeks for checks 
to clear 

• Prices may change 

• Call for availability 

• No cash refunds! 

Due to our low prices, all 
sales final. 



TO ORDER CALL TOLL-FREE: 

(800) 235-3020 (USA) 

(800) 235-3021 (CA) 

(415) 382-9085 



BUSINESS SOFTWARE 

448 IGNACIO BLVD., STE. 332 
NOVATO, CA 94947 



• SAME DAY SHIPMENT 
ON MOST ORDERS 

• Prompt UPS service 

• Authorized purchase orders 
accepted 

• Dealer, institutional and 
quantity discounts available 

» No surcharge for credit 
card purchases 

► VISA & Mastercard 
accepted 

► COD 



LETTERS 



system disk. All messages, including 
menus, will appear as "@@@@" in the up- 
per left-hand corner of the screen, but if 
you have sufficient knowledge of Word- 
Star's command structure, that shouldn't 
be more than an inconvenience. 

As I mentioned, this feature is not well 
documented and. I must admit, it is of 
limited usefulness, except in certain situa- 
tions when it makes the impossible 
possible. 

Nick Burkitt 
Long Beach, CA 

As someone who uses WordStar profes- 
sionally on nearly a daily basis, both at 
work (as a technical writer) and at home 
(as a freelance writer), I was flabbergasted 
at several pieces of misinformation and 
bad advice offered by Dr. Vincent Alfieri 
in "WordStar as a Programming Tool." 

Late in the article, Dr. Alfieri describes 
WordStar's "strange habit of keeping a 
backup file every time you edit an existing 
file. This means, in effect, that you must 
maintain a great deal of disk space for the 
necessary backup files." 

So backup files (denoted by the .BAK 
extension) are bad, since they eat up disk 
space. Or are they? 

Dr. Alfieri's attitude toward the WordStar 
backup procedure is perplexing, espe- 
cially since one can justify WordStar's 
backup procedure by simply providing a 
better solution to a problem "solved" by 
Dr. Alfieri early on in the article. There, he 
recommends that, if you have recently 
saved and accidentally delete an impor- 
tant line of code, you can use the ~KQ 
(quit without saving file) command. He is 
silent on what to do if you haven't, which 
is frequently the case if you are on a roll. 

However, thanks to WordStar's backup 
procedure, the situation isn't bad at all. 
even if you've got an hour's work behind 
you in the current file with no saves at all. 
All you really have to do is use ~ KD (quit 
and save file). Following this, you will find 
that WordStar has created a file with a 
.BAK extension on the disk. 

You can then edit this file (after chang- 
ing or removing the .BAK extension). This 
allows you to find the missing text and 
block write it to disk. You can then reedit 
the original file, find the location of the 
missing text, and read it off the disk. This 
procedure is quick, easy, and involves no 
loss of text. 

But even WordStar with its powerful 
backup feature cannot defeat those who 
work to defeat it, as Dr. Alfieri does when 
he suggests using files distinguished solely 

[continued) 



16 BYTE • APRIL 1985 



Inquiry 150 



ProModeml200... 



HOT-LINE 



Our ProModem 1200 Makes 
Smart Modems Look Dumb 



ProModem 1200 
(RS-232) 




■MMMMMi 



Send Or Receive 50 Pages Of Text 
Without Tying Up Your Computer 



COMPUTER 
BUSY 



COMPUTER 
TURNED OFF 




No wonder Smart Modems, Cats, and Maxwells 
cringe when compared to our $495 ProModem 
1200, an expandable 1200/300 baud modem 
for use with all personal computers. It costs 
less, but is smarter than the rest. 

And when you add our $99 Communica- 
tions Buffer and Alphanumeric Display options, 
ProModem 1200 becomes a veritable genius! 

Imagine, you unplug your computer, take it 
home for the weekend, and while you're gone, 
ProModem 1200 answers the phone, collects 
messages up to 50 pages long, sends out 
electronic mail, and displays all events with the 
exacttime of each. Thanks to ProModem 1200, 
expensive, hard-to-use communications soft- 
ware isn't needed. The communications is in the 
modem, and electronic mail becomes aback- 
ground function, where it belongs. 




*^£&*r 



ProModem 1200M 
(Macintosh) 



Simple To Install And Use 

Our Communications Buffer is a 4 by 6 card that 
plugs into the ProModem 1200 motherboard. 
It comes with 2K of CMOS battery backed-up 
memory, expandable to 64K. Part of the mem- 
ory is used as a dialing directory with the 
balance reserved for storage. For $99 more, 
a front panel Alphanumeric Display can be 
added to show time, date, and 24 status and 
help messages. These two powerful options 
can be included at time of purchase, or can 
be added later. 

Hayes Compatible 

ProModem 1200 is Hayes compatible but that's 
where the resemblance ends. Our standard 
$495 modem includes a real-time clock/ 
calendar. Hayes charges hundreds more for a 
Smart Modem with a time-base. Nor do they 
have electronic mail capability at any price. 








ProModem 1200 contains a battery backed-up real-time 

clock/calendar, a large dialing directory and can send or 

receive messages up to 50 pages long without 

tying up the computer. 

Send for complete details and the name 
of the Prometheus dealer nearest you. 



Tfcfrtliiu- PROMETHEUS 

PRODUCTS INCORPORATED 

4545 Cushing Pkwy. • Fremont CA 94538 






2370 



Inquiry 3 1 9 



APRIL 1985 -BYTE 17 



Inquiry 13 5 



New Release 
4.1 




We've continually improved Microstat since it was introduced in 
1978, and the latest release includes many new features you've 
wanted. 



Interactive and Batch Processing 
Expanded Data Management 

Subsystem with New Data 

Transforms 
Reading data files created by other 

programs 
3 types of Analysis of Variance 
Time Series 

Crosstabs and Chi-Square 
Factorials, Permutations, and 

Combinations 
Hypothesis Tests 



Data sets that can exceed memory 
Multiple Regression (including 
Stepwise) 

Scatterplots (including best fit 

regression) 
Correlation Analysis 
12 Nonparametric tests 
8 Probability Distributions 
Descriptive Statistics 
Easy Installation 



Microstat's algorithms have been designed to prevent numeric overflow errors 
and yield unsurpassed accuracy. Microstat's price is $375.00 including the user's 
manual and is available for the Z80, 8086, 8088 CPU's and CP/M80, CP/M86 
MS-DOS, and PC-DOS. To order, call or write. 



6413 N. College Ave. • Indianapolis, IN 46220 
(317) 255-6476 





Trademarks: Microstat (Ecosoft), CP/M (Digital Research), MS-DOS (Microsoft), 
PC-DOS (IBM), Z80 (Zilog), 8086, 8088 (Intel). 



TOTAL CONTROL 

FORTH: FOR Z-8CF, 8086, 68000, and IBM® PC 

Complies with the New 83-Standard 

GRAPHICS • GAMES • COMMUNICATIONS • ROBOTICS 

DATA ACQUISITION . PROCESS CONTROL 

• FORTH programs are instantly 



are 

portable across the four most popular 
microprocessors. 

• FORTH is interactive and conver- 
sational, but 20 times faster than 
BASIC. 

• FORTH programs are highly struc- 
tured, modular, easy to maintain. 

• FORTH affords direct control over 
all interrupts, memory locations, and 
i/o ports. 

• FORTH allows full access to DOS 
files and functions. 

• FORTH application programs can 
be compiled into turnkey COM files 
and distributed with no license fee. 

• FORTH Cross Compilers are 
available for ROM'ed or disk based ap- 
plications on most microprocessors. 

Trademarks IBM, Intemalional Business Machines 
Corp.. CP/M. Digital Research Inc.. PC/Forth + and 
PC/GEN. Laboratory Microsystems. Inc 



FORTH Application Development Systems 

include interpreter/compiler with virtual memory 
management and multi-tasking, assembler, full 
screen editor, decompiler, utilities and 200 page 
manual. Standard random access files used for 
screen storage, extensions provided lor access to 
all operating system functions. 
Z-8t) FORTH for CP/M'" 2.2 or MP/M II. $100.00; 
8080 FORTH for CP/M 2.2 or MP/M II, $100 00; 
8086 FORTH for CP/M-86 or MS-DOS. $100.00; 
PC/FORTH for PC-DOS. CP/M-86, or CCPM, 
$100.00; 68000 FORTH forCP/M-68K. $250.00. 

FORTH + Systems are 32 bit implementations 
that allow creation of programs as large as 1 
megabyte. The entire memory address space of 
the 68000 or 8086/88 is supported directly. 

PC FORTH + $250.00 

8086 FORTH +for CP/M-86 or MS-DOS $250.00 
68000 FORTH + for CP/M-68K $400.00 

Extension Packages available include: soft- 
ware floating point, cross compilers. INTEL 

8087 support. AMD 951 1 support, advanced col- 
or graphics, custom character sets, symbolic 
debugger, telecommunications, cross reference 
utility, B-tree file manager. Write for brochure. 




Laboratory Microsystems Incorporated 

Post Office Box 10430, Marina del Rey, CA 90295 
Phone credit card orders to (213) 306-7412 



ffl ffi 



LETTERS 



in terms of extensions (he suggests "P.I." 
"P.2," "P.3." etc.). Yes. in this case WordStar 
will keep only one backup for each of 
those files. That's great, if you're sure you'll 
never need a backup of any but the most 
recently edited file. I, for one. am not so 
confident. 

Obviously I think there are good 
reasons for backup files. Dr. Alfieri 
reminds us to keep separate backup files, 
but I know from nearly 10 years of work- 
ing with computers and six years of work- 
ing with WordStar that most people forget 
to back up their work, especially if they 
haven't lost any work lately. We WordStar 
users tend to be less sorry than most. 

Finally I am puzzled by Dr. Alfieri's con- 
tention that "You can actually get more 
pages on a disk with many small files than 
with one large file" This isn't entirely true, 
of course, except during an actual editing 
session. 

Every file has overhead, and many sys- 
tems allocate disk space in 2K-byte in- 
crements, including a minimum 2K-byte 
file size. Thus, it's easy to eat up disk space 
by having numerous files with somewhere 
between a few bytes and 2K bytes of un- 
used bytes per file. Let's say that it's IK 
byte on the average. 

Then, if you take our example l80K-byte 
disk again and put 30 files of nominally 
4K bytes each on it. it adds up to 120K 
bytes "used" and 60K bytes "free." The 
truth, however, is that about 30K bytes of 
disk space is eaten up in overhead. That's 
about 15 pages of text! If your system 
allocates in IK-byte increments, that's still 
15K bytes! 

When you're editing a backed-up file, 
WordStar can require about three times 
the capacity of the file on the disk (one 
old backup, one working backup, and the 
file being edited). This means that on a 
disk with 180K bytes (formatted), you 
might want to avoid editing a file of 55K 
bytes or greater, especially if you expect 
to be expanding it by much. 

The best solution is probably to work 
on one disk and keep a separate disk for 
file saves. If you save to this disk after each 
edit, then you can delete the .BAK files 
as you go, meaning that on a 180K-byte 
disk, you can safely edit a much larger file 
of 80K bytes or more. 

THOMAS H. HUNSCHER 

Tigard, OR 

News for Sorcerer Owners 

May I suggest that BYTE try to mention 
the many orphans that have arisen in the 

[continued) 



18 B YTE • APRIL 1985 



Inquiry 2 20 






AST makes modems Short 'n Sweet 



Introducing Reach! ™ 

Our new intelligent 1200 baud 
modem fits where the old standard 
can't- into a single short slot on 
the IBM® PC-XT or Portable. Or any 
available expansion slot on the 
PC, AT and PC-compatibles. And 
its packed with advanced features. 
The Reach! half -card design 
is about a half a pound lighter too. 



CmmmmWk 




So it makes a much nicer travel- 
ing companion than old fashioned 
external modems or heavier long 
slot internal modems. 

Tapping into services such 
as news from Dow Jones,® informa- 
tion from THE SOURCE SM and 
electronic mail delivery from MCI 
Mail™ and performing PC-to-PC 
data transfer has never been more 
convenient. 

AST's reputation is built on 
quality products, quality support 
and quality service. Our com- 



plete documentation makes Reach! 
exceptionally easy to install and 
use, but if it's not enough we're 
always here to help. 

Reach! from AST— the short and 
sweet solution to your telecom- 
puting needs. Call our Customer 
Information Center (714) 863-1333 
Ext. 5249 for more information 
and dealer locations. Or write, AST 
Research, Inc., 
2121 Alton Ave., 
Irvine, CA 
92714 TWX: 
753699AST UR. 




RCSCRRCH INC. 



Sweet Performance 



Crosstalk XVI® Software: 

The industry's best async commu- 
nications software and its excel- 
lent documentation is included 
at no extra charge. 
High Noise Immunity And 
Low Bit Error Rate: Insures data 
integrity even at 1200 bps over 
noisy, lotv-grade phone connec- 
tions, eliminating the inconve- 
nience and cost of retransmission 
because of noise-induced data 
errors. 

On-Board Speaker: Letsyou 
hear all the signals, just as if you 
were dialing the phone your- 
self, a convenient indication of 
proper operation. 
Remote Digital Loopback: Used 
with a remote site, these diag- 
nostics provide "real world" data 
transmission testing over the 
phone line. 

Hayes® Compatibility: Opens 
up a world of popular, immedi- 
ately available software to you. 



Telecommunications 
Flexibility: Enjoy a choice of 110, 
300 or 1200 baud speeds, Bell 103, 
113 and 21 2 A compatibility, 
automatic- dial, answer 
and speed selection, and 
both half- and full- 
duplex communi- 
cations. 



Call Progress Monitoring: 

Provides complete knoivledge of 
communications progress, mon- 
itors dial tone (important in 
offices where you must dial "9" 
first), ringing busy signal and 
automatically disconnects 
no answer calls. 



Reach! trademark of AST Research . ]iu ii.V/t, PC. PC-.X f. I'or'.aNc PC & P 

Business Machines Corp, Dwo Jones NeiesIPeMcval trademark of Dose Jones & Company, Inc. 

TUP. SOURCE- service mark ofSourceTelec.oHipntiitp, Corporation, a subsidiary of The Header's Digest A: 

MCI Mail trademark ofMCi Communications Corp. Hayes trademark of Hayes Microcomputer Products, Inc. 

FmnuKork trademark ofAshton-Tate. Symphony trademark of Lotus Development Corp. Crosstalk XVI 

trademark ofMicrostuf, Inc. 



Inquiry 5 for Dealers. Inquiry 6 for End Users. 




APRIL 1985 • B Y TE 19 



Quick doesrft have to 

Before Microsoft* Word you had to choose between 
quick and clean. Producing professional looking docu- 
ments meant going through draft after draft after draft 
after draft. 

The new Microsoft Word is different. You don't have 
to practice to make perfect. You can use the full power 
of the IBM* PC to eliminate the drafts. And give your ideas 
sudden impact. 

Quick quality 

With Word, what you see on the screen is what you'll see on the page. 
You can preview and design documents. And instantly see the effect 
of your changes. (No more playing blindman's bluff between the screen 
and the printer.) Now you can breathe vitality into blocks of lifeless text. 




"P&" 





(expire m 
i/2- a - ■ cai s r 



BTATZ BUILDim 



r , Sbattary-pou'iirad lighting 

£ globing King Kong Atttchmant 



Y»tam.- ? Available ■ 



fHXOH SPAX BATHTUB HRIwfe 

'This durabXa— p4**t4c — ccHSWtrcrticirr \lt conw 
icuBa divsra tor Ikying umlarvatar amblm. 
iaawntlad or J eft no a p«rm*n*nt tub fixture. 

^u^uet C 

Thm j>*rt*vt u__ 

le isattary-operated, swivels 




S32.00 

, our crane 

programed" 



V/s«pt««b«r Ymo vnt sr. ^ 
— rsy 



$ 55.00)- 
Y-Xunior geolS^Ta'ta will mn'joy seseabling theii^ev 
/replica or North Aserica'e only ACtlvm volcanrffl) . 

S~ — r^A P^ 

> a»»ajttiuad~ tfai* Targe-acsJ6 fir* mnalnm kit. hum a 
the h*l9ht of the top 



h&& $45.00 

loTas. Attaches to chairs or dining- 

, AvaiiaJbJe in "before" and "after* versions; pleasa specif jl 
<>j/ Available in Rocky Mountain or Alpine stylo. 




September 



TOO TAtL TOYS 
NEW PRODUCTS 



EMPIRE STATl Bill OtNt; «1.00 

Dctailtd t/16.*calc model ha* two workins 
elevator* and a battery.powered lighting tVMcm. 
Available with Optional cUmbinK Kins Kont 
attachment. 



HlOHt SI- AN BATHTUB 8*1 BGE 
Tlil* durable turtle conitructlon felt come* with 
**o wind. np scab, divert for tayiag underwater 
c » b,c - C»* be e»»l|y dlMuatled or lef« as * 
Permanent tub fiainro, 



T . , CONSTRUCTION CltANE 

' M serfect »« CS »ory for any r*> Tall tkywr. 

It- "" ! ttOC to ^""y-PMitea. »i«cU 1 

earf caa be wt^nmm^ X 

*imple or comply Wtk ^ 



1 to perform » variety of 



MOUNT ST. HELENS 



^"^ When r.u VlNTAGE F1RE "WWW 



November LIVING ROOM SKl LIFT 

B„ tC ry-oper.«d * ilo « ^^ 

chtirt or diMafroom ttbtej » Ub ^i " ™ 




$55.00 



WS.0Q 



1 A»»ll»bU l« 'b^ C « 

1 A,«^i*tb.lUt«y 



Their first draft vs. our first draft. 



20 B YTE • APRIL 1985 



be dirty. 




Highlight pithy 
phrases, flag impor- 
tant words, drive 
home conclusions. With 
boldface, underline and italics, 

superscript an J ^^ ^J Q mQre hieroglyphic ^ CodeS.) 

Microsoft Word gets unmatched professional quality from dot matrix, 
daisy wheel and ink jet printers. And on the new laser printers, it 
produces stunning results. 

It lets you execute commands and edit text faster, with simple key- 
strokes or the optional Microsoft Mouse. And, MICROSOFT 
Word has windows so you can have multiple docu- The High Perforce software™ 
ments on the screen, and you can easily cut and paste between them. 

Word also includes a computer-based training disk that gets you 
up to speed quickly. Plus, a new comprehensive manual. 

100% money-back guarantee* 

You doht have to take our word about Word. Buy the new Microsoft 
Word from a participating dealer and if you're not satisfied for any reason, 
return it to the dealer within 30 days and hell give you your money back.* 

How do we get higher performance out of the PC? Simple, our 
MS-DOS* operating system tells the IBM PC how to think. And our 
BASIC is the language spoken by nine out of ten microcomputers 
worldwide. 

So, if you want to clean up your act, act quick. Call (800) 426-9400. 
In Washington State, Alaska, Hawaii and Canada, call (206) 828-8088. 
And ask for the name of your nearest 
Microsoft dealer. 



Microsoft and MS-DOS are registered trademarks and The Hi^h Performance Software is a trademark 
of Microsoft Corporation. IBM is a registered trademark of International Business Machines. 

"Offer good in the United States on IBM PC versions of Microsoft Word 
purchased on or before August 31, 1985. 




Jm, ill 



LETTERS 



computer field. There are many micros 
that have no support now, and users who 
still have them are looking for help. 

Ah. nostalgia! Remember Superbrain, 
TRS Model 1. 1MSA1. Videobrain. and 
Exidy Sorcerer? Some people still have 
them but think they are frozen in time. 

For some machines, that is not so. 

The Exidy Sorcerer was still being made 
in 1984. under license in Holland. And 
there are still many fan magazines with 
software and hardware notes being 
published. 

For the Exidy Sorcerer here are some 
of the magazines being published. (Write 
for subscription rates and possibility of 
back issues.) 

European Sorcerer Club 

Back issues only 

Died with issue 43 in June 1984 

Index in issue 26 

Colin Morle 

32 Watchyard Lane 

Formby 

Near Liverpool L37 3JU 

England 

Sorcerer Group International 

c/o Don Gottwald 

POB 33 

Madison Heights. MI 48071 

U.S.A. 

Back issues from Gottwald at: 

19967 Rosin Dr. 

Mt. Clemens. Ml 48044 

U.S.A. (about $18 per volume for vols. 

2 to 5) 

now Sorcerer Group International 

(8 times a year) 
Tommy Stokes (or Ed King) 
Route 1 . Box 12 I 
Everton. AR 72633 
U.S.A. 



ISIS (12 a year) 

c/o Maurice Dow 

84 Camberley Crescent 

Brampton. Ontario L6V 3L4 

Canada 

Sorcerer User Group 

of South Australia (12 a year) 

c/o Don lde 

14 Scott Rd. 

Newton. South Australia 5074 

Australia (index in issue 51) 

Exidy Sorcerer Gebruikers Group 

(6 a year) 
Published in Dutch with full English 

cover-to-cover translation a month 

later 
Index in issue 15 

Redactie ESGG 

P/a Postbus 510 
NL-1000 Amsterdam 
The Netherlands 

Sorcerer User Group Schweiz 

Monthly/in German 

CH 3038 Kirchlindach 
Switzerland (index in issue 50) 

Sorcerer Computer Users 
of New Zealand 

Monthly some Sorcerer material 

c/o Selwyn Arrow 

POB 6210 

Auckland, New Zealand 

I won't give prices since they will change 
and many of the above don't know rates 
to the U.S. since no one has asked before. 

Here are some software sources for the 
Sorcerer that you might want to keep on 
file: 



Roger Hagan 

1146 Fairview Ave. North 
Seattle. WA 98109 

System Software 

I Kent St. 

Bicton, Western Australia 6157 

Australia 

Nigel Yeo 

24 Bodmin Ave. 
Macclesfield. Cheshire 
England 

Caicom BV 

Nijverheidsstraat 22 
NLr2802 AL Gouda 
The Netherlands 

Softdeal 

Postbus 85 
NL-1135 Z] Edam 
The Netherlands 

Computer Collectief 

Amstel 312 (t.o. Carre) 
NL-1017 AP Amsterdam 
The Netherlands 

And some hardware help, firmware, and 
repair services: 

B. J. (Bob) Freeman 

414 Olive Way 

Seattle. WA 99202 

or 

POB 12 58 

Seattle. WA 98111-12 58 

U.S.A. 

Ion Weather 

Morristown Municipal Airport 
Morristown. NI 07960 
U.S.A. 



Sorcerer Computers Users 
of Australia 

(12 a year/Airmail) 

Box 2402 

Melbourne. Victoria 3001 

Australia 

Southern California 
Sorcerer Users Group 

(4 to 6 a year casually) 
c/o Cary E. Stewart 
529 South Beachwood Dr. 
Burbank. CA 91506 
U.S.A. 



Arrington (Ensign) Software 

7337 Northview 
Boise. ID 87304 
U.S.A. 

Howard Arrington 

Suite E. 2312 North Cole Rd. 

Boise. ID 87304 

U.S.A. (This is an old address.) 

COMTRO Software Development 

Rec. Bonsel Str. 10 
NL-6433 EP Hoensbroek 
The Netherlands 



Tercentennial Technical 

70 Tercentennial Dr. 
Billerica. MA 01821 
U.S.A. 

South Valley Electronics Inc. 

Suite E. 2110 Walsh Ave. 
Santa Clara. CA 95050 
U.S.A. 

Mentzer Electronics 

590 South Hill Boulevard 
Daly City. CA 94014 
U.S.A. 



22 BYTE • APRIL 1985 



LETTERS 



The Brothers Van Montfort 

(Gebroeders van Montfort) 
Smedestraat 13 
NL-6411 CR Heerlen 
The Netherlands 



Daniel Say 
Vancouver, BC, Canada 



Apple II Blues 



1 happened on Mr. Dennis Doms's letter 
("A Call for Better Apple Support." 
September 1984, page 14) and but for 
near-identical circumstances, I would have 
dismissed it as one of those individual 
quirks in product support. I fully endorse 
Mr. Doms's comments. His perceptiveness 
of the ProDOS documentation problem is 
particularly commendable when one con- 
siders the fact that he is experienced in 
DOS 3.3! 

In early March of this year our 
information-processing group decided 
that a small "user-friendly" micro might 
provide quick turnaround for some of our 
project record-keeping applications. 
Although the senior program manager 
was a Kaypro owner, he carefully avoided 
imposing his own preference on the 
organization. An Apple 11+ owner made 
a seemingly sound recommendation that 
we get an Apple He with duodisk and a 
small dot-matrix printer. 

'Iwodays later, the Apple lie arrived with 
its display an Epson printer, and the 
duodisk. VisiCalc and two PFS packages 
also were provided to get things started. 
A seeming ton of books accompanied the 
units. A quick pilot run with VisiCalc and 
PFS was made, and a short training ses- 
sion was held for floor engineers and proj- 
ect managers. 

People experienced losses of whole 
files, mutilation of data, and I/O errors 
using PFS. The possibility of human error 
was explored, and new data backup pro- 
cedures were instituted. Repair of the 
duodisk decreased the variety of I/O 
errors but did not eliminate them. Sub- 
stitution of the duodisk with two stand- 
alone drives did not help. The Apple 
technician blamed the problem on PFS. 
The salesman who had originally sold us 
the Apple and the software then sold us 
Appleworks. The users read Appleworks 
documentation, more training sessions 
were held, new files were established, data 
was reentered. Within a day there were 
more I/O errors and losses of data 
reported. The Apple dealer then replaced 
the main logic board and again worked on 

[continued) 



More terminals 
without more computer 



MODEL 5H8B MUIT1P0RT CONTROLLER 

111 UCNXim iSSOCIMtS INC 



The advantages are clear. A BayTech port contender adds 
more users to your computer and does it at a price that's far 
less than expensive hardware or software modifications. A 
Model 5 21 8B, for example, doubles your users by allowing 
1 2 terminals to contend for 6 ports. Simple to set up and 
use, with easy-to-understand messages, the port contenders 
feature protocol conversion; user queue; disconnect by 
operator, computer or time-out; hardware or X-ON/X-OFF 
handshaking; and more. #onni c^3 T7n? 

Sevenmodels, $629 to $1,750. (oOOJ 5Z3-Z/OZ 



> 



BayTech 



DATA COMMUNICATIONS PRODUCTS 



Bay Technical Associates, Hwy. 603, P.O. Box 387, Bay Saint Louis, Mississippi 39520 
(601) 467-8231 Telex: 9103331618 (BAY TECH) 



Share printers 
easily and automatically 



HlllllPllRl tOSlWIIUIL. 



Instead of adding more printers, get maximum use of the 
printers you have by adding a BayTech multiport controller. A 
versatile D-series multiport allows several RS-232C devices to 
share printers or plotters. No cable-switching, knobs to turn, or 
software to add. These printer sharers work automatically; just 
hook them up and they're ready to use. Features include 
custom power-up default configuration, protocol conversion, 
buffer, and your choice of hardware or X-ON/X-OFF 

handshaking. io/\/\i r->"* -*-j/\-) 

Sevenmodels, $319 to $629. (oOOJ 52 3-Z/OZ 



•► 



BayTech 



DATA COMMUNICATIONS PRODUCTS 



Bay Technical Associates, Hwy. 603, P.O. Box 387, Bay Saint Louis, Mississippi 39520 
(601)467-8231 Telex: 9103331618 (BAYTECH) 
Inquiry 41 APRIL 1985 -BYTE 23 



LETTERS 



the duodisk. This finally solved the prob- 
lem (both Appleworks and PFS work well 
now). 

A task request arrived on my desk to 
write some printer set-up utilities and a 
project accounting package for the Apple. 
Coming from a CP/M-86, TRSDOS, and 
IBM-VS background, I didn't instantly see 
the relationship between the Apple DOS 
and BASIC The undocumented "loading 



of Integer BASIC" was disturbing. My first 
effort on the printer routines worked well 
enough (after I found that I/O had to be 
directed to physical card slots and that the 
Apple did not support logical devices!). 
Since the design for the project account- 
ing task involved multiple files and several 
large arrays, I broke out the books. 

As in Dennis Doms's case, we had 
received a ProDOS users manual and an 



If lightning still scares you, 

you're using the wrong file manager. 




Be sure. Btrieve™. 

Lightning may strike. But it doesn't 
have to destroy your database. 

Btrieve™ file management offers 
automatic file recovery after a system 
crash. So accidents and power failures 
don't turn into database disasters. 
Your Btrieve-based applications will 
come up when the lights come back on. 

Fast. Btrieve is lightning fast, too. It's 
written in Assembly language espe- 
cially for the IBM PC™. And based on 
the b-tree file indexing system, with 
automatic balancing and electrifying 
access speed. 

The standard for networking. 
Etrieve/N (network version) sets the 
standard for the industry's most 
popular LANs, including IBM's PC 
Network. 

Fully-relational data management. 
Sof tCraf t's entire family of products 



gives you a complete, fully relational 
database management system. 
Rtrieve™ adds report writing capabil- 
ities . Xtrieve™ speeds users through 
database queries with interactive 
menus. 

For professional programmers. 
Btrieve is the fast, reliable answer for 
all your application development. In 
any development language— BASIC, 
Pascal, Cobol, C, Fortran, and APL. 
With Btrieve, you can develop better 
applications faster. And know they'll 
be safe if lightning strikes. 




SoffCraftlnc. 

P.O. Box 9802 #917 Austin, Texas 78766 
(512) 346-8380 Telex 358 200 



Suggested retail prices: Btrieve, $245; Btrieve/N, $595; Xtrieve, $195; Xtrieve IN, $395; Rtrieve, $85; 
Rtrieve/N, $175. Requires PC-DOS or MS™-DOS l.X, 2.X, or 3.X. Btrieve, Xtrieve, and Rtrieve; IBM; 
and MS are trademarks of Sof tCra ft Inc.; International Business Machines; and Microsoft Inc. 



Apple He owners manual. These had no 
substantive information that documented 
the machine or Apple's software. The 
paper quality was nice; the indexes and 
tables of contents had errors. The ProDOS 
manual talked about differences from DOS 
3.3 and seemed aimed at people familiar 
with Apple DOS. The ton of books also 
included books for the 80-column card, 
the Apricot printer card, a duodisk 
manual, a pamphlet for the display, and 
several excellent manuals for VisiCalc, PFS, 
and the Epson printer. 

I called our dealer and was told that we 
deserved a ProDOS Programmer's Manual 
since it had been out of stock when we 
bought the machine. He did not have one 
but would special-order one for us. I de- 
scribed my needs for documentation and 
was told I would need the Applesoft and 
DOS 3.3 manuals and that these were 
extra-cost items. I was told to ignore all 
references to Integer BASIC since it was 
an "archaic tongue" and no documenta- 
tion was in print for it. (Undocumented 
modules of an operating system bother 
me!) The pricing was confused, but a total 
of $70 plus tax finally went on our pur- 
chase order. We soon received a bill. Two 
trips to the dealer and multiple phone 
calls over a six-week period failed to pro- 
duce the manuals. There was talk of them 
being in a warehouse, then being back- 
ordered from Apple, then being out of 
print. Finally, with a Friday promise that 
they would be mailed on Monday, Ac- 
counting paid the bill. Two weeks later the 
dealer produced an explanation that the 
required manuals were unavailable from 
Apple and there was no projected delivery 
date. 

Two months after the first phone call 
about documentation, our "free" ProDOS 
Programmer's Manual arrived. It was much 
as Mr. Doms describes— dependent on the 
DOS 3.3 and Applesoft documentation. 
The senior program manager visited the 
Apple dealer and with some hostility of- 
fered an invitation to small-claims court. 
The salesman then gave us his personal 
copies of the DOS 3.3 and Applesoft 
manuals. We then considered that the pur- 
chase order had been filled! 

Our company's purchasing agent will en- 
sure that no more business is directed to 
the Apple dealer who sold us the lie. 
Apple's viability in the microcomputer 
business is doubted by every engineer, 
project manager, and technician who has 
been associated with our He. We now have 
three more Kaypro owners. At the office 
I'm pleased by the Displaywriter with its 

{continued) 



24 BYTE • APRIL 1985 



Inquiry 351 



If you don't have a 
Hercules Graphics Card, yc 

pnH nn lnnkino* likp th 



uies ijrapmcs ^ara, you < 
end up looking like this: 



you could 



"I know, because one day it hap- 
pened to me . . . 

"I was running some routine 
tests on a non-Hercules mono- 
chrome graphics card when I 
was struck by a severe case 
of low resolutionitis. I'm the 
president of Hercules and 
that's me exhibiting the 
symptoms of the disease 
in its advanced stages. Not 
a pretty sight, is it? 

"What causes low res- 
olutionitis? Experts point 
to ordinary monochrome 
graphics cards with 
coarse, hard-to-read 
graphics. A bad case of eyestrain may 
develop if action is not taken immediately. 

"Fortunately for me, a Hercules Graphics 
Card was nearby. A quick change brought 
soothing 720 x 348 graphics. That's twice 
the resolution of ordinary 640 x 200 graph- 
ics cards. 

"Which means better graphics for 
Lotus™ l-2-3 T , M Symphony 1 ," Framework," 
pfs:Graph* Microsoft* Chart and Word, 
SuperCalc3* AutoCad" and dozens of 
other programs. 

"Including Microsoft Flight Simulator, 
now Hercules compatible ! 

"Oh, and don't forget that a parallel 
printer port is standard on the Hercules 
Graphics Card, not an extra cost option. 

"Now, if you're worried about buying 
a new product that hasn't had all the bugs 




worked out, relax. Hercules has 
sold more monochrome graphics 
cards for the IBM® PC,XT™ and AT™ 
than anyone else in the world. 
jgjj^ "So . . . you're convinced that 
you should buy a Hercules 
Graphics Card. Now, steer 
clear of cheap imitations. 
You may save a few bucks, 
but you won't get all of 
these five essential features 
which only Hercules has: 

"1) A safety switch that 
helps prevent damage to 
your monitor, 2) the 
ability to keep an IBM 
or Hercules Color Card 
in your system, 3) the ability to use the PC's 
BASIC to do graphics, 4) a Hercules de- 
signed chip that eliminates 30% of the parts 
that can go wrong, and 5) a two year warran- 
ty, because we think reliability is something 
you should deliver and not just talk about." 
Call 1-800-532-0600 Ext 408 for the 
name of the Hercules dealer nearest you 
and we'll rush you our free info kit. 




Hercules. 

We're strong on graphics. 



Address: 2550Ninth St., Berkeley, CA 94710 Ph: 540-6000 Telex: 754063 Trademark/Owners: Hercules/Hercules Computer Tech; IBM,XT,AT/IBM; Lotus 1-2-3, 
Symphony/Lotus Development; Framework/Ashton-Tate; Microsoft/Microsoft; pfs:Graph/Software Publishing; SuperCalc 3/Sorcim-IUS; AutoCacl/AutoDesk. 



Inquiry 183 



APRIL 1985 -BYTE 25 



LETTERS 



p-System. I am quite happy with my 
TRS-80 at home. Recent clamorings by my 
offspring for Macintoshes coincided with 
the He problems. Both kids and their 
friends understand why 1 hesitated then 
made another choice for them. 

This is my first experience with an Apple. 
1 have no personal need to make it more 
detailed or extended in time. I find the 
documentation to be shallow the I/O im- 
plementation crude (even when measured 
against 1980 standards), and the service 
haphazard. I more carefully assess what 
Apple owners and users have to say about 
their machines. 

My feelings might not be quite so strong 
if only the hardware or the documentation 
had been screwed up. The infant mortali- 
ty in the hardware combined with docu- 
mentation hassles have heavily under- 
scored the flaky sales support and the 
mediocrity of the operating system and 
language. Color Apple with a worm in it! 

By contrast, Digital Equipment Corpora- 
tion provides us with singularly outstand- 
ing support for our Rainbow. That system 
is supported by an excellent certification 



program for third-party software. If DEC 
says that a particular package such as 
CTOS or Lotus 1-2-3 will run on the Rain- 
bow, you can bet the company has tried 
it and within the range of their tests has 
found no implementation bugs. Our IBM 
Displaywriters use CP/M-86 and UCSD p- 
Systems that have outstanding support 
from D/R and Softtech as well as IBM. My 
TRS-80 came with a language reference 
manual and DOS manual as well as 
owners/operators manuals. The additional 
technical reference manuals were readily 
available from the dealer at nominal 
charges. Every landy manual was well 
written, pretty much stand-alone, and had 
a good reference appendix. The indexes 
and table of contents did not contain 
errors in page numbers. 

lust out of curiosity, I priced documen- 
tation at our local Commodore dealer and 
at a nearby Tandy Computer Center. Much 
of it is free with the system, and the prices 
on the remainder are moderate— what's 
more, it's readily available. 

Paul M. Hine 
San Diego, CA 



When a manufacturer sells a computer 
and withholds information on that com- 
puter, the computer's worth is in direct 
proportion to the amount of information 
one receives. No information means the 
computer is worthless. A computer is 
unique in this regard. If you buy a car, 
someone can always drive it or fix it 
without a shop manual. Try programming 
a computer to do something you want it 
to do without information on the I/O ports 
or the memory map. Try getting a com- 
puter fixed that no one has schematics for. 
Of course, somebody can always charge 
you three or four hundred dollars and 
replace the entire main circuit board when 
only a twenty-cent chip may be defective. 
You don't need a schematic to do that. 
After all, the manufacturer makes a lot of 
money selling you a new circuit board for 
$400 when you don't need one. 

I have an Apple lie. I was originally in- 
terested in the compact Apple lie because 
of its built-in disk drive and its ability to 
be powered from a 12 -volt car battery. 
Apple computer promised some day Real 

[continued] 



YEAR WARRANTY ON CARD AND DRIVE 



10 Mbyte 



SATISFACTION 
GUARANTEED 



Suggested retail price SI095 

$4)4E" SPECIAL 
M m 9 9 SALE PRICE 



100% refundable within 30 days. 

For IBM PC* & compatibles. 2 
Years Warranty on disk drive and 
controller card. 

• Half -height drive with 
controller card 

• Low error rate 

• Low power 

• High performance and 
reliability 

• Easy installation 

20 Mbyte for* 1,495. 



TO ORDER SEND CHECK OR 
MONEY ORDER TO: 

LInde Technology, Inc. 

8820 S. Sepulveda Blvd., 

Suite 204 

Los Angeles, CA 90045 

OR CALL TOLL FREE: 

I (800) 227-2400 ext. 974 

In California call 

I (800) 772-2666 ext. 974 
Visa and MasterCard accepted 

California residents add 6/2% sales tax. 



For dealer Inquiry and more 
Information call: (213) 215-9484 

*IBM is a registered trademark of International 
Business Machines Corp. 



Yes, send me more 
information on: 

□ 10 Mbyte Disk Drive 

□ 20 Mbyte Disk Drive 

Llnde Technology, Inc. 

8820 S. Sepulveda Blvd., Suite 204 
Los Angeles, CA 90045 



I 



III 




26 BYTE • APRIL 1985 



Inquiry 235 



A few smart reasons 
to buy our smart modem : 



SSOHH 



Features 



Ven-Tel 
1200 PLUS 



Hayes 



1200 and 300 baud, auto-dial, auto-answer 

Compatible with "AT" command set 

Can be used with CROSSTALK-XVI or Smartcom II software 

Regulated DC power pack for cool, reliable operation 

Eight indicator lights to display modem status 

Speaker to monitor call progress 

Attractive, compact aluminum case 

Two built-in phone connectors 

Compatible with The Source and Dow Jones News Retrieval 

Unattended remote test capability 

Phone cable included 

Availability 

Price 



Yes 


Yes 


Yes 


Yes 


Yes 


Yes 


Yes 


No 


Yes 


Yes 


Yes 


Yes 


Yes 


Yes 


Yes 


No 


Yes 


Yes 


Yes 


No 


Yes 


Yes 


Now 




$499 


$6 




The Ven-Tel 1200 PLUS offers high speed, 
reliable telecommunications for your per- 
sonal computer or terminal. Whether you 
use information services or transfer data 
from computer to computer, the Ven-Tel 1200 
PLUS is the best product around. Available 
at leading computer dealers and distribu- 
tors nationwide. 

Also from Ven-Tel: internal modems for the 
IBM and HP-150 Personal Computers with 
all of the features of the 1200 PLUS. 

You choose. The Ven-Tel 1200 PLUS- 
the smartest choice in modems. 



Ven-Tel Inc. 

2342 Walsh Avenue 
Santa Clara, CA 95051 
(408) 727-5721 



MS AA CO OH RD SD TR MR 



Crosstalk is a trademark of Microstuf; Hayes and Smartcom II are trademarks of Hayes Microcomputer Products. 
Inquiry 394 



APRIL 1985 -BYTE 27 



i 



T 



\ NOTES 

i 

33 





i" i ,: V ; V' V' /'' r ; r 




Borland's SideKick 
Software Product of theYear 



SideKick is InfoWorld Software Product of the Year. It won over 

Symphony. Over Framework. Over ALL the programs advertised in 

this magazine. Including, of course, all the "fly-by-night" SideKick 

imitations. SideKick .... Simply the best. 





Here's SideKick running over Lotus 1-2-3. in the SideKick 
Notepad you'll notice data that's been imported directly from 
the Lotus screen. In the upper right you 
can see the SideKick Calculator 




All the SideKick windows stacked up over Lotus 1-2-3. From 
bottom to top: SideKick's "Menu Window", ASCII table, 
Notepad, Calculator, Appointment Scheduler/Calendar, 
and Phone Dialer. Whether you're running WordStar, Lotus, 
dBase, or any other program, SideKick puts all these desktop 
accessories instantly at your fingertips. 



InfoWnrld Re pint Card 1984b v Popular 
Com pud lift. Inc.. a subsidiary of CW 
Communications Inc. Reprinted f 

Inf nW'nrld 1060 Marsh Road. 

Mvnlo Park. CA 94025. 



Jerry Pournelle, BYTE: "If you use a 

PC, get SideKick. You'll soon become 
dependent on it." 

Garry Ray, PC Week: "SideKick deserves 

a place in every PC" 

Charles Petzold, PC Magazine: "In a 

simple, beautiful implementation of Word- 
Star's block copy commands, SideKick 
can transport all or any part of the display 
screen (even an area overlaid by the notepad 
display) to the notepad." 

Dan Robinson, InfoWorld: "SideKick is a 

time-saving, frustration-saving bargain . . 



m BORIAHD 



Softwares Newest Direction 

4V3 Scotts Valley Drive 



Kfik iM-rr-niuA-rmiuAi Scolts Val!e / CaiHom a 95066 

W) INTERNATIONAL telex. 172373 



Symphony, Lotus & Lotus 1-2-3 are trademarks of Lotus Development Corp. dBase 
& Framework are trademarks of AshtonTate. WordStar is a trademark of Micropro 
International Corp. SideKick is a trademark of Borland International. 




Inquiry 50 



APRIL If 85 -BYTE 29 



Inquiry 404 



Planning to deduct your PC? 
The IRS just made it tougher. 

According to the Tax Reform Act of 1984, if you want 
to take a business deduction for your personal computer, you 
now must prove you use it more than half the time for 
business. And that proof must be in the form of a daily log. 

You can waste valuable time each day recording your 
use. Or you can use WorkLog to do the job in seconds. 

Considering how much your time is worth, isn't 
$59.95 a worthy investment? 

To order call (206) 526-0711. Or ask for our brochure 
that describes the power and elegance of this state-of-the-art 
software. WorkLog makes it easy. 

WorkLog 

The essential time-saver. ^ 



For IBM -PC, -XT. -AT, and compatibles. Requires l2Hk and any version of PC -DOS. 
WyssWare/5207 Ravenna Ave. N.E./Sealtle. WA 98105 



19SS Besi Western lmernJtion.il 



The right place 
at the right price. 




Make reservations at any Best Western, v * 

see your travel agent, or call 

1-800-528-1234. 

"World's /aigest chain of independently owned and 
operated hotels, motor inns, and resorts" 



LETTERS 



Soon Now to have a liquid-crystal display 
that would draw very little power and 
operate from a battery. 

The first snag I ran into was when I tried 
to find out from the Apple lie manuals 
what the pin connections were for the 
nonstandard serial-port connector. No 
luck. Nowhere in the manuals that came 
with the computer could I find the con- 
nections for the serial interface. 

The next thing I did was call Apple long 
distance. I was put on hold for five minutes 
listening to some music. Needless to say, 
. it was not high-fidelity. Finally. Patty came 
on the line and told me I had to call 
another long-distance number in another 
part of the country. Get this, I am in L.A. 
Well, I called that number, and an answer- 
ing machine came on the line telling me 
to leave my name and phone number and 
my question and they would get back to 
me within 24 hours. Since 1 am in and out 
of the office all day and no one else at 
my office is knowledgeable enough to ask 
intelligent technical questions about 
RS-232C interfaces, that might be a prob- 
lem. If Apple personnel happened to call 
back while I was out of the office, at least 
another 24 hours would go by before I 
could ask the first question. At this rate, 
a year or more would go by before I could 
write this assembly-language program to 
talk to the Apple lie. The answering 
machine also advised me to contact my 
nearest dealer. 

We have a lot of Apple dealers here in 
L.A. I contacted three of them. None of 
them knew anything more about it than 
I did. One advised me to go to all of the 
bookstores and get a book on the Apple 
He. I did just that; in fact. I bought three 
books. So far. I have spent at least 40 
hours of my valuable time. $40 on books, 
and $50 on long-distance phone calls. I 
now know the pinouts on the connectors, 
but that is all the useful information those 
three books could tell me. Absolutely 
nothing else of any value. No memory 
locations for setting up the RS-2 3 2C inter- 
face chip or how to write code to send or 
receive data from the RS-2 32C interface 
in assembly language or BASIC. Nothing. 

Has Apple management grown so 
greedy that it doesn't want people to buy 
any device to hook up to an Apple lie 
unless they buy it from Apple? Does 
Apple want anyone to write and sell soft- 
ware other than Apple Computer? Is 
Apple management so paranoid that 
someone will copy the lie that it is afraid 
to document the ROM? Why does Apple 
have an army of lawyers ready to sue 

[continued) 



30 BYTE • APRIL 1985 



NEW PRODUCT NEWS 
FROM TELETEK 



Systemaster II. Responding to 
market demand for speed and in- 
creased versatility, Teletek is proud 
to announce the availability of the 
next generation in 8-bit technology 
— the new Systemaster II! The 
Systemaster II will offer two CPU 
options, either a Z80B running 
at 6 MHz or a Z80H running at 
8 MHz, 128K of parity checked 
RAM, two RS232 serial ports with 
on-board drivers (no paddle 
boards required), two parallel 
ports, or optional SCSI or IEEE-488 
port. The WD floppy disk control- 
ler will simultaneously handle 
8" and 5Va" drives. A Zilog Z-80 
DMA controller will provide in- 
stant communications over the bus 
between master 
and slave. Add 
to the DMA 
capability a true 
dedicated inter- 
rupt controller 
for both on- 
board and 
bus functions, 
and the re- 
sult is un- 
precedented 
performance 

Systemaster II will run under 
CP/M 3.0 or TurboDOS 1.3, and 
fully utilize the bank switching 
features of these operating systems 



SBC 86/87. As the name indi- 
cates, Teletek's new 16-bit slave 
board has an Intel 8086 CPU with 
an 8087 math co-processor op- 
tion. This new board will provide 
either 128K or 512K of parity 
checked RAM. Two serial ports 
are provided with individually 
programmable baud rates. One 
Centronics-compatible parallel 
port is provided. When teamed up 
with Systemaster II under TurboDOS 
1.3, this 5MHz or 8MHz multi- 
user, multi-processing, combina- 
tion cannot be beat in speed or 
feature flexibility! 



SSELET£J<TIM^ b! 

wmmrER i 

ANDJH50MB 



Teletek Z-150 MB. Teletek is 
the first to offer a RAM expansion 
board designed specifically for the 
Z-150/Z-160 from Zenith. The 
Teletek Z-150 MB is expandable 
from 64K to 384K. Bring your 
Z-150 up to its full potential by 
adding 320K of parity checked 
RAM (or your IBM PC, Columbia, 
Compaq, Corona, Eagle, or Seequa 
to their full potential). The Teletek 
Z-150 MB optionally provides 
a game port for use when your 
portable goes home or a clock/ 
calendar with battery backup! 

Evaluate the Systemaster II, SBC 
86/87 or Teletek Z-1 50 MB for 
30 days under Teletek's Eval- 
uation Program. A 

money-back guarantee 
is provided if not com- 
pletely satisfied! All 
Teletek products carry 
a 3-year warranty. 

Dedications subject to 

change without 
notice.) 




4600 Pell Drive 
Sacramento, CA 95838 
(916)920-4600 
Telex #4991834 
Answer back — Teletek 



LETTERS 



anyone if the company even hints of 
manufacturing a machine that will run 
Apple software? Hasn't Apple manage- 
ment learned that the more information 
you supply in the box with the computer, 
the less money it takes to support the 
product^ Is the well-documented IBM PC 
outselling Apple everything? 

One would think that Apple had learned 
its lesson with the Apple 111. The Apple 



111 came with no real documentation as 
well. We all know what happened to the 
Apple 111. From what I have seen of the 
Macintosh documentation, the Mac is in 
the same boat. I would not use a Mac if 
you gave me one. 

The next problem I found was that the 
RS-232C data-transmission rate in the 
Apple lie was off frequency by just enough 
to prevent the RS-232C from working prop- 



L Graphics Takes A 
Quantum Leap Forward! 



Si 




II 
■ 



THE INOVION PERSONAL 
GRAPHICS SYSTEM FEATURES: 

• The most advanced color mapping 
capabilities available. 

• 250,000 simultaneously displayable 
colors. 

• A palette of 2.1 million colors. 

• Frame Grabber/Digitizer to capture 
TV, VCR or Video Camera pictures. 

• Quality three-dimensional texture 
capabilities. 

• Built-in Icon/Menu software. 

• Completely Mouse/Trackball driven. 

• Fonts, Brushes, Microscope, Pat- 
terns, and Rotations. 



• A complete stand alone system. 

• A 19" enhanced color monitor. 

• 780K Graphics Memory. 

• 512 x 480 pixel display with 24bits 
per pixel. 

• RS232C port allows access to all 
system functions and memory. 

• NTSC composite video and NTSC 
RGB signal. 

• 1-year warranty on graphics genera- 
tor and 90-day warranty on 
enhanced monitor. 

• Special introductory 30-day satis- 
faction guarantee. 

• Complete system for $4,495 



■kir 






BSHRHlHffiTHGT.HIllI 



! Uvton Utah 8H0B1 



(801 546-2850 



erly. Apparently Apple divided down the 
microprocessor clock crystal to save the $3 
cost of a data-transmission rate crystal. If 
the lie had a schematic in the owners 
manual, any competent computer techni- 
cian would know about the transmission- 
rate problem before purchasing the com- 
puter. I guess that is one of the reasons 
Apple did not put a schematic in the 
owners manual in the first place. The man 
on the Apple hotline told me to take the 
lie into any Apple computer dealer, who 
would fix it at no cost. None of the three 
dealers I contacted had heard of this repair 
program, nor would they do it at no cost. 

If you buy an Apple other than the He. 
you need your head examined. 

A Commodore 64. although it costs 
much less than the Apple lie. is worth at 
least 100 times as much because you can 
use it. You can get a vast quantity of pro- 
gramming and technical information on 
the Commodore 64 in great detail. Infor- 
mation that is necessary to program and 
interface all the things that people need 
a microcomputer for. 

I now own a $1200 paperweight. 

Paul Lamar 
Redondo Beach. CA 

Where Are Apples 
Manuals When You 
Need Them? 

Last night I tried to order an Apple \\c 
Reference Manual at my local dealer. I was 
told that the manual costs $50. could be 
ordered only in boxes of five, and if I 
would order five that they would be glad 
to handle my order. Of course 1 thought 
that 1 would go elsewhere. 

When 1 arrived home, some back issues 
of Apple Assembly Line had come in the mail. 
1 discovered that Texas Apple dealers had 
the same policy and that it extended to 
ProDOS and lie manuals as well. Eventual- 
ly I learned that these manuals could be 
ordered by mail from a dealer in New York 
(212-512-4100). 

Providing access to the fundamental 
hardware manuals for the machine is the 
most minimal level of dealer support 
possible. Perhaps K-Mart does not provide 
access to manuals for the computers it 
sells, but every self-respecting computer 
dealer must do this. 

The poor availability of these manuals 
must in part stem from the fact that they 
are seen as manuals only a hacker or pro- 
fessional software developer would want 
or need. Apparently Apple believes that 
its customers are not likely to grow in 
[continued on page 436) 



32 B YTE • APRIL 1985 



Inquiry 198 



FIXES AND UPDATES 



C Changes Quickly 



Our December 1984 article "C-Language 
Development Tools" by G. Michael Vose 
(page 119) brought several new C inter- 
preter vendors out of the woodwork. We 
also learned of a name change for one of 
the article's previewed products. 

The Safe C Compiler from Catalytix Cor- 
poration (55 Wheeler St., Cambridge, MA 
02138) is now called the Safe C Runtime 
Analyzer. The product's functions have not 
changed, only the name, to distinguish it 
from production compilers. 

Catalytix also announced the release of 
its Safe C Standalone Interpreter. The in- 
terpreter is a complete C implementation 
that allows the use of any text editor and 
source-code formatting or cross-referenc- 
ing utilities. Code interactively written and 
debugged within the interpreter can sub- 
sequently be compiled into executable 
files, using any complier that conforms to 
the Kernighan & Ritchie (K&R) C-language 
specification. Currently available for the 
IBM PC and other MS-DOS machines, the 
Safe C Standalone Interpreter sells for 



$400. A Macintosh version is under 
development. 

Age of Reason Company (318 East 6th 
St., New York, NY 10003) has announced 
the availability of RUN/C— a C interpreter 
for MS-DOS computers. Distributed by 
Lifeboat Associates (1651 Third Ave., New 
York. NY 10128). RUN/C costs $150. 

RUN/C features a built-in line editor 
similar to the Microsoft BASIC editor, plus 
the capability to use an outside editor. You 
can even compile your C programs from 
within the RUN/C interpreter. RUN/C fully 
implements the K&R specification for C, 
but this interpreter has a limit of 2000-line 
programs. 

Gimpel Software (3207 Hogarth Lane, 
Collegeville, PA 19426) markets a C inter- 
preter called C-terp, also for the IBM PC 
and work-alikes using MS-DOS 2.x. C-terp 
costs $300; a demonstration disk is avail- 
able for $45. C-terp also fully implements 
the Kernighan & Ritchie C-language 
specification, includes an editor, and of- 
fers batch-mode operation. C-terp sup- 



ports small or large memory models. 

Lastly, Computer Innovations (980 
Shrewsbury Ave., Tinton Falls, NJ 07724), 
purveyors of the C86 C Compiler, offers 
lntroducing-C, a C interpreter designed to 
help the programming novice learn C as 
her/his first language. 

Introducing-C does not fully implement 
the K&R C specification, but it documents 
the differences in a 10-page appendix. For 
example, lntroducing-C does not support 
multidimensional arrays, #defines, struct 
and union data structures, the typedef 
declaration, and several other com- 
ponents of C. Future revisions to the in- 
terpreter will provide many of the features 
currently missing. Introducing-C's inter- 
preter is upward-compatible with the C86 
compiler. 

Computer Innovations claims that lntro- 
ducing-C is suitable for learning structured 
programming and most of C and for de- 
veloping "medium-sized, non-scientific 
programs." Available for the IBM PC, lntro- 
ducing-C costs $95. 



Printer Buffer Messaged 



In the June 1984 BYTE there were several 
errors in the article "Build a Printer Buf- 
fer" by John Bono (page 142). Richard 
Carlsen from Upton, New York, built the 
printer buffer, encountered and overcame 
some difficulties, and wrote us about his 
travails. Here are some excerpts from his 
letter: 

I noticed corrections in the November 
1984 BYTE on the ROM listings (page 34). 
but 1 haven't seen any hardware updates, 
so here are some suggestions for improv- 
ing John Bono's project. 

In listing 1 on page 453 (June BYTE), line 
13 should show EQU 0FFFFH (zero, not 
"oh") and line 17 should be A. 0FFH. 

In the schematic on page 450. IC 14 is 
incorrectly labeled 74LS00 at the top of 
the page. IC 14 is a 74LS367A. (1 should 
also note that 1 tried both the 74LS367s 
and 74LS367AS. and they both work fine.) 



Input pins 4 and 10 of IC 14 should be tied 
high or at least not left floating as those 
sections are unused. Floating leads are not 
good practice and could cause some oc- 
casional errors. 

On the middle left on page 450 the data 
lines are in inverse order. DO should be 
D7, D6 should be Dl, and so on until D7 
is DO. They are labeled correctly at the 
Z80 and 2716. 

A useful item to add is a reset switch 
across the 68-^F (microfarad) cap on pin 
26 of the Z80. 1 added a 47-ohm resistor 
in series with the switch so discharge of 
the 68-jiF cap is a little more gentle. 

At the lower right on page 4 52 you'll 
find IC 13 and IC 24 (printer acknowledge 
FF). A signal is missing (G6) at IC 13, pin 
9. Remove pin 4 of IC 24 from + 5 V. Leave 
IC 24, pin 2 connected to + 5 V. Now con- 
nect pin 4 of IC 24 to pin 9 of IC 13. This 



will allow D306 at line 26 on page 453 to 
reset the printer's acknowledge flip-flop. 

On page 452, data lines, strobe, busy, 
and acknowledge to the left of IC 9 should 
be labeled "TO COMPUTER." At the right 
of IC 15 they should be labeled "TO 
PRINTER." 

Be aware that all 4164 RAM chips are 
not created equal. They come in different 
speeds usually designated by a -2 or -3 
suffix. 1 have had no trouble with either. 
However, some companies require 128 
refresh cycles over a 2-microsecond 
period. Others may require 2 56 refresh 
cycles over a 4-microsecond period. 1 used 
NEC 4164-2 chips and Mostek 4 564-2 
chips successfully, both of which require 
128 cycles. Others requiring 2 56 refresh 
cycles gave me occasional errors. 

Another pointer: Watch the power wir- 

[continued) 



APRIL 1985 • BYTE 33 



Inquiry 270 



MidWcst 
Micro-Peripherals 

Save with Confidence 



Let us earn your trust as 


we 




have that of others, such 


as: 


Goodyear • General Motors • US Navy • 


etc. 


Ask for: Sue, Marianne, Kathy, Tim, 


Rick or Roger 


List Our Price 


PRINTERS 






StarGemini1OX(120CPS) 
Star Gemini SG-10 (NEW!) 


$399 


$219 


299 


229 


Star Gemini 15X 


549 


349 


Star Gemini SG-15 (NEW!) 


499 


379 


Star Delta 10 / Delta 15 (160 CPS) 




SCALLS 


Star Radix 10 /Radix 15 (200 CPS) 




SCALLS 


Epson RX 80 (100 CPS) 


399 


229 


Epson RX-80 FfT + Series (NEW!) 
Epson FX-80 + Series (NEW!) 


499 


289 


689 


389 


Epson FX-100 + Series (NEW!) 


995 


599 


Epson JX 80 Color 


799 


SCALLS 


Epson LQ 1500 (200 CPS) 
Gkidata 92P (80 Col.. 160 CPS) 


1495 


SCALLS 


599 


379 


Okidata Apple Imagewriter Compatible 
Okidata 93P (136 Col., 160 CPS) 
Okidata Pacemark 241 OP (150 CPS) 


699 


449 


999 


599 


2495 


SCALLS 


Panasonic 1091 (120 CPS) 


499 


299 


Panasonic 1090, 1092, 1093 




SCALLS 


Toshiba 1340P (54 CPS) 
Toshiba 1351P (100 CPS) 


985 


769 


1855 


1299 



DAISYWHEEL PRINTERS 

Brother HR-15XL (17 CPS) 599 359 

Brother HR-25 (23 CPS) 895 619 

Brother HR-35 (32 CPS) 1245 839 

Silver Reed EXP 400 399 279 

Silver Reed EXP 500 (16 CPS) 599 359 

Silver Reed EXP 550 (1 9 CPS) 699 439 

Silver Reed EXP 770 (36 CPS) 1295 829 

Star PowerType (18 CPS, Bi-Dir) 499 328 

Juki 6100 (18 CPS, Bi-Dir) 599 399 

Juki 6300 999 749 

Daisywriter2OOO(40CPS) 1495 899 

IBM PC SYSTEMS 

PCs and PCXT's 

Complete Systems 
Call and Save! % 

EXPANSION CARDS 

ST Six Pac Plus 64K, S/P/C+S/W 
QUADRAM Complete Line 
MEMORY CHIPkit-64K 150ns-9 chips 

| * ~ DISK DRIVES 

Teac Half Heights 
Teac 2 Drive Kit - Complete 
Tandon 100-2 (IBM Standard) 
Maynard - 10 Meg. Internal Drive 
Maynard 20MB Tape Backup 
Taflgrass Drives w/Tape Backup 
rbo 1 10 MB Internal Hard Drive 




395 



299 

499 
399 
1395 
1895 



I 



269 

SCALLS 

49 



149 
299 
159 
SCALLS 
SCALLS 
SCALLS 
SCALLS 



MODEMS 
ayes Smartmodem 300 
Hayes Apple 2c Modem Pkg w/Soltware 
Hayes Apple 2E Modem Pkg w/Software 
Hayes Smartmodem 1200 
Hayes Smartmodem 1 200B w/lBM Software 

MONITORS 

Amdek 300, 310; Color 500. 600, 700 
Princeton Graphics 4x12 Maxi 2 



289 
399 
399 
699 
599 



219 

269 
239 
469 

399 



Lotu 





SOFTWARE 

Lotus 1-2-3, Symphony & Hundreds More 

SANYO SYSTEMS 
omplete Sanyo 
Systems 

Lots of 
Free Software 






SCALLS 

SCALLS 



SCALLS 



LOW 

AS 

$899 



OUR PRICE COMMITMENT 

MidWest will try in good faith to beat 
any nationally advertised price. 



Prices subject to change and type errors 

^P FREE CARD USE ©© 

"Call Today! 

Information - Ordering 

1-800-423-8215 

In Ohio 1-800-321-7731 

C USTOMER SERVICE (513) 663-499 2 

CASH PRICES: Cert. Check, Money Orders, VISA or MC 
CODs (Add $5]_ AM EX (Add 4%) P.0.S (Add 5%) 

M^^#V.- MldWeit Micro-P«nphcrali 

(Division of Inlolel. Inc ) 

135 Soulh Springfield St 

SI Pans Ohio A3072 



FIXES & UPDATES 



ing to these RAM chips. Pin 16 is ground 
and pin Sis +5 V. This is not as you would 
usually expect with 16-pin chips, and I sure 
got caught wiring these wrong. 

On my unit 1 used a crystal oscillator at 
1 MHz hooked to pin 6 of the Z80. If you 
do this, a IK pull-up resistor or so at pin 
6 will ensure that the " I " levels are 4.0 to 
4.5 V as the Z80 requires there. 

Not all printers and computers handle 
Centronics interfacing in the same man- 
ner. My Kaypro 2, for example, does not 
use the ACK signal. The buffer works fine 
with my Okidata 92 with the Kaypro using 
just the busy signal. Your computer may 
also use other signals such as the "Paper 
Out" line. Consult your printer and com- 
puter manuals or dealer about your 
printer and computer parallel ports before 
starting this project. In most cases you 
should be able to work things out with the 
available signals supplied by the buffer. 

Some new ideas have been suggested 
by other readers of this article for improv- 
ing the project and I'll pass them on. 

I . Multiple dumps by the use of a repeat 
printout switch would be useful. This 



would allow extra copies of a document 
to be printed from the buffer's memory 
without disturbing the computer. 
Recoding of the RAM and some minor 
hardware additions would be necessary. 

2. Self-check of memory. This would also 
require some additional ROM coding. 

3. A printer code preloader, which would 
let you change printer functions (such as 
compressed print mode, character pitch, 
or near letter quality) by sending the 
printer prewritten codes stored in the 
printer-buffer ROM. These could be 
selected by thumb-wheel switch and 
entered to the printer by a push-button 
switch using the remaining port 7 select 
at G7 pin 7 of IC 1 3 as a means of address- 
ing this feature. 

If anybody has completed these or other 
features, please write in to BYTE and let 
the rest of us in on it. This is a great proj- 
ect when it's working. I would like to thank 
John Bono for writing this article and for 
his patience with my questions. I wish also 
to thank other readers for their time on 
the phone and exchange of ideas, and 
BYTE for acting as the intermediary. 



BYTE'S BUG: 



Communication on Modem Gets Garbled 



In the What's New section of the Guide to 
the Apple Personal Computers, a special sup- 
plement to the December 1984 BYTE, we 
inadvertently published the wrong picture 
and supplied some incorrect information. 

The picture on page A 136 does not 
depict Multi : Iech Systems' internal modem 
card for the Apple 11, but rather it shows 
Multi-lech Systems' MultiModem 1200/ 
300-bps external modem. 

The single-board MultiModem lie, 
shown here, fits entirely inside Apple 11 
series computers and does not require a 
serial card. It operates at 110/300 bps. 
features auto-answer and auto-dial, and 
comes with communications software, The 
list price is $229, which includes free-time 
and subscription discounts to a number 
of database networks, such as Dow lones 
News/Retrieval Service and the Instant 

Corrections from Commodore 




Yellow Page Service. 

The MultiModem 1200/300 stores up to 
six 31 -digit telephone numbers, detects 
dial and busy tones, and can continuous- 
ly redial busy numbers. It lists for $549. 

Both modems come with two-year war- 
ranties. Multi-Tech Systems Inc. is head- 
quartered at 82 Second Ave. SE, New 
Brighton, MN 55112. (612) 631-3550. 



The model number of Commodore's new 
128K-byte computer was incorrectly stated 
in the February What's New section (page 
40). 

The computer is known as the Commo- 
dore CI 28. Also, it uses the 8502 micro- 
processor to run Commodore software 



and its Z80 coprocessor runs at 4 MHz. 
The article also described a new high- 
speed disk drive that works with both the 
C128 and the C64. In its C64 mode, the 
drive transfers data at 300 cps. While in 
its CI 28 or CP/M modes, the data rate is 
5200 cps. ■ 



34 BYTE • APRIL 1985 



( 




byBFTEif 

THE HIGH PERFORMANCE 
RANDOM ACCESS TAPE BACK-UP ! 

THE NEXT GENERATION OF TAPE DRIVES. 



DATASAFE STAND ALONE UNIT 



DATASAFE INTERNALLY MOUNTED UNIT 



C/W cable (chains off DB-37 connector on rear of computer) ■ Is daisy chained off the existing floppy controller 



, Has its own booster power supply 
■ Is easy to install 



Requires IBM plug compatible bus and internally selected 
4 channel select floppy disk controller 
No additional slots needed 




For IBM XT's and compatibles ■ Incorporates main frame micro reel technology 

I Random access ■ Use of PC DOS and MS DOS commands (tree, path, etc.) ■ MTBF - 20,000 hrs. 

Reliable (1 50,000 load and unload failsafe tested by an independent laboratory) 

e device drivers ■ C/W cable ■ Extremely fast back-ups ■ 10 meg available only 

Priced less than 50% less than the nearest rival ■ ONE YEAR WARRANTY 



The DATASAFE uses industry 
standard Va" tape on a self threading 
2.2" spool 




1050 Clinton St. 

Buffalo, New York 

14206 

Tel.: (716) 694-5366 Telex: 916428 



762 Gordon Baker Rd. 

Willowdale, Ontario 

Canada M2H3B4 

Tel.: (416) 497-0531 or toll free 

1-800-268-5412 Telex: 06-986133 



Inquiry 1 7 



Business Machines Inc. 

PRIME DEALER DISTRIBUTOR TERRTORIES AVAILABLE. OEM CALLS INVfTED. 



IBM IS THE REGISTERED IRAK MARK FOR WTERNAT10NAL BUSINESS MACHINES I 



You have wanted to do something, 
but the door has been closed . . . 



« File Edit Icons Ui*pf»fj Search i : «n1 SHjl« 




TOTAL $49,956.66 



|%C0AL| | 99.9% | 



$6,554.0 10/28/ 432 Yes 

$233.00 10/28/ 879 Yes 

C$9.00) 10/25/ 456 Yes 

$7,654.3 10/23/ 543 No 

$6,778.0 10/19/ 66 No 

($43.33) 10/19/ 983 No 

$5,656 5 10/17/ 543 No 

$100.00 10/17/ 666 Yes 

$1,987.0 10/12/ 110 No 

$8,887.9 10/10/ 65 Yes 

*7R9fl m/1fl/ 777 Nn 



Helix is a data-based system, so that onee you enter information 
you can use it for anything- reports, lists, analyses, mail merge 
printouts, or even relational look-ups to other data-bases within 
Helix. 



Requires: an external drive or hard disk 
Runs on: 512K Macintosh ■ Lisa with MacWorks 
Supports: Hard disks ■ Keypad «15" Imagewriter 
Includes: Helix Program disk - Helix Guided Tour disk ■ Helix 
Resource/Work disk ■ User Manual - 18-ring project binder 
■ Reference pad for custom documentation * Registration card 
for support & updates 

Offers: Modeless input, interactive query, editing, & report gen- 
eration • Text-formatting ■ Calculations between fields & across 
records ■ Object-oriented, icon-based design a Relational Look- 
ups ■ List management ■ Mail merge ■ Clipboard & ASCII file 
transfer ■ Special Template tools for form design • User defined, 
automatically updated Indexes - Unrestricted length & number 
of fields • Complete printing options Vertical and horizontal 
autoscroll ■ Visual building blocks for arithmetic, date, text & 
Boolean operators, functions, & values. 




The full functionality of Helix lies within its six 
basic icons. You can "learn by doing" with Helix, 
since it does not get in your way with imposed 
structure or restrictions. You don't have to 
worry about parameters, command codes, or 
"modes". 



Icons ih\|Unij Search 




All open windows are updated automatically. 
Used here to simultaneously enter project 
notes, see synopses, get phone numbers, and 
display important "global" statistics. 



SOFTCON 

Georgia World Congress Center 

Atlanta, Georgia 

Sunday-Wednesday 

March 31 to April 3, 1985 

10 am to 5 pm daily 

Booth I427 



© 1985 Odesta Corp. 

Odesta Helix is a trademark of Odesta Corporation 
Apple, Lisa, and Macintosh are trademarks of 
Apple Computer, Inc. 



Odesta Helix opens the door. 



6 File Edit Icons RKptaij Search Fonl St\ji« 
shipping 



i File Edit Icons His 



(££) 



t 
had. 



: Q 



t . j- 



fflse] ™ I 




S3 



quant, shipp look pri I 



look price. 




inv. amt. 
item * 
I name 
price 

! publisher 



fl^o1^ [^[?^[^g[^][ml^j 



item * •••; inventory 



Now, you don't have to learn a programming language or worry 
about "relational algebra". Except for the three numbers you 
see, no typing was used to create these calculations: "If invoice 
amount is equal to or greater than $2500, then don't charge for 
shipping, otherwise charge 2.5% of the invoice amount" . . . 
"Look up the price for the item in the inventory data-base" . . . 
"Multiply the item's price by how many were shipped" . . . 



« File Edit Icons ttltplKij SggfgTi Rfflt SU)I« 



Relation 



Template 



Field 




Helix combines powerful functions with a design that gives you 
direct control. 



Yfstcrdyps Son Sphere, Ink, 
1225 HorUmit PIjcc 
Suite 33 
Hoboken, Nev Jerxeu 02334 

It, 

Deor Joonne, 

Thank you for responding to our questionnaire. 

fls a fiber-dye specialist working with natural color techniques, 

yourperspectiue on the needs and interests of the members of 

BeMused is particularly welcome. 

The results of our suruey are uery interesting. 

53% of current members haue neuer attended a regional workshoJ 

or seminar. 

39% said that they would be interested in a co-op buying seruice J 

pay as much as V3u7yeer to help defray administratiue ewpenses. 

There were 9 groups or at least IS people interested in 

participating in the newly proposed special-interest cluslL 

Tb» ftuornno fihar-rmll nonor nlml inrnroo of *h««i» Mil! 



Built-in text formatting lets you combine infor- 
mation in a new way for mail merge letters, 
memo's, reports or free-form comments. 



Helix provides a unique place to work because 
it takes a different approach. 

It is based on the idea that we discover 
the important questions, relationships, and 
connections between things by working with 
them. 

(So we need to be able to work with words and 
numbers in many different forms). 

That our own experience, perception, and 
understanding are the basis of true "knowledge 
work". 

And that this process can be both productive 
and playful, intently serious and intensely 
enjoyable. 

(So we need a technology that is flexible, 
accommodating, and directly responsive to our 
actions and style of dialogue). 



Inquiry 287 



0/7£S/J9 ^ 


HE 


L 


=N^ 



► 



Odesta, 5186 Doolittlc Drive, Northbrook, IL 60062 (USA) 
(800) 323-5423 'In Illinois, (312) 498-56 15 



A Data-Based Information Management & 
Decision Support System 



ANNOUNCING 
ANOTHER WN6-5IZE 
ACVANI^E C.lToH 
HAS OVER OTHER 
PRINTERS/ 

The biggest name in printers might be a 
name you don't even know. C. Itoh. 

But people who do knowC. Itoh printers 
know that they've always had a big edge in 
speed. And an edge in reliability. 

And an edge in support, with service centers 
nationwide and the backing of a worldwide 
$60 billion parent company. 

And now, C. Itoh Pro Writer™ dot matrix and 
StarWriter™ daisy wheel printers have a big 
edge in price, too. 

We've been able to reduce our retail prices 
an average of 30%, because weVe reduced 
our distribution costs by selling directly to our 
dealers. 

It's given us a price advantage of $80 to 
$1,000 over what the competition has to offer. 

Take a look. 




DOT 
MATRIX 


BRAND 


MODEL NO. 


SPEED 

LINES PER 
MINUTE 


PRICE 

MFG. SUGG 
RETAIL 


C. ITOH 


7500 


54 


$ 289 


EPSON 


RX-80FT 


44 


369 


STAR 


GEMINI 10X 


48 


399 


IBM 


5152 


36 


494 












DAISY 
WHEEL 






CHARACTERS 
PER SECOND 




C. ITOH 


A10-20S 


29 


$ 669 


OUME 


LP20 


20 


799 


NEC 


2010 


20 


950 


DIABLO 


620 


20 


995 










C. ITOH 


F10-55 


58 


1,449 


DATA 
PRODUCTS 


DP55 


55 


1,895 


OUME 


1155 


55 


1,995 


NEC 


7700 


55 


2.495 



C. Itoh. The best selling printers in the world, 
with 1.7 million printers sold in 1984 alone, now 
have the best prices, too. 

For more information call toll-free 
1-800-423-0300. Or write C. Itoh Digital 
Products, Inc. 19750 South Vermont Avenue, 
Suite 220, Torrance, CA 90502. 



cLTrmrrD 



1984 News Group Chicago, Inc. 



rnces 



OUR 

paces 




38 BYTE • APRIL 1985 



' 



!U ProWriter& StarWriter are TrademarksofC. Itoh Digital Products. Inc. 
© 1985 C. Itoh Digital Products. Inc. 

Inquiry 5 5 for Dealers. Inquiry 56 for End Users. 



WHAT'S NEW 



Thermal Printer Has Full Graphics Ability 



General Electric recently 
announced the Model 
3-8IOO, a $300 thermal- 
transfer letter-quality printer 
with full graphics capability. 
Although the printer comes 
standard with a Centronics- 
type parallel connector. GE 
will also sell two compatibili- 
ty modules for $89.95. One 
allows direct connection to 
the Atari 400/800 com- 
puters and Commodore's 64 
and VIC-20; the other 
module permits direct con- 
nection to the IBM PCjr. 

The Model 3-8100 prints 
at two speeds: 50 cps in 
draft mode and 2 5 cps in 
letter-quality mode. At both 
speeds, the printer is quiet. 
A I6-dot print head pro- 
vides high-resolution dot- 
matrix output. 

The Model 3-8IOO can use 
single-sheet roll, or 9!/2-inch- 
wide fanfold paper. It prints 




The General Electric 3-8IOO dot-matrix printer. 



on thermal paper if you 
remove the cartridge. Each 
ribbon cartridge costs about 
$6 and provides about 
100,000 characters. 

The manufacturer's sug- 
gested retail price for the 



Model 3-8IOO is $299.95. 
Contact General Electric Co., 
Consumer Electronics Busi- 
ness Operation. POB 4840. 
Electronics Park. Syracuse, 
NY 13221. (315) 456-3304. 
Inquiry 600. 



Keyboard Enhancement Has Macros, Data Encryption 



Borland International's 
SuperKey is a RAM- 
resident keyboard-enhance- 
ment program featuring 
macros and automatic data 
encryption. This program 
lets you define, edit. save, 
load, and recall macros on 
your IBM PC in real time. 

SuperKey has a memory- 
resident full-screen macro 
editor that can be pulled 
down on top of a currently 
running program. The pro- 
gram supports single-key 
macros, user-definable 
macro titles, help menus, 
date/time information, alter- 
nate arrow-key definition, 
key-click switching, keyboard 
lock/unlock, sound effects, 
and color control. 



With SuperKey, you can 
recall from a command 
stack the last 20 commands 
entered. These are displayed 
in a menu window that lets 
you select, edit, and reuse 
the commands at the DOS 
command level or in a pro- 
gram. SuperKey has a cut- 
and-paste capability that 
permits any data to be 
copied from the screen, 
stored within SuperKey 
under any key. and then 
moved into another 
application. 

The SuperKey data- 
encryption function lets you 
encode files in two modes. 
In the first mode, no second 
file is created, thus saving 
disk space. In the second 



mode, you can encrypt 
binary files by transforming 
them into ASCII. This lets 
you transmit these files over 
telephone lines. The recip- 
ient of the files decrypts 
them using a special "key." 
Also featured is a display 
burn-in protection capability 
that automatically switches 
off a monitor's video signal 
when no activity is detected 
for a reasonable length of 
time. The display is automat- 
ically reactivated when any 
key is pressed. The program 
is priced at $69.95. Contact 
Borland International. 4113 
Scotts Valley Dr.. Scotts 
Valley. CA 95066. (408) 
438-8400. 
Inquiry 601. 



GE TVs Also 
Serve As Monitors; 
Modem Unveiled 

Two new television sets 
from General Electric 
can also serve as your com- 
puter monitor. The Model 
13BC5509 is a 13-inch color 
monitor, and the Model 
12XR5204 is a 12-inch 
black-and-white monitor. 

Both units handle 80-char- 
acter-per-line displays and 
feature a display width- 
reduction capability that 
prevents character loss at 
the screen's edge. They ac- 
cept composite-video input 
as well as standard antenna 
connectors and are compati- 
ble with most home com- 
puters from Apple, Atari, 
Commodore, IBM. and other 
manufacturers. 

Suggested retail price is 
$489.95 for the color moni- 
tor and $129.95 for the 
black-and-white unit. 

In a concurrent announce- 
ment. GE introduced the 
Model 3-8200 direct/acoustic 
modem. This 300-bps mo- 
dem has a standard 
RS-232C cable, and optional 
cables are available for 
direct connection to Atari or 
Commodore computers. 

The 3-8200 has automati- 
cally switchable answer/ 
originate modes and once 
tied into a database, it auto- 
matically adjusts for full- and 
half-duplex operation. 

The Model 3-8200 modem 
has a suggested retail price 
of $119.9 5. Contact General 
Electric Co., Consumer Elec- 
tronics Business Operation, 
POB 4840, Electronics Park. 
Syracuse. NY 13221. (315) 
456-3304. 
Inquiry 602. 

(continued) 



v 



APRIL 1985 • BYTE 39 



WHAT'S NEW 



Kaypro's 286i Is an IBM PC AT Compatible 



Kaypro's 286i, scheduled 
for formal introduction 
last month, is compatible 
with IBM's Personal Com- 
puter AT. It features a 
6-MHz 80286 processor, two 
parallel ports, one serial 
port, and two 1.2-megabyte 
5 '/4-inch floppy-disk drives. 
The system's main board 
comes with 512K bytes of 



RAM, expandable to 640K 
bytes; expansion cards can 
supply an additional 15 
megabytes of RAM to the 
system. 

Three of the system's eight 
IBM-compatible expansion 
slots are occupied, leaving 
five for additional peripher- 
als or memory. The 286i's 
84-key keyboard is also 



functionally compatible with 
the PC AT's. 

Standard with the system 
are color graphics (RGB and 
composite, both of which 
are compatible with the IBM 
graphics-display card) and a 
clock/calendar with battery 
backup. Software bundled 
with the system includes 
Micropro's WordStar, Mail- 



Merge, InfoStar. CalcStar, 
tutorials, and Microsoft's 
GW-BASIC interpreter. 

The Kaypro 286i has a 
suggested list price of 
$4 5 50. For more informa- 
tion, contact Kaypro Corp., 
533 Stevens Ave., Solano 
Beach, CA 92075. (619) 
481-4300. 
Inquiry 603. 



13(H:ps Printer Is Compatible with Epson RX80 



The Aero from Alphacom 
is a 130-cps dot-matrix 
printer that's compatible 
with existing software and 
graphics supporting Epson's 
RX-80 series printing pro- 
tocols. Alphacom has op- 
timized the Aero's print 
speed with the inclusion of 
path-seeking logic and a 2K- 



byte buffer. 

Aero produces the stan- 
dard 96-member ASCII 
character set, and it lets you 
define up to 96 characters 
for custom applications. It 
forms 6- by 8-dot characters 
with true descenders in a 6- 
by 9-dot matrix grid using a 
9-wire print head. The print 




hlphacoms Aero is compatible with Epson's RX-80. 



ALL Card Allows 4 Megabytes RAM in IBM PC 



head outputs either 480 or 
960 dots per line in either 
alphanumeric or bit-image 
modes. 

Manuscripts printed out 
on the Aero can display any 
mixture of superscripts, 
subscripts, double-strike, 
enlarged and emphasized 
type, underlining, text, and 
graphics on the same line. 
Aero will print out an 
original and three copies 
using perforated or regular- 
bond paper. 

Indicators for power-on. 
on-line, paper-out, and ready 
are located on the top right 
side of the Aero along with 
its operator controls. Aero 
comes with a self-test fea- 
ture, and it uses standard 
Epson ink cartridges. 

RS-232C and Centronics- 
type parallel versions of 
Aero are available. The sug- 
gested retail is $249.95. 
Contact Alphacom Inc., 2323 
South Bascom Ave., Camp- 
bell, CA 95008, (408) 
559-8000. 
Inquiry 604. 



ALL Computers' ALL 
Card ATI features a 
custom CMOS memory- 
management unit (MMU) 
processor, in addition to 
other memory and interface 
enhancements, on a single 
IBM PC expansion card. The 
ATI comes with a clock/ 



calendar, a serial port, the 
MMU, and room for I 
megabyte of on-board 
memory using 256K-byte 
chips. You can add up to a 
total of 4 megabytes to the 
system. 

With 2 56K bytes of 
memory, the ATI ALL Card 



is $1295. Without the MMU. 
it's $795. A version with 
neither memory nor the 
MMU is $395. Contact ALL 
Computers Inc., Suite 501, 
110 Bloor St. W, Toronto, 
Ontario M5S 2W7. Canada, 
(416) 960-0111. 
Inquiry 605. 



Internal Hard Disk 
for PC AT 

Control Data Corporation 
is now shipping a 30- 
megabyte hard-disk drive 
that fits inside IBM's PC AT. 
Called the StorageMaster 
630, this drive has a typical 
access time of 30 milli- 
seconds, which is reported 
to be approximately 25 per- 
cent faster than the native 
IBM drive. 

The StorageMaster 630 
uses the PC AT's resident 
disk controller and is ship- 
ped with adaptive software 
that lets you tweak it for 
operation with PC-DOS 3.0. 
The software gives you the 
ability to logically partition 
and format the disk, and in- 
cludes diagnostic routines. 

A pair of StorageMaster 
630s can be tucked side-by- 
side within the PC AT's 
cabinet. Installing the 
StorageMaster 630 into the 
PC AT housing is said to re- 
quire less than one hour. 

Disk image or selected 
file-backup capabilities for 
the StorageMaster 630 are 
available through use of 
Control Data's 4 5-megabyte 
StorageMaster 74 5 !4-inch 
cartridge streaming-tape 
backup system. 

The suggested list price 
for the StorageMaster 630 is 
$214 5. Contact Control Data 
Corp.. 8100 34th Ave. S. 
POB 0, Minneapolis, MN 
55440. (800) 328-3390. 
Inquiry 613. 

(continued) 



40 BYTE • APRIL 1985 



' 




They said it couldn't be 
Borland Did It-Turbo Pascal 3j0 



The industry standard 

With more than 250,000 users worldwide Turbo 
Pascal is the industry's de facto standard. Turbo 
Pascal is praised by more engineers, hobbyists, 
students and. professional programmers than any 
other development environment in the history of 
microcomputing. And yet, Turbo Pascal is 
simple and fun to use! 



TURBO 
3.0 



TURBO 
2.0 



MS 
PASCAL 



COMPILATION SPEED 



EXECUTION SPEED 



CODE SIZE 



BUILT-IN INTERACTIVE EDITOR 



ONE STEP COMPILE 

(NO LINKING NECESSARY) 



COMPILER SIZE 



TURTLE GRAPHICS 



BCD OPTION 



PRICE 




Portability 

Turbo Pascal is available today for most computers 
running PC DOS, MS DOS, CP/M 80 or CP/M 86. A 
XENIX version of Turbo Pascal will soon be announced, 
and before the end of the year, Turbo Pascal will be 
running on most 68000 based microcomputers. 

An Offer You Can't Refuse 

Until June 1st, 1985, you can get Turbo Pascal 3.0 for 
only $69.95. Turbo Pascal 3.0, equipped with either the 
BCD or 8087 options, is available for an additional 
$39.95 or Turbo Pascal 3.0 with both options for only 
$124.95. As a matter of fact, if you own a 16 Bit 
computer and are serious about programming, you 
might as well get both options right away and save 
almost $25. 

Update policy 

As always, our first commitment is to our customers. 
You built Boriand and we will always honor your 
support. 

So, to make your upgrade to the exciting new version of 
Turbo Pascal 3.0 easy, we will accept your original Turbo 
Pascal disk (in a bend-proof container) for a trade-in 
credit of $39.95 and your Turbo87 original disk for 
$59.95. This trade-in credit may only be applied toward 
the purchase of Turbo Pascal 3.0 and its additional BCD 
and 8087 options (trade-in offer is only valid directly 
through Borland and until June 1st, 1985). 



O Benchmark run on an IBM PC using MS Pascal version 3.2 and 
the DOS linker version 2.6. The 179 line program used is the "Gauss- 
Seidel" program out of Alan R. Miller's book: Pascal programs for 
scientists and engineers {Sybex, page 128) with a 3 dimensional 
non-singular matrix and a relaxation coefficient of 1.0. 



The best just got better: 
Introducing Turbo Pascal 10 

We just added a whole range of exciting new 
features to Turbo Pascal: 

• First, the world's fastest Pascal compiler just got 
faster. Turbo Pascal 3.0 compiles twice as fast as 
Turbo Pascal 2.0! No kidding. 

• Then, we totally rewrote the file I/O system, and 
we also now support I/O redirection. 

• For the IBM PC versions, we've even added 
"turtle graphics" and full tree directory support. 

• For all 16 Bit versions, we now offer two addi- 
tional options: 8087 math coprocessor support 
for intensive calculations and Binary Coded 
Decimals (BCD) for business applications. 

• And much much more. 

The Critics' Choice. 

Jeff Duntemann, PC Magazine: "Language 
deal of the century . . . Turbo Pascal: It 
introduces a new programming environment and 
runs like magic" 

Dave Garland, Popular Computing: "Most 
Pascal compilers barely fit on a disk, but Turbo 
Pascal packs an editor, compiler, linker, and run- 
time library into just 29K bytes of random- 
access memory." 

Jerry Poumelle, BYTE: "What I think the 
computer industry is headed for: well 
documented, standard, plenty of good features, 



and a reasonable price." 



\ 
\ 
\ 




pea' 



labia at 
"resty oJ - 



rall(8° 0)556 



Y£S! I V 

pleases 



Avaiia^ - To rder by 



j Des« 



.cribeVf 



C^^sterni 



Mine « 
I Use: 






I 

V 



jdate: 
t-o< »< TlJ rbo 



I 



send: 

$ 6 9.95 --— ' 

$109-90 -"-—-"■ 
Pascal * /BCU CD 

512 ^ s includ^ sh ' P rders 



Pascal 3 



,/8087 a 



t 

1 



all L 



$l0 per 



proc 



») BORWflD 

■» INTERNATIONAL 

Inquiry 47 
Turbo Pascal is a mgistered trademark of Boriand International. Inc. 



Software's Newest Direction 

411 3 Scotts Valley Drive 
Scotts Valley, California 95066 
TELEX; 172373 





#?• 



o^sstfSSr' 






WHAT'S NEW 



S-100 Graphics Cards Produce TV-Quality Images 



The S-Series o f color- 
graphics products lets 
you produce images to the 
maximum resolution of 
NTSC and PAL television 
standards on Cromemco's 
68000-based S-100 com- 
puter systems. The S-Series 
comprises the previously an- 
nounced SDD Color Digitizer 
Interface, plus four new 
S-100 (1EEE-696 standard) 
bus cards. 

The SV1D Color Video 
Generator Board works with 
the SDMA Video Memory 
Controller card to generate 
color images by panning 
over a virtual 1024- by 
1024-pixel image. The NTSC 
version displays 7 56 by 484 
pixels, while the PAL card 
set generates a 7 56- by 
577-pixel image. Depending 
on graphics memory, up to 
8 bits of data can be allo- 
cated per pixel to select up 
to 2 56 colors from a palette 
of 2 56.000. 

The 2 56KTP card comes 




S-Series color -graphics cards from Cromemco. 



with 2 56K bytes of two- 
ported memory; four 
256KTP cards are required 
to take advantage of the full 
1024- by 1024-pixel. 256- 
color capability of the S- 
Series. The SDCM Color 
Modulator Board converts 
red-green-blue signals to 
broadcast-type composite 



signals meeting either the 
NTSC or PAL standards. 

The S-Series cards allow 
computer-generated or 
digitized graphics to be 
overlaid on other broadcast 
images. A zoom feature 
allows up to 4-to-l enlarge- 
ment of screen areas, while 
a pan feature can be used 



to move through the 1024 
by 1024 image area either 
displaying edges or wrap- 
ping around to the opposite 
side of the image. Image in- 
put and output are possible 
using a wide range of 
devices: Any composite- 
video image can be digi- 
tized by the SDD card, while 
the other cards combine to 
provide output in RGB and 
NTSC and PAL composite- 
video formats. 

The SV1D video-generator 
board costs $795. while the 
SDCM modulator card is 
$995. Both are available in 
either NTSC or PAL versions. 
The SDMA controller board 
is $795. and each 2 56KTP 
memory card is $1995. The 
SDD digitizer card, for either 
NTSC or PAL versions, is 
priced at $995. Contact 
Cromemco Inc.. 280 Bernar- 
do Ave.. POB 7400. Moun- 
tain View. CA 94039. (415) 
964-7400. 
Inquiry 606. 



TI's Arborist, Decision-TVee Analysis Software, Supports IBM 



Texas Instruments' Arbor- 
ist. a decision-tree anal- 
ysis software package, runs 
on both the Tl Professional 
Computer and IBM's Per- 
sonal Computer. Arborist 
brings quantitative decision- 
making techniques to plan- 
ners using these desktop 
computers. 

In decision-tree analysis, a 
series of multiple chance 
events and possible deci- 
sions is represented by a 
tree structure. If the planner 
can estimate the outcome 
and probability of each in- 
dividual decision or event. 
Arborist can then determine 
the best choice at each 
decision point. 

Arborist is intended 
primarily for people who 
have at least a basic 
understanding of decision- 
tree analysis. It uses a 
graphical display of deci- 



sion-tree structures to aid in 
the decision-making process. 
The program accommodates 
color or monochrome dis- 
plays and the 8087 numeric 
coprocessor. 



Arborist sells for $595. For 
further details, contact Texas 
Instruments Inc., POB 80963. 
Dallas. TX 75380-9063. (800) 
527-3 500. 
Inquiry 607. 




A decision tree created by TI's Arborist. 



XL/Serve for Macs 

XL/Serve permits the 
Macintosh/XL (formerly 
the Lisa 2/10) to function as 
a disk and print server in an 
AppleTalk Personal Network. 
It lets distributed Macin- 
toshes share disk storage 
and lmagewriter printers. 

XL/Serve includes disk and 
printer software that runs 
concurrently on a host Mac- 
intosh/XL under MacWorks. 
driver software for individual 
Macintoshes, and a backup 
and restore utility. 

You can partition the host 
disk into individual volumes, 
and users can be granted 
read-only or read-write 
status. 

XL/Serve is $200. Contact 
Infosphere Inc.. 4730 South- 
west Macadam Ave.. Port- 
land. OR 97201. (503) 
226-3515. 
Inquiry 608. 

[continued) 



42 BYTE • APRIL 1985 



' 



Borland Does It Again: 
SuperKey $69.95 



Sure, ProKey™ is a nice little program. But when the people who brought you 

Turbo Pascal and SideKick get serious about keyboard enhancers, you can 

expect the impossible ... and we deliver. 



SuperKey 



ProKey 



ALL FEATURES RESIDENT IN RAM AT ALL TIMES 



RESIDENT PULL-DOWN MACRO EDITOR 



RESIDENT FILE ENCRYPTION 



PROKEY COMPATIBILITY 



DISPLAY PROTECTION 



ABILITY TO IMPORT DATA FROM SCREEN 



PULL-DOWN MENU USER INTERFACE 



CONTEXT-SENSITIVE ON-LINE HELP SYSTEM 



DISPLAY-ONLY MACRO CREATION 



ENTRY AND FORMAT CONTROL IN DATA FIELDS 



COMMAND KEYS REDEFINABLE "ON THE FLY" 




PRICE 



Total ProKey compatibility. Every Prokey Macro file may be 
used by SuperKey without change so that you may capitalize on 
all the precious time you've invested. 

Now your PC can keep a secret! SuperKey includes a resident 
file encryption system that uses your password to encrypt and 
decrypt files, even while running other programs. Two different 
encryption modes are offered: 

1. Direct overwrite encryption (which leaves the file size un- 
changed) for complete protection. At no point is a second file 
that could be reconstructed by an intruder generated. Without 
your secret password, no one will ever be able to type out your 
confidential letters again! 

2. COM or EXE file encryption which allows you to encrypt a 
binary file into an ASCII file, transmit it through a phone line as a 
text file and turn it back again into an executable file on the 
target machine (only of course if your correspondant knows the 
secret password!). Now, you will even be able to secretly ex- 
change programs through Public Bulletin Board Systems or 
services such as CompuServe. 

Totally memory resident at all times, gives SuperKey the ability 
to create, edit, save and even recall new or existing macro files 
anytime, even while running another program. 

Pull down macro editor. Finally, a sensible way to create, edit, 
change and alter existing macro definitions. Even while using 
another application, a simple keystroke instantly opens a 
wordprocessor-like window where you're allowed to see, 
edit, delete, save and even attach names to an indi- 
vidual macro or file of macros, and 
much more. 



Sorry ProKey! 

Superb software at reasonable prices! 

There is much more to SuperKey. Maybe the best 
reason to buy SuperKey is that it is a Borland 
International Product. Each one of our products is 
the best in its category. We only believe in 
absolutely superb software at reasonable prices! 

An offer you can't refuse. 

Whether you are a ProKey user or you've never used a 
keyboard enhancer before, your boat has come in: until 
June 1st 1985 you can get your copy of SuperKey at this 
special introductory price. 

Get your PC a SuperKey today! 

SuperKey is available now for your IBM PC, XT, AT, jr. and truly 
compatible microcomputers. 



WM 



i 



Available 
nearest you 

oductory 
Offer 
$69.95* 



&&& 



+&&&&* 



call (80°) ' 



introduce 

Offer 
valid unW' 
1st, 198 5 



I 

1 



Intro' 



BORlflflD 

INTERNATIONAL 



Software's Newest Direction 

4113 Scotts Valley Drive 
Scotts Valley. California 95066 
TELEX; 172373 



Inquiry 48 

IBM is a registered trademark of International Business Machine Corporation. ProKey is a trademark 

o! floseSoft. SuperKey and SdeKtck are trademarks ot Borland International. Inc. 



t 
I 




'ThisP rice H11 
$l0 perP ro ° 



Name: 
ShipP 1 



TeleP 1 




,hone 



Tbe accep-" aft .pay< 
^n.andPu ^ l0 apdm ^ 



side 




WHAT'S NEW 



Hayes Offers Smartcom II for the Macintosh 



Hayes Microcomputer 
Products has an- 
nounced Smartcom II for 
the Macintosh. The program, 
originally written for the 
IBM PC, has been rede- 
signed to take advantage of 
the Macintosh graphical user 
interface. 

Smartcom II is compatible 
with Hayes's existing stand- 
alone modems and with its 
recently introduced 2400- 
bps Smartmodem. Smart- 
com II can handle com- 
munications between com- 
puters in a hard-wired con- 
figuration at speeds of up to 
19,200 bps. 

Smartcom II has an "auto- 
pilot" feature that can be 
programmed to automatical- 
ly perform such functions as 
logging onto remote sys- 
tems, sending or receiving 



* File Edit Connection Settings Autopilot Special 



lelenpt 



Enter phone number: 



I95230M 



CDQQ (D Tone Pu,se 

©CD CD CD pouse Qo sec ° r 

CDQDCD CD mo,t for di81 tone 

CD CD CD CD 0u,e, CD no$h 




Smartcom II exploits the Mac's graphical user interface. 

files, and performing data- Protocol and the XMODEM 

base operations. It supports protocol for file transfers. It 
both the Hayes Verification also lets you switch back 



and forth between voice and 
data during a communica- 
tions session. 

Hayes reports that the 
Smartcom II program will 
permit two Macintosh com- 
puters to exchange graphical 
images in real time using 
conventions similar to those 
in MacPaint. An image 
created on one screen is 
automatically reproduced on 
the remote screen. The sec- 
ond user can "take over" 
the drawing and make 
changes and additions. 

The retail price for the 
Smartcom II software for the 
Macintosh is $149. For more 
information, contact Hayes 
Microcomputer Products 
Inc., 5923 Peachtree In- 
dustrial Blvd., Norcross. GA 
30092. (404) 449-8791. 
Inquiry 609. 



Multiuser Board for IBM Based on 68000 



The Multi-PC/68 from 
LinkData is a multiuser 
68000 microprocessor board 
for the IBM Personal Com- 
puter. This two-board com- 
bination runs UNI-DOS, a 
DEC-like operating system 
that lets the PC run multi- 
user software written for the 
DEC PDP-11 family of mini- 
computers. 



When equipped with 
Multi-PC/68. the IBM PC XT 
can support four terminals 
and run five concurrent pro- 
grams written in the DIBOL 
or CADOL minicomputer 
languages. The IBM PC AT 
can support up to eight ter- 
minals and run nine pro- 
grams. In addition, both the 
XT and AT can run MS-DOS 



applications concurrently 
with UNI-DOS applications. 

The dealer price of the 
Multi-PC/68 system, including 
UNI-DOS, ranges from 
$2000 to $4000. depending 
on how much memory and 
how many RS-232C ports 
are included. LinkData will 
also make available to 
dealers a $200 DEC-like 



word processor, a series of 
accounting packages ($295 
each), and a line of vertical- 
market applications pack- 
ages with price tags span- 
ning from $750 to $1000. 
For more information, con- 
tact LinkData. 2005 Route 
22. Union. NJ 07083. (201) 
964-6090. 
Inquiry 610. 



Harmony Comes to Mac 



Harris Announces PC Network/File Server 



Harmony is a set of 
productivity tools that 
runs as a desk accessory on 
the 512K-byte Macintosh or 
as an application program 
on the 128K-byte Macintosh. 
Harmony offers a full data- 
base in which each record 
can hold up to 18 informa- 
tion fields. Harmony has a 
time-manager module with a 
calendar, an appointment 
book with project-manage- 
ment features, a memo 
writer, and a print-spooler 
application that spools files 
from MacWrite and Micro- 



soft Word. 

Other features include a 
telecommunications applica- 
tion with auto-dial capabili- 
ties. Harmony can work in 
concert with Jazz from Lotus 
Development Corporation 
and other Macintosh pro- 
grams. Intermatrix says that 
the program will be avail- 
able in mid-April and that it 
will be priced at $195. Con- 
tact Intermatrix, 5 547 
Satsuma Ave., North 
Hollywood, CA 91601, (818) 
509-0474. 
Inquiry 611. 



The Harris 9300 net- 
work/file server can link 
up to 16 IBM PC-compati- 
bles, 3270 terminals, Harris 
PCs, or printers with a high- 
capacity hard-disk drive and 
a local-area network. 

Devices are linked by a 
coaxial cable with a data- 
flow rate of I megabit per 
second. The 9300 uses an 
80286 chip for network pro- 
cessing and supports up to 
80 megabytes of hard-disk 
storage and 2 megabytes of 
memory. An optional Z80B 
runs word-processor and 



office-automation programs 
developed by Lanier, a sub- 
sidiary of Harris. 

The system with 1 mega- 
byte of memory, 37 mega- 
bytes of hard-disk storage, 
and hardware for connection 
to the network is about 
$11,000. Adapter cards for 
personal computers are 
$1050 each. Deliveries are 
expected to begin in June. 
Contact Harris Corp.. 
Melbourne. FL 32919. (305) 
727-9100. 
Inquiry 612. 

[continued on page 440) 



44 BYTE • APRIL 1985 



' 



Speed, Power, Price. 
Borland's Tlirbo Pascal Family 

The industry Standard. With more than 250,000 users worldwide Turbo Pascal is the industry's de facto standard. 
Turbo Pascal is praised by more engineers, hobbyists, students and professional programmers than any other development 
environment in the history of microcomputing. And yet, Turbo Pascal is simple and fun to use! 

Jeff Duntemann, PC Magazine: "Language deal of the century . . . Turbo Pascal: It introduces a new 
programming environment and runs like magic." 

Dave Garland, Popular Computing: "Most Pascal compilers barely fit on a disk, but Turbo Pascal packs an editor, compiler, linker, 
and run- time library into just 29K bytes of random-access memory" 

Jerry Pournelle, BYTE: "What I think the computer industry is headed for: well documented, standard, plenty of good features, 
and a reasonable price." 

Portability. Turbo Pascal is available today for most computers running PC DOS, MS DOS, CP/M 80 or CP/M 86. A XENIX verison of Turbo 
Pascal will soon be announced, and before the end of the year, Turbo Pascal will be running on most 68000 based microcomputers. 





High resolution monochrome graphics for the IBM PC and the Zenith 100 computers 

Dazzling graphics and painless Windows. The Turbo Graphix Toolbox will give even a beginning programmer 
the expert's edge. It's a complete library of Pascal procedures that include: 

Full graphics window management. 

—Tools that will allow you to draw and hatch pie charts, bar charts, circles, rectangles and a full range of geometric shapes. 
-Procedures that will save and restore graphic images to and from disk. 
-Functions that will allow you to precisely plot curves. 

—Tools that will allow you to create animation or solve those difficult curve fitting problems, 
and much, much more 

No Sweat and no royalties. You may incorporate part, or all of these tools in your programs, 
and yet, we won't charge you any royalties. Best of all, these functions and procedures come complete 
with commented source code on disk ready to compile! 





m 



Searching and sorting made simple 

The perfect Complement tO TurbO Pascal. It contains: Turbo-Access, a powerful implementation of the state-of-the-art B+tree ISAM 
technique; Turbo-Sort, a super efficient implementation of the fastest data sorting algorithm, "Quicksort on disk". And much more. 

Jerry Pournelle, BYTE'. 'The tools include a B+tree search and a sorting system; I've seen stuff like this, but not 
as well thought out, sell for hundreds of dollars." 

Get Started right away: free database! Included on every Toolbox disk is the source code to a working 
data base which demonstrates how powerful and easy to use the Turbo-Access system really is. 
Modify it to suit your individual needs or just compile it and run. 

Remember, no royalties! 






m BORIPOD 

m INTERNATIONAL 



Inquiry 49 



Turtw Pascal is a registered trademark ot Bwtond international, Inc. 




From Start to Finish in 300 pages. Turbo Tutor 

is for everyone, from novice to expert. Even if you've never 
programmed before, Turbo Tutor will get you started right away. 
If you already have some experience with Pascal or another 
programming language, Turbo Tutor will take you step by step 
through topics like data structures and pointers. If you're an expert, 
you'll love the sections detailing subjects such as "how to use assem- 
bly language routines with your Turbo Pascal programs." 

A must. You'll find the source code for all 
the examples in the book on the accompanying 
disk ready to compile. Turbo Tutor 'might be 
the only reference on Pascal and pro- 
gramming you'll ever need. 



$34.95 



Software's Newest Direction 

4113 Scotts Valley Drive 
Scotis Valley California 95066 
TELEX; 172373 



s% 



Introducing PC software 
the light way to do 



IBM's new Personal Decision Series. 
A powerful team of business 
programs designed for exceptional 
flexibility. 

There's rarely one best way of doing 
anything. 

Rather, lots of very good ways; a 
reality that IBM's Personal Decision 
Series handily accommodates. 

More than any software we know of, 
it gives you choices. You tailor it to your 



needs, instead of vice versa. 

You begin with Data Edition, a pro- 
gram that not only manages huge 
amounts of information, but lets you take 
it from a surprising variety of sources: 
data banks, mainframes, even files cre- 
ated by other PC programs. 

And you can retrieve your data in 
nearly any form you like, without a lot of 
headscratching. You can begin produc- 
ing real work in a couple of hours. 

Add Reports+ and you can create 



your own style documents, pulling facts 
from up to 6 Data files at a time, in 
formats you can design, for applications 
you can invent. 

Graphs gives you a choice of 13 
graph styles, with over 20 variations. 
And you can update old graphs without 




With IBM's new Personal Decision Series, 
you start with Data Edition, adding others, like 
Reporls+ or Plans, as you like. 

For even more help, you can add Appoint- 



46 B YTE • APRIL 1985 




based on the curious notion that 
things is any way you want to. 



having to make new ones. 

There's also Plans + for financial 
modeling and spreadsheets, and Words 
for putting your sentences, numbers and 
graphs all together. 

The Personal Decision Series can 
even take information from a number of 



Plans* 





merit Calendar; Client Time/Cost Accounting, and 
Prospect Tracking Editions. 

Also, the Personal Decision Series works 
with data from IBM's new Business Management 



non-Series programs. So if you already 
have a favorite spreadsheet or writing 
program, you may still be able to use it. 

You can even use files from an IBM 
System/36 or System/370 computer, by 
adding an Attachment/ '36 or / 370 Edition. 

All of which is perfect for people 



Words 




*nI 



Attachment/370 



Series, a powerful family of accounting programs. 
And ask about IBM Extended Support ser- 
vices, a way toget software updates and telephone 
assistance direct from IBM. 



who insist on doing things their way. 

Do you know somebody like that? 

To learn more, call an IBM market- 
ing representative, or visit an IBM Pro- 
duct Center or authorized IBM PC dealer. 

For the store nearest you, and a free 
brochure, call 800-447-4700. (In Alaska 
and Hawaii, 800-147-0890.) 



Personal Computer Software 



Little Tramp character licensed by Bubbles Inc., s.a. 
Inquiry 194 



APRIL 1985 -BYTE 47 



Conducted by Steve Garcia 



ASK BYTE 



Elementary Information 

Dear Steve, 

Can you tell me where 1 can get specific 
and in-depth answers to elementary ques- 
tions about computers and electronics? I 
know that you answer questions, but I also 
know that you couldn't be expected to 
give very lengthy answers to my beginner's 
questions. 

Charles F. Porter 
Cedar Rapids, I A 

The Ask BYTE column addresses hard- 
ware-related questions of general interest 
but is not meant for the beginner. BYTEs 
sister publication, Popular Computing, 
caters to a less technical audience, and 
its Ask Popular column addresses ques- 
tions related to computers in general. 
Both publications may answer your 
specific question, but the turnaround 
time is lengthy 

If you need specific answers to specific 
questions in a reasonable amount of 
time, try a local computer club. There is 
usually an "expert" available on almost 
any topic. Failing that, the local bookstore 
will feature many books on computers 
and computer-related material. —Steve 



S-100 Switching Supply 

Dear Steve, 

Will you be doing an article on a switch- 
ing power supply for the S-100 bus? 

1 hear that switching supplies are less ex- 
pensive to build than linear supplies; the 
selling prices 1 have seen are not less. 
Could Micromintoffera power-supply kit 
for this purpose? 

Ernest A. Knipp 
Houston, TX 

A switching power supply for S-100- 
type computers is a good idea, and I will 
consider it for a future article. 

The cost of switching-type power sup- 
plies is usually less than linear-regulated 
supplies of comparable power because 
smaller capacitors and inductors are used 
and can be packaged in a smaller 
volume. They also generate less heat and 
are easier to cool, resulting in a lower 



overall installed cost. 

If you want to build your own switch- 
ing supply, my article in the November 
1981 BYTE provides the basics. "Switch- 
ing Power Supplies: An Introduction" 
covers the fundamentals of design and 
describes a workable unit. This article 
isn't a do-it-yourself S-100 power-supply 
project, but it should give you most of the 
basics. 

Several + 12-V 5-V switching supplies 
are available commercially, including the 
MPX-10 (from Micromint 561 Willow Ave., 
Cedar hurst NY 11516), which powers the 
MPX-16 computer. Others are available 
from Kepco Inc., 131-38 San ford Ave.. 
Flushing, NY 11352; Lambda Electronics, 
515 Broad Hollow Rd., Melville, NY 
11747; and Sorensen, 676 Island Pond 
Rd., Manchester, NH 03 1 03. -Steve 



Graphic-Arts Computer 

Dear Steve. 

1 would like to do graphic-arts work with 
a computer capable of producing a 
minimum of about 800 by 800 pixels and 
at least 100 simultaneously displayable 
colors. 1 have seen ads for various color 
boards or dedicated graphics computers, 
but they either don't match my specs or 
they are too expensive. 

I'd like to build my own color add-on 
board for the Commodore 64 or a com- 
plete computer. I'd appreciate any 
suggestions. 

Les Kohuth 
Syosset, NY 

High-resolution graphics systems are 
expensive and seem overpriced in com- 
parison to the graphics systems available 
on microcomputers. To understand this 
high cost let's look at the components 
of a high-resolution graphics system. 

To display the resolution that you men- 
tioned, a monitor with a video band- 
width of at least 18 to 20 MHz is needed 
to distinguish individual pixels, or dots. 
This requirement can be understood if 
we look at the makeup of one scan line 
of the picture. 

The normal scan rate is 15,750 scans 
per second, and at 800 pixels of hori- 



zontal resolution, this is 12 ,600,000 pixels 
per second. However, the case where all 
the pixels are lit results in a zero- band- 
width requirement, and a DC voltage is 
all that is required. In the worst case, 
when every other pixel is lit, a clear dis- 
play of 6 million pixels per second is 
needed. This appears to require only a 
6-MHz bandwidth, but bandwidth is 
usually defined as the frequency where 
the signal (or gain) is reduced by 3 dB, 
or 50 percent of the normal level. Such 
a bandwidth would result in low bright- 
ness and contrast in picture areas where 
fine detail is shown. To display sharp im- 
ages at this resolution, it is necessary to 
approximate a square wave at 6 MHz, 
and the first component of a square wave 
above the fundamental is the third har- 
monic, or 18 MHz. This is the minimum 
acceptable, and a noticeable improve- 
ment should be seen if the bandwidth is 
extended to the next component, which 
is the fifth harmonic (30 MHz). 

The standard television sweep frequen- 
cies generate 525 horizontal lines per 
frame in two vertical scans (interlaced). 
A limit of about 400 lines within this 
region is required for good linearity. Most 
microcomputer graphics systems provide 
200 or so lines by using the so-called 
noninterlace mode, displaying the same 
information on adjacent pairs of lines. 
This can be doubled by using twice as 
much memory and reprogramming the 
video controller. Getting to 800 lines re- 
quires twice as many horizontal sweeps 
per frame (and half the frame rate), which 
is not within the capabilities of the 
popular $500 RGB monitors. Monitors of 
this type are available, but the prices are 
in the several -thousand-dollar range. 

800 by 800 pixels requires 640K bits, 
or about 80K bytes, of memory to give 
one color (we get black for free). If you 
want to be able to assign different colors 
to each pixel, rather than define charac- 
ters within a block of 8 by 8 contiguous 
pixels, the memory is arranged in layers. 
One 80K-byte layer gives black and white, 
two layers doubles this to four colors 
(three colors plus black), another layer 
doubles again, etc., for as many colors 
as we want or can afford. Your spec of 

(continued) 



48 BYTE • APRIL 1985 



COPYRIGHT © 1985 STEVEN A, GARCIA. ALL RIGHTS RESERVED. 







The picture in this ad is 
actually m 18" by 24" col- 
lector's item-an originally 
commissioned museum- 
quality print This month, the 
Gettysburg print is yours, 
absolutely free, at most com- 
puter stores that carry 
Leading Edge Word 



For the name of the dealer 



800-343-6833, 

(617)828-8150, 



LEADING EDGE' 

Leading Edge Products. Inc 

Systems and Software Division 

225 Turnpike Street. Canton. MA 02021 



WORD PROCESSORS AT THE LEADING EDGE 



Ah, the great ones . . . 

They organized their ideas, their intui- 
tions, their idioms. They set them down, 
sorted them out, arranged them and 
re-arranged them till they came out right. 

They used small scraps of paper to 
record huge hunks of Truth; primitive 
tools to produce profound prose. But 
when the words finally went forth, they 



made indelible marks on all who read 
them. 

The amazing thing is that these mon- 
umental processors of words, did it 
without the benefit of monumental help. 

Like Leading Edge Word Processing: 
the easiest to use, yet most potent 
piece of software ever created to take 
full advantage of all the power inherent, 
but until now un-tapped, in today's 



most sophisticated personal computer. 
(Like the IBM® PC and the even faster 
and more powerful Leading Edge'" PC.) 

The heart and soul of it is a VA" 
floppy disk, elegantly logical instruction 
manual and documentation . . . every- 
thing. And what you end up with is 
word processing at the leading edge. 



LEADING EDGE M WORD PROCESSING FROM $100 

IBM IS A REGISTERED TRADEMARK OF INTERNATIONAL. BUSINESS MACHINES CORPORATION. 
LEADING EDGE IS A TRADEMARK OF LEADING EDGE PRODUCTS. INCORPORATED. 



Inquiry 232 



APRIL 1985 -BYTE 49 



Inquiry 279 




IEEE-488 Interfaces and 
Bus Extenders For: 

IBM PC, PCjr 
& COMPATIBLES 

DEC UNIBUS, Q-BUS 
& RAINBOW 100 

MULTIBUS, VMEbus 
STD & S-100 

Full IEEE-488 functionality, with the most com- 
prehensive language and operating system cover- 
age in the industry. It takes experience to make 
IEEE-488 systems work with nearly 4000 devices 
available from more than 500 different manufac- 
turers, and experience is what enables National 
Instruments to take the GPIB to the 
second power and beyond. 




a 




f 



Your personal guarantee of unsurpassed 
customer support and satisfaction. 
CALL 1-800-531-GPIB for instant access 
to 100 + man-years of GPIB experience. 



f7 NATIONAL 
"INSTRUMENTS 

12109 Technology Blvd. 
Austin, TX 78727 
1-800-531-5066 512/250-9119 
Telex: 756737 NAT INST AUS 



IBM and PCjr are trademaiks of International Business Machines, MULTI- 
BUS is a trademark of Intel. DEC. UNIBUS. Q-BUS. and Rainbow 100 are 
trademarks of Digital Equipment Corporation. 



ASK BYTE 



"at least IOO colors" rounds up to 128, 
or seven layers of memory. This is $700 
worth of memory chips, if you can use 
the low-cost 64K-byte chips in common 
use for microcomputer memory these 
days. Add board space and sockets and 
do the work yourself, and you're still talk- 
ing $1000 for memory, and this type of 
memory really isn't suitable for a high- 
performance graphics board. You really 
need a two-port system so that putting 
data into the memory doesn't interfere 
with the display and vice versa. 

This amount of memory exceeds the 
addressing capacity of all the common 
video-controller chips. Also, 6 million 
pixels must be read from memory each 
second. At 7 bits per pixel, the processor 
must access 750K bytes from each layer 
each second, or a total of 5.25 mega- 
bytes per second throughput if only one 
processor is used. This is too fast for in- 
expensive video processors, or micropro- 
cessors, so either parallel or very fast 
processors with bank switching are 
needed. Such circuitry is complicated, 
and considerable processing is required 
to separate the data into the required 
RGB analog signals. 

Some boards, or add-on systems, are 
available for the IBM PC and some of its 
clones that can provide various combina- 
tions of features at reasonable cost. One 
such system is the VX. made by Vectrix 
Corporation, 1416 Boston Rd., Greens- 
boro, NC 27407. This appears to require 
a special monitor, however. 

Other systems that are compatible with 
common RGB monitors and provide up 
to 16 colors at 640- by 400-pixel resolu- 
tion and 132 colors at 320 by 200 resolu- 
tion are available from $300 to around 
$1000. Check advertisements for prod- 
ucts made by Ouadram, Princeton 
Graphics, and Tecmar Inc. in magazines 
like BYTE to find some that might repre- 
sent a satisfactory compromise. Another 
good source for information on this sub- 
ject is Electronic Imaging magazine. 
—Steve 



Reconfiguring the PC XT 

Dear Steve, 

I have two questions that I would like to 
have answers for. They both relate to the 
IBM PC XT. After devouring your most in- 
teresting articles and answers in BYTE, I 
believe you can answer them. 

The XT comes equipped with an asyn- 
chronous communications card con- 
figured as COM1 . 1 have installed a Hayes 



internal modem that for compatibility with 
some important software I have to use as 
COM1 . 1 have had to remove the IBM asyn- 
chronous card because I don't know how 
to reconfigure it to be COM2. There are 
no switches on it or any documentation 
on how this might be done. I have been 
told that it is possible, but no one has 
been able to tell me how to do it. 

There are times when I really don't need 
to use my hard disk, such as when I am 
working for hours on a mainframe and just 
using my XT as a terminal. Since my war- 
ranty has expired anyway, I don't mind ex- 
perimenting if 1 have some expert 
guidance. Would there be any way to boot 
my system without the hard disk, when it 
is not needed, by installing a switch some- 
place? If this is possible, would it be worth 
saving a few hours of idle running time on 
the hard disk? I know it would be quieter 
and more enjoyable working without it 
when 1 don't need it. 

Bob Stephan 
Pebble Beach. CA 

Modifying the IBM asynchronous card 
to make it operate as COM2 is feasible. 
The port addresses used by COM I are 
3F8H to 3FFH, while COM2 uses 2F8H 
to 2FFH. The schematic in the IBM PC 
Technical Reference Manual shows a 
jumper that determines whether the card 
is selected with A8 equal to or I, al- 
though neither the documentation that 
comes with the card nor the Technical 
Reference Manual makes reference to 
this. The jumper is probably soldered in 
and may not be there on all boards. 

Modifying the main system board to 
start up without the fixed disk is an 
operation I don't recommend. The in- 
crease in life of the fixed disk is probably 
minimal, and turning it on and off when 
you need it might offset any gain realized 
by not running it full time. I also suspect, 
based on my experience with IBM PCs. 
that the fan makes as much noise as the 
disk, so there is little to be gained— Steve 



Reading Latch Outputs 

Dear Steve, 

1 have a Sinclair 1000 that I'm trying to 
use in a security system. In my system, 
octal latches monitor infrared beams. 
When a beam is broken, my program ad- 
dresses a latch at an address above RAM 
and uses a POKE to put a I in the latch 
to ring the bell. This works fine. The prob- 
lem is when I try to check the octal latches 

[continued] 



50 B YTE • APRIL 1985 



HOW TO CONTROL 



^n 



Your small business compu- 
ter can give you the power to 
raise your productivity. But 
first you have to control the power you give it. 
Because even the slightest dip or surge of elec- 
tricity can result in a shocking surprise. An instant 
loss of important data or misinformation. Even 
worse, a total power line failure can create 
department devastation ... a total system crash. 
You can't afford errors, delays and other 
problems. After all, you've invested in a 
computer to increase efficiency. 
But now there's a solution you can af- 
ford The Sola SPS. This economical, 
UL listed Standby Power System 
is designed to protect personal, 
micro and mini computers 
from AC line disturb- 



: 



H ^T Mf ances and failures. Sola SPS 

» W ■■■ mB provides clean, regulated AC 

power to your computer when 

your power line experiences irregular voltage. Line 

dips or line surges are immediately converted to 

proper voltage. When the AC line is present, the 

SPS filters power to eliminate electrical noise. 

And when the AC line fails, the SPS goes into full 

action, providing precise AC power to the load from 

its internal battery. So the only noise you'll hear 

is the sound of performance. There's no maint- 

nance. No installation. No kidding. Just 

s \ plug it in and turn it on. Why let your 

^v, productivity rise and fall with your 

power? The solution is as simple 

as SPS. The standby 

system that Sola 

stands behind. 




pi OlUnl a UNVT OF GEHERM. 81GHM 

STANDBY POWER SOURCE 



7 Busse Hwy., Elk Grove Village, IL 60007 (31 2) 439-2800 

Inquiry 356 



Li 


in 


i 


if ^ m 




fgmx :v 


i>V 


II 






~ ■ i mm 


mpsHiB^BmwMBL 


s 








SOLA 


■it 


HSflm ■■'-' 



Inquiry 273 




• Multiple color, high-resolution 
raster & bit image Prism m graphics. 

• 200 cps data processing mode. 

• 1 1 cps text quality mode. 
§35 cps letter quality mode. 

• 1 ips graphics print speed. 

• Serial and parallel interfaces. 

• 5000-byte buffer. 



Color your graphics with the Dataproducts 8050. 
For sale, lease or rent from MTL 

The Dataproducts Model 8050 printer is one of the most economi- 
cal yet highly versatile color printers available for use in today's 
professional microcomputer applications environment. 

Whether you buy, rent or lease, MTI is the one source for all com- 
puter printers. And our prices are hard to beat. Call MTI and save. 




A SUBSIDIARY OF DUCOMMUN INCORPORATED 

Computer & Data Communications Equipment 
Sales / Leasing / Service / Systems Integration 

Digital Equipment Corp., Intel, Texas Instruments, Hewlett-Packard*Qume, 
Dataproducts, Diablo, Epson, Lear Siegler, Esprit, Wyse, Link, C.Itoh, PCI, 
Racal-Vadic, MICOM,Ven-Tel,Develcon, U.S. Design, Digital Engineering. 

New York: New Jersey: Ohio: Kentucky: 

212/226-2337 518/449-5959 201/227-5552 216/464-6688 502/426-1497 
718/767-0677 Pennsylvania: 800/521-0167 California: 

516/621-6200 412/931-9351 513/891-7050 818/883-7633 

♦InMTlareasonly. 

All other areas: 800/645-6530 



Togetalot 

out of your 

printer, you 

need a lot of 
programs, 

right? 



Wrong. 

Sure, you could buy one 

package to change type 

sizes, another to create 

fonts, and still another 

to print sideways. 

Or you could get one 

simple program to 

do it all! 



Printworks. 
It's loaded. 



rlr 




rir 



SoftStyle 



SoftStyle. Inc. 7192 Kalanianaole Hwy. Suite 205 
Honolulu. Hawaii 96825 Phone (800) 367-5600 
$69.95. Enhances over 30 dot matrix pnnters,including 
Epson and Okidata. IBM PC or compatible. 




ASK BYTE 



with the PEEK command, instead of see- 
ing the latch, it reads garbage. I have tried 
addresses just above RAM all the way up 
to address 6553 5. and I still read garbage. 
It appears that when you check an ad- 
dress that is above RAM it mirrors back 
to a RAM or ROM address. Can you tell 
me how I can address and see my octal 
latches instead of mirroring back to RAM? 
Thanks for your help. 

Dan Grogan 
San Pedro, CA 

It appears that your Sinclair 1000 is not 
reflecting your PEEK commands back 
into low memory. As I interpret your let- 
ter, you have a set of latches that are sup- 
posed to put data on the bus to tell the 
computer that a detector has been 
tripped, and you are having trouble 
reading the latch outputs. 

Are you sure that the address decoder 
on the latch board is set to the address 
to which you are writing? Is it properly 
timed to put the data on the bus at the 
right time or hold it there long enough 
to be recognized by the processor? The 
fact that you can write a bit into the bell 
latch seems to indicate that you are able 
to address the high memory, but the tim- 
ing in writing data into the latch could be 
a lot less critical than reading data. 

Have you looked at the signals at the 
latch outputs and on the data bus to be 
sure that they are putting out the correct 
voltage levels? How about signal quali- 
ty? The level is fairly easy to get with TTL 
or CMOS chips if the power-supply volt- 
age is at the required 5 volts, but if the 
wiring connecting the latches to the com- 
puter bus isn't properly dressed, you can 
do horrible things to the normally clean 
square waves put out by the latches. 
—Steve 



A/D FOR Z 100 



Dear Steve, 

I have a Zenith Z-100 computer with two 
disk drives and with 192K bytes of 
memory. Now I am thinking of providing 
an A/D interface for the serial input so that 
I can feed in analog signals from various 
instruments, such as a spectrophotometer, 
pH meter, etc. Looking through the jour- 
nals I located a few suppliers, though 
mostly of rather fancy multichannel data- 
acquisition units I do not need. At the 
most, I need four channels of input with- 
out any specialties attached. I would ap- 
preciate it if you could let me know of any 

[continued) 



52 B YTE • APRIL 1985 



Inquiry 353 



>iztec The Most Powerful C 

for the IBM AT • MACINTOSH • MS DOS • CP/M-80 • ROM APPLICATIONS 
IBM PC/XT • APPLE // • CP/M-86 • TRSDOS • CROSS DEVELOPMENT 



Why Professionals Choose Aztec C 

AZTEC C compilers generate fast, compact 
code. AZTEC C is a sophisticated development 
system with assemblers, debuggers, linkers, 
editors, utilities and extensive run time libraries. 
AZTEC C is documented in detail. AZTEC C is 
the most accurate and portable implementation 
of C for microcomputers. AZTEC C supports 
specialized professional needs such as cross 
development and ROM code development. 
MANX provides qualified technical support. 

AZTEC C86/PRO 
- for the IBM AT and PC/XT 

AZTEC C86/PRO provides the power, portabili- 
ty, and professional features you need to 
develop sophisticated software for PC DOS, MS 
DOS AND CP/M-86 based microsystems. The 
system also supports the generation of ROM 
based software for 8088/8086, 80186, and 80286 
processors. Options exist to cross develop ROM 
code for 65xx f 8080, 8085, and Z80 processors. 
Cross development systems are also available 
that target most micro computers. Call for infor- 
mation on AZTEC C86/PRO support for XENIX 
and TOPVIEW. 



POWERFUL — AZTEC C86/PRO 3.2 outper- 
forms Lattice 2.1 on the DHRYSTONE 
benchmark 2 to 1 for speed (17.8 sees vs 37.1) 
while using 65% less memory (5.8k vs 14k). The 
AZTEC C86/PRO system also compiles in 10% 
to60% less timeand supports fast, high volume 
I/O. 



PORTABLE — MANX Software Systems pro- 
vides real portability with a family of compatible 
AZTEC C software development systems for PC 
DOS, MS DOS, CP/M-86, Macintosh, CP/M-80, 
APPLE // + , lie, and lie (Nl BBLE - 4 apple rating), 
TRSDOS (80-MICRO - 5 star rating), and Commo- 
dore C64 (the C64 system is only available as a 
cross compiler - call for details). AZTEC 
C86/PRO is compatible with UNIX and XENIX. 



PROFESSIONAL — For professional features 
AZTEC C86/PRO is unparalleled. 

• Full C Compiler (8088/8086 - 80186 - 80286) 

• Macro Assembler for 8088/8086/80186/80286 

• Linkage Editor with ROM support and overlays 

• Run Time Libraries - object libraries + source 
DOS 1.x; DOS 2.x; DOS 3.x; screen I/O; Graphics; 
UNIX I/O; STRING; simulated float; 8087 support; 
MATH; ROM; CP/M-86 

• Selection of 8088/8086, 80186, or 80286 code genera- 
tion to guarantee best choice for performance and 
compatibility 



• Utility to convert AZTEC object code or libraries to 
Microsoft format. (Assembly + conversion takes 
less than half the time as Microsoft's MASM to pro- 
duce MS object) 

• Large memory models and sophisticated memory 
management 

• Support products for graphics, DB, Screen, & ... 

• ROMablecode + ROM support + separate code and 
data + INTEL Hex Converter 

• Symbolic Debugger & Other Utilities 

• Full Screen Editor (like Vi) 

• CROSS Compilers are available to APPLE //, Macin- 
tosh, CP/M-80, TRSDOS, COMMODORE C64, and 
ROM based 65xx, and 8080/8085/Z80 

• Detailed Documentation 

AZTEC C86/PRO-AT $500 

(configured for IBM AT - options for 8088/8086) 

AZTEC C86/PRO-PC/XT $500 

(configured for IBM PC/XT - options for 80186/80286) 

AZTEC C86/BAS Includes C compiler (small model only), 
8086 MACRO assembler, overlay linker, UNIX, MATH, 
SCREEN, and GRAPHICS libraries, debugger, and 
editor. 

AZTEC C86/BAS $199 

AZTEC C86/BAS (CP/M-86) $199 

AZTEC C86/BAS (DOS + CP/M-86) $299 

UPGRADE to AZTEC C86/PRO $310 

C-TREE Database with source $399 

C-TREE Database (object) $149 

CROSS COMPILERS 
Cross Compilers for ROM, MS DOS, PC DOS, or CP/M-86 
applications. 

VAX ->8086/80xxx cross $5000 

PDP-11 -> 8086/80xxx cross $2000 

Cross Compilers with PC DOS or CP/M-86 hosts are $750 
for the first target and $500 for each additional target. 
Targets: 65xx; CP/M-80; C64; 8080/8085/Z80; Macintosh; 
TRSDOS; 8086/8088/80186/80286; APPLE //. 



AZTEC C68K 
— for the Macintosh 

For power, portability, and professional features 
AZTEC C68K-C is the finest C software development 
system available for the Macintosh. 

The AZTEC C68K-C system Includes a 68000 macro 
assembler, a linkage editor, a source editor, a mouse 
based editor, a SHELL development environment, a 
library of UNIX I/O and utility routines, full access and 
support of the Macintosh TOOLBOX routines, debug- 
ging aides, utilities, make, diff, grep, TTY simulator with 
upload & download (source supplied), a RAM disk (for 
512K Mac), a resource maker, and a no royalty license 
agreement. Programming examples are included. (Over 
600 pages of documentation). 

AZTEC C68K-C requires a 128K Macintosh, 
and two disk drives (frugal developers can make 
do with one drive). AZTEC C68K supports the 
512K Macintosh and hard disks. 

AZTEC C68K-C (commercial system) $500 

AZTEC C68K-p (personal system) $199 

AZTEC C68K-p to AZTEC C68K-C upgrade $310 



Mac C-tree database $149 

MacC-treedatabase with source $399 

Lisa Kit (Pascal to AZTEC C68k object converter) . .$ 99 



AZTEC C65 

— for the APPLE// 

"...The AZTEC C-system is one of the finest software 

packages I have seen..." NIBBLE review, July 1984. 

The only commercial C development system available 
that runs native on the APPLE II + , lie, and lie, the 
AZTEC C65 development system Includes a full floating 
point C compiler compatible with UNIX C and other 
MANX AZTEC C compilers, a 6502 relocating assem- 
bler, a linkage editor, a library utility, a SHELL develop- 
ment environment, a full screen editor, UNIX I/O and 
utility subroutines, simple graphics, and screen func- 
tions. 

AZTEC C65 (Apple DOS 3.3) $199 

AZTEC C65/PRO (Apple DOS 4- ProDos) $350 

(call for availability) 



AZTEC C ll/PRO 

— for CP/M-80 

The first member of the AZTEC C family was the 
CP/M-80 AZTEC C compiler. It Is "the standard" com- 
piler for development on CP/M-80. The system Includes 
the AZTEC CMC compiler, an 8080 assembler, a linkage 
editor, an object librarian, a full library of UNIX I/O and 
utility routines, CP/M-80 run time routines, the SMALL 
library (creates modules less than 3K in size), the fast 
linker for reduced development times, the ROM library, 
RMAC and M80 support, library source, support for 
DRI's SID/ZSID symbolic debugger, and more. 

AZTECC ll/PRO $349 

AZTEC CII/BAS $199 

C-TREE Database with source $399 

C-TREE Database in AZTEC object form $149 



AZTEC C80 

- for TRSDOS (Radio Shack Model III & 4) 

"I've had a lot of experience with different C compilers, 
but the Aztec C80 Compiler and Professional Develop- 
ment System is the best I've seen." 80-Micro, Decem- 
ber, 1984, John B. Harrell III 

This sytem has most of the features of AZTEC C II for 
CP/M. It is perhaps the best software development 
system for the Radio Shack Model III and IV. 

AZTEC C80 model 3 (no floating point) $149 

AZTEC C80 model 4 (full) $199 

AZTECC80/PRO (full for model 3 and 4) $299 

To order or for information call: 

800-221-0440 

(201) 530-7997 (NJ and outside U.S.A.). Or write: MANX 
SOFTWARE SYSTEMS. P.O. Box 55, Shrewsbury, N.J. 
07701. 



MANX 

TRS 80 RADIO SHACK TRS DOS is a trademark of TANDY. 
APPLE DOS MACINTOSH is a trademark of APPLE. 




SHIPPING INFORMATION • Standard U.S. 
shipment is UPS ground (no fee). In the U.S. 
one day shipment is $20, two days is $10. 
Canadian shipment is $10. Two days ship- 
ment outside the U.S. is by courier and is 
freight collect. 



For Technical Support 
(Bug Busters) call: 201-530-6557 



Inquiry 247 



APRIL )985 -BYTE 53 




ASK BYTE 



CLEAN THE MACHINE! 



There's enough to worry about without 
the headache of your computer's down- 
time or the loss of valuable data caused 
by dust. 

Before dust affects your computer's 
operation do what a rapidly growing 
number of computer users do: use Dust- 
Off® II. Don't just move dust — remove 



s-1r 



*ijtefoi 



STAT-OFFII® 
neutralizes 
dust-holding 
static electricity 
from media and 
machines. 



dust-holding static electricity. The Dust- 
Off II system also includes the Dual Ex- 
tender and the Mini- Vac vacuum for 
eliminating hard-to-reach dust. 

Get Dust-Off II at your local com- 
puter or office supply dealer. Or send 
$1 .00 (postage and handling) for a 3 oz. 
trial size and literature. 



DuM-CXf' ■ 

System II 



it. Unlike liquid cleaners, Dust-Off II is a 
safe, dry "canned air" cleaning system 
for your computers, printers, disk and 
tape drives, diskettes, CRTs, media 
storage containers and modems. In 
fact, it works on everything that works 
in the office. 

Dust-Off II's patented valve gives 
you pinpoint fingertip-control to blast 
away pollutants before they cause 
aggravating downtime. Add the Stat- 
Of f ® II accessory, and you have the only 
dry, non-contact method for eliminating 




DustOffH 

THE SAFE, DRY, "CANNED AIR" CLEANING SYSTEM. 



such units on the market. 

Herbert Jonas 
St. Paul, MN 

Analog Devices (2 Technology Way, 
Norwood, MA 02062, (617) 329-4700) 
makes the /iMAC-4000 series data-acqui- 
sition systems that provide up to 12 chan- 
nels of 13-bit A/D input/out put and serial 
communication, priced at $995 and up. 

TWo other units that interface through 
RS-232Carethe !6-<:hannel, 1 2-bit ADC-1 
from Remote Measurement Systems Inc., 
POB 15544, Seattle, WA 98115, (206) 
525-3369. It's advertised at $369. Also 
available is the BUSSter D16 8-bit, 
16-channel unit from Connecticut micro- 
Computer. The address is 36 Del Mar Dr., 
Brookfield, CT 06804, (203) 775-4595. 

All three of the above units accept 
digital inputs as well as analog. 

Since your Z-100 uses the S-100 bus. 
you might also want to consider the plug- 
in AIM-12 S-100 board from Dual Sys- 
tems Corp., 2530 San Pablo Ave., 
Berkeley, CA 94702, (415) 549-3854. This 
unit provides for 16 channels of input 
with 12-bit conversion, priced at $775. 
—Steve ■ 

Between Circuit Cellar Feedback, personal ques- 
tions, and Ask. BYTE. I receive hundreds of letters 
each month. As you might have noticed, at the end 
of Ask BYTE I have listed my own paid staff. We 
answer many more letters than you see published, 
and it often takes a lot of research. 

\f you would like to share the knowledge you have 
on microcomputer hardware with other BYTE 
readers, joining the Circuit Cellar! Ask BYTE staff 
would give you the opportunity. Wre looking for 
additional researchers to answer letters and gather 
Circuit Cellar project material 

\f you're interested, let us hear from you. Send 
a short letter describing your areas of interest and 
qualifications to Steve Garcia. POB 582, Glaston- 
bury. CT 06033. 



IN ASK BYTE, Steve Garcia answers questions 
on any area of microcomputing. The most rep- 
resentative questions received each month will be 
answered and published. Do you have a nag- 
ging problem? Send your inquiry to 

Ask BYTE 

do Steve Garcia 

POB 582 

Glastonbury. CT 06033 
Due to the high volume of inquiries, personal 
replies cannot be given. All letters and photo- 
graphs become the property of Steve Garcia and 
cannot be returned. Be sure to include 'Ask 
BYTE" in the address. 

The Ask BYTE staff includes manager Harv 
Weiner and researchers Bill Curlew. Larry 
Bregoli. Dick Sawyer, and \eannette Dojan. 



Falcon Safety Products, Inc., Dept. B, 1065 Bristol Road, Mountainside, N.J. 07092. U.S.A. 

54 BYTE • APRIL 1985 Inquiry I5I 




Now Showing 
In Black And White 



If you own an IBM-PC 
or PC work-alike, 
Roland's new MB-142 
monitor lets you show off 
your text and graphics in 
today's hottest colors- 
black and white. That's 
right! The MB-142 gives 
you black characters on a 
paper-white background- 
just like people have been 
reading for centuries. You 
can also have white char- 
acters on a black back- 
ground with just the touch 
of a button. 

Both of these black and 
white display formats are 
easier on the eyes and 
less fatiguing than the green 
or amber phosphor used in 
standard monochrome 
monitors. The MB-142's 
large 14-inch screen, com- 
bined with its ultra-high 
720 x 350 resolution, 
can display characters 
that are larger and 
more legible than what 
you can get with ordi- 
nary monochrome 
monitors. Another 
great plus is that the 
MB-142 plugs directly 
into the monochrome 
board of your IBM or com- 
patible—just like your pres- 
ent monochrome monitor, 
with nothing more to buy. 

Because of the MB-142's 
advanced electronic cir- 
cuitry, you even have the 
ability to mix graphics and 
text on the same display 
when using graphics and text 
boards from leading manu- 
facturers such as Persyst, 
STB, Paradise, Hercules, AST 
and many others. What makes 
it all possible? The same 
sophisticated technology 
used in color monitors. 





the MB-142 
supports 
all the 
winning 
cards 



' ush a 
button for 
instant reverse 
screen 






for business, 
black and 
white makes 
more sense 
than green 
and black 



Inquiry 336 



the big difference is 
» that the MB-142 
monitor does the job for 
significantly less money. 
The MB-142 is designed 
to interface economically, 
too. Imagine seeing your 
favorite business graphics 
or CAD/CAM packages, 
such as Lotus 1-2-3, Ener- 
graphics, Chart-Master, 
AutoCAD, CADDraft and 
VersaCAD, in ultra-high 
resolution black and 
white. Also, take full 
advantage of your pro- 
gram's windowing 
capability using the large 
14-inch screen. 
Take a good look at the 
differences that set the 
MB-142 apart from the rest. 
No other monochrome 
monitor gives you the 
fatigue-free black and 
white viewing, text and 
graphics capabilities 
and easy interface. 
Naturally enough, 
the MB-142 is from 
Roland DG-the 
new computer 
peripherals company 
that's pointing the way 
to the future. Look for 
this and other Roland 
products at fine com- 
puter dealers 
everywhere. 
For more information, 
contact: Roland DG, 
7200 Dominion Circle, Los 
Angeles, CA 90040. 
(213) 685-5141. 



The software programs listed are trademarks 
of the following companies: AutoCAD, 
AUTODESK, Inc.; CADDraft, Persona! CAD 
Systems, Inc.; Chart-Master, Decision 
Resources, Inc.; Energraphics, Enertronic 
Research, Inc.; Lotus 1-2-3, Lotus Develop- 
ment Corp.; VersaCAD, T&W Systems, Inc. 



Roland DG 



APRIL 1985 -BYTE 55 



EVEREX. EVER F 



;-' :■■ ■ 



Jm 



"S>C 



x xv <Ov> 



t z i X 



X X V V 





X V V 



=«EVEREK- 


^^^^^ 1 ^ 


&tt*$- 



Innovative, Highest Quality Products From 



BACKUP SYSTEMS 

Internal 

• Streaming Tape 

• Cassette 

• Floppy Tape 
External 

A selection of Streaming Tape, Cassette and 

Floppy Tape systems in either individual units or 

combined with hard disk drives and expansion 

slots. 

Unique Features: 

• Space-saving half-height internal systems 

• Backup capacities up to 100 MB 

• Fast image backup-ten megabytes backed 
up in minutes 

• File-by-file and mirror image backup and 
restore 

• EXCLUSIVE file-by-file restore from a fast 
mirror image backup 

• Easy to use software, simply press a key-no 
complex commands 

• Largest selection of backup/retrieve options 

EXPANSION SYSTEMS 

Everex offers a complete line to choose from . . . 

• Full-Size system with eight expansion slots 
and room to add up to four storage/backup 
systems. 

• Half-Size system with three expansion slots 
and space for two storage/backup systems. 

• Slimline system, only 2/2 -inches high with 
three full-size, one half-size expansion slots 
and room for two storage/backup systems. 

• All Expansion systems are available with any 
combination of Everex hard disk drive and 
backup systems. 



Replacethe clumsy flat ribbon cable 
with Everex's shielded, round cable. 



^n 



n 



D 



nf 



Unique Features: 

• Advanced design eliminates "wait states" for 
faster data transmission 

• Highest quality round cables (as IBM) instead 
of flat ribbon cables 

HARD DISK DRIVE SYSTEMS 

Choose from a wide selection of models to meet 
your needs: 

-space-saving internal systems 

-external systems with extra expansion slots 

• Capacities from 10 to 32 megabytes 

• Factory tested for trouble-free operation 

GRAPHICS PRODUCTS 

Everex offers a complete line of graphics 

products to choose from . . . 

The Edge Color/Monochrome adapter 

• Runs color software on your IBM mono- 
chrome display with a FULL SCREEN in 1 6 
shades, no software patches needed 

• High resolution, 720x348, monochrome 
graphics 

• Operates Lotus 1 -2-3, Symphony and other 
popular programs in an extended 132 column 
by 44 or 25 row display in HIGH resolution 
monochrome 

• Printer connection 

Graphics Edge Color/Monochrome adapter 
Similar features as the Edge but also offers: 

• More high resolution colors: 1 6 in 640x200 
graphics 



R EXCELLENCE 



ESf* 



m 



s***„ 






'**&& 



s'.' 



\1 









The Company That Stands For Excellence... 



• Displays the same information on a color AND 
monochrome monitor simultaneously 

Dual Graphics Color/Monochrome adapter 

• Works with high resolution color AND mono- 
chrome displays 

• Operates Lotus 1 -2-3, Symphony and other 
popular programs in an extended 132 column 
by 44 or 25 row display 

• More exciting colors: 16 colors in 640x200 
and 320x200 graphics 

• Printer connection 

Graphics Pacer Monochrome adapter and 
Floppy Disk Controller 

• Runs sharp, high resolution monochrome 
graphics 

• Operates up to four floppy disk and floppy 
tape drives 

• Printer connection 

• Uses only one expansion slot 
Evergraphics Monochrome adapter 

• Operates crisp, high resolution monochrome 
graphics 

• Includes printer and light pen connections 

COMMUNICATIONS AND MULTIFUNCTION 

Evercom Internal Modem 

Gives you all of the features found in modems 

costing hundreds more: 

• Fully Hayes and Bell 103/212A compatible 

• Data transmission speeds in either 300 or 
1200 bps 

• Automatic dial and answer 

• Works with tone and pulse phone systems 

• Voice AND data communications 

• Built-in speaker with software volume control 

• Includes powerful, easy to use software 



MagicCard Multifunction adapter 

• Adds more memory to your computer-up to 
384K 

• Serial connection for modems, printers, plot- 
ters and more 

• Printer connection 

• Game paddle/joystick connection 

• Reliable clock/calendar with battery back-up 

• FORM MANAGER electronic filing system and 
form creator 

• PC WRITE easy to use word processing 
program 

• With printer spooler; electronic disk drive and 
more 

Excellence is the standard at Everex-it's in our 
name, our products, in everything we do. When 
you look for the best for your computer-you'll 
find Everex products. 

Visit your local Everex dealer today and ask to 
see Everex products in action. For the name of 
your nearest Everex dealer, please call (415) 
498-1111. 

Dealer Hotline: (800) 821 -0806. In CA (800) 821 -0807. 

Address: 47777 Warm Springs Blvd., Fremont, CA 94539 (415) 498-11 1 1 . 

IBM, PC, XT and AT are registered trademarks o f International Business 

Machines Corporation. 

Excel, The Edge, Dual Graphics, Graphics Edge, Graphics Pacer, 

Evergraphics, Evercom and MagicCard are trademarks of Everex 

Systems Inc. 

Form Manager is a trademark of BIT Software Inc. 

PC Write is a trademark of Quicksoft Inc. 




EVER for Excellence 
Inquiry 146 



CLUBS & NEWSLETTERS 



• FUTURE INTELLIGENCE 

A monthly newsletter 
devoted to tracking future 
computing technologies 
emphasizes research and 
business. Areas covered in- 
clude artificial intelligence, 
supercomputers, parallel 
processing, expert systems, 
natural language, and voice/ 
speech/pattern recognition 
and synthesis. An annual 
subscription is $295. Con- 
tact Ed Rosenfeld, Intelligence, 
POB 20008. New York. NY 
1002 5. 

• BASED IN THE BAY 

A nonprofit users group for 
Sanyo computerists, the Bay 
Area Sanyo Enthusiast 
(BASE) welcomes anyone 
interested in computers. 
Regular meetings are held. 
Contact Lee Swearingen at 
(813) 788-7865 or Dave Rob- 
bins at (813) 886-7751 or 
write BASE. POB 260517, 
Tampa. FL 33685. 

• CHUGGING ALONG 

The Capitol Heath Users 
Group (CHUG) meets on the 
third Monday of every 
month at the Fairfax High 
School in Virginia. Members 
operate two 24-hour bulletin 
boards at (703) 759-2072 
and (703) 360-3812. CHUG 
sponsors an annual con- 
ference, houses special- 
interest groups, and pro- 
duces a monthly newsletter, 
CHUG, which is included in 
the annual $12 membership 
fee. Call John Roach in the 
evening at (703) 971-4930 or 
write CHUG, POB 10515. 
Alexandria, VA 22310. 

• STANDARDS' BBS 

The National Bureau of 
Standards' (NBS) Institute of 
Computer Sciences and 
Technology (ICST) has 



established a BBS at (301) 
948-5718. Open to the 
public, its purpose is to ex- 
change information that 
assists federal agencies in 
the efficient selection of 
software and hardware. 
Among topics discussed are 
security and interfacing. For 
details on the project, con- 
tact Ted Landberg at ICST. 
NBS. 225 Room #A266. 
Gaithersburg, MD 20899. 
(301) 921-3485. 

• JOIN CP/M EFFORT 
CP/M SIG assists members 
in the technical aspects of 
CP/M and related software 
through monthly meetings, a 
monthly newsletter, and a 
24-hour RCP/M system at 
(303) 465-1313. Article sub- 
missions are welcome, 
public-domain software is 
available, and lectures 
educate members on areas 
of interest, Discounts on 
hardware and software and 
a subscription to the 
newsletter are provided with 
payment of $12 a year. Con- 
tact CP/M SIG Inc.. POB 633. 
Broomfield. CO 80020-0633. 

• GERMAN MAC RULES 
At least once every two 
months, members of Club- 
mac (Europe) submit an 
article to the newsletter on 
anything about the Mac or 
their membership is not 
renewed. The result is a 
newsletter that keeps 
members up to date with 
latest developments, reviews 
new programs and hardware, 
and solves members' com- 



puting problems. The annual 
membership fee is £2 5 per 
annum. Contact K. Leslie, 
Clubmac, Triererstrasse 8, 
D-5 511 Wincheringen, West 
Germany. 

• BCS GOES REGIONAL 

The Monadnock Region IBM 
PC Users Group, a subgroup 
of the IBM PC Users Group 
of the Boston Computer 
Society (BCS). gathers in 
Keene, New Hampshire, to 
see demonstrations and 
meet with other users. By 
joining, you benefit from a 
software exchange, group- 
purchase discounts, a 
monthly newsletter, and 
automatic BCS membership 
with access to the BCS BBS. 
Contact Susy Thielen. 45 
Kelleher St.. Keene. NH 
03431, (603) 352-0971. 

• CALL THE AMATEURS 

The bulletin board of the 
New York Amateur Com- 
puter Club (NYACC) is up 
and running. The bimonthly 
newsletter contains NYC 
users group meetings and 
contacts, a NYACC directory, 
events, articles, letters, and 
news. Meeting times and 
locations of several users 
groups are announced on a 
hotline at (212) 864-4595. 
The membership is $15 an- 
nually; students pay $10. 
Write the NYACC. POB 106. 
Church Street Station. New 
York. NY 10008. 

• DOWN UNDER THE 
TRS-80-Members of the 
Sydney TRS-80 Users Group 



CLUBS & NEWSLETTERS is a forum for letting BYTE readers know what 
is happening in the microcomputing community. Emphasis is given to elec- 
tronic bulletin-board services, club-sponsored classes, community-help projects, 
and other activities. We will continue to list new clubs and newsletters. Allow 
at least four months for your club's mention to appear. Send information 
to BYTE. Clubs & Newsletters. POB 372, Hancock. NH 03449. 



(SYDTRUG) share knowledge 
about hardware, software, 
and education, business, 
and related applications for 
TRS-80 computers. Commu- 
nication occurs through the 
monthly newsletter contain- 
ing news and reviews, plus 
lectures, demonstrations, 
and the 24-hour BBS 
(CLUB-80) in Australia on 
(02) 3 32-2494. The BBS 
features messages, group 
news, and the exchange of 
public-domain software. 
Meetings are held on the 
second and third Saturdays 
of each month in Botany, 
New South Wales. Write 
SYDTRUG, POB 43, Erskine- 
ville 2043, New South Wales, 
Australia, tel: (02) 772-2009. 

• ENGINEERS ANALYZE 
STRUCTURE-The Structural 
Analysis Programs Associa- 
tion (SAPA) upgrades the 
skills of engineers who use 
microcomputers to analyze 
and design buildings. Struc- 
tural software and computer 
services that address this 
issue are discussed in the 
quarterly newsletter, SAPA 
NEWS, and in seminars held 
one full day in eight-month 
intervals. The annual 
membership fee is $100. 
Contact J. Jeff Davies. SAPA. 
Suite D2, 30 Southeast 
Seventh St., Boca Raton, FL 
33432. (305) 392-6597. 

• BBS IN FOX RIVER 

FORMS CLUB-Simplified 
Computer Solutions in 
Wisconsin has helped to 
form the Green Bay/Fox 
River Valley's bulletin-board 
service. SCS ABBS. The SCS 
Users Group evolved from 
the BBS and provides 
members with access to a 
library, group purchasing, 

(continued) 



58 BYTE- APRIL 1985 




PERSONALITY 
PROBLEM? 

UNIX™ and DOS™ At the Same Time! 



Looking at an IBM PC/AT? Happy with DOS but want 
UNIX? Happy with UNIX but want DOS? Want them 
working together? 

Get The Connector!™ 

The Connector is a revolutionary product that allows 
DOS applications to run on the IBM PC/AT or XT 
under VENIX/86 ( the first licensed AT&T UNIX 
operating system for the IBM PCs) or PC/IX. That 
means you can add one or more terminals to your AT 
which run programs using multi-user VENIX/86 to 
share the disk and printer. Switch between UNIX and 
DOS at the console with a single command. And run 
more than one task simultaneously. Like running a 
spelling check in the background while you print a 
report and run Lotus 1-2-3™ or dBasell™ 

Get yourself an AT and load it with VENIX. Collect 
your DOS and/or UNIX applications. We'll supply The 
Connector. The right solution to your software per- 
sonality problems. 

Call for complete details. 

Unisource Software Corp., Department 4 109, 
7 1 Bent Street, Cambridge, MA 02 1 4 1 . 
Telex 92-1401/COMPUMART CAM. 

617491-1264 




Also 
available 
on the 
PC/XT and 
compatibles. 



• UNIX is a trademark of AT&T 'technologies. Inc. DOS is a trademark of Microsoft, Inc PC/AT and PC/XT are trademarks oflRM. The Connector is a trademark 
of Uniform Soft ware Systems, Inc VENIX/H4 implementation by WrrtturCom, Inc. [-IS and LOTUS are trademarks of Lotus Development Corp dBasell is a 
trademark of Asluon-Tate. 




Getting UNIX Software 
Down to Business 



Inquiry 392 



APRIL 1985 • BYTE 59 






o 



COMPUTERBANC 



GET SERIOUS. STOP PAYING HIGH PRICES NOW! 

THOUSANDS OF AVAILABLE ITEMS. CALL FOR COMPI-EIE PRICING. 



SYSTEMS 

IBM PC 

256K, Two 360KB Disk Drives, Color 
Graphics/Monochrome Graphics board, 
Parallel Printer Port, Monochrome Display 
(Amber/Green), DOS 2.1. 
LIST PRICE $2950.00 - ONLY S2095.00 

SUPER XT 10 Meg Upgrade $2795.00 

IBM AT 11% OFF 

IBM SOFTWARE 

LOTUS 1-2-3 $289.00 

LOTUS Symphony 425.00 

MICROPRO Wordstar 249.00 

ASCII Express For IBM 125.00 

Wordstar Professional 359.00 

Infostar 249.00 

Multimate 269.00 

MICROSOFT Word 229.00 

WordW/Mouse 279.00 

Multiplan 139.00 

Project 159.00 

ASHTONTATE Friday 179.00 

dBASEII 280.00 

dBASE III 349.00 

Framework 359.00 

LIFETREE SOFTWARE Volks writer ... 119.00 

Volkswriter Deluxe 169.00 

FOX & GELLER Quickcode 139.00 

dUtil 59.00 

dGraph 149.00 

MICRORIM Rbase: 4000 295.00 

PFS Write 89.00 

File 89.00 

Report 89.00 

Proof 79.00 

Access 79.00 

ENERGRAPHICS 269.00 

IBM HARDWARE 

AST Six Pack Plus 64K 259.00 

MegaPiusll 259.00 

PC Net 1 Starter Kit 830.00 

QUAORAM Quadboard O-K 219.00 

Quadcolor 1 or Microf azer 64K 205.00 

Quadlink 479.00 

MICROSCIENCE 

10MB Winchester 679.00 

FRANKLIN TELECOM 

10 Meg Harddisk 719.00 

22 Meg Harddisk CALL 

Cartridge backup CALL 

HERCULES Mono Graphics 329.00 

Color Card 199.00 

ORCHID Turbo CALL 

PC Net Starter Kit CALL 

PLANTRONICS Colorplus 3B9.00 

STB Rio plus 64K 249.00 

Super Rio 259.00 

Graphix +II NEW 309.00 

AT Hardware CALL 

TEAC55B 124.00 

55F 180.00 

TANOONTM 100-2 179.00 

IBM Floppy 1.2 Meg CALL 

TALL GRASS 12MB W/Tape 2395.00 

RAM 64K upgrade set 9 35.00 

MOUSE SYSTEMS Optical Mouse. . . . 1B9.00 
ALSO - XCOMP, PERSYST, ORCHID, 
TITAN AND OTHERS 

PRINTERS 

BROTHER HR-15 . 369.00 

HR-25 619.00 

HR-35 859.00 

2024LQ 915.00 

JUKI 6100 429.00 



NEC 2030 659.00 

2050 799.00 

3530 1229.00 

3550 1539.00 

STAR MICRONICS Gemini 10X 259.00 

Gemini 15X 3B9.00 

EPSON RX-80 F/T 329.00 

FX-80 349.00 

FX-100 649.00 

LQ1500 1299.00 

OKIDATA 92A 3B9.00 

93A 649.00 

84A 949.00 

PANASONIC 1091 CALL 

TOSHIBA 1350-P 1399.00 

MONITORS 

AMOEX 300 129.00 

300A 145.00 

310A 16900 

Color l+ 269.00 

Color II 459.00 

TAXAN Composite Amber 119.00 

121/122 149.00 

420 (RGB) 439.00 

415 (RGB) 489.00 

PRINCETON GRAPHICS HX 12 469.00 

SR-12 625.00 

MAX-12 1B9.00 

ZENITH ZVM-122 Amber 95.00 

ZVM-123 Green 95.00 

NEC 1201 Hi Res Green 115.00 

1205 Hi Res Amber 115.00 

1206 Green 79.00 

JC1215 Composite Color w/audio ...215.00 
JC1216 Color RGB 329.00 

MODEMS 

HAYES 1200 469.00 

1200B 389.00 

300 199.00 

Micromodem //e 219.00 

ANCHOR Mark X 109.00 

Mark XII 249.00 

Volksmodem 59.00 

NOVATION Smart Cat Plus CALL 

Access 1-2-3 419.00 

Apple Cat II 239.00 

J-Cat 99.00 

PROMETHEUS Promodem 1200 329.00 

APPLE PRODUCTS 

MICRO SCI A2 drives 179.00 

RANA ELITE 1 219.00 

TEAC drive 189.00 

APPLE Compatible drive 169.00 

WESPER Interface 69.00 

BUFFERED 16K 139.00 

SYSTEMS SAVER Fan 69.00 

MICROSOFT Premium //e 279.00 

Softcard CP/M 229.00 

Multiplan 129.00 

MAC Multiple (Macintosh) 129.00 

Basic (Macintosh) 109.00 

APRICORN Serial Card 69.00 

Z-80 Card • • 59.00 

ASCII Express Professional 89.00 

DISKETTES S/S 12.00 

D/S 19.00 

KOALA Touch Tablet 79.00 

HAYES Mach III Joystick 39.00 

THUNOERCLOCK 119.00 

APPLEMOUSE II 129.00 

VIOEX Ultraterm 179.00 

BO C0LUMN/64K Interface/^ only. . .99.00 
BO COLUMN Card II + only 59.00 

WE SUPPORT THESE FINE SYSTEMS: 
Apple, Compaq, IBM, and many more. 



TELEX #550757 /ANSWER BACK - COMPUTERBNK UD 



B 



S3 



Orders Only 
800/332-BANC 



OUTSIDE CALIFORNIA 



CLUBS & NEWSLETTERS 



COMPUTERBANC 



16783 Beach Blvd., Hcmifngfam Beach, CA 92647 

714/841-6160 inquiry 89 



Ml pfMuCU ti <■ >*::•, M 



conferencing on the BBS, 
and a monthly newsletter. 
The annual dues are $10. 
Contact Don Sanderfoot. 
SCS, 2175 Wildwood Dr., 
Little Suamico, Wl 54141. 

• BUSINESS BBS 
The 'liilane University 
Business Bulletin Board 
(TUBBB) system combines 
business researchers, faculty, 
alumni, and students on line 
to share ideas, data, and 
programs. Contact lohn 
Page, A. B. Freeman School 
of Business, 'llilane Univer- 
sity. New Orleans. LA 70118. 

• JOIN LONE STAR 
The Lone Star Computer 
Club of Racine. Wisconsin, a 
group of users of all kinds 
of computers, meets at 7:30 
p.m. on the second Thurs- 
day of each month at the 
Douglas Avenue Park Com- 
munity House. The monthly 
newsletter. President's Newslet- 
ter, combines articles, soft- 
ware reviews, regular 
features, and library and 
system notes with applica- 
tions. Contact H. S. Kanecki, 
Lone Star Computer Club, 
POB 93, Kenosha, Wl 53140. 

• VICTOR 9000 IN NW 
The Victor 9000 Users 
Group serves users in 
Oregon and southern 
Washington state by meeting 
regularly to discuss the 
merits of the Victor 9000 
business computer. A 
monthly newsletter, discount 
purchases, software demon- 
strations, and support for 
new users are group 
benefits. Contact Alan 
Bergen, 11765 Southwest 
Ebberts Court, Beaverton. 
OR 97005. 

• KAYPRO IN BALTO 

The Kaypro Users of 
Baltimore (KUB) meet at 
7:30 p.m. on the first and 
third Wednesdays of every 
month at Loch Raven Middle 
School in Baltimore, 
Maryland. The Bear Facts 
Newsletter contains further in- 



formation. The annual fee is 
$12 and requires a blank 
disk as an initial contribu- 
tion. Newsletter subscrip- 
tions are an additional $6. 
Write KUB. POB 23510, 
Baltimore, MD 21203. 

• ZORBA IN U.S. 

The Zorba Equipment Users 
Society (ZEUS), a source of 
information and support for 
Zorba owners nationwide, 
maintains a public-domain 
library. The newsletter. Oracle 
of Zeus, is produced six 
times a year on disk and 
contains up to 30 files of 
relevant information. The 
$2 5 annual membership fee 
covers a subscription to the 
newsletter. Contact Randy 
Brook, ZEUS, POB 1112. 
Athens, OH 45701. 

• EXPLORING THE STARS 

Users of MicroPro's Word- 
Star and InfoStar can sub- 
scribe to two Stargazer 
newsletters. Exploring WordStar 
and Exploring InfoStar. 
Designed to unlock the 
potential of the programs, 
they supply information for 
solving application questions 
and clarifying documenta- 
tion through a practical, 
hands-on approach. 
Members are encouraged to 
submit articles and can 
benefit from group-purchase 
discounts. Subscriptions are 
$24 annually per newsletter 
or $40 for both. Contact 
Hl-Tech. Department B. 4 
Harwood Dr., Glen Cove, NY 
11542. 

• MAC GETS TECHNICAL 

A Macintosh Programming 
journal, Maffick reviews soft- 
ware development and pro- 
gramming exclusively for the 
Mac. Each month articles 
written by a panel will build 
on previous columns, en- 
hancing readers' understand- 
ing of how to best apply 
Macintosh software tech- 
nology. The subscription 
rate is $24 a year. Contact 
Maffick POB 846. Placentia, 
CA 92670. (714) 993-9939. ■ 



O Cw&"i I9« C0MPUTER8AMC Ai 



THE SIMPLE APPROACH 
ISTHE SYMBOL APPROACH 



10S=0 . 1 


f REAL X( 100) 


r 


20F0RI=I TO 100 | 
30 INPUT X 1 


[ READ*,N,(X(I);i>l,N) 
I S=0 




40 IF X = GOTO 70 j 


[ DO 10 1=1 ,N 


1 (*/x>*px«-n 


50 S=5+X j 


1 10 S-S+XCD 




60 NEXT I 1 
70 PRINT 5/(1-1) J 


1 PRINT * S/N 
1 END 


L 


BASIC 

A program to calculate averages. . . 


FORTRAN 
just shrunk from seven lines. . . 


POCKET APL 

to one. 



me 



INTRODUCING POCKET APL M . 

Pocket APL, a new PLUS* WARE™ product, 
symbolizes a whole new way to solve problems. 
Faster than Fortran. Simpler than Basic. And at a 
cost much less than Cobol and many other pro- 
gramming languages. Its use of symbols makes it 
concise and efficient— powerful and productive. 

WORKING IN SHORTHAND = 
WORKING FASTER, SMARTER. 

Pocket APL allows you to shrink 
the length of your programs. Because 
just a few symbols say what takes lines 
and lines to say in other programming 
languages. So Pocket APL cuts the 
drudgery and need for tedious sub- 
routines and long lists of commands. 

GET FLEXIBILITY > 
WITH CANNED SOFTWARE. 

Pocket APL is a complete APL 
implementation with enhancements 
like online HELP, windowing, report 
formatting, dual file system, and 
debugging aids. It's also a powerful 
online calculator. So you don't have 







to switch back and forth between programs or from 
your hand-held calculator to the computer. 

And the symbols? Simple. You'll learn them fast. 
They'll become as second nature to you as + , - , 
X , and -T-. Once you start using them, you'll be 
programming four to 10 times faster than with 
conventional languages. And as your needs grow, 
you can easily upgrade to STSC's APL*PLUS®/PC 
System for even more features— like 
communications and graphics. 

POCKET APL COSTS 
MUCH < YOU'D EXPECT. 

Pocket APL makes programming 
easy. And priced at just $95, it's easy 
on the budget, too. It works with IBM 
PC's and compatibles and requires 
only 128 K. So if problem-solving is 
taking up too much of your time, the 
answer is symbol. Pocket APL. 

To order, or for more information, 
call 800-592-0050. In Maryland, call 
(301) 984-5123. 

Or write STSC, Inc., 2115 East 
Jefferson St., Rockville, MD 20852. 
All major credit cards accepted. 



Problem-solving atthe speed of thought. 



#V^^I Pocket APL uses a soft character set for computers with IBM-compatible graphics board or color monitor; keywords for computers with monochrome. Optional 
9 | 9% character generating ROM can be ordered for IBM PC monochromes or Hercules monochrome boards. 

A Cornel Company P|_US*WARE and Pocket APL are trademarks of STSC, Inc. APL* PLUS is a service mark and trademark of STSC, Inc., registered in the U.S. Patent and Trademark 



Office and in other countries. 
Inquiry 416 



APRIL 1985 'BYTE 61 



THE MAINFRAME 



When one of twenty Micro Mart 
Sales Pros answers a call, he's ready 
at his PC. 



Micro Mart's Ten Million Dollar 
Inventory is on-line with our IBM 
Mainframe, so answers are fast 
and accurate. 



With PC to Mainframe Inven- 
tory, this Micro Mart Salesman 
verifies his stock, quotes his best 
price and makes the sale. 



HELLO. THIS IS 

MICRO MART 

MAYlUELPYQU? 



Computers 




CANON Athena PC, Color 
or Monochrome Systems. AT 
INTRODUCTORY LOW PRICES 
LEADING EDGE Complete 

systems. FROM $1495 

THE COMPUTER SPECIAL OF THE 
MONT ! CALLFORDETAILS! 

Networking / 
Protocol Conversion 

SNA & BISYNC 3780, 5251 Mod 12 & 

Mod 11, 3274, 3278 

PC TURBO 186 by ORCHID, 80186 

coprocessor board $799 

IRMA Complete line FROM $799 

FORTEGRAPH for IRMA , upgrades 

IRMA to 3279 S3G graphics 

IRMAPRINT Enhances 

IRMA graphics 

PCnet By ORCHID, 

complete line FROM $299 

TECHLAND SYSTEMS Blue Lynx 
5251 Mod 12 & 3276 Emulators and 

3270 Keyboards 

SANTA CLARAPC Partner & 
PCIerminal. CALL 



fyESSlR! /OU WANT 85 OF THEM? 

l l M CHECKING- OUR INVENTORY. 
L ON E MOMENX PLEASE... 

ooOtfc 



THEY'RE IN STOCK 1 . CAN I LOCKTHEM 

IN FOR YOU? THANK YOU. SIR I 
WOULD Y00 LIKE THEM TOMORROW? 



Printers & Plotters 

We have thousands in stock. 
THE PRINTER SPECIAL OF THE MONT ! 

CALL FOR DETAILS! 

HOUSTON INSTRUMENTS Plotters & Digitizers. 

Dot Matrix 

EPSON FX80Plus/100Plus 

EPSON LX80/100 

EPSON LQ1500.. 




Hard Discs 



EPSON JX80, color printer 

COMREX 420. 400 cps. Epson compatible. $1795 

OKIDATA 92&93, ML84, (200cps.), w/opt. IBM 

PROMS, Pac mark 2410(350 cps.) 

OKIDATA Color printers. Complete line . 

CANON Color printers. Complete line. 

TOSHIBA P-1351 & 1340.. 



Micro Mart carries aJlthe major brands. If you 
don't see it— ask for it. 

PEACHTREE PERIPHERALS P-10, 20, 30&50, 
internal & external. For your PC, XT, AT, AT&T, 

COMPAQ or others. FROM $695 

SYSGEN 10 & 20 Meg w/streamer tape. 

NEW MODELS— CALL! 

SYSGEN Image & Quickfile, streamer tape back-up 
f oryour IBMXT & AT. CALL 



QUAD Jr. Expansion for PCjr. 

TECMAR CAPTAIN, 0-384K multifunc 

TECMAR CAPTAIN Jr. , Multifunction for Jr. . 
TALLTREE J-RAMU, 0-512K, w/sof tware. . 



.$199 



TALLTREE J-RAMUX, 0-512K, w/software. _$129 
STH RIO GRANDE & GRANDE BYTE, 

Expansion for AT, 128K FROM $259 

LEGACY Complete line of expansion products for Jr. 
THE BOARD SPECIAL OP THE MONT ! 
CALL FOR DETAILS 



DATAPRODUCTS P. Series 8050 Color 8c 8070, 132 

col, 200 cps, 

STAR MICRONICS Complete line 

TEXAS INSTRUMENTS 855, 865 & 850XL. 
FROM $729 



BERNOULLI TECHNOLOGY Hard Disc 
Subsytems. _ 



Graphic Cards 



_$2595 



DAVONGNewline of hard discs. 21 &32Mbw/tape. 
Start @ $2495 



Chips 



Letter Quality 



NEC Spin writers 2050, 3550, 8850. . 
JUKI 6100/6300. 



C-ITOH Starwriter(40 cps), 

Printmaster, (55 cps) 

COMREX CR35 



_$419/$749 



We guarantee the lowest price for chips! ! Callus!! 
INTEL 8087, 80287 High speed coproc. FROM $129 

64K RAMCHIPS CALL FOR MARKET PRICE 

256K RAMCHIPS CALL FOR MARKET PRICE 

128K PIGGY-RACK Chips for your AT. 

_ CALL FOR MARKET PRICE 



PREVIEW Monochrome graphics. Hercules look- 
alike for less CALL 

HERCULES Mono & color graphics cards, supports 

Lotus. 

PLANTRONICS ColorPlus + HiRes color board, par. 

port w/software Newlow price! 

TECMAR Graphics Master, HiRes color & mono sup- 
ports Lotus $459 

QUADRAM Quadcolorl&H, color cards. . 



.*899/*i299 Multifunction Boards 



We carry a full range of form handling options . 
Call for our unadvertised LQ Printers! ! 

Floppy Disk Drives 



TANDON TM 100-2, DD/DS, 360K. . 



$149 



We have a complete line of multifunction boards 
compatible with the Portable, AT, XT, & Jr. 

SIX PACK 64-384K, multifunc 

MEGAPLUS 64-512K, max. 8 f unc. _ 



PARADISE SYSTEM Multi-display or Mod. Graphics 
Cards, color & mono, par. port FROM $299 

Software 

ASK ABOUT THE SOFTWARE SPECIAL OF 
THE MONT 



Accounting 



1 / 2 HEIGHT DISK DRIVES: SHUGART, MITSU- 
BISHI, TEAC. PC, XT & AT comp FROM $119 

SPECIAL!Two 1/2 H.DD.\'Y" cables & brackets. $229 



MPH RAMboavds, for PC & PC compatibles. _ CALL 

I / MINNIE, I/O shortboard for Portable & AT. 

ADVANTAGE 128K-3MD, expansion for AT. _ CALL 
QUADRAM QUADBOARD, 64-384K $259 



SORCIM/ IUS Complete line including windows. 

FROM$279/EA. 

RPI ACCOUNTING Complete line. 



MICRO MART HAS OVER 20 STORE LOCATIONS. CALL FOR THE ONE NEAREST YOU. 



(404) 449-8089 

Prices are subject to change without notice and are similar, but may vary at Micro Mart Retail Stores. 



Service & Repairs 

• On-Site —We have hundreds of service locations nationally. 

• Depot — Our National Service Center is one of the fastest in 
theU.S. 

• We Have— A wide variety o f services available. Please callu s . 



62 B YTE • APRIL 1985 



orders only 



EVENT. 1-800-241-8149. 



As the order is processed, 
each product is thoroughly tested 
before shipping. 



Micro to Mainframe Order 
Entry and Processing is f ast . . . then 
we can ship by Federal Express for 
next day delivery. 



The result? Some very satisfied 
Micro Mart Customers! 




GREAT JOB 
GETTING- THAT PC 
STUFF, DOCTOR* 




HAYES Smartmodem 300, 
1200, 1200B & 2400. The 
best stock in the U.S. _ CALL 

PROMETHEUS Modems. 

ANCHOR AUTOMATION 

Signalman MkXII. $259 

VEN-TEL 1200 BAUD 1/2 Card 

for IBM Port. & XT. 

FOPCOM Popcorn, int. & ext. 
w/ voice and datacomm 

Miscellaneous 

DYSAN DISKETTES, PC, XT, 
& AT compatible. GUARAN- 
TEED LOWEST PRICE IN 

THE U.S. CALL! 

MOUSE SYSTEMS PC 
Mouse, optical w/ 
software. 



^r^ 



Spreadsheets & 
Integrated Packages 

ASHTON-TATE Framework 

LOTUS Sympho y and Lotus. 

MICROSOFT MuMPla , w/templates. _ 
MDBS Knowledge Man. . 



Graphics & CAD 



.$299/ $429 



Micro Mart carries all the major CAD packages . 
Call if youdon'tsee it. 

Zsoft PC Pad t Brush, mouse driven graphics. _ $95 
DECISION RESOURCES ChartMaster/ 

Sjgn -Master pkgs. . 



SORCIM / IUS SuperCalc 3, vers .2.0. 

NEW LOW PRICE! 

SPI Open Access.. 



MICROPRO ChartStar. m 
MICROSOFT Chart. 



Communications 



Enhancements & Utilities 

FOX & 6ELLER Complete line of enhancements for 

dBase n, m & Rbase 4000 

NORIONUti]ities3.0. $6S 

ROSESOFT ProKey 3.0._ $89 

CENTRAL POINT SOFTWARE Copy UPC. $35 

ATI Training $55 

SOFTSTYLE SetFx + and Printworks. Printer con- 
trol pkgs._ 



MICROSTUF CROSSTALK XVI. Latest version. . 
HAYES SMARTCOMLT. 



$99 



MICROSOFT MOUSEBus 
or serial mechanical 
mouse w /mouse menu 

software. 

KEYTRONICS 5150 & 5151. 

PC and Jr. Keyboards 

KENSINGTON MIC ROWARE 

Master Pie e $119 

CUBIZS Accessories. Pedestals, 

ables,et 

EDPBest selling line of surge 

protectors FBOM $35 

HAYESMach LT&Mach HI Joysticks. 

QUADRAM Micro fazer. Printer buffer 

8-128K. FROM $129 

TRXPPELITE Back-up power supply. 200-1000 

watts, and ISOBARsurge protectors, 4 & 8 plug. 

RUTISHAUSER Sheet feeders for all major brands . _ 
POLAROID Palette. 

Monitors and CRT's 

PGS Maxl2, Amber, 720h x 350v. Monochrome. 

PGS SE-I£690hx480v, w/dual scan cd 

PGS HX-12, 690DotRGB. . 



QUADRAM Quadchrome, 690 Dot RGB. . 



Word Processors 



SIDEWAYS Inverts printout. . 
BORLAND Sidekick. 



.$45 



MULTIMATE w/Spelling checker & tutorial. . 

SAMNA + word processor 

MICROSOFT Word. New version 

LIFETREE Volkswriter Deluxe. 

SSI WordPerfect. New version 

WORDMARC Wordmarc 



.$259 



$169 



LIVING VIDEO TEXT Think Tank. _ 



.$125 



Office & Project Planning 



Compilers & Language Tools 



.$299 



LATTICE C-Compilers 

MICROSOFT Complete line. 

WORDTECH The dBase compiler 

DIGITAL RESEARCH Complete line. 

BORLAND TtwboPascal, Turbo QtooJboxand more. 
FROM $35/E A. 



HARVARD Total Project Ma ager._ 

SORCIM/ IUS Super Project 

MICROSOFT Project. . 



.$299 



Data Base Managers 

MICRORIM 4000or 6000, Report Writer & Clout 

options. New low price! 

WARNER SOFTWARE The desk organizer. $145 

ASHTON-TATE dBase LT&IU. AT compatible 

MICROSTUF Infoscope 



_$439 

QUADRAM Amberchrome. Amber mono. $159 

AMDEK Color300, 500, 600, 700, 710, 722. New 
complete line of HiRes RGB's with new low prices. _ 

AMDEK 300A/300GComposite mon $129 / $119 

AMDEK 310 A, Amber w/3 yr. warranty. . In Stock!! 
WYSE Terminals, 100, 75, 50. Entire line in stock. _ 
TAXAN RGB Color Monitors. Complete line at 
low, low prices CALL! 



©Copyright Micro Mart 1985 
Technology Corporate Campus 
3159 Campus Drive 
Norcross, Georgia 30071 



YOUR PERSONAL BLUE CHIP CARD 






1234 567 890 123 



Micro Mart has 
financing options 
available. Ask for 
a Micro Mart Blue 
Chip Credit Card 
application, today. 



America's PC Specialist. 





IBM is a registered trademark of International Business Machines Corporation. 



Inquiry 260 



APRIL 1985 'BYTE 63 



FROM MICRO 



TO MAINFRAME 



&..*%■ 



BARR/HASP: POWERFUL, VERSATILE, EASY TO USE 

for the IBM PC, XT, AT and compatibles 
includes software, synchronous adapter board and manual 



The BARR/HASP Intelligent Communications 
package provides more than just a connection- 
it's powerful enough to drive multiple high-speed 
printers for volume printing, yet versatile enough 
to print checks and invoices on any size printer. 
With the menu-driven software, you can perform 
all program functions accurately, easily, and with- 
out lengthy training. 

BARR/HASP emulates a full function IBM 3777-2 
and HASP on the 360/20. Print speeds on single 
and multiple printers range from 30 cps to beyond 
2,400 Ipm (7,000 Ipm on the PC AT). Line speeds 
range from 1,200 to 9,600 Baud on dial-up and to 
19,200 Baud on a dedicated line. With the PCAT, 
you can achieve a new speed record for a micro- 
computer— 56,000 Baud— and drive even the 
fastest laser printers at maximum efficiency. 

All tasks — printing, plotting, sending jobs, and 
using the console— operate simultaneously from 
a single PC. Such high performance translates 
into instant savings. BARR/HASP now replaces 
expensive, cumbersome Remote Job Entry work- 
stations — and does it for a fraction of the cost. 



Host Systems: M VS/J ES2 
MVS/JES3 



VM/RSCS 
VS1/RES 



NOS/RBF 
MVT/HASP 



Requires: 128K 

synchronous modem 



You'll find the BARR/HASP manual complete and 
refreshingly intelligible. But should you have a 
question, BARR's technical experts are just a toll- 
free phone call away. 

FREE 30-DAY TRIAL 

See for yourself how the BARR/HASP Link can 
work for you. For a free 30-day trial, call 

800-BARR-SYS 

(800-227-7797) 

in NC, call 919-782-4462 




B4RK/HASP 






ii BAflfisvsrtms,[nc. 



$890 



£ZjS3(|;-:i^ ■■ 



rti^"-*" 



R<YRR/HASP 



Kvi t jt-.\'t. l .i tt ». , .v! 



^i^'IBmh^ 




bam svsTE/ns, inc. 

2500 Blue Ridge Road, Suite 315 
Raleigh, NC 27607 

Inquiry 39 



BOOK REVIEWS 



BUILD YOUR OWN 
EXPERT SYSTEM 
Chris Naylor 
John Wiley & Sons 
New York: 1985 
246 pages, $13.95 

ARTIFICIAL 

INTELLIGENCE IN BASIC 
Mike lames 
Focal Press 
Stoneham, MA: 1984 
122 pages, $14.95 

THE COGNITIVE 
COMPUTER: ON 
LANGUAGE, LEARNING, 
AND ARTIFICIAL 
INTELLIGENCE 
Roger C. Schank 
with Peter G Childers 
Addison-Wesley 
Reading, MA: 1984 
282 pages, $17.95 



BUILD YOUR OWN 
EXPERT SYSTEM 
Reviewed by 
Ramachandran 
Bharath 




An increasing number of comprehensive introductions 
to expert systems— computer programs that emulate 
the decision making of human experts— have been pub- 
lished recently. 7\vo examples are Building Expert Systems by 
Frederick Hayes-Roth (Reading, MA: Addison-Wesley, 
1983), and A Practical Guide to Designing Expert Systems by 
Sholom M. Weiss and Casimir A. Kulikowski (Totowa, NJ: 
Rowman and Allanheld, 1984). 

But the object of Chris Naylor's book, Build Your Own Ex- 
pert System (originally published in the United Kingdom in 
1983), is to help home computer users write expert sys- 
tems that learn. 

John F Sowa, author of Conceptual Structures: \nformation 
Processing in Mind and Machine (Reading, MA: Addison-Wesley, 
1983), groups expert systems into three categories based 
on the kinds of problems they address: classification (such 



as diagnosis of disease), de- 
sign (of chips, for example), 
and decision support. 
Naylor's book is aimed 
essentially at teaching 
readers about classification 
problems. 

Naylor begins with a 
good discussion of the 
general advantages and 
limitations of current expert 
systems. He follows this 
with a chapter on statistical 
and probability theories; he 
provides the essentials of 
elementary probability 
theory and discusses revis- 
ing initial estimates of prob- 
abilities in light of relevant 
additional information. (The 
technique for such revision 
of initial estimates is known 
as Bayes' theorem.) Naylor 
introduces these concepts 
extremely well by relating 
them to an expert system 
the reader might want to 
build: a program for fore- 
casting weather using infor- 
mation on current condi- 
tions of fog, humidity, tem- 
perature, etc. 

After providing this background, the author leads the 
reader through the process of developing a general BASIC 
program that can solve a broad range of classification 
problems. The process includes a BASIC program that asks 
the user questions regarding the variables relevant to the 
problem and the outcomes possible in the problem. The 
program then must be given examples of the different out- 
comes and of the values of the associated variables. The 
program can handle any problem that has these charac- 
teristics: a set of variables relevant to the problem; dif- 
ferent outcomes distinguished by a different pattern of 
values for the variables; and the pattern of values of the 
variables indicates which outcome would result. 

A concrete example of this abstract definition is medical 
diagnosis. Here, the pattern (symptoms) tells the doctor 

[continued] 



ILLUSTRATED BY TOM CENTOLA 



APRIL 1985 -BYTE 65 



Inquiry 400 



COMPUTER COURSES: 

"Structured Programming in BASIC" for IBM PC 

"Microprocessing Essentials" includes 
Microtrainer 2, four interface boards, and power 
supply. 

Both are university level courses. 



TEACHING HARDWARE: 

Microtrainer 2: 6800-based single board computer 

Microtrainer 68K: 68000-based single board computer 

Interface Boards: Demonstrate practical digital 

circuits 

EPROM Programmer 

Power Supply: 5 V regulated 1.5 A bench supply 

6800 Assembler, runs on IBM PC 

68000 Assembler, runs on IBM PC 

Classroom Logic Trainer and Student Supplies 

Write or phone for free brochures. Quantity discounts 

available. 



Waterloo Distance Education 

279 Weber St. N., Unit 17 

Waterloo, Ont. Canada N2J 3H8 

(519) 884^1340 

Waterloo Distance Education 

1051 Clinton St. 

Buffalo, N.Y. 

14206 



BEFORE YOU BUY 
CABLE ASSEMBLIES, 



Heavy guage 

underhood 

shield 

P.D.L 
underhood 



22 AWG 
twisted conductors 




Gold plated pins 

22 AWG 

twisted 

conductors 

Strain reliever 



2mm PVC cover - 



Aluminex 
Shield 



CHECK UNDER THE HOOD! 

DATA SPEC™ cable assemblies are the very best. Each 
cable is fully shielded to exceed FCC EMI/RFI emission 
requirements. The unique P.D.T. technique, introduced by 
DATA SPEC™ and employed beneath the hood shield, 
insures maximum integrity under the most adverse 
conditions. DATA SPEC™ has interface cables for all your 
requirements: Printers, Modems, Monitors, Disk Drives, 
and much more. And all DATA SPEC™ cable assemblies 
carry a lifetime warranty. Insist on DATA SPEC™ cables in 
the bright orange package. Available at better computer 
dealers everywhere. For more information, call or write: 

BOiOJiieO'HCL. 

A Division of Alliance Research Corporation 

20120 Plummer Street • Chatsworth, CA 91311 • (818] 993-1202 

Copyright © 1984 by Alliance Research Corporation Patent PND. 



BOOK REVIEWS 



which outcome (disease) is indicated. The pattern is rep- 
resented by a set of variables: a l in a particular variable 
means the symptom that variable represents is present; 
a stored means it is not. Another example is a fault- 
diagnosis problem to test Naylor's expert program. In this 
problem, the possible variables are the faults you might 
observe in a cassette recorder: no lights; tape won't move; 
unit won't record; intermittent sound; distorted sound; er- 
ratic speed; and hum. Depending on which subset of these 
seven variables is operative, you can determine which out- 
come (or fault) you should diagnose, such as the switch 
is off, the tape jammed, the tape was inserted wrongly, 
the head is dirty, or there's a problem with the amplifier. 
(An optional extension of this is incorporated in a listing.) 
Using the diagnosis as the input, the extension offers as 
output a suggested remedial action— clean the head, 
switch on the recorder, etc.— that is, it is a two-node (or 
two-stage) classification problem. 

The second stage classifies the faults to produce 
remedial action. Readers can come up with their own ex- 
amples of situations that fit this general classification-prob- 
lem format. By finding a suitable problem that relates dif- 
ferent subsets of a set of variables to different outcomes, 
the general program can be used for diagnosis. 

In the course of developing this general program, Naylor 
introduces the theoretical concepts underlying the general 
classification problem, referred to in texts on statistical 
theory as multiple discriminant analysis (the problem of 
discriminating or distinguishing between different out- 
comes on the basis of information regarding the dis- 
criminating variables). By the time readers work through 
the explanations of each line of the program and what 
it does, they will have learned useful statistical theory 
related to a problem that holds their interest. 

The author explains the fundamental basis of all diag- 
nostic or classification-type expert systems. He illustrates 
how they are essentially a set of IF (set of symptoms) 
THEN (corresponding outcome or diagnosis) statements. 
These are usually referred to as "production rules." He 
discusses major successful expert systems, like MYCIN, 
for medical diagnosis; Prospector, for geological prospect- 
ing; and DENDRAL for chemical analysis. The book is 
worth reading just for this lucid explanation of the basis 
of current systems and for the discussion of making a pro- 
gram so specific to a particular problem area that it can- 
not be easily adapted to a different problem area. In con- 
trast, the programs Naylor teaches readers to build are 
of the learning type; that is, on the basis of examples of 
different types of problems, they can learn to diagnose 
problems in different areas. He points out that the disad- 
vantage of this is that such a general program would not 
be as efficient as one built for a specific purpose. 

Summary 

I highly recommend this book for several reasons. It pro- 
vides a simple yet insightful discussion of extant successful 

{continued) 



66 B YTE • APRIL 1985 



Inquiry 107 for Dealers. 
Inquiry I08 for End Users. 




Not long ago, PC Magazine called MDBS III "The most complete and flexible data base 
management system available for microcomputers." That's a powerful statement. But then, 
MDBS II I is an amazingly powerful software package. So powerful, in fact, that it lets you build 
mainframe-quality application systems on your micro or mini. MDBS III is not for beginners. It's for appli- 
cation developers with large data bases or complex data interrelationships who want to define data base 
structures in the most natural way— without resorting to redundancy or artificial constructs. It's for profes- 
sionals who can appreciate its extensive data security and integrity features, transaction logging, ad hoc 
query and report writing capability and its ability to serve multiple simultaneous users. And if you want the 
power and the glory that only the world's most advanced data management system can provide, M DBS 1 1 1 
is for you. For information on MDBS III and our professional consulting services, write or call Micro Data 
Base Systems, Inc., MDBS/Application Development Products, 85 West Algonquin Road, Suite 400, 
Arlington Heights, IL 60005. (800) 323-3629, or (31 2) 981 -9200. MDBS IIL ABSOLUTE POWER. 

Inquiry 258 



WELL GIVE YOU 
THE POWER. 



TAKE THE GLORY 



MDBS III is a trademark of Micro Data Base Systems, Inc. 



Inquiry 278 




ONLY 

PUBLIC DOMAIN 

SOFTWARE 



is uncopyrighted, so no license fees to pay to anyone!. 
Thousands of useful dbase, spreadsheet, word processors, 
games, utilities and business programs you can copy yourself 
from our User Group rental libraries. Join hundreds of 
companies and users enjoying a wealth of inexpensive 
software! 

RENTAL LIBRARIES FOR CP/M 
SIG/M UG (New Jersey Area Computer Club) 

216 Disk Sides $125.00 

CP/M UG (New York Area Computer Club) 

92 Disk Sides - - $45.00 

PICONET (Bay Area User Group) 

34 Disk Sides $25.00 

KUG (Charlottesville Kaypro User Group) 

25 Disk Sides $25.00 

NATIONAL EPSON UG 

32 Disk Sides $35.00 

PD DIRECTORY CATALOG DISK 

SPECIAL SALE— includes CP/M, SIG/M UG & PNET .. $5.00 pp 

RENTAL LIBRARIES FOR IBM PC DOS 

PC-BLUE (NYACC) 

82 Disk Sides $85.00 

IBM-PC SIG (Santa Clara Group, others) 

230 Disk Sides $250.00 

RENTAL LIBRARIES FOR COMMODORE 64 

28 Disk Sides $25.00 

PD DIRECTORY BOOKLET $12.00 pp 

Rental is for 7 days after receipt. 3 more days grace for return. Use your 

credit card — NO DISK DEPOSIT! Most formats available —even 

Apple! Specifiy. Software also available for sale; $6.00 per disk full. 

24 hr., 3 minute info, recording 

(619)727-1015 

NATIONAL PUBLIC DOMAIN RENTAL CENTER 

1 533 Avohill Dr., Vista, CA 92083 f58E5F 

(619) 941 -0925 Orders 




NOW . . . 
SEE SPEED YOU'VE NEVER 

SEEN BEFORE ON THE 

>*sm\ HP 150 

PERSONAL COMPUTER 

HP 150 
with 

COPROCESSOR 

• Precise high-speed computation. 

• Enhanced with 8087 numeric data co- 
processor that provides up to 100 times 
the performance of the standard 8088 
CPU alone. 

• Add-on cards provide analog-to-digital 
and digital-to-analog capability for wide 
variety of applications in science, indus- 
try, and medicine. 

• Graphics capability enables HP 150 to be 
used as digital oscilloscope for real time 
signal display. 

For more information contact: 
CLINICAL MICROSYSTEMS, INC. 

P.O. Box 36-1055 

Melbourne, Florida 32936 

(305) 723-5475 



BOOK REVIEWS 



expert systems. It teaches the basic principles of statistical 
theory, production rules, learning algorithms, and so forth 
in a practical way and provides a technical summary at 
the end of the book for reference. The book contains a 
program for an expert system that is based on an applica- 
tion of Bayes' theorem. 

Running the program in chapter 7 helped immensely in 
following Naylor's explanations. Also, verifying that the 
sample program produced the results indicated by the 
author confirmed that 1 was on the right track. The pro- 
grams are given in Apple II and Spectrum versions of 
BASIC. The reader with access to a different system (I had 
to modify the learning program for the IBM Personal Com- 
puter) becomes painfully aware of the difficulty of under- 
standing the logic of another person's BASIC program 
when it is written in a version that uses only single-letter 
names for variables. Naylor mentions the unsuitability of 
BASIC for these types of programs; his choice was based 
on the fact that it is the language most commonly available 
for home computers. Now that microcomputer versions 
of a more suitable language, Prolog, are becoming avail- 
able, I hope Naylor's next edition of the book will pro- 
vide micro-PROLOG listings as well. 

Ramacfiandran Bharath is a professor in the Department of Manage- 
ment. Marketing, and Data Processing at Northern Michigan Univer- 
sity (Marquette. MI 4985 5). 



ARTIFICIAL INTELLIGENCE IN BASIC 
Reviewed by Norman J. Chaplin 

The artificial intelligence (AI) invasion that was once 
predicted has now arrived. In fact, this intelligence has 
established itself in the areas of intelligent games, deci- 
sion analysis, and expert systems, in addition to programs 
that correct spelling and grammar. 

Mike lames, the author of Artificial \ntelligence in BASIC. 
believes the best way to comprehend the scope of AI is 
to gain experience in it. He recommends using BASIC 
which is both widely understood and easily read. 

To illustrate different techniques, James uses a few sim- 
ple problems that are repeated in various branches of AI. 
He provides practical programs that can be entered with- 
out prohibitive effort from a keyboard. His BASIC dialect 
is a standard Microsoft version without special features; 
it can be adapted readily to most home computers. 

lames uses a heuristic attack on the familiar nine-square 
problem (arrange 8 numbered tiles in numerical order 
within a 3 by 3 array). He defines a heuristic rule as one 
that, when applied, tends to make the result move closer 
to the solution. With a heuristic, as opposed to an 
algorithm, there is no guarantee that a solution will be 
found. The path of the heuristic may be diverted into a 
closed loop of repeating positions. The program prints 
the board position to the screen every two to four moves 
and prints out the total number of moves taken to reach 



68 BYTE • APRIL 1985 



Inquiry 67 



BOOK REVIEWS 



a solution. Although many of my attempts ended in con- 
tinual cycling through a particular sequence of moves, I 
generally solved the problem in twenty to sixty moves, 
and sometimes in as few as seven or eight. 

Man and Machine 

The opening chapter discusses "Your Computer's IQ," 
"Computer-Aided Intelligence," and "What Is Intelligence?" 
In the sections on pattern recognition and speech pro- 
duction and recognition, lames admits that these subjects 
are too much for BASIC and are best handled with dedi- 
cated hardware. A discussion of grammar leads to an ex- 
ample of English generated by a computer. "Thinking, Rea- 
soning, and Problem Solving" deals with mathematical 
theorem proving, cybernetics, and human associative 
memory. 

Man teaches machine in chapters 4.5. and 6. Man in- 
structs the program Aardvark to recognize animals. To ac- 
complish this, Aardvark asks a series of questions to build 
up its inventory of identifiable animals until it becomes 
an expert in animal identification. Aardvark is rudimen- 
tary, but with some expansion it could become a prac- 
tical program, useful in fields such as mineral identifica- 
tion. I used it for bird identification. 

"Structure of Memory" discusses the problem of mem- 
ory-recall and explains computer solutions such as rela- 
tional stores and conceptual databases, lames fully il- 
lustrates the conceptual database problem with the Tom 
the Cat program, which solves the recall problem using 
a number of corresponding matrices. If you enter TOM 
IS A CAT CAT HAS FUR: and then inquire, Does Tom have 
fur? the program answers YES. (Tom wouldn't run until 
I eliminated its bugs.) 

Language and Philosophy 

Another chapter deals with language: syntax, parsing, and 
semantics. Several pages cover Eliza, the psychotherapy 
program. There is also a listing and description of a BASIC 
program, Chat, that generates English sentences. 

The last chapter is about philosophy. Can a computer 
program be intelligent? Or merely very clever? What about 
awareness? Should the Turing test be modified to measure 
artificial intelligence? The theme of this book could be 
summarized in James's words: "There is nothing very dif- 
ferent about intelligent programs and they can be under- 
stood without any difficult theory." Neurophysiology shows 
us how small groups of neurons work, functions that we 
can duplicate electronically. Psychology, however, is so 
general that it can provide little practical guidance. James 
emphasizes that the third-generation software beginning 
to appear is characterized by the assumption that any mis- 
understandings are the program's fault, and the program 
will attempt to correct its mistake by learning the mean- 
ing of the new input from the user. This could be inter- 
preted as intelligent behavior. I loaded a Commodore 64 
with the Chat program, made a few changes, and found 

[continued) 



High performance to cost ratio... 

Programming Chips? 



Projects develop profitably with development hardware /software from GTEK. 




MODEL 7228 - $599 

This model has all the features 
of Model 7128, plus Intelligent 
Programming Algorithims. It 
supports the newest devices 
available through 512Kbits; pro- 
grams 6x as fast as standard 
algorithims. Programs the 2764 in 
one minute! Supports Intel 2764A 
& 27128A chips. Supports 
Tektronics, Intel, Motorola and 
other formats. 



MODEL 7956 

(with RS232 option) .... $1099. 
MODEL 7956 (stand alone) $ 979. 

GTEK's outstanding Gang Pro- 
grammer with intelligent 
algorithm can copy 8 EPROMS at 
a time! This unit is used in a pro- 
duction environment when pro- 
gramming a large number of chips 
is required. It will program all 
popular chips on the market 
through the 27512 EPROMS. It 
also supports the Intel 2764A & 
27128 A chips. It will also program 
single chip processors. 

EPROM & PAL 

PROGRAMMERS 

— Tliese features are standard from GTEK— 
Compatible with all RS232 serial intartare porta • Auto select baud rate • With or without hand- 
shaking • Bkfirectiortfl Xon/Xoff • CTSDTR supported • Reed pin compatibfe ROMS • No per- 
sonality modules • Intel, Motorola, MCS86 Hex formats • Split facility for 16 bit data paths • 
Read, program, formatted list ajmmands • Intampt driven — program and verify real time while 
sending data • Program single byte, block, or whole EPROM • Intelligent diagnostics disom bad 
and/or erasable EPROM • Verify erasure and ampere axnmands • Busy Hght • Gnmpk^e with 
Textool zero insertion force socket and integral 120 VAC power (240 VAC/5QHz available) • 





MODEL 7324 - $1199 

This unit has a built-in compiler. 
The Model 7324 programs all 
MML National and TI 20 and 24 
pin PALs. Has non-volatile 
memory. It operates stand alone 
or via RS232. 




MODEL 7128 $429 

This model has the highest 
performance-to-price-ratio of any 
unit. This is GTEK's most popular 
unit! It supports the newest 
devices available through 
256Kbits. 



MODEL 7316 Pal Programmer $ 599 

Programs Series 20 PALs. Built-in PALA3M compiler. 

DEVICES SUPPORTED 



NMOS 



by GTEK's EPROM Programmers 
NMOS 



CMOS 


EEPROM 

5213 12816A 


MPU'S 


27C16 


8748 8741H 


27C16H 


5213H I2817A 


8748H 8744 


27C32H 


52B13 


8749H 8751 


27C64 


X2816 


8741 68705 


27C256 


48016 


8742H 



2758 2764A 2508 68764 

2716 27128 2516 8755 

2732 27128A 2532 5133 

2732A 27256 2564 5143 

2764 27512 68766 

UTILITY PACKAGES 

GTEK's PGX Utility Packages will allow you to specify a range of addresses to 
send to the programmer, verify erasure and/or set the EPROM type. The PGX Utili- 
ty Package includes GHEX, a utility used to generate an Intel HEX file. 

PALX Utility Package — for use with GTEK's Pal Programmers — allows 
transfer of PAL ASM® source file or ASCII HEX object code file. 

Both utility packages are available for CPM ,® MSDOS • PCDOS ,® ISIS 5 and 
TRSDOS® operating systems. Call for pricing. 

AVOCET CROSS ASSEMBLERS 

These assemblers are available to handle the 8748, 8751, Z8, 6502, 68Xand other 
microprocessors. They are available for CPM and MSDOS computers. When order- 
ing, please specify processor and computer types. 

ACCESSORIES 



Model 7128-L1, L2, L2A 

(OEM Quantity) $259. 

Model 7128-24 $329. 

Cross Assemblers $200. 

PGX Utilities Call for pricing 

PALX Call for pricing 

Qtek 



XASM (for MSDOS) $250. 

U/V Eraser DE-4 $ 80. 

RS232 Cables $ 30. 

8751 Adapter $174. 

8755 Adapter $135. 

48 Family Adapter $ 98. 

68705 Programmer $299. 



Development Hardware/Software 
P.O. Box 289, Waveland, MS 39576 
601/467-8048 
, INC. 



GTEK, PALASM, CPM, MSDOS, PCDOS, ISIS, and TRSDOS 
are all registered trademarks. 



Inquiry 176 



APRIL 1985 -BYTE 69 



64K S100 STATIC RAM 

M59S8 

NEW! 

LOW POWER! 
150 NS ADD $10 



BLANK PC BOARD 

WITH DOCUMENTATION 

$49.95 




PRICE CUT! 



SUPPORT ICs + CAPS 
$17.50 

FULL SOCKET SET 
$14.50 

FULLY SUPPORTS THE 

NEW IEEE 696 S100 

STANDARD 

(AS PROPOSED) 

FOR 56K KIT $145 



ASSEMBLED AND 
TESTED ADD $50 



FEATURES: 

* Uses new 2K x 8 (TMM 2016 or HM 6116) RAMs. 

* Fully supports IEEE 696 24 BIT Extended 
Addressing. 

* 64K draws only approximately 500 MA. 

* 200 NS RAMs are standard. (TOSHIBA makes 
TMM 2016s as fast as 100 NS. FOR YOUR HIGH 
SPEED APPLICATIONS.) 

* SUPPORTS PHANTOM (BOTH LOWER 32K 
AND ENTIRE BOARD). 

* 2716 EPROMs may be installed in any oftop48K. 

* Any of the top 8K (E000 H AND ABOVE) may 
be disabled to provide windows to eliminate 
any possible conflicts with your system monitor, 
disk controller, etc. 

* Perfect for small systems since BOTH RAM and 
EPROM may co-exist on the same board. 

* BOARD may be partially populated as 56K. 



256K S-100 SOLID STATE DISK SIMULATOR! 

WE CALL THIS BOARD THE "LIGHT-SPEED-100" BECAUSE IT OFFERS 
AN ASTOUNDING INCREASE IN YOUR COMPUTER'S PERFORMANCE 
WHEN COMPARED TO A MECHANICAL FLOPPY DISK DRIVE. 

FEATURES: 

PRICE CUT! 



k 5V 64K 




BLANK PCB 

{WITH CP/M* 2.2 

PATCHES AND INSTALL 

PROGRAM ON DISKETTE) 

*69 95 

(8203-1 INTEL $29.95) 



256K on board, using 
DRAMS. 

Uses new Intel 8203-1 LSI Memory 
Controller. 
• Requires only 4 Dip Switch 
Selectable I/O Ports. 
Runs on 8080 or Z80 S100 machines. 
Up to 8 LS-100 boards can be run 
together for 2 Meg. of On Line Solid 
State Disk Storage. 
Provisions for Battery back-up. 
Software to mate the LS-100 to your 
CP/M* 2.2 DOS is supplied. 
The LS-100 provides an increase In 
speed of up to 7 to 10 times on Disk 
Intensive Software. 
Compare cur price! You could pay 
up to 3 times as much for similar 
boards. 

$22900 

#LS-100 (FULL 256K KIT) 



THE NEW ZRT-80 

CRT TERMINAL BOARD! 

A LOW COST Z-80 BASED SINGLE BOARD THAT ONLY NEEDS AN 
ASCII KEYBOARD, POWER SUPPLY, AND VIDEO MONITOR TO MAKE A 
COMPLETE CRT TERMINAL. USE AS A COMPUTER CONSOLE, OR 
WITH A MODEM FOR USE WITH ANY OF THE PHONE-LINE COMPUTER 
SERVICES. 
FEATURES: 

* Uses a Z80A and 6845 CRT 
Controller for powerful video 
capabilities. 

* RS232 at 16 BAUD Rates from 75 
to 19,200. 

* 24 x 80 standard format (60 Hz). 

* Optional formats from 24 x 80 
(50 Hz) to 64 lines x 96 characters 
(60 Hz). 

* Higher density formats require up to 
3 additional 2K x 8 6116 RAMS. 

* Uses N.S. INS 8250 BAUD Rate 
Gen. and USART combo IC. 

* 3 Terminal Emulation Modes which 
are Dip Switch selectable. These 
include the LSI-ADM3A, the Heath 
H-19, and the Beehive. 

* Composite or Split Video. 

* Any polarity of video or sync. 

* Inverse Video Capability. 

* Small Size: 6.5 x 9 inches. 

* Upper & lower case with descenders. 

* 7 x 9 Character Matrix. 

* Requires Par. ASCII keyboard. 




BLANK PCB WITH 2716 
CHAR. ROM, 2732 MON. ROM 



$49 



95 



SOURCE DISKETTE - ADD S10 



SET OF 2 CRYSTALS - ADD S7.50 



WITH 8 IN. 

SOURCE DISK! 

(CP/M COMPATIBLE) 



$ 99 



95 

# ZRT-80 



(COMPLETE KIT, 
2K VIDEO RAM) 



Digital Research Computers 

P.O. BOX 461565 • GARLAND, TEXAS 75046 • (214) 225-2309 



Call or write for a free catalog on Z-80 or 6809 Single Board 
Computers, SS-50 Boards, and other S-100 products. 



TERMS: Add $3.00 postage. We pay balance. Orders under $15 add 75C handling. No 
C.O.D. We accept Visa and MasterCard. Texas Res. add 5-1/8% Tax. Foreign orders 
(except Canada) add 20% P & H. Orders over $50 add 85C for insurance. 



BOOK REVIEWS 



the answers from such a short program to be thought-pro- 
voking. The program generates ideas, which is a form of 
creativity. But is it creativity from the machine that ar- 
ranges the word symbols, or from the man who interprets 
those symbols? Or both? Is this machine-aided creation? 
The sentences generated by Chat are enigmatic, but that 
could be changed by programming some restrictions on 
word association. The meaningless sentences would be 
reduced by this and further suppressed by a supervisory 
censor. We could even program it to learn from human 
prose. But would we then be restricting creativity? 

If you are already competent in AI. Artificial Intelligence 
in BASIC is not for you unless you would like to instruct 
others. It could be a useful text for a short laboratory 
course in which the existing programs could be extended 
as exercises, or it could serve as a practical supplement 
to more theoretical material. It is superb as an introductory 
text for study at home. The programs are short enough 
that you could enter most in less than half an hour. 

The knowledge attained from these short BASIC pro- 
grams is readily transportable to other, more efficient 
languages, where it can become a tool for construction 
of large, more practical AI programs. 

Norman }. Chaplin (31 55 South Dr., Allentown, PA 18103) is a 
retired designer in VLSI now acting as a writer and consultant. 



THE COGNITIVE COMPUTER 
Reviewed by Darrow Kirkpatrick 



Roger Schank, director of Yale University's Artificial In- 
telligence Project, has succeeded in writing a clear, 
exciting report on the nature of human intelligence and 
the implications of machine intelligence. Explaining his 
research, Schank tells us how much we must know about 
computers, what we can learn about intelligence from the 
development of understanding computers, and how intel- 
ligent computers will affect our world. 

Setting the Record Straight 

Schank risks distilling his 20 years of research into one 
nontechnical book about artificial intelligence. This is his 
attempt to set the record straight. Along the way we can 
learn a little about how computers work and a great deal 
about how human beings think, learn, and understand. 
Schank thinks learning about AI research is more impor- 
tant for an understanding of computers than learning to 
program in BASIC (or any of the other computer-literacy 
skills in vogue). AI research has the potential to transform 
our lives through the creation of new machines that can 
do things never done before. 

Cognitive Understanding 

If we want to build understanding computers, first we must 
understand ourselves; we must be familiar with human 

[continued] 



70 B YTE • APRIL 1985 



Amazing 
what goes 

into 
Macintosh 

these days. 



IBM PC 

software, 
for instance. 



Macintosh and IBM PC 
software. Compatible at last, 
thanks to MacCharlie, a rather 
innovative coprocessing system. 

And imagine the consequences. 

Nearly 10,000 IBM PC software 
programs designed for general 
business and specific applications 
in real estate, insurance, law, 
medicine, banking, etcetera, can 
now join forces with Macintosh's 
own popular programs. 

And, the myriad of IBM PC- 
compatible software adopts 
Macintosh's many beloved 
features, including desktop 
utilities such as the clipboard and 
the calculator. 

In addition, MacCharlie allows 



IBM PC and Macintosh data files to 
be exchanged. Talk about flexibility. 

But the good news gets better. 

You see, MacCharlie delivers 
hardware compatibility, as well. 
For example, IBM letter- quality 
printers can be easily used 
with Macintosh. 

Furthermore, 
MacCharlie 



now allows Macintosh to perform 
virtually any networking an IBM 
PC can perform. Even to the extent 
of tying in with IBM mainframes. 

In other words, your 
networking capability goes beyond 
the Apple family. 





The Macintosh keyboard slides 
right into MacCharlie's keyboard. 
About as easy as slipping a letter 
in an envelope. 



Macintosh sets snugly 
beside MacCharlie, on 
a custom-fit pedestal. 



Once you plug in MacCharlie's 
power and keyboard cords, 
you're ready to enjoy a very 
happy marriage. 



How does it happen? As easily 
as slipping on penny loafers. 

In mere moments, MacCharlie 
combines the best features of the 
world's premier personal 
computers. 

And despite the fact that it 



turns one computer into two, 
MacCharlie adds but a handful of 
square inches to Macintosh's 
physique. 

In short, one of life's most 
perplexing decisions — whether to 
buy a Macintosh or an IBM PC— 



can now be made with the 
greatest of ease. 

Ask for MacCharlie at your local 
computer store. Or, for more 
information, call toll-free, 
1-800-531-0600. (In Utah, 
call 801-531-0600). 



MacCharlie offers 256K RAM, with optional upgrade to 640K RAM; 360KB disk drive, and optional second disk drive. 





Macchailie 



THE BEST OF BOTH WORLDS. 

MacCharlie is a product of Dayna Communications, 

50 S. Main, Salt Lake City, Utah 84144 

Inquiry III 

Apple is a trademark of Apple Computer, inc Macintosh is a trademark licensed to Apple Computer, Inc. IBM 
is a registered trademark of International Business Machines Corporation. 



BOOK REVIEWS 



thought processes before we can program an understand- 
ing computer. Schank defines three levels of understand- 
ing: making sense, cognitive understanding, and complete 
empathy. Current AI research is concerned mostly with 
cognitive understanding. Cognitive computers will be able 
to learn, relate the present to the past, formulate new in- 
formation, and explain themselves. 

People understand in terms of their own experiences. 
We can understand only if our memories are able to 
change to match a situation. In a sense, we are pro- 
grammed by our experiences. But intelligent entities can, 
at best, "make sense" of experiences they haven't had. 
Computers will never understand us at the level of com- 
plete empathy because they are not like us. 

Intelligence is the ability to react to something new in 
a nonprogrammed way. The fundamental difference be- 
tween imitation and understanding in a system is self- 
knowledge. An intelligent system must be able to explain 
itself. 

Because AI research is a new and different science, every 
major AI project is in some sense a failure at modeling 
human intelligence. Each success shows only what is miss- 
ing. AI is a steady but plodding study of the impossible. 
As it asks questions about language, reading, and under- 
standing, it can lead us to appreciate human qualities and 
abilities even more. 

AI research has an uneasy relationship with computer 
science. Computer scientists are searching for ways to 
make computer hardware and software work more effi- 
ciently but AI researchers are attempting to raise the level 
of understanding of computers. Ultimately Schank feels, 
AI will be assimilated into other disciplines. 

Schank defines product-directed AI as concerning the 
technology of getting computers to do intelligent things, 
and theory-directed AI as concerning the representation 
of knowledge, learning, and human thought processes. Ex- 
pert systems are examples of product-directed AI. 

Language and Knowledge Structures 

Until recently, the representation of abstract ideas and 
concrete events has been possible only with natural lan- 
guages. Computers also must be able to handle abstract 
concepts, but a system will not seem very intelligent with- 
out also having a clear grasp of the obvious. In a 
humorous progression of examples of conceptual errors 
in the development of an early AI program, Schank dem- 
onstrates just how obscure the obvious can be. 

Our memories are tuned to ideas, not words. A major 
task in AI programs is making the computer forget the 
words and retain their meanings. An understanding system 
must rely on very basic conceptual representations of 
events. The Yale Artificial Intelligence Project utilizes 
only II primitive actions to represent real-world 
happenings. 

An interesting thing about human knowledge is not how 
much we know, it's how effortlessly we recall what we 
know. One of the basic methods used to represent knowl- 



edge in AI programs is the 'script." Scripts enable com- 
puters to deal with everyday, stereotypical situations by 
using a group of connected possibilities, or "slots," and 
rules for filling these slots. 

But if computers are to understand more than stereo- 
typical situations, they must have some knowledge of why 
and how people do what they do. Computers must have 
knowledge structures for goals and plans. 

Early AI research concentrated on the outer form of lan- 
guage by building parsers to dissect language into its 
grammatical elements. Current research is occupied with 
understanding the content of communication. For Schank 
and others, language is a vehicle rather than an end; the 
aim is to write programs that concentrate on meaning 
rather than on grammatical structure. 

In the early 1970s Schank and his students built soft- 
ware programs called the Inferencer and the Paraphrases 
In order to process sentences and make conclusions, the 
Inferencer could parse, draw inferences, and generate nat- 
ural language. The Paraphraser could understand a sen- 
tence well enough to restate it in different ways, from dif- 
ferent perspectives. However, to understand large pieces 
of text, computers must draw inferences from many con- 
nected sentences. 

A computer can use scripts to make up for the lack of 
logical connections between events, but researchers have 
to give the computer methods for dealing with the world 
when it does not have a script. More sophisticated AI pro- 
grams use beliefs, inferences, plans, goals, scripts, and 
prior memories in order to understand. Researchers have 
seen the importance of a dynamic, flexible memory that 
changes every time it understands something. 

In the long term, it is unrealistic for us to expect to build 
perfectly general knowledge structures into computers. In- 
stead we must give them the ability to learn. This is the 
only way computers will be able to make connections 
across different fields of knowledge— thereby solving what 
Schank calls the "domain problem." Computers will have 
to know what they don't know as well as what they do 
know. 

AI in Education 

I suspect that first among Roger Schank's priorities is 
teaching. He has strong opinions about education. The 
issue is not how much we must learn about computers but 
what we can learn from them. 

Schank thinks children should first learn to read and 
write. Public schools and teachers are not equipped to 
train children for programming careers. Schank concludes 
that children are better off with no programming skills 
rather than poorly taught computer skills. 

Schank thinks that children must learn at an active, in- 
dividualized pace. Children must actually learn, not just 
repeat, new principles. Experimentation with computers 
can provide this kind of learning. 

For Schank, education is the most important and poten- 

[continued) 



74 BYTE • APRIL 1985 



Where Giants Fear To Tread 




rfl%y^ 



For five years NESTAR has ventured where giants have feared to 
tread— local area networking. In fact, NESTAR has installed more 
large local area networks in large institutions than any other 
manufacturer. 

Soon the giants will be involved in networking and that will 
ensure broad industry support NESTAR' s products will be totally 
compatible and complementary to the systems 
so/d by the giants. That way you receive the 
advanced technology and responsiveness of 
NESTAR today with the comfort that compatibility 
with giants brings. 

Call or write for your copy of: 
"Executive Briefing" 
2585 East Bay shore Road, 
Palo Alto, CA 94303 • (415) 493-2223 






m 



<% 



Local Area Networks 
For Large Organizations 

AEsra/? 







Inquiry 282 



APRIL 1985 -BYTE 75 



74F00 NEW 74ALS00 



DISK CONTROLLERS 



PirtNo. Pin* Pries 



SN7400N 
SN7401N 
SN7402N 
SN7403N 
SN7404N 
SH7405N 
SN7406N 
SN7407N 
SN7408N 
SN7409N 
SfJ7410N 
SN7411N 
SN7412N 
S1J7413N 
SfJ7414N 
SN7416N 
SN7417N 
SN7420N 
SN7421N 
SN7422N 
SN7.I23N 
SN7425N 
SN7426N 
SH7WU 
SM742BH 
SN7430N 
SN7432N 
SN7433N 
SN7437N 
S',;.! .-;■■■< 
SH7439N 
:■',■■:: ', 
J\M.:;.\ 
SN7442N 
SN7443N 
SN7444N 
SN7445N 
SN7446N 
SN74<I7N 
SN7448N 
SN7I54N 
SN7459N 
SN7460N 
SN7.170N 
SN7472N 
SN7473N 



74LSIK1 
■■■-uvii 

;-:l--;c;' 

74LS03 
74LS0.1 
74LS05 
74LS0B 
74LS09 
74LS10 
74I.S1I 
74LS14 
7.11515 
74LS20 
74LS21 
74LS26 
74LS27 
74LS28 
74LS30 
74IS32 
74LS37 
74LS38 
7-1LS42 
74LS47 
74LS51 
Ml / 
MLS74 
74LS75 

4 5 
74LS66 
741S90 

74LS93 
74LS96 
74LS107 
74LS109 
74LS112 
74LS1U 
74LS122 
74LS123 
74LS125 
74LS126 



74S0O 
74S02 
74S03 
74S04 
7-1S0S 
74S08 

74: : 

74S10 
74S11 
71S15 
74S20 
'4S22 
74S30 
74S32 
74S37 
74S38 
74S51 
74S64 
74S65 
74S74 
74S85 
74S86 
74S112 
74S113 



M 



CA301QH 

CA3046H 14 

CA3059N 14 

CA30B0N 16 

CA3065E 14 

CA3080E 8 



C04001 
CD4002 
CO4006 

C()4tin/ 
CD-KKI8 
[:[)■;«;>) 
r;[)'.i)in 
email 

CD4012 
CD40I3 
CD4014 
CD4015 
CW016 
CO4017 
CtMOlB 
CO4019 

cn-1020 

GD4Q21 

CO4022 
CO4023 
CO4024 
CD4025 
C04026 
CO4027 
CD4028 
CD4029 

am:w 

C04034 
CD4035 
004840 



14 



Part Ni 



SN7474N 14 

SN7475N IB 

SN7476N 16 

SN7479N 14 

SN7480N 14 

SN7482N 14 

SN7483N IB 

SN7485N IE 

SN748EN 14 

SN7489N 16 

SN7490N 14 

SN7491N 14 

5N7492N 14 

SN7493rJ 14 

SN7494N 14 

SN7495N 14 

SN7496N IE 

SN7497N IB 

SN74100N 24 

SN74105N 14 

SN74I07M 14 

SH74109fJ 16 

SN74116N 24 

SN74121N 14 

SNM122N 14 

SM74123N 16 

SN74125N 14 

SN74126N 14 

SN74I2BN 14 

SN74132N 14 

SN74I3SN 14 

SN/4141N IE 

SN74142N 16 

SN74143N 24 

SN74I4.1N 24 

SN74145N 16 

SN74147N 16 

SN74148N 16 

SN74150N 24 

SN74151N 16 

SN7-H52N 14 

SN74153N IS 

SN74154H 24 

SN741S5N 16 

SN/41S6N 16 

SN74157N 16 



Part No. 


Plni 


Price 


SN74159N 


24 


1.95 


SN74160N 


IB 


.59 


SN74161N 


16 


.59 


SN74162N 


18 


.59 


SN74163N 


IB 


59 


SN74164N 


14 


.89 


SN74165fl 


16 


.69 


SN741BBN 


16 


.69 


SN741B7N 


IB 


295 


SN74170N 


16 


1.59 


SN74172N 


24 


4 95 


SN74173M 


16 


.85 


SN74174JJ 


16 


.59 


SN74175N 


16 
14 


59 
79 


SN74176N 


SN74177N 


14 


79 


SN74179N 


16 


1.49 


SN74180N 


14 


.69 


SN74181N 


24 


195 


SN74182N 


16 


1.05 


SN74184N 


15 


229 


SN74185N 


15 


2.29 


SN74190N 


15 


69 


SN7419IN 


15 


69 


SN74192M 


16 


.69 


SN74193N 


16 


69 


SN74I94N 


16 


.69 


SN74J95N 


16 


.49 


SN74I96M 


14 


75 


SM741971J 


14 


.75 


SH74198N 


24 


1.19 


SN74199N 


24 


t 19 


SN74221N 


16 


119 


SN74251N 


16 


.79 


SN74273M 


20 


1.95 


SM74276N 


20 


2.49 


SN74279N 


16 


79 


SN74283N 


16 


139 


SH74284N 


16 


2.95 


SfJ74285rJ 


16 


295 


SN74365N 


IB 


55 


SN74366N 


16 


55 


SN74367fl 


16 


55 


SN74368H 


16 


.55 


SN7-I390N 


16 


1,19 


SN74393N 


14 


1.49 



74LS133 
74LS136 
74LS138 
74J.S139 
74LSI45 
74LS147 
74LS148 
74LS15I 
74LS153 
74LS154 
741S155 
74LS156 

7.1LS158 
74LS160 
74LS161 
74LS1G2 
74LS163 
74LS164 
74LS165 
74LS168 
74LS169 
74LS170 
74LS173 
74LS174 
74LS175 
74LS181 
74LS190 
74LS191 
4 I 

74LS195 
74LS196 
74LS197 
74LS221 
74LS240 



/■H.s:».M ■ 

■ 
74LS253 
74LS257 
74LS258 
74LS260 
74LS266 
74LS273 
74LS279 
74LS280 
74LS299 
74LS322 
74LS323 
74LS347 
74LS353 
74LS364 
74LS365 
74LS366 
74LS367 
74LS3S8 
74LS373 
74LS374 
74LS375 
74LS386 
74LS393 
74LR399 

7-1LS533 
74LS534 
74LS540 
74LS54I 
74LS640 

74LS645 
74LS670 
74LS688 
8ILS95 
8ILS96 
81LS97 
8ILS98 



■2kW:l.l.'.Ul 



74S114 

74S124 

74S132 

74S133 

74SI35 

74 1 

74S138 

74S139 

74SI40 

74SI51 

74S153 

74S157 

74S158 

74S160 

74S1 

74SI74 

74SI75 

74S188 - 

74S194 

74SI95 

74S196 

74S240 



74S241 

74S242 

74S243 

74S244 

74S251 

74S253 

74S257 

74S258 

74S 

74S273 

74S280 

74S287* 

74S288- 

74S299 

74S373 

74S374 

74S387- 

74S471- 

74S472" 

74S473* 

74S570- 

74S571* 

74S572- 

74S573* 



CA3081N 


IB 1 I 1 


CA3082N 


1G t.lf 


CA3083N 


15 1.15 


CA3086N 


14 K 


CA3089N 


16 195 


CA3096N 


16 175 



CA3J20E 
CA3140E 
CA3160H 
CA3160E 

(-A7IN1E 
CA3162E 
CA31B9E 
CA3401N 



CD4041 
CIM0.13 

(;iih).!.i 
(;ii4i)4f, 

VMtb'.l 

cri'.n.vi 
C 1)4050 
CD40S1 
CD4052 
CD4053 
CD4056 



CD4068 
C04069 

CO4O70 
CCW71 

CD4072 
C04073 
C04077 
CD407B 
CD4081 
t:iM!R1 

OD4004 

C04D9H 
CD4099 



CD4503 IB 

CO4506 1G 

CD4507 14 

CD4508 24 

CD4510 16 

C04511 IB 

CD4512 16 

C04514 24 

CD4515 24 

CD4516 16 

CD4S16 16 

CD4519 16 

CO4520 16 

CD4526 16 

CD4528 IE 

CD4529 IB 

C04531 16 

CD4538 IE 

CD4541 14 

C04543 16 

C04552 14 

C04556 16 

C04583 16 

C04584 14 

CD4723 16 

CD4724 16 

MCI 44 10 16 

MC14411 24 

MC14412 IB 

MC14433 24 

MC14572 IB 



74FO0 14 Quad 2-lnput WND Gate 69 

74F02 14 Quad 2-lnpu! NOR Gate 75 

74F04 14 Hex Inverts; .89 

74F0S 14 Q-53 2-i-D'J Af.O Gate 75 

74F10 14 T-ip's 3-liDut WfiOGaSfi. 75 

74F32 14 Quid 2-laaut OR Gate 79 

74F74 14 Oual Flio-Flop B5 

74F86 14 0«l1 EM 

74F109 18 Dual JK Positive Edfie Fllp-Flop. 95 

74F138 16 Expandable 3/8 Decoder. I.B9 

74FI57 16 OuacJ 2-!ncu; Mu!lipie«er 1.69 

74F158 16 Quad 2-lnput Multiplexer (Inu] 1.69 

74F193 16 4'Bi! l 1 . 5 29 

74F24Q 2Q ti-Stjtt Octal Line Driver (Inverting} 3.75 

74F244 20 Tn-Siaie Octal Line Ofrver 3 49 

74F257 IB li-Statt Quad 2-lnput Multiplexer. . 1.79 

74F373 20 ' ■ 1 . - > p ch 4.B9 

74F374 20 Tn-Siaie Octal Fiip-Fiaa. 



2l2i 



74ALSO0 14 0uad2-lnpu1 NANDGale 59 

74ALS02 14 Ouad 2-inpuiNOR Gate 59 

74ALS04 14 Hex Inverter 59 

74ALS0S 14 Quad 2-lnpul AND Gale 59 

74ALS10 14 1riple3-lnput HANO Gats 53 

74ALS30 14 8-lnpul NAND GaB 59 

74ALS32 14 Ouad 2-lnput OR Gate 65 

74ALS74 14 Oual D Flip-Flop. 79 

74ALS109 19 Oual JK P05. Edge Flip-FloP. .79 

74ALS13B 18 Expandable 3/8Decoder 1.25 

74ALS240 20 Tti-State Ocial Line Dnver (lrn.*rting) 2.25 

74ALS244 20 Tn-State Ocial Lme Driver 2.25 

74ALS245 20 Octal Bus Transceiver (Non-lnv) 259 

74ALS373 20 Tn-State Ocial Latcli 2.59 

74ALS374 20 Irl-State Octal Flio- Flpo 2.59 



Phi I 



MICROPROCESSOR COMPONENTS 



Mew Super Low Prices! 



New Super Low Prices! 



ftrlHo 



- MICROPROCESSOR CHIPS— 

Pins Funcliiin 



Pries 



0765AC 40 Floppy Disk Controller 16 95 49-95- 

03242 28 Addt Mjlhplexer i Relresh Counter. 795 

TMS550I 40 Synchronous Data Interlace (SIRC) .. 1495 

Z80, Z80A. Z808, Z8000 SERIES 

Z80 40 CPU (MK3880N)(780C)2 SMHi 2.75 ^6- 

28 Counler Timer Ci;cuit 3 49 

40 Dual Asynchronous Rec/Trans. ... 895 

40 Direct Memory Access Circuit 1249 

40 Parallel I/O Inlirtice Ccntrot let. 21.95 *49 

40 Serial l.'O (T«CB and RxC3 Bondedl 1 1 49 

40 Serial l.'OILacks DTRBI 1 1 49 

40 Seiral I/O (Lacks SYNCB) 1 1 49 

40 Scnall/O 1 1 49 

40 CPIJ(lvK.1HKCN-4ll780C-1)4MHz.... 2.95*49 

2B Counler rmietCircuit 3.95+49- 

40 Dual Asynchronous (tec /Trans . . 

48 Oucd Memory Access Circuit. . . . 

40 ParnllcH/O Interface Controller 

40 Serial I/O (IxCB and RxCB Bondedl. 

40 Scii.U I/O (Lacks DTRBI 

40 Serial I/O (Licks SYNCB) 

40 Serial I/O 

40 CPU lMX3«B0fJ 61 6MM1 . 

28 Counter Timer Oreo il ... 

40 DualAsyncliionous Rec./Bans . 

40 P.ii.illell/O Interlace Controller 

46 CPUSe'iineiileil (H)MHi) 

40 CPU Nuu-Sctimenled (IDMHi| 

6500/6800/68000 SERIES— 

40 MF'UwHliCiinkflVH.') 

m M-'lUviln Clin k t?MUi> 

40 f/IU Willi Clock <3fv!Hz| 

40 Peripheral inter Adaoter . 

40 VtrsiMe Inter Atlapie; ■ 
Async Crwnm Interlace Adapt 



Z80CTC 
Z80-DART 
Z80-DMA 
7BO-P10 

zeo-siao 

Z80.S10/1 

Z80-S10/2 

Z80-S10/9 

Z80A 

Z80A-C1C 

Z80^DART 

Z80A-DMA 

Z80A-P10 

Z80A-S10/0 

Z80A-S10/1 

Z80A-S10'2 

2fl0ASl0'9 

280B 

Z80B-C1C 

Z80BDARI 

ZII0I1-P10 

Z6O01 ! 



12 95 
3.95 
1195 



1195 



59!)5 



-,-.■;. 'A 
».'ii:'!> 
6520 
6522 
1 
6800 
G802CP 
6809 
&809E 
T.0B09E 
6BB10 
6B21 
6BB21 
6845 
68045 
6850 
E860 
B80OOL8 
G8,t88P 



2B Async Cnrnm Interlace Adapt ... 6 95 100:" . 

40 MPO 295 

40 MPU wilhClock and RAM 5 95-?-9» 

40 CPU - 8-Bil lOn Chip Oscillator). 8.95 

40 CPU 8 Hit (External Clocking) 9 95 

40 CPU - 8-B1I lEn Clocking) 2MM; 1495 

24 128x8 Static RAM (2MH?) 595 

40 Peripherallnler Adapt. IMC6820) 2.75 *9S- 

40 Beriphera!lnierlaceAdapler<2MII;| 595 

40 CRT Conlrollcr (CRTC) 9,95 -M35 

40 CRT Controllet (CRTCI 2Mhj. .... 1495 -^Sr 

24 Asynchronous Comm Adapter 395 

24 0-600(ips Dirjilal MODEM 795 

E4 MPU I6-B1I (BMHji. . . 3995 

40 General Puroose Inl. Adaplet 9.95 

8000/80000 SERIES 

8031 40 CorilrolOncitalCPUw/RAMA I/O 12.95 H&, 

8035 40 MI'U - 8-Bil. 4.95 -M&- 

8039 40 CPU-Sgl Ciii|)B-8illl2«blS RAM) 4.95-5*- 

e040N-G 40 CI , U(256t)ytesRAM) 99b 

80G0 40 CPU- 8-Bit NMOS 12.95 U* 

8073N 40 CPU w/Basic Micro Inlerpreler. . . 2995 

8080A 40 CPU . 3.95 

H0B5A 40 CPU. . 495 

(1085A-2 40 CPU-8-Hir N-Channel(5MHzi 10.95 Hr% 

8006-2 40 CPU 16 bil8MHz. 19.95 W&- 

8087 40 Aiiihrnetic Processor . 169.95 4«9* 

8088 40 CPU8/IGB1I 14.95 »95 

8155 40 HMOS RAM 1/0 ftrt-Timer 4.95 «&■ 

8156 40 RAM witlr I/O Par and T««i . B.55 fr* 
8205 IE Hi Speed 1 out ol 8 Binary Decoder. 395 
8212 24 8-Billn|>ut/Ouipuil74S412) 295 

B224 IB CJock Generator (Driver . . 2.95 

822B 78 Sys Conl Ibtt Driver (74S428) 3.95 +95- 

8237-5 40 High l\:rl. Piog DMACont. (5MH;) 14.95 4*95- 

8238 28 Sys1emControtler(74S438( 495 

8243 24 I/O Expander tor 48 Senes 3.95 -Ws- 

825!W 40 Async Comm Element 1095 

8251 28 Prog Comm I/O (USART) 4.49 4-«r 

825IA 28 Prog Comm Interlace (USARIi 4.95 -f-% 

8253 24 Prog Interval limer 5.95 && 

8255 40 Prog FV-ntihcral I/O (PPI) 4.49 -WS 

8255A-5 40 Proij Ptriimer.il I/O IPPI) 5MH; 4.95 m> 

8259 2B Prof| Imerrupl Conirot 5.95 

8272 40 Srjle/Ohli; Densily Floppy Disk Com. IB.95 W* 

8274 40 M11ll1PwloColSer1.1l Cont. 172011 14.95 P*4S 

0279 40 Prorj Kwtwanl/Display Interlace G.95 

8282 20 OclalLatcli 6.49 8^5- 

8281 IB Clock Gencraior/Onvcr 549 695- 

8286 20 Ocial Bus Transceiver 649 : f J i-> 

82B7 20 Oci;il Iu5 Iransceiver (Inverled) 6.49 WS- 

8288 20 BusController 14 95 MH» 

8303 20 8-Uit Tn-Slale BiDneclronalTians. . 3,49 

8304 20 8-Bit Bi-Oirectional Receiver ... 3.49 
8310 20 Ocial L.ilclied E^riliheral Oiiwr. . . 3.95 
8741 40 8-BilUniv Peripheral Interlace. . . . 19.95 -29-35 

8748 40 HMOS EPROM MPU 19.95 -S94& 

87-19 40 MPU 8-BrtlEPROM\fersion 018149124.95 5*93- 

8755 40 16KEPROMivi1rtl/0 3995 

80186-6 68 High lnle9rahor> I6-81IMPU . 9995 

80188 68 Kflh Integra 16 B.t MPU 18-BitOata Bus) 8995 

SPECIAL FUNCTION 

DS0026CN B Dual MOSCiock Oliver (5MHj:). . . 1 95 

INS2651 28 Co/nmunication Chip . . . 795 

MC3470P 18 Floppy Disk Read Amp System 4.95 

MM5321N 16 TV C;imera Sync. Generator 9.95 

MM5424CN 24 Asynchronous Transmiirer/Receiver 595 

MMS8167AN 24 Microprocessor Real Time Clock . 895 

MM58174AN 16 Micro Cornpatiule Time Clock . 895 

MM!i j'iWvN B Pi 3 Dscillalor/Oindei (6DHz). 1.79 

MM53R9EST 8 Pico Oscillator/Diwder HOOHzl . . 195 



Low Profile |lm| Sockels 

fad Hi, 1-9 10 99 100 up 



8 pinLP .16 

1 4 p in L P .17 

16pinLP 19 

ISprnLP 25 

20pmLP .30 

22pmLP .31 

24 prnLP .33 

28pinLP .40 

40 orn LP .49 



Soldertai! [GaldJ Slandard 

ParlUD. 1-9 10-99 100 up 



8 p i n SG .39 

14 pmSG .49 

16pinSG 55 

ISpmSG .65 

20pinSG .75 

22pmSG 79 

24 pin SG .79 

2BpinSG 95 

36pmSG 1.25 

40pinSG 1.39 



-DYNAMIC RAMS- 



Pirn funding 



Price 



1103 
4027 

■:ii>;:i \ : , 
J1I6N-20 

-SI IfiM ?!> 

' ■' 
4IC4N-200 

HM5262 

41256-200 
48128 



2101 



18 1024x1 (300ns). . .... M 

16 4D96»I |2SOiu| 1.49 

IB 16.384, t 1150ns) 1 39 - c 10 S5 

16 16.384.1 1200ns) .19 8 6 29 44 ^— tM 
16 16384,1 1250ns) .B9-8.'5.4S * C ^$^ 
16 65.53fii1 (150nsl395-a3!.49 -u+. .(.±y~ 
■- 1200ns) 3 75 Um J^- — -- 

(300ns) 35-8/195 

|3S5ns| 35- B'1.95 

IB 4096x1 (250ns) MK4096 . 4.95 

22 4096x1 (2OOns)2107 3 95 

IE 8192x 1 (200ns| . . .59 

IE 262.144x1 1595 r-44^ 

■ 16 131.072x1 (250ns) 2495 

STATIC RAMS 

22 25Gx4 (450ns) 8101 1.95 

16 1024x1 (350ns) flq 

16 1024x1 " 



IB 1024) " 
22 2048x1 



2112 
2114N 
, ' 
2114N 2 

2147HN 

IMS40-15 

5101 

HM0I16P-2 

KM6I 1GP-3 

1 M61 16P-4 

HMG1 16LP-4 

HM6264P12 

HM6264LP-12 

HM6264P-15 

HMG264LP-15 

27LS0O 

7489 

74C921 

74C930 

74S189 

74S289 

82S10 



16 25Gx1 
IB 1024x4 



10 1024x4 



(70ns) . 
18 102-1x4 (450ns) 
20 1024x4 
22 256x1 
IB 1()!I6 



1 65 - 8/12.95 
1 39 - 8/1095 
1 69 - 8/13 49 



3 95 



1.95 



(450ns)CMOS 
... (450ri5l4044 n yb 

24 2048x8 (i2lns)CMOS 7.95 

24 2048x8 (120ns) LI* CMOS . . 895 

24 2048x8 (150ns) CMOS 395-ioa- 

24 2048x8 (150ns) LP CMOS . 4.95 -&44J 

24 2048x8 |200ns)CMOS 375 -+o 

24 2048x8 (20Ons) L P CMOS. . . 4 75 ■=*« 

28 8192x8 (120ns)CMOS I9.95»?*a 

28 8192x8 (120nsl LP CMOS 21.95 *3-9» 

28 8192x8 (150ns)CMOS 16.955*55 

" (150ns} LP CMOS 17.95 3?r95 
180ns) LP . . 395 

(50ns) 3101. 2.25 

18 256x4 1250ns) CMOS 5 95 

18 1074x1 (250ns) CMOS 165 18) . 595 
<35nsl 93405. 295 

(35ns) 3101 295 

|50ns»OC (93415) . .3 95 
(50ns)OC (74S289) . 225 



256x1 



16 16x4 
16 1024x1 
IB 16x4 



1/ri:,\ 

2708 

■.'.: :■■ 

IMS2532 

TMS25C4 

IMS2710 

2710 

27CI!i 

2716-1 

J716Q '■ 

m? 

■■- 

J :■:.■■;. ■■■ 
:----.-.:'A ■:'■ 
?/a? 

27C32A-30 

//i,i:'u 
;i.:. '1 
,'/i;.i..: ! -, 

?7C04 

(.'. >.:< - : 

,Tr 
74SI- ■ 

74S387 

74S288 
74S387 

/■:s;n 
■■■-:; 
/■iS-i'.i 

74S4 7G 
74SJ76 

7.:s =,;-..' 

, ->ir, 

ii/HI.'., 

B2S129 

UST.ll' 
. M . 

b;'S1!h 

I '.' - ' IN 
DM67SIHJN 
IV-7M. \' 
DM87S19IN 



3 95 



24 1024x8 (450ns) 

24 2048x8 (450nsl2716 4 95 

24 4096x8 (450ns) NMC2532 .... 5.49 

28 8192x8 (450ns) t0.95 

24 2048x8 (450ns) 3 wHuje , , 7.55 

24 ?048x8 (450ns| . . . 395 

24 2048x8 CMOS 12.95 1*95- 

24 2018x8 (350ns) .549 

24 2018x8 (550ns) .375 

4 95 
11.49 

24 409B*8 1250ns) 21V. 7 19 

24 4096x8 |450ns) 21V 4 95-6-49- 

24 4096x8 CMOS 14.95 JJM&. 

24 4096x8 1300ns) 21V ICMDS) . 2295 

28 8192x8 (200ns) 21V 9.95 4495 

28 8192x8 (250ns| 21V . ..7.19 

2B 8192x8 (450ns|5'1V 649 

28 8192x8 CMOS 21V 14.95 -3M& 

24 8192x8 t450nsi2!V l4.95-3i5§- 

28 16.384x8 (250nsl 128K 2 IV 12 95 -r<-95 

26 32768x8 l250ns) 256K(14vi 4995-9^95- 

16 32x8 PRQMOC (6330- 1) 175 

16 256x4 PROMTS 1630111 179 

16 32xB PROMTS 16331-11 179 

16 256*4 PROM OC (6300-11 195 

20 256x8 PROMTS ,• ■ :, 1 :•=: 

20 512x8 PROM TS (6349-1) 4.95 

20 512x8 PflOM O.C. (6348) 4 95 

24 512x8 PflOM TS IOM87S296N) 495 

24 512x8 PflOM C (6340) 4 95 






PROMOC IG305) 295 

IE 512x4 PROM TS 16306) . 295 

IB 1024x4 PROMOC (G352) 495 

10 1024x4 PROM TS I82S137) .495 

16 32x8 PROM D C (27S18) 2 95 

24 512x8 PROM f.S I27S15) .... 9.95 

16 32x8 I'i'.av . 2.95 

10 250x4 I'iiUM . . . 2.95 

16 256x4 PflOM TS (27S21) . 2.95 
16 ).... 3.95 

18 2048x4 PROMTS. ITBP24S8II .9.95 

Z4 2048x8 iSlris) .14 95 

24 1024x8 PROM IS (82S181) 995 

18 2048x4 PRDMOC (82S181) . . 995 

IB 2048x4 PflOM TS (82SI85I ..955 

PflOM TS (82S191) 14 95 



DC10 

AUC0801 

ADC0803 

A0CO804 

ADCD808 

ADCO809 

AOC0816 

ADC0317 



OAC0831 
OAC10OO 
0AC1008 
DAC1020 
OAC1022 
DAC1222 
0AC1230 
DAC1231 
JT51013A 



- DATA ACQUISITION- 



M'j ,t.:il ir.'DC Converter *5V lo -9V 2.95 
20 8-Bit A/0 Converter (I/4LSBI . .14.95 

20 8 BilA/D Converter ( ■ 1/2LS8) 4.95 

20 8-BilA/D Converter (1LSH) 349 

2 8 8-B tl A/D Conv w/8 -Channel Analog 9.95 



INK) Analog 



•: - ,■'. 



16 8-BrrO/A Converter [MC14 

20 B Bit Up DA Conv ( 05 I in I 5 95 

20 8-0it Up O/A Coirv (10'iiLin) ... 449 

24 1(1 Bil D/A Conv Micio Cornp 10.05't) 795 

20 10 Bit D/A Craiv Micro Cnmp. 1020%) 6.95 

16 10-Bil D/A Conv (0 05'-, I in) . .7.95 

16 10 Bil D/A Conv |O20: ulm.) . 595 

IB IMIil0,'AConv(U20 ;i .lin| 6.95 

20 12-liil Up D'A Conv (D'v . 1 111 ) . . 143 5 

20 1?-Hii Up DVA Conv 1 10-„Lni) . 13 5 

40 30XBiintmiiT(T8l1JO2) 395 



IIJS1771-1 

F01791 

FD1793 

F01795 

F01797 

WD2791 

W02793 

WD2797 



40 SinoteOenslly 

40 ShgbM Deisty (frw) 2495 

40 S -;:s ■DouWe Density (Truel 25 95 

40 Dua!DensryS:eSe'e:t( ; n.'i 2695 

40 Dual Density/Side Seiect(True). 29 95 

40 Siifilt'OouB;e Density flnv) 

40 Smgie/Ooubie Oen ity (True) 

40 Dual OcnsltV/SideSeiect (True) 



Digitalker™ 



Wire Wrap ^^t 
Sockets ~' 
(Gold) Level H2 

ParlHo, 1-9 1099 I00i 



8p,n\1AV .55 49 

lOprnVTW .69 G5 

14pmW\V .75 69 

16 pin WW 79 72 

1 8 pin WW 95 85 

20pm WW 1 19 1 09 

22pinWW1.29 1.19 

24 p ,nWW 1 35 1.19 

28pm WW 1 69 1 55 

36#)n WW 1 89 1 79 

40pmWW229 1.95 



4 w j M Br 

Heador Plugs (Gold) 

Plrl Kc. 19 Itt 99 100-up 



14 mr 


IIP 


65 


: - 


55 


16pi 


HP 


69 


65 


59 


24p, 


HP 


1 15 


99 


.89 



S10 Minimum Order - US. Funds Only CA Residents: Add 6 V>% Sales Tax Spec Sheets - 30c each 

Shipping: Add 5% plus SI. SO Insurance SendSI Postage far FREE 1985 Jameoo Catalog Prices Subject to Change 

Send stamped, sell addrcxed envelope to receive a Monthly Sales Flyer- FREE! 




V/SA* 



DT I UOU ~* Ap^iutions: Tiithirtj nm. ippHirtai. cljcki. wtsmotiirt ti ... 
(inguigg Inniliticm. He The OT1050 is a standard DIGIT ALKER kil encoded wilfi 137 secaiat; 
and usetulwords. 2 tones, and 5 different silence durations. Thewirdsand tones have been 
assigned discrete addresses, making ,1 possible to output single AWds or words concatenated 
into phrases or even sentences. T)ie "voice" cutout ot the 0T1050 is a highly mtelligiole male 
vo ce The DT1DS0 consists ol 1 Spaeth Procassor Chip. MM54104I |40-pin| and hw (2J SPiecft BOMi 
MM52164SSRI end MMS2)64SS82|24.pin| Hong witti 1 Master VArrJ llsland a recommenrJeif sctiennlic 
rJiagnmon the application sheet 

DT1 050 Digitalker™ $34.95 ea. 

MM54104 Processor Chip $14.95 ea. 



DT1057-I 

Part No. DT1057. $24.95 ea. 



-tipanii the 01)050 wcibularj Irom 137 lo over 260 wrrJs Incl. 2 SDMs and specs 



■IIMMIH 



Part No 



7045IPI 28 CMDS Precision Timer 

7045EV/Ki1 26 Stopwalch C hip. XTL (Eval ation 

71D6CPI. 40 3'? Digit A/D1LCD Drivel 

FE0202D 40 4 Digit LCD Oisplaytor 7211IPI fc 7211MIR. 

FEO203D 40 3'? Digit LCD Display lot 7106*7116 

7106EV/Kj! 40 1C. Greuil Board. Display (Evaluation Kit) 

7107CPL 40 3«: Digit A/O 1LED Dnvel 

7107EV/KH 40 IC. Circuit Board. Display (Evaluation Kit). 

7116CPI. 40 3'?DiQitA/DLCDDis HLD 

7201IUS Li!wBat!eiyVoll Indicator 

7205IPG 24 CMDSLEO Stopuvalch/Timer 

7205EV/Kit 24 Slopwiilch Chip. XTL (Evaluation Kd) 

72i6CJPE 16 Tone Generator 

720GCEV/KH 16 "lone Geneiatw Cl»p. XTL (Evaluahon Kil) 

7207AIPO 14 Oscillator Conlrollcr 

7207AEV/K,! 14 Fred Counter Chrp. XTL (Evaluation Kil). 

721 IIP!. 40 4 Oigil LCO Display Decoder/Driver (TTL coimia 

721 IMIPt. 40 4 Digit LCODiSplay Oecoder/Dnver IMicroproc 

7215IPG 24 4 Func CMOS Stopwalch CKI 

7215EV/K,! 24 4 Fun, St pw II h Chip, XTL (Evaluation Kil) . 

72tGAI.il 28 8 0ii)i1 Umv Counler CA 

72IGDIPI 28 8 Drfjil Fred Counter CC 

721 7UI 28 4 Droit LEO Upr-Dawn Counter CA. 

7217AU1 28 4 Oigil LED Up/Oown C unlet CC 

7224IPI. 40 LCD 4'j Oitlit Up C unler 0RI . 

7226AEVMI 40 5 Funclmn Counter Chip. XTL (Evatuaiion Kill 



. 14 95 
. 1995 
10-19 
14 95 
1495 
4695 
1095 
4695 
. 10.95 



1G95 
. 1949 
3149 



1 30009 1983 INTERSIL Data Book (i356P ., . . . . S9.95 I 



74HC High Speed CMOS 



1355 SHOREWAY ROAD, BELMONT, CA 94002 
4/85 PHONE ORDERS WELCOME- (415) 592-8097 - Telex: 176043 



74HC0O 


14 


.59 


74I1C139 


16 


1.05 


74HC245 


70 


2 59 




14 


.59 


74MCI47 


1h 


1.29 


74HC251 


lb 


.99 


74HC03 


14 


.89 


74HCI51 


16 


99 


74HC253 


16 


109 


74HC04 


14 


59 


74HC153 


16 


109 


74HC257 


16 


99 


74HCU04 


14 


69 


74MC154 


74 


265 


74HC259 


lb 


169 


74HC08 


14 


59 


74HC157 


16 


99 


74HC266 


14 


ey 


74HC10 


14 


59 


74HC1S8 


16 


99 


74KC273 


20 


^79 


74HC11 


14 


69 


74HC160 


16 


139 


74HC280 


14 


459 




14 


89 


74HC161 


16 


1.39 


74HC299 


70 


559 


74HC20 




59 


74HC162 


16 


1.39 


74HC366 


16 


2 59 


74HC27 




59 


74I1C163 


lb 


139 


74HC3G7 


lb 


2 59 


74HC30 


14 


.69 


74MC164 


14 


1.35 


74HC373 


7n 


2 by 




14 


79 


74HC165 


16 


2 15 


74HC374 


?t) 


?S9 




ID 


1.09 


74HC1D6 


16 


249 


74HC390 


16 




74HC51 


14 


89 


74HC173 


II. 


1.29 


74HC393 


14 


154 


74HC58 


14 


89 


74HC174 


16 


-1.09 


7411C533 


20 


2.69 


74HC73 


14 


79 


74KC175 


16 


1.09 


74HC534 


20 


269 


74HC74 


14 


79 


74HC190 


16 


1.59 


74HC595 


16 


319 


7-UIC75 


16 


99 


74MC191 


16 


159 


74HC688 


21) 


359 


74HC76 


IS 


.79 


711 IC 192 


16 


1.49 


741IC4024 


14 


1.75 


74HC85 


16 


169 


74HC193 


16 


1.49 


74HC4040 


lb 


149 


74HC86 


14 


75 


74HC194 


Ifi 


1.19 


74HC4060 


16 


149 


74HC107 


14 


.79 


74MCI95 


16 


1.19 


74HC4075 


14 


59 


74HC109 


16 


79 


74IIC221 


16 


2.95 


74HC4078 


14 


59 




16 


79 


74HC237 


16 


1.49 


74IIC45II 


lb 


1.95 


. 


16 


2.29 


74I1C240 


70 


229 


74HC4514 


24 


4 19 


74HCI25 


14 


1.75 


74HC241 


7(1 


2.29 


74IIC4538 


16 


2.59 


74NC132 


14 


129 


74HC242 




215 


74HC4S43 


lb 


3/5 


74HC137 


16 


159 


74HC243 




215 


74HCU04 is unbuffered. 
AH others are Dultereo 


74HC138 


lb 


1 19 


74HC244 


20 


229 



74C0O 

/.sco, 1 
74C04 
74C08 
74C10 
74CL1 
74C20 
74C30 
7-1C32 

74C48 
74C73 
74C7I 
74CH5 
74C8G 
74C89 
74C90 

74C95 



HW 



74C107 
74C15I 
74C154 
74C157 
74C160 
74C16I 
74C162 
74C163 
74C1G4 
74C165 
74C173 

74CI/5 
74C192 

74CI95 
74C221 



EEESff 



74C240 
?4C244 

;-;;:.v.s 
74C374 
74C901 
7-1C902 
74C903 
74C906 
74C907 
74C91 I 
74C912 
74C915 
74C917 
74C922 
74C923 
74C925 
74C926 
BOC95 
8X97 



TL07ICP 6 
TL072CP B 
TL074CN 14 
7L08ICP 8 
1L082CP 8 
TL084CN 14 
LM109K 
LM301CN B 
LM302H 
IM30JH 
LM305*I 
LfJt307aj 8 
LM308aj B 
LM309K 
LM310CN 8 
LM311CN 8 
LM312I1 
LM317T 
LM317K 
LU318CN 8 
LM319N 14 
LM32QK/5 
LM320K-12 

LM320K2.1 

LM3201-5 

LM320M2 

LM320T-15 

LM320T-24 

LM322fJ 14 

LM323K 

LM324H 14 

LM329DZ 

LM331N 8 

LM334Z 

LM335Z 

LM336Z 

LM337MP 

LM337T 

LM338K 

LM339N 14 

LM34DK-5 

LM340K-12 

LM340K-15 

LM340K-24 

LM340T-S 

LM340T-12 

LM310T-24 

LF347N 14 

LM34RN 1( 
LM350K 

LF351N 8 

LF353N B 



LF355N 8 

LF356N 8 

LM358N 6 

LM359N 14 

LM37DN 14 

LM373N 14 

LW377H 14 

LM380CN 8 

LM380N 14 

IU381N 14 

LU382N 14 

LM384N 14 

LM386N-3 8 

LM38/N B 

LM389N 18 
LM391N-80 16 

LM392N 8 

LM393N 8 

LF398fJ 8 
LM399K 

LF412CN B 

1L494CN 16 

TL49GCP B 

NE53IV S 

NEM4M 14 

NE550A 14 

NE555V S 

XR-L555 I 

LM556N 14 

ME558N 16 

NE564N 16 

LM565N 14 

LU56CCN B 

LM567V 8 

NE57DN IB 

NE571N 16 

ME592N 14 

LM703Crj B 

LM710N 14 

LM711N 14 

LM723N 14 

LM733N 14 

LM739N 14 

LM74ICN 8 



IM747M 14 

LM748^ S 

IW7G0HC 9. 

LMI45GV 8 V 

LMI458CN 8 

LM1488N 14 

LMI48&N 14 J 

LM1 49614 14 

LM1605CK 9 

LMieom IB 2 

LM1871N IB 2.i 

LM1872N IB 3; 

LM1877N-9U 2. 

IM1889N 16 I 

LM1896N 14 1 

LM2002T 1. 

ULN2003A 16 1. 

X02206 16 3 

XR2207 14 2 

XR2208 16 1 

X022I1 14 2 

LM2877P I J 

LM2878P 2 

LM290IN 14 

LM2902N 14 

LM2907N 14 2 

LM2917N B 1. 

LM390QN 14 

LM3905CN B 1 

LM3909N B I 

LM3914N IB 2.: 

LM3915N IB 2; 

IM3916N IB 2: 

RC4136N 14 I,! 

RC4151NB B l.J 

RC4195TK 5< 

LM425KN 8 V 

UA45O0A 16 2< 

IJE5532 8 VI 

NE5534 8 1. 

79M05AH I.; 

ICL8038 14 3 

LM13O80N 8 1. 

LMI3800N 16 1. 

• 76477 28 3 

MORE HV4IIABLE 



30003 1982 Nat. LinearData Book (i952pgs) .$11.95 



76 BYTE • APRIL I985 



Commodore® Accessories ProModem 1200 and Options Apple® Accessories 



RS232 ADAPTER FOR 
VIC-20 AND COMMODORE 64 




e ^» 



c e 



The JE232CM allows connection of standard serial RS232 
printers, modems, etc. to your VIC-20 and C-64. A 4-pole 
switch allows the inversion of the 4 control lines. Com- 
plete installation and operation instructions included. 

• Plugs into User Port • Provides Standard RS232 signal 
levels • Uses 6 signals (Transmit, Receive, Clear to Send, 
Request to Send, Data Terminal Ready, Data Set Ready). 

JE232CM $39.95 



VOICE SYNTHESIZER 
FOR APPLE AND COMMODORE 

plug- 1 " 



JE520AP 





JE520CM 



• Over 250 word vocabulary-affixes allow the formation of more 
than 500 words • Built-in amplifier, speaker, volume control, and 
audio jack • Recreates a clear, natural male voice • Plug-in user 
ready with documentation and sample software • Case size: 
7'A"L x 3 WW x 1-3/8"H 



APPLICATIONS: 



• Security Warning 
' Teaching 

• Instrumentation 



Descriptio 



• Telecommunication 

• Handicap Aid 

• Games 
Price 



Part No. 

JE520CM For Commodore 64 & VIC-20 S114.95 

JE520AP For Apple II, ll+, and lie S149.95 



AH f ?ctu°r r ers- Computer Memory 
a Not Micron Expansion Kits 



IBM PC, PC XT and Compatibles 

Mosl of the popular Memory Boards (e.g. Quadram" Expansion Boards) 
allow you to add an additional 64K. 128K, 192K or 256K The IBM64K Kit will 
populate these boards in 64K byle increments The Kit is simple to install- 
just insert the9 -6dK RAM chips in the provided sockets and set the 2groups 
ol switches. Complete conversion documentation included 

IBM64K (Nine 200ns 64K RAMs) $33.49 

IBM PC AT ~~ 



IBM128K (Nine 250ns 128K RAMs) $199.95 

APPLE lie 



JE864 $99.95 

TRS-80 MODEL I, III ~ 

Each Kit comes complete with eight MM5290 (UPD416/41 16) 16K Dynamic 
RAMs and documentatron for conversion Model 1 : 1 6 K equipped with Ex- 
pansion Interlace can be expanded to 48K with 2 Kits. Model III Can be 
expanded Irom 16K to 48K using 2 Kits Each Kit will expand computer by 
16K increments. 

TRS-16K3 200ns (Model 111) $6.29 

TRS-16K4 250ns (Model 1) $5.49 

TRS-80 MODEL IV & 4P ~ 

Easy to install Kit comes complete with8 ea. 4 1 64N-20 (200ns) 64K Dynamic 
RAMsand conversion documentalion. Converts TRS-80 Model IV computers 
from 16K to 64K. Also expands Model 4P from 64K lo 128K. 

TRS-64K-2 $29.95 

(Converts the Model IV from 16K to 64K or will expand the Model 4P from 
64Kto 128K) 

TRS-64K2PAL (Model IV only) $49.95 

(8- 4164's with PAL Chipto expand from 64K to 128K) 



TRS-80 COLOR AND COLOR II 

Easy to install Kit comes complete with 8 each 4164N-20 (200ns) 64K 
Dynamic RAMs and documentation for conversion Converts TRS-80 Color 
Computers with D. E. EY. F and NC circuit boards lo 32K. Also converts 
TRS-80 Color Computer U to 64K Flex DOS or OS-9 required to utilize 
fuli 64K RAM on all computers. 

TRS-64K-2 $29.95 




E9i 



PROTECT YOURSELF... 

DATASHIELD 
Surge Protector 

EllminalesvoltagespikesanO EMI-RFt noisebelore it 
candamat]eyourequipmentorcausedalaloss6-mo 
warranty Power dissipation (100 microseconds): 
2.000.000 waits 



PART NO. 


DESCRIPTION 


PRICE 


MODEL 75 


4 Sockets. On/Off Switch 


. S49.95 


MODEL 85 


6 Sock., Super Filters. On/Oil Switch. . 


. S59.95 


MODEL 100 


6 Sock., Super Filters, Low Volt, Alarm. 


. $69.95 


MODEL 110AMS 


6 Sockets. Super Filters. 






Auto. Master Switch 


. S99.95 




DATASHIELD 
Back-Up Power Source 

Proteclyour computer Irom black-ouls. brown-outs, power 
surges and line noise PTI's PC200 is designed lor PCs 
with Soppy disk memory. the XT300 lor hard disk memoiy 
and Ihe AT800 lor multi-user systems A typical compalible 
PCIoreachol these standbys will be supported for 1 5 lo 
25 minutes after power is lost. Weight (PC200: 24 lbs.) - 
(XnOO 37 5 lbs) - (AT500 83lb&) - (AT*QQ. 83 lbs) 

PC200 (200 Watt Rating) S299.95 

XT300 (300 Watt Rating) S399.95 

AT50O (500 Watt Rating) S699.95 

AT800 (800 Watt Rating) S799.95 



f% Intelligent 300/1 200 Baud 
PROMETHEUS Telephone Modem with 

Real Time Clock/Calendar 

i 

' The ProModem™ Is a Bell 2 1 2A (300/1200 baud) intelli- 
gent stand-alone modem • Full featured expandable 
modem ■ Standard features include Auto Answer and 
Auto Dial, Help Commands, Programmable Intelligent 
Dialing, Touch Tone™ and Pulse Dialing & More • Hayes 
command set compatible plus an additional extended 
command set- Shown w/ 'alphanumeric display option. 

Part No. Description p r j ce 

PM1200 RS-232 Stand Alone Unit $349.95 

PM1200A Apple II, ll+ and lie Internal Unit $369.95 

PM1200B IBM PC and Compatible Internal Unit $269.95 

PM1200BS IBM PC & Comp. Int. Unit w/ProCom Software $319.95 

MAC PAC Macintosh Package $399.95 

(Includes PM1200, Cable, & ProCom Software) 

OPTIONS FOR ProModem 1200 

PM-COM (ProCom Communication Software) $79.95 

Please specify Operating System. 

PM-OP (Options Processor) $79.95 

PMO-16K (Options Processor Memory - 16K) $10.95 

PMO-32K (Options Processor Memory - 32K) $20.95 

PMO-64K (Options Processor Memory - 64K) $39.95 

PM-ALP (Alphanumeric Display). $79.95 

PM-Special (Includes Options Processor, 64K Memory 

and Alphanumeric Display) . SI 89.95 



KEYBOARDS 



; P1 ; 

13 l B"Lx4!i"WxVH 



New* 




**etsf 




SPECIAL 
FUNCTIONS! 

Description 



Mitsumi 54-Key Unencoded 
Ail-Purpose Keyboard 

■ SPST keyswitches • 20 pin ribbon cable connec- 
tion ■ Low prolile keys ■ Features: cursor controls, 
control, caps (lock), (unction, enter and shift keys 
•Color (keycaps): grey ■ Wt.: 1 lb. ■ Pinout included 

KB54 $14.95 



82-Key ASCII Cherry Keyboard 

- 7-bit parallel ASCII • 1 1-key numeric keypad 
•Cursor keypad -SPST mechanical keyswitches 
• 4 illuminated keys • 26-pin header connector 
Color: white -Size: 18"L x 6VW x 1VH -Spec 
included 

KB8201 .... (17 00 avail). . . . $29.95 



Apple Keyboard and Case 
for Apple II and II+ 

Keyboard: • 68 keys ■ 15-key keypad • Direct con- 
nection with 16-pin ribbon connector • 26 special 
functions ■ Size: 14'2"L x 5VW x TVH 
Case: Accommodates KB-A68 ■ Pop-up lid for easy 
access ■ Fits power supply and motherboard loo 
■Size: 15VWx 18 ,- Dx4V'H p r j ce 



dfe 



KB-EA1 Apple Keyboard and Case (pictured above) $134.95 

KB-A68 68-Key Apple Keyboard only $ 79.95 

EAEC-1 Expanded Apple Enclosure Case only $ 59.95 



POWER SUPPLIES 



Power/Mate Corp. REGULATED POWER SUPPLY 

■ Input: 105-1 25/210-250 VAC at 47-63 Hz ■ Line regulation: -0.05% • Three 
mounting surlaces ■ Overvoltage protection • UL recognized • CSA certilied 
Part No. Output Size Weight Price 






EMA5/6B 
EMA5/6C 



5V@3A/6V@2.5A 4?ti"L x 4"W x 2'e"H 
5V@6A/6V@5A 5VL x 4Ts"W x 2's"H 



2 lbs. 
4 lbs. 



$29.95 
$39.95 



KEPCO/TDK 4-OUTPUT SWITCHING POWER SUPPLY 

• Ideal for disk drive needs of CRT terminals, microcomputers and 
Video games ■ Input: 1 1 5/230VAC 50/60Hz ■ Output: +5V@ 5 Amp. +12 V@ 
1.8 Amp, +12V @ 2 Amp, -12V @ 0.5 Amp ■ UL recognized • CSA certilied 

• Size: 7VLx6-3/16'Wx JVH- Weight: 2 lbs. $59.95 each Qf 

MRM 174KF 2 for $99.95 



Switching Power Supply for APPLE II, II+ & lie™ 

• Can drive four floppy disk drives and up to eight expansion cards 

• Shortcircuitand overload protection • Fits inside Applecomputer 

• Fully regulated +5V @ 5A, +12 V @ 1 .5A, -5V @ ,5A. - 1 2V @ ,5A 

• Direct plug-in power cord included • Size: 9 7 /a"L x 3'£"W x 2'V'H 

• Weight: 2 lbs. 

KHP4007 (SPS-109) S59.95 



4-CHANNEL SWITCHING POWER SUPPLY 

■ Microprocessor mini-computer, terminal, medical equipment and process 
control applications • Input: 90-130VAC, 47-440HZ • Output: +5VDC @ 5A, 
-5VDC @ 1 A; +1 2VDC <<? 1 A, - 1 2VDC @ 1A • Line regulations: ^0.2% • Ripple: 
30mV p-p ■ Load regulation: ±1% ■ Overcurrent protection ■ Adj: 5V main 
output ±10% ■ Size: 6%"L x 1%"W x 4-15/16"H ■ Weight: Vh lbs. 

FCS-604A $69.95 



IBM PCXT EQUIVALENT 130 WATT POWER SUPPLY 

UPGRADE YOUR PC! 

• Input: 1 00V-1 30V/200V-260V selectable @ 47 to 63Hz • Output: 
+5VDC @ 15A, -5VDC @ 0.5A, +12VDC @ 4.2A, -12VDC @ 0.5A 

• Plug compatible connectors * Fits into IBM PC • Weight: 6 lbs. 

IBM-PS $1 69.95 



$10.00 Minimum Order — U.S. Funds Only 
California Residents Add 6 1 /2% Sales Tax 
Shipping — Add 5% plus $1.50 Insurance 
Send S.A.S.E. for Monthly Sales Flyer! 




Spec Sheets — 30c each 
Send $1.00 Postage for your 
FREE 1985 JAMECO CATALOG 
Prices Subject to Change 



VISA 9 



1355 SHOREWAY ROAD, BELMONT, CA 94002 
4/85 PHONE ORDERS WELCOME — (415) 592-8097 Telex: 176043 



5V4" APPLE™ 

Direct Plug-In 

Compatible Disk Drive 

and Controller Card 

The ADD-514 Disk Drive uses 
Shugart SA390 mechanics-143K 
formatted storage • 35 tracks 
• Compatible with Apple Control- 
ler & ACC-1 Controller • The drive 
comes complete with connector and cable - just plug 
into your disk controller card • Size: 6"L x 3 1 /2"W x 
8-9/16 r, D • Weight: 4Vz lbs. 

ADD-514 (Disk Drive) $169.95 

ACC-1 (Controller Card) $ 49.95 

More Apple Compatible Add-Ons... 

APF-1 (Cooling Fan with surge protection). . . . $39.95 

KHP4007 (Switching Power Supply) $59.95 

JE61 4 (Numeric/Aux. Keypad lor He) $59.95 

KB-A68 (Keyboard w/Keypad for II & III-) $79.95 

MON-12G (12" Green Monitor w/swivel stand). . . . $99.95 

JE864 (80 Col. +64K RAM lor lie) $99.95 

ADD-12 (5*" Half-Height Disk Drive) $179.95 



ADDITIONAL APPLE™ 
ADD-ONS AVAILABLE 




.$39.95 
.$69.95 



ARC-1 6K(16K RAM Cardfor Apple II & II+) . . . 
AEB-2 (EPROM Burner for Apple II, lit- & He) 

Allows copy o( standard EPROMS 

2708.2716.2732.2764 
ASSC-P (Super Serial Card lor Apple II. Il+ & lie) . .$99.95 
ADD-IIC (5*" Hall-Ht. Disk Drive lor Apple lie) $189.95 



DISK DRIVES 




Documentation N l I WP l &ui, , 

Included - P^^ **' 

MPI51 S (MPI 5 V SS full-ht.) S 89.95 

RFD480 (Remex 5V DS full-ht.) $109.95 

TM100-2 (Tandon 5Va " DS full-ht.) $159.95 

FD55B (Teac 5VV DS half-ht.) $149.95 

SA455 (Shugart 5V DS half-ht.). . . . $159.95 

FDD100-8 (Siemens 8" SS full-ht.) $119.95 

PCK-5 (5Va " Power Cable Kit) $2.95 

PCK-8 (8" Power Cable Kit) $3.95 



UV-EPROM Eraser 



8 Chips - 21 Minutes 




1 Chip -15 Minutes 



Erases all EPROMs. Erases up to 8 chips within 21 minutes (1 chip 
in 1 5 minutes). Maintains constant exposure distance of one inch. 
Special conductive loam liner eliminates static build-up. Built-in 
salety lock to prevent UV exposure. Compact - only 9.00"L x 
3.70"W x 2.60"H. Complete with holding tray (or 8 chips. 

DE-4 UV-EPROM Eraser $74.95 

UVS-11EL Replacement Bulb $16.95 



JE664 EPROM PROGRAMMER 




See Our New IBM 

Communications 

Program! 



REQUIRES NO ADDITIONAL SYSTEMS FOR OPERATION 

Programs and validates EPROMs -Checks tor properly erased EPROMs 
■ Emulates PROMs or EPROMs ■ U id rj ' .iF-; 1 ' . ► 
data in RAM by keyboard ■ Loads RAM Irom an EPROM • 664 RAMs can be 
used (or external microprocessor development -Compares EPROMs for 
content differences • Copies EPROMs • Input: 1 1 5VAC<?' 60Hz • Assembled 
and tested • Size: I 5 VL x 8 3 »"D x 3VH • Wl: 5% lbs ■ 2716 Module included 

JE664-A EPROM Programmer $995.00 



JE665-RS232C INTERFACE OPTION - This option implements computer 
accesstolheJE66'VsRAM.allowingcomputertomanipulate,store,andlrans- 
ter EPROM data to and from the JE664. Sample program listing is supplied in 
MB ASIC forCP/M computers -Don ipl Itnj software 

to other computers with an RS232 port - Specs: 9600 Baud. 8-bil word, odd 
paritywilh 2 slop bits - Assembled and tested ■ 2716 Module included 

EPROM Programmer 
JE664-ARS w/JE665 Option $11 95.00 



JE664-ARS COMMUNICATION PROGRAM 
For IBM-PC or XT and Compatibles 



■ Fast compiled BASIC program • Easy to use, menu-driven • Print hard- 
copies ot EPROM data • View data in HEX and ASCII NEW! 
The JE664-ARS Communication Program was written for quick interlacing 
between the JE664-ARS EPROM Programmer and Ihe IBM-PC computer and 
compatibles. Menu-driven program allows user to Load and Save EPROM 
data to and Irom Ihe computer or floppy disk. Data entered by the computer 
can be viewed in Hex I ASCII formats Printed hard -copies are also displayed 
in both formats Program is ideal lor keeping archives ol master EPROMs on 
disk. The program is compatible for all EPROMs listed with the JE664. 
Computer requirements IBM-PC. XT (or eq.) with at least 128K RAM and one 
serial poll. Oplional One parallel port for printer 

JE664-ARS-CP $49.95 

JE664-ARS Communications Program <5Vi" Disk and User's Instructions) 

JE664-CP CABLE $29.95 

Cable forlBM-PC to JE664-ARS Program (S' Shielded Cable & Connectors) 



JUMPER (Personality) MODULES - Jumper (Personality) Modules lor 8K. 
16K. 32K, and 64K EPROMs. 'Please specify EPROM and manufacturer 
JUMPER (Personality) MODULE •_ . Sl4.95each J 



Inquiry 212 



APRIL 1955 



Inquiry 158 



Inaaytiesiiti 
, plumed in Ong' 
CONOITlON wiir 



FRIENDLY SERVICE ATA FRIENDLY PRICE 

Friendly Computer Center, Inc. 

1381 Coney Island Avenue, Brooklyn, New York 11230 



C.ITOH PROWRITER 

ALL AVAILABLE w/I.B.M. ROM 

7500 105 C.P.S 219.00 

8510 120 C.P.S ,...289.00 

1550 120 C.P.S - 15" 449.00 

8600 180 C.P.S 569.00 

STARWRITER 

F-10-4GP 849.00 

A-10-20 479.00 




IBM 



IBM* HARD DISK SYSTEM 
IBM* PC 256K 
10 MEG W/1 DS FLOPPY 
IBM MONO CARD & MONITOR 

$3249 complete 




DISK DRIVES-FOR IBM 

Teac'/jht. 0S/0D 149 

Rana2000IBM 149 



ADD ON BOARDS 

FOR IBM 

AST Six Pack Plus 64K... 249.00 

Ouadram Expanded Ouadboard 

w/64K 259.00 

Hercules Graphics Board . 319.00 
Hercules Color Card w/Parallel 

Port 179.00 

Koala Speed Key System . 149.00 
Mouse Systems Mouse w/Mouse 
w/P.C. Paint and Menue . 159.00 
Hayden Saragon III Chess. 34.90 
Microsoft Flight Simulator 1137.90 
Hayden Saragon III for Mac 39.90 

De Base III 349.00 

Framework 379.00 

SYMPHONY CALL 

Star Acounting Partner 2 . 749U0 
Wordstar 2000 249D0 



PRINTERS SPECIAL! 
OKIOATA 

Microline 84-200 C.P.S 609.00 

Microline 82-120 C.P.S. ... 225.00 

Microline 92. 359.00 

Microline 92 w/Mac 

Compatible 459.00 

Microline 93 589.00 

— SUPER SPECIALS! — 



TOSHIBA 

New Toshiba- 1340 699.00 

Toshiba-1351 1249.00 

Juki 

Juki-6100 379.00 

Juki-6300 call 

Juki Tractor 6100 109.00 

New Gemin SG Series Call 



MODEMS 



Hayes 1200B IBM 

Hayes 1200 RS232 

Hayes 300 RS232 


. 379.00 
. 459.00 
. 195.00 
. 235.00 


HAYES 300 - for lie 

New Hayes 2400 

PRENTICE POPCOM 

1200 External 

120 Internal 


239.00 
. . CAN 

349D0 
329.00 


CompuServe Starter Kit . 
The Source Starter Kit . , 
Grappler Bufferd Plus 16K 
w/cable 


. 28.95 

. CALL 

149.00 


LETTER QUALITY PRINTERS 

ONE TIME SPECIALl limited ouantity 
C.ITOH— Leading Edge25cps 
15" Daisy Wheel $44g yjgg., 

C. ITOH Tractor 129D0 




Peripherals by Apple 

Apple Drive lie . ..$21 
Apple lie Mouse with 

paint $89 

Apple He Mouse with 

paint $139 

Apple 1200/300 Baud , 

Modem $389 

APPLEWORKS for He or 

He $219 

Apple He Professional System 

• Apple He 128K Computer. 

• Apple Dual Disk Drive 
w/controller|card. 

• Apple Extended 80 column 

Display Card. 

• Apple Monitor II ■ 12" filt'green 

• Pro-Dos Operating System 

Special $1439 
Apple lie with Monitor and Stand 
Mac -Mania Special $975.00 
Macintosh 512K with Imagewriter 
Special $2649 



MONITORS 

Princeton HX-12 Graphics . 459.00 
New Amdek Color 300 .... 269.00 
Amdek310A 175.00 

TAXAN 

T115 12" Green 11900 

T116 12" Amber 12900 

T127 12" Green I.B.M 14900 

T122 12" Amber I.B.M 15900 

210 R.G.B. Color 25900 



FOR MAfL ORDERS: Send Money Order, Certified Check. Mastercard. VISA gladly accepted. Add estimated price for 

shipping, handling and insurance WE WILL SHIP ORDERS AT THE ADVERTISED PRICES GUARANTEED UNTIL apjul30. as 

AppU is a registered trademark of Apple Computer. Inc. IBM Is a registered trademark of International Business Machines.. 



JBBJHHFP I (718)252-9737 
Friendly Computer Center, Inc. « 

1381 Coney Island Avenue Brooklyn. New York 11230 



COMPARE AND SAVE 



S P 



COMPUTERS INC. 



COMPARE AND SAVE 



WORD PROCESSING 

Word Star 2000 
WordPerfect 4.0 
Volkswriter Deluxe 
PFS: Graph 
PFS: Write 
Easywriter II 

DATA BASE 
MANAGEMENT 

Knowledgeman 

dBase II 

dBase III 

Friday 

Pfs: File report pk 

R:Base4000 

Quikcode 1 1 

Infostar 

SPREADSHEETS 

Framework 
Multiplan 
Supercalc 3 
Visicalc IV 
Thinktank 
Calcstar 
TK Solver 



WE SHIP 
OVERSEAS 

TEL: (415) 340-1006 

851 Burlway Road No. 303 

Burlingame, CA 94010 
U.S.A. Telex: 470477 Mons 

ACCOUNTING 

$264 IUS-GL/AP/AR ea $295 



252 

169 

84 

84 

195 



275 
286 
369 
179 
162 
295 
155 
282 



369 
124 
199 
172 
109 
87 
269 



Peachpak 4 
Open Sys. 
State of Art 
BPI - AR/AP/GL 



249 
ea 399 
ea 399 
ea 395 



Great Plains Software ea 479 
HOME & RECREATION 



The Print Shop 
Bankstreet Writ. 
Dollars & Sense 
Fit Simulator 
Facemaker 
MindProber 
Mastertype 
Zargon II 



34.99 
49.99 
64.99 
35.00 
23.99 
36.99 
29.99 
16.99 



SPECIALS 




Siiiekick (pro) 


37.99 


Sidekick (unpro) 


54.99 


Turbo Pak: 


74.99 


Pascal -Tutor-Tool box 


Taxadvantage 


49.99 


64K/9 chips 


25.99 


Paperback Writer 


29.99 


Executive Writer 


54.99 



Payment: Mastercard, Visa, COD, Money Order or Check. Pur- 
chase Orders welcomed from qualified institutions. Prices subject 
to change. No surcharge for Visa/Mastercard. Shipping UPS sur- 
face per item $4.00 within USA. Calif. Residents add sales tax. 



COMPARE AND SAVE 



BOOK REVIEWS 



tially beneficial application of computers. Schools should 
be paying attention to computers not because they will 
take over our lives or because everyone has to be a pro- 
grammer but because computers are part of the solution 
to education problems. 

The Future 

Computers will be really useful to the average person only 
when they can be used with no training at all. Schank sees 
advisory systems in areas such as finance, medicine, and 
law becoming available within the next few years. Sophis- 
ticated learning systems, with cognitive abilities, will be 
available within a decade, Schank says. And within 50 
years, he predicts, there will be integrated world-knowl- 
edge systems capable of learning about new domains; 
their most effective role will be as librarians and con- 
sultants, figuring out what we need to know about a sub- 
ject and the right way to explain it to us. 

AI may change the way we look at ourselves. One of 
its by-products will be the opportunity for an informed 
public. People lack the information they need because 
they don't want to appear stupid, bother an expert, or pay 
lots of money for advice. In the future, people will be able 
to obtain expert advice of all kinds, easily, quickly and 
inexpensively from computers. Of course, we should 
evaluate computer advice as carefully as we would that 
from any other advisor with a stake in our decision. 

Criticism 

Schank is best, and worst, when hypothesizing. He has 
made a career out of playing mind games, and most of 
those he presents are fascinating. However, he occasion- 
ally slips into an overly optimistic view of computers and 
the future. He says that machines will take over the most 
unpleasant human jobs and will provide people with'the 
information they need to run their daily lives. I think this 
will be more a function of what people seek rather than 
simply what computers can provide. 

Audience 

The Cognitive Computer is not for those people who are in- 
terested in the engineering behind Al programs. Schank 
does not include details on how A I programs go together, 
what languages they are written in, and what kinds of hard- 
ware they run on. His contribution is to put thinking com- 
puters in perspective and show us where we can go with 
them. 

It is a credit to his science of understanding how humans 
understand that Schank writes with such clarity. He dem- 
onstrates a genuine concern for how computers and their 
Al software will affect human lives. Schank has a healthy 
perspective on scientific progress: he doesn't believe that 
every aspect of human thought can or should be modeled 
on computers. ■ 

Darww Kirkpatrick is an applications engineer at Development 
Associates Controls (POB 1 049, Carpinteria, CA 93013). 



78 B YTE • APRIL 1985 



Inquiry 360 



Ifoucanbuya 

less expensive diskette 

and not save a thing. 



One can understand the temptation to buy a less 
expensive diskette. 

Rather than a Dysan® diskette. 

After all, the less expensive diskette is probably 
almost as good. And should you run into a bad one, 
well, it didn't cost that much, anyway. 

Right? Not quite. 

You see, a less expensive diskette is by definition 
less diskette. And the few pennies you save are worth 
a great deal less than what you have to lose. 

Namely, your data. 

That's why it makes more sense to spend a bit more 
for a Dysan diskette. 

Every Dysan diskette you buy will record and 
retain all your data all the time. 

You can be sure of that because every 
Dysan diskette is certified 100 percent 
error free and backed by our lifetime 
warranty* 



So next time you're tempted to buy a less expensive 
diskette, ask yourself this question. 

Can you really afford it? 

For the name of the Dysan dealer nearest you, call 
toll free (800) 551-9000. 

Dysan Corporation, 5201 Patrick Henry Drive, P.O. 
Box 58053, Santa Clara, CA 95050. 



Dysan 



Inquiry 131 



Somebody has to be better 
than everybody else. 



I 



5 - 2 5/A/e 



: *o% f 




t?y 



set** 



■ Warranty details arc inside ever)' Dysan box. 
Dysan is a registered trademark of Dysan Corporation. 
€> 1^85, Dysan Corporation. 



APRIL 1985 -BYTE 79 







Give people the tools they need, 
and there is no limit to what they achieve. 



Announcing the first major 
breakthrough in word processing 
technology since WordStar. 

Now, state-of-the-art 
comes easy. 



Introducing WordStar 2000, a totally new 
word processing program from the makers 
of WordStar. 

WordStar 2000 removes all limits from 
word processing. From what you can create. 
From what you can achieve. 

Because WordStar 2000 lets you do 
everything. 

Easily. 

From windows, to undo, 
to spelling correction, WordStar 2000 
does it all. And more. 

WordStar 2000 gives you the works. 

"Windows" allows you to work on different 
documents— simultaneously. "Undo" lets you 
replace text you mistakenly removed. A built-in 
spelling corrector checks and corrects mis- 
spellings from over 97% of the most commonly 
used words. 

WordStar 2000 also has a "typewriter 
mode" to fill in forms or envelopes easily. Plus 
"format sheets" which give you ready-made 




headings, tabs and margins at the touch of one 
key. It can even create and update footnotes. 

Finally, a truly integrated 
word processing system. 

WordStar 2000 goes well beyond words. 

It comes with a built-in five function math. A 
built-in mail merge enables you to mass produce 
form letters. Get our special Plus package and 
you also get a built-in mail list data base that 
allows you to create, update and sort your own 
mailing lists. Also a built-in indexer. Not to 
mention built-in telecommunications capabilities. 

All integrated together, so you never have 
to leave the program. 

The only word processing program 

that interacts with you on your level, 

whatever your level. 

Before we created WordStar 2000, we studied 
the way people worked, and thought. We also 
drew from our experience with over 1,250,000 
WordStar owners. 



80 BYTE • APRIL 1985 




As a result, the keys you 
press are the keys you'd expect to press ("c" for 
copy, "p" for print, etc.). You may also use your 
computer's function keys. Menus have been 
uniquely designed for easy access to all functions. 
And MicroPro's exclusive "tutor-in-your- 
computer™" makes learning fast and fun. 

WordStar 2000 is the easy word processing 
program you'll never outgrow. Of course, the 
original WordStar and WordStar for PCjr will con- 
tinue to provide substantial and proven word 
processing capability for those with more modest 
budgets. 

See your local MicroPro dealer today or call 
(800) 227-6703 [in CA (800) 632-7979] for the 
dealer nearest you. 

So you can remove all limits from what you 
can achieve. 



WORDSTAR 




Now available for IBM PCVAT/XT* and compatibles with 256K 
RAM. Upgrade from WordStar to WordStar 2000 through your dealer, 
or call MicroPro Customer Update (800) 227-5609, 9am-3pm RS.T. 



Now there are no limits™ MicroPro. 



Inquiry 412 



APRIL 1985 -BYTE 81 



jB& 




A Custom 

System For 

Less Than a 

Clone 

The Silver Fox will run mosr of rhe 
I besr-selling progroms for rhe IDM-PC like 
rhe PF5 series. Wordsror. Mulriplon. dDA5E II. 
I FlighrSimularor. ond Lorus 1.2.3 

Dur rhe bosic Silver Fox gives you more 
hardware rhon orher 8088 sysrems i nd udi ng 
256K of RAM. 4 video ourpurs. o 1 2" high- 
resolurion moniror a full 25x80 disploy. 
and o superior keyboord wirh o big rerurn- 
key 

Also included os srondord equipmenr is 
| rhe besr free sof rwore bundle i n rhe business 
including: 



MS-DOS 2 1 1 


HAGEN-DOS 


Color DASIC 


GW DASIC 


Wordsror 33 


Eosy Wnrer 


Spell 


Moil Trock 


FILEDA5E 


PC File III 


ColcSror 


Gomes. Graphics 


PD Disk 


OSTuror 



Dur rhe big feorure rhe I0M-PC and irs 
[ clones can'r march is rhe Silver Fox 1.6 
megabytes of sroroge Even though rhe 
Silver Fox drives con srore more rhon rwice 
os much informorion, rhey con olso read 
| and write ro srondord 160K, 020K. ond 
360K formers. 

Decouse rhe Silver Fox is barn on a 
rorolly ouromored line in Japan, if is simply 
more reliable rhon PC'srhorore assembled 
by hand. So we bock each Silver Fox wirh o 
limited one year worronty. 

If you didn'r think your 

$1397 

would buyy ou rhis much computer simply 
diol 

1-800-FOfWOX 

ond leave your nome and address or rhe 
beep. We'll rush you our Silver Fox coralog 
rhor will rell you how ir con. 



PRINTERS 





I wenr to look ar rhe MQC- 550 \* hoi I found mode me on owne* f ne 
next doy 1 Dill Sodbnnh Dyie Maga/me 



,-/■ 



I II 



' More Free Software " 



Along wirh oil rhe free greor sofiwore you ger wirh o Sonyo MDC 
550 Scorrsdole Sysrems includes exrro disks wirh (1) OS Tutor- 
Teaches you everything you need ro know obour rhe operating system 
right on your system. (2) 15 gomes for rhe Sonyo 550 -a S29(reroil) 
value. (3) Doremaie - on oppoinrmenr keeper wirh o perpetual 
colendoc (4} 1 .5. Manager • Allows you ro change the structure of 
exisring InfoSfor files. (5) PC File (6) 10 public domom gomes, (7) 
diagnostics ond utilities, ond (8) Sketch - A graphics/drawing program 
wrirren in Sonya Color Graphics DASIC. 



©Sanyo 555-2's 



If you plan to purchase o Sonyo MDC 555-2 ora single drive MQC 550 2 
you ve mode on excellent choice The Sonyo MDC 550 ser-es is rhe 
iowest priced 8088 MS DOS system bar none Pluswith the stnqie drive 
350-2 systems you receive MS DOS 2 1 1 Sonyo Coior Graphics BASIC 
Wordsror ColcSror ond Eosy Writer I 

With rhe 555 2 systems you also receive your choice of DatoStor 
^eporrSrar SpellSior andMoilMerge or Easy Wnrerll Eosy Mailer rosy 
Conner and Eosy Filer 

We hove sold more Sonya microcompurers rhon any other deoier 
n rhe United Stores Our prices hove olso been the> lowest or nmong 
'he lowest m rhe country and are presenrly too low to odverttse 

Out we wouldn t hove become the largest Sonyo deoier m rhe 
ounrry if oil we offered was low prices We include more free software 
than orher dealers we con msroll boards or extra memory for o modest 
horge ond we stock reference manuals for our customers 

Our soles staff knows the Sonya system becouse rhey use Sonyo 
computers themselves and unlike others who sell rhe Sonyo system 
we're on outhonzed Sonyo service cenrer with techs on sroff If you plan 
to buy o Sonyo give us o call we II offer you o gieor pace ond o greor 
deal more 




Columbia's 



If you're looking for moximum compatibility, 
minimum prices, and norionwide service, you 
should consider buying o Columbia from 
Scorrsdole Sysrems. Each system comes with o 
huge software bundle including MS-DOS 2.1. 
Dosico. Perfect Writer Perfecr Cole. Perfect 
Filer Perfecr Speller. Fosr Graphs. Home 
Accounronr Plus. Space Commanders. ATI 
Tutorials, ond T.I.M. IV. We hove rhe lowest 
prices on oil Columbia computers including 
the new 4220 desktop with 256K 2220 
portable with o built-in 9" monitor. Your 



choice: 



$1698 



While they last 

complete systems 

Sanyo 1100's 



Our lowesr price ever on o complete duol 
drive system Each Z80 based Sonyo 1 lOsystem 
includes builr-m 020K (formarred) disk drives o 
cooling fan: a built-in 1 2" 25x80 green phosphor 
moniror; o parallel porr ond a senol parr, ond o 
greor keyboord wirh 1 5 speciol function keys 
(enabled under borhWordSror and DASIC) ond 
o bulir-in palm resr 

Plus each sysrem comes wirh CP/M Sonya 
DASIC. ond o complere MicroPro series of sof iwore 
including Wardsrar 33. MoilMerge. SpellSror. 
DoraSror, ReporrSrar. and ColcSror. We preresr 
each sysrem. and rhey re bocked by over 75 
service cenrers norionwide. 

As someone who wrote us pur it. My local 
deoier says you couldn'r possibly sell rhis whole 
package for 5888 becouse he sells rhe WordSror 
alone for S495 " 

Well rhe local deoier is pomolly correct 
becouse while rhey lost we re selling the whole 
package for: 




Altos Systems , . . big discounts, local installation 



\ / 



$848 



OLYMPIA IVIP 



EpsonFX-80 ^©180 off 

Epson 

RX-80FT ■JW^SlOOoff | 

I Tolly Spirit 80 $254 

I Okidoro 92^*^ $125 off 

Okidoro 93 W** - - $210 off | 

I OWdoro84 Coll 

Sror 56-10 $229 | 

| SrorSR-15 $599 

Daroproducrs 

8050 "loaded" $1344 

| Tolly 160L $589 

Ponosonic 1091 $298 

Toshiba 1340 $695 

| Toshiba 1351 $1198 

LETTER QUALITY 

| Powertype $299 

Juki 6100 _ ... $389 

Juki 6300 $719 

Silver Reed 400 $249 

Silver Reed 500 $299 I 

Silver Reed 550 $409 | 

Silver Reed 770 $724 

NEC's Call 

Doisywrirer 2000 $624 

Diablo 620 $715 

Diablo 630 API ..... $1499 



Scoltsdale Systems ud 

617 N. Scorrsdole Rood Suire D. Scorrsdole, Arizona 85257 

~(602) 941 -5856 S 

Call 8-5 Mon.-Fri. 
A 

j^^Jt We porncipore in orbirrorion f orbusmess ond cusromers Through rhe Gerrer 
Business Dureou of Maricopa Counry. 




SINCE 1980 



TELEMARKETING ONLY: If you plonrovisir please coll firsr for on oppoinrmenr Prices lisred l 
ore for cosh ond include o 0% discounr. We sell on o Ner 30 basis ro Forrune 1 200 | 
companies ond universiries. No C.O.D.'s or A.P.O's. P.O.'s odd 2%. Viso. Masrercord odd 0% . 
Az. resident odd 6%. Prices subjecr ro change, producr subjecr ro ovoilobiliry. 
Personal/company checks rohe weeks ro clear. All irems lisred ore new wirh | 
monufoaurers worronty, 0-20% resrockingfeeforrerurned merchandise. Shipping exrro- 
producrs ore F.O.3. poinr of shipmenr. Softwore is nor warranted for suirobiliry. Regisrered J 
rrodemorks: Televideo-Televideo Sysrems. Inc.; Silver FoxTM. HAGEN-DOS-Scorrsdole f 
Sysrems, Lrd.: Commurer-Visuol Compurer Incorporared." 



IA/YSE 



$499 
$575 




Houstin Instruments 1 

DMP-29 $1795 

DMP-40 $745 

DMP-41 $2340 

L orher models colli 



IS IT SICK TO 
LOVE A PRINTER? 

If you love your Okidoro 92 or Epson FX-80 
don't read ony furrher becouse rhe new 
Olympio NP is rated os fosrer is noriceobly 
quirer ond hos o near lerrer quolny mode 
'hot is much superior ro onythmg m irspnce 
doss. 

Plus unlike rhe Okidoro or rhe Epson rhe 
Olympio comes with odjusroble rrocror 
feed (os wed os fncrion feed) os srondord 
equipmenr The rrocror feed is rhe push- 
rype ond rhe NP has o rear bar so rhor jr 
works greor wirh continuous forms 

The NP uses ^rondord Epson type nbbons, 
comes wirh rhe quolny rhor hos mode 
Olympio a world leader m lypewnrers ond 
■s bocked by nationwide seivice 

To quore PC mogazme The ( NP) printer 
is o sure rhmg (f ir falls mro your price ronge 
-and even rf ir doesn r ir may be worrh 
considering . 

if you're considering rhe purchase of on 
Okidoro. on Epson, or even a Toshiba give 
us o coll ond ler us send you on actuol pnnr 
sample from iheOlympioNPandoddirionol 
mformarion 

Decouse if you were to buy on Epson 
FX-80+ or on Okidoro 92 wirh rroaors or 
rhe lowest odve reed price onywhere you 
would be poyrng about S 1 00 more for on 
infertor printer Scorrsdole Sysrems sells rhe 
Olympio NP wirh o 1 0' shielded coble for o 



$044 



82 B YTE • APRIL 1985 



EVENT QUEUE 



April 1985 



• BUSINESS SHOW 
Business-Expo, various sites 
throughout the U.S. This 
show features exhibits and 
services related to office 
technology. Contact Interna- 
tional Business Expositions 
Inc., 200 East Northland . 
Towers, 15565 Northland Dr., 
Southfield, Ml 48075-5378. 
(313) 569-8280. April-May 

• ROBOTICS. MATHE- 
MATICS. COMPUTER 
LECTURES-Robotics Lec- 
ture Series and Colloquium 
Series. Room W-l 1 7. Mathe- 
matics & Science Building. 
Montclair State College, 
Upper Montclair, NJ. Month- 
ly lecture series featuring ex- 
perts in computer science, 
mathematics, and robotics. 
Contact Gideon Nettler, 
Department of Mathematics 
and Computer Science, 
Montclair State College, 
Upper Montclair, NJ 07043, 
(201) 893-4294 or (201) 
893-5132. April-May 

• INTELLIGENT MACHINES 
Machine-Intelligence Classes, 
'Hiring Institute, Glasgow, 
Scotland. Among the classes 
offered are "Foundations of 
Artificial Intelligence" and 
"Cognitive Modeling as a 
Basis for Expert Systems." 
Contact The r Hiring Institute, 
George House, 36 North 
Hanover St., Glasgow Gl 

2 AD, Scotland; tel: 041- 
552-6400. April-lune 

• MEMORY CARDS 
STUDIED-Memory-Card 
Technology. Columbus. OH. 
Business, industrial, and 
technological concerns will 
be addressed. Panel discus- 
sions and exhibits. The fee 
is $495. Contact Phil Wells, 
Battelle Memorial Institute, 
505 King Ave., Columbus, 



OH 43201-2693. (614) 
424-7249. April 10-11 

• SYSTEMS DEVELOP- 
MENT AND FOURTH 
GENERATION-Structured 
Techniques Using Fourth 
Generation Languages, 
Chicago, IL. This seminar ex- 
plains how to use fourth- 
generation languages in a 
structured systems develop- 
ment environment. Contact 
Digital Consulting Associates 
Inc., 6 Windsor St., Andover. 
MA 01810. (617) 470-3870. 
April 10-12 

• COMMUNICATIONS 
TECHNOLOGY FOR THE 
NONVERBAL-The Fourth 
Annual Conference on Com- 
munication "technology: 
Technology and Nonspeak- 
ing Children. Joseph Stokes 
Auditorium. Children's 
Hospital of Philadelphia, PA. 
Up-to-the-minute information 
on the use of technology 
with nonverbal children will 
be presented. Concurrent 
sessions will address on- 
going research, computers, 
and treatment strategies. 
The registration fee is $95. 
Contact Joan Bruno, 
Children's Seashore House, 
4100 Atlantic Ave.. POB 

411 1. Atlantic City. NJ 08404, 
(609) 345-5191. ext. 278. 
April 12-13 

• MAC IS FEATURED 

MacFair. Creese Student 
Center. Drexel University, 
Philadelphia. PA. Seminars, 
demonstrations, and ex- 
hibits. Student-sponsored. 
Contact MacFair. The 
DUsers. Creese Student 



Center. Drexel University, 
Philadelphia. PA 19104. (215) 
895-2 573. April 13 

• COMPUTERS AND 
PEOPLE-CHI '85: Human 
Factors in Computing Sys- 
tems, Hyatt Regency at 
Embarcadero Center, San 
Francisco, CA. Contact ACM 
Conference Management, 1 1 
West 42nd St., New York, 
NY 10036. (212) 869-7440. 
April 14-18 

• OPTICAL STORAGE 
INVESTIGATED-The 1985 
Materials Research Society: 
Symposium D. Golden Gate- 
way Holiday Inn, San Fran- 
cisco, CA. The mass-storage 
technologies symposium will 
investigate optical data 
storage. Areas to be ad- 
dressed include write-once 
and erasable media, read- 
only technology, substrates, 
and lasers. Contact D. H. 
Davies, Symposium Co-Chair, 
3M. 420 North Bernardo 
Ave., Mountain View, CA 
94043. April 15-18 

• SEMINAR CONSIDERS 

CAD— Computer-Aided 
Design. Ramada Inn. 
Rochelle Park, NJ. A seminar 
featuring PCAD and Auto- 
CAD products. Contact 
Compu-Sales Corp., 1096 
Goffle Rd. Hawthorne, NJ 
07506, (201) 427-5949. 
April 16 

• BUCKEYE SHOW 

The Ninth Annual Computer 
Fair. University of Dayton 
Arena, OH. r ferminals, micro- 
computers, and word pro- 
cessors to be displayed. 



IF YOU WANT your organization's public activities listed in BYTE's Event 
Queue, we need to know about them at least four months in advance. Send 
information about computer conferences, seminars, workshops, and courses 
to BYTE, Event Queue, POB 372. Hancock, NH 03449. 



Contact Dan Schumacher, 
University of Dayton, 300 
College Park Ave., Dayton, 
OH 45469. (513) 229-3511. 
April 16-17 

• DBM AND FOURTH 
GENERATION-Database 
Management Systems and 
Fourth Generation Lan- 
guages for Personal Com- 
puters, Atlanta. GA. Topics 
include approaches for 
managing data, operational 
considerations, and manage- 
ment issues. The fee is 
$795. Contact Software In- 
stitute of America Inc., 8 
Windsor St., Andover, MA 
01810, (617) 470-3880. 

April 17-19 

• OFFICE, DP EQUIPMENT 
CeBIT '85, Hannover, West 
Germany. More than 1300 
exhibitors from more than 

2 5 countries will display of- 
fice equipment and data- 
processing technology. Held 
in conjunction with the Han- 
nover Fair. Contact Han- 
nover Fairs Information 
Center. Route 22 East. POB 
338. Whitehouse. NJ 08888. 
(800) 526-5978: in New 
Jersey. (201) 534-9044. 
April 17-24 

• NETWORK CONTROL 
AND MANAGEMENT 
Network Management/ 
Technical Control, Marriott 
Copley Place, Boston. MA. 
Diagnostic and test in- 
struments will be among the 
products displayed. Contact 
Louise Myerow, Registration 
Manager, CW/Conference 
Management Group. 375 
Cochituate Rd.. POB 880. 
Framingham, MA 01701, 
(800) 22 5-4698: in 
Massachusetts, (617) 
879-0700. April 18-19 

[continued) 



APRIL 1985 -BYTE 83 



Inquiry 178 



HARMONY VIDEO & COMPUTERS 




2357 CONEY ISLAND AVE., BROOKLYN. NY 1 1 223 




800-VIDEO84 OR 800-441-1144 OR 718-627-1000 




HC^ 


COMMODORE 64 




APPLE 2C 




jMLj^ 




$149.95 




$889.95 




APPL 




GEMINI SG 10 


tmZJr^ 




$839.95 




$215.95 








"PRINTER SPECIALS' 






Anadex 


034 


Epson FX 100 + 


583 


Okimate 10 


127 


j Brother HR15 XL 


349 


Epson LO 1500 


998 


Olympiaro 


304 


Brother HR 35 


777 


Gemini Sg 10 


216 


Panasonic KXP 1091 


255 


Brother Keyboard 


129 


GemmiSG 15 


352 


Panasonic KXP 1090 


169 


( Citizen MSP 10 


329 


HP Laser Jet 


678 


Panasonic KXP 1092 


379 


Citizen MSP 15 


488 


Juki 6100 Televideo 


371 


Panasonic KXP 1093 


562 


Corona Laser 


2369 


Juki 6300 


739 


Panasonic KXP 3151 


450 


Daisywriter 


739 


Mannesman Spirit 80 


183 


Powertype 


279 


Delta SO 10 


352 


Mannesman 160L 


529 


Ouadjet 


720 


Delta SD 15 


431 


Mannesman 180L 


739 


Radix SR 10 


461 


Diablo 620 API 


678 


NEC 2050 


639 


Radix SR 15 


570 


Dynax DX 15 XL 


342 


NEC 3550 


297 


Riteman Blue + 


226 


EpsonRX80FT + 


285 


NEC 7730 


629 


Silver Reed Exp 550 


378 


EpsonRXBO 


226 


NEC 8850 


679 


Silver Reed Exp 500 


286 


EpsonRX100 


374 


Okidata92 


349 


Silver Reed Exp 770 


704 


EpsonFXBO 


394 


Okidata93 


564 


Toshiba 1340 
Toshiba 1351 


678 
1213 



WOW! WOW! WOW! 



APPLE 




IBM 




MONITORS 




2EvWDisk Drive 


B34 


PC w/Drive 


1449 


Amdek300Green 


114 


Macintosh 


1679 


PC XT 


3089 


Amdek 300 Amber 


121 


Apple2C 


887 


PC Portable w/Drive 


CALL 


310 Amber 


142 


Imagewriter 


473 


AST Six Pack 


239 


Color300 


221 


Addt. Drives Iro 


n 114 


Tallgrass20Meg 


2374 


Color 500 


324 






Quad Board 


224 


Color600 


384 






Keytronics 


159 


Color 700 


452 






Hercules Color 


153 


Color710 


519 






Hercules Monochrome 


294 




199 


ATARI 


109 
224 

159 


Persyst Color Card 


148 


PrlnctonHX12 


449 


800XL 


Persyst Monocard 


162 


Taxan 122A 


139 


1027 Printer 


Plantronics 


409 




394 


} 1050Drlve 


PC w/10 Meg Hard Dr. 


2399 






Indus. Drive 






1999 






| 1025Printer 


169 


10 Meg Drive 


899 


SANYO 

5500. S 
5550. S 
CRT 70 


649 
974 
509 


MODEMS 




ZENITH 








! Hayes 1200 


431 


Zenith PC2150 


1631 






Hayesl200B 


378 


Zenilh PC 15152 


2076 


COMMODORE 


Hayes 300 


184 


ZenithPC16l-52 


2244 


Commodore 6^ 


149.95 


Micromodem2E 
Access 123 
Novation J- cat 


212 

359 
89 






1541 Disk Drive 
1702 Monitor 
MPS 802 


184 
189 
188 


800-441-1144 



Items reflect cash dis 



:. For your protection we check for stolen credil cards 



Powerful Single Board Computer 
Includes CP/M Plus™ on Disk 




S499 



New Itemi: 

■ MSDOS Coprocessor 

• 48000 Coprocessor 

• 80X24 LCD Driver 

• HrcWRAM Oisk 

• 310 " Smgie Board 



Z80CPU 

MSC-ICO uses the most popular microprocessor, the 
Z80. .is its main CPU. MSC-ICO runs at 4 MHZ without 
any wait states. The whole system is incorporated into a 
high quality four layer PC board measuring only 145mm 
X 250mm (IC x *"). The system requires only 1 2 Amps 
,H + 5Voltsand0l Ampsat ±12 Volts 

Banked CP/M Pius included 
CP/M Plus [3.0 banked) is included on disk with all 
manuals. CP/M Plus is upwardly compatible with CP/M 
2 2 and includes tile SID debugger, the MAC and RMAC 
macro assemblers «ind the LINK-80 loader MSC-ICO's 
custom BIOS provides support for multiple disk formats 
and I/O device control. System specific software for disk 
formatting, disk copyrng, defining function keys and 
modifying screen attributes is also includec 1 . 

I28KbRAM 
One 64K brink of memory is devoted to CP/M and its 
disk cache blocks, while the other 64X bank is devoted 
to applications programs This arrangement not only 
provides more memory for programs, hut n signifrcantly 
increases tfie speed of disk f/O. 

Internal Floppy Disk Controller 
MSC-ICO handles Shuga; t/ANSI standarc 1 floppy disk 
drives in a variety of sizes andformats 

•8"SSSD, 243Kb 

•8"DSDD.1.2Mb 

•S-1/4"DSDD, 320Kb 

■ S-1/4" DSQO, 800Kb 

• 5-1/4" QHO. 1.2Mb 
Up to four drives, ol .inydensity or size can be con- 
nected to MSC-ICO Bolh 5 l<4ancl8i!ichconnectors;ire 
on-board to make disk drive connections easy 

High Speed CRT Controller 
MSC-ICOcontamsanSO x 24 line memory mjtpped CRT 
controller. Video output is composite or separate to 
match anynionitor Attributes such as insertanddelete 
line, reverse video, and semlgraphics are supported 
Cursor escape sequences are an extension of DffC's 
VT52 and can be easily reprogrammed to emulate most 



Mountain 8lde Oomputer 

Video. 128Kb, CP/M Plus™, and more 



Two RS232C Ports 

MSC-ICO cornmurucjites with printers, i 
ters. dnd other s.tandard RS232C devices through us 
two serial ports These ports are independently pro- 
grammable for baud rates, stop bits, data format and 
parity. Synchronous communication on Tort A i s 
jumperselectable 

Centronics Parallel Port 
A standard Centronics parallel po/t allows MSC-ICO to 
communicate witn puntersancl other parallel devices 

Parallel Keyboard Port 
MSC-ICO connects to any ASCII parallel keyboard of 
positrve or negative polarity wrth a negative strobe A 
type-aliead buf fer and programmable function keys are 
provided by MSC-ICO's custom BIOS 

16 Bit TTL I/O Port 
This port allows you to access pnniers, relays. LED's, 
DAC's. ADC's, switches, EPROM programmers and 
many other devices 

Clock Calendar 
The battery backed up clock calendar provides time and 
date information to CP/M lor file stamping. The clock 
can also be accessed from applications programs 

ExternalBus 
MSC-ICO's SO pin busconnector provides expansion for 
a hard disk controller, RAM disk, graphics or a 48000 
system. Please call or write for more information on 
theseoptions 

MSC-ICO Saves Time and Money 
With MSC-ICO's low cost and quality worksmanship, 
why spend time, energy and money to design, debug 
and test your own system. Whether yourequire smglt> 
units or large volume quantities we can meet your 
needs. Or dery our evaluationunit todayl 




Inquiry 431 for Dealers. Inquiry 432 for End-Users. 



EVENT QUEUE 



• COMPUTER FESTIVAL 

The Tenth Annual Trenton 
Computer Festival, Trenton 
State College, Trenton, NJ. 
Talks, tutorials, user-group 
activities, exhibits, computer- 
graphics theater, games, and 
a 50-acre outdoor elec- 
tronics flea market are some 
of the highlights of this an- 
nual event. Contact Ms. 
Marilyn Hughes, Trenton 
State College, Hillwood 
Lakes CN 5 50, Trenton, NJ 
08625, (609) 771-2487. 
April 20-21 

• AIDS FOR EDUCATORS 
AEDS/ECOO '85: The 
T\venty-Third Annual Conven- 
tion of the Association for 
Educational Data Systems 
(AEDS), Hilton Harbour Cas- 
tle, Toronto, Ontario, 
Canada. A forum for edu- 
cators to exchange ex- 
periences and to keep up to 
date on developments in 
educational computing. The 
theme is "Computing Knows 
No Borders." Co-hosted by 
the Educational Computing 
Organization of Ontario 
(ECOO). Contact AEDS/ 
ECOO '85, c/o OISE, 2 52 
Bloor St. W, Toronto, Ontario 
M5S IV6, Canada; in the 
U.S., AEDS/ECOO '85. 1201 
16th St. NW, Washington, DC 
20036. April 21-27 

• CAD FOR ARCHITEC- 
TURE, ENGINEERING 
CADDMania: Causes and 
Cure, Sheraton TWin Towers, 
Orlando, FL. Techniques for 
computer-aided design and 
drafting for architecture and 
engineering. The fee for the 
full three days is $175; the 
daily rate is $100. Contact 
Pat Johnson, CEPA Inc., 
15713 Crabbs Branch Way 
Rockville, MD 20855, (301) 
926-7070. April 22-24 

• SPEECH IN FOCUS 
Speech Tech '85, Vista Inter- 
national Hotel, World Trade 
Center, New York City 
Speakers and exhibitors will 
focus on voice synthesis and 
recognition. Registration is 



$195. Contact Media Dimen- 
sions Inc.. POB 1121 Grade 
Station, New York, NY 
10028, (212) 772-7068 or 
(212) 680-6451. April 22-24 

• DECISION-SUPPORT 
DISCUSSED-National Con- 
ference on Decision-Support 
Systems, Washington, DC. 
Examines the implementa- 
tion and integration strate- 
gies of decision-support 
systems into management. 
Two days of workshops. The 
fee is $745. Contact Con- 
ference Manager, U.S. Pro- 
fessional Development In- 
stitute, 1620 Elton Rd., Silver 
Spring, MD 20903, (301) 

44 5-4400. April 22-2 5 

• PUBLIC NETWORK 
OPERATIONS-X.2 5 and 
Packet Switching Networks, 
Atlanta, GA. This course 
covers the internal opera- 
tions of a packet-switching 
network and its implementa- 
tion. International standards 
are also covered. The fee is 
$795. Contact Elaine Had- 
den Nicholas, Department of 
Continuing Education, 
Georgia Institute of Tech- 
nology, Atlanta, GA 30332- 
0385, (404) 894-2547. 

April 2 3-2 5 

• TRADE SHOW, CON- 
FERENCE-Electro/85 and 
Mini/Micro Northeast-8 5, 
New York City. Areas to be 
covered include artificial in- 
telligence, communications 
and networks, consumer 
electronics, high-density data 
storage, and personal com- 
puting. Contact Electronic 
Conventions Management, 
8110 Airport Blvd., Los 
Angeles, CA 90045, (213) 
772-2965. April 2 3-2 5 

• COMPUTER APPLICA- 
TIONS EXPLORED 
Perscomp '85, Sofia, 
Bulgaria. An international 
conference on the applica- 
tions of personal computers 
and the problems en- 
countered in using them. 
Contact Dr. Marcel Israel, 



84 BYTE* APRIL 1985 



EVENT QUEUE 



Bulgarian Academy of 
Sciences, Institute of In- 
dustrial Cybernetics and 
Robotics. 113 Sofia, Acad. G. 
Bonchev St.. Bl. 12, Bulgaria; 
tel: 72-46-98; Telex: 22836 
ITKR BG. April 23-26 

• EXPERT SYSTEMS 
Expert Systems and 
Knowledge Engineering, 
Gottlieb Duttweiler Institute. 
Ruschlikon/Zurich. Switzer- 
land. The theme is "Essen- 
tial Elements of Advanced 
Information Technology." 
Contact Dr. T. Bernold. 
Gottlieb Duttweiler Institute. 
CH-8803. Ruschlikon/Zurich, 
Switzerland. April 25-26 

• MICROS IN EMPIRE 
STATE-The Fourth Annual 
New York Computer Show 
and Software Exposition, 
Nassau County Coliseum, 
Uniondale, NY. Contact Ann 
Katcef, CompuShows, POB 
3315. Annapolis. MD 21403. 
(800) 368-2066: in Annap- 
olis, (301) 263-8044; in 
Baltimore, (301) 269-7694; in 
the District of Columbia. 
(202) 261-1047. April 25-28 

• VIRGINIA COMPUTING 
The Fourth Annual Virginia 
Computer Show and Soft- 
ware Exposition, Pavilion. 
Virginia Beach. VA. Contact 
Ann Katcef. CompuShows, 
POB 3315. Annapolis. MD 
21403. (800) 368-2066; in 
Annapolis. (301) 263-8044; 
in Baltimore. (301) 269-7694; 
in the District of Columbia, 
(202) 261-1047. April 25-28 

• EQUIPMENT SALE 
Produx 2000: Wholesale 
Expo '85, Civic Center. 
Philadelphia, PA. Six hun- 
dred booths of computers, 
communications devices, 
and business equipment for 
sale. Contact Vertical 
Marketing Corp., POB 557. 
Bala Cynwyd, PA 19004. 
(215) 457-2303. April 26-28 

• SPRING WITH 
COMMONERS-COMMON'S 
Spring '85 Conference. 



Louisville, KY. More than 
250 presentations are 
planned. Contact COMMON, 
Spring '85 Conference. Suite 
1717. 43 5 North Michigan 
Ave.. Chicago. 1L 60611, (312) 
644-0828. April 27-May I 

• INTELLIGENT VISION 

Intelligent Vision Systems, 
Holiday Inn, Monterey, CA. 
The technical and marketing 
aspects of intelligent vision 
will be covered. Contact 
Richard D. Murray, Institute 
for Graphic Communication 
Inc., 375 Commonwealth 
Ave.. Boston. MA 02115, 
(617) 267-942 5. April 28-30 

• INTRO TO UNIX 

Introduction to the UNIX 
System. Atlanta, GA. The 
pros and cons of UNIX will 
be covered. Contact Digital 
Consulting Associates Inc., 8 
Windsor St., Andover, MA 
0I8I0, (617) 470-3870. 
April 29-30 

• C FOR ENGINEERS 

C Programming for Engi- 
neers, University of 
Michigan, Dearborn. A short 
course and workshop. Con- 
tact Professor R. E. Little, 
University of Michigan. 4901 
Evergreen Rd., Dearborn, Ml 
48128, (313) 593-5241. 
April 29-May 3 

• KNOWLEDGE ENGI- 
NEERING— Knowledge Engi- 
neering: A Short Course. 
University of Tennessee 
Space Institute, Tullahoma. 
Contact Professor Moonis 
Ali, University of Tennessee 
Space Institute. TUllahoma. 
TN 37388-8897. or call the 
Short Course Office at 
(615) 455-0631. ext. 278. 
April 29-May 3 

• COMMERCIAL Al, HIGH- 
TECH CONFERENCE-AI 
1985: Artificial Intelligence 
and Advanced Computer 
Technology Conference/Ex- 
hibition, Convention Center, 
Long Beach, CA. More than 
20 technical sessions as well 

[continued) 



"There's no magic to using 
your personal computer for 
data acquisition." 




Fred Molinari, President 



There's no trick to it. 

Just take your choice of our new 
single board plug-ins and bring com- 
plete analog and digital I/O capabilities 
to your personal 
computer. 

Whether you're 
working in laboratory 
research or indus- 
trial process con- 
trol, our single 
boards can give you 
measurement and 
control capabilities 
without having to 
spend big bucks. 

And who 
knows that better 
than the leading sup- 
plier of low cost 
data acquisition 
boards, systems, 
and software? 

Our boards 

include A/D with programmable gain, D/A, digital I/O, 
clock and direct memory access capabilities. With power 
and performance to match your PC, our analog interfaces 
provide 12 or 16-bit A/D resolution and direct connection 
for high or low level signal inputs. 

And these boards just plug into the PC's backplane. 
No messy external boxes or cables. User input connec- 
tions are simple with our compatible line of screw 



terminal panels. 



DATA ACQUISITION FOR PC'S 


///////* 


/ 


IBM PC" 


X 


X 


X 


X 


X 




APPLE IP 


X 






X 






Tl PROFESSIONAL" 


X 


X 


X 


X 


X 




DEC RAINBOW" 


X 


X 


X 


X 


X 




COMPAQ'" Portable 


X 


X 


X 


X 


X 






Data Translation is the leading supplier of 
personal computer hardware and software 
for data acquisition and control. 



Comprehensive 
user manuals with 
many programming 
examples get you 
up and running fast. 

So why look 
any further? No other 
analog I/O systems 
can offer PC users 
such quality, power 
and performance for 
such a reason- 
able price. 

After all, 
making data 
acquisition easy 
is what we're 
all about. 

And that's 
no illusion. 

Call 
(617) 481-3700, 



DATA TRANSLATION 



World Headquarters: Data Translation Inc., 100 Locke Dr.. Marlboro. MA 01752 (617) 481-3700 Tlx 951-646. 
European Headquarters: Data Translation. Ltd.. 430 Bath Rd.. Slough. Berkshire SLI 6BB England (06286) 
3412 Tlx 849-862. 
In Canada: (416) 625-1907. 

IBM PC is a registered trademark of IBM. Apple II is a registered trademark of Apple Computer Corp. Tl Profes- 
sional is a registered trademark of Texas Instruments. Inc. DEC Rainbow is a registered trademark of Digital 
Equipment Corp. COMPAQ is a registered trademark of COMPAQ Computer Corp. 



Inquiry 109 



APRIL 1985 'BYTE 85 



Inquiry 415 





New 64K SBC 

Only 

$ 375. 

• Requires no terminal. Includes 
Video Controller and CP/M® 2.2 

• Runs any size floppy drive. 

• Other models include Hard 
Disk Controller, CP/M® 3.0, 
128K or 256K RAM, and 8088 



64K SBC includes: 
e 6MHz Z80B® 

• Video Controller 

• 2 Serial Ports 

• 4 Parallel Ports 

• I/O Expansion 



CP'M is a registered 
trademark of 
Digital Reseaich Inc 
Z60B is a registered 
trademarkot Ziloglnc 



• Source Code and Drivers 
included 

• CP/M® 2.2 
Call our Toronto 
office today. 
(416) 745-7214 

Or write: Megatel 
1051 Clinton St., 
Buffalo, N.Y. 
14206 



i Substantial OEM Discounts Available 



EVENT QUEUE 



as panel discussions and 
product displays are 
planned. Contact Tower Con- 
ference Management Co., 
3 31 West Wesley St.. 
Wheaton, 1L 60187. (312) 
668-8100. April 30-May 2 

• MEETING ON LINE 
National Online Meeting. 
Sheraton Centre Hotel. New 
York City. On the docket are 
formal paper presentations, 
product review sessions, 
exhibits, and special work- 
shops and seminars trans- 
mitted via satellite. Contact 
Thomas Hogan, National 
Online Meeting, Learned 
Information Inc.. 143 Old 
Marlton Pike. Medford. N) 
08055, (609) 654-6266. 
April 30-May 2 



May 1985 



• SUMMER SEMINARS 
Summer Seminar Series. 
Rochester Institute of Tech- 
nology NY. A series of one- 
week seminars. Titles include 
"Introduction to Linear Sys- 
tems and Digital Signal Pro- 
cessing; "Basic 6800/6809." 
and 'Advanced Digital 
Logic." Contact Yvonne Fish. 
School of Engineering Tech- 
nology, Rochester Institute 
of Technology, One Lomb 
Memorial Dr., POB 9887. 
Rochester, NY 14623, (716) 
475-2915. May~)une 

• MICROELECTRONIC 
ENGINEERING 
Microelectronic Engineering 
Conference. Rochester In- 
stitute of Technology, NY. 
Technical papers and tours 
of microelectronic engineer- 
ing facilities. Contact Dr. 
Lynn Fuller, Microelectronic 
Engineering Program. 
Rochester Institute of Tech- 
nology, One Lomb Memorial 
Dr.. POB 9887. Rochester. 
NY 14623, (716) 475-2035. 
May I 

• SCIENTIFIC COMPUTING 
AND AUTOMATION-The 



First Scientific Computing 
and Automation Conference 
and Exposition, Convention 
Center, Atlantic City, NJ. For 
practitioners and managers 
in analytic chemistry, bio- 
technology/biomedical 
research, clinical chemistry, 
and engineering. Product 
displays. Contact Expocon 
Management Associates Inc., 
3695 Post Rd.. Southport, 
CT 06490. May 1-3 

• SPECIAL EDUCATION 
SOFTWARE-National Con- 
ference on Special Educa- 
tion Software. Radisson 
Mark Plaza, Alexandria, VA. 
The theme is "DISCover the 
Possibilities." Product dis- 
plays and demonstrations. 
Registration: $50. Contact 
Elsa Glassman. The Council 
for Exceptional Children, 
Department of Professional 
Development. 1920 Associa- 
tion Dr„ Reston. VA 22091. 
(703) 620-3660, ext. 261. 
May 2-3 

• COMPUTERS AND 
WRITING-UCLA Con- 
ference on Computers and 
Writing: New Directions in 
Teaching and Research. Uni- 
versity of California, Los 
Angeles. Contact Dr. Lisa 
Gerrard, UCLA Writing Pro- 
grams, 371 Kinsey Hall. 
UCLA. Los Angeles. CA 
90024. (213) 206-1145. 

May 4-5 

• FAULT-TOLERANT 
DESIGN— Introduction to 
Fault-Tolerant Microcomputer 
Systems, Wisconsin Center, 
Madison. Presentations will 
emphasize practical applica- 
tions. The fee is $650. Con- 
tact William C. Dries. Univer- 
sity of Wisconsin-Extension, 
Dept. of Engineering and 
Applied Science, 432 North 
Lake St.. Madison. Wl 
53706. (800) 262-6243; in 
Wisconsin. (608) 262-2061. 
May 6-8 

• INTEGRATED OPTICS 
ECIO '85: The Third Euro- 

[continued] 



86 B YTE • APRIL 1985 



Inquiry 254 



THE PROFESSIONAL'S CHOICE 



Lotus 
1-2-3 

*299 



Lotus 
Symphony 

*419 



dBase III I Framework MultiMate 

$339 *339 *259 



WordStar 
2000+ 

*319 



Software 

Word Processing Editors 

EASYWRITER II 

SYSTEM $219 

FANCY FONT $139 

FINAL WORD $189 

MICROSOFT WORD $239 
MICROSOFT WORD 

W/MOUSE $289 

MULTIMATE $259 

PFS: WRITE $ 95 

SAMNA WORD III $Call 
VOLKSWRITER 

DELUXE $159 
VOLKSWRITER 

SCIENTIFIC $309 
THE WORD PLUS 

(OASIS) $105 

WORD PERFECT $249 

WORDPLUS W/BOSS $319 

WORDSTAR $199 

WORDSTAR 2000 $269 

WORD STAR 2000+ $319 
WORDSTAR 

PROFESSIONAL $259 

XYWRITE II+ $229 



Spreadsheets/ 
Integrated Packages 

ELECTRIC DESK 
ENABLE 
FRAMEWORK 
LOTUS 1-2-3 
MULTIPLAN 
OPEN ACCESS 
SMART SYSTEM 
SPREADSHEET 

AUDITOR 
SUPERCALC3 
SYMPHONY 
TK1 SOLVER 

Desktop 
Environments 

DESK ORGANIZER 
GET ORGANIZED 
SIDEKICK 
SPOTLIGHT 

Communications/ 
Productivity Tools 

CROSSTALK 
PROKEY 
RELAY 
SMARTCOM II 



$209 
$459 
$339 
$299 
$135 
$299 
$559 

$ 79 
$199 
$419 
$269 



$129 
$159 
$ 45 
$109 



$105 
$ 89 
$ 99 

$109 



Database Systems 

ALPHA DATA BASE 

MANAGER II $179 

CLOUT V 2.0 $139 

CONDOR III $299 

DBASE II $269 

DBASE III $339 

INFOSTAR+ $319 

KNOWLEDGEMAN $269 
PFS: FILE/PFS: 

REPORT $169 

POWER BASE $219 

OUICKCODEIII $169 

R BASE 4000 $259 

Languages/Utilities 

CONCURRENT DOS $189 

C86C COMPILER $299 

DIGITAL RESEARCH 

C COMPILER $219 

DR FORTRAN 77 $219 

LATTICE C COMPILER $Call 

MICROSOFT C 

COMPILER $309 

MS BASIC COMPILER $249 

MS FORTRAN $239 

NORTON UTILITIES- 
NEW $Cail 

TURBO PASCAL $45 

Project 
Management 

HARVARD PROJECT 

MANAGER $219 

HARVARD TOTAL 

PROJECT MANAGER $299 
MICROSOFT 

PROJECT $159 

SCITOR PROJECT 

5000 W/GRAPHICS $289 

Professional 
Development 

MANAGEMENT EDGE $159 
SALES EDGE $159 

THINK TANK $119 

Home/Personal 
Finance 

DOLLARSAND 

SENSE $119 

FINANCIER II $119 

HOWARD TAX 

PREPARER 85 $195 

MICROTAX SCall 

MANAGING YOUR 

MONEY $129 



Graphics/Statistics 

ABSTAT $279 

AUTOCAD $Call 
BPS BUSINESS 

GRAPHICS $229 

CHARTMASTER $239 

CHARTSTAR $209 

DR DRAW $199 
ENERGRAPHICS W/ 

PLOTTER $279 

EXECUVISION $259 
GRAPHWRITER 

COMBO $389 

MS CHART $159 
OVERHEAD 

EXPRESS $139 

PC DRAW $259 

PC PAINTBRUSH $ 89 

PFS: GRAPH $95 

SIGNMASTER $179 

STATPRO $Call 

STATPAK-NWA $329 

STATPAC-WALONICK $299 

Accounting Modules 

BPI $329 

GREAT PLAINS $479 

IUS EASYBUSINESS $309 

MBA $369 

OPEN SYSTEMS $399 

PEACHTREE $299 

REAL WORLD $469 

STATE OF THE ART $389 
STAR ACCOUNTING 

PARTNER $249 
STAR ACCOUNTING 

PARTNER II $599 

Hardware* 

Multifunction Boards 

AST ADVANTAGE $Call 

AST 6 PAK PLUS (64K) $249 
AST 6 PAK PLUS 

(384K) $449 

AST MEGAPLUS II (64K) $269 

AST MEGAPAK (256K) $349 

OUADBOARD (64K) $269 

OUADBOARD (256K) $399 
OUADBOARD EXP. 

(64K) $269 
OUADBOARD EXP. 

(384K) $469 

QUAD 512 + (64K) $269 

ORCHID BLOSSOM $Call 

PERSYST $Call 

TECMAR CAPTAIN(64K) $279 

TECMAR WAVE (64K) $209 



Display Boards 

AST MONOGRAPH PLUS $Call 
EVEREX GRAPHICS 

EDGE $419 

HERCULES GRAPHICS 

CARD $329 

HERCULES COLOR 

CARD $179 

PARADISE MODULAR 

GRAPHICS CARD $285 

PARADISE 

MULTIDISPLAY CARD $285 
PERSYST $Call 

PLANTRONICS 

COLORPLUS $419 

PRINCETON SCAN 

DOUBLER $Call 

STB GRAPHICS 

PLUSH $309 

TECMAR GRAPHICS 

MASTER $489 

TECMAR VIDEO VAN 

GOGH $259 

TSENG ULTRA PAK $449 

Displays 

AMDEK 300G/300A 
AMDEK310A 
AMDEK COLOR II ♦ 
PRINCETON HX-12 
PRINCETON MAX-12 
PRINCETON SR-12 
QUADRAM 

AMBERCHROME 
ZENITH 124 AMBER 
ZENITH 135 COLOR 



$139/149 
$179 
$459 
$469 
$179 
SCall 

$179 
$145 
SCall 



Modems 

AST REACH 1200 
HAYES 1200 
HAYES 1200B 
HAYES 2400 
VENTEL 1200 
HALF CARD 



SCall 
$459 
$399 
SCall 

SCall 



Accessories 

CURTIS SURGE 

PROTECTORS SCall 
EPD SURGE 

PROTECTORS SCall 

GILTRONIX A/B SWITCH SCall 
MICROBUFFER INLINE 

(64K) $264 
MICROFAZER INLINE 

(64K) $219 

64K RAM SET $40 

256K RAM SET SCall 

8087 MATH $150 



Printers/Plotters 

AMPLOT II $859 

C. ITOH $Call 

COMWRITER II SCall 

COMWRITER420 $Call 

DIABLO 620/630 SCall 

EPSON FX-100+ SCall 

EPSON LO-1500 SCall 

EPSON JX-80 SCall 

JUKI 6100 $419 

NEC P3 $899 

NEC 2050 $769 

NEC 3550 $1399 

OKIDATA 84P $729 

OKIDATA 93P $619 

QUME SPRINT 1155 $1569 

TOSHIBA P1351 $1279 
SWEET P 6 PEN 

PLOTTER $899 

Emulation Boards 

ASTPCOX $949 

AST 3780 $609 

AST SNA $689 

ASTBSC $ 29 

BLUE LYNX $Call 

CXI 3278/9 SCall 

IRMA $869 

IRMALINE $999 

IRMAPRINT SCall 

QUAD 3278 $949 

Input Devices 

KEYTRONIC5151 $189 
MICROSOFT 

MOUSE $139 
PC MOUSE W/PAINT $159 

Mass Storage 

ALLOY PC-BACKUP 

20MB $1649 
ALLOY PC-DISC 

20MB $1769 

IOMEGA 10+10 MB $2895 
MAYNARD WS-1 10MB SCall 

SIGMA SCall 

SYSGEN IMAGE SCall 
TALLGRASS HARDFILE 

+ TAPE SCall 

TEAC HALF HEIGHT $159 

Networks 

AST PC NET SCall 

CORVUS NET SCall 
DIGITAL RESEARCH 

STARLINK $1199 

ORCHID PC NET SCall 

'CALL FOR SHIPPING COSTS 



Samna 
Word III 

♦CALL 



Chart-Master 

♦239 



AST6Pak 
Plus 

♦249 



Quad Board I Smartmodem I Smartmodem 
Expanded64K| 1200B 1200 

♦269 I *399 *459 




LOWEST PRICE 
GUARANTEE!! 

We will match current 

nationally advertised 

prices on most products. 

Call and compare. 



free 



Diskette 

Library 

Case 

with your order 




TERMS: 

Checks— allow 14 days to clear. Credit processing— add 3%. COD orders— cash, 
M.0 or certified check— add $3.00. Shipping and handling UPS surface— add $3.00 
per item (UPS Blue $6.00 per item). NY State Residents— add applicable sales tax. 
All prices subject to change. 



1-800-221-1260 

In New York State call (718) 438-6057 






mssM 



MON.-THURS. 9:00AM-8:00PM 
SUN. & FRI. 9:00AM-4:00PM 




Softline Corporation 
P.O. Box 729, Brooklyn, N.Y. 1 1230 
TELEX: 421 047 ATLN Ul 



Inquiry 352 



APRIL 1985 'BYTE 87 






m 




A black border may appear around the Palette slide image, 
which will be imperceptible when projected. 




Now last minute presentations 

can be made from 

your personal computer. 

In color. In house. In minutes. 



Introducing Polaroid Palette. 



Whether your presentation is in 30 
minutes or 30 days, the new Polaroid 
Palette Computer Image Recorder will 
make it easier. Priced at under $1800* it 
Jets you make Polaroid instant 35mm 
slides or prints from personal 
computer-generated data. Right at your 
desk. So now you can create a presen- 
tation in minutes. Without sending out 
for processing, paying premiums for 
rush service or risking the security of 
your confidential information. 

Works with the graphics 

packages of the IBM PC or XT, 

DEC Rainbow or PRO, Apple He 

or 11+ and AT&T 6300. 

The Polaroid Palette is designed to 
work with many graphics software 
packages. In fact, when using such 
popular programs as Graphwriter, 
Chart-Master, Sign-Master, DR Draw 
and DR Graph, Palette can virtually 
double both the horizontal and vertical 
resolution of your monitor. Plus, a 

Inquiry 305 



"backfill" feature reduces raster lines 
for a smoother, more finished appear- 
ance. The result— presentation quality 
slides. On-the-spot. 

Color 35mm slides, even from a 
black and white CRT 
Think of it as an artist's palette. Be- 
cause Palette "paints" your graphs, 
charts and text. You're choosing from 
up to 72 colors. If you don't want red, 
press a few keys— it's green. And if 
you're not the artistic-type, Polaroid 
has- developed a menu of color sets: 
combinations of colors that have been 
specially coordinated to complement 
your presentations. And all of this is 
yours, even if you have a black and 
white monitor. 

Lets you make last minute 

changes or add 

up-to-the-minute information. 

The Polaroid Palette is the fast, con- 
venient, low-cost way to prepare slides 
for your presentation. And perhaps 



even more important, Palette allows 
you to keep confidential information 
confidential. You won't have to send 
your work out to anyone again. 

So why wait until the last minute to 
find out about Polaroid Palette? Call 
this toll-free number or return this 
coupon. Because with Palette you'll 
make your deadlines, in no time. 
I 1 

For a demonstration, call toll-free, or mail the 
coupon to Polaroid Corp., E.I. Marketing, Dept, 
604, 575 Technology Sq., Cambridge, MA 02139. 

CALL 1-800-225-1618 

a Send information. O Have representative call. 



Name- 



Company- 
Address 

Ckv 



-Zip- 



Telephoned 

PC make and model- 



s Polaroid 



B-4/85 

•Suggested list price. Polaroid* 

APRIL 1985 'BYTE 89 



EVENT QUEUE 



pean Conference on Inte- 
grated Optics. Berlin. 
Federal Republic of Ger- _ 
many. More than 2 50 engi- 
neers and scientists from 
Europe, Japan, and the 
United States will discuss 
the potential of optics for 
communication, signal pro- 
cessing, and instrumenta- 
tion. Contact ECIO '85 Con- 
ference Secretariat. Frau 1. 
Weber-Zuckarelli, Heinrich- 
Hertz-lnstitut Berlin GmbH. 
Einsteinufer 37, D-1000 
Berlin 10. Federal Republic 
of Germany. May 6-8 

• SPRING COMDEX 

COMDEX Spring. Atlanta. 
GA. More than 750 com- 
panies will exhibit. Contact 
The Interface Group Inc.. 
300 First Ave., Needham. 
MA 02194, (800) 325-3330; 
in Massachusetts. (617) 
449-6600. May 6-9 

• MAPLE LEAF 
COMPUTING-The 1985 
Canadian High Technology 
Show. Civic Centre, Ottawa, 
Ontario. Canada. Product 
displays, speakers, and 
tutorials. Contact Canadian 
High Technology Show. Suite 
214. 2487 Kaladar Ave.. 
Ottawa, Ontario K1V 8B9. 
Canada. (613) 731-9850. 
May 7-8 

• MEMORY CARDS 
STU D IED-Memory-Card 
Technology. Crowne Plaza. 
San Francisco. CA. See April 
10-11 for details. May 8-9 

• PC DISPLAYS 

PC Expo. Convention Centre. 
Montreal, Quebec. Canada. 
Contact PC Expo, 20 But- 
terick Rd., Toronto. Ontario 
M8W 3Z8, Canada. (416) 
252-7791. May 8-10 

• TOPICS IN COMPUTER 

LAW-The Sixth Annual 
Computer Law Institute, Los 
Angeles. CA. Topics on the 
docket include proprietary 
rights issues in the design of 
compatible products, prod- 
uct distribution, and anti- 



trust and copyright issues. 
Contact Cheryl Litrenta. 
University of Southern 
California Law Center, Uni- 
versity Park, Los Angles. 
CA 90007, (213) 743-2582. 
May 9-10 

• C CONVOCATION 

C85: The First International 
Conference on the C Pro- 
gramming Language, 
Ramada Renaissance Hotel. 
San Francisco, CA. A forum 
for programmers and devel- 
opers using or considering 
the use of the C language. 
Sessions on ANSI X3J11 
standard, portability, pro- 
gramming tools, and applica- 
tions. Contact Lifeboat 
Associates. 1651 Third Ave.. 
New York. NY 10128, (800) 
847-7078; in New York. (212) 
860-0300. May 13-15 

• GRAPHICS FOR 
ENGINEERING, DRAFTING 
Computer Graphics for 
Engineering/Drafting Practice 
and Computer Graphics 
Workshop, University of 
Texas. Austin. These short 
courses stress learning the 
principles of computer 
graphics and seek to 
develop the ability to 
prescribe computer graphics 
equipment for engineering 
applications. Contact College 
of Engineering. University of 
Texas. Austin. TX 78712. 
(512) 471-3506. May 13-17 

• PROFESSIONAL 
TUTORIALS— Tutorials for 
Professional Development. 
Hyatt Hotel. Los Angeles. 
CA. A series of all-day 
seminars on software, logic 
programming, and communi- 
cations. Contact Gerry Segal. 
Association for Computing 
Machinery, II West 42nd St.. 
New York, NY 10036, (212) 
869-7440. May 13-17 

• TEST, MEASUREMENT 
EXPO-The 1985 Test and 
Measurement World Expo. 
Convention Center, San lose, 
CA. Conferences and tech- 
nology exhibits. Contact 



Meg Bowen, Test and 
Measurement World Expo, 
2 1 5 Brighton Ave.. Boston. 
MA 02134. (617) 254-1445. 
May 14-16 

• MODULA-2 ENGI- 
NEERING-Software Engi- 
neering with Modula-2. 
Atlanta, GA. A course em- 
phasizing methods for 
building large-scale software 
systems in Modula-2. Prereq- 
uisite: knowledge of Ada or 
Pascal. The fee is $495. 
Contact Elaine Hadden 
Nicholas, Department of 
Continuing Education. 
Georgia Institute of Tech- 
nology, Atlanta, GA 
30332-0385, (404) 894-2547. 
May 15-17 

• OK SHOW 

The Eighth Annual Show & 
Tell Microcomputer Con- 
ference. University of 
Oklahoma. Norman. Micro- 
computer fans of all ages 
and levels of expertise come 
together to share ideas and 
demonstrate applications 
and hardware. Contact 
Richard V. Andree. Show & 
Tell Computer Conference, 
Mathematics Department. 
University of Oklahoma, 601 
Elm St.. Norman, OK 73019. 
May 18 

• MANAGEMENT 
CONGRESS-Update '85. 
Sheraton Hotel, Brussels, 
Belgium. A briefing covering 
technological developments 
for those in the information 
management and micro- 
graphic industries. Contact 
Update '85. International In- 
formation Management Con- 
gress. POB 34404, Bethesda. 
MD 20817, (301) 983-0604. 
May 20-22 

• CAD TECHNOLOGY 
CAD 2001: The Countdown. 
Dallas, TX. Presentations on 
the future of computer-aided 
design. The fee is $900. 
Contact CAD Seminars Inc.. 
Suite 400, 1 50 East River- 
side. Austin. TX 78704. (512) 
445-7342. May 22-24 



• SOFTWARE AND 
HUMAN DEVELOPMENT 

Computer Software and 
Human Development Con- 
ference, Royal York Hotel. 
Toronto, Ontario. Canada. 
Held in conjunction with the 
Third Annual Software 
Panorama, this conference 
will examine the impact of 
software development on 
business, education, health, 
and agriculture. Contact 
Reuben Lando, The Software 
Developers Association, 
Suite 500. 185 Bloor St. E. 
Toronto. Ontario M4W IC8. 
Canada, (416) 922-1153. 
May 22-24 

• DISK STORAGE EXPO 
The 1985 International 
Videodisc, Optical Disk, and 
CD-ROM Conference and 
Exposition. London West 
Hotel, London. England. 
Workshops, presentations, 
and exhibitions. Contact 
Angela Suter, Meckler Com- 
munications, 1 1 Ferry Lane 
W, Westport, CT 06880. 
(203) 226-6967; in England, 
Alice laylor, Meckler Com- 
munications, c/o Eurospan. 3 
Henrietta St.. London WC2E 
8LU. England; tel: 01 
240-0856. May 29-31 

• MANAGE PROGRAMS 
Configuration Management 
of Software Programs, 
Washington. DC. Methods 
for controlling the costs of 
development, maintenance, 
and operation of software. 
Contact Stod Cortelyou, 
Continuing Engineering 
Education, George Washing- 
ton University. Washington, 
DC 20052, (800) 424-9773: 
in the District of Columbia. 
(202) 676-8520. May 29-31 

• COMPUTER INTER- 
FACING— Personal Computer 
and STD Computer Interfac- 
ing for Scientific Automa- 
tion. Virginia Polytechnic In- 
stitute and State University. 
Blacksburg. A hands-on 
workshop with participants 
wiring and testing interfaces. 
The fee is $450. Contact Dr. 



90 BYTE • APRIL 1985 



EVENT QUEUE 



Linda Leffel. C.E.C, Virginia 
Polytechnic Institute and 
State University. Blacksburg. 
VA 24061, (703) 961-4848. 
May 30-]une I 



]une 1985 

• LEARN TO BUILD 
PROGRAMS-First North 
American Summer School 
on Program Construction. 
Newport. Rl. Methods for 
the effective construction of 
software will be taught. Con- 
tact Teleprocessing Inc., 60 
State St.. Boston. MA 02109, 
(617) 367-6227. June 3-12 

• INTERFACES FOR 
SCHOOL LABS-lnterfacing 
for School Laboratories. 
Miami University. Oxford, 
OH. A workshop for sec- 
ondary-school and college 
teachers on the construction 
and use of interfaces for 
laboratory instrumentation. 
Contact Bill Rouse, 301 
McGuffey Hall, Miami 
University, Oxford. OH 
45056, (513) 529-2141. 

June 3-14 

• COMPUTER 
MAINTENANCE 
Independent Computer 
Maintenance. Halloran 
House. New York. NY. Con- 
tact Carol Every. Frost & 
Sullivan Inc., 106 Fulton St., 
New York. NY 10038, (212) 
233-1080. \une 5-6 

• OPTICAL-STORAGE 
CONFERENCE-First Annual 
Conference on Optical 
Storage for Small Systems. 
Biltmore Hotel. Los Angeles, 
CA. Contact Technology Op- 
portunity Conference, POB 
14817, San Francisco. CA 
94114-0817. (415) 626-1133. 
June 5-7 

• COMPUTERS FOR SALE 
Computer Supermarket, San 
Mateo County Fairgrounds. 
San Mateo, CA. Retailers, 
manufacturers, and dis- 
tributors will be selling hard- 



ware and software. Admis- 
sion is $7; children $3. Con- 
tact Microshows. Suite 203, 
1209 Donnelly Ave., Bur- 
lingame. CA 94010. (415) 
340-9113. \une 8-9 

• COMPUTER VISION 
CONFERENCE-Computer 
Vision and Pattern Recogni- 
tion Conference. Cathedral 
Hill Hotel. San Francisco. 
CA. Submitted and invited 
technical papers. Contact 
Computer Vision and Pat- 
tern Recognition. POB 639, 
Silver Spring, MD 20901, 
(301) 589-8142. \une 9-13 

• MUMPS MEETING 
The Fourteenth Annual 
Meeting of the MUMPS 
Users' Group. McCormick 
Center Hotel. Chicago. 1L. 
Tutorials, workshops, site 
visits, discussions, and ex- 
hibits. Contact MUMPS 
Users' Group. Suite 510, 
4321 Hartwick Rd„ College 
Park. MD 20740, (301) 
779-6555. June 10-14 

• ROBOTIC STRATEGIES 

Robot Manipulators. Com- 
puter Vision, and Intelligent 
Robot Systems. University of 
Stirling. Stirling. Scotland. A 
short course for profes- 
sionals emphasizing the 
development of strategies 
for the solution of robotic- 
sensing, spatial-reasoning, 
and manipulation problems. 
Contact Director of the Sum- 
mer Session, Massachusetts 
Institute of Technology, 
Room El 9-3 56, Cambridge. 
MA 02139. }une 10-14 

• NETWORK CONTROL 
AND MANAGEMENT-Net- 
work Management/Technical 
Control, Santa Clara Mar- 
riott. Santa Clara, CA. See 
April 18-19 for details. 

\une 12-13 

• CLINICAL COMPUTING 

Computing in Clinical 
Laboratories: The Fifth Inter- 
national Conference. Stutt- 
gart. Federal Republic of 

[continued] 




TM 



DISCOVER muLISP 

The Artificial Intelligence 
Package for Micros. 

muLISP includes: 

■ An integrated environment for A.I. program 
development. 

■ A high performance, pseudo-code compiler 
and interpreter for the LISP programming 
language. 

■ A resident, screen-oriented LISP editor and 
debugging system. 

Available for your IBM PC™, MS-DOS™, 
CP/M™, and Apple™ II SoftCard computers. 

We also offer muMATH™, the symbolic math 
calculator for micros. 

[771 /oft 

P.O.Box 11174, Honolulu, HI 96828-0174- (808) 734-5801 (AfterNoon PST) 
MC/VISA MCI ID: 241-7437 1985SoftWarehouse 



I'd like to know more about muLISP 
and muMATH. Please send me more 
information today. 



Founded 1979 



o 



Name. 



Address. 



City. 



State. 



Zip. 



Company. 
Position 



I 



APRIL I985 -BYTE 91 




100% FLAWLESS 
COPIES . . . 

. . . FAST! 



No need to tie up your valuable computer to duplicate 
diskettes . . . when VICTORY can provide you with a 
duplicator that will do the job flawlessly, and much 
faster. One button operation automatically formats, 
duplicates and verifies up to 8 diskette copies at the 
same time. 

VICTORY can supply you with literally dozens of 
standardized formats to match the protocol of virtually 
any current computer. In addi- 
tion, built-in utilities enable 
you to read or devise any for- 
mat you may require. If that's 
not enough, VICTORY can 
help you with unusual or 
unique formatting, serializing 
or copy-protecting problems. 

VICTORY duplicators are 
designed to be reliable. Each 
of the copy drives has a 
separate controller to increase 
copying throughput and 
ensure maximum uptime. 
VICTORY Duplicators use 
industry proven drives com- 
bined with 100% digital tech- 
nology . . . there are no 
analog circuits to slowly drift 
out of tolerance. 

Let us help free you from 
your disk-duplicating bottle- 
neck at a surprisingly 
attractive price. Write or call: 
VICTORY ENTERPRISES 
TECHNOLOGY, INC., 8910 
Research Blvd., Suite B2, 
Austin, Texas 78758— 
(512)450-0801. 





ss- W? 




^fff VICTORY 

yy ENTERPRISES 

^f Technology, Inc. 



EVENT QUEUE 



Germany. Topics on the 
agenda include databases, 
data presentation, and ex- 
pected developments. Dem- 
onstrations and exhibits. 
Contact PD Dr. Chr. 
Irendelenburg, Katharinen- 
hospital KG. Kriegsberg- 
strasse 60, D-7000 Stuttgart 
I , Federal Republic of Ger- . 
many; tel: (07 11) 20 34-4 
82. June 12-14 

• COMPUTERS IN 
CLINICAL LABS-Clinical 
Laboratory Computers. Sym- 
posium 1985, The Towsley 
Center. University of 
Michigan, Ann Arbor. Con- 
tact Dove Margenau. Office 
of Continuing Medical 
Education. The lowsley 
Center. Box 057, The Univer- 
sity of Michigan Medical 
School, Ann Arbor. MI 
48109-0010, (313) 763-1400. 
]une 12-14 

• INFO MANAGEMENT 
EXPO, CONFERENCE 

Info/West: The Western Infor- 
mation Management Exposi- 
tion and Conference, Con- 
vention Center, Anaheim. 
CA. TYade show for ex- 
ecutives and data-processing 
and management-informa- 
tion system managers. Con- 
tact Info/West. 999 Summer 
St., Stamford. CT 06905, 
(203) 964-8287. June 12-14 

• FORTH CONFERENCE 
The 1985 Rochester FORTH 
Conference. University of 
Rochester. Rochester, NY. 
The focus will be on soft- 
ware engineering and man- 
agement. Contact Ms. Maria 
Gress, Institute for Applied 
FORTH Research. 70 
Elmwood Ave., Rochester. 
NY 14611, (716) 235-0168. 
June 12-15 

• LOGICAL MACHINES 
CONFERENCE-The Second 
Annual Conference on Logic, 
Logic Machines, and Public 
Education. University of 
Houston-Clear Lake, Hous- 
ton. TX. Formal and infor- 
mal sessions, symposia, and 



workshops. Contact the 
Institute for Logic and 
Cognitive Studies. Univer- 
sity of Houston-Clear Lake, 
Box 269, Houston, TX 
77058, (713) 488-9274. 
June 13-15 

• INTERNATIONAL SHOW 
The International Computer 
Show, Trade Fair Center, Col- 
ogne, West Germany. More 
than 3 50 manufacturers 
from more than 18 countries 
are expected to display their 
wares. Contact Messe- und 
Ausstellungs-Ges.m.b.H. 
Koln. Messeplatz, Postfach 
210760, D-5000 Koln 21. 
West Germany; tel: (0221) 
821-1; Telex: 8 873426 mua 
d. }une 13-16 

• PC IN BIG APPLE 

PC Expo. Coliseum, New 
York. NY. Seminars and 
product displays. Contact PC 
Expo. 333 Sylvan Ave., 
Englewood Cliffs, N] 07632, 
(800) 922-0324; in New 
jersey, (201) 569-8542. 
)une 17-19 

• SOFTWARE FOR ENGI- 
NEERING-Engineering Soft- 
ware: Engsoft 85, The 
Fourth International Con- 
ference and Exhibition, Ken- 
sington Exhibition Centre. 
London, England. Exhibits 
and sessions of software for 
engineering. Contact Elaine 
laylor. Computational 
Mechanics Centre. Ashurst 
Lodge, Ashurst, Southamp- 
ton S04 2AA. England; tel: 
(042 129) 3223; Telex: 
47388 Attn. COMPMECH. 
}une 18-20 

• GRAPHICS IN SUNSHINE 
Computer Graphics '85 
West, Los Angles. CA. Con- 
tact National Computer 
Graphics Association, 8401 
Arlington Blvd.. Fairfax, VA 
22031, (703) 698-9600. 

)une 2 5-27 

• CAD TECHNOLOGY 

CAD 2001: The Countdown. 
Boston. MA. See May 22-24 
for details. \une 26-28 ■ 



92 BYTE • APRIL 1985 



Inquiry 396 



Our multi-mode HERMES printers shake hands 
with all kinds of computers. Even some you've 
never heard of. 




And for your IBM-PC™, 

we have created the fully 

compatible multi-mode 

HERMES PC-PRINTER 1 



Fully compatible with your IBM-PC™, tested with 
Easy writer™, Multiplan™, Lotus 1-2-3™ and other soft- 
ware packages, the HERMES PC-PRINTER 1 allows you 
to convert your personal computer to a heavy duty pro- 
fessional system. IBM-PC™ users who only pick the best 
will also appreciate: 

Its speed. Bi-directional, shortest path printing. 200 cps 
Data, 100 cps Near Letter Quality (single pass). 

Its resolution. Finest print quality available on a matrix 
printer. So good you can even print signatures. Bit 
mapping graphics in single, double and triple density 
modes. 

Its quality. Swiss high quality construction. Very high 
reliability for heavy duty use. 

Its versatility. Choice of printing styles with the 
complete IBM™ character set tables (226 chars.). Wide 
range of automatic sheet-feeders with 1 or 2 bins + 
envelopes, single document inserter, roll-holder and 
tractor. 

Its ease of use. Plug'n play installation. Plug it in, switch it 
on yourself. 

HERMES' 

The impressive printers 

Manufactured in Switzerland by HERMES PRECIS A INTERNATIONAL, 
CH-1401Yverdon. 

HERMES printers are distributed in Australia, Austria, Canada, Cyprus, Finland, 
France, Greece, Hong-Kong, Indonesia, Jordan, Kuwait, Lebanon, Macao, Malaysia, 
New-Zealand, Philippines, Saudi Arabia, Singapore, South Africa, South Korea, 
Spain, Sweden, Switzerland, Taiwan, Thailand, United Kingdom, USA, West 
Germany. 

Contact factory direct for OEM sales of print-heads and printer mechanisms. 





To receive a sample of the finest quality matrix print-out 
and additional information on the HERMES PC-PRINTER 1 
please return the coupon below, 

I 

| Please send me more documentation about your PC-PRINTER 

I 
I 
I 
I 

Send to: HERMES PRODUCTS, Inc. - Printer Division 

1900 Lower Road, LINDEN, NJ 07036, (201) 574 0300 




Name 



Title 



Company 



Street 



City 



State 



Zip 



Phone f 



J_ 



Inquiry 185 



APRIL 1985 -BYTE 93 



Three more firsts 
from the people who 
invented the wheel. 








,'■;: ■/' 






^cJj.V'?- ->>,-i 



XEROX 



From day one, Xerox and Diablo 
have been known as the two best 
names in daisywheel printers. And 
now there are three more in the 
Xerox line to choose from. 

The Xerox Advantage D-25 
Diablo printer turns out letter qual- 
ity documents quickly and quietly. 
And it does all that for the price of 
a dot matrix printer, 
"v j _ , ^ m At 80 



c.p.s., the D-80IF is the fastest 
daisywheel printer ever made by 
Xerox. It has a built-in double bin 
sheet feeder. As well as 
the capacity to handle up 
to 16 computers at once. 

And the D-36 spells 
reliability. It averages 4,000 hours of 
printing between maintenance calls. 

But Xerox didn't stop there. 
Each of these new machines is 
compatible with most computers 
market, including the 
IBM-PC. And they re 
all easy to use. 




They're also a part of Team Xerox,* 
so they can be serviced by the 
national Xerox service force and 

authorized service loca- 
tions across the country. 

So if you're looking 
for the latest in daisy- 
wheel printing technology, go with 
the people who've been in the busi- 
ness the longest. Call 1-800-833-2323, 
ext. 25, your local Xerox office, an 
authorized Diablo or Xerox dealer 
or send your business card to Xerox 
Corporation, Dept. 25192, EO. 
Box 24; Rochester, NY 14692. 

For more information from Xerox, 
circle 405 on the Reader Service card. 




*s<* 



5£EROX®, Diablo® and the identifying numbers herein are trademarks of XEROX CORPORATION, 
.„,. IBM'" is a registered trademark of International Business Machines Corporation. 



WHAT'S NOT 



Knife the Mac 



Ennui Associates has an- 
nounced MacKnifer, a 
hardware attachment that 
mounts on the side of your 
Macintosh and sharpens 
knives, scissors, lawn-mower 
blades— anything in your 
home that needs sharpen- 
ing. With MacKnifer's 
patented double-action 
grinding wheel, you can 
easily sharpen any utensil in 
less time than it takes the 
Mac to open a file. Accord- 
ing to the manufacturer. 
MacKnifer is so easy to use 
that you can operate it 
within 30 minutes of taking 
it out of the box. Turn your 
spare computing time into 



Nouveau-Chic Luggage 




extra cash with a knife- 
sharpening business on the 
side ... of your Macintosh. 
For more information on 



MacKnifer, contact Ennui 
Associates, 52 502 Marginal 
Ave.. Somnolencia, CA 
90541. 



The Spike Untermeyer 
Luggage Company man- 
ufactures hollow replicas of 
the most popular lap-size 
and transportable personal 
computers for use as travel 



bags by status-conscious 
travelers. For example, the 
Untermeyer Executive Port- 
folio resembles a Tandy 
Model 100, complete with 
movable (nonfunctional) 




keys. The Executive Portfolio 
flips open to reveal enough 
space for a pad. appoint- 
ment calendar, several pens 
and pencils, or a couple of 
peanut butter and jelly 
sandwiches for that quick 
executive snack. The 
Untermeyer Overnighter. 
easily confused with a Com- 
paq. TL or IBM portable 
computer, is perfect for that 
sudden business trip. 

Untermeyer luggage is 
painfully authentic. The 
Overnighter is exactly half 
an inch too large to fit 
under the average coach 
airline seat, and the bottom 
of the case is heavily 
weighted to ensure that nas- 
ty crack on the shins when 
you maneuver past the flight 
attendant. 

For more information, con- 
tact the Spike Untermeyer 
Luggage Company Inc., 442 
Glenwood Ave.. Prosaic, NJ 
22104. 



One for the Road 

Honda Corporation has 
announced the Trans- 
porter, the first truly trans- 
portable computer. With a 
few simple twists, you can 
transform the Transporter 
from a portable computer 
(with full keyboard. 24-line 
by 80-column display, and 
two microfloppy-disk drives) 
into a single-passenger auto- 
mobile. 

The Transporter runs on 
32 D-cell batteries (not in- 
cluded) with additional one- 
year battery backup for the 
ignition, which is in ROM 
(ride-only memory). Thus, if 
the Transporter won't start 
on a chilly winter morning, 
you can simply give it a 
cold boot to jog its memory. 

Although the Transporter 
is somewhat heavier than 
other portable computers, 
you can easily drive it 
through airport terminals. 
Service will be available 
through AAA (American 
ASCII Association), which 
provides pickup and 
delivery with no tote- 
charges. 

Options include the TP-100 
Printer Trailer, the 300- 
BeePS Modem, and a gen- 
uine Naugahyde keyboard 
cover. Honda has also an- 
nounced plans to release 
the Semi Portable, a 20- 
megabyte hard-disk system 
that transforms into an 
1 8-wheel tractor/trailer 
(assembly required). 

The Transporter is 100 per- 
cent compatible with the 
popular Toyota Corolla and 
runs on most operating 
roads. The cost is $5995. 
For more information, con- 
tact Honda Corporation Ltd., 
2 Duryea Drive, Minikin. Ml 
48101. 



96 BYTE • APRIL 1985 



New Arrival 



Home on the Database 



Celebrity Software, maker 
of the Howard Cosell 
Word Processor and the 
Michael Jackson Spread- 
sheet, has announced the 
Princess Di Database. If your 
data is a royal mess, this 
hierarchical database will ar- 
range things in a neat suc- 
cession for you. You can ob- 
tain output from the system 
every nine months, with 
three levels of security: 
Mum's the Word, Rumor 
City, and Tell the World. 

Available at supermarket 
checkout counters, the 
Princess Di Database is 
priced at $49.95 from 
Celebrity Software. 135 
Pachelbel Canyon, San 
Regales. CA 90342. 



New Mag 



High Press Technologies 
(HipJIech) has an- 
nounced a new publication, 
Personal Photocopying. Designed 
to make photocopiers less 
threatening for the average 
person, the magazine will be 
written in nontechnical lan- 
guage that explains PRINT 
PAUSE, and CANCEL in 
language that a layperson 
can understand. 

Articles in the first issue of 
PPC will include "1001 Ways 
to Make Money with Your 
Photocopier." "Paper Jam- 
Deadly Threat to Your Busi- 
ness," and "Big Gray: The 
Xerox Story." 

Based on research done in 
its own offices. Hipflech has 
also announced Constant 
Coffeemaking. For a one-year 
subscription to either 
magazine, send $2 5 to POB 
123123. South Banausic. Wl 
03458. 



ThinkFast Software has 
introduced a revolution- 
ary natural-language data- 
base designed for home 
management. MOM, the 
Model Management pro- 
gram, is a matriarchal 
database of home-related 
subjects that responds to 
plain-English queries. After 
entering information about 
your home, age, eating 
habits, and shoe size, you 
enter search phrases in the 

A Tciste of Security 



format "Where is the 
screwdriver?" After a quick 
pass through its files. MOM 
responds, "Right where you 
left it-behind the TV set." 
Enter the search phrase, 
"Where are my sneakers?" 
and MOM responds with 
lightning speed. "1 don't 
know where your sneakers 
are; I don't wear your 
sneakers." 

ThinkFast has also an- 
nounced a product for in- 




If merely erasing sensitive 
data is not enough for 
you, Soycure Systems of 
Tokyo has developed the 
ultimate in disk security. 
Made entirely of processed 
soybeans. Parasoya Disks 
are writable, readable, and 
edible. Parasoya disks con- 
tain 84 percent more pro- 



tein than average floppy 
disks and are available in 
5!4-inch (regular) and 
3!/2-inch (crunchy) formats. 

Available at computer and 
health stores everywhere. 
Parasoya Disks are priced at 
$50 per 10-pack from Soy- 
cure Systems. 1 TUfchuying, 
Tokyo. lapan. 



tegration with MOM, one 
that provides personal ad- 
vice and guidance. Decisions 
and Declarations (DAD) 
responds to the traumas of 
everyday living with such 
plain-English messages as, 
"You want to cry? I'll give 
you something to cry 
about!" and "Ask MOM." 

MOM and DAD are priced 
at $99 each from ThinkFast 
Software, Duitmy Way, 
Homeville, NC 28210. 

Keeping Time 
to Yourself 

Incognito, a low-profile 
time-management pro- 
gram for MS-DOS com- 
puters, combines an ap- 
pointment calendar with 
200 stock excuses for break- 
ing or avoiding social 
engagements. 

The Incognito calendar's 
avoidance categories in- 
clude: My Mate and I: The 
Car: Kids, Pets, and Rela- 
tives: Let Me Check With 
My . . . (accountant, boss, 
etc.); I'm Coming Down With 
. . . : and Previous 
Engagement. 

Incognito's Fib-Jogger utili- 
ty reminds you what you 
said to whom and tells you 
when you've ducked some- 
one more than a set 
number of times. The pro- 
gram also generates fake 
itineraries, resumes, and 
credit references. 

For your copy of In- 
cognito, send $395 to 
ApresHeures Computing, 70 
Main St.. Paulsboro. NH 
03458. (800) 123-4567. Call 
after 6 p.m. Please allow 10, 
maybe 12 weeks for 
delivery. 



APRIL 1985 -BYTE 97 



Texas Instruments announces 
Dr* L*S* Montejo Professional 




& 



% 



m 



Dr. L.S. Montejo, 
Cardiac Anesthesiologist, 
Boston, Massachusetts. 



j * 



2 



V- ~, 



k*l 






'A.;.w< 



i£-*E 



ikeii 



5s /-;v 




the 

Computing System* 



No two individuals work alike* TI had 
unique answers to help Dn L* S* Montejo 
keep his patients and his business healthy* 



"I used to walk out of the operating 
room with a clipboard and a chart," 
says Dr. L. S. Montejo. "Now I walk 
out with a floppy disk." 

Dr. Montejo is a prominent anes- 
thesiologist who is pioneering the 
use of personal computers in heart 
surgery. His unique idea for making 
quicker, more informed decisions 
led to a unique solution from TI: a 
portable PC he could talk to. Con- 
figured to his exact needs from the 
wide range of TI options. 

"Using TIs Speech Command," 
he says, "I can respond to drug 
reactions faster, with the PC mak- 
ing calculations as I speak to it. And 
my hands are free to do other things. 

"The information just flies by. 

But the computer organizes it, and 
by calling up color charts, I can 
make better decisions at a glance. It 
lets me provide better medical care." 

In his office, Dr. Montejo uses a 
desktop TI Professional Computer 
to keep the business side of his 
practice operating smoothly. 
"Having to wait on a computer is 
a waste of valuable time," he says. 
"TI runs software fast. And the TI 
screen has a lot better resolution 
than other monitors." 



His TI 855 printer also speeds up 
the paperwork. "We can use it to go 
from draft to letter quality imme- 
diately, and change typefaces very 
quickly by using the control panel 
instead of software commands." 

TI had what the doctor ordered 
to put together a complete PC sys- 
tem for his specific needs. Including 
a solution for a budding computer 
genius in his family. "My daughter," 
he says, "loves her Speak & Spell." 

TI has the right answers 
for the way you work* 

With TIs broad line of versatile 
computer products, you can put 
together a system unique enough 
to put your own name on it. Your 
TI dealer can provide you with 
just the right combination of 
hardware, software, service and 
support for your special needs. For 
more information and the location 
of your nearest TI dealer, call 
1-800-527-3500. 

Texas^* 
Instruments 

Creating useful products 
and services for you. 




From desktop, portable and briefcase PCs to minicomputers and a full line of printers, 
you can assemble a TI system as unique as you are. 



2775-06 

© 1985 TI 



-I > 



Sfc 



v '\»*- 



^x 



APRIL 1985 -BYTE 99 



BYTE 



Features 



Ciarcia's Circuit Cellar: IN JANUARY WE PRESENTED a real feast in the Features department; because 

Build the Home Run we had no theme section, we were able to publish 1 1 articles on a wide vari- 

Control System. ety f topics. This month, the significance of our theme on artificial intelligence 

Part 1: Introduction and the d th of covera g e j t required limited the space we had available for 

by Steve Ciama 102 , u .; fc . to , n ^ . . . ^ , 

features. Next month we 11 return with our usual number. 

? cXrtoWto 0DULA ' 2 113 As we hinted in the March Features introduction, this month Steve Ciarcia 

y o een oe ison begins a three-part project that he's wanted to build for some time. The Circuit 

b Ss'°h2 INT GRAPHICS TABLET 120 Cellar Home Run Contro1 s Y stem takes U P where steve ' s first P r °i ect of this 
y ames awey ^^ ^ q ^ some y ears a g ( see "Build a Touch Tone Decoder for Remote 

^^^^^^^^^^^^^^^^^^^ Control," December 1981, page 42). Imagine full programmable control over 

just about any outlet in your home. Lights can turn on and off automatically 
as you enter and leave a room. You can design a complex surveillance and 
security system that includes automatic emergency dialing. And you can phone 
home, check system status, and make modifications to the control system to 
suit your schedule. All in all, Steve was pretty happy with his original 1981 
design, but with recent technological advances and his eye for improvement, 
he developed the Home Run Control System to be a lot friendlier and deliver 
a lot more. 

In August 1984 the BYTE theme was Modula-2. Heralded by many as the 
language of the future, it also has detractors, some of whom point out that 
Modula-2 is only an upgrade of its Pascal ancestor with problems of its own. 
Colleen Roe Wilson's "Coprocessing in Modula-2" describes Modula-2's facility 
for the development of concurrent programs, one of its significant differences 
with Pascal. 

If you have a Zenith Z-100 and are interested in exploiting its graphics 
capabilities, you might want to build "A Million-Point Graphics Tablet" based 
on Koala Technologies' KoalaPad. James Hawley shows you how to add the 
appropriate components and interface it to the Z-100's S-100 bus. With his 
graphics tablet, you can use a stylus instead of a light pen for pinpoint con- 
trol over your drawings. 

— Gene Smarte, Managing Editor 



APRIL 1985 • BYTE 101 



w 




COPYRIGHT © 1985 STEVEN A. CIARC1A. ALL RIGHTS RESERVED. 




CIRCUIT CELLAR 



BUILD THE 

HOME RUN CONTROL 

SYSTEM 

PART 1: INTRODUCTION 

by Steve Ciarcia 




Energy management, convenience, 
and security in one package 



Six years ago I presented an article on building a computer- 
controlled security system using an SDK-85 experimenters 
board. To this day, I still get letters asking for software and 
material sources. Since home/industrial energy and security 
management have been and still are a major interest (and 
little has been published since then), that article remains a 
popular reference for students and experimenters. 
As I look back on it now, I realize that my first home-control computer was 
engineered properly but was about as user-friendly as ENIAC. It's time to re- 
address the subject, bring the design up to date, and make this home-control 
system a real friend. 

I conceive of this project as a simple computer control system equally ap- 
plicable in the home or factory. The choice of input sensors and output con- 
trols designates its primary application. 

Whether for industrial or home use, control systems function similarly. 
Specific input data is analyzed and compared to a predetermined set of ac- 
tion parameters. If a favorable comparison exists, the designated task is per- 
formed. For example, if a light is to be turned on at 2:00 p.m., the control 
system sees a negative request-affirmation comparison until that time. At that 
instant, the output of the control system turns on the light and then continues 
with the next request. In a control system configured as an alarm, the inputs 
would be from contact closures, and the outputs would be to bells, automatic 
dialers, and other such items. 

Whatever the application, control systems are designed to be either open 
loop or closed loop in function. An open-loop controller simply outputs its 
decision and forgets about it. Industrial control systems, on the other hand, 
require more assurance that the action has been performed. They close the 
loop by analyzing feedback signals from the operation being controlled. If 

{continued) 

Steve Ciarcia (pronounced "see-ARE-see-ah") is an electronics engineer and computer 

consultant with experience in process control digital design, nuclear instrumentation, and 

product development. He is the author of several books about electronics. You can write to 

him at POB 582. Glastonbury, CT 06033. 



PHOTOGRAPHED BY PAUL AVIS. STYLED BY IANE SUTTON 



APRIL 1985 • BYTE 103 



CIRCUIT CELLAR 



a heating element is turned on, a cur- 
rent sensor in series with the ele- 
ment's power source or a temperature 
sensor next to the element indicates 
positively that the action has been 
performed. 

It is this open-loop versus closed- 
loop configuration that, for most ap- 
plications, defines whether a con- 
troller is consumer or industrial quali- 
ty. I beg to differ with the trend, 
however, and feel that it is about time 
a system successfully bridged the gap. 
The Circuit Cellar Home Run Control 
System (HCS) is the result. 

My intention is not to directly ad- 
dress the industrial market with my 
HCS. Rather, I will apply some of my 
industrial process-control experience 
to produce a design that offers flex- 
ibility and reliability as a home-control 
and energy-management system. If 
you are in the process-control busi- 



ness, you will soon realize that its 
sophistication and cost-effectiveness 
make it ideal for dedicated industrial- 
control applications where you might 
ordinarily use an expensive program- 
mable controller. 

Home Run Control System 

Practically all commercial home- 
control systems use BSR X-10 remote- 
control power modules. They are sold 
under a variety of trademarks: Plug- 
N-Power, Sears Home Control BSR 
X-10. and GE HomeMinder. These 
remotely controlled power switches 
turn the power on or off to lights and 
appliances that are plugged into 
them. A separate controller activates 
the individual switches by transmitting 
a coded command sequence through 
the power lines. Command controllers 
are available that perform timed or 
telephone-designated activations. 



The Plug-N-Power or Sears Home 
Control system is quite adequate for 
most open-loop applications. An at- 
tic fan that needs to run two hours a 
day to keep the attic cool could use 
a timer-activated BSR module. Simply 
set the command unit to turn the fan 
on from 1 :00 to 3:00 every afternoon, 
for example. Of course, on really hot 
days the attic fan will need to run 
longer, and on rainy days you'll be 
wasting power. If you compensate 
(close the loop) by changing the run 
time each day. it is hardly a home- 
control system. Instead, it is merely a 
more convenient manual power 
switch. 

The solution is to use a true closed- 
loop control. By adding a 120- to 
1 3 5-degree thermostatic switch in the 
attic, the control system can know 
when the attic is hot and has to be 
exhausted. A 90-degree thermostatic 



16 DIGITAL 
INPUTS 



8 DIGITAL 
OUTPUTS 

(I 



TERMINAL MODEM 



6802 
MICROPROCESSOR 



16K BYTES 



u 



PARALLEL 
I/O 



n 



n 



24K BYTES 
PROGRAM ROM 



KEYBOARD 
ENCODER 




24-LINE BY 40- 
CHARACTER 
VIDEO-DISPLAY 
GENERATOR 



PARALLEL ENCODED OR 
SCANNED MATRIX KEYBOARD 



115VAC 

POWER 

LINE 







POWER 
SUPPLY 




BATTERY 
BACKUP 


i 














BSR 
TRANSMITTER 











COMPOSITE 
VIDEO TO 
MONITOR 



RF 

VIDEO TO TV 



Figure 1: A block diagram of the Circuit Cellar Home Run Control System. 



104 BYTE • APRIL 1985 



CIRCUIT CELLAR 



switch is also wired in. When the at- 
tic temperature reaches 1 3 5 degrees, 
the fan turns on. It turns off when it 
gets to 90 degrees. The BSR control 
modules could still provide the on/off 
power to the fan, but the control deci- 
sion is more adequately defined by 
directly monitoring the temperature 
with heat sensors than by simple 
timed activation. This way. the fan will 
stay on as long and often as needed. 
On cloudy or rainy days, the fan might 
not come on at all. (I am aware that 
special thermostatically controlled 
attic-fan switches can accomplish this 
specific task without a computer. I am 
not trying to find a specific solution 
but rather to demonstrate the two 
control approaches as they apply to 
general-purpose control systems.) 

The immediate answer to open-loop 
BSR control is to add more intelli- 
gence in the form of a computer. Pres- 
ently, many control systems on the 
market use personal computers. Using 
the parallel I/O (input/output) and 
display capabilities of the personal 
computer with a specialized BSR 
transmitter card installed, many com- 
panies have successfully designed just 
the kind of home-control system I'd 
want. However, such a seemingly 
economical approach uses the entire 
function of the computer. You can 
have a $2 500 Apple II home con- 
troller or suffer when the entire 
system grinds to a halt because 
you've loaded a word-processing pro- 
gram. Besides, it can cost $10 a month 
just to run an IBM PC 24 hours a 
day— and don't forget the cost of the 
uninterruptible power supply 

Ultimately, successful computer- 
based energy-management and 
home-control systems must have 
completely dedicated functions, lay- 
ing to time-share tasks among games, 
word processing, and environmental 
control is simply more complicated 
than it's worth. The age of specialized 
computers is at hand. 

The Circuit Cellar HCS is designed 
specifically for that task. It is a single- 
board microprocessor-based con- 
troller that uses a combination of 
both open- and closed-loop control 
design. It takes advantage of the cost- 



effective BSR control modules and 
fully duplicates any of the manual, 
automatic, or timed functions present- 
ly supported in the BSR product line. 

The Circuit Cellar HCS closes the 
control loop with 16 hard-wired digital 
input and 8 TTL (transistor-transistor 
logic)-compatible hard-wired output 
lines. Relays, contact closures, motion 
detectors, and thermostatic switches 
can be connected to these I/O lines 
for direct "sense and respond" ac- 
tivities. It can also accommodate 48 
BSR modules. Figure 1 is a block 
diagram of the HCS. 

The.6802-based HCS is a stand- 
alone control unit (see photo 1) com- 
plete with battery backup. Photo 2 
shows the prototype circuit board that 



mounts inside the control unit. The 
HCS communicates with the user 
through either a serial terminal or 
video monitor and keyboard. In the 
terminal mode. RS-232C communica- 
tion is at 75 to 4800 bits per second 
(bps). 

The HCS optionally supports an in- 
tegral video-display generator to pro- 
vide a 24-line by 40-character display 
either directly to a composite video 
monitor or to a television set. A 
keyboard encoder allows connection 
of either an Apple Il-compatible 
parallel-encoded keyboard or an un- 
encoded scanned-matrix keyboard. 
Finally, the HCS can communicate 
with other systems. An additional con- 

[contimed] 




Photo I : Home Run Control System stand-alone control unit. 




Photo 2: HCS prototype circuit board. 



APRIL 1985 -BYTE 105 



CIRCUIT CELLAR 



nector has been provided to which an 
auto-answer modem can be attached 
(such as the Hayes 300 or 1200). 
When the modem answers and the 



CTS line is activated, the HCS switches 
its display to the modem data rate 
and allows the remote calling terminal 
to access and control the HCS. Unlike 



FRI APR 



8:04 PM 



ALARM SYSTEM ON 

MOTION DETECTED IN STOCK ROOM 

LIGHTS TURNED ON 

SILENT ALARM 

SECURITY NOTIFIED 



1111111 
1234567890123456 

1 BSR ON/OFF A 1111 

2 BSR DIMMER A 

3 ESR CYCLER A 

4 ESR OtVOFF B 

5 BSR ON/OFF C 

6 DIRECT OUT 

7 MESSAGES 1 

3 SUPERKEY 



Photo 3: A typical status-display screen. At the top, the screen shows that an alarm 
has been triggered and that several preprogrammed actions have taken place. The bottom 
half of the screen indicates the status of all the output drivers. 



A REPORT, CREATE, OR DELETE EVENT 

B SET HOUSE CODE C MANUAL ON/OFF 

D MANUAL RESTORE E AUTO RESTORE 

F RESTORE BY INPUT G SET DATE AND TIME 

H CLOCK ACCURACY I TIME FORMAT 

J TRACK SUNSET K DAYLIGHT SAUINGS 

L LIST EUENTS M SET LIST SPEED 



P INPUT STATUS 



Q HOLD BY INPUT 



R DEFINE SUPERKEY S BYPASS MODULE 



T DELAY EUENT 



U SET BEEPER TIME 



U SET EUENT TO EXECUTE ONLY ONCE 
ENTER LETTER OF CHOICE <A-Z>? ■ 



Photo 4: The editing menu. You reach this screen from the status-display screen by 
pressing the space bar. All the functions will be explained in subsequent articles. 



auto-answer BSR units that allow com- 
mand input only, this option lets you 
view the complete status of all I/O and 
make program changes as well. 

The HCS can schedule to turn out- 
puts on or off based on combinations 
of the following conditions: 

a. time of the week (e.g., Tliesday 
at 4:32) 

b. time of the month (e.g., 22nd at 
11:20) 

c. input line going high 

d. input line going low 

e. turn off after time delay (e.g., re- 
main on for 15 minutes) 

f. one-time action triggered by 
specific input or time 

When you want to create an event, 
various combinations of inputs and 
time can be specified. They are 

1 . ON at specified time 
OFF at specified time 

2. ON at specified time 
OFF when specified input 
occurs 

3. ON when specified input occurs 
OFF at specified time 

4. ON when specified input occurs 
OFF when specified input 
occurs 

or 
ON while specified input occurs 

5. ON when specified input occurs 
OFF after period of time 

Lights can be dimmed to one of 16 
levels. This allows mood control, night 
light, or power conservation opera- 
tion. Tfext messages of variable size 
can be scheduled as announcements 
or reminders. And the HCS uses less 
than 5 watts (W). 

The processor and clock continue 
to operate during a power failure: 
scheduled events are noted in mem- 
ory. When AC power is restored, the 
HCS restores all modules to the state 
they would be in if power weren't in- 
terrupted. 

The on-time of desired modules, 
usually lights, tracks the sunset. This 
alleviates having to adjust the 
schedule many times per year as the 
sunset changes. Included is a com- 



106 BYTE • APRIL 1985 



CIRCUIT CELLAR 



mand to compensate sunset times for 
daylight saving. 

The HCS can optionally restore the 
status of all modules every four 
minutes. This is useful in commercial 
applications where a module may be 
turned off by a transient or non-HCS- 
generated command. Restore can 
also be triggered by an input line 

Modules can be bypassed for a 
selected interval (up to 44 days). This 
can be used for vacations or holidays. 
It also allows an input occurrence to 
lock out specified modules. Clock ac- 
curacy can be adjusted by software to 
within one second per day. And, final- 
ly, the entire event schedule can be 
listed to the serial port. The speed of 
the listing can be controlled to allow 
for printing of the schedule. 

The HCS is designed to communi- 
cate in English and not in a program- 
ming language. All control sequences 
are prompted through menus, and 
any input errors simply cause the sys- 
tem to revert back to the status dis- 
play or the option menu. 

The HCS is designed around the 
concept of an "event." An event has 
four elements: the type of event the 
device on which the event will 
operate, the trigger that starts the 
event and the trigger that ends the 
event. The type of event is defined in 
terms of its "driver." These include 
Message Driver, BSR On/Off Driver, 
BSR Cycle Driver, BSR Dimmer Driver, 
Direct Output Driver, and Superkeys. 

The Message Driver displays a mes- 
sage on the terminal. The BSR On/Off 
Driver turns a BSR control module on 
or off. The BSR Cycle Driver causes 
a specified BSR module to cycle on 
and off periodically at a rate deter- 
mined by the user. The BSR Dimmer 
Driver changes the brightness of a 
BSR lamp module. The Direct Output 
Driver sets the output level on the 
eight direct output lines. Superkeys 
are 16 function keys that, when 
selected by a three-button sequence, 
trigger a predefined event sequence 
(such as turning on specific BSR 
modules, displaying particular mes- 
sages, or setting specific outputs). The 
quantity of events is limited only by 

[continued] 



Figure 2: Programming the HCS to turn the attic fan on. 
FRI APR 5 10:09 PM 



1111111 
1234567890123456 

1 BSR ON/OFF A 

2 BSR DIMMER A 

3 BSR CYCLER A 

4 BSR ON/OFF B (When using a terminal, the raised- 

5 BSR ON/OFF C dot graphics character is printed 

6 DIRECT OUT — as a " - " instead) 

7 MESSAGES 

8 SUPERKEY 

(a space entered on the keyboard brings up the editing menu) 

A REPORT.CREATE.OR DELETE EVENT 

B SET HOUSE CODE C MANUAL ON/OFF 

D MANUAL RESTORE E AUTO RESTORE 

F RESTORE BY INPUT G SET DATE AND TIME 

H CLOCK ACCURACY I TIME FORMAT 

J TRACK SUNSET K DAYLIGHT SAVINGS 

L LIST EVENTS M SET LIST SPEED 

N "TOTAL RESET** O LINES PER SCREEN 

P INPUT STATUS Q HOLD BY INPUT 

R DEFINE SUPERKEY S BYPASS MODULE 

T DELAY EVENT 

U SET EVENT TO EXECUTE ONLY ONCE 

ENTER LETTER OF CHOICE (A-Z)? A 

* MEANS EVENTS ARE SCHEDULED 

1111111 
1234567890123456 

1 BSR ON/OFF A ----- 

2 BSR DIMMER A - 

3 BSR CYCLER A --- 

4 BSR ON/OFF B - (No events are 

5 BSR ON/OFF C presently scheduled) 

6 DIRECT OUT 

7 MESSAGES -- 

8 SUPERKEY - 

ENTER DRIVER NUMBER (1-8)? 1 

ENTER MODULE NUMBER (1-16)? 1 

THIS DRIVER/MODULE NOT IN USE 

CREATE OR DELETE EVENT (C/D)? C 
374 CHARACTERS AVAILABLE 

ENTER NAME OF MODULE 

ONE RETURN STARTS NEW LINE 
AND TWO RETURNS ENDS 
?ATTIC FAN 

1 ON AT SPECIFIED TIME 
OFF AT SPECIFIED TIME 

2 ON AT SPECIFIED TIME 

OFF WHEN SPECIFIED INPUT OCCURS 



3 ON WHEN SPECIFIED INPUT OCCURS 
OFF AT SPECIFIED TIME 



[continued] 



APRIL I985 -BYTE 107 



CIRCUIT CELLAR 



By selecting 



different options 
you can program 
the HCS to perform 
specific tasks. 



the available RAM (random-access 
read/write memory). (Even though the 
Superkeys, messages, and outputs are 
not BSR devices, I refer to each of 
their separate events as modules to 
be consistent with BSR terminology.) 

The HCS has two display modes: 
status and editing. The status display, 
shown in photo 3, is the normal oper- 
ating display of the HCS. At the top 
is the current date and time. Below 
that is an area where any messages 
will be displayed when activated. At 
the bottom is the actual real-time 
status of all output drivers presented 
as an 8-driver by 16-module display 
matrix. If no action has been defined 
for a particular module, a raised dot 
is displayed. If an event has been pro- 
grammed for a particular module, a 
"0" indicates that it is currently off; 
a "I " indicates that it is currently on. 
The display updates in real time as 
the modules change state or the clock 
updates. 

Pressing the space bar displays the 
editing menu (see photo 4). By select- 
ing the different options presented in 
the menu, you can program the HCS 
to perform the specific tasks you wish. 
Controlling the attic fan with two 
thermostatic switches attached to in- 
put lines I and 2 respectively is a rel- 
atively simple procedure. Figure 2 
shows what appears on the display 
screen as we program that event. 

The fan will start when input line 1 
goes low (it can be redefined for 
reverse polarity) and will go off when 
line 2 goes low. Perhaps you want to 
know when the fan is on (besides re- 
membering that driver I /module I is 
the fan and looking at the status dis- 
play), so we'll add a message defined 



4 ON WHEN SPECIFIED INPUT OCCURS 
OFF WHEN SPECIFIED INPUT OCCURS 

5 ON WHEN SPECIFIED INPUT OCCURS 
OFF AFTER PERIOD OF TIME 

ENTER NUMBER OF ON/OFF 
COMBINATION (1-5)? 4 

ENTER INPUT # FOR ON (1-16)? 1 

ENTER INPUT # FOR OFF (1-16)? 2 

ATTIC FAN 
1 INPUT# 1 INPUT# 2 



(Entering the same input # for 
both the ON and OFF trigger 
in Item 4 results in "ON WHILE 
SPECIFIED INPUT OCCURS") 



ENTER INPUT # FOR ON (1-16)? 



FRI APR 5 10:11 PM 



(More inputs can be added to specify 
the same BSR module function; to exit, 
simply enter a return and the status 
display will resume) 



1111111 
1234567890123456 

1 BSR ON/OFF A - -- 

2 BSR DIMMER A (Status display now 

3 BSR CYCLER A ----- shows driver 1 module 

4 BSR ON/OFF B - ----- 1 programmed but 

5 BSR ON/OFF C - - inactive) 

6 DIRECT OUT 

7 MESSAGES 

8 SUPERKEY - 



Figure 3: Programming the HCS to print a message when the fan is on. 
* MEANS EVENTS ARE SCHEDULED 

1111111 

1234567890123456 

1 BSR ON/OFF A * 

2 BSR DIMMER A 

3 BSR CYCLER A -... 

4 BSR ON/OFF B 

5 BSR ON/OFF C 

6 DIRECT OUT ----- 

7 MESSAGES -- 

8 SUPERKEY ----- 

ENTER DRIVER NUMBER (1-8)? 7 
ENTER MODULE NUMBER (1-16)? 1 
THIS DRIVER/MODULE NOT IN USE 
CREATE OR DELETE EVENT (C/D)? C 

1 ON AT SPECIFIED TIME 

OFF AT SPECIFIED TIME , .. .. 

[continued) 



108 BYTE • APRIL 1985 



CIRCUIT CELLAR 



2 ON AT SPECIFIED TIME 

OFF WHEN SPECIFIED INPUT OCCURS 

3 ON WHEN SPECIFIED INPUT OCCURS 
OFF AT SPECIFIED TIME 

4 ON WHEN SPECIFIED INPUT OCCURS 
OFF WHEN SPECIFIED INPUT OCCURS 

5 ON WHEN SPECIFIED INPUT OCCURS 
OFF AFTER PERIOD OF TIME 

ENTER NUMBER OF ON/OFF 
COMBINATION (1-5)? 4 

ENTER INPUT # FOR ON (1-16)? 1 

ENTER INPUT # FOR OFF (1-16)? 2 

502 CHARACTERS AVAILABLE 

ENTER MESSAGE 

ONE RETURN STARTS NEW LINE 
AND TWO RETURNS ENDS 
? 

THE ATTIC FAN IS ON 

1 INPUT* 1 INPUT* 2 

THE ATTIC FAN IS ON 

ENTER INPUT # FOR ON (1-16)? (just return to exit) 
FRI APR 5 10:12 PM 



1111111 
1234567890123456 

1 BSR ON/OFF A 0-- 

2 BSR DIMMER A -.-.- 

3 BSR CYCLER A ~~ 

4 BSR ON/OFF B (The two zeros indicate that the 

5 BSR ON/OFF C ----- modules are defined but OFF) 

6 DIRECT OUT 

7 MESSAGES - 

8 SUPERKEY 

(If we close the contact on input line #1, the following happens.) 
FRI APR 5 10:15 PM 
THE ATTIC FAN IS ON 

(This listing is spaced to show 
the full 24-line display) 



1111111 
1234567890123456 

1 BSR ON/OFF A 1-- 

2 BSR DIMMER A 

3 BSR CYCLER A 

4 BSR ON/OFF B ------ 

5 BSR ON/OFF C 

6 DIRECT OUT ------ ----- 

7 MESSAGES 1 

8 SUPERKEY - 






As I use the HCS 
and find certain 
functions or displays 
I want revised, some 
of them may change. 



to trigger from the same events to say 
"the fan is on." 

We can create an event at this point 
by simply typing "A." The display that 
results is shown in figure 3. 

There is a lot more to this control 
system than the simple example in 
figure 3 illustrates. You probably no- 
ticed functions such as Restore, 
Sunset Adjust, Delay, Bypass, and 
Hold in the editing menu. Eventually, 
I'll get to explaining them all and il- 
lustrating their use. 

One Parting Comment 

The HCS is an evolving design. This 
is a three-month project that is being 
written over the course of three 
months. While the hardware design is 
fixed and printed-circuit boards are 
checked out, software is constantly 
evolving and more features are being 
added. Photos of the menus, status 
displays, and other items are taken at 
a specific time in the evolution of the 
software. As I use the HCS and find 
certain functions or displays that I 
want revised, some of them may 
change. 

User-friendliness is one area. In 
reviewing some of the higher-volume 
but lower-functioning control systems 
such as GE's HomeMinder, the em- 
phasis is on graphics and simple user 
interfacing. If you want to control a 
lamp on the HomeMinder, you look 
for the picture of a lamp and manip- 
ulate it on the screen. 

I configured HCS to be a high-level 
controller with much less emphasis 
on pretty graphics. However, many of 
the professional software people who 
have seen HCS believe it would have 

{continued) 



APRIL 1985 -BYTE 109 



CIRCUIT CELLAR 



a much wider audience if it had some 
"paint-by-numbers" appearance. Con- 
sequently, they plan to support it in- 
dependently. A HomeMinder-like 
graphics package is presently being 
written for the IBM PC by third par- 
ties. It will connect to the HCS through 
the terminal I/O port. Hopefully I'll 
have a picture of it in operation by the 
third month. 

While I'll live without Alice-in- 
Wonderland control software, I was 
bitten by the large-system interface 
bug and decided to take advantage of 
big-system functions. The HCS op- 
tionally includes an upload/download 
capability to the IBM PC (eventually 
for other computers). The complete 
command and control sequence resi- 
dent in the HCS can be uploaded 
serially to the PC for storage on disk. 
A download provision reprograms the 
HCS with that control sequence. 

This storage capability allows the 
user to run the HCS with various con- 
trol sequences loaded from disk. A 
"training" session debugs the se- 
quence and then it is stored on disk 
for later retrieval. Industrial users who 
change program sequences frequent- 
ly are the prime beneficiaries, but new 
tools often produce new applications. 
This function is also accessible via the 
HCS's modem port, and Home Run 
can be completely reprogrammed by 
telephone. (Perhaps you have a vaca- 
tion home. Simply call ahead and let 
the HCS make it a warm and cozy 
arrival.) 

Experimenters and 
OEM Users 

As always, I try to support the com- 
puter experimenter by providing 
sources for many of the components. 
The Circuit Cellar Home Run Control 
System is a single-board design suit- 
able for OEM applications as well. It 
is available in various configurations 
that are all ultimately upgradable to 
the same potential. 

If you plan on building the unit from 
scratch, good luck and take heart. 
Send me a picture of your board, and 
I'll send you a free hexadecimal dump 
(16K bytes) of the control software, 
provided it is for noncommercial 



private use. I'll supply the code on 
two 2764 EPROMs (erasable pro- 
grammable read-only memories) and 
a manual for $32 (postpaid in the 
U.S.). Add $7 for overseas. 

Circuit Cellar Feedback 

This month's feedback begins on 
page 408. 

Next Month 

This is a three-part article. Next 
month, I'll describe the hardware in 
detail, hopefully to the extent that you 
can build your own HCS. The third 
part will emphasize the software and 
demonstrate a typical control appli- 
cation. ■ 

ROBOTIC PROPS (counterclockwise from 
upper left): I. Cybot Inc., 12 510 1 28th 
Ave. NE. Kirkland, WA 98034. 2. Microbot 
Inc. 45 3 Ravendale Dr., Mountain View, 
CA 94043. 3. Haikato Robotics Ltd.. 
1580 Lincoln St., Suite 950, Denver, CO 
80203. 4. Heath Co., Hilltop RcL St. 
Joseph, Ml 49085. 5. RB Robot Corp., 
14618 West 6th Ave., Golden. CO 80401. 
6. RSI Inc. (Robotics Systems International 
Ltd.), 9865 West Saanich Rd.. RR2, Sydney, 
British Columbia V8L 3SI, Canada. 7. 
Hubotics Inc. 63 52-D Corte Del Abeto, 
Carlsbad, CA 92008. 8. Rhino Robots 
Inc. POB 4010, Champaign. 1L 61820. 




SET PROPS: Sturbridge Yankee Work- 
shop Inc. Kettleford Korner, Bedford, NH 
03102. Britches of Concord Inc., I 
Eagle Square, Concord, NH 03301. Genie 
Vacuum Cleaner Co., 93 South Maple St.. 
Manchester, NH 03103. 

Special thanks to Bill Summers and Leo Taylor 
for their software expertise. 



The following items are available from 

The Micromint Inc. 

2 5 lerrace Dr. 

Vernon, CT 06066 

(800) 63 5-3355 for orders 

(203) 871-6170 for information 

1 . Home Run HCS— Complete assembled sys- 
tem with enclosure and Apple-compatible 
keyboard HCS01. $589 

2. Home Run HCS-Populated PC board. 
Assembled and tested PC board. No 
enclosure or keyboard HCS02. $429 

3. Home Run HCS-Video-based kit. Includes 
PC board and all components except 
enclosure, keyboard, and serial-interface 
components (ICI6, IC17. IC20, and two 
DB-2 5 connectors) HCSV05, $329 

4. Home Run HCS- terminal-based kit. 
Includes PC board and all components ex- 
cept video-display processor (IC22, IC2 5, 
and IC26). No keyboard, enclosure, or RF 
modulator HCST06, $289 

5. 8K-byte static-RAM upgrade. Increases 
RAM to 16K bytes HCS20. $35 

6. Apple Il-compatible ASCII-encoded key- 
board HCS21. $79 

7. Wall transformer/transmitter module 
(available separately) HCS22, $40 

All kits and assembled units include 
operators manual, power supply with wall 
transformer/transmitter module, and 8K 
bytes of RAM. AH units are supplied without 
keyboard encoder chip (not necessary when 
using encoded keyboard, ICI 8— optionally 
available). All item numbers that list 
enclosures also include backup battery 
holder (6 "C" cells), less batteries. Serial-port 
and video-display-processor upgrades for 
items 3 and 4 and various other components 
are also available. 

Please include $8 for shipping and handling 
in the continental United States, $12 else- 
where. New York residents please include 8 
percent sales tax. Connecticut residents 
please include 7.5 percent sales tax. 

Editor's Note: Steve often refers to previous 
Circuit Cellar articles. Most of these past ar- 
ticles are available in book form from BYTE 
Books. McGraw-Hill Book Company, POB 
400, Hightstown, NJ 082 50. 

Oarcia's Circuit Cellar, Volume I covers articles 
in BYTE from September 1977 through 
November 1978. Volume 11 covers December 
1978 through lune 1980. Volume III covers July 
1980 through December 1981. Volume IV 
covers January 1982 through June 1983. 



To receive a complete list of Ciarcia's Cir- 
cuit Cellar project kits, circle 1 00 on the 
reader-service inquiry card at the back 
of the magazine. 



110 B YTE • APRIL 1985 



The new HERCULES 
Color Card « 




gives you the 

parallel port 

IBM forgot-for $ 1 more! 



The new Hercules Color Card gives you these five 
important features in a color graphics card. 

1. Full IBM color card compatibility. 1 Any program that 
runs on IBM's color card will run on the new Hercules Color 
Card at the same resolution. 

2. A parallel printer port — standard on the Hercules 
Color Card, but forgotten by IBM on theirs. 

3. It's short. The pint-sized Hercules Color Card fits in 
the short slot in an XT or Portable. 2 And it's AT™ compatible. 

4. It can work in your system at the same time as the 
famous high resolution Hercules Graphics Card. 3 And it will 
continue to work backed by our 2 year warranty. 

5. Low price. At a suggested list price of $245, the 
Hercules Color Card is only $1 more than IBM's card. 4 And 
our Graphics Pak™ saves you even more money when you 
buy both Hercules cards at the same time. 

Call 1 800 532-0600 Ext 432 for the name of the Hercules 
dealer nearest you. See why the company that made the 
first graphics cards for the IBM PC still makes the best. 

Hercules. 
We're strong 
on graphics. 





IBM Mono IBM Color Hi-Res 
Display Display Text 
Compatible Compatible 


720x348 

Hi-Res 

Graphics 


320x200 

Color 

Graphics 


640 x 200 

B&W 

Graphics 


Parallel 
Printer 
Port 


Hercules 

Color 

Card 


■ 




■ 


■ 


■ 


Hercules 
Graphics 
Card 


■ ■ 


■ 






■ 


IBM 

Mono 

Card 


■ ■ 








■ 


IBM 
Color 
Card 


■ 




■ 


■ 





Address: Hercules, 2550 Ninth St. Berkeley, C A 94710 Ph:415 540-6000 Telex:754063 Foreign distributors: Compuserve/Canada: Reflex/ 
U.K.; Computer 2000/W. Germany; Edisoft/ France; Imagiheering/ Australia; Holland Info Products/Holland: DataTeam/Scandinavia 
Trademarks/Owners: Hercules, Graphics Pak/Hercules Computer Technology; IBM, AT/ International Business Machines Notes; (1) An 
adapter is supplied for composite video. (2) The IBM Color/Graphics Monitor Adapter must be removed from the Pur fable before the 
Hercules Color Card is installed. (3) Model GB101 or later. (4) Based on the list price as of 7.1.84 for the IBM Color/Graphics Monitor Adapter. 



Inquiry 184 



APRIL 1985 'BYTE 



III 



Imagine 





I 




Clipper introduces you to the time of your life. 



line is your most 



a time, every tune you 



valuable commodity. run a program. With piler for dBASE III was 

Because how you Clipper, once you've just a matter of time. 

spend your time, is how debugged your source Call your dealer or our 

you live your life. code, it's compiled into toll free 800 number 

At Nantucket, we more efficient machine and ask for Clipper. 

believe you should live code. Your program 

life to the fullest. runs without the time- 
Clipper, the first true consuming overhead of 

compiler for dBASE redundant translation. 



e to the fullest. 
Clipper, the first I 
Dmpiler for dBASE 
l; M is a timely exan 



Jipper compiles 



pie. Now, dBASE com- your existing and future 
piled by Clipper runs 2 dBASE HI programs, 
to 20 times faster than 
dBASE with its stan- 
dard interpreter. 
A dBASE interpreter" 



source code one line at 



Then qo make the 



20456 Pacific Coast Hwy., Malibu, Ca. 90265 (800) 556-1234 ext. 225. In California (800) 441-23 



by Colleen Roe Wilson 



The key to writing 
concurrent programs 
is coordination 



Coprocessing 
in Modula-2 



One of the main differences 
between Modula-2 and its 
ancestor, Pascal, is that 
Modula-2 contains specific program- 
ming constructs to permit the devel- 
opment of real-time concurrent pro- 
grams. Thus, you can use Modula-2 to 
write operating systems and other 
low-level software instead of using as- 
sembly language the language in 
which operating systems are tradi- 
tionally written. 

Concurrency 

Truly concurrent programs execute at 
exactly the same instant in time- 
implying the use of separate com- 
puters. True concurrency occurs in 




distributed processors such as those 
found in control systems and other 
real-time applications. 

When several people use a single 
computer, however, concurrency refers 
to interleaved execution. Such pro- 
gramming is at the heart of large time- 
sharing systems, where many users on 
a single computer can run programs 
at the same time. Each person per- 
ceives only the execution of his own 
program, while the operating system 
performs a juggling act partitioning 
the processing power among the 
users. Interleaved execution, then, is 
the seeming concurrency of many 
processes running on one processor. 

Whether we call it true concurren- 
cy or not, the problems inherent in 
writing this type of program are much 
the same. The main problem is tim- 
ing. Concurrent programs must deal 
with nondeterministic events that oc- 
cur at arbitrary times. 

Suppose you have two computers 
connected by some kind of commu- 
nications link. You want to write a pro- 
gram so that two people sitting in two 
different places can exchange mes- 
sages by typing at their respective 
keyboards. Each computer must per- 
form this basic sequence of actions: 

• When a key is struck on computer 
A's keyboard, A must retrieve that 
key's value and send it to computer B. 

• When a character arrives at com- 
puter A from computer B, A must 

[continued) 

Colleen Roe Wilson (RR I, Carnpbellville. 
Ontario LOP I BO, Canada) is a member of 
the technical staff at Allied Canada in 
Mississauga, Ontario. She has a B.S. and an 
M.S. in mathematics and enjoys gourmet 
cooking, gardening, and hiking. 



+— Inquiry 276 for Dealers. Inquiry 277 for End Users. 



ILLUSTRATED BY LAURA CORNELL 



APRIL 1985 'BYTE 113 



COPROCESSING IN MODULA-2 



display it in the next free position on 
its screen. 

Does this sound simple enough? 
Let's take a look at what can happen. 
If you stop and think about how you 
type at a keyboard, it becomes ob- 
vious that you can't expect a fixed 
pattern to the keyboard input and the 
arrival of data on the link. TWo users 
might carry on a question-and-answer 
conversation so that only one person 
types at a time. On the other hand, 
two users might argue and type 
simultaneously. Either way, the pro- 
gram needs to know what to do. This 
nondeterministic activity differen- 
tiates real-time programs from typical 
application programs with fixed 
read/write interfaces. You can't predict 
how many reads (input from the 
keyboard) or writes (output to the link) 
the program will have to deal with or 
how they will be ordered. 

The nondeterministic nature of con- 
current programming leads to some 
interesting problems— deadlock or 
"deadly embrace" being the best 
known. Suppose a time-sharing sys- 
tem is trying to run two programs. 
Both programs need exclusive use of 
the computer's tape drive and a par- 
ticular printer to run. The operating 
system starts program A, which ac- 
quires the tape drive. Having used its 
time slot, program A is suspended 
while the operating system starts pro- 
gram B. Program B immediately ac- 
quires the printer and is suspended. 
When A starts up again, it attempts 
to acquire the printer and fails, so its 
execution is suspended until the 
printer is freed. When B starts up 
again, it attempts to acquire the tape 
drive and is likewise suspended until 
the drive is freed. The two programs 
are deadlocked. Neither can proceed 
until the other frees the resource 
needed. 

The key to writing successful con- 
current programs is coordination. You 
must make sure that programs that 
are either cooperatively or indepen- 
dently executing interact with each 
other in a constructive— or at least 
nondestructive— manner. Modula- 2 
has programming constructs dealing 



with concurrency to aid in this 
coordination. 

COPROCESSES 

Coprocessing is a technique that 
helps you implement coordination 
when writing concurrent programs. 
For example, suppose you write two 
programs to execute as coprocesses— 
Text and Disk. Tfext prompts you to 
enter text from the keyboard for disk 
storage (it could be an editor). Disk 
is a low-level driver program that in- 
teracts with the disk to read and write 
records. The two coprocesses interact 
as follows: 

• Text prompts you for keyboard in- 
put and puts the characters into a buf- 
fer as it receives them until it finds the 
record terminator. 

• Text signals Disk that a record is 
ready in the buffer and suspends 
execution. 

• Disk retrieves the record and writes 
it to the disk. 

• Disk signals Tfext that the record has 
been written and suspends its 

. execution. 

• Tfext resumes execution at the point 
of suspension and prompts you for 
more input. 

Thus, Text and Disk coprocess the in- 
formation by passing it back and 
forth. This producer(Tfext)/consumer 
(Disk) relationship is the classic rela- 
tionship between coprocesses. 

You can expand this concept to in- 
clude more than two processes. Sup- 
pose you want various processes to 
exchange messages during execution. 
They need to be able to send mes- 
sages to other processes and to 
receive the same— a sort of electronic 
interprocess mail scheme. One spe- 
cial process is the postmaster. It 
receives and stores messages and 
then distributes them as requested by 
the designated receiving process. The 
postmaster acts as a coprocess with 
the other processes that can request 
to send or receive messages. When 
sending, the requesting process sus- 
pends execution while the postmaster 
picks up the message in its buffer and 
resumes when the postmaster is 
done. When receiving, the requesting 



process suspends while the post- 
master fills its buffer with the message 
and then continues. 

Writing Coprocesses 
in Modula-2 

TWo essential mechanisms are needed 
to implement the mechanics of copro- 
cessing: first, a means of identifying 
and executing a program that estab- 
lishes it as a process: second, a 
method so that two coprocesses can 
signal each other to coordinate their 
activities. Modula-2 has facilities for 
these mechanisms imbedded within 
it. Modula-2 programmers do not 
have to get around the language to 
write coprocesses; the language 
directly supports this kind of pro- 
gramming. 

The most fundamental support of 
coprocesses provided in Modula-2 is 
the data type PROCESS, which can 
be imported from the module SYS- 
TEM. We expect languages to support 
our abstract number systems with 
such data types as REAL and IN- 
TEGER, but this is something new: a 
process materialized in a data type. 
The need for it is obvious: a language 
that manipulates processes must be 
able to refer to them in a concrete 
manner. 

Coprocesses use these PROCESS 
variables to communicate with each 
other. Therefore, when you create a 
coprocess, you must bind it to one of 
these variables. Likewise, when these 
programs pass control to one an- 
other, they must use PROCESS 
variables to indicate their targets. 
Modula-2 contains two procedures 
that provide this control: NEW- 
PROCESS and TRANSFER, both of 
which are imported from the module 
SYSTEM. 

NEWPROCESS, which creates a co- 
process within the system and binds 
it to a PROCESS variable, is called by 

NEWPROCESS(p: PROC.a: 
ADDRESS.s: CARDINAL,VAR c: 
PROCESS); 

In this statement, p is the name of a 
procedure that contains the code you 
want to constitute the process, a is the 

[continued] 



114 BYTE • APRIL 1985 



IMfGIT 



Combine VISION with PC Graphics 




Captures 
Anything You Can See. 

IMIGIT adds icon- 

selected Graphic 

Functions, text, and 

textures with a full 

pallette of vibrant colors. 

Together You Enjoy 

Unparalleled Economy 

and Applications 

Flexibility. 









The illustration incorpo- 
rates line art r photos, text, 
textures and color elements. 
You can do the same with 
this icon-driven, user- 
friendly system. 



For $695.00 you get the PC-EYE™ 
video digitizer board and IMIGIT™ 
graphics software. PC-EYE allows 
you to capture real-life images with 
an ordinary video camera or VCR 
and produce them on your personal 
computer. IMIGIT is an icon- 
oriented graphics software package 
which allows you to modify the 
camera image by adding text, pat- 
terns, colors, lines and shapes. By 
using cut and paste features with 
multiple video images, you can store 
images for later retrieval and print 
images from the screen. 

You get this Exciting Tool for 
integrating video images with 
graphics created by other software 
packages like Lotus 1-2-3*; 
Graftalk*; CAD and business 
presentation packages. Imagine 
combining a real-life camera image, 
text and a pie chart generated by 
Lotus into one picture. It's really 
as easy as 1, 2, 3. 



IMIGIT Supports .. . 

High Resolution - up to 640 x 512 
pixels with 16 colors or gray scale 
(64 with 6-bit PC-EYE). Flexibility - 
to support the most popular 
graphics cards and printers for 
convenient display and hardcopy 
output. Speed - less than 2/10 of a 
second to capture an image in the 
IBM-compatible 320 x 200 mode. 
All in all, a powerful but easy-to-use 
package that allows you to develop 
sophisticated and dramatic graphic 
presentations. 




VIDEO 

CAPTUR 

SYSTEM 



CHORUS is the Single Source for 

your graphics and imaging needs. 
Complete solutions in both 
hardware and software. Call us for 
other low cost/ high performance 
imaging products such as Dr. Halo* 
and Halo* graphics software; video 
cameras and accessories; and 
graphic adapter cards. You can 
expect prompt delivery, technical 
support and complete OEM design 
assistance. 

GALL 1-800 OCHORUS or 
603-424-2900. 

PC-EYE and IMIGIT are trademarks of 
Chorus Data Systems, Inc. 

*Dr. Halo and Halo are trademarks of Media 
Cybernetics, Inc. 

Graftalk is a trademark of Redding Group, Inc. 
Lotus 1-2-3 is a trademark of Lotus Development 
Corporation. 
Inquiry 66 




CHORUS 






Chorus Data Systems, Inc., 6 Continental Blvd., P.O. Box 370, Merrimack, New Hampshire 03054 



COPROCESSING IN MODULA-2 



address of a storage area that serves 
as the working space for the process 
(local data and context are stored in 
it), s is the size of the working space, 
and c is a PROCESS variable that 
NEWPROCESS sets to the value of 
the coprocess it creates. 

TRANSFER is the procedure that 
transfers control from the calling co- 
process to the one called. It is invoked 
by 

TRANSFERER 
thisprocess.coprocess: 
PROCESS); 

When a TRANSFER takes place, the 
calling coprocess is suspended and its 
context (data values, current program 
counter, etc.) saved. When the called 
coprocess executes the reverse 
TRANSFER, the calling program 
resumes execution at the point im- 
mediately following its just-executed 
TRANSFER statement. This is the 
significant difference between proce- 
dural calls and TRANSFERS. Each 
time you call a procedure, execution 
returns to the beginning of the pro- 
gram and local storage is reallocated. 
Coprocesses maintain context be- 
tween TRANSFERS. 

The actual implementation of the 
data type PROCESS and the proce- 
dures NEWPROCESS and TRANS- 
FER varies with each machine and 
compiler. However, you need not be 
concerned with this. The data abstrac- 
tion provided by Modula-2 lets you 
merely manipulate the PROCESS 
variables with these procedures. Your 
interface is constant across machines. 
Contrast this with assembly-language 
programming, where you need signifi- 
cant knowledge of the operating-sys- 
tem internals to manipulate the data 
structures representing processes. 

Coding an Example 

Now that we've established what facil- 
ities exist in Modula-2 to program co- 
processes, let's look at an example. 
Starting at the top of the module def- 
inition of TermHandler (see listing 1), 
you import the needed concurrency 
structures from SYSTEM: the data 
types PROCESS, ADDRESS, and 
WORD, and the procedures NEW- 



Listing I: An example of coprocesses coded in Modula-2. 

MODULE TermHandler; 
FROM SYSTEM IMPORT ADDRESS, PROCESS, NEWPROCESS, TRANSFER, 

WORD, ADR, SIZE; 
FROM SYSIO IMPORT GetChar, PutDisk; 
CONST bufsize = 80; 
nterm=16; 
CR = 13C; 
TYPE buftype = ARRAY[0..bufsize- 1] OF CHAR; 
VAR buffer: buftype; 
nchar: INTEGER; 

wspT: ARRAY[0..nterm-1],[1..200] OF WORD; 
wspD: ARRAY[1..200] OF WORD; 
D,C: PROCESS; 

T: ARRAY[0..nterm-1] OF PROCESS; 
thisterm: INTEGER; 
PROCEDURE Textln; 
VAR newchar: CHAR; 
status: BOOLEAN; 
localbuf: buftype; 
count: INTEGER; 
BEGIN 
count: = - 1 ; 
LOOP 
GetChar(thisterm,newchar,status); 
IF status THEN 
CASE newchar OF 
CR: nchar: = count; 
buffer: = localbuf; 
TRANSFER(T[thisterm],D); 
count: = - 1 
ELSE 
INC(count); 

localbuf[nchar]: = newchar; 
IF count = buf size - 1 
THEN 
nchar: = count; 
buffer: = localbuf; 
TRANSFER(T[thisterm],D); 
count: = - 1 
END 
END 
END; 

TRANSFER(T[thisterm],C) 
END; 
END Textln; 
PROCEDURE TextToDisk; 
BEGIN 
LOOP 
PutDisk(buffer.nchar); 
TRANSFER(D,T[thisterm]) 
END 
END TextToDisk; 

BEGIN 
NEWPROCESS(TextToDisk,ADR(wspD),SIZE(wspD),D); 
FOR thisterm: = TO nterm - 1 DO 
NEWPR0CESS(Textln,ADR(wspT[thisterm]), 

SIZE(wspT[thisterm]),T[thisterm]) 



[continued] 



116 BYTE • APRIL 1985 



COPROCESSING IN MODULA-2 



END; 

thisterm: = 0; 
LOOP 
TRANSFER(C,T[thisterm]); 
thisterm: = thisterm + 1 MOD nterm 
END 
END TermHandler. 



PROCESS, TRANSFER, ADR, and 
SIZE. ADDRESS and WORD are self- 
explanatory primitive data types, 
ADR is a function that returns the ini- 
tial address of the variable passed to 
it, and SIZE is a function that returns 
that variable's storage allocation size. 
Assume the existence of a module 
named SYSIO, from which you import 
GetChar and PutDisk. In the CONST 
section you define the buffer size (buf- 
size) and the record terminator CR 
(carriage return). In the VAR section 
you define the shared buffer (buffer) 
and the shared character count 
(nchar). In addition, you define work- 
ing spaces for the two coprocesses 
you will create (wspT and wspD). 

Suppose you want to handle key- 
board-to-disk transfers for a number 
of terminals— an order-entry system, 
for example. Listing I shows an array 
of processes (T) and working spaces 
(wspT). The procedure GetChar is 
passed a terminal-port number (this- 
term) and returns a status (true means 
new character returned while false 
means the opposite) as well as the 
keyboard character (newchar). If a 
character has arrived since the last 
GetChar call, it is returned; otherwise 
the status reports the failure. The rea- 
son will become clear in a moment. 

As the main body of code for Term- 
Handler begins, process D is created, 
followed by the nterm terminal pro- 
cesses. Then the program enters a 
loop continually coprocessing with 
each of the individual terminal 
handlers. Each one manages its own 
character count (count) and buffer 
(localbuf). When a handler detects a 
CR or a full buffer, it moves its own 
buffer and count to the global buffer 
(buffer) and global count (nchar) and 
transfers to process D to dump the 
record. (Although it is more common 
for coprocesses to share pointers to 



variables than actual variables, these 
examples use them to make the code 
more readable.) You can see that if 
GetChar waited for a character to 
arrive— in other words, if it did not use 
the status— a single terminal could 
hold up all the others if it produced 
no input. 

What does coprocessing achieve in 
this example? First, when a specific 
terminal handler issues a TRANSFER 
back to process C, its context is saved 
in its workspace. Therefore, the next 
time it is activated, the values of count 
and localbuf are appropriately set. 
This would not be true if you used 
procedural calls instead of co- 
processes. 

Second, because each handler 
maintains its own data structures, the 
overall program is kept fairly simple. 
You don't have to manage an array of 
buffers and counters. Each handler is 
concerned with only a single buffer 
and counter, and the code is recycled 
nterm times. You also gain flexibility. A 
more sophisticated version of Term- 
Handler could associate processing 
priorities with some terminals and 
choose to ignore others. In fact, in a 
coprocessing situation TermHandler 
could create new terminal handlers on 
request (instead of using a fixed 
number) or only transfer to a specific 
handler on certain conditions. 

Conclusion 

Coprocesses cooperatively process 
information by interleaved execution 
on a single computer. You must be 
careful to ensure that processes inter- 
act constructively, and Modula-2 auto- 
matically contains the programming 
constructs to aid in this coordination. 
These coprocesses provide a means 
of passing control between programs 
without losing the desired execution 
sequence or the context. ■ 



*FREE 3M 
Flip V File 
Offer... 



Inquiry 78 



One less 
thing to 
worry 
about" 




Lifetime Warranty 



SS-DD 



»2 BB -> 



OS-DO 



5V4 QTY. 20 
— 96 TPI 



. 80B4. 



8 2 BB 3-5"SS-135TPI 

-X-With FREE 3M Flip 'n' File 
If it's worth remembering, it's worth Scotch. 
Factory fresh and prepacked with 10-5V4" 
3M diskettes in 3M Flip 'n' File. Includes 
Tyvek envelopes, reinforced hubs, user ID 
labels and write-protect tabs. 

Special Bonus Offer 

As an introductory offer, 

for every box of 3M-5V4" 

diskettes you order you 

get FREE, 3M's new Flip 

'n' FileTM. 50°/o more 

storage capacity, sturdy 

and with compact design ^ 

that swings open to anj 

easel-type work station in * 

one quick motion. A 

moveable front panel and see-tFTrough 

window in front and backfeature index cards. 

Holds very comfortably 1 5-5V4* diskettes. 

From a tradition of excellence— now comes 

disk storage. A 5)10:00 value is offered free 

of charge while supply lasts. 

3M Headcleaning Kit 

Without disassembly or mess, without 
abrasion worries. 3M Headcleaning Kit has 
everything you need for 10 ffi^T 
headcleaning operations . . Jr 

Disk Storage 





Amarav Media 
Mate 50 (Holds 
50-5V4" diskettes) 



$g95 



Disk Minder II-75 

(Holds over 75 •— ^-k 

5V4" diskettes] »11 95 

Micro Disk Minder 36 
(Holds 36-3 1 /a" .„_ 

micro diskettes). . . .*8 75 

PRINTER RIBBONS EA. DZ. 

Epson MX-70/80 »3 53 MO 

Epson MX-100 »4 90 *55 

Okidata-80/82/83/92 .... *1 45 *17 

Okidata-84 »3 50 *41 

Price Promise 

We will better any lower delivered price on 
the same products and quantities advertised 
nationally! 

TERMS: FREE USE OF VISA & MASTERCARD. 
American Express also accepted. COD orders add 
$3.00 handling charge. Shipping: Add $3.00 per 
100 diskettes or fraction thereof. Other Items: 
Add $2.00 for disk storage or headcleaning kit or 
each multiple of B ribbons. P.O. accepted Utah 
residents add SVWo sales tax. Minimum order 
$30.00. 

TOLL FREE OROER LINE: 

1 -BOO-233-2477 

CI -800-AFFAIRS) 

INFORMATION ANO INQUIRIES: 

1 -800-94S-671 7 

HOURS: 9AM - 5 PM M-FIMT. STATETIME) 



2028 E FT UNION BLVD 

OITipUter salt lake city utah a 

Iff airs. Inc. call ieoo affairs 







m± 




§ 



\ 



-^ 



.. .'.' : ''l 



mzxIM) 



Step beyond the limits of personal computing, and through the doors of the world's finest 
stores. Or right into the action on Wall Street. Browse, buy, sell or trade. Stocks, information, 
Maine lobster, Oregon seedlings, Italian luggage, airline tickets. Without leaving your chair. 

With an Avatex" modem, your personal computer can take you wherever you want 
to go, on your schedule. As far, as fast, as often as you like, at a price that won't stop you 
in your tracks. 

Avatex gives you the power, speed and intelligence of a serious piece of communica 
tions equipment, streamlined so anyone can use it easily and productively. Immediately. 

So with Avatex the possibilities are astronomical, 
but the price of owning one is not: Avatex 300- $64.95,* 
Avatex 600- $99.95,* Avatex 1200-$299.95.* 

For the name of the Avatex dealer nearest you, 
call 800-4-AVATEX. 

Avatex Moderns 

The next step in personal computing. 

Avatpx m is a trademark of E-f K f>ataComm.U.L./C.S.A.& FCC Pari. 15 and (iSapprovtxi.Copyrijihl 1*85 by E^ K IhtiaComm. 'SujyjesUKi retail pricio. 

Inquiry 132 APRIL 1985 -BYTE 119 

\ 



by James Hawley 



A MILLION-POINT 
GRAPHICS TABLET 



How to build low-cost graphics for the Z-lOO 



The following is a list of the parts used in JHHPI ^ e neec ' f° r a S ra PhiCS 
this project and the price paid for each. This » ■ tablet is quickly apparent if 

project can be built for less than $180. you try to do high-resolu- 

. KoalaPad S99.00 . ^J™ ? aWingS ^ * ^ 

1 s-100 Proto card 1 5.00 b ? ard : Although you can create com- 

2 ADC1001 a/d converter lCs* .... 60.00 P lex Pictures with the control keys and 

2 20-pin sockets 50 cursor, you will soon want a true draw- 

2 14-pin sockets 50 ing machine because of the direc- 

l 16-pin socket 25 tional and speed limitations of key- 

1 74LS20 dual 4 input nand 50 board drawing 

1 74LS04 hexadecimal inverter 50 Jhe z . h z ; m , j hjcs 

I 7805 +5-volt regulator 75 , , ' . , . 

l 100-/.F capacitor 50 computer with 640 by 22 5 pixels in 

i/4-watt resistors: 1.00 three planes (eight colors). The 

2 10k ohm machine devotes 64K bytes to each 

l 8.2k ohm plane and has the ability to create 640 

1 L5k onm by 480 pixels in eight colors. The 

1 33 ° ohm ZBASIC graphics commands offer a 

$178.50 quick method of creating custom 

, , , graphics programs. 

* available from: Digi-Key Tq ^ tme hjc crea tivity you 

Highway 32 South , „ . , ^ . «. w 

P q B 67 j need to use a stylus for input. You can 

Thief River Falls, draw with a light pen but it is often 

mn 56701 awkward to use vertically and difficult 

(800) 346-5144 to tell exactly where the pen is point- 

ing on a pixel-by-pixel basis. A graph- 
ics tablet solves these problems. 

There are many methods of inter- 
facing analog input to a microcom- 
puter's bus but it is simplified by 

\ames Hawley (4272 Queens Ave. South, 
Minneapolis, MN 55410) is the president of 
Laminar Flow Inc. in Minneapolis. He enjoys 
flying gliders and designing computer-graphics 
hardware and software. 



bus-compatible analog-to-digital (A/D) 
converters. The National Semiconduc- 
tor ADC1001 enables you to interface 
a 10-bit digital (1024-point) signal to 
the Zenith S-100 bus with only two 
support chips. 

The graphics pad described here 
uses Koala 'technologies' KoalaPad for 
the analog x. y input that feeds the 
two ADCIOOls connected to the S-100 
bus. To modify the KoalaPad, you 
open it by unscrewing the screws on 
the bottom, holding the unit together 
and flipping it over, and then lifting 
the pad away from the circuit board. 
Remove the black and blue wires from 
the bottom of the board and, with 
wire-wrap wire, solder them onto pins 
4 and 9 (respectively) of the chip on 
the lower left side of the circuit board 
(next to resistor number 23). These 
two lines will now carry the 0-3-volt 
analog signal (see photo 1). T^pe the 
wires out of the way and gently 
replace the pad. Then put on the 
cover, turn the unit over, and screw it 
back together. The KoalaPad is now 
ready to plug into the empty socket 
on the S-100 card. A brief description 
of the circuit is shown in figure I . You 
can use the wire-wrap wire-and-solder 
method to build the board but the 3M 
press-pin method is easier. It allows 
rapid assembly and disassembly. The 
3M socket and insertion tool make up 



120 B YTE • APRIL 1985 



the 3M wiring system, which is sold 
as the Whiz Kit by Ragon Inc. of Min- 
neapolis, Minnesota. Its ease and 
speed justify the high cost of the 
sockets. 

Listing I gives you all the program- 
ming necessary to get the x, y values 
you need for drawing or cursor move- 
ment from the circuit board. If you in- 
tend to compile the program, it is a 
good idea to repeat the OUT and INP 
routines and compare the values you 
get. This error checking is helpful 
because the KoalaPad can generate 
some bogus values because of the ex- 
ecution speed of compiled code. 

If the ZBAS1C language were 
changed to take full advantage of the 
interlace mode, then Zenith would be 
able to offer true high-resolution color 
graphics at the lowest price in the 
industry. ■ 



Listing I : This program is all you 
need to access the KoalaPad. 

10 'LISTING #1 

20 OUT 127,0 'START CONVERSION 
30 A-INP(127) 'INPORT TOP 8 BITS 
40 B = INP(127) 'IN BOTTOM 2 BITS 
50 A = A*4:B-B/64:X = A + B '10 BITS 
60 OUT 126,0 'START CONVERSION 
70 A= INP(126) 'INPORT TOP 8 BITS 
80 B = INP(126) 'IN BOTTOM 2 BITS 
90 A = A*4:B = B/64:Y = (A+B)/4 



S-100 




Figure I: The 74LS04 inverts address signals to the 74LS20 to create two chip-select 
signals for the two ADClOOls (U3 and U4). It also inverts the OUT and INP lines 
and sends their signals to U3 and U4 as WR and RD. The clocks on pins \9 and 4 
of the ADClOOls use a resistor capacitor circuit, and reference voltage for the circuit 
comes from resistors across GRD and + 5. 



APRIL 1985 • BYTE 121 



ADVENTURE < 



4995 







SOMETHING BR NEW 




INSTANT DATABASES . . . BECAUSE THAT'S 
HOW MOST OF US NEED INFORMATION 
. . . INSTANTLY! 

Homebase provides you instant access to a 
whole realm of databases. Just hit the hotkey 
to freeze whatever software you're working in, 
and you're ready to find, insert or manipulate 
data. 

This is much more than a simple cardfile or 
mini-database. You'll be able to set up your 
own templates, define parameters such as the 
length of a field, and do rapid key searches. 
You can have thousands of records in a data- 
base. And numerous databases on your menu. 



THE TOOLS YOU NEED. 



We've included a powerful set of tools that will save you time and help 
you organize information, schedule, calculate and a whole lot more. All 
within a quick keystroke . . . regardless of the software you're running! 

You may find a few of these in some "desktop" products . . . but nothing 
else approaches the power of Homebase! 



• Instant Databases 


• Qulckterm Terminal (available 


• Phone Message Pad 


even when you're working in 


• Rolodex™ 


another program) 


• Appointment Calendar 


• Autodialer 


• Calculator 


• Template Maker (for designing 


• Notepad 


your own databases) 


• Time and Expense Diary 


• DOS Services 


• Programmable Hotkey (You 


• Rolodex Card Printer 


choose the key that gets you 


• Mailing Label Printer 


to your Homebase) 


• Data Transfer (between 


• Electronic Mall (as an 


databases or your other 


automatic multi-task!) 


software) 


• Tables and Pages (for those 


• Cut and Paste (great for putting 


■things you always need to 


together an Electronic Mail 


look up) 


letter that combines a chunk of 


• Alarm Clock (including Musical 


spreadsheet, some text from a 


Snooze Alarm) 


document, and a few notes) 


• To-Do List 





122 BYTE • APRIL 1985 



THE EXCITEMENT IS BACK 

With the Electronic Mailbag of Your Dreams 

ELECTRONIC MAIL THAT TAKES CARE OF ITSELF ... IN THE BACKGROUND 

(While you're running WordStar, Lotus, dBase, a compiler or whatever) 

We wanted electronic mail that could take care of itself while we were busy on the computer doing something else. 

We always felt that there was something strange about having to play postman every time a piece of electronic mail was due. 

It was always a case of loading up a communications package and either waiting for the mail or going out to fetch it. 

Now, we've got it! And you can have it, too. With HOMEBASE, Electronic mail can arrive while you're working in another piece of 
software, Up in the corner of your screen, a signal lets you know that there's incoming mail. You can read it as it comes in, if you 
want. Or you can ignore it, and your mail will automatically file itself ... to be read at your leisure, 

When you're sending Electronic Mail, its just as easy. Once you've written and addressed your letter, the rest is done for you, 
automatically, while you're back working in another piece of software. 



CHECK THE DIFFERENCE IN VALUE! 



WHY ARE YOU GETTING SO MUCH 
SOFTWARE FOR SUCH 
A SMALL PRICE? 

Amber Systems makes tools for program- 
mers Including VSI— The Window Machine, 
We make mouse drivers, asynchronous drivers 
and electronic mail packages for a number 
of companies. Now, we've decided to use 
these tools, plus some new ones that aren't 
yet on the market, to produce new concepts 
In software. Because we make the tools our- 
selves, our costs, and consequently yours, are 
the lowest possible , . . with never a compro- 
mise in quality. 

YES! Site licenses are available for 

companies . . . large and small. If you would 
like to order a single copy, now, to examine 
and show around your company, its cost can 
be deducted, later on, from your site license. 
For further information on site licenses call 
408-996-1883, 

Inquiry 22 



ORDER YOUR COPY OF HOMEBASE TODAY! 

For VISA and MasterCard Orders Call Toll Free : 800-538-8157 Ext. 824 

In CA 800-672-3470 Ext. 824 

Call Mon. - Fri. 6 A.M. to 12 P.M., Sat. & Sun. 6 A.M. to 8 P.M. (P.S.T.) 

or fill in this ORDER FORM and enclose a check, money oraer or your 
VISA or MasterCard number. 



HOMEBASE 


SIDEKICK 


POLY WINDOWS 


SPOTLIGHT 


Notepad 

Autodialer 

Appointment Calendar 

DOS Services 

Calculator 

Rolodex 

Rolodex Card Printer 

Tables and Pages 

Alarm Clock 


Notepad 

Autodialer 

Calendar 

Calculator 

ASCII Table 

Rolodex 


Notepad 

keyboard Macros 

Calendar 

Calculator 

Game 

Alarm 

File Cards 


Notepad 
Calendar 
DOS Services 
Calculator 
Rolodex 
File Cards 


$49.95 


$149.95 


$49.95 


Template Maker 
Instant Databases 






Data Transfer 








Cut and Paste 








Programmable HotKey 
Phone Message Pad 
Time and Expense Diary 
To-do List 








Electronic Mail. 








Quickterm Terminal 








Mailing Label Printer 








$49.95 ! 


Sidekfck is o trademark of Borland Intemtional 


Inc. Poly Windows is a trademark of Polvlron Coo Spotlight is a trademark .of Software Arts. 



HOMEBASE is available for the IBM PC, XT and true compatibles 
$49.95 + $5 for shipping and handling* 



NAME 
TITLE _ 



COMPANY NAME . 



ADDRESS . 

CITY 



. STATE 



.ZIP. 



HOME PHONE ( 



)- 



. WORK PHONE ( 



SEND TO: 



. Exp. date . 



□ CHECK a MONEY ORDER D VISA □ MASTERCARD Cord 4 
30-day money-back guarantee! 



'California residents add 6% sales tax. Outside U.S. please add S15. Checks must be on a U.S. bank and in U.S. dollars. Sorry, no 

COD. or purchase orders. 

For dealer and site license information, call 408 996-1883. o 



AMBER SYSTEMS, INC. 

1 1 71 S. Saratoga-Sunnyvale Road 

San Jose, CA 95129 



BYTE 



Communication with Alien Intelligence 

by Marvin Minsky 126 

The Quest to Understand Thinking 

by Roger Schank and larry Hunter 143 

The LISP Tutor 

by ]ohn R. Anderson and Brian j. Reiser . . 159 

PROUST 

by W. lewis ]ohnson and Elliot Soloway ... 1 79 

Architectures for AI 

by Michael F. Deering 193 

The LISP Revolution 

by Patrick H Winston 209 

The Challenge of Open Systems 

by Carl Hewitt 223 

Vision 

by Dana H. Ballard and 

Christopher M. Brown 245 

Learning in Parallel Networks 

by Geoffrey E. Hinton 265 

Connections 

by \erome A. Zeldman 277 

Reverse Engineering the Brain 

by )ohn K. Stevens 286 

The Technology of Expert Systems 

by Robert H. Mxchaelsen, Donald Mxchxe, 

and Albert Boulanger 303 

Inside an Expert System 

by Beverly A. Thompson and 

William A. Thompson 315 



Artificial 
Intelligence 



YOU AWAKE ONE MORNING to find your brain has another lobe function- 
ing. Invisible, this auxiliary lobe answers your questions with information 
beyond the realm of your own memory, suggests plausible courses of action, 
and asks questions that help bring out relevant facts. You quickly come to 
rely on the new lobe so much that you stop wondering how it works. You 
just use it. This is the dream of artificial intelligence. In this issue of BYTE, 
a group of distinguished authors, including leading researchers, examine the 
state of this challenging field. While the auxiliary lobe is a distant dream, some 
of these articles show that AI has won a place on personal computers. 

Understanding artificial intelligence requires understanding intelligence itself. 
Marvin Minsky of MIT explores the concept of intelligence and considers 
whether we will be able to communicate with extraterrestrial intelligence when 
we encounter it. Some of the conceptual structures needed to make com- 
puters perform operations natural to the human mind are covered by Roger 
Schank and Larry Hunter of Yale. 

Computer science is among the first fields to benefit from AI. John Anderson 
and Brian Reiser of Carnegie-Mellon describe their interactive LISP program 
that teaches people to program in LISP, while Yale's Lewis Johnson and Elliot 
Soloway explain the operations of their LISP program that finds nonsyntactic 
bugs in Pascal programs. 

If we are to have powerful AI on personal computers, we must have efficient 
hardware and software. Michael Deering of Schlumberger Research surveys 
some efficient architectures for A I. After noticing the recent flowering of LISP 
on personal computers, MIT's Patrick Winston provides an introduction to the 
language. Carl Hewitt, developer of an early logic programming language, ques- 
tions whether logic programming will be able to develop intelligent systems 
for complex applications in the real world. 

In their article, Dana Ballard and Chris Brown of Rochester University explain 
how the miracle of vision rests on hierarchical representations of information 
as well as on parallel processing. Parallelism is explored further by Geoffrey 
Hinton of Carnegie-Mellon, who presents two theories of how learning could 
occur in brain-like networks. Jerome Feldman of Rochester elaborates on key 
issues in massive parallelism in both natural and artificial intelligence. John 
Stevens of the University of Toronto takes a bold and intriguing look at the 
possibilities of copying the brain's own circuitry directly. He starts with the device 
physics of the brain and goes on to discuss silicon-based designs. 

The methods for building expert systems discussed by Robert Michaelsen, 
Donald Michie, and Albert Boulanger include not only those based on rules 
but also those based on deeper representations of knowledge. Beverly and 
William Thompson explain a rule-based expert system written in Pascal. 

Space limitations prevented the inclusion of Michael Fichtelman's expert 
system in Logo and Phillip Robinson's description of a custom AI chip 
developed at Syracuse University. Ljook for these articles in forthcoming issues. 

Many of the technical terms used in the context of AI involve subtle varia- 
tions on the traditional computer science definitions. Please consult the 
glossary on page 138 for definitions of several of these terms. 

— Phil Ummons, Editor in Chief 



APRIL 1985 • BYTE 125 







126 B YTE • APRIL 1985 



ILLUSTRATED BY JAMES ENDICOIT 



ARTIFICIAL INTELLIGENCE 



COMMUNICATION 

WITH ALIEN 

INTELLIGENCE 



by Marvin Minsky 



\t 



WHEN FIRST WE MEET those aliens 
in outer space, will we and they be 
able to converse? 1 believe that, yes, 
we will— provided they are motivated 
to cooperate— because we'll both 
think in similar ways. I propose two 
kinds of arguments for. why those 
aliens may think like us, in spite of 
having very different origins. These 
arguments are based on the idea that 
all intelligent problem solvers are sub- 
ject to the same ultimate constraints- 
limitations on space, time, and 
materials. For animals to evolve 
powerful ways to deal with such con- 
straints, they must have ways to repre- 
sent the situations they face, and they 
must have processes for manipulating 
those representations. These two re- 
quirements are: 

Economics: Every intelligence must 
develop symbol systems for repre- 
senting things, causes, and goals, and 
for formulating and remembering the 
procedures it develops for achieving 
those goals. 

Sparse ness: Every evolving intelli- 
gence will eventually encounter cer- 
tain very special ideas— e.g., about 



may not be as difficult as you think 



arithmetic, causal reasoning, and 
economics—because these particular 
ideas are very much simpler than 
other ideas with similar uses. 

The economics argument is that the 
power of a mind depends on. how it 
manages the resources it can use. The 
concept of thing is indispensable for 
managing the resources of space and 
the substances that fill it. The concept 
of goal is indispensable for managing 
how we use the time we have avail- 
able—both for what we do and what 
we think about. Aliens will use these 
notions too, because they are both 
easy to evolve and because there ap- 
pear to be no easily evolved alter- 
natives for them. 

The sparseness theory tries to make 
this more precise by showing that 
almost any evolutionary search will 
soon find certain schemes that have 
no easily accessible alternatives, that 
is, other different ideas that can serve 
the same purposes. These ideas or 
processes seem to be peculiarly 
isolated in the sense that the only 
things that resemble them are vastly 
more complicated. I will discuss only 



the specific example of arithmetic and 
conjecture that those other concepts 
of objects, causes, and goals have this 
same island-like character. 

Critic: What if those aliens have 
evolved so far beyond us that their 
concerns are unintelligible to us and 
their technologies and conceptions 
have become entirely different from 
ours? 

Then communication may be in- 
feasible. My arguments apply only to 
those stages of mental evolution in 

[continued) 
Artificial-intelligence pioneer Marvin Minsky 
is Donner Professor of Science in the Depart- 
ment of Electrical Engineering and Computer 
Science at Massachusetts Institute of Tech- 
nology (545 Technology Square. Cambridge. 
MA 02139). In the late 1950s, Minsky. 
together with \ohn McCarthy (now at Stan- 
ford), created MIT's AI laboratory, of which 
Minsky was the director for several years. 
Minsky has long been interested in SETI [the 
Search for Extraterrestrial Intelligence) and 
participated in the important 1971 conference 
on communication with extraterrestrials, held 
in Soviet Armenia and organized by Carl 
Sagan. 

APRIL 1985 • BYTE 127 



COMMUNICATION 



A distinctive aspect 
of intelligence is 
the ability to solve 
new, different problems. 



which beings are still concerned with 
surviving, communicating, and ex- 
panding their control of the physical 
world. Beyond that, we may be unable 
to sympathize with what they come 
to regard as important. Yet even then 
we can hope to communicate with the 
mental mechanisms they use to keep 
account of space and time; these 
could remain as sorts of universal 
currency. 

Critic: How can we be sure that things 
like plants and stones or storms and 
streams are not intelligent in other 
ways? 

If you can't say in what respects 
their intelligence is similar, it makes no 
sense to use the same word. They cer- 
tainly don't seem good at solving the 
kinds of problems that challenge our 
intelligence. 

Critic: What's so special about solv- 
ing problems? Please define intelli- 
gence precisely so that we'll know 
what we are discussing. 

It's not one author's place to tell 
other people how to use a word that 
they already understand. Let's just use 
intelligence to mean what people 
usually mean: the ability to solve hard 
problems— like how to build space- 
ships and long-distance communica- 
tion systems. 

Critic: Then please define what a hard 
problem is. For instance, we know that 
human intelligence was involved in 
building the pyramids— yet coral-reef 
animals build things on an even larger 
scale. Should we therefore be able to 
communicate with them? 

No. Humans do indeed solve such 
problems, but it is only an illusion that 
coral-reef animals do. An important 
factor is .speed. No single bird dis- 



covers how to fly: Evolution used a 
trillion bird-years to find out how— yet 
man learned to fly in tens of human- 
years. And while a person might take 
several years to find a way to build a 
structure like an oriole's nest or a 
beaver's dam, no oriole or beaver 
could ever learn to do such things at 
all without exploiting the ancient nest- 
machines their genes construct inside 
their brains. A distinctive aspect of 
what we call intelligence is this ability 
to solve a wide range of new, different 
kinds of problems. This is why it makes 
sense to try to communicate with an 
individual animal that can learn quickly 
how to solve new hard problems. 

What enables us to solve hard prob- 
lems so quickly? Here are some ingre- 
dients that seem to me so essential 
that I would expect intelligent aliens 
to use them, too: 

Subgoals—to break hard problems 
into simpler ones 

Subobjects—to make descriptions 
based on parts and relations 
Cause-symbols— to explain and 
understand how things change 
Memories— to accumulate experience 
about similar problems 
Economics— to efficiently allocate 
scarce resources 

Planning— to organize work before fill- 
ing in details 

Self-awareness— to provide for the 
problem solver's own welfare 

Still, aren't these only a few of the 
myriads of other possibilities? Why 
can't our aliens do all such things in 
completely alien ways? I believe that 
these problem-solving schemes are 
not as arbitrary as they seem. 

The Sparseness Principle 

Why does it seem so obvious to us 
that two and two equal four? Such 
mysteries have long concerned philos- 
ophers—why certain concepts seem 
to come into our- minds as though 
they need no prior experience or 
evidence. My answer is that this may 
be due, at least in part, to the follow- 
ing computational phenomenon. 

The Sparseness Principle: Whenever 
two relatively simple processes have 



products that are similar, those prod- 
ucts are likely to be completely 
identical. 

Because of this, we can expect cer- 
tain a priori structures to appear, 
almost always, whenever a computa- 
tional system evolves by selection 
from a universe of possible processes. 
The ideas of number and arithmetic 
are examples of this, and my conjec- 
ture is that this may be why different 
people can communicate so perfect- 
ly about such matters, although their 
minds may differ in many other ways. 
This may apply to aliens, too. Let me 
explain the sparseness principle by re 
counting two anecdotes. One involves 
a mathematical experiment, the other 
a real-life experience. 

A Mathematical Experiment— I 
once set out to explore the behaviors 
of all possible processes— that is. of 
all possible computers and their pro- 
grams. There is an easy way to begin 
that search: you just list all possible 
finite sets of rules, one by one. This 
is easy to do using methods that Alan 
'Hiring described in 1936; these are 
what today we call "'Hiring machines." 
Naturally, I didn't get very far because 
the variety of such processes grows 
exponentially with the number of 
rules in each set. However, with the 
help of my student, Daniel Bobrow, I 
managed to examine the first few 
thousand of such machines— and we 
found that among them there were 
only a few distinct kinds of behaviors. 
Some of them simply stopped with- 
out accomplishing anything. Many of 
the others just erased their input data 
and did nothing else. Most of the re- 
mainder quickly got trapped in circles, 
senselessly repeating the same steps 
over again. There were only a few left 
that did anything interesting at all— 
and these were all essentially the 
same: Each of them performed a 
counting operation that repeatedly in- 
creased by one the length of a string 
of symbols. In honor of their ability 
to do what resembles a fragment of 
simple arithmetic, let's call these A- 
macfiines. Let's think of this exploration 
as exposing parts of some infinite 

(continued) 



128 BYTE • APRIL 1985 




GoldHillC omputers brings the language of 
Artificial Intelligence to Your Personal Computer 



Why every Computer Professional 
should know Common Lisp. 

You know how frustrating it is to 
deal with programs that are stupid and 
inflexible like those buried inside 
automated bank teller machines and 
airline reservation systems. You also 
know how frustrating it is to engineer 
solutions to today's information- 
processing problems with languages 
designed mainly for number crunching. 
It doesn't have to be this way 

Programs based on the ideas of 
Artificial Intelligence and implemented 
in Common Lisp can be intelligent, flex- 
ible, and human-like. When you use 
Common Lisp in combination with 
artificial intelligence techniques, you 
will be able to solve problems you 
could never solve before. You will be 
able to write powerful programs that 
can accommodate naive computer 
users who want intelligible answers 
to questions quickly 

The best way to get started is to buy 
Golden Common Lisp 1 " the first Common 
Lisp for personal computers. 

Golden Common Lisp: 
The AI Tutor 

Golden Common Lisp makes it easy 
for you to learn to use Common Lisp, on 
your personal computer, by yourself, 
at your own pace. The San Marco Lisp 
Explorer" a 1000-frame interactive soft- 
ware slide show developed by Patrick H . 
Winston and San Marco Associates, 
takes you through Common Lisp and 
exciting artificial intelligence applica- 
tions like expert systems, intelligent 
data-access systems, and natural 
language interfaces. 




Golden Common Lisp requires an 
IBM, PC XT, PC AT, or 100% IBM PC 
compatible computer with 512K bytes 
of memory and PC-DOS 2.0 or higher. 
More memory is recommended for 
applications development. 

ORDER GCLlSP TODAY using 
the coupon below. Or call our Sales 
Department at: 



617-492-2071 



Golden Common Lisp: The 
Complete Lisp Environment 

The Golden Common Lisp 
package includes: 

• the GC Lisp interpreter 

• the GMACS editor 

• the San Marco Lisp Explorer 

• the On-line Help system 

• Lisp, 2nd edition by Winston 
and Horn 

• the Common Lisp Reference Manual 
by Steele 

• the Golden Common Lisp User's 
Manual 

Golden Common Lisp: The 
Powertool for Personal Computing 

Golden Common Lisp is an extensive 
subset of Common Lisp, supporting more 
than 400 Lisp primitives. Advanced 
features of Golden Common Lisp include 
co-routines for multi-tasking, macros for 
Code clarity, streams for I/O, closures 
for object-centered programming, 
and multiple-value-returning functions 
for efficiency 



| Gold Hill Computers 
163 Harvard Street 
Cambridge, MA 02139 



Bl-85 



"~1 



Name 



Title 



Department 



Organization 



Address 



Phone 



_/ L 



Today's Date 



Type of computer 

□ Enclosed is a check to Gold Hill 

Computers forGCLisp. 
D Please bill my D MasterCard D VISA card. 

_/ L 



Card # 



Expiration Date 



Signature 

Quantity Description Unit Price Total Price 





Golden 
Common 

Lisp 


$495 




Subtotal 




MA residents add 5% Sales Tax 




Total Amount 





D H I L 



We welcome inquiries about volume dis- 
counts, dealer discounts, and educational 
discounts for university-affiliated purchasers. 
1 □ Please send me more information. 



M 



U T E R S 



163 Harvard Street, Cambridge, Massachusetts 02139 



Inquiry 167 



Golden Common Lisp and GC Lisp are trademarks of Gold Hill Computers. The San Marco Lisp Explorer is a trademark of San Marco Associates. 

Lisp is copyrighted by Addison-Wesley Publishing Company, Inc. The Common Lisp Reference Manual is copyrighted by Digital Equipment 

Corporation. IBM PC, PC XT, PC AT, and PC-DOS are trademarks of International Business Machines. 



COMPUTER HUT 



TM 



COMPARE 

OUR 

SERVICE & PRICE! 



SPECIAL 








OF THE 
MONTH 

IBM-PC, XT & 4T. 


IBM' 


B 

o 

o 




CALL FOR 


i=- 




- \ 


PRICE 


flfiSH 

ii minimi ^^BTnt 










/ 


m 




m 





DISK DRIVES 



landon TM100-2 DS/DD 
MATSUSHITA JA 551 
TEAC FD-55B Slimline 
SHUGART SA-455 half-high 



$165 

$149 

$149 

CALL 



HARD DISKS/TAPE 



MAYNARD 

WSI $895 WS2 $7095 

EVEREX, SYSGEN, MOUNTAIN CALL 



! MAYNARD ELECTRONICS 

Floppy Disk Controller $129 

FDC w/Par. Port or Ser Port $179/189 
SANDSTAR SERIES CALL 

QUADRAM 

Quadboard 64K exp to 384K . . . $279 

Quadcolor I & II CALL 

AST RESEARCH 

SixPak Plus64K. $279 

MegaPlus II 64K $279 

l/OPIus II $129 

STB CALL 

MICROLDG 

Baby Blue II 64K $489 



GRAPHICS BOARDS 



TECMAR 

Graphics Master $489 

HERCULES 

Hi Res Mono Graphics $329 

Color Graphics w/Par Port $785 

PARADISE 

Modular Graphics $299 



ANY PRODUCT NOT 
LISTED? CALL 



MODEMS 



©Hayes 



Smartmodem 1200 $469 

Smartmodem 1200B $409 

BIZCOMP 

PC Intellimodem $359 

PC Intellimodem-ST CALL 

NOVATION CALL 

SmartCat $359 



PRINTERS 



EPSON 

FX-80 CALL 

RX-80 CALL 

JX-80 CALL 

brother 

HR-15 Par. .$399 

HR-25 $649 

DYNAX 

DX-15 Par . . $399 Ser $399 

C-/70H 

PROWRITER CALL 

STARWRITER F-10P $1095 



FX-100 . . 
RX-100.. 
LQ-1500. 

Ser 

HR-35. . 



CALL 
CALL 
CALL 

. $399 
$839 



OK'DATA 



84P CALL 84S . . 

92P BEST 92S . . 

93P . ... PRICES 93S . . 

SEC 

Splnwriter 2050 

3550 $7449 8850 . . 

Pinwriter P2 $689 P3 

TOSHIBA 

P1351 .... $7399 P1340 . 

DAISYWRITER 

2000 W/48K Buffer 

DATAPRODUCTS 



. . CALL 

. BEST 

PRICES 



$699 

$7995 

$895 



. $775 

$849 
CALL 




ASK ABOUT OUrt 

TRAINING & REPAIR 

SERVICES. 



EAST COAST 



COMPUTER HUT 

OF NEW ENGLAND INC. 
101 Elm St. Nashua, NH 03060 



For Orders Only — (800) 525 5012 



CANADA 



MICROCONTEXT 

AUTHORIZED DEALER 

5253 Ave Du Pare 
Montreal Que H2V4P2. 

(514) 279-7291 



COMPUTERS 






I COLUMBIA I I 




| DATA PRODUCTS. INC. | 


. CALL 


comPAH* 


. CALL 


MONITORS 



AMDEK 

Video 300G . . . $135 300 A . . . $145 
Video 310A $779 

PGS 

HX12 Hi Res RGB monitor BEST 

MAX-12 Hi Res Mono. PRICES 

SR-12 Super Hi Res RGB 




SOFTWARE 



WORDPROCESSING 

MS Word $239 with mouse $299 

Volkswriter Deluxe $769 

PFS: Write $89 PFS: Proof $69 
WordPerfect $269 WordStar CALL 
Multimate $269 

DATABASE/INTEGRATED 

dBase III $389 Quickcode III $179 

RBase 4000 $279 Clout 2.0 $769 

LOTUS 1-2-3 & Symphony CALL 

Framework CALL 

UTILITIES/COMPILERS 
Crosstalk $109 Smartcom II $109 
Sideways $49 Norton Utilities$59 
Sidekick $45 Turbo Pascal $45 

UFEBOAT Lattice C $299 

MS Basic $259 MS Fortran $239 

BUSINESS 

MICROSOFT Project $159 Chart $159 
STAR Acct. Partner I & II CALL 

BPI SYSTEMS CALL 

PFS: File $89 PFS: Graph $89 
PFS: Plan $89 Multiplan $139 

OTHER 

Mastertype $35 Typing Tutor III $39 

Math Blaster $39 

Flight Simulator $45 

Managing your money $735 

AND LOTS MORE 



MIDWEST 



COMPUTER HUT»c 

524 S. Hunter 
Wichita, Kansas 67207 

(316) 681-2111 

For Orders Only — (800) 572 3333 



AM products usually in stock for immediate shipment and carry full manufacturers' warranty. Price subject to change — this ad prepared two months in advance. You 
tjet the lowest price. We honor personal checks — allow 10 days to clear. COD up to $300 add 2%. Visa, MasterCard add 2%. For shipping & insurance add 2% or 
$5.00 min. for small items and $10 min for monitors, printers, etc. We accept company checks and P.O.'s from Fortune 1000 Companies. 

Return authorization and order status call Information line inouirv A3 15 



IBM is a trademark of IBM Corp. 



Inquiry 83 



COMMUNICATION 



"universe of possible computational 
structures." Then this tiny fragment of 
evidence suggests that such a 
universe may look something like 
figure I. 

The Xs represent those useless pro- 
cesses that scarcely do anything at all. 
while the As represent those little 
counting machines, which in effect are 
all identical. Little processes like 
these, inside our minds, could be 
seeds of our more mature ideas 
about arithmetic. My point is that it 
seems inevitable that somewhere in 
a growing mind some A-machines 
must come to be. 

Now, possibly there are some other 
really different ways to count. So there 
may appear much later some of what 
we represent as B-machines. which are 
processes that act in ways that are 
similar but not identical to the ways 
A-machines behave. But our experi- 
ment hints that even the simplest 
possible B-machine will be so much 
more complicated that it is unlikely 
any brain would discover one before 
it first found many A-machines. 

I think of this little thought experi- 
ment as resembling an abstract ver- 
sion of those first experiments in 
which Stanley Miller and Harold Urey 
set out to explore with real chemicals 
the simplest combinations of consti- 
tuents. They started with a few ele- 
ments like hydrogen, oxygen, nitro- 
gen, carbon, and phosphorus and 
found that those chemicals react first 
to make simple molecules and then 
go on to form peptides, sugars, 
nucleotides, and whatnot. Of course, 
we would have to wait much, much 
longer before the appearance of 
tigers, woodpeckers, or Andro- 
medans. 

A Real-Life Episode— Once, while I 
was still a child in school, I heard that 
minus times minus is plus. How strange 
it seemed that negatives could cancel 
out— as though two wrongs could 
make a right, or "this statement lies" 
could be a truth. I wondered if there 
could be something else, still like 
arithmetic but having yet another 
sign. Why not make up some number 
things, I thought, that go not just two 
ways, but three? 1 searched for days, 



making up new little multiplication 
tables. Alas, each system ended either 
with impossible arithmetic (e.g., with 
one and two the same), with no signs 
at all, or with an extra sign. Eventual- 
ly, I gave up. If I had had the courage 
to persist, as Gauss did, 1 might have 
discovered the arithmetic of complex 
numbers or, as Pauli did, the arith- 
metic of spin matrices. But no one 
ever finds a three-signed imitation of 
arithmetic because, it seems, it sim- 
ply doesn't exist. 

IVy, for example, to make a new 
number system that's like the ordinary 
one except that it skips some 
number— say, 4. It just won't work. 
Everything will go wrong. You'll have 
to decide what 2 plus 2 is. If you say 
that this is 5, then 5 will have to be 
an even number, and so also must 7 
and 9. Then, what's 5 plus 5? Is it 8, 
or 9, or 10? You'll find that to make 
the new system at all like arithmetic 
you'll have to change the properties 
of all the other numbers. Then, when 
you're done, you'll find that you have 
changed only those numbers' names 
and not their properties at all. 

Similarly, you could try to make two 
different numbers be the same— say, 
139 and 145. But then, to make sub- 
traction work, you'll have to make 6 
the same as and 4 plus 5 equal to 
3. Suddenly, you'll find that the sum 
of two positive numbers is smaller 
than either of them— and that scarce- 



ly resembles arithmetic at all. (In fact, 
this leads to modular arithmetic, which 
has a certain usefulness in abstract 
mathematics but is worse than use- 
less for keeping track of real things.) 
And so it goes. 

There is just no way to take a single 
number out or put another one in. 
Nor can you change a single product, 
sum, or prime. 

What gives arithmetic this stark and 
singular rigidity? You cannot make the 
smallest hole in it or make it stretch 
or bend the slightest bit. You have to 
take it as it stands, the whole thing, 
all or nothing, unchangeable, because 
it's isolated as an island in that 
universe of processes. That selfsame 
A-machine exists, immutably com- 
plete, as part of every other process 
that can generate an endless chain of 
different things. 

I sometimes wonder if it's danger- 
ous to make our children dwell so 
long on arithmetic since, when seen 
this way, it leads to such a singularly 
barren world. TVue, some children find 
in it a universe of different things to 
do. Most children, though, just find it 
dull— a source of endless rote and 
pointless pain; it's like the tedium of 
working clay too cold to mold into any 
other shape. 

From all this, I conclude that any en- 
tity who searches through the sim- 
plest processes will soon find frag- 

(continued) 



X X 
XXX 
AX X A X 

X X A \ 

XX X X X A 

X X X A X / \ 

X A xx xx/xx \ XX 

X X /x X X XX x /x xxx\ X 
xxAxx xxAxxAx 
xAxxxxAxxxx xxx/\xxxx 

XX A XX xxxx XXX XX A X A X X 
X XXXAXXX XXX XXX XXX X / \xx XXX XXX 




Figure 1 : A universe of possible computational structures. 



APRIL 1985 • BYTE 



131 



Inquiry 362 



Pascal and C 

Programmers 



Your programs can 
now compile the 

FirsTime" 



FirsTime is an intelligent editor that 
knows the rules of the language being 
programmed. It checks your statements 
as you enter them, and if it spots a 
mistake, it identifies it. FirsTime then 
positions the cursor over the error so 
you can correct it easily. FirsTime will 
identify ail syntax errors, undefined 
variables, and even statements with 
mismatched variable types. In fact, any 
program developed with the FirsTime 
editor will compile on the first try. 

More than a syntax checker! 

FirsTime has many unique features 
found in no other editor. These powerful 
capabilities include a zoom command 
that allows you to examine the 
structure of your program, automatic- 
program formatt ing, and block 
t ransf orms. 

If you wish, you can work even faster 
by automatically generating program 
structures with a single key-stroke. This 
feature is especially useful to those 
learning a new language, or to those 
who often switch between different 
languages. 

Other Features: Full screen editing, 
horizontal scrolling, function key menus, 
help screens, inserts, deletes, appends, 
searches, and global replacing. 

Programmers enjoy using FirsTime. It 
allows them to concentrate on program 
logic without having to won-y about 
coding details. Debugging is reduced 
dramatically, and deadlines are more 
easily met . 

FirsTime for PASCAL $245 

FirsTime for C $295 

Microsoft PASCAL Compiler $245 

Microsoft C Compiler $395 

Demonstration disk $25 

Get an extra $100 off the compiler when 

it is purchased with FirsTime. 

(N.J. residents please add iS% sales tax.) 



Spruce 

Technology Corporation 

1 10 Whispering Pines Drive 

Lincroft, N..J. 07738 

( 20 1) 741-8188 or (201) 0()3-()()03 

Dealer enquiries welcome. Custom versions 
lor computer manufacturers and language 
developers are available. 



FirstTime is a inuirinark ol' Spruce TWIuiolo>»y 
Cnmnratiiin. 



MasterCard , 



VfSA' 



COMMUNICATION 



ments that do not merely resemble 
arithmetic but are arithmetic. It is not 
a matter of inventiveness or imagina- 
tion, only a fact about the geography 
of the universe of computation, a 
world far more constrained than that 
of real things. 

Thesis: All processes or formalisms 
that resemble arithmetic are either 
identical to it or else unthinkably com- 
plicated. This is why we can commu- 
nicate perfectly about numbers. 

What has this to do with aliens? 
Only that they too must have evolved 
by searching through some universe 
of possible processes, and any evolu- 
tionary process must first consider 
relatively simple systems and thus 
discover the same isolated islands of 
efficiency. 

Finally, we ought to ask why pro- 
cesses occur that way without some 
similar ones nearby? It is hard to for- 
mulate this precisely, because the 
meaning of similar depends on what 
you want to use it for. One way to ex- 
plain it is to point out that a small set 
of rules can generate a vast world of 
implications and consequences. But 
there is no converse because usually 
a small set of rules can't describe a 
large and complex thing. This is sim- 
ply a matter of arithmetic: There just 
aren't enough small sets of rules to go 
around! And that explains why we 
cannot take some set of rules, use it 
to generate a universe of conse- 
quences, make a few changes in that 
universe, and then describe that end 
result, again in terms of only a few 
rules. Now, that altered universe has 
became one of miracles, not of laws. 
There are not enough small sets of 
rules to produce the effect of con- 
tinuity. 

Causes and Clauses 

An alien mind would probably be en- 
tirely different from ours if how we 
think were just an evolutionary acci- 
dent. And then, communication 
would likely not be feasible. But al- 
though every evolution is composed 
of many accidents, each one tends to 
first try relatively simple ways at every 
stage. Since we're the first on earth to 



develop complex languages, and 
since these languages probably 
employ many relatively simple prin- 
ciples, it is likely that alien species will 
share many of these. 1 propose this 
in a form so strong that it may seem 
entirely preposterous at first: I believe 
that many aspects of our language/ 
grammar forms may be almost in- 
escapable. 

Why do we say things like "ft soon 
will start to rain?" Why must we always 
postulate some agent-cause even 
when there is no actor on the scene? 
It doesn't matter if we're right or 
wrong; we'll find a cause or imagine 
one. I claim we seek some cause for 
every difference, move, or change. 
Sometimes our language syntax 
forces this on us, but I claim it is not 
merely a matter of verbal form; it 
stems from deeper causes in the ways 
we think. My guess is that even before 
our ancestors began to speak, they 
first developed special brain ma- 
chinery for representing objects, dif- 
ferences, and causes, and our lan- 
guage/grammar later reflected these. 
Specifically, I suspect that many of our 
thought processes are based on using 
the following kinds of mental symbol 
representations: 

Object-symbols representing things, 
ideas, or processes— In languages, 
they often correspond to nouns. Our 
minds tend to describe every situa- 
tion, real or mental, in terms of 
separate object-things and the rela- 
tions between them. 
Difference-symbols representing dif- 
ferences between, or changes in, 
objects— In languages, they often cor- 
respond to verbs. When any object 
undergoes a change or two objects 
are compared, the mind ascribes 
some differences to them. 
Cause-symbols— When any difference 
is conceived, the mind finds a cause 
for it, a something that is held respon- 
sible. And we use a clever mental trick 
to represent causes in much the same 
ways that we represent objects. 
CI a use-structures— For describing 
complicated situations, we have a 
trick that lets us treat any expression 

[continued] 



132 BYTE • APRIL 1985 



SharelT 

Multiuser database management 
for local area networks 



Fixed Disk 




Workstation 



Workstation 



Workstation 



The best-performing multiuser database 
manager is here today with SharelT, part of 
the ITSeries from Martin Marietta. SharelT 
offers a unique combination of software and 
hardware to deliver the performance you need. 

What is the SharelT software? 

KeepIT Plus™, a multiuser version of 
KeepIT™, the menu-driven relational data- 
base manager that forms the centerpiece of 
the ITSeries of integrated software. 

What is the SharelT hardware? 

The COGENT Database Machine™, a board 
that provides the interface between KeepIT 
Plus and the database. 

How are the PCs networked? 

Using any of the standard network boards: 
PCnet, the Novell Gateway adapter card, or 
IBM's Sytek LAN card. No need for added- 
cost network operating system software. 



Why does SharelT work so well? 

Because the COGENT Database Machine board 
provides the hardware performance of a 
dedicated file server using: 

• An 80186 co-processor and disk controller 
that handle all file access. 

• Cache memory for faster buffered access to 
the database. 

• Additional random-access memory for index 
file processing. 

• Firmware for flat file access, B-tree 
indexing, and record lock. 

And KeepIT Plus provides: 

• Index file management on the COGENT 
board without the need to transfer index files 
across the network. 

• Easy-to-use, yet comprehensive, database 
management. 

For more information or the name of the 
ITSeries dealer nearest you, call 800/222-0592 
or 609/799-7500. 



For IBM, IBM-compatible, and MS-DOS microcomputers. 

The Database Machine is a trademark of COGENT Data Technologies, Inc. PCnet is a trademark of 
Orchid Technology, Inc. SharelT, KeepIT, and KeepIT Plus are trademarks of ITSoftware, Inc. 

Inquiry 248 



A*/1#77V/V MJ\Hi 



Martin Marietta Data Systems 

APRIL 1985 



BYTE 133 



COMMUNICATION 



or description, however complicated, 
as though it were a single component 
of another description, in languages, 
this corresponds to using embedded 
phrases and clauses. 

It is that final self -embedding trick 
of representing prior thoughts as 
things that gives our minds their awe- 
some power. For this permits us to re- 
use the same brain machinery over 
and over again, at each step replac- 
ing an entire conceptualization by a 
compact symbol. That way we can 
build up gigantic structures of ideas 
as easily as our children build great 
bridges and towers from simple 
separate blocks. That way, we can 
build new ideas from old ones— and 
that is what enables us to think. This 
applies to our computers as well. 

This must be why our languages 
also have structures that we can re- 
use: Our thoughts themselves must 
use the same machinery repeatedly. 
That's how our thoughts extend them- 
selves to infinite variety. And, unless 
aliens do that too, they cannot turn 
their thoughts to the prior products 
of their thoughts. Without this trick of 
turning symbols on themselves, you 
can't have general intelligence, 
however excellent your repertoire of 
other skills may be. 

Critic: You might as well argue that the 
aliens will speak English if you claim 
they too use nouns and verbs and 
compound embedded sentences. But 
what if they don't think in terms of ob- 
jects and actions at all? 

I don't think it's an accident that we 
think in terms of thing and cause. 
Whatever may occur, that form of rep- 
resentation leads us always to wonder 
who or what is responsible. And so, 
this evolutionary trick leads us to 
search to find dependencies that help 
predict— and hence control— not just the 
world outside but also what may hap- 
pen in the mind. Perhaps it's also why 
we all grow up believing in a self: 
perhaps that "I" in "I just had a good 
idea" stems from that same ma- 
chinery. Because if you are compelled 
to find something to cause the things 
you do, that something needs to have 



a name. You call it "me." I call it 
"you." 

Critic: But what's so great about 
dependencies? Why can't some aliens 
perceive entire scenes as wholes in- 
stead of breaking them down into 
those clumsy parts? Why not, instead, 
see what there really is, holistically— 
a steady flow of flux in space in time, 
instead of arbitrary form-filled mind- 
made fragments of approximations to 
reality? 

It surely is a healthy tendency to yearn 
for better ways to see the world. But 
worshipping as-yet-undiscovered 
transcendental schemes can blind us 
to the power we draw from our usual 
ways of separating things. Each 
animal must pay a corresponding 
price in energy and nourishment for 
each machine it carries in its brain, 
lust as clause structure in language 
lets us focus our entire word machine 
on each part of a description, our con- 
cept of seeing separate things lets us 
factor situations into parts and then 
apply our whole mind machine to 
each part of the problem. Enthusiasts 
of holism have never understood the 
hidden cost a mind would have to pay 
to "see everything at once." We'd 
never be able to see anything clearly 
at all. 

There have been many speculations 
on how brains might use something 
like holograms for memories. But on 
one side there is no evidence for this; 
on the other there are few advantages 
to it. Holograms store no more infor- 
mation than other methods, and com- 
puter scientists know other, better 
ways to add redundancy to memory 
to make it robust and injury resistant. 
It is true that holograms can simplify 
certain kinds of recognitions, for in- 
stance, deciding whether a picture 
contains copies of some specific 
other picture. But that also makes it 
much more difficult to make most 
other kinds of decisions, to say 
whether a picture contains two sub- 
pictures that share some specified 
relationship. In fact a hologram may 
be almost the worst possible way to 
represent relations among the things 
it represents, because memory and 



learning are useful only when they in- 
form us about relations that are at 
least partially predictable. We do not 
want our memories to give equal 
weights to every arbitrary feature of 
a situation. If a scene contains 50 
features, you don't want to equally 
consider all the quadrillion possible 
subsets of those features. And so we 
need some methods for isolating and 
grouping that can emphasize the 
most usefully predictable subsets. In 
short, without the additional con- 
straints on relations between features, 
which result in the concept of an ob- 
ject, we'd simply never see the same 
thing twice. Then we'd have no way to 
learn from our experience. No knowl- 
edge could accumulate. 

Causes and Goals 

How does having memory help- 
when no two problems are ever quite 
the same in all respects? Our past ex- 
perience would seem to have no 
relevance unless we had some ways 
to see which aspects of the world re- 
main the same, while others change. 
This is why knowledge cannot have 
much use unless expressed in terms 
of relations between predictable fea- 
tures and the actions that we can take. 
But given these it then may become 
possible to predict which actions 
might cause undesirable features to 
disappear. 

To say that xx y happened because of 
x" is, in effect, to say that x can help 
you to predict which actions can lead 
to y. It helps to control its environ- 
ment if an animal can find such 
causes— fragments of predictability that 
work better than chance. But such 
predictions aren't useful when too 
many small effects add up. What are 
causes anyway? The very concept of 
a cause involves a certain element of 
style: A causal explanation must be 
brief. Unless an explanation is com- 
pact, we cannot use it to predict. We 
would agree that x is a cause of y if 
we see that y depends much more on 
x than on most other things. But we 
wouldn't call x a cause if it were a 
discourse that carried on and on, 
mentioning everything else in the 

[continued] 



134 BYTE • APRIL 1985 



BASF QUALIMETRIC FLEXYDlSKS: 
A GUARANTEED LIFETIMEOF 
OUTSTANDING PERFORMANCE. 



BASF Qualimetric FlexyDisks feature a unique lifetime warranty* firm 
assurance that the vital information you enter on BASF FlexyDisks today 
will be secure and unchanged tomorrow. Key to this extraordinary 
warranted performance is the BASF Qualimetric standard. . . 
a totally new set of criteria against which all other 
magnetic media will be judged. 

You can count on BASF FlexyDisks because the Qualimetric 
standard reflects a continuing BASF commitment to 
perfection in magnetic media. One example is the 
unique two-piece liner in our FlexyDisk jacket. This 
BASF feature traps damaging debris away from 
the disk's surface and creates extra space in the 
head access area for optimum media-head 
alignment. The result is a guaranteed 
lifetime of outstanding performance. 

For information security that 
bridges the gap between today 
and tomorrow, look for the 
distinctive BASF package with 
the Qualimetric seal. Call 
800-343-4600 for the name 
of your nearest supplier. 



tfASF^ 



Inquiry 40 

* Contact BASF for warranty details. 



<^ jFflaxyJDisK 




= 



ENTER TOMORROW ON BASF TODAY 

© 1983 BASF Systems Corp., Bedford, MA 



inquiry iqq 




FOR INFO CALL 

1 (212)7254 



-COMPUTERS 
•VIDEO 

• PHOTOGRAPHIC" 
•ELECTRONICS 



FOR OROERS 

> (800) 221-3160 



O The Largest Selection- We Stock It All! 
a 50 YEARS Of Reliable Mall Order Service At 

O The Lowest Prices 

1bmpc&compa\/j 




'mi 




o 
o 

s 
s 

o 
o 
o 
o 
o 



o 




c 
c 
c 
c 
c 

c 
c 

c 







o 
o 
o 
o 

o 
o 
o 
o 
o 
o 



IBM PC w/d iv? monitor Call 

IBM PC w/256k (2) 360 drrves. Key 
board, monitor & monitor adptr Call 
IBM PC As Above w/RGB' Color 

Monitor Call 

lBMPCXTw/256k Call 

IBM AT Enhanced Call 

PC JR wfl28k Call 

CANON Alhena Call 

LEA0ING E0GE PC w/l28k (2) 360 
disc drives, monitor & adapter, basic 

00S211 14W 

LEADING EDGE PC w/256k as abo* 

bul RGB Color 1995 

LEA0ING E0GE PC w/256k (1) 360 
& (1) 10Mb hard disc. RGB Color. 
Adapter. DOS 211 & Basic. .2795 
ZENITH ZF 151 52 w/(2) 369k Disc 
Drives. 320k RAM. IBM Compatible. 
wfFree Microsoft" Word & Free 
Microsoft Mufljptan & Cokx Grapncs 

Ready .2099 

LAP COMPUTERS 
COMPAQ PORTABLE w/256k. (2) 360 

disc drives. DOS. basic 2099 

COMPAQ PLUS Call 

COMPAQ Desk Pro Call 

HP 110 w/272k RAM. Lotus 121 80 

Col Oisplay. 95 Lbs Call 

MORROW w/(2) 360k. 13Lbs . Disc 
Drives, 256k, IBM Compatible Call 

SANYO 5502 699 

SANYO 5552 979 



/amoe 



/ SYSTEMS 



COMPUTERS ; 

APPLE He wftjrive 849 

APPLE He 8M 

APPLE Macintosh 1699 

DEC RAINBOW 100 w/256k (2) disc 
drives, monitor, keyboard, CPM. 

seteel word processor 1995 

DEC RAINBOW 350 As 100 Except, 
wflOmb Hard Disc & (1} FloppyM95 



/ 



board: 

FOR IBM 

AMDEKMIA 389 

AST 6 Pak Plus 219 

AST mega Plus 269 

AST I/O Plus 139 

Game port adapter 44 

KOLA game controller 44 

STB GRAPIX Plus II 349 

PERSYST mono board 174 

PERSYST color 169 

HERCULES graphic card lor TTL 

mono monrtor ..324 

HERCULES color card 199 

OUABDAR0 w/64k 269 

/ *~S^ 

/PRINTERS 
A PLOTTERS 

OKIDATA 82 

92 355 

93 575 

SILVER REED 

400 269 500 

550 449 770. 

OAISY WRITER: 2000.. 
EPSON 

RX80 234 L01500...1069 

OLYMPIARO 349 

NEC 3550 1449 

JUKI 6100 .399 6300 799 

GEMINI STAR: 

10X 239 15X 369 

HP Laser Printer 7795 

HP Plotter ....Call 

Sweet Pea Plotter Call 



84 

2410.. 



...679 
..Call 

...329 
...769 
...799 



SOFTWARE (/IBM \ 

IBM Tofwew M9T 

Framework or dBase III 399 

Lotus 123..299 Symphony .419 

Fhghl Simulator 39 

Word Sta .189 Wo»0Sfcf ProMJ 

Word Star 2000 269 

Mullimale 249 

Wordw/Mouse :2B9 

Turbo Pascal 39 

SideKek 39 

PC Paintbrush w/Mouse 149 

NORTON utilities 49 

Copywrite 41 

Enable 299 Sideways 59 

Sargon III. ...39 Zork 29 

R Base 4000 258.95 

Managing Your Money ..'..119 

Typing Tutor III 34 

Mast er Type 34 

MONITORS L^L 

AMDEK 310A 159 > Q 

GORILLA Green 89 

LEADING EDGE RGB Color....399 
PRINCETON GRAPHICS: 

HX12 459 Max 12 149 

SANYO CRT-3Q 99 

CRT36 129 CRT70 549 

TAXAN 210 RGB 219 

TAXAN 410 IBM RGB ....349 

TAXAN 420 Hi Res RGB f/IBM 419 
TTl Green. 139 TTL Amber 149 
XTRON 1000 Lines Hi Res Amber 

l/IBM TTL 149 

ZENITH: 

122 89 123 98 

124 IBM Compatible 139 

133 RGB...OW 135 RGB ..C all 

MODEMS \ 

HAYES 1200 .449 

1200B w/Smancomll...: 409 

SMARTCOM II. 99 

2400 : Call 

NOVATION SMARTCAT: 

internal 389 Exln 375 

US ROBOTICS Password 1200 349 
ACCESSORIES 

Oisc Bank Holds 50 14 

HEAD disc drive cleaner 13 

VERBATIM drive analyzer 29 

SURGE PROTECTORS: 

NetWork cube wfRF filter 29 

Network 4 outlet w.'RF filter 59 

Plmini outlet w/RF filler 59 

■ DISKETTES \ 

verbatim Data Lile (10)21 29 

FUJI (10) 18 24 

MAXELL (10) 19 28 

BASF (10) 17 23 

IBM (10) 22 29 

FAMOUS MAKE ....13 19 
SPECIAL! TDK 

Quantities ol 100/ea 1 .35 ea.1.55 
-* 

TYPEWRITERS 

CANON Typestar 5 

CANON Typestar 6 258 

BROTHER CE 58 458 

OLYMPIA Compacr ii 399 

SMITH CORONA 350M 318' 

"M« ManullClurers Rctule 

CANON COPIERS \ 

PC 10 479 PC 20 ......689 

PC25 989 

4 Black Cartridges 199 

Color Cartridge 64 

PC Copier Stand 99 



/lAYI 



/CAN( 
CAr 
BRC 
OLY 

SMI 

•wiei 

* pf\i 



irfV 



O 
O 

o 

o 

I 

o 
o 
o 



IBM PC m 

W/S4k (1) 360 Disc Orije J^SS? 

S.Keyboard 145W 

IBM PC W/256k (2) 360 Disc 
Drives. Graphics Monitor Card, 
Mon . Keybd & Software Kit .1995 
IBM PC AT : Call 



LEADING 
EDGE PC 

Wfl28k. Leading 
Edge Monitor, 
Keyboard, Monitor 
& Printer Adapter 



ZENITH ZF 151 52 

W/(2) 360k 
Disc Drives, 320k 
RAM, Microsoft Word. 
Multiplan. Keyboard. * , 
9QDay0nSigMSOT ce 2QQQ| 



SANYO 550-2 

Now Runs Lotus 123* 

ISM PC Compatible. 

360k Disc Drive. ' 

128k RAM. Word Slar. c «fl 

Calc Star & Easy Writer 033 

SERIAL CARD 189 



1265 Broadway at 32nd St., New York, 10001 . 





OLYMPIA RO 

Letter Quality. ' 

14 Cps w/Parallel & 
Serial Ports w/BuiIMn 
Tractor Feed. ONLY! 



COMPAQ 

Portable Wf(2) 360k s 

Disc Drives. DOS & 

Basic Keyboard.. 

COMPAQ 

Plus W/Hard Disc In Stock J 




COWWUIi CCOUN15 MlIOMf I Momum Saptwtg Orde IX 

tEttX MWStH 4?SM SPWU t?W Service Cvxoe to &IW1 

Vat. Mj«iC*d Vfctome undtt MO Mnnwn Snow W9i 

Some Prices Ma* Offlei Only We Are Nol ReMonsWe Fw lypos 

* flow II* StfK 10 Wi Ouwtn I Or Mjnuuclwers P<«ces Change! 

Prices Effective tail 1.1»5-Mav 1.1965 



JSLQJLQ Q tUkSLSUULSL 



COMMUNICATION 



whole world and never coming to any 
point. This applies to objects too. 

There can't be any objects, things, or 
causes in worlds where everything 
that happens depends, more or less 
equally, on everything else that 
happens. 

It makes no sense to talk about a 
thing in such a world, because our very 
notion of a thing assumes some con- 
stellation of properties that stays the 
same or changes ways we can predict, 
when other things around it change. 
Wh e n you move an object, its location 
changes— but not • its color, weight, 
material, size, or shape. How conve- 
nient that our world lets us change a 
thing's place and still leave so many 
other properties unchanged. If this 
were not the case, the number of 
combinations to keep track of would 
grow exponentially with the number 
of features we perceive and We would 
have no sense of what causes things to 
happen. 

To deal with something complicated, 
you must find a way to describe it in 
terms of substructures within which 
the effects of actions tend to be 
localized. To know the cause of a 
phenomenon is to know, at least in 
principle, what can change or control 
it without changing everything else. 
This is useful when it enables us to 
change one thing without making 
other things worse, 

For a mind to discover causes in its 
world, it must have sensors that 
detect changes that are predictably 
related to the actions it can take. For- 
tunately, evolution tends automatical- 
ly to select just such matched sets of 
sensors and effectors, because in vir- 
tually any environment an animal's 
survival is enhanced if its actions are 
based on good predictions. So we can 
expect evolutionary processes to ac- 
cumulate mechanisms that reflect the 
causal laws that operate in their en- 
vironments. And it would seem that 
the most powerful methods are those 
that let you make predictions about 
the effects of contemplated action 
chains, that is, the ability to make 
plans. 



Problems seem hard when their 
solutions aren't obvious. The most 
general way we know to solve prob- 
lems is to set up systems that have 
some way to make "progress toward 
a goal." In the late 1950s, A. Newell 
and H. A. Simon worked out a theory 
of what they called the "General Prob- 
lem Solver." This is a theory of how 
to reach a goal by making progress— 
finding actions that can replace each 
problem that has a high-level difficulty by 
other problems, each of which has a 
lower-level difficulty No one can 
prove that all intelligent problem 
solvers, however alien, must use this 
selfsame principle. But until we find 
another, comparably general idea— 
and none is on our horizon— it is hard 
to imagine how an intelligence could 
evolve without exploiting some such 
idea of goal. 

Reliable Communication 

Before we ask how aliens communi- 
cate, we ought to ask how humans 
can. Is there ever a word that means 
the same to any two of us? Everyone 
must have wondered once, ''Could 
two persons have different meanings 
for every word, yet never sense that 
anything is wrong?" What if each thing 
that's green or blue to me is blue and 
gr e en to you? The sparseness theory 
claims that we need have no fear of 
that, at least for technical concepts, 
since one of the two outwardly in- 
distinguishable meanings would prob- 
ably be vastly more complicated than 
the other and would never have been 
conceived in the first place. Sparse- 
ness means we can trust one another. 
We know very little of where that 
idea might lead because we know so 
little about how sparseness isolates 
any particular concept. But the 
general idea does seem to support 
the mathematical and physical intui- 
tions proposed by Hans Freudenthal 
in UNCOS, his book on alien commu- 
nication, perhaps even in regard to 
the miniature models he suggests for 
discussing social and administrative 
subjects. There is one problem 
though: Introspection is a poor guide 
for guessing which of our common- 

(continued) 



136 BYTE • APRIL 1985 



The fastest micro in the world 








No micro in its right mind would 
want a showdown with Pinnacle. 

Its awesome fire power is 
provided by the superb Motorola 
68000 charging along at 12MHZ 
with no wait states (giving about 
3MIPS). 

And Pinnacle's ammo belt is just 
bristling with high powered options 
to give rapid fire to all seven users. 

P-System, Unix® CP/M-68K,® 
Mosys, BOS, Mirage, Tripos all obey 
instantly - along with their armies of 
applications. 



Up to 8 Megabytes of directly 
addressable RAM and 110 
Megabytes of Winchester storage 
dance when Pinnacle barks its 
sharp orders. 

And that's just for starters. 
There's also the Pinnacle IX with 
TWO 68000's, DMA, and Memory 
Management hardware. Ideal for 
disk intensive operating systems 
like Unix® and Pick 



And a Pinnacle LX expansion 
chassis allowing nine 68000 
processors to network 56 users. 

A micro's gotta do what a micro's 
gotta do. 

And starting at under $4000 
Pinnacle's just the fastest there is. 

PINNACLE 

The accessible peak of performance 



US DISTRIBUTORS Pinnacle Systems Inc. 10410 Markinson Road, Dallas, Texas 75238. Tel. (214) 340-4941. Telex 88-8442 

electronic manufacturing/service Lamtech Electronics Corporation, 620 Easy Street, Garland, Texas. Tel. (214) 272-3504 

international SYSTEMS GROUP ISG Pinnacle, Dallas, Texas. Tel. (214) 340-4941. (Distributor enquiries invited). 

VERTICAL MARKET SYSTEMS VMS Pinnacle, Dallas, Texas. Tel (214) 340-4941. 

EUROPEAN DISTRIBUTORS TDI Pinnacle Ltd, 29 Alma Vale Road, Bristol BS82HL 1 England. Tel. (0272) 742796. Telex 444653. 

UNIX is a Registered Trade Mark of Bell Labs. CP/M-68K is a Registered Trade Mark of Digital Research. Inquiry 302 



COMMUNICATION 



sense concepts are really simple, 
because many things we find easy to 
do use brain machines whose com- 
plexity we cannot sense. For exam- 
ple, we find it easy to stand on two 
feet, but some aliens might find that 
quite astonishing. 

What other ideas are likely to be 
universal in the sense of being islands 
in that sea of possible ideas? Surely 
the mathematical notions of utility, 
linear approximation, probability, and 
the simplest program-like processes 
are. These could serve to communi- 
cate much about trade and com- 
merce, basic facts of biology, and 
even many principles of mental life— 
e.g., about objects, goals, and mem- 
ories. At some point, though, sparse- 
ness must fail, because things that are 
more complicated will have all kinds 
of variations and alternatives, and 



communication will encounter ob- 
stacles of every sort. 

Therefore 

There is little more that 1 can say to- 
day with any scientific certitude. 
Tomorrow there could be more, 
perhaps because of soon-to-come 
gains in computational power that 
could let us explore a little further 
into the mysterious ocean of all pos- 
sible simple machines. There we 
might find a few more ideas isolated 
enough to share with other minds. 
Such explorations also might tell us 
more about the origin of life itself by 
showing us the simplest schemes that 
could support the simplest forms of 
evolutionary search. ■ 

BIBLIOGRAPHY 

Ernst. G., and Allen Newell. GPS: A Case 



Study in Generality and Problem Solving. New 
York: Academic Press. 1969. 
Freudenthal. Hans. UNCOS: Design of a 
language for Cosmic \ntercourse. Amsterdam: 
North-Holland. 1960. 
Lenat Douglas. 'The Nature of Heuristics," 
Artificial Intelligence, vol. 19. 1982. 
Hiring, Alan. "On Computable Numbers, 
With an Application to the Entscheidungs- 
problem," Proceedings of the London 
Mathematical Society, vol. 2. 1937: reprinted 
in Martin Davis (ed.), The Undecidable. New 
York: Raven Press. 1965. 

ACKNOWLEDGMENT 
This article is an adapted version of a 
paper by Marvin Minsky in Extraterrestrials: 
Science and Alien Intelligence, edited by 
Edward Regis ]r. and published by Cam- 
bridge University Press. Copyright March 
13, 1984, revised December 10. 1984. The 
book will be available in the summer of 
1985. Reprinted with permission of the 
editor and Cambridge University Press. 



A Glossary 
of Artificial-Intelligence Terms 



And, Or, and Stream Paral- 
lelism: different techniques for im- 
plementing parallel operations, 
based on and, or, and pipelined ex- 
ecution hierarchies. 

Bags: formal mathematical objects 
that differ from sets in that they 
allow duplicate items. 

Blackboard: used in systems 
composed of independent 
modules as a means of communi- 
cation. The blackboard is a com- 
mon area of memory containing 
system-state data that all modules 
can access. 

Frame: a knowledge structure (or 
database) used to describe the at- 
tributes that an object possesses, 
arranged in a "slot and filler" for- 
mat. Each slot and its contents 
carry information about a par- 
ticular aspect of the object. 

Grain Size: when used in conjunc- 
tion with parallel processing, grain 
size refers to the complexity of the 



code chunks allocated to each pro- 
cessor. For example, if processor A 
is assigned to perform an addition 
operation while processor B is 
assigned to perform a sort opera- 
tion, the grain size of the code 
assigned to processor A is smaller 
than that assigned to processor B. 

Heuristic: a technique that im- 
proves the efficiency of a problem- 
solving process, even though its 
use cannot be strictly justified. In 
A I, heuristics are typically used to 
reduce the time required to solve 
extremely complex search prob- 
lems. 

Knowledge Engineer: an AI pro- 
grammer who constructs expert 
systems. 

Predicates and Demons: a predi- 
cate is a type of function that tests 
for some condition involving its 
arguments. A demon is a proce- 
dure that activates automatically in 
response to recognizing a prede- 
fined state. 



Script: a frame-like knowledge 
structure used to represent related 
sequences of events. The slots in 
a script contain information con- 
cerning an event (where the event 
occurs, people involved, objects 
manipulated, etc.), and the events 
are linked in a causal chain. 

Semantic Net: a graph of nodes 
and connecting links; the nodes 
represent objects, and the links 
represent relationships. A family 
tree is a good example of a seman- 
tic net. 

Tagged Memory Architecture: in 

AI applications, tagged memory ar- 
chitectures use part of each mem- 
ory word to convey information 
about the data stored in the re- 
maining bits of that word, includ- 
ing the data type and format. 

Unification: a pattern-matching 
method; the result of a unification 
is the assignment of values to the 
variables of two patterns so that 
both patterns become identical. 



138 BYTE • APRIL 1985 



ACCOUNTANTS TO 
ZOO KEEPERS NEED 
DATABASE APPLICATIONS 

HOW CAN I SPEAK 
THEIR LANGUAGE? 




HERE'S HOW: 

dBASEffl" SOFTWARE 



Whether you're keeping track 
of accruals or zebras, dBASE III™ 
will easily create specialized 
applications which speak your 
customers' language. 

You can quickly write 
applications for your customers 
because dBASE III contains a 
high-level language of plain- 
English commands that's power- 
ful and easy to use. And, because 
we understand that your cus- 
tomers' needs often change, we 
made it easy to modify the struc- 
ture of your database. 

Let's say you've set up a data- 
base application for a zoo keeper. 
After using the application for six 
months, he discovers that he 
needs to specify the sex of all his 
animals, an item he forgot to ask 
for when you created the applica- 



tion. You've got 1,397 records 
entered, but you have to change 
the structure of the database. 

These commands: 



value of a character field, and is 
one column wide. 



Ctrl 



W 



ends your input. 



USE ANIMALS 



Selects the database. 



MODIFY STRUCTURE 



Move the cursor to the place 
where you want to insert the new 
field. 

Adds the new 
field. 



Ctrl 



The new field will be inserted 
above the cursor position. 



SEX 


<-< 


r— S 



m 



Specifies that the new field is 
titled "SEX", has the default 



confirms that you're satis- 
fied with what you've done. 
Now, your customer is ready to 
identify his zebras as boys or girls 
using the program you created 
for him. 

dBASE III makes your program- 
ming effort quick and productive 
because it's an English-language 
exercise whether your customer 
is keeping track of cash flow or 
feeding schedules. 

For a dealer near you call 
(800) 437-4329, ext. 232 
In Colorado 
(303) 799-4900, 
ext. 232. 



ext. z sz. 

^^P"^ All 



dBASEllland 
A.shtr>i>Tdte 
art trademarks 
of AshtonTate. 
©Ashton%te 1985. 
All righUreserved. 



Software from 



^SHTON-TATE 

Well putyou in control. 



Inquiry 34 



APRIL 1985 • BYTE 139 



BuylOflo 

stopworryin 











ppiesand 
about dust 
storms, lint 
attacks or 

the bends 



The Flip V File™/15 are more reliable, 
is an island of calm and With this kind of pro- 
order in the savage envi- tection, all you have to 
ronment of the modern worry about now is 
office. when this limited 

It's also free, when you special offer sells out. jdBpi i 

i . ,, 1 j ^ Offer availabk^ from participating distributors. 

DUy a Specially marked ^^^^ personal computer dealers and office supply dealers. 

package of 10 double or .^^^^^k. Which, if you don't 

single sided, double density ^Bi* ^^k. hurry, could be before the 

3M diskettes. They're the ^k KL r ) m^ next major coffee spill, 

certified 100% error-free ^k »S S,y ^^L ^ . 

j- 1 «. a m ImBSk s mm. One less thing to 

diskettes; no floppies M W$k& A m. WOITVahonr™ ■ 





Inquiry 384 



APRIL 1985 -BYTE 141 



Introducing Expert Ease. The First 
Practical Expert Systems Generator 

ForYourlBMPC. 



Are you ready to join the Artificial Intelligence revolution? 



Expert system —Type of artifi- 
cial intelligence program that 
allows the computer to be taught, 
using English sentences, to solve 
a problem. 

You're an Expert. And 
you're someone who's thought 
about writing your own expert 
systems program for quite 
awhile. The only thing holding 
you back is that you haven't had 
the big bucks to buy a main- 
frame. Now, with Expert Ease™ 
you can easily create your own 
expert system on your own 
IBM PC. 



'Expert Ease is a fascinating 
new software package that, for 
the first time, allows experts in 
any field to create problem- 
solving 'expert systems on a 
microcomputer . !One of the most 
interesting, thought provoking 
programs to come along in quite 
some time." 

PC Magazine 



Make Your Knowledge 
Work For You. 

Expert Ease is the first 
practical AI system generator 
that's just waiting to become 
as smart and as savvy as you 
are. It learns as you learn. Simply 
enter your expert information 
by example, and Expert Ease 
will automatically construct the 
appropriate decision tree to 
allow the non-expert to make 
a decision, solve a problem or 
have the benefit of your expert 
advice. It even uses the non- 
expert's own vocabulary 
and terminology. 

142 BYTE • APRIL 1985 



"In a demonstration test, Expert 
Ease proved to be extremely sim- 
ple to follow. . . The potential 
applications are significant." 

The Artificial 
ntelligence Report 



Expert Ease Can Approve 
Loans Or Load Airplanes. 

The applications and uses 
for Expert Ease are virtually 
unlimited. You can do something 
as straightforward as loan 
approvals or something as com- 
plex as recommending the most 
efficient way to balance the 
cargo on an airplane. Expert 
Ease can trouble shoot car prob- 
lems or diagnose medical prob- 
lems. You can update, modify, 
improve, refine or enhance your 
expert system at any time. In 
short, anything you can do, it 
can do as well. 



"Expert Ease can codify any 
discipline, decision process, or set 
of rules, policies or procedures. . . 
Using Expert Ease is simple. . . 
The approach is like one of a men- 
tor instructing an apprentice" 
Electronics 



Join The Next Generation 
Of Expert Programmers. 

Until now, the expert sys- 
tems technology designed into 
Expert Ease has only been 
available to mainframe users. 
There's little doubt that with 
the introduction of Expert Ease, 
there will be an explosion in 
expert systems development. 

Business programs will be 



written to improve quality con- 
trol and productivity. Tutorial 
programs will be developed as 
learning aids. And experts from 
all walks of life will be sharing 
their thoughts in ways that have 
yet to be conceived. 

Human Edge Software 
Corporation will remarket se- 
lected Expert Ease applications. 
When you develop your million 
dollar system, contact us first. 

If you have an expertise you 
need Expert Ease. Order now 
and save $100! 

"The most intriguing product 
I saw during the past year was 
Expert Ease, . . . this early glimpse 
into what may be next years 
hottest software category left me 
hungry for more. Once you ve 
worked with software that re- 
flects your own thinking, it's 
hard to be satisfied with any- 
thing less." 

Mike Edelhart, Executive Editor 
PC Magazine 

fSittTESlOOTI 



I Pay only $595. 



If your dealer doesn't have Expert Ease 

I yet, order direct point. Order by Master 
Card or VISA, or call 1-800-624-5227 
(in California 1-800-824-7325) 

I Name 
Address 

I City 
State 

I Zip _ 



Card Name 

Card Number_ 



I Expiration Date 

I Signature 
15-Day Money Back Guarantee. 

K HUMAN EDGE 

We Make Computers Think 



Inquiry 190 



ARTIFICIAL INTELLIGENCE 



THE QUEST 

TO UNDERSTAND 

THINKING 

by Roger Schank and Larry Hunter 



It begins not with complex issues 
but with the most trivial of processes 



ARTIFICIAL INTELLIGENCE, or AI. 
takes as its subject matter some of the 
most daunting questions of our ex- 
istence. What is the nature of mind? 
What are we doing when we are think- 
ing, feeling, seeing, or understanding? 
Is it possible to comprehend how our 
minds really work? These questions 
have been asked for thousands of 
years, but we've made little tangible 
progress at answering them. 

AI offers a new tool for those pur- 
suing the quest: the computer. As 
anyone who has used one can attest, 
computers often create more prob- 
lems than they solve. But for probing 
the issues of mind and thought, that 
is just what we need. 

The fundamental use of computers 
in helping us understand cognition is 
to provide a testbed for our ideas 
about what the mind does. Theories 
of mind often take the form of pro- 
cess descriptions. For example, a 
theory of question answering might 
claim that people first translate a 
question into an internal representa- 
tion, use that representation as an 
index into memory, translate the re- 
called memory into an appropriate 



form for an answer, and then generate 
the words to communicate it. (This ex- 
ample is offered not as a real theory 
of question answering but as an ex- 
ample of what a process theory of 
mind might look like.) 

Process theories seem to be a good 
way of describing what might go on 
inside the brain. One problem with 
them, however, is that all too often 
what looks like a good description 
really isn't specific enough to make 
the theory clear. "Use the represen- 
tation as an index into memory" isn't 
a good explanation of the processes 
behind remembering a fact. How are 
facts recalled? How is the memory 
organized? What happens when 
memory gets very large? What if a fact 
isn't directly encoded in memory but 
can be inferred from something that 
is? A researcher trying to write a pro- 
gram that embodies the above sim- 
plistic theory would run into all of 
these problems and more. That's why 
we need to write programs. Program- 
ming forces us to be explicit, and be- 
ing explicit forces us to confront the 
problems with our theories. 

Not long ago, AI researchers like 



ourselves focused on what they con- 
sidered to be manifestations of highly 
intelligent behavior: playing chess, 
proving mathematical theorems, solv- 
ing complex logical puzzles, and the 
like. Many AI researchers devoted a 
lot of energy to these projects and 
found powerful computational tech- 
niques for accomplishing such "intel- 
ligent" tasks. But we discovered that 
the techniques we developed are not 
the same ones that people actually 
use to perform these tasks, and we 
have instead begun to concentrate on 
tasks that almost any adult finds 
trivial: using language, showing com- 
mon sense, learning from past expe- 
riences. 

Language 

We began studying these "trivial" 
tasks by trying to write programs that 

{continued) 
Roger Schank is chairman of the computer 
science department at Yale University. Larry 
Hunter is a graduate student in computer 
science at Yale. Both authors can be reached 
at the Yale University Artificial Intelligence 
Laboratory, 10 Uillhouse Ave.. New Haven, 
CT 06520. 



APRIL 1985 • BYTE 143 



THINKING 



People understand 
a great deal more 
than the lexical content 
of an utterance. 



could use English (or other natural 
languages) in a useful way. We wanted 
such programs to be able to under- 
stand the written word well enough to 
summarize it, translate it into another 
language, or answer questions about 
it. We were immediately confronted 
with the fact that people understand 
a great deal more than just the im- 
mediate lexical content of an ut- 
terance. For example, most people 
would agree that the sentence "John 
bought a new car" contains a refer- 
ence to money, even though the word 
'money" does not appear in the 
sentence. Any program that under- 
stands that sentence would have to be 
able to answer 'Yes" to the question 
"Did )ohn spend money?" 

How. could a program know that? 
One approach might be to associate 
"money" with the word "bought," 
claiming that "buy" means "trade 
money for." This method uses the 
meanings of the various words in the 
sentence to build up a representation 
of the meaning of the whole sentence. 
That is more or less the right ap- 
proach, but it has some problems. For 
one, words are ambiguous, and the in- 
ferences we make about their mean- 
ings can easily be wrong. "Buy." for 
example, doesn't always mean money 
changes hands, as in: "John bought 
Mary's argument." Ambiguity is so 
widespread that any program dealing 
with natural language must have 
powerful methods for handling it. 

Another problem is that often 
underlying meanings do not come 
from the definitions of any particular 
word. Consider the following story: 
"John went to a restaurant. He 
ordered a sandwich. The waiter 
brought it quickly, so he left a large 
tip." The meaning of this story ob- 
viously includes the fact that John ate 



the sandwich and paid for it. However, 
those actions are not implicit in any 
particular word in the story. How 
might a computer program infer 
them? It would have to know about 
what goes on in restaurants. A person 
could also conclude that John prob- 
ably looked at a menu, that he sat at 
a table, that a cook made the sand- 
wich, and so on. The program needs 
to be able to fill in the unmentioned 
gaps in a text with information about 
the events being described. 

There is a solution to both prob- 
lems: The program must be constant- 
ly generating expectations about what 
will happen next. Ambiguity is rarely 
noticed by human speakers because 
the context makes clear which mean- 
ing is correct. For a program to be 
able to resolve ambiguity, it must 
build up a "context" as well. In other 
words, the program must have some 
idea of what will happen next, based 
on what has happened previously and 
what it already knows about these 
kinds of situations. Expectations are 
very helpful in resolving ambiguity: 
the expected sense of an ambiguous 
word is the one that should be as- 
sumed. The expectations set up by 
"The bartender poured scotch on . . ." 
makes it easy to use the proper sense 
of "the rocks." 

Expectations also help fill in the 
gaps in a story. They commonly come 
in bunches or packages. When we hear 
about a restaurant, we expect to hear 
about a variety of objects, events, and 
people. There should be a menu, the 
patron should look at the menu, pick 
something, tell the order to a waiter 
or waitress, wait for a while, be served, 
eat the food, have the table cleared, 
get a check, pay the check, leave a tip, 
and depart. As is obvious from this 
example, expectation packages can 
be temporally ordered, which makes 
it possible to infer that ")ohn ate his 
sandwich" in the earlier example. 
When an expectation is satisfied, the 
program can infer that the expecta- 
tions temporally prior to it are prob- 
ably also satisfied. People know about 
common sequences of actions in the 
world and use that knowledge to gen- 
erate expectations. There is no way to 



understand language without know- 
ing something about the subject mat- 
ter under discussion. 

To build programs that test these 
ideas, we had to figure out what kinds 
of expectations exist and specifically 
how they are used. First, we looked 
to human behavior to guide us. Peo- 
ple constantly generate expectations 
at many different levels of specificity. 
We have expectations about what syl- 
lable sounds are likely to be heard 
next that help us resolve ambiguous 
sounds into words. We have lexical ex- 
pectations about what words or 
classes of words will come next. We 
have expectations of events that are 
likely to occur. We also have a variety 
of expectations about other things, 
like the kinds of goals that various 
people may have, plans and counter- 
plans involved in pursuing those 
goals, and emotional reactions to 
various events. 

Then we thought about how a pro- 
gram might handle this. In some 
sense, every natural-language parser 
uses expectations. The difference be- 
tween a traditional, strictly syntactic 
parser and a more conceptual parser 
is the source of its expectations. A 
syntactic parser uses only knowledge 
about grammar. A conceptual parser 
uses information from many sources, 
grammatical and otherwise. While a 
traditional parser sees syntactic 
analysis as a preliminary process for 
other analyses, a conceptual parser 
sees syntax as only one of many 
sources of information used simulta- 
neously to understand text. 

Many of the low-level expectations 
of our parsers come from the vocab- 
ulary used to represent meaning. 
Some of our programs have used con- 
ceptual dependency (CD) to represent 
meanings (see reference 1). The basic 
CD form has slots for an action, an ac- 
tor, an object, and a directional com- 
ponent (from or to). Each CD action 
has associated semantic constraints 
on the kinds of entities that can fill its 
slots. For example, the CD action in- 
gest requires that its object be edible 
and its actor be alive. When any word 
that refers to "ingest" appears in a 

[continued) 



144 B YTE • APRIL 1985 




The giant is awake. 



TVT-7220 
(VT-220 emulation) 





CM-1370 

13" RGB! High Resolution 



1 8- .we've- 



quietly 



designing, manufacturing, and 
distributing a broad range of 
products for industry, business, and 
consumers all over the world. And 
so we've quietly grown to be a multi- 
national company with almost a billion 
in sales from the world's toughest 
markets. Markets that demand quality, 
performance, and reliability/Which is 
why Tatung terminals and monitors 
have become the choice of 
important systems designers. 



Tat un 



are compatible 




For complete information 
call'toll free: 1-800-421-2929. 
In California, call (213) 979-7055. 
TATUNG COMPANY OF AMERICA, INC. 
2850 El Presidio, Long Beach, CA 90810 



TATUNG 



Inquiry 3 79 



with virtually all popular computer 
systems. Each model offers superior 
resolution and CRT color imagery, 
along with controls for precise 
picture "tuning". Tatung terminals 
offer operational flexibility, 
compatibility with all popular 
systems, and day-in-day-out 
reliability. But, no matter which 
model you choose, no other 
terminal or monitor offers 
as much. ..for so little. 



Tatung Monitors are available at: 

WESTERN MICRO SYSTEMS 

A Quality Distributor 

Serving the 13 Western States 

Western States 1-800-544-0020 

In California 1-800-338-1600 



What every Apple owner 
should know about 

WORD 

juggler: 






If you own an Apple He or He — or you're planning to 
buy one — here are a few things you should know about 
Quark's Word Juggler word processor. 

First of all, Word Juggler is the only word processor that 
gives you a powerful spelling checker and a built-in telecom- 
munications feature. So you can create a document — check 
it for spelling errors — and then send it via electronic mail. All 
with just one program. 

Plus, Word Juggler is the most easy-to-use, professional 
word processor you can buy for your Apple. Even compli- 
cated "cut-and-paste" tasks can be accomplished with just 
3 few keystrokes. 

There's nothing to memorize, either. Because Word 
Juggler comes with replacement keycaps — and a special 
keyboard template — which identify principal editing and 
formatting commands. So you can focus your efforts on 
using the program, not learning it. 

Fact is, no other word processor for your Apple He or 
He gives you this unique combination of power, functionality 
and ease of use. And if all these advantages aren't compelling 
enough, check the price. Suggested retail is only $189. 

So visit your favorite dealer today. Ask for a complete 
demonstration — and for a copy of our brochure, "What 
Every Apple Owner Should Know About Word Juggler." If 
you don't have a favorite dealer, but would like one, just call 
1 (800) 543-7711. We'll fix you up. 









) 




Quark 

mmmm^mm* incorporated 



2525 West Evans, Suite 220 
Denver CO 80219 
Inquiry 326 

Quark and Word Juggler are trademarks of Quark Incorporated. Apple is a 
registered trademark of Apple Computer, Inc. 

Ask about our specially-priced educational version. 



146 BYTE • APRIL 1985 



Copyright 1 985, Quark Incorporated 



Photography by Barbara Kasten 



THINKING 



text expectations are generated to 
hear about an edible object (general- 
ly after the word meaning "ingest") 
and a living actor (generally before 
"ingest"). Notice that the expectations 
generated are both semantic (predict- 
ing a word or meaning) and syntactic 
(predicting where the word might be 
found). Of course, even the CD action 
may be ambiguous. One way to clear 
up the ambiguity in such cases is to 
generate the expectations from both 
possible meanings and pick the action 
whose expectations are met by the re- 
maining words in the story. This tech- 
nique could be used to clarify the 
meaning of "buy" in the earlier exam- 
ple; "buy" would generate two sets of 
expectations, one predicting a valu- 
able object and the other predicting 
an opinion. When one expectation set 
was satisfied, the program could de- 
activate the other. 

There are many other ways to clear 
up ambiguities. More complex expec- 
tation schemes can provide better in- 
formation. Consider the restaurant 
story above. The sentence 'The waiter 
brought it quickly so he left a large 
tip" has an ambiguous pronoun, "he." 
Standard rules for pronoun reference 
fail here; sex and number don't dif- 
ferentiate, and "he" does not refer to 
the most recent agreeing antecedent, 
"waiter." The only way to clarify the 
meaning of this pronoun is by the ex- 
pectation that patrons leave tips for 
servers. You might try associating this 
information with the appropriate 
meaning for the word "tip." but patron 
and server are not just semantic re- 
strictions on slot fillers. John might be 
a patron in this episode, but he might 
act as a server in some other situa- 
tion. The patron/server/tip expectation 
and the identification of John as a 
patron must come from a package of 
expectations about restaurants. 

When we began to use packages of 
expectations in programs, we dis- 
covered a few things about packages. 
First, any story will refer to many 
packages, and the packages can relate 
to each other in many different ways. 
Packages can be grouped together 
themselves (date = drive, restaurant, 
drive, movie, drive) or can fill slots in 



some other package (the 'pay" slot 
of restaurant might be filled by "wash 
dishes"). They can occur at the same 
time (eating and taking an airplane) or 
be incompatible (driving an auto- 
mobile and taking an airplane). Pack- 
ages can also have word senses as- 
sociated with them. In the restaurant 
package, "tip" is more likely to mean 
"money" than "end point." This kind 
of associated lexicon doesn't solve 
the problem of ambiguity, but it is a 
helpful tool. 

We also ran into some problems 
with packages. How could a program 
figure out which package to use at any 
given time? It is reasonable to add ac- 
tivation conditions to a package that 
specify the situations in which that 
package might be relevant. Early pro- 
grams just looked at each package to 
see if its conditions had been met. As 
the number of packages increased, 
their organization had to improve. We 



needed some way of finding the right 
set of expectations at the right mo- 
ment, without looking at every pack- 
age. As we built programs that used 
packaged expectations and gave 
them real stories (taken verbatim from 
the UPI newswire), we noticed that 
sometimes expectations failed. These 
failures were often very interesting 
events. We began working on ways to 
determine the difference between a 
failed expectation and an unresolved 
one that should be inferred. 

Another problem was picking what 
was to be a package and what wasn't. 
There are many things about eating at 
home that are like going to a restaurant. 
Do the expectations about eating at 
home come from the same package 
or a totally different one? How about 
eating in different restaurants? We 
needed a theory of how to organize 
and find groups of expectations. 

{continued) 



NEW AMBER CRT'S 



0* 



0, 



Eliminates strobe, flicker, and eye fatigue 

Made with Lead/Strontium impregnated 
gloss that stops X-ray emission 

Available in slow decay green or medium decoy 
"European Amber" (the standard in Europe) 

High-contrast double dark face 
gloss that also cuts U.V. radiation 

Tube face is etched to stop glare 

r Ideal for word processing and programming, 
yet fast enough for games ana graphics 

Warranted for one full year against 
manufacturing defects or tube failure 



I j^*Comes with o 30 day money bock 
I I guarantee 

I r^Easily installed (comes with pre- 
L_J mounted hardware) 





Now, you can easily upgrade your monitor to 
exceed European standards for persistence and 
color with the installation of a Langley-St.Clair 
Soft-View™ CRT! Available for the TRS-80™ 
TeleVideo,™ Kaypro,™ Heath,™ DEC™ Zenith,™ 
IBM PC,™ Apple III™ and a wide variety of 
other monitors. 

TO ORDER: 



& 




4 



Your new 
CRT is easilv 
installed with 
a screwdriver 
and o socket. 



Call now to order your Soft-View™ 
CRT from Langley-St.Clair— $99.95 

Plus $7 for packing and UPS Shipping ($17 for Over- 
seas, Parcel Post, or UPS Blue Label). Add soles tox 
where applicable. Visa/MasterCard orders welcomed. 

•"•Langley-St.Clair 

Instrumentation Systems, Inc. 
132 W. 24th St., New York, NY 10011 
In New York call 212 989-6876 



CALL 800 221-7070 



APRIL 1985 -BYTE 147 



Inquiry 69 



1st PLACE 

COMPUTER SYSTEMS 
13422 N. CAVECREEK RD. 

PHOENIX, AZ. 85022 

OTHER INFORMATION: 602-867-9897 



Hi — I'm Joan, 

Thank you for the 
fine response I've had 
to my ad. 

I'd like to mention 
that prices change very 
quickly in this business, 
(keeping in mind that 
our prices include ship- 
ping) so if a price seems high, call me and 
maybe we can adjust it. 

May spring time be the beginning of a 
beautiful summer for all of you. 

Thanks again and God bless 
Joan 




SHIPPING 

WEST OF MISSISSIPPI 
EAST -% UPS CHARGES 



CALL FREE 
1-800-841-2748 


PRINTERS COMPUTERS 


ALTOS 580-20 

ALTOS 586-20 

IBM PC 


. $3350 
. $5350 
. $CALL 
. $CALL 
. . $329 


LEADING EDGE PC 

NEC 8201 


SANYO 550-555 

TELEVIDEO 

803 $1769 803H . . . 

1605 


. $CALL 

. $2549 
. $CALL 




ABATI LQ 


. . $339 


BROTHER HR 25P 

DAISYWRITER48K 

EPSOM * 

STAR SG 10 

JUKI 6100 


. . $655 
. . $799 
. $CALL 
. . $235 
. . $399 


OKIDATA (LOW PRICES) . . . 
TOSHIBA 1340P 

CITOH 

8510 $309 1550P . . 

F10-40CPS .$889 F1055 . . 

DIABLO 
620 $699 630API . . 

NEC 
3550 . . . .$1359 3510 . . . 
7710 . . . .$1635 2030 . . . 


. $CALL 
. . $709 

. . .$449 
. $1089 

. $1529 

. .$1215 
. . $599 


TERMINALS - MONITORS 


ALTOS II 


. . .$749 


QUME 102G 

WYSE 50 


. . $425 
. . $485 


TELEVIDEO 950 

AMDEK 300G 


. . $895 
. . $129 


PRINCETON MAX 12 

PRINCETON HX12 


. . $165 
. . $459 


DISK DRIVES -MODEMS 


INDUS APPLE 

INDUS ATARI 

PROMODEM 1200 

PROMODEM 1200B 

PROMODEM 1200A 

SMARTMODEM 1200 


. . $259 
. . $299 
. . $314 
. . $259 
. . $289 
. . $419 


SMARTMODEM 1200B 


. . $379 


148 BYTE • APRIL 1985 





THINKING 



Briefly, we began by looking at lan- 
guage. We wanted to generate a pro- 
gram that would read a few sentences 
and answer questions about them. We 
have found that, in order to do this, 
we need to build expectations about 
the subject matter of the text. Those 
expectations come from many diverse 
sources of knowledge and are bun- 
dled together into packages. We then 
have to consider what kinds of pack- 
ages there are and how we can 
organize and use them. What began 
as a study of language has turned into 
a study of knowledge and knowledge 
organization— in other words, a study 
of memory. 

Memory 

Where do predictions come from? 
How do we know what to expect 
next? We use relevant previous expe- 
riences to help us understand. New- 
borns can't comprehend restaurant 
stories, and people who have worked 
in restaurants can read more into 
seemingly insignificant events. We en- 
code what we see in terms of what we 
have already experienced. That is why 
two people can see the same event 
and yet understand it very dif- 
ferently—they each bring different 
beliefs and expectations to bear. Our 
ability to understand a situation 
comes from our ability to compare it 
to relevant previous situations. The 
knowledge we gain from experi- 
ence—episodic memory— is the same 
knowledge we use to understand— 
semantic memory. 

How does this relate to our predic- 
tion packages? The first thing we 
noticed was that using packages 
might be an efficient way to re- 
member episodes. Instead of having 
to store every event in an experience, 
a program could just save a pointer 
to the prototype [restaurant, for exam- 
ple) along with those parts of the ex- 
perience that weren't part of the 
package (for example, the patron was 
John, the food was a sandwich, the tip 
was large). Memory need only register 
those parts of an episode that dif- 
ferentiate it from the prototype. Since 
packages contain what we expect in 
a situation, they are effectively pro- 



totypes; hence, they can serve to 
organize memory of events. Our pack- 
ages now have another role to play: 
They should accomplish the functions 
of event memory as well as provide 
the expectations that aid in under- 
standing. 

If packages are to function as mem- 
ory as well as processing structures, 
they have additional requirements. 
First and foremost, a memory system 
must be dynamic. The memory must 
be altered by its experiences. A 
memory system that fails to respond 
to new inputs and learn from its ex- 
periences is not very useful. A 
memory system that produces expec- 
tations must be able to respond to ex- 
pectation failures by reorganizing 
itself to provide better expectations 
in the future. Second, a memory sys- 
tem must be able to find what it 
knows. This may not seem very hard, 
but it is. The task of memory is to take 
a given event and find related events. 
But what constitutes a "related" 
event, and how do we know where to 
look for one? These two goals— re- 
membering and learning— drive our 
theorizing about the structure of 
memory. We need to understand how 
knowledge is structured and how it 
can change. 

We also have a powerful technique 
with which to investigate the structure 
of human memory: reminding. Re- 
minding is a ubiquitous phenom- 
enon; people are constantly re- 
minded of one thing by another. You 
can be reminded of an object, a per- 
son, or a situation. In the course of 
normal conversation, people are often 
reminded of previous events. During 
the mental processing of that conver- 
sation, some memory is activated to 
help understand the new input. The 
fact that one experience reminds us 
of another indicates that we are using 
the same structure to process one as 
to remember the other. By examining 
the process of reminding, we can ex- 
plore the structure of memory. 

Armed with our new conception of 
memory structures, let's return to our 
restaurant example. Suppose that 
when John received the bill, the waiter 

(continued) 





A modem that 

won't let your computer 

talk to strangers. 







GTX-100. Computer security 
so advanced, it could even 
foil Mata HarL 

If the World War I spy Mata 
Hari were around today, she'd 
probably be into computers. 
Maybe into yours. 

Computer espionage is a 
growing threat these days. With 
just one phone call, a thief can 
tamper with data stored in your 
computer: confidential corres- 
pondence, meeting transcripts, 
employee records, and privi- 
leged client files. 

Computer intruders can 

Inquiry 238 




steal information like that. Or 
erase it. Or alter it to their 
advantage. 

That's why your computer 
needs the protection of 
GTX-100. It's a new kind of 
security subsystem developed 
from Lockheed's years of 
experience with high tech- 
nology and strict security. 

GTX-100 puts an electronic 
wall around your sensitive files 
and prevents your computer 
from talking to strangers. 

Send us the coupon for 
more information plus the 
name of your nearest dealer or 
distributor. He can demonstrate 
why GTX-100 won't yield your 
secrets to even the cleverest of 
computer spies. 



i 
i 
i 



Lockheed-GETEX 1985 



Mail to: 

Lockheed-GETEX, Suite 945, 
1100 Circle 75 Parkway, Atlanta, 
GA 30339. (404) 951-0878. 

Please send me: 

□ GTX-100 brochure. 

□ The name of my nearest 
dealer/distributor. 



Name 

Title 

Company Name 

Address 

City State Zip 

.ockheed-GETEX 

Giving shape to imagination. 



Inquiry 2 56 




Multi-function 
RS-232 Switches 

MFJ-1240 

$ 79 95 

Choice of 
8 models 

Multi-function RS-232 transfer switches let you 

switch your computer among printers, modems, 
terminals, any RS-232 peripherals; monitor data/ 
line failure, protect data lines from surges, and 
use as null modem for less cost than a switch alone. 
Switches 10 lines (2,3,4,5,6,8,11,15,17,20). 
LED data/line indicators monitor lines 2, 3, 4, 5, 6, 
8, 20. Metal oxide varistors protect data lines 2, 3 
from voltage spikes and surges. Push button 
reverses transmit-receive lines (2,3). PC board 
eliminates wiring, crosstalk, line interference. 
Connects any one input to any one output. 



Model Price 

MFJ-1240 $79.95 
MFJ-1241 $99.95 
MFJ-1242 $119.95 
MFJ-1243 $119.95 



In Out 

1 2 

2 2 

2 3 

1 4 



Model Price In Out 

MFJ-1244 $139.95 3 3 

MFJ-1245 $169.95 3 5 

MFJ-1246 $199.95 5 5 



MFJ-1247 $99.95 

switches 20 lines 



Printer Switch 

for IBM PC Computer 



Mn«:«i3fiaf»rnr»i 



MFJ-1248 

$ 99 95 LI J 

Share a parallel printer bewteen 2 IBM PCs with 
the push of a button. Eliminate trouble and confu- 
sion caused by re-routing cables. Save the cost of a 
second printer. Features 3 female connectors like 
those on the IBM PC parallel printer port. 

Quality PC board construction eliminates wiring, 
crosstalk and line interference. All lines switched. 
Printer switch is bl-dlrectlonal. 8x2x6 inches. 

Parallel Printer Switch 

MFJ-1249 . 
$ QQ 95 

2 In, 1 out, bl- i_ 
directional switching. All lines switched except 
15, 18 and 34. PC board construction. 3 female 
Centronics type connectors. 10 1 /2x2x6 inches. 

AC Power Centers 



yii.ua. fWxrttSK.TCH 



1 



MFJ-1108 MFJ-11D8, $99.95. Add conven- 
QQ 95 ience, prevent data loss, head 
33 bounce, equipment damage. Relay 
latches power off during power tran- 
sients. Multi-filters isolate equipment, 
eliminate interaction, noise, hash. 
MOVs suppress spikes, surges. 3 
isolated, switched socketpalrs. One un- 
switched for clock, etc. Lighted power, 
reset switch. Pop-out fuse. 3 wire, 6 ft. 
cord. 15A, 125V, 1875 watts. Aluminum 
case. Black. 18x2 3 /4x2 in. MFJ-1107, 
$79.95. Like 1108 less relay. 8 sockets, 
2 unswitched. MFJ-1109, $129.95. Like 
1107 but intelligent. Switch on device 
plugged into control socket and every- 
thing else turns on. Others availa ble. 

Order from MFJ and try it. If not delighted, 
return within 30 days for refund (less shipping). 
One year unconditional guarantee. 
Order yours today. Call toll free 800-647-1800. 

Charge VISA, MC or mail check, money order for 
amount indicated Dlus $4 00 each shiDDino 



CALL TOLL FREE... 800-647-1800 



Call bOl -323-5869 in Miss . outside continental 
USA. t ech/repair info Telex 53-4590 MFJ S TKV 

Write or Call for FREE Catalog! 

ENTERPRISES 
INCORPORATED 

921 Loulivllle Rd , Starkvllle, MS 39759 

150 BYTE • APRIL 1985 — — - 



THINKING 



Common sense is 
knowing about a lot 
of things and using 
what you know in a 
variety of situations. 



had made an arithmetic error and 
charged him too much. John noticed 
this and complained. The waiter was 
apologetic and not only fixed the 
error but offered John a free dessert. 
John— or any dynamic memory sys- 
tem trying to understand what is 
happening— should record this devia- 
tion from the expected routine. If he 
were later to notice a similar error 
while buying auto parts, he might be 
reminded of his experience in the 
restaurant. He might then expect 
compensation from the store to make 
up for the mistake. How can an ex- 
perience in an auto-parts store remind 
you of an experience in a restaurant? 
There must be some memory struc- 
ture that is used to understand both 
experiences. In addition, by storing in- 
formation about expectation failure 
(and its results) in the shared struc- 
ture we automatically make an appro- 
priate generalization. 

What does this tell us about the 
organization of memory? Surely not 
all the expectations are the same 
across these events; John doesn't ex- 
pect to see a menu or be served a 
lobster dinner in the auto-parts store. 
But some expectations are indeed the 
same: He expects to find out what is 
available, to tell someone what he 
wants, to receive it, to get a bill for 
what he has ordered, and to pay the 
bill. Some major scenes happen in 
one event and not in the other; there 
is no equivalent to being directed to 
a table by a hostess in the auto-parts 
store. Also, the specifics added to the 
generalized scenes are different. For 
example, in an auto-parts store you 
find what you want by looking 
through fat catalogs of numbered 



parts sorted by model and year; in a 
restaurant, you look at the menu. 

We can draw several conclusions 
about memory structures. Packages 
are nested, that is. packages have sub- 
packages. In AI terminology, the pack- 
ages are called MOPs (for memory or- 
ganization packages), and the sub- 
packages, scenes. Scenes are 
shared— most appear in many MOPs. 
Examples of scenes might be pay and 
order. It is important to note here that 
there is no "correct" list of packages. 
The packages that any dynamic mem- 
ory system uses at any particular time 
depend on its own prior experiences. 
Furthermore, a MOP contains infor- 
mation about the specific details of its 
own scenes. These details are called 
colorations: for example, the restaurant 
MOP might color the pay scene by 
specifying the acceptable types of 
payment in a restaurant (cash, credit, 
dishwashing, etc.). 

The ability to share scenes provides 
a mechanism for making useful gen- 
eralizations. When there is an expec- 
tation failure and the source of the ex- 
pectation is part of a shared structure, 
the failure and any new expectations 
based on that failure are stored in that 
structure. When a similar situation oc- 
curs, even in a different package, the 
previous failure comes to mind (is re- 
minded) because it is stored in the 
shared scene. Then it can be used to 
help guide processing. A program 
using this system might learn to count 
its change in the auto-parts store after 
being shortchanged in the restaurant, 
since both use the pay scene. This 
combination of failure-driven learning 
and shared memory structures is 
quite powerful. Expectation failure 
can also be used to build new MOPs 
from old ones by changing the colora- 
tions or the order of scenes (for ex- 
ample, in fast-food restaurants, you 
pay before you eat). 

Many more kinds of memory and 
processing structures are used in our 
AI theories and programs than we can 
describe here, but the basic require- 
ments of a useful memory organiza- 
tion should be clear. (For more infor- 
mation, see references 2 and 3.) What 

[continued] 



MULTI-USER REQUEST: 

THE DBMS THAT MAKES GREAT MINDS THINK ALIKE. 



Now there's multi-user software to 
go with your multi-user hardware — 
including the new IBM PC/AT.® 

Now there's reQuest. 

reQuest is the database manage- 
ment system that can support just 
one PC, or an entire Local Area 
Network. 

It gives your top managers the 
individual computing power to build 
high-performance applications. Plus 
the networking power to share their 
thoughts with your company's other 
great minds. 

No executive is an island. 
Think of the possibilities: 

When everyone shares the same 
database, decision-making becomes 
more consistent, company-wide. 

Sales can keep in touch with 
Production. 

Property can compare notes 
with Finance. 



Reports will be more accurate. 

Strategies will be more cohesive. 

And you'll finally realize the full 
potential of your executive PCs. 
Proven, guaranteed performance. 
reQuest has been proven in 
hundreds of major government and 
business applications. 

It works with a wide variety of 
hardware, including IBM PC® and 
PC compatibles, Burroughs, A. B. 
Dick, NCR, Hewlett-Packard, and 
many others. 

It has the capacity to download 
information from your mainframe, 
process it, and send it back. And the 
versatility to serve as the foundation 
for dozens of popular programs, in- 
cluding LOTUS 1-2-3 1 ; Multiplarff 
and WordStar.® 



Yet, its menu-driven format is so 
easy that even the most computer- 
shy managers can quickly build and 
operate their own applications. And 
reQuest is backed by full money- 
back satisfaction guarantee. 
Request reQuest, today. 

Call or write now for a free bro- 
chure or our $9.95 sample diskette: 

1-800-321-DBMS. 

You'll see how much more your 
company can do when you connect 
with reQuest. 

reQuest 

POWER TO SHARE 

System Automation Software, Inc. 

8555 Sixteenth Street, Silver Spring MD 20910 

301-565-9400 

Inquiry 376 

Tr.n.li-m;irk Acknowledgement : 

IBM, PC, .uul PC/AT: Intenuitional Business Machines Corp. , 
A.B. Dick; A.B. DickCumpiiny. Rumniylvs: RumiuyhsGiipont- 
rum. tlewle.it-P.icbr J: Hewl ( .-rr-P;ick;mlC:<.., NCR:NCRG.rp.. 
otusnnd 1-2-1: Luriis. I Vvclopnu-nt Gup.. Mulriphin: Microsoft 
irp,, Wnri.lSt.ir; MicroproGtrp. reQuest iv.i trademark ot'Sy.stem 
\utonwipn Corporation. 
' 1984 System Automation Software, Inc. 




Inquiry 117 



TOUGH LOCAL NETWORK PROBLEM: 

"How can our department get our six computers and three 

printers to work together efficiently? We also want to 

be able to access outside data services and our 

future company LAN." 

SIMPLE $2995* SOLUTION: NetCommander 

NetCommander is a smart, small Local 

Area Network manager. It lets you link 

from four to 40 computers and peripherals — 

in any mix of models and makes. A 50K buffer 

(expandable to 250 K) makes sure that productivity 

is high — keeping fewer printers humming — while 

computer and PCI users do their thing, without waiting 

for a printer, modem, or shared disk. Those devices can be 

specified with names defined by users — and allocated on the 

basis of availability and capability. And NetCommander handles 

multiple protocols and different baud rates simultaneously — 

without modifications to hardware or software. It will also tie into your 

company's LAN. The latest in a family of products in use since 1979, 

NetCommander is a smart, small, efficient network manager. 

For more information, call or write: 

-NetCommander 



Digital Products Inc. • The Simple Network Solution Company 

600 Pleasant Street • Water town, MA • 02172 

(617) 921-1680 • Outside Mass., rail l-SOO-2-t 3 -2 3 33 

And check out our 30-day trial evaluation. 

*Koi Ui ports 



SuperSoft Programmer Utilities 


When Performance Counts 


StarEdit and Disk-Edit 


Star-Edit is the professional 


Disk-Edit is the uniquely powerful disk 


programmer's text editor with an 


utility for programmers which gives you 


outstanding list of commands tailored 


access to every bit of information on 


to program development. It can greatly 


your disk. It lets you read disk data in 


simplify all your editing tasks- moving 


both HEX and ASCII, "text edit" any 


and reproducing text or code, viewing 


information on your disk, restructure 


two files simultaneously through 


disk information, and save lost or 


separate windows, moving text or code 


scrambled data, imagine scrolling 


between different files, searching 


through your disk data, jumping 


forward or backward, and moving to the 


between HEX and ASCII windows, and 


beginning or end of any word, sentence, 


editing information anywhere on your 


paragraph, parentheses, or curly 


disk. For all floppy and hard disk 


brackets. Virtual memory makes Star- 


systems. (PC DOS, MS DOS, CP/M-86, 


Edit ideal for extremely large files; and 


CP/M-80, UNIX, or XENIX): $100 


because it never uses over 1 28K, it is 




well suited for multiple process and 




windowing environments. (PC DOS, 




MS DOS, CP/M-86, CP/M-80, UNIX, 
or XENIX): $225.00 


SuperS ft 


To order call: 800-762-6629 


1713 S. Neil St., P.O. Box 1628 


In Illinois call: 217-359-21 12 


Champaign, IL 61 820 


o r write to SuperSoft . 


telex:270365 



THINKING 



may not be clear is how important 
memory and its organization are to 
nearly all cognitive activity. Getting 
just the right piece of knowledge at 
the right moment from our huge and 
constantly changing memory is not 
only crucial for language understand- 
ing but crucial for exhibiting common 
sense (which is really just knowing 
about a lot of things and being able 
to use what you know in a variety of 
situations), for applying expert knowl- 
edge, for writing interesting stories, 
and for accomplishing a host of other 
tasks. Being able to learn from expe- 
rience and apply that knowledge in 
relevant situations is an important 
step toward actual intelligence. 

What Is AI? 

The term "artificial intelligence" has 
been much abused of late, and we 
would like to try to clarify what we 
mean by it. Programs that manifest 
theories of knowledge do interesting, 
sometimes even impressive feats. But 
many programs that are not attempt- 
ing to model cognition also do im- 
pressive things. The public perception 
of AI has focused on the artificial 
Computers are indeed doing things 
we never imagined machines could 
do. Computer scientists and engineers 
are constantly expanding the useful- 
ness and power of their machines. 
That is important science and engi- 
neering, but it is not AI. AI focuses on 
intelligence, something that remains 
mysterious and elusive. Most good AI 
programs aren't terribly useful, and 
many very useful, "smart" programs 
aren't AI at all. If this distinction were 
understood, we could avoid a lot of 
confusion and disappointment. 

So-called expert systems are a case 
in point. These programs, more ac- 
curately dubbed "rule-based," do not 
attempt to reason the way a human 
expert would. They often do very 
useful tasks, and that's great, but they 
are not model theories of intelligence. 
A human expert is not someone who 
is just following the rules. He has the 
experience to know when he is seeing 
an exceptional case, and he can recall 
relevant past cases to help him figure 

[continued) 



152 BYTE • APRIL 1985 



Inquiry 373 



Resource Technology — What's it all about? 




IT'S ABOUT TIME! 

...and Time is relative. In business, time is profitability! 



OPT. 80287 



Z-80H 
CCT-286Z 



'ii enough time, an end result of the desired qua I 
y may be* finally attained - (see natural examples). 1 
business, however, the bottom line is directly proportional 
to the quality of, and the time consumed by, the tools 
employed - (see digital examples). 



^ -- 



Implements 



v's Technology Today! 



512K-6164 
STATIC RAM 





CCT (earns qp with MACROf ECH tif^ 
►ring these ultimate speed and power to^ to the 
serious business/scientific market. State-of-th6-| > 
art processors, with super high-speed/high-' 
density memory boards, form the basis for CCT 
machines with bottom-line computing power « 
PCs can't touch. 



j some of the serious CCT clientele: US. Dept. of State, Uniroyal, Miles Labs, Univ. of Massactiusets, UCLA, leledyne Semiconductor, UC Berkeley, 

EPA, Proctor & Gamble, MIT, Lockheed, Corps of Engineers, US. Navy, US. Coast Guard, Jet Propulsion Labs, Hallmark, McGraw-Edison, Sperry, 

International Paper, 3M, Beech Aircraft, LSI, Eastman-Kodak, Western Electric, Natl. Bureau of Standards, USC, Cornell University, British Cable and Wireless. 
USAE, and thousands more, worldwide. 

For further details, see our technical ad on page 449 of this issue, or contact our technical staff at (602) 282-6299. 
For system quotations and ordering only, call our sales building at (800) 222-8686. 

CUSTOM COMPUTER TECHNOLOGY / 1 CCT PLAZA I SEDONA, AZ 86340 

Photograph: Sedona's famous Red Rock Crossing, taken with Nikon FE-2 and Nikkor 35-l05mm lens, at 40mm, at 
inquiry 408 fll-l/60th, with special Kodak 5294 movie film-ASA 320. 




GOmPUTER WAREHOUSE 



CALL TOLL 

PRINTERS 

Anadex 

9625B S1129 

WP6000 S2039 

DP6500 $2259 

Brother 

DX-15 5 355 

DX-15XL S 365 

HR-25 S649 

HR-35 S875 

C-ltoh 

A-10-30 $459 

F-10 Parallel or Serial $859 

55 CPS Serial or Parallel $1019 

8510 Parallel (Prowriter) $299 

8510SP $385 

8510SCP $459 

8510BPI $309 

Comrex 

CR-2E S 375 

CR-4 Call 

420 Call 

Datasouth 

DS180 $1089 

DS220 $1315 

Diablo 

620 $694 

630 API $1499 

630ECS $1669 

630ECS/IBM $1669 

Series36 $1139 

80 IF $2649 

P12CQI $529 

P32CQI .. $759 

S32CQI $839 

P38 $1639 

S38 $1719 

C150 $999 

EpSOn All Printer Models. . , .Call 

Inforunner 

Riteman w/Tractor $244 

Riteman 15.... $499 

Riteman Blue w/Tractor $299 

Juki 

5500 Call 

6100 $385 

6300 $699 

NEC 

2010, 2015. 2030 $639 

2050 $669 

3510,3515,3530 $1215 

3550 $1359 

8810,8815, 8830 $1665 

8850 $1779 

P2.P3 Call 

OkidataAII Printer Models Call 

Panasonic 

1091 $265 

1092 $395 

1093 .....S595 

KXP3151 $459 

Silver Reed 

EXP400 $235 

EXP500 Parallel or Serial $289 

EXP550 Parallel or Serial $399 

EXP770 Parallel orSerial $689 

Star Micronics 

AM PrinterModels Call 

Tally 

Spirit 80 $245 

Toshiba 

P1340 Parallel or Serial $665 

P1351 Parallel or Serial $1 1 65 

PLOTTERS 

Enter 

Sweet-P600 $780 

BOARDS 

AST Six Pack Plus $259 

Paradise 

Modular Graphic 06-1 $275 

FivePak $159 

DISKETTES 

Maxell 

MD-1 (Qty 100] $175 

MD-2(Qty100) $199 

KEYBOARDS 

Keytronics 

5151 $179 

5151 Jr. $179 

154 B YTE • APRIL 1985 



1 ■800-528-1054 

*** YOUR WYSE CHOICES *** 




WYSEpc 



IBM-COMPATIBLE PERSONAL COMPUTER 



Dual Drive 

• 256K • MS DOS 

• GW Basic 



Single Drive -10 Megabyte 

• 256K • MS DOS 

• GW Basic 



Wy-500 Green Monitor • Wy-600 Color Monitor • Wyse 50 • Wyse 75 



SAVE UP TO 30% 



VIDEO TERMINALS 


ADDS 




A-2Green 


$469 


A-3 


$469 


Altos 




Smart II 


$699 


Qume 




QVT 102 Green 


$399 


QVT 102 Amber 


..$419 


QVT 103 Green 


$816 


QVT 103 Amber 


. . $850 


QVT 108 Green 


$449 


QVT 108Amber 


. . $519 


Televideo 




800 


$1225 


800A 


S 979 


910 


...$ 425 


910+ 


...$ 559 


921 


$ 449 


922 


...$ 755 


924 


...$ 639 


925 


..$ 699 


925E 


$ 599 


Wyse 




50 


$489 


75 


$565 


Zenith z-22 


. $469 


Z-29 


$599 


Z-49 


Call 


MODEMS 




Anchor Automation 






Call 


Mark XII 


$239 


Hayes 




Smartmodem 300 Baud 


$190 


Smartmodem 1200 Baud 


$455 


Smartmodem 1200B (IBM) 


..$385 


Micromodem ME (Apple) 


$219 


Novation Smart Cat Plus 


$315 


Prometheus ah models 


Call 


Racal-VadicAii Models 


Call 


US RobOtiCS Password 1200 . 


... $219 




COMPUTERS 

AltOS AM Computer Models Call 

Columbia can 

NEC 

PC-8201 Computer $315 

PC-8201A-90 Battery Pack $15 

PC-8206A32K Ram $215 

PC-8271A-01 AC Adapter $16 

PC-8271A-02 AC Adapter $16 

PC-8281A Recorder $89 

Northstar 

AM Computer Models Call 

SanyO MBC-775 Portable Call 

MBC-550System Call 

MBC-555 System Call 

MBC-550-2 System Call 

MBC-555-2 System Call 

MBC-885 Call 

Televideo 

803 $1915 

804 $3429 

1605D $1909 

1605C $2299 

1605H $3459 

1605CH $3549 

TPC-1 $755 

TPC-2 Single Drive $1509 

TPC-2 Dual Drive $1749 

Visual Commuter From $1469 

Zenith 

Z-150 Single Drive Save 25% 

Z-150 Dual Drive Save 25% 

Z-150 W/10 Megabyte Save 25% 

Z-160 Single Drive Save 25% 

Z-160 Dual Drive Save 25% 

TEC MAR 

Graphics Master $449 

126K Dynamic Memory $225 

256K Dynamic Memory $299 

Captain 128K $299 

Captain 256K $399 



Order Line: 1-800-528-1054 Order Processing & 

Other Information: 602-954-6109 



MONITORS 




Amdek All Monitors 


Call 


Princeton Graphic Hx-12 


$479 


Sanyo 




CRT-30 


$99 


CRT-36 


..$149 


CRT-50 


Call 


CRT-70 


...$549 


Taxan 




121 Green 


$125 


122 Amber 


. .$134 


420 RGB 


$399 


425 RGB/Green 


$410 


Zenith 




ZVM-122 Amber 


$95 


ZVM-123 Green 


$95 


ZVM-124 


$129 


ZVM-130 


Call 


ZVM-133 Color/RGB 


$410 


ZVM-135 Color/RGB W/Audio 


$459 


ZVM136 


$575 


DISK DRIVES 




Alpha Omega Turbo 10 


$739 


Iomega 




Bernoulli Box for IBM 






$1950 




$2660 


Rana 




Elite r 


$179 


Elite II 


. . $339 


Elite III 


. . $405 


Elite 10H/Apple 


$1080 


Controller (W/Drive Only] 


$69 


1000 W/DOS for Atari 


. $305 


Taligrass 




TG-3020 


$2289 


TG-3135 


$3689 


TG-4060 


$1469 



COmPUTCR 
WAREHOUSE 



2222 E. Indian School Rd. 
Phoenix, Arizona 85016 



Store Hours: Mon-Fri 10-5:30 Saturday 9-1 
Order Line Hours: Mon-Fri 8:30-5:30 Saturday 9-1 



V/SA ^^t^B 



Prices reflect 3% to 5% cashdiscount. Product shipped in factory cartons with manufacturer's warranty. Pleaseadd 
$8.00 per orderf or UPS shipping. Prices & availability subject to change without notice. Send cashier'scheck or 
money order. . .all other checks will delay shipping two weeks. 



THINKING 



out what to do. AI theories of expert 
behavior must describe how an ex- 
pert knows when something doesn't 
fit his general rules and what to do 
about it. AI theories need to account 
for how experts change and add to 
the rules they use, based on the sue- 
cess or failure of those rules. 

Artificial intelligence is a much more 
basic science than is popularly be- 
lieved. Many of our best AI ideas re- 
quire a great deal of work before they 
can become useful applications. And 
when an AI idea is turned into a 
useful system, in some sense it isn't 
AI anymore. The construction of such 
a system requires all kinds of non-AI 
programming effort— to make the idea 
work in a real environment, on real 
computers, in some useful way. Such 
a system is made possible by the A I 
idea, but the program's merit comes 
from its functionality, not its heritage. 
The fact that a program is based on 
an AI idea is no way to judge its func- 
tionality. 

Are there any applications of AI? 
We think so. If we are gaining insights 
into how people think, then our find- 
ings should help people think better. 
Perhaps Al's most important applica- 
tions will not be the programs that we 
write but the newfound ability to 
understand how people think. As we 
find out more about how people read, 
understand, and create, we may be 
able to help them do those things bet- 
ter. Perhaps Al's most promising ap- 
plications are in education— helping 
to teach people how to read, remem- 
ber, and think based on a fundamen- 
tal knowledge of those processes. 

Let's consider the problem of teach- 
ing children— or adults— to read. In 
trying to write programs that can 
read, we have learned a great deal 
about the reading process. Perhaps 
we can transfer some of this into im- 
proved techniques for teaching read- 
ing. Of course, this is not always a 
straightforward task, but we believe it 
is possible. Expectations play a cen- 
tral role in understanding text. As 
children build up expectations about 
words and stories, they become bet- 
ter readers. Language ability is strong- 
ly tied to knowing the content of the 



material, so the books children read 
should relate to what they know. We 
may be able to write better reading 
textbooks by using expectation pack- 
ages that children know about. We 
can write textbooks that encourage 
them to use their knowledge to fill in 
the details behind the text, to make 
inferences. Since AI has focused on 
language for most of its existence, it 
has a lot to contribute to reading 
education. But that's not all AI has to 
offer; its promise extends throughout 
education and beyond. AI should 
eventually provide insights into how 
to learn and remember better, how to 
improve explanatory faculties, and 
even how to extend creativity. 

Artificial intelligence is part of the 
grand attempt to understand thinking. 
We believe it is making important con- 
tributions to that endeavor, and that 
is the goal of our science. The pro- 
grams we write are experiments, not 



results. Our interest is intelligence, not 
artifact. As we make progress, our 
results may prepare the way for the 
automated companions that could 
become an indispensable part of 
everyday life. These will not be our 
real results, though. The real results 
will be a new kind of understanding 
of ourselves, an understanding that is 
ultimately much more valuable than 
any program. ■ 

REFERENCES 

1.- Schank. Roger C. Conceptual Information 
Processing. Amsterdam: North-Holland. 
1975. 

2. Schank, Roger C. Dynamic Memory: A 
Theory of Reminding and Learning in Computers 
and People. Cambridge: Cambridge Univer- 
sity Press. 1982. 

3. Schank, Roger C, and Christopher K. 
Riesbeck. Inside Computer Understanding: Five 
Programs Plus Miniatures. Hillsdale, New 
jersey: Lawrence Erlbaum Associates, 
1981. 



Robotic Development 
System Using IBM PC/Apple He 



r \: 



I /""V 



OO E 






J 



Complete 2 axis systems using 2 size 23 stepper motors 
with R2D23 dual-axis driver; cable & powerful system software, 
expandable to 4 axis. 

IBM PC/XT Version $792 Apple ll/lle Version $420 



• I 432 I/O stepper controller 

• 32 digital I/O 



A6 T/D stepper controller 
32 digital I/O available 



Digital I/O accessories, power supply and higher power size 34 
stepper motor system are available. 



[Q ROGERS LABS 

2727-E So. Croddy Way, Santa Ana, CA 92704 



(714) 751-0442 
TELEX 681393 



Inquiry 334 for Dealers. Inquiry 335 for End Users. 



APRIL 1985 • BYTE 155 



THE WORLD'S LARGEST COMPUTER MAIL ORDER FIRM 



I 



§. 



( TELEX 910 380 3980 ALL MAIL: 1 2060 SW Garden Place, Portland, OR 97223 



FOR YOUR APPLE 



COMPUTERS 



SYSTEMS IN STOCK CALL 

LIMITED WARRANTY— 100% firts & L&r la 90 days by us. 



FLOPPY DISK DRIVES 




LIST 


COHRDY 


MICRO-SCl, A2. 143K Disk Drive 


S 345 


£195 


A2 Controller Card 


S 100 


$ 60 


Half Height Drive for lie 


S269 


S 195 


Half Heitht Drive for lie 


S299 


$209 


TEAC, T40, Half Hi. Direct. 163K, 


$249 


$ 169 


Controller Card by ComX 


$ 110 


$ 45 


T80. Half HI, Double, 326K 


S 449 


$329 


Controller Card by Teac 


S 85 


S 59 


RANA, Elite 1, 163K. 40 Track 


S 379 


5 199 


Elite II, 326K, 80 Track 


$849 


$369 


Elite Controller 


$ 145 


$ 89 


VIDEO TECH, Half Ht. Drive 


$225 


$ 149 


HARD DISKS 


QUARK, OClOforllc/Me/lll/MAC 


$1995 


$1595 


OTHER HARDWARE 



CCS, 7711 Senal Interface $ 150 

CPS/EASTSJDE, Wild Card II (copier,+/e) $ 140 

COMX, eOcol. +64K RAM Card (lie) $ 199 

16K RAM Card (ll+).1yr. Ltd. Wty. $179 

HAYES, Mach II Joystick <+/e) $ 45 

KENSINGTON, System Saver Fan S 90 

KEY TRONIC, KB200 Keyboanj $ 298 

KOALA, Muppet Keys $ 80 

Touch Tablet w/Micro Illustrator $ 125 

KRAFT, Joystick (11/11+) $ 65 

Game Paddles (11/11+) $ 50 

M&a Sup R fan (11+) $ 50 

MICROSOFT, 16K RAM Card (11+) $100 

Z80 Softcard (+/e) $ 345 

Z80 Softcard Premium (e) $ 395 

ORANGE MICRO, Grappler Plus (+/e) $ 149 

Serial Grappler $ 119 

16K Buffer Board lor Grappler Plus S 99 

Buffered Grappier Plus, 1 6K $ 239 

2 Chip Set for Buffered Grapp^ S 28 

PA YM A R, Lower Case Chip. Rev. 7 (+) $ 50 

PCPI, Applicard 6 M Hz, 1 4 features $ 375 

RH ELECTRONICS, Super Fan II $ 75 

TITAN, Accelerator lie $ 319 

128K RAM Card (II+) $599 

Other RAM Cards & Software IN STOCK 



£ 90 

!! 99 
II 99 
!! 39 
II 29 
II 65 
$188 
I! 49 
!! 75 
II 49 
II 39 
II 30 
II 69 
$235 
S275 
II 99 
I! 79 
II 69 
S159 
II 12 
II 19 
S275 
II 59 
$219 
S329 
CALL 



OTHER HARDWARE 



TRACKHOUSE, Numeric Key Pad 
TG, Select- A- Port 

Joystick or Game Paddies 
VIDEX, UltraTerm (+ or e) 

VideoTerm 80 col. card (+/e) 

PSIOI/FCard 



LIST CQNROY 
S 149 $ 94 



S 40 
$ 45 
$379 
$279 
S229 



26 
29 

229 
M75 
> 145 



MACINTOSH 




BLUECHIP, Millionaire 
CENTRAL POINT Copy II MAC 
CONROY-LAPOINTE DISKETTES, 

DS/DD, 3 ft", 10 in flip pak 
CONTINENTAL, Home Accountant 
CREATIVE SOLUTIONS, MacFcrth Level I 
DOW JONES, Market Manager 
HAYDEN, Sargonlll 
HUMAN EDGE, Sales or Mgmt. Edge, ea. 
KENSINGTON, Starter Pak 

Surge Suppressor 
LIVING VIDEOTEX! Think Tank 
LOTUS, Jazz 

MAIN STREET Filer or Wnter.ea 
MAXELL, 3'/;" Diskettes. 10 pak 
MEGAHAUS, Megaform 
MICROSOFT BASIC Interpreter 

Word, File or Multiplan, each 
MILES, Mac the Knife 
MONOGRAM, Dollars & Sense 
NOVATION, Smartcat Plus Modem w/soft 
ODESTA, Helix 
PENGUIN, Graphics Magician 
PROMETHEUS, 

ProModem 1200 w/cabl & softw 
PROVUE, OverVue 
SCARBOROUGH, Mastedype 
SIMON & SCHUSTER Typing Tutor III 
SOFTW PUB., PFSfile or PFS:Report. ea. 

PFS: File & Report Combo 
STONEWARE, DB Master 
TELOS, File Vision 
T/ MAKER, Clickart 
VIDEX, Vegas 



S 
$ 40 

$ 65 
S 100 
$149 
S249 

$ 50 
S 250 
S 90 
S 50 
$145 



S 195 
$ 150 
S 195 
S 39 
$ 150 
$ 499 
: 

$ 50 

S 495 
$295 
S 35 
S 50 
$125 
$ 195 
$ 195 
S195 
$ 50 
$ 60 



29 
65 
95 

1159 
33 

1159 
60 
35 
65 

CALL 
125 
35 
125 
95 
129 
25 
95 

I379 

i 265 
32 

$350 

S195 
!i 19 
:; 33 
!l 79 

J! 125 
S125 
S 125 
II 32 
$ 34 



BUSINESS SOFTWARE 



LIST 
PRICE 



ALS, Word or List Handler, ea. 

Handler Pak. (Woid/List/Spell) 
APPLIED SOFT TECH., VasaFomi 
ARKTRONICS, Janew/Mouse(ll+/lle) 

Jane w/o Mouse (lie) 
ARTSCI, MagicWindowll 
ASHTON-TATE, dBase II (Req CP/M 80) 
BPI, Job Cost 

AR.AP.PR or INV.each 
BRODERBUND, Print Shop 

Print Shop Graphics Library 

Bank St. Wrier or Speller , ea.(spec +/e/c) 

Bank St. Combo (Writer & Speller) 
CONTINENTAL, GL.AR.AP or PR. each 
CDEX.for Vtsicalc. Multiplan, Apple lle.ea. 
DOW JONES, Maiket Manager 

Market Analyzer or Microscope, ea. 
HAYDEN, Pie Writer (v 2.2) 
HOWARD SOFT, Tax Prepare- for 1 
HUMAN EDGE, Sales Edge 

Management Edge 
LIVING V1DEOTEXT ThinkTank 
MECA, Managing Your Money 
MEGAHAUS, Megawriter 

Megaworks 
MICRO PRO, WordStar™ 

WordStarw/Starcard 

WordStar Professionaf. 4 Pak 

MailMerge, SpellStar. or Star Index, ea. S 99 

InloStar and StaiCard Combo S 595 

MICROSOFT, 

Multi-Plan (Ap DOS or CP/M) 
OSBORNE/COMX, (Disk and Book)(Stats,Bus & 

Some Common Basic Programs! 75 ea. ) $ 1 00 

Practical Basic Programs(40 ea.) $ 100 

PEACHTREE, Series 40. 3 Pak (GL.AR&AP) $ 395 
QUARK, Word Juggler & Lexicheck (e or c) $ 189 
SENSIBLE, Sensible Speller 
SIERRA /ON- UNE, Homeword 

General Manager II 

Screenwriter II, 2 Pak w/Dictionary 
SOFTWARE ARTS, Visicalc lie 
SOFTWARE PUBL, ( specify + or e for all) 

PFS: File 

PFS: Write 

PFS:Graph 

PFS: Report 
STONEWARE, DB Master v 4.0 

DB Utility Pak I or II 



S 130 
S389 
$ 295 
$ 179 
S 150 
S495 
S595 
S395 
5 50 
S 25 
$ 70 
S 140 
S 250 
S 60 
$300 
$350 
S 150 
4 taxes S 250 
S250 
$250 
$150 
$ 200 
NEW S 100 
NEW $ 125 
S350 
S495 
S495 



COMRDY 

PRICE 

$ 36 

:; 80 

S249 
S 195 
JJ119 
$100 
$269 
S375 
S 240 
!i 29 
S 18 
!l 45 
!i 85 
S165 
!l 40 
$189 
S219 
!l 89 
$165 
S165 
$165 
$ 99 
$125 
II 65 
It 75 
$189 
$265 
$265 
I! 54 
$295 




UnUTlES SOFTWARE 



BEAGLE, GPLE or Alpha Plot, each 

Full line IN STOCK 
BORLAND, Turbo Pascal 
CENTRAL POINT Copy II Plus (bit copier ) 

Filer. Utility & Apple DOS 
EINSTEIN/ALISON, Compiler 
EPSON, Graphics Dump 
FUNK, Sideways 

HAYES, Terminal Prog, for Smanmodem 
MICROSOFT; Full Line in Stock 
OMEGA, Locksmith 
PENGUIN, Complete Graphics System II 

Graphics Magician 
PHOENIX, ZoomGrafix 
QUALITY, Bag of Tricks 
UNITED SWI, ASCII Express-The Pro 
UTILICO, Essential Data Duplicator III 



S 35 

$ 55 
S 40 
$ 20 
$ 129 
$ 15 
$ 60 
S 100 

$ 100 
$ 80 
S 60 
$ 40 
$ 40 
$ 130 
$ 80 



CQNROY 

$ 27 

CALL 

35 

25 

15 

95 

9 

40 

65 

CALL 

$ 75 



HOME & EDUCATIONAL 



BEAGLE BROS., Full line IN STOCK 

BRODERBUND, Print Shop $ 50 

CONTINENTAL, Home Accountant | 75 

DOW JONES, Home Budget S 95 
KOALA, Full line IN STOCK 

MICROSOFT Typing Tutor II $ 25 

MONOGRAM, Dollars & Sense or SAM. ea $ 100 

SCARBOROUGH, Mastertype $ 40 

Your Personal Net Worth S 80 

SIERRA /ON-LINE, Homeword S 50 

SIMON & SCHUSTER Typing Tutor III S 50 



CALL 

34 
$ 49 
$ 69 
CALL 



PLUS: BAR RONS, CBS, DAVIDSON, EDU-WARE. 
HARCOURT, LEARNING CO.. TERRAPIN 



RECREATIONAL 
SOFTWARE 



BLUECHIP, Millionaire a Squire, ea. $ 50 

DATASOFT Aztec or Zaxxon, each $ 40 

ELECTRONIC ARTS, Sky Fox $ 40 

Pinball or Music Const.. ea S 40 

HAYDEN, Sargonlll (Chess) $ 50 

INFOCOM, Zock I. II. or III. ea. $ 40 

ORIGIN, Ultima III S 60 

PENGUIN, Transylvania $ 35 

PROFESSIONAL, Trivia Fever S 40 

SIERRA/ON-UNE, Ultima II $ 60 $ 

SUB LOGIC, Flight Simulator II S 50 $ 



PLUS: BRODERBUND, DATA MOST, IN SOFT 
MUSE, SIR-TECH, SPINNAKER 



DISKETTES 



• CONROY-LAPOINTE™ DISKETTES * 

We guarantee these top quality products with our name. 

5 YEAR LIMITED WARRANTY. Discounts on orders w/o labels. 

10 ea. SS/SD. (Apple, etc.) 35 Trk. comes w/flip pakS 12 

100 ea.SS/SD. (Apple etc.) 35 Trk. $ 99 

1000ea. SS/SD. (Apple, etc.) 35 Trk. & 840 

10 ea. DS/DD. (MAC. H/P)3W NEWt $ 29 

100ea, DS/DD. (MAC, H/P)3F NEW! CALL 

lOOOea, DS/DD, (MAC. H/P)3W NEW CALL 

Idea. DS/DD. (IBM, H/P) 48 Trk. comes w/flip pak $ 15 

100ea. DS/DD, (IBM. H/P) 48 Trk, $119 

1000ea. DS/DD. (IBM. H/P)48Trk. $859 

• CONROY-LAPOINTE'" • 
IBM PRE-FORMATTED 

10 ea. DS/DD. 48 Track (IBM-PC Pre-formalted) 
100 ea. DS/DD. 48 Track (IBM-PC Pre-formalfed) 
1000 ea. DS/DD. 48Trac*( IBM-PC Pre-formatted) 
LIST 
CDC, 10 ea. SS/DD. 40T (Apple. IBM) 
100ea. SS/DD.40T (Apple. IBM) 
10 ea. DS/DD, 40T (IBM, H/P) 
100 ea. DS/DD. 40T(IBM, H/P) 
DYSAN, 10 ea. SS/DD (Apple, etc.) 

10 ea, DS/DD 48T(IBM.H/P) 

MAXELL, 10 ea. SS/DD.MD1 (Apple) 

10 ea, SS/DD. 3%" (MAC) 

10 ea. DS/DD. MD2 (IBM) 

10ea, DS/QDHiDens(IBM-AT) $ 

MEMOREX, 10 ea. SS/SD. 3W (MAC) $ 

10ea.DS/QDHiDens(IBM-AT) 
VERBATIM, 10 ea.SS/DD.MD51501.( Apple) 
10 ea, DS/DD. MD34 (IBM) 
10 ea SS/DD, 3VT. (MAC) 



• GENERIK'" DISKETTES • 

Top quality, w/jackets, no labels. 
90 day "No hassle money back guarantee." 
100 ea.. 35 Track (Apple, Atari) 
250 ea.. 35 Track (Apple. Atari) 
1000 ea.. 35 Track (Apple. Atari) 
100 ea.. 48 Track (IBM. H/P) 
250ea., 48 Track (IBM. H/P) 
1000 ea.. 48 Track (IBM, H/P) 




II 

!l 199 
i!750 

:; 95 

$229 
$829 



MODEMS 





LIST CQNROY 


ANCHOR, Signalman Mark XII (IBM) 


$399 ! 


S259 


HAYES, 2400B External Modem (IBM) 


$899 ! 


S699 


Srriarlmoten 1200B (IBM) 


$599 : 


3 409 


SmartcomllSoftwaie(IBM) 


$ 149 1 


S 99 


Stack Chronograph (RS-232) 


$249 : 


M89 


Stack Smartmodem 300(RS-232) 


$289 : 


>219 


Smaitmodem 1200 (AP) 


$699 ! 


>4B9 


Micromodem lie w/Smartcom (AP) 


$329 : 


.239 


KENSINGTON, M odern 1200 (MAC) 


$595 ! 


>385 


NOVATION, J-Cat 


$ 149 : 


> 104 


ACCESS 1-2-3, 1200B+Crossta!kXVI(IBM} $ 595 ! 


S369 


Apple Cat II 300 B (AP) 


$389 : 


>249 


212 Apple Cat. 1200 B(AP) 


$725 : 


J bby 


SmartCat Plus w/sof! ware (MAC) 


$499 j 


I379 


PROMETHEUS, ProModem 12008 (IBM) 


$399 I 


12B9 


ProModem 1200 (MAC) 


$549 : 


i429 


QUADRAM, Ouadmodem, Internal (IBM) 


$595 1 


; 425 


Quadmodem, External (IBM) 


$695 : 


5 49b 


VENTEL, PC Half Card (IBM) 


$549 : 


£389 


1200 Plus, External (IBM) 


$499 ! 


1429 


PC1200, Interna! (IBM) 


$499 1 


!3/9 


MONITORS 




LIST C 


0NR0Y 


AMDEK, Color 300 Comp/ Audio 


$349 I 


I249 


Color 500 Corrp/VCR/RGB/Audio 


$525 ! 


39b 


Color 600 Hi Res, RGB /Audio 


$599 ! 


I 459 


Color 700 Ultra Hi Res. RGB 


$749 1 


£549 


Color 710 


$ 799 1 


> 599 


300G, 1 2" Green 


$ 179 ! 


1129 


300G, 12" Amber 


$ 199 ! 


M49 


310A, 12" Amber, (IBM) 


$230 I 


1159 


PRINCETON, HX-12, Hi Res. RGB 


$795 ! 


; 495 


SR-12, Hi Res. RGB 


S799 ! 


5 599 


Scan Doubler tor SR-12 


S249 ! 


;179 


MAX-12. Amber (monochrome) 


$249 ! 


; 199 


QUADRAM, Amberchrome, 12" Amber 


$250 ! 


1165 


Quadchronie12" RGB Color 


$695 ! 


; 495 


Quadchrome II, 14" RGB Color 


$650 ! 


i 450 


Quadscreen 17" 968x512 w/cable. Hi Res 


$1995 


11595 


ZENITH, 2VM122. 12" Amber 


$ 159 1 


i 95 


ZVM123. 12" Green 


$ 149 i 


I 89 


ZVM124. 12" Amber 


$ 200 ! 


1149 


ZVM135. 12" Color 


$ 599 ! 


> 499 



PRINTERS 



DOT MATRIX: 

LIST 

PRICE 

EPSON, RXB0-100 cps $ 269 

RX80-F/T $ 369 

RX100-100 cps, 136 col., pin & fr. $ 499 

FX80-160CPS, 80 col. $ 699 

FX100— 160 cps, 136 col. $ 849 

JX80— Color Printer, 160 cps $ 399 

LQ1500— 200 & 67 cps $1395 

TractorFeedforLQ1500 S 70 

MANNESMANN TALLY, 

Spirit— 80 col.. 80 cps S 269 

160-80 col.. 160 cps $798 

180— 132col.. 160cps $1098 

OKIDATA, Okimate 20. Color, Hi Res $ 268 

82A— 80 col.. 120 cps. para. S 349 

83A— 132col.. 120 cps, para. $ 749 

84— 136col. 200 cps. para. $ 899 

92—80 col.. 160 cps. paia. $ 499 

93— 136coL. 160cps. para. $ 799 

2410P— Pacemark, 350cps, para. $2995 

QUADRAM, Quadjet, Inkjet Color Printer $ 895 

STAR MIC, Gemini, 120cps, 10" $ 499 

Gemini. 120cps, 15" S 549 

TOSHIBA, Prop, spacing & Hi-res graphics 
1351 —192 cps{DQ) & 100 cps (LQ) 
1340—144 cps(DQ) & 54 cps(LQ) 
Bi-directional Tractor Feed 

TTX TTXpress. portable /hand held .4 Ocps 

LETTER QUALITY: 

JUKI, 6300-40 cps, para S 995 

6100—18 cps, para, 3 pitch S 599 

TOSHIBA, Prop, spacing & Hi-res graphics 

1351— 192 cps(DQ) & lOOcps (LQ) S1895 

1340-144 cps( DO) & 54 cps(LQ) S 995 

TTX, 1014—13 cps. para/ser, p & fr. 3p. $4 

1114— areas 1014 w/T&F, 2c & prop. $ E 

PLOTTERS: 

AMDEK, Amplol II, 6 pen. 10 x 14 $1099 

PRINTER SUPPLIES: 

Paper, Ribbons, Daisy Wheels. 



COHflOY 
PRICE 
CALL 
CALL 
CALL 
CALL 
CALL 
CALL 
CALL 
CALL 

£219 
568 
778 
206 
319 
599 
729 
399 
649 
1975 
795 
269 
419 



t 795 

I 439 



$899 



PRINTER INTERFACES 
& BUFFERS 



LIST C0NR0Y 

ARBO, IBM-PC to Para Printer Cable $ 60 $30 

EPSON, Parallel Interface (or LQ 1500 $ 100 | 79 

Serial Interface Board $130 $105 

ASSJMPROC, Mac to Epson Conn l/F S 89 § 69 

MPC, Applell l/F & Cable for Epson & Gemini $ 95 S 59 

OKIDATA Plug n Play. Tractors, Okicraph.ea. $ 50 S 42 

ORANGE MICRO.Grappler Rus for Apple $ 149 S 99 

Sena) Grappler $ 119 $ 79 

Buffered GrappSer Plus, 16K $239 $159 

PRACTICAL, Microbuff In-Line 64K.para. $ 349 $ 259 

Microbuff In-Line 64K.ser. S 349 $ 259 

QUADRAM, Microfazers, lull line in STOCK CALL 



CABLES 



ARBO, IBM-PC to Modem Cable S 31 $ 21 

IBM-PC to Para Printer Cable $ 60 I 30 

ASTAR.RF Modulator for T.V.( Apple) $ 35 S 20 

CURTIS, Monitor Extension Cable (IBM) S 50 § 35 

3'-9" Keyboard Extens. Cable (IBM) S 40 f 30 

RCA, Monitor Cable $ 15 $ 9 



ACCESSORIES 



CURTIS, Diamond, 6 outlets, switched 

Emerald, 6 outlets. 6' cord 

Ruby, 6 outlets. 6" cord, filler 

Sapphire, 3 outlets, w/lilter 
EPD, Lemon, 6 outlets/wall 

Lime. 6 outlets/cord 

Orange, 6 outlets/cord 

Peach, 3 outlets/wall 

Kiwi, 1 outiet/wall 
INNOVATIVE, Flip-n-File 10 (disk holder) 

Flip-n-File 50 (disk holder) 
KENSINGTON, Masterpiece (IBM) 

System Saver Fan (Apple) 
HBfWOMt, Wiretree, 4 outlet, w/filt & surge $ 70 
PERFECT DATA, Head Cleaning Kit $ 16 

PROD TECH INTL, Uninterruptable Power Supply 

200 Watts, PC200 for IBM-PC S 499 

300 Watts. XT300 tor IBM-XT S 359 

800 Watts, AT800 for IBM -AT. 72 lbs. 



$ 60 
S 90 
$ 140 
$ 98 

$ 7 
$ 22 

$ 140 



29 

35 

52 

46 

29 

45 

60 

39 

CALL 

$ 4 

$ 15 

S 99 

$ 69 

$ 39 

$ 12 

S 39 
$279 
CALL 



, CONROY- m 

i LAPOINTE 2 ^am^ 

CREDIT CARD m 

I SendmeaConray-LaPointe I 

| credit application form, so I ADDRESS 

I can get cash discount prices j 

with credit card | 

convenience. $400 CffY STATE ZIP , 
I Mmmuin.nit.al purchase MA , L TQ . ^ Q6Q sw GafQen piacg pofUgnd QR g?22 A 



| ORDERING INFO & TERMS: 



HAIL TO: 12060 SW fiifdifi Pltei, Portfirm, Off 37223 Include yout telephone number, double 

Check your figures lor Shipping, insurance and Handling (SIH). Ail items usually in stock. 

NO CO. 0. Cashiers checks, money orders, Fortune 100Q checks and government checks honored immediately. Pfersonal and other company checks— aifow 20 days to 

clear. Prices reflect &% caih « CBitroy-UPotaSi -Cridit CinS dlKwal. so ADO 3% to above p/tces for VISA /MasterCard .'American Express. Your cards NOT charged til we 

Ship. Add SIH CHAHGES: U.S. Mainland, 3% ($5 minimum) tor standard UPS ground: UPS Blue. 6% f$iu minimum); tor U.S Postal. APO or FP0, 6% (,$10 minimum}. 

Alaska & Canada— Postal. Fmeion otders except Canada,. 18% (525 minimum! Monitors by Postal or to foreign countries; 30% ($50 mmimum) Orders received with 

• harges will be retunded. All price:' ect to errors Of change i*ii to verify Alt goods are new. include 

-d to work. Due to our tow prices and oui - ;ed products—ALL SALES ARE FINAL. We do not guarantee 

-timing goods for repair dr. replacement. ORDER DESK HOURS— 6AM to 6P« PST. Mosdty Uwwjti FrWty. Stlwdi^ 10 ts 4. (SAM heie is 9AM in 

New York J EMMflAM", Fwtr»k'". m Swirlk'" tf a lra#am»rk* of ComX CorpBritlon. 







COMPUTER 
SYSTEMS 



— Call for Details — 
256K IBM - PC 



360K 

Disk Drives 

by CDC 

90 Day 

Limited Warranty 

By Us 




W SANYO sss* 

256K, 2 320K Disk Drives 
NITH 

Z150, 
256K, 2 320K Disk Drives. 

MS DOS 2.1. 8088 Chip, 2 S/P 



HARD DISKS 



Easy to install. Includes Hard Disk. Controller Card and 



Instructions. 

KAMERMAN, External 1 meg kit 

Megaf tight 100, Internal 10 meg kit 

Masterf light. 20 meg. tape, surge prat. 
MAYNARD, Internal 10 meg kit. (WS1) 
QUAD RAM, Quaddisks Int. w/controller. 

Full Line 
RANA, External 10 meg w/controller 

Internal 10 meg w/controller 



LIST 
SI 295 
S895 
$3095 
$1595 



CALL 

r095 
795 



FLOPPY DISK DRIVES 



CDC, Limited 30 day warranty; Call for quantity prices. 



Full Height 
Half Height, 



$149 
$129 



MAYNARD, Controller Card w/para port $ 300 $ 185 

Controller Card w/serial port $310 $195 

Sandstar Com Card (accepts 3 modules) S 265 5 205 

PERFECT DATA, Head Cleaning Kit S 16 $ 12 



SixPakPlus,64K 

SixPakPlus, 256K. S/P/CC+S/W 

SixPakPlus. 384K, S/P/CC+S/W 

Game Port (or SixPak 

Preview" Graphics Card w/para. 64K 

Advantage'", Multil. Bd for AT 

I/O Plus II, S/P/CC 

I/O Plus II, S/P/CC/G 

I/O Plus II, 2S/P/CC/G 

MonoGraphPfctf" P/CC (forl.otus) 

PCNet, Staiter Kit. PC002 

PCNet, Circuit Board, PC001 

ComboPlus Products IN STOCK 

MegaPlus Products IN STOCK 
COMX, NEW 

Econo RAM Plus'". 384K to 1.5 meg. 
board, S/P/CC/G, Fastrak" & Spoota 

EconoRAM'", full 384K board 
CURTIS, UNI-I. Monitortilt/swivel base 

3-9loot Keyooard Extension Cable 
HAUPPAGE (HCW), 8087 Chip 

8087 Math Pak (Chip &Softw) 

8087 Software Pak 

8087 Macro Pak 
HAYES. Mach II Joystick 
HERCULES, Co lor Card w/para. 

Mono Graphics Card 
KAMERMAN, External Power Supply 
KENSINGTON, Masterpiece'" 

PC Saver'" Line Cord w/Filter 
KEYTRONIC. KB51 5 1, Std. keyooard 

KB5150, Std.keyooard 
KOALA, Speed Key System 

Speed Key Tables w/software 

Koala Pad r "w/PC Oesign 

Programmer's Guide 
MAYNARD, SAND STAR SERIES 

Multifunction (6) Card 

MemoryCard no RAM 

MemoryCard256K 

Floppy Com. Card, accepts 3 modules 

HardOisk l/F Module 

KardOisk Cable 

Serial Port Module 

Para or Clock Cal. Module, ea. 

Game Adapter Module 

Memory Module, OK 

Memory Module256K 

10 meg Hard Disk Kit & Cont Card 



$200 
$ 150 
$ 15 



CONflOY 

PRICE 

$245 
$395 
S 465 
!! 39 
S 299 
I1445 
$150 
II 165 
S 215 
!! 375 
!!790 
S365 
CALL 
CALL 



$395 

$325 
II 39 
II 30 
S149 
$235 
I 138 
S195 
II 29 
S169 
S329 
S 295 
II " 
II 35 
11195 
11159 
II 63 
S139 
II " 
IS 14 

79 



MICROSOFT Mouse for PC 
System Card, 64K 
System Card, 256K 

MOUSE SYSTEMS, PC Mouse & Paint 

PARADISE, Modular Graphics Card 
Parallel or Serial Port. ea. 

PERSYST, NEW 
PC/Mono Board, w/para port 
PC /Color Graphics Bd.w/light pen & l/F 
BOB Board'" Color Adapter, hi res 

PLANTRONICS, 
Color Bd & Colormagie, 16 color w/Para 
Color Bd & Draftsman, 1 6 color w/Para 

QUADRAM, 
Quadboard 64K, to 384K, S/P/CC/G 
Quadboard. no RAM, expand to 384K 
Quadboard 256K. to 384K, S/P/CC 
Quadboard, 384K, S/P/CC/G 
Quadboard II, no RAM, to 256K 
Quadboard II, 64K. to 256K, 2S/CC 
Quadboard II, 256K.2S/CC 
Quad 512 + 64K w/serial port 
Quad 512 + 256K w/serial port 
Quad 512 + 512K w/serial port 
Quadcolor I, board, 4 colors 
Upgrade Quadcolor I to II kit 
Quadvue. board. Mono. S/P/CC 
Quadchrome Monitor. 12" RGB Color 
Quadchrome II Monitor, 14" RGB Cofor 
Arnberchrome Monitor. 12" Amber 
Quad 3278 
QuadnetVI 
Ouadnet IX 
Quadlink 

TG PRODUCTS, Joystick 

TITAN, Accelerator PC (8086+ 128K) 

WICO, Smartboard Keyboard 



S 559 
$ 559 



$245 
S225 
S395 
S495 
S215 
11265 
11 395 
S265 
$420 
1 1625 
II 195 
$199 
$269 
S495 
$450 
II 165 
$1050 
! 11545 
11745 
$385 
I) 29 
11750 
11279 



• • FOR YOUR PC-JR •• 



LIST 

PRICE 
KEYTRONIC, KB5151 Jr. Keyboard $ 255 

KOALA, Touch Tablet for Jr. $ 1 25 

MOUSE SYSTEMS, Mouse for Jr. $ 195 

MICROSOFT 128K Booster w/Mouse $495 

Serial Mouse S 195 

QUADRAM, Quadmemjr.(128K-512K. P/CC) $ 275 

Quadjr. Expansion Chassis $ 695 

TECMAR, Jr. Captain $ 395 



$29 



9 Each, 4164 chips 
90 Day Warranty by us 



• ComX 
EconoRAM Plus" 



$395 



384K Multifunction RAM Board 
expandable to 1.5 Megabyte 

Works like AST SixPakPlus rJ witti 

capacity for up to 1.5meg, game port, 

Fastrak'" RAM Disk and Spooler Software. 



EconoRAM™ 384K 
Single Function Board 



$325 



With Fastrak 1 " and Spooler. 

Fully Compatible, 1 Year Limited Warranty. 

Wor)<sonDOSl.1.2.0or2.1 

Prices and availability subject to change. Call. 



SOFTWARE FOR ¥0UR IBM-PC, XT, AT or JR 



BUSINESS 



APPLIED SOFTWARE, VasaFonn 
ASHTON-TATE, Framework 

dBase III 

dBase II. (req. PC-DOS & 128K) 

dBase II to HI upgrade 
ATI, Training Programs— Large Inventory 
BPI, Job Cost Accounting 

Gen'l Acctg. AR, AP or PR, each 
BRODERBUND, Bank St. Wnter(PC orJr) 
CDEX, Training Programs— Large Inventory 
CONTINENTAL, Ultrafile (PC) 

Tax Advantage (PC or Jr) 

FCM (Filing, Cataloging. Mailing)(PC) 

Property Management (PC) 
DOW JONES, Investineul Evaluator 

Market Manager Plus 

Market Analyzer 

Market Microscope 

Spread Sheet 
FOX&GELLER, dUtil (DOS orCP/M86) 

Quickcode or dGraph, each 
HARVARD, Total Project Manager 

Harvard Project Manager 
HAYDEN, Pie Writer 

Pie Speller 
HOWARDSOFT, Tax Preparer for'84 

Real Estate Analyzer 
HUMAN EDGE, Mind Prober (PC or Jr) 

Communications Edge (PC) 

Sales Edge 

Management Edge 

Negotiation Edge 
IUS, EasyWriterll System 

Easy Speller II 

GL, AR.AP.OEorlNV.each 
KENSINGTON, Easy Link Mail Manager 
LIFETREE, Volkswriter Deluxe 

Volkswriter 



LIST CONROY 

PRICE PRICE 

$ 389 S 249 

S695 $345 

S 695 ! 1 360 

S495 S289 

$200 1119 

$ 75 S 50 

$795 ! I 495 

$ 595 ! ! 375 

S 80 $ 50 

S 70 \\ 45 

$195 j| 125 

$ 70 li 45 

$ 125 ! I 75 

$495 $295 

$ 139 II 99 

$300 11159 

$350 !1219 

$350 S219 

$ 249 II 159 

S 99 $ 65 

$295 J I 165 

$495 :; 315 

$395 $239 

$ 200 $125 

S 50 II 30 

$295 li 195 

$250 II 170 

$ 50 li 32 

$195 S119 

$250 II 159 

$250 II 159 

$295 II 185 

$350 $250 

$ 85 11125 

$ 595 II 375 

$ 95 II 59 

$395 JI159 

$ 195 $ 105 



BUSINESS 



LIST CONROY 

PRICE PRICE 

LIVING VIDEOTEX! Think Tank $ 195 $ 105 

LOTUS, 1-2-3 $ 495 S 309 

Symphony $ 695 II 465 

MDBS, Knowledgeman $ 500 ! I 300 

MECA, Managing Your Money $ 195 $125 

MICROPRO, WordStar'" (PC) $ 350 II 189 

WordStar'" (Jr) $195 II 115 

WordStar 2000 $495 $295 

WordStar 2000 Plus $ 595 1 l 325 

WordStar Professional Plus S 695 1 1 395 

WordStar Professional, 4 Pak $ 495 II 265 

MailMerge. Spell Staror Slarlrtdex, ea. $ 99 II 54 

ProOptionsPak(MM/SS/SI) $195 11105 

InfoStar Plus(+ Starburst) $ 595 1 1 315 

CorredStar $ 145 II 77 

MICRORIM, RBase Series 4000 $495 1 1 269 

Extended Report Writer $ 150 II 95 

RBase Clout $ 195 I i 125 

MICROSOFT Spell $ 50 II 32 

Multiplan(PCorJr) $ 195 I i 125 

Chan or Project, each $ 250 I i 1 59 

Word $ 375 II 235 

Word with Mouse $475 1 1 289 

MONOGRAM, Dollars & Sense w/Rxecast $ 180 11110 

MULTIMATE, Multimate Ver. 4.0 $ 495 II 295 

OPEN SYS, GL.AR.AP.PRJNVor PO.ea. $ 695 ! I 420 

PEACHTREE, Back to Basics GL $ 295 I ! 1 75 

Peach Pak $ 395 ! i 225 

Peach Text 5000 $395 II 225 

QUADRAM, Tax Strategy $ 395 \\ 295 

Investment Strategy $395 S 295 

QUE, Using 1-2-3 $ 15 || 12 

1-2-3forBusiness $ 15 It 12 

Using Symphony s 2 It 15 

SAMNA, Word Plus s 295 $185 

SATELLITE, WordPerfect (PC) $ 495 II 235 

WordPerfect (Jr) $ 69 S 49 

SOFTW ARTS, TK Solver(specif DOS) $399 1 1 269 

SOFTWARE INT*L, Open Access $ 695 $ 395 



BUSINESS 



SOFTWARE PUBL, PFS: Report 

PFS:File 

PFS:Write 

PFS:Graph 

PFS: Plan 

PFS:Proof or PFS: Access, each • 
SORCIM, SuperCalc III 
STONEWARE, Advanced DB Master 
THORN /EMI, Perfect Writer (PC) 

Perfect Combo (Writer & Speller) (PC) 

Perfect Combo (Jr) (Write/Spelt/Thesaus 
VISICORP,VisiCatc4 
WARNER, Desk Organizer (PC or Jr) 



LIST 
PRICE 
$ 125 

S 140 
$ 140 
$ 140 
$ 140 
$ 95 



PRICE 
II 79 

I! " 

II 

II 

I! 

!i 



$395 1 1 245 

$ 595 ! I 395 

S 349 II 179 

$399 11199 

$139 i ; 

$ 250 11159 

$195 $125 



UTILITIES 



BORLAND, Sidekick (PC or Jr) $ 55 f 35 

Sidekick (CopiaWe) (PC or Jr) % 85 I 55 

Turbo Pascal (PC or Jr) S 55 $ 35 

Toolbox (PC) $ 55 $ 35 

CENTRAL POINX Copy II PC $ 40 $ 30 

COMX, Fastrak", RAM/Disk emulator & printer spooler. For 

any PC/DOS or RAM Card. Menu Driven S 100 $ 59 

DIGITAL RES., CP/M-86'" (PC/XT) S 80 1 1 39 

CBASIC 86'" (CP/M-86) $ 200 ! I 1 35 

C8ASIC Compiler^ P/M-86 or PCDOS, ea) S 600 S 395 

Concurrent CP/M-86'" w/windows S 835 II 225 

PL/1 (PCDOS) S 750 II 495 

Speed Prog. Pkg. (CP/M-86) $200 11135 

DR L0G0-86 (CP/M-86) S 100 $ 69 

EPYX, In Stock CALL 

FUNK SOFTWARE, Sideways $ 60 § 40 

HAYES, Smartcom II (Data Comm.) $149 $ 99 

UFEBOAT, Lattice C $ 500 $ 295 

MICROSTUF,Crastel<XVI(PCorJr) $195 I 129 

MICROSOFT Macro Assembler $ 100 $ 

BASIC Compiler $ 395 £ 259 

Busires BASIC Corrpiter $ 600 I 300 

CCorrpiter S 395 f 259 

COBOL Compiler S 700 i f 

FORTRAN Compiler S 350 S 229 

PASCAL CorTvier S 300 $ 199 



UTILITIES 



LIST CONROY 

PRICE PRICE 

MOUSE SYSTEMS, PC Paint S 99 S 69 

NORTON, Utilities (14 proms) New Version $ 100 f 65 

OPEN SYSTEMS, BASIC Interpreter $ 195 S 130 

ROSESOFT, Prokey $ 130 $ 79 

WESTERN UNION, Easy Link Mail Mngr $ 95 $ 65 



HOME & EDUCATIONAL 

A R MONK, Executive' Suite $ 40 $ 27 

BPI, Persona) Accounting $ 99 S 63 

CONTINENTAL, Home Accountant (Jr) S 75 | 59 

Home Accountant Plus (PC) $ 150 £ 90 

DOW JONES. Home Budget $139 S 92 

KOALA, Graphics Exhibitor (Jr) $ 40 $ 25 

MONOGRAM, Dollars 4 Sense w/forecasi $165 5 110 

SCARBOROUGH, MasterTypefPC or Jr) $ 50 $ 32 

Your Personal Net Worth $100 $ 63 

SIMON & SCHUSTER, Typirg Tutort II $ 50 $ 33 

PLUS: BPI, CBS, COMPREHENSIVE, DAVIDSON, 
HARCOURT, PBL CORP. 



RECREATIONAL 



BLUECHIP, Millionaire, Barron, Tycoon, ea. $ 60 $ 39 

BRODERBUND, Large Inventory In Slock CALL 

ELECTRONIC ARTS, Large Inventory In Stock CALL 

HAYDEN, Sargon III (Chess) $ 50 $ 34 

INFOCOM, Large Inventory In Stock CALL 

MICROSOFT; Flight Simulator (PC or Jr) S 50 $ 33 

ORIGIN, Ultima III (PC or Jr) S 60 $ 

PROFESSIONAL, Trivia Fever (PC or Jr) $ 40 f 25 

SPECTRUM HOLOBYTE, Galo $ 40 $ 25 
SPINNAKER, President's Choice. Amazon. 

Fahrenheit. Rendevouz, Dragon, each $ 40 $ 

SUB LOGIC, Night Mission Pinball $ 40 $ 



CASH-n-CARRY COMPUTER STORES, INC. 

Retail Sales only. Call stores for local hours. 
SAN FRANCISCO — 550 Washington Street (at Mont- 
gomery, opposite the Pyramid). Interstate 80, to Highway 
480; take Washington Street Exit. CALL (415) 982-6212. 
PORTLAND, OREGON — At Park 217, Tigard at intersec- 
tion of Highways 217 and 99W. CALL 7503) 620-5595. 
SEATTLE, WASH. — 3540 128th Ave. SE, Bellevue 98006. 
In Loehmann's Plaza near Factoria Square, SE of Highway 
405 & 90 and at SE 36th and Richards. CALL 641-4736. 



4=5S* 



OUR REFERENCES: 

We have been in computers and electronics since 
1958, a; computer dealer since 1978 and in corn- 
cuter mai} order since 1980. Banks; 1st Interstate 
>03) 643- 467a We belong to the Chamber 
of Commerce (503) 228-941 1. and Direct Market- 
ing -Association, or call Dunn and Bradstreet if you 
are a subscriber. Recipient of 1984 OREGON BUS- 
INESS MAGAZINE AWARD. 



(MotlefCardj 


^WS4 



CONROV- 
LAPOINTE 
CARD 



NO SALES TAX 



CALL 

(800)547-1289 

In Oregon: (800) 451-5151 
TELEX: 910 380 3980 


Foreign & 

Portland 

Residents Call 

(503)620-9877 


QUESTIONS 

on your order 
(503) 620-9878 

WEEKDAYS ONLY 


ORDER DESK HOURS 

Mgn-Frl— BAM to 6PM PST 
SKurdty— IOAMto4PMPST 

(6AM here is 9AM in New York) 



: 



THBB 



ۥ 



PUTER 

PROTECTION. 




To safeguard your computer 
against mysterious errors and 
costly servicing, not just any 
surge and noise suppressor 
will do. Serious computer 
problems demand serious 
computer protection. . . 
DATAGARD® by SL WABER. 

For more information about 
DATAGARD and our complete 
line of Computer Accessories, 
call or write today. 



SL 



WABER 



Inquiry 347 



A Division of SL Industries, Inc. 

Computer Accessories Group 
300 Harvard Avenue 
Westville, NJ 08093 
Toll-free (800) 257-8384 
In NJ (609) 456-5400 



Nobody does it better. Nobody can. 









ARTIFICIAL INTELLIGENCE 



THE 

LISP TUTOR 

by John R. Anderson and Brian J. Reiser 



It approaches the effectiveness 
of a human tutor 



FOR THE LAST FIVE YEARS, we have 
been studying how students learn 
mathematical logical, and program- 
ming skills. We have reached the point 
where we can develop computer- 
based tutors for such domains. This 
article discusses our work on a LISP 
tutor. LISP is one of the main pro- 
gramming languages of artificial intel- 
ligence (AI) and has gained impor- 
tance with the rising prominence of 
AI. 

Universities like ours, Carnegie- 
Mellon University (CMU). are seeing 
a rapidly increasing demand for 
courses in LISP. Many students here 
learn it as their first programming 
language. But LISP is quite difficult 
because of its symbolic nature and its 
use of recursion and because of the 
need to learn abstract AI program- 
ming techniques. We see a remark- 
able range of mastery from courses 
designed to teach LISP. Some stu- 
dents find that a single course serves 
as their entry into the world of AI; 
others leave feeling they have learned 
nothing. 

Studies of students learning such 
cognitive , skills have revealed that 
private tutoring appears to be much 
more effective than conventional 



classroom instruction. Classroom 
learning involves listening to lectures, 
reading texts, and working alone on 
homework problems. Private tutoring 
provides the student with an experi- 
enced person to guide his reading 
and problem solving. In a comparison 
involving LISP, we found that students 
with private human tutors needed 
only 1 1 hours to learn as much as 
classroom students learned in 43 
hours. In both situations most of the 
time was spent actually trying to write 
LISP programs rather than reading or 
reviewing the instruction. The major 
role of the tutor is to make the prob- 
lem-solving episodes more effective 
learning experiences. 

Educational psychologists have ob- 
served that private tutoring is an ad- 
vantage with many different types of 
material. One study (see reference I) 
compared students who spent the 
same amount of time learning— some 
with private tutors and some in the 
classroom— for two different subjects, 
probability and cartography. Ninety- 
eight percent of the tutored students 
did better on performance tests than 
the average classroom student did. In- 
terestingly the major benefit occurred 
with the poorer students. There was 



relatively little advantage of private 
tutoring for the best students. 

Our goal has been to develop a 
computer-based tutor that is as effec- 
tive in teaching LISP as a human tutor. 
GREATERP (Goal-Restricted Environ- 
ment for storing and Educational Re- 
search on Programming) is an attempt 
to combine artificial-intelligence tech- 
nology and a psychological theory of 
skill acquisition into an effective 
teaching device. This tutor is itself a 
large LISP program that runs under 
Franz LISP on VAXes. We have already 
begun field testing this tutor in CMU 
classrooms and have seen it lead col- 
lege students to faster, more effective 
learning of LISP programming. In this 
article, we discuss how the tutor 
works, why it is effective, and the pros- 
pects for moving a version of it to per- 
sonal computers. 

GREATERP is only one of the tutors 

[continued) 
]ohn R. Anderson is a professor of psychology 
and computer science at Carnegie-Mellon 
University. He has a Ph.D. from Stanford 
University. Brian J. Reiser holds a Ph.D. from 
Yale University and is doing postdoctoral 
research at CMU. Write to them at Carnegie- 
Mellon University, Department of Psychology, 
Schenley Park, Pittsburgh, PA 15213. 



APRIL 1985 -BYTE 159 



LISP TUTOR 



that we have developed at Carnegie- 
Mellon. The Advanced Computer 
Tlitoring Project at CMU currently has 
tutors under development for high- 
school algebra and geometry, and we 
have plans to create tutors for 
calculus and other programming lan- 
guages such as Pascal and Prolog. 
The LISP tutor provides an example 
of our approach in bringing AI tech- 
niques into educational-software 
development. 

Intelligent Tutoring 

These tutoring projects are examples 
of a particularly promising approach 
to educational software called intel- 
ligent tutoring (see reference 2). Such 
systems differ from other AI ap- 
proaches to education by their at- 
tempt to provide effective instruction 
in problem solving the way a human 
tutor does. 

There are a number of components 
typically found in an intelligent tutor- 
ing system. First, there is a domain ex- 
pert, which can actually solve the prob- 
lems. (GREATERP contains a system 
that can write LISP functions from 
problem specifications.) Second, 
there is a bug catalog, which contains 
all the possible deviations a particular 
student can make from the ideal ex- 
pert behavior. Third, there is a tutor- 
ing module, which constitutes an expert 
system for instruction. It is based on 
three sets of principles: one for deter- 
mining from a student's behavior 
what he knows and what confusions 
or bugs he has, another for deciding 
when to interrupt him in the problem- 
solving process and what to say, and 
a third to figure out what problems a 
student should do and when he 
should advance to new material. 
T/pically, these decisions are based 
on an internal model that the tutor 
keeps of the student's knowledge and 
difficulties so far, enabling it to tailor 
its instruction to each individual 
student. 

Finally, the tutoring system must 
contain an interface for communicat- 
ing with the student. Its construction 
requires human-engineering decisions 
concerning how to present informa- 
tion understandably, how to query the 



student, how the student should enter 
answers, and what information should 
be maintained on the screen. 

Until recently, intelligent tutoring 
was a topic for advanced research but 
didn't seem to offer a viable method 
for delivering educational software. 
This situation has changed for two 
reasons. First, an increasing expertise 
in cognitive psychology and artificial 
intelligence allows us to build such 
tutors much more efficiently and 
rapidly. For example, we can develop 
lesson material on our LISP tutor at 
a faster rate than that estimated for 
conventional educational software 
(200 hours per hour of instruction). 
Second, while an intelligent tutor re- 
quires a larger, faster computer, hard- 
ware costs are dropping to where it 
is becoming cost-effective to purchase 
the equipment required. 

Design of the LISP Tutor 

The goal underlying our design of the 
LISP tutor is simple: A student should 
be able to work on a problem in a 
"friendly" environment, as if he were 
using a smart, structured editor. How- 
ever, whenever he makes a planning 
or coding error or asks for help, the 
tutor should provide helpful informa- 
tion that guides the student back to 
a correct path to the solution. In ad- 
dition, we wanted our tutoring en- 
vironment to represent the concep- 
tual structure of programming prob- 
lems better than a simple screen 
editor. 

In order to monitor a student's 
progress and discover and instruct 
about errors, the tutor must be able 
to solve the problems the student is 
working on. Therefore, the first com- 
ponent in the LISP tutor is the ideal 
model, a simulation of the program- 
ming knowledge ideal students use in 
solving problems. This ideal model is 
based on a detailed theory of how 
students learn to program (see refer- 
ence 3). 

We used GRAPES (Goal-Restricted 
Production System, see reference 4) 
to represent the rules programmers 
have for solving problems. Each prob- 
lem-solving rule is represented in the 
system as a production rule. Each pro- 



duction rule contains an IF part, which 
is a set of conditions used to deter- 
mine if the rule applies, and a THEN 
part, which specifies what to do in 
that situation. The following are 
English versions of two of the hun- 
dreds of GRAPES production rules 
known by the tutor: 

IF the goal is to combine LIST1 
and LIST2 into a single list 

THEN use the function APPEND and 
set as subgoals to code LIST1 
and LIST2 

IF the goal is to check that a 
recursive call to a function will 
terminate and the recursive 
call is in the context of a MAP 
function 

THEN set as a subgoal to establish 
that the list provided to the 
MAP function will always 
become NIL after some 
number of recursive calls 

The first is a straightforward produc- 
tion rule about the use of the LISP 
function APPEND to make one list 
from two other lists. The second is a 
rather esoteric production rule that an 
advanced programmer might have. 
When the ideal model codes a LISP 
function, it applies many production 
rules like these to plan and then write 
the code. It also contains a large set 
of buggy rules that represent mis- 
conceptions novice programmers 
often develop during learning. 

The ideal model represents the 
knowledge we want the student to ac- 
quire. But the tutor must also repre- 
sent what he currently knows or does 
not know and his approach to each 
particular problem. The tutor follows 
the student as he types in his code, 
symbol by symbol, and tries to figure 
out what correct or buggy production 
rule would have led to that input. If 
the rule found is a correct one, then 
the tutor stays silent and waits for fur- 
ther input. If, on the other hand, the 
input is in error, the tutor interrupts 
with advice. Thus, as long as the stu- 
dent follows a path leading to a cor- 
rect solution, the tutor stays in the 
background. 

[continued] 



160 B YTE • APRIL 1985 



Put your blue box 
out to pasture. 



Genesis Has Better Choices for 
Superior 8086 Designs. 

Genesis development tools turn your 
IBM PC or compatible computer into the 
most flexible, comprehensive development 
system made for 8086-family designs. 
Genesis offers the widest choice of proven 
languages, superior debugging tools, and 
even in-circuit emulators. It all starts with 
ACCESS, the superior Genesis operating 
environment that allows Intel's 8086 devel- 
opment software to run under MS-DOS. And 
not only do we sell ACCESS and all the Intel 
languages for 8086 and 80186 designs — 
we also offer an ACCESS system for 8-bit 
designs as well. 

Genesis Is Faster. 

You get performance as well as flexibility 
with Genesis. For example, in our tests the 
ASM 86 assembler running under ACCESS on 
an IBM PC XT runs 4.7 times as fast as the 
assembler on a hard-disk based Series III 
and an incredible eleven times faster than a 



floppy-disk based Intel system. The ASM 86 
assembler we tested under ACCESS even 
ran 1.53 times faster than aVAX 11/782 
running competing cross-software. 

Genesis Is Easier to Use. 

Of course, Genesis offers more than speed 
of execution. The GeneScope family of sym- 
bolic debuggers and in-circuit emulators 
share the most powerful and easiest to use 
human interface available today. GeneScope 
offers high-level macro facilities, an on-line 
symbolic assembler, alphanumeric and 
graphic support, and many more features 
that make Genesis tools a better solution 
than other systems. 

Genesis Costs Less. 

With Genesis you get all the flexibility of 
a personal computer and all the power of 
expensive dedicated development systems. 
You can get your products to market faster, 
at a fraction of the cost. 



Is there really any reason to keep using 
obsolete, expensive equipment — when you 
can have Genesis instead? Quit chewing 
your cud— give lis a call and find out how 
Genesis tools 
can make 
your life 
easier. 




Genesis Has a Better Solution. 




Microsystems 

Genesis Microsystems Corporation 

196 Castro Street 

Mountain View, California 94041 

Phone:(415)964-9001 

Telex: 4998093 GENMSUI 

Inquiry 165 




■*•*•> 



1 ACCESS arid GeneScope are tnjtdfmaxks of Genesis Micmsystoifls Corp. IBM is a registered trademark and PC, ami AT*r** Kudemarks of International itastne^tarfi.to& <&n> Intel is a registered trademark rj final Corp. 
YA.X'i»« 1 ;f{jfl||£ned trademark of Digital Equipment Corp. 



dtUF>y i \?y 



LISP TUTOR 



The LISP tutor works 
through the algorithm 
step by step. 



The LISP tutor is designed to pro- 
vide as much guidance as necessary. 
When it finds that the student is hav- 
ing difficulty coding a problem, it 
takes him from "coding mode" into 
"planning mode"; that is, the tutor 
works through the algorithm with the 
student, step by step, using an exam- 
ple. After the algorithm is con- 
structed, the student can return to 
coding, presumably with a better idea 
of what he should do to get his code 
to work properly. 

We have designed this tutor with a 
strong commitment to immediate 
feedback. As soon as the student 
makes a mistake, the tutor responds 
with an appropriate diagnostic mes- 
sage. Because a student can write his 
code a small piece at a time, the feed- 
back appears as soon as one item is 
wrong. By contrast, in the standard 
learning situation a student only 
receives feedback after he codes the 
entire function— or set of functions— 
and tries to run it. There is con- 
siderable psychological evidence that 
humans learn better with immediate 
feedback. 

The tutor also provides guidance by 
hinting toward the correct solution if 
the student is having difficulty. These 
hints take the form of queries and re- 
minders about current goals. If nec- 
essary, the tutor can provide the next 
small piece of code so that the stu- 
dent can continue. This is done at the 
student's request or after he has 
made more than the maximum 
number of allowed errors— usually 
two— for that portion of code. The 
goal here is for the student to do as 
much of the work as possible. Stu- 
dents learn much more effectively by 
doing than by watching. By providing 
the next portion of code, the tutor 
enables the student to work through 
the rest of the problem in cases where 
he might otherwise have given up. As 



a consequence, he can tackle more 
and more difficult problems. 

A major design feature of the tutor- 
ing interface provides the student 
with a structured editor through which 
to enter code. This editor automatical- 
ly balances parentheses and provides 
placeholders for the arguments of 
each function. For example, to write 
a function definition in LISP, you must 
use the function defun followed by 
the function name, a parameter list, 
and the function body, lb begin, the 
student types a left parenthesis and 
the word defun. As soon as he types 
the space following that word, the 
tutor redisplays the code as 

(defun <NAME> <PARAMETERS> 
< PROCESS > 
) 

The symbols in angle brackets in- 
dicate arguments that must be coded. 
The tutor places the cursor under- 
neath < NAME> and highlights it to 
indicate that the function name must 
be coded next. 

This structured editor relieves stu- 
dents of the burden of balancing paren- 
theses and checking syntax. It enables 
them to focus on the more conceptual- 
ly difficult aspects of LISP. Our results 
show that this leads to faster learning 
of these major techniques and skills— 
with no deficit in syntax knowledge. 
Students removed from the tutor per- 
form as well as or better on all aspects 
of coding, including algorithm design, 
memory for LISP functions/and syn- 
tax, than those conventionally taught. 

The editor also facilitates commu- 
nication between the student and the 
tutor. Our studies of interfaces have 
shown that in the normal question- 
and-answer format of most educa- 
tional software, the tutor and the stu- 
dent can easily get "out of sync" on 
complex problems, where the student 
is not sure what part of the problem 
the tutor is talking about. In the LISP 
tutor, the student types directly into 
the code, replacing one of the place- 
holders, and thus it is always clear 
what part of the problem is being 
coded. Furthermore, these symbols 
help to communicate the conceptual 
structure of the programming prob- 



lem. For example, when the student 
types the iterative construct prog, the 
tutor provides the template for 
iteration: 

(prog < LOCAL VARIABLES > 
<INITIALIZATIONS> 
<BODY> 
<REPEAT> 
) 

This template helps to structure the 
problem into a list of local variables, 
initializations of those variables, code 
for the program body (i.e., the re- 
peated actions), and a return to the 
start of the loop. In many cases a sym- 
bol is expanded into more detailed 
symbols; for example, the < BODY> 
is coded as two portions: a 
TERMINATING CASE> and the 
< UPDATING CODE>. 

When a n error arises or the student 
requests assistance, the tutor con- 
structs an English explanation based 
on templates associated with each 
production rule. These explanation 
templates allow the tutor to describe 
an error or provide a hint by using a 
general rule and making reference to 
the specific problem being coded. 
However, writing programs to under- 
stand natural language is an enormous- 
ly difficult and expensive task. In fact, 
students' descriptions of their algo- 
rithms are often hard for even human 
tutors to understand. Therefore, when 
the student is working with the tutor 
to design an algorithm, rather than 
having him type in English responses 
to the tutor's questions, we provide a 
menu of choices for his responses. 
This menu is constructed from the 
English descriptions of the correct 
and buggy production rules under 
consideration. 

Learning LISP 
with the Tutor 

Currently the LISP tutor contains ap- 
proximately 32 5 production rules 
about planning and writing LISP pro- 
grams and 475 buggy versions of 
those rules. It is effective in diagnos- 
ing and responding to between 45 
and 80 percent of the student's errors, 
depending on the complexity of the 

[continued) 



162 BYTE • APRIL 1985 



Move over, Crosstalk® 



■■■"■" r 

HwP 



mm 







■fr-Mi 



The NightOwl's in town 
and he's packing a 
16-bit MEX! 



Last year, the NightOwl 
delivered MEX, the 
Modem Executive that 
tamed the 8-bit com- 
munications frontier. 

This year, he's doubled 
his byte with MEX-PC — 
the supercharged 16-bit 
communications pack- 
age for the IBM-PC — 
and he's looking to take 
on the big boys, feature 
for feature. 



<k^Q Q^ plus $5 for shipping 
*Jp ^J J m J ^J and handling 

(includes MEX-PC software and com- 
plete manual) 



Supports all popular modems • Pro- 
grammable for unattended 
operation • Extensive HELP 
overlay • Auto-dial and redial 
• Alternate long distance dialing 
(ALD) • "List" dialing with auto- 
matic baud switching • Instant de- 
fining of IBM-PC function keys • 
Fast creation of custom "smart" 
phone directories • All popular 
protocols — extended Christensen 
XMODEM (Checksum and CRC) Com- 
puServe A ASCII (X-on, X-off) odd- 
even-none bit parity • A CLONE 
routine for unlimited creation of cus- 
tomized versions • Full access to 
your own operating system and soft- 
ware while logged onto a host 
system • Delay-adjustable Break 
key • DOS-compatible commands 

• Supports all monitors, port 
switching, named directories, on-line 
printing • IBM-PC-XT-AT — all DOS 
levels • 1 1 to 1 9,200 baud on most 
equipment • Source code for any 
overlay available 



"Individually, each of these fea- 
tures enhances the experience 
of telecomputing, but together 
they add up to enormous 
power and flexibility . . .one 
of the most innovative and so- 
phisticated communications 
packages available . . . MEX has 
been greeted with universal ac- 
claim." 

That's how Link-Up magazine 
described the 8080 version of 
MEX last September. Now, 
there's MEX-PC! 

You've struggled with over- 
priced, so-called smart termi- 
nal software long enough. 

Now, experience the genius, 
the economy, the power! of 
MEX-PC. 





Give us a call at 1-800-NITEOWL 

(in Wisconsin, call 414-563-4013) 




Crosstalk XVI i s a trademark o f Microstuf , Inc., Atlanta, GA 

MEX-PC is a trademark of NightOwl Software, Inc., Rt. 1, Box 7, Fort Atkinson, Wl 53538 



NightOwl 

"software, inc. 



Inquiry 284 



APRIL 1985 • BYTE 163 



LISP TUTOR 



Tkble I : The LISP curriculum. 

1. Basic LISP functions 

2. Defining new function 

3. Conditionals and predicates 

4. Structured programming 

5. Progs, input/output, and evaluation 

6. Integer- based iteration 

7. Integer-based recursion 

8. List-based recursion 

9. List- based iteration 

10. Advanced recursion 

11. Advanced programming constructs: Maps, Dos, Lets 

12. Property lists and arrays 

13. Search techniques 

14. An advanced problem: Waterjug 

15. List structure and destructive functions 

16. Macros and advanced function types 

17. Advanced topic: Pattern Matching 

18. Advanced topic: Implementing Production Systems 



Listing I : The dialogue between student and computer tutor to define the 
function rightp. 

Define rightp. It takes 3 arguments, sidel , side2, and side3, which represent the 
lengths of the three sides of a given triangle, where side3 is the longest side, rightp 
tests whether the three sides form a right triangle. In a right triangle, the sum of the 
squares of sidel and side2 is equal to the square of side3. However, your function 
should allow for a measurement error of 2 percent. In other words, your function 
should return t if the sum of the squares of the first two sides is within 2 percent of 
the square of the third side. 

For example (rightp 3 4 5.01) = t, because 3 squared + 4 squared = 25, which is 
within 2 percent of 5.01 squared. 

1. (defun rightp (sidel side2 side3) (cond)) 

Yes, you could use cond here, but there is a much easier way to test if the sum 
of the squares of the first two sides is within 2 percent of the square of the third. 
You can use a predicate, since we only have one test to do. 

2. (defun rightp (sidel side2 side3) 

(lessp (difference) <NUM2>)) 

You want to code the amount of difference between the sum of the squares of 
the first two sides and the square of the third side, and you do not care which 
of those two numbers is larger. So we want to take the absolute value of their 
difference. 

3. (defun rightp (sidel side2 side3) 

(lessp (abs (difference <NUM3> <NUM4>)) 
<NUM2>)) 

Which do you want to do first? 
PRESS: IF YOU WANT TO: 

1 Write code to get the sum of the squares of the first two sides. 

2 Write code to get the square of the third side. 

Menu choice: 1 



(defun rightp (sidel side2 side3) 
(lessp (abs (difference (plus) <NUM4>)) 
<NUM2>)) 



[continued) 



Each lesson takes 
from one to four 
hours to complete. 



lesson and the amount of testing we 
have conducted. The curriculum we 
have designed is shown in table I . The 
system successfully tutors students 
through problems on lessons 1 to 10, 
each lesson taking from one to four 
hours to complete. Each topic in- 
volves a small instructional booklet 
and many problems practicing the 
skills taught in that lesson. Our goal 
in designing these booklets was to 
keep the written instruction to a mini- 
mum. There is considerable evidence 
that written technical instruction is 
most effective when it is brief (see 
reference 5). 

Most of the time in any lesson is 
spent going through problems. List- 
ings 1 and 2 illustrate sample dia- 
logues in which the tutor monitors the 
student's progress through simple 
problems. This does not present the 
tutor as it really appears. Instead, it 
shows essentially teletypewriter versions 
of the student-tutor dialogue. The ac- 
tual interaction involves the use of 
several display windows: a code window 
in which the student types the code, 
a tutoring window in which tutoring feed- 
back is displayed, and a goals window 
in which reminders are presented. 

In the teletypewriter versions the 
tutor's output is given in normal type 
characters, while the student's input 
is shown in bold characters. These list- 
ings present "snapshots" of the inter- 
action; each time the student pro- 
vokes a response, we have listed his 
input along with the tutor's response 
(numbered for convenience). The total 
code as it appears on the screen is 
shown, although the student has 
added only what is different from the 
previous code (shown in boldface 
type). For example, in line 2 of listing 
1 he has typed (lessp (difference as 
an extension of the code in line 1. 

It is important to note several things 

[continued] 



164 BYTE • APRIL 1985 



MICRO CAP and MICRO LOGIC 

on line... 







'iM^c 







V ^ J f ' I 

(r*f 









Jte 



How many long unproductive hours 
have you spent "in line" for your simula- 
tion? Well, no more. MICROCAP and 
MICROLOGIC can put you on line by 
turning your PC into a productive and 
cost-effective engineering workstation. 

Both of these sophisticated engineering 
tools provide you with quick and efficient 
solutions to your simulation problems. 
And here's how. 

MICROCAP: 

Your Analog Solution 

MICROCAP is an interactive analog 
circuit drawing and simulation system. 
It allows you to sketch a circuit diagram 
right on the CRT screen, then run an AC, 
DC, or Transient analysis. While pro- 
viding you with libraries for defined 
models of bipolar and MOS devices, 
Opamps, transformers, diodes, and much 
more, MICROCAP also includes features 
not even found in SPICE. 

MICROCAP II lets you be even more 
productive. As an advanced version, it 
employs sparse matrix techniques for 
faster simulation speed and larger net- 



Si 



"Typical MICROCAP Transient Analysis" 

works. In addition, you get even more 
advanced device models, worst case capa- 
bilities, temperature stepping, Fourier 
analysis, and macro capability. 



MICROLOGIC: 
Your Digital Solution 

MICROLOGIC provides you with a 
similar interactive drawing and analysis 
environment for digital work. Using 
standard PC hardware, you can create 
logic diagrams of up to 9 pages with each 
containing up to 200 gates. The system 
automatically creates the netlist required 
for a timing simulation and will handle 
networks of up to 1800 gates. It provides 
you with libraries for 36 user-defined 
basic gate types, 36 data channels of 256 
bits each, 10 user-defined clock wave- 
forms, and up to 50 macros in each net- 
work. MICROLOGIC produces 
high-resolution timing diagrams showing 
selected waveforms and associated 
delays, glitches, and spikes — just like the 
real thing. 




Typical MICROLOGIC Diagram" 



Reviewers Love 
These Solutions 

Regarding MICROCAP . . . "A highly 
recommended analog design program" 
(PC Tech Journal 3/84). "A valuable tool 
for circuit designers" (Personal Software 
Magazine 11/83). 

Regarding MICROLOGIC ... "An effi- 
cient design system that does what it is 
supposed to do at a reasonable price" 
(Byte 4/84). 

MICROCAP and MICROLOGIC are 
available for the Apple II (64k), IBM PC 
(128k), and HP-150 computers and priced 
at $475 and $450 respectively. Demo 
versions are available for $75. 

MICROCAP II is available for the 
Macintosh, IBM PC (256k), and HP-150 
systems and is priced at $895. Demo 
versions are available for $100. 

Demo prices are credited to the 
purchase price of the actual system. 

Now, to get on line, call or write today! 

Spectrum Software 

1021 S. Wolfe Road, Dept. B 
Sunnyvale, CA 94087 
(408) 738-4387 

Inquiry 361 



Inquiry 149 



»:i un m 



1 -800-528-8690 

ORDER LINE 



Guaranteed Low Prices 

All prices are for cash, cashiers check or money order. 
Allow 4 weeks bank clearance for personal checks. 
C.O.D.'s, Visa, MC, and P.O.'s accepted at additional 
charge. Prices subject to change. Returns must have 
authorization number and are subject to a restocking 
charge. 



COMPUTERS & TERMINALS 



ADDS QUME 

ALTOS SANYO 

APPLE TELEVIDEO 

ESPIRIT VISUAL 

NEC WYSE 

NORTHSTAR ZENITH 

SWITCH BOXES 

2 POS RS232 $75 

4 POS RS232 115 

2 POS Centronics 93 

4 POS Centronics 121 

TTjJJTTT 

Novation-J-Cat 99 

Smart Cat 399 

Hayes Smart Modem 300/1200 219/479 

1200B 429 

Anchor Signalman Call 

Qubie lnternal/RS232 269/285 

AST latest boards Call 

Chips & Microprocessors Call 

GSf Surge Protector 59 

Kraft Joysticks (IBM or Apple) 29 

Printer Buffers & Spoolers Call 

Quadram all products Call 

Ribbons (doz.) & Printwheels Call 

Standby Power Systems Best Price 

Tractors & Sheetfeeders Call 

CAD 

HOUSTON INST. PLOTTER $AVE 
KURTA DIGITIZER CALL 

CORVUS NETWORK 



DISK DRIVES 



Alpha Omega 10MB w/controller (IBM) 799 

TEAC 55B slimline DSDD 149 

Bernoulli Box 1949 

Tandon 100-2 199 

Maynard 10MB-WS-2 with EPROM 1149 

Taflgrass Tech Hard Disk System Call 

Microsci A2 (Apple) 189 

CORVUS Call 



MONITORS 



Amdek Call 

Leading Edge Color RGB 379 

PGS-HX-12 489 

PGS MAX-12 Amber 179 

Zenith 122/123 89 



PRINTERS 



C. Itoh 

1550 AP 449 

1550 BCD 485 

8510 AP 299 

7500 215 

A10-30 475 

F10-40 879 

F10-55 1049 

Daisywriter 
2000 985 

Diablo 

620 API 739 

630 API 1669 

630 ECS 1999 

Epson 
All Call 



Juki 

6100 379 

Okidata 

All Models Call 

Panasonic 

All Models Call 

Qume 

Letter Pro 629 

1 1/40 WIBMIF..1 369 

11/55WIBMIF..1569 
Star Microtronics 

New Models .... Call 
Tally 

160Lw/Tractor...Call 
Toshiba 

1340/1351 Call 



NEC • NEC • NEC • NEC • NEC • NEC • NEC 

P2 515 3550 1489 

P3 739 7710 1639 

2050 779 8850 1799 

P2/P3 Parallel Int. Face 139 



2017 E. Cactus, Phoenix, AZ 85022 
(602) 482-0400 



LISP TUTOR 



No. You should create a helping function for this code, rather than coding it 
directly. Our function, rightp, is now 4 levels of embedding deep, and the rela- 
tion we are about to code— the sum of squares of two numbers— would be a 
useful helping function. Thus, let's code the sum of the squares of the first two 
sides using a helping function. 

5. (defun rightp (sidel side2 side3) 

(lessp (abs (difference (sumsq < ARGUMENTS >) <NUM4>)) 
<NUM2>)) 

What do you want the helping function sumsq to do? 
PRESS: IF YOU WANT TO: 

1 Take 2 arguments, the square of the first side and the square of the 
second side. Compute their sum. 

2 Take 2 arguments, the first side and the second side. Compute the 
sum of the squares of these numbers. 

3 Have the tutor choose. 

Menu choice: 1 

No. We wouldn't need a helping function just to compute the sum of two 
numbers. You should create your helping function so that it does more than just 
a sum. 

It would be better to define sumsq so that it takes two arguments, in this case. 
[1] the first side, and [2] the second side, and computes the sum of the squares 
of these numbers. 

Menu choice: 2 

6. (defun rightp (sidel side2 side3) 

(lessp (abs (difference (sumsq sidel side2) (times))) 
<NUM2>)) 

You should use a helping function that you have already coded, square. Since 
this function computes the square of a number, you can use it to code the 
square of the third side. 

7. (defun rightp (sidel side2 side3) 

(lessp (abs (difference (sumsq sidel side2) (square side3))) (plus))) 

I don't understand that, Rob. How are you going to code 2 percent of the 
square of the third side? 

[EXPLAIN] 

OK. I'll explain what I wanted. You could either code this directly or create a 
helping function here to code 2 percent of the square of the third side. Let's 
create a helping function just to make things easier. We'll call this helping func- 
tion percentage. We will define percentage when we are finished coding rightp. 

What do you want the helping function percentage to do? 
PRESS: IF YOU WANT TO: 

1 Take 2 arguments, one hundredth of 2 and the square of the third 
side. Compute their product. 

2 Take 2 arguments, 2 and the third side. Compute the given percent- 
age of the square of its second argument. 

3 Take 2 arguments, 2 and the square of the third side. Compute the 
given percentage of its second argument. 

4 Take 1 argument, the square of the third side. Compute 2 percent of 
its argument. 

5 Have the tutor choose. 

Menu choice: 3 
Very good. 

8. (defun rightp (sidel side2 side3) 

(lessp (abs (difference (sumsq sidel side2) (square side3))) 
(percentage 2 (square side3)))) 

[continued) 



166 BYTE • APRIL 1985 



The Hard Disk With 
The Software Shell 




Internal 10 Meg $699 
External 10 Meg $849 



Why pay more for 1 or 20 Meg 
drives than you have to? Our 10 
Meg internal hard disk subsystem is 
priced at $699, with the 20 Meg 
model going for $1088. Our exter- 
nal 10 Meg goes for $849, 20 Meg 
for $1238. 

Our drives are fully compatible 

with any IBM PC or PC-compatible 
with 64K RAM and PC-DOS 2.0 or 
later.* Qiibie' drives boot directly 
from the hard disk. You can power 
up the PC and load the system 
directly, without using any floppy 
disks. No software patches or driv- 
ers to install. 

Using the same amount of 
power as a floppy drive, the Qubie 1 
hard disk uses less energy than 
other aftermarket drives. 




The drives come complete with 
ldir software, ldir's commands are 
in English, eliminating the need to 



type in DOS commands, and are all 
selected by using cursor control 
keys, ldir even explains commands 
with HELP screens that give you on- 
line advice when you need it. 

Qubie' drives are made of spe- 
cial plated recording media. They 
withstand the vibration and move- 
ment that has damaged hard disks 
in the past. In fact, Qubie 1 drives 
have been selected by several 
computer makers for use in their 
portable computers. 

Good service starts with answer- 
ing your questions before and after 
you buy. It continues with same or 
next day shipment of your order. 
Since we only sell a few selected 
products, we have the information 
and inventory to help you fast. 

We perform repairs in our own 
service department within 48 
hours, should you ever need service 
during the one year warranty 
period 

Our price is the whole price. All 

prices include UPS surface charges 
and insurance. In a hurry? Two day 
UPS air service is just $12. 

Corporations, dealers and insti- 
tutions, call for volume purchase 
price information. 

*Call for information. 

Inquiry 327 






4 
f 

I 



No Risk Guarantee 

If you are not completely 
satisfied withyour purchase, 
you may return it within 30 
days for a full refund, in- 
cluding the cost to send it 
back. If you can get any of 
our competitors to give you 
the same guarantee, buy 
both and return the one you 
don't like. 



$ 



Order Today, Shipped Tomorrow! 

For fastest delivery, send cashiers check, , 
money order, or order by credit card. Per- 
sonal checks, allow 18 days to clear. 
California residents, add 6% sales tax. 
Hours: Mon.-Fri. 8:00 a.m.-6:00 p.m. PST 
Sat. 9:00 a.m.-l:00 p.m. PST 

(800) 821-4479 

Toll Free Outside California 



(805) 987-9741 

Inside California 

QUBIE 



4809 Calle Alto 
Camarillo, CA 93010 






London (01) 223-4569 
Paris (01) 321-5316 
Sydney (02) 579-3322 

© Qubie' 1984 



LISP TUTOR 



about these dialogues. First recall 
that the tutor balances parentheses 
and provides placeholders (e.g., 
<CASE>. <NAME>, <NUM>) 
for portions of code that need ex- 



panding. Second despite the large 
portions of code added from one line 
to the next, it understands each 
separate word or symbol the student 
enters, and it responds with an error 



OK. Now we have finished coding the function rightp. Let us now code the 
helping function(s) we used but haven't yet defined. 

Which do you want to do first? 
PRESS: IF YOU WANT TO: 

1 Define the helping function sumsq. 

2 Define the helping function percentage. 

Menu choice: 1 

Define the helping function sumsq. It takes 2 arguments, (numl num2) are the 
suggested names for the arguments, but you may name them whatever you 
wish, sumsq should compute the sum of the squares of numl and num2. 

9. (defun sumsq (s y) 

(plus (square s) (square y))) 

OK. Now we have finished coding the function sumsq. Let us now code the 
helping function(s) we used but haven't yet defined. 

Define the helping function percentage. It takes 2 arguments, (pent total) are the 
suggested names for these arguments, but you may name them whatever you 
wish, percentage should compute pent percent of total. 

10. (defun percentage (x y) 

< PROCESS > 

[EXPLAIN] 

OK. I'll explain what I wanted. Let's figure out how to code x percent of the 
second number. 

How can you code x percent of the second number? 
PRESS: IF YOU WANT TO: 

1 Multiply the second number by one-hundredth of x. 

2 Multiply the second number by x. 

3 Divide the second number by 100. 

4 Have the tutor choose. 

Menu choice: 1 
Good. 

11. (defun percentage (x y) 

(times <NUM1> <NUM2>)) 

What do you want to do first? 
PRESS: IF YOU WANT TO: 

1 Write code to get one-hundredth of the first number. 

2 Write code to get the second number. 

Menu choice: 1 

12. (defun percentage (x y) 

(times (quotient x .01) <NUM2>)) 

No, that is not the right number. How are you going to specify one hundred in 
LISP? 

13. (defun percentage (x y) 

(times (quotient x 100) y)) 

OK. Now we have finished coding the function percentage. There are no more 
helping functions to define. 



message if necessary for any of those 
items. 

THE rightp PROBLEM 

Listing 1 presents a dialogue from 
lesson 4 that focuses on decompos- 
ing a problem into a set of subfunc- 
tions. Although this dialogue contains 
more errors than the typical student 
makes, it is a good illustration of how 
the tutor responds to errors and re- 
quests for assistance. The student is 
allowed to input information until he 
types cond, at which point the tutor 
tells him that a conditional structure 
is not necessary. (The actual screen 
setup is shown in figure 1.) Next he 
types (lessp (difference (line 2) and 
receives a hint; he correctly inserts the 
absolute value function (abs) before 
difference in line 3. Note that the tutor 
presents a menu when it doesn't 
know what the student will do next. 
For instance, since the arguments to 
difference in rightp can be in either 
order, it needs to know which one will 
be typed next, and it asks him via the 
menu following line 3. 

After line 4 the tutor gives the stu- 
dent information about when it is use- 
ful to code a separate helping func- 
tion. It queries him after line 5 to 
make sure they agree on what that 
helping function will compute. This is 
an example of the tutor's planning 
mode. In this case, the student is 
mistaken about what the subf unction 
should do; the tutor corrects him. 
After line 7 it determines that his code 
will not achieve the goal. However, 
this input does not match any of the 
buggy rules in the ideal model, so the 
tutor provides minimal feedback: it in- 
dicates that it cannot understand the 
input and queries the student to re- 
mind him about what he should be 
trying to code. This hint is not enough 
for the student, who asks for an ex- 
planation by hitting a special key, 
whereupon the tutor helps him 
specify another helping function, 
percentage. 

The final form of rightp is displayed 
in line 8. In line 9 the student defines 
the helping function sumsq without 
error and goes on to define percent- 

[continued) 



168 BYTE • APRIL 1985 




Inside Outside 





PC212A/1200 $299 
212A/1200E $329 



Why pay more for a 300/1200 
baud modem than you have to? 
Through the use of four low-cost, 
state-of-the-art microprocessors, we 
can now offer two versions of our 
full featured modems at prices, 
hundreds less than the competition. 
PC212A/1200 is available for $299, 
the212A/1200Efor$329. 

Our modems are fully compati- 
ble with all Hayes software com- 
mands. Software packages like 
Crosstalk™, Sidekick™ and 
Smartcomll™ will work with our 
modems. 

Our internal modem card, 

PC212A/1200, is designed specifi- 
cally for the IBM PC, PC/XT or 
other PC-compatible units.* The 
board occupies only one slot, since 
it is just 6/10" in thickness. The 
optional asynchronous port, availa- 
ble for $40, can be used for other 
peripherals when the modem is not 
being used The modem comes 
complete with PC-TALK m™, modu- 
lar phone cable, card edge guide, 
and user's guide. 

Our external standalone modem, 

212A/1200E, can be used with any 
computer or terminal that has an RS- 
232C serial port. The modem is 
housed in an attractive gold anodized 
case and fits comfortably under a 
standard telephone. 



An easily accessible volume control 
knob adjusts the modem speaker's 
output. The modem comes com- 
plete with modular phone cable, 
serial connector cable, and user's 
guide. 

Both modems are Bell 103/212A 
compatible. Both feature auto-dial 
and can be accessed remotely 
through an auto-answer mode. 

Good service starts with an- 
swering your questions before and 
after you buy. It continues with 
same or next day shipment of your 
order. Since we only sell a few 
selected products, we have the 
information and inventory to help 
you fast. 

We perform repairs in our own 
service department within 48 hours, 
should you ever need service during 
the one year warranty period 

Our price is the whole price. All 

prices include UPS surface charges 
and insurance. In a hurry? Two day 
UPS air service is just $5. 

Corporations, dealers and insti- 
tutions, call for volume purchase 
price information. 

Inquiry 328 

*Call for information. 



No Risk Guarantee 

If you are not completely 
satisfied withyour purchase, 
you may return it within 30 
days for a full refund, in- 
cluding the cost to send it 
back. If you can get any of 
our competitors to give you 
the same guarantee, buy 
both and return the one you 
don't like. 



^^'•T' , T- , ^"''T-'-'T*- , f^'^"-'^ 



» 

» 









ig«» 



Order Today, Shipped Tomorrow! 

For fastest delivery, send cashiers check, 
money order, or order by credit card. Per- 
sonal checks, allow 18 days to clear. 
California residents, add 6% sales tax. 
Hours: Mon.-Fri. 8:00 a.m-6:00 p.m. PST 
Sat. 9:00 a.m-l:00 p.m. PST 

(800) 821-4479 

Toll Free Outside California 

(805) 987-9741 

Inside California 

QUBIE' % 

4809 Calle Alto 
Camarillo, CA 93010 

London (01) 223-4569 
Paris (01) 321-5316 
Sydney (02) 579-3322 

• Qubie' 1984 



LISP TUTOR 



age in line 10. He is stuck as to what 
to do after typing the function body 
and requests an explanation. The 
tutor helps him refine his algorithm. 
After this he defines percentage with 
one error in line 12. 



After the student defines rightp and 
its helping functions, the. LISP tutor 
puts him into a real LISP environment 
where he can experiment with them 
and try variations. After he experi- 
ments to his satisfaction, the tutor 



Yes, you could use COND here, but there is a much easier 
way to test if the sum of the squares of the first two sides 
is within 2% of the square of the third. You can use a 
predicate, since we only have one test to do. 



CODE FOR rightp 



(defun rightp (sidel side2 side3) 
(cond ) 






GOALS 



Define the function rightp. (rightp 3 4 5.01) = t. 
' " * Test if the triangle is a right triangle. * * * 



Figure I : The screen configuration after line 1 in listing I . 



In examples A and 8 what do you have to do to get the result 

of fact called with n? 

PRESS: IF YOU WANT TO: 

1. Multiply n by one less than n. 

2. Multiply n by fact of one less than n. 

3. Add n to the result of fact called with one less than n. 

4. Have the tutor choose. 
Menu Choice: 2 



CODE FOR fact 



(defun fact (n) 

(cond ((2erop n) 1) 

< RECURSIVE-CASE >)) 



EXAMPLES 



fact (n) 
(fact 1) = 
(fact 3) = 



fact (n-1) 
(fact 0) = 1 
(fact 2) = 2 



Figure 2: The screen configuration before line 4 in listing 2. 



provides the next problem in the 
lesson. 

The fact Problem 

Listing 2 illustrates how the tutor 
guides the coding of a recursive func- 
tion such as finding the factorial of a 
number, an early problem in lesson 
7. Although the student has some dif- 
ficulty with the syntax of the condi- 
tional test in lines 1 and 2, he basically 
codes the terminating test correctly. 
Typically we find students have little 
difficulty with terminating cases but 
great difficulty with recursive cases. 
The dialogue after line 3 shows how 
the tutor guides the student through 
the design of the recursive function. 
It leads him to construct examples of 
the relationship between fact (n) and 
fact (n - 1) and then asks him to iden- 
tify the general relationship. Figure 2 
shows the screen image at a critical 
point in the design of this function. 

The dialogue after this point shows 
two classic errors students make in 
defining recursive functions. The first 
in line 4 is to call the function direct- 
ly without combining the recursive 
call with other elements. The second 
in line 6, is to call the function recur- 
sively with the same argument rather 
than a simpler one. 

After the student finishes coding the 
function, he goes to the LISP window 
and experiments with it. He must 
trace the function and the recursive 
calls embed and unravel. Figure 3 
shows the screen image at this point, 
with the code on top and the trace 
below it. 

Evaluating the LISP Tutor 

We should emphasize that the tutorial 
knowledge in these interactions was 
not especially handcrafted for these 
problems; it shows the general ap- 
proach used by the tutor. That is the 
power of an intelligent tutoring 
system. Once we have a system that 
can tutor recursion problems, for ex- 
ample, we can easily add problems on 
that topic. Furthermore, although 
some testing is necessary to build our 
catalog of student errors and miscon- 
ceptions, once coded, the tutor can 

[continued) 



170 BYTE • APRIL 1985 



POWDUiu CBW SOFTWARE 

inual teW 



NEVADA 



TM 



FORTRAN 

DISKETTE & MANUAL 

Nevada FORTRAN is based upon I &^% ^\ t\ E 
the ANSI-66 standards I ***^L^7b^7^# 

(FORTRAN IV) with some V • 

1977 level features. Advanced features include: IF . , . THEN .. . . ELSE 
statement; COPY (Include); CHAINIng with COMMON; and TRACE 
debugging. Package includes a diskette, 214-page manual and 5 
sample programs, Included also is an 8080 assembler. Requires 48K 

RAM. ; ..; 

' NEVADA " 

BASIC. 

DISKETTE & MANUAL 



I $29.95 



With the built-in, full-screen 

text editor, you can easily 

develop programs for 1/10 the cost 

of a comparable BASIC interpreter. What's more, Nevada BASIC has 

full Matrix operations, Single- and Multi-Line functions, and BCD 

math (no round-off errors). You get a diskette and a 220-page manual. 

Requires48KRAM. 



r 



NEVADA 

PLOT 

DISKETTE & MANUAL 

I $29-95 



Nevada PILOT, written by Prof. 
John Starkweather, the language's 
creator, meets and exceeds all 
PILOT-73 standards. See the review in January 1983 MICROCOMPU- 
TING. This package includes a diskette, 131 -page manual, and 10 
useful sample programs. 

WHY WAIT? ORDER YOURS TODAY! 

Satisfaction guaranteed— or your money back. If for any reason 
you're not completely satisfied, just return the package— in good 
condition— with the sealed diskette unopened, within 15 days and 
we'll refund your money. 

Checks must be in U.S. Dollars 

and drawn on a U.S. Bank. 

California deliveries add 6% or 

6.5% sales tax. 

SHIPPING AND HANDLING FEES: Add $4.00 for the first package or 
manual and $2.00 each additional. OVERSEAS: Add $15.00 for the 
first package or manual and $5.00 each additional. COD's: Add 
$4.00. 

WE WELCOME C.O.D.'s 



o 



(H. :^g 



Since 1977 



ELUS COMPUTING 



(415)753-0186 

ELLIS COMPUTING, INC. 

3917 Noriega Street 
San Francisco, CA 94122 



NEVADA 



COBOL. 

DISKETTE & MANUAL 

I $29.95 



Nevada COBOL, based upon the 

ANSI-74 standards, has all the 

popular features. Powerful level 2 

features include: compound conditionals and full CALL CANCEL;; 

This software package includes a diskette, 165-page manual, plenty 

of examples and 16 complete COBOL source code programs. 



NEVADA 

PASCAL 

DISKETTE & MANUAL 



[ $29.95 



Advanced features include: 

14-Digit precision; BCD math (no 

round-off errors); Floating point 

+ 63 -64; TRACE debugging; Arrays up to 8 dimensions; 64K strings; 

External procedures; and Dynamic Module loading. You get a 

diskette and a 184-page manual. Requires 60K RAM and one disk 

drive with at least90K storage. 

NEVADA ™" 

EDIT. 

DISKETTE & MANUAL 

I $29.95 



Nevada EDIT, a full-screen, 
video-display text editor, is 
designed specifically for computer 
program text preparation. Nevada EDIT is completely user-change- 
able, can be configured to almost any terminal and takes up only 
12K of disk space. This package includes a diskette and 59-page 
manual. 
ALSO AVAILABLE 

• EXTRA MANUALS. $14.95 

• COBOL Appl ication Packages, Book 1 ; $ 9.95 

• BIG PRlNT'Diskette $19.95 

The CP/M Operating System, an 8080, 8085, or 2-80 (8-Bit) micropro- 
cessor, and 32K RAM are required, unless otherwise stated above. 



WHEN YOU ORDER, PLEASE SPECIFY 
FOLLOWING DISKETTE FORMATS: 

D 8" SSSD (Standard CP/M IBM 3740) 
5V4" Diskettes for: 

□ Access/Actrix 

□ Apple CP/M 

□ DEC VT 180 

. □ DEC Rainbow 

□ Epson QX-10 

□ Heath Hard Sector (Z-89) 

□ Heath Soft Sector 

(Z-90,Z-100) 

□ IBM-PC (Requires Z-80, 

Baby Blue II Card) 



ONE OF THE 

□ Kaypro Double Density (NCR) 

□ Mtcropolis Mod II 

□ NEC PC 8001 

□ North Star Double Density 

□ North Star Single Density 

□ Osborne Single Density 

□ Sanyo 1000, 1050 

□ Superbrain DD DOS 3.X 
(512 byte sec) 

□ Televideo 
D TRS-80 Model 1 (Base O Mapper) 

□ Xerox 820 Single Density 

CP/M is a registered trademark of Digital Research. Inc. Microsoft is a registered trademark of Microsoft 
Corp, TRS-80 is a registered trademark of Tandy Corp. Appie M is a trademark of Apple Computer, Inc. 
Osborne is a registered trademark of Osborne Computer Corp. Xerox 820 is a trademark of Xerox Corp. 
Kaypro is a trademark of Non-linear Sys. Heath/Zenith is a trademark of Heath Corp. IBM is a registered 
trademark of International Business Machines, Corp. Nevada BASIC, Nevada COBOL, Nevada FOR- 
TRAN, Nevada PILOT, Nevada EDIT, Nevada PASCAL, and Ellis Computing are trademarks of Ellis Com- 
puting, Inc. © t984 Ellis Computing, Inc. 



APRIL 1985 'BYTE 171 



LISP TUTOR 



— YOU ARE DONE. TYPE NEXT TO GO ON AFTER 

- TESTING THE FUNCTIONS YOU HAVE DEFINED - 

(defun fact (n) 

(cond ((zerop n) 1) 

(t (times n (fact (subl n)))))) 



THE LISP WINDOW 



= > (trace fact) 
(fact) 

= > (fact 3) 
1 < Enter > fact (3) 
|2 < Enter > fact (2) 
| 3 < Enter > fact (1) 
| |4 < Enter > fact (0) 
| |4 <EXIT> fact 1 
| 3 <EXIT> fact 1 
|2 <EXIT> fact 2 
1 <EXIT> fact 6 
6 



Figure 3: The screen configuration at the end of the dialogue in listing 2. 



Subscription Problems? 




'ca^tW 



We want to help! 

If you have a problem with your BYTE subscription, 

write us with the details. We'll do our best to set it 

right. But we must have the name, address, and zip 

of the subscription (new and old address, if it's a 

change of address). If the problem involves a 

payment, be sure to include copies of the credit card 

statement, or front and back of cancelled checks. 
Include a "business hours" phone number if possible. 

BYTE 
Subscriber Service 

P.O. Box 328 
Hancock, NH 03449 



lead students through a variety of cor- 
rect solutions and respond to a wide 
range of errors. Thus, it is generative 
in the sense that it creates instruc- 
tional interactions rather than using 
preprogrammed sequences. 

Generally, students are happy with 
the tutor and rate it better than learn- 
ing experiences they have had in 
other introductory programming 
courses. Their major complaints are 
that it uses too many menus and is 
sometimes slow. We are implement- 
ing optimizations and improvements 
to resolve both these problems. Inter- 
estingly students are more appre- 
ciative of the tutor's guidance and 
more tolerant of its speed as the 
lessons increase in difficulty. 

We have run one evaluation of the 
tutor, comparing it to experienced 
private human tutors and "on-your- 
own" condition. We found that the ad- 
vantage of private tutoring— human or 
computer— over the on-your-own con- 
dition increased as the material 
became more difficult. The students 
finished lesson I basically with the 
same speed and success in all three 
conditions. However, those in the on- 
your-own condition often had great 
difficulty getting through the recur- 
sion material; in fact, some did not 
finish the material in the allotted time. 
We had to extrapolate how long it 
would have taken them to finish it. 
Averaging the actual and extrapolated 
times, the students took 11.4 hours 
with the human tutors, 1 5 hours with 
the computer tutor, and 26.5 hours 
"on-your-own" to learn six lessons. 
Polls of students in a traditional 
classroom suggest that it takes over 
40 hours to cover the material in that 
situation. 

We tested the three groups just 
before the recursion exercises. We 
found essentially identical perfor- 
mances even though they were learn- 
ing at different rates. In another 
evaluation, we found students work- 
ing with the tutor learned nine lessons 
of material faster and performed bet- 
ter on competence tests than students 
learning without the tutor. Thus, the 
basic conclusion is that the human 

[continued] 



172 BYTE • APRIL 1985 




Would you hire an entire band when 
all you need is one instrument? Of 
course not. 

So why use a whole orchestra of 
computers when all you need is one 
to develop software for virtually any 
type of micro-processor? 

The secret? Avocet's family of 
cross-assemblers. With Avocet 
cross-assemblers you can develop 
software for practically every kind of 
processor — without having to 
switch to another development 
system along the way! 



Cross-Assemblers to Beat the Band! 



Development Tools That Work 

Avocet cross-assemblers are fast, reliable 
and user-proven in over 4 years of actual 
use. Ask NASA, IBM, Xerox or the 
hundreds of other organizations that use 
them. Every time you see a new micro- 
processor-based product, there's a good 
chance it was developed with Avocet 
cross-assemblers. 

Avocet cross-assemblers are easy to use. 
They run on almost any personal com- 
puter and process assembly languagefor 
the most popular, microprocessor families. 

Your Computer Can Be A 
Complete Development System 

Avocet has the tools you need to enter 
and assemble your soft-ware and finally 
cast it in EPROM: 

VEDITTextEditormakes sourcecode 
entry a snap. Full- screen editing plus a 
TECO-like command mode for advanced 
tasks. Easy installation - INSTALL pro- 
gram supports over 40 terminals and 
personal computers. Customizable 
keyboard layout. CP/M-80, CP/M-86, 
MSDOS, PCDOS $150 

EPROM Programmers let you pro 

gram, verify, compare, read, display 
EPROMS but cost less because they 
communicate through your personal 
computer or terminal. No personality 
modules! On-board intelligence provides 
menu-based setup for 34 different 
EPROMS, EEPROMSandMPUs (40-pin 
devices require socket adaptors). Self- 
contained unit with internal power supply, 
RS-232 interface, Textool ZIF socket. 
Driver software (sold separately) gives 
you access to all programmer features 
through your computer, lets you down- 
load cross-assembler output files, copy 
EPROM to disk. 

Model 7228 Advanced Programmer 

—Supports all PROM types listed. Super- 
fast "adaptive" programming algorithm 
programs 2764 in 1.1 minutes. 

Model 7128 Standard Programmer — 

Lower-cost version of 7228. Supports all 
PROM types except "A" versions of 2764 
and 27128. Standard programming algo- 
rithm programs 2764 in 6.8 minutes. 



Avocet 




Target 




CP/M-86 


Cross-assembler 


Microprocessor 


CP/M-80 


IBM PC, MSDOS** 


XASM04 


NEW 


6804 


$ 250.00 


$250.00 


XASM05 




6805 


200.00 


250.00 


XASM09 




6809 


200.00 


250.00 


XASM18 




1802/1805 


200.00 


250.00 


XASM48 




8048/8041 


200,00 


250.00 


XASM51 




8051 


200.00 


250.00 


XASM65 




6502/65C02 


200.00 


250.00 


XASM68 




6800/01,6301 


200.00 


250.00 


XASM75 




NEC 7500 


500.00 


500.00 


XASM85 




8085 


250.00 


250.00 


XASM400 




COP400 


300.00 


300.00 


XASMF8 




F8/3870 


300.00 


300.00 


XASMZ8 




Z8 


200.00 


250.00 


XASMZ80 




Z80 


250.00 


250.00 


XMAC682 


NEW 


68200 


595.00 


595.00 


XMAC68K 


NEW 


68000/68010 


595.00 


595.00 



Model 7956 and 7956-SA Gang Pro- 
grammers — Similar features to 7228 ; 
but program as many as 8 EPROMS at 
once. 7956-SA stand-alone version copies 
from a master EPROM. 7956 lab version 
has all features of stand-alone plus RS- 
232 interface. 

EPROM: 2758, 2716, 2732, 2732A, 2764, 2764A, 
27128, 27128A, 27256,2508,2516,2532,2564,68764, 
68766, 5133, 5143. CMOS: 27C16, 27C32, 27C64, 
MC6716. EEPROM: 5213, X2816A, 48016, I2816A, 
5213H. MPU (w/adaptor): 8748, 8748H, 8749, 
8749H, 8741,8742,8751,8755. 

7228 Advanced Programmer $ 549 

7128 Standard Programmer 429 

7956 Laboratory Gang Programmer 1099 
7956-SA Stand-Alone Gang Programmer 879 

GDX Driver Software 95 

481 8748 Family Socket Adaptor 98 

511 8751 Socket Adaptor 174 

755 8755 Socket Adaptor 135 

CABLE RS-232 Cable (specify gender) 30 

HEXTRAN Universal HEX File Con- 
verter — Convert assembler output to 
other formats for downloading to de- 
velopment systems and target boards. 
Also useful for examining object file, 
changing load addresses, extracting parts 
of files. Converts to and from Intel, 
Motorola, MOS, RCA, Fairchild, Tek- 
tronix, TI, Binary and HEX/ASCII Dump 
formats. For CP/M, CP/M-86, MSDOS, 
PCDOS $250 

Ask about UNIX. 



68000 CROSS-ASSEMBLER — With 
exhaustive field testing completed, our 
68000 assembler is available for imme- 
diate shipment. XMAC68K supports 
Motorola standard assembly language for 
the 68000 and 68010. Macros, cross- 
reference, structured assembly statements, 
instruction optimization and more. Linker 
and librarian included. Comprehensive, 
well- written manual. 

To find out more, call us toll-free. 

1-800-448-8500 

(in the U.S. Except Alaska and Hawaii) 

VISA and Mastercard accepted. All popular disc formats now available 
•please specily. Prices donol include shippinyand handling -■ call for exact 
quoies. OF-M INQUIRIES INVITED. 

•Trademark of Distal Research "Trademark of Microsofi 



AVOCET T^ 
SYSTEMS INC, 



Sales and Development: 

10 Summer Street 

P.O. Box 490, Dept. 485-B 

Rockport, Maine 04856 

(207) 236-9055 Telex: 467210 AVOCET CI 

Corporate Offices: 
804 South State Street 
Dover, Delaware 19901 



Inquiry 3 7 



APRIL 1985 -BYTE 173 



Inquiry 257 




Wiyu/AiTfoR 

ANSWERS f ROM yOUR 

ibivi pc/at/xt 

NOW THERE'S 

MEGA-MATH 



Engineers, scientists and statisticians 
are discovering the time saving 
capability of Mega Math. A library of 
over 40 assembly language sub- 
routines for fast numeric calculations, 
up to 8 times faster! 

Routines use the 8087 or 80287 
coprocessor for optimum 
performance. 

Mega Math library includes: 

Matrix Operations 

Vector Operations 

Vector Scalar Operations 

Statistical Operations 

Fast Fourier Transform 

Convolution 

Solution of Linear Equations 

Transcendental Functions 

Get Mega Math capability 
for 



$99 



oo 



ELECTRONICS LTD. 

(403) 250-1437 

Bay 1, 4001 A- 19 Street N.E. 
Calgary, Alberta Canada T2E 6X8 

TM - MEGA MATH IS A TRADEMARK OF 
MICRAY ELECTRONICS LTD. 



LISP TUTOR 



Listing 2: The dialogue involved in defining the function fact, which computes 
the factorial of the number given. 



Define the function fact. It takes a number argument, n, and computes the factorial 
of n, which is the result of multiplying n x n-1 x n-2 ... x 1. For instance, 
(fact 3) = 3 x 2 x 1 = 6. By definition, the factorial of is 1. 

1. (defun fact (n) 

(cond ((equal) < ACTION >) 
<RECURSIVECASE>)) 

I assume that you are trying to test if the number argument is equal to the 
number zero. There is a special function for testing equivalence to zero. Try to 
use that function instead of equal. 

What code can you write to test if the condition for terminating case is true? Try 
writing a predicate. 

2. (defun fact (n) 

(cond ((zero <ACTION>) 
<RECURSIVECASE>)) 

Did you mean zerop (y or n)? y 

3. (defun fact (n) 

(cond ((zerop n) 1) 
<RECURSIVECASE>)) 

Is the value of fact in the recursive cases calculated by: 
PRESS: IF YOU WANT TO: 

1 Calling fact recursively with n. 

2 Multiplying n by fact of n minus 1. 

3 Getting 12... n and then multiplying the results. 

4 Have the tutor choose. 

Menu choice: 3 

That is a reasonable way to think of doing factorials but it is not a plan for a 
recursive function. Since you seem to be having trouble with the recursive cases 
let us work through some examples and figure out the conditions and actions 
for each of these cases. 

The recursive relationship is the relationship between fact called with n and fact 

called with: 

PRESS: 

1 

2 

3 

4 



IF YOU WANT TO: 
n minus 1 
n equal to 
n plus 1 
Have the tutor choose. 



Menu choice: 1 

We will consider some concrete examples. We will characterize the recursive 
relationship between fact called with 1 and fact called with 0. 

What is the value of (fact 1)? 
Answer: 1 

What is the value of (fact 0)? 
Answer: 1 

EXAMPLES 
fact (n) fact (n - 1) 

A. (fact 1) = 1 (fact 0) = 1 

We will consider some more concrete examples. We will characterize the recur- 
sive relationship between fact called with 3 and fact called with 2. 

What is the value of (fact 3)? 
Answer: 6 



[continued) 



174 BYTE • APRIL 1985 



LISP TUTOR 



What is the value of (fact 2)? 
Answer: 2 

EXAMPLES 
fact (n) fact (n - 1) 

A. (fact 1) = 1 (fact 0) = 1 

B. (fact 3) = 6 (fact 2) = 2 

Since there is only one recursive case characterized by the examples you have 
just worked out, the condition in this case can be just coded as T. We will focus 
on characterizing the action in this case. 

In examples A and B what do you have to do to get the result of fact called 

with n? 

PRESS: IF YOU WANT TO: 

1 Multiply n by one less than n. 

2 Multiply n by fact of one less than n. 

3 Add n to the result of fact called with one less than n. 

4 Have the tutor choose. 

Menu choice: 2 

We have now worked through a series of examples that illustrate the recursive 
relation. We will now return to the goal of trying to produce LISP code that 
specifies the recursive relation. 

4. (defun fact (n) 

(cond ((zerop n) 1) 
(t (fact ))) 

You will have to use fact at some point but right now you want to multiply. 

5. (defun fact (n) 

(cond ((zerop n) 1) 
(t (times <NUM> <NUM2>)))) 

What do you want to do first? 
PRESS: IF YOU WANT TO: 

1 Write code to get the number argument. 

2 Write code to get the recursive part. 

Menu choice: 1 

6. (defun fact (n) 

(cond ((zerop n) 1) 
(t (times n (fact n))))) 

You cannot just code n at this point. What you want to do is subtract one from 
n. 

7. (defun fact (n) 

(cond ((zerop n) 1) 
(t (times n (fact (difference )))))) 

difference would work in this case but it is more appropriate to use the function 
subl when you are subtracting 1 from a number. 

8. (defun fact (n) 

(cond ((zerop n) 1) 
(t (times n (fact (subl n)))))) 



tutor is still best the computer tutor 
not that far behind (and constantly im- 
proving), and the traditional on-your- 
own condition much worse. 

Today and Tomorrow 

Currently we get satisfactory perfor- 
mance of the tutor on a VAX 725 with 



3 megabytes of memory devoted to 
a single student. Our planned op- 
timizations should enable it to handle 
a pair of students simultaneously run- 
ning on the same machine. These im- 
plementations are cost-effective in ex- 
pensive private schools like CMU or 
in industry; however, they are clearly 



out of range for the general public. 
The amount of computational power 
required is considerable. Even in 
future, more efficient implementa- 
tions we estimate a minimum of 1 
megabyte of memory will be neces- 
sary to tutor one student on one 
machine. By the late 1980s the com- 
putational power to deliver such in- 
struction should be more generally 
available. For instance, in conjunction 
with IBM, CMU is planning to have on 
campus by 1986 a personal computer 
with 1 megabyte of memory capable 
of 1 million instructions per second. 
Such a machine will be more than 
adequate to implement the LISP tutor. 
These technological trends en- 
courage optimism about the future of 
intelligent tutoring efforts, of which 
the LISP tutor is one. We hope that, 
with continued research in domains 
such as high-school mathematics and 
college-level programming, we will 
soon establish the conceptual foun- 
dations to use the computational 
power that will be available. The pros- 
pect is great of providing every stu- 
dent with the educational benefits of 
a private human tutor. When this hap- 
pens, the consequences for American 
education will be nothing short of 
revolutionary. ■ 

ACKNOWLEDGMENT 
This research is supported by Office of 
Naval Research under Contract No. 
N0001 4-84-0064. We would like to 
acknowledge the considerable contribu- 
tions of Robert Farrell. Elliot Jaffe, Beth 
Marvel, and Peter Pirolli to the research 
on the LISP tutor. 

REFERENCES 

1. Bloom, B S. "The 2 Sigma Problem: The 
Search for Methods of Group Instruction 
as Effective as One-to-One Tutoring." 
Educational Researcher, 13, 1984, page 3. 

2. Sleeman, D., and j. S. Brown, eds. Intel- 
ligent lUtoring Systems. New York: Academic 
Press. 1982. 

3. Anderson, j. R., R. Farrell. and R. Sauers. 
"Learning to Program in LISP" Cognitive 
Science, 8. 1984, page 87. 

4. Sauers. R.. and R. Farrell. GRAPES User's 
Manual Technical Report ONR-82-3. Pitts- 
burgh: Carnegie-Mellon University, 1982. 

5. Carroll, j. M. "Minimalist Training." 
Datamation, November 1984. page 12 5. 



APRIL 1985 • BYTE 175 



WE'LL ALWAYS 
BE RIGHT 

WHERE YOU 
WANT US. 

Every 7 days we open a new hotel in a place you need to be 





s the world's hotel leader, we're creating 
more hotels in more of the places you want. . . in 
cities and towns, near airports, 
business centers and resorts. . . with 

more than 50 Holiday Inn* hotels 

opening this year in the 

most convenient locations. 

51700 Holiday Inn hotels, built 
right where you need them. . . in 
exciting resorts and on secluded beaches, 
\ near convention facilities, in quiet 



MH^. ^^fel^^^ 




^JJIOBR^p^ 


££S 




1 1 ii |j| 


. I 1 1 





\\ ' countrysides and major capitals all around 
the world. 

We're building hotels in the best locations, 
making Holiday Inn "a better place to be." SM 
Business travelers agree: when naming their 
first choice in lodging, they choose Holiday Inn 
hotels number one overall competitors. Which 
makes 1-800-HOLIDAY the number 
to call for all your travel 
reservations. 




HOLIDAY INN! A BETTER PLACE TO BE 



APRIL 1985 'BYTE 177 



MH 






EH 

^1 



■^ 



Now your IBM PC 
and AT can reac' 




■ 
■ 



I 



KB 




»*'V *-■*>* 



TfcOM-BftKK 



Ik «0ll-K8KB is a mtlitiMui aw Text kifcr * fetiul Orate* Into 
<0d). 

It etsts a fncliwi if tie price if ship u*iter s»stwi. It mis tie aruM 
■irJ wl tntsUtes it Ut* a eltetmit sijwl tifiih if i*i« mwsei 
few Itiki lot* dost «**iters ai mf* mctssiK. r 
t*4i«s r#tgfi«3 tf alHals mate! iiU is thunteJ. 

■ -ick b»» fox ta wt.ttm the OHI-HiKl iftti pir »en canto 
SfstM ai Hto the screen vitt as little effirt is it tabs ti rtU *T« nicJt 



liM 238 j«js «m sax mr 






H 

V 




With the Oberon OMNI-READER™ — 
the first optical character reader 
designed and priced for small computers. 

Now you can transfer material directly 
from the typed page to the screen of your 
computer, without ever touching the 
keyboard — using specially designed 
interface software that allows input directly 
into your spreadsheet, database and word 
processing applications program. 

And because the OMNI-READER uses a 
standard RS232 serial port hookup, it interfaces 
easily with your computer. 

The technology is revolutionary. But what is 
most revolutionary is the price — under $500. IBM interface 
software, $50. 

Find out more about the Oberon OMNI- 
READER. Dial 800-2-OBERON. In Texas, (214) 446-9567. 

IBM is a registered trademark of Internalional Business Machines. Inquiry 286 



OBERSN 



INTERNATIONAL 



ARTIFICIAL INTELLIGENCE 



PROUST 



by W. Lewis Johnson and Elliot Soloway 



PROUST (Program Understander for 
Students) is a knowledge-based sys- 
tem that finds nonsyntactic bugs in 
Pascal programs written by novice 
programmers. When students com- 
pile a program successfully PROUST 
is automatically invoked to analyze it. 
PROUST reports any bugs that are in 
the program to the student. 

PROUST is not merely a tool that 
helps programmers find bugs, nor is 
it confined to a narrow class of bugs, 
such as uninitialized variables. It is 
designed to find every bug in most 
beginners' programs. PROUST is cur- 
rently capable of correctly identifying 
all of the bugs in over 70 percent of 
the programs that students write 
when we assign them moderately 
complex programming problems. 
When PROUST finds a bug, it does 
not simply point to the lines of code 
that are wrong; instead, it determines 
how the bug can be corrected and 
suggests why the bug arose in the first 
place. Our aim is to build an instruc- 
tional system around PROUST that 
assigns programming problems to 
students, reads their work, and gives 
them helpful suggestions. 

In designing PROUST we found it 
necessary to deal directly with the 



An automatic debugger 
for Pascal programs 

variability of bugs in beginners' pro- 
grams. If a programming problem is 
assigned to a class of 200, the 
students will write 200 different pro- 
grams (assuming that they do not 
cheat). There is variability both in their 
programs' designs and bugs. Some 
bugs, such as missing variable ini- 
tializations, are accidental omissions 
that can be easily recognized and cor- 
rected. Other bugs result when the 
programmer fails to reason through 
the interactions between com- 
ponents. In isolation, each piece of 
the program may appear correct, but 
when combined, the program doesn't 
work. Still other bugs result from 
misconceptions about programming. 
The code may appear correct to the 
programmer, but it doesn't do what 
he or she expects, for reasons he or 
she does not understand. Bugs result- 
ing from misconceptions are the most 
serious; students stand to benefit the 
most from having such problems 
pointed out to them. 

If a debugging system is to cope 
with the various types of errors that 
programmers make, it must under- 
stand what the programmer is trying 
to do. Debugging systems usually 
don't concern themselves with what 



the program is supposed to do, they 
only analyze what the program actual- 
ly does (see references 1,2, and 3). 
Figuring out how a program is sup- 
posed to work is not easy; to do it a 
debugger requires information about 
the programming problem and knowl- 
edge about how to write programs. 
Nevertheless, identifying the program- 
mer's intentions is worth the effort 
because this knowledge makes it 
possible to identify more bugs, as well 
as to understand their causes. 
lb show how knowledge of the pro- 

[continued) 
W. lewis }ohnson (POB 2158, Yale Station, 
New Haven, CT 06520) is a research 
associate at Yale. He has a B.A. from 
Princeton University and a PhD. from Yale 
University. His interests are artificial in- 
telligence, software engineering, and computer- 
aided instruction. Dr. ]ohnson has been 
pursuing research in artificial intelligence at 
Yale since 1978. 

Elliot Soloway (Department of Computer 
Science. Yale University. New Haven, CT 
06520) is an assistant professor at Yale. He 
has a B.A. in philosophy and a Ph.D. in com- 
puter science from the University of 
Massachusetts at Amherst. Dr. Soloway 
heads a group at Yale that is exploring the 
cognitive underpinnings of programming. 



APRIL 1985 'BYTE 179 



PROUST 



grammer's intentions assists debug- 
ging, we will present two examples of 
"buggy" programs and discuss why 
alternative approaches to automatic 
debugging fail to identify such bugs. 
Then we will describe how PROUST 
analyzes such programs. Finally, we 
will present some statistics showing 
PROUST'S performance on large 
numbers of students' solutions to a 
typical assignment in an introductory 
programming class. This will help sup- 
port our claim that PROUST'S ap- 
proach is adequate for the majority 
of novice programmers' programs. 

Examples of Program Bugs 

Here is a simple programming prob- 
lem called the Averaging Problem: 



Write a program that reads in a se- 
quence of positive numbers, stpp- 
ping when 99999 is read. Compute 
the average of these numbers. Do 
not include the 99999 in the aver- 
age. Be sure to reject any input that 
is not positive. 

The student's program must compute 
the average of a series of positive 
numbers. It must ensure that the in- 
put to the program is in fact positive. 
The input terminates when a specific 
value— 99999— is read. Values such as 
this, which signal the end of input, are 
called sentinel values. 

Figure la shows a sample solution 
to the Averaging Problem. This pro- 
gram works except for the following 



(a) 

1 PROGRAM Average( Input, Output ); 

2 VAR Sum, Count, Val, Avg: REAL; 

3 BEGIN 

4 Sum : = 0; 

5 Count : = 0; 

6 Writeln( 'Enter Value:' ); 

7 Read( Val ); 

8 WHILE Val< >99999 DO 

9 BEGIN 

10 WHILE Val< = DO 

11 BEGIN 

12 Writeln( 'Invalid entry, reenter' ); 

13 Read(Val); 

14 END; 

15 Sum := Sum + Val; 

16 Count := Count+1; 

17 Writeln( 'Enter value:' ); 

18 Read(Val); 

19 END; 

20 IFCount>0THEN 

21 Writeln( 'No data entered' ) 

22 ELSE BEGIN 

23 Avg : = Sum/Count; 

24 Writeln( 'The average is/Avg ); 

25 END; 

26 END. 



(b) 

PROUST's output: 

You're missing a sentinel test. If a sentinel value is input immediately following a 
nonpositive value, your program will treat it as valid data. 

To see this, try the following data in your program: 
5 -5 99999 



Figure I : (a) One novice programmer's attempt at implementing the Averaging 
Problem, (b) PROUST explains the bug lurking in the program in concise English 
sentences and even offers data illustrating the error. 



bug: if you type 99999 immediately 
after typing a nonpositive value, the 
program will continue to prompt for 
data after the 99999 is read. When 
the program finally does terminate, 
the average will be incorrect. For ex- 
ample, suppose that you input 5,-5, 
99999. Instead of terminating when 
the 99999 is read, the program re- 
quests another input. If the user then 
entered another 99999, the program 
would not print the average as 5, but 
instead would print (5+99999)/2, or 
50002. 

The program interprets 99999 as 
data when the sequence 5, -5, 
99999 is read because when the pro- 
gram reads the -5, it enters the input- 
validation loop, which starts with line 
10, WHILE Val < - DO. This loop 
is intended to iterate until a positive 
value is typed in; 99999 is positive, 
so when the 99999 is read, control 
leaves the input-validation loop. How- 
ever, the program was written with the 
assumption that when the input- 
validation loop is exited, the current 
value of Val is valid input data. In this 
case. Val is not valid data; it is 99999, 
the sentinel value. The loop never- 
theless processes 99999 as if it were 
data, lb guard against this case, there 
should be a test for the sentinel after 
the input-validation loop. 

Figure lb is PROUST's output de- 
scribing the missing sentinel-test bug. 
The error is described in two ways: 
First it is described in English; then 
PROUST generates an example of 
data that causes the program to fail. 

Now look at the program in figure 
2a. This is another solution to the 
Averaging Problem, and the bug in 
this program is also fairly obscure. If 
you type a positive value followed by 
a negative value, the negative value 
will be included in the average. Thus 
if you type -2,2, 99999, the average 
will be 2, but if you type 2, -2, 
99999, the average will be 0. 

Unlike the example in listing la. the 
programmer has not left out the sen- 
tinel test but has written the test in the 
form of a WHILE statement instead 
of an IF statement. The student prob- 
ably has a misconception about the 
distinction between the two state- 



180 B YTE • APRIL 1985 



PROUST 



merits and does not understand how 
the control flow in a WHILE loop 
works. As long as the body of the 
loop is straight-line code, the student 
has no problem. However, if the body 
of the loop contains tests, the student 
thinks that the tests should be written 
as WHILE statements to ensure that 
they repeat when the body of the 
loop does. We will refer to this mis- 
conception henceforth as the WHILE- 
for-IF misconception. PROUST'S out- 
put for this example, shown in figure 
2 b, takes the misconception into ac- 
count and explains it to the student. 

The bugs in figures la and 2a illus- 
trate the following points. First, bugs 
frequently cannot be detected if you 
don't know what the program is sup- 
posed to do. Both of the programs 
shown run no matter what input is 
read; to determine that there is a bug, 
you must recognize that the programs 
output different results than they 
should. Bugs such as these are not 
unusual; the missing sentinel-test bug 
occurs in 18 percent of novice pro- 
grammers' solutions to the Averaging 
Problem. 

Second, novice programmers need 
help identifying such bugs. These 
bugs cause the programs to fail only 
after unusual inputs— ones that novice 
programmers are unlikely to test. In 
the case of the WHILE-for-IF miscon- 
ception, even if the programmer tests 
the case in question, he or she will 
probably not understand why the pro- 
gram fails because he or she expects 
the WHILE statement to perform a 
different function than it actually 
does. 

Alternatives to 
Intention-based Debugging 

To support our claim that debugging 
requires knowledge of the program- 
mer's intentions, we will examine the 
principal alternatives to intention- 
based debugging and show why they 
fall short. The methods we have con- 
sidered are analysis of I/O (input/out- 
put) behavior, analysis of data flow, 
and recognition of patterns of buggy 
code. 

Debugging by analyzing I/O be- 
havior involves determining when the 



(a) 

1 PROGRAM Average( Input, Output ); 

2 VAR Sum, Count, Val T Avg: REAL; 

3 BEGIN 

4 Sum : = 0; 

5 Count : = 0; 

6 Writeln( 'Enter value:' ); 

7 Read( Val ); 

8 WHILE Valo 99999 DO 

9 BEGIN 

10 WHILE Val<=0 DO 

11 BEGIN 

12 Writeln( Invalid entry, reenter' ); 

13 Read( Val ); 

14 END; 

15 WHILE Val<>99999 DO 

16 BEGIN 

17 Sum := Sum + Val; 

18 Count := Count +1; 

19 Writeln( 'Enter value:' ); 

20 Read( Val ); 

21 END; 

22 END; 

23 IF Count = then 

24 Writeln( 'No data entered' ) 

25 ELSE BEGIN 

26 Avg : = Sum/Count; 

27 Writeln( The average is,Avg ); 

28 END; 

29 END. 

(b) 

PROUST'S output: 

You are using a WHILE statement at line 15 where you should have used an IF 
statement. You probably want the code starting at line 15 to execute once each 
time through the loop; your code will make it execute many times. 

The statement in question is: 
WHILE Val< >99999 DO . . . 



Figure 2: (a) Another novice programmer's attempt at implementing the Averaging 
Problem, (b) PROUST once again explains what the problem with the program is, what 
the programmer wanted to do. and what he actually did. 



output of the program is incorrect and 
suggesting bugs that might have 
caused the faulty behavior (see refer- 
ence 2). This approach treats debug- 
ging as similar to medical diagnosis 
(see reference 4). The faulty behavior 
can be thought of as the symptoms 
of the program, and the bugs can be 
thought of as the diseases. There are 
two problems with this approach: A 
program's symptoms cannot always 
be determined, and these symptoms 
cannot always be related to the bugs. 
The bugs in the programs in figures 
la and 2a affect the output of the pro- 
gram only occasionally; recognizing 



when this happens requires knowl- 
edge about what the output should 
look like. Since the WHILE-for-IF ex- 
ample fails to test the input for validi- 
ty after the first positive value is read, 
it appears that this program is miss- 
ing an input-validation test. It is only 
after inspecting the code that it 
becomes clear that the bug is not in 
the input-validation test but in the sen- 
tinel test. 

Another debugging approach you 
might try is data-flow analysis (see 
reference 1). This is the approach 
many error-checking compilers use. 

[continued] 



APRIL 1985 -BYTE 181 



PROUST 



Data-flow analysis checks for clear 
anomalies in the pattern of data 
definition and for use of data in a pro- 
gram. It can determine when a vari- 
able is defined and never used or 
when a variable is never defined. 
However, if there are no anomalies in 
data flow, data-flow analysis will not 
detect any bugs. Neither example in 
the preceding section has data-flow 
anomalies, so this method would not 
detect the bugs. 

You might also try analyzing the 
structure of the program itself to see 
whether it suggests the presence of 
bugs. You could build a library of 
templates for common bugs, such as 
missing sentinel tests or WHILE 
statements in place of IF statements, 
and then match these templates 
against the program to identify the 
bugs. The problem with this approach 
is that you have no way of knowing 
where to match the bug templates in 
the program. For example, the 
WHILE-for-IF example has three dif- 
ferent WHILE loops. How could you 
tell which WHILE loop really should 
be an IF statement or if any of them 
should be an IF statement? You could 
try to make the bug template more 
specific by making it apply only when 
there are two loops with the same exit 
test, one inside the other. But that 
would make the template too specific; 
it would not apply to other cases 
where WHILE statements appear in- 
stead of IF statements. 

All of these approaches to debug- 
ging attempt to identify bugs without 
any understanding of what the pro- 
gram is supposed to do, and any such 
approach does little more than make 
guesses as to what bug is involved. In 
order to do better, a debugging sys- 
tem has to be able to infer the pro- 
grammer's intentions and relate them 
to the code. 

PROUST'S Approach 

PROUST is written in T, a dialect of 
LISP. The full system contains roughly 
1 5,000 lines of LISP code and runs on 
a VAX-11/7 50. A stripped-down ver- 
sion called Micro-PROUST has been 
developed in conjunction with 
Courseware Inc., of San Diego, Califor- 



MlCRO- 

PROUST FOR 

THE IBM PC 

Micro-PROUST is a subset of the 
larger implementation of 
PROUST. It is capable of dealing with 
a limited range of novice programs and 
is currently set up to handle only those 
example solutions to the Averaging 
and Rainfall Problems provided with it. 
Micro-PROUST runs in Gold Hill Com- 
puters Inc. Golden Common LISP on 
an IBM Personal Computer with 51 2K 
bytes of memory. The source code and 
example programs are available for 
downloading from BYTEnet Listings. 
The telephone number is (603) 
924-9820. The file PRSTREAD.ME con- 
tains directions on how to run Micro- 
PROUST. 



nia (see the text box "Micro-PROUST 
for the IBM PC" above for more infor- 
mation). Micro-PROUST is capable of 
recognizing the kinds of bugs that are 
described in this article; however, 
there are a variety of tricky bugs that 
PROUST can identify but Micro- 
PROUST cannot. (If you are interested 
in PROUST'S full diagnostic capabili- 
ties, consult reference 3.) 

PROUST'S analysis of programs is 
based on knowledge of the program- 
ming problem. Students may solve 
the problem in a variety of ways and 
their programs may have a variety of 
bugs, but they are all trying to solve 
the same problem. Knowledge of the 
problem makes the variability of 
novice solutions more manageable. It 
also provides important information 
about the programmer's intentions. 

To provide PROUST with descrip- 
tions of the programming problems, 
we devised a problem-description 
language. We described each problem 
in this language and provided 
PROUST with a library of the descrip- 
tions. Each problem description in 
PROUST'S problem-description lan- 
guage is a paraphrase of the English- 
language problem statement that we 



hand out to students. 

To understand the students' pro- 
grams, PROUST also needs to know 
how to solve the problem. Solutions 
to a given programming problem may 
be implemented in a variety of dif- 
ferent ways. Suppose that there was 
only one way to test input for validity 
in a Pascal program, namely, to insert 
a WHILE loop at the top of the main 
loop, such as in figures la and 2a. 
Once PROUST knew that a program 
must validate input, it would know to 
look for such a loop, as well as for the 
sentinel test that must follow. How- 
ever, there are several ways of 
validating input. Listing 1 shows a 
loop that tests input in a different way. 
Instead of there being one input 
validation loop, there are two; one is 
at the bottom of the loop and the 
other precedes the loop. No addi- 
tional sentinel test is required when 
this method is used, because, as soon 
as input is validated, control flows to 
the main exit test of the WHILE loop. 
Therefore, without knowing what 
method the programmer is using for 
validating input, PROUST cannot tell 
whether to look for a sentinel test 
within the body of the loop. In figure 
I a it is an error not to have such a sen- 
tinel test, but in listing 1 it is not. 
PROUST needs knowledge about pro- 
gramming so that it can understand 
how each student designed and im- 
plemented his or her solution. Once 
it understands the programmer's in- 
tentions, it can then use knowledge 
about common bugs to identify them 
in the student's program. 

PROUST analyzes programs by syn- 
thesis. When PROUST examines a 
program, it looks up the correspond- 
ing problem description in its library. 
It makes hypotheses about the 
methods programmers may use to 
satisfy each requirement in the prob- 
lem description. Each hypothesis is a 
possible correct implementation of 
the corresponding requirement. If 
one of these hypotheses fits the stu- 
dent's code, then PROUST infers that 
the requirement is implemented cor- 
rectly. If PROUST'S hypotheses do not 
fit the student's program, then 
PROUST checks its database of com- 



182 BYTE • APRIL 1985 



PROUST 



mon bugs to see if it can explain the 
discrepancies. 

PROUST'S Problem 
Descriptions 

Problem descriptions in PROUST con- 
sist of programming goals and sets of 
data objects. Programming goals are 
the principal requirements that must 
be satisfied; sets of data objects are 
the data that the program must 
manipulate. 

The first step in translating an 
English-language problem statement 
into PROUST'S problem-description 
language is to make the various goals 
that are mentioned in the problem 
statement explicit. Recall that the text 
of the Averaging Problem is the 
following: 

Write a program that reads in a se- 
quence of positive numbers, stop- 
ping when 99999 is read. Compute 
the average of these numbers. Do 
not include the 99999 in the 
average. Be sure to reject any in- 
put that is not positive. 

Solutions to this problem operate on 
a sequence of input data; let us call 
this sequence New. The following 
goals can be extracted from the prob- 
lem statement: 

• Read successive values of New, 
stopping when a sentinel value, 
99999, is read. 

• Make sure that the condition New 
< = is never true. 

• Compute the average of New. 

• Output the average of New. 

We must now take these goals and 
use them to generate a problem 
description for PROUST. Each data 
object that the goals refer to is named 
and declared. Each goal extracted 
from the problem statement is re- 
corded in the problem description. 
The resulting problem description is 
shown in figure 3. 

Like all the data structures that we 
discuss in this article, problem 
descriptions are in list notation and 
every statement and expression is 
enclosed in parentheses. The name of 
the program is indicated with a 
Define-Program statement. Objects 



Listing I : Yet another way to 
implement the input validation for the 
Averaging Problem. 



Read( Val ); 
WHILE Val<=0 DO 
BEGIN 
Writeln( Invalid entry, reenter' ); 
Read( Val ); 
END; 
WHILE Va!<>99999 DO 
BEGIN 
Sum := Sum+Val; 
Count := Count+1; 
Writeln( 'Enter value:' ); 
Read(. Val ); 
WHILE Val<=0 DO 
BEGIN 
Writeln( Invalid entry, reenter' ); 
Read( Val ); 
END; 
END; 



are named using Define-Object state- 
ments. Goals are indicated using 
Define-Goal statements. 

Object names are preceded by 
question marks. There are two objects 
defined in the Averaging Problem 
description, ?Sentinel and ?New The 
question-mark notation is used fre- 
quently in artificial-intelligence (AI) 
programs; it indicates that the vari- 
able is not a literal value but is a 
parameter that must be substituted 
when the data structure is used. For 
example, the input-data object ?New 
will be substituted with the name of 
the Pascal variable that the student 
uses for storing the input data. The 
object ?Sentinel has the value 99999; 
wherever ?Sentinel appears in the 
problem description it can be sub- 
stituted with 99999. 

Objects can be either constant- 
valued or variable-valued. In this ex- 
ample, ?Sentinel is a constant, with 
the value 99999, and ?New is a 
variable. In PROUST'S general prob- 
lem-description language objects can 
have a variety of properties asso- 
ciated with them; however, we will not 
use any such properties in this sim- 
ple example. 



Goal statements consist of a name 
of a type of goal, followed by a list of 
arguments. In the form (Average 
?New) for example, Average is a type 
of goal (to compute an average), and 
?New is the argument of the goal. 
This form requires that the program 
compute the average of ?New. 

Arguments to goal expressions can 
take a variety of forms. They can be 
objects, predicates, or even other goal 
expressions. In the expression (Input- 
Validation ?New (< = ?New 0)), one 
argument is an object (?New), and the 
other is a predicate ?New < = 0. In 
LISP, function names and operators 
precede their arguments, which is why 
the < = precedes the ?New and in 
the expression (< = ). If goals are 
nested, as in (Output (Average 
?New)), the outer goal refers to the 
value computed by the inner goal. 
Thus this goal requires that the pro- 
gram output the average of ?New. 

In this example PROUST'S problem 
descriptions are a reasonable approx- 
imation of the original English-lan- 
guage problem statements. These 
problem descriptions describe what 
the programs must do but not how 
they are supposed to do it. PROUST 
must analyze each individual program 
and determine how it is intended to 
satisfy the problem requirements. 

Programming Knowledge 

Programming knowledge in PROUST 
is frame-based (see reference 5). In 
frame-based systems knowledge is 
organized into frames, each of which 
corresponds to a particular concept 
that the system "knows" about. 
Frames are similar to records in rela- 
tional databases, although the opera- 
tions that can be performed on 
frames are somewhat different. 
Knowledge in frames is organized into 
slots, which function as record field 
names, and fillers, which are the 
values assigned to each slot. 

The two kinds of programming 
knowledge that we will consider here 
are goals and plans (other types of 
programming knowledge are dis- 
cussed in reference 6). Goals are 
problem requirements that appear in 

[continued] 



APRIL 1985 • BYTE 183 



PROUST 



problem descriptions. Plans are 
stereotypic methods for implement- 
ing goals. A large part of writing pro- 
grams consists of identifying goals 
that must be satisfied and selecting 
plans to implement these goals. 
Similarly, PROUST retrieves plans 
from its knowledge base for each goal 
referred to in the problem descrip- 
tion. It compares these plans to the 
student's program to determine which 
fits the program best. 

Figure 4 shows PROUST'S definition 
for the Sentinel-Controlled-lnput goal. 
The goal definition contains a series 
of slots: InstanceOf, Form, MainSeg- 
ment, etc., together with fillers for 
each of these slots: Read&Process, 



Main Loop:, ?New, etc. These slots 
serve various functions, only some of 
which we will discuss here. The most 
important slots are the I nstances and 
InstanceOf slots. The Instances slot 
lists the various plans in PROUST'S 
knowledge base for implementing this 
goal. This slot's filler is a list of five 
items, each of which is the name of 
a plan. The InstanceOf slot indicates 
the class to which this goal belongs. 
The goal class in this case is Read& 
Process, which is the class of all goals 
that involve reading a sequence of 
values and processing them. 

Figure 5 shows a plan, the Sentinel- 
Process-Read-While plan. This is one 
of the instances of the Sentinel- 



((Define-Program Average) 
(Define-Object ?New) 
(Define-Object ?Sentinel Value 99999) 
(Define-Goal (Sentinel-Controlled-lnput ?New ?Sentinel)) 
(Define-Goal (Input-Validation ?New (< = ?New 0))) 
(Define-Goal (Output (Average ?New)))) 



Figure 3: The Averaging Problem translated into PROUST's problem-description 
language. 



Figure 4: The definition of the goal Sentinel-Controlled-lnput in PROUST's 
problem-description language. 



(Goal-Definition Sentinel-Controlled-lnput 


InstanceOf 


Read&Process 


Form 


(Sentinel-Controlled-lnput ?lnput?Stbp) 


MainSegment 


MainLoop: 


MainVariable 


?New 


NamePhrase 


"sentinel-controlled loop" 


OuterControlPlan 


T 


Instances 


(Sentinel-Process-Read-While 




Sentinel-Read-Process-While 




Sentinel-Read-Process-Repeat 




Sentinel-Process-Read-Repeat 




Bogus-Counter-Controlled-Loop)) 



(Plan-Definition 


Sentinel-Process-Read-While 


Constants 


(?Stop) 


Variables 


(?lnput) 


Template 


((SUBGOAL (Input ?lnput)) 




(WHILE (< > ?lnput ?Stop) 




(BEGIN 
?* 




(SUBGOAL (Input ?lnput)))))) 



Figure 5: A plan for implementing the goal Sentinel-Controlled-lnput. 



Controlled-lnput goal. This plan is a 
simplified version of the one PROUST 
actually uses. Plans are also defined 
in terms of slots and fillers. The most 
important slot is the Template slot, 
which describes the form the Pascal 
code implementing this plan should 
take. Plan templates consist of Pascal 
statements, subgoals, and labels. The 
Pascal statements are written in list 
notation rather than ordinary Pascal 
syntax; for example, the form (WHILE 
( < > ?lnput ?Stop) . . .) in Pascal 
syntax would appear as WHILE Tin- 
put < > ?Stop DO .... Symbols 
that are preceded by question marks 
are pattern variables; these are sub- 
stituted when the plan is used. ?New 
is substituted by a Pascal variable con- 
taining the input data, and ?Stop is 
substituted by a constant, the sentinel 
value. The ?* statement is a "wild 
card" pattern that can be substituted 
by an arbitrary sequence of Pascal 
statements; this is just a placeholder 
in the plan. Subgoals are indicated by 
(SUBGOAL . . .) forms in the tem- 
plate; these are goals that must in turn 
be implemented using other plans. 

Matching Plans 

Let's look at how plans and goals are 
used to understand a program. The 
plan in listing 1 has been imple- 
mented correctly. You will see how 
PROUST hypothesizes a plan that the 
program might use and then matches 
this plan against the program. In this 
case the match succeeds because the 
plan is implemented correctly. In the 
next section we will examine what 
happens when plans fail to match 
because the student's code has bugs. 

The first step, before any analysis of 
goals and plans takes place, is to 
parse the student's Pascal program. 
This results in a parse tree. All subse- 
quent analysis of the program is per- 
formed on the parse tree rather than 
on the original program text. 

When PROUST analyzes a program, 
it selects goals from the problem 
description one at a time. Let's sup- 
pose that the goal that is selected first 
is (Sentinel-Controlled-lnput ?New 
?Sentinel). PROUST substitutes any 

{continued) 



184 BYTE • APRIL 1985 




Busy offices, take note: Our new letter-quality printer 
zips along at 40 characters per second and sells for only 
$995. Its 13" print line will handle your spreadsheets 
and every imaginable kind of correspondence — 
plus graphics! Quiet, too — less than 6# dbA. 
And the 3K buffer memory (expandable to 15K) 
lets you use your computer for other purposes 
while the JUKI is printing. Compatible with 
most computers. (You can even get an optional 
tractor feed and cut-sheet feeder for it!) Now 
you know why JUKI printers are humming in 

offices all over the world! 




■JUKI 

The worker. 

JUKI OFFICE MACHINE CORP. 



Inquiry 216 



EAST COAST: 

299 Market St. , Saddle Brook, N J 07662 
(800) 932-0590 

WEST COAST: 

23844 Hawthorne Blvd., Suite 101, Torrance, CA 90505 
(800) 325-6134 • (800) 435-6315 (California) 

APRIL 1985 • BYTE 185 



PROUST 



PROUST substitutes 
any objects whose 
values are already 
known into the 
goal expression. 



objects whose values are already 
known into the goal expression. At 
this point the only information avail- 
able about ?New and ?Sentinel is 
what appears in the problem descrip- 
tion. There the value of ?Sentinel is 
listed as 99999, but the value of ?New 
is not listed. Therefore the value of 
?Sentinel is substituted into the goal 
expression, but ?New is left un- 
changed. The resulting goal expres- 
sion is (Sentinel-Controlled-lnput 
?New 99999). 

PROUST must now retrieve from its 
programming knowledge base plans 
that could be used to implement the 
goal Sentinel-Controlled-lnput. It 
retrieves the filler of the Instances slot 
of the definition of Sentinel-Con- 
trolled-lnput shown in figure 4. This 



filler is a list of five items: Sentinel- 
Process-Read-While, Sentinel-Read- 
Process-While, Sentinel-Read- 
Process-Repeat, Sentinel-Process- 
Read-Repeat, and Bogus-Counter- 
Controlled-Loop. Each of these is the 
name of a plan. PROUST selects the 
first plan from the list, Sentinel- 
Process-Read-While. This will be 
PROUST'S initial hypothesis of how 
the program implements the goal 
Sentinel-Controlled-lnput 

Just as known values of objects were 
substituted into the goal expression 
(Sentinel-Controlled-lnput ?New 
?Sentinel), these same substitutions 
must now be performed on the 
selected plan, lb see what substitu- 
tions must be made, PROUST ex- 
amines the Form slot of the definition 
of Sentinel-Controlled-lnput, (Sentinel- 
Controlled-lnput ?lnput ?Stop). The 
Form slot indicates which pattern-vari- 
able names are used in the plans that 
implement the goal. By comparing 
the Form slot to the goal being 
analyzed, PROUST determines that 
each occurrence of ?lnput in the 
selected plan should be replaced by 
the value of ?New. Each occurrence 
of ?Stop should be replaced by the 
value of ?Sentinel or 99999. Because 
the value of ?New is not known, 



READ PLAN 

(Read Val) 

k ?New 






Student's program 

Writeln( 'Enter value:' ); 
Read(Val); «* 



J KSl 



Val 



WHILE Val <>99999 DO 
BEGIN <*- 



WHILE Val<=0 DO 
BEGIN . 
Writeln( 'Invalid entry, reenter' ); 
Read( Val ); 
END; 
Sum := Sum + Val; 
Count : = Count + 1 ; 
Writeln( 'Enter value:' ); 
Read(Val);^ READ PLAN 

END; 

(Read Val) 



Sentinel-Process-Read-While 

((SUBGOAL (Input ?lnput)) 
(WHILE (< > ?lnput 99999) 
(BEGIN 

?* 

(SUBGOAL (Input ?lnput))))) 



?New 



Figure 6: This shows how the Sentinel-Process-Read-While plan is matched 
against the program in figure l . 



PROUST simply replaces ?lnput with 
the variable name ?New. PROUST 
assumes that the process of match- 
ing the plan against the program will 
determine what the value of ?New is. 
Figure 6 shows how the Sentinel- 
Process-Read-While plan is matched 
against the program example in figure 
la. Matching starts with the WHILE 
loop. The pattern in the plan for the 
WHILE loop is (WHILE (< > ?New 
99999) . . .). There are two WHILE 
loops in this program: WHILE Val 

< > 99999 DO . . . and WHILE Val 

< = DO . . . . PROUST tries to 
match each pattern against each of 
these statements. (WHILE (<> 
?New 99999) . . .) matches WHILE 
Val < > 99999 DO . . . . provided 
that Val is substitued for ?New. 
(WHILE (<> ?New 99999) . . .) 
does not match WHILE Val <= DO 
. . . because the statement has a < = 
test instead of a < > test, and 
because it tests against instead of 
99999. Therefore PROUST selects 
WHILE Val <> 99999 DO ... as 
the match for the plan pattern. Since 
Val must be substituted for ?New so 
that the pattern matches, Val is 
recorded as the binding for ?New. 
Afterward, any component of the plan 
that has ?New in it will have Val sub- 
stituted for ?New. 

The next plan component that 
PROUST matches against the program 
is (BEGIN . . . ). There are several dif- 
ferent BEGIN statements in the pro- 
gram that could be matched against 
this pattern. However, in the plan tem- 
plate the (BEGIN . . .) pattern ap- 
pears inside of the WHILE pattern 
that was just matched. This means 
that the BEGIN statement that this 
pattern matches must be located in- 
side of the WHILE Val <> 99999 
DO . . . statement. Therefore, there 
is only one BEGIN statement that has 
an appropriate match. 

When PROUST tries to match the 
(SUBGOAL (Input ?New)) com- 
ponents, a different type of process- 
ing is required. These plan com- 
ponents are goals; to match them 
against the program, PROUST must 
go through the same plan-selection 

(continued) 



186 BYTE • APRIL 1985 




COMPUTERS 



IBM SYSTEM SPECIALS 

256K, 2 Drives SCall 

256K. 2 Drives, color graphics, printer 

adaptor &PGSHX-12 monitor $2499 

256K, 1 Drive & 10 MB Hard Disk SCall 

TWO USER SYSTEM (incl. 10 MB, Advanced 

Digital PC Bd & Terminal) S3859 

COLUMBIA 

MPC4220(256K, 2 Drives) $1899 

PROFESSIONAL (10MB, wftape backup) SCall 

VP 2220 (Portable w/256K) S1899 

COMPUPRO 10 (10 MB, Multi-user) SCall 




m 

CORONA PC-22 (256K, 2 Drives) SCall 

Portable PC-22 (256K, MS-DOS 2.0) SCall 

FUJITSU MICRO 16s (8086/Z8OA) $1995 

MORROW DESIGNS Pivot, MD2, MD3 

MD5, MD11 SCall 

NEC APC-III PACKAGES 

APC-III w/2 Dr, Wordstar Pro Pk, 2050 printer S2299 

above with 3550 printer ' $2859 

APC-III w/384K, Mulliplan, BPS Graphics 

and P313 Pinwriter (15" carriage) S2799 

APC-III w/1 Dr, 10 MB Hard Disk, Mono CRT S2159 

above with Color CRT S2379 

SANYO 

MBC 555-2 (8088. 2 DSDD, software) $1099 

MBC 555-2 (550-2 Plus 1 Add Drive 

Mailmerge, Spellstar & Intostar) SCall 

SEEQUA Chameleon/Plus (8088/Z80) SCall 

SWP Micro Computer Products 
CoPower-88 Board (8088 w/256K, 1 MB) 

For KAYPRO 2, 4 & 10 SCall 

TELEVIDEO 

1605/TPC-IJ (8088, 256K) SCall 

LEADING EDGE PC SCall 

ZENITH Z-151-52 (8088, 2 Dr, 320K RAM) SCall 

ZW 151-52 (1 Dr, 10 MB Hard Disk) SCall 



FOR IBM PC/XT/ AT & COMPAQ 



ADVANCED DIGITAL Multi User Bd (8086) . . SCall 
AST RESEARCH INC. 

ADVANTAGE!! (Multi Ftn Bd forAT) SCall 

MEGA PLUS II (64K, Ser&Clk) $279 

Six Pack Plus (64K, Ser/Par/Clk) $249 

MONO GRAPH PLUS Card SCall 

QUADRAM 

EXPANDED QUA0B0AR0 (S, P, Clock, Game) 

64K $249 384K $429 

QUA0 512+ (Serial Port, Maximum 512K) 

64K $229 256K $349 

QUA0C0L0R I (Video Board) $199 

HERCULES Graphics Board (720x384) ... $339 
Color Card (RGB, Composite. Parallel) .... $169 
INTEL 8087/80287 Math Co-Processor. . . . SCall 
KEYTRONIC Deluxe IBM Keyboard (5151). . . $199 
MA SYSTEMS PC Peacock (RGB & Composite, 

Parallel Port) $209 

MICROLOG Baby Blue II (Z80B. 64K. Parallel & 

Serial Ports, Clock/Calendar) $529 

ORCHID PC Turbo (80186 CPU, 8 MHz) . . . . SCall 

PANASONIC JA 551-2 (DSDD Thinline Drive) $119 

PARADISE SYSTEMS Multi-Display Card S295 

Modular Graphics Card S279 

Module A/B SCall 

PLANTRDNICSColorPlus SCall 

STB SYSTEMS Graphix Plus I) $319 

SuperRio w/64K $289 

TANDON TM 100-2 (DSDD Disk Drive) $149 

TEAC FD-55B (DSDD Thinline Drive) $125 

TECMAR Graphics Master (640x400 RGB) . . $489 

The Captain (w/ OK) $239 

jrCaptain (w/128K, parallel port) 1 S309 

TSENG LABS Ultra Pak $489 



GenTech 



I HARD DISK 






APPLE MACINTOSH HARD DISKS NOW AVAILABLE! 


CORVUS, DAVONG & TECMAR . . . CALL FOR PRICES! 


AMPEX 20 MB W/25 MB Tape Back-Up . . . SCall 


MICROSCIENCE Internal 10 MB System 




for IBM 


..... $679 


CORVUS 




Omnidrive (11 MB) 


SCall 


Transporter . , . $399 The Bank 


. . . $1779 


DATAMAC Trustor 10 


. . . $1129 


DAVONG 




DataSystem w/24 MB Tape Back-Up 


SCall 


IOMEGA Bernoulli Box/Bernoulli Plus 


... SCall 


MAYNARD ELECTRONICS 10/20/30 MB SCall 


PEGASUS-GREAT LAKES 




10 MB Internal For IBM 


.... $959 


23 MB External (w/ Controller) . . . 


.... SCall 


SYSGEN 




10/20 MB w/Tape Back-Up 


S2295/S2849 


Image/Qic-File 


S799/S1199 


TALLGRASS 




TG-5025 (25 MB w/60 MB Tape Back-Up) 


S2899 


TG-6180 (80 MB w/60 MB Tape Back-Up) 


$6399 


TECMAR 




Remov. Cartridge Winchester in PC (5 MB) $1479 


10 MB W/5 MB Cartridge in Chassis . . , 


$2459 


XCOMP 16 MB External (For IBM, Apple, 


Kaypro & Morrow Designs) . . , 


. . . $1749 


DOT MATRIX PRINTERS 




C-ITOH Prowriter 1 8510 AP 


$329 


Prowriter 2 1550 P (15", 120 cps) 


$569 


EPSON JX-80: Color Printer 


$585 


LQ-1500 $1109 RX-100... 


SCall 


RX-80/80 RT 


SCall FX-80/100. 


SCall 


1 L 


-M*^ 




' 


1 


CITIZEN 




MSP-10 $355 MSP-15 . . . 


S559 


MSP-20 $475 MSP-25 . . . 


S669 


MPI $printer/$X (Portable, 300 cps) 


.... SCall 


NEC 




P2/P3 Pinwriter (180 cps) 


S525/$735 


P2/P3 Color Pinwriters 


SCall 


OKIDATA 




Ask for NEW Apple Imagewriter Co 


mpatible 


ML 92 SCall ML 93 , 


. . , . SCall 


ML 84(P) .... SCall Pacemark 


. . . . SCall 


PANASONIC KX-P1091/1093 


, $299/$Call 


STAR MICRONICS 




Gemini 10X. . . . $249 Gemini 155 


( . . . . $349 


SD-10/15 SCall SG-10/15., 


SCall 


TEXAS INSTRUMENTS 




850/855/860/865 . 


SCall 


TOSHIBA 




P1340 $719 P1351... 


$1289 


LETTER QUALITY PRINTE 




ABATI LQ-20 (18 CPS, 15" Carriage) 


... $359 


AMDEK5040(40CPS) 


. . . $1299 


BROTHER/DYNAX 




HR-15XL (20 cps, Diablo compat.) 


S369 


HR-25/HR-35 


. . . . $Call/S869 


HEWLETT PACKARD Laser Printer. . . . 


SCall 


DIABLO 




620 API $779 630 ECS/IBf 


A $1779 


JUKI 6100 (17 CPS. Diablo Compat.) 


.... SCall 


6300 (40 CPS. Diablo Compat.. 3K Bui 


.) . . . SCall 


NEC 




ELF SCall 2030 


$659 


3550 SCall 8850 . . 


, . . $1879 


OLYMPIA Compacl RO/2 


$349/5419 


QUAORAM Quadjet (Ink Jet Printer) 


.... $759 


QUME Sprint 1140/1155 


S1299/S1479 


Letterpro 20 


SCall 


SILVER-REED EXP 500 (parallel or se 


ial) . . $369 


EXP 550 (p or s, 15" carriage) . . . 


... $449 


STAR MICRONICS Power Type (18 CP 


S) , . , $339 


TRANSTART120/T130 


. S409/S569 



■ 'iiKllli^.l 



NEW!! POLAROID PALETTE!! SCall 

AMOEK 0XY-100/Amplot II $599/5749 

ENTER COMPUTERS 

Sweet-P SCall Six-Shooter $785 

HOUSTON INSTRUMENTS 

PC-595/PC-695 New!! SCall 

OMP-40-2 .... $749 OMP-29 .... $1799 
OMP-41/42 . $2349 OMP-51/52. . . $3529 

0T-11 Digitizer (1-Button Cursor) $679 

OT-114 Digitizer (4-Button Cursor) $739 

PANASONIC VP-6801A $1449 

ROLAND DXY-101/800/880 $529/699/949 

STROBE Model 200/ Model 260 S519/S729 



AMDEK 

Video 300/300A/310A $135/145/165 

Color 300 $249 Color 500 $379 

Color 600 $429 Color 710 $579 

OYNAX Fortis FC10 (13" RGB) SCall 

MONITECH 12" Green/Amber . $80 

PRINCETON GRAPHICS HX-12 $469 

SR-12 (690x480) $609 

Max-12 (12" Amber. TTL) $179 

QUADRAM Amberchrome S155 

Quadchrome II $435 

ROLAND 

MB-121G .... $135 MB-122G $155 

CB-141 $269 CC-141 $559 




TAXAN 

Model 115 $119 Model 116 $129 

210 (380x262} $259 420 (640x262) $439 

ZENITH 

ZVM-123A $79 ZVM-122A $85 

ZVM-135 $439 ZVM-136 SCall 



TERMINALS 



ESPRIT 

Esprit I SCall Esprit II $479 

Esprit III SCall ESP-6310 $559 

QUME102/102A $469/$489 

103/108 (Green) S849/S519 

TELEVIDEO 914/924 $519/$675 

950/970 SCall 

Personal Terminal $419 

w/300 Baud Modem $528 




VISUAL 50/55/60 $559/$689/Call 

102/300 $Call 

WYSE 

WY-50 $519 WY-75 $609 

WY-100. ..... SCall WY-300 $819 

ZENITH 

Z-29 $649 Z-49 SCall 

ZTX-10 $329 ZTX-11 $389 



COMMUNICATIONS FOR IBM 



BLUE LYNX 3278 SCall 

DCA Irma/lrmaline/lrmaKey SCall 

IDEAcomm 3278 SCall 

ANCHOR 

Mark VI $179 Mark XII $249 

HAYES 

Smartmodem 300/1200 $199/$Call 

Smartmodem1200B w/SrnartCom II $399 

NOVATION 

Smart Cat Plus 300/1200 w/Mite $329 

PRENTICE POPCOM C100/X100 $289/$299 

PROMETHEUS Promodem 1200 SCall 

QUADRAM Ouadmode. h SCall 

TRANSEND PC Modem Card 1200 $419 

VEN-TEL 300/1200 Half Card $409 



SOFTWARE 



ASHTON-TATE dBase Ill/Framework SCall 

PRENTICE HALLVCNExecuVision SCall 

REAL WORLD MBSI Accounting SCall 

LOTUS 1-2-3/Symphony S319/S429 

MICROPRO WordStar 2000/Pro pack SCall 

MICRORIM R:Base 4000/Clout S285/$Call 

DEC.RESOURCES Chart/Signmaster S239/S185 

SAMNA Word ill $375 

SATELLITE SOFTWARE Word-Perfect SCall 

AUTOCAD Autocad SCall 

CENTRAL POINT Copy II PC/PLUS $29 

ALSCP/M Plus Card $299 

Smartermll (80 Column Card) $129 

AST RESEARCH INC. Multi I/O Card SCall 

DIGITAL RESEARCH CP/M Gold Card w/64K ..... $269 

FOURTH DIMENSION 16K RAM Card S55 

80-Column Card $55 

HAYES 

Micromodem He w/$martCom I $239 

Smarlmodem 300/1200 $199/SCall 

INTERACT. STRU. PKAS0 Universal $125 

MICROSOFT Premium Softcard (He) SCall 

Softcard II (for ll/lle) $339 

MICROTEK Oumpling-GX $69 

NOVATION 
J-Cat (Auto Orig/Answer. 300 Baud) $99 

Apple Cat II (300 Baud) $209 

212 Apple Cat II (1200 Baud) $389 

103/212 Smart Cat (1200 Baud) $389 

ORANGE MICRO Grappler* $109 

Buffered Grappler+ (16K) $169 

Grappler Interface for ImageWriter SCall 

PCPI Applicard 6 MHZ. $249 

RANA Elite l/ll/IH SCall 

TRANSEND ASI0 $125 

Modemcard w/Source $239 



MISCELLANEOUS 



RAM CHIPS 

64K SET SCall 256K SET ... . $Call 

DOUBLE-SIDED DISKETTES 

WABASH DataTech $20 

3M S30 Oysan $31 

Maxell $30 Verbatim $30 

PRINT BUFFERS 

QUADRAM Microfazer 
Parallel/Parallel 

16K . . $139 64K. . . $185 128K . . $239 
Serial/Serial, Serial/Parl. Parl/Serial 
8K. . . $145 16K. . . $155 64K . . $209 

INTERACTIVE STRUCT. ShuffleBuffer 32K . . . $269 

PRACTICAL PERIPHERALS Microbuffer 32K. . S2D9 

SWITCHBOXES 

CABLECO 3 Way Centronics SCall 

3 Way Serial SCall 

COMPUTER ACCESSORIES 

Data Directors (All Models) SCall 

SURGE PROTECTORS 

EPO/CURTIS All models SCall 

NETWORX Wire Tree/Wire Tree Plus. . S45/S60 
ULTIMA SF-600 $39 

EMERGENCY POWER SYSTEMS 

TrippLite BC200-10 (battery incl) $270 

TrippLite BC425-FC (425 Watts) $415 

SOLA ELECTRIC Mini UPS SCall 



CUSTOMER SERVICE 



401-781-0020 



ORDERS ONLY 



800-843-4302 

150 Broadway, Suite 2212, N.Y., NY 10038 

HOURS 9-8 EST/MON-SAT 

Money Order. Cashier's Ck. Personal Ot (2 Weeks To Clear), 

APO Orders Add 6% (minimum S7). Add 3% For Net Terms. 

All Returned Non-Defective Merchandise Are Subject To 

20% Restocking Charge. 

GenTech Reserves the Right to Change Advertised Prices. 



AMERICAN 

EXPftlSS. 




Inquiry 164 




The Silver Fox™ Trots 
through Lotus like 1,2,3 



The Silver Fox has always run hundreds 
of programs originally written for the IBM- 
PC. Now with its new compatible video 
board and GW Basic it runs the most popular 
and powerful software in microcomputing, 
including Lotus 1,2,3, dBASE II, Multiplan, 
the PFS series, and even Flight Simulator. 
Yetyou still get an incomparable combination 
of hardware and software, at a price that 
invites comparison. 



MORE HARDWARE 



Each Silver Fox comes with an 8088 CPU, 
256K of RAM, monochrome and color video, 
and a printer port all on a single board. Plus 
you get more than twice the storage of a 
standard PC, 1.6 Megabytes on dual 5 1/4" 
f loppys, and theFox will read and write to all 
popular PC formats. 

Standard equipment also includes a better 
keyboard, and a 12" high-resolution, green 
monochrome monitor, with a full 25x80 
column display. And although the Silver Fox 
doesn't have "compatible" expansion slots 
you can add serial ports, modems, plotters, 
printers, joysticks, and 8087 co-processor, 
and/or a hard disk. 

Because the Silver Fox is born on a totally 
automated line in Japan it is simply more 
reliable than PC's that are assembled by 
hand. So we back each Silver Fox with a one 
yearlimited warranty, four times the ind ustry 
standard. 



FREE SILVERWARE 



Were this not enough, each Silver Fox 
comes with the best free software bundle in 
the bus i eluding: 

MS-DOS2.il Wordstars^ FILEBASE 
HAGEN-DOS Easy Writer PC File III 
Color BASIC Mail Truck PD Disk 
GW BASIC Spell Datemate 

OS Tutor Games & CalcfStar 

Graphics 
If you didn't think your 

. $1397;;; 

could buy you this much computer, 
call our machine at 

1-800-FORAFOX 

leave your name and address at the beep and 

we'll rush you a brochure that will tell you 

how it can. To order call 

(602) 941-5856. 



ColorFox 



$1647 



The Silver Fox is sold exclusively by Scottedalc Systems 
Ltd., 817 N. Scottsdale Road #B, Scottsdale. AZ 85267. 
Trademarks: Silver Fox, HAGEN-DOS, Qwikdisc, Datemate, 
and Mailit;ScottsdaleSystems 1 Ad. WordStarand CalcStar, 
Micropro International, MS-DOS, Multiplan, Microsoft 
Corporation. FILEBASE. EWDP Software. Inc. dBASE 11, 
Ashton-Tate, IBM-PC. International Business Machines 
Corporation. Ordering: Telemarketing only, Silver Fox 
price is for cash, F.Q.B. Scottsdale, prices subject to change, 
product subject to limited supply. We accept purchase orders 
from Fortune 1000 companies and major universities with 
good credit- add 2% Visa. Mastercard add 3%, AZ residents 
add 6%. Returned merchandise subject to a 20% restocking 
fee Personal or company checks take up to 3 weeks to clear. 
No COD's or APO's. 



PROUST 



Since PROUST first 
generates a possible 
implementation and 
then matches it 
against the program, 
it is performing 
analysis by synthesis. 



process that it went through in select- 
ing the Sentinel-Process-Read-While 
plan. It first substitutes all pattern 
variables in the goal expression that 
have bindings. Since ?New has Val as 
a binding, the subgoal expression 
becomes (Input Val). PROUST then 
retrieves plans from the plan database 
that implements Input One such plan 
is the READ PLAN, which employs a 
Pascal Read statement to input the 
value. This plan matches the Read 
statements in the program. 

This example shows how PROUST 
analyzes programs by predicting the 
plans that might be used and then 
testing these predictions. By selecting 
from a range of different plans and 
subplans for each goal, PROUST is 
able to generate a variety of different 
ways of implementing each goal. 
Since PROUST first generates a pos- 
sible implementation and then 
matches it against the program, it is 
performing analysis by synthesis. In 
general, generating plan hypotheses 
and matching them against programs 
is rather more complex than the 
scenario presented here; for more in- 
formation, see reference 3. 

Identifying Bugs 

When the Sentinel-Process-Read- 
While plan was matched against the 
program in figure la, the plan 
matched exactly. Since there were no 
match errors, there must not have 
been any bugs in that particular plan. 
It is frequently the case however, that 
none of the plans that PROUST 



predicts matches the program. When 
this happens PROUST must look for 
bugs that account for the mismatches 
in one of the plans. In this section we 
will discuss one of these mismatches 
in connection with the WHILE-for-IF 
example in figure 2a and show how 
it leads to the discovery of a bug. 

The bug in the WHILE-for-IF exam- 
ple is discovered in processing the 
Input-Validation goal. One of the plans 
that PROUST suggests for implement- 
ing this goal is the so-called Bad In- 
put Loop Test plan. This plan consists 
of a WHILE statement that tests the 
input to see if it is out of range, an 
error message inside the WHILE loop, 
an Input subgoal that rereads the in- 
put if it is out of range, and a test to 
see if the exit condition for the main 
loop has been satisfied. 

Listing 2 illustrates a correct imple- 
mentation of this plan (solving the 
Averaging Problem). 

The Bad Input Loop Test plan 
matches the WHILE-for-IF example of 
figure 2 a in all but one respect: there 
is no test for the exit condition of the 
main loop, such as IF Val <> 99999 
THEN .... Where an IF statement 
is expected, a WHILE statement ap- 
pears instead. PROUST has thus en- 
countered a plan difference, i.e., a dif- 
ference between the expected plan 
and the code. When PROUST en- 
counters plan differences it does not 
give up on the plan; instead, it tries 
to find a way of interpreting the plan 
differences as bugs. 

In most cases plan differences are 
explained by means of bug rules. Each 
bug rule has a test part, which ex- 
amines the plan differences to see 
whether the rule is applicable, and an 
action part, which explains the plan 
differences. 

Figure 7 shows the bug rule that is 
invoked to explain the plan dif- 
ferences in the WHILE-for-IF example. 
The rule is written in slot-filler nota- 
tion; one set of slots constitutes the 
test part of the rule, and another set 
constitutes the action part. In the 
WHILE-for-IF rule the test part con- 
sists of a Statement-Type slot and an 
Error-Pattern slot. The Statement- 
Type slot indicates that the plan com- 



188 BYTE • APRIL 1985 



PROUST 



ponent that failed to match the pro- 
gram must be an IF statement. The 
Error-Pattern slot has the value 
(IF . WHILE); this indicates that a 
WHILE statement was found when an 
IF statement was expected. These test 
conditions are both met in the 
WHILE-for-IF example, so the action 
part of the rule is activated. The ac- 
tion part of this rule consists of a Bug 
slot; the filler of this slot is a descrip- 
tion of the bug associated with the 
plan difference. The bug in this 
case is a WHILE-for-IF confusion. 
PROUST'S bug analyses of student 
programs consist of bug descriptions 
such as this. When PROUST presents 
its findings to the student, it takes 
each bug description and generates 
an English-language translation for it 
and, if appropriate, generates data il- 
lustrating the presence of the bug. 

Test Results 

PROUST has been tested on large 
numbers of beginners' programs. We 
assigned a class of novice program- 
mers the Rainfall Problem (an elabora- 
tion of the Averaging Problem), which 
is shown in figure 8a. 

We modified the Pascal compiler 
our students were using so that it 
would save copies of every syntac- 
tically correct program that they com- 
piled. This allowed us to examine not 
only the final solution the students 
handed in, but also every inter- 
mediate version of their program. 
Since the first versions are likely to be 
the buggiest this let us test PROUST 
under the most difficult conditions 
possible. 

Figure 8b shows the results of run- 
ning PROUST on the Rainfall Problem. 
There are 206 different attempted 
solutions to the Rainfall Problem in 
the test set. Of these, PROUST was 
able to derive a complete understand- 
ing of 79 percent of the programs, 
identifying 94 percent of the bugs, a 
percentage far higher than people are 
able to achieve. The chart also in- 
dicates that 6 percent of the bugs 
were not recognized and 5 5 were 
false alarms. Bugs are counted as not 
recognized if they are either misdiag- 

[continued) 



Listing 2: A correct implementation of the Bad Input Test plan. 

WHILE Val<=0 DO 
BEGIN 
Writeln( 'Invalid data, please reenter' ); 
Read( Val ); 
END; 
IF Val <> 99999 THEN 



(Define-Rule WHILE-for-IF 
Statement-Type IF 
Error-Pattern (IF . WHILE) 

Bug (WHILE-for-IF Confusion (FoundStmt ,*MRet*) 

(Histlnst ,*HistoryNode*))) 



Figure 7: The WHILE-/or-IF bug rule invoked by PROUST to explain the plan 
difference between the faulty part of the program of figure 1 and the correct 
implementation of this part in listing 1. 



(a) 

Write a Pascal program that will prompt the user to input numbers from the terminal; 
each input stands for the amount of rainfall in New Haven for a day. Note: Since rainfall 
cannot be negative, the program should reject negative input. Your program should 
compute the following statistics from this data: 

1. the average rainfall per day 

2. the number of rainy days 

3. the number of valid inputs (excluding any invalid data that might have been read in) 

4. the maximum amount of rain that fell on any one day 

The program should read data until the user types 99999; this is a sentinel value signal- 
ing the end of input. Do not include the 99999 in the calculations. Assume that if the 
input value is nonnegative, and not equal to 99999, then it is valid input data. 



(b) 

Total number of programs: 



206 



Number of programs with bugs: 


183 


(89 percent) 


Number of programs receiving full analyses: 


161 


(79 percent) 


Total number of bugs: 


570 




Bugs recognized correctly: 


533 


(94 percent) 


Bugs not recognized: 


29 


(6 percent) 


False alarms: 


55 




Number of programs receiving partial analyses: 


35 


(17 percent) 


Total number of bugs: 


191 




Bugs recognized correctly: 


71 


(37 percent) 


Bugs deleted from analysis: 


70 


(37 percent 


Bugs not recognized: 


50 


(26 percent) 


False alarms: 


19 





Number of programs PROUST did not analyze: 



9 (4 percent) 



Figure 8: (a) The Rainfall Problem was assigned to a class of novice programmers to 
test the effectiveness of PROUST, (b) This shows the results of running PROUST on 
the Rainfall Problem. 



APRIL 1985 • BYTE 189 



Mac 

Inker 

Re-ink any fabric ribbon 
AUTOMATICALLY for less 
than 5$. Extremely simple 
operation with built-in 
electric motor. We have a 
MAC INKER for any printer: 
cartridge/spool/harmonica/ 
zip pack. Lubricant ink safe 
for dot matrix printheads. 
Multicolored inks, uninked 
cartridges available. Ask for 
brochure. Thousands of 
satisfied customers. 



95 



+ 




Mac 
Switch 

Mac Switch lets you share 

your computer with any two 

peripherals (serial or 

parallel). Ideal for word 

processors— never type an 

address twice. Ask us for 

brochure with tips on how to 

share two peripherals (or two 

computers) with MAC 

SWITCH. Total satisfaction or 

full refund. 

$9900 



**< 




Order toll free 1-800-547-3303 

Computer 
Friends 

6415 SW Canyon Court 
Suite #10 

Portland, Oregon 97221 
(503) 297-2321 



PROUST 



Ultimately, PROUST 
will be incorporated 
into a programming 
curriculum for students. 



nosed or missed entirely. Bugs are 
counted as false alarms if they are 
either not present in the program or 
if they are present but misdiagnosed. 
Consequently misdiagnosed bugs are 
counted both as false alarms and as 
not recognized, which inflates the 
total number of diagnosis errors. 

When PROUST fails to understand 
a program completely its ability to 
recognize bugs deteriorates; 17 per- 
cent of the programs were analyzed 
partially. In such cases PROUST 
deleted from its bug descriptions 
those bug analyses that were ques- 
tionable, given that the program was 
only partially understood. The bug 
descriptions that remained were fre- 
quently wrong, but at least PROUST 
was able to warn the student to take 
the analysis with a grain of salt. The 
remaining 4 percent of the programs 
deviated from PROUST'S expectations 
so drastically it could not analyze 
them at all. In these cases no bug 
report was generated. 

We are not yet sufficiently satisfied 
with PROUST'S accuracy to make it 
generally available to students. The 
false-alarm rate should be lower, and 
the fraction of programs that PROUST 
analyzes completely should be higher. 
When part of a program cannot be 
analyzed, PROUST should try to 
determine why that part of the pro- 
gram cannot be analyzed and try to 
account for the unanalyzed code. 
Once this is done we expect PROUST 
to succeed on 80 to 85 percent of the 
programs it analyzes. At that stage we 
will make it available to students on 
line. 

Conclusion 

PROUST is capable of high-quality 
analysis of bugs in novice programs. 



It is almost at the level where it could 
be incorporated into a programming 
curriculum and provide significant 
benefits to students. Here we have 
given a simplified view of how 
PROUST finds bugs. The next step is 
to build an automated programming 
course around PROUST Such a 
system would not only correct stu- 
dents' mistakes but would also sug- 
gest additional problems for the stu- 
dents to solve to give them practice 
where they need it. ■ 



AUTHORS' NOTE 

This work was cosponsored by the Person- 
nel and Training Research Groups, Psycho- 
logical Sciences Division, Office of Naval 
Research, and the Army Research Institute 
for the Behaviorial and Social Sciences, 
under Contract Number N00014-82-K- 
0714, Contract Authority Identification 
Number Nr 154-492. 

Additional papers dealing with bug 
classification, automatic debugging, and 
the cognitive underpinnings of program- 
ming can be obtained by writing to the 
following address: Cognition and Pro- 
gramming Project, Department of Com- 
puter Science, Yale University, POB 2158 
Yale Station, New Haven, CY 06520. 

Special thanks to Greg Kearsley and 
Leszek Izdebski of Courseware Inc. and 
Bret Wallach of Advanced Processing for 
their efforts in developing Micro-PROUST. 



REFERENCES 

1. Fosdick, L. D, and L. I. Osterweil. "Data 
Flow Analysis in Software Reliability." Com- 
puting Surveys 8, vol. 3, 1976, pages 
305-330. 

2. Harandi, M. T. "Knowledge-Based Pro- 
gram Debugging: A Heuristic Model." Pro- 
ceedings of the 1983 SOFTFAIR. 

3. Wertz, H. "Stereotyped Program Debug- 
ging: An Aid for Novice Programmers." In- 
ternational \ournal of Man-Machine Studies 16, 
1982, pages 379-392. 

4. Shortliffe, E. H. Computer-Based Medical 
Consultations: MYCIN. New York: American 
Elsevier Publishing Co., 1976. 

5. Minsky M. "A Framework for Represent- 
ing Knowledge." The Psychology of Computer 
Vision, P. Winston, ed. New York: McGraw- 
Hill, 1975. 

6. lohnson, W. L. "Intention-Based Diag- 
nosis of Programming Errors." Yale Univer- 
sity Department of Computer Science. 
1984. 



190 BYTE • APRIL 1985 



i 1 1 ■■ 


1 ® 


1980 1981 19B2 1985 


\ © 





Double your IBM PC's 
processing speed for under $6501 



AT speed for your IBM PC, with 
QuadSprint by Quadram. 

Quadram introduces a rapid advancement 
in IBM PC performance. QuadSprint. The 
innovative expansion board that doubles 
the processing speed of your personal 
computer. Just plug the totally 
transparent QuadSprint into your system 
and watch all your PC programs (Lotus 
1-2-3, dBASE III, Wordstar, and more*) run 
faster and more efficiently than ever 
before. . . without special commands or 
interface software. 

But best of all, you can pick up QuadSprint 
without running up a huge bill. At less 
than $650, QuadSprint is about half the 
price of other accelerator (turbo) cards 
and turns your PC into a machine that's 
virtually as fast as the new PC AT. 



So make your own rapid advancement. 
To the Quadram dealer closest to you. 
And see how to double the processing 
speed of your IBM PC. With QuadSprint 
by Quadram. 




QUADRAM 

J An Intelligent %slems Company 



4355 International Blvd./Norcross, Ga. 30093 

(404) 923-6666/TWX 810-766-4915 (QUADRAM NCRS) 

Inquiry 323 



IBM" PC. PC AT are registered trademarks of International Business Machines Corporation. " 1-2-3 is a trademark of Lotus Development Corp. dBASE III is a 
trademark of AshtonTate. Inc. Wordstar is a trademark of MicroPro Corp. ©Copyright 1984 Quadram Corporation. All rights reserved . 



TEK 



2236 100 MHZ 
OSCILLOSCOPE 



THE ANSWER 
BY ANY MEASURE 



100 MHz scope, counter, timer, 
multimeter: All one integrated system, 



100 MHz dual 
time base scope. 

3.5 ns risetime; 
sweeps from 0.5 s 
to 5 ns/div; alter- 
nate sweep; ±2% 
vertical/horizontal 
accuracy; vert- 
ical sensitivity to 
2mV/div@ 
90 MHz. 



9-digit fluores- 
cent display. 

Digitally accurate 
readouts accom- 
pany the CRT 
waveform. Error 
messages and 
prompts also 
appear on the 
display. 



Dc volts and ac 
coupled true 
RMS volts. Mea- 
sured through the 
Ch 1 scope input. 



Gated measure- 
ments. Use the 

scope's intensified 
marker to measure 
frequency, period, 
width and to count 
events within 
specified portions 
of the signal. 



Auto-ranged, 

auto-averaged 

counter/timer. 

Frequency period, 
width, delay time, 
A-time, plus total- 
ize to more than 
8 million events 
— with 7 digits 
plus exponent 
displayed. 



Auto-ranged 
DMM. Use floating 
DMM side inputs 
with up to 5000- 
count resolution. 
Get precise read- 
outs of average dc 
and true RMS volt- 
age. Measure 
resistance from 
milliohms to 
gigohms. 




Now make measurements 
faster, easier, with greater 
accuracy and user confidence. 

The Tek 2236 makes gated coun- 
ter measurements, temperature, 
time, frequency, resistance and 
voltage measurements push- 
button easy. You see results con- 
currently on the 9-digit numeric 
readout and CRT display 

Its complete trigger system 
includes pushbutton trigger view, 
plus peak-to-peak auto, TV 
line, TV field, single sweep and 
normal modes. 



At just $2650: the 2236 
includes the industry's first 3-year 
warranty on all parts and labor, 
including the CRT. 

Integrated measurement 
system. 3-year warranty. 1 5- 
day return policy. And expert 
advice. One free call gets 
it all! You can order, or obtain lit- 
erature, through the Tek National 
Marketing Center. Technical per- 
sonnel, expert in scope applica- 
tions, can answer your questions 
and expedite delivery. Direct 
orders include probes, operating 



manual, 1 5-day return policy, full 
warranty and worldwide service 
back-up. 

Order toll-free: 
1-800-426-2200 
Extension 57 

In Oregon call collect: 
(503) 627-9000 Ext. 57 
Or write Tektronix, Inc. 
P.O. Box 1700 
Beaverton, OR 97075 



Tfektronix 

COMMITTED TO EXCELLENCE 



Copyright ©1984, Tektronix, Inc. All rights reserved. TTA-324-1 . 'U.S. Domestic price F, OB. Beaverton, Oregon. Price subject to change. 
- 192 BYTE • APRIL 1985 



ARTIFICIAL INTELLIGENCE 



ARCHITECTURES 

FORM 



by Michael F. Deering 



AS ARTIFICIAL-INTELLIGENCE soft- 
ware grows in complexity and as A I 
applications move from laboratories 
to the real world, computational 
throughput and cost are increasingly 
important concerns. 

In general there are two motives for 
increasing the efficiency of computa- 
tions. One is the need to obtain faster 
computation, regardless of cost. This 
may be due to explicit real-time con- 
straints or to current methods being 
taxed well beyond the limit of com- 
plexity or timely response. The other 
motive seeks to obtain a better cost/ 
performance ratio. Behind both, how- 
ever, is usually the imperative of real- 
world market pressures. 

Opportunities for increased efficien- 
cy in AI computations exist at every 
level. Improved instruction-set designs 
combined with improved AI language 
semantics allow more powerful com- 
piler optimization. Concurrent ma- 
chines allow parallel execution of LISP 
and declarative constructs, raising 
issues of and. or, and stream parallelism. 
Custom VLSI (very-large-scale integra- 
tion) hardware for current AI perfor- 
mance bottlenecks includes devices 
such as hardware unifiers, associative 
memory and communication hard- 



Hardware and software 
for efficient processing 



ware for coordinating parallel search- 
es. Many of these speedups^are or- 
thogonal and can potentially increase 
performance by several orders of 
magnitude. However, this is not always 
the case; some language optimiza- 
tions have a tendency to serialize 
computation, thereby negating the 
gains of parallelism. 

As part of an effort to design a 
massively concurrent architecture for 
AI computation (the Fairchild FAIM-1 
project—see the text box on page 
202), this article examines several 
potential throughput increases and 
their interactions. 

Misconceptions 

There are several misconceptions 
about what needs to be done to im- 
prove computational throughput for 
AI. Since most AI programming is 
done in LISP, many researchers 
believe the key is simply to make LISP 
faster. However, this approach ignores 
other, easily obtainable potential 
speedups. 

Other computer scientists see no 
reason to concentrate on anything 
other than the fundamental problem 
of parallelism, an approach that 
presumes a routine solution of a very 



difficult problem: decomposing ar- 
bitrary A I computations to effective- 
ly use thousands of parallel proces- 
sors. A problem with this approach is 
that most programs, even ones with 
a high degree of inherent parallelism, 
almost always have several serial bot- 
tlenecks. As an example, most parallel 
programs need to gather the result of 
one batch of parallel computations 
for reflection before generating the 
next batch. In many cases, these serial 
processes dominate the running time 
of the entire program. So you cannot 
ignore the issue of how to extract as 
much serial speed as possible from 
languages and machines. Otherwise, 
once you've built an expensive paral- 
lel machine hundreds of times faster 
than existing machines, a new com- 
piler or microcode might make some 
existing serial machines even faster. 
The machine coded unifier in the 
Crystal AI language, for instance, is 
two orders of magnitude faster than 
the LISP-coded unifier in the pre- 

{continued) 

Michael F. Deering is a computer scientist with 
the Computer-Aided Systems Laboratory. He 
can be reached through Schlumberger Palo 
Alto Research, 3340 Hillview Ave.. Palo 
Alto, CA 94304. 



APRIL 1985 -BYTE 193 



ARCHITECTURES 



decessor PEARL AI language (see ref- 
erence 3). 

Software Improvements 

One way to improve AI language im- 
plementations would be to compile 
the language directly to machine 
code. Most AI "languages" are not 
computer languages but packages of 
routines on top of an existing lan- 
guage, usually LISP. While this is a 
great way of rapidly prototyping a lan- 
guage and results in considerable sav- 
ings in development costs over a tra- 
ditional full compiler, it does not lead 
to very efficient implementations. If 
increasing the speed of AI applica- 
tions leads to the extreme of build- 
ing custom parallel processors, it is 
silly not to compile AI languages 
directly onto these processors. There 
is a large body of computer science 
knowledge on compilation that can 
be brought to bear, and great poten- 
tial for performance increases. (Con- 
sider the 100-times plus speed differ- 
ence between most LISP-based Pro- 
log interpreters and Warren's DEC-20 
Prolog compiler— see reference 17.) 
Make sure that the language is com- 
pilable. Because most AI languages 
have been interpreted, issues of com- 
pilability generally have not been 
thought through. Language features 
that seemed efficient in an interpreted 
environment may be very slow when 
compiled, if they are compilable at all. 



A proper choice of features in light of 
a compiled environment leads to 
more efficient program execution. 

Another problem with many AI lan- 
guages is the lack of general tools to 
support common applications. While 
it can be argued that this allows users 
to write their own customized tools 
(which may be very efficient), most 
users will do a much worse job than 
the language implementor could. For 
example, PEARL did not directly sup- 
port any particular theorem-proving 
or search system (such as forward and 
backward chaining), leaving users to 
their own devices. But the MRS sys- 
tem (reference 1 1), while providing a 
convenient meta-level control for 
users to write their own search sys- 
tems, also provides a range of built- 
in search strategies, from backward 
chaining to full-resolution theorem 
proving. An extensive library of well- 
written routines of general use speeds 
the operation of typical user pro- 
grams (not to mention their devel- 
opment). 

Hardware Considerations 

It is often claimed that conventional 
computer instruction sets are not well 
suited for AI software, but there have 
been few attempts to quantify the 
reasons why. For older-generation 
machines, you can easily point to 
severe address-space limitations and 
the lack of flexible pointer- 



Table I : The timing results of the aggregate function foo for three LISP 
implementations on six different processors. 

LISPs vs. Processors on 
(defun foo(x)(+(car x)(cdr x))) 


Machine 


Zetalisp 


Franz LISP 


PSL 


VAX 


53.8 /us 


13.9 /xs 


5.6 

MS 


68000 


65.2 /xs 


43.6 fis 


5.8 

MS 


68010 


68.6 /xs 


43.6 fis 


10.6 

MS 


68020 


16.1 /xs 


19.9 /xs 


3.1 

MS 


MIT CADR 


19.0 /as 


n/a 


n/a 


3600 


6.4 /xs 


n/a 


n/a 



manipulation facilities (reference 6). 
But what of the new, modern 
machines, such as the DEC VAX, 
Motorola 68000, National Semi- 
conductor 16000, and various RISC 
(reduced instruction set computer) 
machines— how do they compare with 
the custom LISP machines (references 
13 and 15)? lb obtain insights into 
instruction-set design, I examined 
several LISP systems and the fine 
details of their implementation 
(reference 5). I learned, among other 
things, that it is very important to 
identify how rich an environment you 
wish to support. For example, con- 
trary to many people's expectations, 
on a large application program Franz 
LISP (reference 8) on a DEC VAX-11/ 
780 was not significantly slower than 
Zetalisp on a Symbolics 3600. The dif- 
ference was that nearly all type- 
checking and generic-function 
capabilities were either turned off (by 
the programmer) or missing in Franz 
LISP, where the overall environment 
was much poorer. Assuming that such 
features are not frills, I also examined 
the expense of providing them on dif- 
ferent architectures. 

Flexible LISP processing depends 
on dynamic type checking and 
generic operations. Associating the 
data type directly with the data ob- 
ject means that the data type will 
always be at hand during processing, 
and this is the reason that tagged 
memory architectures are well suited 
to LISP processing. Because of this 
association, the speed of various pro- 
cessors on the generic LISP task 
depends on how fast the processors 
can effectively emulate a tagged- 
memory architecture. 

I performed a number of experi- 
ments to compare LISP systems on 
different processor instruction sets. As 
a representative sample, table 1 
shows the timing results for a simple 
aggregate function incorporating 
some of the most common LISP 
primitives— CAR, CDR, plus, and 
function call/return. 

More extensive benchmarks have 
borne out roughly the same speed 
ratios. Not unexpectedly, the variance 

[continued) 



194 BYTE • APRIL 1985 



Anything Better Would 
L Havejb Be Magic 




i Pfs: PILE dBASE HI RBASE 



Access Time (Seconds) 



Max. Record Size 



Max. # of Fields 



Multi-User / LAN 






1 Galloway Study z Includes Pfs: Report 



. . . Easier than a 
File Manager and 
more Powerful 
than a DBMS! 

Compare INFORMA: 



• User-Oriented — Menu-driven - no complex commands to learn or remember; only two finger 
typing skills needed; information retrieval and change procedures can be mastered in less than 
20 minutes. Create applications and complex reports by "painting" what you wish to see on the 
screen. 

Powerful — Create a simple contact name file in minutes or a complex point of sale inventory 
management database in just days. In a comparison study done by Galloway Partnership of St. 
Louis, Missouri, a functional, online, order entry /inventory management system was created 
using INFORMA in 6 hours. Creation of the same system with dBASE III took 40 hours and with 
RBASE 4000 it took 10 hours. 

• Flexible — Change any database as often as your needs change. No need to worry about loss of 
data. INFORMA does all the work at a touch of a button. 

• Growth-Oriented — Start with a single user version now, then later, when you expand into a 
LAN environment, upgrade to a LAN version of INFORMA, and all of your applications 
automatically become Multi-User. # 



Introductory Offer 



UNLIMITED PROCESSING 
INCORPORATED 

8382 Baymeadows Road, Suite 8 
Jacksonville, Florida 32216, 
(904) 731-8330 and (800) 874-8555 
Telex 350754 



Single-user 

$199 

regularly $795 



LAN/ Multi-user 

$599 

regularly $1495 



Offer Expires April 10, 1985 



tlBASE 111 is a trademark of AshtonTate; RBASE is a trademark of MicroRl.M. In 



Inquiry 393 



APRIL 1985 -BYTE 195 



ARCHITECTURES 



Listing I: MC680I0 assembly-language code for the LISP function CAR. The 
code in boxes can be replaced by enhancements to the instruction set to decrease 
the code's execution time. 



Zetalisp car for 68010 



;To take the car we do a few lines of in line code and 
;then index jump to a subroutine. (Space for time.) 
;The cons cell to take the car of is assumed in aO. 



;dispatch to CAR subr based upon the tag in upper bits of aO 
4 movel a0,d2 ;put a copy of the arg into d2 

24 Isll #8,d2 ;first 8 of: shift copy over by 9 bits 



10 


Isll #1,d2 


;last 1 of: shift copy over by 9 bits 


14 


andl #0x1F0,d2 


;and off non-tag (shifted over) 


4 


movel d2,a2 


;need tag in A-reg for dispatch 


18 


jsr CAR(32) 


; branch to car table indexed by type 




;At return, the car 


of the object is in a2 



;The CAR subroutine. 

CAR + DTP-CONS: ;CAR procedure entry point 

;for nornal cons cell. 
;We will arrive here if the argument passed to car was of type 
/'pointer to cons cell". Other objects passed to car = > error 



;follow the point to the car 
4 moveal a0,d2 



;put a copy of the arg into d2 



14 


andl #0xFFFFFF,d2 


;and off tag 


4 


moveal d2,a2 


;put d2 into an address register 


12 


moveal (a2),a2 


;follow the car pointer. 



;dispatch to TRANSPORT subr based upon the tag 
; in the upper bits of a2 

4 movel a2,d2 ;put a copy into d 2 

24 Isll #8,d2 ;first 8 of: shift copy over by 9 bits 



[continued) 



exceeded 50 percent. Slight modifica- 
tions of the compilers or instruction 
sets produced similarly large changes 
in the speeds. 

Existing Franz LISP and PSL (refer- 
ence 12) compilers for the DEC VAX 
and Motorola 68000 were used to 
compile foo. Type checking was 
turned off to obtain the fastest 
speeds. (Both PSL and Franz LISP 
were told not to verify that the argu- 
ments of + were small integers; Franz 
LISP did and PSL did not check for 
numeric overflow.) The timing figures 
were generated by examination of the 
assembly code produced and some 
actual machine timings. The timings 
of Zetalisp for the 3600 and CADR 
were taken by running existing sys- 
tems. Zetalisp-like operations for the 
DEC VAX and Motorola 68000s were 
hand-coded, and the timings were 
produced in the same way as those 
for PSL and Franz LISP. The 68000 
and 68010 were 10-MHz, no-wait-state 
machines. The 68000 used 24-bit ad- 
dresses, leaving the upper 8 data bits 
free for tag values. The 68010 used 
3 2-bit addresses and required 
removal of the tag bits with an AND 
operation before addresses could be 
used. The 68020 timings are 
estimates based upon the best "cache 
case" timings in the 68020 data book 
and are not as accurate as the timings 
for the other machines. The 68020 is 
assumed to be running at 16 MHz 
with an external 16K-byte memory 
cache and memory-management unit 
(MMU), giving a memory-access time 
of 185 nanoseconds. (The 68020 has 
an additional small instruction cache 
on board.) 

Other experiments examined the ar- 
chitectural requirements for fast, com- 
putation of some A I operations not 
directly supported by LISP, in par- 
ticular unification and associative 
search. When AI languages are fully 
compiled, these two functions often 
become the computational bottle- 
necks. For traditional microprocessor 
instruction sets, the requirements of 
these operations turned out to be the 
same as for LISP primitives: fast 
simulation of tagged architectures. 
More specifically, the instructions and 



196 BYTE • APRIL 1985 



ARCHITECTURES 



capabilities that would make a con- 
ventional microprocessor better 
suited for LISP (along with Prolog, 
Krypton, MRS, PEARL, etc.) are 

• "Extract bit field and dispatch": an 
instruction to extract a sequence of 
bits from an operand, then add these 
bits to a dispatch table address, and 
jump indirect. This is necessary for 
rapid handling of tag values in generic 
operations, type checking, and for 
helping with unification. 

• "Extract two bit fields, concatenate, 
and dispatch": an instruction for 
dispatching on the context of two 
operands (needed for the same 
reason as the one-argument version). 

• The memory address system of the 
processor should ignore the upper 
address bits of data addresses that 
are not otherwise in use. This allows 
the wasted space in 3 2 -bit pointers to 
be used as a tag field. 

In the Zetalisp-like code, more than 
30 percent of the time on the 68000s 
was spent in emulating the bit-field 
dispatch instructions. Stripping off the 
tag bits accounted for approximately 
another 10 percent. It is therefore 
estimated that if the existing micro- 
processors had hardware support for 
these features, full type-checking 
LISPs (like Zetalisp) could run almost 
twice as fast. These percentages come 
from hand-implementing several Zeta- 
lisp primitives on current micropro- 
cessors. As an example, listing I 
shows the 68010 assembly language 
code for CAR. The number of pro- 
cessor clock cycles per instruction is 
shown in the left-hand column. The 
boxed code can be replaced by a 
single instruction (see listing 2). 

Listing 2 shows CAR for the 68010 
recoded, assuming two architectural 
refinements. First, assume that the up- 
per 7 bits of all addresses are ignored 
by the virtual-memory system. Sec- 
ond, assume one additional instruc- 
tion, "extract bit field and dispatch." 
This instruction takes the bit field out 
of the second argument, as specified 
by the first argument (format: 
< #starting-bit, field-width >), adds it 
to the third argument (the jump-table 

[continued) 











10 Isll #1,d2 ;last 1 of: shift copy over by 9 bits 






14 andl #0x1F0,d2 ;and off non-tag (shifted over) 






4 movel d2,a3 ;need tag in A-reg for dispatch 






10 jmp TRANSPORT(a3) ;branch to car table 






;indexed by type. 






;The reason for this jump is to check 






;for possible invisible pointers, unbound, etc. 






TRANSPORT + NORMAL: ;jump entry point for normal 




;cons cell contents 


8 rts ;We're all done, return 


182 clocks, @10MHz =18.2/xs 



Listing 2: The modified listing l code, incorporating architectural refinements to 
the processor's instruction set. 

;Now the car routine is recoded using the new instructions: 

;index jump to a subroutine. 

;dispatch to CAR subr based upon the tag in upper bits of aO 

22 extract-dispatch <#26,#6>,aO,CAR 
;The CAR subroutine. 
CAR + DTP-CONS: ;CAR procedure entry point for 

; normal cons cell. 
;follow the pointer to the car 

12 moveal (a0),a2 ;the upper 6 bits of aO are ignored. 
;dispatch to TRANSPORT subr based upon the tag 
;in the upper bits of a2 

22 extract-dispatch <#26,#6>,a2, DISPATCH 
TRANSPORT + NORMAL: ;jump entry point for normal 
;cons cell contents 
8 rts ; We're all done, return 



64 clocks, @10MHz =6.4/xs, 2.8 times faster 



APRIL 1985 -BYTE 197 



ARCHITECTURES 



base address), and indirectly jumps 
through this address. (The 68020 has 
a fast bit-field extraction instruction. 
This accounts for much of its in- 
creased speed over the older 68000 
on the LISP task in table 1.) 

For new, fully custom machine de- 
signs that are tailored specifically for 
AI, such features can all be built in. 



With a tagged architecture, many 
generic operations, such as add, do 
not need to be dispatch subroutine 
calls. Rather, the processor can ex- 
amine the tags of the arguments to an 
add instruction and, if they are sim- 
ple integers, directly perform the add. 
If the arguments are of a more exotic 
numeric type, the processor can 




GSS SELECTS LATTICE 
FOR GRAPHICS SOFTWARE 



Graphic Software Systems (GSS) and 
Lattice, Inc. recently joined forces to 
offer VDI & GKS graphics, based on the 
emerging ANSI standard, for the C lan- 
guage. As a result, Lattice is market- 
ing graphics-based software that takes 
full advantage of the capabilities of 
personal computers. 

According to Lattice President 
David A. Schmitt, "this coupling will 



allow the direct application of creative 
ideas without the constraints of many 
large-scale systems. Software develop- 
ment firms can develop graphics pro- 
grams faster and at less cost." 

The two companies also agreed to a 
continued sharing of technology 
which will support the development of 
standardized graphics software and 
ease the distribution of products. 



LATTICE UNVEILS 
FOUR PRODUCTS 

Lattice has announced the avail- 
ability of four new software products 
for MS-DOS environments: 

C-SPRITE is a software tool that sim- 
plifies debugging of programs written 
in Lattice C or assembly language. 
Cost: $175 per copy. 

LMK is an Automated Product Gen- 
eration Utility (UNIX "MAKE") that 
enhances productivity and relieves 
the tedium of rebuilding complex soft- 
ware systems or documents. Cost: $195 
per copy. 

The TEXT MANAGEMENT UTILITY 
PACKAGE includes utilities to search 
a set of files for simple or complicated 
patterns, to see the exact minimal dif- 
ferences between two text files, and to 
modify one or more text files automat- 
ically. Cost: $120 per copy. 

CVUE is a full screen text editor 
that supports all normal screen editor 
functions and includes a configura- 
tion program to define tabstop posi- 
tions, horizontal scrolling and edit 
commands. Cost: $100 per copy. 

For complete information on these 
new products, contact Lattice. 



LATTICE C NAMED 
'BEST OF 1984' 

The Lattice C compiler has been 
rated 'Best of 1984' by PC Magazine. 
According to columnist Peter Norton, 
"The Lattice C compiler is quite good 
. . . and in my opinion noticeably bet- 
ter than any of its competitors. Lattice 
C generates code that is quite compact 
and fast running; the closest competi- 
tor in my tests generated code that 
was about 10 to 15 percent bulkier.*' 



ASK ABOUT OUR "TRADE 
UP TO LATTICE C POLICY" 



After purchase, return registration cards 
for free subscription to the "Lattice 
Works" newsletter and important informa- 
tion about the Lattice Users Group 



Lattice, Inc. 
P. 0. Box 3072 
Glen Ellyn, !L 60138 
(312) 858-7950 
TWX 910-291-2190 



generate a software interrupt to an 
appropriate routine. Further, for such 
designs it is very helpful to have a 
"smart" memory subsystem capable 
of rapidly chasing down indirect 
pointers as on the DEC PDP-10 and 
the custom LISP machines. Additional 
customization of an AI instruction-set 
design generally falls into the 
category of complete, attached co- 
processors rather than just additional 
instructions. This tactic has already 
been taken by many microprocessors 
whose floating-point instructions are 
handled by what could be viewed as 
attached coprocessors. The specific 
categories of important attached co- 
processors include pipelined unifiers, 
associative-memory subsystems, mul- 
tiprocessor communication packet 
switchers, and special signal-pro- 
cessing chips for vision and speech. 
Studies of a custom instruction set 
for the FAIM-1 machine indicate that 
not only can a single processor be de- 
signed that is memory-bound by 
DRAM (dynamic random-access read/ 
write memory) access delays but that 
this is the case even when a large 
cache is employed. This is an impor- 
tant fact. It means that parallel 
machines sharing a single large com- 
mon memory are a bad idea because 
there isn't enough memory band- 
width to go around. 

Parallelism: The Great Hope 

Traditional views cite concurrency as 
a great method of obtaining increased 
computational power. In practice, 
however, designers continue to con- 
centrate on making faster and faster 
single-processor machines. Now that 
hard technological limits have been 
reached for serial processors, paral- 
lelism has become recognized as 
perhaps the only hope for further per- 
formance increases. Unfortunately, 
concurrency is not free— it brings new 
systems organization problems to the 
fore. 

The first conceptual problem with 
parallelism is the confusion between 
multiprocessing and multiprocessors. There 
are algorithms that very elegantly ex- 
press a set of cooperating processes 

[continued) 



198 BYTE • APRIL 1985 



Inquiry 231 




Resolution That Blows You Away 



Being #1 has its advantages! 
Our Model 440 (720 by 400) Ultra High-Res 
monitor is the Worlds standard for 
excellence. Its capabilities will out-rank 



those of our competitors for a long time. 
We won't Stop producing the finest! 

You can't! 

Not when you're Number One! 





MODEL 440 


MODEL 425 


MODEL 420L 


MODEL 41 1 


MODEL 122 


12 inch Ultra High-Res RGB 


12 inch Super High-Res RGB 


12 inch Super High-Res RGB 


\2 inch High-Res RGB Color 


12 Inch Super High-Res 


Color Monitor 


Color Monitor 


Color Monitor 


Monitor 


Amber Display 


Designed for up-grading 


Fully compatible with IBM 


Long Persistance Phosphor 


Fully compatible with IBM 


Fully Compatible with IBM 


display of IBM PC 


PC and PC Compatibles. 


Tube 


PC and PC Compatibles. 


TTL Monochrome Display 


720 x 400 line resolution in 


640 x 262 line resolution 


Fully compatible with IBM 


510 x 262 line resolution 


Horizontal scan. 


non-interlaced mode 


Switchable to green 


and most other personal 


Switchable to green 


Rate 8,432 Khz 


4000 character display 


character display 


computers. 


character display 


Optional Tilt/Swivel Base 


capability 


Built in audio 


640 x 262 line resolution in 


Built in audio 


available (Model 110-12) 


Switchable to green 




non-interlaced mode 




Green phosphor available 


character display 




640 x 525 line resolution in 
interlaced mode 
Unlimited colors available 
through analog video circuit 




(Model 121) 


"1"^^ 


^^l%l 


The Smart Choice. 


Inquiry 424 for Deal 


srs. Inquiry 42 5 for End-Users. 



■/•%^v/»mi ^i 



1 8005 Cortney Ct. Cry of Industry, CA 91 748 (81 8 ) 8 1 0-1 29 1 ©1935 taxan coition 

*IBM is a registered trademark of International Business Machines, Inc. 



Inquiry 332 



PROGRAMMERS 



/ 




\ 


: fflH 




dbJ/ISTA 



The first DBMS designed 
exclusively for the C language. 



PREFERRED over ISAM and file utilities 
POWER like a mainframe DBMS 
PRICED like a microcomputer utility 
PORTABILITY like only C provides 



FEATURES INCLUDE: 



• Written in C, for C. 

• Maximum data efficiency using the 
network database model. 

• Virtual memory disk accessing. 

• Fast B'-tree indexing method. 

• Multiple key records-any or all data 
fields may be keys. 

• ROYALTY FREE RUNTIME. 

• SOURCE CODE INCLUDED. 

• Three month extended applications 
support included. 



FREE OFFER 



MENTION THIS AD and choose any one of 
the following C tools from Lattice at no 
additional charge, when you order 
db VISTA 

• Lattice C Compiler 

• C-Sprite Program Debugger 

• Lattice Window Manager 

• Curses Unix-compatible Screen 
Manager (source code included ) 

• Panel Forms Manager 

• CVUE Screen Editor 

db VISTA with source code: $495 

db VISTA without source code: $395 

OR 

COMPLETE C Development package 

including: 

db VISTA, Lattice C compiler, 

C-Sprite, CVUE, & Curses 

a $1520.00 value for only $895.00 

db VISTA available for PC-DOS/MS- DOS, 
for most popular C compilers including Lattice, 
DeSmet, Computer Innovations, AZTEC. Also 
available for most Unix systems Cim\ CTOS. 

R4IMK 

C O RPO R AT I O N 

11717 Rainier Avenue South 

Seattle, WA 981 78 

206/772-1 515 

CALL TOLL-FREE 

1-800-843-3313 

at the tone: 700-992 

ask for Jim 



MONEY BACK GUARANTEE 



ARCHITECTURES 



(e.g., writers and readers), but these 
same algorithms have little or no in- 
herent parallelism that can be ex- 
ploited by parallel computers. Just 
because an algorithm can be ex- 
pressed in concurrent terms is no 
guarantee that, when run on many 
parallel processors, it will run 
significantly faster than as separate 
processes on a single sequential 
machine. 

The true measure of parallelism is 
how much faster a given program will 
run on n simple parallel processors 
compared to how fast it would run on 
a single simple processor and for 
what ranges of n this is valid. The best 
you can hope for in principle is a fac- 
tor of n speedup, but in practice this 
is rarely reached (due to overhead 
and communication contention). The 
maximum amount of speedup at- 
tained for a given program using any 
number of parallel processors in- 
dicates the inherent parallelism of 
that program. Unfortunately, for most 
existing programs written in tradi- 
tional computer languages, the max- 
imum parallelism seems to be about 
a four-times speedup (reference 10). 
This surprisingly low number is due 
to the style of programming enforced 
by the traditional languages. There 
are special-purpose exceptions to this 
rule and the hope is that nontradi- 
tional parallel languages will en- 
courage more concurrent algorithms. 
Compilers for parallel machines can 
take advantage of techniques such as 
and, or, and stream parallelism if AI 
languages support the concurrent 
control structures that give rise to 
them. But the jury is still out as to the 
amount of speedup such techniques 
can deliver. 

Another problem in parallelism is 
failure to take the entire systems con- 
text into account. Before building a 
parallel machine, you must not only 
simulate the machine but determine 
how to write large programs for it. 
This reveals potential flaws in the 
machine before commencing with 
time-consuming hardware develop- 
ment. The simulation must properly 
take scheduling and technologically 
realistic hardware-communication 



overhead into account or the timings 
produced will have little or no connec- 
tion to reality. 

Good examples of software systems 
that have not taken realistic hardware 
considerations into account are some 
of the parallel LISPs that have been 
proposed (reference 9). These pro- 
posals point out places in LISP-like 
processing where multiple processors 
could be exploited, but they do not 
analyze the overheads incurred. They 
usually assume that multiple pro- 
cessors share a single large main 
memory where CONS cells and other 
LISP objects are being stored. This is 
the equivalent of assuming that 
memory is infinitely fast, which is just 
as unrealistic as assuming that pro- 
cessors are infinitely fast. The prob- 
lem is that with current technology a 
single well-designed LISP processor 
could run faster than current mass- 
memory technology could service it. 
Adding processors would thus not 
result in any increase in through- 
put. 

There are several reasons why 
designers of parallel LISPs may have 
missed this fact. Perhaps one is that 
current 68000 LISPs are not memory- 
bound. Another is the potential use 
of caches to reduce the required 
memory bandwidth to each pro- 
cessor. However, even with caching, 
the number of processors that can be 
added is not unlimited; a 90 percent 
hit-rate cache would accommodate 
only 10 processors. 

What about the thousand-processor 
architectures envisioned? Experimen- 
tal data shows that a single processor 
can run significantly faster than mem- 
ory can service it: You must employ 
a cache just to keep a single pro- 
cessor running full tilt. The lesson is 
that processors are still much faster 
than memories, and any sharing of 
data between multiple processors 
(beyond a few) must be done with 
special communication channels. In 
other words, MIMD (multiple instruc- 
tion, multiple data) machines with a 
single shared memory are a bad 
parallel architecture. This has impor- 
tant implications for some AI 
paradigms, such as Blackboard sys- 



200 BYTE • APRIL 1985 



ARCHITECTURES 



terns and Production systems that (in 
their current form) rely on memory for 
communication between tasks. 

This is not to say that there are no 
opportunities for spreading LISP-like 
processing across hundreds of pro- 
cessors. There are many techniques 
other than a single shared-memory 
system for connecting processors. 
More realistic areas of research in- 
clude the spreading of parallel in- 
ference computation via techniques 
of and, or, and stream parallelism. The 
point is that all of these techniques 
incur some overhead and you cannot 
simply solve the parallel-computation 
problem by saying that arguments to 
functions should be evaluated in 
parallel. You must first study hardware 
technology to determine at what grain 
sizes parallelism is feasible and then 
figure out how to make Al-language 
compilers decompose programs into 
the appropriate-size pieces. 

Custom VLSI 

One of the principal hopes for more 
efficient future computation is the use 
of custom VLSI hardware to ac- 
celerate particular functions. The ideal 
functions for silicon implementation 
should be current bottlenecks in AI 
systems and generic to many A I tasks. 
Four of the most important classes of 



operations that fit this description are 
symbolic matching of abstract objects, 
semantic associative memory, paral- 
lel-processor communication, and 
signal-to-symbol processing. 

Matching and Fetching 

Matching two objects is a general and 
pervasive operation. Most AI lan- 
guages define one or more match func- 
tions on their structured data types 
(such as frames). Some of these 
match functions are very ad hoc (thus 
supposedly flexible), but others are 
subsets or supersets of unification. If 
significant support for matching is to 
be provided in hardware, the match 
function must have well-defined 
semantics. 

Al-language objects can be com- 
plexly structured and used to repre- 
sent semantic knowledge. The objects 
can contain embedded pattern- 
matching variables that are given 
bindings as a side effect of the match 
operation. Thus the matching of these 
objects is complex, lb give the flavor 
of the matching process, I'll present 
a short description of the unification 
matching function. (For a more exact 
description, see any good description 
of the Prolog language.) Matching is 
best described by recursively defining 
the semantics of the match operation: 



1. If the two objects to be matched 
are structured (nonscalar) objects, 
recursively match their subcom- 
ponents (or "slots"). The two objects 
are said to match if and only if all 
pairs of slots match. Otherwise, the 
objects do not match, and any side ef- 
fects of the matching process must be 
undone. 

2. If the two objects to be matched 
are scalar objects (integers, floating- 
point numbers, atoms, symbols, char- 
acters, etc.), then the match function 
reduces to simple equality. 

3. If one of the two objects to be 
matched is a pattern-matching vari- 
able, the match operation must check 
the variable's binding state. If the 
variable already has been bound to 
a value, the match operation con- 
tinues using the value in place of the 
variable. If the variable has no current 
binding, it is bound to the value of the 
object against which it was being 
matched, and the match succeeds. 

4. If both of the objects to be 
matched are unbound pattern- 
matching variables, then one is bound 
to the other as a placeholder for 
possible future bindings. If either 
variable is later bound to a "real" 
value, then both variables will be 
bound to this value. 

[continued] 



PROFESSIONALS 

From computer systems to support. . .Dynacomp serves Canada* 



When you're ready to buy a computer, con- 
sider the difference professionals can make. 
You want full support from your dealer, and 
complete reliability from your computer. At 
Dynacomp, we offer both. 

Dynacomp is Canada's 1st Full Service 
CompuPro System Center offering you the 
most cost-effective and advanced busi- 
ness and scientific computers available. . . 
CompuPro's System 816™ family and the 
multi-user CompuPro 10 PLUS™ And we 



210 W. Broadway 

Vancouver, B.C. V5Y 3W2 

(604) 872-7737 



now offer UNIX™ on CompuPro, 
UniPlus™ + SYSTEM V for $1495. U.S. 
list** on the CompuPro 816/E™ 

Our support Includes giving you the most 
computer for your money. Tell us what you 
do, and we'll put together a complete system 
that meets your needs . . . right down to the 
peripherals. 

Our CompuPro systems include a library 
of the most popular and useful software, 
CompuPro's full year warranty and Xerox® 



on-site service with designated systems. 

Call Dynacomp for the professional 
support you expect when you buy a com- 
puter system. 
Since 1982, Full Service 
CompuPro System Center. 



CompuPro t 




COMPUTER SYSTEMS LTD. 



'Dynacomp serves all Canada and parts of Asia and the Pacific Rim. Call os 
for details and information on our full product line including Plexus, Macrotech 
and Ampro. 

CompuPro System 816 and CompuPro 10 PLUS are trademarks of CompuPro. 
Xerox is a registered trademark of Xerox Corp. UNIX is a trademark of Bell 
Laboratories, Inc. UniPlus is a trademark of UniSoft Corp. 
"Dealerinquires welcome. 



74-6535 Mill Creek Dr. 
Mississauga, Ont. L5N 2M2 
(416)826-8002 



Inquiry 130 



APRIL 1985 -BYTE 201 



ARCHITECTURES 



The match operation produces a 
binary result: Did the two objects 
match successfully or not? Successful 
matches produce the bindings of 
pattern-matching variables necessary 
to make the two objects identical in 
as general a way as possible. 

Many AI languages augment this 
match operation with checks for cir- 
cularity in the list structure (the "oc- 
cure check"), segment matches 
(similar to Snobol's). and the matching 
of sets and bags. 

When a match function is applied 



to a database of objects, the opera- 
tion is called (etching. In this case 
matching becomes the inner loop 
operation, and this is a context in 
which matching should be optimized. 
An ideal solution would integrate 
matching circuitry with memory cir- 
cuitry so that fetching would become 
a memory access of a content- 
addressable memory (CAM). The 
choice of match function is critical. Tb 
obtain reasonable memory densities, 
the relative silicon area of match cir- 
cuitry cannot overwhelm that of the 



memory circuitry. Unfortunately, full 
unification and more complex match 
functions require too much circuitry 
to be built into memory cells. But if 
a formal subset of unification could 
be built in, then the CAM could act 
as a prefilter function for unification. 
The primary source of unification 
complexity is the maintenance of the 
binding environment. The match func- 
tion of mock unification resembles full 
unification except that all variables are 
treated as "don't cares" and no bind- 

(continued) 



FAIM-1 Project Overview 



Our goal is to produce a high-per- 
formance symbolic multiprocessor, 100 
or more times faster than current 
machines in common use (e.g., the DEC 
VAX- 11/780) to meet the voracious 
computational demands of future arti- 
ficial-intelligence applications. 

The FA1M-1 (Fairchild Artificial In- 
telligence Machine) is a multiprocessor 
system consisting of a number of iden- 
tical processing elements called hec- 
tagons interconnected by a communica- 
tion network. Each hectagon is a com- 
plete computer capable of sequentially 
executing a compiled program that is 
stored in its local memory. Hectagons 
communicate with each other via mes- 
sages that are sent through communi- 
cation ports. A hectagon has six ports 
that may be active concurrently. 

The FA1M-1 architecture permits the 
connection of arbitrary numbers of 
hectagon processing elements in a 
hexagonal-mesh topology. The ensem- 
ble of hectagons is capable of exploit- 
ing very large levels of concurrent 
multiprocessing and as such should 
provide an extremely attractive target 
machine for future concurrent Al ap- 
plications due to its performance. 
Moreover, each individual hectagon is 
itself a concurrent processor com- 
posed of six modular sybsystems, each 
of which provides an important level 
of support for symbolic computation. 

A hectagon is composed of six self- 
timed subsystems named FR1SC, 
SRAM. ISM, CxAM, SPUN, and Post 
Office. Three of these subsystems (ISM, 
CxAM, and SRAM) are specialized 



memory systems that provide "in- 
telligent" storage, while the other 
systems support inter-hectagon com- 
munication (Post Office), processing 
(FR1SC), and unification (SPUN). 

FRISC: The "fanatically reduced in- 
struction set computer" component of 
the hectagon corresponds to the cen- 
tral processing unit in a conventional 
computer. It is a stack-oriented ma- 
chine with a 20-bit word composed of 
a 1 6-bit data field and 4-bit tag field. 
7kg bits and associated tag-handling 
hardware support generic operations. 
SRAM: The FRISC views most data 
structures as objects; a conventional 
memory with a small finite-state ma- 
chine attached to it (collectively called 
the SRAM) provides an object-oriented 
memory system for the FRISC. For ex- 
ample, using the data tag bits the 
SRAM can chase a pointer chain to 
retrieve an object requested by the 
FRISC. 

ISM: The "instruction stream memory" 
subsystem delivers instructions to the 
processor at high speed. Thus, the nor- 
mal address calculation activities that 
have traditionally been the processor's 
responsibility are the ISM's job. 
CxAM: The "context-addressable 
memory" subsystem provides direct 
hardware support for important pat- 
tern-matching functions inherent in 
symbolic programs. The structure of 
both entries and queries in the CxAM 
is an S-expression. Therefore, each slot 
can either be a structure or an atom. 
Atoms can be symbols, numbers, vari- 



ables, or don't cares. The CxAM re- 
sponds to four commands: Find Match, 
Give Match. Delete Structure, and Add 
Structure. The CxAM manages its own 
free space and removes garbage auto- 
matically. 

SPUN: The "streamed pipeline unifier" 
supplies direct hardware support for 
logic programming. The CxAM finds 
the next rule or set of rules to be tried 
but does not perform full unification 
since its match function does not con- 
sider variable bindings. The SPUN unit 
takes the query and the streamed set 
of matched structures, detects which 
variables still need to be matched, 
fetches the binding in the current con- 
text from the SRAM, and completes 
the unification. This may entail binding 
a variable, in which case the SPUN unit 
must post this binding back in the 
SRAM. More complex structure manip- 
ulation requires the SPUN to interrupt 
the FRISC for services. 
Post Office: Hectagons communicate 
by sending messages to each other: it 
is the duty of the Post Office to pro- 
vide autonomous communication sup- 
port for its hectagon. Jf a message's 
destination is not one of the sender's 
six neighboring hectagons. the Post Of- 
fice will route the message to its 
destination by sending the message to 
a neighbor that is generally in the direc- 
tion of the destination. 

Conceptually, messages may be of 
arbitrary length. In fact, each message 
is broken up and sent as a sequence 
of fixed-length packets. 



202 BYTE • APRIL 1985 




f 



COLOR MAGIC: IBM-PC compatible 
SI 00 BUS graphics board. 

Gives your 16 bit SI 00 BUS system IBM-PC com- 
patibility ■ RGB and composite outputs ■ IBM PC 
keyboard port ■ All IBM-PC display modes plus 
two higher resolution modes 
PRICE 16K - $595.00 32K - $695.00 




■f^'* * 
'* *li* 

* J**-**^^ 



LIGHTNING ONE: The standard by 
which other 16 bit boards are judged. 

The LIGHTNING ONE offers math processing ca- 
pabilities only available on large mainframes pre- 
viously ■ Up to 10MHz operation ■ 8MHz 8087 
option ■ Optional 8089 coprocessor 
PRICES start at $425.00 8086/87 (8MHz) $900.00 
8086 (10MHz) $625.00 



%&} 



9 
9 



% 



MEG ARAM: High performance high 
density Dynamic RAM. 

Offers cost effective memory expansion in 16 bit 
systems. ■ No wait states with 8086's up to 10MHz 
■ Only one wait state with 6MHz 80286 ■ Up to two 
MegaBytes of memory 

PRICE . . 256K - $595.00 . . . .512K - $1095.00 
1024K - $1995.00 . . 2048K - $3795.00 




LIGHTNING 286: Highest performance 
processor available on the S100 BUS. 

This 6MHz 80286 offers performance equivalent to 
a 14 MHz 8086. ■ 5 times IBM-PC performance 
■ 16 Mbyte physical memory space ■ 1 Giga 
byte virtual address space 
PRICE 80286 - $1095.00 80286/287 - $1649.00 



Computer Systems . . . 



THUNDER 186: Single board 16 bit 
microprocessor offers 1 0MHz 8086 
performance. 

THUNDER requires no other support boards, 

■ 256K RAM ■ FDC controller ■ 2 Serial ports 

■ Parallel printer port ■ Concurrent DOS is 
included 

PRICE $1595.00 



NEW PRODUCTS! 

■ WINCHESTER/FLOPPY 
CONTROLLER 

Controls both floppy drive and 
Winchester drives from one board. 
Save slots and money. Features include: 
error correction, 16 head control, 
mixed 5V4 and 8" floppy drives. 
The price is less than one popular 
manufacturer charges for a floppy only 
controller, PRICE $649.00 

MEMORY DISK 

I/O mapped memory drive expandable 
to 16 Mbytes by cascading boards. 
Each board may contain up to 2 Mbytes 
and may be battery protected. Parity is 
included to insure corrupted data does 
not go undetected. The board is en- 
tirely COMPUPRO software compatible. 
PRICE ..... 2 MBYTES ..... $2595.00 
Dealer inquiries invited. 




LOMAS DATA PRODUCTS, INC. 

66 Hopkinton Road, Westboro, MA 01581' 
Tel: (617) 366-6434 □ Telex: 4996272 

For orders outside the U.S., contact our dealers: 
D Australia - LAMRON PTY. LTD., (02 808-3666 
□ England - FULCRUM 0621828763; RATIONAL 
SYSTEMS 0908-613209 or 0908-611349. 



Inquiry 241 



APRIL 1985 



ARCHITECTURES 



ing list is formed. In terms of the 
definition given above, steps 3 and 4 
would be replaced with null opera- 
tions—variables are just treated as 
"always match" objects. Mock unifica- 
tion is the most powerful subset of 
unification that is state-free. Therefore, 
mock unification is a suitable can- 
didate for integration into VLSI mem- 
ory. Associative-memory systems that 
utilize mock unification as their match 
function are called CxAMs: context- 
addressable memories. 

From a hardware point of view, de- 
signing associative-memory architec- 
tures involves a resource trade-off 
between processing and memory: 
The more hardware devoted to 
"matching." the more data that can be 
examined in parallel, leading to faster 



4 


rS EQed/ (nanosecond *mm2) 


3 


CxAM-3: HCP 15K BITS/mm2 


2 


\ N CxAM-2 


1 






CxAM-T"\X 




i t fi^r^ i i 


12 3 4 15 


K BITS/mm2 



Figure I : A graph of the range of bit 
and search-power densities for a CxAM 
design. 



search time per bit of storage. But 
conversely, the more matching hard- 
ware there is, the smaller the amount 
of hardware that can be devoted to 
data memory and the lower the den- 
sity of the associative memory. The 
data-path bandwidth of the match 
hardware is also a factor in making 
these trade-offs. Therefore, associa- 
tive memories can be rated by their 
storage density (bits stored per unit 
of silicon area) and search throughput 
(bits searched per unit of time per unit 
of silicon area). 

I examined two classes of associa- 
tive memory in which the match func- 
tion is mock unification. One inte- 
grated the matching circuitry with 
memory circuitry, the other was hash- 
based. Hashing was considered 



MINIMUM SYSTEM CONFIGURATION (BITS) 


100M 

10M 

1M 


r 




- 


HASH BASED CxAM 


100K 


- 




10K 


- 


SEARCH BASED CxAM 


IK 


r 


) 






4 8 12 16 




K BITS/mm2 



Figure 2: The minimum-usable-size 
system for use with the hashing CxAM. 
Note that the minimum is too large for 
some applications. 



Table 2: A list of AUanguage match operations and data types arranged in 
order of complexity. 

Match Hierarchy 


Match Operation 


Object Type 


Compare Instructions 


32-bit data object 


LISP EQ Function 


Atomic LISP objects 


LISP EQUAL Function 


S-Expressions 


Mock Unification 


S-Expression with don't cares 


Unification 


S-Expression with matching variables 


Unification & Predicates 


S-Expression with variables/predicates 


Arbitrary User Code 


arbitrary user representation objects 



because in many applications in the 
past software hashing has dominated 
CAM technology (reference 7). In 
more detail the two classes are 

1 . Brute-force search: The contents of 
a memory are exhaustively searched 
by some number of parallel match 
units. For this class of search a custom 
VLSI mock-unification-memory archi- 
tecture was designed. 

2. Hashing: Objects to be fetched are 
hashed, and then the collision list is 
serially searched by a match unit. A 
proposed VLSI implementation of 
PEARLs hashing scheme (called the 
HCP. or hash coprocessor) served as 
an embodiment of hash-based 
searching. In this system the bit 
storage is conventional DRAM. 

Figures 1 and 2 present graphs of 
CxAM design-space trade-offs. Figure 
1 displays the range of bit and search- 
power densities. The hash-based 
CxAM has a single operating point 
because the fetch time is essentially 
independent of memory size, as is the 
density. The search-based CxAM has 
a variable range because one can vary 
the relative proportions of storage 
and processing in such architectures. 
The two lines represent two different 
search-based architectures. One has 
inherently better bit density, but over 
most of the design space this advan- 
tage is negated by an inherently 
worse search throughput. However, 
neither design completely dominates 
the other— a choice between the two 
will depend on the relative storage- 
density/match-throughput balance 
desired. Figure 2 displays the defect 
of the hashing CxAM. The minimum- 
usable-size system is too large for 
some applications. 

Thus the trade-offs between these 
two schemes turn out to be in den- 
sity and minimum usable size. As a 
representative data point, both tech- 
niques could perform a mock unifica- 
tion of their entire local memory con- 
tents for an average query (an S- 
expression of length 16) in 5 micro- 
seconds. The density of the search- 
based CxAM was about eight times 
worse than that of conventional 
single-transistor DRAM. The hashing 



204 BYTE • APRIL 1985 



Inquiry 25 



Little Board™ $349" 



ARCHITECTURES 



scheme used conventional DRAMs 
and so had high density. But the 
minimum configuration of a hash- 
based CxAM memory system using 
standard 256K-byte DRAMs is 10 
megabits, whereas the search-based 
CxAM can be configured for much 
smaller system storage sizes. 

This extremely high speed of 5 
microseconds portends greatly in- 
creased efficiency for systems bottle- 
necked by database fetch time. But 
which technique to use is very depen- 
dent upon grain size. If you are con- 
structing a large nonparallel machine, 
a bank of HCPs and conventional 
DRAMs works well. But for an array 
of small-grain processors with on-chip 
memories, the search-based CxAM 
approach is more tractable. 

Combining a CxAM with software- 
based routines provides a range of 
tailored matching services with sliding 
power/price/throughput trade-offs. 
The FAIM-1 machine provides an ex- 
ample of this design. For each of 
thousands of processors, there is 
parallel CxAM hardware for mock uni- 
fication, a single, hard-wired, serial 
pipelined full unifier, and software 
support for post-unification matching 
features (attached predicates and 
demons). With such a hardware/soft- 
ware hierarchy, simple matches (like 
LISP's equal) run fast, whereas more 
complex matching services (such as 
KRLs— see reference I ) cost more in 
time due to the software component. 

In summary, matching is a common 
operation ripe for VLSI implementa- 
tion, but the complexity of match 
functions varies, l&ble 2 arranges a 
simple list of match operations and 
data types in order of complexity. 
Successful high-performance A I ma- 
chines will have to carefully decom- 
pose these functions into hardware 
and software components. 

Parallei^Processor 
Communications 

As already mentioned, processors 
working in parallel cannot communi- 
cate objects and messages by sharing 
a large common memory. Some sort 
of special message-passing (and for- 
warding) hardware is essential for ef- 



ficient handling of the traffic. In many 
general-purpose parallel processors, 
interprocessor communication is the 
computational bottleneck. 

Signal-to-Symbol 
Processing 

Despite all the attention given to 
speeding up high-level symbolic com- 
putation, within some AI applications 
the main processing bottleneck has 
been in the very-low-level processing 
of raw sensory data. Within many vi- 
sion systems, 90 percent or more of 
the run time may be incurred in the 
initial segmentation of the visual 
scene from pixels to low-level sym- 
bolic constructs (reference 16). More- 
over, limitations of the higher-level vi- 
sion processing can usually be traced 
to an inadequate initial segmentation 
(reference 4). Similar problems arise 
in many speech systems. In such 
cases, you should look to special- 
purpose VLSI processors to directly 
attack the problem. Examples include 
special image-processing chips (refer- 
ence 14), and speech chips (reference 
2). As array processors have shown, 
for these special processors to be 
usable by programmers they need to 
be very well integrated with the other 
hardware and software components 
of the system and as transparent as 
possible. Since most AI programmers 
are not good microcode hackers, you 
are in trouble if this is the only inter- 
face with a special device. 

Conclusion 

Opportunities for increased efficien- 
cy abound at all levels of AI systems 
if we only look, but to obtain the 
desired throughput increases all the 
potential improvements outlined here 
must be made. We must make hard 
trade-offs between traditional AI pro- 
gramming practices and the discipline 
necessary to construct algorithms that 
can make effective use of large multi- 
processors. We must compile our AI 
languages, and these compilers must 
influence instruction-set design. Key 
computational bottlenecks in AI pro- 
cessing must be attacked with custom 
silicon. There is a real need to use 

(continued) 




'UNDER $200 IN 
OEM QUANTITIES 



• 4-MHz Z80A CPU, 64K RAM, Z80A CTC, and 
2732 Boot ROM 

• Mini/Micro Floppy controller ( 1 -4 Drives, 
Single/Double Density, 1-2 sided, 40/80 track) 

• Only 5.75 x 7.75 inches, mounts directly to a 
5 1 1 A" floppy drive 

• Two RS232C Serial Ports (75-9600 baud 

and 75-38,400 baud), 1 Centronics Printer Port 

• Power Requirements: +5VDC at 0.75A; +12VDC 
at 0.05A/On-board - 1 2V Converter 

• CP/M 2.2 BDOS • ZCPR3 CCP 

• Enhanced AMPRO BIOS 

• AMPRO Utilities included; 

• Read/write to more than two dozen other 
formats (Kaypro, Televideo, IBM CP/M86...) 

• Format disks for more than a dozen other 
computers 

• Menu-based system customization 

• BIOS and Utilities Source Code available 

BOOKSHELF ™ ^ **> 

121 1 400KDSDD Drive $ 895.00 | flJBt. 

122 2 400KDSDD Drives 995.00 I ^^E 
142 2 800KDSQD Drives 1,195.00 \ % ^^H 

• Little Board CPU "=**" JH|| 

• Runs thousands of CP/M programs 

• Enhanced Operating System including ZCPR3 
CCP and FRIENDLY™ Integrated Operating 
Environment 

• Word Processing, Electronic Spreadsheet, 
Database Management, Spelling Checker all 
included (complete T/maker Pkg.) 

• t>Vi" high, 7Vi" wide, 1 0W deep, 1 2Vs lbs. 

SCSI/PLUS 'Adapter 

Compatible with most Z80 Systems 
(send $10 for complete specifications) 

• Mounts directly to Little Board qt/1 

• Multi-Master high-speed parallel bus 

• SASI-SCSI compatible 

• General purpose I/O expansion bus up to 
64 devices 

• Allows multi-Little Board Systems and resource 
sharing 

• Little Board hard disk software/source $79 QTY 1 

DISTRIBUTORS 

Argentina-Factorial, S.A 1-41-0018 

Australia-ASP Microcomputers .... 613-500-0628 
Belgium-Centre Electronique Lempereur . . 041-23-45-41 
Canada-Electronic Sales Assoc . . . (604) 986-5447 

Denmark-Danbit 03-66-20-20 

England-Quant Systems 01-534-3158 

Finland-Symmetric OY 358-0-585-322 

France-EGAL+ 1-502-1800 

Israel-Alpha Terminals 03-491695 

Spain-Xenios Informatica 3-593-0822 

Sweden-AB AKTA 08-54-20-20 

USA: Digital Distributors (CA) 408-423-1556 

Peripheral Business Systems (WA) . . 206-823-6661 
Dorado Business Systems (NY/NJ) .... 609-429-2243 

Z80A is a resistered trademark of Zilos, Inc. 
CP/M is a resistered trademark of Disital Research. 



COMPUTERS. INCORPORATED 

67 East Evelyn Ave. • Mountain View, CA 94041 
(41 5) 962-0230 • TELEX 4940302 

APRIL 1985 -BYTE 205 



ARCHITECTURES 



concurrency at all levels where it 
makes sense, but the overhead must 
be analyzed realistically. ■ 

ACKNOWLEDGMENTS 
The author would like to acknowledge the 
contributions of members of the FAIM-1 
project: Ken Olum for his collaboration on 
the instruction-set benchmarks. Ian Robin- 



son and Erik Brunvand for their VLSI 
CxAM designs, and Al Davis for overall ar- 
chitectural discussions. 

REFERENCES 

I . Bobrow, D., and T Winograd. 'An Over- 
view of KRI.rO, a Knowledge Representa- 
tion Language." Cognitive Science, vol. 1 . no. 

1, 1977. 

2. Burleson, W. "A Programmable Bit-Serial 




OEMS: Let Systems Strategies help you cover the large, profitable 
marketplace of IBM™ mainframe communications. Our software allows your 
computer system to emulate IBM terminals, workstations and printers. 

EXPERIENCE: As the first to develop 3270 SNA and 3270 BiSync sup- 
port under UNIX! W Systems Strategies' experience can save you development 
time and money. Let us keep up with the changing shades of Big Blue as IBM 
communications evolve. 

BROADEST PRODUCT RANGE: We have the broadest range of 
communications software available for UNIX and non-UNIX environments, 
allowing mini and micro computer systems to communicate with mainframes 
or networks using SNA/SDLC or BiSync. The CCITT X.25 interface is also avail- 
able. Our family of products can serve your growing information access needs, 
now and in the future. 

COMPLETE EMULATION: Systems Strategies provides a perfect match 
to Big Blue. Our products provide full SNA/3270, BSC/3270, SNA/RJE (3770) 
and BSC/RJE (2780. 3780. HASP) emulation. The integrated Applications Pro- 
gram Interface provides the capability for interactive transaction processing, file 
transfers and fully integrated applications across mainframe and workstation 
boundaries. No IBM host modification is required. 

PORTABILITY: All of our software is written in 'C\ using internal designs 
and architecture which make the communications and device emulation logic 
independent of the hardware and operating system, and thus easily portable. 

Call or write today for more information: 
Systems Strategies Inc. 225 West 34th St. New York, NY 10001 . (212) 279-8400. 



<$> 



Systems Strategies Inc. 

An AGS Company 

Experience... the main link in communications software 

iBW is 3 m*dem,w* of imematwfMl Business Machines Cmp Unix i\ a tMtiemwlc ol ai« r Bell LAxxAotm 



Signal Processing Chip." SM Thesis, MIT 
Department of Electrical Engineering and 
Computer Science, 1983. 

3. Deering, M.. J. Faletti. and R. Wilensky. 
"PEARI./-A Package for Efficient Access 
for Representations in LISR' Proc. IJCAI-81. 
Vancouver, B.C., Canada. August 1981, 
pages 930-932. 

4. Deering, M., and C. Collins. "Real-Time 
Natural Scene Analysis for a Blind Pros- 
thesis." Proc. IJCAI-81. Vancouver B.C., 
Canada. August 1 981. pages 704-709. 

5. Deering, M., and K. Olum. "Lisp and 
Processor Benchmarks." Unpublished 
FLAIR 'Iechnical Report, March 1984. 

6. Fateman. R. "Is a Lisp Machine Different 
from a Fortran Machine?" SICSAM. vol. 12, 
no. 3. August 1978. pages 8-11. 

7. Feldman, J., and P. Rovner. 'An Algol 
Based Associative Language." Commun. 
ACM. vol. 12, no. 8, August 1969. 

8. Foderaro. j. "The Franz Lisp System." 
Unpublished memo in Berkeley 42 UNIX 
Distribution. September 1983. 

9. Gabriel, R., and j. McCarthy. "Queue- 
based Multi-processing Lisp." Preprint, 
1984. 

10. Gajski, D.. D. Pradua, D. Kuck, and R. 
Kuhn. "A Second Opinion on Data Flow 
Machines and Languages." IEEE Computer. 
vol. 15, no. 2, February 1982, pages 
58-69. 

11. Genesereth. M. "An overview of Meta- 
Level Architecture." Proc. AAAI-83. 
Washington. D.C., 1983. 

12. Griss. M., and E. Benson. "Current 
Status of a Portable Lisp Compiler." 
SIGPLAN. vol. 1 7, no. 6. in Proc. SIGPLAN 
'82 Symposium on Compiler Construction. 
Boston, MA. June 1982, pages 276-283. 

13. Knight, T, jr., D. Moon. J. Holloway, and 
G. Steele, jr. "CADR." MIT AI Memo 528, 
March 1981. 

14. Kurokawa, H., K. Matsumoto, M. 
Iwashita, and T. Nukiyama. "The Architec- 
ture and Performance of Image Pipeline 
Processor." Proc. VLSI '83. Trondheim, Nor- 
way. August 1983. pages 275-284. 

1 5. Lampson. B.. and K. Pier. "A Processor 
for a High-Performance Personal Com- 
puter." Proc. 1th Symposium on Computer Ar- 
chitecture. SIGArch/IEEE. La Baule, May 
1980, pages 146-160. 

16. Perkins, W. "A Model Based Vision Sys- 
tem for Industrial Parts." IEEE Irans. Corn- 
put., vol. C-27, 1978. pages 126-143. 

17. Warren. D. H. "Applied Logic— Its Uses 
and Implementation as a Programming 
Tool." Ph.D. Dissertation. University of 
Edinburgh. 1977. Available as 'Iechnical 
Note 290, Artificial Intelligence Center. SRI 
International. 



206 BYTE • APRIL 1985 



Inquiry 378 



A FEW NEAT THINGS 

YOU CAN DO WITH 

KODAKS CAT QUICK 

INSTANT SLIDE-MAKERS 



I ", 




Kodak 

Instagraphic" bJ Cd 
color film _.. , 

Slide Print 




"Make your slides 

one by one, 

save on film 

and have some fun! 

Correct mistakes, 

add new facts, 

give a show 

the punch it lacks. 

"Take CRT data 

off the screen, 

editfreely 

in between. 



'Mount your slides 
fast and clean — 
project bright hues 
on the screen. 
%•# 

'Meet tight deadlines, 

do a whole show, 

win new clients, 

hear 'bravo. ' 

"Waste no money, 

waste no time, 

get results that are 

sublime. " 





"If you can't do without these cat-quick instant slide-makers another minute, 

contact your dealer in Kodak audiovisual products, listed in the Yellow Pages under 'AV Equipment and Supplies.' 

Or, phone 1 800 44KODAK, Ext 293 (1 800 445 6325, Ext 293). 

Tell 'em Slide Cat sent you!" 




The system includes KODAK INSTAGRAPHIC Copy Stand, KODAK INSTAGRAPHIC CRT Slide Imager and CRT Adapters, KODAK INSTAGRAPHIC Color Slide Film, and KODAK INSTAGRAPHIC Slide Mounter and Mounts. 

© Eastman Kodak Company, 1985 



Inquiry 134 



APRIL 1985 'BYTE 207 



"Despite the recent press notices, 
multiuser microcomputers aren't 

anything new!" 



This is the first in a series of 
discussions with Rod Coleman, 
President of Stride Micro 
(formerly Sage Computer) on 
the 68000 multiuser market 
audits current environment 

Q: Why do you say that? 
RC: "The technology to build a 
high performance multiuser sys- 
tem has been around for five 
years. And while some of the 
leaders in this industry have been 
pretending that micro multiuser 
didn't exist, we've been shipping 
complete systems for nearly three 
years. The benefits of multiuser 
are undeniable; it is more cost ef- 
fective, and offers greater flexibil- 
ity and utility. But until just re- 
cently, the marketing pressure to 
be compatible instead of being 
better, has blinded the industry." 

Q: What do you mean? 
RC: "Well, for example, the 
Motorola 68000 processor intro- 
duced 16/32-bit technology to the 
personal computer world a long 
time ago. It was fully capable of 




"A surprising feature is 
compatibility. Everybody 
talks about it, but nobody 
does anything about it." 



meeting high performance and 
multiuser design requirements in 
1980. Instead of this trend taking 
off, most energy was spent pro- 
moting 8088/8086 products that 



were clearly inferior from a tech- 
nical point of view. This phenom- 
enon leads me to believe that they 
will soon rewrite the old proverb: 
'Build a better mousetrap and the 
world will beat a path to your 
door,' but only if they can find the 
way through the marketing fog." 
Q: Are things changing now? 
RC: "Yes and no. With the busi- 
ness world starting to take more 
and more interest in microcompu- 
ter solutions, the advantages of a 
solid multiuser system couldn't be 
kept hidden forever; companies 
like ours and a few others were 
beginning to make a dent. Instead 
of taking a fresh approach, some 
of the newest multiuser offerings 
will probably only give the tech- 
nology an undesei-ved black eye! 
Multiuser is far more than the 
ability to plug in more terminals. 
It involves things like machine 
compatibility, fast processors, 
adequate memory, large storage 
capacities, backup features, net- 
working, and operating system 
flexibility." 

Q: Is this what makes the new 
Stride 400 Series different? 
RC: "Exactly. That sounds self- 
serving, but it's true. Today a 
number of companies are intro- 
ducing their first multiuser sys- 
tem. We've been building and 
shipping multiuser machines for 
almost three years. We know the 
pitfalls, we've fallen into some of 
them. But we have learned from 
our mistakes." 
0: Give me some examples. 
RC: A hard disk is almost manda- 
tory for any large multiuser in- 
stallation. Yet, backing up a hard 
disk can be a nightmare if you 
only have floppies to work with. 
That's why we've added a tape 
backup option to all the larger 
Stride 400 Series machines. It's 
irresponsible for a manufacturer 
to market a multiuser system 
without such backup. Another 
good lesson was bus design. We 
started with one of our own de- 
signs, but learned lhat it's impor- 
tant not only to find a bus that is 
powerful, but also one that has 
good support and a strong future 
to serve tomorrow's needs. We 




'The marketing pressure 

to be compatible 

instead of being better, 

has blinded the industry." 



think the VMEbus is the only de- 
sign that meets both criteria and 
thus have made it a standard fea- 
ture of every Stride 400 Series 
machine." 

0: What are some of the other 
unique features of the 400 Series? 

RC: "A surprising feature is com- 
patibility. Everybody talks about 
it, but nobody does anything 
about it. Our systems are com- 
pletely compatible with each other 
from the 420 model starting at " 
$2900, through the 440, on to the 
powerful 460 which tops out near 
$60,000. Each system can talk to 
the others via the standard built- in 
local area network. Go ahead and 
compare this with others in the in- 
dustry. You'll find their little ma- 
chines don't talk to their big ones, 
or that the networking and multi- 
user are incompatible, or that they 
have different processors or 
operating systems, and so on." 
0: When you were still known as 
Sage Computer, you had a reputa- 
tion for performance, is that still 
the case with the new Stride 400 
Series? 

RC: "Certainly, that's our calling 
card: 'Performance By Design.' 
Our new systems are actually fas- 
ter; our standard processor is a 10 
MHz 68000 running with no wait 



states. That 

crease 

And, we have 



gives us a 25% in- 
over the Sage models, 
a 12 MHz pro- 



cessor as an option. Let me add 
that speed isn't the only way to 
judge performance. I think it is 
also measured in our flexibility. 
We support a dozen different 
operating systems, not just one. 
And our systems service a wide 
variety of applications from the 
garage software developer to the 
corporate consumer running high 
volume business applications." 
Q: Isn't that the same thing all 
manufacturers say in their ads? 
RC: "Sure it is. But to use another 
over used-term, 'shop around'. 
We like to think of our systems as 
'full service 68000 supermicro- 
computers.' Take a look at every- 
one else's literature and then 
compare. When you examine 
cost, performance, flexibility, and 
utility, we don't think there's any- 
one else in the 
race. Maybe 
that's why we've I 
shipped and 
installed more 
multiuser 68000 
systems than 
anyone else." 







MICRO 



Formerly Sa^c Computer 

For more information on Stride or 
the location of the nearest Stride 
Dealer call or write us today. 
We'll also send you a free copy of 
our 32 page product catalog. 

Corporate Offices: 
4905 Energy Way 
Reno, NV 89502 
(702)322-6868 

Regional Offices: 
Boston: (617) 229-6868 
Dallas: (214) 392-7070 



208 BYTE • APRIL 1985 



Inquiry 367 



ARTIFICIAL INTELLIGENCE 



THE LISP 

REVOLUTION 



A LITTLE MORE than five years ago, 
a friend from a major computer cor- 
poration came into my office to talk 
about developing artificial-intelligence 
(AI) packages. "How should we get 
started?" he asked. My answer was 
gloomy: 

First, get together a million 
dollars or so and buy one of 
Digital Equipment Corporation's 
(DEC'S) big mainframe com- 
puters. Next, decide what 
dialect of LISP to run, choosing 
from MacLISP, InterLISP, Por- 
table Standard LISP, Franz LISP, 
and many others. Then try to 
get a tape from somewhere and 
find someone who can install it. 
You'll probably find that the 
documentation is not particular- 
ly complete, and software main- 
tenance will be a problem. And 
if you bet on the wrong dialect 
now, changing to another will 
certainly take a lot of work. 

Today, by contrast, I wrote this arti- 
cle using an editor written in LISP. The 
editor is part of a $500 LISP system 
that I use on a $4000 personal com- 
puter. I wrote and tested a program 
in the $500 LISP that I will be able to 



by Patrick H. Winston 

LISP is no longer 
limited to a lucky few 



run without change on a supersophis- 
ticated, superpowerful Symbolics 
3670. TWo things have made this prog- 
ress possible. First, the recent avail- 
ability of personal computers with 
512K bytes of memory, which is 
enough to learn LISP and to start ex- 
periencing the excitement of its appli- 
cations in AI. Second, Common LISP 
emerged as the heir apparent to all 
previous LISP dialects. The same 
Common LISP program you write on 
a personal computer can be trans- 
ferred later to a heftier machine, as 
needs and resources permit. 

Data General, DEC, Hewlett- 
Packard, LISP Machine, Symbolics 
Inc., Tfexas Instruments, and Xerox all 
sell versions of Common LISP for 
their own machines, and Common 
LISP is available for personal com- 
puters as well. Suddenly* serious LISP 
programming is no longer limited to 
a lucky few. 

LISP Means Symbol 
Manipulation 

The reason that LISP is different from 
most other languages is that LISP 
focuses on symbol manipulation 
rather than on numbers. To highlight 
the difference, I'll lay out some ex- 



amples of symbol manipulation taken 
from the Mover program, one that 
moves toy blocks like those shown in 
figure I . Specialized problem-solving 
procedures inside the Mover program 
enable it to get rid of obstacles that 
are in the way. These problem-solving 
procedures use and maintain informa- 
tion about what each object supports. 
For example, B3 supports B1 and B4. 
The Mover program knows this 
because the symbols B1 and B4 are 
found in a list obtained from B3 by 
the get instruction: 

(get 'B3 things-supported) 
-> (B1 B4) 

Now suppose we have attached the 
list of things that B3 supports to a 
variable called obstacles. LISP'S 
symbol-manipulation primitives allow 
for quick answers to basic questions: 

How many obstacles are there? 
(length obstacles) — > 2 

[continued) 

Patrick Henry Winston (MIT Artificial In- 
telligence laboratory. 545 Technology Square, 
Cambridge, MA 02139) has a B.S., M.S., 
and Pft.D. from MIT. He does research on 
computer learning and directs the Artificial 
Intelligence Laboratory at MIT. 



APRIL 1985 -BYTE 209 



LISP REVOLUTION 



What's the first obstacle? 

(first obstacles) — > B1 

Is Bl an obstacle? 

(member B1 obstacles) — > t 

Is B4 the first obstacle? 

(eq B4 (first obstacles)) — > nil 

Note that t is LISP notation for true, 
and nil is LISP notation for false. Other 
symbol-manipulation primitives 
facilitate changes to the list and test 
to see if it is empty: 

Remove B4 from the list: 
(setf obstacles 

(remove B4 obstacles)) — > (B1) 
Add B7 to the list: 
(setf obstacles 

(cons B7 obstacles)) — > (B7 B1) 
Is the obstacle list empty? 
(endp obstacles) — NIL 

Once changed, the obstacle list can 
be reattached to the symbol B3 from 



which it came: 

(setf (get B3 things-supported) 
obstacles) 

All these questions and changes are 
simple, low-level examples of the sym- 
bol manipulation for which LISP is 
famous. Similar symbol-manipulation 
feats enable the Mover program to 
keep track of what is done. Mover's 
history-maintaining procedures con- 
tain instructions that examine and 
change symbolic expressions describ- 
ing every move. Those symbolic de- 
scriptions make it possible to answer 
questions like: Did you move block 
B7? How did you move block B7? 
Why did you move block B7? When 
did you move block B7? 

Thus symbol manipulation enables 
Mover to exhibit a humanlike, intro- 
spective ability to explain itself. Sym- 
bol manipulation is so intimately as- 



Listing I : A procedure found inside the Mover program illustrating the problem- 
reduction heuristic. 



(defun put-at (object place) 
(grasp object) 
(move-object) 
(un grasp object)) 



; Define the PUT-AT procedure. 

; Grasp the object— may require moving obstacles. 

;Move the object— easy. 

;Move the object— easy, too. 



- TRAY: THE BLOCKS WORLD 



SLIDE 9 OF 10- 



11 



■'I 


B4 



B3 





B7 


B8 








B5 




B2 








B6 



THE OBJECTIVE HERE IS TO PUT BLOCK B6 ON TOP OF BLOCK B3, CALLED FOR 
BY THE FOLLOWING INSTRUCTION: 

(PR0GN (PUT-ON ' B6 ' B3) ' DONE). 

SPACE-NEXT SLIDE 



Figure I : A picture of the blocks world in which the Mover program operates. 



sociated with AI. it's no wonder that 
LISP is the key language used in AI 
applications. 

Computer Professionals 
Should Know LISP 

LISP experts argue endlessly about 
why LISP remains the primary lan- 
guage for AI and about why it is 
becoming a language for general- 
purpose programming as well. Some 
say LISP'S primitives and features ex- 
plain all. Others claim LISP owes its 
power to its tradition of interactive 
programming and powerful debug- 
ging tools. Still others cite its simple 
hierarchy-encouraging procedure- 
definition mechanism. [Editor's note: for 
a short introduction to LISP, see "LISP for 
the IBM Personal Computer" by ]ordan Bortz 
and ]ohn Diamant, ]uly 1984 BYTE, page 
281.| 

Increasingly, LISP is becoming a 
more generally used language, not 
strictly limited to applications in AI. 
Because many of the systems of AI 
are large, LISP has become a lan- 
guage suited to large-system imple- 
mentation. For example, it has been 
used with outstanding success in 
building the entire operating systems 
of the LISP machines now offered by 
a growing number of major com- 
panies. 

Such successes are one reason why 
many computer-science educators 
believe that an understanding of LISP 
is de rigueur for computer science 
majors. Another is that LISP has been 
proven an excellent language for il- 
lustrating computing concepts. At 
MIT, for example, a dialect of LISP 
called Scheme has been used for 
years as the primary language in the 
basic introductory subject on pro- 
gramming languages. 

LISP Is Both Old and New 

Before you learn any computer lan- 
guage, you should ask if the language 
is too old to be modern or too new 
to be mature. What about LISP? Is it 
too old or too new? Many people are 
surprised to learn that the history of 
LISP goes back to the late 1950s, 
making LISP nearly as old as FOR- 

[continued) 



210 BYTE • APRIL 1985 



Lyco Computer Marketing & Consultants 

"PEOPLE WHO KNOW WHAT THEY WANT AND KNOW HOW TO USE IT RECEIVE THE LOWEST PRICES AT LYCO" 



SAVE- PRINTERS 



GEMINI 10X 

$219 * 



MANNESMANN 
TALLY 

SPIRIT 80 $255.00 

MTL-160L $549.00 

MTL-180L $739.00 

JUKI 

Juki 6100 $389 

Tractor Kit $119 

Epson 

RX80 $229 

RX80FT $269 

RX100 $369 

FX80 $369 

FX100 $555 

JX80 . S1089 

LOl500P(mCludesktt) $1149 
LOI 500S(includes kit) . . $529 



Citoh 

Prowriter8510A .... $269 

8510BC2 $399 

8510BP1 $349 

8510SP $399 

8510SR $409 

8510SCP $419 

8510SCR $499 

1550P $489 

1550BCD $539 

A10-20P $469 

Fl040PUorRDU . . $899 
F1055PU or RUD $1099 

DIGITAL 
DEVICES 



16K printer buffer 
32K printer buffer 
64K printer buffer 



9975 
1 19.75 
169 95 



BLUE CHIPS 

M12010.... $275 

M12010C-64 $275 

D4015 $1389 

OKI DATA 

Okimate 10 CALL 

82A $299 

83A $549 

84 $649 

92 $349 

93 $569 

LEGEND 

880 $229.00 

1000 $279 

1200 CALL 

1500 CALL 

1081 CALL 



CARDCO 



LQ1 Printer 379.00 

L03 Printer 299.00 

C/?6 C-64 Graphics .... 65.75 

C/^BC-64 39.75 

C/?AT Atari 55.00 

Smith Corona 

Fastext 80 189 00 

D100 219.00 

D200 399.00 

D300 519.00 

L1000 339.00 

Corona 

LP300 Laser Printer , 2699. 
200361 Toner Cartridge . . 89 

NEC 

NEC 8025 $699 

NEC 8027 $359 



^ NOW STOCKING CITIZEN & OLIVETTIC PRINTERS it 



STAR 
MICRONICS 



Gemmt lOx 
Gemini 15x 
Delta 10 
Delta 15 
Radix 10 
Radix 15 
Powertype 
Sweet P 1 00 



$219 
S345 
S339 
S449 
S499 
S589 
S309 
5549 



PANASONIC 

1090 $219 

1091 '$259 

1092 $415 

1093 $599 

3151 $469 

PANASONIC 

1091 $259 



MONITORS 



TAXAN 

210 Color RGB 255 

100 Green 115 

105 Amber 125 

400 Color RGB 295 

410 Color RGB 349 

420 Color IBM 449 

121 Green IBM 145 

122 Amber IBM 149 

ZENITH 

ZVM 122A Amber 86 

ZVM 1 236 Green 82 

ZVM 124 Amber- IBM .... 129 

ZVM 131 Color 275 

ZVM 133 RGB 389 

ZVM 1 35 Composite 449 

ZVM 1 36 Hi Res Color ... 589 
GORILLA 

12" Green s 82 00 

12" Amber $ 88.00 



AMDEK 

300 Green 125 

300 Amber 145 

310 Amber- IBM 159 

Color 300-Audio 265 

Color 500-Composite 379 

Color 600 545 

Color 700 635 

Color 710 675 

NEC 

JB 1260 Green 99.00 

JB 1201 Green 135.00 

JB 1205 Amber 145.00 

JC 1 2 1 5 Color 25500 

JC 1216 RGB 399.00 

JC 460 Color 349.00 

SAKATA 

SC-1 00 Color 229 

STSI Tinstand 29 

SG 1000 Green 99 

SA 1000 Amber 109 



MODEMS 



NOVATION 

J-Cat $89 00 

Cat $129 00 

Smart Cat 103/ S 1 69 00 

Smart Cat 103/212 , . .S3890C 

AutoCat .$209 00 

212 Auto Cat $539 00 

Apple Cat II 5239 00 

2 1 2 Apple Cat 5439 00 

Apple Cat 212 5249 00 

MICROBITS 

MPP1000C $109 00 



ANCHOR 

Volksmodem . $55 99 

Mark VII S95 99 

lauto ans/dial) 
Mark VII. 5259 00 

I 1 200 band) 



Hayes 



Smartmodem 300 $199 00 

Smartmodem 1200 ... $469.00 
Smartmodem 1 200b. . . $399 00 

Micromodem lie $249.00 

Micromodem 100.. .. .$289 00 
Chfoograph $179.00 



TELELEARNING ^' rid 9 eC - 64 -Can 

CM-250Commodore64. CALL 

Telecommunications 



AP-250 Apple CALL 

113-250 IBM CALL 



C-64 

Mitey Mo C-64 



Call 
Call 



I 



DISK DRIVES 





DISKETTES 


SKC 

(Box 10) 
SKC-SSSD 


maxell mmmmm 

5VMD1 $17.95 bx^X-;^ Sx*>i>£v 

5' /'MD-2 523.95 ^wa«»>JK^ 

box 10) ELEPHANT 

(Box 10) 

.. $12 99 5VSSSD $14.99 

.. $15.99 5VSSDD $16.99 

. $18.99 5'«"DSDD $21.99 


SKC-SSDD 


SKC-DSDD 





IBM-PC COMPATABLE 



TOLL FREE 1-800-233-8760 



MSD INDUS 

SD1 DRIVE $259.00 i$g GT ATARI $219.00 

SD2 DRIVE $475.00 W GT COMMODORE .... $249.00 






CORONA 

PPC22A 

Portable 256K-Amber 
PPC22G 

Portable 256K-Green 
PPCXTA 

Portable256K-lOMeg 
C0R128K 128K RAM. 


Zenith 

Z-150 Call 

Columbia Data 

51995 1600 Call 

Televideo 

51995 JST605 Call 

$3295 Leading Edge 

$ 159 PC Compatable .... 


Microprose 

Soio Flight 522.75 

NATO 522. 75 

Graphics Tablet 

Supersketch $49.95 

Kolala S99 9S 


Illustrator 


599 95 


Logo Design .. 
- aN Grams Spell... 


...$27.95 
...527.95 






Inquiry 244 

TO ORDER 



CALL TOLL FREE 



or send order to 



LyCO Computer 
P O Box 5088 
Customer Service 1 -71 7-327-1 825 Jersey Shore PA i 7 740 



800-233-8760 



RISK FREE POLICY 

In-stock item shipped within 24 hours of order. No deposit on COD. 
orders. Freeshipping on prepaid cashorderswithin the Continental U.S. 
PA residents add sales tax. APO.FPO, and Inter national orders add $5.00 
plus 3% for priority mail service. Advertised prices show4% discount for 
cash, add 4% for MasterCard or Visa. Personal checks require 4 weeks 
clearance before shipping. All items subject to change without notice. 
For your protection, we check for stolen credit cards. 



LISP REVOLUTION 



TRAN. Unlike FORTRAN, however, the 
LISP of today is much different from 
the LISP of 2 5 or even 5 years ago. 
Why did FORTRAN calcify while LISP 
continued to evolve vigorously? The 
principal reason is that FORTRAN was 
suited to commercial applications ear- 
ly on, whereas LISP was not. LISP re- 



quires a lot of memory, and in the 
days when memory was expensive, 
there was no commercial purpose 
served by early standardization of 
LISP. Consequently, LISP dialects pro- 
liferated, LISP innovations thrived, 
and cross-fertilizations from one 
dialect of LISP to another kept each 



-••GET-SPACE 



MAKE-SPACE FIND-SPACE 




^6ET-RID-0F- 

*{ ) 

PUT- AT I CLEAR -TOP 












D E 

/ 

START GOAL 

\ / \ 

A B C 


PLACE 

START 

A 

B 


X 


2 

5 


Y 

2 







C 


10 







D 


2 


4 




E 


7 


4 




GOAL 


7 


2 











Figure 2: Graphical description of how 
all the procedures in Mover work together. 



Figure 3: An example of a maplike net. 



(make-rule identify"! 6 
if ((> animal) is a (> type)) 

((< animal) is a parent of (> child)) 
then ((< child) is a (< type))) 



::,-■,. 



Figure 4: A rule ready for inclusion in a USP-based animal-recognition system. 



Rule IDENTIFY1 asserts 

because (ROBBIE 

Rule IDENTIFY5 asserts 

because (ROBBIE 

Rule IDENTIFY9 asserts 

because (ROBBIE 

(ROBBIE 

(ROBBIE 

(ROBBIE 

Rule IDENTIFY16 asserts 

because (ROBBIE 

(ROBBIE 

Rule IDENTIFY16 asserts 

because (ROBBIE 

(ROBBIE 

Rule IDENTIFY16 asserts 

because (ROBBIE 

(ROBBIE 



(ROBBIE IS A MAMMAL) 

HAS HAIR) 

(ROBBIE IS A CARNIVORE) 

EATS MEAT) 

(ROBBIE IS A CHEETAH) 

HAS DARK SPOTS) 

HAS TAWNY COLOR) 

IS A CARNIVORE) 

IS A MAMMAL) 

(BOZO IS A MAMMAL) 
IS A PARENT OF BOZO) 
IS A MAMMAL) 

(BOZO IS A CARNIVORE) 
IS A PARENT OF BOZO) 
IS A CARNIVORE) 

(BOZO IS A CHEETAH) 
IS A PARENT OF BOZO) 
IS A CHEETAH) 









Figure 5: Output fragment showing how a forward-chaining rule moves from facts to 
conclusion. 



about as powerful as any other. Now, 
however, memory is relatively cheap, 
which is attracting many commercial 
users to LISP, thus increasing the need 
for a standardized LISP for applica- 
tions and instruction. Fortunately the 
2 5 years LISP has had to mature 
means that many new features have 
been incorporated into the Common 
LISP standard. Here are some of my 
favorites: 

• a powerful structure-defining 
primitive that automatically generates 
procedures for accessing record fields 

• a generalized assignment primitive 
that works for values, properties, ar- 
rays, and structures 

• a flexible template-filling mechan- 
ism that enables complicated expres- 
sions to be constructed easily and 
transparently 

• a strong macrocomputer capability 
that enables users to dream up their 
own syntax 

• a rich variety of argument-passing 
options, including optional arguments 
with specifiable defaults as well as 
arguments associated with param- 
eters by way of key words 

• a modern, stream-oriented input/ 
output (I/O) system 

How to Learn LISP 

I think the best way to learn LISP is 
interactively. There are quite a 
number of reasons why such inter- 
active learning is good. For instance: 
It's fun to do on-line puzzles; it's bor- 
ing to do exercises in a book. It's 
easy to demystify difficult points by 
trying things out immediately- It's 
motivating to watch interesting pro- 
grams work. 

In any case, one factor stands undis- 
puted: LISP programming is fun. Let's 
look at a few taken from an on-line, 
interactive instruction package known 
as the San Marco LISP Explorer. 
| Author's note: The San Marco LISP Ex- 
plorer package is sold by Gold Hill Computers 
Inc., 163 Harvard St., Cambridge, MA 
02139.] We will examine the Mover 
blocks-manipulation program, the 
search program, the rule-based ex- 

[contimed) 



212 B YTE • APRIL 1985 



It doesn't take much to make your 
programs run up to 20 times faster. 



$ 49.95tobeexact. 



If you've been writing programs for 
your Commodore 64, Apple 
He or Apple lie in BASIC you can take 
a giant step forward in speed of execu- 
tion and in programming productivity 
for just $49.95. 

You can get program performance 
that you only thought possible from 
machine language programs. While still 
using a powerful, understandable high- 
level language. A language that's similar 
to Pascal, but much easier to learn and use. 

You can create programs with our 
advanced, full-screen editor-much Q 

like you would on a word processor, and 
it even locates your compilation errors. 

And when you com 
pile your programs, 
you have a fast one- 
pass compiler, a recursive descent compiler that can 
compile a 100-line source program in 10 seconds or less. 

PROMAL™ also gives you an elegant operating 
system "Executive;' which includes powerful file, 
program and memory management commands and 
even I/O redirection. 

You get all of that with PROMAL-improved 
programming productivity, faster compile and run time 
and power that you may never have thought possible. 
PROMAL -f or the beginning or advanced programmer. 

Whether you are just beginning to write or are 
an experienced programmer, you can be more ^ 

productive with PROMAL (PROgrammer's 
Micro Application Language). It's easier to 
learn than Pascal, C or Forth. It provides 
you with a full range of powerful structured 
statements like IF-ELSE, WHILE, REPEAT, FOR and 
CHOOSE. And, because indentation is part of the 
language's syntax, it helps you write programs neatly 
and logically. There are no line numbers to worry about, 
and since comments don't take up memory space, you 
can document your programs completely. 




documentation and PROMAL system diskette 
including sample programs) for just 
$49.95. There's a 15-day, no-risk 
moneyback guarantee. And the entire 
$49.95 may be credited against later 
purchase of the "Developer's Version!' 
The "Developer's Version" -all the 
components of the "End User" system 
plus the "run time" object module gen- 
eration capability, additional documenta- 
tion and an unlimited right to sell or 
distribute PROMAL applications-is 
only $99.95. 

Or-for only $10.00 plus $2.50 postage 
and handling you can get the PM-100 demo 
system. It includes a 32-page manual and all the 

capabilities of the 
PM-200 except the 
ability to print or save 
files to disk. It's a very inexpensive way to explore the 
wonders of PROMAL. 

Our Guarantee.Tvy PROMAL for 15 days. If you are 
not completely satisfied, return it to us undamaged 
and we'll refund your money. No questions asked. 
Dealer inquiries invited. 

For quicker response on credit card orders, 
callTollFree: 1-800-762-7874 

... -•;.:-;: '£'& '".- In NC: 919-787-7703. 



SOFTCON 

SeeusatSOFTCON 

Booth 1901 



COMMODORE 64 BENCHMARK 






(Sieve of Eratosthenes) 








PROMAL 


BASIC 


COMAL 


FORTH 


PASCAL 


Execution Time (sees.) 


30 


630 


490 


51 


55 


ObjectCode Size (bytes) 


128 


255 


329 


181 


415 


Program Load Time (sees. 


3.2 


3.8 


6.3 


11.2 


23.5 


Compile Time (sees.) 


8.5 


- 


- 


3.9 


108 




M/+I 



Systems Management Associates 
3700 Computer Drive, Dept. PB-3 
Raleigh, North Carolina 27609 



PROMAL -a language especially for small systems. 

Unlike languages developed for larger systems and 
squeezed into small systems environments, PROMAL 
was conceived and developed specifically for the small 
system. With PROMAL there's finally a language created 
for the environment in which you work. 

Speed up your programs and step up your 
programming productivity. 
You get all of that speed and productivity- with the 
PROMAL PM-200 "End-User" system (220 pages of 



Card Number 



Signature 



Order Form 
Please send me my copy of PROMAL 

My system is (check one): □ Commodore 64 O Apple He D Apple lie 
PROMAL Package Desired (check one): 

□ PM-200 (for systems listed above] $49 .95 plus $5.00 tor shipping and handling at a 
total cost of$54. 95. Satisfaction Guaranteed. 

□ PM-300 Developer's Version S99.95 plus S5.00 for shipping and handling for a total 
cost of'$104.95. Satisfaction Guaranteed. 

□ PM-100 demo diskette $10.00 for the diskette plus $2.50 for postage and handling for a 

total cost ol'Sl2.50. (Non-refundable.) 

□ My checkisenclosed. □ Please charge my purchase to my □ Visa □ Mastercard 



Expiration Date 



City, State, Zip 



North Carolina Residents add 4-1/2% sales tax. 
Foreign orders add Si 5.00 additional shipping and handling. 



Inquiry 377 



APRIL 1985 -BYTE 213 



LISP REVOLUTION 



Listing 2: A search program that finds paths through maplike nets such as the 
one in figure 3. 



(defun start-depth (start goal)) 
(depth (list (list start)) 
goal)) 



;Make a one-partial-path queue. 
;Pass along name of goal place. 



(defun depth (queue goal) 
;;lf no other partial paths, quit: 
(if (null queue) 
nil 

;;Otherwise, if goal found, quit: 
(if (equal goal (first (last (first queue)))) 
(first queue) 

;; Otherwise, expand first partial path 
;;and add to FRONT of queue: 
(depth (append (expand (first queue)) 
(rest queue)) 
goal))))) 

(defun expand (path) 
(let ((reversed-path (reverse path))) 
;;Turn the new partial paths right way around: 
(mapcar 'reverse 
;;Get rid of partial paths that close on themselves: 
(remove-if '(lambda (new-path) 

(member (first new-path) (rest new-path))) 
;;Make one new partial path for each neighbor: 
(mapcar '(lambda (neighbor) (cons neighbor reversed-path)) 
;;Get neighbors: 
(get (first reversed-path) 'neighbors)))))) 



Listing 3 : The expression-matching procedure in any rule-based expert system 
must compare expressions and produce a list of pattern-match pairs. 

* (match '((> animal) is a (> type)) ; First argument is a pattern. 

'(Robbie is a Cheetah) ;Second argument is an assertion. 

nil) Third is a list of prior pattern-match 

; pairs, none in this example, 
((animal robbie) (type cheetah)) The answer— a list of pattern-matches. 



Listing 4: A matcher program for a rule-based expert system. 


(defun match (p d matches) 




(cond ((and (endp p) (endp d)) 


Succeed. 


(cond ((endp matches) t) 




(t matches))) 




((or (endp p) (endp d)) nil) 


Fail. 


((equal (first p) (first d)) 


Identical first elements. 


(match (rest p) (rest d) matches)) 


Match the rest. 


((atom (first p)) nil) 


Losing atom. 


((equal (first (first p)) '>) 


Match > variable. 


(match (rest p) (rest d) 




(shove-value (second (first p)) 




(first d) 




matches))) 




((equal (first (first p)) '<) 


Substitute variable. 




{continued) 



pert system, and the natural-language 
interface. 

Planning 

in the Blocks World 

LISP programs are generally ex- 
amples of the problem-reduction 
heuristic; that is, to solve a hard prob- 
lem you must break it up into simpler 
subproblems. The problem-reduction 
heuristic can be seen in the simple 
Mover program. Listing 1 is a pro- 
cedure found inside the Mover pro- 
gram that breaks the problem of put- 
ting an object somewhere into three 
subproblems: grasp it move it, and 
ungrasp it. Figure 2 is a graphical 
description of how all of the pro- 
cedures in Mover work together. LISP 
encourages the creation of layered 
programs, like Mover, wherein big 
problems are broken down succes- 
sively into smaller and smaller 
problems. 

Searching 

in the Map World 

Search techniques are commonly 
used in AI to solve problems. Here 
are some examples: 

• finding a route through a highway 
net 

• finding a way to put together a 
motor 

• understanding a written database 
request 

• learning to recognize a plant 
disease 

Abstractly, search problems all 
amount to finding a way through 
some sort of maplike net. Figure 3 is 
a sample of such a net. The goal is 
close to place E, but there is no direct 
connection; E is a dead end. There 
are two ways to go from B to the goal: 
directly, and indirectly, through C 
Listing 2 shows a page of LISP defin- 
ing a search program that finds paths 
through these maplike nets. Although 
you won't understand much of the 
program if you don't know LISP yet. 
you may enjoy looking at its overall 
structure and simplicity. With a little 
more effort, you can define a search 

[continued) 



214 BYTE • APRIL 1985 




VVtVtVtVfSV 



All Airlines Depart From ThisTerminal. 




Presenting Travelshopper 
. . . new from CompuServe 
and TWA, 

Now you can save time and money 
by getting information and reservations 
on virtually any flight on any airline — 
worldwide — from one source. It's TWA's 
new Travelshopper, available now through 
CompuServe's Information Service. 

With Travelshopper, you scan flight 
availabilities, discover airfare bargains 
and order tickets.. .on your own personal 
computer... at home or in the office. 

You also receive automatic member- 
ship in TWA's Frequent Flight Bonus SM 
program. And you can build bonus points 
by staying at Marriott and Hilton hotels 
and by using Hertz Rent-A-Car. 

Besides Travelshopper, CompuServe 



offers an ever-growing list of other travel- 
oriented on-line services. 

The Official Airline Guide 
Electronic Edition lists direct and 
connecting flight schedules for over 700 
airlines worldwide plus over 500,000 
North American fares. 

A to Z Travel /News Service gives 
complete information for over 20,000 
hotels worldwide plus latest travel news. 

Discover Orlando provides 
complete prices, hours and features 
on all of Central Florida's attractions 
and accommodations. 

West Coast Travel offers travel infor- 
mation for the western states. 

Pan Am's Travel Guide contains 
up-to-date information on immigration 



and health requirements for most 
foreign countries. 

And TravelVisiori* provides complete 
automotive information including road 
maps and personalized routing service. 

Letyour travel plans really take off. 
Use Travelshopper and lots, lots more 
from CompuServe. 

To buy a CompuServe Starter Kit, see 
your nearest computer dealer. To receive 
our informative brochure, or to order 
direct, call or write: 

CompuServe 

P.O. Box 20212, 5000 Arlington Centre Blvd., 
Columbus, Ohio 43220 

1-800-848-8199 

In Ohio, Call 1-614-457-0802 Inquiry 77 



Travelshopper and Frequent Flight Bonus are Service marks of TWA. 



An H&R Block Company 



LISP REVOLUTION 



(match (cons (pull-value (second (first p) matches) 
(rest p)) 
d 
matches))))) 

This matcher happens to use two auxiliary procedures: 

(defun pull-value (variable a-list) 
(second (assoc variable a-list))) 

(defun shove-value (variable item a-list) 
(append a-list (list (list variable item)))) 



Listing 5: A program that matches sentences against a suitable representation 
of semantic grammars and activates the appropriate search procedure. 

(record question 

((branch ((parse present) 

(branch (THE (parse attributes) OF (parse tools) 
(parse-result-if-end 
(report-attributes attributes tools))) 
((parse tools) S (parse attributes) 
(parse-result-if-end 
(report-attributes attributes tools))))) 
(HOW MANY METERS IS (parse tooll) FROM (parse tool2) 
(parse-result-if-end 

(report-distance tooh tool2))) 
(IDENTIFY (parse tools) 

(parse-result-if-end 

(report-identity tools))) 
(COUNT (parse tools) 

(parse-result-if-end 

(report-number tools)))))) 



i present 



OF 



i tools 



>0 



THE i attributes 

- >p >o >o - >0- 

1 tool S 1 attributes 

>o >o >0 

HOW MANY METERS IS i tooll FROM i tool2 

>o >o >o >o 

IDENTIFY 1 tools 

>0 >0 

COUNT i tools 

>0 >0 



Figure 6: The top level of a semantic grammar capable of handling queries about the 
color, weight, length, and position of some tools. 



What are the weight, length, and color of the saw? 



i present THE i attributes 



OF i tools 



Figure 7: An example of a question that matches the top level of the semantic 
grammar in figure 6. 



procedure that finds the guaran- 
teed-shortest path. 

Analysis 

in the Zoo World 

Rule-based expert systems are the 
hottest thing in the commercialization 
of AI. All of them are built on the idea 
that some kinds of knowledge can be 
reduced to simple rules. Figure 4 
shows one rule that is ready for inclu- 
sion in a LISP-based animal-recogni- 
tion system, which expresses the fact 
that an animal's children are animals 
of the same kind. LISP does not have 
any built-in primitives that handle 
such rules, but it is a splendid 
language in which to embed a rule- 
exploiting program. LISP'S symbol- 
manipulating power is well suited to 
the task of examining the symbols 
that make up a rule, comparing them 
to the symbols that make up the ex- 
isting facts, and reacting accordingly 
One kind of rule-exploiting program 
is a forward-chaining rule interpreter, 
which is a program that uses rules to 
move forward from facts to conclu- 
sions. Figure 5 is an output fragment 
showing what such a program does 
with facts about Robbie, knowledge 
about the relationship between Rob- 
bie and Bozo, and a few rules. There 
is always an expression-matching pro- 
cedure buried inside any rule-based 
expert system like the animal- 
identification procedure. While the 
entire system is too lengthy to show, 
the matcher is short and straightfor- 
ward. Its task is to compare expres- 
sions and to produce a list of pattern- 
match pairs, as shown in listing 3. 
Listing 4 is the matcher program. 

Interaction 

in the Tool World 

The pattern matcher shown previous- 
ly is not just an important part of a 
rule-based system. It is also just about 
all you need to make the famous Doc- 
tor program, the one that pretends it 
is a psychiatrist responding with ap- 
parent sympathy as you pour your 
heart out over family traumas. More 
importantly, the pattern matcher has 
a family resemblance to natural-lan- 

[continued] 



216 BYTE • APRIL 1985 



gggL. 



: 




Join The Leader 



. . . and be a Leader! 

MicroAge is the computer solution leader. Through- 
out the United States and Canada, businesspeople 
rely on MicroAge for advice, leading products, and 
service when computerizing their companies. 

But remaining the leader takes talented profession- 
als who are willing to invest in their own community. 
People who are willing to assume a leadership 
position. That's why MicroAge is meeting with indi- 



viduals who want to own and operate a MicroAge 
sales organization. 

Owning a MicroAge franchise is more than running 
a store. We sell multi-user systems, local area net- 
works and telephone systems. . .along with per- 
sonal computers. We provide service, installation 
and training for our customers. 

If you would like to develop a long-term relation- 
ship serving the businesses in your area, let's talk 
business! Call or write: 



/MicroAge 

co/MPUTer srares 

"The Solution Store"® 

1457 West Alameda • Tempe, AZ 85282 
1-800-245-4683 

In Arizona or outside the continental U.S. call (602) 968-3168 
"The Leader In Multi-User Technology" 



Inquiry 433 



APRIL 1985 • BYTE 217 



LISP REVOLUTION 



guage interface programs built on 
what is called a semantic grammar. 
Basically, a semantic grammar is a 
model of what can be said in tightly 
constrained conversations about a 
narrow database. Suppose that you 
are interested in the color, weight, 
length, number, and position of some 
tools. The natural queries are: 



• Identify the hammers. 

• Count the red screwdrivers. 

• Show me the color of the wrenches. 

• Present the small red screwdriver's 
weight. 

• What is the length and weight of the 
large saw? 

• How many meters is the small red 
screwdriver from the big blue 




Choose from our Stand Alone, Intelligent, RS-232 units. 

COMPATIBLE WITH ANY COMPUTER OR TERMINAL 



GANGPRO-8 $995.00 

High throughput. Gang 8 EPROMS with the 
fast Algorithm. Optional 512K buffer. 
Programs ALL 24 pin 8c 28 pin EPROMS. 
Other units to gang 24 EPROMS. 

PROMPRO-8 $689.00 

Powerful commands, easy communi- 
cations, 128/256K buffer. Alpha Display, 
Simulation and Keypad option. Programs 
ALL EPROMS 8cMPU's. 

PROMPRO-7 $489.00 

32K RAM buffer, ideal for programming 
8748. 8749. other Intel MPU's and 16K-128K 
EPROMS. 

BIPOLAR & PAL Programmers... Call! 
TELEX 383 142 



01200 



UV ERASERS 

ECONOMY MODEL aUV-T8/l .... $49.95 

Erases over 15 EPROMS, Plastic case. 

INDUSTRIAL aUV-T8/2N $68.95 

Metal case, U V indicator, tray, erases over 15 
EPROMS in 15 minutes. 

INDUSTRIAL aUV-T8/2T $97.50 

With 60 minute timer and satety switch. 

INDUSTRIAL aUV-T8/Z $124.95 

Fast Eraser, 15 EPROMS in 7 minutes, 30 EPROMS 
in 15 minutes. 

PRODUCTION UNIT $149.95 

Model ULTRA-LITE"'. Erases 50 EPROMS in 
15 minutes. 

TOLL FREE 1-800-EE1-PROM 

(331-7766) • FLORIDA (305) 974-0967 

1. IBM PC 2. APPLE II 3. Intel-MDS 4. CPM 

5. TEXTRONIX8002 6. COMMODORE 64 7. TRS-BO COLOR 6. FLEX 

LOGICAL DEVICES, INC. 

DEPT. 6. 1321-E N.W. 65th PLACE ■ FT. LAUDERDALE FL 33309 
DISTRIBUTORS INQUIRY WELCOME 



screwdriver from the big blue one? 
The top level of a semantic gram- 
mar capable of handling all these 
queries is shown in figure 6. A 
semantic-grammar interpreter finds 
paths through such a net using input 
sentences as a guide. Each branch 
marked with a > symbol requires 
traversal of a subnet. Each complete 
path from the entry to an exit is 
associated with its own data-search- 
ing procedure. For example, the 
sentence in figure 7 matches the top- 
most path in the top-level net. Three 
subnets are traversed in addition to 
the top-level net. Once again, LISP's 
symbol-manipulating power makes it 
easy to write a program that both 
matches sentences against a suitable 
representation of semantic grammars 
and activates the appropriate search 
procedures. Listing 5 shows what such 
a representation looks like when it 
is rendered in LISP-oriented nota- 
tion. 

Conclusion 

We really don't need any new ex- 
amples to demonstrate why profes- 
sionals need to know about LISP. The 
examples presented are all elemen- 
tary, but they indicate the sorts of 
things done by their bigger brothers. 
LISP is the foundation for expert 
systems of all kinds, many of which 
have progressed far beyond the sim- 
ple rule-based paradigm. LISP is the 
language for most natural-language 
development efforts. Indeed, LISP is 
the language of choice for most peo- 
ple working in AI— supporting work 
that includes learning, instruction, 
speech, vision, robotics, and all sorts 
of reasoning. ■ 

BIBLIOGRAPHY 

Abelson, Harold, and Gerald lay Sussman. 
Structure and interpretation of Computer Pro- 
grams, Cambridge, MA: MIT Press, 1984. 
Winston, Patrick H. Artificial Intelligence. 2nd 
ed. Reading, MA: Addison-Wesley, 1984. 
Winston, Patrick H.. and Berthold K. P. 
Horn. LISP. 2nd ed. Reading. MA: 
Addison Wesley, 1984. 
Winston, Patrick H., and Karen A. 
Prendergast. The A I Business: The Commer- 
cial Uses of Artificial Intelligence. Cambridge. 
MA: MIT Press. 1984. 

(— Inquiry 239 



Systems Programmers and Programmer/Analysts 
EDS Wants To Challenge Your Talents. 

The EDS And GM Alliance 

Has Created A 

Technical Arena That Other 

Companies Can Only Envy. 



The alliance of Elecronic Data Systems 
(EDS) and General Motors is creating 
major career opportunities. As a SYSTEMS 
PROGRAMMER or PROGRAMMER/ 
ANALYST, your skills and abilities will be 
challenged. 

EDS is offering you IMMEDIATE 
opportunities to enjoy hands-on 
experience with truly state-of-the-art 
hardware and software. This state-of-the- 
art experience will ensure that your skills 
are kept as current as possible. Also, EDS 
offers training programs that have 
become models for the industry and are 
geared to prepare you for the 
performance that ensures success. As one 
of IBM's largest customers and one of the 
nation's largest hardware users, EDS is 
creating one of the most automated work 
environments in the business world 
today. This Ls your once-in-a-career 
opportunity to become involved in the 
leading edge of technology. 

EDS AND GM 
ARE PIONEERING TECHNOLOGY. 
AND SO CAN YOU. 

EDS and GM are world-renowned leaders 
in technology. EDS ensures this 
leadership by continually upgrading our 
facilities with the most advanced 
hardware and software available. And 
since we employ components that 
accommodate change, our operating 




systems are never limited by technology 
of the past. You benefit as a professional 
since you will never be hindered by out- 
of-date equipment. The best technology 
of tomorrow Ls built on the best 
technology of today. And that's all you 
find at EDS. 

SYSTEMS PROGRAMMERS 
AND PROGRAMMER/ANALYSTS: 
OUTSTANDING 
CAREER OPPORTUNITIES. 

We have IMMEDIATE career 
opportunities for professionals who are 
interested in moving the industry 
onward. If you are a SYSTEMS 
PROGRAMMER with two years 
experience in an IBM, IBM-compatible or 
DEC/VAX environment with a solid 
working knowledge of ALC or 
ASSEMBLER, we have challenges in the 
areas of VTAM, VM, IMS, IDMS, and MVS. 
If you are a Programmer /Analyst with two 
years experience in an IBM or IBM- 
compatible environment with a solid 
working knowledge of COBOL, PL/1 or 
ALC, EDS has the ideal environment to 
challenge your skills. 



YOUR CAREER GROWIH: 

AT EDS, WE DON'T 

TAKE YOUR TALENT 

FOR GRANTED 
- WE CHALLENGE IT, 

WE RESPECT IT 
AND WE NURTURE IT. 

EDS knows that new ideas and new 
technology are only as good as the 
people who create them. That's why 
developing the potential of our 
employees is a continuing priority. We 
believe our strength is enhanced when 
our employees develop new skills and 
accept greater responsibilities. Therefore, 
we have created an environment that lets 
you build your future by the knowledge 
and skills you acquire — not by rank or 
seniority. At EDS, you control your own 
future. 

Act now, advance the industry while 
experiencing the technological 
challenges and advantages EDS can offer 
you. Send your resume in confidence to: 

ELECTRONIC DATA SYSTEMS 

CORPORATION 

755 W. Big Beaver 

Suite 3 10, Dept. 08-0485-39 

Troy, MI 48084 




Electronic Data Systems Corporation 



An Equal Opportunity Employer. 



Inquiry 138 



APRIL 1985 -BYTE 219 



Super assemblers 

plus the world's 

largest selection of 

cross assemblers! 



Z-80 
Macroassembler 

Power for larger programs! This 
2500AD macroassembler includes: 

• Zilog Z-80 Macroassembler (with 
the same powerful features as all 
our assemblers) 

• powerful linker that will link up to 
128 files. Com files may start at 
any address 

• Intel 8080 to Zilog Z-80 Source 
Code Converter (to convert all 
your Intel source to Zilog Syntax 
in one simple step) 

• COM to Hex Converter (to convert 
your object files to Hex for PROM 
creation, etc.) 

• 52 page User Manual 

8086/88 Assembler 
with Translator 

Available for MSDOS, PCDOS, or 
CPM/86! This fully relocatable macro- 
assembler will assemble and link code 
for MSDOS (PCDOS) AND CPM/86 
on either a CPM/86 or MSDOS 
machine. This package also includes: 

• An 8080 to 8086 source code 
translator (no limit on program 
size to translate) 

• A Z-80 to 8086 translator 

• 64 page user manual 
•4 linkers included: 

-MSDOSproduces.EXEfile 
-CPM/86 produces .CMD file 
-Pureobjectcodegeneration 
-Object code and address 
information only 
Linkerfeatures: 

• Linksupto128 files 

• Submit mode invocation 

• Code, DataStackand extra 
segments 

• Handles complex overlays 

• Written in assembly language for 
fast assemblies. 



Z-8000 Cross Development 
Package 

Instant Z-8000 Software! This 
package allows development and 
conversion of software for the 
Z8001 , 8002, 8003 and 8004 based 
machines on a Z-80, Z-8000 or 8086 
machine. This powerful package 
includes: 

• a Z-80/8080 to Z-8000 Assembly 
Language Source Code Translator 

• Z-8000 Macro Cross Assembler 
and Linker 

The Translators provide Z-8000 
source code from Intel 8080 or Zilog 
Z-80 source code. The Z-8000 
source code used by these 
packages are the unique 2500AD 
syntax using Zilog mnemonics, 
designed to make the transition 
from Z-80 code writing to Z-8000 
easy. 

All 2500 AD Assemblers and 
Cross Assemblers support the 
following features: 

Relocatable Code — the 

packages include a versatile Linker 
that will link up to 128 files together, 
or just be used for external 
reference resolution. Supports 
separate Code and Dataspace. 
The Linker allows Submit Mode or 
Command Invocation. 
Large File Handling Capacity 
— the Assembler will processfiles 
as large as the disk storage device. 
All buffers includingthesymboltable 
buffer overflow to disk. 
Powerful Macro Section — 
handles string comparisons during 
parameter substitutions. Recursion 
and nesting limited only by the 
amount of disk storage available. 
Conditional Assembly — allows 
up to 248 levels of nesting. 



Assembly Time Calculator — 

will perform calculations with up to 
16 pending operands, using 16 
or 32 Bit arithmetic (32 Bit only for 
1 6 Bit products) . The algebraic 
hierarchy may be changed through 
the use of parentheses. 

Include files supported — 
Listing Control — allows listing 
of sections on the program with 
convenient assembly error detec- 
tion overrides, along with assembly 
run time commands that may be 
used to dynamically change the 
listing mode during assembly. 
Hex File Converter, included 
— for those who have special 
requirements, and need to generate 
object code in this format. 

Cross reference table 
generated — 

Plain English Error 
Messages — 

System requirements for all pro- 
grams: Z-80 CP/M 2.2 System with 
54k TPA and at least a 96 column 
printer is recommended. Or 
8086/88 256k CP/M-86 or MSDOS 
(PCDOS). 

Cross Assembler Special Features 

Z-8 — User defined registers 
names, standard Zilog and Z-80 
style support. Tec Hex output option. 
8748— standard Intel andZ-80 
style syntax supported. 
8051 — 512 User defined register 
or addressable bit names. 
6800 Family — absolute or 
relocatable modes, all addressing 
modes supported. Motorola syntax 
compatible. Intel Hex or S-Record 
format output. 

6502 — Standard syntax or Z-80 
typesyntax supported, all 
addressing modes supported. 



220 BYTE- APRIL 1985 





Z80 


ZILOG 
SYSTEM 8000 


IBM PC 


OLIVETTI 
IBM PC M-20 




CP/M® 


UNIX 


MSDOS 


CP/M 86 


PCOS 


Z8000™ 


$299.50 


$750.00 


$299.50 


$299.50 


$299.50 


Z80 


99.50 


500.00 


199.50 


199.50 


199.50 


Z8 


199.50 


500.00 


199.50 


199.50 


199.50 


8086/88 


199.50 


750.00 


99.50 


99.50 


199.50 


80186 


199.50 


750.00 


199.50 


199.50 


199.50 


8748 


199.50 


500.00 


199.50 


199.50 


199.50 


8044/51 


199.50 


500.00 


199.50 


199.50 


199.50 


8080 


199.50 


500.00 


199.50 


199.50 


199.50 


8085 


199.50 


500.00 


199.50 


199.50 


199.50 


8096 


199.50 


500.00 


199.50 


199.50 


199.50 


68020 


399.50 


750.00 


399.50 


399.50 


399.50 


68000,08,10 


299.50 


750.00 


299.50 


299.50 


299.50 


6800,02,08 


199.50 


500.00 


199.50 


199.50 


199.50 


6801,03 


199.50 


500.00 


199.50 


199.50 


199.50 


6804 


199.50 


500.00 


199.50 


199.50 


199.50 


6805 


199.50 


500.00 


199.50 


199.50 


199.50 


6809 


199.50 


500.00 


199.50 


199.50 


199.50 


32000 


399.50 


750.00 


399.50 


399.50 


399.50 


COPS400 


199.50 


500.00 


199.50 


199.50 


199.50 


J NSC800 


199.50 


500.00 


199.50 


199.50 


199.50 


6301 


199.50 


500.00 


199.50 


199.50 


199.50 


6501/11 


199.50 


500.00 


199.50 


199.50 


199.50 


i 6502 


199.50 


500.00 


199.50 


199.50 


199.50 


65C02 


199.50 


500.00 


199.50 


199.50 


199.50 


1802 


199.50 


500.00 


199.50 


199.50 


199.50 


F8/3870 


199.50 


500.00 


199.50 


199.50 


199.50 


! NEC7500 


199.50 


500.00 


199.50 


199.50 


199.50 


NCR/32 


399.50 


750.00 


399.50 


399.50 


399.50 


J Subtotal 


$ 


$ 


$ 


$ $ 




Name 
J Onmpany 
Arlrlrpss 

City State 7ip 
Phone 
Make and model of computer 

RyRtfim 

D COD (2500AD pays COD charges) 
□ VISA or MasterCard 
■ Number 


TO ORDER. Simply circle the producl 
products you want in the price columr 
up your order. 

Total $ 
Check one: Shipping UPS Blue 

□ 8" Single Label no charge, 

□ Osborne $15.00 Internation 

□ IBM PC per unit $ 

□ Cartridge tape 

□ Apple (Softcard) 

□ Kaypro DSDD Total Order $ 
other formats available, please call! 


tor 

is, and add 

j 

al 




Expiration Date 


U*^m_ 




Signature 




220 


1 25C 

i. ,— p.o. 


Box 4957, Englewood, CO 80155, 


JTWHKhll x 

(303) 790-2588 TELEX 752659/AD 


nL I 



Inquiry 2 



APRIL 1985 -BYTE 221 



HOW TO BUY SOFTWARE 

WHEN ALL THE ADS 

LOOK THE SAME. 



We know it's hard to choose 
a software house. All 
the ads say the same 
thing— " Lowest prices," "fastest 
delivery," "best support," "biggest 
inventory" 

Trouble is, although the 
claims are the same, the com- 
panies are very different. Which 
is why we want you to know 
some important facts about us: 



1. 



800-SOFTWAREisoneof 
the oldest and most repu- 
table firms in the industry. Our 
customers include IBM, GE, 
Hewlett-Packard, Xerox, AT&T, 
and thousands of other satisfied 
buyers. 



2 Our National Accounts Pro- 
• gram offers volume dis- 
counts and valuable services to 
large software users. We offer 
incredibly low prices on large 
bids! 

3 We have a giant, $1,000,000 
• inventory. Which means we 
can offer next-day delivery if 
needed. 

4 With every product you get 
• friendly, expert technical 
support. Have a question? 
You'll be glad you bought from 
800-SOFTWARE! 

5 We'll match our com- 
• petitors' prices on most 
products. We never cut service. 



6 We never charge extra for 
• credit card purchases, nor 
do we process for payment until 
the product is shipped. (Our com- 
petitors don't make this claim!) 

7 You'll automatically receive 
• our Technical Support 
Newsletter— a great way to stay 
up-to-date. 

8 We are members of the 
• Better Business Bureau 
and the Direct Marketing 
Association. 

9 We want your business. 
• And your repeat business. 
Which is why we work so hard to 
keep you happy. Give us a call and 
let us prove it! 



CHECK OUT ALL OUR INCREDIBLE PRICES: 


Lotus 1-2-3 
$295 


dBase ll/lll 
$259/$349 


Framework 
$349 


WordStar 2000/2000 Plus 
CALL 


Lotus SYmphony 


Crosstalk 
$95 


PFS File/Granh/Write 


IUS Accounting 
$299/mod. 


SOFTWARE 

ASHTON-TATr 

dBase ll/lll $259/$349 
Framework $349 
BORLAND SOFTWARE" 
Sidekick CALL 
Turbo Pascal/8087 $39/$79 
B0URBAKI "lDir $ 79 
DECISION RESOURCES" 
Chartmaster $249 
Signmaster $189 
DIGITALRESEARCH" CALL 
F0X&GELLER' M CALL 
FUNK SOFTWARE'" Sideways $ 49 
HARVARD SOFTWARE" 

Harvard Project Manager $289 
IMSI'" PC Paintbrush $ 99 
LIFEBOAT" LATTICE C COMPILER $359 
LIFETREE'"Volkswriter Deluxe $179 
LOTUS'" 
1-2-3 $295 
Symphony $425 


MICROPRO® 

WordStar $209 

WordStar 2000/2000 Plus CALL 

WordStar Pro Package/P.P. Plus $259/$359 

InfoS.ar CALL 

All Other Products CALL 

MICRORIM ,M RBase4000 $259 

MICROSOFT® 

Multiplan $12 5 

Word w/Mouse $299 

Fortran $269 

All Other Products CALL 

MICROSTUF" Crosstalk $ 95 

MULTIMATE" $255 

NORTON UTILITIES'" $ 59 

ROSESOFT'-proKey $ 99 

SOFTWARE PUBLISHERS'" 

PFS File/Graph/Write $ 84 

PFS Report $ 75 

S0RCIMIIUS" 

SuperCalc 2/3 $159/$195 

EasyWriter I! System $185 


IUS Easy Business Accounting $299/mod. 
Super Project $209 
All Other Products CALL 

HARDWARE, ETC 

AMDEK'" Monitors CALL 
AST'" Products CALL 
ATI" &CDEX" TRAINING CALL 
CODE A PHONE" Tel A-Modem $479 
EPSON*" PRINTERS NEW LOW PRICES! 
HAYES" 

Smartmodems 1200I1200B CALL 
HERCULES'" 
Color Card $199 
Graphic Card $325 
MAXELL" &MEM0REX" DISKETTES CALL 
MEMORY CHIPS CALL 
0KIDATA™ PRINTERS NEW LOW PRICES! 
PRINCETON GRAPHICS' M M0NIT0RS CALL 
QUADRAM" CALL 
WESTERN UNION EASY LINK® FREE 



WE ALSO CARRY HUNDREDS OF OTHER PRODUCTS! 



VISA 



800-SOFTWARE, INC. 

1)40 Dwight Way 
Berkeley, CA 94710 



© Copyright 1985, 800-Softwure. Inc. 
222 BYTE • APRIL 1985 



^800-SOFTWARE 

To order call toll-free: 
800-227-4587 or 4is-644-36ii 



□ Dealerinquiries welcome. 

□ Quantity discounts available through our 
National Accounts Program. 

D Purchase orders accepted. Please call us 
in advance. 

D Call forshipping charges. Overnight de- 
livery available. 

I We do not add surcharge for credit card 
purchases. 

□ Prices may change. Above pricesare for 
IBM-PC and compatibles. 

D International orders welcome: 

TELEX #751743 800 SOFTWARE UD. 

Inquiry 4 



ARTIFICIAL INTELLIGENCE 



THE CHALLENGE 
OF OPEN 
SYSTEMS 



by Carl Hewitt 



Current logic programming methods may be insufficient 
for developing the intelligent systems of the future 



SYSTEMS OF INTERCONNECTED 
and interdependent computers are 
qualitatively different from the 
relatively isolated computers of the 
past. Such "open systems" uncover 
important limitations in current ap- 
proaches to artificial intelligence (AI). 
They require a new approach that is 
more like organizational design and 
management than current approach- 
es. In this article we'll take a look at 
some of the implications and con- 
straints imposed by open systems. 

Open systems are always subject to 
communications and constraints from 
outside. They are characterized by the 
following properties: 

• Continuous change and evolution. Dis- 
tributed systems are always adding 
new computers, users, and software. 
As a result, systems must be able to 
change as the components and 
demands placed upon them change. 
Moreover, they must be able to evolve 
new internal components in order to 
accommodate the shifting work they 
perform. Without this capability, every 
system must reach the point where it 
can no longer expand to accommo- 



date new users and uses. 

• Arm's-length relationships and decentralized 
decision making. In general, the com- 
puters, people, and agencies that 
make up open systems do not have 
direct access to one another's inter- 
nal information. Arm's-length relation- 
ships imply that the architecture must 
accommodate multiple computers at 
different physical sites that do not 
have access to the internal com- 
ponents of others. This leads to de- 
centralized decision making. 

• Perpetual inconsistency among knowledge 
bases. Because of privacy and discre- 
tionary concerns, different knowledge 
bases will contain different perspec- 
tives and conflicting beliefs. Thus, all 
the knowledge bases of a distributed 
AI system taken together will be 
perpetually inconsistent. Decentraliza- 
tion makes it impossible to update all 
knowledge bases simultaneously. This 
implies that it is not even possible to 
know what kinds of information are 
contained in all the local knowledge 
bases in the system at any one time. 
Systems must be able to operate in 
the presence of inconsistent and in- 
complete knowledge bases. 



• Need for negotiation among system com- 
ponents. In a highly distributed system, 
no system component directly con- 
trols the resources of another. The 
various components of the system 
must persuade one another to pro- 
vide capabilities. Consequently, a 
distributed AI system's architecture 
must support a mechanism for 
negotiation among components. 

• Inadequacy of the closed-world assumption. 
The closed-world assumption is that 
the information about the world be- 
ing modeled is complete in the sense 
that exactly those relationships that 
hold among objects can be derived 
from the local information possessed 
by the system. Systems that depend 
on the closed-world assumption make 
use of the principle that they can find 

[continued) 
Carl Hewitt received his Ph.D. from the 
Massachusetts Institute of Technology in 1971 
and since then has worked in the field of ar- 
tificial intelligence on foundational issues. His 
outside interests include hiking and skiing. 
Professor Hewitt can be reached at the MIT 
Artificial Intelligence Laboratory, 54 5 
Technology Square, Room 813, Cambridge, 
MA 02139. 

APRIL 1985 • BYTE 223 



OPEN SYSTEMS 



all existing instances of a concept by 
searching their local storage. At first 
glance it might seem that the closed- 
world assumption, almost universal in 
the AI literature, is smart because it 
provides a ready default answer for 
any query. Unfortunately, the default 
answers provided become less 
realistic as open systems increase in 
size and less of the information is 
available locally. 

Continuous growth and evolution, 
arm's-length relationships, incon- 
sistency among knowledge bases, de- 
centralized decision making, and the 
need for negotiation are interdepen- 
dent and necessary properties of 
open systems. 

Parallel Computation 
in Open Systems 

The theory of recursive functions (e.g., 
TUring machines) is based on a batch- 
processing model of computation. 
Output is obt£ined from a recursive 
function when it finally halts. Open 
systems require a theory of computa- 
tion in which processing might never 
halt, may be required to provide out- 
put while still in operation, and can 
accept input from sources not antici- 
pated when the computation began. 

Asynchronous parallel computer 
systems make use of a two-input, two- 
output computing element called an 
arbiter. Arbiters are the fundamental 
hardware primitives that make parallel 
asynchronous computing different 
from sequential synchronous com- 
puting. Arbiters make decisions for 
which there is no logical justification 
(proof) because the decision cannot 
be predicted from knowledge of the 
structure of the computing system 
and its input. In a very fundamental 
sense, arbiters are not equivalent to 
TUring machines (see reference 3). 
Figure I shows an arbiter with inputs 
x and y and outputs x and y'. 

An arbiter decides the order in 
which it receives requests. Thus, if in- 
puts x and y are asserted at about the 
same time, the result will eventually 
be one of the possibilities shown in 
figure 2. 

The output of an arbiter is wot a 



X *• 




..x' 






ARBITER 




Y * 




*v 





Figure 1: Ah arbiter, with inputs x and 
y and outputs x' and y'. 



1 » 

1 * 

1 * 




^1 


ARBITER 




OR 


ARBITER 


**1 





Figure 2: Given that the inputs to the 
arbiter are asserted almost simultaneously, 
the resulting output will be one of the 
above two cases. 



37 * 




*0 






ARBITER 




.96 * 




* l 





Figure 3: In practice, the inputs to an 
arbiter are analog signals varying between 
1 and 0. 



logical function of its input, in the 
sense that it is not a simple Boolean 
function, because the dimension of 
time enters into the semantics of ar- 
biter modules in a fundamental way. 
However, the feasible sets of outputs 
can be described in logic using the 
subsequently relation (see reference 1): 

(x= 1 and y= 1) subsequently 
(or 
(x'=0 and y'=\) 
(x'=\ and y'=0)) 

Logic cannot be used to determine 
which particular eventuality will occur. 
Systems with arbiters are not equiva- 
lent to a nondeterministic Hiring 



machine, since an arbiter can require 
an unbounded amount of time to 
make a decision (possibly while other 
computations are taking place). If a 
nondeterministic Hiring machine is re- 
quired to make a decision, there is a 
bound on the amount of time it can 
take, and this bound is determined 
before it starts. Each individual choice 
of a nondeterministic TUring machine 
takes one step. 

In practice, the inputs to an arbiter 
are analog signals that vary con- 
tinuously between and I . For exam- 
ple, if the actual inputs to an arbiter 
were .97 and .96, then the output 
might be as shown in figure 3. 

The arbiter has only digital outputs 
(0s or Is) even though the input is 
analog. It makes a definite digital 
choice out of the analog quantities of 
time and its two inputs. Because of 
the continuous nature of time and the 
analog nature of the input, an arbiter 
cannot be strictly modeled as a non- 
deterministic-state machine. 

In a parallel computation, arbiters 
are used repeatedly so that the 
number of possibile outcomes grows 
exponentially with time. Thus, the ac- 
tual operation of a parallel computer 
system cannot be determined logical- 
ly by the inputs to the system. The in- 
determinacy of the arbiters used in 
open computer systems results in 
their making decisions that cannot be 
proved from knowledge of structure 
of the computing system and its input. 

Decisions Justified 
by Agreements 

The electronic-banking system is a 
good example of an open system. 
You're probably familiar with it 
through the use of automated teller 
machines that enable you to withdraw 
cash thousands of miles from where 
you opened an account, 'feller ma- 
chines are continually being added to 
the system. 

Decisions about which transactions 
to honor are justified on the basis of 
an agreement between the bank and 
its depositors. Often an agreement 
will provide that the bank does not 
have to honor a withdrawal if there 
are insufficient funds present in the 



224 B YTE • APRIL 1985 



OPEN SYSTEMS 



account when the withdrawal is re- 
quested The withdrawal would be 
refused even though it might be 
covered by subsequent deposits. 

The decisions of which withdrawals 
not to honor cannot be deduced from 
complete information about the struc- 
ture of the bank's computers and the 
input from the teller machines. Thus, 
the decision whether or not to honor 
a withdrawal is not subject to logical 
proof. For example, suppose Account 
I has a balance of $1000, Account 2 
has a balance of $2000, and they 
share a common reserve account with 
a credit limit of $3000. If two elec- 
tronic withdrawals of $4000 each are 
attempted at about the same time 
from both Account 1 and Account 2, 
then one of the attempts will be re- 
fused and the other one will be 
honored, though it is impossible to 
deduce which one will be honored 
and which one refused. 

The above example shows how a 
decision of an open system can be 
justified even though it does not 
follow from any proof. Instead, the 
decision is justified by an agreement 
to act in certain ways. We see a 
divergence between the theories 
used in the construction of open 
systems and their operation. Theory 
informs practice; e.g., the design of 
the banking mechanism is based on 
a financial theory. However, the finan- 
cial theory does not determine the ac- 
tual operations of the bank account- 
ing system. The operation of the bank 
accounts is determined by the order 
in which asynchronous events occur 
inside the system. Each performance 
of a complicated open system is 
unique. 

This illustrates the divergence be- 
tween classic recursive-function 
theory and theories needed to model 
open systems. (For a further discus- 
sion of the mathematical semantics 
needed to model the behavior of 
open systems, see references I and 
3.) 

Exploration vs. Search 

Searching in problem spaces is the 
traditional AI framework. Problem 
spaces and problems have been de- 



fined as follows (see reference 16): 

Problem Space: A problem space 
consists of a set of symbolic struc- 
tures (the states of the space) and a 
set of operators over the space. Each 
operator takes a state as input and 
produces a state as output, although 
there may be other inputs and out- 
puts as well. The operators may be 
partial, i.e., not defined for all states. 
Sequences of operators define paths 
that thread their way through se- 
quences of states. 

Problem: A problem in a problem 
space consists of a set of initial 
states, a set of goal states, and a set 
of path constraints. The problem is to 
find a path through the space that 
starts at any initial state, passes only 
along paths that satisfy the path 
constraints, and ends at any goal 
state. 



A good example of a problem 
space is that of the game of chess: 

1. Initial state: chess pieces in starting 
position 

2. Operations: legal moves 

3. Goal states: checkmate, stalemate, 
etc. 

I claim that searching through prob- 
lem-solving spaces provides a narrow 
foundation for the analysis and syn- 
thesis of intelligent systems. The 
perspective must be broadened to in- 
clude exploration that goes beyond 
search. An excellent perspective on 
some of the differences between 
search and exploration is provided by 
the means used to explore and de- 
velop the North American continent. 

I. Initial state: There was no well- 
defined initial global state of the 

[continued) 



£ RAPID PACE 
DATABASE 

-the rapid pace of business today demands data storage solutions that can keep pace with 
the dynamics of today's computing solutions. 

The Bernoulli Box" does just that— by creating, expanding, storing and backing up data 
liases on handy 10-megabyte cartridges (5 megabytes on the single-drive Macintosh" box), 
its transfer rates and access times outperform hard disk devices. And when rapid pace 
means getting somewhere fast, your cartridge-contained data bases go with you. 
The Bernoulli Box. Available for the IBM PC, XT, AT, most compatibles, the TI Pro and 
Applet Macintosh. 
For the dealer nearest you, call 1-800-556-1234 ext, 215. In California call 

- 1-800-441-23'" 




THE 



IOMEGA CORPORATION 
1821 West 4000 South 
Roy, Utah 84067 



BERNOULLI 



BOX" 



Inquiry 205 



APRIL 1985 -BYTE 225 



speed! 




New Qantex 7065. 
A fast printer at a slow price. 



No matter how heavy the traffic, our 
new Qantex 7065 multimode printer 
will keep your documents flowing 
smoothly. At a very affordable price. 

Use it for data processing, and 
the 7065 zips along at 300 cps bidirec- 
tionally Both user-defined formats 
and six-part forms capability are 
standard. 

Switch to word processing and 
the 7065 delivers near letter quality at 
125 cps, Plus features such as propor- 
tional spacing, justification, auto-un- 
derline and bold. 

And as a 65 cps letter quality 



printer, it's fast enough and quiet 
enough to leave the competition in 
the dust. You get high density double 
pass printing in your choice of some 
20 fonts. 

The 7065 is also a dot addressa- 
ble graphics printer with resolution to 
144 x 144 dots per inch and a full com- 
plement of line drawing graphics. 

Besides being very fast, the 7065 is 
very compatible -with IBM, Apple, 
Lotus 1-2-3 and just about any other 
personal computer or software on the 
market. It offers built-in bar code ca- 
pability. And its 500-million-plus char- 



acter print head and industrial quality 
construction are designed for long, 
hard use. 

To find out how quickly the 
Qantex 7065 could bring your infor- 
mation processing up to speed, con- 
tact Qantex for details or a demo. 
Qantex, 60 Plant Avenue, Hauppauge, 
NY 11788. Call toll-free 800-645-5292; in 
New York State 516-582-6060. 

5ft north ntliintic 

Qantex 



226 BYTE • APRIL I985 



Inquiry 321 



OPEN SYSTEMS 



North American continent in the mid- 
dle 1600s. Leif Ericson and Chris- 
topher Columbus had led some early 
probes, but the information was 
fragmentary, dispersed, and self- 
contradictory. 

2. Operations: The set of operations 
used to explore the continent was not 
defined in advance. Instead, it was im- 
provised dynamically and interactive- 
ly in the course of initial probes. Fur- 
thermore, the explorers operated in 
parallel so that there is no path of 
states of the continent that adequate- 
ly explains how it was explored. That 
is, the continent was not explored by 
finding a single path through a space 
of states. Exploration of the North 
American continent can be better 
modeled as a partial order of causal- 
ly linked historical events than as a 
problem space. 

3. Goal states'. There was no set of im- 
mutable global goal states for the 
continent that the explorers set out 
to achieve. Rather, the explorers' goals 
evolved with the exploration methods 
as the exploration proceeded. 

Searching problem spaces is limited 
mainly in its applicability to artificial 
domains like chess and mathematical 
theorem proving. It is not very adapt- 
able to the hurly-burly of solving 
problems involving interaction with 
the physical world. Problem spaces 
do not provide sufficient flexibility to 
represent the problem-solving pro- 
cesses of communities because of the 
attempt to represent the problem 
solving of individual actors as a single 
global state. This limitation of prob- 
lem spaces is closely related to the in- 
adequacies of the TUring machine as 
a model of asynchronous distributed 
systems. Problem solving in open sys- 
tems is more analogous to the ex- 
ploration of North America than the 
playing of games like chess. 

Planner 

Planner was one of the first AI pro- 
gramming languages to support goal- 
oriented problem solving without an 
externally specified problem space. It 
was based on the following principles 
(see reference 6): 



• Accessibility: Planner aims for a max- 
imum of flexibility so that whatever 
knowledge is available can be incor- 
porated into the problem-solving pro- 
cess even if it is fragmentary and 
heuristic. 

• Pattern-directed invocation: Procedures 
in Planner can be invoked by patterns 
of what they are supposed to accom- 
plish. Suppose that we have a 
stopped sink. One way we could try 
to solve the problem would be to 
know the name of a plumber whom 
we could call. An alternative that is 
more analogous to pattern-directed 
invocation is to advertise the fact that 
we have a stopped sink and the quali- 
fications needed to fix it. In Planner 
this is accomplished by making the 
advertisement (i.e., the pattern that 
represents what is desired) into a 
goal. 

• Procedural interpretation of logical state- 
ments: One basic idea behind Planner 



is to exploit the duality that we find 
between certain imperative and 
declarative sentences. Consider the 
statement (implies A B). The state- 
ment is a perfectly good declarative. 
In addition, it can also have certain 
imperative uses for Planner. It can say 
that we might set up a procedure that 
will note whether A is ever asserted 
and if so to consider the wisdom of 
asserting B in turn. Furthermore, Plan- 
ner permits us to set up a procedure 
that will watch to see if it is ever our 
goal to try to deduce B and if so 
whether A should be made a subgoal. 
Exactly the same observation can be 
made about the contrapositive of the 
statement (implies A B). Statements 
with universal quantifiers, conjunc- 
tions, disjunctions, etc., can also have 
both declarative and imperative uses. 
Planner theorems are used as im- 
peratives when executed and as 

[continued) 



*ii-j 



Your business needs more data base versatility than you get from hard disk systems, 

versatility to help your people work more productively, wherever they are, or go. 

Your business needs The Bernoulli Box,'" a storage system that lets you build and 

backup individualized data bases— for payroll, accounting, marketing-on rugged, 

interchangeable 5- and 10-megabyte cartridges. 

It works more reliably quickly, and flexibly than hard disk alternatives-without 

head crashes. And it works on the IBM PC, XT, AT, compatibles, the TI Pro and Apple's 

Macintosh:" 

For the dealer nearest youvcain-800-5564234ext. 215. In California 

call 1-800-441-2345 extSKjT ^ 



IOMEGA Corporation 
1821 West 4000 South 

Roy, Utah 84067 



i nc 

BERNOULU 



BOX" 



Inquiry 206 



APRIL 1985 -BYTE 227 



Need RGB color and 
TTL monochrome 
support from a A 
single board? 




'^: 



mi 




..--./ 



INrELUGENr B-450 
Mono/Color Display Card 




Color Graphics Mode: 640 dots x 200 lines TTL Monochrome Mode: 640 dots x 350 lines Interlace Mode: 640 dots x 400 lines 



Look no further, the INTELLIGENT 
B-450 has it all. Designed to work 
with the IBM PC, PC XT, and PC AT, 
the INTELLIGENT B-450 is also suitable 
for IBM PC look-alikes. In addition to a 
parallel printer port, the B-450 has fourteen 
different screen modes which cover everything 
from medium-resolution monochrome text to 
high-resolution color graphics with interlace. 



Everyone from the ordinary user to the CAD/CAM 
specialist will find the B-450 is just right. 

Sound good? With a suggested retail price 
of only $294, it's nothing less than great! 

IBM and IBM PC are registered trademarks of International Business Machines Corporation. 



INrELUGENr 
LWASVS1EM 



Intelligent Data System, Inc. 

14932 Gwenchris Ct, Paramount, CA 90723 
Toll Free Tel: (800)325-2455 Calif. Tel: (213)633-5504 Telex: 509098 



228 B YTE • APRIL 1985 



Inquiry 201 



OPEN SYSTEMS 



declaratives when used as data. 

Planner represented an advance 
over the "uniform proof procedures" 
of resolution theorem-proving sys- 
tems then current. The design for 
Planner was implemented by Suss- 
man, Winograd and Charniak (see 
references 5, 23). Winograd used it to 
implement his interactive natural- 
language program, SHRDLU, for a 
world with simulated toy blocks (see 
reference 27). 

In order to understand how pro- 
cedural interpretation works, consider 
this logical statement: 

(For All x ((man x) implies (mortal x))) 

The implication has two parts: the 
antecedent (man x) and the conse- 
quent (mortal x). It says: For every x, 
if x is a man, then x is mortal. Logical 
rules of inference permit certain 
deductions from the above statement. 
For instance, that Socrates is mortal 
can be derived from the premise that 
Socrates is a man as follows: 

(Man Socrates) 



(Mortal Socrates) 

I proposed that logical implications 
like "all men are mortal" could be in- 
terpreted as procedures in a program- 
ming language. One interpretation, the 
belief-invoked interpretation (called the 
"antecedent interpretation" in Planner), 
provides that when the belief that x 
is a man is held, then the belief that 
x is mortal can be logically derived. 
We can express this as follows: 

(when (belief (man x)) do 
(believe (mortal x))) 

Another interpretation, the goal- 
invoked interpretation (called the "con- 
sequent interpretation" in Planner), 
provides that from the goal that x is 
mortal, the subgoal that x is a man 
can be logically derived: 

(when (goal (mortal x)) do 
(show (man x))) 

The ideas in Planner have been 
generalized and perfected in subse- 
quent artificial-intelligence program- 
ming languages. However, by them- 



selves they do not address the needs 
of open systems. 

Logic Programming 

Logic programming has been pro- 
posed by some as the programming 
paradigm for the future (see reference 
12). Let's focus on limitations that are 
inherent in the enterprise of attempt- 
ing to use logic as a programming lan- 
guage for dealing reliably with em- 
pirical knowledge and interacting with 
the physical world. The remarks in this 
section continue a debate that begins 
with the genesis of AI. I recommend 
that interested readers consult the ap- 
pendix to Marvin Minsky's frames 
paper (see reference 1 5) and the sub- 
sequent analysis of David Israel (see 
reference 8). 

Logic programming must be based 
on logic. But what is logic? First-order 
logic, with its well-defined semantics 
and syntax, is the basis claimed by 



most of those who call themselves 
logic programmers. In part, the con- 
fidence of logic programmers is 
based on the fact that first-order logic 
augmented with set theory has 
proved to be a good foundation for 
mathematical semantics. 

Omega-order logic is an extension 
to first-order logic that allows quan- 
tification over predicates and func- 
tions. It has advantages over first- 
order logic in that it includes the full 
lambda calculus as a sublanguage 
and has arbitrary powers of abstrac- 
tion. When certain technical problems 
having to do with Russell's Paradox 
have been dealt with, omega-order 
logic may be the preferred logical lan- 
guage (see reference 19). Therefore, 
we should consider it to be in the 
mainstream of logic programming. 
Experts have argued that the merits 
of other logics can be found in first- 

[continued] 



TH^AVING GRACE 



^ 



y^- 



DATA BASE. 



Businesses today need more than just more data capacity from mass storage devices. They 
need more data dynamics. And that means backup as well as primary storage. 
The Bernoulli Box,' - with its removable storage system, delivers both. Not only can you create 
individual data bases on handy 10 -megabyte cartridges (5 megabytes on the single-drive 
Macintosh u box), you can backup files-in minutes, not hours. The compact cartridges are 
easily stored. And with the lowest available cost-per-megabyte, you not only save your data, 

"Lj— -. but money and time as well. 

f — tf — If — ) — T~~l TT T W ne Bernoulli Box. Available 

I 'fortheIBMPC,XT 1 AT,most 

I compatibles, the Tl Pro and 

m m B Apple's Macintosh. 

For the dealer nearest you, 
call 1-800-556-1234 ext. 
215. In California call 
1-800-441-2345 ext. 215. 



nri b fl h fl ■ 

llllllll 

■ B- H HJ B- Bf B B 

III n fl 1 1 B 

III fl fl H B fl 

■ oj 'Hi hj H! Hj .'91 MHj 



IOMEGA CORPORATION 
1821 West 4000 South 
Roy, Utah 84067 



BERNOULLI 



I 



BCK" 



Inquiry 207 



APRIL 1985 -BYTE 229 



OPEN SYSTEMS 



order logic (see references 14 and 26), 
so the analysis in this article is con- 
fined to first-order logic without loss 
of generality. 

The Inconsistency Problem 

I make the following claim, which I call 
the Conjecture of Inconsistency: The 
axiomatizations of the human knowl- 
edge of all physical systems are 
uniformly inconsistent in practice. 

I've used the term conjecture because 
the above claim is in principle impos- 
sible to prove rigorously, easy to 
disprove by counterexample, and has 
a preponderance of evidence in its 
favor. The reasons for the inconsisten- 
cy have to do with the dispersed asyn- 
chronous nature of human knowl- 
edge, including the following factors: 

• Environmental context: The physical sys- 
tem being axiomatized is related to 
various other physical systems. For ex- 



ample, a diseased kidney is often 
related to a diseased heart. Knowl- 
edge of the kidney cannot be sepa- 
rated from knowledge of the heart. 

• Spatiotemporal context: A physical sys- 
tem is situated in space and time. 
Knowledge of the physical system 
comprises knowledge of its history 
and mode of production. 

• Terminological context: The predicates 
used in the axiomatization of the 
properties of a physical object are 
always somewhat problematic in prac- 
tice. For example, specifying in prac- 
tice what it means for a physical table 
to be flat raised many problematic 
issues. 

• Evidential context: It is impossible to 
separate what we know about a 
physical object from how we came to 
know it. Axiomatization of the 
methods by which the axiomatized 
knowledge came to be known further 
enlarges the axiomatization. 



The DEC System-20 is a good case 
in point. In the first place, observe that 
the DEC System-20 is an extremely 
simple system in comparison with, 
say, the human kidney. Furthermore, 
the DEC System-20 is an artificial 
human construct that was designed to 
be consistent with some simple re- 
quirements. Nevertheless, despite the 
best efforts of software engineers, the 
formal description (axiomatization of 
documentation and code) of the DEC 
System-20 remains inconsistent. 
There are inconsistencies in the docu- 
mentation as well as inconsistencies 
between the documentation and the 
code. Although inconsistencies are 
continually being removed from the 
system, the experience is that more 
inconsistencies are always found 
immediately. 

Suppose that we were given un- 
limited funding to undertake the job 

[continued] 



TWO USE 

on a single board 




available in: 

8BIT 




M\ 






16BIT 



• 8 MHz Z80H-CPU speed 

• 256K per user 

• Can be used as a TPA or as a built-in 
RAM disk 

• Draws only 700 milliamps 

With these dual slave boards, each a 
powerful single board computer, you can 
double the users in your S-100 computer 
without sacrificing system speed. Mix and 
match them with virtually any other slave 
or system masters. 




8 MHz 8088-2 CPU 

128K-512K per user 

DMA data transfer to system master 



By utilizing the upgraded processors, 
industry standard compatibility is main- 
tained, providing the user with IBM-PC, 
MS-DOS, CP/M 80 and Turbo-DOS software 
compatibility. 

Intelligent Computer Designs Corp. 

9252 Garden Grove Blvd. 
Garden Grove, CA 92644 
Tel: 714-638-3622 
TLX: 312659-INTELL Comp-UD 



Place your orders now to 
ensure fast delivery. 

COMING SHORTLY! 

A new Z80H, 8 MHz master 
board with on-board HDC/ 
FDC/Tape, supporting follow- 
ing interfaces: ST506, SA1000, 
ST412HP, ESDI, and the new 
RLL encoding methods. 

IBM-PC is a registered trademark of IBM 

Corp. 

MS-DOS is a trademark of Microsoft 

Corp. 

Turbo-Dos is a trademark of Software 

2000. Inc. 

CP/M is a trademark of Digital Research 

Corp. 



230 BYTE • APRIL 1985 



Inquiry 200 




We've Put a 

Local Area Network 

on a Disk 

Corporate Information Sharing. It's been described 
as the key to increasing a company's productivity. It's 
also why large networks of PC's are becoming more 
and more common in the workplace. . . in spite of the 
fact that they're costly difficult to install, and incompat- 
ible with much existing software. 

Finally, there's a solution to this corporate dilemma. 
Its name is LANLink™ 

A Software-Driven LAN That Uses Standard, 
RS-232 Ports. A major breakthrough in local area net- 
works, LANLink™ uses your computers' existing serial ports 
and runs under PC-DOS. 

Because all of the intelligence the network requires is 
on the server and satellite diskettes, expensive network 
interface boards aren't required. 

A Powerful Network That's Cost-Conscious. If 

you've been pricing board-driven LAN's, you already 
know that they can cost over $1,000 per workstation. 

LANLink™ is different. 

Boasting a data transfer rate in excess of 100,000 BPS, 
LANLink™ is compatible with a wide range of programs. 
And because special boards aren't required, installa- 
tion costs are one-third that of a traditional network. 

A Network Designed the Way Business Works. With 
LANLink™ you're able to customize your network along 
departmental lines using a data-sharing hierarchy and 
password-protected access. 

Get Started With LANLink™ TODAY. Call The Software 
Link TODAY for complete details and the authorized 
dealer nearest you. The LANLink™ Starter Kit, priced at 
$495, comes complete with network software for both a 
server and a satellite computer. For a limited time, 50 
feet of RS-232 cable will be included free of charge. 

LANLink™ is immediately available and comes with 
a money-back guarantee. VISA, MC, AMEX accepted. 

LAIMjink 

QjD) THE SOFTWARE LINK, INC. 

Developers of MultiLink™ and MultiLink Advanced™ 

8601 Dunwoody Place, Suite 336, Atlanta, G A 30338 Telex 4996147 S WLINK 

CALL: 404/998-0700 
Deafer Inquiries Invited 

MultiLink, MultiLink Advanced & LANLink are trademarks of 
The Software Link, Inc. PC-DOS is atrademarkof IBM Corp. 

Inquiry 354 



t^toeeftp 



Sweet-P Model (SP600) 

A six-pen graphics plotter that's more 
compatible . . . uses more software. 



Last year 430 million business 
slides were made at a cost of 
$3.2 billion. Most of these slides 
were manually generated.* 
These slides could have been 
made on Sweet-P® Personal 
Plotters™ . Faster and better. 
With a savings of millions of $! 

The Sweet-P SP600 is a high 
quality American made precision 
machine. It's fast. It plots 14 inches 
per second. It's beautiful for office 
and technical work. 

Over 100 graphics software 
packages drive the Sweet-P™ 
world famous packages like Lotus 
1-2-3™ Framework™ and Super- 
Calc™ technical software like 
AutoCAD™ PC AD Robographics™ 
and dedicated business graphics 
software such as Micro-soft Chart, 
ChartStar™ Energraphics™ Chart- 
master™ and pfs Graph!" 

Pens are capped automatically 
when not in use, so that pens last 
longer and start quicker. 



The Sweet-P easily connects to 
almost any computer. It has RS-232 
serial and Centronics™ parallel 
connectors. And it supports two 
standard graphics languages— 
Sweet-P Graphics Language 
(SPGL™) and Hewlett-Packard 
Graphics Language (HPGL™). 

The Sweet-P plots on almost any 
media. Make brilliant overhead 
transparencies. Plot on film, and on 
plain and coated papers. 

Save on wiring costs too. The 
Sweet-P will "eavesdrop" on the 
RS-232 cables that connect your 
terminals now. (This makes it easy 
for Sweet-P to join local and long 
distance networks.) 

What about support? Sweet-P 
customers get fast professional 
help with software, hardware and 
interface questions. And warranty 
and service support is quick. 

Sweet-P Model 600 also comes 
with 18 ANSI ASCII internal Char- 
ter sets. 



only $1,095 




U.S. DISTRIBUTORS 

Arizona 

First Source Distributing 
(602) 263-1950 

California 

Zenith Data Systems • (415) 621-8545 

Colorado 

Ares Distributing • (303) 752-2972 

Florida 

Cain Bultman • (904) 356-4812 

Illinois 

PC Distributing • (312) 356-4812 
Zenith Data Systems • (312) 562-7300 



Kansas 

Inland Computer « 



(913) 492-9100 



Maryland 

Federal Data • (301) 986-0800 



Missouri 

Computime, Inc. 



• (314) 991-2991 



North Carolina 

Allison-Erwin • (704) 334-8621 



New Jersey 

Data Research « 
Buhl Industries < 



(201)569-2620 
(201)423-2800 



Pennsylvania 

Peirce Phelps, Inc. • (215) 879-7068 
Pryor Corp • (800) 245-0209 
Chessell Robocom • (215) 968-4422 

Tennessee 

Multi Computer Products 
(615) 528-7777 

Texas 

AMCAD, Inc. • (214) 323-070Q 
National Marketing Inc. 
(214)386-8151 



Washington 

Comquest Systems * 



(206) 641-7650 



Canada 

Altel Data -(403) 259-7814 
Interworld Electronics Inc. 
(604) 984-4171 
The Pringle Group 
(416) 449-5640 



^ 



Enter Computer Inc. 
6867 Nancy Ridge Dr. 
San Diego, CA 92121 

619-450-0601 • 800-227-4371 C A 
800-227-4375 • TELEX-181740 

Come see us at these Trade Shows 
March 21-24 Comdex/Anaheim 
CA« Booth #1182 
April 14-18 NCGA 857Dallas, TX 
Booth #506 

Trademarks: Sweet-P. Six Shooter. Personal Plotter, 
SPGL. Enter Computer. Inc.; HPGL. Hewlett-Packard; 
Lotus, Lotus Development Corp; Framework. Ashton- 
Tate: Super- Calc. Sorcim, Inc.; AutoCAD, Autodesk; 
PCAD Robographics, Chessell-Robocom, Inc.; Chart 
Star, Micro-Pro lnt'l Corp.; Energraphics, Enertronics 
Research, Inc.; pfs Graph, Software publishing 
Corp.; Chart-Master, Decision Resources; Cen- 
tronics, Centronics Corp. 

Source notes: *Yankee Group. The Technical Office. VoMll 1983 
**Wharton School Study. September 198! 

Inquiry 143 for Dealers. 
Inquiry 144 for End Users. 



OPEN SYSTEMS 



of making the description of the DEC 
System-20 consistent. We would have 
to control the process by which the 
system grows and evolves. In par- 
ticular, we would have to handle all 
changes to the documentation and 
code in face of the following external 
requirements: 

• Bugs in both the code and docu- 
mentation must be fixed 

• New functions must be incor- 
porated to meet the customers' 
changing needs 

• The system must accept changing 
interfaces to other systems such as 
peripherals and networks 

There is no way to prove that the 
process by which the DEC System-20 
evolves will result in new releases with 
consistent formal descriptions. An ax- 
iomatization of the code and docu- 
mentation of even a system as simple 



as the DEC System-20 is, in practice, 
inconsistent despite enormous efforts 
made to achieve consistency. 

A second claim I make is that the 
axiomatizations of the human knowl- 
edge about any physical systems will 
forever be inconsistent. I call it the 
Conjecture of Perpetual Inconsisten- 
cy: Removing some inconsistencies 
from an axiomatization of the human 
knowledge about a physical system 
leaves an axiomatization which is 
nevertheless inconsistent. 

Message -Passing Semantics 

Consideration of the previous claim 
suggests that we need to examine 
how logic treats inconsistency. Incon- 
sistencies have some important im- 
plications of the utility of logic pro- 
gramming as a foundation for intelli- 
gent systems. The logical view of in- 
consistent theories is clear: They are 
meaningless because they corre- 



spond to no possible world. The 
logical account of meaning is too 
stringent for nontrivial empirical 
systems because inconsistent beliefs 
and descriptions are not meaningless. 
Inconsistency is inherent in the enter- 
prise of expressing the human knowl- 
edge of physical systems. A theory of 
meaning that maintains that inconsis- 
tent descriptions are meaningless is 
not directly applicable to problems of 
empirical knowledge. 

In model theory, the meaning of a 
sentence is determined by the models 
that make it true (see reference 24). 
For example, the conjunction of two 
sentences is true exactly when both 
of its conjuncts are true. r IVuth- 
theoretic semantics assumes that it is 
possible to give an account of truth 
in itself, free of interactional issues, 
and that the theory of meaning can 
be based on such a theory of truth. 

{continued) 



Cheap Shot 




Get instant slides and prints 
directly from your personal 
computer. Introducing 
Screenshooter.™ Only $175. 

Now there's a 
simple, low-cost 
way to make 
instant prints 
and slides 
from any 
color or 

monochrome computer monitor. Doit 
yourself. On-the-spot. Right at your 
own desk. 

Screenshooter includes the Polaroid 
OneStep 600 instant camera, CRT hood, 
CRT hood adapter, diopter lens, and 
35mm SLR camera bracket. Plus a 90- 
day money-back satisfaction guarantee! 

Add the Polaroid 35mm Instant Slide 
System and use your 35mm camera 
to make instant slides for last-minute 
presentations. The system includes an 
AutoProcessor, slide mounter, and 
custom slide mounts. Just $99. 

Inquiry 306 



Free Film Offer* 

Order by June 30, 1985 and get two 
free packs of Polaroid 600 High Speed 
film with your Screenshooter and two 
free 12-exposure rolls of Polachrome 
Instant Slide film with your 35mm 
Instant Slide System. 
Why wait? 




"Offer void where prohibited. U.S. residents only. 
"Polaroid"® "Screenshooter'TM 



r 



Shoot your computer for $175! 

Send check, money order, credit card number, 

or corporate purchase order, plus the completed 

coupon to: NPC Screenshooter Promotion, P.O. 

Box 245, Newton Upper Falls, MA 02164. Or call: 

800-225-1000. 

Please rush me: 

_ Screenshooter(s) @ $175 

_ Polaroid 35mm Instant Slide 

System(s) @ $99 

Shipping and handling 

(@ $1.75 per item) 

Add sales tax where applicable 

Total purchase price 

I would like to pay by: □ Corporate Purchase Order 

□ MasterCard □ VISA □ Check/Money Order 



CORPORATE PURCHASE ORDER NUMBER 



CREDIT CARD NUMBER 



EXPIRATION DATE 



Screenshooter 

A product of Newton Plastics Corp. B 4/85 

APRIL 1985 -BYTE 233 



OPEN SYSTEMS 



Message-passing semantics takes a 
different perspective on the meaning 
of a sentence: It takes the meaning of 
a message to be the effect it has on 
the subsequent behavior of the sys- 
tem. In other words, the meaning of 
a message is determined by how it af- 
fects the recipients. Each partial 
meaning of a message is constructed 



by a recipient in terms of how it is pro- 
cessed (see reference 12). At a deep 
level understanding always involves 
categorization, which is a function of 
interactional (rather than inherent) 
properties using the perspective of in- 
dividual viewpoints (see reference 13). 
Meaning is thus fundamentally inter- 
actional. The meaning of a message 



Z-Engine delivers 



& 






CP/Nfforyour Apple® &$** 

Z-Engine delivers a trainload of ^ \^H5£\, /'©.^V 
additional programs to your 
Apple II, II + , He or Apple com- 
patible computer. Many of the 
most powerful and sophisticated pro- 
grams available today are CP/M based 
Z-Engine opens the door to them all. 
You might expect that something that 
gives so much would cost so much. Not so. 
Z-Engine is, undoubtedly, one of the 
greatest values in the microcomputer industry. 
Z-Engine is first class service at economy fare. 
Once the Z-Engine has been delivered we don't shut 
off the steam - we support our products - and 
guarantee them. If you knew what we know 
about the Z-Engine you'd be our next customer. 
The Z-Engine delivers. 

Advanced Logic Systems 

1195 East Arques Ave. 
Sunnyvale, CA 94086 
(408) 730-0307. 



s *> 



. 



■ 








is open-ended and unfolds indefinite- 
ly far into the future as other reci- 
pients process the message. Accord- 
ing to message-passing semantics, 
meaning is communication-based, not 
logic-based. 

Need for Due-Process 
Reasoning 

In the presence of conflicting informa- 
tion and contradictory beliefs, logical 
proof is inadequate as a reasoning 
mechanism. Instead we need due- 
process reasoning that investigates dif- 
ferent sides of beliefs, goals, and 
hypotheses that arise. 

Consider the following hypothesis 
to illustrate due-process reasoning: 
"Nixon was guilty of destruction of 
evidence in the Watergate case by 
erasing a portion of a tape recording." 
One possible approach in logic pro- 
gramming is to gather evidence in 
favor of the hypothesis and attempt 
to fashion the evidence into a logic 
proof (perhaps augmented with "cer- 
tainty factors" or "default assump- 
tions"). The other approach is to use 
"negation as failure" to conclude that 
the hypothesis is false because it can- 
not be proved from the available 
knowledge. Both of the approaches 
are inadequate in this case. No mat- 
ter how much evidence is produced 
and analyzed, logical proof (either for 
or against Nixon's guilt) is unbalanced 
because it presents only one side of 
the case in the form of a proof. Using 
"negation as failure" to draw conclu- 
sions from the inability to construct 
such a proof is equally limited. A 
balanced approach requires debate 
between differing positions and 
weighing presented evidence. 
Debates are not structured in the 
same way as logical proofs. 

Due-process reasoning is the pro- 
cess of collecting and analyzing the 
evidence and arguments presented 
by all interested parties. Advocates col- 
lect evidence and organize arguments 
in favor of the hypothesis. In parallel, 
skeptics collect evidence and organize 
arguments against the hypothesis. 
Then a debate is conducted on 
grounds for deciding the case in 
terms of motive and ability. The ques- 



234 B YTE • APRIL 1985 



Inquiry 16 



OPEN SYSTEMS 



tion of motive is whether Nixon 
thought that he would benefit by eras- 
ing the tape. The question of ability 
is whether he could have erased the 
tape. Both advocates and skeptics 
recursively make use of due-process 
reasoning while investigating, organiz- 
ing, and presenting their cases. The 
advocates and skeptics operate inter- 
dependently in collecting evidence 
(through discovery processes and 
disclosure requirements) as well as in- 
teracting by debating each others' 
cases in a decision-making process 
that is fundamentally different from 
logical proof. 

Prolog 

Advocates of logic programming ini- 
tially developed a programming lan- 
guage called Prolog that was based 
on the goal-invoked procedural inter- 
pretation of implication discussed 
earlier in the section on Planner (see 
reference 1 1). The example discussed 
earlier to the effect that "In order to 
show that x is mortal, establish a 
subgoal to show that x is a man" is 
written in Prolog as: 

mortal (x) :- man (x) 

The original Prolog was a much 
simpler language than Planner, which 
was a considerable advantage in 
terms of pedagogy and ease of imple- 
mentation. But now Prolog, like the 
Planner-like languages before it, has 
fissioned into incompatible dialects 
based on the procedural interpreta- 
tion of logic, pattern-directed invoca- 
tion, message-passing theory, and de- 
scription systems (see references 4, 9, 
and 12). 

In addition to the general limitations 
of logic programming discussed 
earlier, Prolog has some idiosyncratic 
weaknesses all its own. The closed- 
world assumption is the hypothesis 
that the locally available knowledge 
is complete; i.e., if a proposition does 
not follow from the local knowledge 
base, then it is assumed to be false 
(see reference 18). Planner could 
make use of the closed-world assump- 
tion using its ability to conditionalize 
a plan (theorem) on the exhaustive 

[continued) 



■ 



How Do I 

Choose the 

Right Personal 

Computer 

Monitor? 










APRIL 1985 -BYTE 235 



Engineering 
Excellence 




"fcte Cunt* OfTuEt Mr fit 



DESIGNED BY 



IBIMsM^tfJJ 



CROSSTALK IS ATRADEMARK OF 
MICROSTUF, INC., ATLANTA, GEORGIA 

CROSSTALK IS AVAILABLE FOR 
MOST SMALL BUSINESS 
COMPUTERS 



OPEN SYSTEMS 



failure to establish a goal. In fact, 
Winograd made strong use of the 
capability in SHRDLU. Influenced by 
Planner, Prolog went much further 
and adopted a very strong form of the 
closed-world assumption as a basic 
postulate of the programming lan- 
guage in incorporating negation as 
failure. (Relational database systems 
make use of a similar strong hypothe- 
sis: If an entry is not found in a rela- 
tional table, then the relationship is 
false.) The strong use of the closed- 
world assumption in Prolog is incom- 
patible with the need in open systems 
to allow for the open-ended in- 
cremental introduction of new beliefs 
and objects. 

Information-Processing 
Principles for the Future 

The term reflection has been much 
discussed in the current AI literature 
(see references 2, 4, 7, 22, and 26). 
It is universally conjectured that 
reflective problem capabilities will be 
important to improving machine 
problem-solving capabilities. How- 
ever, a danger is developing that the 
important problems will be neglected 
unless reflective problem solving is 
taken to encompass the following 
minimum capabilities: 

• History of its own behavior: What did 
you do then? 

• Representation of its own information- 
processing procedures'. How do you make 
decisions? 

• Knowledge of the relationship between its 
previous behavior and current procedures: 
What would you do differently and 
why? 

• Representation of its procedures for inter- 
acting with the external world: How do you 
control things? 

The current state of the art in imple- 
menting reflective systems is extreme- 
ly primitive. Many of the issues and 
questions itemized above have not 
yet been properly addressed. 

Besides reflective problem solving, 
other principles should be adopted in 
constructing reliable systems that 
meet the needs of open systems. 

[continued) 
«•— Inquiry 267 



■ 



Will It Work 

with ivy PC? 

Before you can experience the full 
capabilities a high performance 
monitor offers, it has to work with 
your personal computer. That's why 
Princeton Graphic Systems makes 
high resolution monitors compatible 
with most popular brands of personal 
computers. IBM, Compaq, Corona, 
Apple and more. But we go one step 
further. By paying close attention to 
ergonomic detail, we make Princeton 
Graphic Systems monitors compatible 
with you, the computer system user. 




^/a^eaaaaassa ^va 









APRIL 1985 -BYTE 237 



'siliSHislI w////^\\\\^»^i 



I HI 




Your personal computer deserves the 
unequalled monitor quality of Sakata 

Your computer deserves the most monitor 
quality value possible.. .and so do you. SAKATA 
CRT DISPLAY MONITORS give you more 
monitor quality than the most expensive 
monitors available. Each SAKATA MONITOR 
provides unequalled color reproduction; 
sharpest and most vivid graphics; text that you 
read more easily than you ever expected; 
and technical characteristics and capabilities 
that will amaze you. 

Protect your personal computer's 



COLOR COMPOSITE 




performance by utilizing SAKATA CRT 
MONITORS which provide the utmost in 
monitor value. Choose from an entire line of 
Composite Color; RGB High Resolution Color; 
RGB Super High Resolution Color and two 
monochromes (green and amber) that have 
more quality than other monochrome monitors. 
"We promise performance". 

SAKATA CRT MONITORS are available 
wherever personal computers are sold or write 
for technical and illustrated literature and prices. 



SAKATA U.S.A. CORPORATION 

651 Bonnie Lane, Elk Grove Village, IL 60007 

(312) 593-321 1 800-323-6647 (outside Illinois) 



"Serving industry worldwide since 1896" 




RESOLUTION COL 



SG-1000 
MONOCHROME GREEN 



OPEN SYSTEMS 



• Serendipity: It is not critical whether 
the system learns of a result before 
it can be used in a problem-solving 
task or after work has commenced on 
the task. 

• Pluralism: There is no central arbiter 
of truth in the system. 

• Accessibility: All knowledge of the sys- 
tem (including its own procedures) 
should be able to be applied to any 
problem. 

• Parallelism: The system should be 
able to mobilize its full resources in 
parallel instantiations for different 
aspects of large-scale problems. 

• Due-process reasoning: The system col- 
lects and debates alternatives to 
decide among beliefs and goals. 

• Reflection in practice: Knowledge (in- 
cluding self-knowledge) should inform 
practice, and practice should modify 
hypotheses, beliefs, and goals. 

• Reasonableness: The system should 
perform efficiently in the face of con- 
flicting information and inconsistent 
beliefs. 

Conclusions 

In practice, the human knowledge of 
a physical system cannot be con- 
sistently axiomatized. Every physical 
system is open in the sense that it is 
embedded in a larger physical en- 
vironment with which it interacts asyn- 
chronously. In general, open systems 
are not totally in control of their fate. 
In contrast, closed systems (like Peano 
arithmetic and point-set topology) are 
exactly characterized by rules and 
laws. 

Proponents of logic programming 
have maintained that it is a suitable 
basis for all programming and is the 
programming paradigm for the future. 
Logic programming has some funda- 
mental limitations that preclude its 
becoming a satisfactory programming 
methodology. It is inadequate for the 
needs of open systems because it is 
based on logical operations instead 
of communication primitives and 
logical reasoning instead of due- 
process reasoning. Decisions in open 
systems are justified by agreements to 
act in certain ways. Justification by 
agreement stands in contrast to justi- 

[contimed) 
<•— Inquiry 342 



Does It Give 
MeABright, 
Sharp Image? 

Take a close-up look at the display. 
Bright, crisp characters and sharp, 
colorful graphics mean you're getting 
a high-quality image. The kind of im- 
age that comes with every Princeton 
Graphic Systems' monitor. Because 
Princeton Graphic Systems combines 
flicker-free technology, a fine dot 
pitch, and a nonglare screen to give 
you an image that PC World's World 
Class Survey rates number 1 . . . 




APRIL 1985 -BYTE 239 



Only from Topaz. . . 

Powermaker Micro UPS 

Uninterruptible , computer-grade power 
— at half the cost 






It's in a class by itself. 

For about half the cost of other Unin- 
terruptible Power Systems, you can 
now get the same degree of protection 
with our Powermaker Micro UPS. This 
remarkable new system eliminates com- 
puter problems caused by blackouts, 
brownouts, voltage sags and power-line 
noise. 

Providing up to 75 minutes of con- 
tinuous computer-grade power, our 
Powermaker Micro UPS is compatible 
with microcomputers and PCs. It's 
fully automatic, maintenance-free, 
portable and compact. It fits neatly 
alongside or under your desk or work- 
station. And because you can't always 
tell when you've lost primary power, 
our little UPS even features an audible 
line-loss alarm. 

But best of all is the price. The Power- 
maker Micro UPS is priced right and is 
ready for immediate shipment. Find out 
more about our Powermaker Micro UPS. 
Call us at (619) 279-0831, or contact 
your local Square D distributor. 



TOPAZ 

Excellence in Computer Power 



SPURRE D CDMPHNY 



240 BYTE v APRIL 1985 



Inquiry 385 for Dealers. Inquiry 386 for End Users. 



OPEN SYSTEMS 



fication by logical proof; interaction 
with the physical world involves deal- 
ing with conflicting and contradictory 
information in a way that does not fall 
within the scope of decision making 
by logical proof. Prolog also suffers 
from the limitation of "negation as 
failure," restricting it to a closed-world 
assumption that is incompatible with 
the nature of open systems. 

We need foundations for intelligent 
systems based on principles of com- 
mutativity. pluralism, accessibility, 
reflection in practice, and due-process 
reasoning. Logical reasoning is a 
useful module in the repertoire of an 
intelligent system, but it is not the 
whole show. ■ 

ACKNOWLEDGMENTS 
Many of the ideas in this paper have been 
developed jointly with the members of the 
MIT Message Passing Semantics Group 
and the TYement Research Institute. I 
would especially like to express my ap- 
preciation to Gul Agha, Gerald Barber, 
Peter de Jong, Elihu M. Gerson. and Susan 
Leigh Star for their aid and the founda- 
tional work on which this paper builds. 
Jonathan Amsterdam, Mike Brady, Mike 
Brooks, Toni Cohen, Peter de Jong, John 
Kam, Henry Lieberman, John Mallery, 
Fanya Montalvo. Karen Prendergast, 
Claudia Smith, and John Ifeeter provided 
valuable comments and criticisms that 
helped greatly to improve on earlier drafts. 
Over many years I have benefited from ex- 
tensive interactions with Richard 
Weyhrauch, who has a profound under- 
standing of the issues discussed here. 

The content of this paper comes from 
talks I have given at Stanford University 
in June 1 983. at panels for IFIP-83 in Paris, 
at the MIT Artificial Intelligence Lab- 
oratory in November 1983, at BBN. at MIT 
Sloan School, and at the AAAS in New 
York during June 1984. Comments, 
criticisms, and arguments developed in 
these seminars have been invaluable in 
developing this paper. I would like to ex- 
press special appreciation to Bob Moore. 
Nils Nilsson. Steve Hardy, Richard 
Waldinger. and others for valuable feed- 
back during and after the Stanford 
seminar; Bob Kowalski and Doug Ross at 
the IFIP-83 panel; Jan Komorowski at the 
MIT seminar; David Israel at the BBN 
seminar; Tom Malone and Gerald Barber 
at the Sloan School seminar; as well as 
Victor Lesser, Jerry Hobbs. and Lucy 

[continued) 



How About 
Dependability? 

You rely on your personal computer 
system to help get your work done. 
That's why it's important to choose a 
monitor built for reliability. Princeton 
Graphic Systems monitors are built 
under the highest quality control stan- 
dards, backed by a full one-year war- 
ranty and supported by a nationwide 
service network? The result: monitors 
that perform when you need them, 
day in and day out . . . 



*Bell & Howell, Xerox, MAI Sorbus Service and 
Princeton Graphic Systems. 




APRIL 1985 -BYTE 241 



Inquiry 29 



INCREDIBLE 

DATABASE 

VALUE 



A multifile database 

witha . **&*] 

programming 

language— 

at a 

fantastic 

price! 



VersaForm's new XL database isn't just 
promises— it's here now! InfoWorld gave it a 
3-Star rating . . . same as dBASE III*. Yet XL 
offers— FOR ONLY $99!— all the features 
you'd expect in a database costing 4 times as 
much! 

Accounting applications are XL's strength. 
Invoicing, purchasing, and shipping almost 
create themselves as you design the forms. 
A/R and inventory examples are included in 
the package. 

XL has over 50 built-in functions to control 
file access, printing, and user dialogues. 
Develop transaction-based applications 
faster than with any other database! 

• Structured language accesses 
multiple files. 

• Columns that scroll can be part 
of any record. 

• Automatic calculations for 
totals, taxes, etc. 

• Automatic entry checking prevents errors. 

• Prints on your existing pre-printed forms. 
COMPARE THE BIG THREE 





VersaFormXL 


dBASE III* 


R BASE 4000* 


PRICE 


99 


695 


495 


STRUCTURED LANGUAGE 


Y 


Y 


Y 


COLUMNS WITHIN 








OATA RECORDS 


Y 


N 


N 


ON-SCREEN CALC 


BUILT-IN 


MUST WRITE 


MUST WRITE 






PROGRAM 


PROGRAM 


FORMS OUTPUT 


BUILT-IN 


MUST WRITE 


MUST WRITE 






PROGRAM 


PROGRAM 


DATE ARITHMETIC 


Y 


Y 


N 


DATA TYPES 


DYNAMIC 


FIXED 


FIXED 


COLUMN TOTAL OPERATOR 


Y 


N 


N 


OUERY BY EXAMPLE 


Y 


N 


EXTRA 


MAX FILE SIZE 


4MB 


OPEN 


OPEN 


MAX RECORD SIZE 


4000 


4000 


1530 



Ironclad Money Back Guarantee 

Try VersaForm XL for 30 days. If not fully 
satisfied, return it for your money back. 



Single-File 
version $69 



Now£ 
just ^ 



99 



Toil-Free: 1-800-538-8157 ext. 880 

In California, call: 

Toil-Free: 1-800-672-3470 ext. 880 

Applied Software Technology (408) 370-2662 
1350 Dell Avenue, Ste. #206-xx, Campbell. CA 
95008 
Yes! I want: 

VersaForm XL for IBM PC, XT, AT, etc. ($99) 

Needs 192K, 2 drives. Hard disk recommended. 

Single-file VersaForm for IBM. etc. ($69) 

Needs 128K. 2 drives or hard disk. 

Single-file VersaForm for Apple II ($69) 

Needs 64K. 2 drives. 
Include $4.50 for U.S. shipping. $7.50 for C.O.D. 
California residents add 6.5% tax. Allow2-3wks. 

Check enclosed MasterCard VISA C.O.D. 

Acct. No.: Expires: 

PLEASE PRINT CLEARLY 

Name ^^_^^__ 



Zip 



City 

Phone 

'dBase III is a registered trademark of Ashton-Tate. 
R: BASE 4000 is a registered trademark of Microrim Inc. 



State 

. Sign here . 



OPEN SYSTEMS 



Suchman at the AAAS session. Allen 
Newell took the time to give me an over- 
view of some of the aspects of his recent 
work on foundations in July 1984. 

This paper describes research done at 
the MIT Artificial Intelligence Laboratory. 
Major support for the research reported 
in this paper was provided by the System 
Development Foundation and Wang 
Laboratories. Major support for other 
related work at the Artificial Intelligence 
Laboratory is provided, in part by the Ad- 
vanced Research Projects Agency of the 
Department of Defense under Office of 
Naval Research contract N0014- 
80-C-0505. I would like to thank Charles 
Smith and Patrick H. Winston for their sup- 
port and encouragement. 

REFERENCES 

1 . Agha, Gul. "Semantic Considerations in 
the Actor Paradigm of Concurrent Com- 
putation." Proceedings of the NSF/SERC 
Seminar on Concurrency. New York: Springer- 
Verlag, 1984. 

2. Batali, ). "Computational Introspection." 
Al Memo 701. Cambridge. MA: MIT Ar- 
tificial Intelligence Laboratory, February 
1983. 

3. Clinger, W. D "Foundations of Actor 
Semantics." AI-TR-633. Cambridge. MA: 
MIT Artificial Intelligence Laboratory. May 
1981. 

4. Doyle, J. "A Model for Deliberation. Ac- 
tion, and Introspection." AI-TR-581 . Cam- 
bridge. MA: MIT Artificial Intelligence 
Laboratory, 1980. 

5. Hewitt, C. "PLANNER: A Language for 
Proving Theorems in Robots." Proceedings 
of IICAI-69. Washington, DC: IJCAI. May 
1969. 

6. Hewitt, C. "Description and Theoretical 
Analysis (Using Schemata) of PLANNER: 
A Language for Proving Theorems and 
Manipulating Models in a Robot." 
Al-TR-258. Cambridge, MA: MIT Artificial 
Intelligence Laboratory, April 1972. 

7. Hewitt. C. and P de Jong. "Analyzing 
the Roles of Descriptions and Actions in 
Open Systems." Proceedings of the National 
Conference on Artificial \ntelligence. AAAI. 
August 1983. 

8. Israel, D. "A Short Companion to the 
Naive Physics Manifesto." In Formal Theories 
of the Common Sense World. J. Hobbs. ed. 
Abelex, 1984. 

9. Kahn. K. "How to Implement Prolog on 
a LISP Machine." In Implementations of Pro- 
log. Campbell. J. A., ed. New York: John 
Wiley & Sons, 1984, pages 117-134. 

10. Kornfeld. W. A., and C. Hewitt. "The 
Scientific Community Metaphor." IEEE 
Transactions on Systems. Man. and Cybernetics. 



SMC-11, I. January 1981. 

1 1 . Kowalski. R . A . "Predicate Logic a s Pro- 
gramming Language." Proceedings of IFIP-74. 
IFIP, 1974. 

12. Kowalski. R. A. In The SIGART Special 
\ssue on Knowledge Representation. R. Brachman 
and B. Smith, eds. SIGART. 1978. 

13. Lakoff. G.. and M. Johnson. Metaphors 
We Live By. Chicago: University of Chicago 
Press, 1980. 

14. McCarthy. J. "First Order Theories of 
Individual Concepts and Propositions." 
Stanford. CA: Stanford University Press, 
July 1977. 

15. Minsky M. "A Framework for Repre- 
senting Knowledge." In The Psychology of 
Computer Vision. Winston. P.. ed. New York: 
McGraw-Hill. 1975. 

16. Newell. Allen. "Reasoning. Problem 
Solving, and Decision Processes: The 
Problem Space as a Fundamental 
Category." Technical Report CMU-CS-79-133. 
CMU. June 1979. 

17. Reddy. M. "The Conduit Metaphor." In 
Metaphor and Thought. Ortony. A., ed. Cam- 
bridge: Cambridge University Press. 1979. 

18. Reiter. R. "On Closed World Data 
Bases." logic and Data Bases. New York: 
Plenum Publishing Corp., 1981. 

19. Rudin. L. "Lambda-Logic" Technical 
Report 4521. Pasadena. CA: California In- 
stitute of lechnology. May 1981. 

20. Selfridge. O. "Pandemonium: A 
Paradigm for Learning." Technical Report 
JA-1140. Cambridge: MIT 1958. 

21. Shapiro. E. "A Subset of Concurrent 
Prolog and Its Interpreter." Technical Report 
TR-003. ICOT. January 1983. 

22. Smith. B. "Reflection and Semantics in 
a Procedural Language." IHS-TR-272. 
Cambridge. MA: MIT Laboratory for 
Computer Science. 1982. 

23. Sussman. G. J.. T Winograd. and E. 
Charniak. "MICROPLANNER Reference 
Manual." Al Memo 203. Cambridge. MA: 
MIT Artificial Intelligence Laboratory. 
1970. 

24. larski. A. "The Semantic Conception 
of Truth." Philosophy and Phenomenological 
Research 4 (1944). pages 341-375. 

25. van Emden. M.. and R. Kowalski. 'The 
Semantics of Predicate Logic as a Pro- 
gramming Language." JACM 23. No 4 
(1976). pages 733-742. 

26. Weyhrauch. R. "Prolegomena to a 
Theory of Mechanized Formal Reasoning." 
Artificial Intelligence 13. I. 2 (April 1980). 
pages 133-172. 

27. Winograd. T "Procedures as a Repre- 
sentation for Data in a Computer Program 
for Understanding Natural Language." 
Cambridge. MA: MIT Project MAC. MAC 
TR 83. 1971. 



242 BYTE • APRIL 1985 



Meet The Princeton 
Graphics Systems Family 

The right monitor at the right price. Princeton Graphic Systems offers you a complete family of high 
performance personal computer monitors. Monitors that deliver the compatibility, resolution, and reliability 
you need for any application and any budget: from word processing to sophisticated business graphics. 




HX-12E. High resolution RGB 
monitor -Compatible with IBM 
Enhanced Graphics Adapter 
-Nonglare screen -$785 



HX-12. High resolution RGB 
monitor -690 x 240 lines 
noninterlaced -.31 mm dot pitch 
tube-Nonglare screen -$695 



$^ 



HX-9/9E. Nine inch, high 
resolution RGB monitor -.28mm 
dot pitch tube - 9E compatible with 
IBM Enhanced Graphics Adapter 
-Nonglare screen -Green/amber 
switch -Apple/IBM colors - Etched 
dark glass screen -$650/$750 (9E) 






MAX-1 2. Amber monochrome 
-720 x 350 lines -Enhanced to in- 
terface with IBM color or 
monochrome adapter card 
-Nonglare screen -Can display 16 
shades of amber -$249 




SR-12P. PGS's top of the line 
RGB monitor - Analog input 
allows for the display of 
4,096 possible colors - 
Compatible with IBM Pro- 
fessional Graphics Adapter 
- Nonglare screen -$999 



SR-1 2. Super-high resolution RGB 
monitor -690 x 480 lines noninterlaced 
-.31 mm dot pitch tube - Nonglare screen 
- Requires interface card -$799 



Princeton Graphic Systems. The only real choice. 

For office or home use, Princeton Graphic Systems has a monitor that's right for you. Inquire 
at your local computer store about our complete line of high resolution color and monochrome 
monitors; monitors that live up to the Princeton Graphic Systems 'tradition of quality, perfor- 
mance, and value. Princeton Graphic Systems. 601 Ewing Street, Bldg. A, Princeton, N.J. 
08540. (609) 683-1660 Telex: 821402PGSPRIN (800) 221-1490. Ext. 504 



Princeton accessory product line. 

Undergraduate tilt/swivel monitor base, 
ColorView card, Green/Amber switch, RGB-80 card 
and Scan Doubler card. 



PRINCETON 



IBM IBM Enhanced Giaphics Adapter, and IBM Professional Graphics Adapter are trademarks 
ol Internalional Business Machines, Inc. Compaq is a trademark ol Compaq Computer Corp. 
Corona is a trademark ol Corona Data Systems. Inc. Apple is a trademark ol Apple Computer 
Corp. PC World is a trademark ol CW Communications Inc. 



GRAPHIC SYSTEMS 

AN INTELLIGENT SYSTEMS COMPANY 



Inquiry 312 



APRIL 1985 • BYTE 243 



m. 



V s 




vs 



^ 



Statistics, reports and plots 
happen magically with 
SPSS/PC -the Statistical 
Package for IBM PC/XTs * 

SPSS/PC is the most comprehensive 
statistical package for performing 
simple or complex tasks, regardless of 
data size. It maintains feature and 
language compatibility with mainframe 
SPSS; while optimizing for the PC 
environment. 

Statistics range from simple 
descriptive to complex multivariate, 
including Multiple Regression, ANOVA, 
Factor and Cluster analysis. Loglinear 
and nonparametric procedures 
are also included. 

Simple facilities allow 
transfer of files between 



SPSS/PC and programs like Lotus 1-2-3, 
dBase II and SAS. A complete Report 
Writer, Plotting facilities and a Communi- 
cations program for mainframes round 
out a fully integrated product. 

For more information, contact our 
Marketing Department without further 
ado. And see what a little stat magic can 
do for you. 

SPSS Inc., 444 N. Michigan Avenue, 
Chicago, IL 60611, 312/329-3500. 

In Europe: SPSS Benelux B.V., 
P.O. Box 115, 4200 AC Gorinchem, 
The Netherlands, Phone: +31183036711 
TWX: 21019. 

VISA, MasterCard and 
American Express 
accepted. 










PRODUCTIVITY RAISED TO THE HIGHEST POWER 



"SPSS/ PC runs on the IBM PC/XT or AT with 320K memory and a hard disk. An 8087 co- processor is recommended. Contact SPSS Inc. for other compatible computers. 
IBM PC/XT and AT are trademarks of International Business Machines Corporation. dBase II Is a trademark of AshtonTate. 1-2-3 is a trademark of Lotus Development Corporation. 
SAS is a registered trademark of SAS Institute, Inc. SPSS and SPSS/PC are trademarks of SPSS Inc. for its proprietary computer software. * Copyright 1985, SPSS inc. 



ARTIFICIAL INTELLIGENCE 



VISION 



by Dana H. Ballard and Christopher M. Brown 



Biology challenges technology 



VISION AND MOTOR CONTROL are 
such common capabilities in the 
animal kingdom that we do not usual- 
ly associate them with intelligence. Yet 
vision has always been a paradigm 
problem for artificial intelligence (AI), 
since it is mysteriously difficult. Tech- 
nology has mounted many responses 
to the biological challenge of reliable, 
versatile, real-time vision systems, but 
so far the resulting industrial systems 
only work in specialized settings (or 
domains). These systems are routinely 
used to inspect integrated circuits and 
manipulate parts but cannot be used 
outside of these limited contexts. For 
example, the systems' image input is 
binary (black and white), not the full 
gray-scale range provided by an input 
device such as a TV camera. Attain- 
ing such an image calls for carefully 
engineered lighting and imaging con- 
ditions. Also, to attain the necessary 
speed, the systems have simple algo- 
rithms that will not tolerate events 
such as parts obscuring one another 
or lying propped up at odd angles. A 
seemingly simple but elusive in- 
dustrial vision task, beyond the capa- 
bility of all current systems, is the "bin- 
picking" problem, one regularly sur- 
mounted by humans: It involves sim- 



ply grasping and removing parts 
jumbled together in a bin, not laid out 
flat on a special surface. 

Thus, fast, reliable computer vision 
is so hard that we can presently 
achieve it only in highly constrained 
and simplified domains. This makes 
the fast and reliable vision performed 
by biological systems all the more 
marvelous and mysterious. Somehow, 
humans perform recognition, descrip- 
tion, manipulation, and locomotion in 
a highly complex world of moving 
solid objects, both rigid and nonrigid, 
with complex (textured, transparent, 
glossy, etc.) surfaces and highly 
variable illumination conditions. 

General-purpose vision systems, 
which can build descriptions of their 
environment in general situations, re- 
main a research goal. Tbday, a consen- 
sus is emerging that such systems will 
be designed around two central ideas, 
originating in biology and redis- 
covered by researchers in technology. 
The embodiment of these ideas in vi- 
sion systems is a topic of much cur- 
rent concern and an area of rapidly 
expanding technological achievement 
and biological insight. 

The first idea is that vision systems 
use a hierarchy of representations 



that develops visual information in 
many intermediate stages to span the 
gap from input signal to cognitive 
symbols. Computer-vision researchers 
found the hierarchy to be a solution 
to several technical problems of com- 
puting and storage efficiency. Current- 
ly, researchers in the neurosciences 
are studying the extent of such a func- 
tional and physiological hierarchy in 
biological systems, and many signs 
point to biological versions of the 
computer-vision hierarchy. 

The second idea is parallel com- 
putation. Researchers have known for 
a long time that nervous systems com- 
pute in parallel, and they have made 
many attempts to model such com- 
putations. Recent work has provided 
new tools in these areas (see the ar- 
ticles in this issue "Learning in Parallel 
Networks" by Geoffrey E. Hinton on 
page 265 and "Connections" by 
Jerome A. Feldman on page 277) and 
powerful parallel computing engines 
are now realizable. In the remainder 

[continued] 
Dana H. Ballard is an associate professor and 
Christopher M. Brown is the chairman of the 
Department of Computer Science. University 
of Rochester (Ray P. Hylan Building, 
Rochester, NY 14627). 



«— Inquiry 363 



APRIL 1985 • BYTE 245 



VISION 



of this article, we will explore the two 
themes of representational hierarchy 
and parallelism in computational and 
biological vision. 

History and Background 

The digital analysis of visual input has 
been a research issue since the late 
1950s when computers became large 



enough to accommodate such data. 
After about a quarter of a century of 
development, computer vision is a 
large subfield of AI. Like robotic con- 
trol and computer-speech analysis, 
computer vision often uses "real" 
data— that is, the raw output of 
sensors— as its input. However, com- 
puter vision also uses more symbolic 



Q 



OBJECT. SCENE. EVENT RECOGNITION 



5 



SCENE DATA STRUCTURES 

FACES. EDGES. VERTICES 

OBJECT BOUNDARIES 

VOLUMES 

SPATIAL RELATIONS 



THREE-DIMENSIONAL ANALYSIS 
SEGMENTATION 
INTERPOLATION 
BOUNDARY AND OBJECT DETECTION 



DATA STRUCTURES 
REGIONS 
LINES 
SPATIAL RELATIONS 



PHYSICAL PROPERTY IMAGES 

SURFACE ORIENTATION 

MOTION 

STEREO FUSION 

REFLECTANCE 

DEPTH 



TWO-DIMENSIONAL ANALYSIS 
FEATURE -FINDING 
SIMPLE GROUPING 
IMAGE SEGMENTATION 



f INTRIN 



SIC IMAGE CALCULATION 







IMAGE(S) 

COLOR OR GRAYSCALE INFORMATION. 
POSSIBLY TIME -VARYING 



SCALING AND CORRECTION 

IMAGE PREPROCESSING 
NOISE REMOVAL 
CONTRAST ENHANCEMENT 
GAMMA CORRECTION 



SENSING 

TV INPUT 
DIGITIZATION 
REMOTE SENSING 



Figure I: The processes (ellipses) and data representations (rectangles) of a general 
computer-vision system. Processing can proceed from input data to symbolic description 
(a normal data-driven scheme) or in the reverse direction (where expectations guide 
processing). Control is most often thought to flow in both directions. Each stage of 
processing includes assumptions about how the image information is related to the 
phenomena of interest in the world. \n natural systems these assumptions may be 
innate or learned. 



246 BYTE • APRIL 1985 



or processed data. Thus, one vision 
program can have, for example, an ar- 
ray of gray-level intensities from a 
television image as input, while an- 
other program may take a symbolic 
description of a line drawing as input. 

The goals of computer vision are also 
diverse but may be characterized as 
seeking answers to "what," "where," 
and "why" questions. "What" ques- 
tions concern the identification of ob- 
jects in a scene; "where" questions in- 
volve the perception of the environ- 
ment in time and space; and "why" 
questions address causal relation- 
ships between objects. 

TYue computer vision, with the goal 
of understanding images of complex 
three-dimensional scenes, was first at- 
tempted in the early 1960s by Larry 
Roberts at MIT (see reference 1). His 
goal was to "understand" a scene 
made up of polyhedral blocks, in the 
sense of being able to produce a line 
drawing of the scene from any view- 
point. Roberts's system pioneered 
many fundamental techniques still in 
use today, not just in computer vision, 
but also in computer graphics. In par- 
ticular, the system analyzed digitized 
input images by identifying "edge 
elements" that might line up along the 
polyhedral edges (see figure 3b for an 
illustration of this technique in 
another application). The system then 
fused these edge elements to pro- 
duce longer lines that corresponded 
to the polyhedral edges (figure 3c 
again is similar) and matched the 
resulting line and polygon data struc- 
tures against three-dimensional 
models of primitive blocks. This pro- 
cess derived the scaling, rotation, and 
translation of the models needed to 
explain the image data, and this infor- 
mation allowed the system to produce 
the final line drawings, using basic 
computer-graphics techniques— also 
first attempted by Roberts— such as 
hidden-line removal. 

Roberts's goal was ambitious even 
by today's standards; No computer vi- 
sion system will perform the task of 
reliably identifying blocks on a table 
in the presence of occlusion and 
noise. However, such early work 

[continued] 

Inquiry 14 for Dealers. 
Inquiry 15 for End Users. — * 



3 USERS 
ON ONE 
CARD! 

IF you own an S-100 system . . . 

IF you need to expand to a 
Multi-User system . . . 

IF you are using TURBO DOS or 
NETWORK/OS... 

You can get 3 users on a single 
S-100 slave card! And pay the 
price of One! 

A 16-BIT 
MS-DOS 
COMPATIBLE 
BOARD 



Advanced Digital is proud to present its 
latest state of the art SUPER 16 S-100 slave 
board. CJsing intel 80186 (8MHz) and 256K 
Bytes of memory and 4 serial I/O ports, 
now each user in a multi-user environment 
can have a dedicated 16 bit system running. 
The SGPER 16 is designed to run with all of 
the INDUSTRY STANDARD S-100 master 
8/16 Bit. Operating systems supported 
are TURBO-DOS & NETWORK/OS. 



ADVANCED DIGITAL manufactures a complete line 
of S-100 Boards and Systems and PC add on products. 
Turbo-Dos is a trademark of software 2000. 
Network/OS is a trademark of CBIS. 
Multislave and super 16 are trademarks of ADC. 
MS-DOS is a trademark of Microsoft. 




Multislave 




Advanced Digital Corporation 

5432 Production Dr., Huntington Beach, CA 92649 



if j £ n w j Wl hi i. b ra rrs :* « i if±i iw±i * r m a 1 1 1 1 1 :i n 



Advanced Digital U.K. Ltd. 

27 Princes St., Hanover Square 
London WIR8NQ— United Kinadom 



(01) 409-0077/(01) 409-3351— Telex 265840 FINEST 



<& ADVANCED) 
DIGITAL / 

CORPORATION// 



VISION 



revealed the immense computational 
complexity of vision and the unreli- 
ability and inadequacy of sequential 
control structures to allocate process- 
ing power. 
Such a task requires an extraordi- 



nary amount of computation, which 
includes extracting physical informa- 
tion from an image, labeling image 
regions that correspond to significant 
objects, and symbolically describing 
objects in the image. 



f i f f f / I 
r f f f / t f 
t t t f f f I 
s f f t f t t 
t f f f i f f 
///.//// 
/////// 
/////// 
/////// 
/////// 



/iii. 

/ I I % v . 
I V U i « 

V \ \ i v >. 

V \ \ \ V ^ 



\ \ v \ 
i i i \ \ 
* ■ 1 I I \ 
''/III 
' ' / / / I 
> ' / / / / I 
' ' / / / / I 
''///// 



Figure 2a: Optic /low images (refrW pattern velocities caused by scene motion) from 
a rotating sphere and cylinder. 



Thus the field of computer vision is 
quite large. It includes the afore- 
mentioned industrial inspection sys- 
tems, as well as academic research ef- 
forts whose competence (what we 
must know to solve a problem) is 
often of more interest than their per- 
formance (how we actually solve the 
problem in real time). See the biblio- 
graphy at the end of this article for 
more material on the field of com- 
puter vision. 

In the 1970s a cognitive approach 
to computer vision arose, which con- 
veniently minimized image-level com- 
putation and emphasized the sym- 
bolic manipulations to which com- 
puters are well adapted. In such 
"knowledge-directed" vision, process- 
ing uses facts about such phenomena 
as gravity, support, occlusion, or the 
likely spatial relations between ob- 
jects in the scene. Research turned 
toward representing and manipulating 
facts about a particular setting (or do- 
main, such as a grouping of polyhedral 
blocks or an office scene) and exploit- 
ing the domain-specific knowledge in 
vision. 

However, the representation and 
application of knowledge is a very dif- 
ficult branch of AI, and the available 
techniques proved inadequate to 
bridge the gap between the input 
image and the desired symbolic de- 
scriptions of it. Thus in 1974. starting 
with Marr at MIT and Barrow and 
Ifenenbaum at Stanford Research In- 
stitute, attention was directed toward 
a collection of intermediate represen- 
tations, termed intrinsic images, that 
would span the representation gap. 

Tbday, the consensus of the com- 
puter-vision community is that this 
gap is bridged by a set of visual data 
representations that are arranged in 
a hierarchy of increasing abstraction. 

Vision and 

the Abstraction Hierarchy 

Our vision is quite reliable— that is. 
there is a good correlation between 
our perceptions and things in the 
world. Otherwise, we would not have 
survived as a species. How do we ig- 
nore irrelevant variations and concen- 
trate on those that mean something? 



248 BYTE • APRIL 1985 



VISION 



How do we achieve the constancies 
whereby we recognize objects under 
varying illumination, or faces at dif- 
ferent ages? How do we perform so 
fast and reliably? A partial answer to 
these questions is that of abstraction 
hierarchies. 

Modern computer vision spans the 
gap between input image and object 
perception with a hierarchy of repre- 
sentations (the aforementioned intrin- 
sic images) operated on by powerful 
computational processes (as shown in 
figure 1). These processes create 
representations that pass from image- 
like representations of physical 
parameters to symbolic descriptions. 
Constructing these intermediate 
descriptions is feasible and probably 
necessary, but it involves complex 
computations for a general vision sys- 
tem (as opposed to a highly spe- 
cialized system, such as an industrial 
system). 

At the earliest level (the input level), 
a general vision system derives a rep- 
resentation of image brightness 
changes that it uses for stereo-dispari- 
ty calculations (the difference be- 
tween two views of the same setting), 
detecting changes in surface composi- 
tion, orientation, distance, reflectance, 
and so forth. Perceptual phenomena 
(e.g., subjective contours, the ability 
to discern colinearity of dissimilar 
shapes) suggest components for the 
earliest image representations (e.g., 
locations, orientations, and endpoints 
of features). Feature detectors that 
derive these components may then 
be designed by humans. 

Much current research is centered 
around the production of physical 
property images, which are inter- 
mediate representations that the sys- 
tem forms before attempting object 
recognition. These image-like repre- 
sentations are registered with the in- 
put image and contain values of 
physical parameters of scene points 
such as the distance from a sensor to 
the point, the albedo (reflective 
power) of surfaces, the objects' direc- 
tion of motion, the location of 
shadows and light sources, and so 
forth. Researchers generally assume 
that the processes producing physical 



property images are part of "early vi- 
sion." That is, they are not dependent 
on the context of the scene being 
viewed, much less on conscious rea- 
soning, but are robust general pro- 
cesses that produce reliable output in 



a broad range of natural circum- 
stances. However, these processes 
cannot be completely general and 
reliable, since the two-dimensional in- 
put image does not capture three- 

(continued) 




Figure 2b: Shapes causing the images as derived by a computational vision process. 
Such processes use mathematical models of physical laws and assumptions about nature 
to recover physical information about scenes from input images. \Courtesy of }ohn 
Aloimonis, University of Rochester] 



APRIL 1985 -BYTE 249 



VISION 



dimensional information directly (it 
can only imply it). But the usual 
reliability of these processes in animal 
vision implies that they rely on natural 
constraints or assumptions about the 
world to derive unambiguous output. 
Identifying and using such constraints 
are important goals of modern com- 
puter-vision research. This, in turn, 
calls for seeking out properties of the 
physical work that could help a visual 
process do useful work, making math- 
ematical models of their interaction 
with visual phenomena, and imple- 
menting the mathematics in computer 
programs. One such result that illus- 
trates the kind of computations at this 
level is the computation of relative 
depth from optic flow (see figure 2). 
The step beyond intrinsic images is 
a large one; although they contain 
physical information, they are still 
image-like entities not yet described 
in terms of objects. T\vo of the most 
important visual phenomena are mo- 
tion and texture, which transmit much 
information about the objects and 
surfaces in a scene. One of the most 
active areas of computer-vision 
research is the extraction of informa- 
tion from motion or from optic flow 
of the visual field on our retina as an 
object or the viewer moves. It is also 
a particularly good illustration of the 
symbiosis that can take place between 



psychology and computer vision. 

Researchers basically agree that the 
higher abstraction levels in a general 
computer-vision system must contain 
data structures representing aspects 
of the domain from which the scene 
originates. The resulting problems in 
knowledge representation are inter- 
esting in a wide variety of AI applica- 
tions. For example, computer model- 
ing of three-dimensional rigid solids 
is by no means a solved problem ex- 
cept for certain manufactured objects. 
Also, representing naturally occurring 
shapes and volumes so that they can 
be matched to their geometric 
counterparts in intrinsic images is still 
an open question. 

High abstraction levels pose several 
other difficulties. Perception goes on 
through time, and yet representing 
processes through time is an area of 
advanced AI research. 

The contribution of high-level 
knowledge and inferential procedures 
to the vision process is still a mystery. 
It seems certain that information does 
not simply flow "bottoms up" (that is, 
sequentially, from low-level to high- 
level) through the visual system, as it 
did in Roberts's first system. Nor is vi- 
sion merely controlled hallucination, 
with the abstract representations dic- 
tating our perceptions as they do in 
dreams, subject to minor corrections 



from incoming data. The upper levels 
of abstraction hierarchy must support 
information flow in both directions, 
and a bottleneck in current computer- 
vision research is achieving useful in- 
teraction between the lower, image- 
like representations and the higher, 
symbolic ones. 

State-ofthe-Art Examples 

Two examples will illustrate the opera- 
tion of computer vision in the sort of 
abstraction hierarchy introduced in 
the last section. The three-dimen- 
sional MOSAIC system at Carnegie- 
Mellon University, developed by 
Marty Herman and l&keo Kanade, can 
reconstruct three-dimensional repre- 
sentations of buildings from two aerial 
views— using stereo to provide depth 
information— or from a single view- 
using advance knowledge about the 
nature of the input scene to provide 
depth information. Figures 3a through 
3d show the operation of the mono- 
cular version of the algorithm. 

The MOSAIC system uses an edge 
operator to find intensity discon- 
tinuities, which contain much image 
information in a single input image 
(see figure 3a). Because the image has 
a baffling number of such "edge 
elements." the system sends the out- 
put to a post-processing routine that 
identifies edges that are likely to con- 



— IP 





i\ 



■0\ w~v^& 





mmmmmmmsm 



Figure 3a: Aerial view of a city park and buildings provided 
as a single input image to the MOSAIC (see text) system. 



Figure 3b: Output of an edge-finding algorithm applied to the 
image of figure 3a. 



250 BYTE • APRIL 1985 



VISION 



tribute to interesting structures in the 
image (see figure 3b). Several stages 
of processing then link the edges into 
two-dimensional structures using stan- 
dard edge-linking technology and in- 
formation about the way lines meet 
to form vertices in polyhedral scenes. 
And then the edges are linked into 
three-dimensional structures— using 
information about gravity, support, 
the perspective imaging process, and 
other facts describing the physical 
scene domain and the optics of image 
formation. Figure 3c shows the result 
of this processing: a perspective view 
of a three-dimensional "wireframe" 
representation of edges in the scene. 

The next stage of processing relates 
the wireframes to stored representa- 
tions of three-dimensional solid 
models. In a sense, the solid models 
are the final output of the program, 
with two important additions. First, 
the system can relate new image in- 
formation to its existing model data 
structures, which it can refine as it ac- 
quires the new images. Second, the 
system can, using standard computer- 
graphics technology, map the flat 
image onto the surfaces of the stored 
three-dimensional models. The sys- 
tem can then display three "painted" 
models from another angle, as shown 
in figure 3d. 

Work continues on the extraction 



and identification of meaningful parts 
of an image. This process is called 
segmentation, which is typified in the VI- 
SIONS (Visual Integration by Seman- 
tic Interpretation of Natural Scenes) 
system at the University of Massachu- 
setts. The VISIONS system's sophisti- 
cated programs use models of a 
specific domain (rural, outdoor 
scenes of houses, trees, etc.) and 
knowledge about that domain. 

In this work, the goal is to segment 
a color image (as in figure 4a) into 
regions that correspond to meaning- 
ful objects or substances in the image. 
The process involves extracting 
straight lines (see figure 4b), and 
regions of related color characteristics 
(see figure 4c). The VISIONS system 
uses interpretation rules that incor- 
porate knowledge about the scene 
domain (for example, that a driveway 
is not found silhouetted against the 
sky, or that a house's roof is above its 
walls) in cooperation with the image- 
guided segmentation processes. 
These interpretations make the 
segmentation process more reliable, 
by indicating, for example, when 
regions may be merged or should be 
split. For example, in figure 4c the 
system has colored regions that it has 
hypothesized, using interpretation 
rules, to be shutters. Foliage is an im- 
portant component of these scenes, 



and VISIONS has a set of feature ex- 
tractors and recognizers to allow 
reliable identification of foliage, 
despite its many different ap- 
pearances. 

Figure 5 shows the final labeling of 
another input scene, with regions 
identified as sky, foliage, grass, wall, 
shutters, roof, and regions (in black) 
that are uninterpreted due to the lack 
of a symbolic model in the current 
system or deviation of the scene's ap- 
pearance from that predicted by the 
model. VISIONS currently models 
some 20 major objects and object col- 
lections such as "house" and "house 
scene," and a larger number of object 
parts such as "roof" and "shutters." 

The two examples of current sys- 
tems show the beginning of under- 
standing the competence issues in vi- 
sion: We know what kinds of entities 
need to be computed. However, each 
of these examples requires huge 
amounts of computer time. Most re- 
searchers believe that the perfor- 
mance problem in vision will only be 
solved through parallel computation. 

Challenges 

from Animal Vision 

One of the most promising directions 
for the study of parallel processing 
has centered around studies of 

[continued] 




Figure 3 c: A "wireframe" of linked line segments in three 
dimensions resulting from several sorts of processing applied to 
the data of figure 3 b. 



Figure 3d: Computer-graphics techniques use the original photo 
and the three-dimensional models extracted by further processing 
of the wireframe data of figure 3c, resulting in a convincing 
reconstruction of the scene. \ Courtesy of Marty Herman and 
Takeo Kanade at Carnegie-Mellon University] 



APRIL 1985 -BYTE 251 



VISION 



human and animal vision. Unlike 
robot vision, where many of the com- 
plexities of sensing the environment 
can be manipulated by tailoring the 
environment and using special imag- 
ing techniques, animal vision must 
somehow analyze time-varying photo- 
metric data in its full complexity in 
real time. Furthermore, biological sys- 
tems use neural-processing elements 
that are six orders of magnitude 
slower than silicon components. 
Despite all these apparent disad- 



vantages, animal systems succeed ad- 
mirably. Experiments with human 
subjects show that they can make a 
variety of behavioral responses to 
visual stimuli in a few hundred milli- 
seconds. Thus, the biological system, 
somewhat embarrassingly, embodies 
solutions to problems that still plague 
vision researchers. This situation has 
lured researchers to tackle the prob- 
lem of modeling the human visual sys- 
tem head-on, in the hopes of dis- 
covering its secrets. Such researchers 





(4b) (4c) 

Figure 4: (a) An outdoor scene to be analyzed by the VISIONS computer-vision 
system, (b) Straight lines extracted from the data of 4a. (c) Regions extracted from the 
data of 4a. 



typically have a wide range of cross- 
disciplinary interests and are joining 
to make progress in the separate 
fields of psychology, neuroscience, 
and computer science. We shall 
describe some of the more interesting 
of the many new results from these 
disciplines. 

Since humans are very good at 
visual tasks, researchers were sur- 
prised to find that, for some tasks, in- 
formation can be processed in 
parallel, but for rather modest in- 
creases in complexity, the processing 
became sequential (see reference 2). 
Iteisman describes visual displays of 
letters about which subjects were 
asked questions of the form "Does 
the display contain a T?" (See figure 
6.) Most subjects can answer this 
question in a few hundred millisec- 
onds, independent of the number of 
letters displayed (see the lowest 
dashed lines of figure 6). However, if 
we change the question to "Does the 
display contain a red T?" the time 
taken to answer becomes linearly 
dependent on the number of letters 
displayed. From this we conclude that 
the brain processes certain primitive 
features in parallel but processes con- 
junctions of these features serially. 

We still lack a detailed explanation 
for this result, but one hypothesis is 
as follows. It may be uneconomical for 
the visual system to check stored pro- 
totypes against spatial positions. A 
faster way would be for the brain to 
build an abstract representation that 
is independent of the precise point in 
space where the feature is located. 
Thus, we hypothesize that the brain 
builds a representation for a T if there 
is one or more TS anywhere in the 
visual field. In a similar process, the 
brain builds a representation for per- 
ceived color values, such as "red." 
Thus, the brain could answer ques- 
tions concerning these features direct- 
ly. In contrast, questions about con- 
junctions of features cannot be han- 
dled by this scheme, since informa- 
tion about spatial location is not pres- 
ent in the abstract representation. 
One idea, termed the searchlight hypo- 
thesis (see reference 3), is that the brain 

[continued) 



252 BYTE • APRIL 1985 



^ 



41 



lassie COBOL 



True mainframe COBOL for 
your microcomputer. Validated by 
the GSA at the highest possible 
level of compliance with the 
ANSI 74 standard. With Microsoft® 
COBOL, mainframe programmers 
can be productive on MS-DOS™ 
and Microsoft XENIX® micro- 
computers immediately 

Speed and Beauty* 

High performance in a COBOL 
program comes mostly from the 
speed of the ISAM. And Microsoft 
COBOL 2.0 has the fastest ISAM 
on the market. 

And our advanced screen 
handling capability lets you create 
the highly interactive programs that 
end users prefer. 

Wfe wrote the book* 

It's no surprise that IBM® DEC® 
AT&T, H-P and Wang® all chose 
Microsoft COBOL for their 
MS-DOS machines. We know how 
to get the most out of their micro- 
computers. After all, we designed the 
operating system. 



So call (800) 426-9400. In 
Washington State, Alaska, Hawaii 
and Canada, call MICRQSOFT 

(206) 828-8080. The High Performance Software* 

We 11 give you the name of your 
nearest Microsoft dealer or help you 
update to Microsoft COBOL 2.0. 



Certified High Level Compiler: 

♦ GSA validation at the Federal High Level of 
compliance with the ANSI 74 standard. 

♦ Built in sort-merge, chaining, dynamic calling, 
and overlays. 

Fast multi-key ISAM: 

♦ Split-keys and duplicate keys. 

♦ Benchmark results of 5000 reads and writes to 
an ISAM file: 

Microsoft Realia MicroFocus® Ryan-McFarland® 
COBOL 2.0 COBOL Native Code COBOL 2.0 



hours: 
minute 



3:30 



,1:32 1:56 2:58 

Interactive extended screen section: 

♦ Cursor positioning, auto skip, automatic data field 
formatting. 

♦ ACCEPT and DISPLAY data by the screen full. 
Productivity utilities: 

♦ Interactive Symbolic Debugger. 

♦ Rebuild file recovery utility restores corrupted 
ISAM files. 

Price: 

♦ $700 for compiler and utilities. 

♦ No runtime royalty fees. 
Minimum System requirements: 

♦ MS-DOS 2.0 or later, 192K RAM, and one disk 
drive. 

♦ Xenix 286, 512K RAM, and one disk drive. 




Microsoft and Xenix arc registered trademarks and 

The Hi^h Performance Software is a trademark of 

Microsoft Corporation. IBM is a registered trademark of 

International Business Machines. DEC is a registered 

trademark of Digital Equipment Corp. Wang "is a registered 

trademark of Wang Laboratories. Inc. MicroFocus is a registered 

trademark of MicroFocus. Ryan-McFarland is 

a registered trademark of Ryan-McFarland. 




BEST 

SAVINGS 

IN 

U.S.A. 



CALL TOLL FREE 
1-800-428-7979 

"LAST CALL FOR SAVINGS" 
FREE $20 PRINT WHEEL* 

PRINTERS • PLOTTERS List Sale 

Epson Call 

Enter 

Sweet-P 6 Pen Ploller (HP) $1095 $739 

Inforunner (Epson Exact) 

Riteman Blue Macintosh & Cable 140CPS $549 Call 

Riteman Blue Plus 140CPS (IBM) 499 $272 

Riteman Plus 120CPS 399 229 

Riteman 15 160CPS (FX100 Exact) 799 Call 

Riteman II 160CPS (FX80 Exact) 549 Call 

Riteman Letter Quality 12CPS 299 209 

Juki 

6100LetterOuality Daisywheel 18CPS $599 Call 

6300 L .0. Daisywheel 40CPS 995 $679 

Legend (Square Dot, Epson Compatible) 

880 100CPS-ART $279 Call 

1080 120CPS-ART 339 Call 

1380 160CPS-ART (IBM) 359 $279 

1385 160CPS-ART (IBM) 15" wide 449 Call 

1800180CPS7-Color(IBM) 15" wide 1195 Call 

'Silver Reed (Free Print Wheel-Ltd. Qty.) 

EXP400 L.O. Daisywheel $399 Call 

EXP500 L.Q 499 $289 

EXP550 L.Q. 18CPS 649 389 

EXP770 L Q. 36CPS 1295 Call 

Toshiba (3 in 1 Printers) 

1340 $995 Call 

1351 1895 Call 

MODEMS • MONITORS • DRIVES 

Anchor Automation 

Express 300/1200 (Hayes Exact) $439 Call 

Mark XII 300/1200 399 $235 

Volksmodem 12 w/Cable 299 199 

Hayes (1200, 1200B) Call 

Novation (Hayes Compatible) 

Smart Cat Plus 2400 Baud (IBM, MAC) $795 Call 

Smart Cat Plus 1200 w/Mite (IBM, MAC) 499 $299 

Practical Peripherals (Encryption) 

DES 2000 (Data Encryption System) $459 Call 

Zoom (Hayes Compatible) Call 

Amdek Call 

Princeton Graphic Call 

Taxan 

116 Amber $179 $115 

122Amber(IBM) 229 131 

420 RGB (IBM) HI-RES w/Cable 579 

425 RGB 12" (IBM) 609 Call 

440 RGB 12" (IBM-ULTRA-RES) 799 Call 

Kodak - Drives 

3.3 MEG 5% Disk (IBM) Internal 1103 $945 $698 

Shugart (100% Macintosh) 

3.5" Micro Floppy External $399 $319 

COMPUTERS • CARDS 

NEC (8401, 8201, Computers) < 

Paradise 

Modular Graphics Card $395 $269 

Fivepack 229 155 

Zenith (PC's) Call 

SOFTWARE • DISKETTES 



CPA+ (For Lotus 1-2-3) GL. AP. AR. PR $695 

Enable $695 

Lotus 1-2-3 

Micropro 

WordStar $350 

WordStar Pro 495 

WordStar 2000 495 

WordStar 2000' 595 

Practicorp (IBM) 

Practiword/Base/Calc III Integrated 

Above each separate 

Maxell (100 Diskettes) IBM. MAC, HP 

Fuji (100 Diskettes) IBM, MAC, HP 



Call 
Call 
Call 

$172 
235 
Call 
Call 

$189 

89 

Cheap 

Cheap 



VISION 



MINORITY HI-TECH INDUSTRIES 

5021 N. 20th Street, #10261 
Phoenix, Arizona 85064 

Other Information: (602) 890-0596 



• WE BUY • 
SURPLUS GOODS 



MasterCard; 



Prices reflect 3-5% Cash Discount. Shipping on most items 
$3.00. Prices and availability subject to change without 
notice. Send cashier's check or money order ... All 
other checks delay shipping 2 weeks. add #185 




Figure 5: Regions extracted and labeled by VISIONS for another house scene. 
\Figures 4 and 5 courtesy of Allen Hanson, Edward Riseman, and the 
VISIONS project at the University of Massachusetts] 



sequentially focuses on spatial loca- 
tions from which the features are 
derived. In this manner if the T" fea- 
ture and the "red" feature occur 
together, then the question can be 
answered affirmatively. The separa- 
tion of data into two different levels 
of abstraction (spatially organized and 
nonspatially organized) seems to be 
a fundamental design decision that 
allows the brain to do its job quickly 
Mishkin and colleagues performed 
another experiment that points to this 
organization (see reference 4). They 
made selective lesions in different 
parts of a monkey's cortex. Monkeys 
with lesions in one area of the brain 
performed a feature-recognition ex- 
periment at chance levels (in a 
statistically random manner) but had 
no trouble with a spatial-location ex- 
periment. In contrast, monkeys with 
lesions in another area performed a 
spatial-location task at chance levels 



but had no trouble with a feature- 
recognition experiment. This startling 
result shows that an important psy- 
chophysical property may have a 
distinct locus in animal brains. 

Coding Physical 
Constraints as Hardware 

Concurrent with these biological and 
psychological results, researchers in 
computer vision have been exploring 
parallel models of computation that 
handle features in similar ways. In ad- 
dition, these models have to grapple 
with many difficulties of noise and 
missing information: A shape outline 
or a feature like a straight line is only 
represented in an image by partial 
and conflicting evidence mixed with 
confusing noise. 

Tb overcome this problem, we use 
the Hough transform (see reference 
5). The Hough transform includes a 

[continued] 



254 BYTE • APRIL 1985 



^ 



4» 



<& 



# 



«P 



<f>. 



Mighty Macro 
Assemblei: 



The new Microsoft® Macro 
Assembler package. A complete devel- 
opment environment that makes 
you a more productive programmer. 
Whether you're using Macro Assembler 
or any Microsoft high level language. 

A common calling convention lets 
you easily call assembly language 
routines from any high level Microsoft 
language to add an extra burst of 
blinding speed. 

Better Debugging* 

The new Symbolic Debug Utility 
lets you stay close to the source. Now 
you can step through your assembled 
or compiled code by name rather than 
by address. Source level display for 
Microsoft Pascal, FORTRAN, and C 
allows you to view both your original 
source and the resulting code. 

And we stuffed our package with a 
full set of the most useful utilities 
around. So that you can link, maintain 
and organize your programs like 
never before. 

Who else but Microsoft could build 
so much into one package for $150? 

For the name of your nearest Micro- 
soft dealer call (800) 426-9400. In 



Washington State, Alaska, Hawaii 
and Canada, call (206) 828-8088. And 
if you're already MICROSOFT 

USing MiCrOSOrt The High Iferformance Software™ 

or IBM® Macro Assembler, ask us how 
you can upgrade to the mightiest Macro 
of them all. 



Microsoft Macro Assembler Package: 

Macro Assembler 

♦For the 8086/8087/8088 and now the 186/286/287. 

♦ Define macros. 

♦ Conditional Assembly. 

♦ Case sensitivity for symbols. 

New Interactive Symbolic Debug Utility 

♦ Controlled testing environment for debugging. 

♦ Source line display of Microsoft FORTRAN, Pascal and 
C Programs. 

♦ Set breakpoints on line numbers and symbols. 
♦Single step to follow program execution. 
♦Disassemble object code. 

♦Display values. 

♦ Make minor changes without reassembling. 
New Program Maintenance Utility 

♦ Rebuilds your applications after your source files have 
been changed. 

♦ Similar to UNIX™ Make utility. 
Library Manager 

♦Create, organize and maintain your object module 
libraries created with Microsoft Languages. 

♦ Set page size (default of 16 bytes). 
Object Code Linker 

♦ Simple overlaying linker combines relocatable object 
modules created using Microsoft Languages into a single 
program. 

♦ Load Map generation. 

♦ Specify from 1 to 1024 segments. 

Cross Reference Utility for the Macro Assembler 

♦ Creates a cross-reference listing of the definitions and 
locations of all symbols used in an assembly language 
program. 




Microsoft is a registered trademark and The High 

Performance Software is a trademark of Microsoft 

Corporation. IBM is a registered trademark of 

International Business Machines. UNIX is a trademark 

of Bell Laboratories. 



DeSmet 
C 

8086/8088 

Development $1110 

Package IU9 



FULL DEVELOPMENT PACKAGE 

Full K&R C Compiler 

Assembler, Linker & Librarian 

Full-Screen Editor 

Execution Profiler 

Complete STDIO Library (>120 Func) 

Automatic DOS 1.X/2.X SOPPORT 

BOTH 8087 AND S/W FLOATING POINT 

OVERLAYS 

OUTSTANDING PERFORMANCE 

■ First and Second in AUG '83 BYTE 
benchmarks 



SYMBOLIC DEBUGGER 



$50 



Examine & change variables by 

name using C expressions 

Flip between debug and display 

screen 

Display G source during execution 

Set multiple breakpoints by function 

or line number 



DOS LINK SUPPORT 



'35 



Uses DOS .OBJ Format 

LINKS with DOS ASM 

Uses Lattice® naming conventions 



Check: 



SHIP TO: _ 



□ Dev. Pkg (1 09) 

□ Debugger (50) 

□ DOS Link Supt (35) 



c 



WAR E 

CORPORATION 



P.O. BOX C 

Sunnyvale, CA 94087 

(408) 720-9696 

All orders shipped UPS surface on IBM format disks. 
Shipping included in price. California residents add 
sales tax. Canada shipping add $5, elsewhere add 
$15. Checks must be on US Bank and in US Dollars. 
Call 9 a.m. - 1 p.m. to CHARGE by VISA/MC/AMEX. 
Street Address: 505 W. Olive, #767. (94086) 



VISION 



wide variety of clustering histogram 
analysis and estimation strategies, all 
of which transform data so that phe- 
nomena of interest form clusters. 

Consider an example using the 
Hough transform for line detection. 
To detect lines in an image we must 
first detect local intensity differences 
or edges. Figure 7a shows the Hough 
transform applied to the image of a 



Rubik's cube, in which intensity dif- 
ferences could be caused by an ac- 
tual edge of the cube, a shadow, a 
label, and so on. If we call the image 
f(x.y) and the horizontal and vertical 
intensity differences h(x,y) and v(x.y), 
then one way to compute the inten- 
sity differences uses the values of 
neighboring picture elements in the 

[continued] 

















/ NE6 








DISJUNCTION / 






2000 










1600 










Q 

z. 
o 
u 
Ixl 
(A 

_J 
_J 

2 






*POS 




Z 120 ° 

H 

z 
o 

O 
< 

u 
rx 

800 






^<**HZG ~ 




400 


apr 


' jtf^ + COLOR 


.-Hjpos 




SHAPE 





) 


i i 


i 






i 


5 15 


30 




DISPLAY SIZE 







Figure 6: Reaction time in milliseconds for experiments described in text \n recognizing, 
a single feature such as "red" or the letter T", a subject's reaction time is constant if 
the feature is in the display (POS). 1/ it is absent or. more importantly, if the stimulus 
is a conjunction (i.e., red T, depicted by a solid line), the response time increases linearly 
with the size of the display. \Y\gure taken from Treisman (see reference 2).| 



256 B YTE • APRIL 1985 







CO 


LU 


£o 


LU 


o 


h- 


CO 

O 

Q_ 
O 


<UJlli^ 


CO=J 


XCO 


NECES 
IF MA 

INT 
NITED 






z> 



-11 




w^^m 




<^ 


in 


LY M 

ARTINSVIl 


LU 
CO 
CO 
LU 


Q 

n 


0.2 


< 


111 ^ 


> 

CD 


ocg 


Q 
< 


<2^ 


LL 

_l 
1 


COfi 


? 


UJa! 


LU 


^ CO 

Z en 


CD 
< 


_ < 


h- 


C/)o 


O 


^ h- 
_S CO 


CL 


m£ 





BU 



Q. 
(D 

Q 
o o> 

■510 

.9-x 

3d 

COCL 



CO 
if) 
O) 

O) 

I 
CO 
CO 
00 
00 

o 



0) 

I 

c 



CO 



HALP PRICE 

Introductory Subscription Offer 

your cost right in half. At 50% 

BITE 



If you're a technically-inclined micro user, subscribe to BYTE and cut your cost right in half. At 50% 
of the newsstand price, every BYTE issue will bring you stimulating, 
timely articles on new technology, innovative pc* applications, pre- 
views, reviews, and appraisals of major new hardware and software 
products. If your first trial issue of BYTE isn't everything you 
expected, just write "cancel" on the invoice and return it. Your 
first issue is FREE to keep with our thanks for trying. . . 



□ Bill me {North America only) 

□ Charge Visa 

D Charge Master Card 

□ Check enclosed (U.S. only) 

□ US I yr. $21.00 
(12 issues) 

D Canada or Mexico 
yr. $23.00 U.S. 

(12 issues) 

□ Europe I yr. (air) 
$69.00 US. 

D Foreign Surface 
Delivery (I 
$37.00 US. 



THE SMALL SYSTEMS JOURNAL 



4745 



Name 



Address 



State/Providence/Country 




V - " 











Why your competitors 
want one of these. 

They want the Merlin™ Communications System from AT&T, 
because it can give the competitive edge to any small business. 

The Merlin System's more than a telephone. It's a conference 
caller, an intercom, a speed-dialer. It lets you call your banker, call a 
meeting, screen a call or recall a call, with just one touch. In short, it 
helps you organize all your office communications. 

So you can get down to business. 

Plus the Merlin System is modular. Which means you can 
program any of its phones with any of its features. And you can 
expand the system as your small business grows. 

One more thing: you can get the Merlin System from AT&T's 
unique Small Business Connection. They'll help you design the 
system that best suits your business. 

No matter what calling you're in, get the edge by calling the Small 
Business Connection. 1 800 247-7000, Ext. 12. AT&T Information 
Systems. When you've got to be right. 



AT&T 

Inquiry 35 



©1985 AT&T Information Systems 



VISION 



following manner: 

h{x,y) = f(x+\, y-\) - /(x-1, y-1) 

+ 2x/(x+I, y) - 2x/(x-l, y) 
+f(x+\, y+l) - /(x-1, y+\) 

vfcij) = /(x-1. y+l) - /(x-1, y-l) 

+ 2x/(x, y + \) - 2xf(x, y-\) 
+ /(x+I, y+l) - f{x+l. y-l) 

The edge finder reports an edge if 
the magnitud e of th e intensity dif- 
ferences [m=yJ[h 2 +v 7 )) is greater than 
a given threshold value. We will give 
the orientation of the edge as 0, 
where 0=arctan(ft/v). 

Next we accumulate the local 
edges into straight lines. This ac- 
cumulation is essentially a voting pro- 
cess, in which each edge element 
"Votes" for the lines that could have 
caused it. Thus, in figure 7b, the edge 
element centered at the point (x ,y ), 
with the orientation 0, votes for a line 
that we can describe as (q,6), where 
q=x cos 9+y sin 0. 

After each edge element votes for 
the lines that could have caused it, the 
line with the most votes is presumed 
to be an actual line of the image, 
rather than an artifact or noise. 

Tb facilitate this accumulation pro- 
cess, place all the values of (q,6) into 
another two-dimensional array, with q 




and as coordinate axes (see figure 
7c). The brightness of each cell in 
figure 7c is proportional to the 
number of edge elements voting for 
a line at that particular value of (q,6). 
That is, the brighter the cell, the more 
likely the image actually has a line 
with those values of (q,6). 

Tb sum up, suppose the feature 
detector applied to a point (x,y) of the 
image responds with a local edge 
orientation and a measure of edge 
contrast Then one version of the 
algorithm is as follows. 

For each point (x.y) in the image, do 
the following two steps: 

1 ) Apply the detector to get at (x.y) 

2) If edge contrast exceeds some 
threshold: 

compute q=x cos 9+y sin & 
increment LineParams \q,6\ 

Several implementations of the 
Hough transform are possible (see 
reference 6). We have just described 
a straightforward sequential computer 
implementation that represents 
parameter space in an array. This rep- 
resentation is costly for transforms 
with multiple parameters, since it 
demands space exponential to the 
number of parameters— although re- 



* 


* y^-LOCAL EDGE ELEMENT 
N / (INTENSITY DIFFERENCE) 






f \{xo'yo> 


y 


^-X 




\ 




\ 




xOs 




/ \ 




p / x 




p / \ 




/ \ 




•<\ 


X 



searchers have made progress in im- 
plementations of the accumulating 
parameter space (described above) 
using hash tables or content-address- 
able memories, which use less space. 

Finally, the Hough transform can be 
implemented in massively parallel 
computing networks in which prewir- 
ing accomplishes all the voting in one 
time step, 

The general notion of capturing 
functionality in terms of connection 
patterns is known as connectionism and 
is sparking a great deal of interest in 
different disciplines. One issue raised 
is computational. How is the com- 
putation carried out in very large net- 
works with complex constraints? 
Recently, progress has been made by 
several groups headed by Kirkpatrick, 
Hopfield, Hinton, Sejnowski, Geman, 
and Geman (see references 7 through 
10 and Geoffrey E. Hinton's article 
"Learning in Parallel Networks" on 
page 265). The thrust of this work is 
that constraints can be cast as local 
changes in "energy" and that the 
computing units can be turned on or 
off to minimize energy. 

The neural network also shows a 
general way of representing informa- 

[continued] 




(7a) 



(7b) 



(7c) 



Figure 7: (a) Results of applying a computer-vision edge operator to the image of a Rubik's cube, (b) The geometrical constraint that 
relates a local edge element (x ,yo,6), shown by a circle, to a line, denoted by q and 0. For every edge element in an image, a 
unique line can be determined, (c) Each edge element "votes" for the lines that may have caused it, as shown in this plot of q and 6 
values. The brightest accumulations of values for q and 6 indicate the most likely lines in the actual image. 



258 BYTE • APRIL 1985 



. Viasyn 
just lowered 
the cost of 
room and board. 



CPU BOARD 


THEN 


NOW 


8086/8087 5 MHz 


$1050 


$495 


8086 10 MHz 


$ 800 


$395 


8087 OPTION 5 MHz 


$ 495 


$175 


8085/8088 8 MHz 


$ 495 


$275 


8085/8088 10 MHz 


$ 545 


$350 


68000 10 MHz 


$ 750 


$425 


80286 C STEP 


COMBO WAS 
$1595 


$995 


80287 OPTION 5 MHz 


$375 


32016 6 MHz 


N/A 


$895 


Z80 


$ 325 


$275 



And, as you can see from the chart, we lowered it substantially. 

Now you can get the finest room and board with CompuPro® 
CPUs, recognized as the highest-performing, most reliable products 
you can buy. And you can buy them at the lowest possible cost 
in the industry. You can even get them configured into systems to 
fit your exact requirements. 

Each CompuPro CPU board bridges the 8- and 16-bit worlds 
to give you the advantages of both — and the drawbacks of neither. 
And Viasyn supports them with a full range of other peripherals, 
from memory boards, controller boards, and interface boards, to ' 
motherboards, disk storage subsystems, even enclosures. 

When you buy Viasyn's CompuPro CPU boards, you also have 
something else in store. Like a one- or two-year warranty, backed 
by a nationwide Systems Center network 01 highly-trained, respon- 
sive service professionals. 

So the next time you're searching for 
room and board, call us toll-free at Viasyn 

We're a nice place to visit, and you 
can't beat our rates. the CompuPro People 

Where Computers Grow 



v/asvtt 



3506 Breakwater Court, Hay ward, CA 94545 ■ 800/367-7816 • In CA, 415/786-0909 

CompuPro is a registered trademark of Viasyn Corporation. 



inquiry 395 



APRIL 1985 -BYTE 259 



VISION 



tion known as value encoding. On a se- 
quential computer, a variable can 
have only one value at a time. A 
parallel computer, however, may need 
to simultaneously access many values 
of a variable. In value encoding, we 
represent the different possible 
values of a variable as discrete cells 
or "intervals." The number of cells 
used determines the accuracy in the 
representation. 

For example, we can represent the 
parameters for the edge element of 



figure 7b as discrete intervals 
centered at (x it y t ). with a width of 
(Ax, Ay) (see figure 8a). We can also 
represent the line parameters of 
figure 7c as discrete intervals centered 
at [Qi.Oi). with a width of (Aq.AO) (see 
figure 8b). This idea was suggested by 
Horace Barlow at Cambridge and is 
being pursued by D. H. Ballard and 
Jerome Feldman at the University of 
Rochester. We can then hard-wire the 
accumulation (or voting) process from 
figure 7 directly into hardware. Thus, 



Ay 



(8a) 






LOCAL EDGE ELEMENTS 
(INTENSITY DIFFERENCES) 









<*j. t\ > 



^\ s POSSIBLE LINES 



Ax 



HARDWARE 

CONNECTIONS 

FROM 

COLINEAR 

EDGE UNITS 



(8b) 




□ 



PARAMETER INTERVAL 



• ^PROCESSOR 



P 



Figure 8: The "voting process" of figure 1 can be directly encoded in hardware using 
interval encodings, (a) For each of a discrete number of (x.y) values with bounds 
(Ax.Ay), we assign a specific processor, (b) For each of a discrete number of (q,6) 
values with bounds (Aq.AO), we assign a specific processor. 1/ enough colinear edge 
units are "turned on',' the line that encompasses all of those edges will be turned on. 
This strategy may be impractical for VLSI (very-large-scale integration) designs, but it is 
realizable in the brain, which has approximately 10 10 neurons and approximately 10 4 
connections per neuron. 



in figure 8a we assign a distinct pro- 
cessor for all the values of (x,y) that 
fall within the boundaries [Ax.Ay) and 
a specified range of 0. In figure 8b, we 
assign a distinct processor for all the 
values of (q,9) that fall within the 
boundaries [Aq.AO). Each processor 
can either be on or off, based on a 
modification of the algorithm we de- 
scribed earlier: 

For each edge unit, turn it on if its in- 
put exceeds some threshold. For each 
line unit (q,6), turn it on if its input ex- 
ceeds some threshold. That is, if 
enough colinear edge units are 
"turned on" (figure 8a), the line that 
encompasses all of those edges will 
be turned on (see figure 8b); that is, 
the system will draw a line with those 
parameters. 

This realization of the Hough trans- 
formation shows how complex wiring 
carrying simple excitation can replace 
the complex information flow of 
voting. Nets of fairly simple comput- 
ing units with highly structured con- 
nections carrying simple excitatory 
and inhibitory levels can provide a 
uniform architecture for computation 
at many levels of abstraction, from 
early vision to symbolic and cognitive 
levels. 

We have tried to highlight some of 
the various issues that arise in these 
kinds of parallel models. However, at 
this point the reader may still be 
wondering how applicable this kind of 
computation is to a general vision sys- 
tem. The first-order answer is that 
generality is achieved through hierar- 
chies. The line computation can serve 
as a subnetwork in a much larger net- 
work that spans the vision abstraction 
hierarchy (see figure I). Hierarchies 
may be a ubiquitous strategy for 
organizing information in animals. 
Figure 9 shows Kiel's ontological 
("related to or based upon being or 
existence") hierarchy of children's 
preferences (see reference II). Kiel's 
hierarchy is also evident in eye-move- 
ment experiments, during which adult 
subjects showed the same kind of at- 
tentional preferences. Hierarchical 
organization may also be traceable to 
brain anatomy, although data is only 



260 BYTE • APRIL 1985 



VISION 



available for the visual areas (see ref- 
erence 12). Hierarchies may be a 
global organization feature of the 
cortex. 

Conclusion 

The most important breakthrough in 
computer vision in the past decade 
has been a broad understanding of 
what has to be computed and how 
the computations are organized. Cur- 
rent research is shaped by the dis- 
covery that vision primitives (in- 
termediate images) form a natural 
hierarchy and that the amount of 
computation required to build this 
hierarchy is enormous. Now that we 
have an understanding of what to 
compute, the crucial issue is that of 
computing it in real time. Throughout 
the decade, there has been a close 
relationship between "pure" vision 
research, which ignores biological 
constraints, and that which directly at- 
tempts to explain how the animal vi- 
sion system works. The underlying in- 
tent of this article has been to show 
that ideas connected with animal vi- 
sion, contrary to many earlier expec- 
tations, are playing an increasingly 
compelling role in shaping computer- 
vision research. The current notion of 
hierarchy of representations was de- 
veloped without direct connections to 
animal research, but concurrent re- 
search shows that animal brains 
already incorporate hierarchical rep- 
resentations as a fundamental design 
principle. Furthermore, it seems like- 
ly that the biological system has also 
solved the parallel-computation prob- 
lem that is emerging as the issue for 
formal vision studies. Thus we can an- 
ticipate a profusion of cross-dis- 
ciplinary research efforts in the 
decade ahead, in the drive to realize 
practical, real-time visual per- 
ception. ■ 

BIBLIOGRAPHY 

Ballard, D. H., and C M. Brown. Computer 
Vision, New York: Prentice-Hall. 1982. 
Barrow, H. G.. and j. M. Ifenenbaum. Pro- 
ceedings. IEEE 69, 1981, pages 572-595. 
Brady, M. Computing Surveys 14, 1982. pages 
3-72. 

Hanson, A. R., and E. M. Riseman, eds. 
Computer Vision Systems. New York: 



ALL THINGS 







SOLID AGGREGATES INTENTIONAL NONINTENTIONAL 

OBJECTS V. EVENTS EVENTS 



LIVING 
THINGS 




"fight thunderstorm 

kiss sunrise 






Figure 9: Kiel's ontological hierarchy established via testing of children. 



Academic Press, 1977. 

Marr. D. Vision. San Francisco: W.H. 

Freeman and Co.. 1982. 

Nevatia, R. Machine Perception. New York: 

Prentice-Hall, 1982. 



REFERENCES 

1 . Roberts, L. G.. in j. P. Tippett et al.. eds. 
Optical and Electro-Optical Interaction Processing. 
Cambridge. MA: MIT Press. 1965. 

2. Treisman, A. M. "The Role of Attention 
in Object Perception." In O. J. Braddick and 
A. C Sleigh. Physical and Biological Processing 
of Images. Berlin: Springer-Verlag, 1983. 

3. Crick, F. "The Function of the Thalamic 
Reticular Complex: The Searchlight Hy- 
pothesis." submitted to Proceedings of the Na- 
tional Academy of Sciences. 1984. 

4. Mishkin, M.. L. G. Ungerleider, and K. A. 
Macko. "Object Vision and Spatial Vision: 
'Iwo Cortical Pathways," Trends in Neuro- 
Sciences. October 1983. 

5. Duda, R. O., and P. E. Hart. "The Use of 
the Hough Transform to Detect Lines and 
Curves in Pictures." Communications of the 
ACM #15, vol. I, January 1972. pages 
11-15. 

6. Ballard. D. H. "Parameter Networks: 
Towards a Theory of Low-Level Vision." Pro- 
ceedings. 1th IJCAI, Vancouver, B.C., August 
1981; also appeared as "Parameter Net- 



works." Artificial Intelligence 22, 1984, pages 
235-267. 

7. Kirkpatrick, S., C D. Gelatt, and M. P. 
Vecchi. "Optimization by Simulated An- 
nealing." Science 220, 1983. pages 671-680. 

8. Hopfield, j. J. "Neural Networks and 
Physical Systems with Emergent Collective 
Computational Abilities," Proceedings of the 
National Academy of Sciences USA 79, 1982. 
pages 2 554-2 5 58. 

9. Hinton. G. E., and T j. Sejnowski. "Op- 
timal Perceptual Inference," Proceedings. 
IEEE Computer Vision and Pattern Recognition 
Conference. Washington. DC June 1983, 
pages 448-453. 

10. Geman. S.. and D. Geman. "Stochastic 
Relaxation. Gibbs Distributions, and the 
Bayesian Restoration of Images," TR, 
Brown University September 1983. 

1 1 . Kiel. F C. Semantic and Conceptual Develop- 
ment: An Ontological Perspective. Cambridge, 
MA: Harvard University Press, 1979. 

12. Van Essen, D. C. and j. H. R. Maunsell. 
"Hierarchical Organization and Functional 
Streams in the Visual Cortex." Trends in 
NeuroSciences. September 1983. 

ACKNOWLEDGMENTS 
Preparation of this paper was supported 
by the Defense Advanced Research Proj- 
ects Agency under Grant N00014-82-K- 
0193 and NSF Grant MCS-8203028. 



APRIL 1985 -BYTE 261 



INTRODUCING 

Interface Technologies' Modula-2 

Software Development System 

The computer press is hailing Modula-2 as "the next 
standard in programming languages." Modula-2 
combines the strengths of Pascal with the features 
that made C so popular, like independent 
compilation and direct hardware control. 

But until today, no company offered a 
Modula-2 system that made the development 
of software fast, easy and efficient. Now, 
though, there's a new tool at your disposal. 



The fast, powerful tool 
for programmers 



And if you leave an undefined variable or data type, 
the editor detects the mistake and gives you the option 
of on-line "help" to correct it. No other programming 
text editor offers you so much innovation at any price. 

How to turn "wait time" 
into "work time" 




The breakthrough is here: Interface Technologies' 
new Modula-2 Software Development System for 
the IBM® PC, XT, AT and compatible 
computers to give programmers the same 
quantum leap in productivity spreadsheets 
and word processors gave to end-users. It 
can reduce monotonous wait time, will 
dramatically increase speed, help stop 
thoughtless mistakes, and free you to become more 
creative in virtually all of your programming efforts. 



The vast majority of 
programming time is 
spent waiting, and the 
biggest slowdown is most 
often with compilers. 



It not only has a faster compiler, it also 
saves time by compiling while you edit. 




How to speed input and 
eliminate 30% of errors 

Thirty percent of programming mistakes are syntax 
errors and simple typos in the program structure. Our 
"syntax-directed" Modula-2 editor does away with 
these time-consuming headaches once and for all. 

It speeds input by 
cutting manual typing 
as much as 90%, letting 
you enter statements 
fwith a single keystroke. 
For example, if you type 
a capital "I" to begin a 
line, the editor completes 
the logical "IF THEN" 
statement automatically, so 
r you can concentrate on what you 
Enter complete statements want to program, rather than con- 
with one keystroke. centrate on what you're typing. 

The editor locks out errors, finishing statements and 
procedures in perfect accord with the standardized 
rules of Modula-2. It also indents and formats your 
text automatically, making programs easy to read and 
maintain, an important feature on big projects. 



ANATOMY 

Of A 




Our compiler turns 
wait time to work time 
with a new innovation 
that lets you compile 
in the "background." 

With background 
compilation, your program is automatically compiled 
into object code line by line as you work, every minute 
you spend writing or editing a Modula-2 program! 

When you're finished editing, all that's left for the 
compiler is a quick mopping up job that generates 
optimized native code in a single pass. 

How quick is "quick"? 

Thanks to background compilation and the fact that 
the compiler itself is so fast, Interface Technologies' 
compiler turns 100 lines of typical Modula-2 text 
into optimized machine code in under five seconds. 

Plus the Interface compiler produces compact code 
with execution speed superior to that produced by any 
other Modula-2 compiler on the market. 

How to do two things at once 

Along with the background compiler and syntax- 
directed editor, which can save you hours every day and 
make you more productive, Interface Technologies' 
Software Development System gives your monitor 



262 BYTE • APRIL 1985 



windows so you can refer to one file while you edit 
another simultaneously, saving you even 
more time. 

Concurrent editing of two 
or more files is especially use- 
ful when doing programming 
work that's intended for 
separate compilation, and 
Interface Technologies has 
the only Modula-2 system 
on the market that provides 
you with this helpful benefit 
for developing software. 




Work with multiple files 
faster, easier in windows. 



How preprogrammed modules 
speed development 

One of the advantages of Modula-2 is that it lets you 
build large, reliable programs quickly, by linking 
together many smaller "building-block" modules. 

The development system's toolkit of precompiled 
program modules includes the standard Modula-2 
library, and adds exclusive link-and-run modules for 
direct calls to the operating system, sound, and color 



You can use it on any IBM® PC, XT, AT or 
compatible computer with two double-sided, double- 
density floppy drives and 320K RAM diskette. 

You get a thoroughly indexed, comprehensive user's 
manual and free telephone support from Interface 
Technologies. But the most important thing you get is 
the future, and the programming language of the future 
is Modula-2, and now it's easier than ever. 

For more information, or to order the Modula-2 
Software Development System, call 1-800-922-9049 
today. In Texas, call (713) 523-8422. 

You can also order or 
request further in- 
formation by 
mail. Just fill 
out the cou- 
pon below 
and send it 
in. Act today 
and receive 
your system 

SOOn. W^ Operates on the new 

IBM PC AT, as well as 

the PC, XT, and all other 

IBM-compatible computers. 







graphics support. 
Plus you get low- 
cost updates from 
the Interface 
Technologies 
fast -growing 
library of new 
programming modules. 

The Modula-2 development system's toolkit of 
1-eady-made modules turns big programs into smaller projects. 

Increase productivity for $249 

Interface Technologies' Software Development 
System is fast, powerful and unlimited. It works so well 
that it's the same tool Interface Technologies is using to 
write business and consumer applications in Modula-2. 

For $249, you get the syntax-directed editor and 
compiler, linker, module library and tutorial that will 
have even modestly experienced programmers writing 
in Modula-2 in days. And you have full rights to your 
work; there's no license fee for programs you develop 
with the Interface Technologies system. 



NAME. 



ADDRESS. 

CITY 

PHONE 



_ STATE _ 



.ZIP- 



PLEASE CHECK ONE: 

□ AMERICAN EXPRESS □ VISA □ MASTERCARD 

□ CHECK ENCLOSED 
CHARGE ACCOUNT NUMBER 

□□□□□□□□□□□□□□□□□□DO 



i 



EXPIRATION DATE 
PLEASE SEND ME _ 



SIGNATURE 
COPIES $249 EACH. 



INTERFACE TECHNOLOGIES CORPORATION 
3336 RICHMOND, SUITE 200, HOUSTON, TX 77098 
Texas residents, add 6. 1 25% Sales Tax. BT-4 



li 
ll 

00 

I 



INTERFACE TECHNOLOGIES 



9IE5M ~~W 

Br 



I SOFTWARE 
DEVELOPMENT SYSTEM 



1* 

I 
I 
I 
I 
I 
J 



Inquiry 203 



APRIL 1985 • BYTE 263 



We Set the Standard in Prices! 



For IBM PC Add-On Products. 

Superior quality products and services at lowest prices. 



Look at what we 
have to offer, before 
you buy any add-on 
products for your 
IBM PC. 




GJC-01. 10 MB internal 
hard disk subsystem 
at; 



to guvteL 



Our hall-height 10 MB hard disk comes 
complete with controller, cables, 
Microscience drive and easy to follow 
instructions. It fits inside one of your 
floppy slots and draws same amount 
of current as a floppy. It is compatible 
with DOS 2.0, 2.1 and 3.0 without any 
patches. In fact, you can simply boot 
up from the hard disk. This is the same 
hard disk system you see advertised for 
hundreds of dollars more. 

20 MB half-height internal 
hard disk CALL. 
20 MB drive for PC AT $895. 
40 MB full height with 
controller $1495. 

QIC-02 FT. 10 MB 

Floppy tape back-up 
drive. $575. 

This half-height drive 
connects to your IBM 
floppy controller card. If 
your PC is running out of 
slot, this is a perfect solu- 
tion. It backs up 10 MB 
in 5 minutes. 

20-60 MB Cartridge tape 
subsystem $995. 



QIC-03. 300/1200 baud 
internal modem. $275. 

This auto dial/auto answer plug-in 
modem lets your PC talk to the world 
with reliable and easy operation. It is 
FCC certified, Bell 103/212 compatible 
as well as fully Hayes compatible. You 
can run all the popular 
communication programs as well as 
our superior QIC Com software 
program. 

Our QIC-Corn software program provides 
phone list management as well as 
powerful file transfer capabilities. You 
can even run any DOS programs such as 
WordStar concurrently without having to 
disconnect your line. Priced at $45.00, it is 
an offer you don't want to miss. 



QIC-04. Half-height 
floppy drive. $129. 



This hali-height floppy is the quietest 
drive on the market. It draws the least 
amount of current and is compatible 
with your PC's floppy controller card. 
It's double sided double density. 



QIC-05. Five function 
card. $199. (64 K RAM 
Set $33.00). 



Our five function card includes 
memory expansion from to 384K, one 
serial port, one parallel port, one 
game port and one battery back-up 
clock calendar. RAM disk, print spooler 
and clock utilities are also included. 



Expansion box with 10 MB 
hard disk $1495. 
Expansion box with 20 MB 
hard disk $1995. 



One Year Guarantee 

No Risk. All our products are 
guaranteed for one year. And 
remember, if for any reason, you are 
not completely satisfied within 30 days, 
you can return it for a full refund. 
Check out our competition and find 
out which is best. We know better. 



CALL US TODAY AT 
408-942-8086 



IC RESEARCH 

INCORPORATED 

489 Valley Way 
Milpitas, CA 95035 



264 BYTE • APRIL 1985 



Inquiry 322 



ARTIFICIAL INTELLIGENCE 



LEARNING 

IN PARALLEL 

NETWORKS 



by Geoffrey E. Hinton 



Simulating learning in a probabilistic system 



THE BRAIN is an incredibly powerful 
computer. The cortex alone contains 
over 10 10 neurons, each connected to 
thousands of others. All of your 
knowledge is probably stored in the 
strengths of these connections, which 
somehow give you the effortless abil- 
ity to understand English, to make 
sensible plans, to recall relevant facts 
from fragmentary cues, and to inter- 
pret the patterns of light and dark on 
the back of your eyeballs as real 
three-dimensional scenes. By com- 
parison, modern computers do these 
things very slowly, if at all. They ap- 
pear very smart when multiplying 
long numbers or storing millions of ar- 
bitrary facts, but they are remarkably 
bad at doing what any five-year-old 
can. 

One possible explanation is that we 
don't program computers suitably. We 
are just so ignorant about what it 
takes to understand English or inter- 
pret visual images that we don't know 
the appropriate data structures and 
procedures to put into the machine. 
This is what most people who study 
artificial intelligence (AI) believe, and 
over the last 20 years they have made 



a great deal of progress in reducing 
our ignorance in these areas. 

Another possible explanation is that 
brains and computers work different- 
ly. Perhaps brains have evolved to be 
very good at a particular style of com- 
putation that is necessary in everyday 
life but hard to program on a conven- 
tional computer. Perhaps the fact that 
brains store knowledge as connection 
strengths makes them particularly 
adept at weighing many conflicting 
and cooperating considerations very 
rapidly to arrive at a common-sense 
judgment or interpretation. Of course, 
any style of computation whatsoever 
can be simulated by a digital computer, 
but when one kind of machine simu- 
lates a very different kind it can be 
very slow. To simulate all the neurons 
in a human brain in real time would 
take thousands of large computers. To 
simulate all the arithmetic operations 
occurring in a Cray would take billions 
of people. 

It is easy to speculate that the brain 
uses quite different computational 
principles, but it is hard to discover 
what those principles are. Empirical 
studies of the behavior of single 



neurons and their patterns of connec- 
tivity have revealed many interesting 
facts, but the underlying computa- 
tional principles are still unclear. We 
don't know, for example, how the 
brain represents complex ideas, how 
it searches for good matches between 
stored models of objects and the in- 
coming sensory data, or how it learns. 
In this issue, Jerome A. Feldman de- 
scribes some current ideas about how 
parallel networks could recognize ob- 
jects (see "Connections" on page 
277). I will describe one old and one 
new theory of how learning could oc- 
cur in these brain-like networks. 
Please remember that these theories 
are extreme idealizations; the real 
brain is much more complicated. 

Associating Inputs 
with Outputs 

Imagine a black box that has a set of 
input terminals and a set of output 

[continued] 
Geoffrey E. Hinton is an assistant professor 
of computer science at Carnegie-Mellon 
University. He can be reached at the Com- 
puter Science department. Carnegie-Mellon 
University. Pittsburgh. PA 15213. 

APRIL 1985 -BYTE 265 



RUN/C: 

The C Interpreter 

Available NOW for 
only $ 149.9S! 




. .,..,.... ..., 



Finally, a painless introduction to the 

C language. With RUN/C: Thie C Interpreter 

you can create and run C language programs in an 
environment as easy to use as BASIC. 

RUN/C is C for the rest of us. It is a robust 

implementation of standard K&R. 

RUIM/C is for both the beginner and professional. 

FOR BEGINNERS. . . 
RUN/C provides a B ASIC-like user interface for C, making RUN/C 
the easiest bridge to proficiency in this state-of-the-art language. This is 
an opportunity to learn a professional language using the immediate, 
interactive programming environment that has made BASIC the world's 
most widely used computer language. 

FOR PROFESSIONALS . . . 



If you are a professional programmer, RUN/C is ideal for creating sim- 
ple programs, such as filters, for developing and debugging functions, and 
for writing and testing programs of real complexity and sophistication. 

RUN/C includes full floating point, 8087 support, structures, unions, 

initializers, casts and more than 100 built-in C functions. 

With RUN/C you get all this with a command structure modeled after 
BASIC'S using familiar terms such as EDIT, RUN, LIST, LOAD, SAVE, TRON, 
SYSTEM, etc. 

Since RUN/C is a true interpreter it means that C programs can be 
written, tested and run within a single protected environment. It is a 
teaching tool and a source code debugger. 

Here's more good news . . . 



Great documentation: a 475- 
page, easy-to-read manual filled 
with executable programs 
Array-index and pointer bounds 
checking 

Variable-trace and dump 
diagnostics PLUS an integral 
program profiler 
Full buffered and unbuffered 
file I/O 

Printer and asynch support 
Forking to your favorite full 



screen editor with automatic 
return to RUN/C with your 
edited program 

• System Requirements: 
IBM® PC or compatible with 
PC-DOS 2.0 or MS™-D0S 2.0 or 
greater with ANS1.SYS. 

• Nearly 100 sample C programs 
on disk 

Get things right the first time 
with RUN/C: 

The C Interpreter.™ 



For immediate delivery or more information: 



Call lfcte_ Lifeboat™ 

1-800-847-7078 ^^ 

In NY, 1-212-860-0300 

Lifeboat™ Associates 1651 Third Ave. New York, NY 10128 

RUN/C is a trademark of Age of Reason Co. 



PARALLEL NETWORKS 



Ideally, the black box 
will capture some neat 
regularity in its 
connection strengths. 



terminals. Each terminal can be 
clamped into either of two states, ac- 
tive or inactive (I or 0). We can show 
the black box what we would like it 
to do by repeatedly clamping a com- 
bination of Is and Os on the input ter- 
minals and another combination of Is 
and Os on the output terminals (each 
combination is called a vector). When 
we have done this for many I/O (input/ 
output) pairs, we would like the black 
box to automatically set its output ter- 
minals into the correct state when we 
clamp a vector on the input terminals. 
Ideally, if there is some neat regulari- 
ty in the mapping from input vectors 
to output vectors, we would like the 
black box to "capture" this regularity 
in its internal connection strengths in 
order to give the "correct" output vec- 
tor for input vectors it has never seen 
before. This kind of black box would 
be a very useful module to have with- 
in an intelligent system. 

If the black box contains only direct 
connections from input terminals to 
output terminals, there is a beautifully 
simple learning procedure that ad- 
justs the weights on these connec- 
tions until every input vector causes 
the appropriate output vector. The 
learning procedure has two phases 
that keep alternating. In phase 1. we 
clamp an input vector on the input 
terminals and an output vector on the 
output terminals. Then we increment 
by a small amount, 5, the weights of 
all connections that have both their 
input and output terminals active. In 
phase 2, we clamp the same input 
vector, but we let the black box 
decide for itself what output vector to 
produce, using the rule that an out- 
put terminal turns on if the sum of the 
weights on its connections from active 
input terminals is positive. We then 



266 B YTE • APRIL 1985 



Inquiry 428 



PARALLEL NETWORKS 



decrement by 5 all the connections that 
have both their input and output ter- 
minals active. If the network produces 
exactly the right output, these decre- 
ments will exactly undo all the incre- 
ments we made in phase I , because 
exactly the same pairs of input and 
output terminals will be active in the 
two phases. If, however, the network 
produces the wrong output in phase 
2, some of the weights that were in- 
cremented will not be decremented 
or vice versa, so some weights will 
change. 

The learning procedure I have de- 
scribed is a version of the Widrow- 
Hoff or "perception convergence" 
procedure. It has a remarkable prop- 
erty: If we keep cycling through all the 
pairs of input and output vectors 
using this two-phase procedure for 
each pain we will converge on a set 
of weights that causes the right out- 
put vector for every input vector if any 
such set of weights exists. The big disap- 
pointment (which led people in AI to 
abandon this kind of model) is that for 
most interesting problems there is no 
suitable set of weights. The relation- 
ship between the input and output 
vectors is just too complicated to be 
captured by a system that has direct 
connections between input and out- 
put terminals. At the very least, there 
must be intermediate layers within the 
black box, and units in these layers 
must learn to extract a hierarchy of 
"features" of the input vector that can 
eventually cause the right output. 

Here is an example of a relatively 
simple task that requires intermediate 
units. The input consists of two 8-bit 
vectors, one of which is a shifted ver- 
sion of the other. Only shifts one 
place to the left or one place to the 
right are allowed. There are two out- 
put terminals, one for each possible 
shift, and the black box must turn on 
the correct output terminal for any ap- 
propriately related pair of input vec- 
tors. The task sounds easy until you 
consider that any one of the input 
bits, considered in isolation, provides 
no information about what the output 
should be. Moreover, simply adding 
up evidence from all the separate in- 

[continued] 




Se habla Espanol Call for programs not listed 

Technical & Other Information (602) 246-2222 

TOLL-FREE ORDER LINE 1-(800) 421-3135 



Call for pricing 

on other Sperry Computers. 



SPERRY PC COMPUTERS 



Authorized Sperry Dealer. 
Dealer Inquiries Invited. 



Mono Desktop 256K, 2 Drives, Serial Port, Par. Port, Clock, 

MSDOS 2.11, GWBasic plus Other Software $1695 

Portable Computer 256K, 2 Drives Full IBM Compatibility $1695 



DATA BASE MANAGEMENT SYSTEMS 

Fox and Geller Quickcode $125 

Knowledgeman $249 

Condor in $289 

NWA Statpak $265 

Tim IV $245 

DBase Manager II $165 

FRIDAY $159 

Personal Pearl $215 

PFS File $79 

Electric Desk $195 

RBase4000 $245 

CLOUT 2 $129 

Power Base $219 

WORD PROCESSING 

Wordstar, Pro Pack $240 

Samna III $310 

Wordstar 2000 for IBM PC $238 

Wordstar 2000+ $285 

Leading Edge Word Processor/Merge ..$85 

Microsoft Word With Mouse $279 

Word Perfect $219 

Volkswriter for the IBM PC $110 

Volkswriter DeLuxe $149 

Random House Spell Checker $36 

PFS Write $78 

Multimate $255 

Peachtext 5000 $185 

SPREADSHEETS 

Supercalc II $145 

Supercalc III $160 

Microsoft Multiplan $119 

!TK Solver $259 

Lotus 123 $294 

Symphony $415 

ACCOUNTING 



TCS. Big Four equivalent of Peachtree Series 

4 * Specially augmented and customized 
for your IBM PC Terminal and Printer - GL 
AR, PA, AP, CP/M-80, CP/M-86for PC XT, 
DOS 1.1, 2.0, : 
Each Module , . , $65 For AH Four $249 



CYMA Call 

Dollars &$ence $95 

MBSI Accounting (Real World) $350 

Tobias Managing Your Money $99 

TRANSFER PROGRAMS 

Hayes Smartcom $85 

Move-it $79 

Microstuff Crosstalk $95 



BEST PRICE 

FOR IBM PC OR CLONES 

Multifunction Board - Includes Async 
Adapter, Parallel" Adapter, Clock, with 
battery back-up and Software, 64K 
memory expandable to 384K. 1 year 
warranty $235 



LANGUAGES 

Lifeboat Lattice C Compiler $265 

Microsoft C Compiler $299 

Microsoft Pascal Compiler $180 

Microsoft Basic Compiler $235 

Microsoft Basic Language $225 

FOR PC DOS 

PC Paint Brush $85 

Norton Utilities $59 

Copy II PC $24 

Prokey V3.0 $79 

Harvard Project Manager+ $275 

Microsoft Flight Simulator $32 

HARDWARE 

ABC Printer Switch $85 

Micro Fazer Parallel 64K $185 

Hayes 1200 Modem $429 

Hayes 1200b Modem for IBM PC $379 

64KRAM Chips (9) 150 NSEC $24 

Anchor Signalman 1200 baud Modem ..$245 

lOmega Bernoulli 20 Megabyte $2595 

Princeton RGB Monitor $459 

Taxan RGB Vision 425 



Diskette Super Special! 
10 D/S D/D (Qty 100) ^ ...V... ,$13.95 



COMPUTERS 

IBM Computer Call 

BOARDS FOR THE IBM PC 
OR LOOKAUKES 

Hercules Color Board with Par. Port ..$169 

AST Six Pack $245 

384K Board with 256K $275 

Quadcolor I $185 

STB Graphics II Board $335 

Paradise Graphics Board $275 

New Quadram Multifunction Board ... Call 
PRINTERS 



FREE! PRINTER SET SOFTWARE 

Purchase an Okidata, Epson or Gemini 
printer and receive at no charge a menu 
driven program to set print characteris- 
tics or to make your computer function 
as a correcting typewriter. Retail value 
$35, Available; for most disk formats. 



Gemini SG/10 Call 

Gemini SG/15 Call 

Okidata 82A, 83A, 93P Call 

Okidata 93P $569 

Okidata 84P $650 

Juki 6100 $389 

Juki 6300 $689 

Call on all Epson Models 

Silver-Reed EXP 400 $235 

Silver-Reed EXP 550 $395 

Toshiba 1351 $1210 

NEC, Diablo Call 



TERMS: Prices include 3% cash discount. Add 3% for charge orders. Shipping on most items $5.00. 

AZ orders +6% Sales Tax. Personal check, allow ten (10) days to clear. Prices subject to change. 

TOLL-FREE ORDER LINE 1-(800)-421-3135 

WAREHOUSE DATA PRODUCTS 

2701 West Glendale Ave., Suite 6 SS 

Phoenix, AZ 85021 



APRIL 1985 -BYTE 267 



PARALLEL NETWORKS 



put bits is useless. The task can be 
done only if you consider combina- 
tions of bits in one vector with bits in 
the other, which requires intermediate 
units that extract informative com- 
binations. Figures la and lb show a 
collection of useful intermediate fea- 
ture detectors that work well together 
for performing this task. 

When we try to extend the simple 
learning procedure to networks con- 
taining intermediate units, more com- 
plications arise because we do not 
know in advance how we want the in- 
termediate units to behave. So instead 
of just fixing some weights that will 
make the output terminals behave in 
the way that we specify, the learning 
algorithm must also decide under 



what circumstances each of the inter- 
mediate units should be active. This 
amounts to creating intermediate rep- 
resentations. Several more recent 
learning procedures can do this. I 
shall describe one that Terry 
Sejnowski and I discovered. It is only 
guaranteed to work in networks of a 
rather special kind, which I will now 
describe. 

Networks That Minimize 
Their Energy 

The kind of network we have been 
considering so far consists of layers 
of units in which units in one layer are 
connected to units only in contiguous 
layers. More complex networks have 
cross-talk within a layer and feedback 




Figure la: A network with 16 input terminals, 12 intermediate units, and 2 output 
terminals. The boldface units show which bits are on in a typical pair of input and 
output vectors. The 8-bit vector at the bottom has been shifted one place to the left 
(with wraparound) to produce the 8-bit vector immediately above it. With these two 
vectors as the input, the correct output vector (shown at the top of the figure) has the 
left unit active to represent a left shift. Each of the 12 intermediate units is connected 
to all the input and output units, but only one set of connections is shown. The 
intermediate units also have a fixed threshold, which is subtracted from their net input 
before the decision is made to turn them on or off. 



from later layers to earlier ones. It is 
generally very hard to analyze the 
behavior of such networks, but John 
Hopf ield at Cal Tech (reference I ) has 
shown that there is an interesting 
special case that behaves in a very 
useful way. In a Hopf ield net, the units 
make their decisions asynchronously, 
the communication between units is 
instantaneous, and all the connections 
are symmetrical; the effect of unit i on 
unit / is the same as the effect of unit 
/ on unit i. Given these restrictions, the 
various possible states of the whole 
network form a space like a bumpy 
surface and the current state of the 
network behaves like a ball bearing 
placed on this surface— it moves 
downhill into the nearest local minimum. 
Each point in the surface corresponds 
to a pattern of active and inactive 
units in the network, and the height 
of the surface at that point represents 
the "energy" of that pattern of activi- 
ty, where the energy of a pattern is 
defined as minus the sum of all the 
weights on connections between pairs 
of active units. Therefore, if two units 
have a big positive weight between 
them, patterns in which they are both 
active will have low energy; it is pat- 
terns like this into which the network 
will settle. Conversely, a negative 
weight between two units will make a 
big positive contribution to the 
energy when they are both on, so the 
network will tend to avoid such states. 

Figure 2 shows a small network 
whose lowest energy state is -8. Can 
you figure out which units are on and 
which are off in this state? You will 
always end up at an energy minimum 
if you start with a random state and 
then apply the following rule to each 
unit in turn (in any order): If the sum 
of the weights on the connections to 
other currently active units is positive, 
turn it on; otherwise, turn it off. If you 
apply this procedure a few times, you 
will discover that there is another 
minimum with an energy of -3 and 
that once the network has settled into 
this state it will just stay there. 

Networks of this type can be used 
to associate input vectors with output 
vectors. To provide the input, we 
clamp a subset of the units into their 



268 BYTE • APRIL 1985 



PARALLEL NETWORKS 



on or off states, and, once the rest of 
the network has settled into an energy 
minimum with this input vector 
clamped, we treat the states of an- 
other subset of the units as the out- 
put. In figure 2, for example, we could 
clamp the three bottom units into the 
active state to represent the input vec- 
tor (1, 1, 1); we would get the output 
vector (1, 0) by letting the network set- 
tle and then reading the states of the 
top two units. 

To teach the network a particular set 
of I/O pairs, we would need to create 
an appropriate energy landscape— we 
would need to choose weights so that 
for each clamped input vector the sys- 
tem had an energy minimum that 
yielded the correct output vector. 
Choosing such weights is not an easy 
task, and to make matters worse, we 
might end up with an energy land- 
scape in which there were many dif- 
ferent local minima for each clamped 
input; each input vector might give 
many different outputs depending on 
the energy minimum into which the 
system happened to settle. In figure 
2, for example, the input vector (0, 0, 
0) can generate two different output 
vectors depending on the initial states 
of the middle units and the order in 
which decisions get made. 

A Probabilistic Network 

If the same input is going to produce 
different outputs on different occa- 
sions, we would at least like to have 
some control over the probabilities. 
It would be nice, for example, if we 
could guarantee that deeper minima 
would be found more often than shal- 
lower ones. It would be even better 
if we could guarantee that the relative 
probability of ending up in two dif- 
ferent minima depended only on their 
relative depths. We could then control 
the probabilities of getting particular 
outputs by manipulating the energy 
landscape (i.e., by changing the 
weights). 

Once again, a physical analogy is 
helpful: If we have a ball bearing on 
a bumpy surface and we shake the 
whole system up and down, the ball 
bearing will be able to jump over the 

[continued) 





Figure lb: The weights that are learned by the 12 intermediate units. The black and 
white rectangles in the bottom two rows of a unit represent the weights on its 
connections to the input terminals. The sizes of the rectangles indicate the magnitudes of 
the weights. Black indicates a negative weight. The two weights at the top of each unit 
show how it affects the two output terminals. The weights all start at and change by 
very small steps. Notice that all 12 units detect different combinations of active input 
terminals and that these combinations are generally sensible predictors of the global shift 
for which the unit "votes" 





1 ~ 3 ( 




1 
4 / f~ 


2 / -1 

\ ~ 3 ( 


\ 
2 


/ / ! 
f \ 2 


\ -1 / -2 


\l 




V — J -] 











Figure 2: A simple network with three input units at the bottom, two intermediate 
units in the middle, and two output units at the top. All the connections are 
symmetrical. 



APRIL 1985 -BYTE 269 



PARALLEL NETWORKS 



barriers that separate shallow minima 
from deep ones; the ball bearing will 
spend most of its time in the deeper 
minima, even though it will occasion- 
ally sample higher energy states. If we 
shake for a while in just the right way, 
a useful simplification occurs: We ap- 
proach a condition called "thermal 
equilibrium" in which the ball bearing 
is still moving from place to place, but 
the probability of finding it at any one 
place on the surface is stable and 
depends only on the height of the sur- 
face at that point— it doesn't depend 
on where the ball bearing started or 
on the shape of the energy landscape. 
More precisely the log of the prob- 
ability ratio of finding the ball bear- 
ing in two different states is propor- 
tional to the energy difference of 
those two states. Scott Kirkpatrick at 
IBM introduced the idea of using 
"thermal noise" to escape from local 
minima and to increase the chances 
of finding the deeper minima (see ref- 
erence 2). He has shown that for large 
problems in which the cost of a solu- 
tion is the analog of energy, an effec- 
tive method for finding low-cost solu- 
tions is to start with a lot of thermal 



noise and gradually reduce it— a pro- 
cess that he calls "simulated 
annealing." 

In our parallel networks it is easy to 
introduce the analog of thermal noise. 
We just modify the decision rule that 
is used by the individual units. They 
still compute the sum of the weights 
on the connections coming from 
other active units, but instead of 
always turning on when this sum is 
positive and off when it is negative 
(which always reduces the energy of 
the network), they behave prob- 
abilistically, as shown in figure 3. 

Using this probabilistic decision 
rule, we can run networks in the 
following way: Clamp an input vector, 
let the remaining units turn on and off 
probabilistically until the network has 
reached thermal equilibrium, and 
then read the output vector. At 
equilibrium the output units will con- 
tinue to change states, but each out- 
put vector will have a fixed probability 
that does not vary with time. 

Research teams in fields as diverse 
as statistics (Stuart and Donald 
Geman), neuroscience (Terry 
Sejnowski). psychology (Paul 











i n 












/ 
















i 


/ 

/ . 
1 / 














P 


k 


I / 
1 / 
1 / 
1/ 














A 


1/ 








1 






/ 1 
/ i 

/ i 

/ i 

/ i 

i 
t 
j 






i 


i 


-6 


-4 


-2 





2 


4 


6 






















c k 





Figure 3 : This shows the probability p k with which the kth unit is active. The 
quantity AE k is the sum of the weights on connections between the kth unit and other 
currently active units. The equation is 



Pk = 



l+e~ 



T is the level of thermal noise in the network. The solid curve is for T = I and the 
dotted curve is for T = 0.2 5. 1/ the value of T is decreased, the unit becomes less 
probabilistic. When T = 0, the curve becomes a deterministic step function. 



Smolensky), and artificial intelligence 
are now investigating networks of this 
kind. Statisticians call them Markov 
Random Fields. At Carnegie-Mellon 
University we call our particular 
version the Boltzmann Machine, in 
honor of Ludwig Boltzmann, one 
of the founders of statistical 
mechanics. 

Learning Again 

We can now return to the issue of 
learning. First, we redefine the learn- 
ing task in probabilistic terms. For 
each possible input vector, we want 
to produce each possible output vec- 
tor with a certain probability. (Gen- 
erally most of these probabilities will 
be close to and a few will be close 
to 1.) We can then train the network 
to behave in this way by alternating 
between two phases that are very 
similar to those used in the earlier 
learning rule. 

In phase 1 we tell the network about 
the desired probabilities by clamping 
pairs of input vectors and output vec- 
tors with the corresponding frequen- 
cies. Each time a pair of input and 
output vectors is clamped, we run the 
network until it is close to thermal 
equilibrium; we then run the network 
for a little extra time, modifying the 
weights in the following way: For each 
unit of time during which two units are 
both active, we increment the weight 
between them by 5. 

In phase 2 we clamp input vectors 
and let the network decide for itself 
what output vector to give. Once it 
has approached equilibrium, we run 
a little longer, as before, and now decre- 
ment by 5 the weights between pairs 
of active units. If we keep alternating 
between phase I and phase 2, show- 
ing the network all the various pairs 
of input and output vectors, the net 
change in the weight between any two 
units will be proportional to the dif- 
ference between the probability that 
the two units are both active in phase 
1 and the probability that they are 
both active in phase 2 (averaged over 
all I/O pairs). It is remarkable that 
when these probabilities are mea- 
sured at thermal equilibrium, their dif- 

[continued) 



270 BYTE • APRIL 1985 



SoftCardlI tJ 
squeezes the mcstjuice 
out of \pur)|l^pplp 





Microsoft® Sof tCard II is the 
latest high-performance CP/M® 
board that really juices the Apple® 
II, He and 11+ 

Hard facts on SoftCard. 

The new Sof tCard has a high 
speed (6MHz) Z-80 that runs CP/M 
programs up to three times faster 
than lesser boards. Plus 64K 
memory. And if that wasn't enough, 
we also support the Apple Profile 
hard disk. 

Microsoft BASIC is included so 
it's compatible with more Apple 
CP/M software than any other 
board on the market. Thousands 
of the juiciest business programs 
including dBasell^ WordStar® and 
sophisticated Microsoft languages 



Microsoft is a registered trademark and SoftCard and The High Performance Software are 

trademarks of Microsoft Corporation. Apple is a registered trademark of 

Apple Computer, Inc. dBase II is a trademark of Ashton-Tate. WordStar is a registered 

trademark of MicroPro. CP/M is a registered trademark of Digital Research, Inc. 



like FOFTRAN-80, COBOL-80 
and BASIC Compiler. 

Juicing up the performance of 
computers is nothing new for us. 
We invented the SoftCard and 
wrote Applesoft for the Apple II. 

MICROSOFT. y&.° u '. 

The High Performance Software" DAolL> IS [lie 

language spoken by nine out of ten 
microcomputers worldwide. 
Get the Apple juicer from 
Washington. Call (800) 426-9400. 
In Washington State, Alaska, Hawaii 
and Canada, call (206) 828-8088 
and ask for the name of your nearest 
Microsoft dealer. 




Other daisy wheel printers still make you choose. 











At 80 characters per second, the 
DaisyMax 830 is one of the fastest 
letter-quality, daisy wheel printers 
you can buy 

And that means you no longer have 
to sacrifice image quality to increase 
productivity! 

Speed and superb quality are but 
two of a long list of benefits you get 
with the DaisyMax 830. 

Multiple users can share the 
DaisyMax 830 since it is designed for 
heavy volume word processing envi- 
ronments. Plus, you get standard 



DaisyMax 320~& 830' 





interfaces for easy installation, and 
friction, tractor and cut sheet feeders 
to handle all your office forms. All 
these great features also are available 
in the DaisyMax 320, offering print 
speeds up to 48 cps. 

And of course both printers feature 
rugged reliability — a hallmark of 
Fujitsu products earned from over 30 
years as a technology leader and equip- 
ment supplier to companies worldwide. 
Reliability backed by TRW service 
nationwide. 

Contact your nearest distributor for 
your local dealer. 

Inquiry 159 



Fujitsu Printers 

_ Maximum Quality MaximumValue. 









Authorized 

Fujitsu 
Distributors 



Algoram Computer Products (415) 969- 
4533, (714) 535-3630, (206) 453-1136, (916) 
481-3466; Allen Edwards Associates 
Inc. (213) 328-9770; Four Corners Tech- 
nology (602) 998-4440, (505) 345-5651; 
Gentry Associates Inc. (305) 859-7450, 
(305) 791-8405, (813) 886-0720, (404) 998- 
2828, (504) 367-3975, (205) 534-9771, 
(919) 227-3639, (803) 772-6786, (901) 683- 
8072, (615) 584-0281; Inland Associates, 
Inc. (913) 764-7977, (612) 343-3123, (314) 
391-6901; Logon Inc. (201) 646-9222, 
(212) 594-8202, (516) 487-4949; Lowry 
Computer Products, Inc. (313) 229-7200, 
(216) 398-9200, (614) 451-7494, (513) 435- 
7684, (616) 363-9839, (412) 922-5110, 
(502) 561-5629; MESA Technology Corp. 
(215) 644-3100, (301) 948-4350, (804) 872- 
0974; NACO Electronics Corp. (315) 
699-2651, (518) 899-6246, (716) 223-4490; 
Peak Distributors, Inc. (An affiliate 
of Dytec/Central) (312) 394-3380, (414) 
784-9686, (317) 247-1316, (319) 363-9377; 
R 2 Distributing, Inc. (801) 595-0631; 
R 2 Distributing of Colorado, Inc. (303) 
455-5360; Robec Distributors (215) 368- 
9300, (216) 757-0727, (703) 471-0995; 
S&S Electronics (617) 458-4100, (802) 
658-0000, (203) 878-6800, (800) 243-2776; 
The Computer Center (907) 456-2281, 
(907)561-2134, (907) 789-5411; USD ATA 
(214) 680-9700, (512) 454-3579, (713) 681- 
0200, (918) 622-8740. In Canada, Micos 
Computer Systems, Inc. (416) 624-0320, 
(613) 230-4290, (514) 332-1930, (204) 943- 
3813; SGV Marketing, Inc. (416) 673- 
2323, (1-800) 387-3860 (outside Ontario); 
Systerm Inc. (514) 332-5581. 

Additional Ribbon Distributors 

Altel Data (403) 259-7814; EKM Associ- 
ates, Inc. (416) 497-0605; Metropolitan 
Ribbon & Carbon (703) 451-9072, (800) 
368-4041; The Very Last Word (415) 552- 
0900, (800)652-1532 CA, (800) 227-3993 
USA. In Canada, Tri-Media, Inc. (514) 
731-6815. 



PARALLEL NETWORKS 



Fujitsu Printers 

Maximum Quality. Maximum Value. 




ference is exactly the right quantity to 
use for changing the weights to make 
the behavior of the network in phase 
2 (when it is deciding for itself) mimic 
the behavior in phase I (when it is be- 
ing forced to behave in the desired 
way), lb prove this it is necessary to 
define a measure of the difference 
between the probability distribution 
that is forced on the network in phase 
1 and the probability distribution that 
it exhibits in phase 2. Once the cor- 
rect measure has been defined, it can 
be shown that the measure is de- 
creased by changing each weight ac- 
cording to the above procedure. The 
proof can be found in reference 3. 
Figure 1 shows what the learning 
procedure can do when the task is to 
"recognize" the shift that was applied 
to one 8-bit vector to produce a sec- 
ond 8-bit vector. If you think this is an 
easy problem, remember that the net- 
work starts off with no preconcep- 
tions. It has no idea that neighboring 
input bits will have anything to do 
with each other, and it is not expect- 
ing this task any more than it is ex- 
pecting any other. If the very same 
network is presented with a complete- 
ly different combination of input and 
output vectors, it will create a different 
set of feature detectors that are ap- 
propriate for the different task. 

Making It Faster 

The first learning algorithm I de- 
scribed just changes weights to make 
units behave in prespecified ways. It 
cannot figure out what to do with in- 
ternal units whose required behavior 
is not specified from outside. The sec- 
ond learning algorithm is potentially 
much more powerful because it is 
able to decide how to use the inter- 
nal units to help achieve the required 
I/O mapping. It actually constructs 
simple internal representations. Un- 
fortunately there is a heavy price to 
pay for this added power. The algo- 
rithm is currently extremely slow; the 
example in figure I requires hours of 
computer time. 

lb speed things up, Blake Ward, a 
graduate student at Carnegie-Mellon, 
has built a parallel machine contain- 
ing six Omnibyte 68000 boards, each 



of which has a copy of the entire net- 
work. Each board runs with a different 
input vector, and then all the boards 
agree on how to change the weights. 
This helps, but ultimately we would 
like to implement networks of these 
probabilistic units directly in silicon. 
Unlike current computers, these net- 
works are rather tolerant of localized 
hardware failures or fabrication 
errors; Carver Mead has pointed out 
that an analog implementation of the 
processing elements would positive- 
ly thrive on the kind of thermal noise 
that comes from running transistors 
at very low power. This might make 
it possible to build much larger chips 
than is currently feasible. However, 
developments like this are still a long 
way off, and they do not remove the 
need for more theoretical progress. 
Our current simulations are slow for 
three reasons: It is inefficient to 
simulate parallel networks with serial 
machines, it takes many decisions by 
each unit before a big network ap- 
proaches equilibrium, and it takes an 
inordinate number of examples of I/O 
pairs before a network can figure out 
what to represent with its internal 
units. Better hardware might solve the 
first problem, but more theoretical 
progress is needed on the other two. 
Only then will we be able to apply this 
kind of learning network to more 
realistic problems. ■ 

REFERENCES 

1. Hopfield, John J. "Neural Networks and 
Physical Systems with Emergent Collection 
Computational Abilities," Proceedings of the 
National Academy of Sciences. 1982. vol. 79, 
pages 2 554-25 58. 

2. Kirkpatrick, S., C. D. Gellatt, and M. D. 
Vecchi, "Optimization by Simulated An- 
nealing," Science. 1983. vol. 220. pages 
671-680. 

3. Ackley. D. H. G. E. Hinton. and T. I. 
Sejnowski. "A Learning Algorithm for 
Boltzmann Machines." Cognitive Science. 
1985, vol. 9, pages 147-169. 

ACKNOWLEDGMENTS 
Iferry Sejnowski and 1 performed the 
research described here while we were 
supported by grants from the System 
Development Foundation. 1 thank the 
members of the Boltzmann Group at 
Carnegie-Mellon for helpful comments. 

APRIL 1985 • BYTE 273 



Last year the experts 
tested the too-of-the-line 



Toshiba 3-in-One printer. 
Here's what they said. 

■■When Toshiba America called 
to see if there were problems testing 
their printers, I responded, You bet — I 
can't get the P1351 off Bill Machine's 
desk long enough to get its picture 
taken!' It's that good.JJJ 

(Bill Machrone is the PC Magazine 

editor of PC Magazine.) November 27 1 984 



■■It is setting new standards for 
quality and performance in the dot 
matrix arena.jp J 



Computers & Electronics Magazine 
November 1984 



274 BYTE • APRIL 1985 



tf 



Imagine what they will 

it its successor. 





: f 



JBMWfel 




mm 




The New Toshiba P351 3-in-One Printer. They could say 
that inside the sleek new Toshiba P351 you'll find the ultimate 3-in-One 
printer. Because it offers a combination of: 

Letter-quality printing. Perfectly translated graphics. And speed. 
(100 cps letter. And draft speed improved to 288 cps.) 

They could say you'll appreciate the 24-pin dot matrix head 
that gives the P351 its exemplary letter and graphic quality 

They could say the new P351 gives you an almost unlimited 
number of ways to express yourself. With both downloadable software 
fonts and new plug-in font cartridges. 

And they could say the new P351 is not only the best looking 
printer in the $1,000 to $2,000 range. But also the most reliable. 

Of course, we're not putting words in their mouths. Just the 
ultimate 3-in-One printer in their hands. And yours. 

For complete information call 1-800-457-7777, Operator 32. 

In Touch with Tomorrow 



TOSHIBA 

TOSHIBA AMERICA, INC., Information Systems Division 



Inquiry 388 



APRIL 1985 -BYTE 275 



THE 8087 AND 80287 ARE IN STOCK! 



MicroWay is the world's leading retail- 
er of 8087s and high performance PC 
upgrades We stock a complete selec- 
tion of 8087s that run at 5 and 8mhz. 
All of our coprocessors are shipped 
with a diagnostic disk and the best 
warranty in the business - 1 80 days! 
We also offer daughterboards for sock- 
et less computers such as the NEC PC 
and PCjr, and a board which increases 
the clock speed of the 80287 in the PC 
AT. Our new NUMBER SMASHER™ 
will run the IBM PC at clock speeds up 
to 9.5 mhz and achieves a throughput 
of.1 megaflops with 87BASIC/INLINE, 



87FFT performs Forward and Inverse FFTs 
on real and complex arrays which occupy up to 
5 1 2 K bytes of RAM. Also does convolutions auto 
correlations hamming, complex vector multiplica- 
tion, and complex to radial conversions. Callable 
from MS Fortran or 87BASIC/INLINE $1 50 

87FFT-2™ performs two-dimensional FFTs. 
Ideal for image processing Requires87FFT...$75 

MATRIXPAK™ manages a MEGABYTE! 
Written in assembly language, our runtime 
package accurately manipulates large matrices 
at very fast speeds Includes matrix inversion and 
the solution of simultaneous linear equations 
Callable from MS Fortran 3.2, 87MACRO, 
87BASIC/INLINE, and RTOS each $1 50 

GRAPHICS PACKAGES 

Energraphics (stand alone) 295 

Grafmatic for MS Fortran or Pascal 1 25 

Plotmatic for Grafmatic 1 25 

Halo for Basic, C or Fortran each 1 50 

OTHER TOOLS 

Alpha Software ESP 500 

Borland Sidekick, Toolbox, or Graphics 35 

SuperKey 70 

COSMOS Revelation 850 

smARTWORK 895 

SPSS/PC 695 

DFixer 

A disk utility which thoroughly checks PC or AT 
hard disks fa bad sectors and updates the MS 
DOS file allocation table accordingly 1 49 

MAYNSTREAM 

Maynarcfs portable streaming tape backup. 

60 megabyte version 1 695 

Cartridge 50 

87 BASIC™ includes patches to the IBM Basic 
Compiler and both runtime libraries for USER 
TRANSPARENT and COMPLETE 8087 support 
Provides super fast performance for all numeric 
operations including trigonometries transcen- 
dentals, addition, subtraction, multiplication, and 
division 1 50 

CALL FOR COMPLETE CATALOG 



Micro 
May 



P.O. Box 79 
Kingston, Mass 
02364 USA 
(617)746-7341 



Intel Fortran, or Microsoft Fortran. 
Software reviewers consistently cite 
MicroWay software as the best in the 
industry! Our customers frequently 
write to thank us for recommending 
the correct software and hardware to 
meet their specific needs. They also 
thank us for our same day shipping! In 
addition to our own products which 
support the8087 and 80287, we stock 
the largest supply of specialized soft- 
ware available anywhere These include 
three FORTRANs, three PASCALS, 
APL, Intel's ASM-86 and PL/M-86, 
several Cs, 87 BASIC/INLINE, 



87 MACRO, 87FFT, and MATRIXPAK. 
For real time or multi-user applica- 
tions we offer RTOS" 11 - our implement- 
ation of Intel's iRMX executive. Our 
new products include a professional 
debugger with 8087 support, support 
for Lotus 1 -2-3, and a translator that 
converts object modules into readable 
assembly language files. If you have a 
question about which computer, lang- 
uage, compiler, operating system or ap- 
plication package is best suited to your 
problem, we can answer it. Just call: 

617-746-7341 




Micro 
IMav 



8087 & 



#;#/# 



M^r 



rt 



For the IBM PC, PC XT, PC AT and Compatibles. 



87 BASIC/ INLINE™ converts the output of 
the IBM Basic Compiler into optimized 8087 
inline code which executes up to seven times 
faster than 87BASIC. Supports separately com- 
piled inline subroutines which are located in their 
own segments and can contain up to64K bytes of 
code. This allows programs greater than 1 28 K! 
Requires the IBM Basic Compiler and Macro 
Assembler. Includes 87BASIC $200 

87 MACRO™ - our complete 8087 software 
development package. It contains a" Pre- 
processor," source code for a set of 8087 macros, 
and an object library of numeric functions includ- 
ing transcendentals, trigonometries, hyperbolics, 
encoding, decoding and conversions For the IBM 
Macro Assembler, Version 1 .0 or 2.0 $1 50 

OBJ — 'ASM™ - a multipass object module 
translator and disassembler. Produces assembly 
language listings which include public symbols, 
external symbols, and labels commented with 
cross references Ideal for understanding and 
patching object modules and libraries for which 
source is not available $200 

87DEBUG™ - a professional debugger with 
8087 support, a sophisticated screen-oriented 
macro command processor, and trace features 
which include the ability to skip tracing through 
branches to calls and software and hardware 
interrupts Breakpoints can be set in code or on 
guarded addresses in RAM $1 50 

RTOS - REAL TIME OPERATING SYSTEM 

RTOS is a multi-user, multi-tasking real time oper- 
ating system. It includes a configured version of 
Inters iRMX-86, LINK-86, LOC-86, LIB-86,OH-86, 
and MicroWay's 87DEBUG. Runs on the IBM-PC, 
XT, PC-AT and COMPAQ 400 

INTEL COMPILERS 1 

FORTRAN-86 750 

PASCAL-86 750 

PI7M-86 500 

87C (LATTICE/MICROWAY) 750 

ASM-86 200 

1 Requires RTOS or iRMX-86. All Intel compiler names and 
iRMX-86 TM Intel Corp 



You Can 
TalkToUs! 



HARDWARE AND LANGUAGES 

8087-3 5mhz $149 

Including DIAGNOSTICS and 1 80-day warranty 
For IBM PC and compatibles 

8087-2 8mhz $275 

For Wang, AT&T, DeskPro, NEC, Leading Edge 

80287-3 5mhz $275 

ForthelBMPCAT 

64KRAM Set $20 

256KRAMSet $125 

128K RAM Set pc at $175 
NUMBER SMASHER™ 1590 

9.5mhz 8087 coprocessor board for the IBM PC 

LOTUS 1 -2-3™ 8087 Support call 
FORTRAN and UTILITIES 

Microsoft Fortran 3.2 229 

IBM Professional Fortran 545 

Intel Fortrar>-86 1 750 

FORLIB+ 65 

STRINGS and THINGS 65 

C and UTILITIES 

Lattice C 299 

Microsoft C V3.0 CALL 

C86 299 

C TOOLS 85 

C Trigs and Trans 1 50 

BASIC and UTILITIES 

IBM Basic Compiler 270 

87BASIC/INLINE 200 

Summit BetterBASKT 1 75 

Summit 8087 Module 87 

MACRO ASSEMBLERS 

IBM Assembler with Librarian 1 55 

87MACRO 1 50 

Microsoft Assembler V 3.0 1 25 

PASCAL 

Microsoft Pascal 3.2 1 99 

Borland Turbo Pascal 35 

Turbo with 8087 Support 85 

APL 

STSC APL*PLUS/PC 475 

Pocket APL 85 

1 -2-3 and Lotus are trademarks of Lotus Devel- 
opment Corporation 



276 BYTE • APRIL 1985 



Inquiry 269 



ARTIFICIAL INTELLIGENCE 



CONNECTIONS 

by Jerome A. Feldman 

Massive parallelism 
in natural and artificial intelligence 



A FUNDAMENTAL PREMISE of arti- 
ficial intelligence (AI) is that intelligent 
behavior can be simulated on digital 
computers. Great progress has been 
made in AI, with far-reaching practical 
and scientific consequences. Despite 
successes with quite specific prob- 
lems, however, many researchers feel 
that the general questions of intelli- 
gence have barely been touched. The 
field of AI is nowhere near possess- 
ing the ability to simulate the natural 
intelligence of a small child or even 
a simple animal. Yet the basic com- 
puting speed of modern computers is 
about a million times faster than the 
firing rate of a neuron, which is in the 
millisecond range. 

The situation becomes even more 
striking when we consider the speed 
of human responses on simple tasks. 
When asked to carry out a wide range 
of tasks, such as naming a picture or 
deciding if some sound is an English 
noun, people can respond correctly 
in about half a second. This means 
that the brain, a device composed of 
neural elements with a basic com- 
puting speed of a few milliseconds, 
can solve difficult problems of vision 
and language in a few hundred milli- 
seconds (0.5 second = 500 millisec- 



onds), or about 100 steps. The best 
AI programs for these tasks are not 
nearly as general and require millions 
of computational time steps. Of 
course, the brain is a parallel device, 
while essentially all of our existing 
machines are sequential executing 
one instruction at a time. But what are 
the algorithms used in this massively 
parallel natural computer? 

The exploration of possible algo- 
rithms for this radically different ar- 
chitecture forms the cornerstone of a 
promising new branch of artificial in- 
telligence. Workers in the field use an 
abstract computer that is as similar as 
possible to the brain in structure and 
performance. This approach permits 
AI researchers to collaborate closely 
with colleagues in the brain and 
behavioral sciences; a good algorithm 
for some task on a computational 
model can also serve as a prototype 
theory for the mechanisms the brain 
uses on the same problem. Some psy- 
chologists have found that construct- 
ing massively parallel computational 
models to fit their data is far easier 
than constructing models based on 
sequential machines. The cycle is 
complete when AI researchers use ex- 
perimental results to guide the con- 



struction of parallel algorithms for 
various problems. 

In addition to the 100-step restric- 
tion, using the brain as a model has 
other computational consequences. 
For one thing, the timing constraints 
limit to a few bits the information that 
can be sent from one neuron to an- 
other. This means that units cannot 
pass the large symbolic structures 
common in AI and that the computa- 
tional richness must lie in the connec- 
tions among units; this has led to the 
use of the term "connectionist" to 
characterize these models. 

Using the brain as a model does 
allow for quite a lot of connections, 
up to about 10,000 per unit. The total 
number of neurons (about 100 billion) 
seems large but is actually a major 
limitation. Since vision has a million 
parallel inputs, any algorithm requir- 
ing n 2 units would not fit. Also, the 
brain grows no new units and essen- 

[continued] 
]ewme A. Feldman (University of Rochester, 
Rochester, NY 1462 7) is a professor of com- 
puter science and holds a doctorate from 
Carnegie-Mellon University. His research in- 
terests include programming languages and 
systems. A I, and the problems of parallel 
algorithms and biological computation. 



APRIL 1985 -BYTE 277 



CONNECTIONS 



tially no new connections, placing 
severe constraints on models of learn- 
ing. Even with all these constraints, 
connectionist models are increasing- 
ly popular in AI research. 

A Visual Model 

A simple example can capture some 
of the flavor of connectionist com- 
putation. The cube shown in figure I 
is a famous optical illusion attributed 
to the Swiss naturalist L. A. Necker 
(1832). Most people initially see the 
cube with the corner G closer to 
them, but you can also see it as a 
cube with vertex A closest to you. If 
you focus on vertex A and imagine it 
coming out of the paper toward you, 
the picture will flip to the A-closer 
cube. Notice that the flip takes less 
than a second. The Necker cube is in- 
teresting to psychologists because it 
will flip spontaneously between the 
two views if you keep looking at it. It 
is interesting to artificial-intelligence 
researchers because of what it tells us 
about parallel computation. 

You have observed how quickly the 
Necker cube flips, and you know how 
slow the underlying human com- 
puting elements are. A sequential pro- 
gram running on such a slow device 
could probably not perform this task. 
But the situation is much more com- 
plex. Both human and computer vi- 
sion require several levels of process- 
ing (see "Vision" by Dana H. Ballard 
and Christopher M. Brown on page 
24 5). 'typical levels include edge 
segments, lines, vertices, faces, and 





A 






H 
D 








/ 


B 


F 

/ 




G 


A 


C 


/ 













object descriptions. The edges and 
lines are the same for both the A- 
closer and G-closer cubes, but many 
other visual features are seen dif- 
ferently in the two views. A few of 
these are given in figure 2. Remark- 
ably, our visual system simultaneously 
flips all these perceptual decisions 
from one mutually consistent reading 
of the cube to the other. This il- 
lustrates the key cooperative property 
of massively parallel computation and 
why it is conceptually different from 
von Neumann computation on stan- 
dard machines. 

The Necker cube also illustrates 
some of the details of the connec- 
tionist paradigm, as shown in figure 
2. In our models each item of interest 
is represented as a computational 
unit, with connections to many other 
units. Each unit has a level of activity 
(say between -10 and +10) and 
automatically sends the value of this 
activity along all its outgoing connec- 
tions. In the network of figure 2, units 
that are mutually consistent (for ex- 
ample, "H closer than G" and "G hid- 
den") have connections to each other. 
Units that are mutually exclusive, such 
as "G hidden" and "G showing" are 
connected with circle-tipped links 
denoting negative connections. The 
only other information needed for a 
complete model is the rule by which 
a unit computes its new activity from 
its inputs and its old activity. We can 
assume that the units compute the 
average of their positive and negative 
inputs. Networks like figure 2 are not 



very sensitive to the exact choice of 
unit computation rules; this is one of 
the reasons for their attractiveness. 
Units that are all mutually connected 
by negative links are said to comprise 
a "winner-take-all" network. Such net- 
works are one of the main decision 
mechanisms in connectionist models 
and have known neurophysiological 
analogs. 

Much of the effort in massively 
parallel AI is dedicated to using com- 
putational frameworks like that in 
figure 2 to build models of intelligent 
activity. Advantages of this approach 
include its link to natural intelligence, 
increased noise resistance, and ease 
of implementation on parallel hard- 
ware. But the main advantage of the 
connectionist approach is that it pro- 
vides a much better way of specify- 
ing some computations. I know of no 
other way to describe the Necker- 
cube phenomenon that is as clear and 
concise as the model in figure 2. 

A Natural-Language 
Application 

Researchers in AI and related areas 
of cognitive science are using connec- 
tionist models to study a variety of 
tasks. Vision is an area where massive 
parallelism fits naturally. Ballard and 
Brown's article describes some of the 
success in that area. The methodolo- 
gy is also effective in natural-language 
research. Although it is a less obvious 
application, researchers have had 
some very nice results in that domain. 

{continued) 




Figure 1 : The optically illusive Necker 
cube. Is point A closer to you than point 
G, or vice versa? 



Figure 2: A connectionist model illustrating the process of understanding the 
cube in figure 1 . 



278 BYTE • APRIL 1985 



Get your Mac to open up* 







/ 



— * \ 



\ — 

\ — . 

Mac s a terrific machine. 
Versatile, industrious, under- 
standing, easygoing, fun. 

Trouble is, Mac lives in a world of his own. 
He doesn't communicate well with his co- 
workers. Doesn't work well with them. 

Now there's help. 

The Microsoft® MacEnhancer™ expansion 
system can get him out of his shell. Ml open 




tut:*-: A 





kill v lltllltll 



ttltlllll 



mi 



his communications channels. Expand his 
horizons, 

MacEnhancer simply plugs into Mac's 
communication port. It lets you keep that 
original port while adding an IBM®-type 
parallel connector for your printer and two 
IBM-type serial connectors. 

So now Mac can hobnob with even the 
finest letter quality printers. Cope with 
hyperactive dot-matrix printers. 

And it comes with MacEnhancer terminal 
software. A communications program that 



Microsoft is a registered trademark and The High Performance Software and MacEnhancer are 

trademarks of Microsoft Corporation. IBM is a registered trademark of International Business Machines Corporation. 

Macintosh is a trademark licensed to Apple Computer, Inc. 



lets Mac use a modem to talk 
with other computers— from personal to 
mainframes. 

All without losing the loveable Mac per- 
sonality. Just "point and click!' 

Getting Mac to expand his horizons 
wasn't easy, but m JM/^rV^C/^NrT 
somebody had Ml V^^^vJr h 

to Ho it And ^ e ^»h Performance Software™ 

who better than Microsoft? We've written 
more Macintosh™ programs than any other 
software company. Including Microsoft 
Word, Microsoft File. And Microsoft BASIC, 
Mac's first language. 

For more information, or to free associate 
with your nearest Microsoft representative, 
call (800) 426^9400. In Washington State, 
Alaska, Hawaii and Canada, call (206) 
828^8088. 








Inquiry 423 



GET SERIOUS! 

CHECK OUR LOW PRICES NOW 
*** TAX RETURN SPECIAL *** 

LOTUS 1-2-3 $285.00 

* SYSTEMS * 

IBM PC-256K 

Two TEAC 360K Dr's, Color/Monochrome Graphics 
Board, Parallel Printer Port, Taxan Monochrome 

Display, DOS 2.1 . ONLY $2,145.00 

IBM PC-256K 

Two TEAC 360K Dr's, Color/Monochrome Graphics 
Board, AST 6-Pak Plus 64K. PRINCETON HX-12 
Color Display. PANASONIC 1091 Printer, LOTUS 1- 

2-3, DOS 2.1 . ONLY $3,320.00 

10 Meg Upagrade $680.00 

* SOFTWARE * 

LOTUS Symphony $445.00 

dBASE III , 349.00 

Wordstar Prof. Pack for IBM 299.00 

ASCII Express for IBM 109.00 

Framework 349.00 

MICROSOFT Word 229.00 

MICROSOFT Multiplan 129.00 

PFS Write/File/Report 85.00 

* HARDWARE * 

AST Six Pack Plus 64K $264.00 

STB Rio Plus II 64K 249.00 

STB Color/Monochrome Graphics 269.00 

STB Monochrome Board 169.00 

HERCULES Monochrome Graphics 329.00 

HERCULES Color Card 179.00 

TEAC 55B % Height Dr's 129.00 

TANDON TM100-2 Dr 169.00 

* PRINTERS DOT MATRIX * 

PANASONIC 1091 $289.00 

PANASONIC 1092 395.00 

EPSON FX-80+ 395.00 

EPSON FX-100+ 644.00 

OKIDATA 92P 389.00 

BROTHER 2024L 995.00 

* PRINTERS LETTER QUALITY * 

BROTHER HR15 $369.00 

BROTHER HR25 609.00 

BROTHER HR35 849.00 

PANASONIC 3151 495.00 

* MONITORS * 

TAXAN 121/122 Monochrome $145.00 

PRINCETON HX-12 469.00 

PRINCETON MAX-12 179.00 

ZENITH Amber/Green 85.00 

NEC 1260 Green 85.00 

NEC 1305 RGB/T.V 449.00 

* MODEMS * 

HAYES 1200B $399.00 

HAYES Micromodem He 219.00 

HAYES 300 199.00 

ANCHOR Mark XII 239.00 

PROMETHEUS Promodem 1200 324.00 

* APPLE * 

80 COLUMN 64K He only $99.00 

80 COLUMN Card II* only 59.00 

VIDEX Ultraterm 179.00 

APPLEMOUSE II 125.00 

ASCII Express 79.00 

Z-80 Card 49.00 

APRICORN Serial Card 59.00 

MICROSOFT Premium He 269.00 

MICROSOFT Multiplan 129.00 

MAC MICROSOFT Multiplan 125.00 

MAC MICROSOFT Basic 105.00 

16K Card 49.00 

Many items available. Please call for complete pricing. 

gj 714/840-4179 B 

CALIFORNIA 
MICRO HOUSE 

16835 Algonquin Street 
Huntington Beach, CA 92649 

Corporate accounts welcomed, purchase orders accepted 
with net 30 day terms, subject to credit approval. All prices 
represent cash prices. All items shipped next day in factory 
sealed packages. We guarantee all items for 30 days. 
California residents please add 6% sales tax. Prices subject to 
change without notice. 



CONNECTIONS 



One problem that has worked out 
particularly well is disambiguation. 
Consider what happens when you 
hear or read a sentence such as: "Bob 
threw a ball." You automatically assign 
a meaning to each word, most likely 
interpreting "threw" as "propelled" 
and "ball" as "a sphere" despite the 
fact that most words in English are 
ambiguous. For example, the words 
"threw" and "ball" both suggest quite 
different meanings in the sentence 
"Bob threw a ball for charity." The 
problem is to develop algorithms that 
exhibit this behavior and help explain 
its basis. Linguists and other cognitive 
scientists have worked at length on 
these issues and have developed 
sophisticated theories. The contribu- 
tion of AI has been to encode these 
theories in programs so that they can 
be tested and. if correct, used in ap- 
plications. As with the Necker-cube 
example, massively parallel models 
appear to constitute the best way to 
carry out the encoding. 

In language, as in vision, the theory 
calls for several distinct levels of 
representation and processing. Figure 
3 shows three of these levels. The lex- 
ical level comes after the individual 
sounds or letters have been formed 
into words; this level corresponds to 
what you would look up in a dic- 
tionary. The word-sense level cor- 
responds to the various meanings 
listed under a word in the diction- 
ary—the problem, of course, is to pick 
the right one. The case level comes from 



linguistic theory and conveys the idea 
of the different roles that words can 
play in a sentence. The cases used 
here are 

• agent: the person or thing carrying 
out an action 

• object: the thing acted upon 

• recipient: beneficiary of the action 

The key linguistic insight is that 
there are constraints on the possible 
word senses that can fill various case 
roles. For example, you cannot throw 
(propel) a ball (dance), so these are 
incompatible. Nor can you throw 
(sponsor) a ball (sphere). The only 
other fact used in the model is that 
some word senses are more frequent 
than others. 

We can now see how figure 3 
presents a connectionist computa- 
tional model of disambiguation. As 
with the Necker cube, compatible 
units have positive links and incom- 
patible units have negative, winner- 
take-all, links. The model assumes that 
as each word reaches the lexical level 
it spreads activity to the various word 
senses to which it is connected. Since 
the more frequent sense has a greater 
weight, it will tend to dominate less 
frequent senses. As additional words 
come in, they will activate more word 
senses and case roles. The simple 
sentence "Bob threw a ball" will ac- 
tivate a mutually consistent set of 
units, and we will never notice the 
alternatives. The additional words "for 

[continued) 



Case 




Figure 3: A connectionist model for understanding the sentence "Bob threw a ball [for 
charity)'.' The model uses three levels of representation and processing. 



280 BYTE • APRIL 1985 






u 



Rated* 
M GP" 

Great performance. Great price. Great printer. 



I 




The new Epson® Spectrum™ LX-80 is 
the perfect co-star for your personal 
or business computer. With versatile 
Dual Mode operation, this dot matrix 
printer turns out quick, clean draft 
copy at a rapid 100 characters per sec- 
ond. Then lets you switch to "NLQ" 
mode for finished copy with a high 
quality, typewriter-style appearance. 
"Award-winning performance" 
Epson's exclusive SelecType feature 
makes choosing the most popular 
typestyles as easy as pushing a few 
buttons on the printer. In addition to 



Near Letter Quality mode, the LX-80 
offers you over 160 typestyle com- 
binations, including Elite, Pica, Italics, 
Emphasized and Proportional. And 
the LX-80 prints great pictures, charts 
and graphs, at five densities up to 240 
dots per inch resolution. 
"Critics' choice" 

With an optional tractor feed and an 
automatic Single-bin Cut Sheet 
Feeder, the LX-80 is a highly versatile 
performer. Because it's an Epson — the 
industry standard — the LX-80 is com- 
patible with virtually all computer sys- 



tems. At one full year, the warranty is 
the best in the business. The sleek, 
contemporary style looks great in 
home or office. And the Spectrum 
LX-80 looks best where it counts 
most: the bottom line. 

See the Epson Spectrum LX-80. 
Now showing in your neighborhood. 

Number one. And built like it 

EPSON 

EPSON AMERICA, INC. 




2780 Lomita Boulevard • Torrance, CA 90505 • Call (800) 421-5426 for the Epson dealer in your area. In California, call (213) 539-9140. 

Epson Is a registered trademark of Epson Corporation. Spectrum ts a trademark of Epson America. Inc. 



CONNECTIONS 



charity" will activate the "dance" 
meaning of ball. This will weaken the 
"sphere" meaning, which will in turn 
reduce the activity of "propel" 
because the sentence no longer has 
a suitable object. Thus, an alternative 
stable coalition develops and sup- 
presses the original interpretation. 
The two alternative coalitions are 
quite similar to the two readings of 
the Necker cube. This is no accident— 
the idea of a cooperative-competitive 
network pervades parallel models. 
Work on language problems such as 
disambiguation is quite advanced and 
offers simple explanations of many 
phenomena. For example, a context 
that biased us toward the "dance" 
sense of ball would be modeled as 
providing that meaning with a head 
start in its competition with "sphere." 
Again, the massively parallel 
paradigm is the simplest way to ex- 
press this idea. 

Knowledge Representation 

The Necker-cube and disambiguation 
examples are both instances of what 
AI researchers call recognition prob- 
lems. Several other problems are like 
this, but many are not. Can we apply 
massively parallel models to other 
traditional AI issues such as knowl- 



edge representation and inference? 
Researchers have completed much 
less work along these lines but have 
made some promising starts. The ex- 
ample in figure 4 should convey the 
flavor of this work. 

The standard way to explore the 
issue of knowledge representation 
and inference is in terms of programs 
that can answer questions. AI ap- 
proaches to the development of 
question-answering systems are 
numerous (Roger Schank and Larry 
Hunter present one in "The Quest to 
Understand Thinking" on page 143), 
but the approaches all have the same 
basic requirements: You need a way 
to store the knowledge, to pose ques- 
tions, and to compute and register the 
answers. In a connectionist model, all 
of these aspects must be expressed 
in terms of activity spreading among 
simple units like those in the previous 
examples. 

It is easiest to start with the record- 
ing of answers. In figure 4, the possi- 
ble tastes of foods form a winner-take- 
all network, where each unit inhibits 
the others so only one answer will be 
active. The answer network is as- 
sumed to be part of a routine that 
also poses the questions and acts 
upon the answer. The units that make 



food 




Winner-Take-Afl 
Answer Network 



Figure 4: Interaction between a knowledge network and a routine. 



up the routine are assumed to be ac- 
tivated in sequence from left to right 
just like a standard program. The 
routine sends a question to the knowl- 
edge network by activating the ap- 
propriate units; figure 4 shows this as 
links, for example, from the hexagonal 
node to the nodes for "has-taste" and 
"ham." The key to the operation of 
this network is the operation of the 
triangular-shaped nodes, such as "bl." 
We define such a triangular unit to 
become active when two of its inputs 
are simultaneously active. In this case 
"ham" and "has-taste" are both on, so 
"bl" becomes active and activates 
"salty." Now the "salty" node in the 
knowledge network spreads activa- 
tion to the response "r-salty" back in 
the routine and the question is 
answered. The same network can 
answer questions such as "Name a 
salty meat" when activated appro- 
priately. The answers returned by such 
a network will depend on context, just 
as people's answers do; contextual 
bias is again modeled by activation.